diff --git a/.babelrc b/.babelrc index a9ce136..d4b74b5 100644 --- a/.babelrc +++ b/.babelrc @@ -1,3 +1,3 @@ { - "presets": ["react-native"] + "presets": ["module:metro-react-native-babel-preset"] } diff --git a/.flowconfig b/.flowconfig index 0b611f0..1043c82 100644 --- a/.flowconfig +++ b/.flowconfig @@ -29,7 +29,23 @@ node_modules/react-native/flow-github/ [options] emoji=true +esproposal.optional_chaining=enable +esproposal.nullish_coalescing=enable + 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 @@ -51,4 +67,4 @@ suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError [version] -^0.63.0 +^0.78.0 diff --git a/.gitignore b/.gitignore index eb37f39..8f9410a 100644 --- a/.gitignore +++ b/.gitignore @@ -53,4 +53,8 @@ buck-out/ */fastlane/report.xml */fastlane/Preview.html */fastlane/screenshots + +# Bundle artifact ++*.jsbundle + package-lock.json diff --git a/android/app/build.gradle b/android/app/build.gradle index 8a5b8c5..d177c30 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -114,19 +114,23 @@ def enableSeparateBuildPerCPUArchitecture = false def enableProguardInReleaseBuilds = false android { - compileSdkVersion 26 - buildToolsVersion "28.0.3" + compileSdkVersion rootProject.ext.compileSdkVersion defaultConfig { applicationId "io.cloudgrey.the_app" - minSdkVersion 19 - targetSdkVersion 26 + minSdkVersion rootProject.ext.minSdkVersion + targetSdkVersion rootProject.ext.targetSdkVersion + missingDimensionStrategy "RNN.reactNativeVersion", "reactNative57_5" versionCode 1 versionName "1.8.1" ndk { abiFilters "armeabi-v7a", "x86" } } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } splits { abi { reset() @@ -157,10 +161,16 @@ android { } dependencies { + compile project(':react-native-vector-icons') + compile project(':react-native-camera') + compile project(':react-native-android-sms-listener') implementation project(':react-native-android-sms-listener') implementation project(':react-native-vector-icons') implementation fileTree(dir: "libs", include: ["*.jar"]) - implementation "com.android.support:appcompat-v7:26.0.0" + implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}" + implementation "com.android.support:recyclerview-v7:${rootProject.ext.supportLibVersion}" + implementation "com.android.support:design:27.1.0" + implementation "com.android.support:support-v4:${rootProject.ext.supportLibVersion}" implementation "com.facebook.react:react-native:+" // From node_modules implementation project(':react-native-navigation') } diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro index 6e8516c..a92fa17 100644 --- a/android/app/proguard-rules.pro +++ b/android/app/proguard-rules.pro @@ -15,56 +15,3 @@ #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} - -# Disabling obfuscation is useful if you collect stack traces from production crashes -# (unless you are using a system that supports de-obfuscate the stack traces). --dontobfuscate - -# React Native - -# Keep our interfaces so they can be used by other ProGuard rules. -# See http://sourceforge.net/p/proguard/bugs/466/ --keep,allowobfuscation @interface com.facebook.proguard.annotations.DoNotStrip --keep,allowobfuscation @interface com.facebook.proguard.annotations.KeepGettersAndSetters --keep,allowobfuscation @interface com.facebook.common.internal.DoNotStrip - -# Do not strip any method/class that is annotated with @DoNotStrip --keep @com.facebook.proguard.annotations.DoNotStrip class * --keep @com.facebook.common.internal.DoNotStrip class * --keepclassmembers class * { - @com.facebook.proguard.annotations.DoNotStrip *; - @com.facebook.common.internal.DoNotStrip *; -} - --keepclassmembers @com.facebook.proguard.annotations.KeepGettersAndSetters class * { - void set*(***); - *** get*(); -} - --keep class * extends com.facebook.react.bridge.JavaScriptModule { *; } --keep class * extends com.facebook.react.bridge.NativeModule { *; } --keepclassmembers,includedescriptorclasses class * { native ; } --keepclassmembers class * { @com.facebook.react.uimanager.UIProp ; } --keepclassmembers class * { @com.facebook.react.uimanager.annotations.ReactProp ; } --keepclassmembers class * { @com.facebook.react.uimanager.annotations.ReactPropGroup ; } - --dontwarn com.facebook.react.** - -# TextLayoutBuilder uses a non-public Android constructor within StaticLayout. -# See libs/proxy/src/main/java/com/facebook/fbui/textlayoutbuilder/proxy for details. --dontwarn android.text.StaticLayout - -# okhttp - --keepattributes Signature --keepattributes *Annotation* --keep class okhttp3.** { *; } --keep interface okhttp3.** { *; } --dontwarn okhttp3.** - -# okio - --keep class sun.misc.Unsafe { *; } --dontwarn java.nio.file.* --dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement --dontwarn okio.** diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index d3cde7f..bdf71c2 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,7 +1,5 @@ + package="io.cloudgrey.the_app"> @@ -11,8 +9,8 @@ createAdditionalReactPackages() { return getPackages(); } - @Override - public String getJSMainModuleName() { - return "index"; - } - // this exists in order to be called from mobile: backdoor public void raiseToast(String message){ Toast.makeText(this, message, Toast.LENGTH_LONG).show(); diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png index cde69bc..a2f5908 100644 Binary files a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png new file mode 100644 index 0000000..1b52399 Binary files /dev/null and b/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png index c133a0c..ff10afd 100644 Binary files a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png new file mode 100644 index 0000000..115a4c7 Binary files /dev/null and b/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png index bfa42f0..dcd3cd8 100644 Binary files a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png new file mode 100644 index 0000000..459ca60 Binary files /dev/null and b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png index 324e72c..8ca12fe 100644 Binary files a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 0000000..8e19b41 Binary files /dev/null and b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000..b824ebd Binary files /dev/null and b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png new file mode 100644 index 0000000..4c19a13 Binary files /dev/null and b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png differ diff --git a/android/build.gradle b/android/build.gradle index 17e92db..8998684 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -1,9 +1,18 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { + ext { + buildToolsVersion = "27.0.3" + minSdkVersion = 19 + compileSdkVersion = 27 + targetSdkVersion = 26 + supportLibVersion = "27.1.1" + } repositories { - jcenter() google() + mavenLocal() + mavenCentral() + jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.1.4' @@ -16,11 +25,30 @@ buildscript { allprojects { repositories { mavenLocal() + mavenCentral() + google() jcenter() - maven { - // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm - url "$rootDir/../node_modules/react-native/android" + maven { url 'https://jitpack.io' } + maven { url "$rootDir/../node_modules/react-native/android" } + } +} + +task wrapper(type: Wrapper) { + gradleVersion = '4.4' + distributionUrl = distributionUrl.replace("bin", "all") +} + +subprojects { subproject -> + afterEvaluate { + if ((subproject.plugins.hasPlugin('android') || subproject.plugins.hasPlugin('android-library'))) { + android { + variantFilter { variant -> + def names = variant.flavors*.name + if (names.contains("reactNative51") || names.contains("reactNative55") || names.contains("reactNative56") || names.contains("reactNative57")) { + setIgnore(true) + } + } + } } - google() } } diff --git a/android/gradle.properties b/android/gradle.properties index f8c9d46..89e0d99 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -16,6 +16,3 @@ # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true - -android.useDeprecatedNdk=true -android.enableAapt2=false diff --git a/android/gradle/wrapper/gradle-wrapper.jar b/android/gradle/wrapper/gradle-wrapper.jar index b5166da..01b8bf6 100644 Binary files a/android/gradle/wrapper/gradle-wrapper.jar and b/android/gradle/wrapper/gradle-wrapper.jar differ diff --git a/android/gradle/wrapper/gradle-wrapper.properties.rej b/android/gradle/wrapper/gradle-wrapper.properties.rej new file mode 100644 index 0000000..dd69a27 --- /dev/null +++ b/android/gradle/wrapper/gradle-wrapper.properties.rej @@ -0,0 +1,7 @@ +diff a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties (rejected hunks) +@@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME + distributionPath=wrapper/dists + zipStoreBase=GRADLE_USER_HOME + zipStorePath=wrapper/dists +-distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip ++distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip diff --git a/android/gradlew b/android/gradlew index 91a7e26..cccdd3d 100755 --- a/android/gradlew +++ b/android/gradlew @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh ############################################################################## ## @@ -6,20 +6,38 @@ ## ############################################################################## -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" -warn ( ) { +warn () { echo "$*" } -die ( ) { +die () { echo echo "$*" echo @@ -30,6 +48,7 @@ die ( ) { cygwin=false msys=false darwin=false +nonstop=false case "`uname`" in CYGWIN* ) cygwin=true @@ -40,31 +59,11 @@ case "`uname`" in MINGW* ) msys=true ;; + NONSTOP* ) + nonstop=true + ;; esac -# For Cygwin, ensure paths are in UNIX format before anything is touched. -if $cygwin ; then - [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` -fi - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >&- -APP_HOME="`pwd -P`" -cd "$SAVED" >&- - CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar # Determine the Java command to use to start the JVM. @@ -90,7 +89,7 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then MAX_FD_LIMIT=`ulimit -H -n` if [ $? -eq 0 ] ; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then @@ -114,6 +113,7 @@ fi if $cygwin ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` @@ -154,11 +154,19 @@ if $cygwin ; then esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +exec "$JAVACMD" "$@" diff --git a/android/gradlew.bat b/android/gradlew.bat index aec9973..e95643d 100644 --- a/android/gradlew.bat +++ b/android/gradlew.bat @@ -8,14 +8,14 @@ @rem Set local scope for the variables with windows NT shell if "%OS%"=="Windows_NT" setlocal -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - set DIRNAME=%~dp0 if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome @@ -46,10 +46,9 @@ echo location of your Java installation. goto fail :init -@rem Get command-line arguments, handling Windowz variants +@rem Get command-line arguments, handling Windows variants if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args :win9xME_args @rem Slurp the command line arguments. @@ -60,11 +59,6 @@ set _SKIP=2 if "x%~1" == "x" goto execute set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ :execute @rem Setup the command line diff --git a/android/settings.gradle b/android/settings.gradle index d7cc2b6..3ccd12a 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -1,11 +1,15 @@ rootProject.name = 'TheApp' +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-camera' +project(':react-native-camera').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-camera/android') +include ':react-native-android-sms-listener' +project(':react-native-android-sms-listener').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-android-sms-listener/android') include ':react-native-android-sms-listener' project(':react-native-android-sms-listener').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-android-sms-listener/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-navigation' -project(':react-native-navigation').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-navigation/android/app/') - +project(':react-native-navigation').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-navigation/lib/android/app/') include ':app' - diff --git a/index.js b/index.js index d25408a..1420d30 100644 --- a/index.js +++ b/index.js @@ -3,10 +3,23 @@ import { registerScreens } from './screens'; registerScreens(); -Navigation.startSingleScreenApp({ - screen: { - screen: 'io.cloudgrey.HomeScreen', - title: 'The App', - } +Navigation.events().registerAppLaunchedListener(() => { + Navigation.setRoot({ + root: { + stack: { + children: [{ + component: { + name: 'io.cloudgrey.HomeScreen' + } + }], + options: { + topBar: { + title: { + text: 'The App' + } + } + } + } + } + }); }); - diff --git a/ios/TheApp.xcodeproj/project.pbxproj b/ios/TheApp.xcodeproj/project.pbxproj index 992db7c..b73ff20 100644 --- a/ios/TheApp.xcodeproj/project.pbxproj +++ b/ios/TheApp.xcodeproj/project.pbxproj @@ -5,7 +5,6 @@ }; objectVersion = 46; objects = { - /* Begin PBXBuildFile section */ 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */; }; 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */; }; @@ -13,6 +12,7 @@ 00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302DC1ABCB9D200DB3ED1 /* libRCTNetwork.a */; }; 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302E41ABCB9EE00DB3ED1 /* libRCTVibration.a */; }; 00E356F31AD99517003FC87E /* TheAppTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* TheAppTests.m */; }; + 11D1A2F320CAFA9E000508D9 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */; }; 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 */; }; @@ -22,8 +22,8 @@ 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 */; }; + 15F7F65D97B5402F8ABEF518 /* FontAwesome5_Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 09AED418315A4410B783A822 /* FontAwesome5_Regular.ttf */; }; 1654DF67E122430ABB996455 /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 55C29BF7EC474FCD8C960B34 /* Octicons.ttf */; }; - 1B1D3439203BF4A200AD352F /* libReactNativeNavigation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B1D3438203BF47400AD352F /* libReactNativeNavigation.a */; }; 1B6A8E71219BE7E400A8EFCF /* libRCTCameraRoll.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B6A8E4E219BE7C300A8EFCF /* libRCTCameraRoll.a */; }; 23E47E4B870342B4BEF34042 /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 2C3EEBEA42424A34947F8635 /* EvilIcons.ttf */; }; 26ACCDA9AE194353AA74E50A /* libRNVectorIcons.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A49DBB3EADE949BBA5160A3E /* libRNVectorIcons.a */; }; @@ -41,14 +41,17 @@ 2D16E6881FA4F8E400B85C8A /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2D16E6891FA4F8E400B85C8A /* libReact.a */; }; 2DA3A582A1AE479A97E773DC /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7CB533FC6B7C481090B1E10E /* FontAwesome.ttf */; }; 2DCD954D1E0B4F2C00145EB5 /* TheAppTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* TheAppTests.m */; }; + 2DF0FFEE2056DD460020B375 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3EA31DF850E9000B6D8A /* libReact.a */; }; 552B63ECCA3A4883AEDC26A2 /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 39F5F17AA28E49D18B5DFAC4 /* Foundation.ttf */; }; - 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */; }; - 7B76DDF93430426EA8B3E568 /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 61DC23E0AA19416D970BFF0E /* SimpleLineIcons.ttf */; }; + 6AD87DAE21ED20C000DED8BB /* libReactNativeNavigation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6AD87DAB21ED206100DED8BB /* libReactNativeNavigation.a */; }; 7D287D69B24F41FCA9D642FD /* Feather.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 8F63BA5C88A4417BAF797E53 /* Feather.ttf */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; + 91BB9682596B4B629145921E /* libRNCamera.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FE6BF295A47645DAAFEFF5E9 /* libRNCamera.a */; }; + A7BD9E7629D34F20A4AA8D10 /* FontAwesome5_Brands.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 49A61C1FEEDD45FD9BB846C4 /* FontAwesome5_Brands.ttf */; }; ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */; }; CD3BC712F15F45BE8A7E78D1 /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6483CD176268482293C1ECDF /* MaterialIcons.ttf */; }; D312B48889854AB9B480010D /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3879DD586AE7410F99BB51AB /* Zocial.ttf */; }; + D34129BAD8774B7CB1261B45 /* FontAwesome5_Solid.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 9A12389EB44540918C533F71 /* FontAwesome5_Solid.ttf */; }; DC5996BEF9D8474EB0BF8A48 /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 068C46DB21DA4A429C20458D /* Entypo.ttf */; }; F6FB104D65914049911C05F3 /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = FB7F2243935940AD867E7960 /* Ionicons.ttf */; }; /* End PBXBuildFile section */ @@ -117,111 +120,104 @@ remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; remoteInfo = React; }; - 1B1D341E203BF44B00AD352F /* PBXContainerItemProxy */ = { + 1B1D3431203BF44D00AD352F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 66B590584EBB47C5973E5D8D /* RNVectorIcons.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 5DBEB1501B18CEA900B34395; + remoteInfo = RNVectorIcons; + }; + 1B6A8E4D219BE7C300A8EFCF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 1B6A8E44219BE7C300A8EFCF /* RCTCameraRoll.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 58B5115D1A9E6B3D00147676; + remoteInfo = RCTCameraRoll; + }; + 2D02E4911E0B4A5D006451C7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2D02E47A1E0B4A5D006451C7; + remoteInfo = "TheApp-tvOS"; + }; + 2D16E6711FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = ADD01A681E09402E00F6D226; + remoteInfo = "RCTBlob-tvOS"; + }; + 2D16E6831FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 3DBE0D001F3B181A0099AA32; + remoteInfo = fishhook; + }; + 2D16E6851FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 3DBE0D0D1F3B181C0099AA32; + remoteInfo = "fishhook-tvOS"; + }; + 2DF0FFDE2056DD460020B375 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; proxyType = 2; remoteGlobalIDString = EBF21BDC1FC498900052F4D5; remoteInfo = jsinspector; }; - 1B1D3420203BF44B00AD352F /* PBXContainerItemProxy */ = { + 2DF0FFE02056DD460020B375 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; proxyType = 2; remoteGlobalIDString = EBF21BFA1FC4989A0052F4D5; remoteInfo = "jsinspector-tvOS"; }; - 1B1D3422203BF44B00AD352F /* PBXContainerItemProxy */ = { + 2DF0FFE22056DD460020B375 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; proxyType = 2; remoteGlobalIDString = 139D7ECE1E25DB7D00323FB7; remoteInfo = "third-party"; }; - 1B1D3424203BF44B00AD352F /* PBXContainerItemProxy */ = { + 2DF0FFE42056DD460020B375 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; proxyType = 2; remoteGlobalIDString = 3D383D3C1EBD27B6005632C8; remoteInfo = "third-party-tvOS"; }; - 1B1D3426203BF44B00AD352F /* PBXContainerItemProxy */ = { + 2DF0FFE62056DD460020B375 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; proxyType = 2; remoteGlobalIDString = 139D7E881E25C6D100323FB7; remoteInfo = "double-conversion"; }; - 1B1D3428203BF44B00AD352F /* PBXContainerItemProxy */ = { + 2DF0FFE82056DD460020B375 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; proxyType = 2; remoteGlobalIDString = 3D383D621EBD27B9005632C8; remoteInfo = "double-conversion-tvOS"; }; - 1B1D342A203BF44B00AD352F /* PBXContainerItemProxy */ = { + 2DF0FFEA2056DD460020B375 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; proxyType = 2; remoteGlobalIDString = 9936F3131F5F2E4B0010BF04; remoteInfo = privatedata; }; - 1B1D342C203BF44B00AD352F /* PBXContainerItemProxy */ = { + 2DF0FFEC2056DD460020B375 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; proxyType = 2; remoteGlobalIDString = 9936F32F1F5F2E5B0010BF04; remoteInfo = "privatedata-tvOS"; }; - 1B1D3431203BF44D00AD352F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 66B590584EBB47C5973E5D8D /* RNVectorIcons.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 5DBEB1501B18CEA900B34395; - remoteInfo = RNVectorIcons; - }; - 1B1D3437203BF47400AD352F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1B1D3433203BF47300AD352F /* ReactNativeNavigation.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = D8AFADBD1BEE6F3F00A4592D; - remoteInfo = ReactNativeNavigation; - }; - 1B6A8E4D219BE7C300A8EFCF /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1B6A8E44219BE7C300A8EFCF /* RCTCameraRoll.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5115D1A9E6B3D00147676; - remoteInfo = RCTCameraRoll; - }; - 2D02E4911E0B4A5D006451C7 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 2D02E47A1E0B4A5D006451C7; - remoteInfo = "TheApp-tvOS"; - }; - 2D16E6711FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = ADD01A681E09402E00F6D226; - remoteInfo = "RCTBlob-tvOS"; - }; - 2D16E6831FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3DBE0D001F3B181A0099AA32; - remoteInfo = fishhook; - }; - 2D16E6851FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3DBE0D0D1F3B181C0099AA32; - remoteInfo = "fishhook-tvOS"; - }; 3DAD3E831DF850E9000B6D8A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */; @@ -327,6 +323,27 @@ remoteGlobalIDString = 2D2A28201D9B03D100D4039D; remoteInfo = "RCTAnimation-tvOS"; }; + 6AD87DA321ED200100DED8BB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = A90DBD34A7DE4F5F99518F89 /* RNCamera.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 4107012F1ACB723B00C6AA39; + remoteInfo = RNCamera; + }; + 6AD87DAA21ED206100DED8BB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 6AD87DA521ED206100DED8BB /* ReactNativeNavigation.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = D8AFADBD1BEE6F3F00A4592D; + remoteInfo = ReactNativeNavigation; + }; + 6AD87DAC21ED206100DED8BB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 6AD87DA521ED206100DED8BB /* ReactNativeNavigation.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 7B49FEBB1E95090800DEB3EA; + remoteInfo = ReactNativeNavigationTests; + }; 78C398B81ACF4ADC00677621 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */; @@ -361,6 +378,7 @@ 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 00E356F21AD99517003FC87E /* TheAppTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = TheAppTests.m; sourceTree = ""; }; 068C46DB21DA4A429C20458D /* 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 = ""; }; + 09AED418315A4410B783A822 /* 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 = ""; }; 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 /* TheApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TheApp.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -371,7 +389,6 @@ 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = TheApp/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = TheApp/main.m; sourceTree = ""; }; 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; - 1B1D3433203BF47300AD352F /* ReactNativeNavigation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ReactNativeNavigation.xcodeproj; path = "../node_modules/react-native-navigation/ios/ReactNativeNavigation.xcodeproj"; sourceTree = ""; }; 1B6A8E44219BE7C300A8EFCF /* RCTCameraRoll.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTCameraRoll.xcodeproj; path = "../node_modules/react-native/Libraries/CameraRoll/RCTCameraRoll.xcodeproj"; sourceTree = ""; }; 2C3EEBEA42424A34947F8635 /* 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 = ""; }; 2D02E47B1E0B4A5D006451C7 /* TheApp-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "TheApp-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -379,19 +396,24 @@ 2D16E6891FA4F8E400B85C8A /* libReact.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libReact.a; sourceTree = BUILT_PRODUCTS_DIR; }; 3879DD586AE7410F99BB51AB /* 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 = ""; }; 39F5F17AA28E49D18B5DFAC4 /* 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 = ""; }; + 49A61C1FEEDD45FD9BB846C4 /* 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 = ""; }; 55C29BF7EC474FCD8C960B34 /* 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 = ""; }; 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAnimation.xcodeproj; path = "../node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = ""; }; 61DC23E0AA19416D970BFF0E /* 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 = ""; }; 6483CD176268482293C1ECDF /* 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 = ""; }; 66B590584EBB47C5973E5D8D /* 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 = ""; }; + 6AD87DA521ED206100DED8BB /* ReactNativeNavigation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ReactNativeNavigation.xcodeproj; path = "../node_modules/react-native-navigation/lib/ios/ReactNativeNavigation.xcodeproj"; sourceTree = ""; }; 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; 7CB533FC6B7C481090B1E10E /* 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 = ""; }; 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; 8F63BA5C88A4417BAF797E53 /* 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 = ""; }; + 9A12389EB44540918C533F71 /* 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 = ""; }; A49DBB3EADE949BBA5160A3E /* libRNVectorIcons.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNVectorIcons.a; sourceTree = ""; }; + A90DBD34A7DE4F5F99518F89 /* 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 = ""; }; ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTBlob.xcodeproj; path = "../node_modules/react-native/Libraries/Blob/RCTBlob.xcodeproj"; sourceTree = ""; }; CAAD0BF19438435982DAEBF7 /* 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 = ""; }; FB7F2243935940AD867E7960 /* 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 = ""; }; + FE6BF295A47645DAAFEFF5E9 /* libRNCamera.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNCamera.a; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -407,12 +429,11 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 6AD87DAE21ED20C000DED8BB /* libReactNativeNavigation.a in Frameworks */, 1B6A8E71219BE7E400A8EFCF /* libRCTCameraRoll.a in Frameworks */, - 1B1D3439203BF4A200AD352F /* libReactNativeNavigation.a in Frameworks */, 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 */, @@ -423,6 +444,7 @@ 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */, 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */, 26ACCDA9AE194353AA74E50A /* libRNVectorIcons.a in Frameworks */, + 91BB9682596B4B629145921E /* libRNCamera.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -445,6 +467,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 2DF0FFEE2056DD460020B375 /* libReact.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -555,14 +578,14 @@ 3DAD3EAB1DF850E9000B6D8A /* libcxxreact.a */, 3DAD3EAD1DF850E9000B6D8A /* libjschelpers.a */, 3DAD3EAF1DF850E9000B6D8A /* libjschelpers.a */, - 1B1D341F203BF44B00AD352F /* libjsinspector.a */, - 1B1D3421203BF44B00AD352F /* libjsinspector-tvOS.a */, - 1B1D3423203BF44B00AD352F /* libthird-party.a */, - 1B1D3425203BF44B00AD352F /* libthird-party.a */, - 1B1D3427203BF44B00AD352F /* libdouble-conversion.a */, - 1B1D3429203BF44B00AD352F /* libdouble-conversion.a */, - 1B1D342B203BF44B00AD352F /* libprivatedata.a */, - 1B1D342D203BF44B00AD352F /* libprivatedata-tvOS.a */, + 2DF0FFDF2056DD460020B375 /* libjsinspector.a */, + 2DF0FFE12056DD460020B375 /* libjsinspector-tvOS.a */, + 2DF0FFE32056DD460020B375 /* libthird-party.a */, + 2DF0FFE52056DD460020B375 /* libthird-party.a */, + 2DF0FFE72056DD460020B375 /* libdouble-conversion.a */, + 2DF0FFE92056DD460020B375 /* libdouble-conversion.a */, + 2DF0FFEB2056DD460020B375 /* libprivatedata.a */, + 2DF0FFED2056DD460020B375 /* libprivatedata-tvOS.a */, ); name = Products; sourceTree = ""; @@ -581,6 +604,9 @@ 55C29BF7EC474FCD8C960B34 /* Octicons.ttf */, 61DC23E0AA19416D970BFF0E /* SimpleLineIcons.ttf */, 3879DD586AE7410F99BB51AB /* Zocial.ttf */, + 49A61C1FEEDD45FD9BB846C4 /* FontAwesome5_Brands.ttf */, + 09AED418315A4410B783A822 /* FontAwesome5_Regular.ttf */, + 9A12389EB44540918C533F71 /* FontAwesome5_Solid.ttf */, ); name = Resources; sourceTree = ""; @@ -589,6 +615,7 @@ isa = PBXGroup; children = ( A49DBB3EADE949BBA5160A3E /* libRNVectorIcons.a */, + FE6BF295A47645DAAFEFF5E9 /* libRNCamera.a */, ); name = "Recovered References"; sourceTree = ""; @@ -601,14 +628,6 @@ name = Products; sourceTree = ""; }; - 1B1D3434203BF47300AD352F /* Products */ = { - isa = PBXGroup; - children = ( - 1B1D3438203BF47400AD352F /* libReactNativeNavigation.a */, - ); - name = Products; - sourceTree = ""; - }; 1B6A8E45219BE7C300A8EFCF /* Products */ = { isa = PBXGroup; children = ( @@ -634,6 +653,23 @@ name = Products; sourceTree = ""; }; + 6AD87DA021ED1FFF00DED8BB /* Products */ = { + isa = PBXGroup; + children = ( + 6AD87DA421ED200100DED8BB /* libRNCamera.a */, + ); + name = Products; + sourceTree = ""; + }; + 6AD87DA621ED206100DED8BB /* Products */ = { + isa = PBXGroup; + children = ( + 6AD87DAB21ED206100DED8BB /* libReactNativeNavigation.a */, + 6AD87DAD21ED206100DED8BB /* ReactNativeNavigationTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; 78C398B11ACF4ADC00677621 /* Products */ = { isa = PBXGroup; children = ( @@ -646,8 +682,8 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( + 6AD87DA521ED206100DED8BB /* ReactNativeNavigation.xcodeproj */, 1B6A8E44219BE7C300A8EFCF /* RCTCameraRoll.xcodeproj */, - 1B1D3433203BF47300AD352F /* ReactNativeNavigation.xcodeproj */, 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */, 146833FF1AC3E56700842450 /* React.xcodeproj */, 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */, @@ -661,6 +697,7 @@ 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */, 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */, 66B590584EBB47C5973E5D8D /* RNVectorIcons.xcodeproj */, + A90DBD34A7DE4F5F99518F89 /* RNCamera.xcodeproj */, ); name = Libraries; sourceTree = ""; @@ -791,7 +828,7 @@ 83CBB9F71A601CBA00E9B192 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 610; + LastUpgradeCheck = 940; ORGANIZATIONNAME = Facebook; TargetAttributes = { 00E356ED1AD99517003FC87E = { @@ -877,8 +914,12 @@ ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; }, { - ProductGroup = 1B1D3434203BF47300AD352F /* Products */; - ProjectRef = 1B1D3433203BF47300AD352F /* ReactNativeNavigation.xcodeproj */; + ProductGroup = 6AD87DA621ED206100DED8BB /* Products */; + ProjectRef = 6AD87DA521ED206100DED8BB /* ReactNativeNavigation.xcodeproj */; + }, + { + ProductGroup = 6AD87DA021ED1FFF00DED8BB /* Products */; + ProjectRef = A90DBD34A7DE4F5F99518F89 /* RNCamera.xcodeproj */; }, { ProductGroup = 1B1D342E203BF44C00AD352F /* Products */; @@ -952,102 +993,95 @@ remoteRef = 146834031AC3E56700842450 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D341F203BF44B00AD352F /* libjsinspector.a */ = { + 1B1D3432203BF44D00AD352F /* libRNVectorIcons.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libjsinspector.a; - remoteRef = 1B1D341E203BF44B00AD352F /* PBXContainerItemProxy */; + path = libRNVectorIcons.a; + remoteRef = 1B1D3431203BF44D00AD352F /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D3421203BF44B00AD352F /* libjsinspector-tvOS.a */ = { + 1B6A8E4E219BE7C300A8EFCF /* libRCTCameraRoll.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libjsinspector-tvOS.a"; - remoteRef = 1B1D3420203BF44B00AD352F /* PBXContainerItemProxy */; + path = libRCTCameraRoll.a; + remoteRef = 1B6A8E4D219BE7C300A8EFCF /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D3423203BF44B00AD352F /* libthird-party.a */ = { + 2D16E6721FA4F8DC00B85C8A /* libRCTBlob-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libthird-party.a"; - remoteRef = 1B1D3422203BF44B00AD352F /* PBXContainerItemProxy */; + path = "libRCTBlob-tvOS.a"; + remoteRef = 2D16E6711FA4F8DC00B85C8A /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D3425203BF44B00AD352F /* libthird-party.a */ = { + 2D16E6841FA4F8DC00B85C8A /* libfishhook.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libthird-party.a"; - remoteRef = 1B1D3424203BF44B00AD352F /* PBXContainerItemProxy */; + path = libfishhook.a; + remoteRef = 2D16E6831FA4F8DC00B85C8A /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D3427203BF44B00AD352F /* libdouble-conversion.a */ = { + 2D16E6861FA4F8DC00B85C8A /* libfishhook-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libdouble-conversion.a"; - remoteRef = 1B1D3426203BF44B00AD352F /* PBXContainerItemProxy */; + path = "libfishhook-tvOS.a"; + remoteRef = 2D16E6851FA4F8DC00B85C8A /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D3429203BF44B00AD352F /* libdouble-conversion.a */ = { + 2DF0FFDF2056DD460020B375 /* libjsinspector.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libdouble-conversion.a"; - remoteRef = 1B1D3428203BF44B00AD352F /* PBXContainerItemProxy */; + path = libjsinspector.a; + remoteRef = 2DF0FFDE2056DD460020B375 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D342B203BF44B00AD352F /* libprivatedata.a */ = { + 2DF0FFE12056DD460020B375 /* libjsinspector-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libprivatedata.a; - remoteRef = 1B1D342A203BF44B00AD352F /* PBXContainerItemProxy */; + path = "libjsinspector-tvOS.a"; + remoteRef = 2DF0FFE02056DD460020B375 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D342D203BF44B00AD352F /* libprivatedata-tvOS.a */ = { + 2DF0FFE32056DD460020B375 /* libthird-party.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libprivatedata-tvOS.a"; - remoteRef = 1B1D342C203BF44B00AD352F /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 1B1D3432203BF44D00AD352F /* libRNVectorIcons.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRNVectorIcons.a; - remoteRef = 1B1D3431203BF44D00AD352F /* PBXContainerItemProxy */; + path = "libthird-party.a"; + remoteRef = 2DF0FFE22056DD460020B375 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B1D3438203BF47400AD352F /* libReactNativeNavigation.a */ = { + 2DF0FFE52056DD460020B375 /* libthird-party.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libReactNativeNavigation.a; - remoteRef = 1B1D3437203BF47400AD352F /* PBXContainerItemProxy */; + path = "libthird-party.a"; + remoteRef = 2DF0FFE42056DD460020B375 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B6A8E4E219BE7C300A8EFCF /* libRCTCameraRoll.a */ = { + 2DF0FFE72056DD460020B375 /* libdouble-conversion.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libRCTCameraRoll.a; - remoteRef = 1B6A8E4D219BE7C300A8EFCF /* PBXContainerItemProxy */; + path = "libdouble-conversion.a"; + remoteRef = 2DF0FFE62056DD460020B375 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 2D16E6721FA4F8DC00B85C8A /* libRCTBlob-tvOS.a */ = { + 2DF0FFE92056DD460020B375 /* libdouble-conversion.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libRCTBlob-tvOS.a"; - remoteRef = 2D16E6711FA4F8DC00B85C8A /* PBXContainerItemProxy */; + path = "libdouble-conversion.a"; + remoteRef = 2DF0FFE82056DD460020B375 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 2D16E6841FA4F8DC00B85C8A /* libfishhook.a */ = { + 2DF0FFEB2056DD460020B375 /* libprivatedata.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = libfishhook.a; - remoteRef = 2D16E6831FA4F8DC00B85C8A /* PBXContainerItemProxy */; + path = libprivatedata.a; + remoteRef = 2DF0FFEA2056DD460020B375 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 2D16E6861FA4F8DC00B85C8A /* libfishhook-tvOS.a */ = { + 2DF0FFED2056DD460020B375 /* libprivatedata-tvOS.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libfishhook-tvOS.a"; - remoteRef = 2D16E6851FA4F8DC00B85C8A /* PBXContainerItemProxy */; + path = "libprivatedata-tvOS.a"; + remoteRef = 2DF0FFEC2056DD460020B375 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; 3DAD3E841DF850E9000B6D8A /* libRCTImage-tvOS.a */ = { @@ -1155,6 +1189,27 @@ remoteRef = 5E9157341DD0AC6500FF2AA8 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; + 6AD87DA421ED200100DED8BB /* libRNCamera.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libRNCamera.a; + remoteRef = 6AD87DA321ED200100DED8BB /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 6AD87DAB21ED206100DED8BB /* libReactNativeNavigation.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libReactNativeNavigation.a; + remoteRef = 6AD87DAA21ED206100DED8BB /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 6AD87DAD21ED206100DED8BB /* ReactNativeNavigationTests.xctest */ = { + isa = PBXReferenceProxy; + fileType = wrapper.cfbundle; + path = ReactNativeNavigationTests.xctest; + remoteRef = 6AD87DAC21ED206100DED8BB /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; 78C398B91ACF4ADC00677621 /* libRCTLinking.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; @@ -1201,8 +1256,10 @@ 26E433666E71407CBB7BAED0 /* MaterialCommunityIcons.ttf in Resources */, CD3BC712F15F45BE8A7E78D1 /* MaterialIcons.ttf in Resources */, 1654DF67E122430ABB996455 /* Octicons.ttf in Resources */, - 7B76DDF93430426EA8B3E568 /* SimpleLineIcons.ttf in Resources */, D312B48889854AB9B480010D /* Zocial.ttf in Resources */, + A7BD9E7629D34F20A4AA8D10 /* FontAwesome5_Brands.ttf in Resources */, + 15F7F65D97B5402F8ABEF518 /* FontAwesome5_Regular.ttf in Resources */, + D34129BAD8774B7CB1261B45 /* FontAwesome5_Solid.ttf in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1328,18 +1385,21 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", ); INFOPLIST_FILE = TheAppTests/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)\"", ); OTHER_LDFLAGS = ( "-ObjC", "-lc++", ); + PRODUCT_BUNDLE_IDENTIFIER = "io.cloudgrey.the-app"; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/TheApp.app/TheApp"; }; @@ -1353,18 +1413,21 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", ); INFOPLIST_FILE = TheAppTests/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)\"", ); OTHER_LDFLAGS = ( "-ObjC", "-lc++", ); + PRODUCT_BUNDLE_IDENTIFIER = "io.cloudgrey.the-app"; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/TheApp.app/TheApp"; }; @@ -1380,6 +1443,7 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", ); INFOPLIST_FILE = TheApp/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; @@ -1403,6 +1467,7 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", ); INFOPLIST_FILE = TheApp/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; @@ -1432,12 +1497,14 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", ); INFOPLIST_FILE = "TheApp-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -1466,12 +1533,14 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/../node_modules/react-native-vector-icons/RNVectorIconsManager", + "$(SRCROOT)/../node_modules/react-native-camera/ios/**", ); INFOPLIST_FILE = "TheApp-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -1501,6 +1570,7 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.TheApp-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1526,6 +1596,7 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.TheApp-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1543,20 +1614,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", @@ -1570,7 +1653,7 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = "$(SRCROOT)/../node_modules/react-native-navigation/ios/**"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -1585,13 +1668,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"; @@ -1599,6 +1692,7 @@ 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; @@ -1606,7 +1700,7 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = "$(SRCROOT)/../node_modules/react-native-navigation/ios/**"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; VALIDATE_PRODUCT = YES; diff --git a/ios/TheApp.xcodeproj/xcshareddata/xcschemes/TheApp-tvOS.xcscheme b/ios/TheApp.xcodeproj/xcshareddata/xcschemes/TheApp-tvOS.xcscheme index bd5a511..6cf5a58 100644 --- a/ios/TheApp.xcodeproj/xcshareddata/xcschemes/TheApp-tvOS.xcscheme +++ b/ios/TheApp.xcodeproj/xcshareddata/xcschemes/TheApp-tvOS.xcscheme @@ -1,6 +1,6 @@ diff --git a/ios/TheApp/AppDelegate.m b/ios/TheApp/AppDelegate.m index d776642..cae3dda 100644 --- a/ios/TheApp/AppDelegate.m +++ b/ios/TheApp/AppDelegate.m @@ -1,8 +1,8 @@ #import "AppDelegate.h" #import -#import "RCCManager.h" #import #import +#import @implementation AppDelegate @@ -39,7 +39,7 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( // ********************************************** self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; self.window.backgroundColor = [UIColor whiteColor]; - [[RCCManager sharedInstance] initBridgeWithBundleURL:jsCodeLocation launchOptions:launchOptions]; + [ReactNativeNavigation bootstrap:jsCodeLocation launchOptions:launchOptions]; return YES; } diff --git a/ios/TheApp/Info.plist b/ios/TheApp/Info.plist index a16a0cb..da88cde 100644 --- a/ios/TheApp/Info.plist +++ b/ios/TheApp/Info.plist @@ -37,6 +37,8 @@ NSAppTransportSecurity + NSAllowsArbitraryLoads + NSExceptionDomains localhost @@ -61,6 +63,9 @@ Octicons.ttf SimpleLineIcons.ttf Zocial.ttf + FontAwesome5_Brands.ttf + FontAwesome5_Regular.ttf + FontAwesome5_Solid.ttf UILaunchStoryboardName LaunchScreen diff --git a/ios/TheApp/main.m b/ios/TheApp/main.m index 3d767fc..c73e006 100644 --- a/ios/TheApp/main.m +++ b/ios/TheApp/main.m @@ -1,10 +1,8 @@ /** * Copyright (c) 2015-present, Facebook, Inc. - * All rights reserved. * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. */ #import diff --git a/ios/TheAppTests/Info.plist b/ios/TheAppTests/Info.plist index 886825c..ba72822 100644 --- a/ios/TheAppTests/Info.plist +++ b/ios/TheAppTests/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/ios/TheAppTests/TheAppTests.m b/ios/TheAppTests/TheAppTests.m index 7bfb738..03fdab6 100644 --- a/ios/TheAppTests/TheAppTests.m +++ b/ios/TheAppTests/TheAppTests.m @@ -1,10 +1,8 @@ /** * Copyright (c) 2015-present, Facebook, Inc. - * All rights reserved. * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. */ #import diff --git a/package.json b/package.json index 16d3363..07026a0 100644 --- a/package.json +++ b/package.json @@ -16,13 +16,13 @@ "dependencies": { "bluebird": "^3.5.3", "lodash": "^4.17.10", - "react": "16.2.0", - "react-native": "0.53.2", + "react": "^16.6.3", + "react-native": "^0.57.8", "react-native-android-sms-listener": "^0.5.0", "react-native-camera": "^1.1.1", "react-native-elements": "^1.0.0-beta2", - "react-native-navigation": "^1.1.382", - "react-native-vector-icons": "^4.5.0" + "react-native-navigation": "^2.7.1", + "react-native-vector-icons": "^5.0.0" }, "devDependencies": { "babel-eslint": "^7.1.1", diff --git a/screens/ClipboardScreen.js b/screens/ClipboardScreen.js index 40f92e3..ee26c41 100644 --- a/screens/ClipboardScreen.js +++ b/screens/ClipboardScreen.js @@ -32,7 +32,7 @@ export default class ClipboardScreen extends Component { Here's the clipboard text: {clipboardText} -