update react-native and project dependencies

[#bug] fix realm version
This commit is contained in:
Eric Dvorsak 2017-10-19 06:38:20 +02:00 committed by Eric Dvorsak
parent 0ad29ed164
commit 56c59c741f
49 changed files with 2251 additions and 1711 deletions

3
.babelrc Normal file
View File

@ -0,0 +1,3 @@
{
"presets": ["react-native"]
}

View File

@ -24,11 +24,14 @@
.*/Libraries/react-native/ReactNative.js
.*/node_modules/jest-runtime/build/__tests__/.*
; Ignore polyfills
.*/Libraries/polyfills/.*
[include]
[libs]
node_modules/react-native/Libraries/react-native/react-native-interface.js
node_modules/react-native/flow
node_modules/react-native/flow/
flow/
[options]
@ -46,13 +49,15 @@ module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|we
suppress_type=$FlowIssue
suppress_type=$FlowFixMe
suppress_type=$FlowFixMeProps
suppress_type=$FlowFixMeState
suppress_type=$FixMe
suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(30\\|[1-2][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)
suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(30\\|1[0-9]\\|[1-2][0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+
suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(5[0-6]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)
suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(5[0-6]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+
suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy
unsafe.enable_getters_and_setters=true
[version]
^0.30.0
^0.56.0

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
*.pbxproj -text

9
.gitignore vendored
View File

@ -86,3 +86,12 @@ ios/StatusIm.xcworkspace
#python
*.pyc
*.cache
# 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

View File

@ -1,7 +1,16 @@
{
"name": "StatusIm",
"interface": "reagent",
"androidHost": "10.0.3.2",
"platforms": {
"ios": {
"host": "localhost",
"modules": []
},
"android": {
"host": "10.0.2.2",
"modules": []
}
},
"modules": [
"react-native-contacts",
"react-native-invertible-scroll-view",
@ -49,7 +58,6 @@
"imageDirs": [
"resources/images"
],
"iosHost": "localhost",
"envRoots": {
"dev": "env/dev",
"prod": "env/prod"

View File

@ -35,6 +35,13 @@ import com.android.build.OutputFile
* // bundleInPaidRelease: true,
* // bundleInBeta: true,
*
* // whether to disable dev mode in custom build variants (by default only disabled in release)
* // for example: to disable dev mode in the staging build type (if configured)
* devDisabledInStaging: true,
* // The configuration property can be in the following formats
* // 'devDisabledIn${productFlavor}${buildType}'
* // 'devDisabledIn${buildType}'
*
* // the root of your project, i.e. where "package.json" lives
* root: "../../",
*
@ -57,11 +64,18 @@ import com.android.build.OutputFile
* // date; if you have any other folders that you want to ignore for performance reasons (gradle
* // indexes the entire tree), add them here. Alternatively, if you have JS files in android/
* // for example, you might want to remove it from here.
* inputExcludes: ["android/**", "ios/**"]
* inputExcludes: ["android/**", "ios/**"],
*
* // override which node gets called and with what additional arguments
* nodeExecutableAndArgs: ["node"],
*
* // supply additional arguments to the packager
* extraPackagerArgs: []
* ]
*/
project.ext.react = [
nodeExecutableAndArgs: ["node", "--max-old-space-size=4096"]
nodeExecutableAndArgs: ["node", "--max-old-space-size=4096"],
entryFile: "index.android.js"
]
apply from: "../../node_modules/react-native/react.gradle"
@ -116,6 +130,15 @@ android {
abiFilters "armeabi-v7a", "x86"
}
}
/**
* Fix for: (https://github.com/ReactiveX/RxJava/issues/4445)
* Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
* > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException:
* Duplicate files copied in APK META-INF/rxjava.properties
*/
packagingOptions {
exclude 'META-INF/rxjava.properties'
}
dexOptions {
jumboMode true
javaMaxHeapSize "4g"

View File

@ -50,6 +50,10 @@
-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

View File

@ -14,7 +14,7 @@ import android.content.res.Configuration;
import android.os.Bundle;
import com.facebook.react.ReactActivity;
import com.cboy.rn.splashscreen.SplashScreen;
import org.devio.rn.splashscreen.SplashScreen;
import com.testfairy.TestFairy;
import java.util.Properties;

View File

@ -4,7 +4,7 @@ import android.support.multidex.MultiDexApplication;
import com.BV.LinearGradient.LinearGradientPackage;
import com.aakashns.reactnativedialogs.ReactNativeDialogsPackage;
import com.bitgo.randombytes.RandomBytesPackage;
import com.cboy.rn.splashscreen.SplashScreenReactPackage;
import org.devio.rn.splashscreen.SplashScreenReactPackage;
import com.centaurwarchief.smslistener.SmsListenerPackage;
import com.facebook.react.ReactApplication;
import com.horcrux.svg.SvgPackage;
@ -14,9 +14,10 @@ import com.lugg.ReactNativeConfig.ReactNativeConfigPackage;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.react.shell.MainReactPackage;
import com.facebook.soloader.SoLoader;
import com.github.alinz.reactnativewebviewbridge.WebViewBridgePackage;
import com.github.yamill.orientation.OrientationPackage;
import com.i18n.reactnativei18n.ReactNativeI18n;
import com.AlexanderZaytsev.RNI18n.RNI18nPackage;
import com.instabug.reactlibrary.RNInstabugReactnativePackage;
import com.lwansbrough.RCTCamera.RCTCameraPackage;
import com.oblador.vectoricons.VectorIconsPackage;
@ -68,7 +69,7 @@ public class MainApplication extends MultiDexApplication implements ReactApplica
new RealmReactPackage(),
new VectorIconsPackage(),
new ReactNativeContacts(),
new ReactNativeI18n(),
new RNI18nPackage(),
new RandomBytesPackage(),
new LinearGradientPackage(),
new RCTCameraPackage(),
@ -88,6 +89,11 @@ public class MainApplication extends MultiDexApplication implements ReactApplica
return packages;
}
@Override
protected String getJSMainModuleName() {
return "index.android";
}
};
@Override
@ -95,4 +101,9 @@ public class MainApplication extends MultiDexApplication implements ReactApplica
return mReactNativeHost;
}
@Override
public void onCreate() {
super.onCreate();
SoLoader.init(this, /* native exopackage */ false);
}
}

8
android/keystores/BUCK Normal file
View File

@ -0,0 +1,8 @@
keystore(
name = "debug",
properties = "debug.keystore.properties",
store = "debug.keystore",
visibility = [
"PUBLIC",
],
)

View File

@ -0,0 +1,4 @@
key.store=debug.keystore
key.alias=androiddebugkey
key.store.password=android
key.alias.password=android

4
app.json Normal file
View File

@ -0,0 +1,4 @@
{
"name": "StatusIm",
"displayName": "StatusIm"
}

View File

@ -1,18 +1,23 @@
(ns ^:figwheel-no-load env.android.main
(:require [reagent.core :as r]
[re-frisk-remote.core :as rr]
[re-frame.core :as re-frame]
[status-im.android.core :as core]
[figwheel.client :as figwheel :include-macros true]
[re-frisk-remote.core :as rr]
[env.config :as conf]
[status-im.utils.handlers :as utils.handlers]))
(enable-console-print!)
(assert (exists? core/init) "Fatal Error - Your core.cljs file doesn't define an 'init' function!!! - Perhaps there was a compilation failure?")
(assert (exists? core/app-root) "Fatal Error - Your core.cljs file doesn't define an 'app-root' function!!! - Perhaps there was a compilation failure?")
(def cnt (r/atom 0))
(defn reloader [] @cnt [core/app-root])
(def root-el (r/as-element [reloader]))
(figwheel/watch-and-reload
:websocket-url "ws://10.0.3.2:3449/figwheel-ws"
:websocket-url "ws://localhost:3449/figwheel-ws"
:heads-up-display false
:jsload-callback #(swap! cnt inc))

6
env/dev/env/config.cljs vendored Normal file
View File

@ -0,0 +1,6 @@
(ns env.config)
(def figwheel-urls {
:ios "ws://localhost:3449/figwheel-ws"
:android "ws://10.0.2.2:3449/figwheel-ws"
})

View File

@ -14,28 +14,58 @@ var config = {
};
var React = require('react');
var createReactClass = require('create-react-class');
var ReactNative = require('react-native');
var WebSocket = require('WebSocket');
var self;
var scriptQueue = [];
var serverHost = null; // will be set dynamically
var fileBasePath = null; // will be set dynamically
var evaluate = eval; // This is needed, direct calls to eval does not work (RN packager???)
var externalModules = {};
var evalListeners = [ // Functions to be called after each js file is loaded and evaluated
function (url) {
if (url.indexOf('jsloader') > -1) {
shimJsLoader();
var evalListeners = {};
var asyncImportChain = new Promise(function (succ,fail) {succ(true);});
function fireEvalListenters(url) {
Object.values(evalListeners).forEach(function (listener) {
listener(url)
});
}
function formatCompileError(msg) {
var errorStr = "Figwheel Compile Exception: "
var data = msg['exception-data'];
if(data['message']) {
errorStr += data['message'] + " ";
}
if(data['file']) {
errorStr += "in file " + data['file'] + " ";
}
if(data['line']) {
errorStr += "at line " + data['line'];
}
if(data['column']) {
errorStr += ", column " + data['column'];
}
return errorStr;
}
/* This is simply demonstrating that we can receive and react to
* arbitrary messages from Figwheel this will enable creating a nicer
* feedback system in the Figwheel top level React component.
*/
function figwheelMessageHandler(msg) {
if(msg["msg-name"] == "compile-failed") {
console.warn(formatCompileError(msg));
}
}
function listenToFigwheelMessages() {
if(figwheel.client.add_json_message_watch) {
figwheel.client.add_json_message_watch("ReactNativeMessageIntercept",
figwheelMessageHandler);
}
},
function (url) {
if (url.indexOf('/figwheel/client/socket') > -1) {
setCorrectWebSocketImpl();
}
}];
var figwheelApp = function (platform, devHost) {
return React.createClass({
return createReactClass({
getInitialState: function () {
return {loaded: false}
},
@ -50,11 +80,13 @@ var figwheelApp = function (platform, devHost) {
}
return this.state.root;
},
componentDidMount: function () {
var app = this;
if (typeof goog === "undefined") {
loadApp(platform, devHost, function (appRoot) {
app.setState({root: appRoot, loaded: true})
app.setState({root: appRoot, loaded: true});
listenToFigwheelMessages();
});
}
}
@ -67,50 +99,30 @@ function logDebug(msg) {
}
}
// evaluates js code ensuring proper ordering
function customEval(url, javascript, success, error) {
if (scriptQueue.length > 0) {
if (scriptQueue[0] === url) {
try {
evaluate(javascript);
logDebug('Evaluated: ' + url);
scriptQueue.shift();
evalListeners.forEach(function (listener) {
listener(url)
});
success();
} catch (e) {
console.error(e);
error();
}
} else {
setTimeout(function () {
customEval(url, javascript, success, error)
}, 5);
}
} else {
console.error('Something bad happened...');
error()
}
}
var isChrome = function () {
return typeof importScripts === "function"
};
function asyncImportScripts(url, success, error) {
logDebug('(asyncImportScripts) Importing: ' + url);
scriptQueue.push(url);
fetch(url)
asyncImportChain =
asyncImportChain
.then(function (v) {return fetch(url);})
.then(function (response) {
return response.text()
if(response.ok)
return response.text();
throw new Error("Failed to Fetch: " + url + " - Perhaps your project was cleaned and you haven't recompiled?")
})
.then(function (responseText) {
return customEval(url, responseText, success, error);
evaluate(responseText);
fireEvalListenters(url);
success();
return true;
})
.catch(function (error) {
console.error(error);
return error();
.catch(function (e) {
console.error(e);
error();
return true;
});
}
@ -118,9 +130,7 @@ function syncImportScripts(url, success, error) {
try {
importScripts(url);
logDebug('Evaluated: ' + url);
evalListeners.forEach(function (listener) {
listener(url)
});
fireEvalListenters(url);
success();
} catch (e) {
console.error(e);
@ -130,22 +140,14 @@ function syncImportScripts(url, success, error) {
// Loads js file sync if possible or async.
function importJs(src, success, error) {
if (typeof success !== 'function') {
success = function () {
};
}
if (typeof error !== 'function') {
error = function () {
};
}
var file = fileBasePath + '/' + src;
logDebug('(importJs) Importing: ' + file);
var noop = function(){};
success = (typeof success == 'function') ? success : noop;
error = (typeof error == 'function') ? error : noop;
logDebug('(importJs) Importing: ' + src);
if (isChrome()) {
syncImportScripts(serverBaseUrl("localhost") + '/' + file, success, error);
syncImportScripts(src, success, error);
} else {
asyncImportScripts(serverBaseUrl(serverHost) + '/' + file, success, error);
asyncImportScripts(src, success, error);
}
}
@ -161,66 +163,56 @@ function interceptRequire() {
};
}
function compileWarningsToYellowBox() {
var log = window.console.log;
var compileWarningRx = /Figwheel: Compile/;
var compileExceptionRx = /Figwheel: Compile Exception/;
var errorInFileRx = /Error on file/;
var isBuffering = false;
var compileExceptionBuffer = "";
window.console.log = function (msg) {
log.apply(window.console, arguments);
if (compileExceptionRx.test(msg)) { // enter buffering mode to get all the messages for exception
isBuffering = true;
compileExceptionBuffer = msg + "\n";
} else if (errorInFileRx.test(msg) && isBuffering) { // exit buffering mode and log buffered messages to YellowBox
isBuffering = false;
console.warn(compileExceptionBuffer + msg);
compileExceptionBuffer = "";
} else if (isBuffering) { //log messages buffering mode
compileExceptionBuffer += msg + "\n";
} else if (compileWarningRx.test(msg)) {
console.warn(msg);
}
};
}
function serverBaseUrl(host) {
return "http://" + host + ":" + config.serverPort
}
function setCorrectWebSocketImpl() {
figwheel.client.socket.get_websocket_imp = function () {
return WebSocket;
};
function isUnDefined(x) {
return typeof x == "undefined";
}
// unlikely to happen but it happened to me a couple of times so ...
function assertRootElExists(platform) {
var basicMessage = "ClojureScript project didn't compile, or didn't load correctly.";
if(isUnDefined(env)) {
throw new Error("Critical Error: env namespace not defined - " + basicMessage);
} else if(isUnDefined(env[platform])) {
throw new Error("Critical Error: env." + platform + " namespace not defined - " + basicMessage);
} else if(isUnDefined(env[platform].main)) {
throw new Error("Critical Error: env." + platform + ".main namespace not defined - " + basicMessage);
} else if(isUnDefined(env[platform].main.root_el)) {
throw new Error("Critical Error: env." +
platform + ".main namespace doesn't define a root-el which should hold the root react node of your app.");
}
}
function loadApp(platform, devHost, onLoadCb) {
serverHost = devHost;
fileBasePath = config.basePath + platform;
var fileBasePath = serverBaseUrl((isChrome() ? "localhost" : devHost)) + "/" + config.basePath + platform;
// callback when app is ready to get the reloadable component
var mainJs = '/env/' + platform + '/main.js';
evalListeners.push(function (url) {
var mainJs = `/env/${platform}/main.js`;
evalListeners.waitForFinalEval = function (url) {
if (url.indexOf(mainJs) > -1) {
assertRootElExists(platform);
onLoadCb(env[platform].main.root_el);
console.info('Done loading Clojure app');
delete evalListeners.waitForFinalEval;
}
});
};
if (typeof goog === "undefined") {
console.info('Loading Closure base.');
interceptRequire();
compileWarningsToYellowBox();
importJs('goog/base.js', function () {
shimBaseGoog();
importJs('cljs_deps.js');
importJs('goog/deps.js', function () {
// need to know base path here
importJs(fileBasePath + '/goog/base.js', function () {
shimBaseGoog(fileBasePath);
importJs(fileBasePath + '/cljs_deps.js');
importJs(fileBasePath + '/goog/deps.js', function () {
// This is needed because of RN packager
// seriously React packager? why.
var googreq = goog.require;
googreq('figwheel.connect.build_' + platform);
googreq(`env.${platform}.main`);
});
});
}
@ -236,10 +228,18 @@ function withModules(moduleById) {
return self;
}
function figwheelImportScript(uri, callback) {
importJs(uri.toString(),
function () {callback(true);},
function () {callback(false);})
}
// Goog fixes
function shimBaseGoog() {
function shimBaseGoog(basePath) {
console.info('Shimming goog functions.');
goog.basePath = 'goog/';
goog.basePath = basePath + '/' + config.googBasePath;
goog.global.FIGWHEEL_WEBSOCKET_CLASS = WebSocket;
goog.global.FIGWHEEL_IMPORT_SCRIPT = figwheelImportScript;
goog.writeScriptSrcNode = importJs;
goog.writeScriptTag_ = function (src, optSourceText) {
importJs(src);
@ -247,44 +247,6 @@ function shimBaseGoog() {
};
}
// Figwheel fixes
// Used by figwheel - uses importScript to load JS rather than <script>'s
function shimJsLoader() {
console.info('==== Shimming jsloader ====');
goog.net.jsloader.load = function (uri, options) {
var deferred = {
callbacks: [],
errbacks: [],
addCallback: function (cb) {
deferred.callbacks.push(cb);
},
addErrback: function (cb) {
deferred.errbacks.push(cb);
},
callAllCallbacks: function () {
while (deferred.callbacks.length > 0) {
deferred.callbacks.shift()();
}
},
callAllErrbacks: function () {
while (deferred.errbacks.length > 0) {
deferred.errbacks.shift()();
}
}
};
// Figwheel needs this to be an async call,
// so that it can add callbacks to deferred
setTimeout(function () {
importJs(uri.getPath(),
deferred.callAllCallbacks,
deferred.callAllErrbacks);
}, 1);
return deferred;
};
}
self = {
withModules: withModules,
start: startApp

View File

@ -17,6 +17,7 @@ target 'StatusIm' do
# Pods for StatusIm
pod 'Instabug', '~> 7.0'
pod 'FirebaseMessaging'
target 'StatusImTests' do
inherit! :search_paths
@ -24,3 +25,11 @@ target 'StatusIm' do
end
end
post_install do |installer|
installer.pods_project.targets.each do |target|
if target.name == "React"
target.remove_from_project
end
end
end

View File

@ -1,12 +1,39 @@
PODS:
- FirebaseAnalytics (4.0.1):
- FirebaseCore (~> 4.0)
- FirebaseInstanceID (~> 2.0)
- GoogleToolboxForMac/NSData+zlib (~> 2.1)
- FirebaseCore (4.0.2):
- GoogleToolboxForMac/NSData+zlib (~> 2.1)
- FirebaseInstanceID (2.0.0):
- FirebaseCore (~> 4.0)
- FirebaseMessaging (2.0.0):
- FirebaseAnalytics (~> 4.0)
- FirebaseCore (~> 4.0)
- FirebaseInstanceID (~> 2.0)
- GoogleToolboxForMac/Logger (~> 2.1)
- Protobuf (~> 3.1)
- GoogleToolboxForMac/Defines (2.1.1)
- GoogleToolboxForMac/Logger (2.1.1):
- GoogleToolboxForMac/Defines (= 2.1.1)
- GoogleToolboxForMac/NSData+zlib (2.1.1):
- GoogleToolboxForMac/Defines (= 2.1.1)
- Instabug (7.2.6)
- Protobuf (3.3.0)
DEPENDENCIES:
- FirebaseMessaging
- Instabug (~> 7.0)
SPEC CHECKSUMS:
FirebaseAnalytics: 4d7040fefc3cd8b291cde35f12cf063d7963f15d
FirebaseCore: 1a8bf6c795ad07d2918278657954ffd2552e9c17
FirebaseInstanceID: 9fbf536668f4d3f0880e7438456dabd1376e294b
FirebaseMessaging: 227406c05b0dc9290702d2e9f18ab5528f0c2cf2
GoogleToolboxForMac: 8e329f1b599f2512c6b10676d45736bcc2cbbeb0
Instabug: 49d4fbf1bf14e2f9074dfb7774ca5611bae993b4
Protobuf: d582fecf68201eac3d79ed61369ef45734394b9c
PODFILE CHECKSUM: c11933657144d38f2d6b795ee22feae483f90823
PODFILE CHECKSUM: 99245e16fcfd88ea22cee996e71ce86ab3a43138
COCOAPODS: 1.3.1

Binary file not shown.

View File

@ -49,10 +49,8 @@
925C1F481F7B73B20063DFA0 /* FirebaseCoreDiagnostics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 925C1F411F7B73B20063DFA0 /* FirebaseCoreDiagnostics.framework */; };
925C1F491F7B73B20063DFA0 /* FirebaseInstanceID.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 925C1F421F7B73B20063DFA0 /* FirebaseInstanceID.framework */; };
925C1F4A1F7B73B20063DFA0 /* FirebaseNanoPB.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 925C1F431F7B73B20063DFA0 /* FirebaseNanoPB.framework */; };
925C1F4B1F7B73B20063DFA0 /* GoogleToolboxForMac.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 925C1F441F7B73B20063DFA0 /* GoogleToolboxForMac.framework */; };
925C1F4C1F7B73B20063DFA0 /* nanopb.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 925C1F451F7B73B20063DFA0 /* nanopb.framework */; };
925C1F811F7B73C00063DFA0 /* FirebaseMessaging.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 925C1F7F1F7B73C00063DFA0 /* FirebaseMessaging.framework */; };
925C1F821F7B73C00063DFA0 /* Protobuf.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 925C1F801F7B73C00063DFA0 /* Protobuf.framework */; };
92A0DF7D1F4DE3A4002051BC /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 92A0DF491F4DE3A0002051BC /* GoogleService-Info.plist */; };
9E0B01A11DDC5DA7002B0359 /* SF-UI-Text-Light.otf in Resources */ = {isa = PBXBuildFile; fileRef = 9E0B01A01DDC5DA7002B0359 /* SF-UI-Text-Light.otf */; };
9E3AB6D01D87DB2B008846B4 /* libReact-Native-Webview-Bridge.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9E3AB6C61D87DA2B008846B4 /* libReact-Native-Webview-Bridge.a */; };
@ -70,16 +68,17 @@
9EE89E2D1E03FD9F007D3C25 /* libimageCropPicker.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 20A5C9531D927137002C4965 /* libimageCropPicker.a */; };
9EF0836B1F3B53AB00876A8F /* libReactNativeConfig.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9EF083611F3B538B00876A8F /* libReactNativeConfig.a */; };
A6AF670051B842249D520C7B /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7ED174A34D7D42358313368B /* Foundation.ttf */; };
ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */; };
AE97D4B08C9F4821B8E9C50B /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 359B076A658B4FBAB5128B03 /* Ionicons.ttf */; };
B23B48FF1E76917B006D4535 /* RobotoMono-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = B23B48FE1E76917B006D4535 /* RobotoMono-Medium.ttf */; };
B24FC7FD1DE7195700D694FF /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FC1DE7195700D694FF /* Social.framework */; };
B24FC7FF1DE7195F00D694FF /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FE1DE7195F00D694FF /* MessageUI.framework */; };
B2A5F45C1DEC36BB00174F4D /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B2A5F4381DEC36B200174F4D /* libRCTAnimation.a */; };
B2DEA0D01E49E33300FA28D6 /* libRCTHttpServer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B2DEA0B11E49E32000FA28D6 /* libRCTHttpServer.a */; };
B2F2D1BC1D9D531B00B7B453 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */; };
B957A49EB0DE44D9A31CAF2D /* libRNSVG.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AF2BF381BC7B4EB0887F0091 /* libRNSVG.a */; };
BA68A2377A20496EA737000D /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 4E586E1B0E544F64AA9F5BD1 /* libz.tbd */; };
C3EE9AEA6F77464588FBAA64 /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7B5870D9ED504F32B6A09C35 /* FontAwesome.ttf */; };
C93242561FE1C68C00FE7099 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C93242531FE1C68C00FE7099 /* libRCTAnimation.a */; };
CE4E31B31D8695250033ED64 /* Statusgo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE4E31B21D8695250033ED64 /* Statusgo.framework */; };
D28AEFB4C39548EB80416889 /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 52E205D210BC48B7A553BB62 /* Entypo.ttf */; };
E0AD9E8F495A4907B65104BF /* libRCTImageResizer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2BEE3436791D42248F853999 /* libRCTImageResizer.a */; };
@ -202,13 +201,6 @@
remoteGlobalIDString = CDD7BF781B2D5125006FDA75;
remoteInfo = RNI18n;
};
20B7D10F1D3F74CD00B70F14 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 46E2F6052EB44C698C680894 /* RNI18n.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = CDD7BF831B2D5126006FDA75;
remoteInfo = RNI18nTests;
};
20B7D1141D3F74CD00B70F14 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 9F1854E6D9654226B1FC8308 /* RCTCamera.xcodeproj */;
@ -335,13 +327,6 @@
remoteGlobalIDString = 2D2A28881D9B049200D4039D;
remoteInfo = "RCTWebSocket-tvOS";
};
9E3F1C0A1DDAE781005E4779 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 2D2A28131D9B038B00D4039D;
remoteInfo = "React-tvOS";
};
9E3F1C111DDAE781005E4779 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = F3548417D8DA4362B6796A54 /* RNInstabug.xcodeproj */;
@ -377,6 +362,13 @@
remoteGlobalIDString = EB2648DF1C7BE17A00B8F155;
remoteInfo = ReactNativeConfig;
};
ADBDB9261DFEBF0700ED6528 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 358F4ED71D1E81A9004DF814;
remoteInfo = RCTBlob;
};
B24FC7F11DE718EF00D694FF /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 3A7EB0491DD9CABC00A4FCC8 /* SplashScreen.xcodeproj */;
@ -384,62 +376,6 @@
remoteGlobalIDString = 3D7682761D8E76B80014119E;
remoteInfo = SplashScreen;
};
B2A5F4371DEC36B200174F4D /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 134814201AA4EA6300B7C361;
remoteInfo = RCTAnimation;
};
B2A5F4391DEC36B200174F4D /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 2D2A28201D9B03D100D4039D;
remoteInfo = "RCTAnimation-tvOS";
};
B2BC5D881EADD18B00A140D0 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3C059A1DE3340900C268FA;
remoteInfo = yoga;
};
B2BC5D8A1EADD18B00A140D0 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3C06751DE3340C00C268FA;
remoteInfo = "yoga-tvOS";
};
B2BC5D8C1EADD18B00A140D0 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3CD9251DE5FBEC00167DC4;
remoteInfo = cxxreact;
};
B2BC5D8E1EADD18B00A140D0 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3CD9321DE5FBEE00167DC4;
remoteInfo = "cxxreact-tvOS";
};
B2BC5D901EADD18B00A140D0 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3CD90B1DE5FBD600167DC4;
remoteInfo = jschelpers;
};
B2BC5D921EADD18B00A140D0 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3CD9181DE5FBD800167DC4;
remoteInfo = "jschelpers-tvOS";
};
B2DEA0B01E49E32000FA28D6 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = B2DEA0A41E49E32000FA28D6 /* RCTHttpServer.xcodeproj */;
@ -447,6 +383,167 @@
remoteGlobalIDString = B29EC9CC1E48BED600704A36;
remoteInfo = RCTHttpServer;
};
C90047C41FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 807594C429CA44128AB5666B /* BVLinearGradient.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 64AA15081EF7F30100718508;
remoteInfo = "BVLinearGradient-tvOS";
};
C90047CC1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = ADD01A681E09402E00F6D226;
remoteInfo = "RCTBlob-tvOS";
};
C90047E81FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3DBE0D001F3B181A0099AA32;
remoteInfo = fishhook;
};
C90047EA1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3DBE0D0D1F3B181C0099AA32;
remoteInfo = "fishhook-tvOS";
};
C90047FB1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192;
remoteInfo = React;
};
C90047FD1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 2D2A28131D9B038B00D4039D;
remoteInfo = "React-tvOS";
};
C90047FF1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3C059A1DE3340900C268FA;
remoteInfo = yoga;
};
C90048011FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3C06751DE3340C00C268FA;
remoteInfo = "yoga-tvOS";
};
C90048031FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3CD9251DE5FBEC00167DC4;
remoteInfo = cxxreact;
};
C90048051FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3CD9321DE5FBEE00167DC4;
remoteInfo = "cxxreact-tvOS";
};
C90048071FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3CD90B1DE5FBD600167DC4;
remoteInfo = jschelpers;
};
C90048091FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D3CD9181DE5FBD800167DC4;
remoteInfo = "jschelpers-tvOS";
};
C900480B1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 139D7ECE1E25DB7D00323FB7;
remoteInfo = "third-party";
};
C900480D1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D383D3C1EBD27B6005632C8;
remoteInfo = "third-party-tvOS";
};
C900480F1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 139D7E881E25C6D100323FB7;
remoteInfo = "double-conversion";
};
C90048111FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 3D383D621EBD27B9005632C8;
remoteInfo = "double-conversion-tvOS";
};
C90048131FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 9936F3131F5F2E4B0010BF04;
remoteInfo = privatedata;
};
C90048151FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 9936F32F1F5F2E5B0010BF04;
remoteInfo = "privatedata-tvOS";
};
C900481C1FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 305F194186D848FDB07AF34C /* RNFS.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 6456441F1EB8DA9100672408;
remoteInfo = "RNFS-tvOS";
};
C90048221FC47AF50002B8EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1E74DC52A1E449A2BA858B14 /* RNSVG.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 94DDAC5C1F3D024300EED511;
remoteInfo = "RNSVG-tvOS";
};
C93242521FE1C68C00FE7099 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 134814201AA4EA6300B7C361;
remoteInfo = RCTAnimation;
};
C93242541FE1C68C00FE7099 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 2D2A28201D9B03D100D4039D;
remoteInfo = "RCTAnimation-tvOS";
};
C9B824E81FC713C800D277C6 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 46E2F6052EB44C698C680894 /* RNI18n.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 6476C4051EEAA69700B10F51;
remoteInfo = "RNI18n-tvOS";
};
CE4E319D1D8693090033ED64 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 5E5A7625B76441D984EA8C0D /* RCTImageResizer.xcodeproj */;
@ -515,7 +612,7 @@
439B6B4B407A4E2AACAFE5BE /* RCTStatus.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RCTStatus.xcodeproj; path = "../modules/react-native-status/ios/RCTStatus/RCTStatus.xcodeproj"; sourceTree = "<group>"; };
43A6FA689D844B0BAF3AA8B4 /* RCTOrientation.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RCTOrientation.xcodeproj; path = "../node_modules/react-native-orientation/iOS/RCTOrientation.xcodeproj"; sourceTree = "<group>"; };
45FB5F523DE04BDE9877869C /* 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 = "<group>"; };
46E2F6052EB44C698C680894 /* RNI18n.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNI18n.xcodeproj; path = "../node_modules/react-native-i18n/RNI18n.xcodeproj"; sourceTree = "<group>"; };
46E2F6052EB44C698C680894 /* RNI18n.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNI18n.xcodeproj; path = "../node_modules/react-native-i18n/ios/RNI18n.xcodeproj"; sourceTree = "<group>"; };
4C16DE0B1F89508700AA10DB /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
4E586E1B0E544F64AA9F5BD1 /* 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; };
4EC426A98043452BB6F9C134 /* libRNInstabug.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNInstabug.a; sourceTree = "<group>"; };
@ -539,10 +636,8 @@
925C1F411F7B73B20063DFA0 /* FirebaseCoreDiagnostics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = FirebaseCoreDiagnostics.framework; sourceTree = "<group>"; };
925C1F421F7B73B20063DFA0 /* FirebaseInstanceID.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = FirebaseInstanceID.framework; sourceTree = "<group>"; };
925C1F431F7B73B20063DFA0 /* FirebaseNanoPB.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = FirebaseNanoPB.framework; sourceTree = "<group>"; };
925C1F441F7B73B20063DFA0 /* GoogleToolboxForMac.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = GoogleToolboxForMac.framework; sourceTree = "<group>"; };
925C1F451F7B73B20063DFA0 /* nanopb.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = nanopb.framework; sourceTree = "<group>"; };
925C1F7F1F7B73C00063DFA0 /* FirebaseMessaging.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = FirebaseMessaging.framework; sourceTree = "<group>"; };
925C1F801F7B73C00063DFA0 /* Protobuf.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Protobuf.framework; sourceTree = "<group>"; };
92A0DF491F4DE3A0002051BC /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
9E0B01A01DDC5DA7002B0359 /* SF-UI-Text-Light.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "SF-UI-Text-Light.otf"; sourceTree = "<group>"; };
9E3AB6B21D87DA2A008846B4 /* React-Native-Webview-Bridge.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "React-Native-Webview-Bridge.xcodeproj"; path = "../node_modules/react-native-webview-bridge/ios/React-Native-Webview-Bridge.xcodeproj"; sourceTree = "<group>"; };
@ -558,6 +653,7 @@
9EF083381F3B538A00876A8F /* ReactNativeConfig.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ReactNativeConfig.xcodeproj; path = "../node_modules/react-native-config/ios/ReactNativeConfig.xcodeproj"; sourceTree = "<group>"; };
9F1854E6D9654226B1FC8308 /* RCTCamera.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RCTCamera.xcodeproj; path = "../node_modules/react-native-camera/ios/RCTCamera.xcodeproj"; sourceTree = "<group>"; };
ACA66A8F16CD2FE21F38738B /* Pods-StatusIm.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-StatusIm.debug.xcconfig"; path = "Pods/Target Support Files/Pods-StatusIm/Pods-StatusIm.debug.xcconfig"; sourceTree = "<group>"; };
ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTBlob.xcodeproj; path = "../node_modules/react-native/Libraries/Blob/RCTBlob.xcodeproj"; sourceTree = "<group>"; };
AF2BF381BC7B4EB0887F0091 /* libRNSVG.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNSVG.a; sourceTree = "<group>"; };
B23B48FE1E76917B006D4535 /* RobotoMono-Medium.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "RobotoMono-Medium.ttf"; sourceTree = "<group>"; };
B24FC7FC1DE7195700D694FF /* Social.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; };
@ -593,16 +689,15 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
C93242561FE1C68C00FE7099 /* libRCTAnimation.a in Frameworks */,
4C16DE0C1F89508700AA10DB /* JavaScriptCore.framework in Frameworks */,
B2DEA0D01E49E33300FA28D6 /* libRCTHttpServer.a in Frameworks */,
925C1F481F7B73B20063DFA0 /* FirebaseCoreDiagnostics.framework in Frameworks */,
9EE89E271E03FCB7007D3C25 /* libSplashScreen.a in Frameworks */,
925C1F811F7B73C00063DFA0 /* FirebaseMessaging.framework in Frameworks */,
925C1F4A1F7B73B20063DFA0 /* FirebaseNanoPB.framework in Frameworks */,
B2A5F45C1DEC36BB00174F4D /* libRCTAnimation.a in Frameworks */,
B24FC7FF1DE7195F00D694FF /* MessageUI.framework in Frameworks */,
B24FC7FD1DE7195700D694FF /* Social.framework in Frameworks */,
925C1F4B1F7B73B20063DFA0 /* GoogleToolboxForMac.framework in Frameworks */,
9EE89E2D1E03FD9F007D3C25 /* libimageCropPicker.a in Frameworks */,
9E3AB6D01D87DB2B008846B4 /* libReact-Native-Webview-Bridge.a in Frameworks */,
20B6B6841D92C42600CC5C6A /* RSKImageCropper.framework in Frameworks */,
@ -610,13 +705,13 @@
20AB9EC61D47CC0300E7FD9C /* libRCTStatus.a in Frameworks */,
925C1F471F7B73B20063DFA0 /* FirebaseCore.framework in Frameworks */,
20B6B6871D92C42600CC5C6A /* QBImagePicker.framework in Frameworks */,
ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */,
146834051AC3E58100842450 /* libReact.a in Frameworks */,
00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */,
00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */,
00C302E81ABCBA2D00DB3ED1 /* libRCTImage.a in Frameworks */,
133E29F31AD74F7200F7D852 /* libRCTLinking.a in Frameworks */,
00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */,
925C1F821F7B73C00063DFA0 /* Protobuf.framework in Frameworks */,
925C1F4C1F7B73B20063DFA0 /* nanopb.framework in Frameworks */,
139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */,
832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */,
@ -724,6 +819,8 @@
children = (
139FDEF41B06529B00C62182 /* libRCTWebSocket.a */,
9E3F1C061DDAE781005E4779 /* libRCTWebSocket-tvOS.a */,
C90047E91FC47AF50002B8EA /* libfishhook.a */,
C90047EB1FC47AF50002B8EA /* libfishhook-tvOS.a */,
);
name = Products;
sourceTree = "<group>";
@ -748,14 +845,20 @@
146834001AC3E56700842450 /* Products */ = {
isa = PBXGroup;
children = (
146834041AC3E56700842450 /* libReact.a */,
9E3F1C0B1DDAE781005E4779 /* libReact.a */,
B2BC5D891EADD18B00A140D0 /* libyoga.a */,
B2BC5D8B1EADD18B00A140D0 /* libyoga.a */,
B2BC5D8D1EADD18B00A140D0 /* libcxxreact.a */,
B2BC5D8F1EADD18B00A140D0 /* libcxxreact.a */,
B2BC5D911EADD18B00A140D0 /* libjschelpers.a */,
B2BC5D931EADD18B00A140D0 /* libjschelpers.a */,
C90047FC1FC47AF50002B8EA /* libReact.a */,
C90047FE1FC47AF50002B8EA /* libReact.a */,
C90048001FC47AF50002B8EA /* libyoga.a */,
C90048021FC47AF50002B8EA /* libyoga.a */,
C90048041FC47AF50002B8EA /* libcxxreact.a */,
C90048061FC47AF50002B8EA /* libcxxreact.a */,
C90048081FC47AF50002B8EA /* libjschelpers.a */,
C900480A1FC47AF50002B8EA /* libjschelpers.a */,
C900480C1FC47AF50002B8EA /* libthird-party.a */,
C900480E1FC47AF50002B8EA /* libthird-party.a */,
C90048101FC47AF50002B8EA /* libdouble-conversion.a */,
C90048121FC47AF50002B8EA /* libdouble-conversion.a */,
C90048141FC47AF50002B8EA /* libprivatedata.a */,
C90048161FC47AF50002B8EA /* libprivatedata-tvOS.a */,
);
name = Products;
sourceTree = "<group>";
@ -837,7 +940,7 @@
isa = PBXGroup;
children = (
20B7D10E1D3F74CD00B70F14 /* libRNI18n.a */,
20B7D1101D3F74CD00B70F14 /* RNI18nTests.xctest */,
C9B824E91FC713C800D277C6 /* libRNI18n-tvOS.a */,
);
name = Products;
sourceTree = "<group>";
@ -862,6 +965,7 @@
isa = PBXGroup;
children = (
20B7D11A1D3F74CD00B70F14 /* libRNFS.a */,
C900481D1FC47AF50002B8EA /* libRNFS.a */,
);
name = Products;
sourceTree = "<group>";
@ -870,6 +974,7 @@
isa = PBXGroup;
children = (
20B7D11F1D3F74CD00B70F14 /* libBVLinearGradient.a */,
C90047C51FC47AF50002B8EA /* libBVLinearGradient.a */,
);
name = Products;
sourceTree = "<group>";
@ -922,6 +1027,7 @@
9E3AB6B21D87DA2A008846B4 /* React-Native-Webview-Bridge.xcodeproj */,
146833FF1AC3E56700842450 /* React.xcodeproj */,
00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */,
ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */,
00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */,
00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */,
78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */,
@ -974,10 +1080,12 @@
A97BA941B2FB44B4B66EE6D3 /* Frameworks */,
1E7837547A9A40E18AD63CF3 /* Resources */,
5C1C8762251D6EF495FB2384 /* Pods */,
C90047C11FC47AF30002B8EA /* Recovered References */,
);
indentWidth = 2;
sourceTree = "<group>";
tabWidth = 2;
usesTabs = 0;
};
83CBBA001A601CBA00E9B192 /* Products */ = {
isa = PBXGroup;
@ -1009,6 +1117,7 @@
isa = PBXGroup;
children = (
92925B681F571DE600203EEB /* libRNSVG.a */,
C90048231FC47AF50002B8EA /* libRNSVG-tvOS.a */,
);
name = Products;
sourceTree = "<group>";
@ -1059,12 +1168,10 @@
children = (
4C16DE0B1F89508700AA10DB /* JavaScriptCore.framework */,
925C1F7F1F7B73C00063DFA0 /* FirebaseMessaging.framework */,
925C1F801F7B73C00063DFA0 /* Protobuf.framework */,
925C1F401F7B73B20063DFA0 /* FirebaseCore.framework */,
925C1F411F7B73B20063DFA0 /* FirebaseCoreDiagnostics.framework */,
925C1F421F7B73B20063DFA0 /* FirebaseInstanceID.framework */,
925C1F431F7B73B20063DFA0 /* FirebaseNanoPB.framework */,
925C1F441F7B73B20063DFA0 /* GoogleToolboxForMac.framework */,
925C1F451F7B73B20063DFA0 /* nanopb.framework */,
B24FC7FE1DE7195F00D694FF /* MessageUI.framework */,
B24FC7FC1DE7195700D694FF /* Social.framework */,
@ -1079,6 +1186,15 @@
name = Frameworks;
sourceTree = "<group>";
};
ADBDB9201DFEBF0600ED6528 /* Products */ = {
isa = PBXGroup;
children = (
ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */,
C90047CD1FC47AF50002B8EA /* libRCTBlob-tvOS.a */,
);
name = Products;
sourceTree = "<group>";
};
B24FC7BB1DE718EA00D694FF /* Products */ = {
isa = PBXGroup;
children = (
@ -1090,8 +1206,8 @@
B2A5F4301DEC36B200174F4D /* Products */ = {
isa = PBXGroup;
children = (
B2A5F4381DEC36B200174F4D /* libRCTAnimation.a */,
B2A5F43A1DEC36B200174F4D /* libRCTAnimation-tvOS.a */,
C93242531FE1C68C00FE7099 /* libRCTAnimation.a */,
C93242551FE1C68C00FE7099 /* libRCTAnimation.a */,
);
name = Products;
sourceTree = "<group>";
@ -1104,6 +1220,27 @@
name = Products;
sourceTree = "<group>";
};
C90047C11FC47AF30002B8EA /* Recovered References */ = {
isa = PBXGroup;
children = (
146834041AC3E56700842450 /* libReact.a */,
674B3D9595A047AB8D518F4E /* libRNFS.a */,
52F6ED6465184513A082652B /* libRNI18n.a */,
DF1CD4C3D1254774ACCAE4E8 /* libBVLinearGradient.a */,
5535217F57E44D77AA9CF083 /* libRCTOrientation.a */,
78C55F15EB4D4DAF9202A662 /* libRNRandomBytes.a */,
11632AA0A5F84F029DD91797 /* libRNVectorIcons.a */,
CD48A32459B64E96843BB238 /* libRealmReact.a */,
C2A4E93F6B154AEFA3485B45 /* libTcpSockets.a */,
2BEE3436791D42248F853999 /* libRCTImageResizer.a */,
4EC426A98043452BB6F9C134 /* libRNInstabug.a */,
AF2BF381BC7B4EB0887F0091 /* libRNSVG.a */,
7F752F17B1E04216B1337A72 /* libRNFIRMessaging.a */,
B2E945DF3D3D4E58845B95DA /* libRCTMapboxGL.a */,
);
name = "Recovered References";
sourceTree = "<group>";
};
CE4E31941D8693090033ED64 /* Products */ = {
isa = PBXGroup;
children = (
@ -1216,6 +1353,10 @@
ProductGroup = B2A5F4301DEC36B200174F4D /* Products */;
ProjectRef = B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */;
},
{
ProductGroup = ADBDB9201DFEBF0600ED6528 /* Products */;
ProjectRef = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */;
},
{
ProductGroup = 20B7D1111D3F74CD00B70F14 /* Products */;
ProjectRef = 9F1854E6D9654226B1FC8308 /* RCTCamera.xcodeproj */;
@ -1451,13 +1592,6 @@
remoteRef = 20B7D10D1D3F74CD00B70F14 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
20B7D1101D3F74CD00B70F14 /* RNI18nTests.xctest */ = {
isa = PBXReferenceProxy;
fileType = wrapper.cfbundle;
path = RNI18nTests.xctest;
remoteRef = 20B7D10F1D3F74CD00B70F14 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
20B7D1151D3F74CD00B70F14 /* libRCTCamera.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
@ -1584,13 +1718,6 @@
remoteRef = 9E3F1C051DDAE781005E4779 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
9E3F1C0B1DDAE781005E4779 /* libReact.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libReact.a;
remoteRef = 9E3F1C0A1DDAE781005E4779 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
9E3F1C121DDAE781005E4779 /* libRNInstabug.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
@ -1626,6 +1753,13 @@
remoteRef = 9EF083601F3B538B00876A8F /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libRCTBlob.a;
remoteRef = ADBDB9261DFEBF0700ED6528 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B24FC7F21DE718EF00D694FF /* libSplashScreen.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
@ -1633,62 +1767,6 @@
remoteRef = B24FC7F11DE718EF00D694FF /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2A5F4381DEC36B200174F4D /* libRCTAnimation.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libRCTAnimation.a;
remoteRef = B2A5F4371DEC36B200174F4D /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2A5F43A1DEC36B200174F4D /* libRCTAnimation-tvOS.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libRCTAnimation-tvOS.a";
remoteRef = B2A5F4391DEC36B200174F4D /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2BC5D891EADD18B00A140D0 /* libyoga.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libyoga.a;
remoteRef = B2BC5D881EADD18B00A140D0 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2BC5D8B1EADD18B00A140D0 /* libyoga.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libyoga.a;
remoteRef = B2BC5D8A1EADD18B00A140D0 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2BC5D8D1EADD18B00A140D0 /* libcxxreact.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libcxxreact.a;
remoteRef = B2BC5D8C1EADD18B00A140D0 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2BC5D8F1EADD18B00A140D0 /* libcxxreact.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libcxxreact.a;
remoteRef = B2BC5D8E1EADD18B00A140D0 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2BC5D911EADD18B00A140D0 /* libjschelpers.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libjschelpers.a;
remoteRef = B2BC5D901EADD18B00A140D0 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2BC5D931EADD18B00A140D0 /* libjschelpers.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libjschelpers.a;
remoteRef = B2BC5D921EADD18B00A140D0 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
B2DEA0B11E49E32000FA28D6 /* libRCTHttpServer.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
@ -1696,6 +1774,167 @@
remoteRef = B2DEA0B01E49E32000FA28D6 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90047C51FC47AF50002B8EA /* libBVLinearGradient.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libBVLinearGradient.a;
remoteRef = C90047C41FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90047CD1FC47AF50002B8EA /* libRCTBlob-tvOS.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libRCTBlob-tvOS.a";
remoteRef = C90047CC1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90047E91FC47AF50002B8EA /* libfishhook.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libfishhook.a;
remoteRef = C90047E81FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90047EB1FC47AF50002B8EA /* libfishhook-tvOS.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libfishhook-tvOS.a";
remoteRef = C90047EA1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90047FC1FC47AF50002B8EA /* libReact.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libReact.a;
remoteRef = C90047FB1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90047FE1FC47AF50002B8EA /* libReact.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libReact.a;
remoteRef = C90047FD1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048001FC47AF50002B8EA /* libyoga.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libyoga.a;
remoteRef = C90047FF1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048021FC47AF50002B8EA /* libyoga.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libyoga.a;
remoteRef = C90048011FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048041FC47AF50002B8EA /* libcxxreact.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libcxxreact.a;
remoteRef = C90048031FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048061FC47AF50002B8EA /* libcxxreact.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libcxxreact.a;
remoteRef = C90048051FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048081FC47AF50002B8EA /* libjschelpers.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libjschelpers.a;
remoteRef = C90048071FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C900480A1FC47AF50002B8EA /* libjschelpers.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libjschelpers.a;
remoteRef = C90048091FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C900480C1FC47AF50002B8EA /* libthird-party.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libthird-party.a";
remoteRef = C900480B1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C900480E1FC47AF50002B8EA /* libthird-party.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libthird-party.a";
remoteRef = C900480D1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048101FC47AF50002B8EA /* libdouble-conversion.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libdouble-conversion.a";
remoteRef = C900480F1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048121FC47AF50002B8EA /* libdouble-conversion.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libdouble-conversion.a";
remoteRef = C90048111FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048141FC47AF50002B8EA /* libprivatedata.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libprivatedata.a;
remoteRef = C90048131FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048161FC47AF50002B8EA /* libprivatedata-tvOS.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libprivatedata-tvOS.a";
remoteRef = C90048151FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C900481D1FC47AF50002B8EA /* libRNFS.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libRNFS.a;
remoteRef = C900481C1FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C90048231FC47AF50002B8EA /* libRNSVG-tvOS.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libRNSVG-tvOS.a";
remoteRef = C90048221FC47AF50002B8EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C93242531FE1C68C00FE7099 /* libRCTAnimation.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libRCTAnimation.a;
remoteRef = C93242521FE1C68C00FE7099 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C93242551FE1C68C00FE7099 /* libRCTAnimation.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libRCTAnimation.a;
remoteRef = C93242541FE1C68C00FE7099 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
C9B824E91FC713C800D277C6 /* libRNI18n-tvOS.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = "libRNI18n-tvOS.a";
remoteRef = C9B824E81FC713C800D277C6 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
CE4E319E1D8693090033ED64 /* libRCTImageResizer.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
@ -1756,7 +1995,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "set -o errexit\nexport NODE_BINARY=\"node --max-old-space-size=4096\"\n../node_modules/react-native/packager/react-native-xcode.sh";
shellScript = "set -o errexit\nexport NODE_BINARY=\"node --max-old-space-size=4096\"\n../node_modules/react-native/scripts/react-native-xcode.sh";
};
1986C962445001A2631E6AB0 /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
@ -1807,7 +2046,6 @@
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
967469AF8BA27D5CEC47B13C /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
@ -1822,7 +2060,6 @@
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-StatusImTests/Pods-StatusImTests-resources.sh\"\n";
showEnvVarsInLog = 0;
};
9E71BA90038083A3D24E18E9 /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
@ -1859,7 +2096,7 @@
};
E3914A731DF919ED00EBB515 /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
buildActionMask = 8;
files = (
);
inputPaths = (
@ -1867,7 +2104,7 @@
name = "Run Script";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
runOnlyForDeploymentPostprocessing = 1;
shellPath = /bin/sh;
shellScript = "#!/bin/bash\n\nsource \"${PROJECT_DIR}/scripts/set_xcode_version.sh\"";
};

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7702" systemVersion="14D136" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES">
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7701"/>
<capability name="Constraints with non-1.0 multipliers" minToolsVersion="5.1"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<view contentMode="scaleToFill" id="iN0-l3-epB">
<rect key="frame" x="0.0" y="0.0" width="480" height="480"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Powered by React Native" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="9" translatesAutoresizingMaskIntoConstraints="NO" id="8ie-xW-0ye">
<rect key="frame" x="20" y="439" width="441" height="21"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="StatusIm" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines" minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="kId-c2-rCX">
<rect key="frame" x="20" y="140" width="441" height="43"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="36"/>
<color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
<constraints>
<constraint firstItem="kId-c2-rCX" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="bottom" multiplier="1/3" constant="1" id="5cJ-9S-tgC"/>
<constraint firstAttribute="centerX" secondItem="kId-c2-rCX" secondAttribute="centerX" id="Koa-jz-hwk"/>
<constraint firstAttribute="bottom" secondItem="8ie-xW-0ye" secondAttribute="bottom" constant="20" id="Kzo-t9-V3l"/>
<constraint firstItem="8ie-xW-0ye" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="20" symbolic="YES" id="MfP-vx-nX0"/>
<constraint firstAttribute="centerX" secondItem="8ie-xW-0ye" secondAttribute="centerX" id="ZEH-qu-HZ9"/>
<constraint firstItem="kId-c2-rCX" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="20" symbolic="YES" id="fvb-Df-36g"/>
</constraints>
<nil key="simulatedStatusBarMetrics"/>
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
<point key="canvasLocation" x="548" y="455"/>
</view>
</objects>
</document>

View File

@ -37,7 +37,7 @@
- (void)testRendersWelcomeScreen
{
UIViewController *vc = [[[[UIApplication sharedApplication] delegate] window] rootViewController];
UIViewController *vc = [[[RCTSharedApplication() delegate] window] rootViewController];
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS];
BOOL foundElement = NO;

View File

@ -34,7 +34,6 @@ public class StatusPackage implements ReactPackage {
return modules;
}
@Override
public List<Class<? extends JavaScriptModule>> createJSModules() {
return Collections.emptyList();
}

View File

@ -1,5 +1,5 @@
#import <Foundation/Foundation.h>
#import "RCTBridgeModule.h"
#import <React/RCTBridgeModule.h>
#import "RCTLog.h"
#import <JavaScriptCore/JavaScriptCore.h>
#import "Jail.h"

2657
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -7,12 +7,12 @@
"postinstall": "./postinstall.sh"
},
"devDependencies": {
"rn-nodeify": "^6.0.1",
"sleep": "^5.1.1"
"rn-nodeify": "^8.2.0"
},
"dependencies": {
"assert": "^1.4.1",
"awesome-phonenumber": "^1.0.13",
"assert": "1.4.1",
"asyncstorage-down": "4.0.1",
"awesome-phonenumber": "2.1.2",
"babel-core": "6.24.1",
"babel-generator": "6.24.1",
"babel-helper-builder-react-jsx": "6.18.0",
@ -20,67 +20,71 @@
"babel-plugin-transform-es2015-parameters": "6.18.0",
"babel-plugin-transform-flow-strip-types": "6.18.0",
"babel-plugin-transform-regenerator": "6.20.0",
"babel-preset-react-native": "1.9.0",
"babel-preset-react-native": "4.0.0",
"babel-register": "6.18.0",
"bignumber.js": "github:status-im/bignumber.js#master",
"browserify-zlib": "^0.1.4",
"buffer": "^3.6.0",
"chance": "1.0.4",
"console-browserify": "^1.1.0",
"chance": "1.0.12",
"console-browserify": "1.1.0",
"constants-browserify": "0.0.1",
"dns.js": "^1.0.1",
"domain-browser": "^1.1.7",
"create-react-class": "15.6.2",
"dns.js": "1.0.1",
"domain-browser": "1.1.7",
"eccjs": "0.3.1",
"emojilib": "^2.2.1",
"events": "^1.1.1",
"homoglyph-finder": "^1.1.1",
"emojilib": "2.2.9",
"events": "1.1.1",
"homoglyph-finder": "1.1.1",
"https-browserify": "0.0.1",
"identicon.js": "github:status-im/identicon.js",
"instabug-reactnative": "git+https://github.com/status-im/instabug-reactnative.git",
"level-filesystem": "1.2.0",
"nfc-react-native": "github:status-im/nfc-react-native",
"os-browserify": "^0.1.2",
"path-browserify": "0.0.0",
"process": "^0.11.5",
"process": "0.11.10",
"prop-types": "15.6.0",
"punycode": "^1.4.1",
"querystring-es3": "^0.2.1",
"re-natal": "^0.3.7",
"react": "^16.0.0-alpha.6",
"react-dom": "15.5.4",
"react-native": "^0.43.4",
"react-native-action-button": "^2.0.13",
"querystring-es3": "0.2.1",
"re-natal": "0.7.2",
"react": "^16.0.0",
"react-dom": "16.0.0",
"react-native": "^0.50.3",
"react-native-action-button": "2.8.1",
"react-native-android-sms-listener": "github:adrian-tiberius/react-native-android-sms-listener#listener-bugfix",
"react-native-autolink": "^0.10.0",
"react-native-camera": "^0.9.4",
"react-native-config": "^0.5.0",
"react-native-contacts": "^0.2.4",
"react-native-crypto": "^2.0.1",
"react-native-dialogs": "0.0.16",
"react-native-drawer-layout": "1.1.3",
"react-native-emoji-picker": "git+https://github.com/alwx/react-native-emoji-picker.git",
"react-native-fcm": "7.5.1",
"react-native-fs": "2.1.0-rc.1",
"react-native-autolink": "1.1.1",
"react-native-camera": "0.10.0",
"react-native-config": "0.9.0",
"react-native-contacts": "1.0.3",
"react-native-crypto": "2.1.1",
"react-native-dialogs": "0.0.20",
"react-native-drawer-layout": "2.0.0",
"react-native-emoji-picker": "git+https://github.com/status-im/react-native-emoji-picker.git",
"react-native-fcm": "10.0.3",
"react-native-fs": "2.8.1",
"react-native-http": "github:tradle/react-native-http#834492d",
"react-native-http-bridge": "^0.4.1",
"react-native-i18n": "0.0.8",
"react-native-image-crop-picker": "^0.12.10",
"react-native-image-resizer": "^0.1.0",
"react-native-invertible-scroll-view": "^1.0.0",
"react-native-level-fs": "^2.0.1",
"react-native-linear-gradient": "2.0.0",
"react-native-mapbox-gl": "github:mapbox/react-native-mapbox-gl#d2a0a851d57672132344596b26a4776172370937",
"react-native-orientation": "github:youennPennarun/react-native-orientation",
"react-native-popup-menu": "^0.7.1",
"react-native-qrcode": "^0.2.6",
"react-native-randombytes": "^2.1.0",
"react-native-sortable-listview": "^0.1.1",
"react-native-splash-screen": "1.0.9",
"react-native-svg": "^4.6.1",
"react-native-http-bridge": "github:status-im/react-native-http-bridge",
"react-native-i18n": "2.0.9",
"react-native-image-crop-picker": "0.18.1",
"react-native-image-resizer": "1.0.0",
"react-native-invertible-scroll-view": "1.1.0",
"react-native-level-fs": "^3.0.0",
"react-native-linear-gradient": "2.3.0",
"react-native-mapbox-gl": "github:status-im/react-native-mapbox-gl",
"react-native-orientation": "3.1.0",
"react-native-os": "1.1.0",
"react-native-popup-menu": "0.8.3",
"react-native-qrcode": "0.2.6",
"react-native-randombytes": "^3.0.0",
"react-native-sortable-listview": "0.2.6",
"react-native-splash-screen": "3.0.6",
"react-native-svg": "6.0.0",
"react-native-swiper": "1.5.13",
"react-native-tcp": "^3.2.1",
"react-native-udp": "^2.0.0",
"react-native-vector-icons": "^4.0.1",
"react-native-webview-bridge": "git+https://github.com/status-im/react-native-webview-bridge.git#vizanto-master",
"readable-stream": "1.0.33",
"react-native-udp": "2.2.1",
"react-native-vector-icons": "4.4.2",
"react-native-webview-bridge": "github:status-im/react-native-webview-bridge#react-native-0.49",
"readable-stream": "^1.0.33",
"realm": "2.0.7",
"stream-browserify": "^1.0.0",
"string_decoder": "^0.10.31",
@ -92,12 +96,7 @@
},
"browser": {
"crypto": "react-native-crypto",
"_stream_transform": "readable-stream/transform",
"_stream_readable": "readable-stream/readable",
"_stream_writable": "readable-stream/writable",
"_stream_duplex": "readable-stream/duplex",
"_stream_passthrough": "readable-stream/passthrough",
"stream": "stream-browserify",
"assert": "assert",
"zlib": "browserify-zlib",
"console": "console-browserify",
"constants": "constants-browserify",
@ -105,7 +104,7 @@
"domain": "domain-browser",
"http": "react-native-http",
"https": "https-browserify",
"os": "os-browserify",
"os": "react-native-os",
"path": "path-browserify",
"querystring": "querystring-es3",
"fs": "react-native-level-fs",
@ -114,16 +113,21 @@
"tty": "tty-browserify",
"vm": "vm-browserify",
"net": "react-native-tcp",
"fcm": "react-native-fcm"
"fcm": "react-native-fcm",
"tls": false,
"child_process": false,
"buffer": "buffer",
"process": "process",
"_stream_transform": "readable-stream/transform",
"_stream_readable": "readable-stream/readable",
"_stream_writable": "readable-stream/writable",
"_stream_duplex": "readable-stream/duplex",
"_stream_passthrough": "readable-stream/passthrough",
"stream": "stream-browserify"
},
"react-native": {
"crypto": "react-native-crypto",
"_stream_transform": "readable-stream/transform",
"_stream_readable": "readable-stream/readable",
"_stream_writable": "readable-stream/writable",
"_stream_duplex": "readable-stream/duplex",
"_stream_passthrough": "readable-stream/passthrough",
"stream": "stream-browserify",
"assert": "assert",
"zlib": "browserify-zlib",
"console": "console-browserify",
"constants": "constants-browserify",
@ -131,7 +135,7 @@
"domain": "domain-browser",
"http": "react-native-http",
"https": "https-browserify",
"os": "os-browserify",
"os": "react-native-os",
"path": "path-browserify",
"querystring": "querystring-es3",
"fs": "react-native-level-fs",
@ -140,6 +144,16 @@
"tty": "tty-browserify",
"vm": "vm-browserify",
"net": "react-native-tcp",
"fcm": "react-native-fcm"
"fcm": "react-native-fcm",
"tls": false,
"child_process": false,
"buffer": "buffer",
"process": "process",
"_stream_transform": "readable-stream/transform",
"_stream_readable": "readable-stream/readable",
"_stream_writable": "readable-stream/writable",
"_stream_duplex": "readable-stream/duplex",
"_stream_passthrough": "readable-stream/passthrough",
"stream": "stream-browserify"
}
}

View File

@ -3,5 +3,5 @@
# rn-nodeify
# temporary hack due to https://github.com/facebook/react-native/issues/4968
./node_modules/.bin/rn-nodeify --install "assert,zlib,buffer,inherits,console,constants,crypto,dns,domain,events,http,https,os,path,process,punycode,querystring,fs,stream,string_decoder,timers,tty,url,util,net,vm" --hack;
npm install --save react@16.0.0-alpha.6;
npm install --save react@16.0.0;
npm install --save react-native-tcp@3.2.1;

View File

@ -2,17 +2,17 @@
:url "https://github.com/status-im/status-react/"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:dependencies [[org.clojure/clojure "1.9.0-alpha17"]
:dependencies [[org.clojure/clojure "1.9.0-RC1"]
[org.clojure/clojurescript "1.9.946"]
[org.clojure/core.async "0.3.443"]
[reagent "0.6.0" :exclusions [cljsjs/react cljsjs/react-dom cljsjs/react-dom-server]]
[re-frame "0.10.1"]
[reagent "0.7.0" :exclusions [cljsjs/react cljsjs/react-dom cljsjs/react-dom-server cljsjs/create-react-class]]
[re-frame "0.10.2"]
[com.andrewmcveigh/cljs-time "0.5.0"]
[com.taoensso/timbre "4.10.0"]
[hickory "0.7.1"]
[com.cognitect/transit-cljs "0.8.243"]]
:plugins [[lein-cljsbuild "1.1.7"]
[lein-figwheel "0.5.13"]
[lein-figwheel "0.5.14"]
[lein-re-frisk "0.5.5"]]
:clean-targets ["target/" "index.ios.js" "index.android.js"]
:aliases {"prod-build" ^{:doc "Recompile code with prod profile."}
@ -22,7 +22,7 @@
"test-cljs" ["with-profile" "test" "doo" "node" "test" "once"]
"test-protocol" ["with-profile" "test" "doo" "node" "protocol" "once"]}
:figwheel {:nrepl-port 7888}
:profiles {:dev {:dependencies [[figwheel-sidecar "0.5.11"]
:profiles {:dev {:dependencies [[figwheel-sidecar "0.5.14"]
[re-frisk-remote "0.5.3"]
[re-frisk-sidecar "0.5.4"]
[com.cemerick/piggieback "0.2.2"]

View File

@ -0,0 +1 @@
(ns cljsjs.create-react-class)

View File

@ -13,7 +13,9 @@
(def emoji-picker (js/require "react-native-emoji-picker"))
(def fs (js/require "react-native-fs"))
(def http-bridge (js/require "react-native-http-bridge"))
(def i18n (js/require "react-native-i18n"))
;; i18n is now exported in default object of the module
;; https://github.com/AlexanderZaytsev/react-native-i18n/blob/master/index.js
(def i18n (.-default (js/require "react-native-i18n")))
(def image-crop-picker (js/require "react-native-image-crop-picker"))
(def image-resizer (js/require "react-native-image-resizer"))
(def instabug (js/require "instabug-reactnative"))
@ -33,5 +35,3 @@
(def webview-bridge (js/require "react-native-webview-bridge"))
(def svg (js/require "react-native-svg"))
(def react-native-fcm (js/require "react-native-fcm"))

View File

@ -0,0 +1,5 @@
--- node_modules/react-native-http-bridge/ios/RCTHttpServer.h.bak 2017-11-23 00:47:07.000000000 +0100
+++ node_modules/react-native-http-bridge/ios/RCTHttpServer.h 2017-11-23 00:48:02.000000000 +0100
@@ -1 +1 @@
-#import "RCTBridgeModule.h"
+#import <React/RCTBridgeModule.h>

11
rn-upgrade-instabug.patch Normal file
View File

@ -0,0 +1,11 @@
--- node_modules/instabug-reactnative/ios/RNInstabug/InstabugReactBridge.h.bak 2017-11-23 00:50:00.000000000 +0100
+++ node_modules/instabug-reactnative/ios/RNInstabug/InstabugReactBridge.h 2017-11-23 00:50:38.000000000 +0100
@@ -7,7 +7,7 @@
//
#import <Foundation/Foundation.h>
-#import "RCTBridgeModule.h"
+#import <React/RCTBridgeModule.h>
#import "RCTEventEmitter.h"
@interface InstabugReactBridge : RCTEventEmitter <RCTBridgeModule>

View File

@ -3,7 +3,7 @@ if (typeof __filename === 'undefined') global.__filename = ''
if (typeof process === 'undefined') {
global.process = require('process')
} else {
var bProcess = require('process')
const bProcess = require('process')
for (var p in bProcess) {
if (!(p in process)) {
process[p] = bProcess[p]
@ -15,8 +15,8 @@ process.browser = false
if (typeof Buffer === 'undefined') global.Buffer = require('buffer').Buffer
// global.location = global.location || { port: 80 }
var isDev = typeof __DEV__ === 'boolean' && __DEV__
process.env.NODE_ENV = isDev ? 'development' : 'production'
const isDev = typeof __DEV__ === 'boolean' && __DEV__
process.env['NODE_ENV'] = isDev ? 'development' : 'production'
if (typeof localStorage !== 'undefined') {
localStorage.debug = isDev ? '*' : ''
}

View File

@ -34,7 +34,7 @@
(do (dispatch [:navigate-back]) true)
:else false)))]
(.addEventListener react/back-android "hardwareBackPress" new-listener)))
(.addEventListener react/back-handler "hardwareBackPress" new-listener)))
(defn orientation->keyword [o]
(keyword (.toLowerCase o)))

View File

@ -56,7 +56,7 @@
(defnstyle input-view [content-height single-line-input?]
{:flex 1
:font-size 14
:padding-top 5
:padding-top 9
:padding-bottom 5
:height (if single-line-input?
min-input-height

View File

@ -325,7 +325,7 @@
(set! (.-translations rn-dependencies/i18n)
(clj->js translations-by-locale))
;:zh, :zh-hans-xx, :zh-hant-xx have been added until this bug will be fixed https://github.com/fnando/i18n-js/issues/460
;;:zh, :zh-hans-xx, :zh-hant-xx have been added until this bug will be fixed https://github.com/fnando/i18n-js/issues/460
(def delimeters
"This function is a hack: mobile Safari doesn't support toLocaleString(), so we need to pass

View File

@ -11,4 +11,4 @@
(defn add-listener [listener]
(when react-components/net-info
(.addEventListener (.-isConnected react-components/net-info) "change" listener)))
(.addEventListener (.-isConnected react-components/net-info) "connectionChange" listener)))

View File

@ -22,7 +22,7 @@
(def device-event-emitter (.-DeviceEventEmitter rn-dependencies/react-native))
(def dismiss-keyboard! rn-dependencies/dismiss-keyboard)
(def orientation rn-dependencies/orientation)
(def back-android (get-react-property "BackAndroid"))
(def back-handler (get-react-property "BackHandler"))
(def drawer rn-dependencies/drawer)
(def splash-screen (.-SplashScreen native-modules))
@ -32,11 +32,12 @@
(def app-registry (get-react-property "AppRegistry"))
(def app-state (get-react-property "AppState"))
(def net-info (get-react-property "NetInfo"))
(def navigator (get-class "Navigator"))
(def geolocation (when (exists? js/window)
js/navigator.geolocation.))
(def view (get-class "View"))
(def status-bar (get-class "StatusBar"))
(def drawer-layout (adapt-class drawer))
(def drawer-layout (adapt-class (.-default drawer)))
(def list-view-class (get-class "ListView"))
(def scroll-view (get-class "ScrollView"))
@ -187,7 +188,3 @@
[keyboard-avoiding-view-class (merge {:behavior :padding} props)]
[view props])]
(vec (concat view-element children))))
;; Emoji
(def emojilib (js/require "emojilib"))

View File

@ -227,7 +227,6 @@
(def dapp-preview-flat-list
{:justify-content :center
:flex-direction :row
:flex-wrap :wrap
:margin-left 8
:margin-vertical 0
:background-color styles/color-white})
@ -458,4 +457,3 @@
;; TODO(goranjovic): Using the same style in dapp-details screen - reconcile later
(def dapp-details-container all-dapps-container)
(def discover-tag-container all-dapps-container)

View File

@ -24,6 +24,7 @@
status-im.ui.screens.wallet.choose-recipient.events
[re-frame.core :refer [dispatch reg-fx reg-cofx] :as re-frame]
[status-im.native-module.core :as status]
[status-im.ui.components.react :as react]
[status-im.ui.components.permissions :as permissions]
[status-im.constants :refer [console-chat-id]]
[status-im.data-store.core :as data-store]
@ -409,17 +410,17 @@
(fn []
(let [watch-id (atom nil)]
(.getCurrentPosition
navigator.geolocation
react/geolocation
#(dispatch [:update-geolocation (js->clj % :keywordize-keys true)])
#(dispatch [:update-geolocation (js->clj % :keywordize-keys true)])
(clj->js {:enableHighAccuracy true :timeout 20000 :maximumAge 1000}))
(when platform/android?
(reset! watch-id
(.watchPosition
navigator.geolocation
react/geolocation
#(do
(.clearWatch
navigator.geolocation
react/geolocation
@watch-id)
(dispatch [:update-geolocation (js->clj % :keywordize-keys true)])))))))]}))

View File

@ -35,6 +35,7 @@
(if disabled?
{:editable false}
{:keyboard-type :numeric
:auto-capitalize "none"
:placeholder "0.000"
:placeholder-text-color "#ffffff66"
:selection-color :white

View File

@ -16,8 +16,8 @@
(read-file path "base64" on-success on-error)))
(defn img->base64 [path on-success on-error]
(let [on-resized (fn [path]
(let [path (str/replace path "file:" "")]
(let [on-resized (fn [image]
(let [path (aget image "path")]
(log/debug "Resized: " path)
(image-base64-encode path on-success on-error)))
on-error (fn [error]

View File

@ -0,0 +1 @@
(ns cljsjs.create-react-class)

5
update.sh Executable file
View File

@ -0,0 +1,5 @@
#!/bin/sh
npm install
re-natal use-figwheel
react-native run-android