diff --git a/.bundle/config b/.bundle/config
new file mode 100644
index 0000000..848943b
--- /dev/null
+++ b/.bundle/config
@@ -0,0 +1,2 @@
+BUNDLE_PATH: "vendor/bundle"
+BUNDLE_FORCE_RUBY_PLATFORM: 1
diff --git a/.flowconfig b/.flowconfig
index 315f274..74f3a75 100644
--- a/.flowconfig
+++ b/.flowconfig
@@ -11,6 +11,8 @@ node_modules/react-native/Libraries/polyfills/.*
; Flow doesn't support platforms
.*/Libraries/Utilities/LoadingView.js
+.*/node_modules/resolve/test/resolver/malformed_package_json/package\.json$
+
[untyped]
.*/node_modules/@react-native-community/cli/.*/.*
@@ -23,11 +25,10 @@ node_modules/react-native/flow/
[options]
emoji=true
-esproposal.optional_chaining=enable
-esproposal.nullish_coalescing=enable
-
exact_by_default=true
+format.bracket_spacing=false
+
module.file_ext=.js
module.file_ext=.json
module.file_ext=.ios.js
@@ -51,7 +52,6 @@ nonstrict-import=warn
deprecated-type=warn
unsafe-getters-setters=warn
unnecessary-invariant=warn
-signature-verification-failure=warn
[strict]
deprecated-type
@@ -63,4 +63,4 @@ untyped-import
untyped-type-import
[version]
-^0.137.0
+^0.176.3
diff --git a/.gitattributes b/.gitattributes
deleted file mode 100644
index 45a3dcb..0000000
--- a/.gitattributes
+++ /dev/null
@@ -1,3 +0,0 @@
-# Windows files should use crlf line endings
-# https://help.github.com/articles/dealing-with-line-endings/
-*.bat text eol=crlf
diff --git a/.gitignore b/.gitignore
index 48c5f65..80db44b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -75,3 +75,4 @@ android/app/google-services.json
assets/*
config/app.js
config/interface.js
+vendor
\ No newline at end of file
diff --git a/App.js b/App.js
index c80de8a..eb5d037 100644
--- a/App.js
+++ b/App.js
@@ -38,8 +38,7 @@ const App: () => Node = () => {
Loading...
- }
- >
+ }>
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000..7922c9a
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,6 @@
+source 'https://rubygems.org'
+
+# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
+ruby '>= 2.6.10'
+
+gem 'cocoapods', '>= 1.11.2'
diff --git a/Gemfile.lock b/Gemfile.lock
new file mode 100644
index 0000000..8c32162
--- /dev/null
+++ b/Gemfile.lock
@@ -0,0 +1,100 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ CFPropertyList (3.0.6)
+ rexml
+ activesupport (6.1.7.6)
+ concurrent-ruby (~> 1.0, >= 1.0.2)
+ i18n (>= 1.6, < 2)
+ minitest (>= 5.1)
+ tzinfo (~> 2.0)
+ zeitwerk (~> 2.3)
+ addressable (2.8.6)
+ public_suffix (>= 2.0.2, < 6.0)
+ algoliasearch (1.27.5)
+ httpclient (~> 2.8, >= 2.8.3)
+ json (>= 1.5.1)
+ atomos (0.1.3)
+ claide (1.1.0)
+ cocoapods (1.14.3)
+ addressable (~> 2.8)
+ claide (>= 1.0.2, < 2.0)
+ cocoapods-core (= 1.14.3)
+ cocoapods-deintegrate (>= 1.0.3, < 2.0)
+ cocoapods-downloader (>= 2.1, < 3.0)
+ cocoapods-plugins (>= 1.0.0, < 2.0)
+ cocoapods-search (>= 1.0.0, < 2.0)
+ cocoapods-trunk (>= 1.6.0, < 2.0)
+ cocoapods-try (>= 1.1.0, < 2.0)
+ colored2 (~> 3.1)
+ escape (~> 0.0.4)
+ fourflusher (>= 2.3.0, < 3.0)
+ gh_inspector (~> 1.0)
+ molinillo (~> 0.8.0)
+ nap (~> 1.0)
+ ruby-macho (>= 2.3.0, < 3.0)
+ xcodeproj (>= 1.23.0, < 2.0)
+ cocoapods-core (1.14.3)
+ activesupport (>= 5.0, < 8)
+ addressable (~> 2.8)
+ algoliasearch (~> 1.0)
+ concurrent-ruby (~> 1.1)
+ fuzzy_match (~> 2.0.4)
+ nap (~> 1.0)
+ netrc (~> 0.11)
+ public_suffix (~> 4.0)
+ typhoeus (~> 1.0)
+ cocoapods-deintegrate (1.0.5)
+ cocoapods-downloader (2.1)
+ cocoapods-plugins (1.0.0)
+ nap
+ cocoapods-search (1.0.1)
+ cocoapods-trunk (1.6.0)
+ nap (>= 0.8, < 2.0)
+ netrc (~> 0.11)
+ cocoapods-try (1.2.0)
+ colored2 (3.1.2)
+ concurrent-ruby (1.2.2)
+ escape (0.0.4)
+ ethon (0.16.0)
+ ffi (>= 1.15.0)
+ ffi (1.16.3)
+ fourflusher (2.3.1)
+ fuzzy_match (2.0.4)
+ gh_inspector (1.1.3)
+ httpclient (2.8.3)
+ i18n (1.14.1)
+ concurrent-ruby (~> 1.0)
+ json (2.7.1)
+ minitest (5.20.0)
+ molinillo (0.8.0)
+ nanaimo (0.3.0)
+ nap (1.1.0)
+ netrc (0.11.0)
+ public_suffix (4.0.7)
+ rexml (3.2.6)
+ ruby-macho (2.5.1)
+ typhoeus (1.4.1)
+ ethon (>= 0.9.0)
+ tzinfo (2.0.6)
+ concurrent-ruby (~> 1.0)
+ xcodeproj (1.23.0)
+ CFPropertyList (>= 2.3.3, < 4.0)
+ atomos (~> 0.1.3)
+ claide (>= 1.0.2, < 2.0)
+ colored2 (~> 3.1)
+ nanaimo (~> 0.3.0)
+ rexml (~> 3.2.4)
+ zeitwerk (2.6.12)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ cocoapods (>= 1.11.2)
+
+RUBY VERSION
+ ruby 2.6.10p210
+
+BUNDLED WITH
+ 2.4.22
diff --git a/android/app/build.gradle b/android/app/build.gradle
index e2dac67..b175afe 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -1,153 +1,125 @@
apply plugin: "com.android.application"
-apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"
+apply plugin: "org.jetbrains.kotlin.android"
+apply plugin: "com.facebook.react"
-import com.android.build.OutputFile
+apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"
-/**
- * The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets
- * and bundleReleaseJsAndAssets).
- * These basically call `react-native bundle` with the correct arguments during the Android build
- * cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the
- * bundle directly from the development server. Below you can see all the possible configurations
- * and their defaults. If you decide to add a configuration block, make sure to add it before the
- * `apply from: "../../node_modules/react-native/react.gradle"` line.
- *
- * project.ext.react = [
- * // the name of the generated asset file containing your JS bundle
- * bundleAssetName: "index.android.bundle",
- *
- * // the entry file for bundle generation. If none specified and
- * // "index.android.js" exists, it will be used. Otherwise "index.js" is
- * // default. Can be overridden with ENTRY_FILE environment variable.
- * entryFile: "index.android.js",
- *
- * // https://reactnative.dev/docs/performance#enable-the-ram-format
- * bundleCommand: "ram-bundle",
- *
- * // whether to bundle JS and assets in debug mode
- * bundleInDebug: false,
- *
- * // whether to bundle JS and assets in release mode
- * bundleInRelease: true,
- *
- * // whether to bundle JS and assets in another build variant (if configured).
- * // See http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants
- * // The configuration property can be in the following formats
- * // 'bundleIn${productFlavor}${buildType}'
- * // 'bundleIn${buildType}'
- * // bundleInFreeDebug: true,
- * // bundleInPaidRelease: true,
- * // bundleInBeta: true,
- *
- * // whether to disable dev mode in custom build variants (by default only disabled in release)
- * // for example: to disable dev mode in the staging build type (if configured)
- * devDisabledInStaging: true,
- * // The configuration property can be in the following formats
- * // 'devDisabledIn${productFlavor}${buildType}'
- * // 'devDisabledIn${buildType}'
- *
- * // the root of your project, i.e. where "package.json" lives
- * root: "../../",
- *
- * // where to put the JS bundle asset in debug mode
- * jsBundleDirDebug: "$buildDir/intermediates/assets/debug",
- *
- * // where to put the JS bundle asset in release mode
- * jsBundleDirRelease: "$buildDir/intermediates/assets/release",
- *
- * // where to put drawable resources / React Native assets, e.g. the ones you use via
- * // require('./image.png')), in debug mode
- * resourcesDirDebug: "$buildDir/intermediates/res/merged/debug",
- *
- * // where to put drawable resources / React Native assets, e.g. the ones you use via
- * // require('./image.png')), in release mode
- * resourcesDirRelease: "$buildDir/intermediates/res/merged/release",
- *
- * // by default the gradle tasks are skipped if none of the JS files or assets change; this means
- * // that we don't look at files in android/ or ios/ to determine whether the tasks are up to
- * // date; if you have any other folders that you want to ignore for performance reasons (gradle
- * // indexes the entire tree), add them here. Alternatively, if you have JS files in android/
- * // for example, you might want to remove it from here.
- * inputExcludes: ["android/**", "ios/**"],
- *
- * // override which node gets called and with what additional arguments
- * nodeExecutableAndArgs: ["node"],
- *
- * // supply additional arguments to the packager
- * extraPackagerArgs: []
- * ]
+/*
+ * 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 {
+ /* 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")
+ // The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js
+ // cliFile = file("../node_modules/react-native/cli.js")
+ /* 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 command to run when bundling. By default is 'bundle'
+ // bundleCommand = "ram-bundle"
+ //
+ // 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"]
+}
project.ext.react = [
- enableHermes: false, // clean and rebuild if changing
+ enableHermes: true, // clean and rebuild if changing
]
-
-apply from: "../../node_modules/react-native/react.gradle"
-
-/**
- * Set this to true to create two separate APKs instead of one:
- * - An APK that only works on ARM devices
- * - An APK that only works on x86 devices
- * The advantage is the size of the APK is reduced by about 4MB.
- * Upload all the APKs to the Play Store and people will download
- * the correct one based on the CPU architecture of their device.
- */
-def enableSeparateBuildPerCPUArchitecture = false
-
/**
- * Run Proguard to shrink the Java bytecode in release builds.
+ * Set this to true to Run Proguard on Release builds to minify the Java bytecode.
*/
def enableProguardInReleaseBuilds = false
/**
- * The preferred build flavor of JavaScriptCore.
+ * 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
+ * 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-intl:+'
+def jscFlavor = 'org.webkit:android-jsc:+'
+
+def enableHermes = project.ext.react.get("enableHermes", false);
/**
- * Whether to enable the Hermes VM.
- *
- * This should be set on project.ext.react and mirrored here. If it is not set
- * on project.ext.react, JavaScript will not be compiled to Hermes Bytecode
- * and the benefits of using Hermes will therefore be sharply reduced.
+ * Architectures to build native code for.
*/
-def enableHermes = project.ext.react.get("enableHermes", false);
+def reactNativeArchitectures() {
+ def value = project.getProperties().get("reactNativeArchitectures")
+ return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"]
+}
+
+def isNewArchitectureEnabled() {
+ // To opt-in for the New Architecture, you can either:
+ // - Set `newArchEnabled` to true inside the `gradle.properties` file
+ // - Invoke gradle with `-newArchEnabled=true`
+ // - Set an environment variable `ORG_GRADLE_PROJECT_newArchEnabled=true`
+ return project.hasProperty("newArchEnabled") && project.newArchEnabled == "true"
+}
android {
ndkVersion rootProject.ext.ndkVersion
compileSdkVersion rootProject.ext.compileSdkVersion
-
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_8
- targetCompatibility JavaVersion.VERSION_1_8
- }
+ namespace "com.storefrontapp"
defaultConfig {
applicationId project.env.get("APP_IDENTIFIER")
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
- versionCode 1
- versionName "1.0.0"
- resValue "string", "build_config_package", "com.storefrontapp"
+ missingDimensionStrategy 'react-native-camera', 'general'
+ versionCode project.env.get("ANDROID_VERSION_CODE")?.toInteger() ?: 1
+ versionName project.env.get("ANDROID_VERSION_NAME") ?: "1.0.0"
+ buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()
}
- splits {
- abi {
- reset()
- enable enableSeparateBuildPerCPUArchitecture
- universalApk false // If true, also generate a universal APK
- include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
+ configurations.all {
+ resolutionStrategy {
+ force 'androidx.core:core:1.10.0'
+ force 'com.android.support:support-compat:27.1.1'
+ force 'com.facebook.react:hermes-android:0.72.4'
}
}
signingConfigs {
+ release {
+ if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
+ storeFile file(MYAPP_UPLOAD_STORE_FILE)
+ storePassword MYAPP_UPLOAD_STORE_PASSWORD
+ keyAlias MYAPP_UPLOAD_KEY_ALIAS
+ keyPassword MYAPP_UPLOAD_KEY_PASSWORD
+ }
+ }
debug {
storeFile file('debug.keystore')
storePassword 'android'
@@ -162,45 +134,22 @@ android {
release {
// Caution! In production, you need to generate your own keystore file.
// see https://reactnative.dev/docs/signed-apk-android.
- signingConfig signingConfigs.debug
+ signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
-
- // applicationVariants are e.g. debug, release
- applicationVariants.all { variant ->
- variant.outputs.each { output ->
- // For each separate APK per architecture, set a unique version code as described here:
- // https://developer.android.com/studio/build/configure-apk-splits.html
- // Example: versionCode 1 will generate 1001 for armeabi-v7a, 1002 for x86, etc.
- def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4]
- def abi = output.getFilter(OutputFile.ABI)
- if (abi != null) { // null for the universal-debug, universal-release variants
- output.versionCodeOverride =
- defaultConfig.versionCode * 1000 + versionCodes.get(abi)
- }
-
- }
- }
}
dependencies {
- implementation fileTree(dir: "libs", include: ["*.jar"])
- //noinspection GradleDynamicVersion
- implementation "com.facebook.react:react-native:+" // From node_modules
- // implementation "com.google.firebase:firebase-iid"
- implementation project(':react-native-config')
+ // The version of react-native is set by the React Native Gradle Plugin
+ implementation("com.facebook.react:react-android")
+ // Installed dependencies
+ implementation project(':react-native-config')
implementation "androidx.core:core-splashscreen:1.0.0-alpha02"
- implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"
-
- // implementation 'com.google.firebase:firebase-analytics:17.3.0'
-
- debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") {
- exclude group:'com.facebook.fbjni'
- }
+ debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}")
debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") {
exclude group:'com.facebook.flipper'
exclude group:'com.squareup.okhttp3', module:'okhttp'
@@ -209,22 +158,12 @@ dependencies {
debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}") {
exclude group:'com.facebook.flipper'
}
-
- if (enableHermes) {
- def hermesPath = "../../node_modules/hermes-engine/android/";
- debugImplementation files(hermesPath + "hermes-debug.aar")
- releaseImplementation files(hermesPath + "hermes-release.aar")
+ if (hermesEnabled.toBoolean()) {
+ implementation("com.facebook.react:hermes-android")
} else {
implementation jscFlavor
}
}
-// Run this once to be able to run the application with BUCK
-// puts all compile dependencies into folder libs for BUCK to use
-task copyDownloadableDepsToLibs(type: Copy) {
- from configurations.compile
- into 'libs'
-}
-
apply plugin: 'com.google.gms.google-services'
-apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
\ No newline at end of file
+apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle") ; applyNativeModulesAppBuildGradle(project)
\ No newline at end of file
diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml
index 4b185bc..1ad1bcd 100644
--- a/android/app/src/debug/AndroidManifest.xml
+++ b/android/app/src/debug/AndroidManifest.xml
@@ -2,12 +2,16 @@
-
+
-
+ tools:ignore="GoogleAppIndexingWarning"
+ android:appComponentFactory="whateverString"
+ tools:replace="android:appComponentFactory">
+
-
+
\ No newline at end of file
diff --git a/android/app/src/debug/java/com/storefrontapp/ReactNativeFlipper.java b/android/app/src/debug/java/com/storefrontapp/ReactNativeFlipper.java
index 1257ea0..1d76cc4 100644
--- a/android/app/src/debug/java/com/storefrontapp/ReactNativeFlipper.java
+++ b/android/app/src/debug/java/com/storefrontapp/ReactNativeFlipper.java
@@ -1,5 +1,5 @@
/**
- * Copyright (c) Facebook, Inc. and its affiliates.
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
*
*
This source code is licensed under the MIT license found in the LICENSE file in the root
* directory of this source tree.
@@ -19,6 +19,7 @@
import com.facebook.flipper.plugins.network.NetworkFlipperPlugin;
import com.facebook.flipper.plugins.react.ReactFlipperPlugin;
import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin;
+import com.facebook.react.ReactInstanceEventListener;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.bridge.ReactContext;
import com.facebook.react.modules.network.NetworkingModule;
@@ -51,7 +52,7 @@ public void apply(OkHttpClient.Builder builder) {
ReactContext reactContext = reactInstanceManager.getCurrentReactContext();
if (reactContext == null) {
reactInstanceManager.addReactInstanceEventListener(
- new ReactInstanceManager.ReactInstanceEventListener() {
+ new ReactInstanceEventListener() {
@Override
public void onReactContextInitialized(ReactContext reactContext) {
reactInstanceManager.removeReactInstanceEventListener(this);
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index bcdedea..e0be998 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -1,47 +1,58 @@
+ xmlns:tools="http://schemas.android.com/tools">
-
+
+ tools:ignore="ScopedStorage" />
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff --git a/android/app/src/main/java/com/storefrontapp/CustomMMKVJSIModulePackage.java b/android/app/src/main/java/com/storefrontapp/CustomMMKVJSIModulePackage.java
deleted file mode 100644
index 1149adc..0000000
--- a/android/app/src/main/java/com/storefrontapp/CustomMMKVJSIModulePackage.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.storefrontapp;
-
-import com.facebook.react.bridge.JSIModulePackage;
-import com.facebook.react.bridge.JSIModuleSpec;
-import com.facebook.react.bridge.JavaScriptContextHolder;
-import com.facebook.react.bridge.ReactApplicationContext;
-import java.util.Collections;
-import java.util.List;
-
-import com.swmansion.reanimated.ReanimatedJSIModulePackage;
-import com.ammarahmed.mmkv.RNMMKVModule;
-
-public class CustomMMKVJSIModulePackage extends ReanimatedJSIModulePackage {
- @Override
- public List getJSIModules(ReactApplicationContext reactApplicationContext, JavaScriptContextHolder jsContext) {
- super.getJSIModules(reactApplicationContext, jsContext);
- reactApplicationContext.getNativeModule(RNMMKVModule.class).installLib(jsContext, reactApplicationContext.getFilesDir().getAbsolutePath() + "/mmkv");
-
- return Collections.emptyList();
- }
-}
diff --git a/android/app/src/main/java/com/storefrontapp/MainApplication.java b/android/app/src/main/java/com/storefrontapp/MainApplication.java
index ca5fc82..9a32eb2 100644
--- a/android/app/src/main/java/com/storefrontapp/MainApplication.java
+++ b/android/app/src/main/java/com/storefrontapp/MainApplication.java
@@ -5,11 +5,12 @@
import android.content.Context;
import com.facebook.react.PackageList;
import com.facebook.react.ReactApplication;
-import com.lugg.ReactNativeConfig.ReactNativeConfigPackage;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
+import com.facebook.react.config.ReactFeatureFlags;
import com.facebook.soloader.SoLoader;
+import com.storefrontapp.newarchitecture.MainApplicationReactNativeHost;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
@@ -38,14 +39,23 @@ protected String getJSMainModuleName() {
}
};
+ private final ReactNativeHost mNewArchitectureNativeHost =
+ new MainApplicationReactNativeHost(this);
+
@Override
public ReactNativeHost getReactNativeHost() {
- return mReactNativeHost;
+ if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
+ return mNewArchitectureNativeHost;
+ } else {
+ return mReactNativeHost;
+ }
}
@Override
public void onCreate() {
super.onCreate();
+ // If you opted-in for the New Architecture, we enable the TurboModule system
+ ReactFeatureFlags.useTurboModules = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
SoLoader.init(this, /* native exopackage */ false);
initializeFlipper(this, getReactNativeHost().getReactInstanceManager());
}
diff --git a/android/app/src/main/java/com/storefrontapp/newarchitecture/MainApplicationReactNativeHost.java b/android/app/src/main/java/com/storefrontapp/newarchitecture/MainApplicationReactNativeHost.java
new file mode 100644
index 0000000..8127ffb
--- /dev/null
+++ b/android/app/src/main/java/com/storefrontapp/newarchitecture/MainApplicationReactNativeHost.java
@@ -0,0 +1,116 @@
+package com.storefrontapp.newarchitecture;
+
+import android.app.Application;
+import androidx.annotation.NonNull;
+import com.facebook.react.PackageList;
+import com.facebook.react.ReactInstanceManager;
+import com.facebook.react.ReactNativeHost;
+import com.facebook.react.ReactPackage;
+import com.facebook.react.ReactPackageTurboModuleManagerDelegate;
+import com.facebook.react.bridge.JSIModulePackage;
+import com.facebook.react.bridge.JSIModuleProvider;
+import com.facebook.react.bridge.JSIModuleSpec;
+import com.facebook.react.bridge.JSIModuleType;
+import com.facebook.react.bridge.JavaScriptContextHolder;
+import com.facebook.react.bridge.ReactApplicationContext;
+import com.facebook.react.bridge.UIManager;
+import com.facebook.react.fabric.ComponentFactory;
+import com.facebook.react.fabric.CoreComponentsRegistry;
+import com.facebook.react.fabric.FabricJSIModuleProvider;
+import com.facebook.react.fabric.ReactNativeConfig;
+import com.facebook.react.uimanager.ViewManagerRegistry;
+import com.storefrontapp.BuildConfig;
+import com.storefrontapp.newarchitecture.components.MainComponentsRegistry;
+import com.storefrontapp.newarchitecture.modules.MainApplicationTurboModuleManagerDelegate;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * A {@link ReactNativeHost} that helps you load everything needed for the New Architecture, both
+ * TurboModule delegates and the Fabric Renderer.
+ *
+ * Please note that this class is used ONLY if you opt-in for the New Architecture (see the
+ * `newArchEnabled` property). Is ignored otherwise.
+ */
+public class MainApplicationReactNativeHost extends ReactNativeHost {
+ public MainApplicationReactNativeHost(Application application) {
+ super(application);
+ }
+
+ @Override
+ public boolean getUseDeveloperSupport() {
+ return BuildConfig.DEBUG;
+ }
+
+ @Override
+ protected List getPackages() {
+ List packages = new PackageList(this).getPackages();
+ // Packages that cannot be autolinked yet can be added manually here, for example:
+ // packages.add(new MyReactNativePackage());
+ // TurboModules must also be loaded here providing a valid TurboReactPackage implementation:
+ // packages.add(new TurboReactPackage() { ... });
+ // If you have custom Fabric Components, their ViewManagers should also be loaded here
+ // inside a ReactPackage.
+ return packages;
+ }
+
+ @Override
+ protected String getJSMainModuleName() {
+ return "index";
+ }
+
+ @NonNull
+ @Override
+ protected ReactPackageTurboModuleManagerDelegate.Builder
+ getReactPackageTurboModuleManagerDelegateBuilder() {
+ // Here we provide the ReactPackageTurboModuleManagerDelegate Builder. This is necessary
+ // for the new architecture and to use TurboModules correctly.
+ return new MainApplicationTurboModuleManagerDelegate.Builder();
+ }
+
+ @Override
+ protected JSIModulePackage getJSIModulePackage() {
+ return new JSIModulePackage() {
+ @Override
+ public List getJSIModules(
+ final ReactApplicationContext reactApplicationContext,
+ final JavaScriptContextHolder jsContext) {
+ final List specs = new ArrayList<>();
+
+ // Here we provide a new JSIModuleSpec that will be responsible of providing the
+ // custom Fabric Components.
+ specs.add(
+ new JSIModuleSpec() {
+ @Override
+ public JSIModuleType getJSIModuleType() {
+ return JSIModuleType.UIManager;
+ }
+
+ @Override
+ public JSIModuleProvider getJSIModuleProvider() {
+ final ComponentFactory componentFactory = new ComponentFactory();
+ CoreComponentsRegistry.register(componentFactory);
+
+ // Here we register a Components Registry.
+ // The one that is generated with the template contains no components
+ // and just provides you the one from React Native core.
+ MainComponentsRegistry.register(componentFactory);
+
+ final ReactInstanceManager reactInstanceManager = getReactInstanceManager();
+
+ ViewManagerRegistry viewManagerRegistry =
+ new ViewManagerRegistry(
+ reactInstanceManager.getOrCreateViewManagers(reactApplicationContext));
+
+ return new FabricJSIModuleProvider(
+ reactApplicationContext,
+ componentFactory,
+ ReactNativeConfig.DEFAULT_CONFIG,
+ viewManagerRegistry);
+ }
+ });
+ return specs;
+ }
+ };
+ }
+}
diff --git a/android/app/src/main/java/com/storefrontapp/newarchitecture/components/MainComponentsRegistry.java b/android/app/src/main/java/com/storefrontapp/newarchitecture/components/MainComponentsRegistry.java
new file mode 100644
index 0000000..7b45839
--- /dev/null
+++ b/android/app/src/main/java/com/storefrontapp/newarchitecture/components/MainComponentsRegistry.java
@@ -0,0 +1,36 @@
+package com.storefrontapp.newarchitecture.components;
+
+import com.facebook.jni.HybridData;
+import com.facebook.proguard.annotations.DoNotStrip;
+import com.facebook.react.fabric.ComponentFactory;
+import com.facebook.soloader.SoLoader;
+
+/**
+ * Class responsible to load the custom Fabric Components. This class has native methods and needs a
+ * corresponding C++ implementation/header file to work correctly (already placed inside the jni/
+ * folder for you).
+ *
+ * Please note that this class is used ONLY if you opt-in for the New Architecture (see the
+ * `newArchEnabled` property). Is ignored otherwise.
+ */
+@DoNotStrip
+public class MainComponentsRegistry {
+ static {
+ SoLoader.loadLibrary("fabricjni");
+ }
+
+ @DoNotStrip private final HybridData mHybridData;
+
+ @DoNotStrip
+ private native HybridData initHybrid(ComponentFactory componentFactory);
+
+ @DoNotStrip
+ private MainComponentsRegistry(ComponentFactory componentFactory) {
+ mHybridData = initHybrid(componentFactory);
+ }
+
+ @DoNotStrip
+ public static MainComponentsRegistry register(ComponentFactory componentFactory) {
+ return new MainComponentsRegistry(componentFactory);
+ }
+}
diff --git a/android/app/src/main/java/com/storefrontapp/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate.java b/android/app/src/main/java/com/storefrontapp/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate.java
new file mode 100644
index 0000000..df21812
--- /dev/null
+++ b/android/app/src/main/java/com/storefrontapp/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate.java
@@ -0,0 +1,48 @@
+package com.storefrontapp.newarchitecture.modules;
+
+import com.facebook.jni.HybridData;
+import com.facebook.react.ReactPackage;
+import com.facebook.react.ReactPackageTurboModuleManagerDelegate;
+import com.facebook.react.bridge.ReactApplicationContext;
+import com.facebook.soloader.SoLoader;
+import java.util.List;
+
+/**
+ * Class responsible to load the TurboModules. This class has native methods and needs a
+ * corresponding C++ implementation/header file to work correctly (already placed inside the jni/
+ * folder for you).
+ *
+ *
Please note that this class is used ONLY if you opt-in for the New Architecture (see the
+ * `newArchEnabled` property). Is ignored otherwise.
+ */
+public class MainApplicationTurboModuleManagerDelegate
+ extends ReactPackageTurboModuleManagerDelegate {
+
+ private static volatile boolean sIsSoLibraryLoaded;
+
+ protected MainApplicationTurboModuleManagerDelegate(
+ ReactApplicationContext reactApplicationContext, List packages) {
+ super(reactApplicationContext, packages);
+ }
+
+ protected native HybridData initHybrid();
+
+ native boolean canCreateTurboModule(String moduleName);
+
+ public static class Builder extends ReactPackageTurboModuleManagerDelegate.Builder {
+ protected MainApplicationTurboModuleManagerDelegate build(
+ ReactApplicationContext context, List packages) {
+ return new MainApplicationTurboModuleManagerDelegate(context, packages);
+ }
+ }
+
+ @Override
+ protected synchronized void maybeLoadOtherSoLibraries() {
+ if (!sIsSoLibraryLoaded) {
+ // If you change the name of your application .so file in the Android.mk file,
+ // make sure you update the name here as well.
+ SoLoader.loadLibrary("rndiffapp_appmodules");
+ sIsSoLibraryLoaded = true;
+ }
+ }
+}
diff --git a/android/app/src/main/jni/Android.mk b/android/app/src/main/jni/Android.mk
new file mode 100644
index 0000000..842579d
--- /dev/null
+++ b/android/app/src/main/jni/Android.mk
@@ -0,0 +1,48 @@
+THIS_DIR := $(call my-dir)
+
+include $(REACT_ANDROID_DIR)/Android-prebuilt.mk
+
+# If you wish to add a custom TurboModule or Fabric component in your app you
+# will have to include the following autogenerated makefile.
+# include $(GENERATED_SRC_DIR)/codegen/jni/Android.mk
+include $(CLEAR_VARS)
+
+LOCAL_PATH := $(THIS_DIR)
+
+# You can customize the name of your application .so file here.
+LOCAL_MODULE := rndiffapp_appmodules
+
+LOCAL_C_INCLUDES := $(LOCAL_PATH)
+LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*.cpp)
+LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
+
+# If you wish to add a custom TurboModule or Fabric component in your app you
+# will have to uncomment those lines to include the generated source
+# files from the codegen (placed in $(GENERATED_SRC_DIR)/codegen/jni)
+#
+# LOCAL_C_INCLUDES += $(GENERATED_SRC_DIR)/codegen/jni
+# LOCAL_SRC_FILES += $(wildcard $(GENERATED_SRC_DIR)/codegen/jni/*.cpp)
+# LOCAL_EXPORT_C_INCLUDES += $(GENERATED_SRC_DIR)/codegen/jni
+
+# Here you should add any native library you wish to depend on.
+LOCAL_SHARED_LIBRARIES := \
+ libfabricjni \
+ libfbjni \
+ libfolly_runtime \
+ libglog \
+ libjsi \
+ libreact_codegen_rncore \
+ libreact_debug \
+ libreact_nativemodule_core \
+ libreact_render_componentregistry \
+ libreact_render_core \
+ libreact_render_debug \
+ libreact_render_graphics \
+ librrc_view \
+ libruntimeexecutor \
+ libturbomodulejsijni \
+ libyoga
+
+LOCAL_CFLAGS := -DLOG_TAG=\"ReactNative\" -fexceptions -frtti -std=c++17 -Wall
+
+include $(BUILD_SHARED_LIBRARY)
diff --git a/android/app/src/main/jni/MainApplicationModuleProvider.cpp b/android/app/src/main/jni/MainApplicationModuleProvider.cpp
new file mode 100644
index 0000000..0ac23cc
--- /dev/null
+++ b/android/app/src/main/jni/MainApplicationModuleProvider.cpp
@@ -0,0 +1,24 @@
+#include "MainApplicationModuleProvider.h"
+
+#include
+
+namespace facebook {
+namespace react {
+
+std::shared_ptr MainApplicationModuleProvider(
+ const std::string moduleName,
+ const JavaTurboModule::InitParams ¶ms) {
+ // Here you can provide your own module provider for TurboModules coming from
+ // either your application or from external libraries. The approach to follow
+ // is similar to the following (for a library called `samplelibrary`:
+ //
+ // auto module = samplelibrary_ModuleProvider(moduleName, params);
+ // if (module != nullptr) {
+ // return module;
+ // }
+ // return rncore_ModuleProvider(moduleName, params);
+ return rncore_ModuleProvider(moduleName, params);
+}
+
+} // namespace react
+} // namespace facebook
diff --git a/android/app/src/main/jni/MainApplicationModuleProvider.h b/android/app/src/main/jni/MainApplicationModuleProvider.h
new file mode 100644
index 0000000..0fa43fa
--- /dev/null
+++ b/android/app/src/main/jni/MainApplicationModuleProvider.h
@@ -0,0 +1,16 @@
+#pragma once
+
+#include
+#include
+
+#include
+
+namespace facebook {
+namespace react {
+
+std::shared_ptr MainApplicationModuleProvider(
+ const std::string moduleName,
+ const JavaTurboModule::InitParams ¶ms);
+
+} // namespace react
+} // namespace facebook
diff --git a/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.cpp b/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.cpp
new file mode 100644
index 0000000..dbbdc3d
--- /dev/null
+++ b/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.cpp
@@ -0,0 +1,45 @@
+#include "MainApplicationTurboModuleManagerDelegate.h"
+#include "MainApplicationModuleProvider.h"
+
+namespace facebook {
+namespace react {
+
+jni::local_ref
+MainApplicationTurboModuleManagerDelegate::initHybrid(
+ jni::alias_ref) {
+ return makeCxxInstance();
+}
+
+void MainApplicationTurboModuleManagerDelegate::registerNatives() {
+ registerHybrid({
+ makeNativeMethod(
+ "initHybrid", MainApplicationTurboModuleManagerDelegate::initHybrid),
+ makeNativeMethod(
+ "canCreateTurboModule",
+ MainApplicationTurboModuleManagerDelegate::canCreateTurboModule),
+ });
+}
+
+std::shared_ptr
+MainApplicationTurboModuleManagerDelegate::getTurboModule(
+ const std::string name,
+ const std::shared_ptr jsInvoker) {
+ // Not implemented yet: provide pure-C++ NativeModules here.
+ return nullptr;
+}
+
+std::shared_ptr
+MainApplicationTurboModuleManagerDelegate::getTurboModule(
+ const std::string name,
+ const JavaTurboModule::InitParams ¶ms) {
+ return MainApplicationModuleProvider(name, params);
+}
+
+bool MainApplicationTurboModuleManagerDelegate::canCreateTurboModule(
+ std::string name) {
+ return getTurboModule(name, nullptr) != nullptr ||
+ getTurboModule(name, {.moduleName = name}) != nullptr;
+}
+
+} // namespace react
+} // namespace facebook
diff --git a/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.h b/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.h
new file mode 100644
index 0000000..2baf750
--- /dev/null
+++ b/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.h
@@ -0,0 +1,38 @@
+#include
+#include
+
+#include
+#include
+
+namespace facebook {
+namespace react {
+
+class MainApplicationTurboModuleManagerDelegate
+ : public jni::HybridClass<
+ MainApplicationTurboModuleManagerDelegate,
+ TurboModuleManagerDelegate> {
+ public:
+ // Adapt it to the package you used for your Java class.
+ static constexpr auto kJavaDescriptor =
+ "Lcom/storefrontapp/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate;";
+
+ static jni::local_ref initHybrid(jni::alias_ref);
+
+ static void registerNatives();
+
+ std::shared_ptr getTurboModule(
+ const std::string name,
+ const std::shared_ptr jsInvoker) override;
+ std::shared_ptr getTurboModule(
+ const std::string name,
+ const JavaTurboModule::InitParams ¶ms) override;
+
+ /**
+ * Test-only method. Allows user to verify whether a TurboModule can be
+ * created by instances of this class.
+ */
+ bool canCreateTurboModule(std::string name);
+};
+
+} // namespace react
+} // namespace facebook
diff --git a/android/app/src/main/jni/MainComponentsRegistry.cpp b/android/app/src/main/jni/MainComponentsRegistry.cpp
new file mode 100644
index 0000000..8f7edff
--- /dev/null
+++ b/android/app/src/main/jni/MainComponentsRegistry.cpp
@@ -0,0 +1,61 @@
+#include "MainComponentsRegistry.h"
+
+#include
+#include
+#include
+#include
+
+namespace facebook {
+namespace react {
+
+MainComponentsRegistry::MainComponentsRegistry(ComponentFactory *delegate) {}
+
+std::shared_ptr
+MainComponentsRegistry::sharedProviderRegistry() {
+ auto providerRegistry = CoreComponentsRegistry::sharedProviderRegistry();
+
+ // Custom Fabric Components go here. You can register custom
+ // components coming from your App or from 3rd party libraries here.
+ //
+ // providerRegistry->add(concreteComponentDescriptorProvider<
+ // AocViewerComponentDescriptor>());
+ return providerRegistry;
+}
+
+jni::local_ref
+MainComponentsRegistry::initHybrid(
+ jni::alias_ref,
+ ComponentFactory *delegate) {
+ auto instance = makeCxxInstance(delegate);
+
+ auto buildRegistryFunction =
+ [](EventDispatcher::Weak const &eventDispatcher,
+ ContextContainer::Shared const &contextContainer)
+ -> ComponentDescriptorRegistry::Shared {
+ auto registry = MainComponentsRegistry::sharedProviderRegistry()
+ ->createComponentDescriptorRegistry(
+ {eventDispatcher, contextContainer});
+
+ auto mutableRegistry =
+ std::const_pointer_cast(registry);
+
+ mutableRegistry->setFallbackComponentDescriptor(
+ std::make_shared(
+ ComponentDescriptorParameters{
+ eventDispatcher, contextContainer, nullptr}));
+
+ return registry;
+ };
+
+ delegate->buildRegistryFunction = buildRegistryFunction;
+ return instance;
+}
+
+void MainComponentsRegistry::registerNatives() {
+ registerHybrid({
+ makeNativeMethod("initHybrid", MainComponentsRegistry::initHybrid),
+ });
+}
+
+} // namespace react
+} // namespace facebook
diff --git a/android/app/src/main/jni/MainComponentsRegistry.h b/android/app/src/main/jni/MainComponentsRegistry.h
new file mode 100644
index 0000000..179a90f
--- /dev/null
+++ b/android/app/src/main/jni/MainComponentsRegistry.h
@@ -0,0 +1,32 @@
+#pragma once
+
+#include
+#include
+#include
+#include
+
+namespace facebook {
+namespace react {
+
+class MainComponentsRegistry
+ : public facebook::jni::HybridClass {
+ public:
+ // Adapt it to the package you used for your Java class.
+ constexpr static auto kJavaDescriptor =
+ "Lcom/storefrontapp/newarchitecture/components/MainComponentsRegistry;";
+
+ static void registerNatives();
+
+ MainComponentsRegistry(ComponentFactory *delegate);
+
+ private:
+ static std::shared_ptr
+ sharedProviderRegistry();
+
+ static jni::local_ref initHybrid(
+ jni::alias_ref,
+ ComponentFactory *delegate);
+};
+
+} // namespace react
+} // namespace facebook
diff --git a/android/app/src/main/jni/OnLoad.cpp b/android/app/src/main/jni/OnLoad.cpp
new file mode 100644
index 0000000..c569b6e
--- /dev/null
+++ b/android/app/src/main/jni/OnLoad.cpp
@@ -0,0 +1,11 @@
+#include
+#include "MainApplicationTurboModuleManagerDelegate.h"
+#include "MainComponentsRegistry.h"
+
+JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *) {
+ return facebook::jni::initialize(vm, [] {
+ facebook::react::MainApplicationTurboModuleManagerDelegate::
+ registerNatives();
+ facebook::react::MainComponentsRegistry::registerNatives();
+ });
+}
diff --git a/android/app/src/main/res/drawable/rn_edit_text_material.xml b/android/app/src/main/res/drawable/rn_edit_text_material.xml
new file mode 100644
index 0000000..f35d996
--- /dev/null
+++ b/android/app/src/main/res/drawable/rn_edit_text_material.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml
index 09efd7b..ccd2264 100644
--- a/android/app/src/main/res/values/styles.xml
+++ b/android/app/src/main/res/values/styles.xml
@@ -3,7 +3,7 @@
#FFFFFF
diff --git a/android/build.gradle b/android/build.gradle
index c3eb1ab..cc5d3f9 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -1,43 +1,28 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
-
buildscript {
ext {
googlePlayServicesVersion = "+"
+ playServicesLocationVersion = "21.0.1"
firebaseMessagingVersion = "22.0.0"
firebaseVersion = "22.0.0"
- buildToolsVersion = "29.0.3"
+ buildToolsVersion = "33.0.0"
minSdkVersion = 23
- compileSdkVersion = 31
- targetSdkVersion = 30
- ndkVersion = "20.1.5948944"
- googlePlayServicesVersion = "17.0.0"
+ compileSdkVersion = 33
+ targetSdkVersion = 33
+ ndkVersion = "21.4.7075529"
}
repositories {
google()
- jcenter()
- }
- dependencies {
- classpath('com.android.tools.build:gradle:4.2.0')
- classpath("com.google.gms:google-services:4.3.3")
- // NOTE: Do not place your application dependencies here; they belong
- // in the individual module build.gradle files
- }
-}
+ mavenCentral()
-allprojects {
- repositories {
- mavenLocal()
maven {
- // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
- url("$rootDir/../node_modules/react-native/android")
+ url "https://jitpack.io" // Or the correct repository URL for Flipper
}
- maven {
- // Android JSC is installed from npm
- url("$rootDir/../node_modules/jsc-android/dist")
- }
-
- google()
- jcenter()
- maven { url 'https://www.jitpack.io' }
}
-}
+ dependencies {
+ classpath("com.android.tools.build:gradle")
+ classpath("com.facebook.react:react-native-gradle-plugin")
+ classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0")
+ classpath('com.google.gms:google-services:4.3.15')
+ }
+}
\ No newline at end of file
diff --git a/android/gradle.properties b/android/gradle.properties
index 1618df9..0e8a917 100644
--- a/android/gradle.properties
+++ b/android/gradle.properties
@@ -9,10 +9,8 @@
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
-# Default value: -Xmx10248m -XX:MaxPermSize=256m
-# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
-org.gradle.daemon=true
-org.gradle.jvmargs=-Xmx2560m
+# Default value: -Xmx512m -XX:MaxMetaspaceSize=256m
+org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
@@ -27,5 +25,27 @@ android.useAndroidX=true
android.enableJetifier=true
# Version of flipper SDK to use with React Native
-FLIPPER_VERSION=0.75.1
+FLIPPER_VERSION=0.125.0
+# 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
+android.useAndroidX=true
+android.enableJetifier=true
+
+android.enableDexingArtifactTransform=false
+
+kotlin.compiler.jvmTarget=11
+kotlin.jvm.target.validation.mode=warning
\ No newline at end of file
diff --git a/android/gradle/wrapper/gradle-wrapper.jar b/android/gradle/wrapper/gradle-wrapper.jar
index e708b1c..7454180 100644
Binary files a/android/gradle/wrapper/gradle-wrapper.jar and b/android/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties
index 892599a..24a1ac3 100644
--- a/android/gradle/wrapper/gradle-wrapper.properties
+++ b/android/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,8 @@
-#Mon May 30 12:57:06 SGT 2022
+#Wed Jan 10 15:34:36 ULAT 2024
distributionBase=GRADLE_USER_HOME
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.9-bin.zip
distributionPath=wrapper/dists
-zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
+networkTimeout=10000
+validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
diff --git a/android/gradlew b/android/gradlew
index 4f906e0..1b6c787 100755
--- a/android/gradlew
+++ b/android/gradlew
@@ -1,7 +1,7 @@
-#!/usr/bin/env sh
+#!/bin/sh
#
-# Copyright 2015 the original author or authors.
+# 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.
@@ -17,67 +17,101 @@
#
##############################################################################
-##
-## Gradle start up script for UN*X
-##
+#
+# 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/master/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
-PRG="$0"
-# Need this for relative symlinks.
-while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG=`dirname "$PRG"`"/$link"
- fi
+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
-SAVED="`pwd`"
-cd "`dirname \"$PRG\"`/" >/dev/null
-APP_HOME="`pwd -P`"
-cd "$SAVED" >/dev/null
+
+APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
APP_NAME="Gradle"
-APP_BASE_NAME=`basename "$0"`
+APP_BASE_NAME=${0##*/}
# 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"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD="maximum"
+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
- ;;
- MINGW* )
- msys=true
- ;;
- NONSTOP* )
- nonstop=true
- ;;
+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
@@ -87,9 +121,9 @@ CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
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"
+ JAVACMD=$JAVA_HOME/jre/sh/java
else
- JAVACMD="$JAVA_HOME/bin/java"
+ JAVACMD=$JAVA_HOME/bin/java
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
@@ -98,7 +132,7 @@ Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
- JAVACMD="java"
+ JAVACMD=java
which java >/dev/null 2>&1 || 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
@@ -106,80 +140,95 @@ location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
-if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
- MAX_FD_LIMIT=`ulimit -H -n`
- if [ $? -eq 0 ] ; then
- if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
- MAX_FD="$MAX_FD_LIMIT"
- fi
- ulimit -n $MAX_FD
- if [ $? -ne 0 ] ; then
- warn "Could not set maximum file descriptor limit: $MAX_FD"
- fi
- else
- warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
- fi
+if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
+ case $MAX_FD in #(
+ max*)
+ MAX_FD=$( ulimit -H -n ) ||
+ warn "Could not query maximum file descriptor limit"
+ esac
+ case $MAX_FD in #(
+ '' | soft) :;; #(
+ *)
+ ulimit -n "$MAX_FD" ||
+ warn "Could not set maximum file descriptor limit to $MAX_FD"
+ esac
fi
-# For Darwin, add options to specify how the application appears in the dock
-if $darwin; then
- GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
-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" = "true" -o "$msys" = "true" ] ; then
- APP_HOME=`cygpath --path --mixed "$APP_HOME"`
- CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
-
- JAVACMD=`cygpath --unix "$JAVACMD"`
-
- # We build the pattern for arguments to be converted via cygpath
- ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
- SEP=""
- for dir in $ROOTDIRSRAW ; do
- ROOTDIRS="$ROOTDIRS$SEP$dir"
- SEP="|"
- done
- OURCYGPATTERN="(^($ROOTDIRS))"
- # Add a user-defined pattern to the cygpath arguments
- if [ "$GRADLE_CYGPATTERN" != "" ] ; then
- OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
- fi
+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
- i=0
- for arg in "$@" ; do
- CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
- CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
-
- if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
- eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
- else
- eval `echo args$i`="\"$arg\""
+ 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
- i=`expr $i + 1`
+ # 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
- case $i in
- 0) set -- ;;
- 1) set -- "$args0" ;;
- 2) set -- "$args0" "$args1" ;;
- 3) set -- "$args0" "$args1" "$args2" ;;
- 4) set -- "$args0" "$args1" "$args2" "$args3" ;;
- 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
- 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
- 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
- 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
- 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
- esac
fi
-# Escape application args
-save () {
- for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
- echo " "
-}
-APP_ARGS=`save "$@"`
+# Collect all arguments for the java command;
+# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
+# shell script including quotes and variable substitutions, so put them in
+# double quotes to make sure that they get re-expanded; and
+# * put everything else in single quotes, so that it's not re-expanded.
+
+set -- \
+ "-Dorg.gradle.appname=$APP_BASE_NAME" \
+ -classpath "$CLASSPATH" \
+ org.gradle.wrapper.GradleWrapperMain \
+ "$@"
+
+# 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.
+#
-# Collect all arguments for the java command, following the shell quoting and substitution rules
-eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
+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/android/settings.gradle b/android/settings.gradle
index 6bd6374..33c41a2 100644
--- a/android/settings.gradle
+++ b/android/settings.gradle
@@ -5,3 +5,4 @@ include ':react-native-photo-view'
project(':react-native-photo-view').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-photo-view/android')
apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
include ':app'
+includeBuild('../node_modules/@react-native/gradle-plugin')
\ No newline at end of file
diff --git a/ios/.xcode.env b/ios/.xcode.env
new file mode 100644
index 0000000..3d5782c
--- /dev/null
+++ b/ios/.xcode.env
@@ -0,0 +1,11 @@
+# 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/ios/Podfile b/ios/Podfile
index dcd94cf..0f72af1 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -1,41 +1,87 @@
-require_relative '../node_modules/react-native/scripts/react_native_pods'
-require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
+# Resolve react_native_pods.rb with node to allow for hoisting
-platform :ios, '11.0'
+def node_require(script)
+ # Resolve script with node to allow for hoisting
+ require Pod::Executable.execute_command('node', ['-p',
+ "require.resolve(
+ '#{script}',
+ {paths: [process.argv[1]]},
+ )", __dir__]).strip
+end
+
+
+node_require('react-native/scripts/react_native_pods.rb')
+node_require('react-native-permissions/scripts/setup.rb')
+
+platform :ios, '13.0'
+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,...) that will be excluded
+#
+# To fix this you can also exclude `react-native-flipper` using a `react-native.config.js`
+# ```js
+# module.exports = {
+# dependencies: {
+# ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}),
+# ```
+flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled
+
+linkage = ENV['USE_FRAMEWORKS']
+if linkage != nil
+ Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
+ use_frameworks! :linkage => linkage.to_sym
+end
+
+ # Permissions handlers
+setup_permissions([
+ 'Bluetooth',
+ 'Camera',
+ 'Contacts',
+ 'FaceID',
+ 'LocationAccuracy',
+ 'LocationAlways',
+ 'LocationWhenInUse',
+ 'MediaLibrary',
+ 'Notifications',
+ 'PhotoLibrary',
+ 'PhotoLibraryAddOnly',
+])
target 'StorefrontApp' do
- rn_maps_path = '../node_modules/react-native-maps'
- pod 'react-native-google-maps', :path => rn_maps_path
-
config = use_native_modules!
+ # Flags change depending on the env values.
+ flags = get_default_flags()
+
use_react_native!(
:path => config[:reactNativePath],
# to enable hermes on iOS, change `false` to `true` and then install pods
:hermes_enabled => false
)
- # Permissions handlers
- permissions_path = '../node_modules/react-native-permissions/ios'
-
- pod 'Permission-Notifications', :path => "#{permissions_path}/Notifications"
- pod 'Permission-LocationWhenInUse', :path => "#{permissions_path}/LocationWhenInUse"
- pod 'Permission-Contacts', :path => "#{permissions_path}/Contacts"
-
pod 'react-native-config', :path => '../node_modules/react-native-config'
+ # pod 'RNDeviceInfo', :path => '../node_modules/react-native-device-info'
target 'StorefrontAppTests' do
inherit! :complete
# Pods for testing
end
- # Enables Flipper.
- #
- # Note that if you have use_frameworks! enabled, Flipper will not work and
- # you should disable the next line.
- # use_flipper!()
-
post_install do |installer|
- react_native_post_install(installer)
+ # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
+ react_native_post_install(
+ installer,
+ config[:reactNativePath],
+ :mac_catalyst_enabled => false
+ )
+ __apply_Xcode_12_5_M1_post_install_workaround(installer)
+ installer.pods_project.targets.each do |target|
+ if target.respond_to?(:product_type) and target.product_type == "com.apple.product-type.bundle"
+ target.build_configurations.each do |config|
+ config.build_settings['CODE_SIGNING_ALLOWED'] = 'NO'
+ end
+ end
+ end
end
end
\ No newline at end of file
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index cf29816..264f58a 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -1,448 +1,573 @@
PODS:
- - boost-for-react-native (1.63.0)
+ - boost (1.76.0)
- DoubleConversion (1.1.6)
- - FBLazyVector (0.64.2)
- - FBReactNativeSpec (0.64.2):
- - RCT-Folly (= 2020.01.13.00)
- - RCTRequired (= 0.64.2)
- - RCTTypeSafety (= 0.64.2)
- - React-Core (= 0.64.2)
- - React-jsi (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
+ - FBLazyVector (0.72.4)
+ - FBReactNativeSpec (0.72.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - RCTRequired (= 0.72.4)
+ - RCTTypeSafety (= 0.72.4)
+ - React-Core (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - fmt (6.2.1)
- glog (0.3.5)
- - Google-Maps-iOS-Utils (2.1.0):
- - Google-Maps-iOS-Utils/Clustering (= 2.1.0)
- - Google-Maps-iOS-Utils/Geometry (= 2.1.0)
- - Google-Maps-iOS-Utils/Heatmap (= 2.1.0)
- - Google-Maps-iOS-Utils/QuadTree (= 2.1.0)
- - GoogleMaps
- - Google-Maps-iOS-Utils/Clustering (2.1.0):
- - Google-Maps-iOS-Utils/QuadTree
- - GoogleMaps
- - Google-Maps-iOS-Utils/Geometry (2.1.0):
- - GoogleMaps
- - Google-Maps-iOS-Utils/Heatmap (2.1.0):
- - Google-Maps-iOS-Utils/QuadTree
- - GoogleMaps
- - Google-Maps-iOS-Utils/QuadTree (2.1.0):
- - GoogleMaps
- - GoogleMaps (3.5.0):
- - GoogleMaps/Maps (= 3.5.0)
- - GoogleMaps/Base (3.5.0)
- - GoogleMaps/Maps (3.5.0):
- - GoogleMaps/Base
- - libwebp (1.2.1):
- - libwebp/demux (= 1.2.1)
- - libwebp/mux (= 1.2.1)
- - libwebp/webp (= 1.2.1)
- - libwebp/demux (1.2.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.2.1):
+ - libwebp/mux (1.3.2):
- libwebp/demux
- - libwebp/webp (1.2.1)
- - MMKV (1.2.10):
- - MMKVCore (~> 1.2.10)
- - MMKVCore (1.2.10)
- - Permission-Contacts (3.0.5):
- - RNPermissions
- - Permission-LocationWhenInUse (3.0.5):
- - RNPermissions
- - Permission-Notifications (3.0.5):
- - RNPermissions
- - RCT-Folly (2020.01.13.00):
- - boost-for-react-native
+ - libwebp/sharpyuv (1.3.2)
+ - libwebp/webp (1.3.2):
+ - libwebp/sharpyuv
+ - MMKV (1.2.13):
+ - MMKVCore (~> 1.2.13)
+ - MMKVCore (1.2.16)
+ - RCT-Folly (2021.07.22.00):
+ - boost
- DoubleConversion
+ - fmt (~> 6.2.1)
- glog
- - RCT-Folly/Default (= 2020.01.13.00)
- - RCT-Folly/Default (2020.01.13.00):
- - boost-for-react-native
+ - RCT-Folly/Default (= 2021.07.22.00)
+ - RCT-Folly/Default (2021.07.22.00):
+ - boost
- DoubleConversion
+ - fmt (~> 6.2.1)
- glog
- - RCTRequired (0.64.2)
- - RCTTypeSafety (0.64.2):
- - FBLazyVector (= 0.64.2)
- - RCT-Folly (= 2020.01.13.00)
- - RCTRequired (= 0.64.2)
- - React-Core (= 0.64.2)
+ - RCTRequired (0.72.4)
+ - RCTTypeSafety (0.72.4):
+ - FBLazyVector (= 0.72.4)
+ - RCTRequired (= 0.72.4)
+ - React-Core (= 0.72.4)
- RCTYouTube (2.0.2):
- React
- YoutubePlayer-in-WKWebView (~> 0.3.1)
- - React (0.64.2):
- - React-Core (= 0.64.2)
- - React-Core/DevSupport (= 0.64.2)
- - React-Core/RCTWebSocket (= 0.64.2)
- - React-RCTActionSheet (= 0.64.2)
- - React-RCTAnimation (= 0.64.2)
- - React-RCTBlob (= 0.64.2)
- - React-RCTImage (= 0.64.2)
- - React-RCTLinking (= 0.64.2)
- - React-RCTNetwork (= 0.64.2)
- - React-RCTSettings (= 0.64.2)
- - React-RCTText (= 0.64.2)
- - React-RCTVibration (= 0.64.2)
- - React-callinvoker (0.64.2)
- - React-Core (0.64.2):
+ - React (0.72.4):
+ - React-Core (= 0.72.4)
+ - React-Core/DevSupport (= 0.72.4)
+ - React-Core/RCTWebSocket (= 0.72.4)
+ - React-RCTActionSheet (= 0.72.4)
+ - React-RCTAnimation (= 0.72.4)
+ - React-RCTBlob (= 0.72.4)
+ - React-RCTImage (= 0.72.4)
+ - React-RCTLinking (= 0.72.4)
+ - React-RCTNetwork (= 0.72.4)
+ - React-RCTSettings (= 0.72.4)
+ - React-RCTText (= 0.72.4)
+ - React-RCTVibration (= 0.72.4)
+ - React-callinvoker (0.72.4)
+ - React-Codegen (0.72.4):
+ - DoubleConversion
+ - FBReactNativeSpec
+ - glog
+ - RCT-Folly
+ - RCTRequired
+ - RCTTypeSafety
+ - React-Core
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-NativeModulesApple
+ - React-rncore
+ - ReactCommon/turbomodule/bridging
+ - ReactCommon/turbomodule/core
+ - React-Core (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-Core/Default (= 0.64.2)
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - RCT-Folly (= 2021.07.22.00)
+ - React-Core/Default (= 0.72.4)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/CoreModulesHeaders (0.64.2):
+ - React-Core/CoreModulesHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/Default (0.64.2):
+ - React-Core/Default (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - RCT-Folly (= 2021.07.22.00)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/DevSupport (0.64.2):
+ - React-Core/DevSupport (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-Core/Default (= 0.64.2)
- - React-Core/RCTWebSocket (= 0.64.2)
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-jsinspector (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - RCT-Folly (= 2021.07.22.00)
+ - React-Core/Default (= 0.72.4)
+ - React-Core/RCTWebSocket (= 0.72.4)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-jsinspector (= 0.72.4)
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTActionSheetHeaders (0.64.2):
+ - React-Core/RCTActionSheetHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTAnimationHeaders (0.64.2):
+ - React-Core/RCTAnimationHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTBlobHeaders (0.64.2):
+ - React-Core/RCTBlobHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTImageHeaders (0.64.2):
+ - React-Core/RCTImageHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTLinkingHeaders (0.64.2):
+ - React-Core/RCTLinkingHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTNetworkHeaders (0.64.2):
+ - React-Core/RCTNetworkHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTSettingsHeaders (0.64.2):
+ - React-Core/RCTSettingsHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTTextHeaders (0.64.2):
+ - React-Core/RCTTextHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTVibrationHeaders (0.64.2):
+ - React-Core/RCTVibrationHeaders (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
+ - RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-Core/RCTWebSocket (0.64.2):
+ - React-Core/RCTWebSocket (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-Core/Default (= 0.64.2)
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsiexecutor (= 0.64.2)
- - React-perflogger (= 0.64.2)
+ - RCT-Folly (= 2021.07.22.00)
+ - React-Core/Default (= 0.72.4)
+ - React-cxxreact
+ - React-jsc
+ - React-jsi
+ - React-jsiexecutor
+ - React-perflogger
+ - React-runtimeexecutor
+ - React-utils
+ - SocketRocket (= 0.6.1)
- Yoga
- - React-CoreModules (0.64.2):
- - FBReactNativeSpec (= 0.64.2)
- - RCT-Folly (= 2020.01.13.00)
- - RCTTypeSafety (= 0.64.2)
- - React-Core/CoreModulesHeaders (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-RCTImage (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
- - React-cxxreact (0.64.2):
- - boost-for-react-native (= 1.63.0)
+ - React-CoreModules (0.72.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - RCTTypeSafety (= 0.72.4)
+ - React-Codegen (= 0.72.4)
+ - React-Core/CoreModulesHeaders (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - React-RCTBlob
+ - React-RCTImage (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - SocketRocket (= 0.6.1)
+ - React-cxxreact (0.72.4):
+ - boost (= 1.76.0)
- DoubleConversion
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-callinvoker (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-jsinspector (= 0.64.2)
- - React-perflogger (= 0.64.2)
- - React-runtimeexecutor (= 0.64.2)
- - React-jsi (0.64.2):
- - boost-for-react-native (= 1.63.0)
+ - RCT-Folly (= 2021.07.22.00)
+ - React-callinvoker (= 0.72.4)
+ - React-debug (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - React-jsinspector (= 0.72.4)
+ - React-logger (= 0.72.4)
+ - React-perflogger (= 0.72.4)
+ - React-runtimeexecutor (= 0.72.4)
+ - React-debug (0.72.4)
+ - React-jsc (0.72.4):
+ - React-jsc/Fabric (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - React-jsc/Fabric (0.72.4):
+ - React-jsi (= 0.72.4)
+ - React-jsi (0.72.4):
+ - boost (= 1.76.0)
- DoubleConversion
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-jsi/Default (= 0.64.2)
- - React-jsi/Default (0.64.2):
- - boost-for-react-native (= 1.63.0)
+ - RCT-Folly (= 2021.07.22.00)
+ - React-jsiexecutor (0.72.4):
- DoubleConversion
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-jsiexecutor (0.64.2):
- - DoubleConversion
+ - RCT-Folly (= 2021.07.22.00)
+ - React-cxxreact (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - React-perflogger (= 0.72.4)
+ - React-jsinspector (0.72.4)
+ - React-logger (0.72.4):
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-perflogger (= 0.64.2)
- - React-jsinspector (0.64.2)
- - react-native-config (1.4.4):
- - react-native-config/App (= 1.4.4)
- - react-native-config/App (1.4.4):
- - React-Core
- - react-native-geolocation-service (5.3.0-beta.3):
+ - react-native-camera (4.2.1):
+ - React-Core
+ - react-native-camera/RCT (= 4.2.1)
+ - react-native-camera/RN (= 4.2.1)
+ - react-native-camera/RCT (4.2.1):
+ - React-Core
+ - react-native-camera/RN (4.2.1):
+ - React-Core
+ - react-native-config (1.5.1):
+ - react-native-config/App (= 1.5.1)
+ - react-native-config/App (1.5.1):
+ - React-Core
+ - react-native-geolocation-service (5.3.1):
- React
- - react-native-google-maps (0.28.0):
- - Google-Maps-iOS-Utils (= 2.1.0)
- - GoogleMaps (= 3.5.0)
+ - react-native-get-random-values (1.10.0):
- React-Core
- - react-native-image-picker (4.4.0):
+ - react-native-image-picker (7.1.0):
+ - RCT-Folly (= 2021.07.22.00)
- React-Core
- react-native-image-resizer (1.4.5):
- React-Core
- - react-native-maps (0.28.0):
- - React-Core
- - react-native-mmkv-storage (0.6.4):
- - MMKV (= 1.2.10)
- - React-Core
- - react-native-safe-area-context (3.3.2):
- - React-Core
- - React-perflogger (0.64.2)
- - React-RCTActionSheet (0.64.2):
- - React-Core/RCTActionSheetHeaders (= 0.64.2)
- - React-RCTAnimation (0.64.2):
- - FBReactNativeSpec (= 0.64.2)
- - RCT-Folly (= 2020.01.13.00)
- - RCTTypeSafety (= 0.64.2)
- - React-Core/RCTAnimationHeaders (= 0.64.2)
- - React-jsi (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
- - React-RCTBlob (0.64.2):
- - FBReactNativeSpec (= 0.64.2)
- - RCT-Folly (= 2020.01.13.00)
- - React-Core/RCTBlobHeaders (= 0.64.2)
- - React-Core/RCTWebSocket (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-RCTNetwork (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
- - React-RCTImage (0.64.2):
- - FBReactNativeSpec (= 0.64.2)
- - RCT-Folly (= 2020.01.13.00)
- - RCTTypeSafety (= 0.64.2)
- - React-Core/RCTImageHeaders (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-RCTNetwork (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
- - React-RCTLinking (0.64.2):
- - FBReactNativeSpec (= 0.64.2)
- - React-Core/RCTLinkingHeaders (= 0.64.2)
- - React-jsi (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
- - React-RCTNetwork (0.64.2):
- - FBReactNativeSpec (= 0.64.2)
- - RCT-Folly (= 2020.01.13.00)
- - RCTTypeSafety (= 0.64.2)
- - React-Core/RCTNetworkHeaders (= 0.64.2)
- - React-jsi (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
- - React-RCTSettings (0.64.2):
- - FBReactNativeSpec (= 0.64.2)
- - RCT-Folly (= 2020.01.13.00)
- - RCTTypeSafety (= 0.64.2)
- - React-Core/RCTSettingsHeaders (= 0.64.2)
- - React-jsi (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
- - React-RCTText (0.64.2):
- - React-Core/RCTTextHeaders (= 0.64.2)
- - React-RCTVibration (0.64.2):
- - FBReactNativeSpec (= 0.64.2)
- - RCT-Folly (= 2020.01.13.00)
- - React-Core/RCTVibrationHeaders (= 0.64.2)
- - React-jsi (= 0.64.2)
- - ReactCommon/turbomodule/core (= 0.64.2)
- - React-runtimeexecutor (0.64.2):
- - React-jsi (= 0.64.2)
- - ReactCommon/turbomodule/core (0.64.2):
+ - react-native-location (2.5.0):
+ - React
+ - react-native-maps (1.9.1):
+ - React-Core
+ - react-native-mmkv-storage (0.9.1):
+ - MMKV (= 1.2.13)
+ - React-Core
+ - react-native-render-html (6.3.4):
+ - React-Core
+ - react-native-safe-area-context (4.8.2):
+ - React-Core
+ - react-native-webview (13.6.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - React-Core
+ - React-NativeModulesApple (0.72.4):
+ - React-callinvoker
+ - React-Core
+ - React-cxxreact
+ - React-jsi
+ - React-runtimeexecutor
+ - ReactCommon/turbomodule/bridging
+ - ReactCommon/turbomodule/core
+ - React-perflogger (0.72.4)
+ - React-RCTActionSheet (0.72.4):
+ - React-Core/RCTActionSheetHeaders (= 0.72.4)
+ - React-RCTAnimation (0.72.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - RCTTypeSafety (= 0.72.4)
+ - React-Codegen (= 0.72.4)
+ - React-Core/RCTAnimationHeaders (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - React-RCTAppDelegate (0.72.4):
+ - RCT-Folly
+ - RCTRequired
+ - RCTTypeSafety
+ - React-Core
+ - React-CoreModules
+ - React-jsc
+ - React-NativeModulesApple
+ - React-RCTImage
+ - React-RCTNetwork
+ - React-runtimescheduler
+ - ReactCommon/turbomodule/core
+ - React-RCTBlob (0.72.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - React-Codegen (= 0.72.4)
+ - React-Core/RCTBlobHeaders (= 0.72.4)
+ - React-Core/RCTWebSocket (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - React-RCTNetwork (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - React-RCTImage (0.72.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - RCTTypeSafety (= 0.72.4)
+ - React-Codegen (= 0.72.4)
+ - React-Core/RCTImageHeaders (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - React-RCTNetwork (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - React-RCTLinking (0.72.4):
+ - React-Codegen (= 0.72.4)
+ - React-Core/RCTLinkingHeaders (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - React-RCTNetwork (0.72.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - RCTTypeSafety (= 0.72.4)
+ - React-Codegen (= 0.72.4)
+ - React-Core/RCTNetworkHeaders (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - React-RCTSettings (0.72.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - RCTTypeSafety (= 0.72.4)
+ - React-Codegen (= 0.72.4)
+ - React-Core/RCTSettingsHeaders (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - React-RCTText (0.72.4):
+ - React-Core/RCTTextHeaders (= 0.72.4)
+ - React-RCTVibration (0.72.4):
+ - RCT-Folly (= 2021.07.22.00)
+ - React-Codegen (= 0.72.4)
+ - React-Core/RCTVibrationHeaders (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - ReactCommon/turbomodule/core (= 0.72.4)
+ - React-rncore (0.72.4)
+ - React-runtimeexecutor (0.72.4):
+ - React-jsi (= 0.72.4)
+ - React-runtimescheduler (0.72.4):
+ - glog
+ - RCT-Folly (= 2021.07.22.00)
+ - React-callinvoker
+ - React-debug
+ - React-jsi
+ - React-runtimeexecutor
+ - React-utils (0.72.4):
+ - glog
+ - RCT-Folly (= 2021.07.22.00)
+ - React-debug
+ - ReactCommon/turbomodule/bridging (0.72.4):
- DoubleConversion
- glog
- - RCT-Folly (= 2020.01.13.00)
- - React-callinvoker (= 0.64.2)
- - React-Core (= 0.64.2)
- - React-cxxreact (= 0.64.2)
- - React-jsi (= 0.64.2)
- - React-perflogger (= 0.64.2)
- - RNBootSplash (4.0.2):
+ - RCT-Folly (= 2021.07.22.00)
+ - React-callinvoker (= 0.72.4)
+ - React-cxxreact (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - React-logger (= 0.72.4)
+ - React-perflogger (= 0.72.4)
+ - ReactCommon/turbomodule/core (0.72.4):
+ - DoubleConversion
+ - glog
+ - RCT-Folly (= 2021.07.22.00)
+ - React-callinvoker (= 0.72.4)
+ - React-cxxreact (= 0.72.4)
+ - React-jsi (= 0.72.4)
+ - React-logger (= 0.72.4)
+ - React-perflogger (= 0.72.4)
+ - RNBootSplash (4.7.5):
- React-Core
- - RNCAsyncStorage (1.15.8):
+ - RNCAsyncStorage (1.21.0):
- React-Core
- RNCMaskedView (0.1.11):
- React
- - RNCPicker (1.16.8):
+ - RNCPicker (2.6.1):
- React-Core
- - RNCPushNotificationIOS (1.10.1):
+ - RNCPushNotificationIOS (1.11.0):
- React-Core
- - RNDateTimePicker (4.0.1):
+ - RNDateTimePicker (7.6.2):
- React-Core
- - RNDeviceInfo (8.3.3):
+ - RNDeviceInfo (10.12.0):
- React-Core
- - RNFastImage (8.5.11):
+ - RNFastImage (8.6.3):
- React-Core
- SDWebImage (~> 5.11.1)
- SDWebImageWebPCoder (~> 0.8.4)
- - RNFS (2.18.0):
- - React
- - RNGestureHandler (1.10.3):
+ - RNFlashList (1.6.3):
- React-Core
- - RNLocalize (2.1.5):
+ - RNFS (2.20.0):
- React-Core
- - RNPermissions (3.0.5):
+ - RNGestureHandler (2.14.0):
+ - RCT-Folly (= 2021.07.22.00)
- React-Core
- - RNReanimated (2.2.2):
- - DoubleConversion
- - FBLazyVector
- - FBReactNativeSpec
- - glog
- - RCT-Folly
- - RCTRequired
- - RCTTypeSafety
+ - RNLaunchNavigator (1.0.9):
- React
- - React-callinvoker
+ - RNLocalize (3.0.5):
+ - React-Core
+ - RNPermissions (4.0.4):
+ - React-Core
+ - RNReanimated (3.6.1):
+ - RCT-Folly (= 2021.07.22.00)
- React-Core
- - React-Core/DevSupport
- - React-Core/RCTWebSocket
- - React-CoreModules
- - React-cxxreact
- - React-jsi
- - React-jsiexecutor
- - React-jsinspector
- - React-RCTActionSheet
- - React-RCTAnimation
- - React-RCTBlob
- - React-RCTImage
- - React-RCTLinking
- - React-RCTNetwork
- - React-RCTSettings
- - React-RCTText
- - React-RCTVibration
- ReactCommon/turbomodule/core
- - Yoga
- - RNScreens (3.8.0):
+ - RNScreens (3.29.0):
+ - RCT-Folly (= 2021.07.22.00)
- React-Core
- - React-RCTImage
- - RNShare (7.3.2):
+ - RNShare (10.0.2):
+ - React-Core
+ - RNSVG (14.1.0):
- React-Core
- - RNSVG (12.1.1):
- - React
- SDWebImage (5.11.1):
- SDWebImage/Core (= 5.11.1)
- SDWebImage/Core (5.11.1)
- - SDWebImageWebPCoder (0.8.4):
+ - SDWebImageWebPCoder (0.8.5):
- libwebp (~> 1.0)
- SDWebImage/Core (~> 5.10)
- - Stripe (21.7.0):
- - Stripe/Stripe3DS2 (= 21.7.0)
- - StripeCore (= 21.7.0)
- - stripe-react-native (0.1.5):
- - React
- - Stripe (~> 21.7.0)
- - Stripe/Stripe3DS2 (21.7.0):
- - StripeCore (= 21.7.0)
- - StripeCore (21.7.0)
+ - SocketRocket (0.6.1)
+ - Stripe (23.18.3):
+ - StripeApplePay (= 23.18.3)
+ - StripeCore (= 23.18.3)
+ - StripePayments (= 23.18.3)
+ - StripePaymentsUI (= 23.18.3)
+ - StripeUICore (= 23.18.3)
+ - stripe-react-native (0.35.0):
+ - React-Core
+ - Stripe (~> 23.18.0)
+ - StripeApplePay (~> 23.18.0)
+ - StripeFinancialConnections (~> 23.18.0)
+ - StripePayments (~> 23.18.0)
+ - StripePaymentSheet (~> 23.18.0)
+ - StripePaymentsUI (~> 23.18.0)
+ - StripeApplePay (23.18.3):
+ - StripeCore (= 23.18.3)
+ - StripeCore (23.18.3)
+ - StripeFinancialConnections (23.18.3):
+ - StripeCore (= 23.18.3)
+ - StripeUICore (= 23.18.3)
+ - StripePayments (23.18.3):
+ - StripeCore (= 23.18.3)
+ - StripePayments/Stripe3DS2 (= 23.18.3)
+ - StripePayments/Stripe3DS2 (23.18.3):
+ - StripeCore (= 23.18.3)
+ - StripePaymentSheet (23.18.3):
+ - StripeApplePay (= 23.18.3)
+ - StripeCore (= 23.18.3)
+ - StripePayments (= 23.18.3)
+ - StripePaymentsUI (= 23.18.3)
+ - StripePaymentsUI (23.18.3):
+ - StripeCore (= 23.18.3)
+ - StripePayments (= 23.18.3)
+ - StripeUICore (= 23.18.3)
+ - StripeUICore (23.18.3):
+ - StripeCore (= 23.18.3)
- Yoga (1.14.0)
- YoutubePlayer-in-WKWebView (0.3.8)
DEPENDENCIES:
+ - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`)
- DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
- 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`)
- - Permission-Contacts (from `../node_modules/react-native-permissions/ios/Contacts`)
- - Permission-LocationWhenInUse (from `../node_modules/react-native-permissions/ios/LocationWhenInUse`)
- - Permission-Notifications (from `../node_modules/react-native-permissions/ios/Notifications`)
- RCT-Folly (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`)
- RCTYouTube (from `../node_modules/react-native-youtube`)
- 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/DevSupport (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-jsc (from `../node_modules/react-native/ReactCommon/jsc`)
- 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`)
+ - React-logger (from `../node_modules/react-native/ReactCommon/logger`)
+ - react-native-camera (from `../node_modules/react-native-camera`)
- react-native-config (from `../node_modules/react-native-config`)
- react-native-geolocation-service (from `../node_modules/react-native-geolocation-service`)
- - react-native-google-maps (from `../node_modules/react-native-maps`)
+ - react-native-get-random-values (from `../node_modules/react-native-get-random-values`)
- react-native-image-picker (from `../node_modules/react-native-image-picker`)
- react-native-image-resizer (from `../node_modules/react-native-image-resizer`)
+ - react-native-location (from `../node_modules/react-native-location`)
- react-native-maps (from `../node_modules/react-native-maps`)
- react-native-mmkv-storage (from `../node_modules/react-native-mmkv-storage`)
+ - react-native-render-html (from `../node_modules/react-native-render-html`)
- react-native-safe-area-context (from `../node_modules/react-native-safe-area-context`)
+ - react-native-webview (from `../node_modules/react-native-webview`)
+ - 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-RCTImage (from `../node_modules/react-native/Libraries/Image`)
- React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`)
@@ -450,7 +575,10 @@ DEPENDENCIES:
- 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-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`)
- RNBootSplash (from `../node_modules/react-native-bootsplash`)
- "RNCAsyncStorage (from `../node_modules/@react-native-async-storage/async-storage`)"
@@ -460,8 +588,10 @@ DEPENDENCIES:
- "RNDateTimePicker (from `../node_modules/@react-native-community/datetimepicker`)"
- RNDeviceInfo (from `../node_modules/react-native-device-info`)
- RNFastImage (from `../node_modules/react-native-fast-image`)
+ - "RNFlashList (from `../node_modules/@shopify/flash-list`)"
- RNFS (from `../node_modules/react-native-fs`)
- RNGestureHandler (from `../node_modules/react-native-gesture-handler`)
+ - RNLaunchNavigator (from `../node_modules/react-native-launch-navigator`)
- RNLocalize (from `../node_modules/react-native-localize`)
- RNPermissions (from `../node_modules/react-native-permissions`)
- RNReanimated (from `../node_modules/react-native-reanimated`)
@@ -473,19 +603,26 @@ DEPENDENCIES:
SPEC REPOS:
trunk:
- - boost-for-react-native
- - Google-Maps-iOS-Utils
- - GoogleMaps
+ - fmt
- libwebp
- MMKV
- MMKVCore
- SDWebImage
- SDWebImageWebPCoder
+ - SocketRocket
- Stripe
+ - StripeApplePay
- StripeCore
+ - StripeFinancialConnections
+ - StripePayments
+ - StripePaymentSheet
+ - StripePaymentsUI
+ - StripeUICore
- YoutubePlayer-in-WKWebView
EXTERNAL SOURCES:
+ boost:
+ :podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec"
DoubleConversion:
:podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec"
FBLazyVector:
@@ -494,12 +631,6 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/React/FBReactNativeSpec"
glog:
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
- Permission-Contacts:
- :path: "../node_modules/react-native-permissions/ios/Contacts"
- Permission-LocationWhenInUse:
- :path: "../node_modules/react-native-permissions/ios/LocationWhenInUse"
- Permission-Notifications:
- :path: "../node_modules/react-native-permissions/ios/Notifications"
RCT-Folly:
:podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec"
RCTRequired:
@@ -512,40 +643,60 @@ EXTERNAL SOURCES:
: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-jsc:
+ :path: "../node_modules/react-native/ReactCommon/jsc"
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"
+ React-logger:
+ :path: "../node_modules/react-native/ReactCommon/logger"
+ react-native-camera:
+ :path: "../node_modules/react-native-camera"
react-native-config:
:path: "../node_modules/react-native-config"
react-native-geolocation-service:
:path: "../node_modules/react-native-geolocation-service"
- react-native-google-maps:
- :path: "../node_modules/react-native-maps"
+ react-native-get-random-values:
+ :path: "../node_modules/react-native-get-random-values"
react-native-image-picker:
:path: "../node_modules/react-native-image-picker"
react-native-image-resizer:
:path: "../node_modules/react-native-image-resizer"
+ react-native-location:
+ :path: "../node_modules/react-native-location"
react-native-maps:
:path: "../node_modules/react-native-maps"
react-native-mmkv-storage:
:path: "../node_modules/react-native-mmkv-storage"
+ react-native-render-html:
+ :path: "../node_modules/react-native-render-html"
react-native-safe-area-context:
:path: "../node_modules/react-native-safe-area-context"
+ react-native-webview:
+ :path: "../node_modules/react-native-webview"
+ 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-RCTImage:
@@ -560,8 +711,14 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/Libraries/Text"
React-RCTVibration:
:path: "../node_modules/react-native/Libraries/Vibration"
+ 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"
RNBootSplash:
@@ -580,10 +737,14 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native-device-info"
RNFastImage:
:path: "../node_modules/react-native-fast-image"
+ RNFlashList:
+ :path: "../node_modules/@shopify/flash-list"
RNFS:
:path: "../node_modules/react-native-fs"
RNGestureHandler:
:path: "../node_modules/react-native-gesture-handler"
+ RNLaunchNavigator:
+ :path: "../node_modules/react-native-launch-navigator"
RNLocalize:
:path: "../node_modules/react-native-localize"
RNPermissions:
@@ -602,75 +763,93 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/ReactCommon/yoga"
SPEC CHECKSUMS:
- boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
- DoubleConversion: cf9b38bf0b2d048436d9a82ad2abe1404f11e7de
- FBLazyVector: e686045572151edef46010a6f819ade377dfeb4b
- FBReactNativeSpec: b1fc60e236fb5b9b1144002d0eba44fb48bf6b16
- glog: 73c2498ac6884b13ede40eda8228cb1eee9d9d62
- Google-Maps-iOS-Utils: c32891ff472eaaa1fca032beedafa1a013af7875
- GoogleMaps: 32ca02de09de357a10ac773f2c70f1986751392d
- libwebp: 98a37e597e40bfdb4c911fc98f2c53d0b12d05fc
- MMKV: 76033b9ace2006623308910a3afcc0e25eba3140
- MMKVCore: b00e7a09ec77a1b916aef336eedd3b99ec249978
- Permission-Contacts: 4bd4bdbbcec21ce0175e02cc4925070a773204cf
- Permission-LocationWhenInUse: e1168a583654f1d2d34d3a18c4c6518ce409ad2a
- Permission-Notifications: 16ccd862111103378a7bab9fb1c5c71addffc348
- RCT-Folly: ec7a233ccc97cc556cf7237f0db1ff65b986f27c
- RCTRequired: 6d3e854f0e7260a648badd0d44fc364bc9da9728
- RCTTypeSafety: c1f31d19349c6b53085766359caac425926fafaa
+ boost: 57d2868c099736d80fcd648bf211b4431e51a558
+ DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
+ FBLazyVector: 5d4a3b7f411219a45a6d952f77d2c0a6c9989da5
+ FBReactNativeSpec: 3fc2d478e1c4b08276f9dd9128f80ec6d5d85c1f
+ fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
+ glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
+ libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009
+ MMKV: aac95d817a100479445633f2b3ed8961b4ac5043
+ MMKVCore: 9cfef4c48c6c46f66226fc2e4634d78490206a48
+ RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1
+ RCTRequired: c0569ecc035894e4a68baecb30fe6a7ea6e399f9
+ RCTTypeSafety: e90354072c21236e0bcf1699011e39acd25fea2f
RCTYouTube: a8bb45705622a6fc9decf64be04128d3658ed411
- React: bda6b6d7ae912de97d7a61aa5c160db24aa2ad69
- React-callinvoker: 9840ea7e8e88ed73d438edb725574820b29b5baa
- React-Core: b5e385da7ce5f16a220fc60fd0749eae2c6120f0
- React-CoreModules: 17071a4e2c5239b01585f4aa8070141168ab298f
- React-cxxreact: 9be7b6340ed9f7c53e53deca7779f07cd66525ba
- React-jsi: 67747b9722f6dab2ffe15b011bcf6b3f2c3f1427
- React-jsiexecutor: 80c46bd381fd06e418e0d4f53672dc1d1945c4c3
- React-jsinspector: cc614ec18a9ca96fd275100c16d74d62ee11f0ae
- react-native-config: 72d948053a442779b3178fddd571e37f118ef606
- react-native-geolocation-service: 32e50a2e4e4518b51b829fdfe137562a672d95d2
- react-native-google-maps: 46dea4aa4acb7300beff508f64d9f8c84e9fb106
- react-native-image-picker: 14910ea6b6a38bd45d1a69cb643b157e6ac142cb
+ React: a1be3c6dc0a6e949ccd3e659781aa47bbae1868f
+ React-callinvoker: 1020b33f6cb1a1824f9ca2a86609fbce2a73c6ed
+ React-Codegen: 97df9239bfc44a4504c4840dfae3a200e4500afe
+ React-Core: 9df7960451a433053f30a5862728f92088a9150d
+ React-CoreModules: 21abab85d7ad9038ce2b1c33d39e3baaf7dc9244
+ React-cxxreact: 9f0bd765bbffbd2038936d1f0ba1c80ea7649e28
+ React-debug: 17366a3d5c5d2f5fc04f09101a4af38cb42b54ae
+ React-jsc: 844ccd35b8dbd105aa0430b658611a43f10ba8a5
+ React-jsi: 8c012b3699d7427e96866dd3a539ca9611fa2546
+ React-jsiexecutor: bc8a9ad812a2c88b3a41c08b5f4b3ed32d6d4766
+ React-jsinspector: aaed4cf551c4a1c98092436518c2d267b13a673f
+ React-logger: da1ebe05ae06eb6db4b162202faeafac4b435e77
+ react-native-camera: 3eae183c1d111103963f3dd913b65d01aef8110f
+ react-native-config: 86038147314e2e6d10ea9972022aa171e6b1d4d8
+ react-native-geolocation-service: 608e1da71a1ac31b4de64d9ef2815f697978c55b
+ react-native-get-random-values: 384787fd76976f5aec9465aff6fa9e9129af1e74
+ react-native-image-picker: 5e076db26cd81660cfb6db5bcf517cfa12054d45
react-native-image-resizer: d9fb629a867335bdc13230ac2a58702bb8c8828f
- react-native-maps: 2d405b4e8cee0282e4c02bac434d81450dfea877
- react-native-mmkv-storage: ef0108761e775232be39fda2f41fef040406d858
- react-native-safe-area-context: 584dc04881deb49474363f3be89e4ca0e854c057
- React-perflogger: 25373e382fed75ce768a443822f07098a15ab737
- React-RCTActionSheet: af7796ba49ffe4ca92e7277a5d992d37203f7da5
- React-RCTAnimation: 6a2e76ab50c6f25b428d81b76a5a45351c4d77aa
- React-RCTBlob: 02a2887023e0eed99391b6445b2e23a2a6f9226d
- React-RCTImage: ce5bf8e7438f2286d9b646a05d6ab11f38b0323d
- React-RCTLinking: ccd20742de14e020cb5f99d5c7e0bf0383aefbd9
- React-RCTNetwork: dfb9d089ab0753e5e5f55fc4b1210858f7245647
- React-RCTSettings: b14aef2d83699e48b410fb7c3ba5b66cd3291ae2
- React-RCTText: 41a2e952dd9adc5caf6fb68ed46b275194d5da5f
- React-RCTVibration: 24600e3b1aaa77126989bc58b6747509a1ba14f3
- React-runtimeexecutor: a9904c6d0218fb9f8b19d6dd88607225927668f9
- ReactCommon: 149906e01aa51142707a10665185db879898e966
- RNBootSplash: 5e82ba24a59a07315cbb2bb4855bb8d76fc7e802
- RNCAsyncStorage: e8b8d6320a0dd90eb610fb0d0b1ef90596697c69
+ react-native-location: 5a40ec1cc6abf2f6d94df979f98ec76c3a415681
+ react-native-maps: 4f45622710094c3603b262279c40026750579b1f
+ react-native-mmkv-storage: cfb6854594cfdc5f7383a9e464bb025417d1721c
+ react-native-render-html: 984dfe2294163d04bf5fe25d7c9f122e60e05ebe
+ react-native-safe-area-context: 0ee144a6170530ccc37a0fd9388e28d06f516a89
+ react-native-webview: 107961c73db53d66549c867a3b64eaa20d34c41f
+ React-NativeModulesApple: 759309419da76ef4c9f331968b840022ee2aa5b1
+ React-perflogger: 496a1a3dc6737f964107cb3ddae7f9e265ddda58
+ React-RCTActionSheet: 02904b932b50e680f4e26e7a686b33ebf7ef3c00
+ React-RCTAnimation: 88feaf0a85648fb8fd497ce749829774910276d6
+ React-RCTAppDelegate: b9e5fe0e4b71f30f3742225dc7085ae10681a1cd
+ React-RCTBlob: 455b680e457c36f8d98f4338b51cd3cbf48744bd
+ React-RCTImage: b111645ab901f8e59fc68fbe31f5731bdbeef087
+ React-RCTLinking: 3d719727b4c098aad3588aa3559361ee0579f5de
+ React-RCTNetwork: b44d3580be05d74556ba4efbf53570f17e38f734
+ React-RCTSettings: c0c54b330442c29874cd4dae6e94190dc11a6f6f
+ React-RCTText: 9b9f5589d9b649d7246c3f336e116496df28cfe6
+ React-RCTVibration: 691c67f3beaf1d084ceed5eb5c1dddd9afa8591e
+ React-rncore: 142268f6c92e296dc079aadda3fade778562f9e4
+ React-runtimeexecutor: d465ba0c47ef3ed8281143f59605cacc2244d5c7
+ React-runtimescheduler: cbd78e16328bde1e5abac4ceb0cb635d03c359c6
+ React-utils: b79f2411931f9d3ea5781404dcbb2fa8a837e13a
+ ReactCommon: 2635a013764a291989765d6ec136513911f478c6
+ RNBootSplash: 85f6b879c080e958afdb4c62ee04497b05fd7552
+ RNCAsyncStorage: 618d03a5f52fbccb3d7010076bc54712844c18ef
RNCMaskedView: 0e1bc4bfa8365eba5fbbb71e07fbdc0555249489
- RNCPicker: 0991c56da7815c0cf946d6f63cf920b25296e5f6
- RNCPushNotificationIOS: 87b8d16d3ede4532745e05b03c42cff33a36cc45
- RNDateTimePicker: a654a0ebfa3dd78bbe5389421aa2d3d5b2744e47
- RNDeviceInfo: cc7de0772378f85d8f36ae439df20f05c590a651
- RNFastImage: 1f2cab428712a4baaf78d6169eaec7f622556dd7
- RNFS: 3ab21fa6c56d65566d1fb26c2228e2b6132e5e32
- RNGestureHandler: a479ebd5ed4221a810967000735517df0d2db211
- RNLocalize: 74b82db20cc3895ccc25af992c644879bcec2815
- RNPermissions: 7043bacbf928eae25808275cfe73799b8f618911
- RNReanimated: 241c586663f44f19a53883c63375fdd041253960
- RNScreens: 6e1ea5787989f92b0671049b808aef64fa1ef98c
- RNShare: d76b8c9c6e6ffb38fc18f40b4338c9d867592ed3
- RNSVG: 551acb6562324b1d52a4e0758f7ca0ec234e278f
+ RNCPicker: b18aaf30df596e9b1738e7c1f9ee55402a229dca
+ RNCPushNotificationIOS: 64218f3c776c03d7408284a819b2abfda1834bc8
+ RNDateTimePicker: fc2e4f2795877d45e84d85659bebe627eba5c931
+ RNDeviceInfo: db5c64a060e66e5db3102d041ebe3ef307a85120
+ RNFastImage: 5c9c9fed9c076e521b3f509fe79e790418a544e8
+ RNFlashList: 4b4b6b093afc0df60ae08f9cbf6ccd4c836c667a
+ RNFS: 4ac0f0ea233904cb798630b3c077808c06931688
+ RNGestureHandler: 32a01c29ecc9bb0b5bf7bc0a33547f61b4dc2741
+ RNLaunchNavigator: d855643e1f842f13c6cc65575e0755975667032c
+ RNLocalize: a725877f311db45acc6bff2382b3283e744a3945
+ RNPermissions: 076ebf41a4c3d76da07afc0653db97ea4126e8d0
+ RNReanimated: fdbaa9c964bbab7fac50c90862b6cc5f041679b9
+ RNScreens: 3c5b9f4a9dcde752466854b6109b79c0e205dad3
+ RNShare: 859ff710211285676b0bcedd156c12437ea1d564
+ RNSVG: ba3e7232f45e34b7b47e74472386cf4e1a676d0a
SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d
- SDWebImageWebPCoder: f93010f3f6c031e2f8fb3081ca4ee6966c539815
- Stripe: 90596971ef49bade169f68bc59369a796b30a045
- stripe-react-native: f1b034cb702aa214078d9441b0a4313ac00c020d
- StripeCore: c09b492efc3b269a6ff875ad738ca366db97e03b
- Yoga: 575c581c63e0d35c9a83f4b46d01d63abc1100ac
+ SDWebImageWebPCoder: 908b83b6adda48effe7667cd2b7f78c897e5111d
+ SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17
+ Stripe: e046335ab6e3f25d39f1a55bd98620a85269cffa
+ stripe-react-native: 2e2dad1734c1c2b71564b66bae4395bfd8419af4
+ StripeApplePay: 1aa77f8ec7a6d9463fa8f49ae0672fe59dbf4c73
+ StripeCore: fe10c34fb3c9ae18b986913f7e4460e7c653ce93
+ StripeFinancialConnections: 6022426894046f26fe21d348da02d83d8a637fb0
+ StripePayments: 7084fed30c5f03f15ae23c5dce63715ba0b53e15
+ StripePaymentSheet: c8d25d4133476c6238d3cc932fb8219bb5ea49c0
+ StripePaymentsUI: c12de264eda974d91e43a769f53a6c6afc9a1715
+ StripeUICore: 090c4fe916d039616ce8f8de30392f4aeb33dd16
+ Yoga: 3efc43e0d48686ce2e8c60f99d4e6bd349aff981
YoutubePlayer-in-WKWebView: 4fca3b4f6f09940077bfbae7bddb771f2b43aacd
-PODFILE CHECKSUM: 347e7dad0d91db5ab4c106c2eee4ce33d51407f3
+PODFILE CHECKSUM: 92e6eef34b7886ef226387536f5a45e752c2a4d2
-COCOAPODS: 1.11.2
+COCOAPODS: 1.14.3
diff --git a/ios/StorefrontApp.xcodeproj/project.pbxproj b/ios/StorefrontApp.xcodeproj/project.pbxproj
index bda09b7..2589d4a 100644
--- a/ios/StorefrontApp.xcodeproj/project.pbxproj
+++ b/ios/StorefrontApp.xcodeproj/project.pbxproj
@@ -430,7 +430,7 @@
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
- LIBRARY_SEARCH_PATHS = "$(inherited)";
+ LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift$(inherited)";
OTHER_LDFLAGS = (
"-ObjC",
"-lc++",
@@ -457,7 +457,7 @@
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
- LIBRARY_SEARCH_PATHS = "$(inherited)";
+ LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift$(inherited)";
OTHER_LDFLAGS = (
"-ObjC",
"-lc++",
@@ -476,7 +476,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = StorefrontApp/StorefrontApp.entitlements;
- CURRENT_PROJECT_VERSION = 10;
+ CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = W4M54N7H85;
ENABLE_BITCODE = NO;
HEADER_SEARCH_PATHS = "$(inherited)";
@@ -486,7 +486,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
- MARKETING_VERSION = 1.0.0;
+ MARKETING_VERSION = 0.0.7;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -508,7 +508,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = StorefrontApp/StorefrontApp.entitlements;
- CURRENT_PROJECT_VERSION = 10;
+ CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = W4M54N7H85;
HEADER_SEARCH_PATHS = "$(inherited)";
INFOPLIST_FILE = StorefrontApp/Info.plist;
@@ -517,7 +517,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
- MARKETING_VERSION = 1.0.0;
+ MARKETING_VERSION = 0.0.7;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -537,7 +537,7 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
- CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_CXX_LANGUAGE_STANDARD = "c++17";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
@@ -586,9 +586,12 @@
/usr/lib/swift,
"$(inherited)",
);
- LIBRARY_SEARCH_PATHS = "\"$(inherited)\"";
+ LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift\"$(inherited)\"";
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
+ OTHER_CFLAGS = "$(inherited)";
+ OTHER_CPLUSPLUSFLAGS = "$(inherited)";
+ REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
};
name = Debug;
@@ -599,7 +602,7 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
- CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_CXX_LANGUAGE_STANDARD = "c++17";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
@@ -641,8 +644,11 @@
/usr/lib/swift,
"$(inherited)",
);
- LIBRARY_SEARCH_PATHS = "\"$(inherited)\"";
+ LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift\"$(inherited)\"";
MTL_ENABLE_DEBUG_INFO = NO;
+ OTHER_CFLAGS = "$(inherited)";
+ OTHER_CPLUSPLUSFLAGS = "$(inherited)";
+ REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
VALIDATE_PRODUCT = YES;
};
diff --git a/ios/StorefrontApp/AppDelegate.m b/ios/StorefrontApp/AppDelegate.m
index 7368823..be0f1c8 100644
--- a/ios/StorefrontApp/AppDelegate.m
+++ b/ios/StorefrontApp/AppDelegate.m
@@ -2,11 +2,11 @@
#import
#import
+
#import
#import
#import
-#import
-#import "ReactNativeConfig.h"
+#import "RNCConfig.h"
#import "RNBootSplash.h"
#ifdef FB_SONARKIT_ENABLED
@@ -34,8 +34,7 @@ @implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
- [GMSServices provideAPIKey: [ReactNativeConfig envFor:@"GOOGLE_MAPS_KEY"]];
-#ifdef FB_SONARKIT_ENABLED
+ #ifdef FB_SONARKIT_ENABLED
InitializeFlipper(application);
#endif
@@ -98,7 +97,7 @@ - (void)userNotificationCenter:(UNUserNotificationCenter *)center
- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
{
#if DEBUG
- return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
+ return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
#else
return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
#endif
diff --git a/ios/StorefrontApp/AppDelegate.mm b/ios/StorefrontApp/AppDelegate.mm
new file mode 100644
index 0000000..b44122c
--- /dev/null
+++ b/ios/StorefrontApp/AppDelegate.mm
@@ -0,0 +1,133 @@
+#import "AppDelegate.h"
+
+#import
+#import
+#import
+
+#import
+
+#if RCT_NEW_ARCH_ENABLED
+#import
+#import
+#import
+#import
+#import
+#import
+
+#import
+
+static NSString *const kRNConcurrentRoot = @"concurrentRoot";
+
+@interface AppDelegate () {
+ RCTTurboModuleManager *_turboModuleManager;
+ RCTSurfacePresenterBridgeAdapter *_bridgeAdapter;
+ std::shared_ptr _reactNativeConfig;
+ facebook::react::ContextContainer::Shared _contextContainer;
+}
+@end
+#endif
+
+@implementation AppDelegate
+
+- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
+{
+ RCTAppSetupPrepareApp(application);
+
+ RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions];
+
+#if RCT_NEW_ARCH_ENABLED
+ _contextContainer = std::make_shared();
+ _reactNativeConfig = std::make_shared();
+ _contextContainer->insert("ReactNativeConfig", _reactNativeConfig);
+ _bridgeAdapter = [[RCTSurfacePresenterBridgeAdapter alloc] initWithBridge:bridge contextContainer:_contextContainer];
+ bridge.surfacePresenter = _bridgeAdapter.surfacePresenter;
+#endif
+
+ NSDictionary *initProps = [self prepareInitialProps];
+ UIView *rootView = RCTAppSetupDefaultRootView(bridge, @"StorefrontApp", initProps);
+
+ if (@available(iOS 13.0, *)) {
+ rootView.backgroundColor = [UIColor systemBackgroundColor];
+ } else {
+ rootView.backgroundColor = [UIColor whiteColor];
+ }
+
+ self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
+ UIViewController *rootViewController = [UIViewController new];
+ rootViewController.view = rootView;
+ self.window.rootViewController = rootViewController;
+ [self.window makeKeyAndVisible];
+ return YES;
+}
+
+/// This method controls whether the `concurrentRoot`feature of React18 is turned on or off.
+///
+/// @see: https://reactjs.org/blog/2022/03/29/react-v18.html
+/// @note: This requires to be rendering on Fabric (i.e. on the New Architecture).
+/// @return: `true` if the `concurrentRoot` feture is enabled. Otherwise, it returns `false`.
+- (BOOL)concurrentRootEnabled
+{
+ // Switch this bool to turn on and off the concurrent root
+ return true;
+}
+
+- (NSDictionary *)prepareInitialProps
+{
+ NSMutableDictionary *initProps = [NSMutableDictionary new];
+
+#ifdef RCT_NEW_ARCH_ENABLED
+ initProps[kRNConcurrentRoot] = @([self concurrentRootEnabled]);
+#endif
+
+ return initProps;
+}
+
+- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
+{
+#if DEBUG
+ return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
+#else
+ return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
+#endif
+}
+
+#if RCT_NEW_ARCH_ENABLED
+
+#pragma mark - RCTCxxBridgeDelegate
+
+- (std::unique_ptr)jsExecutorFactoryForBridge:(RCTBridge *)bridge
+{
+ _turboModuleManager = [[RCTTurboModuleManager alloc] initWithBridge:bridge
+ delegate:self
+ jsInvoker:bridge.jsCallInvoker];
+ return RCTAppSetupDefaultJsExecutorFactory(bridge, _turboModuleManager);
+}
+
+#pragma mark RCTTurboModuleManagerDelegate
+
+- (Class)getModuleClassFromName:(const char *)name
+{
+ return RCTCoreModulesClassProvider(name);
+}
+
+- (std::shared_ptr)getTurboModule:(const std::string &)name
+ jsInvoker:(std::shared_ptr)jsInvoker
+{
+ return nullptr;
+}
+
+- (std::shared_ptr)getTurboModule:(const std::string &)name
+ initParams:
+ (const facebook::react::ObjCTurboModule::InitParams &)params
+{
+ return nullptr;
+}
+
+- (id)getModuleInstanceFromClass:(Class)moduleClass
+{
+ return RCTAppSetupDefaultModuleFromClass(moduleClass);
+}
+
+#endif
+
+@end
diff --git a/ios/StorefrontApp/Images.xcassets/AppIcon.appiconset/Contents.json b/ios/StorefrontApp/Images.xcassets/AppIcon.appiconset/Contents.json
index c783b94..b9a5e87 100644
--- a/ios/StorefrontApp/Images.xcassets/AppIcon.appiconset/Contents.json
+++ b/ios/StorefrontApp/Images.xcassets/AppIcon.appiconset/Contents.json
@@ -1,158 +1,59 @@
{
- "images" : [
- {
- "filename" : "iphone-20x20-2x.png",
- "idiom" : "iphone",
- "scale" : "2x",
- "size" : "20x20"
- },
- {
- "filename" : "iphone-20x20-3x.png",
- "idiom" : "iphone",
- "scale" : "3x",
- "size" : "20x20"
- },
- {
- "filename" : "iphone-29x29-1x.png",
- "idiom" : "iphone",
- "scale" : "1x",
- "size" : "29x29"
- },
- {
- "filename" : "iphone-29x29-2x.png",
- "idiom" : "iphone",
- "scale" : "2x",
- "size" : "29x29"
- },
- {
- "filename" : "iphone-29x29-3x.png",
- "idiom" : "iphone",
- "scale" : "3x",
- "size" : "29x29"
- },
- {
- "filename" : "iphone-40x40-2x.png",
- "idiom" : "iphone",
- "scale" : "2x",
- "size" : "40x40"
- },
- {
- "filename" : "iphone-40x40-3x.png",
- "idiom" : "iphone",
- "scale" : "3x",
- "size" : "40x40"
- },
- {
- "filename" : "iphone-57x57-1x.png",
- "idiom" : "iphone",
- "scale" : "1x",
- "size" : "57x57"
- },
- {
- "filename" : "iphone-57x57-2x.png",
- "idiom" : "iphone",
- "scale" : "2x",
- "size" : "57x57"
- },
- {
- "filename" : "iphone-60x60-2x.png",
- "idiom" : "iphone",
- "scale" : "2x",
- "size" : "60x60"
- },
- {
- "filename" : "iphone-60x60-3x.png",
- "idiom" : "iphone",
- "scale" : "3x",
- "size" : "60x60"
- },
- {
- "filename" : "ipad-20x20-1x.png",
- "idiom" : "ipad",
- "scale" : "1x",
- "size" : "20x20"
- },
- {
- "filename" : "ipad-20x20-2x.png",
- "idiom" : "ipad",
- "scale" : "2x",
- "size" : "20x20"
- },
- {
- "filename" : "ipad-29x29-1x.png",
- "idiom" : "ipad",
- "scale" : "1x",
- "size" : "29x29"
- },
- {
- "filename" : "ipad-29x29-2x.png",
- "idiom" : "ipad",
- "scale" : "2x",
- "size" : "29x29"
- },
- {
- "filename" : "ipad-40x40-1x.png",
- "idiom" : "ipad",
- "scale" : "1x",
- "size" : "40x40"
- },
- {
- "filename" : "ipad-40x40-2x.png",
- "idiom" : "ipad",
- "scale" : "2x",
- "size" : "40x40"
- },
- {
- "filename" : "ipad-50x50-1x.png",
- "idiom" : "ipad",
- "scale" : "1x",
- "size" : "50x50"
- },
- {
- "filename" : "ipad-50x50-2x.png",
- "idiom" : "ipad",
- "scale" : "2x",
- "size" : "50x50"
- },
- {
- "filename" : "ipad-72x72-1x.png",
- "idiom" : "ipad",
- "scale" : "1x",
- "size" : "72x72"
- },
- {
- "filename" : "ipad-72x72-2x.png",
- "idiom" : "ipad",
- "scale" : "2x",
- "size" : "72x72"
- },
- {
- "filename" : "ipad-76x76-1x.png",
- "idiom" : "ipad",
- "scale" : "1x",
- "size" : "76x76"
- },
- {
- "filename" : "ipad-76x76-2x.png",
- "idiom" : "ipad",
- "scale" : "2x",
- "size" : "76x76"
- },
- {
- "filename" : "ipad-83.5x83.5-2x.png",
- "idiom" : "ipad",
- "scale" : "2x",
- "size" : "83.5x83.5"
- },
- {
- "filename" : "ios-marketing-1024x1024-1x.png",
- "idiom" : "ios-marketing",
- "scale" : "1x",
- "size" : "1024x1024"
+ "images": [
+ {
+ "filename": "iphone-20x20-2x.png",
+ "idiom": "iphone",
+ "scale": "2x",
+ "size": "20x20"
+ },
+ {
+ "filename": "iphone-20x20-3x.png",
+ "idiom": "iphone",
+ "scale": "3x",
+ "size": "20x20"
+ },
+ {
+ "filename": "iphone-29x29-1x.png",
+ "idiom": "iphone",
+ "scale": "2x",
+ "size": "29x29"
+ },
+ {
+ "filename": "iphone-29x29-2x.png",
+ "idiom": "iphone",
+ "scale": "3x",
+ "size": "29x29"
+ },
+ {
+ "filename": "iphone-29x29-3x.png",
+ "idiom": "iphone",
+ "scale": "2x",
+ "size": "40x40"
+ },
+ {
+ "filename": "iphone-40x40-2x.png",
+ "idiom": "iphone",
+ "scale": "3x",
+ "size": "40x40"
+ },
+ {
+ "idiom": "iphone",
+ "scale": "2x",
+ "size": "60x60"
+ },
+ {
+ "idiom": "iphone",
+ "scale": "3x",
+ "size": "60x60"
+ },
+ {
+ "idiom": "ios-marketing",
+ "scale": "1x",
+ "size": "1024x1024"
+ }
+ ],
+ "info": {
+ "author": "xcode",
+ "version": 1
}
- ],
- "info" : {
- "author" : "xcode",
- "version" : 1
- }
}
diff --git a/ios/StorefrontApp/main.m b/ios/StorefrontApp/main.m
index b1df44b..d645c72 100644
--- a/ios/StorefrontApp/main.m
+++ b/ios/StorefrontApp/main.m
@@ -2,7 +2,8 @@
#import "AppDelegate.h"
-int main(int argc, char * argv[]) {
+int main(int argc, char *argv[])
+{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
diff --git a/ios/StorefrontAppTests/StorefrontAppTests.m b/ios/StorefrontAppTests/StorefrontAppTests.m
index 735e447..5cb380a 100644
--- a/ios/StorefrontAppTests/StorefrontAppTests.m
+++ b/ios/StorefrontAppTests/StorefrontAppTests.m
@@ -13,7 +13,7 @@ @interface StorefrontAppTests : XCTestCase
@implementation StorefrontAppTests
-- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test
+- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL (^)(UIView *view))test
{
if (test(view)) {
return YES;
@@ -34,23 +34,25 @@ - (void)testRendersWelcomeScreen
__block NSString *redboxError = nil;
#ifdef DEBUG
- RCTSetLogFunction(^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) {
- if (level >= RCTLogLevelError) {
- redboxError = message;
- }
- });
+ RCTSetLogFunction(
+ ^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) {
+ if (level >= RCTLogLevelError) {
+ redboxError = message;
+ }
+ });
#endif
while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) {
[[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]];
[[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]];
- foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) {
- if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) {
- return YES;
- }
- return NO;
- }];
+ foundElement = [self findSubviewInView:vc.view
+ matching:^BOOL(UIView *view) {
+ if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) {
+ return YES;
+ }
+ return NO;
+ }];
}
#ifdef DEBUG
@@ -61,5 +63,4 @@ - (void)testRendersWelcomeScreen
XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS);
}
-
@end
diff --git a/package.json b/package.json
index c6f02dc..08b22b9 100644
--- a/package.json
+++ b/package.json
@@ -1,96 +1,126 @@
{
- "name": "storefrontapp",
- "version": "0.0.6",
- "private": true,
- "scripts": {
- "android": "react-native run-android",
- "ios": "react-native run-ios",
- "start": "react-native start",
- "pod-reset": "rm -rf ios/Pods/ ios/Podfile.lock && npx pod-install",
- "test": "jest",
- "lint": "eslint .",
- "adb-reverse": "adb reverse tcp:8081 tcp:8081",
- "generate-app-icon": "npx app-icon generate -i ./assets/app-icon.png",
- "generate-launch-screen": "npx react-native generate-bootsplash ./assets/splash-screen.png --background-color=#FFFFFF --logo-width=100 --flavor=main"
- },
- "dependencies": {
- "@fleetbase/storefront": "^1.1.5",
- "@fortawesome/free-brands-svg-icons": "^5.15.4",
- "@freakycoder/react-native-bounceable": "^0.2.5",
- "@react-native-async-storage/async-storage": "^1.15.5",
- "@react-native-community/datetimepicker": "^4.0.1",
- "@react-native-community/masked-view": "^0.1.11",
- "@react-native-community/push-notification-ios": "^1.8.0",
- "@react-native-picker/picker": "^1.16.3",
- "@react-navigation/bottom-tabs": "^5.11.11",
- "@react-navigation/native": "^5.9.4",
- "@react-navigation/stack": "^5.14.5",
- "@reduxjs/toolkit": "^1.6.1",
- "@stripe/stripe-react-native": "^0.1.5",
- "add": "^2.0.6",
- "autoprefixer": "^10.2.6",
- "axios": "^0.21.1",
- "countries-list": "^2.6.1",
- "country-locale-map": "^1.8.0",
- "i18n-js": "^3.8.0",
- "postcss": "^8.3.5",
- "react": "17.0.1",
- "react-native": "0.64.2",
- "react-native-actions-sheet": "^0.5.4",
- "react-native-animated-radio-button": "^2.0.6",
- "react-native-bootsplash": "^4.0.2",
- "react-native-bouncy-checkbox": "^2.1.2",
- "react-native-config": "^1.4.2",
- "react-native-device-info": "^8.1.3",
- "react-native-event-listeners": "^1.0.7",
- "react-native-fast-image": "^8.5.11",
- "react-native-fs": "^2.18.0",
- "react-native-geolocation-service": "^5.3.0-beta.1",
- "react-native-gesture-handler": "^1.10.3",
- "react-native-google-places-autocomplete": "^2.2.0",
- "react-native-image-picker": "^4.4.0",
- "react-native-image-resizer": "^1.4.5",
- "react-native-localize": "^2.1.5",
- "react-native-maps": "0.28.0",
- "react-native-maps-directions": "^1.8.0",
- "react-native-mmkv-storage": "^0.6.3",
- "react-native-modal": "^12.0.2",
- "react-native-open-maps": "^0.4.0",
- "react-native-permissions": "^3.0.5",
- "react-native-picker-module": "^2.0.4",
- "react-native-push-notification": "^7.4.0",
- "react-native-reanimated": "^2.2.0",
- "react-native-render-html": "^6.0.5",
- "react-native-safe-area-context": "^3.2.0",
- "react-native-screens": "^3.4.0",
- "react-native-share": "^7.3.2",
- "react-native-snap-carousel": "^3.9.1",
- "react-native-swipe-list-view": "^3.2.9",
- "react-native-youtube": "^2.0.2",
- "react-redux": "^7.2.5",
- "tailwind-rn": "^3.0.1",
- "tailwindcss": "^2.2.4",
- "yarn": "^1.22.17"
- },
- "devDependencies": {
- "@babel/core": "^7.12.9",
- "@babel/runtime": "^7.12.5",
- "@fortawesome/fontawesome-svg-core": "^1.2.35",
- "@fortawesome/free-solid-svg-icons": "^5.15.3",
- "@fortawesome/react-native-fontawesome": "^0.2.6",
- "@react-native-community/eslint-config": "^2.0.0",
- "babel-jest": "^26.6.3",
- "babel-plugin-module-resolver": "^4.1.0",
- "babel-plugin-preval": "^5.0.0",
- "eslint": "7.14.0",
- "jest": "^26.6.3",
- "language-name-map": "^0.3.0",
- "locale-emoji": "^0.3.0",
- "metro-react-native-babel-preset": "^0.64.0",
- "react-native-svg": "^12.1.1",
- "react-test-renderer": "17.0.1"
- },
- "jest": {
- "preset": "react-native"
- }
+ "name": "storefrontapp",
+ "version": "0.0.7",
+ "private": true,
+ "scripts": {
+ "android": "react-native run-android",
+ "ios": "react-native run-ios",
+ "start": "react-native start",
+ "pod-reset": "rm -rf ios/Pods/ ios/Podfile.lock && npx pod-install",
+ "test": "jest",
+ "lint": "eslint .",
+ "clean:android": "cd android && ./gradlew clean && cd ../",
+ "adb-reverse": "adb reverse tcp:8081 tcp:8081",
+ "postinstall": "patch-package",
+ "generate-app-icon": "npx app-icon generate -i ./assets/app-icon.png",
+ "generate-launch-screen": "npx react-native generate-bootsplash ./assets/splash-screen.png --background-color=#FFFFFF --logo-width=100 --flavor=main"
+ },
+ "dependencies": {
+ "@babel/plugin-proposal-async-generator-functions": "^7.20.7",
+ "@fleetbase/sdk": "1.2.7",
+ "@fleetbase/storefront": "^1.1.6",
+ "@fortawesome/fontawesome-svg-core": "^6.5.1",
+ "@fortawesome/free-brands-svg-icons": "^6.5.1",
+ "@fortawesome/free-solid-svg-icons": "^6.5.1",
+ "@fortawesome/react-native-fontawesome": "^0.3.0",
+ "@freakycoder/react-native-bounceable": "^1.0.3",
+ "@react-native-async-storage/async-storage": "^1.21.0",
+ "@react-native-community/datetimepicker": "^7.6.2",
+ "@react-native-community/masked-view": "^0.1.11",
+ "@react-native-community/push-notification-ios": "^1.11.0",
+ "@react-native-picker/picker": "^2.6.1",
+ "@react-navigation/bottom-tabs": "^6.3.1",
+ "@react-navigation/native": "^6.0.10",
+ "@react-navigation/stack": "^6.2.1",
+ "@reduxjs/toolkit": "^2.0.1",
+ "@shopify/flash-list": "^1.6.3",
+ "@stripe/stripe-react-native": "0.35.0",
+ "autoprefixer": "^10.4.16",
+ "axios": "0.21.1",
+ "countries-list": "^3.0.6",
+ "country-locale-map": "^1.9.0",
+ "date-fns": "^3.2.0",
+ "deprecated-react-native-prop-types": "^5.0.0",
+ "hermes-engine": "^0.11.0",
+ "i18n-js": "^3.8.0",
+ "inflector-js": "^1.0.1",
+ "language-name-map": "^0.3.0",
+ "locale-emoji": "^0.3.0",
+ "patch-package": "^8.0.0",
+ "postcss": "^8.4.33",
+ "react": "18.2.0",
+ "react-native": "0.72.4",
+ "react-native-actions-sheet": "0.9.0-alpha.24",
+ "react-native-animated-radio-button": "^2.0.6",
+ "react-native-bootsplash": "^4.7.5",
+ "react-native-bouncy-checkbox": "^3.0.7",
+ "react-native-calendar-strip": "^2.2.6",
+ "react-native-calendars": "^1.1303.0",
+ "react-native-camera": "^4.2.1",
+ "react-native-collapsible": "^1.6.1",
+ "react-native-config": "^1.5.1",
+ "react-native-country-codes-picker": "^2.3.4",
+ "react-native-device-info": "^10.12.0",
+ "react-native-dropdown-picker": "^5.4.6",
+ "react-native-event-listeners": "^1.0.7",
+ "react-native-fast-image": "^8.6.3",
+ "react-native-fs": "^2.20.0",
+ "react-native-geolocation-service": "^5.3.1",
+ "react-native-gesture-handler": "^2.14.0",
+ "react-native-get-random-values": "^1.10.0",
+ "react-native-google-places-autocomplete": "^2.5.6",
+ "react-native-image-picker": "^7.1.0",
+ "react-native-image-resizer": "^1.4.5",
+ "react-native-launch-navigator": "^1.0.9",
+ "react-native-localize": "^3.0.5",
+ "react-native-location": "^2.5.0",
+ "react-native-maps": "^1.9.1",
+ "react-native-maps-directions": "^1.9.0",
+ "react-native-mmkv-storage": "^0.9.1",
+ "react-native-modal": "^13.0.1",
+ "react-native-navigation-apps": "^1.0.27",
+ "react-native-open-maps": "^0.4.3",
+ "react-native-permissions": "^4.0.4",
+ "react-native-picker-module": "^2.0.7",
+ "react-native-push-notification": "^8.1.1",
+ "react-native-qrcode-scanner": "^1.5.5",
+ "react-native-reanimated": "^3.6.1",
+ "react-native-render-html": "^6.3.4",
+ "react-native-safe-area-context": "^4.8.2",
+ "react-native-screens": "^3.29.0",
+ "react-native-share": "^10.0.2",
+ "react-native-signature-canvas": "^4.7.1",
+ "react-native-snap-carousel": "^3.9.1",
+ "react-native-svg": "^14.1.0",
+ "react-native-swipe-list-view": "^3.2.9",
+ "react-native-toast-message": "^2.2.0",
+ "react-native-webview": "^13.6.4",
+ "react-native-youtube": "^2.0.2",
+ "react-redux": "^9.0.4",
+ "socketcluster-client": "^19.1.0",
+ "tailwind-rn": "^3.0.1",
+ "tailwindcss": "^2.2.4",
+ "uuid": "^9.0.1"
+ },
+ "devDependencies": {
+ "@babel/core": "^7.23.7",
+ "@babel/runtime": "^7.23.8",
+ "@fortawesome/fontawesome-svg-core": "^6.5.1",
+ "@fortawesome/free-solid-svg-icons": "^6.5.1",
+ "@fortawesome/react-native-fontawesome": "^0.3.0",
+ "@react-native-community/eslint-config": "^3.2.0",
+ "babel-jest": "^29.7.0",
+ "babel-plugin-module-resolver": "^5.0.0",
+ "babel-plugin-preval": "^5.1.0",
+ "eslint": "8.56.0",
+ "jest": "^29.7.0",
+ "language-name-map": "^0.3.0",
+ "locale-emoji": "^0.3.0",
+ "metro-react-native-babel-preset": "^0.77.0",
+ "react-native-svg": "^14.1.0",
+ "react-test-renderer": "18.2.0"
+ },
+ "jest": {
+ "preset": "react-native"
+ }
}
diff --git a/patches/@stripe+stripe-react-native+0.35.0.patch b/patches/@stripe+stripe-react-native+0.35.0.patch
new file mode 100644
index 0000000..0b6b138
--- /dev/null
+++ b/patches/@stripe+stripe-react-native+0.35.0.patch
@@ -0,0 +1,1364 @@
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/generated/data_binding_base_class_source_out/debug/out/com/reactnativestripesdk/databinding/StripeReactNativeGooglePayButtonBinding.java b/node_modules/@stripe/stripe-react-native/android/build/generated/data_binding_base_class_source_out/debug/out/com/reactnativestripesdk/databinding/StripeReactNativeGooglePayButtonBinding.java
+new file mode 100644
+index 0000000..ebeee64
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/generated/data_binding_base_class_source_out/debug/out/com/reactnativestripesdk/databinding/StripeReactNativeGooglePayButtonBinding.java
+@@ -0,0 +1,69 @@
++// Generated by view binder compiler. Do not edit!
++package com.reactnativestripesdk.databinding;
++
++import android.view.LayoutInflater;
++import android.view.View;
++import android.view.ViewGroup;
++import android.widget.FrameLayout;
++import androidx.annotation.NonNull;
++import androidx.annotation.Nullable;
++import androidx.viewbinding.ViewBinding;
++import androidx.viewbinding.ViewBindings;
++import com.google.android.gms.wallet.button.PayButton;
++import com.reactnativestripesdk.R;
++import java.lang.NullPointerException;
++import java.lang.Override;
++import java.lang.String;
++
++public final class StripeReactNativeGooglePayButtonBinding implements ViewBinding {
++ @NonNull
++ private final FrameLayout rootView;
++
++ @NonNull
++ public final PayButton googlePayButton;
++
++ private StripeReactNativeGooglePayButtonBinding(@NonNull FrameLayout rootView,
++ @NonNull PayButton googlePayButton) {
++ this.rootView = rootView;
++ this.googlePayButton = googlePayButton;
++ }
++
++ @Override
++ @NonNull
++ public FrameLayout getRoot() {
++ return rootView;
++ }
++
++ @NonNull
++ public static StripeReactNativeGooglePayButtonBinding inflate(@NonNull LayoutInflater inflater) {
++ return inflate(inflater, null, false);
++ }
++
++ @NonNull
++ public static StripeReactNativeGooglePayButtonBinding inflate(@NonNull LayoutInflater inflater,
++ @Nullable ViewGroup parent, boolean attachToParent) {
++ View root = inflater.inflate(R.layout.stripe_react_native_google_pay_button, parent, false);
++ if (attachToParent) {
++ parent.addView(root);
++ }
++ return bind(root);
++ }
++
++ @NonNull
++ public static StripeReactNativeGooglePayButtonBinding bind(@NonNull View rootView) {
++ // The body of this method is generated in a way you would not otherwise write.
++ // This is done to optimize the compiled bytecode for size and performance.
++ int id;
++ missingId: {
++ id = R.id.googlePayButton;
++ PayButton googlePayButton = ViewBindings.findChildViewById(rootView, id);
++ if (googlePayButton == null) {
++ break missingId;
++ }
++
++ return new StripeReactNativeGooglePayButtonBinding((FrameLayout) rootView, googlePayButton);
++ }
++ String missingId = rootView.getResources().getResourceName(id);
++ throw new NullPointerException("Missing required view with ID: ".concat(missingId));
++ }
++}
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/generated/source/buildConfig/debug/com/reactnativestripesdk/BuildConfig.java b/node_modules/@stripe/stripe-react-native/android/build/generated/source/buildConfig/debug/com/reactnativestripesdk/BuildConfig.java
+new file mode 100644
+index 0000000..ff3ec1b
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/generated/source/buildConfig/debug/com/reactnativestripesdk/BuildConfig.java
+@@ -0,0 +1,10 @@
++/**
++ * Automatically generated file. DO NOT MODIFY
++ */
++package com.reactnativestripesdk;
++
++public final class BuildConfig {
++ public static final boolean DEBUG = Boolean.parseBoolean("true");
++ public static final String LIBRARY_PACKAGE_NAME = "com.reactnativestripesdk";
++ public static final String BUILD_TYPE = "debug";
++}
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml
+new file mode 100644
+index 0000000..b1f2e22
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml
+@@ -0,0 +1,7 @@
++
++
++
++
++
++
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json b/node_modules/@stripe/stripe-react-native/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json
+new file mode 100644
+index 0000000..788560a
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json
+@@ -0,0 +1,18 @@
++{
++ "version": 3,
++ "artifactType": {
++ "type": "AAPT_FRIENDLY_MERGED_MANIFESTS",
++ "kind": "Directory"
++ },
++ "applicationId": "com.reactnativestripesdk",
++ "variantName": "debug",
++ "elements": [
++ {
++ "type": "SINGLE",
++ "filters": [],
++ "attributes": [],
++ "outputFile": "AndroidManifest.xml"
++ }
++ ],
++ "elementType": "File"
++}
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/aar_metadata/debug/aar-metadata.properties b/node_modules/@stripe/stripe-react-native/android/build/intermediates/aar_metadata/debug/aar-metadata.properties
+new file mode 100644
+index 0000000..776557e
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/aar_metadata/debug/aar-metadata.properties
+@@ -0,0 +1,5 @@
++aarFormatVersion=1.0
++aarMetadataVersion=1.0
++minCompileSdk=1
++minCompileSdkExtension=0
++minAndroidGradlePluginVersion=1.0.0
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/annotation_processor_list/debug/annotationProcessors.json b/node_modules/@stripe/stripe-react-native/android/build/intermediates/annotation_processor_list/debug/annotationProcessors.json
+new file mode 100644
+index 0000000..9e26dfe
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/annotation_processor_list/debug/annotationProcessors.json
+@@ -0,0 +1 @@
++{}
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_library_classes_jar/debug/classes.jar b/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_library_classes_jar/debug/classes.jar
+new file mode 100644
+index 0000000..1487168
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_library_classes_jar/debug/classes.jar differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_r_class_jar/debug/R.jar b/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_r_class_jar/debug/R.jar
+new file mode 100644
+index 0000000..a2dd9be
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_r_class_jar/debug/R.jar differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_symbol_list/debug/R.txt b/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_symbol_list/debug/R.txt
+new file mode 100644
+index 0000000..00d36d4
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/compile_symbol_list/debug/R.txt
+@@ -0,0 +1,2 @@
++int id googlePayButton 0x0
++int layout stripe_react_native_google_pay_button 0x0
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/compiled_local_resources/debug/out/layout_stripe_react_native_google_pay_button.xml.flat b/node_modules/@stripe/stripe-react-native/android/build/intermediates/compiled_local_resources/debug/out/layout_stripe_react_native_google_pay_button.xml.flat
+new file mode 100644
+index 0000000..1e596ad
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/compiled_local_resources/debug/out/layout_stripe_react_native_google_pay_button.xml.flat differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/data_binding_base_class_log_artifact/debug/out/com.reactnativestripesdk-binding_classes.json b/node_modules/@stripe/stripe-react-native/android/build/intermediates/data_binding_base_class_log_artifact/debug/out/com.reactnativestripesdk-binding_classes.json
+new file mode 100644
+index 0000000..c28025b
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/data_binding_base_class_log_artifact/debug/out/com.reactnativestripesdk-binding_classes.json differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/data_binding_layout_info_type_package/debug/out/stripe_react_native_google_pay_button-layout.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/data_binding_layout_info_type_package/debug/out/stripe_react_native_google_pay_button-layout.xml
+new file mode 100644
+index 0000000..41df5b8
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/data_binding_layout_info_type_package/debug/out/stripe_react_native_google_pay_button-layout.xml
+@@ -0,0 +1 @@
++
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/dataBindingGenBaseClassesDebug/base_builder_log.json b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/dataBindingGenBaseClassesDebug/base_builder_log.json
+new file mode 100644
+index 0000000..5971429
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/dataBindingGenBaseClassesDebug/base_builder_log.json differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties
+new file mode 100644
+index 0000000..9a82922
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties
+@@ -0,0 +1,2 @@
++#Fri Jan 12 00:04:56 ULAT 2024
++com.reactnativestripesdk.stripe_stripe-react-native-packageDebugResources-3\:/layout/stripe_react_native_google_pay_button.xml=/Users/turtuvshin/Projects/storefront-app/node_modules/@stripe/stripe-react-native/android/build/intermediates/packaged_res/debug/layout/stripe_react_native_google_pay_button.xml
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml
+new file mode 100644
+index 0000000..c698b1a
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml
+@@ -0,0 +1,2 @@
++
++
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/stripped.dir/layout/stripe_react_native_google_pay_button.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/stripped.dir/layout/stripe_react_native_google_pay_button.xml
+new file mode 100644
+index 0000000..8b6f0c6
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/debug/packageDebugResources/stripped.dir/layout/stripe_react_native_google_pay_button.xml
+@@ -0,0 +1,14 @@
++
++
++
++
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml
+new file mode 100644
+index 0000000..71ba133
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml
+@@ -0,0 +1,2 @@
++
++
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/mergeDebugShaders/merger.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/mergeDebugShaders/merger.xml
+new file mode 100644
+index 0000000..148fc81
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/mergeDebugShaders/merger.xml
+@@ -0,0 +1,2 @@
++
++
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/packageDebugAssets/merger.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/packageDebugAssets/merger.xml
+new file mode 100644
+index 0000000..8451031
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/incremental/packageDebugAssets/merger.xml
+@@ -0,0 +1,2 @@
++
++
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/java_res/debug/out/META-INF/stripe_stripe-react-native_debug.kotlin_module b/node_modules/@stripe/stripe-react-native/android/build/intermediates/java_res/debug/out/META-INF/stripe_stripe-react-native_debug.kotlin_module
+new file mode 100644
+index 0000000..5d6d5b7
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/java_res/debug/out/META-INF/stripe_stripe-react-native_debug.kotlin_module differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/javac/debug/classes/com/reactnativestripesdk/BuildConfig.class b/node_modules/@stripe/stripe-react-native/android/build/intermediates/javac/debug/classes/com/reactnativestripesdk/BuildConfig.class
+new file mode 100644
+index 0000000..c2bd878
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/javac/debug/classes/com/reactnativestripesdk/BuildConfig.class differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/javac/debug/classes/com/reactnativestripesdk/databinding/StripeReactNativeGooglePayButtonBinding.class b/node_modules/@stripe/stripe-react-native/android/build/intermediates/javac/debug/classes/com/reactnativestripesdk/databinding/StripeReactNativeGooglePayButtonBinding.class
+new file mode 100644
+index 0000000..130573f
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/javac/debug/classes/com/reactnativestripesdk/databinding/StripeReactNativeGooglePayButtonBinding.class differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/local_only_symbol_list/debug/R-def.txt b/node_modules/@stripe/stripe-react-native/android/build/intermediates/local_only_symbol_list/debug/R-def.txt
+new file mode 100644
+index 0000000..15060dd
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/local_only_symbol_list/debug/R-def.txt
+@@ -0,0 +1,4 @@
++R_DEF: Internal format may change without notice
++local
++id googlePayButton
++layout stripe_react_native_google_pay_button
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt b/node_modules/@stripe/stripe-react-native/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt
+new file mode 100644
+index 0000000..29e769b
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt
+@@ -0,0 +1,7 @@
++1
++2
++4
++5
++6
++7
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml
+new file mode 100644
+index 0000000..b1f2e22
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml
+@@ -0,0 +1,7 @@
++
++
++
++
++
++
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/navigation_json/debug/navigation.json b/node_modules/@stripe/stripe-react-native/android/build/intermediates/navigation_json/debug/navigation.json
+new file mode 100644
+index 0000000..0637a08
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/navigation_json/debug/navigation.json
+@@ -0,0 +1 @@
++[]
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/packaged_res/debug/layout/stripe_react_native_google_pay_button.xml b/node_modules/@stripe/stripe-react-native/android/build/intermediates/packaged_res/debug/layout/stripe_react_native_google_pay_button.xml
+new file mode 100644
+index 0000000..8b6f0c6
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/packaged_res/debug/layout/stripe_react_native_google_pay_button.xml
+@@ -0,0 +1,14 @@
++
++
++
++
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/runtime_library_classes_jar/debug/classes.jar b/node_modules/@stripe/stripe-react-native/android/build/intermediates/runtime_library_classes_jar/debug/classes.jar
+new file mode 100644
+index 0000000..a6151ad
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/intermediates/runtime_library_classes_jar/debug/classes.jar differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt b/node_modules/@stripe/stripe-react-native/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt
+new file mode 100644
+index 0000000..ccbb973
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt
+@@ -0,0 +1,3 @@
++com.reactnativestripesdk
++id googlePayButton
++layout stripe_react_native_google_pay_button
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab
+new file mode 100644
+index 0000000..2163dde
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream
+new file mode 100644
+index 0000000..3829952
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len
+new file mode 100644
+index 0000000..52d7dcc
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len
+new file mode 100644
+index 0000000..b287d95
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values
+new file mode 100644
+index 0000000..393ab74
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at
+new file mode 100644
+index 0000000..fb25a83
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.s b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.s
+new file mode 100644
+index 0000000..0a40a48
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.s
+@@ -0,0 +1 @@
++é(
+\ No newline at end of file
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i
+new file mode 100644
+index 0000000..d835a6b
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len
+new file mode 100644
+index 0000000..131e265
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab
+new file mode 100644
+index 0000000..bcbf3f9
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream
+new file mode 100644
+index 0000000..e75fe94
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len
+new file mode 100644
+index 0000000..a83a4d0
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len
+new file mode 100644
+index 0000000..3e5b6a5
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at
+new file mode 100644
+index 0000000..298c4e5
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i
+new file mode 100644
+index 0000000..3c371dd
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len
+new file mode 100644
+index 0000000..131e265
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab
+new file mode 100644
+index 0000000..e235065
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream
+new file mode 100644
+index 0000000..e75fe94
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len
+new file mode 100644
+index 0000000..a83a4d0
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len
+new file mode 100644
+index 0000000..3e5b6a5
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at
+new file mode 100644
+index 0000000..997e640
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i
+new file mode 100644
+index 0000000..3c371dd
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len
+new file mode 100644
+index 0000000..131e265
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab
+new file mode 100644
+index 0000000..41fb009
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream
+new file mode 100644
+index 0000000..05ab0c7
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len
+new file mode 100644
+index 0000000..309239a
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len
+new file mode 100644
+index 0000000..14f7c06
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at
+new file mode 100644
+index 0000000..5aea8da
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i
+new file mode 100644
+index 0000000..d034c47
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len
+new file mode 100644
+index 0000000..131e265
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab
+new file mode 100644
+index 0000000..1a1bb8a
+Binary files /dev/null and b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab differ
+diff --git a/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream
+new file mode 100644
+index 0000000..a47bdf5
+--- /dev/null
++++ b/node_modules/@stripe/stripe-react-native/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream
+@@ -0,0 +1 @@
++,com/reactnativestripesdk/AuBECSDebitFormView;com/reactnativestripesdk/AuBECSDebitFormView$setListeners$13com/reactnativestripesdk/AuBECSDebitFormViewManager)com/reactnativestripesdk/CardChangedEvent3com/reactnativestripesdk/CardChangedEvent$Companion&com/reactnativestripesdk/CardFieldView5com/reactnativestripesdk/CardFieldView$setListeners$65com/reactnativestripesdk/CardFieldView$setListeners$75com/reactnativestripesdk/CardFieldView$setListeners$85com/reactnativestripesdk/CardFieldView$setListeners$96com/reactnativestripesdk/CardFieldView$setListeners$10-com/reactnativestripesdk/CardFieldViewManager'com/reactnativestripesdk/CardFocusEvent1com/reactnativestripesdk/CardFocusEvent$Companion.com/reactnativestripesdk/CardFormCompleteEvent8com/reactnativestripesdk/CardFormCompleteEvent$Companion%com/reactnativestripesdk/CardFormView,com/reactnativestripesdk/CardFormViewManager;com/reactnativestripesdk/CollectBankAccountLauncherFragmentWcom/reactnativestripesdk/CollectBankAccountLauncherFragment$createBankAccountLauncher$1Ecom/reactnativestripesdk/CollectBankAccountLauncherFragment$Companion:com/reactnativestripesdk/FinancialConnectionsSheetFragmentJcom/reactnativestripesdk/FinancialConnectionsSheetFragment$onViewCreated$1Jcom/reactnativestripesdk/FinancialConnectionsSheetFragment$onViewCreated$2?com/reactnativestripesdk/FinancialConnectionsSheetFragment$ModeDcom/reactnativestripesdk/FinancialConnectionsSheetFragment$CompanionQcom/reactnativestripesdk/FinancialConnectionsSheetFragment$Companion$WhenMappingsGcom/reactnativestripesdk/FinancialConnectionsSheetFragment$WhenMappingscom/reactnativestripesdk/StripeSdkModule$createPaymentMethod$1?com/reactnativestripesdk/StripeSdkModule$createTokenFromPii$1$1Ecom/reactnativestripesdk/StripeSdkModule$createTokenFromBankAccount$1>com/reactnativestripesdk/StripeSdkModule$createTokenFromCard$1Bcom/reactnativestripesdk/StripeSdkModule$createTokenForCVCUpdate$1@com/reactnativestripesdk/StripeSdkModule$retrievePaymentIntent$1>com/reactnativestripesdk/StripeSdkModule$retrieveSetupIntent$1?com/reactnativestripesdk/StripeSdkModule$confirmPlatformPay$1$1Acom/reactnativestripesdk/StripeSdkModule$confirmPlatformPay$1$1$1Acom/reactnativestripesdk/StripeSdkModule$confirmPlatformPay$1$1$2?com/reactnativestripesdk/StripeSdkModule$canAddCardToWallet$1$1;com/reactnativestripesdk/StripeSdkModule$isCardInWallet$1$1Ncom/reactnativestripesdk/StripeSdkModule$verifyMicrodeposits$paymentCallback$1Lcom/reactnativestripesdk/StripeSdkModule$verifyMicrodeposits$setupCallback$12com/reactnativestripesdk/StripeSdkModule$CompanionAcom/reactnativestripesdk/StripeSdkModule$mActivityEventListener$1)com/reactnativestripesdk/StripeSdkPackage=com/reactnativestripesdk/addresssheet/AddressLauncherFragmentOcom/reactnativestripesdk/addresssheet/AddressLauncherFragment$onViewCreated$1$1Gcom/reactnativestripesdk/addresssheet/AddressLauncherFragment$Companion7com/reactnativestripesdk/addresssheet/AddressSheetEventAcom/reactnativestripesdk/addresssheet/AddressSheetEvent$EventTypeAcom/reactnativestripesdk/addresssheet/AddressSheetEvent$CompanionDcom/reactnativestripesdk/addresssheet/AddressSheetEvent$WhenMappings6com/reactnativestripesdk/addresssheet/AddressSheetViewKcom/reactnativestripesdk/addresssheet/AddressSheetView$launchAddressSheet$1@com/reactnativestripesdk/addresssheet/AddressSheetView$Companion=com/reactnativestripesdk/addresssheet/AddressSheetViewManager.com/reactnativestripesdk/CustomerSheetFragment>com/reactnativestripesdk/CustomerSheetFragment$onViewCreated$3^com/reactnativestripesdk/CustomerSheetFragment$presentWithTimeout$activityLifecycleCallbacks$1Ocom/reactnativestripesdk/CustomerSheetFragment$retrievePaymentOptionSelection$18com/reactnativestripesdk/CustomerSheetFragment$Companionecom/reactnativestripesdk/CustomerSheetFragment$Companion$createCustomerAdapter$ephemeralKeyProvider$1`com/reactnativestripesdk/CustomerSheetFragment$Companion$createCustomerAdapter$customerAdapter$1`com/reactnativestripesdk/CustomerSheetFragment$Companion$createCustomerAdapter$customerAdapter$2`com/reactnativestripesdk/CustomerSheetFragment$Companion$createCustomerAdapter$customerAdapter$3Acom/reactnativestripesdk/customersheet/ReactNativeCustomerAdapterZcom/reactnativestripesdk/customersheet/ReactNativeCustomerAdapter$retrievePaymentMethods$1Wcom/reactnativestripesdk/customersheet/ReactNativeCustomerAdapter$attachPaymentMethod$1Wcom/reactnativestripesdk/customersheet/ReactNativeCustomerAdapter$detachPaymentMethod$1\com/reactnativestripesdk/customersheet/ReactNativeCustomerAdapter$setSelectedPaymentOption$1acom/reactnativestripesdk/customersheet/ReactNativeCustomerAdapter$retrieveSelectedPaymentOption$1lcom/reactnativestripesdk/customersheet/ReactNativeCustomerAdapter$setupIntentClientSecretForCustomerAttach$1Bcom/reactnativestripesdk/pushprovisioning/AddToWalletButtonManager?com/reactnativestripesdk/pushprovisioning/AddToWalletButtonViewZcom/reactnativestripesdk/pushprovisioning/AddToWalletButtonView$onAfterUpdateTransaction$1Bcom/reactnativestripesdk/pushprovisioning/AddToWalletCompleteEventLcom/reactnativestripesdk/pushprovisioning/AddToWalletCompleteEvent$Companion>com/reactnativestripesdk/pushprovisioning/EphemeralKeyProviderFcom/reactnativestripesdk/pushprovisioning/EphemeralKeyProvider$CREATOR?com/reactnativestripesdk/pushprovisioning/PushProvisioningProxyfcom/reactnativestripesdk/pushprovisioning/PushProvisioningProxy$createActivityEventListener$listener$1Fcom/reactnativestripesdk/pushprovisioning/DefaultPushProvisioningProxy8com/reactnativestripesdk/pushprovisioning/TapAndPayProxy:com/reactnativestripesdk/pushprovisioning/TapAndPayProxyKt(com/reactnativestripesdk/utils/ErrorType6com/reactnativestripesdk/utils/ConfirmPaymentErrorType3com/reactnativestripesdk/utils/CreateTokenErrorType:com/reactnativestripesdk/utils/ConfirmSetupIntentErrorType=com/reactnativestripesdk/utils/RetrievePaymentIntentErrorType;com/reactnativestripesdk/utils/RetrieveSetupIntentErrorType4com/reactnativestripesdk/utils/PaymentSheetErrorType1com/reactnativestripesdk/utils/GooglePayErrorType>com/reactnativestripesdk/utils/PaymentSheetAppearanceException4com/reactnativestripesdk/utils/PaymentSheetException'com/reactnativestripesdk/utils/ErrorsKt+com/reactnativestripesdk/utils/ExtensionsKt(com/reactnativestripesdk/utils/MappersKt5com/reactnativestripesdk/utils/MappersKt$WhenMappings2com/reactnativestripesdk/utils/PostalCodeUtilities