From 27dda65596ce125a2366acc980a50bf2542e6675 Mon Sep 17 00:00:00 2001 From: Igor Korsakov Date: Mon, 21 Jan 2019 13:21:48 +0000 Subject: [PATCH] REF: lapp-browser; OPS: build refactor --- .babelrc | 2 +- .buckconfig | 6 + .flowconfig | 73 +- .gitattributes | 1 + .gitignore | 55 +- .watchmanconfig | 2 +- android/app/app.iml | 94 +- android/app/build.gradle | 28 +- android/app/src/main/AndroidManifest.xml | 8 - .../java/com/bluewallet/MainApplication.java | 71 -- .../bluewallet}/bluewallet/MainActivity.java | 0 .../bluewallet/MainApplication.java | 82 +- android/app/src/main/res/values/strings.xml | 2 +- android/build.gradle | 13 +- .../com/android/support/group-index.xml | 93 -- .../lint-cache/maven.google/master-index.xml | 120 -- .../gradle/wrapper/gradle-wrapper.properties | 3 +- android/settings.gradle | 6 +- app.json | 5 +- ios/BlueWallet.xcodeproj/project.pbxproj | 1125 ++++++++++------- .../xcschemes/BlueWallet-tvOS.xcscheme | 2 +- .../xcschemes/BlueWallet.xcscheme | 2 +- ios/BlueWallet/AppDelegate.m | 21 +- ios/BlueWallet/Info.plist | 4 +- ios/BlueWalletTests/Info.plist | 2 +- package-lock.json | 37 +- package.json | 6 +- screen/lnd/browser.js | 448 ++++--- 28 files changed, 1197 insertions(+), 1114 deletions(-) create mode 100644 .buckconfig create mode 100644 .gitattributes delete mode 100644 android/app/src/main/java/com/bluewallet/MainApplication.java rename android/app/src/main/java/{com => io/bluewallet}/bluewallet/MainActivity.java (100%) mode change 120000 => 100644 android/app/src/main/java/io/bluewallet/bluewallet/MainApplication.java delete mode 100644 android/build/intermediates/lint-cache/maven.google/com/android/support/group-index.xml delete mode 100644 android/build/intermediates/lint-cache/maven.google/master-index.xml diff --git a/.babelrc b/.babelrc index 6408cbe1..d4b74b5b 100644 --- a/.babelrc +++ b/.babelrc @@ -1,3 +1,3 @@ { "presets": ["module:metro-react-native-babel-preset"] -} \ No newline at end of file +} diff --git a/.buckconfig b/.buckconfig new file mode 100644 index 00000000..934256cb --- /dev/null +++ b/.buckconfig @@ -0,0 +1,6 @@ + +[android] + target = Google Inc.:Google APIs:23 + +[maven_repositories] + central = https://repo1.maven.org/maven2 diff --git a/.flowconfig b/.flowconfig index 5b1b2331..1043c82d 100644 --- a/.flowconfig +++ b/.flowconfig @@ -2,74 +2,69 @@ ; We fork some components by platform .*/*[.]android.js -; Ignore templates for 'react-native init' -/node_modules/react-native/local-cli/templates/.* - -; Ignore RN jest -/node_modules/react-native/jest/.* - -; Ignore RNTester -/node_modules/react-native/RNTester/.* - -; Ignore the website subdir -/node_modules/react-native/website/.* - -; Ignore the Dangerfile -/node_modules/react-native/danger/dangerfile.js - -; Ignore Fbemitter -/node_modules/fbemitter/.* - ; Ignore "BUCK" generated dirs -/node_modules/react-native/\.buckd/ +/\.buckd/ ; Ignore unexpected extra "@providesModule" .*/node_modules/.*/node_modules/fbjs/.* +; Ignore duplicate module providers +; For RN Apps installed via npm, "Libraries" folder is inside +; "node_modules/react-native" but in the source repo it is in the root +.*/Libraries/react-native/React.js + ; Ignore polyfills -/node_modules/react-native/Libraries/polyfills/.* +.*/Libraries/polyfills/.* -; Ignore various node_modules -/node_modules/react-native-gesture-handler/.* -/node_modules/expo/.* -/node_modules/react-navigation/.* -/node_modules/xdl/.* -/node_modules/reqwest/.* -/node_modules/metro-bundler/.* +; Ignore metro +.*/node_modules/metro/.* [include] [libs] node_modules/react-native/Libraries/react-native/react-native-interface.js node_modules/react-native/flow/ -node_modules/expo/flow/ +node_modules/react-native/flow-github/ [options] emoji=true -module.system=haste +esproposal.optional_chaining=enable +esproposal.nullish_coalescing=enable -module.file_ext=.js -module.file_ext=.jsx -module.file_ext=.json -module.file_ext=.ios.js +module.system=haste +module.system.haste.use_name_reducers=true +# get basename +module.system.haste.name_reducers='^.*/\([a-zA-Z0-9$_.-]+\.js\(\.flow\)?\)$' -> '\1' +# strip .js or .js.flow suffix +module.system.haste.name_reducers='^\(.*\)\.js\(\.flow\)?$' -> '\1' +# strip .ios suffix +module.system.haste.name_reducers='^\(.*\)\.ios$' -> '\1' +module.system.haste.name_reducers='^\(.*\)\.android$' -> '\1' +module.system.haste.name_reducers='^\(.*\)\.native$' -> '\1' +module.system.haste.paths.blacklist=.*/__tests__/.* +module.system.haste.paths.blacklist=.*/__mocks__/.* +module.system.haste.paths.blacklist=/node_modules/react-native/Libraries/Animated/src/polyfills/.* +module.system.haste.paths.whitelist=/node_modules/react-native/Libraries/.* munge_underscores=true module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> 'RelativeImageStub' +module.file_ext=.js +module.file_ext=.jsx +module.file_ext=.json +module.file_ext=.native.js + suppress_type=$FlowIssue suppress_type=$FlowFixMe suppress_type=$FlowFixMeProps suppress_type=$FlowFixMeState -suppress_type=$FixMe -suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(5[0-6]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native_oss[a-z,_]*\\)?)\\) -suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(5[0-6]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native_oss[a-z,_]*\\)?)\\)?:? #[0-9]+ +suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) +suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+ suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError -unsafe.enable_getters_and_setters=true - [version] -^0.56.0 +^0.78.0 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..d42ff183 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.pbxproj -text diff --git a/.gitignore b/.gitignore index 1aa14425..5d647565 100644 --- a/.gitignore +++ b/.gitignore @@ -1,29 +1,10 @@ -# See https://help.github.com/ignore-files/ for more about ignoring files. - -# dependencies -/node_modules -node_modules/ -# misc -.env.local -.env.development.local -.env.test.local -.env.production.local -.idea/ - -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -class/constants.js - -# OSX# OSX +# OSX # .DS_Store # Xcode # build/ -ios/build/* *.pbxuser !default.pbxuser *.mode1v3 @@ -39,13 +20,37 @@ DerivedData *.hmap *.ipa *.xcuserstate -# +project.xcworkspace -# Android +# Android/IntelliJ # -android/local.properties -android/app/bluewallet-release-key.keystore +build/ .idea .gradle +local.properties *.iml -build/ + +# node.js +# +node_modules/ +npm-debug.log +yarn-error.log + +# BUCK +buck-out/ +\.buckd/ +*.keystore + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/ + +*/fastlane/report.xml +*/fastlane/Preview.html +*/fastlane/screenshots + +# Bundle artifact +*.jsbundle diff --git a/.watchmanconfig b/.watchmanconfig index 0967ef42..9e26dfee 100644 --- a/.watchmanconfig +++ b/.watchmanconfig @@ -1 +1 @@ -{} +{} \ No newline at end of file diff --git a/android/app/app.iml b/android/app/app.iml index b6f94234..ae0bb425 100644 --- a/android/app/app.iml +++ b/android/app/app.iml @@ -23,12 +23,11 @@ - - + + - @@ -36,7 +35,6 @@ - @@ -85,18 +83,35 @@ + + + + + + + + + + + + + + + + + @@ -105,59 +120,62 @@ - - - + + + + + + + + + - - - - - + + - - - - - - + + + + - - - - - - - - + + + + - + - - - - + + + + - + + - + - + + - - + + + + + + + + - - diff --git a/android/app/build.gradle b/android/app/build.gradle index fc31b996..9f6d7c42 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -77,7 +77,6 @@ project.ext.react = [ ] apply from: "../../node_modules/react-native/react.gradle" -apply from: "../../node_modules/react-native-sentry/sentry.gradle" /** * Set this to true to create two separate APKs instead of one: @@ -102,22 +101,12 @@ android { applicationId "io.bluewallet.bluewallet" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 18 - versionName "3.6.0" + versionCode 1 + versionName "3.6.2" ndk { abiFilters "armeabi-v7a", "x86" } } - signingConfigs { - release { - if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) { - storeFile file(MYAPP_RELEASE_STORE_FILE) - storePassword MYAPP_RELEASE_STORE_PASSWORD - keyAlias MYAPP_RELEASE_KEY_ALIAS - keyPassword MYAPP_RELEASE_KEY_PASSWORD - } - } - } splits { abi { reset() @@ -130,7 +119,6 @@ android { release { minifyEnabled enableProguardInReleaseBuilds proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" - signingConfig signingConfigs.release } } // applicationVariants are e.g. debug, release @@ -150,21 +138,21 @@ android { dependencies { compile project(':react-native-webview') - compile project(':react-native-camera') - compile project(':react-native-fs') - compile project(':react-native-gesture-handler') compile project(':react-native-vector-icons') compile project(':react-native-svg') + compile project(':react-native-camera') compile project(':react-native-sentry') compile project(':react-native-randombytes') compile project(':react-native-prompt-android') compile project(':react-native-linear-gradient') compile project(':react-native-haptic-feedback') compile project(':react-native-google-analytics-bridge') + compile project(':react-native-gesture-handler') + compile project(':react-native-fs') compile project(':react-native-device-info') - implementation (project(':react-native-camera')) { - exclude group: "com.android.support" - } + implementation "com.android.support:exifinterface:+" + implementation "com.android.support:support-annotations:+" + implementation "com.android.support:support-v4:27.1.1" implementation fileTree(dir: "libs", include: ["*.jar"]) implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}" implementation "com.facebook.react:react-native:+" // From node_modules diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index bb036975..8e0deabd 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -3,7 +3,6 @@ - - - - - - - - diff --git a/android/app/src/main/java/com/bluewallet/MainApplication.java b/android/app/src/main/java/com/bluewallet/MainApplication.java deleted file mode 100644 index 667c0f13..00000000 --- a/android/app/src/main/java/com/bluewallet/MainApplication.java +++ /dev/null @@ -1,71 +0,0 @@ -package io.bluewallet.bluewallet; - -import android.app.Application; - -import com.facebook.react.ReactApplication; -import com.reactnativecommunity.webview.RNCWebViewPackage; -import com.oblador.vectoricons.VectorIconsPackage; -import com.horcrux.svg.SvgPackage; -import io.sentry.RNSentryPackage; -import com.bitgo.randombytes.RandomBytesPackage; -import im.shimo.react.prompt.RNPromptPackage; -import com.BV.LinearGradient.LinearGradientPackage; -import com.mkuczera.RNReactNativeHapticFeedbackPackage; -import com.idehub.GoogleAnalyticsBridge.GoogleAnalyticsBridgePackage; -import com.learnium.RNDeviceInfo.RNDeviceInfo; -import com.facebook.react.ReactNativeHost; -import com.facebook.react.ReactPackage; -import com.facebook.react.shell.MainReactPackage; -import com.facebook.soloader.SoLoader; -import org.reactnative.camera.RNCameraPackage; -import com.swmansion.gesturehandler.react.RNGestureHandlerPackage; -import com.rnfs.RNFSPackage; - -import java.util.Arrays; -import java.util.List; - -public class MainApplication extends Application implements ReactApplication { - - private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { - @Override - public boolean getUseDeveloperSupport() { - return BuildConfig.DEBUG; - } - - @Override - protected List getPackages() { - return Arrays.asList( - new MainReactPackage(), - new RNCWebViewPackage(), - new RNFSPackage() , - new VectorIconsPackage(), - new SvgPackage(), - new RNSentryPackage(), - new RandomBytesPackage(), - new RNPromptPackage(), - new LinearGradientPackage(), - new RNReactNativeHapticFeedbackPackage(), - new GoogleAnalyticsBridgePackage(), - new RNDeviceInfo(), - new RNCameraPackage(), - new RNGestureHandlerPackage() - ); - } - - @Override - protected String getJSMainModuleName() { - return "index"; - } - }; - - @Override - public ReactNativeHost getReactNativeHost() { - return mReactNativeHost; - } - - @Override - public void onCreate() { - super.onCreate(); - SoLoader.init(this, /* native exopackage */ false); - } -} diff --git a/android/app/src/main/java/com/bluewallet/MainActivity.java b/android/app/src/main/java/io/bluewallet/bluewallet/MainActivity.java similarity index 100% rename from android/app/src/main/java/com/bluewallet/MainActivity.java rename to android/app/src/main/java/io/bluewallet/bluewallet/MainActivity.java diff --git a/android/app/src/main/java/io/bluewallet/bluewallet/MainApplication.java b/android/app/src/main/java/io/bluewallet/bluewallet/MainApplication.java deleted file mode 120000 index 93dacb59..00000000 --- a/android/app/src/main/java/io/bluewallet/bluewallet/MainApplication.java +++ /dev/null @@ -1 +0,0 @@ -../../../../../../../.././android/app/src/main/java/com/bluewallet/MainApplication.java \ No newline at end of file diff --git a/android/app/src/main/java/io/bluewallet/bluewallet/MainApplication.java b/android/app/src/main/java/io/bluewallet/bluewallet/MainApplication.java new file mode 100644 index 00000000..fa9fefd3 --- /dev/null +++ b/android/app/src/main/java/io/bluewallet/bluewallet/MainApplication.java @@ -0,0 +1,81 @@ +package io.bluewallet.bluewallet; + +import android.app.Application; + +import com.facebook.react.ReactApplication; +import com.reactnativecommunity.webview.RNCWebViewPackage; +import com.oblador.vectoricons.VectorIconsPackage; +import org.reactnative.camera.RNCameraPackage; +import io.sentry.RNSentryPackage; +import com.bitgo.randombytes.RandomBytesPackage; +import im.shimo.react.prompt.RNPromptPackage; +import com.BV.LinearGradient.LinearGradientPackage; +import com.mkuczera.RNReactNativeHapticFeedbackPackage; +import com.idehub.GoogleAnalyticsBridge.GoogleAnalyticsBridgePackage; +import com.swmansion.gesturehandler.react.RNGestureHandlerPackage; +import com.rnfs.RNFSPackage; +import com.learnium.RNDeviceInfo.RNDeviceInfo; +import org.reactnative.camera.RNCameraPackage; +import com.horcrux.svg.SvgPackage; +import io.sentry.RNSentryPackage; +import com.bitgo.randombytes.RandomBytesPackage; +import im.shimo.react.prompt.RNPromptPackage; +import com.BV.LinearGradient.LinearGradientPackage; +import com.mkuczera.RNReactNativeHapticFeedbackPackage; +import com.idehub.GoogleAnalyticsBridge.GoogleAnalyticsBridgePackage; +import com.learnium.RNDeviceInfo.RNDeviceInfo; +import com.facebook.react.ReactNativeHost; +import com.facebook.react.ReactPackage; +import com.facebook.react.shell.MainReactPackage; +import com.facebook.soloader.SoLoader; +import com.swmansion.gesturehandler.react.RNGestureHandlerPackage; +import com.rnfs.RNFSPackage; + +import java.util.Arrays; +import java.util.List; + +public class MainApplication extends Application implements ReactApplication { + + private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { + @Override + public boolean getUseDeveloperSupport() { + return BuildConfig.DEBUG; + } + + @Override + protected List getPackages() { + return Arrays.asList( + new MainReactPackage(), + new RNCWebViewPackage(), + new SvgPackage(), + new RNCameraPackage(), + new RNSentryPackage(), + new RandomBytesPackage(), + new GoogleAnalyticsBridgePackage(), + new RNFSPackage(), + new RNDeviceInfo(), + new VectorIconsPackage(), + new RNPromptPackage(), + new LinearGradientPackage(), + new RNReactNativeHapticFeedbackPackage(), + new RNGestureHandlerPackage() + ); + } + + @Override + protected String getJSMainModuleName() { + return "index"; + } + }; + + @Override + public ReactNativeHost getReactNativeHost() { + return mReactNativeHost; + } + + @Override + public void onCreate() { + super.onCreate(); + SoLoader.init(this, /* native exopackage */ false); + } +} diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml index 6cf99bf9..f0a8fbef 100644 --- a/android/app/src/main/res/values/strings.xml +++ b/android/app/src/main/res/values/strings.xml @@ -1,3 +1,3 @@ - Blue Wallet + BlueWallet diff --git a/android/build.gradle b/android/build.gradle index 9c54cfcd..cfbb2b74 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -13,7 +13,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.1.4' + classpath 'com.android.tools.build:gradle:3.2.1' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files @@ -37,14 +37,3 @@ task wrapper(type: Wrapper) { gradleVersion = '4.4' distributionUrl = distributionUrl.replace("bin", "all") } - - subprojects { - project.configurations.all { - resolutionStrategy.eachDependency { details -> - if (details.requested.group == 'com.android.support' - && !details.requested.name.contains('multidex') ) { - details.useVersion "26.1.0" - } - } - } -} diff --git a/android/build/intermediates/lint-cache/maven.google/com/android/support/group-index.xml b/android/build/intermediates/lint-cache/maven.google/com/android/support/group-index.xml deleted file mode 100644 index c2e0c79c..00000000 --- a/android/build/intermediates/lint-cache/maven.google/com/android/support/group-index.xml +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/android/build/intermediates/lint-cache/maven.google/master-index.xml b/android/build/intermediates/lint-cache/maven.google/master-index.xml deleted file mode 100644 index 67cca333..00000000 --- a/android/build/intermediates/lint-cache/maven.google/master-index.xml +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index b6517bb1..e4a6127b 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,6 @@ +#Sat Jan 19 02:29:20 GMT 2019 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip diff --git a/android/settings.gradle b/android/settings.gradle index 11636f24..3e900d60 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -1,16 +1,14 @@ rootProject.name = 'BlueWallet' include ':react-native-webview' project(':react-native-webview').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-webview/android') -include ':react-native-camera' -project(':react-native-camera').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-camera/android') +include ':react-native-svg' +project(':react-native-svg').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-svg/android') include ':react-native-fs' project(':react-native-fs').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-fs/android') include ':react-native-gesture-handler' project(':react-native-gesture-handler').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-gesture-handler/android') include ':react-native-vector-icons' project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android') -include ':react-native-svg' -project(':react-native-svg').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-svg/android') include ':react-native-sentry' project(':react-native-sentry').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-sentry/android') include ':react-native-randombytes' diff --git a/app.json b/app.json index faf509a9..c501a12b 100644 --- a/app.json +++ b/app.json @@ -1,7 +1,4 @@ { - "displayName": "Blue Wallet", "name": "BlueWallet", - "ios": { - "buildNumber": "118" - } + "displayName": "BlueWallet" } \ No newline at end of file diff --git a/ios/BlueWallet.xcodeproj/project.pbxproj b/ios/BlueWallet.xcodeproj/project.pbxproj index e965cd70..891a6f9f 100644 --- a/ios/BlueWallet.xcodeproj/project.pbxproj +++ b/ios/BlueWallet.xcodeproj/project.pbxproj @@ -13,11 +13,17 @@ 00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302DC1ABCB9D200DB3ED1 /* libRCTNetwork.a */; }; 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302E41ABCB9EE00DB3ED1 /* libRCTVibration.a */; }; 00E356F31AD99517003FC87E /* BlueWalletTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* BlueWalletTests.m */; }; - 050943495F6A45DF961C7596 /* libRNReactNativeHapticFeedback.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C979953B425248FEA80F4F78 /* libRNReactNativeHapticFeedback.a */; }; - 06C80B90852E417F941BB03C /* MaterialCommunityIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = F01CC934C46A40A19F1F8861 /* MaterialCommunityIcons.ttf */; }; - 071C1519F81B4BE29915C533 /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CF6354B616F54426BCA4AF79 /* MaterialIcons.ttf */; }; - 0E9157D251334CFC800750D9 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 29112C2F0D8340B3A3196DED /* CoreData.framework */; }; - 105C71E7736A4F20905497E3 /* FontAwesome5_Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 9079CACA902E4AAA91711414 /* FontAwesome5_Regular.ttf */; }; + 02595DE49CB242ADB35FFB19 /* FontAwesome5_Solid.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 85758216A4E74F649B4B1D83 /* FontAwesome5_Solid.ttf */; }; + 0263BA0C13C44BE6B630E0A9 /* FontAwesome5_Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3C108365C46F43B981AA76A2 /* FontAwesome5_Regular.ttf */; }; + 028C3DFA2E1F4311AC52B1A7 /* MaterialCommunityIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CC1C418B6E464077A8CB0103 /* MaterialCommunityIcons.ttf */; }; + 05182DA8005A401C8C0E6ABF /* libRCTGoogleAnalyticsBridge.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0AE2A7819A5F44EA87540B0F /* libRCTGoogleAnalyticsBridge.a */; }; + 055ADE6CC61141EDBA8FAEAA /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 166E13BC37B249E392C6B2F9 /* libz.tbd */; }; + 078BF061C6364525ADBC9801 /* libRNReactNativeHapticFeedback.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 06537407AE1149A291D947A6 /* libRNReactNativeHapticFeedback.a */; }; + 08FC9048F804485789FBAF4C /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = E4CFF6A80CB041188BFBE671 /* Entypo.ttf */; }; + 0FEEFBB461614579BBB4436E /* libRNSentry.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 88E7916103194ED38839F229 /* libRNSentry.a */; }; + 113F7AF7C7AF4E348B931A76 /* libRNRandomBytes.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4A7CD30C32B7476AAFD7276B /* libRNRandomBytes.a */; }; + 11D1A2F320CAFA9E000508D9 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */; }; + 122F9192CF8E45C2989EB8AB /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 756A0E83EE214C08AC02B267 /* MaterialIcons.ttf */; }; 133E29F31AD74F7200F7D852 /* libRCTLinking.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C398B91ACF4ADC00677621 /* libRCTLinking.a */; }; 139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139105C11AF99BAD00B5F7CC /* libRCTSettings.a */; }; 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139FDEF41B06529B00C62182 /* libRCTWebSocket.a */; }; @@ -27,10 +33,7 @@ 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 140ED2AC1D01E1AD002B40FF /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; 146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; - 1EF9306F31DC4D469F615F52 /* libReactNativePermissions.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9FF3B2695A6A43B39CE4D2AF /* libReactNativePermissions.a */; }; - 228DCD6BAF1B4DF181C5A307 /* libRNRate.a in Frameworks */ = {isa = PBXBuildFile; fileRef = ED0418953CCE4F4FA0E0E60F /* libRNRate.a */; }; - 22F536E307DB4FBCB00DC76B /* libRNDeviceInfo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2ADB5553EACB44579700D6D4 /* libRNDeviceInfo.a */; }; - 2804B7DB54084F54A1C28DC6 /* Feather.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 51A88773DE2A456AA13E1814 /* Feather.ttf */; }; + 227E73C8585D407B918853C1 /* libRNSVG-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = EE42F14225744494A308B85E /* libRNSVG-tvOS.a */; }; 2D02E4BC1E0B4A80006451C7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; @@ -42,39 +45,37 @@ 2D02E4C71E0B4AEC006451C7 /* libRCTText-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3E941DF850E9000B6D8A /* libRCTText-tvOS.a */; }; 2D02E4C81E0B4AEC006451C7 /* libRCTWebSocket-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3E991DF850E9000B6D8A /* libRCTWebSocket-tvOS.a */; }; 2D16E6881FA4F8E400B85C8A /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2D16E6891FA4F8E400B85C8A /* libReact.a */; }; - 2DA69FD4D6264094A3ABE0F4 /* libRCTGoogleAnalyticsBridge.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 8CF3D00F82534DE796D11610 /* libRCTGoogleAnalyticsBridge.a */; }; 2DCD954D1E0B4F2C00145EB5 /* BlueWalletTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* BlueWalletTests.m */; }; 2DF0FFEE2056DD460020B375 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3EA31DF850E9000B6D8A /* libReact.a */; }; - 3ED26B1105834E44AECC99CE /* libRNRandomBytes-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4B0661D5EE994C5887A656CC /* libRNRandomBytes-tvOS.a */; }; - 4A9494D3A1E04115B6F7D0D4 /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1B3AD816E1A646799CA4E452 /* Ionicons.ttf */; }; - 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */; }; - 6A95349CF0194548A175076B /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = B5DED491BF6C49AE8AC4F530 /* Entypo.ttf */; }; - 6FEBC8E7AA7D4744A2EEE87B /* libRNGestureHandler.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 01B7B7DF17B84765BE45F7F1 /* libRNGestureHandler.a */; }; - 79A0163DC7B34D1D8E4B6944 /* libRNSVG-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6553F26980BC47409FFB0F7C /* libRNSVG-tvOS.a */; }; - 7C1B264BF28B44C29BA00262 /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 5ED20A6C018043AE8185DD19 /* EvilIcons.ttf */; }; - 7C76B2A54AF3405FB041001E /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 9BD18677AAD543C79A7CB577 /* FontAwesome.ttf */; }; - 7C83851C74EC41958D6AE8C6 /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = D914576230A34EF598917FA9 /* Zocial.ttf */; }; + 4C6BE27DFEAA4A408DB03E56 /* libRNRandomBytes-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 78DF4F1B869947EAA3239546 /* libRNRandomBytes-tvOS.a */; }; + 5586C1585BA44EA6B545574A /* libBVLinearGradient.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4B0E4BE60376436EB155BEFB /* libBVLinearGradient.a */; }; + 5C0748AF12B5475183E670DA /* libRNVectorIcons-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = EA20083B9DCA4F2D80ED8730 /* libRNVectorIcons-tvOS.a */; }; + 5DAA10F29B7A408592E8C43F /* libsqlite3.0.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = BC0445653C29416DBF1BC823 /* libsqlite3.0.tbd */; }; + 66CF1719F73A4067A3C4EE18 /* libRNDeviceInfo-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D9C0D580C6B043AFBDD35884 /* libRNDeviceInfo-tvOS.a */; }; + 74A59188BE6D47FBA7F10AA7 /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 19F54CF3B7EA447486B1580C /* Zocial.ttf */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; - 96CC4BF79B174A478DF9C378 /* libRNVectorIcons-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CC4FCEA18F7E4033B6EF3D70 /* libRNVectorIcons-tvOS.a */; }; - 9F810B06D93D45B983F70B74 /* libRNSentry.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B5A6242DF4B645AAB539D2E4 /* libRNSentry.a */; }; - A00EA31D54E74AB4BABF8755 /* FontAwesome5_Brands.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 4C1AD00A4FDD42BEB62AFCF5 /* FontAwesome5_Brands.ttf */; }; - A2C00245B747440ABEB7D316 /* libRNCWebView.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 81EDDF247D484BC38EBCE565 /* libRNCWebView.a */; }; - A89DFA8A97B642D0AFD63AA2 /* libRNDeviceInfo-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 96C3F4E26841456EBF625D82 /* libRNDeviceInfo-tvOS.a */; }; + 873665C61F2F4689BF376440 /* libRNCamera.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6AF3CB5617DC43DC988162A6 /* libRNCamera.a */; }; + 88F4BE5F5AB947C3A36156D8 /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = DFE9C685977A46399D13B25C /* EvilIcons.ttf */; }; + 8BCBCB6511CE402088217A4F /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CEC5BDCD7ADA4318B8ED1D00 /* Foundation.ttf */; }; + 9818EEC1EFCF4CF9B94D7B00 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 16E6FB36AB7344F990105943 /* SystemConfiguration.framework */; }; + 985F870D88324026B44EF399 /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = F502E57F4DA54127A84DDAC1 /* SimpleLineIcons.ttf */; }; + 9CAE85C66891408D8F954796 /* libRNFS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 55B51FEAD82B40C5A9599130 /* libRNFS.a */; }; + A1C6AA1F146D4BBEA120BA8D /* FontAwesome5_Brands.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 8766FB3BE0C94260B1A99F94 /* FontAwesome5_Brands.ttf */; }; + A38676B5C8FF402E96FE0D8B /* libRCTWKWebView.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 30B8249F5D4448859D5116E2 /* libRCTWKWebView.a */; }; ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */; }; - B86E02D094DF455C990432D2 /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BD7B6C6FFF1E4646860703CA /* Foundation.ttf */; }; - C031BDE1E9544216A73A4321 /* libRNSVG.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6037CD1CCED34A7E980149E6 /* libRNSVG.a */; }; - CB65331B95F8467390AC8BF0 /* libRNVectorIcons.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F84697F33A394B419D56ED30 /* libRNVectorIcons.a */; }; - D37B51DB221D47B7996BE00D /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = F9FC88F4A85F40E9ABACACB9 /* Octicons.ttf */; }; - E276BE46B82249E1B88A99C8 /* libsqlite3.0.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 2DD69D8473C341528160682A /* libsqlite3.0.tbd */; }; - E4BBBC2D6D394E89B99A5C16 /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = D124361914C041219D903C3D /* SimpleLineIcons.ttf */; }; - E98E21D32735429C8E630B54 /* AntDesign.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 97EF095ACCA1462FA6012B97 /* AntDesign.ttf */; }; - EA537EBFD04A4EEBA3D7166F /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6CCDBD1516FF4AD492C1226C /* SystemConfiguration.framework */; }; - EDC6FF8621D64E31924EDC57 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = C2433A8567374E78ACA76F08 /* libz.tbd */; }; - F0182C8D1F194D66AA25FCFC /* libBVLinearGradient.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B2AB1C624E24C1BA95FBFED /* libBVLinearGradient.a */; }; - F439E4EEAE42446B8AE33E3F /* libRNCamera.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3F5B1CA51964493093282D8E /* libRNCamera.a */; }; - F6AA297664414342AC23B529 /* libRNFS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F9F01E9C22C243A9AB48A90A /* libRNFS.a */; }; - F97F051969164CCBA5336FC2 /* libRNRandomBytes.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 907C87020BD04956A5253DEB /* libRNRandomBytes.a */; }; - FDE69393B0DE46149DDB7E3C /* FontAwesome5_Solid.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C0708F2D346B415C84383510 /* FontAwesome5_Solid.ttf */; }; + AE5BE0616EF644D2A8583E16 /* libRNSVG.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C0166BDF81FA4A2F81702194 /* libRNSVG.a */; }; + B20D291028BA4442B963F109 /* libRNSentry-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0338C70E30CD4BF394871601 /* libRNSentry-tvOS.a */; }; + B414BE14BACE483F85247A1D /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = EAB6EE282B654B6594C228BB /* Ionicons.ttf */; }; + B483C32E8B92447B9922637A /* libReactNativePermissions.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F0D4F26EFC4864993EA274 /* libReactNativePermissions.a */; }; + B49A054BB8E743D59474EA95 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D52BC1ADE4C742FEBAB59A5A /* CoreData.framework */; }; + B56DD1A390C0411AA6B033C1 /* AntDesign.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 050A5C238226461DB5C131FD /* AntDesign.ttf */; }; + B617E79B06774815997F5DC8 /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = E35B9F897A0C4DF6A88E08ED /* FontAwesome.ttf */; }; + C0CC1B295A544678A63CBD24 /* Feather.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A30C5D61F27B4EB0A5FA1098 /* Feather.ttf */; }; + CC7A1851EAB14457B1769BB8 /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C43A4D44551E47BCA6853B4D /* Octicons.ttf */; }; + CD0F1C511C6E4687B751EA9F /* libRNRate.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 854C34D4A47D447999953B24 /* libRNRate.a */; }; + D6EE754729E340309EE93251 /* libRNGestureHandler.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BD9F9D46DD7F4D56AC6BB596 /* libRNGestureHandler.a */; }; + F26E5C3CC3CC4D4CA34E6B29 /* libRNVectorIcons.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 18325ED98FD94340BB50926C /* libRNVectorIcons.a */; }; + FA33D783D8B54DFC9BDDE59E /* libRNDeviceInfo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 708F724FA552428BAEB980DB /* libRNDeviceInfo.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -351,152 +352,152 @@ remoteGlobalIDString = 358F4ED71D1E81A9004DF814; remoteInfo = RCTBlob; }; - B48F20F5219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B8F521F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 87703C68A1014D0A8FDBAD00 /* RCTGoogleAnalyticsBridge.xcodeproj */; + containerPortal = BC4E5B046FEB46BDB96ED877 /* BVLinearGradient.xcodeproj */; proxyType = 2; - remoteGlobalIDString = A79185C61C30694E001236A6; - remoteInfo = RCTGoogleAnalyticsBridge; - }; - B48F20F8219E8A0800BA10A8 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = FDDDD64DF1014CDE82A5D7D9 /* ReactNativePermissions.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 9D23B34F1C767B80008B4819; - remoteInfo = ReactNativePermissions; + remoteGlobalIDString = 134814201AA4EA6300B7C361; + remoteInfo = BVLinearGradient; }; - B48F20FF219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B8F721F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 917199AF101244F5A9119C8C /* RNDeviceInfo.xcodeproj */; + containerPortal = BC4E5B046FEB46BDB96ED877 /* BVLinearGradient.xcodeproj */; proxyType = 2; - remoteGlobalIDString = DA5891D81BA9A9FC002B4DB2; - remoteInfo = RNDeviceInfo; + remoteGlobalIDString = 64AA15081EF7F30100718508; + remoteInfo = "BVLinearGradient-tvOS"; }; - B48F2101219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B8FA21F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 917199AF101244F5A9119C8C /* RNDeviceInfo.xcodeproj */; + containerPortal = 6C5AB6AEDF75403E99A6AA17 /* RCTGoogleAnalyticsBridge.xcodeproj */; proxyType = 2; - remoteGlobalIDString = E72EC1401F7ABB5A0001BC90; - remoteInfo = "RNDeviceInfo-tvOS"; + remoteGlobalIDString = A79185C61C30694E001236A6; + remoteInfo = RCTGoogleAnalyticsBridge; }; - B48F2104219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B8FD21F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = CA35307CBA624D81A15815D2 /* RNReactNativeHapticFeedback.xcodeproj */; + containerPortal = F7152926CD0F4C90BE0A6980 /* ReactNativePermissions.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RNReactNativeHapticFeedback; + remoteGlobalIDString = 9D23B34F1C767B80008B4819; + remoteInfo = ReactNativePermissions; }; - B48F210A219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B90021F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = DDABC336B13E47398005736D /* RNSentry.xcodeproj */; + containerPortal = 3853DFD4C6D44BB8B17AEDF0 /* RNCamera.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RNSentry; + remoteGlobalIDString = 4107012F1ACB723B00C6AA39; + remoteInfo = RNCamera; }; - B48F210E219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B90421F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = C88A48E1C11140418478EC7F /* RNSVG.xcodeproj */; + containerPortal = 03D541ACCDD2451D9971158E /* RNDeviceInfo.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 0CF68AC11AF0540F00FF9E5C; - remoteInfo = RNSVG; + remoteGlobalIDString = DA5891D81BA9A9FC002B4DB2; + remoteInfo = RNDeviceInfo; }; - B48F2110219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B90621F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = C88A48E1C11140418478EC7F /* RNSVG.xcodeproj */; + containerPortal = 03D541ACCDD2451D9971158E /* RNDeviceInfo.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 94DDAC5C1F3D024300EED511; - remoteInfo = "RNSVG-tvOS"; + remoteGlobalIDString = E72EC1401F7ABB5A0001BC90; + remoteInfo = "RNDeviceInfo-tvOS"; }; - B48F2114219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B90A21F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = CF14D1AA406D4EDC85D3A61F /* RNVectorIcons.xcodeproj */; + containerPortal = CDBF3F7F227D42128D305BA0 /* RNFS.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 5DBEB1501B18CEA900B34395; - remoteInfo = RNVectorIcons; + remoteGlobalIDString = F12AFB9B1ADAF8F800E0535D; + remoteInfo = RNFS; }; - B48F2116219E8A0800BA10A8 /* PBXContainerItemProxy */ = { + B4C5B90C21F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = CF14D1AA406D4EDC85D3A61F /* RNVectorIcons.xcodeproj */; + containerPortal = CDBF3F7F227D42128D305BA0 /* RNFS.xcodeproj */; proxyType = 2; - remoteGlobalIDString = A39873CE1EA65EE60051E01A; - remoteInfo = "RNVectorIcons-tvOS"; + remoteGlobalIDString = 6456441F1EB8DA9100672408; + remoteInfo = "RNFS-tvOS"; }; - B48F2161219E918C00BA10A8 /* PBXContainerItemProxy */ = { + B4C5B90F21F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 5863F2E7B71740E3940BABD9 /* BVLinearGradient.xcodeproj */; + containerPortal = 97E59C536A894751BC70A472 /* RNGestureHandler.xcodeproj */; proxyType = 2; remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = BVLinearGradient; - }; - B48F2163219E918C00BA10A8 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 5863F2E7B71740E3940BABD9 /* BVLinearGradient.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 64AA15081EF7F30100718508; - remoteInfo = "BVLinearGradient-tvOS"; + remoteInfo = RNGestureHandler; }; - B48F21E5219FC5E700BA10A8 /* PBXContainerItemProxy */ = { + B4C5B91321F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = DB512F57589B4F8A89CBE2AB /* RNRandomBytes.xcodeproj */; + containerPortal = 2AA985ED11E446A4A8ADAAA5 /* RNRandomBytes.xcodeproj */; proxyType = 2; remoteGlobalIDString = 73EEC9391BFE4B1D00D468EB; remoteInfo = RNRandomBytes; }; - B48F21E7219FC5E700BA10A8 /* PBXContainerItemProxy */ = { + B4C5B91521F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = DB512F57589B4F8A89CBE2AB /* RNRandomBytes.xcodeproj */; + containerPortal = 2AA985ED11E446A4A8ADAAA5 /* RNRandomBytes.xcodeproj */; proxyType = 2; remoteGlobalIDString = 163CDE4E2087CAD3001065FB; remoteInfo = "RNRandomBytes-tvOS"; }; - B4CE842321B4C0DD00E2E2A3 /* PBXContainerItemProxy */ = { + B4C5B91821F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = C0B6F9440F69425886845061 /* RNFS.xcodeproj */; + containerPortal = C817BBCA1879484C90C8FDA4 /* RNRate.xcodeproj */; proxyType = 2; - remoteGlobalIDString = F12AFB9B1ADAF8F800E0535D; - remoteInfo = RNFS; + remoteGlobalIDString = 134814201AA4EA6300B7C361; + remoteInfo = RNRate; }; - B4CE842521B4C0DD00E2E2A3 /* PBXContainerItemProxy */ = { + B4C5B91B21F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = C0B6F9440F69425886845061 /* RNFS.xcodeproj */; + containerPortal = 0AD3549D2DDE42C694D6338C /* RNReactNativeHapticFeedback.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 6456441F1EB8DA9100672408; - remoteInfo = "RNFS-tvOS"; + remoteGlobalIDString = 134814201AA4EA6300B7C361; + remoteInfo = RNReactNativeHapticFeedback; }; - B4F3B46D21A7D63400548A69 /* PBXContainerItemProxy */ = { + B4C5B91F21F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = DAC908621D184867839621FE /* RNGestureHandler.xcodeproj */; + containerPortal = 4A025859F71B464AA9100C41 /* RNSentry.xcodeproj */; proxyType = 2; remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RNGestureHandler; + remoteInfo = RNSentry; }; - B4F3B4F421A906D000548A69 /* PBXContainerItemProxy */ = { + B4C5B92121F2DF3000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 7F7225A9F01C4785B27FF490 /* RNCamera.xcodeproj */; + containerPortal = 4A025859F71B464AA9100C41 /* RNSentry.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 4107012F1ACB723B00C6AA39; - remoteInfo = RNCamera; + remoteGlobalIDString = 274692C321B4414400BF91A8; + remoteInfo = "RNSentry-tvOS"; }; - B4F7F05921E8449B00AFD87C /* PBXContainerItemProxy */ = { + B4C5B97421F2E23E00A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D6051C6440444360BD29AFE4 /* RNRate.xcodeproj */; + containerPortal = 6A53833BB9EC4CCEABBA5978 /* RNSVG.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RNRate; + remoteGlobalIDString = 0CF68AC11AF0540F00FF9E5C; + remoteInfo = RNSVG; }; - B4F7F0AB21E9991000AFD87C /* PBXContainerItemProxy */ = { + B4C5B97621F2E23E00A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = DDABC336B13E47398005736D /* RNSentry.xcodeproj */; + containerPortal = 6A53833BB9EC4CCEABBA5978 /* RNSVG.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 274692C321B4414400BF91A8; - remoteInfo = "RNSentry-tvOS"; + remoteGlobalIDString = 94DDAC5C1F3D024300EED511; + remoteInfo = "RNSVG-tvOS"; }; - B4F7F0B421E99B5B00AFD87C /* PBXContainerItemProxy */ = { + B4C5BA2321F2E29000A845C4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 642C144246BF4C3EB350442F /* RNCWebView.xcodeproj */; + containerPortal = 4E7DA1BD76504DF686A0EDFE /* RNVectorIcons.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RNCWebView; + remoteGlobalIDString = 5DBEB1501B18CEA900B34395; + remoteInfo = RNVectorIcons; + }; + B4C5BA2521F2E29000A845C4 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 4E7DA1BD76504DF686A0EDFE /* RNVectorIcons.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = A39873CE1EA65EE60051E01A; + remoteInfo = "RNVectorIcons-tvOS"; + }; + B4C5BAB521F3708C00A845C4 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 79AAC92A715841209904022D /* RCTWKWebView.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 0974579A1D2A440A000D9368; + remoteInfo = RCTWKWebView; }; /* End PBXContainerItemProxy section */ @@ -510,8 +511,12 @@ 00E356EE1AD99517003FC87E /* BlueWalletTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = BlueWalletTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 00E356F21AD99517003FC87E /* BlueWalletTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = BlueWalletTests.m; sourceTree = ""; }; - 01B7B7DF17B84765BE45F7F1 /* libRNGestureHandler.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNGestureHandler.a; sourceTree = ""; }; - 0A6C0341E36446BE93133B26 /* libRNSensors.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNSensors.a; sourceTree = ""; }; + 0338C70E30CD4BF394871601 /* libRNSentry-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNSentry-tvOS.a"; sourceTree = ""; }; + 03D541ACCDD2451D9971158E /* RNDeviceInfo.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNDeviceInfo.xcodeproj; path = "../node_modules/react-native-device-info/ios/RNDeviceInfo.xcodeproj"; sourceTree = ""; }; + 050A5C238226461DB5C131FD /* AntDesign.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = AntDesign.ttf; path = "../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf"; sourceTree = ""; }; + 06537407AE1149A291D947A6 /* libRNReactNativeHapticFeedback.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNReactNativeHapticFeedback.a; sourceTree = ""; }; + 0AD3549D2DDE42C694D6338C /* RNReactNativeHapticFeedback.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNReactNativeHapticFeedback.xcodeproj; path = "../node_modules/react-native-haptic-feedback/ios/RNReactNativeHapticFeedback.xcodeproj"; sourceTree = ""; }; + 0AE2A7819A5F44EA87540B0F /* libRCTGoogleAnalyticsBridge.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRCTGoogleAnalyticsBridge.a; sourceTree = ""; }; 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTSettings.xcodeproj; path = "../node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj"; sourceTree = ""; }; 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWebSocket.xcodeproj; path = "../node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* BlueWallet.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = BlueWallet.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -522,65 +527,61 @@ 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = BlueWallet/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = BlueWallet/main.m; sourceTree = ""; }; 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; - 1B3AD816E1A646799CA4E452 /* Ionicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Ionicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf"; sourceTree = ""; }; - 29112C2F0D8340B3A3196DED /* CoreData.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; - 2ADB5553EACB44579700D6D4 /* libRNDeviceInfo.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNDeviceInfo.a; sourceTree = ""; }; + 166E13BC37B249E392C6B2F9 /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; + 16E6FB36AB7344F990105943 /* SystemConfiguration.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; + 18325ED98FD94340BB50926C /* libRNVectorIcons.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNVectorIcons.a; sourceTree = ""; }; + 19F54CF3B7EA447486B1580C /* Zocial.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Zocial.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = ""; }; + 2AA985ED11E446A4A8ADAAA5 /* RNRandomBytes.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNRandomBytes.xcodeproj; path = "../node_modules/react-native-randombytes/RNRandomBytes.xcodeproj"; sourceTree = ""; }; 2D02E47B1E0B4A5D006451C7 /* BlueWallet-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "BlueWallet-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 2D02E4901E0B4A5D006451C7 /* BlueWallet-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "BlueWallet-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; 2D16E6891FA4F8E400B85C8A /* libReact.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libReact.a; sourceTree = BUILT_PRODUCTS_DIR; }; - 2DD69D8473C341528160682A /* libsqlite3.0.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libsqlite3.0.tbd; path = usr/lib/libsqlite3.0.tbd; sourceTree = SDKROOT; }; - 3B2AB1C624E24C1BA95FBFED /* libBVLinearGradient.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libBVLinearGradient.a; sourceTree = ""; }; - 3F5B1CA51964493093282D8E /* libRNCamera.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNCamera.a; sourceTree = ""; }; - 4B0661D5EE994C5887A656CC /* libRNRandomBytes-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNRandomBytes-tvOS.a"; sourceTree = ""; }; - 4C1AD00A4FDD42BEB62AFCF5 /* FontAwesome5_Brands.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Brands.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf"; sourceTree = ""; }; - 51A88773DE2A456AA13E1814 /* Feather.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Feather.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Feather.ttf"; sourceTree = ""; }; - 5863F2E7B71740E3940BABD9 /* BVLinearGradient.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = BVLinearGradient.xcodeproj; path = "../node_modules/react-native-linear-gradient/BVLinearGradient.xcodeproj"; sourceTree = ""; }; + 30B8249F5D4448859D5116E2 /* libRCTWKWebView.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRCTWKWebView.a; sourceTree = ""; }; + 3853DFD4C6D44BB8B17AEDF0 /* RNCamera.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNCamera.xcodeproj; path = "../node_modules/react-native-camera/ios/RNCamera.xcodeproj"; sourceTree = ""; }; + 3C108365C46F43B981AA76A2 /* FontAwesome5_Regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Regular.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf"; sourceTree = ""; }; + 4A025859F71B464AA9100C41 /* RNSentry.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNSentry.xcodeproj; path = "../node_modules/react-native-sentry/ios/RNSentry.xcodeproj"; sourceTree = ""; }; + 4A7CD30C32B7476AAFD7276B /* libRNRandomBytes.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNRandomBytes.a; sourceTree = ""; }; + 4B0E4BE60376436EB155BEFB /* libBVLinearGradient.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libBVLinearGradient.a; sourceTree = ""; }; + 4E7DA1BD76504DF686A0EDFE /* RNVectorIcons.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNVectorIcons.xcodeproj; path = "../node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj"; sourceTree = ""; }; + 55B51FEAD82B40C5A9599130 /* libRNFS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNFS.a; sourceTree = ""; }; 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAnimation.xcodeproj; path = "../node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = ""; }; - 5ED20A6C018043AE8185DD19 /* EvilIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = EvilIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf"; sourceTree = ""; }; - 6037CD1CCED34A7E980149E6 /* libRNSVG.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNSVG.a; sourceTree = ""; }; - 642C144246BF4C3EB350442F /* RNCWebView.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNCWebView.xcodeproj; path = "../node_modules/react-native-webview/ios/RNCWebView.xcodeproj"; sourceTree = ""; }; - 6553F26980BC47409FFB0F7C /* libRNSVG-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNSVG-tvOS.a"; sourceTree = ""; }; - 6CCDBD1516FF4AD492C1226C /* SystemConfiguration.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; + 5F3DCC24027F4B1EAACBAE3C /* RNCWebView.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNCWebView.xcodeproj; path = "../node_modules/react-native-webview/ios/RNCWebView.xcodeproj"; sourceTree = ""; }; + 6A53833BB9EC4CCEABBA5978 /* RNSVG.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNSVG.xcodeproj; path = "../node_modules/react-native-svg/ios/RNSVG.xcodeproj"; sourceTree = ""; }; + 6AF3CB5617DC43DC988162A6 /* libRNCamera.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNCamera.a; sourceTree = ""; }; + 6C5AB6AEDF75403E99A6AA17 /* RCTGoogleAnalyticsBridge.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RCTGoogleAnalyticsBridge.xcodeproj; path = "../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/RCTGoogleAnalyticsBridge.xcodeproj"; sourceTree = ""; }; + 708F724FA552428BAEB980DB /* libRNDeviceInfo.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNDeviceInfo.a; sourceTree = ""; }; + 718E12C659254420BF9D3F35 /* libRNCWebView.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNCWebView.a; sourceTree = ""; }; + 72F0D4F26EFC4864993EA274 /* libReactNativePermissions.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libReactNativePermissions.a; sourceTree = ""; }; + 756A0E83EE214C08AC02B267 /* MaterialIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = MaterialIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf"; sourceTree = ""; }; 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; - 7F7225A9F01C4785B27FF490 /* RNCamera.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNCamera.xcodeproj; path = "../node_modules/react-native-camera/ios/RNCamera.xcodeproj"; sourceTree = ""; }; - 81EDDF247D484BC38EBCE565 /* libRNCWebView.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNCWebView.a; sourceTree = ""; }; + 78DF4F1B869947EAA3239546 /* libRNRandomBytes-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNRandomBytes-tvOS.a"; sourceTree = ""; }; + 79AAC92A715841209904022D /* RCTWKWebView.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RCTWKWebView.xcodeproj; path = "../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView.xcodeproj"; sourceTree = ""; }; 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; - 87703C68A1014D0A8FDBAD00 /* RCTGoogleAnalyticsBridge.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RCTGoogleAnalyticsBridge.xcodeproj; path = "../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/RCTGoogleAnalyticsBridge.xcodeproj"; sourceTree = ""; }; - 8C242FC657494F7FB41321D9 /* libRNAmplitudeSDK.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNAmplitudeSDK.a; sourceTree = ""; }; - 8CF3D00F82534DE796D11610 /* libRCTGoogleAnalyticsBridge.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRCTGoogleAnalyticsBridge.a; sourceTree = ""; }; - 9079CACA902E4AAA91711414 /* FontAwesome5_Regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Regular.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf"; sourceTree = ""; }; - 907C87020BD04956A5253DEB /* libRNRandomBytes.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNRandomBytes.a; sourceTree = ""; }; - 917199AF101244F5A9119C8C /* RNDeviceInfo.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNDeviceInfo.xcodeproj; path = "../node_modules/react-native-device-info/ios/RNDeviceInfo.xcodeproj"; sourceTree = ""; }; - 96C3F4E26841456EBF625D82 /* libRNDeviceInfo-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNDeviceInfo-tvOS.a"; sourceTree = ""; }; - 97EF095ACCA1462FA6012B97 /* AntDesign.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = AntDesign.ttf; path = "../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf"; sourceTree = ""; }; - 9BD18677AAD543C79A7CB577 /* FontAwesome.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf"; sourceTree = ""; }; - 9FF3B2695A6A43B39CE4D2AF /* libReactNativePermissions.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libReactNativePermissions.a; sourceTree = ""; }; + 854C34D4A47D447999953B24 /* libRNRate.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNRate.a; sourceTree = ""; }; + 85758216A4E74F649B4B1D83 /* FontAwesome5_Solid.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Solid.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf"; sourceTree = ""; }; + 8766FB3BE0C94260B1A99F94 /* FontAwesome5_Brands.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Brands.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf"; sourceTree = ""; }; + 88E7916103194ED38839F229 /* libRNSentry.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNSentry.a; sourceTree = ""; }; + 97E59C536A894751BC70A472 /* RNGestureHandler.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNGestureHandler.xcodeproj; path = "../node_modules/react-native-gesture-handler/ios/RNGestureHandler.xcodeproj"; sourceTree = ""; }; + A30C5D61F27B4EB0A5FA1098 /* Feather.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Feather.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Feather.ttf"; sourceTree = ""; }; ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTBlob.xcodeproj; path = "../node_modules/react-native/Libraries/Blob/RCTBlob.xcodeproj"; sourceTree = ""; }; - B5A6242DF4B645AAB539D2E4 /* libRNSentry.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNSentry.a; sourceTree = ""; }; - B5DED491BF6C49AE8AC4F530 /* Entypo.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Entypo.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Entypo.ttf"; sourceTree = ""; }; - BD7B6C6FFF1E4646860703CA /* Foundation.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Foundation.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Foundation.ttf"; sourceTree = ""; }; - C0708F2D346B415C84383510 /* FontAwesome5_Solid.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Solid.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf"; sourceTree = ""; }; - C0B6F9440F69425886845061 /* RNFS.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNFS.xcodeproj; path = "../node_modules/react-native-fs/RNFS.xcodeproj"; sourceTree = ""; }; - C2433A8567374E78ACA76F08 /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; - C88A48E1C11140418478EC7F /* RNSVG.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNSVG.xcodeproj; path = "../node_modules/react-native-svg/ios/RNSVG.xcodeproj"; sourceTree = ""; }; - C979953B425248FEA80F4F78 /* libRNReactNativeHapticFeedback.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNReactNativeHapticFeedback.a; sourceTree = ""; }; - CA35307CBA624D81A15815D2 /* RNReactNativeHapticFeedback.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNReactNativeHapticFeedback.xcodeproj; path = "../node_modules/react-native-haptic-feedback/ios/RNReactNativeHapticFeedback.xcodeproj"; sourceTree = ""; }; - CC4FCEA18F7E4033B6EF3D70 /* libRNVectorIcons-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNVectorIcons-tvOS.a"; sourceTree = ""; }; - CF14D1AA406D4EDC85D3A61F /* RNVectorIcons.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNVectorIcons.xcodeproj; path = "../node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj"; sourceTree = ""; }; - CF6354B616F54426BCA4AF79 /* MaterialIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = MaterialIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf"; sourceTree = ""; }; - D124361914C041219D903C3D /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = SimpleLineIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = ""; }; - D6051C6440444360BD29AFE4 /* RNRate.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNRate.xcodeproj; path = "../node_modules/react-native-rate/ios/RNRate.xcodeproj"; sourceTree = ""; }; - D914576230A34EF598917FA9 /* Zocial.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Zocial.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = ""; }; - DAC908621D184867839621FE /* RNGestureHandler.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNGestureHandler.xcodeproj; path = "../node_modules/react-native-gesture-handler/ios/RNGestureHandler.xcodeproj"; sourceTree = ""; }; - DB512F57589B4F8A89CBE2AB /* RNRandomBytes.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNRandomBytes.xcodeproj; path = "../node_modules/react-native-randombytes/RNRandomBytes.xcodeproj"; sourceTree = ""; }; - DDABC336B13E47398005736D /* RNSentry.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNSentry.xcodeproj; path = "../node_modules/react-native-sentry/ios/RNSentry.xcodeproj"; sourceTree = ""; }; - ED0418953CCE4F4FA0E0E60F /* libRNRate.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNRate.a; sourceTree = ""; }; - F01CC934C46A40A19F1F8861 /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = MaterialCommunityIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf"; sourceTree = ""; }; - F13B02B9DD2A4068B8201EAB /* libRCTCamera.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRCTCamera.a; sourceTree = ""; }; - F84697F33A394B419D56ED30 /* libRNVectorIcons.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNVectorIcons.a; sourceTree = ""; }; - F9F01E9C22C243A9AB48A90A /* libRNFS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNFS.a; sourceTree = ""; }; - F9FC88F4A85F40E9ABACACB9 /* Octicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Octicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = ""; }; - FDDDD64DF1014CDE82A5D7D9 /* ReactNativePermissions.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = ReactNativePermissions.xcodeproj; path = "../node_modules/react-native-permissions/ios/ReactNativePermissions.xcodeproj"; sourceTree = ""; }; + BC0445653C29416DBF1BC823 /* libsqlite3.0.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libsqlite3.0.tbd; path = usr/lib/libsqlite3.0.tbd; sourceTree = SDKROOT; }; + BC4E5B046FEB46BDB96ED877 /* BVLinearGradient.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = BVLinearGradient.xcodeproj; path = "../node_modules/react-native-linear-gradient/BVLinearGradient.xcodeproj"; sourceTree = ""; }; + BD9F9D46DD7F4D56AC6BB596 /* libRNGestureHandler.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNGestureHandler.a; sourceTree = ""; }; + C0166BDF81FA4A2F81702194 /* libRNSVG.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNSVG.a; sourceTree = ""; }; + C43A4D44551E47BCA6853B4D /* Octicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Octicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = ""; }; + C817BBCA1879484C90C8FDA4 /* RNRate.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNRate.xcodeproj; path = "../node_modules/react-native-rate/ios/RNRate.xcodeproj"; sourceTree = ""; }; + CC1C418B6E464077A8CB0103 /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = MaterialCommunityIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf"; sourceTree = ""; }; + CDBF3F7F227D42128D305BA0 /* RNFS.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNFS.xcodeproj; path = "../node_modules/react-native-fs/RNFS.xcodeproj"; sourceTree = ""; }; + CEC5BDCD7ADA4318B8ED1D00 /* Foundation.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Foundation.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Foundation.ttf"; sourceTree = ""; }; + D52BC1ADE4C742FEBAB59A5A /* CoreData.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; + D9C0D580C6B043AFBDD35884 /* libRNDeviceInfo-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNDeviceInfo-tvOS.a"; sourceTree = ""; }; + DFE9C685977A46399D13B25C /* EvilIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = EvilIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf"; sourceTree = ""; }; + E35B9F897A0C4DF6A88E08ED /* FontAwesome.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf"; sourceTree = ""; }; + E4CFF6A80CB041188BFBE671 /* Entypo.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Entypo.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Entypo.ttf"; sourceTree = ""; }; + EA20083B9DCA4F2D80ED8730 /* libRNVectorIcons-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNVectorIcons-tvOS.a"; sourceTree = ""; }; + EAB6EE282B654B6594C228BB /* Ionicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Ionicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf"; sourceTree = ""; }; + EE42F14225744494A308B85E /* libRNSVG-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNSVG-tvOS.a"; sourceTree = ""; }; + F502E57F4DA54127A84DDAC1 /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = SimpleLineIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = ""; }; + F7152926CD0F4C90BE0A6980 /* ReactNativePermissions.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = ReactNativePermissions.xcodeproj; path = "../node_modules/react-native-permissions/ios/ReactNativePermissions.xcodeproj"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -597,9 +598,8 @@ buildActionMask = 2147483647; files = ( ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */, - 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */, + 11D1A2F320CAFA9E000508D9 /* libRCTAnimation.a in Frameworks */, 146834051AC3E58100842450 /* libReact.a in Frameworks */, - 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */, 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */, 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */, 00C302E81ABCBA2D00DB3ED1 /* libRCTImage.a in Frameworks */, @@ -609,24 +609,24 @@ 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */, 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */, 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */, - 9F810B06D93D45B983F70B74 /* libRNSentry.a in Frameworks */, - EDC6FF8621D64E31924EDC57 /* libz.tbd in Frameworks */, - 22F536E307DB4FBCB00DC76B /* libRNDeviceInfo.a in Frameworks */, - 2DA69FD4D6264094A3ABE0F4 /* libRCTGoogleAnalyticsBridge.a in Frameworks */, - 0E9157D251334CFC800750D9 /* CoreData.framework in Frameworks */, - EA537EBFD04A4EEBA3D7166F /* SystemConfiguration.framework in Frameworks */, - E276BE46B82249E1B88A99C8 /* libsqlite3.0.tbd in Frameworks */, - 050943495F6A45DF961C7596 /* libRNReactNativeHapticFeedback.a in Frameworks */, - 1EF9306F31DC4D469F615F52 /* libReactNativePermissions.a in Frameworks */, - C031BDE1E9544216A73A4321 /* libRNSVG.a in Frameworks */, - CB65331B95F8467390AC8BF0 /* libRNVectorIcons.a in Frameworks */, - F0182C8D1F194D66AA25FCFC /* libBVLinearGradient.a in Frameworks */, - F97F051969164CCBA5336FC2 /* libRNRandomBytes.a in Frameworks */, - 6FEBC8E7AA7D4744A2EEE87B /* libRNGestureHandler.a in Frameworks */, - F439E4EEAE42446B8AE33E3F /* libRNCamera.a in Frameworks */, - F6AA297664414342AC23B529 /* libRNFS.a in Frameworks */, - A2C00245B747440ABEB7D316 /* libRNCWebView.a in Frameworks */, - 228DCD6BAF1B4DF181C5A307 /* libRNRate.a in Frameworks */, + 873665C61F2F4689BF376440 /* libRNCamera.a in Frameworks */, + FA33D783D8B54DFC9BDDE59E /* libRNDeviceInfo.a in Frameworks */, + 9CAE85C66891408D8F954796 /* libRNFS.a in Frameworks */, + D6EE754729E340309EE93251 /* libRNGestureHandler.a in Frameworks */, + 05182DA8005A401C8C0E6ABF /* libRCTGoogleAnalyticsBridge.a in Frameworks */, + B49A054BB8E743D59474EA95 /* CoreData.framework in Frameworks */, + 9818EEC1EFCF4CF9B94D7B00 /* SystemConfiguration.framework in Frameworks */, + 055ADE6CC61141EDBA8FAEAA /* libz.tbd in Frameworks */, + 5DAA10F29B7A408592E8C43F /* libsqlite3.0.tbd in Frameworks */, + 078BF061C6364525ADBC9801 /* libRNReactNativeHapticFeedback.a in Frameworks */, + 5586C1585BA44EA6B545574A /* libBVLinearGradient.a in Frameworks */, + B483C32E8B92447B9922637A /* libReactNativePermissions.a in Frameworks */, + 113F7AF7C7AF4E348B931A76 /* libRNRandomBytes.a in Frameworks */, + CD0F1C511C6E4687B751EA9F /* libRNRate.a in Frameworks */, + 0FEEFBB461614579BBB4436E /* libRNSentry.a in Frameworks */, + AE5BE0616EF644D2A8583E16 /* libRNSVG.a in Frameworks */, + F26E5C3CC3CC4D4CA34E6B29 /* libRNVectorIcons.a in Frameworks */, + A38676B5C8FF402E96FE0D8B /* libRCTWKWebView.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -642,10 +642,11 @@ 2D02E4C61E0B4AEC006451C7 /* libRCTSettings-tvOS.a in Frameworks */, 2D02E4C71E0B4AEC006451C7 /* libRCTText-tvOS.a in Frameworks */, 2D02E4C81E0B4AEC006451C7 /* libRCTWebSocket-tvOS.a in Frameworks */, - A89DFA8A97B642D0AFD63AA2 /* libRNDeviceInfo-tvOS.a in Frameworks */, - 79A0163DC7B34D1D8E4B6944 /* libRNSVG-tvOS.a in Frameworks */, - 96CC4BF79B174A478DF9C378 /* libRNVectorIcons-tvOS.a in Frameworks */, - 3ED26B1105834E44AECC99CE /* libRNRandomBytes-tvOS.a in Frameworks */, + 66CF1719F73A4067A3C4EE18 /* libRNDeviceInfo-tvOS.a in Frameworks */, + 4C6BE27DFEAA4A408DB03E56 /* libRNRandomBytes-tvOS.a in Frameworks */, + B20D291028BA4442B963F109 /* libRNSentry-tvOS.a in Frameworks */, + 227E73C8585D407B918853C1 /* libRNSVG-tvOS.a in Frameworks */, + 5C0748AF12B5475183E670DA /* libRNVectorIcons-tvOS.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -780,10 +781,10 @@ isa = PBXGroup; children = ( 2D16E6891FA4F8E400B85C8A /* libReact.a */, - C2433A8567374E78ACA76F08 /* libz.tbd */, - 29112C2F0D8340B3A3196DED /* CoreData.framework */, - 6CCDBD1516FF4AD492C1226C /* SystemConfiguration.framework */, - 2DD69D8473C341528160682A /* libsqlite3.0.tbd */, + D52BC1ADE4C742FEBAB59A5A /* CoreData.framework */, + 16E6FB36AB7344F990105943 /* SystemConfiguration.framework */, + 166E13BC37B249E392C6B2F9 /* libz.tbd */, + BC0445653C29416DBF1BC823 /* libsqlite3.0.tbd */, ); name = Frameworks; sourceTree = ""; @@ -797,28 +798,6 @@ name = Products; sourceTree = ""; }; - 5EFA168FDA4541DA9896D9C8 /* Resources */ = { - isa = PBXGroup; - children = ( - 97EF095ACCA1462FA6012B97 /* AntDesign.ttf */, - B5DED491BF6C49AE8AC4F530 /* Entypo.ttf */, - 5ED20A6C018043AE8185DD19 /* EvilIcons.ttf */, - 51A88773DE2A456AA13E1814 /* Feather.ttf */, - 9BD18677AAD543C79A7CB577 /* FontAwesome.ttf */, - 4C1AD00A4FDD42BEB62AFCF5 /* FontAwesome5_Brands.ttf */, - 9079CACA902E4AAA91711414 /* FontAwesome5_Regular.ttf */, - C0708F2D346B415C84383510 /* FontAwesome5_Solid.ttf */, - BD7B6C6FFF1E4646860703CA /* Foundation.ttf */, - 1B3AD816E1A646799CA4E452 /* Ionicons.ttf */, - F01CC934C46A40A19F1F8861 /* MaterialCommunityIcons.ttf */, - CF6354B616F54426BCA4AF79 /* MaterialIcons.ttf */, - F9FC88F4A85F40E9ABACACB9 /* Octicons.ttf */, - D124361914C041219D903C3D /* SimpleLineIcons.ttf */, - D914576230A34EF598917FA9 /* Zocial.ttf */, - ); - name = Resources; - sourceTree = ""; - }; 78C398B11ACF4ADC00677621 /* Products */ = { isa = PBXGroup; children = ( @@ -843,20 +822,21 @@ 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */, 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */, 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */, - DDABC336B13E47398005736D /* RNSentry.xcodeproj */, - 917199AF101244F5A9119C8C /* RNDeviceInfo.xcodeproj */, - 87703C68A1014D0A8FDBAD00 /* RCTGoogleAnalyticsBridge.xcodeproj */, - CA35307CBA624D81A15815D2 /* RNReactNativeHapticFeedback.xcodeproj */, - FDDDD64DF1014CDE82A5D7D9 /* ReactNativePermissions.xcodeproj */, - C88A48E1C11140418478EC7F /* RNSVG.xcodeproj */, - CF14D1AA406D4EDC85D3A61F /* RNVectorIcons.xcodeproj */, - 5863F2E7B71740E3940BABD9 /* BVLinearGradient.xcodeproj */, - DB512F57589B4F8A89CBE2AB /* RNRandomBytes.xcodeproj */, - DAC908621D184867839621FE /* RNGestureHandler.xcodeproj */, - 7F7225A9F01C4785B27FF490 /* RNCamera.xcodeproj */, - C0B6F9440F69425886845061 /* RNFS.xcodeproj */, - 642C144246BF4C3EB350442F /* RNCWebView.xcodeproj */, - D6051C6440444360BD29AFE4 /* RNRate.xcodeproj */, + 3853DFD4C6D44BB8B17AEDF0 /* RNCamera.xcodeproj */, + 03D541ACCDD2451D9971158E /* RNDeviceInfo.xcodeproj */, + CDBF3F7F227D42128D305BA0 /* RNFS.xcodeproj */, + 97E59C536A894751BC70A472 /* RNGestureHandler.xcodeproj */, + 6C5AB6AEDF75403E99A6AA17 /* RCTGoogleAnalyticsBridge.xcodeproj */, + 0AD3549D2DDE42C694D6338C /* RNReactNativeHapticFeedback.xcodeproj */, + BC4E5B046FEB46BDB96ED877 /* BVLinearGradient.xcodeproj */, + F7152926CD0F4C90BE0A6980 /* ReactNativePermissions.xcodeproj */, + 2AA985ED11E446A4A8ADAAA5 /* RNRandomBytes.xcodeproj */, + C817BBCA1879484C90C8FDA4 /* RNRate.xcodeproj */, + 4A025859F71B464AA9100C41 /* RNSentry.xcodeproj */, + 6A53833BB9EC4CCEABBA5978 /* RNSVG.xcodeproj */, + 4E7DA1BD76504DF686A0EDFE /* RNVectorIcons.xcodeproj */, + 79AAC92A715841209904022D /* RCTWKWebView.xcodeproj */, + 5F3DCC24027F4B1EAACBAE3C /* RNCWebView.xcodeproj */, ); name = Libraries; sourceTree = ""; @@ -878,8 +858,8 @@ 00E356EF1AD99517003FC87E /* BlueWalletTests */, 83CBBA001A601CBA00E9B192 /* Products */, 2D16E6871FA4F8E400B85C8A /* Frameworks */, - B48F20B6219E8A0300BA10A8 /* Recovered References */, - 5EFA168FDA4541DA9896D9C8 /* Resources */, + B4C5B8B621F2DF2F00A845C4 /* Recovered References */, + FC7D399B1A1043C49023DC79 /* Resources */, ); indentWidth = 2; sourceTree = ""; @@ -906,153 +886,174 @@ name = Products; sourceTree = ""; }; - B48F20B6219E8A0300BA10A8 /* Recovered References */ = { + B4C5B8B621F2DF2F00A845C4 /* Recovered References */ = { isa = PBXGroup; children = ( - B5A6242DF4B645AAB539D2E4 /* libRNSentry.a */, - 8C242FC657494F7FB41321D9 /* libRNAmplitudeSDK.a */, - F13B02B9DD2A4068B8201EAB /* libRCTCamera.a */, - 2ADB5553EACB44579700D6D4 /* libRNDeviceInfo.a */, - C979953B425248FEA80F4F78 /* libRNReactNativeHapticFeedback.a */, - 9FF3B2695A6A43B39CE4D2AF /* libReactNativePermissions.a */, - 0A6C0341E36446BE93133B26 /* libRNSensors.a */, - 6037CD1CCED34A7E980149E6 /* libRNSVG.a */, - F84697F33A394B419D56ED30 /* libRNVectorIcons.a */, - 96C3F4E26841456EBF625D82 /* libRNDeviceInfo-tvOS.a */, - 6553F26980BC47409FFB0F7C /* libRNSVG-tvOS.a */, - CC4FCEA18F7E4033B6EF3D70 /* libRNVectorIcons-tvOS.a */, - 3B2AB1C624E24C1BA95FBFED /* libBVLinearGradient.a */, - 907C87020BD04956A5253DEB /* libRNRandomBytes.a */, - 4B0661D5EE994C5887A656CC /* libRNRandomBytes-tvOS.a */, - 01B7B7DF17B84765BE45F7F1 /* libRNGestureHandler.a */, - 3F5B1CA51964493093282D8E /* libRNCamera.a */, - F9F01E9C22C243A9AB48A90A /* libRNFS.a */, - 8CF3D00F82534DE796D11610 /* libRCTGoogleAnalyticsBridge.a */, - ED0418953CCE4F4FA0E0E60F /* libRNRate.a */, - 81EDDF247D484BC38EBCE565 /* libRNCWebView.a */, + 6AF3CB5617DC43DC988162A6 /* libRNCamera.a */, + 708F724FA552428BAEB980DB /* libRNDeviceInfo.a */, + 55B51FEAD82B40C5A9599130 /* libRNFS.a */, + BD9F9D46DD7F4D56AC6BB596 /* libRNGestureHandler.a */, + 0AE2A7819A5F44EA87540B0F /* libRCTGoogleAnalyticsBridge.a */, + 06537407AE1149A291D947A6 /* libRNReactNativeHapticFeedback.a */, + 4B0E4BE60376436EB155BEFB /* libBVLinearGradient.a */, + 72F0D4F26EFC4864993EA274 /* libReactNativePermissions.a */, + 4A7CD30C32B7476AAFD7276B /* libRNRandomBytes.a */, + 854C34D4A47D447999953B24 /* libRNRate.a */, + 88E7916103194ED38839F229 /* libRNSentry.a */, + D9C0D580C6B043AFBDD35884 /* libRNDeviceInfo-tvOS.a */, + 78DF4F1B869947EAA3239546 /* libRNRandomBytes-tvOS.a */, + 0338C70E30CD4BF394871601 /* libRNSentry-tvOS.a */, + C0166BDF81FA4A2F81702194 /* libRNSVG.a */, + EE42F14225744494A308B85E /* libRNSVG-tvOS.a */, + 718E12C659254420BF9D3F35 /* libRNCWebView.a */, + 18325ED98FD94340BB50926C /* libRNVectorIcons.a */, + EA20083B9DCA4F2D80ED8730 /* libRNVectorIcons-tvOS.a */, + 30B8249F5D4448859D5116E2 /* libRCTWKWebView.a */, ); name = "Recovered References"; sourceTree = ""; }; - B48F20DD219E8A0700BA10A8 /* Products */ = { + B4C5B8DD21F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F20F6219E8A0800BA10A8 /* libRCTGoogleAnalyticsBridge.a */, + B4C5B91421F2DF3000A845C4 /* libRNRandomBytes.a */, + B4C5B91621F2DF3000A845C4 /* libRNRandomBytes-tvOS.a */, ); name = Products; sourceTree = ""; }; - B48F20DF219E8A0700BA10A8 /* Products */ = { + B4C5B8DF21F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F20F9219E8A0800BA10A8 /* libReactNativePermissions.a */, + B4C5B92021F2DF3000A845C4 /* libRNSentry.a */, + B4C5B92221F2DF3000A845C4 /* libRNSentry-tvOS.a */, ); name = Products; sourceTree = ""; }; - B48F20E3219E8A0700BA10A8 /* Products */ = { + B4C5B8E121F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F2105219E8A0800BA10A8 /* libRNReactNativeHapticFeedback.a */, + B4C5B90121F2DF3000A845C4 /* libRNCamera.a */, ); name = Products; sourceTree = ""; }; - B48F20E5219E8A0700BA10A8 /* Products */ = { + B4C5B8E321F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F210B219E8A0800BA10A8 /* libRNSentry.a */, - B4F7F0AC21E9991000AFD87C /* libRNSentry-tvOS.a */, + B4C5B91C21F2DF3000A845C4 /* libRNReactNativeHapticFeedback.a */, ); name = Products; sourceTree = ""; }; - B48F20E7219E8A0800BA10A8 /* Products */ = { + B4C5B8E521F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F2115219E8A0800BA10A8 /* libRNVectorIcons.a */, - B48F2117219E8A0800BA10A8 /* libRNVectorIcons-tvOS.a */, + B4C5B90521F2DF3000A845C4 /* libRNDeviceInfo.a */, + B4C5B90721F2DF3000A845C4 /* libRNDeviceInfo-tvOS.a */, ); name = Products; sourceTree = ""; }; - B48F20ED219E8A0800BA10A8 /* Products */ = { + B4C5B8E721F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F2100219E8A0800BA10A8 /* libRNDeviceInfo.a */, - B48F2102219E8A0800BA10A8 /* libRNDeviceInfo-tvOS.a */, + B4C5B90B21F2DF3000A845C4 /* libRNFS.a */, + B4C5B90D21F2DF3000A845C4 /* libRNFS.a */, ); name = Products; sourceTree = ""; }; - B48F20EF219E8A0800BA10A8 /* Products */ = { + B4C5B8E921F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F210F219E8A0800BA10A8 /* libRNSVG.a */, - B48F2111219E8A0800BA10A8 /* libRNSVG-tvOS.a */, + B4C5B91021F2DF3000A845C4 /* libRNGestureHandler.a */, ); name = Products; sourceTree = ""; }; - B48F215D219E918C00BA10A8 /* Products */ = { + B4C5B8EB21F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F2162219E918C00BA10A8 /* libBVLinearGradient.a */, - B48F2164219E918C00BA10A8 /* libBVLinearGradient.a */, + B4C5B8FB21F2DF3000A845C4 /* libRCTGoogleAnalyticsBridge.a */, ); name = Products; sourceTree = ""; }; - B48F21E1219FC5E700BA10A8 /* Products */ = { + B4C5B8ED21F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B48F21E6219FC5E700BA10A8 /* libRNRandomBytes.a */, - B48F21E8219FC5E700BA10A8 /* libRNRandomBytes-tvOS.a */, + B4C5B8F621F2DF3000A845C4 /* libBVLinearGradient.a */, + B4C5B8F821F2DF3000A845C4 /* libBVLinearGradient.a */, ); name = Products; sourceTree = ""; }; - B4CE841F21B4C0DD00E2E2A3 /* Products */ = { + B4C5B8EF21F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B4CE842421B4C0DD00E2E2A3 /* libRNFS.a */, - B4CE842621B4C0DD00E2E2A3 /* libRNFS.a */, + B4C5B8FE21F2DF3000A845C4 /* libReactNativePermissions.a */, ); name = Products; sourceTree = ""; }; - B4F3B46A21A7D63400548A69 /* Products */ = { + B4C5B8F121F2DF3000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B4F3B46E21A7D63400548A69 /* libRNGestureHandler.a */, + B4C5B91921F2DF3000A845C4 /* libRNRate.a */, ); name = Products; sourceTree = ""; }; - B4F3B4F121A906D000548A69 /* Products */ = { + B4C5B97021F2E23E00A845C4 /* Products */ = { isa = PBXGroup; children = ( - B4F3B4F521A906D000548A69 /* libRNCamera.a */, + B4C5B97521F2E23E00A845C4 /* libRNSVG.a */, + B4C5B97721F2E23E00A845C4 /* libRNSVG-tvOS.a */, ); name = Products; sourceTree = ""; }; - B4F7F05621E8449B00AFD87C /* Products */ = { + B4C5BA1F21F2E29000A845C4 /* Products */ = { isa = PBXGroup; children = ( - B4F7F05A21E8449B00AFD87C /* libRNRate.a */, + B4C5BA2421F2E29000A845C4 /* libRNVectorIcons.a */, + B4C5BA2621F2E29000A845C4 /* libRNVectorIcons-tvOS.a */, ); name = Products; sourceTree = ""; }; - B4F7F0B121E99B5B00AFD87C /* Products */ = { + B4C5BAB221F3708C00A845C4 /* Products */ = { isa = PBXGroup; children = ( - B4F7F0B521E99B5B00AFD87C /* libRNCWebView.a */, + B4C5BAB621F3708C00A845C4 /* libRCTWKWebView.a */, ); name = Products; sourceTree = ""; }; + FC7D399B1A1043C49023DC79 /* Resources */ = { + isa = PBXGroup; + children = ( + 050A5C238226461DB5C131FD /* AntDesign.ttf */, + E4CFF6A80CB041188BFBE671 /* Entypo.ttf */, + DFE9C685977A46399D13B25C /* EvilIcons.ttf */, + A30C5D61F27B4EB0A5FA1098 /* Feather.ttf */, + E35B9F897A0C4DF6A88E08ED /* FontAwesome.ttf */, + 8766FB3BE0C94260B1A99F94 /* FontAwesome5_Brands.ttf */, + 3C108365C46F43B981AA76A2 /* FontAwesome5_Regular.ttf */, + 85758216A4E74F649B4B1D83 /* FontAwesome5_Solid.ttf */, + CEC5BDCD7ADA4318B8ED1D00 /* Foundation.ttf */, + EAB6EE282B654B6594C228BB /* Ionicons.ttf */, + CC1C418B6E464077A8CB0103 /* MaterialCommunityIcons.ttf */, + 756A0E83EE214C08AC02B267 /* MaterialIcons.ttf */, + C43A4D44551E47BCA6853B4D /* Octicons.ttf */, + F502E57F4DA54127A84DDAC1 /* SimpleLineIcons.ttf */, + 19F54CF3B7EA447486B1580C /* Zocial.ttf */, + ); + name = Resources; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -1082,7 +1083,7 @@ 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, - 97FBF98104AA4C6EBADC06F0 /* Upload Debug Symbols to Sentry */, + B9B0C844E4364469A20FB477 /* Upload Debug Symbols to Sentry */, ); buildRules = ( ); @@ -1135,12 +1136,11 @@ 83CBB9F71A601CBA00E9B192 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 610; + LastUpgradeCheck = 940; ORGANIZATIONNAME = Facebook; TargetAttributes = { 00E356ED1AD99517003FC87E = { CreatedOnToolsVersion = 6.2; - DevelopmentTeam = A7W54YZ4WU; TestTargetID = 13B07F861A680F5B00A75B9A; }; 13B07F861A680F5B00A75B9A = { @@ -1170,8 +1170,8 @@ projectDirPath = ""; projectReferences = ( { - ProductGroup = B48F215D219E918C00BA10A8 /* Products */; - ProjectRef = 5863F2E7B71740E3940BABD9 /* BVLinearGradient.xcodeproj */; + ProductGroup = B4C5B8ED21F2DF3000A845C4 /* Products */; + ProjectRef = BC4E5B046FEB46BDB96ED877 /* BVLinearGradient.xcodeproj */; }, { ProductGroup = 00C302A81ABCB8CE00DB3ED1 /* Products */; @@ -1190,8 +1190,8 @@ ProjectRef = 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */; }, { - ProductGroup = B48F20DD219E8A0700BA10A8 /* Products */; - ProjectRef = 87703C68A1014D0A8FDBAD00 /* RCTGoogleAnalyticsBridge.xcodeproj */; + ProductGroup = B4C5B8EB21F2DF3000A845C4 /* Products */; + ProjectRef = 6C5AB6AEDF75403E99A6AA17 /* RCTGoogleAnalyticsBridge.xcodeproj */; }, { ProductGroup = 00C302BC1ABCB91800DB3ED1 /* Products */; @@ -1222,56 +1222,56 @@ ProjectRef = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; }, { - ProductGroup = 146834001AC3E56700842450 /* Products */; - ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; + ProductGroup = B4C5BAB221F3708C00A845C4 /* Products */; + ProjectRef = 79AAC92A715841209904022D /* RCTWKWebView.xcodeproj */; }, { - ProductGroup = B48F20DF219E8A0700BA10A8 /* Products */; - ProjectRef = FDDDD64DF1014CDE82A5D7D9 /* ReactNativePermissions.xcodeproj */; + ProductGroup = 146834001AC3E56700842450 /* Products */; + ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; }, { - ProductGroup = B4F3B4F121A906D000548A69 /* Products */; - ProjectRef = 7F7225A9F01C4785B27FF490 /* RNCamera.xcodeproj */; + ProductGroup = B4C5B8EF21F2DF3000A845C4 /* Products */; + ProjectRef = F7152926CD0F4C90BE0A6980 /* ReactNativePermissions.xcodeproj */; }, { - ProductGroup = B4F7F0B121E99B5B00AFD87C /* Products */; - ProjectRef = 642C144246BF4C3EB350442F /* RNCWebView.xcodeproj */; + ProductGroup = B4C5B8E121F2DF3000A845C4 /* Products */; + ProjectRef = 3853DFD4C6D44BB8B17AEDF0 /* RNCamera.xcodeproj */; }, { - ProductGroup = B48F20ED219E8A0800BA10A8 /* Products */; - ProjectRef = 917199AF101244F5A9119C8C /* RNDeviceInfo.xcodeproj */; + ProductGroup = B4C5B8E521F2DF3000A845C4 /* Products */; + ProjectRef = 03D541ACCDD2451D9971158E /* RNDeviceInfo.xcodeproj */; }, { - ProductGroup = B4CE841F21B4C0DD00E2E2A3 /* Products */; - ProjectRef = C0B6F9440F69425886845061 /* RNFS.xcodeproj */; + ProductGroup = B4C5B8E721F2DF3000A845C4 /* Products */; + ProjectRef = CDBF3F7F227D42128D305BA0 /* RNFS.xcodeproj */; }, { - ProductGroup = B4F3B46A21A7D63400548A69 /* Products */; - ProjectRef = DAC908621D184867839621FE /* RNGestureHandler.xcodeproj */; + ProductGroup = B4C5B8E921F2DF3000A845C4 /* Products */; + ProjectRef = 97E59C536A894751BC70A472 /* RNGestureHandler.xcodeproj */; }, { - ProductGroup = B48F21E1219FC5E700BA10A8 /* Products */; - ProjectRef = DB512F57589B4F8A89CBE2AB /* RNRandomBytes.xcodeproj */; + ProductGroup = B4C5B8DD21F2DF3000A845C4 /* Products */; + ProjectRef = 2AA985ED11E446A4A8ADAAA5 /* RNRandomBytes.xcodeproj */; }, { - ProductGroup = B4F7F05621E8449B00AFD87C /* Products */; - ProjectRef = D6051C6440444360BD29AFE4 /* RNRate.xcodeproj */; + ProductGroup = B4C5B8F121F2DF3000A845C4 /* Products */; + ProjectRef = C817BBCA1879484C90C8FDA4 /* RNRate.xcodeproj */; }, { - ProductGroup = B48F20E3219E8A0700BA10A8 /* Products */; - ProjectRef = CA35307CBA624D81A15815D2 /* RNReactNativeHapticFeedback.xcodeproj */; + ProductGroup = B4C5B8E321F2DF3000A845C4 /* Products */; + ProjectRef = 0AD3549D2DDE42C694D6338C /* RNReactNativeHapticFeedback.xcodeproj */; }, { - ProductGroup = B48F20E5219E8A0700BA10A8 /* Products */; - ProjectRef = DDABC336B13E47398005736D /* RNSentry.xcodeproj */; + ProductGroup = B4C5B8DF21F2DF3000A845C4 /* Products */; + ProjectRef = 4A025859F71B464AA9100C41 /* RNSentry.xcodeproj */; }, { - ProductGroup = B48F20EF219E8A0800BA10A8 /* Products */; - ProjectRef = C88A48E1C11140418478EC7F /* RNSVG.xcodeproj */; + ProductGroup = B4C5B97021F2E23E00A845C4 /* Products */; + ProjectRef = 6A53833BB9EC4CCEABBA5978 /* RNSVG.xcodeproj */; }, { - ProductGroup = B48F20E7219E8A0800BA10A8 /* Products */; - ProjectRef = CF14D1AA406D4EDC85D3A61F /* RNVectorIcons.xcodeproj */; + ProductGroup = B4C5BA1F21F2E29000A845C4 /* Products */; + ProjectRef = 4E7DA1BD76504DF686A0EDFE /* RNVectorIcons.xcodeproj */; }, ); projectRoot = ""; @@ -1544,151 +1544,151 @@ remoteRef = ADBDB9261DFEBF0700ED6528 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F20F6219E8A0800BA10A8 /* libRCTGoogleAnalyticsBridge.a */ = { + B4C5B8F621F2DF3000A845C4 /* libBVLinearGradient.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRCTGoogleAnalyticsBridge.a; - remoteRef = B48F20F5219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libBVLinearGradient.a; + remoteRef = B4C5B8F521F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F20F9219E8A0800BA10A8 /* libReactNativePermissions.a */ = { + B4C5B8F821F2DF3000A845C4 /* libBVLinearGradient.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libReactNativePermissions.a; - remoteRef = B48F20F8219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libBVLinearGradient.a; + remoteRef = B4C5B8F721F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F2100219E8A0800BA10A8 /* libRNDeviceInfo.a */ = { + B4C5B8FB21F2DF3000A845C4 /* libRCTGoogleAnalyticsBridge.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNDeviceInfo.a; - remoteRef = B48F20FF219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libRCTGoogleAnalyticsBridge.a; + remoteRef = B4C5B8FA21F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F2102219E8A0800BA10A8 /* libRNDeviceInfo-tvOS.a */ = { + B4C5B8FE21F2DF3000A845C4 /* libReactNativePermissions.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libRNDeviceInfo-tvOS.a"; - remoteRef = B48F2101219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libReactNativePermissions.a; + remoteRef = B4C5B8FD21F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F2105219E8A0800BA10A8 /* libRNReactNativeHapticFeedback.a */ = { + B4C5B90121F2DF3000A845C4 /* libRNCamera.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNReactNativeHapticFeedback.a; - remoteRef = B48F2104219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libRNCamera.a; + remoteRef = B4C5B90021F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F210B219E8A0800BA10A8 /* libRNSentry.a */ = { + B4C5B90521F2DF3000A845C4 /* libRNDeviceInfo.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNSentry.a; - remoteRef = B48F210A219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libRNDeviceInfo.a; + remoteRef = B4C5B90421F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F210F219E8A0800BA10A8 /* libRNSVG.a */ = { + B4C5B90721F2DF3000A845C4 /* libRNDeviceInfo-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNSVG.a; - remoteRef = B48F210E219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = "libRNDeviceInfo-tvOS.a"; + remoteRef = B4C5B90621F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F2111219E8A0800BA10A8 /* libRNSVG-tvOS.a */ = { + B4C5B90B21F2DF3000A845C4 /* libRNFS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libRNSVG-tvOS.a"; - remoteRef = B48F2110219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libRNFS.a; + remoteRef = B4C5B90A21F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F2115219E8A0800BA10A8 /* libRNVectorIcons.a */ = { + B4C5B90D21F2DF3000A845C4 /* libRNFS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNVectorIcons.a; - remoteRef = B48F2114219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libRNFS.a; + remoteRef = B4C5B90C21F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F2117219E8A0800BA10A8 /* libRNVectorIcons-tvOS.a */ = { + B4C5B91021F2DF3000A845C4 /* libRNGestureHandler.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libRNVectorIcons-tvOS.a"; - remoteRef = B48F2116219E8A0800BA10A8 /* PBXContainerItemProxy */; + path = libRNGestureHandler.a; + remoteRef = B4C5B90F21F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F2162219E918C00BA10A8 /* libBVLinearGradient.a */ = { + B4C5B91421F2DF3000A845C4 /* libRNRandomBytes.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libBVLinearGradient.a; - remoteRef = B48F2161219E918C00BA10A8 /* PBXContainerItemProxy */; + path = libRNRandomBytes.a; + remoteRef = B4C5B91321F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F2164219E918C00BA10A8 /* libBVLinearGradient.a */ = { + B4C5B91621F2DF3000A845C4 /* libRNRandomBytes-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libBVLinearGradient.a; - remoteRef = B48F2163219E918C00BA10A8 /* PBXContainerItemProxy */; + path = "libRNRandomBytes-tvOS.a"; + remoteRef = B4C5B91521F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F21E6219FC5E700BA10A8 /* libRNRandomBytes.a */ = { + B4C5B91921F2DF3000A845C4 /* libRNRate.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNRandomBytes.a; - remoteRef = B48F21E5219FC5E700BA10A8 /* PBXContainerItemProxy */; + path = libRNRate.a; + remoteRef = B4C5B91821F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B48F21E8219FC5E700BA10A8 /* libRNRandomBytes-tvOS.a */ = { + B4C5B91C21F2DF3000A845C4 /* libRNReactNativeHapticFeedback.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libRNRandomBytes-tvOS.a"; - remoteRef = B48F21E7219FC5E700BA10A8 /* PBXContainerItemProxy */; + path = libRNReactNativeHapticFeedback.a; + remoteRef = B4C5B91B21F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B4CE842421B4C0DD00E2E2A3 /* libRNFS.a */ = { + B4C5B92021F2DF3000A845C4 /* libRNSentry.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNFS.a; - remoteRef = B4CE842321B4C0DD00E2E2A3 /* PBXContainerItemProxy */; + path = libRNSentry.a; + remoteRef = B4C5B91F21F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B4CE842621B4C0DD00E2E2A3 /* libRNFS.a */ = { + B4C5B92221F2DF3000A845C4 /* libRNSentry-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNFS.a; - remoteRef = B4CE842521B4C0DD00E2E2A3 /* PBXContainerItemProxy */; + path = "libRNSentry-tvOS.a"; + remoteRef = B4C5B92121F2DF3000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B4F3B46E21A7D63400548A69 /* libRNGestureHandler.a */ = { + B4C5B97521F2E23E00A845C4 /* libRNSVG.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNGestureHandler.a; - remoteRef = B4F3B46D21A7D63400548A69 /* PBXContainerItemProxy */; + path = libRNSVG.a; + remoteRef = B4C5B97421F2E23E00A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B4F3B4F521A906D000548A69 /* libRNCamera.a */ = { + B4C5B97721F2E23E00A845C4 /* libRNSVG-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNCamera.a; - remoteRef = B4F3B4F421A906D000548A69 /* PBXContainerItemProxy */; + path = "libRNSVG-tvOS.a"; + remoteRef = B4C5B97621F2E23E00A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B4F7F05A21E8449B00AFD87C /* libRNRate.a */ = { + B4C5BA2421F2E29000A845C4 /* libRNVectorIcons.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNRate.a; - remoteRef = B4F7F05921E8449B00AFD87C /* PBXContainerItemProxy */; + path = libRNVectorIcons.a; + remoteRef = B4C5BA2321F2E29000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B4F7F0AC21E9991000AFD87C /* libRNSentry-tvOS.a */ = { + B4C5BA2621F2E29000A845C4 /* libRNVectorIcons-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libRNSentry-tvOS.a"; - remoteRef = B4F7F0AB21E9991000AFD87C /* PBXContainerItemProxy */; + path = "libRNVectorIcons-tvOS.a"; + remoteRef = B4C5BA2521F2E29000A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - B4F7F0B521E99B5B00AFD87C /* libRNCWebView.a */ = { + B4C5BAB621F3708C00A845C4 /* libRCTWKWebView.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRNCWebView.a; - remoteRef = B4F7F0B421E99B5B00AFD87C /* PBXContainerItemProxy */; + path = libRCTWKWebView.a; + remoteRef = B4C5BAB521F3708C00A845C4 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXReferenceProxy section */ @@ -1707,21 +1707,21 @@ files = ( 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, - E98E21D32735429C8E630B54 /* AntDesign.ttf in Resources */, - 6A95349CF0194548A175076B /* Entypo.ttf in Resources */, - 7C1B264BF28B44C29BA00262 /* EvilIcons.ttf in Resources */, - 2804B7DB54084F54A1C28DC6 /* Feather.ttf in Resources */, - 7C76B2A54AF3405FB041001E /* FontAwesome.ttf in Resources */, - A00EA31D54E74AB4BABF8755 /* FontAwesome5_Brands.ttf in Resources */, - 105C71E7736A4F20905497E3 /* FontAwesome5_Regular.ttf in Resources */, - FDE69393B0DE46149DDB7E3C /* FontAwesome5_Solid.ttf in Resources */, - B86E02D094DF455C990432D2 /* Foundation.ttf in Resources */, - 4A9494D3A1E04115B6F7D0D4 /* Ionicons.ttf in Resources */, - 06C80B90852E417F941BB03C /* MaterialCommunityIcons.ttf in Resources */, - 071C1519F81B4BE29915C533 /* MaterialIcons.ttf in Resources */, - D37B51DB221D47B7996BE00D /* Octicons.ttf in Resources */, - E4BBBC2D6D394E89B99A5C16 /* SimpleLineIcons.ttf in Resources */, - 7C83851C74EC41958D6AE8C6 /* Zocial.ttf in Resources */, + B56DD1A390C0411AA6B033C1 /* AntDesign.ttf in Resources */, + 08FC9048F804485789FBAF4C /* Entypo.ttf in Resources */, + 88F4BE5F5AB947C3A36156D8 /* EvilIcons.ttf in Resources */, + C0CC1B295A544678A63CBD24 /* Feather.ttf in Resources */, + B617E79B06774815997F5DC8 /* FontAwesome.ttf in Resources */, + A1C6AA1F146D4BBEA120BA8D /* FontAwesome5_Brands.ttf in Resources */, + 0263BA0C13C44BE6B630E0A9 /* FontAwesome5_Regular.ttf in Resources */, + 02595DE49CB242ADB35FFB19 /* FontAwesome5_Solid.ttf in Resources */, + 8BCBCB6511CE402088217A4F /* Foundation.ttf in Resources */, + B414BE14BACE483F85247A1D /* Ionicons.ttf in Resources */, + 028C3DFA2E1F4311AC52B1A7 /* MaterialCommunityIcons.ttf in Resources */, + 122F9192CF8E45C2989EB8AB /* MaterialIcons.ttf in Resources */, + CC7A1851EAB14457B1769BB8 /* Octicons.ttf in Resources */, + 985F870D88324026B44EF399 /* SimpleLineIcons.ttf in Resources */, + 74A59188BE6D47FBA7F10AA7 /* Zocial.ttf in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1755,7 +1755,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "export SENTRY_PROPERTIES=sentry.properties\nexport NODE_BINARY=node\n../node_modules/@sentry/cli/bin/sentry-cli react-native xcode ../node_modules/react-native/scripts/react-native-xcode.sh\n"; + shellScript = "export SENTRY_PROPERTIES=sentry.properties\nexport NODE_BINARY=node\n../node_modules/@sentry/cli/bin/sentry-cli react-native xcode ../node_modules/react-native/scripts/react-native-xcode.sh"; }; 2D02E4CB1E0B4B27006451C7 /* Bundle React Native Code And Images */ = { isa = PBXShellScriptBuildPhase; @@ -1771,7 +1771,7 @@ shellPath = /bin/sh; shellScript = "export SENTRY_PROPERTIES=sentry.properties\nexport NODE_BINARY=node\n../node_modules/@sentry/cli/bin/sentry-cli react-native xcode ../node_modules/react-native/scripts/react-native-xcode.sh"; }; - 97FBF98104AA4C6EBADC06F0 /* Upload Debug Symbols to Sentry */ = { + B9B0C844E4364469A20FB477 /* Upload Debug Symbols to Sentry */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1783,7 +1783,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "export SENTRY_PROPERTIES=sentry.properties\n../node_modules/@sentry/cli/bin/sentry-cli upload-dsym\n"; + shellScript = "export SENTRY_PROPERTIES=sentry.properties\n../node_modules/@sentry/cli/bin/sentry-cli upload-dsym"; }; /* End PBXShellScriptBuildPhase section */ @@ -1854,40 +1854,61 @@ isa = XCBuildConfiguration; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; - DEVELOPMENT_TEAM = A7W54YZ4WU; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", "$(SRCROOT)/../node_modules/react-native-device-info/ios/RNDeviceInfo", + "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", "$(SRCROOT)/../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/**", "$(SRCROOT)/../node_modules/react-native-haptic-feedback/ios", + "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-permissions/ios/**", + "$(SRCROOT)/../node_modules/react-native-randombytes", + "$(SRCROOT)/../node_modules/react-native-rate/ios", + "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-svg/ios/**", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", - "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", - "$(SRCROOT)/../node_modules/react-native-randombytes", - "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios/**", - "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-webview/ios", - "$(SRCROOT)/../node_modules/react-native-rate/ios", ); INFOPLIST_FILE = BlueWalletTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", "-lc++", ); + PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/BlueWallet.app/BlueWallet"; }; @@ -1898,36 +1919,57 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = A7W54YZ4WU; HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", "$(SRCROOT)/../node_modules/react-native-device-info/ios/RNDeviceInfo", + "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", "$(SRCROOT)/../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/**", "$(SRCROOT)/../node_modules/react-native-haptic-feedback/ios", + "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-permissions/ios/**", + "$(SRCROOT)/../node_modules/react-native-randombytes", + "$(SRCROOT)/../node_modules/react-native-rate/ios", + "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-svg/ios/**", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", - "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", - "$(SRCROOT)/../node_modules/react-native-randombytes", - "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios/**", - "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-webview/ios", - "$(SRCROOT)/../node_modules/react-native-rate/ios", ); INFOPLIST_FILE = BlueWalletTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", "-lc++", ); + PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/BlueWallet.app/BlueWallet"; }; @@ -1942,31 +1984,32 @@ DEVELOPMENT_TEAM = A7W54YZ4WU; HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", "$(SRCROOT)/../node_modules/react-native-device-info/ios/RNDeviceInfo", + "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", "$(SRCROOT)/../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/**", "$(SRCROOT)/../node_modules/react-native-haptic-feedback/ios", + "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-permissions/ios/**", + "$(SRCROOT)/../node_modules/react-native-randombytes", + "$(SRCROOT)/../node_modules/react-native-rate/ios", + "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-svg/ios/**", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", - "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", - "$(SRCROOT)/../node_modules/react-native-randombytes", - "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios/**", - "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-webview/ios", - "$(SRCROOT)/../node_modules/react-native-rate/ios", ); INFOPLIST_FILE = BlueWallet/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 10.3; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", "-lc++", ); - PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet; + PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = BlueWallet; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; @@ -1981,31 +2024,32 @@ DEVELOPMENT_TEAM = A7W54YZ4WU; HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", "$(SRCROOT)/../node_modules/react-native-device-info/ios/RNDeviceInfo", + "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", "$(SRCROOT)/../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/**", "$(SRCROOT)/../node_modules/react-native-haptic-feedback/ios", + "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-permissions/ios/**", + "$(SRCROOT)/../node_modules/react-native-randombytes", + "$(SRCROOT)/../node_modules/react-native-rate/ios", + "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-svg/ios/**", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", - "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", - "$(SRCROOT)/../node_modules/react-native-randombytes", - "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios/**", - "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-webview/ios", - "$(SRCROOT)/../node_modules/react-native-rate/ios", ); INFOPLIST_FILE = BlueWallet/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 10.3; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", "-lc++", ); - PRODUCT_BUNDLE_IDENTIFIER = io.bluewallet.bluewallet; + PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = BlueWallet; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; @@ -2026,27 +2070,48 @@ GCC_NO_COMMON_BLOCKS = YES; HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", "$(SRCROOT)/../node_modules/react-native-device-info/ios/RNDeviceInfo", + "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", "$(SRCROOT)/../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/**", "$(SRCROOT)/../node_modules/react-native-haptic-feedback/ios", + "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-permissions/ios/**", + "$(SRCROOT)/../node_modules/react-native-randombytes", + "$(SRCROOT)/../node_modules/react-native-rate/ios", + "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-svg/ios/**", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", - "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", - "$(SRCROOT)/../node_modules/react-native-randombytes", - "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios/**", - "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-webview/ios", - "$(SRCROOT)/../node_modules/react-native-rate/ios", ); INFOPLIST_FILE = "BlueWallet-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -2074,27 +2139,48 @@ GCC_NO_COMMON_BLOCKS = YES; HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", "$(SRCROOT)/../node_modules/react-native-device-info/ios/RNDeviceInfo", + "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", "$(SRCROOT)/../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/**", "$(SRCROOT)/../node_modules/react-native-haptic-feedback/ios", + "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-permissions/ios/**", + "$(SRCROOT)/../node_modules/react-native-randombytes", + "$(SRCROOT)/../node_modules/react-native-rate/ios", + "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-svg/ios/**", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", - "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", - "$(SRCROOT)/../node_modules/react-native-randombytes", - "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios/**", - "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-webview/ios", - "$(SRCROOT)/../node_modules/react-native-rate/ios", ); INFOPLIST_FILE = "BlueWallet-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -2121,27 +2207,48 @@ GCC_NO_COMMON_BLOCKS = YES; HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", "$(SRCROOT)/../node_modules/react-native-device-info/ios/RNDeviceInfo", + "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", "$(SRCROOT)/../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/**", "$(SRCROOT)/../node_modules/react-native-haptic-feedback/ios", + "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-permissions/ios/**", + "$(SRCROOT)/../node_modules/react-native-randombytes", + "$(SRCROOT)/../node_modules/react-native-rate/ios", + "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-svg/ios/**", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", - "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", - "$(SRCROOT)/../node_modules/react-native-randombytes", - "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios/**", - "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-webview/ios", - "$(SRCROOT)/../node_modules/react-native-rate/ios", ); INFOPLIST_FILE = "BlueWallet-tvOSTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -2168,27 +2275,48 @@ GCC_NO_COMMON_BLOCKS = YES; HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", "$(SRCROOT)/../node_modules/react-native-device-info/ios/RNDeviceInfo", + "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", "$(SRCROOT)/../node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/**", "$(SRCROOT)/../node_modules/react-native-haptic-feedback/ios", + "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-permissions/ios/**", + "$(SRCROOT)/../node_modules/react-native-randombytes", + "$(SRCROOT)/../node_modules/react-native-rate/ios", + "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-svg/ios/**", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", - "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", - "$(SRCROOT)/../node_modules/react-native-randombytes", - "$(SRCROOT)/../node_modules/react-native-gesture-handler/ios/**", - "$(SRCROOT)/../node_modules/react-native-camera/ios/**", - "$(SRCROOT)/../node_modules/react-native-fs/**", + "$(SRCROOT)/../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView", + "$(SRCROOT)/../node_modules/react-native-webview/ios", "$(SRCROOT)/../node_modules/react-native-webview/ios", - "$(SRCROOT)/../node_modules/react-native-rate/ios", ); INFOPLIST_FILE = "BlueWallet-tvOSTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -2210,20 +2338,32 @@ CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -2236,7 +2376,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -2251,13 +2391,23 @@ CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; @@ -2265,13 +2415,14 @@ ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; VALIDATE_PRODUCT = YES; diff --git a/ios/BlueWallet.xcodeproj/xcshareddata/xcschemes/BlueWallet-tvOS.xcscheme b/ios/BlueWallet.xcodeproj/xcshareddata/xcschemes/BlueWallet-tvOS.xcscheme index 545210b7..2d3a1b72 100644 --- a/ios/BlueWallet.xcodeproj/xcshareddata/xcschemes/BlueWallet-tvOS.xcscheme +++ b/ios/BlueWallet.xcodeproj/xcshareddata/xcschemes/BlueWallet-tvOS.xcscheme @@ -1,6 +1,6 @@ *)options { + return [RCTLinkingManager application:app openURL:url options:options]; } @end diff --git a/ios/BlueWallet/Info.plist b/ios/BlueWallet/Info.plist index de2b42a7..434dc435 100644 --- a/ios/BlueWallet/Info.plist +++ b/ios/BlueWallet/Info.plist @@ -5,7 +5,7 @@ CFBundleDevelopmentRegion en CFBundleDisplayName - Blue Wallet + BlueWallet CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier @@ -17,7 +17,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 3.6.0 + 3.6.2 CFBundleSignature ???? CFBundleURLTypes diff --git a/ios/BlueWalletTests/Info.plist b/ios/BlueWalletTests/Info.plist index 886825cc..ba72822e 100644 --- a/ios/BlueWalletTests/Info.plist +++ b/ios/BlueWalletTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/package-lock.json b/package-lock.json index d77d0f42..53b6411e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "BlueWallet", - "version": "3.6.0", + "version": "3.6.1", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -9124,9 +9124,9 @@ } }, "react-native-device-info": { - "version": "0.24.3", - "resolved": "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-0.24.3.tgz", - "integrity": "sha512-usW00Wk6DoXH1eRSMt07j0uYvuka3SIEnJ9girlddAacyqwfa1QMVTN4eYmtaBzuMd/avhis8iHZQ3cLaR9CMA==" + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-0.25.0.tgz", + "integrity": "sha512-5egYoRhO6OE4VHC2RZtjNYxuXtwR2oexoI1GwvAiYzyGEc2pkMaC59xN2W0NX0mDxhkfaDsMzc+WArLqSg62xA==" }, "react-native-elements": { "version": "0.19.1", @@ -9361,6 +9361,35 @@ } } }, + "react-native-wkwebview-reborn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/react-native-wkwebview-reborn/-/react-native-wkwebview-reborn-2.0.0.tgz", + "integrity": "sha512-upHQ471Wv4uV1/t6ZivYQVm05NyLRKZW8es/EdBl7UCdDoDVWD+1RBhu70ACPyW8EjX1DpMgK0SZvA4o0dt+8w==", + "requires": { + "fbjs": "^0.8.3" + }, + "dependencies": { + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + }, + "fbjs": { + "version": "0.8.17", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz", + "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=", + "requires": { + "core-js": "^1.0.0", + "isomorphic-fetch": "^2.1.1", + "loose-envify": "^1.0.0", + "object-assign": "^4.1.0", + "promise": "^7.1.1", + "setimmediate": "^1.0.5", + "ua-parser-js": "^0.7.18" + } + } + } + }, "react-navigation": { "version": "3.0.9", "resolved": "https://registry.npmjs.org/react-navigation/-/react-navigation-3.0.9.tgz", diff --git a/package.json b/package.json index f52c81fd..7c89d227 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "BlueWallet", - "version": "3.6.0", + "version": "3.6.2", "devDependencies": { "babel-eslint": "^8.2.6", "babel-jest": "23.6.0", @@ -62,7 +62,7 @@ "react-native": "^0.57.8", "react-native-camera": "^1.8.0", "react-native-custom-qr-codes": "^2.0.0", - "react-native-device-info": "^0.24.3", + "react-native-device-info": "^0.25.0", "react-native-elements": "^0.19.0", "react-native-flexi-radio-button": "^0.2.2", "react-native-fs": "^2.13.3", @@ -83,13 +83,13 @@ "react-native-svg": "^8.0.10", "react-native-vector-icons": "^6.0.2", "react-native-webview": "2.8.0", + "react-native-wkwebview-reborn": "^2.0.0", "react-navigation": "^3.0.9", "react-test-render": "^1.1.1", "readable-stream": "^1.1.14", "request-promise-native": "^1.0.5", "secure-random": "^1.1.1", "stream-browserify": "^1.0.0", - "util": "^0.10.4", "wif": "^2.0.1" }, "react-native": { diff --git a/screen/lnd/browser.js b/screen/lnd/browser.js index f3c54847..fbd866b7 100644 --- a/screen/lnd/browser.js +++ b/screen/lnd/browser.js @@ -1,6 +1,7 @@ import React, { Component } from 'react'; -import { TouchableOpacity, ActivityIndicator, View, Alert, Dimensions } from 'react-native'; +import { TouchableOpacity, ActivityIndicator, View, Platform, Alert, Dimensions } from 'react-native'; import { WebView } from 'react-native-webview'; +import WKWebView from 'react-native-wkwebview-reborn'; import { BlueNavigationStyle, SafeBlueArea } from '../../BlueComponents'; import { FormInput } from 'react-native-elements'; import Ionicons from 'react-native-vector-icons/Ionicons'; @@ -17,7 +18,7 @@ let bluewalletResponses = {}; // eslint-disable-next-line var webln = { enable: function() { - window.postMessage('enable'); + window.postMessage(JSON.stringify({ enable: true })); return new Promise(function(resolve, reject) { resolve(true); }); @@ -66,166 +67,8 @@ var webln = { /// ///////////////// /// ///////////////// -export default class Browser extends Component { - static navigationOptions = ({ navigation }) => ({ - ...BlueNavigationStyle(navigation, true), - title: 'Lapp Browser', - headerLeft: null, - }); - - constructor(props) { - super(props); - if (!props.navigation.getParam('fromSecret')) throw new Error('Invalid param'); - if (!props.navigation.getParam('fromWallet')) throw new Error('Invalid param'); - - this.state = { - url: 'https://bluewallet.io/marketplace/', - pageIsLoading: false, - fromSecret: props.navigation.getParam('fromSecret'), - fromWallet: props.navigation.getParam('fromWallet'), - }; - } - - render() { - return ( - - - { - this.webview.goBack(); - }} - > - - - - - - { - this.setState({ url: 'https://bluewallet.io/marketplace/' }); - }} - > - - - - { - this.webview.reload(); - }} - > - {(!this.state.pageIsLoading && ( - - )) || ( - - - - )} - - - - (this.webview = ref)} - source={{ uri: this.state.url }} - mixedContentMode={'compatibility'} - onMessage={e => { - // this is a handler which receives messages sent from within the browser - console.log('---- message from the bus:', e.nativeEvent.data); - let json = false; - try { - json = JSON.parse(e.nativeEvent.data); - } catch (_) {} - // message from browser has ln invoice - if (json && json.sendPayment) { - // checking that we do not trigger alert too often: - if (+new Date() - lastTimeTriedToPay < 3000) { - return; - } - lastTimeTriedToPay = +new Date(); - - // checking that already asked about this invoice: - if (processedInvoices[json.sendPayment]) { - return; - } else { - processedInvoices[json.sendPayment] = 1; - } - - Alert.alert( - 'Page', - 'This page asks for permission to pay an invoice', - [ - { text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel' }, - { - text: 'Pay', - onPress: () => { - console.log('OK Pressed'); - this.props.navigation.navigate({ - routeName: 'ScanLndInvoice', - params: { - uri: json.sendPayment, - fromSecret: this.state.fromSecret, - }, - }); - }, - }, - ], - { cancelable: false }, - ); - } - - if (json && json.makeInvoice) { - let amount = Math.max(+json.makeInvoice.minimumAmount, +json.makeInvoice.maximumAmount, +json.makeInvoice.defaultAmount); - Alert.alert( - 'Page', - 'This page wants to pay you ' + amount + ' sats (' + json.makeInvoice.defaultMemo + ')', - [ - { text: 'No thanks', onPress: () => console.log('Cancel Pressed'), style: 'cancel' }, - { - text: 'Accept', - onPress: async () => { - /** @type {LightningCustodianWallet} */ - const fromWallet = this.state.fromWallet; - const payreq = await fromWallet.addInvoice(amount, json.makeInvoice.defaultMemo || ' '); - this.webview.postMessage(JSON.stringify({ bluewalletResponse: { paymentRequest: payreq }, id: json.id })); - }, - }, - ], - { cancelable: false }, - ); - } - }} - injectedJavaScript={` +let alreadyInjected = false; +const injectedParadise = ` /* rules: no 'let', only 'var' @@ -251,7 +94,7 @@ bluewalletResponses = {}; webln = { enable : function () { - window.postMessage('enable'); + window.postMessage(JSON.stringify({'enable': true})); return new Promise(function(resolve, reject){ resolve(true); }) @@ -327,6 +170,7 @@ function tryToPay(invoice) { searching for all bolt11 manually */ setInterval(function() { +window.postMessage('interval'); var searchText = "lnbc"; @@ -362,14 +206,288 @@ setInterval(function() { }, 1000); - `} + `; + +export default class Browser extends Component { + static navigationOptions = ({ navigation }) => ({ + ...BlueNavigationStyle(navigation, true), + title: 'Lapp Browser', + headerLeft: null, + }); + + constructor(props) { + super(props); + if (!props.navigation.getParam('fromSecret')) throw new Error('Invalid param'); + if (!props.navigation.getParam('fromWallet')) throw new Error('Invalid param'); + + this.state = { + url: 'https://bluewallet.io/marketplace/', + pageIsLoading: false, + fromSecret: props.navigation.getParam('fromSecret'), + fromWallet: props.navigation.getParam('fromWallet'), + }; + } + + renderWebView = () => { + if (Platform.OS === 'android') { + return ( + (this.webview = ref)} + source={{ uri: this.state.url }} + onMessage={e => { + // this is a handler which receives messages sent from within the browser + console.log('---- message from the bus:', e.nativeEvent.data); + let json = false; + try { + json = JSON.parse(e.nativeEvent.data); + } catch (_) {} + // message from browser has ln invoice + if (json && json.sendPayment) { + // checking that already asked about this invoice: + if (processedInvoices[json.sendPayment]) { + return; + } else { + // checking that we do not trigger alert too often: + if (+new Date() - lastTimeTriedToPay < 3000) { + return; + } + lastTimeTriedToPay = +new Date(); + // + processedInvoices[json.sendPayment] = 1; + } + + Alert.alert( + 'Page', + 'This page asks for permission to pay an invoice', + [ + { text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel' }, + { + text: 'Pay', + onPress: () => { + console.log('OK Pressed'); + this.props.navigation.navigate({ + routeName: 'ScanLndInvoice', + params: { + uri: json.sendPayment, + fromSecret: this.state.fromSecret, + }, + }); + }, + }, + ], + { cancelable: false }, + ); + } + + if (json && json.makeInvoice) { + let amount = Math.max(+json.makeInvoice.minimumAmount, +json.makeInvoice.maximumAmount, +json.makeInvoice.defaultAmount); + Alert.alert( + 'Page', + 'This page wants to pay you ' + amount + ' sats (' + json.makeInvoice.defaultMemo + ')', + [ + { text: 'No thanks', onPress: () => console.log('Cancel Pressed'), style: 'cancel' }, + { + text: 'Accept', + onPress: async () => { + /** @type {LightningCustodianWallet} */ + const fromWallet = this.state.fromWallet; + const payreq = await fromWallet.addInvoice(amount, json.makeInvoice.defaultMemo || ' '); + this.webview.postMessage(JSON.stringify({ bluewalletResponse: { paymentRequest: payreq }, id: json.id })); + }, + }, + ], + { cancelable: false }, + ); + } + + if (json && json.enable) { + console.log('webln enabled'); + this.setState({ weblnEnabled: true }); + } + }} onLoadStart={e => { - this.setState({ pageIsLoading: true }); + alreadyInjected = false; + console.log('load start'); + this.setState({ pageIsLoading: true, weblnEnabled: false }); }} onLoadEnd={e => { + console.log('load end'); this.setState({ url: e.nativeEvent.url, pageIsLoading: false }); }} + onLoadProgress={e => { + console.log('progress:', e.nativeEvent.progress); + if (!alreadyInjected && e.nativeEvent.progress > 0.5) { + this.webview.injectJavaScript(injectedParadise); + alreadyInjected = true; + console.log('injected'); + } + }} /> + ); + } else if (Platform.OS === 'ios') { + return ( + (this.webview = ref)} + source={{ uri: this.state.url }} + injectJavaScript={injectedParadise} + onMessage={e => { + // this is a handler which receives messages sent from within the browser + console.log('---- message from the bus:', e.nativeEvent.data); + let json = false; + try { + json = JSON.parse(e.nativeEvent.data); + } catch (_) {} + // message from browser has ln invoice + if (json && json.sendPayment) { + // checking that we do not trigger alert too often: + if (+new Date() - lastTimeTriedToPay < 3000) { + return; + } + lastTimeTriedToPay = +new Date(); + + // checking that already asked about this invoice: + if (processedInvoices[json.sendPayment]) { + return; + } else { + processedInvoices[json.sendPayment] = 1; + } + + Alert.alert( + 'Page', + 'This page asks for permission to pay an invoice', + [ + { text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel' }, + { + text: 'Pay', + onPress: () => { + console.log('OK Pressed'); + this.props.navigation.navigate({ + routeName: 'ScanLndInvoice', + params: { + uri: json.sendPayment, + fromSecret: this.state.fromSecret, + }, + }); + }, + }, + ], + { cancelable: false }, + ); + } + + if (json && json.makeInvoice) { + let amount = Math.max(+json.makeInvoice.minimumAmount, +json.makeInvoice.maximumAmount, +json.makeInvoice.defaultAmount); + Alert.alert( + 'Page', + 'This page wants to pay you ' + amount + ' sats (' + json.makeInvoice.defaultMemo + ')', + [ + { text: 'No thanks', onPress: () => console.log('Cancel Pressed'), style: 'cancel' }, + { + text: 'Accept', + onPress: async () => { + /** @type {LightningCustodianWallet} */ + const fromWallet = this.state.fromWallet; + const payreq = await fromWallet.addInvoice(amount, json.makeInvoice.defaultMemo || ' '); + this.webview.postMessage(JSON.stringify({ bluewalletResponse: { paymentRequest: payreq }, id: json.id })); + }, + }, + ], + { cancelable: false }, + ); + } + + if (json && json.enable) { + console.log('webln enabled'); + this.setState({ weblnEnabled: true }); + } + }} + onLoadStart={e => { + alreadyInjected = false; + console.log('load start'); + this.setState({ pageIsLoading: true, weblnEnabled: false }); + }} + onLoadEnd={e => { + console.log('load end'); + this.setState({ url: e.nativeEvent.url, pageIsLoading: false }); + }} + /> + ); + } + }; + render() { + return ( + + + { + this.webview.goBack(); + }} + > + + + + + + { + processedInvoices = {}; + this.setState({ url: 'https://bluewallet.io/marketplace/' }); + }} + > + + + + { + let reloadUrl = this.state.url; + this.setState({ url: 'about:blank' }); + processedInvoices = {}; + setTimeout(() => this.setState({ url: reloadUrl }), 500); + // this.webview.reload(); + }} + > + {(!this.state.pageIsLoading && ( + + )) || ( + + + + )} + + + {this.renderWebView()} ); }