From 2102740a695aa4b89956ec36924843d46b55047e Mon Sep 17 00:00:00 2001 From: Roman Volosovskyi Date: Wed, 9 Aug 2017 18:30:08 +0300 Subject: [PATCH] add react-native-config --- .env | 1 + .env.jenkins | 1 + .env.prod | 1 + .re-natal | 7 +- Jenkinsfile | 1 + android/app/build.gradle | 3 + .../java/im/status/ethereum/MainActivity.java | 5 +- .../im/status/ethereum/MainApplication.java | 4 +- android/settings.gradle | 3 + ios/StatusIm.xcodeproj/project.pbxproj | 32 ++ ios/StatusIm/AppDelegate.m | 14 +- package-lock.json | 501 ++++++++++++++---- package.json | 1 + 13 files changed, 452 insertions(+), 122 deletions(-) create mode 100644 .env create mode 100644 .env.jenkins create mode 100644 .env.prod diff --git a/.env b/.env new file mode 100644 index 0000000000..992456b9e8 --- /dev/null +++ b/.env @@ -0,0 +1 @@ +TESTFAIRY_ENABLED=0 diff --git a/.env.jenkins b/.env.jenkins new file mode 100644 index 0000000000..175debf567 --- /dev/null +++ b/.env.jenkins @@ -0,0 +1 @@ +TESTFAIRY_ENABLED=1 diff --git a/.env.prod b/.env.prod new file mode 100644 index 0000000000..992456b9e8 --- /dev/null +++ b/.env.prod @@ -0,0 +1 @@ +TESTFAIRY_ENABLED=0 diff --git a/.re-natal b/.re-natal index 504a3efe7c..715b7dc082 100644 --- a/.re-natal +++ b/.re-natal @@ -1,7 +1,7 @@ { "name": "StatusIm", "interface": "reagent", - "androidHost": "10.0.3.2", + "androidHost": "localhost", "modules": [ "react-native-contacts", "react-native-invertible-scroll-view", @@ -42,12 +42,13 @@ "react-native-http-bridge", "emojilib", "react-native-mapbox-gl", - "bignumber.js" + "bignumber.js", + "react-native-config" ], "imageDirs": [ "images" ], - "iosHost": "localhost", + "iosHost": "10.0.1.4", "envRoots": { "dev": "env/dev", "prod": "env/prod" diff --git a/Jenkinsfile b/Jenkinsfile index 8e344691c3..6d01face54 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -17,6 +17,7 @@ node { sh 'git checkout master' sh 'git checkout ' + env.BRANCH_NAME sh 'rm -rf node_modules' + sh 'cp .env.jenkins .env' sh 'lein deps && npm install && ./re-natal deps' sh 'sed -i "" "s/301000/601000/g" node_modules/react-native/packager/src/JSTransformer/index.js' sh 'lein generate-externs' diff --git a/android/app/build.gradle b/android/app/build.gradle index 4c012530d4..54d87f9014 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -1,5 +1,7 @@ apply plugin: "com.android.application" +apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle" + import com.android.build.OutputFile /** @@ -185,6 +187,7 @@ dependencies { compile project(':react-native-webview-bridge') compile project(':reactnativemapboxgl') compile 'testfairy:testfairy-android-sdk:1.+@aar' + compile project(':react-native-config') compile fileTree(dir: "node_modules/realm/android/libs", include: ["*.jar"]) } diff --git a/android/app/src/main/java/im/status/ethereum/MainActivity.java b/android/app/src/main/java/im/status/ethereum/MainActivity.java index a3d1b03f52..613bf34834 100644 --- a/android/app/src/main/java/im/status/ethereum/MainActivity.java +++ b/android/app/src/main/java/im/status/ethereum/MainActivity.java @@ -80,7 +80,10 @@ public class MainActivity extends ReactActivity { SplashScreen.show(this); super.onCreate(savedInstanceState); - TestFairy.begin(this, "969f6c921cb435cea1d41d1ea3f5b247d6026d55"); + + if(BuildConfig.TESTFAIRY_ENABLED == "1") { + TestFairy.begin(this, "969f6c921cb435cea1d41d1ea3f5b247d6026d55"); + } if (!RootUtil.isDeviceRooted()) { configureStatus(); diff --git a/android/app/src/main/java/im/status/ethereum/MainApplication.java b/android/app/src/main/java/im/status/ethereum/MainApplication.java index df83a88018..53d9e345fb 100644 --- a/android/app/src/main/java/im/status/ethereum/MainApplication.java +++ b/android/app/src/main/java/im/status/ethereum/MainApplication.java @@ -7,6 +7,7 @@ import com.bitgo.randombytes.RandomBytesPackage; import com.cboy.rn.splashscreen.SplashScreenReactPackage; import com.centaurwarchief.smslistener.SmsListenerPackage; import com.facebook.react.ReactApplication; +import com.lugg.ReactNativeConfig.ReactNativeConfigPackage; import com.facebook.react.ReactNativeHost; import com.facebook.react.ReactPackage; import com.facebook.react.shell.MainReactPackage; @@ -60,7 +61,8 @@ public class MainApplication extends MultiDexApplication implements ReactApplica new ImageResizerPackage(), new PickerPackage(), new WebViewBridgePackage(BuildConfig.DEBUG), - new ReactNativeMapboxGLPackage() + new ReactNativeMapboxGLPackage(), + new ReactNativeConfigPackage() )); if (!BuildConfig.DEBUG) { diff --git a/android/settings.gradle b/android/settings.gradle index 806e75fc6c..0d4c6e3eaa 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -44,3 +44,6 @@ project(':react-native-webview-bridge').projectDir = new File(rootProject.projec include ':reactnativemapboxgl' project(':reactnativemapboxgl').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-mapbox-gl/android') + +include ':react-native-config' +project(':react-native-config').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-config/android') diff --git a/ios/StatusIm.xcodeproj/project.pbxproj b/ios/StatusIm.xcodeproj/project.pbxproj index 7cd6ad37d2..80c45b8785 100644 --- a/ios/StatusIm.xcodeproj/project.pbxproj +++ b/ios/StatusIm.xcodeproj/project.pbxproj @@ -57,6 +57,7 @@ 9EE470541ED007E10048FD10 /* libRCTMapboxGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9EE4702F1ED0071A0048FD10 /* libRCTMapboxGL.a */; }; 9EE89E271E03FCB7007D3C25 /* libSplashScreen.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7F21DE718EF00D694FF /* libSplashScreen.a */; }; 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 */; }; AE97D4B08C9F4821B8E9C50B /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 359B076A658B4FBAB5128B03 /* Ionicons.ttf */; }; B23B48FF1E76917B006D4535 /* RobotoMono-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = B23B48FE1E76917B006D4535 /* RobotoMono-Medium.ttf */; }; @@ -328,6 +329,13 @@ remoteGlobalIDString = C5DBB34B1AF2EF2B00E611A9; remoteInfo = RCTMapboxGLTests; }; + 9EF083601F3B538B00876A8F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 9EF083381F3B538A00876A8F /* ReactNativeConfig.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = EB2648DF1C7BE17A00B8F155; + remoteInfo = ReactNativeConfig; + }; B24FC7F11DE718EF00D694FF /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 3A7EB0491DD9CABC00A4FCC8 /* SplashScreen.xcodeproj */; @@ -492,6 +500,7 @@ 9ED2F4601D9D577B00B36508 /* SF-UI-Text-Bold.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "SF-UI-Text-Bold.otf"; sourceTree = ""; }; 9EE4701B1ED007190048FD10 /* RCTMapboxGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTMapboxGL.xcodeproj; path = "../node_modules/react-native-mapbox-gl/ios/RCTMapboxGL.xcodeproj"; sourceTree = ""; }; 9EE470501ED0079E0048FD10 /* Mapbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Mapbox.framework; sourceTree = ""; }; + 9EF083381F3B538A00876A8F /* ReactNativeConfig.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ReactNativeConfig.xcodeproj; path = "../node_modules/react-native-config/ios/ReactNativeConfig.xcodeproj"; sourceTree = ""; }; 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 = ""; }; 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 = ""; }; B23B48FE1E76917B006D4535 /* RobotoMono-Medium.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "RobotoMono-Medium.ttf"; sourceTree = ""; }; @@ -565,6 +574,7 @@ 8E55E6877F950B81C8D711C5 /* libPods-StatusIm.a in Frameworks */, 9EE470511ED0079E0048FD10 /* Mapbox.framework in Frameworks */, 9EE470541ED007E10048FD10 /* libRCTMapboxGL.a in Frameworks */, + 9EF0836B1F3B53AB00876A8F /* libReactNativeConfig.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -832,6 +842,7 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( + 9EF083381F3B538A00876A8F /* ReactNativeConfig.xcodeproj */, B2DEA0A41E49E32000FA28D6 /* RCTHttpServer.xcodeproj */, 9EC0135C1E06FB1900155B5C /* RCTWKWebView.xcodeproj */, B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */, @@ -935,6 +946,14 @@ name = Products; sourceTree = ""; }; + 9EF083391F3B538A00876A8F /* Products */ = { + isa = PBXGroup; + children = ( + 9EF083611F3B538B00876A8F /* libReactNativeConfig.a */, + ); + name = Products; + sourceTree = ""; + }; A97BA941B2FB44B4B66EE6D3 /* Frameworks */ = { isa = PBXGroup; children = ( @@ -1152,6 +1171,10 @@ ProductGroup = 146834001AC3E56700842450 /* Products */; ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; }, + { + ProductGroup = 9EF083391F3B538A00876A8F /* Products */; + ProjectRef = 9EF083381F3B538A00876A8F /* ReactNativeConfig.xcodeproj */; + }, { ProductGroup = 20B7D1251D3F74CD00B70F14 /* Products */; ProjectRef = F090E261B9854867A728CE4F /* RealmReact.xcodeproj */; @@ -1439,6 +1462,13 @@ remoteRef = 9EE470301ED0071A0048FD10 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; + 9EF083611F3B538B00876A8F /* libReactNativeConfig.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libReactNativeConfig.a; + remoteRef = 9EF083601F3B538B00876A8F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; B24FC7F21DE718EF00D694FF /* libSplashScreen.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; @@ -1831,6 +1861,7 @@ "$(SRCROOT)/../node_modules/react-native-image-resizer/ios/RCTImageResizer", "$(SRCROOT)/../node_modules/instabug-reactnative/ios/RNInstabug", "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", + "$(SRCROOT)/../node_modules/react-native-config/ios/**", ); INFOPLIST_FILE = StatusIm/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.0; @@ -1884,6 +1915,7 @@ "$(SRCROOT)/../node_modules/react-native-image-resizer/ios/RCTImageResizer", "$(SRCROOT)/../node_modules/instabug-reactnative/ios/RNInstabug", "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", + "$(SRCROOT)/../node_modules/react-native-config/ios/**", ); INFOPLIST_FILE = StatusIm/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.0; diff --git a/ios/StatusIm/AppDelegate.m b/ios/StatusIm/AppDelegate.m index 472bcb859e..428b84dceb 100644 --- a/ios/StatusIm/AppDelegate.m +++ b/ios/StatusIm/AppDelegate.m @@ -9,10 +9,11 @@ #import "AppDelegate.h" +#import "ReactNativeConfig.h" #import "RCTBundleURLProvider.h" #import "RCTRootView.h" #import "SplashScreen.h" -#import "TestFairy.h" +#import "TestFairy.h" #define NSLog(s, ...) do { NSLog(s, ##__VA_ARGS__); TFLog(s, ##__VA_ARGS__); } while (0) @import Instabug; @@ -30,17 +31,18 @@ initialProperties:nil launchOptions:launchOptions]; rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1]; - + self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; UIViewController *rootViewController = [UIViewController new]; rootViewController.view = rootView; self.window.rootViewController = rootViewController; [self.window makeKeyAndVisible]; [SplashScreen show]; -#ifndef DEBUG - [TestFairy begin:@"969f6c921cb435cea1d41d1ea3f5b247d6026d55"]; - //[Instabug startWithToken:@"5534212f4a44f477c9ab270ab5cd2062" invocationEvent:IBGInvocationEventShake]; -#endif + NSString *testfairyEnabled = [ReactNativeConfig envFor:@"TESTFAIRY_ENABLED"]; + if([testfairyEnabled isEqualToString:@"q"]){ + [TestFairy begin:@"969f6c921cb435cea1d41d1ea3f5b247d6026d55"]; + //[Instabug startWithToken:@"5534212f4a44f477c9ab270ab5cd2062" invocationEvent:IBGInvocationEventShake]; + } return YES; } diff --git a/package-lock.json b/package-lock.json index dee5ce1409..4ba2b58fb2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,6 +4,11 @@ "lockfileVersion": 1, "requires": true, "dependencies": { + "Base64": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/Base64/-/Base64-0.2.1.tgz", + "integrity": "sha1-ujpCMHCOGGcFBl5mur3Uw1z2ACg=" + }, "abbrev": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.0.tgz", @@ -78,12 +83,12 @@ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" }, "anymatch": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.0.tgz", - "integrity": "sha1-o+Uvo5FoyCX/V7AkgSbOWo/5VQc=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", "requires": { - "arrify": "1.0.1", - "micromatch": "2.3.11" + "micromatch": "2.3.11", + "normalize-path": "2.1.1" } }, "are-we-there-yet": { @@ -167,11 +172,6 @@ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" - }, "art": { "version": "0.10.1", "resolved": "https://registry.npmjs.org/art/-/art-0.10.1.tgz", @@ -192,7 +192,7 @@ "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.1.tgz", "integrity": "sha1-SLokC0WpKA6UdImQull9IWYX/UA=", "requires": { - "bn.js": "4.11.7", + "bn.js": "4.11.8", "inherits": "2.0.1", "minimalistic-assert": "1.0.0" } @@ -234,9 +234,9 @@ "integrity": "sha1-LmFQV8jjcTmabXeUmppq8k/kbfw=" }, "awesome-phonenumber": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/awesome-phonenumber/-/awesome-phonenumber-1.4.0.tgz", - "integrity": "sha1-k7GRSxMU5pIQ3zwYxrAfiIZyJC4=" + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/awesome-phonenumber/-/awesome-phonenumber-1.5.0.tgz", + "integrity": "sha512-+vGdA7uI1qcPBfku2xEGiVTfHW0DTmMDcbgrWrSAYpl0nPa+ehhUsSmz18QhaZbZBriewGOzEj+t3g7zMDLuyQ==" }, "aws-sign2": { "version": "0.6.0", @@ -291,7 +291,7 @@ "requires": { "babel-core": "6.24.1", "babel-runtime": "6.25.0", - "core-js": "2.4.1", + "core-js": "2.5.0", "home-or-tmp": "2.0.0", "lodash": "4.17.4", "mkdirp": "0.5.1", @@ -795,7 +795,7 @@ "integrity": "sha1-g2TKYt+Or7gwSZ9pkXdGbDsDSZ0=", "requires": { "babel-runtime": "6.25.0", - "core-js": "2.4.1", + "core-js": "2.5.0", "regenerator-runtime": "0.10.5" } }, @@ -893,7 +893,7 @@ "requires": { "babel-core": "6.24.1", "babel-runtime": "6.25.0", - "core-js": "2.4.1", + "core-js": "2.5.0", "home-or-tmp": "2.0.0", "lodash": "4.17.4", "mkdirp": "0.5.1", @@ -905,7 +905,7 @@ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", "integrity": "sha1-M7mOql1IK7AajRqmtDetKwGuxBw=", "requires": { - "core-js": "2.4.1", + "core-js": "2.5.0", "regenerator-runtime": "0.10.5" } }, @@ -963,11 +963,6 @@ "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", "integrity": "sha1-eAqZyE59YAJgNhURxId2E78k9rs=" }, - "Base64": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/Base64/-/Base64-0.2.1.tgz", - "integrity": "sha1-ujpCMHCOGGcFBl5mur3Uw1z2ACg=" - }, "base64-js": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", @@ -1034,9 +1029,9 @@ } }, "bn.js": { - "version": "4.11.7", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.7.tgz", - "integrity": "sha512-LxFiV5mefv0ley0SzqkOPR1bC4EbpPx8LkOz5vMe/Yi15t5hzwgO/G+tc7wOtL4PZTYjwHu8JnEiSLumuSjSfA==" + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" }, "body-parser": { "version": "1.13.3", @@ -1182,7 +1177,7 @@ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", "requires": { - "bn.js": "4.11.7", + "bn.js": "4.11.8", "randombytes": "2.0.5" } }, @@ -1191,7 +1186,7 @@ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", "requires": { - "bn.js": "4.11.7", + "bn.js": "4.11.8", "browserify-rsa": "4.0.1", "create-hash": "1.1.3", "create-hmac": "1.1.6", @@ -1380,9 +1375,9 @@ "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==" }, "compressible": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.10.tgz", - "integrity": "sha1-/tocf3YXkScyspv4zyYlKiC57s0=", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.11.tgz", + "integrity": "sha1-FnGKdd4oPtjmBAQWJaIGRYZ5fYo=", "requires": { "mime-db": "1.29.0" } @@ -1394,7 +1389,7 @@ "requires": { "accepts": "1.2.13", "bytes": "2.1.0", - "compressible": "2.0.10", + "compressible": "2.0.11", "debug": "2.2.0", "on-headers": "1.0.1", "vary": "1.0.1" @@ -1604,9 +1599,9 @@ "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "core-js": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "integrity": "sha1-TekR5mew6ukSTjQlS1OupvxhjT4=" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.0.tgz", + "integrity": "sha1-VpwFCRi+ZIazg3VSAorgRmtxcIY=" }, "core-util-is": { "version": "1.0.2", @@ -1623,7 +1618,7 @@ "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", "requires": { - "bn.js": "4.11.7", + "bn.js": "4.11.8", "elliptic": "6.4.0" } }, @@ -1659,13 +1654,23 @@ "sha.js": "2.4.8" } }, + "create-react-class": { + "version": "15.6.0", + "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.0.tgz", + "integrity": "sha1-q0SEl8JlZuHilBPogyB9V8/nvtQ=", + "requires": { + "fbjs": "0.8.14", + "loose-envify": "1.3.1", + "object-assign": "4.1.1" + } + }, "cross-spawn": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", "requires": { "lru-cache": "4.1.1", - "which": "1.2.14" + "which": "1.3.0" } }, "cryptiles": { @@ -1814,7 +1819,7 @@ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", "requires": { - "bn.js": "4.11.7", + "bn.js": "4.11.8", "miller-rabin": "4.0.0", "randombytes": "2.0.5" } @@ -1892,7 +1897,7 @@ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", "requires": { - "bn.js": "4.11.7", + "bn.js": "4.11.8", "brorand": "1.1.0", "hash.js": "1.1.3", "hmac-drbg": "1.0.1", @@ -2006,6 +2011,32 @@ "merge": "1.2.0" } }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "requires": { + "lru-cache": "4.1.1", + "shebang-command": "1.2.0", + "which": "1.3.0" + } + } + } + }, "exit-hook": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", @@ -2085,7 +2116,7 @@ "integrity": "sha1-HtkZnanL/i7y96MbL96LDRI2iXI=", "requires": { "iconv-lite": "0.4.18", - "jschardet": "1.5.0", + "jschardet": "1.5.1", "tmp": "0.0.31" } }, @@ -2098,9 +2129,9 @@ } }, "extsprintf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz", - "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fancy-log": { "version": "1.3.0", @@ -2397,6 +2428,11 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=" }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", @@ -2475,7 +2511,7 @@ "homedir-polyfill": "1.0.1", "ini": "1.3.4", "is-windows": "0.2.0", - "which": "1.2.14" + "which": "1.3.0" } }, "globals": { @@ -2727,7 +2763,7 @@ "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", "requires": { "assert-plus": "0.2.0", - "jsprim": "1.4.0", + "jsprim": "1.4.1", "sshpk": "1.13.1" } }, @@ -2995,7 +3031,7 @@ "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", "requires": { - "node-fetch": "1.7.1", + "node-fetch": "1.7.2", "whatwg-fetch": "2.0.3" } }, @@ -3034,7 +3070,7 @@ "resolved": "https://registry.npmjs.org/sane/-/sane-1.5.0.tgz", "integrity": "sha1-pK3q52TQSGIeyyfV+ez1ExAZOfM=", "requires": { - "anymatch": "1.3.0", + "anymatch": "1.3.2", "exec-sh": "0.2.0", "fb-watchman": "1.9.2", "minimatch": "3.0.4", @@ -3078,9 +3114,9 @@ "optional": true }, "jschardet": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/jschardet/-/jschardet-1.5.0.tgz", - "integrity": "sha512-+Q8JsoEQbrdE+a/gg1F9XO92gcKXgpE5UACqr0sIubjDmBEkd+OOWPGzQeMrWSLxd73r4dHxBeRW7edHu5LmJQ==" + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/jschardet/-/jschardet-1.5.1.tgz", + "integrity": "sha512-vE2hT1D0HLZCLLclfBSfkfTTedhVj0fubHpJBHKwwUWX0nSbhPAfk+SG9rTX95BYNmau8rGFfCeaT6T5OW1C2A==" }, "jsesc": { "version": "1.3.0", @@ -3124,14 +3160,14 @@ "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" }, "jsprim": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.0.tgz", - "integrity": "sha1-o7h+QCmNjDgFUtjMdiigu5WiKRg=", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", "requires": { "assert-plus": "1.0.0", - "extsprintf": "1.0.2", + "extsprintf": "1.3.0", "json-schema": "0.2.3", - "verror": "1.3.6" + "verror": "1.10.0" }, "dependencies": { "assert-plus": { @@ -3315,6 +3351,22 @@ "strip-bom": "2.0.0" } }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "requires": { + "p-locate": "2.0.0", + "path-exists": "3.0.0" + }, + "dependencies": { + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + } + } + }, "lodash": { "version": "4.17.4", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", @@ -3498,6 +3550,14 @@ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "requires": { + "mimic-fn": "1.1.0" + } + }, "merge": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.0.tgz", @@ -3551,7 +3611,7 @@ "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.0.tgz", "integrity": "sha1-SmL7HUKTPAVYOYL0xxb2+55sbT0=", "requires": { - "bn.js": "4.11.7", + "bn.js": "4.11.8", "brorand": "1.1.0" } }, @@ -3741,9 +3801,9 @@ "version": "github:status-im/nfc-react-native#20bdeb4d7baef59e1ee428572f988cec62bd519a" }, "node-fetch": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.1.tgz", - "integrity": "sha512-j8XsFGCLw79vWXkZtMSmmLaOk9z5SQ9bV/tkbZVCqvgwzrjAGq66igobLofHtF63NvMTp2WjytpsNTGKa+XRIQ==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.2.tgz", + "integrity": "sha512-xZZUq2yDhKMIn/UgG5q//IZSNLJIwW2QxS14CNH5spuiXkITM2pUitjdq58yLSaU7m4M0wBNaM2Gh/ggY4YJig==", "requires": { "encoding": "0.1.12", "is-stream": "1.1.0" @@ -3766,7 +3826,7 @@ "rimraf": "2.6.1", "semver": "5.3.0", "tar": "2.2.1", - "which": "1.2.14" + "which": "1.3.0" }, "dependencies": { "semver": { @@ -3818,6 +3878,14 @@ "remove-trailing-separator": "1.0.2" } }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "requires": { + "path-key": "2.0.1" + } + }, "npmlog": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz", @@ -4089,6 +4157,24 @@ "os-tmpdir": "1.0.2" } }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "p-limit": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", + "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=" + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "requires": { + "p-limit": "1.1.0" + } + }, "package-json": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/package-json/-/package-json-2.4.0.tgz", @@ -4164,6 +4250,11 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, "path-type": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", @@ -4283,7 +4374,7 @@ "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", "requires": { - "bn.js": "4.11.7", + "bn.js": "4.11.8", "browserify-rsa": "4.0.1", "create-hash": "1.1.3", "parse-asn1": "5.1.0", @@ -4424,9 +4515,9 @@ } }, "react": { - "version": "16.0.0-beta.1", - "resolved": "https://registry.npmjs.org/react/-/react-16.0.0-beta.1.tgz", - "integrity": "sha512-ycR3jbriWipJ5Ewq2MQcStUYycl9iYqxCTopozvBPFQoTBSExhz8AlD9az1vs7WpUFbBZkeKnPCHFMv0LHN0dQ==", + "version": "16.0.0-beta.5", + "resolved": "https://registry.npmjs.org/react/-/react-16.0.0-beta.5.tgz", + "integrity": "sha512-FZSIxm5aO24tzl+11WWZSlYY9QCM3qm32f0+VEmAimm5ZFAiXdcHPdsWnCW00zkHIXszh9AWeOXu0OEqq30FSQ==", "requires": { "fbjs": "0.8.14", "loose-envify": "1.3.1", @@ -4440,9 +4531,9 @@ "integrity": "sha1-K7qMaUBMXkqUQ5hgC8xMlB+GBoI=" }, "react-deep-force-update": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/react-deep-force-update/-/react-deep-force-update-1.0.1.tgz", - "integrity": "sha1-+RG1vh0qb+OHUH3W6adnqikktMc=" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/react-deep-force-update/-/react-deep-force-update-1.1.0.tgz", + "integrity": "sha512-lzBlIeUxdkaZh04pvssVtv3ZSQFUKoEBW4OWx055FieAVUAX4atJhOnSRXkeTpYvaqd1CCg2TJQZbKKifzbafQ==" }, "react-devtools-core": { "version": "2.5.0", @@ -4510,7 +4601,7 @@ "commander": "2.11.0", "concat-stream": "1.6.0", "connect": "2.30.2", - "core-js": "2.4.1", + "core-js": "2.5.0", "debug": "2.6.8", "denodeify": "1.2.1", "event-target-shim": "1.1.1", @@ -4534,7 +4625,7 @@ "mime-types": "2.1.11", "minimist": "1.2.0", "mkdirp": "0.5.1", - "node-fetch": "1.7.1", + "node-fetch": "1.7.2", "npmlog": "2.0.4", "opn": "3.0.3", "optimist": "0.6.1", @@ -4676,13 +4767,18 @@ } }, "react-native-camera": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/react-native-camera/-/react-native-camera-0.9.4.tgz", - "integrity": "sha512-UUpZKh+v42Yl9/o+r1Tr26+Zpla+YL8reMyXrVv3XgOvyRmzywHIErH0Y3pW6Q7WXsUw1zHS01SVc8gX0buHlg==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/react-native-camera/-/react-native-camera-0.9.5.tgz", + "integrity": "sha512-OFyUz6EYNz/0cm9OiJP7VigpOuLYet/4eDz5IYOE0L/5N5uBbWLJSbWD92QiX4TU54Xx9lIaRoWWyyxmwiZwhw==", "requires": { "opencollective": "1.0.3" } }, + "react-native-config": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/react-native-config/-/react-native-config-0.5.0.tgz", + "integrity": "sha1-EJqu5RG4GFGyLh/TNy2GydbHl9Q=" + }, "react-native-contacts": { "version": "0.2.8", "resolved": "https://registry.npmjs.org/react-native-contacts/-/react-native-contacts-0.2.8.tgz", @@ -4768,10 +4864,12 @@ "integrity": "sha1-Kryshdl+CIVLLecW1ilTu64APHc=" }, "react-native-invertible-scroll-view": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/react-native-invertible-scroll-view/-/react-native-invertible-scroll-view-1.0.0.tgz", - "integrity": "sha1-YM6zhNyVDDTro6Wu2jn5fNx9TiM=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/react-native-invertible-scroll-view/-/react-native-invertible-scroll-view-1.1.0.tgz", + "integrity": "sha1-v9UKP11myhJjm3x6mETO3dHRaJA=", "requires": { + "create-react-class": "15.6.0", + "prop-types": "15.5.10", "react-clone-referenced-element": "1.0.1", "react-native-scrollable-mixin": "1.0.1" } @@ -4791,7 +4889,7 @@ "integrity": "sha1-dELADh/Nn8oykRncuvdE0SvNG1o=" }, "react-native-mapbox-gl": { - "version": "github:mapbox/react-native-mapbox-gl#5a1983ac9c5c6ce985f0f987928eeefe017ae0c5", + "version": "github:mapbox/react-native-mapbox-gl#d2a0a851d57672132344596b26a4776172370937", "requires": { "babel-eslint": "6.1.2", "lodash": "4.17.4" @@ -4806,10 +4904,12 @@ "integrity": "sha1-lpHS50yRBGvRiiAgtk4qPYvpQLI=" }, "react-native-qrcode": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/react-native-qrcode/-/react-native-qrcode-0.2.3.tgz", - "integrity": "sha1-zOBsWoUJwfVaGNeQU6zm+gzts3Y=", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/react-native-qrcode/-/react-native-qrcode-0.2.5.tgz", + "integrity": "sha1-DYHxnVlEsL/m7MNX/gqgmSnAEQU=", "requires": { + "create-react-class": "15.6.0", + "prop-types": "15.5.10", "qr.js": "0.0.0" } }, @@ -4868,7 +4968,7 @@ "integrity": "sha512-XN3A6a3vBZ7BMqI0jFBQedZfTztXlu20GjUgYlEp4Y1Yklr1xcl2tINRCi6KDXpYGByso0M6apNYMI9EzuD1Ug==", "requires": { "base64-js": "0.0.8", - "buffer": "5.0.6", + "buffer": "5.0.7", "events": "1.1.1", "ip-regex": "1.0.3", "process": "0.11.10", @@ -4876,9 +4976,9 @@ }, "dependencies": { "buffer": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.0.6.tgz", - "integrity": "sha1-LqZp9+7Atu2gWwj4tf9mGyhXNYg=", + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.0.7.tgz", + "integrity": "sha512-NeeHXWh5pCbPQCt2/6rLvXqapZfVsqw/YgRgaHpT3H9Uzgs+S0lSg5SQzouIuDvcmlQRqBe8hOO2scKCu3cxrg==", "requires": { "base64-js": "1.2.1", "ieee754": "1.1.8" @@ -4894,9 +4994,9 @@ } }, "react-native-udp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/react-native-udp/-/react-native-udp-2.0.0.tgz", - "integrity": "sha1-VV70MCtGoOhToS47h2QgO7e5/Vg=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/react-native-udp/-/react-native-udp-2.1.0.tgz", + "integrity": "sha1-1nBNo53ygANOajS+RsQbm1W7/CM=", "requires": { "base64-js": "0.0.8", "events": "1.1.1", @@ -4906,13 +5006,165 @@ } }, "react-native-vector-icons": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-4.2.0.tgz", - "integrity": "sha1-BZS2jevddY3OTFZb8C4tZNcATYI=", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-4.3.0.tgz", + "integrity": "sha512-K6AMkvkvCnYS64ZeUVa/ONSP7Iz8IbQWrG5UjlfP7uya12vR8aLUwm+MI/suIIKUhRFjvmIPskmc/i15pCTkiw==", "requires": { "lodash": "4.17.4", "prop-types": "15.5.10", - "yargs": "6.6.0" + "yargs": "8.0.2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "requires": { + "locate-path": "2.0.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "requires": { + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" + } + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "requires": { + "pify": "2.3.0" + } + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" + } + } + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "yargs": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", + "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", + "requires": { + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" + } + }, + "yargs-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", + "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", + "requires": { + "camelcase": "4.1.0" + } + } } }, "react-native-webview-bridge": { @@ -4938,7 +5190,7 @@ "integrity": "sha1-nb/Z2SdSjDqp9ETkVYw3gwq4wmo=", "requires": { "lodash": "4.17.4", - "react-deep-force-update": "1.0.1" + "react-deep-force-update": "1.1.0" } }, "react-timer-mixin": { @@ -5298,14 +5550,14 @@ "resolved": "https://registry.npmjs.org/response-time/-/response-time-2.3.2.tgz", "integrity": "sha1-/6cbq5UtYvfB1Jt0NDVfvGjf/Fo=", "requires": { - "depd": "1.1.0", + "depd": "1.1.1", "on-headers": "1.0.1" }, "dependencies": { "depd": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.0.tgz", - "integrity": "sha1-4b2Cxqq2ztlluXuIsX7T5SjKGMM=" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" } } }, @@ -5531,7 +5783,7 @@ "integrity": "sha1-dl52B8gFVFK7pvCwUllTUJhgNt4=", "requires": { "debug": "2.2.0", - "depd": "1.1.0", + "depd": "1.1.1", "destroy": "1.0.4", "escape-html": "1.0.3", "etag": "1.7.0", @@ -5553,9 +5805,9 @@ } }, "depd": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.0.tgz", - "integrity": "sha1-4b2Cxqq2ztlluXuIsX7T5SjKGMM=" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" }, "mime": { "version": "1.3.4", @@ -5649,6 +5901,19 @@ "inherits": "2.0.1" } }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + }, "shell-quote": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", @@ -5815,11 +6080,6 @@ } } }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, "string-range": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/string-range/-/string-range-1.2.2.tgz", @@ -5840,6 +6100,11 @@ "resolved": "https://registry.npmjs.org/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz", "integrity": "sha1-jZeDM8C8klOPUPOD5IiPPlYZ1lM=" }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, "stringstream": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", @@ -5861,6 +6126,11 @@ "is-utf8": "0.2.1" } }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -6216,11 +6486,20 @@ "integrity": "sha1-meSYFWaihhGN+yuBc1ffeZM3bRA=" }, "verror": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz", - "integrity": "sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw=", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "requires": { - "extsprintf": "1.0.2" + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + } } }, "vhost": { @@ -6280,9 +6559,9 @@ "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" }, "which": { - "version": "1.2.14", - "resolved": "https://registry.npmjs.org/which/-/which-1.2.14.tgz", - "integrity": "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", "requires": { "isexe": "2.0.0" } diff --git a/package.json b/package.json index c4de47879b..f62de7659b 100644 --- a/package.json +++ b/package.json @@ -51,6 +51,7 @@ "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",