diff --git a/bun.lockb b/bun.lockb index b4e3e703..a4528c75 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/example/.gitignore b/example/.gitignore index f5bc3011..bcac280a 100644 --- a/example/.gitignore +++ b/example/.gitignore @@ -5,6 +5,7 @@ node_modules/ # Expo .expo/ +.build/ dist/ web-build/ @@ -35,3 +36,4 @@ yarn-error.* *.tsbuildinfo app/playground/ +components/Screen2.tsx diff --git a/example/android/.gitignore b/example/android/.gitignore deleted file mode 100644 index 877b87e9..00000000 --- a/example/android/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -# OSX -# -.DS_Store - -# Android/IntelliJ -# -build/ -.idea -.gradle -local.properties -*.iml -*.hprof - -# Bundle artifacts -*.jsbundle diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle deleted file mode 100644 index afc91e0b..00000000 --- a/example/android/app/build.gradle +++ /dev/null @@ -1,176 +0,0 @@ -apply plugin: "com.android.application" -apply plugin: "org.jetbrains.kotlin.android" -apply plugin: "com.facebook.react" - -def projectRoot = rootDir.getAbsoluteFile().getParentFile().getAbsolutePath() - -/** - * This is the configuration block to customize your React Native Android app. - * By default you don't need to apply any configuration, just uncomment the lines you need. - */ -react { - entryFile = file(["node", "-e", "require('expo/scripts/resolveAppEntry')", projectRoot, "android", "absolute"].execute(null, rootDir).text.trim()) - reactNativeDir = new File(["node", "--print", "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim()).getParentFile().getAbsoluteFile() - hermesCommand = new File(["node", "--print", "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim()).getParentFile().getAbsolutePath() + "/sdks/hermesc/%OS-BIN%/hermesc" - codegenDir = new File(["node", "--print", "require.resolve('@react-native/codegen/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim()).getParentFile().getAbsoluteFile() - - // Use Expo CLI to bundle the app, this ensures the Metro config - // works correctly with Expo projects. - cliFile = new File(["node", "--print", "require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })"].execute(null, rootDir).text.trim()) - bundleCommand = "export:embed" - - /* Folders */ - // The root of your project, i.e. where "package.json" lives. Default is '..' - // root = file("../") - // The folder where the react-native NPM package is. Default is ../node_modules/react-native - // reactNativeDir = file("../node_modules/react-native") - // The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen - // codegenDir = file("../node_modules/@react-native/codegen") - - /* Variants */ - // The list of variants to that are debuggable. For those we're going to - // skip the bundling of the JS bundle and the assets. By default is just 'debug'. - // If you add flavors like lite, prod, etc. you'll have to list your debuggableVariants. - // debuggableVariants = ["liteDebug", "prodDebug"] - - /* Bundling */ - // A list containing the node command and its flags. Default is just 'node'. - // nodeExecutableAndArgs = ["node"] - - // - // The path to the CLI configuration file. Default is empty. - // bundleConfig = file(../rn-cli.config.js) - // - // The name of the generated asset file containing your JS bundle - // bundleAssetName = "MyApplication.android.bundle" - // - // The entry file for bundle generation. Default is 'index.android.js' or 'index.js' - // entryFile = file("../js/MyApplication.android.js") - // - // A list of extra flags to pass to the 'bundle' commands. - // See https://github.com/react-native-community/cli/blob/main/docs/commands.md#bundle - // extraPackagerArgs = [] - - /* Hermes Commands */ - // The hermes compiler command to run. By default it is 'hermesc' - // hermesCommand = "$rootDir/my-custom-hermesc/bin/hermesc" - // - // The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map" - // hermesFlags = ["-O", "-output-source-map"] -} - -/** - * Set this to true to Run Proguard on Release builds to minify the Java bytecode. - */ -def enableProguardInReleaseBuilds = (findProperty('android.enableProguardInReleaseBuilds') ?: false).toBoolean() - -/** - * The preferred build flavor of JavaScriptCore (JSC) - * - * For example, to use the international variant, you can use: - * `def jscFlavor = 'org.webkit:android-jsc-intl:+'` - * - * The international variant includes ICU i18n library and necessary data - * allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that - * give correct results when using with locales other than en-US. Note that - * this variant is about 6MiB larger per architecture than default. - */ -def jscFlavor = 'org.webkit:android-jsc:+' - -android { - ndkVersion rootProject.ext.ndkVersion - - buildToolsVersion rootProject.ext.buildToolsVersion - compileSdk rootProject.ext.compileSdkVersion - - namespace 'com.anonymous.stacks' - defaultConfig { - applicationId 'com.anonymous.stacks' - minSdkVersion rootProject.ext.minSdkVersion - targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 1 - versionName "1.0.0" - - buildConfigField("boolean", "REACT_NATIVE_UNSTABLE_USE_RUNTIME_SCHEDULER_ALWAYS", (findProperty("reactNative.unstable_useRuntimeSchedulerAlways") ?: true).toString()) - } - signingConfigs { - debug { - storeFile file('debug.keystore') - storePassword 'android' - keyAlias 'androiddebugkey' - keyPassword 'android' - } - } - buildTypes { - debug { - signingConfig signingConfigs.debug - } - release { - // Caution! In production, you need to generate your own keystore file. - // see https://reactnative.dev/docs/signed-apk-android. - signingConfig signingConfigs.debug - shrinkResources (findProperty('android.enableShrinkResourcesInReleaseBuilds')?.toBoolean() ?: false) - minifyEnabled enableProguardInReleaseBuilds - proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" - } - } - packagingOptions { - jniLibs { - useLegacyPackaging (findProperty('expo.useLegacyPackaging')?.toBoolean() ?: false) - } - } -} - -// Apply static values from `gradle.properties` to the `android.packagingOptions` -// Accepts values in comma delimited lists, example: -// android.packagingOptions.pickFirsts=/LICENSE,**/picasa.ini -["pickFirsts", "excludes", "merges", "doNotStrip"].each { prop -> - // Split option: 'foo,bar' -> ['foo', 'bar'] - def options = (findProperty("android.packagingOptions.$prop") ?: "").split(","); - // Trim all elements in place. - for (i in 0.. 0) { - println "android.packagingOptions.$prop += $options ($options.length)" - // Ex: android.packagingOptions.pickFirsts += '**/SCCS/**' - options.each { - android.packagingOptions[prop] += it - } - } -} - -dependencies { - // The version of react-native is set by the React Native Gradle Plugin - implementation("com.facebook.react:react-android") - - def isGifEnabled = (findProperty('expo.gif.enabled') ?: "") == "true"; - def isWebpEnabled = (findProperty('expo.webp.enabled') ?: "") == "true"; - def isWebpAnimatedEnabled = (findProperty('expo.webp.animated') ?: "") == "true"; - - if (isGifEnabled) { - // For animated gif support - implementation("com.facebook.fresco:animated-gif:${reactAndroidLibs.versions.fresco.get()}") - } - - if (isWebpEnabled) { - // For webp support - implementation("com.facebook.fresco:webpsupport:${reactAndroidLibs.versions.fresco.get()}") - if (isWebpAnimatedEnabled) { - // Animated webp support - implementation("com.facebook.fresco:animated-webp:${reactAndroidLibs.versions.fresco.get()}") - } - } - - implementation("com.facebook.react:flipper-integration") - - if (hermesEnabled.toBoolean()) { - implementation("com.facebook.react:hermes-android") - } else { - implementation jscFlavor - } -} - -apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle"); -applyNativeModulesAppBuildGradle(project) diff --git a/example/android/app/debug.keystore b/example/android/app/debug.keystore deleted file mode 100644 index 364e105e..00000000 Binary files a/example/android/app/debug.keystore and /dev/null differ diff --git a/example/android/app/proguard-rules.pro b/example/android/app/proguard-rules.pro deleted file mode 100644 index 551eb41d..00000000 --- a/example/android/app/proguard-rules.pro +++ /dev/null @@ -1,14 +0,0 @@ -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# react-native-reanimated --keep class com.swmansion.reanimated.** { *; } --keep class com.facebook.react.turbomodule.** { *; } - -# Add any project specific keep options here: diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml deleted file mode 100644 index 3ec2507b..00000000 --- a/example/android/app/src/debug/AndroidManifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml deleted file mode 100644 index be254ed4..00000000 --- a/example/android/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/example/android/app/src/main/java/com/anonymous/stacks/MainActivity.kt b/example/android/app/src/main/java/com/anonymous/stacks/MainActivity.kt deleted file mode 100644 index ac3acf4b..00000000 --- a/example/android/app/src/main/java/com/anonymous/stacks/MainActivity.kt +++ /dev/null @@ -1,61 +0,0 @@ -package com.anonymous.stacks - -import android.os.Build -import android.os.Bundle - -import com.facebook.react.ReactActivity -import com.facebook.react.ReactActivityDelegate -import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled -import com.facebook.react.defaults.DefaultReactActivityDelegate - -import expo.modules.ReactActivityDelegateWrapper - -class MainActivity : ReactActivity() { - override fun onCreate(savedInstanceState: Bundle?) { - // Set the theme to AppTheme BEFORE onCreate to support - // coloring the background, status bar, and navigation bar. - // This is required for expo-splash-screen. - setTheme(R.style.AppTheme); - super.onCreate(null) - } - - /** - * Returns the name of the main component registered from JavaScript. This is used to schedule - * rendering of the component. - */ - override fun getMainComponentName(): String = "main" - - /** - * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate] - * which allows you to enable New Architecture with a single boolean flags [fabricEnabled] - */ - override fun createReactActivityDelegate(): ReactActivityDelegate { - return ReactActivityDelegateWrapper( - this, - BuildConfig.IS_NEW_ARCHITECTURE_ENABLED, - object : DefaultReactActivityDelegate( - this, - mainComponentName, - fabricEnabled - ){}) - } - - /** - * Align the back button behavior with Android S - * where moving root activities to background instead of finishing activities. - * @see onBackPressed - */ - override fun invokeDefaultOnBackPressed() { - if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.R) { - if (!moveTaskToBack(false)) { - // For non-root activities, use the default implementation to finish them. - super.invokeDefaultOnBackPressed() - } - return - } - - // Use the default back button implementation on Android S - // because it's doing more than [Activity.moveTaskToBack] in fact. - super.invokeDefaultOnBackPressed() - } -} diff --git a/example/android/app/src/main/java/com/anonymous/stacks/MainApplication.kt b/example/android/app/src/main/java/com/anonymous/stacks/MainApplication.kt deleted file mode 100644 index 51475d12..00000000 --- a/example/android/app/src/main/java/com/anonymous/stacks/MainApplication.kt +++ /dev/null @@ -1,65 +0,0 @@ -package com.anonymous.stacks - -import android.app.Application -import android.content.res.Configuration -import androidx.annotation.NonNull - -import com.facebook.react.PackageList -import com.facebook.react.ReactApplication -import com.facebook.react.ReactNativeHost -import com.facebook.react.ReactPackage -import com.facebook.react.ReactHost -import com.facebook.react.config.ReactFeatureFlags -import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load -import com.facebook.react.defaults.DefaultReactHost.getDefaultReactHost -import com.facebook.react.defaults.DefaultReactNativeHost -import com.facebook.react.flipper.ReactNativeFlipper -import com.facebook.soloader.SoLoader - -import expo.modules.ApplicationLifecycleDispatcher -import expo.modules.ReactNativeHostWrapper - -class MainApplication : Application(), ReactApplication { - - override val reactNativeHost: ReactNativeHost = ReactNativeHostWrapper( - this, - object : DefaultReactNativeHost(this) { - override fun getPackages(): List { - // Packages that cannot be autolinked yet can be added manually here, for example: - // packages.add(new MyReactNativePackage()); - return PackageList(this).packages - } - - override fun getJSMainModuleName(): String = ".expo/.virtual-metro-entry" - - override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG - - override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED - override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED - } - ) - - override val reactHost: ReactHost - get() = getDefaultReactHost(this.applicationContext, reactNativeHost) - - override fun onCreate() { - super.onCreate() - SoLoader.init(this, false) - if (!BuildConfig.REACT_NATIVE_UNSTABLE_USE_RUNTIME_SCHEDULER_ALWAYS) { - ReactFeatureFlags.unstable_useRuntimeSchedulerAlways = false - } - if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { - // If you opted-in for the New Architecture, we load the native entry point for this app. - load() - } - if (BuildConfig.DEBUG) { - ReactNativeFlipper.initializeFlipper(this, reactNativeHost.reactInstanceManager) - } - ApplicationLifecycleDispatcher.onApplicationCreate(this) - } - - override fun onConfigurationChanged(newConfig: Configuration) { - super.onConfigurationChanged(newConfig) - ApplicationLifecycleDispatcher.onConfigurationChanged(this, newConfig) - } -} diff --git a/example/android/app/src/main/res/drawable-hdpi/splashscreen_image.png b/example/android/app/src/main/res/drawable-hdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68..00000000 Binary files a/example/android/app/src/main/res/drawable-hdpi/splashscreen_image.png and /dev/null differ diff --git a/example/android/app/src/main/res/drawable-mdpi/splashscreen_image.png b/example/android/app/src/main/res/drawable-mdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68..00000000 Binary files a/example/android/app/src/main/res/drawable-mdpi/splashscreen_image.png and /dev/null differ diff --git a/example/android/app/src/main/res/drawable-xhdpi/splashscreen_image.png b/example/android/app/src/main/res/drawable-xhdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68..00000000 Binary files a/example/android/app/src/main/res/drawable-xhdpi/splashscreen_image.png and /dev/null differ diff --git a/example/android/app/src/main/res/drawable-xxhdpi/splashscreen_image.png b/example/android/app/src/main/res/drawable-xxhdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68..00000000 Binary files a/example/android/app/src/main/res/drawable-xxhdpi/splashscreen_image.png and /dev/null differ diff --git a/example/android/app/src/main/res/drawable-xxxhdpi/splashscreen_image.png b/example/android/app/src/main/res/drawable-xxxhdpi/splashscreen_image.png deleted file mode 100644 index c52c2c68..00000000 Binary files a/example/android/app/src/main/res/drawable-xxxhdpi/splashscreen_image.png and /dev/null differ diff --git a/example/android/app/src/main/res/drawable/rn_edit_text_material.xml b/example/android/app/src/main/res/drawable/rn_edit_text_material.xml deleted file mode 100644 index 73b37e4d..00000000 --- a/example/android/app/src/main/res/drawable/rn_edit_text_material.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - diff --git a/example/android/app/src/main/res/drawable/splashscreen.xml b/example/android/app/src/main/res/drawable/splashscreen.xml deleted file mode 100644 index c8568e16..00000000 --- a/example/android/app/src/main/res/drawable/splashscreen.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml deleted file mode 100644 index 3941bea9..00000000 --- a/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml deleted file mode 100644 index 3941bea9..00000000 --- a/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index 0a61c1b2..00000000 Binary files a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png b/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png deleted file mode 100644 index ac03dbf6..00000000 Binary files a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png deleted file mode 100644 index 26deb972..00000000 Binary files a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index fd1a2c71..00000000 Binary files a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png b/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png deleted file mode 100644 index e1173a94..00000000 Binary files a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png deleted file mode 100644 index 4d3ac7a4..00000000 Binary files a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index d57caa30..00000000 Binary files a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png b/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png deleted file mode 100644 index ff086fdc..00000000 Binary files a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png deleted file mode 100644 index 95ac5824..00000000 Binary files a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index 0a07e73a..00000000 Binary files a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png b/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png deleted file mode 100644 index f7f1d069..00000000 Binary files a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png deleted file mode 100644 index 6508f742..00000000 Binary files a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index 499e372b..00000000 Binary files a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png deleted file mode 100644 index 49a464ee..00000000 Binary files a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png deleted file mode 100644 index d54716bf..00000000 Binary files a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png and /dev/null differ diff --git a/example/android/app/src/main/res/values-night/colors.xml b/example/android/app/src/main/res/values-night/colors.xml deleted file mode 100644 index 3c05de5b..00000000 --- a/example/android/app/src/main/res/values-night/colors.xml +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/example/android/app/src/main/res/values/colors.xml b/example/android/app/src/main/res/values/colors.xml deleted file mode 100644 index f387b901..00000000 --- a/example/android/app/src/main/res/values/colors.xml +++ /dev/null @@ -1,6 +0,0 @@ - - #ffffff - #ffffff - #023c69 - #ffffff - \ No newline at end of file diff --git a/example/android/app/src/main/res/values/strings.xml b/example/android/app/src/main/res/values/strings.xml deleted file mode 100644 index cc553af4..00000000 --- a/example/android/app/src/main/res/values/strings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - stacks - contain - false - \ No newline at end of file diff --git a/example/android/app/src/main/res/values/styles.xml b/example/android/app/src/main/res/values/styles.xml deleted file mode 100644 index f03e23f8..00000000 --- a/example/android/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - \ No newline at end of file diff --git a/example/android/build.gradle b/example/android/build.gradle deleted file mode 100644 index 513b7661..00000000 --- a/example/android/build.gradle +++ /dev/null @@ -1,40 +0,0 @@ -// Top-level build file where you can add configuration options common to all sub-projects/modules. - -buildscript { - ext { - buildToolsVersion = findProperty('android.buildToolsVersion') ?: '34.0.0' - minSdkVersion = Integer.parseInt(findProperty('android.minSdkVersion') ?: '23') - compileSdkVersion = Integer.parseInt(findProperty('android.compileSdkVersion') ?: '34') - targetSdkVersion = Integer.parseInt(findProperty('android.targetSdkVersion') ?: '34') - kotlinVersion = findProperty('android.kotlinVersion') ?: '1.8.10' - - ndkVersion = "25.1.8937393" - } - repositories { - google() - mavenCentral() - } - dependencies { - classpath('com.android.tools.build:gradle') - classpath('com.facebook.react:react-native-gradle-plugin') - } -} - -apply plugin: "com.facebook.react.rootproject" - -allprojects { - repositories { - maven { - // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm - url(new File(['node', '--print', "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim(), '../android')) - } - maven { - // Android JSC is installed from npm - url(new File(['node', '--print', "require.resolve('jsc-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), '../dist')) - } - - google() - mavenCentral() - maven { url 'https://www.jitpack.io' } - } -} diff --git a/example/android/gradle.properties b/example/android/gradle.properties deleted file mode 100644 index 41b173c4..00000000 --- a/example/android/gradle.properties +++ /dev/null @@ -1,56 +0,0 @@ -# Project-wide Gradle settings. - -# IDE (e.g. Android Studio) users: -# Gradle settings configured through the IDE *will override* -# any settings specified in this file. - -# For more details on how to configure your build environment visit -# http://www.gradle.org/docs/current/userguide/build_environment.html - -# Specifies the JVM arguments used for the daemon process. -# The setting is particularly useful for tweaking memory settings. -# Default value: -Xmx512m -XX:MaxMetaspaceSize=256m -org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m - -# When configured, Gradle will run in incubating parallel mode. -# This option should only be used with decoupled projects. More details, visit -# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects -# org.gradle.parallel=true - -# AndroidX package structure to make it clearer which packages are bundled with the -# Android operating system, and which are packaged with your app's APK -# https://developer.android.com/topic/libraries/support-library/androidx-rn -android.useAndroidX=true - -# Automatically convert third-party libraries to use AndroidX -android.enableJetifier=true - -# Use this property to specify which architecture you want to build. -# You can also override it from the CLI using -# ./gradlew -PreactNativeArchitectures=x86_64 -reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64 - -# Use this property to enable support to the new architecture. -# This will allow you to use TurboModules and the Fabric render in -# your application. You should enable this flag either if you want -# to write custom TurboModules/Fabric components OR use libraries that -# are providing them. -newArchEnabled=false - -# Use this property to enable or disable the Hermes JS engine. -# If set to false, you will be using JSC instead. -hermesEnabled=true - -# Enable GIF support in React Native images (~200 B increase) -expo.gif.enabled=true -# Enable webp support in React Native images (~85 KB increase) -expo.webp.enabled=true -# Enable animated webp support (~3.4 MB increase) -# Disabled by default because iOS doesn't support animated webp -expo.webp.animated=false - -# Enable network inspector -EX_DEV_CLIENT_NETWORK_INSPECTOR=true - -# Use legacy packaging to compress native libraries in the resulting APK. -expo.useLegacyPackaging=false diff --git a/example/android/gradle/wrapper/gradle-wrapper.jar b/example/android/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index 7f93135c..00000000 Binary files a/example/android/gradle/wrapper/gradle-wrapper.jar and /dev/null differ diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index d11cdd90..00000000 --- a/example/android/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,7 +0,0 @@ -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip -networkTimeout=10000 -validateDistributionUrl=true -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists diff --git a/example/android/gradlew b/example/android/gradlew deleted file mode 100755 index 1aa94a42..00000000 --- a/example/android/gradlew +++ /dev/null @@ -1,249 +0,0 @@ -#!/bin/sh - -# -# Copyright © 2015-2021 the original authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -############################################################################## -# -# Gradle start up script for POSIX generated by Gradle. -# -# Important for running: -# -# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is -# noncompliant, but you have some other compliant shell such as ksh or -# bash, then to run this script, type that shell name before the whole -# command line, like: -# -# ksh Gradle -# -# Busybox and similar reduced shells will NOT work, because this script -# requires all of these POSIX shell features: -# * functions; -# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», -# «${var#prefix}», «${var%suffix}», and «$( cmd )»; -# * compound commands having a testable exit status, especially «case»; -# * various built-in commands including «command», «set», and «ulimit». -# -# Important for patching: -# -# (2) This script targets any POSIX shell, so it avoids extensions provided -# by Bash, Ksh, etc; in particular arrays are avoided. -# -# The "traditional" practice of packing multiple parameters into a -# space-separated string is a well documented source of bugs and security -# problems, so this is (mostly) avoided, by progressively accumulating -# options in "$@", and eventually passing that to Java. -# -# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, -# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; -# see the in-line comments for details. -# -# There are tweaks for specific operating systems such as AIX, CygWin, -# Darwin, MinGW, and NonStop. -# -# (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt -# within the Gradle project. -# -# You can find Gradle at https://github.com/gradle/gradle/. -# -############################################################################## - -# Attempt to set APP_HOME - -# Resolve links: $0 may be a link -app_path=$0 - -# Need this for daisy-chained symlinks. -while - APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path - [ -h "$app_path" ] -do - ls=$( ls -ld "$app_path" ) - link=${ls#*' -> '} - case $link in #( - /*) app_path=$link ;; #( - *) app_path=$APP_HOME$link ;; - esac -done - -# This is normally unused -# shellcheck disable=SC2034 -APP_BASE_NAME=${0##*/} -# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD=maximum - -warn () { - echo "$*" -} >&2 - -die () { - echo - echo "$*" - echo - exit 1 -} >&2 - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -nonstop=false -case "$( uname )" in #( - CYGWIN* ) cygwin=true ;; #( - Darwin* ) darwin=true ;; #( - MSYS* | MINGW* ) msys=true ;; #( - NONSTOP* ) nonstop=true ;; -esac - -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar - - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD=$JAVA_HOME/jre/sh/java - else - JAVACMD=$JAVA_HOME/bin/java - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD=java - if ! command -v java >/dev/null 2>&1 - then - die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -fi - -# Increase the maximum file descriptors if we can. -if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then - case $MAX_FD in #( - max*) - # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC2039,SC3045 - MAX_FD=$( ulimit -H -n ) || - warn "Could not query maximum file descriptor limit" - esac - case $MAX_FD in #( - '' | soft) :;; #( - *) - # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC2039,SC3045 - ulimit -n "$MAX_FD" || - warn "Could not set maximum file descriptor limit to $MAX_FD" - esac -fi - -# Collect all arguments for the java command, stacking in reverse order: -# * args from the command line -# * the main class name -# * -classpath -# * -D...appname settings -# * --module-path (only if needed) -# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. - -# For Cygwin or MSYS, switch paths to Windows format before running java -if "$cygwin" || "$msys" ; then - APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) - CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) - - JAVACMD=$( cygpath --unix "$JAVACMD" ) - - # Now convert the arguments - kludge to limit ourselves to /bin/sh - for arg do - if - case $arg in #( - -*) false ;; # don't mess with options #( - /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath - [ -e "$t" ] ;; #( - *) false ;; - esac - then - arg=$( cygpath --path --ignore --mixed "$arg" ) - fi - # Roll the args list around exactly as many times as the number of - # args, so each arg winds up back in the position where it started, but - # possibly modified. - # - # NB: a `for` loop captures its iteration list before it begins, so - # changing the positional parameters here affects neither the number of - # iterations, nor the values presented in `arg`. - shift # remove old arg - set -- "$@" "$arg" # push replacement arg - done -fi - - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' - -# Collect all arguments for the java command: -# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, -# and any embedded shellness will be escaped. -# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be -# treated as '${Hostname}' itself on the command line. - -set -- \ - "-Dorg.gradle.appname=$APP_BASE_NAME" \ - -classpath "$CLASSPATH" \ - org.gradle.wrapper.GradleWrapperMain \ - "$@" - -# Stop when "xargs" is not available. -if ! command -v xargs >/dev/null 2>&1 -then - die "xargs is not available" -fi - -# Use "xargs" to parse quoted args. -# -# With -n1 it outputs one arg per line, with the quotes and backslashes removed. -# -# In Bash we could simply go: -# -# readarray ARGS < <( xargs -n1 <<<"$var" ) && -# set -- "${ARGS[@]}" "$@" -# -# but POSIX shell has neither arrays nor command substitution, so instead we -# post-process each arg (as a line of input to sed) to backslash-escape any -# character that might be a shell metacharacter, then use eval to reverse -# that process (while maintaining the separation between arguments), and wrap -# the whole thing up as a single "set" statement. -# -# This will of course break if any of these variables contains a newline or -# an unmatched quote. -# - -eval "set -- $( - printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | - xargs -n1 | - sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | - tr '\n' ' ' - )" '"$@"' - -exec "$JAVACMD" "$@" diff --git a/example/android/gradlew.bat b/example/android/gradlew.bat deleted file mode 100644 index 53a6b238..00000000 --- a/example/android/gradlew.bat +++ /dev/null @@ -1,91 +0,0 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem - -@if "%DEBUG%"=="" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%"=="" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if %ERRORLEVEL% equ 0 goto execute - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* - -:end -@rem End local scope for the variables with windows NT shell -if %ERRORLEVEL% equ 0 goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -set EXIT_CODE=%ERRORLEVEL% -if %EXIT_CODE% equ 0 set EXIT_CODE=1 -if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% -exit /b %EXIT_CODE% - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/example/android/settings.gradle b/example/android/settings.gradle deleted file mode 100644 index f314de0c..00000000 --- a/example/android/settings.gradle +++ /dev/null @@ -1,18 +0,0 @@ -rootProject.name = 'stacks' - -dependencyResolutionManagement { - versionCatalogs { - reactAndroidLibs { - from(files(new File(["node", "--print", "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim(), "../gradle/libs.versions.toml"))) - } - } -} - -apply from: new File(["node", "--print", "require.resolve('expo/package.json')"].execute(null, rootDir).text.trim(), "../scripts/autolinking.gradle"); -useExpoModules() - -apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle"); -applyNativeModulesSettingsGradle(settings) - -include ':app' -includeBuild(new File(["node", "--print", "require.resolve('@react-native/gradle-plugin/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim()).getParentFile()) diff --git a/example/app.json b/example/app.json index c8fb7d5d..a797c15c 100644 --- a/example/app.json +++ b/example/app.json @@ -5,6 +5,7 @@ "version": "1.0.0", "icon": "./assets/icon.png", "userInterfaceStyle": "light", + "newArchEnabled": true, "splash": { "image": "./assets/splash.png", "resizeMode": "contain", @@ -15,7 +16,10 @@ ], "ios": { "supportsTablet": true, - "bundleIdentifier": "com.anonymous.stacks" + "bundleIdentifier": "com.anonymous.stacks", + "infoPlist": { + "ITSAppUsesNonExemptEncryption": false + } }, "android": { "adaptiveIcon": { @@ -30,6 +34,14 @@ "plugins": [ "expo-router" ], - "scheme": "stacks" + "scheme": "stacks", + "extra": { + "router": { + "origin": false + }, + "eas": { + "projectId": "6c5fdf69-115c-4880-99f1-880467bece9b" + } + } } } diff --git a/example/app/_layout.tsx b/example/app/_layout.tsx index 711d3fed..493de0fb 100644 --- a/example/app/_layout.tsx +++ b/example/app/_layout.tsx @@ -1,7 +1,7 @@ /* eslint-disable import/no-default-export */ -import { Stack } from 'expo-router'; +import * as React from 'react'; -import './styles/unistyles'; +import { Stack } from 'expo-router'; const Layout = () => { return ; diff --git a/example/app/bleed/index.tsx b/example/app/bleed/index.tsx index fc7655a9..2198b925 100644 --- a/example/app/bleed/index.tsx +++ b/example/app/bleed/index.tsx @@ -5,8 +5,8 @@ import * as React from 'react'; import { Bleed, Stack } from '@grapp/stacks'; -import { Placeholder } from '../components/Placeholder'; -import { Screen } from '../components/Screen'; +import { Placeholder } from '../../components/Placeholder'; +import { Screen } from '../../components/Screen'; const Page = () => { return ( diff --git a/example/app/columns/index.tsx b/example/app/columns/index.tsx index 55ef151d..c804cca6 100644 --- a/example/app/columns/index.tsx +++ b/example/app/columns/index.tsx @@ -2,31 +2,27 @@ import * as React from 'react'; /* eslint-disable import/no-default-export */ -import { Column, Columns, Hidden, Stack } from '@grapp/stacks'; +import { Box, Column, Columns, Hidden, Stack } from '@grapp/stacks'; -import { Placeholder } from '../components/Placeholder'; -import { Screen } from '../components/Screen'; +import { Placeholder } from '../../components/Placeholder'; +import { Screen } from '../../components/Screen'; const Page = () => { return ( - - - - - - - - - + + + + + + + + + + + @@ -77,8 +73,10 @@ const Page = () => { - - + + + + @@ -121,7 +119,7 @@ const Page = () => { - + diff --git a/example/app/float-box/index.tsx b/example/app/float-box/index.tsx index bdcc7a0b..032d78de 100644 --- a/example/app/float-box/index.tsx +++ b/example/app/float-box/index.tsx @@ -4,8 +4,8 @@ import * as React from 'react'; /* eslint-disable import/no-default-export */ import { FloatBox } from '@grapp/stacks'; -import { Placeholder } from '../components/Placeholder'; -import { Screen } from '../components/Screen'; +import { Placeholder } from '../../components/Placeholder'; +import { Screen } from '../../components/Screen'; const Page = () => { return ( diff --git a/example/app/index.tsx b/example/app/index.tsx index a9b83b0e..4fa065e2 100644 --- a/example/app/index.tsx +++ b/example/app/index.tsx @@ -1,16 +1,16 @@ /* eslint-disable react-native/no-raw-text */ /* eslint-disable import/no-default-export */ -import { createStyleSheet, useStyles } from 'react-native-unistyles'; - -import { Stack } from '@grapp/stacks'; +import * as React from 'react'; +import { StyleSheet } from 'react-native-unistyles'; import { Link } from 'expo-router'; -import { Screen } from './components/Screen'; +import { Stack } from '@grapp/stacks'; + +import { Screen } from '../components/Screen'; const Page = () => { - const { styles } = useStyles(stylesheet); return ( @@ -51,7 +51,7 @@ const Page = () => { ); }; -const stylesheet = createStyleSheet({ +const styles = StyleSheet.create({ link: { color: '#0B0F1A', }, diff --git a/example/app/inline/index.tsx b/example/app/inline/index.tsx index 437c402b..66b21a1e 100644 --- a/example/app/inline/index.tsx +++ b/example/app/inline/index.tsx @@ -4,8 +4,8 @@ import * as React from 'react'; /* eslint-disable import/no-default-export */ import { Inline, Stack } from '@grapp/stacks'; -import { Placeholder } from '../components/Placeholder'; -import { Screen } from '../components/Screen'; +import { Placeholder } from '../../components/Placeholder'; +import { Screen } from '../../components/Screen'; const Page = () => { return ( diff --git a/example/app/inset/index.tsx b/example/app/inset/index.tsx index 8057c46f..02a6c3aa 100644 --- a/example/app/inset/index.tsx +++ b/example/app/inset/index.tsx @@ -4,12 +4,12 @@ import * as React from 'react'; /* eslint-disable import/no-default-export */ import { Inset, Stack } from '@grapp/stacks'; -import { Placeholder } from '../components/Placeholder'; -import { Screen } from '../components/Screen'; +import { Placeholder } from '../../components/Placeholder'; +import { Screen } from '../../components/Screen'; const Page = () => { return ( - + @@ -37,6 +37,9 @@ const Page = () => { + + + ); }; diff --git a/example/app/rows/index.tsx b/example/app/rows/index.tsx index 5d95db0a..d901c4e1 100644 --- a/example/app/rows/index.tsx +++ b/example/app/rows/index.tsx @@ -1,27 +1,34 @@ /* eslint-disable react-native/no-raw-text */ import * as React from 'react'; +import { Hide, mq } from 'react-native-unistyles'; /* eslint-disable import/no-default-export */ -import { Row, Rows } from '@grapp/stacks'; +import { Hidden, Row, Rows } from '@grapp/stacks'; -import { Placeholder } from '../components/Placeholder'; +import { Placeholder } from '../../components/Placeholder'; const Page = () => { return ( - + + + - - - - - + + + + + + + - + + + ); }; diff --git a/example/app/stack/index.tsx b/example/app/stack/index.tsx index 363082cf..e0770b14 100644 --- a/example/app/stack/index.tsx +++ b/example/app/stack/index.tsx @@ -2,11 +2,11 @@ import * as React from 'react'; /* eslint-disable import/no-default-export */ -import { Stack } from '@grapp/stacks'; +import { Box, Stack } from '@grapp/stacks'; -import { Divider } from '../components/Divider'; -import { Placeholder } from '../components/Placeholder'; -import { Screen } from '../components/Screen'; +import { Divider } from '../../components/Divider'; +import { Placeholder } from '../../components/Placeholder'; +import { Screen } from '../../components/Screen'; const Page = () => { return ( diff --git a/example/app/tiles/index.tsx b/example/app/tiles/index.tsx index d358d6f3..1f707db0 100644 --- a/example/app/tiles/index.tsx +++ b/example/app/tiles/index.tsx @@ -4,8 +4,8 @@ import * as React from 'react'; /* eslint-disable import/no-default-export */ import { Tiles } from '@grapp/stacks'; -import { Placeholder } from '../components/Placeholder'; -import { Screen } from '../components/Screen'; +import { Placeholder } from '../../components/Placeholder'; +import { Screen } from '../../components/Screen'; const Page = () => { return ( diff --git a/example/babel.config.js b/example/babel.config.js index 16a77b1f..f076f994 100644 --- a/example/babel.config.js +++ b/example/babel.config.js @@ -2,6 +2,14 @@ module.exports = api => { api.cache(true); return { presets: ['babel-preset-expo'], - plugins: [require.resolve('../plugin')], + plugins: [ + require.resolve('../plugin'), + [ + 'react-native-unistyles/plugin', + { + autoProcessImports: ['@grapp/stacks'], + }, + ], + ], }; }; diff --git a/example/bun.lockb b/example/bun.lockb index e4ce20fc..fd54fa4e 100755 Binary files a/example/bun.lockb and b/example/bun.lockb differ diff --git a/example/app/components/Divider.tsx b/example/components/Divider.tsx similarity index 100% rename from example/app/components/Divider.tsx rename to example/components/Divider.tsx diff --git a/example/app/components/Placeholder.tsx b/example/components/Placeholder.tsx similarity index 90% rename from example/app/components/Placeholder.tsx rename to example/components/Placeholder.tsx index 1b5269b7..825ca2a7 100644 --- a/example/app/components/Placeholder.tsx +++ b/example/components/Placeholder.tsx @@ -1,6 +1,6 @@ import * as React from 'react'; import { Platform, Text } from 'react-native'; -import { createStyleSheet, useStyles } from 'react-native-unistyles'; +import { StyleSheet } from 'react-native-unistyles'; import { AxisX, AxisY, Box, Flex, FloatBox, Space } from '@grapp/stacks'; @@ -25,7 +25,6 @@ export const Placeholder = (props: Props) => { label, backgroundColor = '#1BCABE', } = props; - const { styles } = useStyles(stylesheet); const common = { backgroundColor, @@ -58,7 +57,7 @@ export const Placeholder = (props: Props) => { ); }; -const stylesheet = createStyleSheet({ +const styles = StyleSheet.create({ root: { borderColor: '#1D525640', borderWidth: 1, diff --git a/example/app/components/Screen.tsx b/example/components/Screen.tsx similarity index 87% rename from example/app/components/Screen.tsx rename to example/components/Screen.tsx index 88a139dd..ce00aee3 100644 --- a/example/app/components/Screen.tsx +++ b/example/components/Screen.tsx @@ -1,7 +1,7 @@ /* eslint-disable react-native/no-color-literals */ import * as React from 'react'; import { Button, ScrollView as RNScrollView, ScrollViewProps } from 'react-native'; -import { createStyleSheet, UnistylesRuntime, useStyles } from 'react-native-unistyles'; +import { StyleSheet, UnistylesRuntime } from 'react-native-unistyles'; import { Box, @@ -81,16 +81,20 @@ export const Screen = (props: ScreenProps) => { ); }; -const Content = Row.from(props => { +const Content = Row.from((props: Props) => { const { paddingX } = useScreen(); return ; }); -const ScrollView = Row.from(props => { +const Footer = Row.from((props: Props) => { + const { children } = props; + return {children}; +}); + +const ScrollView = Row.from((props: Props & ScrollViewProps) => { const { children, contentContainerStyle, flex = 'fluid', horizontal } = props; const { paddingX } = useScreen(); const { multiply } = useSpacingHelpers(); - const { styles } = useStyles(stylesheet); return ( @@ -108,7 +112,7 @@ const ScrollView = Row.from(props => { ); }); -const stylesheet = createStyleSheet({ +const styles = StyleSheet.create({ scrollContainer: { flexGrow: 1, }, @@ -116,3 +120,4 @@ const stylesheet = createStyleSheet({ Screen.Content = Content; Screen.ScrollView = ScrollView; +Screen.Footer = Footer; diff --git a/example/eas.json b/example/eas.json new file mode 100644 index 00000000..a35f07d4 --- /dev/null +++ b/example/eas.json @@ -0,0 +1,16 @@ +{ + "cli": { + "version": ">= 14.7.1", + "appVersionSource": "remote" + }, + "build": { + "development": { + "developmentClient": true, + "distribution": "internal", + "ios": { + "simulator": true + } + } + } +} + diff --git a/example/index.js b/example/index.js new file mode 100644 index 00000000..f9748a71 --- /dev/null +++ b/example/index.js @@ -0,0 +1,3 @@ +import 'expo-router/entry'; + +import './styles/unistyles'; diff --git a/example/ios/.gitignore b/example/ios/.gitignore deleted file mode 100644 index 8beb3443..00000000 --- a/example/ios/.gitignore +++ /dev/null @@ -1,30 +0,0 @@ -# OSX -# -.DS_Store - -# Xcode -# -build/ -*.pbxuser -!default.pbxuser -*.mode1v3 -!default.mode1v3 -*.mode2v3 -!default.mode2v3 -*.perspectivev3 -!default.perspectivev3 -xcuserdata -*.xccheckout -*.moved-aside -DerivedData -*.hmap -*.ipa -*.xcuserstate -project.xcworkspace -.xcode.env.local - -# Bundle artifacts -*.jsbundle - -# CocoaPods -/Pods/ diff --git a/example/ios/.xcode.env b/example/ios/.xcode.env deleted file mode 100644 index 3d5782c7..00000000 --- a/example/ios/.xcode.env +++ /dev/null @@ -1,11 +0,0 @@ -# This `.xcode.env` file is versioned and is used to source the environment -# used when running script phases inside Xcode. -# To customize your local environment, you can create an `.xcode.env.local` -# file that is not versioned. - -# NODE_BINARY variable contains the PATH to the node executable. -# -# Customize the NODE_BINARY variable here. -# For example, to use nvm with brew, add the following line -# . "$(brew --prefix nvm)/nvm.sh" --no-use -export NODE_BINARY=$(command -v node) diff --git a/example/ios/Podfile b/example/ios/Podfile deleted file mode 100644 index aaeb45d9..00000000 --- a/example/ios/Podfile +++ /dev/null @@ -1,82 +0,0 @@ -require File.join(File.dirname(`node --print "require.resolve('expo/package.json')"`), "scripts/autolinking") -require File.join(File.dirname(`node --print "require.resolve('react-native/package.json')"`), "scripts/react_native_pods") - -require 'json' -podfile_properties = JSON.parse(File.read(File.join(__dir__, 'Podfile.properties.json'))) rescue {} - -ENV['RCT_NEW_ARCH_ENABLED'] = podfile_properties['newArchEnabled'] == 'true' ? '1' : '0' -ENV['EX_DEV_CLIENT_NETWORK_INSPECTOR'] = podfile_properties['EX_DEV_CLIENT_NETWORK_INSPECTOR'] - -platform :ios, podfile_properties['ios.deploymentTarget'] || '13.4' -install! 'cocoapods', - :deterministic_uuids => false - -prepare_react_native_project! - -# If you are using a `react-native-flipper` your iOS build will fail when `NO_FLIPPER=1` is set. -# because `react-native-flipper` depends on (FlipperKit,...), which will be excluded. To fix this, -# you can also exclude `react-native-flipper` in `react-native.config.js` -# -# ```js -# module.exports = { -# dependencies: { -# ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}), -# } -# } -# ``` -flipper_config = FlipperConfiguration.disabled -if ENV['NO_FLIPPER'] == '1' then - # Explicitly disabled through environment variables - flipper_config = FlipperConfiguration.disabled -elsif podfile_properties.key?('ios.flipper') then - # Configure Flipper in Podfile.properties.json - if podfile_properties['ios.flipper'] == 'true' then - flipper_config = FlipperConfiguration.enabled(["Debug", "Release"]) - elsif podfile_properties['ios.flipper'] != 'false' then - flipper_config = FlipperConfiguration.enabled(["Debug", "Release"], { 'Flipper' => podfile_properties['ios.flipper'] }) - end -end - -target 'stacks' do - use_expo_modules! - config = use_native_modules! - - use_frameworks! :linkage => podfile_properties['ios.useFrameworks'].to_sym if podfile_properties['ios.useFrameworks'] - use_frameworks! :linkage => ENV['USE_FRAMEWORKS'].to_sym if ENV['USE_FRAMEWORKS'] - - use_react_native!( - :path => config[:reactNativePath], - :hermes_enabled => podfile_properties['expo.jsEngine'] == nil || podfile_properties['expo.jsEngine'] == 'hermes', - # An absolute path to your application root. - :app_path => "#{Pod::Config.instance.installation_root}/..", - # Note that if you have use_frameworks! enabled, Flipper will not work if enabled - :flipper_configuration => flipper_config - ) - - post_install do |installer| - react_native_post_install( - installer, - config[:reactNativePath], - :mac_catalyst_enabled => false - ) - - # This is necessary for Xcode 14, because it signs resource bundles by default - # when building for devices. - installer.target_installation_results.pod_target_installation_results - .each do |pod_name, target_installation_result| - target_installation_result.resource_bundle_targets.each do |resource_bundle_target| - resource_bundle_target.build_configurations.each do |config| - config.build_settings['CODE_SIGNING_ALLOWED'] = 'NO' - end - end - end - end - - post_integrate do |installer| - begin - expo_patch_react_imports!(installer) - rescue => e - Pod::UI.warn e - end - end -end diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock deleted file mode 100644 index 25298088..00000000 --- a/example/ios/Podfile.lock +++ /dev/null @@ -1,1408 +0,0 @@ -PODS: - - boost (1.83.0) - - DoubleConversion (1.1.6) - - EXConstants (15.4.5): - - ExpoModulesCore - - EXFont (11.10.3): - - ExpoModulesCore - - Expo (50.0.14): - - ExpoModulesCore - - ExpoFileSystem (16.0.8): - - ExpoModulesCore - - ExpoHead (3.4.8): - - ExpoModulesCore - - ExpoImage (1.10.6): - - ExpoModulesCore - - SDWebImage (~> 5.17.0) - - SDWebImageAVIFCoder (~> 0.10.1) - - SDWebImageSVGCoder (~> 1.7.0) - - SDWebImageWebPCoder (~> 0.13.0) - - ExpoKeepAwake (12.8.2): - - ExpoModulesCore - - ExpoModulesCore (1.11.12): - - glog - - RCT-Folly (= 2022.05.16.00) - - React-Core - - React-NativeModulesApple - - React-RCTAppDelegate - - ReactCommon/turbomodule/core - - EXSplashScreen (0.26.4): - - ExpoModulesCore - - glog - - RCT-Folly (= 2022.05.16.00) - - React-Core - - FBLazyVector (0.73.6) - - FBReactNativeSpec (0.73.6): - - RCT-Folly (= 2022.05.16.00) - - RCTRequired (= 0.73.6) - - RCTTypeSafety (= 0.73.6) - - React-Core (= 0.73.6) - - React-jsi (= 0.73.6) - - ReactCommon/turbomodule/core (= 0.73.6) - - fmt (6.2.1) - - glog (0.3.5) - - hermes-engine (0.73.6): - - hermes-engine/Pre-built (= 0.73.6) - - hermes-engine/Pre-built (0.73.6) - - libaom (3.0.0): - - libvmaf (>= 2.2.0) - - libavif (0.11.1): - - libavif/libaom (= 0.11.1) - - libavif/core (0.11.1) - - libavif/libaom (0.11.1): - - libaom (>= 2.0.0) - - libavif/core - - libevent (2.1.12) - - libvmaf (2.3.1) - - libwebp (1.3.2): - - libwebp/demux (= 1.3.2) - - libwebp/mux (= 1.3.2) - - libwebp/sharpyuv (= 1.3.2) - - libwebp/webp (= 1.3.2) - - libwebp/demux (1.3.2): - - libwebp/webp - - libwebp/mux (1.3.2): - - libwebp/demux - - libwebp/sharpyuv (1.3.2) - - libwebp/webp (1.3.2): - - libwebp/sharpyuv - - RCT-Folly (2022.05.16.00): - - boost - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - RCT-Folly/Default (= 2022.05.16.00) - - RCT-Folly/Default (2022.05.16.00): - - boost - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - RCT-Folly/Fabric (2022.05.16.00): - - boost - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - RCT-Folly/Futures (2022.05.16.00): - - boost - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - libevent - - RCTRequired (0.73.6) - - RCTTypeSafety (0.73.6): - - FBLazyVector (= 0.73.6) - - RCTRequired (= 0.73.6) - - React-Core (= 0.73.6) - - React (0.73.6): - - React-Core (= 0.73.6) - - React-Core/DevSupport (= 0.73.6) - - React-Core/RCTWebSocket (= 0.73.6) - - React-RCTActionSheet (= 0.73.6) - - React-RCTAnimation (= 0.73.6) - - React-RCTBlob (= 0.73.6) - - React-RCTImage (= 0.73.6) - - React-RCTLinking (= 0.73.6) - - React-RCTNetwork (= 0.73.6) - - React-RCTSettings (= 0.73.6) - - React-RCTText (= 0.73.6) - - React-RCTVibration (= 0.73.6) - - React-callinvoker (0.73.6) - - React-Codegen (0.73.6): - - DoubleConversion - - FBReactNativeSpec - - glog - - hermes-engine - - RCT-Folly - - RCTRequired - - RCTTypeSafety - - React-Core - - React-jsi - - React-jsiexecutor - - React-NativeModulesApple - - React-rncore - - ReactCommon/turbomodule/bridging - - ReactCommon/turbomodule/core - - React-Core (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default (= 0.73.6) - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/CoreModulesHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/Default (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/DevSupport (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default (= 0.73.6) - - React-Core/RCTWebSocket (= 0.73.6) - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-jsinspector (= 0.73.6) - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTActionSheetHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTAnimationHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTBlobHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTImageHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTLinkingHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTNetworkHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTSettingsHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTTextHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTVibrationHeaders (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-Core/RCTWebSocket (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Core/Default (= 0.73.6) - - React-cxxreact - - React-hermes - - React-jsi - - React-jsiexecutor - - React-perflogger - - React-runtimescheduler - - React-utils - - SocketRocket (= 0.6.1) - - Yoga - - React-CoreModules (0.73.6): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety (= 0.73.6) - - React-Codegen - - React-Core/CoreModulesHeaders (= 0.73.6) - - React-jsi (= 0.73.6) - - React-NativeModulesApple - - React-RCTBlob - - React-RCTImage (= 0.73.6) - - ReactCommon - - SocketRocket (= 0.6.1) - - React-cxxreact (0.73.6): - - boost (= 1.83.0) - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker (= 0.73.6) - - React-debug (= 0.73.6) - - React-jsi (= 0.73.6) - - React-jsinspector (= 0.73.6) - - React-logger (= 0.73.6) - - React-perflogger (= 0.73.6) - - React-runtimeexecutor (= 0.73.6) - - React-debug (0.73.6) - - React-Fabric (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-Fabric/animations (= 0.73.6) - - React-Fabric/attributedstring (= 0.73.6) - - React-Fabric/componentregistry (= 0.73.6) - - React-Fabric/componentregistrynative (= 0.73.6) - - React-Fabric/components (= 0.73.6) - - React-Fabric/core (= 0.73.6) - - React-Fabric/imagemanager (= 0.73.6) - - React-Fabric/leakchecker (= 0.73.6) - - React-Fabric/mounting (= 0.73.6) - - React-Fabric/scheduler (= 0.73.6) - - React-Fabric/telemetry (= 0.73.6) - - React-Fabric/templateprocessor (= 0.73.6) - - React-Fabric/textlayoutmanager (= 0.73.6) - - React-Fabric/uimanager (= 0.73.6) - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/animations (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/attributedstring (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/componentregistry (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/componentregistrynative (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-Fabric/components/inputaccessory (= 0.73.6) - - React-Fabric/components/legacyviewmanagerinterop (= 0.73.6) - - React-Fabric/components/modal (= 0.73.6) - - React-Fabric/components/rncore (= 0.73.6) - - React-Fabric/components/root (= 0.73.6) - - React-Fabric/components/safeareaview (= 0.73.6) - - React-Fabric/components/scrollview (= 0.73.6) - - React-Fabric/components/text (= 0.73.6) - - React-Fabric/components/textinput (= 0.73.6) - - React-Fabric/components/unimplementedview (= 0.73.6) - - React-Fabric/components/view (= 0.73.6) - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/inputaccessory (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/legacyviewmanagerinterop (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/modal (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/rncore (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/root (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/safeareaview (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/scrollview (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/text (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/textinput (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/unimplementedview (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/components/view (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - Yoga - - React-Fabric/core (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/imagemanager (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/leakchecker (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/mounting (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/scheduler (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/telemetry (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/templateprocessor (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/textlayoutmanager (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-Fabric/uimanager - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-Fabric/uimanager (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired - - RCTTypeSafety - - React-Core - - React-cxxreact - - React-debug - - React-graphics - - React-jsi - - React-jsiexecutor - - React-logger - - React-rendererdebug - - React-runtimescheduler - - React-utils - - ReactCommon/turbomodule/core - - React-FabricImage (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - RCTRequired (= 0.73.6) - - RCTTypeSafety (= 0.73.6) - - React-Fabric - - React-graphics - - React-ImageManager - - React-jsi - - React-jsiexecutor (= 0.73.6) - - React-logger - - React-rendererdebug - - React-utils - - ReactCommon - - Yoga - - React-graphics (0.73.6): - - glog - - RCT-Folly/Fabric (= 2022.05.16.00) - - React-Core/Default (= 0.73.6) - - React-utils - - React-hermes (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - RCT-Folly/Futures (= 2022.05.16.00) - - React-cxxreact (= 0.73.6) - - React-jsi - - React-jsiexecutor (= 0.73.6) - - React-jsinspector (= 0.73.6) - - React-perflogger (= 0.73.6) - - React-ImageManager (0.73.6): - - glog - - RCT-Folly/Fabric - - React-Core/Default - - React-debug - - React-Fabric - - React-graphics - - React-rendererdebug - - React-utils - - React-jserrorhandler (0.73.6): - - RCT-Folly/Fabric (= 2022.05.16.00) - - React-debug - - React-jsi - - React-Mapbuffer - - React-jsi (0.73.6): - - boost (= 1.83.0) - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-jsiexecutor (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-cxxreact (= 0.73.6) - - React-jsi (= 0.73.6) - - React-perflogger (= 0.73.6) - - React-jsinspector (0.73.6) - - React-logger (0.73.6): - - glog - - React-Mapbuffer (0.73.6): - - glog - - React-debug - - react-native-safe-area-context (4.8.2): - - React-Core - - react-native-unistyles (2.5.5): - - glog - - RCT-Folly (= 2022.05.16.00) - - React-Core - - React-nativeconfig (0.73.6) - - React-NativeModulesApple (0.73.6): - - glog - - hermes-engine - - React-callinvoker - - React-Core - - React-cxxreact - - React-jsi - - React-runtimeexecutor - - ReactCommon/turbomodule/bridging - - ReactCommon/turbomodule/core - - React-perflogger (0.73.6) - - React-RCTActionSheet (0.73.6): - - React-Core/RCTActionSheetHeaders (= 0.73.6) - - React-RCTAnimation (0.73.6): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety - - React-Codegen - - React-Core/RCTAnimationHeaders - - React-jsi - - React-NativeModulesApple - - ReactCommon - - React-RCTAppDelegate (0.73.6): - - RCT-Folly - - RCTRequired - - RCTTypeSafety - - React-Core - - React-CoreModules - - React-hermes - - React-nativeconfig - - React-NativeModulesApple - - React-RCTFabric - - React-RCTImage - - React-RCTNetwork - - React-runtimescheduler - - ReactCommon - - React-RCTBlob (0.73.6): - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-Codegen - - React-Core/RCTBlobHeaders - - React-Core/RCTWebSocket - - React-jsi - - React-NativeModulesApple - - React-RCTNetwork - - ReactCommon - - React-RCTFabric (0.73.6): - - glog - - hermes-engine - - RCT-Folly/Fabric (= 2022.05.16.00) - - React-Core - - React-debug - - React-Fabric - - React-FabricImage - - React-graphics - - React-ImageManager - - React-jsi - - React-nativeconfig - - React-RCTImage - - React-RCTText - - React-rendererdebug - - React-runtimescheduler - - React-utils - - Yoga - - React-RCTImage (0.73.6): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety - - React-Codegen - - React-Core/RCTImageHeaders - - React-jsi - - React-NativeModulesApple - - React-RCTNetwork - - ReactCommon - - React-RCTLinking (0.73.6): - - React-Codegen - - React-Core/RCTLinkingHeaders (= 0.73.6) - - React-jsi (= 0.73.6) - - React-NativeModulesApple - - ReactCommon - - ReactCommon/turbomodule/core (= 0.73.6) - - React-RCTNetwork (0.73.6): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety - - React-Codegen - - React-Core/RCTNetworkHeaders - - React-jsi - - React-NativeModulesApple - - ReactCommon - - React-RCTSettings (0.73.6): - - RCT-Folly (= 2022.05.16.00) - - RCTTypeSafety - - React-Codegen - - React-Core/RCTSettingsHeaders - - React-jsi - - React-NativeModulesApple - - ReactCommon - - React-RCTText (0.73.6): - - React-Core/RCTTextHeaders (= 0.73.6) - - Yoga - - React-RCTVibration (0.73.6): - - RCT-Folly (= 2022.05.16.00) - - React-Codegen - - React-Core/RCTVibrationHeaders - - React-jsi - - React-NativeModulesApple - - ReactCommon - - React-rendererdebug (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - RCT-Folly (= 2022.05.16.00) - - React-debug - - React-rncore (0.73.6) - - React-runtimeexecutor (0.73.6): - - React-jsi (= 0.73.6) - - React-runtimescheduler (0.73.6): - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker - - React-cxxreact - - React-debug - - React-jsi - - React-rendererdebug - - React-runtimeexecutor - - React-utils - - React-utils (0.73.6): - - glog - - RCT-Folly (= 2022.05.16.00) - - React-debug - - ReactCommon (0.73.6): - - React-logger (= 0.73.6) - - ReactCommon/turbomodule (= 0.73.6) - - ReactCommon/turbomodule (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker (= 0.73.6) - - React-cxxreact (= 0.73.6) - - React-jsi (= 0.73.6) - - React-logger (= 0.73.6) - - React-perflogger (= 0.73.6) - - ReactCommon/turbomodule/bridging (= 0.73.6) - - ReactCommon/turbomodule/core (= 0.73.6) - - ReactCommon/turbomodule/bridging (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker (= 0.73.6) - - React-cxxreact (= 0.73.6) - - React-jsi (= 0.73.6) - - React-logger (= 0.73.6) - - React-perflogger (= 0.73.6) - - ReactCommon/turbomodule/core (0.73.6): - - DoubleConversion - - fmt (~> 6.2.1) - - glog - - hermes-engine - - RCT-Folly (= 2022.05.16.00) - - React-callinvoker (= 0.73.6) - - React-cxxreact (= 0.73.6) - - React-jsi (= 0.73.6) - - React-logger (= 0.73.6) - - React-perflogger (= 0.73.6) - - RNScreens (3.29.0): - - glog - - RCT-Folly (= 2022.05.16.00) - - React-Core - - SDWebImage (5.17.0): - - SDWebImage/Core (= 5.17.0) - - SDWebImage/Core (5.17.0) - - SDWebImageAVIFCoder (0.10.1): - - libavif (>= 0.11.0) - - SDWebImage (~> 5.10) - - SDWebImageSVGCoder (1.7.0): - - SDWebImage/Core (~> 5.6) - - SDWebImageWebPCoder (0.13.0): - - libwebp (~> 1.0) - - SDWebImage/Core (~> 5.17) - - SocketRocket (0.6.1) - - Yoga (1.14.0) - -DEPENDENCIES: - - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`) - - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - - EXConstants (from `../node_modules/expo-constants/ios`) - - EXFont (from `../node_modules/expo-font/ios`) - - Expo (from `../node_modules/expo`) - - ExpoFileSystem (from `../node_modules/expo-file-system/ios`) - - ExpoHead (from `../node_modules/expo-router/ios`) - - ExpoImage (from `../node_modules/expo-image/ios`) - - ExpoKeepAwake (from `../node_modules/expo-keep-awake/ios`) - - ExpoModulesCore (from `../node_modules/expo-modules-core`) - - EXSplashScreen (from `../node_modules/expo-splash-screen/ios`) - - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) - - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) - - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) - - hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) - - libevent (~> 2.1.12) - - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - - RCT-Folly/Fabric (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) - - RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`) - - React (from `../node_modules/react-native/`) - - React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`) - - React-Codegen (from `build/generated/ios`) - - React-Core (from `../node_modules/react-native/`) - - React-Core/RCTWebSocket (from `../node_modules/react-native/`) - - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) - - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) - - React-debug (from `../node_modules/react-native/ReactCommon/react/debug`) - - React-Fabric (from `../node_modules/react-native/ReactCommon`) - - React-FabricImage (from `../node_modules/react-native/ReactCommon`) - - React-graphics (from `../node_modules/react-native/ReactCommon/react/renderer/graphics`) - - React-hermes (from `../node_modules/react-native/ReactCommon/hermes`) - - React-ImageManager (from `../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios`) - - React-jserrorhandler (from `../node_modules/react-native/ReactCommon/jserrorhandler`) - - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) - - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) - - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector-modern`) - - React-logger (from `../node_modules/react-native/ReactCommon/logger`) - - React-Mapbuffer (from `../node_modules/react-native/ReactCommon`) - - react-native-safe-area-context (from `../node_modules/react-native-safe-area-context`) - - react-native-unistyles (from `../node_modules/react-native-unistyles`) - - React-nativeconfig (from `../node_modules/react-native/ReactCommon`) - - React-NativeModulesApple (from `../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`) - - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`) - - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`) - - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) - - React-RCTAppDelegate (from `../node_modules/react-native/Libraries/AppDelegate`) - - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) - - React-RCTFabric (from `../node_modules/react-native/React`) - - React-RCTImage (from `../node_modules/react-native/Libraries/Image`) - - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`) - - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`) - - React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`) - - React-RCTText (from `../node_modules/react-native/Libraries/Text`) - - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`) - - React-rendererdebug (from `../node_modules/react-native/ReactCommon/react/renderer/debug`) - - React-rncore (from `../node_modules/react-native/ReactCommon`) - - React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`) - - React-runtimescheduler (from `../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`) - - React-utils (from `../node_modules/react-native/ReactCommon/react/utils`) - - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) - - RNScreens (from `../node_modules/react-native-screens`) - - Yoga (from `../node_modules/react-native/ReactCommon/yoga`) - -SPEC REPOS: - trunk: - - fmt - - libaom - - libavif - - libevent - - libvmaf - - libwebp - - SDWebImage - - SDWebImageAVIFCoder - - SDWebImageSVGCoder - - SDWebImageWebPCoder - - SocketRocket - -EXTERNAL SOURCES: - boost: - :podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec" - DoubleConversion: - :podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec" - EXConstants: - :path: "../node_modules/expo-constants/ios" - EXFont: - :path: "../node_modules/expo-font/ios" - Expo: - :path: "../node_modules/expo" - ExpoFileSystem: - :path: "../node_modules/expo-file-system/ios" - ExpoHead: - :path: "../node_modules/expo-router/ios" - ExpoImage: - :path: "../node_modules/expo-image/ios" - ExpoKeepAwake: - :path: "../node_modules/expo-keep-awake/ios" - ExpoModulesCore: - :path: "../node_modules/expo-modules-core" - EXSplashScreen: - :path: "../node_modules/expo-splash-screen/ios" - FBLazyVector: - :path: "../node_modules/react-native/Libraries/FBLazyVector" - FBReactNativeSpec: - :path: "../node_modules/react-native/React/FBReactNativeSpec" - glog: - :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" - hermes-engine: - :podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec" - :tag: hermes-2024-02-20-RNv0.73.5-18f99ace4213052c5e7cdbcd39ee9766cd5df7e4 - RCT-Folly: - :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" - RCTRequired: - :path: "../node_modules/react-native/Libraries/RCTRequired" - RCTTypeSafety: - :path: "../node_modules/react-native/Libraries/TypeSafety" - React: - :path: "../node_modules/react-native/" - React-callinvoker: - :path: "../node_modules/react-native/ReactCommon/callinvoker" - React-Codegen: - :path: build/generated/ios - React-Core: - :path: "../node_modules/react-native/" - React-CoreModules: - :path: "../node_modules/react-native/React/CoreModules" - React-cxxreact: - :path: "../node_modules/react-native/ReactCommon/cxxreact" - React-debug: - :path: "../node_modules/react-native/ReactCommon/react/debug" - React-Fabric: - :path: "../node_modules/react-native/ReactCommon" - React-FabricImage: - :path: "../node_modules/react-native/ReactCommon" - React-graphics: - :path: "../node_modules/react-native/ReactCommon/react/renderer/graphics" - React-hermes: - :path: "../node_modules/react-native/ReactCommon/hermes" - React-ImageManager: - :path: "../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios" - React-jserrorhandler: - :path: "../node_modules/react-native/ReactCommon/jserrorhandler" - React-jsi: - :path: "../node_modules/react-native/ReactCommon/jsi" - React-jsiexecutor: - :path: "../node_modules/react-native/ReactCommon/jsiexecutor" - React-jsinspector: - :path: "../node_modules/react-native/ReactCommon/jsinspector-modern" - React-logger: - :path: "../node_modules/react-native/ReactCommon/logger" - React-Mapbuffer: - :path: "../node_modules/react-native/ReactCommon" - react-native-safe-area-context: - :path: "../node_modules/react-native-safe-area-context" - react-native-unistyles: - :path: "../node_modules/react-native-unistyles" - React-nativeconfig: - :path: "../node_modules/react-native/ReactCommon" - React-NativeModulesApple: - :path: "../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios" - React-perflogger: - :path: "../node_modules/react-native/ReactCommon/reactperflogger" - React-RCTActionSheet: - :path: "../node_modules/react-native/Libraries/ActionSheetIOS" - React-RCTAnimation: - :path: "../node_modules/react-native/Libraries/NativeAnimation" - React-RCTAppDelegate: - :path: "../node_modules/react-native/Libraries/AppDelegate" - React-RCTBlob: - :path: "../node_modules/react-native/Libraries/Blob" - React-RCTFabric: - :path: "../node_modules/react-native/React" - React-RCTImage: - :path: "../node_modules/react-native/Libraries/Image" - React-RCTLinking: - :path: "../node_modules/react-native/Libraries/LinkingIOS" - React-RCTNetwork: - :path: "../node_modules/react-native/Libraries/Network" - React-RCTSettings: - :path: "../node_modules/react-native/Libraries/Settings" - React-RCTText: - :path: "../node_modules/react-native/Libraries/Text" - React-RCTVibration: - :path: "../node_modules/react-native/Libraries/Vibration" - React-rendererdebug: - :path: "../node_modules/react-native/ReactCommon/react/renderer/debug" - React-rncore: - :path: "../node_modules/react-native/ReactCommon" - React-runtimeexecutor: - :path: "../node_modules/react-native/ReactCommon/runtimeexecutor" - React-runtimescheduler: - :path: "../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler" - React-utils: - :path: "../node_modules/react-native/ReactCommon/react/utils" - ReactCommon: - :path: "../node_modules/react-native/ReactCommon" - RNScreens: - :path: "../node_modules/react-native-screens" - Yoga: - :path: "../node_modules/react-native/ReactCommon/yoga" - -SPEC CHECKSUMS: - boost: d3f49c53809116a5d38da093a8aa78bf551aed09 - DoubleConversion: fea03f2699887d960129cc54bba7e52542b6f953 - EXConstants: 988aa430ca0f76b43cd46b66e7fae3287f9cc2fc - EXFont: f20669cb266ef48b004f1eb1f2b20db96cd1df9f - Expo: e01a77c6fa4bc80a6d1bb949cda1d12d21044abd - ExpoFileSystem: eecaf6796aed0f4dd20042dc2ca2cac6c4bc1185 - ExpoHead: 8224345e80abcf4c97b31c99805dd5a3c8d3404d - ExpoImage: 8cf2d51de3d03b7e984e9b0ba8f19c0c22057001 - ExpoKeepAwake: 0f5cad99603a3268e50af9a6eb8b76d0d9ac956c - ExpoModulesCore: 61dc57c6e2a35f2f84baf488146db624e03af4cd - EXSplashScreen: 5538a51beec451bf1fcf5198e3062790e2534df3 - FBLazyVector: f64d1e2ea739b4d8f7e4740cde18089cd97fe864 - FBReactNativeSpec: 9f2b8b243131565335437dba74923a8d3015e780 - fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 - glog: c5d68082e772fa1c511173d6b30a9de2c05a69a2 - hermes-engine: 9cecf9953a681df7556b8cc9c74905de8f3293c0 - libaom: 144606b1da4b5915a1054383c3a4459ccdb3c661 - libavif: 84bbb62fb232c3018d6f1bab79beea87e35de7b7 - libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 - libvmaf: 27f523f1e63c694d14d534cd0fddd2fab0ae8711 - libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009 - RCT-Folly: 7169b2b1c44399c76a47b5deaaba715eeeb476c0 - RCTRequired: ca1d7414aba0b27efcfa2ccd37637edb1ab77d96 - RCTTypeSafety: 678e344fb976ff98343ca61dc62e151f3a042292 - React: e296bcebb489deaad87326067204eb74145934ab - React-callinvoker: d0b7015973fa6ccb592bb0363f6bc2164238ab8c - React-Codegen: f034a5de6f28e15e8d95d171df17e581d5309268 - React-Core: 44c936d0ab879e9c32e5381bd7596a677c59c974 - React-CoreModules: 558228e12cddb9ca00ff7937894cc5104a21be6b - React-cxxreact: 1fcf565012c203655b3638f35aa03c13c2ed7e9e - React-debug: d444db402065cca460d9c5b072caab802a04f729 - React-Fabric: 7d11905695e42f8bdaedddcf294959b43b290ab8 - React-FabricImage: 6e06a512d2fb5f55669c721578736785d915d4f5 - React-graphics: 5500206f7c9a481456365403c9fcf1638de108b7 - React-hermes: 783023e43af9d6be4fbaeeb96b5beee00649a5f7 - React-ImageManager: df193215ff3cf1a8dad297e554c89c632e42436c - React-jserrorhandler: a4d0f541c5852cf031db2f82f51de90be55b1334 - React-jsi: ae102ccb38d2e4d0f512b7074d0c9b4e1851f402 - React-jsiexecutor: bd12ec75873d3ef0a755c11f878f2c420430f5a9 - React-jsinspector: 85583ef014ce53d731a98c66a0e24496f7a83066 - React-logger: 3eb80a977f0d9669468ef641a5e1fabbc50a09ec - React-Mapbuffer: 84ea43c6c6232049135b1550b8c60b2faac19fab - react-native-safe-area-context: 0ee144a6170530ccc37a0fd9388e28d06f516a89 - react-native-unistyles: 1dcd0ced61eb90b726e1e4a575eb1b857a7ba685 - React-nativeconfig: b4d4e9901d4cabb57be63053fd2aa6086eb3c85f - React-NativeModulesApple: cd26e56d56350e123da0c1e3e4c76cb58a05e1ee - React-perflogger: 5f49905de275bac07ac7ea7f575a70611fa988f2 - React-RCTActionSheet: 37edf35aeb8e4f30e76c82aab61f12d1b75c04ec - React-RCTAnimation: a69de7f3daa8462743094f4736c455e844ea63f7 - React-RCTAppDelegate: 51fb96b554a6acd0cd7818acecd5aa5ca2f3ab9f - React-RCTBlob: d91771caebf2d015005d750cd1dc2b433ad07c99 - React-RCTFabric: c5b9451d1f2b546119b7a0353226a8a26247d4a9 - React-RCTImage: a0bfe87b6908c7b76bd7d74520f40660bd0ad881 - React-RCTLinking: 5f10be1647952cceddfa1970fdb374087582fc34 - React-RCTNetwork: a0bc3dd45a2dc7c879c80cebb6f9707b2c8bbed6 - React-RCTSettings: 28c202b68afa59afb4067510f2c69c5a530fb9e3 - React-RCTText: 4119d9e53ca5db9502b916e1b146e99798986d21 - React-RCTVibration: 55bd7c48487eb9a2562f2bd3fdc833274f5b0636 - React-rendererdebug: 5fa97ba664806cee4700e95aec42dff1b6f8ea36 - React-rncore: b0a8e1d14dabb7115c7a5b4ec8b9b74d1727d382 - React-runtimeexecutor: bb328dbe2865f3a550df0240df8e2d8c3aaa4c57 - React-runtimescheduler: 9636eee762c699ca7c85751a359101797e4c8b3b - React-utils: d16c1d2251c088ad817996621947d0ac8167b46c - ReactCommon: 2aa35648354bd4c4665b9a5084a7d37097b89c10 - RNScreens: 17e2f657f1b09a71ec3c821368a04acbb7ebcb46 - SDWebImage: 750adf017a315a280c60fde706ab1e552a3ae4e9 - SDWebImageAVIFCoder: 8348fef6d0ec69e129c66c9fe4d74fbfbf366112 - SDWebImageSVGCoder: 15a300a97ec1c8ac958f009c02220ac0402e936c - SDWebImageWebPCoder: af09429398d99d524cae2fe00f6f0f6e491ed102 - SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17 - Yoga: d17d2cc8105eed528474683b42e2ea310e1daf61 - -PODFILE CHECKSUM: f49a893ffbc010a1164dabf40c10b77dcdb687c5 - -COCOAPODS: 1.15.2 diff --git a/example/ios/Podfile.properties.json b/example/ios/Podfile.properties.json deleted file mode 100644 index de9f7b75..00000000 --- a/example/ios/Podfile.properties.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "expo.jsEngine": "hermes", - "EX_DEV_CLIENT_NETWORK_INSPECTOR": "true" -} diff --git a/example/ios/stacks.xcodeproj/project.pbxproj b/example/ios/stacks.xcodeproj/project.pbxproj deleted file mode 100644 index d44c01b0..00000000 --- a/example/ios/stacks.xcodeproj/project.pbxproj +++ /dev/null @@ -1,527 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; }; - 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; - 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; - 3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */; }; - 96905EF65AED1B983A6B3ABC /* libPods-stacks.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 58EEBF8E8E6FB1BC6CAF49B5 /* libPods-stacks.a */; }; - A430B2463B1F4C1F8A0A3037 /* noop-file.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CE739EEAAC843B19B5AF7B7 /* noop-file.swift */; }; - B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */; }; - BB2F792D24A3F905000567C9 /* Expo.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB2F792C24A3F905000567C9 /* Expo.plist */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 13B07F961A680F5B00A75B9A /* stacks.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = stacks.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = stacks/AppDelegate.h; sourceTree = ""; }; - 13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = stacks/AppDelegate.mm; sourceTree = ""; }; - 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = stacks/Images.xcassets; sourceTree = ""; }; - 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = stacks/Info.plist; sourceTree = ""; }; - 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = stacks/main.m; sourceTree = ""; }; - 58EEBF8E8E6FB1BC6CAF49B5 /* libPods-stacks.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-stacks.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 5CE739EEAAC843B19B5AF7B7 /* noop-file.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = "noop-file.swift"; path = "stacks/noop-file.swift"; sourceTree = ""; }; - 6C2E3173556A471DD304B334 /* Pods-stacks.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-stacks.debug.xcconfig"; path = "Target Support Files/Pods-stacks/Pods-stacks.debug.xcconfig"; sourceTree = ""; }; - 7A4D352CD337FB3A3BF06240 /* Pods-stacks.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-stacks.release.xcconfig"; path = "Target Support Files/Pods-stacks/Pods-stacks.release.xcconfig"; sourceTree = ""; }; - AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = stacks/SplashScreen.storyboard; sourceTree = ""; }; - BB2F792C24A3F905000567C9 /* Expo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Expo.plist; sourceTree = ""; }; - CEE71494D1004593BC83E5E6 /* stacks-Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "stacks-Bridging-Header.h"; path = "stacks/stacks-Bridging-Header.h"; sourceTree = ""; }; - ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; - FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-stacks/ExpoModulesProvider.swift"; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 13B07F8C1A680F5B00A75B9A /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 96905EF65AED1B983A6B3ABC /* libPods-stacks.a in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 13B07FAE1A68108700A75B9A /* stacks */ = { - isa = PBXGroup; - children = ( - BB2F792B24A3F905000567C9 /* Supporting */, - 13B07FAF1A68108700A75B9A /* AppDelegate.h */, - 13B07FB01A68108700A75B9A /* AppDelegate.mm */, - 13B07FB51A68108700A75B9A /* Images.xcassets */, - 13B07FB61A68108700A75B9A /* Info.plist */, - 13B07FB71A68108700A75B9A /* main.m */, - AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */, - 5CE739EEAAC843B19B5AF7B7 /* noop-file.swift */, - CEE71494D1004593BC83E5E6 /* stacks-Bridging-Header.h */, - ); - name = stacks; - sourceTree = ""; - }; - 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { - isa = PBXGroup; - children = ( - ED297162215061F000B7C4FE /* JavaScriptCore.framework */, - 58EEBF8E8E6FB1BC6CAF49B5 /* libPods-stacks.a */, - ); - name = Frameworks; - sourceTree = ""; - }; - 832341AE1AAA6A7D00B99B32 /* Libraries */ = { - isa = PBXGroup; - children = ( - ); - name = Libraries; - sourceTree = ""; - }; - 83CBB9F61A601CBA00E9B192 = { - isa = PBXGroup; - children = ( - 13B07FAE1A68108700A75B9A /* stacks */, - 832341AE1AAA6A7D00B99B32 /* Libraries */, - 83CBBA001A601CBA00E9B192 /* Products */, - 2D16E6871FA4F8E400B85C8A /* Frameworks */, - D65327D7A22EEC0BE12398D9 /* Pods */, - D7E4C46ADA2E9064B798F356 /* ExpoModulesProviders */, - ); - indentWidth = 2; - sourceTree = ""; - tabWidth = 2; - usesTabs = 0; - }; - 83CBBA001A601CBA00E9B192 /* Products */ = { - isa = PBXGroup; - children = ( - 13B07F961A680F5B00A75B9A /* stacks.app */, - ); - name = Products; - sourceTree = ""; - }; - 92DBD88DE9BF7D494EA9DA96 /* stacks */ = { - isa = PBXGroup; - children = ( - FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */, - ); - name = stacks; - sourceTree = ""; - }; - BB2F792B24A3F905000567C9 /* Supporting */ = { - isa = PBXGroup; - children = ( - BB2F792C24A3F905000567C9 /* Expo.plist */, - ); - name = Supporting; - path = stacks/Supporting; - sourceTree = ""; - }; - D65327D7A22EEC0BE12398D9 /* Pods */ = { - isa = PBXGroup; - children = ( - 6C2E3173556A471DD304B334 /* Pods-stacks.debug.xcconfig */, - 7A4D352CD337FB3A3BF06240 /* Pods-stacks.release.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; - D7E4C46ADA2E9064B798F356 /* ExpoModulesProviders */ = { - isa = PBXGroup; - children = ( - 92DBD88DE9BF7D494EA9DA96 /* stacks */, - ); - name = ExpoModulesProviders; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 13B07F861A680F5B00A75B9A /* stacks */ = { - isa = PBXNativeTarget; - buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "stacks" */; - buildPhases = ( - 08A4A3CD28434E44B6B9DE2E /* [CP] Check Pods Manifest.lock */, - E3C4E93B40D925CCC4EF376F /* [Expo] Configure project */, - 13B07F871A680F5B00A75B9A /* Sources */, - 13B07F8C1A680F5B00A75B9A /* Frameworks */, - 13B07F8E1A680F5B00A75B9A /* Resources */, - 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, - 800E24972A6A228C8D4807E9 /* [CP] Copy Pods Resources */, - 1EB34A66F9BBA51E11FA9B25 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = stacks; - productName = stacks; - productReference = 13B07F961A680F5B00A75B9A /* stacks.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 83CBB9F71A601CBA00E9B192 /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 1130; - TargetAttributes = { - 13B07F861A680F5B00A75B9A = { - LastSwiftMigration = 1250; - }; - }; - }; - buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "stacks" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 83CBB9F61A601CBA00E9B192; - productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 13B07F861A680F5B00A75B9A /* stacks */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 13B07F8E1A680F5B00A75B9A /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BB2F792D24A3F905000567C9 /* Expo.plist in Resources */, - 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, - 3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Bundle React Native code and images"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "if [[ -f \"$PODS_ROOT/../.xcode.env\" ]]; then\n source \"$PODS_ROOT/../.xcode.env\"\nfi\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n# The project root by default is one level up from the ios directory\nexport PROJECT_ROOT=\"$PROJECT_DIR\"/..\n\nif [[ \"$CONFIGURATION\" = *Debug* ]]; then\n export SKIP_BUNDLING=1\nfi\nif [[ -z \"$ENTRY_FILE\" ]]; then\n # Set the entry JS file using the bundler's entry resolution.\n export ENTRY_FILE=\"$(\"$NODE_BINARY\" -e \"require('expo/scripts/resolveAppEntry')\" \"$PROJECT_ROOT\" ios relative | tail -n 1)\"\nfi\n\nif [[ -z \"$CLI_PATH\" ]]; then\n # Use Expo CLI\n export CLI_PATH=\"$(\"$NODE_BINARY\" --print \"require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })\")\"\nfi\nif [[ -z \"$BUNDLE_COMMAND\" ]]; then\n # Default Expo CLI command for bundling\n export BUNDLE_COMMAND=\"export:embed\"\nfi\n\n# Source .xcode.env.updates if it exists to allow\n# SKIP_BUNDLING to be unset if needed\nif [[ -f \"$PODS_ROOT/../.xcode.env.updates\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.updates\"\nfi\n# Source local changes to allow overrides\n# if needed\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n`\"$NODE_BINARY\" --print \"require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/react-native-xcode.sh'\"`\n\n"; - }; - 08A4A3CD28434E44B6B9DE2E /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-stacks-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 1EB34A66F9BBA51E11FA9B25 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-stacks/Pods-stacks-frameworks.sh", - "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes", - ); - name = "[CP] Embed Pods Frameworks"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-stacks/Pods-stacks-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 800E24972A6A228C8D4807E9 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-stacks/Pods-stacks-resources.sh", - "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants/EXConstants.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/RCTI18nStrings.bundle", - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EXConstants.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/RCTI18nStrings.bundle", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-stacks/Pods-stacks-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; - E3C4E93B40D925CCC4EF376F /* [Expo] Configure project */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "[Expo] Configure project"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# This script configures Expo modules and generates the modules provider file.\nbash -l -c \"./Pods/Target\\ Support\\ Files/Pods-stacks/expo-configure-project.sh\"\n"; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 13B07F871A680F5B00A75B9A /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */, - 13B07FC11A68108700A75B9A /* main.m in Sources */, - B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */, - A430B2463B1F4C1F8A0A3037 /* noop-file.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 13B07F941A680F5B00A75B9A /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6C2E3173556A471DD304B334 /* Pods-stacks.debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = stacks/stacks.entitlements; - CURRENT_PROJECT_VERSION = 1; - ENABLE_BITCODE = NO; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - "FB_SONARKIT_ENABLED=1", - ); - INFOPLIST_FILE = stacks/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.4; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - MARKETING_VERSION = 1.0; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG"; - PRODUCT_BUNDLE_IDENTIFIER = com.anonymous.stacks; - PRODUCT_NAME = stacks; - SWIFT_OBJC_BRIDGING_HEADER = "stacks/stacks-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Debug; - }; - 13B07F951A680F5B00A75B9A /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7A4D352CD337FB3A3BF06240 /* Pods-stacks.release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = stacks/stacks.entitlements; - CURRENT_PROJECT_VERSION = 1; - INFOPLIST_FILE = stacks/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.4; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - MARKETING_VERSION = 1.0; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE"; - PRODUCT_BUNDLE_IDENTIFIER = com.anonymous.stacks; - PRODUCT_NAME = stacks; - SWIFT_OBJC_BRIDGING_HEADER = "stacks/stacks-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Release; - }; - 83CBBA201A601CBA00E9B192 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "c++20"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.4; - LD_RUNPATH_SEARCH_PATHS = "/usr/lib/swift $(inherited)"; - LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift\"$(inherited)\""; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; - OTHER_CPLUSPLUSFLAGS = "$(inherited)"; - OTHER_LDFLAGS = ( - "$(inherited)", - " ", - ); - REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; - SDKROOT = iphoneos; - USE_HERMES = true; - }; - name = Debug; - }; - 83CBBA211A601CBA00E9B192 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "c++20"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = YES; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.4; - LD_RUNPATH_SEARCH_PATHS = "/usr/lib/swift $(inherited)"; - LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift\"$(inherited)\""; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = "$(inherited)"; - OTHER_CPLUSPLUSFLAGS = "$(inherited)"; - OTHER_LDFLAGS = ( - "$(inherited)", - " ", - ); - REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; - SDKROOT = iphoneos; - USE_HERMES = true; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "stacks" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 13B07F941A680F5B00A75B9A /* Debug */, - 13B07F951A680F5B00A75B9A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "stacks" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 83CBBA201A601CBA00E9B192 /* Debug */, - 83CBBA211A601CBA00E9B192 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */; -} diff --git a/example/ios/stacks.xcodeproj/xcshareddata/xcschemes/stacks.xcscheme b/example/ios/stacks.xcodeproj/xcshareddata/xcschemes/stacks.xcscheme deleted file mode 100644 index c6288f85..00000000 --- a/example/ios/stacks.xcodeproj/xcshareddata/xcschemes/stacks.xcscheme +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/example/ios/stacks.xcworkspace/contents.xcworkspacedata b/example/ios/stacks.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 4f2c9fa4..00000000 --- a/example/ios/stacks.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - diff --git a/example/ios/stacks/AppDelegate.h b/example/ios/stacks/AppDelegate.h deleted file mode 100644 index 1658a437..00000000 --- a/example/ios/stacks/AppDelegate.h +++ /dev/null @@ -1,7 +0,0 @@ -#import -#import -#import - -@interface AppDelegate : EXAppDelegateWrapper - -@end diff --git a/example/ios/stacks/AppDelegate.mm b/example/ios/stacks/AppDelegate.mm deleted file mode 100644 index 37d415b5..00000000 --- a/example/ios/stacks/AppDelegate.mm +++ /dev/null @@ -1,62 +0,0 @@ -#import "AppDelegate.h" - -#import -#import - -@implementation AppDelegate - -- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions -{ - self.moduleName = @"main"; - - // You can add your custom initial props in the dictionary below. - // They will be passed down to the ViewController used by React Native. - self.initialProps = @{}; - - return [super application:application didFinishLaunchingWithOptions:launchOptions]; -} - -- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge -{ - return [self getBundleURL]; -} - -- (NSURL *)getBundleURL -{ -#if DEBUG - return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@".expo/.virtual-metro-entry"]; -#else - return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; -#endif -} - -// Linking API -- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary *)options { - return [super application:application openURL:url options:options] || [RCTLinkingManager application:application openURL:url options:options]; -} - -// Universal Links -- (BOOL)application:(UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray> * _Nullable))restorationHandler { - BOOL result = [RCTLinkingManager application:application continueUserActivity:userActivity restorationHandler:restorationHandler]; - return [super application:application continueUserActivity:userActivity restorationHandler:restorationHandler] || result; -} - -// Explicitly define remote notification delegates to ensure compatibility with some third-party libraries -- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken -{ - return [super application:application didRegisterForRemoteNotificationsWithDeviceToken:deviceToken]; -} - -// Explicitly define remote notification delegates to ensure compatibility with some third-party libraries -- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error -{ - return [super application:application didFailToRegisterForRemoteNotificationsWithError:error]; -} - -// Explicitly define remote notification delegates to ensure compatibility with some third-party libraries -- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler -{ - return [super application:application didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler]; -} - -@end diff --git a/example/ios/stacks/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png b/example/ios/stacks/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png deleted file mode 100644 index 2732229f..00000000 Binary files a/example/ios/stacks/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png and /dev/null differ diff --git a/example/ios/stacks/Images.xcassets/AppIcon.appiconset/Contents.json b/example/ios/stacks/Images.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 90d8d4c2..00000000 --- a/example/ios/stacks/Images.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "images": [ - { - "filename": "App-Icon-1024x1024@1x.png", - "idiom": "universal", - "platform": "ios", - "size": "1024x1024" - } - ], - "info": { - "version": 1, - "author": "expo" - } -} \ No newline at end of file diff --git a/example/ios/stacks/Images.xcassets/Contents.json b/example/ios/stacks/Images.xcassets/Contents.json deleted file mode 100644 index ed285c2e..00000000 --- a/example/ios/stacks/Images.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "expo" - } -} diff --git a/example/ios/stacks/Images.xcassets/SplashScreen.imageset/Contents.json b/example/ios/stacks/Images.xcassets/SplashScreen.imageset/Contents.json deleted file mode 100644 index 3cf84897..00000000 --- a/example/ios/stacks/Images.xcassets/SplashScreen.imageset/Contents.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "images": [ - { - "idiom": "universal", - "filename": "image.png", - "scale": "1x" - }, - { - "idiom": "universal", - "scale": "2x" - }, - { - "idiom": "universal", - "scale": "3x" - } - ], - "info": { - "version": 1, - "author": "expo" - } -} \ No newline at end of file diff --git a/example/ios/stacks/Images.xcassets/SplashScreen.imageset/image.png b/example/ios/stacks/Images.xcassets/SplashScreen.imageset/image.png deleted file mode 100644 index c52c2c68..00000000 Binary files a/example/ios/stacks/Images.xcassets/SplashScreen.imageset/image.png and /dev/null differ diff --git a/example/ios/stacks/Images.xcassets/SplashScreenBackground.imageset/Contents.json b/example/ios/stacks/Images.xcassets/SplashScreenBackground.imageset/Contents.json deleted file mode 100644 index 3cf84897..00000000 --- a/example/ios/stacks/Images.xcassets/SplashScreenBackground.imageset/Contents.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "images": [ - { - "idiom": "universal", - "filename": "image.png", - "scale": "1x" - }, - { - "idiom": "universal", - "scale": "2x" - }, - { - "idiom": "universal", - "scale": "3x" - } - ], - "info": { - "version": 1, - "author": "expo" - } -} \ No newline at end of file diff --git a/example/ios/stacks/Images.xcassets/SplashScreenBackground.imageset/image.png b/example/ios/stacks/Images.xcassets/SplashScreenBackground.imageset/image.png deleted file mode 100644 index 33ddf20b..00000000 Binary files a/example/ios/stacks/Images.xcassets/SplashScreenBackground.imageset/image.png and /dev/null differ diff --git a/example/ios/stacks/Info.plist b/example/ios/stacks/Info.plist deleted file mode 100644 index 5e278b8c..00000000 --- a/example/ios/stacks/Info.plist +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CADisableMinimumFrameDurationOnPhone - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - stacks - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - $(PRODUCT_BUNDLE_PACKAGE_TYPE) - CFBundleShortVersionString - 1.0.0 - CFBundleSignature - ???? - CFBundleURLTypes - - - CFBundleURLSchemes - - com.anonymous.stacks - - - - CFBundleVersion - 1 - LSRequiresIPhoneOS - - NSAppTransportSecurity - - NSAllowsArbitraryLoads - - NSAllowsLocalNetworking - - - UILaunchStoryboardName - SplashScreen - UIRequiredDeviceCapabilities - - armv7 - - UIRequiresFullScreen - - UIStatusBarStyle - UIStatusBarStyleDefault - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UIUserInterfaceStyle - Light - UIViewControllerBasedStatusBarAppearance - - - \ No newline at end of file diff --git a/example/ios/stacks/SplashScreen.storyboard b/example/ios/stacks/SplashScreen.storyboard deleted file mode 100644 index ed03a529..00000000 --- a/example/ios/stacks/SplashScreen.storyboard +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/example/ios/stacks/Supporting/Expo.plist b/example/ios/stacks/Supporting/Expo.plist deleted file mode 100644 index 540b7462..00000000 --- a/example/ios/stacks/Supporting/Expo.plist +++ /dev/null @@ -1,14 +0,0 @@ - - - - - EXUpdatesCheckOnLaunch - ALWAYS - EXUpdatesEnabled - - EXUpdatesLaunchWaitMs - 0 - EXUpdatesSDKVersion - 50.0.0 - - \ No newline at end of file diff --git a/example/ios/stacks/main.m b/example/ios/stacks/main.m deleted file mode 100644 index 25181b6c..00000000 --- a/example/ios/stacks/main.m +++ /dev/null @@ -1,10 +0,0 @@ -#import - -#import "AppDelegate.h" - -int main(int argc, char * argv[]) { - @autoreleasepool { - return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); - } -} - diff --git a/example/ios/stacks/noop-file.swift b/example/ios/stacks/noop-file.swift deleted file mode 100644 index b2ffafbf..00000000 --- a/example/ios/stacks/noop-file.swift +++ /dev/null @@ -1,4 +0,0 @@ -// -// @generated -// A blank Swift file must be created for native modules with Swift files to work correctly. -// diff --git a/example/ios/stacks/stacks-Bridging-Header.h b/example/ios/stacks/stacks-Bridging-Header.h deleted file mode 100644 index e11d920b..00000000 --- a/example/ios/stacks/stacks-Bridging-Header.h +++ /dev/null @@ -1,3 +0,0 @@ -// -// Use this file to import your target's public headers that you would like to expose to Swift. -// diff --git a/example/ios/stacks/stacks.entitlements b/example/ios/stacks/stacks.entitlements deleted file mode 100644 index 018a6e20..00000000 --- a/example/ios/stacks/stacks.entitlements +++ /dev/null @@ -1,8 +0,0 @@ - - - - - aps-environment - development - - \ No newline at end of file diff --git a/example/justfile b/example/justfile new file mode 100644 index 00000000..8567e9ed --- /dev/null +++ b/example/justfile @@ -0,0 +1,23 @@ +ios_app := "stacks.app" + +ignore := "> /dev/null" + +dev *flags: + bun run expo start --dev-client {{flags}} + +build platform: + bun run eas build --local \ + --platform {{platform}} \ + --output .build/{{ if platform == "android" { "android.apk" } else { "ios.tar.gz" } }} \ + --profile development + +install platform: + #!/usr/bin/env sh + if [ "{{platform}}" = "android" ]; then + echo "android installation steps here"; + else \ + tar -xvzf .build/ios.tar.gz -C .build + xcrun simctl install booted .build/{{ios_app}} + rm -rf .build/{{ios_app}} + fi + diff --git a/example/package.json b/example/package.json index 0e2e856a..5460c8d7 100644 --- a/example/package.json +++ b/example/package.json @@ -1,32 +1,30 @@ { "name": "stacks", "version": "1.0.0", - "main": "expo-router/entry", - "scripts": { - "start": "expo start", - "android": "expo run:android", - "ios": "expo run:ios", - "web": "expo start --web" - }, + "main": "index.js", "dependencies": { - "@expo/metro-runtime": "~3.1.3", + "@expo/metro-runtime": "~4.0.1", "@grapp/stacks": "link:@grapp/stacks", - "expo": "~50.0.14", - "expo-constants": "~15.4.5", - "expo-image": "^1.10.6", - "expo-linking": "~6.2.2", - "expo-router": "~3.4.8", - "expo-status-bar": "~1.11.1", - "react": "18.2.0", - "react-dom": "18.2.0", - "react-native": "0.73.6", - "react-native-safe-area-context": "4.8.2", - "react-native-screens": "~3.29.0", - "react-native-unistyles": "^2.5.5", - "react-native-web": "~0.19.6" + "expo": "~52.0.28", + "expo-constants": "~17.0.5", + "expo-image": "^2.0.4", + "expo-linking": "~7.0.5", + "expo-router": "~4.0.17", + "expo-status-bar": "~2.0.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-native": "0.77.0", + "react-native-edge-to-edge": "^1.4.3", + "react-native-nitro-modules": "^0.21.0", + "react-native-safe-area-context": "^5.1.0", + "react-native-screens": "4.4.0", + "react-native-unistyles": "3.0.0-beta.6", + "react-native-web": "~0.19.13" }, "devDependencies": { - "@babel/core": "^7.20.0" + "@babel/core": "^7.26.7", + "eas-cli": "^14.7.1", + "expo-dev-client": "^5.0.11" }, "private": true } diff --git a/example/app/styles/unistyles.ts b/example/styles/unistyles.ts similarity index 71% rename from example/app/styles/unistyles.ts rename to example/styles/unistyles.ts index 2fc53b77..5434249b 100644 --- a/example/app/styles/unistyles.ts +++ b/example/styles/unistyles.ts @@ -1,4 +1,4 @@ -import { UnistylesRegistry } from 'react-native-unistyles'; +import { StyleSheet } from 'react-native-unistyles'; const breakpoints = { mobile: 0, @@ -13,6 +13,11 @@ const theme = { }, }; +const themes = { + light: theme, + dark: theme, +}; + type Breakpoints = typeof breakpoints; type Themes = { @@ -28,10 +33,10 @@ declare module '@grapp/stacks' { export interface StacksBreakpoints extends Breakpoints {} } -UnistylesRegistry.addBreakpoints(breakpoints) - .addThemes({ - light: theme, - }) - .addConfig({ - adaptiveThemes: true, - }); +StyleSheet.configure({ + settings: { + initialTheme: 'light', + }, + breakpoints, + themes, +}); diff --git a/justfile b/justfile new file mode 100644 index 00000000..d314df32 --- /dev/null +++ b/justfile @@ -0,0 +1,12 @@ +build: + rm -rf ./lib + bun run tsup + +test: + bun run tsc --pretty --noEmit + bun run eslint ./src + +publish tag="latest": test build + @echo "Using tag: {{tag}}" + npm publish --tag {{tag}} + diff --git a/package.json b/package.json index 5e62b211..84c7bc9e 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@grapp/stacks", "description": "A set of components for building layouts in React Native. Powered by React Native Unistyles.", - "version": "3.1.0", + "version": "4.0.0-beta.1", "license": "MIT", "author": "Marcin Dziewulski ", "react-native": "src/index.ts", @@ -16,10 +16,6 @@ "*.md", "package.json" ], - "scripts": { - "build": "rm -rf ./lib && tsup", - "types:check": "tsc --noEmit" - }, "publishConfig": { "access": "public" }, @@ -40,20 +36,22 @@ }, "peerDependencies": { "react": ">=18.0.0", - "react-native": ">=0.71.0", - "react-native-unistyles": ">=2.0" + "react-native": ">=0.76.0", + "react-native-unistyles": ">=3.0.0", + "react-native-edge-to-edge": "*", + "react-native-nitro-modules": "*" }, "devDependencies": { - "@grapp/eslint-config": "^0.1.1", + "@grapp/eslint-config": "^0.1.2", "@grapp/prettier-config": "^0.1.1", "@grapp/ts-config": "^0.1.3", "@types/node": "^18.11.10", "@types/react": "~18.2.45", "react": "^18.2.0", - "react-native": "0.73.6", - "react-native-unistyles": "^2.5.5", - "tsup": "^8.0.2", - "typescript": "^5.4.4" + "react-native": "0.77.0", + "react-native-unistyles": "3.0.0-beta.6", + "tsup": "^8.3.6", + "typescript": "^5.7.3" }, "cacheDirectories": ["node_modules"] } diff --git a/src/components/Box.tsx b/src/components/Box.tsx index 50c72845..92898b8c 100644 --- a/src/components/Box.tsx +++ b/src/components/Box.tsx @@ -1,13 +1,25 @@ import * as React from 'react'; -import { DimensionValue, View, ViewProps } from 'react-native'; -import { createStyleSheet, useStyles } from 'react-native-unistyles'; +import { ColorValue, DimensionValue, View, ViewProps } from 'react-native'; +import { StyleSheet } from 'react-native-unistyles'; import { useDebugStyle, useResponsiveProp, useSpacingHelpers } from '../hooks'; import type * as Polymorphic from '../polymorphic'; -import type { AxisX, AxisY, Direction, Flex, ResponsiveProp, Space, Stretch, Wrap } from '../types'; +import type { + AxisX, + AxisY, + Direction, + Flex, + OutlineStyle, + Overflow, + PointerEvent, + ResponsiveProp, + Space, + Stretch, + Wrap, +} from '../types'; import { resolveDirectionAndReverse } from '../utils'; -export type BoxProps = ViewProps & { +export type BoxProps = Omit & { readonly alignX?: ResponsiveProp; readonly alignY?: ResponsiveProp; readonly gap?: ResponsiveProp; @@ -35,7 +47,7 @@ export type BoxProps = ViewProps & { readonly wrap?: ResponsiveProp; readonly flex?: ResponsiveProp; readonly reverse?: ResponsiveProp; - readonly backgroundColor?: ResponsiveProp; + readonly backgroundColor?: ResponsiveProp; readonly borderRadius?: ResponsiveProp; readonly borderTopLeftRadius?: ResponsiveProp; readonly borderTopRightRadius?: ResponsiveProp; @@ -46,9 +58,16 @@ export type BoxProps = ViewProps & { readonly borderRightWidth?: ResponsiveProp; readonly borderBottomWidth?: ResponsiveProp; readonly borderLeftWidth?: ResponsiveProp; - readonly borderColor?: ResponsiveProp; + readonly borderColor?: ResponsiveProp; readonly width?: ResponsiveProp; readonly height?: ResponsiveProp; + readonly outlineColor?: ResponsiveProp; + readonly outlineStyle?: ResponsiveProp; + readonly outlineOffset?: ResponsiveProp; + readonly outlineWidth?: ResponsiveProp; + readonly opacity?: ResponsiveProp; + readonly pointerEvents?: ResponsiveProp; + readonly overflow?: ResponsiveProp; readonly debuggable?: ResponsiveProp; }; @@ -101,6 +120,13 @@ export const Box = React.forwardRef((props, ref) => { borderLeftWidth, style, debuggable = true, + outlineColor, + outlineWidth, + outlineStyle, + outlineOffset, + opacity, + pointerEvents, + overflow, ...rest } = props; @@ -116,6 +142,11 @@ export const Box = React.forwardRef((props, ref) => { const justifyContent = resolveResponsiveProp(isDirectionColumn ? alignY : alignX); const defaultWidth = resolveResponsiveProp(width); const defaultHeight = resolveResponsiveProp(height); + + const defaultOutlineStyle = resolveResponsiveProp(outlineStyle); + const defaultPointerEvents = resolveResponsiveProp(pointerEvents); + const defaultOverflow = resolveResponsiveProp(overflow); + const isDebuggable = resolveResponsiveProp(debuggable); const flexWrap = resolveResponsiveProp(wrap); @@ -129,12 +160,15 @@ export const Box = React.forwardRef((props, ref) => { : 'content', ); - const { styles } = useStyles(stylesheet, { + styles.useVariants({ justifyContent, alignItems, flexBasis, flexWrap, flexDirection, + outlineStyle: defaultOutlineStyle, + pointerEvents: defaultPointerEvents, + overflow: defaultOverflow, }); return ( @@ -179,6 +213,10 @@ export const Box = React.forwardRef((props, ref) => { borderBottomWidth: resolveResponsiveProp(borderBottomWidth), borderLeftWidth: resolveResponsiveProp(borderLeftWidth), borderColor: resolveResponsiveProp(borderColor), + outlineColor: resolveResponsiveProp(outlineColor), + outlineOffset: resolveResponsiveProp(outlineOffset), + outlineWidth: resolveResponsiveProp(outlineWidth), + opacity: resolveResponsiveProp(opacity), }, isDebuggable && debugStyle, style, @@ -191,7 +229,7 @@ export const Box = React.forwardRef((props, ref) => { Box.displayName = 'Box'; -const stylesheet = createStyleSheet({ +const styles = StyleSheet.create({ root: { variants: { alignItems: { @@ -269,6 +307,39 @@ const stylesheet = createStyleSheet({ flexWrap: 'wrap-reverse', }, }, + pointerEvents: { + auto: { + pointerEvents: 'auto', + }, + 'box-none': { + pointerEvents: 'box-none', + }, + 'box-only': { + pointerEvents: 'box-only', + }, + none: { + pointerEvents: 'none', + }, + }, + overflow: { + visible: { + overflow: 'visible', + }, + hidden: { + overflow: 'hidden', + }, + }, + outlineStyle: { + solid: { + outlineStyle: 'solid', + }, + dotted: { + outlineStyle: 'dotted', + }, + dashed: { + outlineStyle: 'dashed', + }, + }, flexBasis: { content: { flex: 0, diff --git a/src/components/Column.tsx b/src/components/Column.tsx index 725c78e6..6293e68c 100644 --- a/src/components/Column.tsx +++ b/src/components/Column.tsx @@ -2,7 +2,27 @@ import * as React from 'react'; import { BoxProps } from './Box'; -export const Column = (_props: BoxProps): JSX.Element => { +export type ColumnProps = Omit< + BoxProps, + | 'backgroundColor' + | 'borderRadius' + | 'borderTopLeftRadius' + | 'borderTopRightRadius' + | 'borderBottomLeftRadius' + | 'borderBottomRightRadius' + | 'borderWidth' + | 'borderTopWidth' + | 'borderRightWidth' + | 'borderBottomWidth' + | 'borderLeftWidth' + | 'borderColor' + | 'outlineColor' + | 'outlineStyle' + | 'outlineWidth' + | 'outlineOffset' +>; + +export const Column = (_props: ColumnProps): JSX.Element => { throw new Error('[Stacks] Column must be a direct child of Columns.'); }; diff --git a/src/components/Columns.tsx b/src/components/Columns.tsx index d076181d..5351a13b 100644 --- a/src/components/Columns.tsx +++ b/src/components/Columns.tsx @@ -2,25 +2,38 @@ import * as React from 'react'; import { Platform } from 'react-native'; import { Box } from './Box'; -import { Column } from './Column'; -import { FloatBox } from './FloatBox'; - -import { - useBreakpointComparators, - useDebugStyle, - useResponsiveProp, - useSpacingHelpers, -} from '../hooks'; +import { ColumnProps } from './Column'; + +import { useBreakpointComparators, useResponsiveProp } from '../hooks'; import type { AxisX, AxisY, Breakpoint, Flex, ResponsiveProp, Space } from '../types'; import { flattenChildren, negate } from '../utils'; type BoxProps = Omit< React.ComponentProps, - 'alignX' | 'alignY' | 'direction' | 'gap' | 'rowGap' | 'columnGap' + | 'alignX' + | 'alignY' + | 'direction' + | 'gap' + | 'rowGap' + | 'columnGap' + | 'backgroundColor' + | 'borderRadius' + | 'borderTopLeftRadius' + | 'borderTopRightRadius' + | 'borderBottomLeftRadius' + | 'borderBottomRightRadius' + | 'borderWidth' + | 'borderTopWidth' + | 'borderRightWidth' + | 'borderBottomWidth' + | 'borderLeftWidth' + | 'borderColor' + | 'outlineColor' + | 'outlineStyle' + | 'outlineWidth' + | 'outlineOffset' >; -export type ColumnProps = React.ComponentProps; - export type ColumnsProps = BoxProps & { readonly space?: ResponsiveProp; readonly defaultFlex?: ResponsiveProp; @@ -94,67 +107,6 @@ const resolveBleedOrInset = ( return space; }; -type BackgroundProps = Pick< - BoxProps, - | 'borderWidth' - | 'borderTopWidth' - | 'borderRightWidth' - | 'borderLeftWidth' - | 'borderBottomWidth' - | 'borderColor' - | 'borderRadius' - | 'borderTopRightRadius' - | 'borderTopLeftRadius' - | 'borderBottomRightRadius' - | 'borderBottomLeftRadius' -> & { - readonly color?: ResponsiveProp; - readonly left?: ResponsiveProp; - readonly right?: ResponsiveProp; -}; - -const Background = (props: BackgroundProps) => { - const { - right, - left, - color, - borderWidth, - borderTopWidth, - borderLeftWidth, - borderBottomWidth, - borderRightWidth, - ...rest - } = props; - const { multiply } = useSpacingHelpers(); - const resolveResponsiveProp = useResponsiveProp(); - - const backgroundColor = resolveResponsiveProp(color); - const borderSize = resolveResponsiveProp(borderWidth); - const borderTopSize = resolveResponsiveProp(borderTopWidth); - const borderRightSize = resolveResponsiveProp(borderRightWidth); - const borderBottomSize = resolveResponsiveProp(borderBottomWidth); - const borderLeftSize = resolveResponsiveProp(borderLeftWidth); - const offsetRight = resolveResponsiveProp(right); - const offsetLeft = resolveResponsiveProp(left); - const debugStyle = useDebugStyle(); - - return backgroundColor || borderSize || debugStyle ? ( - - ) : null; -}; - type PrivateColumnProps = ColumnProps & { readonly gap?: ResponsiveProp; readonly defaultFlex: ResponsiveProp; @@ -169,20 +121,8 @@ const PrivateColumn = (props: PrivateColumnProps) => { paddingEnd, paddingX, width, - backgroundColor, gap, defaultFlex, - borderRadius, - borderWidth, - borderTopWidth, - borderRightWidth, - borderBottomWidth, - borderLeftWidth, - borderColor, - borderTopRightRadius, - borderTopLeftRadius, - borderBottomRightRadius, - borderBottomLeftRadius, ...rest } = props; @@ -201,21 +141,6 @@ const PrivateColumn = (props: PrivateColumnProps) => { paddingEnd={inset} debuggable={false} > - {children} ); @@ -235,18 +160,6 @@ export const Columns = (props: ColumnsProps) => { marginX, marginStart, marginEnd, - backgroundColor, - borderRadius, - borderWidth, - borderTopWidth, - borderRightWidth, - borderBottomWidth, - borderLeftWidth, - borderColor, - borderTopRightRadius, - borderTopLeftRadius, - borderBottomRightRadius, - borderBottomLeftRadius, ...rest } = props; @@ -276,8 +189,6 @@ export const Columns = (props: ColumnsProps) => { const gap = isCollapsed ? undefined : space; - const color = resolveResponsiveProp(backgroundColor); - return ( { marginEnd={bleedEnd} debuggable={false} > - {React.Children.map(flattenChildren(children), child => { if (isColumnForwarded(child)) { return ; diff --git a/src/components/FloatBox.tsx b/src/components/FloatBox.tsx index 4b4c1d2f..2dac5cb2 100644 --- a/src/components/FloatBox.tsx +++ b/src/components/FloatBox.tsx @@ -31,7 +31,7 @@ export const FloatBox = (props: FloatBoxProps) => { const fillObject = Object.fromEntries( Object.entries(edges).map(([key, value]) => { - return [key, key in props ? resolveResponsiveProp(value) : all ?? null]; + return [key, key in props ? resolveResponsiveProp(value) : all ?? undefined]; }), ); diff --git a/src/components/Grid.tsx b/src/components/Grid.tsx index b4cf0c74..5cc34486 100644 --- a/src/components/Grid.tsx +++ b/src/components/Grid.tsx @@ -1,6 +1,6 @@ import * as React from 'react'; import { Platform, Text } from 'react-native'; -import { createStyleSheet, UnistylesRuntime, useStyles } from 'react-native-unistyles'; +import { StyleSheet, UnistylesRuntime } from 'react-native-unistyles'; import { Box } from './Box'; import { FloatBox } from './FloatBox'; @@ -40,7 +40,6 @@ export const Grid = (props: GridProps) => { const { gutter = 2, margin = 2, opacity = 0.2, columns = 8, color = 'red' } = props; const { multiply } = useSpacingHelpers(); - const { styles } = useStyles(stylesheet); const resolveResponsiveProp = useResponsiveProp(); const numberOfColumns = resolveResponsiveProp(columns); @@ -88,10 +87,11 @@ export const Grid = (props: GridProps) => { Grid.displayName = 'Grid'; -const stylesheet = createStyleSheet({ +const styles = StyleSheet.create({ root: { pointerEvents: 'none', }, + // eslint-disable-next-line react-native/no-color-literals text: { color: 'white', fontFamily: diff --git a/src/hooks/useBreakpointComparators.ts b/src/hooks/useBreakpointComparators.ts index acb65d81..2b722e7d 100644 --- a/src/hooks/useBreakpointComparators.ts +++ b/src/hooks/useBreakpointComparators.ts @@ -1,11 +1,12 @@ import * as React from 'react'; -import { useStyles } from 'react-native-unistyles'; +import { useUnistyles } from 'react-native-unistyles'; import { Breakpoint } from '../types'; import { isBreakpointAbove, isBreakpointBelow } from '../utils'; export const useBreakpointComparators = () => { - const { breakpoint: currentBreakpoint } = useStyles(); + const { rt } = useUnistyles(); + const currentBreakpoint = rt.breakpoint as Breakpoint; const isBelow = React.useCallback( (breakpoint?: Breakpoint) => { diff --git a/src/hooks/useDebugStyle.ts b/src/hooks/useDebugStyle.ts index 866da8ee..f885bf48 100644 --- a/src/hooks/useDebugStyle.ts +++ b/src/hooks/useDebugStyle.ts @@ -1,11 +1,11 @@ import * as React from 'react'; import { ViewStyle } from 'react-native'; -import { useStyles } from 'react-native-unistyles'; +import { useUnistyles } from 'react-native-unistyles'; import { randomColor } from '../utils'; export const useDebugStyle = () => { - const { theme } = useStyles(); + const { theme } = useUnistyles(); const backgroundColor = React.useRef(randomColor()).current; // @ts-expect-error: this_is_fine.png const debug = theme?.stacks?.debug; diff --git a/src/hooks/useResponsiveProp.ts b/src/hooks/useResponsiveProp.ts index b134fb9c..38e36fd7 100644 --- a/src/hooks/useResponsiveProp.ts +++ b/src/hooks/useResponsiveProp.ts @@ -1,16 +1,16 @@ import * as React from 'react'; -import { useStyles } from 'react-native-unistyles'; +import { useUnistyles } from 'react-native-unistyles'; -import { ResponsiveProp } from '../types'; +import { Breakpoint, ResponsiveProp } from '../types'; import { resolveResponsiveProp } from '../utils'; export const useResponsiveProp = () => { - const { breakpoint } = useStyles(); + const { rt } = useUnistyles(); return React.useCallback( (value: ResponsiveProp) => { - return resolveResponsiveProp(value, breakpoint); + return resolveResponsiveProp(value, rt.breakpoint as Breakpoint); }, - [breakpoint], + [rt.breakpoint], ); }; diff --git a/src/hooks/useSpacingHelpers.ts b/src/hooks/useSpacingHelpers.ts index 2ef0a273..536d94b2 100644 --- a/src/hooks/useSpacingHelpers.ts +++ b/src/hooks/useSpacingHelpers.ts @@ -1,5 +1,5 @@ import * as React from 'react'; -import { useStyles } from 'react-native-unistyles'; +import { useUnistyles } from 'react-native-unistyles'; import { useResponsiveProp } from './useResponsiveProp'; @@ -9,7 +9,7 @@ type SpacingHelper = { }; export const useSpacingHelpers = () => { - const { theme } = useStyles(); + const { theme } = useUnistyles(); const resolveResponsiveProp = useResponsiveProp(); // @ts-expect-error: this_is_fine.png diff --git a/src/types.ts b/src/types.ts index 8c3a4874..20b79dbb 100644 --- a/src/types.ts +++ b/src/types.ts @@ -10,6 +10,9 @@ export type Stretch = 'stretch'; export type Space = 'between' | 'around' | 'evenly'; export type Direction = 'row' | 'row-reverse' | 'column' | 'column-reverse'; export type Wrap = 'wrap' | 'no-wrap' | 'wrap-reverse'; +export type OutlineStyle = 'solid' | 'dotted' | 'dashed'; +export type PointerEvent = 'auto' | 'box-none' | 'box-only' | 'none'; +export type Overflow = 'visible' | 'hidden'; export type Flex = | 'content'