diff --git a/.gitignore b/.gitignore index b927355df441e39ce66c8525523dbe592d1f2d97..00eb3958c79939cedf86ea0ec4b79527be0eec8a 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,14 @@ project.xcworkspace # node_modules/ npm-debug.log + +# android +# +android/build/ +android/.gradle/ +android/.idea/ +android/android.iml +android/gradle/ +android/gradlew +android/gradlew.bat +android/local.properties diff --git a/.npmignore b/.npmignore index facea32a536d480581dddeadcf893c6b62ebf01d..c38d9c95f623ad46c1e6c297ade76f78d9cb75bb 100644 --- a/.npmignore +++ b/.npmignore @@ -1,4 +1,4 @@ -imgs/ +docs/ Examples/ # OSX @@ -28,3 +28,14 @@ DerivedData # node_modules/ npm-debug.log + +# android +# +android/build/ +android/.gradle/ +android/.idea/ +android/android.iml +android/gradle/ +android/gradlew +android/gradlew.bat +android/local.properties diff --git a/Examples/AdvancedEffects/.flowconfig b/Examples/AdvancedEffects/.flowconfig index 8989253d43ac5e1bc1ef96cc48dbf7545fa32648..05cad208f26316a3eddda55773f7a50715715d2e 100644 --- a/Examples/AdvancedEffects/.flowconfig +++ b/Examples/AdvancedEffects/.flowconfig @@ -10,14 +10,10 @@ # Ignore react-tools where there are overlaps, but don't ignore anything that # react-native relies on .*/node_modules/react-tools/src/React.js -.*/node_modules/react-tools/src/renderers/shared/reconciler/ReactInstanceHandles.js .*/node_modules/react-tools/src/renderers/shared/event/EventPropagators.js .*/node_modules/react-tools/src/renderers/shared/event/eventPlugins/ResponderEventPlugin.js -.*/node_modules/react-tools/src/renderers/shared/event/eventPlugins/ResponderSyntheticEvent.js -.*/node_modules/react-tools/src/renderers/shared/event/eventPlugins/ResponderTouchHistoryStore.js .*/node_modules/react-tools/src/shared/vendor/core/ExecutionEnvironment.js - # Ignore commoner tests .*/node_modules/commoner/test/.* @@ -25,7 +21,10 @@ .*/react-tools/node_modules/commoner/lib/reader.js # Ignore jest -.*/react-native/node_modules/jest-cli/.* +.*/node_modules/jest-cli/.* + +# Ignore Website +.*/website/.* [include] @@ -35,13 +34,18 @@ node_modules/react-native/Libraries/react-native/react-native-interface.js [options] module.system=haste +munge_underscores=true + +module.name_mapper='^image![a-zA-Z0-9$_-]+$' -> 'GlobalImageStub' +module.name_mapper='^[./a-zA-Z0-9$_-]+\.png$' -> 'RelativeImageStub' + suppress_type=$FlowIssue suppress_type=$FlowFixMe suppress_type=$FixMe -suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(1[0-3]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) -suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(1[0-3]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)? #[0-9]+ +suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(1[0-7]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) +suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(1[0-7]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)? #[0-9]+ suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy [version] -0.13.1 +0.17.0 diff --git a/Examples/Tests/.npmignore b/Examples/AdvancedEffects/.gitignore similarity index 80% rename from Examples/Tests/.npmignore rename to Examples/AdvancedEffects/.gitignore index c39012e9e737a6c38a42deb0c22ca3cafd1f232e..94fc86711d185ae84ff11abd41b1bbf716c26d2b 100644 --- a/Examples/Tests/.npmignore +++ b/Examples/AdvancedEffects/.gitignore @@ -20,6 +20,13 @@ DerivedData *.hmap *.ipa *.xcuserstate +project.xcworkspace + +# Android/IJ +# +.idea +.gradle +local.properties # node.js # diff --git a/Examples/AdvancedEffects/.watchmanconfig b/Examples/AdvancedEffects/.watchmanconfig new file mode 100644 index 0000000000000000000000000000000000000000..9e26dfeeb6e641a33dae4961196235bdb965b21b --- /dev/null +++ b/Examples/AdvancedEffects/.watchmanconfig @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/Examples/AdvancedEffects/README.md b/Examples/AdvancedEffects/README.md deleted file mode 100644 index c22e2fb15de946bf41651bda8d1611c4792f2321..0000000000000000000000000000000000000000 --- a/Examples/AdvancedEffects/README.md +++ /dev/null @@ -1,18 +0,0 @@ - - -## Run the example - -``` -npm install -``` - -Then open AdvancedEffects.xcodeproj with XCode and run the application. - -## Developing with the example - -``` -npm install react-native -npm install ../.. # everytime the lib code changes -``` - -(also make sure a `npm install` has been called on the root directory of gl-react-native). diff --git a/Examples/AdvancedEffects/android/AdvancedEffects.iml b/Examples/AdvancedEffects/android/AdvancedEffects.iml new file mode 100644 index 0000000000000000000000000000000000000000..72c2b46f6aa69dcaca531ebeb53b85f52af60a4f --- /dev/null +++ b/Examples/AdvancedEffects/android/AdvancedEffects.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/AdvancedEffects/android/app/app.iml b/Examples/AdvancedEffects/android/app/app.iml new file mode 100644 index 0000000000000000000000000000000000000000..1b995bcb8e83efc0e7bf27cc4271d3402828c92a --- /dev/null +++ b/Examples/AdvancedEffects/android/app/app.iml @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/AdvancedEffects/android/app/build.gradle b/Examples/AdvancedEffects/android/app/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..850a7c5b316bf24eac10f3b505c9c19c7781e7fe --- /dev/null +++ b/Examples/AdvancedEffects/android/app/build.gradle @@ -0,0 +1,79 @@ +apply plugin: "com.android.application" + +/** + * The react.gradle file registers two tasks: bundleDebugJsAndAssets and bundleReleaseJsAndAssets. + * These basically call `react-native bundle` with the correct arguments during the Android build + * cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the + * bundle directly from the development server. Below you can see all the possible configurations + * and their defaults. If you decide to add a configuration block, make sure to add it before the + * `apply from: "react.gradle"` line. + * + * project.ext.react = [ + * // the name of the generated asset file containing your JS bundle + * bundleAssetName: "index.android.bundle", + * + * // the entry file for bundle generation + * entryFile: "index.android.js", + * + * // whether to bundle JS and assets in debug mode + * bundleInDebug: false, + * + * // whether to bundle JS and assets in release mode + * bundleInRelease: true, + * + * // the root of your project, i.e. where "package.json" lives + * root: "../../", + * + * // where to put the JS bundle asset in debug mode + * jsBundleDirDebug: "$buildDir/intermediates/assets/debug", + * + * // where to put the JS bundle asset in release mode + * jsBundleDirRelease: "$buildDir/intermediates/assets/release", + * + * // where to put drawable resources / React Native assets, e.g. the ones you use via + * // require('./image.png')), in debug mode + * resourcesDirDebug: "$buildDir/intermediates/res/merged/debug", + * + * // where to put drawable resources / React Native assets, e.g. the ones you use via + * // require('./image.png')), in release mode + * resourcesDirRelease: "$buildDir/intermediates/res/merged/release", + * + * // by default the gradle tasks are skipped if none of the JS files or assets change; this means + * // that we don't look at files in android/ or ios/ to determine whether the tasks are up to + * // date; if you have any other folders that you want to ignore for performance reasons (gradle + * // indexes the entire tree), add them here. Alternatively, if you have JS files in android/ + * // for example, you might want to remove it from here. + * inputExcludes: ["android/**", "ios/**"] + * ] + */ + +apply from: "react.gradle" + +android { + compileSdkVersion 23 + buildToolsVersion "23.0.1" + + defaultConfig { + applicationId "com.advancedeffects" + minSdkVersion 16 + targetSdkVersion 22 + versionCode 1 + versionName "1.0" + ndk { + abiFilters "armeabi-v7a", "x86" + } + } + buildTypes { + release { + minifyEnabled false // Set this to true to enable Proguard + proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" + } + } +} + +dependencies { + compile fileTree(dir: "libs", include: ["*.jar"]) + compile "com.android.support:appcompat-v7:23.0.1" + compile "com.facebook.react:react-native:0.14.+" + compile project(':rngl') +} diff --git a/Examples/AdvancedEffects/android/app/proguard-rules.pro b/Examples/AdvancedEffects/android/app/proguard-rules.pro new file mode 100644 index 0000000000000000000000000000000000000000..ffa8c9f64b6251f632abdaf3c3ba26fca12e4f6f --- /dev/null +++ b/Examples/AdvancedEffects/android/app/proguard-rules.pro @@ -0,0 +1,60 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Disabling obfuscation is useful if you collect stack traces from production crashes +# (unless you are using a system that supports de-obfuscate the stack traces). +-dontobfuscate + +# React Native + +# Keep our interfaces so they can be used by other ProGuard rules. +# See http://sourceforge.net/p/proguard/bugs/466/ +-keep,allowobfuscation @interface com.facebook.proguard.annotations.DoNotStrip +-keep,allowobfuscation @interface com.facebook.proguard.annotations.KeepGettersAndSetters + +# Do not strip any method/class that is annotated with @DoNotStrip +-keep @com.facebook.proguard.annotations.DoNotStrip class * +-keepclassmembers class * { + @com.facebook.proguard.annotations.DoNotStrip *; +} + +-keepclassmembers @com.facebook.proguard.annotations.KeepGettersAndSetters class * { + void set*(***); + *** get*(); +} + +-keep class * extends com.facebook.react.bridge.JavaScriptModule { *; } +-keep class * extends com.facebook.react.bridge.NativeModule { *; } +-keepclassmembers class * { @com.facebook.react.uimanager.UIProp ; } +-keepclassmembers class * { @com.facebook.react.uimanager.ReactProp ; } +-keepclassmembers class * { @com.facebook.react.uimanager.ReactPropGroup ; } + +# okhttp + +-keepattributes Signature +-keepattributes *Annotation* +-keep class com.squareup.okhttp.** { *; } +-keep interface com.squareup.okhttp.** { *; } +-dontwarn com.squareup.okhttp.** + +# okio + +-keep class sun.misc.Unsafe { *; } +-dontwarn java.nio.file.* +-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement +-dontwarn okio.** diff --git a/Examples/AdvancedEffects/android/app/react.gradle b/Examples/AdvancedEffects/android/app/react.gradle new file mode 100644 index 0000000000000000000000000000000000000000..dc18bb9a06257d2d7e612b1bcbd83474e92b99a5 --- /dev/null +++ b/Examples/AdvancedEffects/android/app/react.gradle @@ -0,0 +1,75 @@ +def config = project.hasProperty("react") ? project.react : []; + +def bundleAssetName = config.bundleAssetName ?: "index.android.bundle" +def entryFile = config.entryFile ?: "index.android.js" + +// because elvis operator +def elvisFile(thing) { + return thing ? file(thing) : null; +} + +def reactRoot = elvisFile(config.root) ?: file("../../") +def jsBundleDirDebug = elvisFile(config.jsBundleDirDebug) ?: + file("$buildDir/intermediates/assets/debug") +def jsBundleDirRelease = elvisFile(config.jsBundleDirRelease) ?: + file("$buildDir/intermediates/assets/release") +def resourcesDirDebug = elvisFile(config.resourcesDirDebug) ?: + file("$buildDir/intermediates/res/merged/debug") +def resourcesDirRelease = elvisFile(config.resourcesDirRelease) ?: + file("$buildDir/intermediates/res/merged/release") +def inputExcludes = config.inputExcludes ?: ["android/**", "ios/**"] + +def jsBundleFileDebug = file("$jsBundleDirDebug/$bundleAssetName") +def jsBundleFileRelease = file("$jsBundleDirRelease/$bundleAssetName") + +task bundleDebugJsAndAssets(type: Exec) { + // create dirs if they are not there (e.g. the "clean" task just ran) + doFirst { + jsBundleDirDebug.mkdirs() + resourcesDirDebug.mkdirs() + } + + // set up inputs and outputs so gradle can cache the result + inputs.files fileTree(dir: reactRoot, excludes: inputExcludes) + outputs.dir jsBundleDirDebug + outputs.dir resourcesDirDebug + + // set up the call to the react-native cli + workingDir reactRoot + commandLine "react-native", "bundle", "--platform", "android", "--dev", "true", "--entry-file", + entryFile, "--bundle-output", jsBundleFileDebug, "--assets-dest", resourcesDirDebug + + enabled config.bundleInDebug ?: false +} + +task bundleReleaseJsAndAssets(type: Exec) { + // create dirs if they are not there (e.g. the "clean" task just ran) + doFirst { + jsBundleDirRelease.mkdirs() + resourcesDirRelease.mkdirs() + } + + // set up inputs and outputs so gradle can cache the result + inputs.files fileTree(dir: reactRoot, excludes: inputExcludes) + outputs.dir jsBundleDirRelease + outputs.dir resourcesDirRelease + + // set up the call to the react-native cli + workingDir reactRoot + commandLine "react-native", "bundle", "--platform", "android", "--dev", "false", "--entry-file", + entryFile, "--bundle-output", jsBundleFileRelease, "--assets-dest", resourcesDirRelease + + enabled config.bundleInRelease ?: true +} + +gradle.projectsEvaluated { + // hook bundleDebugJsAndAssets into the android build process + bundleDebugJsAndAssets.dependsOn mergeDebugResources + bundleDebugJsAndAssets.dependsOn mergeDebugAssets + processDebugResources.dependsOn bundleDebugJsAndAssets + + // hook bundleReleaseJsAndAssets into the android build process + bundleReleaseJsAndAssets.dependsOn mergeReleaseResources + bundleReleaseJsAndAssets.dependsOn mergeReleaseAssets + processReleaseResources.dependsOn bundleReleaseJsAndAssets +} diff --git a/Examples/AdvancedEffects/android/app/src/main/AndroidManifest.xml b/Examples/AdvancedEffects/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000000000000000000000000000000000000..301c19139b671b0b9c2777a495f5f74fe3948d09 --- /dev/null +++ b/Examples/AdvancedEffects/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + diff --git a/Examples/AdvancedEffects/android/app/src/main/java/com/advancedeffects/MainActivity.java b/Examples/AdvancedEffects/android/app/src/main/java/com/advancedeffects/MainActivity.java new file mode 100644 index 0000000000000000000000000000000000000000..db34c47db68a9fca4a2937da30be3f331ebdf100 --- /dev/null +++ b/Examples/AdvancedEffects/android/app/src/main/java/com/advancedeffects/MainActivity.java @@ -0,0 +1,80 @@ +package com.advancedeffects; + +import android.app.Activity; +import android.os.Bundle; +import android.view.KeyEvent; + +import com.facebook.react.LifecycleState; +import com.facebook.react.ReactInstanceManager; +import com.facebook.react.ReactRootView; +import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler; +import com.facebook.react.shell.MainReactPackage; +import com.facebook.soloader.SoLoader; +import com.projectseptember.RNGL.RNGLPackage; + +public class MainActivity extends Activity implements DefaultHardwareBackBtnHandler { + + private ReactInstanceManager mReactInstanceManager; + private ReactRootView mReactRootView; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + mReactRootView = new ReactRootView(this); + + mReactInstanceManager = ReactInstanceManager.builder() + .setApplication(getApplication()) + .setBundleAssetName("index.android.bundle") + .setJSMainModuleName("index.android") + .addPackage(new RNGLPackage()) + .addPackage(new MainReactPackage()) + .setUseDeveloperSupport(BuildConfig.DEBUG) + .setInitialLifecycleState(LifecycleState.RESUMED) + .build(); + + mReactRootView.startReactApplication(mReactInstanceManager, "AdvancedEffects", null); + + setContentView(mReactRootView); + } + + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) { + if (keyCode == KeyEvent.KEYCODE_MENU && mReactInstanceManager != null) { + mReactInstanceManager.showDevOptionsDialog(); + return true; + } + return super.onKeyUp(keyCode, event); + } + + @Override + public void onBackPressed() { + if (mReactInstanceManager != null) { + mReactInstanceManager.onBackPressed(); + } else { + super.onBackPressed(); + } + } + + @Override + public void invokeDefaultOnBackPressed() { + super.onBackPressed(); + } + + @Override + protected void onPause() { + super.onPause(); + + if (mReactInstanceManager != null) { + mReactInstanceManager.onPause(); + } + } + + @Override + protected void onResume() { + super.onResume(); + + if (mReactInstanceManager != null) { + mReactInstanceManager.onResume(this); + } + } +} diff --git a/Examples/AdvancedEffects/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/Examples/AdvancedEffects/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..cde69bcccec65160d92116f20ffce4fce0b5245c Binary files /dev/null and b/Examples/AdvancedEffects/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/Examples/AdvancedEffects/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/Examples/AdvancedEffects/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c133a0cbd379f5af6dbf1a899a0293ca5eccfad0 Binary files /dev/null and b/Examples/AdvancedEffects/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/Examples/AdvancedEffects/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/Examples/AdvancedEffects/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..bfa42f0e7b91d006d22352c9ff2f134e504e3c1d Binary files /dev/null and b/Examples/AdvancedEffects/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/Examples/AdvancedEffects/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/Examples/AdvancedEffects/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..324e72cdd7480cb983fa1bcc7ce686e51ef87fe7 Binary files /dev/null and b/Examples/AdvancedEffects/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/Examples/AdvancedEffects/android/app/src/main/res/values/strings.xml b/Examples/AdvancedEffects/android/app/src/main/res/values/strings.xml new file mode 100644 index 0000000000000000000000000000000000000000..80019d8fe409702d201ce45dfd2d96351ee4d265 --- /dev/null +++ b/Examples/AdvancedEffects/android/app/src/main/res/values/strings.xml @@ -0,0 +1,3 @@ + + AdvancedEffects + diff --git a/Examples/AdvancedEffects/android/app/src/main/res/values/styles.xml b/Examples/AdvancedEffects/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000000000000000000000000000000000000..319eb0ca100b5aae62b669a5f375ec234aabe351 --- /dev/null +++ b/Examples/AdvancedEffects/android/app/src/main/res/values/styles.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/Examples/AdvancedEffects/android/build.gradle b/Examples/AdvancedEffects/android/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..ccdfc4e3dca8070b281d68056da956343d52a4ea --- /dev/null +++ b/Examples/AdvancedEffects/android/build.gradle @@ -0,0 +1,20 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + repositories { + jcenter() + } + dependencies { + classpath 'com.android.tools.build:gradle:1.3.1' + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + mavenLocal() + jcenter() + } +} diff --git a/Examples/AdvancedEffects/android/captures/SystemInfo_2015.11.25_22.12.50.txt b/Examples/AdvancedEffects/android/captures/SystemInfo_2015.11.25_22.12.50.txt new file mode 100644 index 0000000000000000000000000000000000000000..de7b04ab6a59dba5b1a0263ed7be5588026092c5 --- /dev/null +++ b/Examples/AdvancedEffects/android/captures/SystemInfo_2015.11.25_22.12.50.txt @@ -0,0 +1,53 @@ +TASK com.advancedeffects id=38 + ACTIVITY com.advancedeffects/.MainActivity 3cb5294 pid=2858 + Local Activity 28df4cd State: + mResumed=true mStopped=false mFinished=false + mChangingConfigurations=false + mCurrentConfig={1.0 310mcc260mnc en_US ldltr sw360dp w360dp h568dp 480dpi nrml port finger -keyb/v/h -nav/h s.5} + mLoadersStarted=true + FragmentManager misc state: + mHost=android.app.Activity$HostCallbacks@a95e182 + mContainer=android.app.Activity$HostCallbacks@a95e182 + mCurState=5 mStateSaved=false mDestroyed=false + ViewRoot: + mAdded=true mRemoved=false + mConsumeBatchedInputScheduled=false + mConsumeBatchedInputImmediatelyScheduled=false + mPendingInputEventCount=0 + mProcessInputEventsScheduled=false + mTraversalScheduled=false + android.view.ViewRootImpl$NativePreImeInputStage: mQueueLength=0 + android.view.ViewRootImpl$ImeInputStage: mQueueLength=0 + android.view.ViewRootImpl$NativePostImeInputStage: mQueueLength=0 + Choreographer: + mFrameScheduled=true + mLastFrameTime=108916 (70 ms ago) + View Hierarchy: + com.android.internal.policy.PhoneWindow$DecorView{912d093 V.E...... R......D 0,0-1080,1920} + android.widget.LinearLayout{d41c8d0 V.E...... .......D 0,0-1080,1776} + android.view.ViewStub{11210c9 G.E...... ......I. 0,0-0,0 #10203a9 android:id/action_mode_bar_stub} + android.widget.FrameLayout{a4493ce V.E...... .......D 0,72-1080,1776 #1020002 android:id/content} + com.facebook.react.ReactRootView{38fe2ef V.E...... .......D 0,0-1080,1704 #1} + com.facebook.react.views.view.ReactViewGroup{f42a1fc V.E...... ......ID 0,0-1080,1704 #4} + com.facebook.react.views.view.ReactViewGroup{1a1f085 V.E...... ........ 0,0-1080,36 #5} + com.projectseptember.RNGL.GLCanvas{51a1eda V.E...... ........ 0,0-1080,36 #6} + com.facebook.react.views.view.ReactViewGroup{821bf0b V.E...... ......ID 0,36-1080,336 #7} + com.facebook.react.views.view.ReactViewGroup{c15e1e8 V.E...... ......ID 0,300-1080,600 #8} + com.facebook.react.views.text.ReactTextView{1961001 V.ED..... ......I. 0,0-1080,129 #a} + com.facebook.react.views.view.ReactViewGroup{78b4ea6 V.E...... ......I. 0,194-42,236 #e} + com.facebook.react.views.text.ReactTextView{2ab40e7 V.ED..... ......ID 66,186-404,243 #f} + com.facebook.react.views.text.ReactTextView{a5b3494 V.ED..... ......I. 404,186-742,243 #12} + com.facebook.react.views.text.ReactTextView{152ab3d V.ED..... ......I. 742,186-1080,243 #16} + com.projectseptember.RNGL.GLCanvas{e8daf32 V.E...... ........ 0,0-1080,300 #18} + com.facebook.react.views.view.ReactViewGroup{610483 V.E...... ........ 0,336-1080,1056 #19} + com.projectseptember.RNGL.GLCanvas{9010600 V.E...... ........ 0,0-1080,720 #1a} + com.facebook.react.views.view.ReactViewGroup{943be39 V.E...... ........ 0,1056-1080,1776 #1c} + com.projectseptember.RNGL.GLCanvas{ee38c7e V.E...... ........ 0,0-1080,720 #1d} + com.facebook.react.views.view.ReactViewGroup{32565df V.E...... ......ID 434,1704-1068,1761 #1e} + com.facebook.react.views.text.ReactTextView{570822c V.ED..... ......ID 0,0-436,57 #20} + com.facebook.react.views.text.ReactTextView{29904f5 V.ED..... ......ID 460,0-634,57 #22} + android.view.View{527f28a V.ED..... ........ 0,1776-1080,1920 #1020030 android:id/navigationBarBackground} + android.view.View{ea480fb V.ED..... ........ 0,0-1080,72 #102002f android:id/statusBarBackground} + Looper (main, tid 1) {8799518} + Message 0: { when=-16ms callback=com.projectseptember.RNGL.GLCanvas$1 target=com.facebook.react.bridge.queue.MessageQueueThreadHandler } + (Total messages: 1, polling=false, quitting=false) diff --git a/Examples/AdvancedEffects/android/gradle.properties b/Examples/AdvancedEffects/android/gradle.properties new file mode 100644 index 0000000000000000000000000000000000000000..1fd964e90b1c5ec50e26364318e2c872a9dd6154 --- /dev/null +++ b/Examples/AdvancedEffects/android/gradle.properties @@ -0,0 +1,20 @@ +# Project-wide Gradle settings. + +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. + +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html + +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +# Default value: -Xmx10248m -XX:MaxPermSize=256m +# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 + +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true + +android.useDeprecatedNdk=true diff --git a/Examples/AdvancedEffects/android/gradle/wrapper/gradle-wrapper.jar b/Examples/AdvancedEffects/android/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..b5166dad4d90021f6a0b45268c0755719f1d5cd4 Binary files /dev/null and b/Examples/AdvancedEffects/android/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Examples/AdvancedEffects/android/gradle/wrapper/gradle-wrapper.properties b/Examples/AdvancedEffects/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000000000000000000000000000000000000..b9fbfaba0ead2162e30db62f51e95df8a670d4a6 --- /dev/null +++ b/Examples/AdvancedEffects/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip diff --git a/Examples/AdvancedEffects/android/gradlew b/Examples/AdvancedEffects/android/gradlew new file mode 100755 index 0000000000000000000000000000000000000000..91a7e269e19dfc62e27137a0b57ef3e430cee4fd --- /dev/null +++ b/Examples/AdvancedEffects/android/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/Examples/AdvancedEffects/android/gradlew.bat b/Examples/AdvancedEffects/android/gradlew.bat new file mode 100644 index 0000000000000000000000000000000000000000..aec99730b4e8fcd90b57a0e8e01544fea7c31a89 --- /dev/null +++ b/Examples/AdvancedEffects/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Examples/AdvancedEffects/android/settings.gradle b/Examples/AdvancedEffects/android/settings.gradle new file mode 100644 index 0000000000000000000000000000000000000000..310c30d3bafb929186fbaaaee9b5d30dfe6af312 --- /dev/null +++ b/Examples/AdvancedEffects/android/settings.gradle @@ -0,0 +1,6 @@ +rootProject.name = 'AdvancedEffects' + +include ':app' + +include ':rngl', ':app' +project(':rngl').projectDir = new File(rootProject.projectDir, '../../../android') \ No newline at end of file diff --git a/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Contents.json b/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Contents.json deleted file mode 100644 index ae3dc84a5f737ac586c5165faab9185cabcc1ce4..0000000000000000000000000000000000000000 --- a/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "scale" : "1x", - "filename" : "Image-2.jpg" - }, - { - "idiom" : "universal", - "scale" : "2x", - "filename" : "Image-1.jpg" - }, - { - "idiom" : "universal", - "scale" : "3x", - "filename" : "Image.jpg" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Image-1.jpg b/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Image-1.jpg deleted file mode 100644 index fcdb992f31e2dca1a5c4884995deb04935fd78ef..0000000000000000000000000000000000000000 Binary files a/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Image-1.jpg and /dev/null differ diff --git a/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Image-2.jpg b/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Image-2.jpg deleted file mode 100644 index fcdb992f31e2dca1a5c4884995deb04935fd78ef..0000000000000000000000000000000000000000 Binary files a/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Image-2.jpg and /dev/null differ diff --git a/Examples/AdvancedEffects/iOS/main.jsbundle b/Examples/AdvancedEffects/iOS/main.jsbundle deleted file mode 100644 index 604a8b381d2166b0aed96f27cd6343cf016f8aaa..0000000000000000000000000000000000000000 --- a/Examples/AdvancedEffects/iOS/main.jsbundle +++ /dev/null @@ -1,22 +0,0 @@ -__DEV__=!1,__BUNDLE_START_TIME__=Date.now(),function(e){function t(e){for(var t,n,r,o,i=Array.prototype.slice.call(e),a={};i.length;)if(n=i.shift(),!a[n]&&(a[n]=!0,r=f[n],r&&r.waiting))for(t=0;t=o.error&&(t=o.warn),e.nativeLoggingHook(r,t)}}function i(t){if(!Array.isArray(t)){var n=t;t=[];for(var i in n)if(n.hasOwnProperty(i)){var a=n[i];a[r]=i,t.push(a)}}if(0===t.length)return void e.nativeLoggingHook("",o.log);var u=Object.keys(t[0]).sort(),c=[],l=[];u.forEach(function(e,n){l[n]=e.length;for(var r=0;r=0||p.indexOf("description")>=0))return i(t);if(0===p.length){if(_(t)){var d=t.name?": "+t.name:"";return e.stylize("[Function"+d+"]","special")}if(m(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(g(t))return e.stylize(Date.prototype.toString.call(t),"date");if(y(t))return i(t)}var h="",v=!1,b=["{","}"];if(c(t)&&(v=!0,b=["[","]"]),_(t)){var S=t.name?": "+t.name:"";h=" [Function"+S+"]"}if(m(t)&&(h=" "+RegExp.prototype.toString.call(t)),g(t)&&(h=" "+Date.prototype.toUTCString.call(t)),y(t)&&(h=" "+i(t)),0===p.length&&(!v||0==t.length))return b[0]+h+b[1];if(0>r)return m(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var E;return E=v?a(e,t,r,f,p):p.map(function(n){return s(e,t,r,f,n,v)}),e.seen.pop(),u(E,h,b)}function o(e,t){if(h(t))return e.stylize("undefined","undefined");if(d(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return f(t)?e.stylize(""+t,"number"):l(t)?e.stylize(""+t,"boolean"):p(t)?e.stylize("null","null"):void 0}function i(e){return"["+Error.prototype.toString.call(e)+"]"}function a(e,t,n,r,o){for(var i=[],a=0,u=t.length;u>a;++a)S(t,String(a))?i.push(s(e,t,n,r,String(a),!0)):i.push("");return o.forEach(function(o){o.match(/^\d+$/)||i.push(s(e,t,n,r,o,!0))}),i}function s(e,t,n,o,i,a){var s,u,c;if(c=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]},c.get?u=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(u=e.stylize("[Setter]","special")),S(o,i)||(s="["+i+"]"),u||(e.seen.indexOf(c.value)<0?(u=p(n)?r(e,c.value,null):r(e,c.value,n-1),u.indexOf("\n")>-1&&(u=a?u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+u.split("\n").map(function(e){return" "+e}).join("\n"))):u=e.stylize("[Circular]","special")),h(s)){if(a&&i.match(/^\d+$/))return u;s=JSON.stringify(""+i),s.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+u}function u(e,t,n){var r=0,o=e.reduce(function(e,t){return r++,t.indexOf("\n")>=0&&r++,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0);return o>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function c(e){return Array.isArray(e)}function l(e){return"boolean"==typeof e}function p(e){return null===e}function f(e){return"number"==typeof e}function d(e){return"string"==typeof e}function h(e){return void 0===e}function m(e){return v(e)&&"[object RegExp]"===b(e)}function v(e){return"object"==typeof e&&null!==e}function g(e){return v(e)&&"[object Date]"===b(e)}function y(e){return v(e)&&("[object Error]"===b(e)||e instanceof Error)}function _(e){return"function"==typeof e}function b(e){return Object.prototype.toString.call(e)}function S(e,t){return Object.prototype.hasOwnProperty.call(e,t)}return e}(),r="(index)",o={trace:0,log:1,info:2,warn:3,error:4};"undefined"!=typeof module?module.exports=t:t(e)}(this),function(e){function t(){var t=function(t){e.console.error("Error: \n stack: "+t.stack+"\n line: "+t.line+"\n message: "+t.message,t)};e.ErrorUtils.setGlobalHandler(t)}var n={_inGuard:0,_globalHandler:null,setGlobalHandler:function(e){n._globalHandler=e},reportError:function(e){n._globalHandler&&n._globalHandler(e)},reportFatalError:function(e){n._globalHandler&&n._globalHandler(e,!0)},applyWithGuard:function(e,t,r){try{return n._inGuard++,e.apply(t,r)}catch(o){n.reportError(o)}finally{n._inGuard--}},applyWithGuardIfNeeded:function(e,t,r){return n.inGuard()?e.apply(t,r):void n.applyWithGuard(e,t,r)},inGuard:function(){return n._inGuard},guard:function(e,t,r){function o(){return n.applyWithGuard(e,r||this,arguments,null,t)}return"function"!=typeof e?(console.warn("A function must be passed to ErrorUtils.guard, got ",e),null):(t=t||e.name||"",o)}};e.ErrorUtils=n,t()}(this),String.prototype.startsWith||(String.prototype.startsWith=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=arguments.length>1?Number(arguments[1])||0:0,r=Math.min(Math.max(n,0),t.length);return t.indexOf(String(e),n)===r}),String.prototype.endsWith||(String.prototype.endsWith=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=t.length,r=String(e),o=arguments.length>1?Number(arguments[1])||0:n,i=Math.min(Math.max(o,0),n),a=i-r.length;return 0>a?!1:t.lastIndexOf(r,a)===a}),String.prototype.contains||(String.prototype.contains=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=arguments.length>1?Number(arguments[1])||0:0;return-1!==t.indexOf(String(e),n)}),String.prototype.repeat||(String.prototype.repeat=function(e){"use strict";if(null==this)throw TypeError();var t=String(this);if(e=Number(e)||0,0>e||e===1/0)throw RangeError();if(1===e)return t;for(var n="";e;)1&e&&(n+=t),(e>>=1)&&(t+=t);return n}),function(e){function t(e,t){if(null==this)throw new TypeError("Array.prototype.findIndex called on null or undefined");if("function"!=typeof e)throw new TypeError("predicate must be a function");for(var n=Object(this),r=n.length>>>0,o=0;r>o;o++)if(e.call(t,n[o],o,n))return o;return-1}Array.prototype.findIndex||Object.defineProperty(Array.prototype,"findIndex",{enumerable:!1,writable:!0,configurable:!0,value:t}),Array.prototype.find||Object.defineProperty(Array.prototype,"find",{enumerable:!1,writable:!0,configurable:!0,value:function(n,r){if(null==this)throw new TypeError("Array.prototype.find called on null or undefined");var o=t.call(this,n,r);return-1===o?e:this[o]}})}(),__d("AdvancedEffects/index.ios.js",["react-native/Libraries/react-native/react-native.js","AdvancedEffects/src/index.js"],function(e,t,n,r){var o=t("react-native/Libraries/react-native/react-native.js"),i=o.AppRegistry,a=t("AdvancedEffects/src/index.js");i.registerComponent("AdvancedEffects",function(){return a})}),__d("react-native/Libraries/react-native/react-native.js",["React","ActivityIndicatorIOS","DatePickerIOS","DrawerLayoutAndroid","Image","ListView","MapView","Modal","Navigator","NavigatorIOS","PickerIOS","ProgressBarAndroid","ProgressViewIOS","ScrollView","SegmentedControlIOS","SliderIOS","SnapshotView","Switch","SwitchAndroid","SwitchIOS","TabBarIOS","Text","TextInput","ToastAndroid","ToolbarAndroid","TouchableHighlight","TouchableNativeFeedback","TouchableOpacity","TouchableWithoutFeedback","View","ViewPagerAndroid","WebView","ActionSheetIOS","AdSupportIOS","AlertIOS","Animated","AppRegistry","AppStateIOS","AsyncStorage","BackAndroid","CameraRoll","Dimensions","Easing","ImagePickerIOS","InteractionManager","LayoutAnimation","LinkingIOS","NetInfo","PanResponder","PixelRatio","PushNotificationIOS","Settings","StatusBarIOS","StyleSheet","VibrationIOS","RCTDeviceEventEmitter","RCTNativeAppEventEmitter","NativeModules","Platform","processColor","requireNativeComponent","EdgeInsetsPropType","PointPropType","LinkedStateMixin","ReactComponentWithPureRenderMixin","NativeModules","ReactUpdates","cloneWithProps","ReactFragment","update","ReactDefaultPerf","ReactTestUtils"],function(e,t,n,r){"use strict";var o=Object.assign(Object.create(t("React")),{ActivityIndicatorIOS:t("ActivityIndicatorIOS"),DatePickerIOS:t("DatePickerIOS"),DrawerLayoutAndroid:t("DrawerLayoutAndroid"),Image:t("Image"),ListView:t("ListView"),MapView:t("MapView"),Modal:t("Modal"),Navigator:t("Navigator"),NavigatorIOS:t("NavigatorIOS"),PickerIOS:t("PickerIOS"),ProgressBarAndroid:t("ProgressBarAndroid"),ProgressViewIOS:t("ProgressViewIOS"),ScrollView:t("ScrollView"),SegmentedControlIOS:t("SegmentedControlIOS"),SliderIOS:t("SliderIOS"),SnapshotView:t("SnapshotView"),Switch:t("Switch"),SwitchAndroid:t("SwitchAndroid"),SwitchIOS:t("SwitchIOS"),TabBarIOS:t("TabBarIOS"),Text:t("Text"),TextInput:t("TextInput"),ToastAndroid:t("ToastAndroid"),ToolbarAndroid:t("ToolbarAndroid"),TouchableHighlight:t("TouchableHighlight"),TouchableNativeFeedback:t("TouchableNativeFeedback"),TouchableOpacity:t("TouchableOpacity"),TouchableWithoutFeedback:t("TouchableWithoutFeedback"),View:t("View"),ViewPagerAndroid:t("ViewPagerAndroid"),WebView:t("WebView"),ActionSheetIOS:t("ActionSheetIOS"),AdSupportIOS:t("AdSupportIOS"),AlertIOS:t("AlertIOS"),Animated:t("Animated"),AppRegistry:t("AppRegistry"),AppStateIOS:t("AppStateIOS"),AsyncStorage:t("AsyncStorage"),BackAndroid:t("BackAndroid"),CameraRoll:t("CameraRoll"),Dimensions:t("Dimensions"),Easing:t("Easing"),ImagePickerIOS:t("ImagePickerIOS"),InteractionManager:t("InteractionManager"),LayoutAnimation:t("LayoutAnimation"),LinkingIOS:t("LinkingIOS"),NetInfo:t("NetInfo"),PanResponder:t("PanResponder"),PixelRatio:t("PixelRatio"),PushNotificationIOS:t("PushNotificationIOS"),Settings:t("Settings"),StatusBarIOS:t("StatusBarIOS"),StyleSheet:t("StyleSheet"),VibrationIOS:t("VibrationIOS"),DeviceEventEmitter:t("RCTDeviceEventEmitter"),NativeAppEventEmitter:t("RCTNativeAppEventEmitter"),NativeModules:t("NativeModules"),Platform:t("Platform"),processColor:t("processColor"),requireNativeComponent:t("requireNativeComponent"),EdgeInsetsPropType:t("EdgeInsetsPropType"),PointPropType:t("PointPropType"),addons:{LinkedStateMixin:t("LinkedStateMixin"),Perf:void 0,PureRenderMixin:t("ReactComponentWithPureRenderMixin"),TestModule:t("NativeModules").TestModule,TestUtils:void 0,batchedUpdates:t("ReactUpdates").batchedUpdates,cloneWithProps:t("cloneWithProps"),createFragment:t("ReactFragment").create,update:t("update")}});__DEV__&&(o.addons.Perf=t("ReactDefaultPerf"),o.addons.TestUtils=t("ReactTestUtils")),n.exports=o}),__d("React",["ReactNative"],function(e,t,n,r){"use strict";n.exports=t("ReactNative")}),__d("ReactNative",["ReactChildren","ReactClass","ReactComponent","ReactCurrentOwner","ReactElement","ReactElementValidator","ReactInstanceHandles","ReactNativeDefaultInjection","ReactNativeMount","ReactPropTypes","ReactUpdates","deprecated","findNodeHandle","invariant","onlyChild","warning","ReactReconciler","ReactNativeTextComponent"],function(e,t,n,r){"use strict";var o=t("ReactChildren"),i=t("ReactClass"),a=t("ReactComponent"),s=t("ReactCurrentOwner"),u=t("ReactElement"),c=t("ReactElementValidator"),l=t("ReactInstanceHandles"),p=t("ReactNativeDefaultInjection"),f=t("ReactNativeMount"),d=t("ReactPropTypes"),h=t("ReactUpdates"),m=(t("deprecated"),t("findNodeHandle")),v=t("invariant"),g=t("onlyChild"),y=t("warning");p.inject();var _=u.createElement,b=u.createFactory,S=u.cloneElement;__DEV__&&(_=c.createElement,b=c.createFactory,S=c.cloneElement);var E=function(e){var t=e.type.defaultProps,n=e.props;for(var r in t)void 0===n[r]&&(n[r]=t[r])},R=function(e){return __DEV__&&v(!1,"This optimized path should never be used in DEV mode because it does not provide validation. Check your JSX transform."),e._owner=s.current,e.type.defaultProps&&E(e),e},T=function(e,t,n){return f.renderComponent(e,t,n)},x={hasReactNativeInitialized:!1,Children:{map:o.map,forEach:o.forEach,count:o.count,only:g},Component:a,PropTypes:d,createClass:i.createClass,createElement:_,createFactory:b,cloneElement:S,_augmentElement:R,findNodeHandle:m,render:T,unmountComponentAtNode:f.unmountComponentAtNode,unstable_batchedUpdates:h.batchedUpdates,__spread:Object.assign,unmountComponentAtNodeAndRemoveContainer:f.unmountComponentAtNodeAndRemoveContainer,isValidClass:u.isValidFactory,isValidElement:u.isValidElement,renderComponent:function(e,t,n){return y("Use React.render instead of React.renderComponent"),x.render(e,t,n)}};"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.inject&&__REACT_DEVTOOLS_GLOBAL_HOOK__.inject({CurrentOwner:s,InstanceHandles:l,Mount:f,Reconciler:t("ReactReconciler"),TextComponent:t("ReactNativeTextComponent")}),n.exports=x}),__d("ReactChildren",["PooledClass","ReactFragment","traverseAllChildren","warning"],function(e,t,n,r){"use strict";function o(e,t){this.func=e,this.context=t,this.count=0}function i(e,t,n){var r=e;r.func.call(r.context,t,r.count++)}function a(e,t,n){if(null==e)return e;var r=o.getPooled(t,n);h(e,i,r),o.release(r)}function s(e,t,n){this.result=e,this.func=t,this.context=n,this.count=0}function u(e,t,n){var r=e,o=r.result,i=void 0===o[n];if(__DEV__&&m(i,"ReactChildren.map(...): Encountered two children with the same key, `%s`. Child keys must be unique; when two children share a key, only the first child will be used.",n),i){var a=r.func.call(r.context,t,r.count++);o[n]=a}}function c(e,t,n){if(null==e)return e;var r={},o=s.getPooled(r,t,n);return h(e,u,o),s.release(o),d.create(r)}function l(e,t,n){return null}function p(e,t){return h(e,l,null)}var f=t("PooledClass"),d=t("ReactFragment"),h=t("traverseAllChildren"),m=t("warning"),v=f.twoArgumentPooler,g=f.threeArgumentPooler;f.addPoolingTo(o,v),f.addPoolingTo(s,g);var y={forEach:a,map:c,count:p};n.exports=y}),__d("PooledClass",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i=function(e){var t=this;if(t.instancePool.length){var n=t.instancePool.pop();return t.call(n,e),n}return new t(e)},a=function(e,t){var n=this;if(n.instancePool.length){var r=n.instancePool.pop();return n.call(r,e,t),r}return new n(e,t)},s=function(e,t,n){var r=this;if(r.instancePool.length){var o=r.instancePool.pop();return r.call(o,e,t,n),o}return new r(e,t,n)},u=function(e,t,n,r){var o=this;if(o.instancePool.length){var i=o.instancePool.pop();return o.call(i,e,t,n,r),i}return new o(e,t,n,r)},c=function(e,t,n,r,o){var i=this;if(i.instancePool.length){var a=i.instancePool.pop();return i.call(a,e,t,n,r,o),a}return new i(e,t,n,r,o)},l=function(e){var t=this;o(e instanceof t,"Trying to release an instance into a pool of a different type."),e.destructor&&e.destructor(),t.instancePool.length1){for(var p=Array(l),f=0;l>f;f++)p[f]=arguments[f+2];i.children=p}if(e&&e.defaultProps){var d=e.defaultProps;for(r in d)"undefined"==typeof i[r]&&(i[r]=d[r])}return new s(e,u,c,o.current,i)},s.createFactory=function(e){var t=s.createElement.bind(null,e);return t.type=e,t},s.cloneAndReplaceProps=function(e,t){var n=new s(e.type,e.key,e.ref,e._owner,t);return __DEV__&&(n._store.validated=e._store.validated),n},s.cloneElement=function(e,t,n){var r,u=i({},e.props),c=e.key,l=e.ref,p=e._owner;if(null!=t){void 0!==t.ref&&(l=t.ref,p=o.current),void 0!==t.key&&(c=""+t.key);for(r in t)t.hasOwnProperty(r)&&!a.hasOwnProperty(r)&&(u[r]=t[r])}var f=arguments.length-2;if(1===f)u.children=n;else if(f>1){for(var d=Array(f),h=0;f>h;h++)d[h]=arguments[h+2];u.children=d}return new s(e.type,c,l,p,u)},s.isValidElement=function(e){var t=!(!e||!e._isReactElement);return t},n.exports=s}),__d("ReactCurrentOwner",[],function(e,t,n,r){"use strict";var o={current:null};n.exports=o}),__d("Object.assign",[],function(e,t,n,r){"use strict";function o(e,t){if(null==e)throw new TypeError("Object.assign target cannot be null or undefined");for(var n=Object(e),r=Object.prototype.hasOwnProperty,o=1;o2?n-2:0),o=2;n>o;o++)r[o-2]=arguments[o];if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(0!==t.indexOf("Failed Composite propType: ")&&!e){var i=0,a="Warning: "+t.replace(/%s/g,function(){return r[i++]});"undefined"!=typeof console&&console.error(a);try{throw new Error(a)}catch(s){}}}),n.exports=i}),__d("emptyFunction",[],function(e,t,n,r){function o(e){return function(){return e}}function i(){}i.thatReturns=o,i.thatReturnsFalse=o(!1),i.thatReturnsTrue=o(!0),i.thatReturnsNull=o(null),i.thatReturnsThis=function(){return this},i.thatReturnsArgument=function(e){return e},n.exports=i}),__d("traverseAllChildren",["ReactElement","ReactFragment","ReactInstanceHandles","getIteratorFn","invariant","warning"],function(e,t,n,r){"use strict";function o(e){return y[e]}function i(e,t){return e&&null!=e.key?s(e.key):t.toString(36)}function a(e){return(""+e).replace(_,o)}function s(e){return"$"+a(e)}function u(e,t,n,r){var o=typeof e;if(("undefined"===o||"boolean"===o)&&(e=null),null===e||"string"===o||"number"===o||l.isValidElement(e))return n(r,e,""===t?v+i(e,0):t),1;var a,c,f=0;if(Array.isArray(e))for(var y=0;y=o;o++)if(i(e,o)&&i(t,o))r=o;else if(e.charAt(o)!==t.charAt(o))break;var s=e.substr(0,r);return d(a(s),"getFirstCommonAncestorID(%s, %s): Expected a valid React DOM ID: %s",e,t,s),s}function p(e,t,n,r,o,i){e=e||"",t=t||"",d(e!==t,"traverseParentPath(...): Cannot traverse from and to the same ID, `%s`.",e);var a=s(t,e);d(a||s(e,t),"traverseParentPath(%s, %s, ...): Cannot traverse from two IDs that do not have a parent path.",e,t);for(var l=0,p=a?u:c,f=e;;f=p(f,t)){var h;if(o&&f===e||i&&f===t||(h=n(f,a,r)),h===!1||f===t)break;d(l++1){var t=e.indexOf(h,1);return t>-1?e.substr(0,t):e}return null},traverseEnterLeave:function(e,t,n,r,o){var i=l(e,t);i!==e&&p(e,i,n,r,!1,!0),i!==t&&p(i,t,n,o,!0,!1)},traverseTwoPhase:function(e,t,n){e&&(p("",e,t,n,!0,!1),p(e,"",t,n,!1,!0))},traverseTwoPhaseSkipTarget:function(e,t,n){e&&(p("",e,t,n,!0,!0),p(e,"",t,n,!0,!0))},traverseAncestors:function(e,t,n){p("",e,t,n,!0,!1)},getFirstCommonAncestorID:l,_getNextDescendantID:c,isAncestorIDOf:s,SEPARATOR:h};n.exports=g}),__d("ReactRootIndex",[],function(e,t,n,r){"use strict";var o={injectCreateReactRootIndex:function(e){i.createReactRootIndex=e}},i={createReactRootIndex:null,injection:o};n.exports=i}),__d("getIteratorFn",[],function(e,t,n,r){"use strict";function o(e){var t=e&&(i&&e[i]||e[a]);return"function"==typeof t?t:void 0}var i="function"==typeof Symbol&&Symbol.iterator,a="@@iterator";n.exports=o}),__d("ReactClass",["ReactComponent","ReactElement","ReactErrorUtils","ReactPropTypeLocations","ReactPropTypeLocationNames","ReactNoopUpdateQueue","Object.assign","emptyObject","invariant","keyMirror","keyOf","warning"],function(e,t,n,r){"use strict";function o(){I||(I=!0,x(!1,"setProps(...) and replaceProps(...) are deprecated. Instead, call React.render again at the top level."))}function i(e,t,n){for(var r in t)t.hasOwnProperty(r)&&x("function"==typeof t[r],"%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.",e.displayName||"ReactClass",y[n],r)}function a(e,t){var n=P.hasOwnProperty(t)?P[t]:null;N.hasOwnProperty(t)&&E(n===C.OVERRIDE_BASE,"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.",t),e.hasOwnProperty(t)&&E(n===C.DEFINE_MANY||n===C.DEFINE_MANY_MERGED,"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",t)}function s(e,t){if(t){E("function"!=typeof t,"ReactClass: You're attempting to use a component class as a mixin. Instead, just use a regular object."),E(!m.isValidElement(t),"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.");var n=e.prototype;t.hasOwnProperty(w)&&D.mixins(e,t.mixins);for(var r in t)if(t.hasOwnProperty(r)&&r!==w){var o=t[r];if(a(n,r),D.hasOwnProperty(r))D[r](e,o);else{var i=P.hasOwnProperty(r),s=n.hasOwnProperty(r),u="function"==typeof o,c=u&&!i&&!s;if(c)n.__reactAutoBindMap||(n.__reactAutoBindMap={}),n.__reactAutoBindMap[r]=o,n[r]=o;else if(s){var f=P[r];E(i&&(f===C.DEFINE_MANY_MERGED||f===C.DEFINE_MANY),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",f,r),f===C.DEFINE_MANY_MERGED?n[r]=l(n[r],o):f===C.DEFINE_MANY&&(n[r]=p(n[r],o))}else n[r]=o,__DEV__&&"function"==typeof o&&t.displayName&&(n[r].displayName=t.displayName+"_"+r)} -}}}function u(e,t){if(t)for(var n in t){var r=t[n];if(t.hasOwnProperty(n)){var o=n in D;E(!o,'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\'t be on the "statics" key. Define it as an instance property instead; it will still be accessible on the constructor.',n);var i=n in e;E(!i,"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",n),e[n]=r}}}function c(e,t){E(e&&t&&"object"==typeof e&&"object"==typeof t,"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.");for(var n in t)t.hasOwnProperty(n)&&(E(void 0===e[n],"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.",n),e[n]=t[n]);return e}function l(e,t){return function(){var n=e.apply(this,arguments),r=t.apply(this,arguments);if(null==n)return r;if(null==r)return n;var o={};return c(o,n),c(o,r),o}}function p(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function f(e,t){var n=t.bind(e);if(__DEV__){n.__reactBoundContext=e,n.__reactBoundMethod=t,n.__reactBoundArguments=null;var r=e.constructor.displayName,o=n.bind;n.bind=function(i){for(var a=arguments.length,s=Array(a>1?a-1:0),u=1;a>u;u++)s[u-1]=arguments[u];if(i!==e&&null!==i)x(!1,"bind(): React component methods may only be bound to the component instance. See %s",r);else if(!s.length)return x(!1,"bind(): You are binding a component method to the component. React does this for you automatically in a high-performance way, so you can safely remove this call. See %s",r),n;var c=o.apply(n,arguments);return c.__reactBoundContext=e,c.__reactBoundMethod=t,c.__reactBoundArguments=s,c}}return n}function d(e){for(var t in e.__reactAutoBindMap)if(e.__reactAutoBindMap.hasOwnProperty(t)){var n=e.__reactAutoBindMap[t];e[t]=f(e,v.guard(n,e.constructor.displayName+"."+t))}}var h=t("ReactComponent"),m=t("ReactElement"),v=t("ReactErrorUtils"),g=t("ReactPropTypeLocations"),y=t("ReactPropTypeLocationNames"),_=t("ReactNoopUpdateQueue"),b=t("Object.assign"),S=t("emptyObject"),E=t("invariant"),R=t("keyMirror"),T=t("keyOf"),x=t("warning"),w=T({mixins:null}),C=R({DEFINE_ONCE:null,DEFINE_MANY:null,OVERRIDE_BASE:null,DEFINE_MANY_MERGED:null}),O=[],I=!1,P={mixins:C.DEFINE_MANY,statics:C.DEFINE_MANY,propTypes:C.DEFINE_MANY,contextTypes:C.DEFINE_MANY,childContextTypes:C.DEFINE_MANY,getDefaultProps:C.DEFINE_MANY_MERGED,getInitialState:C.DEFINE_MANY_MERGED,getChildContext:C.DEFINE_MANY_MERGED,render:C.DEFINE_ONCE,componentWillMount:C.DEFINE_MANY,componentDidMount:C.DEFINE_MANY,componentWillReceiveProps:C.DEFINE_MANY,shouldComponentUpdate:C.DEFINE_ONCE,componentWillUpdate:C.DEFINE_MANY,componentDidUpdate:C.DEFINE_MANY,componentWillUnmount:C.DEFINE_MANY,updateComponent:C.OVERRIDE_BASE},D={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n.":null,url:" See https://fb.me/react-warning-keys for more information.",childOwner:null};return t&&t._owner&&t._owner!==g.current&&(c.childOwner=" It was passed a child from "+i(t._owner)+"."),c}function l(e,t){if(Array.isArray(e))for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e){var t=e.message,n=o(e,["message"]),r=new Error(t);return r.framesToPop=1,Object.assign(r,n)}var s=function(){function e(e,t){for(var n=0;n32&&(this._debugInfo[this._callbackID>>5]=null),this._debugInfo[this._callbackID>>1]=[e,t],r&&n.push(this._callbackID),this._callbacks[this._callbackID++]=r,o&&n.push(this._callbackID),this._callbacks[this._callbackID++]=o),this._queue[m].push(e),this._queue[v].push(t),this._queue[g].push(n),__DEV__&&y&&isFinite(e)&&console.log("JS->N : "+this._remoteModuleTable[e]+"."+this._remoteMethodTable[e][t]+"("+JSON.stringify(n)+")")}},{key:"__callFunction",value:function(e,t,n){u.profile(function(){return e+"."+t+"("+h(n)+")"}),isFinite(e)&&(t=this._methodTable[e][t],e=this._moduleTable[e]),__DEV__&&y&&console.log("N->JS : "+e+"."+t+"("+JSON.stringify(n)+")"),e=this._require(e),e[t].apply(e,n),u.profileEnd()}},{key:"__invokeCallback",value:function(e,t){u.profile(function(){return"MessageQueue.invokeCallback("+e+", "+h(t)+")"});var n=this._callbacks[e];if(!n||__DEV__){var r=this._debugInfo[e>>1],o=r&&this._remoteModuleTable[r[0]],i=r&&this._remoteMethodTable[r[0]][r[1]];f(n,"Callback with id "+e+": "+o+"."+i+"() not found"),n&&y&&console.log("N->JS : ("+JSON.stringify(t)+")")}this._callbacks[-2&e]=null,this._callbacks[1|e]=null,n.apply(null,t),u.profileEnd()}},{key:"_genLookupTables",value:function(e,t,n){for(var r=Object.keys(e),o=0,i=r.length;i>o;o++){var a=r[o],s=e[a].methods,u=e[a].moduleID;t[u]=a,n[u]={};for(var c=Object.keys(s),l=0,p=c.length;p>l;l++){var f=c[l],d=s[f];n[u][d.methodID]=f}}}},{key:"_genModules",value:function(e){for(var t=Object.keys(e),n=0,r=t.length;r>n;n++){var o=t[n],i=e[o];this.RemoteModules[o]=this._genModule({},i)}}},{key:"_genModule",value:function(e,t){for(var n=Object.keys(t.methods),r=0,o=n.length;o>r;r++){var i=n[r],a=t.methods[i];e[i]=this._genMethod(t.moduleID,a.methodID,a.type)}return Object.assign(e,t.constants),e}},{key:"_genMethod",value:function(e,t,n){if(n===_.local)return null;var r=null,o=this;return r=n===_.remoteAsync?function(){for(var n=arguments.length,r=Array(n),i=0;n>i;i++)r[i]=arguments[i];return new Promise(function(n,i){o.__nativeCall(e,t,r,n,function(e){var t=a(e);i(t)})})}:function(){for(var n=arguments.length,r=Array(n),i=0;n>i;i++)r[i]=arguments[i];var a=r.length>0?r[r.length-1]:null,s=r.length>1?r[r.length-2]:null,u="function"==typeof a,c="function"==typeof s;c&&f(u,"Cannot have a non-function arg after a function arg.");var l=u+c,p=u?a:null,d=c?s:null;return r=r.slice(0,r.length-l),o.__nativeCall(e,t,r,d,p)},r.type=n,r}}]),e}();n.exports=S}),__d("BridgeProfiling",["ReactPerf"],function(e,t,n,r){"use strict";function o(){return s||(s=t("ReactPerf")),s}var i=1<<17,a=!1,s=null,u={setEnabled:function(e){a=e,o().enableMeasure=e},profile:function(e){a&&(e="function"==typeof e?e():e,console.profile(i,e))},profileEnd:function(){a&&console.profileEnd(i)},reactPerfMeasure:function(e,t,n){return function(r){if(!a)return n.apply(this,arguments);var o="ReactCompositeComponent"===e&&this.getName()||"";u.profile(e+"."+t+"("+o+")");var i=n.apply(this,arguments);return u.profileEnd(),i}},swizzleReactPerf:function(){o().injection.injectMeasure(u.reactPerfMeasure)}};n.exports=u}),__d("ReactPerf",[],function(e,t,n,r){"use strict";function o(e,t,n){return n}var i={enableMeasure:!1,storedMeasure:o,measureMethods:function(e,t,n){if(__DEV__)for(var r in n)n.hasOwnProperty(r)&&(e[r]=i.measure(t,n[r],e[r]))},measure:function(e,t,n){if(__DEV__){var r=null,o=function(){return i.enableMeasure?(r||(r=i.storedMeasure(e,t,n)),r.apply(this,arguments)):n.apply(this,arguments)};return o.displayName=e+"_"+t,o}return n},injection:{injectMeasure:function(e){i.storedMeasure=e}}};n.exports=i}),__d("ErrorUtils",[],function(e,t,n,r){var o=this;n.exports=o.ErrorUtils}),__d("JSTimersExecution",["invariant","keyMirror","performanceNow","warning","JSTimers","JSTimers"],function(e,t,n,r){"use strict";var o=t("invariant"),i=t("keyMirror"),a=t("performanceNow"),s=t("warning"),u={GUID:1,Type:i({setTimeout:null,setInterval:null,requestAnimationFrame:null,setImmediate:null}),callbacks:[],types:[],timerIDs:[],immediates:[],callTimer:function(e){s(e<=u.GUID,"Tried to call timer with ID "+e+" but no such timer exists");var t=u.timerIDs.indexOf(e);if(-1!==t){var n=u.types[t],r=u.callbacks[t];(n===u.Type.setTimeout||n===u.Type.setImmediate||n===u.Type.requestAnimationFrame)&&u._clearIndex(t);try{if(n===u.Type.setTimeout||n===u.Type.setInterval||n===u.Type.setImmediate)r();else{if(n!==u.Type.requestAnimationFrame)return void console.error("Tried to call a callback with invalid type: "+n);var o=a();r(o)}}catch(i){u.errors=u.errors||[],u.errors.push(i)}}},callTimers:function(e){o(0!==e.length,'Probably shouldn\'t call "callTimers" with no timerIDs'),u.errors=null,e.forEach(u.callTimer);var n=u.errors;if(n){var r=n.length;if(r>1)for(var i=1;r>i;i++)t("JSTimers").setTimeout(function(e){throw e}.bind(null,n[i]),0);throw n[0]}},callImmediates:function(){for(u.errors=null;0!==u.immediates.length;)u.callTimer(u.immediates.shift());u.errors&&u.errors.forEach(function(e){return t("JSTimers").setTimeout(function(){throw e},0)})},_clearIndex:function(e){u.timerIDs[e]=null,u.callbacks[e]=null,u.types[e]=null}};n.exports=u}),__d("performanceNow",["performance"],function(e,t,n,r){var o=t("performance");o&&o.now||(o=Date);var i=o.now.bind(o);n.exports=i}),__d("performance",["ExecutionEnvironment"],function(e,t,n,r){"use strict";var o,i=t("ExecutionEnvironment");i.canUseDOM&&(o=window.performance||window.msPerformance||window.webkitPerformance),n.exports=o||{}}),__d("ExecutionEnvironment",[],function(e,t,n,r){"use strict";var o=!1,i={canUseDOM:o,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:o&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:o&&!!window.screen,isInWorker:!o};n.exports=i}),__d("JSTimers",["NativeModules","JSTimersExecution"],function(e,t,n,r){"use strict";var o=t("NativeModules").Timing,i=t("JSTimersExecution"),a={Types:i.Types,_getFreeIndex:function(){var e=i.timerIDs.indexOf(null);return-1===e&&(e=i.timerIDs.length),e},setTimeout:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),s=2;n>s;s++)r[s-2]=arguments[s];var u=i.GUID++,c=a._getFreeIndex();return i.timerIDs[c]=u,i.callbacks[c]=function(){return e.apply(void 0,r)},i.types[c]=i.Type.setTimeout,o.createTimer(u,t||0,Date.now(),!1),u},setInterval:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),s=2;n>s;s++)r[s-2]=arguments[s];var u=i.GUID++,c=a._getFreeIndex();return i.timerIDs[c]=u,i.callbacks[c]=function(){return e.apply(void 0,r)},i.types[c]=i.Type.setInterval,o.createTimer(u,t||0,Date.now(),!0),u},setImmediate:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r];var o=i.GUID++,s=a._getFreeIndex();return i.timerIDs[s]=o,i.callbacks[s]=function(){return e.apply(void 0,n)},i.types[s]=i.Type.setImmediate,i.immediates.push(o),o},requestAnimationFrame:function(e){var t=i.GUID++,n=a._getFreeIndex();return i.timerIDs[n]=t,i.callbacks[n]=e,i.types[n]=i.Type.requestAnimationFrame,o.createTimer(t,1,Date.now(),!1),t},clearTimeout:function(e){a._clearTimerID(e)},clearInterval:function(e){a._clearTimerID(e)},clearImmediate:function(e){a._clearTimerID(e),i.immediates.splice(i.immediates.indexOf(e),1)},cancelAnimationFrame:function(e){a._clearTimerID(e)},_clearTimerID:function(e){if(null!=e){var t=i.timerIDs.indexOf(e);-1!==t&&(i._clearIndex(t),i.types[t]!==i.Type.setImmediate&&o.deleteTimer(e))}}};n.exports=a}),__d("ReactUpdates",["CallbackQueue","PooledClass","ReactPerf","ReactReconciler","Transaction","Object.assign","invariant"],function(e,t,n,r){"use strict";function o(){g(C.ReactReconcileTransaction&&S,"ReactUpdates: must inject a reconcile transaction class and batching strategy")}function i(){this.reinitializeTransaction(),this.dirtyComponentsLength=null,this.callbackQueue=p.getPooled(),this.reconcileTransaction=C.ReactReconcileTransaction.getPooled()}function a(e,t,n,r,i,a){o(),S.batchedUpdates(e,t,n,r,i,a)}function s(e,t){return e._mountOrder-t._mountOrder}function u(e){var t=e.dirtyComponentsLength;g(t===y.length,"Expected flush transaction's stored dirty-components length (%s) to match dirty-components array length (%s).",t,y.length),y.sort(s);for(var n=0;t>n;n++){var r=y[n],o=r._pendingCallbacks;if(r._pendingCallbacks=null,h.performUpdateIfNecessary(r,e.reconcileTransaction),o)for(var i=0;in;n+=2){var o=t[n/2];a.addTimespan(o,e[n+1]-e[n],o)}}};n.exports=a}),__d("regenerator/runtime.js",[],function(e,t,n,r){!function(e){"use strict";function t(e,t,n,r){var i=Object.create((t||o).prototype),a=new d(r||[]);return i._invoke=l(e,n,a),i}function r(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(r){return{type:"throw",arg:r}}}function o(){}function i(){}function a(){}function s(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function u(e){this.arg=e}function c(e){function t(n,o,i,a){var s=r(e[n],e,o);if("throw"!==s.type){var c=s.arg,l=c.value;return l instanceof u?Promise.resolve(l.arg).then(function(e){t("next",e,i,a)},function(e){t("throw",e,i,a)}):Promise.resolve(l).then(function(e){c.value=e,i(c)},a)}a(s.arg)}function n(e,n){function r(){return new Promise(function(r,o){t(e,n,r,o)})}return o=o?o.then(r,r):r()}"object"==typeof process&&process.domain&&(t=process.domain.bind(t));var o;this._invoke=n}function l(e,t,n){var o=S;return function(i,a){if(o===R)throw new Error("Generator is already running");if(o===T){if("throw"===i)throw a;return m()}for(;;){var s=n.delegate;if(s){if("return"===i||"throw"===i&&s.iterator[i]===v){n.delegate=null;var u=s.iterator["return"];if(u){var c=r(u,s.iterator,a);if("throw"===c.type){i="throw",a=c.arg;continue}}if("return"===i)continue}var c=r(s.iterator[i],s.iterator,a);if("throw"===c.type){n.delegate=null,i="throw",a=c.arg;continue}i="next",a=v;var l=c.arg;if(!l.done)return o=E,l;n[s.resultName]=l.value,n.next=s.nextLoc,n.delegate=null}if("next"===i)o===E?n.sent=a:n.sent=v;else if("throw"===i){if(o===S)throw o=T,a;n.dispatchException(a)&&(i="next",a=v)}else"return"===i&&n.abrupt("return",a);o=R;var c=r(e,t,n);if("normal"===c.type){o=n.done?T:E;var l={value:c.arg,done:n.done};if(c.arg!==x)return l;n.delegate&&"next"===i&&(a=v)}else"throw"===c.type&&(o=T,i="throw",a=c.arg)}}}function p(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function f(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function d(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(p,this),this.reset(!0)}function h(e){if(e){var t=e[y];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,r=function o(){for(;++n=0;--r){var o=this.tryEntries[r],i=o.completion;if("root"===o.tryLoc)return t("end");if(o.tryLoc<=this.prev){var a=g.call(o,"catchLoc"),s=g.call(o,"finallyLoc");if(a&&s){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&g.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),f(n),x}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;f(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:h(e),resultName:t,nextLoc:n},x}}}("object"==typeof e?e:"object"==typeof window?window:"object"==typeof self?self:this)}),__d("ExceptionsManager",["NativeModules","loadSourceMap","parseErrorStack","stringifySafe"],function(e,t,n,r){"use strict";function o(e,t,n){var r=++m;p&&(n||(n=d(e)),t?p.reportFatalException(e.message,n,r):p.reportSoftException(e.message,n,r),__DEV__&&(l=l||f()).then(function(t){var n=d(e,t);p.updateExceptionMessage(e.message,n,r)})["catch"](function(e){console.warn("Unable to load source map: "+e.message)}))}function i(e,t){e.message||(e=new Error(e));var n=d(e),r="Error: "+e.message+"\n stack: \n"+s(n)+"\n URL: "+e.sourceURL+"\n line: "+e.line+"\n message: "+e.message;console.errorOriginal?console.errorOriginal(r):console.error(r),o(e,t,n)}function a(){console.reportException||(console.reportException=o,console.errorOriginal=console.error.bind(console),console.error=function(){if(console.errorOriginal.apply(null,arguments),console.reportErrorsAsExceptions){var e=Array.prototype.map.call(arguments,h).join(", ");if('"Warning: '!==e.slice(0,10)){var t=new Error("console.error: "+e);t.framesToPop=1,o(t,!1)}}},void 0===console.reportErrorsAsExceptions&&(console.reportErrorsAsExceptions=!0))}function s(e){var t=Math.max.apply(null,e.map(function(e){return e.methodName.length}));return e.map(function(e){return u(e,t)}).join("\n")}function u(e,t){var n=e.file.split("/"),r=n[n.length-1];r.length>18&&(r=r.substr(0,17)+"…");var o=c(t-e.methodName.length);return" "+e.methodName+o+" "+r+":"+e.lineNumber}function c(e){return new Array(e+1).join(" ")}var l,p=t("NativeModules").ExceptionsManager,f=t("loadSourceMap"),d=t("parseErrorStack"),h=t("stringifySafe"),m=0;n.exports={handleException:i,installConsoleErrorReporter:a}}),__d("loadSourceMap",["Promise","NativeModules","SourceMap","react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js"],function(e,t,n,r){"use strict";function o(){return i().then(function(e){return new c(e)})}function i(){return e.RAW_SOURCE_MAP?s.resolve(e.RAW_SOURCE_MAP):p?f?new s(p.getScriptText).then(a).then(function(e){return null===e?s.reject(new Error("No source map URL found. May be running from bundled file.")):s.resolve(e)}).then(fetch).then(function(e){return e.text()}):s.reject(new Error("RCTNetworking module is not available")):s.reject(new Error("RCTSourceCode module is not available"))}function a(e){var t=e.url,n=e.text,r=e.fullSourceMappingURL;if(r)return r;var o=l.getFrom(n);if(!o)return null;var i=t.match(/(.+:\/\/.*?)\//)[1];return i+o}var s=t("Promise"),u=t("NativeModules"),c=t("SourceMap").SourceMapConsumer,l=t("react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js"),p=u.SourceCode,f=u.Networking;n.exports=o}),__d("Promise",["setImmediate","promise/setimmediate/es6-extensions.js","promise/setimmediate/done.js"],function(e,t,n,r){"use strict";e.setImmediate=t("setImmediate");var o=t("promise/setimmediate/es6-extensions.js");t("promise/setimmediate/done.js"),o.prototype["finally"]=function(e){return this.then(e,e)},n.exports=o}),__d("setImmediate",["ImmediateImplementation"],function(e,t,n,r){n.exports=e.setImmediate||t("ImmediateImplementation").setImmediate}),__d("ImmediateImplementation",[],function(e,t,n,r){!function(e,t){"use strict";function n(e){var n=e[0];return e=Array.prototype.slice.call(e,1),d[f]=function(){n.apply(t,e)},m=m.next={handle:f++},m.handle}function o(){for(var e,t;!v&&(e=h.next);)if(h=e,t=d[e.handle]){v=!0;try{t(),v=!1}finally{i(e.handle),v&&(v=!1,h.next&&p(o))}}}function i(e){delete d[e]}function a(){if(e.postMessage&&!e.importScripts){var t=!0,n=function(){t=!1,e.removeEventListener?e.removeEventListener("message",n,!1):e.detachEvent("onmessage",n)};if(e.addEventListener)e.addEventListener("message",n,!1);else{if(!e.attachEvent)return!1;e.attachEvent("onmessage",n)}return e.postMessage("","*"),t}}function s(){var t="setImmediate$"+Math.random()+"$",r=function(n){n.source===e&&"string"==typeof n.data&&0===n.data.indexOf(t)&&o()};e.addEventListener?e.addEventListener("message",r,!1):e.attachEvent("onmessage",r),p=function(){var r=n(arguments);return e.postMessage(t+r,"*"),r}}function u(){var e=new MessageChannel;e.port1.onmessage=o,p=function(){var t=n(arguments);return e.port2.postMessage(t),t}}function c(){var e=g.documentElement;p=function(){var t=n(arguments),r=g.createElement("script");return r.onreadystatechange=function(){r.onreadystatechange=null,e.removeChild(r),r=null,o()},e.appendChild(r),t}}function l(){p=function(){return setTimeout(o,0),n(arguments)}}var p,f=1,d={},h={},m=h,v=!1,g=e.document;a()?s():e.MessageChannel?u():g&&"onreadystatechange"in g.createElement("script")?c():l(),r.setImmediate=p,r.clearImmediate=i}(Function("return this")())}),__d("promise/setimmediate/es6-extensions.js",["promise/setimmediate/core.js"],function(e,t,n,r){"use strict";function o(e){var t=new i(i._99);return t._37=1,t._12=e,t}var i=t("promise/setimmediate/core.js");n.exports=i;var a=o(!0),s=o(!1),u=o(null),c=o(void 0),l=o(0),p=o("");i.resolve=function(e){if(e instanceof i)return e;if(null===e)return u;if(void 0===e)return c;if(e===!0)return a;if(e===!1)return s;if(0===e)return l;if(""===e)return p;if("object"==typeof e||"function"==typeof e)try{var t=e.then;if("function"==typeof t)return new i(t.bind(e))}catch(n){return new i(function(e,t){t(n)})}return o(e)},i.all=function(e){var t=Array.prototype.slice.call(e);return new i(function(e,n){function r(a,s){if(s&&("object"==typeof s||"function"==typeof s)){if(s instanceof i&&s.then===i.prototype.then){for(;3===s._37;)s=s._12;return 1===s._37?r(a,s._12):(2===s._37&&n(s._12),void s.then(function(e){r(a,e)},n))}var u=s.then;if("function"==typeof u){var c=new i(u.bind(s));return void c.then(function(e){r(a,e)},n)}}t[a]=s,0===--o&&e(t)}if(0===t.length)return e([]);for(var o=t.length,a=0;a0&&e.column>=0)||t||n||r)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,orginal:t,name:r}))},r.prototype._serializeMappings=function(){var e,t=0,n=1,r=0,a=0,s=0,u=0,c="";this._mappings.sort(i.compareByGeneratedPositions);for(var l=0,p=this._mappings.length;p>l;l++){if(e=this._mappings[l],e.generatedLine!==n)for(t=0;e.generatedLine!==n;)c+=";",n++;else if(l>0){if(!i.compareByGeneratedPositions(e,this._mappings[l-1]))continue;c+=","}c+=o.encode(e.generatedColumn-t),t=e.generatedColumn,e.source&&(c+=o.encode(this._sources.indexOf(e.source)-u),u=this._sources.indexOf(e.source),c+=o.encode(e.originalLine-1-a),a=e.originalLine-1,c+=o.encode(e.originalColumn-r),r=e.originalColumn,e.name&&(c+=o.encode(this._names.indexOf(e.name)-s),s=this._names.indexOf(e.name)))}return c},r.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;t&&(e=i.relative(t,e));var n=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null},this)},r.prototype.toJSON=function(){var e={version:this._version,file:this._file,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},r.prototype.toString=function(){return JSON.stringify(this)},t.SourceMapGenerator=r}),e("source-map/base64-vlq",["require","exports","module","source-map/base64"],function(e,t,n){function r(e){return 0>e?(-e<<1)+1:(e<<1)+0}function o(e){var t=1===(1&e),n=e>>1;return t?-n:n}var i=e("./base64"),a=5,s=1<>>=a,o>0&&(t|=c),n+=i.encode(t);while(o>0);return n},t.decode=function(e){var t,n,r=0,s=e.length,l=0,p=0;do{if(r>=s)throw new Error("Expected more digits in base 64 VLQ value.");n=i.decode(e.charAt(r++)),t=!!(n&c),n&=u,l+=n<r)-(r>n)}function p(e,t,n){var r;return(r=l(e.source,t.source))?r:(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,r||n?r:(r=l(e.name,t.name))?r:(r=e.generatedLine-t.generatedLine,r?r:e.generatedColumn-t.generatedColumn))}function f(e,t,n){var r;return(r=e.generatedLine-t.generatedLine)?r:(r=e.generatedColumn-t.generatedColumn,r||n?r:(r=l(e.source,t.source))?r:(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,r?r:l(e.name,t.name)))}t.getArg=r;var d=/([\w+\-.]+):\/\/((\w+:\w+)@)?([\w.]+)?(:(\d+))?(\S+)?/,h=/^data:.+\,.+/;t.urlParse=o,t.urlGenerate=i,t.join=a,t.toSetString=s,t.fromSetString=u,t.relative=c,t.compareByOriginalPositions=p,t.compareByGeneratedPositions=f}),e("source-map/array-set",["require","exports","module","source-map/util"],function(e,t,n){function r(){this._array=[],this._set={}}var o=e("./util");r.fromArray=function(e,t){for(var n=new r,o=0,i=e.length;i>o;o++)n.add(e[o],t);return n},r.prototype.add=function(e,t){var n=this.has(e),r=this._array.length;(!n||t)&&this._array.push(e),n||(this._set[o.toSetString(e)]=r)},r.prototype.has=function(e){return Object.prototype.hasOwnProperty.call(this._set,o.toSetString(e))},r.prototype.indexOf=function(e){if(this.has(e))return this._set[o.toSetString(e)];throw new Error('"'+e+'" is not in the set.')},r.prototype.at=function(e){if(e>=0&&e0;)if(";"===d.charAt(0))i++,d=d.slice(1),a=0;else if(","===d.charAt(0))d=d.slice(1);else{if(n={},n.generatedLine=i,r=s.decode(d),n.generatedColumn=a+r.value,a=n.generatedColumn,d=r.rest,d.length>0&&!f.test(d.charAt(0))){if(r=s.decode(d),n.source=this._sources.at(l+r.value),l+=r.value,d=r.rest,0===d.length||f.test(d.charAt(0)))throw new Error("Found a source, but no line and column");if(r=s.decode(d),n.originalLine=u+r.value,u=n.originalLine,n.originalLine+=1,d=r.rest,0===d.length||f.test(d.charAt(0)))throw new Error("Found a source and line, but no column");r=s.decode(d),n.originalColumn=c+r.value,c=n.originalColumn,d=r.rest,d.length>0&&!f.test(d.charAt(0))&&(r=s.decode(d),n.name=this._names.at(p+r.value),p+=r.value,d=r.rest)}this.__generatedMappings.push(n),"number"==typeof n.originalLine&&this.__originalMappings.push(n)}this.__originalMappings.sort(o.compareByOriginalPositions)},r.prototype._findMapping=function(e,t,n,r,o){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[r]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[r]);return i.search(e,t,o)},r.prototype.originalPositionFor=function(e){var t={generatedLine:o.getArg(e,"line"),generatedColumn:o.getArg(e,"column")},n=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",o.compareByGeneratedPositions);if(n){var r=o.getArg(n,"source",null);return r&&this.sourceRoot&&(r=o.join(this.sourceRoot,r)),{source:r,line:o.getArg(n,"originalLine",null),column:o.getArg(n,"originalColumn",null),name:o.getArg(n,"name",null)}}return{source:null,line:null,column:null,name:null}},r.prototype.sourceContentFor=function(e){if(!this.sourcesContent)return null;if(this.sourceRoot&&(e=o.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var t;if(this.sourceRoot&&(t=o.urlParse(this.sourceRoot))){var n=e.replace(/^file:\/\//,"");if("file"==t.scheme&&this._sources.has(n))return this.sourcesContent[this._sources.indexOf(n)];if((!t.path||"/"==t.path)&&this._sources.has("/"+e))return this.sourcesContent[this._sources.indexOf("/"+e)]}throw new Error('"'+e+'" is not in the SourceMap.')},r.prototype.generatedPositionFor=function(e){var t={source:o.getArg(e,"source"),originalLine:o.getArg(e,"line"),originalColumn:o.getArg(e,"column")};this.sourceRoot&&(t.source=o.relative(this.sourceRoot,t.source));var n=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",o.compareByOriginalPositions);return n?{line:o.getArg(n,"generatedLine",null),column:o.getArg(n,"generatedColumn",null)}:{line:null,column:null}},r.GENERATED_ORDER=1,r.ORIGINAL_ORDER=2,r.prototype.eachMapping=function(e,t,n){var i,a=t||null,s=n||r.GENERATED_ORDER;switch(s){case r.GENERATED_ORDER:i=this._generatedMappings;break;case r.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var u=this.sourceRoot;i.map(function(e){var t=e.source;return t&&u&&(t=o.join(u,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name}}).forEach(e,a)},t.SourceMapConsumer=r}),e("source-map/binary-search",["require","exports","module"],function(e,t,n){function r(e,t,n,o,i){var a=Math.floor((t-e)/2)+e,s=i(n,o[a],!0);return 0===s?o[a]:s>0?t-a>1?r(a,t,n,o,i):o[a]:a-e>1?r(e,a,n,o,i):0>e?null:o[e]}t.search=function(e,t,n){return t.length>0?r(-1,t.length,e,t,n):null}}),e("source-map/source-node",["require","exports","module","source-map/source-map-generator","source-map/util"],function(e,t,n){function r(e,t,n,r,o){this.children=[],this.sourceContents={},this.line=void 0===e?null:e,this.column=void 0===t?null:t,this.source=void 0===n?null:n,this.name=void 0===o?null:o,null!=r&&this.add(r)}var o=e("./source-map-generator").SourceMapGenerator,i=e("./util");r.fromStringWithSourceMap=function(e,t){function n(e,t){null===e||void 0===e.source?o.add(t):o.add(new r(e.originalLine,e.originalColumn,e.source,t,e.name))}var o=new r,i=e.split("\n"),a=1,s=0,u=null;return t.eachMapping(function(e){if(null===u){for(;a=0;t--)this.prepend(e[t]);else{if(!(e instanceof r||"string"==typeof e))throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},r.prototype.walk=function(e){for(var t,n=0,o=this.children.length;o>n;n++)t=this.children[n],t instanceof r?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},r.prototype.join=function(e){var t,n,r=this.children.length;if(r>0){for(t=[],n=0;r-1>n;n++)t.push(this.children[n]),t.push(e);t.push(this.children[n]),this.children=t}return this},r.prototype.replaceRight=function(e,t){var n=this.children[this.children.length-1];return n instanceof r?n.replaceRight(e,t):"string"==typeof n?this.children[this.children.length-1]=n.replace(e,t):this.children.push("".replace(e,t)),this},r.prototype.setSourceContent=function(e,t){this.sourceContents[i.toSetString(e)]=t},r.prototype.walkSourceContents=function(e){for(var t=0,n=this.children.length;n>t;t++)this.children[t]instanceof r&&this.children[t].walkSourceContents(e);for(var o=Object.keys(this.sourceContents),t=0,n=o.length;n>t;t++)e(i.fromSetString(o[t]),this.sourceContents[o[t]])},r.prototype.toString=function(){var e="";return this.walk(function(t){e+=t}),e},r.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},n=new o(e),r=!1,i=null,a=null,s=null,u=null;return this.walk(function(e,o){t.code+=e,null!==o.source&&null!==o.line&&null!==o.column?((i!==o.source||a!==o.line||s!==o.column||u!==o.name)&&n.addMapping({source:o.source,original:{line:o.line,column:o.column},generated:{line:t.line,column:t.column},name:o.name}),i=o.source,a=o.line,s=o.column,u=o.name,r=!0):r&&(n.addMapping({generated:{line:t.line,column:t.column}}),i=null,r=!1),e.split("").forEach(function(e){"\n"===e?(t.line++,t.column=0):t.column++})}),this.walkSourceContents(function(e,t){n.setSourceContent(e,t)}),{code:t.code,map:n}},t.SourceNode=r}),this.sourceMap={SourceMapConsumer:n("source-map/source-map-consumer").SourceMapConsumer,SourceMapGenerator:n("source-map/source-map-generator").SourceMapGenerator,SourceNode:n("source-map/source-node").SourceNode}}var i={};o.call(i),n.exports=i.sourceMap}),__d("react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js",[],function(e,t,n,r){!function(){var e=null;void function(t,o){"function"==typeof e&&e.amd?e(o):"object"==typeof r?n.exports=o():t.sourceMappingURL=o()}(this,function(){var e=/[#@] sourceMappingURL=([^\s'"]*)/,t=RegExp("(?:/\\*(?:\\s*\r?\n(?://)?)?(?:"+e.source+")\\s*\\*/|//(?:"+e.source+"))\\s*$");return{regex:t,_innerRegex:e,getFrom:function(e){var n=e.match(t);return n?n[1]||n[2]||"":null},existsIn:function(e){return t.test(e)},removeFrom:function(e){return e.replace(t,"")},insertBefore:function(e,n){ -var r=e.match(t);return r?e.slice(0,r.index)+n+e.slice(r.index):e+n}}})}()}),__d("parseErrorStack",["stacktrace-parser/index.js"],function(e,t,n,r){"use strict";function o(e,t){try{var n=e.originalPositionFor({line:t.lineNumber,column:t.column});n&&(t.file=n.source,t.lineNumber=n.line,t.column=n.column)}catch(r){}}function i(e,t){if(!e||!e.stack)return[];for(var n=Array.isArray(e.stack)?e.stack:a.parse(e.stack),r=e.framesToPop||0;r--;)n.shift();return t&&n.forEach(o.bind(null,t)),n}var a=t("stacktrace-parser/index.js");n.exports=i}),__d("stacktrace-parser/index.js",["stacktrace-parser/lib/stacktrace-parser.js"],function(e,t,n,r){n.exports=t("stacktrace-parser/lib/stacktrace-parser.js")}),__d("stacktrace-parser/lib/stacktrace-parser.js",[],function(e,t,n,r){var o="",i={parse:function(e){for(var t,n,r=/^\s*at (?:(?:(?:Anonymous function)?|((?:\[object object\])?\S+(?: \[as \S+\])?)) )?\(?((?:file|http|https):.*?):(\d+)(?::(\d+))?\)?\s*$/i,i=/^(?:\s*(\S*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i,a=/^\s*at (?:((?:\[object object\])?\S+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i,s=e.split("\n"),u=[],c=0,l=s.length;l>c;++c){if(t=i.exec(s[c]))n={file:t[3],methodName:t[1]||o,lineNumber:+t[4],column:t[5]?+t[5]:null};else if(t=r.exec(s[c]))n={file:t[2],methodName:t[1]||o,lineNumber:+t[3],column:t[4]?+t[4]:null};else{if(!(t=a.exec(s[c])))continue;n={file:t[2],methodName:t[1]||o,lineNumber:+t[3],column:t[4]?+t[4]:null}}u.push(n)}return u}};n.exports=i}),__d("Platform",[],function(e,t,n,r){"use strict";var o={OS:"ios"};n.exports=o}),__d("checkFlowAtRuntime",["NativeModules"],function(e,t,n,r){"use strict";function o(){var e=i();e&&fetch(e+"flow/").then(function(e){return e.json()}).then(function(e){if(!e.silentError)throw{message:e.message,stack:e.errors.map(function(e){return s({},e,{methodName:e.description,file:e.filename})})}},function(){}).done()}function i(){var e=t("NativeModules"),n=e&&e.SourceCode&&e.SourceCode.scriptURL||"";return a(n.match(/^https?:\/\/[^\/]+\//))}function a(e){return e?e[0]:null}var s=Object.assign||function(e){for(var t=1;t-1?t:e}function l(e,t){t=t||{};var r=t.body;if(l.prototype.isPrototypeOf(e)){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new n(e.headers)),this.method=e.method,this.mode=e.mode,r||(r=e._bodyInit,e.bodyUsed=!0)}else this.url=e;if(this.credentials=t.credentials||this.credentials||"omit",(t.headers||!this.headers)&&(this.headers=new n(t.headers)),this.method=c(t.method||this.method||"GET"),this.mode=t.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&r)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(r)}function p(e){var t=new FormData;return e.trim().split("&").forEach(function(e){if(e){var n=e.split("="),r=n.shift().replace(/\+/g," "),o=n.join("=").replace(/\+/g," ");t.append(decodeURIComponent(r),decodeURIComponent(o))}}),t}function f(e){var t=new n,r=e.getAllResponseHeaders().trim().split("\n");return r.forEach(function(e){var n=e.trim().split(":"),r=n.shift().trim(),o=n.join(":").trim();t.append(r,o)}),t}function d(e,t){t||(t={}),this._initBody(e),this.type="default",this.url=null,this.status=t.status,this.ok=this.status>=200&&this.status<300,this.statusText=t.statusText,this.headers=t.headers instanceof n?t.headers:new n(t.headers),this.url=t.url||""}if(!o.fetch){n.prototype.append=function(n,r){n=e(n),r=t(r);var o=this.map[n];o||(o=[],this.map[n]=o),o.push(r)},n.prototype["delete"]=function(t){delete this.map[e(t)]},n.prototype.get=function(t){var n=this.map[e(t)];return n?n[0]:null},n.prototype.getAll=function(t){return this.map[e(t)]||[]},n.prototype.has=function(t){return this.map.hasOwnProperty(e(t))},n.prototype.set=function(n,r){this.map[e(n)]=[t(r)]},n.prototype.forEach=function(e,t){Object.getOwnPropertyNames(this.map).forEach(function(n){this.map[n].forEach(function(r){e.call(t,r,n,this)},this)},this)};var h={blob:"function"==typeof FileReader&&"function"==typeof Blob&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"function"==typeof FormData},m=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];u.call(l.prototype),u.call(d.prototype),o.Headers=n,o.Request=l,o.Response=d,o.fetch=function(e,t){var n;return n=l.prototype.isPrototypeOf(e)&&!t?e:new l(e,t),new Promise(function(e,t){function r(){return"responseURL"in o?o.responseURL:/^X-Request-URL:/m.test(o.getAllResponseHeaders())?o.getResponseHeader("X-Request-URL"):void 0}var o=new XMLHttpRequest;o.onload=function(){var n=1223===o.status?204:o.status;if(100>n||n>599)return void t(new TypeError("Network request failed"));var i={status:n,statusText:o.statusText,headers:f(o),url:r()},a="response"in o?o.response:o.responseText;e(new d(a,i))},o.onerror=function(){t(new TypeError("Network request failed"))},o.open(n.method,n.url,!0),"include"===n.credentials&&(o.withCredentials=!0),"responseType"in o&&h.blob&&(o.responseType="blob"),n.headers.forEach(function(e,t){o.setRequestHeader(t,e)}),o.send("undefined"==typeof n._bodyInit?null:n._bodyInit)})},o.fetch.polyfill=!0}}(),n.exports=o}),__d("Geolocation",["RCTDeviceEventEmitter","NativeModules","invariant","logError","warning"],function(e,t,n,r){"use strict";var o=t("RCTDeviceEventEmitter"),i=t("NativeModules").LocationObserver,a=t("invariant"),s=t("logError"),u=t("warning"),c=[],l=!1,p={getCurrentPosition:function(e,t,n){a("function"==typeof e,"Must provide a valid geo_success callback."),i.getCurrentPosition(n||{},e,t||s)},watchPosition:function(e,t,n){l||(i.startObserving(n||{}),l=!0);var r=c.length;return c.push([o.addListener("geolocationDidChange",e),t?o.addListener("geolocationError",t):null]),r},clearWatch:function(e){var t=c[e];if(t){t[0].remove();var n=t[1];n&&n.remove(),c[e]=void 0;for(var r=!0,o=0;on;n++)t[n]=arguments[n];if(!(this instanceof o)){if(t.length>0)return(0,a.defineCustomEventTarget)(o,t);throw new TypeError("Cannot call a class as a function")}Object.defineProperty(this,i.LISTENERS,{value:Object.create(null)})}Object.defineProperty(r,"__esModule",{value:!0}),r["default"]=o;var i=t("event-target-shim/lib/commons.js"),a=t("event-target-shim/lib/CustomEventTarget.js"),s=t("event-target-shim/lib/EventWrapper.js"),u="undefined"!=typeof window&&"undefined"!=typeof window.EventTarget;o.prototype=Object.create((u?window.EventTarget:Object).prototype,{constructor:{value:o,writable:!0,configurable:!0},addEventListener:{value:function(e,t){var n=void 0===arguments[2]?!1:arguments[2];if(null==t)return!1;if("function"!=typeof t)throw new TypeError("listener should be a function.");var r=n?i.CAPTURE:i.BUBBLE,o=this[i.LISTENERS][e];if(null==o)return this[i.LISTENERS][e]=(0,i.newNode)(t,r),!0;for(var a=null;null!=o;){if(o.listener===t&&o.kind===r)return!1;a=o,o=o.next}return a.next=(0,i.newNode)(t,r),!0},configurable:!0,writable:!0},removeEventListener:{value:function(e,t){var n=void 0===arguments[2]?!1:arguments[2];if(null==t)return!1;for(var r=n?i.CAPTURE:i.BUBBLE,o=null,a=this[i.LISTENERS][e];null!=a;){if(a.listener===t&&a.kind===r)return null==o?this[i.LISTENERS][e]=a.next:o.next=a.next,!0;o=a,a=a.next}return!1},configurable:!0,writable:!0},dispatchEvent:{value:function(e){var t=this[i.LISTENERS][e.type];if(null==t)return!0;for(e=(0,s.createEventWrapper)(e,this);null!=t&&(t.listener.call(this,e),!e[s.STOP_IMMEDIATE_PROPAGATION_FLAG]);)t=t.next;return!e.defaultPrevented},configurable:!0,writable:!0}}),n.exports=r["default"]}),__d("event-target-shim/lib/commons.js",[],function(e,t,n,r){"use strict";function o(e,t){return{listener:e,kind:t,next:null}}Object.defineProperty(r,"__esModule",{value:!0}),r.newNode=o;var i="undefined"!=typeof Symbol?Symbol:function(e){return"[["+e+"_"+Math.random().toFixed(8).slice(2)+"]]"};r.symbol=i;var a=i("listeners");r.LISTENERS=a;var s=1;r.CAPTURE=s;var u=2;r.BUBBLE=u;var c=3;r.ATTRIBUTE=c}),__d("event-target-shim/lib/CustomEventTarget.js",["event-target-shim/lib/commons.js"],function(e,t,n,r){"use strict";function o(e,t){for(var n=e[s.LISTENERS][t];null!=n;){if(n.kind===s.ATTRIBUTE)return n.listener;n=n.next}return null}function i(e,t,n){if(null!=n&&"function"!=typeof n)throw new TypeError("listener should be a function.");for(var r=null,o=e[s.LISTENERS][t];null!=o;)o.kind===s.ATTRIBUTE?null==r?e[s.LISTENERS][t]=o.next:r.next=o.next:r=o,o=o.next;null!=n&&(null==r?e[s.LISTENERS][t]=(0,s.newNode)(n,s.ATTRIBUTE):r.next=(0,s.newNode)(n,s.ATTRIBUTE))}function a(e,t){function n(){e.call(this)}var r={constructor:{value:n,configurable:!0,writable:!0}};return t.forEach(function(e){r["on"+e]={get:function(){return o(this,e)},set:function(t){i(this,e,t)},configurable:!0,enumerable:!0}}),n.prototype=Object.create(e.prototype,r),n}Object.defineProperty(r,"__esModule",{value:!0}),r.defineCustomEventTarget=a;var s=t("event-target-shim/lib/commons.js")}),__d("event-target-shim/lib/EventWrapper.js",["event-target-shim/lib/commons.js"],function(e,t,n,r){"use strict";function o(e,t){var n="number"==typeof e.timeStamp?e.timeStamp:Date.now(),r={type:{value:e.type,enumerable:!0},target:{value:t,enumerable:!0},currentTarget:{value:t,enumerable:!0},eventPhase:{value:2,enumerable:!0},bubbles:{value:Boolean(e.bubbles),enumerable:!0},cancelable:{value:Boolean(e.cancelable),enumerable:!0},timeStamp:{value:n,enumerable:!0},isTrusted:{value:!1,enumerable:!0}};"undefined"!=typeof e.detail&&(r.detail={value:e.detail,enumerable:!0});var o=Object.create(Object.create(e,c),r);return Object.defineProperty(o,a,{value:!1,writable:!0}),Object.defineProperty(o,s,{value:!1,writable:!0}),Object.defineProperty(o,u,{value:e}),o}Object.defineProperty(r,"__esModule",{value:!0}),r.createEventWrapper=o;var i=t("event-target-shim/lib/commons.js"),a=(0,i.symbol)("stop_immediate_propagation_flag");r.STOP_IMMEDIATE_PROPAGATION_FLAG=a;var s=(0,i.symbol)("canceled_flag"),u=(0,i.symbol)("original_event"),c={stopPropagation:{value:function(){var e=this[u];"function"==typeof e.stopPropagation&&e.stopPropagation()},writable:!0,configurable:!0},stopImmediatePropagation:{value:function(){this[a]=!0;var e=this[u];"function"==typeof e.stopImmediatePropagation&&e.stopImmediatePropagation()},writable:!0,configurable:!0},preventDefault:{value:function(){this.cancelable===!0&&(this[s]=!0);var e=this[u];"function"==typeof e.preventDefault&&e.preventDefault()},writable:!0,configurable:!0},defaultPrevented:{get:function(){return this[s]},enumerable:!0,configurable:!0}}}),__d("WebSocketEvent",[],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function a(e,t){o(this,a),this.type=e.toString(),Object.assign(this,t)};n.exports=i}),__d("EventPluginHub",["EventPluginRegistry","EventPluginUtils","accumulateInto","forEachAccumulated","invariant","warning"],function(e,t,n,r){"use strict";function o(){var e=h&&h.traverseTwoPhase&&h.traverseEnterLeave;l(e,"InstanceHandle not injected before use!")}var i=t("EventPluginRegistry"),a=t("EventPluginUtils"),s=t("accumulateInto"),u=t("forEachAccumulated"),c=t("invariant"),l=t("warning"),p={},f=null,d=function(e){if(e){var t=a.executeDispatch,n=i.getPluginModuleForEvent(e);n&&n.executeDispatch&&(t=n.executeDispatch),a.executeDispatchesInOrder(e,t),e.isPersistent()||e.constructor.release(e)}},h=null,m={injection:{injectMount:a.injection.injectMount,injectInstanceHandle:function(e){h=e,__DEV__&&o()},getInstanceHandle:function(){return __DEV__&&o(),h},injectEventPluginOrder:i.injectEventPluginOrder,injectEventPluginsByName:i.injectEventPluginsByName},eventNameDispatchConfigs:i.eventNameDispatchConfigs,registrationNameModules:i.registrationNameModules,putListener:function(e,t,n){c("function"==typeof n,"Expected %s listener to be a function, instead got type %s",t,typeof n);var r=p[t]||(p[t]={});r[e]=n;var o=i.registrationNameModules[t];o&&o.didPutListener&&o.didPutListener(e,t,n)},getListener:function(e,t){var n=p[t];return n&&n[e]},deleteListener:function(e,t){var n=i.registrationNameModules[t];n&&n.willDeleteListener&&n.willDeleteListener(e,t);var r=p[t];r&&delete r[e]},deleteAllListeners:function(e){for(var t in p)if(p[t][e]){var n=i.registrationNameModules[t];n&&n.willDeleteListener&&n.willDeleteListener(e,t),delete p[t][e]}},extractEvents:function(e,t,n,r,o){for(var a,u=i.plugins,c=0;c-1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e),!l.plugins[n]){s(t.extractEvents,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e),l.plugins[n]=t;var r=t.eventTypes;for(var o in r)s(i(r[o],t,o),"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",o,e)}}}function i(e,t,n){s(!l.eventNameDispatchConfigs.hasOwnProperty(n),"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",n),l.eventNameDispatchConfigs[n]=e;var r=e.phasedRegistrationNames;if(r){for(var o in r)if(r.hasOwnProperty(o)){var i=r[o];a(i,t,n)}return!0}return e.registrationName?(a(e.registrationName,t,n),!0):!1}function a(e,t,n){s(!l.registrationNameModules[e],"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e),l.registrationNameModules[e]=t,l.registrationNameDependencies[e]=t.eventTypes[n].dependencies}var s=t("invariant"),u=null,c={},l={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},injectEventPluginOrder:function(e){s(!u,"EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React."),u=Array.prototype.slice.call(e),o()},injectEventPluginsByName:function(e){var t=!1;for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];c.hasOwnProperty(n)&&c[n]===r||(s(!c[n],"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",n),c[n]=r,t=!0)}t&&o()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return l.registrationNameModules[t.registrationName]||null;for(var n in t.phasedRegistrationNames)if(t.phasedRegistrationNames.hasOwnProperty(n)){var r=l.registrationNameModules[t.phasedRegistrationNames[n]];if(r)return r}return null},_resetEventPlugins:function(){u=null;for(var e in c)c.hasOwnProperty(e)&&delete c[e];l.plugins.length=0;var t=l.eventNameDispatchConfigs;for(var n in t)t.hasOwnProperty(n)&&delete t[n];var r=l.registrationNameModules;for(var o in r)r.hasOwnProperty(o)&&delete r[o]}};n.exports=l}),__d("EventPluginUtils",["EventConstants","invariant","warning"],function(e,t,n,r){"use strict";function o(e){return e===_.topMouseUp||e===_.topTouchEnd||e===_.topTouchCancel}function i(e){return e===_.topMouseMove||e===_.topTouchMove}function a(e){return e===_.topMouseDown||e===_.topTouchStart}function s(e,t){var n=e._dispatchListeners,r=e._dispatchIDs;if(__DEV__&&h(e),Array.isArray(n))for(var o=0;oe,"Maximum deep merge depth exceeded. You may be attempting to merge circular structures in an unsupported way.")},checkArrayStrategy:function(e){o(void 0===e||e in u.ArrayStrategies,"You must provide an array strategy to deep merge functions to instruct the deep merge how to resolve merging two arrays.")},ArrayStrategies:i({Clobber:!0,IndexByIndex:!0})};n.exports=u}),__d("NodeHandle",[],function(e,t,n,r){var o={injection:{injectImplementation:function(e){o._Implementation=e}},_Implementation:null,getRootNodeID:function(e){return o._Implementation.getRootNodeID(e)}};n.exports=o}),__d("ReactDefaultBatchingStrategy",["ReactUpdates","Transaction","Object.assign","emptyFunction"],function(e,t,n,r){"use strict";function o(){this.reinitializeTransaction()}var i=t("ReactUpdates"),a=t("Transaction"),s=t("Object.assign"),u=t("emptyFunction"),c={initialize:u,close:function(){d.isBatchingUpdates=!1}},l={initialize:u,close:i.flushBatchedUpdates.bind(i)},p=[l,c];s(o.prototype,a.Mixin,{getTransactionWrappers:function(){return p}});var f=new o,d={isBatchingUpdates:!1,batchedUpdates:function(e,t,n,r,o,i){var a=d.isBatchingUpdates;d.isBatchingUpdates=!0,a?e(t,n,r,o,i):f.perform(e,null,t,n,r,o,i)}};n.exports=d}),__d("ReactNativeComponentEnvironment",["ReactNativeDOMIDOperations","ReactNativeReconcileTransaction"],function(e,t,n,r){"use strict";var o=t("ReactNativeDOMIDOperations"),i=t("ReactNativeReconcileTransaction"),a={processChildrenUpdates:o.dangerouslyProcessChildrenUpdates,replaceNodeWithMarkupByID:o.dangerouslyReplaceNodeWithMarkupByID,unmountIDFromEnvironment:function(){},clearNode:function(){},ReactReconcileTransaction:i};n.exports=a}),__d("ReactNativeDOMIDOperations",["ReactNativeTagHandles","ReactMultiChildUpdateTypes","NativeModules","ReactPerf"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("ReactMultiChildUpdateTypes"),a=t("NativeModules").UIManager,s=t("ReactPerf"),u=function(e,t){if(e.length){for(var n={},r=0;r=r?(this._iteratedObject=void 0,e(void 0,!0)):(this._nextIndex=o+1,i===a?e(o,!1):i===s?e(n[o],!1):i===u?e([o,n[o]],!1):void 0)}},{key:"@@iterator",value:function(){return this}}]),t}(),n=function(){function t(e){if(o(this,t),"string"!=typeof e)throw new TypeError("Object is not a string");this._iteratedString=e,this._nextIndex=0}return i(t,[{key:"next",value:function(){if(!this instanceof t)throw new TypeError("Object is not a StringIterator");if(null==this._iteratedString)return e(void 0,!0);var n=this._nextIndex,r=this._iteratedString,o=r.length;if(n>=o)return this._iteratedString=void 0,e(void 0,!0);var i,a=r.charCodeAt(n);if(55296>a||a>56319||n+1===o)i=r[n];else{var s=r.charCodeAt(n+1);i=56320>s||s>57343?r[n]:r[n]+r[n+1]}return this._nextIndex=n+i.length,e(i,!1)}},{key:"@@iterator",value:function(){return this}}]),t}();return function(e,r){return"string"==typeof e?new n(e):Array.isArray(e)?new t(e,r||s):e[c]()}}()}();Object.assign(l,{KIND_KEY:a,KIND_VALUE:s,KIND_KEY_VAL:u,ITERATOR_SYMBOL:c}),n.exports=l}),__d("_shouldPolyfillES6Collection",[],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function a(t){var n=e[t];if(null==n)return!0;var r=n.prototype;return null==n||"function"!=typeof n||"function"!=typeof r.clear||0!==(new n).size||"function"!=typeof r.keys||"function"!=typeof r.forEach||u(n)||!s(n)}function s(e){var t=function(e){function t(){o(this,t),c(Object.getPrototypeOf(t.prototype),"constructor",this).apply(this,arguments)}return i(t,e),t}(e);try{var n=new t([]);return n.size,n instanceof e}catch(r){return!1}}function u(e){try{e()}catch(t){return!1}return!0}var c=function l(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0===r){var o=Object.getPrototypeOf(e);return null===o?void 0:l(o,t,n)}if("value"in r)return r.value;var i=r.get;return void 0===i?void 0:i.call(n)};n.exports=a}),__d("ReactNativeGlobalResponderHandler",["NativeModules","ReactNativeTagHandles"],function(e,t,n,r){"use strict";var o=t("NativeModules").UIManager,i=t("ReactNativeTagHandles"),a={onChange:function(e,t,n){null!==t?o.setJSResponder(i.mostRecentMountedNodeHandleForRootNodeID(t),n):o.clearJSResponder()}};n.exports=a}),__d("ReactNativeTextComponent",["ReactNativeTagHandles","NativeModules","Object.assign"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("NativeModules").UIManager,a=t("Object.assign"),s=function(e){};a(s.prototype,{construct:function(e){this._currentElement=e,this._stringText=""+e,this._rootNodeID=null},mountComponent:function(e,t,n){this._rootNodeID=e;var r=o.allocateTag(),a=o.getNativeTopRootIDFromNodeID(e);return i.createView(r,"RCTRawText",a?o.rootNodeIDToTag[a]:null,{text:this._stringText}),{rootNodeID:e,tag:r}},receiveComponent:function(e,t,n){if(e!==this._currentElement){this._currentElement=e;var r=""+e;r!==this._stringText&&(this._stringText=r,i.updateView(o.mostRecentMountedNodeHandleForRootNodeID(this._rootNodeID),"RCTRawText",{text:this._stringText}))}},unmountComponent:function(){this._currentElement=null,this._stringText=null,this._rootNodeID=null}}),n.exports=s}),__d("ResponderEventPlugin",["EventConstants","EventPluginUtils","EventPropagators","ReactInstanceHandles","ResponderSyntheticEvent","ResponderTouchHistoryStore","accumulate","invariant","keyOf"],function(e,t,n,r){"use strict";function o(e,t,n,r){var o=v(e)?w.startShouldSetResponder:g(e)?w.moveShouldSetResponder:e===s.topLevelTypes.topSelectionChange?w.selectionChangeShouldSetResponder:w.scrollShouldSetResponder,i=E?l.getFirstCommonAncestorID(E,t):t,a=i===E,u=p.getPooled(o,i,n,r);u.touchHistory=f.touchHistory,a?c.accumulateTwoPhaseDispatchesSkipTarget(u):c.accumulateTwoPhaseDispatches(u);var h=S(u);if(u.isPersistent()||u.constructor.release(u),!h||h===E)return null;var m,y=p.getPooled(w.responderGrant,h,n,r);y.touchHistory=f.touchHistory,c.accumulateDirectDispatches(y);var R=_(y)===!0;if(E){var T=p.getPooled(w.responderTerminationRequest,E,n,r);T.touchHistory=f.touchHistory,c.accumulateDirectDispatches(T);var C=!b(T)||_(T);if(T.isPersistent()||T.constructor.release(T),C){var O=w.responderTerminate,I=p.getPooled(O,E,n,r);I.touchHistory=f.touchHistory,c.accumulateDirectDispatches(I),m=d(m,[y,I]),x(h,R)}else{var P=p.getPooled(w.responderReject,h,n,r);P.touchHistory=f.touchHistory,c.accumulateDirectDispatches(P),m=d(m,P)}}else m=d(m,y),x(h,R);return m}function i(e,t,n){return t&&(e===s.topLevelTypes.topScroll&&!n.responderIgnoreScroll||R>0&&e===s.topLevelTypes.topSelectionChange||v(e)||g(e))}function a(e){var t=e.touches;if(!t||0===t.length)return!0;for(var n=0;n=0,"Ended a touch event which was not counted in trackedTouchCount.")),f.recordTouchTrack(e,r,u);var l=i(e,n,r)?o(e,n,r,u):null,m=E&&v(e),_=E&&g(e),b=E&&y(e),S=m?w.responderStart:_?w.responderMove:b?w.responderEnd:null;if(S){var O=p.getPooled(S,E,r,u);O.touchHistory=f.touchHistory,c.accumulateDirectDispatches(O),l=d(l,O)}var I=E&&e===s.topLevelTypes.topTouchCancel,P=E&&!I&&y(e)&&a(r),D=I?w.responderTerminate:P?w.responderRelease:null;if(D){var N=p.getPooled(D,E,r,u);N.touchHistory=f.touchHistory,c.accumulateDirectDispatches(N),l=d(l,N),x(null)}var M=f.touchHistory.numberActiveTouches;return C.GlobalInteractionHandler&&M!==T&&C.GlobalInteractionHandler.onChange(M),T=M,l},GlobalResponderHandler:null,GlobalInteractionHandler:null,injection:{injectGlobalResponderHandler:function(e){C.GlobalResponderHandler=e},injectGlobalInteractionHandler:function(e){C.GlobalInteractionHandler=e}}};n.exports=C}),__d("ResponderSyntheticEvent",["SyntheticEvent"],function(e,t,n,r){"use strict";function o(e,t,n,r){i.call(this,e,t,n,r)}var i=t("SyntheticEvent"),a={touchHistory:function(e){return null}};i.augmentClass(o,a),n.exports=o}),__d("ResponderTouchHistoryStore",["EventPluginUtils","invariant"],function(e,t,n,r){"use strict";var o=t("EventPluginUtils"),i=t("invariant"),a=o.isMoveish,s=o.isStartish,u=o.isEndish,c=20,l={touchBank:[],numberActiveTouches:0,indexOfSingleActiveTouch:-1,mostRecentTimeStamp:0},p=function(e){return e.timeStamp||e.timestamp},f=function(e){return{touchActive:!0,startTimeStamp:p(e),startPageX:e.pageX,startPageY:e.pageY,currentPageX:e.pageX,currentPageY:e.pageY,currentTimeStamp:p(e),previousPageX:e.pageX,previousPageY:e.pageY,previousTimeStamp:p(e)}},d=function(e,t){e.touchActive=!0,e.startTimeStamp=p(t),e.startPageX=t.pageX,e.startPageY=t.pageY,e.currentPageX=t.pageX,e.currentPageY=t.pageY,e.currentTimeStamp=p(t),e.previousPageX=t.pageX,e.previousPageY=t.pageY,e.previousTimeStamp=p(t)},h=function(e){var t=e.identifier;i(null!=t,"Touch object is missing identifier"),t>c&&console.warn("Touch identifier "+t+" is greater than maximum supported "+c+" which causes performance issues backfilling array locations for all of the indices.")},m=function(e){var t=l.touchBank,n=e.identifier,r=t[n];__DEV__&&h(e),r?d(r,e):t[e.identifier]=f(e),l.mostRecentTimeStamp=p(e)},v=function(e){var t=l.touchBank,n=t[e.identifier];__DEV__&&(h(e),i(n,"Touch data should have been recorded on start")),n.touchActive=!0,n.previousPageX=n.currentPageX,n.previousPageY=n.currentPageY,n.previousTimeStamp=n.currentTimeStamp,n.currentPageX=e.pageX,n.currentPageY=e.pageY,n.currentTimeStamp=p(e),l.mostRecentTimeStamp=p(e)},g=function(e){var t=l.touchBank,n=t[e.identifier];__DEV__&&(h(e),i(n,"Touch data should have been recorded on start")),n.previousPageX=n.currentPageX,n.previousPageY=n.currentPageY,n.previousTimeStamp=n.currentTimeStamp,n.currentPageX=e.pageX,n.currentPageY=e.pageY,n.currentTimeStamp=p(e),n.touchActive=!1,l.mostRecentTimeStamp=p(e)},y={recordTouchTrack:function(e,t){var n=l.touchBank;if(a(e))t.changedTouches.forEach(v);else if(s(e))t.changedTouches.forEach(m),l.numberActiveTouches=t.touches.length,1===l.numberActiveTouches&&(l.indexOfSingleActiveTouch=t.touches[0].identifier);else if(u(e)&&(t.changedTouches.forEach(g),l.numberActiveTouches=t.touches.length,1===l.numberActiveTouches)){for(var r=0;rr;r++)n[r]=r;return g._cache[e]=n,n};g._cache={},v.Mixin={getPublicInstance:function(){return this},construct:function(e){this._currentElement=e},unmountComponent:function(){m(this._rootNodeID),this.unmountChildren(),this._rootNodeID=null},initializeChildren:function(e,t,n,r){var o=this.mountChildren(e,n,r);if(o.length){for(var i=g(o.length),a=[],u=0;ur;r++)if(o(e[r],t[r]))return!0}else{for(var i in e)if(o(e[i],t[i]))return!0;for(var a in t)if(void 0===e[a]&&void 0!==t[a])return!0}return!1};n.exports=o}),__d("styleDiffer",["deepDiffer"],function(e,t,n,r){"use strict";function o(e,t){return!i(e,t)}function i(e,t){if(!e)return!t;if(!t)return!e;if(typeof e!=typeof t)return!1;if("number"==typeof e)return e===t;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(var n=0;n>",R={array:i("array"),bool:i("boolean"),func:i("function"),number:i("number"),object:i("object"),string:i("string"),any:a(),arrayOf:s,element:u(),instanceOf:c,node:d(),objectOf:p,oneOf:l,oneOfType:f,shape:h};n.exports=R}),__d("TransformPropTypes",["ReactPropTypes"],function(e,t,n,r){"use strict";var o=t("ReactPropTypes"),i=o.arrayOf(o.number),a=function(e,t,n){return e.transform&&e.transformMatrix?new Error("transformMatrix and transform styles cannot be used on the same component"):i(e,t,n)},s={transform:o.arrayOf(o.oneOfType([o.shape({perspective:o.number}),o.shape({rotate:o.string}),o.shape({rotateX:o.string}),o.shape({rotateY:o.string}),o.shape({rotateZ:o.string}),o.shape({scale:o.number}),o.shape({scaleX:o.number}),o.shape({scaleY:o.number}),o.shape({translateX:o.number}),o.shape({translateY:o.number}),o.shape({skewX:o.string}),o.shape({skewY:o.string})])),transformMatrix:a};n.exports=s}),__d("TextStylePropTypes",["ReactPropTypes","ViewStylePropTypes"],function(e,t,n,r){"use strict";for(var o=t("ReactPropTypes"),i=t("ViewStylePropTypes"),a=Object.assign(Object.create(i),{color:o.string,fontFamily:o.string,fontSize:o.number,fontStyle:o.oneOf(["normal","italic"]),fontWeight:o.oneOf(["normal","bold","100","200","300","400","500","600","700","800","900"]),letterSpacing:o.number,lineHeight:o.number,textAlign:o.oneOf(["auto","left","right","center","justify"]),textDecorationLine:o.oneOf(["none","underline","line-through","underline line-through"]),textDecorationStyle:o.oneOf(["solid","double","dotted","dashed"]),textDecorationColor:o.string,writingDirection:o.oneOf(["auto","ltr","rtl"])}),s=Object.keys({padding:null,paddingTop:null,paddingLeft:null,paddingRight:null,paddingBottom:null,paddingVertical:null,paddingHorizontal:null}),u=0;un&&(n+=1),n>1&&(n-=1),1/6>n?e+6*(t-e)*n:.5>n?t:2/3>n?e+(t-e)*(2/3-n)*6:e}var o,i,a;if(e=l(e,360),t=l(t,100),n=l(n,100),0===t)o=i=a=n;else{var s=.5>n?n*(1+t):n+t-n*t,u=2*n-s;o=r(u,s,e+1/3),i=r(u,s,e),a=r(u,s,e-1/3)}return{r:255*o,g:255*i,b:255*a}}function u(e,t,n){e=6*l(e,360),t=l(t,100),n=l(n,100);var r=math.floor(e),o=e-r,i=n*(1-t),a=n*(1-o*t),s=n*(1-(1-o)*t),u=r%6,c=[n,a,i,i,s,n][u],p=[s,n,n,a,i,i][u],f=[i,i,s,n,n,a][u];return{r:255*c,g:255*p,b:255*f}}function c(e){return e=parseFloat(e),(isNaN(e)||0>e||e>1)&&(e=1),e}function l(e,t){f(e)&&(e="100%");var n=d(e);return e=_(t,b(0,parseFloat(e))),n&&(e=parseInt(e*t,10)/100),Math.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function p(e){return parseInt(e,16)}function f(e){return"string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)}function d(e){return"string"==typeof e&&-1!=e.indexOf("%")}function h(e){return 1>=e&&(e=100*e+"%"),e}function m(e){e=e.replace(v,"").replace(g,"").toLowerCase();var t=!1;if(S[e])e=S[e],t=!0;else if("transparent"==e)return{r:0,g:0,b:0,a:0,format:"name"};var n;return(n=E.rgb.exec(e))?{r:n[1],g:n[2],b:n[3]}:(n=E.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=E.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=E.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=E.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=E.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=E.hex6.exec(e))?{r:p(n[1]),g:p(n[2]),b:p(n[3]),format:t?"name":"hex"}:(n=E.hex3.exec(e))?{r:p(n[1]+""+n[1]),g:p(n[2]+""+n[2]),b:p(n[3]+""+n[3]),format:t?"name":"hex"}:!1}var v=/^[\s,#]+/,g=/\s+$/,y=Math.round,_=Math.min,b=Math.max;o.prototype={toRgb:function(){return{r:y(this._r),g:y(this._g),b:y(this._b),a:this._a}},isValid:function(){return this._ok}};var S=o.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},E=function(){var e="[-\\+]?\\d+%?",t="[-\\+]?\\d*\\.\\d+%?",n="(?:"+t+")|(?:"+e+")",r="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?",o="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?";return{rgb:new RegExp("rgb"+r),rgba:new RegExp("rgba"+o),hsl:new RegExp("hsl"+r),hsla:new RegExp("hsla"+o),hsv:new RegExp("hsv"+r),hsva:new RegExp("hsva"+o),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();n.exports=o}),__d("processTransform",["MatrixMath","Platform","invariant","stringifySafe"],function(e,t,n,r){"use strict";function o(e){var t=u.createIdentityMatrix();return e.forEach(function(e){var n=Object.keys(e)[0],r=e[n];switch(__DEV__&&s(n,r,e),n){case"matrix":u.multiplyInto(t,t,r);break;case"perspective":i(t,u.reusePerspectiveCommand,[r]);break;case"rotateX":i(t,u.reuseRotateXCommand,[a(r)]);break;case"rotateY":i(t,u.reuseRotateYCommand,[a(r)]);break;case"rotate":case"rotateZ":i(t,u.reuseRotateZCommand,[a(r)]);break;case"scale":i(t,u.reuseScaleCommand,[r]);break;case"scaleX":i(t,u.reuseScaleXCommand,[r]);break;case"scaleY":i(t,u.reuseScaleYCommand,[r]);break;case"translate":i(t,u.reuseTranslate3dCommand,[r[0],r[1],r[2]||0]);break;case"translateX":i(t,u.reuseTranslate2dCommand,[r,0]);break;case"translateY":i(t,u.reuseTranslate2dCommand,[0,r]);break;case"skewX":i(t,u.reuseSkewXCommand,[a(r)]);break;case"skewY":i(t,u.reuseSkewYCommand,[a(r)]);break;default:throw new Error("Invalid transform name: "+n)}}),"android"===c.OS?u.decomposeMatrix(t):t}function i(e,t,n){var r=u.createIdentityMatrix(),o=[r].concat(n);t.apply(this,o),u.multiplyInto(e,e,r)}function a(e){var t=parseFloat(e,10);return e.indexOf("rad")>-1?t:t*Math.PI/180}function s(e,t,n){l(!t.getValue,"You passed an Animated.Value to a normal component. You need to wrap that component in an Animated. For example, replace by .");var r=["matrix","translate"];switch(-1!==r.indexOf(e)&&l(Array.isArray(t),"Transform with key of %s must have an array as the value: %s",e,p(n)),e){case"matrix":l(9===t.length||16===t.length,"Matrix transform must have a length of 9 (2d) or 16 (3d). Provided matrix has a length of %s: %s",t.length,p(n));break;case"translate":break;case"rotateX":case"rotateY":case"rotateZ":case"rotate":case"skewX":case"skewY":l("string"==typeof t,'Transform with key of "%s" must be a string: %s',e,p(n)),l(t.indexOf("deg")>-1||t.indexOf("rad")>-1,"Rotate transform must be expressed in degrees (deg) or radians (rad): %s",p(n));break;default:l("number"==typeof t,'Transform with key of "%s" must be a number: %s',e,p(n))}}var u=t("MatrixMath"),c=t("Platform"),l=t("invariant"),p=t("stringifySafe");n.exports=o}),__d("MatrixMath",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i={createIdentityMatrix:function(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},createCopy:function(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15]]},createOrthographic:function(e,t,n,r,o,i){var a=2/(t-e),s=2/(r-n),u=-2/(i-o),c=-(t+e)/(t-e),l=-(r+n)/(r-n),p=-(i+o)/(i-o);return[a,0,0,0,0,s,0,0,0,0,u,0,c,l,p,1]},createFrustum:function(e,t,n,r,o,i){var a=1/(t-e),s=1/(r-n),u=1/(o-i),c=2*(o*a),l=2*(o*s),p=(t+e)*a,f=(r+n)*s,d=(i+o)*u,h=2*(i*o*u);return[c,0,0,0,0,l,0,0,p,f,d,-1,0,0,h,0]},createPerspective:function(e,t,n,r){var o=1/Math.tan(e),i=1/(n-r),a=(r+n)*i,s=2*(r*n*i);return[o/t,0,0,0,0,o,0,0,0,0,a,-1,0,0,s,0]},createTranslate2d:function(e,t){var n=i.createIdentityMatrix();return i.reuseTranslate2dCommand(n,e,t),n},reuseTranslate2dCommand:function(e,t,n){e[12]=t,e[13]=n},reuseTranslate3dCommand:function(e,t,n,r){e[12]=t,e[13]=n,e[14]=r},createScale:function(e){var t=i.createIdentityMatrix();return i.reuseScaleCommand(t,e),t},reuseScaleCommand:function(e,t){e[0]=t,e[5]=t},reuseScale3dCommand:function(e,t,n,r){e[0]=t,e[5]=n,e[10]=r},reusePerspectiveCommand:function(e,t){e[11]=-1/t},reuseScaleXCommand:function(e,t){e[0]=t},reuseScaleYCommand:function(e,t){e[5]=t},reuseScaleZCommand:function(e,t){e[10]=t},reuseRotateXCommand:function(e,t){e[5]=Math.cos(t),e[6]=Math.sin(t),e[9]=-Math.sin(t),e[10]=Math.cos(t)},reuseRotateYCommand:function(e,t){e[0]=Math.cos(t),e[2]=-Math.sin(t),e[8]=Math.sin(t),e[10]=Math.cos(t)},reuseRotateZCommand:function(e,t){e[0]=Math.cos(t),e[1]=Math.sin(t),e[4]=-Math.sin(t),e[5]=Math.cos(t)},createRotateZ:function(e){var t=i.createIdentityMatrix();return i.reuseRotateZCommand(t,e),t},reuseSkewXCommand:function(e,t){e[4]=Math.sin(t),e[5]=Math.cos(t)},reuseSkewYCommand:function(e,t){e[0]=Math.cos(t),e[1]=Math.sin(t)},multiplyInto:function(e,t,n){var r=t[0],o=t[1],i=t[2],a=t[3],s=t[4],u=t[5],c=t[6],l=t[7],p=t[8],f=t[9],d=t[10],h=t[11],m=t[12],v=t[13],g=t[14],y=t[15],_=n[0],b=n[1],S=n[2],E=n[3];e[0]=_*r+b*s+S*p+E*m,e[1]=_*o+b*u+S*f+E*v,e[2]=_*i+b*c+S*d+E*g,e[3]=_*a+b*l+S*h+E*y,_=n[4],b=n[5],S=n[6],E=n[7],e[4]=_*r+b*s+S*p+E*m,e[5]=_*o+b*u+S*f+E*v,e[6]=_*i+b*c+S*d+E*g,e[7]=_*a+b*l+S*h+E*y,_=n[8],b=n[9],S=n[10],E=n[11],e[8]=_*r+b*s+S*p+E*m,e[9]=_*o+b*u+S*f+E*v,e[10]=_*i+b*c+S*d+E*g,e[11]=_*a+b*l+S*h+E*y,_=n[12],b=n[13],S=n[14],E=n[15],e[12]=_*r+b*s+S*p+E*m,e[13]=_*o+b*u+S*f+E*v,e[14]=_*i+b*c+S*d+E*g,e[15]=_*a+b*l+S*h+E*y},determinant:function(e){var t=e[0],n=e[1],r=e[2],o=e[3],i=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],p=e[10],f=e[11],d=e[12],h=e[13],m=e[14],v=e[15];return o*s*l*d-r*u*l*d-o*a*p*d+n*u*p*d+r*a*f*d-n*s*f*d-o*s*c*h+r*u*c*h+o*i*p*h-t*u*p*h-r*i*f*h+t*s*f*h+o*a*c*m-n*u*c*m-o*i*l*m+t*u*l*m+n*i*f*m-t*a*f*m-r*a*c*v+n*s*c*v+r*i*l*v-t*s*l*v-n*i*p*v+t*a*p*v},inverse:function(e){var t=i.determinant(e);if(!t)return e;var n=e[0],r=e[1],o=e[2],a=e[3],s=e[4],u=e[5],c=e[6],l=e[7],p=e[8],f=e[9],d=e[10],h=e[11],m=e[12],v=e[13],g=e[14],y=e[15];return[(c*h*v-l*d*v+l*f*g-u*h*g-c*f*y+u*d*y)/t,(a*d*v-o*h*v-a*f*g+r*h*g+o*f*y-r*d*y)/t,(o*l*v-a*c*v+a*u*g-r*l*g-o*u*y+r*c*y)/t,(a*c*f-o*l*f-a*u*d+r*l*d+o*u*h-r*c*h)/t,(l*d*m-c*h*m-l*p*g+s*h*g+c*p*y-s*d*y)/t,(o*h*m-a*d*m+a*p*g-n*h*g-o*p*y+n*d*y)/t,(a*c*m-o*l*m-a*s*g+n*l*g+o*s*y-n*c*y)/t,(o*l*p-a*c*p+a*s*d-n*l*d-o*s*h+n*c*h)/t,(u*h*m-l*f*m+l*p*v-s*h*v-u*p*y+s*f*y)/t,(a*f*m-r*h*m-a*p*v+n*h*v+r*p*y-n*f*y)/t,(r*l*m-a*u*m+a*s*v-n*l*v-r*s*y+n*u*y)/t,(a*u*p-r*l*p-a*s*f+n*l*f+r*s*h-n*u*h)/t,(c*f*m-u*d*m-c*p*v+s*d*v+u*p*g-s*f*g)/t,(r*d*m-o*f*m+o*p*v-n*d*v-r*p*g+n*f*g)/t,(o*u*m-r*c*m-o*s*v+n*c*v+r*s*g-n*u*g)/t,(r*c*p-o*u*p+o*s*f-n*c*f-r*s*d+n*u*d)/t]},transpose:function(e){return[e[0],e[4],e[8],e[12],e[1],e[5],e[9],e[13],e[2],e[6],e[10],e[14],e[3],e[7],e[11],e[15]]},multiplyVectorByMatrix:function(e,t){var n=e[0],r=e[1],o=e[2],i=e[3];return[n*t[0]+r*t[4]+o*t[8]+i*t[12],n*t[1]+r*t[5]+o*t[9]+i*t[13],n*t[2]+r*t[6]+o*t[10]+i*t[14],n*t[3]+r*t[7]+o*t[11]+i*t[15]]},v3Length:function(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2])},v3Normalize:function(e,t){var n=1/(t||i.v3Length(e));return[e[0]*n,e[1]*n,e[2]*n]},v3Dot:function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]},v3Combine:function(e,t,n,r){return[n*e[0]+r*t[0],n*e[1]+r*t[1],n*e[2]+r*t[2]]},v3Cross:function(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]},quaternionToDegreesXYZ:function(e,t,n){var r=e[0],o=e[1],a=e[2],s=e[3],u=s*s,c=r*r,l=o*o,p=a*a,f=r*o+a*s,d=u+c+l+p,h=180/Math.PI;return f>.49999*d?[0,2*Math.atan2(r,s)*h,90]:-.49999*d>f?[0,-2*Math.atan2(r,s)*h,-90]:[i.roundTo3Places(Math.atan2(2*r*s-2*o*a,1-2*c-2*p)*h),i.roundTo3Places(Math.atan2(2*o*s-2*r*a,1-2*l-2*p)*h),i.roundTo3Places(Math.asin(2*r*o+2*a*s)*h)]},roundTo3Places:function(e){var t=e.toString().split("e");return.001*Math.round(t[0]+"e"+(t[1]?+t[1]-3:3))},decomposeMatrix:function(e){o(16===e.length,"Matrix decomposition needs a list of 3d matrix values, received %s",e);var t=[],n=[],r=[],a=[],s=[];if(e[15]){for(var u=[],c=[],l=0;4>l;l++){u.push([]);for(var p=0;4>p;p++){var f=e[4*l+p]/e[15];u[l].push(f),c.push(3===p?0:f)}}if(c[15]=1,i.determinant(c)){if(0!==u[0][3]||0!==u[1][3]||0!==u[2][3])var d=[u[0][3],u[1][3],u[2][3],u[3][3]],h=i.inverse3x3(c),m=i.transpose4x4(h),t=i.multiplyVectorByMatrix(d,m);else t[0]=t[1]=t[2]=0,t[3]=1;for(var l=0;3>l;l++)s[l]=u[3][l];var v=[];for(l=0;3>l;l++)v[l]=[u[l][0],u[l][1],u[l][2]];r[0]=i.v3Length(v[0]),v[0]=i.v3Normalize(v[0],r[0]),a[0]=i.v3Dot(v[0],v[1]),v[1]=i.v3Combine(v[1],v[0],1,-a[0]),a[0]=i.v3Dot(v[0],v[1]),v[1]=i.v3Combine(v[1],v[0],1,-a[0]),r[1]=i.v3Length(v[1]),v[1]=i.v3Normalize(v[1],r[1]),a[0]/=r[1],a[1]=i.v3Dot(v[0],v[2]),v[2]=i.v3Combine(v[2],v[0],1,-a[1]),a[2]=i.v3Dot(v[1],v[2]),v[2]=i.v3Combine(v[2],v[1],1,-a[2]),r[2]=i.v3Length(v[2]),v[2]=i.v3Normalize(v[2],r[2]),a[1]/=r[2],a[2]/=r[2];var g=i.v3Cross(v[1],v[2]);if(i.v3Dot(v[0],g)<0)for(l=0;3>l;l++)r[l]*=-1,v[l][0]*=-1,v[l][1]*=-1,v[l][2]*=-1;n[0]=.5*Math.sqrt(Math.max(1+v[0][0]-v[1][1]-v[2][2],0)), -n[1]=.5*Math.sqrt(Math.max(1-v[0][0]+v[1][1]-v[2][2],0)),n[2]=.5*Math.sqrt(Math.max(1-v[0][0]-v[1][1]+v[2][2],0)),n[3]=.5*Math.sqrt(Math.max(1+v[0][0]+v[1][1]+v[2][2],0)),v[2][1]>v[1][2]&&(n[0]=-n[0]),v[0][2]>v[2][0]&&(n[1]=-n[1]),v[1][0]>v[0][1]&&(n[2]=-n[2]);var y;return y=n[0]<.001&&n[0]>=0&&n[1]<.001&&n[1]>=0?[0,0,i.roundTo3Places(180*Math.atan2(v[0][1],v[0][0])/Math.PI)]:i.quaternionToDegreesXYZ(n,u,v),{rotationDegrees:y,perspective:t,quaternion:n,scale:r,skew:a,translation:s,rotate:y[2],scaleX:r[0],scaleY:r[1],translateX:s[0],translateY:s[1]}}}}};n.exports=i}),__d("sizesDiffer",[],function(e,t,n,r){"use strict";var o={width:void 0,height:void 0},i=function(e,t){return e=e||o,t=t||o,e!==t&&(e.width!==t.width||e.height!==t.height)};n.exports=i}),__d("ReactMultiChild",["ReactComponentEnvironment","ReactMultiChildUpdateTypes","ReactReconciler","ReactChildReconciler"],function(e,t,n,r){"use strict";function o(e,t,n){m.push({parentID:e,parentNode:null,type:p.INSERT_MARKUP,markupIndex:v.push(t)-1,textContent:null,fromIndex:null,toIndex:n})}function i(e,t,n){m.push({parentID:e,parentNode:null,type:p.MOVE_EXISTING,markupIndex:null,textContent:null,fromIndex:t,toIndex:n})}function a(e,t){m.push({parentID:e,parentNode:null,type:p.REMOVE_NODE,markupIndex:null,textContent:null,fromIndex:t,toIndex:null})}function s(e,t){m.push({parentID:e,parentNode:null,type:p.TEXT_CONTENT,markupIndex:null,textContent:t,fromIndex:null,toIndex:null})}function u(){m.length&&(l.processChildrenUpdates(m,v),c())}function c(){m.length=0,v.length=0}var l=t("ReactComponentEnvironment"),p=t("ReactMultiChildUpdateTypes"),f=t("ReactReconciler"),d=t("ReactChildReconciler"),h=0,m=[],v=[],g={Mixin:{mountChildren:function(e,t,n){var r=d.instantiateChildren(e,t,n);this._renderedChildren=r;var o=[],i=0;for(var a in r)if(r.hasOwnProperty(a)){var s=r[a],u=this._rootNodeID+a,c=f.mountComponent(s,u,t,n);s._mountIndex=i,o.push(c),i++}return o},updateTextContent:function(e){h++;var t=!0;try{var n=this._renderedChildren;d.unmountChildren(n);for(var r in n)n.hasOwnProperty(r)&&this._unmountChildByName(n[r],r);this.setTextContent(e),t=!1}finally{h--,h||(t?c():u())}},updateChildren:function(e,t,n){h++;var r=!0;try{this._updateChildren(e,t,n),r=!1}finally{h--,h||(r?c():u())}},_updateChildren:function(e,t,n){var r=this._renderedChildren,o=d.updateChildren(r,e,t,n);if(this._renderedChildren=o,o||r){var i,a=0,s=0;for(i in o)if(o.hasOwnProperty(i)){var u=r&&r[i],c=o[i];u===c?(this.moveChild(u,s,a),a=Math.max(u._mountIndex,a),u._mountIndex=s):(u&&(a=Math.max(u._mountIndex,a),this._unmountChildByName(u,i)),this._mountChildByNameAtIndex(c,i,s,t,n)),s++}for(i in r)!r.hasOwnProperty(i)||o&&o.hasOwnProperty(i)||this._unmountChildByName(r[i],i)}},unmountChildren:function(){var e=this._renderedChildren;d.unmountChildren(e),this._renderedChildren=null},moveChild:function(e,t,n){e._mountIndex=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=t("NativeMethodsMixin"),a=t("ReactPropTypes"),s=t("React"),u=t("StyleSheet"),c=t("View"),l=t("requireNativeComponent"),p="#999999",f=s.createClass({displayName:"ActivityIndicatorIOS",mixins:[i],propTypes:{animating:a.bool,color:a.string,hidesWhenStopped:a.bool,size:a.oneOf(["small","large"]),onLayout:a.func},getDefaultProps:function(){return{animating:!0,color:p,hidesWhenStopped:!0,size:"small"}},render:function(){var e=this.props,t=e.onLayout,n=e.style,r=o(e,["onLayout","style"]),i="large"===this.props.size?d.sizeLarge:d.sizeSmall;return s.createElement(c,{onLayout:t,style:[d.container,i,n]},s.createElement(h,r))}}),d=u.create({container:{alignItems:"center",justifyContent:"center"},sizeSmall:{width:20,height:20},sizeLarge:{width:36,height:36}}),h=l("RCTActivityIndicatorView",f,{nativeOnly:{activityIndicatorViewStyle:!0}});n.exports=f}),__d("StyleSheet",["StyleSheetRegistry","StyleSheetValidation"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n>")+": "+JSON.stringify(t,null," ")+(r||""))},d={};p.addValidStylePropTypes(a),p.addValidStylePropTypes(u),p.addValidStylePropTypes(c),n.exports=p}),__d("View",["NativeMethodsMixin","ReactPropTypes","NativeModules","React","ReactNativeStyleAttributes","ReactNativeViewAttributes","StyleSheetPropType","ViewStylePropTypes","createReactNativeComponentClass"],function(e,t,n,r){"use strict";var o=t("NativeMethodsMixin"),i=t("ReactPropTypes"),a=t("NativeModules").UIManager,s=t("React"),u=t("ReactNativeStyleAttributes"),c=t("ReactNativeViewAttributes"),l=t("StyleSheetPropType"),p=t("ViewStylePropTypes"),f=t("createReactNativeComponentClass"),d=l(p),h=["none","button","link","header","search","image","selected","plays","key","text","summary","disabled","frequentUpdates","startsMedia","adjustable","allowsDirectInteraction","pageTurn"],m=["none","button","radiobutton_checked","radiobutton_unchecked"],v=s.createClass({displayName:"View",mixins:[o],viewConfig:{uiViewClassName:"RCTView",validAttributes:c.RCTView},statics:{AccessibilityTraits:h,AccessibilityComponentType:m},propTypes:{accessible:i.bool,accessibilityLabel:i.string,accessibilityComponentType:i.oneOf(m),accessibilityLiveRegion:i.oneOf(["none","polite","assertive"]),importantForAccessibility:i.oneOf(["auto","yes","no","no-hide-descendants"]),accessibilityTraits:i.oneOfType([i.oneOf(h),i.arrayOf(i.oneOf(h))]),onAccessibilityTap:i.func,onMagicTap:i.func,testID:i.string,onMoveShouldSetResponder:i.func,onResponderGrant:i.func,onResponderMove:i.func,onResponderReject:i.func,onResponderRelease:i.func,onResponderTerminate:i.func,onResponderTerminationRequest:i.func,onStartShouldSetResponder:i.func,onStartShouldSetResponderCapture:i.func,onLayout:i.func,pointerEvents:i.oneOf(["box-none","none","box-only","auto"]),style:d,removeClippedSubviews:i.bool,renderToHardwareTextureAndroid:i.bool,shouldRasterizeIOS:i.bool,collapsable:i.bool,needsOffscreenAlphaCompositing:i.bool},render:function(){return s.createElement(g,this.props)}}),g=f({validAttributes:c.RCTView,uiViewClassName:"RCTView"});if(g.propTypes=v.propTypes,__DEV__){var y=a.viewConfigs&&a.viewConfigs.RCTView||{};for(var _ in y.nativeProps){var b=v;if(!b.propTypes[_]&&!u[_])throw new Error("View is missing propType for native prop `"+_+"`")}}var S=g;__DEV__&&(S=v),n.exports=S}),__d("ReactNativeViewAttributes",["ReactNativeStyleAttributes"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t=t)return e[n];return e[e.length-1]||1}function l(e){if("object"==typeof e)return e;var t=d.getAssetByID(e);return t?p(t):null}function p(e){var t=o();return t?{__packager_asset:!0,width:e.width,height:e.height,uri:a(t,e),isStatic:!1,scale:c(e.scales,h.get())}:{__packager_asset:!0,width:e.width,height:e.height,uri:i(e),isStatic:!0}}var f,d=t("AssetRegistry"),h=t("PixelRatio"),m=t("Platform"),v=t("NativeModules").SourceCode;n.exports=l,n.exports.pickScale=c}),__d("AssetRegistry",[],function(e,t,n,r){"use strict";function o(e){return a.push(e)}function i(e){return a[e-1]}Object.defineProperty(r,"__esModule",{value:!0});var a=[];n.exports={registerAsset:o,getAssetByID:i}}),__d("PixelRatio",["Dimensions"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=this.state.prevRenderedRowsCount&&t.sectionHeaderShouldUpdate(l);e.push(s.createElement(f,{key:"s_"+p,shouldUpdate:!!h,render:this.props.renderSectionHeader.bind(null,t.getSectionHeaderData(l),p)})),i.push(c++)}for(var m=0;m=this.state.prevRenderedRowsCount&&t.rowShouldUpdate(l,m),_=s.createElement(f,{key:"r_"+g,shouldUpdate:!!y,render:this.props.renderRow.bind(null,t.getRowData(l,m),p,v,this.onRowHighlighted)});if(e.push(_),c++,this.props.renderSeparator&&(m!==d.length-1||l===n.length-1)){var b=this.state.highlightedRow.sectionID===p&&(this.state.highlightedRow.rowID===v||this.state.highlightedRow.rowID===d[m+1]),S=this.props.renderSeparator(p,v,b);e.push(S),c++}if(++r===this.state.curRenderedRowsCount)break}if(r>=this.state.curRenderedRowsCount)break}}var T=this.props,x=T.renderScrollComponent,w=o(T,["renderScrollComponent"]);return w.scrollEventThrottle||(w.scrollEventThrottle=E),Object.assign(w,{onScroll:this._onScroll,stickyHeaderIndices:i,onKeyboardWillShow:void 0,onKeyboardWillHide:void 0,onKeyboardDidShow:void 0,onKeyboardDidHide:void 0}),s.cloneElement(x(w),{ref:R},a,e,u)},_measureAndUpdateScrollProps:function(){var e=this.getScrollResponder();e&&e.getInnerViewNode&&(u.measureLayout(e.getInnerViewNode(),s.findNodeHandle(e),m,this._setScrollContentLength),u.measureLayoutRelativeToParent(s.findNodeHandle(e),m,this._setScrollVisibleLength),c&&c.calculateChildFrames&&c.calculateChildFrames(s.findNodeHandle(e),this._updateChildFrames))},_setScrollContentLength:function(e,t,n,r){this.scrollProperties.contentLength=this.props.horizontal?n:r},_setScrollVisibleLength:function(e,t,n,r){this.scrollProperties.visibleLength=this.props.horizontal?n:r,this._updateVisibleRows(),this._renderMoreRowsIfNeeded()},_updateChildFrames:function(e){this._updateVisibleRows(e)},_maybeCallOnEndReached:function(e){return this.props.onEndReached&&this.scrollProperties.contentLength!==this._sentEndForContentLength&&this._getDistanceFromEnd(this.scrollProperties)i||o>E?b&&(c=!0,delete m[y],l[d]||(l[d]={}),l[d][y]=!1):b||(c=!0,m[y]=!0,l[d]||(l[d]={}),l[d][y]=!0)}h(m)?this._visibleRows[d]&&delete this._visibleRows[d]:this._visibleRows[d]=m}}c&&this.props.onChangeVisibleRows(this._visibleRows,l)}},_onScroll:function(e){var t=!this.props.horizontal;this.scrollProperties.visibleLength=e.nativeEvent.layoutMeasurement[t?"height":"width"],this.scrollProperties.contentLength=e.nativeEvent.contentSize[t?"height":"width"],this.scrollProperties.offset=e.nativeEvent.contentOffset[t?"y":"x"],this._updateVisibleRows(e.nativeEvent.updatedChildFrames),this._maybeCallOnEndReached(e)||this._renderMoreRowsIfNeeded(),this.props.onScroll&&this.props.onScroll(e)}});n.exports=T}),__d("ListViewDataSource",["invariant","isEmpty","warning"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t,n){return e[t][n]}function a(e,t){return e[t]}function s(e){for(var t=0,n=0;n=this.rowIdentities[n].length))return this.rowIdentities[n][t];t-=this.rowIdentities[n].length}return null}},{key:"getSectionIDForFlatIndex",value:function(e){for(var t=e,n=0;n=this.rowIdentities[n].length))return this.sectionIdentities[n];t-=this.rowIdentities[n].length}return null}},{key:"getSectionLengths",value:function(){for(var e=[],t=0;t but not `scrollEventThrottle`. You will only receive one event. Using `16` you get all the events but be aware that it may cause frame drops, use a bigger number if you don't need as much precision."),"android"===a.OS&&"on-drag"===this.props.keyboardDismissMode&&y(),this.scrollResponderHandleScroll(e)},render:function(){var e=[this.props.horizontal&&O.contentContainerHorizontal,this.props.contentContainerStyle];if(__DEV__&&this.props.style){var t=_(this.props.style),n=["alignItems","justifyContent"].filter(function(e){return t&&void 0!==t[e]});S(0===n.length,"ScrollView child layout ("+JSON.stringify(n)+") must by applied through the contentContainerStyle prop.")}var r,i=c.createElement(h,{ref:w,style:e,removeClippedSubviews:this.props.removeClippedSubviews,collapsable:!1},this.props.children),s=void 0!==this.props.alwaysBounceHorizontal?this.props.alwaysBounceHorizontal:this.props.horizontal,l=void 0!==this.props.alwaysBounceVertical?this.props.alwaysBounceVertical:!this.props.horizontal,p=o({},this.props,{alwaysBounceHorizontal:s,alwaysBounceVertical:l,style:[O.base,this.props.style],onTouchStart:this.scrollResponderHandleTouchStart,onTouchMove:this.scrollResponderHandleTouchMove,onTouchEnd:this.scrollResponderHandleTouchEnd,onScrollBeginDrag:this.scrollResponderHandleScrollBeginDrag,onScrollEndDrag:this.scrollResponderHandleScrollEndDrag,onMomentumScrollBegin:this.scrollResponderHandleMomentumScrollBegin,onMomentumScrollEnd:this.scrollResponderHandleMomentumScrollEnd,onStartShouldSetResponder:this.scrollResponderHandleStartShouldSetResponder,onStartShouldSetResponderCapture:this.scrollResponderHandleStartShouldSetResponderCapture,onScrollShouldSetResponder:this.scrollResponderHandleScrollShouldSetResponder,onScroll:this.handleScroll,onResponderGrant:this.scrollResponderHandleResponderGrant,onResponderTerminationRequest:this.scrollResponderHandleTerminationRequest,onResponderTerminate:this.scrollResponderHandleTerminate,onResponderRelease:this.scrollResponderHandleResponderRelease,onResponderReject:this.scrollResponderHandleResponderReject});return"ios"===a.OS?r=u:"android"===a.OS&&(r=this.props.horizontal?D:P),S(void 0!==r,"ScrollViewClass must not be undefined"),c.createElement(r,o({},p,{ref:x}),i)}}),O=f.create({base:{flex:1},contentContainerHorizontal:{alignSelf:"flex-start",flexDirection:"row"}}),I=o({},l.UIView,{alwaysBounceHorizontal:!0,alwaysBounceVertical:!0,automaticallyAdjustContentInsets:!0,bounces:!0,centerContent:!0,contentInset:{diff:b},contentOffset:{diff:E},decelerationRate:!0,horizontal:!0,keyboardDismissMode:!0,keyboardShouldPersistTaps:!0,maximumZoomScale:!0,minimumZoomScale:!0,pagingEnabled:!0,removeClippedSubviews:!0,scrollEnabled:!0,scrollIndicatorInsets:{diff:b},scrollsToTop:!0,showsHorizontalScrollIndicator:!0,showsVerticalScrollIndicator:!0,snapToInterval:!0,snapToAlignment:!0,stickyHeaderIndices:{diff:g},scrollEventThrottle:!0,zoomScale:!0});if("android"===a.OS)var P=v({validAttributes:I,uiViewClassName:"RCTScrollView"}),D=v({validAttributes:I,uiViewClassName:"AndroidHorizontalScrollView"});else if("ios"===a.OS)var u=R("RCTScrollView",C);n.exports=C}),__d("PointPropType",["ReactPropTypes","createStrictShapeTypeChecker"],function(e,t,n,r){"use strict";var o=t("ReactPropTypes"),i=t("createStrictShapeTypeChecker"),a=i({x:o.number,y:o.number});n.exports=a}),__d("ScrollResponder",["NativeModules","Platform","RCTDeviceEventEmitter","React","Subscribable","TextInputState","warning"],function(e,t,n,r){"use strict";var o=t("NativeModules"),i=t("Platform"),a=t("RCTDeviceEventEmitter"),s=t("React"),u=t("Subscribable"),c=t("TextInputState"),l=o.UIManager,p=l.RCTScrollView.Constants,f=t("warning"),d=16,h={mixins:[u.Mixin],statics:p,scrollResponderMixinGetInitialState:function(){return{isTouching:!1,lastMomentumScrollBeginTime:0,lastMomentumScrollEndTime:0,observedScrollSinceBecomingResponder:!1,becameResponderWhileAnimating:!1}},scrollResponderHandleScrollShouldSetResponder:function(){return this.state.isTouching},scrollResponderHandleStartShouldSetResponder:function(){return!1},scrollResponderHandleStartShouldSetResponderCapture:function(e){var t=c.currentlyFocusedField();return this.props.keyboardShouldPersistTaps||null==t||e.target===t?this.scrollResponderIsAnimating():!0},scrollResponderHandleResponderReject:function(){f(!1,"ScrollView doesn't take rejection well - scrolls anyway")},scrollResponderHandleTerminationRequest:function(){return!this.state.observedScrollSinceBecomingResponder},scrollResponderHandleTouchEnd:function(e){var t=e.nativeEvent;this.state.isTouching=0!==t.touches.length,this.props.onTouchEnd&&this.props.onTouchEnd(e)},scrollResponderHandleResponderRelease:function(e){this.props.onResponderRelease&&this.props.onResponderRelease(e);var t=c.currentlyFocusedField();this.props.keyboardShouldPersistTaps||null==t||e.target===t||this.state.observedScrollSinceBecomingResponder||this.state.becameResponderWhileAnimating||(this.props.onScrollResponderKeyboardDismissed&&this.props.onScrollResponderKeyboardDismissed(e),c.blurTextInput(t))},scrollResponderHandleScroll:function(e){this.state.observedScrollSinceBecomingResponder=!0,this.props.onScroll&&this.props.onScroll(e)},scrollResponderHandleResponderGrant:function(e){this.state.observedScrollSinceBecomingResponder=!1,this.props.onResponderGrant&&this.props.onResponderGrant(e),this.state.becameResponderWhileAnimating=this.scrollResponderIsAnimating()},scrollResponderHandleScrollBeginDrag:function(e){this.props.onScrollBeginDrag&&this.props.onScrollBeginDrag(e)},scrollResponderHandleScrollEndDrag:function(e){this.props.onScrollEndDrag&&this.props.onScrollEndDrag(e)},scrollResponderHandleMomentumScrollBegin:function(e){this.state.lastMomentumScrollBeginTime=Date.now(),this.props.onMomentumScrollBegin&&this.props.onMomentumScrollBegin(e)},scrollResponderHandleMomentumScrollEnd:function(e){this.state.lastMomentumScrollEndTime=Date.now(),this.props.onMomentumScrollEnd&&this.props.onMomentumScrollEnd(e)},scrollResponderHandleTouchStart:function(e){this.state.isTouching=!0,this.props.onTouchStart&&this.props.onTouchStart(e)},scrollResponderHandleTouchMove:function(e){this.props.onTouchMove&&this.props.onTouchMove(e)},scrollResponderIsAnimating:function(){var e=Date.now(),t=e-this.state.lastMomentumScrollEndTime,n=d>t||this.state.lastMomentumScrollEndTime=1,"Navigator requires props.initialRoute or props.initialRouteStack.");var n=t.length-1;return this.props.initialRoute&&(n=t.indexOf(this.props.initialRoute),R(-1!==n,"initialRoute is not in initialRouteStack.")),{sceneConfigStack:t.map(function(t){return e.props.configureScene(t)}),routeStack:t,presentedIndex:n,transitionFromIndex:null,activeGesture:null,pendingGestureProgress:null,transitionQueue:[]}},componentWillMount:function(){var e=this;this.__defineGetter__("navigationContext",this._getNavigationContext),this._subRouteFocus=[],this.parentNavigator=this.props.navigator,this._handlers={},this.springSystem=new T.SpringSystem,this.spring=this.springSystem.createSpring(),this.spring.setRestSpeedThreshold(.05),this.spring.setCurrentValue(0).setAtRest(),this.spring.addListener({onSpringEndStateChange:function(){e._interactionHandle||(e._interactionHandle=e.createInteractionHandle())},onSpringUpdate:function(){e._handleSpringUpdate()},onSpringAtRest:function(){e._completeTransition()}}),this.panGesture=m.create({onMoveShouldSetPanResponder:this._handleMoveShouldSetPanResponder,onPanResponderGrant:this._handlePanResponderGrant,onPanResponderRelease:this._handlePanResponderRelease,onPanResponderMove:this._handlePanResponderMove,onPanResponderTerminate:this._handlePanResponderTerminate}),this._interactionHandle=null,this._emitWillFocus(this.state.routeStack[this.state.presentedIndex])},componentDidMount:function(){this._handleSpringUpdate(),this._emitDidFocus(this.state.routeStack[this.state.presentedIndex])},componentWillUnmount:function(){this._navigationContext&&(this._navigationContext.dispose(),this._navigationContext=null)},immediatelyResetRouteStack:function(e){var t=this,n=e.length-1;this.setState({routeStack:e,sceneConfigStack:e.map(this.props.configureScene),presentedIndex:n,activeGesture:null,transitionFromIndex:null,transitionQueue:[]},function(){t._handleSpringUpdate()})},_transitionTo:function(e,t,n,r){if(e!==this.state.presentedIndex){if(null!==this.state.transitionFromIndex)return void this.state.transitionQueue.push({destIndex:e,velocity:t,cb:r});this.state.transitionFromIndex=this.state.presentedIndex,this.state.presentedIndex=e,this.state.transitionCb=r,this._onAnimationStart(),s&&s.startRecordingFps();var o=this.state.sceneConfigStack[this.state.transitionFromIndex]||this.state.sceneConfigStack[this.state.presentedIndex];R(o,"Cannot configure scene at index "+this.state.transitionFromIndex),null!=n&&this.spring.setCurrentValue(n),this.spring.setOvershootClampingEnabled(!0),this.spring.getSpringConfig().friction=o.springFriction,this.spring.getSpringConfig().tension=o.springTension,this.spring.setVelocity(t||o.defaultTransitionVelocity),this.spring.setEndValue(1)}},_handleSpringUpdate:function(){if(null!=this.state.transitionFromIndex)this._transitionBetween(this.state.transitionFromIndex,this.state.presentedIndex,this.spring.getCurrentValue());else if(null!=this.state.activeGesture){var e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._transitionBetween(this.state.presentedIndex,e,this.spring.getCurrentValue())}},_completeTransition:function(){if(1!==this.spring.getCurrentValue()&&0!==this.spring.getCurrentValue())return void(this.state.pendingGestureProgress&&(this.state.pendingGestureProgress=null));this._onAnimationEnd();var e=this.state.presentedIndex,t=this._subRouteFocus[e]||this.state.routeStack[e];if(this._emitDidFocus(t),s&&s.stopRecordingFps(Date.now()),this.state.transitionFromIndex=null,this.spring.setCurrentValue(0).setAtRest(),this._hideScenes(),this.state.transitionCb&&(this.state.transitionCb(),this.state.transitionCb=null),this._interactionHandle&&(this.clearInteractionHandle(this._interactionHandle),this._interactionHandle=null),this.state.pendingGestureProgress){var n=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._enableScene(n),void this.spring.setEndValue(this.state.pendingGestureProgress)}if(this.state.transitionQueue.length){var r=this.state.transitionQueue.shift();this._enableScene(r.destIndex),this._emitWillFocus(this.state.routeStack[r.destIndex]),this._transitionTo(r.destIndex,r.velocity,null,r.cb)}},_emitDidFocus:function(e){this.navigationContext.emit("didfocus",{route:e}),this.props.onDidFocus&&this.props.onDidFocus(e)},_emitWillFocus:function(e){this.navigationContext.emit("willfocus",{route:e});var t=this._navBar;t&&t.handleWillFocus&&t.handleWillFocus(e),this.props.onWillFocus&&this.props.onWillFocus(e)},_hideScenes:function(){var e=null;this.state.activeGesture&&(e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture));for(var t=0;t=t;t++)this._setRenderSceneToHardwareTextureAndroid(t,!1);var n=this._navBar;n&&n.onAnimationEnd&&n.onAnimationEnd()},_setRenderSceneToHardwareTextureAndroid:function(e,t){var n=this.refs["scene_"+e];null!==n&&void 0!==n&&n.setNativeProps({renderToHardwareTextureAndroid:t})},_handleTouchStart:function(){this._eligibleGestures=D},_handleMoveShouldSetPanResponder:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];return this._expectingGestureGrant=this._matchGestureAction(this._eligibleGestures,n.gestures,t),!!this._expectingGestureGrant},_doesGestureOverswipe:function(e){var t=this.state.presentedIndex<=0&&("pop"===e||"jumpBack"===e),n=this.state.presentedIndex>=this.state.routeStack.length-1&&"jumpForward"===e;return n||t},_handlePanResponderGrant:function(e,t){R(this._expectingGestureGrant,"Responder granted unexpectedly."),this._attachGesture(this._expectingGestureGrant),this._onAnimationStart(),this._expectingGestureGrant=null},_deltaForGestureAction:function(e){switch(e){case"pop":case"jumpBack":return-1;case"jumpForward":return 1;default:return void R(!1,"Unsupported gesture action "+e)}},_handlePanResponderRelease:function(e,t){var n=this,r=this.state.sceneConfigStack[this.state.presentedIndex],o=this.state.activeGesture;if(o){var i=r.gestures[o],a=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);if(0===this.spring.getCurrentValue())return this.spring.setCurrentValue(0).setAtRest(),void this._completeTransition();var s,u,c="top-to-bottom"===i.direction||"bottom-to-top"===i.direction,l="right-to-left"===i.direction||"bottom-to-top"===i.direction;c?(s=l?-t.vy:t.vy,u=l?-t.dy:t.dy):(s=l?-t.vx:t.vx,u=l?-t.dx:t.dx);var p=S(-10,s,10);if(Math.abs(s)i.fullDistance*i.stillCompletionRatio;p=f?i.snapVelocity:-i.snapVelocity}if(0>p||this._doesGestureOverswipe(o)){if(null==this.state.transitionFromIndex){var d=this.state.presentedIndex;this.state.presentedIndex=a,this._transitionTo(d,-p,1-this.spring.getCurrentValue())}}else this._emitWillFocus(this.state.routeStack[a]),this._transitionTo(a,p,null,function(){ -"pop"===o&&n._cleanScenesPastIndex(a)});this._detachGesture()}},_handlePanResponderTerminate:function(e,t){if(null!=this.state.activeGesture){var n=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._detachGesture();var r=this.state.presentedIndex;this.state.presentedIndex=n,this._transitionTo(r,null,1-this.spring.getCurrentValue())}},_attachGesture:function(e){this.state.activeGesture=e;var t=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._enableScene(t)},_detachGesture:function(){this.state.activeGesture=null,this.state.pendingGestureProgress=null,this._hideScenes()},_handlePanResponderMove:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];if(this.state.activeGesture){var r=n.gestures[this.state.activeGesture];return this._moveAttachedGesture(r,t)}var o=this._matchGestureAction(D,n.gestures,t);o&&this._attachGesture(o)},_moveAttachedGesture:function(e,t){var n="top-to-bottom"===e.direction||"bottom-to-top"===e.direction,r="right-to-left"===e.direction||"bottom-to-top"===e.direction,o=n?t.dy:t.dx;o=r?-o:o;var i=e.gestureDetectMovement,a=(o-i)/(e.fullDistance-i);if(0>a&&e.isDetachable){var s=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._transitionBetween(this.state.presentedIndex,s,0),this._detachGesture(),void(null!=this.state.pendingGestureProgress&&this.spring.setCurrentValue(0))}if(this._doesGestureOverswipe(this.state.activeGesture)){var u=e.overswipe.frictionConstant,c=e.overswipe.frictionByDistance,l=1/(u+Math.abs(a)*c);a*=l}a=S(0,a,1),null!=this.state.transitionFromIndex?this.state.pendingGestureProgress=a:this.state.pendingGestureProgress?this.spring.setEndValue(a):this.spring.setCurrentValue(a)},_matchGestureAction:function(e,t,n){var r=this;if(!t)return null;var o=null;return e.some(function(e,i){var a=t[e];if(a){if(null==a.overswipe&&r._doesGestureOverswipe(e))return!1;var s="top-to-bottom"===a.direction||"bottom-to-top"===a.direction,u="right-to-left"===a.direction||"bottom-to-top"===a.direction,c=s?n.moveY:n.moveX,l=s?n.dy:n.dx,p=s?n.dx:n.dy,f=a.edgeHitWidth;u&&(c=-c,l=-l,p=-p,f=s?-(C-f):-(w-f));var d=null==a.edgeHitWidth||f>c;if(!d)return!1;var h=l>=a.gestureDetectMovement;if(!h)return!1;var m=Math.abs(l)>Math.abs(p)*a.directionRatio;return m?(o=e,!0):void(r._eligibleGestures=r._eligibleGestures.slice().splice(i,1))}}),o},_transitionSceneStyle:function(e,t,n,r){var o=this.refs["scene_"+r];if(null!==o&&void 0!==o){var i=t>e?t:e,a=this.state.sceneConfigStack[i];a||(a=this.state.sceneConfigStack[i-1]);var s={},u=e>r||t>r?a.animationInterpolators.out:a.animationInterpolators.into,c=t>e?n:1-n,l=u(s,c);l&&o.setNativeProps({style:s})}},_transitionBetween:function(e,t,n){this._transitionSceneStyle(e,t,n,e),this._transitionSceneStyle(e,t,n,t);var r=this._navBar;r&&r.updateProgress&&t>=0&&e>=0&&r.updateProgress(n,e,t)},_handleResponderTerminationRequest:function(){return!1},_getDestIndexWithinBounds:function(e){var t=this.state.presentedIndex,n=t+e;R(n>=0,"Cannot jump before the first route.");var r=this.state.routeStack.length-1;return R(r>=n,"Cannot jump past the last route."),n},_jumpN:function(e){var t=this._getDestIndexWithinBounds(e);this._enableScene(t),this._emitWillFocus(this.state.routeStack[t]),this._transitionTo(t)},jumpTo:function(e){var t=this.state.routeStack.indexOf(e);R(-1!==t,"Cannot jump to route that is not in the route stack"),this._jumpN(t-this.state.presentedIndex)},jumpForward:function(){this._jumpN(1)},jumpBack:function(){this._jumpN(-1)},push:function(e){var t=this;R(!!e,"Must supply route to push");var n=this.state.presentedIndex+1,r=this.state.routeStack.slice(0,n),o=this.state.sceneConfigStack.slice(0,n),i=r.concat([e]),a=i.length-1,s=o.concat([this.props.configureScene(e)]);this._emitWillFocus(i[a]),this.setState({routeStack:i,sceneConfigStack:s},function(){t._enableScene(a),t._transitionTo(a)})},_popN:function(e){var t=this;if(0!==e){R(this.state.presentedIndex-e>=0,"Cannot pop below zero");var n=this.state.presentedIndex-e;this._enableScene(n),this._emitWillFocus(this.state.routeStack[n]),this._transitionTo(n,null,null,function(){t._cleanScenesPastIndex(n)})}},pop:function(){this.state.transitionQueue.length||this.state.presentedIndex>0&&this._popN(1)},replaceAtIndex:function(e,t,n){var r=this;if(R(!!e,"Must supply route to replace"),0>t&&(t+=this.state.routeStack.length),!(this.state.routeStack.length<=t)){var o=this.state.routeStack.slice(),i=this.state.sceneConfigStack.slice();o[t]=e,i[t]=this.props.configureScene(e),t===this.state.presentedIndex&&this._emitWillFocus(e),this.setState({routeStack:o,sceneConfigStack:i},function(){t===r.state.presentedIndex&&r._emitDidFocus(e),n&&n()})}},replace:function(e){this.replaceAtIndex(e,this.state.presentedIndex)},replacePrevious:function(e){this.replaceAtIndex(e,this.state.presentedIndex-1)},popToTop:function(){this.popToRoute(this.state.routeStack[0])},popToRoute:function(e){var t=this.state.routeStack.indexOf(e);R(-1!==t,"Calling popToRoute for a route that doesn't exist!");var n=this.state.presentedIndex-t;this._popN(n)},replacePreviousAndPop:function(e){this.state.routeStack.length<2||(this.replacePrevious(e),this.pop())},resetTo:function(e){var t=this;R(!!e,"Must supply route to push"),this.replaceAtIndex(e,0,function(){t.state.presentedIndex>0&&t._popN(t.state.presentedIndex)})},getCurrentRoutes:function(){return this.state.routeStack.slice()},_cleanScenesPastIndex:function(e){var t=e+1;t0?(r=this._list.pop(),r.constructor.call(r,e,t,n)):r=new c(e,t,n),r}},{key:"put",value:function(e){this._list.push(e)}}]),e}(),u=new s,c=function(){function e(t,n,r){o(this,e),this._type=t,this._target=n,this._data=r,this._defaultPrevented=!1,this._disposed=!1,this._propagationStopped=!1}return i(e,null,[{key:"pool",value:function(e,t,n){return u.get(e,t,n)}}]),i(e,[{key:"preventDefault",value:function(){this._defaultPrevented=!0}},{key:"stopPropagation",value:function(){this._propagationStopped=!0}},{key:"stop",value:function(){this.preventDefault(),this.stopPropagation()}},{key:"isPropagationStopped",value:function(){return this._propagationStopped}},{key:"dispose",value:function(){a(!this._disposed,"NavigationEvent is already disposed"),this._disposed=!0,this._type=null,this._target=null,this._data=null,this._defaultPrevented=!1,u.put(this)}},{key:"type",get:function(){return this._type}},{key:"target",get:function(){return this._target}},{key:"data",get:function(){return this._data}},{key:"defaultPrevented",get:function(){return this._defaultPrevented}}]),e}();n.exports=c}),__d("NavigationEventEmitter",["EventEmitter","NavigationEvent"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;ne?o.Left[e]:o.Right[e]},T=u.createClass({displayName:"NavigatorBreadcrumbNavigationBar",propTypes:{navigator:v.shape({push:v.func,pop:v.func,replace:v.func,popToRoute:v.func,popToTop:v.func}),routeMapper:v.shape({rightContentForRoute:v.func,titleContentForRoute:v.func,iconForRoute:v.func}),navState:u.PropTypes.shape({routeStack:u.PropTypes.arrayOf(u.PropTypes.object),presentedIndex:u.PropTypes.number}),style:l.propTypes.style},statics:{Styles:o},_updateIndexProgress:function(e,t,n,r){var o,i=r>n?e:1-e,a=t-n,s=t-r;d(h[t],"Cannot find breadcrumb interpolators for "+t),o=a>0&&0===s||s>0&&0===a?h[t].RightToCenter:0>a&&0===s||0>s&&0===a?h[t].CenterToLeft:a===s?h[t].RightToCenter:h[t].RightToLeft,o.Crumb(g[t].style,i)&&this._setPropsIfExists("crumb_"+t,g[t]),o.Icon(y[t].style,i)&&this._setPropsIfExists("icon_"+t,y[t]),o.Separator(_[t].style,i)&&this._setPropsIfExists("separator_"+t,_[t]),o.Title(b[t].style,i)&&this._setPropsIfExists("title_"+t,b[t]);var u=this.refs["right_"+t];u&&o.RightItem(S[t].style,i)&&u.setNativeProps(S[t])},updateProgress:function(e,t,n){for(var r=Math.max(t,n),o=Math.min(t,n),i=o;r>=i;i++)this._updateIndexProgress(e,i,t,n)},onAnimationStart:function(e,t){for(var n=Math.max(e,t),r=Math.min(e,t),o=r;n>=o;o++)this._setRenderViewsToHardwareTextureAndroid(o,!0)},onAnimationEnd:function(){for(var e=this.props.navState.routeStack.length-1,t=0;e>=t;t++)this._setRenderViewsToHardwareTextureAndroid(t,!1)},_setRenderViewsToHardwareTextureAndroid:function(e,t){var n={renderToHardwareTextureAndroid:t};this._setPropsIfExists("icon_"+e,n),this._setPropsIfExists("separator_"+e,n),this._setPropsIfExists("title_"+e,n),this._setPropsIfExists("right_"+e,n)},componentWillMount:function(){this._descriptors={crumb:new f,title:new f,right:new f}},render:function(){var e=this.props.navState,t=e&&e.routeStack.map(this._getBreadcrumb),n=e.routeStack.map(this._getTitle),r=e.routeStack.map(this._getRightButton);return u.createElement(l,{style:[x.breadCrumbContainer,this.props.style]},n,t,r)},_getBreadcrumb:function(e,t){if(this._descriptors.crumb.has(e))return this._descriptors.crumb.get(e);var n=this.props.routeMapper,r=R(t,E(this.props.navState)),o=u.createElement(l,{ref:"crumb_"+t,style:r.Crumb},u.createElement(l,{ref:"icon_"+t,style:r.Icon},n.iconForRoute(e,this.props.navigator)),u.createElement(l,{ref:"separator_"+t,style:r.Separator},n.separatorForRoute(e,this.props.navigator)));return this._descriptors.crumb=this._descriptors.crumb.set(e,o),o},_getTitle:function(e,t){if(this._descriptors.title.has(e))return this._descriptors.title.get(e);var n=this.props.routeMapper.titleContentForRoute(this.props.navState.routeStack[t],this.props.navigator),r=R(t,E(this.props.navState)),o=u.createElement(l,{ref:"title_"+t,style:r.Title},n);return this._descriptors.title=this._descriptors.title.set(e,o),o},_getRightButton:function(e,t){if(this._descriptors.right.has(e))return this._descriptors.right.get(e);var n=this.props.routeMapper.rightContentForRoute(this.props.navState.routeStack[t],this.props.navigator);if(!n)return this._descriptors.right=this._descriptors.right.set(e,null),null;var r=R(t,E(this.props.navState)),o=u.createElement(l,{ref:"right_"+t,style:r.RightItem},n);return this._descriptors.right=this._descriptors.right.set(e,o),o},_setPropsIfExists:function(e,t){var e=this.refs[e];e&&e.setNativeProps(t)}}),x=c.create({breadCrumbContainer:{overflow:"hidden",position:"absolute",height:m.General.TotalNavHeight,top:0,left:0,right:0}});n.exports=T}),__d("NavigatorBreadcrumbNavigationBarStyles",["Dimensions","NavigatorNavigationBarStylesIOS","buildStyleInterpolator","merge"],function(e,t,n,r){"use strict";for(var o=t("Dimensions"),i=t("NavigatorNavigationBarStylesIOS"),a=t("buildStyleInterpolator"),s=t("merge"),u=o.get("window").width,c=i.General.StatusBarHeight,l=i.General.NavBarHeight,p=4,f=40,d=9,h=f+d,m=100,v=.6,g=10,y={position:"absolute",flexDirection:"row",top:c,width:h,height:l,backgroundColor:"transparent"},_={width:f,height:l},b={width:d,height:l},S={position:"absolute",top:c,height:l,backgroundColor:"transparent"},E=s(S,{left:0,right:0,alignItems:"center",height:l}),R={position:"absolute",top:c,right:p,overflow:"hidden",opacity:1,height:l,backgroundColor:"transparent"},T=[],x=[],w=[],C=0;g>C;C++){var O=h*C+p;T[C]={Crumb:s(y,{left:O}),Icon:s(_,{opacity:v}),Separator:s(b,{opacity:1}),Title:s(S,{left:O,opacity:0}),RightItem:s(R,{opacity:0})},x[C]={Crumb:s(y,{left:O}),Icon:s(_,{opacity:1}),Separator:s(b,{opacity:0}),Title:s(S,{left:O+f,opacity:1}),RightItem:s(R,{opacity:1})};var I=u-100;w[C]={Crumb:s(y,{left:I}),Icon:s(_,{opacity:0}),Separator:s(b,{opacity:0}),Title:s(S,{left:I+f,opacity:0}),RightItem:s(R,{opacity:0})}}x[0]={Crumb:s(y,{left:u/4}),Icon:s(_,{opacity:0}),Separator:s(b,{opacity:0}),Title:s(E,{opacity:1}),RightItem:x[0].RightItem},T[0].Title=s(E,{left:-u/4,opacity:0}),w[0].Title=s(E,{opacity:0});var P=function(e,t){return{Crumb:a({left:{type:"linear",from:e.Crumb.left,to:t.Crumb.left,min:0,max:1,extrapolate:!0}}),Icon:a({opacity:{type:"linear",from:e.Icon.opacity,to:t.Icon.opacity,min:0,max:1}}),Separator:a({opacity:{type:"linear",from:e.Separator.opacity,to:t.Separator.opacity,min:0,max:1}}),Title:a({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),RightItem:a({opacity:{type:"linear",from:e.RightItem.opacity,to:t.RightItem.opacity,min:0,max:1,round:m}})}},D=x.map(function(e,t){return{RightToCenter:P(w[t],x[t]),CenterToLeft:P(x[t],T[t]),RightToLeft:P(w[t],T[t])}});n.exports={Interpolators:D,Left:T,Center:x,Right:w,IconWidth:f,IconHeight:l,SeparatorWidth:d,SeparatorHeight:l}}),__d("NavigatorNavigationBarStylesIOS",["Dimensions","buildStyleInterpolator","merge"],function(e,t,n,r){"use strict";function o(e,t){return{Title:a({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),LeftButton:a({opacity:{type:"linear",from:e.LeftButton.opacity,to:t.LeftButton.opacity,min:0,max:1,round:h},left:{type:"linear",from:e.LeftButton.left,to:t.LeftButton.left,min:0,max:1}}),RightButton:a({opacity:{type:"linear",from:e.RightButton.opacity,to:t.RightButton.opacity,min:0,max:1,round:h},left:{type:"linear",from:e.RightButton.left,to:t.RightButton.left,min:0,max:1,extrapolate:!0}})}}var i=t("Dimensions"),a=t("buildStyleInterpolator"),s=t("merge"),u=i.get("window").width,c=44,l=20,p=c+l,f={Title:{position:"absolute",top:l,left:0,right:0,alignItems:"center",height:c,backgroundColor:"transparent"},LeftButton:{position:"absolute",top:l,left:0,overflow:"hidden",opacity:1,height:c,backgroundColor:"transparent"},RightButton:{position:"absolute",top:l,right:0,overflow:"hidden",opacity:1,alignItems:"flex-end",height:c,backgroundColor:"transparent"}},d={Left:{Title:s(f.Title,{left:-u/2,opacity:0}),LeftButton:s(f.LeftButton,{left:-u/3,opacity:1}),RightButton:s(f.RightButton,{left:u/3,opacity:0})},Center:{Title:s(f.Title,{left:0,opacity:1}),LeftButton:s(f.LeftButton,{left:0,opacity:1}),RightButton:s(f.RightButton,{left:2*u/3-0,opacity:1})},Right:{Title:s(f.Title,{left:u/2,opacity:0}),LeftButton:s(f.LeftButton,{left:0,opacity:0}),RightButton:s(f.RightButton,{left:u,opacity:0})}},h=100,m={RightToCenter:o(d.Right,d.Center),CenterToLeft:o(d.Center,d.Left),RightToLeft:o(d.Right,d.Left)};n.exports={General:{NavBarHeight:c,StatusBarHeight:l,TotalNavHeight:p},Interpolators:m,Stages:d}}),__d("buildStyleInterpolator",["keyOf"],function(e,t,n,r){for(var o=t("keyOf"),i=o({x:null}),a=o({y:null}),s=o({z:null}),u=o({w:null}),c=o({transformRotateRadians:null}),l={transformRotateRadians:!0,transformScale:!0,transformTranslate:!0},p={transformRotateRadians:[0,0,0,1],transformTranslate:[0,0,0],transformScale:[1,1,1]},f=/([^\s,]+)/g,d=function(e,t){var n=e.toString(),r=n.slice(n.indexOf("(")+1,n.indexOf(")")).match(f)||[],o=r.map(function(e){return"\\b"+e+"\\b"}).join("|"),i=new RegExp(o,"g"),a=n.substring(n.indexOf("{")+1,n.lastIndexOf("}")),s=a.replace(i,function(e){var n=r.indexOf(e),o=t[n];return o});return s.split("\n")},h={unroll:function(e,t,n,r,o,i,a,s,u,c,l,p,f,d,h,m,v){t=e[0],n=e[1],r=e[2],o=e[3],i=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],p=e[10],f=e[11],d=e[12],h=e[13],m=e[14],v=e[15]},matrixDiffers:function(e,t,n,r,o,i,a,s,u,c,l,p,f,d,h,m,v,g){e=e||n!==t[0]||r!==t[1]||o!==t[2]||i!==t[3]||a!==t[4]||s!==t[5]||u!==t[6]||c!==t[7]||l!==t[8]||p!==t[9]||f!==t[10]||d!==t[11]||h!==t[12]||m!==t[13]||v!==t[14]||g!==t[15]},transformScale:function(e,t){var n=t[0],r=t[1],o=t[2];e[0]=e[0]*n,e[1]=e[1]*n,e[2]=e[2]*n,e[3]=e[3]*n,e[4]=e[4]*r,e[5]=e[5]*r,e[6]=e[6]*r,e[7]=e[7]*r,e[8]=e[8]*o,e[9]=e[9]*o,e[10]=e[10]*o,e[11]=e[11]*o,e[12]=e[12],e[13]=e[13],e[14]=e[14],e[15]=e[15]},transformTranslate:function(e,t){var n=t[0],r=t[1],o=t[2];e[12]=e[0]*n+e[4]*r+e[8]*o+e[12],e[13]=e[1]*n+e[5]*r+e[9]*o+e[13],e[14]=e[2]*n+e[6]*r+e[10]*o+e[14],e[15]=e[3]*n+e[7]*r+e[11]*o+e[15]},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,f=r*s,d=r*u,h=o*u,m=i*a,v=i*s,g=i*u,y=1-(f+h),_=l+g,b=p-v,S=l-g,E=1-(c+h),R=d+m,T=p+v,x=d-m,w=1-(c+f),C=e[0],O=e[1],I=e[2],P=e[3],D=e[4],N=e[5],M=e[6],A=e[7],k=e[8],j=e[9],L=e[10],V=e[11],F=y,B=_,U=b;e[0]=F*C+B*D+U*k,e[1]=F*O+B*N+U*j,e[2]=F*I+B*M+U*L,e[3]=F*P+B*A+U*V,F=S,B=E,U=R,e[4]=F*C+B*D+U*k,e[5]=F*O+B*N+U*j,e[6]=F*I+B*M+U*L,e[7]=F*P+B*A+U*V,F=T,B=x,U=w,e[8]=F*C+B*D+U*k,e[9]=F*O+B*N+U*j,e[10]=F*I+B*M+U*L,e[11]=F*P+B*A+U*V}},m={transformScale:function(e,t){e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1},transformTranslate:function(e,t){e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,f=r*s,d=r*u,h=o*u,m=i*a,v=i*s,g=i*u,y=1-(f+h),_=l+g,b=p-v,S=l-g,E=1-(c+h),R=d+m,T=p+v,x=d-m,w=1-(c+f),C=y,O=_,I=b;e[0]=C,e[1]=O,e[2]=I,e[3]=0,C=S,O=E,I=R,e[4]=C,e[5]=O,e[6]=I,e[7]=0,C=T,O=x,I=w,e[8]=C,e[9]=O,e[10]=I,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1}},v=function(e,t){return" if (!didChange) {\n var prevVal = result."+e+";\n result."+e+" = "+t+";\n didChange = didChange || ("+t+" !== prevVal);\n } else {\n result."+e+" = "+t+";\n }\n"},g=(function(e,t,n,r){var o="round"in e,i=e.round,a=" ratio = (value - "+e.min+") / "+(e.max-e.min)+";\n";e.extrapolate||(a+=" ratio = ratio > 1 ? 1 : (ratio < 0 ? 0 : ratio);\n");var s=o?"Math.round("+i+" * ":"",u=o?") / "+i:"";return a+=" "+r+" = "+s+"("+t+" * (1 - ratio) + "+n+" * ratio)"+u+";\n"}),y=function(e){return g(e,e.from,e.to,"nextScalarVal")},_=function(e){var t=JSON.stringify(e.value);return" nextScalarVal = "+t+";\n"},b=function(e){return" nextScalarVal = value >= "+(e.threshold+" ? "+e.to+" : "+e.from)+";\n"},S=function(e){return" nextScalarVal = value;\n"},E=function(e){return e+"ReuseOp"},R=function(e){var t="";for(var n in e)l[n]&&(t+="var "+E(n)+" = [];\n");return t},T=function(e){return"\n"+e.join("\n")+"\n"},x=function(e,t,n,r){var o=E(t)+"["+r+"]";return void 0!==e.from[n]&&void 0!==e.to[n]?" "+e.from[n]!==e.to[n]?g(e,e.from[n],e.to[n],o):o+" = "+e.from[n]+";":" "+o+" = "+p[t][r]+";"},w=[],C=0;16>C;C++)w.push("m"+C);var O=function(e){var t=[" var transformMatrix = result.transformMatrix !== undefined ? result.transformMatrix : (result.transformMatrix = []);"];t.push.apply(t,d(h.unroll,["transformMatrix"].concat(w)));for(var n=0;no;o++)r[o]=e[o+t];return r}function i(e){return void 0===e.size&&(e.size=e.__iterate(s)),e.size}function a(e,t){if("number"!=typeof t){var n=+t;if(""+n!==t)return NaN;t=n}return 0>t?i(e)+t:t}function s(){return!0}function u(e,t,n){return(0===e||void 0!==n&&-n>=e)&&(void 0===t||void 0!==n&&t>=n)}function c(e,t){return p(e,t,0)}function l(e,t){return p(e,t,t)}function p(e,t,n){return void 0===e?n:0>e?Math.max(0,t+e):void 0===t?e:Math.min(t,e)}function f(e){return v(e)?e:I(e)}function d(e){return g(e)?e:P(e)}function h(e){return y(e)?e:D(e)}function m(e){return v(e)&&!_(e)?e:N(e)}function v(e){return!(!e||!e[mn])}function g(e){return!(!e||!e[vn])}function y(e){return!(!e||!e[gn])}function _(e){return g(e)||y(e)}function b(e){return!(!e||!e[yn])}function S(e){this.next=e}function E(e,t,n,r){var o=0===e?t:1===e?n:[t,n];return r?r.value=o:r={value:o,done:!1},r}function R(){return{value:void 0,done:!0}}function T(e){return!!C(e)}function x(e){return e&&"function"==typeof e.next}function w(e){var t=C(e);return t&&t.call(e)}function C(e){var t=e&&(En&&e[En]||e[Rn]);return"function"==typeof t?t:void 0}function O(e){return e&&"number"==typeof e.length}function I(e){return null===e||void 0===e?V():v(e)?e.toSeq():U(e)}function P(e){return null===e||void 0===e?V().toKeyedSeq():v(e)?g(e)?e.toSeq():e.fromEntrySeq():F(e)}function D(e){return null===e||void 0===e?V():v(e)?g(e)?e.entrySeq():e.toIndexedSeq():B(e)}function N(e){return(null===e||void 0===e?V():v(e)?g(e)?e.entrySeq():e:B(e)).toSetSeq()}function M(e){this._array=e,this.size=e.length}function A(e){var t=Object.keys(e);this._object=e,this._keys=t,this.size=t.length}function k(e){this._iterable=e,this.size=e.length||e.size}function j(e){this._iterator=e,this._iteratorCache=[]}function L(e){return!(!e||!e[xn])}function V(){return wn||(wn=new M([]))}function F(e){var t=Array.isArray(e)?new M(e).fromEntrySeq():x(e)?new j(e).fromEntrySeq():T(e)?new k(e).fromEntrySeq():"object"==typeof e?new A(e):void 0;if(!t)throw new TypeError("Expected Array or iterable object of [k, v] entries, or keyed object: "+e);return t}function B(e){var t=H(e);if(!t)throw new TypeError("Expected Array or iterable object of values: "+e);return t}function U(e){var t=H(e)||"object"==typeof e&&new A(e);if(!t)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+e);return t}function H(e){return O(e)?new M(e):x(e)?new j(e):T(e)?new k(e):void 0}function q(e,t,n,r){var o=e._cache;if(o){for(var i=o.length-1,a=0;i>=a;a++){var s=o[n?i-a:a];if(t(s[1],r?s[0]:a,e)===!1)return a+1}return a}return e.__iterateUncached(t,n)}function z(e,t,n,r){var o=e._cache;if(o){var i=o.length-1,a=0;return new S(function(){var e=o[n?i-a:a];return a++>i?R():E(t,r?e[0]:a-1,e[1])})}return e.__iteratorUncached(t,n)}function G(){throw TypeError("Abstract")}function W(){}function Y(){}function K(){}function Z(e,t){if(e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1;if("function"==typeof e.valueOf&&"function"==typeof t.valueOf){if(e=e.valueOf(),t=t.valueOf(),e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1}return"function"==typeof e.equals&&"function"==typeof t.equals&&e.equals(t)?!0:!1}function X(e,t){return t?J(t,e,"",{"":e}):Q(e)}function J(e,t,n,r){return Array.isArray(t)?e.call(r,n,D(t).map(function(n,r){return J(e,n,r,t)})):$(t)?e.call(r,n,P(t).map(function(n,r){return J(e,n,r,t)})):t}function Q(e){return Array.isArray(e)?D(e).map(Q).toList():$(e)?P(e).map(Q).toMap():e}function $(e){return e&&(e.constructor===Object||void 0===e.constructor)}function ee(e){return e>>>1&1073741824|3221225471&e}function te(e){if(e===!1||null===e||void 0===e)return 0;if("function"==typeof e.valueOf&&(e=e.valueOf(),e===!1||null===e||void 0===e))return 0;if(e===!0)return 1;var t=typeof e;if("number"===t){var n=0|e;for(n!==e&&(n^=4294967295*e);e>4294967295;)e/=4294967295,n^=e;return ee(n)}return"string"===t?e.length>An?ne(e):re(e):"function"==typeof e.hashCode?e.hashCode():oe(e)}function ne(e){var t=Ln[e];return void 0===t&&(t=re(e),jn===kn&&(jn=0,Ln={}),jn++,Ln[e]=t),t}function re(e){for(var t=0,n=0;n0)switch(e.nodeType){case 1:return e.uniqueID;case 9:return e.documentElement&&e.documentElement.uniqueID}}function ae(e,t){if(!e)throw new Error(t)}function se(e){ae(e!==1/0,"Cannot perform this action with an infinite size.")}function ue(e,t){this._iter=e,this._useKeys=t,this.size=e.size}function ce(e){this._iter=e,this.size=e.size}function le(e){this._iter=e,this.size=e.size}function pe(e){this._iter=e,this.size=e.size}function fe(e){var t=Me(e);return t._iter=e,t.size=e.size,t.flip=function(){return e},t.reverse=function(){var t=e.reverse.apply(this);return t.flip=function(){return e.reverse()},t},t.has=function(t){return e.includes(t)},t.includes=function(t){return e.has(t)},t.cacheResult=Ae,t.__iterateUncached=function(t,n){var r=this;return e.__iterate(function(e,n){return t(n,e,r)!==!1},n)},t.__iteratorUncached=function(t,n){if(t===Sn){var r=e.__iterator(t,n);return new S(function(){var e=r.next();if(!e.done){var t=e.value[0];e.value[0]=e.value[1],e.value[1]=t}return e})}return e.__iterator(t===bn?_n:bn,n)},t}function de(e,t,n){var r=Me(e);return r.size=e.size,r.has=function(t){return e.has(t)},r.get=function(r,o){var i=e.get(r,fn);return i===fn?o:t.call(n,i,r,e)},r.__iterateUncached=function(r,o){var i=this;return e.__iterate(function(e,o,a){return r(t.call(n,e,o,a),o,i)!==!1},o)},r.__iteratorUncached=function(r,o){var i=e.__iterator(Sn,o);return new S(function(){var o=i.next();if(o.done)return o;var a=o.value,s=a[0];return E(r,s,t.call(n,a[1],s,e),o)})},r}function he(e,t){var n=Me(e);return n._iter=e,n.size=e.size,n.reverse=function(){return e},e.flip&&(n.flip=function(){var t=fe(e);return t.reverse=function(){return e.flip()},t}),n.get=function(n,r){return e.get(t?n:-1-n,r)},n.has=function(n){return e.has(t?n:-1-n)},n.includes=function(t){return e.includes(t)},n.cacheResult=Ae,n.__iterate=function(t,n){var r=this;return e.__iterate(function(e,n){return t(e,n,r)},!n)},n.__iterator=function(t,n){return e.__iterator(t,!n)},n}function me(e,t,n,r){var o=Me(e);return r&&(o.has=function(r){var o=e.get(r,fn);return o!==fn&&!!t.call(n,o,r,e)},o.get=function(r,o){var i=e.get(r,fn);return i!==fn&&t.call(n,i,r,e)?i:o}),o.__iterateUncached=function(o,i){var a=this,s=0;return e.__iterate(function(e,i,u){return t.call(n,e,i,u)?(s++,o(e,r?i:s-1,a)):void 0},i),s},o.__iteratorUncached=function(o,i){var a=e.__iterator(Sn,i),s=0;return new S(function(){for(;;){var i=a.next();if(i.done)return i;var u=i.value,c=u[0],l=u[1];if(t.call(n,l,c,e))return E(o,r?c:s++,l,i)}})},o}function ve(e,t,n){var r=Le().asMutable();return e.__iterate(function(o,i){r.update(t.call(n,o,i,e),0,function(e){return e+1})}),r.asImmutable()}function ge(e,t,n){var r=g(e),o=(b(e)?Rt():Le()).asMutable();e.__iterate(function(i,a){o.update(t.call(n,i,a,e),function(e){return e=e||[],e.push(r?[a,i]:i),e})});var i=Ne(e);return o.map(function(t){return Ie(e,i(t))})}function ye(e,t,n,r){var o=e.size;if(void 0!==t&&(t=0|t),void 0!==n&&(n=0|n),u(t,n,o))return e;var i=c(t,o),s=l(n,o);if(i!==i||s!==s)return ye(e.toSeq().cacheResult(),t,n,r);var p,f=s-i;f===f&&(p=0>f?0:f);var d=Me(e);return d.size=0===p?p:e.size&&p||void 0,!r&&L(e)&&p>=0&&(d.get=function(t,n){return t=a(this,t),t>=0&&p>t?e.get(t+i,n):n}),d.__iterateUncached=function(t,n){var o=this;if(0===p)return 0;if(n)return this.cacheResult().__iterate(t,n);var a=0,s=!0,u=0;return e.__iterate(function(e,n){return s&&(s=a++p)return R();var e=o.next();return r||t===bn?e:t===_n?E(t,s-1,void 0,e):E(t,s-1,e.value[1],e)})},d}function _e(e,t,n){var r=Me(e);return r.__iterateUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterate(r,o);var a=0;return e.__iterate(function(e,o,s){return t.call(n,e,o,s)&&++a&&r(e,o,i)}),a},r.__iteratorUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterator(r,o);var a=e.__iterator(Sn,o),s=!0;return new S(function(){if(!s)return R();var e=a.next();if(e.done)return e;var o=e.value,u=o[0],c=o[1];return t.call(n,c,u,i)?r===Sn?e:E(r,u,c,e):(s=!1,R())})},r}function be(e,t,n,r){var o=Me(e);return o.__iterateUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterate(o,i);var s=!0,u=0;return e.__iterate(function(e,i,c){return s&&(s=t.call(n,e,i,c))?void 0:(u++,o(e,r?i:u-1,a))}),u},o.__iteratorUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterator(o,i);var s=e.__iterator(Sn,i),u=!0,c=0;return new S(function(){var e,i,l;do{if(e=s.next(),e.done)return r||o===bn?e:o===_n?E(o,c++,void 0,e):E(o,c++,e.value[1],e);var p=e.value;i=p[0],l=p[1],u&&(u=t.call(n,l,i,a))}while(u);return o===Sn?e:E(o,i,l,e)})},o}function Se(e,t){var n=g(e),r=[e].concat(t).map(function(e){return v(e)?n&&(e=d(e)):e=n?F(e):B(Array.isArray(e)?e:[e]),e}).filter(function(e){return 0!==e.size});if(0===r.length)return e;if(1===r.length){var o=r[0];if(o===e||n&&g(o)||y(e)&&y(o))return o}var i=new M(r);return n?i=i.toKeyedSeq():y(e)||(i=i.toSetSeq()),i=i.flatten(!0),i.size=r.reduce(function(e,t){if(void 0!==e){var n=t.size;if(void 0!==n)return e+n}},0),i}function Ee(e,t,n){var r=Me(e);return r.__iterateUncached=function(r,o){function i(e,u){var c=this;e.__iterate(function(e,o){return(!t||t>u)&&v(e)?i(e,u+1):r(e,n?o:a++,c)===!1&&(s=!0),!s},o)}var a=0,s=!1;return i(e,0),a},r.__iteratorUncached=function(r,o){var i=e.__iterator(r,o),a=[],s=0;return new S(function(){for(;i;){var e=i.next();if(e.done===!1){var u=e.value;if(r===Sn&&(u=u[1]),t&&!(a.length0}function Oe(e,t,n){var r=Me(e);return r.size=new M(n).map(function(e){return e.size}).min(),r.__iterate=function(e,t){for(var n,r=this.__iterator(bn,t),o=0;!(n=r.next()).done&&e(n.value,o++,this)!==!1;);return o},r.__iteratorUncached=function(e,r){var o=n.map(function(e){return e=f(e),w(r?e.reverse():e)}),i=0,a=!1;return new S(function(){var n;return a||(n=o.map(function(e){return e.next()}),a=n.some(function(e){return e.done})),a?R():E(e,i++,t.apply(null,n.map(function(e){return e.value})))})},r}function Ie(e,t){return L(e)?t:e.constructor(t)}function Pe(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function De(e){return se(e.size),i(e)}function Ne(e){return g(e)?d:y(e)?h:m}function Me(e){return Object.create((g(e)?P:y(e)?D:N).prototype)}function Ae(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):I.prototype.cacheResult.call(this)}function ke(e,t){return e>t?1:t>e?-1:0}function je(e){var t=w(e);if(!t){if(!O(e))throw new TypeError("Expected iterable or array-like: "+e);t=w(f(e))}return t}function Le(e){return null===e||void 0===e?Ke():Ve(e)&&!b(e)?e:Ke().withMutations(function(t){var n=d(e);se(n.size),n.forEach(function(e,n){return t.set(n,e)})})}function Ve(e){return!(!e||!e[Vn])}function Fe(e,t){this.ownerID=e,this.entries=t}function Be(e,t,n){this.ownerID=e,this.bitmap=t,this.nodes=n}function Ue(e,t,n){this.ownerID=e,this.count=t,this.nodes=n}function He(e,t,n){this.ownerID=e,this.keyHash=t,this.entries=n}function qe(e,t,n){this.ownerID=e,this.keyHash=t,this.entry=n}function ze(e,t,n){this._type=t,this._reverse=n,this._stack=e._root&&We(e._root)}function Ge(e,t){return E(e,t[0],t[1])}function We(e,t){return{node:e,index:0,__prev:t}}function Ye(e,t,n,r){var o=Object.create(Fn);return o.size=e,o._root=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Ke(){return Bn||(Bn=Ye(0))}function Ze(e,n,r){var o,i;if(e._root){var a=t(dn),s=t(hn);if(o=Xe(e._root,e.__ownerID,0,void 0,n,r,a,s),!s.value)return e;i=e.size+(a.value?r===fn?-1:1:0)}else{if(r===fn)return e;i=1,o=new Fe(e.__ownerID,[[n,r]])}return e.__ownerID?(e.size=i,e._root=o,e.__hash=void 0,e.__altered=!0,e):o?Ye(i,o):Ke()}function Xe(e,t,r,o,i,a,s,u){return e?e.update(t,r,o,i,a,s,u):a===fn?e:(n(u),n(s),new qe(t,o,[i,a]))}function Je(e){return e.constructor===qe||e.constructor===He}function Qe(e,t,n,r,o){if(e.keyHash===r)return new He(t,r,[e.entry,o]);var i,a=(0===n?e.keyHash:e.keyHash>>>n)&pn,s=(0===n?r:r>>>n)&pn,u=a===s?[Qe(e,t,n+cn,r,o)]:(i=new qe(t,r,o),s>a?[e,i]:[i,e]);return new Be(t,1<s;s++,u<<=1){var l=t[s];void 0!==l&&s!==r&&(o|=u,a[i++]=l)}return new Be(e,o,a)}function tt(e,t,n,r,o){for(var i=0,a=new Array(ln),s=0;0!==n;s++,n>>>=1)a[s]=1&n?t[i++]:void 0;return a[r]=o,new Ue(e,i+1,a)}function nt(e,t,n){for(var r=[],o=0;o>1&1431655765,e=(858993459&e)+(e>>2&858993459),e=e+(e>>4)&252645135,e+=e>>8,e+=e>>16,127&e}function st(e,t,n,r){var i=r?e:o(e);return i[t]=n,i}function ut(e,t,n,r){var o=e.length+1;if(r&&t+1===o)return e[t]=n,e;for(var i=new Array(o),a=0,s=0;o>s;s++)s===t?(i[s]=n,a=-1):i[s]=e[s+a];return i}function ct(e,t,n){var r=e.length-1;if(n&&t===r)return e.pop(),e;for(var o=new Array(r),i=0,a=0;r>a;a++)a===t&&(i=1),o[a]=e[a+i];return o}function lt(e){var t=mt();if(null===e||void 0===e)return t;if(pt(e))return e;var n=h(e),r=n.size;return 0===r?t:(se(r),r>0&&ln>r?ht(0,r,cn,null,new ft(n.toArray())):t.withMutations(function(e){e.setSize(r),n.forEach(function(t,n){return e.set(n,t)})}))}function pt(e){return!(!e||!e[zn])}function ft(e,t){this.array=e,this.ownerID=t}function dt(e,t){function n(e,t,n){return 0===t?r(e,n):o(e,t,n)}function r(e,n){var r=n===s?u&&u.array:e&&e.array,o=n>i?0:i-n,c=a-n;return c>ln&&(c=ln),function(){if(o===c)return Yn;var e=t?--c:o++;return r&&r[e]}}function o(e,r,o){var s,u=e&&e.array,c=o>i?0:i-o>>r,l=(a-o>>r)+1;return l>ln&&(l=ln),function(){for(;;){if(s){var e=s();if(e!==Yn)return e;s=null}if(c===l)return Yn;var i=t?--l:c++;s=n(u&&u[i],r-cn,o+(i<=e.size||0>n)return e.withMutations(function(e){0>n?bt(e,n).set(0,r):bt(e,0,n+1).set(n,r)});n+=e._origin;var o=e._tail,i=e._root,s=t(hn);return n>=Et(e._capacity)?o=gt(o,e.__ownerID,0,n,r,s):i=gt(i,e.__ownerID,e._level,n,r,s),s.value?e.__ownerID?(e._root=i,e._tail=o,e.__hash=void 0,e.__altered=!0,e):ht(e._origin,e._capacity,e._level,i,o):e}function gt(e,t,r,o,i,a){var s=o>>>r&pn,u=e&&s0){var l=e&&e.array[s],p=gt(l,t,r-cn,o,i,a);return p===l?e:(c=yt(e,t),c.array[s]=p,c)}return u&&e.array[s]===i?e:(n(a),c=yt(e,t),void 0===i&&s===c.array.length-1?c.array.pop():c.array[s]=i,c)}function yt(e,t){return t&&e&&t===e.ownerID?e:new ft(e?e.array.slice():[],t)}function _t(e,t){if(t>=Et(e._capacity))return e._tail;if(t<1<0;)n=n.array[t>>>r&pn],r-=cn;return n}}function bt(e,t,n){void 0!==t&&(t=0|t),void 0!==n&&(n=0|n);var o=e.__ownerID||new r,i=e._origin,a=e._capacity,s=i+t,u=void 0===n?a:0>n?a+n:i+n;if(s===i&&u===a)return e;if(s>=u)return e.clear();for(var c=e._level,l=e._root,p=0;0>s+p;)l=new ft(l&&l.array.length?[void 0,l]:[],o),c+=cn,p+=1<=1<d?_t(e,u-1):d>f?new ft([],o):h;if(h&&d>f&&a>s&&h.array.length){l=yt(l,o);for(var v=l,g=c;g>cn;g-=cn){var y=f>>>g&pn;v=v.array[y]=yt(v.array[y],o)}v.array[f>>>cn&pn]=h}if(a>u&&(m=m&&m.removeAfter(o,0,u)),s>=d)s-=d,u-=d,c=cn,l=null,m=m&&m.removeBefore(o,0,s);else if(s>i||f>d){for(p=0;l;){var _=s>>>c&pn;if(_!==d>>>c&pn)break;_&&(p+=(1<i&&(l=l.removeBefore(o,c,s-p)),l&&f>d&&(l=l.removeAfter(o,c,d-p)),p&&(s-=p,u-=p)}return e.__ownerID?(e.size=u-s,e._origin=s,e._capacity=u,e._level=c,e._root=l,e._tail=m,e.__hash=void 0,e.__altered=!0,e):ht(s,u,c,l,m)}function St(e,t,n){for(var r=[],o=0,i=0;io&&(o=s.size),v(a)||(s=s.map(function(e){return X(e)})),r.push(s)}return o>e.size&&(e=e.setSize(o)),ot(e,t,r)}function Et(e){return ln>e?0:e-1>>>cn<=ln&&a.size>=2*i.size?(o=a.filter(function(e,t){return void 0!==e&&s!==t}),r=o.toKeyedSeq().map(function(e){return e[0]}).flip().toMap(),e.__ownerID&&(r.__ownerID=o.__ownerID=e.__ownerID)):(r=i.remove(t),o=s===a.size-1?a.pop():a.set(s,void 0))}else if(u){if(n===a.get(s)[1])return e;r=i,o=a.set(s,[t,n])}else r=i.set(t,a.size),o=a.set(a.size,[t,n]);return e.__ownerID?(e.size=r.size,e._map=r,e._list=o,e.__hash=void 0,e):xt(r,o)}function Ot(e){return null===e||void 0===e?Dt():It(e)?e:Dt().unshiftAll(e)}function It(e){return!(!e||!e[Zn])}function Pt(e,t,n,r){var o=Object.create(Xn);return o.size=e,o._head=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Dt(){return Jn||(Jn=Pt(0))}function Nt(e){return null===e||void 0===e?jt():Mt(e)&&!b(e)?e:jt().withMutations(function(t){var n=m(e);se(n.size),n.forEach(function(e){return t.add(e)})})}function Mt(e){return!(!e||!e[Qn])}function At(e,t){return e.__ownerID?(e.size=t.size,e._map=t,e):t===e._map?e:0===t.size?e.__empty():e.__make(t)}function kt(e,t){var n=Object.create($n);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function jt(){return er||(er=kt(Ke()))}function Lt(e){return null===e||void 0===e?Bt():Vt(e)?e:Bt().withMutations(function(t){var n=m(e);se(n.size),n.forEach(function(e){return t.add(e)})})}function Vt(e){return Mt(e)&&b(e)}function Ft(e,t){var n=Object.create(tr);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Bt(){return nr||(nr=Ft(wt()))}function Ut(e,t){var n,r=function(i){if(i instanceof r)return i;if(!(this instanceof r))return new r(i);if(!n){n=!0;var a=Object.keys(e);zt(o,a),o.size=a.length,o._name=t,o._keys=a,o._defaultValues=e}this._map=Le(i)},o=r.prototype=Object.create(rr);return o.constructor=r,r}function Ht(e,t,n){var r=Object.create(Object.getPrototypeOf(e));return r._map=t,r.__ownerID=n,r}function qt(e){return e._name||e.constructor.name||"Record"}function zt(e,t){try{t.forEach(Gt.bind(void 0,e))}catch(n){}}function Gt(e,t){Object.defineProperty(e,t,{get:function(){return this.get(t)},set:function(e){ae(this.__ownerID,"Cannot set on an immutable record."),this.set(t,e)}})}function Wt(e,t){if(e===t)return!0;if(!v(t)||void 0!==e.size&&void 0!==t.size&&e.size!==t.size||void 0!==e.__hash&&void 0!==t.__hash&&e.__hash!==t.__hash||g(e)!==g(t)||y(e)!==y(t)||b(e)!==b(t))return!1;if(0===e.size&&0===t.size)return!0;var n=!_(e);if(b(e)){var r=e.entries();return t.every(function(e,t){var o=r.next().value;return o&&Z(o[1],e)&&(n||Z(o[0],t))})&&r.next().done}var o=!1;if(void 0===e.size)if(void 0===t.size)"function"==typeof e.cacheResult&&e.cacheResult();else{o=!0;var i=e;e=t,t=i}var a=!0,s=t.__iterate(function(t,r){return(n?e.has(t):o?Z(t,e.get(r,fn)):Z(e.get(r,fn),t))?void 0:(a=!1,!1)});return a&&e.size===s}function Yt(e,t,n){if(!(this instanceof Yt))return new Yt(e,t,n);if(ae(0!==n,"Cannot step a Range by 0"),e=e||0,void 0===t&&(t=1/0),n=void 0===n?1:Math.abs(n),e>t&&(n=-n),this._start=e,this._end=t,this._step=n,this.size=Math.max(0,Math.ceil((t-e)/n-1)+1),0===this.size){if(or)return or;or=this}}function Kt(e,t){if(!(this instanceof Kt))return new Kt(e,t);if(this._value=e,this.size=void 0===t?1/0:Math.max(0,t),0===this.size){if(ir)return ir;ir=this}}function Zt(e,t){var n=function(n){e.prototype[n]=t[n]};return Object.keys(t).forEach(n),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(t).forEach(n),e}function Xt(e,t){return t}function Jt(e,t){return[t,e]}function Qt(e){return function(){return!e.apply(this,arguments)}}function $t(e){return function(){return-e.apply(this,arguments)}}function en(e){return"string"==typeof e?JSON.stringify(e):e}function tn(){return o(arguments)}function nn(e,t){return t>e?1:e>t?-1:0}function rn(e){if(e.size===1/0)return 0;var t=b(e),n=g(e),r=t?1:0,o=e.__iterate(n?t?function(e,t){r=31*r+an(te(e),te(t))|0}:function(e,t){r=r+an(te(e),te(t))|0}:t?function(e){r=31*r+te(e)|0}:function(e){r=r+te(e)|0});return on(o,r)}function on(e,t){return t=On(t,3432918353),t=On(t<<15|t>>>-15,461845907),t=On(t<<13|t>>>-13,5),t=(t+3864292196|0)^e,t=On(t^t>>>16,2246822507),t=On(t^t>>>13,3266489909),t=ee(t^t>>>16)}function an(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}var sn=Array.prototype.slice,un="delete",cn=5,ln=1<=o;o++)if(e(n[t?r-o:o],o,this)===!1)return o+1;return o},M.prototype.__iterator=function(e,t){var n=this._array,r=n.length-1,o=0;return new S(function(){return o>r?R():E(e,o,n[t?r-o++:o++])})},e(A,P),A.prototype.get=function(e,t){return void 0===t||this.has(e)?this._object[e]:t},A.prototype.has=function(e){return this._object.hasOwnProperty(e)},A.prototype.__iterate=function(e,t){for(var n=this._object,r=this._keys,o=r.length-1,i=0;o>=i;i++){var a=r[t?o-i:i];if(e(n[a],a,this)===!1)return i+1}return i},A.prototype.__iterator=function(e,t){var n=this._object,r=this._keys,o=r.length-1,i=0;return new S(function(){var a=r[t?o-i:i];return i++>o?R():E(e,a,n[a])})},A.prototype[yn]=!0,e(k,D),k.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);var n=this._iterable,r=w(n),o=0;if(x(r))for(var i;!(i=r.next()).done&&e(i.value,o++,this)!==!1;);return o},k.prototype.__iteratorUncached=function(e,t){if(t)return this.cacheResult().__iterator(e,t);var n=this._iterable,r=w(n);if(!x(r))return new S(R);var o=0;return new S(function(){var t=r.next();return t.done?t:E(e,o++,t.value)})},e(j,D),j.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);for(var n=this._iterator,r=this._iteratorCache,o=0;o=r.length){var t=n.next();if(t.done)return t;r[o]=t.value}return E(e,o,r[o++])})};var wn;e(G,f),e(W,G),e(Y,G),e(K,G),G.Keyed=W,G.Indexed=Y,G.Set=K;var Cn,On="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(e,t){e=0|e,t=0|t;var n=65535&e,r=65535&t;return n*r+((e>>>16)*r+n*(t>>>16)<<16>>>0)|0},In=Object.isExtensible,Pn=function(){try{return Object.defineProperty({},"@",{}),!0}catch(e){return!1}}(),Dn="function"==typeof WeakMap;Dn&&(Cn=new WeakMap);var Nn=0,Mn="__immutablehash__";"function"==typeof Symbol&&(Mn=Symbol(Mn));var An=16,kn=255,jn=0,Ln={};e(ue,P),ue.prototype.get=function(e,t){return this._iter.get(e,t)},ue.prototype.has=function(e){return this._iter.has(e)},ue.prototype.valueSeq=function(){return this._iter.valueSeq()},ue.prototype.reverse=function(){var e=this,t=he(this,!0);return this._useKeys||(t.valueSeq=function(){return e._iter.toSeq().reverse()}),t},ue.prototype.map=function(e,t){var n=this,r=de(this,e,t);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(e,t)}),r},ue.prototype.__iterate=function(e,t){var n,r=this;return this._iter.__iterate(this._useKeys?function(t,n){return e(t,n,r)}:(n=t?De(this):0,function(o){return e(o,t?--n:n++,r)}),t)},ue.prototype.__iterator=function(e,t){if(this._useKeys)return this._iter.__iterator(e,t);var n=this._iter.__iterator(bn,t),r=t?De(this):0;return new S(function(){var o=n.next();return o.done?o:E(e,t?--r:r++,o.value,o)})},ue.prototype[yn]=!0,e(ce,D),ce.prototype.includes=function(e){return this._iter.includes(e)},ce.prototype.__iterate=function(e,t){var n=this,r=0;return this._iter.__iterate(function(t){return e(t,r++,n)},t)},ce.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t),r=0;return new S(function(){var t=n.next();return t.done?t:E(e,r++,t.value,t)})},e(le,N),le.prototype.has=function(e){return this._iter.includes(e)},le.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){return e(t,t,n)},t)},le.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t);return new S(function(){var t=n.next();return t.done?t:E(e,t.value,t.value,t)})},e(pe,P),pe.prototype.entrySeq=function(){return this._iter.toSeq()},pe.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){if(t){Pe(t);var r=v(t);return e(r?t.get(1):t[1],r?t.get(0):t[0],n)}},t)},pe.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t);return new S(function(){for(;;){var t=n.next();if(t.done)return t;var r=t.value;if(r){Pe(r);var o=v(r);return E(e,o?r.get(0):r[0],o?r.get(1):r[1],t)}}})},ce.prototype.cacheResult=ue.prototype.cacheResult=le.prototype.cacheResult=pe.prototype.cacheResult=Ae,e(Le,W),Le.prototype.toString=function(){return this.__toString("Map {","}")},Le.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},Le.prototype.set=function(e,t){return Ze(this,e,t)},Le.prototype.setIn=function(e,t){return this.updateIn(e,fn,function(){return t})},Le.prototype.remove=function(e){return Ze(this,e,fn)},Le.prototype.deleteIn=function(e){return this.updateIn(e,function(){return fn})},Le.prototype.update=function(e,t,n){return 1===arguments.length?e(this):this.updateIn([e],t,n)},Le.prototype.updateIn=function(e,t,n){n||(n=t,t=void 0);var r=it(this,je(e),t,n);return r===fn?void 0:r},Le.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Ke()},Le.prototype.merge=function(){return nt(this,void 0,arguments)},Le.prototype.mergeWith=function(e){var t=sn.call(arguments,1);return nt(this,e,t)},Le.prototype.mergeIn=function(e){var t=sn.call(arguments,1);return this.updateIn(e,Ke(),function(e){return"function"==typeof e.merge?e.merge.apply(e,t):t[t.length-1]})},Le.prototype.mergeDeep=function(){return nt(this,rt(void 0),arguments)},Le.prototype.mergeDeepWith=function(e){var t=sn.call(arguments,1);return nt(this,rt(e),t)},Le.prototype.mergeDeepIn=function(e){var t=sn.call(arguments,1);return this.updateIn(e,Ke(),function(e){return"function"==typeof e.mergeDeep?e.mergeDeep.apply(e,t):t[t.length-1]})},Le.prototype.sort=function(e){return Rt(xe(this,e))},Le.prototype.sortBy=function(e,t){return Rt(xe(this,t,e))},Le.prototype.withMutations=function(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this},Le.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new r)},Le.prototype.asImmutable=function(){return this.__ensureOwner()},Le.prototype.wasAltered=function(){return this.__altered},Le.prototype.__iterator=function(e,t){return new ze(this,e,t)},Le.prototype.__iterate=function(e,t){var n=this,r=0;return this._root&&this._root.iterate(function(t){return r++,e(t[1],t[0],n)},t),r},Le.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Ye(this.size,this._root,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},Le.isMap=Ve;var Vn="@@__IMMUTABLE_MAP__@@",Fn=Le.prototype;Fn[Vn]=!0,Fn[un]=Fn.remove,Fn.removeIn=Fn.deleteIn,Fe.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(Z(n,o[i][0]))return o[i][1];return r},Fe.prototype.update=function(e,t,r,i,a,s,u){for(var c=a===fn,l=this.entries,p=0,f=l.length;f>p&&!Z(i,l[p][0]);p++);var d=f>p;if(d?l[p][1]===a:c)return this;if(n(u),(c||!d)&&n(s),!c||1!==l.length){if(!d&&!c&&l.length>=Un)return $e(e,l,i,a);var h=e&&e===this.ownerID,m=h?l:o(l);return d?c?p===f-1?m.pop():m[p]=m.pop():m[p]=[i,a]:m.push([i,a]),h?(this.entries=m,this):new Fe(e,m)}},Be.prototype.get=function(e,t,n,r){void 0===t&&(t=te(n));var o=1<<((0===e?t:t>>>e)&pn),i=this.bitmap;return 0===(i&o)?r:this.nodes[at(i&o-1)].get(e+cn,t,n,r)},Be.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=te(r));var s=(0===t?n:n>>>t)&pn,u=1<=Hn)return tt(e,f,c,s,h);if(l&&!h&&2===f.length&&Je(f[1^p]))return f[1^p];if(l&&h&&1===f.length&&Je(h))return h;var m=e&&e===this.ownerID,v=l?h?c:c^u:c|u,g=l?h?st(f,p,h,m):ct(f,p,m):ut(f,p,h,m);return m?(this.bitmap=v,this.nodes=g,this):new Be(e,v,g)},Ue.prototype.get=function(e,t,n,r){void 0===t&&(t=te(n));var o=(0===e?t:t>>>e)&pn,i=this.nodes[o];return i?i.get(e+cn,t,n,r):r},Ue.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=te(r));var s=(0===t?n:n>>>t)&pn,u=o===fn,c=this.nodes,l=c[s];if(u&&!l)return this;var p=Xe(l,e,t+cn,n,r,o,i,a);if(p===l)return this;var f=this.count;if(l){if(!p&&(f--,qn>f))return et(e,c,f,s)}else f++;var d=e&&e===this.ownerID,h=st(c,s,p,d);return d?(this.count=f,this.nodes=h,this):new Ue(e,f,h)},He.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(Z(n,o[i][0]))return o[i][1];return r},He.prototype.update=function(e,t,r,i,a,s,u){void 0===r&&(r=te(i));var c=a===fn;if(r!==this.keyHash)return c?this:(n(u),n(s),Qe(this,e,t,r,[i,a]));for(var l=this.entries,p=0,f=l.length;f>p&&!Z(i,l[p][0]);p++);var d=f>p;if(d?l[p][1]===a:c)return this;if(n(u),(c||!d)&&n(s),c&&2===f)return new qe(e,this.keyHash,l[1^p]);var h=e&&e===this.ownerID,m=h?l:o(l);return d?c?p===f-1?m.pop():m[p]=m.pop():m[p]=[i,a]:m.push([i,a]),h?(this.entries=m,this):new He(e,this.keyHash,m)},qe.prototype.get=function(e,t,n,r){return Z(n,this.entry[0])?this.entry[1]:r},qe.prototype.update=function(e,t,r,o,i,a,s){var u=i===fn,c=Z(o,this.entry[0]);return(c?i===this.entry[1]:u)?this:(n(s),u?void n(a):c?e&&e===this.ownerID?(this.entry[1]=i,this):new qe(e,this.keyHash,[o,i]):(n(a),Qe(this,e,t,te(o),[o,i])))},Fe.prototype.iterate=He.prototype.iterate=function(e,t){for(var n=this.entries,r=0,o=n.length-1;o>=r;r++)if(e(n[t?o-r:r])===!1)return!1},Be.prototype.iterate=Ue.prototype.iterate=function(e,t){for(var n=this.nodes,r=0,o=n.length-1;o>=r;r++){var i=n[t?o-r:r];if(i&&i.iterate(e,t)===!1)return!1}},qe.prototype.iterate=function(e,t){return e(this.entry)},e(ze,S),ze.prototype.next=function(){for(var e=this._type,t=this._stack;t;){var n,r=t.node,o=t.index++;if(r.entry){if(0===o)return Ge(e,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=o)return Ge(e,r.entries[this._reverse?n-o:o])}else if(n=r.nodes.length-1,n>=o){var i=r.nodes[this._reverse?n-o:o];if(i){if(i.entry)return Ge(e,i.entry);t=this._stack=We(i,t)}continue}t=this._stack=this._stack.__prev}return R()};var Bn,Un=ln/4,Hn=ln/2,qn=ln/4;e(lt,Y),lt.of=function(){return this(arguments)},lt.prototype.toString=function(){return this.__toString("List [","]")},lt.prototype.get=function(e,t){if(e=a(this,e),e>=0&&e>>t&pn;if(r>=this.array.length)return new ft([],e);var o,i=0===r;if(t>0){var a=this.array[r];if(o=a&&a.removeBefore(e,t-cn,n),o===a&&i)return this}if(i&&!o)return this;var s=yt(this,e);if(!i)for(var u=0;r>u;u++)s.array[u]=void 0;return o&&(s.array[r]=o),s},ft.prototype.removeAfter=function(e,t,n){if(n===(t?1<>>t&pn;if(r>=this.array.length)return this;var o;if(t>0){var i=this.array[r];if(o=i&&i.removeAfter(e,t-cn,n),o===i&&r===this.array.length-1)return this}var a=yt(this,e);return a.array.splice(r+1),o&&(a.array[r]=o),a};var Wn,Yn={};e(Rt,Le),Rt.of=function(){return this(arguments)},Rt.prototype.toString=function(){return this.__toString("OrderedMap {","}")},Rt.prototype.get=function(e,t){var n=this._map.get(e);return void 0!==n?this._list.get(n)[1]:t},Rt.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):wt()},Rt.prototype.set=function(e,t){return Ct(this,e,t)},Rt.prototype.remove=function(e){return Ct(this,e,fn)},Rt.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},Rt.prototype.__iterate=function(e,t){var n=this;return this._list.__iterate(function(t){return t&&e(t[1],t[0],n)},t)},Rt.prototype.__iterator=function(e,t){return this._list.fromEntrySeq().__iterator(e,t)},Rt.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map.__ensureOwner(e),n=this._list.__ensureOwner(e);return e?xt(t,n,e,this.__hash):(this.__ownerID=e,this._map=t,this._list=n,this)},Rt.isOrderedMap=Tt,Rt.prototype[yn]=!0,Rt.prototype[un]=Rt.prototype.remove;var Kn;e(Ot,Y),Ot.of=function(){return this(arguments)},Ot.prototype.toString=function(){return this.__toString("Stack [","]")},Ot.prototype.get=function(e,t){var n=this._head;for(e=a(this,e);n&&e--;)n=n.next;return n?n.value:t},Ot.prototype.peek=function(){return this._head&&this._head.value},Ot.prototype.push=function(){if(0===arguments.length)return this;for(var e=this.size+arguments.length,t=this._head,n=arguments.length-1;n>=0;n--)t={value:arguments[n],next:t};return this.__ownerID?(this.size=e,this._head=t,this.__hash=void 0,this.__altered=!0,this):Pt(e,t)},Ot.prototype.pushAll=function(e){if(e=h(e),0===e.size)return this;se(e.size);var t=this.size,n=this._head;return e.reverse().forEach(function(e){t++,n={value:e,next:n}}),this.__ownerID?(this.size=t,this._head=n,this.__hash=void 0,this.__altered=!0,this):Pt(t,n)},Ot.prototype.pop=function(){return this.slice(1)},Ot.prototype.unshift=function(){return this.push.apply(this,arguments)},Ot.prototype.unshiftAll=function(e){return this.pushAll(e)},Ot.prototype.shift=function(){return this.pop.apply(this,arguments)},Ot.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Dt()},Ot.prototype.slice=function(e,t){if(u(e,t,this.size))return this;var n=c(e,this.size),r=l(t,this.size);if(r!==this.size)return Y.prototype.slice.call(this,e,t);for(var o=this.size-n,i=this._head;n--;)i=i.next;return this.__ownerID?(this.size=o,this._head=i,this.__hash=void 0,this.__altered=!0,this):Pt(o,i)},Ot.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Pt(this.size,this._head,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},Ot.prototype.__iterate=function(e,t){if(t)return this.reverse().__iterate(e);for(var n=0,r=this._head;r&&e(r.value,n++,this)!==!1;)r=r.next;return n},Ot.prototype.__iterator=function(e,t){if(t)return this.reverse().__iterator(e);var n=0,r=this._head;return new S(function(){if(r){var t=r.value;return r=r.next,E(e,n++,t)}return R()})},Ot.isStack=It;var Zn="@@__IMMUTABLE_STACK__@@",Xn=Ot.prototype;Xn[Zn]=!0,Xn.withMutations=Fn.withMutations,Xn.asMutable=Fn.asMutable,Xn.asImmutable=Fn.asImmutable,Xn.wasAltered=Fn.wasAltered;var Jn;e(Nt,K),Nt.of=function(){return this(arguments)},Nt.fromKeys=function(e){return this(d(e).keySeq())},Nt.prototype.toString=function(){return this.__toString("Set {","}")},Nt.prototype.has=function(e){return this._map.has(e)},Nt.prototype.add=function(e){return At(this,this._map.set(e,!0))},Nt.prototype.remove=function(e){return At(this,this._map.remove(e))},Nt.prototype.clear=function(){return At(this,this._map.clear())},Nt.prototype.union=function(){var e=sn.call(arguments,0);return e=e.filter(function(e){return 0!==e.size}),0===e.length?this:0!==this.size||this.__ownerID||1!==e.length?this.withMutations(function(t){for(var n=0;n1?" by "+this._step:"")+" ]"},Yt.prototype.get=function(e,t){return this.has(e)?this._start+a(this,e)*this._step:t},Yt.prototype.includes=function(e){var t=(e-this._start)/this._step;return t>=0&&t=t?new Yt(0,0):new Yt(this.get(e,this._end),this.get(t,this._end),this._step))},Yt.prototype.indexOf=function(e){var t=e-this._start;if(t%this._step===0){var n=t/this._step;if(n>=0&&n=i;i++){if(e(o,i,this)===!1)return i+1;o+=t?-r:r}return i},Yt.prototype.__iterator=function(e,t){var n=this.size-1,r=this._step,o=t?this._start+n*r:this._start,i=0;return new S(function(){var a=o;return o+=t?-r:r,i>n?R():E(e,i++,a)})},Yt.prototype.equals=function(e){return e instanceof Yt?this._start===e._start&&this._end===e._end&&this._step===e._step:Wt(this,e)};var or;e(Kt,D),Kt.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Kt.prototype.get=function(e,t){return this.has(e)?this._value:t},Kt.prototype.includes=function(e){return Z(this._value,e)},Kt.prototype.slice=function(e,t){var n=this.size;return u(e,t,n)?this:new Kt(this._value,l(t,n)-c(e,n))},Kt.prototype.reverse=function(){return this},Kt.prototype.indexOf=function(e){return Z(this._value,e)?0:-1},Kt.prototype.lastIndexOf=function(e){return Z(this._value,e)?this.size:-1},Kt.prototype.__iterate=function(e,t){for(var n=0;ne?this.count():this.size);var r=this.slice(0,e);return Ie(this,1===n?r:r.concat(o(arguments,2),this.slice(e+t)))},findLastIndex:function(e,t){var n=this.toKeyedSeq().findLastKey(e,t);return void 0===n?-1:n},first:function(){return this.get(0)},flatten:function(e){return Ie(this,Ee(this,e,!1))},get:function(e,t){return e=a(this,e),0>e||this.size===1/0||void 0!==this.size&&e>this.size?t:this.find(function(t,n){return n===e},void 0,t)},has:function(e){return e=a(this,e),e>=0&&(void 0!==this.size?this.size===1/0||en?e:1-e,a=t-n,s=t-r;o=a>0&&0===s||s>0&&0===a?this.props.navigationStyles.Interpolators.RightToCenter:0>a&&0===s||0>s&&0===a?this.props.navigationStyles.Interpolators.CenterToLeft:a===s?this.props.navigationStyles.Interpolators.RightToCenter:this.props.navigationStyles.Interpolators.RightToLeft,f.forEach(function(e){var n=this._components[e].get(this.props.navState.routeStack[t]),r=this._getReusableProps(e,t);n&&o[e](r.style,i)&&n.setNativeProps(r)},this)},updateProgress:function(e,t,n){for(var r=Math.max(t,n),o=Math.min(t,n),i=o;r>=i;i++)this._updateIndexProgress(e,i,t,n)},render:function(){var e={height:this.props.navigationStyles.General.TotalNavHeight},t=this.props.navState,n=f.map(function(e){return t.routeStack.map(this._getComponent.bind(this,e))},this);return o.createElement(c,{style:[v.navBarContainer,e,this.props.style]},n)},_getComponent:function(e,t,n){var r=this;if(this._descriptors[e].includes(t))return this._descriptors[e].get(t);var i=null,a=this.props.routeMapper[e](this.props.navState.routeStack[n],this.props.navigator,n,this.props.navState);if(!a)return null;var s=n===h(this.props.navState)?this.props.navigationStyles.Stages.Center:this.props.navigationStyles.Stages.Left;return i=o.createElement(c,{ref:function(n){r._components[e]=r._components[e].set(t,n)},style:s[e]},a),this._descriptors[e]=this._descriptors[e].set(t,i),i}}),v=u.create({navBarContainer:{position:"absolute",top:0,left:0,right:0,backgroundColor:"transparent"}});n.exports=m}),__d("StaticContainer.react",["React","onlyChild"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;nt&&(a+=r&&n?u.currentPageX:r&&!n?u.currentPageY:!r&&n?u.previousPageX:u.previousPageY,s=1);else for(var c=0;c=t){var p;p=r&&n?l.currentPageX:r&&!n?l.currentPageY:!r&&n?l.previousPageX:l.previousPageY,a+=p,s++}}return s>0?a/s:o.noCentroid},currentCentroidXOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!0,!0)},currentCentroidYOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!1,!0)},previousCentroidXOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!0,!1)},previousCentroidYOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!1,!1)},currentCentroidX:function(e){return o.centroidDimension(e,0,!0,!0)},currentCentroidY:function(e){return o.centroidDimension(e,0,!1,!0)},noCentroid:-1};n.exports=o}),__d("clamp",[],function(e,t,n,r){function o(e,t,n){return e>t?e:t>n?n:t}n.exports=o}),__d("rebound/rebound.js",[],function(e,t,n,r){!function(){function e(e,t){var n=e.indexOf(t);-1!=n&&e.splice(n,1)}var t={},n=t.util={},o=Array.prototype.concat,i=Array.prototype.slice;n.bind=function(e,t){var n=i.call(arguments,2);return function(){e.apply(t,o.call(n,i.call(arguments)))}},n.extend=function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};var a=t.SpringSystem=function(e){this._springRegistry={},this._activeSprings=[],this.listeners=[],this._idleSpringIndices=[],this.looper=e||new l,this.looper.springSystem=this};n.extend(a.prototype,{_springRegistry:null,_isIdle:!0,_lastTimeMillis:-1,_activeSprings:null,listeners:null,_idleSpringIndices:null,setLooper:function(e){this.looper=e,e.springSystem=this},createSpring:function(e,t){var n;return n=void 0===e||void 0===t?c.DEFAULT_ORIGAMI_SPRING_CONFIG:c.fromOrigamiTensionAndFriction(e,t),this.createSpringWithConfig(n)},createSpringWithBouncinessAndSpeed:function(e,t){var n;return n=void 0===e||void 0===t?c.DEFAULT_ORIGAMI_SPRING_CONFIG:c.fromBouncinessAndSpeed(e,t),this.createSpringWithConfig(n)},createSpringWithConfig:function(e){var t=new s(this);return this.registerSpring(t),t.setSpringConfig(e),t},getIsIdle:function(){return this._isIdle},getSpringById:function(e){return this._springRegistry[e]},getAllSprings:function(){var e=[];for(var t in this._springRegistry)this._springRegistry.hasOwnProperty(t)&&e.push(this._springRegistry[t]);return e},registerSpring:function(e){this._springRegistry[e.getId()]=e},deregisterSpring:function(t){e(this._activeSprings,t),delete this._springRegistry[t.getId()]},advance:function(e,t){for(;this._idleSpringIndices.length>0;)this._idleSpringIndices.pop();for(var n=0,r=this._activeSprings.length;r>n;n++){var o=this._activeSprings[n];o.systemShouldAdvance()?o.advance(e/1e3,t/1e3):this._idleSpringIndices.push(this._activeSprings.indexOf(o))}for(;this._idleSpringIndices.length>0;){var i=this._idleSpringIndices.pop();i>=0&&this._activeSprings.splice(i,1)}},loop:function(e){var t;-1===this._lastTimeMillis&&(this._lastTimeMillis=e-1);var n=e-this._lastTimeMillis;this._lastTimeMillis=e;var r=0,o=this.listeners.length;for(r=0;o>r;r++)t=this.listeners[r],t.onBeforeIntegrate&&t.onBeforeIntegrate(this);for(this.advance(e,n),0===this._activeSprings.length&&(this._isIdle=!0,this._lastTimeMillis=-1),r=0;o>r;r++)t=this.listeners[r],t.onAfterIntegrate&&t.onAfterIntegrate(this);this._isIdle||this.looper.run()},activateSpring:function(e){var t=this._springRegistry[e];-1==this._activeSprings.indexOf(t)&&this._activeSprings.push(t),this.getIsIdle()&&(this._isIdle=!1,this.looper.run())},addListener:function(e){this.listeners.push(e)},removeListener:function(t){e(this.listeners,t)},removeAllListeners:function(){this.listeners=[]}});var s=t.Spring=function v(e){this._id="s"+v._ID++,this._springSystem=e,this.listeners=[],this._currentState=new u,this._previousState=new u,this._tempState=new u};n.extend(s,{_ID:0,MAX_DELTA_TIME_SEC:.064,SOLVER_TIMESTEP_SEC:.001}),n.extend(s.prototype,{_id:0,_springConfig:null,_overshootClampingEnabled:!1,_currentState:null,_previousState:null,_tempState:null,_startValue:0,_endValue:0,_wasAtRest:!0,_restSpeedThreshold:.001,_displacementFromRestThreshold:.001,listeners:null,_timeAccumulator:0,_springSystem:null,destroy:function(){this.listeners=[],this.frames=[],this._springSystem.deregisterSpring(this)},getId:function(){return this._id},setSpringConfig:function(e){return this._springConfig=e,this},getSpringConfig:function(){return this._springConfig},setCurrentValue:function(e,t){return this._startValue=e,this._currentState.position=e,t||this.setAtRest(),this.notifyPositionUpdated(!1,!1),this},getStartValue:function(){return this._startValue},getCurrentValue:function(){return this._currentState.position},getCurrentDisplacementDistance:function(){return this.getDisplacementDistanceForState(this._currentState)},getDisplacementDistanceForState:function(e){return Math.abs(this._endValue-e.position)},setEndValue:function(e){if(this._endValue==e&&this.isAtRest())return this;this._startValue=this.getCurrentValue(),this._endValue=e,this._springSystem.activateSpring(this.getId());for(var t=0,n=this.listeners.length;n>t;t++){var r=this.listeners[t],o=r.onSpringEndStateChange;o&&o(this)}return this},getEndValue:function(){return this._endValue},setVelocity:function(e){return e===this._currentState.velocity?this:(this._currentState.velocity=e,this._springSystem.activateSpring(this.getId()),this)},getVelocity:function(){return this._currentState.velocity},setRestSpeedThreshold:function(e){return this._restSpeedThreshold=e,this},getRestSpeedThreshold:function(){return this._restSpeedThreshold},setRestDisplacementThreshold:function(e){this._displacementFromRestThreshold=e},getRestDisplacementThreshold:function(){return this._displacementFromRestThreshold},setOvershootClampingEnabled:function(e){return this._overshootClampingEnabled=e,this},isOvershootClampingEnabled:function(){return this._overshootClampingEnabled},isOvershooting:function(){var e=this._startValue,t=this._endValue;return this._springConfig.tension>0&&(t>e&&this.getCurrentValue()>t||e>t&&this.getCurrentValue()s.MAX_DELTA_TIME_SEC&&(r=s.MAX_DELTA_TIME_SEC),this._timeAccumulator+=r;for(var o,i,a,u,c,l,p,f,d,h,m=this._springConfig.tension,v=this._springConfig.friction,g=this._currentState.position,y=this._currentState.velocity,_=this._tempState.position,b=this._tempState.velocity;this._timeAccumulator>=s.SOLVER_TIMESTEP_SEC;)this._timeAccumulator-=s.SOLVER_TIMESTEP_SEC,this._timeAccumulator0&&this._interpolate(this._timeAccumulator/s.SOLVER_TIMESTEP_SEC),(this.isAtRest()||this._overshootClampingEnabled&&this.isOvershooting())&&(this._springConfig.tension>0?(this._startValue=this._endValue,this._currentState.position=this._endValue):(this._endValue=this._currentState.position,this._startValue=this._endValue),this.setVelocity(0),n=!0);var S=!1;this._wasAtRest&&(this._wasAtRest=!1,S=!0);var E=!1;n&&(this._wasAtRest=!0,E=!0),this.notifyPositionUpdated(S,E)}},notifyPositionUpdated:function(e,t){for(var n=0,r=this.listeners.length;r>n;n++){var o=this.listeners[n];e&&o.onSpringActivate&&o.onSpringActivate(this),o.onSpringUpdate&&o.onSpringUpdate(this),t&&o.onSpringAtRest&&o.onSpringAtRest(this)}},systemShouldAdvance:function(){return!this.isAtRest()||!this.wasAtRest()},wasAtRest:function(){return this._wasAtRest},isAtRest:function(){return Math.abs(this._currentState.velocity)=e?this.b3Friction1(e):e>18&&44>=e?this.b3Friction2(e):this.b3Friction3(e)}}),n.extend(c,{fromOrigamiTensionAndFriction:function(e,t){return new c(p.tensionFromOrigamiValue(e),p.frictionFromOrigamiValue(t))},fromBouncinessAndSpeed:function(e,n){var r=new t.BouncyConversion(e,n);return this.fromOrigamiTensionAndFriction(r.bouncyTension,r.bouncyFriction)},coastingConfigWithOrigamiFriction:function(e){return new c(0,p.frictionFromOrigamiValue(e))}}),c.DEFAULT_ORIGAMI_SPRING_CONFIG=c.fromOrigamiTensionAndFriction(40,7),n.extend(c.prototype,{friction:0,tension:0});var d={};n.hexToRGB=function(e){if(d[e])return d[e];e=e.replace("#",""),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var t=e.match(/.{2}/g),n={r:parseInt(t[0],16),g:parseInt(t[1],16),b:parseInt(t[2],16)};return d[e]=n,n},n.rgbToHex=function(e,t,n){return e=e.toString(16),t=t.toString(16),n=n.toString(16),e=e.length<2?"0"+e:e,t=t.length<2?"0"+t:t,n=n.length<2?"0"+n:n,"#"+e+t+n};var h=t.MathUtil={mapValueInRange:function(e,t,n,r,o){var i=n-t,a=o-r,s=(e-t)/i;return r+s*a},interpolateColor:function(e,t,r,o,i,a){o=void 0===o?0:o,i=void 0===i?1:i,t=n.hexToRGB(t),r=n.hexToRGB(r);var s=Math.floor(n.mapValueInRange(e,o,i,t.r,r.r)),u=Math.floor(n.mapValueInRange(e,o,i,t.g,r.g)),c=Math.floor(n.mapValueInRange(e,o,i,t.b,r.b));return a?"rgb("+s+","+u+","+c+")":n.rgbToHex(s,u,c)},degreesToRadians:function(e){return e*Math.PI/180},radiansToDegrees:function(e){return 180*e/Math.PI}};n.extend(n,h);var m;"undefined"!=typeof window&&(m=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||function(e){window.setTimeout(e,1e3/60)}),m||"undefined"==typeof process||"node"!==process.title||(m=setImmediate),n.onFrame=function(e){return m(e)},"undefined"!=typeof r?n.extend(r,t):"undefined"!=typeof window&&(window.rebound=t)}()}),__d("NavigatorIOS",["EventEmitter","Image","NavigationContext","NativeModules","React","StaticContainer.react","StyleSheet","View","invariant","logError","requireNativeComponent","resolveAssetSource"],function(e,t,n,r){"use strict";function o(){return b++}var i=Object.assign||function(e){for(var t=1;tthis.state.observedTopOfStack+1?this.state.observedTopOfStack+1:null;this.setState({idStack:this.state.idStack.slice(0,this.state.observedTopOfStack+1),routeStack:this.state.routeStack.slice(0,this.state.observedTopOfStack+1),requestedTopOfStack:this.state.observedTopOfStack,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:e})},_emitDidFocus:function(e){this.navigationContext.emit("didfocus",{route:e})},_emitWillFocus:function(e){this.navigationContext.emit("willfocus",{route:e})},push:function(e){var t=this;h(!!e,"Must supply route to push"),this.state.requestedTopOfStack===this.state.observedTopOfStack&&this._tryLockNavigator(function(){t._emitWillFocus(e);var n=t.state.routeStack.concat([e]),r=t.state.idStack.concat([o()]);t.setState({idStack:r,routeStack:n,requestedTopOfStack:n.length-1,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:n.length-1})})},popN:function(e){var t=this;0!==e&&this.state.requestedTopOfStack===this.state.observedTopOfStack&&this.state.requestedTopOfStack>0&&this._tryLockNavigator(function(){var n=t.state.requestedTopOfStack-e;h(n>=0,"Cannot pop below 0"),t._emitWillFocus(t.state.routeStack[n]),t.setState({requestedTopOfStack:n,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:null})})},pop:function(){this.popN(1)},replaceAtIndex:function(e,t){if(h(!!e,"Must supply route to replace"),0>t&&(t+=this.state.routeStack.length),!(this.state.routeStack.length<=t)){var n=this.state.idStack.slice(),r=this.state.routeStack.slice();n[t]=o(),r[t]=e,this.setState({idStack:n,routeStack:r,makingNavigatorRequest:!1,updatingAllIndicesAtOrBeyond:t}),this._emitWillFocus(e),this._emitDidFocus(e)}},replace:function(e){this.replaceAtIndex(e,-1)},replacePrevious:function(e){this.replaceAtIndex(e,-2)},popToTop:function(){this.popToRoute(this.state.routeStack[0])},popToRoute:function(e){var t=this.state.routeStack.indexOf(e);h(-1!==t,"Calling pop to route for a route that doesn't exist!");var n=this.state.routeStack.length-t-1;this.popN(n)},replacePreviousAndPop:function(e){var t=this;this.state.requestedTopOfStack===this.state.observedTopOfStack&&(this.state.routeStack.length<2||this._tryLockNavigator(function(){t.replacePrevious(e),t.setState({requestedTopOfStack:t.state.requestedTopOfStack-1,makingNavigatorRequest:!0})}))},resetTo:function(e){h(!!e,"Must supply route to push"),this.state.requestedTopOfStack===this.state.observedTopOfStack&&(this.replaceAtIndex(e,0),this.popToRoute(e))},handleNavigationComplete:function(e){this._toFocusOnNavigationComplete&&(this._getFocusEmitter().emit("focus",this._toFocusOnNavigationComplete),this._toFocusOnNavigationComplete=null),this._handleNavigatorStackChanged(e)},_routeToStackItem:function(e,t){var n=e.component,r=null!==this.state.updatingAllIndicesAtOrBeyond&&this.state.updatingAllIndicesAtOrBeyond>=t;return l.createElement(p,{key:"nav"+t,shouldUpdate:r},l.createElement(x,{title:e.title,style:[R.stackItem,this.props.itemWrapperStyle,e.wrapperStyle],backButtonIcon:g(e.backButtonIcon),backButtonTitle:e.backButtonTitle,leftButtonIcon:g(e.leftButtonIcon),leftButtonTitle:e.leftButtonTitle,onNavLeftButtonTap:e.onLeftButtonPress,rightButtonIcon:g(e.rightButtonIcon),rightButtonTitle:e.rightButtonTitle,onNavRightButtonTap:e.onRightButtonPress,navigationBarHidden:this.props.navigationBarHidden,shadowHidden:this.props.shadowHidden,tintColor:this.props.tintColor,barTintColor:this.props.barTintColor,translucent:this.props.translucent!==!1,titleTextColor:this.props.titleTextColor},l.createElement(n,i({navigator:this.navigator,route:e},e.passProps))))},renderNavigationStackItems:function(){var e=this.state.makingNavigatorRequest||null!==this.state.updatingAllIndicesAtOrBeyond,t=e?this.state.routeStack.map(this._routeToStackItem):null;return l.createElement(p,{shouldUpdate:e},l.createElement(S,{ref:y,style:R.transitioner,vertical:this.props.vertical,requestedTopOfStack:this.state.requestedTopOfStack,onNavigationComplete:this.handleNavigationComplete},t))},render:function(){return l.createElement(d,{style:this.props.style},this.renderNavigationStackItems())}}),R=f.create({stackItem:{backgroundColor:"white",overflow:"hidden",position:"absolute",top:0,left:0,right:0,bottom:0},transitioner:{flex:1}}),T=v("RCTNavigator"),x=v("RCTNavItem");n.exports=E}),__d("PickerIOS",["NativeMethodsMixin","React","ReactChildren","ReactNativeViewAttributes","NativeModules","StyleSheet","View","requireNativeComponent","merge"],function(e,t,n,r){"use strict";var o=t("NativeMethodsMixin"),i=t("React"),a=t("ReactChildren"),s=(t("ReactNativeViewAttributes"),t("NativeModules").UIManager.RCTPicker.Constants),u=t("StyleSheet"),c=t("View"),l=t("requireNativeComponent"),p=(t("merge"),"picker"),f=i.createClass({displayName:"PickerIOS",mixins:[o],propTypes:{onValueChange:i.PropTypes.func,selectedValue:i.PropTypes.any},getInitialState:function(){return this._stateFromProps(this.props)},componentWillReceiveProps:function(e){this.setState(this._stateFromProps(e))},_stateFromProps:function(e){var t=0,n=[];return a.forEach(e.children,function(r,o){r.props.value===e.selectedValue&&(t=o),n.push({value:r.props.value,label:r.props.label})}),{selectedIndex:t,items:n}},render:function(){return i.createElement(c,{style:this.props.style},i.createElement(h,{ref:p,style:d.pickerIOS,items:this.state.items,selectedIndex:this.state.selectedIndex,onChange:this._onChange}))},_onChange:function(e){this.props.onChange&&this.props.onChange(e),this.props.onValueChange&&this.props.onValueChange(e.nativeEvent.newValue),this.state.selectedIndex!==e.nativeEvent.newIndex&&this.refs[p].setNativeProps({selectedIndex:this.state.selectedIndex})}});f.Item=i.createClass({displayName:"Item",propTypes:{value:i.PropTypes.any,label:i.PropTypes.string},render:function(){return null}});var d=u.create({pickerIOS:{height:s.ComponentHeight}}),h=l("RCTPicker",f,{nativeOnly:{items:!0,onChange:!0,selectedIndex:!0}});n.exports=f}),__d("ProgressBarAndroid",["UnimplementedView"],function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("ProgressViewIOS",["Image","NativeMethodsMixin","NativeModules","ReactPropTypes","React","StyleSheet","requireNativeComponent"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t_&&this._cancelLongPressDelayTimeout()}var m=p>t.left-o&&f>t.top-i&&p0,o=n&&n.length>0;return!r&&o?n[0]:r?t[0]:e}};n.exports=o}),__d("queryLayoutByID",["ReactNativeTagHandles","NativeModules"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("NativeModules").UIManager,a=function(e,t,n){i.measure(o.rootNodeIDToTag[e],n)};n.exports=a}),__d("TextInput",["DocumentSelectionState","EventEmitter","NativeMethodsMixin","NativeModules","Platform","ReactPropTypes","React","ReactChildren","StyleSheet","Text","TextInputState","react-timer-mixin/TimerMixin.js","TouchableWithoutFeedback","createReactNativeComponentClass","emptyFunction","invariant","requireNativeComponent"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t1&&(r=p.createElement(h,null,r)),t.inputView&&(r=[r,t.inputView]),e=p.createElement(T,o({ref:"input"},t,{children:r,mostRecentEventCount:this.state.mostRecentEventCount,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChange:this._onSelectionChange,onTextInput:this._onTextInput,onSelectionChangeShouldSetResponder:y.thatReturnsTrue,text:this._getText()}))}else{for(var n in S)if(t[n])throw new Error("TextInput prop `"+n+"` is only supported with multiline.");e=p.createElement(x,o({ref:"input"},t,{onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChangeShouldSetResponder:function(){return!0},text:this._getText(),mostRecentEventCount:this.state.mostRecentEventCount}))}return p.createElement(g,{onPress:this._onPress,rejectResponderTermination:!0,testID:t.testID},e)},_renderAndroid:function(){var e=u.UIText.AutocapitalizationType[this.props.autoCapitalize],t=u.AndroidTextInput.Constants.TextAlign[this.props.textAlign],n=u.AndroidTextInput.Constants.TextAlignVertical[this.props.textAlignVertical],r=this.props.children,o=0;f.forEach(r,function(){return++o}),_(!(this.props.value&&o),"Cannot specify both value and children."),o>1&&(r=p.createElement(h,null,r));var i=p.createElement(R,{ref:"input",style:[this.props.style],autoCapitalize:e,autoCorrect:this.props.autoCorrect,textAlign:t,textAlignVertical:n,keyboardType:this.props.keyboardType,mostRecentEventCount:this.state.mostRecentEventCount,multiline:this.props.multiline,numberOfLines:this.props.numberOfLines,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onTextInput:this._onTextInput,onEndEditing:this.props.onEndEditing,onSubmitEditing:this.props.onSubmitEditing,onLayout:this.props.onLayout,password:this.props.password||this.props.secureTextEntry,placeholder:this.props.placeholder,placeholderTextColor:this.props.placeholderTextColor,text:this._getText(),underlineColorAndroid:this.props.underlineColorAndroid,children:r,editable:this.props.editable});return p.createElement(g,{onPress:this._onPress,testID:this.props.testID},i)},_onFocus:function(e){this.props.onFocus&&this.props.onFocus(e)},_onPress:function(e){(this.props.editable||void 0===this.props.editable)&&this.focus()},_onChange:function(e){var t=this;"android"===c.OS&&this.refs.input.setNativeProps({mostRecentEventCount:e.nativeEvent.eventCount});var n=e.nativeEvent.text,r=e.nativeEvent.eventCount;this.props.onChange&&this.props.onChange(e),this.props.onChangeText&&this.props.onChangeText(n),this.setState({mostRecentEventCount:r},function(){n!==t.props.value&&"string"==typeof t.props.value&&t.refs.input.setNativeProps({text:t.props.value})})},_onBlur:function(e){this.blur(),this.props.onBlur&&this.props.onBlur(e)},_onSelectionChange:function(e){if(this.props.selectionState){var t=e.nativeEvent.selection;this.props.selectionState.update(t.start,t.end)}this.props.onSelectionChange&&this.props.onSelectionChange(e)},_onTextInput:function(e){this.props.onTextInput&&this.props.onTextInput(e)}}),C=d.create({input:{alignSelf:"stretch"}});n.exports=w}),__d("DocumentSelectionState",["mixInEventEmitter"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nthis._focusOffset}},{key:"getAnchorOffset",value:function(){return this._hasFocus?this._anchorOffset:null}},{key:"getFocusOffset",value:function(){return this._hasFocus?this._focusOffset:null}},{key:"getStartOffset",value:function(){return this._hasFocus?Math.min(this._anchorOffset,this._focusOffset):null}},{key:"getEndOffset",value:function(){return this._hasFocus?Math.max(this._anchorOffset,this._focusOffset):null}},{key:"overlaps",value:function(e,t){return this.hasFocus()&&this.getStartOffset()<=t&&e<=this.getEndOffset()}}]),e}();a(s,{blur:!0,focus:!0,update:!0}),n.exports=s}),__d("mixInEventEmitter",["EventEmitter","EventEmitterWithHolding","EventHolder","EventValidator","copyProperties","invariant","keyOf"],function(e,t,n,r){function o(e,t){l(t,"Must supply set of valid event types"),l(!this.__eventEmitter,"An active emitter is already mixed in");var n=e.prototype||e,r=e.constructor;r&&l(r===Object||r===Function,"Mix EventEmitter into a class, not an instance"),n.hasOwnProperty(f)?c(n.__types,t):n.__types?n.__types=c({},n.__types,t):n.__types=t,c(n,d)}var i=t("EventEmitter"),a=t("EventEmitterWithHolding"),s=t("EventHolder"),u=t("EventValidator"),c=t("copyProperties"),l=t("invariant"),p=t("keyOf"),f=p({__types:!0}),d={emit:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emit(e,t,n,r,o,i,a)},emitAndHold:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emitAndHold(e,t,n,r,o,i,a)},addListener:function(e,t,n){return this.__getEventEmitter().addListener(e,t,n)},once:function(e,t,n){return this.__getEventEmitter().once(e,t,n)},addRetroactiveListener:function(e,t,n){return this.__getEventEmitter().addRetroactiveListener(e,t,n)},addListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},addRetroactiveListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},removeAllListeners:function(){this.__getEventEmitter().removeAllListeners()},removeCurrentListener:function(){this.__getEventEmitter().removeCurrentListener()},releaseHeldEventType:function(e){this.__getEventEmitter().releaseHeldEventType(e)},__getEventEmitter:function(){if(!this.__eventEmitter){var e=new i;e=u.addValidation(e,this.__types);var t=new s;this.__eventEmitter=new a(e,t)}return this.__eventEmitter}};n.exports=o}),__d("EventEmitterWithHolding",[],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nt.distance?1:0},f=function(e,t){return e.distance/t.length<.334},d=function(e,t){var n,r,o=[];for(n=0;n<=e.length;n++)o[n]=[n];for(r=1;r<=t.length;r++)o[0][r]=r;for(n=1;n<=e.length;n++)for(r=1;r<=t.length;r++){var i=e.charAt(n-1)===t.charAt(r-1)?0:1;o[n][r]=Math.min(o[n-1][r]+1,o[n][r-1]+1,o[n-1][r-1]+i),n>1&&r>1&&e.charAt(n-1)==t.charAt(r-2)&&e.charAt(n-2)==t.charAt(r-1)&&(o[n][r]=Math.min(o[n][r],o[n-2][r-2]+i))}return o[e.length][t.length]};n.exports=s}),__d("copyProperties",[],function(e,t,n,r){function o(e,t,n,r,o,i,a){if(e=e||{},__DEV__&&a)throw new Error("Too many arguments passed to copyProperties");for(var s,u=[t,n,r,o,i],c=0;u[c];){s=u[c++];for(var l in s)e[l]=s[l];s.hasOwnProperty&&s.hasOwnProperty("toString")&&"undefined"!=typeof s.toString&&e.toString!==s.toString&&(e.toString=s.toString)}return e}n.exports=o}),__d("TouchableWithoutFeedback",["React","react-timer-mixin/TimerMixin.js","Touchable","View","ensurePositiveDelayProps","onlyChild"],function(e,t,n,r){"use strict";var o=t("React"),i=t("react-timer-mixin/TimerMixin.js"),a=t("Touchable"),s=t("View"),u=t("ensurePositiveDelayProps"),c=t("onlyChild"),l={top:20,left:20,right:20,bottom:30},p=o.createClass({displayName:"TouchableWithoutFeedback",mixins:[i,a.Mixin],propTypes:{accessible:o.PropTypes.bool,accessibilityComponentType:o.PropTypes.oneOf(s.AccessibilityComponentType),accessibilityTraits:o.PropTypes.oneOfType([o.PropTypes.oneOf(s.AccessibilityTraits),o.PropTypes.arrayOf(o.PropTypes.oneOf(s.AccessibilityTraits))]),onPress:o.PropTypes.func,onPressIn:o.PropTypes.func,onPressOut:o.PropTypes.func,onLayout:o.PropTypes.func,onLongPress:o.PropTypes.func,delayPressIn:o.PropTypes.number,delayPressOut:o.PropTypes.number,delayLongPress:o.PropTypes.number},getInitialState:function(){return this.touchableGetInitialState()},componentDidMount:function(){u(this.props)},componentWillReceiveProps:function(e){u(e)},touchableHandlePress:function(e){this.props.onPress&&this.props.onPress(e)},touchableHandleActivePressIn:function(e){this.props.onPressIn&&this.props.onPressIn(e)},touchableHandleActivePressOut:function(e){this.props.onPressOut&&this.props.onPressOut(e)},touchableHandleLongPress:function(e){this.props.onLongPress&&this.props.onLongPress(e)},touchableGetPressRectOffset:function(){return l},touchableGetHighlightDelayMS:function(){return this.props.delayPressIn||0},touchableGetLongPressDelayMS:function(){return 0===this.props.delayLongPress?0:this.props.delayLongPress||500},touchableGetPressOutDelayMS:function(){return this.props.delayPressOut||0},render:function(){return o.cloneElement(c(this.props.children),{accessible:this.props.accessible!==!1,accessibilityComponentType:this.props.accessibilityComponentType,accessibilityTraits:this.props.accessibilityTraits,testID:this.props.testID,onLayout:this.props.onLayout,onStartShouldSetResponder:this.touchableHandleStartShouldSetResponder,onResponderTerminationRequest:this.touchableHandleResponderTerminationRequest,onResponderGrant:this.touchableHandleResponderGrant,onResponderMove:this.touchableHandleResponderMove,onResponderRelease:this.touchableHandleResponderRelease,onResponderTerminate:this.touchableHandleResponderTerminate})}});n.exports=p}),__d("ensurePositiveDelayProps",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i=function(e){o(!(e.delayPressIn<0||e.delayPressOut<0||e.delayLongPress<0),"Touchable components cannot have negative delay properties")};n.exports=i}),__d("ToastAndroid",["warning"],function(e,t,n,r){"use strict";var o=t("warning"),i={show:function(e,t){o(!1,"Cannot use ToastAndroid on iOS.")}};n.exports=i}),__d("ToolbarAndroid",["UnimplementedView"],function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("TouchableHighlight",["NativeMethodsMixin","React","ReactNativeViewAttributes","StyleSheet","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","View","cloneWithProps","ensureComponentIsNative","ensurePositiveDelayProps","keyOf","merge","onlyChild"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t1)for(var r=1;n>r;r++)t=arguments[r],t&&(e=(e?e+" ":"")+t);return e}n.exports=o}),__d("ensureComponentIsNative",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i=function(e){o(e&&"function"==typeof e.setNativeProps,"Touchable child must either be native or forward setNativeProps to a native component")};n.exports=i}),__d("TouchableNativeFeedback",["React","StyleSheet","Text","View"],function(e,t,n,r){"use strict";var o=t("React"),i=t("StyleSheet"),a=t("Text"),s=t("View"),u=o.createClass({displayName:"DummyTouchableNativeFeedback",render:function(){return o.createElement(s,{style:[c.container,this.props.style]},o.createElement(a,{style:c.info},"TouchableNativeFeedback is not supported on this platform!"))}}),c=i.create({container:{height:100,width:300,backgroundColor:"#ffbcbc",borderWidth:1,borderColor:"red",alignItems:"center",justifyContent:"center",margin:10},info:{color:"#333333",margin:20}});n.exports=u}),__d("TouchableOpacity",["Animated","NativeMethodsMixin","React","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","ensurePositiveDelayProps","flattenStyle","keyOf"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t=this._startTime+this._duration?(0===this._duration?this._onUpdate(this._toValue):this._onUpdate(this._fromValue+this._easing(1)*(this._toValue-this._fromValue)),void this.__debouncedOnEnd({finished:!0})):(this._onUpdate(this._fromValue+this._easing((e-this._startTime)/this._duration)*(this._toValue-this._fromValue)),void(this.__active&&(this._animationFrame=S(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,clearTimeout(this._timeout),window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(R),C=function(e){function t(e){i(this,t),l(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._deceleration=e.deceleration||.998,this._velocity=e.velocity}return o(t,e),p(t,[{key:"start",value:function(e,t,n){this.__active=!0,this._lastValue=e,this._fromValue=e,this._onUpdate=t,this.__onEnd=n,this._startTime=Date.now(),this._animationFrame=S(this.onUpdate.bind(this))}},{key:"onUpdate",value:function(){var e=Date.now(),t=this._fromValue+this._velocity/(1-this._deceleration)*(1-Math.exp(-(1-this._deceleration)*(e-this._startTime)));return this._onUpdate(t),Math.abs(this._lastValue-t)<.1?void this.__debouncedOnEnd({finished:!0}):(this._lastValue=t,void(this.__active&&(this._animationFrame=S(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(R),O=function(e){function t(e){i(this,t),l(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._overshootClamping=s(e.overshootClamping,!1),this._restDisplacementThreshold=s(e.restDisplacementThreshold,.001),this._restSpeedThreshold=s(e.restSpeedThreshold,.001),this._initialVelocity=e.velocity,this._lastVelocity=s(e.velocity,0),this._toValue=e.toValue;var n;void 0!==e.bounciness||void 0!==e.speed?(b(void 0===e.tension&&void 0===e.friction,"You can only define bounciness/speed or tension/friction but not both"),n=g.fromBouncinessAndSpeed(s(e.bounciness,8),s(e.speed,12))):n=g.fromOrigamiTensionAndFriction(s(e.tension,40),s(e.friction,7)),this._tension=n.tension,this._friction=n.friction}return o(t,e),p(t,[{key:"start",value:function(e,n,r,o){if(this.__active=!0,this._startPosition=e,this._lastPosition=this._startPosition,this._onUpdate=n,this.__onEnd=r,this._lastTime=Date.now(),o instanceof t){var i=o.getInternalState();this._lastPosition=i.lastPosition,this._lastVelocity=i.lastVelocity,this._lastTime=i.lastTime}void 0!==this._initialVelocity&&null!==this._initialVelocity&&(this._lastVelocity=this._initialVelocity),this.onUpdate()}},{key:"getInternalState",value:function(){return{lastPosition:this._lastPosition,lastVelocity:this._lastVelocity,lastTime:this._lastTime}}},{key:"onUpdate",value:function(){var e=this._lastPosition,t=this._lastVelocity,n=this._lastPosition,r=this._lastVelocity,o=64,i=Date.now();i>this._lastTime+o&&(i=this._lastTime+o);for(var a=1,s=Math.floor((i-this._lastTime)/a),u=0;s>u;++u){var c=a/1e3,l=t,p=this._tension*(this._toValue-n)-this._friction*r,n=e+l*c/2,r=t+p*c/2,f=r,d=this._tension*(this._toValue-n)-this._friction*r;n=e+f*c/2,r=t+d*c/2;var h=r,m=this._tension*(this._toValue-n)-this._friction*r;n=e+h*c/2,r=t+m*c/2;var v=r,g=this._tension*(this._toValue-n)-this._friction*r;n=e+h*c/2,r=t+m*c/2;var y=(l+2*(f+h)+v)/6,_=(p+2*(d+m)+g)/6;e+=y*c,t+=_*c}if(this._lastTime=i,this._lastPosition=e,this._lastVelocity=t,this._onUpdate(e),this.__active){var b=!1;this._overshootClamping&&0!==this._tension&&(b=this._startPositionthis._toValue:eo;o++)r[o]=arguments[o];var i=function(e,t,n){if("number"==typeof t)return b(e instanceof P,"Bad mapping of type "+typeof e+" for key "+n+", event value must map to AnimatedValue"),void e.setValue(t);b("object"==typeof e,"Bad mapping of type "+typeof e+" for key "+n),b("object"==typeof t,"Bad event of type "+typeof t+" for key "+n);for(var n in e)i(e[n],t[n],n)};e.forEach(function(e,t){i(e,r[t],"arg"+t)}),t&&t.listener&&t.listener.apply(null,r)}};n.exports={Value:P,ValueXY:D,decay:B,timing:F,spring:V,delay:q,sequence:U,parallel:H,stagger:z,event:G,createAnimatedComponent:u,__PropsOnlyForTests:k}}),__d("Interpolation",["tinycolor"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t,n,r,o,i,a,s){var u=e;if(t>u){if("identity"===a)return u;"clamp"===a&&(u=t)}if(u>n){if("identity"===s)return u;"clamp"===s&&(u=n)}return r===o?r:t===n?t>=e?r:o:(t===-(1/0)?u=-u:n===1/0?u-=t:u=(u-t)/(n-t),u=i(u),r===-(1/0)?u=-u:o===1/0?u+=r:u=u*(o-r)+r,u)}function a(e){var t=h(e);if(t.isValid()){var n=t.toRgb(),r=n.r,o=n.g,i=n.b,a=n.a;return"rgba("+r+", "+o+", "+i+", "+(void 0===a?1:a)+")"}return e}function s(e){var t=e.outputRange;m(t.length>=2,"Bad output range"),t=t.map(a),u(t);var n=t[0].match(y).map(function(){return[]});t.forEach(function(e){e.match(y).forEach(function(e,t){n[t].push(+e)})});var r=t[0].match(y).map(function(t,r){return g.create(f({},e,{outputRange:n[r]}))});return function(e){var n=0;return t[0].replace(y,function(){return String(r[n++](e))})}}function u(e){for(var t=e[0].replace(y,""),n=1;n=e);++n);return n-1}function l(e){m(e.length>=2,"inputRange must have at least 2 elements");for(var t=1;t=e[t-1],"inputRange must be monotonically increasing "+e)}function p(e,t){m(t.length>=2,e+" must have at least 2 elements"),m(2!==t.length||t[0]!==-(1/0)||t[1]!==1/0,e+"cannot be ]-infinity;+infinity[ "+t)}Object.defineProperty(r,"__esModule",{value:!0});var f=Object.assign||function(e){for(var t=1;t0?1:0}},{key:"step1",value:function(e){return e>=1?1:0}},{key:"linear",value:function(e){return e}},{key:"ease",value:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){return u(e)})},{key:"quad",value:function(e){return e*e}},{key:"cubic",value:function(e){return e*e*e}},{key:"poly",value:function(e){return function(t){return Math.pow(t,e)}}},{key:"sin",value:function(e){return 1-Math.cos(e*Math.PI/2)}},{key:"circle",value:function(e){return 1-Math.sqrt(1-e*e)}},{key:"exp",value:function(e){return Math.pow(2,10*(e-1))}},{key:"elastic",value:function(){var e=arguments.length<=0||void 0===arguments[0]?1:arguments[0],t=e*Math.PI;return function(e){return 1-Math.pow(Math.cos(e*Math.PI/2),3)*Math.cos(e*t)}}},{key:"back",value:function(e){return void 0===e&&(e=1.70158),function(t){return t*t*((e+1)*t-e)}}},{key:"bounce",value:function(e){return 1/2.75>e?7.5625*e*e:2/2.75>e?(e-=1.5/2.75,7.5625*e*e+.75):2.5/2.75>e?(e-=2.25/2.75,7.5625*e*e+.9375):(e-=2.625/2.75,7.5625*e*e+.984375)}},{key:"bezier",value:function(e,t,n,r,o){if(void 0===o){var i=500;o=1e3/60/i/4}return a(e,t,n,r,o)}},{key:"in",value:function(e){return e}},{key:"out",value:function(e){return function(t){return 1-e(1-t)}}},{key:"inOut",value:function(e){return function(t){return.5>t?e(2*t)/2:1-e(2*(1-t))/2}}}]),e}(),u=s.bezier(.42,0,1,1);n.exports=s}),__d("bezier",[],function(e,t,n,r){n.exports=function(e,t,n,r,o){var i=function(t){var r=1-t;return 3*r*r*t*e+3*r*t*t*n+t*t*t},a=function(e){var n=1-e;return 3*n*n*e*t+3*n*e*e*r+e*e*e},s=function(t){var r=1-t;return 3*(2*(t-1)*t+r*r)*e+3*(-t*t*t+2*r*t)*n};return function(e){var t,n,r,u,c,l,p=e;for(r=p,l=0;8>l;l++){if(u=i(r)-p,Math.abs(u)r)return a(t);if(r>n)return a(n);for(;n>t;){if(u=i(r),Math.abs(u-p)u?t=r:n=r,r=.5*(n-t)+t}return a(r)}}}),__d("SpringConfig",[],function(e,t,n,r){"use strict";function o(e){return 3.62*(e-30)+194}function i(e){return 3*(e-8)+25}function a(e,t){return{tension:o(e),friction:i(t)}}function s(e,t){function n(e,t,n){return(e-t)/(n-t)}function r(e,t,n){return t+e*(n-t)}function a(e,t,n){return e*n+(1-e)*t}function s(e,t,n){return a(2*e-e*e,t,n)}function u(e){return 7e-4*Math.pow(e,3)-.031*Math.pow(e,2)+.64*e+1.28}function c(e){return 44e-6*Math.pow(e,3)-.006*Math.pow(e,2)+.36*e+2}function l(e){return 4.5e-7*Math.pow(e,3)-332e-6*Math.pow(e,2)+.1078*e+5.84}function p(e){return 18>=e?u(e):e>18&&44>=e?c(e):l(e)}var f=n(e/1.7,0,20);f=r(f,0,.8);var d=n(t/1.7,0,20),h=r(d,.5,200),m=s(f,p(h),.01);return{tension:o(h),friction:i(m)}}n.exports={fromOrigamiTensionAndFriction:a,fromBouncinessAndSpeed:s}}),__d("requestAnimationFrame",["emptyFunction","nativeRequestAnimationFrame"],function(e,t,n,r){var o=t("emptyFunction"),i=t("nativeRequestAnimationFrame"),a=0,s=i||function(t){var n=Date.now(),r=Math.max(0,16-(n-a));return a=n+r,e.setTimeout(function(){t(Date.now())},r)};s(o),n.exports=s}),__d("nativeRequestAnimationFrame",[],function(e,t,n,r){var o=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame;n.exports=o}),__d("ViewPagerAndroid",["UnimplementedView"],function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("WebView",["ActivityIndicatorIOS","EdgeInsetsPropType","React","StyleSheet","Text","View","invariant","keyMirror","requireNativeComponent","NativeModules"],function(e,t,n,r){"use strict";var o=t("ActivityIndicatorIOS"),i=t("EdgeInsetsPropType"),a=t("React"),s=t("StyleSheet"),u=t("Text"),c=t("View"),l=t("invariant"),p=t("keyMirror"),f=t("requireNativeComponent"),d=a.PropTypes,h=t("NativeModules").WebViewManager,m="rgba(255,255,255,0.8)",v="webview",g=p({ -IDLE:null,LOADING:null,ERROR:null}),y={click:h.NavigationType.LinkClicked,formsubmit:h.NavigationType.FormSubmitted,backforward:h.NavigationType.BackForward,reload:h.NavigationType.Reload,formresubmit:h.NavigationType.FormResubmitted,other:h.NavigationType.Other},_=h.JSNavigationScheme,b=function(){return a.createElement(c,{style:T.loadingView},a.createElement(o,null))},S=function(e,t,n){return a.createElement(c,{style:T.errorContainer},a.createElement(u,{style:T.errorTextTitle},"Error loading page"),a.createElement(u,{style:T.errorText},"Domain: "+e),a.createElement(u,{style:T.errorText},"Error Code: "+t),a.createElement(u,{style:T.errorText},"Description: "+n))},E=a.createClass({displayName:"WebView",statics:{JSNavigationScheme:_,NavigationType:y},propTypes:{url:d.string,html:d.string,renderError:d.func,renderLoading:d.func,bounces:d.bool,scrollEnabled:d.bool,automaticallyAdjustContentInsets:d.bool,contentInset:i,onNavigationStateChange:d.func,startInLoadingState:d.bool,style:c.propTypes.style,javaScriptEnabledAndroid:d.bool,injectedJavaScript:d.string,scalesPageToFit:d.bool},getInitialState:function(){return{viewState:g.IDLE,lastErrorEvent:null,startInLoadingState:!0}},componentWillMount:function(){this.props.startInLoadingState&&this.setState({viewState:g.LOADING})},render:function(){var e=null;if(this.state.viewState===g.LOADING)e=(this.props.renderLoading||b)();else if(this.state.viewState===g.ERROR){var t=this.state.lastErrorEvent;l(null!=t,"lastErrorEvent expected to be non-null"),e=(this.props.renderError||S)(t.domain,t.code,t.description)}else this.state.viewState!==g.IDLE&&console.error("RCTWebView invalid state encountered: "+this.state.loading);var n=[T.container,T.webView,this.props.style];(this.state.viewState===g.LOADING||this.state.viewState===g.ERROR)&&n.push(T.hidden);var r=a.createElement(R,{ref:v,key:"webViewKey",style:n,url:this.props.url,html:this.props.html,injectedJavaScript:this.props.injectedJavaScript,bounces:this.props.bounces,scrollEnabled:this.props.scrollEnabled,contentInset:this.props.contentInset,automaticallyAdjustContentInsets:this.props.automaticallyAdjustContentInsets,onLoadingStart:this.onLoadingStart,onLoadingFinish:this.onLoadingFinish,onLoadingError:this.onLoadingError,scalesPageToFit:this.props.scalesPageToFit});return a.createElement(c,{style:T.container},r,e)},goForward:function(){h.goForward(this.getWebViewHandle())},goBack:function(){h.goBack(this.getWebViewHandle())},reload:function(){h.reload(this.getWebViewHandle())},updateNavigationState:function(e){this.props.onNavigationStateChange&&this.props.onNavigationStateChange(e.nativeEvent)},getWebViewHandle:function(){return a.findNodeHandle(this.refs[v])},onLoadingStart:function(e){this.updateNavigationState(e)},onLoadingError:function(e){e.persist(),console.warn("Encountered an error loading page",e.nativeEvent),this.setState({lastErrorEvent:e.nativeEvent,viewState:g.ERROR})},onLoadingFinish:function(e){this.setState({viewState:g.IDLE}),this.updateNavigationState(e)}}),R=f("RCTWebView",E,{nativeOnly:{onLoadingStart:!0,onLoadingError:!0,onLoadingFinish:!0}}),T=s.create({container:{flex:1},errorContainer:{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:m},errorText:{fontSize:14,textAlign:"center",marginBottom:2},errorTextTitle:{fontSize:15,fontWeight:"500",marginBottom:10},hidden:{height:0,flex:0},loadingView:{backgroundColor:m,flex:1,justifyContent:"center",alignItems:"center"},webView:{backgroundColor:"#ffffff"}});n.exports=E}),__d("ActionSheetIOS",["NativeModules","invariant"],function(e,t,n,r){"use strict";var o=t("NativeModules").ActionSheetManager,i=t("invariant"),a={showActionSheetWithOptions:function(e,t){i("object"==typeof e&&null!==e,"Options must a valid object"),i("function"==typeof t,"Must provide a valid callback"),o.showActionSheetWithOptions(e,function(){},t)},showShareActionSheetWithOptions:function(e,t,n){i("object"==typeof e&&null!==e,"Options must a valid object"),i("function"==typeof t,"Must provide a valid failureCallback"),i("function"==typeof n,"Must provide a valid successCallback"),o.showShareActionSheetWithOptions(e,t,n)}};n.exports=a}),__d("AdSupportIOS",["NativeModules"],function(e,t,n,r){"use strict";var o=t("NativeModules").AdSupport;n.exports={getAdvertisingId:function(e,t){o.getAdvertisingId(e,t)},getAdvertisingTrackingEnabled:function(e,t){o.getAdvertisingTrackingEnabled(e,t)}}}),__d("AlertIOS",["NativeModules","invariant"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nu.get("window").height/2?"top":"bottom",selection:r.length-1,hierarchy:r,inspected:{style:i.style||{},frame:t}})}},{key:"setPerfing",value:function(e){this.setState({perfing:e,inspecting:!1,inspected:null})}},{key:"setInspecting",value:function(e){this.setState({inspecting:e,inspected:null})}},{key:"render",value:function(){var e="bottom"===this.state.panelPos?{bottom:0}:{top:0};return f.createElement(m,{style:g.container,pointerEvents:"box-none"},this.state.inspecting&&f.createElement(c,{rootTag:this.props.rootTag,inspected:this.state.inspected,inspectedViewTag:this.props.inspectedViewTag,onTouchInstance:this.onTouchInstance.bind(this)}),f.createElement(m,{style:[g.panelContainer,e]},f.createElement(l,{devtoolsIsOpen:!!this.state.devtoolsAgent,inspecting:this.state.inspecting,perfing:this.state.perfing,setPerfing:this.setPerfing.bind(this),setInspecting:this.setInspecting.bind(this),inspected:this.state.inspected,hierarchy:this.state.hierarchy,selection:this.state.selection,setSelection:this.setSelection.bind(this)})))}}]),t}(f.Component),g=d.create({container:{position:"absolute",backgroundColor:"transparent",top:0,left:0,right:0,bottom:0},panelContainer:{position:"absolute",left:0,right:0}});n.exports=v}),__d("InspectorOverlay",["Dimensions","InspectorUtils","React","StyleSheet","NativeModules","View","ElementBox"],function(e,t,n,r){"use strict";var o=t("Dimensions"),i=t("InspectorUtils"),a=t("React"),s=t("StyleSheet"),u=t("NativeModules").UIManager,c=t("View"),l=t("ElementBox"),p=a.PropTypes,f=a.createClass({displayName:"InspectorOverlay",propTypes:{inspected:p.shape({frame:p.object,style:p.any}),inspectedViewTag:p.number,onTouchInstance:p.func.isRequired},findViewForTouchEvent:function(e){var t=this,n=e.nativeEvent.touches[0],r=n.locationX,o=n.locationY;u.findSubviewIn(this.props.inspectedViewTag,[r,o],function(e,n,r,a,s){var u=i.findInstanceByNativeTag(t.props.rootTag,e);u&&t.props.onTouchInstance(u,{left:n,top:r,width:a,height:s},o)})},shouldSetResponser:function(e){return this.findViewForTouchEvent(e),!0},render:function(){var e=null;return this.props.inspected&&(e=a.createElement(l,{frame:this.props.inspected.frame,style:this.props.inspected.style})),a.createElement(c,{onStartShouldSetResponder:this.shouldSetResponser,onResponderMove:this.findViewForTouchEvent,style:[d.inspector,{height:o.get("window").height}]},e)}}),d=s.create({inspector:{backgroundColor:"transparent",position:"absolute",left:0,top:0,right:0}});n.exports=f}),__d("ElementBox",["React","View","StyleSheet","BorderBox","resolveBoxStyle","flattenStyle"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n.5;e.dismissalSpring.setEndValue(o?1:0)}}})},render:function(){var e,t=this;return S.get(this.props.warning)>1&&(e=l.createElement(f,{style:I.bold},"(",S.get(this.props.warning),")"," ")),l.createElement(h,i({style:I.warningBox,ref:function(e){t.container=e}},this.panGesture.panHandlers),l.createElement(d,{onPress:this.props.onOpened},l.createElement(f,{style:I.warningText,numberOfLines:2,ref:function(e){t.text=e}},e,this.props.warning)),l.createElement(h,{ref:function(e){t.closeButton=e},style:I.closeButton},l.createElement(d,{onPress:function(){t.dismissalSpring.setEndValue(1)}},l.createElement(f,{style:I.closeButtonText},"✕"))))}}),w=l.createClass({displayName:"WarningBoxOpened",render:function(){var e;return S.get(this.props.warning)>1&&(e=l.createElement(f,{style:I.bold},"(",S.get(this.props.warning),")"," ")),l.createElement(d,{activeOpacity:.9,onPress:this.props.onClose,style:I.yellowBox},l.createElement(f,{style:I.yellowBoxText},e,this.props.warning),l.createElement(h,{style:I.yellowBoxButtons},l.createElement(d,{onPress:this.props.onDismissed,style:I.yellowBoxButton},l.createElement(f,{style:I.yellowBoxButtonText},"Dismiss")),l.createElement(d,{onPress:this.props.onIgnored,style:I.yellowBoxButton},l.createElement(f,{style:I.yellowBoxButtonText},"Ignore"))))}}),C=!0,O=l.createClass({displayName:"WarningBox",getInitialState:function(){return{totalWarningCount:R,openWarning:null -}},componentWillMount:function(){console.yellowBoxResetIgnored&&(a.setItem(_,"[]",function(e){e&&console.warn("Could not reset ignored warnings.",e)}),E=[])},componentDidMount:function(){m(C,"There can only be one WarningBox"),C=!1,T.addListener("count",this._onWarningCount)},componentWillUnmount:function(){T.removeAllListeners(),C=!0},_onWarningCount:function(e){var t=this;setImmediate(function(){t.setState({totalWarningCount:e})})},_onDismiss:function(e){S["delete"](e),this.setState({openWarning:null})},render:function(){var e=this;if(0===S.size)return l.createElement(h,null);if(this.state.openWarning)return l.createElement(w,{warning:this.state.openWarning,onClose:function(){e.setState({openWarning:null})},onDismissed:this._onDismiss.bind(this,this.state.openWarning),onIgnored:function(){E.push(e.state.openWarning),o(),e._onDismiss(e.state.openWarning)}});var t=[];return S.forEach(function(n,r){t.push(l.createElement(x,{key:r,onOpened:function(){e.setState({openWarning:r})},onDismissed:e._onDismiss.bind(e,r),warning:r}))}),l.createElement(h,{style:I.warningContainer},t)}}),I=p.create({bold:{fontWeight:"bold"},closeButton:{position:"absolute",right:0,height:46,width:46},closeButtonText:{color:"white",fontSize:32,position:"relative",left:8},warningContainer:{position:"absolute",left:0,right:0,bottom:0},warningBox:{position:"relative",backgroundColor:"rgba(171, 124, 36, 0.9)",flex:1,height:46},warningText:{color:"white",position:"absolute",left:0,marginLeft:15,marginRight:46,top:7},yellowBox:{backgroundColor:"rgba(171, 124, 36, 0.9)",position:"absolute",left:0,right:0,top:0,bottom:0,padding:15,paddingTop:35},yellowBoxText:{color:"white",fontSize:20},yellowBoxButtons:{flexDirection:"row",position:"absolute",bottom:0},yellowBoxButton:{flex:1,padding:25},yellowBoxButtonText:{color:"white",fontSize:16}});n.exports=O}),__d("AsyncStorage",["NativeModules"],function(e,t,n,r){"use strict";function o(e){if(!e)return null;var t=new Error(e.message);return t.key=e.key,t}var i=t("NativeModules"),a=i.AsyncLocalStorage,s=i.AsyncRocksDBStorage,u=s||a,c={getItem:function(e,t){return new Promise(function(n,r){u.multiGet([e],function(e,i){var a=i&&i[0]&&i[0][1]?i[0][1]:null;t&&t(e&&o(e[0])||null,a),e?r(o(e[0])):n(a)})})},setItem:function(e,t,n){return new Promise(function(r,i){u.multiSet([[e,t]],function(e){n&&n(e&&o(e[0])||null),e?i(o(e[0])):r(null)})})},removeItem:function(e,t){return new Promise(function(n,r){u.multiRemove([e],function(e){t&&t(e&&o(e[0])||null),e?r(o(e[0])):n(null)})})},mergeItem:function(e,t,n){return new Promise(function(r,i){u.multiMerge([[e,t]],function(e){n&&n(e&&o(e[0])||null),e?i(o(e[0])):r(null)})})},clear:function(e){return new Promise(function(t,n){u.clear(function(r){e&&e(o(r)),r&&o(r)?n(o(r)):t(null)})})},getAllKeys:function(e){return new Promise(function(t,n){u.getAllKeys(function(r,i){e&&e(o(r),i),r?n(o(r)):t(i)})})},multiGet:function(e,t){return new Promise(function(n,r){u.multiGet(e,function(e,i){var a=e&&e.map(function(e){return o(e)})||null;t&&t(a,i),e?r(a):n(i)})})},multiSet:function(e,t){return new Promise(function(n,r){u.multiSet(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})},multiRemove:function(e,t){return new Promise(function(n,r){u.multiRemove(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})},multiMerge:function(e,t){return new Promise(function(n,r){u.multiMerge(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})}};u.multiMerge||(delete c.mergeItem,delete c.multiMerge),n.exports=c}),__d("setupDevtools",["flattenStyle","ReactCurrentOwner","ReactInstanceHandles","ReactNativeMount","ReactReconciler","ReactNativeTextComponent"],function(global,require,module,exports){"use strict";function setupDevtools(){function tryToConnect(){ws.send("attach:agent");var e=setInterval(function(){return ws.send("attach:agent")},500);ws.onmessage=function(t){0===t.data.indexOf("eval:")&&(clearInterval(e),initialize(t.data.slice("eval:".length)))}}function initialize(text){try{eval(text)}catch(e){return void console.error("Failed to eval"+e.message)}window.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject({CurrentOwner:require("ReactCurrentOwner"),InstanceHandles:require("ReactInstanceHandles"),Mount:require("ReactNativeMount"),Reconciler:require("ReactReconciler"),TextComponent:require("ReactNativeTextComponent")}),ws.onmessage=handleMessage}function handleMessage(e){var t;try{t=JSON.parse(e.data)}catch(n){return console.error("failed to parse json: "+e.data)}return t.$close||t.$error?(closeListeners.forEach(function(e){return e()}),window.__REACT_DEVTOOLS_GLOBAL_HOOK__.emit("shutdown"),void tryToConnect()):void(t.$open||messageListeners.forEach(function(e){try{e(t)}catch(n){throw console.log(t),n}}))}var messageListeners=[],closeListeners=[],ws=new window.WebSocket("ws://localhost:8081/devtools"),FOR_BACKEND={resolveRNStyle:require("flattenStyle"),wall:{listen:function(e){messageListeners.push(e)},onClose:function(e){closeListeners.push(e)},send:function(e){ws.send(JSON.stringify(e))}}};ws.onclose=function(){console.warn("devtools socket closed"),closeListeners.forEach(function(e){return e()})},ws.onerror=function(e){console.warn("devtools socket errored",e),closeListeners.forEach(function(e){return e()})},ws.onopen=function(){tryToConnect()}}module.exports=setupDevtools}),__d("RCTRenderingPerf",["ReactDefaultPerf","invariant"],function(e,t,n,r){"use strict";var o=t("ReactDefaultPerf"),i=t("invariant"),a=[],s=!1,u={toggle:function(){console.log("Render perfomance measurements enabled"),s=!0},start:function(){s&&(o.start(),a.forEach(function(e){return e.start()}))},stop:function(){if(s){o.stop(),o.printInclusive(),o.printWasted();for(var e=0,t=0,n=o.getLastMeasurements(),r=0;r component":e.componentName,"Inclusive time (ms)":o(e.time),Instances:e.count}})),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},getMeasurementsSummaryMap:function(e){var t=s.getInclusiveSummary(e,!0);return t.map(function(e){return{"Owner > component":e.componentName,"Wasted time (ms)":e.time,Instances:e.count}})},printWasted:function(e){e=e||p._allMeasurements,console.table(p.getMeasurementsSummaryMap(e)),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},printDOM:function(e){e=e||p._allMeasurements;var t=s.getDOMSummary(e);console.table(t.map(function(e){var t={};return t[a.ID_ATTRIBUTE_NAME]=e.id,t.type=e.type,t.args=JSON.stringify(e.args),t})),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},_recordWrite:function(e,t,n,r){var o=p._allMeasurements[p._allMeasurements.length-1].writes;o[e]=o[e]||[],o[e].push({type:t,time:n,args:r})},measure:function(e,t,n){return function(){for(var r=arguments.length,o=Array(r),a=0;r>a;a++)o[a]=arguments[a];var s,c,f;if("_renderNewRootComponent"===t||"flushBatchedUpdates"===t)return p._allMeasurements.push({exclusive:{},inclusive:{},render:{},counts:{},writes:{},displayNames:{},totalTime:0}),f=l(),c=n.apply(this,o),p._allMeasurements[p._allMeasurements.length-1].totalTime=l()-f,c;if("_mountImageIntoNode"===t||"ReactDOMIDOperations"===e){if(f=l(),c=n.apply(this,o),s=l()-f,"_mountImageIntoNode"===t){var d=u.getID(o[1]);p._recordWrite(d,t,s,o[0])}else"dangerouslyProcessChildrenUpdates"===t?o[0].forEach(function(e){var t={};null!==e.fromIndex&&(t.fromIndex=e.fromIndex),null!==e.toIndex&&(t.toIndex=e.toIndex),null!==e.textContent&&(t.textContent=e.textContent),null!==e.markupIndex&&(t.markup=o[1][e.markupIndex]),p._recordWrite(e.parentID,e.type,s,t)}):p._recordWrite(o[0],t,s,Array.prototype.slice.call(o,1));return c}if("ReactCompositeComponent"!==e||"mountComponent"!==t&&"updateComponent"!==t&&"_renderValidatedComponent"!==t)return n.apply(this,o);if("string"==typeof this._currentElement.type)return n.apply(this,o);var h="mountComponent"===t?o[0]:this._rootNodeID,m="_renderValidatedComponent"===t,v="mountComponent"===t,g=p._mountStack,y=p._allMeasurements[p._allMeasurements.length-1];if(m?i(y.counts,h,1):v&&g.push(0),f=l(),c=n.apply(this,o),s=l()-f,m)i(y.render,h,s);else if(v){var _=g.pop();g[g.length-1]+=s,i(y.exclusive,h,s-_),i(y.inclusive,h,s)}else i(y.inclusive,h,s);return y.displayNames[h]={current:this.getName(),owner:this._currentElement._owner?this._currentElement._owner.getName():""},c}}};n.exports=p}),__d("DOMProperty",["invariant"],function(e,t,n,r){"use strict";function o(e,t){return(e&t)===t}var i=t("invariant"),a={MUST_USE_ATTRIBUTE:1,MUST_USE_PROPERTY:2,HAS_SIDE_EFFECTS:4,HAS_BOOLEAN_VALUE:8,HAS_NUMERIC_VALUE:16,HAS_POSITIVE_NUMERIC_VALUE:48,HAS_OVERLOADED_BOOLEAN_VALUE:64,injectDOMPropertyConfig:function(e){var t=a,n=e.Properties||{},r=e.DOMAttributeNamespaces||{},s=e.DOMAttributeNames||{},c=e.DOMPropertyNames||{},l=e.DOMMutationMethods||{};e.isCustomAttribute&&u._isCustomAttributeFunctions.push(e.isCustomAttribute);for(var p in n){i(!u.properties.hasOwnProperty(p),"injectDOMPropertyConfig(...): You're trying to inject DOM property '%s' which has already been injected. You may be accidentally injecting the same DOM property config twice, or you may be injecting two configs that have conflicting property names.",p);var f=p.toLowerCase(),d=n[p],h={attributeName:f,attributeNamespace:null,propertyName:p,mutationMethod:null,mustUseAttribute:o(d,t.MUST_USE_ATTRIBUTE),mustUseProperty:o(d,t.MUST_USE_PROPERTY),hasSideEffects:o(d,t.HAS_SIDE_EFFECTS),hasBooleanValue:o(d,t.HAS_BOOLEAN_VALUE),hasNumericValue:o(d,t.HAS_NUMERIC_VALUE),hasPositiveNumericValue:o(d,t.HAS_POSITIVE_NUMERIC_VALUE),hasOverloadedBooleanValue:o(d,t.HAS_OVERLOADED_BOOLEAN_VALUE)};if(i(!h.mustUseAttribute||!h.mustUseProperty,"DOMProperty: Cannot require using both attribute and property: %s",p),i(h.mustUseProperty||!h.hasSideEffects,"DOMProperty: Properties that have side effects must use property: %s",p),i(h.hasBooleanValue+h.hasNumericValue+h.hasOverloadedBooleanValue<=1,"DOMProperty: Value can be one of boolean, overloaded boolean, or numeric value, but not a combination: %s",p),__DEV__&&(u.getPossibleStandardName[f]=p),s.hasOwnProperty(p)){var m=s[p];h.attributeName=m,__DEV__&&(u.getPossibleStandardName[m]=p)}r.hasOwnProperty(p)&&(h.attributeNamespace=r[p]),c.hasOwnProperty(p)&&(h.propertyName=c[p]),l.hasOwnProperty(p)&&(h.mutationMethod=l[p]),u.properties[p]=h}}},s={},u={ID_ATTRIBUTE_NAME:"data-reactid",properties:{},getPossibleStandardName:__DEV__?{}:null,_isCustomAttributeFunctions:[],isCustomAttribute:function(e){for(var t=0;t=l&&s.push(n[t]);return s.sort(function(e,t){return t.exclusive-e.exclusive}),s}function s(e,t){for(var n,r={},o=0;o "+f.current,r[n]=r[n]||{componentName:n,time:0,count:0},a.inclusive[p]&&(r[n].time+=a.inclusive[p]),a.counts[p]&&(r[n].count+=a.counts[p])}}var d=[];for(n in r)r[n].time>=l&&d.push(r[n]);return d.sort(function(e,t){return t.time-e.time}),d}function u(e){var t={},n=Object.keys(e.writes),r=c({},e.exclusive,e.inclusive);for(var o in r){for(var i=!1,a=0;a0&&(t[o]=!0)}return t}var c=t("Object.assign"),l=1.2,p={_mountImageIntoNode:"set innerHTML",INSERT_MARKUP:"set innerHTML",MOVE_EXISTING:"move",REMOVE_NODE:"remove",TEXT_CONTENT:"set textContent",updatePropertyByID:"update attribute",deletePropertyByID:"delete attribute",updateStylesByID:"update styles",updateInnerHTMLByID:"set innerHTML",dangerouslyReplaceNodeWithMarkupByID:"replace"},f={getExclusiveSummary:a,getInclusiveSummary:s,getDOMSummary:i,getTotalTime:o};n.exports=f}),__d("ReactMount",["DOMProperty","ReactBrowserEventEmitter","ReactCurrentOwner","ReactElement","ReactEmptyComponent","ReactInstanceHandles","ReactInstanceMap","ReactMarkupChecksum","ReactPerf","ReactReconciler","ReactUpdateQueue","ReactUpdates","emptyObject","containsNode","instantiateReactComponent","invariant","setInnerHTML","shouldUpdateReactComponent","validateDOMNesting","warning"],function(e,t,n,r){"use strict";function o(e,t){for(var n=Math.min(e.length,t.length),r=0;n>r;r++)if(e.charAt(r)!==t.charAt(r))return r;return e.length===t.length?-1:n}function i(e){return e?e.nodeType===q?e.documentElement:e.firstChild:null}function a(e){var t=i(e);return t&&J.getID(t)}function s(e){var t=u(e);if(t)if(U.hasOwnProperty(t)){var n=U[t];n!==e&&(A(!f(n,t),"ReactMount: Two valid but unequal nodes with the same `%s`: %s",B,t),U[t]=e)}else U[t]=e;return t}function u(e){return e&&e.getAttribute&&e.getAttribute(B)||""}function c(e,t){var n=u(e);n!==t&&delete U[n],e.setAttribute(B,t),U[t]=e}function l(e){return U.hasOwnProperty(e)&&f(U[e],e)||(U[e]=J.findReactNodeByID(e)),U[e]}function p(e){var t=x.get(e)._rootNodeID;return R.isNullComponentID(t)?null:(U.hasOwnProperty(t)&&f(U[t],t)||(U[t]=J.findReactNodeByID(t)),U[t])}function f(e,t){if(e){A(u(e)===t,"ReactMount: Unexpected modification of `%s`",B);var n=J.findReactContainerForID(t);if(n&&N(n,e))return!0}return!1}function d(e){delete U[e]}function h(e){var t=U[e];return t&&f(t,e)?void(Z=t):!1}function m(e){Z=null,T.traverseAncestors(e,h);var t=Z;return Z=null,t}function v(e,t,n,r,o,i){if(__DEV__){i===D&&(i={});var a=n.nodeName.toLowerCase();i[L.ancestorInfoContextKey]=L.updatedAncestorInfo(null,a,null)}var s=O.mountComponent(e,t,r,i);e._renderedComponent._topLevelWrapper=e,J._mountImageIntoNode(s,n,o)}function g(e,t,n,r,o){var i=P.ReactReconcileTransaction.getPooled();i.perform(v,null,e,t,n,i,r,o),P.ReactReconcileTransaction.release(i)}function y(e,t){for(O.unmountComponent(e),t.nodeType===q&&(t=t.documentElement);t.lastChild;)t.removeChild(t.lastChild)}var _=t("DOMProperty"),b=t("ReactBrowserEventEmitter"),S=t("ReactCurrentOwner"),E=t("ReactElement"),R=t("ReactEmptyComponent"),T=t("ReactInstanceHandles"),x=t("ReactInstanceMap"),w=t("ReactMarkupChecksum"),C=t("ReactPerf"),O=t("ReactReconciler"),I=t("ReactUpdateQueue"),P=t("ReactUpdates"),D=t("emptyObject"),N=t("containsNode"),M=t("instantiateReactComponent"),A=t("invariant"),k=t("setInnerHTML"),j=t("shouldUpdateReactComponent"),L=t("validateDOMNesting"),V=t("warning"),F=T.SEPARATOR,B=_.ID_ATTRIBUTE_NAME,U={},H=1,q=9,z=11,G={},W={};if(__DEV__)var Y={};var K=[],Z=null,X=function(){};X.prototype.render=function(){return this.props};var J={_instancesByReactRootID:G,scrollMonitor:function(e,t){t()},_updateRootComponent:function(e,t,n,r){return J.scrollMonitor(n,function(){I.enqueueElementInternal(e,t),r&&I.enqueueCallbackInternal(e,r)}),__DEV__&&(Y[a(n)]=i(n)),e},_registerComponent:function(e,t){A(t&&(t.nodeType===H||t.nodeType===q||t.nodeType===z),"_registerComponent(...): Target container is not a DOM element."),b.ensureScrollValueMonitoring();var n=J.registerContainer(t);return G[n]=e,n},_renderNewRootComponent:function(e,t,n,r){V(null==S.current,"_renderNewRootComponent(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",S.current&&S.current.getName()||"ReactCompositeComponent");var o=M(e,null),a=J._registerComponent(o,t);return P.batchedUpdates(g,o,a,t,n,r),__DEV__&&(Y[a]=i(t)),o},renderSubtreeIntoContainer:function(e,t,n,r){return A(null!=e&&null!=e._reactInternalInstance,"parentComponent must be a valid React Component"),J._renderSubtreeIntoContainer(e,t,n,r)},_renderSubtreeIntoContainer:function(e,t,n,r){A(E.isValidElement(t),"React.render(): Invalid component element.%s","string"==typeof t?" Instead of passing an element string, make sure to instantiate it by passing it to React.createElement.":"function"==typeof t?" Instead of passing a component class, make sure to instantiate it by passing it to React.createElement.":null!=t&&void 0!==t.props?" This may be caused by unintentionally loading two independent copies of React.":""),V(!n||!n.tagName||"BODY"!==n.tagName.toUpperCase(),"render(): Rendering components directly into document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try rendering into a container element created for your app.");var o=new E(X,null,null,null,t),s=G[a(n)];if(s){var u=s._currentElement,c=u.props;if(j(c,t))return J._updateRootComponent(s,o,n,r)._renderedComponent.getPublicInstance();J.unmountComponentAtNode(n)}var l=i(n),p=l&&J.isRenderedByReact(l);if(__DEV__&&(!p||l.nextSibling))for(var f=l;f;){if(J.isRenderedByReact(f)){V(!1,"render(): Target node has markup rendered by React, but there are unrelated nodes as well. This is most commonly caused by white-space inserted around server-rendered markup.");break}f=f.nextSibling}var d=p&&!s,h=J._renderNewRootComponent(o,n,d,null!=e?e._reactInternalInstance._processChildContext(e._reactInternalInstance._context):D)._renderedComponent.getPublicInstance();return r&&r.call(h),h},render:function(e,t,n){return J._renderSubtreeIntoContainer(null,e,t,n)},registerContainer:function(e){var t=a(e);return t&&(t=T.getReactRootIDFromNodeID(t)),t||(t=T.createReactRootID()),W[t]=e,t},unmountComponentAtNode:function(e){V(null==S.current,"unmountComponentAtNode(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",S.current&&S.current.getName()||"ReactCompositeComponent"),A(e&&(e.nodeType===H||e.nodeType===q||e.nodeType===z),"unmountComponentAtNode(...): Target container is not a DOM element.");var t=a(e),n=G[t];return n?(P.batchedUpdates(y,n,e),delete G[t],delete W[t],__DEV__&&delete Y[t],!0):!1},findReactContainerForID:function(e){var t=T.getReactRootIDFromNodeID(e),n=W[t];if(__DEV__){var r=Y[t];if(r&&r.parentNode!==n){V(u(r)===t,"ReactMount: Root element ID differed from reactRootID.");var o=n.firstChild;o&&t===u(o)?Y[t]=o:V(!1,"ReactMount: Root element has been removed from its original container. New container: %s",r.parentNode)}}return n},findReactNodeByID:function(e){var t=J.findReactContainerForID(e);return J.findComponentRoot(t,e)},isRenderedByReact:function(e){if(1!==e.nodeType)return!1;var t=J.getID(e);return t?t.charAt(0)===F:!1},getFirstReactDOM:function(e){for(var t=e;t&&t.parentNode!==t;){if(J.isRenderedByReact(t))return t;t=t.parentNode}return null},findComponentRoot:function(e,t){var n=K,r=0,o=m(t)||e;for(n[0]=o.firstChild,n.length=1;r when using tables, nesting tags like
,

, or , or using non-SVG elements in an parent. Try inspecting the child nodes of the element with React ID `%s`.",t,J.getID(e))},_mountImageIntoNode:function(e,t,n){if(A(t&&(t.nodeType===H||t.nodeType===q||t.nodeType===z),"mountComponentIntoNode(...): Target container is not valid."),n){var r=i(t);if(w.canReuseMarkup(e,r))return;var a=r.getAttribute(w.CHECKSUM_ATTR_NAME);r.removeAttribute(w.CHECKSUM_ATTR_NAME);var s=r.outerHTML;r.setAttribute(w.CHECKSUM_ATTR_NAME,a);var u=o(e,s),c=" (client) "+e.substring(u-20,u+20)+"\n (server) "+s.substring(u-20,u+20);A(t.nodeType!==q,"You're trying to render a component to the document using server rendering but the checksum was invalid. This usually means you rendered a different component type or props on the client from the one on the server, or your render() methods are impure. React cannot handle this case due to cross-browser quirks by rendering at the document root. You should look for environment dependent code in your components and ensure the props are the same client and server side:\n%s",c),__DEV__&&V(!1,"React attempted to reuse markup in a container but the checksum was invalid. This generally means that you are using server rendering and the markup generated on the server was not what the client was expecting. React injected new markup to compensate which works but you have lost many of the benefits of server rendering. Instead, figure out why the markup being generated is different on the client or server:\n%s",c)}A(t.nodeType!==q,"You're trying to render a component to the document but you didn't use server rendering. We can't do this without using server rendering due to cross-browser quirks. See React.renderToString() for server rendering."),k(t,e)},getReactRootID:a,getID:s,setID:c,getNode:l,getNodeFromInstance:p,purgeID:d};C.measureMethods(J,"ReactMount",{_renderNewRootComponent:"_renderNewRootComponent",_mountImageIntoNode:"_mountImageIntoNode"}),n.exports=J}),__d("ReactBrowserEventEmitter",["EventConstants","EventPluginHub","EventPluginRegistry","ReactEventEmitterMixin","ViewportMetrics","Object.assign","isEventSupported"],function(e,t,n,r){"use strict";function o(e){return Object.prototype.hasOwnProperty.call(e,v)||(e[v]=h++,f[e[v]]={}),f[e[v]]}var i=t("EventConstants"),a=t("EventPluginHub"),s=t("EventPluginRegistry"),u=t("ReactEventEmitterMixin"),c=t("ViewportMetrics"),l=t("Object.assign"),p=t("isEventSupported"),f={},d=!1,h=0,m={topBlur:"blur",topChange:"change",topClick:"click",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topScroll:"scroll",topSelectionChange:"selectionchange",topTextInput:"textInput",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topWheel:"wheel"},v="_reactListenersID"+String(Math.random()).slice(2),g=l({},u,{ReactEventListener:null,injection:{injectReactEventListener:function(e){e.setHandleTopLevel(g.handleTopLevel),g.ReactEventListener=e}},setEnabled:function(e){g.ReactEventListener&&g.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!g.ReactEventListener||!g.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,r=o(n),a=s.registrationNameDependencies[e],u=i.topLevelTypes,c=0;c"," "+i.CHECKSUM_ATTR_NAME+'="'+t+'">')},canReuseMarkup:function(e,t){var n=t.getAttribute(i.CHECKSUM_ATTR_NAME);n=n&&parseInt(n,10);var r=o(e);return r===n}};n.exports=i}),__d("adler32",[],function(e,t,n,r){"use strict";function o(e){for(var t=1,n=0,r=0;r]/,s=function(e,t){e.innerHTML=t};if("undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction&&(s=function(e,t){MSApp.execUnsafeLocalFunction(function(){e.innerHTML=t})}),o.canUseDOM){var u=document.createElement("div");u.innerHTML=" ",""===u.innerHTML&&(s=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),i.test(t)||"<"===t[0]&&a.test(t)){e.innerHTML=String.fromCharCode(65279)+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t})}n.exports=s}),__d("validateDOMNesting",["Object.assign","emptyFunction","warning"],function(e,t,n,r){"use strict";var o=t("Object.assign"),i=t("emptyFunction"),a=t("warning"),s=i;if(__DEV__){var u=["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"],c=["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"],l=c.concat(["button"]),p=["dd","dt","li","option","optgroup","p","rp","rt"],f={parentTag:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null},d=function(e,t,n){var r=o({},e||f),i={tag:t,instance:n};return-1!==c.indexOf(t)&&(r.aTagInScope=null,r.buttonTagInScope=null,r.nobrTagInScope=null),-1!==l.indexOf(t)&&(r.pTagInButtonScope=null),-1!==u.indexOf(t)&&"address"!==t&&"div"!==t&&"p"!==t&&(r.listItemTagAutoclosing=null,r.dlItemTagAutoclosing=null),r.parentTag=i,"form"===t&&(r.formTag=i),"a"===t&&(r.aTagInScope=i),"button"===t&&(r.buttonTagInScope=i),"nobr"===t&&(r.nobrTagInScope=i),"p"===t&&(r.pTagInButtonScope=i),"li"===t&&(r.listItemTagAutoclosing=i),("dd"===t||"dt"===t)&&(r.dlItemTagAutoclosing=i),r},h=function(e,t){switch(t){case"select":return"option"===e||"optgroup"===e||"#text"===e;case"optgroup":return"option"===e||"#text"===e;case"option":return"#text"===e;case"tr":return"th"===e||"td"===e||"style"===e||"script"===e||"template"===e;case"tbody":case"thead":case"tfoot":return"tr"===e||"style"===e||"script"===e||"template"===e;case"colgroup":return"col"===e||"template"===e;case"table":return"caption"===e||"colgroup"===e||"tbody"===e||"tfoot"===e||"thead"===e||"style"===e||"script"===e||"template"===e;case"head":return"base"===e||"basefont"===e||"bgsound"===e||"link"===e||"meta"===e||"title"===e||"noscript"===e||"noframes"===e||"style"===e||"script"===e||"template"===e;case"html":return"head"===e||"body"===e}switch(e){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"h1"!==t&&"h2"!==t&&"h3"!==t&&"h4"!==t&&"h5"!==t&&"h6"!==t;case"rp":case"rt":return-1===p.indexOf(t);case"caption":case"col":case"colgroup":case"frame":case"head":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return null==t}return!0},m=function(e,t){switch(e){case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dialog":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"main":case"menu":case"nav": -case"ol":case"p":case"section":case"summary":case"ul":case"pre":case"listing":case"table":case"hr":case"xmp":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return t.pTagInButtonScope;case"form":return t.formTag||t.pTagInButtonScope;case"li":return t.listItemTagAutoclosing;case"dd":case"dt":return t.dlItemTagAutoclosing;case"button":return t.buttonTagInScope;case"a":return t.aTagInScope;case"nobr":return t.nobrTagInScope}return null},v=function(e){if(!e)return[];var t=[];do t.push(e);while(e=e._currentElement._owner);return t.reverse(),t},g={};s=function(e,t,n){n=n||f;var r=n.parentTag,o=r&&r.tag,i=h(e,o)?null:r,s=i?null:m(e,n),u=i||s;if(u){var c,l=u.tag,p=u.instance,d=t&&t._currentElement._owner,y=p&&p._currentElement._owner,_=v(d),b=v(y),S=Math.min(_.length,b.length),E=-1;for(c=0;S>c&&_[c]===b[c];c++)E=c;var R="(unknown)",T=_.slice(E+1).map(function(e){return e.getName()||R}),x=b.slice(E+1).map(function(e){return e.getName()||R}),w=[].concat(-1!==E?_[E].getName()||R:[],x,l,s?["..."]:[],T,e).join(" > "),C=!!i+"|"+e+"|"+l+"|"+w;if(g[C])return;if(g[C]=!0,i){var O="";"table"===l&&"tr"===e&&(O+=" Add a to your code to match the DOM tree generated by the browser."),a(!1,"validateDOMNesting(...): <%s> cannot appear as a child of <%s>. See %s.%s",e,l,w,O)}else a(!1,"validateDOMNesting(...): <%s> cannot appear as a descendant of <%s>. See %s.",e,l,w)}},s.ancestorInfoContextKey="__validateDOMNesting_ancestorInfo$"+Math.random().toString(36).slice(2),s.updatedAncestorInfo=d,s.isTagValidInContext=function(e,t){t=t||f;var n=t.parentTag,r=n&&n.tag;return h(e,r)&&!m(e,t)}}n.exports=s}),__d("AppStateIOS",["Map","NativeModules","RCTDeviceEventEmitter","logError","invariant"],function(e,t,n,r){"use strict";var o=t("Map"),i=t("NativeModules"),a=t("RCTDeviceEventEmitter"),s=i.AppState,u=t("logError"),c=t("invariant"),l={change:new o,memoryWarning:new o},p={addEventListener:function(e,t){c(-1!==["change","memoryWarning"].indexOf(e),'Trying to subscribe to unknown event: "%s"',e),"change"===e?l[e].set(t,a.addListener("appStateDidChange",function(e){t(e.app_state)})):"memoryWarning"===e&&l[e].set(t,a.addListener("memoryWarning",t))},removeEventListener:function(e,t){c(-1!==["change","memoryWarning"].indexOf(e),'Trying to remove listener for unknown event: "%s"',e),l[e].has(t)&&(l[e].get(t).remove(),l[e]["delete"](t))},currentState:"active"};a.addListener("appStateDidChange",function(e){p.currentState=e.app_state}),s.getCurrentAppState(function(e){p.currentState=e.app_state},u),n.exports=p}),__d("BackAndroid",["warning"],function(e,t,n,r){"use strict";function o(){i(!1,"BackAndroid is not supported on this platform.")}var i=t("warning"),a={exitApp:o,addEventListener:o,removeEventListener:o};n.exports=a}),__d("CameraRoll",["ReactPropTypes","NativeModules","createStrictShapeTypeChecker","deepFreezeAndThrowOnMutationInDev","invariant"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n glview) must have a function in parameter");var p=function(r){function p(e,t){o(this,p),u(Object.getPrototypeOf(p.prototype),"constructor",this).call(this,e,t),l.forEach(this._delegateMethod,this)}return i(p,r),s(p,[{key:"_delegateMethod",value:function(e){var t=this;this[e]=function(){var n=t.refs._;return c(n,"glView has been rendered"),n[e].apply(n,arguments)}}},{key:"render",value:function(){var r=n(this.props);return c(r&&(r.type===t||r.type.isGLComponent),"The GL.createComponent function parameter must return a GL.View or another GL Component"),e.cloneElement(r,a({},r.props,{ref:"_"}))}}]),p}(e.Component);if(p.isGLComponent=!0,p.displayName=n.name||"",r){c("object"==typeof r,"second parameter of createComponent must be an object of static fields to set in the React component. (example: propTypes, displayName)");for(var f in r)p[f]=r[f]}return p}return n}}),__d("invariant",[],function(e,t,n,r){ -"use strict";var o=function(e,t,n,r,o,i,a,s){if("production"!==process.env.NODE_ENV&&void 0===t)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,s],l=0;u=new Error("Invariant Violation: "+t.replace(/%s/g,function(){return c[l++]}))}throw u.framesToPop=1,u}};n.exports=o}),__d("gl-react-core/src/glViewMethods.json",[],function(e,t,n,r){n.exports=["getGLCanvas","captureFrame"]}),__d("gl-react-core/src/createComponentDeprecated.js",["invariant","gl-react-core/src/glViewMethods.json"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function c(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0===r){var o=Object.getPrototypeOf(e);return null===o?void 0:c(o,t,n)}if("value"in r)return r.value;var i=r.get;return void 0===i?void 0:i.call(n)},s=t("invariant"),u=t("gl-react-core/src/glViewMethods.json");n.exports=function(e){var t=function(e){function t(e,n){var r=this;o(this,t),a(Object.getPrototypeOf(t.prototype),"constructor",this).call(this,e,n),u.forEach(function(e){r[e]||(r[e]=function(){return s(!0,"'%s' method is not available in deprecated GL.Component. Use GL.createComponent(props => glView) instead")})}),"production"!==process.env.NODE_ENV&&console.error("GL.Component class is deprecated. Use GL.createComponent(props => glView) function instead")}return i(t,e),t}(e.Component);return t.isGLComponent=!0,t}}),__d("gl-react-core/src/createShaders.js",["invariant"],function(e,t,n,r){var o=t("invariant");n.exports=function(e){var t=1,n={},r={create:function(r){o("object"==typeof r,"config must be an object");var i={};for(var a in r){var s=r[a];o("object"==typeof s&&"string"==typeof s.frag,"invalid shader given to Shaders.create(). A valid shader is a { frag: String }");var u=t++;s.name||(s.name=a),n[u]=s.name,e(u,s),i[a]=u}return i},getName:function(e){return n[e]},list:function(){return Object.keys(n)},exists:function(e){return"number"==typeof e&&e>=1&&t>e}};return r}}),__d("gl-react-core/src/createUniform.js",["invariant"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e,t){"undefined"!=typeof console&&console.debug&&console.debug("GL.View rendered with",e,t)}var u=Object.assign||function(e){for(var t=1;t0&&a>0,"width and height are required for the root GLView");var T=h(d(_(l,m,i,a,c,y||!1,[]))),x=T.data,w=T.contentsVDOM,C=T.imagesToPreload;return g&&s(x,w),r({width:i,height:a,style:n,visibleContent:S,eventsThrough:E},w.map(function(e,t){return f(x.width,x.height,t,e,{visibleContent:S})}),v(u({},R,{width:i,height:a,data:x,nbContentTextures:w.length,imagesToPreload:C,renderId:e,opaque:b,visibleContent:S,eventsThrough:E})))}}]),t}(g);return b.displayName="GL.View",b.propTypes={shader:y.number.isRequired,width:y.number,height:y.number,uniforms:y.object,opaque:y.bool,preload:y.bool,autoRedraw:y.bool,eventsThrough:y.bool,visibleContent:y.bool},b.defaultProps={opaque:!0},_=m(e,t,n,b),b}}),__d("gl-react-core/src/data/index.js",["gl-react-core/src/data/build.js","gl-react-core/src/data/fill.js","gl-react-core/src/data/resolve.js"],function(e,t,n,r){n.exports={createBuild:t("gl-react-core/src/data/build.js"),fill:t("gl-react-core/src/data/fill.js"),resolve:t("gl-react-core/src/data/resolve.js")}}),__d("gl-react-core/src/data/build.js",["invariant","gl-react-core/src/data/TextureObjects.js","gl-react-core/src/data/isNonSamplerUniformValue.js"],function(e,t,n,r){function o(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e){function t(e,r,u,f){var d=e.uniforms,h=e.children,m=e.contents,v=e.preload,g=o(e,["uniforms","children","contents","preload"]),y=a({},d),_=u.map(function(e){var t=e.vdom;return t}),b=function(e){return function(){for(e++;e===r||-1!==f.indexOf(e);)e++;return e}}(-1),S=c(e,_),E=S.map(function(e){var t=e.vdom,n=b();return{vdom:t,fboId:n}}),R=u.concat(E),T=R.map(function(e){var t=e.vdom;return t}),x=R.map(function(e){var t=e.fboId;return t}),w=[],C=[],O=h.concat(S).map(function(e){var t=e.uniform,n=e.vdom,r=e.data,o=T.indexOf(n),i=void 0,a=void 0;return-1===o?(i=b(),a=C):(i=R[o].fboId,o>=u.length&&(a=w)),t&&(y[t]=l.Framebuffer(i)),{data:r,fboId:i,addToCollection:a}}),I=O.map(function(e){var t=e.fboId;return t}),P=f.concat(x).concat(I),D=[];return O.forEach(function(e){var n=e.data,r=e.fboId,o=e.addToCollection;-1===D.indexOf(r)&&(D.push(r),o&&o.push(t(n,r,R,P)))}),m.forEach(function(e){var t=e.uniform,n=e.vdom,r=e.opts,o=i.indexOf(n);s(-1!==o,"contents was discovered by findContentsMeta"),y[t]=l.withOpts(l.Content(o),r)}),v&&(n=n.concat(p(d))),a({},g,{uniforms:y,contextChildren:w,children:C,fboId:r})}var n=[],r=u(e),i=r.map(function(e){var t=e.vdom;return t});return{data:t(e,-1,[],[]),contentsVDOM:i,imagesToPreload:f(n)}}var a=Object.assign||function(e){for(var t=1;t1))return{data:r[o],vdom:n}}).filter(function(e){return e})}n.exports=o}),__d("gl-react-core/src/data/extractImages.js",[],function(e,t,n,r){function o(e){var t=[];for(var n in e){var r=e[n];r&&"object"==typeof r&&"image"===r.type&&r.value&&"string"==typeof r.value.uri&&t.push(r.value)}return t}n.exports=o}),__d("gl-react-core/src/data/uniqImages.js",[],function(e,t,n,r){function o(e){var t=[],n=[];return e.forEach(function(e){-1===t.indexOf(e.uri)&&(t.push(e.uri),n.push(e))}),n}n.exports=o}),__d("gl-react-native/src/View.js",["gl-react-core/src/index.js","react-native/Libraries/react-native/react-native.js","gl-react-native/src/Shaders.js","gl-react-native/src/Uniform.js"],function(e,t,n,r){function o(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;tt%1?1:0}}),u.createElement(l,{style:{flex:1,color:"#00FF66",fontSize:14}},t.toFixed(2),"s"),u.createElement(l,{style:{flex:1,color:"#fff",fontSize:14}},n.toFixed(0)," fps"),u.createElement(l,{style:{flex:1,color:"#999",fontSize:14}},"")))))}}]),t}(u.Component);n.exports=d}),__d("AdvancedEffects/src/Vignette.js",["react-native/Libraries/react-native/react-native.js","gl-react-native/src/index.js"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n=u.length?0:c+1;var t=u[e],n=t.genUniforms&&t.genUniforms()||{};return{name:t.name,uniforms:n}}var i=Object.assign||function(e){for(var t=1;t=0.&&lambda>=0.)?0:-1;return hit;}float rand(vec2 uv){float a=dot(uv,vec2(92.,80.));float b=dot(uv,vec2(41.,62.));float x=sin(a)+cos(b)*51.;return fract(x);}vec4 shade(Ray ray,vec2 uv){vec3 spherePos=vec3(0.,0.,4.);RaycastHit sphere=intersectSphere(spherePos,1.5,ray);vec3 bg=mix(texture2D(from,uv),texture2D(to,uv),progress).xyz;if(sphere.type==0){vec3 reflectDir=reflect(ray.direction,sphere.normal);Ray reflectRay=Ray(sphere.point+(reflectDir*EPSILON),reflectDir);vec3 l=light-sphere.point;float dif=pow(max(dot(normalize(l),sphere.normal),0.),1.);float spec=0.;spec+=pow(max(dot(normalize(reflectRay.direction),normalize(l)),0.),15.);float ndotr=dot(sphere.normal,ray.direction);float fresnel=pow(1.-abs(ndotr),FRESNEL_STRENGTH);fresnel=mix(.001,1.0,fresnel);uv=vec2(rand(uv),rand(uv))*.05;bg=mix(texture2D(from,uv),texture2D(to,uv),progress).xyz;vec3 ambient=vec3(.2);vec3 diffuse=bg*dif;vec3 specular=vec3(1.)*spec;vec3 final=ambient+diffuse+spec;return vec4(final.xyz,1.);}return vec4(bg,1.);}void main(){vec2 uv=(gl_FragCoord.xy-(resolution.xy/2.))/resolution.y;light.x=2.*progress;vec3 ori=vec3(0.);vec3 dir=vec3(uv.xy,1.);Ray ray=Ray(ori,dir);gl_FragColor=shade(ray,gl_FragCoord.xy/resolution.xy);}"},{id:"1f6e25d1075bb82e21db",name:"Blur",owner:"giangchau92",uniforms:{size:0},html_url:"https://gist.github.com/1f6e25d1075bb82e21db",created_at:"2015-05-03T16:04:27Z",updated_at:"2015-08-29T14:20:28Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\n\n#define QUALITY 32\n\n#define N 20\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float size;const float GOLDEN_ANGLE=2.399963229728653;vec4 blur(sampler2D t,vec2 c,float radius){vec4 sum=vec4(0.0);float q=float(QUALITY);for(int i=0;i-0.005){return -1.0;}else if(r-dist<0.01&&r-dist>-0.005){return -2.0;}return grad;}float round(float a){return floor(a+0.5);}float getWave(vec2 p){vec2 _p=p-center;float rads=atan(_p.y,_p.x);float degs=degrees(rads)+180.0;vec2 range=vec2(0.0,M_PI*30.0);vec2 domain=vec2(0.0,360.0);float ratio=(M_PI*30.0)/360.0;degs=degs*ratio;float x=progress;float magnitude=mix(0.02,0.09,smoothstep(0.0,1.0,x));float offset=mix(40.0,30.0,smoothstep(0.0,1.0,x));float ease_degs=quadraticInOut(sin(degs));float deg_wave_pos=(ease_degs*magnitude)*sin(x*offset);return x+deg_wave_pos;}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;if(progress==0.0){gl_FragColor=texture2D(from,p);}else if(progress==1.0){gl_FragColor=texture2D(to,p);}else{float dist=distance(center,p);float m=getGradient(getWave(p),dist);if(m==-2.0){gl_FragColor=mix(texture2D(from,p),vec4(0.0,0.0,0.0,1.0),0.75);}else{gl_FragColor=mix(texture2D(from,p),texture2D(to,p),m);}}}"},{id:"b3aa4a8b4f88dc228d4a",name:"test",owner:"brandonyoyo",uniforms:{},html_url:"https://gist.github.com/b3aa4a8b4f88dc228d4a",created_at:"2014-10-26T16:46:18Z",updated_at:"2015-08-29T14:08:09Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;gl_FragColor=mix(texture2D(from,p),texture2D(to,p),progress);}"},{id:"d1f891c5585fc40b55ea",name:"Star Wipe",owner:"MemoryStomp",uniforms:{},html_url:"https://gist.github.com/d1f891c5585fc40b55ea",created_at:"2014-07-01T06:58:45Z",updated_at:"2015-08-29T14:03:17Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;vec2 circlePoint(float ang){ang+=6.28318*0.15;return vec2(cos(ang),sin(ang));}float cross2d(vec2 a,vec2 b){return (a.x*b.y-a.y*b.x);}float star(vec2 p,float size){if(size<=0.0){return 0.0;}p/=size;vec2 p0=circlePoint(0.0);vec2 p1=circlePoint(6.28318*1.0/5.0);vec2 p2=circlePoint(6.28318*2.0/5.0);vec2 p3=circlePoint(6.28318*3.0/5.0);vec2 p4=circlePoint(6.28318*4.0/5.0);float s0=(cross2d(p1-p0,p-p0));float s1=(cross2d(p2-p1,p-p1));float s2=(cross2d(p3-p2,p-p2));float s3=(cross2d(p4-p3,p-p3));float s4=(cross2d(p0-p4,p-p4));float s5=min(min(min(s0,s1),min(s2,s3)),s4);float s=max(1.0-sign(s0*s1*s2*s3*s4)+sign(s5),0.0);s=sign(2.6-length(p))*s;return max(s,0.0);}void main(){vec2 p=(gl_FragCoord.xy/resolution.xy);vec2 o=p*2.0-1.0;float t=progress*1.4;float c1=star(o,t);float c2=star(o,t-0.1);float border=max(c1-c2,0.0);gl_FragColor=mix(texture2D(from,p),texture2D(to,p),c1)+vec4(border,border,border,0.0);}"},{id:"5a4d1fb6711076d17e2e",name:"morph",owner:"paniq",uniforms:{},html_url:"https://gist.github.com/5a4d1fb6711076d17e2e",created_at:"2014-07-01T04:52:25Z",updated_at:"2015-08-29T14:03:17Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;const float strength=0.1;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec4 ca=texture2D(from,p);vec4 cb=texture2D(to,p);vec2 oa=(((ca.rg+ca.b)*0.5)*2.0-1.0);vec2 ob=(((cb.rg+cb.b)*0.5)*2.0-1.0);vec2 oc=mix(oa,ob,0.5)*strength;float w0=progress;float w1=1.0-w0;gl_FragColor=mix(texture2D(from,p+oc*w0),texture2D(to,p-oc*w1),progress);}"},{id:"00973cee8e0353c73305",name:"LumaWipe",owner:"rectalogic",uniforms:{lumaTex:"conical-asym.png",invertLuma:!0,softness:.25},html_url:"https://gist.github.com/00973cee8e0353c73305",created_at:"2014-06-17T02:11:27Z",updated_at:"2015-08-29T14:02:38Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform sampler2D lumaTex;uniform bool invertLuma;uniform float softness;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;float luma=texture2D(lumaTex,p).x;if(invertLuma) luma=1.0-luma;vec4 fromColor=texture2D(from,p);vec4 toColor=texture2D(to,p);float time=mix(0.0,1.0+softness,progress);if(luma<=time-softness) gl_FragColor=toColor;else if(luma>=time) gl_FragColor=fromColor;else{float alpha=(time-luma)/softness;gl_FragColor=mix(fromColor,toColor,alpha);}}"},{id:"0141a38779af3a652c22",name:"simple luma",owner:"gre",uniforms:{luma:"spiral-1.png"},html_url:"https://gist.github.com/0141a38779af3a652c22",created_at:"2014-06-13T08:16:10Z",updated_at:"2015-08-29T14:02:31Z",stars:1,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform sampler2D luma;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;gl_FragColor=mix(texture2D(from,p),texture2D(to,p),step(texture2D(luma,p).r,progress));}"},{id:"ee15128c2b87d0e74dee",name:"cube",owner:"gre",uniforms:{persp:.7,unzoom:.3,reflection:.4,floating:3},html_url:"https://gist.github.com/ee15128c2b87d0e74dee",created_at:"2014-06-12T17:13:17Z",updated_at:"2015-08-29T14:02:31Z",stars:1,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float persp;uniform float unzoom;uniform float reflection;uniform float floating;vec2 project(vec2 p){return p*vec2(1.0,-1.2)+vec2(0.0,-floating/100.);}bool inBounds(vec2 p){return all(lessThan(vec2(0.0),p))&&all(lessThan(p,vec2(1.0)));}vec4 bgColor(vec2 p,vec2 pfr,vec2 pto){vec4 c=vec4(0.0,0.0,0.0,1.0);pfr=project(pfr);if(inBounds(pfr)){c+=mix(vec4(0.0),texture2D(from,pfr),reflection*mix(1.0,0.0,pfr.y));}pto=project(pto);if(inBounds(pto)){c+=mix(vec4(0.0),texture2D(to,pto),reflection*mix(1.0,0.0,pto.y));}return c;}vec2 xskew(vec2 p,float persp,float center){float x=mix(p.x,1.0-p.x,center);return ((vec2(x,(p.y-0.5*(1.0-persp)*x)/(1.0+(persp-1.0)*x))-vec2(0.5-distance(center,0.5),0.0))*vec2(0.5/distance(center,0.5)*(center<0.5?1.0:-1.0),1.0)+vec2(center<0.5?0.0:1.0,0.0));}void main(){vec2 op=gl_FragCoord.xy/resolution.xy;float uz=unzoom*2.0*(0.5-distance(0.5,progress));vec2 p=-uz*0.5+(1.0+uz)*op;vec2 fromP=xskew((p-vec2(progress,0.0))/vec2(1.0-progress,1.0),1.0-mix(progress,0.0,persp),0.0);vec2 toP=xskew(p/vec2(progress,1.0),mix(pow(progress,2.0),1.0,persp),1.0);if(inBounds(fromP)){gl_FragColor=texture2D(from,fromP);}else if(inBounds(toP)){gl_FragColor=texture2D(to,toP);}else{gl_FragColor=bgColor(op,fromP,toP);}}"},{id:"9b99fc01fd5705008a5b",name:"Glitch Memories",owner:"niseh",uniforms:{},html_url:"https://gist.github.com/9b99fc01fd5705008a5b",created_at:"2014-05-29T19:32:52Z",updated_at:"2015-08-29T14:01:57Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;void glitch_memories(sampler2D pic){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 block=floor(gl_FragCoord.xy/vec2(16));vec2 uv_noise=block/vec2(64);uv_noise+=floor(vec2(progress)*vec2(1200.0,3500.0))/vec2(64);float block_thresh=pow(fract(progress*1200.0),2.0)*0.2;float line_thresh=pow(fract(progress*2200.0),3.0)*0.7;vec2 red=p,green=p,blue=p,o=p;vec2 dist=(fract(uv_noise)-0.5)*0.3;red+=dist*0.1;green+=dist*0.2;blue+=dist*0.125;gl_FragColor.r=texture2D(pic,red).r;gl_FragColor.g=texture2D(pic,green).g;gl_FragColor.b=texture2D(pic,blue).b;gl_FragColor.a=1.0;}void main(void){float smoothed=smoothstep(0.,1.,progress);if((smoothed<0.4&&smoothed>0.1)){glitch_memories(from);}else if((smoothed>0.6&&smoothed<0.9)){glitch_memories(to);}else{vec2 p=gl_FragCoord.xy/resolution.xy;gl_FragColor=mix(texture2D(from,p),texture2D(to,p),progress);}}"},{id:"fe67b3b5149738069537",name:"potleaf",owner:"Flexi23",uniforms:{},html_url:"https://gist.github.com/fe67b3b5149738069537",created_at:"2014-05-28T09:58:30Z",updated_at:"2015-08-29T14:01:55Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;void main(){vec2 uv=gl_FragCoord.xy/resolution.xy;vec2 leaf_uv=(uv-vec2(0.5))/10./pow(progress,3.5);leaf_uv.y+=0.35;float r=0.18;float o=atan(leaf_uv.y,leaf_uv.x);gl_FragColor=mix(texture2D(from,uv),texture2D(to,uv),1.-step(1.-length(leaf_uv)+r*(1.+sin(o))*(1.+0.9*cos(8.*o))*(1.+0.1*cos(24.*o))*(0.9+0.05*cos(200.*o)),1.));}"},{id:"b86b90161503a0023231",name:"CrossZoom",owner:"rectalogic",uniforms:{strength:.4},html_url:"https://gist.github.com/b86b90161503a0023231",created_at:"2014-05-25T01:24:39Z",updated_at:"2015-08-29T14:01:48Z",stars:2,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float strength;const float PI=3.141592653589793;float Linear_ease(in float begin,in float change,in float duration,in float time){return change*time/duration+begin;}float Exponential_easeInOut(in float begin,in float change,in float duration,in float time){if(time==0.0) return begin;else if(time==duration) return begin+change;time=time/(duration/2.0);if(time<1.0) return change/2.0*pow(2.0,10.0*(time-1.0))+begin;return change/2.0*(-pow(2.0,-10.0*(time-1.0))+2.0)+begin;}float Sinusoidal_easeInOut(in float begin,in float change,in float duration,in float time){return -change/2.0*(cos(PI*time/duration)-1.0)+begin;}float random(in vec3 scale,in float seed){return fract(sin(dot(gl_FragCoord.xyz+seed,scale))*43758.5453+seed);}vec3 crossFade(in vec2 uv,in float dissolve){return mix(texture2D(from,uv).rgb,texture2D(to,uv).rgb,dissolve);}void main(){vec2 texCoord=gl_FragCoord.xy/resolution.xy;vec2 center=vec2(Linear_ease(0.25,0.5,1.0,progress),0.5);float dissolve=Exponential_easeInOut(0.0,1.0,1.0,progress);float strength=Sinusoidal_easeInOut(0.0,strength,0.5,progress);vec3 color=vec3(0.0);float total=0.0;vec2 toCenter=center-texCoord;float offset=random(vec3(12.9898,78.233,151.7182),0.0);for(float t=0.0;t<=40.0;t++){float percent=(t+offset)/40.0;float weight=4.0*(percent-percent*percent);color+=crossFade(texCoord+toCenter*percent*strength,dissolve)*weight;total+=weight;}gl_FragColor=vec4(color/total,1.0);}"},{id:"ce9279de351984f0ad27",name:"Slide",owner:"rectalogic",uniforms:{translateX:1,translateY:0},html_url:"https://gist.github.com/ce9279de351984f0ad27",created_at:"2014-05-25T01:13:20Z",updated_at:"2015-08-29T14:01:48Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float translateX;uniform float translateY;void main(){vec2 texCoord=gl_FragCoord.xy/resolution.xy;float x=progress*translateX;float y=progress*translateY;if(x>=0.0&&y>=0.0){if(texCoord.x>=x&&texCoord.y>=y){gl_FragColor=texture2D(from,texCoord-vec2(x,y));}else{vec2 uv;if(x>0.0) uv=vec2(x-1.0,y);else if(y>0.0) uv=vec2(x,y-1.0);gl_FragColor=texture2D(to,texCoord-uv);}}else if(x<=0.0&&y<=0.0){if(texCoord.x<=(1.0+x)&&texCoord.y<=(1.0+y)) gl_FragColor=texture2D(from,texCoord-vec2(x,y));else{vec2 uv;if(x<0.0) uv=vec2(x+1.0,y);else if(y<0.0) uv=vec2(x,y+1.0);gl_FragColor=texture2D(to,texCoord-uv);}}else gl_FragColor=vec4(0.0);}"},{id:"154a99fbe5300fb5c279",name:"pinwheel",owner:"mrspeaker",uniforms:{},html_url:"https://gist.github.com/154a99fbe5300fb5c279",created_at:"2014-05-23T21:56:59Z",updated_at:"2015-08-29T14:01:45Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;float circPos=atan(p.y-0.5,p.x-0.5)+progress;float modPos=mod(circPos,3.1415/4.);float signed=sign(progress-modPos);float smoothed=smoothstep(0.,1.,signed);if(smoothed>0.5){gl_FragColor=texture2D(to,p);}else{gl_FragColor=texture2D(from,p);}}"},{id:"e54a807cdb66c8b16a34",name:"Kaleidoscope",owner:"nwoeanhinnogaehr",uniforms:{speed:1,angle:2,power:2},html_url:"https://gist.github.com/e54a807cdb66c8b16a34",created_at:"2014-05-23T19:02:46Z",updated_at:"2015-08-29T14:01:44Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float speed;uniform float angle;uniform float power;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 q=p;float t=pow(progress,power)*speed;p=p-0.5;for(int i=0;i<7;i++){p=vec2(sin(t)*p.x+cos(t)*p.y,sin(t)*p.y-cos(t)*p.x);t+=angle;p=abs(mod(p,2.0)-1.0);}abs(mod(p,1.0));gl_FragColor=mix(mix(texture2D(from,q),texture2D(to,q),progress),mix(texture2D(from,p),texture2D(to,p),progress),1.0-2.0*abs(progress-0.5));}"},{id:"408045772d255df97520",name:"SimpleFlip",owner:"nwoeanhinnogaehr",uniforms:{},html_url:"https://gist.github.com/408045772d255df97520",created_at:"2014-05-23T18:42:58Z",updated_at:"2015-08-29T14:01:44Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 q=p;p.x=(p.x-0.5)/abs(progress-0.5)*0.5+0.5;vec4 a=texture2D(from,p);vec4 b=texture2D(to,p);gl_FragColor=vec4(mix(a,b,step(0.5,progress)).rgb*step(abs(q.x-0.5),abs(progress-0.5)),1.0);}"},{id:"a070cbd69e2535e757f1",name:"DoomScreenTransition",owner:"zeh",uniforms:{barWidth:10,noise:.2,amplitude:2,frequency:1},html_url:"https://gist.github.com/a070cbd69e2535e757f1",created_at:"2014-05-23T18:00:18Z",updated_at:"2015-08-29T14:01:44Z",stars:1,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform int barWidth;uniform float amplitude;uniform float noise;uniform float frequency;float rand(int num){return fract(mod(float(num)*67123.313,12.0)*sin(float(num)*10.3)*cos(float(num)));}float wave(int num){float fn=float(num)*frequency*0.1*float(barWidth);return cos(fn*0.5)*cos(fn*0.13)*sin((fn+10.0)*0.3)/2.0+0.5;}float pos(int num){return noise==0.0?wave(num):mix(wave(num),rand(num),noise);}void main(){int bar=int(gl_FragCoord.x)/barWidth;float scale=1.0+pos(bar)*amplitude;float phase=progress*scale;float posY=gl_FragCoord.y/resolution.y;vec2 p;vec4 c;if(phase+posY<1.0){p=vec2(gl_FragCoord.x,gl_FragCoord.y+mix(0.0,resolution.y,phase))/resolution.xy;c=texture2D(from,p);}else{p=gl_FragCoord.xy/resolution.xy;c=texture2D(to,p);}gl_FragColor=c;}"},{id:"a830822b23e846e25d2d",name:"DreamyZoom",owner:"zeh",uniforms:{rotation:6,scale:1.2},html_url:"https://gist.github.com/a830822b23e846e25d2d",created_at:"2014-05-23T15:27:25Z",updated_at:"2015-08-29T14:01:44Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\n\n#define DEG2RAD 0.03926990816987241548078304229099 // 1/180*PI\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float rotation;uniform float scale;void main(){float phase=progress<0.5?progress*2.0:(progress-0.5)*2.0;float angleOffset=progress<0.5?mix(0.0,rotation*DEG2RAD,phase):mix(-rotation*DEG2RAD,0.0,phase);float newScale=progress<0.5?mix(1.0,scale,phase):mix(scale,1.0,phase);vec2 center=vec2(0,0);float maxRes=max(resolution.x,resolution.y);float resX=resolution.x/maxRes*0.5;float resY=resolution.y/maxRes*0.5;vec2 p=(gl_FragCoord.xy/maxRes-vec2(resX,resY))/newScale;float angle=atan(p.y,p.x)+angleOffset;float dist=distance(center,p);p.x=cos(angle)*dist+resX;p.y=sin(angle)*dist+resY;vec4 c=progress<0.5?texture2D(from,p):texture2D(to,p);gl_FragColor=c+(progress<0.5?mix(0.0,1.0,phase):mix(1.0,0.0,phase));}"},{id:"b6720916aa3f035949bc",name:"squareswipe",owner:"gre",uniforms:{squares:[10,10],direction:[1,-.5],smoothness:1.6},html_url:"https://gist.github.com/b6720916aa3f035949bc",created_at:"2014-05-23T12:09:38Z",updated_at:"2015-08-29T14:01:44Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform ivec2 squares;uniform vec2 direction;uniform float smoothness;const vec2 center=vec2(0.5,0.5);void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 v=normalize(direction);if(v!=vec2(0.0)) v/=abs(v.x)+abs(v.y);float d=v.x*center.x+v.y*center.y;float offset=smoothness;float pr=smoothstep(-offset,0.0,v.x*p.x+v.y*p.y-(d-0.5+progress*(1.+offset)));vec2 squarep=fract(p*vec2(squares));vec2 squaremin=vec2(pr/2.0);vec2 squaremax=vec2(1.0-pr/2.0);float a=all(lessThan(squaremin,squarep))&&all(lessThan(squarep,squaremax))?1.0:0.0;gl_FragColor=mix(texture2D(from,p),texture2D(to,p),a);}"},{id:"169781bb76f310e2bfde",name:"TilesWaveBottomLeftToTopRight",owner:"numb3r23",uniforms:{tileSize:[64,64],checkerDistance:0,flipX:!1,flipY:!1,preTileSingleColor:!1,postTileSingleColor:!1},html_url:"https://gist.github.com/169781bb76f310e2bfde",created_at:"2014-05-21T22:50:48Z",updated_at:"2015-08-29T14:01:42Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform vec2 tileSize;uniform float checkerDistance;uniform bool flipX;uniform bool flipY;uniform bool preTileSingleColor;uniform bool postTileSingleColor;vec2 tile2Global(vec2 tex,vec2 tileNum,bool tileSingleColor){vec2 perTile=tileSize/resolution.xy;return tileNum*perTile+(tileSingleColor?vec2(0):tex*perTile);}void main(void){vec2 uv=gl_FragCoord.xy/resolution.xy;vec4 fragColor=vec4(1,1,0,1);vec2 posInTile=mod(vec2(gl_FragCoord),tileSize);vec2 tileNum=floor(vec2(gl_FragCoord)/tileSize);int num=int(tileNum.x);vec2 totalTiles=ceil(resolution.xy/tileSize);float countTiles=totalTiles.x*totalTiles.y;vec2 perTile=ceil(tileSize/resolution.xy);float offset=0.0;offset=(tileNum.y+tileNum.x*perTile.y)/(sqrt(countTiles)*2.0);float timeOffset=(progress-offset)*countTiles;timeOffset=clamp(timeOffset,0.0,0.5);float sinTime=1.0-abs(cos(fract(timeOffset)*3.1415926));fragColor.rg=uv;fragColor.b=sinTime;vec2 texC=posInTile/tileSize;if(sinTime<=0.5){if(flipX){if((texC.x1.0-sinTime)){discard;}if(texC.x<0.5){texC.x=(texC.x-sinTime)*0.5/(0.5-sinTime);}else{texC.x=(texC.x-0.5)*0.5/(0.5-sinTime)+0.5;}}if(flipY){if((texC.y1.0-sinTime)){discard;}if(texC.y<0.5){texC.y=(texC.y-sinTime)*0.5/(0.5-sinTime);}else{texC.y=(texC.y-0.5)*0.5/(0.5-sinTime)+0.5;}}fragColor=texture2D(from,tile2Global(texC,tileNum,preTileSingleColor));}else{if(flipX){if((texC.x>sinTime)||(texC.x<1.0-sinTime)){discard;}if(texC.x<0.5){texC.x=(texC.x-sinTime)*0.5/(0.5-sinTime);}else{texC.x=(texC.x-0.5)*0.5/(0.5-sinTime)+0.5;}texC.x=1.0-texC.x;}if(flipY){if((texC.y>sinTime)||(texC.y<1.0-sinTime)){discard;}if(texC.y<0.5){texC.y=(texC.y-sinTime)*0.5/(0.5-sinTime);}else{texC.y=(texC.y-0.5)*0.5/(0.5-sinTime)+0.5;}texC.y=1.0-texC.y;}fragColor.rgb=texture2D(to,tile2Global(texC,tileNum,postTileSingleColor)).rgb;}gl_FragColor=fragColor;}"},{id:"5ebd3442a208861c7a8a",name:"TilesScanline",owner:"numb3r23",uniforms:{},html_url:"https://gist.github.com/5ebd3442a208861c7a8a",created_at:"2014-05-21T22:49:22Z",updated_at:"2015-08-29T14:01:42Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;const vec2 tileSize=vec2(64,64);const float checkerDistance=0.015;const bool flipX=true;const bool flipY=false;const bool preTileSingleColor=false;const bool postTileSingleColor=false;vec2 tile2Global(vec2 tex,vec2 tileNum,bool tileSingleColor){vec2 perTile=tileSize/resolution.xy;return tileNum*perTile+(tileSingleColor?vec2(0):tex*perTile);}void main(void){vec2 uv=gl_FragCoord.xy/resolution.xy;vec4 fragColor=vec4(1,1,0,1);vec2 posInTile=mod(vec2(gl_FragCoord),tileSize);vec2 tileNum=floor(vec2(gl_FragCoord)/tileSize);int num=int(tileNum.x);vec2 totalTiles=ceil(resolution.xy/tileSize);float countTiles=totalTiles.x*totalTiles.y;vec2 perTile=ceil(tileSize/resolution.xy);float offset=0.0;offset=(tileNum.x+tileNum.y*totalTiles.x)/countTiles;float timeOffset=(progress-offset)*countTiles;timeOffset=clamp(timeOffset,0.0,0.5);float sinTime=1.0-abs(cos(fract(timeOffset)*3.1415926));fragColor.rg=uv;fragColor.b=sinTime;vec2 texC=posInTile/tileSize;if(sinTime<=0.5){if(flipX){if((texC.x1.0-sinTime)){discard;}if(texC.x<0.5){texC.x=(texC.x-sinTime)*0.5/(0.5-sinTime);}else{texC.x=(texC.x-0.5)*0.5/(0.5-sinTime)+0.5;}}if(flipY){if((texC.y1.0-sinTime)){discard;}if(texC.y<0.5){texC.y=(texC.y-sinTime)*0.5/(0.5-sinTime);}else{texC.y=(texC.y-0.5)*0.5/(0.5-sinTime)+0.5;}}fragColor=texture2D(from,tile2Global(texC,tileNum,preTileSingleColor));}else{if(flipX){if((texC.x>sinTime)||(texC.x<1.0-sinTime)){discard;}if(texC.x<0.5){texC.x=(texC.x-sinTime)*0.5/(0.5-sinTime);}else{texC.x=(texC.x-0.5)*0.5/(0.5-sinTime)+0.5;}texC.x=1.0-texC.x;}if(flipY){if((texC.y>sinTime)||(texC.y<1.0-sinTime)){discard;}if(texC.y<0.5){texC.y=(texC.y-sinTime)*0.5/(0.5-sinTime);}else{texC.y=(texC.y-0.5)*0.5/(0.5-sinTime)+0.5;}texC.y=1.0-texC.y;}fragColor.rgb=texture2D(to,tile2Global(texC,tileNum,postTileSingleColor)).rgb;}gl_FragColor=fragColor;}"},{id:"9e86d2712e123542758b",name:"Dreamy",owner:"mikolalysenko",uniforms:{},html_url:"https://gist.github.com/9e86d2712e123542758b",created_at:"2014-05-21T14:55:01Z",updated_at:"2015-08-29T14:01:39Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;vec2 offset(float progress,float x,float theta){float phase=progress*progress+progress+theta;float shifty=0.03*progress*cos(10.0*(progress+x));return vec2(0,shifty);}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;gl_FragColor=mix(texture2D(from,p+offset(progress,p.x,0.0)),texture2D(to,p+offset(1.0-progress,p.x,3.14)),progress);}"},{id:"21d2fdd24c706952dc8c",name:"AdvancedMosaic",owner:"corporateshark",uniforms:{},html_url:"https://gist.github.com/21d2fdd24c706952dc8c",created_at:"2014-05-21T14:45:52Z",updated_at:"2015-08-29T14:01:39Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;void main(void){vec2 p=gl_FragCoord.xy/resolution.xy;float T=progress;float S0=1.0;float S1=50.0;float S2=1.0;float Half=0.5;float PixelSize=(Tprogress?fTex:tTex,tTex,pow(progress,interpolationPower));}"},{id:"b93818de23d4511fde10",name:"Dissolve",owner:"nwoeanhinnogaehr",uniforms:{blocksize:1},html_url:"https://gist.github.com/b93818de23d4511fde10",created_at:"2014-05-20T23:40:57Z",updated_at:"2015-08-29T14:01:38Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float blocksize;float rand(vec2 co){return fract(sin(dot(co,vec2(12.9898,78.233)))*43758.5453);}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;gl_FragColor=mix(texture2D(from,p),texture2D(to,p),step(rand(floor(gl_FragCoord.xy/blocksize)),progress));}"},{id:"b185145363d65751009b",name:"HSVfade",owner:"nwoeanhinnogaehr",uniforms:{},html_url:"https://gist.github.com/b185145363d65751009b",created_at:"2014-05-20T23:21:27Z",updated_at:"2015-08-29T14:01:38Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;vec3 hsv2rgb(vec3 c){const vec4 K=vec4(1.0,2.0/3.0,1.0/3.0,3.0);vec3 p=abs(fract(c.xxx+K.xyz)*6.0-K.www);return c.z*mix(K.xxx,clamp(p-K.xxx,0.0,1.0),c.y);}vec3 rgb2hsv(vec3 c){const vec4 K=vec4(0.0,-1.0/3.0,2.0/3.0,-1.0);vec4 p=mix(vec4(c.bg,K.wz),vec4(c.gb,K.xy),step(c.b,c.g));vec4 q=mix(vec4(p.xyw,c.r),vec4(c.r,p.yzx),step(p.x,c.r));float d=q.x-min(q.w,q.y);return vec3(abs(q.z+(q.w-q.y)/(6.0*d+0.001)),d/(q.x+0.001),q.x);}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec3 a=rgb2hsv(texture2D(from,p).rgb);vec3 b=rgb2hsv(texture2D(to,p).rgb);vec3 m=mix(a,b,progress);gl_FragColor=vec4(hsv2rgb(m),1.0);}"},{id:"f6fc39f4cfcbb97f96a6",name:"Fold",owner:"nwoeanhinnogaehr",uniforms:{},html_url:"https://gist.github.com/f6fc39f4cfcbb97f96a6",created_at:"2014-05-20T23:14:23Z",updated_at:"2015-08-29T14:01:38Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec4 a=texture2D(from,(p-vec2(progress,0.0))/vec2(1.0-progress,1.0));vec4 b=texture2D(to,p/vec2(progress,1.0));gl_FragColor=mix(a,b,step(p.x,progress));}"},{id:"80c2d40cac3f98453176",name:"linearblur",owner:"gre",uniforms:{intensity:.1},html_url:"https://gist.github.com/80c2d40cac3f98453176",created_at:"2014-05-20T22:02:35Z",updated_at:"2015-08-29T14:01:38Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float intensity;const int PASSES=8;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec4 c1=vec4(0.0),c2=vec4(0.0);float disp=intensity*(0.5-distance(0.5,progress));for(int xi=0;xi2.0) return color1;float dd=pow(1.0-distanc/2.0,sharpness);return ((color2-color1)*dd)+color1;}float distanceToEdge(vec3 point){float dx=abs(point.x>0.5?1.0-point.x:point.x);float dy=abs(point.y>0.5?1.0-point.y:point.y);if(point.x<0.0) dx=-point.x;if(point.x>1.0) dx=point.x-1.0;if(point.y<0.0) dy=-point.y;if(point.y>1.0) dy=point.y-1.0;if((point.x<0.0||point.x>1.0)&&(point.y<0.0||point.y>1.0)) return sqrt(dx*dx+dy*dy);return min(dx,dy);}vec4 seeThrough(float yc,vec2 p,mat3 rotation,mat3 rrotation){float hitAngle=PI-(acos(yc/cylinderRadius)-cylinderAngle);vec3 point=hitPoint(hitAngle,yc,rotation*vec3(p,1.0),rrotation);if(yc<=0.0&&(point.x<0.0||point.y<0.0||point.x>1.0||point.y>1.0)){vec2 texCoord=gl_FragCoord.xy/resolution.xy;return texture2D(to,texCoord);}if(yc>0.0) return texture2D(from,p);vec4 color=texture2D(from,point.xy);vec4 tcolor=vec4(0.0);return antiAlias(color,tcolor,distanceToEdge(point));}vec4 seeThroughWithShadow(float yc,vec2 p,vec3 point,mat3 rotation,mat3 rrotation){float shadow=distanceToEdge(point)*30.0;shadow=(1.0-shadow)/3.0;if(shadow<0.0) shadow=0.0;else shadow*=amount;vec4 shadowColor=seeThrough(yc,p,rotation,rrotation);shadowColor.r-=shadow;shadowColor.g-=shadow;shadowColor.b-=shadow;return shadowColor;}vec4 backside(float yc,vec3 point){vec4 color=texture2D(from,point.xy);float gray=(color.r+color.b+color.g)/15.0;gray+=(8.0/10.0)*(pow(1.0-abs(yc/cylinderRadius),2.0/10.0)/2.0+(5.0/10.0));color.rgb=vec3(gray);return color;}vec4 behindSurface(float yc,vec3 point,mat3 rrotation){float shado=(1.0-((-cylinderRadius-yc)/amount*7.0))/6.0;shado*=1.0-abs(point.x-0.5);yc=(-cylinderRadius-cylinderRadius-yc);float hitAngle=(acos(yc/cylinderRadius)+cylinderAngle)-PI;point=hitPoint(hitAngle,yc,point,rrotation);if(yc<0.0&&point.x>=0.0&&point.y>=0.0&&point.x<=1.0&&point.y<=1.0&&(hitAngle0.5)){shado=1.0-(sqrt(pow(point.x-0.5,2.0)+pow(point.y-0.5,2.0))/(71.0/100.0));shado*=pow(-yc/cylinderRadius,3.0);shado*=0.5;}else{shado=0.0;}vec2 texCoord=gl_FragCoord.xy/resolution.xy;return vec4(texture2D(to,texCoord).rgb-shado,1.0);}void main(){vec2 texCoord=gl_FragCoord.xy/resolution.xy;const float angle=30.0*PI/180.0;float c=cos(-angle);float s=sin(-angle);mat3 rotation=mat3(c,s,0,-s,c,0,0.12,0.258,1);c=cos(angle);s=sin(angle);mat3 rrotation=mat3(c,s,0,-s,c,0,0.15,-0.5,1);vec3 point=rotation*vec3(texCoord,1.0);float yc=point.y-cylinderCenter;if(yc<-cylinderRadius){gl_FragColor=behindSurface(yc,point,rrotation);return;}if(yc>cylinderRadius){gl_FragColor=texture2D(from,texCoord);return;}float hitAngle=(acos(yc/cylinderRadius)+cylinderAngle)-PI;float hitAngleMod=mod(hitAngle,2.0*PI);if((hitAngleMod>PI&&amount<0.5)||(hitAngleMod>PI/2.0&&amount<0.0)){gl_FragColor=seeThrough(yc,texCoord,rotation,rrotation);return;}point=hitPoint(hitAngle,yc,point,rrotation);if(point.x<0.0||point.y<0.0||point.x>1.0||point.y>1.0){gl_FragColor=seeThroughWithShadow(yc,texCoord,point,rotation,rrotation);return;}vec4 color=backside(yc,point);vec4 otherColor;if(yc<0.0){float shado=1.0-(sqrt(pow(point.x-0.5,2.0)+pow(point.y-0.5,2.0))/0.71);shado*=pow(-yc/cylinderRadius,3.0);shado*=0.5;otherColor=vec4(0.0,0.0,0.0,shado);}else{otherColor=texture2D(from,texCoord);}color=antiAlias(color,otherColor,cylinderRadius-abs(yc));vec4 cl=seeThroughWithShadow(yc,texCoord,point,rotation,rrotation);float dist=distanceToEdge(point);gl_FragColor=antiAlias(color,cl,dist);}" -},{id:"06450f79cab706705bf9",name:"Polka_dots",owner:"bobylito",uniforms:{dots:5},html_url:"https://gist.github.com/06450f79cab706705bf9",created_at:"2014-05-20T12:09:38Z",updated_at:"2015-08-29T14:01:37Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float dots;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;float x=progress;bool nextImage=distance(fract(p*dots),vec2(0.5,0.5)).5){gl_FragColor=texture2D(to,mrp);}else{gl_FragColor=texture2D(from,mrp);}}"},{id:"ce1d48f0ce00bb379750",name:"Radial",owner:"Xaychru",uniforms:{},html_url:"https://gist.github.com/ce1d48f0ce00bb379750",created_at:"2014-05-19T15:18:28Z",updated_at:"2015-08-29T14:01:36Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\n\n#define PI 3.141592653589\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 rp=p*2.-1.;float a=atan(rp.y,rp.x);float pa=progress*PI*2.5-PI*1.25;vec4 fromc=texture2D(from,p);vec4 toc=texture2D(to,p);if(a>pa){gl_FragColor=mix(toc,fromc,smoothstep(0.,1.,(a-pa)));}else{gl_FragColor=toc;}}"},{id:"c3bc914de09227713787",name:"ButterflyWaveScrawler",owner:"mandubian",uniforms:{amplitude:1,waves:30,colorSeparation:.3},html_url:"https://gist.github.com/c3bc914de09227713787",created_at:"2014-05-19T11:48:15Z",updated_at:"2015-08-29T14:01:36Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float amplitude;uniform float waves;uniform float colorSeparation;float PI=3.14159265358979323846264;float compute(vec2 p,float progress,vec2 center){vec2 o=p*sin(progress*amplitude)-center;vec2 h=vec2(1.,0.);float theta=acos(dot(o,h))*waves;return (exp(cos(theta))-2.*cos(4.*theta)+pow(sin((2.*theta-PI)/24.),5.))/10.;}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;float inv=1.-progress;vec2 dir=p-vec2(.5);float dist=length(dir);float disp=compute(p,progress,vec2(0.5,0.5));vec4 texTo=texture2D(to,p+inv*disp);vec4 texFrom=vec4(texture2D(from,p+progress*disp*(1.0-colorSeparation)).r,texture2D(from,p+progress*disp).g,texture2D(from,p+progress*disp*(1.0+colorSeparation)).b,1.0);gl_FragColor=texTo*progress+texFrom*inv;}"},{id:"4268c81d39bd4ca00ae2",name:"CrazyParametricFun",owner:"mandubian",uniforms:{a:4,b:1,amplitude:120,smoothness:.1},html_url:"https://gist.github.com/4268c81d39bd4ca00ae2",created_at:"2014-05-19T08:04:52Z",updated_at:"2015-08-29T14:01:36Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float a;uniform float b;uniform float amplitude;uniform float smoothness;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 dir=p-vec2(.5);float dist=length(dir);float x=(a-b)*cos(progress)+b*cos(progress*((a/b)-1.));float y=(a-b)*sin(progress)-b*sin(progress*((a/b)-1.));vec2 offset=dir*vec2(sin(progress*dist*amplitude*x),sin(progress*dist*amplitude*y))/smoothness;gl_FragColor=mix(texture2D(from,p+offset),texture2D(to,p),smoothstep(0.2,1.0,progress));}"},{id:"2bcfb59096fcaed82355",name:"powerdisformation",owner:"gre",uniforms:{power:3,powerDest:!0},html_url:"https://gist.github.com/2bcfb59096fcaed82355",created_at:"2014-05-17T10:58:29Z",updated_at:"2015-08-29T14:01:31Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from,to;uniform float progress;uniform vec2 resolution;uniform float power;uniform bool powerDest;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 p2=mix(p,vec2(pow(p.x,power),pow(p.y,power)),(powerDest?0.5:1.0)-distance(progress,powerDest?0.5:1.0));gl_FragColor=mix(texture2D(from,p2),texture2D(to,powerDest?p2:p),progress);}"},{id:"2a3f2e907e1c0a152e60",name:"swap",owner:"gre",uniforms:{reflection:.4,perspective:.2,depth:3},html_url:"https://gist.github.com/2a3f2e907e1c0a152e60",created_at:"2014-05-16T13:59:07Z",updated_at:"2015-08-29T14:01:30Z",stars:1,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float reflection;uniform float perspective;uniform float depth;const vec4 black=vec4(0.0,0.0,0.0,1.0);const vec2 boundMin=vec2(0.0,0.0);const vec2 boundMax=vec2(1.0,1.0);bool inBounds(vec2 p){return all(lessThan(boundMin,p))&&all(lessThan(p,boundMax));}vec2 project(vec2 p){return p*vec2(1.0,-1.2)+vec2(0.0,-0.02);}vec4 bgColor(vec2 p,vec2 pfr,vec2 pto){vec4 c=black;pfr=project(pfr);if(inBounds(pfr)){c+=mix(black,texture2D(from,pfr),reflection*mix(1.0,0.0,pfr.y));}pto=project(pto);if(inBounds(pto)){c+=mix(black,texture2D(to,pto),reflection*mix(1.0,0.0,pto.y));}return c;}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 pfr,pto=vec2(-1.);float size=mix(1.0,depth,progress);float persp=perspective*progress;pfr=(p+vec2(-0.0,-0.5))*vec2(size/(1.0-perspective*progress),size/(1.0-size*persp*p.x))+vec2(0.0,0.5);size=mix(1.0,depth,1.-progress);persp=perspective*(1.-progress);pto=(p+vec2(-1.0,-0.5))*vec2(size/(1.0-perspective*(1.0-progress)),size/(1.0-size*persp*(0.5-p.x)))+vec2(1.0,0.5);bool fromOver=progress<0.5;if(fromOver){if(inBounds(pfr)){gl_FragColor=texture2D(from,pfr);}else if(inBounds(pto)){gl_FragColor=texture2D(to,pto);}else{gl_FragColor=bgColor(p,pfr,pto);}}else{if(inBounds(pto)){gl_FragColor=texture2D(to,pto);}else if(inBounds(pfr)){gl_FragColor=texture2D(from,pfr);}else{gl_FragColor=bgColor(p,pfr,pto);}}}"},{id:"94ffa2725b65aa8b9979",name:"ripple",owner:"gre",uniforms:{amplitude:100,speed:50},html_url:"https://gist.github.com/94ffa2725b65aa8b9979",created_at:"2014-05-16T13:58:42Z",updated_at:"2015-08-29T14:01:30Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float amplitude;uniform float speed;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 dir=p-vec2(.5);float dist=length(dir);vec2 offset=dir*(sin(progress*dist*amplitude-progress*speed)+.5)/30.;gl_FragColor=mix(texture2D(from,p+offset),texture2D(to,p),smoothstep(0.2,1.0,progress));}"},{id:"99bced7d9b5311fd166e",name:"flash",owner:"gre",uniforms:{flashPhase:.3,flashIntensity:3,flashZoomEffect:.5},html_url:"https://gist.github.com/99bced7d9b5311fd166e",created_at:"2014-05-16T13:58:17Z",updated_at:"2015-08-29T14:01:30Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float flashPhase;uniform float flashIntensity;uniform float flashZoomEffect;const vec3 flashColor=vec3(1.0,0.8,0.3);const float flashVelocity=3.0;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec4 fc=texture2D(from,p);vec4 tc=texture2D(to,p);float intensity=mix(1.0,2.0*distance(p,vec2(0.5,0.5)),flashZoomEffect)*flashIntensity*pow(smoothstep(flashPhase,0.0,distance(0.5,progress)),flashVelocity);vec4 c=mix(texture2D(from,p),texture2D(to,p),smoothstep(0.5*(1.0-flashPhase),0.5*(1.0+flashPhase),progress));c+=intensity*vec4(flashColor,1.0);gl_FragColor=c;}"},{id:"81c6f2e6fce88f9075d2",name:"flyeye",owner:"gre",uniforms:{size:.04,zoom:30,colorSeparation:.3},html_url:"https://gist.github.com/81c6f2e6fce88f9075d2",created_at:"2014-05-16T13:56:53Z",updated_at:"2015-08-29T14:01:30Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float size;uniform float zoom;uniform float colorSeparation;void main(){vec2 p=gl_FragCoord.xy/resolution.xy;float inv=1.-progress;vec2 disp=size*vec2(cos(zoom*p.x),sin(zoom*p.y));vec4 texTo=texture2D(to,p+inv*disp);vec4 texFrom=vec4(texture2D(from,p+progress*disp*(1.0-colorSeparation)).r,texture2D(from,p+progress*disp).g,texture2D(from,p+progress*disp*(1.0+colorSeparation)).b,1.0);gl_FragColor=texTo*progress+texFrom*inv;}"},{id:"979934722820b5e715fa",name:"doorway",owner:"gre",uniforms:{reflection:.4,perspective:.4,depth:3},html_url:"https://gist.github.com/979934722820b5e715fa",created_at:"2014-05-16T13:54:38Z",updated_at:"2015-08-29T14:01:30Z",stars:1,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float reflection;uniform float perspective;uniform float depth;const vec4 black=vec4(0.0,0.0,0.0,1.0);const vec2 boundMin=vec2(0.0,0.0);const vec2 boundMax=vec2(1.0,1.0);bool inBounds(vec2 p){return all(lessThan(boundMin,p))&&all(lessThan(p,boundMax));}vec2 project(vec2 p){return p*vec2(1.0,-1.2)+vec2(0.0,-0.02);}vec4 bgColor(vec2 p,vec2 pto){vec4 c=black;pto=project(pto);if(inBounds(pto)){c+=mix(black,texture2D(to,pto),reflection*mix(1.0,0.0,pto.y));}return c;}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 pfr=vec2(-1.),pto=vec2(-1.);float middleSlit=2.0*abs(p.x-0.5)-progress;if(middleSlit>0.0){pfr=p+(p.x>0.5?-1.0:1.0)*vec2(0.5*progress,0.0);float d=1.0/(1.0+perspective*progress*(1.0-middleSlit));pfr.y-=d/2.;pfr.y*=d;pfr.y+=d/2.;}float size=mix(1.0,depth,1.-progress);pto=(p+vec2(-0.5,-0.5))*vec2(size,size)+vec2(0.5,0.5);if(inBounds(pfr)){gl_FragColor=texture2D(from,pfr);}else if(inBounds(pto)){gl_FragColor=texture2D(to,pto);}else{gl_FragColor=bgColor(p,pto);}}"},{id:"731fcad4f8956866f34a",name:"randomsquares",owner:"gre",uniforms:{size:[10,10],smoothness:.5},html_url:"https://gist.github.com/731fcad4f8956866f34a",created_at:"2014-05-16T13:52:46Z",updated_at:"2015-08-29T14:01:30Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform ivec2 size;uniform float smoothness;float rand(vec2 co){return fract(sin(dot(co.xy,vec2(12.9898,78.233)))*43758.5453);}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;float r=rand(floor(vec2(size)*p));float m=smoothstep(0.0,-smoothness,r-(progress*(1.0+smoothness)));gl_FragColor=mix(texture2D(from,p),texture2D(to,p),m);}"},{id:"df8797fd112e8e429064",name:"squeeze",owner:"gre",uniforms:{colorSeparation:.02},html_url:"https://gist.github.com/df8797fd112e8e429064",created_at:"2014-05-16T13:51:39Z",updated_at:"2015-08-29T14:01:30Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float colorSeparation;float progressY(float y){return 0.5+(y-0.5)/(1.0-progress);}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;float y=progressY(p.y);if(y<0.0||y>1.0){gl_FragColor=texture2D(to,p);}else{vec2 fp=vec2(p.x,y);vec3 c=vec3(texture2D(from,fp-progress*vec2(0.0,colorSeparation)).r,texture2D(from,fp).g,texture2D(from,fp+progress*vec2(0.0,colorSeparation)).b);gl_FragColor=vec4(c,1.0);}}"},{id:"90000743fedc953f11a4",name:"directionalwipe",owner:"gre",uniforms:{direction:[1,-1],smoothness:.5},html_url:"https://gist.github.com/90000743fedc953f11a4",created_at:"2014-05-16T13:50:51Z",updated_at:"2015-08-29T14:01:30Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform vec2 direction;uniform float smoothness;const vec2 center=vec2(0.5,0.5);void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec2 v=normalize(direction);v/=abs(v.x)+abs(v.y);float d=v.x*center.x+v.y*center.y;float m=smoothstep(-smoothness,0.0,v.x*p.x+v.y*p.y-(d-0.5+progress*(1.+smoothness)));gl_FragColor=mix(texture2D(to,p),texture2D(from,p),m);}"},{id:"7de3f4b9482d2b0bf7bb",name:"wind",owner:"gre",uniforms:{size:.2},html_url:"https://gist.github.com/7de3f4b9482d2b0bf7bb",created_at:"2014-05-16T13:49:36Z",updated_at:"2015-08-29T14:01:30Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float size;float rand(vec2 co){return fract(sin(dot(co.xy,vec2(12.9898,78.233)))*43758.5453);}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;float r=rand(vec2(0,p.y));float m=smoothstep(0.0,-size,p.x*(1.0-size)+size*r-(progress*(1.0+size)));gl_FragColor=mix(texture2D(from,p),texture2D(to,p),m);}"},{id:"d9f8b4df19584f1f0474",name:"fadegrayscale",owner:"gre",uniforms:{grayPhase:.3},html_url:"https://gist.github.com/d9f8b4df19584f1f0474",created_at:"2014-05-16T13:49:13Z",updated_at:"2015-08-29T14:01:30Z",stars:0,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float grayPhase;vec3 grayscale(vec3 color){return vec3(0.2126*color.r+0.7152*color.g+0.0722*color.b);}void main(){vec2 p=gl_FragCoord.xy/resolution.xy;vec4 fc=texture2D(from,p);vec4 tc=texture2D(to,p);gl_FragColor=mix(mix(vec4(grayscale(fc.rgb),1.0),texture2D(from,p),smoothstep(1.0-grayPhase,0.0,progress)),mix(vec4(grayscale(tc.rgb),1.0),texture2D(to,p),smoothstep(grayPhase,1.0,progress)),progress);}"},{id:"206b96128ad6085f9911",name:"dispersionblur",owner:"gre",uniforms:{size:.6},html_url:"https://gist.github.com/206b96128ad6085f9911",created_at:"2014-05-16T13:47:09Z",updated_at:"2015-08-29T14:01:30Z",stars:1,glsl:"\n#ifdef GL_ES\nprecision highp float;\n#endif\n\n#define QUALITY 32\nuniform sampler2D from;uniform sampler2D to;uniform float progress;uniform vec2 resolution;uniform float size;const float GOLDEN_ANGLE=2.399963229728653;vec4 blur(sampler2D t,vec2 c,float radius){vec4 sum=vec4(0.0);float q=float(QUALITY);for(int i=0;i AdvancedEffects); diff --git a/Examples/AdvancedEffects/index.ios.js b/Examples/AdvancedEffects/index.ios.js index 38438d30e7800b15e017a31c9dc319a652b14426..362c52f1de8c4b3012370c0f5b1b2a7ea11d506c 100644 --- a/Examples/AdvancedEffects/index.ios.js +++ b/Examples/AdvancedEffects/index.ios.js @@ -1,3 +1,5 @@ -const { AppRegistry } = require("react-native"); +const { AppRegistry, StatusBarIOS } = require("react-native"); const AdvancedEffects = require("./src"); + +StatusBarIOS.setHidden(true); AppRegistry.registerComponent("AdvancedEffects", () => AdvancedEffects); diff --git a/Examples/AdvancedEffects/AdvancedEffects.xcodeproj/project.pbxproj b/Examples/AdvancedEffects/ios/AdvancedEffects.xcodeproj/project.pbxproj similarity index 73% rename from Examples/AdvancedEffects/AdvancedEffects.xcodeproj/project.pbxproj rename to Examples/AdvancedEffects/ios/AdvancedEffects.xcodeproj/project.pbxproj index ee8a74708b62af1c9a4dea583bdbbfe23e6f101b..26fbef0c5678b2ee82a006fb41c84741560f5f2a 100644 --- a/Examples/AdvancedEffects/AdvancedEffects.xcodeproj/project.pbxproj +++ b/Examples/AdvancedEffects/ios/AdvancedEffects.xcodeproj/project.pbxproj @@ -7,12 +7,12 @@ objects = { /* Begin PBXBuildFile section */ - 008F07F31AC5B25A0029DE68 /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 008F07F21AC5B25A0029DE68 /* main.jsbundle */; }; 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */; }; 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */; }; 00C302E81ABCBA2D00DB3ED1 /* libRCTImage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302C01ABCB91800DB3ED1 /* libRCTImage.a */; }; 00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302DC1ABCB9D200DB3ED1 /* libRCTNetwork.a */; }; 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302E41ABCB9EE00DB3ED1 /* libRCTVibration.a */; }; + 00E356F31AD99517003FC87E /* AdvancedEffectsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* AdvancedEffectsTests.m */; }; 133E29F31AD74F7200F7D852 /* libRCTLinking.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C398B91ACF4ADC00677621 /* libRCTLinking.a */; }; 139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139105C11AF99BAD00B5F7CC /* libRCTSettings.a */; }; 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139FDEF41B06529B00C62182 /* libRCTWebSocket.a */; }; @@ -21,7 +21,7 @@ 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; - 340554DC1B8226B9009D567B /* libRNGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 340554D91B822545009D567B /* libRNGL.a */; }; + 3425F3031C03B5EE00139EC9 /* libRNGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34582C661BEFE6BA0093A350 /* libRNGL.a */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; /* End PBXBuildFile section */ @@ -61,6 +61,13 @@ remoteGlobalIDString = 832C81801AAF6DEF007FA2F7; remoteInfo = RCTVibration; }; + 00E356F41AD99517003FC87E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 13B07F861A680F5B00A75B9A; + remoteInfo = AdvancedEffects; + }; 139105C01AF99BAD00B5F7CC /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */; @@ -82,20 +89,13 @@ remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; remoteInfo = React; }; - 340554D81B822545009D567B /* PBXContainerItemProxy */ = { + 34582C651BEFE6BA0093A350 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 340554D11B822545009D567B /* RNGL.xcodeproj */; + containerPortal = 34582C571BEFE6BA0093A350 /* RNGL.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 34B330031B821571003856F8; + remoteGlobalIDString = 4107012F1ACB723B00C6AA39; remoteInfo = RNGL; }; - 340554DA1B822545009D567B /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 340554D11B822545009D567B /* RNGL.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 34B3300E1B821571003856F8; - remoteInfo = RNGLTests; - }; 78C398B81ACF4ADC00677621 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */; @@ -113,33 +113,43 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = main.jsbundle; path = iOS/main.jsbundle; sourceTree = ""; }; - 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTActionSheet.xcodeproj; path = "node_modules/react-native/Libraries/ActionSheetIOS/RCTActionSheet.xcodeproj"; sourceTree = ""; }; - 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTGeolocation.xcodeproj; path = "node_modules/react-native/Libraries/Geolocation/RCTGeolocation.xcodeproj"; sourceTree = ""; }; - 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTImage.xcodeproj; path = "node_modules/react-native/Libraries/Image/RCTImage.xcodeproj"; sourceTree = ""; }; - 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTNetwork.xcodeproj; path = "node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj"; sourceTree = ""; }; - 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTVibration.xcodeproj; path = "node_modules/react-native/Libraries/Vibration/RCTVibration.xcodeproj"; sourceTree = ""; }; - 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTSettings.xcodeproj; path = "node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj"; sourceTree = ""; }; - 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWebSocket.xcodeproj; path = "node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; }; + 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = ""; }; + 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTActionSheet.xcodeproj; path = "../node_modules/react-native/Libraries/ActionSheetIOS/RCTActionSheet.xcodeproj"; sourceTree = ""; }; + 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTGeolocation.xcodeproj; path = "../node_modules/react-native/Libraries/Geolocation/RCTGeolocation.xcodeproj"; sourceTree = ""; }; + 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTImage.xcodeproj; path = "../node_modules/react-native/Libraries/Image/RCTImage.xcodeproj"; sourceTree = ""; }; + 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTNetwork.xcodeproj; path = "../node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj"; sourceTree = ""; }; + 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTVibration.xcodeproj; path = "../node_modules/react-native/Libraries/Vibration/RCTVibration.xcodeproj"; sourceTree = ""; }; + 00E356EE1AD99517003FC87E /* AdvancedEffectsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = AdvancedEffectsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 00E356F21AD99517003FC87E /* AdvancedEffectsTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AdvancedEffectsTests.m; sourceTree = ""; }; + 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTSettings.xcodeproj; path = "../node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj"; sourceTree = ""; }; + 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWebSocket.xcodeproj; path = "../node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* AdvancedEffects.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AdvancedEffects.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = iOS/AppDelegate.h; sourceTree = ""; }; - 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = iOS/AppDelegate.m; sourceTree = ""; }; + 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = AdvancedEffects/AppDelegate.h; sourceTree = ""; }; + 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = AdvancedEffects/AppDelegate.m; sourceTree = ""; }; 13B07FB21A68108700A75B9A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; - 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = iOS/Images.xcassets; sourceTree = ""; }; - 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = iOS/Info.plist; sourceTree = ""; }; - 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = iOS/main.m; sourceTree = ""; }; - 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; - 340554D11B822545009D567B /* RNGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGL.xcodeproj; path = "node_modules/gl-react-native/RNGL.xcodeproj"; sourceTree = ""; }; - 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; - 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; + 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = AdvancedEffects/Images.xcassets; sourceTree = ""; }; + 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = AdvancedEffects/Info.plist; sourceTree = ""; }; + 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = AdvancedEffects/main.m; sourceTree = ""; }; + 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; + 34582C571BEFE6BA0093A350 /* RNGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGL.xcodeproj; path = "../node_modules/gl-react-native/ios/RNGL.xcodeproj"; sourceTree = ""; }; + 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; + 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 00E356EB1AD99517003FC87E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 13B07F8C1A680F5B00A75B9A /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 340554DC1B8226B9009D567B /* libRNGL.a in Frameworks */, + 3425F3031C03B5EE00139EC9 /* libRNGL.a in Frameworks */, 146834051AC3E58100842450 /* libReact.a in Frameworks */, 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */, 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */, @@ -196,6 +206,23 @@ name = Products; sourceTree = ""; }; + 00E356EF1AD99517003FC87E /* AdvancedEffectsTests */ = { + isa = PBXGroup; + children = ( + 00E356F21AD99517003FC87E /* AdvancedEffectsTests.m */, + 00E356F01AD99517003FC87E /* Supporting Files */, + ); + path = AdvancedEffectsTests; + sourceTree = ""; + }; + 00E356F01AD99517003FC87E /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 00E356F11AD99517003FC87E /* Info.plist */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; 139105B71AF99BAD00B5F7CC /* Products */ = { isa = PBXGroup; children = ( @@ -234,11 +261,10 @@ name = Products; sourceTree = ""; }; - 340554D21B822545009D567B /* Products */ = { + 34582C581BEFE6BA0093A350 /* Products */ = { isa = PBXGroup; children = ( - 340554D91B822545009D567B /* libRNGL.a */, - 340554DB1B822545009D567B /* RNGLTests.xctest */, + 34582C661BEFE6BA0093A350 /* libRNGL.a */, ); name = Products; sourceTree = ""; @@ -254,6 +280,7 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( + 34582C571BEFE6BA0093A350 /* RNGL.xcodeproj */, 146833FF1AC3E56700842450 /* React.xcodeproj */, 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */, 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */, @@ -264,7 +291,6 @@ 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */, 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */, 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */, - 340554D11B822545009D567B /* RNGL.xcodeproj */, ); name = Libraries; sourceTree = ""; @@ -282,6 +308,7 @@ children = ( 13B07FAE1A68108700A75B9A /* AdvancedEffects */, 832341AE1AAA6A7D00B99B32 /* Libraries */, + 00E356EF1AD99517003FC87E /* AdvancedEffectsTests */, 83CBBA001A601CBA00E9B192 /* Products */, ); indentWidth = 2; @@ -292,6 +319,7 @@ isa = PBXGroup; children = ( 13B07F961A680F5B00A75B9A /* AdvancedEffects.app */, + 00E356EE1AD99517003FC87E /* AdvancedEffectsTests.xctest */, ); name = Products; sourceTree = ""; @@ -299,6 +327,24 @@ /* End PBXGroup section */ /* Begin PBXNativeTarget section */ + 00E356ED1AD99517003FC87E /* AdvancedEffectsTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "AdvancedEffectsTests" */; + buildPhases = ( + 00E356EA1AD99517003FC87E /* Sources */, + 00E356EB1AD99517003FC87E /* Frameworks */, + 00E356EC1AD99517003FC87E /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 00E356F51AD99517003FC87E /* PBXTargetDependency */, + ); + name = AdvancedEffectsTests; + productName = AdvancedEffectsTests; + productReference = 00E356EE1AD99517003FC87E /* AdvancedEffectsTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; 13B07F861A680F5B00A75B9A /* AdvancedEffects */ = { isa = PBXNativeTarget; buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "AdvancedEffects" */; @@ -306,6 +352,7 @@ 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, + 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, ); buildRules = ( ); @@ -324,6 +371,12 @@ attributes = { LastUpgradeCheck = 0610; ORGANIZATIONNAME = Facebook; + TargetAttributes = { + 00E356ED1AD99517003FC87E = { + CreatedOnToolsVersion = 6.2; + TestTargetID = 13B07F861A680F5B00A75B9A; + }; + }; }; buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "AdvancedEffects" */; compatibilityVersion = "Xcode 3.2"; @@ -378,13 +431,14 @@ ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; }, { - ProductGroup = 340554D21B822545009D567B /* Products */; - ProjectRef = 340554D11B822545009D567B /* RNGL.xcodeproj */; + ProductGroup = 34582C581BEFE6BA0093A350 /* Products */; + ProjectRef = 34582C571BEFE6BA0093A350 /* RNGL.xcodeproj */; }, ); projectRoot = ""; targets = ( 13B07F861A680F5B00A75B9A /* AdvancedEffects */, + 00E356ED1AD99517003FC87E /* AdvancedEffectsTests */, ); }; /* End PBXProject section */ @@ -446,18 +500,11 @@ remoteRef = 146834031AC3E56700842450 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 340554D91B822545009D567B /* libRNGL.a */ = { + 34582C661BEFE6BA0093A350 /* libRNGL.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; path = libRNGL.a; - remoteRef = 340554D81B822545009D567B /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 340554DB1B822545009D567B /* RNGLTests.xctest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = RNGLTests.xctest; - remoteRef = 340554DA1B822545009D567B /* PBXContainerItemProxy */; + remoteRef = 34582C651BEFE6BA0093A350 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; 78C398B91ACF4ADC00677621 /* libRCTLinking.a */ = { @@ -477,11 +524,17 @@ /* End PBXReferenceProxy section */ /* Begin PBXResourcesBuildPhase section */ + 00E356EC1AD99517003FC87E /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 13B07F8E1A680F5B00A75B9A /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 008F07F31AC5B25A0029DE68 /* main.jsbundle in Resources */, 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, ); @@ -489,7 +542,32 @@ }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Bundle React Native code and images"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "../node_modules/react-native/packager/react-native-xcode.sh"; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ + 00E356EA1AD99517003FC87E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 00E356F31AD99517003FC87E /* AdvancedEffectsTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 13B07F871A680F5B00A75B9A /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -501,6 +579,14 @@ }; /* End PBXSourcesBuildPhase section */ +/* Begin PBXTargetDependency section */ + 00E356F51AD99517003FC87E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 13B07F861A680F5B00A75B9A /* AdvancedEffects */; + targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + /* Begin PBXVariantGroup section */ 13B07FB11A68108700A75B9A /* LaunchScreen.xib */ = { isa = PBXVariantGroup; @@ -508,22 +594,60 @@ 13B07FB21A68108700A75B9A /* Base */, ); name = LaunchScreen.xib; - path = iOS; + path = AdvancedEffects; sourceTree = ""; }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ + 00E356F61AD99517003FC87E /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(SDKROOT)/Developer/Library/Frameworks", + "$(inherited)", + ); + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + INFOPLIST_FILE = AdvancedEffectsTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AdvancedEffects.app/AdvancedEffects"; + }; + name = Debug; + }; + 00E356F71AD99517003FC87E /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(SDKROOT)/Developer/Library/Frameworks", + "$(inherited)", + ); + INFOPLIST_FILE = AdvancedEffectsTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AdvancedEffects.app/AdvancedEffects"; + }; + name = Release; + }; 13B07F941A680F5B00A75B9A /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + DEAD_CODE_STRIPPING = NO; HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(SRCROOT)/node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/React/**", ); - INFOPLIST_FILE = iOS/Info.plist; + INFOPLIST_FILE = AdvancedEffects/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-ObjC"; PRODUCT_NAME = AdvancedEffects; @@ -537,9 +661,9 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(SRCROOT)/node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/React/**", ); - INFOPLIST_FILE = iOS/Info.plist; + INFOPLIST_FILE = AdvancedEffects/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-ObjC"; PRODUCT_NAME = AdvancedEffects; @@ -583,7 +707,7 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(SRCROOT)/node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/React/**", ); IPHONEOS_DEPLOYMENT_TARGET = 7.0; MTL_ENABLE_DEBUG_INFO = YES; @@ -623,7 +747,7 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(SRCROOT)/node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/React/**", ); IPHONEOS_DEPLOYMENT_TARGET = 7.0; MTL_ENABLE_DEBUG_INFO = NO; @@ -635,6 +759,15 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ + 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "AdvancedEffectsTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 00E356F61AD99517003FC87E /* Debug */, + 00E356F71AD99517003FC87E /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "AdvancedEffects" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/Examples/AdvancedEffects/AdvancedEffects.xcodeproj/xcshareddata/xcschemes/AdvancedEffects.xcscheme b/Examples/AdvancedEffects/ios/AdvancedEffects.xcodeproj/xcshareddata/xcschemes/AdvancedEffects.xcscheme similarity index 91% rename from Examples/AdvancedEffects/AdvancedEffects.xcodeproj/xcshareddata/xcschemes/AdvancedEffects.xcscheme rename to Examples/AdvancedEffects/ios/AdvancedEffects.xcodeproj/xcshareddata/xcschemes/AdvancedEffects.xcscheme index 14b62490a8ef294a3b5b842ee3a2d6ae6b9dacb9..fc0591be51e890b1f2f5a10663f9074f1ca5ee16 100644 --- a/Examples/AdvancedEffects/AdvancedEffects.xcodeproj/xcshareddata/xcschemes/AdvancedEffects.xcscheme +++ b/Examples/AdvancedEffects/ios/AdvancedEffects.xcodeproj/xcshareddata/xcschemes/AdvancedEffects.xcscheme @@ -37,10 +37,10 @@ + shouldUseLaunchSchemeArgsEnv = "YES" + buildConfiguration = "Debug"> @@ -62,18 +62,15 @@ ReferencedContainer = "container:AdvancedEffects.xcodeproj"> - - @@ -85,21 +82,14 @@ ReferencedContainer = "container:AdvancedEffects.xcodeproj"> - - - - diff --git a/Examples/AdvancedEffects/iOS/AppDelegate.h b/Examples/AdvancedEffects/ios/AdvancedEffects/AppDelegate.h similarity index 100% rename from Examples/AdvancedEffects/iOS/AppDelegate.h rename to Examples/AdvancedEffects/ios/AdvancedEffects/AppDelegate.h diff --git a/Examples/AdvancedEffects/iOS/AppDelegate.m b/Examples/AdvancedEffects/ios/AdvancedEffects/AppDelegate.m similarity index 79% rename from Examples/AdvancedEffects/iOS/AppDelegate.m rename to Examples/AdvancedEffects/ios/AdvancedEffects/AppDelegate.m index 993a86335fcd65e66ecc4f16e24e33a3cb90a746..3c75cc8dc74399e0c70681c79d80c2955436e5ea 100644 --- a/Examples/AdvancedEffects/iOS/AppDelegate.m +++ b/Examples/AdvancedEffects/ios/AdvancedEffects/AppDelegate.m @@ -31,23 +31,19 @@ * on the same Wi-Fi network. */ - //jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle"]; + jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=true"]; /** * OPTION 2 - * Load from pre-bundled file on disk. To re-generate the static bundle - * from the root of your project directory, run - * - * $ react-native bundle --minify - * - * see http://facebook.github.io/react-native/docs/runningondevice.html + * Load from pre-bundled file on disk. The static bundle is automatically + * generated by "Bundle React Native code and images" build step. */ - jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; +// jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"AdvancedEffects" - initialProperties:@{} + initialProperties:nil launchOptions:launchOptions]; self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; diff --git a/Examples/AdvancedEffects/iOS/Base.lproj/LaunchScreen.xib b/Examples/AdvancedEffects/ios/AdvancedEffects/Base.lproj/LaunchScreen.xib similarity index 100% rename from Examples/AdvancedEffects/iOS/Base.lproj/LaunchScreen.xib rename to Examples/AdvancedEffects/ios/AdvancedEffects/Base.lproj/LaunchScreen.xib diff --git a/Examples/AdvancedEffects/iOS/Images.xcassets/AppIcon.appiconset/Contents.json b/Examples/AdvancedEffects/ios/AdvancedEffects/Images.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from Examples/AdvancedEffects/iOS/Images.xcassets/AppIcon.appiconset/Contents.json rename to Examples/AdvancedEffects/ios/AdvancedEffects/Images.xcassets/AppIcon.appiconset/Contents.json diff --git a/Examples/AdvancedEffects/iOS/Info.plist b/Examples/AdvancedEffects/ios/AdvancedEffects/Info.plist similarity index 79% rename from Examples/AdvancedEffects/iOS/Info.plist rename to Examples/AdvancedEffects/ios/AdvancedEffects/Info.plist index ceb55dcb24d6c3fe5e458066551cd660039ad013..cddf0766c98062f1dd64392a23039b111ccaaf59 100644 --- a/Examples/AdvancedEffects/iOS/Info.plist +++ b/Examples/AdvancedEffects/ios/AdvancedEffects/Info.plist @@ -22,13 +22,6 @@ 1 LSRequiresIPhoneOS - NSAppTransportSecurity - - NSAllowsArbitraryLoads - - - NSLocationWhenInUseUsageDescription - UILaunchStoryboardName LaunchScreen UIRequiredDeviceCapabilities @@ -38,8 +31,18 @@ UISupportedInterfaceOrientations UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight UIViewControllerBasedStatusBarAppearance + NSLocationWhenInUseUsageDescription + + NSAppTransportSecurity + + + NSAllowsArbitraryLoads + + diff --git a/Examples/AdvancedEffects/iOS/main.m b/Examples/AdvancedEffects/ios/AdvancedEffects/main.m similarity index 100% rename from Examples/AdvancedEffects/iOS/main.m rename to Examples/AdvancedEffects/ios/AdvancedEffects/main.m diff --git a/Examples/AdvancedEffects/ios/AdvancedEffectsTests/AdvancedEffectsTests.m b/Examples/AdvancedEffects/ios/AdvancedEffectsTests/AdvancedEffectsTests.m new file mode 100644 index 0000000000000000000000000000000000000000..8ce73515fd91aff89c0274b4cb35946b54986073 --- /dev/null +++ b/Examples/AdvancedEffects/ios/AdvancedEffectsTests/AdvancedEffectsTests.m @@ -0,0 +1,70 @@ +/** + * Copyright (c) 2015-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ + +#import +#import + +#import "RCTLog.h" +#import "RCTRootView.h" + +#define TIMEOUT_SECONDS 240 +#define TEXT_TO_LOOK_FOR @"Welcome to React Native!" + +@interface AdvancedEffectsTests : XCTestCase + +@end + +@implementation AdvancedEffectsTests + +- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test +{ + if (test(view)) { + return YES; + } + for (UIView *subview in [view subviews]) { + if ([self findSubviewInView:subview matching:test]) { + return YES; + } + } + return NO; +} + +- (void)testRendersWelcomeScreen +{ + UIViewController *vc = [[[[UIApplication sharedApplication] delegate] window] rootViewController]; + NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS]; + BOOL foundElement = NO; + + __block NSString *redboxError = nil; + RCTSetLogFunction(^(RCTLogLevel level, NSString *fileName, NSNumber *lineNumber, NSString *message) { + if (level >= RCTLogLevelError) { + redboxError = message; + } + }); + + while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { + [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; + [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; + + foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) { + if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { + return YES; + } + return NO; + }]; + } + + RCTSetLogFunction(RCTDefaultLogFunction); + + XCTAssertNil(redboxError, @"RedBox error: %@", redboxError); + XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS); +} + + +@end diff --git a/Examples/Simple/SimpleTests/Info.plist b/Examples/AdvancedEffects/ios/AdvancedEffectsTests/Info.plist similarity index 100% rename from Examples/Simple/SimpleTests/Info.plist rename to Examples/AdvancedEffects/ios/AdvancedEffectsTests/Info.plist diff --git a/Examples/AdvancedEffects/package.json b/Examples/AdvancedEffects/package.json index 3ec57fd88f5f74a26ae4cfd7793d1a3ac520204f..15135c74bd52190fad7cee1c27d5098a4f4de588 100644 --- a/Examples/AdvancedEffects/package.json +++ b/Examples/AdvancedEffects/package.json @@ -3,11 +3,11 @@ "version": "0.0.1", "private": true, "scripts": { - "start": "node_modules/react-native/packager/packager.sh" + "start": "react-native start" }, "dependencies": { "gl-react-native": "file:../..", - "glsl-transitions": "^2015.8.17", - "react-native": "^0.13.0-rc" + "glsl-transitions": "^2015.11.8", + "react-native": "^0.14.2" } } diff --git a/Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Image.jpg b/Examples/AdvancedEffects/src/Image.jpg similarity index 100% rename from Examples/AdvancedEffects/iOS/Images.xcassets/Image.imageset/Image.jpg rename to Examples/AdvancedEffects/src/Image.jpg diff --git a/Examples/AdvancedEffects/src/index.js b/Examples/AdvancedEffects/src/index.js index 3bc33dcac4d3d5c5833db82c8e21af630524e502..5fb187b052eafd837f2a610e6464f726458d1847 100644 --- a/Examples/AdvancedEffects/src/index.js +++ b/Examples/AdvancedEffects/src/index.js @@ -2,10 +2,11 @@ const React = require("react-native"); const { StyleSheet, View, - StatusBarIOS, } = React; const { width: viewportW, height: viewportH } = require("Dimensions").get("window"); +const resolveAssetSource = require("react-native/Libraries/Image/resolveAssetSource"); + const Banner = require("./Banner"); const Intro = require("./Intro"); const Vignette = require("./Vignette"); @@ -18,15 +19,13 @@ class AdvancedEffects extends React.Component { this.state = { time: 0.02, frames: 1, - embeddedImage: require("image!Image"), + embeddedImage: resolveAssetSource(require("./Image.jpg")), images: //"MQtLWbD,N8a9CkZ,adCmISK,AedZQ4N,y9qRJR3,brzKTYZ,NSyk07l,EaZiWfn,I1KZdnl,DoQBdzT,slIt2Ww,DA12puU,IYLdRFW,oqmO4Po,T6NaLyI,6XAPrAY,thYzbif,4qmqo3o,8xT2J96,ZCa2pWq,loQfDN2,oabfA68,uOXqDRY,MyyS4vK,fhNYTX4" "wxqlQkh,G2Whuq3,0bUSEBX,giP58XN,iKdXwVm,IvpoR40,zJIxPEo,CKlmtPs,fnMylHI,vGXYiYy,MnOB9Le,YqsZKgc,0BJobQo,Otbz312" .split(",") .map(id => `http://imgur.com/${id}.jpg`) }; - - StatusBarIOS.setHidden(true); } componentDidMount () { @@ -51,20 +50,20 @@ class AdvancedEffects extends React.Component { return ( - +{/* - +*/} - +{/* +*/} ); diff --git a/Examples/Simple/.flowconfig b/Examples/Simple/.flowconfig index 8989253d43ac5e1bc1ef96cc48dbf7545fa32648..05cad208f26316a3eddda55773f7a50715715d2e 100644 --- a/Examples/Simple/.flowconfig +++ b/Examples/Simple/.flowconfig @@ -10,14 +10,10 @@ # Ignore react-tools where there are overlaps, but don't ignore anything that # react-native relies on .*/node_modules/react-tools/src/React.js -.*/node_modules/react-tools/src/renderers/shared/reconciler/ReactInstanceHandles.js .*/node_modules/react-tools/src/renderers/shared/event/EventPropagators.js .*/node_modules/react-tools/src/renderers/shared/event/eventPlugins/ResponderEventPlugin.js -.*/node_modules/react-tools/src/renderers/shared/event/eventPlugins/ResponderSyntheticEvent.js -.*/node_modules/react-tools/src/renderers/shared/event/eventPlugins/ResponderTouchHistoryStore.js .*/node_modules/react-tools/src/shared/vendor/core/ExecutionEnvironment.js - # Ignore commoner tests .*/node_modules/commoner/test/.* @@ -25,7 +21,10 @@ .*/react-tools/node_modules/commoner/lib/reader.js # Ignore jest -.*/react-native/node_modules/jest-cli/.* +.*/node_modules/jest-cli/.* + +# Ignore Website +.*/website/.* [include] @@ -35,13 +34,18 @@ node_modules/react-native/Libraries/react-native/react-native-interface.js [options] module.system=haste +munge_underscores=true + +module.name_mapper='^image![a-zA-Z0-9$_-]+$' -> 'GlobalImageStub' +module.name_mapper='^[./a-zA-Z0-9$_-]+\.png$' -> 'RelativeImageStub' + suppress_type=$FlowIssue suppress_type=$FlowFixMe suppress_type=$FixMe -suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(1[0-3]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) -suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(1[0-3]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)? #[0-9]+ +suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(1[0-7]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) +suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(1[0-7]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)? #[0-9]+ suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy [version] -0.13.1 +0.17.0 diff --git a/Examples/Simple/.gitignore b/Examples/Simple/.gitignore index b927355df441e39ce66c8525523dbe592d1f2d97..94fc86711d185ae84ff11abd41b1bbf716c26d2b 100644 --- a/Examples/Simple/.gitignore +++ b/Examples/Simple/.gitignore @@ -22,6 +22,12 @@ DerivedData *.xcuserstate project.xcworkspace +# Android/IJ +# +.idea +.gradle +local.properties + # node.js # node_modules/ diff --git a/Examples/Simple/.npmignore b/Examples/Simple/.npmignore deleted file mode 100644 index c39012e9e737a6c38a42deb0c22ca3cafd1f232e..0000000000000000000000000000000000000000 --- a/Examples/Simple/.npmignore +++ /dev/null @@ -1,27 +0,0 @@ -# OSX -# -.DS_Store - -# Xcode -# -build/ -*.pbxuser -!default.pbxuser -*.mode1v3 -!default.mode1v3 -*.mode2v3 -!default.mode2v3 -*.perspectivev3 -!default.perspectivev3 -xcuserdata -*.xccheckout -*.moved-aside -DerivedData -*.hmap -*.ipa -*.xcuserstate - -# node.js -# -node_modules/ -npm-debug.log diff --git a/Examples/Simple/.watchmanconfig b/Examples/Simple/.watchmanconfig new file mode 100644 index 0000000000000000000000000000000000000000..9e26dfeeb6e641a33dae4961196235bdb965b21b --- /dev/null +++ b/Examples/Simple/.watchmanconfig @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/Examples/Simple/android/Simple.iml b/Examples/Simple/android/Simple.iml new file mode 100644 index 0000000000000000000000000000000000000000..b9c6355c2f282b2cc2e199ea0341b6efa48bf478 --- /dev/null +++ b/Examples/Simple/android/Simple.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/Simple/android/app/app.iml b/Examples/Simple/android/app/app.iml new file mode 100644 index 0000000000000000000000000000000000000000..4b5659e9947915d062716d45e8d89b6c80930a89 --- /dev/null +++ b/Examples/Simple/android/app/app.iml @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + generateDebugAndroidTestSources + generateDebugSources + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/Simple/android/app/build.gradle b/Examples/Simple/android/app/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..ae3edeb4dc85a5d9cfc31111ca58d417b4767e4a --- /dev/null +++ b/Examples/Simple/android/app/build.gradle @@ -0,0 +1,80 @@ +apply plugin: "com.android.application" + +/** + * The react.gradle file registers two tasks: bundleDebugJsAndAssets and bundleReleaseJsAndAssets. + * These basically call `react-native bundle` with the correct arguments during the Android build + * cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the + * bundle directly from the development server. Below you can see all the possible configurations + * and their defaults. If you decide to add a configuration block, make sure to add it before the + * `apply from: "react.gradle"` line. + * + * project.ext.react = [ + * // the name of the generated asset file containing your JS bundle + * bundleAssetName: "index.android.bundle", + * + * // the entry file for bundle generation + * entryFile: "index.android.js", + * + * // whether to bundle JS and assets in debug mode + * bundleInDebug: false, + * + * // whether to bundle JS and assets in release mode + * bundleInRelease: true, + * + * // the root of your project, i.e. where "package.json" lives + * root: "../../", + * + * // where to put the JS bundle asset in debug mode + * jsBundleDirDebug: "$buildDir/intermediates/assets/debug", + * + * // where to put the JS bundle asset in release mode + * jsBundleDirRelease: "$buildDir/intermediates/assets/release", + * + * // where to put drawable resources / React Native assets, e.g. the ones you use via + * // require('./image.png')), in debug mode + * resourcesDirDebug: "$buildDir/intermediates/res/merged/debug", + * + * // where to put drawable resources / React Native assets, e.g. the ones you use via + * // require('./image.png')), in release mode + * resourcesDirRelease: "$buildDir/intermediates/res/merged/release", + * + * // by default the gradle tasks are skipped if none of the JS files or assets change; this means + * // that we don't look at files in android/ or ios/ to determine whether the tasks are up to + * // date; if you have any other folders that you want to ignore for performance reasons (gradle + * // indexes the entire tree), add them here. Alternatively, if you have JS files in android/ + * // for example, you might want to remove it from here. + * inputExcludes: ["android/**", "ios/**"] + * ] + */ + +apply from: "react.gradle" + +android { + compileSdkVersion 23 + buildToolsVersion "23.0.1" + + defaultConfig { + applicationId "com.simple" + minSdkVersion 16 + targetSdkVersion 22 + versionCode 1 + versionName "1.0" + ndk { + abiFilters "armeabi-v7a", "x86" + } + } + buildTypes { + release { + minifyEnabled false // Set this to true to enable Proguard + proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" + } + } +} + +dependencies { + compile fileTree(dir: "libs", include: ["*.jar"]) + compile "com.android.support:appcompat-v7:23.0.1" + compile "com.facebook.react:react-native:0.14.+" + compile project(':rngl') + compile project(':RNMaterialKit') +} diff --git a/Examples/Simple/android/app/proguard-rules.pro b/Examples/Simple/android/app/proguard-rules.pro new file mode 100644 index 0000000000000000000000000000000000000000..ffa8c9f64b6251f632abdaf3c3ba26fca12e4f6f --- /dev/null +++ b/Examples/Simple/android/app/proguard-rules.pro @@ -0,0 +1,60 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Disabling obfuscation is useful if you collect stack traces from production crashes +# (unless you are using a system that supports de-obfuscate the stack traces). +-dontobfuscate + +# React Native + +# Keep our interfaces so they can be used by other ProGuard rules. +# See http://sourceforge.net/p/proguard/bugs/466/ +-keep,allowobfuscation @interface com.facebook.proguard.annotations.DoNotStrip +-keep,allowobfuscation @interface com.facebook.proguard.annotations.KeepGettersAndSetters + +# Do not strip any method/class that is annotated with @DoNotStrip +-keep @com.facebook.proguard.annotations.DoNotStrip class * +-keepclassmembers class * { + @com.facebook.proguard.annotations.DoNotStrip *; +} + +-keepclassmembers @com.facebook.proguard.annotations.KeepGettersAndSetters class * { + void set*(***); + *** get*(); +} + +-keep class * extends com.facebook.react.bridge.JavaScriptModule { *; } +-keep class * extends com.facebook.react.bridge.NativeModule { *; } +-keepclassmembers class * { @com.facebook.react.uimanager.UIProp ; } +-keepclassmembers class * { @com.facebook.react.uimanager.ReactProp ; } +-keepclassmembers class * { @com.facebook.react.uimanager.ReactPropGroup ; } + +# okhttp + +-keepattributes Signature +-keepattributes *Annotation* +-keep class com.squareup.okhttp.** { *; } +-keep interface com.squareup.okhttp.** { *; } +-dontwarn com.squareup.okhttp.** + +# okio + +-keep class sun.misc.Unsafe { *; } +-dontwarn java.nio.file.* +-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement +-dontwarn okio.** diff --git a/Examples/Simple/android/app/react.gradle b/Examples/Simple/android/app/react.gradle new file mode 100644 index 0000000000000000000000000000000000000000..dc18bb9a06257d2d7e612b1bcbd83474e92b99a5 --- /dev/null +++ b/Examples/Simple/android/app/react.gradle @@ -0,0 +1,75 @@ +def config = project.hasProperty("react") ? project.react : []; + +def bundleAssetName = config.bundleAssetName ?: "index.android.bundle" +def entryFile = config.entryFile ?: "index.android.js" + +// because elvis operator +def elvisFile(thing) { + return thing ? file(thing) : null; +} + +def reactRoot = elvisFile(config.root) ?: file("../../") +def jsBundleDirDebug = elvisFile(config.jsBundleDirDebug) ?: + file("$buildDir/intermediates/assets/debug") +def jsBundleDirRelease = elvisFile(config.jsBundleDirRelease) ?: + file("$buildDir/intermediates/assets/release") +def resourcesDirDebug = elvisFile(config.resourcesDirDebug) ?: + file("$buildDir/intermediates/res/merged/debug") +def resourcesDirRelease = elvisFile(config.resourcesDirRelease) ?: + file("$buildDir/intermediates/res/merged/release") +def inputExcludes = config.inputExcludes ?: ["android/**", "ios/**"] + +def jsBundleFileDebug = file("$jsBundleDirDebug/$bundleAssetName") +def jsBundleFileRelease = file("$jsBundleDirRelease/$bundleAssetName") + +task bundleDebugJsAndAssets(type: Exec) { + // create dirs if they are not there (e.g. the "clean" task just ran) + doFirst { + jsBundleDirDebug.mkdirs() + resourcesDirDebug.mkdirs() + } + + // set up inputs and outputs so gradle can cache the result + inputs.files fileTree(dir: reactRoot, excludes: inputExcludes) + outputs.dir jsBundleDirDebug + outputs.dir resourcesDirDebug + + // set up the call to the react-native cli + workingDir reactRoot + commandLine "react-native", "bundle", "--platform", "android", "--dev", "true", "--entry-file", + entryFile, "--bundle-output", jsBundleFileDebug, "--assets-dest", resourcesDirDebug + + enabled config.bundleInDebug ?: false +} + +task bundleReleaseJsAndAssets(type: Exec) { + // create dirs if they are not there (e.g. the "clean" task just ran) + doFirst { + jsBundleDirRelease.mkdirs() + resourcesDirRelease.mkdirs() + } + + // set up inputs and outputs so gradle can cache the result + inputs.files fileTree(dir: reactRoot, excludes: inputExcludes) + outputs.dir jsBundleDirRelease + outputs.dir resourcesDirRelease + + // set up the call to the react-native cli + workingDir reactRoot + commandLine "react-native", "bundle", "--platform", "android", "--dev", "false", "--entry-file", + entryFile, "--bundle-output", jsBundleFileRelease, "--assets-dest", resourcesDirRelease + + enabled config.bundleInRelease ?: true +} + +gradle.projectsEvaluated { + // hook bundleDebugJsAndAssets into the android build process + bundleDebugJsAndAssets.dependsOn mergeDebugResources + bundleDebugJsAndAssets.dependsOn mergeDebugAssets + processDebugResources.dependsOn bundleDebugJsAndAssets + + // hook bundleReleaseJsAndAssets into the android build process + bundleReleaseJsAndAssets.dependsOn mergeReleaseResources + bundleReleaseJsAndAssets.dependsOn mergeReleaseAssets + processReleaseResources.dependsOn bundleReleaseJsAndAssets +} diff --git a/Examples/Simple/android/app/src/main/AndroidManifest.xml b/Examples/Simple/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000000000000000000000000000000000000..fdb8ba6faba998d151d0c8a195e7ce59f606fe36 --- /dev/null +++ b/Examples/Simple/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + diff --git a/Examples/Simple/android/app/src/main/java/com/simple/MainActivity.java b/Examples/Simple/android/app/src/main/java/com/simple/MainActivity.java new file mode 100644 index 0000000000000000000000000000000000000000..8c6aaeacc4249317e5aeb5e7bfcc38478c3de3de --- /dev/null +++ b/Examples/Simple/android/app/src/main/java/com/simple/MainActivity.java @@ -0,0 +1,82 @@ +package com.simple; + +import android.app.Activity; +import android.os.Bundle; +import android.view.KeyEvent; + +import com.facebook.react.LifecycleState; +import com.facebook.react.ReactInstanceManager; +import com.facebook.react.ReactRootView; +import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler; +import com.facebook.react.shell.MainReactPackage; +import com.facebook.soloader.SoLoader; +import com.github.xinthink.rnmk.ReactMaterialKitPackage; +import com.projectseptember.RNGL.RNGLPackage; + +public class MainActivity extends Activity implements DefaultHardwareBackBtnHandler { + + private ReactInstanceManager mReactInstanceManager; + private ReactRootView mReactRootView; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + mReactRootView = new ReactRootView(this); + + mReactInstanceManager = ReactInstanceManager.builder() + .setApplication(getApplication()) + .setBundleAssetName("index.android.bundle") + .setJSMainModuleName("index.android") + .addPackage(new MainReactPackage()) + .addPackage(new RNGLPackage()) + .addPackage(new ReactMaterialKitPackage()) + .setUseDeveloperSupport(BuildConfig.DEBUG) + .setInitialLifecycleState(LifecycleState.RESUMED) + .build(); + + mReactRootView.startReactApplication(mReactInstanceManager, "Simple", null); + + setContentView(mReactRootView); + } + + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) { + if (keyCode == KeyEvent.KEYCODE_MENU && mReactInstanceManager != null) { + mReactInstanceManager.showDevOptionsDialog(); + return true; + } + return super.onKeyUp(keyCode, event); + } + + @Override + public void onBackPressed() { + if (mReactInstanceManager != null) { + mReactInstanceManager.onBackPressed(); + } else { + super.onBackPressed(); + } + } + + @Override + public void invokeDefaultOnBackPressed() { + super.onBackPressed(); + } + + @Override + protected void onPause() { + super.onPause(); + + if (mReactInstanceManager != null) { + mReactInstanceManager.onPause(); + } + } + + @Override + protected void onResume() { + super.onResume(); + + if (mReactInstanceManager != null) { + mReactInstanceManager.onResume(this); + } + } +} diff --git a/Examples/Simple/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/Examples/Simple/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..cde69bcccec65160d92116f20ffce4fce0b5245c Binary files /dev/null and b/Examples/Simple/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/Examples/Simple/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/Examples/Simple/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c133a0cbd379f5af6dbf1a899a0293ca5eccfad0 Binary files /dev/null and b/Examples/Simple/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/Examples/Simple/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/Examples/Simple/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..bfa42f0e7b91d006d22352c9ff2f134e504e3c1d Binary files /dev/null and b/Examples/Simple/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/Examples/Simple/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/Examples/Simple/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..324e72cdd7480cb983fa1bcc7ce686e51ef87fe7 Binary files /dev/null and b/Examples/Simple/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/Examples/Simple/android/app/src/main/res/values/strings.xml b/Examples/Simple/android/app/src/main/res/values/strings.xml new file mode 100644 index 0000000000000000000000000000000000000000..472014dccc9e6c02cab53e47d0a4f799633a9472 --- /dev/null +++ b/Examples/Simple/android/app/src/main/res/values/strings.xml @@ -0,0 +1,3 @@ + + Simple + diff --git a/Examples/Simple/android/app/src/main/res/values/styles.xml b/Examples/Simple/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000000000000000000000000000000000000..319eb0ca100b5aae62b669a5f375ec234aabe351 --- /dev/null +++ b/Examples/Simple/android/app/src/main/res/values/styles.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/Examples/Simple/android/build.gradle b/Examples/Simple/android/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..ccdfc4e3dca8070b281d68056da956343d52a4ea --- /dev/null +++ b/Examples/Simple/android/build.gradle @@ -0,0 +1,20 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + repositories { + jcenter() + } + dependencies { + classpath 'com.android.tools.build:gradle:1.3.1' + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + mavenLocal() + jcenter() + } +} diff --git a/Examples/Simple/android/gradle.properties b/Examples/Simple/android/gradle.properties new file mode 100644 index 0000000000000000000000000000000000000000..1fd964e90b1c5ec50e26364318e2c872a9dd6154 --- /dev/null +++ b/Examples/Simple/android/gradle.properties @@ -0,0 +1,20 @@ +# Project-wide Gradle settings. + +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. + +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html + +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +# Default value: -Xmx10248m -XX:MaxPermSize=256m +# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 + +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true + +android.useDeprecatedNdk=true diff --git a/Examples/Simple/android/gradle/wrapper/gradle-wrapper.jar b/Examples/Simple/android/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..b5166dad4d90021f6a0b45268c0755719f1d5cd4 Binary files /dev/null and b/Examples/Simple/android/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Examples/Simple/android/gradle/wrapper/gradle-wrapper.properties b/Examples/Simple/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000000000000000000000000000000000000..b9fbfaba0ead2162e30db62f51e95df8a670d4a6 --- /dev/null +++ b/Examples/Simple/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip diff --git a/Examples/Simple/android/gradlew b/Examples/Simple/android/gradlew new file mode 100755 index 0000000000000000000000000000000000000000..91a7e269e19dfc62e27137a0b57ef3e430cee4fd --- /dev/null +++ b/Examples/Simple/android/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/Examples/Simple/android/gradlew.bat b/Examples/Simple/android/gradlew.bat new file mode 100644 index 0000000000000000000000000000000000000000..aec99730b4e8fcd90b57a0e8e01544fea7c31a89 --- /dev/null +++ b/Examples/Simple/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Examples/Simple/android/settings.gradle b/Examples/Simple/android/settings.gradle new file mode 100644 index 0000000000000000000000000000000000000000..117a0b2e62e93c3977434e780ee30ed79da4e62e --- /dev/null +++ b/Examples/Simple/android/settings.gradle @@ -0,0 +1,9 @@ +rootProject.name = 'Simple' + +include ':app' + +include ':rngl', ':app' +project(':rngl').projectDir = new File(rootProject.projectDir, '../../../android') + +include ':RNMaterialKit' +project(':RNMaterialKit').projectDir = file('../node_modules/react-native-material-kit/android') \ No newline at end of file diff --git a/Examples/Simple/iOS/main.jsbundle b/Examples/Simple/iOS/main.jsbundle deleted file mode 100644 index d4a36c8e183d5ab76d9964cb5036b92a3bb77e96..0000000000000000000000000000000000000000 --- a/Examples/Simple/iOS/main.jsbundle +++ /dev/null @@ -1,20 +0,0 @@ -__DEV__=!1,__BUNDLE_START_TIME__=Date.now(),function(e){function t(e){for(var t,n,r,o,i=Array.prototype.slice.call(e),a={};i.length;)if(n=i.shift(),!a[n]&&(a[n]=!0,r=h[n],r&&r.waiting))for(t=0;t=o.error&&(t=o.warn),e.nativeLoggingHook(r,t)}}function i(t){if(!Array.isArray(t)){var n=t;t=[];for(var i in n)if(n.hasOwnProperty(i)){var a=n[i];a[r]=i,t.push(a)}}if(0===t.length)return void e.nativeLoggingHook("",o.log);var u=Object.keys(t[0]).sort(),c=[],l=[];u.forEach(function(e,n){l[n]=e.length;for(var r=0;r=0||p.indexOf("description")>=0))return i(t);if(0===p.length){if(_(t)){var f=t.name?": "+t.name:"";return e.stylize("[Function"+f+"]","special")}if(m(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(g(t))return e.stylize(Date.prototype.toString.call(t),"date");if(y(t))return i(t)}var d="",v=!1,b=["{","}"];if(c(t)&&(v=!0,b=["[","]"]),_(t)){var S=t.name?": "+t.name:"";d=" [Function"+S+"]"}if(m(t)&&(d=" "+RegExp.prototype.toString.call(t)),g(t)&&(d=" "+Date.prototype.toUTCString.call(t)),y(t)&&(d=" "+i(t)),0===p.length&&(!v||0==t.length))return b[0]+d+b[1];if(0>r)return m(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var R;return R=v?a(e,t,r,h,p):p.map(function(n){return s(e,t,r,h,n,v)}),e.seen.pop(),u(R,d,b)}function o(e,t){if(d(t))return e.stylize("undefined","undefined");if(f(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return h(t)?e.stylize(""+t,"number"):l(t)?e.stylize(""+t,"boolean"):p(t)?e.stylize("null","null"):void 0}function i(e){return"["+Error.prototype.toString.call(e)+"]"}function a(e,t,n,r,o){for(var i=[],a=0,u=t.length;u>a;++a)S(t,String(a))?i.push(s(e,t,n,r,String(a),!0)):i.push("");return o.forEach(function(o){o.match(/^\d+$/)||i.push(s(e,t,n,r,o,!0))}),i}function s(e,t,n,o,i,a){var s,u,c;if(c=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]},c.get?u=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(u=e.stylize("[Setter]","special")),S(o,i)||(s="["+i+"]"),u||(e.seen.indexOf(c.value)<0?(u=p(n)?r(e,c.value,null):r(e,c.value,n-1),u.indexOf("\n")>-1&&(u=a?u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+u.split("\n").map(function(e){return" "+e}).join("\n"))):u=e.stylize("[Circular]","special")),d(s)){if(a&&i.match(/^\d+$/))return u;s=JSON.stringify(""+i),s.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+u}function u(e,t,n){var r=0,o=e.reduce(function(e,t){return r++,t.indexOf("\n")>=0&&r++,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0);return o>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function c(e){return Array.isArray(e)}function l(e){return"boolean"==typeof e}function p(e){return null===e}function h(e){return"number"==typeof e}function f(e){return"string"==typeof e}function d(e){return void 0===e}function m(e){return v(e)&&"[object RegExp]"===b(e)}function v(e){return"object"==typeof e&&null!==e}function g(e){return v(e)&&"[object Date]"===b(e)}function y(e){return v(e)&&("[object Error]"===b(e)||e instanceof Error)}function _(e){return"function"==typeof e}function b(e){return Object.prototype.toString.call(e)}function S(e,t){return Object.prototype.hasOwnProperty.call(e,t)}return e}(),r="(index)",o={trace:0,log:1,info:2,warn:3,error:4};"undefined"!=typeof module?module.exports=t:t(e)}(this),function(e){function t(){var t=function(t){e.console.error("Error: \n stack: "+t.stack+"\n line: "+t.line+"\n message: "+t.message,t)};e.ErrorUtils.setGlobalHandler(t)}var n={_inGuard:0,_globalHandler:null,setGlobalHandler:function(e){n._globalHandler=e},reportError:function(e){n._globalHandler&&n._globalHandler(e)},reportFatalError:function(e){n._globalHandler&&n._globalHandler(e,!0)},applyWithGuard:function(e,t,r){try{return n._inGuard++,e.apply(t,r)}catch(o){n.reportError(o)}finally{n._inGuard--}},applyWithGuardIfNeeded:function(e,t,r){return n.inGuard()?e.apply(t,r):void n.applyWithGuard(e,t,r)},inGuard:function(){return n._inGuard},guard:function(e,t,r){function o(){return n.applyWithGuard(e,r||this,arguments,null,t)}return"function"!=typeof e?(console.warn("A function must be passed to ErrorUtils.guard, got ",e),null):(t=t||e.name||"",o)}};e.ErrorUtils=n,t()}(this),String.prototype.startsWith||(String.prototype.startsWith=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=arguments.length>1?Number(arguments[1])||0:0,r=Math.min(Math.max(n,0),t.length);return t.indexOf(String(e),n)===r}),String.prototype.endsWith||(String.prototype.endsWith=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=t.length,r=String(e),o=arguments.length>1?Number(arguments[1])||0:n,i=Math.min(Math.max(o,0),n),a=i-r.length;return 0>a?!1:t.lastIndexOf(r,a)===a}),String.prototype.contains||(String.prototype.contains=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=arguments.length>1?Number(arguments[1])||0:0;return-1!==t.indexOf(String(e),n)}),String.prototype.repeat||(String.prototype.repeat=function(e){"use strict";if(null==this)throw TypeError();var t=String(this);if(e=Number(e)||0,0>e||e===1/0)throw RangeError();if(1===e)return t;for(var n="";e;)1&e&&(n+=t),(e>>=1)&&(t+=t);return n}),function(e){function t(e,t){if(null==this)throw new TypeError("Array.prototype.findIndex called on null or undefined");if("function"!=typeof e)throw new TypeError("predicate must be a function");for(var n=Object(this),r=n.length>>>0,o=0;r>o;o++)if(e.call(t,n[o],o,n))return o;return-1}Array.prototype.findIndex||Object.defineProperty(Array.prototype,"findIndex",{enumerable:!1,writable:!0,configurable:!0,value:t}),Array.prototype.find||Object.defineProperty(Array.prototype,"find",{enumerable:!1,writable:!0,configurable:!0,value:function(n,r){if(null==this)throw new TypeError("Array.prototype.find called on null or undefined");var o=t.call(this,n,r);return-1===o?e:this[o]}})}(),__d("Simple/index.ios.js",["react-native/Libraries/react-native/react-native.js","Simple/HelloGL.js","Simple/Saturation.js","Simple/HueRotate.js","Simple/PieProgress.js","Simple/OneFingerResponse.js","Simple/AnimatedHelloGL.js","Simple/Blur.js"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n1){for(var p=Array(l),h=0;l>h;h++)p[h]=arguments[h+2];i.children=p}if(e&&e.defaultProps){var f=e.defaultProps;for(r in f)"undefined"==typeof i[r]&&(i[r]=f[r])}return new s(e,u,c,o.current,i)},s.createFactory=function(e){var t=s.createElement.bind(null,e);return t.type=e,t},s.cloneAndReplaceProps=function(e,t){var n=new s(e.type,e.key,e.ref,e._owner,t);return __DEV__&&(n._store.validated=e._store.validated),n},s.cloneElement=function(e,t,n){var r,u=i({},e.props),c=e.key,l=e.ref,p=e._owner;if(null!=t){void 0!==t.ref&&(l=t.ref,p=o.current),void 0!==t.key&&(c=""+t.key);for(r in t)t.hasOwnProperty(r)&&!a.hasOwnProperty(r)&&(u[r]=t[r])}var h=arguments.length-2;if(1===h)u.children=n;else if(h>1){for(var f=Array(h),d=0;h>d;d++)f[d]=arguments[d+2];u.children=f}return new s(e.type,c,l,p,u)},s.isValidElement=function(e){var t=!(!e||!e._isReactElement);return t},n.exports=s}),__d("ReactCurrentOwner",[],function(e,t,n,r){"use strict";var o={current:null};n.exports=o}),__d("Object.assign",[],function(e,t,n,r){"use strict";function o(e,t){if(null==e)throw new TypeError("Object.assign target cannot be null or undefined");for(var n=Object(e),r=Object.prototype.hasOwnProperty,o=1;o2?n-2:0),o=2;n>o;o++)r[o-2]=arguments[o];if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(0!==t.indexOf("Failed Composite propType: ")&&!e){var i=0,a="Warning: "+t.replace(/%s/g,function(){return r[i++]});"undefined"!=typeof console&&console.error(a);try{throw new Error(a)}catch(s){}}}),n.exports=i}),__d("emptyFunction",[],function(e,t,n,r){function o(e){return function(){return e}}function i(){}i.thatReturns=o,i.thatReturnsFalse=o(!1),i.thatReturnsTrue=o(!0),i.thatReturnsNull=o(null),i.thatReturnsThis=function(){return this},i.thatReturnsArgument=function(e){return e},n.exports=i}),__d("traverseAllChildren",["ReactElement","ReactFragment","ReactInstanceHandles","getIteratorFn","invariant","warning"],function(e,t,n,r){"use strict";function o(e){return y[e]}function i(e,t){return e&&null!=e.key?s(e.key):t.toString(36)}function a(e){return(""+e).replace(_,o)}function s(e){return"$"+a(e)}function u(e,t,n,r){var o=typeof e;if(("undefined"===o||"boolean"===o)&&(e=null),null===e||"string"===o||"number"===o||l.isValidElement(e))return n(r,e,""===t?v+i(e,0):t),1;var a,c,h=0;if(Array.isArray(e))for(var y=0;y=o;o++)if(i(e,o)&&i(t,o))r=o;else if(e.charAt(o)!==t.charAt(o))break;var s=e.substr(0,r);return f(a(s),"getFirstCommonAncestorID(%s, %s): Expected a valid React DOM ID: %s",e,t,s),s}function p(e,t,n,r,o,i){e=e||"",t=t||"",f(e!==t,"traverseParentPath(...): Cannot traverse from and to the same ID, `%s`.",e);var a=s(t,e);f(a||s(e,t),"traverseParentPath(%s, %s, ...): Cannot traverse from two IDs that do not have a parent path.",e,t);for(var l=0,p=a?u:c,h=e;;h=p(h,t)){var d;if(o&&h===e||i&&h===t||(d=n(h,a,r)),d===!1||h===t)break;f(l++1){var t=e.indexOf(d,1);return t>-1?e.substr(0,t):e}return null},traverseEnterLeave:function(e,t,n,r,o){var i=l(e,t);i!==e&&p(e,i,n,r,!1,!0),i!==t&&p(i,t,n,o,!0,!1)},traverseTwoPhase:function(e,t,n){e&&(p("",e,t,n,!0,!1),p(e,"",t,n,!1,!0))},traverseTwoPhaseSkipTarget:function(e,t,n){e&&(p("",e,t,n,!0,!0),p(e,"",t,n,!0,!0))},traverseAncestors:function(e,t,n){p("",e,t,n,!0,!1)},getFirstCommonAncestorID:l,_getNextDescendantID:c,isAncestorIDOf:s,SEPARATOR:d};n.exports=g}),__d("ReactRootIndex",[],function(e,t,n,r){"use strict";var o={injectCreateReactRootIndex:function(e){i.createReactRootIndex=e}},i={createReactRootIndex:null,injection:o};n.exports=i}),__d("getIteratorFn",[],function(e,t,n,r){"use strict";function o(e){var t=e&&(i&&e[i]||e[a]);return"function"==typeof t?t:void 0}var i="function"==typeof Symbol&&Symbol.iterator,a="@@iterator";n.exports=o}),__d("ReactClass",["ReactComponent","ReactElement","ReactErrorUtils","ReactPropTypeLocations","ReactPropTypeLocationNames","ReactNoopUpdateQueue","Object.assign","emptyObject","invariant","keyMirror","keyOf","warning"],function(e,t,n,r){"use strict";function o(){I||(I=!0,T(!1,"setProps(...) and replaceProps(...) are deprecated. Instead, call React.render again at the top level."))}function i(e,t,n){for(var r in t)t.hasOwnProperty(r)&&T("function"==typeof t[r],"%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.",e.displayName||"ReactClass",y[n],r)}function a(e,t){var n=P.hasOwnProperty(t)?P[t]:null;D.hasOwnProperty(t)&&R(n===O.OVERRIDE_BASE,"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.",t),e.hasOwnProperty(t)&&R(n===O.DEFINE_MANY||n===O.DEFINE_MANY_MERGED,"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",t)}function s(e,t){if(t){R("function"!=typeof t,"ReactClass: You're attempting to use a component class as a mixin. Instead, just use a regular object."),R(!m.isValidElement(t),"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.");var n=e.prototype;t.hasOwnProperty(C)&&N.mixins(e,t.mixins);for(var r in t)if(t.hasOwnProperty(r)&&r!==C){var o=t[r];if(a(n,r),N.hasOwnProperty(r))N[r](e,o);else{var i=P.hasOwnProperty(r),s=n.hasOwnProperty(r),u="function"==typeof o,c=u&&!i&&!s;if(c)n.__reactAutoBindMap||(n.__reactAutoBindMap={}),n.__reactAutoBindMap[r]=o,n[r]=o;else if(s){var h=P[r];R(i&&(h===O.DEFINE_MANY_MERGED||h===O.DEFINE_MANY),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",h,r),h===O.DEFINE_MANY_MERGED?n[r]=l(n[r],o):h===O.DEFINE_MANY&&(n[r]=p(n[r],o))}else n[r]=o,__DEV__&&"function"==typeof o&&t.displayName&&(n[r].displayName=t.displayName+"_"+r)}}}}function u(e,t){if(t)for(var n in t){var r=t[n];if(t.hasOwnProperty(n)){var o=n in N;R(!o,'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\'t be on the "statics" key. Define it as an instance property instead; it will still be accessible on the constructor.',n);var i=n in e;R(!i,"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",n),e[n]=r}}}function c(e,t){R(e&&t&&"object"==typeof e&&"object"==typeof t,"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.");for(var n in t)t.hasOwnProperty(n)&&(R(void 0===e[n],"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.",n),e[n]=t[n]);return e}function l(e,t){return function(){var n=e.apply(this,arguments),r=t.apply(this,arguments);if(null==n)return r;if(null==r)return n;var o={};return c(o,n),c(o,r),o}}function p(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function h(e,t){var n=t.bind(e);if(__DEV__){n.__reactBoundContext=e,n.__reactBoundMethod=t,n.__reactBoundArguments=null;var r=e.constructor.displayName,o=n.bind;n.bind=function(i){for(var a=arguments.length,s=Array(a>1?a-1:0),u=1;a>u;u++)s[u-1]=arguments[u];if(i!==e&&null!==i)T(!1,"bind(): React component methods may only be bound to the component instance. See %s",r);else if(!s.length)return T(!1,"bind(): You are binding a component method to the component. React does this for you automatically in a high-performance way, so you can safely remove this call. See %s",r),n;var c=o.apply(n,arguments);return c.__reactBoundContext=e,c.__reactBoundMethod=t,c.__reactBoundArguments=s,c}}return n}function f(e){for(var t in e.__reactAutoBindMap)if(e.__reactAutoBindMap.hasOwnProperty(t)){var n=e.__reactAutoBindMap[t];e[t]=h(e,v.guard(n,e.constructor.displayName+"."+t))}}var d=t("ReactComponent"),m=t("ReactElement"),v=t("ReactErrorUtils"),g=t("ReactPropTypeLocations"),y=t("ReactPropTypeLocationNames"),_=t("ReactNoopUpdateQueue"),b=t("Object.assign"),S=t("emptyObject"),R=t("invariant"),E=t("keyMirror"),w=t("keyOf"),T=t("warning"),C=w({mixins:null}),O=E({DEFINE_ONCE:null,DEFINE_MANY:null,OVERRIDE_BASE:null,DEFINE_MANY_MERGED:null}),x=[],I=!1,P={mixins:O.DEFINE_MANY,statics:O.DEFINE_MANY,propTypes:O.DEFINE_MANY,contextTypes:O.DEFINE_MANY,childContextTypes:O.DEFINE_MANY,getDefaultProps:O.DEFINE_MANY_MERGED,getInitialState:O.DEFINE_MANY_MERGED,getChildContext:O.DEFINE_MANY_MERGED,render:O.DEFINE_ONCE,componentWillMount:O.DEFINE_MANY,componentDidMount:O.DEFINE_MANY,componentWillReceiveProps:O.DEFINE_MANY,shouldComponentUpdate:O.DEFINE_ONCE,componentWillUpdate:O.DEFINE_MANY,componentDidUpdate:O.DEFINE_MANY,componentWillUnmount:O.DEFINE_MANY,updateComponent:O.OVERRIDE_BASE},N={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n.":null,url:" See https://fb.me/react-warning-keys for more information.",childOwner:null};return t&&t._owner&&t._owner!==g.current&&(c.childOwner=" It was passed a child from "+i(t._owner)+"."),c}function l(e,t){if(Array.isArray(e))for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e){var t=e.message,n=o(e,["message"]),r=new Error(t);return r.framesToPop=1,Object.assign(r,n)}var s=function(){function e(e,t){for(var n=0;n32&&(this._debugInfo[this._callbackID>>5]=null),this._debugInfo[this._callbackID>>1]=[e,t],r&&n.push(this._callbackID),this._callbacks[this._callbackID++]=r,o&&n.push(this._callbackID),this._callbacks[this._callbackID++]=o),this._queue[m].push(e),this._queue[v].push(t),this._queue[g].push(n),__DEV__&&y&&isFinite(e)&&console.log("JS->N : "+this._remoteModuleTable[e]+"."+this._remoteMethodTable[e][t]+"("+JSON.stringify(n)+")")}},{key:"__callFunction",value:function(e,t,n){u.profile(function(){return e+"."+t+"("+d(n)+")"}),isFinite(e)&&(t=this._methodTable[e][t],e=this._moduleTable[e]),__DEV__&&y&&console.log("N->JS : "+e+"."+t+"("+JSON.stringify(n)+")"),e=this._require(e),e[t].apply(e,n),u.profileEnd()}},{key:"__invokeCallback",value:function(e,t){u.profile(function(){return"MessageQueue.invokeCallback("+e+", "+d(t)+")"});var n=this._callbacks[e];if(!n||__DEV__){var r=this._debugInfo[e>>1],o=r&&this._remoteModuleTable[r[0]],i=r&&this._remoteMethodTable[r[0]][r[1]];h(n,"Callback with id "+e+": "+o+"."+i+"() not found"),n&&y&&console.log("N->JS : ("+JSON.stringify(t)+")")}this._callbacks[-2&e]=null,this._callbacks[1|e]=null,n.apply(null,t),u.profileEnd()}},{key:"_genLookupTables",value:function(e,t,n){for(var r=Object.keys(e),o=0,i=r.length;i>o;o++){var a=r[o],s=e[a].methods,u=e[a].moduleID;t[u]=a,n[u]={};for(var c=Object.keys(s),l=0,p=c.length;p>l;l++){var h=c[l],f=s[h];n[u][f.methodID]=h}}}},{key:"_genModules",value:function(e){for(var t=Object.keys(e),n=0,r=t.length;r>n;n++){var o=t[n],i=e[o];this.RemoteModules[o]=this._genModule({},i)}}},{key:"_genModule",value:function(e,t){for(var n=Object.keys(t.methods),r=0,o=n.length;o>r;r++){var i=n[r],a=t.methods[i];e[i]=this._genMethod(t.moduleID,a.methodID,a.type)}return Object.assign(e,t.constants),e}},{key:"_genMethod",value:function(e,t,n){if(n===_.local)return null;var r=null,o=this;return r=n===_.remoteAsync?function(){for(var n=arguments.length,r=Array(n),i=0;n>i;i++)r[i]=arguments[i];return new Promise(function(n,i){o.__nativeCall(e,t,r,n,function(e){var t=a(e);i(t)})})}:function(){for(var n=arguments.length,r=Array(n),i=0;n>i;i++)r[i]=arguments[i];var a=r.length>0?r[r.length-1]:null,s=r.length>1?r[r.length-2]:null,u="function"==typeof a,c="function"==typeof s;c&&h(u,"Cannot have a non-function arg after a function arg.");var l=u+c,p=u?a:null,f=c?s:null;return r=r.slice(0,r.length-l),o.__nativeCall(e,t,r,f,p)},r.type=n,r}}]),e}();n.exports=S}),__d("BridgeProfiling",["ReactPerf"],function(e,t,n,r){"use strict";var o=o||this,i=1<<17,a={profile:function(e){o.__BridgeProfilingIsProfiling&&(e="function"==typeof e?e():e,console.profile(i,e))},profileEnd:function(){o.__BridgeProfilingIsProfiling&&console.profileEnd(i)},swizzleReactPerf:function(){var e=t("ReactPerf"),n=e.measure;e.measure=function(t,r,i){return i=n.apply(e,arguments),function(e){if(o.__BridgeProfilingIsProfiling){var n=this._instance&&this._instance.constructor&&(this._instance.constructor.displayName||this._instance.constructor.name);a.profile(t+"."+r+"("+n+")")}var s=i.apply(this,arguments);return a.profileEnd(),s}}}};n.exports=a}),__d("ReactPerf",[],function(e,t,n,r){"use strict";function o(e,t,n){return n}var i={enableMeasure:!1,storedMeasure:o,measureMethods:function(e,t,n){if(__DEV__)for(var r in n)n.hasOwnProperty(r)&&(e[r]=i.measure(t,n[r],e[r]))},measure:function(e,t,n){if(__DEV__){var r=null,o=function(){return i.enableMeasure?(r||(r=i.storedMeasure(e,t,n)),r.apply(this,arguments)):n.apply(this,arguments)};return o.displayName=e+"_"+t,o}return n},injection:{injectMeasure:function(e){i.storedMeasure=e}}};n.exports=i}),__d("ErrorUtils",[],function(e,t,n,r){var o=this;n.exports=o.ErrorUtils}),__d("JSTimersExecution",["invariant","keyMirror","performanceNow","warning","JSTimers","JSTimers"],function(e,t,n,r){"use strict";var o=t("invariant"),i=t("keyMirror"),a=t("performanceNow"),s=t("warning"),u={GUID:1,Type:i({setTimeout:null,setInterval:null,requestAnimationFrame:null,setImmediate:null}),callbacks:[],types:[],timerIDs:[],immediates:[],callTimer:function(e){s(e<=u.GUID,"Tried to call timer with ID "+e+" but no such timer exists");var t=u.timerIDs.indexOf(e);if(-1!==t){var n=u.types[t],r=u.callbacks[t];(n===u.Type.setTimeout||n===u.Type.setImmediate||n===u.Type.requestAnimationFrame)&&u._clearIndex(t);try{if(n===u.Type.setTimeout||n===u.Type.setInterval||n===u.Type.setImmediate)r();else{if(n!==u.Type.requestAnimationFrame)return void console.error("Tried to call a callback with invalid type: "+n);var o=a();r(o)}}catch(i){u.errors=u.errors||[],u.errors.push(i)}}},callTimers:function(e){o(0!==e.length,'Probably shouldn\'t call "callTimers" with no timerIDs'),u.errors=null,e.forEach(u.callTimer);var n=u.errors;if(n){var r=n.length;if(r>1)for(var i=1;r>i;i++)t("JSTimers").setTimeout(function(e){throw e}.bind(null,n[i]),0);throw n[0]}},callImmediates:function(){for(u.errors=null;0!==u.immediates.length;)u.callTimer(u.immediates.shift());u.errors&&u.errors.forEach(function(e){return t("JSTimers").setTimeout(function(){throw e},0)})},_clearIndex:function(e){u.timerIDs[e]=null,u.callbacks[e]=null,u.types[e]=null}};n.exports=u}),__d("performanceNow",["performance"],function(e,t,n,r){var o=t("performance");o&&o.now||(o=Date);var i=o.now.bind(o);n.exports=i}),__d("performance",["ExecutionEnvironment"],function(e,t,n,r){"use strict";var o,i=t("ExecutionEnvironment");i.canUseDOM&&(o=window.performance||window.msPerformance||window.webkitPerformance),n.exports=o||{}}),__d("ExecutionEnvironment",[],function(e,t,n,r){"use strict";var o=!1,i={canUseDOM:o,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:o&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:o&&!!window.screen,isInWorker:!o};n.exports=i}),__d("JSTimers",["NativeModules","JSTimersExecution"],function(e,t,n,r){"use strict";var o=t("NativeModules").Timing,i=t("JSTimersExecution"),a={Types:i.Types,_getFreeIndex:function(){var e=i.timerIDs.indexOf(null);return-1===e&&(e=i.timerIDs.length),e},setTimeout:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),s=2;n>s;s++)r[s-2]=arguments[s];var u=i.GUID++,c=a._getFreeIndex();return i.timerIDs[c]=u,i.callbacks[c]=function(){return e.apply(void 0,r)},i.types[c]=i.Type.setTimeout,o.createTimer(u,t||0,Date.now(),!1),u},setInterval:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),s=2;n>s;s++)r[s-2]=arguments[s];var u=i.GUID++,c=a._getFreeIndex();return i.timerIDs[c]=u,i.callbacks[c]=function(){return e.apply(void 0,r); -},i.types[c]=i.Type.setInterval,o.createTimer(u,t||0,Date.now(),!0),u},setImmediate:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r];var o=i.GUID++,s=a._getFreeIndex();return i.timerIDs[s]=o,i.callbacks[s]=function(){return e.apply(void 0,n)},i.types[s]=i.Type.setImmediate,i.immediates.push(o),o},requestAnimationFrame:function(e){var t=i.GUID++,n=a._getFreeIndex();return i.timerIDs[n]=t,i.callbacks[n]=e,i.types[n]=i.Type.requestAnimationFrame,o.createTimer(t,1,Date.now(),!1),t},clearTimeout:function(e){a._clearTimerID(e)},clearInterval:function(e){a._clearTimerID(e)},clearImmediate:function(e){a._clearTimerID(e),i.immediates.splice(i.immediates.indexOf(e),1)},cancelAnimationFrame:function(e){a._clearTimerID(e)},_clearTimerID:function(e){if(null!=e){var t=i.timerIDs.indexOf(e);-1!==t&&(i._clearIndex(t),i.types[t]!==i.Type.setImmediate&&o.deleteTimer(e))}}};n.exports=a}),__d("ReactUpdates",["CallbackQueue","PooledClass","ReactPerf","ReactReconciler","Transaction","Object.assign","invariant"],function(e,t,n,r){"use strict";function o(){g(O.ReactReconcileTransaction&&S,"ReactUpdates: must inject a reconcile transaction class and batching strategy")}function i(){this.reinitializeTransaction(),this.dirtyComponentsLength=null,this.callbackQueue=p.getPooled(),this.reconcileTransaction=O.ReactReconcileTransaction.getPooled()}function a(e,t,n,r,i,a){o(),S.batchedUpdates(e,t,n,r,i,a)}function s(e,t){return e._mountOrder-t._mountOrder}function u(e){var t=e.dirtyComponentsLength;g(t===y.length,"Expected flush transaction's stored dirty-components length (%s) to match dirty-components array length (%s).",t,y.length),y.sort(s);for(var n=0;t>n;n++){var r=y[n],o=r._pendingCallbacks;if(r._pendingCallbacks=null,d.performUpdateIfNecessary(r,e.reconcileTransaction),o)for(var i=0;in;n+=2){var o=t[n/2];a.addTimespan(o,e[n+1]-e[n],o)}}};n.exports=a}),__d("regenerator/runtime.js",[],function(e,t,n,r){!function(e){"use strict";function t(e,t,n,r){var i=Object.create((t||o).prototype),a=new f(r||[]);return i._invoke=l(e,n,a),i}function r(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(r){return{type:"throw",arg:r}}}function o(){}function i(){}function a(){}function s(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function u(e){this.arg=e}function c(e){function t(n,o,i,a){var s=r(e[n],e,o);if("throw"!==s.type){var c=s.arg,l=c.value;return l instanceof u?Promise.resolve(l.arg).then(function(e){t("next",e,i,a)},function(e){t("throw",e,i,a)}):Promise.resolve(l).then(function(e){c.value=e,i(c)},a)}a(s.arg)}function n(e,n){function r(){return new Promise(function(r,o){t(e,n,r,o)})}return o=o?o.then(r,r):r()}"object"==typeof process&&process.domain&&(t=process.domain.bind(t));var o;this._invoke=n}function l(e,t,n){var o=S;return function(i,a){if(o===E)throw new Error("Generator is already running");if(o===w){if("throw"===i)throw a;return m()}for(;;){var s=n.delegate;if(s){if("return"===i||"throw"===i&&s.iterator[i]===v){n.delegate=null;var u=s.iterator["return"];if(u){var c=r(u,s.iterator,a);if("throw"===c.type){i="throw",a=c.arg;continue}}if("return"===i)continue}var c=r(s.iterator[i],s.iterator,a);if("throw"===c.type){n.delegate=null,i="throw",a=c.arg;continue}i="next",a=v;var l=c.arg;if(!l.done)return o=R,l;n[s.resultName]=l.value,n.next=s.nextLoc,n.delegate=null}if("next"===i)o===R?n.sent=a:n.sent=v;else if("throw"===i){if(o===S)throw o=w,a;n.dispatchException(a)&&(i="next",a=v)}else"return"===i&&n.abrupt("return",a);o=E;var c=r(e,t,n);if("normal"===c.type){o=n.done?w:R;var l={value:c.arg,done:n.done};if(c.arg!==T)return l;n.delegate&&"next"===i&&(a=v)}else"throw"===c.type&&(o=w,i="throw",a=c.arg)}}}function p(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function h(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function f(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(p,this),this.reset(!0)}function d(e){if(e){var t=e[y];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,r=function o(){for(;++n=0;--r){var o=this.tryEntries[r],i=o.completion;if("root"===o.tryLoc)return t("end");if(o.tryLoc<=this.prev){var a=g.call(o,"catchLoc"),s=g.call(o,"finallyLoc");if(a&&s){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&g.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),h(n),T}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;h(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:d(e),resultName:t,nextLoc:n},T}}}("object"==typeof e?e:"object"==typeof window?window:"object"==typeof self?self:this)}),__d("ExceptionsManager",["NativeModules","loadSourceMap","parseErrorStack","stringifySafe"],function(e,t,n,r){"use strict";function o(e,t,n){var r=++m;p&&(n||(n=f(e)),t?p.reportFatalException(e.message,n,r):p.reportSoftException(e.message,n,r),__DEV__&&(l=l||h()).then(function(t){var n=f(e,t);p.updateExceptionMessage(e.message,n,r)})["catch"](function(e){console.warn("Unable to load source map: "+e.message)}))}function i(e,t){e.message||(e=new Error(e));var n=f(e),r="Error: "+e.message+"\n stack: \n"+s(n)+"\n URL: "+e.sourceURL+"\n line: "+e.line+"\n message: "+e.message;console.errorOriginal?console.errorOriginal(r):console.error(r),o(e,t,n)}function a(){console.reportException||(console.reportException=o,console.errorOriginal=console.error.bind(console),console.error=function(){if(console.errorOriginal.apply(null,arguments),console.reportErrorsAsExceptions){var e=Array.prototype.map.call(arguments,d).join(", ");if('"Warning: '!==e.slice(0,10)){var t=new Error("console.error: "+e);t.framesToPop=1,o(t,!1)}}},void 0===console.reportErrorsAsExceptions&&(console.reportErrorsAsExceptions=!0))}function s(e){var t=Math.max.apply(null,e.map(function(e){return e.methodName.length}));return e.map(function(e){return u(e,t)}).join("\n")}function u(e,t){var n=e.file.split("/"),r=n[n.length-1];r.length>18&&(r=r.substr(0,17)+"…");var o=c(t-e.methodName.length);return" "+e.methodName+o+" "+r+":"+e.lineNumber}function c(e){return new Array(e+1).join(" ")}var l,p=t("NativeModules").ExceptionsManager,h=t("loadSourceMap"),f=t("parseErrorStack"),d=t("stringifySafe"),m=0;n.exports={handleException:i,installConsoleErrorReporter:a}}),__d("loadSourceMap",["Promise","NativeModules","SourceMap","react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js"],function(e,t,n,r){"use strict";function o(){return i().then(function(e){return new c(e)})}function i(){return e.RAW_SOURCE_MAP?s.resolve(e.RAW_SOURCE_MAP):p?h?new s(p.getScriptText).then(a).then(function(e){return null===e?s.reject(new Error("No source map URL found. May be running from bundled file.")):s.resolve(e)}).then(fetch).then(function(e){return e.text()}):s.reject(new Error("RCTNetworking module is not available")):s.reject(new Error("RCTSourceCode module is not available"))}function a(e){var t=e.url,n=e.text,r=e.fullSourceMappingURL;if(r)return r;var o=l.getFrom(n);if(!o)return null;var i=t.match(/(.+:\/\/.*?)\//)[1];return i+o}var s=t("Promise"),u=t("NativeModules"),c=t("SourceMap").SourceMapConsumer,l=t("react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js"),p=u.SourceCode,h=u.Networking;n.exports=o}),__d("Promise",["setImmediate","promise/setimmediate/es6-extensions.js","promise/setimmediate/done.js"],function(e,t,n,r){"use strict";e.setImmediate=t("setImmediate");var o=t("promise/setimmediate/es6-extensions.js");t("promise/setimmediate/done.js"),o.prototype["finally"]=function(e){return this.then(e,e)},n.exports=o}),__d("setImmediate",["ImmediateImplementation"],function(e,t,n,r){n.exports=e.setImmediate||t("ImmediateImplementation").setImmediate}),__d("ImmediateImplementation",[],function(e,t,n,r){!function(e,t){"use strict";function n(e){var n=e[0];return e=Array.prototype.slice.call(e,1),f[h]=function(){n.apply(t,e)},m=m.next={handle:h++},m.handle}function o(){for(var e,t;!v&&(e=d.next);)if(d=e,t=f[e.handle]){v=!0;try{t(),v=!1}finally{i(e.handle),v&&(v=!1,d.next&&p(o))}}}function i(e){delete f[e]}function a(){if(e.postMessage&&!e.importScripts){var t=!0,n=function(){t=!1,e.removeEventListener?e.removeEventListener("message",n,!1):e.detachEvent("onmessage",n)};if(e.addEventListener)e.addEventListener("message",n,!1);else{if(!e.attachEvent)return!1;e.attachEvent("onmessage",n)}return e.postMessage("","*"),t}}function s(){var t="setImmediate$"+Math.random()+"$",r=function(n){n.source===e&&"string"==typeof n.data&&0===n.data.indexOf(t)&&o()};e.addEventListener?e.addEventListener("message",r,!1):e.attachEvent("onmessage",r),p=function(){var r=n(arguments);return e.postMessage(t+r,"*"),r}}function u(){var e=new MessageChannel;e.port1.onmessage=o,p=function(){var t=n(arguments);return e.port2.postMessage(t),t}}function c(){var e=g.documentElement;p=function(){var t=n(arguments),r=g.createElement("script");return r.onreadystatechange=function(){r.onreadystatechange=null,e.removeChild(r),r=null,o()},e.appendChild(r),t}}function l(){p=function(){return setTimeout(o,0),n(arguments)}}var p,h=1,f={},d={},m=d,v=!1,g=e.document;a()?s():e.MessageChannel?u():g&&"onreadystatechange"in g.createElement("script")?c():l(),r.setImmediate=p,r.clearImmediate=i}(Function("return this")())}),__d("promise/setimmediate/es6-extensions.js",["promise/setimmediate/core.js"],function(e,t,n,r){"use strict";function o(e){var t=new i(i._99);return t._37=1,t._12=e,t}var i=t("promise/setimmediate/core.js");n.exports=i;var a=o(!0),s=o(!1),u=o(null),c=o(void 0),l=o(0),p=o("");i.resolve=function(e){if(e instanceof i)return e;if(null===e)return u;if(void 0===e)return c;if(e===!0)return a;if(e===!1)return s;if(0===e)return l;if(""===e)return p;if("object"==typeof e||"function"==typeof e)try{var t=e.then;if("function"==typeof t)return new i(t.bind(e))}catch(n){return new i(function(e,t){t(n)})}return o(e)},i.all=function(e){var t=Array.prototype.slice.call(e);return new i(function(e,n){function r(a,s){if(s&&("object"==typeof s||"function"==typeof s)){if(s instanceof i&&s.then===i.prototype.then){for(;3===s._37;)s=s._12;return 1===s._37?r(a,s._12):(2===s._37&&n(s._12),void s.then(function(e){r(a,e)},n))}var u=s.then;if("function"==typeof u){var c=new i(u.bind(s));return void c.then(function(e){r(a,e)},n)}}t[a]=s,0===--o&&e(t)}if(0===t.length)return e([]);for(var o=t.length,a=0;a0&&e.column>=0)||t||n||r)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,orginal:t,name:r}))},r.prototype._serializeMappings=function(){var e,t=0,n=1,r=0,a=0,s=0,u=0,c="";this._mappings.sort(i.compareByGeneratedPositions);for(var l=0,p=this._mappings.length;p>l;l++){if(e=this._mappings[l],e.generatedLine!==n)for(t=0;e.generatedLine!==n;)c+=";",n++;else if(l>0){if(!i.compareByGeneratedPositions(e,this._mappings[l-1]))continue;c+=","}c+=o.encode(e.generatedColumn-t),t=e.generatedColumn,e.source&&(c+=o.encode(this._sources.indexOf(e.source)-u),u=this._sources.indexOf(e.source),c+=o.encode(e.originalLine-1-a),a=e.originalLine-1,c+=o.encode(e.originalColumn-r),r=e.originalColumn,e.name&&(c+=o.encode(this._names.indexOf(e.name)-s),s=this._names.indexOf(e.name)))}return c},r.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;t&&(e=i.relative(t,e));var n=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null},this)},r.prototype.toJSON=function(){var e={version:this._version,file:this._file,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},r.prototype.toString=function(){return JSON.stringify(this)},t.SourceMapGenerator=r}),e("source-map/base64-vlq",["require","exports","module","source-map/base64"],function(e,t,n){function r(e){return 0>e?(-e<<1)+1:(e<<1)+0}function o(e){var t=1===(1&e),n=e>>1;return t?-n:n}var i=e("./base64"),a=5,s=1<>>=a,o>0&&(t|=c),n+=i.encode(t);while(o>0);return n},t.decode=function(e){var t,n,r=0,s=e.length,l=0,p=0;do{if(r>=s)throw new Error("Expected more digits in base 64 VLQ value.");n=i.decode(e.charAt(r++)),t=!!(n&c),n&=u,l+=n<r)-(r>n)}function p(e,t,n){var r;return(r=l(e.source,t.source))?r:(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,r||n?r:(r=l(e.name,t.name))?r:(r=e.generatedLine-t.generatedLine,r?r:e.generatedColumn-t.generatedColumn))}function h(e,t,n){var r;return(r=e.generatedLine-t.generatedLine)?r:(r=e.generatedColumn-t.generatedColumn,r||n?r:(r=l(e.source,t.source))?r:(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,r?r:l(e.name,t.name)))}t.getArg=r;var f=/([\w+\-.]+):\/\/((\w+:\w+)@)?([\w.]+)?(:(\d+))?(\S+)?/,d=/^data:.+\,.+/;t.urlParse=o,t.urlGenerate=i,t.join=a,t.toSetString=s,t.fromSetString=u,t.relative=c,t.compareByOriginalPositions=p,t.compareByGeneratedPositions=h}),e("source-map/array-set",["require","exports","module","source-map/util"],function(e,t,n){function r(){this._array=[],this._set={}}var o=e("./util");r.fromArray=function(e,t){for(var n=new r,o=0,i=e.length;i>o;o++)n.add(e[o],t);return n},r.prototype.add=function(e,t){var n=this.has(e),r=this._array.length;(!n||t)&&this._array.push(e),n||(this._set[o.toSetString(e)]=r)},r.prototype.has=function(e){return Object.prototype.hasOwnProperty.call(this._set,o.toSetString(e))},r.prototype.indexOf=function(e){if(this.has(e))return this._set[o.toSetString(e)];throw new Error('"'+e+'" is not in the set.')},r.prototype.at=function(e){if(e>=0&&e0;)if(";"===f.charAt(0))i++,f=f.slice(1),a=0;else if(","===f.charAt(0))f=f.slice(1);else{if(n={},n.generatedLine=i,r=s.decode(f),n.generatedColumn=a+r.value,a=n.generatedColumn,f=r.rest,f.length>0&&!h.test(f.charAt(0))){if(r=s.decode(f),n.source=this._sources.at(l+r.value),l+=r.value,f=r.rest,0===f.length||h.test(f.charAt(0)))throw new Error("Found a source, but no line and column");if(r=s.decode(f),n.originalLine=u+r.value,u=n.originalLine,n.originalLine+=1,f=r.rest,0===f.length||h.test(f.charAt(0)))throw new Error("Found a source and line, but no column");r=s.decode(f),n.originalColumn=c+r.value,c=n.originalColumn,f=r.rest,f.length>0&&!h.test(f.charAt(0))&&(r=s.decode(f),n.name=this._names.at(p+r.value),p+=r.value,f=r.rest)}this.__generatedMappings.push(n),"number"==typeof n.originalLine&&this.__originalMappings.push(n)}this.__originalMappings.sort(o.compareByOriginalPositions)},r.prototype._findMapping=function(e,t,n,r,o){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[r]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[r]);return i.search(e,t,o)},r.prototype.originalPositionFor=function(e){var t={generatedLine:o.getArg(e,"line"),generatedColumn:o.getArg(e,"column")},n=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",o.compareByGeneratedPositions);if(n){var r=o.getArg(n,"source",null);return r&&this.sourceRoot&&(r=o.join(this.sourceRoot,r)),{source:r,line:o.getArg(n,"originalLine",null),column:o.getArg(n,"originalColumn",null),name:o.getArg(n,"name",null)}}return{source:null,line:null,column:null,name:null}},r.prototype.sourceContentFor=function(e){if(!this.sourcesContent)return null;if(this.sourceRoot&&(e=o.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var t;if(this.sourceRoot&&(t=o.urlParse(this.sourceRoot))){var n=e.replace(/^file:\/\//,"");if("file"==t.scheme&&this._sources.has(n))return this.sourcesContent[this._sources.indexOf(n)];if((!t.path||"/"==t.path)&&this._sources.has("/"+e))return this.sourcesContent[this._sources.indexOf("/"+e)]}throw new Error('"'+e+'" is not in the SourceMap.')},r.prototype.generatedPositionFor=function(e){var t={source:o.getArg(e,"source"),originalLine:o.getArg(e,"line"),originalColumn:o.getArg(e,"column")};this.sourceRoot&&(t.source=o.relative(this.sourceRoot,t.source));var n=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",o.compareByOriginalPositions);return n?{line:o.getArg(n,"generatedLine",null),column:o.getArg(n,"generatedColumn",null)}:{line:null,column:null}},r.GENERATED_ORDER=1,r.ORIGINAL_ORDER=2,r.prototype.eachMapping=function(e,t,n){var i,a=t||null,s=n||r.GENERATED_ORDER;switch(s){case r.GENERATED_ORDER:i=this._generatedMappings;break;case r.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var u=this.sourceRoot;i.map(function(e){var t=e.source;return t&&u&&(t=o.join(u,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name}}).forEach(e,a)},t.SourceMapConsumer=r}),e("source-map/binary-search",["require","exports","module"],function(e,t,n){function r(e,t,n,o,i){var a=Math.floor((t-e)/2)+e,s=i(n,o[a],!0);return 0===s?o[a]:s>0?t-a>1?r(a,t,n,o,i):o[a]:a-e>1?r(e,a,n,o,i):0>e?null:o[e]}t.search=function(e,t,n){ -return t.length>0?r(-1,t.length,e,t,n):null}}),e("source-map/source-node",["require","exports","module","source-map/source-map-generator","source-map/util"],function(e,t,n){function r(e,t,n,r,o){this.children=[],this.sourceContents={},this.line=void 0===e?null:e,this.column=void 0===t?null:t,this.source=void 0===n?null:n,this.name=void 0===o?null:o,null!=r&&this.add(r)}var o=e("./source-map-generator").SourceMapGenerator,i=e("./util");r.fromStringWithSourceMap=function(e,t){function n(e,t){null===e||void 0===e.source?o.add(t):o.add(new r(e.originalLine,e.originalColumn,e.source,t,e.name))}var o=new r,i=e.split("\n"),a=1,s=0,u=null;return t.eachMapping(function(e){if(null===u){for(;a=0;t--)this.prepend(e[t]);else{if(!(e instanceof r||"string"==typeof e))throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},r.prototype.walk=function(e){for(var t,n=0,o=this.children.length;o>n;n++)t=this.children[n],t instanceof r?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},r.prototype.join=function(e){var t,n,r=this.children.length;if(r>0){for(t=[],n=0;r-1>n;n++)t.push(this.children[n]),t.push(e);t.push(this.children[n]),this.children=t}return this},r.prototype.replaceRight=function(e,t){var n=this.children[this.children.length-1];return n instanceof r?n.replaceRight(e,t):"string"==typeof n?this.children[this.children.length-1]=n.replace(e,t):this.children.push("".replace(e,t)),this},r.prototype.setSourceContent=function(e,t){this.sourceContents[i.toSetString(e)]=t},r.prototype.walkSourceContents=function(e){for(var t=0,n=this.children.length;n>t;t++)this.children[t]instanceof r&&this.children[t].walkSourceContents(e);for(var o=Object.keys(this.sourceContents),t=0,n=o.length;n>t;t++)e(i.fromSetString(o[t]),this.sourceContents[o[t]])},r.prototype.toString=function(){var e="";return this.walk(function(t){e+=t}),e},r.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},n=new o(e),r=!1,i=null,a=null,s=null,u=null;return this.walk(function(e,o){t.code+=e,null!==o.source&&null!==o.line&&null!==o.column?((i!==o.source||a!==o.line||s!==o.column||u!==o.name)&&n.addMapping({source:o.source,original:{line:o.line,column:o.column},generated:{line:t.line,column:t.column},name:o.name}),i=o.source,a=o.line,s=o.column,u=o.name,r=!0):r&&(n.addMapping({generated:{line:t.line,column:t.column}}),i=null,r=!1),e.split("").forEach(function(e){"\n"===e?(t.line++,t.column=0):t.column++})}),this.walkSourceContents(function(e,t){n.setSourceContent(e,t)}),{code:t.code,map:n}},t.SourceNode=r}),this.sourceMap={SourceMapConsumer:n("source-map/source-map-consumer").SourceMapConsumer,SourceMapGenerator:n("source-map/source-map-generator").SourceMapGenerator,SourceNode:n("source-map/source-node").SourceNode}}var i={};o.call(i),n.exports=i.sourceMap}),__d("react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js",[],function(e,t,n,r){!function(){var e=null;void function(t,o){"function"==typeof e&&e.amd?e(o):"object"==typeof r?n.exports=o():t.sourceMappingURL=o()}(this,function(){var e=/[#@] sourceMappingURL=([^\s'"]*)/,t=RegExp("(?:/\\*(?:\\s*\r?\n(?://)?)?(?:"+e.source+")\\s*\\*/|//(?:"+e.source+"))\\s*$");return{regex:t,_innerRegex:e,getFrom:function(e){var n=e.match(t);return n?n[1]||n[2]||"":null},existsIn:function(e){return t.test(e)},removeFrom:function(e){return e.replace(t,"")},insertBefore:function(e,n){var r=e.match(t);return r?e.slice(0,r.index)+n+e.slice(r.index):e+n}}})}()}),__d("parseErrorStack",["stacktrace-parser/index.js"],function(e,t,n,r){"use strict";function o(e,t){try{var n=e.originalPositionFor({line:t.lineNumber,column:t.column});n&&(t.file=n.source,t.lineNumber=n.line,t.column=n.column)}catch(r){}}function i(e,t){if(!e||!e.stack)return[];for(var n=Array.isArray(e.stack)?e.stack:a.parse(e.stack),r=e.framesToPop||0;r--;)n.shift();return t&&n.forEach(o.bind(null,t)),n}var a=t("stacktrace-parser/index.js");n.exports=i}),__d("stacktrace-parser/index.js",["stacktrace-parser/lib/stacktrace-parser.js"],function(e,t,n,r){n.exports=t("stacktrace-parser/lib/stacktrace-parser.js")}),__d("stacktrace-parser/lib/stacktrace-parser.js",[],function(e,t,n,r){var o="",i={parse:function(e){for(var t,n,r=/^\s*at (?:(?:(?:Anonymous function)?|((?:\[object object\])?\S+(?: \[as \S+\])?)) )?\(?((?:file|http|https):.*?):(\d+)(?::(\d+))?\)?\s*$/i,i=/^(?:\s*(\S*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i,a=/^\s*at (?:((?:\[object object\])?\S+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i,s=e.split("\n"),u=[],c=0,l=s.length;l>c;++c){if(t=i.exec(s[c]))n={file:t[3],methodName:t[1]||o,lineNumber:+t[4],column:t[5]?+t[5]:null};else if(t=r.exec(s[c]))n={file:t[2],methodName:t[1]||o,lineNumber:+t[3],column:t[4]?+t[4]:null};else{if(!(t=a.exec(s[c])))continue;n={file:t[2],methodName:t[1]||o,lineNumber:+t[3],column:t[4]?+t[4]:null}}u.push(n)}return u}};n.exports=i}),__d("Platform",[],function(e,t,n,r){"use strict";var o={OS:"ios"};n.exports=o}),__d("checkFlowAtRuntime",["NativeModules"],function(e,t,n,r){"use strict";function o(){var e=i();e&&fetch(e+"flow/").then(function(e){return e.json()}).then(function(e){if(!e.silentError)throw{message:e.message,stack:e.errors.map(function(e){return s({},e,{methodName:e.description,file:e.filename})})}},function(){}).done()}function i(){var e=t("NativeModules"),n=e&&e.SourceCode&&e.SourceCode.scriptURL||"";return a(n.match(/^https?:\/\/[^\/]+\//))}function a(e){return e?e[0]:null}var s=Object.assign||function(e){for(var t=1;t-1?t:e}function l(e,t){t=t||{};var r=t.body;if(l.prototype.isPrototypeOf(e)){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new n(e.headers)),this.method=e.method,this.mode=e.mode,r||(r=e._bodyInit,e.bodyUsed=!0)}else this.url=e;if(this.credentials=t.credentials||this.credentials||"omit",(t.headers||!this.headers)&&(this.headers=new n(t.headers)),this.method=c(t.method||this.method||"GET"),this.mode=t.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&r)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(r)}function p(e){var t=new FormData;return e.trim().split("&").forEach(function(e){if(e){var n=e.split("="),r=n.shift().replace(/\+/g," "),o=n.join("=").replace(/\+/g," ");t.append(decodeURIComponent(r),decodeURIComponent(o))}}),t}function h(e){var t=new n,r=e.getAllResponseHeaders().trim().split("\n");return r.forEach(function(e){var n=e.trim().split(":"),r=n.shift().trim(),o=n.join(":").trim();t.append(r,o)}),t}function f(e,t){t||(t={}),this._initBody(e),this.type="default",this.url=null,this.status=t.status,this.ok=this.status>=200&&this.status<300,this.statusText=t.statusText,this.headers=t.headers instanceof n?t.headers:new n(t.headers),this.url=t.url||""}if(!o.fetch){n.prototype.append=function(n,r){n=e(n),r=t(r);var o=this.map[n];o||(o=[],this.map[n]=o),o.push(r)},n.prototype["delete"]=function(t){delete this.map[e(t)]},n.prototype.get=function(t){var n=this.map[e(t)];return n?n[0]:null},n.prototype.getAll=function(t){return this.map[e(t)]||[]},n.prototype.has=function(t){return this.map.hasOwnProperty(e(t))},n.prototype.set=function(n,r){this.map[e(n)]=[t(r)]},n.prototype.forEach=function(e,t){Object.getOwnPropertyNames(this.map).forEach(function(n){this.map[n].forEach(function(r){e.call(t,r,n,this)},this)},this)};var d={blob:"function"==typeof FileReader&&"function"==typeof Blob&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"function"==typeof FormData},m=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];u.call(l.prototype),u.call(f.prototype),o.Headers=n,o.Request=l,o.Response=f,o.fetch=function(e,t){var n;return n=l.prototype.isPrototypeOf(e)&&!t?e:new l(e,t),new Promise(function(e,t){function r(){return"responseURL"in o?o.responseURL:/^X-Request-URL:/m.test(o.getAllResponseHeaders())?o.getResponseHeader("X-Request-URL"):void 0}var o=new XMLHttpRequest;o.onload=function(){var n=1223===o.status?204:o.status;if(100>n||n>599)return void t(new TypeError("Network request failed"));var i={status:n,statusText:o.statusText,headers:h(o),url:r()},a="response"in o?o.response:o.responseText;e(new f(a,i))},o.onerror=function(){t(new TypeError("Network request failed"))},o.open(n.method,n.url,!0),"include"===n.credentials&&(o.withCredentials=!0),"responseType"in o&&d.blob&&(o.responseType="blob"),n.headers.forEach(function(e,t){o.setRequestHeader(t,e)}),o.send("undefined"==typeof n._bodyInit?null:n._bodyInit)})},o.fetch.polyfill=!0}}(),n.exports=o}),__d("Geolocation",["RCTDeviceEventEmitter","NativeModules","invariant","logError","warning"],function(e,t,n,r){"use strict";var o=t("RCTDeviceEventEmitter"),i=t("NativeModules").LocationObserver,a=t("invariant"),s=t("logError"),u=t("warning"),c=[],l=!1,p={getCurrentPosition:function(e,t,n){a("function"==typeof e,"Must provide a valid geo_success callback."),i.getCurrentPosition(n||{},e,t||s)},watchPosition:function(e,t,n){l||(i.startObserving(n||{}),l=!0);var r=c.length;return c.push([o.addListener("geolocationDidChange",e),t?o.addListener("geolocationError",t):null]),r},clearWatch:function(e){var t=c[e];if(t){t[0].remove();var n=t[1];n&&n.remove(),c[e]=void 0;for(var r=!0,o=0;o-1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e),!l.plugins[n]){s(t.extractEvents,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e),l.plugins[n]=t;var r=t.eventTypes;for(var o in r)s(i(r[o],t,o),"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",o,e)}}}function i(e,t,n){s(!l.eventNameDispatchConfigs.hasOwnProperty(n),"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",n),l.eventNameDispatchConfigs[n]=e;var r=e.phasedRegistrationNames;if(r){for(var o in r)if(r.hasOwnProperty(o)){var i=r[o];a(i,t,n)}return!0}return e.registrationName?(a(e.registrationName,t,n),!0):!1}function a(e,t,n){s(!l.registrationNameModules[e],"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e),l.registrationNameModules[e]=t,l.registrationNameDependencies[e]=t.eventTypes[n].dependencies}var s=t("invariant"),u=null,c={},l={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},injectEventPluginOrder:function(e){s(!u,"EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React."),u=Array.prototype.slice.call(e),o()},injectEventPluginsByName:function(e){var t=!1;for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];c.hasOwnProperty(n)&&c[n]===r||(s(!c[n],"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",n),c[n]=r,t=!0)}t&&o()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return l.registrationNameModules[t.registrationName]||null;for(var n in t.phasedRegistrationNames)if(t.phasedRegistrationNames.hasOwnProperty(n)){var r=l.registrationNameModules[t.phasedRegistrationNames[n]];if(r)return r}return null},_resetEventPlugins:function(){u=null;for(var e in c)c.hasOwnProperty(e)&&delete c[e];l.plugins.length=0;var t=l.eventNameDispatchConfigs;for(var n in t)t.hasOwnProperty(n)&&delete t[n];var r=l.registrationNameModules;for(var o in r)r.hasOwnProperty(o)&&delete r[o]}};n.exports=l}),__d("EventPluginUtils",["EventConstants","invariant","warning"],function(e,t,n,r){"use strict";function o(e){return e===_.topMouseUp||e===_.topTouchEnd||e===_.topTouchCancel}function i(e){return e===_.topMouseMove||e===_.topTouchMove}function a(e){return e===_.topMouseDown||e===_.topTouchStart}function s(e,t){var n=e._dispatchListeners,r=e._dispatchIDs;if(__DEV__&&d(e),Array.isArray(n))for(var o=0;oe,"Maximum deep merge depth exceeded. You may be attempting to merge circular structures in an unsupported way.")},checkArrayStrategy:function(e){o(void 0===e||e in u.ArrayStrategies,"You must provide an array strategy to deep merge functions to instruct the deep merge how to resolve merging two arrays.")},ArrayStrategies:i({Clobber:!0,IndexByIndex:!0})};n.exports=u}),__d("NodeHandle",[],function(e,t,n,r){var o={injection:{injectImplementation:function(e){o._Implementation=e}},_Implementation:null,getRootNodeID:function(e){return o._Implementation.getRootNodeID(e)}};n.exports=o}),__d("ReactDefaultBatchingStrategy",["ReactUpdates","Transaction","Object.assign","emptyFunction"],function(e,t,n,r){"use strict";function o(){this.reinitializeTransaction()}var i=t("ReactUpdates"),a=t("Transaction"),s=t("Object.assign"),u=t("emptyFunction"),c={initialize:u,close:function(){f.isBatchingUpdates=!1}},l={initialize:u,close:i.flushBatchedUpdates.bind(i)},p=[l,c];s(o.prototype,a.Mixin,{getTransactionWrappers:function(){return p}});var h=new o,f={isBatchingUpdates:!1,batchedUpdates:function(e,t,n,r,o,i){var a=f.isBatchingUpdates;f.isBatchingUpdates=!0,a?e(t,n,r,o,i):h.perform(e,null,t,n,r,o,i)}};n.exports=f}),__d("ReactNativeComponentEnvironment",["ReactNativeDOMIDOperations","ReactNativeReconcileTransaction"],function(e,t,n,r){"use strict";var o=t("ReactNativeDOMIDOperations"),i=t("ReactNativeReconcileTransaction"),a={processChildrenUpdates:o.dangerouslyProcessChildrenUpdates,replaceNodeWithMarkupByID:o.dangerouslyReplaceNodeWithMarkupByID,unmountIDFromEnvironment:function(){},clearNode:function(){},ReactReconcileTransaction:i};n.exports=a}),__d("ReactNativeDOMIDOperations",["ReactNativeTagHandles","ReactMultiChildUpdateTypes","NativeModules","ReactPerf"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("ReactMultiChildUpdateTypes"),a=t("NativeModules").UIManager,s=t("ReactPerf"),u=function(e,t){if(e.length){for(var n={},r=0;r=r?(this._iteratedObject=void 0,e(void 0,!0)):(this._nextIndex=o+1,i===a?e(o,!1):i===s?e(n[o],!1):i===u?e([o,n[o]],!1):void 0)}},{key:"@@iterator",value:function(){return this}}]),t}(),n=function(){function t(e){if(o(this,t),"string"!=typeof e)throw new TypeError("Object is not a string");this._iteratedString=e,this._nextIndex=0}return i(t,[{key:"next",value:function(){if(!this instanceof t)throw new TypeError("Object is not a StringIterator");if(null==this._iteratedString)return e(void 0,!0);var n=this._nextIndex,r=this._iteratedString,o=r.length;if(n>=o)return this._iteratedString=void 0,e(void 0,!0);var i,a=r.charCodeAt(n);if(55296>a||a>56319||n+1===o)i=r[n];else{var s=r.charCodeAt(n+1);i=56320>s||s>57343?r[n]:r[n]+r[n+1]}return this._nextIndex=n+i.length,e(i,!1)}},{key:"@@iterator",value:function(){return this}}]),t}();return function(e,r){return"string"==typeof e?new n(e):Array.isArray(e)?new t(e,r||s):e[c]()}}()}();Object.assign(l,{KIND_KEY:a,KIND_VALUE:s,KIND_KEY_VAL:u,ITERATOR_SYMBOL:c}),n.exports=l}),__d("_shouldPolyfillES6Collection",[],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function a(t){var n=e[t];if(null==n)return!0;var r=n.prototype;return null==n||"function"!=typeof n||"function"!=typeof r.clear||0!==(new n).size||"function"!=typeof r.keys||"function"!=typeof r.forEach||u(n)||!s(n)}function s(e){var t=function(e){function t(){o(this,t),c(Object.getPrototypeOf(t.prototype),"constructor",this).apply(this,arguments)}return i(t,e),t}(e);try{var n=new t([]);return n.size,n instanceof e}catch(r){return!1}}function u(e){try{e()}catch(t){return!1}return!0}var c=function l(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0===r){var o=Object.getPrototypeOf(e);return null===o?void 0:l(o,t,n)}if("value"in r)return r.value;var i=r.get;return void 0===i?void 0:i.call(n)};n.exports=a}),__d("ReactNativeGlobalResponderHandler",["NativeModules","ReactNativeTagHandles"],function(e,t,n,r){"use strict";var o=t("NativeModules").UIManager,i=t("ReactNativeTagHandles"),a={onChange:function(e,t,n){null!==t?o.setJSResponder(i.mostRecentMountedNodeHandleForRootNodeID(t),n):o.clearJSResponder()}};n.exports=a}),__d("ReactNativeTextComponent",["ReactNativeTagHandles","NativeModules","Object.assign"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("NativeModules").UIManager,a=t("Object.assign"),s=function(e){};a(s.prototype,{construct:function(e){this._currentElement=e,this._stringText=""+e,this._rootNodeID=null},mountComponent:function(e,t,n){this._rootNodeID=e;var r=o.allocateTag(),a=o.getNativeTopRootIDFromNodeID(e);return i.createView(r,"RCTRawText",a?o.rootNodeIDToTag[a]:null,{text:this._stringText}),{rootNodeID:e,tag:r}},receiveComponent:function(e,t,n){if(e!==this._currentElement){this._currentElement=e;var r=""+e;r!==this._stringText&&(this._stringText=r,i.updateView(o.mostRecentMountedNodeHandleForRootNodeID(this._rootNodeID),"RCTRawText",{text:this._stringText}))}},unmountComponent:function(){this._currentElement=null,this._stringText=null,this._rootNodeID=null}}),n.exports=s}),__d("ResponderEventPlugin",["EventConstants","EventPluginUtils","EventPropagators","ReactInstanceHandles","ResponderSyntheticEvent","ResponderTouchHistoryStore","accumulate","invariant","keyOf"],function(e,t,n,r){"use strict";function o(e,t,n,r){var o=v(e)?C.startShouldSetResponder:g(e)?C.moveShouldSetResponder:e===s.topLevelTypes.topSelectionChange?C.selectionChangeShouldSetResponder:C.scrollShouldSetResponder,i=R?l.getFirstCommonAncestorID(R,t):t,a=i===R,u=p.getPooled(o,i,n,r);u.touchHistory=h.touchHistory,a?c.accumulateTwoPhaseDispatchesSkipTarget(u):c.accumulateTwoPhaseDispatches(u);var d=S(u);if(u.isPersistent()||u.constructor.release(u),!d||d===R)return null;var m,y=p.getPooled(C.responderGrant,d,n,r);y.touchHistory=h.touchHistory,c.accumulateDirectDispatches(y);var E=_(y)===!0;if(R){var w=p.getPooled(C.responderTerminationRequest,R,n,r);w.touchHistory=h.touchHistory,c.accumulateDirectDispatches(w);var O=!b(w)||_(w);if(w.isPersistent()||w.constructor.release(w),O){var x=C.responderTerminate,I=p.getPooled(x,R,n,r);I.touchHistory=h.touchHistory,c.accumulateDirectDispatches(I),m=f(m,[y,I]),T(d,E)}else{var P=p.getPooled(C.responderReject,d,n,r);P.touchHistory=h.touchHistory,c.accumulateDirectDispatches(P),m=f(m,P)}}else m=f(m,y),T(d,E);return m}function i(e,t,n){return t&&(e===s.topLevelTypes.topScroll&&!n.responderIgnoreScroll||E>0&&e===s.topLevelTypes.topSelectionChange||v(e)||g(e))}function a(e){var t=e.touches;if(!t||0===t.length)return!0;for(var n=0;n=0,"Ended a touch event which was not counted in trackedTouchCount.")),h.recordTouchTrack(e,r,u);var l=i(e,n,r)?o(e,n,r,u):null,m=R&&v(e),_=R&&g(e),b=R&&y(e),S=m?C.responderStart:_?C.responderMove:b?C.responderEnd:null;if(S){var x=p.getPooled(S,R,r,u);x.touchHistory=h.touchHistory,c.accumulateDirectDispatches(x),l=f(l,x)}var I=R&&e===s.topLevelTypes.topTouchCancel,P=R&&!I&&y(e)&&a(r),N=I?C.responderTerminate:P?C.responderRelease:null;if(N){var D=p.getPooled(N,R,r,u);D.touchHistory=h.touchHistory,c.accumulateDirectDispatches(D),l=f(l,D),T(null)}var M=h.touchHistory.numberActiveTouches;return O.GlobalInteractionHandler&&M!==w&&O.GlobalInteractionHandler.onChange(M),w=M,l},GlobalResponderHandler:null,GlobalInteractionHandler:null,injection:{injectGlobalResponderHandler:function(e){O.GlobalResponderHandler=e},injectGlobalInteractionHandler:function(e){O.GlobalInteractionHandler=e}}};n.exports=O}),__d("ResponderSyntheticEvent",["SyntheticEvent"],function(e,t,n,r){"use strict";function o(e,t,n,r){i.call(this,e,t,n,r)}var i=t("SyntheticEvent"),a={touchHistory:function(e){return null}};i.augmentClass(o,a),n.exports=o}),__d("ResponderTouchHistoryStore",["EventPluginUtils","invariant"],function(e,t,n,r){"use strict";var o=t("EventPluginUtils"),i=t("invariant"),a=o.isMoveish,s=o.isStartish,u=o.isEndish,c=20,l={touchBank:[],numberActiveTouches:0,indexOfSingleActiveTouch:-1,mostRecentTimeStamp:0},p=function(e){return e.timeStamp||e.timestamp},h=function(e){return{touchActive:!0,startTimeStamp:p(e),startPageX:e.pageX,startPageY:e.pageY,currentPageX:e.pageX,currentPageY:e.pageY,currentTimeStamp:p(e),previousPageX:e.pageX,previousPageY:e.pageY,previousTimeStamp:p(e)}},f=function(e,t){e.touchActive=!0,e.startTimeStamp=p(t),e.startPageX=t.pageX,e.startPageY=t.pageY,e.currentPageX=t.pageX,e.currentPageY=t.pageY,e.currentTimeStamp=p(t),e.previousPageX=t.pageX,e.previousPageY=t.pageY,e.previousTimeStamp=p(t)},d=function(e){var t=e.identifier;i(null!=t,"Touch object is missing identifier"),t>c&&console.warn("Touch identifier "+t+" is greater than maximum supported "+c+" which causes performance issues backfilling array locations for all of the indices.")},m=function(e){var t=l.touchBank,n=e.identifier,r=t[n];__DEV__&&d(e),r?f(r,e):t[e.identifier]=h(e),l.mostRecentTimeStamp=p(e)},v=function(e){var t=l.touchBank,n=t[e.identifier];__DEV__&&(d(e),i(n,"Touch data should have been recorded on start")),n.touchActive=!0,n.previousPageX=n.currentPageX,n.previousPageY=n.currentPageY,n.previousTimeStamp=n.currentTimeStamp,n.currentPageX=e.pageX,n.currentPageY=e.pageY,n.currentTimeStamp=p(e),l.mostRecentTimeStamp=p(e)},g=function(e){var t=l.touchBank,n=t[e.identifier];__DEV__&&(d(e),i(n,"Touch data should have been recorded on start")),n.previousPageX=n.currentPageX,n.previousPageY=n.currentPageY,n.previousTimeStamp=n.currentTimeStamp,n.currentPageX=e.pageX,n.currentPageY=e.pageY,n.currentTimeStamp=p(e),n.touchActive=!1,l.mostRecentTimeStamp=p(e)},y={recordTouchTrack:function(e,t){var n=l.touchBank;if(a(e))t.changedTouches.forEach(v);else if(s(e))t.changedTouches.forEach(m),l.numberActiveTouches=t.touches.length,1===l.numberActiveTouches&&(l.indexOfSingleActiveTouch=t.touches[0].identifier);else if(u(e)&&(t.changedTouches.forEach(g),l.numberActiveTouches=t.touches.length,1===l.numberActiveTouches)){for(var r=0;rr;r++)n[r]=r;return S._cache[e]=n,n};S._cache={},b.Mixin={getPublicInstance:function(){return this},construct:function(e){this._currentElement=e},unmountComponent:function(){_(this._rootNodeID),this.unmountChildren(),this._rootNodeID=null},initializeChildren:function(e,t,n,r){var o=this.mountChildren(e,n,r);if(o.length){for(var i=S(o.length),a=[],u=0;u-1?t:t*Math.PI/180}function c(e,t,n){m(!t.getValue,"You passed an Animated.Value to a normal component. You need to wrap that component in an Animated. For example, replace by .");var r=["matrix","translate"];switch(-1!==r.indexOf(e)&&m(Array.isArray(t),"Transform with key of %s must have an array as the value: %s",e,v(n)),e){case"matrix":m(9===t.length||16===t.length,"Matrix transform must have a length of 9 (2d) or 16 (3d). Provided matrix has a length of %s: %s",t.length,v(n));break;case"translate":break;case"rotateX":case"rotateY":case"rotateZ":case"rotate":case"skewX":case"skewY":m("string"==typeof t,'Transform with key of "%s" must be a string: %s',e,v(n)),m(t.indexOf("deg")>-1||t.indexOf("rad")>-1,"Rotate transform must be expressed in degrees (deg) or radians (rad): %s",v(n));break;default:m("number"==typeof t,'Transform with key of "%s" must be a number: %s',e,v(n))}}var l=Object.assign||function(e){for(var t=1;t.49999*f?[0,2*Math.atan2(r,s)*d,90]:-.49999*f>h?[0,-2*Math.atan2(r,s)*d,-90]:[i.roundTo3Places(Math.atan2(2*r*s-2*o*a,1-2*c-2*p)*d),i.roundTo3Places(Math.atan2(2*o*s-2*r*a,1-2*l-2*p)*d),i.roundTo3Places(Math.asin(2*r*o+2*a*s)*d)]},roundTo3Places:function(e){var t=e.toString().split("e");return.001*Math.round(t[0]+"e"+(t[1]?+t[1]-3:3))},decomposeMatrix:function(e){o(16===e.length,"Matrix decomposition needs a list of 3d matrix values, received %s",e);var t=[],n=[],r=[],a=[],s=[];if(e[15]){for(var u=[],c=[],l=0;4>l;l++){u.push([]);for(var p=0;4>p;p++){var h=e[4*l+p]/e[15];u[l].push(h),c.push(3===p?0:h)}}if(c[15]=1,i.determinant(c)){if(0!==u[0][3]||0!==u[1][3]||0!==u[2][3])var f=[u[0][3],u[1][3],u[2][3],u[3][3]],d=i.inverse3x3(c),m=i.transpose4x4(d),t=i.multiplyVectorByMatrix(f,m);else t[0]=t[1]=t[2]=0,t[3]=1;for(var l=0;3>l;l++)s[l]=u[3][l];var v=[];for(l=0;3>l;l++)v[l]=[u[l][0],u[l][1],u[l][2]];r[0]=i.v3Length(v[0]),v[0]=i.v3Normalize(v[0],r[0]),a[0]=i.v3Dot(v[0],v[1]),v[1]=i.v3Combine(v[1],v[0],1,-a[0]),a[0]=i.v3Dot(v[0],v[1]),v[1]=i.v3Combine(v[1],v[0],1,-a[0]),r[1]=i.v3Length(v[1]),v[1]=i.v3Normalize(v[1],r[1]),a[0]/=r[1],a[1]=i.v3Dot(v[0],v[2]),v[2]=i.v3Combine(v[2],v[0],1,-a[1]),a[2]=i.v3Dot(v[1],v[2]),v[2]=i.v3Combine(v[2],v[1],1,-a[2]),r[2]=i.v3Length(v[2]),v[2]=i.v3Normalize(v[2],r[2]),a[1]/=r[2],a[2]/=r[2];var g=i.v3Cross(v[1],v[2]);if(i.v3Dot(v[0],g)<0)for(l=0;3>l;l++)r[l]*=-1,v[l][0]*=-1,v[l][1]*=-1,v[l][2]*=-1;n[0]=.5*Math.sqrt(Math.max(1+v[0][0]-v[1][1]-v[2][2],0)),n[1]=.5*Math.sqrt(Math.max(1-v[0][0]+v[1][1]-v[2][2],0)),n[2]=.5*Math.sqrt(Math.max(1-v[0][0]-v[1][1]+v[2][2],0)),n[3]=.5*Math.sqrt(Math.max(1+v[0][0]+v[1][1]+v[2][2],0)),v[2][1]>v[1][2]&&(n[0]=-n[0]),v[0][2]>v[2][0]&&(n[1]=-n[1]),v[1][0]>v[0][1]&&(n[2]=-n[2]);var y;return y=n[0]<.001&&n[0]>=0&&n[1]<.001&&n[1]>=0?[0,0,i.roundTo3Places(180*Math.atan2(v[0][1],v[0][0])/Math.PI)]:i.quaternionToDegreesXYZ(n,u,v),{rotationDegrees:y,perspective:t,quaternion:n,scale:r,skew:a,translation:s,rotate:y[2],scaleX:r[0],scaleY:r[1],translateX:s[0],translateY:s[1]}}}}};n.exports=i}),__d("ReactNativeStyleAttributes",["ImageStylePropTypes","TextStylePropTypes","ViewStylePropTypes","keyMirror","matricesDiffer","processColor","sizesDiffer"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t>",E={array:i("array"),bool:i("boolean"),func:i("function"),number:i("number"),object:i("object"),string:i("string"),any:a(),arrayOf:s,element:u(),instanceOf:c,node:f(),objectOf:p,oneOf:l,oneOfType:h,shape:d};n.exports=E}),__d("TransformPropTypes",["ReactPropTypes"],function(e,t,n,r){"use strict";var o=t("ReactPropTypes"),i={transform:o.arrayOf(o.oneOfType([o.shape({perspective:o.number}),o.shape({rotate:o.string}),o.shape({rotateX:o.string}),o.shape({rotateY:o.string}),o.shape({rotateZ:o.string}),o.shape({scale:o.number}),o.shape({scaleX:o.number}),o.shape({scaleY:o.number}),o.shape({translateX:o.number}),o.shape({translateY:o.number}),o.shape({skewX:o.string}),o.shape({skewY:o.string})])),transformMatrix:o.arrayOf(o.number)};n.exports=i}),__d("TextStylePropTypes",["ReactPropTypes","ViewStylePropTypes"],function(e,t,n,r){"use strict";for(var o=t("ReactPropTypes"),i=t("ViewStylePropTypes"),a=Object.assign(Object.create(i),{color:o.string,fontFamily:o.string,fontSize:o.number,fontStyle:o.oneOf(["normal","italic"]),fontWeight:o.oneOf(["normal","bold","100","200","300","400","500","600","700","800","900"]),letterSpacing:o.number,lineHeight:o.number,textAlign:o.oneOf(["auto","left","right","center","justify"]),textDecorationLine:o.oneOf(["none","underline","line-through","underline line-through"]),textDecorationStyle:o.oneOf(["solid","double","dotted","dashed"]),textDecorationColor:o.string,writingDirection:o.oneOf(["auto","ltr","rtl"])}),s=Object.keys({padding:null,paddingTop:null,paddingLeft:null,paddingRight:null,paddingBottom:null,paddingVertical:null,paddingHorizontal:null}),u=0;u.5?u/(2-i-a):u/(i+a),i){case e:r=(t-n)/u+(n>t?6:0);break;case t:r=(n-e)/u+2;break;case n:r=(e-t)/u+4}r/=6}return{h:r,s:o,l:s}}function i(e,t,n){function r(e,t,n){return 0>n&&(n+=1),n>1&&(n-=1),1/6>n?e+6*(t-e)*n:.5>n?t:2/3>n?e+(t-e)*(2/3-n)*6:e}var o,i,a;if(e=T(e,360),t=T(t,100),n=T(n,100),0===t)o=i=a=n;else{var s=.5>n?n*(1+t):n+t-n*t,u=2*n-s;o=r(u,s,e+1/3),i=r(u,s,e),a=r(u,s,e-1/3)}return{r:255*o,g:255*i,b:255*a}}function a(e,t,n){e=T(e,255),t=T(t,255),n=T(n,255);var r,o,i=U(e,t,n),a=B(e,t,n),s=i,u=i-a;if(o=0===i?0:u/i,i==a)r=0;else{switch(i){case e:r=(t-n)/u+(n>t?6:0);break;case t:r=(n-e)/u+2;break;case n:r=(e-t)/u+4}r/=6}return{h:r,s:o,v:s}}function s(e,t,n){e=6*T(e,360),t=T(t,100),n=T(n,100);var r=F.floor(e),o=e-r,i=n*(1-t),a=n*(1-o*t),s=n*(1-(1-o)*t),u=r%6,c=[n,a,i,i,s,n][u],l=[s,n,n,a,i,i][u],p=[i,i,s,n,n,a][u];return{r:255*c,g:255*l,b:255*p}}function u(e,t,n,r){var o=[P(H(e).toString(16)),P(H(t).toString(16)),P(H(n).toString(16))];return r&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)?o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0):o.join("")}function c(e,t,n,r){var o=[P(D(r)),P(H(e).toString(16)),P(H(t).toString(16)),P(H(n).toString(16))];return o.join("")}function l(t,n){n=0===n?0:n||10;var r=e(t).toHsl();return r.s-=n/100,r.s=C(r.s),e(r)}function p(t,n){n=0===n?0:n||10;var r=e(t).toHsl();return r.s+=n/100,r.s=C(r.s),e(r)}function h(t){return e(t).desaturate(100)}function f(t,n){n=0===n?0:n||10;var r=e(t).toHsl();return r.l+=n/100,r.l=C(r.l),e(r)}function d(t,n){n=0===n?0:n||10;var r=e(t).toRgb();return r.r=U(0,B(255,r.r-H(255*-(n/100)))),r.g=U(0,B(255,r.g-H(255*-(n/100)))),r.b=U(0,B(255,r.b-H(255*-(n/100)))),e(r)}function m(t,n){n=0===n?0:n||10;var r=e(t).toHsl();return r.l-=n/100,r.l=C(r.l),e(r)}function v(t,n){var r=e(t).toHsl(),o=(H(r.h)+n)%360;return r.h=0>o?360+o:o,e(r)}function g(t){var n=e(t).toHsl();return n.h=(n.h+180)%360,e(n)}function y(t){var n=e(t).toHsl(),r=n.h;return[e(t),e({h:(r+120)%360,s:n.s,l:n.l}),e({h:(r+240)%360,s:n.s,l:n.l})]}function _(t){var n=e(t).toHsl(),r=n.h;return[e(t),e({h:(r+90)%360,s:n.s,l:n.l}),e({h:(r+180)%360,s:n.s,l:n.l}),e({h:(r+270)%360,s:n.s,l:n.l})]}function b(t){var n=e(t).toHsl(),r=n.h;return[e(t),e({h:(r+72)%360,s:n.s,l:n.l}),e({h:(r+216)%360,s:n.s,l:n.l})]}function S(t,n,r){n=n||6,r=r||30;var o=e(t).toHsl(),i=360/r,a=[e(t)];for(o.h=(o.h-(i*n>>1)+720)%360;--n;)o.h=(o.h+i)%360,a.push(e(o));return a}function R(t,n){n=n||6;for(var r=e(t).toHsv(),o=r.h,i=r.s,a=r.v,s=[],u=1/n;n--;)s.push(e({h:o,s:i,v:a})),a=(a+u)%1;return s}function E(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[e[n]]=n);return t}function w(e){return e=parseFloat(e),(isNaN(e)||0>e||e>1)&&(e=1),e}function T(e,t){x(e)&&(e="100%");var n=I(e);return e=B(t,U(0,parseFloat(e))),n&&(e=parseInt(e*t,10)/100),F.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function C(e){return B(1,U(0,e))}function O(e){return parseInt(e,16)}function x(e){return"string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)}function I(e){return"string"==typeof e&&-1!=e.indexOf("%")}function P(e){return 1==e.length?"0"+e:""+e}function N(e){return 1>=e&&(e=100*e+"%"),e}function D(e){return Math.round(255*parseFloat(e)).toString(16)}function M(e){return O(e)/255}function A(e){e=e.replace(j,"").replace(L,"").toLowerCase();var t=!1;if(z[e])e=z[e],t=!0;else if("transparent"==e)return{r:0,g:0,b:0,a:0,format:"name"};var n;return(n=W.rgb.exec(e))?{r:n[1],g:n[2],b:n[3]}:(n=W.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=W.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=W.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=W.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=W.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=W.hex8.exec(e))?{a:M(n[1]),r:O(n[2]),g:O(n[3]),b:O(n[4]),format:t?"name":"hex8"}:(n=W.hex6.exec(e))?{r:O(n[1]),g:O(n[2]),b:O(n[3]),format:t?"name":"hex"}:(n=W.hex3.exec(e))?{r:O(n[1]+""+n[1]),g:O(n[2]+""+n[2]),b:O(n[3]+""+n[3]),format:t?"name":"hex"}:!1}function k(e){var t,n;return e=e||{level:"AA",size:"small"},t=(e.level||"AA").toUpperCase(),n=(e.size||"small").toLowerCase(),"AA"!==t&&"AAA"!==t&&(t="AA"),"small"!==n&&"large"!==n&&(n="small"),{level:t,size:n}}var j=/^[\s,#]+/,L=/\s+$/,V=0,F=Math,H=F.round,B=F.min,U=F.max,q=F.random;e.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3},getLuminance:function(){var e,t,n,r,o,i,a=this.toRgb();return e=a.r/255,t=a.g/255,n=a.b/255,r=.03928>=e?e/12.92:Math.pow((e+.055)/1.055,2.4),o=.03928>=t?t/12.92:Math.pow((t+.055)/1.055,2.4),i=.03928>=n?n/12.92:Math.pow((n+.055)/1.055,2.4),.2126*r+.7152*o+.0722*i},setAlpha:function(e){return this._a=w(e),this._roundA=H(100*this._a)/100,this},toHsv:function(){var e=a(this._r,this._g,this._b);return{h:360*e.h,s:e.s,v:e.v,a:this._a}},toHsvString:function(){var e=a(this._r,this._g,this._b),t=H(360*e.h),n=H(100*e.s),r=H(100*e.v);return 1==this._a?"hsv("+t+", "+n+"%, "+r+"%)":"hsva("+t+", "+n+"%, "+r+"%, "+this._roundA+")"},toHsl:function(){var e=o(this._r,this._g,this._b);return{h:360*e.h,s:e.s,l:e.l,a:this._a}},toHslString:function(){var e=o(this._r,this._g,this._b),t=H(360*e.h),n=H(100*e.s),r=H(100*e.l);return 1==this._a?"hsl("+t+", "+n+"%, "+r+"%)":"hsla("+t+", "+n+"%, "+r+"%, "+this._roundA+")"},toHex:function(e){return u(this._r,this._g,this._b,e)},toHexString:function(e){return"#"+this.toHex(e)},toHex8:function(){return c(this._r,this._g,this._b,this._a)},toHex8String:function(){return"#"+this.toHex8()},toRgb:function(){return{r:H(this._r),g:H(this._g),b:H(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+H(this._r)+", "+H(this._g)+", "+H(this._b)+")":"rgba("+H(this._r)+", "+H(this._g)+", "+H(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:H(100*T(this._r,255))+"%",g:H(100*T(this._g,255))+"%",b:H(100*T(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+H(100*T(this._r,255))+"%, "+H(100*T(this._g,255))+"%, "+H(100*T(this._b,255))+"%)":"rgba("+H(100*T(this._r,255))+"%, "+H(100*T(this._g,255))+"%, "+H(100*T(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":this._a<1?!1:G[u(this._r,this._g,this._b,!0)]||!1},toFilter:function(t){var n="#"+c(this._r,this._g,this._b,this._a),r=n,o=this._gradientType?"GradientType = 1, ":"";if(t){var i=e(t);r=i.toHex8String()}return"progid:DXImageTransform.Microsoft.gradient("+o+"startColorstr="+n+",endColorstr="+r+")"},toString:function(e){var t=!!e;e=e||this._format;var n=!1,r=this._a<1&&this._a>=0,o=!t&&r&&("hex"===e||"hex6"===e||"hex3"===e||"name"===e);return o?"name"===e&&0===this._a?this.toName():this.toRgbString():("rgb"===e&&(n=this.toRgbString()),"prgb"===e&&(n=this.toPercentageRgbString()),("hex"===e||"hex6"===e)&&(n=this.toHexString()),"hex3"===e&&(n=this.toHexString(!0)),"hex8"===e&&(n=this.toHex8String()),"name"===e&&(n=this.toName()),"hsl"===e&&(n=this.toHslString()),"hsv"===e&&(n=this.toHsvString()),n||this.toHexString())},_applyModification:function(e,t){var n=e.apply(null,[this].concat([].slice.call(t)));return this._r=n._r,this._g=n._g,this._b=n._b,this.setAlpha(n._a),this},lighten:function(){return this._applyModification(f,arguments)},brighten:function(){return this._applyModification(d,arguments)},darken:function(){return this._applyModification(m,arguments)},desaturate:function(){return this._applyModification(l,arguments)},saturate:function(){return this._applyModification(p,arguments)},greyscale:function(){return this._applyModification(h,arguments)},spin:function(){return this._applyModification(v,arguments)},_applyCombination:function(e,t){return e.apply(null,[this].concat([].slice.call(t)))},analogous:function(){return this._applyCombination(S,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(R,arguments)},splitcomplement:function(){return this._applyCombination(b,arguments)},triad:function(){return this._applyCombination(y,arguments)},tetrad:function(){return this._applyCombination(_,arguments)}},e.fromRatio=function(t,n){if("object"==typeof t){var r={};for(var o in t)t.hasOwnProperty(o)&&("a"===o?r[o]=t[o]:r[o]=N(t[o]));t=r}return e(t,n)},e.equals=function(t,n){return t&&n?e(t).toRgbString()==e(n).toRgbString():!1},e.random=function(){return e.fromRatio({r:q(),g:q(),b:q()})},e.mix=function(t,n,r){r=0===r?0:r||50;var o,i=e(t).toRgb(),a=e(n).toRgb(),s=r/100,u=2*s-1,c=a.a-i.a; -o=u*c==-1?u:(u+c)/(1+u*c),o=(o+1)/2;var l=1-o,p={r:a.r*o+i.r*l,g:a.g*o+i.g*l,b:a.b*o+i.b*l,a:a.a*s+i.a*(1-s)};return e(p)},e.readability=function(t,n){var r=e(t),o=e(n);return(Math.max(r.getLuminance(),o.getLuminance())+.05)/(Math.min(r.getLuminance(),o.getLuminance())+.05)},e.isReadable=function(t,n,r){var o,i,a=e.readability(t,n);switch(i=!1,o=k(r),o.level+o.size){case"AAsmall":case"AAAlarge":i=a>=4.5;break;case"AAlarge":i=a>=3;break;case"AAAsmall":i=a>=7}return i},e.mostReadable=function(t,n,r){var o,i,a,s,u=null,c=0;r=r||{},i=r.includeFallbackColors,a=r.level,s=r.size;for(var l=0;lc&&(c=o,u=e(n[l]));return e.isReadable(t,u,{level:a,size:s})||!i?u:(r.includeFallbackColors=!1,e.mostReadable(t,["#fff","#000"],r))};var z=e.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},G=e.hexNames=E(z),W=function(){var e="[-\\+]?\\d+%?",t="[-\\+]?\\d*\\.\\d+%?",n="(?:"+t+")|(?:"+e+")",r="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?",o="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?";return{rgb:new RegExp("rgb"+r),rgba:new RegExp("rgba"+o),hsl:new RegExp("hsl"+r),hsla:new RegExp("hsla"+o),hsv:new RegExp("hsv"+r),hsva:new RegExp("hsva"+o),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex8:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();"undefined"!=typeof n&&n.exports?n.exports=e:"function"==typeof define&&define.amd?define(function(){return e}):window.tinycolor=e}()}),__d("sizesDiffer",[],function(e,t,n,r){"use strict";var o={width:void 0,height:void 0},i=function(e,t){return e=e||o,t=t||o,e!==t&&(e.width!==t.width||e.height!==t.height)};n.exports=i}),__d("deepFreezeAndThrowOnMutationInDev",[],function(e,t,n,r){"use strict";function o(e){if(__DEV__){if("object"!=typeof e||null===e||Object.isFrozen(e)||Object.isSealed(e))return;for(var t in e)e.hasOwnProperty(t)&&(e.__defineGetter__(t,a.bind(null,e[t])),e.__defineSetter__(t,i.bind(null,t)),o(e[t]));Object.freeze(e),Object.seal(e)}}function i(e,t){throw Error("You attempted to set the key `"+e+"` with the value `"+JSON.stringify(t)+"` on an object that is meant to be immutable and has been frozen.")}function a(e){return e}n.exports=o}),__d("ReactNativeEventEmitter",["EventPluginHub","ReactEventEmitterMixin","ReactNativeTagHandles","NodeHandle","EventConstants","merge","warning"],function(e,t,n,r){"use strict";var o=t("EventPluginHub"),i=t("ReactEventEmitterMixin"),a=t("ReactNativeTagHandles"),s=t("NodeHandle"),u=t("EventConstants"),c=t("merge"),l=t("warning"),p=u.topLevelTypes,h={},f=function(e,t){for(var n=[],r=0;rr;r++)if(o(e[r],t[r]))return!0}else{for(var i in e)if(o(e[i],t[i]))return!0;for(var a in t)if(void 0===e[a]&&void 0!==t[a])return!0}return!1};n.exports=o}),__d("diffRawProperties",["deepDiffer"],function(e,t,n,r){"use strict";function o(e,t,n,r){var o,a,s,u,c,l;if(n)for(var p in n)o=r[p],o&&(s=t&&t[p],a=n[p],"function"==typeof s&&(s=!0),"function"==typeof a&&(a=!0),s!==a&&(l=o.diff||i,u="object"!=typeof a||null===a,c=u||!s||l(s,a),c&&(e=e||{},e[p]=a)));if(t)for(var p in t)o=r[p],o&&(e&&void 0!==e[p]||(s=t[p],a=n&&n[p],"function"==typeof s&&(s=!0),"function"==typeof a&&(a=!0),s!==a&&(void 0===a&&(a=null),l=o.diff||i,u="object"!=typeof a||null===a,c=u&&s!==a||l(s,a),c&&(e=e||{},e[p]=a))));return e}var i=t("deepDiffer");n.exports=o}),__d("RCTEventEmitter",["ReactNativeEventEmitter"],function(e,t,n,r){"use strict";var o=t("ReactNativeEventEmitter");n.exports=o}),__d("RCTLog",["invariant"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=t("NativeMethodsMixin"),a=t("ReactPropTypes"),s=t("React"),u=t("StyleSheet"),c=t("View"),l=t("requireNativeComponent"),p="#999999",h=s.createClass({displayName:"ActivityIndicatorIOS",mixins:[i],propTypes:{animating:a.bool,color:a.string,hidesWhenStopped:a.bool,size:a.oneOf(["small","large"]),onLayout:a.func},getDefaultProps:function(){return{animating:!0,color:p,hidesWhenStopped:!0,size:"small"}},render:function(){var e=this.props,t=e.onLayout,n=e.style,r=o(e,["onLayout","style"]),i="large"===this.props.size?f.sizeLarge:f.sizeSmall;return s.createElement(c,{onLayout:t,style:[f.container,i,n]},s.createElement(d,r))}}),f=u.create({container:{alignItems:"center",justifyContent:"center"},sizeSmall:{width:20,height:20},sizeLarge:{width:36,height:36}}),d=l("RCTActivityIndicatorView",h,{nativeOnly:{activityIndicatorViewStyle:!0}});n.exports=h}),__d("StyleSheet",["StyleSheetRegistry","StyleSheetValidation"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n>")+": "+JSON.stringify(t,null," ")+(r||""))},f={};p.addValidStylePropTypes(a),p.addValidStylePropTypes(u),p.addValidStylePropTypes(c),n.exports=p}),__d("View",["NativeMethodsMixin","ReactPropTypes","NativeModules","React","ReactNativeStyleAttributes","ReactNativeViewAttributes","StyleSheetPropType","ViewStylePropTypes","createReactNativeComponentClass"],function(e,t,n,r){"use strict";var o=t("NativeMethodsMixin"),i=t("ReactPropTypes"),a=t("NativeModules").UIManager,s=t("React"),u=t("ReactNativeStyleAttributes"),c=t("ReactNativeViewAttributes"),l=t("StyleSheetPropType"),p=t("ViewStylePropTypes"),h=t("createReactNativeComponentClass"),f=l(p),d=["none","button","link","header","search","image","selected","plays","key","text","summary","disabled","frequentUpdates","startsMedia","adjustable","allowsDirectInteraction","pageTurn"],m=["none","button","radiobutton_checked","radiobutton_unchecked"],v=s.createClass({displayName:"View",mixins:[o],viewConfig:{uiViewClassName:"RCTView",validAttributes:c.RCTView},statics:{AccessibilityTraits:d,AccessibilityComponentType:m},propTypes:{accessible:i.bool,accessibilityLabel:i.string,accessibilityComponentType:i.oneOf(m),accessibilityLiveRegion:i.oneOf(["none","polite","assertive"]),importantForAccessibility:i.oneOf(["auto","yes","no","no-hide-descendants"]),accessibilityTraits:i.oneOfType([i.oneOf(d),i.arrayOf(i.oneOf(d))]),onAccessibilityTap:i.func,onMagicTap:i.func,testID:i.string,onMoveShouldSetResponder:i.func,onResponderGrant:i.func,onResponderMove:i.func,onResponderReject:i.func,onResponderRelease:i.func,onResponderTerminate:i.func,onResponderTerminationRequest:i.func,onStartShouldSetResponder:i.func,onStartShouldSetResponderCapture:i.func,onLayout:i.func,pointerEvents:i.oneOf(["box-none","none","box-only","auto"]),style:f,removeClippedSubviews:i.bool,renderToHardwareTextureAndroid:i.bool,shouldRasterizeIOS:i.bool,collapsable:i.bool,needsOffscreenAlphaCompositing:i.bool},render:function(){return s.createElement(g,this.props)}}),g=h({validAttributes:c.RCTView,uiViewClassName:"RCTView"});if(g.propTypes=v.propTypes,__DEV__){var y=a.viewConfigs&&a.viewConfigs.RCTView||{};for(var _ in y.nativeProps){var b=v;if(!b.propTypes[_]&&!u[_])throw new Error("View is missing propType for native prop `"+_+"`")}}var S=g;__DEV__&&(S=v),n.exports=S}),__d("ReactNativeViewAttributes",["merge"],function(e,t,n,r){"use strict";var o=t("merge"),i={};i.UIView={pointerEvents:!0,accessible:!0,accessibilityLabel:!0,accessibilityComponentType:!0,accessibilityLiveRegion:!0,accessibilityTraits:!0,importantForAccessibility:!0,testID:!0,renderToHardwareTextureAndroid:!0,shouldRasterizeIOS:!0,onLayout:!0,onAccessibilityTap:!0,onMagicTap:!0,collapsable:!0,needsOffscreenAlphaCompositing:!0},i.RCTView=o(i.UIView,{removeClippedSubviews:!0}),n.exports=i}),__d("StyleSheetPropType",["createStrictShapeTypeChecker","flattenStyle"],function(e,t,n,r){"use strict";function o(e){var t=i(e);return function(e,n,r,o){var i=e;return e[n]&&(i={},i[n]=a(e[n])),t(i,n,r,o)}}var i=t("createStrictShapeTypeChecker"),a=t("flattenStyle");n.exports=o}),__d("createStrictShapeTypeChecker",["ReactPropTypeLocationNames","invariant","merge"],function(e,t,n,r){"use strict";function o(e){function t(t,n,r,o,u){if(!n[r])return void(t&&a(!1,"Required object `"+r+"` was not specified in "+("`"+o+"`.")));var c=n[r],l=typeof c,p=u&&i[u]||"(unknown)";"object"!==l&&a(!1,"Invalid "+p+" `"+r+"` of type `"+l+"` "+("supplied to `"+o+"`, expected `object`."));var h=s(n[r],e);for(var f in h){var d=e[f];d||a(!1,"Invalid props."+r+" key `"+f+"` supplied to `"+o+"`.\nBad object: "+JSON.stringify(n[r],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(e),null," "));var m=d(c,f,o,u);m&&a(!1,m.message+"\nBad object: "+JSON.stringify(n[r],null," "))}}function n(e,n,r,o){return t(!1,e,n,r,o)}return n.isRequired=t.bind(null,!0),n}var i=t("ReactPropTypeLocationNames"),a=t("invariant"),s=t("merge");n.exports=o}),__d("requireNativeComponent",["verifyPropTypes","NativeModules","UnimplementedView","createReactNativeComponentClass","insetsDiffer","pointsDiffer","matricesDiffer","processColor","sizesDiffer","verifyPropTypes","warning"],function(e,t,n,r){function o(e,t,n){var r=a[e];if(!r||!r.NativeProps)return m(!1,'Native component for "%s" does not exist',e),s;var o=i({},a.RCTView.NativeProps,r.NativeProps);r.uiViewClassName=e,r.validAttributes={},r.propTypes=t&&t.propTypes;for(var c in o){var l=!1,p={},h=v[o[c]];h&&(p.diff=h,l=!0);var f=g[o[c]];f&&(p.process=f,l=!0),r.validAttributes[c]=l?p:!0}return __DEV__&&t&&d(t,r,n&&n.nativeOnly),u(r)}var i=Object.assign||function(e){for(var t=1;t=t)return e[n];return e[e.length-1]||1}function l(e){if("object"==typeof e)return e;var t=f.getAssetByID(e);return t?p(t):null}function p(e){var t=o();return t?{width:e.width,height:e.height,uri:a(t,e),isStatic:!1}:{width:e.width,height:e.height,uri:i(e),isStatic:!0}}var h,f=t("AssetRegistry"),d=t("PixelRatio"),m=t("Platform"),v=t("NativeModules").SourceCode;n.exports=l,n.exports.pickScale=c}),__d("AssetRegistry",[],function(e,t,n,r){"use strict";function o(e){return a.push(e)}function i(e){return a[e-1]}var a=[];n.exports={registerAsset:o,getAssetByID:i}}),__d("PixelRatio",["Dimensions"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=this.state.prevRenderedRowsCount&&t.sectionHeaderShouldUpdate(l);e.push(s.createElement(h,{key:"s_"+p,shouldUpdate:!!d,render:this.props.renderSectionHeader.bind(null,t.getSectionHeaderData(l),p)})),i.push(c++)}for(var m=0;m=this.state.prevRenderedRowsCount&&t.rowShouldUpdate(l,m),_=s.createElement(h,{key:"r_"+g,shouldUpdate:!!y,render:this.props.renderRow.bind(null,t.getRowData(l,m),p,v,this.onRowHighlighted)});if(e.push(_),c++,this.props.renderSeparator&&(m!==f.length-1||l===n.length-1)){var b=this.state.highlightedRow.sectionID===p&&(this.state.highlightedRow.rowID===v||this.state.highlightedRow.rowID===f[m+1]),S=this.props.renderSeparator(p,v,b);e.push(S),c++}if(++r===this.state.curRenderedRowsCount)break}if(r>=this.state.curRenderedRowsCount)break}}var w=this.props,T=w.renderScrollComponent,C=o(w,["renderScrollComponent"]);return C.scrollEventThrottle||(C.scrollEventThrottle=R),Object.assign(C,{onScroll:this._onScroll,stickyHeaderIndices:i,onKeyboardWillShow:void 0,onKeyboardWillHide:void 0,onKeyboardDidShow:void 0,onKeyboardDidHide:void 0}),s.cloneElement(T(C),{ref:E},a,e,u)},_measureAndUpdateScrollProps:function(){var e=this.getScrollResponder();e&&e.getInnerViewNode&&(u.measureLayout(e.getInnerViewNode(),s.findNodeHandle(e),m,this._setScrollContentLength),u.measureLayoutRelativeToParent(s.findNodeHandle(e),m,this._setScrollVisibleLength),c&&c.calculateChildFrames&&c.calculateChildFrames(s.findNodeHandle(e),this._updateChildFrames))},_setScrollContentLength:function(e,t,n,r){this.scrollProperties.contentLength=this.props.horizontal?n:r},_setScrollVisibleLength:function(e,t,n,r){this.scrollProperties.visibleLength=this.props.horizontal?n:r,this._updateVisibleRows(),this._renderMoreRowsIfNeeded()},_updateChildFrames:function(e){this._updateVisibleRows(e)},_renderMoreRowsIfNeeded:function(){if(null!==this.scrollProperties.contentLength&&null!==this.scrollProperties.visibleLength&&this.state.curRenderedRowsCount!==this.props.dataSource.getRowCount()){var e=this._getDistanceFromEnd(this.scrollProperties);ei||o>R?b&&(c=!0,delete m[y],l[f]||(l[f]={}),l[f][y]=!1):b||(c=!0,m[y]=!0,l[f]||(l[f]={}),l[f][y]=!0)}d(m)?this._visibleRows[f]&&delete this._visibleRows[f]:this._visibleRows[f]=m}}c&&this.props.onChangeVisibleRows(this._visibleRows,l)}},_onScroll:function(e){var t=!this.props.horizontal;this.scrollProperties.visibleLength=e.nativeEvent.layoutMeasurement[t?"height":"width"],this.scrollProperties.contentLength=e.nativeEvent.contentSize[t?"height":"width"],this.scrollProperties.offset=e.nativeEvent.contentOffset[t?"y":"x"],this._updateVisibleRows(e.nativeEvent.updatedChildFrames);var n=this._getDistanceFromEnd(this.scrollProperties)=this.rowIdentities[n].length))return this.rowIdentities[n][t];t-=this.rowIdentities[n].length}return null}},{key:"getSectionIDForFlatIndex",value:function(e){for(var t=e,n=0;n=this.rowIdentities[n].length))return this.sectionIdentities[n];t-=this.rowIdentities[n].length}return null}},{key:"getSectionLengths",value:function(){for(var e=[],t=0;t but not `scrollEventThrottle`. You will only receive one event. Using `16` you get all the events but be aware that it may cause frame drops, use a bigger number if you don't need as much precision."),"android"===a.OS&&"on-drag"===this.props.keyboardDismissMode&&y(),this.scrollResponderHandleScroll(e)},render:function(){var e=[this.props.horizontal&&x.contentContainerHorizontal,this.props.contentContainerStyle];if(__DEV__&&this.props.style){var t=_(this.props.style),n=["alignItems","justifyContent"].filter(function(e){return t&&void 0!==t[e]});S(0===n.length,"ScrollView child layout ("+JSON.stringify(n)+") must by applied through the contentContainerStyle prop.")}var r,i=c.createElement(d,{ref:C,style:e,removeClippedSubviews:this.props.removeClippedSubviews,collapsable:!1},this.props.children),s=void 0!==this.props.alwaysBounceHorizontal?this.props.alwaysBounceHorizontal:this.props.horizontal,l=void 0!==this.props.alwaysBounceVertical?this.props.alwaysBounceVertical:!this.props.horizontal,p=o({},this.props,{alwaysBounceHorizontal:s,alwaysBounceVertical:l,style:[x.base,this.props.style],onTouchStart:this.scrollResponderHandleTouchStart,onTouchMove:this.scrollResponderHandleTouchMove,onTouchEnd:this.scrollResponderHandleTouchEnd,onScrollBeginDrag:this.scrollResponderHandleScrollBeginDrag,onScrollEndDrag:this.scrollResponderHandleScrollEndDrag,onMomentumScrollBegin:this.scrollResponderHandleMomentumScrollBegin,onMomentumScrollEnd:this.scrollResponderHandleMomentumScrollEnd,onStartShouldSetResponder:this.scrollResponderHandleStartShouldSetResponder,onStartShouldSetResponderCapture:this.scrollResponderHandleStartShouldSetResponderCapture,onScrollShouldSetResponder:this.scrollResponderHandleScrollShouldSetResponder,onScroll:this.handleScroll,onResponderGrant:this.scrollResponderHandleResponderGrant,onResponderTerminationRequest:this.scrollResponderHandleTerminationRequest,onResponderTerminate:this.scrollResponderHandleTerminate,onResponderRelease:this.scrollResponderHandleResponderRelease,onResponderReject:this.scrollResponderHandleResponderReject});return"ios"===a.OS?r=u:"android"===a.OS&&(r=this.props.horizontal?N:P),S(void 0!==r,"ScrollViewClass must not be undefined"),c.createElement(r,o({},p,{ref:T}),i)}}),x=h.create({base:{flex:1},contentContainerHorizontal:{alignSelf:"flex-start",flexDirection:"row"}}),I=o({},l.UIView,{alwaysBounceHorizontal:!0,alwaysBounceVertical:!0,automaticallyAdjustContentInsets:!0,bounces:!0,centerContent:!0,contentInset:{diff:b},contentOffset:{diff:R},decelerationRate:!0,horizontal:!0,keyboardDismissMode:!0,keyboardShouldPersistTaps:!0,maximumZoomScale:!0,minimumZoomScale:!0,pagingEnabled:!0,removeClippedSubviews:!0,scrollEnabled:!0,scrollIndicatorInsets:{diff:b},scrollsToTop:!0,showsHorizontalScrollIndicator:!0,showsVerticalScrollIndicator:!0,snapToInterval:!0,snapToAlignment:!0,stickyHeaderIndices:{diff:g},scrollEventThrottle:!0,zoomScale:!0});if("android"===a.OS)var P=v({validAttributes:I,uiViewClassName:"RCTScrollView"}),N=v({validAttributes:I,uiViewClassName:"AndroidHorizontalScrollView"});else if("ios"===a.OS)var u=E("RCTScrollView",O);n.exports=O}),__d("PointPropType",["ReactPropTypes","createStrictShapeTypeChecker"],function(e,t,n,r){"use strict";var o=t("ReactPropTypes"),i=t("createStrictShapeTypeChecker"),a=i({x:o.number,y:o.number});n.exports=a}),__d("ScrollResponder",["NativeModules","Platform","RCTDeviceEventEmitter","React","Subscribable","TextInputState","warning"],function(e,t,n,r){"use strict";var o=t("NativeModules"),i=t("Platform"),a=t("RCTDeviceEventEmitter"),s=t("React"),u=t("Subscribable"),c=t("TextInputState"),l=o.UIManager,p=l.RCTScrollView.Constants,h=t("warning"),f=16,d={mixins:[u.Mixin],statics:p,scrollResponderMixinGetInitialState:function(){return{isTouching:!1,lastMomentumScrollBeginTime:0,lastMomentumScrollEndTime:0,observedScrollSinceBecomingResponder:!1,becameResponderWhileAnimating:!1}},scrollResponderHandleScrollShouldSetResponder:function(){return this.state.isTouching},scrollResponderHandleStartShouldSetResponder:function(){return!1},scrollResponderHandleStartShouldSetResponderCapture:function(e){var t=c.currentlyFocusedField();return this.props.keyboardShouldPersistTaps===!1&&null!=t&&e.target!==t?!0:this.scrollResponderIsAnimating()},scrollResponderHandleResponderReject:function(){h(!1,"ScrollView doesn't take rejection well - scrolls anyway")},scrollResponderHandleTerminationRequest:function(){return!this.state.observedScrollSinceBecomingResponder},scrollResponderHandleTouchEnd:function(e){var t=e.nativeEvent;this.state.isTouching=0!==t.touches.length,this.props.onTouchEnd&&this.props.onTouchEnd(e)},scrollResponderHandleResponderRelease:function(e){this.props.onResponderRelease&&this.props.onResponderRelease(e);var t=c.currentlyFocusedField();this.props.keyboardShouldPersistTaps!==!1||null==t||e.target===t||this.state.observedScrollSinceBecomingResponder||this.state.becameResponderWhileAnimating||(this.props.onScrollResponderKeyboardDismissed&&this.props.onScrollResponderKeyboardDismissed(e),c.blurTextInput(t))},scrollResponderHandleScroll:function(e){this.state.observedScrollSinceBecomingResponder=!0,this.props.onScroll&&this.props.onScroll(e)},scrollResponderHandleResponderGrant:function(e){this.state.observedScrollSinceBecomingResponder=!1,this.props.onResponderGrant&&this.props.onResponderGrant(e),this.state.becameResponderWhileAnimating=this.scrollResponderIsAnimating()},scrollResponderHandleScrollBeginDrag:function(e){this.props.onScrollBeginDrag&&this.props.onScrollBeginDrag(e)},scrollResponderHandleScrollEndDrag:function(e){this.props.onScrollEndDrag&&this.props.onScrollEndDrag(e)},scrollResponderHandleMomentumScrollBegin:function(e){this.state.lastMomentumScrollBeginTime=Date.now(),this.props.onMomentumScrollBegin&&this.props.onMomentumScrollBegin(e)},scrollResponderHandleMomentumScrollEnd:function(e){this.state.lastMomentumScrollEndTime=Date.now(),this.props.onMomentumScrollEnd&&this.props.onMomentumScrollEnd(e)},scrollResponderHandleTouchStart:function(e){this.state.isTouching=!0,this.props.onTouchStart&&this.props.onTouchStart(e)},scrollResponderHandleTouchMove:function(e){this.props.onTouchMove&&this.props.onTouchMove(e)},scrollResponderIsAnimating:function(){var e=Date.now(),t=e-this.state.lastMomentumScrollEndTime,n=f>t||this.state.lastMomentumScrollEndTime=1,"Navigator requires props.initialRoute or props.initialRouteStack.");var n=t.length-1;return this.props.initialRoute&&(n=t.indexOf(this.props.initialRoute),E(-1!==n,"initialRoute is not in initialRouteStack.")),{sceneConfigStack:t.map(function(t){return e.props.configureScene(t)}),routeStack:t,presentedIndex:n,transitionFromIndex:null,activeGesture:null,pendingGestureProgress:null,transitionQueue:[]}},componentWillMount:function(){var e=this;this.__defineGetter__("navigationContext",this._getNavigationContext),this._subRouteFocus=[],this.parentNavigator=this.props.navigator,this._handlers={},this.springSystem=new w.SpringSystem,this.spring=this.springSystem.createSpring(),this.spring.setRestSpeedThreshold(.05),this.spring.setCurrentValue(0).setAtRest(),this.spring.addListener({onSpringEndStateChange:function(){e._interactionHandle||(e._interactionHandle=e.createInteractionHandle())},onSpringUpdate:function(){e._handleSpringUpdate()},onSpringAtRest:function(){e._completeTransition()}}),this.panGesture=m.create({onMoveShouldSetPanResponder:this._handleMoveShouldSetPanResponder,onPanResponderGrant:this._handlePanResponderGrant,onPanResponderRelease:this._handlePanResponderRelease,onPanResponderMove:this._handlePanResponderMove,onPanResponderTerminate:this._handlePanResponderTerminate}),this._interactionHandle=null,this._emitWillFocus(this.state.routeStack[this.state.presentedIndex])},componentDidMount:function(){this._handleSpringUpdate(),this._emitDidFocus(this.state.routeStack[this.state.presentedIndex])},componentWillUnmount:function(){this._navigationContext&&(this._navigationContext.dispose(),this._navigationContext=null)},immediatelyResetRouteStack:function(e){ -var t=this,n=e.length-1;this.setState({routeStack:e,sceneConfigStack:e.map(this.props.configureScene),presentedIndex:n,activeGesture:null,transitionFromIndex:null,transitionQueue:[]},function(){t._handleSpringUpdate()})},_transitionTo:function(e,t,n,r){if(e!==this.state.presentedIndex){if(null!==this.state.transitionFromIndex)return void this.state.transitionQueue.push({destIndex:e,velocity:t,cb:r});this.state.transitionFromIndex=this.state.presentedIndex,this.state.presentedIndex=e,this.state.transitionCb=r,this._onAnimationStart(),s&&s.startRecordingFps();var o=this.state.sceneConfigStack[this.state.transitionFromIndex]||this.state.sceneConfigStack[this.state.presentedIndex];E(o,"Cannot configure scene at index "+this.state.transitionFromIndex),null!=n&&this.spring.setCurrentValue(n),this.spring.setOvershootClampingEnabled(!0),this.spring.getSpringConfig().friction=o.springFriction,this.spring.getSpringConfig().tension=o.springTension,this.spring.setVelocity(t||o.defaultTransitionVelocity),this.spring.setEndValue(1)}},_handleSpringUpdate:function(){if(null!=this.state.transitionFromIndex)this._transitionBetween(this.state.transitionFromIndex,this.state.presentedIndex,this.spring.getCurrentValue());else if(null!=this.state.activeGesture){var e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._transitionBetween(this.state.presentedIndex,e,this.spring.getCurrentValue())}},_completeTransition:function(){if(1!==this.spring.getCurrentValue()&&0!==this.spring.getCurrentValue())return void(this.state.pendingGestureProgress&&(this.state.pendingGestureProgress=null));this._onAnimationEnd();var e=this.state.presentedIndex,t=this._subRouteFocus[e]||this.state.routeStack[e];if(this._emitDidFocus(t),s&&s.stopRecordingFps(Date.now()),this.state.transitionFromIndex=null,this.spring.setCurrentValue(0).setAtRest(),this._hideScenes(),this.state.transitionCb&&(this.state.transitionCb(),this.state.transitionCb=null),this._interactionHandle&&(this.clearInteractionHandle(this._interactionHandle),this._interactionHandle=null),this.state.pendingGestureProgress){var n=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._enableScene(n),void this.spring.setEndValue(this.state.pendingGestureProgress)}if(this.state.transitionQueue.length){var r=this.state.transitionQueue.shift();this._enableScene(r.destIndex),this._emitWillFocus(this.state.routeStack[r.destIndex]),this._transitionTo(r.destIndex,r.velocity,null,r.cb)}},_emitDidFocus:function(e){this.navigationContext.emit("didfocus",{route:e}),this.props.onDidFocus&&this.props.onDidFocus(e)},_emitWillFocus:function(e){this.navigationContext.emit("willfocus",{route:e});var t=this._navBar;t&&t.handleWillFocus&&t.handleWillFocus(e),this.props.onWillFocus&&this.props.onWillFocus(e)},_hideScenes:function(){var e=null;this.state.activeGesture&&(e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture));for(var t=0;t=t;t++)this._setRenderSceneToHardwareTextureAndroid(t,!1);var n=this._navBar;n&&n.onAnimationEnd&&n.onAnimationEnd()},_setRenderSceneToHardwareTextureAndroid:function(e,t){var n=this.refs["scene_"+e];null!==n&&void 0!==n&&n.setNativeProps({renderToHardwareTextureAndroid:t})},_handleTouchStart:function(){this._eligibleGestures=N},_handleMoveShouldSetPanResponder:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];return this._expectingGestureGrant=this._matchGestureAction(this._eligibleGestures,n.gestures,t),!!this._expectingGestureGrant},_doesGestureOverswipe:function(e){var t=this.state.presentedIndex<=0&&("pop"===e||"jumpBack"===e),n=this.state.presentedIndex>=this.state.routeStack.length-1&&"jumpForward"===e;return n||t},_handlePanResponderGrant:function(e,t){E(this._expectingGestureGrant,"Responder granted unexpectedly."),this._attachGesture(this._expectingGestureGrant),this._onAnimationStart(),this._expectingGestureGrant=null},_deltaForGestureAction:function(e){switch(e){case"pop":case"jumpBack":return-1;case"jumpForward":return 1;default:return void E(!1,"Unsupported gesture action "+e)}},_handlePanResponderRelease:function(e,t){var n=this,r=this.state.sceneConfigStack[this.state.presentedIndex],o=this.state.activeGesture;if(o){var i=r.gestures[o],a=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);if(0===this.spring.getCurrentValue())return this.spring.setCurrentValue(0).setAtRest(),void this._completeTransition();var s,u,c="top-to-bottom"===i.direction||"bottom-to-top"===i.direction,l="right-to-left"===i.direction||"bottom-to-top"===i.direction;c?(s=l?-t.vy:t.vy,u=l?-t.dy:t.dy):(s=l?-t.vx:t.vx,u=l?-t.dx:t.dx);var p=S(-10,s,10);if(Math.abs(s)i.fullDistance*i.stillCompletionRatio;p=h?i.snapVelocity:-i.snapVelocity}if(0>p||this._doesGestureOverswipe(o)){if(null==this.state.transitionFromIndex){var f=this.state.presentedIndex;this.state.presentedIndex=a,this._transitionTo(f,-p,1-this.spring.getCurrentValue())}}else this._emitWillFocus(this.state.routeStack[a]),this._transitionTo(a,p,null,function(){"pop"===o&&n._cleanScenesPastIndex(a)});this._detachGesture()}},_handlePanResponderTerminate:function(e,t){if(null!=this.state.activeGesture){var n=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._detachGesture();var r=this.state.presentedIndex;this.state.presentedIndex=n,this._transitionTo(r,null,1-this.spring.getCurrentValue())}},_attachGesture:function(e){this.state.activeGesture=e;var t=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._enableScene(t)},_detachGesture:function(){this.state.activeGesture=null,this.state.pendingGestureProgress=null,this._hideScenes()},_handlePanResponderMove:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];if(this.state.activeGesture){var r=n.gestures[this.state.activeGesture];return this._moveAttachedGesture(r,t)}var o=this._matchGestureAction(N,n.gestures,t);o&&this._attachGesture(o)},_moveAttachedGesture:function(e,t){var n="top-to-bottom"===e.direction||"bottom-to-top"===e.direction,r="right-to-left"===e.direction||"bottom-to-top"===e.direction,o=n?t.dy:t.dx;o=r?-o:o;var i=e.gestureDetectMovement,a=(o-i)/(e.fullDistance-i);if(0>a&&e.isDetachable){var s=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._transitionBetween(this.state.presentedIndex,s,0),this._detachGesture(),void(null!=this.state.pendingGestureProgress&&this.spring.setCurrentValue(0))}if(this._doesGestureOverswipe(this.state.activeGesture)){var u=e.overswipe.frictionConstant,c=e.overswipe.frictionByDistance,l=1/(u+Math.abs(a)*c);a*=l}a=S(0,a,1),null!=this.state.transitionFromIndex?this.state.pendingGestureProgress=a:this.state.pendingGestureProgress?this.spring.setEndValue(a):this.spring.setCurrentValue(a)},_matchGestureAction:function(e,t,n){var r=this;if(!t)return null;var o=null;return e.some(function(e,i){var a=t[e];if(a){if(null==a.overswipe&&r._doesGestureOverswipe(e))return!1;var s="top-to-bottom"===a.direction||"bottom-to-top"===a.direction,u="right-to-left"===a.direction||"bottom-to-top"===a.direction,c=s?n.moveY:n.moveX,l=s?n.dy:n.dx,p=s?n.dx:n.dy,h=a.edgeHitWidth;u&&(c=-c,l=-l,p=-p,h=s?-(O-h):-(C-h));var f=null==a.edgeHitWidth||h>c;if(!f)return!1;var d=l>=a.gestureDetectMovement;if(!d)return!1;var m=Math.abs(l)>Math.abs(p)*a.directionRatio;return m?(o=e,!0):void(r._eligibleGestures=r._eligibleGestures.slice().splice(i,1))}}),o},_transitionSceneStyle:function(e,t,n,r){var o=this.refs["scene_"+r];if(null!==o&&void 0!==o){var i=t>e?t:e,a=this.state.sceneConfigStack[i];a||(a=this.state.sceneConfigStack[i-1]);var s={},u=e>r||t>r?a.animationInterpolators.out:a.animationInterpolators.into,c=t>e?n:1-n,l=u(s,c);l&&o.setNativeProps({style:s})}},_transitionBetween:function(e,t,n){this._transitionSceneStyle(e,t,n,e),this._transitionSceneStyle(e,t,n,t);var r=this._navBar;r&&r.updateProgress&&t>=0&&e>=0&&r.updateProgress(n,e,t)},_handleResponderTerminationRequest:function(){return!1},_getDestIndexWithinBounds:function(e){var t=this.state.presentedIndex,n=t+e;E(n>=0,"Cannot jump before the first route.");var r=this.state.routeStack.length-1;return E(r>=n,"Cannot jump past the last route."),n},_jumpN:function(e){var t=this._getDestIndexWithinBounds(e);this._enableScene(t),this._emitWillFocus(this.state.routeStack[t]),this._transitionTo(t)},jumpTo:function(e){var t=this.state.routeStack.indexOf(e);E(-1!==t,"Cannot jump to route that is not in the route stack"),this._jumpN(t-this.state.presentedIndex)},jumpForward:function(){this._jumpN(1)},jumpBack:function(){this._jumpN(-1)},push:function(e){var t=this;E(!!e,"Must supply route to push");var n=this.state.presentedIndex+1,r=this.state.routeStack.slice(0,n),o=this.state.sceneConfigStack.slice(0,n),i=r.concat([e]),a=i.length-1,s=o.concat([this.props.configureScene(e)]);this._emitWillFocus(i[a]),this.setState({routeStack:i,sceneConfigStack:s},function(){t._enableScene(a),t._transitionTo(a)})},_popN:function(e){var t=this;if(0!==e){E(this.state.presentedIndex-e>=0,"Cannot pop below zero");var n=this.state.presentedIndex-e;this._enableScene(n),this._emitWillFocus(this.state.routeStack[n]),this._transitionTo(n,null,null,function(){t._cleanScenesPastIndex(n)})}},pop:function(){this.state.transitionQueue.length||this.state.presentedIndex>0&&this._popN(1)},replaceAtIndex:function(e,t,n){var r=this;if(E(!!e,"Must supply route to replace"),0>t&&(t+=this.state.routeStack.length),!(this.state.routeStack.length<=t)){var o=this.state.routeStack.slice(),i=this.state.sceneConfigStack.slice();o[t]=e,i[t]=this.props.configureScene(e),t===this.state.presentedIndex&&this._emitWillFocus(e),this.setState({routeStack:o,sceneConfigStack:i},function(){t===r.state.presentedIndex&&r._emitDidFocus(e),n&&n()})}},replace:function(e){this.replaceAtIndex(e,this.state.presentedIndex)},replacePrevious:function(e){this.replaceAtIndex(e,this.state.presentedIndex-1)},popToTop:function(){this.popToRoute(this.state.routeStack[0])},popToRoute:function(e){var t=this.state.routeStack.indexOf(e);E(-1!==t,"Calling popToRoute for a route that doesn't exist!");var n=this.state.presentedIndex-t;this._popN(n)},replacePreviousAndPop:function(e){this.state.routeStack.length<2||(this.replacePrevious(e),this.pop())},resetTo:function(e){var t=this;E(!!e,"Must supply route to push"),this.replaceAtIndex(e,0,function(){t.state.presentedIndex>0&&t._popN(t.state.presentedIndex)})},getCurrentRoutes:function(){return this.state.routeStack.slice()},_cleanScenesPastIndex:function(e){var t=e+1;t0?(r=this._list.pop(),r.constructor.call(r,e,t,n)):r=new c(e,t,n),r}},{key:"put",value:function(e){this._list.push(e)}}]),e}(),u=new s,c=function(){function e(t,n,r){o(this,e),this._type=t,this._target=n,this._data=r,this._defaultPrevented=!1,this._disposed=!1,this._propagationStopped=!1}return i(e,null,[{key:"pool",value:function(e,t,n){return u.get(e,t,n)}}]),i(e,[{key:"preventDefault",value:function(){this._defaultPrevented=!0}},{key:"stopPropagation",value:function(){this._propagationStopped=!0}},{key:"stop",value:function(){this.preventDefault(),this.stopPropagation()}},{key:"isPropagationStopped",value:function(){return this._propagationStopped}},{key:"dispose",value:function(){a(!this._disposed,"NavigationEvent is already disposed"),this._disposed=!0,this._type=null,this._target=null,this._data=null,this._defaultPrevented=!1,u.put(this)}},{key:"type",get:function(){return this._type}},{key:"target",get:function(){return this._target}},{key:"data",get:function(){return this._data}},{key:"defaultPrevented",get:function(){return this._defaultPrevented}}]),e}();n.exports=c}),__d("NavigationEventEmitter",["EventEmitter","NavigationEvent"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;ne?o.Left[e]:o.Right[e]},S=a.createClass({displayName:"NavigatorBreadcrumbNavigationBar",propTypes:{navigator:f.shape({push:f.func,pop:f.func,replace:f.func,popToRoute:f.func,popToTop:f.func}),routeMapper:f.shape({rightContentForRoute:f.func,titleContentForRoute:f.func,iconForRoute:f.func}),navState:a.PropTypes.shape({routeStack:a.PropTypes.arrayOf(a.PropTypes.object),presentedIndex:a.PropTypes.number}),style:u.propTypes.style},statics:{Styles:o},_updateIndexProgress:function(e,t,n,r){var o,i=r>n?e:1-e,a=t-n,s=t-r;p(h[t],"Cannot find breadcrumb interpolators for "+t),o=a>0&&0===s||s>0&&0===a?h[t].RightToCenter:0>a&&0===s||0>s&&0===a?h[t].CenterToLeft:a===s?h[t].RightToCenter:h[t].RightToLeft,o.Crumb(d[t].style,i)&&this._setPropsIfExists("crumb_"+t,d[t]),o.Icon(m[t].style,i)&&this._setPropsIfExists("icon_"+t,m[t]),o.Separator(v[t].style,i)&&this._setPropsIfExists("separator_"+t,v[t]),o.Title(g[t].style,i)&&this._setPropsIfExists("title_"+t,g[t]);var u=this.refs["right_"+t];u&&o.RightItem(y[t].style,i)&&u.setNativeProps(y[t])},updateProgress:function(e,t,n){for(var r=Math.max(t,n),o=Math.min(t,n),i=o;r>=i;i++)this._updateIndexProgress(e,i,t,n)},onAnimationStart:function(e,t){for(var n=Math.max(e,t),r=Math.min(e,t),o=r;n>=o;o++)this._setRenderViewsToHardwareTextureAndroid(o,!0)},onAnimationEnd:function(){for(var e=this.props.navState.routeStack.length-1,t=0;e>=t;t++)this._setRenderViewsToHardwareTextureAndroid(t,!1)},_setRenderViewsToHardwareTextureAndroid:function(e,t){var n={renderToHardwareTextureAndroid:t};this._setPropsIfExists("icon_"+e,n),this._setPropsIfExists("separator_"+e,n),this._setPropsIfExists("title_"+e,n),this._setPropsIfExists("right_"+e,n)},componentWillMount:function(){this._descriptors={crumb:new l,title:new l,right:new l}},render:function(){var e=this.props.navState,t=e&&e.routeStack.map(this._getBreadcrumb),n=e.routeStack.map(this._getTitle),r=e.routeStack.map(this._getRightButton);return a.createElement(u,{style:[R.breadCrumbContainer,this.props.style]},n,t,r)},_getBreadcrumb:function(e,t){if(this._descriptors.crumb.has(e))return this._descriptors.crumb.get(e);var n=this.props.routeMapper,r=b(t,_(this.props.navState)),o=a.createElement(u,{ref:"crumb_"+t,style:r.Crumb},a.createElement(u,{ref:"icon_"+t,style:r.Icon},n.iconForRoute(e,this.props.navigator)),a.createElement(u,{ref:"separator_"+t,style:r.Separator},n.separatorForRoute(e,this.props.navigator)));return this._descriptors.crumb=this._descriptors.crumb.set(e,o),o},_getTitle:function(e,t){if(this._descriptors.title.has(e))return this._descriptors.title.get(e);var n=this.props.routeMapper.titleContentForRoute(this.props.navState.routeStack[t],this.props.navigator),r=b(t,_(this.props.navState)),o=a.createElement(u,{ref:"title_"+t,style:r.Title},n);return this._descriptors.title=this._descriptors.title.set(e,o),o},_getRightButton:function(e,t){if(this._descriptors.right.has(e))return this._descriptors.right.get(e);var n=this.props.routeMapper.rightContentForRoute(this.props.navState.routeStack[t],this.props.navigator);if(!n)return this._descriptors.right=this._descriptors.right.set(e,null),null;var r=b(t,_(this.props.navState)),o=a.createElement(u,{ref:"right_"+t,style:r.RightItem},n);return this._descriptors.right=this._descriptors.right.set(e,o),o},_setPropsIfExists:function(e,t){var e=this.refs[e];e&&e.setNativeProps(t)}}),R=s.create({breadCrumbContainer:{overflow:"hidden",position:"absolute",height:i.General.TotalNavHeight,top:0,left:0,right:0}});n.exports=S}),__d("NavigatorBreadcrumbNavigationBarStyles",["Dimensions","NavigatorNavigationBarStyles","buildStyleInterpolator","merge"],function(e,t,n,r){"use strict";for(var o=t("Dimensions"),i=t("NavigatorNavigationBarStyles"),a=t("buildStyleInterpolator"),s=t("merge"),u=o.get("window").width,c=i.General.StatusBarHeight,l=i.General.NavBarHeight,p=4,h=40,f=9,d=h+f,m=100,v=.6,g=10,y={position:"absolute",flexDirection:"row",top:c,width:d,height:l,backgroundColor:"transparent"},_={width:h,height:l},b={width:f,height:l},S={position:"absolute",top:c,height:l,backgroundColor:"transparent"},R=s(S,{left:0,right:0,alignItems:"center",height:l}),E={position:"absolute",top:c,right:p,overflow:"hidden",opacity:1,height:l,backgroundColor:"transparent"},w=[],T=[],C=[],O=0;g>O;O++){var x=d*O+p;w[O]={Crumb:s(y,{left:x}),Icon:s(_,{opacity:v}),Separator:s(b,{opacity:1}),Title:s(S,{left:x,opacity:0}),RightItem:s(E,{opacity:0})},T[O]={Crumb:s(y,{left:x}),Icon:s(_,{opacity:1}),Separator:s(b,{opacity:0}),Title:s(S,{left:x+h,opacity:1}),RightItem:s(E,{opacity:1})};var I=u-100;C[O]={Crumb:s(y,{left:I}),Icon:s(_,{opacity:0}),Separator:s(b,{opacity:0}),Title:s(S,{left:I+h,opacity:0}),RightItem:s(E,{opacity:0})}}T[0]={Crumb:s(y,{left:u/4}),Icon:s(_,{opacity:0}),Separator:s(b,{opacity:0}),Title:s(R,{opacity:1}),RightItem:T[0].RightItem},w[0].Title=s(R,{left:-u/4,opacity:0}),C[0].Title=s(R,{opacity:0});var P=function(e,t){return{Crumb:a({left:{type:"linear",from:e.Crumb.left,to:t.Crumb.left,min:0,max:1,extrapolate:!0}}),Icon:a({opacity:{type:"linear",from:e.Icon.opacity,to:t.Icon.opacity,min:0,max:1}}),Separator:a({opacity:{type:"linear",from:e.Separator.opacity,to:t.Separator.opacity,min:0,max:1}}),Title:a({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),RightItem:a({opacity:{type:"linear",from:e.RightItem.opacity,to:t.RightItem.opacity,min:0,max:1,round:m}})}},N=T.map(function(e,t){return{RightToCenter:P(C[t],T[t]),CenterToLeft:P(T[t],w[t]),RightToLeft:P(C[t],w[t])}});n.exports={Interpolators:N,Left:w,Center:T,Right:C,IconWidth:h,IconHeight:l,SeparatorWidth:f,SeparatorHeight:l}}),__d("NavigatorNavigationBarStyles",["Dimensions","buildStyleInterpolator","merge"],function(e,t,n,r){"use strict";function o(e,t){return{Title:a({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),LeftButton:a({opacity:{type:"linear",from:e.LeftButton.opacity,to:t.LeftButton.opacity,min:0,max:1,round:d},left:{type:"linear",from:e.LeftButton.left,to:t.LeftButton.left,min:0,max:1}}),RightButton:a({opacity:{type:"linear",from:e.RightButton.opacity,to:t.RightButton.opacity,min:0,max:1,round:d},left:{type:"linear",from:e.RightButton.left,to:t.RightButton.left,min:0,max:1,extrapolate:!0}})}}var i=t("Dimensions"),a=t("buildStyleInterpolator"),s=t("merge"),u=i.get("window").width,c=44,l=20,p=c+l,h={Title:{position:"absolute",top:l,left:0,right:0,alignItems:"center",height:c,backgroundColor:"transparent"},LeftButton:{position:"absolute",top:l,left:0,overflow:"hidden",opacity:1,height:c,backgroundColor:"transparent"},RightButton:{position:"absolute",top:l,right:0,overflow:"hidden",opacity:1,alignItems:"flex-end",height:c,backgroundColor:"transparent"}},f={Left:{Title:s(h.Title,{left:-u/2,opacity:0}),LeftButton:s(h.LeftButton,{left:-u/3,opacity:1}),RightButton:s(h.RightButton,{left:u/3,opacity:0})},Center:{Title:s(h.Title,{left:0,opacity:1}),LeftButton:s(h.LeftButton,{left:0,opacity:1}),RightButton:s(h.RightButton,{left:2*u/3-0,opacity:1})},Right:{Title:s(h.Title,{left:u/2,opacity:0}),LeftButton:s(h.LeftButton,{left:0,opacity:0}),RightButton:s(h.RightButton,{left:u,opacity:0})}},d=100,m={RightToCenter:o(f.Right,f.Center),CenterToLeft:o(f.Center,f.Left),RightToLeft:o(f.Right,f.Left)};n.exports={General:{NavBarHeight:c,StatusBarHeight:l,TotalNavHeight:p},Interpolators:m,Stages:f}}),__d("buildStyleInterpolator",["keyOf"],function(e,t,n,r){for(var o=t("keyOf"),i=o({x:null}),a=o({y:null}),s=o({z:null}),u=o({w:null}),c=o({transformRotateRadians:null}),l={transformRotateRadians:!0,transformScale:!0,transformTranslate:!0},p={transformRotateRadians:[0,0,0,1],transformTranslate:[0,0,0],transformScale:[1,1,1]},h=/([^\s,]+)/g,f=function(e,t){var n=e.toString(),r=n.slice(n.indexOf("(")+1,n.indexOf(")")).match(h)||[],o=r.map(function(e){return"\\b"+e+"\\b"}).join("|"),i=new RegExp(o,"g"),a=n.substring(n.indexOf("{")+1,n.lastIndexOf("}")),s=a.replace(i,function(e){var n=r.indexOf(e),o=t[n];return o});return s.split("\n")},d={unroll:function(e,t,n,r,o,i,a,s,u,c,l,p,h,f,d,m,v){t=e[0],n=e[1],r=e[2],o=e[3],i=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],p=e[10],h=e[11],f=e[12],d=e[13],m=e[14],v=e[15]},matrixDiffers:function(e,t,n,r,o,i,a,s,u,c,l,p,h,f,d,m,v,g){e=e||n!==t[0]||r!==t[1]||o!==t[2]||i!==t[3]||a!==t[4]||s!==t[5]||u!==t[6]||c!==t[7]||l!==t[8]||p!==t[9]||h!==t[10]||f!==t[11]||d!==t[12]||m!==t[13]||v!==t[14]||g!==t[15]},transformScale:function(e,t){var n=t[0],r=t[1],o=t[2];e[0]=e[0]*n,e[1]=e[1]*n,e[2]=e[2]*n,e[3]=e[3]*n,e[4]=e[4]*r,e[5]=e[5]*r,e[6]=e[6]*r,e[7]=e[7]*r,e[8]=e[8]*o,e[9]=e[9]*o,e[10]=e[10]*o,e[11]=e[11]*o,e[12]=e[12],e[13]=e[13],e[14]=e[14],e[15]=e[15]},transformTranslate:function(e,t){var n=t[0],r=t[1],o=t[2];e[12]=e[0]*n+e[4]*r+e[8]*o+e[12],e[13]=e[1]*n+e[5]*r+e[9]*o+e[13],e[14]=e[2]*n+e[6]*r+e[10]*o+e[14],e[15]=e[3]*n+e[7]*r+e[11]*o+e[15]},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,h=r*s,f=r*u,d=o*u,m=i*a,v=i*s,g=i*u,y=1-(h+d),_=l+g,b=p-v,S=l-g,R=1-(c+d),E=f+m,w=p+v,T=f-m,C=1-(c+h),O=e[0],x=e[1],I=e[2],P=e[3],N=e[4],D=e[5],M=e[6],A=e[7],k=e[8],j=e[9],L=e[10],V=e[11],F=y,H=_,B=b;e[0]=F*O+H*N+B*k,e[1]=F*x+H*D+B*j,e[2]=F*I+H*M+B*L,e[3]=F*P+H*A+B*V,F=S,H=R,B=E,e[4]=F*O+H*N+B*k,e[5]=F*x+H*D+B*j,e[6]=F*I+H*M+B*L,e[7]=F*P+H*A+B*V,F=w,H=T,B=C,e[8]=F*O+H*N+B*k,e[9]=F*x+H*D+B*j,e[10]=F*I+H*M+B*L,e[11]=F*P+H*A+B*V}},m={transformScale:function(e,t){e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1},transformTranslate:function(e,t){e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,h=r*s,f=r*u,d=o*u,m=i*a,v=i*s,g=i*u,y=1-(h+d),_=l+g,b=p-v,S=l-g,R=1-(c+d),E=f+m,w=p+v,T=f-m,C=1-(c+h),O=y,x=_,I=b;e[0]=O,e[1]=x,e[2]=I,e[3]=0,O=S,x=R,I=E,e[4]=O,e[5]=x,e[6]=I,e[7]=0,O=w,x=T,I=C,e[8]=O,e[9]=x,e[10]=I,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1}},v=function(e,t){return" if (!didChange) {\n var prevVal = result."+e+";\n result."+e+" = "+t+";\n didChange = didChange || ("+t+" !== prevVal);\n } else {\n result."+e+" = "+t+";\n }\n"},g=(function(e,t,n,r){var o="round"in e,i=e.round,a=" ratio = (value - "+e.min+") / "+(e.max-e.min)+";\n";e.extrapolate||(a+=" ratio = ratio > 1 ? 1 : (ratio < 0 ? 0 : ratio);\n");var s=o?"Math.round("+i+" * ":"",u=o?") / "+i:"";return a+=" "+r+" = "+s+"("+t+" * (1 - ratio) + "+n+" * ratio)"+u+";\n"}),y=function(e){return g(e,e.from,e.to,"nextScalarVal")},_=function(e){var t=JSON.stringify(e.value);return" nextScalarVal = "+t+";\n"},b=function(e){return" nextScalarVal = value >= "+(e.threshold+" ? "+e.to+" : "+e.from)+";\n"},S=function(e){return" nextScalarVal = value;\n"},R=function(e){return e+"ReuseOp"},E=function(e){var t="";for(var n in e)l[n]&&(t+="var "+R(n)+" = [];\n");return t},w=function(e){return"\n"+e.join("\n")+"\n"},T=function(e,t,n,r){var o=R(t)+"["+r+"]";return void 0!==e.from[n]&&void 0!==e.to[n]?" "+e.from[n]!==e.to[n]?g(e,e.from[n],e.to[n],o):o+" = "+e.from[n]+";":" "+o+" = "+p[t][r]+";"},C=[],O=0;16>O;O++)C.push("m"+O);var x=function(e){var t=[" var transformMatrix = result.transformMatrix !== undefined ? result.transformMatrix : (result.transformMatrix = []);"];t.push.apply(t,f(d.unroll,["transformMatrix"].concat(C)));for(var n=0;no;o++)r[o]=e[o+t];return r}function i(e){return void 0===e.size&&(e.size=e.__iterate(s)),e.size}function a(e,t){if("number"!=typeof t){var n=+t;if(""+n!==t)return NaN;t=n}return 0>t?i(e)+t:t}function s(){return!0}function u(e,t,n){return(0===e||void 0!==n&&-n>=e)&&(void 0===t||void 0!==n&&t>=n)}function c(e,t){return p(e,t,0)}function l(e,t){return p(e,t,t)}function p(e,t,n){return void 0===e?n:0>e?Math.max(0,t+e):void 0===t?e:Math.min(t,e)}function h(e){return v(e)?e:I(e)}function f(e){return g(e)?e:P(e)}function d(e){return y(e)?e:N(e)}function m(e){return v(e)&&!_(e)?e:D(e)}function v(e){return!(!e||!e[mn])}function g(e){return!(!e||!e[vn])}function y(e){return!(!e||!e[gn])}function _(e){return g(e)||y(e)}function b(e){return!(!e||!e[yn])}function S(e){this.next=e}function R(e,t,n,r){var o=0===e?t:1===e?n:[t,n];return r?r.value=o:r={value:o,done:!1},r}function E(){return{value:void 0,done:!0}}function w(e){return!!O(e)}function T(e){return e&&"function"==typeof e.next}function C(e){var t=O(e);return t&&t.call(e)}function O(e){var t=e&&(Rn&&e[Rn]||e[En]);return"function"==typeof t?t:void 0}function x(e){return e&&"number"==typeof e.length}function I(e){return null===e||void 0===e?V():v(e)?e.toSeq():B(e)}function P(e){return null===e||void 0===e?V().toKeyedSeq():v(e)?g(e)?e.toSeq():e.fromEntrySeq():F(e)}function N(e){return null===e||void 0===e?V():v(e)?g(e)?e.entrySeq():e.toIndexedSeq():H(e)}function D(e){return(null===e||void 0===e?V():v(e)?g(e)?e.entrySeq():e:H(e)).toSetSeq()}function M(e){this._array=e,this.size=e.length}function A(e){var t=Object.keys(e);this._object=e,this._keys=t,this.size=t.length}function k(e){this._iterable=e,this.size=e.length||e.size}function j(e){this._iterator=e,this._iteratorCache=[]}function L(e){return!(!e||!e[Tn])}function V(){return Cn||(Cn=new M([]))}function F(e){var t=Array.isArray(e)?new M(e).fromEntrySeq():T(e)?new j(e).fromEntrySeq():w(e)?new k(e).fromEntrySeq():"object"==typeof e?new A(e):void 0;if(!t)throw new TypeError("Expected Array or iterable object of [k, v] entries, or keyed object: "+e);return t}function H(e){var t=U(e);if(!t)throw new TypeError("Expected Array or iterable object of values: "+e);return t}function B(e){var t=U(e)||"object"==typeof e&&new A(e);if(!t)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+e);return t}function U(e){return x(e)?new M(e):T(e)?new j(e):w(e)?new k(e):void 0}function q(e,t,n,r){var o=e._cache;if(o){for(var i=o.length-1,a=0;i>=a;a++){var s=o[n?i-a:a];if(t(s[1],r?s[0]:a,e)===!1)return a+1}return a}return e.__iterateUncached(t,n)}function z(e,t,n,r){var o=e._cache;if(o){var i=o.length-1,a=0;return new S(function(){var e=o[n?i-a:a];return a++>i?E():R(t,r?e[0]:a-1,e[1])})}return e.__iteratorUncached(t,n)}function G(){throw TypeError("Abstract")}function W(){}function Y(){}function K(){}function X(e,t){if(e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1;if("function"==typeof e.valueOf&&"function"==typeof t.valueOf){if(e=e.valueOf(),t=t.valueOf(),e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1}return"function"==typeof e.equals&&"function"==typeof t.equals&&e.equals(t)?!0:!1}function J(e,t){return t?Q(t,e,"",{"":e}):$(e)}function Q(e,t,n,r){return Array.isArray(t)?e.call(r,n,N(t).map(function(n,r){return Q(e,n,r,t)})):Z(t)?e.call(r,n,P(t).map(function(n,r){return Q(e,n,r,t)})):t}function $(e){return Array.isArray(e)?N(e).map($).toList():Z(e)?P(e).map($).toMap():e}function Z(e){return e&&(e.constructor===Object||void 0===e.constructor)}function ee(e){return e>>>1&1073741824|3221225471&e}function te(e){if(e===!1||null===e||void 0===e)return 0;if("function"==typeof e.valueOf&&(e=e.valueOf(),e===!1||null===e||void 0===e))return 0;if(e===!0)return 1;var t=typeof e;if("number"===t){var n=0|e;for(n!==e&&(n^=4294967295*e);e>4294967295;)e/=4294967295,n^=e;return ee(n)}return"string"===t?e.length>An?ne(e):re(e):"function"==typeof e.hashCode?e.hashCode():oe(e)}function ne(e){var t=Ln[e];return void 0===t&&(t=re(e),jn===kn&&(jn=0,Ln={}),jn++,Ln[e]=t),t}function re(e){for(var t=0,n=0;n0)switch(e.nodeType){case 1:return e.uniqueID;case 9:return e.documentElement&&e.documentElement.uniqueID}}function ae(e,t){if(!e)throw new Error(t)}function se(e){ae(e!==1/0,"Cannot perform this action with an infinite size.")}function ue(e,t){this._iter=e,this._useKeys=t,this.size=e.size}function ce(e){this._iter=e,this.size=e.size}function le(e){this._iter=e,this.size=e.size}function pe(e){this._iter=e,this.size=e.size}function he(e){var t=Me(e);return t._iter=e,t.size=e.size,t.flip=function(){return e},t.reverse=function(){var t=e.reverse.apply(this);return t.flip=function(){return e.reverse()},t},t.has=function(t){return e.includes(t)},t.includes=function(t){return e.has(t)},t.cacheResult=Ae,t.__iterateUncached=function(t,n){var r=this;return e.__iterate(function(e,n){return t(n,e,r)!==!1},n)},t.__iteratorUncached=function(t,n){if(t===Sn){var r=e.__iterator(t,n);return new S(function(){var e=r.next();if(!e.done){var t=e.value[0];e.value[0]=e.value[1],e.value[1]=t}return e})}return e.__iterator(t===bn?_n:bn,n)},t}function fe(e,t,n){var r=Me(e);return r.size=e.size,r.has=function(t){return e.has(t)},r.get=function(r,o){var i=e.get(r,hn);return i===hn?o:t.call(n,i,r,e)},r.__iterateUncached=function(r,o){var i=this;return e.__iterate(function(e,o,a){return r(t.call(n,e,o,a),o,i)!==!1},o)},r.__iteratorUncached=function(r,o){var i=e.__iterator(Sn,o);return new S(function(){var o=i.next();if(o.done)return o;var a=o.value,s=a[0];return R(r,s,t.call(n,a[1],s,e),o)})},r}function de(e,t){var n=Me(e);return n._iter=e,n.size=e.size,n.reverse=function(){return e},e.flip&&(n.flip=function(){var t=he(e);return t.reverse=function(){return e.flip()},t}),n.get=function(n,r){return e.get(t?n:-1-n,r)},n.has=function(n){return e.has(t?n:-1-n)},n.includes=function(t){return e.includes(t)},n.cacheResult=Ae,n.__iterate=function(t,n){var r=this;return e.__iterate(function(e,n){return t(e,n,r)},!n)},n.__iterator=function(t,n){return e.__iterator(t,!n)},n}function me(e,t,n,r){var o=Me(e);return r&&(o.has=function(r){var o=e.get(r,hn);return o!==hn&&!!t.call(n,o,r,e)},o.get=function(r,o){var i=e.get(r,hn);return i!==hn&&t.call(n,i,r,e)?i:o}),o.__iterateUncached=function(o,i){var a=this,s=0;return e.__iterate(function(e,i,u){return t.call(n,e,i,u)?(s++,o(e,r?i:s-1,a)):void 0},i),s},o.__iteratorUncached=function(o,i){var a=e.__iterator(Sn,i),s=0;return new S(function(){for(;;){var i=a.next();if(i.done)return i;var u=i.value,c=u[0],l=u[1];if(t.call(n,l,c,e))return R(o,r?c:s++,l,i)}})},o}function ve(e,t,n){var r=Le().asMutable();return e.__iterate(function(o,i){r.update(t.call(n,o,i,e),0,function(e){return e+1})}),r.asImmutable()}function ge(e,t,n){var r=g(e),o=(b(e)?Et():Le()).asMutable();e.__iterate(function(i,a){o.update(t.call(n,i,a,e),function(e){return e=e||[],e.push(r?[a,i]:i),e})});var i=De(e);return o.map(function(t){return Ie(e,i(t))})}function ye(e,t,n,r){var o=e.size;if(void 0!==t&&(t=0|t),void 0!==n&&(n=0|n),u(t,n,o))return e;var i=c(t,o),s=l(n,o);if(i!==i||s!==s)return ye(e.toSeq().cacheResult(),t,n,r);var p,h=s-i;h===h&&(p=0>h?0:h);var f=Me(e);return f.size=0===p?p:e.size&&p||void 0,!r&&L(e)&&p>=0&&(f.get=function(t,n){return t=a(this,t),t>=0&&p>t?e.get(t+i,n):n}),f.__iterateUncached=function(t,n){var o=this;if(0===p)return 0;if(n)return this.cacheResult().__iterate(t,n);var a=0,s=!0,u=0;return e.__iterate(function(e,n){return s&&(s=a++p)return E();var e=o.next();return r||t===bn?e:t===_n?R(t,s-1,void 0,e):R(t,s-1,e.value[1],e)})},f}function _e(e,t,n){var r=Me(e);return r.__iterateUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterate(r,o);var a=0;return e.__iterate(function(e,o,s){return t.call(n,e,o,s)&&++a&&r(e,o,i)}),a},r.__iteratorUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterator(r,o);var a=e.__iterator(Sn,o),s=!0;return new S(function(){if(!s)return E();var e=a.next();if(e.done)return e;var o=e.value,u=o[0],c=o[1];return t.call(n,c,u,i)?r===Sn?e:R(r,u,c,e):(s=!1,E())})},r}function be(e,t,n,r){var o=Me(e);return o.__iterateUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterate(o,i);var s=!0,u=0;return e.__iterate(function(e,i,c){return s&&(s=t.call(n,e,i,c))?void 0:(u++,o(e,r?i:u-1,a))}),u},o.__iteratorUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterator(o,i);var s=e.__iterator(Sn,i),u=!0,c=0;return new S(function(){var e,i,l;do{if(e=s.next(),e.done)return r||o===bn?e:o===_n?R(o,c++,void 0,e):R(o,c++,e.value[1],e);var p=e.value;i=p[0],l=p[1],u&&(u=t.call(n,l,i,a))}while(u);return o===Sn?e:R(o,i,l,e)})},o}function Se(e,t){var n=g(e),r=[e].concat(t).map(function(e){return v(e)?n&&(e=f(e)):e=n?F(e):H(Array.isArray(e)?e:[e]),e}).filter(function(e){return 0!==e.size});if(0===r.length)return e;if(1===r.length){var o=r[0];if(o===e||n&&g(o)||y(e)&&y(o))return o}var i=new M(r);return n?i=i.toKeyedSeq():y(e)||(i=i.toSetSeq()),i=i.flatten(!0),i.size=r.reduce(function(e,t){if(void 0!==e){var n=t.size;if(void 0!==n)return e+n}},0),i}function Re(e,t,n){var r=Me(e);return r.__iterateUncached=function(r,o){function i(e,u){var c=this;e.__iterate(function(e,o){return(!t||t>u)&&v(e)?i(e,u+1):r(e,n?o:a++,c)===!1&&(s=!0),!s},o)}var a=0,s=!1;return i(e,0),a},r.__iteratorUncached=function(r,o){var i=e.__iterator(r,o),a=[],s=0;return new S(function(){for(;i;){var e=i.next();if(e.done===!1){var u=e.value;if(r===Sn&&(u=u[1]),t&&!(a.length0}function xe(e,t,n){var r=Me(e);return r.size=new M(n).map(function(e){return e.size}).min(),r.__iterate=function(e,t){for(var n,r=this.__iterator(bn,t),o=0;!(n=r.next()).done&&e(n.value,o++,this)!==!1;);return o},r.__iteratorUncached=function(e,r){var o=n.map(function(e){return e=h(e),C(r?e.reverse():e)}),i=0,a=!1;return new S(function(){var n;return a||(n=o.map(function(e){return e.next()}),a=n.some(function(e){return e.done})),a?E():R(e,i++,t.apply(null,n.map(function(e){return e.value})))})},r}function Ie(e,t){return L(e)?t:e.constructor(t)}function Pe(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function Ne(e){return se(e.size),i(e)}function De(e){return g(e)?f:y(e)?d:m}function Me(e){return Object.create((g(e)?P:y(e)?N:D).prototype)}function Ae(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):I.prototype.cacheResult.call(this)}function ke(e,t){return e>t?1:t>e?-1:0}function je(e){var t=C(e);if(!t){if(!x(e))throw new TypeError("Expected iterable or array-like: "+e);t=C(h(e))}return t}function Le(e){return null===e||void 0===e?Ke():Ve(e)&&!b(e)?e:Ke().withMutations(function(t){var n=f(e);se(n.size),n.forEach(function(e,n){return t.set(n,e)})})}function Ve(e){return!(!e||!e[Vn])}function Fe(e,t){this.ownerID=e,this.entries=t}function He(e,t,n){this.ownerID=e,this.bitmap=t,this.nodes=n}function Be(e,t,n){this.ownerID=e,this.count=t,this.nodes=n}function Ue(e,t,n){this.ownerID=e,this.keyHash=t,this.entries=n}function qe(e,t,n){this.ownerID=e,this.keyHash=t,this.entry=n}function ze(e,t,n){this._type=t,this._reverse=n,this._stack=e._root&&We(e._root)}function Ge(e,t){return R(e,t[0],t[1])}function We(e,t){return{node:e,index:0,__prev:t}}function Ye(e,t,n,r){var o=Object.create(Fn);return o.size=e,o._root=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Ke(){return Hn||(Hn=Ye(0))}function Xe(e,n,r){var o,i;if(e._root){var a=t(fn),s=t(dn);if(o=Je(e._root,e.__ownerID,0,void 0,n,r,a,s),!s.value)return e;i=e.size+(a.value?r===hn?-1:1:0)}else{if(r===hn)return e;i=1,o=new Fe(e.__ownerID,[[n,r]])}return e.__ownerID?(e.size=i,e._root=o,e.__hash=void 0,e.__altered=!0,e):o?Ye(i,o):Ke()}function Je(e,t,r,o,i,a,s,u){return e?e.update(t,r,o,i,a,s,u):a===hn?e:(n(u),n(s),new qe(t,o,[i,a]))}function Qe(e){return e.constructor===qe||e.constructor===Ue}function $e(e,t,n,r,o){if(e.keyHash===r)return new Ue(t,r,[e.entry,o]);var i,a=(0===n?e.keyHash:e.keyHash>>>n)&pn,s=(0===n?r:r>>>n)&pn,u=a===s?[$e(e,t,n+cn,r,o)]:(i=new qe(t,r,o),s>a?[e,i]:[i,e]);return new He(t,1<s;s++,u<<=1){var l=t[s];void 0!==l&&s!==r&&(o|=u,a[i++]=l)}return new He(e,o,a)}function tt(e,t,n,r,o){for(var i=0,a=new Array(ln),s=0;0!==n;s++,n>>>=1)a[s]=1&n?t[i++]:void 0;return a[r]=o,new Be(e,i+1,a)}function nt(e,t,n){for(var r=[],o=0;o>1&1431655765,e=(858993459&e)+(e>>2&858993459),e=e+(e>>4)&252645135,e+=e>>8,e+=e>>16,127&e}function st(e,t,n,r){var i=r?e:o(e);return i[t]=n,i}function ut(e,t,n,r){var o=e.length+1;if(r&&t+1===o)return e[t]=n,e;for(var i=new Array(o),a=0,s=0;o>s;s++)s===t?(i[s]=n,a=-1):i[s]=e[s+a];return i}function ct(e,t,n){var r=e.length-1;if(n&&t===r)return e.pop(),e;for(var o=new Array(r),i=0,a=0;r>a;a++)a===t&&(i=1),o[a]=e[a+i];return o}function lt(e){var t=mt();if(null===e||void 0===e)return t;if(pt(e))return e;var n=d(e),r=n.size;return 0===r?t:(se(r),r>0&&ln>r?dt(0,r,cn,null,new ht(n.toArray())):t.withMutations(function(e){e.setSize(r),n.forEach(function(t,n){return e.set(n,t)})}))}function pt(e){return!(!e||!e[zn])}function ht(e,t){this.array=e,this.ownerID=t}function ft(e,t){function n(e,t,n){return 0===t?r(e,n):o(e,t,n)}function r(e,n){var r=n===s?u&&u.array:e&&e.array,o=n>i?0:i-n,c=a-n;return c>ln&&(c=ln),function(){if(o===c)return Yn;var e=t?--c:o++;return r&&r[e]}}function o(e,r,o){var s,u=e&&e.array,c=o>i?0:i-o>>r,l=(a-o>>r)+1;return l>ln&&(l=ln),function(){for(;;){if(s){var e=s();if(e!==Yn)return e;s=null}if(c===l)return Yn;var i=t?--l:c++;s=n(u&&u[i],r-cn,o+(i<=e.size||0>n)return e.withMutations(function(e){0>n?bt(e,n).set(0,r):bt(e,0,n+1).set(n,r)});n+=e._origin;var o=e._tail,i=e._root,s=t(dn);return n>=Rt(e._capacity)?o=gt(o,e.__ownerID,0,n,r,s):i=gt(i,e.__ownerID,e._level,n,r,s),s.value?e.__ownerID?(e._root=i,e._tail=o,e.__hash=void 0,e.__altered=!0,e):dt(e._origin,e._capacity,e._level,i,o):e}function gt(e,t,r,o,i,a){var s=o>>>r&pn,u=e&&s0){var l=e&&e.array[s],p=gt(l,t,r-cn,o,i,a);return p===l?e:(c=yt(e,t),c.array[s]=p,c)}return u&&e.array[s]===i?e:(n(a),c=yt(e,t),void 0===i&&s===c.array.length-1?c.array.pop():c.array[s]=i,c)}function yt(e,t){return t&&e&&t===e.ownerID?e:new ht(e?e.array.slice():[],t)}function _t(e,t){if(t>=Rt(e._capacity))return e._tail;if(t<1<0;)n=n.array[t>>>r&pn],r-=cn;return n}}function bt(e,t,n){void 0!==t&&(t=0|t),void 0!==n&&(n=0|n);var o=e.__ownerID||new r,i=e._origin,a=e._capacity,s=i+t,u=void 0===n?a:0>n?a+n:i+n;if(s===i&&u===a)return e;if(s>=u)return e.clear();for(var c=e._level,l=e._root,p=0;0>s+p;)l=new ht(l&&l.array.length?[void 0,l]:[],o),c+=cn,p+=1<=1<f?_t(e,u-1):f>h?new ht([],o):d;if(d&&f>h&&a>s&&d.array.length){l=yt(l,o);for(var v=l,g=c;g>cn;g-=cn){var y=h>>>g&pn;v=v.array[y]=yt(v.array[y],o)}v.array[h>>>cn&pn]=d}if(a>u&&(m=m&&m.removeAfter(o,0,u)),s>=f)s-=f,u-=f,c=cn,l=null,m=m&&m.removeBefore(o,0,s);else if(s>i||h>f){for(p=0;l;){var _=s>>>c&pn;if(_!==f>>>c&pn)break;_&&(p+=(1<i&&(l=l.removeBefore(o,c,s-p)),l&&h>f&&(l=l.removeAfter(o,c,f-p)),p&&(s-=p,u-=p)}return e.__ownerID?(e.size=u-s,e._origin=s,e._capacity=u,e._level=c,e._root=l,e._tail=m,e.__hash=void 0,e.__altered=!0,e):dt(s,u,c,l,m)}function St(e,t,n){for(var r=[],o=0,i=0;io&&(o=s.size),v(a)||(s=s.map(function(e){return J(e)})),r.push(s)}return o>e.size&&(e=e.setSize(o)),ot(e,t,r)}function Rt(e){return ln>e?0:e-1>>>cn<=ln&&a.size>=2*i.size?(o=a.filter(function(e,t){return void 0!==e&&s!==t}),r=o.toKeyedSeq().map(function(e){return e[0]}).flip().toMap(),e.__ownerID&&(r.__ownerID=o.__ownerID=e.__ownerID)):(r=i.remove(t),o=s===a.size-1?a.pop():a.set(s,void 0))}else if(u){if(n===a.get(s)[1])return e;r=i,o=a.set(s,[t,n])}else r=i.set(t,a.size),o=a.set(a.size,[t,n]);return e.__ownerID?(e.size=r.size,e._map=r,e._list=o,e.__hash=void 0,e):Tt(r,o)}function xt(e){return null===e||void 0===e?Nt():It(e)?e:Nt().unshiftAll(e)}function It(e){return!(!e||!e[Xn])}function Pt(e,t,n,r){var o=Object.create(Jn);return o.size=e,o._head=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Nt(){return Qn||(Qn=Pt(0))}function Dt(e){return null===e||void 0===e?jt():Mt(e)&&!b(e)?e:jt().withMutations(function(t){var n=m(e);se(n.size),n.forEach(function(e){return t.add(e)})})}function Mt(e){return!(!e||!e[$n])}function At(e,t){return e.__ownerID?(e.size=t.size,e._map=t,e):t===e._map?e:0===t.size?e.__empty():e.__make(t)}function kt(e,t){var n=Object.create(Zn);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function jt(){return er||(er=kt(Ke()))}function Lt(e){return null===e||void 0===e?Ht():Vt(e)?e:Ht().withMutations(function(t){var n=m(e);se(n.size),n.forEach(function(e){return t.add(e)})})}function Vt(e){return Mt(e)&&b(e)}function Ft(e,t){var n=Object.create(tr);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Ht(){return nr||(nr=Ft(Ct()))}function Bt(e,t){var n,r=function(i){if(i instanceof r)return i;if(!(this instanceof r))return new r(i);if(!n){n=!0;var a=Object.keys(e);zt(o,a),o.size=a.length,o._name=t,o._keys=a,o._defaultValues=e}this._map=Le(i)},o=r.prototype=Object.create(rr);return o.constructor=r,r}function Ut(e,t,n){var r=Object.create(Object.getPrototypeOf(e));return r._map=t,r.__ownerID=n,r}function qt(e){return e._name||e.constructor.name||"Record"}function zt(e,t){try{t.forEach(Gt.bind(void 0,e))}catch(n){}}function Gt(e,t){Object.defineProperty(e,t,{get:function(){return this.get(t)},set:function(e){ae(this.__ownerID,"Cannot set on an immutable record."),this.set(t,e)}})}function Wt(e,t){if(e===t)return!0;if(!v(t)||void 0!==e.size&&void 0!==t.size&&e.size!==t.size||void 0!==e.__hash&&void 0!==t.__hash&&e.__hash!==t.__hash||g(e)!==g(t)||y(e)!==y(t)||b(e)!==b(t))return!1;if(0===e.size&&0===t.size)return!0;var n=!_(e);if(b(e)){var r=e.entries();return t.every(function(e,t){var o=r.next().value;return o&&X(o[1],e)&&(n||X(o[0],t))})&&r.next().done}var o=!1;if(void 0===e.size)if(void 0===t.size)"function"==typeof e.cacheResult&&e.cacheResult();else{o=!0;var i=e;e=t,t=i}var a=!0,s=t.__iterate(function(t,r){return(n?e.has(t):o?X(t,e.get(r,hn)):X(e.get(r,hn),t))?void 0:(a=!1,!1)});return a&&e.size===s}function Yt(e,t,n){if(!(this instanceof Yt))return new Yt(e,t,n);if(ae(0!==n,"Cannot step a Range by 0"),e=e||0,void 0===t&&(t=1/0),n=void 0===n?1:Math.abs(n),e>t&&(n=-n),this._start=e,this._end=t,this._step=n,this.size=Math.max(0,Math.ceil((t-e)/n-1)+1),0===this.size){if(or)return or;or=this}}function Kt(e,t){if(!(this instanceof Kt))return new Kt(e,t);if(this._value=e,this.size=void 0===t?1/0:Math.max(0,t),0===this.size){if(ir)return ir;ir=this}}function Xt(e,t){var n=function(n){e.prototype[n]=t[n]};return Object.keys(t).forEach(n),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(t).forEach(n),e}function Jt(e,t){return t}function Qt(e,t){return[t,e]}function $t(e){return function(){return!e.apply(this,arguments)}}function Zt(e){return function(){return-e.apply(this,arguments)}}function en(e){return"string"==typeof e?JSON.stringify(e):e}function tn(){return o(arguments)}function nn(e,t){return t>e?1:e>t?-1:0}function rn(e){if(e.size===1/0)return 0;var t=b(e),n=g(e),r=t?1:0,o=e.__iterate(n?t?function(e,t){r=31*r+an(te(e),te(t))|0}:function(e,t){r=r+an(te(e),te(t))|0}:t?function(e){r=31*r+te(e)|0}:function(e){r=r+te(e)|0});return on(o,r)}function on(e,t){return t=xn(t,3432918353),t=xn(t<<15|t>>>-15,461845907),t=xn(t<<13|t>>>-13,5),t=(t+3864292196|0)^e,t=xn(t^t>>>16,2246822507),t=xn(t^t>>>13,3266489909),t=ee(t^t>>>16)}function an(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}var sn=Array.prototype.slice,un="delete",cn=5,ln=1<=o;o++)if(e(n[t?r-o:o],o,this)===!1)return o+1;return o},M.prototype.__iterator=function(e,t){var n=this._array,r=n.length-1,o=0;return new S(function(){return o>r?E():R(e,o,n[t?r-o++:o++])})},e(A,P),A.prototype.get=function(e,t){return void 0===t||this.has(e)?this._object[e]:t},A.prototype.has=function(e){return this._object.hasOwnProperty(e)},A.prototype.__iterate=function(e,t){for(var n=this._object,r=this._keys,o=r.length-1,i=0;o>=i;i++){var a=r[t?o-i:i];if(e(n[a],a,this)===!1)return i+1}return i},A.prototype.__iterator=function(e,t){var n=this._object,r=this._keys,o=r.length-1,i=0;return new S(function(){var a=r[t?o-i:i];return i++>o?E():R(e,a,n[a])})},A.prototype[yn]=!0,e(k,N),k.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);var n=this._iterable,r=C(n),o=0;if(T(r))for(var i;!(i=r.next()).done&&e(i.value,o++,this)!==!1;);return o},k.prototype.__iteratorUncached=function(e,t){if(t)return this.cacheResult().__iterator(e,t);var n=this._iterable,r=C(n);if(!T(r))return new S(E);var o=0;return new S(function(){var t=r.next();return t.done?t:R(e,o++,t.value)})},e(j,N),j.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);for(var n=this._iterator,r=this._iteratorCache,o=0;o=r.length){var t=n.next();if(t.done)return t;r[o]=t.value}return R(e,o,r[o++])})};var Cn;e(G,h),e(W,G),e(Y,G),e(K,G),G.Keyed=W,G.Indexed=Y,G.Set=K;var On,xn="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(e,t){e=0|e,t=0|t;var n=65535&e,r=65535&t;return n*r+((e>>>16)*r+n*(t>>>16)<<16>>>0)|0},In=Object.isExtensible,Pn=function(){try{return Object.defineProperty({},"@",{}),!0}catch(e){return!1}}(),Nn="function"==typeof WeakMap;Nn&&(On=new WeakMap);var Dn=0,Mn="__immutablehash__";"function"==typeof Symbol&&(Mn=Symbol(Mn));var An=16,kn=255,jn=0,Ln={};e(ue,P),ue.prototype.get=function(e,t){return this._iter.get(e,t)},ue.prototype.has=function(e){return this._iter.has(e)},ue.prototype.valueSeq=function(){return this._iter.valueSeq()},ue.prototype.reverse=function(){var e=this,t=de(this,!0);return this._useKeys||(t.valueSeq=function(){return e._iter.toSeq().reverse()}),t},ue.prototype.map=function(e,t){var n=this,r=fe(this,e,t);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(e,t)}),r},ue.prototype.__iterate=function(e,t){var n,r=this;return this._iter.__iterate(this._useKeys?function(t,n){return e(t,n,r)}:(n=t?Ne(this):0,function(o){return e(o,t?--n:n++,r)}),t)},ue.prototype.__iterator=function(e,t){if(this._useKeys)return this._iter.__iterator(e,t);var n=this._iter.__iterator(bn,t),r=t?Ne(this):0;return new S(function(){var o=n.next();return o.done?o:R(e,t?--r:r++,o.value,o)})},ue.prototype[yn]=!0,e(ce,N),ce.prototype.includes=function(e){return this._iter.includes(e)},ce.prototype.__iterate=function(e,t){var n=this,r=0;return this._iter.__iterate(function(t){return e(t,r++,n)},t)},ce.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t),r=0;return new S(function(){var t=n.next();return t.done?t:R(e,r++,t.value,t)})},e(le,D),le.prototype.has=function(e){return this._iter.includes(e)},le.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){return e(t,t,n)},t)},le.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t);return new S(function(){var t=n.next();return t.done?t:R(e,t.value,t.value,t)})},e(pe,P),pe.prototype.entrySeq=function(){return this._iter.toSeq()},pe.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){if(t){Pe(t);var r=v(t);return e(r?t.get(1):t[1],r?t.get(0):t[0],n)}},t)},pe.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t);return new S(function(){for(;;){var t=n.next();if(t.done)return t;var r=t.value;if(r){Pe(r);var o=v(r);return R(e,o?r.get(0):r[0],o?r.get(1):r[1],t)}}})},ce.prototype.cacheResult=ue.prototype.cacheResult=le.prototype.cacheResult=pe.prototype.cacheResult=Ae,e(Le,W),Le.prototype.toString=function(){return this.__toString("Map {","}")},Le.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},Le.prototype.set=function(e,t){return Xe(this,e,t)},Le.prototype.setIn=function(e,t){return this.updateIn(e,hn,function(){return t})},Le.prototype.remove=function(e){return Xe(this,e,hn)},Le.prototype.deleteIn=function(e){return this.updateIn(e,function(){return hn})},Le.prototype.update=function(e,t,n){return 1===arguments.length?e(this):this.updateIn([e],t,n)},Le.prototype.updateIn=function(e,t,n){n||(n=t,t=void 0);var r=it(this,je(e),t,n);return r===hn?void 0:r},Le.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Ke()},Le.prototype.merge=function(){return nt(this,void 0,arguments)},Le.prototype.mergeWith=function(e){var t=sn.call(arguments,1); -return nt(this,e,t)},Le.prototype.mergeIn=function(e){var t=sn.call(arguments,1);return this.updateIn(e,Ke(),function(e){return"function"==typeof e.merge?e.merge.apply(e,t):t[t.length-1]})},Le.prototype.mergeDeep=function(){return nt(this,rt(void 0),arguments)},Le.prototype.mergeDeepWith=function(e){var t=sn.call(arguments,1);return nt(this,rt(e),t)},Le.prototype.mergeDeepIn=function(e){var t=sn.call(arguments,1);return this.updateIn(e,Ke(),function(e){return"function"==typeof e.mergeDeep?e.mergeDeep.apply(e,t):t[t.length-1]})},Le.prototype.sort=function(e){return Et(Te(this,e))},Le.prototype.sortBy=function(e,t){return Et(Te(this,t,e))},Le.prototype.withMutations=function(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this},Le.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new r)},Le.prototype.asImmutable=function(){return this.__ensureOwner()},Le.prototype.wasAltered=function(){return this.__altered},Le.prototype.__iterator=function(e,t){return new ze(this,e,t)},Le.prototype.__iterate=function(e,t){var n=this,r=0;return this._root&&this._root.iterate(function(t){return r++,e(t[1],t[0],n)},t),r},Le.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Ye(this.size,this._root,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},Le.isMap=Ve;var Vn="@@__IMMUTABLE_MAP__@@",Fn=Le.prototype;Fn[Vn]=!0,Fn[un]=Fn.remove,Fn.removeIn=Fn.deleteIn,Fe.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(X(n,o[i][0]))return o[i][1];return r},Fe.prototype.update=function(e,t,r,i,a,s,u){for(var c=a===hn,l=this.entries,p=0,h=l.length;h>p&&!X(i,l[p][0]);p++);var f=h>p;if(f?l[p][1]===a:c)return this;if(n(u),(c||!f)&&n(s),!c||1!==l.length){if(!f&&!c&&l.length>=Bn)return Ze(e,l,i,a);var d=e&&e===this.ownerID,m=d?l:o(l);return f?c?p===h-1?m.pop():m[p]=m.pop():m[p]=[i,a]:m.push([i,a]),d?(this.entries=m,this):new Fe(e,m)}},He.prototype.get=function(e,t,n,r){void 0===t&&(t=te(n));var o=1<<((0===e?t:t>>>e)&pn),i=this.bitmap;return 0===(i&o)?r:this.nodes[at(i&o-1)].get(e+cn,t,n,r)},He.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=te(r));var s=(0===t?n:n>>>t)&pn,u=1<=Un)return tt(e,h,c,s,d);if(l&&!d&&2===h.length&&Qe(h[1^p]))return h[1^p];if(l&&d&&1===h.length&&Qe(d))return d;var m=e&&e===this.ownerID,v=l?d?c:c^u:c|u,g=l?d?st(h,p,d,m):ct(h,p,m):ut(h,p,d,m);return m?(this.bitmap=v,this.nodes=g,this):new He(e,v,g)},Be.prototype.get=function(e,t,n,r){void 0===t&&(t=te(n));var o=(0===e?t:t>>>e)&pn,i=this.nodes[o];return i?i.get(e+cn,t,n,r):r},Be.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=te(r));var s=(0===t?n:n>>>t)&pn,u=o===hn,c=this.nodes,l=c[s];if(u&&!l)return this;var p=Je(l,e,t+cn,n,r,o,i,a);if(p===l)return this;var h=this.count;if(l){if(!p&&(h--,qn>h))return et(e,c,h,s)}else h++;var f=e&&e===this.ownerID,d=st(c,s,p,f);return f?(this.count=h,this.nodes=d,this):new Be(e,h,d)},Ue.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(X(n,o[i][0]))return o[i][1];return r},Ue.prototype.update=function(e,t,r,i,a,s,u){void 0===r&&(r=te(i));var c=a===hn;if(r!==this.keyHash)return c?this:(n(u),n(s),$e(this,e,t,r,[i,a]));for(var l=this.entries,p=0,h=l.length;h>p&&!X(i,l[p][0]);p++);var f=h>p;if(f?l[p][1]===a:c)return this;if(n(u),(c||!f)&&n(s),c&&2===h)return new qe(e,this.keyHash,l[1^p]);var d=e&&e===this.ownerID,m=d?l:o(l);return f?c?p===h-1?m.pop():m[p]=m.pop():m[p]=[i,a]:m.push([i,a]),d?(this.entries=m,this):new Ue(e,this.keyHash,m)},qe.prototype.get=function(e,t,n,r){return X(n,this.entry[0])?this.entry[1]:r},qe.prototype.update=function(e,t,r,o,i,a,s){var u=i===hn,c=X(o,this.entry[0]);return(c?i===this.entry[1]:u)?this:(n(s),u?void n(a):c?e&&e===this.ownerID?(this.entry[1]=i,this):new qe(e,this.keyHash,[o,i]):(n(a),$e(this,e,t,te(o),[o,i])))},Fe.prototype.iterate=Ue.prototype.iterate=function(e,t){for(var n=this.entries,r=0,o=n.length-1;o>=r;r++)if(e(n[t?o-r:r])===!1)return!1},He.prototype.iterate=Be.prototype.iterate=function(e,t){for(var n=this.nodes,r=0,o=n.length-1;o>=r;r++){var i=n[t?o-r:r];if(i&&i.iterate(e,t)===!1)return!1}},qe.prototype.iterate=function(e,t){return e(this.entry)},e(ze,S),ze.prototype.next=function(){for(var e=this._type,t=this._stack;t;){var n,r=t.node,o=t.index++;if(r.entry){if(0===o)return Ge(e,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=o)return Ge(e,r.entries[this._reverse?n-o:o])}else if(n=r.nodes.length-1,n>=o){var i=r.nodes[this._reverse?n-o:o];if(i){if(i.entry)return Ge(e,i.entry);t=this._stack=We(i,t)}continue}t=this._stack=this._stack.__prev}return E()};var Hn,Bn=ln/4,Un=ln/2,qn=ln/4;e(lt,Y),lt.of=function(){return this(arguments)},lt.prototype.toString=function(){return this.__toString("List [","]")},lt.prototype.get=function(e,t){if(e=a(this,e),e>=0&&e>>t&pn;if(r>=this.array.length)return new ht([],e);var o,i=0===r;if(t>0){var a=this.array[r];if(o=a&&a.removeBefore(e,t-cn,n),o===a&&i)return this}if(i&&!o)return this;var s=yt(this,e);if(!i)for(var u=0;r>u;u++)s.array[u]=void 0;return o&&(s.array[r]=o),s},ht.prototype.removeAfter=function(e,t,n){if(n===(t?1<>>t&pn;if(r>=this.array.length)return this;var o;if(t>0){var i=this.array[r];if(o=i&&i.removeAfter(e,t-cn,n),o===i&&r===this.array.length-1)return this}var a=yt(this,e);return a.array.splice(r+1),o&&(a.array[r]=o),a};var Wn,Yn={};e(Et,Le),Et.of=function(){return this(arguments)},Et.prototype.toString=function(){return this.__toString("OrderedMap {","}")},Et.prototype.get=function(e,t){var n=this._map.get(e);return void 0!==n?this._list.get(n)[1]:t},Et.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):Ct()},Et.prototype.set=function(e,t){return Ot(this,e,t)},Et.prototype.remove=function(e){return Ot(this,e,hn)},Et.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},Et.prototype.__iterate=function(e,t){var n=this;return this._list.__iterate(function(t){return t&&e(t[1],t[0],n)},t)},Et.prototype.__iterator=function(e,t){return this._list.fromEntrySeq().__iterator(e,t)},Et.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map.__ensureOwner(e),n=this._list.__ensureOwner(e);return e?Tt(t,n,e,this.__hash):(this.__ownerID=e,this._map=t,this._list=n,this)},Et.isOrderedMap=wt,Et.prototype[yn]=!0,Et.prototype[un]=Et.prototype.remove;var Kn;e(xt,Y),xt.of=function(){return this(arguments)},xt.prototype.toString=function(){return this.__toString("Stack [","]")},xt.prototype.get=function(e,t){var n=this._head;for(e=a(this,e);n&&e--;)n=n.next;return n?n.value:t},xt.prototype.peek=function(){return this._head&&this._head.value},xt.prototype.push=function(){if(0===arguments.length)return this;for(var e=this.size+arguments.length,t=this._head,n=arguments.length-1;n>=0;n--)t={value:arguments[n],next:t};return this.__ownerID?(this.size=e,this._head=t,this.__hash=void 0,this.__altered=!0,this):Pt(e,t)},xt.prototype.pushAll=function(e){if(e=d(e),0===e.size)return this;se(e.size);var t=this.size,n=this._head;return e.reverse().forEach(function(e){t++,n={value:e,next:n}}),this.__ownerID?(this.size=t,this._head=n,this.__hash=void 0,this.__altered=!0,this):Pt(t,n)},xt.prototype.pop=function(){return this.slice(1)},xt.prototype.unshift=function(){return this.push.apply(this,arguments)},xt.prototype.unshiftAll=function(e){return this.pushAll(e)},xt.prototype.shift=function(){return this.pop.apply(this,arguments)},xt.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Nt()},xt.prototype.slice=function(e,t){if(u(e,t,this.size))return this;var n=c(e,this.size),r=l(t,this.size);if(r!==this.size)return Y.prototype.slice.call(this,e,t);for(var o=this.size-n,i=this._head;n--;)i=i.next;return this.__ownerID?(this.size=o,this._head=i,this.__hash=void 0,this.__altered=!0,this):Pt(o,i)},xt.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Pt(this.size,this._head,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},xt.prototype.__iterate=function(e,t){if(t)return this.reverse().__iterate(e);for(var n=0,r=this._head;r&&e(r.value,n++,this)!==!1;)r=r.next;return n},xt.prototype.__iterator=function(e,t){if(t)return this.reverse().__iterator(e);var n=0,r=this._head;return new S(function(){if(r){var t=r.value;return r=r.next,R(e,n++,t)}return E()})},xt.isStack=It;var Xn="@@__IMMUTABLE_STACK__@@",Jn=xt.prototype;Jn[Xn]=!0,Jn.withMutations=Fn.withMutations,Jn.asMutable=Fn.asMutable,Jn.asImmutable=Fn.asImmutable,Jn.wasAltered=Fn.wasAltered;var Qn;e(Dt,K),Dt.of=function(){return this(arguments)},Dt.fromKeys=function(e){return this(f(e).keySeq())},Dt.prototype.toString=function(){return this.__toString("Set {","}")},Dt.prototype.has=function(e){return this._map.has(e)},Dt.prototype.add=function(e){return At(this,this._map.set(e,!0))},Dt.prototype.remove=function(e){return At(this,this._map.remove(e))},Dt.prototype.clear=function(){return At(this,this._map.clear())},Dt.prototype.union=function(){var e=sn.call(arguments,0);return e=e.filter(function(e){return 0!==e.size}),0===e.length?this:0!==this.size||this.__ownerID||1!==e.length?this.withMutations(function(t){for(var n=0;n1?" by "+this._step:"")+" ]"},Yt.prototype.get=function(e,t){return this.has(e)?this._start+a(this,e)*this._step:t},Yt.prototype.includes=function(e){var t=(e-this._start)/this._step;return t>=0&&t=t?new Yt(0,0):new Yt(this.get(e,this._end),this.get(t,this._end),this._step))},Yt.prototype.indexOf=function(e){var t=e-this._start;if(t%this._step===0){var n=t/this._step;if(n>=0&&n=i;i++){if(e(o,i,this)===!1)return i+1;o+=t?-r:r}return i},Yt.prototype.__iterator=function(e,t){var n=this.size-1,r=this._step,o=t?this._start+n*r:this._start,i=0;return new S(function(){var a=o;return o+=t?-r:r,i>n?E():R(e,i++,a)})},Yt.prototype.equals=function(e){return e instanceof Yt?this._start===e._start&&this._end===e._end&&this._step===e._step:Wt(this,e)};var or;e(Kt,N),Kt.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Kt.prototype.get=function(e,t){return this.has(e)?this._value:t},Kt.prototype.includes=function(e){return X(this._value,e)},Kt.prototype.slice=function(e,t){var n=this.size;return u(e,t,n)?this:new Kt(this._value,l(t,n)-c(e,n))},Kt.prototype.reverse=function(){return this},Kt.prototype.indexOf=function(e){return X(this._value,e)?0:-1},Kt.prototype.lastIndexOf=function(e){return X(this._value,e)?this.size:-1},Kt.prototype.__iterate=function(e,t){for(var n=0;ne?this.count():this.size);var r=this.slice(0,e);return Ie(this,1===n?r:r.concat(o(arguments,2),this.slice(e+t)))},findLastIndex:function(e,t){var n=this.toKeyedSeq().findLastKey(e,t);return void 0===n?-1:n},first:function(){return this.get(0)},flatten:function(e){return Ie(this,Re(this,e,!1))},get:function(e,t){return e=a(this,e),0>e||this.size===1/0||void 0!==this.size&&e>this.size?t:this.find(function(t,n){return n===e},void 0,t)},has:function(e){return e=a(this,e),e>=0&&(void 0!==this.size?this.size===1/0||en?e:1-e,s=t-n,u=t-r;o=s>0&&0===u||u>0&&0===s?i.Interpolators.RightToCenter:0>s&&0===u||0>u&&0===s?i.Interpolators.CenterToLeft:s===u?i.Interpolators.RightToCenter:i.Interpolators.RightToLeft,l.forEach(function(e){var n=this._components[e].get(this.props.navState.routeStack[t]),r=this._getReusableProps(e,t);n&&o[e](r.style,a)&&n.setNativeProps(r)},this)},updateProgress:function(e,t,n){for(var r=Math.max(t,n),o=Math.min(t,n),i=o;r>=i;i++)this._updateIndexProgress(e,i,t,n)},render:function(){var e=this.props.navState,t=l.map(function(t){return e.routeStack.map(this._getComponent.bind(this,t))},this);return o.createElement(s,{style:[f.navBarContainer,this.props.style]},t)},_getComponent:function(e,t,n){var r=this;if(this._descriptors[e].includes(t))return this._descriptors[e].get(t);var a=null,u=this.props.routeMapper[e](this.props.navState.routeStack[n],this.props.navigator,n,this.props.navState);if(!u)return null;var c=n===p(this.props.navState)?i.Stages.Center:i.Stages.Left;return a=o.createElement(s,{ref:function(n){r._components[e]=r._components[e].set(t,n)},style:c[e]},u),this._descriptors[e]=this._descriptors[e].set(t,a),a}}),f=a.create({navBarContainer:{position:"absolute",height:i.General.TotalNavHeight,top:0,left:0,right:0,backgroundColor:"transparent"}});n.exports=h}),__d("NavigatorSceneConfigs",["Dimensions","PixelRatio","buildStyleInterpolator"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;tt&&(a+=r&&n?u.currentPageX:r&&!n?u.currentPageY:!r&&n?u.previousPageX:u.previousPageY,s=1);else for(var c=0;c=t){var p;p=r&&n?l.currentPageX:r&&!n?l.currentPageY:!r&&n?l.previousPageX:l.previousPageY,a+=p,s++}}return s>0?a/s:o.noCentroid},currentCentroidXOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!0,!0)},currentCentroidYOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!1,!0)},previousCentroidXOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!0,!1)},previousCentroidYOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!1,!1)},currentCentroidX:function(e){return o.centroidDimension(e,0,!0,!0)},currentCentroidY:function(e){return o.centroidDimension(e,0,!1,!0)},noCentroid:-1};n.exports=o}),__d("clamp",[],function(e,t,n,r){function o(e,t,n){return e>t?e:t>n?n:t}n.exports=o}),__d("rebound/rebound.js",[],function(e,t,n,r){!function(){function e(e,t){var n=e.indexOf(t);-1!=n&&e.splice(n,1)}var t={},n=t.util={},o=Array.prototype.concat,i=Array.prototype.slice;n.bind=function(e,t){var n=i.call(arguments,2);return function(){e.apply(t,o.call(n,i.call(arguments)))}},n.extend=function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};var a=t.SpringSystem=function(e){this._springRegistry={},this._activeSprings=[],this.listeners=[],this._idleSpringIndices=[],this.looper=e||new l,this.looper.springSystem=this};n.extend(a.prototype,{_springRegistry:null,_isIdle:!0,_lastTimeMillis:-1,_activeSprings:null,listeners:null,_idleSpringIndices:null,setLooper:function(e){this.looper=e,e.springSystem=this},createSpring:function(e,t){var n;return n=void 0===e||void 0===t?c.DEFAULT_ORIGAMI_SPRING_CONFIG:c.fromOrigamiTensionAndFriction(e,t),this.createSpringWithConfig(n)},createSpringWithBouncinessAndSpeed:function(e,t){var n;return n=void 0===e||void 0===t?c.DEFAULT_ORIGAMI_SPRING_CONFIG:c.fromBouncinessAndSpeed(e,t),this.createSpringWithConfig(n)},createSpringWithConfig:function(e){var t=new s(this);return this.registerSpring(t),t.setSpringConfig(e),t},getIsIdle:function(){return this._isIdle},getSpringById:function(e){return this._springRegistry[e]},getAllSprings:function(){var e=[];for(var t in this._springRegistry)this._springRegistry.hasOwnProperty(t)&&e.push(this._springRegistry[t]);return e},registerSpring:function(e){this._springRegistry[e.getId()]=e},deregisterSpring:function(t){e(this._activeSprings,t),delete this._springRegistry[t.getId()]},advance:function(e,t){for(;this._idleSpringIndices.length>0;)this._idleSpringIndices.pop();for(var n=0,r=this._activeSprings.length;r>n;n++){var o=this._activeSprings[n];o.systemShouldAdvance()?o.advance(e/1e3,t/1e3):this._idleSpringIndices.push(this._activeSprings.indexOf(o))}for(;this._idleSpringIndices.length>0;){var i=this._idleSpringIndices.pop();i>=0&&this._activeSprings.splice(i,1)}},loop:function(e){var t;-1===this._lastTimeMillis&&(this._lastTimeMillis=e-1);var n=e-this._lastTimeMillis;this._lastTimeMillis=e;var r=0,o=this.listeners.length;for(r=0;o>r;r++)t=this.listeners[r],t.onBeforeIntegrate&&t.onBeforeIntegrate(this);for(this.advance(e,n),0===this._activeSprings.length&&(this._isIdle=!0,this._lastTimeMillis=-1),r=0;o>r;r++)t=this.listeners[r],t.onAfterIntegrate&&t.onAfterIntegrate(this);this._isIdle||this.looper.run()},activateSpring:function(e){var t=this._springRegistry[e];-1==this._activeSprings.indexOf(t)&&this._activeSprings.push(t),this.getIsIdle()&&(this._isIdle=!1,this.looper.run())},addListener:function(e){this.listeners.push(e)},removeListener:function(t){e(this.listeners,t)},removeAllListeners:function(){this.listeners=[]}});var s=t.Spring=function v(e){this._id="s"+v._ID++,this._springSystem=e,this.listeners=[],this._currentState=new u,this._previousState=new u,this._tempState=new u};n.extend(s,{_ID:0,MAX_DELTA_TIME_SEC:.064,SOLVER_TIMESTEP_SEC:.001}),n.extend(s.prototype,{_id:0,_springConfig:null,_overshootClampingEnabled:!1,_currentState:null,_previousState:null,_tempState:null,_startValue:0,_endValue:0,_wasAtRest:!0,_restSpeedThreshold:.001,_displacementFromRestThreshold:.001,listeners:null,_timeAccumulator:0,_springSystem:null,destroy:function(){this.listeners=[],this.frames=[],this._springSystem.deregisterSpring(this)},getId:function(){return this._id},setSpringConfig:function(e){return this._springConfig=e,this},getSpringConfig:function(){return this._springConfig},setCurrentValue:function(e,t){return this._startValue=e,this._currentState.position=e,t||this.setAtRest(),this.notifyPositionUpdated(!1,!1),this},getStartValue:function(){return this._startValue},getCurrentValue:function(){return this._currentState.position},getCurrentDisplacementDistance:function(){return this.getDisplacementDistanceForState(this._currentState)},getDisplacementDistanceForState:function(e){return Math.abs(this._endValue-e.position)},setEndValue:function(e){if(this._endValue==e&&this.isAtRest())return this;this._startValue=this.getCurrentValue(),this._endValue=e,this._springSystem.activateSpring(this.getId());for(var t=0,n=this.listeners.length;n>t;t++){var r=this.listeners[t],o=r.onSpringEndStateChange;o&&o(this)}return this},getEndValue:function(){return this._endValue},setVelocity:function(e){return e===this._currentState.velocity?this:(this._currentState.velocity=e,this._springSystem.activateSpring(this.getId()),this)},getVelocity:function(){return this._currentState.velocity},setRestSpeedThreshold:function(e){return this._restSpeedThreshold=e,this},getRestSpeedThreshold:function(){return this._restSpeedThreshold},setRestDisplacementThreshold:function(e){this._displacementFromRestThreshold=e},getRestDisplacementThreshold:function(){return this._displacementFromRestThreshold},setOvershootClampingEnabled:function(e){return this._overshootClampingEnabled=e,this},isOvershootClampingEnabled:function(){return this._overshootClampingEnabled},isOvershooting:function(){var e=this._startValue,t=this._endValue;return this._springConfig.tension>0&&(t>e&&this.getCurrentValue()>t||e>t&&this.getCurrentValue()s.MAX_DELTA_TIME_SEC&&(r=s.MAX_DELTA_TIME_SEC),this._timeAccumulator+=r;for(var o,i,a,u,c,l,p,h,f,d,m=this._springConfig.tension,v=this._springConfig.friction,g=this._currentState.position,y=this._currentState.velocity,_=this._tempState.position,b=this._tempState.velocity;this._timeAccumulator>=s.SOLVER_TIMESTEP_SEC;)this._timeAccumulator-=s.SOLVER_TIMESTEP_SEC,this._timeAccumulator0&&this._interpolate(this._timeAccumulator/s.SOLVER_TIMESTEP_SEC),(this.isAtRest()||this._overshootClampingEnabled&&this.isOvershooting())&&(this._springConfig.tension>0?(this._startValue=this._endValue,this._currentState.position=this._endValue):(this._endValue=this._currentState.position,this._startValue=this._endValue),this.setVelocity(0),n=!0);var S=!1;this._wasAtRest&&(this._wasAtRest=!1,S=!0);var R=!1;n&&(this._wasAtRest=!0,R=!0),this.notifyPositionUpdated(S,R)}},notifyPositionUpdated:function(e,t){for(var n=0,r=this.listeners.length;r>n;n++){var o=this.listeners[n];e&&o.onSpringActivate&&o.onSpringActivate(this),o.onSpringUpdate&&o.onSpringUpdate(this),t&&o.onSpringAtRest&&o.onSpringAtRest(this)}},systemShouldAdvance:function(){return!this.isAtRest()||!this.wasAtRest()},wasAtRest:function(){return this._wasAtRest},isAtRest:function(){return Math.abs(this._currentState.velocity)=e?this.b3Friction1(e):e>18&&44>=e?this.b3Friction2(e):this.b3Friction3(e)}}),n.extend(c,{fromOrigamiTensionAndFriction:function(e,t){return new c(p.tensionFromOrigamiValue(e),p.frictionFromOrigamiValue(t))},fromBouncinessAndSpeed:function(e,n){var r=new t.BouncyConversion(e,n);return this.fromOrigamiTensionAndFriction(r.bouncyTension,r.bouncyFriction)},coastingConfigWithOrigamiFriction:function(e){return new c(0,p.frictionFromOrigamiValue(e))}}),c.DEFAULT_ORIGAMI_SPRING_CONFIG=c.fromOrigamiTensionAndFriction(40,7),n.extend(c.prototype,{friction:0,tension:0});var f={};n.hexToRGB=function(e){if(f[e])return f[e];e=e.replace("#",""),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var t=e.match(/.{2}/g),n={r:parseInt(t[0],16),g:parseInt(t[1],16),b:parseInt(t[2],16)};return f[e]=n,n},n.rgbToHex=function(e,t,n){return e=e.toString(16),t=t.toString(16),n=n.toString(16),e=e.length<2?"0"+e:e,t=t.length<2?"0"+t:t,n=n.length<2?"0"+n:n,"#"+e+t+n};var d=t.MathUtil={mapValueInRange:function(e,t,n,r,o){var i=n-t,a=o-r,s=(e-t)/i;return r+s*a},interpolateColor:function(e,t,r,o,i,a){o=void 0===o?0:o,i=void 0===i?1:i,t=n.hexToRGB(t),r=n.hexToRGB(r);var s=Math.floor(n.mapValueInRange(e,o,i,t.r,r.r)),u=Math.floor(n.mapValueInRange(e,o,i,t.g,r.g)),c=Math.floor(n.mapValueInRange(e,o,i,t.b,r.b));return a?"rgb("+s+","+u+","+c+")":n.rgbToHex(s,u,c)},degreesToRadians:function(e){return e*Math.PI/180},radiansToDegrees:function(e){return 180*e/Math.PI}};n.extend(n,d);var m;"undefined"!=typeof window&&(m=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||function(e){window.setTimeout(e,1e3/60)}),m||"undefined"==typeof process||"node"!==process.title||(m=setImmediate),n.onFrame=function(e){return m(e)},"undefined"!=typeof r?n.extend(r,t):"undefined"!=typeof window&&(window.rebound=t)}()}),__d("NavigatorIOS",["EventEmitter","Image","NavigationContext","React","NativeModules","StyleSheet","StaticContainer.react","View","requireNativeComponent","invariant","logError"],function(e,t,n,r){"use strict";function o(){return _++}var i=Object.assign||function(e){for(var t=1;tthis.state.observedTopOfStack+1?this.state.observedTopOfStack+1:null;this.setState({idStack:this.state.idStack.slice(0,this.state.observedTopOfStack+1),routeStack:this.state.routeStack.slice(0,this.state.observedTopOfStack+1),requestedTopOfStack:this.state.observedTopOfStack,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:e})},_emitDidFocus:function(e){this.navigationContext.emit("didfocus",{route:e})},_emitWillFocus:function(e){this.navigationContext.emit("willfocus",{route:e})},push:function(e){var t=this;m(!!e,"Must supply route to push"),this.state.requestedTopOfStack===this.state.observedTopOfStack&&this._tryLockNavigator(function(){t._emitWillFocus(e);var n=t.state.routeStack.concat([e]),r=t.state.idStack.concat([o()]);t.setState({idStack:r,routeStack:n,requestedTopOfStack:n.length-1,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:n.length-1})})},popN:function(e){var t=this;0!==e&&this.state.requestedTopOfStack===this.state.observedTopOfStack&&this.state.requestedTopOfStack>0&&this._tryLockNavigator(function(){var n=t.state.requestedTopOfStack-e;m(n>=0,"Cannot pop below 0"),t._emitWillFocus(t.state.routeStack[n]),t.setState({requestedTopOfStack:n,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:null})})},pop:function(){this.popN(1)},replaceAtIndex:function(e,t){if(m(!!e,"Must supply route to replace"),0>t&&(t+=this.state.routeStack.length),!(this.state.routeStack.length<=t)){var n=this.state.idStack.slice(),r=this.state.routeStack.slice();n[t]=o(),r[t]=e,this.setState({idStack:n,routeStack:r,makingNavigatorRequest:!1,updatingAllIndicesAtOrBeyond:t}),this._emitWillFocus(e),this._emitDidFocus(e)}},replace:function(e){this.replaceAtIndex(e,-1)},replacePrevious:function(e){this.replaceAtIndex(e,-2)},popToTop:function(){this.popToRoute(this.state.routeStack[0])},popToRoute:function(e){var t=this.state.routeStack.indexOf(e);m(-1!==t,"Calling pop to route for a route that doesn't exist!");var n=this.state.routeStack.length-t-1;this.popN(n)},replacePreviousAndPop:function(e){var t=this;this.state.requestedTopOfStack===this.state.observedTopOfStack&&(this.state.routeStack.length<2||this._tryLockNavigator(function(){t.replacePrevious(e),t.setState({requestedTopOfStack:t.state.requestedTopOfStack-1,makingNavigatorRequest:!0})}))},resetTo:function(e){m(!!e,"Must supply route to push"),this.state.requestedTopOfStack===this.state.observedTopOfStack&&(this.replaceAtIndex(e,0),this.popToRoute(e))},handleNavigationComplete:function(e){this._toFocusOnNavigationComplete&&(this._getFocusEmitter().emit("focus",this._toFocusOnNavigationComplete),this._toFocusOnNavigationComplete=null),this._handleNavigatorStackChanged(e)},_routeToStackItem:function(e,t){var n=e.component,r=null!==this.state.updatingAllIndicesAtOrBeyond&&this.state.updatingAllIndicesAtOrBeyond>=t;return c.createElement(h,{key:"nav"+t,shouldUpdate:r},c.createElement(w,{title:e.title,style:[R.stackItem,this.props.itemWrapperStyle,e.wrapperStyle],backButtonIcon:this._imageNameFromSource(e.backButtonIcon),backButtonTitle:e.backButtonTitle,leftButtonIcon:this._imageNameFromSource(e.leftButtonIcon),leftButtonTitle:e.leftButtonTitle,onNavLeftButtonTap:e.onLeftButtonPress,rightButtonIcon:this._imageNameFromSource(e.rightButtonIcon),rightButtonTitle:e.rightButtonTitle,onNavRightButtonTap:e.onRightButtonPress,navigationBarHidden:this.props.navigationBarHidden,shadowHidden:this.props.shadowHidden,tintColor:this.props.tintColor,barTintColor:this.props.barTintColor,translucent:this.props.translucent!==!1,titleTextColor:this.props.titleTextColor},c.createElement(n,i({navigator:this.navigator,route:e},e.passProps))))},_imageNameFromSource:function(e){return e?e.uri:void 0},renderNavigationStackItems:function(){var e=this.state.makingNavigatorRequest||null!==this.state.updatingAllIndicesAtOrBeyond,t=e?this.state.routeStack.map(this._routeToStackItem):null;return c.createElement(h,{shouldUpdate:e},c.createElement(b,{ref:g,style:R.transitioner,vertical:this.props.vertical,requestedTopOfStack:this.state.requestedTopOfStack,onNavigationComplete:this.handleNavigationComplete},t))},render:function(){return c.createElement(f,{style:this.props.style},this.renderNavigationStackItems())}}),R=p.create({stackItem:{backgroundColor:"white",overflow:"hidden",position:"absolute",top:0,left:0,right:0,bottom:0},transitioner:{flex:1}}),E=d("RCTNavigator"),w=d("RCTNavItem");n.exports=S}),__d("PickerIOS",["NativeMethodsMixin","React","ReactChildren","ReactNativeViewAttributes","NativeModules","StyleSheet","View","requireNativeComponent","merge"],function(e,t,n,r){"use strict";var o=t("NativeMethodsMixin"),i=t("React"),a=t("ReactChildren"),s=(t("ReactNativeViewAttributes"),t("NativeModules").UIManager.RCTPicker.Constants),u=t("StyleSheet"),c=t("View"),l=t("requireNativeComponent"),p=(t("merge"),"picker"),h=i.createClass({displayName:"PickerIOS",mixins:[o],propTypes:{onValueChange:i.PropTypes.func,selectedValue:i.PropTypes.any},getInitialState:function(){return this._stateFromProps(this.props)},componentWillReceiveProps:function(e){this.setState(this._stateFromProps(e))},_stateFromProps:function(e){var t=0,n=[];return a.forEach(e.children,function(r,o){r.props.value===e.selectedValue&&(t=o),n.push({value:r.props.value,label:r.props.label})}),{selectedIndex:t,items:n}},render:function(){return i.createElement(c,{style:this.props.style},i.createElement(d,{ref:p,style:f.pickerIOS,items:this.state.items,selectedIndex:this.state.selectedIndex,onChange:this._onChange}))},_onChange:function(e){this.props.onChange&&this.props.onChange(e),this.props.onValueChange&&this.props.onValueChange(e.nativeEvent.newValue),this.state.selectedIndex!==e.nativeEvent.newIndex&&this.refs[p].setNativeProps({selectedIndex:this.state.selectedIndex})}});h.Item=i.createClass({displayName:"Item",propTypes:{value:i.PropTypes.any,label:i.PropTypes.string},render:function(){return null}});var f=u.create({pickerIOS:{height:s.ComponentHeight}}),d=l("RCTPicker",h,{nativeOnly:{items:!0,onChange:!0,selectedIndex:!0}});n.exports=h}),__d("ProgressBarAndroid",["UnimplementedView"],function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("ProgressViewIOS",["Image","NativeMethodsMixin","NativeModules","ReactPropTypes","React","StyleSheet","requireNativeComponent"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t_&&this._cancelLongPressDelayTimeout()}var m=p>t.left-o&&h>t.top-i&&p0,o=n&&n.length>0;return!r&&o?n[0]:r?t[0]:e}};n.exports=o}),__d("queryLayoutByID",["ReactNativeTagHandles","NativeModules"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("NativeModules").UIManager,a=function(e,t,n){i.measure(o.rootNodeIDToTag[e],n)};n.exports=a}),__d("TextInput",["DocumentSelectionState","EventEmitter","NativeMethodsMixin","NativeModules","Platform","ReactPropTypes","React","ReactChildren","StyleSheet","Text","TextInputState","react-timer-mixin/TimerMixin.js","TouchableWithoutFeedback","createReactNativeComponentClass","emptyFunction","invariant","requireNativeComponent"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t1&&(r=p.createElement(d,null,r)),t.inputView&&(r=[r,t.inputView]),e=p.createElement(w,o({ref:"input"},t,{children:r,mostRecentEventCount:this.state.mostRecentEventCount,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChange:this._onSelectionChange,onTextInput:this._onTextInput,onSelectionChangeShouldSetResponder:y.thatReturnsTrue,text:this._getText()}))}else{for(var n in S)if(t[n])throw new Error("TextInput prop `"+n+"` is only supported with multiline.");e=p.createElement(T,o({ref:"input"},t,{onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChangeShouldSetResponder:function(){return!0},text:this._getText(),mostRecentEventCount:this.state.mostRecentEventCount}))}return p.createElement(g,{onPress:this._onPress,rejectResponderTermination:!0,testID:t.testID},e)},_renderAndroid:function(){var e=u.UIText.AutocapitalizationType[this.props.autoCapitalize],t=u.AndroidTextInput.Constants.TextAlign[this.props.textAlign],n=u.AndroidTextInput.Constants.TextAlignVertical[this.props.textAlignVertical],r=this.props.children,o=0;h.forEach(r,function(){return++o}),_(!(this.props.value&&o),"Cannot specify both value and children."),o>1&&(r=p.createElement(d,null,r));var i=p.createElement(E,{ref:"input",style:[this.props.style],autoCapitalize:e,autoCorrect:this.props.autoCorrect,textAlign:t,textAlignVertical:n,keyboardType:this.props.keyboardType,mostRecentEventCount:this.state.mostRecentEventCount,multiline:this.props.multiline,numberOfLines:this.props.numberOfLines,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onTextInput:this._onTextInput,onEndEditing:this.props.onEndEditing,onSubmitEditing:this.props.onSubmitEditing,onLayout:this.props.onLayout,password:this.props.password||this.props.secureTextEntry,placeholder:this.props.placeholder,placeholderTextColor:this.props.placeholderTextColor,text:this._getText(),underlineColorAndroid:this.props.underlineColorAndroid,children:r,editable:this.props.editable});return p.createElement(g,{onPress:this._onPress,testID:this.props.testID},i)},_onFocus:function(e){this.props.onFocus&&this.props.onFocus(e)},_onPress:function(e){(this.props.editable||void 0===this.props.editable)&&this.focus()},_onChange:function(e){var t=this;"android"===c.OS&&this.refs.input.setNativeProps({mostRecentEventCount:e.nativeEvent.eventCount});var n=e.nativeEvent.text,r=e.nativeEvent.eventCount;this.props.onChange&&this.props.onChange(e),this.props.onChangeText&&this.props.onChangeText(n),this.setState({mostRecentEventCount:r},function(){n!==t.props.value&&"string"==typeof t.props.value&&t.refs.input.setNativeProps({text:t.props.value})})},_onBlur:function(e){this.blur(),this.props.onBlur&&this.props.onBlur(e)},_onSelectionChange:function(e){if(this.props.selectionState){var t=e.nativeEvent.selection;this.props.selectionState.update(t.start,t.end)}this.props.onSelectionChange&&this.props.onSelectionChange(e)},_onTextInput:function(e){this.props.onTextInput&&this.props.onTextInput(e)}}),O=f.create({input:{alignSelf:"stretch"}});n.exports=C}),__d("DocumentSelectionState",["mixInEventEmitter"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nthis._focusOffset}},{key:"getAnchorOffset",value:function(){return this._hasFocus?this._anchorOffset:null}},{key:"getFocusOffset",value:function(){return this._hasFocus?this._focusOffset:null}},{key:"getStartOffset",value:function(){return this._hasFocus?Math.min(this._anchorOffset,this._focusOffset):null}},{key:"getEndOffset",value:function(){return this._hasFocus?Math.max(this._anchorOffset,this._focusOffset):null}},{key:"overlaps",value:function(e,t){return this.hasFocus()&&this.getStartOffset()<=t&&e<=this.getEndOffset()}}]),e}();a(s,{blur:!0,focus:!0,update:!0}),n.exports=s}),__d("mixInEventEmitter",["EventEmitter","EventEmitterWithHolding","EventHolder","EventValidator","copyProperties","invariant","keyOf"],function(e,t,n,r){function o(e,t){l(t,"Must supply set of valid event types"),l(!this.__eventEmitter,"An active emitter is already mixed in");var n=e.prototype||e,r=e.constructor;r&&l(r===Object||r===Function,"Mix EventEmitter into a class, not an instance"),n.hasOwnProperty(h)?c(n.__types,t):n.__types?n.__types=c({},n.__types,t):n.__types=t,c(n,f)}var i=t("EventEmitter"),a=t("EventEmitterWithHolding"),s=t("EventHolder"),u=t("EventValidator"),c=t("copyProperties"),l=t("invariant"),p=t("keyOf"),h=p({__types:!0}),f={emit:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emit(e,t,n,r,o,i,a)},emitAndHold:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emitAndHold(e,t,n,r,o,i,a)},addListener:function(e,t,n){return this.__getEventEmitter().addListener(e,t,n)},once:function(e,t,n){return this.__getEventEmitter().once(e,t,n)},addRetroactiveListener:function(e,t,n){return this.__getEventEmitter().addRetroactiveListener(e,t,n)},addListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},addRetroactiveListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},removeAllListeners:function(){this.__getEventEmitter().removeAllListeners()},removeCurrentListener:function(){this.__getEventEmitter().removeCurrentListener()},releaseHeldEventType:function(e){this.__getEventEmitter().releaseHeldEventType(e)},__getEventEmitter:function(){if(!this.__eventEmitter){var e=new i;e=u.addValidation(e,this.__types);var t=new s;this.__eventEmitter=new a(e,t)}return this.__eventEmitter}};n.exports=o}),__d("EventEmitterWithHolding",[],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nt.distance?1:0},h=function(e,t){return e.distance/t.length<.334},f=function(e,t){var n,r,o=[];for(n=0;n<=e.length;n++)o[n]=[n];for(r=1;r<=t.length;r++)o[0][r]=r;for(n=1;n<=e.length;n++)for(r=1;r<=t.length;r++){var i=e.charAt(n-1)===t.charAt(r-1)?0:1;o[n][r]=Math.min(o[n-1][r]+1,o[n][r-1]+1,o[n-1][r-1]+i),n>1&&r>1&&e.charAt(n-1)==t.charAt(r-2)&&e.charAt(n-2)==t.charAt(r-1)&&(o[n][r]=Math.min(o[n][r],o[n-2][r-2]+i))}return o[e.length][t.length]};n.exports=s}),__d("copyProperties",[],function(e,t,n,r){function o(e,t,n,r,o,i,a){if(e=e||{},__DEV__&&a)throw new Error("Too many arguments passed to copyProperties");for(var s,u=[t,n,r,o,i],c=0;u[c];){s=u[c++];for(var l in s)e[l]=s[l];s.hasOwnProperty&&s.hasOwnProperty("toString")&&"undefined"!=typeof s.toString&&e.toString!==s.toString&&(e.toString=s.toString)}return e}n.exports=o}),__d("TouchableWithoutFeedback",["React","react-timer-mixin/TimerMixin.js","Touchable","View","ensurePositiveDelayProps","onlyChild"],function(e,t,n,r){"use strict";var o=t("React"),i=t("react-timer-mixin/TimerMixin.js"),a=t("Touchable"),s=t("View"),u=t("ensurePositiveDelayProps"),c=t("onlyChild"),l={top:20,left:20,right:20,bottom:30},p=o.createClass({displayName:"TouchableWithoutFeedback",mixins:[i,a.Mixin],propTypes:{accessible:o.PropTypes.bool,accessibilityComponentType:o.PropTypes.oneOf(s.AccessibilityComponentType),accessibilityTraits:o.PropTypes.oneOfType([o.PropTypes.oneOf(s.AccessibilityTraits),o.PropTypes.arrayOf(o.PropTypes.oneOf(s.AccessibilityTraits))]),onPress:o.PropTypes.func,onPressIn:o.PropTypes.func,onPressOut:o.PropTypes.func,onLayout:o.PropTypes.func,onLongPress:o.PropTypes.func,delayPressIn:o.PropTypes.number,delayPressOut:o.PropTypes.number,delayLongPress:o.PropTypes.number},getInitialState:function(){return this.touchableGetInitialState()},componentDidMount:function(){u(this.props)},componentWillReceiveProps:function(e){u(e)},touchableHandlePress:function(e){this.props.onPress&&this.props.onPress(e)},touchableHandleActivePressIn:function(e){this.props.onPressIn&&this.props.onPressIn(e)},touchableHandleActivePressOut:function(e){this.props.onPressOut&&this.props.onPressOut(e)},touchableHandleLongPress:function(e){this.props.onLongPress&&this.props.onLongPress(e)},touchableGetPressRectOffset:function(){return l},touchableGetHighlightDelayMS:function(){return this.props.delayPressIn||0},touchableGetLongPressDelayMS:function(){return 0===this.props.delayLongPress?0:this.props.delayLongPress||500},touchableGetPressOutDelayMS:function(){return this.props.delayPressOut||0},render:function(){return o.cloneElement(c(this.props.children),{accessible:this.props.accessible!==!1,accessibilityComponentType:this.props.accessibilityComponentType,accessibilityTraits:this.props.accessibilityTraits,testID:this.props.testID,onLayout:this.props.onLayout,onStartShouldSetResponder:this.touchableHandleStartShouldSetResponder,onResponderTerminationRequest:this.touchableHandleResponderTerminationRequest,onResponderGrant:this.touchableHandleResponderGrant,onResponderMove:this.touchableHandleResponderMove,onResponderRelease:this.touchableHandleResponderRelease,onResponderTerminate:this.touchableHandleResponderTerminate})}});n.exports=p}),__d("ensurePositiveDelayProps",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i=function(e){o(!(e.delayPressIn<0||e.delayPressOut<0||e.delayLongPress<0),"Touchable components cannot have negative delay properties")};n.exports=i}),__d("ToastAndroid",["warning"],function(e,t,n,r){"use strict";var o=t("warning"),i={show:function(e,t){o(!1,"Cannot use ToastAndroid on iOS.")}};n.exports=i}),__d("ToolbarAndroid",["UnimplementedView"],function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("TouchableHighlight",["NativeMethodsMixin","React","ReactNativeViewAttributes","StyleSheet","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","View","cloneWithProps","ensureComponentIsNative","ensurePositiveDelayProps","keyOf","merge","onlyChild"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t1)for(var r=1;n>r;r++)t=arguments[r],t&&(e=(e?e+" ":"")+t);return e}n.exports=o}),__d("ensureComponentIsNative",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i=function(e){o(e&&"function"==typeof e.setNativeProps,"Touchable child must either be native or forward setNativeProps to a native component")};n.exports=i}),__d("TouchableNativeFeedback",["React","StyleSheet","Text","View"],function(e,t,n,r){"use strict";var o=t("React"),i=t("StyleSheet"),a=t("Text"),s=t("View"),u=o.createClass({displayName:"DummyTouchableNativeFeedback",render:function(){return o.createElement(s,{style:[c.container,this.props.style]},o.createElement(a,{style:c.info},"TouchableNativeFeedback is not supported on this platform!"))}}),c=i.create({container:{height:100,width:300,backgroundColor:"#ffbcbc",borderWidth:1,borderColor:"red",alignItems:"center",justifyContent:"center",margin:10},info:{color:"#333333",margin:20}});n.exports=u}),__d("TouchableOpacity",["Animated","NativeMethodsMixin","React","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","ensurePositiveDelayProps","flattenStyle","keyOf"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t=this._startTime+this._duration?(0===this._duration?this._onUpdate(this._toValue):this._onUpdate(this._fromValue+this._easing(1)*(this._toValue-this._fromValue)),void this.__debouncedOnEnd({finished:!0})):(this._onUpdate(this._fromValue+this._easing((e-this._startTime)/this._duration)*(this._toValue-this._fromValue)),void(this.__active&&(this._animationFrame=b(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,clearTimeout(this._timeout),window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(R),C=function(e){function t(e){i(this,t),l(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._deceleration=e.deceleration||.998,this._velocity=e.velocity}return o(t,e),p(t,[{key:"start",value:function(e,t,n){this.__active=!0,this._lastValue=e,this._fromValue=e,this._onUpdate=t,this.__onEnd=n,this._startTime=Date.now(),this._animationFrame=b(this.onUpdate.bind(this))}},{key:"onUpdate",value:function(){var e=Date.now(),t=this._fromValue+this._velocity/(1-this._deceleration)*(1-Math.exp(-(1-this._deceleration)*(e-this._startTime)));return this._onUpdate(t),Math.abs(this._lastValue-t)<.1?void this.__debouncedOnEnd({finished:!0}):(this._lastValue=t,void(this.__active&&(this._animationFrame=b(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(R),O=function(e){function t(e){i(this,t),l(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._overshootClamping=s(e.overshootClamping,!1),this._restDisplacementThreshold=s(e.restDisplacementThreshold,.001),this._restSpeedThreshold=s(e.restSpeedThreshold,.001),this._initialVelocity=e.velocity,this._lastVelocity=s(e.velocity,0),this._toValue=e.toValue;var n;void 0!==e.bounciness||void 0!==e.speed?(y(void 0===e.tension&&void 0===e.friction,"You can only define bounciness/speed or tension/friction but not both"),n=g.fromBouncinessAndSpeed(s(e.bounciness,8),s(e.speed,12))):n=g.fromOrigamiTensionAndFriction(s(e.tension,40),s(e.friction,7)),this._tension=n.tension,this._friction=n.friction}return o(t,e),p(t,[{key:"start",value:function(e,n,r,o){if(this.__active=!0,this._startPosition=e,this._lastPosition=this._startPosition,this._onUpdate=n,this.__onEnd=r,this._lastTime=Date.now(),o instanceof t){var i=o.getInternalState();this._lastPosition=i.lastPosition,this._lastVelocity=i.lastVelocity,this._lastTime=i.lastTime}void 0!==this._initialVelocity&&null!==this._initialVelocity&&(this._lastVelocity=this._initialVelocity),this.onUpdate()}},{key:"getInternalState",value:function(){return{lastPosition:this._lastPosition,lastVelocity:this._lastVelocity,lastTime:this._lastTime}}},{key:"onUpdate",value:function(){var e=this._lastPosition,t=this._lastVelocity,n=this._lastPosition,r=this._lastVelocity,o=64,i=Date.now();i>this._lastTime+o&&(i=this._lastTime+o);for(var a=1,s=Math.floor((i-this._lastTime)/a),u=0;s>u;++u){var c=a/1e3,l=t,p=this._tension*(this._toValue-n)-this._friction*r,n=e+l*c/2,r=t+p*c/2,h=r,f=this._tension*(this._toValue-n)-this._friction*r;n=e+h*c/2,r=t+f*c/2;var d=r,m=this._tension*(this._toValue-n)-this._friction*r;n=e+d*c/2,r=t+m*c/2;var v=r,g=this._tension*(this._toValue-n)-this._friction*r;n=e+d*c/2,r=t+m*c/2;var y=(l+2*(h+d)+v)/6,_=(p+2*(f+m)+g)/6;e+=y*c,t+=_*c}if(this._lastTime=i,this._lastPosition=e,this._lastVelocity=t,this._onUpdate(e),this.__active){var S=!1;this._overshootClamping&&0!==this._tension&&(S=this._startPositionthis._toValue:eo;o++)r[o]=arguments[o];var i=function(e,t,n){if("number"==typeof t)return y(e instanceof I,"Bad mapping of type "+typeof e+" for key "+n+", event value must map to AnimatedValue"),void e.setValue(t);y("object"==typeof e,"Bad mapping of type "+typeof e+" for key "+n),y("object"==typeof t,"Bad event of type "+typeof t+" for key "+n);for(var n in e)i(e[n],t[n],n)};e.forEach(function(e,t){i(e,r[t],"arg"+t)}),t&&t.listener&&t.listener.apply(null,r)}};n.exports={Value:I,ValueXY:P,decay:F,timing:V,spring:L,delay:U,sequence:H,parallel:B,stagger:q,event:z,createAnimatedComponent:u,__PropsOnlyForTests:A}}),__d("Interpolation",[],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t,n,r,o,i,a,s){var u=e;if(t>u){if("identity"===a)return u;"clamp"===a&&(u=t)}if(u>n){if("identity"===s)return u;"clamp"===s&&(u=n)}return r===o?r:t===n?t>=e?r:o:(t===-(1/0)?u=-u:n===1/0?u-=t:u=(u-t)/(n-t),u=i(u),r===-(1/0)?u=-u:o===1/0?u+=r:u=u*(o-r)+r,u)}function a(e){var t=e.outputRange;f(t.length>=2,"Bad output range"),s(t);var n=t[0].match(v).map(function(){return[]});t.forEach(function(e){e.match(v).forEach(function(e,t){n[t].push(+e)})});var r=t[0].match(v).map(function(t,r){return m.create(p({},e,{outputRange:n[r]}))});return function(e){var n=0;return t[0].replace(v,function(){return String(r[n++](e))})}}function s(e){for(var t=e[0].replace(v,""),n=1;n=e);++n);return n-1}function c(e){f(e.length>=2,"inputRange must have at least 2 elements");for(var t=1;t=e[t-1],"inputRange must be monotonically increasing "+e)}function l(e,t){f(t.length>=2,e+" must have at least 2 elements"),f(2!==t.length||t[0]!==-(1/0)||t[1]!==1/0,e+"cannot be ]-infinity;+infinity[ "+t)}var p=Object.assign||function(e){for(var t=1;t0?1:0}},{key:"step1",value:function(e){return e>=1?1:0}},{key:"linear",value:function(e){return e}},{key:"ease",value:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){return u(e)})},{key:"quad",value:function(e){return e*e}},{key:"cubic",value:function(e){return e*e*e}},{key:"poly",value:function(e){return function(t){return Math.pow(t,e)}}},{key:"sin",value:function(e){return 1-Math.cos(e*Math.PI/2)}},{key:"circle",value:function(e){return 1-Math.sqrt(1-e*e)}},{key:"exp",value:function(e){return Math.pow(2,10*(e-1))}},{key:"elastic",value:function(){var e=arguments.length<=0||void 0===arguments[0]?1:arguments[0],t=e*Math.PI;return function(e){return 1-Math.pow(Math.cos(e*Math.PI/2),3)*Math.cos(e*t)}}},{key:"back",value:function(e){return void 0===e&&(e=1.70158),function(t){return t*t*((e+1)*t-e)}}},{key:"bounce",value:function(e){return 1/2.75>e?7.5625*e*e:2/2.75>e?(e-=1.5/2.75,7.5625*e*e+.75):2.5/2.75>e?(e-=2.25/2.75,7.5625*e*e+.9375):(e-=2.625/2.75,7.5625*e*e+.984375)}},{key:"bezier",value:function(e,t,n,r,o){if(void 0===o){var i=500;o=1e3/60/i/4}return a(e,t,n,r,o)}},{key:"in",value:function(e){return e}},{key:"out",value:function(e){return function(t){return 1-e(1-t)}}},{key:"inOut",value:function(e){return function(t){return.5>t?e(2*t)/2:1-e(2*(1-t))/2}}}]),e}(),u=s.bezier(.42,0,1,1);n.exports=s}),__d("bezier",[],function(e,t,n,r){n.exports=function(e,t,n,r,o){var i=function(t){var r=1-t;return 3*r*r*t*e+3*r*t*t*n+t*t*t},a=function(e){var n=1-e;return 3*n*n*e*t+3*n*e*e*r+e*e*e},s=function(t){var r=1-t;return 3*(2*(t-1)*t+r*r)*e+3*(-t*t*t+2*r*t)*n};return function(e){var t,n,r,u,c,l,p=e;for(r=p,l=0;8>l;l++){if(u=i(r)-p,Math.abs(u)r)return a(t);if(r>n)return a(n);for(;n>t;){if(u=i(r),Math.abs(u-p)u?t=r:n=r,r=.5*(n-t)+t}return a(r)}}}),__d("SpringConfig",[],function(e,t,n,r){"use strict";function o(e){return 3.62*(e-30)+194}function i(e){return 3*(e-8)+25}function a(e,t){return{tension:o(e),friction:i(t)}}function s(e,t){function n(e,t,n){return(e-t)/(n-t)}function r(e,t,n){return t+e*(n-t)}function a(e,t,n){return e*n+(1-e)*t}function s(e,t,n){return a(2*e-e*e,t,n)}function u(e){return 7e-4*Math.pow(e,3)-.031*Math.pow(e,2)+.64*e+1.28}function c(e){return 44e-6*Math.pow(e,3)-.006*Math.pow(e,2)+.36*e+2}function l(e){return 4.5e-7*Math.pow(e,3)-332e-6*Math.pow(e,2)+.1078*e+5.84}function p(e){return 18>=e?u(e):e>18&&44>=e?c(e):l(e)}var h=n(e/1.7,0,20);h=r(h,0,.8);var f=n(t/1.7,0,20),d=r(f,.5,200),m=s(h,p(d),.01);return{tension:o(d),friction:i(m)}}n.exports={fromOrigamiTensionAndFriction:a,fromBouncinessAndSpeed:s}}),__d("requestAnimationFrame",["emptyFunction","nativeRequestAnimationFrame"],function(e,t,n,r){var o=t("emptyFunction"),i=t("nativeRequestAnimationFrame"),a=0,s=i||function(t){var n=Date.now(),r=Math.max(0,16-(n-a));return a=n+r,e.setTimeout(function(){t(Date.now())},r)};s(o),n.exports=s}),__d("nativeRequestAnimationFrame",[],function(e,t,n,r){var o=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame;n.exports=o}),__d("WebView",["ActivityIndicatorIOS","EdgeInsetsPropType","React","StyleSheet","Text","View","invariant","keyMirror","requireNativeComponent","NativeModules"],function(e,t,n,r){ -"use strict";var o=t("ActivityIndicatorIOS"),i=t("EdgeInsetsPropType"),a=t("React"),s=t("StyleSheet"),u=t("Text"),c=t("View"),l=t("invariant"),p=t("keyMirror"),h=t("requireNativeComponent"),f=a.PropTypes,d=t("NativeModules").WebViewManager,m="rgba(255,255,255,0.8)",v="webview",g=p({IDLE:null,LOADING:null,ERROR:null}),y={click:d.NavigationType.LinkClicked,formsubmit:d.NavigationType.FormSubmitted,backforward:d.NavigationType.BackForward,reload:d.NavigationType.Reload,formresubmit:d.NavigationType.FormResubmitted,other:d.NavigationType.Other},_=d.JSNavigationScheme,b=function(){return a.createElement(c,{style:w.loadingView},a.createElement(o,null))},S=function(e,t,n){return a.createElement(c,{style:w.errorContainer},a.createElement(u,{style:w.errorTextTitle},"Error loading page"),a.createElement(u,{style:w.errorText},"Domain: "+e),a.createElement(u,{style:w.errorText},"Error Code: "+t),a.createElement(u,{style:w.errorText},"Description: "+n))},R=a.createClass({displayName:"WebView",statics:{JSNavigationScheme:_,NavigationType:y},propTypes:{url:f.string,html:f.string,renderError:f.func,renderLoading:f.func,bounces:f.bool,scrollEnabled:f.bool,automaticallyAdjustContentInsets:f.bool,contentInset:i,onNavigationStateChange:f.func,startInLoadingState:f.bool,style:c.propTypes.style,javaScriptEnabledAndroid:f.bool,injectedJavaScript:f.string,scalesPageToFit:f.bool},getInitialState:function(){return{viewState:g.IDLE,lastErrorEvent:null,startInLoadingState:!0}},componentWillMount:function(){this.props.startInLoadingState&&this.setState({viewState:g.LOADING})},render:function(){var e=null;if(this.state.viewState===g.LOADING)e=(this.props.renderLoading||b)();else if(this.state.viewState===g.ERROR){var t=this.state.lastErrorEvent;l(null!=t,"lastErrorEvent expected to be non-null"),e=(this.props.renderError||S)(t.domain,t.code,t.description)}else this.state.viewState!==g.IDLE&&console.error("RCTWebView invalid state encountered: "+this.state.loading);var n=[w.container,w.webView,this.props.style];(this.state.viewState===g.LOADING||this.state.viewState===g.ERROR)&&n.push(w.hidden);var r=a.createElement(E,{ref:v,key:"webViewKey",style:n,url:this.props.url,html:this.props.html,injectedJavaScript:this.props.injectedJavaScript,bounces:this.props.bounces,scrollEnabled:this.props.scrollEnabled,contentInset:this.props.contentInset,automaticallyAdjustContentInsets:this.props.automaticallyAdjustContentInsets,onLoadingStart:this.onLoadingStart,onLoadingFinish:this.onLoadingFinish,onLoadingError:this.onLoadingError,scalesPageToFit:this.props.scalesPageToFit});return a.createElement(c,{style:w.container},r,e)},goForward:function(){d.goForward(this.getWebViewHandle())},goBack:function(){d.goBack(this.getWebViewHandle())},reload:function(){d.reload(this.getWebViewHandle())},updateNavigationState:function(e){this.props.onNavigationStateChange&&this.props.onNavigationStateChange(e.nativeEvent)},getWebViewHandle:function(){return a.findNodeHandle(this.refs[v])},onLoadingStart:function(e){this.updateNavigationState(e)},onLoadingError:function(e){e.persist(),console.warn("Encountered an error loading page",e.nativeEvent),this.setState({lastErrorEvent:e.nativeEvent,viewState:g.ERROR})},onLoadingFinish:function(e){this.setState({viewState:g.IDLE}),this.updateNavigationState(e)}}),E=h("RCTWebView",R,{nativeOnly:{onLoadingStart:!0,onLoadingError:!0,onLoadingFinish:!0}}),w=s.create({container:{flex:1},errorContainer:{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:m},errorText:{fontSize:14,textAlign:"center",marginBottom:2},errorTextTitle:{fontSize:15,fontWeight:"500",marginBottom:10},hidden:{height:0,flex:0},loadingView:{backgroundColor:m,flex:1,justifyContent:"center",alignItems:"center"},webView:{backgroundColor:"#ffffff"}});n.exports=R}),__d("ActionSheetIOS",["NativeModules","invariant"],function(e,t,n,r){"use strict";var o=t("NativeModules").ActionSheetManager,i=t("invariant"),a={showActionSheetWithOptions:function(e,t){i("object"==typeof e&&null!==e,"Options must a valid object"),i("function"==typeof t,"Must provide a valid callback"),o.showActionSheetWithOptions(e,function(){},t)},showShareActionSheetWithOptions:function(e,t,n){i("object"==typeof e&&null!==e,"Options must a valid object"),i("function"==typeof t,"Must provide a valid failureCallback"),i("function"==typeof n,"Must provide a valid successCallback"),o.showShareActionSheetWithOptions(e,t,n)}};n.exports=a}),__d("AdSupportIOS",["NativeModules"],function(e,t,n,r){"use strict";var o=t("NativeModules").AdSupport;n.exports={getAdvertisingId:function(e,t){o.getAdvertisingId(e,t)},getAdvertisingTrackingEnabled:function(e,t){o.getAdvertisingTrackingEnabled(e,t)}}}),__d("AlertIOS",["NativeModules","invariant"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nu.get("window").height/2?"top":"bottom",selection:r.length-1,hierarchy:r,inspected:{style:i.style||{},frame:t}})}},{key:"setPerfing",value:function(e){this.setState({perfing:e,inspecting:!1,inspected:null})}},{key:"setInspecting",value:function(e){this.setState({inspecting:e,inspected:null})}},{key:"render",value:function(){var e="bottom"===this.state.panelPos?{bottom:0}:{top:0};return h.createElement(m,{style:g.container,pointerEvents:"box-none"},this.state.inspecting&&h.createElement(c,{rootTag:this.props.rootTag,inspected:this.state.inspected,inspectedViewTag:this.props.inspectedViewTag,onTouchInstance:this.onTouchInstance.bind(this)}),h.createElement(m,{style:[g.panelContainer,e]},h.createElement(l,{devtoolsIsOpen:!!this.state.devtoolsAgent,inspecting:this.state.inspecting,perfing:this.state.perfing,setPerfing:this.setPerfing.bind(this),setInspecting:this.setInspecting.bind(this),inspected:this.state.inspected,hierarchy:this.state.hierarchy,selection:this.state.selection,setSelection:this.setSelection.bind(this)})))}}]),t}(h.Component),g=f.create({container:{position:"absolute",backgroundColor:"transparent",top:0,left:0,right:0,bottom:0},panelContainer:{position:"absolute",left:0,right:0}});n.exports=v}),__d("InspectorOverlay",["Dimensions","InspectorUtils","React","StyleSheet","NativeModules","View","ElementBox"],function(e,t,n,r){"use strict";var o=t("Dimensions"),i=t("InspectorUtils"),a=t("React"),s=t("StyleSheet"),u=t("NativeModules").UIManager,c=t("View"),l=t("ElementBox"),p=a.PropTypes,h=a.createClass({displayName:"InspectorOverlay",propTypes:{inspected:p.shape({frame:p.object,style:p.any}),inspectedViewTag:p.number,onTouchInstance:p.func.isRequired},findViewForTouchEvent:function(e){var t=this,n=e.nativeEvent.touches[0],r=n.locationX,o=n.locationY;u.findSubviewIn(this.props.inspectedViewTag,[r,o],function(e,n,r,a,s){var u=i.findInstanceByNativeTag(t.props.rootTag,e);u&&t.props.onTouchInstance(u,{left:n,top:r,width:a,height:s},o)})},shouldSetResponser:function(e){return this.findViewForTouchEvent(e),!0},render:function(){var e=null;return this.props.inspected&&(e=a.createElement(l,{frame:this.props.inspected.frame,style:this.props.inspected.style})),a.createElement(c,{onStartShouldSetResponder:this.shouldSetResponser,onResponderMove:this.findViewForTouchEvent,style:[f.inspector,{height:o.get("window").height}]},e)}}),f=s.create({inspector:{backgroundColor:"transparent",position:"absolute",left:0,top:0,right:0}});n.exports=h}),__d("ElementBox",["React","View","StyleSheet","BorderBox","resolveBoxStyle","flattenStyle"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n.5;e.dismissalSpring.setEndValue(o?1:0)}}})},render:function(){var e,t=this;return S.get(this.props.warning)>1&&(e=l.createElement(h,{style:I.bold},"(",S.get(this.props.warning),")"," ")),l.createElement(d,i({style:I.warningBox,ref:function(e){t.container=e}},this.panGesture.panHandlers),l.createElement(f,{onPress:this.props.onOpened},l.createElement(h,{style:I.warningText,numberOfLines:2,ref:function(e){t.text=e}},e,this.props.warning)),l.createElement(d,{ref:function(e){t.closeButton=e},style:I.closeButton},l.createElement(f,{onPress:function(){t.dismissalSpring.setEndValue(1)}},l.createElement(h,{style:I.closeButtonText},"✕"))))}}),C=l.createClass({displayName:"WarningBoxOpened",render:function(){var e;return S.get(this.props.warning)>1&&(e=l.createElement(h,{style:I.bold},"(",S.get(this.props.warning),")"," ")),l.createElement(f,{activeOpacity:.9,onPress:this.props.onClose,style:I.yellowBox},l.createElement(h,{style:I.yellowBoxText},e,this.props.warning),l.createElement(d,{style:I.yellowBoxButtons},l.createElement(f,{onPress:this.props.onDismissed,style:I.yellowBoxButton},l.createElement(h,{style:I.yellowBoxButtonText -},"Dismiss")),l.createElement(f,{onPress:this.props.onIgnored,style:I.yellowBoxButton},l.createElement(h,{style:I.yellowBoxButtonText},"Ignore"))))}}),O=!0,x=l.createClass({displayName:"WarningBox",getInitialState:function(){return{totalWarningCount:E,openWarning:null}},componentWillMount:function(){console.yellowBoxResetIgnored&&(a.setItem(_,"[]",function(e){e&&console.warn("Could not reset ignored warnings.",e)}),R=[])},componentDidMount:function(){m(O,"There can only be one WarningBox"),O=!1,w.addListener("count",this._onWarningCount)},componentWillUnmount:function(){w.removeAllListeners(),O=!0},_onWarningCount:function(e){var t=this;setImmediate(function(){t.setState({totalWarningCount:e})})},_onDismiss:function(e){S["delete"](e),this.setState({openWarning:null})},render:function(){var e=this;if(0===S.size)return l.createElement(d,null);if(this.state.openWarning)return l.createElement(C,{warning:this.state.openWarning,onClose:function(){e.setState({openWarning:null})},onDismissed:this._onDismiss.bind(this,this.state.openWarning),onIgnored:function(){R.push(e.state.openWarning),o(),e._onDismiss(e.state.openWarning)}});var t=[];return S.forEach(function(n,r){t.push(l.createElement(T,{key:r,onOpened:function(){e.setState({openWarning:r})},onDismissed:e._onDismiss.bind(e,r),warning:r}))}),l.createElement(d,{style:I.warningContainer},t)}}),I=p.create({bold:{fontWeight:"bold"},closeButton:{position:"absolute",right:0,height:46,width:46},closeButtonText:{color:"white",fontSize:32,position:"relative",left:8},warningContainer:{position:"absolute",left:0,right:0,bottom:0},warningBox:{position:"relative",backgroundColor:"rgba(171, 124, 36, 0.9)",flex:1,height:46},warningText:{color:"white",position:"absolute",left:0,marginLeft:15,marginRight:46,top:7},yellowBox:{backgroundColor:"rgba(171, 124, 36, 0.9)",position:"absolute",left:0,right:0,top:0,bottom:0,padding:15,paddingTop:35},yellowBoxText:{color:"white",fontSize:20},yellowBoxButtons:{flexDirection:"row",position:"absolute",bottom:0},yellowBoxButton:{flex:1,padding:25},yellowBoxButtonText:{color:"white",fontSize:16}});n.exports=x}),__d("AsyncStorage",["NativeModules"],function(e,t,n,r){"use strict";function o(e){if(!e)return null;var t=new Error(e.message);return t.key=e.key,t}var i=t("NativeModules"),a=i.AsyncLocalStorage,s=i.AsyncRocksDBStorage,u=s||a,c={getItem:function(e,t){return new Promise(function(n,r){u.multiGet([e],function(e,i){var a=i&&i[0]&&i[0][1]?i[0][1]:null;t&&t(e&&o(e[0])||null,a),e?r(o(e[0])):n(a)})})},setItem:function(e,t,n){return new Promise(function(r,i){u.multiSet([[e,t]],function(e){n&&n(e&&o(e[0])||null),e?i(o(e[0])):r(null)})})},removeItem:function(e,t){return new Promise(function(n,r){u.multiRemove([e],function(e){t&&t(e&&o(e[0])||null),e?r(o(e[0])):n(null)})})},mergeItem:function(e,t,n){return new Promise(function(r,i){u.multiMerge([[e,t]],function(e){n&&n(e&&o(e[0])||null),e?i(o(e[0])):r(null)})})},clear:function(e){return new Promise(function(t,n){u.clear(function(r){e&&e(o(r)),r&&o(r)?n(o(r)):t(null)})})},getAllKeys:function(e){return new Promise(function(t,n){u.getAllKeys(function(r,i){e&&e(o(r),i),r?n(o(r)):t(i)})})},multiGet:function(e,t){return new Promise(function(n,r){u.multiGet(e,function(e,i){var a=e&&e.map(function(e){return o(e)})||null;t&&t(a,i),e?r(a):n(i)})})},multiSet:function(e,t){return new Promise(function(n,r){u.multiSet(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})},multiRemove:function(e,t){return new Promise(function(n,r){u.multiRemove(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})},multiMerge:function(e,t){return new Promise(function(n,r){u.multiMerge(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})}};u.multiMerge||(delete c.mergeItem,delete c.multiMerge),n.exports=c}),__d("setupDevtools",["flattenStyle","ReactCurrentOwner","ReactInstanceHandles","ReactNativeMount","ReactReconciler","ReactNativeTextComponent"],function(global,require,module,exports){"use strict";function setupDevtools(){function tryToConnect(){ws.send("attach:agent");var e=setInterval(function(){return ws.send("attach:agent")},500);ws.onmessage=function(t){0===t.data.indexOf("eval:")&&(clearInterval(e),initialize(t.data.slice("eval:".length)))}}function initialize(text){try{eval(text)}catch(e){return void console.error("Failed to eval"+e.message)}window.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject({CurrentOwner:require("ReactCurrentOwner"),InstanceHandles:require("ReactInstanceHandles"),Mount:require("ReactNativeMount"),Reconciler:require("ReactReconciler"),TextComponent:require("ReactNativeTextComponent")}),ws.onmessage=handleMessage}function handleMessage(e){var t;try{t=JSON.parse(e.data)}catch(n){return console.error("failed to parse json: "+e.data)}return t.$close||t.$error?(closeListeners.forEach(function(e){return e()}),window.__REACT_DEVTOOLS_GLOBAL_HOOK__.emit("shutdown"),void tryToConnect()):void(t.$open||messageListeners.forEach(function(e){try{e(t)}catch(n){throw console.log(t),n}}))}var messageListeners=[],closeListeners=[],ws=new window.WebSocket("ws://localhost:8081/devtools"),FOR_BACKEND={resolveRNStyle:require("flattenStyle"),wall:{listen:function(e){messageListeners.push(e)},onClose:function(e){closeListeners.push(e)},send:function(e){ws.send(JSON.stringify(e))}}};ws.onclose=function(){console.warn("devtools socket closed"),closeListeners.forEach(function(e){return e()})},ws.onerror=function(e){console.warn("devtools socket errored",e),closeListeners.forEach(function(e){return e()})},ws.onopen=function(){tryToConnect()}}module.exports=setupDevtools}),__d("RCTRenderingPerf",["ReactDefaultPerf","invariant"],function(e,t,n,r){"use strict";var o=t("ReactDefaultPerf"),i=t("invariant"),a=[],s=!1,u={toggle:function(){console.log("Render perfomance measurements enabled"),s=!0},start:function(){s&&(o.start(),a.forEach(function(e){return e.start()}))},stop:function(){if(s){o.stop(),o.printInclusive(),o.printWasted();for(var e=0,t=0,n=o.getLastMeasurements(),r=0;r component":e.componentName,"Inclusive time (ms)":o(e.time),Instances:e.count}})),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},getMeasurementsSummaryMap:function(e){var t=s.getInclusiveSummary(e,!0);return t.map(function(e){return{"Owner > component":e.componentName,"Wasted time (ms)":e.time,Instances:e.count}})},printWasted:function(e){e=e||p._allMeasurements,console.table(p.getMeasurementsSummaryMap(e)),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},printDOM:function(e){e=e||p._allMeasurements;var t=s.getDOMSummary(e);console.table(t.map(function(e){var t={};return t[a.ID_ATTRIBUTE_NAME]=e.id,t.type=e.type,t.args=JSON.stringify(e.args),t})),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},_recordWrite:function(e,t,n,r){var o=p._allMeasurements[p._allMeasurements.length-1].writes;o[e]=o[e]||[],o[e].push({type:t,time:n,args:r})},measure:function(e,t,n){return function(){for(var r=arguments.length,o=Array(r),a=0;r>a;a++)o[a]=arguments[a];var s,c,h;if("_renderNewRootComponent"===t||"flushBatchedUpdates"===t)return p._allMeasurements.push({exclusive:{},inclusive:{},render:{},counts:{},writes:{},displayNames:{},totalTime:0}),h=l(),c=n.apply(this,o),p._allMeasurements[p._allMeasurements.length-1].totalTime=l()-h,c;if("_mountImageIntoNode"===t||"ReactDOMIDOperations"===e){if(h=l(),c=n.apply(this,o),s=l()-h,"_mountImageIntoNode"===t){var f=u.getID(o[1]);p._recordWrite(f,t,s,o[0])}else"dangerouslyProcessChildrenUpdates"===t?o[0].forEach(function(e){var t={};null!==e.fromIndex&&(t.fromIndex=e.fromIndex),null!==e.toIndex&&(t.toIndex=e.toIndex),null!==e.textContent&&(t.textContent=e.textContent),null!==e.markupIndex&&(t.markup=o[1][e.markupIndex]),p._recordWrite(e.parentID,e.type,s,t)}):p._recordWrite(o[0],t,s,Array.prototype.slice.call(o,1));return c}if("ReactCompositeComponent"!==e||"mountComponent"!==t&&"updateComponent"!==t&&"_renderValidatedComponent"!==t)return n.apply(this,o);if("string"==typeof this._currentElement.type)return n.apply(this,o);var d="mountComponent"===t?o[0]:this._rootNodeID,m="_renderValidatedComponent"===t,v="mountComponent"===t,g=p._mountStack,y=p._allMeasurements[p._allMeasurements.length-1];if(m?i(y.counts,d,1):v&&g.push(0),h=l(),c=n.apply(this,o),s=l()-h,m)i(y.render,d,s);else if(v){var _=g.pop();g[g.length-1]+=s,i(y.exclusive,d,s-_),i(y.inclusive,d,s)}else i(y.inclusive,d,s);return y.displayNames[d]={current:this.getName(),owner:this._currentElement._owner?this._currentElement._owner.getName():""},c}}};n.exports=p}),__d("DOMProperty",["invariant"],function(e,t,n,r){"use strict";function o(e,t){return(e&t)===t}var i=t("invariant"),a={MUST_USE_ATTRIBUTE:1,MUST_USE_PROPERTY:2,HAS_SIDE_EFFECTS:4,HAS_BOOLEAN_VALUE:8,HAS_NUMERIC_VALUE:16,HAS_POSITIVE_NUMERIC_VALUE:48,HAS_OVERLOADED_BOOLEAN_VALUE:64,injectDOMPropertyConfig:function(e){var t=a,n=e.Properties||{},r=e.DOMAttributeNamespaces||{},s=e.DOMAttributeNames||{},c=e.DOMPropertyNames||{},l=e.DOMMutationMethods||{};e.isCustomAttribute&&u._isCustomAttributeFunctions.push(e.isCustomAttribute);for(var p in n){i(!u.properties.hasOwnProperty(p),"injectDOMPropertyConfig(...): You're trying to inject DOM property '%s' which has already been injected. You may be accidentally injecting the same DOM property config twice, or you may be injecting two configs that have conflicting property names.",p);var h=p.toLowerCase(),f=n[p],d={attributeName:h,attributeNamespace:null,propertyName:p,mutationMethod:null,mustUseAttribute:o(f,t.MUST_USE_ATTRIBUTE),mustUseProperty:o(f,t.MUST_USE_PROPERTY),hasSideEffects:o(f,t.HAS_SIDE_EFFECTS),hasBooleanValue:o(f,t.HAS_BOOLEAN_VALUE),hasNumericValue:o(f,t.HAS_NUMERIC_VALUE),hasPositiveNumericValue:o(f,t.HAS_POSITIVE_NUMERIC_VALUE),hasOverloadedBooleanValue:o(f,t.HAS_OVERLOADED_BOOLEAN_VALUE)};if(i(!d.mustUseAttribute||!d.mustUseProperty,"DOMProperty: Cannot require using both attribute and property: %s",p),i(d.mustUseProperty||!d.hasSideEffects,"DOMProperty: Properties that have side effects must use property: %s",p),i(d.hasBooleanValue+d.hasNumericValue+d.hasOverloadedBooleanValue<=1,"DOMProperty: Value can be one of boolean, overloaded boolean, or numeric value, but not a combination: %s",p),__DEV__&&(u.getPossibleStandardName[h]=p),s.hasOwnProperty(p)){var m=s[p];d.attributeName=m,__DEV__&&(u.getPossibleStandardName[m]=p)}r.hasOwnProperty(p)&&(d.attributeNamespace=r[p]),c.hasOwnProperty(p)&&(d.propertyName=c[p]),l.hasOwnProperty(p)&&(d.mutationMethod=l[p]),u.properties[p]=d}}},s={},u={ID_ATTRIBUTE_NAME:"data-reactid",properties:{},getPossibleStandardName:__DEV__?{}:null,_isCustomAttributeFunctions:[],isCustomAttribute:function(e){for(var t=0;t=l&&s.push(n[t]);return s.sort(function(e,t){return t.exclusive-e.exclusive}),s}function s(e,t){for(var n,r={},o=0;o "+h.current,r[n]=r[n]||{componentName:n,time:0,count:0},a.inclusive[p]&&(r[n].time+=a.inclusive[p]),a.counts[p]&&(r[n].count+=a.counts[p])}}var f=[];for(n in r)r[n].time>=l&&f.push(r[n]);return f.sort(function(e,t){return t.time-e.time}),f}function u(e){var t={},n=Object.keys(e.writes),r=c({},e.exclusive,e.inclusive);for(var o in r){for(var i=!1,a=0;a0&&(t[o]=!0)}return t}var c=t("Object.assign"),l=1.2,p={_mountImageIntoNode:"set innerHTML",INSERT_MARKUP:"set innerHTML",MOVE_EXISTING:"move",REMOVE_NODE:"remove",TEXT_CONTENT:"set textContent",updatePropertyByID:"update attribute",deletePropertyByID:"delete attribute",updateStylesByID:"update styles",updateInnerHTMLByID:"set innerHTML",dangerouslyReplaceNodeWithMarkupByID:"replace"},h={getExclusiveSummary:a,getInclusiveSummary:s,getDOMSummary:i,getTotalTime:o};n.exports=h}),__d("ReactMount",["DOMProperty","ReactBrowserEventEmitter","ReactCurrentOwner","ReactElement","ReactEmptyComponent","ReactInstanceHandles","ReactInstanceMap","ReactMarkupChecksum","ReactPerf","ReactReconciler","ReactUpdateQueue","ReactUpdates","emptyObject","containsNode","instantiateReactComponent","invariant","setInnerHTML","shouldUpdateReactComponent","validateDOMNesting","warning"],function(e,t,n,r){"use strict";function o(e,t){for(var n=Math.min(e.length,t.length),r=0;n>r;r++)if(e.charAt(r)!==t.charAt(r))return r;return e.length===t.length?-1:n}function i(e){return e?e.nodeType===q?e.documentElement:e.firstChild:null}function a(e){var t=i(e);return t&&Q.getID(t)}function s(e){var t=u(e);if(t)if(B.hasOwnProperty(t)){var n=B[t];n!==e&&(A(!h(n,t),"ReactMount: Two valid but unequal nodes with the same `%s`: %s",H,t),B[t]=e)}else B[t]=e;return t}function u(e){return e&&e.getAttribute&&e.getAttribute(H)||""}function c(e,t){var n=u(e);n!==t&&delete B[n],e.setAttribute(H,t),B[t]=e}function l(e){return B.hasOwnProperty(e)&&h(B[e],e)||(B[e]=Q.findReactNodeByID(e)),B[e]}function p(e){var t=T.get(e)._rootNodeID;return E.isNullComponentID(t)?null:(B.hasOwnProperty(t)&&h(B[t],t)||(B[t]=Q.findReactNodeByID(t)),B[t])}function h(e,t){if(e){A(u(e)===t,"ReactMount: Unexpected modification of `%s`",H);var n=Q.findReactContainerForID(t);if(n&&D(n,e))return!0}return!1}function f(e){delete B[e]}function d(e){var t=B[e];return t&&h(t,e)?void(X=t):!1}function m(e){X=null,w.traverseAncestors(e,d);var t=X;return X=null,t}function v(e,t,n,r,o,i){if(__DEV__){i===N&&(i={});var a=n.nodeName.toLowerCase();i[L.ancestorInfoContextKey]=L.updatedAncestorInfo(null,a,null)}var s=x.mountComponent(e,t,r,i);e._renderedComponent._topLevelWrapper=e,Q._mountImageIntoNode(s,n,o)}function g(e,t,n,r,o){var i=P.ReactReconcileTransaction.getPooled();i.perform(v,null,e,t,n,i,r,o),P.ReactReconcileTransaction.release(i)}function y(e,t){for(x.unmountComponent(e),t.nodeType===q&&(t=t.documentElement);t.lastChild;)t.removeChild(t.lastChild)}var _=t("DOMProperty"),b=t("ReactBrowserEventEmitter"),S=t("ReactCurrentOwner"),R=t("ReactElement"),E=t("ReactEmptyComponent"),w=t("ReactInstanceHandles"),T=t("ReactInstanceMap"),C=t("ReactMarkupChecksum"),O=t("ReactPerf"),x=t("ReactReconciler"),I=t("ReactUpdateQueue"),P=t("ReactUpdates"),N=t("emptyObject"),D=t("containsNode"),M=t("instantiateReactComponent"),A=t("invariant"),k=t("setInnerHTML"),j=t("shouldUpdateReactComponent"),L=t("validateDOMNesting"),V=t("warning"),F=w.SEPARATOR,H=_.ID_ATTRIBUTE_NAME,B={},U=1,q=9,z=11,G={},W={};if(__DEV__)var Y={};var K=[],X=null,J=function(){};J.prototype.render=function(){return this.props};var Q={_instancesByReactRootID:G,scrollMonitor:function(e,t){t()},_updateRootComponent:function(e,t,n,r){return Q.scrollMonitor(n,function(){I.enqueueElementInternal(e,t),r&&I.enqueueCallbackInternal(e,r)}),__DEV__&&(Y[a(n)]=i(n)),e},_registerComponent:function(e,t){A(t&&(t.nodeType===U||t.nodeType===q||t.nodeType===z),"_registerComponent(...): Target container is not a DOM element."),b.ensureScrollValueMonitoring();var n=Q.registerContainer(t);return G[n]=e,n},_renderNewRootComponent:function(e,t,n,r){V(null==S.current,"_renderNewRootComponent(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",S.current&&S.current.getName()||"ReactCompositeComponent");var o=M(e,null),a=Q._registerComponent(o,t);return P.batchedUpdates(g,o,a,t,n,r),__DEV__&&(Y[a]=i(t)),o},renderSubtreeIntoContainer:function(e,t,n,r){return A(null!=e&&null!=e._reactInternalInstance,"parentComponent must be a valid React Component"),Q._renderSubtreeIntoContainer(e,t,n,r)},_renderSubtreeIntoContainer:function(e,t,n,r){A(R.isValidElement(t),"React.render(): Invalid component element.%s","string"==typeof t?" Instead of passing an element string, make sure to instantiate it by passing it to React.createElement.":"function"==typeof t?" Instead of passing a component class, make sure to instantiate it by passing it to React.createElement.":null!=t&&void 0!==t.props?" This may be caused by unintentionally loading two independent copies of React.":""),V(!n||!n.tagName||"BODY"!==n.tagName.toUpperCase(),"render(): Rendering components directly into document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try rendering into a container element created for your app.");var o=new R(J,null,null,null,t),s=G[a(n)];if(s){var u=s._currentElement,c=u.props;if(j(c,t))return Q._updateRootComponent(s,o,n,r)._renderedComponent.getPublicInstance();Q.unmountComponentAtNode(n)}var l=i(n),p=l&&Q.isRenderedByReact(l);if(__DEV__&&(!p||l.nextSibling))for(var h=l;h;){if(Q.isRenderedByReact(h)){V(!1,"render(): Target node has markup rendered by React, but there are unrelated nodes as well. This is most commonly caused by white-space inserted around server-rendered markup.");break}h=h.nextSibling}var f=p&&!s,d=Q._renderNewRootComponent(o,n,f,null!=e?e._reactInternalInstance._processChildContext(e._reactInternalInstance._context):N)._renderedComponent.getPublicInstance();return r&&r.call(d),d},render:function(e,t,n){return Q._renderSubtreeIntoContainer(null,e,t,n)},registerContainer:function(e){var t=a(e);return t&&(t=w.getReactRootIDFromNodeID(t)),t||(t=w.createReactRootID()),W[t]=e,t},unmountComponentAtNode:function(e){V(null==S.current,"unmountComponentAtNode(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",S.current&&S.current.getName()||"ReactCompositeComponent"),A(e&&(e.nodeType===U||e.nodeType===q||e.nodeType===z),"unmountComponentAtNode(...): Target container is not a DOM element.");var t=a(e),n=G[t];return n?(P.batchedUpdates(y,n,e),delete G[t],delete W[t],__DEV__&&delete Y[t],!0):!1},findReactContainerForID:function(e){var t=w.getReactRootIDFromNodeID(e),n=W[t];if(__DEV__){var r=Y[t];if(r&&r.parentNode!==n){V(u(r)===t,"ReactMount: Root element ID differed from reactRootID.");var o=n.firstChild;o&&t===u(o)?Y[t]=o:V(!1,"ReactMount: Root element has been removed from its original container. New container: %s",r.parentNode)}}return n},findReactNodeByID:function(e){var t=Q.findReactContainerForID(e);return Q.findComponentRoot(t,e)},isRenderedByReact:function(e){if(1!==e.nodeType)return!1;var t=Q.getID(e);return t?t.charAt(0)===F:!1},getFirstReactDOM:function(e){for(var t=e;t&&t.parentNode!==t;){if(Q.isRenderedByReact(t))return t;t=t.parentNode}return null},findComponentRoot:function(e,t){var n=K,r=0,o=m(t)||e;for(n[0]=o.firstChild,n.length=1;r when using tables, nesting tags like
,

, or , or using non-SVG elements in an parent. Try inspecting the child nodes of the element with React ID `%s`.",t,Q.getID(e))},_mountImageIntoNode:function(e,t,n){if(A(t&&(t.nodeType===U||t.nodeType===q||t.nodeType===z),"mountComponentIntoNode(...): Target container is not valid."),n){var r=i(t);if(C.canReuseMarkup(e,r))return;var a=r.getAttribute(C.CHECKSUM_ATTR_NAME);r.removeAttribute(C.CHECKSUM_ATTR_NAME);var s=r.outerHTML;r.setAttribute(C.CHECKSUM_ATTR_NAME,a);var u=o(e,s),c=" (client) "+e.substring(u-20,u+20)+"\n (server) "+s.substring(u-20,u+20);A(t.nodeType!==q,"You're trying to render a component to the document using server rendering but the checksum was invalid. This usually means you rendered a different component type or props on the client from the one on the server, or your render() methods are impure. React cannot handle this case due to cross-browser quirks by rendering at the document root. You should look for environment dependent code in your components and ensure the props are the same client and server side:\n%s",c),__DEV__&&V(!1,"React attempted to reuse markup in a container but the checksum was invalid. This generally means that you are using server rendering and the markup generated on the server was not what the client was expecting. React injected new markup to compensate which works but you have lost many of the benefits of server rendering. Instead, figure out why the markup being generated is different on the client or server:\n%s",c)}A(t.nodeType!==q,"You're trying to render a component to the document but you didn't use server rendering. We can't do this without using server rendering due to cross-browser quirks. See React.renderToString() for server rendering."),k(t,e)},getReactRootID:a,getID:s,setID:c,getNode:l,getNodeFromInstance:p,purgeID:f};O.measureMethods(Q,"ReactMount",{_renderNewRootComponent:"_renderNewRootComponent",_mountImageIntoNode:"_mountImageIntoNode"}),n.exports=Q}),__d("ReactBrowserEventEmitter",["EventConstants","EventPluginHub","EventPluginRegistry","ReactEventEmitterMixin","ViewportMetrics","Object.assign","isEventSupported"],function(e,t,n,r){"use strict";function o(e){return Object.prototype.hasOwnProperty.call(e,v)||(e[v]=d++,h[e[v]]={}),h[e[v]]}var i=t("EventConstants"),a=t("EventPluginHub"),s=t("EventPluginRegistry"),u=t("ReactEventEmitterMixin"),c=t("ViewportMetrics"),l=t("Object.assign"),p=t("isEventSupported"),h={},f=!1,d=0,m={topBlur:"blur",topChange:"change",topClick:"click",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topScroll:"scroll",topSelectionChange:"selectionchange",topTextInput:"textInput",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topWheel:"wheel"},v="_reactListenersID"+String(Math.random()).slice(2),g=l({},u,{ReactEventListener:null,injection:{injectReactEventListener:function(e){e.setHandleTopLevel(g.handleTopLevel),g.ReactEventListener=e}},setEnabled:function(e){g.ReactEventListener&&g.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!g.ReactEventListener||!g.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,r=o(n),a=s.registrationNameDependencies[e],u=i.topLevelTypes,c=0;c"," "+i.CHECKSUM_ATTR_NAME+'="'+t+'">')},canReuseMarkup:function(e,t){var n=t.getAttribute(i.CHECKSUM_ATTR_NAME);n=n&&parseInt(n,10);var r=o(e);return r===n}};n.exports=i}),__d("adler32",[],function(e,t,n,r){"use strict";function o(e){for(var t=1,n=0,r=0;r]/,s=function(e,t){e.innerHTML=t};if("undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction&&(s=function(e,t){MSApp.execUnsafeLocalFunction(function(){e.innerHTML=t})}),o.canUseDOM){var u=document.createElement("div");u.innerHTML=" ",""===u.innerHTML&&(s=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),i.test(t)||"<"===t[0]&&a.test(t)){e.innerHTML=String.fromCharCode(65279)+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t})}n.exports=s}),__d("validateDOMNesting",["Object.assign","emptyFunction","warning"],function(e,t,n,r){"use strict";var o=t("Object.assign"),i=t("emptyFunction"),a=t("warning"),s=i;if(__DEV__){var u=["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"],c=["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"],l=c.concat(["button"]),p=["dd","dt","li","option","optgroup","p","rp","rt"],h={parentTag:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null},f=function(e,t,n){var r=o({},e||h),i={tag:t,instance:n};return-1!==c.indexOf(t)&&(r.aTagInScope=null,r.buttonTagInScope=null,r.nobrTagInScope=null),-1!==l.indexOf(t)&&(r.pTagInButtonScope=null),-1!==u.indexOf(t)&&"address"!==t&&"div"!==t&&"p"!==t&&(r.listItemTagAutoclosing=null,r.dlItemTagAutoclosing=null),r.parentTag=i,"form"===t&&(r.formTag=i),"a"===t&&(r.aTagInScope=i),"button"===t&&(r.buttonTagInScope=i),"nobr"===t&&(r.nobrTagInScope=i),"p"===t&&(r.pTagInButtonScope=i),"li"===t&&(r.listItemTagAutoclosing=i),("dd"===t||"dt"===t)&&(r.dlItemTagAutoclosing=i),r},d=function(e,t){switch(t){case"select":return"option"===e||"optgroup"===e||"#text"===e;case"optgroup":return"option"===e||"#text"===e;case"option":return"#text"===e;case"tr":return"th"===e||"td"===e||"style"===e||"script"===e||"template"===e;case"tbody":case"thead":case"tfoot":return"tr"===e||"style"===e||"script"===e||"template"===e;case"colgroup":return"col"===e||"template"===e;case"table":return"caption"===e||"colgroup"===e||"tbody"===e||"tfoot"===e||"thead"===e||"style"===e||"script"===e||"template"===e;case"head":return"base"===e||"basefont"===e||"bgsound"===e||"link"===e||"meta"===e||"title"===e||"noscript"===e||"noframes"===e||"style"===e||"script"===e||"template"===e;case"html":return"head"===e||"body"===e}switch(e){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"h1"!==t&&"h2"!==t&&"h3"!==t&&"h4"!==t&&"h5"!==t&&"h6"!==t;case"rp":case"rt":return-1===p.indexOf(t);case"caption":case"col":case"colgroup":case"frame":case"head":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return null==t}return!0},m=function(e,t){ -switch(e){case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dialog":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"main":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":case"pre":case"listing":case"table":case"hr":case"xmp":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return t.pTagInButtonScope;case"form":return t.formTag||t.pTagInButtonScope;case"li":return t.listItemTagAutoclosing;case"dd":case"dt":return t.dlItemTagAutoclosing;case"button":return t.buttonTagInScope;case"a":return t.aTagInScope;case"nobr":return t.nobrTagInScope}return null},v=function(e){if(!e)return[];var t=[];do t.push(e);while(e=e._currentElement._owner);return t.reverse(),t},g={};s=function(e,t,n){n=n||h;var r=n.parentTag,o=r&&r.tag,i=d(e,o)?null:r,s=i?null:m(e,n),u=i||s;if(u){var c,l=u.tag,p=u.instance,f=t&&t._currentElement._owner,y=p&&p._currentElement._owner,_=v(f),b=v(y),S=Math.min(_.length,b.length),R=-1;for(c=0;S>c&&_[c]===b[c];c++)R=c;var E="(unknown)",w=_.slice(R+1).map(function(e){return e.getName()||E}),T=b.slice(R+1).map(function(e){return e.getName()||E}),C=[].concat(-1!==R?_[R].getName()||E:[],T,l,s?["..."]:[],w,e).join(" > "),O=!!i+"|"+e+"|"+l+"|"+C;if(g[O])return;if(g[O]=!0,i){var x="";"table"===l&&"tr"===e&&(x+=" Add a to your code to match the DOM tree generated by the browser."),a(!1,"validateDOMNesting(...): <%s> cannot appear as a child of <%s>. See %s.%s",e,l,C,x)}else a(!1,"validateDOMNesting(...): <%s> cannot appear as a descendant of <%s>. See %s.",e,l,C)}},s.ancestorInfoContextKey="__validateDOMNesting_ancestorInfo$"+Math.random().toString(36).slice(2),s.updatedAncestorInfo=f,s.isTagValidInContext=function(e,t){t=t||h;var n=t.parentTag,r=n&&n.tag;return d(e,r)&&!m(e,t)}}n.exports=s}),__d("AppStateIOS",["Map","NativeModules","RCTDeviceEventEmitter","logError","invariant"],function(e,t,n,r){"use strict";var o=t("Map"),i=t("NativeModules"),a=t("RCTDeviceEventEmitter"),s=i.AppState,u=t("logError"),c=t("invariant"),l={change:new o,memoryWarning:new o},p={addEventListener:function(e,t){c(-1!==["change","memoryWarning"].indexOf(e),'Trying to subscribe to unknown event: "%s"',e),"change"===e?l[e].set(t,a.addListener("appStateDidChange",function(e){t(e.app_state)})):"memoryWarning"===e&&l[e].set(t,a.addListener("memoryWarning",t))},removeEventListener:function(e,t){c(-1!==["change","memoryWarning"].indexOf(e),'Trying to remove listener for unknown event: "%s"',e),l[e].has(t)&&(l[e].get(t).remove(),l[e]["delete"](t))},currentState:s&&s.initialAppState};a.addListener("appStateDidChange",function(e){p.currentState=e.app_state}),s.getCurrentAppState(function(e){p.currentState=e.app_state},u),n.exports=p}),__d("BackAndroid",["warning"],function(e,t,n,r){"use strict";function o(){i(!1,"BackAndroid is not supported on this platform.")}var i=t("warning"),a={exitApp:o,addEventListener:o,removeEventListener:o};n.exports=a}),__d("CameraRoll",["ReactPropTypes","NativeModules","createStrictShapeTypeChecker","deepFreezeAndThrowOnMutationInDev","invariant"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n glview) must have a function in parameter");var p=function(r){function p(e,t){o(this,p),u(Object.getPrototypeOf(p.prototype),"constructor",this).call(this,e,t),l.forEach(this._delegateMethod,this)}return i(p,r),s(p,[{key:"_delegateMethod",value:function(e){const t=this;this[e]=function(){const n=t.refs._;return c(n,"glView has been rendered"),n[e].apply(n,arguments)}}},{key:"render",value:function(){const r=n(this.props);return c(r&&(r.type===t||r.type.isGLComponent),"The GL.createComponent function parameter must return a GL.View or another GL Component"),e.cloneElement(r,a({},r.props,{ref:"_"}))}}]),p}(e.Component);if(p.isGLComponent=!0,p.displayName=n.name||"",r){c("object"==typeof r,"second parameter of createComponent must be an object of static fields to set in the React component. (example: propTypes, displayName)");for(var h in r)p[h]=r[h]}return p}return n}}),__d("invariant",[],function(e,t,n,r){"use strict";var o=function(e,t,n,r,o,i,a,s){if("production"!==process.env.NODE_ENV&&void 0===t)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,s],l=0;u=new Error("Invariant Violation: "+t.replace(/%s/g,function(){return c[l++]}))}throw u.framesToPop=1,u}};n.exports=o}),__d("gl-react-core/src/glViewMethods.json",[],function(e,t,n,r){n.exports=["getGLCanvas","captureFrame"]}),__d("gl-react-core/src/createComponentDeprecated.js",["invariant","gl-react-core/src/glViewMethods.json"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function c(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0===r){var o=Object.getPrototypeOf(e);return null===o?void 0:c(o,t,n)}if("value"in r)return r.value;var i=r.get;return void 0===i?void 0:i.call(n)};const s=t("invariant"),u=t("gl-react-core/src/glViewMethods.json");n.exports=function(e){var t=function(e){function t(e,n){var r=this;o(this,t),a(Object.getPrototypeOf(t.prototype),"constructor",this).call(this,e,n),u.forEach(function(e){r[e]||(r[e]=function(){return s(!0,"'%s' method is not available in deprecated GL.Component. Use GL.createComponent(props => glView) instead")})}),"production"!==process.env.NODE_ENV&&console.error("GL.Component class is deprecated. Use GL.createComponent(props => glView) function instead")}return i(t,e),t}(e.Component);return t.isGLComponent=!0,t}}),__d("gl-react-core/src/createShaders.js",["invariant"],function(e,t,n,r){const o=t("invariant");n.exports=function(e){var t=1;const n={},r={create:function(r){o("object"==typeof r,"config must be an object");const i={};for(var a in r){const s=r[a];o("object"==typeof s&&"string"==typeof s.frag,"invalid shader given to Shaders.create(). A valid shader is a { frag: String }");const u=t++;s.name||(s.name=a),n[u]=s.name,e(u,s),i[a]=u}return i},getName:function(e){return n[e]},list:function(){return Object.keys(n)},exists:function(e){return"number"==typeof e&&e>=1&&t>e}};return r}}),__d("gl-react-core/src/createUniform.js",["invariant"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e,t){"undefined"!=typeof console&&console.debug&&console.debug("GL.View rendered with",e,t)}var u=Object.assign||function(e){for(var t=1;t0&&a>0,"width and height are required for the root GLView");var w=d(f(_(l,m,i,a,c,y||!1,[])));const T=w.data,C=w.contentsVDOM,O=w.imagesToPreload;return g&&s(T,C),r({width:i,height:a,style:n,visibleContent:S,eventsThrough:R},C.map(function(e,t){return h(T.width,T.height,t,e,{visibleContent:S})}),v(u({},E,{width:i,height:a,data:T,nbContentTextures:C.length,imagesToPreload:O,renderId:e,opaque:b,visibleContent:S,eventsThrough:R})))}}]),t}(g);return b.displayName="GL.View",b.propTypes={shader:y.number.isRequired,width:y.number,height:y.number,uniforms:y.object,opaque:y.bool,preload:y.bool,autoRedraw:y.bool,eventsThrough:y.bool,visibleContent:y.bool},b.defaultProps={opaque:!0},_=m(e,t,n,b),b}}),__d("gl-react-core/src/data/index.js",["gl-react-core/src/data/build.js","gl-react-core/src/data/fill.js","gl-react-core/src/data/resolve.js"],function(e,t,n,r){n.exports={createBuild:t("gl-react-core/src/data/build.js"),fill:t("gl-react-core/src/data/fill.js"),resolve:t("gl-react-core/src/data/resolve.js")}}),__d("gl-react-core/src/data/build.js",["invariant","gl-react-core/src/data/TextureObjects.js","gl-react-core/src/data/isNonSamplerUniformValue.js"],function(e,t,n,r){function o(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e){function t(e,r,u,h){const f=e.uniforms,d=e.children,m=e.contents,v=e.preload,g=o(e,["uniforms","children","contents","preload"]),y=a({},f),_=u.map(function(e){var t=e.vdom;return t}),b=function(e){return function(){for(e++;e===r||-1!==h.indexOf(e);)e++;return e}}(-1),S=c(e,_),R=S.map(function(e){var t=e.vdom;const n=b();return{vdom:t,fboId:n}}),E=u.concat(R),w=E.map(function(e){var t=e.vdom;return t}),T=E.map(function(e){var t=e.fboId;return t}),C=[],O=[],x=d.concat(S).map(function(e){const t=e.uniform,n=e.vdom,r=e.data;var o=w.indexOf(n),i=void 0,a=void 0;return-1===o?(i=b(),a=O):(i=E[o].fboId,o>=u.length&&(a=C)),t&&(y[t]=l.Framebuffer(i)),{data:r,fboId:i,addToCollection:a}}),I=x.map(function(e){var t=e.fboId;return t}),P=h.concat(T).concat(I),N=[];return x.forEach(function(e){var n=e.data,r=e.fboId,o=e.addToCollection;-1===N.indexOf(r)&&(N.push(r),o&&o.push(t(n,r,E,P)))}),m.forEach(function(e){var t=e.uniform,n=e.vdom,r=e.opts;const o=i.indexOf(n);s(-1!==o,"contents was discovered by findContentsMeta"),y[t]=l.withOpts(l.Content(o),r)}),v&&(n=n.concat(p(f))),a({},g,{uniforms:y,contextChildren:C,children:O,fboId:r})}var n=[];const r=u(e),i=r.map(function(e){var t=e.vdom;return t});return{data:t(e,-1,[],[]),contentsVDOM:i,imagesToPreload:h(n)}}var a=Object.assign||function(e){for(var t=1;t1))return{data:r[o],vdom:n}}).filter(function(e){return e})}n.exports=o}),__d("gl-react-core/src/data/extractImages.js",[],function(e,t,n,r){function o(e){const t=[];for(var n in e){var r=e[n];r&&"object"==typeof r&&"image"===r.type&&r.value&&"string"==typeof r.value.uri&&t.push(r.value)}return t}n.exports=o}),__d("gl-react-core/src/data/uniqImages.js",[],function(e,t,n,r){function o(e){var t=[],n=[];return e.forEach(function(e){-1===t.indexOf(e.uri)&&(t.push(e.uri),n.push(e))}),n}n.exports=o}),__d("gl-react-native/src/View.js",["gl-react-core/src/index.js","react-native/Libraries/react-native/react-native.js","gl-react-native/src/Shaders.js","gl-react-native/src/Uniform.js"],function(e,t,n,r){function o(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t Simple); diff --git a/Examples/Simple/index.ios.js b/Examples/Simple/index.ios.js index 84f844920e190d131f246200c7be351030a6d8b7..18646c88d9deb06ff42bca1ed26c2d9787e653ca 100644 --- a/Examples/Simple/index.ios.js +++ b/Examples/Simple/index.ios.js @@ -1,254 +1,3 @@ -const React = require("react-native"); -const { - AppRegistry, - StyleSheet, - Text, - View, - Image, - TextInput, - ScrollView, - SliderIOS, - SwitchIOS, - ProgressViewIOS, - ActivityIndicatorIOS, -} = React; - -const HelloGL = require("./HelloGL"); -const Saturation = require("./Saturation"); -const HueRotate = require("./HueRotate"); -const PieProgress = require("./PieProgress"); -const OneFingerResponse = require("./OneFingerResponse"); -const AnimatedHelloGL = require("./AnimatedHelloGL"); -const Blur = require("./Blur"); -const Button = require("./Button"); - -class Simple extends React.Component { - constructor (props) { - super(props); - this.state = { - saturationFactor: 1, - hue: 0, - progress: 0, - factor: 0, - text: "and I will return leading the pack", - switch1: false, - switch2: false, - switch3: false, - captured: null - }; - this.onCapture1 = this.onCapture1.bind(this); - } - - onCapture1 () { - this.refs.helloGL.captureFrame(data64 => { - this.setState({ captured: data64 }); - }); - } - - render () { - const { - saturationFactor, - hue, - text, - progress, - factor, - switch1, - switch2, - switch3, - captured - } = this.state; - - return - - Welcome to GL React Native! - - - - 1. Hello GL - - - - - {captured && } - - - - 2. Saturate an Image - - - this.setState({ saturationFactor })} - /> - - - 3. Hue Rotate on Text+Image - - - - Throw me to the wolves - {text} - - this.setState({ hue })} - /> - this.setState({ text })} - value={text} - /> - - - 4. Progress Indicator - - - this.setState({ progress })} - /> - - - 5. Touch Responsive - - - - - 6. Animation - - - - - 7. Blur (2-pass) - - - http://i.imgur.com/3On9QEu.jpg - - this.setState({ factor })} /> - - - - 8. Blur+Hue over UI - - - - - - this.setState({ factor })} - /> - - this.setState({ switch1 })} /> - this.setState({ switch2 })} /> - this.setState({ switch3 })} /> - - - - - - - - - - 9. Texture from array - - Not Supported Yet - - - - ; - } -} - -const styles = StyleSheet.create({ - container: { - flex: 1, - backgroundColor: "#F9F9F9", - }, - title: { - fontSize: 20, - textAlign: "center", - margin: 5, - marginBottom: 20, - fontWeight: "bold" - }, - demos: { - flex: 1, - justifyContent: "center", - marginLeft: 40, - width: 276, - marginBottom: 40, - }, - demoTitle: { - marginBottom: 16, - fontStyle: "italic", - alignSelf: "flex-start", - color: "#999", - fontWeight: "300", - fontSize: 20, - }, - demo: { - marginBottom: 64, - marginLeft: 20, - }, - demoText1: { - position: "absolute", - top: 0, - left: 0, - width: 256, - textAlign: "center", - color: "#f16", - backgroundColor: "transparent", - fontWeight: "400", - fontSize: 24, - letterSpacing: 0 - }, - demoText2: { - position: "absolute", - bottom: 4, - left: 0, - width: 256, - textAlign: "center", - color: "#7bf", - backgroundColor: "transparent", - fontWeight: "300", - fontSize: 32, - letterSpacing: -1 - }, -}); - +const { AppRegistry } = require("react-native"); +const Simple = require("./src"); AppRegistry.registerComponent("Simple", () => Simple); diff --git a/Examples/Simple/Simple.xcodeproj/project.pbxproj b/Examples/Simple/ios/Simple.xcodeproj/project.pbxproj similarity index 82% rename from Examples/Simple/Simple.xcodeproj/project.pbxproj rename to Examples/Simple/ios/Simple.xcodeproj/project.pbxproj index 5c01fc8d9b0ef52ba78cde0d1ce78aa86ab07546..d5c945bdb2a00d2c0469a1848957ffe850880eda 100644 --- a/Examples/Simple/Simple.xcodeproj/project.pbxproj +++ b/Examples/Simple/ios/Simple.xcodeproj/project.pbxproj @@ -7,12 +7,12 @@ objects = { /* Begin PBXBuildFile section */ - 008F07F31AC5B25A0029DE68 /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 008F07F21AC5B25A0029DE68 /* main.jsbundle */; }; 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */; }; 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */; }; 00C302E81ABCBA2D00DB3ED1 /* libRCTImage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302C01ABCB91800DB3ED1 /* libRCTImage.a */; }; 00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302DC1ABCB9D200DB3ED1 /* libRCTNetwork.a */; }; 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302E41ABCB9EE00DB3ED1 /* libRCTVibration.a */; }; + 00E356F31AD99517003FC87E /* SimpleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* SimpleTests.m */; }; 133E29F31AD74F7200F7D852 /* libRCTLinking.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C398B91ACF4ADC00677621 /* libRCTLinking.a */; }; 139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139105C11AF99BAD00B5F7CC /* libRCTSettings.a */; }; 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139FDEF41B06529B00C62182 /* libRCTWebSocket.a */; }; @@ -21,7 +21,8 @@ 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; - 34807FB71B838E5100EF7400 /* libRNGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34807FB41B838E4300EF7400 /* libRNGL.a */; }; + 34BDBFE91C00AB2100A531CF /* libRCTMaterialKit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 347A8B8B1C00771B00A29A61 /* libRCTMaterialKit.a */; }; + 34BDBFF51C00AB2400A531CF /* libRNGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 347A8B851C00770E00A29A61 /* libRNGL.a */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; /* End PBXBuildFile section */ @@ -89,19 +90,19 @@ remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; remoteInfo = React; }; - 34807FB31B838E4300EF7400 /* PBXContainerItemProxy */ = { + 347A8B841C00770E00A29A61 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 34807FA41B838E4300EF7400 /* RNGL.xcodeproj */; + containerPortal = 347A8B761C00770E00A29A61 /* RNGL.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 34B330031B821571003856F8; + remoteGlobalIDString = 4107012F1ACB723B00C6AA39; remoteInfo = RNGL; }; - 34807FB51B838E4300EF7400 /* PBXContainerItemProxy */ = { + 347A8B8A1C00771B00A29A61 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 34807FA41B838E4300EF7400 /* RNGL.xcodeproj */; + containerPortal = 347A8B861C00771B00A29A61 /* RCTMaterialKit.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 34B3300E1B821571003856F8; - remoteInfo = RNGLTests; + remoteGlobalIDString = 8A1B8E771B22E4E300DB45C2; + remoteInfo = RCTMaterialKit; }; 78C398B81ACF4ADC00677621 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; @@ -120,26 +121,29 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = main.jsbundle; path = iOS/main.jsbundle; sourceTree = ""; }; - 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTActionSheet.xcodeproj; path = "node_modules/react-native/Libraries/ActionSheetIOS/RCTActionSheet.xcodeproj"; sourceTree = ""; }; - 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTGeolocation.xcodeproj; path = "node_modules/react-native/Libraries/Geolocation/RCTGeolocation.xcodeproj"; sourceTree = ""; }; - 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTImage.xcodeproj; path = "node_modules/react-native/Libraries/Image/RCTImage.xcodeproj"; sourceTree = ""; }; - 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTNetwork.xcodeproj; path = "node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj"; sourceTree = ""; }; - 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTVibration.xcodeproj; path = "node_modules/react-native/Libraries/Vibration/RCTVibration.xcodeproj"; sourceTree = ""; }; + 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = ""; }; + 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTActionSheet.xcodeproj; path = "../node_modules/react-native/Libraries/ActionSheetIOS/RCTActionSheet.xcodeproj"; sourceTree = ""; }; + 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTGeolocation.xcodeproj; path = "../node_modules/react-native/Libraries/Geolocation/RCTGeolocation.xcodeproj"; sourceTree = ""; }; + 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTImage.xcodeproj; path = "../node_modules/react-native/Libraries/Image/RCTImage.xcodeproj"; sourceTree = ""; }; + 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTNetwork.xcodeproj; path = "../node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj"; sourceTree = ""; }; + 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTVibration.xcodeproj; path = "../node_modules/react-native/Libraries/Vibration/RCTVibration.xcodeproj"; sourceTree = ""; }; 00E356EE1AD99517003FC87E /* SimpleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SimpleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTSettings.xcodeproj; path = "node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj"; sourceTree = ""; }; - 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWebSocket.xcodeproj; path = "node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; }; + 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 00E356F21AD99517003FC87E /* SimpleTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SimpleTests.m; sourceTree = ""; }; + 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTSettings.xcodeproj; path = "../node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj"; sourceTree = ""; }; + 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWebSocket.xcodeproj; path = "../node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* Simple.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Simple.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = iOS/AppDelegate.h; sourceTree = ""; }; - 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = iOS/AppDelegate.m; sourceTree = ""; }; + 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = Simple/AppDelegate.h; sourceTree = ""; }; + 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = Simple/AppDelegate.m; sourceTree = ""; }; 13B07FB21A68108700A75B9A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; - 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = iOS/Images.xcassets; sourceTree = ""; }; - 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = iOS/Info.plist; sourceTree = ""; }; - 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = iOS/main.m; sourceTree = ""; }; - 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; - 34807FA41B838E4300EF7400 /* RNGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGL.xcodeproj; path = "node_modules/gl-react-native/RNGL.xcodeproj"; sourceTree = ""; }; - 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; - 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; + 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = Simple/Images.xcassets; sourceTree = ""; }; + 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Simple/Info.plist; sourceTree = ""; }; + 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = Simple/main.m; sourceTree = ""; }; + 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; + 347A8B761C00770E00A29A61 /* RNGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGL.xcodeproj; path = "../node_modules/gl-react-native/ios/RNGL.xcodeproj"; sourceTree = ""; }; + 347A8B861C00771B00A29A61 /* RCTMaterialKit.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTMaterialKit.xcodeproj; path = "../node_modules/react-native-material-kit/iOS/RCTMaterialKit.xcodeproj"; sourceTree = ""; }; + 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; + 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -154,7 +158,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 34807FB71B838E5100EF7400 /* libRNGL.a in Frameworks */, + 34BDBFF51C00AB2400A531CF /* libRNGL.a in Frameworks */, + 34BDBFE91C00AB2100A531CF /* libRCTMaterialKit.a in Frameworks */, 146834051AC3E58100842450 /* libReact.a in Frameworks */, 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */, 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */, @@ -211,6 +216,23 @@ name = Products; sourceTree = ""; }; + 00E356EF1AD99517003FC87E /* SimpleTests */ = { + isa = PBXGroup; + children = ( + 00E356F21AD99517003FC87E /* SimpleTests.m */, + 00E356F01AD99517003FC87E /* Supporting Files */, + ); + path = SimpleTests; + sourceTree = ""; + }; + 00E356F01AD99517003FC87E /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 00E356F11AD99517003FC87E /* Info.plist */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; 139105B71AF99BAD00B5F7CC /* Products */ = { isa = PBXGroup; children = ( @@ -249,11 +271,18 @@ name = Products; sourceTree = ""; }; - 34807FA51B838E4300EF7400 /* Products */ = { + 347A8B771C00770E00A29A61 /* Products */ = { isa = PBXGroup; children = ( - 34807FB41B838E4300EF7400 /* libRNGL.a */, - 34807FB61B838E4300EF7400 /* RNGLTests.xctest */, + 347A8B851C00770E00A29A61 /* libRNGL.a */, + ); + name = Products; + sourceTree = ""; + }; + 347A8B871C00771B00A29A61 /* Products */ = { + isa = PBXGroup; + children = ( + 347A8B8B1C00771B00A29A61 /* libRCTMaterialKit.a */, ); name = Products; sourceTree = ""; @@ -269,7 +298,8 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( - 34807FA41B838E4300EF7400 /* RNGL.xcodeproj */, + 347A8B861C00771B00A29A61 /* RCTMaterialKit.xcodeproj */, + 347A8B761C00770E00A29A61 /* RNGL.xcodeproj */, 146833FF1AC3E56700842450 /* React.xcodeproj */, 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */, 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */, @@ -297,6 +327,7 @@ children = ( 13B07FAE1A68108700A75B9A /* Simple */, 832341AE1AAA6A7D00B99B32 /* Libraries */, + 00E356EF1AD99517003FC87E /* SimpleTests */, 83CBBA001A601CBA00E9B192 /* Products */, ); indentWidth = 2; @@ -340,6 +371,7 @@ 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, + 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, ); buildRules = ( ); @@ -393,6 +425,10 @@ ProductGroup = 78C398B11ACF4ADC00677621 /* Products */; ProjectRef = 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */; }, + { + ProductGroup = 347A8B871C00771B00A29A61 /* Products */; + ProjectRef = 347A8B861C00771B00A29A61 /* RCTMaterialKit.xcodeproj */; + }, { ProductGroup = 00C302D41ABCB9D200DB3ED1 /* Products */; ProjectRef = 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */; @@ -418,8 +454,8 @@ ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; }, { - ProductGroup = 34807FA51B838E4300EF7400 /* Products */; - ProjectRef = 34807FA41B838E4300EF7400 /* RNGL.xcodeproj */; + ProductGroup = 347A8B771C00770E00A29A61 /* Products */; + ProjectRef = 347A8B761C00770E00A29A61 /* RNGL.xcodeproj */; }, ); projectRoot = ""; @@ -487,18 +523,18 @@ remoteRef = 146834031AC3E56700842450 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 34807FB41B838E4300EF7400 /* libRNGL.a */ = { + 347A8B851C00770E00A29A61 /* libRNGL.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; path = libRNGL.a; - remoteRef = 34807FB31B838E4300EF7400 /* PBXContainerItemProxy */; + remoteRef = 347A8B841C00770E00A29A61 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 34807FB61B838E4300EF7400 /* RNGLTests.xctest */ = { + 347A8B8B1C00771B00A29A61 /* libRCTMaterialKit.a */ = { isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = RNGLTests.xctest; - remoteRef = 34807FB51B838E4300EF7400 /* PBXContainerItemProxy */; + fileType = archive.ar; + path = libRCTMaterialKit.a; + remoteRef = 347A8B8A1C00771B00A29A61 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; 78C398B91ACF4ADC00677621 /* libRCTLinking.a */ = { @@ -529,7 +565,6 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 008F07F31AC5B25A0029DE68 /* main.jsbundle in Resources */, 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, ); @@ -537,11 +572,29 @@ }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Bundle React Native code and images"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "../node_modules/react-native/packager/react-native-xcode.sh"; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ 00E356EA1AD99517003FC87E /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 00E356F31AD99517003FC87E /* SimpleTests.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -571,7 +624,7 @@ 13B07FB21A68108700A75B9A /* Base */, ); name = LaunchScreen.xib; - path = iOS; + path = Simple; sourceTree = ""; }; /* End PBXVariantGroup section */ @@ -618,12 +671,13 @@ isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + DEAD_CODE_STRIPPING = NO; HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(SRCROOT)/node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/React/**", ); - INFOPLIST_FILE = iOS/Info.plist; + INFOPLIST_FILE = Simple/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-ObjC"; PRODUCT_NAME = Simple; @@ -637,9 +691,9 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(SRCROOT)/node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/React/**", ); - INFOPLIST_FILE = iOS/Info.plist; + INFOPLIST_FILE = Simple/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-ObjC"; PRODUCT_NAME = Simple; @@ -683,7 +737,7 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(SRCROOT)/node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/React/**", ); IPHONEOS_DEPLOYMENT_TARGET = 7.0; MTL_ENABLE_DEBUG_INFO = YES; @@ -723,7 +777,7 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, - "$(SRCROOT)/node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/React/**", ); IPHONEOS_DEPLOYMENT_TARGET = 7.0; MTL_ENABLE_DEBUG_INFO = NO; diff --git a/Examples/Simple/Simple.xcodeproj/xcshareddata/xcschemes/Simple.xcscheme b/Examples/Simple/ios/Simple.xcodeproj/xcshareddata/xcschemes/Simple.xcscheme similarity index 100% rename from Examples/Simple/Simple.xcodeproj/xcshareddata/xcschemes/Simple.xcscheme rename to Examples/Simple/ios/Simple.xcodeproj/xcshareddata/xcschemes/Simple.xcscheme diff --git a/Examples/Simple/iOS/AppDelegate.h b/Examples/Simple/ios/Simple/AppDelegate.h similarity index 100% rename from Examples/Simple/iOS/AppDelegate.h rename to Examples/Simple/ios/Simple/AppDelegate.h diff --git a/Examples/Simple/iOS/AppDelegate.m b/Examples/Simple/ios/Simple/AppDelegate.m similarity index 79% rename from Examples/Simple/iOS/AppDelegate.m rename to Examples/Simple/ios/Simple/AppDelegate.m index a0f8e2f8694cc2d779b57f1759eb8a3455a6cd23..87a358c508550378080a9b3bf37de5598b81352a 100644 --- a/Examples/Simple/iOS/AppDelegate.m +++ b/Examples/Simple/ios/Simple/AppDelegate.m @@ -31,23 +31,19 @@ * on the same Wi-Fi network. */ - //jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle"]; + jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=true"]; /** * OPTION 2 - * Load from pre-bundled file on disk. To re-generate the static bundle - * from the root of your project directory, run - * - * $ react-native bundle --minify - * - * see http://facebook.github.io/react-native/docs/runningondevice.html + * Load from pre-bundled file on disk. The static bundle is automatically + * generated by "Bundle React Native code and images" build step. */ - jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; +// jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"Simple" - initialProperties:@{} + initialProperties:nil launchOptions:launchOptions]; self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; diff --git a/Examples/Simple/iOS/Base.lproj/LaunchScreen.xib b/Examples/Simple/ios/Simple/Base.lproj/LaunchScreen.xib similarity index 100% rename from Examples/Simple/iOS/Base.lproj/LaunchScreen.xib rename to Examples/Simple/ios/Simple/Base.lproj/LaunchScreen.xib diff --git a/Examples/Simple/iOS/Images.xcassets/AppIcon.appiconset/Contents.json b/Examples/Simple/ios/Simple/Images.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from Examples/Simple/iOS/Images.xcassets/AppIcon.appiconset/Contents.json rename to Examples/Simple/ios/Simple/Images.xcassets/AppIcon.appiconset/Contents.json diff --git a/Examples/Simple/iOS/Info.plist b/Examples/Simple/ios/Simple/Info.plist similarity index 79% rename from Examples/Simple/iOS/Info.plist rename to Examples/Simple/ios/Simple/Info.plist index ceb55dcb24d6c3fe5e458066551cd660039ad013..cddf0766c98062f1dd64392a23039b111ccaaf59 100644 --- a/Examples/Simple/iOS/Info.plist +++ b/Examples/Simple/ios/Simple/Info.plist @@ -22,13 +22,6 @@ 1 LSRequiresIPhoneOS - NSAppTransportSecurity - - NSAllowsArbitraryLoads - - - NSLocationWhenInUseUsageDescription - UILaunchStoryboardName LaunchScreen UIRequiredDeviceCapabilities @@ -38,8 +31,18 @@ UISupportedInterfaceOrientations UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight UIViewControllerBasedStatusBarAppearance + NSLocationWhenInUseUsageDescription + + NSAppTransportSecurity + + + NSAllowsArbitraryLoads + + diff --git a/Examples/Simple/iOS/main.m b/Examples/Simple/ios/Simple/main.m similarity index 100% rename from Examples/Simple/iOS/main.m rename to Examples/Simple/ios/Simple/main.m diff --git a/RNGLTests/Info.plist b/Examples/Simple/ios/SimpleTests/Info.plist similarity index 89% rename from RNGLTests/Info.plist rename to Examples/Simple/ios/SimpleTests/Info.plist index 37184abefcc4cd9a42ca07cacfb5fc960cf88cee..886825ccc9bf0da2b9bfb8d8ebf0737db7ca1114 100644 --- a/RNGLTests/Info.plist +++ b/Examples/Simple/ios/SimpleTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - com.projectseptember.$(PRODUCT_NAME:rfc1034identifier) + org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/Examples/Simple/SimpleTests/SimpleTests.m b/Examples/Simple/ios/SimpleTests/SimpleTests.m similarity index 84% rename from Examples/Simple/SimpleTests/SimpleTests.m rename to Examples/Simple/ios/SimpleTests/SimpleTests.m index 4c8a242758bfbcf6b614eaf9894c9a14f57aed56..8b4746ff08abfdc1bf261f2fcb652d42cf197da0 100644 --- a/Examples/Simple/SimpleTests/SimpleTests.m +++ b/Examples/Simple/ios/SimpleTests/SimpleTests.m @@ -10,8 +10,7 @@ #import #import -#import "RCTAssert.h" -#import "RCTRedBox.h" +#import "RCTLog.h" #import "RCTRootView.h" #define TIMEOUT_SECONDS 240 @@ -23,7 +22,6 @@ @implementation SimpleTests - - (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test { if (test(view)) { @@ -37,18 +35,23 @@ return NO; } -- (void)testRendersWelcomeScreen { +- (void)testRendersWelcomeScreen +{ UIViewController *vc = [[[[UIApplication sharedApplication] delegate] window] rootViewController]; NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS]; BOOL foundElement = NO; - NSString *redboxError = nil; + + __block NSString *redboxError = nil; + RCTSetLogFunction(^(RCTLogLevel level, NSString *fileName, NSNumber *lineNumber, NSString *message) { + if (level >= RCTLogLevelError) { + redboxError = message; + } + }); while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; - redboxError = [[RCTRedBox sharedInstance] currentErrorMessage]; - foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) { if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { return YES; @@ -57,6 +60,8 @@ }]; } + RCTSetLogFunction(RCTDefaultLogFunction); + XCTAssertNil(redboxError, @"RedBox error: %@", redboxError); XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS); } diff --git a/Examples/Simple/package.json b/Examples/Simple/package.json index b0b134384585caae92176daf3bad246269ac0274..a629209de89e971c1a7c2de358ab94422c3c2865 100644 --- a/Examples/Simple/package.json +++ b/Examples/Simple/package.json @@ -3,10 +3,11 @@ "version": "0.0.1", "private": true, "scripts": { - "start": "node_modules/react-native/packager/packager.sh" + "start": "react-native start" }, "dependencies": { "gl-react-native": "file:../..", - "react-native": "^0.13.0-rc" + "react-native": "^0.14.2", + "react-native-material-kit": "^0.2.2" } } diff --git a/Examples/Simple/AnimatedHelloGL.js b/Examples/Simple/src/AnimatedHelloGL.js similarity index 83% rename from Examples/Simple/AnimatedHelloGL.js rename to Examples/Simple/src/AnimatedHelloGL.js index a2f368990d8aae84a376e0ed99e455253d94c3a6..58fbe7824b6bddbd2bf611659c58c73851e7137a 100644 --- a/Examples/Simple/AnimatedHelloGL.js +++ b/Examples/Simple/src/AnimatedHelloGL.js @@ -25,12 +25,15 @@ class HelloGL extends React.Component { } componentDidMount () { const loop = time => { - requestAnimationFrame(loop); + this.raf = requestAnimationFrame(loop); this.setState({ value: (1 + Math.cos(time / 1000)) / 2 // cycle between 0 and 1 }); }; - requestAnimationFrame(loop); + this.raf = requestAnimationFrame(loop); + } + componentWillUnmount () { + cancelAnimationFrame(this.raf); } render () { const { width, height } = this.props; diff --git a/Examples/Simple/Blur.js b/Examples/Simple/src/Blur.js similarity index 100% rename from Examples/Simple/Blur.js rename to Examples/Simple/src/Blur.js diff --git a/Examples/Simple/Blur1D.js b/Examples/Simple/src/Blur1D.js similarity index 100% rename from Examples/Simple/Blur1D.js rename to Examples/Simple/src/Blur1D.js diff --git a/Examples/Simple/Button.js b/Examples/Simple/src/Button.js similarity index 100% rename from Examples/Simple/Button.js rename to Examples/Simple/src/Button.js diff --git a/Examples/Simple/HelloGL.js b/Examples/Simple/src/HelloGL.js similarity index 100% rename from Examples/Simple/HelloGL.js rename to Examples/Simple/src/HelloGL.js diff --git a/Examples/Simple/HueRotate.js b/Examples/Simple/src/HueRotate.js similarity index 100% rename from Examples/Simple/HueRotate.js rename to Examples/Simple/src/HueRotate.js diff --git a/Examples/Simple/OneFingerResponse.js b/Examples/Simple/src/OneFingerResponse.js similarity index 100% rename from Examples/Simple/OneFingerResponse.js rename to Examples/Simple/src/OneFingerResponse.js diff --git a/Examples/Simple/PieProgress.js b/Examples/Simple/src/PieProgress.js similarity index 91% rename from Examples/Simple/PieProgress.js rename to Examples/Simple/src/PieProgress.js index 53637afc662fcce62be68cb0798e5c4fe3e3e607..5435c5cc14e2e93f94a4f4e7b9c9601fc67a3306 100644 --- a/Examples/Simple/PieProgress.js +++ b/Examples/Simple/src/PieProgress.js @@ -21,7 +21,7 @@ void main () { vec2 delta = p - center; float inside = step(length(delta), radius) * - step((PI + atan(delta.y, -delta.x)) / (2.0 * PI), progress); + step((PI + atan(delta.y, - 1.0 * delta.x)) / (2.0 * PI), progress); gl_FragColor = mix( colorOutside, colorInside, @@ -58,7 +58,7 @@ module.exports = GL.createComponent( displayName: "PieProgress", defaultProps: { colorInside: [0, 0, 0, 0], - colorOutside: [0, 0, 0, 0.5], + colorOutside: [0, 0, 0, 0.8], radius: 0.4 } }); diff --git a/Examples/Simple/Saturation.js b/Examples/Simple/src/Saturation.js similarity index 100% rename from Examples/Simple/Saturation.js rename to Examples/Simple/src/Saturation.js diff --git a/Examples/Simple/src/iPKTONG.jpg b/Examples/Simple/src/iPKTONG.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6462178105dfdd23cda510842a9e0275e0d1e3a2 Binary files /dev/null and b/Examples/Simple/src/iPKTONG.jpg differ diff --git a/Examples/Simple/src/index.js b/Examples/Simple/src/index.js new file mode 100644 index 0000000000000000000000000000000000000000..466a2bf67f13dbcb77c16f7547ffeaf6ad1ab2cb --- /dev/null +++ b/Examples/Simple/src/index.js @@ -0,0 +1,305 @@ +const React = require("react-native"); +const { + StyleSheet, + Text, + View, + Image, + TextInput, + Component, +} = React; + +const { + mdl: { + Progress, + Slider, + Switch + }, + MKButton, +} = require("react-native-material-kit"); + +const HelloGL = require("./HelloGL"); +const Saturation = require("./Saturation"); +const HueRotate = require("./HueRotate"); +const PieProgress = require("./PieProgress"); +const OneFingerResponse = require("./OneFingerResponse"); +const AnimatedHelloGL = require("./AnimatedHelloGL"); +const Blur = require("./Blur"); +const Button = require("./Button"); + +class Demo extends Component { + render () { + const { title, children } = this.props; + return + {title} + + {children} + + ; + } +} + +class Demos extends Component { + render () { + const { children, onChange, value } = this.props; + return + + {React.Children.map(children, (demo, i) => + onChange(i)}> + + {""+(i+1)} + + )} + + + {children[value]} + + ; + } +} + +class Simple extends Component { + constructor (props) { + super(props); + this.state = { + current: 0, + saturationFactor: 1, + hue: 0, + progress: 0, + factor: 0, + text: "and I will return leading the pack", + switch1: false, + switch2: false, + switch3: false, + captured: null + }; + this.onCapture1 = this.onCapture1.bind(this); + } + + onCapture1 () { + this.refs.helloGL.captureFrame(data64 => { + this.setState({ captured: data64 }); + }); + } + + render () { + const { + current, + saturationFactor, + hue, + text, + progress, + factor, + switch1, + switch2, + switch3, + captured + } = this.state; + + return + + Welcome to GL React Native! + + + this.setState({ current })} value={current}> + + + + + {captured && } + + + + + + this.setState({ saturationFactor })} + /> + + + + + + Throw me to the wolves + {text} + + this.setState({ hue })} + /> + this.setState({ text })} + value={text} + /> + + + + + + + + + + this.setState({ progress })} + /> + + + + + + + + + + + + + http://i.imgur.com/3On9QEu.jpg + + this.setState({ factor })} /> + + + + + + + + this.setState({ factor })} + /> + + this.setState({ switch1 })} /> + this.setState({ switch2 })} /> + this.setState({ switch3 })} /> + + + + + + + + + + + Not Supported Yet + + + + ; + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: "#F9F9F9", + }, + title: { + fontSize: 20, + textAlign: "center", + margin: 5, + marginBottom: 20, + fontWeight: "bold" + }, + nav: { + flexDirection: "row", + marginBottom: 20 + }, + demos: { + flex: 1, + justifyContent: "center", + marginLeft: 40, + width: 276, + marginBottom: 40, + }, + demoTitle: { + marginBottom: 16, + fontStyle: "italic", + alignSelf: "flex-start", + color: "#999", + fontWeight: "300", + fontSize: 20, + }, + demo: { + marginBottom: 64, + marginLeft: 20, + }, + demoText1: { + position: "absolute", + top: 0, + left: 0, + width: 256, + textAlign: "center", + color: "#f16", + backgroundColor: "transparent", + fontWeight: "400", + fontSize: 24, + letterSpacing: 0 + }, + demoText2: { + position: "absolute", + bottom: 4, + left: 0, + width: 256, + textAlign: "center", + color: "#7bf", + backgroundColor: "transparent", + fontWeight: "300", + fontSize: 32, + letterSpacing: -1 + }, +}); + +module.exports = Simple; diff --git a/Examples/Tests/.flowconfig b/Examples/Tests/.flowconfig index 438e495d48dcafad14e33471e3598bc22ca4553e..caff84900c9e2a5712134c4198dc00b8362ee387 100644 --- a/Examples/Tests/.flowconfig +++ b/Examples/Tests/.flowconfig @@ -14,7 +14,6 @@ .*/node_modules/react-tools/src/renderers/shared/event/eventPlugins/ResponderEventPlugin.js .*/node_modules/react-tools/src/shared/vendor/core/ExecutionEnvironment.js - # Ignore commoner tests .*/node_modules/commoner/test/.* @@ -22,7 +21,10 @@ .*/react-tools/node_modules/commoner/lib/reader.js # Ignore jest -.*/react-native/node_modules/jest-cli/.* +.*/node_modules/jest-cli/.* + +# Ignore Website +.*/website/.* [include] @@ -34,13 +36,16 @@ module.system=haste munge_underscores=true +module.name_mapper='^image![a-zA-Z0-9$_-]+$' -> 'GlobalImageStub' +module.name_mapper='^[./a-zA-Z0-9$_-]+\.png$' -> 'RelativeImageStub' + suppress_type=$FlowIssue suppress_type=$FlowFixMe suppress_type=$FixMe -suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(1[0-4]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) -suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(1[0-4]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)? #[0-9]+ +suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(1[0-8]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) +suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(1[0-8]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)? #[0-9]+ suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy [version] -0.14.0 +0.18.1 diff --git a/Examples/Tests/.gitignore b/Examples/Tests/.gitignore index b927355df441e39ce66c8525523dbe592d1f2d97..94fc86711d185ae84ff11abd41b1bbf716c26d2b 100644 --- a/Examples/Tests/.gitignore +++ b/Examples/Tests/.gitignore @@ -22,6 +22,12 @@ DerivedData *.xcuserstate project.xcworkspace +# Android/IJ +# +.idea +.gradle +local.properties + # node.js # node_modules/ diff --git a/Examples/Tests/.watchmanconfig b/Examples/Tests/.watchmanconfig new file mode 100644 index 0000000000000000000000000000000000000000..9e26dfeeb6e641a33dae4961196235bdb965b21b --- /dev/null +++ b/Examples/Tests/.watchmanconfig @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/Examples/Tests/android/Tests.iml b/Examples/Tests/android/Tests.iml new file mode 100644 index 0000000000000000000000000000000000000000..fc72d81af57cfea1db4acf3d40596287124c28e7 --- /dev/null +++ b/Examples/Tests/android/Tests.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/Tests/android/app/app.iml b/Examples/Tests/android/app/app.iml new file mode 100644 index 0000000000000000000000000000000000000000..16df1d24368a1c92a58f7c58c48529270947c6fd --- /dev/null +++ b/Examples/Tests/android/app/app.iml @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + generateDebugAndroidTestSources + generateDebugSources + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/Tests/android/app/build.gradle b/Examples/Tests/android/app/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..24351ea8f14fb93fdc5d859b258a8eb5c70fe4ba --- /dev/null +++ b/Examples/Tests/android/app/build.gradle @@ -0,0 +1,79 @@ +apply plugin: "com.android.application" + +/** + * The react.gradle file registers two tasks: bundleDebugJsAndAssets and bundleReleaseJsAndAssets. + * These basically call `react-native bundle` with the correct arguments during the Android build + * cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the + * bundle directly from the development server. Below you can see all the possible configurations + * and their defaults. If you decide to add a configuration block, make sure to add it before the + * `apply from: "react.gradle"` line. + * + * project.ext.react = [ + * // the name of the generated asset file containing your JS bundle + * bundleAssetName: "index.android.bundle", + * + * // the entry file for bundle generation + * entryFile: "index.android.js", + * + * // whether to bundle JS and assets in debug mode + * bundleInDebug: false, + * + * // whether to bundle JS and assets in release mode + * bundleInRelease: true, + * + * // the root of your project, i.e. where "package.json" lives + * root: "../../", + * + * // where to put the JS bundle asset in debug mode + * jsBundleDirDebug: "$buildDir/intermediates/assets/debug", + * + * // where to put the JS bundle asset in release mode + * jsBundleDirRelease: "$buildDir/intermediates/assets/release", + * + * // where to put drawable resources / React Native assets, e.g. the ones you use via + * // require('./image.png')), in debug mode + * resourcesDirDebug: "$buildDir/intermediates/res/merged/debug", + * + * // where to put drawable resources / React Native assets, e.g. the ones you use via + * // require('./image.png')), in release mode + * resourcesDirRelease: "$buildDir/intermediates/res/merged/release", + * + * // by default the gradle tasks are skipped if none of the JS files or assets change; this means + * // that we don't look at files in android/ or ios/ to determine whether the tasks are up to + * // date; if you have any other folders that you want to ignore for performance reasons (gradle + * // indexes the entire tree), add them here. Alternatively, if you have JS files in android/ + * // for example, you might want to remove it from here. + * inputExcludes: ["android/**", "ios/**"] + * ] + */ + +apply from: "react.gradle" + +android { + compileSdkVersion 23 + buildToolsVersion "23.0.1" + + defaultConfig { + applicationId "com.tests" + minSdkVersion 16 + targetSdkVersion 22 + versionCode 1 + versionName "1.0" + ndk { + abiFilters "armeabi-v7a", "x86" + } + } + buildTypes { + release { + minifyEnabled false // Set this to true to enable Proguard + proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" + } + } +} + +dependencies { + compile fileTree(dir: "libs", include: ["*.jar"]) + compile "com.android.support:appcompat-v7:23.0.1" + compile "com.facebook.react:react-native:0.15.+" + compile project(':rngl') +} diff --git a/Examples/Tests/android/app/proguard-rules.pro b/Examples/Tests/android/app/proguard-rules.pro new file mode 100644 index 0000000000000000000000000000000000000000..ffa8c9f64b6251f632abdaf3c3ba26fca12e4f6f --- /dev/null +++ b/Examples/Tests/android/app/proguard-rules.pro @@ -0,0 +1,60 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Disabling obfuscation is useful if you collect stack traces from production crashes +# (unless you are using a system that supports de-obfuscate the stack traces). +-dontobfuscate + +# React Native + +# Keep our interfaces so they can be used by other ProGuard rules. +# See http://sourceforge.net/p/proguard/bugs/466/ +-keep,allowobfuscation @interface com.facebook.proguard.annotations.DoNotStrip +-keep,allowobfuscation @interface com.facebook.proguard.annotations.KeepGettersAndSetters + +# Do not strip any method/class that is annotated with @DoNotStrip +-keep @com.facebook.proguard.annotations.DoNotStrip class * +-keepclassmembers class * { + @com.facebook.proguard.annotations.DoNotStrip *; +} + +-keepclassmembers @com.facebook.proguard.annotations.KeepGettersAndSetters class * { + void set*(***); + *** get*(); +} + +-keep class * extends com.facebook.react.bridge.JavaScriptModule { *; } +-keep class * extends com.facebook.react.bridge.NativeModule { *; } +-keepclassmembers class * { @com.facebook.react.uimanager.UIProp ; } +-keepclassmembers class * { @com.facebook.react.uimanager.ReactProp ; } +-keepclassmembers class * { @com.facebook.react.uimanager.ReactPropGroup ; } + +# okhttp + +-keepattributes Signature +-keepattributes *Annotation* +-keep class com.squareup.okhttp.** { *; } +-keep interface com.squareup.okhttp.** { *; } +-dontwarn com.squareup.okhttp.** + +# okio + +-keep class sun.misc.Unsafe { *; } +-dontwarn java.nio.file.* +-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement +-dontwarn okio.** diff --git a/Examples/Tests/android/app/react.gradle b/Examples/Tests/android/app/react.gradle new file mode 100644 index 0000000000000000000000000000000000000000..dc18bb9a06257d2d7e612b1bcbd83474e92b99a5 --- /dev/null +++ b/Examples/Tests/android/app/react.gradle @@ -0,0 +1,75 @@ +def config = project.hasProperty("react") ? project.react : []; + +def bundleAssetName = config.bundleAssetName ?: "index.android.bundle" +def entryFile = config.entryFile ?: "index.android.js" + +// because elvis operator +def elvisFile(thing) { + return thing ? file(thing) : null; +} + +def reactRoot = elvisFile(config.root) ?: file("../../") +def jsBundleDirDebug = elvisFile(config.jsBundleDirDebug) ?: + file("$buildDir/intermediates/assets/debug") +def jsBundleDirRelease = elvisFile(config.jsBundleDirRelease) ?: + file("$buildDir/intermediates/assets/release") +def resourcesDirDebug = elvisFile(config.resourcesDirDebug) ?: + file("$buildDir/intermediates/res/merged/debug") +def resourcesDirRelease = elvisFile(config.resourcesDirRelease) ?: + file("$buildDir/intermediates/res/merged/release") +def inputExcludes = config.inputExcludes ?: ["android/**", "ios/**"] + +def jsBundleFileDebug = file("$jsBundleDirDebug/$bundleAssetName") +def jsBundleFileRelease = file("$jsBundleDirRelease/$bundleAssetName") + +task bundleDebugJsAndAssets(type: Exec) { + // create dirs if they are not there (e.g. the "clean" task just ran) + doFirst { + jsBundleDirDebug.mkdirs() + resourcesDirDebug.mkdirs() + } + + // set up inputs and outputs so gradle can cache the result + inputs.files fileTree(dir: reactRoot, excludes: inputExcludes) + outputs.dir jsBundleDirDebug + outputs.dir resourcesDirDebug + + // set up the call to the react-native cli + workingDir reactRoot + commandLine "react-native", "bundle", "--platform", "android", "--dev", "true", "--entry-file", + entryFile, "--bundle-output", jsBundleFileDebug, "--assets-dest", resourcesDirDebug + + enabled config.bundleInDebug ?: false +} + +task bundleReleaseJsAndAssets(type: Exec) { + // create dirs if they are not there (e.g. the "clean" task just ran) + doFirst { + jsBundleDirRelease.mkdirs() + resourcesDirRelease.mkdirs() + } + + // set up inputs and outputs so gradle can cache the result + inputs.files fileTree(dir: reactRoot, excludes: inputExcludes) + outputs.dir jsBundleDirRelease + outputs.dir resourcesDirRelease + + // set up the call to the react-native cli + workingDir reactRoot + commandLine "react-native", "bundle", "--platform", "android", "--dev", "false", "--entry-file", + entryFile, "--bundle-output", jsBundleFileRelease, "--assets-dest", resourcesDirRelease + + enabled config.bundleInRelease ?: true +} + +gradle.projectsEvaluated { + // hook bundleDebugJsAndAssets into the android build process + bundleDebugJsAndAssets.dependsOn mergeDebugResources + bundleDebugJsAndAssets.dependsOn mergeDebugAssets + processDebugResources.dependsOn bundleDebugJsAndAssets + + // hook bundleReleaseJsAndAssets into the android build process + bundleReleaseJsAndAssets.dependsOn mergeReleaseResources + bundleReleaseJsAndAssets.dependsOn mergeReleaseAssets + processReleaseResources.dependsOn bundleReleaseJsAndAssets +} diff --git a/Examples/Tests/android/app/src/main/AndroidManifest.xml b/Examples/Tests/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000000000000000000000000000000000000..0fdad6dc41d458dbbb132f5b62a1747ade3557be --- /dev/null +++ b/Examples/Tests/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + diff --git a/Examples/Tests/android/app/src/main/java/com/tests/MainActivity.java b/Examples/Tests/android/app/src/main/java/com/tests/MainActivity.java new file mode 100644 index 0000000000000000000000000000000000000000..c943db501dbe571a1ce38fc944029ef54a216e50 --- /dev/null +++ b/Examples/Tests/android/app/src/main/java/com/tests/MainActivity.java @@ -0,0 +1,80 @@ +package com.tests; + +import android.app.Activity; +import android.os.Bundle; +import android.view.KeyEvent; + +import com.facebook.react.LifecycleState; +import com.facebook.react.ReactInstanceManager; +import com.facebook.react.ReactRootView; +import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler; +import com.facebook.react.shell.MainReactPackage; +import com.facebook.soloader.SoLoader; +import com.projectseptember.RNGL.RNGLPackage; + +public class MainActivity extends Activity implements DefaultHardwareBackBtnHandler { + + private ReactInstanceManager mReactInstanceManager; + private ReactRootView mReactRootView; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + mReactRootView = new ReactRootView(this); + + mReactInstanceManager = ReactInstanceManager.builder() + .setApplication(getApplication()) + .setBundleAssetName("index.android.bundle") + .setJSMainModuleName("index.android") + .addPackage(new RNGLPackage()) + .addPackage(new MainReactPackage()) + .setUseDeveloperSupport(BuildConfig.DEBUG) + .setInitialLifecycleState(LifecycleState.RESUMED) + .build(); + + mReactRootView.startReactApplication(mReactInstanceManager, "Tests", null); + + setContentView(mReactRootView); + } + + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) { + if (keyCode == KeyEvent.KEYCODE_MENU && mReactInstanceManager != null) { + mReactInstanceManager.showDevOptionsDialog(); + return true; + } + return super.onKeyUp(keyCode, event); + } + + @Override + public void onBackPressed() { + if (mReactInstanceManager != null) { + mReactInstanceManager.onBackPressed(); + } else { + super.onBackPressed(); + } + } + + @Override + public void invokeDefaultOnBackPressed() { + super.onBackPressed(); + } + + @Override + protected void onPause() { + super.onPause(); + + if (mReactInstanceManager != null) { + mReactInstanceManager.onPause(); + } + } + + @Override + protected void onResume() { + super.onResume(); + + if (mReactInstanceManager != null) { + mReactInstanceManager.onResume(this, this); + } + } +} diff --git a/Examples/Tests/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/Examples/Tests/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..cde69bcccec65160d92116f20ffce4fce0b5245c Binary files /dev/null and b/Examples/Tests/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/Examples/Tests/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/Examples/Tests/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c133a0cbd379f5af6dbf1a899a0293ca5eccfad0 Binary files /dev/null and b/Examples/Tests/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/Examples/Tests/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/Examples/Tests/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..bfa42f0e7b91d006d22352c9ff2f134e504e3c1d Binary files /dev/null and b/Examples/Tests/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/Examples/Tests/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/Examples/Tests/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..324e72cdd7480cb983fa1bcc7ce686e51ef87fe7 Binary files /dev/null and b/Examples/Tests/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/Examples/Tests/android/app/src/main/res/values/strings.xml b/Examples/Tests/android/app/src/main/res/values/strings.xml new file mode 100644 index 0000000000000000000000000000000000000000..8cbe0a7585598bdb3371e5e24f05c7ab5918c274 --- /dev/null +++ b/Examples/Tests/android/app/src/main/res/values/strings.xml @@ -0,0 +1,3 @@ + + Tests + diff --git a/Examples/Tests/android/app/src/main/res/values/styles.xml b/Examples/Tests/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000000000000000000000000000000000000..319eb0ca100b5aae62b669a5f375ec234aabe351 --- /dev/null +++ b/Examples/Tests/android/app/src/main/res/values/styles.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/Examples/Tests/android/build.gradle b/Examples/Tests/android/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..ccdfc4e3dca8070b281d68056da956343d52a4ea --- /dev/null +++ b/Examples/Tests/android/build.gradle @@ -0,0 +1,20 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + repositories { + jcenter() + } + dependencies { + classpath 'com.android.tools.build:gradle:1.3.1' + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + mavenLocal() + jcenter() + } +} diff --git a/Examples/Tests/android/gradle.properties b/Examples/Tests/android/gradle.properties new file mode 100644 index 0000000000000000000000000000000000000000..1fd964e90b1c5ec50e26364318e2c872a9dd6154 --- /dev/null +++ b/Examples/Tests/android/gradle.properties @@ -0,0 +1,20 @@ +# Project-wide Gradle settings. + +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. + +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html + +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +# Default value: -Xmx10248m -XX:MaxPermSize=256m +# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 + +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true + +android.useDeprecatedNdk=true diff --git a/Examples/Tests/android/gradle/wrapper/gradle-wrapper.jar b/Examples/Tests/android/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..b5166dad4d90021f6a0b45268c0755719f1d5cd4 Binary files /dev/null and b/Examples/Tests/android/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Examples/Tests/android/gradle/wrapper/gradle-wrapper.properties b/Examples/Tests/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000000000000000000000000000000000000..b9fbfaba0ead2162e30db62f51e95df8a670d4a6 --- /dev/null +++ b/Examples/Tests/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip diff --git a/Examples/Tests/android/gradlew b/Examples/Tests/android/gradlew new file mode 100755 index 0000000000000000000000000000000000000000..91a7e269e19dfc62e27137a0b57ef3e430cee4fd --- /dev/null +++ b/Examples/Tests/android/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/Examples/Tests/android/gradlew.bat b/Examples/Tests/android/gradlew.bat new file mode 100644 index 0000000000000000000000000000000000000000..aec99730b4e8fcd90b57a0e8e01544fea7c31a89 --- /dev/null +++ b/Examples/Tests/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Examples/Tests/android/settings.gradle b/Examples/Tests/android/settings.gradle new file mode 100644 index 0000000000000000000000000000000000000000..a328c0bc38936fe6d6cbed32e9b72eb639a28cdb --- /dev/null +++ b/Examples/Tests/android/settings.gradle @@ -0,0 +1,6 @@ +rootProject.name = 'Tests' + +include ':app' + +include ':rngl', ':app' +project(':rngl').projectDir = new File(rootProject.projectDir, '../../../android') \ No newline at end of file diff --git a/Examples/Tests/iOS/Tests.xcodeproj/project.pbxproj b/Examples/Tests/iOS/Tests.xcodeproj/project.pbxproj index e8297826d6d11c42a6d66776054b0fca2d436856..59814821bbe0a0ca1a3b4496ba60f3bf357524ce 100644 --- a/Examples/Tests/iOS/Tests.xcodeproj/project.pbxproj +++ b/Examples/Tests/iOS/Tests.xcodeproj/project.pbxproj @@ -12,6 +12,7 @@ 00C302E81ABCBA2D00DB3ED1 /* libRCTImage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302C01ABCB91800DB3ED1 /* libRCTImage.a */; }; 00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302DC1ABCB9D200DB3ED1 /* libRCTNetwork.a */; }; 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302E41ABCB9EE00DB3ED1 /* libRCTVibration.a */; }; + 00E356F31AD99517003FC87E /* TestsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* TestsTests.m */; }; 133E29F31AD74F7200F7D852 /* libRCTLinking.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C398B91ACF4ADC00677621 /* libRCTLinking.a */; }; 139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139105C11AF99BAD00B5F7CC /* libRCTSettings.a */; }; 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139FDEF41B06529B00C62182 /* libRCTWebSocket.a */; }; @@ -20,8 +21,7 @@ 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; - 34A75CDB1BAB052F00942375 /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 34A75CDA1BAB052F00942375 /* main.jsbundle */; settings = {ASSET_TAGS = (); }; }; - 34A81B591B9F50DB002650C2 /* libRNGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34A81B561B9F50D6002650C2 /* libRNGL.a */; }; + 349265F01C066AAD00992528 /* libRNGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 349265EF1C066AA400992528 /* libRNGL.a */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; /* End PBXBuildFile section */ @@ -61,6 +61,13 @@ remoteGlobalIDString = 832C81801AAF6DEF007FA2F7; remoteInfo = RCTVibration; }; + 00E356F41AD99517003FC87E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 13B07F861A680F5B00A75B9A; + remoteInfo = Tests; + }; 139105C01AF99BAD00B5F7CC /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */; @@ -82,20 +89,13 @@ remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; remoteInfo = React; }; - 34A81B551B9F50D6002650C2 /* PBXContainerItemProxy */ = { + 349265EE1C066AA400992528 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 34A81B461B9F50D5002650C2 /* RNGL.xcodeproj */; + containerPortal = 349265E01C066AA400992528 /* RNGL.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 34B330031B821571003856F8; + remoteGlobalIDString = 4107012F1ACB723B00C6AA39; remoteInfo = RNGL; }; - 34A81B571B9F50D6002650C2 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 34A81B461B9F50D5002650C2 /* RNGL.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 34B3300E1B821571003856F8; - remoteInfo = RNGLTests; - }; 78C398B81ACF4ADC00677621 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */; @@ -113,33 +113,43 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = ""; }; 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTActionSheet.xcodeproj; path = "../node_modules/react-native/Libraries/ActionSheetIOS/RCTActionSheet.xcodeproj"; sourceTree = ""; }; 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTGeolocation.xcodeproj; path = "../node_modules/react-native/Libraries/Geolocation/RCTGeolocation.xcodeproj"; sourceTree = ""; }; 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTImage.xcodeproj; path = "../node_modules/react-native/Libraries/Image/RCTImage.xcodeproj"; sourceTree = ""; }; 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTNetwork.xcodeproj; path = "../node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj"; sourceTree = ""; }; 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTVibration.xcodeproj; path = "../node_modules/react-native/Libraries/Vibration/RCTVibration.xcodeproj"; sourceTree = ""; }; + 00E356EE1AD99517003FC87E /* TestsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TestsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 00E356F21AD99517003FC87E /* TestsTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = TestsTests.m; sourceTree = ""; }; 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTSettings.xcodeproj; path = "../node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj"; sourceTree = ""; }; 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWebSocket.xcodeproj; path = "../node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* Tests.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Tests.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = Tests/AppDelegate.h; sourceTree = ""; }; + 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = Tests/AppDelegate.m; sourceTree = ""; }; 13B07FB21A68108700A75B9A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; - 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = Tests/Images.xcassets; sourceTree = ""; }; + 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Tests/Info.plist; sourceTree = ""; }; + 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = Tests/main.m; sourceTree = ""; }; 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; - 34A75CDA1BAB052F00942375 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = SOURCE_ROOT; }; - 34A81B461B9F50D5002650C2 /* RNGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGL.xcodeproj; path = "../node_modules/gl-react-native/RNGL.xcodeproj"; sourceTree = ""; }; + 349265E01C066AA400992528 /* RNGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGL.xcodeproj; path = "../node_modules/gl-react-native/ios/RNGL.xcodeproj"; sourceTree = ""; }; 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 00E356EB1AD99517003FC87E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 13B07F8C1A680F5B00A75B9A /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 34A81B591B9F50DB002650C2 /* libRNGL.a in Frameworks */, + 349265F01C066AAD00992528 /* libRNGL.a in Frameworks */, 146834051AC3E58100842450 /* libReact.a in Frameworks */, 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */, 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */, @@ -196,6 +206,23 @@ name = Products; sourceTree = ""; }; + 00E356EF1AD99517003FC87E /* TestsTests */ = { + isa = PBXGroup; + children = ( + 00E356F21AD99517003FC87E /* TestsTests.m */, + 00E356F01AD99517003FC87E /* Supporting Files */, + ); + path = TestsTests; + sourceTree = ""; + }; + 00E356F01AD99517003FC87E /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 00E356F11AD99517003FC87E /* Info.plist */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; 139105B71AF99BAD00B5F7CC /* Products */ = { isa = PBXGroup; children = ( @@ -215,15 +242,15 @@ 13B07FAE1A68108700A75B9A /* Tests */ = { isa = PBXGroup; children = ( + 008F07F21AC5B25A0029DE68 /* main.jsbundle */, 13B07FAF1A68108700A75B9A /* AppDelegate.h */, 13B07FB01A68108700A75B9A /* AppDelegate.m */, 13B07FB51A68108700A75B9A /* Images.xcassets */, 13B07FB61A68108700A75B9A /* Info.plist */, 13B07FB11A68108700A75B9A /* LaunchScreen.xib */, - 34A75CDA1BAB052F00942375 /* main.jsbundle */, 13B07FB71A68108700A75B9A /* main.m */, ); - path = Tests; + name = Tests; sourceTree = ""; }; 146834001AC3E56700842450 /* Products */ = { @@ -234,11 +261,10 @@ name = Products; sourceTree = ""; }; - 34A81B471B9F50D5002650C2 /* Products */ = { + 349265E11C066AA400992528 /* Products */ = { isa = PBXGroup; children = ( - 34A81B561B9F50D6002650C2 /* libRNGL.a */, - 34A81B581B9F50D6002650C2 /* RNGLTests.xctest */, + 349265EF1C066AA400992528 /* libRNGL.a */, ); name = Products; sourceTree = ""; @@ -254,7 +280,6 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( - 34A81B461B9F50D5002650C2 /* RNGL.xcodeproj */, 146833FF1AC3E56700842450 /* React.xcodeproj */, 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */, 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */, @@ -265,6 +290,7 @@ 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */, 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */, 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */, + 349265E01C066AA400992528 /* RNGL.xcodeproj */, ); name = Libraries; sourceTree = ""; @@ -282,6 +308,7 @@ children = ( 13B07FAE1A68108700A75B9A /* Tests */, 832341AE1AAA6A7D00B99B32 /* Libraries */, + 00E356EF1AD99517003FC87E /* TestsTests */, 83CBBA001A601CBA00E9B192 /* Products */, ); indentWidth = 2; @@ -292,6 +319,7 @@ isa = PBXGroup; children = ( 13B07F961A680F5B00A75B9A /* Tests.app */, + 00E356EE1AD99517003FC87E /* TestsTests.xctest */, ); name = Products; sourceTree = ""; @@ -299,6 +327,24 @@ /* End PBXGroup section */ /* Begin PBXNativeTarget section */ + 00E356ED1AD99517003FC87E /* TestsTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "TestsTests" */; + buildPhases = ( + 00E356EA1AD99517003FC87E /* Sources */, + 00E356EB1AD99517003FC87E /* Frameworks */, + 00E356EC1AD99517003FC87E /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 00E356F51AD99517003FC87E /* PBXTargetDependency */, + ); + name = TestsTests; + productName = TestsTests; + productReference = 00E356EE1AD99517003FC87E /* TestsTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; 13B07F861A680F5B00A75B9A /* Tests */ = { isa = PBXNativeTarget; buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "Tests" */; @@ -306,6 +352,7 @@ 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, + 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, ); buildRules = ( ); @@ -324,6 +371,12 @@ attributes = { LastUpgradeCheck = 0610; ORGANIZATIONNAME = Facebook; + TargetAttributes = { + 00E356ED1AD99517003FC87E = { + CreatedOnToolsVersion = 6.2; + TestTargetID = 13B07F861A680F5B00A75B9A; + }; + }; }; buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "Tests" */; compatibilityVersion = "Xcode 3.2"; @@ -378,13 +431,14 @@ ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; }, { - ProductGroup = 34A81B471B9F50D5002650C2 /* Products */; - ProjectRef = 34A81B461B9F50D5002650C2 /* RNGL.xcodeproj */; + ProductGroup = 349265E11C066AA400992528 /* Products */; + ProjectRef = 349265E01C066AA400992528 /* RNGL.xcodeproj */; }, ); projectRoot = ""; targets = ( 13B07F861A680F5B00A75B9A /* Tests */, + 00E356ED1AD99517003FC87E /* TestsTests */, ); }; /* End PBXProject section */ @@ -446,18 +500,11 @@ remoteRef = 146834031AC3E56700842450 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 34A81B561B9F50D6002650C2 /* libRNGL.a */ = { + 349265EF1C066AA400992528 /* libRNGL.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; path = libRNGL.a; - remoteRef = 34A81B551B9F50D6002650C2 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 34A81B581B9F50D6002650C2 /* RNGLTests.xctest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = RNGLTests.xctest; - remoteRef = 34A81B571B9F50D6002650C2 /* PBXContainerItemProxy */; + remoteRef = 349265EE1C066AA400992528 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; 78C398B91ACF4ADC00677621 /* libRCTLinking.a */ = { @@ -477,19 +524,50 @@ /* End PBXReferenceProxy section */ /* Begin PBXResourcesBuildPhase section */ + 00E356EC1AD99517003FC87E /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 13B07F8E1A680F5B00A75B9A /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, - 34A75CDB1BAB052F00942375 /* main.jsbundle in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Bundle React Native code and images"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "../node_modules/react-native/packager/react-native-xcode.sh"; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ + 00E356EA1AD99517003FC87E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 00E356F31AD99517003FC87E /* TestsTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 13B07F871A680F5B00A75B9A /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -501,6 +579,14 @@ }; /* End PBXSourcesBuildPhase section */ +/* Begin PBXTargetDependency section */ + 00E356F51AD99517003FC87E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 13B07F861A680F5B00A75B9A /* Tests */; + targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + /* Begin PBXVariantGroup section */ 13B07FB11A68108700A75B9A /* LaunchScreen.xib */ = { isa = PBXVariantGroup; @@ -508,21 +594,60 @@ 13B07FB21A68108700A75B9A /* Base */, ); name = LaunchScreen.xib; + path = Tests; sourceTree = ""; }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ + 00E356F61AD99517003FC87E /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(SDKROOT)/Developer/Library/Frameworks", + "$(inherited)", + ); + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + INFOPLIST_FILE = TestsTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Tests.app/Tests"; + }; + name = Debug; + }; + 00E356F71AD99517003FC87E /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(SDKROOT)/Developer/Library/Frameworks", + "$(inherited)", + ); + INFOPLIST_FILE = TestsTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Tests.app/Tests"; + }; + name = Release; + }; 13B07F941A680F5B00A75B9A /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + DEAD_CODE_STRIPPING = NO; HEADER_SEARCH_PATHS = ( "$(inherited)", /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, "$(SRCROOT)/../node_modules/react-native/React/**", ); - INFOPLIST_FILE = "$(SRCROOT)/Tests/Info.plist"; + INFOPLIST_FILE = Tests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-ObjC"; PRODUCT_NAME = Tests; @@ -538,7 +663,7 @@ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, "$(SRCROOT)/../node_modules/react-native/React/**", ); - INFOPLIST_FILE = "$(SRCROOT)/Tests/Info.plist"; + INFOPLIST_FILE = Tests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-ObjC"; PRODUCT_NAME = Tests; @@ -634,6 +759,15 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ + 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "TestsTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 00E356F61AD99517003FC87E /* Debug */, + 00E356F71AD99517003FC87E /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "Tests" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/Examples/Tests/iOS/Tests.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme b/Examples/Tests/iOS/Tests.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme index c5fddd8a659b48f903b330ccfd710333bd61cfe6..e696f595119548c5d3868ee7b4f6d8fe20ba11c9 100644 --- a/Examples/Tests/iOS/Tests.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme +++ b/Examples/Tests/iOS/Tests.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme @@ -1,6 +1,6 @@ + + + + + + + + + + + + + + + + - + - + diff --git a/Examples/Tests/iOS/Tests/main.jsbundle b/Examples/Tests/iOS/Tests/main.jsbundle deleted file mode 100644 index b702b30c66dc4c7ac8c9313cbed231d094bf9338..0000000000000000000000000000000000000000 --- a/Examples/Tests/iOS/Tests/main.jsbundle +++ /dev/null @@ -1,8 +0,0 @@ -// Offline JS -// To re-generate the offline bundle, run this from the root of your project: -// -// $ react-native bundle --minify -// -// See http://facebook.github.io/react-native/docs/runningondevice.html for more details. - -throw new Error('Offline JS file is empty. See iOS/main.jsbundle for instructions'); diff --git a/Examples/Tests/iOS/main.jsbundle b/Examples/Tests/iOS/main.jsbundle deleted file mode 100644 index 0418f348335e9e3b42853e8d2f7a52ca20535fe4..0000000000000000000000000000000000000000 --- a/Examples/Tests/iOS/main.jsbundle +++ /dev/null @@ -1,20 +0,0 @@ -__DEV__=!1,__BUNDLE_START_TIME__=Date.now(),function(e){function t(e){for(var t,n,r,o,i=Array.prototype.slice.call(e),a={};i.length;)if(n=i.shift(),!a[n]&&(a[n]=!0,r=h[n],r&&r.waiting))for(t=0;t=o.error&&(t=o.warn),e.nativeLoggingHook(r,t)}}function i(t){if(!Array.isArray(t)){var n=t;t=[];for(var i in n)if(n.hasOwnProperty(i)){var a=n[i];a[r]=i,t.push(a)}}if(0===t.length)return void e.nativeLoggingHook("",o.log);var u=Object.keys(t[0]).sort(),c=[],l=[];u.forEach(function(e,n){l[n]=e.length;for(var r=0;r=0||p.indexOf("description")>=0))return i(t);if(0===p.length){if(_(t)){var d=t.name?": "+t.name:"";return e.stylize("[Function"+d+"]","special")}if(v(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(g(t))return e.stylize(Date.prototype.toString.call(t),"date");if(y(t))return i(t)}var f="",m=!1,b=["{","}"];if(c(t)&&(m=!0,b=["[","]"]),_(t)){var S=t.name?": "+t.name:"";f=" [Function"+S+"]"}if(v(t)&&(f=" "+RegExp.prototype.toString.call(t)),g(t)&&(f=" "+Date.prototype.toUTCString.call(t)),y(t)&&(f=" "+i(t)),0===p.length&&(!m||0==t.length))return b[0]+f+b[1];if(0>r)return v(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var E;return E=m?a(e,t,r,h,p):p.map(function(n){return s(e,t,r,h,n,m)}),e.seen.pop(),u(E,f,b)}function o(e,t){if(f(t))return e.stylize("undefined","undefined");if(d(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return h(t)?e.stylize(""+t,"number"):l(t)?e.stylize(""+t,"boolean"):p(t)?e.stylize("null","null"):void 0}function i(e){return"["+Error.prototype.toString.call(e)+"]"}function a(e,t,n,r,o){for(var i=[],a=0,u=t.length;u>a;++a)S(t,String(a))?i.push(s(e,t,n,r,String(a),!0)):i.push("");return o.forEach(function(o){o.match(/^\d+$/)||i.push(s(e,t,n,r,o,!0))}),i}function s(e,t,n,o,i,a){var s,u,c;if(c=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]},c.get?u=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(u=e.stylize("[Setter]","special")),S(o,i)||(s="["+i+"]"),u||(e.seen.indexOf(c.value)<0?(u=p(n)?r(e,c.value,null):r(e,c.value,n-1),u.indexOf("\n")>-1&&(u=a?u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+u.split("\n").map(function(e){return" "+e}).join("\n"))):u=e.stylize("[Circular]","special")),f(s)){if(a&&i.match(/^\d+$/))return u;s=JSON.stringify(""+i),s.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+u}function u(e,t,n){var r=0,o=e.reduce(function(e,t){return r++,t.indexOf("\n")>=0&&r++,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0);return o>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function c(e){return Array.isArray(e)}function l(e){return"boolean"==typeof e}function p(e){return null===e}function h(e){return"number"==typeof e}function d(e){return"string"==typeof e}function f(e){return void 0===e}function v(e){return m(e)&&"[object RegExp]"===b(e)}function m(e){return"object"==typeof e&&null!==e}function g(e){return m(e)&&"[object Date]"===b(e)}function y(e){return m(e)&&("[object Error]"===b(e)||e instanceof Error)}function _(e){return"function"==typeof e}function b(e){return Object.prototype.toString.call(e)}function S(e,t){return Object.prototype.hasOwnProperty.call(e,t)}return e}(),r="(index)",o={trace:0,log:1,info:2,warn:3,error:4};"undefined"!=typeof module?module.exports=t:t(e)}(this),function(e){function t(){var t=function(t){e.console.error("Error: \n stack: "+t.stack+"\n line: "+t.line+"\n message: "+t.message,t)};e.ErrorUtils.setGlobalHandler(t)}var n={_inGuard:0,_globalHandler:null,setGlobalHandler:function(e){n._globalHandler=e},reportError:function(e){n._globalHandler&&n._globalHandler(e)},reportFatalError:function(e){n._globalHandler&&n._globalHandler(e,!0)},applyWithGuard:function(e,t,r){try{return n._inGuard++,e.apply(t,r)}catch(o){n.reportError(o)}finally{n._inGuard--}},applyWithGuardIfNeeded:function(e,t,r){return n.inGuard()?e.apply(t,r):void n.applyWithGuard(e,t,r)},inGuard:function(){return n._inGuard},guard:function(e,t,r){function o(){return n.applyWithGuard(e,r||this,arguments,null,t)}return"function"!=typeof e?(console.warn("A function must be passed to ErrorUtils.guard, got ",e),null):(t=t||e.name||"",o)}};e.ErrorUtils=n,t()}(this),String.prototype.startsWith||(String.prototype.startsWith=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=arguments.length>1?Number(arguments[1])||0:0,r=Math.min(Math.max(n,0),t.length);return t.indexOf(String(e),n)===r}),String.prototype.endsWith||(String.prototype.endsWith=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=t.length,r=String(e),o=arguments.length>1?Number(arguments[1])||0:n,i=Math.min(Math.max(o,0),n),a=i-r.length;return 0>a?!1:t.lastIndexOf(r,a)===a}),String.prototype.contains||(String.prototype.contains=function(e){"use strict";if(null==this)throw TypeError();var t=String(this),n=arguments.length>1?Number(arguments[1])||0:0;return-1!==t.indexOf(String(e),n)}),String.prototype.repeat||(String.prototype.repeat=function(e){"use strict";if(null==this)throw TypeError();var t=String(this);if(e=Number(e)||0,0>e||e===1/0)throw RangeError();if(1===e)return t;for(var n="";e;)1&e&&(n+=t),(e>>=1)&&(t+=t);return n}),function(e){function t(e,t){if(null==this)throw new TypeError("Array.prototype.findIndex called on null or undefined");if("function"!=typeof e)throw new TypeError("predicate must be a function");for(var n=Object(this),r=n.length>>>0,o=0;r>o;o++)if(e.call(t,n[o],o,n))return o;return-1}Array.prototype.findIndex||Object.defineProperty(Array.prototype,"findIndex",{enumerable:!1,writable:!0,configurable:!0,value:t}),Array.prototype.find||Object.defineProperty(Array.prototype,"find",{enumerable:!1,writable:!0,configurable:!0,value:function(n,r){if(null==this)throw new TypeError("Array.prototype.find called on null or undefined");var o=t.call(this,n,r);return-1===o?e:this[o]}})}(),__d("Tests/index.ios.js",["react-native/Libraries/react-native/react-native.js","Dimensions","Tests/Blur.js","Tests/Add.js","Tests/Multiply.js","Tests/Layer.js","Tests/NativeLayer.js","Tests/HelloGL.js","Tests/Display2.js","Tests/Copy.js","Tests/TransparentNonPremultiplied.js"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n1){for(var p=Array(l),h=0;l>h;h++)p[h]=arguments[h+2];i.children=p}if(e&&e.defaultProps){var d=e.defaultProps;for(r in d)"undefined"==typeof i[r]&&(i[r]=d[r])}return new s(e,u,c,o.current,i)},s.createFactory=function(e){var t=s.createElement.bind(null,e);return t.type=e,t},s.cloneAndReplaceProps=function(e,t){var n=new s(e.type,e.key,e.ref,e._owner,t);return __DEV__&&(n._store.validated=e._store.validated),n},s.cloneElement=function(e,t,n){var r,u=i({},e.props),c=e.key,l=e.ref,p=e._owner;if(null!=t){void 0!==t.ref&&(l=t.ref,p=o.current),void 0!==t.key&&(c=""+t.key);for(r in t)t.hasOwnProperty(r)&&!a.hasOwnProperty(r)&&(u[r]=t[r])}var h=arguments.length-2;if(1===h)u.children=n;else if(h>1){for(var d=Array(h),f=0;h>f;f++)d[f]=arguments[f+2];u.children=d}return new s(e.type,c,l,p,u)},s.isValidElement=function(e){var t=!(!e||!e._isReactElement);return t},n.exports=s}),__d("ReactCurrentOwner",[],function(e,t,n,r){"use strict";var o={current:null};n.exports=o}),__d("Object.assign",[],function(e,t,n,r){"use strict";function o(e,t){if(null==e)throw new TypeError("Object.assign target cannot be null or undefined");for(var n=Object(e),r=Object.prototype.hasOwnProperty,o=1;o2?n-2:0),o=2;n>o;o++)r[o-2]=arguments[o];if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(0!==t.indexOf("Failed Composite propType: ")&&!e){var i=0,a="Warning: "+t.replace(/%s/g,function(){return r[i++]});"undefined"!=typeof console&&console.error(a);try{throw new Error(a)}catch(s){}}}),n.exports=i}),__d("emptyFunction",[],function(e,t,n,r){function o(e){return function(){return e}}function i(){}i.thatReturns=o,i.thatReturnsFalse=o(!1),i.thatReturnsTrue=o(!0),i.thatReturnsNull=o(null),i.thatReturnsThis=function(){return this},i.thatReturnsArgument=function(e){return e},n.exports=i}),__d("traverseAllChildren",["ReactElement","ReactFragment","ReactInstanceHandles","getIteratorFn","invariant","warning"],function(e,t,n,r){"use strict";function o(e){return y[e]}function i(e,t){return e&&null!=e.key?s(e.key):t.toString(36)}function a(e){ -return(""+e).replace(_,o)}function s(e){return"$"+a(e)}function u(e,t,n,r){var o=typeof e;if(("undefined"===o||"boolean"===o)&&(e=null),null===e||"string"===o||"number"===o||l.isValidElement(e))return n(r,e,""===t?m+i(e,0):t),1;var a,c,h=0;if(Array.isArray(e))for(var y=0;y=o;o++)if(i(e,o)&&i(t,o))r=o;else if(e.charAt(o)!==t.charAt(o))break;var s=e.substr(0,r);return d(a(s),"getFirstCommonAncestorID(%s, %s): Expected a valid React DOM ID: %s",e,t,s),s}function p(e,t,n,r,o,i){e=e||"",t=t||"",d(e!==t,"traverseParentPath(...): Cannot traverse from and to the same ID, `%s`.",e);var a=s(t,e);d(a||s(e,t),"traverseParentPath(%s, %s, ...): Cannot traverse from two IDs that do not have a parent path.",e,t);for(var l=0,p=a?u:c,h=e;;h=p(h,t)){var f;if(o&&h===e||i&&h===t||(f=n(h,a,r)),f===!1||h===t)break;d(l++1){var t=e.indexOf(f,1);return t>-1?e.substr(0,t):e}return null},traverseEnterLeave:function(e,t,n,r,o){var i=l(e,t);i!==e&&p(e,i,n,r,!1,!0),i!==t&&p(i,t,n,o,!0,!1)},traverseTwoPhase:function(e,t,n){e&&(p("",e,t,n,!0,!1),p(e,"",t,n,!1,!0))},traverseTwoPhaseSkipTarget:function(e,t,n){e&&(p("",e,t,n,!0,!0),p(e,"",t,n,!0,!0))},traverseAncestors:function(e,t,n){p("",e,t,n,!0,!1)},getFirstCommonAncestorID:l,_getNextDescendantID:c,isAncestorIDOf:s,SEPARATOR:f};n.exports=g}),__d("ReactRootIndex",[],function(e,t,n,r){"use strict";var o={injectCreateReactRootIndex:function(e){i.createReactRootIndex=e}},i={createReactRootIndex:null,injection:o};n.exports=i}),__d("getIteratorFn",[],function(e,t,n,r){"use strict";function o(e){var t=e&&(i&&e[i]||e[a]);return"function"==typeof t?t:void 0}var i="function"==typeof Symbol&&Symbol.iterator,a="@@iterator";n.exports=o}),__d("ReactClass",["ReactComponent","ReactElement","ReactErrorUtils","ReactPropTypeLocations","ReactPropTypeLocationNames","ReactNoopUpdateQueue","Object.assign","emptyObject","invariant","keyMirror","keyOf","warning"],function(e,t,n,r){"use strict";function o(){x||(x=!0,T(!1,"setProps(...) and replaceProps(...) are deprecated. Instead, call React.render again at the top level."))}function i(e,t,n){for(var r in t)t.hasOwnProperty(r)&&T("function"==typeof t[r],"%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.",e.displayName||"ReactClass",y[n],r)}function a(e,t){var n=P.hasOwnProperty(t)?P[t]:null;D.hasOwnProperty(t)&&E(n===O.OVERRIDE_BASE,"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.",t),e.hasOwnProperty(t)&&E(n===O.DEFINE_MANY||n===O.DEFINE_MANY_MERGED,"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",t)}function s(e,t){if(t){E("function"!=typeof t,"ReactClass: You're attempting to use a component class as a mixin. Instead, just use a regular object."),E(!v.isValidElement(t),"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.");var n=e.prototype;t.hasOwnProperty(C)&&N.mixins(e,t.mixins);for(var r in t)if(t.hasOwnProperty(r)&&r!==C){var o=t[r];if(a(n,r),N.hasOwnProperty(r))N[r](e,o);else{var i=P.hasOwnProperty(r),s=n.hasOwnProperty(r),u="function"==typeof o,c=u&&!i&&!s;if(c)n.__reactAutoBindMap||(n.__reactAutoBindMap={}),n.__reactAutoBindMap[r]=o,n[r]=o;else if(s){var h=P[r];E(i&&(h===O.DEFINE_MANY_MERGED||h===O.DEFINE_MANY),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",h,r),h===O.DEFINE_MANY_MERGED?n[r]=l(n[r],o):h===O.DEFINE_MANY&&(n[r]=p(n[r],o))}else n[r]=o,__DEV__&&"function"==typeof o&&t.displayName&&(n[r].displayName=t.displayName+"_"+r)}}}}function u(e,t){if(t)for(var n in t){var r=t[n];if(t.hasOwnProperty(n)){var o=n in N;E(!o,'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\'t be on the "statics" key. Define it as an instance property instead; it will still be accessible on the constructor.',n);var i=n in e;E(!i,"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",n),e[n]=r}}}function c(e,t){E(e&&t&&"object"==typeof e&&"object"==typeof t,"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.");for(var n in t)t.hasOwnProperty(n)&&(E(void 0===e[n],"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.",n),e[n]=t[n]);return e}function l(e,t){return function(){var n=e.apply(this,arguments),r=t.apply(this,arguments);if(null==n)return r;if(null==r)return n;var o={};return c(o,n),c(o,r),o}}function p(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function h(e,t){var n=t.bind(e);if(__DEV__){n.__reactBoundContext=e,n.__reactBoundMethod=t,n.__reactBoundArguments=null;var r=e.constructor.displayName,o=n.bind;n.bind=function(i){for(var a=arguments.length,s=Array(a>1?a-1:0),u=1;a>u;u++)s[u-1]=arguments[u];if(i!==e&&null!==i)T(!1,"bind(): React component methods may only be bound to the component instance. See %s",r);else if(!s.length)return T(!1,"bind(): You are binding a component method to the component. React does this for you automatically in a high-performance way, so you can safely remove this call. See %s",r),n;var c=o.apply(n,arguments);return c.__reactBoundContext=e,c.__reactBoundMethod=t,c.__reactBoundArguments=s,c}}return n}function d(e){for(var t in e.__reactAutoBindMap)if(e.__reactAutoBindMap.hasOwnProperty(t)){var n=e.__reactAutoBindMap[t];e[t]=h(e,m.guard(n,e.constructor.displayName+"."+t))}}var f=t("ReactComponent"),v=t("ReactElement"),m=t("ReactErrorUtils"),g=t("ReactPropTypeLocations"),y=t("ReactPropTypeLocationNames"),_=t("ReactNoopUpdateQueue"),b=t("Object.assign"),S=t("emptyObject"),E=t("invariant"),R=t("keyMirror"),w=t("keyOf"),T=t("warning"),C=w({mixins:null}),O=R({DEFINE_ONCE:null,DEFINE_MANY:null,OVERRIDE_BASE:null,DEFINE_MANY_MERGED:null}),I=[],x=!1,P={mixins:O.DEFINE_MANY,statics:O.DEFINE_MANY,propTypes:O.DEFINE_MANY,contextTypes:O.DEFINE_MANY,childContextTypes:O.DEFINE_MANY,getDefaultProps:O.DEFINE_MANY_MERGED,getInitialState:O.DEFINE_MANY_MERGED,getChildContext:O.DEFINE_MANY_MERGED,render:O.DEFINE_ONCE,componentWillMount:O.DEFINE_MANY,componentDidMount:O.DEFINE_MANY,componentWillReceiveProps:O.DEFINE_MANY,shouldComponentUpdate:O.DEFINE_ONCE,componentWillUpdate:O.DEFINE_MANY,componentDidUpdate:O.DEFINE_MANY,componentWillUnmount:O.DEFINE_MANY,updateComponent:O.OVERRIDE_BASE},N={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n.":null,url:" See https://fb.me/react-warning-keys for more information.",childOwner:null};return t&&t._owner&&t._owner!==g.current&&(c.childOwner=" It was passed a child from "+i(t._owner)+"."),c}function l(e,t){if(Array.isArray(e))for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e){var t=e.message,n=o(e,["message"]),r=new Error(t);return r.framesToPop=1,Object.assign(r,n)}var s=function(){function e(e,t){for(var n=0;n32&&(this._debugInfo[this._callbackID>>5]=null),this._debugInfo[this._callbackID>>1]=[e,t],r&&n.push(this._callbackID),this._callbacks[this._callbackID++]=r,o&&n.push(this._callbackID),this._callbacks[this._callbackID++]=o),this._queue[v].push(e),this._queue[m].push(t),this._queue[g].push(n),__DEV__&&y&&isFinite(e)&&console.log("JS->N : "+this._remoteModuleTable[e]+"."+this._remoteMethodTable[e][t]+"("+JSON.stringify(n)+")")}},{key:"__callFunction",value:function(e,t,n){u.profile(function(){return e+"."+t+"("+f(n)+")"}),isFinite(e)&&(t=this._methodTable[e][t],e=this._moduleTable[e]),__DEV__&&y&&console.log("N->JS : "+e+"."+t+"("+JSON.stringify(n)+")"),e=this._require(e),e[t].apply(e,n),u.profileEnd()}},{key:"__invokeCallback",value:function(e,t){u.profile(function(){return"MessageQueue.invokeCallback("+e+", "+f(t)+")"});var n=this._callbacks[e];if(!n||__DEV__){var r=this._debugInfo[e>>1],o=r&&this._remoteModuleTable[r[0]],i=r&&this._remoteMethodTable[r[0]][r[1]];h(n,"Callback with id "+e+": "+o+"."+i+"() not found"),n&&y&&console.log("N->JS : ("+JSON.stringify(t)+")")}this._callbacks[-2&e]=null,this._callbacks[1|e]=null,n.apply(null,t),u.profileEnd()}},{key:"_genLookupTables",value:function(e,t,n){for(var r=Object.keys(e),o=0,i=r.length;i>o;o++){var a=r[o],s=e[a].methods,u=e[a].moduleID;t[u]=a,n[u]={};for(var c=Object.keys(s),l=0,p=c.length;p>l;l++){var h=c[l],d=s[h];n[u][d.methodID]=h}}}},{key:"_genModules",value:function(e){for(var t=Object.keys(e),n=0,r=t.length;r>n;n++){var o=t[n],i=e[o];this.RemoteModules[o]=this._genModule({},i)}}},{key:"_genModule",value:function(e,t){for(var n=Object.keys(t.methods),r=0,o=n.length;o>r;r++){var i=n[r],a=t.methods[i];e[i]=this._genMethod(t.moduleID,a.methodID,a.type)}return Object.assign(e,t.constants),e}},{key:"_genMethod",value:function(e,t,n){if(n===_.local)return null;var r=null,o=this;return r=n===_.remoteAsync?function(){for(var n=arguments.length,r=Array(n),i=0;n>i;i++)r[i]=arguments[i];return new Promise(function(n,i){o.__nativeCall(e,t,r,n,function(e){var t=a(e);i(t)})})}:function(){for(var n=arguments.length,r=Array(n),i=0;n>i;i++)r[i]=arguments[i];var a=r.length>0?r[r.length-1]:null,s=r.length>1?r[r.length-2]:null,u="function"==typeof a,c="function"==typeof s;c&&h(u,"Cannot have a non-function arg after a function arg.");var l=u+c,p=u?a:null,d=c?s:null;return r=r.slice(0,r.length-l),o.__nativeCall(e,t,r,d,p)},r.type=n,r}}]),e}();n.exports=S}),__d("BridgeProfiling",["ReactPerf"],function(e,t,n,r){"use strict";function o(){return s||(s=t("ReactPerf")),s}var i=1<<17,a=!1,s=null,u={setEnabled:function(e){a=e,o().enableMeasure=e},profile:function(e){a&&(e="function"==typeof e?e():e,console.profile(i,e))},profileEnd:function(){a&&console.profileEnd(i)},reactPerfMeasure:function(e,t,n){return function(r){if(!a)return n.apply(this,arguments);var o="ReactCompositeComponent"===e&&this.getName()||"";u.profile(e+"."+t+"("+o+")");var i=n.apply(this,arguments);return u.profileEnd(),i}},swizzleReactPerf:function(){o().injection.injectMeasure(u.reactPerfMeasure)}};n.exports=u}),__d("ReactPerf",[],function(e,t,n,r){"use strict";function o(e,t,n){return n}var i={enableMeasure:!1,storedMeasure:o,measureMethods:function(e,t,n){if(__DEV__)for(var r in n)n.hasOwnProperty(r)&&(e[r]=i.measure(t,n[r],e[r]))},measure:function(e,t,n){if(__DEV__){var r=null,o=function(){return i.enableMeasure?(r||(r=i.storedMeasure(e,t,n)),r.apply(this,arguments)):n.apply(this,arguments)};return o.displayName=e+"_"+t,o}return n},injection:{injectMeasure:function(e){i.storedMeasure=e}}};n.exports=i}),__d("ErrorUtils",[],function(e,t,n,r){var o=this;n.exports=o.ErrorUtils}),__d("JSTimersExecution",["invariant","keyMirror","performanceNow","warning","JSTimers","JSTimers"],function(e,t,n,r){"use strict";var o=t("invariant"),i=t("keyMirror"),a=t("performanceNow"),s=t("warning"),u={GUID:1,Type:i({setTimeout:null,setInterval:null,requestAnimationFrame:null,setImmediate:null}),callbacks:[],types:[],timerIDs:[],immediates:[],callTimer:function(e){s(e<=u.GUID,"Tried to call timer with ID "+e+" but no such timer exists");var t=u.timerIDs.indexOf(e);if(-1!==t){var n=u.types[t],r=u.callbacks[t];(n===u.Type.setTimeout||n===u.Type.setImmediate||n===u.Type.requestAnimationFrame)&&u._clearIndex(t);try{if(n===u.Type.setTimeout||n===u.Type.setInterval||n===u.Type.setImmediate)r();else{if(n!==u.Type.requestAnimationFrame)return void console.error("Tried to call a callback with invalid type: "+n);var o=a();r(o)}}catch(i){u.errors=u.errors||[],u.errors.push(i)}}},callTimers:function(e){o(0!==e.length,'Probably shouldn\'t call "callTimers" with no timerIDs'),u.errors=null,e.forEach(u.callTimer);var n=u.errors;if(n){var r=n.length;if(r>1)for(var i=1;r>i;i++)t("JSTimers").setTimeout(function(e){throw e}.bind(null,n[i]),0);throw n[0]}},callImmediates:function(){for(u.errors=null;0!==u.immediates.length;)u.callTimer(u.immediates.shift());u.errors&&u.errors.forEach(function(e){return t("JSTimers").setTimeout(function(){ -throw e},0)})},_clearIndex:function(e){u.timerIDs[e]=null,u.callbacks[e]=null,u.types[e]=null}};n.exports=u}),__d("performanceNow",["performance"],function(e,t,n,r){var o=t("performance");o&&o.now||(o=Date);var i=o.now.bind(o);n.exports=i}),__d("performance",["ExecutionEnvironment"],function(e,t,n,r){"use strict";var o,i=t("ExecutionEnvironment");i.canUseDOM&&(o=window.performance||window.msPerformance||window.webkitPerformance),n.exports=o||{}}),__d("ExecutionEnvironment",[],function(e,t,n,r){"use strict";var o=!1,i={canUseDOM:o,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:o&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:o&&!!window.screen,isInWorker:!o};n.exports=i}),__d("JSTimers",["NativeModules","JSTimersExecution"],function(e,t,n,r){"use strict";var o=t("NativeModules").Timing,i=t("JSTimersExecution"),a={Types:i.Types,_getFreeIndex:function(){var e=i.timerIDs.indexOf(null);return-1===e&&(e=i.timerIDs.length),e},setTimeout:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),s=2;n>s;s++)r[s-2]=arguments[s];var u=i.GUID++,c=a._getFreeIndex();return i.timerIDs[c]=u,i.callbacks[c]=function(){return e.apply(void 0,r)},i.types[c]=i.Type.setTimeout,o.createTimer(u,t||0,Date.now(),!1),u},setInterval:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),s=2;n>s;s++)r[s-2]=arguments[s];var u=i.GUID++,c=a._getFreeIndex();return i.timerIDs[c]=u,i.callbacks[c]=function(){return e.apply(void 0,r)},i.types[c]=i.Type.setInterval,o.createTimer(u,t||0,Date.now(),!0),u},setImmediate:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r];var o=i.GUID++,s=a._getFreeIndex();return i.timerIDs[s]=o,i.callbacks[s]=function(){return e.apply(void 0,n)},i.types[s]=i.Type.setImmediate,i.immediates.push(o),o},requestAnimationFrame:function(e){var t=i.GUID++,n=a._getFreeIndex();return i.timerIDs[n]=t,i.callbacks[n]=e,i.types[n]=i.Type.requestAnimationFrame,o.createTimer(t,1,Date.now(),!1),t},clearTimeout:function(e){a._clearTimerID(e)},clearInterval:function(e){a._clearTimerID(e)},clearImmediate:function(e){a._clearTimerID(e),i.immediates.splice(i.immediates.indexOf(e),1)},cancelAnimationFrame:function(e){a._clearTimerID(e)},_clearTimerID:function(e){if(null!=e){var t=i.timerIDs.indexOf(e);-1!==t&&(i._clearIndex(t),i.types[t]!==i.Type.setImmediate&&o.deleteTimer(e))}}};n.exports=a}),__d("ReactUpdates",["CallbackQueue","PooledClass","ReactPerf","ReactReconciler","Transaction","Object.assign","invariant"],function(e,t,n,r){"use strict";function o(){g(O.ReactReconcileTransaction&&S,"ReactUpdates: must inject a reconcile transaction class and batching strategy")}function i(){this.reinitializeTransaction(),this.dirtyComponentsLength=null,this.callbackQueue=p.getPooled(),this.reconcileTransaction=O.ReactReconcileTransaction.getPooled()}function a(e,t,n,r,i,a){o(),S.batchedUpdates(e,t,n,r,i,a)}function s(e,t){return e._mountOrder-t._mountOrder}function u(e){var t=e.dirtyComponentsLength;g(t===y.length,"Expected flush transaction's stored dirty-components length (%s) to match dirty-components array length (%s).",t,y.length),y.sort(s);for(var n=0;t>n;n++){var r=y[n],o=r._pendingCallbacks;if(r._pendingCallbacks=null,f.performUpdateIfNecessary(r,e.reconcileTransaction),o)for(var i=0;in;n+=2){var o=t[n/2];a.addTimespan(o,e[n+1]-e[n],o)}}};n.exports=a}),__d("regenerator/runtime.js",[],function(e,t,n,r){!function(e){"use strict";function t(e,t,n,r){var i=Object.create((t||o).prototype),a=new d(r||[]);return i._invoke=l(e,n,a),i}function r(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(r){return{type:"throw",arg:r}}}function o(){}function i(){}function a(){}function s(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function u(e){this.arg=e}function c(e){function t(n,o,i,a){var s=r(e[n],e,o);if("throw"!==s.type){var c=s.arg,l=c.value;return l instanceof u?Promise.resolve(l.arg).then(function(e){t("next",e,i,a)},function(e){t("throw",e,i,a)}):Promise.resolve(l).then(function(e){c.value=e,i(c)},a)}a(s.arg)}function n(e,n){function r(){return new Promise(function(r,o){t(e,n,r,o)})}return o=o?o.then(r,r):r()}"object"==typeof process&&process.domain&&(t=process.domain.bind(t));var o;this._invoke=n}function l(e,t,n){var o=S;return function(i,a){if(o===R)throw new Error("Generator is already running");if(o===w){if("throw"===i)throw a;return v()}for(;;){var s=n.delegate;if(s){if("return"===i||"throw"===i&&s.iterator[i]===m){n.delegate=null;var u=s.iterator["return"];if(u){var c=r(u,s.iterator,a);if("throw"===c.type){i="throw",a=c.arg;continue}}if("return"===i)continue}var c=r(s.iterator[i],s.iterator,a);if("throw"===c.type){n.delegate=null,i="throw",a=c.arg;continue}i="next",a=m;var l=c.arg;if(!l.done)return o=E,l;n[s.resultName]=l.value,n.next=s.nextLoc,n.delegate=null}if("next"===i)o===E?n.sent=a:n.sent=m;else if("throw"===i){if(o===S)throw o=w,a;n.dispatchException(a)&&(i="next",a=m)}else"return"===i&&n.abrupt("return",a);o=R;var c=r(e,t,n);if("normal"===c.type){o=n.done?w:E;var l={value:c.arg,done:n.done};if(c.arg!==T)return l;n.delegate&&"next"===i&&(a=m)}else"throw"===c.type&&(o=w,i="throw",a=c.arg)}}}function p(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function h(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function d(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(p,this),this.reset(!0)}function f(e){if(e){var t=e[y];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,r=function o(){for(;++n=0;--r){var o=this.tryEntries[r],i=o.completion;if("root"===o.tryLoc)return t("end");if(o.tryLoc<=this.prev){var a=g.call(o,"catchLoc"),s=g.call(o,"finallyLoc");if(a&&s){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&g.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),h(n),T}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;h(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:f(e),resultName:t,nextLoc:n},T}}}("object"==typeof e?e:"object"==typeof window?window:"object"==typeof self?self:this)}),__d("ExceptionsManager",["NativeModules","loadSourceMap","parseErrorStack","stringifySafe"],function(e,t,n,r){"use strict";function o(e,t,n){var r=++v;p&&(n||(n=d(e)),t?p.reportFatalException(e.message,n,r):p.reportSoftException(e.message,n,r),__DEV__&&(l=l||h()).then(function(t){var n=d(e,t);p.updateExceptionMessage(e.message,n,r)})["catch"](function(e){console.warn("Unable to load source map: "+e.message)}))}function i(e,t){e.message||(e=new Error(e));var n=d(e),r="Error: "+e.message+"\n stack: \n"+s(n)+"\n URL: "+e.sourceURL+"\n line: "+e.line+"\n message: "+e.message;console.errorOriginal?console.errorOriginal(r):console.error(r),o(e,t,n)}function a(){console.reportException||(console.reportException=o,console.errorOriginal=console.error.bind(console),console.error=function(){if(console.errorOriginal.apply(null,arguments),console.reportErrorsAsExceptions){var e=Array.prototype.map.call(arguments,f).join(", ");if('"Warning: '!==e.slice(0,10)){var t=new Error("console.error: "+e);t.framesToPop=1,o(t,!1)}}},void 0===console.reportErrorsAsExceptions&&(console.reportErrorsAsExceptions=!0))}function s(e){var t=Math.max.apply(null,e.map(function(e){return e.methodName.length}));return e.map(function(e){return u(e,t)}).join("\n")}function u(e,t){var n=e.file.split("/"),r=n[n.length-1];r.length>18&&(r=r.substr(0,17)+"…");var o=c(t-e.methodName.length);return" "+e.methodName+o+" "+r+":"+e.lineNumber}function c(e){return new Array(e+1).join(" ")}var l,p=t("NativeModules").ExceptionsManager,h=t("loadSourceMap"),d=t("parseErrorStack"),f=t("stringifySafe"),v=0;n.exports={handleException:i,installConsoleErrorReporter:a}}),__d("loadSourceMap",["Promise","NativeModules","SourceMap","react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js"],function(e,t,n,r){"use strict";function o(){return i().then(function(e){return new c(e)})}function i(){return e.RAW_SOURCE_MAP?s.resolve(e.RAW_SOURCE_MAP):p?h?new s(p.getScriptText).then(a).then(function(e){return null===e?s.reject(new Error("No source map URL found. May be running from bundled file.")):s.resolve(e)}).then(fetch).then(function(e){return e.text()}):s.reject(new Error("RCTNetworking module is not available")):s.reject(new Error("RCTSourceCode module is not available"))}function a(e){var t=e.url,n=e.text,r=e.fullSourceMappingURL;if(r)return r;var o=l.getFrom(n);if(!o)return null;var i=t.match(/(.+:\/\/.*?)\//)[1];return i+o}var s=t("Promise"),u=t("NativeModules"),c=t("SourceMap").SourceMapConsumer,l=t("react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js"),p=u.SourceCode,h=u.Networking;n.exports=o}),__d("Promise",["setImmediate","promise/setimmediate/es6-extensions.js","promise/setimmediate/done.js"],function(e,t,n,r){"use strict";e.setImmediate=t("setImmediate");var o=t("promise/setimmediate/es6-extensions.js");t("promise/setimmediate/done.js"),o.prototype["finally"]=function(e){return this.then(e,e)},n.exports=o}),__d("setImmediate",["ImmediateImplementation"],function(e,t,n,r){n.exports=e.setImmediate||t("ImmediateImplementation").setImmediate}),__d("ImmediateImplementation",[],function(e,t,n,r){!function(e,t){"use strict";function n(e){var n=e[0];return e=Array.prototype.slice.call(e,1),d[h]=function(){n.apply(t,e)},v=v.next={handle:h++},v.handle}function o(){for(var e,t;!m&&(e=f.next);)if(f=e,t=d[e.handle]){m=!0;try{t(),m=!1}finally{i(e.handle),m&&(m=!1,f.next&&p(o))}}}function i(e){delete d[e]}function a(){if(e.postMessage&&!e.importScripts){var t=!0,n=function(){t=!1,e.removeEventListener?e.removeEventListener("message",n,!1):e.detachEvent("onmessage",n)};if(e.addEventListener)e.addEventListener("message",n,!1);else{if(!e.attachEvent)return!1;e.attachEvent("onmessage",n)}return e.postMessage("","*"),t}}function s(){var t="setImmediate$"+Math.random()+"$",r=function(n){n.source===e&&"string"==typeof n.data&&0===n.data.indexOf(t)&&o()};e.addEventListener?e.addEventListener("message",r,!1):e.attachEvent("onmessage",r),p=function(){var r=n(arguments);return e.postMessage(t+r,"*"),r}}function u(){var e=new MessageChannel;e.port1.onmessage=o,p=function(){var t=n(arguments);return e.port2.postMessage(t),t}}function c(){var e=g.documentElement;p=function(){var t=n(arguments),r=g.createElement("script");return r.onreadystatechange=function(){r.onreadystatechange=null,e.removeChild(r),r=null,o()},e.appendChild(r),t}}function l(){p=function(){return setTimeout(o,0),n(arguments)}}var p,h=1,d={},f={},v=f,m=!1,g=e.document;a()?s():e.MessageChannel?u():g&&"onreadystatechange"in g.createElement("script")?c():l(),r.setImmediate=p,r.clearImmediate=i}(Function("return this")())}),__d("promise/setimmediate/es6-extensions.js",["promise/setimmediate/core.js"],function(e,t,n,r){"use strict";function o(e){var t=new i(i._99);return t._37=1,t._12=e,t}var i=t("promise/setimmediate/core.js");n.exports=i;var a=o(!0),s=o(!1),u=o(null),c=o(void 0),l=o(0),p=o("");i.resolve=function(e){if(e instanceof i)return e;if(null===e)return u;if(void 0===e)return c;if(e===!0)return a;if(e===!1)return s;if(0===e)return l;if(""===e)return p;if("object"==typeof e||"function"==typeof e)try{var t=e.then;if("function"==typeof t)return new i(t.bind(e))}catch(n){return new i(function(e,t){t(n)})}return o(e)},i.all=function(e){var t=Array.prototype.slice.call(e);return new i(function(e,n){function r(a,s){if(s&&("object"==typeof s||"function"==typeof s)){if(s instanceof i&&s.then===i.prototype.then){for(;3===s._37;)s=s._12;return 1===s._37?r(a,s._12):(2===s._37&&n(s._12),void s.then(function(e){r(a,e)},n))}var u=s.then;if("function"==typeof u){var c=new i(u.bind(s));return void c.then(function(e){r(a,e)},n)}}t[a]=s,0===--o&&e(t)}if(0===t.length)return e([]);for(var o=t.length,a=0;a0&&e.column>=0)||t||n||r)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,orginal:t,name:r}))},r.prototype._serializeMappings=function(){var e,t=0,n=1,r=0,a=0,s=0,u=0,c="";this._mappings.sort(i.compareByGeneratedPositions);for(var l=0,p=this._mappings.length;p>l;l++){if(e=this._mappings[l],e.generatedLine!==n)for(t=0;e.generatedLine!==n;)c+=";",n++;else if(l>0){if(!i.compareByGeneratedPositions(e,this._mappings[l-1]))continue;c+=","}c+=o.encode(e.generatedColumn-t),t=e.generatedColumn,e.source&&(c+=o.encode(this._sources.indexOf(e.source)-u),u=this._sources.indexOf(e.source),c+=o.encode(e.originalLine-1-a),a=e.originalLine-1,c+=o.encode(e.originalColumn-r),r=e.originalColumn,e.name&&(c+=o.encode(this._names.indexOf(e.name)-s),s=this._names.indexOf(e.name)))}return c},r.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;t&&(e=i.relative(t,e));var n=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null},this)},r.prototype.toJSON=function(){var e={version:this._version,file:this._file,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},r.prototype.toString=function(){return JSON.stringify(this)},t.SourceMapGenerator=r}),e("source-map/base64-vlq",["require","exports","module","source-map/base64"],function(e,t,n){function r(e){return 0>e?(-e<<1)+1:(e<<1)+0}function o(e){var t=1===(1&e),n=e>>1;return t?-n:n}var i=e("./base64"),a=5,s=1<>>=a,o>0&&(t|=c),n+=i.encode(t);while(o>0);return n},t.decode=function(e){var t,n,r=0,s=e.length,l=0,p=0;do{if(r>=s)throw new Error("Expected more digits in base 64 VLQ value.");n=i.decode(e.charAt(r++)),t=!!(n&c),n&=u,l+=n<r)-(r>n)}function p(e,t,n){var r;return(r=l(e.source,t.source))?r:(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,r||n?r:(r=l(e.name,t.name))?r:(r=e.generatedLine-t.generatedLine,r?r:e.generatedColumn-t.generatedColumn))}function h(e,t,n){var r;return(r=e.generatedLine-t.generatedLine)?r:(r=e.generatedColumn-t.generatedColumn,r||n?r:(r=l(e.source,t.source))?r:(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,r?r:l(e.name,t.name)))}t.getArg=r;var d=/([\w+\-.]+):\/\/((\w+:\w+)@)?([\w.]+)?(:(\d+))?(\S+)?/,f=/^data:.+\,.+/;t.urlParse=o,t.urlGenerate=i,t.join=a,t.toSetString=s,t.fromSetString=u,t.relative=c,t.compareByOriginalPositions=p,t.compareByGeneratedPositions=h}),e("source-map/array-set",["require","exports","module","source-map/util"],function(e,t,n){function r(){this._array=[],this._set={}}var o=e("./util");r.fromArray=function(e,t){for(var n=new r,o=0,i=e.length;i>o;o++)n.add(e[o],t);return n},r.prototype.add=function(e,t){var n=this.has(e),r=this._array.length;(!n||t)&&this._array.push(e),n||(this._set[o.toSetString(e)]=r)},r.prototype.has=function(e){return Object.prototype.hasOwnProperty.call(this._set,o.toSetString(e))},r.prototype.indexOf=function(e){if(this.has(e))return this._set[o.toSetString(e)];throw new Error('"'+e+'" is not in the set.')},r.prototype.at=function(e){if(e>=0&&e0;)if(";"===d.charAt(0))i++,d=d.slice(1),a=0;else if(","===d.charAt(0))d=d.slice(1);else{if(n={},n.generatedLine=i,r=s.decode(d),n.generatedColumn=a+r.value,a=n.generatedColumn,d=r.rest,d.length>0&&!h.test(d.charAt(0))){if(r=s.decode(d),n.source=this._sources.at(l+r.value),l+=r.value,d=r.rest,0===d.length||h.test(d.charAt(0)))throw new Error("Found a source, but no line and column");if(r=s.decode(d),n.originalLine=u+r.value,u=n.originalLine,n.originalLine+=1,d=r.rest,0===d.length||h.test(d.charAt(0)))throw new Error("Found a source and line, but no column");r=s.decode(d),n.originalColumn=c+r.value,c=n.originalColumn,d=r.rest,d.length>0&&!h.test(d.charAt(0))&&(r=s.decode(d),n.name=this._names.at(p+r.value),p+=r.value,d=r.rest)}this.__generatedMappings.push(n),"number"==typeof n.originalLine&&this.__originalMappings.push(n)}this.__originalMappings.sort(o.compareByOriginalPositions)},r.prototype._findMapping=function(e,t,n,r,o){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[r]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[r]);return i.search(e,t,o)},r.prototype.originalPositionFor=function(e){var t={generatedLine:o.getArg(e,"line"),generatedColumn:o.getArg(e,"column")},n=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",o.compareByGeneratedPositions);if(n){var r=o.getArg(n,"source",null);return r&&this.sourceRoot&&(r=o.join(this.sourceRoot,r)),{source:r,line:o.getArg(n,"originalLine",null),column:o.getArg(n,"originalColumn",null),name:o.getArg(n,"name",null)}}return{source:null,line:null,column:null,name:null}},r.prototype.sourceContentFor=function(e){if(!this.sourcesContent)return null;if(this.sourceRoot&&(e=o.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var t;if(this.sourceRoot&&(t=o.urlParse(this.sourceRoot))){var n=e.replace(/^file:\/\//,"");if("file"==t.scheme&&this._sources.has(n))return this.sourcesContent[this._sources.indexOf(n)]; -if((!t.path||"/"==t.path)&&this._sources.has("/"+e))return this.sourcesContent[this._sources.indexOf("/"+e)]}throw new Error('"'+e+'" is not in the SourceMap.')},r.prototype.generatedPositionFor=function(e){var t={source:o.getArg(e,"source"),originalLine:o.getArg(e,"line"),originalColumn:o.getArg(e,"column")};this.sourceRoot&&(t.source=o.relative(this.sourceRoot,t.source));var n=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",o.compareByOriginalPositions);return n?{line:o.getArg(n,"generatedLine",null),column:o.getArg(n,"generatedColumn",null)}:{line:null,column:null}},r.GENERATED_ORDER=1,r.ORIGINAL_ORDER=2,r.prototype.eachMapping=function(e,t,n){var i,a=t||null,s=n||r.GENERATED_ORDER;switch(s){case r.GENERATED_ORDER:i=this._generatedMappings;break;case r.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var u=this.sourceRoot;i.map(function(e){var t=e.source;return t&&u&&(t=o.join(u,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name}}).forEach(e,a)},t.SourceMapConsumer=r}),e("source-map/binary-search",["require","exports","module"],function(e,t,n){function r(e,t,n,o,i){var a=Math.floor((t-e)/2)+e,s=i(n,o[a],!0);return 0===s?o[a]:s>0?t-a>1?r(a,t,n,o,i):o[a]:a-e>1?r(e,a,n,o,i):0>e?null:o[e]}t.search=function(e,t,n){return t.length>0?r(-1,t.length,e,t,n):null}}),e("source-map/source-node",["require","exports","module","source-map/source-map-generator","source-map/util"],function(e,t,n){function r(e,t,n,r,o){this.children=[],this.sourceContents={},this.line=void 0===e?null:e,this.column=void 0===t?null:t,this.source=void 0===n?null:n,this.name=void 0===o?null:o,null!=r&&this.add(r)}var o=e("./source-map-generator").SourceMapGenerator,i=e("./util");r.fromStringWithSourceMap=function(e,t){function n(e,t){null===e||void 0===e.source?o.add(t):o.add(new r(e.originalLine,e.originalColumn,e.source,t,e.name))}var o=new r,i=e.split("\n"),a=1,s=0,u=null;return t.eachMapping(function(e){if(null===u){for(;a=0;t--)this.prepend(e[t]);else{if(!(e instanceof r||"string"==typeof e))throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},r.prototype.walk=function(e){for(var t,n=0,o=this.children.length;o>n;n++)t=this.children[n],t instanceof r?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},r.prototype.join=function(e){var t,n,r=this.children.length;if(r>0){for(t=[],n=0;r-1>n;n++)t.push(this.children[n]),t.push(e);t.push(this.children[n]),this.children=t}return this},r.prototype.replaceRight=function(e,t){var n=this.children[this.children.length-1];return n instanceof r?n.replaceRight(e,t):"string"==typeof n?this.children[this.children.length-1]=n.replace(e,t):this.children.push("".replace(e,t)),this},r.prototype.setSourceContent=function(e,t){this.sourceContents[i.toSetString(e)]=t},r.prototype.walkSourceContents=function(e){for(var t=0,n=this.children.length;n>t;t++)this.children[t]instanceof r&&this.children[t].walkSourceContents(e);for(var o=Object.keys(this.sourceContents),t=0,n=o.length;n>t;t++)e(i.fromSetString(o[t]),this.sourceContents[o[t]])},r.prototype.toString=function(){var e="";return this.walk(function(t){e+=t}),e},r.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},n=new o(e),r=!1,i=null,a=null,s=null,u=null;return this.walk(function(e,o){t.code+=e,null!==o.source&&null!==o.line&&null!==o.column?((i!==o.source||a!==o.line||s!==o.column||u!==o.name)&&n.addMapping({source:o.source,original:{line:o.line,column:o.column},generated:{line:t.line,column:t.column},name:o.name}),i=o.source,a=o.line,s=o.column,u=o.name,r=!0):r&&(n.addMapping({generated:{line:t.line,column:t.column}}),i=null,r=!1),e.split("").forEach(function(e){"\n"===e?(t.line++,t.column=0):t.column++})}),this.walkSourceContents(function(e,t){n.setSourceContent(e,t)}),{code:t.code,map:n}},t.SourceNode=r}),this.sourceMap={SourceMapConsumer:n("source-map/source-map-consumer").SourceMapConsumer,SourceMapGenerator:n("source-map/source-map-generator").SourceMapGenerator,SourceNode:n("source-map/source-node").SourceNode}}var i={};o.call(i),n.exports=i.sourceMap}),__d("react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js",[],function(e,t,n,r){!function(){var e=null;void function(t,o){"function"==typeof e&&e.amd?e(o):"object"==typeof r?n.exports=o():t.sourceMappingURL=o()}(this,function(){var e=/[#@] sourceMappingURL=([^\s'"]*)/,t=RegExp("(?:/\\*(?:\\s*\r?\n(?://)?)?(?:"+e.source+")\\s*\\*/|//(?:"+e.source+"))\\s*$");return{regex:t,_innerRegex:e,getFrom:function(e){var n=e.match(t);return n?n[1]||n[2]||"":null},existsIn:function(e){return t.test(e)},removeFrom:function(e){return e.replace(t,"")},insertBefore:function(e,n){var r=e.match(t);return r?e.slice(0,r.index)+n+e.slice(r.index):e+n}}})}()}),__d("parseErrorStack",["stacktrace-parser/index.js"],function(e,t,n,r){"use strict";function o(e,t){try{var n=e.originalPositionFor({line:t.lineNumber,column:t.column});n&&(t.file=n.source,t.lineNumber=n.line,t.column=n.column)}catch(r){}}function i(e,t){if(!e||!e.stack)return[];for(var n=Array.isArray(e.stack)?e.stack:a.parse(e.stack),r=e.framesToPop||0;r--;)n.shift();return t&&n.forEach(o.bind(null,t)),n}var a=t("stacktrace-parser/index.js");n.exports=i}),__d("stacktrace-parser/index.js",["stacktrace-parser/lib/stacktrace-parser.js"],function(e,t,n,r){n.exports=t("stacktrace-parser/lib/stacktrace-parser.js")}),__d("stacktrace-parser/lib/stacktrace-parser.js",[],function(e,t,n,r){var o="",i={parse:function(e){for(var t,n,r=/^\s*at (?:(?:(?:Anonymous function)?|((?:\[object object\])?\S+(?: \[as \S+\])?)) )?\(?((?:file|http|https):.*?):(\d+)(?::(\d+))?\)?\s*$/i,i=/^(?:\s*(\S*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i,a=/^\s*at (?:((?:\[object object\])?\S+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i,s=e.split("\n"),u=[],c=0,l=s.length;l>c;++c){if(t=i.exec(s[c]))n={file:t[3],methodName:t[1]||o,lineNumber:+t[4],column:t[5]?+t[5]:null};else if(t=r.exec(s[c]))n={file:t[2],methodName:t[1]||o,lineNumber:+t[3],column:t[4]?+t[4]:null};else{if(!(t=a.exec(s[c])))continue;n={file:t[2],methodName:t[1]||o,lineNumber:+t[3],column:t[4]?+t[4]:null}}u.push(n)}return u}};n.exports=i}),__d("Platform",[],function(e,t,n,r){"use strict";var o={OS:"ios"};n.exports=o}),__d("checkFlowAtRuntime",["NativeModules"],function(e,t,n,r){"use strict";function o(){var e=i();e&&fetch(e+"flow/").then(function(e){return e.json()}).then(function(e){if(!e.silentError)throw{message:e.message,stack:e.errors.map(function(e){return s({},e,{methodName:e.description,file:e.filename})})}},function(){}).done()}function i(){var e=t("NativeModules"),n=e&&e.SourceCode&&e.SourceCode.scriptURL||"";return a(n.match(/^https?:\/\/[^\/]+\//))}function a(e){return e?e[0]:null}var s=Object.assign||function(e){for(var t=1;t-1?t:e}function l(e,t){t=t||{};var r=t.body;if(l.prototype.isPrototypeOf(e)){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new n(e.headers)),this.method=e.method,this.mode=e.mode,r||(r=e._bodyInit,e.bodyUsed=!0)}else this.url=e;if(this.credentials=t.credentials||this.credentials||"omit",(t.headers||!this.headers)&&(this.headers=new n(t.headers)),this.method=c(t.method||this.method||"GET"),this.mode=t.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&r)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(r)}function p(e){var t=new FormData;return e.trim().split("&").forEach(function(e){if(e){var n=e.split("="),r=n.shift().replace(/\+/g," "),o=n.join("=").replace(/\+/g," ");t.append(decodeURIComponent(r),decodeURIComponent(o))}}),t}function h(e){var t=new n,r=e.getAllResponseHeaders().trim().split("\n");return r.forEach(function(e){var n=e.trim().split(":"),r=n.shift().trim(),o=n.join(":").trim();t.append(r,o)}),t}function d(e,t){t||(t={}),this._initBody(e),this.type="default",this.url=null,this.status=t.status,this.ok=this.status>=200&&this.status<300,this.statusText=t.statusText,this.headers=t.headers instanceof n?t.headers:new n(t.headers),this.url=t.url||""}if(!o.fetch){n.prototype.append=function(n,r){n=e(n),r=t(r);var o=this.map[n];o||(o=[],this.map[n]=o),o.push(r)},n.prototype["delete"]=function(t){delete this.map[e(t)]},n.prototype.get=function(t){var n=this.map[e(t)];return n?n[0]:null},n.prototype.getAll=function(t){return this.map[e(t)]||[]},n.prototype.has=function(t){return this.map.hasOwnProperty(e(t))},n.prototype.set=function(n,r){this.map[e(n)]=[t(r)]},n.prototype.forEach=function(e,t){Object.getOwnPropertyNames(this.map).forEach(function(n){this.map[n].forEach(function(r){e.call(t,r,n,this)},this)},this)};var f={blob:"function"==typeof FileReader&&"function"==typeof Blob&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"function"==typeof FormData},v=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];u.call(l.prototype),u.call(d.prototype),o.Headers=n,o.Request=l,o.Response=d,o.fetch=function(e,t){var n;return n=l.prototype.isPrototypeOf(e)&&!t?e:new l(e,t),new Promise(function(e,t){function r(){return"responseURL"in o?o.responseURL:/^X-Request-URL:/m.test(o.getAllResponseHeaders())?o.getResponseHeader("X-Request-URL"):void 0}var o=new XMLHttpRequest;o.onload=function(){var n=1223===o.status?204:o.status;if(100>n||n>599)return void t(new TypeError("Network request failed"));var i={status:n,statusText:o.statusText,headers:h(o),url:r()},a="response"in o?o.response:o.responseText;e(new d(a,i))},o.onerror=function(){t(new TypeError("Network request failed"))},o.open(n.method,n.url,!0),"include"===n.credentials&&(o.withCredentials=!0),"responseType"in o&&f.blob&&(o.responseType="blob"),n.headers.forEach(function(e,t){o.setRequestHeader(t,e)}),o.send("undefined"==typeof n._bodyInit?null:n._bodyInit)})},o.fetch.polyfill=!0}}(),n.exports=o}),__d("Geolocation",["RCTDeviceEventEmitter","NativeModules","invariant","logError","warning"],function(e,t,n,r){"use strict";var o=t("RCTDeviceEventEmitter"),i=t("NativeModules").LocationObserver,a=t("invariant"),s=t("logError"),u=t("warning"),c=[],l=!1,p={getCurrentPosition:function(e,t,n){a("function"==typeof e,"Must provide a valid geo_success callback."),i.getCurrentPosition(n||{},e,t||s)},watchPosition:function(e,t,n){l||(i.startObserving(n||{}),l=!0);var r=c.length;return c.push([o.addListener("geolocationDidChange",e),t?o.addListener("geolocationError",t):null]),r},clearWatch:function(e){var t=c[e];if(t){t[0].remove();var n=t[1];n&&n.remove(),c[e]=void 0;for(var r=!0,o=0;on;n++)t[n]=arguments[n];if(!(this instanceof o)){if(t.length>0)return(0,a.defineCustomEventTarget)(o,t);throw new TypeError("Cannot call a class as a function")}Object.defineProperty(this,i.LISTENERS,{value:Object.create(null)})}Object.defineProperty(r,"__esModule",{value:!0}),r["default"]=o;var i=t("event-target-shim/lib/commons.js"),a=t("event-target-shim/lib/CustomEventTarget.js"),s=t("event-target-shim/lib/EventWrapper.js"),u="undefined"!=typeof window&&"undefined"!=typeof window.EventTarget;o.prototype=Object.create((u?window.EventTarget:Object).prototype,{constructor:{value:o,writable:!0,configurable:!0},addEventListener:{value:function(e,t){var n=void 0===arguments[2]?!1:arguments[2];if(null==t)return!1;if("function"!=typeof t)throw new TypeError("listener should be a function.");var r=n?i.CAPTURE:i.BUBBLE,o=this[i.LISTENERS][e];if(null==o)return this[i.LISTENERS][e]=(0,i.newNode)(t,r),!0;for(var a=null;null!=o;){if(o.listener===t&&o.kind===r)return!1;a=o,o=o.next}return a.next=(0,i.newNode)(t,r),!0},configurable:!0,writable:!0},removeEventListener:{value:function(e,t){var n=void 0===arguments[2]?!1:arguments[2];if(null==t)return!1;for(var r=n?i.CAPTURE:i.BUBBLE,o=null,a=this[i.LISTENERS][e];null!=a;){if(a.listener===t&&a.kind===r)return null==o?this[i.LISTENERS][e]=a.next:o.next=a.next,!0;o=a,a=a.next}return!1},configurable:!0,writable:!0},dispatchEvent:{value:function(e){var t=this[i.LISTENERS][e.type];if(null==t)return!0;for(e=(0,s.createEventWrapper)(e,this);null!=t&&(t.listener.call(this,e),!e[s.STOP_IMMEDIATE_PROPAGATION_FLAG]);)t=t.next;return!e.defaultPrevented},configurable:!0,writable:!0}}),n.exports=r["default"]}),__d("event-target-shim/lib/commons.js",[],function(e,t,n,r){"use strict";function o(e,t){return{listener:e,kind:t,next:null}}Object.defineProperty(r,"__esModule",{value:!0}),r.newNode=o;var i="undefined"!=typeof Symbol?Symbol:function(e){return"[["+e+"_"+Math.random().toFixed(8).slice(2)+"]]"};r.symbol=i;var a=i("listeners");r.LISTENERS=a;var s=1;r.CAPTURE=s;var u=2;r.BUBBLE=u;var c=3;r.ATTRIBUTE=c}),__d("event-target-shim/lib/CustomEventTarget.js",["event-target-shim/lib/commons.js"],function(e,t,n,r){"use strict";function o(e,t){for(var n=e[s.LISTENERS][t];null!=n;){if(n.kind===s.ATTRIBUTE)return n.listener;n=n.next}return null}function i(e,t,n){if(null!=n&&"function"!=typeof n)throw new TypeError("listener should be a function.");for(var r=null,o=e[s.LISTENERS][t];null!=o;)o.kind===s.ATTRIBUTE?null==r?e[s.LISTENERS][t]=o.next:r.next=o.next:r=o,o=o.next;null!=n&&(null==r?e[s.LISTENERS][t]=(0,s.newNode)(n,s.ATTRIBUTE):r.next=(0,s.newNode)(n,s.ATTRIBUTE))}function a(e,t){function n(){e.call(this)}var r={constructor:{value:n,configurable:!0,writable:!0}};return t.forEach(function(e){r["on"+e]={get:function(){return o(this,e)},set:function(t){i(this,e,t)},configurable:!0,enumerable:!0}}),n.prototype=Object.create(e.prototype,r),n}Object.defineProperty(r,"__esModule",{value:!0}),r.defineCustomEventTarget=a;var s=t("event-target-shim/lib/commons.js")}),__d("event-target-shim/lib/EventWrapper.js",["event-target-shim/lib/commons.js"],function(e,t,n,r){"use strict";function o(e,t){var n="number"==typeof e.timeStamp?e.timeStamp:Date.now(),r={type:{value:e.type,enumerable:!0},target:{value:t,enumerable:!0},currentTarget:{value:t,enumerable:!0},eventPhase:{value:2,enumerable:!0},bubbles:{value:Boolean(e.bubbles),enumerable:!0},cancelable:{value:Boolean(e.cancelable),enumerable:!0},timeStamp:{value:n,enumerable:!0},isTrusted:{value:!1,enumerable:!0}};"undefined"!=typeof e.detail&&(r.detail={value:e.detail,enumerable:!0});var o=Object.create(Object.create(e,c),r);return Object.defineProperty(o,a,{value:!1,writable:!0}),Object.defineProperty(o,s,{value:!1,writable:!0}),Object.defineProperty(o,u,{value:e}),o}Object.defineProperty(r,"__esModule",{value:!0}),r.createEventWrapper=o;var i=t("event-target-shim/lib/commons.js"),a=(0,i.symbol)("stop_immediate_propagation_flag");r.STOP_IMMEDIATE_PROPAGATION_FLAG=a;var s=(0,i.symbol)("canceled_flag"),u=(0,i.symbol)("original_event"),c={stopPropagation:{value:function(){var e=this[u];"function"==typeof e.stopPropagation&&e.stopPropagation()},writable:!0,configurable:!0},stopImmediatePropagation:{value:function(){this[a]=!0;var e=this[u];"function"==typeof e.stopImmediatePropagation&&e.stopImmediatePropagation()},writable:!0,configurable:!0},preventDefault:{value:function(){this.cancelable===!0&&(this[s]=!0);var e=this[u];"function"==typeof e.preventDefault&&e.preventDefault()},writable:!0,configurable:!0},defaultPrevented:{get:function(){return this[s]},enumerable:!0,configurable:!0}}}),__d("WebSocketEvent",[],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function"); -}var i=function a(e,t){o(this,a),this.type=e.toString(),Object.assign(this,t)};n.exports=i}),__d("EventPluginHub",["EventPluginRegistry","EventPluginUtils","accumulateInto","forEachAccumulated","invariant","warning"],function(e,t,n,r){"use strict";function o(){var e=f&&f.traverseTwoPhase&&f.traverseEnterLeave;l(e,"InstanceHandle not injected before use!")}var i=t("EventPluginRegistry"),a=t("EventPluginUtils"),s=t("accumulateInto"),u=t("forEachAccumulated"),c=t("invariant"),l=t("warning"),p={},h=null,d=function(e){if(e){var t=a.executeDispatch,n=i.getPluginModuleForEvent(e);n&&n.executeDispatch&&(t=n.executeDispatch),a.executeDispatchesInOrder(e,t),e.isPersistent()||e.constructor.release(e)}},f=null,v={injection:{injectMount:a.injection.injectMount,injectInstanceHandle:function(e){f=e,__DEV__&&o()},getInstanceHandle:function(){return __DEV__&&o(),f},injectEventPluginOrder:i.injectEventPluginOrder,injectEventPluginsByName:i.injectEventPluginsByName},eventNameDispatchConfigs:i.eventNameDispatchConfigs,registrationNameModules:i.registrationNameModules,putListener:function(e,t,n){c("function"==typeof n,"Expected %s listener to be a function, instead got type %s",t,typeof n);var r=p[t]||(p[t]={});r[e]=n;var o=i.registrationNameModules[t];o&&o.didPutListener&&o.didPutListener(e,t,n)},getListener:function(e,t){var n=p[t];return n&&n[e]},deleteListener:function(e,t){var n=i.registrationNameModules[t];n&&n.willDeleteListener&&n.willDeleteListener(e,t);var r=p[t];r&&delete r[e]},deleteAllListeners:function(e){for(var t in p)if(p[t][e]){var n=i.registrationNameModules[t];n&&n.willDeleteListener&&n.willDeleteListener(e,t),delete p[t][e]}},extractEvents:function(e,t,n,r,o){for(var a,u=i.plugins,c=0;c-1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e),!l.plugins[n]){s(t.extractEvents,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e),l.plugins[n]=t;var r=t.eventTypes;for(var o in r)s(i(r[o],t,o),"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",o,e)}}}function i(e,t,n){s(!l.eventNameDispatchConfigs.hasOwnProperty(n),"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",n),l.eventNameDispatchConfigs[n]=e;var r=e.phasedRegistrationNames;if(r){for(var o in r)if(r.hasOwnProperty(o)){var i=r[o];a(i,t,n)}return!0}return e.registrationName?(a(e.registrationName,t,n),!0):!1}function a(e,t,n){s(!l.registrationNameModules[e],"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e),l.registrationNameModules[e]=t,l.registrationNameDependencies[e]=t.eventTypes[n].dependencies}var s=t("invariant"),u=null,c={},l={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},injectEventPluginOrder:function(e){s(!u,"EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React."),u=Array.prototype.slice.call(e),o()},injectEventPluginsByName:function(e){var t=!1;for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];c.hasOwnProperty(n)&&c[n]===r||(s(!c[n],"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",n),c[n]=r,t=!0)}t&&o()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return l.registrationNameModules[t.registrationName]||null;for(var n in t.phasedRegistrationNames)if(t.phasedRegistrationNames.hasOwnProperty(n)){var r=l.registrationNameModules[t.phasedRegistrationNames[n]];if(r)return r}return null},_resetEventPlugins:function(){u=null;for(var e in c)c.hasOwnProperty(e)&&delete c[e];l.plugins.length=0;var t=l.eventNameDispatchConfigs;for(var n in t)t.hasOwnProperty(n)&&delete t[n];var r=l.registrationNameModules;for(var o in r)r.hasOwnProperty(o)&&delete r[o]}};n.exports=l}),__d("EventPluginUtils",["EventConstants","invariant","warning"],function(e,t,n,r){"use strict";function o(e){return e===_.topMouseUp||e===_.topTouchEnd||e===_.topTouchCancel}function i(e){return e===_.topMouseMove||e===_.topTouchMove}function a(e){return e===_.topMouseDown||e===_.topTouchStart}function s(e,t){var n=e._dispatchListeners,r=e._dispatchIDs;if(__DEV__&&f(e),Array.isArray(n))for(var o=0;oe,"Maximum deep merge depth exceeded. You may be attempting to merge circular structures in an unsupported way.")},checkArrayStrategy:function(e){o(void 0===e||e in u.ArrayStrategies,"You must provide an array strategy to deep merge functions to instruct the deep merge how to resolve merging two arrays.")},ArrayStrategies:i({Clobber:!0,IndexByIndex:!0})};n.exports=u}),__d("NodeHandle",[],function(e,t,n,r){var o={injection:{injectImplementation:function(e){o._Implementation=e}},_Implementation:null,getRootNodeID:function(e){return o._Implementation.getRootNodeID(e)}};n.exports=o}),__d("ReactDefaultBatchingStrategy",["ReactUpdates","Transaction","Object.assign","emptyFunction"],function(e,t,n,r){"use strict";function o(){this.reinitializeTransaction()}var i=t("ReactUpdates"),a=t("Transaction"),s=t("Object.assign"),u=t("emptyFunction"),c={initialize:u,close:function(){d.isBatchingUpdates=!1}},l={initialize:u,close:i.flushBatchedUpdates.bind(i)},p=[l,c];s(o.prototype,a.Mixin,{getTransactionWrappers:function(){return p}});var h=new o,d={isBatchingUpdates:!1,batchedUpdates:function(e,t,n,r,o,i){var a=d.isBatchingUpdates;d.isBatchingUpdates=!0,a?e(t,n,r,o,i):h.perform(e,null,t,n,r,o,i)}};n.exports=d}),__d("ReactNativeComponentEnvironment",["ReactNativeDOMIDOperations","ReactNativeReconcileTransaction"],function(e,t,n,r){"use strict";var o=t("ReactNativeDOMIDOperations"),i=t("ReactNativeReconcileTransaction"),a={processChildrenUpdates:o.dangerouslyProcessChildrenUpdates,replaceNodeWithMarkupByID:o.dangerouslyReplaceNodeWithMarkupByID,unmountIDFromEnvironment:function(){},clearNode:function(){},ReactReconcileTransaction:i};n.exports=a}),__d("ReactNativeDOMIDOperations",["ReactNativeTagHandles","ReactMultiChildUpdateTypes","NativeModules","ReactPerf"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("ReactMultiChildUpdateTypes"),a=t("NativeModules").UIManager,s=t("ReactPerf"),u=function(e,t){if(e.length){for(var n={},r=0;r=r?(this._iteratedObject=void 0,e(void 0,!0)):(this._nextIndex=o+1,i===a?e(o,!1):i===s?e(n[o],!1):i===u?e([o,n[o]],!1):void 0)}},{key:"@@iterator",value:function(){return this}}]),t}(),n=function(){function t(e){if(o(this,t),"string"!=typeof e)throw new TypeError("Object is not a string");this._iteratedString=e,this._nextIndex=0}return i(t,[{key:"next",value:function(){if(!this instanceof t)throw new TypeError("Object is not a StringIterator");if(null==this._iteratedString)return e(void 0,!0);var n=this._nextIndex,r=this._iteratedString,o=r.length;if(n>=o)return this._iteratedString=void 0,e(void 0,!0);var i,a=r.charCodeAt(n);if(55296>a||a>56319||n+1===o)i=r[n];else{var s=r.charCodeAt(n+1);i=56320>s||s>57343?r[n]:r[n]+r[n+1]}return this._nextIndex=n+i.length,e(i,!1)}},{key:"@@iterator",value:function(){return this}}]),t}();return function(e,r){return"string"==typeof e?new n(e):Array.isArray(e)?new t(e,r||s):e[c]()}}()}();Object.assign(l,{KIND_KEY:a,KIND_VALUE:s,KIND_KEY_VAL:u,ITERATOR_SYMBOL:c}),n.exports=l}),__d("_shouldPolyfillES6Collection",[],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function a(t){var n=e[t];if(null==n)return!0;var r=n.prototype;return null==n||"function"!=typeof n||"function"!=typeof r.clear||0!==(new n).size||"function"!=typeof r.keys||"function"!=typeof r.forEach||u(n)||!s(n)}function s(e){var t=function(e){function t(){o(this,t),c(Object.getPrototypeOf(t.prototype),"constructor",this).apply(this,arguments)}return i(t,e),t}(e);try{var n=new t([]);return n.size,n instanceof e}catch(r){return!1}}function u(e){try{e()}catch(t){return!1}return!0}var c=function l(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0===r){var o=Object.getPrototypeOf(e);return null===o?void 0:l(o,t,n)}if("value"in r)return r.value;var i=r.get;return void 0===i?void 0:i.call(n)};n.exports=a}),__d("ReactNativeGlobalResponderHandler",["NativeModules","ReactNativeTagHandles"],function(e,t,n,r){"use strict";var o=t("NativeModules").UIManager,i=t("ReactNativeTagHandles"),a={onChange:function(e,t,n){null!==t?o.setJSResponder(i.mostRecentMountedNodeHandleForRootNodeID(t),n):o.clearJSResponder()}};n.exports=a}),__d("ReactNativeTextComponent",["ReactNativeTagHandles","NativeModules","Object.assign"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("NativeModules").UIManager,a=t("Object.assign"),s=function(e){};a(s.prototype,{construct:function(e){this._currentElement=e,this._stringText=""+e,this._rootNodeID=null},mountComponent:function(e,t,n){this._rootNodeID=e;var r=o.allocateTag(),a=o.getNativeTopRootIDFromNodeID(e);return i.createView(r,"RCTRawText",a?o.rootNodeIDToTag[a]:null,{text:this._stringText}),{rootNodeID:e,tag:r}},receiveComponent:function(e,t,n){if(e!==this._currentElement){this._currentElement=e;var r=""+e;r!==this._stringText&&(this._stringText=r,i.updateView(o.mostRecentMountedNodeHandleForRootNodeID(this._rootNodeID),"RCTRawText",{text:this._stringText}))}},unmountComponent:function(){this._currentElement=null,this._stringText=null,this._rootNodeID=null}}),n.exports=s}),__d("ResponderEventPlugin",["EventConstants","EventPluginUtils","EventPropagators","ReactInstanceHandles","ResponderSyntheticEvent","ResponderTouchHistoryStore","accumulate","invariant","keyOf"],function(e,t,n,r){"use strict";function o(e,t,n,r){var o=m(e)?C.startShouldSetResponder:g(e)?C.moveShouldSetResponder:e===s.topLevelTypes.topSelectionChange?C.selectionChangeShouldSetResponder:C.scrollShouldSetResponder,i=E?l.getFirstCommonAncestorID(E,t):t,a=i===E,u=p.getPooled(o,i,n,r);u.touchHistory=h.touchHistory,a?c.accumulateTwoPhaseDispatchesSkipTarget(u):c.accumulateTwoPhaseDispatches(u);var f=S(u);if(u.isPersistent()||u.constructor.release(u),!f||f===E)return null;var v,y=p.getPooled(C.responderGrant,f,n,r);y.touchHistory=h.touchHistory,c.accumulateDirectDispatches(y);var R=_(y)===!0;if(E){var w=p.getPooled(C.responderTerminationRequest,E,n,r);w.touchHistory=h.touchHistory,c.accumulateDirectDispatches(w);var O=!b(w)||_(w);if(w.isPersistent()||w.constructor.release(w),O){var I=C.responderTerminate,x=p.getPooled(I,E,n,r);x.touchHistory=h.touchHistory,c.accumulateDirectDispatches(x),v=d(v,[y,x]),T(f,R)}else{var P=p.getPooled(C.responderReject,f,n,r);P.touchHistory=h.touchHistory,c.accumulateDirectDispatches(P),v=d(v,P)}}else v=d(v,y),T(f,R);return v}function i(e,t,n){return t&&(e===s.topLevelTypes.topScroll&&!n.responderIgnoreScroll||R>0&&e===s.topLevelTypes.topSelectionChange||m(e)||g(e))}function a(e){var t=e.touches;if(!t||0===t.length)return!0;for(var n=0;n=0,"Ended a touch event which was not counted in trackedTouchCount.")), -h.recordTouchTrack(e,r,u);var l=i(e,n,r)?o(e,n,r,u):null,v=E&&m(e),_=E&&g(e),b=E&&y(e),S=v?C.responderStart:_?C.responderMove:b?C.responderEnd:null;if(S){var I=p.getPooled(S,E,r,u);I.touchHistory=h.touchHistory,c.accumulateDirectDispatches(I),l=d(l,I)}var x=E&&e===s.topLevelTypes.topTouchCancel,P=E&&!x&&y(e)&&a(r),N=x?C.responderTerminate:P?C.responderRelease:null;if(N){var D=p.getPooled(N,E,r,u);D.touchHistory=h.touchHistory,c.accumulateDirectDispatches(D),l=d(l,D),T(null)}var M=h.touchHistory.numberActiveTouches;return O.GlobalInteractionHandler&&M!==w&&O.GlobalInteractionHandler.onChange(M),w=M,l},GlobalResponderHandler:null,GlobalInteractionHandler:null,injection:{injectGlobalResponderHandler:function(e){O.GlobalResponderHandler=e},injectGlobalInteractionHandler:function(e){O.GlobalInteractionHandler=e}}};n.exports=O}),__d("ResponderSyntheticEvent",["SyntheticEvent"],function(e,t,n,r){"use strict";function o(e,t,n,r){i.call(this,e,t,n,r)}var i=t("SyntheticEvent"),a={touchHistory:function(e){return null}};i.augmentClass(o,a),n.exports=o}),__d("ResponderTouchHistoryStore",["EventPluginUtils","invariant"],function(e,t,n,r){"use strict";var o=t("EventPluginUtils"),i=t("invariant"),a=o.isMoveish,s=o.isStartish,u=o.isEndish,c=20,l={touchBank:[],numberActiveTouches:0,indexOfSingleActiveTouch:-1,mostRecentTimeStamp:0},p=function(e){return e.timeStamp||e.timestamp},h=function(e){return{touchActive:!0,startTimeStamp:p(e),startPageX:e.pageX,startPageY:e.pageY,currentPageX:e.pageX,currentPageY:e.pageY,currentTimeStamp:p(e),previousPageX:e.pageX,previousPageY:e.pageY,previousTimeStamp:p(e)}},d=function(e,t){e.touchActive=!0,e.startTimeStamp=p(t),e.startPageX=t.pageX,e.startPageY=t.pageY,e.currentPageX=t.pageX,e.currentPageY=t.pageY,e.currentTimeStamp=p(t),e.previousPageX=t.pageX,e.previousPageY=t.pageY,e.previousTimeStamp=p(t)},f=function(e){var t=e.identifier;i(null!=t,"Touch object is missing identifier"),t>c&&console.warn("Touch identifier "+t+" is greater than maximum supported "+c+" which causes performance issues backfilling array locations for all of the indices.")},v=function(e){var t=l.touchBank,n=e.identifier,r=t[n];__DEV__&&f(e),r?d(r,e):t[e.identifier]=h(e),l.mostRecentTimeStamp=p(e)},m=function(e){var t=l.touchBank,n=t[e.identifier];__DEV__&&(f(e),i(n,"Touch data should have been recorded on start")),n.touchActive=!0,n.previousPageX=n.currentPageX,n.previousPageY=n.currentPageY,n.previousTimeStamp=n.currentTimeStamp,n.currentPageX=e.pageX,n.currentPageY=e.pageY,n.currentTimeStamp=p(e),l.mostRecentTimeStamp=p(e)},g=function(e){var t=l.touchBank,n=t[e.identifier];__DEV__&&(f(e),i(n,"Touch data should have been recorded on start")),n.previousPageX=n.currentPageX,n.previousPageY=n.currentPageY,n.previousTimeStamp=n.currentTimeStamp,n.currentPageX=e.pageX,n.currentPageY=e.pageY,n.currentTimeStamp=p(e),n.touchActive=!1,l.mostRecentTimeStamp=p(e)},y={recordTouchTrack:function(e,t){var n=l.touchBank;if(a(e))t.changedTouches.forEach(m);else if(s(e))t.changedTouches.forEach(v),l.numberActiveTouches=t.touches.length,1===l.numberActiveTouches&&(l.indexOfSingleActiveTouch=t.touches[0].identifier);else if(u(e)&&(t.changedTouches.forEach(g),l.numberActiveTouches=t.touches.length,1===l.numberActiveTouches)){for(var r=0;rr;r++)n[r]=r;return g._cache[e]=n,n};g._cache={},m.Mixin={getPublicInstance:function(){return this},construct:function(e){this._currentElement=e},unmountComponent:function(){v(this._rootNodeID),this.unmountChildren(),this._rootNodeID=null},initializeChildren:function(e,t,n,r){var o=this.mountChildren(e,n,r);if(o.length){for(var i=g(o.length),a=[],u=0;ur;r++)if(o(e[r],t[r]))return!0}else{for(var i in e)if(o(e[i],t[i]))return!0;for(var a in t)if(void 0===e[a]&&void 0!==t[a])return!0}return!1};n.exports=o}),__d("styleDiffer",["deepDiffer"],function(e,t,n,r){"use strict";function o(e,t){return!i(e,t)}function i(e,t){if(!e)return!t;if(!t)return!e;if(typeof e!=typeof t)return!1;if("number"==typeof e)return e===t;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(var n=0;n>",R={array:i("array"),bool:i("boolean"),func:i("function"),number:i("number"),object:i("object"),string:i("string"),any:a(),arrayOf:s,element:u(),instanceOf:c,node:d(),objectOf:p,oneOf:l,oneOfType:h,shape:f};n.exports=R}),__d("TransformPropTypes",["ReactPropTypes"],function(e,t,n,r){"use strict";var o=t("ReactPropTypes"),i=o.arrayOf(o.number),a=function(e,t,n){return e.transform&&e.transformMatrix?new Error("transformMatrix and transform styles cannot be used on the same component"):i(e,t,n)},s={transform:o.arrayOf(o.oneOfType([o.shape({perspective:o.number}),o.shape({rotate:o.string}),o.shape({rotateX:o.string}),o.shape({rotateY:o.string}),o.shape({rotateZ:o.string}),o.shape({scale:o.number}),o.shape({scaleX:o.number}),o.shape({scaleY:o.number}),o.shape({translateX:o.number}),o.shape({translateY:o.number}),o.shape({skewX:o.string}),o.shape({skewY:o.string})])),transformMatrix:a};n.exports=s}),__d("TextStylePropTypes",["ReactPropTypes","ViewStylePropTypes"],function(e,t,n,r){"use strict";for(var o=t("ReactPropTypes"),i=t("ViewStylePropTypes"),a=Object.assign(Object.create(i),{color:o.string,fontFamily:o.string,fontSize:o.number,fontStyle:o.oneOf(["normal","italic"]),fontWeight:o.oneOf(["normal","bold","100","200","300","400","500","600","700","800","900"]),letterSpacing:o.number,lineHeight:o.number,textAlign:o.oneOf(["auto","left","right","center","justify"]),textDecorationLine:o.oneOf(["none","underline","line-through","underline line-through"]),textDecorationStyle:o.oneOf(["solid","double","dotted","dashed"]),textDecorationColor:o.string,writingDirection:o.oneOf(["auto","ltr","rtl"])}),s=Object.keys({padding:null,paddingTop:null,paddingLeft:null,paddingRight:null,paddingBottom:null,paddingVertical:null,paddingHorizontal:null}),u=0;un&&(n+=1),n>1&&(n-=1),1/6>n?e+6*(t-e)*n:.5>n?t:2/3>n?e+(t-e)*(2/3-n)*6:e}var o,i,a;if(e=l(e,360),t=l(t,100),n=l(n,100),0===t)o=i=a=n;else{var s=.5>n?n*(1+t):n+t-n*t,u=2*n-s;o=r(u,s,e+1/3),i=r(u,s,e),a=r(u,s,e-1/3)}return{r:255*o,g:255*i,b:255*a}}function u(e,t,n){e=6*l(e,360),t=l(t,100),n=l(n,100);var r=math.floor(e),o=e-r,i=n*(1-t),a=n*(1-o*t),s=n*(1-(1-o)*t),u=r%6,c=[n,a,i,i,s,n][u],p=[s,n,n,a,i,i][u],h=[i,i,s,n,n,a][u];return{r:255*c,g:255*p,b:255*h}}function c(e){return e=parseFloat(e),(isNaN(e)||0>e||e>1)&&(e=1),e}function l(e,t){h(e)&&(e="100%");var n=d(e);return e=_(t,b(0,parseFloat(e))),n&&(e=parseInt(e*t,10)/100),Math.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function p(e){return parseInt(e,16)}function h(e){return"string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)}function d(e){return"string"==typeof e&&-1!=e.indexOf("%")}function f(e){return 1>=e&&(e=100*e+"%"),e}function v(e){e=e.replace(m,"").replace(g,"").toLowerCase();var t=!1;if(S[e])e=S[e],t=!0;else if("transparent"==e)return{r:0,g:0,b:0,a:0,format:"name"};var n;return(n=E.rgb.exec(e))?{r:n[1],g:n[2],b:n[3]}:(n=E.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=E.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=E.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=E.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=E.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=E.hex6.exec(e))?{r:p(n[1]),g:p(n[2]),b:p(n[3]),format:t?"name":"hex"}:(n=E.hex3.exec(e))?{r:p(n[1]+""+n[1]),g:p(n[2]+""+n[2]),b:p(n[3]+""+n[3]),format:t?"name":"hex"}:!1}var m=/^[\s,#]+/,g=/\s+$/,y=Math.round,_=Math.min,b=Math.max;o.prototype={toRgb:function(){return{r:y(this._r),g:y(this._g),b:y(this._b),a:this._a}},isValid:function(){return this._ok}};var S=o.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},E=function(){var e="[-\\+]?\\d+%?",t="[-\\+]?\\d*\\.\\d+%?",n="(?:"+t+")|(?:"+e+")",r="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?",o="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?";return{rgb:new RegExp("rgb"+r),rgba:new RegExp("rgba"+o),hsl:new RegExp("hsl"+r),hsla:new RegExp("hsla"+o),hsv:new RegExp("hsv"+r),hsva:new RegExp("hsva"+o),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();n.exports=o}),__d("processTransform",["MatrixMath","Platform","invariant","stringifySafe"],function(e,t,n,r){"use strict";function o(e){var t=u.createIdentityMatrix();return e.forEach(function(e){var n=Object.keys(e)[0],r=e[n];switch(__DEV__&&s(n,r,e),n){case"matrix":u.multiplyInto(t,t,r);break;case"perspective":i(t,u.reusePerspectiveCommand,[r]);break;case"rotateX":i(t,u.reuseRotateXCommand,[a(r)]);break;case"rotateY":i(t,u.reuseRotateYCommand,[a(r)]);break;case"rotate":case"rotateZ":i(t,u.reuseRotateZCommand,[a(r)]);break;case"scale":i(t,u.reuseScaleCommand,[r]);break;case"scaleX":i(t,u.reuseScaleXCommand,[r]);break;case"scaleY":i(t,u.reuseScaleYCommand,[r]);break;case"translate":i(t,u.reuseTranslate3dCommand,[r[0],r[1],r[2]||0]);break;case"translateX":i(t,u.reuseTranslate2dCommand,[r,0]);break;case"translateY":i(t,u.reuseTranslate2dCommand,[0,r]);break;case"skewX":i(t,u.reuseSkewXCommand,[a(r)]);break;case"skewY":i(t,u.reuseSkewYCommand,[a(r)]);break;default:throw new Error("Invalid transform name: "+n)}}),"android"===c.OS?u.decomposeMatrix(t):t}function i(e,t,n){var r=u.createIdentityMatrix(),o=[r].concat(n);t.apply(this,o),u.multiplyInto(e,e,r)}function a(e){var t=parseFloat(e,10);return e.indexOf("rad")>-1?t:t*Math.PI/180}function s(e,t,n){l(!t.getValue,"You passed an Animated.Value to a normal component. You need to wrap that component in an Animated. For example, replace by .");var r=["matrix","translate"];switch(-1!==r.indexOf(e)&&l(Array.isArray(t),"Transform with key of %s must have an array as the value: %s",e,p(n)),e){case"matrix":l(9===t.length||16===t.length,"Matrix transform must have a length of 9 (2d) or 16 (3d). Provided matrix has a length of %s: %s",t.length,p(n));break;case"translate":break;case"rotateX":case"rotateY":case"rotateZ":case"rotate":case"skewX":case"skewY":l("string"==typeof t,'Transform with key of "%s" must be a string: %s',e,p(n)),l(t.indexOf("deg")>-1||t.indexOf("rad")>-1,"Rotate transform must be expressed in degrees (deg) or radians (rad): %s",p(n));break;default:l("number"==typeof t,'Transform with key of "%s" must be a number: %s',e,p(n))}}var u=t("MatrixMath"),c=t("Platform"),l=t("invariant"),p=t("stringifySafe");n.exports=o}),__d("MatrixMath",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i={createIdentityMatrix:function(){ -return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},createCopy:function(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15]]},createOrthographic:function(e,t,n,r,o,i){var a=2/(t-e),s=2/(r-n),u=-2/(i-o),c=-(t+e)/(t-e),l=-(r+n)/(r-n),p=-(i+o)/(i-o);return[a,0,0,0,0,s,0,0,0,0,u,0,c,l,p,1]},createFrustum:function(e,t,n,r,o,i){var a=1/(t-e),s=1/(r-n),u=1/(o-i),c=2*(o*a),l=2*(o*s),p=(t+e)*a,h=(r+n)*s,d=(i+o)*u,f=2*(i*o*u);return[c,0,0,0,0,l,0,0,p,h,d,-1,0,0,f,0]},createPerspective:function(e,t,n,r){var o=1/Math.tan(e),i=1/(n-r),a=(r+n)*i,s=2*(r*n*i);return[o/t,0,0,0,0,o,0,0,0,0,a,-1,0,0,s,0]},createTranslate2d:function(e,t){var n=i.createIdentityMatrix();return i.reuseTranslate2dCommand(n,e,t),n},reuseTranslate2dCommand:function(e,t,n){e[12]=t,e[13]=n},reuseTranslate3dCommand:function(e,t,n,r){e[12]=t,e[13]=n,e[14]=r},createScale:function(e){var t=i.createIdentityMatrix();return i.reuseScaleCommand(t,e),t},reuseScaleCommand:function(e,t){e[0]=t,e[5]=t},reuseScale3dCommand:function(e,t,n,r){e[0]=t,e[5]=n,e[10]=r},reusePerspectiveCommand:function(e,t){e[11]=-1/t},reuseScaleXCommand:function(e,t){e[0]=t},reuseScaleYCommand:function(e,t){e[5]=t},reuseScaleZCommand:function(e,t){e[10]=t},reuseRotateXCommand:function(e,t){e[5]=Math.cos(t),e[6]=Math.sin(t),e[9]=-Math.sin(t),e[10]=Math.cos(t)},reuseRotateYCommand:function(e,t){e[0]=Math.cos(t),e[2]=-Math.sin(t),e[8]=Math.sin(t),e[10]=Math.cos(t)},reuseRotateZCommand:function(e,t){e[0]=Math.cos(t),e[1]=Math.sin(t),e[4]=-Math.sin(t),e[5]=Math.cos(t)},createRotateZ:function(e){var t=i.createIdentityMatrix();return i.reuseRotateZCommand(t,e),t},reuseSkewXCommand:function(e,t){e[4]=Math.sin(t),e[5]=Math.cos(t)},reuseSkewYCommand:function(e,t){e[0]=Math.cos(t),e[1]=Math.sin(t)},multiplyInto:function(e,t,n){var r=t[0],o=t[1],i=t[2],a=t[3],s=t[4],u=t[5],c=t[6],l=t[7],p=t[8],h=t[9],d=t[10],f=t[11],v=t[12],m=t[13],g=t[14],y=t[15],_=n[0],b=n[1],S=n[2],E=n[3];e[0]=_*r+b*s+S*p+E*v,e[1]=_*o+b*u+S*h+E*m,e[2]=_*i+b*c+S*d+E*g,e[3]=_*a+b*l+S*f+E*y,_=n[4],b=n[5],S=n[6],E=n[7],e[4]=_*r+b*s+S*p+E*v,e[5]=_*o+b*u+S*h+E*m,e[6]=_*i+b*c+S*d+E*g,e[7]=_*a+b*l+S*f+E*y,_=n[8],b=n[9],S=n[10],E=n[11],e[8]=_*r+b*s+S*p+E*v,e[9]=_*o+b*u+S*h+E*m,e[10]=_*i+b*c+S*d+E*g,e[11]=_*a+b*l+S*f+E*y,_=n[12],b=n[13],S=n[14],E=n[15],e[12]=_*r+b*s+S*p+E*v,e[13]=_*o+b*u+S*h+E*m,e[14]=_*i+b*c+S*d+E*g,e[15]=_*a+b*l+S*f+E*y},determinant:function(e){var t=e[0],n=e[1],r=e[2],o=e[3],i=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],p=e[10],h=e[11],d=e[12],f=e[13],v=e[14],m=e[15];return o*s*l*d-r*u*l*d-o*a*p*d+n*u*p*d+r*a*h*d-n*s*h*d-o*s*c*f+r*u*c*f+o*i*p*f-t*u*p*f-r*i*h*f+t*s*h*f+o*a*c*v-n*u*c*v-o*i*l*v+t*u*l*v+n*i*h*v-t*a*h*v-r*a*c*m+n*s*c*m+r*i*l*m-t*s*l*m-n*i*p*m+t*a*p*m},inverse:function(e){var t=i.determinant(e);if(!t)return e;var n=e[0],r=e[1],o=e[2],a=e[3],s=e[4],u=e[5],c=e[6],l=e[7],p=e[8],h=e[9],d=e[10],f=e[11],v=e[12],m=e[13],g=e[14],y=e[15];return[(c*f*m-l*d*m+l*h*g-u*f*g-c*h*y+u*d*y)/t,(a*d*m-o*f*m-a*h*g+r*f*g+o*h*y-r*d*y)/t,(o*l*m-a*c*m+a*u*g-r*l*g-o*u*y+r*c*y)/t,(a*c*h-o*l*h-a*u*d+r*l*d+o*u*f-r*c*f)/t,(l*d*v-c*f*v-l*p*g+s*f*g+c*p*y-s*d*y)/t,(o*f*v-a*d*v+a*p*g-n*f*g-o*p*y+n*d*y)/t,(a*c*v-o*l*v-a*s*g+n*l*g+o*s*y-n*c*y)/t,(o*l*p-a*c*p+a*s*d-n*l*d-o*s*f+n*c*f)/t,(u*f*v-l*h*v+l*p*m-s*f*m-u*p*y+s*h*y)/t,(a*h*v-r*f*v-a*p*m+n*f*m+r*p*y-n*h*y)/t,(r*l*v-a*u*v+a*s*m-n*l*m-r*s*y+n*u*y)/t,(a*u*p-r*l*p-a*s*h+n*l*h+r*s*f-n*u*f)/t,(c*h*v-u*d*v-c*p*m+s*d*m+u*p*g-s*h*g)/t,(r*d*v-o*h*v+o*p*m-n*d*m-r*p*g+n*h*g)/t,(o*u*v-r*c*v-o*s*m+n*c*m+r*s*g-n*u*g)/t,(r*c*p-o*u*p+o*s*h-n*c*h-r*s*d+n*u*d)/t]},transpose:function(e){return[e[0],e[4],e[8],e[12],e[1],e[5],e[9],e[13],e[2],e[6],e[10],e[14],e[3],e[7],e[11],e[15]]},multiplyVectorByMatrix:function(e,t){var n=e[0],r=e[1],o=e[2],i=e[3];return[n*t[0]+r*t[4]+o*t[8]+i*t[12],n*t[1]+r*t[5]+o*t[9]+i*t[13],n*t[2]+r*t[6]+o*t[10]+i*t[14],n*t[3]+r*t[7]+o*t[11]+i*t[15]]},v3Length:function(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2])},v3Normalize:function(e,t){var n=1/(t||i.v3Length(e));return[e[0]*n,e[1]*n,e[2]*n]},v3Dot:function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]},v3Combine:function(e,t,n,r){return[n*e[0]+r*t[0],n*e[1]+r*t[1],n*e[2]+r*t[2]]},v3Cross:function(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]},quaternionToDegreesXYZ:function(e,t,n){var r=e[0],o=e[1],a=e[2],s=e[3],u=s*s,c=r*r,l=o*o,p=a*a,h=r*o+a*s,d=u+c+l+p,f=180/Math.PI;return h>.49999*d?[0,2*Math.atan2(r,s)*f,90]:-.49999*d>h?[0,-2*Math.atan2(r,s)*f,-90]:[i.roundTo3Places(Math.atan2(2*r*s-2*o*a,1-2*c-2*p)*f),i.roundTo3Places(Math.atan2(2*o*s-2*r*a,1-2*l-2*p)*f),i.roundTo3Places(Math.asin(2*r*o+2*a*s)*f)]},roundTo3Places:function(e){var t=e.toString().split("e");return.001*Math.round(t[0]+"e"+(t[1]?+t[1]-3:3))},decomposeMatrix:function(e){o(16===e.length,"Matrix decomposition needs a list of 3d matrix values, received %s",e);var t=[],n=[],r=[],a=[],s=[];if(e[15]){for(var u=[],c=[],l=0;4>l;l++){u.push([]);for(var p=0;4>p;p++){var h=e[4*l+p]/e[15];u[l].push(h),c.push(3===p?0:h)}}if(c[15]=1,i.determinant(c)){if(0!==u[0][3]||0!==u[1][3]||0!==u[2][3])var d=[u[0][3],u[1][3],u[2][3],u[3][3]],f=i.inverse3x3(c),v=i.transpose4x4(f),t=i.multiplyVectorByMatrix(d,v);else t[0]=t[1]=t[2]=0,t[3]=1;for(var l=0;3>l;l++)s[l]=u[3][l];var m=[];for(l=0;3>l;l++)m[l]=[u[l][0],u[l][1],u[l][2]];r[0]=i.v3Length(m[0]),m[0]=i.v3Normalize(m[0],r[0]),a[0]=i.v3Dot(m[0],m[1]),m[1]=i.v3Combine(m[1],m[0],1,-a[0]),a[0]=i.v3Dot(m[0],m[1]),m[1]=i.v3Combine(m[1],m[0],1,-a[0]),r[1]=i.v3Length(m[1]),m[1]=i.v3Normalize(m[1],r[1]),a[0]/=r[1],a[1]=i.v3Dot(m[0],m[2]),m[2]=i.v3Combine(m[2],m[0],1,-a[1]),a[2]=i.v3Dot(m[1],m[2]),m[2]=i.v3Combine(m[2],m[1],1,-a[2]),r[2]=i.v3Length(m[2]),m[2]=i.v3Normalize(m[2],r[2]),a[1]/=r[2],a[2]/=r[2];var g=i.v3Cross(m[1],m[2]);if(i.v3Dot(m[0],g)<0)for(l=0;3>l;l++)r[l]*=-1,m[l][0]*=-1,m[l][1]*=-1,m[l][2]*=-1;n[0]=.5*Math.sqrt(Math.max(1+m[0][0]-m[1][1]-m[2][2],0)),n[1]=.5*Math.sqrt(Math.max(1-m[0][0]+m[1][1]-m[2][2],0)),n[2]=.5*Math.sqrt(Math.max(1-m[0][0]-m[1][1]+m[2][2],0)),n[3]=.5*Math.sqrt(Math.max(1+m[0][0]+m[1][1]+m[2][2],0)),m[2][1]>m[1][2]&&(n[0]=-n[0]),m[0][2]>m[2][0]&&(n[1]=-n[1]),m[1][0]>m[0][1]&&(n[2]=-n[2]);var y;return y=n[0]<.001&&n[0]>=0&&n[1]<.001&&n[1]>=0?[0,0,i.roundTo3Places(180*Math.atan2(m[0][1],m[0][0])/Math.PI)]:i.quaternionToDegreesXYZ(n,u,m),{rotationDegrees:y,perspective:t,quaternion:n,scale:r,skew:a,translation:s,rotate:y[2],scaleX:r[0],scaleY:r[1],translateX:s[0],translateY:s[1]}}}}};n.exports=i}),__d("sizesDiffer",[],function(e,t,n,r){"use strict";var o={width:void 0,height:void 0},i=function(e,t){return e=e||o,t=t||o,e!==t&&(e.width!==t.width||e.height!==t.height)};n.exports=i}),__d("ReactMultiChild",["ReactComponentEnvironment","ReactMultiChildUpdateTypes","ReactReconciler","ReactChildReconciler"],function(e,t,n,r){"use strict";function o(e,t,n){v.push({parentID:e,parentNode:null,type:p.INSERT_MARKUP,markupIndex:m.push(t)-1,textContent:null,fromIndex:null,toIndex:n})}function i(e,t,n){v.push({parentID:e,parentNode:null,type:p.MOVE_EXISTING,markupIndex:null,textContent:null,fromIndex:t,toIndex:n})}function a(e,t){v.push({parentID:e,parentNode:null,type:p.REMOVE_NODE,markupIndex:null,textContent:null,fromIndex:t,toIndex:null})}function s(e,t){v.push({parentID:e,parentNode:null,type:p.TEXT_CONTENT,markupIndex:null,textContent:t,fromIndex:null,toIndex:null})}function u(){v.length&&(l.processChildrenUpdates(v,m),c())}function c(){v.length=0,m.length=0}var l=t("ReactComponentEnvironment"),p=t("ReactMultiChildUpdateTypes"),h=t("ReactReconciler"),d=t("ReactChildReconciler"),f=0,v=[],m=[],g={Mixin:{mountChildren:function(e,t,n){var r=d.instantiateChildren(e,t,n);this._renderedChildren=r;var o=[],i=0;for(var a in r)if(r.hasOwnProperty(a)){var s=r[a],u=this._rootNodeID+a,c=h.mountComponent(s,u,t,n);s._mountIndex=i,o.push(c),i++}return o},updateTextContent:function(e){f++;var t=!0;try{var n=this._renderedChildren;d.unmountChildren(n);for(var r in n)n.hasOwnProperty(r)&&this._unmountChildByName(n[r],r);this.setTextContent(e),t=!1}finally{f--,f||(t?c():u())}},updateChildren:function(e,t,n){f++;var r=!0;try{this._updateChildren(e,t,n),r=!1}finally{f--,f||(r?c():u())}},_updateChildren:function(e,t,n){var r=this._renderedChildren,o=d.updateChildren(r,e,t,n);if(this._renderedChildren=o,o||r){var i,a=0,s=0;for(i in o)if(o.hasOwnProperty(i)){var u=r&&r[i],c=o[i];u===c?(this.moveChild(u,s,a),a=Math.max(u._mountIndex,a),u._mountIndex=s):(u&&(a=Math.max(u._mountIndex,a),this._unmountChildByName(u,i)),this._mountChildByNameAtIndex(c,i,s,t,n)),s++}for(i in r)!r.hasOwnProperty(i)||o&&o.hasOwnProperty(i)||this._unmountChildByName(r[i],i)}},unmountChildren:function(){var e=this._renderedChildren;d.unmountChildren(e),this._renderedChildren=null},moveChild:function(e,t,n){e._mountIndex=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=t("NativeMethodsMixin"),a=t("ReactPropTypes"),s=t("React"),u=t("StyleSheet"),c=t("View"),l=t("requireNativeComponent"),p="#999999",h=s.createClass({displayName:"ActivityIndicatorIOS",mixins:[i],propTypes:{animating:a.bool,color:a.string,hidesWhenStopped:a.bool,size:a.oneOf(["small","large"]),onLayout:a.func},getDefaultProps:function(){return{animating:!0,color:p,hidesWhenStopped:!0,size:"small"}},render:function(){var e=this.props,t=e.onLayout,n=e.style,r=o(e,["onLayout","style"]),i="large"===this.props.size?d.sizeLarge:d.sizeSmall;return s.createElement(c,{onLayout:t,style:[d.container,i,n]},s.createElement(f,r))}}),d=u.create({container:{alignItems:"center",justifyContent:"center"},sizeSmall:{width:20,height:20},sizeLarge:{width:36,height:36}}),f=l("RCTActivityIndicatorView",h,{nativeOnly:{activityIndicatorViewStyle:!0}});n.exports=h}),__d("StyleSheet",["StyleSheetRegistry","StyleSheetValidation"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n>")+": "+JSON.stringify(t,null," ")+(r||""))},d={};p.addValidStylePropTypes(a),p.addValidStylePropTypes(u),p.addValidStylePropTypes(c),n.exports=p}),__d("View",["NativeMethodsMixin","ReactPropTypes","NativeModules","React","ReactNativeStyleAttributes","ReactNativeViewAttributes","StyleSheetPropType","ViewStylePropTypes","createReactNativeComponentClass"],function(e,t,n,r){"use strict";var o=t("NativeMethodsMixin"),i=t("ReactPropTypes"),a=t("NativeModules").UIManager,s=t("React"),u=t("ReactNativeStyleAttributes"),c=t("ReactNativeViewAttributes"),l=t("StyleSheetPropType"),p=t("ViewStylePropTypes"),h=t("createReactNativeComponentClass"),d=l(p),f=["none","button","link","header","search","image","selected","plays","key","text","summary","disabled","frequentUpdates","startsMedia","adjustable","allowsDirectInteraction","pageTurn"],v=["none","button","radiobutton_checked","radiobutton_unchecked"],m=s.createClass({displayName:"View",mixins:[o],viewConfig:{uiViewClassName:"RCTView",validAttributes:c.RCTView},statics:{AccessibilityTraits:f,AccessibilityComponentType:v},propTypes:{accessible:i.bool,accessibilityLabel:i.string,accessibilityComponentType:i.oneOf(v),accessibilityLiveRegion:i.oneOf(["none","polite","assertive"]),importantForAccessibility:i.oneOf(["auto","yes","no","no-hide-descendants"]),accessibilityTraits:i.oneOfType([i.oneOf(f),i.arrayOf(i.oneOf(f))]),onAccessibilityTap:i.func,onMagicTap:i.func,testID:i.string,onMoveShouldSetResponder:i.func,onResponderGrant:i.func,onResponderMove:i.func,onResponderReject:i.func,onResponderRelease:i.func,onResponderTerminate:i.func,onResponderTerminationRequest:i.func,onStartShouldSetResponder:i.func,onStartShouldSetResponderCapture:i.func,onLayout:i.func,pointerEvents:i.oneOf(["box-none","none","box-only","auto"]),style:d,removeClippedSubviews:i.bool,renderToHardwareTextureAndroid:i.bool,shouldRasterizeIOS:i.bool,collapsable:i.bool,needsOffscreenAlphaCompositing:i.bool},render:function(){return s.createElement(g,this.props)}}),g=h({validAttributes:c.RCTView,uiViewClassName:"RCTView"});if(g.propTypes=m.propTypes,__DEV__){var y=a.viewConfigs&&a.viewConfigs.RCTView||{};for(var _ in y.nativeProps){var b=m;if(!b.propTypes[_]&&!u[_])throw new Error("View is missing propType for native prop `"+_+"`")}}var S=g;__DEV__&&(S=m),n.exports=S}),__d("ReactNativeViewAttributes",["ReactNativeStyleAttributes"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t=t)return e[n];return e[e.length-1]||1}function l(e){if("object"==typeof e)return e;var t=d.getAssetByID(e);return t?p(t):null}function p(e){var t=o();return t?{__packager_asset:!0,width:e.width,height:e.height,uri:a(t,e),isStatic:!1,scale:c(e.scales,f.get())}:{__packager_asset:!0,width:e.width,height:e.height,uri:i(e),isStatic:!0}}var h,d=t("AssetRegistry"),f=t("PixelRatio"),v=t("Platform"),m=t("NativeModules").SourceCode;n.exports=l,n.exports.pickScale=c}),__d("AssetRegistry",[],function(e,t,n,r){"use strict";function o(e){return a.push(e)}function i(e){return a[e-1]}Object.defineProperty(r,"__esModule",{value:!0});var a=[];n.exports={registerAsset:o,getAssetByID:i}}),__d("PixelRatio",["Dimensions"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=this.state.prevRenderedRowsCount&&t.sectionHeaderShouldUpdate(l);e.push(s.createElement(h,{key:"s_"+p,shouldUpdate:!!f,render:this.props.renderSectionHeader.bind(null,t.getSectionHeaderData(l),p)})),i.push(c++)}for(var v=0;v=this.state.prevRenderedRowsCount&&t.rowShouldUpdate(l,v),_=s.createElement(h,{key:"r_"+g,shouldUpdate:!!y,render:this.props.renderRow.bind(null,t.getRowData(l,v),p,m,this.onRowHighlighted)});if(e.push(_),c++,this.props.renderSeparator&&(v!==d.length-1||l===n.length-1)){var b=this.state.highlightedRow.sectionID===p&&(this.state.highlightedRow.rowID===m||this.state.highlightedRow.rowID===d[v+1]),S=this.props.renderSeparator(p,m,b);e.push(S),c++}if(++r===this.state.curRenderedRowsCount)break}if(r>=this.state.curRenderedRowsCount)break}}var w=this.props,T=w.renderScrollComponent,C=o(w,["renderScrollComponent"]);return C.scrollEventThrottle||(C.scrollEventThrottle=E),Object.assign(C,{onScroll:this._onScroll,stickyHeaderIndices:i,onKeyboardWillShow:void 0,onKeyboardWillHide:void 0,onKeyboardDidShow:void 0,onKeyboardDidHide:void 0}),s.cloneElement(T(C),{ref:R},a,e,u)},_measureAndUpdateScrollProps:function(){var e=this.getScrollResponder();e&&e.getInnerViewNode&&(u.measureLayout(e.getInnerViewNode(),s.findNodeHandle(e),v,this._setScrollContentLength),u.measureLayoutRelativeToParent(s.findNodeHandle(e),v,this._setScrollVisibleLength),c&&c.calculateChildFrames&&c.calculateChildFrames(s.findNodeHandle(e),this._updateChildFrames))},_setScrollContentLength:function(e,t,n,r){this.scrollProperties.contentLength=this.props.horizontal?n:r},_setScrollVisibleLength:function(e,t,n,r){this.scrollProperties.visibleLength=this.props.horizontal?n:r,this._updateVisibleRows(),this._renderMoreRowsIfNeeded()},_updateChildFrames:function(e){this._updateVisibleRows(e)},_maybeCallOnEndReached:function(e){return this.props.onEndReached&&this.scrollProperties.contentLength!==this._sentEndForContentLength&&this._getDistanceFromEnd(this.scrollProperties)i||o>E?b&&(c=!0,delete v[y],l[d]||(l[d]={}),l[d][y]=!1):b||(c=!0,v[y]=!0,l[d]||(l[d]={}),l[d][y]=!0)}f(v)?this._visibleRows[d]&&delete this._visibleRows[d]:this._visibleRows[d]=v}}c&&this.props.onChangeVisibleRows(this._visibleRows,l)}},_onScroll:function(e){var t=!this.props.horizontal;this.scrollProperties.visibleLength=e.nativeEvent.layoutMeasurement[t?"height":"width"],this.scrollProperties.contentLength=e.nativeEvent.contentSize[t?"height":"width"],this.scrollProperties.offset=e.nativeEvent.contentOffset[t?"y":"x"],this._updateVisibleRows(e.nativeEvent.updatedChildFrames),this._maybeCallOnEndReached(e)||this._renderMoreRowsIfNeeded(),this.props.onScroll&&this.props.onScroll(e)}});n.exports=w}),__d("ListViewDataSource",["invariant","isEmpty","warning"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t,n){return e[t][n]}function a(e,t){return e[t]}function s(e){for(var t=0,n=0;n=this.rowIdentities[n].length))return this.rowIdentities[n][t];t-=this.rowIdentities[n].length}return null}},{key:"getSectionIDForFlatIndex",value:function(e){for(var t=e,n=0;n=this.rowIdentities[n].length))return this.sectionIdentities[n];t-=this.rowIdentities[n].length}return null}},{key:"getSectionLengths",value:function(){for(var e=[],t=0;t but not `scrollEventThrottle`. You will only receive one event. Using `16` you get all the events but be aware that it may cause frame drops, use a bigger number if you don't need as much precision."),"android"===a.OS&&"on-drag"===this.props.keyboardDismissMode&&y(),this.scrollResponderHandleScroll(e)},render:function(){var e=[this.props.horizontal&&I.contentContainerHorizontal,this.props.contentContainerStyle];if(__DEV__&&this.props.style){var t=_(this.props.style),n=["alignItems","justifyContent"].filter(function(e){return t&&void 0!==t[e]});S(0===n.length,"ScrollView child layout ("+JSON.stringify(n)+") must by applied through the contentContainerStyle prop.")}var r,i=c.createElement(f,{ref:C,style:e,removeClippedSubviews:this.props.removeClippedSubviews,collapsable:!1},this.props.children),s=void 0!==this.props.alwaysBounceHorizontal?this.props.alwaysBounceHorizontal:this.props.horizontal,l=void 0!==this.props.alwaysBounceVertical?this.props.alwaysBounceVertical:!this.props.horizontal,p=o({},this.props,{alwaysBounceHorizontal:s,alwaysBounceVertical:l,style:[I.base,this.props.style],onTouchStart:this.scrollResponderHandleTouchStart,onTouchMove:this.scrollResponderHandleTouchMove,onTouchEnd:this.scrollResponderHandleTouchEnd,onScrollBeginDrag:this.scrollResponderHandleScrollBeginDrag,onScrollEndDrag:this.scrollResponderHandleScrollEndDrag,onMomentumScrollBegin:this.scrollResponderHandleMomentumScrollBegin,onMomentumScrollEnd:this.scrollResponderHandleMomentumScrollEnd,onStartShouldSetResponder:this.scrollResponderHandleStartShouldSetResponder,onStartShouldSetResponderCapture:this.scrollResponderHandleStartShouldSetResponderCapture,onScrollShouldSetResponder:this.scrollResponderHandleScrollShouldSetResponder,onScroll:this.handleScroll,onResponderGrant:this.scrollResponderHandleResponderGrant,onResponderTerminationRequest:this.scrollResponderHandleTerminationRequest,onResponderTerminate:this.scrollResponderHandleTerminate,onResponderRelease:this.scrollResponderHandleResponderRelease,onResponderReject:this.scrollResponderHandleResponderReject});return"ios"===a.OS?r=u:"android"===a.OS&&(r=this.props.horizontal?N:P),S(void 0!==r,"ScrollViewClass must not be undefined"),c.createElement(r,o({},p,{ref:T}),i)}}),I=h.create({base:{flex:1},contentContainerHorizontal:{alignSelf:"flex-start",flexDirection:"row"}}),x=o({},l.UIView,{alwaysBounceHorizontal:!0,alwaysBounceVertical:!0,automaticallyAdjustContentInsets:!0,bounces:!0,centerContent:!0,contentInset:{diff:b},contentOffset:{diff:E},decelerationRate:!0,horizontal:!0,keyboardDismissMode:!0,keyboardShouldPersistTaps:!0,maximumZoomScale:!0,minimumZoomScale:!0,pagingEnabled:!0,removeClippedSubviews:!0,scrollEnabled:!0,scrollIndicatorInsets:{diff:b},scrollsToTop:!0,showsHorizontalScrollIndicator:!0,showsVerticalScrollIndicator:!0,snapToInterval:!0,snapToAlignment:!0,stickyHeaderIndices:{diff:g},scrollEventThrottle:!0,zoomScale:!0});if("android"===a.OS)var P=m({validAttributes:x,uiViewClassName:"RCTScrollView"}),N=m({validAttributes:x,uiViewClassName:"AndroidHorizontalScrollView"});else if("ios"===a.OS)var u=R("RCTScrollView",O);n.exports=O}),__d("PointPropType",["ReactPropTypes","createStrictShapeTypeChecker"],function(e,t,n,r){"use strict";var o=t("ReactPropTypes"),i=t("createStrictShapeTypeChecker"),a=i({x:o.number,y:o.number});n.exports=a}),__d("ScrollResponder",["NativeModules","Platform","RCTDeviceEventEmitter","React","Subscribable","TextInputState","warning"],function(e,t,n,r){"use strict";var o=t("NativeModules"),i=t("Platform"),a=t("RCTDeviceEventEmitter"),s=t("React"),u=t("Subscribable"),c=t("TextInputState"),l=o.UIManager,p=l.RCTScrollView.Constants,h=t("warning"),d=16,f={mixins:[u.Mixin],statics:p,scrollResponderMixinGetInitialState:function(){return{isTouching:!1,lastMomentumScrollBeginTime:0,lastMomentumScrollEndTime:0,observedScrollSinceBecomingResponder:!1,becameResponderWhileAnimating:!1}},scrollResponderHandleScrollShouldSetResponder:function(){return this.state.isTouching},scrollResponderHandleStartShouldSetResponder:function(){return!1},scrollResponderHandleStartShouldSetResponderCapture:function(e){var t=c.currentlyFocusedField();return this.props.keyboardShouldPersistTaps||null==t||e.target===t?this.scrollResponderIsAnimating():!0},scrollResponderHandleResponderReject:function(){h(!1,"ScrollView doesn't take rejection well - scrolls anyway")},scrollResponderHandleTerminationRequest:function(){return!this.state.observedScrollSinceBecomingResponder},scrollResponderHandleTouchEnd:function(e){var t=e.nativeEvent;this.state.isTouching=0!==t.touches.length,this.props.onTouchEnd&&this.props.onTouchEnd(e)},scrollResponderHandleResponderRelease:function(e){this.props.onResponderRelease&&this.props.onResponderRelease(e);var t=c.currentlyFocusedField();this.props.keyboardShouldPersistTaps||null==t||e.target===t||this.state.observedScrollSinceBecomingResponder||this.state.becameResponderWhileAnimating||(this.props.onScrollResponderKeyboardDismissed&&this.props.onScrollResponderKeyboardDismissed(e),c.blurTextInput(t))},scrollResponderHandleScroll:function(e){this.state.observedScrollSinceBecomingResponder=!0,this.props.onScroll&&this.props.onScroll(e)},scrollResponderHandleResponderGrant:function(e){this.state.observedScrollSinceBecomingResponder=!1,this.props.onResponderGrant&&this.props.onResponderGrant(e),this.state.becameResponderWhileAnimating=this.scrollResponderIsAnimating()},scrollResponderHandleScrollBeginDrag:function(e){this.props.onScrollBeginDrag&&this.props.onScrollBeginDrag(e)},scrollResponderHandleScrollEndDrag:function(e){this.props.onScrollEndDrag&&this.props.onScrollEndDrag(e)},scrollResponderHandleMomentumScrollBegin:function(e){this.state.lastMomentumScrollBeginTime=Date.now(),this.props.onMomentumScrollBegin&&this.props.onMomentumScrollBegin(e)},scrollResponderHandleMomentumScrollEnd:function(e){this.state.lastMomentumScrollEndTime=Date.now(),this.props.onMomentumScrollEnd&&this.props.onMomentumScrollEnd(e)},scrollResponderHandleTouchStart:function(e){this.state.isTouching=!0,this.props.onTouchStart&&this.props.onTouchStart(e)},scrollResponderHandleTouchMove:function(e){this.props.onTouchMove&&this.props.onTouchMove(e)},scrollResponderIsAnimating:function(){var e=Date.now(),t=e-this.state.lastMomentumScrollEndTime,n=d>t||this.state.lastMomentumScrollEndTime=1,"Navigator requires props.initialRoute or props.initialRouteStack.");var n=t.length-1;return this.props.initialRoute&&(n=t.indexOf(this.props.initialRoute),R(-1!==n,"initialRoute is not in initialRouteStack.")),{sceneConfigStack:t.map(function(t){return e.props.configureScene(t)}),routeStack:t,presentedIndex:n,transitionFromIndex:null,activeGesture:null,pendingGestureProgress:null,transitionQueue:[]}},componentWillMount:function(){var e=this;this.__defineGetter__("navigationContext",this._getNavigationContext),this._subRouteFocus=[],this.parentNavigator=this.props.navigator,this._handlers={},this.springSystem=new w.SpringSystem,this.spring=this.springSystem.createSpring(),this.spring.setRestSpeedThreshold(.05),this.spring.setCurrentValue(0).setAtRest(),this.spring.addListener({onSpringEndStateChange:function(){e._interactionHandle||(e._interactionHandle=e.createInteractionHandle())},onSpringUpdate:function(){e._handleSpringUpdate()},onSpringAtRest:function(){e._completeTransition()}}),this.panGesture=v.create({onMoveShouldSetPanResponder:this._handleMoveShouldSetPanResponder,onPanResponderGrant:this._handlePanResponderGrant,onPanResponderRelease:this._handlePanResponderRelease,onPanResponderMove:this._handlePanResponderMove,onPanResponderTerminate:this._handlePanResponderTerminate}),this._interactionHandle=null,this._emitWillFocus(this.state.routeStack[this.state.presentedIndex])},componentDidMount:function(){this._handleSpringUpdate(),this._emitDidFocus(this.state.routeStack[this.state.presentedIndex])},componentWillUnmount:function(){this._navigationContext&&(this._navigationContext.dispose(),this._navigationContext=null)},immediatelyResetRouteStack:function(e){var t=this,n=e.length-1;this.setState({routeStack:e,sceneConfigStack:e.map(this.props.configureScene),presentedIndex:n,activeGesture:null,transitionFromIndex:null, -transitionQueue:[]},function(){t._handleSpringUpdate()})},_transitionTo:function(e,t,n,r){if(e!==this.state.presentedIndex){if(null!==this.state.transitionFromIndex)return void this.state.transitionQueue.push({destIndex:e,velocity:t,cb:r});this.state.transitionFromIndex=this.state.presentedIndex,this.state.presentedIndex=e,this.state.transitionCb=r,this._onAnimationStart(),s&&s.startRecordingFps();var o=this.state.sceneConfigStack[this.state.transitionFromIndex]||this.state.sceneConfigStack[this.state.presentedIndex];R(o,"Cannot configure scene at index "+this.state.transitionFromIndex),null!=n&&this.spring.setCurrentValue(n),this.spring.setOvershootClampingEnabled(!0),this.spring.getSpringConfig().friction=o.springFriction,this.spring.getSpringConfig().tension=o.springTension,this.spring.setVelocity(t||o.defaultTransitionVelocity),this.spring.setEndValue(1)}},_handleSpringUpdate:function(){if(null!=this.state.transitionFromIndex)this._transitionBetween(this.state.transitionFromIndex,this.state.presentedIndex,this.spring.getCurrentValue());else if(null!=this.state.activeGesture){var e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._transitionBetween(this.state.presentedIndex,e,this.spring.getCurrentValue())}},_completeTransition:function(){if(1!==this.spring.getCurrentValue()&&0!==this.spring.getCurrentValue())return void(this.state.pendingGestureProgress&&(this.state.pendingGestureProgress=null));this._onAnimationEnd();var e=this.state.presentedIndex,t=this._subRouteFocus[e]||this.state.routeStack[e];if(this._emitDidFocus(t),s&&s.stopRecordingFps(Date.now()),this.state.transitionFromIndex=null,this.spring.setCurrentValue(0).setAtRest(),this._hideScenes(),this.state.transitionCb&&(this.state.transitionCb(),this.state.transitionCb=null),this._interactionHandle&&(this.clearInteractionHandle(this._interactionHandle),this._interactionHandle=null),this.state.pendingGestureProgress){var n=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._enableScene(n),void this.spring.setEndValue(this.state.pendingGestureProgress)}if(this.state.transitionQueue.length){var r=this.state.transitionQueue.shift();this._enableScene(r.destIndex),this._emitWillFocus(this.state.routeStack[r.destIndex]),this._transitionTo(r.destIndex,r.velocity,null,r.cb)}},_emitDidFocus:function(e){this.navigationContext.emit("didfocus",{route:e}),this.props.onDidFocus&&this.props.onDidFocus(e)},_emitWillFocus:function(e){this.navigationContext.emit("willfocus",{route:e});var t=this._navBar;t&&t.handleWillFocus&&t.handleWillFocus(e),this.props.onWillFocus&&this.props.onWillFocus(e)},_hideScenes:function(){var e=null;this.state.activeGesture&&(e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture));for(var t=0;t=t;t++)this._setRenderSceneToHardwareTextureAndroid(t,!1);var n=this._navBar;n&&n.onAnimationEnd&&n.onAnimationEnd()},_setRenderSceneToHardwareTextureAndroid:function(e,t){var n=this.refs["scene_"+e];null!==n&&void 0!==n&&n.setNativeProps({renderToHardwareTextureAndroid:t})},_handleTouchStart:function(){this._eligibleGestures=N},_handleMoveShouldSetPanResponder:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];return this._expectingGestureGrant=this._matchGestureAction(this._eligibleGestures,n.gestures,t),!!this._expectingGestureGrant},_doesGestureOverswipe:function(e){var t=this.state.presentedIndex<=0&&("pop"===e||"jumpBack"===e),n=this.state.presentedIndex>=this.state.routeStack.length-1&&"jumpForward"===e;return n||t},_handlePanResponderGrant:function(e,t){R(this._expectingGestureGrant,"Responder granted unexpectedly."),this._attachGesture(this._expectingGestureGrant),this._onAnimationStart(),this._expectingGestureGrant=null},_deltaForGestureAction:function(e){switch(e){case"pop":case"jumpBack":return-1;case"jumpForward":return 1;default:return void R(!1,"Unsupported gesture action "+e)}},_handlePanResponderRelease:function(e,t){var n=this,r=this.state.sceneConfigStack[this.state.presentedIndex],o=this.state.activeGesture;if(o){var i=r.gestures[o],a=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);if(0===this.spring.getCurrentValue())return this.spring.setCurrentValue(0).setAtRest(),void this._completeTransition();var s,u,c="top-to-bottom"===i.direction||"bottom-to-top"===i.direction,l="right-to-left"===i.direction||"bottom-to-top"===i.direction;c?(s=l?-t.vy:t.vy,u=l?-t.dy:t.dy):(s=l?-t.vx:t.vx,u=l?-t.dx:t.dx);var p=S(-10,s,10);if(Math.abs(s)i.fullDistance*i.stillCompletionRatio;p=h?i.snapVelocity:-i.snapVelocity}if(0>p||this._doesGestureOverswipe(o)){if(null==this.state.transitionFromIndex){var d=this.state.presentedIndex;this.state.presentedIndex=a,this._transitionTo(d,-p,1-this.spring.getCurrentValue())}}else this._emitWillFocus(this.state.routeStack[a]),this._transitionTo(a,p,null,function(){"pop"===o&&n._cleanScenesPastIndex(a)});this._detachGesture()}},_handlePanResponderTerminate:function(e,t){if(null!=this.state.activeGesture){var n=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._detachGesture();var r=this.state.presentedIndex;this.state.presentedIndex=n,this._transitionTo(r,null,1-this.spring.getCurrentValue())}},_attachGesture:function(e){this.state.activeGesture=e;var t=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._enableScene(t)},_detachGesture:function(){this.state.activeGesture=null,this.state.pendingGestureProgress=null,this._hideScenes()},_handlePanResponderMove:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];if(this.state.activeGesture){var r=n.gestures[this.state.activeGesture];return this._moveAttachedGesture(r,t)}var o=this._matchGestureAction(N,n.gestures,t);o&&this._attachGesture(o)},_moveAttachedGesture:function(e,t){var n="top-to-bottom"===e.direction||"bottom-to-top"===e.direction,r="right-to-left"===e.direction||"bottom-to-top"===e.direction,o=n?t.dy:t.dx;o=r?-o:o;var i=e.gestureDetectMovement,a=(o-i)/(e.fullDistance-i);if(0>a&&e.isDetachable){var s=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._transitionBetween(this.state.presentedIndex,s,0),this._detachGesture(),void(null!=this.state.pendingGestureProgress&&this.spring.setCurrentValue(0))}if(this._doesGestureOverswipe(this.state.activeGesture)){var u=e.overswipe.frictionConstant,c=e.overswipe.frictionByDistance,l=1/(u+Math.abs(a)*c);a*=l}a=S(0,a,1),null!=this.state.transitionFromIndex?this.state.pendingGestureProgress=a:this.state.pendingGestureProgress?this.spring.setEndValue(a):this.spring.setCurrentValue(a)},_matchGestureAction:function(e,t,n){var r=this;if(!t)return null;var o=null;return e.some(function(e,i){var a=t[e];if(a){if(null==a.overswipe&&r._doesGestureOverswipe(e))return!1;var s="top-to-bottom"===a.direction||"bottom-to-top"===a.direction,u="right-to-left"===a.direction||"bottom-to-top"===a.direction,c=s?n.moveY:n.moveX,l=s?n.dy:n.dx,p=s?n.dx:n.dy,h=a.edgeHitWidth;u&&(c=-c,l=-l,p=-p,h=s?-(O-h):-(C-h));var d=null==a.edgeHitWidth||h>c;if(!d)return!1;var f=l>=a.gestureDetectMovement;if(!f)return!1;var v=Math.abs(l)>Math.abs(p)*a.directionRatio;return v?(o=e,!0):void(r._eligibleGestures=r._eligibleGestures.slice().splice(i,1))}}),o},_transitionSceneStyle:function(e,t,n,r){var o=this.refs["scene_"+r];if(null!==o&&void 0!==o){var i=t>e?t:e,a=this.state.sceneConfigStack[i];a||(a=this.state.sceneConfigStack[i-1]);var s={},u=e>r||t>r?a.animationInterpolators.out:a.animationInterpolators.into,c=t>e?n:1-n,l=u(s,c);l&&o.setNativeProps({style:s})}},_transitionBetween:function(e,t,n){this._transitionSceneStyle(e,t,n,e),this._transitionSceneStyle(e,t,n,t);var r=this._navBar;r&&r.updateProgress&&t>=0&&e>=0&&r.updateProgress(n,e,t)},_handleResponderTerminationRequest:function(){return!1},_getDestIndexWithinBounds:function(e){var t=this.state.presentedIndex,n=t+e;R(n>=0,"Cannot jump before the first route.");var r=this.state.routeStack.length-1;return R(r>=n,"Cannot jump past the last route."),n},_jumpN:function(e){var t=this._getDestIndexWithinBounds(e);this._enableScene(t),this._emitWillFocus(this.state.routeStack[t]),this._transitionTo(t)},jumpTo:function(e){var t=this.state.routeStack.indexOf(e);R(-1!==t,"Cannot jump to route that is not in the route stack"),this._jumpN(t-this.state.presentedIndex)},jumpForward:function(){this._jumpN(1)},jumpBack:function(){this._jumpN(-1)},push:function(e){var t=this;R(!!e,"Must supply route to push");var n=this.state.presentedIndex+1,r=this.state.routeStack.slice(0,n),o=this.state.sceneConfigStack.slice(0,n),i=r.concat([e]),a=i.length-1,s=o.concat([this.props.configureScene(e)]);this._emitWillFocus(i[a]),this.setState({routeStack:i,sceneConfigStack:s},function(){t._enableScene(a),t._transitionTo(a)})},_popN:function(e){var t=this;if(0!==e){R(this.state.presentedIndex-e>=0,"Cannot pop below zero");var n=this.state.presentedIndex-e;this._enableScene(n),this._emitWillFocus(this.state.routeStack[n]),this._transitionTo(n,null,null,function(){t._cleanScenesPastIndex(n)})}},pop:function(){this.state.transitionQueue.length||this.state.presentedIndex>0&&this._popN(1)},replaceAtIndex:function(e,t,n){var r=this;if(R(!!e,"Must supply route to replace"),0>t&&(t+=this.state.routeStack.length),!(this.state.routeStack.length<=t)){var o=this.state.routeStack.slice(),i=this.state.sceneConfigStack.slice();o[t]=e,i[t]=this.props.configureScene(e),t===this.state.presentedIndex&&this._emitWillFocus(e),this.setState({routeStack:o,sceneConfigStack:i},function(){t===r.state.presentedIndex&&r._emitDidFocus(e),n&&n()})}},replace:function(e){this.replaceAtIndex(e,this.state.presentedIndex)},replacePrevious:function(e){this.replaceAtIndex(e,this.state.presentedIndex-1)},popToTop:function(){this.popToRoute(this.state.routeStack[0])},popToRoute:function(e){var t=this.state.routeStack.indexOf(e);R(-1!==t,"Calling popToRoute for a route that doesn't exist!");var n=this.state.presentedIndex-t;this._popN(n)},replacePreviousAndPop:function(e){this.state.routeStack.length<2||(this.replacePrevious(e),this.pop())},resetTo:function(e){var t=this;R(!!e,"Must supply route to push"),this.replaceAtIndex(e,0,function(){t.state.presentedIndex>0&&t._popN(t.state.presentedIndex)})},getCurrentRoutes:function(){return this.state.routeStack.slice()},_cleanScenesPastIndex:function(e){var t=e+1;t0?(r=this._list.pop(),r.constructor.call(r,e,t,n)):r=new c(e,t,n),r}},{key:"put",value:function(e){this._list.push(e)}}]),e}(),u=new s,c=function(){function e(t,n,r){o(this,e),this._type=t,this._target=n,this._data=r,this._defaultPrevented=!1,this._disposed=!1,this._propagationStopped=!1}return i(e,null,[{key:"pool",value:function(e,t,n){return u.get(e,t,n)}}]),i(e,[{key:"preventDefault",value:function(){this._defaultPrevented=!0}},{key:"stopPropagation",value:function(){this._propagationStopped=!0}},{key:"stop",value:function(){this.preventDefault(),this.stopPropagation()}},{key:"isPropagationStopped",value:function(){return this._propagationStopped}},{key:"dispose",value:function(){a(!this._disposed,"NavigationEvent is already disposed"),this._disposed=!0,this._type=null,this._target=null,this._data=null,this._defaultPrevented=!1,u.put(this)}},{key:"type",get:function(){return this._type}},{key:"target",get:function(){return this._target}},{key:"data",get:function(){return this._data}},{key:"defaultPrevented",get:function(){return this._defaultPrevented}}]),e}();n.exports=c}),__d("NavigationEventEmitter",["EventEmitter","NavigationEvent"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;ne?o.Left[e]:o.Right[e]},w=u.createClass({displayName:"NavigatorBreadcrumbNavigationBar",propTypes:{navigator:m.shape({push:m.func,pop:m.func,replace:m.func,popToRoute:m.func,popToTop:m.func}),routeMapper:m.shape({rightContentForRoute:m.func,titleContentForRoute:m.func,iconForRoute:m.func}),navState:u.PropTypes.shape({routeStack:u.PropTypes.arrayOf(u.PropTypes.object),presentedIndex:u.PropTypes.number}),style:l.propTypes.style},statics:{Styles:o},_updateIndexProgress:function(e,t,n,r){var o,i=r>n?e:1-e,a=t-n,s=t-r;d(f[t],"Cannot find breadcrumb interpolators for "+t),o=a>0&&0===s||s>0&&0===a?f[t].RightToCenter:0>a&&0===s||0>s&&0===a?f[t].CenterToLeft:a===s?f[t].RightToCenter:f[t].RightToLeft,o.Crumb(g[t].style,i)&&this._setPropsIfExists("crumb_"+t,g[t]),o.Icon(y[t].style,i)&&this._setPropsIfExists("icon_"+t,y[t]),o.Separator(_[t].style,i)&&this._setPropsIfExists("separator_"+t,_[t]),o.Title(b[t].style,i)&&this._setPropsIfExists("title_"+t,b[t]);var u=this.refs["right_"+t];u&&o.RightItem(S[t].style,i)&&u.setNativeProps(S[t])},updateProgress:function(e,t,n){for(var r=Math.max(t,n),o=Math.min(t,n),i=o;r>=i;i++)this._updateIndexProgress(e,i,t,n)},onAnimationStart:function(e,t){for(var n=Math.max(e,t),r=Math.min(e,t),o=r;n>=o;o++)this._setRenderViewsToHardwareTextureAndroid(o,!0)},onAnimationEnd:function(){for(var e=this.props.navState.routeStack.length-1,t=0;e>=t;t++)this._setRenderViewsToHardwareTextureAndroid(t,!1)},_setRenderViewsToHardwareTextureAndroid:function(e,t){var n={renderToHardwareTextureAndroid:t};this._setPropsIfExists("icon_"+e,n),this._setPropsIfExists("separator_"+e,n),this._setPropsIfExists("title_"+e,n),this._setPropsIfExists("right_"+e,n)},componentWillMount:function(){this._descriptors={crumb:new h,title:new h,right:new h}},render:function(){var e=this.props.navState,t=e&&e.routeStack.map(this._getBreadcrumb),n=e.routeStack.map(this._getTitle),r=e.routeStack.map(this._getRightButton);return u.createElement(l,{style:[T.breadCrumbContainer,this.props.style]},n,t,r)},_getBreadcrumb:function(e,t){if(this._descriptors.crumb.has(e))return this._descriptors.crumb.get(e);var n=this.props.routeMapper,r=R(t,E(this.props.navState)),o=u.createElement(l,{ref:"crumb_"+t,style:r.Crumb},u.createElement(l,{ref:"icon_"+t,style:r.Icon},n.iconForRoute(e,this.props.navigator)),u.createElement(l,{ref:"separator_"+t,style:r.Separator},n.separatorForRoute(e,this.props.navigator)));return this._descriptors.crumb=this._descriptors.crumb.set(e,o),o},_getTitle:function(e,t){if(this._descriptors.title.has(e))return this._descriptors.title.get(e);var n=this.props.routeMapper.titleContentForRoute(this.props.navState.routeStack[t],this.props.navigator),r=R(t,E(this.props.navState)),o=u.createElement(l,{ref:"title_"+t,style:r.Title},n);return this._descriptors.title=this._descriptors.title.set(e,o),o},_getRightButton:function(e,t){if(this._descriptors.right.has(e))return this._descriptors.right.get(e);var n=this.props.routeMapper.rightContentForRoute(this.props.navState.routeStack[t],this.props.navigator);if(!n)return this._descriptors.right=this._descriptors.right.set(e,null),null;var r=R(t,E(this.props.navState)),o=u.createElement(l,{ref:"right_"+t,style:r.RightItem},n);return this._descriptors.right=this._descriptors.right.set(e,o),o},_setPropsIfExists:function(e,t){var e=this.refs[e];e&&e.setNativeProps(t)}}),T=c.create({breadCrumbContainer:{overflow:"hidden",position:"absolute",height:v.General.TotalNavHeight,top:0,left:0,right:0}});n.exports=w}),__d("NavigatorBreadcrumbNavigationBarStyles",["Dimensions","NavigatorNavigationBarStylesIOS","buildStyleInterpolator","merge"],function(e,t,n,r){"use strict";for(var o=t("Dimensions"),i=t("NavigatorNavigationBarStylesIOS"),a=t("buildStyleInterpolator"),s=t("merge"),u=o.get("window").width,c=i.General.StatusBarHeight,l=i.General.NavBarHeight,p=4,h=40,d=9,f=h+d,v=100,m=.6,g=10,y={position:"absolute",flexDirection:"row",top:c,width:f,height:l,backgroundColor:"transparent"},_={width:h,height:l},b={width:d,height:l},S={position:"absolute",top:c,height:l,backgroundColor:"transparent"},E=s(S,{left:0,right:0,alignItems:"center",height:l}),R={position:"absolute",top:c,right:p,overflow:"hidden",opacity:1,height:l,backgroundColor:"transparent"},w=[],T=[],C=[],O=0;g>O;O++){var I=f*O+p;w[O]={Crumb:s(y,{left:I}),Icon:s(_,{opacity:m}),Separator:s(b,{opacity:1}),Title:s(S,{left:I,opacity:0}),RightItem:s(R,{opacity:0})},T[O]={Crumb:s(y,{left:I}),Icon:s(_,{opacity:1}),Separator:s(b,{opacity:0}),Title:s(S,{left:I+h,opacity:1}),RightItem:s(R,{opacity:1})};var x=u-100;C[O]={Crumb:s(y,{left:x}),Icon:s(_,{opacity:0}),Separator:s(b,{opacity:0}),Title:s(S,{left:x+h,opacity:0}),RightItem:s(R,{opacity:0})}}T[0]={Crumb:s(y,{left:u/4}),Icon:s(_,{opacity:0}),Separator:s(b,{opacity:0}),Title:s(E,{opacity:1}),RightItem:T[0].RightItem},w[0].Title=s(E,{left:-u/4,opacity:0}),C[0].Title=s(E,{opacity:0});var P=function(e,t){return{Crumb:a({left:{type:"linear",from:e.Crumb.left,to:t.Crumb.left,min:0,max:1,extrapolate:!0}}),Icon:a({opacity:{type:"linear",from:e.Icon.opacity,to:t.Icon.opacity,min:0,max:1}}),Separator:a({opacity:{type:"linear",from:e.Separator.opacity,to:t.Separator.opacity,min:0,max:1}}),Title:a({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),RightItem:a({opacity:{type:"linear",from:e.RightItem.opacity,to:t.RightItem.opacity,min:0,max:1,round:v}})}},N=T.map(function(e,t){return{RightToCenter:P(C[t],T[t]),CenterToLeft:P(T[t],w[t]),RightToLeft:P(C[t],w[t])}});n.exports={Interpolators:N,Left:w,Center:T,Right:C,IconWidth:h,IconHeight:l,SeparatorWidth:d,SeparatorHeight:l}}),__d("NavigatorNavigationBarStylesIOS",["Dimensions","buildStyleInterpolator","merge"],function(e,t,n,r){"use strict";function o(e,t){return{Title:a({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),LeftButton:a({opacity:{type:"linear",from:e.LeftButton.opacity,to:t.LeftButton.opacity,min:0,max:1,round:f},left:{type:"linear",from:e.LeftButton.left,to:t.LeftButton.left,min:0,max:1}}),RightButton:a({opacity:{type:"linear",from:e.RightButton.opacity,to:t.RightButton.opacity,min:0,max:1,round:f},left:{type:"linear",from:e.RightButton.left,to:t.RightButton.left,min:0,max:1,extrapolate:!0}})}}var i=t("Dimensions"),a=t("buildStyleInterpolator"),s=t("merge"),u=i.get("window").width,c=44,l=20,p=c+l,h={Title:{position:"absolute",top:l,left:0,right:0,alignItems:"center",height:c,backgroundColor:"transparent"},LeftButton:{position:"absolute",top:l,left:0,overflow:"hidden",opacity:1,height:c,backgroundColor:"transparent"},RightButton:{position:"absolute",top:l,right:0,overflow:"hidden",opacity:1,alignItems:"flex-end",height:c,backgroundColor:"transparent"}},d={Left:{Title:s(h.Title,{left:-u/2,opacity:0}),LeftButton:s(h.LeftButton,{left:-u/3,opacity:1}),RightButton:s(h.RightButton,{left:u/3,opacity:0})},Center:{Title:s(h.Title,{left:0,opacity:1}),LeftButton:s(h.LeftButton,{left:0,opacity:1}),RightButton:s(h.RightButton,{left:2*u/3-0,opacity:1})},Right:{Title:s(h.Title,{left:u/2,opacity:0}),LeftButton:s(h.LeftButton,{left:0,opacity:0}),RightButton:s(h.RightButton,{left:u,opacity:0})}},f=100,v={RightToCenter:o(d.Right,d.Center),CenterToLeft:o(d.Center,d.Left),RightToLeft:o(d.Right,d.Left)};n.exports={General:{NavBarHeight:c,StatusBarHeight:l,TotalNavHeight:p},Interpolators:v,Stages:d}}),__d("buildStyleInterpolator",["keyOf"],function(e,t,n,r){for(var o=t("keyOf"),i=o({x:null}),a=o({y:null}),s=o({z:null}),u=o({w:null}),c=o({transformRotateRadians:null}),l={transformRotateRadians:!0,transformScale:!0,transformTranslate:!0},p={transformRotateRadians:[0,0,0,1],transformTranslate:[0,0,0],transformScale:[1,1,1]},h=/([^\s,]+)/g,d=function(e,t){var n=e.toString(),r=n.slice(n.indexOf("(")+1,n.indexOf(")")).match(h)||[],o=r.map(function(e){return"\\b"+e+"\\b"}).join("|"),i=new RegExp(o,"g"),a=n.substring(n.indexOf("{")+1,n.lastIndexOf("}")),s=a.replace(i,function(e){var n=r.indexOf(e),o=t[n];return o});return s.split("\n")},f={unroll:function(e,t,n,r,o,i,a,s,u,c,l,p,h,d,f,v,m){t=e[0],n=e[1],r=e[2],o=e[3],i=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],p=e[10],h=e[11],d=e[12],f=e[13],v=e[14],m=e[15]},matrixDiffers:function(e,t,n,r,o,i,a,s,u,c,l,p,h,d,f,v,m,g){e=e||n!==t[0]||r!==t[1]||o!==t[2]||i!==t[3]||a!==t[4]||s!==t[5]||u!==t[6]||c!==t[7]||l!==t[8]||p!==t[9]||h!==t[10]||d!==t[11]||f!==t[12]||v!==t[13]||m!==t[14]||g!==t[15]},transformScale:function(e,t){var n=t[0],r=t[1],o=t[2];e[0]=e[0]*n,e[1]=e[1]*n,e[2]=e[2]*n,e[3]=e[3]*n,e[4]=e[4]*r,e[5]=e[5]*r,e[6]=e[6]*r,e[7]=e[7]*r,e[8]=e[8]*o,e[9]=e[9]*o,e[10]=e[10]*o,e[11]=e[11]*o,e[12]=e[12],e[13]=e[13],e[14]=e[14],e[15]=e[15]},transformTranslate:function(e,t){var n=t[0],r=t[1],o=t[2];e[12]=e[0]*n+e[4]*r+e[8]*o+e[12],e[13]=e[1]*n+e[5]*r+e[9]*o+e[13],e[14]=e[2]*n+e[6]*r+e[10]*o+e[14],e[15]=e[3]*n+e[7]*r+e[11]*o+e[15]},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,h=r*s,d=r*u,f=o*u,v=i*a,m=i*s,g=i*u,y=1-(h+f),_=l+g,b=p-m,S=l-g,E=1-(c+f),R=d+v,w=p+m,T=d-v,C=1-(c+h),O=e[0],I=e[1],x=e[2],P=e[3],N=e[4],D=e[5],M=e[6],A=e[7],k=e[8],j=e[9],L=e[10],V=e[11],B=y,F=_,H=b;e[0]=B*O+F*N+H*k,e[1]=B*I+F*D+H*j,e[2]=B*x+F*M+H*L,e[3]=B*P+F*A+H*V,B=S,F=E,H=R,e[4]=B*O+F*N+H*k,e[5]=B*I+F*D+H*j,e[6]=B*x+F*M+H*L,e[7]=B*P+F*A+H*V,B=w,F=T,H=C,e[8]=B*O+F*N+H*k,e[9]=B*I+F*D+H*j,e[10]=B*x+F*M+H*L,e[11]=B*P+F*A+H*V}},v={transformScale:function(e,t){e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1},transformTranslate:function(e,t){e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,h=r*s,d=r*u,f=o*u,v=i*a,m=i*s,g=i*u,y=1-(h+f),_=l+g,b=p-m,S=l-g,E=1-(c+f),R=d+v,w=p+m,T=d-v,C=1-(c+h),O=y,I=_,x=b;e[0]=O,e[1]=I,e[2]=x,e[3]=0,O=S,I=E,x=R,e[4]=O,e[5]=I,e[6]=x,e[7]=0,O=w,I=T,x=C,e[8]=O,e[9]=I,e[10]=x,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1}},m=function(e,t){return" if (!didChange) {\n var prevVal = result."+e+";\n result."+e+" = "+t+";\n didChange = didChange || ("+t+" !== prevVal);\n } else {\n result."+e+" = "+t+";\n }\n"},g=(function(e,t,n,r){var o="round"in e,i=e.round,a=" ratio = (value - "+e.min+") / "+(e.max-e.min)+";\n";e.extrapolate||(a+=" ratio = ratio > 1 ? 1 : (ratio < 0 ? 0 : ratio);\n");var s=o?"Math.round("+i+" * ":"",u=o?") / "+i:"";return a+=" "+r+" = "+s+"("+t+" * (1 - ratio) + "+n+" * ratio)"+u+";\n"}),y=function(e){return g(e,e.from,e.to,"nextScalarVal")},_=function(e){var t=JSON.stringify(e.value);return" nextScalarVal = "+t+";\n"},b=function(e){return" nextScalarVal = value >= "+(e.threshold+" ? "+e.to+" : "+e.from)+";\n"},S=function(e){return" nextScalarVal = value;\n"},E=function(e){return e+"ReuseOp"},R=function(e){var t="";for(var n in e)l[n]&&(t+="var "+E(n)+" = [];\n");return t},w=function(e){return"\n"+e.join("\n")+"\n"},T=function(e,t,n,r){var o=E(t)+"["+r+"]";return void 0!==e.from[n]&&void 0!==e.to[n]?" "+e.from[n]!==e.to[n]?g(e,e.from[n],e.to[n],o):o+" = "+e.from[n]+";":" "+o+" = "+p[t][r]+";"},C=[],O=0;16>O;O++)C.push("m"+O);var I=function(e){var t=[" var transformMatrix = result.transformMatrix !== undefined ? result.transformMatrix : (result.transformMatrix = []);"];t.push.apply(t,d(f.unroll,["transformMatrix"].concat(C)));for(var n=0;no;o++)r[o]=e[o+t];return r}function i(e){return void 0===e.size&&(e.size=e.__iterate(s)),e.size}function a(e,t){if("number"!=typeof t){var n=+t;if(""+n!==t)return NaN;t=n}return 0>t?i(e)+t:t}function s(){return!0}function u(e,t,n){return(0===e||void 0!==n&&-n>=e)&&(void 0===t||void 0!==n&&t>=n)}function c(e,t){return p(e,t,0)}function l(e,t){return p(e,t,t)}function p(e,t,n){return void 0===e?n:0>e?Math.max(0,t+e):void 0===t?e:Math.min(t,e)}function h(e){return m(e)?e:x(e)}function d(e){return g(e)?e:P(e)}function f(e){return y(e)?e:N(e)}function v(e){return m(e)&&!_(e)?e:D(e)}function m(e){return!(!e||!e[vn])}function g(e){return!(!e||!e[mn])}function y(e){return!(!e||!e[gn])}function _(e){return g(e)||y(e)}function b(e){return!(!e||!e[yn])}function S(e){this.next=e}function E(e,t,n,r){var o=0===e?t:1===e?n:[t,n];return r?r.value=o:r={value:o,done:!1},r}function R(){return{value:void 0,done:!0}}function w(e){return!!O(e)}function T(e){return e&&"function"==typeof e.next}function C(e){var t=O(e);return t&&t.call(e)}function O(e){var t=e&&(En&&e[En]||e[Rn]);return"function"==typeof t?t:void 0}function I(e){return e&&"number"==typeof e.length}function x(e){return null===e||void 0===e?V():m(e)?e.toSeq():H(e)}function P(e){return null===e||void 0===e?V().toKeyedSeq():m(e)?g(e)?e.toSeq():e.fromEntrySeq():B(e)}function N(e){return null===e||void 0===e?V():m(e)?g(e)?e.entrySeq():e.toIndexedSeq():F(e)}function D(e){return(null===e||void 0===e?V():m(e)?g(e)?e.entrySeq():e:F(e)).toSetSeq()}function M(e){this._array=e,this.size=e.length}function A(e){var t=Object.keys(e);this._object=e,this._keys=t,this.size=t.length}function k(e){this._iterable=e,this.size=e.length||e.size}function j(e){this._iterator=e,this._iteratorCache=[]}function L(e){return!(!e||!e[Tn])}function V(){return Cn||(Cn=new M([]))}function B(e){var t=Array.isArray(e)?new M(e).fromEntrySeq():T(e)?new j(e).fromEntrySeq():w(e)?new k(e).fromEntrySeq():"object"==typeof e?new A(e):void 0;if(!t)throw new TypeError("Expected Array or iterable object of [k, v] entries, or keyed object: "+e);return t}function F(e){var t=U(e);if(!t)throw new TypeError("Expected Array or iterable object of values: "+e);return t}function H(e){var t=U(e)||"object"==typeof e&&new A(e);if(!t)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+e);return t}function U(e){return I(e)?new M(e):T(e)?new j(e):w(e)?new k(e):void 0}function q(e,t,n,r){var o=e._cache;if(o){for(var i=o.length-1,a=0;i>=a;a++){var s=o[n?i-a:a];if(t(s[1],r?s[0]:a,e)===!1)return a+1}return a}return e.__iterateUncached(t,n)}function z(e,t,n,r){var o=e._cache;if(o){var i=o.length-1,a=0;return new S(function(){var e=o[n?i-a:a];return a++>i?R():E(t,r?e[0]:a-1,e[1])})}return e.__iteratorUncached(t,n)}function G(){throw TypeError("Abstract")}function W(){}function Y(){}function K(){}function X(e,t){if(e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1;if("function"==typeof e.valueOf&&"function"==typeof t.valueOf){if(e=e.valueOf(),t=t.valueOf(),e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1}return"function"==typeof e.equals&&"function"==typeof t.equals&&e.equals(t)?!0:!1}function J(e,t){return t?Q(t,e,"",{"":e}):$(e)}function Q(e,t,n,r){return Array.isArray(t)?e.call(r,n,N(t).map(function(n,r){return Q(e,n,r,t)})):Z(t)?e.call(r,n,P(t).map(function(n,r){return Q(e,n,r,t)})):t}function $(e){return Array.isArray(e)?N(e).map($).toList():Z(e)?P(e).map($).toMap():e}function Z(e){return e&&(e.constructor===Object||void 0===e.constructor)}function ee(e){return e>>>1&1073741824|3221225471&e}function te(e){if(e===!1||null===e||void 0===e)return 0;if("function"==typeof e.valueOf&&(e=e.valueOf(),e===!1||null===e||void 0===e))return 0;if(e===!0)return 1;var t=typeof e;if("number"===t){var n=0|e;for(n!==e&&(n^=4294967295*e);e>4294967295;)e/=4294967295,n^=e;return ee(n)}return"string"===t?e.length>An?ne(e):re(e):"function"==typeof e.hashCode?e.hashCode():oe(e)}function ne(e){var t=Ln[e];return void 0===t&&(t=re(e),jn===kn&&(jn=0,Ln={}),jn++,Ln[e]=t),t}function re(e){for(var t=0,n=0;n0)switch(e.nodeType){case 1:return e.uniqueID;case 9:return e.documentElement&&e.documentElement.uniqueID}}function ae(e,t){if(!e)throw new Error(t)}function se(e){ae(e!==1/0,"Cannot perform this action with an infinite size.")}function ue(e,t){this._iter=e,this._useKeys=t,this.size=e.size}function ce(e){this._iter=e,this.size=e.size}function le(e){this._iter=e,this.size=e.size}function pe(e){this._iter=e,this.size=e.size}function he(e){var t=Me(e);return t._iter=e,t.size=e.size,t.flip=function(){return e},t.reverse=function(){var t=e.reverse.apply(this);return t.flip=function(){return e.reverse()},t},t.has=function(t){return e.includes(t)},t.includes=function(t){return e.has(t)},t.cacheResult=Ae,t.__iterateUncached=function(t,n){var r=this;return e.__iterate(function(e,n){return t(n,e,r)!==!1},n)},t.__iteratorUncached=function(t,n){if(t===Sn){var r=e.__iterator(t,n);return new S(function(){var e=r.next();if(!e.done){var t=e.value[0];e.value[0]=e.value[1],e.value[1]=t}return e})}return e.__iterator(t===bn?_n:bn,n)},t}function de(e,t,n){var r=Me(e);return r.size=e.size,r.has=function(t){return e.has(t)},r.get=function(r,o){var i=e.get(r,hn);return i===hn?o:t.call(n,i,r,e)},r.__iterateUncached=function(r,o){var i=this;return e.__iterate(function(e,o,a){return r(t.call(n,e,o,a),o,i)!==!1},o)},r.__iteratorUncached=function(r,o){var i=e.__iterator(Sn,o);return new S(function(){var o=i.next();if(o.done)return o;var a=o.value,s=a[0];return E(r,s,t.call(n,a[1],s,e),o)})},r}function fe(e,t){var n=Me(e);return n._iter=e,n.size=e.size,n.reverse=function(){return e},e.flip&&(n.flip=function(){var t=he(e);return t.reverse=function(){return e.flip()},t}),n.get=function(n,r){return e.get(t?n:-1-n,r)},n.has=function(n){return e.has(t?n:-1-n)},n.includes=function(t){return e.includes(t)},n.cacheResult=Ae,n.__iterate=function(t,n){var r=this;return e.__iterate(function(e,n){return t(e,n,r)},!n)},n.__iterator=function(t,n){return e.__iterator(t,!n)},n}function ve(e,t,n,r){var o=Me(e);return r&&(o.has=function(r){var o=e.get(r,hn);return o!==hn&&!!t.call(n,o,r,e)},o.get=function(r,o){var i=e.get(r,hn);return i!==hn&&t.call(n,i,r,e)?i:o}),o.__iterateUncached=function(o,i){var a=this,s=0;return e.__iterate(function(e,i,u){return t.call(n,e,i,u)?(s++,o(e,r?i:s-1,a)):void 0},i),s},o.__iteratorUncached=function(o,i){var a=e.__iterator(Sn,i),s=0;return new S(function(){for(;;){var i=a.next();if(i.done)return i;var u=i.value,c=u[0],l=u[1];if(t.call(n,l,c,e))return E(o,r?c:s++,l,i)}})},o}function me(e,t,n){var r=Le().asMutable();return e.__iterate(function(o,i){r.update(t.call(n,o,i,e),0,function(e){return e+1})}),r.asImmutable()}function ge(e,t,n){var r=g(e),o=(b(e)?Rt():Le()).asMutable();e.__iterate(function(i,a){o.update(t.call(n,i,a,e),function(e){return e=e||[],e.push(r?[a,i]:i),e})});var i=De(e);return o.map(function(t){return xe(e,i(t))})}function ye(e,t,n,r){var o=e.size;if(void 0!==t&&(t=0|t),void 0!==n&&(n=0|n),u(t,n,o))return e;var i=c(t,o),s=l(n,o);if(i!==i||s!==s)return ye(e.toSeq().cacheResult(),t,n,r);var p,h=s-i;h===h&&(p=0>h?0:h);var d=Me(e);return d.size=0===p?p:e.size&&p||void 0,!r&&L(e)&&p>=0&&(d.get=function(t,n){return t=a(this,t),t>=0&&p>t?e.get(t+i,n):n}),d.__iterateUncached=function(t,n){var o=this;if(0===p)return 0;if(n)return this.cacheResult().__iterate(t,n);var a=0,s=!0,u=0;return e.__iterate(function(e,n){return s&&(s=a++p)return R();var e=o.next();return r||t===bn?e:t===_n?E(t,s-1,void 0,e):E(t,s-1,e.value[1],e)})},d}function _e(e,t,n){var r=Me(e);return r.__iterateUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterate(r,o);var a=0;return e.__iterate(function(e,o,s){return t.call(n,e,o,s)&&++a&&r(e,o,i)}),a},r.__iteratorUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterator(r,o);var a=e.__iterator(Sn,o),s=!0;return new S(function(){if(!s)return R();var e=a.next();if(e.done)return e;var o=e.value,u=o[0],c=o[1];return t.call(n,c,u,i)?r===Sn?e:E(r,u,c,e):(s=!1,R())})},r}function be(e,t,n,r){var o=Me(e);return o.__iterateUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterate(o,i);var s=!0,u=0;return e.__iterate(function(e,i,c){return s&&(s=t.call(n,e,i,c))?void 0:(u++,o(e,r?i:u-1,a))}),u},o.__iteratorUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterator(o,i);var s=e.__iterator(Sn,i),u=!0,c=0;return new S(function(){var e,i,l;do{if(e=s.next(),e.done)return r||o===bn?e:o===_n?E(o,c++,void 0,e):E(o,c++,e.value[1],e);var p=e.value;i=p[0],l=p[1],u&&(u=t.call(n,l,i,a))}while(u);return o===Sn?e:E(o,i,l,e)})},o}function Se(e,t){var n=g(e),r=[e].concat(t).map(function(e){return m(e)?n&&(e=d(e)):e=n?B(e):F(Array.isArray(e)?e:[e]),e}).filter(function(e){return 0!==e.size});if(0===r.length)return e;if(1===r.length){var o=r[0];if(o===e||n&&g(o)||y(e)&&y(o))return o}var i=new M(r);return n?i=i.toKeyedSeq():y(e)||(i=i.toSetSeq()),i=i.flatten(!0),i.size=r.reduce(function(e,t){if(void 0!==e){var n=t.size;if(void 0!==n)return e+n}},0),i}function Ee(e,t,n){var r=Me(e);return r.__iterateUncached=function(r,o){function i(e,u){var c=this;e.__iterate(function(e,o){return(!t||t>u)&&m(e)?i(e,u+1):r(e,n?o:a++,c)===!1&&(s=!0),!s},o)}var a=0,s=!1;return i(e,0),a},r.__iteratorUncached=function(r,o){var i=e.__iterator(r,o),a=[],s=0;return new S(function(){for(;i;){var e=i.next();if(e.done===!1){var u=e.value;if(r===Sn&&(u=u[1]),t&&!(a.length0}function Ie(e,t,n){var r=Me(e);return r.size=new M(n).map(function(e){return e.size}).min(),r.__iterate=function(e,t){for(var n,r=this.__iterator(bn,t),o=0;!(n=r.next()).done&&e(n.value,o++,this)!==!1;);return o},r.__iteratorUncached=function(e,r){var o=n.map(function(e){return e=h(e),C(r?e.reverse():e)}),i=0,a=!1;return new S(function(){var n;return a||(n=o.map(function(e){return e.next()}),a=n.some(function(e){return e.done})),a?R():E(e,i++,t.apply(null,n.map(function(e){return e.value})))})},r}function xe(e,t){return L(e)?t:e.constructor(t)}function Pe(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function Ne(e){return se(e.size),i(e)}function De(e){return g(e)?d:y(e)?f:v}function Me(e){return Object.create((g(e)?P:y(e)?N:D).prototype)}function Ae(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):x.prototype.cacheResult.call(this)}function ke(e,t){return e>t?1:t>e?-1:0}function je(e){var t=C(e);if(!t){if(!I(e))throw new TypeError("Expected iterable or array-like: "+e);t=C(h(e))}return t}function Le(e){return null===e||void 0===e?Ke():Ve(e)&&!b(e)?e:Ke().withMutations(function(t){var n=d(e);se(n.size),n.forEach(function(e,n){return t.set(n,e)})})}function Ve(e){return!(!e||!e[Vn])}function Be(e,t){this.ownerID=e,this.entries=t}function Fe(e,t,n){this.ownerID=e,this.bitmap=t,this.nodes=n}function He(e,t,n){this.ownerID=e,this.count=t,this.nodes=n}function Ue(e,t,n){this.ownerID=e,this.keyHash=t,this.entries=n}function qe(e,t,n){this.ownerID=e,this.keyHash=t,this.entry=n}function ze(e,t,n){this._type=t,this._reverse=n,this._stack=e._root&&We(e._root)}function Ge(e,t){return E(e,t[0],t[1])}function We(e,t){return{node:e,index:0,__prev:t}}function Ye(e,t,n,r){var o=Object.create(Bn);return o.size=e,o._root=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Ke(){return Fn||(Fn=Ye(0))}function Xe(e,n,r){var o,i;if(e._root){var a=t(dn),s=t(fn);if(o=Je(e._root,e.__ownerID,0,void 0,n,r,a,s),!s.value)return e;i=e.size+(a.value?r===hn?-1:1:0)}else{if(r===hn)return e;i=1,o=new Be(e.__ownerID,[[n,r]])}return e.__ownerID?(e.size=i,e._root=o,e.__hash=void 0,e.__altered=!0,e):o?Ye(i,o):Ke()}function Je(e,t,r,o,i,a,s,u){return e?e.update(t,r,o,i,a,s,u):a===hn?e:(n(u),n(s),new qe(t,o,[i,a]))}function Qe(e){return e.constructor===qe||e.constructor===Ue}function $e(e,t,n,r,o){if(e.keyHash===r)return new Ue(t,r,[e.entry,o]);var i,a=(0===n?e.keyHash:e.keyHash>>>n)&pn,s=(0===n?r:r>>>n)&pn,u=a===s?[$e(e,t,n+cn,r,o)]:(i=new qe(t,r,o),s>a?[e,i]:[i,e]);return new Fe(t,1<s;s++,u<<=1){var l=t[s];void 0!==l&&s!==r&&(o|=u,a[i++]=l)}return new Fe(e,o,a)}function tt(e,t,n,r,o){for(var i=0,a=new Array(ln),s=0;0!==n;s++,n>>>=1)a[s]=1&n?t[i++]:void 0;return a[r]=o,new He(e,i+1,a)}function nt(e,t,n){for(var r=[],o=0;o>1&1431655765,e=(858993459&e)+(e>>2&858993459),e=e+(e>>4)&252645135,e+=e>>8,e+=e>>16,127&e}function st(e,t,n,r){var i=r?e:o(e);return i[t]=n,i}function ut(e,t,n,r){var o=e.length+1;if(r&&t+1===o)return e[t]=n,e;for(var i=new Array(o),a=0,s=0;o>s;s++)s===t?(i[s]=n,a=-1):i[s]=e[s+a];return i}function ct(e,t,n){var r=e.length-1;if(n&&t===r)return e.pop(),e;for(var o=new Array(r),i=0,a=0;r>a;a++)a===t&&(i=1),o[a]=e[a+i];return o}function lt(e){var t=vt();if(null===e||void 0===e)return t;if(pt(e))return e;var n=f(e),r=n.size;return 0===r?t:(se(r),r>0&&ln>r?ft(0,r,cn,null,new ht(n.toArray())):t.withMutations(function(e){e.setSize(r),n.forEach(function(t,n){return e.set(n,t)})}))}function pt(e){return!(!e||!e[zn])}function ht(e,t){this.array=e,this.ownerID=t}function dt(e,t){function n(e,t,n){return 0===t?r(e,n):o(e,t,n)}function r(e,n){var r=n===s?u&&u.array:e&&e.array,o=n>i?0:i-n,c=a-n;return c>ln&&(c=ln),function(){if(o===c)return Yn;var e=t?--c:o++;return r&&r[e]}}function o(e,r,o){var s,u=e&&e.array,c=o>i?0:i-o>>r,l=(a-o>>r)+1;return l>ln&&(l=ln),function(){for(;;){if(s){var e=s();if(e!==Yn)return e;s=null}if(c===l)return Yn;var i=t?--l:c++;s=n(u&&u[i],r-cn,o+(i<=e.size||0>n)return e.withMutations(function(e){0>n?bt(e,n).set(0,r):bt(e,0,n+1).set(n,r)});n+=e._origin;var o=e._tail,i=e._root,s=t(fn);return n>=Et(e._capacity)?o=gt(o,e.__ownerID,0,n,r,s):i=gt(i,e.__ownerID,e._level,n,r,s),s.value?e.__ownerID?(e._root=i,e._tail=o,e.__hash=void 0,e.__altered=!0,e):ft(e._origin,e._capacity,e._level,i,o):e}function gt(e,t,r,o,i,a){var s=o>>>r&pn,u=e&&s0){var l=e&&e.array[s],p=gt(l,t,r-cn,o,i,a);return p===l?e:(c=yt(e,t),c.array[s]=p,c)}return u&&e.array[s]===i?e:(n(a),c=yt(e,t),void 0===i&&s===c.array.length-1?c.array.pop():c.array[s]=i,c)}function yt(e,t){return t&&e&&t===e.ownerID?e:new ht(e?e.array.slice():[],t)}function _t(e,t){if(t>=Et(e._capacity))return e._tail;if(t<1<0;)n=n.array[t>>>r&pn],r-=cn;return n}}function bt(e,t,n){void 0!==t&&(t=0|t),void 0!==n&&(n=0|n);var o=e.__ownerID||new r,i=e._origin,a=e._capacity,s=i+t,u=void 0===n?a:0>n?a+n:i+n;if(s===i&&u===a)return e;if(s>=u)return e.clear();for(var c=e._level,l=e._root,p=0;0>s+p;)l=new ht(l&&l.array.length?[void 0,l]:[],o),c+=cn,p+=1<=1<d?_t(e,u-1):d>h?new ht([],o):f;if(f&&d>h&&a>s&&f.array.length){l=yt(l,o);for(var m=l,g=c;g>cn;g-=cn){var y=h>>>g&pn;m=m.array[y]=yt(m.array[y],o)}m.array[h>>>cn&pn]=f}if(a>u&&(v=v&&v.removeAfter(o,0,u)),s>=d)s-=d,u-=d,c=cn,l=null,v=v&&v.removeBefore(o,0,s);else if(s>i||h>d){for(p=0;l;){var _=s>>>c&pn;if(_!==d>>>c&pn)break;_&&(p+=(1<i&&(l=l.removeBefore(o,c,s-p)),l&&h>d&&(l=l.removeAfter(o,c,d-p)),p&&(s-=p,u-=p)}return e.__ownerID?(e.size=u-s,e._origin=s,e._capacity=u,e._level=c,e._root=l,e._tail=v,e.__hash=void 0,e.__altered=!0,e):ft(s,u,c,l,v)}function St(e,t,n){for(var r=[],o=0,i=0;io&&(o=s.size),m(a)||(s=s.map(function(e){return J(e)})),r.push(s)}return o>e.size&&(e=e.setSize(o)),ot(e,t,r)}function Et(e){return ln>e?0:e-1>>>cn<=ln&&a.size>=2*i.size?(o=a.filter(function(e,t){return void 0!==e&&s!==t}),r=o.toKeyedSeq().map(function(e){return e[0]}).flip().toMap(),e.__ownerID&&(r.__ownerID=o.__ownerID=e.__ownerID)):(r=i.remove(t),o=s===a.size-1?a.pop():a.set(s,void 0))}else if(u){if(n===a.get(s)[1])return e;r=i,o=a.set(s,[t,n])}else r=i.set(t,a.size),o=a.set(a.size,[t,n]);return e.__ownerID?(e.size=r.size,e._map=r,e._list=o,e.__hash=void 0,e):Tt(r,o)}function It(e){return null===e||void 0===e?Nt():xt(e)?e:Nt().unshiftAll(e)}function xt(e){return!(!e||!e[Xn])}function Pt(e,t,n,r){var o=Object.create(Jn);return o.size=e,o._head=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Nt(){return Qn||(Qn=Pt(0))}function Dt(e){return null===e||void 0===e?jt():Mt(e)&&!b(e)?e:jt().withMutations(function(t){var n=v(e);se(n.size),n.forEach(function(e){return t.add(e)})})}function Mt(e){return!(!e||!e[$n])}function At(e,t){return e.__ownerID?(e.size=t.size,e._map=t,e):t===e._map?e:0===t.size?e.__empty():e.__make(t)}function kt(e,t){var n=Object.create(Zn);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function jt(){return er||(er=kt(Ke()))}function Lt(e){return null===e||void 0===e?Ft():Vt(e)?e:Ft().withMutations(function(t){var n=v(e);se(n.size),n.forEach(function(e){return t.add(e)})})}function Vt(e){return Mt(e)&&b(e)}function Bt(e,t){var n=Object.create(tr);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Ft(){return nr||(nr=Bt(Ct()))}function Ht(e,t){var n,r=function(i){if(i instanceof r)return i;if(!(this instanceof r))return new r(i);if(!n){n=!0;var a=Object.keys(e);zt(o,a),o.size=a.length,o._name=t,o._keys=a,o._defaultValues=e}this._map=Le(i)},o=r.prototype=Object.create(rr);return o.constructor=r,r}function Ut(e,t,n){var r=Object.create(Object.getPrototypeOf(e));return r._map=t,r.__ownerID=n,r}function qt(e){return e._name||e.constructor.name||"Record"}function zt(e,t){try{t.forEach(Gt.bind(void 0,e))}catch(n){}}function Gt(e,t){Object.defineProperty(e,t,{get:function(){return this.get(t)},set:function(e){ae(this.__ownerID,"Cannot set on an immutable record."),this.set(t,e)}})}function Wt(e,t){if(e===t)return!0;if(!m(t)||void 0!==e.size&&void 0!==t.size&&e.size!==t.size||void 0!==e.__hash&&void 0!==t.__hash&&e.__hash!==t.__hash||g(e)!==g(t)||y(e)!==y(t)||b(e)!==b(t))return!1;if(0===e.size&&0===t.size)return!0;var n=!_(e);if(b(e)){var r=e.entries();return t.every(function(e,t){var o=r.next().value;return o&&X(o[1],e)&&(n||X(o[0],t))})&&r.next().done}var o=!1;if(void 0===e.size)if(void 0===t.size)"function"==typeof e.cacheResult&&e.cacheResult();else{o=!0;var i=e;e=t,t=i}var a=!0,s=t.__iterate(function(t,r){return(n?e.has(t):o?X(t,e.get(r,hn)):X(e.get(r,hn),t))?void 0:(a=!1,!1)});return a&&e.size===s}function Yt(e,t,n){if(!(this instanceof Yt))return new Yt(e,t,n);if(ae(0!==n,"Cannot step a Range by 0"),e=e||0,void 0===t&&(t=1/0),n=void 0===n?1:Math.abs(n),e>t&&(n=-n),this._start=e,this._end=t,this._step=n,this.size=Math.max(0,Math.ceil((t-e)/n-1)+1),0===this.size){if(or)return or;or=this}}function Kt(e,t){if(!(this instanceof Kt))return new Kt(e,t);if(this._value=e,this.size=void 0===t?1/0:Math.max(0,t),0===this.size){if(ir)return ir;ir=this}}function Xt(e,t){var n=function(n){e.prototype[n]=t[n]};return Object.keys(t).forEach(n),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(t).forEach(n),e}function Jt(e,t){return t}function Qt(e,t){return[t,e]}function $t(e){return function(){return!e.apply(this,arguments)}}function Zt(e){return function(){return-e.apply(this,arguments)}}function en(e){return"string"==typeof e?JSON.stringify(e):e}function tn(){return o(arguments)}function nn(e,t){return t>e?1:e>t?-1:0}function rn(e){if(e.size===1/0)return 0;var t=b(e),n=g(e),r=t?1:0,o=e.__iterate(n?t?function(e,t){r=31*r+an(te(e),te(t))|0}:function(e,t){r=r+an(te(e),te(t))|0}:t?function(e){r=31*r+te(e)|0}:function(e){r=r+te(e)|0});return on(o,r)}function on(e,t){return t=In(t,3432918353),t=In(t<<15|t>>>-15,461845907),t=In(t<<13|t>>>-13,5),t=(t+3864292196|0)^e,t=In(t^t>>>16,2246822507),t=In(t^t>>>13,3266489909),t=ee(t^t>>>16)}function an(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}var sn=Array.prototype.slice,un="delete",cn=5,ln=1<=o;o++)if(e(n[t?r-o:o],o,this)===!1)return o+1;return o},M.prototype.__iterator=function(e,t){var n=this._array,r=n.length-1,o=0;return new S(function(){return o>r?R():E(e,o,n[t?r-o++:o++])})},e(A,P),A.prototype.get=function(e,t){return void 0===t||this.has(e)?this._object[e]:t},A.prototype.has=function(e){return this._object.hasOwnProperty(e)},A.prototype.__iterate=function(e,t){for(var n=this._object,r=this._keys,o=r.length-1,i=0;o>=i;i++){var a=r[t?o-i:i];if(e(n[a],a,this)===!1)return i+1}return i},A.prototype.__iterator=function(e,t){var n=this._object,r=this._keys,o=r.length-1,i=0;return new S(function(){var a=r[t?o-i:i];return i++>o?R():E(e,a,n[a])})},A.prototype[yn]=!0,e(k,N),k.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);var n=this._iterable,r=C(n),o=0;if(T(r))for(var i;!(i=r.next()).done&&e(i.value,o++,this)!==!1;);return o},k.prototype.__iteratorUncached=function(e,t){if(t)return this.cacheResult().__iterator(e,t);var n=this._iterable,r=C(n);if(!T(r))return new S(R);var o=0;return new S(function(){var t=r.next();return t.done?t:E(e,o++,t.value)})},e(j,N),j.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);for(var n=this._iterator,r=this._iteratorCache,o=0;o=r.length){var t=n.next();if(t.done)return t;r[o]=t.value}return E(e,o,r[o++])})};var Cn;e(G,h),e(W,G),e(Y,G),e(K,G),G.Keyed=W,G.Indexed=Y,G.Set=K;var On,In="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(e,t){e=0|e,t=0|t;var n=65535&e,r=65535&t;return n*r+((e>>>16)*r+n*(t>>>16)<<16>>>0)|0},xn=Object.isExtensible,Pn=function(){try{return Object.defineProperty({},"@",{}),!0}catch(e){return!1}}(),Nn="function"==typeof WeakMap;Nn&&(On=new WeakMap);var Dn=0,Mn="__immutablehash__";"function"==typeof Symbol&&(Mn=Symbol(Mn));var An=16,kn=255,jn=0,Ln={};e(ue,P),ue.prototype.get=function(e,t){return this._iter.get(e,t)},ue.prototype.has=function(e){return this._iter.has(e)},ue.prototype.valueSeq=function(){return this._iter.valueSeq()},ue.prototype.reverse=function(){var e=this,t=fe(this,!0);return this._useKeys||(t.valueSeq=function(){return e._iter.toSeq().reverse()}),t},ue.prototype.map=function(e,t){var n=this,r=de(this,e,t);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(e,t)}),r},ue.prototype.__iterate=function(e,t){var n,r=this;return this._iter.__iterate(this._useKeys?function(t,n){return e(t,n,r)}:(n=t?Ne(this):0,function(o){return e(o,t?--n:n++,r)}),t)},ue.prototype.__iterator=function(e,t){if(this._useKeys)return this._iter.__iterator(e,t);var n=this._iter.__iterator(bn,t),r=t?Ne(this):0;return new S(function(){var o=n.next();return o.done?o:E(e,t?--r:r++,o.value,o)})},ue.prototype[yn]=!0,e(ce,N),ce.prototype.includes=function(e){return this._iter.includes(e)},ce.prototype.__iterate=function(e,t){var n=this,r=0;return this._iter.__iterate(function(t){return e(t,r++,n)},t)},ce.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t),r=0;return new S(function(){var t=n.next();return t.done?t:E(e,r++,t.value,t)})},e(le,D),le.prototype.has=function(e){return this._iter.includes(e)},le.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){return e(t,t,n)},t)},le.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t);return new S(function(){var t=n.next();return t.done?t:E(e,t.value,t.value,t)})},e(pe,P),pe.prototype.entrySeq=function(){return this._iter.toSeq()},pe.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){if(t){Pe(t);var r=m(t);return e(r?t.get(1):t[1],r?t.get(0):t[0],n)}},t)},pe.prototype.__iterator=function(e,t){var n=this._iter.__iterator(bn,t);return new S(function(){for(;;){var t=n.next();if(t.done)return t;var r=t.value;if(r){Pe(r);var o=m(r);return E(e,o?r.get(0):r[0],o?r.get(1):r[1],t)}}})},ce.prototype.cacheResult=ue.prototype.cacheResult=le.prototype.cacheResult=pe.prototype.cacheResult=Ae,e(Le,W),Le.prototype.toString=function(){return this.__toString("Map {","}")},Le.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},Le.prototype.set=function(e,t){return Xe(this,e,t)},Le.prototype.setIn=function(e,t){return this.updateIn(e,hn,function(){return t})},Le.prototype.remove=function(e){return Xe(this,e,hn)},Le.prototype.deleteIn=function(e){return this.updateIn(e,function(){return hn})},Le.prototype.update=function(e,t,n){return 1===arguments.length?e(this):this.updateIn([e],t,n)},Le.prototype.updateIn=function(e,t,n){n||(n=t,t=void 0);var r=it(this,je(e),t,n); -return r===hn?void 0:r},Le.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Ke()},Le.prototype.merge=function(){return nt(this,void 0,arguments)},Le.prototype.mergeWith=function(e){var t=sn.call(arguments,1);return nt(this,e,t)},Le.prototype.mergeIn=function(e){var t=sn.call(arguments,1);return this.updateIn(e,Ke(),function(e){return"function"==typeof e.merge?e.merge.apply(e,t):t[t.length-1]})},Le.prototype.mergeDeep=function(){return nt(this,rt(void 0),arguments)},Le.prototype.mergeDeepWith=function(e){var t=sn.call(arguments,1);return nt(this,rt(e),t)},Le.prototype.mergeDeepIn=function(e){var t=sn.call(arguments,1);return this.updateIn(e,Ke(),function(e){return"function"==typeof e.mergeDeep?e.mergeDeep.apply(e,t):t[t.length-1]})},Le.prototype.sort=function(e){return Rt(Te(this,e))},Le.prototype.sortBy=function(e,t){return Rt(Te(this,t,e))},Le.prototype.withMutations=function(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this},Le.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new r)},Le.prototype.asImmutable=function(){return this.__ensureOwner()},Le.prototype.wasAltered=function(){return this.__altered},Le.prototype.__iterator=function(e,t){return new ze(this,e,t)},Le.prototype.__iterate=function(e,t){var n=this,r=0;return this._root&&this._root.iterate(function(t){return r++,e(t[1],t[0],n)},t),r},Le.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Ye(this.size,this._root,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},Le.isMap=Ve;var Vn="@@__IMMUTABLE_MAP__@@",Bn=Le.prototype;Bn[Vn]=!0,Bn[un]=Bn.remove,Bn.removeIn=Bn.deleteIn,Be.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(X(n,o[i][0]))return o[i][1];return r},Be.prototype.update=function(e,t,r,i,a,s,u){for(var c=a===hn,l=this.entries,p=0,h=l.length;h>p&&!X(i,l[p][0]);p++);var d=h>p;if(d?l[p][1]===a:c)return this;if(n(u),(c||!d)&&n(s),!c||1!==l.length){if(!d&&!c&&l.length>=Hn)return Ze(e,l,i,a);var f=e&&e===this.ownerID,v=f?l:o(l);return d?c?p===h-1?v.pop():v[p]=v.pop():v[p]=[i,a]:v.push([i,a]),f?(this.entries=v,this):new Be(e,v)}},Fe.prototype.get=function(e,t,n,r){void 0===t&&(t=te(n));var o=1<<((0===e?t:t>>>e)&pn),i=this.bitmap;return 0===(i&o)?r:this.nodes[at(i&o-1)].get(e+cn,t,n,r)},Fe.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=te(r));var s=(0===t?n:n>>>t)&pn,u=1<=Un)return tt(e,h,c,s,f);if(l&&!f&&2===h.length&&Qe(h[1^p]))return h[1^p];if(l&&f&&1===h.length&&Qe(f))return f;var v=e&&e===this.ownerID,m=l?f?c:c^u:c|u,g=l?f?st(h,p,f,v):ct(h,p,v):ut(h,p,f,v);return v?(this.bitmap=m,this.nodes=g,this):new Fe(e,m,g)},He.prototype.get=function(e,t,n,r){void 0===t&&(t=te(n));var o=(0===e?t:t>>>e)&pn,i=this.nodes[o];return i?i.get(e+cn,t,n,r):r},He.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=te(r));var s=(0===t?n:n>>>t)&pn,u=o===hn,c=this.nodes,l=c[s];if(u&&!l)return this;var p=Je(l,e,t+cn,n,r,o,i,a);if(p===l)return this;var h=this.count;if(l){if(!p&&(h--,qn>h))return et(e,c,h,s)}else h++;var d=e&&e===this.ownerID,f=st(c,s,p,d);return d?(this.count=h,this.nodes=f,this):new He(e,h,f)},Ue.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(X(n,o[i][0]))return o[i][1];return r},Ue.prototype.update=function(e,t,r,i,a,s,u){void 0===r&&(r=te(i));var c=a===hn;if(r!==this.keyHash)return c?this:(n(u),n(s),$e(this,e,t,r,[i,a]));for(var l=this.entries,p=0,h=l.length;h>p&&!X(i,l[p][0]);p++);var d=h>p;if(d?l[p][1]===a:c)return this;if(n(u),(c||!d)&&n(s),c&&2===h)return new qe(e,this.keyHash,l[1^p]);var f=e&&e===this.ownerID,v=f?l:o(l);return d?c?p===h-1?v.pop():v[p]=v.pop():v[p]=[i,a]:v.push([i,a]),f?(this.entries=v,this):new Ue(e,this.keyHash,v)},qe.prototype.get=function(e,t,n,r){return X(n,this.entry[0])?this.entry[1]:r},qe.prototype.update=function(e,t,r,o,i,a,s){var u=i===hn,c=X(o,this.entry[0]);return(c?i===this.entry[1]:u)?this:(n(s),u?void n(a):c?e&&e===this.ownerID?(this.entry[1]=i,this):new qe(e,this.keyHash,[o,i]):(n(a),$e(this,e,t,te(o),[o,i])))},Be.prototype.iterate=Ue.prototype.iterate=function(e,t){for(var n=this.entries,r=0,o=n.length-1;o>=r;r++)if(e(n[t?o-r:r])===!1)return!1},Fe.prototype.iterate=He.prototype.iterate=function(e,t){for(var n=this.nodes,r=0,o=n.length-1;o>=r;r++){var i=n[t?o-r:r];if(i&&i.iterate(e,t)===!1)return!1}},qe.prototype.iterate=function(e,t){return e(this.entry)},e(ze,S),ze.prototype.next=function(){for(var e=this._type,t=this._stack;t;){var n,r=t.node,o=t.index++;if(r.entry){if(0===o)return Ge(e,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=o)return Ge(e,r.entries[this._reverse?n-o:o])}else if(n=r.nodes.length-1,n>=o){var i=r.nodes[this._reverse?n-o:o];if(i){if(i.entry)return Ge(e,i.entry);t=this._stack=We(i,t)}continue}t=this._stack=this._stack.__prev}return R()};var Fn,Hn=ln/4,Un=ln/2,qn=ln/4;e(lt,Y),lt.of=function(){return this(arguments)},lt.prototype.toString=function(){return this.__toString("List [","]")},lt.prototype.get=function(e,t){if(e=a(this,e),e>=0&&e>>t&pn;if(r>=this.array.length)return new ht([],e);var o,i=0===r;if(t>0){var a=this.array[r];if(o=a&&a.removeBefore(e,t-cn,n),o===a&&i)return this}if(i&&!o)return this;var s=yt(this,e);if(!i)for(var u=0;r>u;u++)s.array[u]=void 0;return o&&(s.array[r]=o),s},ht.prototype.removeAfter=function(e,t,n){if(n===(t?1<>>t&pn;if(r>=this.array.length)return this;var o;if(t>0){var i=this.array[r];if(o=i&&i.removeAfter(e,t-cn,n),o===i&&r===this.array.length-1)return this}var a=yt(this,e);return a.array.splice(r+1),o&&(a.array[r]=o),a};var Wn,Yn={};e(Rt,Le),Rt.of=function(){return this(arguments)},Rt.prototype.toString=function(){return this.__toString("OrderedMap {","}")},Rt.prototype.get=function(e,t){var n=this._map.get(e);return void 0!==n?this._list.get(n)[1]:t},Rt.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):Ct()},Rt.prototype.set=function(e,t){return Ot(this,e,t)},Rt.prototype.remove=function(e){return Ot(this,e,hn)},Rt.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},Rt.prototype.__iterate=function(e,t){var n=this;return this._list.__iterate(function(t){return t&&e(t[1],t[0],n)},t)},Rt.prototype.__iterator=function(e,t){return this._list.fromEntrySeq().__iterator(e,t)},Rt.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map.__ensureOwner(e),n=this._list.__ensureOwner(e);return e?Tt(t,n,e,this.__hash):(this.__ownerID=e,this._map=t,this._list=n,this)},Rt.isOrderedMap=wt,Rt.prototype[yn]=!0,Rt.prototype[un]=Rt.prototype.remove;var Kn;e(It,Y),It.of=function(){return this(arguments)},It.prototype.toString=function(){return this.__toString("Stack [","]")},It.prototype.get=function(e,t){var n=this._head;for(e=a(this,e);n&&e--;)n=n.next;return n?n.value:t},It.prototype.peek=function(){return this._head&&this._head.value},It.prototype.push=function(){if(0===arguments.length)return this;for(var e=this.size+arguments.length,t=this._head,n=arguments.length-1;n>=0;n--)t={value:arguments[n],next:t};return this.__ownerID?(this.size=e,this._head=t,this.__hash=void 0,this.__altered=!0,this):Pt(e,t)},It.prototype.pushAll=function(e){if(e=f(e),0===e.size)return this;se(e.size);var t=this.size,n=this._head;return e.reverse().forEach(function(e){t++,n={value:e,next:n}}),this.__ownerID?(this.size=t,this._head=n,this.__hash=void 0,this.__altered=!0,this):Pt(t,n)},It.prototype.pop=function(){return this.slice(1)},It.prototype.unshift=function(){return this.push.apply(this,arguments)},It.prototype.unshiftAll=function(e){return this.pushAll(e)},It.prototype.shift=function(){return this.pop.apply(this,arguments)},It.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Nt()},It.prototype.slice=function(e,t){if(u(e,t,this.size))return this;var n=c(e,this.size),r=l(t,this.size);if(r!==this.size)return Y.prototype.slice.call(this,e,t);for(var o=this.size-n,i=this._head;n--;)i=i.next;return this.__ownerID?(this.size=o,this._head=i,this.__hash=void 0,this.__altered=!0,this):Pt(o,i)},It.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Pt(this.size,this._head,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},It.prototype.__iterate=function(e,t){if(t)return this.reverse().__iterate(e);for(var n=0,r=this._head;r&&e(r.value,n++,this)!==!1;)r=r.next;return n},It.prototype.__iterator=function(e,t){if(t)return this.reverse().__iterator(e);var n=0,r=this._head;return new S(function(){if(r){var t=r.value;return r=r.next,E(e,n++,t)}return R()})},It.isStack=xt;var Xn="@@__IMMUTABLE_STACK__@@",Jn=It.prototype;Jn[Xn]=!0,Jn.withMutations=Bn.withMutations,Jn.asMutable=Bn.asMutable,Jn.asImmutable=Bn.asImmutable,Jn.wasAltered=Bn.wasAltered;var Qn;e(Dt,K),Dt.of=function(){return this(arguments)},Dt.fromKeys=function(e){return this(d(e).keySeq())},Dt.prototype.toString=function(){return this.__toString("Set {","}")},Dt.prototype.has=function(e){return this._map.has(e)},Dt.prototype.add=function(e){return At(this,this._map.set(e,!0))},Dt.prototype.remove=function(e){return At(this,this._map.remove(e))},Dt.prototype.clear=function(){return At(this,this._map.clear())},Dt.prototype.union=function(){var e=sn.call(arguments,0);return e=e.filter(function(e){return 0!==e.size}),0===e.length?this:0!==this.size||this.__ownerID||1!==e.length?this.withMutations(function(t){for(var n=0;n1?" by "+this._step:"")+" ]"},Yt.prototype.get=function(e,t){return this.has(e)?this._start+a(this,e)*this._step:t},Yt.prototype.includes=function(e){var t=(e-this._start)/this._step;return t>=0&&t=t?new Yt(0,0):new Yt(this.get(e,this._end),this.get(t,this._end),this._step))},Yt.prototype.indexOf=function(e){var t=e-this._start;if(t%this._step===0){var n=t/this._step;if(n>=0&&n=i;i++){if(e(o,i,this)===!1)return i+1;o+=t?-r:r}return i},Yt.prototype.__iterator=function(e,t){var n=this.size-1,r=this._step,o=t?this._start+n*r:this._start,i=0;return new S(function(){var a=o;return o+=t?-r:r,i>n?R():E(e,i++,a)})},Yt.prototype.equals=function(e){return e instanceof Yt?this._start===e._start&&this._end===e._end&&this._step===e._step:Wt(this,e)};var or;e(Kt,N),Kt.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Kt.prototype.get=function(e,t){return this.has(e)?this._value:t},Kt.prototype.includes=function(e){return X(this._value,e)},Kt.prototype.slice=function(e,t){var n=this.size;return u(e,t,n)?this:new Kt(this._value,l(t,n)-c(e,n))},Kt.prototype.reverse=function(){return this},Kt.prototype.indexOf=function(e){return X(this._value,e)?0:-1},Kt.prototype.lastIndexOf=function(e){return X(this._value,e)?this.size:-1},Kt.prototype.__iterate=function(e,t){for(var n=0;ne?this.count():this.size);var r=this.slice(0,e);return xe(this,1===n?r:r.concat(o(arguments,2),this.slice(e+t)))},findLastIndex:function(e,t){var n=this.toKeyedSeq().findLastKey(e,t);return void 0===n?-1:n},first:function(){return this.get(0)},flatten:function(e){return xe(this,Ee(this,e,!1))},get:function(e,t){return e=a(this,e),0>e||this.size===1/0||void 0!==this.size&&e>this.size?t:this.find(function(t,n){return n===e},void 0,t)},has:function(e){return e=a(this,e),e>=0&&(void 0!==this.size?this.size===1/0||en?e:1-e,a=t-n,s=t-r;o=a>0&&0===s||s>0&&0===a?this.props.navigationStyles.Interpolators.RightToCenter:0>a&&0===s||0>s&&0===a?this.props.navigationStyles.Interpolators.CenterToLeft:a===s?this.props.navigationStyles.Interpolators.RightToCenter:this.props.navigationStyles.Interpolators.RightToLeft,h.forEach(function(e){var n=this._components[e].get(this.props.navState.routeStack[t]),r=this._getReusableProps(e,t);n&&o[e](r.style,i)&&n.setNativeProps(r)},this)},updateProgress:function(e,t,n){for(var r=Math.max(t,n),o=Math.min(t,n),i=o;r>=i;i++)this._updateIndexProgress(e,i,t,n)},render:function(){var e={height:this.props.navigationStyles.General.TotalNavHeight},t=this.props.navState,n=h.map(function(e){return t.routeStack.map(this._getComponent.bind(this,e))},this);return o.createElement(c,{style:[m.navBarContainer,e,this.props.style]},n)},_getComponent:function(e,t,n){var r=this;if(this._descriptors[e].includes(t))return this._descriptors[e].get(t);var i=null,a=this.props.routeMapper[e](this.props.navState.routeStack[n],this.props.navigator,n,this.props.navState);if(!a)return null;var s=n===f(this.props.navState)?this.props.navigationStyles.Stages.Center:this.props.navigationStyles.Stages.Left;return i=o.createElement(c,{ref:function(n){r._components[e]=r._components[e].set(t,n)},style:s[e]},a),this._descriptors[e]=this._descriptors[e].set(t,i),i}}),m=u.create({navBarContainer:{position:"absolute",top:0,left:0,right:0,backgroundColor:"transparent"}});n.exports=v}),__d("StaticContainer.react",["React","onlyChild"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;nt&&(a+=r&&n?u.currentPageX:r&&!n?u.currentPageY:!r&&n?u.previousPageX:u.previousPageY,s=1);else for(var c=0;c=t){var p;p=r&&n?l.currentPageX:r&&!n?l.currentPageY:!r&&n?l.previousPageX:l.previousPageY,a+=p,s++}}return s>0?a/s:o.noCentroid},currentCentroidXOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!0,!0)},currentCentroidYOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!1,!0)},previousCentroidXOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!0,!1)},previousCentroidYOfTouchesChangedAfter:function(e,t){return o.centroidDimension(e,t,!1,!1)},currentCentroidX:function(e){return o.centroidDimension(e,0,!0,!0)},currentCentroidY:function(e){return o.centroidDimension(e,0,!1,!0)},noCentroid:-1};n.exports=o}),__d("clamp",[],function(e,t,n,r){function o(e,t,n){return e>t?e:t>n?n:t}n.exports=o}),__d("rebound/rebound.js",[],function(e,t,n,r){!function(){function e(e,t){var n=e.indexOf(t);-1!=n&&e.splice(n,1)}var t={},n=t.util={},o=Array.prototype.concat,i=Array.prototype.slice;n.bind=function(e,t){var n=i.call(arguments,2);return function(){e.apply(t,o.call(n,i.call(arguments)))}},n.extend=function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};var a=t.SpringSystem=function(e){this._springRegistry={},this._activeSprings=[],this.listeners=[],this._idleSpringIndices=[],this.looper=e||new l,this.looper.springSystem=this};n.extend(a.prototype,{_springRegistry:null,_isIdle:!0,_lastTimeMillis:-1,_activeSprings:null,listeners:null,_idleSpringIndices:null,setLooper:function(e){this.looper=e,e.springSystem=this},createSpring:function(e,t){var n;return n=void 0===e||void 0===t?c.DEFAULT_ORIGAMI_SPRING_CONFIG:c.fromOrigamiTensionAndFriction(e,t),this.createSpringWithConfig(n)},createSpringWithBouncinessAndSpeed:function(e,t){var n;return n=void 0===e||void 0===t?c.DEFAULT_ORIGAMI_SPRING_CONFIG:c.fromBouncinessAndSpeed(e,t),this.createSpringWithConfig(n)},createSpringWithConfig:function(e){var t=new s(this);return this.registerSpring(t),t.setSpringConfig(e),t},getIsIdle:function(){return this._isIdle},getSpringById:function(e){return this._springRegistry[e]},getAllSprings:function(){var e=[];for(var t in this._springRegistry)this._springRegistry.hasOwnProperty(t)&&e.push(this._springRegistry[t]);return e},registerSpring:function(e){this._springRegistry[e.getId()]=e},deregisterSpring:function(t){e(this._activeSprings,t),delete this._springRegistry[t.getId()]},advance:function(e,t){for(;this._idleSpringIndices.length>0;)this._idleSpringIndices.pop();for(var n=0,r=this._activeSprings.length;r>n;n++){var o=this._activeSprings[n];o.systemShouldAdvance()?o.advance(e/1e3,t/1e3):this._idleSpringIndices.push(this._activeSprings.indexOf(o))}for(;this._idleSpringIndices.length>0;){var i=this._idleSpringIndices.pop();i>=0&&this._activeSprings.splice(i,1)}},loop:function(e){var t;-1===this._lastTimeMillis&&(this._lastTimeMillis=e-1);var n=e-this._lastTimeMillis;this._lastTimeMillis=e;var r=0,o=this.listeners.length;for(r=0;o>r;r++)t=this.listeners[r],t.onBeforeIntegrate&&t.onBeforeIntegrate(this);for(this.advance(e,n),0===this._activeSprings.length&&(this._isIdle=!0,this._lastTimeMillis=-1),r=0;o>r;r++)t=this.listeners[r],t.onAfterIntegrate&&t.onAfterIntegrate(this);this._isIdle||this.looper.run()},activateSpring:function(e){var t=this._springRegistry[e];-1==this._activeSprings.indexOf(t)&&this._activeSprings.push(t),this.getIsIdle()&&(this._isIdle=!1,this.looper.run())},addListener:function(e){this.listeners.push(e)},removeListener:function(t){e(this.listeners,t)},removeAllListeners:function(){this.listeners=[]}});var s=t.Spring=function m(e){this._id="s"+m._ID++,this._springSystem=e,this.listeners=[],this._currentState=new u,this._previousState=new u,this._tempState=new u};n.extend(s,{_ID:0,MAX_DELTA_TIME_SEC:.064,SOLVER_TIMESTEP_SEC:.001}),n.extend(s.prototype,{_id:0,_springConfig:null,_overshootClampingEnabled:!1,_currentState:null,_previousState:null,_tempState:null,_startValue:0,_endValue:0,_wasAtRest:!0,_restSpeedThreshold:.001,_displacementFromRestThreshold:.001,listeners:null,_timeAccumulator:0,_springSystem:null,destroy:function(){this.listeners=[],this.frames=[],this._springSystem.deregisterSpring(this)},getId:function(){return this._id},setSpringConfig:function(e){return this._springConfig=e,this},getSpringConfig:function(){return this._springConfig},setCurrentValue:function(e,t){return this._startValue=e,this._currentState.position=e,t||this.setAtRest(),this.notifyPositionUpdated(!1,!1),this},getStartValue:function(){return this._startValue},getCurrentValue:function(){return this._currentState.position},getCurrentDisplacementDistance:function(){return this.getDisplacementDistanceForState(this._currentState)},getDisplacementDistanceForState:function(e){return Math.abs(this._endValue-e.position)},setEndValue:function(e){if(this._endValue==e&&this.isAtRest())return this;this._startValue=this.getCurrentValue(),this._endValue=e,this._springSystem.activateSpring(this.getId());for(var t=0,n=this.listeners.length;n>t;t++){var r=this.listeners[t],o=r.onSpringEndStateChange;o&&o(this)}return this},getEndValue:function(){return this._endValue},setVelocity:function(e){return e===this._currentState.velocity?this:(this._currentState.velocity=e,this._springSystem.activateSpring(this.getId()),this)},getVelocity:function(){return this._currentState.velocity},setRestSpeedThreshold:function(e){return this._restSpeedThreshold=e,this},getRestSpeedThreshold:function(){return this._restSpeedThreshold},setRestDisplacementThreshold:function(e){this._displacementFromRestThreshold=e},getRestDisplacementThreshold:function(){return this._displacementFromRestThreshold},setOvershootClampingEnabled:function(e){return this._overshootClampingEnabled=e,this},isOvershootClampingEnabled:function(){return this._overshootClampingEnabled},isOvershooting:function(){var e=this._startValue,t=this._endValue;return this._springConfig.tension>0&&(t>e&&this.getCurrentValue()>t||e>t&&this.getCurrentValue()s.MAX_DELTA_TIME_SEC&&(r=s.MAX_DELTA_TIME_SEC),this._timeAccumulator+=r;for(var o,i,a,u,c,l,p,h,d,f,v=this._springConfig.tension,m=this._springConfig.friction,g=this._currentState.position,y=this._currentState.velocity,_=this._tempState.position,b=this._tempState.velocity;this._timeAccumulator>=s.SOLVER_TIMESTEP_SEC;)this._timeAccumulator-=s.SOLVER_TIMESTEP_SEC,this._timeAccumulator0&&this._interpolate(this._timeAccumulator/s.SOLVER_TIMESTEP_SEC),(this.isAtRest()||this._overshootClampingEnabled&&this.isOvershooting())&&(this._springConfig.tension>0?(this._startValue=this._endValue,this._currentState.position=this._endValue):(this._endValue=this._currentState.position,this._startValue=this._endValue),this.setVelocity(0),n=!0);var S=!1;this._wasAtRest&&(this._wasAtRest=!1,S=!0);var E=!1;n&&(this._wasAtRest=!0,E=!0),this.notifyPositionUpdated(S,E)}},notifyPositionUpdated:function(e,t){for(var n=0,r=this.listeners.length;r>n;n++){var o=this.listeners[n];e&&o.onSpringActivate&&o.onSpringActivate(this),o.onSpringUpdate&&o.onSpringUpdate(this),t&&o.onSpringAtRest&&o.onSpringAtRest(this)}},systemShouldAdvance:function(){return!this.isAtRest()||!this.wasAtRest()},wasAtRest:function(){return this._wasAtRest},isAtRest:function(){return Math.abs(this._currentState.velocity)=e?this.b3Friction1(e):e>18&&44>=e?this.b3Friction2(e):this.b3Friction3(e)}}),n.extend(c,{fromOrigamiTensionAndFriction:function(e,t){return new c(p.tensionFromOrigamiValue(e),p.frictionFromOrigamiValue(t))},fromBouncinessAndSpeed:function(e,n){var r=new t.BouncyConversion(e,n);return this.fromOrigamiTensionAndFriction(r.bouncyTension,r.bouncyFriction)},coastingConfigWithOrigamiFriction:function(e){return new c(0,p.frictionFromOrigamiValue(e))}}),c.DEFAULT_ORIGAMI_SPRING_CONFIG=c.fromOrigamiTensionAndFriction(40,7),n.extend(c.prototype,{friction:0,tension:0});var d={};n.hexToRGB=function(e){if(d[e])return d[e];e=e.replace("#",""),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var t=e.match(/.{2}/g),n={r:parseInt(t[0],16),g:parseInt(t[1],16),b:parseInt(t[2],16)};return d[e]=n,n},n.rgbToHex=function(e,t,n){return e=e.toString(16),t=t.toString(16),n=n.toString(16),e=e.length<2?"0"+e:e,t=t.length<2?"0"+t:t,n=n.length<2?"0"+n:n,"#"+e+t+n};var f=t.MathUtil={mapValueInRange:function(e,t,n,r,o){var i=n-t,a=o-r,s=(e-t)/i;return r+s*a},interpolateColor:function(e,t,r,o,i,a){o=void 0===o?0:o,i=void 0===i?1:i,t=n.hexToRGB(t),r=n.hexToRGB(r);var s=Math.floor(n.mapValueInRange(e,o,i,t.r,r.r)),u=Math.floor(n.mapValueInRange(e,o,i,t.g,r.g)),c=Math.floor(n.mapValueInRange(e,o,i,t.b,r.b));return a?"rgb("+s+","+u+","+c+")":n.rgbToHex(s,u,c)},degreesToRadians:function(e){return e*Math.PI/180},radiansToDegrees:function(e){return 180*e/Math.PI}};n.extend(n,f);var v;"undefined"!=typeof window&&(v=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||function(e){window.setTimeout(e,1e3/60)}),v||"undefined"==typeof process||"node"!==process.title||(v=setImmediate),n.onFrame=function(e){return v(e)},"undefined"!=typeof r?n.extend(r,t):"undefined"!=typeof window&&(window.rebound=t)}()}),__d("NavigatorIOS",["EventEmitter","Image","NavigationContext","NativeModules","React","StaticContainer.react","StyleSheet","View","invariant","logError","requireNativeComponent","resolveAssetSource"],function(e,t,n,r){"use strict";function o(){return b++}var i=Object.assign||function(e){for(var t=1;tthis.state.observedTopOfStack+1?this.state.observedTopOfStack+1:null;this.setState({idStack:this.state.idStack.slice(0,this.state.observedTopOfStack+1),routeStack:this.state.routeStack.slice(0,this.state.observedTopOfStack+1),requestedTopOfStack:this.state.observedTopOfStack,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:e})},_emitDidFocus:function(e){this.navigationContext.emit("didfocus",{route:e})},_emitWillFocus:function(e){this.navigationContext.emit("willfocus",{route:e})},push:function(e){var t=this;f(!!e,"Must supply route to push"),this.state.requestedTopOfStack===this.state.observedTopOfStack&&this._tryLockNavigator(function(){t._emitWillFocus(e);var n=t.state.routeStack.concat([e]),r=t.state.idStack.concat([o()]);t.setState({idStack:r,routeStack:n,requestedTopOfStack:n.length-1,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:n.length-1})})},popN:function(e){var t=this;0!==e&&this.state.requestedTopOfStack===this.state.observedTopOfStack&&this.state.requestedTopOfStack>0&&this._tryLockNavigator(function(){var n=t.state.requestedTopOfStack-e;f(n>=0,"Cannot pop below 0"),t._emitWillFocus(t.state.routeStack[n]),t.setState({requestedTopOfStack:n,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:null})})},pop:function(){this.popN(1)},replaceAtIndex:function(e,t){if(f(!!e,"Must supply route to replace"),0>t&&(t+=this.state.routeStack.length),!(this.state.routeStack.length<=t)){var n=this.state.idStack.slice(),r=this.state.routeStack.slice();n[t]=o(),r[t]=e,this.setState({idStack:n,routeStack:r,makingNavigatorRequest:!1,updatingAllIndicesAtOrBeyond:t}),this._emitWillFocus(e),this._emitDidFocus(e)}},replace:function(e){this.replaceAtIndex(e,-1)},replacePrevious:function(e){this.replaceAtIndex(e,-2)},popToTop:function(){this.popToRoute(this.state.routeStack[0])},popToRoute:function(e){var t=this.state.routeStack.indexOf(e);f(-1!==t,"Calling pop to route for a route that doesn't exist!");var n=this.state.routeStack.length-t-1;this.popN(n)},replacePreviousAndPop:function(e){var t=this;this.state.requestedTopOfStack===this.state.observedTopOfStack&&(this.state.routeStack.length<2||this._tryLockNavigator(function(){t.replacePrevious(e),t.setState({requestedTopOfStack:t.state.requestedTopOfStack-1,makingNavigatorRequest:!0})}))},resetTo:function(e){f(!!e,"Must supply route to push"),this.state.requestedTopOfStack===this.state.observedTopOfStack&&(this.replaceAtIndex(e,0),this.popToRoute(e))},handleNavigationComplete:function(e){this._toFocusOnNavigationComplete&&(this._getFocusEmitter().emit("focus",this._toFocusOnNavigationComplete),this._toFocusOnNavigationComplete=null),this._handleNavigatorStackChanged(e)},_routeToStackItem:function(e,t){var n=e.component,r=null!==this.state.updatingAllIndicesAtOrBeyond&&this.state.updatingAllIndicesAtOrBeyond>=t;return l.createElement(p,{key:"nav"+t,shouldUpdate:r},l.createElement(T,{title:e.title,style:[R.stackItem,this.props.itemWrapperStyle,e.wrapperStyle],backButtonIcon:g(e.backButtonIcon),backButtonTitle:e.backButtonTitle,leftButtonIcon:g(e.leftButtonIcon),leftButtonTitle:e.leftButtonTitle,onNavLeftButtonTap:e.onLeftButtonPress,rightButtonIcon:g(e.rightButtonIcon),rightButtonTitle:e.rightButtonTitle,onNavRightButtonTap:e.onRightButtonPress,navigationBarHidden:this.props.navigationBarHidden,shadowHidden:this.props.shadowHidden,tintColor:this.props.tintColor,barTintColor:this.props.barTintColor,translucent:this.props.translucent!==!1,titleTextColor:this.props.titleTextColor},l.createElement(n,i({navigator:this.navigator,route:e},e.passProps))))},renderNavigationStackItems:function(){var e=this.state.makingNavigatorRequest||null!==this.state.updatingAllIndicesAtOrBeyond,t=e?this.state.routeStack.map(this._routeToStackItem):null;return l.createElement(p,{shouldUpdate:e},l.createElement(S,{ref:y,style:R.transitioner,vertical:this.props.vertical,requestedTopOfStack:this.state.requestedTopOfStack,onNavigationComplete:this.handleNavigationComplete},t))},render:function(){return l.createElement(d,{style:this.props.style},this.renderNavigationStackItems())}}),R=h.create({stackItem:{backgroundColor:"white",overflow:"hidden",position:"absolute",top:0,left:0,right:0,bottom:0},transitioner:{flex:1}}),w=m("RCTNavigator"),T=m("RCTNavItem");n.exports=E}),__d("PickerIOS",["NativeMethodsMixin","React","ReactChildren","ReactNativeViewAttributes","NativeModules","StyleSheet","View","requireNativeComponent","merge"],function(e,t,n,r){"use strict";var o=t("NativeMethodsMixin"),i=t("React"),a=t("ReactChildren"),s=(t("ReactNativeViewAttributes"),t("NativeModules").UIManager.RCTPicker.Constants),u=t("StyleSheet"),c=t("View"),l=t("requireNativeComponent"),p=(t("merge"),"picker"),h=i.createClass({displayName:"PickerIOS",mixins:[o],propTypes:{onValueChange:i.PropTypes.func,selectedValue:i.PropTypes.any},getInitialState:function(){return this._stateFromProps(this.props)},componentWillReceiveProps:function(e){this.setState(this._stateFromProps(e))},_stateFromProps:function(e){var t=0,n=[];return a.forEach(e.children,function(r,o){r.props.value===e.selectedValue&&(t=o),n.push({value:r.props.value,label:r.props.label})}),{selectedIndex:t,items:n}},render:function(){return i.createElement(c,{style:this.props.style},i.createElement(f,{ref:p,style:d.pickerIOS,items:this.state.items,selectedIndex:this.state.selectedIndex,onChange:this._onChange}))},_onChange:function(e){this.props.onChange&&this.props.onChange(e),this.props.onValueChange&&this.props.onValueChange(e.nativeEvent.newValue),this.state.selectedIndex!==e.nativeEvent.newIndex&&this.refs[p].setNativeProps({selectedIndex:this.state.selectedIndex})}});h.Item=i.createClass({displayName:"Item",propTypes:{value:i.PropTypes.any,label:i.PropTypes.string},render:function(){return null}});var d=u.create({pickerIOS:{height:s.ComponentHeight}}),f=l("RCTPicker",h,{nativeOnly:{items:!0,onChange:!0,selectedIndex:!0}});n.exports=h}),__d("ProgressBarAndroid",["UnimplementedView"],function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("ProgressViewIOS",["Image","NativeMethodsMixin","NativeModules","ReactPropTypes","React","StyleSheet","requireNativeComponent"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t_&&this._cancelLongPressDelayTimeout()}var v=p>t.left-o&&h>t.top-i&&p0,o=n&&n.length>0;return!r&&o?n[0]:r?t[0]:e}};n.exports=o}),__d("queryLayoutByID",["ReactNativeTagHandles","NativeModules"],function(e,t,n,r){"use strict";var o=t("ReactNativeTagHandles"),i=t("NativeModules").UIManager,a=function(e,t,n){i.measure(o.rootNodeIDToTag[e],n)};n.exports=a}),__d("TextInput",["DocumentSelectionState","EventEmitter","NativeMethodsMixin","NativeModules","Platform","ReactPropTypes","React","ReactChildren","StyleSheet","Text","TextInputState","react-timer-mixin/TimerMixin.js","TouchableWithoutFeedback","createReactNativeComponentClass","emptyFunction","invariant","requireNativeComponent"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t1&&(r=p.createElement(f,null,r)),t.inputView&&(r=[r,t.inputView]),e=p.createElement(w,o({ref:"input"},t,{children:r,mostRecentEventCount:this.state.mostRecentEventCount,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChange:this._onSelectionChange,onTextInput:this._onTextInput,onSelectionChangeShouldSetResponder:y.thatReturnsTrue,text:this._getText()}))}else{for(var n in S)if(t[n])throw new Error("TextInput prop `"+n+"` is only supported with multiline.");e=p.createElement(T,o({ref:"input"},t,{onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChangeShouldSetResponder:function(){return!0},text:this._getText(),mostRecentEventCount:this.state.mostRecentEventCount}))}return p.createElement(g,{onPress:this._onPress,rejectResponderTermination:!0,testID:t.testID},e)},_renderAndroid:function(){var e=u.UIText.AutocapitalizationType[this.props.autoCapitalize],t=u.AndroidTextInput.Constants.TextAlign[this.props.textAlign],n=u.AndroidTextInput.Constants.TextAlignVertical[this.props.textAlignVertical],r=this.props.children,o=0;h.forEach(r,function(){return++o}),_(!(this.props.value&&o),"Cannot specify both value and children."),o>1&&(r=p.createElement(f,null,r));var i=p.createElement(R,{ref:"input",style:[this.props.style],autoCapitalize:e,autoCorrect:this.props.autoCorrect,textAlign:t,textAlignVertical:n,keyboardType:this.props.keyboardType,mostRecentEventCount:this.state.mostRecentEventCount,multiline:this.props.multiline,numberOfLines:this.props.numberOfLines,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onTextInput:this._onTextInput,onEndEditing:this.props.onEndEditing,onSubmitEditing:this.props.onSubmitEditing,onLayout:this.props.onLayout,password:this.props.password||this.props.secureTextEntry,placeholder:this.props.placeholder,placeholderTextColor:this.props.placeholderTextColor,text:this._getText(),underlineColorAndroid:this.props.underlineColorAndroid,children:r,editable:this.props.editable});return p.createElement(g,{onPress:this._onPress,testID:this.props.testID},i)},_onFocus:function(e){this.props.onFocus&&this.props.onFocus(e)},_onPress:function(e){(this.props.editable||void 0===this.props.editable)&&this.focus()},_onChange:function(e){var t=this;"android"===c.OS&&this.refs.input.setNativeProps({mostRecentEventCount:e.nativeEvent.eventCount});var n=e.nativeEvent.text,r=e.nativeEvent.eventCount;this.props.onChange&&this.props.onChange(e),this.props.onChangeText&&this.props.onChangeText(n),this.setState({mostRecentEventCount:r},function(){n!==t.props.value&&"string"==typeof t.props.value&&t.refs.input.setNativeProps({text:t.props.value})})},_onBlur:function(e){this.blur(),this.props.onBlur&&this.props.onBlur(e)},_onSelectionChange:function(e){if(this.props.selectionState){var t=e.nativeEvent.selection;this.props.selectionState.update(t.start,t.end)}this.props.onSelectionChange&&this.props.onSelectionChange(e)},_onTextInput:function(e){this.props.onTextInput&&this.props.onTextInput(e)}}),O=d.create({input:{alignSelf:"stretch"}});n.exports=C}),__d("DocumentSelectionState",["mixInEventEmitter"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nthis._focusOffset}},{key:"getAnchorOffset",value:function(){return this._hasFocus?this._anchorOffset:null}},{key:"getFocusOffset",value:function(){return this._hasFocus?this._focusOffset:null}},{key:"getStartOffset",value:function(){return this._hasFocus?Math.min(this._anchorOffset,this._focusOffset):null}},{key:"getEndOffset",value:function(){return this._hasFocus?Math.max(this._anchorOffset,this._focusOffset):null}},{key:"overlaps",value:function(e,t){return this.hasFocus()&&this.getStartOffset()<=t&&e<=this.getEndOffset()}}]),e}();a(s,{blur:!0,focus:!0,update:!0}),n.exports=s}),__d("mixInEventEmitter",["EventEmitter","EventEmitterWithHolding","EventHolder","EventValidator","copyProperties","invariant","keyOf"],function(e,t,n,r){function o(e,t){l(t,"Must supply set of valid event types"),l(!this.__eventEmitter,"An active emitter is already mixed in");var n=e.prototype||e,r=e.constructor;r&&l(r===Object||r===Function,"Mix EventEmitter into a class, not an instance"),n.hasOwnProperty(h)?c(n.__types,t):n.__types?n.__types=c({},n.__types,t):n.__types=t,c(n,d)}var i=t("EventEmitter"),a=t("EventEmitterWithHolding"),s=t("EventHolder"),u=t("EventValidator"),c=t("copyProperties"),l=t("invariant"),p=t("keyOf"),h=p({__types:!0}),d={emit:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emit(e,t,n,r,o,i,a)},emitAndHold:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emitAndHold(e,t,n,r,o,i,a)},addListener:function(e,t,n){return this.__getEventEmitter().addListener(e,t,n)},once:function(e,t,n){return this.__getEventEmitter().once(e,t,n)},addRetroactiveListener:function(e,t,n){return this.__getEventEmitter().addRetroactiveListener(e,t,n)},addListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},addRetroactiveListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},removeAllListeners:function(){this.__getEventEmitter().removeAllListeners()},removeCurrentListener:function(){this.__getEventEmitter().removeCurrentListener()},releaseHeldEventType:function(e){this.__getEventEmitter().releaseHeldEventType(e)},__getEventEmitter:function(){if(!this.__eventEmitter){var e=new i;e=u.addValidation(e,this.__types);var t=new s;this.__eventEmitter=new a(e,t)}return this.__eventEmitter}};n.exports=o}),__d("EventEmitterWithHolding",[],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nt.distance?1:0},h=function(e,t){return e.distance/t.length<.334},d=function(e,t){var n,r,o=[];for(n=0;n<=e.length;n++)o[n]=[n];for(r=1;r<=t.length;r++)o[0][r]=r;for(n=1;n<=e.length;n++)for(r=1;r<=t.length;r++){var i=e.charAt(n-1)===t.charAt(r-1)?0:1;o[n][r]=Math.min(o[n-1][r]+1,o[n][r-1]+1,o[n-1][r-1]+i),n>1&&r>1&&e.charAt(n-1)==t.charAt(r-2)&&e.charAt(n-2)==t.charAt(r-1)&&(o[n][r]=Math.min(o[n][r],o[n-2][r-2]+i))}return o[e.length][t.length]};n.exports=s}),__d("copyProperties",[],function(e,t,n,r){function o(e,t,n,r,o,i,a){if(e=e||{},__DEV__&&a)throw new Error("Too many arguments passed to copyProperties");for(var s,u=[t,n,r,o,i],c=0;u[c];){s=u[c++];for(var l in s)e[l]=s[l];s.hasOwnProperty&&s.hasOwnProperty("toString")&&"undefined"!=typeof s.toString&&e.toString!==s.toString&&(e.toString=s.toString)}return e}n.exports=o}),__d("TouchableWithoutFeedback",["React","react-timer-mixin/TimerMixin.js","Touchable","View","ensurePositiveDelayProps","onlyChild"],function(e,t,n,r){"use strict";var o=t("React"),i=t("react-timer-mixin/TimerMixin.js"),a=t("Touchable"),s=t("View"),u=t("ensurePositiveDelayProps"),c=t("onlyChild"),l={top:20,left:20,right:20,bottom:30},p=o.createClass({displayName:"TouchableWithoutFeedback",mixins:[i,a.Mixin],propTypes:{accessible:o.PropTypes.bool,accessibilityComponentType:o.PropTypes.oneOf(s.AccessibilityComponentType),accessibilityTraits:o.PropTypes.oneOfType([o.PropTypes.oneOf(s.AccessibilityTraits),o.PropTypes.arrayOf(o.PropTypes.oneOf(s.AccessibilityTraits))]),onPress:o.PropTypes.func,onPressIn:o.PropTypes.func,onPressOut:o.PropTypes.func,onLayout:o.PropTypes.func,onLongPress:o.PropTypes.func,delayPressIn:o.PropTypes.number,delayPressOut:o.PropTypes.number,delayLongPress:o.PropTypes.number},getInitialState:function(){return this.touchableGetInitialState()},componentDidMount:function(){u(this.props)},componentWillReceiveProps:function(e){u(e)},touchableHandlePress:function(e){this.props.onPress&&this.props.onPress(e)},touchableHandleActivePressIn:function(e){this.props.onPressIn&&this.props.onPressIn(e)},touchableHandleActivePressOut:function(e){this.props.onPressOut&&this.props.onPressOut(e)},touchableHandleLongPress:function(e){this.props.onLongPress&&this.props.onLongPress(e)},touchableGetPressRectOffset:function(){return l},touchableGetHighlightDelayMS:function(){return this.props.delayPressIn||0},touchableGetLongPressDelayMS:function(){return 0===this.props.delayLongPress?0:this.props.delayLongPress||500},touchableGetPressOutDelayMS:function(){return this.props.delayPressOut||0},render:function(){return o.cloneElement(c(this.props.children),{accessible:this.props.accessible!==!1,accessibilityComponentType:this.props.accessibilityComponentType,accessibilityTraits:this.props.accessibilityTraits,testID:this.props.testID,onLayout:this.props.onLayout,onStartShouldSetResponder:this.touchableHandleStartShouldSetResponder,onResponderTerminationRequest:this.touchableHandleResponderTerminationRequest,onResponderGrant:this.touchableHandleResponderGrant,onResponderMove:this.touchableHandleResponderMove,onResponderRelease:this.touchableHandleResponderRelease,onResponderTerminate:this.touchableHandleResponderTerminate})}});n.exports=p}),__d("ensurePositiveDelayProps",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i=function(e){o(!(e.delayPressIn<0||e.delayPressOut<0||e.delayLongPress<0),"Touchable components cannot have negative delay properties")};n.exports=i}),__d("ToastAndroid",["warning"],function(e,t,n,r){"use strict";var o=t("warning"),i={show:function(e,t){o(!1,"Cannot use ToastAndroid on iOS.")}};n.exports=i}),__d("ToolbarAndroid",["UnimplementedView"],function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("TouchableHighlight",["NativeMethodsMixin","React","ReactNativeViewAttributes","StyleSheet","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","View","cloneWithProps","ensureComponentIsNative","ensurePositiveDelayProps","keyOf","merge","onlyChild"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t1)for(var r=1;n>r;r++)t=arguments[r],t&&(e=(e?e+" ":"")+t);return e}n.exports=o}),__d("ensureComponentIsNative",["invariant"],function(e,t,n,r){"use strict";var o=t("invariant"),i=function(e){o(e&&"function"==typeof e.setNativeProps,"Touchable child must either be native or forward setNativeProps to a native component")};n.exports=i}),__d("TouchableNativeFeedback",["React","StyleSheet","Text","View"],function(e,t,n,r){"use strict";var o=t("React"),i=t("StyleSheet"),a=t("Text"),s=t("View"),u=o.createClass({displayName:"DummyTouchableNativeFeedback",render:function(){return o.createElement(s,{style:[c.container,this.props.style]},o.createElement(a,{style:c.info},"TouchableNativeFeedback is not supported on this platform!"))}}),c=i.create({container:{height:100,width:300,backgroundColor:"#ffbcbc",borderWidth:1,borderColor:"red",alignItems:"center",justifyContent:"center",margin:10},info:{color:"#333333",margin:20}});n.exports=u}),__d("TouchableOpacity",["Animated","NativeMethodsMixin","React","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","ensurePositiveDelayProps","flattenStyle","keyOf"],function(e,t,n,r){"use strict";var o=Object.assign||function(e){for(var t=1;t=this._startTime+this._duration?(0===this._duration?this._onUpdate(this._toValue):this._onUpdate(this._fromValue+this._easing(1)*(this._toValue-this._fromValue)),void this.__debouncedOnEnd({finished:!0})):(this._onUpdate(this._fromValue+this._easing((e-this._startTime)/this._duration)*(this._toValue-this._fromValue)),void(this.__active&&(this._animationFrame=S(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,clearTimeout(this._timeout),window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(R),O=function(e){function t(e){i(this,t),l(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._deceleration=e.deceleration||.998,this._velocity=e.velocity}return o(t,e),p(t,[{key:"start",value:function(e,t,n){this.__active=!0,this._lastValue=e,this._fromValue=e,this._onUpdate=t,this.__onEnd=n,this._startTime=Date.now(),this._animationFrame=S(this.onUpdate.bind(this))}},{key:"onUpdate",value:function(){var e=Date.now(),t=this._fromValue+this._velocity/(1-this._deceleration)*(1-Math.exp(-(1-this._deceleration)*(e-this._startTime)));return this._onUpdate(t),Math.abs(this._lastValue-t)<.1?void this.__debouncedOnEnd({finished:!0}):(this._lastValue=t,void(this.__active&&(this._animationFrame=S(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(R),I=function(e){function t(e){i(this,t),l(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._overshootClamping=s(e.overshootClamping,!1),this._restDisplacementThreshold=s(e.restDisplacementThreshold,.001),this._restSpeedThreshold=s(e.restSpeedThreshold,.001),this._initialVelocity=e.velocity,this._lastVelocity=s(e.velocity,0),this._toValue=e.toValue;var n;void 0!==e.bounciness||void 0!==e.speed?(b(void 0===e.tension&&void 0===e.friction,"You can only define bounciness/speed or tension/friction but not both"),n=g.fromBouncinessAndSpeed(s(e.bounciness,8),s(e.speed,12))):n=g.fromOrigamiTensionAndFriction(s(e.tension,40),s(e.friction,7)),this._tension=n.tension,this._friction=n.friction}return o(t,e),p(t,[{key:"start",value:function(e,n,r,o){if(this.__active=!0,this._startPosition=e,this._lastPosition=this._startPosition,this._onUpdate=n,this.__onEnd=r,this._lastTime=Date.now(),o instanceof t){var i=o.getInternalState();this._lastPosition=i.lastPosition,this._lastVelocity=i.lastVelocity,this._lastTime=i.lastTime}void 0!==this._initialVelocity&&null!==this._initialVelocity&&(this._lastVelocity=this._initialVelocity),this.onUpdate()}},{key:"getInternalState",value:function(){return{lastPosition:this._lastPosition,lastVelocity:this._lastVelocity,lastTime:this._lastTime}}},{key:"onUpdate",value:function(){var e=this._lastPosition,t=this._lastVelocity,n=this._lastPosition,r=this._lastVelocity,o=64,i=Date.now();i>this._lastTime+o&&(i=this._lastTime+o);for(var a=1,s=Math.floor((i-this._lastTime)/a),u=0;s>u;++u){var c=a/1e3,l=t,p=this._tension*(this._toValue-n)-this._friction*r,n=e+l*c/2,r=t+p*c/2,h=r,d=this._tension*(this._toValue-n)-this._friction*r;n=e+h*c/2,r=t+d*c/2;var f=r,v=this._tension*(this._toValue-n)-this._friction*r;n=e+f*c/2,r=t+v*c/2;var m=r,g=this._tension*(this._toValue-n)-this._friction*r;n=e+f*c/2,r=t+v*c/2;var y=(l+2*(h+f)+m)/6,_=(p+2*(d+v)+g)/6;e+=y*c,t+=_*c}if(this._lastTime=i,this._lastPosition=e,this._lastVelocity=t,this._onUpdate(e),this.__active){var b=!1;this._overshootClamping&&0!==this._tension&&(b=this._startPositionthis._toValue:eo;o++)r[o]=arguments[o];var i=function(e,t,n){if("number"==typeof t)return b(e instanceof P,"Bad mapping of type "+typeof e+" for key "+n+", event value must map to AnimatedValue"),void e.setValue(t);b("object"==typeof e,"Bad mapping of type "+typeof e+" for key "+n),b("object"==typeof t,"Bad event of type "+typeof t+" for key "+n);for(var n in e)i(e[n],t[n],n)};e.forEach(function(e,t){i(e,r[t],"arg"+t)}),t&&t.listener&&t.listener.apply(null,r)}};n.exports={Value:P,ValueXY:N,decay:F,timing:B,spring:V,delay:q,sequence:H,parallel:U,stagger:z,event:G,createAnimatedComponent:u,__PropsOnlyForTests:k}}),__d("Interpolation",["tinycolor"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t,n,r,o,i,a,s){var u=e;if(t>u){if("identity"===a)return u;"clamp"===a&&(u=t)}if(u>n){if("identity"===s)return u;"clamp"===s&&(u=n)}return r===o?r:t===n?t>=e?r:o:(t===-(1/0)?u=-u:n===1/0?u-=t:u=(u-t)/(n-t),u=i(u),r===-(1/0)?u=-u:o===1/0?u+=r:u=u*(o-r)+r,u)}function a(e){var t=f(e);if(t.isValid()){var n=t.toRgb(),r=n.r,o=n.g,i=n.b,a=n.a;return"rgba("+r+", "+o+", "+i+", "+(void 0===a?1:a)+")"}return e}function s(e){var t=e.outputRange;v(t.length>=2,"Bad output range"),t=t.map(a),u(t);var n=t[0].match(y).map(function(){return[]});t.forEach(function(e){e.match(y).forEach(function(e,t){n[t].push(+e)})});var r=t[0].match(y).map(function(t,r){return g.create(h({},e,{outputRange:n[r]}))});return function(e){var n=0;return t[0].replace(y,function(){return String(r[n++](e))})}}function u(e){for(var t=e[0].replace(y,""),n=1;n=e);++n);return n-1}function l(e){v(e.length>=2,"inputRange must have at least 2 elements");for(var t=1;t=e[t-1],"inputRange must be monotonically increasing "+e)}function p(e,t){v(t.length>=2,e+" must have at least 2 elements"),v(2!==t.length||t[0]!==-(1/0)||t[1]!==1/0,e+"cannot be ]-infinity;+infinity[ "+t)}Object.defineProperty(r,"__esModule",{value:!0});var h=Object.assign||function(e){for(var t=1;t0?1:0}},{key:"step1",value:function(e){return e>=1?1:0}},{key:"linear",value:function(e){return e}},{key:"ease",value:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){return u(e)})},{key:"quad",value:function(e){return e*e}},{key:"cubic",value:function(e){return e*e*e}},{key:"poly",value:function(e){return function(t){return Math.pow(t,e)}}},{key:"sin",value:function(e){return 1-Math.cos(e*Math.PI/2)}},{key:"circle",value:function(e){return 1-Math.sqrt(1-e*e)}},{key:"exp",value:function(e){return Math.pow(2,10*(e-1))}},{key:"elastic",value:function(){var e=arguments.length<=0||void 0===arguments[0]?1:arguments[0],t=e*Math.PI;return function(e){return 1-Math.pow(Math.cos(e*Math.PI/2),3)*Math.cos(e*t)}}},{key:"back",value:function(e){return void 0===e&&(e=1.70158),function(t){return t*t*((e+1)*t-e)}}},{key:"bounce",value:function(e){return 1/2.75>e?7.5625*e*e:2/2.75>e?(e-=1.5/2.75,7.5625*e*e+.75):2.5/2.75>e?(e-=2.25/2.75,7.5625*e*e+.9375):(e-=2.625/2.75,7.5625*e*e+.984375)}},{key:"bezier",value:function(e,t,n,r,o){if(void 0===o){var i=500;o=1e3/60/i/4}return a(e,t,n,r,o)}},{key:"in",value:function(e){return e}},{key:"out",value:function(e){return function(t){return 1-e(1-t)}}},{key:"inOut",value:function(e){return function(t){return.5>t?e(2*t)/2:1-e(2*(1-t))/2}}}]),e}(),u=s.bezier(.42,0,1,1);n.exports=s}),__d("bezier",[],function(e,t,n,r){n.exports=function(e,t,n,r,o){var i=function(t){var r=1-t;return 3*r*r*t*e+3*r*t*t*n+t*t*t},a=function(e){var n=1-e;return 3*n*n*e*t+3*n*e*e*r+e*e*e},s=function(t){var r=1-t;return 3*(2*(t-1)*t+r*r)*e+3*(-t*t*t+2*r*t)*n};return function(e){var t,n,r,u,c,l,p=e;for(r=p,l=0;8>l;l++){if(u=i(r)-p,Math.abs(u)r)return a(t);if(r>n)return a(n);for(;n>t;){if(u=i(r),Math.abs(u-p)u?t=r:n=r,r=.5*(n-t)+t}return a(r)}}}),__d("SpringConfig",[],function(e,t,n,r){"use strict";function o(e){return 3.62*(e-30)+194}function i(e){return 3*(e-8)+25}function a(e,t){return{tension:o(e),friction:i(t)}}function s(e,t){function n(e,t,n){return(e-t)/(n-t)}function r(e,t,n){return t+e*(n-t)}function a(e,t,n){return e*n+(1-e)*t}function s(e,t,n){return a(2*e-e*e,t,n)}function u(e){return 7e-4*Math.pow(e,3)-.031*Math.pow(e,2)+.64*e+1.28}function c(e){return 44e-6*Math.pow(e,3)-.006*Math.pow(e,2)+.36*e+2}function l(e){return 4.5e-7*Math.pow(e,3)-332e-6*Math.pow(e,2)+.1078*e+5.84}function p(e){return 18>=e?u(e):e>18&&44>=e?c(e):l(e)}var h=n(e/1.7,0,20);h=r(h,0,.8);var d=n(t/1.7,0,20),f=r(d,.5,200),v=s(h,p(f),.01);return{tension:o(f),friction:i(v)}}n.exports={fromOrigamiTensionAndFriction:a,fromBouncinessAndSpeed:s}}),__d("requestAnimationFrame",["emptyFunction","nativeRequestAnimationFrame"],function(e,t,n,r){var o=t("emptyFunction"),i=t("nativeRequestAnimationFrame"),a=0,s=i||function(t){var n=Date.now(),r=Math.max(0,16-(n-a));return a=n+r,e.setTimeout(function(){t(Date.now())},r)};s(o),n.exports=s}),__d("nativeRequestAnimationFrame",[],function(e,t,n,r){var o=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame;n.exports=o}),__d("ViewPagerAndroid",["UnimplementedView"],function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("WebView",["ActivityIndicatorIOS","EdgeInsetsPropType","React","StyleSheet","Text","View","invariant","keyMirror","requireNativeComponent","NativeModules"],function(e,t,n,r){"use strict";var o=t("ActivityIndicatorIOS"),i=t("EdgeInsetsPropType"),a=t("React"),s=t("StyleSheet"),u=t("Text"),c=t("View"),l=t("invariant"),p=t("keyMirror"),h=t("requireNativeComponent"),d=a.PropTypes,f=t("NativeModules").WebViewManager,v="rgba(255,255,255,0.8)",m="webview",g=p({IDLE:null,LOADING:null,ERROR:null}),y={click:f.NavigationType.LinkClicked,formsubmit:f.NavigationType.FormSubmitted,backforward:f.NavigationType.BackForward,reload:f.NavigationType.Reload,formresubmit:f.NavigationType.FormResubmitted,other:f.NavigationType.Other},_=f.JSNavigationScheme,b=function(){return a.createElement(c,{style:w.loadingView},a.createElement(o,null))},S=function(e,t,n){return a.createElement(c,{style:w.errorContainer},a.createElement(u,{style:w.errorTextTitle},"Error loading page"),a.createElement(u,{style:w.errorText},"Domain: "+e),a.createElement(u,{style:w.errorText},"Error Code: "+t),a.createElement(u,{style:w.errorText},"Description: "+n))},E=a.createClass({displayName:"WebView",statics:{JSNavigationScheme:_,NavigationType:y},propTypes:{url:d.string,html:d.string,renderError:d.func,renderLoading:d.func,bounces:d.bool,scrollEnabled:d.bool,automaticallyAdjustContentInsets:d.bool,contentInset:i,onNavigationStateChange:d.func,startInLoadingState:d.bool,style:c.propTypes.style,javaScriptEnabledAndroid:d.bool,injectedJavaScript:d.string,scalesPageToFit:d.bool},getInitialState:function(){return{viewState:g.IDLE,lastErrorEvent:null,startInLoadingState:!0}},componentWillMount:function(){this.props.startInLoadingState&&this.setState({viewState:g.LOADING})},render:function(){var e=null;if(this.state.viewState===g.LOADING)e=(this.props.renderLoading||b)();else if(this.state.viewState===g.ERROR){var t=this.state.lastErrorEvent;l(null!=t,"lastErrorEvent expected to be non-null"),e=(this.props.renderError||S)(t.domain,t.code,t.description)}else this.state.viewState!==g.IDLE&&console.error("RCTWebView invalid state encountered: "+this.state.loading);var n=[w.container,w.webView,this.props.style];(this.state.viewState===g.LOADING||this.state.viewState===g.ERROR)&&n.push(w.hidden);var r=a.createElement(R,{ref:m,key:"webViewKey",style:n,url:this.props.url,html:this.props.html,injectedJavaScript:this.props.injectedJavaScript,bounces:this.props.bounces,scrollEnabled:this.props.scrollEnabled,contentInset:this.props.contentInset,automaticallyAdjustContentInsets:this.props.automaticallyAdjustContentInsets,onLoadingStart:this.onLoadingStart,onLoadingFinish:this.onLoadingFinish,onLoadingError:this.onLoadingError,scalesPageToFit:this.props.scalesPageToFit});return a.createElement(c,{style:w.container},r,e)},goForward:function(){f.goForward(this.getWebViewHandle())},goBack:function(){f.goBack(this.getWebViewHandle())},reload:function(){f.reload(this.getWebViewHandle())},updateNavigationState:function(e){this.props.onNavigationStateChange&&this.props.onNavigationStateChange(e.nativeEvent)},getWebViewHandle:function(){return a.findNodeHandle(this.refs[m])},onLoadingStart:function(e){this.updateNavigationState(e)},onLoadingError:function(e){e.persist(),console.warn("Encountered an error loading page",e.nativeEvent),this.setState({lastErrorEvent:e.nativeEvent,viewState:g.ERROR})},onLoadingFinish:function(e){this.setState({viewState:g.IDLE}),this.updateNavigationState(e)}}),R=h("RCTWebView",E,{nativeOnly:{onLoadingStart:!0,onLoadingError:!0,onLoadingFinish:!0}}),w=s.create({container:{flex:1},errorContainer:{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:v},errorText:{fontSize:14,textAlign:"center",marginBottom:2},errorTextTitle:{fontSize:15,fontWeight:"500",marginBottom:10},hidden:{height:0,flex:0},loadingView:{backgroundColor:v,flex:1,justifyContent:"center",alignItems:"center"},webView:{backgroundColor:"#ffffff"}});n.exports=E}),__d("ActionSheetIOS",["NativeModules","invariant"],function(e,t,n,r){"use strict";var o=t("NativeModules").ActionSheetManager,i=t("invariant"),a={showActionSheetWithOptions:function(e,t){i("object"==typeof e&&null!==e,"Options must a valid object"),i("function"==typeof t,"Must provide a valid callback"),o.showActionSheetWithOptions(e,function(){},t)},showShareActionSheetWithOptions:function(e,t,n){i("object"==typeof e&&null!==e,"Options must a valid object"),i("function"==typeof t,"Must provide a valid failureCallback"),i("function"==typeof n,"Must provide a valid successCallback"),o.showShareActionSheetWithOptions(e,t,n)}};n.exports=a}),__d("AdSupportIOS",["NativeModules"],function(e,t,n,r){"use strict";var o=t("NativeModules").AdSupport;n.exports={getAdvertisingId:function(e,t){o.getAdvertisingId(e,t)},getAdvertisingTrackingEnabled:function(e,t){o.getAdvertisingTrackingEnabled(e,t)}}}),__d("AlertIOS",["NativeModules","invariant"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;nu.get("window").height/2?"top":"bottom",selection:r.length-1,hierarchy:r,inspected:{style:i.style||{},frame:t}})}},{key:"setPerfing",value:function(e){this.setState({perfing:e,inspecting:!1,inspected:null})}},{key:"setInspecting",value:function(e){this.setState({inspecting:e,inspected:null})}},{key:"render",value:function(){var e="bottom"===this.state.panelPos?{bottom:0}:{top:0};return h.createElement(v,{style:g.container,pointerEvents:"box-none"},this.state.inspecting&&h.createElement(c,{rootTag:this.props.rootTag,inspected:this.state.inspected,inspectedViewTag:this.props.inspectedViewTag,onTouchInstance:this.onTouchInstance.bind(this)}),h.createElement(v,{style:[g.panelContainer,e]},h.createElement(l,{devtoolsIsOpen:!!this.state.devtoolsAgent,inspecting:this.state.inspecting,perfing:this.state.perfing,setPerfing:this.setPerfing.bind(this),setInspecting:this.setInspecting.bind(this),inspected:this.state.inspected,hierarchy:this.state.hierarchy,selection:this.state.selection,setSelection:this.setSelection.bind(this)})))}}]),t}(h.Component),g=d.create({container:{position:"absolute",backgroundColor:"transparent",top:0,left:0,right:0,bottom:0},panelContainer:{position:"absolute",left:0,right:0}});n.exports=m}),__d("InspectorOverlay",["Dimensions","InspectorUtils","React","StyleSheet","NativeModules","View","ElementBox"],function(e,t,n,r){"use strict";var o=t("Dimensions"),i=t("InspectorUtils"),a=t("React"),s=t("StyleSheet"),u=t("NativeModules").UIManager,c=t("View"),l=t("ElementBox"),p=a.PropTypes,h=a.createClass({displayName:"InspectorOverlay",propTypes:{inspected:p.shape({frame:p.object,style:p.any}),inspectedViewTag:p.number,onTouchInstance:p.func.isRequired},findViewForTouchEvent:function(e){var t=this,n=e.nativeEvent.touches[0],r=n.locationX,o=n.locationY;u.findSubviewIn(this.props.inspectedViewTag,[r,o],function(e,n,r,a,s){var u=i.findInstanceByNativeTag(t.props.rootTag,e);u&&t.props.onTouchInstance(u,{left:n,top:r,width:a,height:s},o)})},shouldSetResponser:function(e){return this.findViewForTouchEvent(e),!0},render:function(){var e=null;return this.props.inspected&&(e=a.createElement(l,{frame:this.props.inspected.frame,style:this.props.inspected.style})),a.createElement(c,{onStartShouldSetResponder:this.shouldSetResponser,onResponderMove:this.findViewForTouchEvent,style:[d.inspector,{height:o.get("window").height}]},e)}}),d=s.create({inspector:{backgroundColor:"transparent",position:"absolute",left:0,top:0,right:0}});n.exports=h}),__d("ElementBox",["React","View","StyleSheet","BorderBox","resolveBoxStyle","flattenStyle"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n.5;e.dismissalSpring.setEndValue(o?1:0)}}})},render:function(){var e,t=this;return S.get(this.props.warning)>1&&(e=l.createElement(h,{style:x.bold},"(",S.get(this.props.warning),")"," ")),l.createElement(f,i({style:x.warningBox,ref:function(e){t.container=e}},this.panGesture.panHandlers),l.createElement(d,{onPress:this.props.onOpened},l.createElement(h,{style:x.warningText,numberOfLines:2,ref:function(e){t.text=e}},e,this.props.warning)),l.createElement(f,{ref:function(e){t.closeButton=e},style:x.closeButton},l.createElement(d,{onPress:function(){t.dismissalSpring.setEndValue(1)}},l.createElement(h,{style:x.closeButtonText},"✕"))))}}),C=l.createClass({displayName:"WarningBoxOpened",render:function(){var e;return S.get(this.props.warning)>1&&(e=l.createElement(h,{style:x.bold},"(",S.get(this.props.warning),")"," ")),l.createElement(d,{activeOpacity:.9,onPress:this.props.onClose,style:x.yellowBox},l.createElement(h,{style:x.yellowBoxText},e,this.props.warning),l.createElement(f,{style:x.yellowBoxButtons},l.createElement(d,{onPress:this.props.onDismissed,style:x.yellowBoxButton},l.createElement(h,{style:x.yellowBoxButtonText},"Dismiss")),l.createElement(d,{onPress:this.props.onIgnored,style:x.yellowBoxButton},l.createElement(h,{style:x.yellowBoxButtonText},"Ignore"))))}}),O=!0,I=l.createClass({displayName:"WarningBox",getInitialState:function(){return{totalWarningCount:R,openWarning:null}},componentWillMount:function(){console.yellowBoxResetIgnored&&(a.setItem(_,"[]",function(e){e&&console.warn("Could not reset ignored warnings.",e)}),E=[])},componentDidMount:function(){v(O,"There can only be one WarningBox"),O=!1,w.addListener("count",this._onWarningCount)},componentWillUnmount:function(){w.removeAllListeners(),O=!0},_onWarningCount:function(e){var t=this;setImmediate(function(){t.setState({totalWarningCount:e})})},_onDismiss:function(e){S["delete"](e),this.setState({openWarning:null})},render:function(){var e=this;if(0===S.size)return l.createElement(f,null);if(this.state.openWarning)return l.createElement(C,{warning:this.state.openWarning,onClose:function(){e.setState({openWarning:null})},onDismissed:this._onDismiss.bind(this,this.state.openWarning),onIgnored:function(){E.push(e.state.openWarning),o(),e._onDismiss(e.state.openWarning)}});var t=[];return S.forEach(function(n,r){t.push(l.createElement(T,{key:r,onOpened:function(){e.setState({openWarning:r})},onDismissed:e._onDismiss.bind(e,r),warning:r}))}),l.createElement(f,{style:x.warningContainer},t)}}),x=p.create({bold:{fontWeight:"bold"},closeButton:{position:"absolute",right:0,height:46,width:46},closeButtonText:{color:"white",fontSize:32,position:"relative",left:8},warningContainer:{position:"absolute",left:0,right:0,bottom:0},warningBox:{position:"relative",backgroundColor:"rgba(171, 124, 36, 0.9)",flex:1,height:46},warningText:{color:"white",position:"absolute",left:0,marginLeft:15,marginRight:46,top:7},yellowBox:{backgroundColor:"rgba(171, 124, 36, 0.9)",position:"absolute",left:0,right:0,top:0,bottom:0,padding:15,paddingTop:35},yellowBoxText:{color:"white",fontSize:20},yellowBoxButtons:{flexDirection:"row",position:"absolute",bottom:0},yellowBoxButton:{flex:1,padding:25},yellowBoxButtonText:{color:"white",fontSize:16}});n.exports=I}),__d("AsyncStorage",["NativeModules"],function(e,t,n,r){"use strict";function o(e){if(!e)return null;var t=new Error(e.message);return t.key=e.key,t}var i=t("NativeModules"),a=i.AsyncLocalStorage,s=i.AsyncRocksDBStorage,u=s||a,c={getItem:function(e,t){return new Promise(function(n,r){u.multiGet([e],function(e,i){var a=i&&i[0]&&i[0][1]?i[0][1]:null;t&&t(e&&o(e[0])||null,a),e?r(o(e[0])):n(a)})})},setItem:function(e,t,n){return new Promise(function(r,i){u.multiSet([[e,t]],function(e){n&&n(e&&o(e[0])||null),e?i(o(e[0])):r(null)})})},removeItem:function(e,t){return new Promise(function(n,r){u.multiRemove([e],function(e){t&&t(e&&o(e[0])||null),e?r(o(e[0])):n(null)})})},mergeItem:function(e,t,n){return new Promise(function(r,i){u.multiMerge([[e,t]],function(e){n&&n(e&&o(e[0])||null),e?i(o(e[0])):r(null)})})},clear:function(e){return new Promise(function(t,n){u.clear(function(r){e&&e(o(r)),r&&o(r)?n(o(r)):t(null)})})},getAllKeys:function(e){return new Promise(function(t,n){u.getAllKeys(function(r,i){e&&e(o(r),i),r?n(o(r)):t(i)})})},multiGet:function(e,t){return new Promise(function(n,r){u.multiGet(e,function(e,i){var a=e&&e.map(function(e){return o(e)})||null;t&&t(a,i),e?r(a):n(i)})})},multiSet:function(e,t){return new Promise(function(n,r){u.multiSet(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})},multiRemove:function(e,t){return new Promise(function(n,r){u.multiRemove(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})},multiMerge:function(e,t){return new Promise(function(n,r){u.multiMerge(e,function(e){var i=e&&e.map(function(e){return o(e)})||null;t&&t(i),e?r(i):n(null)})})}};u.multiMerge||(delete c.mergeItem,delete c.multiMerge),n.exports=c}),__d("setupDevtools",["flattenStyle","ReactCurrentOwner","ReactInstanceHandles","ReactNativeMount","ReactReconciler","ReactNativeTextComponent"],function(global,require,module,exports){"use strict";function setupDevtools(){function tryToConnect(){ws.send("attach:agent");var e=setInterval(function(){return ws.send("attach:agent")},500);ws.onmessage=function(t){0===t.data.indexOf("eval:")&&(clearInterval(e),initialize(t.data.slice("eval:".length)))}}function initialize(text){try{eval(text)}catch(e){return void console.error("Failed to eval"+e.message)}window.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject({CurrentOwner:require("ReactCurrentOwner"),InstanceHandles:require("ReactInstanceHandles"),Mount:require("ReactNativeMount"),Reconciler:require("ReactReconciler"),TextComponent:require("ReactNativeTextComponent")}),ws.onmessage=handleMessage}function handleMessage(e){var t;try{t=JSON.parse(e.data)}catch(n){return console.error("failed to parse json: "+e.data)}return t.$close||t.$error?(closeListeners.forEach(function(e){return e()}),window.__REACT_DEVTOOLS_GLOBAL_HOOK__.emit("shutdown"),void tryToConnect()):void(t.$open||messageListeners.forEach(function(e){try{e(t)}catch(n){throw console.log(t),n}}))}var messageListeners=[],closeListeners=[],ws=new window.WebSocket("ws://localhost:8081/devtools"),FOR_BACKEND={resolveRNStyle:require("flattenStyle"),wall:{listen:function(e){messageListeners.push(e)},onClose:function(e){closeListeners.push(e)},send:function(e){ws.send(JSON.stringify(e))}}};ws.onclose=function(){console.warn("devtools socket closed"),closeListeners.forEach(function(e){return e()})},ws.onerror=function(e){console.warn("devtools socket errored",e),closeListeners.forEach(function(e){return e()})},ws.onopen=function(){tryToConnect()}}module.exports=setupDevtools}),__d("RCTRenderingPerf",["ReactDefaultPerf","invariant"],function(e,t,n,r){"use strict";var o=t("ReactDefaultPerf"),i=t("invariant"),a=[],s=!1,u={toggle:function(){console.log("Render perfomance measurements enabled"),s=!0},start:function(){s&&(o.start(),a.forEach(function(e){return e.start()}))},stop:function(){if(s){o.stop(),o.printInclusive(),o.printWasted();for(var e=0,t=0,n=o.getLastMeasurements(),r=0;r component":e.componentName,"Inclusive time (ms)":o(e.time),Instances:e.count}})),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},getMeasurementsSummaryMap:function(e){var t=s.getInclusiveSummary(e,!0);return t.map(function(e){return{"Owner > component":e.componentName,"Wasted time (ms)":e.time,Instances:e.count}})},printWasted:function(e){e=e||p._allMeasurements,console.table(p.getMeasurementsSummaryMap(e)),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},printDOM:function(e){e=e||p._allMeasurements;var t=s.getDOMSummary(e);console.table(t.map(function(e){var t={};return t[a.ID_ATTRIBUTE_NAME]=e.id,t.type=e.type,t.args=JSON.stringify(e.args),t})),console.log("Total time:",s.getTotalTime(e).toFixed(2)+" ms")},_recordWrite:function(e,t,n,r){var o=p._allMeasurements[p._allMeasurements.length-1].writes;o[e]=o[e]||[],o[e].push({type:t,time:n,args:r})},measure:function(e,t,n){return function(){for(var r=arguments.length,o=Array(r),a=0;r>a;a++)o[a]=arguments[a];var s,c,h;if("_renderNewRootComponent"===t||"flushBatchedUpdates"===t)return p._allMeasurements.push({exclusive:{},inclusive:{},render:{},counts:{},writes:{},displayNames:{},totalTime:0}),h=l(),c=n.apply(this,o),p._allMeasurements[p._allMeasurements.length-1].totalTime=l()-h,c;if("_mountImageIntoNode"===t||"ReactDOMIDOperations"===e){if(h=l(),c=n.apply(this,o),s=l()-h,"_mountImageIntoNode"===t){var d=u.getID(o[1]);p._recordWrite(d,t,s,o[0])}else"dangerouslyProcessChildrenUpdates"===t?o[0].forEach(function(e){var t={};null!==e.fromIndex&&(t.fromIndex=e.fromIndex),null!==e.toIndex&&(t.toIndex=e.toIndex),null!==e.textContent&&(t.textContent=e.textContent),null!==e.markupIndex&&(t.markup=o[1][e.markupIndex]),p._recordWrite(e.parentID,e.type,s,t)}):p._recordWrite(o[0],t,s,Array.prototype.slice.call(o,1));return c}if("ReactCompositeComponent"!==e||"mountComponent"!==t&&"updateComponent"!==t&&"_renderValidatedComponent"!==t)return n.apply(this,o);if("string"==typeof this._currentElement.type)return n.apply(this,o);var f="mountComponent"===t?o[0]:this._rootNodeID,v="_renderValidatedComponent"===t,m="mountComponent"===t,g=p._mountStack,y=p._allMeasurements[p._allMeasurements.length-1];if(v?i(y.counts,f,1):m&&g.push(0),h=l(),c=n.apply(this,o),s=l()-h,v)i(y.render,f,s);else if(m){var _=g.pop();g[g.length-1]+=s,i(y.exclusive,f,s-_),i(y.inclusive,f,s)}else i(y.inclusive,f,s);return y.displayNames[f]={current:this.getName(),owner:this._currentElement._owner?this._currentElement._owner.getName():""},c}}};n.exports=p}),__d("DOMProperty",["invariant"],function(e,t,n,r){"use strict";function o(e,t){return(e&t)===t}var i=t("invariant"),a={MUST_USE_ATTRIBUTE:1,MUST_USE_PROPERTY:2,HAS_SIDE_EFFECTS:4,HAS_BOOLEAN_VALUE:8,HAS_NUMERIC_VALUE:16,HAS_POSITIVE_NUMERIC_VALUE:48,HAS_OVERLOADED_BOOLEAN_VALUE:64,injectDOMPropertyConfig:function(e){var t=a,n=e.Properties||{},r=e.DOMAttributeNamespaces||{},s=e.DOMAttributeNames||{},c=e.DOMPropertyNames||{},l=e.DOMMutationMethods||{};e.isCustomAttribute&&u._isCustomAttributeFunctions.push(e.isCustomAttribute);for(var p in n){i(!u.properties.hasOwnProperty(p),"injectDOMPropertyConfig(...): You're trying to inject DOM property '%s' which has already been injected. You may be accidentally injecting the same DOM property config twice, or you may be injecting two configs that have conflicting property names.",p);var h=p.toLowerCase(),d=n[p],f={attributeName:h,attributeNamespace:null,propertyName:p,mutationMethod:null,mustUseAttribute:o(d,t.MUST_USE_ATTRIBUTE),mustUseProperty:o(d,t.MUST_USE_PROPERTY),hasSideEffects:o(d,t.HAS_SIDE_EFFECTS),hasBooleanValue:o(d,t.HAS_BOOLEAN_VALUE),hasNumericValue:o(d,t.HAS_NUMERIC_VALUE),hasPositiveNumericValue:o(d,t.HAS_POSITIVE_NUMERIC_VALUE),hasOverloadedBooleanValue:o(d,t.HAS_OVERLOADED_BOOLEAN_VALUE)};if(i(!f.mustUseAttribute||!f.mustUseProperty,"DOMProperty: Cannot require using both attribute and property: %s",p),i(f.mustUseProperty||!f.hasSideEffects,"DOMProperty: Properties that have side effects must use property: %s",p),i(f.hasBooleanValue+f.hasNumericValue+f.hasOverloadedBooleanValue<=1,"DOMProperty: Value can be one of boolean, overloaded boolean, or numeric value, but not a combination: %s",p),__DEV__&&(u.getPossibleStandardName[h]=p),s.hasOwnProperty(p)){var v=s[p];f.attributeName=v,__DEV__&&(u.getPossibleStandardName[v]=p)}r.hasOwnProperty(p)&&(f.attributeNamespace=r[p]),c.hasOwnProperty(p)&&(f.propertyName=c[p]),l.hasOwnProperty(p)&&(f.mutationMethod=l[p]),u.properties[p]=f}}},s={},u={ID_ATTRIBUTE_NAME:"data-reactid",properties:{},getPossibleStandardName:__DEV__?{}:null,_isCustomAttributeFunctions:[],isCustomAttribute:function(e){for(var t=0;t=l&&s.push(n[t]);return s.sort(function(e,t){return t.exclusive-e.exclusive}),s}function s(e,t){for(var n,r={},o=0;o "+h.current,r[n]=r[n]||{componentName:n,time:0,count:0},a.inclusive[p]&&(r[n].time+=a.inclusive[p]),a.counts[p]&&(r[n].count+=a.counts[p])}}var d=[];for(n in r)r[n].time>=l&&d.push(r[n]);return d.sort(function(e,t){return t.time-e.time}),d}function u(e){var t={},n=Object.keys(e.writes),r=c({},e.exclusive,e.inclusive);for(var o in r){for(var i=!1,a=0;a0&&(t[o]=!0)}return t}var c=t("Object.assign"),l=1.2,p={_mountImageIntoNode:"set innerHTML",INSERT_MARKUP:"set innerHTML",MOVE_EXISTING:"move",REMOVE_NODE:"remove",TEXT_CONTENT:"set textContent",updatePropertyByID:"update attribute",deletePropertyByID:"delete attribute",updateStylesByID:"update styles",updateInnerHTMLByID:"set innerHTML",dangerouslyReplaceNodeWithMarkupByID:"replace"},h={getExclusiveSummary:a,getInclusiveSummary:s,getDOMSummary:i,getTotalTime:o};n.exports=h}),__d("ReactMount",["DOMProperty","ReactBrowserEventEmitter","ReactCurrentOwner","ReactElement","ReactEmptyComponent","ReactInstanceHandles","ReactInstanceMap","ReactMarkupChecksum","ReactPerf","ReactReconciler","ReactUpdateQueue","ReactUpdates","emptyObject","containsNode","instantiateReactComponent","invariant","setInnerHTML","shouldUpdateReactComponent","validateDOMNesting","warning"],function(e,t,n,r){"use strict";function o(e,t){for(var n=Math.min(e.length,t.length),r=0;n>r;r++)if(e.charAt(r)!==t.charAt(r))return r;return e.length===t.length?-1:n}function i(e){return e?e.nodeType===q?e.documentElement:e.firstChild:null}function a(e){var t=i(e);return t&&Q.getID(t)}function s(e){var t=u(e);if(t)if(H.hasOwnProperty(t)){var n=H[t];n!==e&&(A(!h(n,t),"ReactMount: Two valid but unequal nodes with the same `%s`: %s",F,t),H[t]=e)}else H[t]=e;return t}function u(e){return e&&e.getAttribute&&e.getAttribute(F)||""}function c(e,t){var n=u(e);n!==t&&delete H[n],e.setAttribute(F,t),H[t]=e}function l(e){return H.hasOwnProperty(e)&&h(H[e],e)||(H[e]=Q.findReactNodeByID(e)),H[e]}function p(e){var t=T.get(e)._rootNodeID;return R.isNullComponentID(t)?null:(H.hasOwnProperty(t)&&h(H[t],t)||(H[t]=Q.findReactNodeByID(t)),H[t])}function h(e,t){if(e){A(u(e)===t,"ReactMount: Unexpected modification of `%s`",F);var n=Q.findReactContainerForID(t);if(n&&D(n,e))return!0}return!1}function d(e){delete H[e]}function f(e){var t=H[e];return t&&h(t,e)?void(X=t):!1}function v(e){X=null,w.traverseAncestors(e,f);var t=X;return X=null,t}function m(e,t,n,r,o,i){if(__DEV__){i===N&&(i={});var a=n.nodeName.toLowerCase();i[L.ancestorInfoContextKey]=L.updatedAncestorInfo(null,a,null)}var s=I.mountComponent(e,t,r,i);e._renderedComponent._topLevelWrapper=e,Q._mountImageIntoNode(s,n,o)}function g(e,t,n,r,o){var i=P.ReactReconcileTransaction.getPooled();i.perform(m,null,e,t,n,i,r,o),P.ReactReconcileTransaction.release(i)}function y(e,t){for(I.unmountComponent(e),t.nodeType===q&&(t=t.documentElement);t.lastChild;)t.removeChild(t.lastChild)}var _=t("DOMProperty"),b=t("ReactBrowserEventEmitter"),S=t("ReactCurrentOwner"),E=t("ReactElement"),R=t("ReactEmptyComponent"),w=t("ReactInstanceHandles"),T=t("ReactInstanceMap"),C=t("ReactMarkupChecksum"),O=t("ReactPerf"),I=t("ReactReconciler"),x=t("ReactUpdateQueue"),P=t("ReactUpdates"),N=t("emptyObject"),D=t("containsNode"),M=t("instantiateReactComponent"),A=t("invariant"),k=t("setInnerHTML"),j=t("shouldUpdateReactComponent"),L=t("validateDOMNesting"),V=t("warning"),B=w.SEPARATOR,F=_.ID_ATTRIBUTE_NAME,H={},U=1,q=9,z=11,G={},W={};if(__DEV__)var Y={};var K=[],X=null,J=function(){};J.prototype.render=function(){return this.props};var Q={_instancesByReactRootID:G,scrollMonitor:function(e,t){t()},_updateRootComponent:function(e,t,n,r){return Q.scrollMonitor(n,function(){x.enqueueElementInternal(e,t),r&&x.enqueueCallbackInternal(e,r)}),__DEV__&&(Y[a(n)]=i(n)),e},_registerComponent:function(e,t){A(t&&(t.nodeType===U||t.nodeType===q||t.nodeType===z),"_registerComponent(...): Target container is not a DOM element."),b.ensureScrollValueMonitoring();var n=Q.registerContainer(t);return G[n]=e,n},_renderNewRootComponent:function(e,t,n,r){V(null==S.current,"_renderNewRootComponent(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",S.current&&S.current.getName()||"ReactCompositeComponent");var o=M(e,null),a=Q._registerComponent(o,t);return P.batchedUpdates(g,o,a,t,n,r),__DEV__&&(Y[a]=i(t)),o},renderSubtreeIntoContainer:function(e,t,n,r){return A(null!=e&&null!=e._reactInternalInstance,"parentComponent must be a valid React Component"),Q._renderSubtreeIntoContainer(e,t,n,r)},_renderSubtreeIntoContainer:function(e,t,n,r){A(E.isValidElement(t),"React.render(): Invalid component element.%s","string"==typeof t?" Instead of passing an element string, make sure to instantiate it by passing it to React.createElement.":"function"==typeof t?" Instead of passing a component class, make sure to instantiate it by passing it to React.createElement.":null!=t&&void 0!==t.props?" This may be caused by unintentionally loading two independent copies of React.":""),V(!n||!n.tagName||"BODY"!==n.tagName.toUpperCase(),"render(): Rendering components directly into document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try rendering into a container element created for your app.");var o=new E(J,null,null,null,t),s=G[a(n)];if(s){var u=s._currentElement,c=u.props;if(j(c,t))return Q._updateRootComponent(s,o,n,r)._renderedComponent.getPublicInstance();Q.unmountComponentAtNode(n)}var l=i(n),p=l&&Q.isRenderedByReact(l);if(__DEV__&&(!p||l.nextSibling))for(var h=l;h;){if(Q.isRenderedByReact(h)){V(!1,"render(): Target node has markup rendered by React, but there are unrelated nodes as well. This is most commonly caused by white-space inserted around server-rendered markup.");break}h=h.nextSibling}var d=p&&!s,f=Q._renderNewRootComponent(o,n,d,null!=e?e._reactInternalInstance._processChildContext(e._reactInternalInstance._context):N)._renderedComponent.getPublicInstance();return r&&r.call(f),f},render:function(e,t,n){return Q._renderSubtreeIntoContainer(null,e,t,n)},registerContainer:function(e){var t=a(e);return t&&(t=w.getReactRootIDFromNodeID(t)),t||(t=w.createReactRootID()),W[t]=e,t},unmountComponentAtNode:function(e){V(null==S.current,"unmountComponentAtNode(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",S.current&&S.current.getName()||"ReactCompositeComponent"),A(e&&(e.nodeType===U||e.nodeType===q||e.nodeType===z),"unmountComponentAtNode(...): Target container is not a DOM element.");var t=a(e),n=G[t];return n?(P.batchedUpdates(y,n,e),delete G[t],delete W[t],__DEV__&&delete Y[t],!0):!1},findReactContainerForID:function(e){var t=w.getReactRootIDFromNodeID(e),n=W[t];if(__DEV__){var r=Y[t];if(r&&r.parentNode!==n){V(u(r)===t,"ReactMount: Root element ID differed from reactRootID.");var o=n.firstChild;o&&t===u(o)?Y[t]=o:V(!1,"ReactMount: Root element has been removed from its original container. New container: %s",r.parentNode)}}return n},findReactNodeByID:function(e){var t=Q.findReactContainerForID(e);return Q.findComponentRoot(t,e)},isRenderedByReact:function(e){if(1!==e.nodeType)return!1;var t=Q.getID(e);return t?t.charAt(0)===B:!1},getFirstReactDOM:function(e){for(var t=e;t&&t.parentNode!==t;){if(Q.isRenderedByReact(t))return t;t=t.parentNode}return null},findComponentRoot:function(e,t){var n=K,r=0,o=v(t)||e;for(n[0]=o.firstChild,n.length=1;r when using tables, nesting tags like
,

, or , or using non-SVG elements in an parent. Try inspecting the child nodes of the element with React ID `%s`.",t,Q.getID(e))},_mountImageIntoNode:function(e,t,n){if(A(t&&(t.nodeType===U||t.nodeType===q||t.nodeType===z),"mountComponentIntoNode(...): Target container is not valid."),n){var r=i(t);if(C.canReuseMarkup(e,r))return;var a=r.getAttribute(C.CHECKSUM_ATTR_NAME);r.removeAttribute(C.CHECKSUM_ATTR_NAME);var s=r.outerHTML;r.setAttribute(C.CHECKSUM_ATTR_NAME,a);var u=o(e,s),c=" (client) "+e.substring(u-20,u+20)+"\n (server) "+s.substring(u-20,u+20);A(t.nodeType!==q,"You're trying to render a component to the document using server rendering but the checksum was invalid. This usually means you rendered a different component type or props on the client from the one on the server, or your render() methods are impure. React cannot handle this case due to cross-browser quirks by rendering at the document root. You should look for environment dependent code in your components and ensure the props are the same client and server side:\n%s",c),__DEV__&&V(!1,"React attempted to reuse markup in a container but the checksum was invalid. This generally means that you are using server rendering and the markup generated on the server was not what the client was expecting. React injected new markup to compensate which works but you have lost many of the benefits of server rendering. Instead, figure out why the markup being generated is different on the client or server:\n%s",c)}A(t.nodeType!==q,"You're trying to render a component to the document but you didn't use server rendering. We can't do this without using server rendering due to cross-browser quirks. See React.renderToString() for server rendering."),k(t,e)},getReactRootID:a,getID:s,setID:c,getNode:l,getNodeFromInstance:p,purgeID:d};O.measureMethods(Q,"ReactMount",{_renderNewRootComponent:"_renderNewRootComponent",_mountImageIntoNode:"_mountImageIntoNode"}),n.exports=Q}),__d("ReactBrowserEventEmitter",["EventConstants","EventPluginHub","EventPluginRegistry","ReactEventEmitterMixin","ViewportMetrics","Object.assign","isEventSupported"],function(e,t,n,r){"use strict";function o(e){return Object.prototype.hasOwnProperty.call(e,m)||(e[m]=f++,h[e[m]]={}),h[e[m]]}var i=t("EventConstants"),a=t("EventPluginHub"),s=t("EventPluginRegistry"),u=t("ReactEventEmitterMixin"),c=t("ViewportMetrics"),l=t("Object.assign"),p=t("isEventSupported"),h={},d=!1,f=0,v={topBlur:"blur",topChange:"change",topClick:"click",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topScroll:"scroll",topSelectionChange:"selectionchange",topTextInput:"textInput",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topWheel:"wheel"},m="_reactListenersID"+String(Math.random()).slice(2),g=l({},u,{ReactEventListener:null,injection:{injectReactEventListener:function(e){e.setHandleTopLevel(g.handleTopLevel),g.ReactEventListener=e}},setEnabled:function(e){g.ReactEventListener&&g.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!g.ReactEventListener||!g.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,r=o(n),a=s.registrationNameDependencies[e],u=i.topLevelTypes,c=0;c"," "+i.CHECKSUM_ATTR_NAME+'="'+t+'">')},canReuseMarkup:function(e,t){var n=t.getAttribute(i.CHECKSUM_ATTR_NAME);n=n&&parseInt(n,10);var r=o(e);return r===n}};n.exports=i}),__d("adler32",[],function(e,t,n,r){"use strict";function o(e){for(var t=1,n=0,r=0;r]/,s=function(e,t){e.innerHTML=t};if("undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction&&(s=function(e,t){MSApp.execUnsafeLocalFunction(function(){e.innerHTML=t})}),o.canUseDOM){var u=document.createElement("div");u.innerHTML=" ",""===u.innerHTML&&(s=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),i.test(t)||"<"===t[0]&&a.test(t)){e.innerHTML=String.fromCharCode(65279)+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t})}n.exports=s}),__d("validateDOMNesting",["Object.assign","emptyFunction","warning"],function(e,t,n,r){"use strict";var o=t("Object.assign"),i=t("emptyFunction"),a=t("warning"),s=i;if(__DEV__){var u=["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"],c=["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"],l=c.concat(["button"]),p=["dd","dt","li","option","optgroup","p","rp","rt"],h={parentTag:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null},d=function(e,t,n){var r=o({},e||h),i={tag:t,instance:n};return-1!==c.indexOf(t)&&(r.aTagInScope=null,r.buttonTagInScope=null,r.nobrTagInScope=null),-1!==l.indexOf(t)&&(r.pTagInButtonScope=null),-1!==u.indexOf(t)&&"address"!==t&&"div"!==t&&"p"!==t&&(r.listItemTagAutoclosing=null,r.dlItemTagAutoclosing=null),r.parentTag=i,"form"===t&&(r.formTag=i),"a"===t&&(r.aTagInScope=i),"button"===t&&(r.buttonTagInScope=i),"nobr"===t&&(r.nobrTagInScope=i),"p"===t&&(r.pTagInButtonScope=i),"li"===t&&(r.listItemTagAutoclosing=i),("dd"===t||"dt"===t)&&(r.dlItemTagAutoclosing=i),r},f=function(e,t){switch(t){case"select":return"option"===e||"optgroup"===e||"#text"===e;case"optgroup":return"option"===e||"#text"===e;case"option":return"#text"===e;case"tr":return"th"===e||"td"===e||"style"===e||"script"===e||"template"===e;case"tbody":case"thead":case"tfoot":return"tr"===e||"style"===e||"script"===e||"template"===e;case"colgroup":return"col"===e||"template"===e;case"table":return"caption"===e||"colgroup"===e||"tbody"===e||"tfoot"===e||"thead"===e||"style"===e||"script"===e||"template"===e;case"head":return"base"===e||"basefont"===e||"bgsound"===e||"link"===e||"meta"===e||"title"===e||"noscript"===e||"noframes"===e||"style"===e||"script"===e||"template"===e;case"html":return"head"===e||"body"===e}switch(e){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"h1"!==t&&"h2"!==t&&"h3"!==t&&"h4"!==t&&"h5"!==t&&"h6"!==t;case"rp":case"rt":return-1===p.indexOf(t);case"caption":case"col":case"colgroup":case"frame":case"head":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return null==t}return!0},v=function(e,t){switch(e){case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dialog":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"main":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":case"pre":case"listing":case"table":case"hr":case"xmp":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return t.pTagInButtonScope;case"form":return t.formTag||t.pTagInButtonScope;case"li":return t.listItemTagAutoclosing;case"dd":case"dt":return t.dlItemTagAutoclosing;case"button":return t.buttonTagInScope;case"a":return t.aTagInScope;case"nobr":return t.nobrTagInScope}return null},m=function(e){if(!e)return[];var t=[];do t.push(e);while(e=e._currentElement._owner);return t.reverse(),t},g={};s=function(e,t,n){n=n||h;var r=n.parentTag,o=r&&r.tag,i=f(e,o)?null:r,s=i?null:v(e,n),u=i||s;if(u){var c,l=u.tag,p=u.instance,d=t&&t._currentElement._owner,y=p&&p._currentElement._owner,_=m(d),b=m(y),S=Math.min(_.length,b.length),E=-1;for(c=0;S>c&&_[c]===b[c];c++)E=c;var R="(unknown)",w=_.slice(E+1).map(function(e){return e.getName()||R}),T=b.slice(E+1).map(function(e){return e.getName()||R}),C=[].concat(-1!==E?_[E].getName()||R:[],T,l,s?["..."]:[],w,e).join(" > "),O=!!i+"|"+e+"|"+l+"|"+C;if(g[O])return;if(g[O]=!0,i){var I="";"table"===l&&"tr"===e&&(I+=" Add a to your code to match the DOM tree generated by the browser."),a(!1,"validateDOMNesting(...): <%s> cannot appear as a child of <%s>. See %s.%s",e,l,C,I)}else a(!1,"validateDOMNesting(...): <%s> cannot appear as a descendant of <%s>. See %s.",e,l,C)}},s.ancestorInfoContextKey="__validateDOMNesting_ancestorInfo$"+Math.random().toString(36).slice(2),s.updatedAncestorInfo=d,s.isTagValidInContext=function(e,t){t=t||h;var n=t.parentTag,r=n&&n.tag;return f(e,r)&&!v(e,t)}}n.exports=s}),__d("AppStateIOS",["Map","NativeModules","RCTDeviceEventEmitter","logError","invariant"],function(e,t,n,r){"use strict";var o=t("Map"),i=t("NativeModules"),a=t("RCTDeviceEventEmitter"),s=i.AppState,u=t("logError"),c=t("invariant"),l={change:new o,memoryWarning:new o},p={addEventListener:function(e,t){c(-1!==["change","memoryWarning"].indexOf(e),'Trying to subscribe to unknown event: "%s"',e),"change"===e?l[e].set(t,a.addListener("appStateDidChange",function(e){t(e.app_state)})):"memoryWarning"===e&&l[e].set(t,a.addListener("memoryWarning",t))},removeEventListener:function(e,t){c(-1!==["change","memoryWarning"].indexOf(e),'Trying to remove listener for unknown event: "%s"',e),l[e].has(t)&&(l[e].get(t).remove(),l[e]["delete"](t))},currentState:"active"};a.addListener("appStateDidChange",function(e){p.currentState=e.app_state}),s.getCurrentAppState(function(e){p.currentState=e.app_state},u),n.exports=p}),__d("BackAndroid",["warning"],function(e,t,n,r){"use strict";function o(){i(!1,"BackAndroid is not supported on this platform.")}var i=t("warning"),a={exitApp:o,addEventListener:o,removeEventListener:o};n.exports=a}),__d("CameraRoll",["ReactPropTypes","NativeModules","createStrictShapeTypeChecker","deepFreezeAndThrowOnMutationInDev","invariant"],function(e,t,n,r){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var n=0;n=e?a:i.createElement(u,{width:t,height:n,direction:o(e,r,s)},c(e-1))};return c(s)},{displayName:"Blur",defaultProps:{passes:2},propTypes:{width:s.number,height:s.number,factor:s.number.isRequired,children:s.any.isRequired,passes:s.number}})}),__d("gl-react-native/src/index.js",["gl-react-native/src/Shaders.js","gl-react-native/src/View.js","gl-react-native/src/Uniform.js","gl-react-native/src/ComponentDeprecated.js","gl-react-native/src/createComponent.js"],function(e,t,n,r){var o=t("gl-react-native/src/Shaders.js"),i=t("gl-react-native/src/View.js"),a=t("gl-react-native/src/Uniform.js"),s=t("gl-react-native/src/ComponentDeprecated.js"),u=t("gl-react-native/src/createComponent.js");n.exports={Shaders:o,View:i,Uniform:a,Component:s,createComponent:u}}),__d("gl-react-native/src/Shaders.js",["react-native/Libraries/react-native/react-native.js","gl-react-core/src/index.js"],function(e,t,n,r){var o=t("gl-react-core/src/index.js"),i=o.createShaders,a=t("react-native/Libraries/react-native/react-native.js"),s=a.NativeModules.GLShadersRegistry;n.exports=i(function(e,t){s.register(e,t)})}),__d("gl-react-core/src/index.js",["gl-react-core/src/createComponent.js","gl-react-core/src/createComponentDeprecated.js","gl-react-core/src/createShaders.js","gl-react-core/src/createUniform.js","gl-react-core/src/createView.js"],function(e,t,n,r){var o=t("gl-react-core/src/createComponent.js"),i=t("gl-react-core/src/createComponentDeprecated.js"),a=t("gl-react-core/src/createShaders.js"),s=t("gl-react-core/src/createUniform.js"),u=t("gl-react-core/src/createView.js");n.exports={createComponent:o,createComponentDeprecated:i,createShaders:a,createUniform:s,createView:u}}),__d("gl-react-core/src/createComponent.js",["invariant","gl-react-core/src/glViewMethods.json"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t); -e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=Object.assign||function(e){for(var t=1;t glview) must have a function in parameter");var p=function(r){function p(e,t){o(this,p),u(Object.getPrototypeOf(p.prototype),"constructor",this).call(this,e,t),l.forEach(this._delegateMethod,this)}return i(p,r),s(p,[{key:"_delegateMethod",value:function(e){var t=this;this[e]=function(){var n=t.refs._;return c(n,"glView has been rendered"),n[e].apply(n,arguments)}}},{key:"render",value:function(){var r=n(this.props);return c(r&&(r.type===t||r.type.isGLComponent),"The GL.createComponent function parameter must return a GL.View or another GL Component"),e.cloneElement(r,a({},r.props,{ref:"_"}))}}]),p}(e.Component);if(p.isGLComponent=!0,p.displayName=n.name||"",r){c("object"==typeof r,"second parameter of createComponent must be an object of static fields to set in the React component. (example: propTypes, displayName)");for(var h in r)p[h]=r[h]}return p}return n}}),__d("invariant",[],function(e,t,n,r){"use strict";var o=function(e,t,n,r,o,i,a,s){if("production"!==process.env.NODE_ENV&&void 0===t)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,s],l=0;u=new Error("Invariant Violation: "+t.replace(/%s/g,function(){return c[l++]}))}throw u.framesToPop=1,u}};n.exports=o}),__d("gl-react-core/src/glViewMethods.json",[],function(e,t,n,r){n.exports=["getGLCanvas","captureFrame"]}),__d("gl-react-core/src/createComponentDeprecated.js",["invariant","gl-react-core/src/glViewMethods.json"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function c(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0===r){var o=Object.getPrototypeOf(e);return null===o?void 0:c(o,t,n)}if("value"in r)return r.value;var i=r.get;return void 0===i?void 0:i.call(n)},s=t("invariant"),u=t("gl-react-core/src/glViewMethods.json");n.exports=function(e){var t=function(e){function t(e,n){var r=this;o(this,t),a(Object.getPrototypeOf(t.prototype),"constructor",this).call(this,e,n),u.forEach(function(e){r[e]||(r[e]=function(){return s(!0,"'%s' method is not available in deprecated GL.Component. Use GL.createComponent(props => glView) instead")})}),"production"!==process.env.NODE_ENV&&console.error("GL.Component class is deprecated. Use GL.createComponent(props => glView) function instead")}return i(t,e),t}(e.Component);return t.isGLComponent=!0,t}}),__d("gl-react-core/src/createShaders.js",["invariant"],function(e,t,n,r){var o=t("invariant");n.exports=function(e){var t=1,n={},r={create:function(r){o("object"==typeof r,"config must be an object");var i={};for(var a in r){var s=r[a];o("object"==typeof s&&"string"==typeof s.frag,"invalid shader given to Shaders.create(). A valid shader is a { frag: String }");var u=t++;s.name||(s.name=a),n[u]=s.name,e(u,s),i[a]=u}return i},getName:function(e){return n[e]},list:function(){return Object.keys(n)},exists:function(e){return"number"==typeof e&&e>=1&&t>e}};return r}}),__d("gl-react-core/src/createUniform.js",["invariant"],function(e,t,n,r){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e,t){"undefined"!=typeof console&&console.debug&&console.debug("GL.View rendered with",e,t)}var u=Object.assign||function(e){for(var t=1;t0&&a>0,"width and height are required for the root GLView");var w=f(d(_(l,v,i,a,c,y||!1,[]))),T=w.data,C=w.contentsVDOM,O=w.imagesToPreload;return g&&s(T,C),r({width:i,height:a,style:n,visibleContent:S,eventsThrough:E},C.map(function(e,t){return h(T.width,T.height,t,e,{visibleContent:S})}),m(u({},R,{width:i,height:a,data:T,nbContentTextures:C.length,imagesToPreload:O,renderId:e,opaque:b,visibleContent:S,eventsThrough:E})))}}]),t}(g);return b.displayName="GL.View",b.propTypes={shader:y.number.isRequired,width:y.number,height:y.number,uniforms:y.object,opaque:y.bool,preload:y.bool,autoRedraw:y.bool,eventsThrough:y.bool,visibleContent:y.bool},b.defaultProps={opaque:!0},_=v(e,t,n,b),b}}),__d("gl-react-core/src/data/index.js",["gl-react-core/src/data/build.js","gl-react-core/src/data/fill.js","gl-react-core/src/data/resolve.js"],function(e,t,n,r){n.exports={createBuild:t("gl-react-core/src/data/build.js"),fill:t("gl-react-core/src/data/fill.js"),resolve:t("gl-react-core/src/data/resolve.js")}}),__d("gl-react-core/src/data/build.js",["invariant","gl-react-core/src/data/TextureObjects.js","gl-react-core/src/data/isNonSamplerUniformValue.js"],function(e,t,n,r){function o(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e){function t(e,r,u,h){var d=e.uniforms,f=e.children,v=e.contents,m=e.preload,g=o(e,["uniforms","children","contents","preload"]),y=a({},d),_=u.map(function(e){var t=e.vdom;return t}),b=function(e){return function(){for(e++;e===r||-1!==h.indexOf(e);)e++;return e}}(-1),S=c(e,_),E=S.map(function(e){var t=e.vdom,n=b();return{vdom:t,fboId:n}}),R=u.concat(E),w=R.map(function(e){var t=e.vdom;return t}),T=R.map(function(e){var t=e.fboId;return t}),C=[],O=[],I=f.concat(S).map(function(e){var t=e.uniform,n=e.vdom,r=e.data,o=w.indexOf(n),i=void 0,a=void 0;return-1===o?(i=b(),a=O):(i=R[o].fboId,o>=u.length&&(a=C)),t&&(y[t]=l.Framebuffer(i)),{data:r,fboId:i,addToCollection:a}}),x=I.map(function(e){var t=e.fboId;return t}),P=h.concat(T).concat(x),N=[];return I.forEach(function(e){var n=e.data,r=e.fboId,o=e.addToCollection;-1===N.indexOf(r)&&(N.push(r),o&&o.push(t(n,r,R,P)))}),v.forEach(function(e){var t=e.uniform,n=e.vdom,r=e.opts,o=i.indexOf(n);s(-1!==o,"contents was discovered by findContentsMeta"),y[t]=l.withOpts(l.Content(o),r)}),m&&(n=n.concat(p(d))),a({},g,{uniforms:y,contextChildren:C,children:O,fboId:r})}var n=[],r=u(e),i=r.map(function(e){var t=e.vdom;return t});return{data:t(e,-1,[],[]),contentsVDOM:i,imagesToPreload:h(n)}}var a=Object.assign||function(e){for(var t=1;t1))return{data:r[o],vdom:n}}).filter(function(e){return e})}n.exports=o}),__d("gl-react-core/src/data/extractImages.js",[],function(e,t,n,r){function o(e){var t=[];for(var n in e){var r=e[n];r&&"object"==typeof r&&"image"===r.type&&r.value&&"string"==typeof r.value.uri&&t.push(r.value)}return t}n.exports=o}),__d("gl-react-core/src/data/uniqImages.js",[],function(e,t,n,r){function o(e){var t=[],n=[];return e.forEach(function(e){-1===t.indexOf(e.uri)&&(t.push(e.uri),n.push(e))}),n}n.exports=o}),__d("gl-react-native/src/View.js",["gl-react-core/src/index.js","react-native/Libraries/react-native/react-native.js","gl-react-native/src/Shaders.js","gl-react-native/src/Uniform.js"],function(e,t,n,r){function o(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var i=Object.assign||function(e){for(var t=1;t Tests); diff --git a/Examples/Tests/index.ios.js b/Examples/Tests/index.ios.js index bce0f346f1669f62c3671c6520c6d4c702544d5a..eaaba3efefb2d2d572c0bcf5b2a91689876424fe 100644 --- a/Examples/Tests/index.ios.js +++ b/Examples/Tests/index.ios.js @@ -1,220 +1,3 @@ -const React = require("react-native"); -const { - AppRegistry, - Text, - View, - ScrollView, - Image, -} = React; - -const Blur = require("./Blur"); -const Add = require("./Add"); -const Multiply = require("./Multiply"); -const Layer = require("./Layer"); -const NativeLayer = require("./NativeLayer"); -const HelloGL = require("./HelloGL"); -const Display2 = require("./Display2"); -const Copy = require("./Copy"); -const TransparentNonPremultiplied = require("./TransparentNonPremultiplied"); -const { width: viewportW, height: viewportH } = require("Dimensions").get("window"); - -class Tests extends React.Component { - - constructor (props) { - super(props); - this.onLoad = this.onLoad.bind(this); - this.onProgress = this.onProgress.bind(this); - } - onLoad () { - console.log("LOADED"); - } - onProgress ({nativeEvent: { progress, loaded, total }}) { - console.log("PROGRESS", progress, loaded, total); - } - render () { - - const debugSize = viewportW / 2; - - const helloGL = - ; - - const txt = - - {[0,1,2,3].map(i => - Hello World {i} - )} - ; - - const img = "http://i.imgur.com/zJIxPEo.jpg?t="+Date.now(); - - const blurredImage = - - {img} - ; - - const blurredImageOverText = - - {blurredImage} - {txt} - ; - - return - - - {txt} - {helloGL} - - - - - {blurredImageOverText} - {helloGL} - - - {blurredImage} - - - - - - - - - - - - - - - http://i.imgur.com/mp79p5T.png - - - - - - - - http://i.imgur.com/mp79p5T.png - - - - - - - - - - http://i.imgur.com/mp79p5T.png - - - - - - - - - - - - http://i.imgur.com/mp79p5T.png - - - - - - - - - - - - - - http://i.imgur.com/mp79p5T.png - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - http://i.imgur.com/S22HNaU.png - - - - - - - - - - - http://i.imgur.com/mp79p5T.png - - - - - - - - - - http://i.imgur.com/mp79p5T.png - - - - - http://i.imgur.com/S22HNaU.png - - - - - - - - - - ; - } -} - +const { AppRegistry } = require("react-native"); +const Tests = require("./src"); AppRegistry.registerComponent("Tests", () => Tests); diff --git a/Examples/Tests/ios/TestsTests/Info.plist b/Examples/Tests/ios/TestsTests/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..886825ccc9bf0da2b9bfb8d8ebf0737db7ca1114 --- /dev/null +++ b/Examples/Tests/ios/TestsTests/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/Examples/Tests/ios/TestsTests/TestsTests.m b/Examples/Tests/ios/TestsTests/TestsTests.m new file mode 100644 index 0000000000000000000000000000000000000000..b1b60bd0781e66e33a61edfb65c6cd82400589ad --- /dev/null +++ b/Examples/Tests/ios/TestsTests/TestsTests.m @@ -0,0 +1,70 @@ +/** + * Copyright (c) 2015-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ + +#import +#import + +#import "RCTLog.h" +#import "RCTRootView.h" + +#define TIMEOUT_SECONDS 240 +#define TEXT_TO_LOOK_FOR @"Welcome to React Native!" + +@interface TestsTests : XCTestCase + +@end + +@implementation TestsTests + +- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test +{ + if (test(view)) { + return YES; + } + for (UIView *subview in [view subviews]) { + if ([self findSubviewInView:subview matching:test]) { + return YES; + } + } + return NO; +} + +- (void)testRendersWelcomeScreen +{ + UIViewController *vc = [[[[UIApplication sharedApplication] delegate] window] rootViewController]; + NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS]; + BOOL foundElement = NO; + + __block NSString *redboxError = nil; + RCTSetLogFunction(^(RCTLogLevel level, NSString *fileName, NSNumber *lineNumber, NSString *message) { + if (level >= RCTLogLevelError) { + redboxError = message; + } + }); + + while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { + [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; + [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; + + foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) { + if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { + return YES; + } + return NO; + }]; + } + + RCTSetLogFunction(RCTDefaultLogFunction); + + XCTAssertNil(redboxError, @"RedBox error: %@", redboxError); + XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS); +} + + +@end diff --git a/Examples/Tests/package.json b/Examples/Tests/package.json index de9c54a951be020455465e8d9cacac5311bf4fc6..4202c44cd905f5a16c5b2f3d7cf4886738de9c0e 100644 --- a/Examples/Tests/package.json +++ b/Examples/Tests/package.json @@ -3,10 +3,13 @@ "version": "0.0.1", "private": true, "scripts": { - "start": "node_modules/react-native/packager/packager.sh" + "start": "react-native start" }, "dependencies": { "gl-react-native": "file:../..", - "react-native": "^0.13.0-rc" + "react-native": "^0.15.0" + }, + "devDependencies": { + "react-native-cli": "^0.1.7" } } diff --git a/Examples/Tests/Add.js b/Examples/Tests/src/Add.js similarity index 100% rename from Examples/Tests/Add.js rename to Examples/Tests/src/Add.js diff --git a/Examples/Tests/Blur.js b/Examples/Tests/src/Blur.js similarity index 100% rename from Examples/Tests/Blur.js rename to Examples/Tests/src/Blur.js diff --git a/Examples/Tests/Blur1D.js b/Examples/Tests/src/Blur1D.js similarity index 100% rename from Examples/Tests/Blur1D.js rename to Examples/Tests/src/Blur1D.js diff --git a/Examples/Tests/Copy.js b/Examples/Tests/src/Copy.js similarity index 100% rename from Examples/Tests/Copy.js rename to Examples/Tests/src/Copy.js diff --git a/Examples/Tests/Display2.js b/Examples/Tests/src/Display2.js similarity index 100% rename from Examples/Tests/Display2.js rename to Examples/Tests/src/Display2.js diff --git a/Examples/Tests/HelloGL.js b/Examples/Tests/src/HelloGL.js similarity index 100% rename from Examples/Tests/HelloGL.js rename to Examples/Tests/src/HelloGL.js diff --git a/Examples/Tests/Layer.js b/Examples/Tests/src/Layer.js similarity index 100% rename from Examples/Tests/Layer.js rename to Examples/Tests/src/Layer.js diff --git a/Examples/Tests/Multiply.js b/Examples/Tests/src/Multiply.js similarity index 100% rename from Examples/Tests/Multiply.js rename to Examples/Tests/src/Multiply.js diff --git a/Examples/Tests/NativeLayer.js b/Examples/Tests/src/NativeLayer.js similarity index 100% rename from Examples/Tests/NativeLayer.js rename to Examples/Tests/src/NativeLayer.js diff --git a/Examples/Tests/TransparentNonPremultiplied.js b/Examples/Tests/src/TransparentNonPremultiplied.js similarity index 100% rename from Examples/Tests/TransparentNonPremultiplied.js rename to Examples/Tests/src/TransparentNonPremultiplied.js diff --git a/Examples/Tests/src/index.js b/Examples/Tests/src/index.js new file mode 100644 index 0000000000000000000000000000000000000000..a795814ea185d7808da54de3312563ead669aed3 --- /dev/null +++ b/Examples/Tests/src/index.js @@ -0,0 +1,220 @@ +const React = require("react-native"); +const { + AppRegistry, + Text, + View, + ScrollView, + Image, +} = React; + +const Blur = require("./Blur"); +const Add = require("./Add"); +const Multiply = require("./Multiply"); +const Layer = require("./Layer"); +const NativeLayer = require("./NativeLayer"); +const HelloGL = require("./HelloGL"); +const Display2 = require("./Display2"); +const Copy = require("./Copy"); +const TransparentNonPremultiplied = require("./TransparentNonPremultiplied"); +const { width: viewportW, height: viewportH } = require("Dimensions").get("window"); + +class Tests extends React.Component { + + constructor (props) { + super(props); + this.onLoad = this.onLoad.bind(this); + this.onProgress = this.onProgress.bind(this); + } + onLoad () { + console.log("LOADED"); + } + onProgress ({nativeEvent: { progress, loaded, total }}) { + console.log("PROGRESS", progress, loaded, total); + } + render () { + + const debugSize = viewportW / 2; + + const helloGL = + ; + + const txt = + + {[0,1,2,3].map(i => + Hello World {i} + )} + ; + + const img = "http://i.imgur.com/zJIxPEo.jpg?t="+Date.now(); + + const blurredImage = + + {img} + ; + + const blurredImageOverText = + + {blurredImage} + {txt} + ; + + return + + + {txt} + {helloGL} + + + + + {blurredImageOverText} + {helloGL} + + + {blurredImage} + + + + + + + + + + + + + + + http://i.imgur.com/mp79p5T.png + + + + + + + + http://i.imgur.com/mp79p5T.png + + + + + + + + + + http://i.imgur.com/mp79p5T.png + + + + + + + + + + + + http://i.imgur.com/mp79p5T.png + + + + + + + + + + + + + + http://i.imgur.com/mp79p5T.png + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + http://i.imgur.com/S22HNaU.png + + + + + + + + + + + http://i.imgur.com/mp79p5T.png + + + + + + + + + + http://i.imgur.com/mp79p5T.png + + + + + http://i.imgur.com/S22HNaU.png + + + + + + + + + + ; + } +} + +module.exports = Tests; diff --git a/Examples/VideoBlur/ios/VideoBlur.xcodeproj/project.pbxproj b/Examples/VideoBlur/ios/VideoBlur.xcodeproj/project.pbxproj index ddf9954aab86ad62d701b2a7c44b2d5b33932db0..135e0fb1ac90cae54ccdd9dedc2dd309a5edcd8f 100644 --- a/Examples/VideoBlur/ios/VideoBlur.xcodeproj/project.pbxproj +++ b/Examples/VideoBlur/ios/VideoBlur.xcodeproj/project.pbxproj @@ -21,9 +21,9 @@ 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; + 348D651A1BEFD57300CA8FD0 /* libRNGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 348D65191BEFD56D00CA8FD0 /* libRNGL.a */; }; 34AFC0341BAC53DB004D65B1 /* libRCTVideo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34AFC0281BAC53C9004D65B1 /* libRCTVideo.a */; }; - 34AFC0351BAC53DB004D65B1 /* libRNGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34AFC0311BAC53D1004D65B1 /* libRNGL.a */; }; - 34AFC0391BAC55F9004D65B1 /* Videos.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 34AFC0381BAC55F9004D65B1 /* Videos.xcassets */; settings = {ASSET_TAGS = (); }; }; + 34AFC0391BAC55F9004D65B1 /* Videos.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 34AFC0381BAC55F9004D65B1 /* Videos.xcassets */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; /* End PBXBuildFile section */ @@ -91,26 +91,19 @@ remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; remoteInfo = React; }; - 34AFC0271BAC53C9004D65B1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 34AFC01B1BAC53C9004D65B1 /* RCTVideo.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTVideo; - }; - 34AFC0301BAC53D1004D65B1 /* PBXContainerItemProxy */ = { + 348D65181BEFD56D00CA8FD0 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 34AFC02B1BAC53D1004D65B1 /* RNGL.xcodeproj */; + containerPortal = 348D65141BEFD56D00CA8FD0 /* RNGL.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 34B330031B821571003856F8; + remoteGlobalIDString = 4107012F1ACB723B00C6AA39; remoteInfo = RNGL; }; - 34AFC0321BAC53D1004D65B1 /* PBXContainerItemProxy */ = { + 34AFC0271BAC53C9004D65B1 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 34AFC02B1BAC53D1004D65B1 /* RNGL.xcodeproj */; + containerPortal = 34AFC01B1BAC53C9004D65B1 /* RCTVideo.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 34B3300E1B821571003856F8; - remoteInfo = RNGLTests; + remoteGlobalIDString = 134814201AA4EA6300B7C361; + remoteInfo = RCTVideo; }; 78C398B81ACF4ADC00677621 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; @@ -146,8 +139,8 @@ 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = VideoBlur/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = VideoBlur/main.m; sourceTree = ""; }; 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; + 348D65141BEFD56D00CA8FD0 /* RNGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGL.xcodeproj; path = "../node_modules/gl-react-native/ios/RNGL.xcodeproj"; sourceTree = ""; }; 34AFC01B1BAC53C9004D65B1 /* RCTVideo.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTVideo.xcodeproj; path = "../node_modules/react-native-video/RCTVideo.xcodeproj"; sourceTree = ""; }; - 34AFC02B1BAC53D1004D65B1 /* RNGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNGL.xcodeproj; path = "../node_modules/gl-react-native/RNGL.xcodeproj"; sourceTree = ""; }; 34AFC0381BAC55F9004D65B1 /* Videos.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Videos.xcassets; sourceTree = ""; }; 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; @@ -165,8 +158,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 348D651A1BEFD57300CA8FD0 /* libRNGL.a in Frameworks */, 34AFC0341BAC53DB004D65B1 /* libRCTVideo.a in Frameworks */, - 34AFC0351BAC53DB004D65B1 /* libRNGL.a in Frameworks */, 146834051AC3E58100842450 /* libReact.a in Frameworks */, 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */, 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */, @@ -262,19 +255,18 @@ name = Products; sourceTree = ""; }; - 34AFC01C1BAC53C9004D65B1 /* Products */ = { + 348D65151BEFD56D00CA8FD0 /* Products */ = { isa = PBXGroup; children = ( - 34AFC0281BAC53C9004D65B1 /* libRCTVideo.a */, + 348D65191BEFD56D00CA8FD0 /* libRNGL.a */, ); name = Products; sourceTree = ""; }; - 34AFC02C1BAC53D1004D65B1 /* Products */ = { + 34AFC01C1BAC53C9004D65B1 /* Products */ = { isa = PBXGroup; children = ( - 34AFC0311BAC53D1004D65B1 /* libRNGL.a */, - 34AFC0331BAC53D1004D65B1 /* RNGLTests.xctest */, + 34AFC0281BAC53C9004D65B1 /* libRCTVideo.a */, ); name = Products; sourceTree = ""; @@ -290,7 +282,7 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( - 34AFC02B1BAC53D1004D65B1 /* RNGL.xcodeproj */, + 348D65141BEFD56D00CA8FD0 /* RNGL.xcodeproj */, 34AFC01B1BAC53C9004D65B1 /* RCTVideo.xcodeproj */, 146833FF1AC3E56700842450 /* React.xcodeproj */, 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */, @@ -444,8 +436,8 @@ ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; }, { - ProductGroup = 34AFC02C1BAC53D1004D65B1 /* Products */; - ProjectRef = 34AFC02B1BAC53D1004D65B1 /* RNGL.xcodeproj */; + ProductGroup = 348D65151BEFD56D00CA8FD0 /* Products */; + ProjectRef = 348D65141BEFD56D00CA8FD0 /* RNGL.xcodeproj */; }, ); projectRoot = ""; @@ -513,25 +505,18 @@ remoteRef = 146834031AC3E56700842450 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 34AFC0281BAC53C9004D65B1 /* libRCTVideo.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTVideo.a; - remoteRef = 34AFC0271BAC53C9004D65B1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 34AFC0311BAC53D1004D65B1 /* libRNGL.a */ = { + 348D65191BEFD56D00CA8FD0 /* libRNGL.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; path = libRNGL.a; - remoteRef = 34AFC0301BAC53D1004D65B1 /* PBXContainerItemProxy */; + remoteRef = 348D65181BEFD56D00CA8FD0 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 34AFC0331BAC53D1004D65B1 /* RNGLTests.xctest */ = { + 34AFC0281BAC53C9004D65B1 /* libRCTVideo.a */ = { isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = RNGLTests.xctest; - remoteRef = 34AFC0321BAC53D1004D65B1 /* PBXContainerItemProxy */; + fileType = archive.ar; + path = libRCTVideo.a; + remoteRef = 34AFC0271BAC53C9004D65B1 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; 78C398B91ACF4ADC00677621 /* libRCTLinking.a */ = { diff --git a/Examples/VideoBlur/ios/main.jsbundle b/Examples/VideoBlur/ios/main.jsbundle index af39e6ff22f5b31c4057c517422099f5f88e8e0e..77b5bdfc75cbc30a6e84d954826343fd3607d6e4 100644 --- a/Examples/VideoBlur/ios/main.jsbundle +++ b/Examples/VideoBlur/ios/main.jsbundle @@ -7,15 +7,15 @@ void function(t,o){"function"==typeof e&&e.amd?e(o):"object"==typeof r?n.exports var r=["matrix","translate"];switch(-1!==r.indexOf(e)&&f(Array.isArray(t),"Transform with key of %s must have an array as the value: %s",e,h(n)),e){case"matrix":f(9===t.length||16===t.length,"Matrix transform must have a length of 9 (2d) or 16 (3d). Provided matrix has a length of %s: %s",t.length,h(n));break;case"translate":break;case"rotateX":case"rotateY":case"rotateZ":case"rotate":f("string"==typeof t,'Transform with key of "%s" must be a string: %s',e,h(n)),f(t.indexOf("deg")>-1||t.indexOf("rad")>-1,"Rotate transform must be expressed in degrees (deg) or radians (rad): %s",h(n));break;default:f("number"==typeof t,'Transform with key of "%s" must be a number: %s',e,h(n))}}var u=Object.assign||function(e){for(var t=1;t.49999*p?[0,2*Math.atan2(t,i)*f,90]:-.49999*p>l?[0,-2*Math.atan2(t,i)*f,-90]:[o.roundTo3Places(Math.atan2(2*t*i-2*n*r,1-2*s-2*c)*f),o.roundTo3Places(Math.atan2(2*n*i-2*t*r,1-2*u-2*c)*f),o.roundTo3Places(Math.asin(2*t*n+2*r*i)*f)]},roundTo3Places:function(e){var t=e.toString().split("e");return.001*Math.round(t[0]+"e"+(t[1]?+t[1]-3:3))},decomposeMatrix:function(e){r(16===e.length,"Matrix decomposition needs a list of 3d matrix values, received %s",e);var t=[],n=[],i=[],a=[],s=[];if(e[15]){for(var u=[],c=[],l=0;4>l;l++){u.push([]);for(var p=0;4>p;p++){var f=e[4*l+p]/e[15];u[l].push(f),c.push(3===p?0:f)}}if(c[15]=1,o.determinant(c)){if(0!==u[0][3]||0!==u[1][3]||0!==u[2][3])var h=[u[0][3],u[1][3],u[2][3],u[3][3]],d=o.inverse3x3(c),v=o.transpose4x4(d),t=o.multiplyVectorByMatrix(h,v);else t[0]=t[1]=t[2]=0,t[3]=1;for(var l=0;3>l;l++)s[l]=u[3][l];var m=[];for(l=0;3>l;l++)m[l]=[u[l][0],u[l][1],u[l][2]];i[0]=o.v3Length(m[0]),m[0]=o.v3Normalize(m[0],i[0]),a[0]=o.v3Dot(m[0],m[1]),m[1]=o.v3Combine(m[1],m[0],1,-a[0]),a[0]=o.v3Dot(m[0],m[1]),m[1]=o.v3Combine(m[1],m[0],1,-a[0]),i[1]=o.v3Length(m[1]),m[1]=o.v3Normalize(m[1],i[1]),a[0]/=i[1],a[1]=o.v3Dot(m[0],m[2]),m[2]=o.v3Combine(m[2],m[0],1,-a[1]),a[2]=o.v3Dot(m[1],m[2]),m[2]=o.v3Combine(m[2],m[1],1,-a[2]),i[2]=o.v3Length(m[2]),m[2]=o.v3Normalize(m[2],i[2]),a[1]/=i[2],a[2]/=i[2];var g=o.v3Cross(m[1],m[2]);if(o.v3Dot(m[0],g)<0)for(l=0;3>l;l++)i[l]*=-1,m[l][0]*=-1,m[l][1]*=-1,m[l][2]*=-1;n[0]=.5*Math.sqrt(Math.max(1+m[0][0]-m[1][1]-m[2][2],0)),n[1]=.5*Math.sqrt(Math.max(1-m[0][0]+m[1][1]-m[2][2],0)),n[2]=.5*Math.sqrt(Math.max(1-m[0][0]-m[1][1]+m[2][2],0)),n[3]=.5*Math.sqrt(Math.max(1+m[0][0]+m[1][1]+m[2][2],0)),m[2][1]>m[1][2]&&(n[0]=-n[0]),m[0][2]>m[2][0]&&(n[1]=-n[1]),m[1][0]>m[0][1]&&(n[2]=-n[2]);var y;return y=n[0]<.001&&n[0]>=0&&n[1]<.001&&n[1]>=0?[0,0,o.roundTo3Places(180*Math.atan2(m[0][1],m[0][0])/Math.PI)]:o.quaternionToDegreesXYZ(n,u,m),{rotationDegrees:y,perspective:t,quaternion:n,scale:i,skew:a,translation:s,rotate:y[2],scaleX:i[0],scaleY:i[1],translateX:s[0],translateY:s[1]}}}}};n.exports=o}),__d("deepFreezeAndThrowOnMutationInDev",[],function(e,t,n){"use strict";function r(e){if(__DEV__){if("object"!=typeof e||null===e||Object.isFrozen(e)||Object.isSealed(e))return;for(var t in e)e.hasOwnProperty(t)&&(e.__defineGetter__(t,i.bind(null,e[t])),e.__defineSetter__(t,o.bind(null,t)),r(e[t]));Object.freeze(e),Object.seal(e)}}function o(e,t){throw Error("You attempted to set the key `"+e+"` with the value `"+JSON.stringify(t)+"` on an object that is meant to be immutable and has been frozen.")}function i(e){return e}n.exports=r}),__d("ReactNativeEventEmitter",["EventPluginHub","ReactEventEmitterMixin","ReactNativeTagHandles","NodeHandle","EventConstants","merge","warning"],function(e,t,n){"use strict";var r=t("EventPluginHub"),o=t("ReactEventEmitterMixin"),i=t("ReactNativeTagHandles"),a=t("NodeHandle"),s=t("EventConstants"),u=t("merge"),c=t("warning"),l=s.topLevelTypes,p={},f=function(e,t){for(var n=[],r=0;r>",R={array:o("array"),bool:o("boolean"),func:o("function"),number:o("number"),object:o("object"),string:o("string"),any:i(),arrayOf:a,element:s(),instanceOf:u,node:f(),objectOf:l,oneOf:c,oneOfType:p,shape:h};n.exports=R}),__d("TransformPropTypes",["ReactPropTypes"],function(e,t,n){"use strict";var r=t("ReactPropTypes"),o={transform:r.arrayOf(r.oneOfType([r.shape({perspective:r.number}),r.shape({rotate:r.string}),r.shape({rotateX:r.string}),r.shape({rotateY:r.string}),r.shape({rotateZ:r.string}),r.shape({scale:r.number}),r.shape({scaleX:r.number}),r.shape({scaleY:r.number}),r.shape({translateX:r.number}),r.shape({translateY:r.number})])),transformMatrix:r.arrayOf(r.number),rotation:r.number,scaleX:r.number,scaleY:r.number,translateX:r.number,translateY:r.number};n.exports=o}),__d("TextStylePropTypes",["ReactPropTypes","ViewStylePropTypes"],function(e,t,n){"use strict";for(var r=t("ReactPropTypes"),o=t("ViewStylePropTypes"),i=Object.assign(Object.create(o),{color:r.string,fontFamily:r.string,fontSize:r.number,fontStyle:r.oneOf(["normal","italic"]),fontWeight:r.oneOf(["normal","bold","100","200","300","400","500","600","700","800","900"]),letterSpacing:r.number,lineHeight:r.number,textAlign:r.oneOf(["auto","left","right","center","justify"]),textDecorationLine:r.oneOf(["none","underline","line-through","underline line-through"]),textDecorationStyle:r.oneOf(["solid","double","dotted","dashed"]),textDecorationColor:r.string,writingDirection:r.oneOf(["auto","ltr","rtl"])}),a=Object.keys({padding:null,paddingTop:null,paddingLeft:null,paddingRight:null,paddingBottom:null,paddingVertical:null,paddingHorizontal:null}),s=0;so;o++)if(r(e[o],t[o]))return!0}else{for(var i in e)if(r(e[i],t[i]))return!0;for(var a in t)if(void 0===e[a]&&void 0!==t[a])return!0}return!1};n.exports=r}),__d("diffRawProperties",["deepDiffer"],function(e,t,n){"use strict";function r(e,t,n,r){var i,a,s,u,c,l;if(n)for(var p in n)i=r[p],i&&(s=t&&t[p],a=n[p],"function"==typeof s&&(s=!0),"function"==typeof a&&(a=!0),s!==a&&(l=i.diff||o,u="object"!=typeof a||null===a,c=u||!s||l(s,a),c&&(e=e||{},e[p]=a)));if(t)for(var p in t)i=r[p],i&&(e&&void 0!==e[p]||(s=t[p],a=n&&n[p],"function"==typeof s&&(s=!0),"function"==typeof a&&(a=!0),s!==a&&(void 0===a&&(a=null),l=i.diff||o,u="object"!=typeof a||null===a,c=u&&s!==a||l(s,a),c&&(e=e||{},e[p]=a))));return e}var o=t("deepDiffer");n.exports=r}),__d("RCTEventEmitter",["ReactNativeEventEmitter"],function(e,t,n){"use strict";var r=t("ReactNativeEventEmitter");n.exports=r}),__d("RCTLog",["invariant"],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var o=t("NativeMethodsMixin"),i=t("ReactPropTypes"),a=t("React"),s=t("StyleSheet"),u=t("View"),c=t("requireNativeComponent"),l="#999999",p=a.createClass({displayName:"ActivityIndicatorIOS",mixins:[o],propTypes:{animating:i.bool,color:i.string,hidesWhenStopped:i.bool,size:i.oneOf(["small","large"]),onLayout:i.func},getDefaultProps:function(){return{animating:!0,color:l,hidesWhenStopped:!0,size:"small"}},render:function(){var e=this.props,t=e.onLayout,n=e.style,o=r(e,["onLayout","style"]),i="large"===this.props.size?f.sizeLarge:f.sizeSmall;return a.createElement(u,{onLayout:t,style:[f.container,i,n]},a.createElement(h,o))}}),f=s.create({container:{alignItems:"center",justifyContent:"center"},sizeSmall:{width:20,height:20},sizeLarge:{width:36,height:36}}),h=c("RCTActivityIndicatorView",p,{nativeOnly:{activityIndicatorViewStyle:!0}});n.exports=p}),__d("StyleSheet",["StyleSheetRegistry","StyleSheetValidation"],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n>")+": "+JSON.stringify(t,null," ")+(r||""))},f={};l.addValidStylePropTypes(i),l.addValidStylePropTypes(s),l.addValidStylePropTypes(u),n.exports=l}),__d("View",["NativeMethodsMixin","ReactPropTypes","NativeModules","React","ReactNativeStyleAttributes","ReactNativeViewAttributes","StyleSheetPropType","ViewStylePropTypes","createReactNativeComponentClass"],function(e,t,n){"use strict";var r=t("NativeMethodsMixin"),o=t("ReactPropTypes"),i=t("NativeModules").UIManager,a=t("React"),s=t("ReactNativeStyleAttributes"),u=t("ReactNativeViewAttributes"),c=t("StyleSheetPropType"),l=t("ViewStylePropTypes"),p=t("createReactNativeComponentClass"),f=c(l),h=["none","button","link","header","search","image","selected","plays","key","text","summary","disabled","frequentUpdates","startsMedia","adjustable","allowsDirectInteraction","pageTurn"],d=a.createClass({displayName:"View",mixins:[r],viewConfig:{uiViewClassName:"RCTView",validAttributes:u.RCTView},propTypes:{accessible:o.bool,accessibilityLabel:o.string,accessibilityComponentType:o.oneOf(["none","button","radiobutton_checked","radiobutton_unchecked"]),accessibilityLiveRegion:o.oneOf(["none","polite","assertive"]),importantForAccessibility:o.oneOf(["auto","yes","no","no-hide-descendants"]),accessibilityTraits:o.oneOfType([o.oneOf(h),o.arrayOf(o.oneOf(h))]),onAcccessibilityTap:o.func,onMagicTap:o.func,testID:o.string,onMoveShouldSetResponder:o.func,onResponderGrant:o.func,onResponderMove:o.func,onResponderReject:o.func,onResponderRelease:o.func,onResponderTerminate:o.func,onResponderTerminationRequest:o.func,onStartShouldSetResponder:o.func,onStartShouldSetResponderCapture:o.func,onLayout:o.func,pointerEvents:o.oneOf(["box-none","none","box-only","auto"]),style:f,removeClippedSubviews:o.bool,renderToHardwareTextureAndroid:o.bool,shouldRasterizeIOS:o.bool,collapsable:o.bool},render:function(){return a.createElement(v,this.props)}}),v=p({validAttributes:u.RCTView,uiViewClassName:"RCTView"});if(v.propTypes=d.propTypes,__DEV__){var m=i.viewConfigs&&i.viewConfigs.RCTView||{};for(var g in m.nativeProps){var y=d;if(!y.propTypes[g]&&!s[g])throw new Error("View is missing propType for native prop `"+g+"`")}}var _=v;__DEV__&&(_=d),n.exports=_}),__d("ReactNativeViewAttributes",["merge"],function(e,t,n){"use strict";var r=t("merge"),o={};o.UIView={pointerEvents:!0,accessible:!0,accessibilityLabel:!0,accessibilityComponentType:!0,accessibilityLiveRegion:!0,accessibilityTraits:!0,importantForAccessibility:!0,testID:!0,renderToHardwareTextureAndroid:!0,shouldRasterizeIOS:!0,onLayout:!0,onAccessibilityTap:!0,onMagicTap:!0,collapsable:!0},o.RCTView=r(o.UIView,{removeClippedSubviews:!0}),n.exports=o}),__d("StyleSheetPropType",["createStrictShapeTypeChecker","flattenStyle"],function(e,t,n){"use strict";function r(e){var t=o(e);return function(e,n,r,o){var a=e;return e[n]&&(a={},a[n]=i(e[n])),t(a,n,r,o)}}var o=t("createStrictShapeTypeChecker"),i=t("flattenStyle");n.exports=r}),__d("createStrictShapeTypeChecker",["ReactPropTypeLocationNames","invariant","merge"],function(e,t,n){"use strict";function r(e){function t(t,n,r,s,u){if(!n[r])return void(t&&i(!1,"Required object `"+r+"` was not specified in "+("`"+s+"`.")));var c=n[r],l=typeof c,p=u&&o[u]||"(unknown)";"object"!==l&&i(!1,"Invalid "+p+" `"+r+"` of type `"+l+"` "+("supplied to `"+s+"`, expected `object`."));var f=a(n[r],e);for(var h in f){var d=e[h];d||i(!1,"Invalid props."+r+" key `"+h+"` supplied to `"+s+"`.\nBad object: "+JSON.stringify(n[r],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(e),null," "));var v=d(c,h,s,u);v&&i(!1,v.message+"\nBad object: "+JSON.stringify(n[r],null," "))}}function n(e,n,r,o){return t(!1,e,n,r,o)}return n.isRequired=t.bind(null,!0),n }var o=t("ReactPropTypeLocationNames"),i=t("invariant"),a=t("merge");n.exports=r}),__d("requireNativeComponent",["verifyPropTypes","NativeModules","UnimplementedView","createReactNativeComponentClass","insetsDiffer","pointsDiffer","matricesDiffer","sizesDiffer","verifyPropTypes","warning"],function(e,t,n){function r(e,t,n){var r=i[e];if(!r||!r.NativeProps)return h(!1,'Native component for "%s" does not exist',e),a;var u=o({},i.RCTView.NativeProps,r.NativeProps);r.uiViewClassName=e,r.validAttributes={},r.propTypes=t&&t.propTypes;for(var c in u){var l=d[u[c]];r.validAttributes[c]=l?{diff:l}:!0}return __DEV__&&t&&f(t,r,n&&n.nativeOnly),s(r)}var o=Object.assign||function(e){for(var t=1;t=t)return e[n];return e[e.length-1]||1}function c(e){if("object"==typeof e)return e;var t=f.getAssetByID(e);return t?l(t):null}function l(e){var t=r();return t?{width:e.width,height:e.height,uri:i(t,e),isStatic:!1}:{width:e.width,height:e.height,uri:o(e),isStatic:!0}}var p,f=t("AssetRegistry"),h=t("PixelRatio"),d=t("Platform"),v=t("NativeModules").SourceCode;n.exports=c,n.exports.pickScale=u}),__d("AssetRegistry",[],function(e,t,n){"use strict";function r(e){return i.push(e)}function o(e){return i[e-1]}var i=[];n.exports={registerAsset:r,getAssetByID:o}}),__d("PixelRatio",["Dimensions"],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var o=Object.assign||function(e){for(var t=1;t=this.state.prevRenderedRowsCount&&t.sectionHeaderShouldUpdate(l);e.push(a.createElement(p,{key:"s_"+f,shouldUpdate:!!d,render:this.props.renderSectionHeader.bind(null,t.getSectionHeaderData(l),f)})),i.push(c++)}for(var v=0;v=this.state.prevRenderedRowsCount&&t.rowShouldUpdate(l,v),_=a.createElement(p,{key:"r_"+g,shouldUpdate:!!y,render:this.props.renderRow.bind(null,t.getRowData(l,v),f,m,this.onRowHighlighted)});if(e.push(_),c++,this.props.renderSeparator&&(v!==h.length-1||l===n.length-1)){var b=this.state.highlightedRow.sectionID===f&&(this.state.highlightedRow.rowID===m||this.state.highlightedRow.rowID===h[v+1]),E=this.props.renderSeparator(f,m,b);e.push(E),c++}if(++o===this.state.curRenderedRowsCount)break}if(o>=this.state.curRenderedRowsCount)break}}var w=this.props,T=w.renderScrollComponent,C=r(w,["renderScrollComponent"]);return C.scrollEventThrottle||(C.scrollEventThrottle=S),Object.assign(C,{onScroll:this._onScroll,stickyHeaderIndices:i,onKeyboardWillShow:void 0,onKeyboardWillHide:void 0,onKeyboardDidShow:void 0,onKeyboardDidHide:void 0}),a.cloneElement(T(C),{ref:R},s,e,u)},_measureAndUpdateScrollProps:function(){var e=this.getScrollResponder();e&&e.getInnerViewNode&&(s.measureLayout(e.getInnerViewNode(),a.findNodeHandle(e),d,this._setScrollContentLength),s.measureLayoutRelativeToParent(a.findNodeHandle(e),d,this._setScrollVisibleLength),u&&u.calculateChildFrames&&u.calculateChildFrames(a.findNodeHandle(e),this._updateChildFrames))},_setScrollContentLength:function(e,t,n,r){this.scrollProperties.contentLength=this.props.horizontal?n:r},_setScrollVisibleLength:function(e,t,n,r){this.scrollProperties.visibleLength=this.props.horizontal?n:r,this._updateVisibleRows(),this._renderMoreRowsIfNeeded()},_updateChildFrames:function(e){this._updateVisibleRows(e)},_renderMoreRowsIfNeeded:function(){if(null!==this.scrollProperties.contentLength&&null!==this.scrollProperties.visibleLength&&this.state.curRenderedRowsCount!==this.props.dataSource.getRowCount()){var e=this._getDistanceFromEnd(this.scrollProperties);ei||o>R?b&&(c=!0,delete m[y],l[d]||(l[d]={}),l[d][y]=!1):b||(c=!0,m[y]=!0,l[d]||(l[d]={}),l[d][y]=!0)}h(m)?this._visibleRows[d]&&delete this._visibleRows[d]:this._visibleRows[d]=m}}c&&this.props.onChangeVisibleRows(this._visibleRows,l)}},_onScroll:function(e){var t=!this.props.horizontal;this.scrollProperties.visibleLength=e.nativeEvent.layoutMeasurement[t?"height":"width"],this.scrollProperties.contentLength=e.nativeEvent.contentSize[t?"height":"width"],this.scrollProperties.offset=e.nativeEvent.contentOffset[t?"y":"x"],this._updateVisibleRows(e.nativeEvent.updatedChildFrames);var n=this._getDistanceFromEnd(this.scrollProperties)=this.rowIdentities[n].length))return this.rowIdentities[n][t];t-=this.rowIdentities[n].length}return null}},{key:"getSectionIDForFlatIndex",value:function(e){for(var t=e,n=0;n=this.rowIdentities[n].length))return this.sectionIdentities[n];t-=this.rowIdentities[n].length}return null}},{key:"getSectionLengths",value:function(){for(var e=[],t=0;t but not `scrollEventThrottle`. You will only receive one event. Using `16` you get all the events but be aware that it may cause frame drops, use a bigger number if you don't need as much precision."),"android"===i.OS&&"on-drag"===this.props.keyboardDismissMode&&y(),this.scrollResponderHandleScroll(e)},render:function(){var e=[this.props.horizontal&&x.contentContainerHorizontal,this.props.contentContainerStyle];if(__DEV__&&this.props.style){var t=_(this.props.style),n=["alignItems","justifyContent"].filter(function(e){return t&&void 0!==t[e]});S(0===n.length,"ScrollView child layout ("+JSON.stringify(n)+") must by applied through the contentContainerStyle prop.")}var o,a=u.createElement(d,{ref:C,style:e,removeClippedSubviews:this.props.removeClippedSubviews,collapsable:!1},this.props.children),c=void 0!==this.props.alwaysBounceHorizontal?this.props.alwaysBounceHorizontal:this.props.horizontal,l=void 0!==this.props.alwaysBounceVertical?this.props.alwaysBounceVertical:!this.props.horizontal,p=r({},this.props,{alwaysBounceHorizontal:c,alwaysBounceVertical:l,style:[x.base,this.props.style],onTouchStart:this.scrollResponderHandleTouchStart,onTouchMove:this.scrollResponderHandleTouchMove,onTouchEnd:this.scrollResponderHandleTouchEnd,onScrollBeginDrag:this.scrollResponderHandleScrollBeginDrag,onScrollEndDrag:this.scrollResponderHandleScrollEndDrag,onMomentumScrollBegin:this.scrollResponderHandleMomentumScrollBegin,onMomentumScrollEnd:this.scrollResponderHandleMomentumScrollEnd,onStartShouldSetResponder:this.scrollResponderHandleStartShouldSetResponder,onStartShouldSetResponderCapture:this.scrollResponderHandleStartShouldSetResponderCapture,onScrollShouldSetResponder:this.scrollResponderHandleScrollShouldSetResponder,onScroll:this.handleScroll,onResponderGrant:this.scrollResponderHandleResponderGrant,onResponderTerminationRequest:this.scrollResponderHandleTerminationRequest,onResponderTerminate:this.scrollResponderHandleTerminate,onResponderRelease:this.scrollResponderHandleResponderRelease,onResponderReject:this.scrollResponderHandleResponderReject});return"ios"===i.OS?o=s:"android"===i.OS&&(o=this.props.horizontal?N:P),S(void 0!==o,"ScrollViewClass must not be undefined"),u.createElement(o,r({},p,{ref:T}),a)}}),x=f.create({base:{flex:1},contentContainerHorizontal:{alignSelf:"flex-start",flexDirection:"row"}}),I=r({},c.UIView,{alwaysBounceHorizontal:!0,alwaysBounceVertical:!0,automaticallyAdjustContentInsets:!0,bounces:!0,centerContent:!0,contentInset:{diff:b},contentOffset:{diff:R},decelerationRate:!0,horizontal:!0,keyboardDismissMode:!0,keyboardShouldPersistTaps:!0,maximumZoomScale:!0,minimumZoomScale:!0,pagingEnabled:!0,removeClippedSubviews:!0,scrollEnabled:!0,scrollIndicatorInsets:{diff:b},scrollsToTop:!0,showsHorizontalScrollIndicator:!0,showsVerticalScrollIndicator:!0,stickyHeaderIndices:{diff:g},scrollEventThrottle:!0,zoomScale:!0});if("android"===i.OS)var P=m({validAttributes:I,uiViewClassName:"RCTScrollView"}),N=m({validAttributes:I,uiViewClassName:"AndroidHorizontalScrollView"});else if("ios"===i.OS)var s=E("RCTScrollView",O);n.exports=O}),__d("PointPropType",["ReactPropTypes","createStrictShapeTypeChecker"],function(e,t,n){"use strict";var r=t("ReactPropTypes"),o=t("createStrictShapeTypeChecker"),i=o({x:r.number,y:r.number});n.exports=i}),__d("ScrollResponder",["NativeModules","Platform","RCTDeviceEventEmitter","React","Subscribable","TextInputState","warning"],function(e,t,n){"use strict";var r=t("NativeModules"),o=t("Platform"),i=t("RCTDeviceEventEmitter"),a=t("React"),s=t("Subscribable"),u=t("TextInputState"),c=r.UIManager,l=c.RCTScrollView.Constants,p=t("warning"),f=16,h={mixins:[s.Mixin],statics:l,scrollResponderMixinGetInitialState:function(){return{isTouching:!1,lastMomentumScrollBeginTime:0,lastMomentumScrollEndTime:0,observedScrollSinceBecomingResponder:!1,becameResponderWhileAnimating:!1}},scrollResponderHandleScrollShouldSetResponder:function(){return this.state.isTouching},scrollResponderHandleStartShouldSetResponder:function(){return!1},scrollResponderHandleStartShouldSetResponderCapture:function(e){var t=u.currentlyFocusedField();return this.props.keyboardShouldPersistTaps===!1&&null!=t&&e.target!==t?!0:this.scrollResponderIsAnimating()},scrollResponderHandleResponderReject:function(){p(!1,"ScrollView doesn't take rejection well - scrolls anyway")},scrollResponderHandleTerminationRequest:function(){return!this.state.observedScrollSinceBecomingResponder},scrollResponderHandleTouchEnd:function(e){var t=e.nativeEvent;this.state.isTouching=0!==t.touches.length,this.props.onTouchEnd&&this.props.onTouchEnd(e)},scrollResponderHandleResponderRelease:function(e){this.props.onResponderRelease&&this.props.onResponderRelease(e);var t=u.currentlyFocusedField();this.props.keyboardShouldPersistTaps!==!1||null==t||e.target===t||this.state.observedScrollSinceBecomingResponder||this.state.becameResponderWhileAnimating||(this.props.onScrollResponderKeyboardDismissed&&this.props.onScrollResponderKeyboardDismissed(e),u.blurTextInput(t))},scrollResponderHandleScroll:function(e){this.state.observedScrollSinceBecomingResponder=!0,this.props.onScroll&&this.props.onScroll(e)},scrollResponderHandleResponderGrant:function(e){this.state.observedScrollSinceBecomingResponder=!1,this.props.onResponderGrant&&this.props.onResponderGrant(e),this.state.becameResponderWhileAnimating=this.scrollResponderIsAnimating()},scrollResponderHandleScrollBeginDrag:function(e){this.props.onScrollBeginDrag&&this.props.onScrollBeginDrag(e)},scrollResponderHandleScrollEndDrag:function(e){this.props.onScrollEndDrag&&this.props.onScrollEndDrag(e)},scrollResponderHandleMomentumScrollBegin:function(e){this.state.lastMomentumScrollBeginTime=Date.now(),this.props.onMomentumScrollBegin&&this.props.onMomentumScrollBegin(e)},scrollResponderHandleMomentumScrollEnd:function(e){this.state.lastMomentumScrollEndTime=Date.now(),this.props.onMomentumScrollEnd&&this.props.onMomentumScrollEnd(e)},scrollResponderHandleTouchStart:function(e){this.state.isTouching=!0,this.props.onTouchStart&&this.props.onTouchStart(e)},scrollResponderHandleTouchMove:function(e){this.props.onTouchMove&&this.props.onTouchMove(e)},scrollResponderIsAnimating:function(){var e=Date.now(),t=e-this.state.lastMomentumScrollEndTime,n=f>t||this.state.lastMomentumScrollEndTime=1,"Navigator requires props.initialRoute or props.initialRouteStack.");var n=t.length-1;return this.props.initialRoute&&(n=t.indexOf(this.props.initialRoute),R(-1!==n,"initialRoute is not in initialRouteStack.")),{sceneConfigStack:t.map(function(t){return e.props.configureScene(t)}),routeStack:t,presentedIndex:n,transitionFromIndex:null,activeGesture:null,pendingGestureProgress:null,transitionQueue:[]}},componentWillMount:function(){var e=this;this.__defineGetter__("navigationContext",this._getNavigationContext),this._subRouteFocus=[],this.parentNavigator=this.props.navigator,this._handlers={},this.springSystem=new E.SpringSystem,this.spring=this.springSystem.createSpring(),this.spring.setRestSpeedThreshold(.05),this.spring.setCurrentValue(0).setAtRest(),this.spring.addListener({onSpringEndStateChange:function(){e._interactionHandle||(e._interactionHandle=e.createInteractionHandle())},onSpringUpdate:function(){e._handleSpringUpdate()},onSpringAtRest:function(){e._completeTransition()}}),this.panGesture=d.create({onMoveShouldSetPanResponder:this._handleMoveShouldSetPanResponder,onPanResponderGrant:this._handlePanResponderGrant,onPanResponderRelease:this._handlePanResponderRelease,onPanResponderMove:this._handlePanResponderMove,onPanResponderTerminate:this._handlePanResponderTerminate}),this._interactionHandle=null,this._emitWillFocus(this.state.routeStack[this.state.presentedIndex])},componentDidMount:function(){this._handleSpringUpdate(),this._emitDidFocus(this.state.routeStack[this.state.presentedIndex])},componentWillUnmount:function(){this._navigationContext&&(this._navigationContext.dispose(),this._navigationContext=null)},immediatelyResetRouteStack:function(e){var t=this,n=e.length-1;this.setState({routeStack:e,sceneConfigStack:e.map(this.props.configureScene),presentedIndex:n,activeGesture:null,transitionFromIndex:null,transitionQueue:[]},function(){t._handleSpringUpdate()})},_transitionTo:function(e,t,n,r){if(e!==this.state.presentedIndex){if(null!==this.state.transitionFromIndex)return void this.state.transitionQueue.push({destIndex:e,velocity:t,cb:r});this.state.transitionFromIndex=this.state.presentedIndex,this.state.presentedIndex=e,this.state.transitionCb=r,this._onAnimationStart(),a&&a.startRecordingFps();var o=this.state.sceneConfigStack[this.state.transitionFromIndex]||this.state.sceneConfigStack[this.state.presentedIndex];R(o,"Cannot configure scene at index "+this.state.transitionFromIndex),null!=n&&this.spring.setCurrentValue(n),this.spring.setOvershootClampingEnabled(!0),this.spring.getSpringConfig().friction=o.springFriction,this.spring.getSpringConfig().tension=o.springTension,this.spring.setVelocity(t||o.defaultTransitionVelocity),this.spring.setEndValue(1)}},_handleSpringUpdate:function(){if(null!=this.state.transitionFromIndex)this._transitionBetween(this.state.transitionFromIndex,this.state.presentedIndex,this.spring.getCurrentValue());else if(null!=this.state.activeGesture){var e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._transitionBetween(this.state.presentedIndex,e,this.spring.getCurrentValue())}},_completeTransition:function(){if(1!==this.spring.getCurrentValue()&&0!==this.spring.getCurrentValue())return void(this.state.pendingGestureProgress&&(this.state.pendingGestureProgress=null));this._onAnimationEnd();var e=this.state.presentedIndex,t=this._subRouteFocus[e]||this.state.routeStack[e];if(this._emitDidFocus(t),a&&a.stopRecordingFps(Date.now()),this.state.transitionFromIndex=null,this.spring.setCurrentValue(0).setAtRest(),this._hideScenes(),this.state.transitionCb&&(this.state.transitionCb(),this.state.transitionCb=null),this._interactionHandle&&(this.clearInteractionHandle(this._interactionHandle),this._interactionHandle=null),this.state.pendingGestureProgress){var n=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._enableScene(n),void this.spring.setEndValue(this.state.pendingGestureProgress)}if(this.state.transitionQueue.length){var r=this.state.transitionQueue.shift();this._enableScene(r.destIndex),this._emitWillFocus(this.state.routeStack[r.destIndex]),this._transitionTo(r.destIndex,r.velocity,null,r.cb)}},_emitDidFocus:function(e){this.navigationContext.emit("didfocus",{route:e}),this.props.onDidFocus&&this.props.onDidFocus(e)},_emitWillFocus:function(e){this.navigationContext.emit("willfocus",{route:e});var t=this._navBar;t&&t.handleWillFocus&&t.handleWillFocus(e),this.props.onWillFocus&&this.props.onWillFocus(e)},_hideScenes:function(){var e=null;this.state.activeGesture&&(e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture));for(var t=0;t=t;t++)this._setRenderSceneToHarwareTextureAndroid(t,!1);var n=this._navBar;n&&n.onAnimationEnd&&n.onAnimationEnd()},_setRenderSceneToHarwareTextureAndroid:function(e,t){var n=this.refs["scene_"+e];null!==n&&void 0!==n&&n.setNativeProps({renderToHardwareTextureAndroid:t})},_handleTouchStart:function(){this._eligibleGestures=P},_handleMoveShouldSetPanResponder:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];return this._expectingGestureGrant=this._matchGestureAction(this._eligibleGestures,n.gestures,t),!!this._expectingGestureGrant},_doesGestureOverswipe:function(e){var t=this.state.presentedIndex<=0&&("pop"===e||"jumpBack"===e),n=this.state.presentedIndex>=this.state.routeStack.length-1&&"jumpForward"===e;return n||t},_handlePanResponderGrant:function(){R(this._expectingGestureGrant,"Responder granted unexpectedly."),this._attachGesture(this._expectingGestureGrant),this._onAnimationStart(),this._expectingGestureGrant=null},_deltaForGestureAction:function(e){switch(e){case"pop":case"jumpBack":return-1;case"jumpForward":return 1;default:return void R(!1,"Unsupported gesture action "+e)}},_handlePanResponderRelease:function(e,t){var n=this,r=this.state.sceneConfigStack[this.state.presentedIndex],o=this.state.activeGesture;if(o){var i=r.gestures[o],a=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);if(0===this.spring.getCurrentValue())return this.spring.setCurrentValue(0).setAtRest(),void this._completeTransition();var s,u,c="top-to-bottom"===i.direction||"bottom-to-top"===i.direction,l="right-to-left"===i.direction||"bottom-to-top"===i.direction;c?(s=l?-t.vy:t.vy,u=l?-t.dy:t.dy):(s=l?-t.vx:t.vx,u=l?-t.dx:t.dx);var p=b(-10,s,10);if(Math.abs(s)i.fullDistance*i.stillCompletionRatio;p=f?i.snapVelocity:-i.snapVelocity}if(0>p||this._doesGestureOverswipe(o)){if(null==this.state.transitionFromIndex){var h=this.state.presentedIndex;this.state.presentedIndex=a,this._transitionTo(h,-p,1-this.spring.getCurrentValue())}}else this._emitWillFocus(this.state.routeStack[a]),this._transitionTo(a,p,null,function(){"pop"===o&&n._cleanScenesPastIndex(a)});this._detachGesture()}},_handlePanResponderTerminate:function(){var e=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._detachGesture();var t=this.state.presentedIndex;this.state.presentedIndex=e,this._transitionTo(t,null,1-this.spring.getCurrentValue())},_attachGesture:function(e){this.state.activeGesture=e;var t=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);this._enableScene(t)},_detachGesture:function(){this.state.activeGesture=null,this.state.pendingGestureProgress=null,this._hideScenes()},_handlePanResponderMove:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];if(this.state.activeGesture){var r=n.gestures[this.state.activeGesture];return this._moveAttachedGesture(r,t)}var o=this._matchGestureAction(P,n.gestures,t);o&&this._attachGesture(o)},_moveAttachedGesture:function(e,t){var n="top-to-bottom"===e.direction||"bottom-to-top"===e.direction,r="right-to-left"===e.direction||"bottom-to-top"===e.direction,o=n?t.dy:t.dx;o=r?-o:o;var i=e.gestureDetectMovement,a=(o-i)/(e.fullDistance-i);if(0>a&&e.isDetachable){var s=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._transitionBetween(this.state.presentedIndex,s,0),this._detachGesture(),void(null!=this.state.pendingGestureProgress&&this.spring.setCurrentValue(0))}if(this._doesGestureOverswipe(this.state.activeGesture)){var u=e.overswipe.frictionConstant,c=e.overswipe.frictionByDistance,l=1/(u+Math.abs(a)*c);a*=l}a=b(0,a,1),null!=this.state.transitionFromIndex?this.state.pendingGestureProgress=a:this.state.pendingGestureProgress?this.spring.setEndValue(a):this.spring.setCurrentValue(a)},_matchGestureAction:function(e,t,n){var r=this;if(!t)return null;var o=null;return e.some(function(e,i){var a=t[e];if(a){if(null==a.overswipe&&r._doesGestureOverswipe(e))return!1;var s="top-to-bottom"===a.direction||"bottom-to-top"===a.direction,u="right-to-left"===a.direction||"bottom-to-top"===a.direction,c=s?n.moveY:n.moveX,l=s?n.dy:n.dx,p=s?n.dx:n.dy,f=a.edgeHitWidth;u&&(c=-c,l=-l,p=-p,f=s?-(C-f):-(T-f));var h=null==a.edgeHitWidth||f>c;if(!h)return!1;var d=l>=a.gestureDetectMovement;if(!d)return!1;var v=Math.abs(l)>Math.abs(p)*a.directionRatio;return v?(o=e,!0):void(r._eligibleGestures=r._eligibleGestures.slice().splice(i,1))}}),o},_transitionSceneStyle:function(e,t,n,r){var o=this.refs["scene_"+r];if(null!==o&&void 0!==o){var i=t>e?t:e,a=this.state.sceneConfigStack[i];a||(a=this.state.sceneConfigStack[i-1]);var s={},u=e>r||t>r?a.animationInterpolators.out:a.animationInterpolators.into,c=t>e?n:1-n,l=u(s,c);l&&o.setNativeProps({style:s})}},_transitionBetween:function(e,t,n){this._transitionSceneStyle(e,t,n,e),this._transitionSceneStyle(e,t,n,t);var r=this._navBar;r&&r.updateProgress&&t>=0&&e>=0&&r.updateProgress(n,e,t)},_handleResponderTerminationRequest:function(){return!1},_getDestIndexWithinBounds:function(e){var t=this.state.presentedIndex,n=t+e;R(n>=0,"Cannot jump before the first route.");var r=this.state.routeStack.length-1;return R(r>=n,"Cannot jump past the last route."),n},_jumpN:function(e){var t=this._getDestIndexWithinBounds(e);this._enableScene(t),this._emitWillFocus(this.state.routeStack[t]),this._transitionTo(t)},jumpTo:function(e){var t=this.state.routeStack.indexOf(e);R(-1!==t,"Cannot jump to route that is not in the route stack"),this._jumpN(t-this.state.presentedIndex)},jumpForward:function(){this._jumpN(1)},jumpBack:function(){this._jumpN(-1)},push:function(e){var t=this;R(!!e,"Must supply route to push");var n=this.state.presentedIndex+1,r=this.state.routeStack.slice(0,n),o=this.state.sceneConfigStack.slice(0,n),i=r.concat([e]),a=i.length-1,s=o.concat([this.props.configureScene(e)]);this._emitWillFocus(i[a]),this.setState({routeStack:i,sceneConfigStack:s},function(){t._enableScene(a),t._transitionTo(a)})},_popN:function(e){var t=this;if(0!==e){R(this.state.presentedIndex-e>=0,"Cannot pop below zero");var n=this.state.presentedIndex-e;this._enableScene(n),this._emitWillFocus(this.state.routeStack[n]),this._transitionTo(n,null,null,function(){t._cleanScenesPastIndex(n)})}},pop:function(){this.state.transitionQueue.length||this.state.presentedIndex>0&&this._popN(1)},replaceAtIndex:function(e,t,n){var r=this;if(R(!!e,"Must supply route to replace"),0>t&&(t+=this.state.routeStack.length),!(this.state.routeStack.length<=t)){var o=this.state.routeStack.slice(),i=this.state.sceneConfigStack.slice();o[t]=e,i[t]=this.props.configureScene(e),t===this.state.presentedIndex&&this._emitWillFocus(e),this.setState({routeStack:o,sceneConfigStack:i},function(){t===r.state.presentedIndex&&r._emitDidFocus(e),n&&n()})}},replace:function(e){this.replaceAtIndex(e,this.state.presentedIndex)},replacePrevious:function(e){this.replaceAtIndex(e,this.state.presentedIndex-1)},popToTop:function(){this.popToRoute(this.state.routeStack[0])},popToRoute:function(e){var t=this.state.routeStack.indexOf(e);R(-1!==t,"Calling popToRoute for a route that doesn't exist!");var n=this.state.presentedIndex-t;this._popN(n)},replacePreviousAndPop:function(e){this.state.routeStack.length<2||(this.replacePrevious(e),this.pop())},resetTo:function(e){var t=this;R(!!e,"Must supply route to push"),this.replaceAtIndex(e,0,function(){t.state.presentedIndex>0&&t._popN(t.state.presentedIndex)})},getCurrentRoutes:function(){return this.state.routeStack.slice()},_cleanScenesPastIndex:function(e){var t=e+1;t0?(r=this._list.pop(),r.constructor.call(r,e,t,n)):r=new u(e,t,n),r}},{key:"put",value:function(e){this._list.push(e)}}]),e}(),s=new a,u=function(){function e(t,n,o){r(this,e),this._type=t,this._target=n,this._data=o,this._defaultPrevented=!1,this._disposed=!1}return o(e,null,[{key:"pool",value:function(e,t,n){return s.get(e,t,n)}}]),o(e,[{key:"preventDefault",value:function(){this._defaultPrevented=!0}},{key:"dispose",value:function(){i(!this._disposed,"NavigationEvent is already disposed"),this._disposed=!0,this._type=null,this._target=null,this._data=null,this._defaultPrevented=!1,s.put(this)}},{key:"type",get:function(){return this._type}},{key:"target",get:function(){return this._target}},{key:"data",get:function(){return this._data}},{key:"defaultPrevented",get:function(){return this._defaultPrevented}}]),e}();n.exports=u}),__d("NavigationEventEmitter",["EventEmitter","NavigationEvent"],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var i=function(){function e(e,t){for(var n=0;ne?r.Left[e]:r.Right[e]},b=i.createClass({displayName:"NavigatorBreadcrumbNavigationBar",propTypes:{navigator:f.shape({push:f.func,pop:f.func,replace:f.func,popToRoute:f.func,popToTop:f.func}),routeMapper:f.shape({rightContentForRoute:f.func,titleContentForRoute:f.func,iconForRoute:f.func}),navState:i.PropTypes.shape({routeStack:i.PropTypes.arrayOf(i.PropTypes.object),presentedIndex:i.PropTypes.number}),style:s.propTypes.style},statics:{Styles:r},_updateIndexProgress:function(e,t,n,r){var o,i=r>n?e:1-e,a=t-n,s=t-r;l(p[t],"Cannot find breadcrumb interpolators for "+t),o=a>0&&0===s||s>0&&0===a?p[t].RightToCenter:0>a&&0===s||0>s&&0===a?p[t].CenterToLeft:a===s?p[t].RightToCenter:p[t].RightToLeft,o.Crumb(h[t].style,i)&&this._setPropsIfExists("crumb_"+t,h[t]),o.Icon(d[t].style,i)&&this._setPropsIfExists("icon_"+t,d[t]),o.Separator(v[t].style,i)&&this._setPropsIfExists("separator_"+t,v[t]),o.Title(m[t].style,i)&&this._setPropsIfExists("title_"+t,m[t]);var u=this.refs["right_"+t];u&&o.RightItem(g[t].style,i)&&u.setNativeProps(g[t])},updateProgress:function(e,t,n){for(var r=Math.max(t,n),o=Math.min(t,n),i=o;r>=i;i++)this._updateIndexProgress(e,i,t,n)},onAnimationStart:function(e,t){for(var n=Math.max(e,t),r=Math.min(e,t),o=r;n>=o;o++)this._setRenderViewsToHardwareTextureAndroid(o,!0)},onAnimationEnd:function(){for(var e=this.props.navState.routeStack.length-1,t=0;e>=t;t++)this._setRenderViewsToHardwareTextureAndroid(t,!1)},_setRenderViewsToHardwareTextureAndroid:function(e,t){var n={renderToHardwareTextureAndroid:t};this._setPropsIfExists("icon_"+e,n),this._setPropsIfExists("separator_"+e,n),this._setPropsIfExists("title_"+e,n),this._setPropsIfExists("right_"+e,n)},componentWillMount:function(){this._descriptors={crumb:new c,title:new c,right:new c}},render:function(){var e=this.props.navState,t=e&&e.routeStack.map(this._getBreadcrumb),n=e.routeStack.map(this._getTitle),r=e.routeStack.map(this._getRightButton);return i.createElement(s,{style:[S.breadCrumbContainer,this.props.style]},n,t,r)},_getBreadcrumb:function(e,t){if(this._descriptors.crumb.has(e))return this._descriptors.crumb.get(e);var n=this.props.routeMapper,r=_(t,y(this.props.navState)),o=i.createElement(s,{ref:"crumb_"+t,style:r.Crumb},i.createElement(s,{ref:"icon_"+t,style:r.Icon},n.iconForRoute(e,this.props.navigator)),i.createElement(s,{ref:"separator_"+t,style:r.Separator},n.separatorForRoute(e,this.props.navigator))); -return this._descriptors.crumb=this._descriptors.crumb.set(e,o),o},_getTitle:function(e,t){if(this._descriptors.title.has(e))return this._descriptors.title.get(e);var n=this.props.routeMapper.titleContentForRoute(this.props.navState.routeStack[t],this.props.navigator),r=_(t,y(this.props.navState)),o=i.createElement(s,{ref:"title_"+t,style:r.Title},n);return this._descriptors.title=this._descriptors.title.set(e,o),o},_getRightButton:function(e,t){if(this._descriptors.right.has(e))return this._descriptors.right.get(e);var n=this.props.routeMapper.rightContentForRoute(this.props.navState.routeStack[t],this.props.navigator);if(!n)return this._descriptors.right=this._descriptors.right.set(e,null),null;var r=_(t,y(this.props.navState)),o=i.createElement(s,{ref:"right_"+t,style:r.RightItem},n);return this._descriptors.right=this._descriptors.right.set(e,o),o},_setPropsIfExists:function(e,t){var e=this.refs[e];e&&e.setNativeProps(t)}}),S=a.create({breadCrumbContainer:{overflow:"hidden",position:"absolute",height:o.General.TotalNavHeight,top:0,left:0,right:0}});n.exports=b}),__d("NavigatorBreadcrumbNavigationBarStyles",["Dimensions","NavigatorNavigationBarStyles","buildStyleInterpolator","merge"],function(e,t,n){"use strict";for(var r=t("Dimensions"),o=t("NavigatorNavigationBarStyles"),i=t("buildStyleInterpolator"),a=t("merge"),s=r.get("window").width,u=o.General.StatusBarHeight,c=o.General.NavBarHeight,l=4,p=40,f=9,h=p+f,d=100,v=.6,m=10,g={position:"absolute",flexDirection:"row",top:u,width:h,height:c,backgroundColor:"transparent"},y={width:p,height:c},_={width:f,height:c},b={position:"absolute",top:u,height:c,backgroundColor:"transparent"},S=a(b,{left:0,right:0,alignItems:"center",height:c}),R={position:"absolute",top:u,right:l,overflow:"hidden",opacity:1,height:c,backgroundColor:"transparent"},E=[],w=[],T=[],C=0;m>C;C++){var O=h*C+l;E[C]={Crumb:a(g,{left:O}),Icon:a(y,{opacity:v}),Separator:a(_,{opacity:1}),Title:a(b,{left:O,opacity:0}),RightItem:a(R,{opacity:0})},w[C]={Crumb:a(g,{left:O}),Icon:a(y,{opacity:1}),Separator:a(_,{opacity:0}),Title:a(b,{left:O+p,opacity:1}),RightItem:a(R,{opacity:1})};var x=s-100;T[C]={Crumb:a(g,{left:x}),Icon:a(y,{opacity:0}),Separator:a(_,{opacity:0}),Title:a(b,{left:x+p,opacity:0}),RightItem:a(R,{opacity:0})}}w[0]={Crumb:a(g,{left:s/4}),Icon:a(y,{opacity:0}),Separator:a(_,{opacity:0}),Title:a(S,{opacity:1}),RightItem:w[0].RightItem},E[0].Title=a(S,{left:-s/4,opacity:0}),T[0].Title=a(S,{opacity:0});var I=function(e,t){return{Crumb:i({left:{type:"linear",from:e.Crumb.left,to:t.Crumb.left,min:0,max:1,extrapolate:!0}}),Icon:i({opacity:{type:"linear",from:e.Icon.opacity,to:t.Icon.opacity,min:0,max:1}}),Separator:i({opacity:{type:"linear",from:e.Separator.opacity,to:t.Separator.opacity,min:0,max:1}}),Title:i({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),RightItem:i({opacity:{type:"linear",from:e.RightItem.opacity,to:t.RightItem.opacity,min:0,max:1,round:d}})}},P=w.map(function(e,t){return{RightToCenter:I(T[t],w[t]),CenterToLeft:I(w[t],E[t]),RightToLeft:I(T[t],E[t])}});n.exports={Interpolators:P,Left:E,Center:w,Right:T,IconWidth:p,IconHeight:c,SeparatorWidth:f,SeparatorHeight:c}}),__d("NavigatorNavigationBarStyles",["Dimensions","buildStyleInterpolator","merge"],function(e,t,n){"use strict";function r(e,t){return{Title:i({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),LeftButton:i({opacity:{type:"linear",from:e.LeftButton.opacity,to:t.LeftButton.opacity,min:0,max:1,round:h},left:{type:"linear",from:e.LeftButton.left,to:t.LeftButton.left,min:0,max:1}}),RightButton:i({opacity:{type:"linear",from:e.RightButton.opacity,to:t.RightButton.opacity,min:0,max:1,round:h},left:{type:"linear",from:e.RightButton.left,to:t.RightButton.left,min:0,max:1,extrapolate:!0}})}}var o=t("Dimensions"),i=t("buildStyleInterpolator"),a=t("merge"),s=o.get("window").width,u=44,c=20,l=u+c,p={Title:{position:"absolute",top:c,left:0,alignItems:"center",width:s,height:u,backgroundColor:"transparent"},LeftButton:{position:"absolute",top:c,left:0,overflow:"hidden",opacity:1,width:s/3,height:u,backgroundColor:"transparent"},RightButton:{position:"absolute",top:c,left:2*s/3,overflow:"hidden",opacity:1,alignItems:"flex-end",width:s/3,height:u,backgroundColor:"transparent"}},f={Left:{Title:a(p.Title,{left:-s/2,opacity:0}),LeftButton:a(p.LeftButton,{left:-s/3,opacity:1}),RightButton:a(p.RightButton,{left:s/3,opacity:0})},Center:{Title:a(p.Title,{left:0,opacity:1}),LeftButton:a(p.LeftButton,{left:0,opacity:1}),RightButton:a(p.RightButton,{left:2*s/3-0,opacity:1})},Right:{Title:a(p.Title,{left:s/2,opacity:0}),LeftButton:a(p.LeftButton,{left:0,opacity:0}),RightButton:a(p.RightButton,{left:s,opacity:0})}},h=100,d={RightToCenter:r(f.Right,f.Center),CenterToLeft:r(f.Center,f.Left),RightToLeft:r(f.Right,f.Left)};n.exports={General:{NavBarHeight:u,StatusBarHeight:c,TotalNavHeight:l},Interpolators:d,Stages:f}}),__d("buildStyleInterpolator",["keyOf"],function(e,t,n){for(var r=t("keyOf"),o=r({x:null}),i=r({y:null}),a=r({z:null}),s=r({w:null}),u=r({transformRotateRadians:null}),c={transformRotateRadians:!0,transformScale:!0,transformTranslate:!0},l={transformRotateRadians:[0,0,0,1],transformTranslate:[0,0,0],transformScale:[1,1,1]},p=/([^\s,]+)/g,f=function(e,t){var n=e.toString(),r=n.slice(n.indexOf("(")+1,n.indexOf(")")).match(p)||[],o=r.map(function(e){return"\\b"+e+"\\b"}).join("|"),i=new RegExp(o,"g"),a=n.substring(n.indexOf("{")+1,n.lastIndexOf("}")),s=a.replace(i,function(e){var n=r.indexOf(e),o=t[n];return o});return s.split("\n")},h={unroll:function(e,t,n,r,o,i,a,s,u,c,l,p,f,h,d,v,m){t=e[0],n=e[1],r=e[2],o=e[3],i=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],p=e[10],f=e[11],h=e[12],d=e[13],v=e[14],m=e[15]},matrixDiffers:function(e,t,n,r,o,i,a,s,u,c,l,p,f,h,d,v,m,g){e=e||n!==t[0]||r!==t[1]||o!==t[2]||i!==t[3]||a!==t[4]||s!==t[5]||u!==t[6]||c!==t[7]||l!==t[8]||p!==t[9]||f!==t[10]||h!==t[11]||d!==t[12]||v!==t[13]||m!==t[14]||g!==t[15]},transformScale:function(e,t){var n=t[0],r=t[1],o=t[2];e[0]=e[0]*n,e[1]=e[1]*n,e[2]=e[2]*n,e[3]=e[3]*n,e[4]=e[4]*r,e[5]=e[5]*r,e[6]=e[6]*r,e[7]=e[7]*r,e[8]=e[8]*o,e[9]=e[9]*o,e[10]=e[10]*o,e[11]=e[11]*o,e[12]=e[12],e[13]=e[13],e[14]=e[14],e[15]=e[15]},transformTranslate:function(e,t){var n=t[0],r=t[1],o=t[2];e[12]=e[0]*n+e[4]*r+e[8]*o+e[12],e[13]=e[1]*n+e[5]*r+e[9]*o+e[13],e[14]=e[2]*n+e[6]*r+e[10]*o+e[14],e[15]=e[3]*n+e[7]*r+e[11]*o+e[15]},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,f=r*s,h=r*u,d=o*u,v=i*a,m=i*s,g=i*u,y=1-(f+d),_=l+g,b=p-m,S=l-g,R=1-(c+d),E=h+v,w=p+m,T=h-v,C=1-(c+f),O=e[0],x=e[1],I=e[2],P=e[3],N=e[4],D=e[5],M=e[6],A=e[7],k=e[8],j=e[9],L=e[10],V=e[11],F=y,B=_,H=b;e[0]=F*O+B*N+H*k,e[1]=F*x+B*D+H*j,e[2]=F*I+B*M+H*L,e[3]=F*P+B*A+H*V,F=S,B=R,H=E,e[4]=F*O+B*N+H*k,e[5]=F*x+B*D+H*j,e[6]=F*I+B*M+H*L,e[7]=F*P+B*A+H*V,F=w,B=T,H=C,e[8]=F*O+B*N+H*k,e[9]=F*x+B*D+H*j,e[10]=F*I+B*M+H*L,e[11]=F*P+B*A+H*V}},d={transformScale:function(e,t){e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1},transformTranslate:function(e,t){e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,f=r*s,h=r*u,d=o*u,v=i*a,m=i*s,g=i*u,y=1-(f+d),_=l+g,b=p-m,S=l-g,R=1-(c+d),E=h+v,w=p+m,T=h-v,C=1-(c+f),O=y,x=_,I=b;e[0]=O,e[1]=x,e[2]=I,e[3]=0,O=S,x=R,I=E,e[4]=O,e[5]=x,e[6]=I,e[7]=0,O=w,x=T,I=C,e[8]=O,e[9]=x,e[10]=I,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1}},v=function(e,t){return" if (!didChange) {\n var prevVal = result."+e+";\n result."+e+" = "+t+";\n didChange = didChange || ("+t+" !== prevVal);\n } else {\n result."+e+" = "+t+";\n }\n"},m=(function(e,t,n,r){var o="round"in e,i=e.round,a=" ratio = (value - "+e.min+") / "+(e.max-e.min)+";\n";e.extrapolate||(a+=" ratio = ratio > 1 ? 1 : (ratio < 0 ? 0 : ratio);\n");var s=o?"Math.round("+i+" * ":"",u=o?") / "+i:"";return a+=" "+r+" = "+s+"("+t+" * (1 - ratio) + "+n+" * ratio)"+u+";\n"}),g=function(e){return m(e,e.from,e.to,"nextScalarVal")},y=function(e){var t=JSON.stringify(e.value);return" nextScalarVal = "+t+";\n"},_=function(e){return" nextScalarVal = value >= "+(e.threshold+" ? "+e.to+" : "+e.from)+";\n"},b=function(){return" nextScalarVal = value;\n"},S=function(e){return e+"ReuseOp"},R=function(e){var t="";for(var n in e)c[n]&&(t+="var "+S(n)+" = [];\n");return t},E=function(e){return"\n"+e.join("\n")+"\n"},w=function(e,t,n,r){var o=S(t)+"["+r+"]";return void 0!==e.from[n]&&void 0!==e.to[n]?" "+e.from[n]!==e.to[n]?m(e,e.from[n],e.to[n],o):o+" = "+e.from[n]+";":" "+o+" = "+l[t][r]+";"},T=[],C=0;16>C;C++)T.push("m"+C);var O=function(e){var t=[" var transformMatrix = result.transformMatrix !== undefined ? result.transformMatrix : (result.transformMatrix = []);"];t.push.apply(t,f(h.unroll,["transformMatrix"].concat(T)));for(var n=0;no;o++)r[o]=e[o+t];return r}function i(e){return void 0===e.size&&(e.size=e.__iterate(s)),e.size}function a(e,t){if("number"!=typeof t){var n=+t;if(""+n!==t)return 0/0;t=n}return 0>t?i(e)+t:t}function s(){return!0}function u(e,t,n){return(0===e||void 0!==n&&-n>=e)&&(void 0===t||void 0!==n&&t>=n)}function c(e,t){return p(e,t,0)}function l(e,t){return p(e,t,t)}function p(e,t,n){return void 0===e?n:0>e?Math.max(0,t+e):void 0===t?e:Math.min(t,e)}function f(e){return m(e)?e:I(e)}function h(e){return g(e)?e:P(e)}function d(e){return y(e)?e:N(e)}function v(e){return m(e)&&!_(e)?e:D(e)}function m(e){return!(!e||!e[vr])}function g(e){return!(!e||!e[mr])}function y(e){return!(!e||!e[gr])}function _(e){return g(e)||y(e)}function b(e){return!(!e||!e[yr])}function S(e){this.next=e}function R(e,t,n,r){var o=0===e?t:1===e?n:[t,n];return r?r.value=o:r={value:o,done:!1},r}function E(){return{value:void 0,done:!0}}function w(e){return!!O(e)}function T(e){return e&&"function"==typeof e.next}function C(e){var t=O(e);return t&&t.call(e)}function O(e){var t=e&&(Rr&&e[Rr]||e[Er]);return"function"==typeof t?t:void 0}function x(e){return e&&"number"==typeof e.length}function I(e){return null===e||void 0===e?V():m(e)?e.toSeq():H(e)}function P(e){return null===e||void 0===e?V().toKeyedSeq():m(e)?g(e)?e.toSeq():e.fromEntrySeq():F(e)}function N(e){return null===e||void 0===e?V():m(e)?g(e)?e.entrySeq():e.toIndexedSeq():B(e)}function D(e){return(null===e||void 0===e?V():m(e)?g(e)?e.entrySeq():e:B(e)).toSetSeq()}function M(e){this._array=e,this.size=e.length}function A(e){var t=Object.keys(e);this._object=e,this._keys=t,this.size=t.length}function k(e){this._iterable=e,this.size=e.length||e.size}function j(e){this._iterator=e,this._iteratorCache=[]}function L(e){return!(!e||!e[Tr])}function V(){return Cr||(Cr=new M([]))}function F(e){var t=Array.isArray(e)?new M(e).fromEntrySeq():T(e)?new j(e).fromEntrySeq():w(e)?new k(e).fromEntrySeq():"object"==typeof e?new A(e):void 0;if(!t)throw new TypeError("Expected Array or iterable object of [k, v] entries, or keyed object: "+e);return t}function B(e){var t=U(e);if(!t)throw new TypeError("Expected Array or iterable object of values: "+e);return t}function H(e){var t=U(e)||"object"==typeof e&&new A(e);if(!t)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+e);return t}function U(e){return x(e)?new M(e):T(e)?new j(e):w(e)?new k(e):void 0}function q(e,t,n,r){var o=e._cache;if(o){for(var i=o.length-1,a=0;i>=a;a++){var s=o[n?i-a:a];if(t(s[1],r?s[0]:a,e)===!1)return a+1}return a}return e.__iterateUncached(t,n)}function z(e,t,n,r){var o=e._cache;if(o){var i=o.length-1,a=0;return new S(function(){var e=o[n?i-a:a];return a++>i?E():R(t,r?e[0]:a-1,e[1])})}return e.__iteratorUncached(t,n)}function G(){throw TypeError("Abstract")}function W(){}function Y(){}function K(){}function X(e,t){if(e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1;if("function"==typeof e.valueOf&&"function"==typeof t.valueOf){if(e=e.valueOf(),t=t.valueOf(),e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1}return"function"==typeof e.equals&&"function"==typeof t.equals&&e.equals(t)?!0:!1}function J(e,t){return t?Q(t,e,"",{"":e}):$(e)}function Q(e,t,n,r){return Array.isArray(t)?e.call(r,n,N(t).map(function(n,r){return Q(e,n,r,t)})):Z(t)?e.call(r,n,P(t).map(function(n,r){return Q(e,n,r,t)})):t}function $(e){return Array.isArray(e)?N(e).map($).toList():Z(e)?P(e).map($).toMap():e}function Z(e){return e&&(e.constructor===Object||void 0===e.constructor)}function et(e){return e>>>1&1073741824|3221225471&e}function tt(e){if(e===!1||null===e||void 0===e)return 0;if("function"==typeof e.valueOf&&(e=e.valueOf(),e===!1||null===e||void 0===e))return 0;if(e===!0)return 1;var t=typeof e;if("number"===t){var n=0|e;for(n!==e&&(n^=4294967295*e);e>4294967295;)e/=4294967295,n^=e;return et(n)}return"string"===t?e.length>Ar?nt(e):rt(e):"function"==typeof e.hashCode?e.hashCode():ot(e)}function nt(e){var t=Lr[e];return void 0===t&&(t=rt(e),jr===kr&&(jr=0,Lr={}),jr++,Lr[e]=t),t}function rt(e){for(var t=0,n=0;n0)switch(e.nodeType){case 1:return e.uniqueID;case 9:return e.documentElement&&e.documentElement.uniqueID}}function at(e,t){if(!e)throw new Error(t)}function st(e){at(1/0!==e,"Cannot perform this action with an infinite size.")}function ut(e,t){this._iter=e,this._useKeys=t,this.size=e.size}function ct(e){this._iter=e,this.size=e.size}function lt(e){this._iter=e,this.size=e.size}function pt(e){this._iter=e,this.size=e.size}function ft(e){var t=Mt(e);return t._iter=e,t.size=e.size,t.flip=function(){return e},t.reverse=function(){var t=e.reverse.apply(this);return t.flip=function(){return e.reverse()},t},t.has=function(t){return e.includes(t)},t.includes=function(t){return e.has(t)},t.cacheResult=At,t.__iterateUncached=function(t,n){var r=this;return e.__iterate(function(e,n){return t(n,e,r)!==!1},n)},t.__iteratorUncached=function(t,n){if(t===Sr){var r=e.__iterator(t,n);return new S(function(){var e=r.next();if(!e.done){var t=e.value[0];e.value[0]=e.value[1],e.value[1]=t}return e})}return e.__iterator(t===br?_r:br,n)},t}function ht(e,t,n){var r=Mt(e);return r.size=e.size,r.has=function(t){return e.has(t)},r.get=function(r,o){var i=e.get(r,fr);return i===fr?o:t.call(n,i,r,e)},r.__iterateUncached=function(r,o){var i=this;return e.__iterate(function(e,o,a){return r(t.call(n,e,o,a),o,i)!==!1},o)},r.__iteratorUncached=function(r,o){var i=e.__iterator(Sr,o);return new S(function(){var o=i.next();if(o.done)return o;var a=o.value,s=a[0];return R(r,s,t.call(n,a[1],s,e),o)})},r}function dt(e,t){var n=Mt(e);return n._iter=e,n.size=e.size,n.reverse=function(){return e},e.flip&&(n.flip=function(){var t=ft(e);return t.reverse=function(){return e.flip()},t}),n.get=function(n,r){return e.get(t?n:-1-n,r)},n.has=function(n){return e.has(t?n:-1-n)},n.includes=function(t){return e.includes(t)},n.cacheResult=At,n.__iterate=function(t,n){var r=this;return e.__iterate(function(e,n){return t(e,n,r)},!n)},n.__iterator=function(t,n){return e.__iterator(t,!n)},n}function vt(e,t,n,r){var o=Mt(e);return r&&(o.has=function(r){var o=e.get(r,fr);return o!==fr&&!!t.call(n,o,r,e)},o.get=function(r,o){var i=e.get(r,fr);return i!==fr&&t.call(n,i,r,e)?i:o}),o.__iterateUncached=function(o,i){var a=this,s=0;return e.__iterate(function(e,i,u){return t.call(n,e,i,u)?(s++,o(e,r?i:s-1,a)):void 0},i),s},o.__iteratorUncached=function(o,i){var a=e.__iterator(Sr,i),s=0;return new S(function(){for(;;){var i=a.next();if(i.done)return i;var u=i.value,c=u[0],l=u[1];if(t.call(n,l,c,e))return R(o,r?c:s++,l,i)}})},o}function mt(e,t,n){var r=Lt().asMutable();return e.__iterate(function(o,i){r.update(t.call(n,o,i,e),0,function(e){return e+1})}),r.asImmutable()}function gt(e,t,n){var r=g(e),o=(b(e)?wn():Lt()).asMutable();e.__iterate(function(i,a){o.update(t.call(n,i,a,e),function(e){return e=e||[],e.push(r?[a,i]:i),e})});var i=Dt(e);return o.map(function(t){return It(e,i(t))})}function yt(e,t,n,r){var o=e.size;if(void 0!==t&&(t=0|t),void 0!==n&&(n=0|n),u(t,n,o))return e;var i=c(t,o),s=l(n,o);if(i!==i||s!==s)return yt(e.toSeq().cacheResult(),t,n,r);var p,f=s-i;f===f&&(p=0>f?0:f);var h=Mt(e);return h.size=0===p?p:e.size&&p||void 0,!r&&L(e)&&p>=0&&(h.get=function(t,n){return t=a(this,t),t>=0&&p>t?e.get(t+i,n):n}),h.__iterateUncached=function(t,n){var o=this;if(0===p)return 0;if(n)return this.cacheResult().__iterate(t,n);var a=0,s=!0,u=0;return e.__iterate(function(e,n){return s&&(s=a++p)return E();var e=o.next();return r||t===br?e:t===_r?R(t,s-1,void 0,e):R(t,s-1,e.value[1],e)})},h}function _t(e,t,n){var r=Mt(e);return r.__iterateUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterate(r,o);var a=0;return e.__iterate(function(e,o,s){return t.call(n,e,o,s)&&++a&&r(e,o,i)}),a},r.__iteratorUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterator(r,o);var a=e.__iterator(Sr,o),s=!0;return new S(function(){if(!s)return E();var e=a.next();if(e.done)return e;var o=e.value,u=o[0],c=o[1];return t.call(n,c,u,i)?r===Sr?e:R(r,u,c,e):(s=!1,E())})},r}function bt(e,t,n,r){var o=Mt(e);return o.__iterateUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterate(o,i);var s=!0,u=0;return e.__iterate(function(e,i,c){return s&&(s=t.call(n,e,i,c))?void 0:(u++,o(e,r?i:u-1,a))}),u},o.__iteratorUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterator(o,i);var s=e.__iterator(Sr,i),u=!0,c=0;return new S(function(){var e,i,l;do{if(e=s.next(),e.done)return r||o===br?e:o===_r?R(o,c++,void 0,e):R(o,c++,e.value[1],e);var p=e.value;i=p[0],l=p[1],u&&(u=t.call(n,l,i,a))}while(u);return o===Sr?e:R(o,i,l,e)})},o}function St(e,t){var n=g(e),r=[e].concat(t).map(function(e){return m(e)?n&&(e=h(e)):e=n?F(e):B(Array.isArray(e)?e:[e]),e}).filter(function(e){return 0!==e.size});if(0===r.length)return e;if(1===r.length){var o=r[0];if(o===e||n&&g(o)||y(e)&&y(o))return o}var i=new M(r);return n?i=i.toKeyedSeq():y(e)||(i=i.toSetSeq()),i=i.flatten(!0),i.size=r.reduce(function(e,t){if(void 0!==e){var n=t.size;if(void 0!==n)return e+n}},0),i}function Rt(e,t,n){var r=Mt(e);return r.__iterateUncached=function(r,o){function i(e,u){var c=this;e.__iterate(function(e,o){return(!t||t>u)&&m(e)?i(e,u+1):r(e,n?o:a++,c)===!1&&(s=!0),!s},o)}var a=0,s=!1;return i(e,0),a},r.__iteratorUncached=function(r,o){var i=e.__iterator(r,o),a=[],s=0;return new S(function(){for(;i;){var e=i.next();if(e.done===!1){var u=e.value;if(r===Sr&&(u=u[1]),t&&!(a.length0}function xt(e,t,n){var r=Mt(e);return r.size=new M(n).map(function(e){return e.size}).min(),r.__iterate=function(e,t){for(var n,r=this.__iterator(br,t),o=0;!(n=r.next()).done&&e(n.value,o++,this)!==!1;);return o},r.__iteratorUncached=function(e,r){var o=n.map(function(e){return e=f(e),C(r?e.reverse():e)}),i=0,a=!1;return new S(function(){var n;return a||(n=o.map(function(e){return e.next()}),a=n.some(function(e){return e.done})),a?E():R(e,i++,t.apply(null,n.map(function(e){return e.value})))})},r}function It(e,t){return L(e)?t:e.constructor(t)}function Pt(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function Nt(e){return st(e.size),i(e)}function Dt(e){return g(e)?h:y(e)?d:v}function Mt(e){return Object.create((g(e)?P:y(e)?N:D).prototype)}function At(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):I.prototype.cacheResult.call(this)}function kt(e,t){return e>t?1:t>e?-1:0}function jt(e){var t=C(e);if(!t){if(!x(e))throw new TypeError("Expected iterable or array-like: "+e);t=C(f(e))}return t}function Lt(e){return null===e||void 0===e?Kt():Vt(e)&&!b(e)?e:Kt().withMutations(function(t){var n=h(e);st(n.size),n.forEach(function(e,n){return t.set(n,e)})})}function Vt(e){return!(!e||!e[Vr])}function Ft(e,t){this.ownerID=e,this.entries=t}function Bt(e,t,n){this.ownerID=e,this.bitmap=t,this.nodes=n}function Ht(e,t,n){this.ownerID=e,this.count=t,this.nodes=n}function Ut(e,t,n){this.ownerID=e,this.keyHash=t,this.entries=n}function qt(e,t,n){this.ownerID=e,this.keyHash=t,this.entry=n}function zt(e,t,n){this._type=t,this._reverse=n,this._stack=e._root&&Wt(e._root)}function Gt(e,t){return R(e,t[0],t[1])}function Wt(e,t){return{node:e,index:0,__prev:t}}function Yt(e,t,n,r){var o=Object.create(Fr);return o.size=e,o._root=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Kt(){return Br||(Br=Yt(0))}function Xt(e,n,r){var o,i;if(e._root){var a=t(hr),s=t(dr);if(o=Jt(e._root,e.__ownerID,0,void 0,n,r,a,s),!s.value)return e;i=e.size+(a.value?r===fr?-1:1:0)}else{if(r===fr)return e;i=1,o=new Ft(e.__ownerID,[[n,r]])}return e.__ownerID?(e.size=i,e._root=o,e.__hash=void 0,e.__altered=!0,e):o?Yt(i,o):Kt()}function Jt(e,t,r,o,i,a,s,u){return e?e.update(t,r,o,i,a,s,u):a===fr?e:(n(u),n(s),new qt(t,o,[i,a]))}function Qt(e){return e.constructor===qt||e.constructor===Ut}function $t(e,t,n,r,o){if(e.keyHash===r)return new Ut(t,r,[e.entry,o]);var i,a=(0===n?e.keyHash:e.keyHash>>>n)&pr,s=(0===n?r:r>>>n)&pr,u=a===s?[$t(e,t,n+cr,r,o)]:(i=new qt(t,r,o),s>a?[e,i]:[i,e]);return new Bt(t,1<s;s++,u<<=1){var l=t[s];void 0!==l&&s!==r&&(o|=u,a[i++]=l)}return new Bt(e,o,a)}function tn(e,t,n,r,o){for(var i=0,a=new Array(lr),s=0;0!==n;s++,n>>>=1)a[s]=1&n?t[i++]:void 0;return a[r]=o,new Ht(e,i+1,a)}function nn(e,t,n){for(var r=[],o=0;o>1&1431655765,e=(858993459&e)+(e>>2&858993459),e=e+(e>>4)&252645135,e+=e>>8,e+=e>>16,127&e}function un(e,t,n,r){var i=r?e:o(e);return i[t]=n,i}function cn(e,t,n,r){var o=e.length+1;if(r&&t+1===o)return e[t]=n,e;for(var i=new Array(o),a=0,s=0;o>s;s++)s===t?(i[s]=n,a=-1):i[s]=e[s+a];return i}function ln(e,t,n){var r=e.length-1;if(n&&t===r)return e.pop(),e;for(var o=new Array(r),i=0,a=0;r>a;a++)a===t&&(i=1),o[a]=e[a+i];return o}function pn(e){var t=mn();if(null===e||void 0===e)return t;if(fn(e))return e;var n=d(e),r=n.size;return 0===r?t:(st(r),r>0&&lr>r?vn(0,r,cr,null,new hn(n.toArray())):t.withMutations(function(e){e.setSize(r),n.forEach(function(t,n){return e.set(n,t)})}))}function fn(e){return!(!e||!e[zr])}function hn(e,t){this.array=e,this.ownerID=t}function dn(e,t){function n(e,t,n){return 0===t?r(e,n):o(e,t,n)}function r(e,n){var r=n===s?u&&u.array:e&&e.array,o=n>i?0:i-n,c=a-n;return c>lr&&(c=lr),function(){if(o===c)return Yr;var e=t?--c:o++;return r&&r[e]}}function o(e,r,o){var s,u=e&&e.array,c=o>i?0:i-o>>r,l=(a-o>>r)+1;return l>lr&&(l=lr),function(){for(;;){if(s){var e=s();if(e!==Yr)return e;s=null}if(c===l)return Yr;var i=t?--l:c++;s=n(u&&u[i],r-cr,o+(i<=e.size||0>n)return e.withMutations(function(e){0>n?Sn(e,n).set(0,r):Sn(e,0,n+1).set(n,r)});n+=e._origin;var o=e._tail,i=e._root,s=t(dr);return n>=En(e._capacity)?o=yn(o,e.__ownerID,0,n,r,s):i=yn(i,e.__ownerID,e._level,n,r,s),s.value?e.__ownerID?(e._root=i,e._tail=o,e.__hash=void 0,e.__altered=!0,e):vn(e._origin,e._capacity,e._level,i,o):e}function yn(e,t,r,o,i,a){var s=o>>>r&pr,u=e&&s0){var l=e&&e.array[s],p=yn(l,t,r-cr,o,i,a);return p===l?e:(c=_n(e,t),c.array[s]=p,c)}return u&&e.array[s]===i?e:(n(a),c=_n(e,t),void 0===i&&s===c.array.length-1?c.array.pop():c.array[s]=i,c)}function _n(e,t){return t&&e&&t===e.ownerID?e:new hn(e?e.array.slice():[],t)}function bn(e,t){if(t>=En(e._capacity))return e._tail;if(t<1<0;)n=n.array[t>>>r&pr],r-=cr;return n}}function Sn(e,t,n){void 0!==t&&(t=0|t),void 0!==n&&(n=0|n);var o=e.__ownerID||new r,i=e._origin,a=e._capacity,s=i+t,u=void 0===n?a:0>n?a+n:i+n;if(s===i&&u===a)return e;if(s>=u)return e.clear();for(var c=e._level,l=e._root,p=0;0>s+p;)l=new hn(l&&l.array.length?[void 0,l]:[],o),c+=cr,p+=1<=1<h?bn(e,u-1):h>f?new hn([],o):d;if(d&&h>f&&a>s&&d.array.length){l=_n(l,o);for(var m=l,g=c;g>cr;g-=cr){var y=f>>>g≺m=m.array[y]=_n(m.array[y],o)}m.array[f>>>cr&pr]=d}if(a>u&&(v=v&&v.removeAfter(o,0,u)),s>=h)s-=h,u-=h,c=cr,l=null,v=v&&v.removeBefore(o,0,s);else if(s>i||f>h){for(p=0;l;){var _=s>>>c≺if(_!==h>>>c&pr)break;_&&(p+=(1<i&&(l=l.removeBefore(o,c,s-p)),l&&f>h&&(l=l.removeAfter(o,c,h-p)),p&&(s-=p,u-=p)}return e.__ownerID?(e.size=u-s,e._origin=s,e._capacity=u,e._level=c,e._root=l,e._tail=v,e.__hash=void 0,e.__altered=!0,e):vn(s,u,c,l,v)}function Rn(e,t,n){for(var r=[],o=0,i=0;io&&(o=s.size),m(a)||(s=s.map(function(e){return J(e)})),r.push(s)}return o>e.size&&(e=e.setSize(o)),on(e,t,r)}function En(e){return lr>e?0:e-1>>>cr<=lr&&a.size>=2*i.size?(o=a.filter(function(e,t){return void 0!==e&&s!==t}),r=o.toKeyedSeq().map(function(e){return e[0]}).flip().toMap(),e.__ownerID&&(r.__ownerID=o.__ownerID=e.__ownerID)):(r=i.remove(t),o=s===a.size-1?a.pop():a.set(s,void 0))}else if(u){if(n===a.get(s)[1])return e;r=i,o=a.set(s,[t,n])}else r=i.set(t,a.size),o=a.set(a.size,[t,n]);return e.__ownerID?(e.size=r.size,e._map=r,e._list=o,e.__hash=void 0,e):Cn(r,o)}function In(e){return null===e||void 0===e?Dn():Pn(e)?e:Dn().unshiftAll(e) -}function Pn(e){return!(!e||!e[Xr])}function Nn(e,t,n,r){var o=Object.create(Jr);return o.size=e,o._head=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Dn(){return Qr||(Qr=Nn(0))}function Mn(e){return null===e||void 0===e?Ln():An(e)&&!b(e)?e:Ln().withMutations(function(t){var n=v(e);st(n.size),n.forEach(function(e){return t.add(e)})})}function An(e){return!(!e||!e[$r])}function kn(e,t){return e.__ownerID?(e.size=t.size,e._map=t,e):t===e._map?e:0===t.size?e.__empty():e.__make(t)}function jn(e,t){var n=Object.create(Zr);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Ln(){return eo||(eo=jn(Kt()))}function Vn(e){return null===e||void 0===e?Hn():Fn(e)?e:Hn().withMutations(function(t){var n=v(e);st(n.size),n.forEach(function(e){return t.add(e)})})}function Fn(e){return An(e)&&b(e)}function Bn(e,t){var n=Object.create(to);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Hn(){return no||(no=Bn(On()))}function Un(e,t){var n,r=function(i){if(i instanceof r)return i;if(!(this instanceof r))return new r(i);if(!n){n=!0;var a=Object.keys(e);Gn(o,a),o.size=a.length,o._name=t,o._keys=a,o._defaultValues=e}this._map=Lt(i)},o=r.prototype=Object.create(ro);return o.constructor=r,r}function qn(e,t,n){var r=Object.create(Object.getPrototypeOf(e));return r._map=t,r.__ownerID=n,r}function zn(e){return e._name||e.constructor.name||"Record"}function Gn(e,t){try{t.forEach(Wn.bind(void 0,e))}catch(n){}}function Wn(e,t){Object.defineProperty(e,t,{get:function(){return this.get(t)},set:function(e){at(this.__ownerID,"Cannot set on an immutable record."),this.set(t,e)}})}function Yn(e,t){if(e===t)return!0;if(!m(t)||void 0!==e.size&&void 0!==t.size&&e.size!==t.size||void 0!==e.__hash&&void 0!==t.__hash&&e.__hash!==t.__hash||g(e)!==g(t)||y(e)!==y(t)||b(e)!==b(t))return!1;if(0===e.size&&0===t.size)return!0;var n=!_(e);if(b(e)){var r=e.entries();return t.every(function(e,t){var o=r.next().value;return o&&X(o[1],e)&&(n||X(o[0],t))})&&r.next().done}var o=!1;if(void 0===e.size)if(void 0===t.size)"function"==typeof e.cacheResult&&e.cacheResult();else{o=!0;var i=e;e=t,t=i}var a=!0,s=t.__iterate(function(t,r){return(n?e.has(t):o?X(t,e.get(r,fr)):X(e.get(r,fr),t))?void 0:(a=!1,!1)});return a&&e.size===s}function Kn(e,t,n){if(!(this instanceof Kn))return new Kn(e,t,n);if(at(0!==n,"Cannot step a Range by 0"),e=e||0,void 0===t&&(t=1/0),n=void 0===n?1:Math.abs(n),e>t&&(n=-n),this._start=e,this._end=t,this._step=n,this.size=Math.max(0,Math.ceil((t-e)/n-1)+1),0===this.size){if(oo)return oo;oo=this}}function Xn(e,t){if(!(this instanceof Xn))return new Xn(e,t);if(this._value=e,this.size=void 0===t?1/0:Math.max(0,t),0===this.size){if(io)return io;io=this}}function Jn(e,t){var n=function(n){e.prototype[n]=t[n]};return Object.keys(t).forEach(n),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(t).forEach(n),e}function Qn(e,t){return t}function $n(e,t){return[t,e]}function Zn(e){return function(){return!e.apply(this,arguments)}}function er(e){return function(){return-e.apply(this,arguments)}}function tr(e){return"string"==typeof e?JSON.stringify(e):e}function nr(){return o(arguments)}function rr(e,t){return t>e?1:e>t?-1:0}function or(e){if(1/0===e.size)return 0;var t=b(e),n=g(e),r=t?1:0,o=e.__iterate(n?t?function(e,t){r=31*r+ar(tt(e),tt(t))|0}:function(e,t){r=r+ar(tt(e),tt(t))|0}:t?function(e){r=31*r+tt(e)|0}:function(e){r=r+tt(e)|0});return ir(o,r)}function ir(e,t){return t=xr(t,3432918353),t=xr(t<<15|t>>>-15,461845907),t=xr(t<<13|t>>>-13,5),t=(t+3864292196|0)^e,t=xr(t^t>>>16,2246822507),t=xr(t^t>>>13,3266489909),t=et(t^t>>>16)}function ar(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}var sr=Array.prototype.slice,ur="delete",cr=5,lr=1<=o;o++)if(e(n[t?r-o:o],o,this)===!1)return o+1;return o},M.prototype.__iterator=function(e,t){var n=this._array,r=n.length-1,o=0;return new S(function(){return o>r?E():R(e,o,n[t?r-o++:o++])})},e(A,P),A.prototype.get=function(e,t){return void 0===t||this.has(e)?this._object[e]:t},A.prototype.has=function(e){return this._object.hasOwnProperty(e)},A.prototype.__iterate=function(e,t){for(var n=this._object,r=this._keys,o=r.length-1,i=0;o>=i;i++){var a=r[t?o-i:i];if(e(n[a],a,this)===!1)return i+1}return i},A.prototype.__iterator=function(e,t){var n=this._object,r=this._keys,o=r.length-1,i=0;return new S(function(){var a=r[t?o-i:i];return i++>o?E():R(e,a,n[a])})},A.prototype[yr]=!0,e(k,N),k.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);var n=this._iterable,r=C(n),o=0;if(T(r))for(var i;!(i=r.next()).done&&e(i.value,o++,this)!==!1;);return o},k.prototype.__iteratorUncached=function(e,t){if(t)return this.cacheResult().__iterator(e,t);var n=this._iterable,r=C(n);if(!T(r))return new S(E);var o=0;return new S(function(){var t=r.next();return t.done?t:R(e,o++,t.value)})},e(j,N),j.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);for(var n=this._iterator,r=this._iteratorCache,o=0;o=r.length){var t=n.next();if(t.done)return t;r[o]=t.value}return R(e,o,r[o++])})};var Cr;e(G,f),e(W,G),e(Y,G),e(K,G),G.Keyed=W,G.Indexed=Y,G.Set=K;var Or,xr="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(e,t){e=0|e,t=0|t;var n=65535&e,r=65535&t;return n*r+((e>>>16)*r+n*(t>>>16)<<16>>>0)|0},Ir=Object.isExtensible,Pr=function(){try{return Object.defineProperty({},"@",{}),!0}catch(e){return!1}}(),Nr="function"==typeof WeakMap;Nr&&(Or=new WeakMap);var Dr=0,Mr="__immutablehash__";"function"==typeof Symbol&&(Mr=Symbol(Mr));var Ar=16,kr=255,jr=0,Lr={};e(ut,P),ut.prototype.get=function(e,t){return this._iter.get(e,t)},ut.prototype.has=function(e){return this._iter.has(e)},ut.prototype.valueSeq=function(){return this._iter.valueSeq()},ut.prototype.reverse=function(){var e=this,t=dt(this,!0);return this._useKeys||(t.valueSeq=function(){return e._iter.toSeq().reverse()}),t},ut.prototype.map=function(e,t){var n=this,r=ht(this,e,t);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(e,t)}),r},ut.prototype.__iterate=function(e,t){var n,r=this;return this._iter.__iterate(this._useKeys?function(t,n){return e(t,n,r)}:(n=t?Nt(this):0,function(o){return e(o,t?--n:n++,r)}),t)},ut.prototype.__iterator=function(e,t){if(this._useKeys)return this._iter.__iterator(e,t);var n=this._iter.__iterator(br,t),r=t?Nt(this):0;return new S(function(){var o=n.next();return o.done?o:R(e,t?--r:r++,o.value,o)})},ut.prototype[yr]=!0,e(ct,N),ct.prototype.includes=function(e){return this._iter.includes(e)},ct.prototype.__iterate=function(e,t){var n=this,r=0;return this._iter.__iterate(function(t){return e(t,r++,n)},t)},ct.prototype.__iterator=function(e,t){var n=this._iter.__iterator(br,t),r=0;return new S(function(){var t=n.next();return t.done?t:R(e,r++,t.value,t)})},e(lt,D),lt.prototype.has=function(e){return this._iter.includes(e)},lt.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){return e(t,t,n)},t)},lt.prototype.__iterator=function(e,t){var n=this._iter.__iterator(br,t);return new S(function(){var t=n.next();return t.done?t:R(e,t.value,t.value,t)})},e(pt,P),pt.prototype.entrySeq=function(){return this._iter.toSeq()},pt.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){if(t){Pt(t);var r=m(t);return e(r?t.get(1):t[1],r?t.get(0):t[0],n)}},t)},pt.prototype.__iterator=function(e,t){var n=this._iter.__iterator(br,t);return new S(function(){for(;;){var t=n.next();if(t.done)return t;var r=t.value;if(r){Pt(r);var o=m(r);return R(e,o?r.get(0):r[0],o?r.get(1):r[1],t)}}})},ct.prototype.cacheResult=ut.prototype.cacheResult=lt.prototype.cacheResult=pt.prototype.cacheResult=At,e(Lt,W),Lt.prototype.toString=function(){return this.__toString("Map {","}")},Lt.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},Lt.prototype.set=function(e,t){return Xt(this,e,t)},Lt.prototype.setIn=function(e,t){return this.updateIn(e,fr,function(){return t})},Lt.prototype.remove=function(e){return Xt(this,e,fr)},Lt.prototype.deleteIn=function(e){return this.updateIn(e,function(){return fr})},Lt.prototype.update=function(e,t,n){return 1===arguments.length?e(this):this.updateIn([e],t,n)},Lt.prototype.updateIn=function(e,t,n){n||(n=t,t=void 0);var r=an(this,jt(e),t,n);return r===fr?void 0:r},Lt.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Kt()},Lt.prototype.merge=function(){return nn(this,void 0,arguments)},Lt.prototype.mergeWith=function(e){var t=sr.call(arguments,1);return nn(this,e,t)},Lt.prototype.mergeIn=function(e){var t=sr.call(arguments,1);return this.updateIn(e,Kt(),function(e){return"function"==typeof e.merge?e.merge.apply(e,t):t[t.length-1]})},Lt.prototype.mergeDeep=function(){return nn(this,rn(void 0),arguments)},Lt.prototype.mergeDeepWith=function(e){var t=sr.call(arguments,1);return nn(this,rn(e),t)},Lt.prototype.mergeDeepIn=function(e){var t=sr.call(arguments,1);return this.updateIn(e,Kt(),function(e){return"function"==typeof e.mergeDeep?e.mergeDeep.apply(e,t):t[t.length-1]})},Lt.prototype.sort=function(e){return wn(Tt(this,e))},Lt.prototype.sortBy=function(e,t){return wn(Tt(this,t,e))},Lt.prototype.withMutations=function(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this},Lt.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new r)},Lt.prototype.asImmutable=function(){return this.__ensureOwner()},Lt.prototype.wasAltered=function(){return this.__altered},Lt.prototype.__iterator=function(e,t){return new zt(this,e,t)},Lt.prototype.__iterate=function(e,t){var n=this,r=0;return this._root&&this._root.iterate(function(t){return r++,e(t[1],t[0],n)},t),r},Lt.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Yt(this.size,this._root,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},Lt.isMap=Vt;var Vr="@@__IMMUTABLE_MAP__@@",Fr=Lt.prototype;Fr[Vr]=!0,Fr[ur]=Fr.remove,Fr.removeIn=Fr.deleteIn,Ft.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(X(n,o[i][0]))return o[i][1];return r},Ft.prototype.update=function(e,t,r,i,a,s,u){for(var c=a===fr,l=this.entries,p=0,f=l.length;f>p&&!X(i,l[p][0]);p++);var h=f>p;if(h?l[p][1]===a:c)return this;if(n(u),(c||!h)&&n(s),!c||1!==l.length){if(!h&&!c&&l.length>=Hr)return Zt(e,l,i,a);var d=e&&e===this.ownerID,v=d?l:o(l);return h?c?p===f-1?v.pop():v[p]=v.pop():v[p]=[i,a]:v.push([i,a]),d?(this.entries=v,this):new Ft(e,v)}},Bt.prototype.get=function(e,t,n,r){void 0===t&&(t=tt(n));var o=1<<((0===e?t:t>>>e)&pr),i=this.bitmap;return 0===(i&o)?r:this.nodes[sn(i&o-1)].get(e+cr,t,n,r)},Bt.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=tt(r));var s=(0===t?n:n>>>t)&pr,u=1<=Ur)return tn(e,f,c,s,d);if(l&&!d&&2===f.length&&Qt(f[1^p]))return f[1^p];if(l&&d&&1===f.length&&Qt(d))return d;var v=e&&e===this.ownerID,m=l?d?c:c^u:c|u,g=l?d?un(f,p,d,v):ln(f,p,v):cn(f,p,d,v);return v?(this.bitmap=m,this.nodes=g,this):new Bt(e,m,g)},Ht.prototype.get=function(e,t,n,r){void 0===t&&(t=tt(n));var o=(0===e?t:t>>>e)&pr,i=this.nodes[o];return i?i.get(e+cr,t,n,r):r},Ht.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=tt(r));var s=(0===t?n:n>>>t)&pr,u=o===fr,c=this.nodes,l=c[s];if(u&&!l)return this;var p=Jt(l,e,t+cr,n,r,o,i,a);if(p===l)return this;var f=this.count;if(l){if(!p&&(f--,qr>f))return en(e,c,f,s)}else f++;var h=e&&e===this.ownerID,d=un(c,s,p,h);return h?(this.count=f,this.nodes=d,this):new Ht(e,f,d)},Ut.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(X(n,o[i][0]))return o[i][1];return r},Ut.prototype.update=function(e,t,r,i,a,s,u){void 0===r&&(r=tt(i));var c=a===fr;if(r!==this.keyHash)return c?this:(n(u),n(s),$t(this,e,t,r,[i,a]));for(var l=this.entries,p=0,f=l.length;f>p&&!X(i,l[p][0]);p++);var h=f>p;if(h?l[p][1]===a:c)return this;if(n(u),(c||!h)&&n(s),c&&2===f)return new qt(e,this.keyHash,l[1^p]);var d=e&&e===this.ownerID,v=d?l:o(l);return h?c?p===f-1?v.pop():v[p]=v.pop():v[p]=[i,a]:v.push([i,a]),d?(this.entries=v,this):new Ut(e,this.keyHash,v)},qt.prototype.get=function(e,t,n,r){return X(n,this.entry[0])?this.entry[1]:r},qt.prototype.update=function(e,t,r,o,i,a,s){var u=i===fr,c=X(o,this.entry[0]);return(c?i===this.entry[1]:u)?this:(n(s),u?void n(a):c?e&&e===this.ownerID?(this.entry[1]=i,this):new qt(e,this.keyHash,[o,i]):(n(a),$t(this,e,t,tt(o),[o,i])))},Ft.prototype.iterate=Ut.prototype.iterate=function(e,t){for(var n=this.entries,r=0,o=n.length-1;o>=r;r++)if(e(n[t?o-r:r])===!1)return!1},Bt.prototype.iterate=Ht.prototype.iterate=function(e,t){for(var n=this.nodes,r=0,o=n.length-1;o>=r;r++){var i=n[t?o-r:r];if(i&&i.iterate(e,t)===!1)return!1}},qt.prototype.iterate=function(e){return e(this.entry)},e(zt,S),zt.prototype.next=function(){for(var e=this._type,t=this._stack;t;){var n,r=t.node,o=t.index++;if(r.entry){if(0===o)return Gt(e,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=o)return Gt(e,r.entries[this._reverse?n-o:o])}else if(n=r.nodes.length-1,n>=o){var i=r.nodes[this._reverse?n-o:o];if(i){if(i.entry)return Gt(e,i.entry);t=this._stack=Wt(i,t)}continue}t=this._stack=this._stack.__prev}return E()};var Br,Hr=lr/4,Ur=lr/2,qr=lr/4;e(pn,Y),pn.of=function(){return this(arguments)},pn.prototype.toString=function(){return this.__toString("List [","]")},pn.prototype.get=function(e,t){if(e=a(this,e),e>=0&&e>>t≺if(r>=this.array.length)return new hn([],e);var o,i=0===r;if(t>0){var a=this.array[r];if(o=a&&a.removeBefore(e,t-cr,n),o===a&&i)return this}if(i&&!o)return this;var s=_n(this,e);if(!i)for(var u=0;r>u;u++)s.array[u]=void 0;return o&&(s.array[r]=o),s},hn.prototype.removeAfter=function(e,t,n){if(n===(t?1<>>t≺if(r>=this.array.length)return this;var o;if(t>0){var i=this.array[r];if(o=i&&i.removeAfter(e,t-cr,n),o===i&&r===this.array.length-1)return this}var a=_n(this,e);return a.array.splice(r+1),o&&(a.array[r]=o),a};var Wr,Yr={};e(wn,Lt),wn.of=function(){return this(arguments)},wn.prototype.toString=function(){return this.__toString("OrderedMap {","}")},wn.prototype.get=function(e,t){var n=this._map.get(e);return void 0!==n?this._list.get(n)[1]:t},wn.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):On()},wn.prototype.set=function(e,t){return xn(this,e,t)},wn.prototype.remove=function(e){return xn(this,e,fr)},wn.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},wn.prototype.__iterate=function(e,t){var n=this;return this._list.__iterate(function(t){return t&&e(t[1],t[0],n)},t)},wn.prototype.__iterator=function(e,t){return this._list.fromEntrySeq().__iterator(e,t)},wn.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map.__ensureOwner(e),n=this._list.__ensureOwner(e);return e?Cn(t,n,e,this.__hash):(this.__ownerID=e,this._map=t,this._list=n,this)},wn.isOrderedMap=Tn,wn.prototype[yr]=!0,wn.prototype[ur]=wn.prototype.remove;var Kr;e(In,Y),In.of=function(){return this(arguments)},In.prototype.toString=function(){return this.__toString("Stack [","]")},In.prototype.get=function(e,t){var n=this._head;for(e=a(this,e);n&&e--;)n=n.next;return n?n.value:t},In.prototype.peek=function(){return this._head&&this._head.value},In.prototype.push=function(){if(0===arguments.length)return this;for(var e=this.size+arguments.length,t=this._head,n=arguments.length-1;n>=0;n--)t={value:arguments[n],next:t};return this.__ownerID?(this.size=e,this._head=t,this.__hash=void 0,this.__altered=!0,this):Nn(e,t)},In.prototype.pushAll=function(e){if(e=d(e),0===e.size)return this;st(e.size);var t=this.size,n=this._head;return e.reverse().forEach(function(e){t++,n={value:e,next:n}}),this.__ownerID?(this.size=t,this._head=n,this.__hash=void 0,this.__altered=!0,this):Nn(t,n)},In.prototype.pop=function(){return this.slice(1)},In.prototype.unshift=function(){return this.push.apply(this,arguments)},In.prototype.unshiftAll=function(e){return this.pushAll(e)},In.prototype.shift=function(){return this.pop.apply(this,arguments)},In.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Dn()},In.prototype.slice=function(e,t){if(u(e,t,this.size))return this;var n=c(e,this.size),r=l(t,this.size);if(r!==this.size)return Y.prototype.slice.call(this,e,t);for(var o=this.size-n,i=this._head;n--;)i=i.next;return this.__ownerID?(this.size=o,this._head=i,this.__hash=void 0,this.__altered=!0,this):Nn(o,i)},In.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Nn(this.size,this._head,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},In.prototype.__iterate=function(e,t){if(t)return this.reverse().__iterate(e);for(var n=0,r=this._head;r&&e(r.value,n++,this)!==!1;)r=r.next;return n},In.prototype.__iterator=function(e,t){if(t)return this.reverse().__iterator(e);var n=0,r=this._head;return new S(function(){if(r){var t=r.value;return r=r.next,R(e,n++,t)}return E()})},In.isStack=Pn;var Xr="@@__IMMUTABLE_STACK__@@",Jr=In.prototype;Jr[Xr]=!0,Jr.withMutations=Fr.withMutations,Jr.asMutable=Fr.asMutable,Jr.asImmutable=Fr.asImmutable,Jr.wasAltered=Fr.wasAltered;var Qr;e(Mn,K),Mn.of=function(){return this(arguments)},Mn.fromKeys=function(e){return this(h(e).keySeq())},Mn.prototype.toString=function(){return this.__toString("Set {","}")},Mn.prototype.has=function(e){return this._map.has(e)},Mn.prototype.add=function(e){return kn(this,this._map.set(e,!0))},Mn.prototype.remove=function(e){return kn(this,this._map.remove(e))},Mn.prototype.clear=function(){return kn(this,this._map.clear())},Mn.prototype.union=function(){var e=sr.call(arguments,0);return e=e.filter(function(e){return 0!==e.size}),0===e.length?this:0!==this.size||this.__ownerID||1!==e.length?this.withMutations(function(t){for(var n=0;n1?" by "+this._step:"")+" ]"},Kn.prototype.get=function(e,t){return this.has(e)?this._start+a(this,e)*this._step:t},Kn.prototype.includes=function(e){var t=(e-this._start)/this._step;return t>=0&&t=t?new Kn(0,0):new Kn(this.get(e,this._end),this.get(t,this._end),this._step))},Kn.prototype.indexOf=function(e){var t=e-this._start;if(t%this._step===0){var n=t/this._step;if(n>=0&&n=i;i++){if(e(o,i,this)===!1)return i+1;o+=t?-r:r}return i},Kn.prototype.__iterator=function(e,t){var n=this.size-1,r=this._step,o=t?this._start+n*r:this._start,i=0;return new S(function(){var a=o;return o+=t?-r:r,i>n?E():R(e,i++,a)})},Kn.prototype.equals=function(e){return e instanceof Kn?this._start===e._start&&this._end===e._end&&this._step===e._step:Yn(this,e)};var oo;e(Xn,N),Xn.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Xn.prototype.get=function(e,t){return this.has(e)?this._value:t},Xn.prototype.includes=function(e){return X(this._value,e)},Xn.prototype.slice=function(e,t){var n=this.size;return u(e,t,n)?this:new Xn(this._value,l(t,n)-c(e,n))},Xn.prototype.reverse=function(){return this},Xn.prototype.indexOf=function(e){return X(this._value,e)?0:-1},Xn.prototype.lastIndexOf=function(e){return X(this._value,e)?this.size:-1},Xn.prototype.__iterate=function(e){for(var t=0;tC;C++){var O=h*C+l;E[C]={Crumb:a(g,{left:O}),Icon:a(y,{opacity:v}),Separator:a(_,{opacity:1}),Title:a(b,{left:O,opacity:0}),RightItem:a(R,{opacity:0})},w[C]={Crumb:a(g,{left:O}),Icon:a(y,{opacity:1}),Separator:a(_,{opacity:0}),Title:a(b,{left:O+p,opacity:1}),RightItem:a(R,{opacity:1})};var x=s-100;T[C]={Crumb:a(g,{left:x}),Icon:a(y,{opacity:0}),Separator:a(_,{opacity:0}),Title:a(b,{left:x+p,opacity:0}),RightItem:a(R,{opacity:0})}}w[0]={Crumb:a(g,{left:s/4}),Icon:a(y,{opacity:0}),Separator:a(_,{opacity:0}),Title:a(S,{opacity:1}),RightItem:w[0].RightItem},E[0].Title=a(S,{left:-s/4,opacity:0}),T[0].Title=a(S,{opacity:0});var I=function(e,t){return{Crumb:i({left:{type:"linear",from:e.Crumb.left,to:t.Crumb.left,min:0,max:1,extrapolate:!0}}),Icon:i({opacity:{type:"linear",from:e.Icon.opacity,to:t.Icon.opacity,min:0,max:1}}),Separator:i({opacity:{type:"linear",from:e.Separator.opacity,to:t.Separator.opacity,min:0,max:1}}),Title:i({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),RightItem:i({opacity:{type:"linear",from:e.RightItem.opacity,to:t.RightItem.opacity,min:0,max:1,round:d}})}},P=w.map(function(e,t){return{RightToCenter:I(T[t],w[t]),CenterToLeft:I(w[t],E[t]),RightToLeft:I(T[t],E[t])}});n.exports={Interpolators:P,Left:E,Center:w,Right:T,IconWidth:p,IconHeight:c,SeparatorWidth:f,SeparatorHeight:c}}),__d("NavigatorNavigationBarStyles",["Dimensions","buildStyleInterpolator","merge"],function(e,t,n){"use strict";function r(e,t){return{Title:i({opacity:{type:"linear",from:e.Title.opacity,to:t.Title.opacity,min:0,max:1},left:{type:"linear",from:e.Title.left,to:t.Title.left,min:0,max:1,extrapolate:!0}}),LeftButton:i({opacity:{type:"linear",from:e.LeftButton.opacity,to:t.LeftButton.opacity,min:0,max:1,round:h},left:{type:"linear",from:e.LeftButton.left,to:t.LeftButton.left,min:0,max:1}}),RightButton:i({opacity:{type:"linear",from:e.RightButton.opacity,to:t.RightButton.opacity,min:0,max:1,round:h},left:{type:"linear",from:e.RightButton.left,to:t.RightButton.left,min:0,max:1,extrapolate:!0}})}}var o=t("Dimensions"),i=t("buildStyleInterpolator"),a=t("merge"),s=o.get("window").width,u=44,c=20,l=u+c,p={Title:{position:"absolute",top:c,left:0,alignItems:"center",width:s,height:u,backgroundColor:"transparent"},LeftButton:{position:"absolute",top:c,left:0,overflow:"hidden",opacity:1,width:s/3,height:u,backgroundColor:"transparent"},RightButton:{position:"absolute",top:c,left:2*s/3,overflow:"hidden",opacity:1,alignItems:"flex-end",width:s/3,height:u,backgroundColor:"transparent"}},f={Left:{Title:a(p.Title,{left:-s/2,opacity:0}),LeftButton:a(p.LeftButton,{left:-s/3,opacity:1}),RightButton:a(p.RightButton,{left:s/3,opacity:0})},Center:{Title:a(p.Title,{left:0,opacity:1}),LeftButton:a(p.LeftButton,{left:0,opacity:1}),RightButton:a(p.RightButton,{left:2*s/3-0,opacity:1})},Right:{Title:a(p.Title,{left:s/2,opacity:0}),LeftButton:a(p.LeftButton,{left:0,opacity:0}),RightButton:a(p.RightButton,{left:s,opacity:0})}},h=100,d={RightToCenter:r(f.Right,f.Center),CenterToLeft:r(f.Center,f.Left),RightToLeft:r(f.Right,f.Left)};n.exports={General:{NavBarHeight:u,StatusBarHeight:c,TotalNavHeight:l},Interpolators:d,Stages:f}}),__d("buildStyleInterpolator",["keyOf"],function(e,t,n){for(var r=t("keyOf"),o=r({x:null}),i=r({y:null}),a=r({z:null}),s=r({w:null}),u=r({transformRotateRadians:null}),c={transformRotateRadians:!0,transformScale:!0,transformTranslate:!0},l={transformRotateRadians:[0,0,0,1],transformTranslate:[0,0,0],transformScale:[1,1,1]},p=/([^\s,]+)/g,f=function(e,t){var n=e.toString(),r=n.slice(n.indexOf("(")+1,n.indexOf(")")).match(p)||[],o=r.map(function(e){return"\\b"+e+"\\b"}).join("|"),i=new RegExp(o,"g"),a=n.substring(n.indexOf("{")+1,n.lastIndexOf("}")),s=a.replace(i,function(e){var n=r.indexOf(e),o=t[n];return o});return s.split("\n")},h={unroll:function(e,t,n,r,o,i,a,s,u,c,l,p,f,h,d,v,m){t=e[0],n=e[1],r=e[2],o=e[3],i=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],p=e[10],f=e[11],h=e[12],d=e[13],v=e[14],m=e[15]},matrixDiffers:function(e,t,n,r,o,i,a,s,u,c,l,p,f,h,d,v,m,g){e=e||n!==t[0]||r!==t[1]||o!==t[2]||i!==t[3]||a!==t[4]||s!==t[5]||u!==t[6]||c!==t[7]||l!==t[8]||p!==t[9]||f!==t[10]||h!==t[11]||d!==t[12]||v!==t[13]||m!==t[14]||g!==t[15]},transformScale:function(e,t){var n=t[0],r=t[1],o=t[2];e[0]=e[0]*n,e[1]=e[1]*n,e[2]=e[2]*n,e[3]=e[3]*n,e[4]=e[4]*r,e[5]=e[5]*r,e[6]=e[6]*r,e[7]=e[7]*r,e[8]=e[8]*o,e[9]=e[9]*o,e[10]=e[10]*o,e[11]=e[11]*o,e[12]=e[12],e[13]=e[13],e[14]=e[14],e[15]=e[15]},transformTranslate:function(e,t){var n=t[0],r=t[1],o=t[2];e[12]=e[0]*n+e[4]*r+e[8]*o+e[12],e[13]=e[1]*n+e[5]*r+e[9]*o+e[13],e[14]=e[2]*n+e[6]*r+e[10]*o+e[14],e[15]=e[3]*n+e[7]*r+e[11]*o+e[15]},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,f=r*s,h=r*u,d=o*u,v=i*a,m=i*s,g=i*u,y=1-(f+d),_=l+g,b=p-m,S=l-g,R=1-(c+d),E=h+v,w=p+m,T=h-v,C=1-(c+f),O=e[0],x=e[1],I=e[2],P=e[3],N=e[4],D=e[5],M=e[6],k=e[7],A=e[8],j=e[9],L=e[10],V=e[11],F=y,B=_,H=b;e[0]=F*O+B*N+H*A,e[1]=F*x+B*D+H*j,e[2]=F*I+B*M+H*L,e[3]=F*P+B*k+H*V,F=S,B=R,H=E,e[4]=F*O+B*N+H*A,e[5]=F*x+B*D+H*j,e[6]=F*I+B*M+H*L,e[7]=F*P+B*k+H*V,F=w,B=T,H=C,e[8]=F*O+B*N+H*A,e[9]=F*x+B*D+H*j,e[10]=F*I+B*M+H*L,e[11]=F*P+B*k+H*V}},d={transformScale:function(e,t){e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1},transformTranslate:function(e,t){e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1},transformRotateRadians:function(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=n+n,s=r+r,u=o+o,c=n*a,l=n*s,p=n*u,f=r*s,h=r*u,d=o*u,v=i*a,m=i*s,g=i*u,y=1-(f+d),_=l+g,b=p-m,S=l-g,R=1-(c+d),E=h+v,w=p+m,T=h-v,C=1-(c+f),O=y,x=_,I=b;e[0]=O,e[1]=x,e[2]=I,e[3]=0,O=S,x=R,I=E,e[4]=O,e[5]=x,e[6]=I,e[7]=0,O=w,x=T,I=C,e[8]=O,e[9]=x,e[10]=I,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1}},v=function(e,t){return" if (!didChange) {\n var prevVal = result."+e+";\n result."+e+" = "+t+";\n didChange = didChange || ("+t+" !== prevVal);\n } else {\n result."+e+" = "+t+";\n }\n"},m=(function(e,t,n,r){var o="round"in e,i=e.round,a=" ratio = (value - "+e.min+") / "+(e.max-e.min)+";\n";e.extrapolate||(a+=" ratio = ratio > 1 ? 1 : (ratio < 0 ? 0 : ratio);\n");var s=o?"Math.round("+i+" * ":"",u=o?") / "+i:"";return a+=" "+r+" = "+s+"("+t+" * (1 - ratio) + "+n+" * ratio)"+u+";\n"}),g=function(e){return m(e,e.from,e.to,"nextScalarVal")},y=function(e){var t=JSON.stringify(e.value);return" nextScalarVal = "+t+";\n"},_=function(e){return" nextScalarVal = value >= "+(e.threshold+" ? "+e.to+" : "+e.from)+";\n"},b=function(){return" nextScalarVal = value;\n"},S=function(e){return e+"ReuseOp"},R=function(e){var t="";for(var n in e)c[n]&&(t+="var "+S(n)+" = [];\n");return t},E=function(e){return"\n"+e.join("\n")+"\n"},w=function(e,t,n,r){var o=S(t)+"["+r+"]";return void 0!==e.from[n]&&void 0!==e.to[n]?" "+e.from[n]!==e.to[n]?m(e,e.from[n],e.to[n],o):o+" = "+e.from[n]+";":" "+o+" = "+l[t][r]+";"},T=[],C=0;16>C;C++)T.push("m"+C);var O=function(e){var t=[" var transformMatrix = result.transformMatrix !== undefined ? result.transformMatrix : (result.transformMatrix = []);"];t.push.apply(t,f(h.unroll,["transformMatrix"].concat(T)));for(var n=0;no;o++)r[o]=e[o+t];return r}function i(e){return void 0===e.size&&(e.size=e.__iterate(s)),e.size}function a(e,t){if("number"!=typeof t){var n=+t;if(""+n!==t)return 0/0;t=n}return 0>t?i(e)+t:t}function s(){return!0}function u(e,t,n){return(0===e||void 0!==n&&-n>=e)&&(void 0===t||void 0!==n&&t>=n)}function c(e,t){return p(e,t,0)}function l(e,t){return p(e,t,t)}function p(e,t,n){return void 0===e?n:0>e?Math.max(0,t+e):void 0===t?e:Math.min(t,e)}function f(e){return m(e)?e:I(e)}function h(e){return g(e)?e:P(e)}function d(e){return y(e)?e:N(e)}function v(e){return m(e)&&!_(e)?e:D(e)}function m(e){return!(!e||!e[vr])}function g(e){return!(!e||!e[mr])}function y(e){return!(!e||!e[gr])}function _(e){return g(e)||y(e)}function b(e){return!(!e||!e[yr])}function S(e){this.next=e}function R(e,t,n,r){var o=0===e?t:1===e?n:[t,n];return r?r.value=o:r={value:o,done:!1},r}function E(){return{value:void 0,done:!0}}function w(e){return!!O(e)}function T(e){return e&&"function"==typeof e.next}function C(e){var t=O(e);return t&&t.call(e)}function O(e){var t=e&&(Rr&&e[Rr]||e[Er]);return"function"==typeof t?t:void 0}function x(e){return e&&"number"==typeof e.length}function I(e){return null===e||void 0===e?V():m(e)?e.toSeq():H(e)}function P(e){return null===e||void 0===e?V().toKeyedSeq():m(e)?g(e)?e.toSeq():e.fromEntrySeq():F(e)}function N(e){return null===e||void 0===e?V():m(e)?g(e)?e.entrySeq():e.toIndexedSeq():B(e)}function D(e){return(null===e||void 0===e?V():m(e)?g(e)?e.entrySeq():e:B(e)).toSetSeq()}function M(e){this._array=e,this.size=e.length}function k(e){var t=Object.keys(e);this._object=e,this._keys=t,this.size=t.length}function A(e){this._iterable=e,this.size=e.length||e.size}function j(e){this._iterator=e,this._iteratorCache=[]}function L(e){return!(!e||!e[Tr])}function V(){return Cr||(Cr=new M([]))}function F(e){var t=Array.isArray(e)?new M(e).fromEntrySeq():T(e)?new j(e).fromEntrySeq():w(e)?new A(e).fromEntrySeq():"object"==typeof e?new k(e):void 0;if(!t)throw new TypeError("Expected Array or iterable object of [k, v] entries, or keyed object: "+e);return t}function B(e){var t=U(e);if(!t)throw new TypeError("Expected Array or iterable object of values: "+e);return t}function H(e){var t=U(e)||"object"==typeof e&&new k(e);if(!t)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+e);return t}function U(e){return x(e)?new M(e):T(e)?new j(e):w(e)?new A(e):void 0}function q(e,t,n,r){var o=e._cache;if(o){for(var i=o.length-1,a=0;i>=a;a++){var s=o[n?i-a:a];if(t(s[1],r?s[0]:a,e)===!1)return a+1}return a}return e.__iterateUncached(t,n)}function z(e,t,n,r){var o=e._cache;if(o){var i=o.length-1,a=0;return new S(function(){var e=o[n?i-a:a];return a++>i?E():R(t,r?e[0]:a-1,e[1])})}return e.__iteratorUncached(t,n)}function G(){throw TypeError("Abstract")}function W(){}function Y(){}function K(){}function X(e,t){if(e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1;if("function"==typeof e.valueOf&&"function"==typeof t.valueOf){if(e=e.valueOf(),t=t.valueOf(),e===t||e!==e&&t!==t)return!0;if(!e||!t)return!1}return"function"==typeof e.equals&&"function"==typeof t.equals&&e.equals(t)?!0:!1}function J(e,t){return t?Q(t,e,"",{"":e}):$(e)}function Q(e,t,n,r){return Array.isArray(t)?e.call(r,n,N(t).map(function(n,r){return Q(e,n,r,t)})):Z(t)?e.call(r,n,P(t).map(function(n,r){return Q(e,n,r,t)})):t}function $(e){return Array.isArray(e)?N(e).map($).toList():Z(e)?P(e).map($).toMap():e}function Z(e){return e&&(e.constructor===Object||void 0===e.constructor)}function et(e){return e>>>1&1073741824|3221225471&e}function tt(e){if(e===!1||null===e||void 0===e)return 0;if("function"==typeof e.valueOf&&(e=e.valueOf(),e===!1||null===e||void 0===e))return 0;if(e===!0)return 1;var t=typeof e;if("number"===t){var n=0|e;for(n!==e&&(n^=4294967295*e);e>4294967295;)e/=4294967295,n^=e;return et(n)}return"string"===t?e.length>kr?nt(e):rt(e):"function"==typeof e.hashCode?e.hashCode():ot(e)}function nt(e){var t=Lr[e];return void 0===t&&(t=rt(e),jr===Ar&&(jr=0,Lr={}),jr++,Lr[e]=t),t}function rt(e){for(var t=0,n=0;n0)switch(e.nodeType){case 1:return e.uniqueID;case 9:return e.documentElement&&e.documentElement.uniqueID}}function at(e,t){if(!e)throw new Error(t)}function st(e){at(1/0!==e,"Cannot perform this action with an infinite size.")}function ut(e,t){this._iter=e,this._useKeys=t,this.size=e.size}function ct(e){this._iter=e,this.size=e.size}function lt(e){this._iter=e,this.size=e.size}function pt(e){this._iter=e,this.size=e.size}function ft(e){var t=Mt(e);return t._iter=e,t.size=e.size,t.flip=function(){return e},t.reverse=function(){var t=e.reverse.apply(this);return t.flip=function(){return e.reverse()},t},t.has=function(t){return e.includes(t)},t.includes=function(t){return e.has(t)},t.cacheResult=kt,t.__iterateUncached=function(t,n){var r=this;return e.__iterate(function(e,n){return t(n,e,r)!==!1},n)},t.__iteratorUncached=function(t,n){if(t===Sr){var r=e.__iterator(t,n);return new S(function(){var e=r.next();if(!e.done){var t=e.value[0];e.value[0]=e.value[1],e.value[1]=t}return e})}return e.__iterator(t===br?_r:br,n)},t}function ht(e,t,n){var r=Mt(e);return r.size=e.size,r.has=function(t){return e.has(t)},r.get=function(r,o){var i=e.get(r,fr);return i===fr?o:t.call(n,i,r,e)},r.__iterateUncached=function(r,o){var i=this;return e.__iterate(function(e,o,a){return r(t.call(n,e,o,a),o,i)!==!1},o)},r.__iteratorUncached=function(r,o){var i=e.__iterator(Sr,o);return new S(function(){var o=i.next();if(o.done)return o;var a=o.value,s=a[0];return R(r,s,t.call(n,a[1],s,e),o)})},r}function dt(e,t){var n=Mt(e);return n._iter=e,n.size=e.size,n.reverse=function(){return e},e.flip&&(n.flip=function(){var t=ft(e);return t.reverse=function(){return e.flip()},t}),n.get=function(n,r){return e.get(t?n:-1-n,r)},n.has=function(n){return e.has(t?n:-1-n)},n.includes=function(t){return e.includes(t)},n.cacheResult=kt,n.__iterate=function(t,n){var r=this;return e.__iterate(function(e,n){return t(e,n,r)},!n)},n.__iterator=function(t,n){return e.__iterator(t,!n)},n}function vt(e,t,n,r){var o=Mt(e);return r&&(o.has=function(r){var o=e.get(r,fr);return o!==fr&&!!t.call(n,o,r,e)},o.get=function(r,o){var i=e.get(r,fr);return i!==fr&&t.call(n,i,r,e)?i:o}),o.__iterateUncached=function(o,i){var a=this,s=0;return e.__iterate(function(e,i,u){return t.call(n,e,i,u)?(s++,o(e,r?i:s-1,a)):void 0},i),s},o.__iteratorUncached=function(o,i){var a=e.__iterator(Sr,i),s=0;return new S(function(){for(;;){var i=a.next();if(i.done)return i;var u=i.value,c=u[0],l=u[1];if(t.call(n,l,c,e))return R(o,r?c:s++,l,i)}})},o}function mt(e,t,n){var r=Lt().asMutable();return e.__iterate(function(o,i){r.update(t.call(n,o,i,e),0,function(e){return e+1})}),r.asImmutable()}function gt(e,t,n){var r=g(e),o=(b(e)?wn():Lt()).asMutable();e.__iterate(function(i,a){o.update(t.call(n,i,a,e),function(e){return e=e||[],e.push(r?[a,i]:i),e})});var i=Dt(e);return o.map(function(t){return It(e,i(t))})}function yt(e,t,n,r){var o=e.size;if(void 0!==t&&(t=0|t),void 0!==n&&(n=0|n),u(t,n,o))return e;var i=c(t,o),s=l(n,o);if(i!==i||s!==s)return yt(e.toSeq().cacheResult(),t,n,r);var p,f=s-i;f===f&&(p=0>f?0:f);var h=Mt(e);return h.size=0===p?p:e.size&&p||void 0,!r&&L(e)&&p>=0&&(h.get=function(t,n){return t=a(this,t),t>=0&&p>t?e.get(t+i,n):n}),h.__iterateUncached=function(t,n){var o=this;if(0===p)return 0;if(n)return this.cacheResult().__iterate(t,n);var a=0,s=!0,u=0;return e.__iterate(function(e,n){return s&&(s=a++p)return E();var e=o.next();return r||t===br?e:t===_r?R(t,s-1,void 0,e):R(t,s-1,e.value[1],e)})},h}function _t(e,t,n){var r=Mt(e);return r.__iterateUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterate(r,o);var a=0;return e.__iterate(function(e,o,s){return t.call(n,e,o,s)&&++a&&r(e,o,i)}),a},r.__iteratorUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterator(r,o);var a=e.__iterator(Sr,o),s=!0;return new S(function(){if(!s)return E();var e=a.next();if(e.done)return e;var o=e.value,u=o[0],c=o[1];return t.call(n,c,u,i)?r===Sr?e:R(r,u,c,e):(s=!1,E())})},r}function bt(e,t,n,r){var o=Mt(e);return o.__iterateUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterate(o,i);var s=!0,u=0;return e.__iterate(function(e,i,c){return s&&(s=t.call(n,e,i,c))?void 0:(u++,o(e,r?i:u-1,a))}),u},o.__iteratorUncached=function(o,i){var a=this;if(i)return this.cacheResult().__iterator(o,i);var s=e.__iterator(Sr,i),u=!0,c=0;return new S(function(){var e,i,l;do{if(e=s.next(),e.done)return r||o===br?e:o===_r?R(o,c++,void 0,e):R(o,c++,e.value[1],e);var p=e.value;i=p[0],l=p[1],u&&(u=t.call(n,l,i,a))}while(u);return o===Sr?e:R(o,i,l,e)})},o}function St(e,t){var n=g(e),r=[e].concat(t).map(function(e){return m(e)?n&&(e=h(e)):e=n?F(e):B(Array.isArray(e)?e:[e]),e}).filter(function(e){return 0!==e.size});if(0===r.length)return e;if(1===r.length){var o=r[0];if(o===e||n&&g(o)||y(e)&&y(o))return o}var i=new M(r);return n?i=i.toKeyedSeq():y(e)||(i=i.toSetSeq()),i=i.flatten(!0),i.size=r.reduce(function(e,t){if(void 0!==e){var n=t.size;if(void 0!==n)return e+n}},0),i}function Rt(e,t,n){var r=Mt(e);return r.__iterateUncached=function(r,o){function i(e,u){var c=this;e.__iterate(function(e,o){return(!t||t>u)&&m(e)?i(e,u+1):r(e,n?o:a++,c)===!1&&(s=!0),!s},o)}var a=0,s=!1;return i(e,0),a},r.__iteratorUncached=function(r,o){var i=e.__iterator(r,o),a=[],s=0;return new S(function(){for(;i;){var e=i.next();if(e.done===!1){var u=e.value;if(r===Sr&&(u=u[1]),t&&!(a.length0}function xt(e,t,n){var r=Mt(e);return r.size=new M(n).map(function(e){return e.size}).min(),r.__iterate=function(e,t){for(var n,r=this.__iterator(br,t),o=0;!(n=r.next()).done&&e(n.value,o++,this)!==!1;);return o},r.__iteratorUncached=function(e,r){var o=n.map(function(e){return e=f(e),C(r?e.reverse():e)}),i=0,a=!1;return new S(function(){var n;return a||(n=o.map(function(e){return e.next()}),a=n.some(function(e){return e.done})),a?E():R(e,i++,t.apply(null,n.map(function(e){return e.value})))})},r}function It(e,t){return L(e)?t:e.constructor(t)}function Pt(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function Nt(e){return st(e.size),i(e)}function Dt(e){return g(e)?h:y(e)?d:v}function Mt(e){return Object.create((g(e)?P:y(e)?N:D).prototype)}function kt(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):I.prototype.cacheResult.call(this)}function At(e,t){return e>t?1:t>e?-1:0}function jt(e){var t=C(e);if(!t){if(!x(e))throw new TypeError("Expected iterable or array-like: "+e);t=C(f(e))}return t}function Lt(e){return null===e||void 0===e?Kt():Vt(e)&&!b(e)?e:Kt().withMutations(function(t){var n=h(e);st(n.size),n.forEach(function(e,n){return t.set(n,e)})})}function Vt(e){return!(!e||!e[Vr])}function Ft(e,t){this.ownerID=e,this.entries=t}function Bt(e,t,n){this.ownerID=e,this.bitmap=t,this.nodes=n}function Ht(e,t,n){this.ownerID=e,this.count=t,this.nodes=n}function Ut(e,t,n){this.ownerID=e,this.keyHash=t,this.entries=n}function qt(e,t,n){this.ownerID=e,this.keyHash=t,this.entry=n}function zt(e,t,n){this._type=t,this._reverse=n,this._stack=e._root&&Wt(e._root)}function Gt(e,t){return R(e,t[0],t[1])}function Wt(e,t){return{node:e,index:0,__prev:t}}function Yt(e,t,n,r){var o=Object.create(Fr);return o.size=e,o._root=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Kt(){return Br||(Br=Yt(0))}function Xt(e,n,r){var o,i;if(e._root){var a=t(hr),s=t(dr);if(o=Jt(e._root,e.__ownerID,0,void 0,n,r,a,s),!s.value)return e;i=e.size+(a.value?r===fr?-1:1:0)}else{if(r===fr)return e;i=1,o=new Ft(e.__ownerID,[[n,r]])}return e.__ownerID?(e.size=i,e._root=o,e.__hash=void 0,e.__altered=!0,e):o?Yt(i,o):Kt()}function Jt(e,t,r,o,i,a,s,u){return e?e.update(t,r,o,i,a,s,u):a===fr?e:(n(u),n(s),new qt(t,o,[i,a]))}function Qt(e){return e.constructor===qt||e.constructor===Ut}function $t(e,t,n,r,o){if(e.keyHash===r)return new Ut(t,r,[e.entry,o]);var i,a=(0===n?e.keyHash:e.keyHash>>>n)&pr,s=(0===n?r:r>>>n)&pr,u=a===s?[$t(e,t,n+cr,r,o)]:(i=new qt(t,r,o),s>a?[e,i]:[i,e]);return new Bt(t,1<s;s++,u<<=1){var l=t[s];void 0!==l&&s!==r&&(o|=u,a[i++]=l)}return new Bt(e,o,a)}function tn(e,t,n,r,o){for(var i=0,a=new Array(lr),s=0;0!==n;s++,n>>>=1)a[s]=1&n?t[i++]:void 0;return a[r]=o,new Ht(e,i+1,a)}function nn(e,t,n){for(var r=[],o=0;o>1&1431655765,e=(858993459&e)+(e>>2&858993459),e=e+(e>>4)&252645135,e+=e>>8,e+=e>>16,127&e}function un(e,t,n,r){var i=r?e:o(e);return i[t]=n,i}function cn(e,t,n,r){var o=e.length+1;if(r&&t+1===o)return e[t]=n,e;for(var i=new Array(o),a=0,s=0;o>s;s++)s===t?(i[s]=n,a=-1):i[s]=e[s+a];return i}function ln(e,t,n){var r=e.length-1;if(n&&t===r)return e.pop(),e;for(var o=new Array(r),i=0,a=0;r>a;a++)a===t&&(i=1),o[a]=e[a+i];return o}function pn(e){var t=mn();if(null===e||void 0===e)return t;if(fn(e))return e;var n=d(e),r=n.size;return 0===r?t:(st(r),r>0&&lr>r?vn(0,r,cr,null,new hn(n.toArray())):t.withMutations(function(e){e.setSize(r),n.forEach(function(t,n){return e.set(n,t)})}))}function fn(e){return!(!e||!e[zr])}function hn(e,t){this.array=e,this.ownerID=t}function dn(e,t){function n(e,t,n){return 0===t?r(e,n):o(e,t,n)}function r(e,n){var r=n===s?u&&u.array:e&&e.array,o=n>i?0:i-n,c=a-n;return c>lr&&(c=lr),function(){if(o===c)return Yr;var e=t?--c:o++;return r&&r[e]}}function o(e,r,o){var s,u=e&&e.array,c=o>i?0:i-o>>r,l=(a-o>>r)+1;return l>lr&&(l=lr),function(){for(;;){if(s){var e=s();if(e!==Yr)return e;s=null}if(c===l)return Yr;var i=t?--l:c++;s=n(u&&u[i],r-cr,o+(i<=e.size||0>n)return e.withMutations(function(e){0>n?Sn(e,n).set(0,r):Sn(e,0,n+1).set(n,r)});n+=e._origin;var o=e._tail,i=e._root,s=t(dr);return n>=En(e._capacity)?o=yn(o,e.__ownerID,0,n,r,s):i=yn(i,e.__ownerID,e._level,n,r,s),s.value?e.__ownerID?(e._root=i,e._tail=o,e.__hash=void 0,e.__altered=!0,e):vn(e._origin,e._capacity,e._level,i,o):e}function yn(e,t,r,o,i,a){var s=o>>>r&pr,u=e&&s0){var l=e&&e.array[s],p=yn(l,t,r-cr,o,i,a);return p===l?e:(c=_n(e,t),c.array[s]=p,c)}return u&&e.array[s]===i?e:(n(a),c=_n(e,t),void 0===i&&s===c.array.length-1?c.array.pop():c.array[s]=i,c)}function _n(e,t){return t&&e&&t===e.ownerID?e:new hn(e?e.array.slice():[],t)}function bn(e,t){if(t>=En(e._capacity))return e._tail;if(t<1<0;)n=n.array[t>>>r&pr],r-=cr;return n}}function Sn(e,t,n){void 0!==t&&(t=0|t),void 0!==n&&(n=0|n);var o=e.__ownerID||new r,i=e._origin,a=e._capacity,s=i+t,u=void 0===n?a:0>n?a+n:i+n;if(s===i&&u===a)return e;if(s>=u)return e.clear();for(var c=e._level,l=e._root,p=0;0>s+p;)l=new hn(l&&l.array.length?[void 0,l]:[],o),c+=cr,p+=1<=1<h?bn(e,u-1):h>f?new hn([],o):d;if(d&&h>f&&a>s&&d.array.length){l=_n(l,o);for(var m=l,g=c;g>cr;g-=cr){var y=f>>>g≺m=m.array[y]=_n(m.array[y],o)}m.array[f>>>cr&pr]=d}if(a>u&&(v=v&&v.removeAfter(o,0,u)),s>=h)s-=h,u-=h,c=cr,l=null,v=v&&v.removeBefore(o,0,s);else if(s>i||f>h){for(p=0;l;){var _=s>>>c≺if(_!==h>>>c&pr)break;_&&(p+=(1<i&&(l=l.removeBefore(o,c,s-p)),l&&f>h&&(l=l.removeAfter(o,c,h-p)),p&&(s-=p,u-=p)}return e.__ownerID?(e.size=u-s,e._origin=s,e._capacity=u,e._level=c,e._root=l,e._tail=v,e.__hash=void 0,e.__altered=!0,e):vn(s,u,c,l,v)}function Rn(e,t,n){for(var r=[],o=0,i=0;io&&(o=s.size),m(a)||(s=s.map(function(e){return J(e)})),r.push(s)}return o>e.size&&(e=e.setSize(o)),on(e,t,r)}function En(e){return lr>e?0:e-1>>>cr<=lr&&a.size>=2*i.size?(o=a.filter(function(e,t){return void 0!==e&&s!==t}),r=o.toKeyedSeq().map(function(e){return e[0]}).flip().toMap(),e.__ownerID&&(r.__ownerID=o.__ownerID=e.__ownerID)):(r=i.remove(t),o=s===a.size-1?a.pop():a.set(s,void 0))}else if(u){if(n===a.get(s)[1])return e;r=i,o=a.set(s,[t,n])}else r=i.set(t,a.size),o=a.set(a.size,[t,n]);return e.__ownerID?(e.size=r.size,e._map=r,e._list=o,e.__hash=void 0,e):Cn(r,o)}function In(e){return null===e||void 0===e?Dn():Pn(e)?e:Dn().unshiftAll(e) +}function Pn(e){return!(!e||!e[Xr])}function Nn(e,t,n,r){var o=Object.create(Jr);return o.size=e,o._head=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Dn(){return Qr||(Qr=Nn(0))}function Mn(e){return null===e||void 0===e?Ln():kn(e)&&!b(e)?e:Ln().withMutations(function(t){var n=v(e);st(n.size),n.forEach(function(e){return t.add(e)})})}function kn(e){return!(!e||!e[$r])}function An(e,t){return e.__ownerID?(e.size=t.size,e._map=t,e):t===e._map?e:0===t.size?e.__empty():e.__make(t)}function jn(e,t){var n=Object.create(Zr);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Ln(){return eo||(eo=jn(Kt()))}function Vn(e){return null===e||void 0===e?Hn():Fn(e)?e:Hn().withMutations(function(t){var n=v(e);st(n.size),n.forEach(function(e){return t.add(e)})})}function Fn(e){return kn(e)&&b(e)}function Bn(e,t){var n=Object.create(to);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Hn(){return no||(no=Bn(On()))}function Un(e,t){var n,r=function(i){if(i instanceof r)return i;if(!(this instanceof r))return new r(i);if(!n){n=!0;var a=Object.keys(e);Gn(o,a),o.size=a.length,o._name=t,o._keys=a,o._defaultValues=e}this._map=Lt(i)},o=r.prototype=Object.create(ro);return o.constructor=r,r}function qn(e,t,n){var r=Object.create(Object.getPrototypeOf(e));return r._map=t,r.__ownerID=n,r}function zn(e){return e._name||e.constructor.name||"Record"}function Gn(e,t){try{t.forEach(Wn.bind(void 0,e))}catch(n){}}function Wn(e,t){Object.defineProperty(e,t,{get:function(){return this.get(t)},set:function(e){at(this.__ownerID,"Cannot set on an immutable record."),this.set(t,e)}})}function Yn(e,t){if(e===t)return!0;if(!m(t)||void 0!==e.size&&void 0!==t.size&&e.size!==t.size||void 0!==e.__hash&&void 0!==t.__hash&&e.__hash!==t.__hash||g(e)!==g(t)||y(e)!==y(t)||b(e)!==b(t))return!1;if(0===e.size&&0===t.size)return!0;var n=!_(e);if(b(e)){var r=e.entries();return t.every(function(e,t){var o=r.next().value;return o&&X(o[1],e)&&(n||X(o[0],t))})&&r.next().done}var o=!1;if(void 0===e.size)if(void 0===t.size)"function"==typeof e.cacheResult&&e.cacheResult();else{o=!0;var i=e;e=t,t=i}var a=!0,s=t.__iterate(function(t,r){return(n?e.has(t):o?X(t,e.get(r,fr)):X(e.get(r,fr),t))?void 0:(a=!1,!1)});return a&&e.size===s}function Kn(e,t,n){if(!(this instanceof Kn))return new Kn(e,t,n);if(at(0!==n,"Cannot step a Range by 0"),e=e||0,void 0===t&&(t=1/0),n=void 0===n?1:Math.abs(n),e>t&&(n=-n),this._start=e,this._end=t,this._step=n,this.size=Math.max(0,Math.ceil((t-e)/n-1)+1),0===this.size){if(oo)return oo;oo=this}}function Xn(e,t){if(!(this instanceof Xn))return new Xn(e,t);if(this._value=e,this.size=void 0===t?1/0:Math.max(0,t),0===this.size){if(io)return io;io=this}}function Jn(e,t){var n=function(n){e.prototype[n]=t[n]};return Object.keys(t).forEach(n),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(t).forEach(n),e}function Qn(e,t){return t}function $n(e,t){return[t,e]}function Zn(e){return function(){return!e.apply(this,arguments)}}function er(e){return function(){return-e.apply(this,arguments)}}function tr(e){return"string"==typeof e?JSON.stringify(e):e}function nr(){return o(arguments)}function rr(e,t){return t>e?1:e>t?-1:0}function or(e){if(1/0===e.size)return 0;var t=b(e),n=g(e),r=t?1:0,o=e.__iterate(n?t?function(e,t){r=31*r+ar(tt(e),tt(t))|0}:function(e,t){r=r+ar(tt(e),tt(t))|0}:t?function(e){r=31*r+tt(e)|0}:function(e){r=r+tt(e)|0});return ir(o,r)}function ir(e,t){return t=xr(t,3432918353),t=xr(t<<15|t>>>-15,461845907),t=xr(t<<13|t>>>-13,5),t=(t+3864292196|0)^e,t=xr(t^t>>>16,2246822507),t=xr(t^t>>>13,3266489909),t=et(t^t>>>16)}function ar(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}var sr=Array.prototype.slice,ur="delete",cr=5,lr=1<=o;o++)if(e(n[t?r-o:o],o,this)===!1)return o+1;return o},M.prototype.__iterator=function(e,t){var n=this._array,r=n.length-1,o=0;return new S(function(){return o>r?E():R(e,o,n[t?r-o++:o++])})},e(k,P),k.prototype.get=function(e,t){return void 0===t||this.has(e)?this._object[e]:t},k.prototype.has=function(e){return this._object.hasOwnProperty(e)},k.prototype.__iterate=function(e,t){for(var n=this._object,r=this._keys,o=r.length-1,i=0;o>=i;i++){var a=r[t?o-i:i];if(e(n[a],a,this)===!1)return i+1}return i},k.prototype.__iterator=function(e,t){var n=this._object,r=this._keys,o=r.length-1,i=0;return new S(function(){var a=r[t?o-i:i];return i++>o?E():R(e,a,n[a])})},k.prototype[yr]=!0,e(A,N),A.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);var n=this._iterable,r=C(n),o=0;if(T(r))for(var i;!(i=r.next()).done&&e(i.value,o++,this)!==!1;);return o},A.prototype.__iteratorUncached=function(e,t){if(t)return this.cacheResult().__iterator(e,t);var n=this._iterable,r=C(n);if(!T(r))return new S(E);var o=0;return new S(function(){var t=r.next();return t.done?t:R(e,o++,t.value)})},e(j,N),j.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);for(var n=this._iterator,r=this._iteratorCache,o=0;o=r.length){var t=n.next();if(t.done)return t;r[o]=t.value}return R(e,o,r[o++])})};var Cr;e(G,f),e(W,G),e(Y,G),e(K,G),G.Keyed=W,G.Indexed=Y,G.Set=K;var Or,xr="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(e,t){e=0|e,t=0|t;var n=65535&e,r=65535&t;return n*r+((e>>>16)*r+n*(t>>>16)<<16>>>0)|0},Ir=Object.isExtensible,Pr=function(){try{return Object.defineProperty({},"@",{}),!0}catch(e){return!1}}(),Nr="function"==typeof WeakMap;Nr&&(Or=new WeakMap);var Dr=0,Mr="__immutablehash__";"function"==typeof Symbol&&(Mr=Symbol(Mr));var kr=16,Ar=255,jr=0,Lr={};e(ut,P),ut.prototype.get=function(e,t){return this._iter.get(e,t)},ut.prototype.has=function(e){return this._iter.has(e)},ut.prototype.valueSeq=function(){return this._iter.valueSeq()},ut.prototype.reverse=function(){var e=this,t=dt(this,!0);return this._useKeys||(t.valueSeq=function(){return e._iter.toSeq().reverse()}),t},ut.prototype.map=function(e,t){var n=this,r=ht(this,e,t);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(e,t)}),r},ut.prototype.__iterate=function(e,t){var n,r=this;return this._iter.__iterate(this._useKeys?function(t,n){return e(t,n,r)}:(n=t?Nt(this):0,function(o){return e(o,t?--n:n++,r)}),t)},ut.prototype.__iterator=function(e,t){if(this._useKeys)return this._iter.__iterator(e,t);var n=this._iter.__iterator(br,t),r=t?Nt(this):0;return new S(function(){var o=n.next();return o.done?o:R(e,t?--r:r++,o.value,o)})},ut.prototype[yr]=!0,e(ct,N),ct.prototype.includes=function(e){return this._iter.includes(e)},ct.prototype.__iterate=function(e,t){var n=this,r=0;return this._iter.__iterate(function(t){return e(t,r++,n)},t)},ct.prototype.__iterator=function(e,t){var n=this._iter.__iterator(br,t),r=0;return new S(function(){var t=n.next();return t.done?t:R(e,r++,t.value,t)})},e(lt,D),lt.prototype.has=function(e){return this._iter.includes(e)},lt.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){return e(t,t,n)},t)},lt.prototype.__iterator=function(e,t){var n=this._iter.__iterator(br,t);return new S(function(){var t=n.next();return t.done?t:R(e,t.value,t.value,t)})},e(pt,P),pt.prototype.entrySeq=function(){return this._iter.toSeq()},pt.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){if(t){Pt(t);var r=m(t);return e(r?t.get(1):t[1],r?t.get(0):t[0],n)}},t)},pt.prototype.__iterator=function(e,t){var n=this._iter.__iterator(br,t);return new S(function(){for(;;){var t=n.next();if(t.done)return t;var r=t.value;if(r){Pt(r);var o=m(r);return R(e,o?r.get(0):r[0],o?r.get(1):r[1],t)}}})},ct.prototype.cacheResult=ut.prototype.cacheResult=lt.prototype.cacheResult=pt.prototype.cacheResult=kt,e(Lt,W),Lt.prototype.toString=function(){return this.__toString("Map {","}")},Lt.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},Lt.prototype.set=function(e,t){return Xt(this,e,t)},Lt.prototype.setIn=function(e,t){return this.updateIn(e,fr,function(){return t})},Lt.prototype.remove=function(e){return Xt(this,e,fr)},Lt.prototype.deleteIn=function(e){return this.updateIn(e,function(){return fr})},Lt.prototype.update=function(e,t,n){return 1===arguments.length?e(this):this.updateIn([e],t,n)},Lt.prototype.updateIn=function(e,t,n){n||(n=t,t=void 0);var r=an(this,jt(e),t,n);return r===fr?void 0:r},Lt.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Kt()},Lt.prototype.merge=function(){return nn(this,void 0,arguments)},Lt.prototype.mergeWith=function(e){var t=sr.call(arguments,1);return nn(this,e,t)},Lt.prototype.mergeIn=function(e){var t=sr.call(arguments,1);return this.updateIn(e,Kt(),function(e){return"function"==typeof e.merge?e.merge.apply(e,t):t[t.length-1]})},Lt.prototype.mergeDeep=function(){return nn(this,rn(void 0),arguments)},Lt.prototype.mergeDeepWith=function(e){var t=sr.call(arguments,1);return nn(this,rn(e),t)},Lt.prototype.mergeDeepIn=function(e){var t=sr.call(arguments,1);return this.updateIn(e,Kt(),function(e){return"function"==typeof e.mergeDeep?e.mergeDeep.apply(e,t):t[t.length-1]})},Lt.prototype.sort=function(e){return wn(Tt(this,e))},Lt.prototype.sortBy=function(e,t){return wn(Tt(this,t,e))},Lt.prototype.withMutations=function(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this},Lt.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new r)},Lt.prototype.asImmutable=function(){return this.__ensureOwner()},Lt.prototype.wasAltered=function(){return this.__altered},Lt.prototype.__iterator=function(e,t){return new zt(this,e,t)},Lt.prototype.__iterate=function(e,t){var n=this,r=0;return this._root&&this._root.iterate(function(t){return r++,e(t[1],t[0],n)},t),r},Lt.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Yt(this.size,this._root,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},Lt.isMap=Vt;var Vr="@@__IMMUTABLE_MAP__@@",Fr=Lt.prototype;Fr[Vr]=!0,Fr[ur]=Fr.remove,Fr.removeIn=Fr.deleteIn,Ft.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(X(n,o[i][0]))return o[i][1];return r},Ft.prototype.update=function(e,t,r,i,a,s,u){for(var c=a===fr,l=this.entries,p=0,f=l.length;f>p&&!X(i,l[p][0]);p++);var h=f>p;if(h?l[p][1]===a:c)return this;if(n(u),(c||!h)&&n(s),!c||1!==l.length){if(!h&&!c&&l.length>=Hr)return Zt(e,l,i,a);var d=e&&e===this.ownerID,v=d?l:o(l);return h?c?p===f-1?v.pop():v[p]=v.pop():v[p]=[i,a]:v.push([i,a]),d?(this.entries=v,this):new Ft(e,v)}},Bt.prototype.get=function(e,t,n,r){void 0===t&&(t=tt(n));var o=1<<((0===e?t:t>>>e)&pr),i=this.bitmap;return 0===(i&o)?r:this.nodes[sn(i&o-1)].get(e+cr,t,n,r)},Bt.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=tt(r));var s=(0===t?n:n>>>t)&pr,u=1<=Ur)return tn(e,f,c,s,d);if(l&&!d&&2===f.length&&Qt(f[1^p]))return f[1^p];if(l&&d&&1===f.length&&Qt(d))return d;var v=e&&e===this.ownerID,m=l?d?c:c^u:c|u,g=l?d?un(f,p,d,v):ln(f,p,v):cn(f,p,d,v);return v?(this.bitmap=m,this.nodes=g,this):new Bt(e,m,g)},Ht.prototype.get=function(e,t,n,r){void 0===t&&(t=tt(n));var o=(0===e?t:t>>>e)&pr,i=this.nodes[o];return i?i.get(e+cr,t,n,r):r},Ht.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=tt(r));var s=(0===t?n:n>>>t)&pr,u=o===fr,c=this.nodes,l=c[s];if(u&&!l)return this;var p=Jt(l,e,t+cr,n,r,o,i,a);if(p===l)return this;var f=this.count;if(l){if(!p&&(f--,qr>f))return en(e,c,f,s)}else f++;var h=e&&e===this.ownerID,d=un(c,s,p,h);return h?(this.count=f,this.nodes=d,this):new Ht(e,f,d)},Ut.prototype.get=function(e,t,n,r){for(var o=this.entries,i=0,a=o.length;a>i;i++)if(X(n,o[i][0]))return o[i][1];return r},Ut.prototype.update=function(e,t,r,i,a,s,u){void 0===r&&(r=tt(i));var c=a===fr;if(r!==this.keyHash)return c?this:(n(u),n(s),$t(this,e,t,r,[i,a]));for(var l=this.entries,p=0,f=l.length;f>p&&!X(i,l[p][0]);p++);var h=f>p;if(h?l[p][1]===a:c)return this;if(n(u),(c||!h)&&n(s),c&&2===f)return new qt(e,this.keyHash,l[1^p]);var d=e&&e===this.ownerID,v=d?l:o(l);return h?c?p===f-1?v.pop():v[p]=v.pop():v[p]=[i,a]:v.push([i,a]),d?(this.entries=v,this):new Ut(e,this.keyHash,v)},qt.prototype.get=function(e,t,n,r){return X(n,this.entry[0])?this.entry[1]:r},qt.prototype.update=function(e,t,r,o,i,a,s){var u=i===fr,c=X(o,this.entry[0]);return(c?i===this.entry[1]:u)?this:(n(s),u?void n(a):c?e&&e===this.ownerID?(this.entry[1]=i,this):new qt(e,this.keyHash,[o,i]):(n(a),$t(this,e,t,tt(o),[o,i])))},Ft.prototype.iterate=Ut.prototype.iterate=function(e,t){for(var n=this.entries,r=0,o=n.length-1;o>=r;r++)if(e(n[t?o-r:r])===!1)return!1},Bt.prototype.iterate=Ht.prototype.iterate=function(e,t){for(var n=this.nodes,r=0,o=n.length-1;o>=r;r++){var i=n[t?o-r:r];if(i&&i.iterate(e,t)===!1)return!1}},qt.prototype.iterate=function(e){return e(this.entry)},e(zt,S),zt.prototype.next=function(){for(var e=this._type,t=this._stack;t;){var n,r=t.node,o=t.index++;if(r.entry){if(0===o)return Gt(e,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=o)return Gt(e,r.entries[this._reverse?n-o:o])}else if(n=r.nodes.length-1,n>=o){var i=r.nodes[this._reverse?n-o:o];if(i){if(i.entry)return Gt(e,i.entry);t=this._stack=Wt(i,t)}continue}t=this._stack=this._stack.__prev}return E()};var Br,Hr=lr/4,Ur=lr/2,qr=lr/4;e(pn,Y),pn.of=function(){return this(arguments)},pn.prototype.toString=function(){return this.__toString("List [","]")},pn.prototype.get=function(e,t){if(e=a(this,e),e>=0&&e>>t≺if(r>=this.array.length)return new hn([],e);var o,i=0===r;if(t>0){var a=this.array[r];if(o=a&&a.removeBefore(e,t-cr,n),o===a&&i)return this}if(i&&!o)return this;var s=_n(this,e);if(!i)for(var u=0;r>u;u++)s.array[u]=void 0;return o&&(s.array[r]=o),s},hn.prototype.removeAfter=function(e,t,n){if(n===(t?1<>>t≺if(r>=this.array.length)return this;var o;if(t>0){var i=this.array[r];if(o=i&&i.removeAfter(e,t-cr,n),o===i&&r===this.array.length-1)return this}var a=_n(this,e);return a.array.splice(r+1),o&&(a.array[r]=o),a};var Wr,Yr={};e(wn,Lt),wn.of=function(){return this(arguments)},wn.prototype.toString=function(){return this.__toString("OrderedMap {","}")},wn.prototype.get=function(e,t){var n=this._map.get(e);return void 0!==n?this._list.get(n)[1]:t},wn.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):On()},wn.prototype.set=function(e,t){return xn(this,e,t)},wn.prototype.remove=function(e){return xn(this,e,fr)},wn.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},wn.prototype.__iterate=function(e,t){var n=this;return this._list.__iterate(function(t){return t&&e(t[1],t[0],n)},t)},wn.prototype.__iterator=function(e,t){return this._list.fromEntrySeq().__iterator(e,t)},wn.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map.__ensureOwner(e),n=this._list.__ensureOwner(e);return e?Cn(t,n,e,this.__hash):(this.__ownerID=e,this._map=t,this._list=n,this)},wn.isOrderedMap=Tn,wn.prototype[yr]=!0,wn.prototype[ur]=wn.prototype.remove;var Kr;e(In,Y),In.of=function(){return this(arguments)},In.prototype.toString=function(){return this.__toString("Stack [","]")},In.prototype.get=function(e,t){var n=this._head;for(e=a(this,e);n&&e--;)n=n.next;return n?n.value:t},In.prototype.peek=function(){return this._head&&this._head.value},In.prototype.push=function(){if(0===arguments.length)return this;for(var e=this.size+arguments.length,t=this._head,n=arguments.length-1;n>=0;n--)t={value:arguments[n],next:t};return this.__ownerID?(this.size=e,this._head=t,this.__hash=void 0,this.__altered=!0,this):Nn(e,t)},In.prototype.pushAll=function(e){if(e=d(e),0===e.size)return this;st(e.size);var t=this.size,n=this._head;return e.reverse().forEach(function(e){t++,n={value:e,next:n}}),this.__ownerID?(this.size=t,this._head=n,this.__hash=void 0,this.__altered=!0,this):Nn(t,n)},In.prototype.pop=function(){return this.slice(1)},In.prototype.unshift=function(){return this.push.apply(this,arguments)},In.prototype.unshiftAll=function(e){return this.pushAll(e)},In.prototype.shift=function(){return this.pop.apply(this,arguments)},In.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Dn()},In.prototype.slice=function(e,t){if(u(e,t,this.size))return this;var n=c(e,this.size),r=l(t,this.size);if(r!==this.size)return Y.prototype.slice.call(this,e,t);for(var o=this.size-n,i=this._head;n--;)i=i.next;return this.__ownerID?(this.size=o,this._head=i,this.__hash=void 0,this.__altered=!0,this):Nn(o,i)},In.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Nn(this.size,this._head,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},In.prototype.__iterate=function(e,t){if(t)return this.reverse().__iterate(e);for(var n=0,r=this._head;r&&e(r.value,n++,this)!==!1;)r=r.next;return n},In.prototype.__iterator=function(e,t){if(t)return this.reverse().__iterator(e);var n=0,r=this._head;return new S(function(){if(r){var t=r.value;return r=r.next,R(e,n++,t)}return E()})},In.isStack=Pn;var Xr="@@__IMMUTABLE_STACK__@@",Jr=In.prototype;Jr[Xr]=!0,Jr.withMutations=Fr.withMutations,Jr.asMutable=Fr.asMutable,Jr.asImmutable=Fr.asImmutable,Jr.wasAltered=Fr.wasAltered;var Qr;e(Mn,K),Mn.of=function(){return this(arguments)},Mn.fromKeys=function(e){return this(h(e).keySeq())},Mn.prototype.toString=function(){return this.__toString("Set {","}")},Mn.prototype.has=function(e){return this._map.has(e)},Mn.prototype.add=function(e){return An(this,this._map.set(e,!0))},Mn.prototype.remove=function(e){return An(this,this._map.remove(e))},Mn.prototype.clear=function(){return An(this,this._map.clear())},Mn.prototype.union=function(){var e=sr.call(arguments,0);return e=e.filter(function(e){return 0!==e.size}),0===e.length?this:0!==this.size||this.__ownerID||1!==e.length?this.withMutations(function(t){for(var n=0;n1?" by "+this._step:"")+" ]"},Kn.prototype.get=function(e,t){return this.has(e)?this._start+a(this,e)*this._step:t},Kn.prototype.includes=function(e){var t=(e-this._start)/this._step;return t>=0&&t=t?new Kn(0,0):new Kn(this.get(e,this._end),this.get(t,this._end),this._step))},Kn.prototype.indexOf=function(e){var t=e-this._start;if(t%this._step===0){var n=t/this._step;if(n>=0&&n=i;i++){if(e(o,i,this)===!1)return i+1;o+=t?-r:r}return i},Kn.prototype.__iterator=function(e,t){var n=this.size-1,r=this._step,o=t?this._start+n*r:this._start,i=0;return new S(function(){var a=o;return o+=t?-r:r,i>n?E():R(e,i++,a)})},Kn.prototype.equals=function(e){return e instanceof Kn?this._start===e._start&&this._end===e._end&&this._step===e._step:Yn(this,e)};var oo;e(Xn,N),Xn.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Xn.prototype.get=function(e,t){return this.has(e)?this._value:t},Xn.prototype.includes=function(e){return X(this._value,e)},Xn.prototype.slice=function(e,t){var n=this.size;return u(e,t,n)?this:new Xn(this._value,l(t,n)-c(e,n))},Xn.prototype.reverse=function(){return this},Xn.prototype.indexOf=function(e){return X(this._value,e)?0:-1},Xn.prototype.lastIndexOf=function(e){return X(this._value,e)?this.size:-1},Xn.prototype.__iterate=function(e){for(var t=0;te?this.count():this.size);var r=this.slice(0,e);return It(this,1===n?r:r.concat(o(arguments,2),this.slice(e+t)))},findLastIndex:function(e,t){var n=this.toKeyedSeq().findLastKey(e,t);return void 0===n?-1:n},first:function(){return this.get(0)},flatten:function(e){return It(this,Rt(this,e,!1))},get:function(e,t){return e=a(this,e),0>e||1/0===this.size||void 0!==this.size&&e>this.size?t:this.find(function(t,n){return n===e},void 0,t)},has:function(e){return e=a(this,e),e>=0&&(void 0!==this.size?1/0===this.size||en?e:1-e,s=t-n,u=t-r;i=s>0&&0===u||u>0&&0===s?o.Interpolators.RightToCenter:0>s&&0===u||0>u&&0===s?o.Interpolators.CenterToLeft:s===u?o.Interpolators.RightToCenter:o.Interpolators.RightToLeft,c.forEach(function(e){var n=this._components[e].get(this.props.navState.routeStack[t]),r=this._getReusableProps(e,t);n&&i[e](r.style,a)&&n.setNativeProps(r)},this)},updateProgress:function(e,t,n){for(var r=Math.max(t,n),o=Math.min(t,n),i=o;r>=i;i++)this._updateIndexProgress(e,i,t,n)},render:function(){var e=this.props.navState,t=c.map(function(t){return e.routeStack.map(this._getComponent.bind(this,t))},this);return r.createElement(a,{style:[f.navBarContainer,this.props.style]},t)},_getComponent:function(e,t,n){var i=this;if(this._descriptors[e].includes(t))return this._descriptors[e].get(t);var s=null,u=this.props.routeMapper[e](this.props.navState.routeStack[n],this.props.navigator,n,this.props.navState);if(!u)return null;var c=n===l(this.props.navState)?o.Stages.Center:o.Stages.Left;return s=r.createElement(a,{ref:function(n){i._components[e]=i._components[e].set(t,n)},style:c[e]},u),this._descriptors[e]=this._descriptors[e].set(t,s),s}}),f=i.create({navBarContainer:{position:"absolute",height:o.General.TotalNavHeight,top:0,left:0,right:0,backgroundColor:"transparent"}});n.exports=p}),__d("NavigatorSceneConfigs",["Dimensions","PixelRatio","buildStyleInterpolator"],function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;tt&&(a+=o&&n?u.currentPageX:o&&!n?u.currentPageY:!o&&n?u.previousPageX:u.previousPageY,s=1);else for(var c=0;c=t){var p;p=o&&n?l.currentPageX:o&&!n?l.currentPageY:!o&&n?l.previousPageX:l.previousPageY,a+=p,s++}}return s>0?a/s:r.noCentroid},currentCentroidXOfTouchesChangedAfter:function(e,t){return r.centroidDimension(e,t,!0,!0)},currentCentroidYOfTouchesChangedAfter:function(e,t){return r.centroidDimension(e,t,!1,!0)},previousCentroidXOfTouchesChangedAfter:function(e,t){return r.centroidDimension(e,t,!0,!1)},previousCentroidYOfTouchesChangedAfter:function(e,t){return r.centroidDimension(e,t,!1,!1)},currentCentroidX:function(e){return r.centroidDimension(e,0,!0,!0)},currentCentroidY:function(e){return r.centroidDimension(e,0,!1,!0)},noCentroid:-1};n.exports=r}),__d("clamp",[],function(e,t,n){function r(e,t,n){return e>t?e:t>n?n:t}n.exports=r}),__d("rebound/rebound.js",[],function(e,t,n,r){!function(){function e(e,t){var n=e.indexOf(t);-1!=n&&e.splice(n,1)}var t={},n=t.util={},o=Array.prototype.concat,i=Array.prototype.slice;n.bind=function(e,t){var n=i.call(arguments,2);return function(){e.apply(t,o.call(n,i.call(arguments)))}},n.extend=function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};var a=t.SpringSystem=function(e){this._springRegistry={},this._activeSprings=[],this.listeners=[],this._idleSpringIndices=[],this.looper=e||new l,this.looper.springSystem=this};n.extend(a.prototype,{_springRegistry:null,_isIdle:!0,_lastTimeMillis:-1,_activeSprings:null,listeners:null,_idleSpringIndices:null,setLooper:function(e){this.looper=e,e.springSystem=this},createSpring:function(e,t){var n;return n=void 0===e||void 0===t?c.DEFAULT_ORIGAMI_SPRING_CONFIG:c.fromOrigamiTensionAndFriction(e,t),this.createSpringWithConfig(n)},createSpringWithBouncinessAndSpeed:function(e,t){var n;return n=void 0===e||void 0===t?c.DEFAULT_ORIGAMI_SPRING_CONFIG:c.fromBouncinessAndSpeed(e,t),this.createSpringWithConfig(n)},createSpringWithConfig:function(e){var t=new s(this);return this.registerSpring(t),t.setSpringConfig(e),t},getIsIdle:function(){return this._isIdle},getSpringById:function(e){return this._springRegistry[e]},getAllSprings:function(){var e=[];for(var t in this._springRegistry)this._springRegistry.hasOwnProperty(t)&&e.push(this._springRegistry[t]);return e},registerSpring:function(e){this._springRegistry[e.getId()]=e},deregisterSpring:function(t){e(this._activeSprings,t),delete this._springRegistry[t.getId()]},advance:function(e,t){for(;this._idleSpringIndices.length>0;)this._idleSpringIndices.pop();for(var n=0,r=this._activeSprings.length;r>n;n++){var o=this._activeSprings[n];o.systemShouldAdvance()?o.advance(e/1e3,t/1e3):this._idleSpringIndices.push(this._activeSprings.indexOf(o))}for(;this._idleSpringIndices.length>0;){var i=this._idleSpringIndices.pop();i>=0&&this._activeSprings.splice(i,1)}},loop:function(e){var t;-1===this._lastTimeMillis&&(this._lastTimeMillis=e-1);var n=e-this._lastTimeMillis;this._lastTimeMillis=e;var r=0,o=this.listeners.length;for(r=0;o>r;r++)t=this.listeners[r],t.onBeforeIntegrate&&t.onBeforeIntegrate(this);for(this.advance(e,n),0===this._activeSprings.length&&(this._isIdle=!0,this._lastTimeMillis=-1),r=0;o>r;r++)t=this.listeners[r],t.onAfterIntegrate&&t.onAfterIntegrate(this);this._isIdle||this.looper.run()},activateSpring:function(e){var t=this._springRegistry[e];-1==this._activeSprings.indexOf(t)&&this._activeSprings.push(t),this.getIsIdle()&&(this._isIdle=!1,this.looper.run())},addListener:function(e){this.listeners.push(e)},removeListener:function(t){e(this.listeners,t)},removeAllListeners:function(){this.listeners=[]}});var s=t.Spring=function m(e){this._id="s"+m._ID++,this._springSystem=e,this.listeners=[],this._currentState=new u,this._previousState=new u,this._tempState=new u};n.extend(s,{_ID:0,MAX_DELTA_TIME_SEC:.064,SOLVER_TIMESTEP_SEC:.001}),n.extend(s.prototype,{_id:0,_springConfig:null,_overshootClampingEnabled:!1,_currentState:null,_previousState:null,_tempState:null,_startValue:0,_endValue:0,_wasAtRest:!0,_restSpeedThreshold:.001,_displacementFromRestThreshold:.001,listeners:null,_timeAccumulator:0,_springSystem:null,destroy:function(){this.listeners=[],this.frames=[],this._springSystem.deregisterSpring(this)},getId:function(){return this._id},setSpringConfig:function(e){return this._springConfig=e,this},getSpringConfig:function(){return this._springConfig},setCurrentValue:function(e,t){return this._startValue=e,this._currentState.position=e,t||this.setAtRest(),this.notifyPositionUpdated(!1,!1),this},getStartValue:function(){return this._startValue},getCurrentValue:function(){return this._currentState.position},getCurrentDisplacementDistance:function(){return this.getDisplacementDistanceForState(this._currentState)},getDisplacementDistanceForState:function(e){return Math.abs(this._endValue-e.position)},setEndValue:function(e){if(this._endValue==e&&this.isAtRest())return this;this._startValue=this.getCurrentValue(),this._endValue=e,this._springSystem.activateSpring(this.getId());for(var t=0,n=this.listeners.length;n>t;t++){var r=this.listeners[t],o=r.onSpringEndStateChange;o&&o(this)}return this},getEndValue:function(){return this._endValue},setVelocity:function(e){return e===this._currentState.velocity?this:(this._currentState.velocity=e,this._springSystem.activateSpring(this.getId()),this)},getVelocity:function(){return this._currentState.velocity},setRestSpeedThreshold:function(e){return this._restSpeedThreshold=e,this},getRestSpeedThreshold:function(){return this._restSpeedThreshold},setRestDisplacementThreshold:function(e){this._displacementFromRestThreshold=e},getRestDisplacementThreshold:function(){return this._displacementFromRestThreshold},setOvershootClampingEnabled:function(e){return this._overshootClampingEnabled=e,this},isOvershootClampingEnabled:function(){return this._overshootClampingEnabled},isOvershooting:function(){var e=this._startValue,t=this._endValue;return this._springConfig.tension>0&&(t>e&&this.getCurrentValue()>t||e>t&&this.getCurrentValue()s.MAX_DELTA_TIME_SEC&&(r=s.MAX_DELTA_TIME_SEC),this._timeAccumulator+=r;for(var o,i,a,u,c,l,p,f,h,d,v=this._springConfig.tension,m=this._springConfig.friction,g=this._currentState.position,y=this._currentState.velocity,_=this._tempState.position,b=this._tempState.velocity;this._timeAccumulator>=s.SOLVER_TIMESTEP_SEC;)this._timeAccumulator-=s.SOLVER_TIMESTEP_SEC,this._timeAccumulator0&&this.interpolate(this._timeAccumulator/s.SOLVER_TIMESTEP_SEC),(this.isAtRest()||this._overshootClampingEnabled&&this.isOvershooting())&&(this._springConfig.tension>0?(this._startValue=this._endValue,this._currentState.position=this._endValue):(this._endValue=this._currentState.position,this._startValue=this._endValue),this.setVelocity(0),n=!0);var S=!1;this._wasAtRest&&(this._wasAtRest=!1,S=!0);var R=!1;n&&(this._wasAtRest=!0,R=!0),this.notifyPositionUpdated(S,R)}},notifyPositionUpdated:function(e,t){for(var n=0,r=this.listeners.length;r>n;n++){var o=this.listeners[n];e&&o.onSpringActivate&&o.onSpringActivate(this),o.onSpringUpdate&&o.onSpringUpdate(this),t&&o.onSpringAtRest&&o.onSpringAtRest(this)}},systemShouldAdvance:function(){return!this.isAtRest()||!this.wasAtRest()},wasAtRest:function(){return this._wasAtRest},isAtRest:function(){return Math.abs(this._currentState.velocity)=e?this.b3Friction1(e):e>18&&44>=e?this.b3Friction2(e):this.b3Friction3(e)}}),n.extend(c,{fromOrigamiTensionAndFriction:function(e,t){return new c(p.tensionFromOrigamiValue(e),p.frictionFromOrigamiValue(t))},fromBouncinessAndSpeed:function(e,n){var r=new t.BouncyConversion(e,n);return this.fromOrigamiTensionAndFriction(r.bouncyTension,r.bouncyFriction)},coastingConfigWithOrigamiFriction:function(e){return new c(0,p.frictionFromOrigamiValue(e))}}),c.DEFAULT_ORIGAMI_SPRING_CONFIG=c.fromOrigamiTensionAndFriction(40,7),n.extend(c.prototype,{friction:0,tension:0});var h={};n.hexToRGB=function(e){if(h[e])return h[e];e=e.replace("#",""),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var t=e.match(/.{2}/g),n={r:parseInt(t[0],16),g:parseInt(t[1],16),b:parseInt(t[2],16)};return h[e]=n,n},n.rgbToHex=function(e,t,n){return e=e.toString(16),t=t.toString(16),n=n.toString(16),e=e.length<2?"0"+e:e,t=t.length<2?"0"+t:t,n=n.length<2?"0"+n:n,"#"+e+t+n};var d=t.MathUtil={mapValueInRange:function(e,t,n,r,o){var i=n-t,a=o-r,s=(e-t)/i;return r+s*a},interpolateColor:function(e,t,r,o,i,a){o=void 0===o?0:o,i=void 0===i?1:i,t=n.hexToRGB(t),r=n.hexToRGB(r);var s=Math.floor(n.mapValueInRange(e,o,i,t.r,r.r)),u=Math.floor(n.mapValueInRange(e,o,i,t.g,r.g)),c=Math.floor(n.mapValueInRange(e,o,i,t.b,r.b));return a?"rgb("+s+","+u+","+c+")":n.rgbToHex(s,u,c)},degreesToRadians:function(e){return e*Math.PI/180},radiansToDegrees:function(e){return 180*e/Math.PI}};n.extend(n,d);var v;"undefined"!=typeof window&&(v=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),v||"undefined"==typeof process||"node"!==process.title||(v=setImmediate),n.onFrame=function(e){return v(e)},"undefined"!=typeof r?n.extend(r,t):"undefined"!=typeof window&&(window.rebound=t)}()}),__d("NavigatorIOS",["EventEmitter","Image","NavigationContext","React","NativeModules","StyleSheet","StaticContainer.react","View","requireNativeComponent","invariant","logError"],function(e,t,n){"use strict";function r(){return y++}var o=Object.assign||function(e){for(var t=1;tthis.state.observedTopOfStack+1?this.state.observedTopOfStack+1:null;this.setState({idStack:this.state.idStack.slice(0,this.state.observedTopOfStack+1),routeStack:this.state.routeStack.slice(0,this.state.observedTopOfStack+1),requestedTopOfStack:this.state.observedTopOfStack,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:e})},_emitDidFocus:function(e){this.navigationContext.emit("didfocus",{route:e})},_emitWillFocus:function(e){this.navigationContext.emit("willfocus",{route:e}) },push:function(e){var t=this;d(!!e,"Must supply route to push"),this.state.requestedTopOfStack===this.state.observedTopOfStack&&this._tryLockNavigator(function(){t._emitWillFocus(e);var n=t.state.routeStack.concat([e]),o=t.state.idStack.concat([r()]);t.setState({idStack:o,routeStack:n,requestedTopOfStack:n.length-1,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:n.length-1})})},popN:function(e){var t=this;0!==e&&this.state.requestedTopOfStack===this.state.observedTopOfStack&&this.state.requestedTopOfStack>0&&this._tryLockNavigator(function(){var n=t.state.requestedTopOfStack-e;d(n>=0,"Cannot pop below 0"),t._emitWillFocus(t.state.routeStack[n]),t.setState({requestedTopOfStack:n,makingNavigatorRequest:!0,updatingAllIndicesAtOrBeyond:null})})},pop:function(){this.popN(1)},replaceAtIndex:function(e,t){if(d(!!e,"Must supply route to replace"),0>t&&(t+=this.state.routeStack.length),!(this.state.routeStack.length<=t)){var n=this.state.idStack.slice(),o=this.state.routeStack.slice();n[t]=r(),o[t]=e,this.setState({idStack:n,routeStack:o,makingNavigatorRequest:!1,updatingAllIndicesAtOrBeyond:t}),this._emitWillFocus(e),this._emitDidFocus(e)}},replace:function(e){this.replaceAtIndex(e,-1)},replacePrevious:function(e){this.replaceAtIndex(e,-2)},popToTop:function(){this.popToRoute(this.state.routeStack[0])},popToRoute:function(e){var t=this.state.routeStack.indexOf(e);d(-1!==t,"Calling pop to route for a route that doesn't exist!");var n=this.state.routeStack.length-t-1;this.popN(n)},replacePreviousAndPop:function(e){var t=this;this.state.requestedTopOfStack===this.state.observedTopOfStack&&(this.state.routeStack.length<2||this._tryLockNavigator(function(){t.replacePrevious(e),t.setState({requestedTopOfStack:t.state.requestedTopOfStack-1,makingNavigatorRequest:!0})}))},resetTo:function(e){d(!!e,"Must supply route to push"),this.state.requestedTopOfStack===this.state.observedTopOfStack&&(this.replaceAtIndex(e,0),this.popToRoute(e))},handleNavigationComplete:function(e){this._toFocusOnNavigationComplete&&(this._getFocusEmitter().emit("focus",this._toFocusOnNavigationComplete),this._toFocusOnNavigationComplete=null),this._handleNavigatorStackChanged(e)},_routeToStackItem:function(e,t){var n=e.component,r=null!==this.state.updatingAllIndicesAtOrBeyond&&this.state.updatingAllIndicesAtOrBeyond>=t;return u.createElement(p,{key:"nav"+t,shouldUpdate:r},u.createElement(E,{title:e.title,style:[S.stackItem,this.props.itemWrapperStyle,e.wrapperStyle],backButtonIcon:this._imageNameFromSource(e.backButtonIcon),backButtonTitle:e.backButtonTitle,leftButtonIcon:this._imageNameFromSource(e.leftButtonIcon),leftButtonTitle:e.leftButtonTitle,onNavLeftButtonTap:e.onLeftButtonPress,rightButtonIcon:this._imageNameFromSource(e.rightButtonIcon),rightButtonTitle:e.rightButtonTitle,onNavRightButtonTap:e.onRightButtonPress,navigationBarHidden:this.props.navigationBarHidden,shadowHidden:this.props.shadowHidden,tintColor:this.props.tintColor,barTintColor:this.props.barTintColor,translucent:this.props.translucent!==!1,titleTextColor:this.props.titleTextColor},u.createElement(n,o({navigator:this.navigator,route:e},e.passProps))))},_imageNameFromSource:function(e){return e?e.uri:void 0},renderNavigationStackItems:function(){var e=this.state.makingNavigatorRequest||null!==this.state.updatingAllIndicesAtOrBeyond,t=e?this.state.routeStack.map(this._routeToStackItem):null;return u.createElement(p,{shouldUpdate:e},u.createElement(_,{ref:m,style:S.transitioner,vertical:this.props.vertical,requestedTopOfStack:this.state.requestedTopOfStack,onNavigationComplete:this.handleNavigationComplete},t))},render:function(){return u.createElement(f,{style:this.props.style},this.renderNavigationStackItems())}}),S=l.create({stackItem:{backgroundColor:"white",overflow:"hidden",position:"absolute",top:0,left:0,right:0,bottom:0},transitioner:{flex:1}}),R=h("RCTNavigator"),E=h("RCTNavItem");n.exports=b}),__d("PickerIOS",["NativeMethodsMixin","React","ReactChildren","ReactNativeViewAttributes","NativeModules","StyleSheet","View","requireNativeComponent","merge"],function(e,t,n){"use strict";var r=t("NativeMethodsMixin"),o=t("React"),i=t("ReactChildren"),a=(t("ReactNativeViewAttributes"),t("NativeModules").UIManager.RCTPicker.Constants),s=t("StyleSheet"),u=t("View"),c=t("requireNativeComponent"),l=(t("merge"),"picker"),p=o.createClass({displayName:"PickerIOS",mixins:[r],propTypes:{onValueChange:o.PropTypes.func,selectedValue:o.PropTypes.any},getInitialState:function(){return this._stateFromProps(this.props)},componentWillReceiveProps:function(e){this.setState(this._stateFromProps(e))},_stateFromProps:function(e){var t=0,n=[];return i.forEach(e.children,function(r,o){r.props.value===e.selectedValue&&(t=o),n.push({value:r.props.value,label:r.props.label})}),{selectedIndex:t,items:n}},render:function(){return o.createElement(u,{style:this.props.style},o.createElement(h,{ref:l,style:f.pickerIOS,items:this.state.items,selectedIndex:this.state.selectedIndex,onChange:this._onChange}))},_onChange:function(e){this.props.onChange&&this.props.onChange(e),this.props.onValueChange&&this.props.onValueChange(e.nativeEvent.newValue),this.state.selectedIndex!==e.nativeEvent.newIndex&&this.refs[l].setNativeProps({selectedIndex:this.state.selectedIndex})}});p.Item=o.createClass({displayName:"Item",propTypes:{value:o.PropTypes.any,label:o.PropTypes.string},render:function(){return null}});var f=s.create({pickerIOS:{height:a.ComponentHeight}}),h=c("RCTPicker",null);n.exports=p}),__d("ProgressBarAndroid",["UnimplementedView"],function(e,t,n){"use strict";n.exports=t("UnimplementedView")}),__d("ProgressViewIOS",["Image","NativeMethodsMixin","NativeModules","ReactPropTypes","React","StyleSheet","requireNativeComponent"],function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;ty&&this._cancelLongPressDelayTimeout()}var m=p>t.left-o&&h>t.top-a&&p0,o=n&&n.length>0;return!r&&o?n[0]:r?t[0]:e}};n.exports=r}),__d("queryLayoutByID",["ReactNativeTagHandles","NativeModules"],function(e,t,n){"use strict";var r=t("ReactNativeTagHandles"),o=t("NativeModules").UIManager,i=function(e,t,n){o.measure(r.rootNodeIDToTag[e],n)};n.exports=i}),__d("TextInput",["DocumentSelectionState","EventEmitter","NativeMethodsMixin","NativeModules","Platform","ReactPropTypes","React","ReactChildren","StyleSheet","Text","TextInputState","react-timer-mixin/TimerMixin.js","TouchableWithoutFeedback","createReactNativeComponentClass","emptyFunction","invariant","requireNativeComponent"],function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t1&&(o=l.createElement(h,null,o)),t.inputView&&(o=[o,t.inputView]),e=l.createElement(T,r({ref:"input"},t,{children:o,mostRecentEventCount:this.state.mostRecentEventCount,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChange:this._onSelectionChange,onTextInput:this._onTextInput,onSelectionChangeShouldSetResponder:y.thatReturnsTrue,text:this._getText()}))}else{for(var n in S)if(t[n])throw new Error("TextInput prop `"+n+"` is only supported with multiline.");e=l.createElement(C,r({ref:"input"},t,{onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChangeShouldSetResponder:function(){return!0},text:this._getText(),mostRecentEventCount:this.state.mostRecentEventCount}))}return l.createElement(m,{onPress:this._onPress,rejectResponderTermination:!0,testID:t.testID},e)},_renderAndroid:function(){var e=s.UIText.AutocapitalizationType[this.props.autoCapitalize],t=s.AndroidTextInput.Constants.TextAlign[this.props.textAlign],n=s.AndroidTextInput.Constants.TextAlignVertical[this.props.textAlignVertical],r=this.props.children,o=0;p.forEach(r,function(){return++o}),_(!(this.props.value&&o),"Cannot specify both value and children."),o>1&&(r=l.createElement(h,null,r));var i=l.createElement(I,{ref:"input",style:[this.props.style],autoCapitalize:e,autoCorrect:this.props.autoCorrect,textAlign:t,textAlignVertical:n,keyboardType:this.props.keyboardType,mostRecentEventCount:this.state.mostRecentEventCount,multiline:this.props.multiline,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onTextInput:this._onTextInput,onEndEditing:this.props.onEndEditing,onSubmitEditing:this.props.onSubmitEditing,onLayout:this.props.onLayout,password:this.props.password||this.props.secureTextEntry,placeholder:this.props.placeholder,placeholderTextColor:this.props.placeholderTextColor,text:this._getText(),underlineColorAndroid:this.props.underlineColorAndroid,children:r,editable:this.props.editable});return l.createElement(m,{onPress:this._onPress,testID:this.props.testID},i)},_onFocus:function(e){this.props.onFocus&&this.props.onFocus(e)},_onPress:function(){(this.props.editable||void 0===this.props.editable)&&this.focus()},_onChange:function(e){var t=this;"android"===u.OS&&this.refs.input.setNativeProps({mostRecentEventCount:e.nativeEvent.eventCount});var n=e.nativeEvent.text,r=e.nativeEvent.eventCount;this.props.onChange&&this.props.onChange(e),this.props.onChangeText&&this.props.onChangeText(n),this.setState({mostRecentEventCount:r},function(){n!==t.props.value&&"string"==typeof t.props.value&&t.refs.input.setNativeProps({text:t.props.value})})},_onBlur:function(e){this.blur(),this.props.onBlur&&this.props.onBlur(e)},_onSelectionChange:function(e){if(this.props.selectionState){var t=e.nativeEvent.selection;this.props.selectionState.update(t.start,t.end)}this.props.onSelectionChange&&this.props.onSelectionChange(e)},_onTextInput:function(e){this.props.onTextInput&&this.props.onTextInput(e)}}),x=f.create({input:{alignSelf:"stretch"}}),I=g({validAttributes:E,uiViewClassName:"AndroidTextInput"});n.exports=O}),__d("DocumentSelectionState",["mixInEventEmitter"],function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;nthis._focusOffset}},{key:"getAnchorOffset",value:function(){return this._hasFocus?this._anchorOffset:null}},{key:"getFocusOffset",value:function(){return this._hasFocus?this._focusOffset:null}},{key:"getStartOffset",value:function(){return this._hasFocus?Math.min(this._anchorOffset,this._focusOffset):null}},{key:"getEndOffset",value:function(){return this._hasFocus?Math.max(this._anchorOffset,this._focusOffset):null}},{key:"overlaps",value:function(e,t){return this.hasFocus()&&this.getStartOffset()<=t&&e<=this.getEndOffset()}}]),e}();i(a,{blur:!0,focus:!0,update:!0}),n.exports=a}),__d("mixInEventEmitter",["EventEmitter","EventEmitterWithHolding","EventHolder","EventValidator","copyProperties","invariant","keyOf"],function(e,t,n){function r(e,t){c(t,"Must supply set of valid event types"),c(!this.__eventEmitter,"An active emitter is already mixed in");var n=e.prototype||e,r=e.constructor;r&&c(r===Object||r===Function,"Mix EventEmitter into a class, not an instance"),n.hasOwnProperty(p)?u(n.__types,t):n.__types=n.__types?u({},n.__types,t):t,u(n,f)}var o=t("EventEmitter"),i=t("EventEmitterWithHolding"),a=t("EventHolder"),s=t("EventValidator"),u=t("copyProperties"),c=t("invariant"),l=t("keyOf"),p=l({__types:!0}),f={emit:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emit(e,t,n,r,o,i,a)},emitAndHold:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emitAndHold(e,t,n,r,o,i,a)},addListener:function(e,t,n){return this.__getEventEmitter().addListener(e,t,n)},once:function(e,t,n){return this.__getEventEmitter().once(e,t,n)},addRetroactiveListener:function(e,t,n){return this.__getEventEmitter().addRetroactiveListener(e,t,n)},addListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},addRetroactiveListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},removeAllListeners:function(){this.__getEventEmitter().removeAllListeners()},removeCurrentListener:function(){this.__getEventEmitter().removeCurrentListener()},releaseHeldEventType:function(e){this.__getEventEmitter().releaseHeldEventType(e)},__getEventEmitter:function(){if(!this.__eventEmitter){var e=new o;e=s.addValidation(e,this.__types);var t=new a;this.__eventEmitter=new i(e,t)}return this.__eventEmitter}};n.exports=r}),__d("EventEmitterWithHolding",[],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;nt.distance?1:0},p=function(e,t){return e.distance/t.length<.334},f=function(e,t){var n,r,o=[];for(n=0;n<=e.length;n++)o[n]=[n];for(r=1;r<=t.length;r++)o[0][r]=r;for(n=1;n<=e.length;n++)for(r=1;r<=t.length;r++){var i=e.charAt(n-1)===t.charAt(r-1)?0:1;o[n][r]=Math.min(o[n-1][r]+1,o[n][r-1]+1,o[n-1][r-1]+i),n>1&&r>1&&e.charAt(n-1)==t.charAt(r-2)&&e.charAt(n-2)==t.charAt(r-1)&&(o[n][r]=Math.min(o[n][r],o[n-2][r-2]+i))}return o[e.length][t.length]};n.exports=a}),__d("copyProperties",[],function(e,t,n){function r(e,t,n,r,o,i,a){if(e=e||{},__DEV__&&a)throw new Error("Too many arguments passed to copyProperties");for(var s,u=[t,n,r,o,i],c=0;u[c];){s=u[c++];for(var l in s)e[l]=s[l];s.hasOwnProperty&&s.hasOwnProperty("toString")&&"undefined"!=typeof s.toString&&e.toString!==s.toString&&(e.toString=s.toString)}return e}n.exports=r}),__d("TouchableWithoutFeedback",["React","react-timer-mixin/TimerMixin.js","Touchable","ensurePositiveDelayProps","onlyChild"],function(e,t,n){"use strict";var r=t("React"),o=t("react-timer-mixin/TimerMixin.js"),i=t("Touchable"),a=t("ensurePositiveDelayProps"),s=t("onlyChild"),u={top:20,left:20,right:20,bottom:30},c=r.createClass({displayName:"TouchableWithoutFeedback",mixins:[o,i.Mixin],propTypes:{accessible:r.PropTypes.bool,onPress:r.PropTypes.func,onPressIn:r.PropTypes.func,onPressOut:r.PropTypes.func,onLongPress:r.PropTypes.func,delayPressIn:r.PropTypes.number,delayPressOut:r.PropTypes.number,delayLongPress:r.PropTypes.number},getInitialState:function(){return this.touchableGetInitialState()},componentDidMount:function(){a(this.props)},componentWillReceiveProps:function(e){a(e)},touchableHandlePress:function(e){this.props.onPress&&this.props.onPress(e)},touchableHandleActivePressIn:function(e){this.props.onPressIn&&this.props.onPressIn(e)},touchableHandleActivePressOut:function(e){this.props.onPressOut&&this.props.onPressOut(e)},touchableHandleLongPress:function(e){this.props.onLongPress&&this.props.onLongPress(e)},touchableGetPressRectOffset:function(){return u},touchableGetHighlightDelayMS:function(){return this.props.delayPressIn||0},touchableGetLongPressDelayMS:function(){return 0===this.props.delayLongPress?0:this.props.delayLongPress||500},touchableGetPressOutDelayMS:function(){return this.props.delayPressOut||0},render:function(){return r.cloneElement(s(this.props.children),{accessible:this.props.accessible!==!1,testID:this.props.testID,onStartShouldSetResponder:this.touchableHandleStartShouldSetResponder,onResponderTerminationRequest:this.touchableHandleResponderTerminationRequest,onResponderGrant:this.touchableHandleResponderGrant,onResponderMove:this.touchableHandleResponderMove,onResponderRelease:this.touchableHandleResponderRelease,onResponderTerminate:this.touchableHandleResponderTerminate})}});n.exports=c}),__d("ensurePositiveDelayProps",["invariant"],function(e,t,n){"use strict";var r=t("invariant"),o=function(e){r(!(e.delayPressIn<0||e.delayPressOut<0||e.delayLongPress<0),"Touchable components cannot have negative delay properties")};n.exports=o}),__d("ToastAndroid",["warning"],function(e,t,n){"use strict";var r=t("warning"),o={show:function(){r(!1,"Cannot use ToastAndroid on iOS.")}};n.exports=o}),__d("ToolbarAndroid",["UnimplementedView"],function(e,t,n){"use strict";n.exports=t("UnimplementedView")}),__d("TouchableHighlight",["NativeMethodsMixin","React","ReactNativeViewAttributes","StyleSheet","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","View","cloneWithProps","ensureComponentIsNative","ensurePositiveDelayProps","keyOf","merge","onlyChild"],function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t1)for(var r=1;n>r;r++)t=arguments[r],t&&(e=(e?e+" ":"")+t);return e}n.exports=r}),__d("ensureComponentIsNative",["invariant"],function(e,t,n){"use strict";var r=t("invariant"),o=function(e){r(e&&"function"==typeof e.setNativeProps,"Touchable child must either be native or forward setNativeProps to a native component")};n.exports=o}),__d("TouchableNativeFeedback",["React","StyleSheet","Text","View"],function(e,t,n){"use strict";var r=t("React"),o=t("StyleSheet"),i=t("Text"),a=t("View"),s=r.createClass({displayName:"DummyTouchableNativeFeedback",render:function(){return r.createElement(a,{style:[u.container,this.props.style]},r.createElement(i,{style:u.info},"TouchableNativeFeedback is not supported on this platform!"))}}),u=o.create({container:{height:100,width:300,backgroundColor:"#ffbcbc",borderWidth:1,borderColor:"red",alignItems:"center",justifyContent:"center",margin:10},info:{color:"#333333",margin:20}});n.exports=s}),__d("TouchableOpacity",["Animated","NativeMethodsMixin","React","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","ensurePositiveDelayProps","flattenStyle","keyOf"],function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t=this._startTime+this._duration?(this._onUpdate(0===this._duration?this._toValue:this._fromValue+this._easing(1)*(this._toValue-this._fromValue)),void this.__debouncedOnEnd({finished:!0})):(this._onUpdate(this._fromValue+this._easing((e-this._startTime)/this._duration)*(this._toValue-this._fromValue)),void(this.__active&&(this._animationFrame=R(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,clearTimeout(this._timeout),window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(w),x=function(e){function t(e){o(this,t),c(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._deceleration=e.deceleration||.998,this._velocity=e.velocity}return r(t,e),l(t,[{key:"start",value:function(e,t,n){this.__active=!0,this._lastValue=e,this._fromValue=e,this._onUpdate=t,this.__onEnd=n,this._startTime=Date.now(),this._animationFrame=R(this.onUpdate.bind(this))}},{key:"onUpdate",value:function(){var e=Date.now(),t=this._fromValue+this._velocity/(1-this._deceleration)*(1-Math.exp(-(1-this._deceleration)*(e-this._startTime)));return this._onUpdate(t),Math.abs(this._lastValue-t)<.1?void this.__debouncedOnEnd({finished:!0}):(this._lastValue=t,void(this.__active&&(this._animationFrame=R(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(w),I=function(e){function t(e){o(this,t),c(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._overshootClamping=a(e.overshootClamping,!1),this._restDisplacementThreshold=a(e.restDisplacementThreshold,.001),this._restSpeedThreshold=a(e.restSpeedThreshold,.001),this._initialVelocity=e.velocity,this._lastVelocity=a(e.velocity,0),this._toValue=e.toValue;var n;void 0!==e.bounciness||void 0!==e.speed?(b(void 0===e.tension&&void 0===e.friction,"You can only define bounciness/speed or tension/friction but not both"),n=g.fromBouncinessAndSpeed(a(e.bounciness,8),a(e.speed,12))):n=g.fromOrigamiTensionAndFriction(a(e.tension,40),a(e.friction,7)),this._tension=n.tension,this._friction=n.friction}return r(t,e),l(t,[{key:"start",value:function(e,n,r,o){if(this.__active=!0,this._startPosition=e,this._lastPosition=this._startPosition,this._onUpdate=n,this.__onEnd=r,this._lastTime=Date.now(),o instanceof t){var i=o.getInternalState();this._lastPosition=i.lastPosition,this._lastVelocity=i.lastVelocity,this._lastTime=i.lastTime}void 0!==this._initialVelocity&&null!==this._initialVelocity&&(this._lastVelocity=this._initialVelocity),this.onUpdate()}},{key:"getInternalState",value:function(){return{lastPosition:this._lastPosition,lastVelocity:this._lastVelocity,lastTime:this._lastTime}}},{key:"onUpdate",value:function(){var e=this._lastPosition,t=this._lastVelocity,n=this._lastPosition,r=this._lastVelocity,o=64,i=Date.now();i>this._lastTime+o&&(i=this._lastTime+o);for(var a=1,s=Math.floor((i-this._lastTime)/a),u=0;s>u;++u){var c=a/1e3,l=t,p=this._tension*(this._toValue-n)-this._friction*r,n=e+l*c/2,r=t+p*c/2,f=r,h=this._tension*(this._toValue-n)-this._friction*r;n=e+f*c/2,r=t+h*c/2;var d=r,v=this._tension*(this._toValue-n)-this._friction*r;n=e+d*c/2,r=t+v*c/2;var m=r,g=this._tension*(this._toValue-n)-this._friction*r;n=e+d*c/2,r=t+v*c/2;var y=(l+2*(f+d)+m)/6,_=(p+2*(h+v)+g)/6;e+=y*c,t+=_*c}if(this._lastTime=i,this._lastPosition=e,this._lastVelocity=t,this._onUpdate(e),this.__active){var b=!1;this._overshootClamping&&0!==this._tension&&(b=this._startPositionthis._toValue:ethis._focusOffset}},{key:"getAnchorOffset",value:function(){return this._hasFocus?this._anchorOffset:null}},{key:"getFocusOffset",value:function(){return this._hasFocus?this._focusOffset:null}},{key:"getStartOffset",value:function(){return this._hasFocus?Math.min(this._anchorOffset,this._focusOffset):null}},{key:"getEndOffset",value:function(){return this._hasFocus?Math.max(this._anchorOffset,this._focusOffset):null}},{key:"overlaps",value:function(e,t){return this.hasFocus()&&this.getStartOffset()<=t&&e<=this.getEndOffset()}}]),e}();i(a,{blur:!0,focus:!0,update:!0}),n.exports=a}),__d("mixInEventEmitter",["EventEmitter","EventEmitterWithHolding","EventHolder","EventValidator","copyProperties","invariant","keyOf"],function(e,t,n){function r(e,t){c(t,"Must supply set of valid event types"),c(!this.__eventEmitter,"An active emitter is already mixed in");var n=e.prototype||e,r=e.constructor;r&&c(r===Object||r===Function,"Mix EventEmitter into a class, not an instance"),n.hasOwnProperty(p)?u(n.__types,t):n.__types=n.__types?u({},n.__types,t):t,u(n,f)}var o=t("EventEmitter"),i=t("EventEmitterWithHolding"),a=t("EventHolder"),s=t("EventValidator"),u=t("copyProperties"),c=t("invariant"),l=t("keyOf"),p=l({__types:!0}),f={emit:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emit(e,t,n,r,o,i,a)},emitAndHold:function(e,t,n,r,o,i,a){return this.__getEventEmitter().emitAndHold(e,t,n,r,o,i,a)},addListener:function(e,t,n){return this.__getEventEmitter().addListener(e,t,n)},once:function(e,t,n){return this.__getEventEmitter().once(e,t,n)},addRetroactiveListener:function(e,t,n){return this.__getEventEmitter().addRetroactiveListener(e,t,n)},addListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},addRetroactiveListenerMap:function(e,t){return this.__getEventEmitter().addListenerMap(e,t)},removeAllListeners:function(){this.__getEventEmitter().removeAllListeners()},removeCurrentListener:function(){this.__getEventEmitter().removeCurrentListener()},releaseHeldEventType:function(e){this.__getEventEmitter().releaseHeldEventType(e)},__getEventEmitter:function(){if(!this.__eventEmitter){var e=new o;e=s.addValidation(e,this.__types);var t=new a;this.__eventEmitter=new i(e,t)}return this.__eventEmitter}};n.exports=r}),__d("EventEmitterWithHolding",[],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;nt.distance?1:0},p=function(e,t){return e.distance/t.length<.334},f=function(e,t){var n,r,o=[];for(n=0;n<=e.length;n++)o[n]=[n];for(r=1;r<=t.length;r++)o[0][r]=r;for(n=1;n<=e.length;n++)for(r=1;r<=t.length;r++){var i=e.charAt(n-1)===t.charAt(r-1)?0:1;o[n][r]=Math.min(o[n-1][r]+1,o[n][r-1]+1,o[n-1][r-1]+i),n>1&&r>1&&e.charAt(n-1)==t.charAt(r-2)&&e.charAt(n-2)==t.charAt(r-1)&&(o[n][r]=Math.min(o[n][r],o[n-2][r-2]+i))}return o[e.length][t.length]};n.exports=a}),__d("copyProperties",[],function(e,t,n){function r(e,t,n,r,o,i,a){if(e=e||{},__DEV__&&a)throw new Error("Too many arguments passed to copyProperties");for(var s,u=[t,n,r,o,i],c=0;u[c];){s=u[c++];for(var l in s)e[l]=s[l];s.hasOwnProperty&&s.hasOwnProperty("toString")&&"undefined"!=typeof s.toString&&e.toString!==s.toString&&(e.toString=s.toString)}return e}n.exports=r}),__d("TouchableWithoutFeedback",["React","react-timer-mixin/TimerMixin.js","Touchable","ensurePositiveDelayProps","onlyChild"],function(e,t,n){"use strict";var r=t("React"),o=t("react-timer-mixin/TimerMixin.js"),i=t("Touchable"),a=t("ensurePositiveDelayProps"),s=t("onlyChild"),u={top:20,left:20,right:20,bottom:30},c=r.createClass({displayName:"TouchableWithoutFeedback",mixins:[o,i.Mixin],propTypes:{accessible:r.PropTypes.bool,onPress:r.PropTypes.func,onPressIn:r.PropTypes.func,onPressOut:r.PropTypes.func,onLongPress:r.PropTypes.func,delayPressIn:r.PropTypes.number,delayPressOut:r.PropTypes.number,delayLongPress:r.PropTypes.number},getInitialState:function(){return this.touchableGetInitialState()},componentDidMount:function(){a(this.props)},componentWillReceiveProps:function(e){a(e)},touchableHandlePress:function(e){this.props.onPress&&this.props.onPress(e)},touchableHandleActivePressIn:function(e){this.props.onPressIn&&this.props.onPressIn(e)},touchableHandleActivePressOut:function(e){this.props.onPressOut&&this.props.onPressOut(e)},touchableHandleLongPress:function(e){this.props.onLongPress&&this.props.onLongPress(e)},touchableGetPressRectOffset:function(){return u},touchableGetHighlightDelayMS:function(){return this.props.delayPressIn||0},touchableGetLongPressDelayMS:function(){return 0===this.props.delayLongPress?0:this.props.delayLongPress||500},touchableGetPressOutDelayMS:function(){return this.props.delayPressOut||0},render:function(){return r.cloneElement(s(this.props.children),{accessible:this.props.accessible!==!1,testID:this.props.testID,onStartShouldSetResponder:this.touchableHandleStartShouldSetResponder,onResponderTerminationRequest:this.touchableHandleResponderTerminationRequest,onResponderGrant:this.touchableHandleResponderGrant,onResponderMove:this.touchableHandleResponderMove,onResponderRelease:this.touchableHandleResponderRelease,onResponderTerminate:this.touchableHandleResponderTerminate})}});n.exports=c}),__d("ensurePositiveDelayProps",["invariant"],function(e,t,n){"use strict";var r=t("invariant"),o=function(e){r(!(e.delayPressIn<0||e.delayPressOut<0||e.delayLongPress<0),"Touchable components cannot have negative delay properties")};n.exports=o}),__d("ToastAndroid",["warning"],function(e,t,n){"use strict";var r=t("warning"),o={show:function(){r(!1,"Cannot use ToastAndroid on iOS.")}};n.exports=o}),__d("ToolbarAndroid",["UnimplementedView"],function(e,t,n){"use strict";n.exports=t("UnimplementedView")}),__d("TouchableHighlight",["NativeMethodsMixin","React","ReactNativeViewAttributes","StyleSheet","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","View","cloneWithProps","ensureComponentIsNative","ensurePositiveDelayProps","keyOf","merge","onlyChild"],function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t1)for(var r=1;n>r;r++)t=arguments[r],t&&(e=(e?e+" ":"")+t);return e}n.exports=r}),__d("ensureComponentIsNative",["invariant"],function(e,t,n){"use strict";var r=t("invariant"),o=function(e){r(e&&"function"==typeof e.setNativeProps,"Touchable child must either be native or forward setNativeProps to a native component")};n.exports=o}),__d("TouchableNativeFeedback",["React","StyleSheet","Text","View"],function(e,t,n){"use strict";var r=t("React"),o=t("StyleSheet"),i=t("Text"),a=t("View"),s=r.createClass({displayName:"DummyTouchableNativeFeedback",render:function(){return r.createElement(a,{style:[u.container,this.props.style]},r.createElement(i,{style:u.info},"TouchableNativeFeedback is not supported on this platform!"))}}),u=o.create({container:{height:100,width:300,backgroundColor:"#ffbcbc",borderWidth:1,borderColor:"red",alignItems:"center",justifyContent:"center",margin:10},info:{color:"#333333",margin:20}});n.exports=s}),__d("TouchableOpacity",["Animated","NativeMethodsMixin","React","react-timer-mixin/TimerMixin.js","Touchable","TouchableWithoutFeedback","ensurePositiveDelayProps","flattenStyle","keyOf"],function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t=this._startTime+this._duration?(this._onUpdate(0===this._duration?this._toValue:this._fromValue+this._easing(1)*(this._toValue-this._fromValue)),void this.__debouncedOnEnd({finished:!0})):(this._onUpdate(this._fromValue+this._easing((e-this._startTime)/this._duration)*(this._toValue-this._fromValue)),void(this.__active&&(this._animationFrame=R(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,clearTimeout(this._timeout),window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(w),x=function(e){function t(e){o(this,t),c(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._deceleration=e.deceleration||.998,this._velocity=e.velocity}return r(t,e),l(t,[{key:"start",value:function(e,t,n){this.__active=!0,this._lastValue=e,this._fromValue=e,this._onUpdate=t,this.__onEnd=n,this._startTime=Date.now(),this._animationFrame=R(this.onUpdate.bind(this))}},{key:"onUpdate",value:function(){var e=Date.now(),t=this._fromValue+this._velocity/(1-this._deceleration)*(1-Math.exp(-(1-this._deceleration)*(e-this._startTime)));return this._onUpdate(t),Math.abs(this._lastValue-t)<.1?void this.__debouncedOnEnd({finished:!0}):(this._lastValue=t,void(this.__active&&(this._animationFrame=R(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(w),I=function(e){function t(e){o(this,t),c(Object.getPrototypeOf(t.prototype),"constructor",this).call(this),this._overshootClamping=a(e.overshootClamping,!1),this._restDisplacementThreshold=a(e.restDisplacementThreshold,.001),this._restSpeedThreshold=a(e.restSpeedThreshold,.001),this._initialVelocity=e.velocity,this._lastVelocity=a(e.velocity,0),this._toValue=e.toValue;var n;void 0!==e.bounciness||void 0!==e.speed?(b(void 0===e.tension&&void 0===e.friction,"You can only define bounciness/speed or tension/friction but not both"),n=g.fromBouncinessAndSpeed(a(e.bounciness,8),a(e.speed,12))):n=g.fromOrigamiTensionAndFriction(a(e.tension,40),a(e.friction,7)),this._tension=n.tension,this._friction=n.friction}return r(t,e),l(t,[{key:"start",value:function(e,n,r,o){if(this.__active=!0,this._startPosition=e,this._lastPosition=this._startPosition,this._onUpdate=n,this.__onEnd=r,this._lastTime=Date.now(),o instanceof t){var i=o.getInternalState();this._lastPosition=i.lastPosition,this._lastVelocity=i.lastVelocity,this._lastTime=i.lastTime}void 0!==this._initialVelocity&&null!==this._initialVelocity&&(this._lastVelocity=this._initialVelocity),this.onUpdate()}},{key:"getInternalState",value:function(){return{lastPosition:this._lastPosition,lastVelocity:this._lastVelocity,lastTime:this._lastTime}}},{key:"onUpdate",value:function(){var e=this._lastPosition,t=this._lastVelocity,n=this._lastPosition,r=this._lastVelocity,o=64,i=Date.now();i>this._lastTime+o&&(i=this._lastTime+o);for(var a=1,s=Math.floor((i-this._lastTime)/a),u=0;s>u;++u){var c=a/1e3,l=t,p=this._tension*(this._toValue-n)-this._friction*r,n=e+l*c/2,r=t+p*c/2,f=r,h=this._tension*(this._toValue-n)-this._friction*r;n=e+f*c/2,r=t+h*c/2;var d=r,v=this._tension*(this._toValue-n)-this._friction*r;n=e+d*c/2,r=t+v*c/2;var m=r,g=this._tension*(this._toValue-n)-this._friction*r;n=e+d*c/2,r=t+v*c/2;var y=(l+2*(f+d)+m)/6,_=(p+2*(h+v)+g)/6;e+=y*c,t+=_*c}if(this._lastTime=i,this._lastPosition=e,this._lastVelocity=t,this._onUpdate(e),this.__active){var b=!1;this._overshootClamping&&0!==this._tension&&(b=this._startPositionthis._toValue:eo;o++)r[o]=arguments[o];var i=function(e,t,n){if("number"==typeof t)return b(e instanceof N,"Bad mapping of type "+typeof e+" for key "+n+", event value must map to AnimatedValue"),void e.setValue(t);b("object"==typeof e,"Bad mapping of type "+typeof e+" for key "+n),b("object"==typeof t,"Bad event of type "+typeof t+" for key "+n);for(var n in e)i(e[n],t[n],n)};e.forEach(function(e,t){i(e,r[t],"arg"+t)}),t&&t.listener&&t.listener.apply(null,r)}};n.exports={delay:z,sequence:U,parallel:q,stagger:G,decay:H,timing:B,spring:F,event:W,Value:N,ValueXY:D,__PropsOnlyForTests:j,View:s(_),Text:s(y),Image:s(f),createAnimatedComponent:s}}),__d("Interpolation",[],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t,n,r,o,i,a,s){var u=e;if(t>u){if("identity"===a)return u;"clamp"===a&&(u=t)}if(u>n){if("identity"===s)return u;"clamp"===s&&(u=n)}return r===o?r:t===n?t>=e?r:o:(t===-1/0?u=-u:1/0===n?u-=t:u=(u-t)/(n-t),u=i(u),r===-1/0?u=-u:1/0===o?u+=r:u=u*(o-r)+r,u)}function i(e){var t=e.outputRange;f(t.length>=2,"Bad output range"),a(t);var n=t[0].match(v).map(function(){return[]});t.forEach(function(e){e.match(v).forEach(function(e,t){n[t].push(+e)})});var r=t[0].match(v).map(function(t,r){return d.create(l({},e,{outputRange:n[r]}))});return function(e){var n=0;return t[0].replace(v,function(){return String(r[n++](e))})}}function a(e){for(var t=e[0].replace(v,""),n=1;n=e);++n);return n-1}function u(e){f(e.length>=2,"inputRange must have at least 2 elements");for(var t=1;t=e[t-1],"inputRange must be monotonically increasing "+e)}function c(e,t){f(t.length>=2,e+" must have at least 2 elements"),f(2!==t.length||t[0]!==-1/0||1/0!==t[1],e+"cannot be ]-infinity;+infinity[ "+t)}var l=Object.assign||function(e){for(var t=1;t0?1:0}},{key:"step1",value:function(e){return e>=1?1:0}},{key:"linear",value:function(e){return e}},{key:"ease",value:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){return s(e)})},{key:"quad",value:function(e){return e*e}},{key:"cubic",value:function(e){return e*e*e}},{key:"poly",value:function(e){return function(t){return Math.pow(t,e)}}},{key:"sin",value:function(e){return 1-Math.cos(e*Math.PI/2)}},{key:"circle",value:function(e){return 1-Math.sqrt(1-e*e)}},{key:"exp",value:function(e){return Math.pow(2,10*(e-1))}},{key:"elastic",value:function(e,t){var n,r=2*Math.PI;return arguments.length<2&&(t=.45),arguments.length?n=t/r*Math.asin(1/e):(e=1,n=t/4),function(o){return 1+e*Math.pow(2,-10*o)*Math.sin((o-n)*r/t)}}},{key:"back",value:function(e){return void 0===e&&(e=1.70158),function(t){return t*t*((e+1)*t-e)}}},{key:"bounce",value:function(e){return 1/2.75>e?7.5625*e*e:2/2.75>e?(e-=1.5/2.75,7.5625*e*e+.75):2.5/2.75>e?(e-=2.25/2.75,7.5625*e*e+.9375):(e-=2.625/2.75,7.5625*e*e+.984375)}},{key:"bezier",value:function(e,t,n,r,o){if(void 0===o){var a=500;o=1e3/60/a/4}return i(e,t,n,r,o)}},{key:"in",value:function(e){return e}},{key:"out",value:function(e){return function(t){return 1-e(1-t)}}},{key:"inOut",value:function(e){return function(t){return.5>t?e(2*t)/2:1-e(2*(1-t))/2}}}]),e}(),s=a.bezier(.42,0,1,1);n.exports=a}),__d("bezier",[],function(e,t,n){n.exports=function(e,t,n,r,o){var i=function(t){var r=1-t;return 3*r*r*t*e+3*r*t*t*n+t*t*t},a=function(e){var n=1-e;return 3*n*n*e*t+3*n*e*e*r+e*e*e},s=function(t){var r=1-t;return 3*(2*(t-1)*t+r*r)*e+3*(-t*t*t+2*r*t)*n};return function(e){var t,n,r,u,c,l,p=e;for(r=p,l=0;8>l;l++){if(u=i(r)-p,Math.abs(u)r)return a(t);if(r>n)return a(n);for(;n>t;){if(u=i(r),Math.abs(u-p)u?t=r:n=r,r=.5*(n-t)+t}return a(r)}}}),__d("SpringConfig",[],function(e,t,n){"use strict";function r(e){return 3.62*(e-30)+194}function o(e){return 3*(e-8)+25}function i(e,t){return{tension:r(e),friction:o(t)}}function a(e,t){function n(e,t,n){return(e-t)/(n-t)}function i(e,t,n){return t+e*(n-t)}function a(e,t,n){return e*n+(1-e)*t}function s(e,t,n){return a(2*e-e*e,t,n)}function u(e){return 7e-4*Math.pow(e,3)-.031*Math.pow(e,2)+.64*e+1.28}function c(e){return 44e-6*Math.pow(e,3)-.006*Math.pow(e,2)+.36*e+2}function l(e){return 4.5e-7*Math.pow(e,3)-332e-6*Math.pow(e,2)+.1078*e+5.84}function p(e){return 18>=e?u(e):e>18&&44>=e?c(e):l(e)}var f=n(e/1.7,0,20);f=i(f,0,.8);var h=n(t/1.7,0,20),d=i(h,.5,200),v=s(f,p(d),.01);return{tension:r(d),friction:o(v)}}n.exports={fromOrigamiTensionAndFriction:i,fromBouncinessAndSpeed:a}}),__d("requestAnimationFrame",["emptyFunction","nativeRequestAnimationFrame"],function(e,t,n){var r=t("emptyFunction"),o=t("nativeRequestAnimationFrame"),i=0,a=o||function(t){var n=Date.now(),r=Math.max(0,16-(n-i));return i=n+r,e.setTimeout(function(){t(Date.now())},r)};a(r),n.exports=a}),__d("nativeRequestAnimationFrame",[],function(e,t,n){var r=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame;n.exports=r}),__d("WebView",["ActivityIndicatorIOS","EdgeInsetsPropType","React","StyleSheet","Text","View","invariant","keyMirror","requireNativeComponent","NativeModules"],function(e,t,n){"use strict";var r=t("ActivityIndicatorIOS"),o=t("EdgeInsetsPropType"),i=t("React"),a=t("StyleSheet"),s=t("Text"),u=t("View"),c=t("invariant"),l=t("keyMirror"),p=t("requireNativeComponent"),f=i.PropTypes,h=t("NativeModules").WebViewManager,d="rgba(255,255,255,0.8)",v="webview",m=l({IDLE:null,LOADING:null,ERROR:null}),g={click:h.NavigationType.LinkClicked,formsubmit:h.NavigationType.FormSubmitted,backforward:h.NavigationType.BackForward,reload:h.NavigationType.Reload,formresubmit:h.NavigationType.FormResubmitted,other:h.NavigationType.Other},y=h.JSNavigationScheme,_=function(){return i.createElement(u,{style:E.loadingView},i.createElement(r,null))},b=function(e,t,n){return i.createElement(u,{style:E.errorContainer},i.createElement(s,{style:E.errorTextTitle},"Error loading page"),i.createElement(s,{style:E.errorText},"Domain: "+e),i.createElement(s,{style:E.errorText},"Error Code: "+t),i.createElement(s,{style:E.errorText},"Description: "+n))},S=i.createClass({displayName:"WebView",statics:{JSNavigationScheme:y,NavigationType:g},propTypes:{url:f.string,html:f.string,renderError:f.func,renderLoading:f.func,bounces:f.bool,scrollEnabled:f.bool,automaticallyAdjustContentInsets:f.bool,contentInset:o,onNavigationStateChange:f.func,startInLoadingState:f.bool,style:u.propTypes.style,javaScriptEnabledAndroid:f.bool,injectedJavaScript:f.string,scalesPageToFit:f.bool},getInitialState:function(){return{viewState:m.IDLE,lastErrorEvent:null,startInLoadingState:!0}},componentWillMount:function(){this.props.startInLoadingState&&this.setState({viewState:m.LOADING})},render:function(){var e=null;if(this.state.viewState===m.LOADING)e=(this.props.renderLoading||_)();else if(this.state.viewState===m.ERROR){var t=this.state.lastErrorEvent;c(null!=t,"lastErrorEvent expected to be non-null"),e=(this.props.renderError||b)(t.domain,t.code,t.description)}else this.state.viewState!==m.IDLE&&console.error("RCTWebView invalid state encountered: "+this.state.loading);var n=[E.container,E.webView,this.props.style];(this.state.viewState===m.LOADING||this.state.viewState===m.ERROR)&&n.push(E.hidden);var r=i.createElement(R,{ref:v,key:"webViewKey",style:n,url:this.props.url,html:this.props.html,injectedJavaScript:this.props.injectedJavaScript,bounces:this.props.bounces,scrollEnabled:this.props.scrollEnabled,contentInset:this.props.contentInset,automaticallyAdjustContentInsets:this.props.automaticallyAdjustContentInsets,onLoadingStart:this.onLoadingStart,onLoadingFinish:this.onLoadingFinish,onLoadingError:this.onLoadingError,scalesPageToFit:this.props.scalesPageToFit});return i.createElement(u,{style:E.container},r,e)},goForward:function(){h.goForward(this.getWebViewHandle())},goBack:function(){h.goBack(this.getWebViewHandle())},reload:function(){h.reload(this.getWebViewHandle())},updateNavigationState:function(e){this.props.onNavigationStateChange&&this.props.onNavigationStateChange(e.nativeEvent)},getWebViewHandle:function(){return i.findNodeHandle(this.refs[v])},onLoadingStart:function(e){this.updateNavigationState(e)},onLoadingError:function(e){e.persist(),console.error("Encountered an error loading page",e.nativeEvent),this.setState({lastErrorEvent:e.nativeEvent,viewState:m.ERROR})},onLoadingFinish:function(e){this.setState({viewState:m.IDLE}),this.updateNavigationState(e)}}),R=p("RCTWebView",S),E=a.create({container:{flex:1},errorContainer:{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:d},errorText:{fontSize:14,textAlign:"center",marginBottom:2},errorTextTitle:{fontSize:15,fontWeight:"500",marginBottom:10},hidden:{height:0,flex:0},loadingView:{backgroundColor:d,flex:1,justifyContent:"center",alignItems:"center"},webView:{backgroundColor:"#ffffff"}});n.exports=S}),__d("ActionSheetIOS",["NativeModules","invariant"],function(e,t,n){"use strict";var r=t("NativeModules").ActionSheetManager,o=t("invariant"),i={showActionSheetWithOptions:function(e,t){o("object"==typeof e&&null!==e,"Options must a valid object"),o("function"==typeof t,"Must provide a valid callback"),r.showActionSheetWithOptions(e,function(){},t)},showShareActionSheetWithOptions:function(e,t,n){o("object"==typeof e&&null!==e,"Options must a valid object"),o("function"==typeof t,"Must provide a valid failureCallback"),o("function"==typeof n,"Must provide a valid successCallback"),r.showShareActionSheetWithOptions(e,t,n)}};n.exports=i}),__d("AdSupportIOS",["NativeModules"],function(e,t,n){"use strict";var r=t("NativeModules").AdSupport;n.exports={getAdvertisingId:function(e,t){r.getAdvertisingId(e,t)},getAdvertisingTrackingEnabled:function(e,t){r.getAdvertisingTrackingEnabled(e,t)}}}),__d("AlertIOS",["NativeModules","invariant"],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;ns.get("window").height/2?"top":"bottom",selection:r.length-1,hierarchy:r,inspected:{style:i.style||{},frame:t}})}},{key:"setPerfing",value:function(e){this.setState({perfing:e,inspecting:!1,inspected:null})}},{key:"setInspecting",value:function(e){this.setState({inspecting:e,inspected:null})}},{key:"render",value:function(){var e="bottom"===this.state.panelPos?{bottom:0}:{top:0};return p.createElement(d,{style:m.container,pointerEvents:"box-none"},this.state.inspecting&&p.createElement(u,{rootTag:this.props.rootTag,inspected:this.state.inspected,inspectedViewTag:this.props.inspectedViewTag,onTouchInstance:this.onTouchInstance.bind(this)}),p.createElement(d,{style:[m.panelContainer,e]},p.createElement(c,{devtoolsIsOpen:!!this.state.devtoolsAgent,inspecting:this.state.inspecting,perfing:this.state.perfing,setPerfing:this.setPerfing.bind(this),setInspecting:this.setInspecting.bind(this),inspected:this.state.inspected,hierarchy:this.state.hierarchy,selection:this.state.selection,setSelection:this.setSelection.bind(this)})))}}]),t}(p.Component),m=f.create({container:{position:"absolute",backgroundColor:"transparent",top:0,left:0,right:0,bottom:0},panelContainer:{position:"absolute",left:0,right:0}});n.exports=v}),__d("InspectorOverlay",["Dimensions","InspectorUtils","React","StyleSheet","NativeModules","View","ElementBox"],function(e,t,n){"use strict";var r=t("Dimensions"),o=t("InspectorUtils"),i=t("React"),a=t("StyleSheet"),s=t("NativeModules").UIManager,u=t("View"),c=t("ElementBox"),l=i.PropTypes,p=i.createClass({displayName:"InspectorOverlay",propTypes:{inspected:l.shape({frame:l.object,style:l.any}),inspectedViewTag:l.number,onTouchInstance:l.func.isRequired},findViewForTouchEvent:function(e){var t=this,n=e.nativeEvent.touches[0],r=n.locationX,i=n.locationY;s.findSubviewIn(this.props.inspectedViewTag,[r,i],function(e,n,r,a,s){var u=o.findInstanceByNativeTag(t.props.rootTag,e);u&&t.props.onTouchInstance(u,{left:n,top:r,width:a,height:s},i)})},shouldSetResponser:function(e){return this.findViewForTouchEvent(e),!0},render:function(){var e=null;return this.props.inspected&&(e=i.createElement(c,{frame:this.props.inspected.frame,style:this.props.inspected.style})),i.createElement(u,{onStartShouldSetResponder:this.shouldSetResponser,onResponderMove:this.findViewForTouchEvent,style:[f.inspector,{height:r.get("window").height}]},e)}}),f=a.create({inspector:{backgroundColor:"transparent",position:"absolute",left:0,top:0,right:0}});n.exports=p}),__d("ElementBox",["React","View","StyleSheet","BorderBox","resolveBoxStyle","flattenStyle"],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var i=function(){function e(e,t){for(var n=0;n.5;e.dismissalSpring.setEndValue(o?1:0)}}})},render:function(){var e,t=this;return b.get(this.props.warning)>1&&(e=c.createElement(p,{style:x.bold},"(",b.get(this.props.warning),")"," ")),c.createElement(h,o({style:x.warningBox,ref:function(e){t.container=e}},this.panGesture.panHandlers),c.createElement(f,{onPress:this.props.onOpened},c.createElement(p,{style:x.warningText,numberOfLines:2,ref:function(e){t.text=e}},e,this.props.warning)),c.createElement(h,{ref:function(e){t.closeButton=e},style:x.closeButton},c.createElement(f,{onPress:function(){t.dismissalSpring.setEndValue(1)}},c.createElement(p,{style:x.closeButtonText},"✕"))))}}),T=c.createClass({displayName:"WarningBoxOpened",render:function(){var e;return b.get(this.props.warning)>1&&(e=c.createElement(p,{style:x.bold},"(",b.get(this.props.warning),")"," ")),c.createElement(f,{activeOpacity:.9,onPress:this.props.onClose,style:x.yellowBox},c.createElement(p,{style:x.yellowBoxText},e,this.props.warning),c.createElement(h,{style:x.yellowBoxButtons},c.createElement(f,{onPress:this.props.onDismissed,style:x.yellowBoxButton},c.createElement(p,{style:x.yellowBoxButtonText},"Dismiss")),c.createElement(f,{onPress:this.props.onIgnored,style:x.yellowBoxButton},c.createElement(p,{style:x.yellowBoxButtonText},"Ignore"))))}}),C=!0,O=c.createClass({displayName:"WarningBox",getInitialState:function(){return{totalWarningCount:R,openWarning:null}},componentWillMount:function(){console.yellowBoxResetIgnored&&(i.setItem(y,"[]",function(e){e&&console.warn("Could not reset ignored warnings.",e)}),S=[])},componentDidMount:function(){d(C,"There can only be one WarningBox"),C=!1,E.addListener("count",this._onWarningCount)},componentWillUnmount:function(){E.removeAllListeners(),C=!0},_onWarningCount:function(e){var t=this;setImmediate(function(){t.setState({totalWarningCount:e})})},_onDismiss:function(e){b["delete"](e),this.setState({openWarning:null})},render:function(){var e=this;if(0===b.size)return c.createElement(h,null);if(this.state.openWarning)return c.createElement(T,{warning:this.state.openWarning,onClose:function(){e.setState({openWarning:null})},onDismissed:this._onDismiss.bind(this,this.state.openWarning),onIgnored:function(){S.push(e.state.openWarning),r(),e._onDismiss(e.state.openWarning)}});var t=[];return b.forEach(function(n,r){t.push(c.createElement(w,{key:r,onOpened:function(){e.setState({openWarning:r})},onDismissed:e._onDismiss.bind(e,r),warning:r}))}),c.createElement(h,{style:x.warningContainer},t)}}),x=l.create({bold:{fontWeight:"bold"},closeButton:{position:"absolute",right:0,height:46,width:46},closeButtonText:{color:"white",fontSize:32,position:"relative",left:8},warningContainer:{position:"absolute",left:0,right:0,bottom:0},warningBox:{position:"relative",backgroundColor:"rgba(171, 124, 36, 0.9)",flex:1,height:46},warningText:{color:"white",position:"absolute",left:0,marginLeft:15,marginRight:46,top:7},yellowBox:{backgroundColor:"rgba(171, 124, 36, 0.9)",position:"absolute",left:0,right:0,top:0,bottom:0,padding:15,paddingTop:35},yellowBoxText:{color:"white",fontSize:20},yellowBoxButtons:{flexDirection:"row",position:"absolute",bottom:0},yellowBoxButton:{flex:1,padding:25},yellowBoxButtonText:{color:"white",fontSize:16}});n.exports=O}),__d("AsyncStorage",["NativeModules"],function(e,t,n){"use strict";function r(e){if(!e)return null;var t=new Error(e.message);return t.key=e.key,t}var o=t("NativeModules"),i=o.AsyncLocalStorage,a=o.AsyncRocksDBStorage,s=a||i,u={getItem:function(e,t){return new Promise(function(n,o){s.multiGet([e],function(e,i){var a=i&&i[0]&&i[0][1]?i[0][1]:null;t&&t(e&&r(e[0])||null,a),e?o(r(e[0])):n(a)})})},setItem:function(e,t,n){return new Promise(function(o,i){s.multiSet([[e,t]],function(e){n&&n(e&&r(e[0])||null),e?i(r(e[0])):o(null)})})},removeItem:function(e,t){return new Promise(function(n,o){s.multiRemove([e],function(e){t&&t(e&&r(e[0])||null),e?o(r(e[0])):n(null)})})},mergeItem:function(e,t,n){return new Promise(function(o,i){s.multiMerge([[e,t]],function(e){n&&n(e&&r(e[0])||null),e?i(r(e[0])):o(null)})})},clear:function(e){return new Promise(function(t,n){s.clear(function(o){e&&e(r(o)),o&&r(o)?n(r(o)):t(null)})})},getAllKeys:function(e){return new Promise(function(t,n){s.getAllKeys(function(o,i){e&&e(r(o),i),o?n(r(o)):t(i)})})},multiGet:function(e,t){return new Promise(function(n,o){s.multiGet(e,function(e,i){var a=e&&e.map(function(e){return r(e)})||null;t&&t(a,i),e?o(a):n(i)})})},multiSet:function(e,t){return new Promise(function(n,o){s.multiSet(e,function(e){var i=e&&e.map(function(e){return r(e)})||null;t&&t(i),e?o(i):n(null)})})},multiRemove:function(e,t){return new Promise(function(n,o){s.multiRemove(e,function(e){var i=e&&e.map(function(e){return r(e)})||null;t&&t(i),e?o(i):n(null)})})},multiMerge:function(e,t){return new Promise(function(n,o){s.multiMerge(e,function(e){var i=e&&e.map(function(e){return r(e)})||null;t&&t(i),e?o(i):n(null)})})}};s.multiMerge||(delete u.mergeItem,delete u.multiMerge),n.exports=u}),__d("setupDevtools",["flattenStyle","ReactCurrentOwner","ReactInstanceHandles","ReactNativeMount","ReactReconciler","ReactNativeTextComponent"],function(global,require,module,exports){"use strict";function setupDevtools(){function tryToConnect(){ws.send("attach:agent");var e=setInterval(function(){return ws.send("attach:agent")},500);ws.onmessage=function(t){0===t.data.indexOf("eval:")&&(clearInterval(e),initialize(t.data.slice("eval:".length)))}}function initialize(text){try{eval(text)}catch(e){return void console.error("Failed to eval"+e.message)}window.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject({CurrentOwner:require("ReactCurrentOwner"),InstanceHandles:require("ReactInstanceHandles"),Mount:require("ReactNativeMount"),Reconciler:require("ReactReconciler"),TextComponent:require("ReactNativeTextComponent")}),ws.onmessage=handleMessage}function handleMessage(e){var t;try{t=JSON.parse(e.data)}catch(n){return console.error("failed to parse json: "+e.data)}return t.$close||t.$error?(closeListeners.forEach(function(e){return e()}),window.__REACT_DEVTOOLS_GLOBAL_HOOK__.emit("shutdown"),void tryToConnect()):void(t.$open||messageListeners.forEach(function(e){try{e(t)}catch(n){throw console.log(t),n}}))}var messageListeners=[],closeListeners=[],ws=new window.WebSocket("ws://localhost:8081/devtools"),FOR_BACKEND={resolveRNStyle:require("flattenStyle"),wall:{listen:function(e){messageListeners.push(e)},onClose:function(e){closeListeners.push(e)},send:function(e){ws.send(JSON.stringify(e))}}};ws.onclose=function(){console.warn("devtools socket closed"),closeListeners.forEach(function(e){return e()})},ws.onerror=function(e){console.warn("devtools socket errored",e),closeListeners.forEach(function(e){return e()})},ws.onopen=function(){tryToConnect()}}module.exports=setupDevtools}),__d("RCTRenderingPerf",["ReactDefaultPerf","invariant"],function(e,t,n){"use strict";var r=t("ReactDefaultPerf"),o=t("invariant"),i=[],a=!1,s={toggle:function(){console.log("Render perfomance measurements enabled"),a=!0},start:function(){a&&(r.start(),i.forEach(function(e){return e.start()}))},stop:function(){if(a){r.stop(),r.printInclusive(),r.printWasted();for(var e=0,t=0,n=r.getLastMeasurements(),o=0;o component":e.componentName,"Inclusive time (ms)":r(e.time),Instances:e.count}})),console.log("Total time:",a.getTotalTime(e).toFixed(2)+" ms")},getMeasurementsSummaryMap:function(e){var t=a.getInclusiveSummary(e,!0);return t.map(function(e){return{"Owner > component":e.componentName,"Wasted time (ms)":e.time,Instances:e.count}})},printWasted:function(e){e=e||l._allMeasurements,console.table(l.getMeasurementsSummaryMap(e)),console.log("Total time:",a.getTotalTime(e).toFixed(2)+" ms")},printDOM:function(e){e=e||l._allMeasurements;var t=a.getDOMSummary(e);console.table(t.map(function(e){var t={};return t[i.ID_ATTRIBUTE_NAME]=e.id,t.type=e.type,t.args=JSON.stringify(e.args),t})),console.log("Total time:",a.getTotalTime(e).toFixed(2)+" ms")},_recordWrite:function(e,t,n,r){var o=l._allMeasurements[l._allMeasurements.length-1].writes;o[e]=o[e]||[],o[e].push({type:t,time:n,args:r})},measure:function(e,t,n){return function(){for(var r=arguments.length,i=Array(r),a=0;r>a;a++)i[a]=arguments[a];var u,p,f;if("_renderNewRootComponent"===t||"flushBatchedUpdates"===t)return l._allMeasurements.push({exclusive:{},inclusive:{},render:{},counts:{},writes:{},displayNames:{},totalTime:0}),f=c(),p=n.apply(this,i),l._allMeasurements[l._allMeasurements.length-1].totalTime=c()-f,p;if("_mountImageIntoNode"===t||"ReactDOMIDOperations"===e){if(f=c(),p=n.apply(this,i),u=c()-f,"_mountImageIntoNode"===t){var h=s.getID(i[1]);l._recordWrite(h,t,u,i[0])}else"dangerouslyProcessChildrenUpdates"===t?i[0].forEach(function(e){var t={};null!==e.fromIndex&&(t.fromIndex=e.fromIndex),null!==e.toIndex&&(t.toIndex=e.toIndex),null!==e.textContent&&(t.textContent=e.textContent),null!==e.markupIndex&&(t.markup=i[1][e.markupIndex]),l._recordWrite(e.parentID,e.type,u,t)}):l._recordWrite(i[0],t,u,Array.prototype.slice.call(i,1));return p}if("ReactCompositeComponent"!==e||"mountComponent"!==t&&"updateComponent"!==t&&"_renderValidatedComponent"!==t)return n.apply(this,i);if("string"==typeof this._currentElement.type)return n.apply(this,i);var d="mountComponent"===t?i[0]:this._rootNodeID,v="_renderValidatedComponent"===t,m="mountComponent"===t,g=l._mountStack,y=l._allMeasurements[l._allMeasurements.length-1];if(v?o(y.counts,d,1):m&&g.push(0),f=c(),p=n.apply(this,i),u=c()-f,v)o(y.render,d,u);else if(m){var _=g.pop();g[g.length-1]+=u,o(y.exclusive,d,u-_),o(y.inclusive,d,u)}else o(y.inclusive,d,u);return y.displayNames[d]={current:this.getName(),owner:this._currentElement._owner?this._currentElement._owner.getName():""},p}}};n.exports=l}),__d("DOMProperty",["invariant"],function(e,t,n){"use strict";function r(e,t){return(e&t)===t}var o=t("invariant"),i={MUST_USE_ATTRIBUTE:1,MUST_USE_PROPERTY:2,HAS_SIDE_EFFECTS:4,HAS_BOOLEAN_VALUE:8,HAS_NUMERIC_VALUE:16,HAS_POSITIVE_NUMERIC_VALUE:48,HAS_OVERLOADED_BOOLEAN_VALUE:64,injectDOMPropertyConfig:function(e){var t=i,n=e.Properties||{},a=e.DOMAttributeNamespaces||{},u=e.DOMAttributeNames||{},c=e.DOMPropertyNames||{},l=e.DOMMutationMethods||{};e.isCustomAttribute&&s._isCustomAttributeFunctions.push(e.isCustomAttribute);for(var p in n){o(!s.properties.hasOwnProperty(p),"injectDOMPropertyConfig(...): You're trying to inject DOM property '%s' which has already been injected. You may be accidentally injecting the same DOM property config twice, or you may be injecting two configs that have conflicting property names.",p);var f=p.toLowerCase(),h=n[p],d={attributeName:f,attributeNamespace:null,propertyName:p,mutationMethod:null,mustUseAttribute:r(h,t.MUST_USE_ATTRIBUTE),mustUseProperty:r(h,t.MUST_USE_PROPERTY),hasSideEffects:r(h,t.HAS_SIDE_EFFECTS),hasBooleanValue:r(h,t.HAS_BOOLEAN_VALUE),hasNumericValue:r(h,t.HAS_NUMERIC_VALUE),hasPositiveNumericValue:r(h,t.HAS_POSITIVE_NUMERIC_VALUE),hasOverloadedBooleanValue:r(h,t.HAS_OVERLOADED_BOOLEAN_VALUE)};if(o(!d.mustUseAttribute||!d.mustUseProperty,"DOMProperty: Cannot require using both attribute and property: %s",p),o(d.mustUseProperty||!d.hasSideEffects,"DOMProperty: Properties that have side effects must use property: %s",p),o(d.hasBooleanValue+d.hasNumericValue+d.hasOverloadedBooleanValue<=1,"DOMProperty: Value can be one of boolean, overloaded boolean, or numeric value, but not a combination: %s",p),__DEV__&&(s.getPossibleStandardName[f]=p),u.hasOwnProperty(p)){var v=u[p];d.attributeName=v,__DEV__&&(s.getPossibleStandardName[v]=p)}a.hasOwnProperty(p)&&(d.attributeNamespace=a[p]),c.hasOwnProperty(p)&&(d.propertyName=c[p]),l.hasOwnProperty(p)&&(d.mutationMethod=l[p]),s.properties[p]=d}}},a={},s={ID_ATTRIBUTE_NAME:"data-reactid",properties:{},getPossibleStandardName:__DEV__?{}:null,_isCustomAttributeFunctions:[],isCustomAttribute:function(e){for(var t=0;t=c&&s.push(n[t]);return s.sort(function(e,t){return t.exclusive-e.exclusive}),s}function a(e,t){for(var n,r={},o=0;o "+f.current,r[n]=r[n]||{componentName:n,time:0,count:0},a.inclusive[p]&&(r[n].time+=a.inclusive[p]),a.counts[p]&&(r[n].count+=a.counts[p])}}var h=[];for(n in r)r[n].time>=c&&h.push(r[n]);return h.sort(function(e,t){return t.time-e.time}),h}function s(e){var t={},n=Object.keys(e.writes),r=u({},e.exclusive,e.inclusive);for(var o in r){for(var i=!1,a=0;a0&&(t[o]=!0)}return t}var u=t("Object.assign"),c=1.2,l={_mountImageIntoNode:"set innerHTML",INSERT_MARKUP:"set innerHTML",MOVE_EXISTING:"move",REMOVE_NODE:"remove",TEXT_CONTENT:"set textContent",updatePropertyByID:"update attribute",deletePropertyByID:"delete attribute",updateStylesByID:"update styles",updateInnerHTMLByID:"set innerHTML",dangerouslyReplaceNodeWithMarkupByID:"replace"},p={getExclusiveSummary:i,getInclusiveSummary:a,getDOMSummary:o,getTotalTime:r};n.exports=p}),__d("ReactMount",["DOMProperty","ReactBrowserEventEmitter","ReactCurrentOwner","ReactElement","ReactEmptyComponent","ReactInstanceHandles","ReactInstanceMap","ReactMarkupChecksum","ReactPerf","ReactReconciler","ReactUpdateQueue","ReactUpdates","emptyObject","containsNode","instantiateReactComponent","invariant","setInnerHTML","shouldUpdateReactComponent","validateDOMNesting","warning"],function(e,t,n){"use strict";function r(e,t){for(var n=Math.min(e.length,t.length),r=0;n>r;r++)if(e.charAt(r)!==t.charAt(r))return r;return e.length===t.length?-1:n}function o(e){return e?e.nodeType===U?e.documentElement:e.firstChild:null}function i(e){var t=o(e);return t&&J.getID(t)}function a(e){var t=s(e);if(t)if(B.hasOwnProperty(t)){var n=B[t];n!==e&&(M(!p(n,t),"ReactMount: Two valid but unequal nodes with the same `%s`: %s",F,t),B[t]=e)}else B[t]=e;return t}function s(e){return e&&e.getAttribute&&e.getAttribute(F)||""}function u(e,t){var n=s(e);n!==t&&delete B[n],e.setAttribute(F,t),B[t]=e}function c(e){return B.hasOwnProperty(e)&&p(B[e],e)||(B[e]=J.findReactNodeByID(e)),B[e]}function l(e){var t=w.get(e)._rootNodeID;return R.isNullComponentID(t)?null:(B.hasOwnProperty(t)&&p(B[t],t)||(B[t]=J.findReactNodeByID(t)),B[t])}function p(e,t){if(e){M(s(e)===t,"ReactMount: Unexpected modification of `%s`",F);var n=J.findReactContainerForID(t);if(n&&N(n,e))return!0}return!1}function f(e){delete B[e]}function h(e){var t=B[e];return t&&p(t,e)?void(K=t):!1}function d(e){K=null,E.traverseAncestors(e,h);var t=K;return K=null,t}function v(e,t,n,r,o,i){if(__DEV__){i===P&&(i={});var a=n.nodeName.toLowerCase();i[j.ancestorInfoContextKey]=j.updatedAncestorInfo(null,a,null)}var s=O.mountComponent(e,t,r,i);e._renderedComponent._topLevelWrapper=e,J._mountImageIntoNode(s,n,o)}function m(e,t,n,r,o){var i=I.ReactReconcileTransaction.getPooled();i.perform(v,null,e,t,n,i,r,o),I.ReactReconcileTransaction.release(i)}function g(e,t){for(O.unmountComponent(e),t.nodeType===U&&(t=t.documentElement);t.lastChild;)t.removeChild(t.lastChild)}var y=t("DOMProperty"),_=t("ReactBrowserEventEmitter"),b=t("ReactCurrentOwner"),S=t("ReactElement"),R=t("ReactEmptyComponent"),E=t("ReactInstanceHandles"),w=t("ReactInstanceMap"),T=t("ReactMarkupChecksum"),C=t("ReactPerf"),O=t("ReactReconciler"),x=t("ReactUpdateQueue"),I=t("ReactUpdates"),P=t("emptyObject"),N=t("containsNode"),D=t("instantiateReactComponent"),M=t("invariant"),A=t("setInnerHTML"),k=t("shouldUpdateReactComponent"),j=t("validateDOMNesting"),L=t("warning"),V=E.SEPARATOR,F=y.ID_ATTRIBUTE_NAME,B={},H=1,U=9,q=11,z={},G={};if(__DEV__)var W={};var Y=[],K=null,X=function(){};X.prototype.render=function(){return this.props};var J={_instancesByReactRootID:z,scrollMonitor:function(e,t){t()},_updateRootComponent:function(e,t,n,r){return J.scrollMonitor(n,function(){x.enqueueElementInternal(e,t),r&&x.enqueueCallbackInternal(e,r)}),__DEV__&&(W[i(n)]=o(n)),e},_registerComponent:function(e,t){M(t&&(t.nodeType===H||t.nodeType===U||t.nodeType===q),"_registerComponent(...): Target container is not a DOM element."),_.ensureScrollValueMonitoring();var n=J.registerContainer(t);return z[n]=e,n},_renderNewRootComponent:function(e,t,n,r){L(null==b.current,"_renderNewRootComponent(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",b.current&&b.current.getName()||"ReactCompositeComponent");var i=D(e,null),a=J._registerComponent(i,t);return I.batchedUpdates(m,i,a,t,n,r),__DEV__&&(W[a]=o(t)),i},renderSubtreeIntoContainer:function(e,t,n,r){return M(null!=e&&null!=e._reactInternalInstance,"parentComponent must be a valid React Component"),J._renderSubtreeIntoContainer(e,t,n,r)},_renderSubtreeIntoContainer:function(e,t,n,r){M(S.isValidElement(t),"React.render(): Invalid component element.%s","string"==typeof t?" Instead of passing an element string, make sure to instantiate it by passing it to React.createElement.":"function"==typeof t?" Instead of passing a component class, make sure to instantiate it by passing it to React.createElement.":null!=t&&void 0!==t.props?" This may be caused by unintentionally loading two independent copies of React.":""),L(!n||!n.tagName||"BODY"!==n.tagName.toUpperCase(),"render(): Rendering components directly into document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try rendering into a container element created for your app.");var a=new S(X,null,null,null,t),s=z[i(n)];if(s){var u=s._currentElement,c=u.props;if(k(c,t))return J._updateRootComponent(s,a,n,r)._renderedComponent.getPublicInstance();J.unmountComponentAtNode(n)}var l=o(n),p=l&&J.isRenderedByReact(l);if(__DEV__&&(!p||l.nextSibling))for(var f=l;f;){if(J.isRenderedByReact(f)){L(!1,"render(): Target node has markup rendered by React, but there are unrelated nodes as well. This is most commonly caused by white-space inserted around server-rendered markup.");break}f=f.nextSibling}var h=p&&!s,d=J._renderNewRootComponent(a,n,h,null!=e?e._reactInternalInstance._processChildContext(e._reactInternalInstance._context):P)._renderedComponent.getPublicInstance();return r&&r.call(d),d},render:function(e,t,n){return J._renderSubtreeIntoContainer(null,e,t,n)},registerContainer:function(e){var t=i(e);return t&&(t=E.getReactRootIDFromNodeID(t)),t||(t=E.createReactRootID()),G[t]=e,t},unmountComponentAtNode:function(e){L(null==b.current,"unmountComponentAtNode(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",b.current&&b.current.getName()||"ReactCompositeComponent"),M(e&&(e.nodeType===H||e.nodeType===U||e.nodeType===q),"unmountComponentAtNode(...): Target container is not a DOM element.");var t=i(e),n=z[t];return n?(I.batchedUpdates(g,n,e),delete z[t],delete G[t],__DEV__&&delete W[t],!0):!1},findReactContainerForID:function(e){var t=E.getReactRootIDFromNodeID(e),n=G[t];if(__DEV__){var r=W[t];if(r&&r.parentNode!==n){L(s(r)===t,"ReactMount: Root element ID differed from reactRootID.");var o=n.firstChild;o&&t===s(o)?W[t]=o:L(!1,"ReactMount: Root element has been removed from its original container. New container: %s",r.parentNode)}}return n},findReactNodeByID:function(e){var t=J.findReactContainerForID(e);return J.findComponentRoot(t,e)},isRenderedByReact:function(e){if(1!==e.nodeType)return!1;var t=J.getID(e);return t?t.charAt(0)===V:!1},getFirstReactDOM:function(e){for(var t=e;t&&t.parentNode!==t;){if(J.isRenderedByReact(t))return t;t=t.parentNode}return null},findComponentRoot:function(e,t){var n=Y,r=0,o=d(t)||e;for(n[0]=o.firstChild,n.length=1;r when using tables, nesting tags like
,

, or , or using non-SVG elements in an parent. Try inspecting the child nodes of the element with React ID `%s`.",t,J.getID(e))},_mountImageIntoNode:function(e,t,n){if(M(t&&(t.nodeType===H||t.nodeType===U||t.nodeType===q),"mountComponentIntoNode(...): Target container is not valid."),n){var i=o(t);if(T.canReuseMarkup(e,i))return;var a=i.getAttribute(T.CHECKSUM_ATTR_NAME);i.removeAttribute(T.CHECKSUM_ATTR_NAME);var s=i.outerHTML;i.setAttribute(T.CHECKSUM_ATTR_NAME,a);var u=r(e,s),c=" (client) "+e.substring(u-20,u+20)+"\n (server) "+s.substring(u-20,u+20);M(t.nodeType!==U,"You're trying to render a component to the document using server rendering but the checksum was invalid. This usually means you rendered a different component type or props on the client from the one on the server, or your render() methods are impure. React cannot handle this case due to cross-browser quirks by rendering at the document root. You should look for environment dependent code in your components and ensure the props are the same client and server side:\n%s",c),__DEV__&&L(!1,"React attempted to reuse markup in a container but the checksum was invalid. This generally means that you are using server rendering and the markup generated on the server was not what the client was expecting. React injected new markup to compensate which works but you have lost many of the benefits of server rendering. Instead, figure out why the markup being generated is different on the client or server:\n%s",c) -}M(t.nodeType!==U,"You're trying to render a component to the document but you didn't use server rendering. We can't do this without using server rendering due to cross-browser quirks. See React.renderToString() for server rendering."),A(t,e)},getReactRootID:i,getID:a,setID:u,getNode:c,getNodeFromInstance:l,purgeID:f};C.measureMethods(J,"ReactMount",{_renderNewRootComponent:"_renderNewRootComponent",_mountImageIntoNode:"_mountImageIntoNode"}),n.exports=J}),__d("ReactBrowserEventEmitter",["EventConstants","EventPluginHub","EventPluginRegistry","ReactEventEmitterMixin","ViewportMetrics","Object.assign","isEventSupported"],function(e,t,n){"use strict";function r(e){return Object.prototype.hasOwnProperty.call(e,v)||(e[v]=h++,p[e[v]]={}),p[e[v]]}var o=t("EventConstants"),i=t("EventPluginHub"),a=t("EventPluginRegistry"),s=t("ReactEventEmitterMixin"),u=t("ViewportMetrics"),c=t("Object.assign"),l=t("isEventSupported"),p={},f=!1,h=0,d={topBlur:"blur",topChange:"change",topClick:"click",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topScroll:"scroll",topSelectionChange:"selectionchange",topTextInput:"textInput",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topWheel:"wheel"},v="_reactListenersID"+String(Math.random()).slice(2),m=c({},s,{ReactEventListener:null,injection:{injectReactEventListener:function(e){e.setHandleTopLevel(m.handleTopLevel),m.ReactEventListener=e}},setEnabled:function(e){m.ReactEventListener&&m.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!m.ReactEventListener||!m.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,i=r(n),s=a.registrationNameDependencies[e],u=o.topLevelTypes,c=0;c"," "+o.CHECKSUM_ATTR_NAME+'="'+t+'">')},canReuseMarkup:function(e,t){var n=t.getAttribute(o.CHECKSUM_ATTR_NAME);n=n&&parseInt(n,10);var i=r(e);return i===n}};n.exports=o}),__d("adler32",[],function(e,t,n){"use strict";function r(e){for(var t=1,n=0,r=0;r]/,a=function(e,t){e.innerHTML=t};if("undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction&&(a=function(e,t){MSApp.execUnsafeLocalFunction(function(){e.innerHTML=t})}),r.canUseDOM){var s=document.createElement("div");s.innerHTML=" ",""===s.innerHTML&&(a=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),o.test(t)||"<"===t[0]&&i.test(t)){e.innerHTML=String.fromCharCode(65279)+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t})}n.exports=a}),__d("validateDOMNesting",["Object.assign","emptyFunction","warning"],function(e,t,n){"use strict";var r=t("Object.assign"),o=t("emptyFunction"),i=t("warning"),a=o;if(__DEV__){var s=["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"],u=["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"],c=u.concat(["button"]),l=["dd","dt","li","option","optgroup","p","rp","rt"],p={parentTag:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null},f=function(e,t,n){var o=r({},e||p),i={tag:t,instance:n};return-1!==u.indexOf(t)&&(o.aTagInScope=null,o.buttonTagInScope=null,o.nobrTagInScope=null),-1!==c.indexOf(t)&&(o.pTagInButtonScope=null),-1!==s.indexOf(t)&&"address"!==t&&"div"!==t&&"p"!==t&&(o.listItemTagAutoclosing=null,o.dlItemTagAutoclosing=null),o.parentTag=i,"form"===t&&(o.formTag=i),"a"===t&&(o.aTagInScope=i),"button"===t&&(o.buttonTagInScope=i),"nobr"===t&&(o.nobrTagInScope=i),"p"===t&&(o.pTagInButtonScope=i),"li"===t&&(o.listItemTagAutoclosing=i),("dd"===t||"dt"===t)&&(o.dlItemTagAutoclosing=i),o},h=function(e,t){switch(t){case"select":return"option"===e||"optgroup"===e||"#text"===e;case"optgroup":return"option"===e||"#text"===e;case"option":return"#text"===e;case"tr":return"th"===e||"td"===e||"style"===e||"script"===e||"template"===e;case"tbody":case"thead":case"tfoot":return"tr"===e||"style"===e||"script"===e||"template"===e;case"colgroup":return"col"===e||"template"===e;case"table":return"caption"===e||"colgroup"===e||"tbody"===e||"tfoot"===e||"thead"===e||"style"===e||"script"===e||"template"===e;case"head":return"base"===e||"basefont"===e||"bgsound"===e||"link"===e||"meta"===e||"title"===e||"noscript"===e||"noframes"===e||"style"===e||"script"===e||"template"===e;case"html":return"head"===e||"body"===e}switch(e){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"h1"!==t&&"h2"!==t&&"h3"!==t&&"h4"!==t&&"h5"!==t&&"h6"!==t;case"rp":case"rt":return-1===l.indexOf(t);case"caption":case"col":case"colgroup":case"frame":case"head":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return null==t}return!0},d=function(e,t){switch(e){case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dialog":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"main":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":case"pre":case"listing":case"table":case"hr":case"xmp":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return t.pTagInButtonScope;case"form":return t.formTag||t.pTagInButtonScope;case"li":return t.listItemTagAutoclosing;case"dd":case"dt":return t.dlItemTagAutoclosing;case"button":return t.buttonTagInScope;case"a":return t.aTagInScope;case"nobr":return t.nobrTagInScope}return null},v=function(e){if(!e)return[];var t=[];do t.push(e);while(e=e._currentElement._owner);return t.reverse(),t},m={};a=function(e,t,n){n=n||p;var r=n.parentTag,o=r&&r.tag,a=h(e,o)?null:r,s=a?null:d(e,n),u=a||s;if(u){var c,l=u.tag,f=u.instance,g=t&&t._currentElement._owner,y=f&&f._currentElement._owner,_=v(g),b=v(y),S=Math.min(_.length,b.length),R=-1;for(c=0;S>c&&_[c]===b[c];c++)R=c;var E="(unknown)",w=_.slice(R+1).map(function(e){return e.getName()||E}),T=b.slice(R+1).map(function(e){return e.getName()||E}),C=[].concat(-1!==R?_[R].getName()||E:[],T,l,s?["..."]:[],w,e).join(" > "),O=!!a+"|"+e+"|"+l+"|"+C;if(m[O])return;if(m[O]=!0,a){var x="";"table"===l&&"tr"===e&&(x+=" Add a to your code to match the DOM tree generated by the browser."),i(!1,"validateDOMNesting(...): <%s> cannot appear as a child of <%s>. See %s.%s",e,l,C,x)}else i(!1,"validateDOMNesting(...): <%s> cannot appear as a descendant of <%s>. See %s.",e,l,C)}},a.ancestorInfoContextKey="__validateDOMNesting_ancestorInfo$"+Math.random().toString(36).slice(2),a.updatedAncestorInfo=f,a.isTagValidInContext=function(e,t){t=t||p;var n=t.parentTag,r=n&&n.tag;return h(e,r)&&!d(e,t)}}n.exports=a}),__d("AppStateIOS",["Map","NativeModules","RCTDeviceEventEmitter","logError","invariant"],function(e,t,n){"use strict";var r=t("Map"),o=t("NativeModules"),i=t("RCTDeviceEventEmitter"),a=o.AppState,s=t("logError"),u=t("invariant"),c={change:new r,memoryWarning:new r},l={addEventListener:function(e,t){u(-1!==["change","memoryWarning"].indexOf(e),'Trying to subscribe to unknown event: "%s"',e),"change"===e?c[e].set(t,i.addListener("appStateDidChange",function(e){t(e.app_state)})):"memoryWarning"===e&&c[e].set(t,i.addListener("memoryWarning",t))},removeEventListener:function(e,t){u(-1!==["change","memoryWarning"].indexOf(e),'Trying to remove listener for unknown event: "%s"',e),c[e].has(t)&&(c[e].get(t).remove(),c[e]["delete"](t))},currentState:a&&a.initialAppState};i.addListener("appStateDidChange",function(e){l.currentState=e.app_state}),a.getCurrentAppState(function(e){l.currentState=e.app_state},s),n.exports=l}),__d("BackAndroid",["warning"],function(e,t,n){"use strict";function r(){o(!1,"BackAndroid is not supported on this platform.")}var o=t("warning"),i={exitApp:r,addEventListener:r,removeEventListener:r};n.exports=i}),__d("CameraRoll",["ReactPropTypes","NativeModules","createStrictShapeTypeChecker","deepFreezeAndThrowOnMutationInDev","invariant"],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;nt&&!i||!o||n&&!a&&s||r&&s)return 1;if(t>e&&!n||!s||i&&!r&&o||a&&o)return-1}return 0}function o(e,t,n){for(var r=e.length,o=n?r:-1;n?o--:++o-1;);return n}function c(e,t){for(var n=e.length;n--&&t.indexOf(e.charAt(n))>-1;);return n}function l(e,n){return t(e.criteria,n.criteria)||e.index-n.index}function p(e,n,r){for(var o=-1,i=e.criteria,a=n.criteria,s=i.length,u=r.length;++o=u)return c;var l=r[o];return c*("asc"===l||l===!0?1:-1)}}return e.index-n.index}function f(e){return zt[e]}function h(e){return Gt[e]}function d(e,t,n){return t?e=Kt[e]:n&&(e=Xt[e]),"\\"+e}function v(e){return"\\"+Xt[e]}function m(e,t,n){for(var r=e.length,o=t+(n?0:-1);n?o--:++o=e&&e>=9&&13>=e||32==e||160==e||5760==e||6158==e||e>=8192&&(8202>=e||8232==e||8233==e||8239==e||8287==e||12288==e||65279==e)}function _(e,t){for(var n=-1,r=e.length,o=-1,i=[];++nt,o=n?e.length:0,i=Wr(0,o,this.__views__),a=i.start,s=i.end,u=s-a,c=r?s:a-1,l=this.__iteratees__,p=l.length,f=0,h=Es(u,this.__takeCount__);if(!n||B>o||o==u&&h==u)return rr(r&&n?e.reverse():e,this.__actions__);var d=[];e:for(;u--&&h>f;){c+=t;for(var v=-1,m=e[c];++v=B?vr(t):null,c=t.length;u&&(a=Qt,s=!1,t=u);e:for(;++on&&(n=-n>o?0:o+n),r=r===T||r>o?o:+r||0,0>r&&(r+=o),o=n>r?0:r>>>0,n>>>=0;o>n;)e[n++]=t;return e}function xn(e,t){var n=[];return js(e,function(e,r,o){t(e,r,o)&&n.push(e)}),n}function In(e,t,n,r){var o;return n(e,function(e,n,i){return t(e,n,i)?(o=r?n:e,!1):void 0}),o}function Pn(e,t,n,r){r||(r=[]);for(var o=-1,i=e.length;++or;)e=e[t[r++]];return r&&r==o?e:T}}function jn(e,t,n,r,o,i){return e===t?!0:null==e||null==t||!ki(e)&&!g(t)?e!==e&&t!==t:Ln(e,t,jn,n,r,o,i)}function Ln(e,t,n,r,o,i,a){var s=Iu(e),u=Iu(t),c=W,l=W;s||(c=rs.call(e),c==G?c=Z:c!=Z&&(s=zi(e))),u||(l=rs.call(t),l==G?l=Z:l!=Z&&(u=zi(t)));var p=c==Z,f=l==Z,h=c==l;if(h&&!s&&!p)return Fr(e,t,c);if(!o){var d=p&&ts.call(e,"__wrapped__"),v=f&&ts.call(t,"__wrapped__");if(d||v)return n(d?e.value():e,v?t.value():t,r,o,i,a)}if(!h)return!1;i||(i=[]),a||(a=[]);for(var m=i.length;m--;)if(i[m]==e)return a[m]==t;i.push(e),a.push(t);var g=(s?Vr:Br)(e,t,n,r,o,i,a);return i.pop(),a.pop(),g}function Vn(e,t,n){var r=t.length,o=r,i=!n;if(null==e)return!o;for(e=po(e);r--;){var a=t[r];if(i&&a[2]?a[1]!==e[a[0]]:!(a[0]in e))return!1}for(;++rt&&(t=-t>o?0:o+t),n=n===T||n>o?o:+n||0,0>n&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var i=Ha(o);++r=B,u=s?vr():null,c=[];u?(r=Qt,a=!1):(s=!1,u=t?[]:c);e:for(;++n=o){for(;o>r;){var i=r+o>>>1,a=e[i];(n?t>=a:t>a)&&null!==a?r=i+1:o=i}return o}return ir(e,t,xa,n)}function ir(e,t,n,r){t=n(t);for(var o=0,i=e?e.length:0,a=t!==t,s=null===t,u=t===T;i>o;){var c=ys((o+i)/2),l=n(e[c]),p=l!==T,f=l===l;if(a)var h=f||r;else h=s?f&&p&&(r||null!=l):u?f&&(r||p):null==l?!1:r?t>=l:t>l;h?o=c+1:i=c}return Es(i,Ps)}function ar(e,t,n){if("function"!=typeof e)return xa;if(t===T)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 3:return function(n,r,o){return e.call(t,n,r,o)};case 4:return function(n,r,o,i){return e.call(t,n,r,o,i)};case 5:return function(n,r,o,i,a){return e.call(t,n,r,o,i,a)}}return function(){return e.apply(t,arguments)}}function sr(e){var t=new as(e.byteLength),n=new ds(t);return n.set(new ds(e)),t}function ur(e,t,n){for(var r=n.length,o=-1,i=Rs(e.length-r,0),a=-1,s=t.length,u=Ha(s+i);++a2?n[o-2]:T,a=o>2?n[2]:T,s=o>1?n[o-1]:T;for("function"==typeof i?(i=ar(i,s,5),o-=2):(i="function"==typeof s?s:T,o-=i?1:0),a&&Zr(n[0],n[1],a)&&(i=3>o?T:i,o=1);++r-1?n[a]:T}return In(n,r,e)}}function Rr(e){return function(t,n,r){return t&&t.length?(n=Hr(n,r,3),o(t,n,e)):-1}}function Er(e){return function(t,n,r){return n=Hr(n,r,3),In(t,n,e,!0)}}function wr(e){return function(){for(var t,n=arguments.length,r=e?n:-1,o=0,i=Ha(n);e?r--:++r=B)return t.plant(r).value();for(var o=0,a=n?i[o].apply(this,e):r;++oy){var w=s?en(s):T,C=Rs(c-y,0),I=d?E:T,P=d?T:E,N=d?S:T,A=d?T:S;t|=d?D:M,t&=~(d?M:D),v||(t&=~(O|x));var k=[e,t,n,N,I,A,P,w,u,C],j=Dr.apply(T,k);return to(e)&&qs(j,k),j.placeholder=R,j}}var L=f?n:this,V=h?L[e]:e;return s&&(S=uo(S,s)),p&&u=t||!bs(t))return"";var o=t-r;return n=null==n?" ":n+"",ga(n,ms(o/n.length)).slice(0,o)}function Ar(e,t,n,r){function o(){for(var t=-1,s=arguments.length,u=-1,c=r.length,l=Ha(c+s);++uu))return!1;for(;++s-1&&e%1==0&&t>e}function Zr(e,t,n){if(!ki(n))return!1;var r=typeof t;if("number"==r?Qr(n)&&$r(t,n.length):"string"==r&&t in n){var o=n[t];return e===e?e===o:o!==o}return!1}function eo(e,t){var n=typeof e;if("string"==n&&Tt.test(e)||"number"==n)return!0;if(Iu(e))return!1;var r=!wt.test(e);return r||null!=t&&e in po(t)}function to(e){var t=Ur(e);if(!(t in Q.prototype))return!1;var r=n[t];if(e===r)return!0;var o=Hs(r);return!!o&&e===o[0]}function no(e){return"number"==typeof e&&e>-1&&e%1==0&&Ds>=e}function ro(e){return e===e&&!ki(e)}function oo(e,t){var n=e[1],r=t[1],o=n|r,i=A>o,a=r==A&&n==P||r==A&&n==k&&e[7].length<=t[8]||r==(A|k)&&n==P;if(!i&&!a)return e;r&O&&(e[2]=t[2],o|=n&O?0:I);var s=t[3];if(s){var u=e[3];e[3]=u?ur(u,s,t[4]):en(s),e[4]=u?_(e[3],z):en(t[4])}return s=t[5],s&&(u=e[5],e[5]=u?cr(u,s,t[6]):en(s),e[6]=u?_(e[5],z):en(t[6])),s=t[7],s&&(e[7]=en(s)),r&A&&(e[8]=null==e[8]?t[8]:Es(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=o,e}function io(e,t){return e===T?t:Pu(e,t,io)}function ao(e,t){e=po(e);for(var n=-1,r=t.length,o={};++nr;)a[++i]=Xn(e,r,r+=t);return a}function mo(e){for(var t=-1,n=e?e.length:0,r=-1,o=[];++tt?0:t)):[]}function yo(e,t,n){var r=e?e.length:0;return r?((n?Zr(e,t,n):null==t)&&(t=1),t=r-(+t||0),Xn(e,0,0>t?0:t)):[]}function _o(e,t,n){return e&&e.length?nr(e,Hr(t,n,3),!0,!0):[]}function bo(e,t,n){return e&&e.length?nr(e,Hr(t,n,3),!0):[]}function So(e,t,n,r){var o=e?e.length:0;return o?(n&&"number"!=typeof n&&Zr(e,t,n)&&(n=0,r=o),On(e,t,n,r)):[]}function Ro(e){return e?e[0]:T}function Eo(e,t,n){var r=e?e.length:0;return n&&Zr(e,t,n)&&(t=!1),r?Pn(e,t):[]}function wo(e){var t=e?e.length:0;return t?Pn(e,!0):[]}function To(e,t,n){var r=e?e.length:0;if(!r)return-1;if("number"==typeof n)n=0>n?Rs(r+n,0):n;else if(n){var o=or(e,t);return r>o&&(t===t?t===e[o]:e[o]!==e[o])?o:-1}return i(e,t,n||0)}function Co(e){return yo(e,1)}function Oo(e){var t=e?e.length:0;return t?e[t-1]:T}function xo(e,t,n){var r=e?e.length:0;if(!r)return-1;var o=r;if("number"==typeof n)o=(0>n?Rs(r+n,0):Es(n||0,r-1))+1;else if(n){o=or(e,t,!0)-1;var i=e[o];return(t===t?t===i:i!==i)?o:-1}if(t!==t)return m(e,o,!0);for(;o--;)if(e[o]===t)return o;return-1}function Io(){var e=arguments,t=e[0];if(!t||!t.length)return t;for(var n=0,r=qr(),o=e.length;++n-1;)hs.call(t,i,1);return t}function Po(e,t,n){var r=[];if(!e||!e.length)return r;var o=-1,i=[],a=e.length;for(t=Hr(t,n,3);++ot?0:t)):[]}function Ao(e,t,n){var r=e?e.length:0;return r?((n?Zr(e,t,n):null==t)&&(t=1),t=r-(+t||0),Xn(e,0>t?0:t)):[]}function ko(e,t,n){return e&&e.length?nr(e,Hr(t,n,3),!1,!0):[]}function jo(e,t,n){return e&&e.length?nr(e,Hr(t,n,3)):[]}function Lo(e,t,n,r){var o=e?e.length:0;if(!o)return[];null!=t&&"boolean"!=typeof t&&(r=n,n=Zr(e,t,r)?T:t,t=!1);var a=Hr();return(null!=n||a!==Sn)&&(n=a(n,r,3)),t&&qr()==i?b(e,n):er(e,n)}function Vo(e){if(!e||!e.length)return[];var t=-1,n=0;e=un(e,function(e){return Qr(e)?(n=Rs(e.length,n),!0):void 0});for(var r=Ha(n);++tn?Rs(o+n,0):n||0,"string"==typeof e||!Iu(e)&&qi(e)?o>=n&&e.indexOf(t,n)>-1:!!o&&qr(e,t,n)>-1}function ti(e,t,n){var r=Iu(e)?cn:Fn;return t=Hr(t,n,3),r(e,t)}function ni(e,t){return ti(e,Aa(t))}function ri(e,t,n){var r=Iu(e)?un:xn;return t=Hr(t,n,3),r(e,function(e,n,r){return!t(e,n,r)})}function oi(e,t,n){if(n?Zr(e,t,n):null==t){e=lo(e);var r=e.length;return r>0?e[Yn(0,r-1)]:T}var o=-1,i=Ki(e),r=i.length,a=r-1;for(t=Es(0>t?0:+t||0,r);++o0&&(n=t.apply(this,arguments)),1>=e&&(t=T),n}}function di(e,t,n){function r(){h&&ss(h),c&&ss(c),v=0,c=h=d=T}function o(t,n){n&&ss(n),c=h=d=T,t&&(v=vu(),l=e.apply(f,u),h||c||(u=f=T))}function i(){var e=t-(vu()-p);0>=e||e>t?o(d,c):h=fs(i,e)}function a(){o(g,h)}function s(){if(u=arguments,p=vu(),f=this,d=g&&(h||!y),m===!1)var n=y&&!h;else{c||y||(v=p);var r=m-(p-v),o=0>=r||r>m;o?(c&&(c=ss(c)),v=p,l=e.apply(f,u)):c||(c=fs(a,r))}return o&&h?h=ss(h):h||t===m||(h=fs(i,t)),n&&(o=!0,l=e.apply(f,u)),!o||h||c||(u=f=T),l}var u,c,l,p,f,h,d,v=0,m=!1,g=!0;if("function"!=typeof e)throw new Ja(q);if(t=0>t?0:+t||0,n===!0){var y=!0;g=!1}else ki(n)&&(y=!!n.leading,m="maxWait"in n&&Rs(+n.maxWait||0,t),g="trailing"in n?!!n.trailing:g);return s.cancel=r,s}function vi(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new Ja(q);var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=e.apply(this,r);return n.cache=i.set(o,a),a};return n.cache=new vi.Cache,n}function mi(e){if("function"!=typeof e)throw new Ja(q);return function(){return!e.apply(this,arguments)}}function gi(e){return hi(2,e)}function yi(e,t){if("function"!=typeof e)throw new Ja(q);return t=Rs(t===T?e.length-1:+t||0,0),function(){for(var n=arguments,r=-1,o=Rs(n.length-t,0),i=Ha(o);++rt}function Ti(e,t){return e>=t}function Ci(e){return g(e)&&Qr(e)&&ts.call(e,"callee")&&!ls.call(e,"callee")}function Oi(e){return e===!0||e===!1||g(e)&&rs.call(e)==Y}function xi(e){return g(e)&&rs.call(e)==K}function Ii(e){return!!e&&1===e.nodeType&&g(e)&&!Hi(e)}function Pi(e){return null==e?!0:Qr(e)&&(Iu(e)||qi(e)||Ci(e)||g(e)&&Ai(e.splice))?!e.length:!Bu(e).length}function Ni(e,t,n,r){n="function"==typeof n?ar(n,r,3):T;var o=n?n(e,t):T;return o===T?jn(e,t,n):!!o}function Di(e){return g(e)&&"string"==typeof e.message&&rs.call(e)==X}function Mi(e){return"number"==typeof e&&bs(e) -}function Ai(e){return ki(e)&&rs.call(e)==J}function ki(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function ji(e,t,n,r){return n="function"==typeof n?ar(n,r,3):T,Vn(e,zr(t),n)}function Li(e){return Bi(e)&&e!=+e}function Vi(e){return null==e?!1:Ai(e)?is.test(es.call(e)):g(e)&&At.test(e)}function Fi(e){return null===e}function Bi(e){return"number"==typeof e||g(e)&&rs.call(e)==$}function Hi(e){var t;if(!g(e)||rs.call(e)!=Z||Ci(e)||!ts.call(e,"constructor")&&(t=e.constructor,"function"==typeof t&&!(t instanceof t)))return!1;var n;return Nn(e,function(e,t){n=t}),n===T||ts.call(e,n)}function Ui(e){return ki(e)&&rs.call(e)==et}function qi(e){return"string"==typeof e||g(e)&&rs.call(e)==nt}function zi(e){return g(e)&&no(e.length)&&!!Ut[rs.call(e)]}function Gi(e){return e===T}function Wi(e,t){return t>e}function Yi(e,t){return t>=e}function Ki(e){var t=e?Us(e):0;return no(t)?t?en(e):[]:aa(e)}function Xi(e){return bn(e,ta(e))}function Ji(e,t,n){var r=ks(e);return n&&Zr(e,t,n)&&(t=T),t?yn(r,t):r}function Qi(e){return An(e,ta(e))}function $i(e,t,n){var r=null==e?T:kn(e,fo(t),t+"");return r===T?n:r}function Zi(e,t){if(null==e)return!1;var n=ts.call(e,t);if(!n&&!eo(t)){if(t=fo(t),e=1==t.length?e:kn(e,Xn(t,0,-1)),null==e)return!1;t=Oo(t),n=ts.call(e,t)}return n||no(e.length)&&$r(t,e.length)&&(Iu(e)||Ci(e))}function ea(e,t,n){n&&Zr(e,t,n)&&(t=T);for(var r=-1,o=Bu(e),i=o.length,a={};++r0;++r=Es(t,n)&&en?0:+n||0,r),n-=t.length,n>=0&&e.indexOf(t,n)==n}function ha(e){return e=s(e),e&&bt.test(e)?e.replace(yt,h):e}function da(e){return e=s(e),e&&xt.test(e)?e.replace(Ot,d):e||"(?:)"}function va(e,t,n){e=s(e),t=+t;var r=e.length;if(r>=t||!bs(t))return e;var o=(t-r)/2,i=ys(o),a=ms(o);return n=Mr("",a,n),n.slice(0,i)+e+n}function ma(e,t,n){return(n?Zr(e,t,n):null==t)?t=0:t&&(t=+t),e=ba(e),Ts(e,t||(Mt.test(e)?16:10))}function ga(e,t){var n="";if(e=s(e),t=+t,1>t||!e||!bs(t))return n;do t%2&&(n+=e),t=ys(t/2),e+=e;while(t);return n}function ya(e,t,n){return e=s(e),n=null==n?0:Es(0>n?0:+n||0,e.length),e.lastIndexOf(t,n)==n}function _a(e,t,r){var o=n.templateSettings;r&&Zr(e,t,r)&&(t=r=T),e=s(e),t=gn(yn({},r||t),o,mn);var i,a,u=gn(yn({},t.imports),o.imports,mn),c=Bu(u),l=tr(u,c),p=0,f=t.interpolate||Lt,h="__p += '",d=Ka((t.escape||Lt).source+"|"+f.source+"|"+(f===Et?Nt:Lt).source+"|"+(t.evaluate||Lt).source+"|$","g"),m="//# sourceURL="+("sourceURL"in t?t.sourceURL:"lodash.templateSources["+ ++Ht+"]")+"\n";e.replace(d,function(t,n,r,o,s,u){return r||(r=o),h+=e.slice(p,u).replace(Vt,v),n&&(i=!0,h+="' +\n__e("+n+") +\n'"),s&&(a=!0,h+="';\n"+s+";\n__p += '"),r&&(h+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),p=u+t.length,t}),h+="';\n";var g=t.variable;g||(h="with (obj) {\n"+h+"\n}\n"),h=(a?h.replace(dt,""):h).replace(vt,"$1").replace(mt,"$1;"),h="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+h+"return __p\n}";var y=Qu(function(){return za(c,m+"return "+h).apply(T,l)});if(y.source=h,Di(y))throw y;return y}function ba(e,t,n){var r=e;return(e=s(e))?(n?Zr(r,t,n):null==t)?e.slice(S(e),R(e)+1):(t+="",e.slice(u(e,t),c(e,t)+1)):e}function Sa(e,t,n){var r=e;return e=s(e),e?e.slice((n?Zr(r,t,n):null==t)?S(e):u(e,t+"")):e}function Ra(e,t,n){var r=e;return e=s(e),e?(n?Zr(r,t,n):null==t)?e.slice(0,R(e)+1):e.slice(0,c(e,t+"")+1):e}function Ea(e,t,n){n&&Zr(e,t,n)&&(t=T);var r=j,o=L;if(null!=t)if(ki(t)){var i="separator"in t?t.separator:i;r="length"in t?+t.length||0:r,o="omission"in t?s(t.omission):o}else r=+t||0;if(e=s(e),r>=e.length)return e;var a=r-o.length;if(1>a)return o;var u=e.slice(0,a);if(null==i)return u+o;if(Ui(i)){if(e.slice(a).search(i)){var c,l,p=e.slice(0,a);for(i.global||(i=Ka(i.source,(Dt.exec(i)||"")+"g")),i.lastIndex=0;c=i.exec(p);)l=c.index;u=u.slice(0,null==l?a:l)}}else if(e.indexOf(i,a)!=a){var f=u.lastIndexOf(i);f>-1&&(u=u.slice(0,f))}return u+o}function wa(e){return e=s(e),e&&_t.test(e)?e.replace(gt,E):e}function Ta(e,t,n){return n&&Zr(e,t,n)&&(t=T),e=s(e),e.match(t||Ft)||[]}function Ca(e,t,n){return n&&Zr(e,t,n)&&(t=T),g(e)?Ia(e):Sn(e,t)}function Oa(e){return function(){return e}}function xa(e){return e}function Ia(e){return Bn(Rn(e,!0))}function Pa(e,t){return Hn(e,Rn(t,!0))}function Na(e,t,n){if(null==n){var r=ki(t),o=r?Bu(t):T,i=o&&o.length?An(t,o):T;(i?i.length:r)||(i=!1,n=t,t=e,e=this)}i||(i=An(t,Bu(t)));var a=!0,s=-1,u=Ai(e),c=i.length;n===!1?a=!1:ki(n)&&"chain"in n&&(a=n.chain);for(;++se||!bs(e))return[];var r=-1,o=Ha(Es(e,Is));for(t=ar(t,n,1);++rr?o[r]=t(r):t(r);return o}function Va(e){var t=++ns;return s(e)+t}function Fa(e,t){return(+e||0)+(+t||0)}function Ba(e,t,n){return n&&Zr(e,t,n)&&(t=T),t=Hr(t,n,3),1==t.length?dn(Iu(e)?e:lo(e),t):Zn(e,t)}e=e?rn.defaults(nn.Object(),e,rn.pick(nn,Bt)):nn;{var Ha=e.Array,Ua=e.Date,qa=e.Error,za=e.Function,Ga=e.Math,Wa=e.Number,Ya=e.Object,Ka=e.RegExp,Xa=e.String,Ja=e.TypeError,Qa=Ha.prototype,$a=Ya.prototype,Za=Xa.prototype,es=za.prototype.toString,ts=$a.hasOwnProperty,ns=0,rs=$a.toString,os=nn._,is=Ka("^"+es.call(ts).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),as=e.ArrayBuffer,ss=e.clearTimeout,us=e.parseFloat,cs=Ga.pow,ls=$a.propertyIsEnumerable,ps=Gr(e,"Set"),fs=e.setTimeout,hs=Qa.splice,ds=e.Uint8Array,vs=Gr(e,"WeakMap"),ms=Ga.ceil,gs=Gr(Ya,"create"),ys=Ga.floor,_s=Gr(Ha,"isArray"),bs=e.isFinite,Ss=Gr(Ya,"keys"),Rs=Ga.max,Es=Ga.min,ws=Gr(Ua,"now"),Ts=e.parseInt,Cs=Ga.random,Os=Wa.NEGATIVE_INFINITY,xs=Wa.POSITIVE_INFINITY,Is=4294967295,Ps=Is-1,Ns=Is>>>1,Ds=9007199254740991,Ms=vs&&new vs,As={};n.support={}}n.templateSettings={escape:St,evaluate:Rt,interpolate:Et,variable:"",imports:{_:n}};var ks=function(){function e(){}return function(t){if(ki(t)){e.prototype=t;var n=new e;e.prototype=T}return n||{}}}(),js=fr(Dn),Ls=fr(Mn,!0),Vs=hr(),Fs=hr(!0),Bs=Ms?function(e,t){return Ms.set(e,t),e}:xa,Hs=Ms?function(e){return Ms.get(e)}:Ma,Us=zn("length"),qs=function(){var e=0,t=0;return function(n,r){var o=vu(),i=F-(o-t);if(t=o,i>0){if(++e>=V)return n}else e=0;return Bs(n,r)}}(),zs=yi(function(e,t){return g(e)&&Qr(e)?wn(e,Pn(t,!1,!0)):[]}),Gs=Rr(),Ws=Rr(!0),Ys=yi(function(e){for(var t=e.length,n=t,r=Ha(p),o=qr(),a=o==i,s=[];n--;){var u=e[n]=Qr(u=e[n])?u:[];r[n]=a&&u.length>=120?vr(n&&u):null}var c=e[0],l=-1,p=c?c.length:0,f=r[0];e:for(;++l2?e[t-2]:T,r=t>1?e[t-1]:T;return t>2&&"function"==typeof n?t-=2:(n=t>1&&"function"==typeof r?(--t,r):T,r=T),e.length=t,Fo(e,n,r)}),tu=yi(function(e){return e=Pn(e),this.thru(function(t){return Zt(Iu(t)?t:[po(t)],e)})}),nu=yi(function(e,t){return _n(e,Pn(t))}),ru=lr(function(e,t,n){ts.call(e,n)?++e[n]:e[n]=1}),ou=Sr(js),iu=Sr(Ls,!0),au=Tr(tn,js),su=Tr(on,Ls),uu=lr(function(e,t,n){ts.call(e,n)?e[n].push(t):e[n]=[t]}),cu=lr(function(e,t,n){e[n]=t}),lu=yi(function(e,t,n){var r=-1,o="function"==typeof t,i=eo(t),a=Qr(e)?Ha(e.length):[];return js(e,function(e){var s=o?t:i&&null!=e?e[t]:T;a[++r]=s?s.apply(e,n):Jr(e,t,n)}),a}),pu=lr(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]}),fu=Nr(pn,js),hu=Nr(fn,Ls),du=yi(function(e,t){if(null==e)return[];var n=t[2];return n&&Zr(t[0],t[1],n)&&(t.length=1),$n(e,Pn(t),[])}),vu=ws||function(){return(new Ua).getTime()},mu=yi(function(e,t,n){var r=O;if(n.length){var o=_(n,mu.placeholder);r|=D}return Lr(e,r,t,n,o)}),gu=yi(function(e,t){t=t.length?Pn(t):Qi(e);for(var n=-1,r=t.length;++n0||0>t)?new Q(n):(0>e?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==T&&(t=+t||0,n=0>t?n.dropRight(-t):n.take(t-e)),n)},Q.prototype.takeRightWhile=function(e,t){return this.reverse().takeWhile(e,t).reverse()},Q.prototype.toArray=function(){return this.take(xs)},Dn(Q.prototype,function(e,t){var r=/^(?:filter|map|reject)|While$/.test(t),o=/^(?:first|last)$/.test(t),i=n[o?"take"+("last"==t?"Right":""):t];i&&(n.prototype[t]=function(){var t=o?[1]:arguments,n=this.__chain__,a=this.__wrapped__,s=!!this.__actions__.length,u=a instanceof Q,c=t[0],l=u||Iu(a);l&&r&&"function"==typeof c&&1!=c.length&&(u=l=!1);var p=function(e){return o&&n?i(e,1)[0]:i.apply(T,ln([e],t))},f={func:zo,args:[p],thisArg:T},h=u&&!s;if(o&&!n)return h?(a=a.clone(),a.__actions__.push(f),e.call(a)):i.call(T,this.value())[0];if(!o&&l){a=h?a:new Q(this);var d=e.apply(a,t);return d.__actions__.push(f),new y(d,n)}return this.thru(p)})}),tn(["join","pop","push","replace","shift","sort","splice","split","unshift"],function(e){var t=(/^(?:replace|split)$/.test(e)?Za:Qa)[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",o=/^(?:join|pop|replace|shift)$/.test(e);n.prototype[e]=function(){var e=arguments;return o&&!this.__chain__?t.apply(this.value(),e):this[r](function(n){return t.apply(n,e)})}}),Dn(Q.prototype,function(e,t){var r=n[t];if(r){var o=r.name,i=As[o]||(As[o]=[]);i.push({name:t,func:r})}}),As[Dr(T,x).name]=[{name:"wrapper",func:T}],Q.prototype.clone=tt,Q.prototype.reverse=rt,Q.prototype.value=zt,n.prototype.chain=Go,n.prototype.commit=Wo,n.prototype.concat=tu,n.prototype.plant=Yo,n.prototype.reverse=Ko,n.prototype.toString=Xo,n.prototype.run=n.prototype.toJSON=n.prototype.valueOf=n.prototype.value=Jo,n.prototype.collect=n.prototype.map,n.prototype.head=n.prototype.first,n.prototype.select=n.prototype.filter,n.prototype.tail=n.prototype.rest,n}var T,C="3.10.1",O=1,x=2,I=4,P=8,N=16,D=32,M=64,A=128,k=256,j=30,L="...",V=150,F=16,B=200,H=1,U=2,q="Expected a function",z="__lodash_placeholder__",G="[object Arguments]",W="[object Array]",Y="[object Boolean]",K="[object Date]",X="[object Error]",J="[object Function]",Q="[object Map]",$="[object Number]",Z="[object Object]",et="[object RegExp]",tt="[object Set]",nt="[object String]",rt="[object WeakMap]",ot="[object ArrayBuffer]",it="[object Float32Array]",at="[object Float64Array]",st="[object Int8Array]",ut="[object Int16Array]",ct="[object Int32Array]",lt="[object Uint8Array]",pt="[object Uint8ClampedArray]",ft="[object Uint16Array]",ht="[object Uint32Array]",dt=/\b__p \+= '';/g,vt=/\b(__p \+=) '' \+/g,mt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,gt=/&(?:amp|lt|gt|quot|#39|#96);/g,yt=/[&<>"'`]/g,_t=RegExp(gt.source),bt=RegExp(yt.source),St=/<%-([\s\S]+?)%>/g,Rt=/<%([\s\S]+?)%>/g,Et=/<%=([\s\S]+?)%>/g,wt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,Tt=/^\w*$/,Ct=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g,Ot=/^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g,xt=RegExp(Ot.source),It=/[\u0300-\u036f\ufe20-\ufe23]/g,Pt=/\\(\\)?/g,Nt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Dt=/\w*$/,Mt=/^0[xX]/,At=/^\[object .+?Constructor\]$/,kt=/^\d+$/,jt=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,Lt=/($^)/,Vt=/['\n\r\u2028\u2029\\]/g,Ft=function(){var e="[A-Z\\xc0-\\xd6\\xd8-\\xde]",t="[a-z\\xdf-\\xf6\\xf8-\\xff]+";return RegExp(e+"+(?="+e+t+")|"+e+"?"+t+"|"+e+"+|[0-9]+","g")}(),Bt=["Array","ArrayBuffer","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Math","Number","Object","RegExp","Set","String","_","clearTimeout","isFinite","parseFloat","parseInt","setTimeout","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap"],Ht=-1,Ut={};Ut[it]=Ut[at]=Ut[st]=Ut[ut]=Ut[ct]=Ut[lt]=Ut[pt]=Ut[ft]=Ut[ht]=!0,Ut[G]=Ut[W]=Ut[ot]=Ut[Y]=Ut[K]=Ut[X]=Ut[J]=Ut[Q]=Ut[$]=Ut[Z]=Ut[et]=Ut[tt]=Ut[nt]=Ut[rt]=!1;var qt={};qt[G]=qt[W]=qt[ot]=qt[Y]=qt[K]=qt[it]=qt[at]=qt[st]=qt[ut]=qt[ct]=qt[$]=qt[Z]=qt[et]=qt[nt]=qt[lt]=qt[pt]=qt[ft]=qt[ht]=!0,qt[X]=qt[J]=qt[Q]=qt[tt]=qt[rt]=!1;var zt={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss"},Gt={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},Wt={"&":"&","<":"<",">":">",""":'"',"'":"'","`":"`"},Yt={"function":!0,object:!0},Kt={0:"x30",1:"x31",2:"x32",3:"x33",4:"x34",5:"x35",6:"x36",7:"x37",8:"x38",9:"x39",A:"x41",B:"x42",C:"x43",D:"x44",E:"x45",F:"x46",a:"x61",b:"x62",c:"x63",d:"x64",e:"x65",f:"x66",n:"x6e",r:"x72",t:"x74",u:"x75",v:"x76",x:"x78"},Xt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Jt=Yt[typeof r]&&r&&!r.nodeType&&r,Qt=Yt[typeof n]&&n&&!n.nodeType&&n,$t=Jt&&Qt&&"object"==typeof e&&e&&e.Object&&e,Zt=Yt[typeof self]&&self&&self.Object&&self,en=Yt[typeof window]&&window&&window.Object&&window,tn=Qt&&Qt.exports===Jt&&Jt,nn=$t||en!==(this&&this.window)&&en||Zt||this,rn=w();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(nn._=rn,define(function(){return rn})):Jt&&Qt?tn?(Qt.exports=rn)._=rn:Jt._=rn:nn._=rn}).call(this)}),__d("VideoBlur/HueRotate.js",["react-native/Libraries/react-native/react-native.js","gl-react-native/src/index.js"],function(e,t,n){function r(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=Object.assign||function(e){for(var t=1;t glview) must have a function in parameter");var p=function(l){function p(e,t){r(this,p),s(Object.getPrototypeOf(p.prototype),"constructor",this).call(this,e,t),c.forEach(this._delegateMethod,this)}return o(p,l),a(p,[{key:"_delegateMethod",value:function(e){const t=this;this[e]=function(){const n=t.refs._;return u(n,"glView has been rendered"),n[e].apply(n,arguments)}}},{key:"render",value:function(){const r=n(this.props);return u(r&&(r.type===t||r.type.isGLComponent),"The GL.createComponent function parameter must return a GL.View or another GL Component"),e.cloneElement(r,i({},r.props,{ref:"_"}))}}]),p}(e.Component);if(p.isGLComponent=!0,p.displayName=n.name||"",l){u("object"==typeof l,"second parameter of createComponent must be an object of static fields to set in the React component. (example: propTypes, displayName)");for(var f in l)p[f]=l[f]}return p}return n}}),__d("invariant",[],function(e,t,n){"use strict";var r=function(e,t,n,r,o,i,a,s){if("production"!==process.env.NODE_ENV&&void 0===t)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,s],l=0;u=new Error("Invariant Violation: "+t.replace(/%s/g,function(){return c[l++]}))}throw u.framesToPop=1,u}};n.exports=r}),__d("gl-react-core/src/glViewMethods.json",[],function(e,t,n){n.exports=["getGLCanvas","captureFrame"]}),__d("gl-react-core/src/createComponentDeprecated.js",["invariant","gl-react-core/src/glViewMethods.json"],function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var i=function u(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0===r){var o=Object.getPrototypeOf(e);return null===o?void 0:u(o,t,n)}if("value"in r)return r.value;var i=r.get;return void 0===i?void 0:i.call(n)};const a=t("invariant"),s=t("gl-react-core/src/glViewMethods.json");n.exports=function(e){var t=function(e){function t(e,n){var o=this;r(this,t),i(Object.getPrototypeOf(t.prototype),"constructor",this).call(this,e,n),s.forEach(function(e){o[e]||(o[e]=function(){return a(!0,"'%s' method is not available in deprecated GL.Component. Use GL.createComponent(props => glView) instead")})}),"production"!==process.env.NODE_ENV&&console.error("GL.Component class is deprecated. Use GL.createComponent(props => glView) function instead")}return o(t,e),t}(e.Component);return t.isGLComponent=!0,t}}),__d("gl-react-core/src/createShaders.js",["invariant"],function(e,t,n){const r=t("invariant");n.exports=function(e){var t=1;const n={},o={create:function(o){r("object"==typeof o,"config must be an object");const i={};for(var a in o){const s=o[a];r("object"==typeof s&&"string"==typeof s.frag,"invalid shader given to Shaders.create(). A valid shader is a { frag: String }");const u=t++;s.name||(s.name=a),n[u]=s.name,e(u,s),i[a]=u}return i},getName:function(e){return n[e]},list:function(){return Object.keys(n)},exists:function(e){return"number"==typeof e&&e>=1&&t>e}};return o}}),__d("gl-react-core/src/createUniform.js",["invariant"],function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var i=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function a(e,t){"undefined"!=typeof console&&console.debug&&console.debug("GL.View rendered with",e,t)}var s=Object.assign||function(e){for(var t=1;t0&&i>0,"width and height are required for the root GLView");var w=h(f(_(c,d,o,i,u,y||!1,[])));const T=w.data,C=w.contentsVDOM,O=w.imagesToPreload;return g&&a(T,C),p({width:o,height:i,style:n,visibleContent:S,eventsThrough:R},C.map(function(e,t){return v(T.width,T.height,t,e,{visibleContent:S})}),m(s({},E,{width:o,height:i,data:T,nbContentTextures:C.length,imagesToPreload:O,renderId:e,opaque:b,visibleContent:S,eventsThrough:R})))}}]),t}(g);return b.displayName="GL.View",b.propTypes={shader:y.number.isRequired,width:y.number,height:y.number,uniforms:y.object,opaque:y.bool,preload:y.bool,autoRedraw:y.bool,eventsThrough:y.bool,visibleContent:y.bool},b.defaultProps={opaque:!0},_=d(e,t,n,b),b}}),__d("gl-react-core/src/data/index.js",["gl-react-core/src/data/build.js","gl-react-core/src/data/fill.js","gl-react-core/src/data/resolve.js"],function(e,t,n){n.exports={createBuild:t("gl-react-core/src/data/build.js"),fill:t("gl-react-core/src/data/fill.js"),resolve:t("gl-react-core/src/data/resolve.js")}}),__d("gl-react-core/src/data/build.js",["invariant","gl-react-core/src/data/TextureObjects.js","gl-react-core/src/data/isNonSamplerUniformValue.js"],function(e,t,n){function r(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var o=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e){function t(e,o,s,p){const h=e.uniforms,d=e.children,v=e.contents,m=e.preload,g=r(e,["uniforms","children","contents","preload"]),y=i({},h),_=s.map(function(e){var t=e.vdom;return t}),b=function(e){return function(){for(e++;e===o||-1!==p.indexOf(e);)e++;return e}}(-1),S=u(e,_),R=S.map(function(e){var t=e.vdom;const n=b();return{vdom:t,fboId:n}}),E=s.concat(R),w=E.map(function(e){var t=e.vdom;return t}),T=E.map(function(e){var t=e.fboId;return t}),C=[],O=[],x=d.concat(S).map(function(e){const t=e.uniform,n=e.vdom,r=e.data;var o=w.indexOf(n),i=void 0,a=void 0;return-1===o?(i=b(),a=O):(i=E[o].fboId,o>=s.length&&(a=C)),t&&(y[t]=c.Framebuffer(i)),{data:r,fboId:i,addToCollection:a}}),I=x.map(function(e){var t=e.fboId;return t}),P=p.concat(T).concat(I),N=[];return x.forEach(function(e){var n=e.data,r=e.fboId,o=e.addToCollection;-1===N.indexOf(r)&&(N.push(r),o&&o.push(t(n,r,E,P)))}),v.forEach(function(e){var t=e.uniform,n=e.vdom,r=e.opts;const o=f.indexOf(n);a(-1!==o,"contents was discovered by findContentsMeta"),y[t]=c.withOpts(c.Content(o),r)}),m&&(n=n.concat(l(h))),i({},g,{uniforms:y,contextChildren:C,children:O,fboId:o})}var n=[];const o=s(e),f=o.map(function(e){var t=e.vdom;return t});return{data:t(e,-1,[],[]),contentsVDOM:f,imagesToPreload:p(n)}}var i=Object.assign||function(e){for(var t=1;t1))return{data:r[o],vdom:n}}).filter(function(e){return e})}n.exports=r}),__d("gl-react-core/src/data/extractImages.js",[],function(e,t,n){function r(e){const t=[];for(var n in e){var r=e[n];r&&"object"==typeof r&&"image"===r.type&&r.value&&"string"==typeof r.value.uri&&t.push(r.value)}return t}n.exports=r}),__d("gl-react-core/src/data/uniqImages.js",[],function(e,t,n){function r(e){var t=[],n=[];return e.forEach(function(e){-1===t.indexOf(e.uri)&&(t.push(e.uri),n.push(e))}),n}n.exports=r}),__d("gl-react-native/src/View.js",["gl-react-core/src/index.js","react-native/Libraries/react-native/react-native.js","gl-react-native/src/Shaders.js","gl-react-native/src/Uniform.js"],function(e,t,n){function r(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var o=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function a(e,t,n){const r=t*e/n;switch(e%4){case 0:return[r,0];case 1:return[0,r];case 2:return[r*d,r*d];case 3:return[r*d,-r*d]}return e%2?[r,0]:[0,r]}var s=Object.assign||function(e){for(var t=1;t=e?i:l.createElement(h,s({},c,{width:t,height:n,direction:a(e,o,u)}),p(e-1))};return p(u)}}]),t}(p.Component);v.defaultProps={passes:2},v.propTypes={width:f.number,height:f.number,factor:f.number.isRequired,children:f.any.isRequired,passes:f.number},n.exports=v}),__d("VideoBlur/Blur1D.js",["react-native/Libraries/react-native/react-native.js","gl-react-native/src/index.js"],function(e,t,n){function r(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=Object.assign||function(e){for(var t=1;t.5;e.dismissalSpring.setEndValue(o?1:0)}}})},render:function(){var e,t=this;return b.get(this.props.warning)>1&&(e=c.createElement(p,{style:x.bold},"(",b.get(this.props.warning),")"," ")),c.createElement(h,o({style:x.warningBox,ref:function(e){t.container=e}},this.panGesture.panHandlers),c.createElement(f,{onPress:this.props.onOpened},c.createElement(p,{style:x.warningText,numberOfLines:2,ref:function(e){t.text=e}},e,this.props.warning)),c.createElement(h,{ref:function(e){t.closeButton=e},style:x.closeButton},c.createElement(f,{onPress:function(){t.dismissalSpring.setEndValue(1)}},c.createElement(p,{style:x.closeButtonText},"✕"))))}}),T=c.createClass({displayName:"WarningBoxOpened",render:function(){var e;return b.get(this.props.warning)>1&&(e=c.createElement(p,{style:x.bold},"(",b.get(this.props.warning),")"," ")),c.createElement(f,{activeOpacity:.9,onPress:this.props.onClose,style:x.yellowBox},c.createElement(p,{style:x.yellowBoxText},e,this.props.warning),c.createElement(h,{style:x.yellowBoxButtons},c.createElement(f,{onPress:this.props.onDismissed,style:x.yellowBoxButton},c.createElement(p,{style:x.yellowBoxButtonText},"Dismiss")),c.createElement(f,{onPress:this.props.onIgnored,style:x.yellowBoxButton},c.createElement(p,{style:x.yellowBoxButtonText},"Ignore"))))}}),C=!0,O=c.createClass({displayName:"WarningBox",getInitialState:function(){return{totalWarningCount:R,openWarning:null}},componentWillMount:function(){console.yellowBoxResetIgnored&&(i.setItem(y,"[]",function(e){e&&console.warn("Could not reset ignored warnings.",e)}),S=[])},componentDidMount:function(){d(C,"There can only be one WarningBox"),C=!1,E.addListener("count",this._onWarningCount)},componentWillUnmount:function(){E.removeAllListeners(),C=!0},_onWarningCount:function(e){var t=this;setImmediate(function(){t.setState({totalWarningCount:e})})},_onDismiss:function(e){b["delete"](e),this.setState({openWarning:null})},render:function(){var e=this;if(0===b.size)return c.createElement(h,null);if(this.state.openWarning)return c.createElement(T,{warning:this.state.openWarning,onClose:function(){e.setState({openWarning:null})},onDismissed:this._onDismiss.bind(this,this.state.openWarning),onIgnored:function(){S.push(e.state.openWarning),r(),e._onDismiss(e.state.openWarning)}});var t=[];return b.forEach(function(n,r){t.push(c.createElement(w,{key:r,onOpened:function(){e.setState({openWarning:r})},onDismissed:e._onDismiss.bind(e,r),warning:r}))}),c.createElement(h,{style:x.warningContainer},t)}}),x=l.create({bold:{fontWeight:"bold"},closeButton:{position:"absolute",right:0,height:46,width:46},closeButtonText:{color:"white",fontSize:32,position:"relative",left:8},warningContainer:{position:"absolute",left:0,right:0,bottom:0},warningBox:{position:"relative",backgroundColor:"rgba(171, 124, 36, 0.9)",flex:1,height:46},warningText:{color:"white",position:"absolute",left:0,marginLeft:15,marginRight:46,top:7},yellowBox:{backgroundColor:"rgba(171, 124, 36, 0.9)",position:"absolute",left:0,right:0,top:0,bottom:0,padding:15,paddingTop:35},yellowBoxText:{color:"white",fontSize:20},yellowBoxButtons:{flexDirection:"row",position:"absolute",bottom:0},yellowBoxButton:{flex:1,padding:25},yellowBoxButtonText:{color:"white",fontSize:16}});n.exports=O}),__d("AsyncStorage",["NativeModules"],function(e,t,n){"use strict";function r(e){if(!e)return null;var t=new Error(e.message);return t.key=e.key,t}var o=t("NativeModules"),i=o.AsyncLocalStorage,a=o.AsyncRocksDBStorage,s=a||i,u={getItem:function(e,t){return new Promise(function(n,o){s.multiGet([e],function(e,i){var a=i&&i[0]&&i[0][1]?i[0][1]:null;t&&t(e&&r(e[0])||null,a),e?o(r(e[0])):n(a)})})},setItem:function(e,t,n){return new Promise(function(o,i){s.multiSet([[e,t]],function(e){n&&n(e&&r(e[0])||null),e?i(r(e[0])):o(null)})})},removeItem:function(e,t){return new Promise(function(n,o){s.multiRemove([e],function(e){t&&t(e&&r(e[0])||null),e?o(r(e[0])):n(null)})})},mergeItem:function(e,t,n){return new Promise(function(o,i){s.multiMerge([[e,t]],function(e){n&&n(e&&r(e[0])||null),e?i(r(e[0])):o(null)})})},clear:function(e){return new Promise(function(t,n){s.clear(function(o){e&&e(r(o)),o&&r(o)?n(r(o)):t(null)})})},getAllKeys:function(e){return new Promise(function(t,n){s.getAllKeys(function(o,i){e&&e(r(o),i),o?n(r(o)):t(i)})})},multiGet:function(e,t){return new Promise(function(n,o){s.multiGet(e,function(e,i){var a=e&&e.map(function(e){return r(e)})||null;t&&t(a,i),e?o(a):n(i)})})},multiSet:function(e,t){return new Promise(function(n,o){s.multiSet(e,function(e){var i=e&&e.map(function(e){return r(e)})||null;t&&t(i),e?o(i):n(null)})})},multiRemove:function(e,t){return new Promise(function(n,o){s.multiRemove(e,function(e){var i=e&&e.map(function(e){return r(e)})||null;t&&t(i),e?o(i):n(null)})})},multiMerge:function(e,t){return new Promise(function(n,o){s.multiMerge(e,function(e){var i=e&&e.map(function(e){return r(e)})||null;t&&t(i),e?o(i):n(null)})})}};s.multiMerge||(delete u.mergeItem,delete u.multiMerge),n.exports=u}),__d("setupDevtools",["flattenStyle","ReactCurrentOwner","ReactInstanceHandles","ReactNativeMount","ReactReconciler","ReactNativeTextComponent"],function(global,require,module,exports){"use strict";function setupDevtools(){function tryToConnect(){ws.send("attach:agent");var e=setInterval(function(){return ws.send("attach:agent")},500);ws.onmessage=function(t){0===t.data.indexOf("eval:")&&(clearInterval(e),initialize(t.data.slice("eval:".length)))}}function initialize(text){try{eval(text)}catch(e){return void console.error("Failed to eval"+e.message)}window.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject({CurrentOwner:require("ReactCurrentOwner"),InstanceHandles:require("ReactInstanceHandles"),Mount:require("ReactNativeMount"),Reconciler:require("ReactReconciler"),TextComponent:require("ReactNativeTextComponent")}),ws.onmessage=handleMessage}function handleMessage(e){var t;try{t=JSON.parse(e.data)}catch(n){return console.error("failed to parse json: "+e.data)}return t.$close||t.$error?(closeListeners.forEach(function(e){return e()}),window.__REACT_DEVTOOLS_GLOBAL_HOOK__.emit("shutdown"),void tryToConnect()):void(t.$open||messageListeners.forEach(function(e){try{e(t)}catch(n){throw console.log(t),n}}))}var messageListeners=[],closeListeners=[],ws=new window.WebSocket("ws://localhost:8081/devtools"),FOR_BACKEND={resolveRNStyle:require("flattenStyle"),wall:{listen:function(e){messageListeners.push(e)},onClose:function(e){closeListeners.push(e)},send:function(e){ws.send(JSON.stringify(e))}}};ws.onclose=function(){console.warn("devtools socket closed"),closeListeners.forEach(function(e){return e()})},ws.onerror=function(e){console.warn("devtools socket errored",e),closeListeners.forEach(function(e){return e()})},ws.onopen=function(){tryToConnect()}}module.exports=setupDevtools}),__d("RCTRenderingPerf",["ReactDefaultPerf","invariant"],function(e,t,n){"use strict";var r=t("ReactDefaultPerf"),o=t("invariant"),i=[],a=!1,s={toggle:function(){console.log("Render perfomance measurements enabled"),a=!0},start:function(){a&&(r.start(),i.forEach(function(e){return e.start()}))},stop:function(){if(a){r.stop(),r.printInclusive(),r.printWasted();for(var e=0,t=0,n=r.getLastMeasurements(),o=0;o component":e.componentName,"Inclusive time (ms)":r(e.time),Instances:e.count}})),console.log("Total time:",a.getTotalTime(e).toFixed(2)+" ms")},getMeasurementsSummaryMap:function(e){var t=a.getInclusiveSummary(e,!0);return t.map(function(e){return{"Owner > component":e.componentName,"Wasted time (ms)":e.time,Instances:e.count}})},printWasted:function(e){e=e||l._allMeasurements,console.table(l.getMeasurementsSummaryMap(e)),console.log("Total time:",a.getTotalTime(e).toFixed(2)+" ms")},printDOM:function(e){e=e||l._allMeasurements;var t=a.getDOMSummary(e);console.table(t.map(function(e){var t={};return t[i.ID_ATTRIBUTE_NAME]=e.id,t.type=e.type,t.args=JSON.stringify(e.args),t})),console.log("Total time:",a.getTotalTime(e).toFixed(2)+" ms")},_recordWrite:function(e,t,n,r){var o=l._allMeasurements[l._allMeasurements.length-1].writes;o[e]=o[e]||[],o[e].push({type:t,time:n,args:r})},measure:function(e,t,n){return function(){for(var r=arguments.length,i=Array(r),a=0;r>a;a++)i[a]=arguments[a];var u,p,f;if("_renderNewRootComponent"===t||"flushBatchedUpdates"===t)return l._allMeasurements.push({exclusive:{},inclusive:{},render:{},counts:{},writes:{},displayNames:{},totalTime:0}),f=c(),p=n.apply(this,i),l._allMeasurements[l._allMeasurements.length-1].totalTime=c()-f,p;if("_mountImageIntoNode"===t||"ReactDOMIDOperations"===e){if(f=c(),p=n.apply(this,i),u=c()-f,"_mountImageIntoNode"===t){var h=s.getID(i[1]);l._recordWrite(h,t,u,i[0])}else"dangerouslyProcessChildrenUpdates"===t?i[0].forEach(function(e){var t={};null!==e.fromIndex&&(t.fromIndex=e.fromIndex),null!==e.toIndex&&(t.toIndex=e.toIndex),null!==e.textContent&&(t.textContent=e.textContent),null!==e.markupIndex&&(t.markup=i[1][e.markupIndex]),l._recordWrite(e.parentID,e.type,u,t)}):l._recordWrite(i[0],t,u,Array.prototype.slice.call(i,1));return p}if("ReactCompositeComponent"!==e||"mountComponent"!==t&&"updateComponent"!==t&&"_renderValidatedComponent"!==t)return n.apply(this,i);if("string"==typeof this._currentElement.type)return n.apply(this,i);var d="mountComponent"===t?i[0]:this._rootNodeID,v="_renderValidatedComponent"===t,m="mountComponent"===t,g=l._mountStack,y=l._allMeasurements[l._allMeasurements.length-1];if(v?o(y.counts,d,1):m&&g.push(0),f=c(),p=n.apply(this,i),u=c()-f,v)o(y.render,d,u);else if(m){var _=g.pop();g[g.length-1]+=u,o(y.exclusive,d,u-_),o(y.inclusive,d,u)}else o(y.inclusive,d,u);return y.displayNames[d]={current:this.getName(),owner:this._currentElement._owner?this._currentElement._owner.getName():""},p}}};n.exports=l}),__d("DOMProperty",["invariant"],function(e,t,n){"use strict";function r(e,t){return(e&t)===t}var o=t("invariant"),i={MUST_USE_ATTRIBUTE:1,MUST_USE_PROPERTY:2,HAS_SIDE_EFFECTS:4,HAS_BOOLEAN_VALUE:8,HAS_NUMERIC_VALUE:16,HAS_POSITIVE_NUMERIC_VALUE:48,HAS_OVERLOADED_BOOLEAN_VALUE:64,injectDOMPropertyConfig:function(e){var t=i,n=e.Properties||{},a=e.DOMAttributeNamespaces||{},u=e.DOMAttributeNames||{},c=e.DOMPropertyNames||{},l=e.DOMMutationMethods||{};e.isCustomAttribute&&s._isCustomAttributeFunctions.push(e.isCustomAttribute);for(var p in n){o(!s.properties.hasOwnProperty(p),"injectDOMPropertyConfig(...): You're trying to inject DOM property '%s' which has already been injected. You may be accidentally injecting the same DOM property config twice, or you may be injecting two configs that have conflicting property names.",p);var f=p.toLowerCase(),h=n[p],d={attributeName:f,attributeNamespace:null,propertyName:p,mutationMethod:null,mustUseAttribute:r(h,t.MUST_USE_ATTRIBUTE),mustUseProperty:r(h,t.MUST_USE_PROPERTY),hasSideEffects:r(h,t.HAS_SIDE_EFFECTS),hasBooleanValue:r(h,t.HAS_BOOLEAN_VALUE),hasNumericValue:r(h,t.HAS_NUMERIC_VALUE),hasPositiveNumericValue:r(h,t.HAS_POSITIVE_NUMERIC_VALUE),hasOverloadedBooleanValue:r(h,t.HAS_OVERLOADED_BOOLEAN_VALUE)};if(o(!d.mustUseAttribute||!d.mustUseProperty,"DOMProperty: Cannot require using both attribute and property: %s",p),o(d.mustUseProperty||!d.hasSideEffects,"DOMProperty: Properties that have side effects must use property: %s",p),o(d.hasBooleanValue+d.hasNumericValue+d.hasOverloadedBooleanValue<=1,"DOMProperty: Value can be one of boolean, overloaded boolean, or numeric value, but not a combination: %s",p),__DEV__&&(s.getPossibleStandardName[f]=p),u.hasOwnProperty(p)){var v=u[p];d.attributeName=v,__DEV__&&(s.getPossibleStandardName[v]=p)}a.hasOwnProperty(p)&&(d.attributeNamespace=a[p]),c.hasOwnProperty(p)&&(d.propertyName=c[p]),l.hasOwnProperty(p)&&(d.mutationMethod=l[p]),s.properties[p]=d}}},a={},s={ID_ATTRIBUTE_NAME:"data-reactid",properties:{},getPossibleStandardName:__DEV__?{}:null,_isCustomAttributeFunctions:[],isCustomAttribute:function(e){for(var t=0;t=c&&s.push(n[t]);return s.sort(function(e,t){return t.exclusive-e.exclusive}),s}function a(e,t){for(var n,r={},o=0;o "+f.current,r[n]=r[n]||{componentName:n,time:0,count:0},a.inclusive[p]&&(r[n].time+=a.inclusive[p]),a.counts[p]&&(r[n].count+=a.counts[p])}}var h=[];for(n in r)r[n].time>=c&&h.push(r[n]);return h.sort(function(e,t){return t.time-e.time}),h}function s(e){var t={},n=Object.keys(e.writes),r=u({},e.exclusive,e.inclusive);for(var o in r){for(var i=!1,a=0;a0&&(t[o]=!0)}return t}var u=t("Object.assign"),c=1.2,l={_mountImageIntoNode:"set innerHTML",INSERT_MARKUP:"set innerHTML",MOVE_EXISTING:"move",REMOVE_NODE:"remove",TEXT_CONTENT:"set textContent",updatePropertyByID:"update attribute",deletePropertyByID:"delete attribute",updateStylesByID:"update styles",updateInnerHTMLByID:"set innerHTML",dangerouslyReplaceNodeWithMarkupByID:"replace"},p={getExclusiveSummary:i,getInclusiveSummary:a,getDOMSummary:o,getTotalTime:r};n.exports=p}),__d("ReactMount",["DOMProperty","ReactBrowserEventEmitter","ReactCurrentOwner","ReactElement","ReactEmptyComponent","ReactInstanceHandles","ReactInstanceMap","ReactMarkupChecksum","ReactPerf","ReactReconciler","ReactUpdateQueue","ReactUpdates","emptyObject","containsNode","instantiateReactComponent","invariant","setInnerHTML","shouldUpdateReactComponent","validateDOMNesting","warning"],function(e,t,n){"use strict";function r(e,t){for(var n=Math.min(e.length,t.length),r=0;n>r;r++)if(e.charAt(r)!==t.charAt(r))return r;return e.length===t.length?-1:n}function o(e){return e?e.nodeType===U?e.documentElement:e.firstChild:null}function i(e){var t=o(e);return t&&J.getID(t)}function a(e){var t=s(e);if(t)if(B.hasOwnProperty(t)){var n=B[t];n!==e&&(M(!p(n,t),"ReactMount: Two valid but unequal nodes with the same `%s`: %s",F,t),B[t]=e)}else B[t]=e;return t}function s(e){return e&&e.getAttribute&&e.getAttribute(F)||""}function u(e,t){var n=s(e);n!==t&&delete B[n],e.setAttribute(F,t),B[t]=e}function c(e){return B.hasOwnProperty(e)&&p(B[e],e)||(B[e]=J.findReactNodeByID(e)),B[e]}function l(e){var t=w.get(e)._rootNodeID;return R.isNullComponentID(t)?null:(B.hasOwnProperty(t)&&p(B[t],t)||(B[t]=J.findReactNodeByID(t)),B[t])}function p(e,t){if(e){M(s(e)===t,"ReactMount: Unexpected modification of `%s`",F);var n=J.findReactContainerForID(t);if(n&&N(n,e))return!0}return!1}function f(e){delete B[e]}function h(e){var t=B[e];return t&&p(t,e)?void(K=t):!1}function d(e){K=null,E.traverseAncestors(e,h);var t=K;return K=null,t}function v(e,t,n,r,o,i){if(__DEV__){i===P&&(i={});var a=n.nodeName.toLowerCase();i[j.ancestorInfoContextKey]=j.updatedAncestorInfo(null,a,null)}var s=O.mountComponent(e,t,r,i);e._renderedComponent._topLevelWrapper=e,J._mountImageIntoNode(s,n,o)}function m(e,t,n,r,o){var i=I.ReactReconcileTransaction.getPooled();i.perform(v,null,e,t,n,i,r,o),I.ReactReconcileTransaction.release(i)}function g(e,t){for(O.unmountComponent(e),t.nodeType===U&&(t=t.documentElement);t.lastChild;)t.removeChild(t.lastChild)}var y=t("DOMProperty"),_=t("ReactBrowserEventEmitter"),b=t("ReactCurrentOwner"),S=t("ReactElement"),R=t("ReactEmptyComponent"),E=t("ReactInstanceHandles"),w=t("ReactInstanceMap"),T=t("ReactMarkupChecksum"),C=t("ReactPerf"),O=t("ReactReconciler"),x=t("ReactUpdateQueue"),I=t("ReactUpdates"),P=t("emptyObject"),N=t("containsNode"),D=t("instantiateReactComponent"),M=t("invariant"),k=t("setInnerHTML"),A=t("shouldUpdateReactComponent"),j=t("validateDOMNesting"),L=t("warning"),V=E.SEPARATOR,F=y.ID_ATTRIBUTE_NAME,B={},H=1,U=9,q=11,z={},G={};if(__DEV__)var W={};var Y=[],K=null,X=function(){};X.prototype.render=function(){return this.props};var J={_instancesByReactRootID:z,scrollMonitor:function(e,t){t()},_updateRootComponent:function(e,t,n,r){return J.scrollMonitor(n,function(){x.enqueueElementInternal(e,t),r&&x.enqueueCallbackInternal(e,r)}),__DEV__&&(W[i(n)]=o(n)),e},_registerComponent:function(e,t){M(t&&(t.nodeType===H||t.nodeType===U||t.nodeType===q),"_registerComponent(...): Target container is not a DOM element."),_.ensureScrollValueMonitoring();var n=J.registerContainer(t);return z[n]=e,n},_renderNewRootComponent:function(e,t,n,r){L(null==b.current,"_renderNewRootComponent(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",b.current&&b.current.getName()||"ReactCompositeComponent");var i=D(e,null),a=J._registerComponent(i,t);return I.batchedUpdates(m,i,a,t,n,r),__DEV__&&(W[a]=o(t)),i},renderSubtreeIntoContainer:function(e,t,n,r){return M(null!=e&&null!=e._reactInternalInstance,"parentComponent must be a valid React Component"),J._renderSubtreeIntoContainer(e,t,n,r)},_renderSubtreeIntoContainer:function(e,t,n,r){M(S.isValidElement(t),"React.render(): Invalid component element.%s","string"==typeof t?" Instead of passing an element string, make sure to instantiate it by passing it to React.createElement.":"function"==typeof t?" Instead of passing a component class, make sure to instantiate it by passing it to React.createElement.":null!=t&&void 0!==t.props?" This may be caused by unintentionally loading two independent copies of React.":""),L(!n||!n.tagName||"BODY"!==n.tagName.toUpperCase(),"render(): Rendering components directly into document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try rendering into a container element created for your app.");var a=new S(X,null,null,null,t),s=z[i(n)];if(s){var u=s._currentElement,c=u.props;if(A(c,t))return J._updateRootComponent(s,a,n,r)._renderedComponent.getPublicInstance();J.unmountComponentAtNode(n)}var l=o(n),p=l&&J.isRenderedByReact(l);if(__DEV__&&(!p||l.nextSibling))for(var f=l;f;){if(J.isRenderedByReact(f)){L(!1,"render(): Target node has markup rendered by React, but there are unrelated nodes as well. This is most commonly caused by white-space inserted around server-rendered markup.");break}f=f.nextSibling}var h=p&&!s,d=J._renderNewRootComponent(a,n,h,null!=e?e._reactInternalInstance._processChildContext(e._reactInternalInstance._context):P)._renderedComponent.getPublicInstance();return r&&r.call(d),d},render:function(e,t,n){return J._renderSubtreeIntoContainer(null,e,t,n)},registerContainer:function(e){var t=i(e);return t&&(t=E.getReactRootIDFromNodeID(t)),t||(t=E.createReactRootID()),G[t]=e,t},unmountComponentAtNode:function(e){L(null==b.current,"unmountComponentAtNode(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. Check the render method of %s.",b.current&&b.current.getName()||"ReactCompositeComponent"),M(e&&(e.nodeType===H||e.nodeType===U||e.nodeType===q),"unmountComponentAtNode(...): Target container is not a DOM element.");var t=i(e),n=z[t];return n?(I.batchedUpdates(g,n,e),delete z[t],delete G[t],__DEV__&&delete W[t],!0):!1},findReactContainerForID:function(e){var t=E.getReactRootIDFromNodeID(e),n=G[t];if(__DEV__){var r=W[t];if(r&&r.parentNode!==n){L(s(r)===t,"ReactMount: Root element ID differed from reactRootID.");var o=n.firstChild;o&&t===s(o)?W[t]=o:L(!1,"ReactMount: Root element has been removed from its original container. New container: %s",r.parentNode)}}return n},findReactNodeByID:function(e){var t=J.findReactContainerForID(e);return J.findComponentRoot(t,e)},isRenderedByReact:function(e){if(1!==e.nodeType)return!1;var t=J.getID(e);return t?t.charAt(0)===V:!1},getFirstReactDOM:function(e){for(var t=e;t&&t.parentNode!==t;){if(J.isRenderedByReact(t))return t;t=t.parentNode}return null},findComponentRoot:function(e,t){var n=Y,r=0,o=d(t)||e;for(n[0]=o.firstChild,n.length=1;r when using tables, nesting tags like
,

, or , or using non-SVG elements in an parent. Try inspecting the child nodes of the element with React ID `%s`.",t,J.getID(e))},_mountImageIntoNode:function(e,t,n){if(M(t&&(t.nodeType===H||t.nodeType===U||t.nodeType===q),"mountComponentIntoNode(...): Target container is not valid."),n){var i=o(t);if(T.canReuseMarkup(e,i))return;var a=i.getAttribute(T.CHECKSUM_ATTR_NAME);i.removeAttribute(T.CHECKSUM_ATTR_NAME);var s=i.outerHTML;i.setAttribute(T.CHECKSUM_ATTR_NAME,a);var u=r(e,s),c=" (client) "+e.substring(u-20,u+20)+"\n (server) "+s.substring(u-20,u+20);M(t.nodeType!==U,"You're trying to render a component to the document using server rendering but the checksum was invalid. This usually means you rendered a different component type or props on the client from the one on the server, or your render() methods are impure. React cannot handle this case due to cross-browser quirks by rendering at the document root. You should look for environment dependent code in your components and ensure the props are the same client and server side:\n%s",c),__DEV__&&L(!1,"React attempted to reuse markup in a container but the checksum was invalid. This generally means that you are using server rendering and the markup generated on the server was not what the client was expecting. React injected new markup to compensate which works but you have lost many of the benefits of server rendering. Instead, figure out why the markup being generated is different on the client or server:\n%s",c) +}M(t.nodeType!==U,"You're trying to render a component to the document but you didn't use server rendering. We can't do this without using server rendering due to cross-browser quirks. See React.renderToString() for server rendering."),k(t,e)},getReactRootID:i,getID:a,setID:u,getNode:c,getNodeFromInstance:l,purgeID:f};C.measureMethods(J,"ReactMount",{_renderNewRootComponent:"_renderNewRootComponent",_mountImageIntoNode:"_mountImageIntoNode"}),n.exports=J}),__d("ReactBrowserEventEmitter",["EventConstants","EventPluginHub","EventPluginRegistry","ReactEventEmitterMixin","ViewportMetrics","Object.assign","isEventSupported"],function(e,t,n){"use strict";function r(e){return Object.prototype.hasOwnProperty.call(e,v)||(e[v]=h++,p[e[v]]={}),p[e[v]]}var o=t("EventConstants"),i=t("EventPluginHub"),a=t("EventPluginRegistry"),s=t("ReactEventEmitterMixin"),u=t("ViewportMetrics"),c=t("Object.assign"),l=t("isEventSupported"),p={},f=!1,h=0,d={topBlur:"blur",topChange:"change",topClick:"click",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topScroll:"scroll",topSelectionChange:"selectionchange",topTextInput:"textInput",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topWheel:"wheel"},v="_reactListenersID"+String(Math.random()).slice(2),m=c({},s,{ReactEventListener:null,injection:{injectReactEventListener:function(e){e.setHandleTopLevel(m.handleTopLevel),m.ReactEventListener=e}},setEnabled:function(e){m.ReactEventListener&&m.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!m.ReactEventListener||!m.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,i=r(n),s=a.registrationNameDependencies[e],u=o.topLevelTypes,c=0;c"," "+o.CHECKSUM_ATTR_NAME+'="'+t+'">')},canReuseMarkup:function(e,t){var n=t.getAttribute(o.CHECKSUM_ATTR_NAME);n=n&&parseInt(n,10);var i=r(e);return i===n}};n.exports=o}),__d("adler32",[],function(e,t,n){"use strict";function r(e){for(var t=1,n=0,r=0;r]/,a=function(e,t){e.innerHTML=t};if("undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction&&(a=function(e,t){MSApp.execUnsafeLocalFunction(function(){e.innerHTML=t})}),r.canUseDOM){var s=document.createElement("div");s.innerHTML=" ",""===s.innerHTML&&(a=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),o.test(t)||"<"===t[0]&&i.test(t)){e.innerHTML=String.fromCharCode(65279)+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t})}n.exports=a}),__d("validateDOMNesting",["Object.assign","emptyFunction","warning"],function(e,t,n){"use strict";var r=t("Object.assign"),o=t("emptyFunction"),i=t("warning"),a=o;if(__DEV__){var s=["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"],u=["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"],c=u.concat(["button"]),l=["dd","dt","li","option","optgroup","p","rp","rt"],p={parentTag:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null},f=function(e,t,n){var o=r({},e||p),i={tag:t,instance:n};return-1!==u.indexOf(t)&&(o.aTagInScope=null,o.buttonTagInScope=null,o.nobrTagInScope=null),-1!==c.indexOf(t)&&(o.pTagInButtonScope=null),-1!==s.indexOf(t)&&"address"!==t&&"div"!==t&&"p"!==t&&(o.listItemTagAutoclosing=null,o.dlItemTagAutoclosing=null),o.parentTag=i,"form"===t&&(o.formTag=i),"a"===t&&(o.aTagInScope=i),"button"===t&&(o.buttonTagInScope=i),"nobr"===t&&(o.nobrTagInScope=i),"p"===t&&(o.pTagInButtonScope=i),"li"===t&&(o.listItemTagAutoclosing=i),("dd"===t||"dt"===t)&&(o.dlItemTagAutoclosing=i),o},h=function(e,t){switch(t){case"select":return"option"===e||"optgroup"===e||"#text"===e;case"optgroup":return"option"===e||"#text"===e;case"option":return"#text"===e;case"tr":return"th"===e||"td"===e||"style"===e||"script"===e||"template"===e;case"tbody":case"thead":case"tfoot":return"tr"===e||"style"===e||"script"===e||"template"===e;case"colgroup":return"col"===e||"template"===e;case"table":return"caption"===e||"colgroup"===e||"tbody"===e||"tfoot"===e||"thead"===e||"style"===e||"script"===e||"template"===e;case"head":return"base"===e||"basefont"===e||"bgsound"===e||"link"===e||"meta"===e||"title"===e||"noscript"===e||"noframes"===e||"style"===e||"script"===e||"template"===e;case"html":return"head"===e||"body"===e}switch(e){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"h1"!==t&&"h2"!==t&&"h3"!==t&&"h4"!==t&&"h5"!==t&&"h6"!==t;case"rp":case"rt":return-1===l.indexOf(t);case"caption":case"col":case"colgroup":case"frame":case"head":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return null==t}return!0},d=function(e,t){switch(e){case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dialog":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"main":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":case"pre":case"listing":case"table":case"hr":case"xmp":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return t.pTagInButtonScope;case"form":return t.formTag||t.pTagInButtonScope;case"li":return t.listItemTagAutoclosing;case"dd":case"dt":return t.dlItemTagAutoclosing;case"button":return t.buttonTagInScope;case"a":return t.aTagInScope;case"nobr":return t.nobrTagInScope}return null},v=function(e){if(!e)return[];var t=[];do t.push(e);while(e=e._currentElement._owner);return t.reverse(),t},m={};a=function(e,t,n){n=n||p;var r=n.parentTag,o=r&&r.tag,a=h(e,o)?null:r,s=a?null:d(e,n),u=a||s;if(u){var c,l=u.tag,f=u.instance,g=t&&t._currentElement._owner,y=f&&f._currentElement._owner,_=v(g),b=v(y),S=Math.min(_.length,b.length),R=-1;for(c=0;S>c&&_[c]===b[c];c++)R=c;var E="(unknown)",w=_.slice(R+1).map(function(e){return e.getName()||E}),T=b.slice(R+1).map(function(e){return e.getName()||E}),C=[].concat(-1!==R?_[R].getName()||E:[],T,l,s?["..."]:[],w,e).join(" > "),O=!!a+"|"+e+"|"+l+"|"+C;if(m[O])return;if(m[O]=!0,a){var x="";"table"===l&&"tr"===e&&(x+=" Add a to your code to match the DOM tree generated by the browser."),i(!1,"validateDOMNesting(...): <%s> cannot appear as a child of <%s>. See %s.%s",e,l,C,x)}else i(!1,"validateDOMNesting(...): <%s> cannot appear as a descendant of <%s>. See %s.",e,l,C)}},a.ancestorInfoContextKey="__validateDOMNesting_ancestorInfo$"+Math.random().toString(36).slice(2),a.updatedAncestorInfo=f,a.isTagValidInContext=function(e,t){t=t||p;var n=t.parentTag,r=n&&n.tag;return h(e,r)&&!d(e,t)}}n.exports=a}),__d("AppStateIOS",["Map","NativeModules","RCTDeviceEventEmitter","logError","invariant"],function(e,t,n){"use strict";var r=t("Map"),o=t("NativeModules"),i=t("RCTDeviceEventEmitter"),a=o.AppState,s=t("logError"),u=t("invariant"),c={change:new r,memoryWarning:new r},l={addEventListener:function(e,t){u(-1!==["change","memoryWarning"].indexOf(e),'Trying to subscribe to unknown event: "%s"',e),"change"===e?c[e].set(t,i.addListener("appStateDidChange",function(e){t(e.app_state)})):"memoryWarning"===e&&c[e].set(t,i.addListener("memoryWarning",t))},removeEventListener:function(e,t){u(-1!==["change","memoryWarning"].indexOf(e),'Trying to remove listener for unknown event: "%s"',e),c[e].has(t)&&(c[e].get(t).remove(),c[e]["delete"](t))},currentState:a&&a.initialAppState};i.addListener("appStateDidChange",function(e){l.currentState=e.app_state}),a.getCurrentAppState(function(e){l.currentState=e.app_state},s),n.exports=l}),__d("BackAndroid",["warning"],function(e,t,n){"use strict";function r(){o(!1,"BackAndroid is not supported on this platform.")}var o=t("warning"),i={exitApp:r,addEventListener:r,removeEventListener:r};n.exports=i}),__d("CameraRoll",["ReactPropTypes","NativeModules","createStrictShapeTypeChecker","deepFreezeAndThrowOnMutationInDev","invariant"],function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;nt&&!i||!o||n&&!a&&s||r&&s)return 1;if(t>e&&!n||!s||i&&!r&&o||a&&o)return-1}return 0}function o(e,t,n){for(var r=e.length,o=n?r:-1;n?o--:++o-1;);return n}function c(e,t){for(var n=e.length;n--&&t.indexOf(e.charAt(n))>-1;);return n}function l(e,n){return t(e.criteria,n.criteria)||e.index-n.index}function p(e,n,r){for(var o=-1,i=e.criteria,a=n.criteria,s=i.length,u=r.length;++o=u)return c;var l=r[o];return c*("asc"===l||l===!0?1:-1)}}return e.index-n.index}function f(e){return zt[e]}function h(e){return Gt[e]}function d(e,t,n){return t?e=Kt[e]:n&&(e=Xt[e]),"\\"+e}function v(e){return"\\"+Xt[e]}function m(e,t,n){for(var r=e.length,o=t+(n?0:-1);n?o--:++o=e&&e>=9&&13>=e||32==e||160==e||5760==e||6158==e||e>=8192&&(8202>=e||8232==e||8233==e||8239==e||8287==e||12288==e||65279==e)}function _(e,t){for(var n=-1,r=e.length,o=-1,i=[];++nt,o=n?e.length:0,i=Wr(0,o,this.__views__),a=i.start,s=i.end,u=s-a,c=r?s:a-1,l=this.__iteratees__,p=l.length,f=0,h=Es(u,this.__takeCount__);if(!n||B>o||o==u&&h==u)return rr(r&&n?e.reverse():e,this.__actions__);var d=[];e:for(;u--&&h>f;){c+=t;for(var v=-1,m=e[c];++v=B?vr(t):null,c=t.length;u&&(a=Qt,s=!1,t=u);e:for(;++on&&(n=-n>o?0:o+n),r=r===T||r>o?o:+r||0,0>r&&(r+=o),o=n>r?0:r>>>0,n>>>=0;o>n;)e[n++]=t;return e}function xn(e,t){var n=[];return js(e,function(e,r,o){t(e,r,o)&&n.push(e)}),n}function In(e,t,n,r){var o;return n(e,function(e,n,i){return t(e,n,i)?(o=r?n:e,!1):void 0}),o}function Pn(e,t,n,r){r||(r=[]);for(var o=-1,i=e.length;++or;)e=e[t[r++]];return r&&r==o?e:T}}function jn(e,t,n,r,o,i){return e===t?!0:null==e||null==t||!Ai(e)&&!g(t)?e!==e&&t!==t:Ln(e,t,jn,n,r,o,i)}function Ln(e,t,n,r,o,i,a){var s=Iu(e),u=Iu(t),c=W,l=W;s||(c=rs.call(e),c==G?c=Z:c!=Z&&(s=zi(e))),u||(l=rs.call(t),l==G?l=Z:l!=Z&&(u=zi(t)));var p=c==Z,f=l==Z,h=c==l;if(h&&!s&&!p)return Fr(e,t,c);if(!o){var d=p&&ts.call(e,"__wrapped__"),v=f&&ts.call(t,"__wrapped__");if(d||v)return n(d?e.value():e,v?t.value():t,r,o,i,a)}if(!h)return!1;i||(i=[]),a||(a=[]);for(var m=i.length;m--;)if(i[m]==e)return a[m]==t;i.push(e),a.push(t);var g=(s?Vr:Br)(e,t,n,r,o,i,a);return i.pop(),a.pop(),g}function Vn(e,t,n){var r=t.length,o=r,i=!n;if(null==e)return!o;for(e=po(e);r--;){var a=t[r];if(i&&a[2]?a[1]!==e[a[0]]:!(a[0]in e))return!1}for(;++rt&&(t=-t>o?0:o+t),n=n===T||n>o?o:+n||0,0>n&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var i=Ha(o);++r=B,u=s?vr():null,c=[];u?(r=Qt,a=!1):(s=!1,u=t?[]:c);e:for(;++n=o){for(;o>r;){var i=r+o>>>1,a=e[i];(n?t>=a:t>a)&&null!==a?r=i+1:o=i}return o}return ir(e,t,xa,n)}function ir(e,t,n,r){t=n(t);for(var o=0,i=e?e.length:0,a=t!==t,s=null===t,u=t===T;i>o;){var c=ys((o+i)/2),l=n(e[c]),p=l!==T,f=l===l;if(a)var h=f||r;else h=s?f&&p&&(r||null!=l):u?f&&(r||p):null==l?!1:r?t>=l:t>l;h?o=c+1:i=c}return Es(i,Ps)}function ar(e,t,n){if("function"!=typeof e)return xa;if(t===T)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 3:return function(n,r,o){return e.call(t,n,r,o)};case 4:return function(n,r,o,i){return e.call(t,n,r,o,i)};case 5:return function(n,r,o,i,a){return e.call(t,n,r,o,i,a)}}return function(){return e.apply(t,arguments)}}function sr(e){var t=new as(e.byteLength),n=new ds(t);return n.set(new ds(e)),t}function ur(e,t,n){for(var r=n.length,o=-1,i=Rs(e.length-r,0),a=-1,s=t.length,u=Ha(s+i);++a2?n[o-2]:T,a=o>2?n[2]:T,s=o>1?n[o-1]:T;for("function"==typeof i?(i=ar(i,s,5),o-=2):(i="function"==typeof s?s:T,o-=i?1:0),a&&Zr(n[0],n[1],a)&&(i=3>o?T:i,o=1);++r-1?n[a]:T}return In(n,r,e)}}function Rr(e){return function(t,n,r){return t&&t.length?(n=Hr(n,r,3),o(t,n,e)):-1}}function Er(e){return function(t,n,r){return n=Hr(n,r,3),In(t,n,e,!0)}}function wr(e){return function(){for(var t,n=arguments.length,r=e?n:-1,o=0,i=Ha(n);e?r--:++r=B)return t.plant(r).value();for(var o=0,a=n?i[o].apply(this,e):r;++oy){var w=s?en(s):T,C=Rs(c-y,0),I=d?E:T,P=d?T:E,N=d?S:T,k=d?T:S;t|=d?D:M,t&=~(d?M:D),v||(t&=~(O|x));var A=[e,t,n,N,I,k,P,w,u,C],j=Dr.apply(T,A);return to(e)&&qs(j,A),j.placeholder=R,j}}var L=f?n:this,V=h?L[e]:e;return s&&(S=uo(S,s)),p&&u=t||!bs(t))return"";var o=t-r;return n=null==n?" ":n+"",ga(n,ms(o/n.length)).slice(0,o)}function kr(e,t,n,r){function o(){for(var t=-1,s=arguments.length,u=-1,c=r.length,l=Ha(c+s);++uu))return!1;for(;++s-1&&e%1==0&&t>e}function Zr(e,t,n){if(!Ai(n))return!1;var r=typeof t;if("number"==r?Qr(n)&&$r(t,n.length):"string"==r&&t in n){var o=n[t];return e===e?e===o:o!==o}return!1}function eo(e,t){var n=typeof e;if("string"==n&&Tt.test(e)||"number"==n)return!0;if(Iu(e))return!1;var r=!wt.test(e);return r||null!=t&&e in po(t)}function to(e){var t=Ur(e);if(!(t in Q.prototype))return!1;var r=n[t];if(e===r)return!0;var o=Hs(r);return!!o&&e===o[0]}function no(e){return"number"==typeof e&&e>-1&&e%1==0&&Ds>=e}function ro(e){return e===e&&!Ai(e)}function oo(e,t){var n=e[1],r=t[1],o=n|r,i=k>o,a=r==k&&n==P||r==k&&n==A&&e[7].length<=t[8]||r==(k|A)&&n==P;if(!i&&!a)return e;r&O&&(e[2]=t[2],o|=n&O?0:I);var s=t[3];if(s){var u=e[3];e[3]=u?ur(u,s,t[4]):en(s),e[4]=u?_(e[3],z):en(t[4])}return s=t[5],s&&(u=e[5],e[5]=u?cr(u,s,t[6]):en(s),e[6]=u?_(e[5],z):en(t[6])),s=t[7],s&&(e[7]=en(s)),r&k&&(e[8]=null==e[8]?t[8]:Es(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=o,e}function io(e,t){return e===T?t:Pu(e,t,io)}function ao(e,t){e=po(e);for(var n=-1,r=t.length,o={};++nr;)a[++i]=Xn(e,r,r+=t);return a}function mo(e){for(var t=-1,n=e?e.length:0,r=-1,o=[];++tt?0:t)):[]}function yo(e,t,n){var r=e?e.length:0;return r?((n?Zr(e,t,n):null==t)&&(t=1),t=r-(+t||0),Xn(e,0,0>t?0:t)):[]}function _o(e,t,n){return e&&e.length?nr(e,Hr(t,n,3),!0,!0):[]}function bo(e,t,n){return e&&e.length?nr(e,Hr(t,n,3),!0):[]}function So(e,t,n,r){var o=e?e.length:0;return o?(n&&"number"!=typeof n&&Zr(e,t,n)&&(n=0,r=o),On(e,t,n,r)):[]}function Ro(e){return e?e[0]:T}function Eo(e,t,n){var r=e?e.length:0;return n&&Zr(e,t,n)&&(t=!1),r?Pn(e,t):[]}function wo(e){var t=e?e.length:0;return t?Pn(e,!0):[]}function To(e,t,n){var r=e?e.length:0;if(!r)return-1;if("number"==typeof n)n=0>n?Rs(r+n,0):n;else if(n){var o=or(e,t);return r>o&&(t===t?t===e[o]:e[o]!==e[o])?o:-1}return i(e,t,n||0)}function Co(e){return yo(e,1)}function Oo(e){var t=e?e.length:0;return t?e[t-1]:T}function xo(e,t,n){var r=e?e.length:0;if(!r)return-1;var o=r;if("number"==typeof n)o=(0>n?Rs(r+n,0):Es(n||0,r-1))+1;else if(n){o=or(e,t,!0)-1;var i=e[o];return(t===t?t===i:i!==i)?o:-1}if(t!==t)return m(e,o,!0);for(;o--;)if(e[o]===t)return o;return-1}function Io(){var e=arguments,t=e[0];if(!t||!t.length)return t;for(var n=0,r=qr(),o=e.length;++n-1;)hs.call(t,i,1);return t}function Po(e,t,n){var r=[];if(!e||!e.length)return r;var o=-1,i=[],a=e.length;for(t=Hr(t,n,3);++ot?0:t)):[]}function ko(e,t,n){var r=e?e.length:0;return r?((n?Zr(e,t,n):null==t)&&(t=1),t=r-(+t||0),Xn(e,0>t?0:t)):[]}function Ao(e,t,n){return e&&e.length?nr(e,Hr(t,n,3),!1,!0):[]}function jo(e,t,n){return e&&e.length?nr(e,Hr(t,n,3)):[]}function Lo(e,t,n,r){var o=e?e.length:0;if(!o)return[];null!=t&&"boolean"!=typeof t&&(r=n,n=Zr(e,t,r)?T:t,t=!1);var a=Hr();return(null!=n||a!==Sn)&&(n=a(n,r,3)),t&&qr()==i?b(e,n):er(e,n)}function Vo(e){if(!e||!e.length)return[];var t=-1,n=0;e=un(e,function(e){return Qr(e)?(n=Rs(e.length,n),!0):void 0});for(var r=Ha(n);++tn?Rs(o+n,0):n||0,"string"==typeof e||!Iu(e)&&qi(e)?o>=n&&e.indexOf(t,n)>-1:!!o&&qr(e,t,n)>-1}function ti(e,t,n){var r=Iu(e)?cn:Fn;return t=Hr(t,n,3),r(e,t)}function ni(e,t){return ti(e,ka(t))}function ri(e,t,n){var r=Iu(e)?un:xn;return t=Hr(t,n,3),r(e,function(e,n,r){return!t(e,n,r)})}function oi(e,t,n){if(n?Zr(e,t,n):null==t){e=lo(e);var r=e.length;return r>0?e[Yn(0,r-1)]:T}var o=-1,i=Ki(e),r=i.length,a=r-1;for(t=Es(0>t?0:+t||0,r);++o0&&(n=t.apply(this,arguments)),1>=e&&(t=T),n}}function di(e,t,n){function r(){h&&ss(h),c&&ss(c),v=0,c=h=d=T}function o(t,n){n&&ss(n),c=h=d=T,t&&(v=vu(),l=e.apply(f,u),h||c||(u=f=T))}function i(){var e=t-(vu()-p);0>=e||e>t?o(d,c):h=fs(i,e)}function a(){o(g,h)}function s(){if(u=arguments,p=vu(),f=this,d=g&&(h||!y),m===!1)var n=y&&!h;else{c||y||(v=p);var r=m-(p-v),o=0>=r||r>m;o?(c&&(c=ss(c)),v=p,l=e.apply(f,u)):c||(c=fs(a,r))}return o&&h?h=ss(h):h||t===m||(h=fs(i,t)),n&&(o=!0,l=e.apply(f,u)),!o||h||c||(u=f=T),l}var u,c,l,p,f,h,d,v=0,m=!1,g=!0;if("function"!=typeof e)throw new Ja(q);if(t=0>t?0:+t||0,n===!0){var y=!0;g=!1}else Ai(n)&&(y=!!n.leading,m="maxWait"in n&&Rs(+n.maxWait||0,t),g="trailing"in n?!!n.trailing:g);return s.cancel=r,s}function vi(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new Ja(q);var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=e.apply(this,r);return n.cache=i.set(o,a),a};return n.cache=new vi.Cache,n}function mi(e){if("function"!=typeof e)throw new Ja(q);return function(){return!e.apply(this,arguments)}}function gi(e){return hi(2,e)}function yi(e,t){if("function"!=typeof e)throw new Ja(q);return t=Rs(t===T?e.length-1:+t||0,0),function(){for(var n=arguments,r=-1,o=Rs(n.length-t,0),i=Ha(o);++rt}function Ti(e,t){return e>=t}function Ci(e){return g(e)&&Qr(e)&&ts.call(e,"callee")&&!ls.call(e,"callee")}function Oi(e){return e===!0||e===!1||g(e)&&rs.call(e)==Y}function xi(e){return g(e)&&rs.call(e)==K}function Ii(e){return!!e&&1===e.nodeType&&g(e)&&!Hi(e)}function Pi(e){return null==e?!0:Qr(e)&&(Iu(e)||qi(e)||Ci(e)||g(e)&&ki(e.splice))?!e.length:!Bu(e).length}function Ni(e,t,n,r){n="function"==typeof n?ar(n,r,3):T;var o=n?n(e,t):T;return o===T?jn(e,t,n):!!o}function Di(e){return g(e)&&"string"==typeof e.message&&rs.call(e)==X}function Mi(e){return"number"==typeof e&&bs(e) +}function ki(e){return Ai(e)&&rs.call(e)==J}function Ai(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function ji(e,t,n,r){return n="function"==typeof n?ar(n,r,3):T,Vn(e,zr(t),n)}function Li(e){return Bi(e)&&e!=+e}function Vi(e){return null==e?!1:ki(e)?is.test(es.call(e)):g(e)&&kt.test(e)}function Fi(e){return null===e}function Bi(e){return"number"==typeof e||g(e)&&rs.call(e)==$}function Hi(e){var t;if(!g(e)||rs.call(e)!=Z||Ci(e)||!ts.call(e,"constructor")&&(t=e.constructor,"function"==typeof t&&!(t instanceof t)))return!1;var n;return Nn(e,function(e,t){n=t}),n===T||ts.call(e,n)}function Ui(e){return Ai(e)&&rs.call(e)==et}function qi(e){return"string"==typeof e||g(e)&&rs.call(e)==nt}function zi(e){return g(e)&&no(e.length)&&!!Ut[rs.call(e)]}function Gi(e){return e===T}function Wi(e,t){return t>e}function Yi(e,t){return t>=e}function Ki(e){var t=e?Us(e):0;return no(t)?t?en(e):[]:aa(e)}function Xi(e){return bn(e,ta(e))}function Ji(e,t,n){var r=As(e);return n&&Zr(e,t,n)&&(t=T),t?yn(r,t):r}function Qi(e){return kn(e,ta(e))}function $i(e,t,n){var r=null==e?T:An(e,fo(t),t+"");return r===T?n:r}function Zi(e,t){if(null==e)return!1;var n=ts.call(e,t);if(!n&&!eo(t)){if(t=fo(t),e=1==t.length?e:An(e,Xn(t,0,-1)),null==e)return!1;t=Oo(t),n=ts.call(e,t)}return n||no(e.length)&&$r(t,e.length)&&(Iu(e)||Ci(e))}function ea(e,t,n){n&&Zr(e,t,n)&&(t=T);for(var r=-1,o=Bu(e),i=o.length,a={};++r0;++r=Es(t,n)&&en?0:+n||0,r),n-=t.length,n>=0&&e.indexOf(t,n)==n}function ha(e){return e=s(e),e&&bt.test(e)?e.replace(yt,h):e}function da(e){return e=s(e),e&&xt.test(e)?e.replace(Ot,d):e||"(?:)"}function va(e,t,n){e=s(e),t=+t;var r=e.length;if(r>=t||!bs(t))return e;var o=(t-r)/2,i=ys(o),a=ms(o);return n=Mr("",a,n),n.slice(0,i)+e+n}function ma(e,t,n){return(n?Zr(e,t,n):null==t)?t=0:t&&(t=+t),e=ba(e),Ts(e,t||(Mt.test(e)?16:10))}function ga(e,t){var n="";if(e=s(e),t=+t,1>t||!e||!bs(t))return n;do t%2&&(n+=e),t=ys(t/2),e+=e;while(t);return n}function ya(e,t,n){return e=s(e),n=null==n?0:Es(0>n?0:+n||0,e.length),e.lastIndexOf(t,n)==n}function _a(e,t,r){var o=n.templateSettings;r&&Zr(e,t,r)&&(t=r=T),e=s(e),t=gn(yn({},r||t),o,mn);var i,a,u=gn(yn({},t.imports),o.imports,mn),c=Bu(u),l=tr(u,c),p=0,f=t.interpolate||Lt,h="__p += '",d=Ka((t.escape||Lt).source+"|"+f.source+"|"+(f===Et?Nt:Lt).source+"|"+(t.evaluate||Lt).source+"|$","g"),m="//# sourceURL="+("sourceURL"in t?t.sourceURL:"lodash.templateSources["+ ++Ht+"]")+"\n";e.replace(d,function(t,n,r,o,s,u){return r||(r=o),h+=e.slice(p,u).replace(Vt,v),n&&(i=!0,h+="' +\n__e("+n+") +\n'"),s&&(a=!0,h+="';\n"+s+";\n__p += '"),r&&(h+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),p=u+t.length,t}),h+="';\n";var g=t.variable;g||(h="with (obj) {\n"+h+"\n}\n"),h=(a?h.replace(dt,""):h).replace(vt,"$1").replace(mt,"$1;"),h="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+h+"return __p\n}";var y=Qu(function(){return za(c,m+"return "+h).apply(T,l)});if(y.source=h,Di(y))throw y;return y}function ba(e,t,n){var r=e;return(e=s(e))?(n?Zr(r,t,n):null==t)?e.slice(S(e),R(e)+1):(t+="",e.slice(u(e,t),c(e,t)+1)):e}function Sa(e,t,n){var r=e;return e=s(e),e?e.slice((n?Zr(r,t,n):null==t)?S(e):u(e,t+"")):e}function Ra(e,t,n){var r=e;return e=s(e),e?(n?Zr(r,t,n):null==t)?e.slice(0,R(e)+1):e.slice(0,c(e,t+"")+1):e}function Ea(e,t,n){n&&Zr(e,t,n)&&(t=T);var r=j,o=L;if(null!=t)if(Ai(t)){var i="separator"in t?t.separator:i;r="length"in t?+t.length||0:r,o="omission"in t?s(t.omission):o}else r=+t||0;if(e=s(e),r>=e.length)return e;var a=r-o.length;if(1>a)return o;var u=e.slice(0,a);if(null==i)return u+o;if(Ui(i)){if(e.slice(a).search(i)){var c,l,p=e.slice(0,a);for(i.global||(i=Ka(i.source,(Dt.exec(i)||"")+"g")),i.lastIndex=0;c=i.exec(p);)l=c.index;u=u.slice(0,null==l?a:l)}}else if(e.indexOf(i,a)!=a){var f=u.lastIndexOf(i);f>-1&&(u=u.slice(0,f))}return u+o}function wa(e){return e=s(e),e&&_t.test(e)?e.replace(gt,E):e}function Ta(e,t,n){return n&&Zr(e,t,n)&&(t=T),e=s(e),e.match(t||Ft)||[]}function Ca(e,t,n){return n&&Zr(e,t,n)&&(t=T),g(e)?Ia(e):Sn(e,t)}function Oa(e){return function(){return e}}function xa(e){return e}function Ia(e){return Bn(Rn(e,!0))}function Pa(e,t){return Hn(e,Rn(t,!0))}function Na(e,t,n){if(null==n){var r=Ai(t),o=r?Bu(t):T,i=o&&o.length?kn(t,o):T;(i?i.length:r)||(i=!1,n=t,t=e,e=this)}i||(i=kn(t,Bu(t)));var a=!0,s=-1,u=ki(e),c=i.length;n===!1?a=!1:Ai(n)&&"chain"in n&&(a=n.chain);for(;++se||!bs(e))return[];var r=-1,o=Ha(Es(e,Is));for(t=ar(t,n,1);++rr?o[r]=t(r):t(r);return o}function Va(e){var t=++ns;return s(e)+t}function Fa(e,t){return(+e||0)+(+t||0)}function Ba(e,t,n){return n&&Zr(e,t,n)&&(t=T),t=Hr(t,n,3),1==t.length?dn(Iu(e)?e:lo(e),t):Zn(e,t)}e=e?rn.defaults(nn.Object(),e,rn.pick(nn,Bt)):nn;{var Ha=e.Array,Ua=e.Date,qa=e.Error,za=e.Function,Ga=e.Math,Wa=e.Number,Ya=e.Object,Ka=e.RegExp,Xa=e.String,Ja=e.TypeError,Qa=Ha.prototype,$a=Ya.prototype,Za=Xa.prototype,es=za.prototype.toString,ts=$a.hasOwnProperty,ns=0,rs=$a.toString,os=nn._,is=Ka("^"+es.call(ts).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),as=e.ArrayBuffer,ss=e.clearTimeout,us=e.parseFloat,cs=Ga.pow,ls=$a.propertyIsEnumerable,ps=Gr(e,"Set"),fs=e.setTimeout,hs=Qa.splice,ds=e.Uint8Array,vs=Gr(e,"WeakMap"),ms=Ga.ceil,gs=Gr(Ya,"create"),ys=Ga.floor,_s=Gr(Ha,"isArray"),bs=e.isFinite,Ss=Gr(Ya,"keys"),Rs=Ga.max,Es=Ga.min,ws=Gr(Ua,"now"),Ts=e.parseInt,Cs=Ga.random,Os=Wa.NEGATIVE_INFINITY,xs=Wa.POSITIVE_INFINITY,Is=4294967295,Ps=Is-1,Ns=Is>>>1,Ds=9007199254740991,Ms=vs&&new vs,ks={};n.support={}}n.templateSettings={escape:St,evaluate:Rt,interpolate:Et,variable:"",imports:{_:n}};var As=function(){function e(){}return function(t){if(Ai(t)){e.prototype=t;var n=new e;e.prototype=T}return n||{}}}(),js=fr(Dn),Ls=fr(Mn,!0),Vs=hr(),Fs=hr(!0),Bs=Ms?function(e,t){return Ms.set(e,t),e}:xa,Hs=Ms?function(e){return Ms.get(e)}:Ma,Us=zn("length"),qs=function(){var e=0,t=0;return function(n,r){var o=vu(),i=F-(o-t);if(t=o,i>0){if(++e>=V)return n}else e=0;return Bs(n,r)}}(),zs=yi(function(e,t){return g(e)&&Qr(e)?wn(e,Pn(t,!1,!0)):[]}),Gs=Rr(),Ws=Rr(!0),Ys=yi(function(e){for(var t=e.length,n=t,r=Ha(p),o=qr(),a=o==i,s=[];n--;){var u=e[n]=Qr(u=e[n])?u:[];r[n]=a&&u.length>=120?vr(n&&u):null}var c=e[0],l=-1,p=c?c.length:0,f=r[0];e:for(;++l2?e[t-2]:T,r=t>1?e[t-1]:T;return t>2&&"function"==typeof n?t-=2:(n=t>1&&"function"==typeof r?(--t,r):T,r=T),e.length=t,Fo(e,n,r)}),tu=yi(function(e){return e=Pn(e),this.thru(function(t){return Zt(Iu(t)?t:[po(t)],e)})}),nu=yi(function(e,t){return _n(e,Pn(t))}),ru=lr(function(e,t,n){ts.call(e,n)?++e[n]:e[n]=1}),ou=Sr(js),iu=Sr(Ls,!0),au=Tr(tn,js),su=Tr(on,Ls),uu=lr(function(e,t,n){ts.call(e,n)?e[n].push(t):e[n]=[t]}),cu=lr(function(e,t,n){e[n]=t}),lu=yi(function(e,t,n){var r=-1,o="function"==typeof t,i=eo(t),a=Qr(e)?Ha(e.length):[];return js(e,function(e){var s=o?t:i&&null!=e?e[t]:T;a[++r]=s?s.apply(e,n):Jr(e,t,n)}),a}),pu=lr(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]}),fu=Nr(pn,js),hu=Nr(fn,Ls),du=yi(function(e,t){if(null==e)return[];var n=t[2];return n&&Zr(t[0],t[1],n)&&(t.length=1),$n(e,Pn(t),[])}),vu=ws||function(){return(new Ua).getTime()},mu=yi(function(e,t,n){var r=O;if(n.length){var o=_(n,mu.placeholder);r|=D}return Lr(e,r,t,n,o)}),gu=yi(function(e,t){t=t.length?Pn(t):Qi(e);for(var n=-1,r=t.length;++n0||0>t)?new Q(n):(0>e?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==T&&(t=+t||0,n=0>t?n.dropRight(-t):n.take(t-e)),n)},Q.prototype.takeRightWhile=function(e,t){return this.reverse().takeWhile(e,t).reverse()},Q.prototype.toArray=function(){return this.take(xs)},Dn(Q.prototype,function(e,t){var r=/^(?:filter|map|reject)|While$/.test(t),o=/^(?:first|last)$/.test(t),i=n[o?"take"+("last"==t?"Right":""):t];i&&(n.prototype[t]=function(){var t=o?[1]:arguments,n=this.__chain__,a=this.__wrapped__,s=!!this.__actions__.length,u=a instanceof Q,c=t[0],l=u||Iu(a);l&&r&&"function"==typeof c&&1!=c.length&&(u=l=!1);var p=function(e){return o&&n?i(e,1)[0]:i.apply(T,ln([e],t))},f={func:zo,args:[p],thisArg:T},h=u&&!s;if(o&&!n)return h?(a=a.clone(),a.__actions__.push(f),e.call(a)):i.call(T,this.value())[0];if(!o&&l){a=h?a:new Q(this);var d=e.apply(a,t);return d.__actions__.push(f),new y(d,n)}return this.thru(p)})}),tn(["join","pop","push","replace","shift","sort","splice","split","unshift"],function(e){var t=(/^(?:replace|split)$/.test(e)?Za:Qa)[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",o=/^(?:join|pop|replace|shift)$/.test(e);n.prototype[e]=function(){var e=arguments;return o&&!this.__chain__?t.apply(this.value(),e):this[r](function(n){return t.apply(n,e)})}}),Dn(Q.prototype,function(e,t){var r=n[t];if(r){var o=r.name,i=ks[o]||(ks[o]=[]);i.push({name:t,func:r})}}),ks[Dr(T,x).name]=[{name:"wrapper",func:T}],Q.prototype.clone=tt,Q.prototype.reverse=rt,Q.prototype.value=zt,n.prototype.chain=Go,n.prototype.commit=Wo,n.prototype.concat=tu,n.prototype.plant=Yo,n.prototype.reverse=Ko,n.prototype.toString=Xo,n.prototype.run=n.prototype.toJSON=n.prototype.valueOf=n.prototype.value=Jo,n.prototype.collect=n.prototype.map,n.prototype.head=n.prototype.first,n.prototype.select=n.prototype.filter,n.prototype.tail=n.prototype.rest,n}var T,C="3.10.1",O=1,x=2,I=4,P=8,N=16,D=32,M=64,k=128,A=256,j=30,L="...",V=150,F=16,B=200,H=1,U=2,q="Expected a function",z="__lodash_placeholder__",G="[object Arguments]",W="[object Array]",Y="[object Boolean]",K="[object Date]",X="[object Error]",J="[object Function]",Q="[object Map]",$="[object Number]",Z="[object Object]",et="[object RegExp]",tt="[object Set]",nt="[object String]",rt="[object WeakMap]",ot="[object ArrayBuffer]",it="[object Float32Array]",at="[object Float64Array]",st="[object Int8Array]",ut="[object Int16Array]",ct="[object Int32Array]",lt="[object Uint8Array]",pt="[object Uint8ClampedArray]",ft="[object Uint16Array]",ht="[object Uint32Array]",dt=/\b__p \+= '';/g,vt=/\b(__p \+=) '' \+/g,mt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,gt=/&(?:amp|lt|gt|quot|#39|#96);/g,yt=/[&<>"'`]/g,_t=RegExp(gt.source),bt=RegExp(yt.source),St=/<%-([\s\S]+?)%>/g,Rt=/<%([\s\S]+?)%>/g,Et=/<%=([\s\S]+?)%>/g,wt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,Tt=/^\w*$/,Ct=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g,Ot=/^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g,xt=RegExp(Ot.source),It=/[\u0300-\u036f\ufe20-\ufe23]/g,Pt=/\\(\\)?/g,Nt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Dt=/\w*$/,Mt=/^0[xX]/,kt=/^\[object .+?Constructor\]$/,At=/^\d+$/,jt=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,Lt=/($^)/,Vt=/['\n\r\u2028\u2029\\]/g,Ft=function(){var e="[A-Z\\xc0-\\xd6\\xd8-\\xde]",t="[a-z\\xdf-\\xf6\\xf8-\\xff]+";return RegExp(e+"+(?="+e+t+")|"+e+"?"+t+"|"+e+"+|[0-9]+","g")}(),Bt=["Array","ArrayBuffer","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Math","Number","Object","RegExp","Set","String","_","clearTimeout","isFinite","parseFloat","parseInt","setTimeout","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap"],Ht=-1,Ut={};Ut[it]=Ut[at]=Ut[st]=Ut[ut]=Ut[ct]=Ut[lt]=Ut[pt]=Ut[ft]=Ut[ht]=!0,Ut[G]=Ut[W]=Ut[ot]=Ut[Y]=Ut[K]=Ut[X]=Ut[J]=Ut[Q]=Ut[$]=Ut[Z]=Ut[et]=Ut[tt]=Ut[nt]=Ut[rt]=!1;var qt={};qt[G]=qt[W]=qt[ot]=qt[Y]=qt[K]=qt[it]=qt[at]=qt[st]=qt[ut]=qt[ct]=qt[$]=qt[Z]=qt[et]=qt[nt]=qt[lt]=qt[pt]=qt[ft]=qt[ht]=!0,qt[X]=qt[J]=qt[Q]=qt[tt]=qt[rt]=!1;var zt={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss"},Gt={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},Wt={"&":"&","<":"<",">":">",""":'"',"'":"'","`":"`"},Yt={"function":!0,object:!0},Kt={0:"x30",1:"x31",2:"x32",3:"x33",4:"x34",5:"x35",6:"x36",7:"x37",8:"x38",9:"x39",A:"x41",B:"x42",C:"x43",D:"x44",E:"x45",F:"x46",a:"x61",b:"x62",c:"x63",d:"x64",e:"x65",f:"x66",n:"x6e",r:"x72",t:"x74",u:"x75",v:"x76",x:"x78"},Xt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Jt=Yt[typeof r]&&r&&!r.nodeType&&r,Qt=Yt[typeof n]&&n&&!n.nodeType&&n,$t=Jt&&Qt&&"object"==typeof e&&e&&e.Object&&e,Zt=Yt[typeof self]&&self&&self.Object&&self,en=Yt[typeof window]&&window&&window.Object&&window,tn=Qt&&Qt.exports===Jt&&Jt,nn=$t||en!==(this&&this.window)&&en||Zt||this,rn=w();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(nn._=rn,define(function(){return rn})):Jt&&Qt?tn?(Qt.exports=rn)._=rn:Jt._=rn:nn._=rn}).call(this)}),__d("VideoBlur/HueRotate.js",["react-native/Libraries/react-native/react-native.js","gl-react-native/index.ios.js"],function(e,t,n){function r(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=Object.assign||function(e){for(var t=1;t glview) must have a function in parameter");var p=function(l){function p(e,t){r(this,p),s(Object.getPrototypeOf(p.prototype),"constructor",this).call(this,e,t),c.forEach(this._delegateMethod,this)}return o(p,l),a(p,[{key:"_delegateMethod",value:function(e){const t=this;this[e]=function(){const n=t.refs._;return u(n,"glView has been rendered"),n[e].apply(n,arguments)}}},{key:"render",value:function(){const r=n(this.props);return u(r&&(r.type===t||r.type.isGLComponent),"The GL.createComponent function parameter must return a GL.View or another GL Component"),e.cloneElement(r,i({},r.props,{ref:"_"}))}}]),p}(e.Component);if(p.isGLComponent=!0,p.displayName=n.name||"",l){u("object"==typeof l,"second parameter of createComponent must be an object of static fields to set in the React component. (example: propTypes, displayName)");for(var f in l)p[f]=l[f]}return p}return n}}),__d("invariant",[],function(e,t,n){"use strict";var r=function(e,t,n,r,o,i,a,s){if("production"!==process.env.NODE_ENV&&void 0===t)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,s],l=0;u=new Error("Invariant Violation: "+t.replace(/%s/g,function(){return c[l++]}))}throw u.framesToPop=1,u}};n.exports=r}),__d("gl-react-core/src/glViewMethods.json",[],function(e,t,n){n.exports=["getGLCanvas","captureFrame"]}),__d("gl-react-core/src/createComponentDeprecated.js",["invariant","gl-react-core/src/glViewMethods.json"],function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var i=function u(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0===r){var o=Object.getPrototypeOf(e);return null===o?void 0:u(o,t,n)}if("value"in r)return r.value;var i=r.get;return void 0===i?void 0:i.call(n)};const a=t("invariant"),s=t("gl-react-core/src/glViewMethods.json");n.exports=function(e){var t=function(e){function t(e,n){var o=this;r(this,t),i(Object.getPrototypeOf(t.prototype),"constructor",this).call(this,e,n),s.forEach(function(e){o[e]||(o[e]=function(){return a(!0,"'%s' method is not available in deprecated GL.Component. Use GL.createComponent(props => glView) instead")})}),"production"!==process.env.NODE_ENV&&console.error("GL.Component class is deprecated. Use GL.createComponent(props => glView) function instead")}return o(t,e),t}(e.Component);return t.isGLComponent=!0,t}}),__d("gl-react-core/src/createShaders.js",["invariant"],function(e,t,n){const r=t("invariant");n.exports=function(e){var t=1;const n={},o={create:function(o){r("object"==typeof o,"config must be an object");const i={};for(var a in o){const s=o[a];r("object"==typeof s&&"string"==typeof s.frag,"invalid shader given to Shaders.create(). A valid shader is a { frag: String }");const u=t++;s.name||(s.name=a),n[u]=s.name,e(u,s),i[a]=u}return i},getName:function(e){return n[e]},list:function(){return Object.keys(n)},exists:function(e){return"number"==typeof e&&e>=1&&t>e}};return o}}),__d("gl-react-core/src/createUniform.js",["invariant"],function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var i=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function a(e,t){"undefined"!=typeof console&&console.debug&&console.debug("GL.View rendered with",e,t)}var s=Object.assign||function(e){for(var t=1;t0&&i>0,"width and height are required for the root GLView");var w=h(f(_(c,d,o,i,u,y||!1,[])));const T=w.data,C=w.contentsVDOM,O=w.imagesToPreload;return g&&a(T,C),p({width:o,height:i,style:n,visibleContent:S,eventsThrough:R},C.map(function(e,t){return v(T.width,T.height,t,e,{visibleContent:S})}),m(s({},E,{width:o,height:i,data:T,nbContentTextures:C.length,imagesToPreload:O,renderId:e,opaque:b,visibleContent:S,eventsThrough:R})))}}]),t}(g);return b.displayName="GL.View",b.propTypes={shader:y.number.isRequired,width:y.number,height:y.number,uniforms:y.object,opaque:y.bool,preload:y.bool,autoRedraw:y.bool,eventsThrough:y.bool,visibleContent:y.bool},b.defaultProps={opaque:!0},_=d(e,t,n,b),b}}),__d("gl-react-core/src/data/index.js",["gl-react-core/src/data/build.js","gl-react-core/src/data/fill.js","gl-react-core/src/data/resolve.js"],function(e,t,n){n.exports={createBuild:t("gl-react-core/src/data/build.js"),fill:t("gl-react-core/src/data/fill.js"),resolve:t("gl-react-core/src/data/resolve.js")}}),__d("gl-react-core/src/data/build.js",["invariant","gl-react-core/src/data/TextureObjects.js","gl-react-core/src/data/isNonSamplerUniformValue.js"],function(e,t,n){function r(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}var o=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e){function t(e,o,s,p){const h=e.uniforms,d=e.children,v=e.contents,m=e.preload,g=r(e,["uniforms","children","contents","preload"]),y=i({},h),_=s.map(function(e){var t=e.vdom;return t}),b=function(e){return function(){for(e++;e===o||-1!==p.indexOf(e);)e++;return e}}(-1),S=u(e,_),R=S.map(function(e){var t=e.vdom;const n=b();return{vdom:t,fboId:n}}),E=s.concat(R),w=E.map(function(e){var t=e.vdom;return t}),T=E.map(function(e){var t=e.fboId;return t}),C=[],O=[],x=d.concat(S).map(function(e){const t=e.uniform,n=e.vdom,r=e.data;var o=w.indexOf(n),i=void 0,a=void 0;return-1===o?(i=b(),a=O):(i=E[o].fboId,o>=s.length&&(a=C)),t&&(y[t]=c.Framebuffer(i)),{data:r,fboId:i,addToCollection:a}}),I=x.map(function(e){var t=e.fboId;return t}),P=p.concat(T).concat(I),N=[];return x.forEach(function(e){var n=e.data,r=e.fboId,o=e.addToCollection;-1===N.indexOf(r)&&(N.push(r),o&&o.push(t(n,r,E,P)))}),v.forEach(function(e){var t=e.uniform,n=e.vdom,r=e.opts;const o=f.indexOf(n);a(-1!==o,"contents was discovered by findContentsMeta"),y[t]=c.withOpts(c.Content(o),r)}),m&&(n=n.concat(l(h))),i({},g,{uniforms:y,contextChildren:C,children:O,fboId:o})}var n=[];const o=s(e),f=o.map(function(e){var t=e.vdom;return t});return{data:t(e,-1,[],[]),contentsVDOM:f,imagesToPreload:p(n)}}var i=Object.assign||function(e){for(var t=1;t1))return{data:r[o],vdom:n}}).filter(function(e){return e})}n.exports=r}),__d("gl-react-core/src/data/extractImages.js",[],function(e,t,n){function r(e){const t=[];for(var n in e){var r=e[n];r&&"object"==typeof r&&"uri"===r.type&&r.uri&&"string"==typeof r.uri&&t.push(r)}return t}n.exports=r}),__d("gl-react-core/src/data/uniqImages.js",[],function(e,t,n){function r(e){var t=[],n=[];return e.forEach(function(e){-1===t.indexOf(e.uri)&&(t.push(e.uri),n.push(e))}),n}n.exports=r}),__d("gl-react-native/src/View.js",["gl-react-core/src/index.js","react-native/Libraries/react-native/react-native.js","gl-react-native/src/Shaders.js","gl-react-native/src/Uniform.js","gl-react-native/src/GLCanvas.js"],function(e,t,n){var r=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function a(e,t,n){const r=t*e/n;switch(e%4){case 0:return[r,0];case 1:return[0,r];case 2:return[r*d,r*d];case 3:return[r*d,-r*d]}return e%2?[r,0]:[0,r]}var s=Object.assign||function(e){for(var t=1;t=e?i:l.createElement(h,s({},c,{width:t,height:n,direction:a(e,o,u)}),p(e-1))};return p(u)}}]),t}(p.Component);v.defaultProps={passes:2},v.propTypes={width:f.number,height:f.number,factor:f.number.isRequired,children:f.any.isRequired,passes:f.number},n.exports=v}),__d("VideoBlur/Blur1D.js",["react-native/Libraries/react-native/react-native.js","gl-react-native/index.ios.js"],function(e,t,n){function r(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=Object.assign||function(e){for(var t=1;t + + + + + + + + + + + + + + + + + generateDebugAndroidTestSources + generateDebugSources + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/android/src/main/AndroidManifest.xml b/android/src/main/AndroidManifest.xml new file mode 100644 index 0000000000000000000000000000000000000000..f3a988f8b830f9f7e1cc1707e34cbc68b519a16b --- /dev/null +++ b/android/src/main/AndroidManifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/android/src/main/java/com/projectseptember/RNGL/GLCanvas.java b/android/src/main/java/com/projectseptember/RNGL/GLCanvas.java new file mode 100644 index 0000000000000000000000000000000000000000..a7e8d6c405698d451084cf678db72e59fe02ab39 --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLCanvas.java @@ -0,0 +1,694 @@ +package com.projectseptember.RNGL; + +import static android.opengl.GLES20.*; + +import android.graphics.Bitmap; +import android.graphics.Matrix; +import android.graphics.PixelFormat; +import android.net.Uri; +import android.opengl.GLSurfaceView; +import android.util.DisplayMetrics; +import android.util.Log; +import android.view.View; +import android.view.ViewGroup; + +import com.facebook.imagepipeline.core.ExecutorSupplier; +import com.facebook.react.bridge.Arguments; +import com.facebook.react.bridge.ReactContext; +import com.facebook.react.bridge.ReadableArray; +import com.facebook.react.bridge.ReadableMap; +import com.facebook.react.bridge.ReadableMapKeySetIterator; +import com.facebook.react.bridge.WritableMap; +import com.facebook.react.uimanager.ThemedReactContext; +import com.facebook.react.uimanager.events.RCTEventEmitter; + +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Queue; +import java.util.concurrent.Executor; + +import javax.microedition.khronos.egl.EGLConfig; +import javax.microedition.khronos.opengles.GL10; + +public class GLCanvas extends GLSurfaceView implements GLSurfaceView.Renderer, Executor { + + private ReactContext reactContext; + private RNGLContext rnglContext; + private boolean preloadingDone = false; + private boolean deferredRendering = false; + private GLRenderData renderData; + private int defaultFBO; + + private int nbContentTextures; + private boolean autoRedraw; + private GLData data; + private List imagesToPreload; + private List preloaded = new ArrayList<>(); + + private Map images = new HashMap<>(); + private List contentTextures = new ArrayList<>(); + private List contentBitmaps = new ArrayList<>(); + + private Map shaders; + private Map fbos; + private ExecutorSupplier executorSupplier; + private final Queue mRunOnDraw = new LinkedList<>(); + + public GLCanvas(ThemedReactContext context, ExecutorSupplier executorSupplier) { + super(context); + reactContext = context; + this.executorSupplier = executorSupplier; + rnglContext = context.getNativeModule(RNGLContext.class); + setEGLContextClientVersion(2); + + setEGLConfigChooser(8, 8, 8, 8, 16, 0); + getHolder().setFormat(PixelFormat.RGB_888); + setZOrderOnTop(true); + + setRenderer(this); + setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY); + } + + @Override + protected void onAttachedToWindow() { + super.onAttachedToWindow(); + syncContentBitmaps(); + requestRender(); + } + + public GLFBO getFBO (Integer id) { + if (!fbos.containsKey(id)) { + fbos.put(id, new GLFBO(this)); + } + return fbos.get(id); + } + + public GLShader getShader (Integer id) { + if (!shaders.containsKey(id)) { + GLShaderData shaderData = rnglContext.getShader(id); + if (shaderData == null) return null; + shaders.put(id, new GLShader(shaderData)); + } + return shaders.get(id); + } + + @Override + public void onSurfaceCreated(GL10 gl, EGLConfig config) { + fbos = new HashMap<>(); + shaders = new HashMap<>(); + images = new HashMap<>(); + contentTextures = new ArrayList<>(); + contentBitmaps = new ArrayList<>(); + renderData = null; + requestSyncData(); + } + + @Override + public void onSurfaceChanged(GL10 gl, int width, int height) {} + + @Override + public void onDrawFrame(GL10 gl) { + runAll(mRunOnDraw); + + if (contentTextures.size() != this.nbContentTextures) + resizeUniformContentTextures(nbContentTextures); + + syncEventsThrough(); // FIXME: need to do this here? + + if (!preloadingDone) { + glClearColor(0.0f, 0.0f, 0.0f, 0.0f); + glClear(GL_COLOR_BUFFER_BIT); + return; + } + + final boolean shouldRenderNow = deferredRendering || autoRedraw || nbContentTextures == 0; + if (nbContentTextures > 0) { + reactContext.runOnUiQueueThread(new Runnable() { + public void run() { + syncContentBitmaps(); + if (!deferredRendering) { + deferredRendering = true; + requestRender(); + } + } + }); + } + + if (shouldRenderNow) { + this.render(); + deferredRendering = false; + } + } + + public void setNbContentTextures(int n) { + this.nbContentTextures = n; + requestRender(); + } + + public void setRenderId(int renderId) { + if (nbContentTextures > 0) { + if (preloadingDone) syncContentBitmaps(); + requestRender(); + } + } + + public void setOpaque(boolean opaque) { + if (opaque) { + this.getHolder().setFormat(PixelFormat.RGB_888); + } + else { + this.getHolder().setFormat(PixelFormat.TRANSLUCENT); + } + this.requestRender(); + } + + public void setAutoRedraw(boolean autoRedraw) { + this.autoRedraw = autoRedraw; + this.setRenderMode(autoRedraw ? GLSurfaceView.RENDERMODE_CONTINUOUSLY : GLSurfaceView.RENDERMODE_WHEN_DIRTY); + } + + public void setEventsThrough(boolean eventsThrough) { + syncEventsThrough(); + } + + public void setVisibleContent(boolean visibleContent) { + syncEventsThrough(); + } + + public void setCaptureNextFrameId(int captureNextFrameId) { + // FIXME move away from this pattern. just use a method, same to ObjC impl + this.requestRender(); + } + + private boolean ensureCompiledShader (List data) { + for (GLData d: data) { + if (!ensureCompiledShader(d)) { + return false; + } + } + return true; + } + + private boolean ensureCompiledShader (GLData data) { + GLShader shader = getShader(data.shader); + return shader != null && + shader.ensureCompile() && + ensureCompiledShader(data.children) && + ensureCompiledShader(data.contextChildren); + } + + public void setData (GLData data) { + this.data = data; + if (preloadingDone) syncContentBitmaps(); + requestSyncData(); + } + + + public void setImagesToPreload (ReadableArray imagesToPreloadRA) { + if (preloadingDone) return; + List imagesToPreload = new ArrayList<>(); + for (int i=0; i queue) { + synchronized (queue) { + while (!queue.isEmpty()) { + queue.poll().run(); + } + } + } + + public void requestSyncData () { + execute(new Runnable() { + public void run() { + if (ensureCompiledShader(data)) + syncData(); + else + requestSyncData(); + } + }); + } + + public static Bitmap captureView (View view) { + int w = view.getWidth(); + int h = view.getHeight(); + if (w <= 0 || h <= 0) + return Bitmap.createBitmap(2, 2, Bitmap.Config.ARGB_8888); + Bitmap bitmap = view.getDrawingCache(); + if (bitmap == null) + view.setDrawingCacheEnabled(true); + bitmap = view.getDrawingCache(); + if (bitmap == null) { + Log.e("GLCanvas", "view.getDrawingCache() is null. view="+view); + return Bitmap.createBitmap(2, 2, Bitmap.Config.ARGB_8888); + } + Matrix matrix = new Matrix(); + matrix.postScale(1, -1); + Bitmap reversed = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, true); + return reversed; + } + + /** + * Snapshot the content views and save to contentBitmaps (must run in UI Thread) + */ + public int syncContentBitmaps() { + List bitmaps = new ArrayList<>(); + ViewGroup parent = (ViewGroup) this.getParent(); + int count = parent == null ? 0 : parent.getChildCount() - 1; + for (int i = 0; i < count; i++) { + View view = parent.getChildAt(i); + if (view instanceof ViewGroup) { + ViewGroup group = (ViewGroup) view; + if (group.getChildCount() == 1) { + // If the content container only contain one other container, + // we will use it for rasterization. That way we screenshot without cropping. + view = group.getChildAt(0); + } + } + bitmaps.add(captureView(view)); + } + contentBitmaps = bitmaps; + + return count; + } + + /** + * Draw contentBitmaps to contentTextures (must run in GL Thread) + */ + public int syncContentTextures() { + int size = Math.min(contentTextures.size(), contentBitmaps.size()); + for (int i=0; i images) { + Map prevImages = this.images; + + GLShader shader = getShader(data.shader); + Map uniformsInteger = new HashMap<>(); + Map uniformsFloat = new HashMap<>(); + Map uniformsIntBuffer = new HashMap<>(); + Map uniformsFloatBuffer = new HashMap<>(); + Map textures = new HashMap<>(); + List contextChildren = new ArrayList<>(); + List children = new ArrayList<>(); + + for (GLData child: data.contextChildren) { + contextChildren.add(recSyncData(child, images)); + } + + for (GLData child: data.children) { + children.add(recSyncData(child, images)); + } + + Map uniformTypes = shader.getUniformTypes(); + + int units = 0; + ReadableMapKeySetIterator iterator = data.uniforms.keySetIterator(); + while (iterator.hasNextKey()) { + String uniformName = iterator.nextKey(); + int type = uniformTypes.get(uniformName); + + ReadableMap dataUniforms = data.uniforms; + + if (type == GL_SAMPLER_2D || type == GL_SAMPLER_CUBE) { + uniformsInteger.put(uniformName, units++); + + if (dataUniforms.isNull(uniformName)) { + GLTexture emptyTexture = new GLTexture(this); + emptyTexture.setPixelsEmpty(); + textures.put(uniformName, emptyTexture); + } + else { + ReadableMap value = dataUniforms.getMap(uniformName); + String t = value.getString("type"); + if (t.equals("content")) { + int id = value.getInt("id"); + if (id >= contentTextures.size()) { + resizeUniformContentTextures(id+1); + } + textures.put(uniformName, contentTextures.get(id)); + } + else if (t.equals("fbo")) { + int id = value.getInt("id"); + GLFBO fbo = getFBO(id); + textures.put(uniformName, fbo.color.get(0)); + } + else if (t.equals("uri")) { + final Uri src = srcResource(value); + if (src == null) { + shader.runtimeException("texture uniform '"+uniformName+"': Invalid uri format '"+value+"'"); + } + + GLImage image = images.get(src); + if (image == null) { + image = prevImages.get(src); + if (image != null) + images.put(src, image); + } + if (image == null) { + image = new GLImage(this, executorSupplier.forDecode(), new Runnable() { + public void run() { + onImageLoad(src); + } + }); + image.setSrc(src); + images.put(src, image); + } + textures.put(uniformName, image.getTexture()); + } + else { + shader.runtimeException("texture uniform '" + uniformName + "': Unexpected type '" + type + "'"); + } + } + } + else { + switch (type) { + case GL_INT: + uniformsInteger.put(uniformName, dataUniforms.getInt(uniformName)); + break; + + case GL_BOOL: + uniformsInteger.put(uniformName, dataUniforms.getBoolean(uniformName) ? 1 : 0); + break; + + case GL_FLOAT: + uniformsFloat.put(uniformName, (float) dataUniforms.getDouble(uniformName)); + break; + + case GL_FLOAT_VEC2: + case GL_FLOAT_VEC3: + case GL_FLOAT_VEC4: + case GL_FLOAT_MAT2: + case GL_FLOAT_MAT3: + case GL_FLOAT_MAT4: + ReadableArray arr = dataUniforms.getArray(uniformName); + if (arraySizeForType(type) != arr.size()) { + shader.runtimeException( + "uniform '"+uniformName+ + "': Invalid array size: "+arr.size()+ + ". Expected: "+arraySizeForType(type)); + } + uniformsFloatBuffer.put(uniformName, parseAsFloatArray(arr)); + break; + + case GL_INT_VEC2: + case GL_INT_VEC3: + case GL_INT_VEC4: + case GL_BOOL_VEC2: + case GL_BOOL_VEC3: + case GL_BOOL_VEC4: + ReadableArray arr2 = dataUniforms.getArray(uniformName); + if (arraySizeForType(type) != arr2.size()) { + shader.runtimeException( + "uniform '"+uniformName+ + "': Invalid array size: "+arr2.size()+ + ". Expected: "+arraySizeForType(type)); + } + uniformsIntBuffer.put(uniformName, parseAsIntArray(arr2)); + break; + + default: + shader.runtimeException( + "uniform '"+uniformName+ + "': type not supported: "+type); + } + + } + } + + int[] maxTextureUnits = new int[1]; + glGetIntegerv(GL_MAX_TEXTURE_IMAGE_UNITS, maxTextureUnits, 0); + if (units > maxTextureUnits[0]) { + shader.runtimeException("Maximum number of texture reach. got " + units + " >= max " + maxTextureUnits); + } + + for (String uniformName: uniformTypes.keySet()) { + if (!uniformsFloat.containsKey(uniformName) && + !uniformsInteger.containsKey(uniformName) && + !uniformsFloatBuffer.containsKey(uniformName) && + !uniformsIntBuffer.containsKey(uniformName)) { + shader.runtimeException("All defined uniforms must be provided. Missing '"+uniformName+"'"); + } + } + + return new GLRenderData( + shader, + uniformsInteger, + uniformsFloat, + uniformsIntBuffer, + uniformsFloatBuffer, + textures, + data.width, + data.height, + data.fboId, + contextChildren, + children); + } + + private FloatBuffer parseAsFloatArray(ReadableArray array) { + int size = array.size(); + FloatBuffer buf = ByteBuffer.allocateDirect(size * 4) + .order(ByteOrder.nativeOrder()) + .asFloatBuffer(); + for (int i=0; i images = new HashMap<>(); + renderData = recSyncData(data, images); + this.images = images; + } + + private void recRender (GLRenderData renderData) { + DisplayMetrics dm = reactContext.getResources().getDisplayMetrics(); + + int w = Float.valueOf(renderData.width.floatValue() * dm.density).intValue(); + int h = Float.valueOf(renderData.height.floatValue() * dm.density).intValue(); + + for (GLRenderData child: renderData.contextChildren) + recRender(child); + + for (GLRenderData child: renderData.children) + recRender(child); + + if (renderData.fboId == -1) { + glBindFramebuffer(GL_FRAMEBUFFER, defaultFBO); + glViewport(0, 0, w, h); + } + else { + GLFBO fbo = getFBO(renderData.fboId); + fbo.setShape(w, h); + fbo.bind(); + } + + renderData.shader.bind(); + + for (String uniformName: renderData.textures.keySet()) { + GLTexture texture = renderData.textures.get(uniformName); + int unit = renderData.uniformsInteger.get(uniformName); + texture.bind(unit); + } + + Map uniformTypes = renderData.shader.getUniformTypes(); + for (String uniformName: renderData.uniformsInteger.keySet()) { + renderData.shader.setUniform(uniformName, renderData.uniformsInteger.get(uniformName)); + } + for (String uniformName: renderData.uniformsFloat.keySet()) { + renderData.shader.setUniform(uniformName, renderData.uniformsFloat.get(uniformName)); + } + for (String uniformName: renderData.uniformsFloatBuffer.keySet()) { + renderData.shader.setUniform(uniformName, renderData.uniformsFloatBuffer.get(uniformName), uniformTypes.get(uniformName)); + } + for (String uniformName: renderData.uniformsIntBuffer.keySet()) { + renderData.shader.setUniform(uniformName, renderData.uniformsIntBuffer.get(uniformName), uniformTypes.get(uniformName)); + } + + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + glClearColor(0.0f, 0.0f, 0.0f, 0.0f); + glClear(GL_COLOR_BUFFER_BIT); + glDrawArrays(GL_TRIANGLES, 0, 6); + } + + private void render () { + if (renderData == null) return; + syncContentTextures(); + + int[] defaultFBOArr = new int[1]; + glGetIntegerv(GL_FRAMEBUFFER_BINDING, defaultFBOArr, 0); + defaultFBO = defaultFBOArr[0]; + glEnable(GL_BLEND); + recRender(renderData); + glDisable(GL_BLEND); + glBindFramebuffer(GL_FRAMEBUFFER, defaultFBO); + } + + private void syncEventsThrough () { + // TODO: figure out how to do this... + // For some reason, the click through is half working + } + + + private void dispatchOnProgress (double progress, int loaded, int total) { + WritableMap event = Arguments.createMap(); + event.putDouble("progress", progress); + event.putInt("loaded", loaded); + event.putInt("total", total); + ReactContext reactContext = (ReactContext)getContext(); + reactContext.getJSModule(RCTEventEmitter.class).receiveEvent( + getId(), + "progress", + event); + } + + private void dispatchOnLoad () { + WritableMap event = Arguments.createMap(); + ReactContext reactContext = (ReactContext)getContext(); + reactContext.getJSModule(RCTEventEmitter.class).receiveEvent( + getId(), + "load", + event); + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/GLCanvasManager.java b/android/src/main/java/com/projectseptember/RNGL/GLCanvasManager.java new file mode 100644 index 0000000000000000000000000000000000000000..560d161a9203ea19d57544b8b1d1258257d20af3 --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLCanvasManager.java @@ -0,0 +1,93 @@ +package com.projectseptember.RNGL; + +import android.support.annotation.Nullable; + +import com.facebook.imagepipeline.core.DefaultExecutorSupplier; +import com.facebook.imagepipeline.core.ExecutorSupplier; +import com.facebook.imagepipeline.memory.PoolConfig; +import com.facebook.imagepipeline.memory.PoolFactory; +import com.facebook.react.bridge.ReadableArray; +import com.facebook.react.bridge.ReadableMap; +import com.facebook.react.common.MapBuilder; +import com.facebook.react.uimanager.SimpleViewManager; +import com.facebook.react.uimanager.ThemedReactContext; +import com.facebook.react.uimanager.ReactProp; + +import java.util.Map; + + +public class GLCanvasManager extends SimpleViewManager { + + public static final String REACT_CLASS = "GLCanvas"; + + private ExecutorSupplier executorSupplier; + + @ReactProp(name="nbContentTextures") + public void setNbContentTextures (GLCanvas view, int nbContentTextures) { + view.setNbContentTextures(nbContentTextures); + } + @ReactProp(name="renderId") + public void setRenderId (GLCanvas view, int renderId) { + view.setRenderId(renderId); + } + + @ReactProp(name="opaque") + public void setOpaque (GLCanvas view, boolean opaque) { + view.setOpaque(opaque); + } + + @ReactProp(name="autoRedraw") + public void setAutoRedraw (GLCanvas view, boolean autoRedraw) { + view.setAutoRedraw(autoRedraw); + } + + @ReactProp(name="eventsThrough") + public void setEventsThrough (GLCanvas view, boolean eventsThrough) { + view.setEventsThrough(eventsThrough); + } + + @ReactProp(name="visibleContent") + public void setVisibleContent (GLCanvas view, boolean visibleContent) { + view.setVisibleContent(visibleContent); + } + + @ReactProp(name="captureNextFrameId") + public void setCaptureNextFrameId (GLCanvas view, int captureNextFrameId) { + view.setCaptureNextFrameId(captureNextFrameId); + } + + @ReactProp(name="data") + public void setData (GLCanvas view, @Nullable ReadableMap data) { + view.setData(data == null ? null : GLData.fromMap(data)); + } + + @ReactProp(name="imagesToPreload") + public void setImagesToPreload (GLCanvas view, @Nullable ReadableArray imageToPreload) { + view.setImagesToPreload(imageToPreload); + } + + @Override + public String getName() { + return REACT_CLASS; + } + + @Override + public GLCanvas createViewInstance (ThemedReactContext context) { + if (executorSupplier == null) { + PoolFactory poolFactory = new PoolFactory(PoolConfig.newBuilder().build()); + int numCpuBoundThreads = poolFactory.getFlexByteArrayPoolMaxNumThreads(); + executorSupplier = new DefaultExecutorSupplier(numCpuBoundThreads); + } + return new GLCanvas(context, executorSupplier); + } + + @Override + public @Nullable Map getExportedCustomDirectEventTypeConstants() { + return MapBuilder.of( + "load", + MapBuilder.of("registrationName", "onLoad"), + "progress", + MapBuilder.of("registrationName", "onProgress") + ); + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/GLData.java b/android/src/main/java/com/projectseptember/RNGL/GLData.java new file mode 100644 index 0000000000000000000000000000000000000000..c0c042001efc3c1cc0ab38c803dcfda2364752e4 --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLData.java @@ -0,0 +1,47 @@ +package com.projectseptember.RNGL; + +import com.facebook.react.bridge.ReadableArray; +import com.facebook.react.bridge.ReadableMap; + +import java.util.ArrayList; +import java.util.List; + +public class GLData { + + final Integer shader; + final ReadableMap uniforms; + final Integer width; + final Integer height; + final Integer fboId; + final List contextChildren; + final List children; + + public GLData(Integer shader, ReadableMap uniforms, Integer width, Integer height, Integer fboId, List contextChildren, List children) { + this.shader = shader; + this.uniforms = uniforms; + this.width = width; + this.height = height; + this.fboId = fboId; + this.contextChildren = contextChildren; + this.children = children; + } + + public static List fromArray (ReadableArray arr) { + ArrayList list = new ArrayList<>(); + for (int i=0; i < arr.size(); i++) { + list.add(fromMap(arr.getMap(i))); + } + return list; + } + + public static GLData fromMap (ReadableMap map) { + Integer shader = map.getInt("shader"); + ReadableMap uniforms = map.getMap("uniforms"); + Integer width = map.getInt("width"); + Integer height = map.getInt("height"); + Integer fboId = map.getInt("fboId"); + List children = fromArray(map.getArray("children")); + List contextChildren = fromArray(map.getArray("contextChildren")); + return new GLData(shader, uniforms, width, height, fboId, contextChildren, children); + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/GLFBO.java b/android/src/main/java/com/projectseptember/RNGL/GLFBO.java new file mode 100644 index 0000000000000000000000000000000000000000..db48d03cff7ef98bd883b7151a62e4cfcdef41d9 --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLFBO.java @@ -0,0 +1,128 @@ +package com.projectseptember.RNGL; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.Executor; + +import static android.opengl.GLES20.*; + +public class GLFBO { + public final List color = new ArrayList<>(); + private int handle; + private int width = 0; + private int height = 0; + private Executor glExecutor; + + /** + * GLFBO constructor as well as all methods must be called in GL Thread + * @param glExecutor is only required for finalize() + */ + public GLFBO (Executor glExecutor) { + this.glExecutor = glExecutor; + FBOState state = new FBOState(); + + int[] handleArr = new int[1]; + glGenFramebuffers(1, handleArr, 0); + handle = handleArr[0]; + + int numColors = 1; + + glBindFramebuffer(GL_FRAMEBUFFER, handle); + + for(int i=0; i maxFBOSize[0] || h < 0 || h > maxFBOSize[0]) { + throw new IllegalArgumentException("Can't resize framebuffer. Invalid dimensions"); + } + width = w; + height = h; + + FBOState state = new FBOState(); + + for (GLTexture clr: color) { + clr.setShape(w, h); + } + + glBindFramebuffer(GL_FRAMEBUFFER, handle); + checkStatus(); + + state.restore(); + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/GLImage.java b/android/src/main/java/com/projectseptember/RNGL/GLImage.java new file mode 100644 index 0000000000000000000000000000000000000000..f664f3905b0249c09e5675a42f6ec535ecd507fc --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLImage.java @@ -0,0 +1,102 @@ +package com.projectseptember.RNGL; + +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.Matrix; +import android.net.Uri; +import android.support.annotation.Nullable; +import android.util.Log; + +import com.facebook.common.references.CloseableReference; +import com.facebook.common.util.UriUtil; +import com.facebook.datasource.DataSource; +import com.facebook.drawee.backends.pipeline.Fresco; +import com.facebook.imagepipeline.datasource.BaseBitmapDataSubscriber; +import com.facebook.imagepipeline.image.CloseableImage; +import com.facebook.imagepipeline.request.ImageRequest; +import com.facebook.imagepipeline.request.ImageRequestBuilder; + +import java.util.concurrent.Executor; + +/* +This class is maintained and inspired from +https://github.com/facebook/react-native/blob/master/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java + */ +public class GLImage { + + private Uri src; + private GLTexture texture; + private Runnable onLoad; + private Executor glExecutor; + private Executor decodeExecutor; + private DataSource> pending; + + public GLImage (Executor glExecutor, Executor decodeExecutor, Runnable onLoad) { + this.onLoad = onLoad; + this.glExecutor = glExecutor; + this.decodeExecutor = decodeExecutor; + this.texture = new GLTexture(glExecutor); + } + + public void setSrc (Uri src) { + if (this.src == src || this.src!=null && this.src.equals(src)) return; + this.src = src; + reloadImage(); + } + + private void reloadImage () { + if (pending != null && !pending.isFinished()) + pending.close(); + + final Uri uri = src; + ImageRequest imageRequest = ImageRequestBuilder + .newBuilderWithSource(uri) + .build(); + + pending = Fresco.getImagePipeline().fetchDecodedImage(imageRequest, null); + + pending.subscribe(new BaseBitmapDataSubscriber() { + @Override + protected void onNewResultImpl(@Nullable Bitmap bitmap) { + onLoad(bitmap); + } + @Override + protected void onFailureImpl(DataSource> dataSource) { + Log.e("GLImage", "Failed to load '" + uri.getPath() + "'", dataSource.getFailureCause()); + } + }, decodeExecutor); + } + + public void onLoad (final Bitmap source) { + Matrix matrix = new Matrix(); + matrix.postScale(1, -1); + final Bitmap bitmap = Bitmap.createBitmap(source, 0, 0, source.getWidth(), source.getHeight(), matrix, true); + bitmap.setHasAlpha(true); + glExecutor.execute(new Runnable() { + public void run() { + texture.setPixels(bitmap); + bitmap.recycle(); + onLoad.run(); + } + }); + } + + public GLTexture getTexture() { + return texture; + } + + public static @Nullable Uri getResourceDrawableUri (Context context, @Nullable String name) { + if (name == null || name.isEmpty()) { + return null; + } + name = name.toLowerCase().replace("-", "_"); + int resId = context.getResources().getIdentifier( + name, + "drawable", + context.getPackageName()); + return new Uri.Builder() + .scheme(UriUtil.LOCAL_RESOURCE_SCHEME) + .path(String.valueOf(resId)) + .build(); + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/GLRenderData.java b/android/src/main/java/com/projectseptember/RNGL/GLRenderData.java new file mode 100644 index 0000000000000000000000000000000000000000..b345013dcbb340e63baa8c6c3f29297ad921dd3d --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLRenderData.java @@ -0,0 +1,46 @@ +package com.projectseptember.RNGL; + +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.util.List; +import java.util.Map; + +public class GLRenderData { + + final GLShader shader; + final Map uniformsInteger; + final Map uniformsFloat; + final Map uniformsIntBuffer; + final Map uniformsFloatBuffer; + final Map textures; + final Integer width; + final Integer height; + final Integer fboId; + final List contextChildren; + final List children; + + public GLRenderData( + GLShader shader, + Map uniformsInteger, + Map uniformsFloat, + Map uniformsIntBuffer, + Map uniformsFloatBuffer, + Map textures, + Integer width, + Integer height, + Integer fboId, + List contextChildren, + List children) { + this.shader = shader; + this.uniformsInteger = uniformsInteger; + this.uniformsFloat = uniformsFloat; + this.uniformsIntBuffer = uniformsIntBuffer; + this.uniformsFloatBuffer = uniformsFloatBuffer; + this.textures = textures; + this.width = width; + this.height = height; + this.fboId = fboId; + this.contextChildren = contextChildren; + this.children = children; + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/GLShader.java b/android/src/main/java/com/projectseptember/RNGL/GLShader.java new file mode 100644 index 0000000000000000000000000000000000000000..e19dab7c8af9e0183fe2264b16463ebde5d436d7 --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLShader.java @@ -0,0 +1,214 @@ +package com.projectseptember.RNGL; + + +import static android.opengl.GLES20.*; + +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.util.HashMap; +import java.util.Map; + +public class GLShader { + + private final String name; + private final String vert; + private final String frag; + private Map uniformTypes; + private int program; // Program of the shader + private int buffer[]; // the buffer currently contains 2 static triangles covering the surface + private int pointerLoc; // The "pointer" attribute is used to iterate over vertex + private Map uniformLocations; // The uniform locations cache + + public GLShader(String name, String vert, String frag) { + this.name = name; + this.vert = vert; + this.frag = frag; + } + + public GLShader(GLShaderData data) { + this.name = data.name; + this.vert = data.vert; + this.frag = data.frag; + } + + @Override + protected void finalize() throws Throwable { + super.finalize(); + if (buffer != null) { + glDeleteProgram(program); + glDeleteBuffers(1, buffer, 0); + } + } + + public void runtimeException (String msg) { + throw new RuntimeException("Shader '"+name+"': "+msg); + } + + public void bind () { + ensureCompile(); + + if (!glIsProgram(program)) { + runtimeException("not a program"); + } + glUseProgram(program); + glBindBuffer(GL_ARRAY_BUFFER, buffer[0]); + glEnableVertexAttribArray(pointerLoc); + glVertexAttribPointer(pointerLoc, 2, GL_FLOAT, false, 0, 0); + } + + public void validate () { + glValidateProgram(program); + int[] validSuccess = new int[1]; + glGetProgramiv(program, GL_VALIDATE_STATUS, validSuccess, 0); + if (validSuccess[0] == GL_FALSE) { + glGetProgramInfoLog(program); + runtimeException("Validation failed " + glGetProgramInfoLog(program)); + } + } + + public void setUniform (String name, Integer i) { + glUniform1i(uniformLocations.get(name), i); + } + public void setUniform (String name, Float f) { + glUniform1f(uniformLocations.get(name), f); + } + public void setUniform (String name, FloatBuffer buf, int type) { + switch (type) { + case GL_FLOAT_VEC2: + glUniform2fv(uniformLocations.get(name), 1, buf); + break; + case GL_FLOAT_VEC3: + glUniform3fv(uniformLocations.get(name), 1, buf); + break; + case GL_FLOAT_VEC4: + glUniform4fv(uniformLocations.get(name), 1, buf); + break; + case GL_FLOAT_MAT2: + glUniformMatrix2fv(uniformLocations.get(name), 1, false, buf); + break; + case GL_FLOAT_MAT3: + glUniformMatrix3fv(uniformLocations.get(name), 1, false, buf); + break; + case GL_FLOAT_MAT4: + glUniformMatrix4fv(uniformLocations.get(name), 1, false, buf); + break; + default: + runtimeException("Unsupported case: uniform '" + name + "' type: " + type); + } + } + public void setUniform (String name, IntBuffer buf, int type) { + switch (type) { + case GL_INT_VEC2: + case GL_BOOL_VEC2: + glUniform2iv(uniformLocations.get(name), 1, buf); + break; + case GL_INT_VEC3: + case GL_BOOL_VEC3: + glUniform3iv(uniformLocations.get(name), 1, buf); + break; + case GL_INT_VEC4: + case GL_BOOL_VEC4: + glUniform4iv(uniformLocations.get(name), 1, buf); + break; + default: + runtimeException("Unsupported case: uniform '"+name+"' type: "+type); + } + } + + public String getName() { + return name; + } + + public Map getUniformTypes() { + return uniformTypes; + } + + + private int compileShader (String code, int shaderType) { + int shaderHandle = glCreateShader(shaderType); + glShaderSource(shaderHandle, code); + glCompileShader(shaderHandle); + int compileSuccess[] = new int[1]; + glGetShaderiv(shaderHandle, GL_COMPILE_STATUS, compileSuccess, 0); + if (compileSuccess[0] == GL_FALSE) { + runtimeException("failed to compile: " + glGetShaderInfoLog(shaderHandle)); + return -1; + } + return shaderHandle; + } + + private void computeMeta () { + Map uniforms = new HashMap<>(); + Map locations = new HashMap<>(); + + int[] nbUniforms = new int[1]; + int[] type = new int[1]; + int[] size = new int[1]; + glGetProgramiv(program, GL_ACTIVE_UNIFORMS, nbUniforms, 0); + for (int i=0; i < nbUniforms[0]; i++) { + String uniformName = glGetActiveUniform(program, i, size, 0, type, 0); + int location = glGetUniformLocation(program, uniformName); + uniforms.put(uniformName, type[0]); + locations.put(uniformName, location); + } + this.uniformTypes = uniforms; + this.uniformLocations = locations; + } + + private void makeProgram () { + int vertex = compileShader(vert, GL_VERTEX_SHADER); + if (vertex == -1) return; + + int fragment = compileShader(frag, GL_FRAGMENT_SHADER); + if (fragment == -1) return; + + program = glCreateProgram(); + glAttachShader(program, vertex); + glAttachShader(program, fragment); + glLinkProgram(program); + + int[] linkSuccess = new int[1]; + glGetProgramiv(program, GL_LINK_STATUS, linkSuccess, 0); + if (linkSuccess[0] == GL_FALSE) { + runtimeException("Linking failed "+glGetProgramInfoLog(program)); + } + + glUseProgram(program); + + validate(); + + computeMeta(); + + pointerLoc = glGetAttribLocation(program, "position"); + + buffer = new int[1]; + glGenBuffers(1, buffer, 0); + glBindBuffer(GL_ARRAY_BUFFER, buffer[0]); + + float buf[] = { + -1.0f, -1.0f, + 1.0f, -1.0f, + -1.0f, 1.0f, + -1.0f, 1.0f, + 1.0f, -1.0f, + 1.0f, 1.0f + }; + FloatBuffer bufferData = ByteBuffer.allocateDirect(buf.length * 4) + .order(ByteOrder.nativeOrder()) + .asFloatBuffer(); + bufferData.put(buf).position(0); + + glBufferData(GL_ARRAY_BUFFER, buf.length * 4, bufferData, GL_STATIC_DRAW); + } + + public boolean isReady () { + return buffer != null && uniformLocations != null; + } + + public boolean ensureCompile() { + if (!isReady()) makeProgram(); + return isReady(); + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/GLShaderData.java b/android/src/main/java/com/projectseptember/RNGL/GLShaderData.java new file mode 100644 index 0000000000000000000000000000000000000000..aae6a0db7756612bb165e4dfde14e1a56556bff7 --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLShaderData.java @@ -0,0 +1,13 @@ +package com.projectseptember.RNGL; + +public class GLShaderData { + public final String name; + public final String vert; + public final String frag; + + public GLShaderData(String name, String vert, String frag) { + this.name = name; + this.vert = vert; + this.frag = frag; + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/GLTexture.java b/android/src/main/java/com/projectseptember/RNGL/GLTexture.java new file mode 100644 index 0000000000000000000000000000000000000000..a6626cba275871c8318f6b64c48ac755994fde52 --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/GLTexture.java @@ -0,0 +1,96 @@ +package com.projectseptember.RNGL; + +import android.graphics.Bitmap; +import android.graphics.Color; +import android.graphics.Matrix; +import android.opengl.GLUtils; +import android.view.View; + +import java.util.concurrent.Executor; + +import static android.opengl.GLES20.*; + +public class GLTexture { + private int handle; + private Bitmap bitmapCurrentlyUploaded = null; + private Executor glExecutor; + + /** + * GLTexture constructor as well as all methods must be called in GL Thread + * @param glExecutor is only required for finalize() + */ + public GLTexture (Executor glExecutor) { + this.glExecutor = glExecutor; + makeTexture(); + } + + @Override + protected void finalize() throws Throwable { + super.finalize(); + bitmapCurrentlyUploaded = null; + glExecutor.execute(new Runnable() { + @Override + public void run() { + int[] handleArr = new int[] { handle }; + glDeleteTextures(1, handleArr, 0); + } + }); + } + + private void makeTexture () { + int[] handleArr = new int[1]; + glGenTextures(1, handleArr, 0); + handle = handleArr[0]; + glBindTexture(GL_TEXTURE_2D, handle); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); + } + + public int bind (int unit) { + glActiveTexture(GL_TEXTURE0 + unit); + glBindTexture(GL_TEXTURE_2D, handle); + return unit; + } + + public void bind () { + glBindTexture(GL_TEXTURE_2D, handle); + } + + + public void setPixels (Bitmap bitmap) { + if (bitmap != bitmapCurrentlyUploaded) { + bitmapCurrentlyUploaded = bitmap; + bind(); + GLUtils.texImage2D(GL_TEXTURE_2D, 0, bitmap, 0); + } + } + + public void setPixelsRandom (int width, int height) { + Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); + for (int x = 0; x < width; x++) { + for (int y = 0; y < height; y++) { + bitmap.setPixel(x, y, Color.rgb( + (int)(255.0 * Math.random()), + (int)(255.0 * Math.random()), + (int)(255.0 * Math.random()))); + } + } + setPixels(bitmap); + } + + public void setPixelsEmpty () { + Bitmap bitmap = Bitmap.createBitmap(2, 2, Bitmap.Config.ARGB_8888); + setPixels(bitmap); + } + + public void setShape (int width, int height) { + bind(); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, null); + } + + public int getHandle() { + return handle; + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/RNGLContext.java b/android/src/main/java/com/projectseptember/RNGL/RNGLContext.java new file mode 100644 index 0000000000000000000000000000000000000000..4c78d9857f8e9aa736878a51b41303205c2e93cb --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/RNGLContext.java @@ -0,0 +1,43 @@ +package com.projectseptember.RNGL; + +import com.facebook.react.bridge.ReactApplicationContext; +import com.facebook.react.bridge.ReactContextBaseJavaModule; +import com.facebook.react.bridge.ReactMethod; +import com.facebook.react.bridge.ReadableMap; + +import java.util.HashMap; +import java.util.Map; + +public class RNGLContext extends ReactContextBaseJavaModule { + + private static String STATIC_VERT = + "attribute vec2 position;"+ + "varying vec2 uv;"+ + "void main() {"+ + "gl_Position = vec4(position,0.0,1.0);"+ + "uv = vec2(0.5, 0.5) * (position+vec2(1.0, 1.0));"+ + "}"; + + private Map shaders = new HashMap<>(); + private Map fbos = new HashMap<>(); + + public RNGLContext (ReactApplicationContext reactContext) { + super(reactContext); + } + + @Override + public String getName() { + return "RNGLContext"; + } + + public GLShaderData getShader (Integer id) { + return shaders.get(id); + } + + @ReactMethod + public void addShader (final Integer id, final ReadableMap config) { + final String frag = config.getString("frag"); + final String name = config.getString("name"); + shaders.put(id, new GLShaderData(name, STATIC_VERT, frag)); + } +} diff --git a/android/src/main/java/com/projectseptember/RNGL/RNGLPackage.java b/android/src/main/java/com/projectseptember/RNGL/RNGLPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..19b47ddba8796f61c889fbd8f5aa8bca4baf6b3a --- /dev/null +++ b/android/src/main/java/com/projectseptember/RNGL/RNGLPackage.java @@ -0,0 +1,35 @@ +package com.projectseptember.RNGL; + +import java.util.Arrays; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import com.facebook.react.ReactPackage; +import com.facebook.react.bridge.NativeModule; +import com.facebook.react.bridge.ReactApplicationContext; +import com.facebook.react.uimanager.ViewManager; +import com.facebook.react.bridge.JavaScriptModule; + +public class RNGLPackage implements ReactPackage { + + @Override + public List createNativeModules(ReactApplicationContext reactApplicationContext) { + List modules = new ArrayList<>(); + modules.add(new RNGLContext(reactApplicationContext)); + return modules; + } + + @Override + public List> createJSModules() { + return Collections.emptyList(); + } + + @Override + public List createViewManagers(ReactApplicationContext reactContext) { + return Arrays.asList( + new GLCanvasManager() + ); + } + +} diff --git a/imgs/advancedeffects.gif b/docs/advancedeffects.gif similarity index 100% rename from imgs/advancedeffects.gif rename to docs/advancedeffects.gif diff --git a/imgs/hellogl.jpg b/docs/hellogl.jpg similarity index 100% rename from imgs/hellogl.jpg rename to docs/hellogl.jpg diff --git a/imgs/install-steps.png b/docs/install-steps.png similarity index 100% rename from imgs/install-steps.png rename to docs/install-steps.png diff --git a/imgs/simple.gif b/docs/simple.gif similarity index 100% rename from imgs/simple.gif rename to docs/simple.gif diff --git a/index.android.js b/index.android.js new file mode 100644 index 0000000000000000000000000000000000000000..101d3174fe2b6fcd98645a4548c6305e6318634a --- /dev/null +++ b/index.android.js @@ -0,0 +1,13 @@ +const Shaders = require("./src/Shaders"); +const View = require("./src/View"); +const Uniform = require("./src/Uniform"); +const Component = require("./src/ComponentDeprecated"); +const createComponent = require("./src/createComponent"); + +module.exports = { + Shaders, + View, + Uniform, + Component, + createComponent +}; diff --git a/index.ios.js b/index.ios.js new file mode 100644 index 0000000000000000000000000000000000000000..101d3174fe2b6fcd98645a4548c6305e6318634a --- /dev/null +++ b/index.ios.js @@ -0,0 +1,13 @@ +const Shaders = require("./src/Shaders"); +const View = require("./src/View"); +const Uniform = require("./src/Uniform"); +const Component = require("./src/ComponentDeprecated"); +const createComponent = require("./src/createComponent"); + +module.exports = { + Shaders, + View, + Uniform, + Component, + createComponent +}; diff --git a/RNGL/GLCanvas.h b/ios/GLCanvas.h similarity index 100% rename from RNGL/GLCanvas.h rename to ios/GLCanvas.h diff --git a/RNGL/GLCanvas.m b/ios/GLCanvas.m similarity index 100% rename from RNGL/GLCanvas.m rename to ios/GLCanvas.m diff --git a/RNGL/GLCanvasManager.h b/ios/GLCanvasManager.h similarity index 100% rename from RNGL/GLCanvasManager.h rename to ios/GLCanvasManager.h diff --git a/RNGL/GLCanvasManager.m b/ios/GLCanvasManager.m similarity index 73% rename from RNGL/GLCanvasManager.m rename to ios/GLCanvasManager.m index cc41340aafc46d2a892bad7276f6ec8169e99233..5ca354340fedde7d7a2bf26b31b1ad415f5201ae 100644 --- a/RNGL/GLCanvasManager.m +++ b/ios/GLCanvasManager.m @@ -29,6 +29,23 @@ RCT_EXPORT_VIEW_PROPERTY(onLoad, BOOL); RCT_EXPORT_VIEW_PROPERTY(onProgress, BOOL); RCT_EXPORT_VIEW_PROPERTY(onChange, BOOL); +/* TODO + + RCT_EXPORT_METHOD(capture: + (nonnull NSNumber *)reactTag + callback:(RCTResponseSenderBlock)callback) + { + + UIView *view = [self.bridge.uiManager viewForReactTag:reactTag]; + if ([view isKindOfClass:[GLCanvas class]]) { + [((GLCanvas*)view) capture: callback]; + } + else { + callback(@[@"view is not a GLCanvas"]); + } + } + */ + - (UIView *)view { GLCanvas * v; diff --git a/RNGL/GLData.h b/ios/GLData.h similarity index 100% rename from RNGL/GLData.h rename to ios/GLData.h diff --git a/RNGL/GLData.m b/ios/GLData.m similarity index 100% rename from RNGL/GLData.m rename to ios/GLData.m diff --git a/RNGL/GLFBO.h b/ios/GLFBO.h similarity index 100% rename from RNGL/GLFBO.h rename to ios/GLFBO.h diff --git a/RNGL/GLFBO.m b/ios/GLFBO.m similarity index 95% rename from RNGL/GLFBO.m rename to ios/GLFBO.m index 2a0e6ac149f90e072b9d290a11696cf2ad7eca42..1c73c211362a758c363565510c34bf4c7f938af7 100644 --- a/RNGL/GLFBO.m +++ b/ios/GLFBO.m @@ -32,8 +32,8 @@ - (void)restore { glBindFramebuffer(GL_FRAMEBUFFER, _fbo); - glBindRenderbuffer(GL_FRAMEBUFFER, _rbo); - glBindTexture(GL_FRAMEBUFFER, _tex); + glBindRenderbuffer(GL_RENDERBUFFER, _rbo); + glBindTexture(GL_TEXTURE_2D, _tex); } @end @@ -128,8 +128,8 @@ GLuint initRenderBuffer (float width, float height, GLuint component, GLuint att if (width == _width && height == _height) return; GLint maxFBOSize; glGetIntegerv(GL_MAX_RENDERBUFFER_SIZE, &maxFBOSize); - if( _width < 0 || _width > maxFBOSize || - _height < 0 || _height > maxFBOSize) { + if( width < 0 || width > maxFBOSize || + height < 0 || height > maxFBOSize) { RCTLogError(@"Can't resize framebuffer. Invalid dimensions"); return; } diff --git a/RNGL/GLImage.h b/ios/GLImage.h similarity index 100% rename from RNGL/GLImage.h rename to ios/GLImage.h diff --git a/RNGL/GLImage.m b/ios/GLImage.m similarity index 100% rename from RNGL/GLImage.m rename to ios/GLImage.m diff --git a/RNGL/GLImageData.h b/ios/GLImageData.h similarity index 100% rename from RNGL/GLImageData.h rename to ios/GLImageData.h diff --git a/RNGL/GLImageData.m b/ios/GLImageData.m similarity index 100% rename from RNGL/GLImageData.m rename to ios/GLImageData.m diff --git a/RNGL/GLRenderData.h b/ios/GLRenderData.h similarity index 100% rename from RNGL/GLRenderData.h rename to ios/GLRenderData.h diff --git a/RNGL/GLRenderData.m b/ios/GLRenderData.m similarity index 100% rename from RNGL/GLRenderData.m rename to ios/GLRenderData.m diff --git a/RNGL/GLShader.h b/ios/GLShader.h similarity index 100% rename from RNGL/GLShader.h rename to ios/GLShader.h diff --git a/RNGL/GLShader.m b/ios/GLShader.m similarity index 100% rename from RNGL/GLShader.m rename to ios/GLShader.m diff --git a/RNGL/GLTexture.h b/ios/GLTexture.h similarity index 100% rename from RNGL/GLTexture.h rename to ios/GLTexture.h diff --git a/RNGL/GLTexture.m b/ios/GLTexture.m similarity index 100% rename from RNGL/GLTexture.m rename to ios/GLTexture.m diff --git a/RNGL/RCTConvert+GLData.h b/ios/RCTConvert+GLData.h similarity index 100% rename from RNGL/RCTConvert+GLData.h rename to ios/RCTConvert+GLData.h diff --git a/RNGL/RCTConvert+GLData.m b/ios/RCTConvert+GLData.m similarity index 100% rename from RNGL/RCTConvert+GLData.m rename to ios/RCTConvert+GLData.m diff --git a/ios/RNGL.xcodeproj/project.pbxproj b/ios/RNGL.xcodeproj/project.pbxproj new file mode 100644 index 0000000000000000000000000000000000000000..99e80ce053d1dac129d346245a6d6f20a9271816 --- /dev/null +++ b/ios/RNGL.xcodeproj/project.pbxproj @@ -0,0 +1,313 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 346089D01BEFD0A500C90DB5 /* GLCanvas.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089BB1BEFD0A500C90DB5 /* GLCanvas.m */; }; + 346089D11BEFD0A500C90DB5 /* GLCanvasManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089BD1BEFD0A500C90DB5 /* GLCanvasManager.m */; }; + 346089D21BEFD0A500C90DB5 /* GLData.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089BF1BEFD0A500C90DB5 /* GLData.m */; }; + 346089D31BEFD0A500C90DB5 /* GLFBO.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089C11BEFD0A500C90DB5 /* GLFBO.m */; }; + 346089D41BEFD0A500C90DB5 /* GLImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089C31BEFD0A500C90DB5 /* GLImage.m */; }; + 346089D51BEFD0A500C90DB5 /* GLImageData.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089C51BEFD0A500C90DB5 /* GLImageData.m */; }; + 346089D61BEFD0A500C90DB5 /* GLRenderData.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089C71BEFD0A500C90DB5 /* GLRenderData.m */; }; + 346089D71BEFD0A500C90DB5 /* GLShader.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089C91BEFD0A500C90DB5 /* GLShader.m */; }; + 346089D81BEFD0A500C90DB5 /* GLTexture.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089CB1BEFD0A500C90DB5 /* GLTexture.m */; }; + 346089D91BEFD0A500C90DB5 /* RCTConvert+GLData.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089CD1BEFD0A500C90DB5 /* RCTConvert+GLData.m */; }; + 346089DA1BEFD0A500C90DB5 /* RNGLContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 346089CF1BEFD0A500C90DB5 /* RNGLContext.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 4107012D1ACB723B00C6AA39 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = "include/$(PRODUCT_NAME)"; + dstSubfolderSpec = 16; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 346089BA1BEFD0A500C90DB5 /* GLCanvas.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLCanvas.h; sourceTree = ""; }; + 346089BB1BEFD0A500C90DB5 /* GLCanvas.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLCanvas.m; sourceTree = ""; }; + 346089BC1BEFD0A500C90DB5 /* GLCanvasManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLCanvasManager.h; sourceTree = ""; }; + 346089BD1BEFD0A500C90DB5 /* GLCanvasManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLCanvasManager.m; sourceTree = ""; }; + 346089BE1BEFD0A500C90DB5 /* GLData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLData.h; sourceTree = ""; }; + 346089BF1BEFD0A500C90DB5 /* GLData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLData.m; sourceTree = ""; }; + 346089C01BEFD0A500C90DB5 /* GLFBO.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLFBO.h; sourceTree = ""; }; + 346089C11BEFD0A500C90DB5 /* GLFBO.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLFBO.m; sourceTree = ""; }; + 346089C21BEFD0A500C90DB5 /* GLImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLImage.h; sourceTree = ""; }; + 346089C31BEFD0A500C90DB5 /* GLImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLImage.m; sourceTree = ""; }; + 346089C41BEFD0A500C90DB5 /* GLImageData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLImageData.h; sourceTree = ""; }; + 346089C51BEFD0A500C90DB5 /* GLImageData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLImageData.m; sourceTree = ""; }; + 346089C61BEFD0A500C90DB5 /* GLRenderData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLRenderData.h; sourceTree = ""; }; + 346089C71BEFD0A500C90DB5 /* GLRenderData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLRenderData.m; sourceTree = ""; }; + 346089C81BEFD0A500C90DB5 /* GLShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLShader.h; sourceTree = ""; }; + 346089C91BEFD0A500C90DB5 /* GLShader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLShader.m; sourceTree = ""; }; + 346089CA1BEFD0A500C90DB5 /* GLTexture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLTexture.h; sourceTree = ""; }; + 346089CB1BEFD0A500C90DB5 /* GLTexture.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GLTexture.m; sourceTree = ""; }; + 346089CC1BEFD0A500C90DB5 /* RCTConvert+GLData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "RCTConvert+GLData.h"; sourceTree = ""; }; + 346089CD1BEFD0A500C90DB5 /* RCTConvert+GLData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "RCTConvert+GLData.m"; sourceTree = ""; }; + 346089CE1BEFD0A500C90DB5 /* RNGLContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RNGLContext.h; sourceTree = ""; }; + 346089CF1BEFD0A500C90DB5 /* RNGLContext.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RNGLContext.m; sourceTree = ""; }; + 4107012F1ACB723B00C6AA39 /* libRNGL.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libRNGL.a; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 4107012C1ACB723B00C6AA39 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 410701241ACB719800C6AA39 = { + isa = PBXGroup; + children = ( + 346089BA1BEFD0A500C90DB5 /* GLCanvas.h */, + 346089BB1BEFD0A500C90DB5 /* GLCanvas.m */, + 346089BC1BEFD0A500C90DB5 /* GLCanvasManager.h */, + 346089BD1BEFD0A500C90DB5 /* GLCanvasManager.m */, + 346089BE1BEFD0A500C90DB5 /* GLData.h */, + 346089BF1BEFD0A500C90DB5 /* GLData.m */, + 346089C01BEFD0A500C90DB5 /* GLFBO.h */, + 346089C11BEFD0A500C90DB5 /* GLFBO.m */, + 346089C21BEFD0A500C90DB5 /* GLImage.h */, + 346089C31BEFD0A500C90DB5 /* GLImage.m */, + 346089C41BEFD0A500C90DB5 /* GLImageData.h */, + 346089C51BEFD0A500C90DB5 /* GLImageData.m */, + 346089C61BEFD0A500C90DB5 /* GLRenderData.h */, + 346089C71BEFD0A500C90DB5 /* GLRenderData.m */, + 346089C81BEFD0A500C90DB5 /* GLShader.h */, + 346089C91BEFD0A500C90DB5 /* GLShader.m */, + 346089CA1BEFD0A500C90DB5 /* GLTexture.h */, + 346089CB1BEFD0A500C90DB5 /* GLTexture.m */, + 346089CC1BEFD0A500C90DB5 /* RCTConvert+GLData.h */, + 346089CD1BEFD0A500C90DB5 /* RCTConvert+GLData.m */, + 346089CE1BEFD0A500C90DB5 /* RNGLContext.h */, + 346089CF1BEFD0A500C90DB5 /* RNGLContext.m */, + 410701301ACB723B00C6AA39 /* Products */, + ); + sourceTree = ""; + }; + 410701301ACB723B00C6AA39 /* Products */ = { + isa = PBXGroup; + children = ( + 4107012F1ACB723B00C6AA39 /* libRNGL.a */, + ); + name = Products; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 4107012E1ACB723B00C6AA39 /* RNGL */ = { + isa = PBXNativeTarget; + buildConfigurationList = 410701411ACB723B00C6AA39 /* Build configuration list for PBXNativeTarget "RNGL" */; + buildPhases = ( + 4107012B1ACB723B00C6AA39 /* Sources */, + 4107012C1ACB723B00C6AA39 /* Frameworks */, + 4107012D1ACB723B00C6AA39 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = RNGL; + productName = RNGL; + productReference = 4107012F1ACB723B00C6AA39 /* libRNGL.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 410701251ACB719800C6AA39 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0620; + TargetAttributes = { + 4107012E1ACB723B00C6AA39 = { + CreatedOnToolsVersion = 6.2; + }; + }; + }; + buildConfigurationList = 410701281ACB719800C6AA39 /* Build configuration list for PBXProject "RNGL" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 410701241ACB719800C6AA39; + productRefGroup = 410701301ACB723B00C6AA39 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 4107012E1ACB723B00C6AA39 /* RNGL */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 4107012B1ACB723B00C6AA39 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 346089D31BEFD0A500C90DB5 /* GLFBO.m in Sources */, + 346089DA1BEFD0A500C90DB5 /* RNGLContext.m in Sources */, + 346089D21BEFD0A500C90DB5 /* GLData.m in Sources */, + 346089D91BEFD0A500C90DB5 /* RCTConvert+GLData.m in Sources */, + 346089D51BEFD0A500C90DB5 /* GLImageData.m in Sources */, + 346089D41BEFD0A500C90DB5 /* GLImage.m in Sources */, + 346089D61BEFD0A500C90DB5 /* GLRenderData.m in Sources */, + 346089D11BEFD0A500C90DB5 /* GLCanvasManager.m in Sources */, + 346089D01BEFD0A500C90DB5 /* GLCanvas.m in Sources */, + 346089D71BEFD0A500C90DB5 /* GLShader.m in Sources */, + 346089D81BEFD0A500C90DB5 /* GLTexture.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 410701291ACB719800C6AA39 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + }; + name = Debug; + }; + 4107012A1ACB719800C6AA39 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + }; + name = Release; + }; + 410701421ACB723B00C6AA39 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, + "$(SRCROOT)/../../react-native/React/**", + "$(SRCROOT)/../../react-native/Libraries/Image", + "$(SRCROOT)/../node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/Libraries/Image", + ); + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + 410701431ACB723B00C6AA39 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, + "$(SRCROOT)/../../react-native/React/**", + "$(SRCROOT)/../../react-native/Libraries/Image", + "$(SRCROOT)/../node_modules/react-native/React/**", + "$(SRCROOT)/../node_modules/react-native/Libraries/Image", + ); + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 410701281ACB719800C6AA39 /* Build configuration list for PBXProject "RNGL" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 410701291ACB719800C6AA39 /* Debug */, + 4107012A1ACB719800C6AA39 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 410701411ACB723B00C6AA39 /* Build configuration list for PBXNativeTarget "RNGL" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 410701421ACB723B00C6AA39 /* Debug */, + 410701431ACB723B00C6AA39 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 410701251ACB719800C6AA39 /* Project object */; +} diff --git a/RNGL/RNGLContext.h b/ios/RNGLContext.h similarity index 100% rename from RNGL/RNGLContext.h rename to ios/RNGLContext.h diff --git a/RNGL/RNGLContext.m b/ios/RNGLContext.m similarity index 100% rename from RNGL/RNGLContext.m rename to ios/RNGLContext.m diff --git a/package.json b/package.json index fa4810da139efc20559a0eef9c0a0adbec60e8df..75b53d75d3740bf8a9792295a85961e4756673ac 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,6 @@ "name": "gl-react-native", "version": "1.2.7", "description": "OpenGL bindings for react-native to implement complex effects over images and components, in the descriptive VDOM paradigm", - "main": "src/index.js", "repository": { "type": "git", "url": "git+https://github.com/ProjectSeptemberInc/gl-react-native.git" @@ -23,11 +22,11 @@ "react-native": ">=0.9.0" }, "dependencies": { - "invariant": "2.1.1", + "invariant": "2.2.0", "gl-react-core": "1.2.x" }, "devDependencies": { - "eslint": "^1.3.1", - "eslint-plugin-react": "^3.2.3" + "eslint": "^1.9.0", + "eslint-plugin-react": "^3.8.0" } } diff --git a/src/index.js b/src/index.js deleted file mode 100644 index c46d43ba097aab6b66c9b672d1026a7762e95e07..0000000000000000000000000000000000000000 --- a/src/index.js +++ /dev/null @@ -1,13 +0,0 @@ -const Shaders = require("./Shaders"); -const View = require("./View"); -const Uniform = require("./Uniform"); -const Component = require("./ComponentDeprecated"); -const createComponent = require("./createComponent"); - -module.exports = { - Shaders, - View, - Uniform, - Component, - createComponent -};