diff --git a/.gitignore b/.gitignore index f1d32e41d6d..c4b7a9b476d 100644 --- a/.gitignore +++ b/.gitignore @@ -37,7 +37,3 @@ node_modules # OS X .DS_Store - -#JS -*.jsbundle -*.swp diff --git a/ReactWindows/Playground/Resources/main.dev.jsbundle b/ReactWindows/Playground/Resources/main.dev.jsbundle index 9f076e33b81..981a1293f29 100644 --- a/ReactWindows/Playground/Resources/main.dev.jsbundle +++ b/ReactWindows/Playground/Resources/main.dev.jsbundle @@ -1188,7 +1188,7 @@ typeof global!=='undefined'?global:typeof self!=='undefined'?self:this); __d('react-xaml-wpf/index.ios.js',function(global, require, module, exports) { 'use strict'; var React=require('react-native/Libraries/react-native/react-native.js');var -AppRegistry=React.AppRegistry;var View=React.View;var Text=React.Text;var Switch=React.Switch; +AppRegistry=React.AppRegistry;var View=React.View;var Text=React.Text;var Switch=React.Switch;var TextInput=React.TextInput; var ReactRoot=React.createClass({displayName:'ReactRoot', render:function(){ @@ -1197,9 +1197,11 @@ React.createElement(View,{elevation:'1.0'}, React.createElement(View,{style:{marginLeft:20}}, React.createElement(View,{style:{borderLeftWidth:5,borderRightWidth:10,borderTopWidth:2, borderBottomWidth: 8}}, React.createElement(View,{style:{margin:10,borderWidth:10,borderRadius:5,borderLeftColor:'red',borderRightColor:'blue',borderTopColor:'yellow',borderBottomColor:'green'}}, -React.createElement(View,{style:{padding:10,flexDirection:'column'}}, +React.createElement(View,{style:{padding:10,flexDirection:'row'}}, React.createElement(Switch,null), -React.createElement(Text,{style:{color:'orange',flex:1}},"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum. Praesent mauris. Fusce nec tellus sed augue semper porta. Mauris massa. Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur sodales ligula in libero. Sed dignissim lacinia nunc. Curabitur tortor. Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. Maecenas mattis. Sed convallis tristique sem. Proin ut ligula vel nunc egestas porttitor. Morbi lectus risus, iaculis vel, suscipit quis, luctus non, massa. Fusce ac turpis quis ligula lacinia aliquet. Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed, euismod in, nibh. Quisque volutpat condimentum velit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Nam nec ante. Sed lacinia, urna non tincidunt mattis, tortor neque adipiscing diam, a cursus ipsum ante quis turpis. Nulla facilisi. Ut fringilla. Suspendisse potenti. Nunc feugiat mi a tellus consequat imperdiet. Vestibulum sapien. Proin quam. Etiam ultrices. Suspendisse in justo eu magna luctus suscipit. Sed lectus. Integer euismod lacus luctus magna. Quisque cursus, metus vitae pharetra auctor, sem massa mattis sem, at interdum magna augue eget diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Morbi lacinia molestie dui. Praesent blandit dolor. Sed non quam. In vel mi sit amet augue congue elementum. Morbi in ipsum sit amet pede facilisis laoreet. Donec lacus nunc, viverra nec.")))))));}}); +React.createElement(Text,{style:{color:'orange',flex:1}},"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum. Praesent mauris. Fusce nec tellus sed augue semper porta. Mauris massa. Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur sodales ligula in libero. Sed dignissim lacinia nunc. Curabitur tortor. Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. Maecenas mattis. Sed convallis tristique sem. Proin ut ligula vel nunc egestas porttitor. Morbi lectus risus, iaculis vel, suscipit quis, luctus non, massa. Fusce ac turpis quis ligula lacinia aliquet. Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed, euismod in, nibh. Quisque volutpat condimentum velit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Nam nec ante. Sed lacinia, urna non tincidunt mattis, tortor neque adipiscing diam, a cursus ipsum ante quis turpis. Nulla facilisi. Ut fringilla. Suspendisse potenti. Nunc feugiat mi a tellus consequat imperdiet. Vestibulum sapien. Proin quam. Etiam ultrices. Suspendisse in justo eu magna luctus suscipit. Sed lectus. Integer euismod lacus luctus magna. Quisque cursus, metus vitae pharetra auctor, sem massa mattis sem, at interdum magna augue eget diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Morbi lacinia molestie dui. Praesent blandit dolor. Sed non quam. In vel mi sit amet augue congue elementum. Morbi in ipsum sit amet pede facilisis laoreet. Donec lacus nunc, viverra nec.")), +React.createElement(View,null, +React.createElement(TextInput,{style:{height:40,color:'purple',borderWidth:5,borderColor:'purple'}})))))));}}); diff --git a/ReactWindows/ReactNative.Tests/ReactNative.Tests.csproj b/ReactWindows/ReactNative.Tests/ReactNative.Tests.csproj index d22aae87726..47bffc1f285 100644 --- a/ReactWindows/ReactNative.Tests/ReactNative.Tests.csproj +++ b/ReactWindows/ReactNative.Tests/ReactNative.Tests.csproj @@ -91,9 +91,6 @@ - - Always - diff --git a/ReactWindows/ReactNative.Tests/Resources/main.jsbundle b/ReactWindows/ReactNative.Tests/Resources/main.jsbundle deleted file mode 100644 index 3b09fe050c5..00000000000 --- a/ReactWindows/ReactNative.Tests/Resources/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("react-xaml-wpf/index.ios.js",["react-native/Libraries/react-native/react-native.js"],function(e,t,n,r){"use strict";var o=t("react-native/Libraries/react-native/react-native.js"),i=o.AppRegistry,a=o.createClass({displayName:"ReactRoot",render:function(){return o.createElement("div",null,"Welcome to React Native!")}});i.registerComponent("ReactRoot",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","SwitchAndroid","SwitchIOS","TabBarIOS","Text","TextInput","ToastAndroid","ToolbarAndroid","TouchableHighlight","TouchableNativeFeedback","TouchableOpacity","TouchableWithoutFeedback","View","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"),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"),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"),h=t("ReactNativeMount"),f=t("ReactPropTypes"),d=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 R=function(e){var t=e.type.defaultProps,n=e.props;for(var r in t)void 0===n[r]&&(n[r]=t[r])},E=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&&R(e),e},w=function(e,t,n){return h.renderComponent(e,t,n)},T={hasReactNativeInitialized:!1,Children:{map:o.map,forEach:o.forEach,count:o.count,only:g},Component:a,PropTypes:f,createClass:i.createClass,createElement:_,createFactory:b,cloneElement:S,_augmentElement:E,findNodeHandle:m,render:w,unmountComponentAtNode:h.unmountComponentAtNode,unstable_batchedUpdates:d.batchedUpdates,__spread:Object.assign,unmountComponentAtNodeAndRemoveContainer:h.unmountComponentAtNodeAndRemoveContainer,isValidClass:u.isValidFactory,isValidElement:u.isValidElement,renderComponent:function(e,t,n){return y("Use React.render instead of React.renderComponent"),T.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:h,Reconciler:t("ReactReconciler"),TextComponent:t("ReactNativeTextComponent")}),n.exports=T}),__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);d(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 d(e,u,o),s.release(o),f.create(r)}function l(e,t,n){return null}function p(e,t){return d(e,l,null)}var h=t("PooledClass"),f=t("ReactFragment"),d=t("traverseAllChildren"),m=t("warning"),v=h.twoArgumentPooler,g=h.threeArgumentPooler;h.addPoolingTo(o,v),h.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),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(){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)&&R(n===I.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===I.DEFINE_MANY||n===I.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===I.DEFINE_MANY_MERGED||h===I.DEFINE_MANY),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",h,r),h===I.DEFINE_MANY_MERGED?n[r]=l(n[r],o):h===I.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}),I=E({DEFINE_ONCE:null,DEFINE_MANY:null,OVERRIDE_BASE:null,DEFINE_MANY_MERGED:null}),O=[],x=!1,P={mixins:I.DEFINE_MANY,statics:I.DEFINE_MANY,propTypes:I.DEFINE_MANY,contextTypes:I.DEFINE_MANY,childContextTypes:I.DEFINE_MANY,getDefaultProps:I.DEFINE_MANY_MERGED,getInitialState:I.DEFINE_MANY_MERGED,getChildContext:I.DEFINE_MANY_MERGED,render:I.DEFINE_ONCE,componentWillMount:I.DEFINE_MANY,componentDidMount:I.DEFINE_MANY,componentWillReceiveProps:I.DEFINE_MANY,shouldComponentUpdate:I.DEFINE_ONCE,componentWillUpdate:I.DEFINE_MANY,componentDidUpdate:I.DEFINE_MANY,componentWillUnmount:I.DEFINE_MANY,updateComponent:I.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(I.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=I.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=E;return function(i,a){if(o===T)throw new Error("Generator is already running");if(o===C){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=w,l;n[s.resultName]=l.value,n.next=s.nextLoc,n.delegate=null}if("next"===i)o===w?n.sent=a:n.sent=v;else if("throw"===i){if(o===E)throw o=C,a;n.dispatchException(a)&&(i="next",a=v)}else"return"===i&&n.abrupt("return",a);o=T;var c=r(e,t,n);if("normal"===c.type){o=n.done?C:w;var l={value:c.arg,done:n.done};if(c.arg!==I)return l;n.delegate&&"next"===i&&(a=v)}else"throw"===c.type&&(o=C,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[_];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),I}},"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},I}}}("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._61);return t._81=1,t._65=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._81;)s=s._65;return 1===s._81?r(a,s._65):(2===s._81&&n(s._65),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;if(void 0!==i)return 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 I=!b(w)||_(w);if(w.isPersistent()||w.constructor.release(w),I){var O=C.responderTerminate,x=p.getPooled(O,R,n,r);x.touchHistory=h.touchHistory,c.accumulateDirectDispatches(x),m=f(m,[y,x]),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 O=p.getPooled(S,R,r,u);O.touchHistory=h.touchHistory,c.accumulateDirectDispatches(O),l=f(l,O)}var x=R&&e===s.topLevelTypes.topTouchCancel,P=R&&!x&&y(e)&&a(r),N=x?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 I.GlobalInteractionHandler&&M!==w&&I.GlobalInteractionHandler.onChange(M),w=M,l},GlobalResponderHandler:null,GlobalInteractionHandler:null,injection:{injectGlobalResponderHandler:function(e){I.GlobalResponderHandler=e},injectGlobalInteractionHandler:function(e){I.GlobalInteractionHandler=e}}};n.exports=I}),__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){O(e)&&(e="100%");var n=x(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 I(e){return parseInt(e,16)}function O(e){return"string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)}function x(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 I(e)/255}function A(e){e=e.replace(L,"").replace(V,"").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=G.rgb.exec(e))?{r:n[1],g:n[2],b:n[3]}:(n=G.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=G.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=G.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=G.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=G.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=G.hex8.exec(e))?{a:M(n[1]),r:I(n[2]),g:I(n[3]),b:I(n[4]),format:t?"name":"hex8"}:(n=G.hex6.exec(e))?{r:I(n[1]),g:I(n[2]),b:I(n[3]),format:t?"name":"hex"}:(n=G.hex3.exec(e))?{r:I(n[1]+""+n[1]),g:I(n[2]+""+n[2]),b:I(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 L=/^\s+/,V=/\s+$/,j=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:W[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())},clone:function(){return e(this.toString())},_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"},W=e.hexNames=E(z),G=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&&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(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:[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?N:P),S(void 0!==r,"ScrollViewClass must not be undefined"),c.createElement(r,o({},p,{ref:T}),i)}}),O=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: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:x,uiViewClassName:"RCTScrollView"}),N=v({validAttributes:x,uiViewClassName:"AndroidHorizontalScrollView"});else if("ios"===a.OS)var u=E("RCTScrollView",I);n.exports=I}),__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?-(I-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=[],I=0;g>I;I++){var O=d*I+p;w[I]={Crumb:s(y,{left:O}),Icon:s(_,{opacity:v}),Separator:s(b,{opacity:1}),Title:s(S,{left:O,opacity:0}),RightItem:s(E,{opacity:0})},T[I]={Crumb:s(y,{left:O}),Icon:s(_,{opacity:1}),Separator:s(b,{opacity:0}),Title:s(S,{left:O+h,opacity:1}),RightItem:s(E,{opacity:1})};var x=u-100;C[I]={Crumb:s(y,{left:x}),Icon:s(_,{opacity:0}),Separator:s(b,{opacity:0}),Title:s(S,{left:x+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),I=e[0],O=e[1],x=e[2],P=e[3],N=e[4],D=e[5],M=e[6],A=e[7],k=e[8],L=e[9],V=e[10],j=e[11],F=y,H=_,B=b;e[0]=F*I+H*N+B*k,e[1]=F*O+H*D+B*L,e[2]=F*x+H*M+B*V,e[3]=F*P+H*A+B*j,F=S,H=R,B=E,e[4]=F*I+H*N+B*k,e[5]=F*O+H*D+B*L,e[6]=F*x+H*M+B*V,e[7]=F*P+H*A+B*j,F=w,H=T,B=C,e[8]=F*I+H*N+B*k,e[9]=F*O+H*D+B*L,e[10]=F*x+H*M+B*V,e[11]=F*P+H*A+B*j}},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),I=y,O=_,x=b;e[0]=I,e[1]=O,e[2]=x,e[3]=0,I=S,O=R,x=E,e[4]=I,e[5]=O,e[6]=x,e[7]=0,I=w,O=T,x=C,e[8]=I,e[9]=O,e[10]=x,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=[],I=0;16>I;I++)C.push("m"+I);var O=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 d(e){return void 0===e.size&&(e.size=e.__iterate(v)),e.size}function m(e,t){if("number"!=typeof t){var n=t>>>0;if(""+n!==t||4294967295===n)return NaN;t=n}return 0>t?d(e)+t:t}function v(){return!0}function g(e,t,n){return(0===e||void 0!==n&&-n>=e)&&(void 0===t||void 0!==n&&t>=n)}function y(e,t){return b(e,t,0)}function _(e,t){return b(e,t,t)}function b(e,t,n){return void 0===e?n:0>e?Math.max(0,t+e):void 0===t?e:Math.min(t,e)}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!!I(e)}function T(e){return e&&"function"==typeof e.next}function C(e){var t=I(e);return t&&t.call(e)}function I(e){var t=e&&(En&&e[En]||e[wn]);return"function"==typeof t?t:void 0}function O(e){return e&&"number"==typeof e.length}function x(e){return null===e||void 0===e?j():i(e)?e.toSeq():B(e)}function P(e){return null===e||void 0===e?j().toKeyedSeq():i(e)?a(e)?e.toSeq():e.fromEntrySeq():F(e)}function N(e){return null===e||void 0===e?j():i(e)?a(e)?e.entrySeq():e.toIndexedSeq():H(e)}function D(e){return(null===e||void 0===e?j():i(e)?a(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 L(e){this._iterator=e,this._iteratorCache=[]}function V(e){return!(!e||!e[Cn])}function j(){return In||(In=new M([]))}function F(e){var t=Array.isArray(e)?new M(e).fromEntrySeq():T(e)?new L(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 O(e)?new M(e):T(e)?new L(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 W(e,t){return t?G(t,e,"",{"":e}):Y(e)}function G(e,t,n,r){return Array.isArray(t)?e.call(r,n,N(t).map(function(n,r){return G(e,n,r,t)})):K(t)?e.call(r,n,P(t).map(function(n,r){return G(e,n,r,t)})):t}function Y(e){return Array.isArray(e)?N(e).map(Y).toList():K(e)?P(e).map(Y).toMap():e}function K(e){return e&&(e.constructor===Object||void 0===e.constructor)}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){if(e===t)return!0;if(!i(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||a(e)!==a(t)||s(e)!==s(t)||c(e)!==c(t))return!1;if(0===e.size&&0===t.size)return!0;var n=!u(e);if(c(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 l=e;e=t,t=l}var p=!0,h=t.__iterate(function(t,r){return(n?e.has(t):o?X(t,e.get(r,gn)):X(e.get(r,gn),t))?void 0:(p=!1,!1)});return p&&e.size===h}function Q(e,t){if(!(this instanceof Q))return new Q(e,t);if(this._value=e,this.size=void 0===t?1/0:Math.max(0,t),0===this.size){if(On)return On;On=this}}function $(e,t){if(!e)throw new Error(t)}function Z(e,t,n){if(!(this instanceof Z))return new Z(e,t,n);if($(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(xn)return xn;xn=this}}function ee(){throw TypeError("Abstract")}function te(){}function ne(){}function re(){}function oe(e){return e>>>1&1073741824|3221225471&e}function ie(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 oe(n)}if("string"===t)return e.length>Vn?ae(e):se(e);if("function"==typeof e.hashCode)return e.hashCode();if("object"===t)return ue(e);if("function"==typeof e.toString)return se(e.toString());throw new Error("Value type "+t+" cannot be hashed.")}function ae(e){var t=Hn[e];return void 0===t&&(t=se(e),Fn===jn&&(Fn=0,Hn={}),Fn++,Hn[e]=t),t}function se(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 le(e){$(e!==1/0,"Cannot perform this action with an infinite size.")}function pe(e){return null===e||void 0===e?Re():he(e)&&!c(e)?e:Re().withMutations(function(t){var r=n(e);le(r.size),r.forEach(function(e,n){return t.set(n,e)})})}function he(e){return!(!e||!e[Bn])}function fe(e,t){this.ownerID=e,this.entries=t}function de(e,t,n){this.ownerID=e,this.bitmap=t,this.nodes=n}function me(e,t,n){this.ownerID=e,this.count=t,this.nodes=n}function ve(e,t,n){this.ownerID=e,this.keyHash=t,this.entries=n}function ge(e,t,n){this.ownerID=e,this.keyHash=t,this.entry=n}function ye(e,t,n){this._type=t,this._reverse=n,this._stack=e._root&&be(e._root)}function _e(e,t){return R(e,t[0],t[1])}function be(e,t){return{node:e,index:0,__prev:t}}function Se(e,t,n,r){var o=Object.create(Un);return o.size=e,o._root=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Re(){return qn||(qn=Se(0))}function Ee(e,t,n){var r,o;if(e._root){var i=l(yn),a=l(_n);if(r=we(e._root,e.__ownerID,0,void 0,t,n,i,a),!a.value)return e;o=e.size+(i.value?n===gn?-1:1:0)}else{if(n===gn)return e;o=1,r=new fe(e.__ownerID,[[t,n]])}return e.__ownerID?(e.size=o,e._root=r,e.__hash=void 0,e.__altered=!0,e):r?Se(o,r):Re()}function we(e,t,n,r,o,i,a,s){return e?e.update(t,n,r,o,i,a,s):i===gn?e:(p(s),p(a),new ge(t,r,[o,i]))}function Te(e){return e.constructor===ge||e.constructor===ve}function Ce(e,t,n,r,o){if(e.keyHash===r)return new ve(t,r,[e.entry,o]);var i,a=(0===n?e.keyHash:e.keyHash>>>n)&vn,s=(0===n?r:r>>>n)&vn,u=a===s?[Ce(e,t,n+dn,r,o)]:(i=new ge(t,r,o),s>a?[e,i]:[i,e]);return new de(t,1<s;s++,u<<=1){var l=t[s];void 0!==l&&s!==r&&(o|=u,a[i++]=l)}return new de(e,o,a)}function xe(e,t,n,r,o){for(var i=0,a=new Array(mn),s=0;0!==n;s++,n>>>=1)a[s]=1&n?t[i++]:void 0;return a[r]=o,new me(e,i+1,a)}function Pe(e,t,r){for(var o=[],a=0;a>1&1431655765,e=(858993459&e)+(e>>2&858993459),e=e+(e>>4)&252645135,e+=e>>8,e+=e>>16,127&e}function Le(e,t,n,r){var o=r?e:f(e);return o[t]=n,o}function Ve(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 je(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 Fe(e){var t=ze();if(null===e||void 0===e)return t;if(He(e))return e;var n=r(e),o=n.size;return 0===o?t:(le(o),o>0&&mn>o?qe(0,o,dn,null,new Be(n.toArray())):t.withMutations(function(e){e.setSize(o),n.forEach(function(t,n){return e.set(n,t)})}))}function He(e){return!(!e||!e[Yn])}function Be(e,t){this.array=e,this.ownerID=t}function Ue(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>mn&&(c=mn),function(){if(o===c)return Jn;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>mn&&(l=mn),function(){for(;;){if(s){var e=s();if(e!==Jn)return e;s=null}if(c===l)return Jn;var i=t?--l:c++;s=n(u&&u[i],r-dn,o+(i<=e.size||0>t)return e.withMutations(function(e){0>t?Xe(e,t).set(0,n):Xe(e,0,t+1).set(t,n)});t+=e._origin;var r=e._tail,o=e._root,i=l(_n);return t>=Qe(e._capacity)?r=Ge(r,e.__ownerID,0,t,n,i):o=Ge(o,e.__ownerID,e._level,t,n,i),i.value?e.__ownerID?(e._root=o,e._tail=r,e.__hash=void 0,e.__altered=!0,e):qe(e._origin,e._capacity,e._level,o,r):e}function Ge(e,t,n,r,o,i){var a=r>>>n&vn,s=e&&a0){var c=e&&e.array[a],l=Ge(c,t,n-dn,r,o,i);return l===c?e:(u=Ye(e,t),u.array[a]=l,u)}return s&&e.array[a]===o?e:(p(i),u=Ye(e,t),void 0===o&&a===u.array.length-1?u.array.pop():u.array[a]=o,u)}function Ye(e,t){return t&&e&&t===e.ownerID?e:new Be(e?e.array.slice():[],t)}function Ke(e,t){if(t>=Qe(e._capacity))return e._tail;if(t<1<0;)n=n.array[t>>>r&vn],r-=dn;return n}}function Xe(e,t,n){void 0!==t&&(t=0|t),void 0!==n&&(n=0|n);var r=e.__ownerID||new h,o=e._origin,i=e._capacity,a=o+t,s=void 0===n?i:0>n?i+n:o+n;if(a===o&&s===i)return e;if(a>=s)return e.clear();for(var u=e._level,c=e._root,l=0;0>a+l;)c=new Be(c&&c.array.length?[void 0,c]:[],r),u+=dn,l+=1<=1<f?Ke(e,s-1):f>p?new Be([],r):d;if(d&&f>p&&i>a&&d.array.length){c=Ye(c,r);for(var v=c,g=u;g>dn;g-=dn){var y=p>>>g&vn;v=v.array[y]=Ye(v.array[y],r)}v.array[p>>>dn&vn]=d}if(i>s&&(m=m&&m.removeAfter(r,0,s)),a>=f)a-=f,s-=f,u=dn,c=null,m=m&&m.removeBefore(r,0,a);else if(a>o||p>f){for(l=0;c;){var _=a>>>u&vn;if(_!==f>>>u&vn)break;_&&(l+=(1<o&&(c=c.removeBefore(r,u,a-l)),c&&p>f&&(c=c.removeAfter(r,u,f-l)),l&&(a-=l,s-=l)}return e.__ownerID?(e.size=s-a,e._origin=a,e._capacity=s,e._level=u,e._root=c,e._tail=m,e.__hash=void 0,e.__altered=!0,e):qe(a,s,u,c,m)}function Je(e,t,n){for(var o=[],a=0,s=0;sa&&(a=c.size),i(u)||(c=c.map(function(e){return W(e)})),o.push(c)}return a>e.size&&(e=e.setSize(a)),Me(e,t,o)}function Qe(e){return mn>e?0:e-1>>>dn<=mn&&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):et(r,o)}function rt(e,t){this._iter=e,this._useKeys=t,this.size=e.size}function ot(e){this._iter=e,this.size=e.size}function it(e){this._iter=e,this.size=e.size}function at(e){this._iter=e,this.size=e.size}function st(e){var t=Ot(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=xt,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===Rn){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===Sn?bn:Sn,n)},t}function ut(e,t,n){var r=Ot(e);return r.size=e.size,r.has=function(t){return e.has(t)},r.get=function(r,o){var i=e.get(r,gn);return i===gn?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(Rn,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 ct(e,t){var n=Ot(e);return n._iter=e,n.size=e.size,n.reverse=function(){return e},e.flip&&(n.flip=function(){var t=st(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=xt,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 lt(e,t,n,r){var o=Ot(e);return r&&(o.has=function(r){var o=e.get(r,gn);return o!==gn&&!!t.call(n,o,r,e)},o.get=function(r,o){var i=e.get(r,gn);return i!==gn&&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(Rn,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 pt(e,t,n){var r=pe().asMutable();return e.__iterate(function(o,i){r.update(t.call(n,o,i,e),0,function(e){return e+1})}),r.asImmutable()}function ht(e,t,n){var r=a(e),o=(c(e)?$e():pe()).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=It(e);return o.map(function(t){return wt(e,i(t))})}function ft(e,t,n,r){var o=e.size;if(void 0!==t&&(t=0|t),void 0!==n&&(n=0|n),g(t,n,o))return e;var i=y(t,o),a=_(n,o);if(i!==i||a!==a)return ft(e.toSeq().cacheResult(),t,n,r);var s,u=a-i;u===u&&(s=0>u?0:u);var c=Ot(e);return c.size=0===s?s:e.size&&s||void 0,!r&&V(e)&&s>=0&&(c.get=function(t,n){return t=m(this,t),t>=0&&s>t?e.get(t+i,n):n}),c.__iterateUncached=function(t,n){var o=this;if(0===s)return 0;if(n)return this.cacheResult().__iterate(t,n);var a=0,u=!0,c=0;return e.__iterate(function(e,n){return u&&(u=a++s)return E();var e=o.next();return r||t===Sn?e:t===bn?R(t,u-1,void 0,e):R(t,u-1,e.value[1],e)})},c}function dt(e,t,n){var r=Ot(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(Rn,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===Rn?e:R(r,u,c,e):(s=!1,E())})},r}function mt(e,t,n,r){var o=Ot(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(Rn,i),u=!0,c=0;return new S(function(){var e,i,l;do{if(e=s.next(),e.done)return r||o===Sn?e:o===bn?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===Rn?e:R(o,i,l,e)})},o}function vt(e,t){var r=a(e),o=[e].concat(t).map(function(e){return i(e)?r&&(e=n(e)):e=r?F(e):H(Array.isArray(e)?e:[e]),e}).filter(function(e){return 0!==e.size});if(0===o.length)return e;if(1===o.length){var u=o[0];if(u===e||r&&a(u)||s(e)&&s(u))return u}var c=new M(o);return r?c=c.toKeyedSeq():s(e)||(c=c.toSetSeq()),c=c.flatten(!0),c.size=o.reduce(function(e,t){if(void 0!==e){var n=t.size;if(void 0!==n)return e+n}},0),c}function gt(e,t,n){var r=Ot(e);return r.__iterateUncached=function(r,o){function a(e,c){var l=this;e.__iterate(function(e,o){return(!t||t>c)&&i(e)?a(e,c+1):r(e,n?o:s++,l)===!1&&(u=!0),!u},o)}var s=0,u=!1;return a(e,0),s},r.__iteratorUncached=function(r,o){var a=e.__iterator(r,o),s=[],u=0;return new S(function(){for(;a;){var e=a.next();if(e.done===!1){var c=e.value;if(r===Rn&&(c=c[1]),t&&!(s.length0}function Et(e,n,r){var o=Ot(e);return o.size=new M(r).map(function(e){return e.size}).min(),o.__iterate=function(e,t){for(var n,r=this.__iterator(Sn,t),o=0;!(n=r.next()).done&&e(n.value,o++,this)!==!1;);return o},o.__iteratorUncached=function(e,o){var i=r.map(function(e){return e=t(e),C(o?e.reverse():e)}),a=0,s=!1;return new S(function(){var t;return s||(t=i.map(function(e){return e.next()}),s=t.some(function(e){return e.done})),s?E():R(e,a++,n.apply(null,t.map(function(e){return e.value})))})},o}function wt(e,t){return V(e)?t:e.constructor(t)}function Tt(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function Ct(e){return le(e.size),d(e)}function It(e){return a(e)?n:s(e)?r:o}function Ot(e){return Object.create((a(e)?P:s(e)?N:D).prototype)}function xt(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):x.prototype.cacheResult.call(this)}function Pt(e,t){return e>t?1:t>e?-1:0}function Nt(e){var n=C(e);if(!n){if(!O(e))throw new TypeError("Expected iterable or array-like: "+e);n=C(t(e))}return n}function Dt(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);kt(o,a),o.size=a.length,o._name=t,o._keys=a,o._defaultValues=e}this._map=pe(i)},o=r.prototype=Object.create($n);return o.constructor=r,r}function Mt(e,t,n){var r=Object.create(Object.getPrototypeOf(e));return r._map=t,r.__ownerID=n,r}function At(e){return e._name||e.constructor.name||"Record"}function kt(e,t){try{t.forEach(Lt.bind(void 0,e))}catch(n){}}function Lt(e,t){Object.defineProperty(e,t,{get:function(){return this.get(t)},set:function(e){$(this.__ownerID,"Cannot set on an immutable record."),this.set(t,e)}})}function Vt(e){return null===e||void 0===e?Bt():jt(e)&&!c(e)?e:Bt().withMutations(function(t){var n=o(e);le(n.size),n.forEach(function(e){return t.add(e)})})}function jt(e){return!(!e||!e[Zn])}function Ft(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 Ht(e,t){var n=Object.create(er);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Bt(){return tr||(tr=Ht(Re()))}function Ut(e){return null===e||void 0===e?Wt():qt(e)?e:Wt().withMutations(function(t){var n=o(e);le(n.size),n.forEach(function(e){return t.add(e)})})}function qt(e){return jt(e)&&c(e)}function zt(e,t){var n=Object.create(nr);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Wt(){return rr||(rr=zt(tt()))}function Gt(e){return null===e||void 0===e?Xt():Yt(e)?e:Xt().unshiftAll(e)}function Yt(e){return!(!e||!e[or])}function Kt(e,t,n,r){var o=Object.create(ir);return o.size=e,o._head=t,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Xt(){return ar||(ar=Kt(0))}function Jt(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 Qt(e,t){return t}function $t(e,t){return[t,e]}function Zt(e){return function(){return!e.apply(this,arguments)}}function en(e){return function(){return-e.apply(this,arguments)}}function tn(e){return"string"==typeof e?JSON.stringify(e):e}function nn(){return f(arguments)}function rn(e,t){return t>e?1:e>t?-1:0}function on(e){if(e.size===1/0)return 0;var t=c(e),n=a(e),r=t?1:0,o=e.__iterate(n?t?function(e,t){r=31*r+sn(ie(e),ie(t))|0}:function(e,t){r=r+sn(ie(e),ie(t))|0}:t?function(e){r=31*r+ie(e)|0}:function(e){r=r+ie(e)|0});return an(o,r)}function an(e,t){return t=Nn(t,3432918353),t=Nn(t<<15|t>>>-15,461845907),t=Nn(t<<13|t>>>-13,5),t=(t+3864292196|0)^e,t=Nn(t^t>>>16,2246822507),t=Nn(t^t>>>13,3266489909),t=oe(t^t>>>16)}function sn(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}var un=Array.prototype.slice;e(n,t),e(r,t),e(o,t),t.isIterable=i,t.isKeyed=a,t.isIndexed=s,t.isAssociative=u,t.isOrdered=c,t.Keyed=n,t.Indexed=r,t.Set=o;var cn="@@__IMMUTABLE_ITERABLE__@@",ln="@@__IMMUTABLE_KEYED__@@",pn="@@__IMMUTABLE_INDEXED__@@",hn="@@__IMMUTABLE_ORDERED__@@",fn="delete",dn=5,mn=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[hn]=!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(L,N),L.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 In;e(Q,N),Q.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Q.prototype.get=function(e,t){return this.has(e)?this._value:t},Q.prototype.includes=function(e){return X(this._value,e)},Q.prototype.slice=function(e,t){var n=this.size;return g(e,t,n)?this:new Q(this._value,_(t,n)-y(e,n))},Q.prototype.reverse=function(){return this},Q.prototype.indexOf=function(e){return X(this._value,e)?0:-1},Q.prototype.lastIndexOf=function(e){return X(this._value,e)?this.size:-1},Q.prototype.__iterate=function(e,t){for(var n=0;n1?" by "+this._step:"")+" ]"},Z.prototype.get=function(e,t){return this.has(e)?this._start+m(this,e)*this._step:t},Z.prototype.includes=function(e){var t=(e-this._start)/this._step;return t>=0&&t=t?new Z(0,0):new Z(this.get(e,this._end),this.get(t,this._end),this._step))},Z.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},Z.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)})},Z.prototype.equals=function(e){return e instanceof Z?this._start===e._start&&this._end===e._end&&this._step===e._step:J(this,e)};var xn;e(ee,t),e(te,ee),e(ne,ee),e(re,ee),ee.Keyed=te,ee.Indexed=ne,ee.Set=re;var Pn,Nn="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},Dn=Object.isExtensible,Mn=function(){try{return Object.defineProperty({},"@",{}),!0}catch(e){return!1}}(),An="function"==typeof WeakMap;An&&(Pn=new WeakMap);var kn=0,Ln="__immutablehash__";"function"==typeof Symbol&&(Ln=Symbol(Ln));var Vn=16,jn=255,Fn=0,Hn={};e(pe,te),pe.prototype.toString=function(){return this.__toString("Map {","}")},pe.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},pe.prototype.set=function(e,t){return Ee(this,e,t)},pe.prototype.setIn=function(e,t){return this.updateIn(e,gn,function(){return t})},pe.prototype.remove=function(e){return Ee(this,e,gn)},pe.prototype.deleteIn=function(e){return this.updateIn(e,function(){return gn})},pe.prototype.update=function(e,t,n){return 1===arguments.length?e(this):this.updateIn([e],t,n)},pe.prototype.updateIn=function(e,t,n){n||(n=t,t=void 0);var r=Ae(this,Nt(e),t,n);return r===gn?void 0:r},pe.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Re()},pe.prototype.merge=function(){return Pe(this,void 0,arguments)},pe.prototype.mergeWith=function(e){var t=un.call(arguments,1);return Pe(this,e,t)},pe.prototype.mergeIn=function(e){var t=un.call(arguments,1);return this.updateIn(e,Re(),function(e){return"function"==typeof e.merge?e.merge.apply(e,t):t[t.length-1]})},pe.prototype.mergeDeep=function(){return Pe(this,Ne,arguments)},pe.prototype.mergeDeepWith=function(e){var t=un.call(arguments,1);return Pe(this,De(e),t)},pe.prototype.mergeDeepIn=function(e){var t=un.call(arguments,1);return this.updateIn(e,Re(),function(e){return"function"==typeof e.mergeDeep?e.mergeDeep.apply(e,t):t[t.length-1]})},pe.prototype.sort=function(e){return $e(bt(this,e))},pe.prototype.sortBy=function(e,t){return $e(bt(this,t,e))},pe.prototype.withMutations=function(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this},pe.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new h)},pe.prototype.asImmutable=function(){return this.__ensureOwner()},pe.prototype.wasAltered=function(){return this.__altered},pe.prototype.__iterator=function(e,t){return new ye(this,e,t)},pe.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},pe.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Se(this.size,this._root,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},pe.isMap=he;var Bn="@@__IMMUTABLE_MAP__@@",Un=pe.prototype;Un[Bn]=!0,Un[fn]=Un.remove,Un.removeIn=Un.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,n,r,o,i,a){for(var s=o===gn,u=this.entries,c=0,l=u.length;l>c&&!X(r,u[c][0]);c++);var h=l>c;if(h?u[c][1]===o:s)return this;if(p(a),(s||!h)&&p(i),!s||1!==u.length){if(!h&&!s&&u.length>=zn)return Ie(e,u,r,o);var d=e&&e===this.ownerID,m=d?u:f(u);return h?s?c===l-1?m.pop():m[c]=m.pop():m[c]=[r,o]:m.push([r,o]),d?(this.entries=m,this):new fe(e,m)}},de.prototype.get=function(e,t,n,r){void 0===t&&(t=ie(n));var o=1<<((0===e?t:t>>>e)&vn),i=this.bitmap;return 0===(i&o)?r:this.nodes[ke(i&o-1)].get(e+dn,t,n,r)},de.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=ie(r));var s=(0===t?n:n>>>t)&vn,u=1<=Wn)return xe(e,h,c,s,d);if(l&&!d&&2===h.length&&Te(h[1^p]))return h[1^p];if(l&&d&&1===h.length&&Te(d))return d;var m=e&&e===this.ownerID,v=l?d?c:c^u:c|u,g=l?d?Le(h,p,d,m):je(h,p,m):Ve(h,p,d,m);return m?(this.bitmap=v,this.nodes=g,this):new de(e,v,g)},me.prototype.get=function(e,t,n,r){void 0===t&&(t=ie(n));var o=(0===e?t:t>>>e)&vn,i=this.nodes[o];return i?i.get(e+dn,t,n,r):r},me.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=ie(r));var s=(0===t?n:n>>>t)&vn,u=o===gn,c=this.nodes,l=c[s];if(u&&!l)return this;var p=we(l,e,t+dn,n,r,o,i,a);if(p===l)return this;var h=this.count;if(l){if(!p&&(h--,Gn>h))return Oe(e,c,h,s)}else h++;var f=e&&e===this.ownerID,d=Le(c,s,p,f);return f?(this.count=h,this.nodes=d,this):new me(e,h,d)},ve.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},ve.prototype.update=function(e,t,n,r,o,i,a){void 0===n&&(n=ie(r));var s=o===gn;if(n!==this.keyHash)return s?this:(p(a),p(i),Ce(this,e,t,n,[r,o]));for(var u=this.entries,c=0,l=u.length;l>c&&!X(r,u[c][0]);c++);var h=l>c;if(h?u[c][1]===o:s)return this;if(p(a),(s||!h)&&p(i),s&&2===l)return new ge(e,this.keyHash,u[1^c]);var d=e&&e===this.ownerID,m=d?u:f(u);return h?s?c===l-1?m.pop():m[c]=m.pop():m[c]=[r,o]:m.push([r,o]),d?(this.entries=m,this):new ve(e,this.keyHash,m)},ge.prototype.get=function(e,t,n,r){return X(n,this.entry[0])?this.entry[1]:r},ge.prototype.update=function(e,t,n,r,o,i,a){var s=o===gn,u=X(r,this.entry[0]);return(u?o===this.entry[1]:s)?this:(p(a),s?void p(i):u?e&&e===this.ownerID?(this.entry[1]=o,this):new ge(e,this.keyHash,[r,o]):(p(i),Ce(this,e,t,ie(r),[r,o])))},fe.prototype.iterate=ve.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},de.prototype.iterate=me.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}},ge.prototype.iterate=function(e,t){return e(this.entry)},e(ye,S),ye.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 _e(e,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=o)return _e(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 _e(e,i.entry);t=this._stack=be(i,t)}continue}t=this._stack=this._stack.__prev}return E()};var qn,zn=mn/4,Wn=mn/2,Gn=mn/4;e(Fe,ne),Fe.of=function(){return this(arguments)},Fe.prototype.toString=function(){return this.__toString("List [","]")},Fe.prototype.get=function(e,t){if(e=m(this,e),e>=0&&e>>t&vn;if(r>=this.array.length)return new Be([],e);var o,i=0===r;if(t>0){var a=this.array[r];if(o=a&&a.removeBefore(e,t-dn,n),o===a&&i)return this}if(i&&!o)return this;var s=Ye(this,e);if(!i)for(var u=0;r>u;u++)s.array[u]=void 0;return o&&(s.array[r]=o),s},Be.prototype.removeAfter=function(e,t,n){if(n===(t?1<>>t&vn;if(r>=this.array.length)return this;var o;if(t>0){var i=this.array[r];if(o=i&&i.removeAfter(e,t-dn,n),o===i&&r===this.array.length-1)return this}var a=Ye(this,e);return a.array.splice(r+1),o&&(a.array[r]=o),a};var Xn,Jn={};e($e,pe),$e.of=function(){return this(arguments)},$e.prototype.toString=function(){return this.__toString("OrderedMap {","}")},$e.prototype.get=function(e,t){var n=this._map.get(e);return void 0!==n?this._list.get(n)[1]:t},$e.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):tt()},$e.prototype.set=function(e,t){return nt(this,e,t)},$e.prototype.remove=function(e){return nt(this,e,gn)},$e.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},$e.prototype.__iterate=function(e,t){var n=this;return this._list.__iterate(function(t){return t&&e(t[1],t[0],n)},t)},$e.prototype.__iterator=function(e,t){return this._list.fromEntrySeq().__iterator(e,t)},$e.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map.__ensureOwner(e),n=this._list.__ensureOwner(e);return e?et(t,n,e,this.__hash):(this.__ownerID=e,this._map=t,this._list=n,this)},$e.isOrderedMap=Ze,$e.prototype[hn]=!0,$e.prototype[fn]=$e.prototype.remove;var Qn;e(rt,P),rt.prototype.get=function(e,t){return this._iter.get(e,t)},rt.prototype.has=function(e){return this._iter.has(e)},rt.prototype.valueSeq=function(){return this._iter.valueSeq()},rt.prototype.reverse=function(){var e=this,t=ct(this,!0);return this._useKeys||(t.valueSeq=function(){return e._iter.toSeq().reverse()}),t},rt.prototype.map=function(e,t){var n=this,r=ut(this,e,t);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(e,t)}),r},rt.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?Ct(this):0,function(o){return e(o,t?--n:n++,r)}),t)},rt.prototype.__iterator=function(e,t){if(this._useKeys)return this._iter.__iterator(e,t);var n=this._iter.__iterator(Sn,t),r=t?Ct(this):0;return new S(function(){var o=n.next();return o.done?o:R(e,t?--r:r++,o.value,o)})},rt.prototype[hn]=!0,e(ot,N),ot.prototype.includes=function(e){return this._iter.includes(e)},ot.prototype.__iterate=function(e,t){var n=this,r=0;return this._iter.__iterate(function(t){return e(t,r++,n)},t)},ot.prototype.__iterator=function(e,t){var n=this._iter.__iterator(Sn,t),r=0;return new S(function(){var t=n.next();return t.done?t:R(e,r++,t.value,t)})},e(it,D),it.prototype.has=function(e){return this._iter.includes(e)},it.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){return e(t,t,n)},t)},it.prototype.__iterator=function(e,t){var n=this._iter.__iterator(Sn,t);return new S(function(){var t=n.next();return t.done?t:R(e,t.value,t.value,t)})},e(at,P),at.prototype.entrySeq=function(){return this._iter.toSeq()},at.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){if(t){Tt(t);var r=i(t);return e(r?t.get(1):t[1],r?t.get(0):t[0],n)}},t)},at.prototype.__iterator=function(e,t){var n=this._iter.__iterator(Sn,t);return new S(function(){for(;;){var t=n.next();if(t.done)return t;var r=t.value;if(r){Tt(r);var o=i(r);return R(e,o?r.get(0):r[0],o?r.get(1):r[1],t)}}})},ot.prototype.cacheResult=rt.prototype.cacheResult=it.prototype.cacheResult=at.prototype.cacheResult=xt,e(Dt,te),Dt.prototype.toString=function(){return this.__toString(At(this)+" {","}")},Dt.prototype.has=function(e){return this._defaultValues.hasOwnProperty(e)},Dt.prototype.get=function(e,t){if(!this.has(e))return t;var n=this._defaultValues[e];return this._map?this._map.get(e,n):n},Dt.prototype.clear=function(){if(this.__ownerID)return this._map&&this._map.clear(),this;var e=this.constructor;return e._empty||(e._empty=Mt(this,Re()))},Dt.prototype.set=function(e,t){if(!this.has(e))throw new Error('Cannot set unknown key "'+e+'" on '+At(this));var n=this._map&&this._map.set(e,t);return this.__ownerID||n===this._map?this:Mt(this,n)},Dt.prototype.remove=function(e){if(!this.has(e))return this;var t=this._map&&this._map.remove(e);return this.__ownerID||t===this._map?this:Mt(this,t)},Dt.prototype.wasAltered=function(){return this._map.wasAltered()},Dt.prototype.__iterator=function(e,t){var r=this;return n(this._defaultValues).map(function(e,t){return r.get(t)}).__iterator(e,t)},Dt.prototype.__iterate=function(e,t){var r=this;return n(this._defaultValues).map(function(e,t){return r.get(t)}).__iterate(e,t)},Dt.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map&&this._map.__ensureOwner(e);return e?Mt(this,t,e):(this.__ownerID=e,this._map=t,this)};var $n=Dt.prototype;$n[fn]=$n.remove,$n.deleteIn=$n.removeIn=Un.removeIn,$n.merge=Un.merge,$n.mergeWith=Un.mergeWith,$n.mergeIn=Un.mergeIn,$n.mergeDeep=Un.mergeDeep,$n.mergeDeepWith=Un.mergeDeepWith,$n.mergeDeepIn=Un.mergeDeepIn,$n.setIn=Un.setIn,$n.update=Un.update,$n.updateIn=Un.updateIn,$n.withMutations=Un.withMutations,$n.asMutable=Un.asMutable,$n.asImmutable=Un.asImmutable,e(Vt,re),Vt.of=function(){return this(arguments)},Vt.fromKeys=function(e){return this(n(e).keySeq())},Vt.prototype.toString=function(){return this.__toString("Set {","}")},Vt.prototype.has=function(e){return this._map.has(e)},Vt.prototype.add=function(e){return Ft(this,this._map.set(e,!0))},Vt.prototype.remove=function(e){return Ft(this,this._map.remove(e))},Vt.prototype.clear=function(){return Ft(this,this._map.clear())},Vt.prototype.union=function(){var e=un.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;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):Kt(e,t)},Gt.prototype.pushAll=function(e){if(e=r(e),0===e.size)return this;le(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):Kt(t,n)},Gt.prototype.pop=function(){return this.slice(1)},Gt.prototype.unshift=function(){return this.push.apply(this,arguments)},Gt.prototype.unshiftAll=function(e){return this.pushAll(e)},Gt.prototype.shift=function(){return this.pop.apply(this,arguments)},Gt.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):Xt()},Gt.prototype.slice=function(e,t){if(g(e,t,this.size))return this;var n=y(e,this.size),r=_(t,this.size);if(r!==this.size)return ne.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):Kt(o,i)},Gt.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Kt(this.size,this._head,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},Gt.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},Gt.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()})},Gt.isStack=Yt;var or="@@__IMMUTABLE_STACK__@@",ir=Gt.prototype;ir[or]=!0,ir.withMutations=Un.withMutations,ir.asMutable=Un.asMutable,ir.asImmutable=Un.asImmutable,ir.wasAltered=Un.wasAltered;var ar;t.Iterator=S,Jt(t,{toArray:function(){le(this.size);var e=new Array(this.size||0);return this.valueSeq().__iterate(function(t,n){e[n]=t}),e},toIndexedSeq:function(){return new ot(this)},toJS:function(){return this.toSeq().map(function(e){return e&&"function"==typeof e.toJS?e.toJS():e}).__toJS()},toJSON:function(){return this.toSeq().map(function(e){return e&&"function"==typeof e.toJSON?e.toJSON():e}).__toJS()},toKeyedSeq:function(){return new rt(this,!0)},toMap:function(){return pe(this.toKeyedSeq())},toObject:function(){le(this.size);var e={};return this.__iterate(function(t,n){e[n]=t}),e},toOrderedMap:function(){return $e(this.toKeyedSeq())},toOrderedSet:function(){return Ut(a(this)?this.valueSeq():this)},toSet:function(){return Vt(a(this)?this.valueSeq():this)},toSetSeq:function(){return new it(this)},toSeq:function(){return s(this)?this.toIndexedSeq():a(this)?this.toKeyedSeq():this.toSetSeq()},toStack:function(){return Gt(a(this)?this.valueSeq():this)},toList:function(){return Fe(a(this)?this.valueSeq():this)},toString:function(){return"[Iterable]"},__toString:function(e,t){return 0===this.size?e+t:e+" "+this.toSeq().map(this.__toStringMapper).join(", ")+" "+t},concat:function(){var e=un.call(arguments,0);return wt(this,vt(this,e))},includes:function(e){return this.some(function(t){return X(t,e)})},entries:function(){return this.__iterator(Rn)},every:function(e,t){le(this.size);var n=!0;return this.__iterate(function(r,o,i){return e.call(t,r,o,i)?void 0:(n=!1,!1)}),n},filter:function(e,t){return wt(this,lt(this,e,t,!0))},find:function(e,t,n){var r=this.findEntry(e,t);return r?r[1]:n},findEntry:function(e,t){var n;return this.__iterate(function(r,o,i){return e.call(t,r,o,i)?(n=[o,r],!1):void 0}),n},findLastEntry:function(e,t){return this.toSeq().reverse().findEntry(e,t)},forEach:function(e,t){return le(this.size),this.__iterate(t?e.bind(t):e)},join:function(e){le(this.size),e=void 0!==e?""+e:",";var t="",n=!0;return this.__iterate(function(r){n?n=!1:t+=e,t+=null!==r&&void 0!==r?r.toString():""}),t},keys:function(){return this.__iterator(bn)},map:function(e,t){return wt(this,ut(this,e,t))},reduce:function(e,t,n){le(this.size);var r,o;return arguments.length<2?o=!0:r=t,this.__iterate(function(t,i,a){o?(o=!1,r=t):r=e.call(n,r,t,i,a)}),r},reduceRight:function(e,t,n){var r=this.toKeyedSeq().reverse();return r.reduce.apply(r,arguments)},reverse:function(){return wt(this,ct(this,!0))},slice:function(e,t){return wt(this,ft(this,e,t,!0))},some:function(e,t){return!this.every(Zt(e),t)},sort:function(e){return wt(this,bt(this,e))},values:function(){return this.__iterator(Sn)},butLast:function(){return this.slice(0,-1)},isEmpty:function(){return void 0!==this.size?0===this.size:!this.some(function(){return!0})},count:function(e,t){return d(e?this.toSeq().filter(e,t):this)},countBy:function(e,t){return pt(this,e,t)},equals:function(e){return J(this,e)},entrySeq:function(){var e=this;if(e._cache)return new M(e._cache);var t=e.toSeq().map($t).toIndexedSeq();return t.fromEntrySeq=function(){return e.toSeq()},t},filterNot:function(e,t){return this.filter(Zt(e),t)},findLast:function(e,t,n){return this.toKeyedSeq().reverse().find(e,t,n)},first:function(){return this.find(v)},flatMap:function(e,t){return wt(this,yt(this,e,t))},flatten:function(e){return wt(this,gt(this,e,!0))},fromEntrySeq:function(){return new at(this)},get:function(e,t){return this.find(function(t,n){return X(n,e)},void 0,t)},getIn:function(e,t){for(var n,r=this,o=Nt(e);!(n=o.next()).done;){var i=n.value;if(r=r&&r.get?r.get(i,gn):gn,r===gn)return t}return r},groupBy:function(e,t){return ht(this,e,t)},has:function(e){return this.get(e,gn)!==gn},hasIn:function(e){return this.getIn(e,gn)!==gn},isSubset:function(e){return e="function"==typeof e.includes?e:t(e),this.every(function(t){return e.includes(t)})},isSuperset:function(e){return e="function"==typeof e.isSubset?e:t(e),e.isSubset(this)},keySeq:function(){return this.toSeq().map(Qt).toIndexedSeq()},last:function(){return this.toSeq().reverse().first()},max:function(e){return St(this,e)},maxBy:function(e,t){return St(this,t,e)},min:function(e){return St(this,e?en(e):rn)},minBy:function(e,t){return St(this,t?en(t):rn,e)},rest:function(){return this.slice(1)},skip:function(e){return this.slice(Math.max(0,e))},skipLast:function(e){return wt(this,this.toSeq().reverse().skip(e).reverse())},skipWhile:function(e,t){return wt(this,mt(this,e,t,!0))},skipUntil:function(e,t){return this.skipWhile(Zt(e),t)},sortBy:function(e,t){return wt(this,bt(this,t,e))},take:function(e){return this.slice(0,Math.max(0,e))},takeLast:function(e){return wt(this,this.toSeq().reverse().take(e).reverse())},takeWhile:function(e,t){return wt(this,dt(this,e,t))},takeUntil:function(e,t){return this.takeWhile(Zt(e),t)},valueSeq:function(){return this.toIndexedSeq()},hashCode:function(){return this.__hash||(this.__hash=on(this))}});var sr=t.prototype;sr[cn]=!0,sr[Tn]=sr.values,sr.__toJS=sr.toArray,sr.__toStringMapper=tn,sr.inspect=sr.toSource=function(){return this.toString()},sr.chain=sr.flatMap,sr.contains=sr.includes,function(){try{Object.defineProperty(sr,"length",{get:function(){if(!t.noLengthWarning){var e;try{throw new Error}catch(n){e=n.stack}if(-1===e.indexOf("_wrapObject"))return console&&console.warn&&console.warn("iterable.length has been deprecated, use iterable.size or iterable.count(). This warning will become a silent error in a future version. "+e),this.size}}})}catch(e){}}(),Jt(n,{flip:function(){return wt(this,st(this))},findKey:function(e,t){var n=this.findEntry(e,t);return n&&n[0]},findLastKey:function(e,t){return this.toSeq().reverse().findKey(e,t)},keyOf:function(e){return this.findKey(function(t){return X(t,e)})},lastKeyOf:function(e){return this.findLastKey(function(t){return X(t,e)})},mapEntries:function(e,t){var n=this,r=0;return wt(this,this.toSeq().map(function(o,i){return e.call(t,[i,o],r++,n)}).fromEntrySeq())},mapKeys:function(e,t){var n=this;return wt(this,this.toSeq().flip().map(function(r,o){return e.call(t,r,o,n)}).flip())}});var ur=n.prototype;ur[ln]=!0,ur[Tn]=sr.entries,ur.__toJS=sr.toObject,ur.__toStringMapper=function(e,t){return JSON.stringify(t)+": "+tn(e)},Jt(r,{toKeyedSeq:function(){return new rt(this,!1)},filter:function(e,t){return wt(this,lt(this,e,t,!1))},findIndex:function(e,t){var n=this.findEntry(e,t);return n?n[0]:-1},indexOf:function(e){var t=this.toKeyedSeq().keyOf(e);return void 0===t?-1:t},lastIndexOf:function(e){var t=this.toKeyedSeq().reverse().keyOf(e);return void 0===t?-1:t},reverse:function(){return wt(this,ct(this,!1))},slice:function(e,t){return wt(this,ft(this,e,t,!1))},splice:function(e,t){var n=arguments.length;if(t=Math.max(0|t,0),0===n||2===n&&!t)return this;e=y(e,0>e?this.count():this.size);var r=this.slice(0,e);return wt(this,1===n?r:r.concat(f(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 wt(this,gt(this,e,!1))},get:function(e,t){return e=m(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=m(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)}}),I=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),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?(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 x,"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:x,ValueXY:P,decay:F,timing:j,spring:V,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){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:x.bold},"(",S.get(this.props.warning),")"," ")),l.createElement(d,i({style:x.warningBox,ref:function(e){t.container=e}},this.panGesture.panHandlers),l.createElement(f,{onPress:this.props.onOpened},l.createElement(h,{style:x.warningText,numberOfLines:2,ref:function(e){t.text=e}},e,this.props.warning)),l.createElement(d,{ref:function(e){t.closeButton=e},style:x.closeButton},l.createElement(f,{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(f,{activeOpacity:.9,onPress:this.props.onClose,style:x.yellowBox},l.createElement(h,{style:x.yellowBoxText},e,this.props.warning),l.createElement(d,{style:x.yellowBoxButtons},l.createElement(f,{onPress:this.props.onDismissed,style:x.yellowBoxButton},l.createElement(h,{style:x.yellowBoxButtonText},"Dismiss")),l.createElement(f,{onPress:this.props.onIgnored,style:x.yellowBoxButton},l.createElement(h,{style:x.yellowBoxButtonText},"Ignore"))))}}),I=!0,O=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(I,"There can only be one WarningBox"),I=!1,w.addListener("count",this._onWarningCount)},componentWillUnmount:function(){w.removeAllListeners(),I=!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: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=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,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[V.ancestorInfoContextKey]=V.updatedAncestorInfo(null,a,null)}var s=O.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(O.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"),I=t("ReactPerf"),O=t("ReactReconciler"),x=t("ReactUpdateQueue"),P=t("ReactUpdates"),N=t("emptyObject"),D=t("containsNode"),M=t("instantiateReactComponent"),A=t("invariant"),k=t("setInnerHTML"),L=t("shouldUpdateReactComponent"),V=t("validateDOMNesting"),j=t("warning"),F=w.SEPARATOR,H=_.ID_ATTRIBUTE_NAME,B={},U=1,q=9,z=11,W={},G={};if(__DEV__)var Y={};var K=[],X=null,J=function(){};J.prototype.render=function(){return this.props};var Q={_instancesByReactRootID:W,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 W[n]=e,n},_renderNewRootComponent:function(e,t,n,r){j(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.":""),j(!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=W[a(n)];if(s){var u=s._currentElement,c=u.props;if(L(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)){j(!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()),G[t]=e,t},unmountComponentAtNode:function(e){j(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=W[t];return n?(P.batchedUpdates(y,n,e),delete W[t],delete G[t],__DEV__&&delete Y[t],!0):!1},findReactContainerForID:function(e){var t=w.getReactRootIDFromNodeID(e),n=G[t];if(__DEV__){var r=Y[t];if(r&&r.parentNode!==n){j(u(r)===t,"ReactMount: Root element ID differed from reactRootID.");var o=n.firstChild;o&&t===u(o)?Y[t]=o:j(!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__&&j(!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};I.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", -:"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(" > "),I=!!i+"|"+e+"|"+l+"|"+C;if(g[I])return;if(g[I]=!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,C,O)}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 + @@ -230,6 +231,10 @@ + + + + @@ -296,7 +301,6 @@ - ..\References\Facebook.CSSLayout.dll diff --git a/ReactWindows/ReactNative/Shell/MainReactPackage.cs b/ReactWindows/ReactNative/Shell/MainReactPackage.cs index 504d74fe43f..6c24388d6ad 100644 --- a/ReactWindows/ReactNative/Shell/MainReactPackage.cs +++ b/ReactWindows/ReactNative/Shell/MainReactPackage.cs @@ -4,6 +4,7 @@ using ReactNative.Modules.Toast; using ReactNative.Modules.WebSocket; using ReactNative.UIManager; +using ReactNative.Views.Image; using ReactNative.Views.Scroll; using ReactNative.Views.Switch; using ReactNative.Views.Text; @@ -48,15 +49,15 @@ public IReadOnlyList CreateViewManagers( { //new ReactDrawerLayoutManager(), //new ReactHorizontalScrollViewManager(), - //new ReactImageManager(), - //new ReactProgressBarViewManager(), + new ReactImageManager(), + new ReactVirtualImageManager(), new ReactRawTextManager(), //new RecyclerViewBackedScrollViewManager(), new ReactScrollViewManager(), new ReactSwitchManager(), new ReactTextInputManager(), new ReactTextViewManager(), - //new ReactToolbarManager(), + new ReactMultilineTextInputManager(), new ReactViewManager(), //new ReactViewPagerManager(), //new ReactTextInlineImageViewManager(), diff --git a/ReactWindows/ReactNative/UIManager/BorderExtensions.cs b/ReactWindows/ReactNative/UIManager/BorderExtensions.cs new file mode 100644 index 00000000000..6b5a65c3f82 --- /dev/null +++ b/ReactWindows/ReactNative/UIManager/BorderExtensions.cs @@ -0,0 +1,34 @@ +using Facebook.CSSLayout; +using Windows.UI.Xaml; +using Windows.UI.Xaml.Controls; + +namespace ReactNative.UIManager +{ + static class BorderExtensions + { + public static void SetBorderWidth(this Border border, CSSSpacingType kind, double width) + { + var thickness = border.BorderThickness; + switch (kind) + { + case CSSSpacingType.Left: + thickness.Left = width; + break; + case CSSSpacingType.Top: + thickness.Top = width; + break; + case CSSSpacingType.Right: + thickness.Right = width; + break; + case CSSSpacingType.Bottom: + thickness.Bottom = width; + break; + case CSSSpacingType.All: + thickness = new Thickness(width); + break; + } + + border.BorderThickness = thickness; + } + } +} diff --git a/ReactWindows/ReactNative/UIManager/BorderedContentControl.cs b/ReactWindows/ReactNative/UIManager/BorderedContentControl.cs index 9c0f5f51500..fe9fabadaeb 100644 --- a/ReactWindows/ReactNative/UIManager/BorderedContentControl.cs +++ b/ReactWindows/ReactNative/UIManager/BorderedContentControl.cs @@ -103,26 +103,7 @@ public void SetBorderWidth(CSSSpacingType kind, double width) if (_customBorder != null) { - var thickness = _customBorder.BorderThickness; - switch (kind) - { - case CSSSpacingType.Left: - thickness.Left = width; - break; - case CSSSpacingType.Top: - thickness.Top = width; - break; - case CSSSpacingType.Right: - thickness.Right = width; - break; - case CSSSpacingType.Bottom: - thickness.Bottom = width; - break; - case CSSSpacingType.All: - thickness = new Thickness(width); - break; - } - _customBorder.BorderThickness = thickness; + _customBorder.SetBorderWidth(kind, width); } else { @@ -241,7 +222,7 @@ private void EnsureBorder() { return; } - + var inner = Content; base.Content = null; _customBorder = new Border(); diff --git a/ReactWindows/ReactNative/UIManager/LayoutShadowNode.cs b/ReactWindows/ReactNative/UIManager/LayoutShadowNode.cs index c7571af8386..cdd631fcd94 100644 --- a/ReactWindows/ReactNative/UIManager/LayoutShadowNode.cs +++ b/ReactWindows/ReactNative/UIManager/LayoutShadowNode.cs @@ -227,7 +227,7 @@ private static T Parse(string value, string paramName) e => e)); var result = default(object); - if (!lookup.TryGetValue(value.ToLowerInvariant(), out result)) + if (!lookup.TryGetValue(value.ToLowerInvariant().Replace("-", ""), out result)) { throw new ArgumentOutOfRangeException( paramName, diff --git a/ReactWindows/ReactNative/UIManager/ViewProperties.cs b/ReactWindows/ReactNative/UIManager/ViewProperties.cs index b35fcb3b184..3512e5a6ce8 100644 --- a/ReactWindows/ReactNative/UIManager/ViewProperties.cs +++ b/ReactWindows/ReactNative/UIManager/ViewProperties.cs @@ -62,6 +62,7 @@ public static class ViewProperties public const string BorderWidth = "borderWidth"; public const string BorderLeftWidth = "borderLeftWidth"; + public const string BorderColor = "borderColor"; public const string BorderTopWidth = "borderTopWidth"; public const string BorderRightWidth = "borderRightWidth"; public const string BorderBottomWidth = "borderBottomWidth"; diff --git a/ReactWindows/ReactNative/Views/Image/ReactImageLoadEvent.cs b/ReactWindows/ReactNative/Views/Image/ReactImageLoadEvent.cs new file mode 100644 index 00000000000..f43cd046bec --- /dev/null +++ b/ReactWindows/ReactNative/Views/Image/ReactImageLoadEvent.cs @@ -0,0 +1,80 @@ +using ReactNative.UIManager.Events; +using System; +using System.Globalization; + +namespace ReactNative.Views.Image +{ + /// + /// Event class for all image loading related events. + /// + public class ReactImageLoadEvent : Event + { + public const int OnError = 1; + public const int OnLoad = 2; + public const int OnLoadEnd = 3; + public const int OnLoadStart = 4; + public const int OnProgress = 5; + + private readonly int _eventType; + + /// + /// Instantiates a . + /// + /// The view identifier. + /// The event identifier. + public ReactImageLoadEvent(int viewId, int eventType) + : base(viewId, TimeSpan.FromTicks(Environment.TickCount)) + { + _eventType = eventType; + } + + /// + /// The name of the event. + /// + public override string EventName + { + get + { + switch (_eventType) + { + case OnError: + return "topError"; + case OnLoad: + return "topLoad"; + case OnLoadEnd: + return "topLoadEnd"; + case OnLoadStart: + return "topLoadStart"; + case OnProgress: + return "topProgress"; + default: + throw new InvalidOperationException( + string.Format( + CultureInfo.InvariantCulture, + "Invalid image event '{0}'.", + _eventType)); + } + } + } + + /// + /// The coalescing key for the event. + /// + public override short CoalescingKey + { + get + { + return (short)_eventType; + } + } + + /// + /// Dispatches the event. + /// + /// The event emitter. + public override void Dispatch(RCTEventEmitter eventEmitter) + { + eventEmitter.receiveEvent(ViewTag, EventName, null); + } + } +} \ No newline at end of file diff --git a/ReactWindows/ReactNative/Views/Image/ReactImageManager.cs b/ReactWindows/ReactNative/Views/Image/ReactImageManager.cs new file mode 100644 index 00000000000..5ef973f603d --- /dev/null +++ b/ReactWindows/ReactNative/Views/Image/ReactImageManager.cs @@ -0,0 +1,199 @@ +using ReactNative.UIManager; +using ReactNative.UIManager.Events; +using System; +using System.Collections.Generic; +using Windows.UI.Xaml; +using Windows.UI.Xaml.Controls; +using Windows.UI.Xaml.Media; +using Windows.UI.Xaml.Media.Imaging; + +namespace ReactNative.Views.Image +{ + /// + /// The view manager responsible for rendering native . + /// TODO: Implememt tintColor property and fadeDuration animation support. + /// + public class ReactImageManager : SimpleViewManager + { + private const string ReactClass = "RCTImageView"; + private const string PROP_SOURCE = "source"; + private const string PROP_URI = "uri"; + + /// + /// The view manager name. + /// + public override string Name + { + get + { + return ReactClass; + } + } + + /// + /// The view manager event constants. + /// + public override IReadOnlyDictionary ExportedCustomDirectEventTypeConstants + { + get + { + return new Dictionary + { + { "topLoadEnd", new Dictionary { { "registrationName", "onLoadEnd" } } }, + { "topLoadStart", new Dictionary { { "registrationName", "onLoadStart" } } }, + }; + } + } + + /// + /// Sets the source for the background of a . + /// + /// The text input box control. + /// The text alignment. + [ReactProperty(PROP_SOURCE)] + public void SetSource(Border view, Dictionary sourceMap) + { + var imageSrcURL = default(Uri); + var source = default(string); + + if (sourceMap != null && sourceMap.TryGetValue(PROP_URI, out source)) + { + if (!Uri.TryCreate(source, UriKind.Absolute, out imageSrcURL)) + { + imageSrcURL = new Uri("ms-appx://" + source); + } + + if (imageSrcURL != null) + { + var backgroundImage = new ImageBrush() + { + ImageSource = new BitmapImage(imageSrcURL) + }; + + view.Background = backgroundImage; + } + } + } + + /// + /// The border radius of the . + /// + /// The view panel. + /// The border radius value. + [ReactProperty("borderRadius")] + public void SetBorderRadius(Border view, double radius) + { + view.CornerRadius = new CornerRadius(radius); + } + + /// + /// Set the border color of the . + /// + /// The view panel. + /// The property index. + /// The color hex code. + [ReactProperty("borderColor", CustomType = "Color")] + public void SetBorderColor(Border view, uint? color) + { + // TODO: what if color is null? + if (color.HasValue) + { + var brush = new SolidColorBrush(ColorHelpers.Parse(color.Value)); + view.BorderBrush = brush; + } + } + + /// + /// Sets the border thickness of the . + /// + /// The view panel. + /// The property index. + /// The border width in pixels. + [ReactPropertyGroup( + ViewProperties.BorderWidth, + ViewProperties.BorderLeftWidth, + ViewProperties.BorderRightWidth, + ViewProperties.BorderTopWidth, + ViewProperties.BorderBottomWidth, + DefaultDouble = double.NaN)] + public void SetBorderWidth(Border view, int index, double width) + { + view.SetBorderWidth(ViewProperties.BorderSpacingTypes[index], width); + } + + /// + /// Creates the image view instance. + /// + /// The react context. + /// The image view instance. + protected override Border CreateViewInstanceCore(ThemedReactContext reactContext) + { + return new Border(); + } + + /// + /// Installing the textchanged event emitter on the Control. + /// + /// The react context. + /// The view instance. + protected override void AddEventEmitters(ThemedReactContext reactContext, Border view) + { + view.Loading += OnInterceptImageLoadingEvent; + view.Loaded += OnInterceptImageLoadedEvent; + } + + /// + /// Called when the is detached from view hierarchy and allows for + /// additional cleanup by the + /// subclass. Unregister all event handlers for the . + /// + /// The react context. + /// The . + protected override void OnDropViewInstance(ThemedReactContext reactContext, Border view) + { + view.Loaded -= OnInterceptImageLoadedEvent; + view.Loading -= OnInterceptImageLoadingEvent; + } + + /// + /// The event interceptor for image load start events for the native control. + /// + /// The source sender view. + /// The received event arguments. + protected void OnInterceptImageLoadingEvent(FrameworkElement sender, object e) + { + var border = (Border)sender; + var imageBrush = GetImageBrush(border); + if (imageBrush != null) + { + var bitmapImage = imageBrush.ImageSource as BitmapImage; + bitmapImage.DecodePixelHeight = (int)sender.Height; + bitmapImage.DecodePixelWidth = (int)sender.Width; + imageBrush.Stretch = Stretch.Fill; + } + + GetEventDispatcher(border).DispatchEvent(new ReactImageLoadEvent(border.GetTag(), ReactImageLoadEvent.OnLoadStart)); + } + + /// + /// The event interceptor for image load completed events for the native control. + /// + /// The source sender view. + /// The received event arguments. + protected void OnInterceptImageLoadedEvent(object sender, RoutedEventArgs e) + { + var senderImage = (Border)sender; + GetEventDispatcher(senderImage).DispatchEvent(new ReactImageLoadEvent(senderImage.GetTag(), ReactImageLoadEvent.OnLoadEnd)); + } + + private ImageBrush GetImageBrush(Border border) + { + return border.Background as ImageBrush; + } + + private static EventDispatcher GetEventDispatcher(FrameworkElement image) + { + return image.GetReactContext().CatalystInstance.GetNativeModule().EventDispatcher; + } + } +} diff --git a/ReactWindows/ReactNative/Views/Image/ReactVirtualImageManager.cs b/ReactWindows/ReactNative/Views/Image/ReactVirtualImageManager.cs new file mode 100644 index 00000000000..e4883e54386 --- /dev/null +++ b/ReactWindows/ReactNative/Views/Image/ReactVirtualImageManager.cs @@ -0,0 +1,21 @@ +namespace ReactNative.Views.Image +{ + /// + /// A class for managing virtual images within a parent element. + /// + public class ReactVirtualImageManager : ReactImageManager + { + private const string ReactClass = "RCTVirtualImage"; + + /// + /// The name of the view manager. + /// + public override string Name + { + get + { + return ReactClass; + } + } + } +} diff --git a/ReactWindows/ReactNative/Views/TextInput/ReactMultilineTextInputManager.cs b/ReactWindows/ReactNative/Views/TextInput/ReactMultilineTextInputManager.cs new file mode 100644 index 00000000000..898810192b3 --- /dev/null +++ b/ReactWindows/ReactNative/Views/TextInput/ReactMultilineTextInputManager.cs @@ -0,0 +1,38 @@ +using ReactNative.UIManager; +using Windows.UI.Xaml; +using Windows.UI.Xaml.Controls; + +namespace ReactNative.Views.TextInput +{ + /// + /// Native component to support a multiline control. + /// + class ReactMultilineTextInputManager : ReactTextInputManager + { + private static readonly string ReactClass = "RCTTextView"; + private const string PROP_MULTILINE = "multiline"; + + /// + /// The name of the view manager. + /// + public override string Name + { + get + { + return ReactClass; + } + } + + /// + /// Determines if there should be multiple lines allowed for the . + /// + /// The text input box control. + /// To allow multiline. + [ReactProperty(PROP_MULTILINE)] + public void SetMultiline(TextBox view, bool multiline) + { + view.AcceptsReturn = multiline; + view.TextWrapping = TextWrapping.Wrap; + } + } +} diff --git a/ReactWindows/ReactNative/Views/TextInput/ReactTextBoxProperties.cs b/ReactWindows/ReactNative/Views/TextInput/ReactTextBoxProperties.cs index 47700e3e3f8..86156474f6f 100644 --- a/ReactWindows/ReactNative/Views/TextInput/ReactTextBoxProperties.cs +++ b/ReactWindows/ReactNative/Views/TextInput/ReactTextBoxProperties.cs @@ -1,7 +1,6 @@ -using System; +using Windows.UI; using Windows.UI.Text; using Windows.UI.Xaml; -using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Media; namespace ReactNative.Views.TextInput @@ -14,37 +13,42 @@ public class ReactTextBoxProperties private const int UNSET = -1; /// - /// Sets / Gets the padding thickness of a . + /// The padding thickness of a . /// public Thickness? Padding { get; set; } /// - /// Sets / Gets the of a . + /// The of a . /// public FontStyle? FontStyle { get; set; } /// - /// Sets / Gets the of a . + /// The of a . /// public FontWeight? FontWeight { get; set; } /// - /// Sets / Gets the font family of a . + /// The border color of a . + /// + public Color? BorderColor { get; set; } + + /// + /// The font family of a . /// public FontFamily FontFamily { get; set; } /// - /// Sets / Gets the font size of a . + /// SThe font size of a . /// public int FontSize { get; set; } = UNSET; /// - /// Sets / Gets the text value of a . + /// The text value of a . /// public string Text { get; set; } /// - /// Sets / Gets the line height of a . + /// The line height of a . /// public int LineHeight { get; set; } = UNSET; } diff --git a/ReactWindows/ReactNative/Views/TextInput/ReactTextChangedEvent.cs b/ReactWindows/ReactNative/Views/TextInput/ReactTextChangedEvent.cs index b74754f9e5d..e4c4756210e 100644 --- a/ReactWindows/ReactNative/Views/TextInput/ReactTextChangedEvent.cs +++ b/ReactWindows/ReactNative/Views/TextInput/ReactTextChangedEvent.cs @@ -1,10 +1,6 @@ using Newtonsoft.Json.Linq; using ReactNative.UIManager.Events; using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace ReactNative.Views.TextInput { @@ -13,34 +9,47 @@ namespace ReactNative.Views.TextInput /// class ReactTextChangedEvent : Event { - public static readonly String EVENT_NAME = "topChange"; - private String _Text; - private double _ContentWidth; - private double _ContentHeight; + private readonly string _text; + private readonly double _contextWidth; + private readonly double _contentHeight; - public ReactTextChangedEvent(int viewId, string text, double contentSizeWidth, - double contentSizeHeight) : base(viewId, TimeSpan.FromTicks(Environment.TickCount)) + public ReactTextChangedEvent(int viewId, string text, double contentWidth, double contentHeight) + : base(viewId, TimeSpan.FromTicks(Environment.TickCount)) { - _Text = text; - _ContentWidth = contentSizeWidth; - _ContentHeight = contentSizeHeight; + _text = text; + _contextWidth = contentWidth; + _contentHeight = contentHeight; } /// - /// Gets the name of the Event + /// The name of the event. /// public override string EventName { get { - return EVENT_NAME; + return "topChange"; + } + } + + /// + /// Text change events cannot be coalesced. + /// + /// + /// Return false if the event can never be coalesced. + /// + public override bool CanCoalesce + { + get + { + return false; } } ///

/// Push the event up to the event emitter. /// - /// The event emitter to dispatch the event to. + /// The event emitter. public override void Dispatch(RCTEventEmitter rctEventEmitter) { rctEventEmitter.receiveEvent(this.ViewTag, this.EventName, this.GetEventJavascriptProperties); @@ -52,11 +61,10 @@ private JObject GetEventJavascriptProperties { return new JObject() { - { "width", _ContentWidth }, - { "height", _ContentWidth }, - { "text", _Text }, - { "width", _ContentWidth }, - {"target", this.ViewTag } + { "width", _contextWidth }, + { "height", _contentHeight }, + { "text", _text }, + { "target", ViewTag } }; } } diff --git a/ReactWindows/ReactNative/Views/TextInput/ReactTextInputBlurEvent.cs b/ReactWindows/ReactNative/Views/TextInput/ReactTextInputBlurEvent.cs index 116495038bf..0bde7d55de6 100644 --- a/ReactWindows/ReactNative/Views/TextInput/ReactTextInputBlurEvent.cs +++ b/ReactWindows/ReactNative/Views/TextInput/ReactTextInputBlurEvent.cs @@ -1,21 +1,17 @@ using Newtonsoft.Json.Linq; using ReactNative.UIManager.Events; using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace ReactNative.Views.TextInput { /// - /// Event emitted by native view when the control gains focus. + /// Event emitted by native + /// view when the control gains focus. /// class ReactTextInputBlurEvent : Event { - public static readonly String EVENT_NAME = "topBlur"; - - public ReactTextInputBlurEvent(int viewId) : base(viewId, TimeSpan.FromTicks(Environment.TickCount)) + public ReactTextInputBlurEvent(int viewId) + : base(viewId, TimeSpan.FromTicks(Environment.TickCount)) { } @@ -26,28 +22,35 @@ public override string EventName { get { - return EVENT_NAME; + return "topBlur"; } } /// - /// Push the event up to the event emitter. + /// Disabling event coalescing. /// - /// The event emitter to dispatch the event to. - public override void Dispatch(RCTEventEmitter eventEmitter) - { - eventEmitter.receiveEvent(this.ViewTag, this.EventName, this.GetEventJavascriptProperties); - } - - private JObject GetEventJavascriptProperties + /// + /// Return false if the event can never be coalesced. + /// + public override bool CanCoalesce { get { - return new JObject() - { - {"target", this.ViewTag } - }; + return false; } } + /// + /// Dispatch this event to JavaScript using the given event emitter. + /// + /// The event emitter. + public override void Dispatch(RCTEventEmitter eventEmitter) + { + var eventData = new JObject + { + { "target", ViewTag }, + }; + + eventEmitter.receiveEvent(ViewTag, EventName, eventData); + } } } diff --git a/ReactWindows/ReactNative/Views/TextInput/ReactTextInputFocusEvent.cs b/ReactWindows/ReactNative/Views/TextInput/ReactTextInputFocusEvent.cs index d711091b160..e255389be02 100644 --- a/ReactWindows/ReactNative/Views/TextInput/ReactTextInputFocusEvent.cs +++ b/ReactWindows/ReactNative/Views/TextInput/ReactTextInputFocusEvent.cs @@ -1,18 +1,17 @@ using Newtonsoft.Json.Linq; using ReactNative.UIManager.Events; using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace ReactNative.Views.TextInput { + /// + /// Emits events to for focus changes to + /// . + /// class ReactTextInputFocusEvent : Event { - public static readonly String EVENT_NAME = "topFocus"; - - public ReactTextInputFocusEvent(int viewId) : base(viewId, TimeSpan.FromTicks(Environment.TickCount)) + public ReactTextInputFocusEvent(int viewId) + : base(viewId, TimeSpan.FromTicks(Environment.TickCount)) { } @@ -20,28 +19,36 @@ public override string EventName { get { - return EVENT_NAME; + return "topFocus"; } } /// - /// Push the on focus event up to the event emitter. + /// Disabling event coalescing. /// - /// The event emitter to dispatch the event to. - public override void Dispatch(RCTEventEmitter eventEmitter) + /// + /// Return false if the event can never be coalesced. + /// + public override bool CanCoalesce { - eventEmitter.receiveEvent(this.ViewTag, this.EventName, this.GetEventJavascriptProperties); + get + { + return false; + } } - private JObject GetEventJavascriptProperties + /// + /// Dispatch this event to JavaScript using the given event emitter. + /// + /// The event emitter. + public override void Dispatch(RCTEventEmitter eventEmitter) { - get + var eventData = new JObject() { - return new JObject() - { - {"target", this.ViewTag } - }; - } + { "target", ViewTag }, + }; + + eventEmitter.receiveEvent(ViewTag, EventName, eventData); } } } diff --git a/ReactWindows/ReactNative/Views/TextInput/ReactTextInputManager.cs b/ReactWindows/ReactNative/Views/TextInput/ReactTextInputManager.cs index 3b1c6228568..6fc0eec19f3 100644 --- a/ReactWindows/ReactNative/Views/TextInput/ReactTextInputManager.cs +++ b/ReactWindows/ReactNative/Views/TextInput/ReactTextInputManager.cs @@ -1,22 +1,11 @@ using Newtonsoft.Json.Linq; -using ReactNative.Bridge; using ReactNative.UIManager; using ReactNative.UIManager.Events; -using ReactNative.Views.View; using System; using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using Windows.UI.Xaml; -using Windows.UI.Xaml.Automation.Peers; -using Windows.UI.Xaml.Automation.Provider; using Windows.UI.Xaml.Controls; -using Windows.UI.Xaml.Documents; using Windows.UI.Xaml.Media; -using Windows.UI.Xaml.Media.Media3D; -using Windows.UI.Xaml.Shapes; namespace ReactNative.Views.TextInput { @@ -29,6 +18,7 @@ class ReactTextInputManager : BaseViewManager private const string PROP_ROTATION_X = "rotationX"; private const string PROP_PLACEHOLDER = "placeholder"; private const string PROP_TEXT_ALIGN = "textAlign"; + private const string PROP_VERITCAL_TEXT_ALIGN = "textAlignVertical"; private const string PROP_MAX_LENGTH = "maxLength"; private const string PROP_TEXT = "text"; private const string PROP_IS_EDITABLE = "editable"; @@ -47,35 +37,47 @@ public override IReadOnlyDictionary ExportedCustomBubblingEventT { return new Dictionary() { - { "topFocus", new Dictionary() { - { "phasedRegistrationNames", new Dictionary() + "topFocus", + new Dictionary() { - { "bubbled" , "onFocus" }, - { "captured" , "onFocusCapture" } + { + "phasedRegistrationNames", + new Dictionary() + { + { "bubbled" , "onFocus" }, + { "captured" , "onFocusCapture" } + } + } } - } - } }, - { "topEndEditing", new Dictionary() { - { "phasedRegistrationNames", new Dictionary() + "topEndEditing", + new Dictionary() { - { "bubbled" , "onEndEditing" }, - { "captured" , "onEndEditingCapture" } - } + { + "phasedRegistrationNames", + new Dictionary() + { + { "bubbled" , "onEndEditing" }, + { "captured" , "onEndEditingCapture" } + } + } } - } }, - { "topBlur", new Dictionary() { - { "phasedRegistrationNames", new Dictionary() + "topBlur", + new Dictionary() { - { "bubbled" , "onBlur" }, - { "captured" , "onBlurCapture" } + { + "phasedRegistrationNames", + new Dictionary() + { + { "bubbled" , "onBlur" }, + { "captured" , "onBlurCapture" } + } + } } - } - } }, }; } @@ -111,6 +113,35 @@ public void SetTextAlign(TextBox view, string alignment) } } + /// + /// Sets the text alignment property on the . + /// + /// The text input box control. + /// The text alignment. + /// + /// TODO: test this out. + /// + [ReactProperty(PROP_VERITCAL_TEXT_ALIGN)] + public void SetTextVerticalAlign(TextBox view, string alignment) + { + var textAlignment = default(VerticalAlignment); + if (Enum.TryParse(alignment, out textAlignment)) + { + view.VerticalContentAlignment = textAlignment; + } + } + + /// + /// Sets the editablity property on the . + /// + /// The text input box control. + /// The text alignment. + [ReactProperty(PROP_IS_EDITABLE)] + public void SetEditable(TextBox view, bool editable) + { + view.IsReadOnly = editable; + } + /// /// Sets the default text placeholder property on the . /// @@ -125,8 +156,11 @@ public void SetPlaceholder(TextBox view, string placeholder) /// /// Sets the foreground color property on the . /// - /// - [ReactProperty(ViewProperties.Color)] + /// The masked color value. + /// + /// TODO: test and get working. + /// + [ReactProperty(ViewProperties.Color, CustomType = "Color")] public void SetColor(TextBox view, uint? color) { if (color.HasValue) @@ -157,17 +191,6 @@ public void OnInterceptLostFocusEvent(object sender, RoutedEventArgs @event) GetEventDispatcher(senderTextInput).DispatchEvent(new ReactTextInputBlurEvent(senderTextInput.GetTag())); } - /// - /// The event interceptor for focus gained events for the native control. - /// - /// The source sender view. - /// The received event args - public void OnInterceptGotFocusEvent(object sender, RoutedEventArgs @event) - { - var senderTextInput = (TextBox)sender; - GetEventDispatcher(senderTextInput).DispatchEvent(new ReactTextInputFocusEvent(senderTextInput.GetTag())); - } - /// /// The event interceptor for text change events for the native control. /// @@ -189,7 +212,7 @@ public void OnInterceptTextChangeEvent(object sender, TextChangedEventArgs e) protected override void OnDropViewInstance(ThemedReactContext reactContext, TextBox view) { view.TextChanged -= this.OnInterceptTextChangeEvent; - view.GotFocus -= this.OnInterceptGotFocusEvent; + // TODO: Figure out how to get intercept focus to work this to work. view.LostFocus -= this.OnInterceptLostFocusEvent; } @@ -211,10 +234,20 @@ protected override TextBox CreateViewInstanceCore(ThemedReactContext reactContex protected override void AddEventEmitters(ThemedReactContext reactContext, TextBox view) { view.TextChanged += this.OnInterceptTextChangeEvent; - view.GotFocus += this.OnInterceptGotFocusEvent; + // TODO: Figure out how to get intercept focus to work this to work. view.LostFocus += this.OnInterceptLostFocusEvent; } + /// + /// Sets the border width for a . + /// + /// + [ReactProperty(ViewProperties.BorderWidth)] + public void SetBorderWidth(TextBox root, int border) + { + root.BorderThickness = new Thickness(border); + } + protected override void UpdateExtraData(TextBox root, object extraData) { var reactTextBoxStyle = (ReactTextBoxProperties)extraData; @@ -251,7 +284,7 @@ protected override void ReceiveCommand(TextBox view, int commandId, JArray args) private EventDispatcher GetEventDispatcher(TextBox textBox) { - return textBox?.GetReactContext().CatalystInstance.GetNativeModule().EventDispatcher; + return textBox?.GetReactContext().GetNativeModule().EventDispatcher; } } } diff --git a/ReactWindows/ReactNative/Views/TextInput/ReactTextInputShadowNode.cs b/ReactWindows/ReactNative/Views/TextInput/ReactTextInputShadowNode.cs index f14ab36bd25..0e932b550d9 100644 --- a/ReactWindows/ReactNative/Views/TextInput/ReactTextInputShadowNode.cs +++ b/ReactWindows/ReactNative/Views/TextInput/ReactTextInputShadowNode.cs @@ -11,7 +11,8 @@ namespace ReactNative.Views.TextInput { /// - /// This extension of is responsible for measuring the layout for Native . + /// This extension of is responsible for + /// measuring the layout for Native . /// public class ReactTextInputShadowNode : LayoutShadowNode { @@ -139,7 +140,21 @@ public void SetText(string text) _textBoxStyle.Text = text; MarkUpdated(); } - + + /// + /// Sets the the backgrund border color for a . + /// + /// + [ReactProperty(ViewProperties.BorderColor)] + public void SetBorderColor(uint? color) + { + if (color.HasValue) + { + _textBoxStyle.BorderColor = ColorHelpers.Parse(color.Value); + MarkUpdated(); + } + } + /// /// Marks the node as updated/dirty. This occurs on any property /// changes affecting the measurement of the . @@ -160,17 +175,24 @@ private static Thickness PaddingThickness(ReactTextInputShadowNode node) node.GetPaddingSpace(CSSSpacingType.Right), node.GetPaddingSpace(CSSSpacingType.Bottom)); } - private static MeasureOutput MeasureText(CSSNode node, float width, float height) + protected virtual MeasureOutput MeasureText(CSSNode node, float width, float height) { var shadowNode = (ReactTextInputShadowNode)node; - var textBlock = new TextBox(); - shadowNode._textBoxStyle.Padding = PaddingThickness(shadowNode); - textBlock.SetReactTextBoxProperties(shadowNode._textBoxStyle); + var textBox = new TextBox(); + + textBox.SetReactTextBoxProperties(shadowNode._textBoxStyle); + + if (!float.IsNaN(width)) + { + textBox.MaxWidth = width; + } - var adjustedHeight = float.IsNaN(height) ? double.PositiveInfinity : height; - textBlock.Measure(new Size(width, adjustedHeight)); + if (!float.IsNaN(height)) + { + textBox.MaxHeight = height; + } - return new MeasureOutput((float)textBlock.DesiredSize.Width, (float)textBlock.DesiredSize.Height); + return new MeasureOutput((float)textBox.DesiredSize.Width, (float)textBox.DesiredSize.Height); } } } diff --git a/ReactWindows/ReactNative/Views/TextInput/TextBoxExtensions.cs b/ReactWindows/ReactNative/Views/TextInput/TextBoxExtensions.cs index b428299ae9c..906f3c482a5 100644 --- a/ReactWindows/ReactNative/Views/TextInput/TextBoxExtensions.cs +++ b/ReactWindows/ReactNative/Views/TextInput/TextBoxExtensions.cs @@ -1,5 +1,6 @@ using ReactNative.Views.TextInput; using Windows.UI.Xaml.Controls; +using Windows.UI.Xaml.Media; namespace ReactNative.Views.TextInput { @@ -36,6 +37,11 @@ public static void SetReactTextBoxProperties(this TextBox textBox, ReactTextBoxP textBox.FontFamily = reactProperties.FontFamily; } + if (reactProperties.BorderColor.HasValue) + { + textBox.BorderBrush = new SolidColorBrush(reactProperties.BorderColor.Value); + } + if (reactProperties.Padding.HasValue) { textBox.Padding = reactProperties.Padding.Value; diff --git a/windows-packager/index.ios.js b/windows-packager/index.ios.js index 0bcea27ee0c..5b8212e1eb0 100644 --- a/windows-packager/index.ios.js +++ b/windows-packager/index.ios.js @@ -1,14 +1,60 @@ 'use strict'; -var React = require('react-native'); -var {AppRegistry, View, Text} = React; +const React = require('react-native'); +const styles={ + views:{ + flexDirection: 'column' + }, + images: { + height:200, + width:250, + borderWidth: 5, + borderColor: '#f099f0', + borderRadius: 10 + }, + textInput: { + height: 40, + borderWidth: 5, + borderColor: '#015d87' + }, + longTextInput: { + height: 80, + borderWidth: 3, + borderColor: '#ccc' + } +}; + +var {AppRegistry, View, Text, TextInput, Image } = React; var ReactRoot = React.createClass({ + + getInitialState: function(){ + var text = "You can see me!"; + var longText = "This is such a long text that it needs to go into a new lineThis is such a long text that it needs to go into a new lineThis is such a long text that it needs to go into a new lineThis is such a long text that it needs to go into a new lineThis is such a long text that it needs to go into a new line"; + + return {value: text, + longText: longText}; + }, + render: function() { + let imageURL = "http://facebook.github.io/react-native/img/opengraph.png?2"; + return ( - - Hello React Native, I'm running on Windows Phone + + + Hello! + {(this.state && this.state.value) + ? + : undefined} + + {(this.state && this.state.longText) + ? + : undefined} + + + + ); } }); diff --git a/windows-packager/main.dev.jsbundle b/windows-packager/main.dev.jsbundle deleted file mode 100644 index ef97e8e0561..00000000000 --- a/windows-packager/main.dev.jsbundle +++ /dev/null @@ -1,57331 +0,0 @@ -__DEV__= -true; - - -__BUNDLE_START_TIME__=Date.now(); -( -function(global){ -var modules=Object.create(null); -var inGuard=false; - -function define(id,factory){ -modules[id]={ -factory:factory, -module:{exports:{}}, -isInitialized:false, -hasError:false};} - - - -function require(id){ -var mod=modules[id]; -if(mod&&mod.isInitialized){ -return mod.module.exports;} - - -return requireImpl(id);} - - -function requireImpl(id){ -if(global.ErrorUtils&&!inGuard){ -inGuard=true; -var returnValue; -try{ -returnValue=requireImpl.apply(this,arguments);} -catch(e) { -global.ErrorUtils.reportFatalError(e);} - -inGuard=false; -return returnValue;} - - -var mod=modules[id]; -if(!mod){ -var msg='Requiring unknown module "'+id+'"'; -if(__DEV__){ -msg+='. If you are sure the module is there, try restarting the packager.';} - -throw new Error(msg);} - - -if(mod.hasError){ -throw new Error( -'Requiring module "'+id+'" which threw an exception');} - - - -try{ - - -mod.isInitialized=true; - -__DEV__&&BridgeProfiling().profile('JS_require_'+id); - - - -mod.factory.call(global,global,require,mod.module,mod.module.exports); - -__DEV__&&BridgeProfiling().profileEnd();} -catch(e) { -mod.hasError=true; -mod.isInitialized=false; -throw e;} - - -return mod.module.exports;} - - -var BridgeProfiling=__DEV__&&function(){ -var _BridgeProfiling; -try{ -_BridgeProfiling=require('BridgeProfiling');} -catch(e) {} - -return _BridgeProfiling&&_BridgeProfiling.profile? -_BridgeProfiling:{profile:function(){},profileEnd:function(){}};}; - - -global.__d=define; -global.require=require;})( -this); -Object. - - - - - - - - - - - - - - - - - -assign=function(target,sources){ -if(__DEV__){ -if(target==null){ -throw new TypeError('Object.assign target cannot be null or undefined');} - -if(typeof target!=='object'&&typeof target!=='function'){ -throw new TypeError( -'In this environment the target of assign MUST be an object.'+ -'This error is a performance optimization and not spec compliant.');}} - - - - -for(var nextIndex=1;nextIndex=0||keys.indexOf('description')>=0)){ -return formatError(value);} - - - -if(keys.length===0){ -if(isFunction(value)){ -var name=value.name?': '+value.name:''; -return ctx.stylize('[Function'+name+']','special');} - -if(isRegExp(value)){ -return ctx.stylize(RegExp.prototype.toString.call(value),'regexp');} - -if(isDate(value)){ -return ctx.stylize(Date.prototype.toString.call(value),'date');} - -if(isError(value)){ -return formatError(value);}} - - - -var base='',array=false,braces=['{','}']; - - -if(isArray(value)){ -array=true; -braces=['[',']'];} - - - -if(isFunction(value)){ -var n=value.name?': '+value.name:''; -base=' [Function'+n+']';} - - - -if(isRegExp(value)){ -base=' '+RegExp.prototype.toString.call(value);} - - - -if(isDate(value)){ -base=' '+Date.prototype.toUTCString.call(value);} - - - -if(isError(value)){ -base=' '+formatError(value);} - - -if(keys.length===0&&(!array||value.length==0)){ -return braces[0]+base+braces[1];} - - -if(recurseTimes<0){ -if(isRegExp(value)){ -return ctx.stylize(RegExp.prototype.toString.call(value),'regexp');}else -{ -return ctx.stylize('[Object]','special');}} - - - -ctx.seen.push(value); - -var output; -if(array){ -output=formatArray(ctx,value,recurseTimes,visibleKeys,keys);}else -{ -output=keys.map(function(key){ -return formatProperty(ctx,value,recurseTimes,visibleKeys,key,array);});} - - - -ctx.seen.pop(); - -return reduceToSingleString(output,base,braces);} - - - -function formatPrimitive(ctx,value){ -if(isUndefined(value)) -return ctx.stylize('undefined','undefined'); -if(isString(value)){ -var simple='\''+JSON.stringify(value).replace(/^"|"$/g,''). -replace(/'/g,"\\'"). -replace(/\\"/g,'"')+'\''; -return ctx.stylize(simple,'string');} - -if(isNumber(value)) -return ctx.stylize(''+value,'number'); -if(isBoolean(value)) -return ctx.stylize(''+value,'boolean'); - -if(isNull(value)) -return ctx.stylize('null','null');} - - - -function formatError(value){ -return '['+Error.prototype.toString.call(value)+']';} - - - -function formatArray(ctx,value,recurseTimes,visibleKeys,keys){ -var output=[]; -for(var i=0,l=value.length;i-1){ -if(array){ -str=str.split('\n').map(function(line){ -return ' '+line;}). -join('\n').substr(2);}else -{ -str='\n'+str.split('\n').map(function(line){ -return ' '+line;}). -join('\n');}}}else - - -{ -str=ctx.stylize('[Circular]','special');}} - - -if(isUndefined(name)){ -if(array&&key.match(/^\d+$/)){ -return str;} - -name=JSON.stringify(''+key); -if(name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)){ -name=name.substr(1,name.length-2); -name=ctx.stylize(name,'name');}else -{ -name=name.replace(/'/g,"\\'"). -replace(/\\"/g,'"'). -replace(/(^"|"$)/g,"'"); -name=ctx.stylize(name,'string');}} - - - -return name+': '+str;} - - - -function reduceToSingleString(output,base,braces){ -var numLinesEst=0; -var length=output.reduce(function(prev,cur){ -numLinesEst++; -if(cur.indexOf('\n')>=0)numLinesEst++; -return prev+cur.replace(/\u001b\[\d\d?m/g,'').length+1;}, -0); - -if(length>60){ -return braces[0]+( -base===''?'':base+'\n ')+ -' '+ -output.join(',\n ')+ -' '+ -braces[1];} - - -return braces[0]+base+' '+output.join(', ')+' '+braces[1];} - - - - - -function isArray(ar){ -return Array.isArray(ar);} - - -function isBoolean(arg){ -return typeof arg==='boolean';} - - -function isNull(arg){ -return arg===null;} - - -function isNullOrUndefined(arg){ -return arg==null;} - - -function isNumber(arg){ -return typeof arg==='number';} - - -function isString(arg){ -return typeof arg==='string';} - - -function isSymbol(arg){ -return typeof arg==='symbol';} - - -function isUndefined(arg){ -return arg===void 0;} - - -function isRegExp(re){ -return isObject(re)&&objectToString(re)==='[object RegExp]';} - - -function isObject(arg){ -return typeof arg==='object'&&arg!==null;} - - -function isDate(d){ -return isObject(d)&&objectToString(d)==='[object Date]';} - - -function isError(e){ -return isObject(e)&&( -objectToString(e)==='[object Error]'||e instanceof Error);} - - -function isFunction(arg){ -return typeof arg==='function';} - - -function isPrimitive(arg){ -return arg===null|| -typeof arg==='boolean'|| -typeof arg==='number'|| -typeof arg==='string'|| -typeof arg==='symbol'|| -typeof arg==='undefined';} - - -function objectToString(o){ -return Object.prototype.toString.call(o);} - - -function hasOwnProperty(obj,prop){ -return Object.prototype.hasOwnProperty.call(obj,prop);} - - -return inspect;})(); - - - -var OBJECT_COLUMN_NAME='(index)'; -var LOG_LEVELS={ -trace:0, -info:1, -warn:2, -error:3}; - - -function setupConsole(global){ -var originalConsole=global.console; - -if(!global.nativeLoggingHook){ -return;} - - -function getNativeLogFunction(level){ -return function(){ -var str; -if(arguments.length===1&&typeof arguments[0]==='string'){ -str=arguments[0];}else -{ -str=Array.prototype.map.call(arguments,function(arg){ -return inspect(arg,{depth:10});}). -join(', ');} - - -var logLevel=level; -if(str.slice(0,9)==='Warning: '&&logLevel>=LOG_LEVELS.error){ - - - -logLevel=LOG_LEVELS.warn;} - -global.nativeLoggingHook(str,logLevel);};} - - - -var repeat=function(element,n){ -return Array.apply(null,Array(n)).map(function(){return element;});}; - - -function consoleTablePolyfill(rows){ - -if(!Array.isArray(rows)){ -var data=rows; -rows=[]; -for(var key in data){ -if(data.hasOwnProperty(key)){ -var row=data[key]; -row[OBJECT_COLUMN_NAME]=key; -rows.push(row);}}} - - - -if(rows.length===0){ -global.nativeLoggingHook('',LOG_LEVELS.info); -return;} - - -var columns=Object.keys(rows[0]).sort(); -var stringRows=[]; -var columnWidths=[]; - - - -columns.forEach(function(k,i){ -columnWidths[i]=k.length; -for(var j=0;j'; -function guarded(){ -return ( -ErrorUtils.applyWithGuard( -fun, -context||this, -arguments, -null, -name));} - - - - -return guarded;}}; - - -global.ErrorUtils=ErrorUtils; - - - - - -function setupErrorGuard(){ -var onError=function(e){ -global.console.error( -'Error: '+ -'\n stack: '+e.stack+ -'\n line: '+e.line+ -'\n message: '+e.message, -e);}; - - -global.ErrorUtils.setGlobalHandler(onError);} - - -setupErrorGuard();})( -this); -if( - - - - - - - - - - - -!String.prototype.startsWith){ -String.prototype.startsWith=function(search){ -'use strict'; -if(this==null){ -throw TypeError();} - -var string=String(this); -var pos=arguments.length>1? -Number(arguments[1])||0:0; -var start=Math.min(Math.max(pos,0),string.length); -return string.indexOf(String(search),pos)===start;};} - - - -if(!String.prototype.endsWith){ -String.prototype.endsWith=function(search){ -'use strict'; -if(this==null){ -throw TypeError();} - -var string=String(this); -var stringLength=string.length; -var searchString=String(search); -var pos=arguments.length>1? -Number(arguments[1])||0:stringLength; -var end=Math.min(Math.max(pos,0),stringLength); -var start=end-searchString.length; -if(start<0){ -return false;} - -return string.lastIndexOf(searchString,start)===start;};} - - - -if(!String.prototype.contains){ -String.prototype.contains=function(search){ -'use strict'; -if(this==null){ -throw TypeError();} - -var string=String(this); -var pos=arguments.length>1? -Number(arguments[1])||0:0; -return string.indexOf(String(search),pos)!==-1;};} - - - -if(!String.prototype.repeat){ -String.prototype.repeat=function(count){ -'use strict'; -if(this==null){ -throw TypeError();} - -var string=String(this); -count=Number(count)||0; -if(count<0||count===Infinity){ -throw RangeError();} - -if(count===1){ -return string;} - -var result=''; -while(count){ -if(count&1){ -result+=string;} - -if(count>>=1){ -string+=string;}} - - -return result;};} -( - - - - - - - - - -function(undefined){ - -function findIndex(predicate,context){ -if(this==null){ -throw new TypeError( -'Array.prototype.findIndex called on null or undefined');} - - -if(typeof predicate!=='function'){ -throw new TypeError('predicate must be a function');} - -var list=Object(this); -var length=list.length>>>0; -for(var i=0;i=0)continue; -if(!Object.prototype.hasOwnProperty.call(obj,i))continue; -target[i]=obj[i];} - - -return target;}; - - -babelHelpers.possibleConstructorReturn=function(self,call){ -if(!self){ -throw new ReferenceError("this hasn't been initialised - super() hasn't been called");} - - -return call&&(typeof call==="object"||typeof call==="function")?call:self;}; - - -babelHelpers.slicedToArray=(function(){ -function sliceIterator(arr,i){ -var _arr=[]; -var _n=true; -var _d=false; -var _e=undefined; - -try{ -for(var _i=arr[Symbol.iterator](),_s;!(_n=(_s=_i.next()).done);_n=true){ -_arr.push(_s.value); - -if(i&&_arr.length===i)break;}} - -catch(err) { -_d=true; -_e=err;}finally -{ -try{ -if(!_n&&_i["return"])_i["return"]();}finally -{ -if(_d)throw _e;}} - - - -return _arr;} - - -return function(arr,i){ -if(Array.isArray(arr)){ -return arr;}else -if(Symbol.iterator in Object(arr)){ -return sliceIterator(arr,i);}else -{ -throw new TypeError("Invalid attempt to destructure non-iterable instance");}};})(); - - - - -babelHelpers.taggedTemplateLiteral=function(strings,raw){ -return Object.freeze(Object.defineProperties(strings,{ -raw:{ -value:Object.freeze(raw)}}));}; - - - - -babelHelpers.toConsumableArray=function(arr){ -if(Array.isArray(arr)){ -for(var i=0,arr2=Array(arr.length);i1<<5&&( -this._debugInfo[this._callbackID>>5]=null); - -this._debugInfo[this._callbackID>>1]=[module,method]; -onFail&¶ms.push(this._callbackID); -this._callbacks[this._callbackID++]=onFail; -onSucc&¶ms.push(this._callbackID); -this._callbacks[this._callbackID++]=onSucc;} - -this._queue[MODULE_IDS].push(module); -this._queue[METHOD_IDS].push(method); -this._queue[PARAMS].push(params); - -var now=new Date().getTime(); -if(global.nativeFlushQueueImmediate&& -now-this._lastFlush>=MIN_TIME_BETWEEN_FLUSHES_MS){ -global.nativeFlushQueueImmediate(this._queue); -this._queue=[[],[],[]]; -this._lastFlush=now;} - -if(__DEV__&&SPY_MODE&&isFinite(module)){ -console.log('JS->N : '+this._remoteModuleTable[module]+'.'+ -this._remoteMethodTable[module][method]+'('+JSON.stringify(params)+')');}}},{key:'__callFunction',value:function __callFunction( - - - -module,method,args){ -this._lastFlush=new Date().getTime(); -if(isFinite(module)){ -method=this._methodTable[module][method]; -module=this._moduleTable[module];} - -BridgeProfiling.profile(function(){return module+'.'+method+'('+stringifySafe(args)+')';}); -if(__DEV__&&SPY_MODE){ -console.log('N->JS : '+module+'.'+method+'('+JSON.stringify(args)+')');} - -var moduleMethods=this._callableModules[module]; -if(!moduleMethods){ - - - -console.warn('Module is not registered:',module); -moduleMethods=require(module);} - - - - - - - - -moduleMethods[method].apply(moduleMethods,args); -BridgeProfiling.profileEnd();}},{key:'__invokeCallback',value:function __invokeCallback( - - -cbID,args){ -BridgeProfiling.profile( -function(){return 'MessageQueue.invokeCallback('+cbID+', '+stringifySafe(args)+')';}); -this._lastFlush=new Date().getTime(); -var callback=this._callbacks[cbID]; -if(!callback||__DEV__){ -var debug=this._debugInfo[cbID>>1]; -var _module=debug&&this._remoteModuleTable[debug[0]]; -var method=debug&&this._remoteMethodTable[debug[0]][debug[1]]; -invariant( -callback,'Callback with id '+ -cbID+': '+_module+'.'+method+'() not found'); - -if(callback&&SPY_MODE){ -console.log('N->JS : ('+JSON.stringify(args)+')');}} - - -this._callbacks[cbID&~1]=null; -this._callbacks[cbID|1]=null; -callback.apply(null,args); -BridgeProfiling.profileEnd();}},{key:'_genModulesConfig',value:function _genModulesConfig( - - - - - - - - - - - -modules){ -if(Array.isArray(modules)){ -return modules;}else -{ -var moduleArray=[]; -var moduleNames=Object.keys(modules); -for(var i=0,l=moduleNames.length;i0?args[args.length-1]:null; -var secondLastArg=args.length>1?args[args.length-2]:null; -var hasSuccCB=typeof lastArg==='function'; -var hasErrorCB=typeof secondLastArg==='function'; -hasErrorCB&&invariant( -hasSuccCB, -'Cannot have a non-function arg after a function arg.'); - -var numCBs=hasSuccCB+hasErrorCB; -var onSucc=hasSuccCB?lastArg:null; -var onFail=hasErrorCB?secondLastArg:null; -args=args.slice(0,args.length-numCBs); -return self.__nativeCall(module,method,args,onFail,onSucc);};} - - -fn.type=type; -return fn;}},{key:'registerCallableModule',value:function registerCallableModule( - - -name,methods){ -this._callableModules[name]=methods;}}]);return MessageQueue;})(); - - - - -function moduleHasConstants(moduleArray){ -return !Array.isArray(moduleArray[1]);} - - -function arrayContains(array,value){ -return array.indexOf(value)!==-1;} - - -function createErrorFromErrorData(errorData){var - -message= - -errorData.message;var extraErrorInfo=babelHelpers.objectWithoutProperties(errorData,['message']); -var error=new Error(message); -error.framesToPop=1; -return babelHelpers.extends(error,extraErrorInfo);} - - -module.exports=MessageQueue; -}); -__d('BridgeProfiling',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - -var GLOBAL=GLOBAL||this; -var TRACE_TAG_REACT_APPS=1<<17; -var TRACE_TAG_JSC_CALLS=1<<27; - -var _enabled=false; -var _asyncCookie=0; -var _ReactPerf=null; -function ReactPerf(){ -if(!_ReactPerf){ -_ReactPerf=require('ReactPerf');} - -return _ReactPerf;} - - -var BridgeProfiling={ -setEnabled:function(enabled){ -if(_enabled!==enabled){ -if(enabled){ -global.nativeTraceBeginLegacy&&global.nativeTraceBeginLegacy(TRACE_TAG_JSC_CALLS);}else -{ -global.nativeTraceEndLegacy&&global.nativeTraceEndLegacy(TRACE_TAG_JSC_CALLS);}} - - -_enabled=enabled; - -ReactPerf().enableMeasure=enabled;}, - - - - - -profile:function(profileName){ -if(_enabled){ -profileName=typeof profileName==='function'? -profileName():profileName; -global.nativeTraceBeginSection(TRACE_TAG_REACT_APPS,profileName);}}, - - - -profileEnd:function(){ -if(_enabled){ -global.nativeTraceEndSection(TRACE_TAG_REACT_APPS);}}, - - - - - - - - -profileAsync:function(profileName){ -var cookie=_asyncCookie; -if(_enabled){ -_asyncCookie++; -profileName=typeof profileName==='function'? -profileName():profileName; -global.nativeTraceBeginAsyncSection(TRACE_TAG_REACT_APPS,profileName,cookie,0);} - -return cookie;}, - - -profileAsyncEnd:function(profileName,cookie){ -if(_enabled){ -profileName=typeof profileName==='function'? -profileName():profileName; -global.nativeTraceEndAsyncSection(TRACE_TAG_REACT_APPS,profileName,cookie,0);}}, - - - -reactPerfMeasure:function(objName,fnName,func){ -return function(component){ -if(!_enabled){ -return func.apply(this,arguments);} - - -var name=objName==='ReactCompositeComponent'&&this.getName()||''; -BridgeProfiling.profile(objName+'.'+fnName+'('+name+')'); -var ret=func.apply(this,arguments); -BridgeProfiling.profileEnd(); -return ret;};}, - - - -swizzleReactPerf:function(){ -ReactPerf().injection.injectMeasure(BridgeProfiling.reactPerfMeasure);}, - - - - - - -attachToRelayProfiler:function(relayProfiler){ -relayProfiler.attachProfileHandler('*',function(name){ -var cookie=BridgeProfiling.profileAsync(name); -return function(){ -BridgeProfiling.profileAsyncEnd(name,cookie);};});}, - - - - - - -swizzleJSON:function(){ -BridgeProfiling.measureMethods(JSON,'JSON',[ -'parse', -'stringify']);}, - - - - - - - - - - - -measureMethods:function(object,objectName,methodNames){ -if(!__DEV__){ -return;} - - -methodNames.forEach(function(methodName){ -object[methodName]=BridgeProfiling.measure( -objectName, -methodName, -object[methodName]);});}, - - - - - - - - - - - - - -measure:function(objName,fnName,func){ -if(!__DEV__){ -return func;} - - -var profileName=objName+'.'+fnName; -return function(){ -if(!_enabled){ -return func.apply(this,arguments);} - - -BridgeProfiling.profile(profileName); -var ret=func.apply(this,arguments); -BridgeProfiling.profileEnd(); -return ret;};}}; - - - - -BridgeProfiling.setEnabled(global.__RCTProfileIsProfiling||false); - -module.exports=BridgeProfiling; -}); -__d('ReactPerf',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - -var ReactPerf={ - - - - -enableMeasure:false, - - - - - -storedMeasure:_noMeasure, - - - - - - -measureMethods:function(object,objectName,methodNames){ -if(__DEV__){ -for(var key in methodNames){ -if(!methodNames.hasOwnProperty(key)){ -continue;} - -object[key]=ReactPerf.measure( -objectName, -methodNames[key], -object[key]);}}}, - - - - - - - - - - - - - -measure:function(objName,fnName,func){ -if(__DEV__){ -var measuredFunc=null; -var wrapper=function(){ -if(ReactPerf.enableMeasure){ -if(!measuredFunc){ -measuredFunc=ReactPerf.storedMeasure(objName,fnName,func);} - -return measuredFunc.apply(this,arguments);} - -return func.apply(this,arguments);}; - -wrapper.displayName=objName+'_'+fnName; -return wrapper;} - -return func;}, - - -injection:{ - - - -injectMeasure:function(measure){ -ReactPerf.storedMeasure=measure;}}}; - - - - - - - - - - - - -function _noMeasure(objName,fnName,func){ -return func;} - - -module.exports=ReactPerf; -}); -__d('ErrorUtils',function(global, require, module, exports) { var - - - - - - - - - - - -GLOBAL=this; - - - - - - - - - - - - - -module.exports=GLOBAL.ErrorUtils; -}); -__d('JSTimersExecution',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -var invariant=require('invariant'); -var keyMirror=require('keyMirror'); -var performanceNow=require('performanceNow'); -var warning=require('warning'); -var BridgeProfiling=require('BridgeProfiling'); - - - - - - -var JSTimersExecution={ -GUID:1, -Type:keyMirror({ -setTimeout:null, -setInterval:null, -requestAnimationFrame:null, -setImmediate:null}), - - - -callbacks:[], -types:[], -timerIDs:[], -immediates:[], - - - - - - -callTimer:function(timerID){ -warning(timerID<=JSTimersExecution.GUID,'Tried to call timer with ID '+timerID+' but no such timer exists'); -var timerIndex=JSTimersExecution.timerIDs.indexOf(timerID); - - - - - -if(timerIndex===-1){ -return;} - -var type=JSTimersExecution.types[timerIndex]; -var callback=JSTimersExecution.callbacks[timerIndex]; - - -if(type===JSTimersExecution.Type.setTimeout|| -type===JSTimersExecution.Type.setImmediate|| -type===JSTimersExecution.Type.requestAnimationFrame){ -JSTimersExecution._clearIndex(timerIndex);} - - -try{ -if(type===JSTimersExecution.Type.setTimeout|| -type===JSTimersExecution.Type.setInterval|| -type===JSTimersExecution.Type.setImmediate){ -callback();}else -if(type===JSTimersExecution.Type.requestAnimationFrame){ -var currentTime=performanceNow(); -callback(currentTime);}else -{ -console.error('Tried to call a callback with invalid type: '+type); -return;}} - -catch(e) { - -JSTimersExecution.errors=JSTimersExecution.errors||[]; -JSTimersExecution.errors.push(e);}}, - - - - - - - -callTimers:function(timerIDs){ -invariant(timerIDs.length!==0,'Probably shouldn\'t call "callTimers" with no timerIDs'); - -JSTimersExecution.errors=null; -timerIDs.forEach(JSTimersExecution.callTimer); - -var errors=JSTimersExecution.errors; -if(errors){ -var errorCount=errors.length; -if(errorCount>1){ - - -for(var ii=1;ii0){ -var passImmediates=JSTimersExecution.immediates.slice(); -JSTimersExecution.immediates=[]; - - - -for(var i=0;i0;}, - - - - - - -callImmediates:function(){ -JSTimersExecution.errors=null; -while(JSTimersExecution.callImmediatesPass()){} -if(JSTimersExecution.errors){ -JSTimersExecution.errors.forEach(function(error){return ( -require('JSTimers').setTimeout(function(){throw error;},0));});}}, - - - - -_clearIndex:function(i){ -JSTimersExecution.timerIDs[i]=null; -JSTimersExecution.callbacks[i]=null; -JSTimersExecution.types[i]=null;}}; - - - -module.exports=JSTimersExecution; -}); -__d('keyMirror',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var invariant=require('invariant'); - - - - - - - - - - - - - - - - - - - -var keyMirror=function(obj){ -var ret={}; -var key; -invariant( -obj instanceof Object&&!Array.isArray(obj), -'keyMirror(...): Argument must be an object.'); - -for(key in obj){ -if(!obj.hasOwnProperty(key)){ -continue;} - -ret[key]=key;} - -return ret;}; - - -module.exports=keyMirror; -}); -__d('performanceNow',function(global, require, module, exports) { var - - - - - - - - - - - -performance=require('performance'); -var curPerformance=performance; - - - - - - -if(!curPerformance||!curPerformance.now){ -curPerformance=Date;} - - -var performanceNow=curPerformance.now.bind(curPerformance); - -module.exports=performanceNow; -}); -__d('performance',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var ExecutionEnvironment=require('ExecutionEnvironment'); - -var performance; - -if(ExecutionEnvironment.canUseDOM){ -performance= -window.performance|| -window.msPerformance|| -window.webkitPerformance;} - - -module.exports=performance||{}; -}); -__d('ExecutionEnvironment',function(global, require, module, exports) { "use strict"; - - - - - - - - - - - - - - - - - - - - - - - -var canUseDOM=false; - - - - - - - -var ExecutionEnvironment={ - -canUseDOM:canUseDOM, - -canUseWorkers:typeof Worker!=='undefined', - -canUseEventListeners: -canUseDOM&&!!(window.addEventListener||window.attachEvent), - -canUseViewport:canUseDOM&&!!window.screen, - -isInWorker:!canUseDOM}; - - - -module.exports=ExecutionEnvironment; -}); -__d('warning',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var emptyFunction=require('emptyFunction'); - - - - - - - - -var warning=emptyFunction; - -if(__DEV__){ -warning=function(condition,format){for(var _len=arguments.length,args=Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];} -if(format===undefined){ -throw new Error( -'`warning(condition, format, ...args)` requires a warning '+ -'message argument');} - - - -if(format.indexOf('Failed Composite propType: ')===0){ -return;} - - -if(!condition){ -var argIndex=0; -var message='Warning: '+format.replace(/%s/g,function(){return args[argIndex++];}); -if(typeof console!=='undefined'){ -console.error(message);} - -try{ - - - -throw new Error(message);} -catch(x) {}}};} - - - - -module.exports=warning; -}); -__d('emptyFunction',function(global, require, module, exports) { function - - - - - - - - - - -makeEmptyFunction(arg){ -return function(){ -return arg;};} - - - - - - - - -function emptyFunction(){} - -emptyFunction.thatReturns=makeEmptyFunction; -emptyFunction.thatReturnsFalse=makeEmptyFunction(false); -emptyFunction.thatReturnsTrue=makeEmptyFunction(true); -emptyFunction.thatReturnsNull=makeEmptyFunction(null); -emptyFunction.thatReturnsThis=function(){return this;}; -emptyFunction.thatReturnsArgument=function(arg){return arg;}; - -module.exports=emptyFunction; -}); -__d('JSTimers',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var RCTTiming=require('NativeModules').Timing; -var JSTimersExecution=require('JSTimersExecution'); - - - - - - -var JSTimers={ -Types:JSTimersExecution.Types, - - - - - -_getFreeIndex:function(){ -var freeIndex=JSTimersExecution.timerIDs.indexOf(null); -if(freeIndex===-1){ -freeIndex=JSTimersExecution.timerIDs.length;} - -return freeIndex;}, - - - - - - -setTimeout:function(func,duration){for(var _len=arguments.length,args=Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];} -var newID=JSTimersExecution.GUID++; -var freeIndex=JSTimers._getFreeIndex(); -JSTimersExecution.timerIDs[freeIndex]=newID; -JSTimersExecution.callbacks[freeIndex]=function(){ -return func.apply(undefined,args);}; - -JSTimersExecution.types[freeIndex]=JSTimersExecution.Type.setTimeout; -RCTTiming.createTimer(newID,duration||0,Date.now(),false); -return newID;}, - - - - - - -setInterval:function(func,duration){for(var _len2=arguments.length,args=Array(_len2>2?_len2-2:0),_key2=2;_key2<_len2;_key2++){args[_key2-2]=arguments[_key2];} -var newID=JSTimersExecution.GUID++; -var freeIndex=JSTimers._getFreeIndex(); -JSTimersExecution.timerIDs[freeIndex]=newID; -JSTimersExecution.callbacks[freeIndex]=function(){ -return func.apply(undefined,args);}; - -JSTimersExecution.types[freeIndex]=JSTimersExecution.Type.setInterval; -RCTTiming.createTimer(newID,duration||0,Date.now(),true); -return newID;}, - - - - - - -setImmediate:function(func){for(var _len3=arguments.length,args=Array(_len3>1?_len3-1:0),_key3=1;_key3<_len3;_key3++){args[_key3-1]=arguments[_key3];} -var newID=JSTimersExecution.GUID++; -var freeIndex=JSTimers._getFreeIndex(); -JSTimersExecution.timerIDs[freeIndex]=newID; -JSTimersExecution.callbacks[freeIndex]=function(){ -return func.apply(undefined,args);}; - -JSTimersExecution.types[freeIndex]=JSTimersExecution.Type.setImmediate; -JSTimersExecution.immediates.push(newID); -return newID;}, - - - - - -requestAnimationFrame:function(func){ -var newID=JSTimersExecution.GUID++; -var freeIndex=JSTimers._getFreeIndex(); -JSTimersExecution.timerIDs[freeIndex]=newID; -JSTimersExecution.callbacks[freeIndex]=func; -JSTimersExecution.types[freeIndex]=JSTimersExecution.Type.requestAnimationFrame; -RCTTiming.createTimer(newID,1,Date.now(),false); -return newID;}, - - -clearTimeout:function(timerID){ -JSTimers._clearTimerID(timerID);}, - - -clearInterval:function(timerID){ -JSTimers._clearTimerID(timerID);}, - - -clearImmediate:function(timerID){ -JSTimers._clearTimerID(timerID); -JSTimersExecution.immediates.splice( -JSTimersExecution.immediates.indexOf(timerID), -1);}, - - - -cancelAnimationFrame:function(timerID){ -JSTimers._clearTimerID(timerID);}, - - -_clearTimerID:function(timerID){ - - -if(timerID==null){ -return;} - - -var index=JSTimersExecution.timerIDs.indexOf(timerID); - -if(index!==-1){ -JSTimersExecution._clearIndex(index); -if(JSTimersExecution.types[index]!==JSTimersExecution.Type.setImmediate){ -RCTTiming.deleteTimer(timerID);}}}}; - - - - - -module.exports=JSTimers; -}); -__d('stringifySafe',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - -function stringifySafe(arg){ -var ret; -var type=typeof arg; -if(arg===undefined){ -ret='undefined';}else -if(arg===null){ -ret='null';}else -if(type==='string'){ -ret='"'+arg+'"';}else -if(type==='function'){ -try{ -ret=arg.toString();} -catch(e) { -ret='[function unknown]';}}else - -{ - - -try{ -ret=JSON.stringify(arg);} -catch(e) { -if(typeof arg.toString==='function'){ -try{ -ret=arg.toString();} -catch(E) {}}}} - - - -return ret||'["'+type+'" failed to stringify]';} - - -module.exports=stringifySafe; -}); -__d('findNodeHandle',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var ReactCurrentOwner=require('ReactCurrentOwner'); -var ReactInstanceMap=require('ReactInstanceMap'); -var ReactNativeTagHandles=require('ReactNativeTagHandles'); - -var invariant=require('invariant'); -var warning=require('warning'); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -function findNodeHandle(componentOrHandle){ -if(__DEV__){ -var owner=ReactCurrentOwner.current; -if(owner!==null){ -warning( -owner._warnedAboutRefsInRender, -'%s is accessing findNodeHandle inside its render(). '+ -'render() should be a pure function of props and state. It should '+ -'never access something that requires stale data from the previous '+ -'render, such as refs. Move this logic to componentDidMount and '+ -'componentDidUpdate instead.', -owner.getName()||'A component'); - -owner._warnedAboutRefsInRender=true;}} - - -if(componentOrHandle==null){ -return null;} - -if(typeof componentOrHandle==='number'){ - -return componentOrHandle;} - - -var component=componentOrHandle; - - - -var internalInstance=ReactInstanceMap.get(component); -if(internalInstance){ -return ReactNativeTagHandles.rootNodeIDToTag[internalInstance._rootNodeID];}else -{ -var rootNodeID=component._rootNodeID; -if(rootNodeID){ -return ReactNativeTagHandles.rootNodeIDToTag[rootNodeID];}else -{ -invariant( - - -typeof component==='object'&& -'_rootNodeID' in component|| - - -component.render!=null&& -typeof component.render==='function', - -'findNodeHandle(...): Argument is not a component '+ -'(type: %s, keys: %s)', -typeof component, -Object.keys(component)); - -invariant( -false, -'findNodeHandle(...): Unable to find node handle for unmounted '+ -'component.');}}} - - - - - -module.exports=findNodeHandle; -}); -__d('ReactCurrentOwner',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - -var ReactCurrentOwner={ - - - - - -current:null}; - - - -module.exports=ReactCurrentOwner; -}); -__d('ReactInstanceMap',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - -var ReactInstanceMap={ - - - - - - -remove:function(key){ -key._reactInternalInstance=undefined;}, - - -get:function(key){ -return key._reactInternalInstance;}, - - -has:function(key){ -return key._reactInternalInstance!==undefined;}, - - -set:function(key,value){ -key._reactInternalInstance=value;}}; - - - - -module.exports=ReactInstanceMap; -}); -__d('ReactNativeTagHandles',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var invariant=require('invariant'); -var warning=require('warning'); - - - - - - - - - - - - - - -var INITIAL_TAG_COUNT=1; -var NATIVE_TOP_ROOT_ID_SEPARATOR='{TOP_LEVEL}'; -var ReactNativeTagHandles={ -tagsStartAt:INITIAL_TAG_COUNT, -tagCount:INITIAL_TAG_COUNT, - -allocateTag:function(){ - -while(this.reactTagIsNativeTopRootID(ReactNativeTagHandles.tagCount)){ -ReactNativeTagHandles.tagCount++;} - -var tag=ReactNativeTagHandles.tagCount; -ReactNativeTagHandles.tagCount++; -return tag;}, - - - - - - - - - - - -associateRootNodeIDWithMountedNodeHandle:function( -rootNodeID, -tag) -{ -warning(rootNodeID&&tag,'Root node or tag is null when associating'); -if(rootNodeID&&tag){ -ReactNativeTagHandles.tagToRootNodeID[tag]=rootNodeID; -ReactNativeTagHandles.rootNodeIDToTag[rootNodeID]=tag;}}, - - - -allocateRootNodeIDForTag:function(tag){ -invariant( -this.reactTagIsNativeTopRootID(tag), -'Expect a native root tag, instead got ',tag); - -return '.r['+tag+']'+NATIVE_TOP_ROOT_ID_SEPARATOR;}, - - -reactTagIsNativeTopRootID:function(reactTag){ - -return reactTag%10===1;}, - - -getNativeTopRootIDFromNodeID:function(nodeID){ -if(!nodeID){ -return null;} - -var index=nodeID.indexOf(NATIVE_TOP_ROOT_ID_SEPARATOR); -if(index===-1){ -return null;} - -return nodeID.substr(0,index+NATIVE_TOP_ROOT_ID_SEPARATOR.length);}, - - - - - - - - - - - - - - -mostRecentMountedNodeHandleForRootNodeID:function( -rootNodeID) -{ -return ReactNativeTagHandles.rootNodeIDToTag[rootNodeID];}, - - -tagToRootNodeID:[], - -rootNodeIDToTag:{}}; - - -module.exports=ReactNativeTagHandles; -}); -__d('ReactPropTypes',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactElement=require('ReactElement'); -var ReactPropTypeLocationNames=require('ReactPropTypeLocationNames'); - -var emptyFunction=require('emptyFunction'); -var getIteratorFn=require('getIteratorFn'); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var ANONYMOUS='<>'; - -var ReactPropTypes={ -array:createPrimitiveTypeChecker('array'), -bool:createPrimitiveTypeChecker('boolean'), -func:createPrimitiveTypeChecker('function'), -number:createPrimitiveTypeChecker('number'), -object:createPrimitiveTypeChecker('object'), -string:createPrimitiveTypeChecker('string'), - -any:createAnyTypeChecker(), -arrayOf:createArrayOfTypeChecker, -element:createElementTypeChecker(), -instanceOf:createInstanceTypeChecker, -node:createNodeChecker(), -objectOf:createObjectOfTypeChecker, -oneOf:createEnumTypeChecker, -oneOfType:createUnionTypeChecker, -shape:createShapeTypeChecker}; - - -function createChainableTypeChecker(validate){ -function checkType( -isRequired, -props, -propName, -componentName, -location, -propFullName) -{ -componentName=componentName||ANONYMOUS; -propFullName=propFullName||propName; -if(props[propName]==null){ -var locationName=ReactPropTypeLocationNames[location]; -if(isRequired){ -return new Error( -'Required '+locationName+' `'+propFullName+'` was not specified in '+('`'+ -componentName+'`.'));} - - -return null;}else -{ -return validate(props,propName,componentName,location,propFullName);}} - - - -var chainedCheckType=checkType.bind(null,false); -chainedCheckType.isRequired=checkType.bind(null,true); - -return chainedCheckType;} - - -function createPrimitiveTypeChecker(expectedType){ -function validate(props,propName,componentName,location,propFullName){ -var propValue=props[propName]; -var propType=getPropType(propValue); -if(propType!==expectedType){ -var locationName=ReactPropTypeLocationNames[location]; - - - -var preciseType=getPreciseType(propValue); - -return new Error( -'Invalid '+locationName+' `'+propFullName+'` of type '+('`'+ -preciseType+'` supplied to `'+componentName+'`, expected ')+('`'+ -expectedType+'`.'));} - - -return null;} - -return createChainableTypeChecker(validate);} - - -function createAnyTypeChecker(){ -return createChainableTypeChecker(emptyFunction.thatReturns(null));} - - -function createArrayOfTypeChecker(typeChecker){ -function validate(props,propName,componentName,location,propFullName){ -var propValue=props[propName]; -if(!Array.isArray(propValue)){ -var locationName=ReactPropTypeLocationNames[location]; -var propType=getPropType(propValue); -return new Error( -'Invalid '+locationName+' `'+propFullName+'` of type '+('`'+ -propType+'` supplied to `'+componentName+'`, expected an array.'));} - - -for(var i=0;i>';} - -return propValue.constructor.name;} - - -module.exports=ReactPropTypes; -}); -__d('ReactElement',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactCurrentOwner=require('ReactCurrentOwner'); - -var assign=require('Object.assign'); -var canDefineProperty=require('canDefineProperty'); - - - -var REACT_ELEMENT_TYPE= -typeof Symbol==='function'&&Symbol.for&&Symbol.for('react.element')|| -0xeac7; - -var RESERVED_PROPS={ -key:true, -ref:true, -__self:true, -__source:true}; - - - - - - - - - - - - - - - - - - - - -var ReactElement=function(type,key,ref,self,source,owner,props){ -var element={ - -$$typeof:REACT_ELEMENT_TYPE, - - -type:type, -key:key, -ref:ref, -props:props, - - -_owner:owner}; - - -if(__DEV__){ - - - - -element._store={}; - - - - - -if(canDefineProperty){ -Object.defineProperty(element._store,'validated',{ -configurable:false, -enumerable:false, -writable:true, -value:false}); - - -Object.defineProperty(element,'_self',{ -configurable:false, -enumerable:false, -writable:false, -value:self}); - - - -Object.defineProperty(element,'_source',{ -configurable:false, -enumerable:false, -writable:false, -value:source});}else - -{ -element._store.validated=false; -element._self=self; -element._source=source;} - -Object.freeze(element.props); -Object.freeze(element);} - - -return element;}; - - -ReactElement.createElement=function(type,config,children){ -var propName; - - -var props={}; - -var key=null; -var ref=null; -var self=null; -var source=null; - -if(config!=null){ -ref=config.ref===undefined?null:config.ref; -key=config.key===undefined?null:''+config.key; -self=config.__self===undefined?null:config.__self; -source=config.__source===undefined?null:config.__source; - -for(propName in config){ -if(config.hasOwnProperty(propName)&& -!RESERVED_PROPS.hasOwnProperty(propName)){ -props[propName]=config[propName];}}} - - - - - - -var childrenLength=arguments.length-2; -if(childrenLength===1){ -props.children=children;}else -if(childrenLength>1){ -var childArray=Array(childrenLength); -for(var i=0;i1){ -var childArray=Array(childrenLength); -for(var i=0;i=0;--i){ -var entry=this.tryEntries[i]; -var record=entry.completion; - -if(entry.tryLoc==="root"){ - - - -return handle("end");} - - -if(entry.tryLoc<=this.prev){ -var hasCatch=hasOwn.call(entry,"catchLoc"); -var hasFinally=hasOwn.call(entry,"finallyLoc"); - -if(hasCatch&&hasFinally){ -if(this.prev=0;--i){ -var entry=this.tryEntries[i]; -if(entry.tryLoc<=this.prev&& -hasOwn.call(entry,"finallyLoc")&& -this.prev=0;--i){ -var entry=this.tryEntries[i]; -if(entry.finallyLoc===finallyLoc){ -this.complete(entry.completion,entry.afterLoc); -resetTryEntry(entry); -return ContinueSentinel;}}}, - - - - -"catch":function(tryLoc){ -for(var i=this.tryEntries.length-1;i>=0;--i){ -var entry=this.tryEntries[i]; -if(entry.tryLoc===tryLoc){ -var record=entry.completion; -if(record.type==="throw"){ -var thrown=record.arg; -resetTryEntry(entry);} - -return thrown;}} - - - - - -throw new Error("illegal catch attempt");}, - - -delegateYield:function(iterable,resultName,nextLoc){ -this.delegate={ -iterator:values(iterable), -resultName:resultName, -nextLoc:nextLoc}; - - -return ContinueSentinel;}};})( - - - - - - -typeof global==="object"?global: -typeof window==="object"?window: -typeof self==="object"?self:this); -}); -__d('ExceptionsManager',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var RCTExceptionsManager=require('NativeModules').ExceptionsManager; - -var loadSourceMap=require('loadSourceMap'); -var parseErrorStack=require('parseErrorStack'); -var stringifySafe=require('stringifySafe'); - -var sourceMapPromise; - -var exceptionID=0; - - - - -function reportException(e,isFatal){ -var currentExceptionID=++exceptionID; -if(RCTExceptionsManager){ -var stack=parseErrorStack(e); -if(isFatal){ -RCTExceptionsManager.reportFatalException(e.message,stack,currentExceptionID);}else -{ -RCTExceptionsManager.reportSoftException(e.message,stack,currentExceptionID);} - -if(__DEV__){ -(sourceMapPromise=sourceMapPromise||loadSourceMap()). -then(function(map){ -var prettyStack=parseErrorStack(e,map); -RCTExceptionsManager.updateExceptionMessage(e.message,prettyStack,currentExceptionID);}). - -catch(function(error){ - - -console.warn('Unable to load source map: '+error.message);});}}} - - - - - - - - -function handleException(e,isFatal){ - - - - -if(!e.message){ -e=new Error(e);} - - -(console._errorOriginal||console.error)(e.message); -reportException(e,isFatal);} - - - - - - -function installConsoleErrorReporter(){ - -if(console._errorOriginal){ -return;} - -console._errorOriginal=console.error.bind(console); -console.error=function reactConsoleError(){ -console._errorOriginal.apply(null,arguments); -if(!console.reportErrorsAsExceptions){ -return;} - - -if(arguments[0]&&arguments[0].stack){ -reportException(arguments[0],false);}else -{ -var str=Array.prototype.map.call(arguments,stringifySafe).join(', '); -if(str.slice(0,10)==='"Warning: '){ - - - -return;} - -var error=new Error('console.error: '+str); -error.framesToPop=1; -reportException(error,false);}}; - - -if(console.reportErrorsAsExceptions===undefined){ -console.reportErrorsAsExceptions=true;}} - - - -module.exports={handleException:handleException,installConsoleErrorReporter:installConsoleErrorReporter}; -}); -__d('loadSourceMap',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var Promise=require('Promise'); -var NativeModules=require('NativeModules'); -var SourceMapConsumer=require('SourceMap').SourceMapConsumer; -var SourceMapURL=require('react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js'); - -var RCTSourceCode=NativeModules.SourceCode; -var RCTNetworking=NativeModules.Networking; - -function loadSourceMap(){ -return fetchSourceMap(). -then(function(map){return new SourceMapConsumer(map);});} - - -function fetchSourceMap(){ -if(global.RAW_SOURCE_MAP){ -return Promise.resolve(global.RAW_SOURCE_MAP);} - - -if(!RCTSourceCode){ -return Promise.reject(new Error('RCTSourceCode module is not available'));} - - -if(!RCTNetworking){ - -return Promise.reject(new Error('RCTNetworking module is not available'));} - - -return new Promise(RCTSourceCode.getScriptText). -then(extractSourceMapURL). -then(function(url){ -if(url===null){ -return Promise.reject(new Error('No source map URL found. May be running from bundled file.'));} - -return Promise.resolve(url);}). - -then(fetch). -then(function(response){return response.text();});} - - -function extractSourceMapURL(_ref){var url=_ref.url;var text=_ref.text;var fullSourceMappingURL=_ref.fullSourceMappingURL; -if(fullSourceMappingURL){ -return fullSourceMappingURL;} - -var mapURL=SourceMapURL.getFrom(text); -if(!mapURL){ -return null;} - -var baseURL=url.match(/(.+:\/\/.*?)\//)[1]; -return baseURL+mapURL;} - - -module.exports=loadSourceMap; -}); -__d('Promise',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - - - -global.setImmediate=require('setImmediate'); -var Promise=require('promise/setimmediate/es6-extensions.js'); -require('promise/setimmediate/done.js'); - - - - -Promise.prototype.finally=function(onSettled){ -return this.then(onSettled,onSettled);}; - - - -module.exports=Promise; -}); -__d('setImmediate',function(global, require, module, exports) { module. - - - - - - - - - - - - - - - - -exports=global.setImmediate|| -require('ImmediateImplementation').setImmediate; -}); -__d('ImmediateImplementation',function(global, require, module, exports) { /** - * @generated SignedSource<<57d0446bbd1186485d372efe6b323dca>> - * - * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - * !! This file is a check-in of a static_upstream project! !! - * !! !! - * !! You should not modify this file directly. Instead: !! - * !! 1) Use `fjs use-upstream` to temporarily replace this with !! - * !! the latest version from upstream. !! - * !! 2) Make your changes, test them, etc. !! - * !! 3) Use `fjs push-upstream` to copy your changes back to !! - * !! static_upstream. !! - * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - * - * Copyright (c) 2012 Barnesandnoble.com, llc, Donavon West, and Domenic - * Denicola - * - * Permission is hereby granted, free of charge, to any person obtaining - * a copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sublicense, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * @preserve-header - * @providesModule ImmediateImplementation - */ - -(function(global,undefined){ -"use strict"; - -var nextHandle=1; -var tasksByHandle={}; -var queueHead={}; -var queueTail=queueHead; -var currentlyRunningATask=false; -var doc=global.document; -var setImmediate; - -function addFromSetImmediateArguments(args){ -var handler=args[0]; -args=Array.prototype.slice.call(args,1); -tasksByHandle[nextHandle]=function(){ -handler.apply(undefined,args);}; - -queueTail=queueTail.next={handle:nextHandle++}; -return queueTail.handle;} - - -function flushQueue(){ -var next,task; -while(!currentlyRunningATask&&(next=queueHead.next)){ -queueHead=next; -if(task=tasksByHandle[next.handle]){ -currentlyRunningATask=true; -try{ -task(); -currentlyRunningATask=false;}finally -{ -clearImmediate(next.handle); -if(currentlyRunningATask){ -currentlyRunningATask=false; - - - - - - -if(queueHead.next){ -setImmediate(flushQueue);}}}}}} - - - - - - - -function clearImmediate(handle){ -delete tasksByHandle[handle];} - - -function canUsePostMessage(){ - - -if(global.postMessage&&!global.importScripts){ -var postMessageIsAsynchronous=true; - -var onMessage=function(){ -postMessageIsAsynchronous=false; -if(global.removeEventListener){ -global.removeEventListener("message",onMessage,false);}else -{ -global.detachEvent("onmessage",onMessage);}}; - - - -if(global.addEventListener){ -global.addEventListener("message",onMessage,false);}else -if(global.attachEvent){ -global.attachEvent("onmessage",onMessage);}else -{ -return false;} - - -global.postMessage("","*"); -return postMessageIsAsynchronous;}} - - - -function installPostMessageImplementation(){ - - -var messagePrefix="setImmediate$"+Math.random()+"$"; -var onGlobalMessage=function(event){ -if(event.source===global&& -typeof event.data==="string"&& -event.data.indexOf(messagePrefix)===0){ -flushQueue();}}; - - - -if(global.addEventListener){ -global.addEventListener("message",onGlobalMessage,false);}else -{ -global.attachEvent("onmessage",onGlobalMessage);} - - -setImmediate=function(){ -var handle=addFromSetImmediateArguments(arguments); -global.postMessage(messagePrefix+handle,"*"); -return handle;};} - - - -function installMessageChannelImplementation(){ -var channel=new MessageChannel(); -channel.port1.onmessage=flushQueue; -setImmediate=function(){ -var handle=addFromSetImmediateArguments(arguments); -channel.port2.postMessage(handle); -return handle;};} - - - -function installReadyStateChangeImplementation(){ -var html=doc.documentElement; -setImmediate=function(){ -var handle=addFromSetImmediateArguments(arguments); - - -var script=doc.createElement("script"); -script.onreadystatechange=function(){ -script.onreadystatechange=null; -html.removeChild(script); -script=null; -flushQueue();}; - -html.appendChild(script); -return handle;};} - - - -function installSetTimeoutImplementation(){ -setImmediate=function(){ -setTimeout(flushQueue,0); -return addFromSetImmediateArguments(arguments);};} - - - -if(canUsePostMessage()){ - -installPostMessageImplementation();}else - -if(global.MessageChannel){ - -installMessageChannelImplementation();}else - -if(doc&&"onreadystatechange" in doc.createElement("script")){ - -installReadyStateChangeImplementation();}else - -{ - -installSetTimeoutImplementation();} - - -exports.setImmediate=setImmediate; -exports.clearImmediate=clearImmediate;})( -Function("return this")()); -}); -__d('promise/setimmediate/es6-extensions.js',function(global, require, module, exports) { 'use strict'; - - - -var Promise=require('promise/setimmediate/core.js'); - -module.exports=Promise; - - - -var TRUE=valuePromise(true); -var FALSE=valuePromise(false); -var NULL=valuePromise(null); -var UNDEFINED=valuePromise(undefined); -var ZERO=valuePromise(0); -var EMPTYSTRING=valuePromise(''); - -function valuePromise(value){ -var p=new Promise(Promise._61); -p._81=1; -p._65=value; -return p;} - -Promise.resolve=function(value){ -if(value instanceof Promise)return value; - -if(value===null)return NULL; -if(value===undefined)return UNDEFINED; -if(value===true)return TRUE; -if(value===false)return FALSE; -if(value===0)return ZERO; -if(value==='')return EMPTYSTRING; - -if(typeof value==='object'||typeof value==='function'){ -try{ -var then=value.then; -if(typeof then==='function'){ -return new Promise(then.bind(value));}} - -catch(ex) { -return new Promise(function(resolve,reject){ -reject(ex);});}} - - - -return valuePromise(value);}; - - -Promise.all=function(arr){ -var args=Array.prototype.slice.call(arr); - -return new Promise(function(resolve,reject){ -if(args.length===0)return resolve([]); -var remaining=args.length; -function res(i,val){ -if(val&&(typeof val==='object'||typeof val==='function')){ -if(val instanceof Promise&&val.then===Promise.prototype.then){ -while(val._81===3){ -val=val._65;} - -if(val._81===1)return res(i,val._65); -if(val._81===2)reject(val._65); -val.then(function(val){ -res(i,val);}, -reject); -return;}else -{ -var then=val.then; -if(typeof then==='function'){ -var p=new Promise(then.bind(val)); -p.then(function(val){ -res(i,val);}, -reject); -return;}}} - - - -args[i]=val; -if(--remaining===0){ -resolve(args);}} - - -for(var i=0;i0&&aGenerated.column>=0&& -!aOriginal&&!aSource&&!aName){ - -return;}else - -if(aGenerated&&'line' in aGenerated&&'column' in aGenerated&& -aOriginal&&'line' in aOriginal&&'column' in aOriginal&& -aGenerated.line>0&&aGenerated.column>=0&& -aOriginal.line>0&&aOriginal.column>=0&& -aSource){ - -return;}else - -{ -throw new Error('Invalid mapping: '+JSON.stringify({ -generated:aGenerated, -source:aSource, -orginal:aOriginal, -name:aName}));}}; - - - - - - - - -SourceMapGenerator.prototype._serializeMappings= -function SourceMapGenerator_serializeMappings(){ -var previousGeneratedColumn=0; -var previousGeneratedLine=1; -var previousOriginalColumn=0; -var previousOriginalLine=0; -var previousName=0; -var previousSource=0; -var result=''; -var mapping; - - - - - - -this._mappings.sort(util.compareByGeneratedPositions); - -for(var i=0,len=this._mappings.length;i0){ -if(!util.compareByGeneratedPositions(mapping,this._mappings[i-1])){ -continue;} - -result+=',';}} - - - -result+=base64VLQ.encode(mapping.generatedColumn- -previousGeneratedColumn); -previousGeneratedColumn=mapping.generatedColumn; - -if(mapping.source){ -result+=base64VLQ.encode(this._sources.indexOf(mapping.source)- -previousSource); -previousSource=this._sources.indexOf(mapping.source); - - -result+=base64VLQ.encode(mapping.originalLine-1- -previousOriginalLine); -previousOriginalLine=mapping.originalLine-1; - -result+=base64VLQ.encode(mapping.originalColumn- -previousOriginalColumn); -previousOriginalColumn=mapping.originalColumn; - -if(mapping.name){ -result+=base64VLQ.encode(this._names.indexOf(mapping.name)- -previousName); -previousName=this._names.indexOf(mapping.name);}}} - - - - -return result;}; - - -SourceMapGenerator.prototype._generateSourcesContent= -function SourceMapGenerator_generateSourcesContent(aSources,aSourceRoot){ -return aSources.map(function(source){ -if(!this._sourcesContents){ -return null;} - -if(aSourceRoot){ -source=util.relative(aSourceRoot,source);} - -var key=util.toSetString(source); -return Object.prototype.hasOwnProperty.call(this._sourcesContents, -key)? -this._sourcesContents[key]: -null;}, -this);}; - - - - - -SourceMapGenerator.prototype.toJSON= -function SourceMapGenerator_toJSON(){ -var map={ -version:this._version, -file:this._file, -sources:this._sources.toArray(), -names:this._names.toArray(), -mappings:this._serializeMappings()}; - -if(this._sourceRoot){ -map.sourceRoot=this._sourceRoot;} - -if(this._sourcesContents){ -map.sourcesContent=this._generateSourcesContent(map.sources,map.sourceRoot);} - - -return map;}; - - - - - -SourceMapGenerator.prototype.toString= -function SourceMapGenerator_toString(){ -return JSON.stringify(this);}; - - -exports.SourceMapGenerator=SourceMapGenerator;}); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -define('source-map/base64-vlq',['require','exports','module','source-map/base64'],function(require,exports,module){ - -var base64=require('./base64'); - - - - - - - - - - - - - -var VLQ_BASE_SHIFT=5; - - -var VLQ_BASE=1<>1; -return isNegative? --shifted: -shifted;} - - - - - -exports.encode=function base64VLQ_encode(aValue){ -var encoded=""; -var digit; - -var vlq=toVLQSigned(aValue); - -do { -digit=vlq&VLQ_BASE_MASK; -vlq>>>=VLQ_BASE_SHIFT; -if(vlq>0){ - - -digit|=VLQ_CONTINUATION_BIT;} - -encoded+=base64.encode(digit);}while( -vlq>0); - -return encoded;}; - - - - - - -exports.decode=function base64VLQ_decode(aStr){ -var i=0; -var strLen=aStr.length; -var result=0; -var shift=0; -var continuation,digit; - -do { -if(i>=strLen){ -throw new Error("Expected more digits in base 64 VLQ value.");} - -digit=base64.decode(aStr.charAt(i++)); -continuation=!!(digit&VLQ_CONTINUATION_BIT); -digit&=VLQ_BASE_MASK; -result=result+(digit<s2)-(s1=0&&aIdx0){ -if(str.charAt(0)===';'){ -generatedLine++; -str=str.slice(1); -previousGeneratedColumn=0;}else - -if(str.charAt(0)===','){ -str=str.slice(1);}else - -{ -mapping={}; -mapping.generatedLine=generatedLine; - - -temp=base64VLQ.decode(str); -mapping.generatedColumn=previousGeneratedColumn+temp.value; -previousGeneratedColumn=mapping.generatedColumn; -str=temp.rest; - -if(str.length>0&&!mappingSeparator.test(str.charAt(0))){ - -temp=base64VLQ.decode(str); -mapping.source=this._sources.at(previousSource+temp.value); -previousSource+=temp.value; -str=temp.rest; -if(str.length===0||mappingSeparator.test(str.charAt(0))){ -throw new Error('Found a source, but no line and column');} - - - -temp=base64VLQ.decode(str); -mapping.originalLine=previousOriginalLine+temp.value; -previousOriginalLine=mapping.originalLine; - -mapping.originalLine+=1; -str=temp.rest; -if(str.length===0||mappingSeparator.test(str.charAt(0))){ -throw new Error('Found a source and line, but no column');} - - - -temp=base64VLQ.decode(str); -mapping.originalColumn=previousOriginalColumn+temp.value; -previousOriginalColumn=mapping.originalColumn; -str=temp.rest; - -if(str.length>0&&!mappingSeparator.test(str.charAt(0))){ - -temp=base64VLQ.decode(str); -mapping.name=this._names.at(previousName+temp.value); -previousName+=temp.value; -str=temp.rest;}} - - - -this.__generatedMappings.push(mapping); -if(typeof mapping.originalLine==='number'){ -this.__originalMappings.push(mapping);}}} - - - - -this.__originalMappings.sort(util.compareByOriginalPositions);}; - - - - - - -SourceMapConsumer.prototype._findMapping= -function SourceMapConsumer_findMapping(aNeedle,aMappings,aLineName, -aColumnName,aComparator){ - - - - - -if(aNeedle[aLineName]<=0){ -throw new TypeError('Line must be greater than or equal to 1, got '+ -aNeedle[aLineName]);} - -if(aNeedle[aColumnName]<0){ -throw new TypeError('Column must be greater than or equal to 0, got '+ -aNeedle[aColumnName]);} - - -return binarySearch.search(aNeedle,aMappings,aComparator);}; - - - - - - - - - - - - - - - - - -SourceMapConsumer.prototype.originalPositionFor= -function SourceMapConsumer_originalPositionFor(aArgs){ -var needle={ -generatedLine:util.getArg(aArgs,'line'), -generatedColumn:util.getArg(aArgs,'column')}; - - -var mapping=this._findMapping(needle, -this._generatedMappings, -"generatedLine", -"generatedColumn", -util.compareByGeneratedPositions); - -if(mapping){ -var source=util.getArg(mapping,'source',null); -if(source&&this.sourceRoot){ -source=util.join(this.sourceRoot,source);} - -return { -source:source, -line:util.getArg(mapping,'originalLine',null), -column:util.getArg(mapping,'originalColumn',null), -name:util.getArg(mapping,'name',null)};} - - - -return { -source:null, -line:null, -column:null, -name:null};}; - - - - - - - - -SourceMapConsumer.prototype.sourceContentFor= -function SourceMapConsumer_sourceContentFor(aSource){ -if(!this.sourcesContent){ -return null;} - - -if(this.sourceRoot){ -aSource=util.relative(this.sourceRoot,aSource);} - - -if(this._sources.has(aSource)){ -return this.sourcesContent[this._sources.indexOf(aSource)];} - - -var url; -if(this.sourceRoot&&( -url=util.urlParse(this.sourceRoot))){ - - - - -var fileUriAbsPath=aSource.replace(/^file:\/\//,""); -if(url.scheme=="file"&& -this._sources.has(fileUriAbsPath)){ -return this.sourcesContent[this._sources.indexOf(fileUriAbsPath)];} - - -if((!url.path||url.path=="/")&& -this._sources.has("/"+aSource)){ -return this.sourcesContent[this._sources.indexOf("/"+aSource)];}} - - - -throw new Error('"'+aSource+'" is not in the SourceMap.');}; - - - - - - - - - - - - - - - - -SourceMapConsumer.prototype.generatedPositionFor= -function SourceMapConsumer_generatedPositionFor(aArgs){ -var needle={ -source:util.getArg(aArgs,'source'), -originalLine:util.getArg(aArgs,'line'), -originalColumn:util.getArg(aArgs,'column')}; - - -if(this.sourceRoot){ -needle.source=util.relative(this.sourceRoot,needle.source);} - - -var mapping=this._findMapping(needle, -this._originalMappings, -"originalLine", -"originalColumn", -util.compareByOriginalPositions); - -if(mapping){ -return { -line:util.getArg(mapping,'generatedLine',null), -column:util.getArg(mapping,'generatedColumn',null)};} - - - -return { -line:null, -column:null};}; - - - -SourceMapConsumer.GENERATED_ORDER=1; -SourceMapConsumer.ORIGINAL_ORDER=2; - - - - - - - - - - - - - - - - - -SourceMapConsumer.prototype.eachMapping= -function SourceMapConsumer_eachMapping(aCallback,aContext,aOrder){ -var context=aContext||null; -var order=aOrder||SourceMapConsumer.GENERATED_ORDER; - -var mappings; -switch(order){ -case SourceMapConsumer.GENERATED_ORDER: -mappings=this._generatedMappings; -break; -case SourceMapConsumer.ORIGINAL_ORDER: -mappings=this._originalMappings; -break; -default: -throw new Error("Unknown order of iteration.");} - - -var sourceRoot=this.sourceRoot; -mappings.map(function(mapping){ -var source=mapping.source; -if(source&&sourceRoot){ -source=util.join(sourceRoot,source);} - -return { -source:source, -generatedLine:mapping.generatedLine, -generatedColumn:mapping.generatedColumn, -originalLine:mapping.originalLine, -originalColumn:mapping.originalColumn, -name:mapping.name};}). - -forEach(aCallback,context);}; - - -exports.SourceMapConsumer=SourceMapConsumer;}); - - - - - - - - -define('source-map/binary-search',['require','exports','module'],function(require,exports,module){ - - - - - - - - - - -function recursiveSearch(aLow,aHigh,aNeedle,aHaystack,aCompare){ - - - - - - - - - - -var mid=Math.floor((aHigh-aLow)/2)+aLow; -var cmp=aCompare(aNeedle,aHaystack[mid],true); -if(cmp===0){ - -return aHaystack[mid];}else - -if(cmp>0){ - -if(aHigh-mid>1){ - -return recursiveSearch(mid,aHigh,aNeedle,aHaystack,aCompare);} - - - -return aHaystack[mid];}else - -{ - -if(mid-aLow>1){ - -return recursiveSearch(aLow,mid,aNeedle,aHaystack,aCompare);} - - - -return aLow<0? -null: -aHaystack[aLow];}} - - - - - - - - - - - - - - - - -exports.search=function search(aNeedle,aHaystack,aCompare){ -return aHaystack.length>0? -recursiveSearch(-1,aHaystack.length,aNeedle,aHaystack,aCompare): -null;};}); - - - - - - - - - -define('source-map/source-node',['require','exports','module','source-map/source-map-generator','source-map/util'],function(require,exports,module){ - -var SourceMapGenerator=require('./source-map-generator').SourceMapGenerator; -var util=require('./util'); - - - - - - - - - - - - - -function SourceNode(aLine,aColumn,aSource,aChunks,aName){ -this.children=[]; -this.sourceContents={}; -this.line=aLine===undefined?null:aLine; -this.column=aColumn===undefined?null:aColumn; -this.source=aSource===undefined?null:aSource; -this.name=aName===undefined?null:aName; -if(aChunks!=null)this.add(aChunks);} - - - - - - - - -SourceNode.fromStringWithSourceMap= -function SourceNode_fromStringWithSourceMap(aGeneratedCode,aSourceMapConsumer){ - - -var node=new SourceNode(); - - - -var remainingLines=aGeneratedCode.split('\n'); - - -var lastGeneratedLine=1,lastGeneratedColumn=0; - - - - -var lastMapping=null; - -aSourceMapConsumer.eachMapping(function(mapping){ -if(lastMapping===null){ - - - -while(lastGeneratedLine=0;i--){ -this.prepend(aChunk[i]);}}else - - -if(aChunk instanceof SourceNode||typeof aChunk==="string"){ -this.children.unshift(aChunk);}else - -{ -throw new TypeError( -"Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+aChunk);} - - -return this;}; - - - - - - - - - -SourceNode.prototype.walk=function SourceNode_walk(aFn){ -var chunk; -for(var i=0,len=this.children.length;i0){ -newChildren=[]; -for(i=0;i-1?upcased:method;} - - -function Request(input,options){ -options=options||{}; -var body=options.body; -if(Request.prototype.isPrototypeOf(input)){ -if(input.bodyUsed){ -throw new TypeError('Already read');} - -this.url=input.url; -this.credentials=input.credentials; -if(!options.headers){ -this.headers=new Headers(input.headers);} - -this.method=input.method; -this.mode=input.mode; -if(!body){ -body=input._bodyInit; -input.bodyUsed=true;}}else - -{ -this.url=input;} - - -this.credentials=options.credentials||this.credentials||'omit'; -if(options.headers||!this.headers){ -this.headers=new Headers(options.headers);} - -this.method=normalizeMethod(options.method||this.method||'GET'); -this.mode=options.mode||this.mode||null; -this.referrer=null; - -if((this.method==='GET'||this.method==='HEAD')&&body){ -throw new TypeError('Body not allowed for GET or HEAD requests');} - -this._initBody(body);} - - -Request.prototype.clone=function(){ -return new Request(this);}; - - -function decode(body){ -var form=new FormData(); -body.trim().split('&').forEach(function(bytes){ -if(bytes){ -var split=bytes.split('='); -var name=split.shift().replace(/\+/g,' '); -var value=split.join('=').replace(/\+/g,' '); -form.append(decodeURIComponent(name),decodeURIComponent(value));}}); - - -return form;} - - -function headers(xhr){ -var head=new Headers(); -var pairs=xhr.getAllResponseHeaders().trim().split('\n'); -pairs.forEach(function(header){ -var split=header.trim().split(':'); -var key=split.shift().trim(); -var value=split.join(':').trim(); -head.append(key,value);}); - -return head;} - - -Body.call(Request.prototype); - -function Response(bodyInit,options){ -if(!options){ -options={};} - - -this._initBody(bodyInit); -this.type='default'; -this.url=null; -this.status=options.status; -this.ok=this.status>=200&&this.status<300; -this.statusText=options.statusText; -this.headers=options.headers instanceof Headers?options.headers:new Headers(options.headers); -this.url=options.url||'';} - - -Response.prototype.clone=function(){ -return new Response(this._bodyInit,{ -status:this.status, -statusText:this.statusText, -headers:new Headers(this.headers), -url:this.url});}; - - - -Body.call(Response.prototype); - -self.Headers=Headers; -self.Request=Request; -self.Response=Response; - -self.fetch=function(input,init){ -var request; -if(Request.prototype.isPrototypeOf(input)&&!init){ -request=input;}else -{ -request=new Request(input,init);} - - -return new Promise(function(resolve,reject){ -var xhr=new XMLHttpRequest(); - -function responseURL(){ -if('responseURL' in xhr){ -return xhr.responseURL;} - - - -if(/^X-Request-URL:/m.test(xhr.getAllResponseHeaders())){ -return xhr.getResponseHeader('X-Request-URL');} - - -return;} - - -xhr.onload=function(){ -var status=xhr.status===1223?204:xhr.status; -if(status<100||status>599){ -reject(new TypeError('Network request failed')); -return;} - -var options={ -status:status, -statusText:xhr.statusText, -headers:headers(xhr), -url:responseURL()}; - -var body='response' in xhr?xhr.response:xhr.responseText; -resolve(new Response(body,options));}; - - -xhr.onerror=function(){ -reject(new TypeError('Network request failed'));}; - - -xhr.open(request.method,request.url,true); - -if(request.credentials==='include'){ -xhr.withCredentials=true;} - - -if('responseType' in xhr&&support.blob){ -xhr.responseType='blob';} - - -request.headers.forEach(function(value,name){ -xhr.setRequestHeader(name,value);}); - - -xhr.send(typeof request._bodyInit==='undefined'?null:request._bodyInit);});}; - - -self.fetch.polyfill=true;})(); - - - - -module.exports=self; -}); -__d('Geolocation',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var RCTDeviceEventEmitter=require('RCTDeviceEventEmitter'); -var RCTLocationObserver=require('NativeModules').LocationObserver; - -var invariant=require('invariant'); -var logError=require('logError'); -var warning=require('warning'); - -var subscriptions=[]; - -var updatesEnabled=false; - - - - - - - - - - - - - - - - - - - - - - - - - - -var Geolocation={ - - - - - -getCurrentPosition:function( -geo_success, -geo_error, -geo_options) -{ -invariant( -typeof geo_success==='function', -'Must provide a valid geo_success callback.'); - -RCTLocationObserver.getCurrentPosition( -geo_options||{}, -geo_success, -geo_error||logError);}, - - - - - - - -watchPosition:function(success,error,options){ -if(!updatesEnabled){ -RCTLocationObserver.startObserving(options||{}); -updatesEnabled=true;} - -var watchID=subscriptions.length; -subscriptions.push([ -RCTDeviceEventEmitter.addListener( -'geolocationDidChange', -success), - -error?RCTDeviceEventEmitter.addListener( -'geolocationError', -error): -null]); - -return watchID;}, - - -clearWatch:function(watchID){ -var sub=subscriptions[watchID]; -if(!sub){ - - -return;} - - -sub[0].remove(); - -var sub1=sub[1];sub1&&sub1.remove(); -subscriptions[watchID]=undefined; -var noWatchers=true; -for(var ii=0;ii0){ -var types=Array(arguments.length); -for(var i=0;i1){ -var index=id.indexOf(SEPARATOR,1); -return index>-1?id.substr(0,index):id;} - -return null;}, - - - - - - - - - - - - - - - - -traverseEnterLeave:function(leaveID,enterID,cb,upArg,downArg){ -var ancestorID=getFirstCommonAncestorID(leaveID,enterID); -if(ancestorID!==leaveID){ -traverseParentPath(leaveID,ancestorID,cb,upArg,false,true);} - -if(ancestorID!==enterID){ -traverseParentPath(ancestorID,enterID,cb,downArg,true,false);}}, - - - - - - - - - - - - - -traverseTwoPhase:function(targetID,cb,arg){ -if(targetID){ -traverseParentPath('',targetID,cb,arg,true,false); -traverseParentPath(targetID,'',cb,arg,false,true);}}, - - - - - - -traverseTwoPhaseSkipTarget:function(targetID,cb,arg){ -if(targetID){ -traverseParentPath('',targetID,cb,arg,true,true); -traverseParentPath(targetID,'',cb,arg,true,true);}}, - - - - - - - - - - - - - - - -traverseAncestors:function(targetID,cb,arg){ -traverseParentPath('',targetID,cb,arg,true,false);}, - - -getFirstCommonAncestorID:getFirstCommonAncestorID, - - - - - -_getNextDescendantID:getNextDescendantID, - -isAncestorIDOf:isAncestorIDOf, - -SEPARATOR:SEPARATOR}; - - - -module.exports=ReactInstanceHandles; -}); -__d('ReactRootIndex',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var ReactRootIndexInjection={ - - - -injectCreateReactRootIndex:function(_createReactRootIndex){ -ReactRootIndex.createReactRootIndex=_createReactRootIndex;}}; - - - -var ReactRootIndex={ -createReactRootIndex:null, -injection:ReactRootIndexInjection}; - - -module.exports=ReactRootIndex; -}); -__d('ReactNativeMount',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactElement=require('ReactElement'); -var ReactNativeTagHandles=require('ReactNativeTagHandles'); -var ReactPerf=require('ReactPerf'); -var ReactReconciler=require('ReactReconciler'); -var ReactUpdateQueue=require('ReactUpdateQueue'); -var ReactUpdates=require('ReactUpdates'); -var UIManager=require('UIManager'); - -var emptyObject=require('emptyObject'); -var instantiateReactComponent=require('instantiateReactComponent'); -var shouldUpdateReactComponent=require('shouldUpdateReactComponent'); - -function instanceNumberToChildRootID(rootNodeID,instanceNumber){ -return rootNodeID+'['+instanceNumber+']';} - - - - - - - -var TopLevelWrapper=function(){}; -TopLevelWrapper.prototype.isReactComponent={}; -if(__DEV__){ -TopLevelWrapper.displayName='TopLevelWrapper';} - -TopLevelWrapper.prototype.render=function(){ - -return this.props;}; - - - - - - - - - - -function mountComponentIntoNode( -componentInstance, -rootID, -container, -transaction){ -var markup=ReactReconciler.mountComponent( -componentInstance,rootID,transaction,emptyObject); - -componentInstance._renderedComponent._topLevelWrapper=componentInstance; -ReactNativeMount._mountImageIntoNode(markup,container);} - - - - - - - - - -function batchedMountComponentIntoNode( -componentInstance, -rootID, -container){ -var transaction=ReactUpdates.ReactReconcileTransaction.getPooled(); -transaction.perform( -mountComponentIntoNode, -null, -componentInstance, -rootID, -container, -transaction); - -ReactUpdates.ReactReconcileTransaction.release(transaction);} - - - - - - -var ReactNativeMount={ -instanceCount:0, - -_instancesByContainerID:{}, - - -findNodeHandle:require('findNodeHandle'), -nativeTagToRootNodeID:function(nativeTag){ -return ReactNativeTagHandles.tagToRootNodeID[nativeTag];}, - - - - - - -renderComponent:function( -nextElement, -containerTag, -callback) -{ -var nextWrappedElement=new ReactElement( -TopLevelWrapper, -null, -null, -null, -null, -null, -nextElement); - - -var topRootNodeID=ReactNativeTagHandles.tagToRootNodeID[containerTag]; -if(topRootNodeID){ -var prevComponent=ReactNativeMount._instancesByContainerID[topRootNodeID]; -if(prevComponent){ -var prevWrappedElement=prevComponent._currentElement; -var prevElement=prevWrappedElement.props; -if(shouldUpdateReactComponent(prevElement,nextElement)){ -ReactUpdateQueue.enqueueElementInternal(prevComponent,nextWrappedElement); -if(callback){ -ReactUpdateQueue.enqueueCallbackInternal(prevComponent,callback);} - -return prevComponent;}else -{ -ReactNativeMount.unmountComponentAtNode(containerTag);}}} - - - - -if(!ReactNativeTagHandles.reactTagIsNativeTopRootID(containerTag)){ -console.error('You cannot render into anything but a top root'); -return;} - - -var topRootNodeID=ReactNativeTagHandles.allocateRootNodeIDForTag(containerTag); -ReactNativeTagHandles.associateRootNodeIDWithMountedNodeHandle( -topRootNodeID, -containerTag); - - -var instance=instantiateReactComponent(nextWrappedElement); -ReactNativeMount._instancesByContainerID[topRootNodeID]=instance; - -var childRootNodeID=instanceNumberToChildRootID( -topRootNodeID, -ReactNativeMount.instanceCount++); - - - - - - -ReactUpdates.batchedUpdates( -batchedMountComponentIntoNode, -instance, -childRootNodeID, -topRootNodeID); - -var component=instance.getPublicInstance(); -if(callback){ -callback.call(component);} - -return component;}, - - - - - - -_mountImageIntoNode:ReactPerf.measure( - -'ReactComponentBrowserEnvironment', -'mountImageIntoNode', -function(mountImage,containerID){ - - -ReactNativeTagHandles.associateRootNodeIDWithMountedNodeHandle( -mountImage.rootNodeID, -mountImage.tag); - -var addChildTags=[mountImage.tag]; -var addAtIndices=[0]; -UIManager.manageChildren( -ReactNativeTagHandles.mostRecentMountedNodeHandleForRootNodeID(containerID), -null, -null, -addChildTags, -addAtIndices, -null);}), - - - - - - - - - - - - -unmountComponentAtNodeAndRemoveContainer:function( -containerTag) -{ -ReactNativeMount.unmountComponentAtNode(containerTag); - -UIManager.removeRootView(containerTag);}, - - - - - - - -unmountComponentAtNode:function(containerTag){ -if(!ReactNativeTagHandles.reactTagIsNativeTopRootID(containerTag)){ -console.error('You cannot render into anything but a top root'); -return false;} - - -var containerID=ReactNativeTagHandles.tagToRootNodeID[containerTag]; -var instance=ReactNativeMount._instancesByContainerID[containerID]; -if(!instance){ -return false;} - -ReactNativeMount.unmountComponentFromNode(instance,containerID); -delete ReactNativeMount._instancesByContainerID[containerID]; -return true;}, - - - - - - - - - - - -unmountComponentFromNode:function( -instance, -containerID) -{ - -ReactReconciler.unmountComponent(instance); -var containerTag= -ReactNativeTagHandles.mostRecentMountedNodeHandleForRootNodeID(containerID); -UIManager.removeSubviewsFromContainerWithID(containerTag);}, - - -getNode:function(rootNodeID){ -return ReactNativeTagHandles.rootNodeIDToTag[rootNodeID];}, - - -getID:function(nativeTag){ -return ReactNativeTagHandles.tagToRootNodeID[nativeTag];}}; - - - -ReactNativeMount.renderComponent=ReactPerf.measure( -'ReactMount', -'_renderNewRootComponent', -ReactNativeMount.renderComponent); - - -module.exports=ReactNativeMount; -}); -__d('ReactReconciler',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactRef=require('ReactRef'); - - - - - -function attachRefs(){ -ReactRef.attachRefs(this,this._currentElement);} - - -var ReactReconciler={ - - - - - - - - - - - -mountComponent:function(internalInstance,rootID,transaction,context){ -var markup=internalInstance.mountComponent(rootID,transaction,context); -if(internalInstance._currentElement&& -internalInstance._currentElement.ref!=null){ -transaction.getReactMountReady().enqueue(attachRefs,internalInstance);} - -return markup;}, - - - - - - - - -unmountComponent:function(internalInstance){ -ReactRef.detachRefs(internalInstance,internalInstance._currentElement); -internalInstance.unmountComponent();}, - - - - - - - - - - - -receiveComponent:function( -internalInstance,nextElement,transaction,context) -{ -var prevElement=internalInstance._currentElement; - -if(nextElement===prevElement&& -context===internalInstance._context) -{ - - - - - - - - - - -return;} - - -var refsChanged=ReactRef.shouldUpdateRefs( -prevElement, -nextElement); - - -if(refsChanged){ -ReactRef.detachRefs(internalInstance,prevElement);} - - -internalInstance.receiveComponent(nextElement,transaction,context); - -if(refsChanged&& -internalInstance._currentElement&& -internalInstance._currentElement.ref!=null){ -transaction.getReactMountReady().enqueue(attachRefs,internalInstance);}}, - - - - - - - - - - -performUpdateIfNecessary:function( -internalInstance, -transaction) -{ -internalInstance.performUpdateIfNecessary(transaction);}}; - - - - -module.exports=ReactReconciler; -}); -__d('ReactRef',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactOwner=require('ReactOwner'); - -var ReactRef={}; - -function attachRef(ref,component,owner){ -if(typeof ref==='function'){ -ref(component.getPublicInstance());}else -{ - -ReactOwner.addComponentAsRefTo(component,ref,owner);}} - - - -function detachRef(ref,component,owner){ -if(typeof ref==='function'){ -ref(null);}else -{ - -ReactOwner.removeComponentAsRefFrom(component,ref,owner);}} - - - -ReactRef.attachRefs=function(instance,element){ -if(element===null||element===false){ -return;} - -var ref=element.ref; -if(ref!=null){ -attachRef(ref,instance,element._owner);}}; - - - -ReactRef.shouldUpdateRefs=function(prevElement,nextElement){ - - - - - - - - - - - - -var prevEmpty=prevElement===null||prevElement===false; -var nextEmpty=nextElement===null||nextElement===false; - -return ( - -prevEmpty||nextEmpty|| -nextElement._owner!==prevElement._owner|| -nextElement.ref!==prevElement.ref);}; - - - -ReactRef.detachRefs=function(instance,element){ -if(element===null||element===false){ -return;} - -var ref=element.ref; -if(ref!=null){ -detachRef(ref,instance,element._owner);}}; - - - -module.exports=ReactRef; -}); -__d('ReactOwner',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var invariant=require('invariant'); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var ReactOwner={ - - - - - - -isValidOwner:function(object){ -return !!( -object&& -typeof object.attachRef==='function'&& -typeof object.detachRef==='function');}, - - - - - - - - - - - - -addComponentAsRefTo:function(component,ref,owner){ -invariant( -ReactOwner.isValidOwner(owner), -'addComponentAsRefTo(...): Only a ReactOwner can have refs. You might '+ -'be adding a ref to a component that was not created inside a component\'s '+ -'`render` method, or you have multiple copies of React loaded '+ -'(details: https://fb.me/react-refs-must-have-owner).'); - -owner.attachRef(ref,component);}, - - - - - - - - - - - -removeComponentAsRefFrom:function(component,ref,owner){ -invariant( -ReactOwner.isValidOwner(owner), -'removeComponentAsRefFrom(...): Only a ReactOwner can have refs. You might '+ -'be removing a ref to a component that was not created inside a component\'s '+ -'`render` method, or you have multiple copies of React loaded '+ -'(details: https://fb.me/react-refs-must-have-owner).'); - - - -if(owner.getPublicInstance().refs[ref]===component.getPublicInstance()){ -owner.detachRef(ref);}}}; - - - - - -module.exports=ReactOwner; -}); -__d('ReactUpdateQueue',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactCurrentOwner=require('ReactCurrentOwner'); -var ReactElement=require('ReactElement'); -var ReactInstanceMap=require('ReactInstanceMap'); -var ReactUpdates=require('ReactUpdates'); - -var assign=require('Object.assign'); -var invariant=require('invariant'); -var warning=require('warning'); - -function enqueueUpdate(internalInstance){ -ReactUpdates.enqueueUpdate(internalInstance);} - - -function getInternalInstanceReadyForUpdate(publicInstance,callerName){ -var internalInstance=ReactInstanceMap.get(publicInstance); -if(!internalInstance){ -if(__DEV__){ - - - -warning( -!callerName, -'%s(...): Can only update a mounted or mounting component. '+ -'This usually means you called %s() on an unmounted component. '+ -'This is a no-op. Please check the code for the %s component.', -callerName, -callerName, -publicInstance.constructor.displayName);} - - -return null;} - - -if(__DEV__){ -warning( -ReactCurrentOwner.current==null, -'%s(...): Cannot update during an existing state transition '+ -'(such as within `render`). Render methods should be a pure function '+ -'of props and state.', -callerName);} - - - -return internalInstance;} - - - - - - -var ReactUpdateQueue={ - - - - - - - - -isMounted:function(publicInstance){ -if(__DEV__){ -var owner=ReactCurrentOwner.current; -if(owner!==null){ -warning( -owner._warnedAboutRefsInRender, -'%s is accessing isMounted inside its render() function. '+ -'render() should be a pure function of props and state. It should '+ -'never access something that requires stale data from the previous '+ -'render, such as refs. Move this logic to componentDidMount and '+ -'componentDidUpdate instead.', -owner.getName()||'A component'); - -owner._warnedAboutRefsInRender=true;}} - - -var internalInstance=ReactInstanceMap.get(publicInstance); -if(internalInstance){ - - - -return !!internalInstance._renderedComponent;}else -{ -return false;}}, - - - - - - - - - - - -enqueueCallback:function(publicInstance,callback){ -invariant( -typeof callback==='function', -'enqueueCallback(...): You called `setProps`, `replaceProps`, '+ -'`setState`, `replaceState`, or `forceUpdate` with a callback that '+ -'isn\'t callable.'); - -var internalInstance=getInternalInstanceReadyForUpdate(publicInstance); - - - - - - -if(!internalInstance){ -return null;} - - -if(internalInstance._pendingCallbacks){ -internalInstance._pendingCallbacks.push(callback);}else -{ -internalInstance._pendingCallbacks=[callback];} - - - - - -enqueueUpdate(internalInstance);}, - - -enqueueCallbackInternal:function(internalInstance,callback){ -invariant( -typeof callback==='function', -'enqueueCallback(...): You called `setProps`, `replaceProps`, '+ -'`setState`, `replaceState`, or `forceUpdate` with a callback that '+ -'isn\'t callable.'); - -if(internalInstance._pendingCallbacks){ -internalInstance._pendingCallbacks.push(callback);}else -{ -internalInstance._pendingCallbacks=[callback];} - -enqueueUpdate(internalInstance);}, - - - - - - - - - - - - - - - -enqueueForceUpdate:function(publicInstance){ -var internalInstance=getInternalInstanceReadyForUpdate( -publicInstance, -'forceUpdate'); - - -if(!internalInstance){ -return;} - - -internalInstance._pendingForceUpdate=true; - -enqueueUpdate(internalInstance);}, - - - - - - - - - - - - - -enqueueReplaceState:function(publicInstance,completeState){ -var internalInstance=getInternalInstanceReadyForUpdate( -publicInstance, -'replaceState'); - - -if(!internalInstance){ -return;} - - -internalInstance._pendingStateQueue=[completeState]; -internalInstance._pendingReplaceState=true; - -enqueueUpdate(internalInstance);}, - - - - - - - - - - - - -enqueueSetState:function(publicInstance,partialState){ -var internalInstance=getInternalInstanceReadyForUpdate( -publicInstance, -'setState'); - - -if(!internalInstance){ -return;} - - -var queue= -internalInstance._pendingStateQueue||( -internalInstance._pendingStateQueue=[]); -queue.push(partialState); - -enqueueUpdate(internalInstance);}, - - - - - - - - - -enqueueSetProps:function(publicInstance,partialProps){ -var internalInstance=getInternalInstanceReadyForUpdate( -publicInstance, -'setProps'); - -if(!internalInstance){ -return;} - -ReactUpdateQueue.enqueueSetPropsInternal(internalInstance,partialProps);}, - - -enqueueSetPropsInternal:function(internalInstance,partialProps){ -var topLevelWrapper=internalInstance._topLevelWrapper; -invariant( -topLevelWrapper, -'setProps(...): You called `setProps` on a '+ -'component with a parent. This is an anti-pattern since props will '+ -'get reactively updated when rendered. Instead, change the owner\'s '+ -'`render` method to pass the correct value as props to the component '+ -'where it is created.'); - - - - -var wrapElement=topLevelWrapper._pendingElement|| -topLevelWrapper._currentElement; -var element=wrapElement.props; -var props=assign({},element.props,partialProps); -topLevelWrapper._pendingElement=ReactElement.cloneAndReplaceProps( -wrapElement, -ReactElement.cloneAndReplaceProps(element,props)); - - -enqueueUpdate(topLevelWrapper);}, - - - - - - - - - -enqueueReplaceProps:function(publicInstance,props){ -var internalInstance=getInternalInstanceReadyForUpdate( -publicInstance, -'replaceProps'); - -if(!internalInstance){ -return;} - -ReactUpdateQueue.enqueueReplacePropsInternal(internalInstance,props);}, - - -enqueueReplacePropsInternal:function(internalInstance,props){ -var topLevelWrapper=internalInstance._topLevelWrapper; -invariant( -topLevelWrapper, -'replaceProps(...): You called `replaceProps` on a '+ -'component with a parent. This is an anti-pattern since props will '+ -'get reactively updated when rendered. Instead, change the owner\'s '+ -'`render` method to pass the correct value as props to the component '+ -'where it is created.'); - - - - -var wrapElement=topLevelWrapper._pendingElement|| -topLevelWrapper._currentElement; -var element=wrapElement.props; -topLevelWrapper._pendingElement=ReactElement.cloneAndReplaceProps( -wrapElement, -ReactElement.cloneAndReplaceProps(element,props)); - - -enqueueUpdate(topLevelWrapper);}, - - -enqueueElementInternal:function(internalInstance,newElement){ -internalInstance._pendingElement=newElement; -enqueueUpdate(internalInstance);}}; - - - - -module.exports=ReactUpdateQueue; -}); -__d('ReactUpdates',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var CallbackQueue=require('CallbackQueue'); -var PooledClass=require('PooledClass'); -var ReactPerf=require('ReactPerf'); -var ReactReconciler=require('ReactReconciler'); -var Transaction=require('Transaction'); - -var assign=require('Object.assign'); -var invariant=require('invariant'); - -var dirtyComponents=[]; -var asapCallbackQueue=CallbackQueue.getPooled(); -var asapEnqueued=false; - -var batchingStrategy=null; - -function ensureInjected(){ -invariant( -ReactUpdates.ReactReconcileTransaction&&batchingStrategy, -'ReactUpdates: must inject a reconcile transaction class and batching '+ -'strategy');} - - - -var NESTED_UPDATES={ -initialize:function(){ -this.dirtyComponentsLength=dirtyComponents.length;}, - -close:function(){ -if(this.dirtyComponentsLength!==dirtyComponents.length){ - - - - - -dirtyComponents.splice(0,this.dirtyComponentsLength); -flushBatchedUpdates();}else -{ -dirtyComponents.length=0;}}}; - - - - -var UPDATE_QUEUEING={ -initialize:function(){ -this.callbackQueue.reset();}, - -close:function(){ -this.callbackQueue.notifyAll();}}; - - - -var TRANSACTION_WRAPPERS=[NESTED_UPDATES,UPDATE_QUEUEING]; - -function ReactUpdatesFlushTransaction(){ -this.reinitializeTransaction(); -this.dirtyComponentsLength=null; -this.callbackQueue=CallbackQueue.getPooled(); -this.reconcileTransaction= -ReactUpdates.ReactReconcileTransaction.getPooled(false);} - - -assign( -ReactUpdatesFlushTransaction.prototype, -Transaction.Mixin, -{ -getTransactionWrappers:function(){ -return TRANSACTION_WRAPPERS;}, - - -destructor:function(){ -this.dirtyComponentsLength=null; -CallbackQueue.release(this.callbackQueue); -this.callbackQueue=null; -ReactUpdates.ReactReconcileTransaction.release(this.reconcileTransaction); -this.reconcileTransaction=null;}, - - -perform:function(method,scope,a){ - - -return Transaction.Mixin.perform.call( -this, -this.reconcileTransaction.perform, -this.reconcileTransaction, -method, -scope, -a);}}); - - - - - -PooledClass.addPoolingTo(ReactUpdatesFlushTransaction); - -function batchedUpdates(callback,a,b,c,d,e){ -ensureInjected(); -batchingStrategy.batchedUpdates(callback,a,b,c,d,e);} - - - - - - - - - -function mountOrderComparator(c1,c2){ -return c1._mountOrder-c2._mountOrder;} - - -function runBatchedUpdates(transaction){ -var len=transaction.dirtyComponentsLength; -invariant( -len===dirtyComponents.length, -'Expected flush transaction\'s stored dirty-components length (%s) to '+ -'match dirty-components array length (%s).', -len, -dirtyComponents.length); - - - - - -dirtyComponents.sort(mountOrderComparator); - -for(var i=0;i component.'); - -this._rootNodeID=rootID; -var tag=ReactNativeTagHandles.allocateTag(); -var nativeTopRootID=ReactNativeTagHandles.getNativeTopRootIDFromNodeID(rootID); -UIManager.createView( -tag, -'RCTRawText', -nativeTopRootID?ReactNativeTagHandles.rootNodeIDToTag[nativeTopRootID]:null, -{text:this._stringText}); - -return { -rootNodeID:rootID, -tag:tag};}, - - - -receiveComponent:function(nextText,transaction,context){ -if(nextText!==this._currentElement){ -this._currentElement=nextText; -var nextStringText=''+nextText; -if(nextStringText!==this._stringText){ -this._stringText=nextStringText; -UIManager.updateView( -ReactNativeTagHandles.mostRecentMountedNodeHandleForRootNodeID( -this._rootNodeID), - -'RCTRawText', -{text:this._stringText});}}}, - - - - - -unmountComponent:function(){ -this._currentElement=null; -this._stringText=null; -this._rootNodeID=null;}}); - - - - -module.exports=ReactNativeTextComponent; -}); -__d('RCTDebugComponentOwnership',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - -var BatchedBridge=require('BatchedBridge'); -var DebugComponentOwnershipModule=require('NativeModules').DebugComponentOwnershipModule; -var InspectorUtils=require('InspectorUtils'); -var ReactNativeTagHandles=require('ReactNativeTagHandles'); - -function componentToString(component){ -return component.getName?component.getName():'Unknown';} - - -function getRootTagForTag(tag){ -var rootNodeID=ReactNativeTagHandles.tagToRootNodeID[tag]; -if(!rootNodeID){ -return null;} - -var rootID=ReactNativeTagHandles.getNativeTopRootIDFromNodeID(rootNodeID); -if(!rootID){ -return null;} - -return ReactNativeTagHandles.rootNodeIDToTag[rootID];} - - -var RCTDebugComponentOwnership={ - - - - - - - - -getOwnerHierarchy:function(requestID,tag){ -var rootTag=getRootTagForTag(tag); -var instance=InspectorUtils.findInstanceByNativeTag(rootTag,tag); -var ownerHierarchy=instance? -InspectorUtils.getOwnerHierarchy(instance).map(componentToString): -null; -DebugComponentOwnershipModule.receiveOwnershipHierarchy(requestID,tag,ownerHierarchy);}}; - - - -BatchedBridge.registerCallableModule( -'RCTDebugComponentOwnership', -RCTDebugComponentOwnership); - - -module.exports=RCTDebugComponentOwnership; -}); -__d('InspectorUtils',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -var ReactInstanceHandles=require('ReactInstanceHandles'); -var ReactInstanceMap=require('ReactInstanceMap'); -var ReactNativeMount=require('ReactNativeMount'); -var ReactNativeTagHandles=require('ReactNativeTagHandles'); - -function traverseOwnerTreeUp(hierarchy,instance){ -if(instance){ -hierarchy.unshift(instance); -traverseOwnerTreeUp(hierarchy,instance._currentElement._owner);}} - - - -function findInstance(component,targetID){ -if(targetID===findRootNodeID(component)){ -return component;} - -if(component._renderedComponent){ -return findInstance(component._renderedComponent,targetID);}else -{ -for(var key in component._renderedChildren){ -var child=component._renderedChildren[key]; -if(ReactInstanceHandles.isAncestorIDOf(findRootNodeID(child),targetID)){ -var instance=findInstance(child,targetID); -if(instance){ -return instance;}}}}} - - - - - - -function findRootNodeID(component){ -var internalInstance=ReactInstanceMap.get(component); -return internalInstance?internalInstance._rootNodeID:component._rootNodeID;} - - -function findInstanceByNativeTag(rootTag,nativeTag){ -var containerID=ReactNativeTagHandles.tagToRootNodeID[rootTag]; -var rootInstance=ReactNativeMount._instancesByContainerID[containerID]; -var targetID=ReactNativeTagHandles.tagToRootNodeID[nativeTag]; -if(!targetID){ -return undefined;} - -return findInstance(rootInstance,targetID);} - - -function getOwnerHierarchy(instance){ -var hierarchy=[]; -traverseOwnerTreeUp(hierarchy,instance); -return hierarchy;} - - -module.exports={findInstanceByNativeTag:findInstanceByNativeTag,getOwnerHierarchy:getOwnerHierarchy}; -}); -__d('PerformanceLogger',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -var BatchedBridge=require('BatchedBridge'); - -var performanceNow=require('performanceNow'); - -var timespans={}; -var extras={}; - - - - - -var PerformanceLogger={ -addTimespan:function(key,lengthInMs,description){ -if(timespans[key]){ -if(__DEV__){ -console.log( -'PerformanceLogger: Attempting to add a timespan that already exists ', -key);} - - -return;} - - -timespans[key]={ -description:description, -totalTime:lengthInMs};}, - - - -startTimespan:function(key,description){ -if(timespans[key]){ -if(__DEV__){ -console.log( -'PerformanceLogger: Attempting to start a timespan that already exists ', -key);} - - -return;} - - -timespans[key]={ -description:description, -startTime:performanceNow()};}, - - - -stopTimespan:function(key){ -if(!timespans[key]||!timespans[key].startTime){ -if(__DEV__){ -console.log( -'PerformanceLogger: Attempting to end a timespan that has not started ', -key);} - - -return;} - -if(timespans[key].endTime){ -if(__DEV__){ -console.log( -'PerformanceLogger: Attempting to end a timespan that has already ended ', -key);} - - -return;} - - -timespans[key].endTime=performanceNow(); -timespans[key].totalTime= -timespans[key].endTime-timespans[key].startTime;}, - - -clear:function(){ -timespans={}; -extras={};}, - - -clearExceptTimespans:function(keys){ -timespans=Object.keys(timespans).reduce(function(previous,key){ -if(keys.indexOf(key)!==-1){ -previous[key]=timespans[key];} - -return previous;}, -{}); -extras={};}, - - -getTimespans:function(){ -return timespans;}, - - -hasTimespan:function(key){ -return !!timespans[key];}, - - -logTimespans:function(){ -for(var key in timespans){ -if(timespans[key].totalTime){ -console.log(key+': '+timespans[key].totalTime+'ms');}}}, - - - - -addTimespans:function(newTimespans,labels){ -for(var i=0,l=newTimespans.length;i-1, -'EventPluginRegistry: Cannot inject event plugins that do not exist in '+ -'the plugin ordering, `%s`.', -pluginName); - -if(EventPluginRegistry.plugins[pluginIndex]){ -continue;} - -invariant( -PluginModule.extractEvents, -'EventPluginRegistry: Event plugins must implement an `extractEvents` '+ -'method, but `%s` does not.', -pluginName); - -EventPluginRegistry.plugins[pluginIndex]=PluginModule; -var publishedEvents=PluginModule.eventTypes; -for(var eventName in publishedEvents){ -invariant( -publishEventForPlugin( -publishedEvents[eventName], -PluginModule, -eventName), - -'EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.', -eventName, -pluginName);}}} - - - - - - - - - - - - - -function publishEventForPlugin(dispatchConfig,PluginModule,eventName){ -invariant( -!EventPluginRegistry.eventNameDispatchConfigs.hasOwnProperty(eventName), -'EventPluginHub: More than one plugin attempted to publish the same '+ -'event name, `%s`.', -eventName); - -EventPluginRegistry.eventNameDispatchConfigs[eventName]=dispatchConfig; - -var phasedRegistrationNames=dispatchConfig.phasedRegistrationNames; -if(phasedRegistrationNames){ -for(var phaseName in phasedRegistrationNames){ -if(phasedRegistrationNames.hasOwnProperty(phaseName)){ -var phasedRegistrationName=phasedRegistrationNames[phaseName]; -publishRegistrationName( -phasedRegistrationName, -PluginModule, -eventName);}} - - - -return true;}else -if(dispatchConfig.registrationName){ -publishRegistrationName( -dispatchConfig.registrationName, -PluginModule, -eventName); - -return true;} - -return false;} - - - - - - - - - - -function publishRegistrationName(registrationName,PluginModule,eventName){ -invariant( -!EventPluginRegistry.registrationNameModules[registrationName], -'EventPluginHub: More than one plugin attempted to publish the same '+ -'registration name, `%s`.', -registrationName); - -EventPluginRegistry.registrationNameModules[registrationName]=PluginModule; -EventPluginRegistry.registrationNameDependencies[registrationName]= -PluginModule.eventTypes[eventName].dependencies;} - - - - - - - -var EventPluginRegistry={ - - - - -plugins:[], - - - - -eventNameDispatchConfigs:{}, - - - - -registrationNameModules:{}, - - - - -registrationNameDependencies:{}, - - - - - - - - - - -injectEventPluginOrder:function(InjectedEventPluginOrder){ -invariant( -!EventPluginOrder, -'EventPluginRegistry: Cannot inject event plugin ordering more than '+ -'once. You are likely trying to load more than one copy of React.'); - - -EventPluginOrder=Array.prototype.slice.call(InjectedEventPluginOrder); -recomputePluginOrdering();}, - - - - - - - - - - - - -injectEventPluginsByName:function(injectedNamesToPlugins){ -var isOrderingDirty=false; -for(var pluginName in injectedNamesToPlugins){ -if(!injectedNamesToPlugins.hasOwnProperty(pluginName)){ -continue;} - -var PluginModule=injectedNamesToPlugins[pluginName]; -if(!namesToPlugins.hasOwnProperty(pluginName)|| -namesToPlugins[pluginName]!==PluginModule){ -invariant( -!namesToPlugins[pluginName], -'EventPluginRegistry: Cannot inject two different event plugins '+ -'using the same name, `%s`.', -pluginName); - -namesToPlugins[pluginName]=PluginModule; -isOrderingDirty=true;}} - - -if(isOrderingDirty){ -recomputePluginOrdering();}}, - - - - - - - - - - -getPluginModuleForEvent:function(event){ -var dispatchConfig=event.dispatchConfig; -if(dispatchConfig.registrationName){ -return EventPluginRegistry.registrationNameModules[ -dispatchConfig.registrationName]|| -null;} - -for(var phase in dispatchConfig.phasedRegistrationNames){ -if(!dispatchConfig.phasedRegistrationNames.hasOwnProperty(phase)){ -continue;} - -var PluginModule=EventPluginRegistry.registrationNameModules[ -dispatchConfig.phasedRegistrationNames[phase]]; - -if(PluginModule){ -return PluginModule;}} - - -return null;}, - - - - - - -_resetEventPlugins:function(){ -EventPluginOrder=null; -for(var pluginName in namesToPlugins){ -if(namesToPlugins.hasOwnProperty(pluginName)){ -delete namesToPlugins[pluginName];}} - - -EventPluginRegistry.plugins.length=0; - -var eventNameDispatchConfigs=EventPluginRegistry.eventNameDispatchConfigs; -for(var eventName in eventNameDispatchConfigs){ -if(eventNameDispatchConfigs.hasOwnProperty(eventName)){ -delete eventNameDispatchConfigs[eventName];}} - - - -var registrationNameModules=EventPluginRegistry.registrationNameModules; -for(var registrationName in registrationNameModules){ -if(registrationNameModules.hasOwnProperty(registrationName)){ -delete registrationNameModules[registrationName];}}}}; - - - - - - -module.exports=EventPluginRegistry; -}); -__d('EventPluginUtils',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var EventConstants=require('EventConstants'); -var ReactErrorUtils=require('ReactErrorUtils'); - -var invariant=require('invariant'); -var warning=require('warning'); - - - - - - - - - -var injection={ -Mount:null, -injectMount:function(InjectedMount){ -injection.Mount=InjectedMount; -if(__DEV__){ -warning( -InjectedMount&&InjectedMount.getNode&&InjectedMount.getID, -'EventPluginUtils.injection.injectMount(...): Injected Mount '+ -'module is missing getNode or getID.');}}}; - - - - - -var topLevelTypes=EventConstants.topLevelTypes; - -function isEndish(topLevelType){ -return topLevelType===topLevelTypes.topMouseUp|| -topLevelType===topLevelTypes.topTouchEnd|| -topLevelType===topLevelTypes.topTouchCancel;} - - -function isMoveish(topLevelType){ -return topLevelType===topLevelTypes.topMouseMove|| -topLevelType===topLevelTypes.topTouchMove;} - -function isStartish(topLevelType){ -return topLevelType===topLevelTypes.topMouseDown|| -topLevelType===topLevelTypes.topTouchStart;} - - - -var validateEventDispatches; -if(__DEV__){ -validateEventDispatches=function(event){ -var dispatchListeners=event._dispatchListeners; -var dispatchIDs=event._dispatchIDs; - -var listenersIsArr=Array.isArray(dispatchListeners); -var idsIsArr=Array.isArray(dispatchIDs); -var IDsLen=idsIsArr?dispatchIDs.length:dispatchIDs?1:0; -var listenersLen=listenersIsArr? -dispatchListeners.length: -dispatchListeners?1:0; - -warning( -idsIsArr===listenersIsArr&&IDsLen===listenersLen, -'EventPluginUtils: Invalid `event`.');};} - - - - - - - - - - - -function executeDispatch(event,simulated,listener,domID){ -var type=event.type||'unknown-event'; -event.currentTarget=injection.Mount.getNode(domID); -if(simulated){ -ReactErrorUtils.invokeGuardedCallbackWithCatch( -type, -listener, -event, -domID);}else - -{ -ReactErrorUtils.invokeGuardedCallback(type,listener,event,domID);} - -event.currentTarget=null;} - - - - - -function executeDispatchesInOrder(event,simulated){ -var dispatchListeners=event._dispatchListeners; -var dispatchIDs=event._dispatchIDs; -if(__DEV__){ -validateEventDispatches(event);} - -if(Array.isArray(dispatchListeners)){ -for(var i=0;i=len){ -this._iteratedObject=undefined; -return createIterResultObject(undefined,true);} - - -this._nextIndex=index+1; - -if(kind===KIND_KEY){ -return createIterResultObject(index,false);}else -if(kind===KIND_VALUE){ -return createIterResultObject(array[index],false);}else -if(kind===KIND_KEY_VAL){ -return createIterResultObject([index,array[index]],false);}}},{key: - - - - -'@@iterator',value:function iterator(){ -return this;}}]);return ArrayIterator;})();var - - - -StringIterator=(function(){ - -function StringIterator(string){babelHelpers.classCallCheck(this,StringIterator); -if(typeof string!=='string'){ -throw new TypeError('Object is not a string');} - -this._iteratedString=string; -this._nextIndex=0;}babelHelpers.createClass(StringIterator,[{key:'next',value:function next() - - - -{ -if(!this instanceof StringIterator){ -throw new TypeError('Object is not a StringIterator');} - - -if(this._iteratedString==null){ -return createIterResultObject(undefined,true);} - - -var index=this._nextIndex; -var s=this._iteratedString; -var len=s.length; - -if(index>=len){ -this._iteratedString=undefined; -return createIterResultObject(undefined,true);} - - -var ret; -var first=s.charCodeAt(index); - -if(first<0xD800||first>0xDBFF||index+1===len){ -ret=s[index];}else -{ -var second=s.charCodeAt(index+1); -if(second<0xDC00||second>0xDFFF){ -ret=s[index];}else -{ -ret=s[index]+s[index+1];}} - - - -this._nextIndex=index+ret.length; - -return createIterResultObject(ret,false);}},{key: - - - -'@@iterator',value:function iterator(){ -return this;}}]);return StringIterator;})(); - - - - -function createIterResultObject(value,done){ -return {value:value,done:done};} - - -return function(object,kind){ -if(typeof object==='string'){ -return new StringIterator(object);}else -if(Array.isArray(object)){ -return new ArrayIterator(object,kind||KIND_VALUE);}else -{ -return object[ITERATOR_SYMBOL]();}};})();}else - - - -{ -return function(object){ -return object[ITERATOR_SYMBOL]();};}})(); - - - - - - - - -babelHelpers.extends(toIterator,{ -KIND_KEY:KIND_KEY, -KIND_VALUE:KIND_VALUE, -KIND_KEY_VAL:KIND_KEY_VAL, -ITERATOR_SYMBOL:ITERATOR_SYMBOL}); - - -module.exports=toIterator; -}); -__d('_shouldPolyfillES6Collection',function(global, require, module, exports) { function - - - - - - - - - - - - - - - - - - - - - - - - -shouldPolyfillES6Collection(collectionName){ -var Collection=global[collectionName]; -if(Collection==null){ -return true;} - - - - - - -if(typeof global.Symbol!=='function'){ -return true;} - - -var proto=Collection.prototype; - - - - -return Collection==null|| -typeof Collection!=='function'|| -typeof proto.clear!=='function'|| -new Collection().size!==0|| -typeof proto.keys!=='function'|| -typeof proto.forEach!=='function';} - - -module.exports=shouldPolyfillES6Collection; -}); -__d('ReactNativeGlobalResponderHandler',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactNativeTagHandles=require('ReactNativeTagHandles'); -var UIManager=require('UIManager'); - -var ReactNativeGlobalResponderHandler={ -onChange:function(from,to,blockNativeResponder){ -if(to!==null){ -UIManager.setJSResponder( -ReactNativeTagHandles.mostRecentMountedNodeHandleForRootNodeID(to), -blockNativeResponder);}else - -{ -UIManager.clearJSResponder();}}}; - - - - -module.exports=ReactNativeGlobalResponderHandler; -}); -__d('ResponderEventPlugin',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var EventConstants=require('EventConstants'); -var EventPluginUtils=require('EventPluginUtils'); -var EventPropagators=require('EventPropagators'); -var ReactInstanceHandles=require('ReactInstanceHandles'); -var ResponderSyntheticEvent=require('ResponderSyntheticEvent'); -var ResponderTouchHistoryStore=require('ResponderTouchHistoryStore'); - -var accumulate=require('accumulate'); -var invariant=require('invariant'); -var keyOf=require('keyOf'); - -var isStartish=EventPluginUtils.isStartish; -var isMoveish=EventPluginUtils.isMoveish; -var isEndish=EventPluginUtils.isEndish; -var executeDirectDispatch=EventPluginUtils.executeDirectDispatch; -var hasDispatches=EventPluginUtils.hasDispatches; -var executeDispatchesInOrderStopAtTrue= -EventPluginUtils.executeDispatchesInOrderStopAtTrue; - - - - - -var responderID=null; - - - - - -var trackedTouchCount=0; - - - - -var previousActiveTouches=0; - -var changeResponder=function(nextResponderID,blockNativeResponder){ -var oldResponderID=responderID; -responderID=nextResponderID; -if(ResponderEventPlugin.GlobalResponderHandler!==null){ -ResponderEventPlugin.GlobalResponderHandler.onChange( -oldResponderID, -nextResponderID, -blockNativeResponder);}}; - - - - -var eventTypes={ - - - - -startShouldSetResponder:{ -phasedRegistrationNames:{ -bubbled:keyOf({onStartShouldSetResponder:null}), -captured:keyOf({onStartShouldSetResponderCapture:null})}}, - - - - - - - - - - - - -scrollShouldSetResponder:{ -phasedRegistrationNames:{ -bubbled:keyOf({onScrollShouldSetResponder:null}), -captured:keyOf({onScrollShouldSetResponderCapture:null})}}, - - - - - - - - - - -selectionChangeShouldSetResponder:{ -phasedRegistrationNames:{ -bubbled:keyOf({onSelectionChangeShouldSetResponder:null}), -captured:keyOf({onSelectionChangeShouldSetResponderCapture:null})}}, - - - - - - - -moveShouldSetResponder:{ -phasedRegistrationNames:{ -bubbled:keyOf({onMoveShouldSetResponder:null}), -captured:keyOf({onMoveShouldSetResponderCapture:null})}}, - - - - - - -responderStart:{registrationName:keyOf({onResponderStart:null})}, -responderMove:{registrationName:keyOf({onResponderMove:null})}, -responderEnd:{registrationName:keyOf({onResponderEnd:null})}, -responderRelease:{registrationName:keyOf({onResponderRelease:null})}, -responderTerminationRequest:{ -registrationName:keyOf({onResponderTerminationRequest:null})}, - -responderGrant:{registrationName:keyOf({onResponderGrant:null})}, -responderReject:{registrationName:keyOf({onResponderReject:null})}, -responderTerminate:{registrationName:keyOf({onResponderTerminate:null})}}; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -function setResponderAndExtractTransfer( -topLevelType, -topLevelTargetID, -nativeEvent, -nativeEventTarget){ -var shouldSetEventType= -isStartish(topLevelType)?eventTypes.startShouldSetResponder: -isMoveish(topLevelType)?eventTypes.moveShouldSetResponder: -topLevelType===EventConstants.topLevelTypes.topSelectionChange? -eventTypes.selectionChangeShouldSetResponder: -eventTypes.scrollShouldSetResponder; - - -var bubbleShouldSetFrom=!responderID? -topLevelTargetID: -ReactInstanceHandles.getFirstCommonAncestorID(responderID,topLevelTargetID); - - - - - -var skipOverBubbleShouldSetFrom=bubbleShouldSetFrom===responderID; -var shouldSetEvent=ResponderSyntheticEvent.getPooled( -shouldSetEventType, -bubbleShouldSetFrom, -nativeEvent, -nativeEventTarget); - -shouldSetEvent.touchHistory=ResponderTouchHistoryStore.touchHistory; -if(skipOverBubbleShouldSetFrom){ -EventPropagators.accumulateTwoPhaseDispatchesSkipTarget(shouldSetEvent);}else -{ -EventPropagators.accumulateTwoPhaseDispatches(shouldSetEvent);} - -var wantsResponderID=executeDispatchesInOrderStopAtTrue(shouldSetEvent); -if(!shouldSetEvent.isPersistent()){ -shouldSetEvent.constructor.release(shouldSetEvent);} - - -if(!wantsResponderID||wantsResponderID===responderID){ -return null;} - -var extracted; -var grantEvent=ResponderSyntheticEvent.getPooled( -eventTypes.responderGrant, -wantsResponderID, -nativeEvent, -nativeEventTarget); - -grantEvent.touchHistory=ResponderTouchHistoryStore.touchHistory; - -EventPropagators.accumulateDirectDispatches(grantEvent); -var blockNativeResponder=executeDirectDispatch(grantEvent)===true; -if(responderID){ - -var terminationRequestEvent=ResponderSyntheticEvent.getPooled( -eventTypes.responderTerminationRequest, -responderID, -nativeEvent, -nativeEventTarget); - -terminationRequestEvent.touchHistory=ResponderTouchHistoryStore.touchHistory; -EventPropagators.accumulateDirectDispatches(terminationRequestEvent); -var shouldSwitch=!hasDispatches(terminationRequestEvent)|| -executeDirectDispatch(terminationRequestEvent); -if(!terminationRequestEvent.isPersistent()){ -terminationRequestEvent.constructor.release(terminationRequestEvent);} - - -if(shouldSwitch){ -var terminateType=eventTypes.responderTerminate; -var terminateEvent=ResponderSyntheticEvent.getPooled( -terminateType, -responderID, -nativeEvent, -nativeEventTarget); - -terminateEvent.touchHistory=ResponderTouchHistoryStore.touchHistory; -EventPropagators.accumulateDirectDispatches(terminateEvent); -extracted=accumulate(extracted,[grantEvent,terminateEvent]); -changeResponder(wantsResponderID,blockNativeResponder);}else -{ -var rejectEvent=ResponderSyntheticEvent.getPooled( -eventTypes.responderReject, -wantsResponderID, -nativeEvent, -nativeEventTarget); - -rejectEvent.touchHistory=ResponderTouchHistoryStore.touchHistory; -EventPropagators.accumulateDirectDispatches(rejectEvent); -extracted=accumulate(extracted,rejectEvent);}}else - -{ -extracted=accumulate(extracted,grantEvent); -changeResponder(wantsResponderID,blockNativeResponder);} - -return extracted;} - - - - - - - - - - -function canTriggerTransfer(topLevelType,topLevelTargetID,nativeEvent){ -return topLevelTargetID&&( - - - -topLevelType===EventConstants.topLevelTypes.topScroll&& -!nativeEvent.responderIgnoreScroll|| -trackedTouchCount>0&& -topLevelType===EventConstants.topLevelTypes.topSelectionChange|| -isStartish(topLevelType)|| -isMoveish(topLevelType));} - - - - - - - - - - -function noResponderTouches(nativeEvent){ -var touches=nativeEvent.touches; -if(!touches||touches.length===0){ -return true;} - -for(var i=0;i=0, -'Ended a touch event which was not counted in trackedTouchCount.');} - - - -ResponderTouchHistoryStore.recordTouchTrack(topLevelType,nativeEvent,nativeEventTarget); - -var extracted=canTriggerTransfer(topLevelType,topLevelTargetID,nativeEvent)? -setResponderAndExtractTransfer( -topLevelType, -topLevelTargetID, -nativeEvent, -nativeEventTarget): -null; - - - - - - - - - - -var isResponderTouchStart=responderID&&isStartish(topLevelType); -var isResponderTouchMove=responderID&&isMoveish(topLevelType); -var isResponderTouchEnd=responderID&&isEndish(topLevelType); -var incrementalTouch= -isResponderTouchStart?eventTypes.responderStart: -isResponderTouchMove?eventTypes.responderMove: -isResponderTouchEnd?eventTypes.responderEnd: -null; - -if(incrementalTouch){ -var gesture= -ResponderSyntheticEvent.getPooled( -incrementalTouch, -responderID, -nativeEvent, -nativeEventTarget); - -gesture.touchHistory=ResponderTouchHistoryStore.touchHistory; -EventPropagators.accumulateDirectDispatches(gesture); -extracted=accumulate(extracted,gesture);} - - -var isResponderTerminate= -responderID&& -topLevelType===EventConstants.topLevelTypes.topTouchCancel; -var isResponderRelease= -responderID&& -!isResponderTerminate&& -isEndish(topLevelType)&& -noResponderTouches(nativeEvent); -var finalTouch= -isResponderTerminate?eventTypes.responderTerminate: -isResponderRelease?eventTypes.responderRelease: -null; -if(finalTouch){ -var finalEvent= -ResponderSyntheticEvent.getPooled(finalTouch,responderID,nativeEvent,nativeEventTarget); -finalEvent.touchHistory=ResponderTouchHistoryStore.touchHistory; -EventPropagators.accumulateDirectDispatches(finalEvent); -extracted=accumulate(extracted,finalEvent); -changeResponder(null);} - - -var numberActiveTouches= -ResponderTouchHistoryStore.touchHistory.numberActiveTouches; -if(ResponderEventPlugin.GlobalInteractionHandler&& -numberActiveTouches!==previousActiveTouches){ -ResponderEventPlugin.GlobalInteractionHandler.onChange( -numberActiveTouches);} - - -previousActiveTouches=numberActiveTouches; - -return extracted;}, - - -GlobalResponderHandler:null, -GlobalInteractionHandler:null, - -injection:{ - - - - - -injectGlobalResponderHandler:function(GlobalResponderHandler){ -ResponderEventPlugin.GlobalResponderHandler=GlobalResponderHandler;}, - - - - - - -injectGlobalInteractionHandler:function(GlobalInteractionHandler){ -ResponderEventPlugin.GlobalInteractionHandler=GlobalInteractionHandler;}}}; - - - - -module.exports=ResponderEventPlugin; -}); -__d('ResponderSyntheticEvent',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var SyntheticEvent=require('SyntheticEvent'); - - - - - - -var ResponderEventInterface={ -touchHistory:function(nativeEvent){ -return null;}}; - - - - - - - - - -function ResponderSyntheticEvent(dispatchConfig,dispatchMarker,nativeEvent,nativeEventTarget){ -SyntheticEvent.call(this,dispatchConfig,dispatchMarker,nativeEvent,nativeEventTarget);} - - -SyntheticEvent.augmentClass(ResponderSyntheticEvent,ResponderEventInterface); - -module.exports=ResponderSyntheticEvent; -}); -__d('ResponderTouchHistoryStore',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var EventPluginUtils=require('EventPluginUtils'); - -var invariant=require('invariant'); - -var isMoveish=EventPluginUtils.isMoveish; -var isStartish=EventPluginUtils.isStartish; -var isEndish=EventPluginUtils.isEndish; - -var MAX_TOUCH_BANK=20; - - - - - - - - - - - - - - - - -var touchHistory={ -touchBank:[], -numberActiveTouches:0, - - - -indexOfSingleActiveTouch:-1, -mostRecentTimeStamp:0}; - - -var timestampForTouch=function(touch){ - - - -return touch.timeStamp||touch.timestamp;}; - - - - - - - -var initializeTouchData=function(touch){ -return { -touchActive:true, -startTimeStamp:timestampForTouch(touch), -startPageX:touch.pageX, -startPageY:touch.pageY, -currentPageX:touch.pageX, -currentPageY:touch.pageY, -currentTimeStamp:timestampForTouch(touch), -previousPageX:touch.pageX, -previousPageY:touch.pageY, -previousTimeStamp:timestampForTouch(touch)};}; - - - -var reinitializeTouchTrack=function(touchTrack,touch){ -touchTrack.touchActive=true; -touchTrack.startTimeStamp=timestampForTouch(touch); -touchTrack.startPageX=touch.pageX; -touchTrack.startPageY=touch.pageY; -touchTrack.currentPageX=touch.pageX; -touchTrack.currentPageY=touch.pageY; -touchTrack.currentTimeStamp=timestampForTouch(touch); -touchTrack.previousPageX=touch.pageX; -touchTrack.previousPageY=touch.pageY; -touchTrack.previousTimeStamp=timestampForTouch(touch);}; - - -var validateTouch=function(touch){ -var identifier=touch.identifier; -invariant(identifier!=null,'Touch object is missing identifier'); -if(identifier>MAX_TOUCH_BANK){ -console.warn( -'Touch identifier '+identifier+' is greater than maximum '+ -'supported '+MAX_TOUCH_BANK+' which causes performance issues '+ -'backfilling array locations for all of the indices.');}}; - - - - -var recordStartTouchData=function(touch){ -var touchBank=touchHistory.touchBank; -var identifier=touch.identifier; -var touchTrack=touchBank[identifier]; -if(__DEV__){ -validateTouch(touch);} - -if(touchTrack){ -reinitializeTouchTrack(touchTrack,touch);}else -{ -touchBank[touch.identifier]=initializeTouchData(touch);} - -touchHistory.mostRecentTimeStamp=timestampForTouch(touch);}; - - -var recordMoveTouchData=function(touch){ -var touchBank=touchHistory.touchBank; -var touchTrack=touchBank[touch.identifier]; -if(__DEV__){ -validateTouch(touch); -invariant(touchTrack,'Touch data should have been recorded on start');} - -touchTrack.touchActive=true; -touchTrack.previousPageX=touchTrack.currentPageX; -touchTrack.previousPageY=touchTrack.currentPageY; -touchTrack.previousTimeStamp=touchTrack.currentTimeStamp; -touchTrack.currentPageX=touch.pageX; -touchTrack.currentPageY=touch.pageY; -touchTrack.currentTimeStamp=timestampForTouch(touch); -touchHistory.mostRecentTimeStamp=timestampForTouch(touch);}; - - -var recordEndTouchData=function(touch){ -var touchBank=touchHistory.touchBank; -var touchTrack=touchBank[touch.identifier]; -if(__DEV__){ -validateTouch(touch); -invariant(touchTrack,'Touch data should have been recorded on start');} - -touchTrack.previousPageX=touchTrack.currentPageX; -touchTrack.previousPageY=touchTrack.currentPageY; -touchTrack.previousTimeStamp=touchTrack.currentTimeStamp; -touchTrack.currentPageX=touch.pageX; -touchTrack.currentPageY=touch.pageY; -touchTrack.currentTimeStamp=timestampForTouch(touch); -touchTrack.touchActive=false; -touchHistory.mostRecentTimeStamp=timestampForTouch(touch);}; - - -var ResponderTouchHistoryStore={ -recordTouchTrack:function(topLevelType,nativeEvent){ -var touchBank=touchHistory.touchBank; -if(isMoveish(topLevelType)){ -nativeEvent.changedTouches.forEach(recordMoveTouchData);}else -if(isStartish(topLevelType)){ -nativeEvent.changedTouches.forEach(recordStartTouchData); -touchHistory.numberActiveTouches=nativeEvent.touches.length; -if(touchHistory.numberActiveTouches===1){ -touchHistory.indexOfSingleActiveTouch=nativeEvent.touches[0].identifier;}}else - -if(isEndish(topLevelType)){ -nativeEvent.changedTouches.forEach(recordEndTouchData); -touchHistory.numberActiveTouches=nativeEvent.touches.length; -if(touchHistory.numberActiveTouches===1){ -for(var i=0;i1)t-=1; -if(t<1/6)return p+(q-p)*6*t; -if(t<1/2)return q; -if(t<2/3)return p+(q-p)*(2/3-t)*6; -return p;} - - -if(s===0){ -r=g=b=l;}else - -{ -var q=l<0.5?l*(1+s):l+s-l*s; -var p=2*l-q; -r=hue2rgb(p,q,h+1/3); -g=hue2rgb(p,q,h); -b=hue2rgb(p,q,h-1/3);} - - -return {r:r*255,g:g*255,b:b*255};} - - - - - - -function hsvToRgb(h,s,v){ -h=bound01(h,360)*6; -s=bound01(s,100); -v=bound01(v,100); - -var i=math.floor(h), -f=h-i, -p=v*(1-s), -q=v*(1-f*s), -t=v*(1-(1-f)*s), -mod=i%6, -r=[v,q,p,p,t,v][mod], -g=[t,v,v,q,p,p][mod], -b=[p,p,t,v,v,q][mod]; - -return {r:r*255,g:g*255,b:b*255};} - - - - - -var names=tinycolor.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"}; - - - -function boundAlpha(a){ -a=parseFloat(a); - -if(isNaN(a)||a<0||a>1){ -a=1;} - - -return a;} - - - -function bound01(n,max){ -if(isOnePointZero(n)){n="100%";} - -var processPercent=isPercentage(n); -n=mathMin(max,mathMax(0,parseFloat(n))); - - -if(processPercent){ -n=parseInt(n*max,10)/100;} - - - -if(Math.abs(n-max)<0.000001){ -return 1;} - - - -return n%max/parseFloat(max);} - - - -function parseIntFromHex(val){ -return parseInt(val,16);} - - - - -function isOnePointZero(n){ -return typeof n=="string"&&n.indexOf('.')!=-1&&parseFloat(n)===1;} - - - -function isPercentage(n){ -return typeof n==="string"&&n.indexOf('%')!=-1;} - - - -function convertToPercentage(n){ -if(n<=1){ -n=n*100+"%";} - - -return n;} - - - -function convertHexToDecimal(h){ -return parseIntFromHex(h)/255;} - - -var matchers=(function(){ - -var CSS_INTEGER="[-\\+]?\\d+%?"; - - -var CSS_NUMBER="[-\\+]?\\d*\\.\\d+%?"; - - -var CSS_UNIT="(?:"+CSS_NUMBER+")|(?:"+CSS_INTEGER+")"; - - - - -var PERMISSIVE_MATCH3="[\\s|\\(]+("+CSS_UNIT+")[,|\\s]+("+CSS_UNIT+")[,|\\s]+("+CSS_UNIT+")\\s*\\)?"; -var PERMISSIVE_MATCH4="[\\s|\\(]+("+CSS_UNIT+")[,|\\s]+("+CSS_UNIT+")[,|\\s]+("+CSS_UNIT+")[,|\\s]+("+CSS_UNIT+")\\s*\\)?"; - -return { -rgb:new RegExp("rgb"+PERMISSIVE_MATCH3), -rgba:new RegExp("rgba"+PERMISSIVE_MATCH4), -hsl:new RegExp("hsl"+PERMISSIVE_MATCH3), -hsla:new RegExp("hsla"+PERMISSIVE_MATCH4), -hsv:new RegExp("hsv"+PERMISSIVE_MATCH3), -hsva:new RegExp("hsva"+PERMISSIVE_MATCH4), -hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, -hex4:/^([0-9a-fA-F]{1})([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})$/};})(); - - - - - - -function stringInputToObject(color){ -color=color.replace(trimLeft,'').replace(trimRight,'').toLowerCase(); -var named=false; -if(names[color]){ -color=names[color]; -named=true;}else - -if(color=='transparent'){ -return {r:0,g:0,b:0,a:0,format:"name"};} - - - - - - -var match; -if(match=matchers.rgb.exec(color)){ -return {r:match[1],g:match[2],b:match[3]};} - -if(match=matchers.rgba.exec(color)){ -return {r:match[1],g:match[2],b:match[3],a:match[4]};} - -if(match=matchers.hsl.exec(color)){ -return {h:match[1],s:match[2],l:match[3]};} - -if(match=matchers.hsla.exec(color)){ -return {h:match[1],s:match[2],l:match[3],a:match[4]};} - -if(match=matchers.hsv.exec(color)){ -return {h:match[1],s:match[2],v:match[3]};} - -if(match=matchers.hsva.exec(color)){ -return {h:match[1],s:match[2],v:match[3],a:match[4]};} - -if(match=matchers.hex8.exec(color)){ -return { -r:parseIntFromHex(match[1]), -g:parseIntFromHex(match[2]), -b:parseIntFromHex(match[3]), -a:convertHexToDecimal(match[4]), -format:named?"name":"hex"};} - - -if(match=matchers.hex6.exec(color)){ -return { -r:parseIntFromHex(match[1]), -g:parseIntFromHex(match[2]), -b:parseIntFromHex(match[3]), -format:named?"name":"hex"};} - - -if(match=matchers.hex4.exec(color)){ -return { -r:parseIntFromHex(match[1]+''+match[1]), -g:parseIntFromHex(match[2]+''+match[2]), -b:parseIntFromHex(match[3]+''+match[3]), -a:convertHexToDecimal(match[4]+''+match[4]), -format:named?"name":"hex"};} - - -if(match=matchers.hex3.exec(color)){ -return { -r:parseIntFromHex(match[1]+''+match[1]), -g:parseIntFromHex(match[2]+''+match[2]), -b:parseIntFromHex(match[3]+''+match[3]), -format:named?"name":"hex"};} - - - -return false;} - - -module.exports=tinycolor; -}); -__d('processTransform',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var MatrixMath=require('MatrixMath'); -var Platform=require('Platform'); - -var invariant=require('invariant'); -var stringifySafe=require('stringifySafe'); - - - - - - - - - -function processTransform(transform){ -var result=MatrixMath.createIdentityMatrix(); - -transform.forEach(function(transformation){ -var key=Object.keys(transformation)[0]; -var value=transformation[key]; -if(__DEV__){ -_validateTransform(key,value,transformation);} - - -switch(key){ -case 'matrix': -MatrixMath.multiplyInto(result,result,value); -break; -case 'perspective': -_multiplyTransform(result,MatrixMath.reusePerspectiveCommand,[value]); -break; -case 'rotateX': -_multiplyTransform(result,MatrixMath.reuseRotateXCommand,[_convertToRadians(value)]); -break; -case 'rotateY': -_multiplyTransform(result,MatrixMath.reuseRotateYCommand,[_convertToRadians(value)]); -break; -case 'rotate': -case 'rotateZ': -_multiplyTransform(result,MatrixMath.reuseRotateZCommand,[_convertToRadians(value)]); -break; -case 'scale': -_multiplyTransform(result,MatrixMath.reuseScaleCommand,[value]); -break; -case 'scaleX': -_multiplyTransform(result,MatrixMath.reuseScaleXCommand,[value]); -break; -case 'scaleY': -_multiplyTransform(result,MatrixMath.reuseScaleYCommand,[value]); -break; -case 'translate': -_multiplyTransform(result,MatrixMath.reuseTranslate3dCommand,[value[0],value[1],value[2]||0]); -break; -case 'translateX': -_multiplyTransform(result,MatrixMath.reuseTranslate2dCommand,[value,0]); -break; -case 'translateY': -_multiplyTransform(result,MatrixMath.reuseTranslate2dCommand,[0,value]); -break; -case 'skewX': -_multiplyTransform(result,MatrixMath.reuseSkewXCommand,[_convertToRadians(value)]); -break; -case 'skewY': -_multiplyTransform(result,MatrixMath.reuseSkewYCommand,[_convertToRadians(value)]); -break; -default: -throw new Error('Invalid transform name: '+key);}}); - - - - - - - -if(Platform.OS==='android'){ -return MatrixMath.decomposeMatrix(result);} - -return result;} - - - - - -function _multiplyTransform( -result, -matrixMathFunction, -args) -{ -var matrixToApply=MatrixMath.createIdentityMatrix(); -var argsWithIdentity=[matrixToApply].concat(args); -matrixMathFunction.apply(this,argsWithIdentity); -MatrixMath.multiplyInto(result,result,matrixToApply);} - - - - - - -function _convertToRadians(value){ -var floatValue=parseFloat(value,10); -return value.indexOf('rad')>-1?floatValue:floatValue*Math.PI/180;} - - -function _validateTransform(key,value,transformation){ -invariant( -!value.getValue, -'You passed an Animated.Value to a normal component. '+ -'You need to wrap that component in an Animated. For example, '+ -'replace by .'); - - -var multivalueTransforms=[ -'matrix', -'translate']; - -if(multivalueTransforms.indexOf(key)!==-1){ -invariant( -Array.isArray(value), -'Transform with key of %s must have an array as the value: %s', -key, -stringifySafe(transformation));} - - -switch(key){ -case 'matrix': -invariant( -value.length===9||value.length===16, -'Matrix transform must have a length of 9 (2d) or 16 (3d). '+ -'Provided matrix has a length of %s: %s', -value.length, -stringifySafe(transformation)); - -break; -case 'translate': -break; -case 'rotateX': -case 'rotateY': -case 'rotateZ': -case 'rotate': -case 'skewX': -case 'skewY': -invariant( -typeof value==='string', -'Transform with key of "%s" must be a string: %s', -key, -stringifySafe(transformation)); - -invariant( -value.indexOf('deg')>-1||value.indexOf('rad')>-1, -'Rotate transform must be expressed in degrees (deg) or radians '+ -'(rad): %s', -stringifySafe(transformation)); - -break; -default: -invariant( -typeof value==='number', -'Transform with key of "%s" must be a number: %s', -key, -stringifySafe(transformation));}} - - - - -module.exports=processTransform; -}); -__d('MatrixMath',function(global, require, module, exports) { 'use strict'; - - - - - - - - -var invariant=require('invariant'); - - - - - -var MatrixMath={ -createIdentityMatrix:function(){ -return [ -1,0,0,0, -0,1,0,0, -0,0,1,0, -0,0,0,1];}, - - - -createCopy:function(m){ -return [ -m[0],m[1],m[2],m[3], -m[4],m[5],m[6],m[7], -m[8],m[9],m[10],m[11], -m[12],m[13],m[14],m[15]];}, - - - -createOrthographic:function(left,right,bottom,top,near,far){ -var a=2/(right-left); -var b=2/(top-bottom); -var c=-2/(far-near); - -var tx=-(right+left)/(right-left); -var ty=-(top+bottom)/(top-bottom); -var tz=-(far+near)/(far-near); - -return [ -a,0,0,0, -0,b,0,0, -0,0,c,0, -tx,ty,tz,1];}, - - - -createFrustum:function(left,right,bottom,top,near,far){ -var r_width=1/(right-left); -var r_height=1/(top-bottom); -var r_depth=1/(near-far); -var x=2*(near*r_width); -var y=2*(near*r_height); -var A=(right+left)*r_width; -var B=(top+bottom)*r_height; -var C=(far+near)*r_depth; -var D=2*(far*near*r_depth); -return [ -x,0,0,0, -0,y,0,0, -A,B,C,-1, -0,0,D,0];}, - - - -createPerspective:function(fovInRadians,aspect,near,far){ -var h=1/Math.tan(fovInRadians); -var r_depth=1/(near-far); -var C=(far+near)*r_depth; -var D=2*(far*near*r_depth); -return [ -h/aspect,0,0,0, -0,h,0,0, -0,0,C,-1, -0,0,D,0];}, - - - -createTranslate2d:function(x,y){ -var mat=MatrixMath.createIdentityMatrix(); -MatrixMath.reuseTranslate2dCommand(mat,x,y); -return mat;}, - - -reuseTranslate2dCommand:function(matrixCommand,x,y){ -matrixCommand[12]=x; -matrixCommand[13]=y;}, - - -reuseTranslate3dCommand:function(matrixCommand,x,y,z){ -matrixCommand[12]=x; -matrixCommand[13]=y; -matrixCommand[14]=z;}, - - -createScale:function(factor){ -var mat=MatrixMath.createIdentityMatrix(); -MatrixMath.reuseScaleCommand(mat,factor); -return mat;}, - - -reuseScaleCommand:function(matrixCommand,factor){ -matrixCommand[0]=factor; -matrixCommand[5]=factor;}, - - -reuseScale3dCommand:function(matrixCommand,x,y,z){ -matrixCommand[0]=x; -matrixCommand[5]=y; -matrixCommand[10]=z;}, - - -reusePerspectiveCommand:function(matrixCommand,p){ -matrixCommand[11]=-1/p;}, - - -reuseScaleXCommand:function(matrixCommand,factor){ -matrixCommand[0]=factor;}, - - -reuseScaleYCommand:function(matrixCommand,factor){ -matrixCommand[5]=factor;}, - - -reuseScaleZCommand:function(matrixCommand,factor){ -matrixCommand[10]=factor;}, - - -reuseRotateXCommand:function(matrixCommand,radians){ -matrixCommand[5]=Math.cos(radians); -matrixCommand[6]=Math.sin(radians); -matrixCommand[9]=-Math.sin(radians); -matrixCommand[10]=Math.cos(radians);}, - - -reuseRotateYCommand:function(matrixCommand,amount){ -matrixCommand[0]=Math.cos(amount); -matrixCommand[2]=-Math.sin(amount); -matrixCommand[8]=Math.sin(amount); -matrixCommand[10]=Math.cos(amount);}, - - - -reuseRotateZCommand:function(matrixCommand,radians){ -matrixCommand[0]=Math.cos(radians); -matrixCommand[1]=Math.sin(radians); -matrixCommand[4]=-Math.sin(radians); -matrixCommand[5]=Math.cos(radians);}, - - -createRotateZ:function(radians){ -var mat=MatrixMath.createIdentityMatrix(); -MatrixMath.reuseRotateZCommand(mat,radians); -return mat;}, - - -reuseSkewXCommand:function(matrixCommand,radians){ -matrixCommand[4]=Math.sin(radians); -matrixCommand[5]=Math.cos(radians);}, - - -reuseSkewYCommand:function(matrixCommand,radians){ -matrixCommand[0]=Math.cos(radians); -matrixCommand[1]=Math.sin(radians);}, - - -multiplyInto:function(out,a,b){ -var a00=a[0],a01=a[1],a02=a[2],a03=a[3], -a10=a[4],a11=a[5],a12=a[6],a13=a[7], -a20=a[8],a21=a[9],a22=a[10],a23=a[11], -a30=a[12],a31=a[13],a32=a[14],a33=a[15]; - -var b0=b[0],b1=b[1],b2=b[2],b3=b[3]; -out[0]=b0*a00+b1*a10+b2*a20+b3*a30; -out[1]=b0*a01+b1*a11+b2*a21+b3*a31; -out[2]=b0*a02+b1*a12+b2*a22+b3*a32; -out[3]=b0*a03+b1*a13+b2*a23+b3*a33; - -b0=b[4];b1=b[5];b2=b[6];b3=b[7]; -out[4]=b0*a00+b1*a10+b2*a20+b3*a30; -out[5]=b0*a01+b1*a11+b2*a21+b3*a31; -out[6]=b0*a02+b1*a12+b2*a22+b3*a32; -out[7]=b0*a03+b1*a13+b2*a23+b3*a33; - -b0=b[8];b1=b[9];b2=b[10];b3=b[11]; -out[8]=b0*a00+b1*a10+b2*a20+b3*a30; -out[9]=b0*a01+b1*a11+b2*a21+b3*a31; -out[10]=b0*a02+b1*a12+b2*a22+b3*a32; -out[11]=b0*a03+b1*a13+b2*a23+b3*a33; - -b0=b[12];b1=b[13];b2=b[14];b3=b[15]; -out[12]=b0*a00+b1*a10+b2*a20+b3*a30; -out[13]=b0*a01+b1*a11+b2*a21+b3*a31; -out[14]=b0*a02+b1*a12+b2*a22+b3*a32; -out[15]=b0*a03+b1*a13+b2*a23+b3*a33;}, - - -determinant:function(matrix){var _matrix=babelHelpers.slicedToArray( - - - - - -matrix,16);var m00=_matrix[0];var m01=_matrix[1];var m02=_matrix[2];var m03=_matrix[3];var m10=_matrix[4];var m11=_matrix[5];var m12=_matrix[6];var m13=_matrix[7];var m20=_matrix[8];var m21=_matrix[9];var m22=_matrix[10];var m23=_matrix[11];var m30=_matrix[12];var m31=_matrix[13];var m32=_matrix[14];var m33=_matrix[15]; -return ( -m03*m12*m21*m30-m02*m13*m21*m30- -m03*m11*m22*m30+m01*m13*m22*m30+ -m02*m11*m23*m30-m01*m12*m23*m30- -m03*m12*m20*m31+m02*m13*m20*m31+ -m03*m10*m22*m31-m00*m13*m22*m31- -m02*m10*m23*m31+m00*m12*m23*m31+ -m03*m11*m20*m32-m01*m13*m20*m32- -m03*m10*m21*m32+m00*m13*m21*m32+ -m01*m10*m23*m32-m00*m11*m23*m32- -m02*m11*m20*m33+m01*m12*m20*m33+ -m02*m10*m21*m33-m00*m12*m21*m33- -m01*m10*m22*m33+m00*m11*m22*m33);}, - - - - - - - - - - -inverse:function(matrix){ -var det=MatrixMath.determinant(matrix); -if(!det){ -return matrix;}var _matrix2=babelHelpers.slicedToArray( - - - - - - -matrix,16);var m00=_matrix2[0];var m01=_matrix2[1];var m02=_matrix2[2];var m03=_matrix2[3];var m10=_matrix2[4];var m11=_matrix2[5];var m12=_matrix2[6];var m13=_matrix2[7];var m20=_matrix2[8];var m21=_matrix2[9];var m22=_matrix2[10];var m23=_matrix2[11];var m30=_matrix2[12];var m31=_matrix2[13];var m32=_matrix2[14];var m33=_matrix2[15]; -return [ -(m12*m23*m31-m13*m22*m31+m13*m21*m32-m11*m23*m32-m12*m21*m33+m11*m22*m33)/det, -(m03*m22*m31-m02*m23*m31-m03*m21*m32+m01*m23*m32+m02*m21*m33-m01*m22*m33)/det, -(m02*m13*m31-m03*m12*m31+m03*m11*m32-m01*m13*m32-m02*m11*m33+m01*m12*m33)/det, -(m03*m12*m21-m02*m13*m21-m03*m11*m22+m01*m13*m22+m02*m11*m23-m01*m12*m23)/det, -(m13*m22*m30-m12*m23*m30-m13*m20*m32+m10*m23*m32+m12*m20*m33-m10*m22*m33)/det, -(m02*m23*m30-m03*m22*m30+m03*m20*m32-m00*m23*m32-m02*m20*m33+m00*m22*m33)/det, -(m03*m12*m30-m02*m13*m30-m03*m10*m32+m00*m13*m32+m02*m10*m33-m00*m12*m33)/det, -(m02*m13*m20-m03*m12*m20+m03*m10*m22-m00*m13*m22-m02*m10*m23+m00*m12*m23)/det, -(m11*m23*m30-m13*m21*m30+m13*m20*m31-m10*m23*m31-m11*m20*m33+m10*m21*m33)/det, -(m03*m21*m30-m01*m23*m30-m03*m20*m31+m00*m23*m31+m01*m20*m33-m00*m21*m33)/det, -(m01*m13*m30-m03*m11*m30+m03*m10*m31-m00*m13*m31-m01*m10*m33+m00*m11*m33)/det, -(m03*m11*m20-m01*m13*m20-m03*m10*m21+m00*m13*m21+m01*m10*m23-m00*m11*m23)/det, -(m12*m21*m30-m11*m22*m30-m12*m20*m31+m10*m22*m31+m11*m20*m32-m10*m21*m32)/det, -(m01*m22*m30-m02*m21*m30+m02*m20*m31-m00*m22*m31-m01*m20*m32+m00*m21*m32)/det, -(m02*m11*m30-m01*m12*m30-m02*m10*m31+m00*m12*m31+m01*m10*m32-m00*m11*m32)/det, -(m01*m12*m20-m02*m11*m20+m02*m10*m21-m00*m12*m21-m01*m10*m22+m00*m11*m22)/det];}, - - - - - - -transpose:function(m){ -return [ -m[0],m[4],m[8],m[12], -m[1],m[5],m[9],m[13], -m[2],m[6],m[10],m[14], -m[3],m[7],m[11],m[15]];}, - - - - - - -multiplyVectorByMatrix:function( -v, -m) -{var _v=babelHelpers.slicedToArray( -v,4);var vx=_v[0];var vy=_v[1];var vz=_v[2];var vw=_v[3]; -return [ -vx*m[0]+vy*m[4]+vz*m[8]+vw*m[12], -vx*m[1]+vy*m[5]+vz*m[9]+vw*m[13], -vx*m[2]+vy*m[6]+vz*m[10]+vw*m[14], -vx*m[3]+vy*m[7]+vz*m[11]+vw*m[15]];}, - - - - - - -v3Length:function(a){ -return Math.sqrt(a[0]*a[0]+a[1]*a[1]+a[2]*a[2]);}, - - - - - -v3Normalize:function( -vector, -v3Length) -{ -var im=1/(v3Length||MatrixMath.v3Length(vector)); -return [ -vector[0]*im, -vector[1]*im, -vector[2]*im];}, - - - - - - - -v3Dot:function(a,b){ -return a[0]*b[0]+ -a[1]*b[1]+ -a[2]*b[2];}, - - - - - - -v3Combine:function( -a, -b, -aScale, -bScale) -{ -return [ -aScale*a[0]+bScale*b[0], -aScale*a[1]+bScale*b[1], -aScale*a[2]+bScale*b[2]];}, - - - - - - - -v3Cross:function(a,b){ -return [ -a[1]*b[2]-a[2]*b[1], -a[2]*b[0]-a[0]*b[2], -a[0]*b[1]-a[1]*b[0]];}, - - - - - - - - - - - - - - - - - - - -quaternionToDegreesXYZ:function(q,matrix,row){var _q=babelHelpers.slicedToArray( -q,4);var qx=_q[0];var qy=_q[1];var qz=_q[2];var qw=_q[3]; -var qw2=qw*qw; -var qx2=qx*qx; -var qy2=qy*qy; -var qz2=qz*qz; -var test=qx*qy+qz*qw; -var unit=qw2+qx2+qy2+qz2; -var conv=180/Math.PI; - -if(test>0.49999*unit){ -return [0,2*Math.atan2(qx,qw)*conv,90];} - -if(test<-0.49999*unit){ -return [0,-2*Math.atan2(qx,qw)*conv,-90];} - - -return [ -MatrixMath.roundTo3Places( -Math.atan2(2*qx*qw-2*qy*qz,1-2*qx2-2*qz2)*conv), - -MatrixMath.roundTo3Places( -Math.atan2(2*qy*qw-2*qx*qz,1-2*qy2-2*qz2)*conv), - -MatrixMath.roundTo3Places( -Math.asin(2*qx*qy+2*qz*qw)*conv)];}, - - - - - - - - -roundTo3Places:function(n){ -var arr=n.toString().split('e'); -return Math.round(arr[0]+'e'+(arr[1]?+arr[1]-3:3))*0.001;}, - - - - - - - - - - - - - -decomposeMatrix:function(transformMatrix){ - -invariant( -transformMatrix.length===16, -'Matrix decomposition needs a list of 3d matrix values, received %s', -transformMatrix); - - - -var perspective=[]; -var quaternion=[]; -var scale=[]; -var skew=[]; -var translation=[]; - - - -if(!transformMatrix[15]){ -return;} - -var matrix=[]; -var perspectiveMatrix=[]; -for(var i=0;i<4;i++){ -matrix.push([]); -for(var j=0;j<4;j++){ -var value=transformMatrix[i*4+j]/transformMatrix[15]; -matrix[i].push(value); -perspectiveMatrix.push(j===3?0:value);}} - - -perspectiveMatrix[15]=1; - - -if(!MatrixMath.determinant(perspectiveMatrix)){ -return;} - - - -if(matrix[0][3]!==0||matrix[1][3]!==0||matrix[2][3]!==0){ - - -var rightHandSide=[ -matrix[0][3], -matrix[1][3], -matrix[2][3], -matrix[3][3]]; - - - - -var inversePerspectiveMatrix=MatrixMath.inverse( -perspectiveMatrix); - -var transposedInversePerspectiveMatrix=MatrixMath.transpose( -inversePerspectiveMatrix); - -var perspective=MatrixMath.multiplyVectorByMatrix( -rightHandSide, -transposedInversePerspectiveMatrix);}else - -{ - -perspective[0]=perspective[1]=perspective[2]=0; -perspective[3]=1;} - - - -for(var i=0;i<3;i++){ -translation[i]=matrix[3][i];} - - - - -var row=[]; -for(i=0;i<3;i++){ -row[i]=[ -matrix[i][0], -matrix[i][1], -matrix[i][2]];} - - - - -scale[0]=MatrixMath.v3Length(row[0]); -row[0]=MatrixMath.v3Normalize(row[0],scale[0]); - - -skew[0]=MatrixMath.v3Dot(row[0],row[1]); -row[1]=MatrixMath.v3Combine(row[1],row[0],1.0,-skew[0]); - - -skew[0]=MatrixMath.v3Dot(row[0],row[1]); -row[1]=MatrixMath.v3Combine(row[1],row[0],1.0,-skew[0]); - - -scale[1]=MatrixMath.v3Length(row[1]); -row[1]=MatrixMath.v3Normalize(row[1],scale[1]); -skew[0]/=scale[1]; - - -skew[1]=MatrixMath.v3Dot(row[0],row[2]); -row[2]=MatrixMath.v3Combine(row[2],row[0],1.0,-skew[1]); -skew[2]=MatrixMath.v3Dot(row[1],row[2]); -row[2]=MatrixMath.v3Combine(row[2],row[1],1.0,-skew[2]); - - -scale[2]=MatrixMath.v3Length(row[2]); -row[2]=MatrixMath.v3Normalize(row[2],scale[2]); -skew[1]/=scale[2]; -skew[2]/=scale[2]; - - - - -var pdum3=MatrixMath.v3Cross(row[1],row[2]); -if(MatrixMath.v3Dot(row[0],pdum3)<0){ -for(i=0;i<3;i++){ -scale[i]*=-1; -row[i][0]*=-1; -row[i][1]*=-1; -row[i][2]*=-1;}} - - - - -quaternion[0]= -0.5*Math.sqrt(Math.max(1+row[0][0]-row[1][1]-row[2][2],0)); -quaternion[1]= -0.5*Math.sqrt(Math.max(1-row[0][0]+row[1][1]-row[2][2],0)); -quaternion[2]= -0.5*Math.sqrt(Math.max(1-row[0][0]-row[1][1]+row[2][2],0)); -quaternion[3]= -0.5*Math.sqrt(Math.max(1+row[0][0]+row[1][1]+row[2][2],0)); - -if(row[2][1]>row[1][2]){ -quaternion[0]=-quaternion[0];} - -if(row[0][2]>row[2][0]){ -quaternion[1]=-quaternion[1];} - -if(row[1][0]>row[0][1]){ -quaternion[2]=-quaternion[2];} - - - -var rotationDegrees; -if( -quaternion[0]<0.001&&quaternion[0]>=0&& -quaternion[1]<0.001&&quaternion[1]>=0) -{ - -rotationDegrees=[0,0,MatrixMath.roundTo3Places( -Math.atan2(row[0][1],row[0][0])*180/Math.PI)];}else - -{ -rotationDegrees=MatrixMath.quaternionToDegreesXYZ(quaternion,matrix,row);} - - - -return { -rotationDegrees:rotationDegrees, -perspective:perspective, -quaternion:quaternion, -scale:scale, -skew:skew, -translation:translation, - -rotate:rotationDegrees[2], -rotateX:rotationDegrees[0], -rotateY:rotationDegrees[1], -scaleX:scale[0], -scaleY:scale[1], -translateX:translation[0], -translateY:translation[1]};}}; - - - - - -module.exports=MatrixMath; -}); -__d('sizesDiffer',function(global, require, module, exports) { 'use strict'; - - - - - - -var dummySize={width:undefined,height:undefined}; - -var sizesDiffer=function(one,two){ -one=one||dummySize; -two=two||dummySize; -return one!==two&&( -one.width!==two.width|| -one.height!==two.height);}; - - - -module.exports=sizesDiffer; -}); -__d('ReactNativeViewAttributes',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactNativeStyleAttributes=require('ReactNativeStyleAttributes'); - -var ReactNativeViewAttributes={}; - -ReactNativeViewAttributes.UIView={ -pointerEvents:true, -accessible:true, -accessibilityLabel:true, -accessibilityComponentType:true, -accessibilityLiveRegion:true, -accessibilityTraits:true, -importantForAccessibility:true, -testID:true, -renderToHardwareTextureAndroid:true, -shouldRasterizeIOS:true, -onLayout:true, -onAccessibilityTap:true, -onMagicTap:true, -collapsable:true, -needsOffscreenAlphaCompositing:true, -style:ReactNativeStyleAttributes}; - - -ReactNativeViewAttributes.RCTView=babelHelpers.extends({}, -ReactNativeViewAttributes.UIView,{ - - - - - - -removeClippedSubviews:true}); - - -module.exports=ReactNativeViewAttributes; -}); -__d('StyleSheetPropType',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var createStrictShapeTypeChecker=require('createStrictShapeTypeChecker'); -var flattenStyle=require('flattenStyle'); - -function StyleSheetPropType( -shape) -{ -var shapePropType=createStrictShapeTypeChecker(shape); -return function(props,propName,componentName,location){ -var newProps=props; -if(props[propName]){ - -newProps={}; -newProps[propName]=flattenStyle(props[propName]);} - -return shapePropType(newProps,propName,componentName,location);};} - - - -module.exports=StyleSheetPropType; -}); -__d('createStrictShapeTypeChecker',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactPropTypeLocationNames=require('ReactPropTypeLocationNames'); - -var invariant=require('invariant'); -var merge=require('merge'); - -function createStrictShapeTypeChecker( -shapeTypes) -{ -function checkType(isRequired,props,propName,componentName,location){ -if(!props[propName]){ -if(isRequired){ -invariant( -false, -'Required object `'+propName+'` was not specified in '+('`'+ -componentName+'`.'));} - - -return;} - -var propValue=props[propName]; -var propType=typeof propValue; -var locationName= -location&&ReactPropTypeLocationNames[location]||'(unknown)'; -if(propType!=='object'){ -invariant( -false, -'Invalid '+locationName+' `'+propName+'` of type `'+propType+'` '+('supplied to `'+ -componentName+'`, expected `object`.'));} - - - - -var allKeys=merge(props[propName],shapeTypes); -for(var key in allKeys){ -var checker=shapeTypes[key]; -if(!checker){ -invariant( -false, -'Invalid props.'+propName+' key `'+key+'` supplied to `'+componentName+'`.'+'\nBad object: '+ -JSON.stringify(props[propName],null,' ')+'\nValid keys: '+ -JSON.stringify(Object.keys(shapeTypes),null,' '));} - - -var error=checker(propValue,key,componentName,location); -if(error){ -invariant( -false, -error.message+'\nBad object: '+ -JSON.stringify(props[propName],null,' '));}}} - - - - -function chainedCheckType( -props, -propName, -componentName, -location) -{ -return checkType(false,props,propName,componentName,location);} - -chainedCheckType.isRequired=checkType.bind(null,true); -return chainedCheckType;} - - -module.exports=createStrictShapeTypeChecker; -}); -__d('requireNativeComponent',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactNativeStyleAttributes=require('ReactNativeStyleAttributes'); -var UIManager=require('UIManager'); -var UnimplementedView=require('UnimplementedView'); - -var createReactNativeComponentClass=require('createReactNativeComponentClass'); - -var insetsDiffer=require('insetsDiffer'); -var pointsDiffer=require('pointsDiffer'); -var matricesDiffer=require('matricesDiffer'); -var processColor=require('processColor'); -var resolveAssetSource=require('resolveAssetSource'); -var sizesDiffer=require('sizesDiffer'); -var verifyPropTypes=require('verifyPropTypes'); -var warning=require('warning'); - - - - - - - - - - - - - - - - - - -function requireNativeComponent( -viewName, -componentInterface, -extraConfig) -{ -var viewConfig=UIManager[viewName]; -if(!viewConfig||!viewConfig.NativeProps){ -warning(false,'Native component for "%s" does not exist',viewName); -return UnimplementedView;} - -var nativeProps=babelHelpers.extends({}, -UIManager.RCTView.NativeProps, -viewConfig.NativeProps); - -viewConfig.uiViewClassName=viewName; -viewConfig.validAttributes={}; -viewConfig.propTypes=componentInterface&&componentInterface.propTypes; -for(var key in nativeProps){ -var useAttribute=false; -var attribute={}; - -var differ=TypeToDifferMap[nativeProps[key]]; -if(differ){ -attribute.diff=differ; -useAttribute=true;} - - -var processor=TypeToProcessorMap[nativeProps[key]]; -if(processor){ -attribute.process=processor; -useAttribute=true;} - - -viewConfig.validAttributes[key]=useAttribute?attribute:true;} - - - - - - - -viewConfig.validAttributes.style=ReactNativeStyleAttributes; - -if(__DEV__){ -componentInterface&&verifyPropTypes( -componentInterface, -viewConfig, -extraConfig&&extraConfig.nativeOnly);} - - -return createReactNativeComponentClass(viewConfig);} - - -var TypeToDifferMap={ - -CATransform3D:matricesDiffer, -CGPoint:pointsDiffer, -CGSize:sizesDiffer, -UIEdgeInsets:insetsDiffer}; - - - - -var TypeToProcessorMap={ - -CGColor:processColor, -CGColorArray:processColor, -UIColor:processColor, -UIColorArray:processColor, -CGImage:resolveAssetSource, -UIImage:resolveAssetSource, -RCTImageSource:resolveAssetSource, - -Color:processColor}; - - -module.exports=requireNativeComponent; -}); -__d('verifyPropTypes',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactNativeStyleAttributes=require('ReactNativeStyleAttributes'); - - - - - - - -function verifyPropTypes( -componentInterface, -viewConfig, -nativePropsToIgnore) -{ -if(!viewConfig){ -return;} - -var componentName=componentInterface.name|| -componentInterface.displayName|| -'unknown'; -if(!componentInterface.propTypes){ -throw new Error( -'`'+componentName+'` has no propTypes defined`');} - - - -var nativeProps=viewConfig.NativeProps; -for(var prop in nativeProps){ -if(!componentInterface.propTypes[prop]&& -!ReactNativeStyleAttributes[prop]&&( -!nativePropsToIgnore||!nativePropsToIgnore[prop])){ -var message; -if(componentInterface.propTypes.hasOwnProperty(prop)){ -message='`'+componentName+'` has incorrectly defined propType for native prop `'+ -viewConfig.uiViewClassName+'.'+prop+'` of native type `'+nativeProps[prop];}else -{ -message='`'+componentName+'` has no propType for native prop `'+ -viewConfig.uiViewClassName+'.'+prop+'` of native type `'+ -nativeProps[prop]+'`';} -; -throw new Error(message);}}} - - - - -module.exports=verifyPropTypes; -}); -__d('UnimplementedView',function(global, require, module, exports) { 'use strict'; - - - - - - - - -var React=require('React'); -var StyleSheet=require('StyleSheet'); - -var UnimplementedView=React.createClass({displayName:'UnimplementedView', -setNativeProps:function(){}, - - - - -render:function(){ - -var View=require('View'); -return ( -React.createElement(View,{style:[styles.unimplementedView,this.props.style]}, -this.props.children));}}); - - - - - -var styles=StyleSheet.create({ -unimplementedView:{ -borderWidth:1, -borderColor:'red', -alignSelf:'flex-start'}}); - - - -module.exports=UnimplementedView; -}); -__d('StyleSheet',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var StyleSheetRegistry=require('StyleSheetRegistry'); -var StyleSheetValidation=require('StyleSheetValidation'); -var flattenStyle=require('flattenStyle');var - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -StyleSheet=(function(){function StyleSheet(){babelHelpers.classCallCheck(this,StyleSheet);}babelHelpers.createClass(StyleSheet,null,[{key:'create',value:function create( - - -obj){ -var result={}; -for(var key in obj){ -StyleSheetValidation.validateStyle(key,obj); -result[key]=StyleSheetRegistry.registerStyle(obj[key]);} - -return result;}}]);return StyleSheet;})(); - - - - -StyleSheet.flatten=flattenStyle; - -module.exports=StyleSheet; -}); -__d('StyleSheetValidation',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ImageStylePropTypes=require('ImageStylePropTypes'); -var ReactPropTypeLocations=require('ReactPropTypeLocations'); -var TextStylePropTypes=require('TextStylePropTypes'); -var ViewStylePropTypes=require('ViewStylePropTypes'); - -var invariant=require('invariant');var - -StyleSheetValidation=(function(){function StyleSheetValidation(){babelHelpers.classCallCheck(this,StyleSheetValidation);}babelHelpers.createClass(StyleSheetValidation,null,[{key:'validateStyleProp',value:function validateStyleProp( -prop,style,caller){ -if(!__DEV__){ -return;} - -if(allStylePropTypes[prop]===undefined){ -var message1='"'+prop+'" is not a valid style property.'; -var message2='\nValid style props: '+ -JSON.stringify(Object.keys(allStylePropTypes).sort(),null,' '); -styleError(message1,style,caller,message2);} - -var error=allStylePropTypes[prop]( -style, -prop, -caller, -ReactPropTypeLocations.prop); - -if(error){ -styleError(error.message,style,caller);}}},{key:'validateStyle',value:function validateStyle( - - - -name,styles){ -if(!__DEV__){ -return;} - -for(var prop in styles[name]){ -StyleSheetValidation.validateStyleProp(prop,styles[name],'StyleSheet '+name);}}},{key:'addValidStylePropTypes',value:function addValidStylePropTypes( - - - -stylePropTypes){ -for(var key in stylePropTypes){ -allStylePropTypes[key]=stylePropTypes[key];}}}]);return StyleSheetValidation;})(); - - - - -var styleError=function(message1,style,caller,message2){ -invariant( -false, -message1+'\n'+(caller||'<>')+': '+ -JSON.stringify(style,null,' ')+(message2||''));}; - - - -var allStylePropTypes={}; - -StyleSheetValidation.addValidStylePropTypes(ImageStylePropTypes); -StyleSheetValidation.addValidStylePropTypes(TextStylePropTypes); -StyleSheetValidation.addValidStylePropTypes(ViewStylePropTypes); - -module.exports=StyleSheetValidation; -}); -__d('createReactNativeComponentClass',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var ReactNativeBaseComponent=require('ReactNativeBaseComponent'); - - - - - - - - - - - - -var createReactNativeComponentClass=function( -viewConfig) -{ -var Constructor=function(element){ -this._currentElement=element; - -this._rootNodeID=null; -this._renderedChildren=null;}; - -Constructor.displayName=viewConfig.uiViewClassName; -Constructor.viewConfig=viewConfig; -Constructor.propTypes=viewConfig.propTypes; -Constructor.prototype=new ReactNativeBaseComponent(viewConfig); -Constructor.prototype.constructor=Constructor; - -return Constructor;}; - - -module.exports=createReactNativeComponentClass; -}); -__d('ReactNativeBaseComponent',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var NativeMethodsMixin=require('NativeMethodsMixin'); -var ReactNativeAttributePayload=require('ReactNativeAttributePayload'); -var ReactNativeEventEmitter=require('ReactNativeEventEmitter'); -var ReactNativeTagHandles=require('ReactNativeTagHandles'); -var ReactMultiChild=require('ReactMultiChild'); -var UIManager=require('UIManager'); - -var deepFreezeAndThrowOnMutationInDev=require('deepFreezeAndThrowOnMutationInDev'); -var warning=require('warning'); - -var registrationNames=ReactNativeEventEmitter.registrationNames; -var putListener=ReactNativeEventEmitter.putListener; -var deleteListener=ReactNativeEventEmitter.deleteListener; -var deleteAllListeners=ReactNativeEventEmitter.deleteAllListeners; - - - - - - - - - - - - - - -var ReactNativeBaseComponent=function( -viewConfig) -{ -this.viewConfig=viewConfig;}; - - - - - - - - - - - - -var cachedIndexArray=function(size){ -var cachedResult=cachedIndexArray._cache[size]; -if(!cachedResult){ -var arr=[]; -for(var i=0;i=deviceScale){ -return scales[i];}} - - - - - - -return scales[scales.length-1]||1;} - - -function resolveAssetSource(source){ -if(typeof source==='object'){ -return source;} - - -var asset=AssetRegistry.getAssetByID(source); -if(asset){ -return assetToImageSource(asset);} - - -return null;} - - -function assetToImageSource(asset){ -var devServerURL=getDevServerURL(); -return { -__packager_asset:true, -width:asset.width, -height:asset.height, -uri:devServerURL?getPathOnDevserver(devServerURL,asset):getPathInArchive(asset), -scale:pickScale(asset.scales,PixelRatio.get())};} - - - -module.exports=resolveAssetSource; -module.exports.pickScale=pickScale; -}); -__d('AssetRegistry',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - -var assets=[]; - -function registerAsset(asset){ - - -return assets.push(asset);} - - -function getAssetByID(assetId){ -return assets[assetId-1];} - - -module.exports={registerAsset:registerAsset,getAssetByID:getAssetByID}; -}); -__d('PixelRatio',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var Dimensions=require('Dimensions');var - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -PixelRatio=(function(){function PixelRatio(){babelHelpers.classCallCheck(this,PixelRatio);}babelHelpers.createClass(PixelRatio,null,[{key:'get',value:function get() - - - - - - - - - - - - - - - - - - -{ -return Dimensions.get('window').scale;}},{key:'getFontScale',value:function getFontScale() - - - - - - - - - - - - - -{ -return Dimensions.get('window').fontScale||PixelRatio.get();}},{key:'getPixelSizeForLayoutSize',value:function getPixelSizeForLayoutSize( - - - - - - - -layoutSize){ -return Math.round(layoutSize*PixelRatio.get());}},{key:'startDetecting',value:function startDetecting() - - - -{}}]);return PixelRatio;})(); - - -module.exports=PixelRatio; -}); -__d('Dimensions',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var UIManager=require('UIManager'); - -var invariant=require('invariant'); - -var dimensions=UIManager.Dimensions; - - - - -if(dimensions&&dimensions.windowPhysicalPixels){ - -dimensions=JSON.parse(JSON.stringify(dimensions)); - -var windowPhysicalPixels=dimensions.windowPhysicalPixels; -dimensions.window={ -width:windowPhysicalPixels.width/windowPhysicalPixels.scale, -height:windowPhysicalPixels.height/windowPhysicalPixels.scale, -scale:windowPhysicalPixels.scale, -fontScale:windowPhysicalPixels.fontScale}; - - - -delete dimensions.windowPhysicalPixels;}var - - -Dimensions=(function(){function Dimensions(){babelHelpers.classCallCheck(this,Dimensions);}babelHelpers.createClass(Dimensions,null,[{key:'set',value:function set( - - - - - -dims){ -babelHelpers.extends(dimensions,dims); -return true;}},{key:'get',value:function get( - - - - - - - - - - - - - - - -dim){ -invariant(dimensions[dim],'No dimension set for key '+dim); -return dimensions[dim];}}]);return Dimensions;})(); - - - -module.exports=Dimensions; -}); -__d('ReactChildren',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var PooledClass=require('PooledClass'); -var ReactElement=require('ReactElement'); - -var emptyFunction=require('emptyFunction'); -var traverseAllChildren=require('traverseAllChildren'); - -var twoArgumentPooler=PooledClass.twoArgumentPooler; -var fourArgumentPooler=PooledClass.fourArgumentPooler; - - -var userProvidedKeyEscapeRegex=/\/(?!\/)/g; -function escapeUserProvidedKey(text){ -return (''+text).replace(userProvidedKeyEscapeRegex,'//');} - - - - - - - - - - - -function ForEachBookKeeping(forEachFunction,forEachContext){ -this.func=forEachFunction; -this.context=forEachContext; -this.count=0;} - -ForEachBookKeeping.prototype.destructor=function(){ -this.func=null; -this.context=null; -this.count=0;}; - -PooledClass.addPoolingTo(ForEachBookKeeping,twoArgumentPooler); - -function forEachSingleChild(bookKeeping,child,name){var -func=bookKeeping.func;var context=bookKeeping.context; -func.call(context,child,bookKeeping.count++);} - - - - - - - - - - - - -function forEachChildren(children,forEachFunc,forEachContext){ -if(children==null){ -return children;} - -var traverseContext= -ForEachBookKeeping.getPooled(forEachFunc,forEachContext); -traverseAllChildren(children,forEachSingleChild,traverseContext); -ForEachBookKeeping.release(traverseContext);} - - - - - - - - - - - - -function MapBookKeeping(mapResult,keyPrefix,mapFunction,mapContext){ -this.result=mapResult; -this.keyPrefix=keyPrefix; -this.func=mapFunction; -this.context=mapContext; -this.count=0;} - -MapBookKeeping.prototype.destructor=function(){ -this.result=null; -this.keyPrefix=null; -this.func=null; -this.context=null; -this.count=0;}; - -PooledClass.addPoolingTo(MapBookKeeping,fourArgumentPooler); - -function mapSingleChildIntoContext(bookKeeping,child,childKey){var -result=bookKeeping.result;var keyPrefix=bookKeeping.keyPrefix;var func=bookKeeping.func;var context=bookKeeping.context; - -var mappedChild=func.call(context,child,bookKeeping.count++); -if(Array.isArray(mappedChild)){ -mapIntoWithKeyPrefixInternal( -mappedChild, -result, -childKey, -emptyFunction.thatReturnsArgument);}else - -if(mappedChild!=null){ -if(ReactElement.isValidElement(mappedChild)){ -mappedChild=ReactElement.cloneAndReplaceKey( -mappedChild, - - -keyPrefix+( - -mappedChild!==child? -escapeUserProvidedKey(mappedChild.key||'')+'/': -'')+ - -childKey);} - - -result.push(mappedChild);}} - - - -function mapIntoWithKeyPrefixInternal(children,array,prefix,func,context){ -var escapedPrefix=''; -if(prefix!=null){ -escapedPrefix=escapeUserProvidedKey(prefix)+'/';} - -var traverseContext=MapBookKeeping.getPooled( -array, -escapedPrefix, -func, -context); - -traverseAllChildren(children,mapSingleChildIntoContext,traverseContext); -MapBookKeeping.release(traverseContext);} - - - - - - - - - - - - - -function mapChildren(children,func,context){ -if(children==null){ -return children;} - -var result=[]; -mapIntoWithKeyPrefixInternal(children,result,null,func,context); -return result;} - - - - -function forEachSingleChildDummy(traverseContext,child,name){ -return null;} - - - - - - - - - -function countChildren(children,context){ -return traverseAllChildren(children,forEachSingleChildDummy,null);} - - - - - - - -function toArray(children){ -var result=[]; -mapIntoWithKeyPrefixInternal( -children, -result, -null, -emptyFunction.thatReturnsArgument); - -return result;} - - - -var ReactChildren={ -forEach:forEachChildren, -map:mapChildren, -mapIntoWithKeyPrefixInternal:mapIntoWithKeyPrefixInternal, -count:countChildren, -toArray:toArray}; - - -module.exports=ReactChildren; -}); -__d('ReactClass',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactComponent=require('ReactComponent'); -var ReactElement=require('ReactElement'); -var ReactPropTypeLocations=require('ReactPropTypeLocations'); -var ReactPropTypeLocationNames=require('ReactPropTypeLocationNames'); -var ReactNoopUpdateQueue=require('ReactNoopUpdateQueue'); - -var assign=require('Object.assign'); -var emptyObject=require('emptyObject'); -var invariant=require('invariant'); -var keyMirror=require('keyMirror'); -var keyOf=require('keyOf'); -var warning=require('warning'); - -var MIXINS_KEY=keyOf({mixins:null}); - - - - -var SpecPolicy=keyMirror({ - - - -DEFINE_ONCE:null, - - - - -DEFINE_MANY:null, - - - -OVERRIDE_BASE:null, - - - - - -DEFINE_MANY_MERGED:null}); - - - -var injectedMixins=[]; - -var warnedSetProps=false; -function warnSetProps(){ -if(!warnedSetProps){ -warnedSetProps=true; -warning( -false, -'setProps(...) and replaceProps(...) are deprecated. '+ -'Instead, call render again at the top level.');}} - - - - - - - - - - - - - - - - - - - - - - - - - - -var ReactClassInterface={ - - - - - - - -mixins:SpecPolicy.DEFINE_MANY, - - - - - - - - -statics:SpecPolicy.DEFINE_MANY, - - - - - - - -propTypes:SpecPolicy.DEFINE_MANY, - - - - - - - -contextTypes:SpecPolicy.DEFINE_MANY, - - - - - - - -childContextTypes:SpecPolicy.DEFINE_MANY, - - - - - - - - - - - - - -getDefaultProps:SpecPolicy.DEFINE_MANY_MERGED, - - - - - - - - - - - - - - - -getInitialState:SpecPolicy.DEFINE_MANY_MERGED, - - - - - -getChildContext:SpecPolicy.DEFINE_MANY_MERGED, - - - - - - - - - - - - - - - - - -render:SpecPolicy.DEFINE_ONCE, - - - - - - - - - - - - -componentWillMount:SpecPolicy.DEFINE_MANY, - - - - - - - - - - - -componentDidMount:SpecPolicy.DEFINE_MANY, - - - - - - - - - - - - - - - - - - - - -componentWillReceiveProps:SpecPolicy.DEFINE_MANY, - - - - - - - - - - - - - - - - - - - - - -shouldComponentUpdate:SpecPolicy.DEFINE_ONCE, - - - - - - - - - - - - - - - - -componentWillUpdate:SpecPolicy.DEFINE_MANY, - - - - - - - - - - - - - -componentDidUpdate:SpecPolicy.DEFINE_MANY, - - - - - - - - - - - - -componentWillUnmount:SpecPolicy.DEFINE_MANY, - - - - - - - - - - - - - - - -updateComponent:SpecPolicy.OVERRIDE_BASE}; - - - - - - - - - - - - -var RESERVED_SPEC_KEYS={ -displayName:function(Constructor,displayName){ -Constructor.displayName=displayName;}, - -mixins:function(Constructor,mixins){ -if(mixins){ -for(var i=0;i1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];} - - - -if(newThis!==component&&newThis!==null){ -warning( -false, -'bind(): React component methods may only be bound to the '+ -'component instance. See %s', -componentName);}else - -if(!args.length){ -warning( -false, -'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', -componentName); - -return boundMethod;} - -var reboundMethod=_bind.apply(boundMethod,arguments); -reboundMethod.__reactBoundContext=component; -reboundMethod.__reactBoundMethod=method; -reboundMethod.__reactBoundArguments=args; -return reboundMethod;};} - - - -return boundMethod;} - - - - - - - -function bindAutoBindMethods(component){ -for(var autoBindKey in component.__reactAutoBindMap){ -if(component.__reactAutoBindMap.hasOwnProperty(autoBindKey)){ -var method=component.__reactAutoBindMap[autoBindKey]; -component[autoBindKey]=bindAutoBindMethod( -component, -method);}}} - - - - - - - - - -var ReactClassMixin={ - - - - - -replaceState:function(newState,callback){ -this.updater.enqueueReplaceState(this,newState); -if(callback){ -this.updater.enqueueCallback(this,callback);}}, - - - - - - - - - -isMounted:function(){ -return this.updater.isMounted(this);}, - - - - - - - - - - - -setProps:function(partialProps,callback){ -if(__DEV__){ -warnSetProps();} - -this.updater.enqueueSetProps(this,partialProps); -if(callback){ -this.updater.enqueueCallback(this,callback);}}, - - - - - - - - - - - - -replaceProps:function(newProps,callback){ -if(__DEV__){ -warnSetProps();} - -this.updater.enqueueReplaceProps(this,newProps); -if(callback){ -this.updater.enqueueCallback(this,callback);}}}; - - - - -var ReactClassComponent=function(){}; -assign( -ReactClassComponent.prototype, -ReactComponent.prototype, -ReactClassMixin); - - - - - - - -var ReactClass={ - - - - - - - - -createClass:function(spec){ -var Constructor=function(props,context,updater){ - - - -if(__DEV__){ -warning( -this instanceof Constructor, -'Something is calling a React component directly. Use a factory or '+ -'JSX instead. See: https://fb.me/react-legacyfactory');} - - - - -if(this.__reactAutoBindMap){ -bindAutoBindMethods(this);} - - -this.props=props; -this.context=context; -this.refs=emptyObject; -this.updater=updater||ReactNoopUpdateQueue; - -this.state=null; - - - - -var initialState=this.getInitialState?this.getInitialState():null; -if(__DEV__){ - -if(typeof initialState==='undefined'&& -this.getInitialState._isMockFunction){ - - -initialState=null;}} - - -invariant( -typeof initialState==='object'&&!Array.isArray(initialState), -'%s.getInitialState(): must return an object or null', -Constructor.displayName||'ReactCompositeComponent'); - - -this.state=initialState;}; - -Constructor.prototype=new ReactClassComponent(); -Constructor.prototype.constructor=Constructor; - -injectedMixins.forEach( -mixSpecIntoComponent.bind(null,Constructor)); - - -mixSpecIntoComponent(Constructor,spec); - - -if(Constructor.getDefaultProps){ -Constructor.defaultProps=Constructor.getDefaultProps();} - - -if(__DEV__){ - - - - -if(Constructor.getDefaultProps){ -Constructor.getDefaultProps.isReactClassApproved={};} - -if(Constructor.prototype.getInitialState){ -Constructor.prototype.getInitialState.isReactClassApproved={};}} - - - -invariant( -Constructor.prototype.render, -'createClass(...): Class specification must implement a `render` method.'); - - -if(__DEV__){ -warning( -!Constructor.prototype.componentShouldUpdate, -'%s has a method called '+ -'componentShouldUpdate(). Did you mean shouldComponentUpdate()? '+ -'The name is phrased as a question because the function is '+ -'expected to return a value.', -spec.displayName||'A component'); - -warning( -!Constructor.prototype.componentWillRecieveProps, -'%s has a method called '+ -'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?', -spec.displayName||'A component');} - - - - -for(var methodName in ReactClassInterface){ -if(!Constructor.prototype[methodName]){ -Constructor.prototype[methodName]=null;}} - - - -return Constructor;}, - - -injection:{ -injectMixin:function(mixin){ -injectedMixins.push(mixin);}}}; - - - - - -module.exports=ReactClass; -}); -__d('ReactComponent',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactNoopUpdateQueue=require('ReactNoopUpdateQueue'); - -var canDefineProperty=require('canDefineProperty'); -var emptyObject=require('emptyObject'); -var invariant=require('invariant'); -var warning=require('warning'); - - - - -function ReactComponent(props,context,updater){ -this.props=props; -this.context=context; -this.refs=emptyObject; - - -this.updater=updater||ReactNoopUpdateQueue;} - - -ReactComponent.prototype.isReactComponent={}; - - - - - - - - - - - - - - - - - - - - - - - - - - -ReactComponent.prototype.setState=function(partialState,callback){ -invariant( -typeof partialState==='object'|| -typeof partialState==='function'|| -partialState==null, -'setState(...): takes an object of state variables to update or a '+ -'function which returns an object of state variables.'); - -if(__DEV__){ -warning( -partialState!=null, -'setState(...): You passed an undefined or null state object; '+ -'instead, use forceUpdate().');} - - -this.updater.enqueueSetState(this,partialState); -if(callback){ -this.updater.enqueueCallback(this,callback);}}; - - - - - - - - - - - - - - - - - -ReactComponent.prototype.forceUpdate=function(callback){ -this.updater.enqueueForceUpdate(this); -if(callback){ -this.updater.enqueueCallback(this,callback);}}; - - - - - - - - -if(__DEV__){ -var deprecatedAPIs={ -getDOMNode:[ -'getDOMNode', -'Use ReactDOM.findDOMNode(component) instead.'], - -isMounted:[ -'isMounted', -'Instead, make sure to clean up subscriptions and pending requests in '+ -'componentWillUnmount to prevent memory leaks.'], - -replaceProps:[ -'replaceProps', -'Instead, call render again at the top level.'], - -replaceState:[ -'replaceState', -'Refactor your code to use setState instead (see '+ -'https://github.com/facebook/react/issues/3236).'], - -setProps:[ -'setProps', -'Instead, call render again at the top level.']}; - - -var defineDeprecationWarning=function(methodName,info){ -if(canDefineProperty){ -Object.defineProperty(ReactComponent.prototype,methodName,{ -get:function(){ -warning( -false, -'%s(...) is deprecated in plain JavaScript React classes. %s', -info[0], -info[1]); - -return undefined;}});}}; - - - - -for(var fnName in deprecatedAPIs){ -if(deprecatedAPIs.hasOwnProperty(fnName)){ -defineDeprecationWarning(fnName,deprecatedAPIs[fnName]);}}} - - - - -module.exports=ReactComponent; -}); -__d('ReactNoopUpdateQueue',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var warning=require('warning'); - -function warnTDZ(publicInstance,callerName){ -if(__DEV__){ -warning( -false, -'%s(...): Can only update a mounted or mounting component. '+ -'This usually means you called %s() on an unmounted component. '+ -'This is a no-op. Please check the code for the %s component.', -callerName, -callerName, -publicInstance.constructor&&publicInstance.constructor.displayName||'');}} - - - - - - - -var ReactNoopUpdateQueue={ - - - - - - - - -isMounted:function(publicInstance){ -return false;}, - - - - - - - - - - -enqueueCallback:function(publicInstance,callback){}, - - - - - - - - - - - - - - -enqueueForceUpdate:function(publicInstance){ -warnTDZ(publicInstance,'forceUpdate');}, - - - - - - - - - - - - - -enqueueReplaceState:function(publicInstance,completeState){ -warnTDZ(publicInstance,'replaceState');}, - - - - - - - - - - - - -enqueueSetState:function(publicInstance,partialState){ -warnTDZ(publicInstance,'setState');}, - - - - - - - - - -enqueueSetProps:function(publicInstance,partialProps){ -warnTDZ(publicInstance,'setProps');}, - - - - - - - - - -enqueueReplaceProps:function(publicInstance,props){ -warnTDZ(publicInstance,'replaceProps');}}; - - - - -module.exports=ReactNoopUpdateQueue; -}); -__d('ReactElementValidator',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - -var ReactElement=require('ReactElement'); -var ReactPropTypeLocations=require('ReactPropTypeLocations'); -var ReactPropTypeLocationNames=require('ReactPropTypeLocationNames'); -var ReactCurrentOwner=require('ReactCurrentOwner'); - -var canDefineProperty=require('canDefineProperty'); -var getIteratorFn=require('getIteratorFn'); -var invariant=require('invariant'); -var warning=require('warning'); - -function getDeclarationErrorAddendum(){ -if(ReactCurrentOwner.current){ -var name=ReactCurrentOwner.current.getName(); -if(name){ -return ' Check the render method of `'+name+'`.';}} - - -return '';} - - - - - - - -var ownerHasKeyUseWarning={}; - -var loggedTypeFailures={}; - - - - - - - - - - - -function validateExplicitKey(element,parentType){ -if(!element._store||element._store.validated||element.key!=null){ -return;} - -element._store.validated=true; - -var addenda=getAddendaForKeyUse('uniqueKey',element,parentType); -if(addenda===null){ - -return;} - -warning( -false, -'Each child in an array or iterator should have a unique "key" prop.'+ -'%s%s%s', -addenda.parentOrOwner||'', -addenda.childOwner||'', -addenda.url||'');} - - - - - - - - - - - - - -function getAddendaForKeyUse(messageType,element,parentType){ -var addendum=getDeclarationErrorAddendum(); -if(!addendum){ -var parentName=typeof parentType==='string'? -parentType:parentType.displayName||parentType.name; -if(parentName){ -addendum=' Check the top-level render call using <'+parentName+'>.';}} - - - -var memoizer=ownerHasKeyUseWarning[messageType]||( -ownerHasKeyUseWarning[messageType]={}); - -if(memoizer[addendum]){ -return null;} - -memoizer[addendum]=true; - -var addenda={ -parentOrOwner:addendum, -url:' See https://fb.me/react-warning-keys for more information.', -childOwner:null}; - - - - - -if(element&& -element._owner&& -element._owner!==ReactCurrentOwner.current){ - -addenda.childOwner=' It was passed a child from '+ -element._owner.getName()+'.';} - - -return addenda;} - - - - - - - - - - - -function validateChildKeys(node,parentType){ -if(typeof node!=='object'){ -return;} - -if(Array.isArray(node)){ -for(var i=0;ig){ -cx-=gx; -cy-=gy;}else -if(u>0&&g!=0){ -cx-=u/g*gx; -cy-=u/g*gy;} - - -v1=cx*cx+cy*cy; - -cx=c2x-sx;cy=c2y-sy; -u=cx*gx+cy*gy; - -if(u>g){ -cx-=gx; -cy-=gy;}else -if(u>0&&g!=0){ -cx-=u/g*gx; -cy-=u/g*gy;} - - -v2=cx*cx+cy*cy; - -if(v1<0.01&&v2<0.01){ -this.onLine(sx,sy,ex,ey); -return;} - - - -if(isNaN(v1)||isNaN(v2)){ -throw new Error('Bad input');} - - - -var s1x=(c1x+c2x)*0.5,s1y=(c1y+c2y)*0.5, -l1x=(c1x+sx)*0.5,l1y=(c1y+sy)*0.5, -l2x=(l1x+s1x)*0.5,l2y=(l1y+s1y)*0.5, -r2x=(ex+c2x)*0.5,r2y=(ey+c2y)*0.5, -r1x=(r2x+s1x)*0.5,r1y=(r2y+s1y)*0.5, -l2r1x=(l2x+r1x)*0.5,l2r1y=(l2y+r1y)*0.5; - - -this.onBezierCurve(sx,sy,l1x,l1y,l2x,l2y,l2r1x,l2r1y); -this.onBezierCurve(l2r1x,l2r1y,r1x,r1y,r2x,r2y,ex,ey);}, - - -onArc:function(sx,sy,ex,ey,cx,cy,rx,ry,sa,ea,ccw,rotation){ - -var rad=rotation?rotation*Math.PI/180:0,cos=Math.cos(rad),sin=Math.sin(rad), -xx=cos*rx,yx=-sin*ry, -xy=sin*rx,yy=cos*ry; - - -var arc=ea-sa; -if(arc<0&&!ccw)arc+=Math.PI*2;else -if(arc>0&&ccw)arc-=Math.PI*2; - -var n=Math.ceil(Math.abs(arc/(Math.PI/2))), -step=arc/n, -k=4/3*Math.tan(step/4); - -var x=Math.cos(sa),y=Math.sin(sa); - -for(var i=0;im.yy/m.xy?-1:1; -if(m.xx<0?m.xy>=0:m.xy<0)flip=-flip; -return this.rotate(deg-Math.atan2(flip*m.yx,flip*m.xx)*180/Math.PI,x,y);}, - - -scaleTo:function(x,y){ - -var m=this; - -var h=Math.sqrt(m.xx*m.xx+m.yx*m.yx); -m.xx/=h;m.yx/=h; - -h=Math.sqrt(m.yy*m.yy+m.xy*m.xy); -m.yy/=h;m.xy/=h; - -return this.scale(x,y);}, - - -resizeTo:function(width,height){ -var w=this.width,h=this.height; -if(!w||!h)return this; -return this.scaleTo(width/w,height/h);}, - - - - - - - - - - - - - - - - -inversePoint:function(x,y){ -var a=this.xx,b=this.yx, -c=this.xy,d=this.yy, -e=this.x,f=this.y; -var det=b*c-a*d; -if(det==0)return null; -return { -x:(d*(e-x)+c*(y-f))/det, -y:(a*(f-y)+b*(x-e))/det};}, - - - -point:function(x,y){ -var m=this; -return { -x:m.xx*x+m.xy*y+m.x, -y:m.yx*x+m.yy*y+m.y};}}); -}); -__d('DatePickerIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - -var NativeMethodsMixin=require('NativeMethodsMixin'); -var PropTypes=require('ReactPropTypes'); -var React=require('React'); -var RCTDatePickerIOSConsts=require('NativeModules').UIManager.RCTDatePicker.Constants; -var StyleSheet=require('StyleSheet'); -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - - - - - - - - - - - - - - -var DatePickerIOS=React.createClass({displayName:'DatePickerIOS', - -_picker:undefined, - -mixins:[NativeMethodsMixin], - -propTypes:babelHelpers.extends({}, -View.propTypes,{ - - - -date:PropTypes.instanceOf(Date).isRequired, - - - - - - - - -onDateChange:PropTypes.func.isRequired, - - - - - - -maximumDate:PropTypes.instanceOf(Date), - - - - - - -minimumDate:PropTypes.instanceOf(Date), - - - - -mode:PropTypes.oneOf(['date','time','datetime']), - - - - -minuteInterval:PropTypes.oneOf([1,2,3,4,5,6,10,12,15,20,30]), - - - - - - - - -timeZoneOffsetInMinutes:PropTypes.number}), - - -getDefaultProps:function(){ -return { -mode:'datetime'};}, - - - -_onChange:function(event){ -var nativeTimeStamp=event.nativeEvent.timestamp; -this.props.onDateChange&&this.props.onDateChange( -new Date(nativeTimeStamp)); - -this.props.onChange&&this.props.onChange(event); - - - - - -var propsTimeStamp=this.props.date.getTime(); -if(this._picker&&nativeTimeStamp!==propsTimeStamp){ -this._picker.setNativeProps({ -date:propsTimeStamp});}}, - - - - -render:function(){var _this=this; -var props=this.props; -return ( -React.createElement(View,{style:props.style}, -React.createElement(RCTDatePickerIOS,{ -ref:function(picker){return _this._picker=picker;}, -style:styles.datePickerIOS, -date:props.date.getTime(), -maximumDate: -props.maximumDate?props.maximumDate.getTime():undefined, - -minimumDate: -props.minimumDate?props.minimumDate.getTime():undefined, - -mode:props.mode, -minuteInterval:props.minuteInterval, -timeZoneOffsetInMinutes:props.timeZoneOffsetInMinutes, -onChange:this._onChange})));}}); - - - - - - -var styles=StyleSheet.create({ -datePickerIOS:{ -height:RCTDatePickerIOSConsts.ComponentHeight, -width:RCTDatePickerIOSConsts.ComponentWidth}}); - - - -var RCTDatePickerIOS=requireNativeComponent('RCTDatePicker',DatePickerIOS,{ -nativeOnly:{onChange:true}}); - - -module.exports=DatePickerIOS; -}); -__d('DrawerLayoutAndroid',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -module.exports=require('UnimplementedView'); -}); -__d('Image',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var EdgeInsetsPropType=require('EdgeInsetsPropType'); -var ImageResizeMode=require('ImageResizeMode'); -var ImageStylePropTypes=require('ImageStylePropTypes'); -var NativeMethodsMixin=require('NativeMethodsMixin'); -var NativeModules=require('NativeModules'); -var PropTypes=require('ReactPropTypes'); -var React=require('React'); -var ReactNativeViewAttributes=require('ReactNativeViewAttributes'); -var View=require('View'); -var StyleSheet=require('StyleSheet'); -var StyleSheetPropType=require('StyleSheetPropType'); - -var flattenStyle=require('flattenStyle'); -var invariant=require('invariant'); -var requireNativeComponent=require('requireNativeComponent'); -var resolveAssetSource=require('resolveAssetSource'); -var warning=require('warning'); - - - - - - - - - - - - - - - - - - - - - - - - - -var Image=React.createClass({displayName:'Image', -propTypes:{ -style:StyleSheetPropType(ImageStylePropTypes), - - - - - -source:PropTypes.oneOfType([ -PropTypes.shape({ -uri:PropTypes.string}), - - -PropTypes.number]), - - - - - -defaultSource:PropTypes.oneOfType([ -PropTypes.shape({ -uri:PropTypes.string}), - - -PropTypes.number]), - - - - - -accessible:PropTypes.bool, - - - - - -accessibilityLabel:PropTypes.string, - - - - - - - - -capInsets:EdgeInsetsPropType, - - - - -resizeMode:PropTypes.oneOf(['cover','contain','stretch']), - - - - -testID:PropTypes.string, - - - - -onLayout:PropTypes.func, - - - -onLoadStart:PropTypes.func, - - - - -onProgress:PropTypes.func, - - - - -onError:PropTypes.func, - - - -onLoad:PropTypes.func, - - - -onLoadEnd:PropTypes.func}, - - -statics:{ -resizeMode:ImageResizeMode}, - - -mixins:[NativeMethodsMixin], - - - - - -viewConfig:{ -uiViewClassName:'UIView', -validAttributes:ReactNativeViewAttributes.UIView}, - - -contextTypes:{ -isInAParentText:React.PropTypes.bool}, - - -render:function(){ -var source=resolveAssetSource(this.props.source)||{};var -width=source.width;var height=source.height; -var style=flattenStyle([{width:width,height:height},styles.base,this.props.style])||{}; - -var isNetwork=source.uri&&source.uri.match(/^https?:/); -var RawImage=isNetwork?RCTNetworkImageView:RCTImageView; -var resizeMode=this.props.resizeMode||(style||{}).resizeMode||'cover'; -var tintColor=(style||{}).tintColor; - - - -if(isNetwork&&tintColor){ -RawImage=RCTImageView;} - - -if(this.context.isInAParentText){ -return React.createElement(RCTVirtualImage,{source:source});}else -{ -return ( -React.createElement(RawImage,babelHelpers.extends({}, -this.props,{ -style:style, -resizeMode:resizeMode, -tintColor:tintColor, -source:source})));}}}); - - - - - - -var styles=StyleSheet.create({ -base:{ -overflow:'hidden'}}); - - - -var RCTImageView=requireNativeComponent('RCTImageView',Image); -var RCTNetworkImageView=NativeModules.NetworkImageViewManager?requireNativeComponent('RCTNetworkImageView',Image):RCTImageView; -var RCTVirtualImage=requireNativeComponent('RCTVirtualImage',Image); - -module.exports=Image; -}); -__d('EdgeInsetsPropType',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var PropTypes=require('ReactPropTypes'); - -var createStrictShapeTypeChecker=require('createStrictShapeTypeChecker'); - -var EdgeInsetsPropType=createStrictShapeTypeChecker({ -top:PropTypes.number, -left:PropTypes.number, -bottom:PropTypes.number, -right:PropTypes.number}); - - -module.exports=EdgeInsetsPropType; -}); -__d('ListView',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - - - - - - - -var ListViewDataSource=require('ListViewDataSource'); -var React=require('React'); -var RCTScrollViewManager=require('NativeModules').ScrollViewManager; -var ScrollView=require('ScrollView'); -var ScrollResponder=require('ScrollResponder'); -var StaticRenderer=require('StaticRenderer'); -var TimerMixin=require('react-timer-mixin/TimerMixin.js'); - -var isEmpty=require('isEmpty'); -var logError=require('logError'); -var merge=require('merge'); - -var PropTypes=React.PropTypes; - -var DEFAULT_PAGE_SIZE=1; -var DEFAULT_INITIAL_ROWS=10; -var DEFAULT_SCROLL_RENDER_AHEAD=1000; -var DEFAULT_END_REACHED_THRESHOLD=1000; -var DEFAULT_SCROLL_CALLBACK_THROTTLE=50; -var SCROLLVIEW_REF='listviewscroll'; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var ListView=React.createClass({displayName:'ListView', -mixins:[ScrollResponder.Mixin,TimerMixin], - -statics:{ -DataSource:ListViewDataSource}, - - - - - - - - - -propTypes:babelHelpers.extends({}, -ScrollView.propTypes,{ - -dataSource:PropTypes.instanceOf(ListViewDataSource).isRequired, - - - - - - - - -renderSeparator:PropTypes.func, - - - - - - - - - - - -renderRow:PropTypes.func.isRequired, - - - - - -initialListSize:PropTypes.number, - - - - - -onEndReached:PropTypes.func, - - - -onEndReachedThreshold:PropTypes.number, - - - -pageSize:PropTypes.number, - - - - - - - - -renderFooter:PropTypes.func, -renderHeader:PropTypes.func, - - - - - - - - - -renderSectionHeader:PropTypes.func, - - - - - - -renderScrollComponent:React.PropTypes.func.isRequired, - - - - -scrollRenderAheadDistance:React.PropTypes.number, - - - - - - - - - -onChangeVisibleRows:React.PropTypes.func, - - - - - -removeClippedSubviews:React.PropTypes.bool}), - - - - - -getMetrics:function(){ -return { -contentLength:this.scrollProperties.contentLength, -totalRows:this.props.dataSource.getRowCount(), -renderedRows:this.state.curRenderedRowsCount, -visibleRows:Object.keys(this._visibleRows).length};}, - - - - - - - -getScrollResponder:function(){ -return this.refs[SCROLLVIEW_REF]&& -this.refs[SCROLLVIEW_REF].getScrollResponder&& -this.refs[SCROLLVIEW_REF].getScrollResponder();}, - - -setNativeProps:function(props){ -this.refs[SCROLLVIEW_REF].setNativeProps(props);}, - - - - - - -getDefaultProps:function(){ -return { -initialListSize:DEFAULT_INITIAL_ROWS, -pageSize:DEFAULT_PAGE_SIZE, -renderScrollComponent:function(props){return React.createElement(ScrollView,props);}, -scrollRenderAheadDistance:DEFAULT_SCROLL_RENDER_AHEAD, -onEndReachedThreshold:DEFAULT_END_REACHED_THRESHOLD};}, - - - -getInitialState:function(){ -return { -curRenderedRowsCount:this.props.initialListSize, -prevRenderedRowsCount:0, -highlightedRow:{}};}, - - - -getInnerViewNode:function(){ -return this.refs[SCROLLVIEW_REF].getInnerViewNode();}, - - -componentWillMount:function(){ - -this.scrollProperties={ -visibleLength:null, -contentLength:null, -offset:0}; - -this._childFrames=[]; -this._visibleRows={};}, - - -componentDidMount:function(){var _this=this; - - -this.requestAnimationFrame(function(){ -_this._measureAndUpdateScrollProps();});}, - - - -componentWillReceiveProps:function(nextProps){ -if(this.props.dataSource!==nextProps.dataSource){ -this.setState(function(state,props){ -var rowsToRender=Math.min( -state.curRenderedRowsCount+props.pageSize, -props.dataSource.getRowCount()); - -return { -prevRenderedRowsCount:0, -curRenderedRowsCount:rowsToRender};});}}, - - - - - -componentDidUpdate:function(){var _this2=this; -this.requestAnimationFrame(function(){ -_this2._measureAndUpdateScrollProps();});}, - - - -onRowHighlighted:function(sectionID,rowID){ -this.setState({highlightedRow:{sectionID:sectionID,rowID:rowID}});}, - - -render:function(){ -var bodyComponents=[]; - -var dataSource=this.props.dataSource; -var allRowIDs=dataSource.rowIdentities; -var rowCount=0; -var sectionHeaderIndices=[]; - -var header=this.props.renderHeader&&this.props.renderHeader(); -var footer=this.props.renderFooter&&this.props.renderFooter(); -var totalIndex=header?1:0; - -for(var sectionIdx=0;sectionIdx=this.state.prevRenderedRowsCount&& -dataSource.sectionHeaderShouldUpdate(sectionIdx); -bodyComponents.push( -React.createElement(StaticRenderer,{ -key:'s_'+sectionID, -shouldUpdate:!!shouldUpdateHeader, -render:this.props.renderSectionHeader.bind( -null, -dataSource.getSectionHeaderData(sectionIdx), -sectionID)})); - - - -sectionHeaderIndices.push(totalIndex++);} - - -for(var rowIdx=0;rowIdx=this.state.prevRenderedRowsCount&& -dataSource.rowShouldUpdate(sectionIdx,rowIdx); -var row= -React.createElement(StaticRenderer,{ -key:'r_'+comboID, -shouldUpdate:!!shouldUpdateRow, -render:this.props.renderRow.bind( -null, -dataSource.getRowData(sectionIdx,rowIdx), -sectionID, -rowID, -this.onRowHighlighted)}); - - -bodyComponents.push(row); -totalIndex++; - -if(this.props.renderSeparator&&( -rowIdx!==rowIDs.length-1||sectionIdx===allRowIDs.length-1)){ -var adjacentRowHighlighted= -this.state.highlightedRow.sectionID===sectionID&&( -this.state.highlightedRow.rowID===rowID|| -this.state.highlightedRow.rowID===rowIDs[rowIdx+1]); - -var separator=this.props.renderSeparator( -sectionID, -rowID, -adjacentRowHighlighted); - -bodyComponents.push(separator); -totalIndex++;} - -if(++rowCount===this.state.curRenderedRowsCount){ -break;}} - - -if(rowCount>=this.state.curRenderedRowsCount){ -break;}}var _props= - - - - - - -this.props;var renderScrollComponent=_props.renderScrollComponent;var props=babelHelpers.objectWithoutProperties(_props,['renderScrollComponent']); -if(!props.scrollEventThrottle){ -props.scrollEventThrottle=DEFAULT_SCROLL_CALLBACK_THROTTLE;} - -if(props.removeClippedSubviews===undefined){ -props.removeClippedSubviews=true;} - -babelHelpers.extends(props,{ -onScroll:this._onScroll, -stickyHeaderIndices:sectionHeaderIndices, - - - -onKeyboardWillShow:undefined, -onKeyboardWillHide:undefined, -onKeyboardDidShow:undefined, -onKeyboardDidHide:undefined}); - - - - -return React.cloneElement(renderScrollComponent(props),{ -ref:SCROLLVIEW_REF, -onContentSizeChange:this._onContentSizeChange, -onLayout:this._onLayout}, -header,bodyComponents,footer);}, - - - - - - -_measureAndUpdateScrollProps:function(){ -var scrollComponent=this.getScrollResponder(); -if(!scrollComponent||!scrollComponent.getInnerViewNode){ -return;} - - - - -RCTScrollViewManager&&RCTScrollViewManager.calculateChildFrames&& -RCTScrollViewManager.calculateChildFrames( -React.findNodeHandle(scrollComponent), -this._updateChildFrames);}, - - - -_onContentSizeChange:function(width,height){ -this.scrollProperties.contentLength=!this.props.horizontal? -height:width; -this._updateVisibleRows(); -this._renderMoreRowsIfNeeded();}, - - -_onLayout:function(event){var _event$nativeEvent$la= -event.nativeEvent.layout;var width=_event$nativeEvent$la.width;var height=_event$nativeEvent$la.height; -this.scrollProperties.visibleLength=!this.props.horizontal? -height:width; -this._updateVisibleRows(); -this._renderMoreRowsIfNeeded();}, - - -_setScrollVisibleLength:function(left,top,width,height){ -this.scrollProperties.visibleLength=!this.props.horizontal? -height:width; -this._updateVisibleRows(); -this._renderMoreRowsIfNeeded();}, - - -_updateChildFrames:function(childFrames){ -this._updateVisibleRows(childFrames);}, - - -_maybeCallOnEndReached:function(event){ -if(this.props.onEndReached&& -this.scrollProperties.contentLength!==this._sentEndForContentLength&& -this._getDistanceFromEnd(this.scrollProperties)visibleMax||maxthis.props.onEndReachedThreshold){ - -this._sentEndForContentLength=null;} - - -this.props.onScroll&&this.props.onScroll(e);}}); - - - -module.exports=ListView; -}); -__d('ListViewDataSource',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var invariant=require('invariant'); -var isEmpty=require('isEmpty'); -var warning=require('warning'); - -function defaultGetRowData( -dataBlob, -sectionID, -rowID) -{ -return dataBlob[sectionID][rowID];} - - -function defaultGetSectionHeaderData( -dataBlob, -sectionID) -{ -return dataBlob[sectionID];}var - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -ListViewDataSource=(function(){ - - - - - - - - - - - - - - - - - - - - - - - - - - -function ListViewDataSource(params){babelHelpers.classCallCheck(this,ListViewDataSource); -invariant( -params&&typeof params.rowHasChanged==='function', -'Must provide a rowHasChanged function.'); - -this._rowHasChanged=params.rowHasChanged; -this._getRowData=params.getRowData||defaultGetRowData; -this._sectionHeaderHasChanged=params.sectionHeaderHasChanged; -this._getSectionHeaderData= -params.getSectionHeaderData||defaultGetSectionHeaderData; - -this._dataBlob=null; -this._dirtyRows=[]; -this._dirtySections=[]; -this._cachedRowCount=0; - - - -this.rowIdentities=[]; -this.sectionIdentities=[];}babelHelpers.createClass(ListViewDataSource,[{key:'cloneWithRows',value:function cloneWithRows( - - - - - - - - - - - - - - - - - - - -dataBlob, -rowIdentities) -{ -var rowIds=rowIdentities?[rowIdentities]:null; -if(!this._sectionHeaderHasChanged){ -this._sectionHeaderHasChanged=function(){return false;};} - -return this.cloneWithRowsAndSections({s1:dataBlob},['s1'],rowIds);}},{key:'cloneWithRowsAndSections',value:function cloneWithRowsAndSections( - - - - - - - - - - - - - - -dataBlob, -sectionIdentities, -rowIdentities) -{ -invariant( -typeof this._sectionHeaderHasChanged==='function', -'Must provide a sectionHeaderHasChanged function with section data.'); - -var newSource=new ListViewDataSource({ -getRowData:this._getRowData, -getSectionHeaderData:this._getSectionHeaderData, -rowHasChanged:this._rowHasChanged, -sectionHeaderHasChanged:this._sectionHeaderHasChanged}); - -newSource._dataBlob=dataBlob; -if(sectionIdentities){ -newSource.sectionIdentities=sectionIdentities;}else -{ -newSource.sectionIdentities=Object.keys(dataBlob);} - -if(rowIdentities){ -newSource.rowIdentities=rowIdentities;}else -{ -newSource.rowIdentities=[]; -newSource.sectionIdentities.forEach(function(sectionID){ -newSource.rowIdentities.push(Object.keys(dataBlob[sectionID]));});} - - -newSource._cachedRowCount=countRows(newSource.rowIdentities); - -newSource._calculateDirtyArrays( -this._dataBlob, -this.sectionIdentities, -this.rowIdentities); - - -return newSource;}},{key:'getRowCount',value:function getRowCount() - - -{ -return this._cachedRowCount;}},{key:'rowShouldUpdate',value:function rowShouldUpdate( - - - - - -sectionIndex,rowIndex){ -var needsUpdate=this._dirtyRows[sectionIndex][rowIndex]; -warning(needsUpdate!==undefined, -'missing dirtyBit for section, row: '+sectionIndex+', '+rowIndex); -return needsUpdate;}},{key:'getRowData',value:function getRowData( - - - - - -sectionIndex,rowIndex){ -var sectionID=this.sectionIdentities[sectionIndex]; -var rowID=this.rowIdentities[sectionIndex][rowIndex]; -warning( -sectionID!==undefined&&rowID!==undefined, -'rendering invalid section, row: '+sectionIndex+', '+rowIndex); - -return this._getRowData(this._dataBlob,sectionID,rowID);}},{key:'getRowIDForFlatIndex',value:function getRowIDForFlatIndex( - - - - - - -index){ -var accessIndex=index; -for(var ii=0;ii=this.rowIdentities[ii].length){ -accessIndex-=this.rowIdentities[ii].length;}else -{ -return this.rowIdentities[ii][accessIndex];}} - - -return null;}},{key:'getSectionIDForFlatIndex',value:function getSectionIDForFlatIndex( - - - - - - -index){ -var accessIndex=index; -for(var ii=0;ii=this.rowIdentities[ii].length){ -accessIndex-=this.rowIdentities[ii].length;}else -{ -return this.sectionIdentities[ii];}} - - -return null;}},{key:'getSectionLengths',value:function getSectionLengths() - - - - - -{ -var results=[]; -for(var ii=0;ii 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.');}} - - - -if(Platform.OS==='android'){ -if(this.props.keyboardDismissMode==='on-drag'){ -dismissKeyboard();}} - - -this.scrollResponderHandleScroll(e);}, - - -_handleContentOnLayout:function(e){var _e$nativeEvent$layout= -e.nativeEvent.layout;var width=_e$nativeEvent$layout.width;var height=_e$nativeEvent$layout.height; -this.props.onContentSizeChange&&this.props.onContentSizeChange(width,height);}, - - -render:function(){ -var contentContainerStyle=[ -this.props.horizontal&&styles.contentContainerHorizontal, -this.props.contentContainerStyle]; - -if(__DEV__&&this.props.style){ -var style=flattenStyle(this.props.style); -var childLayoutProps=['alignItems','justifyContent']. -filter(function(prop){return style&&style[prop]!==undefined;}); -invariant( -childLayoutProps.length===0, -'ScrollView child layout ('+JSON.stringify(childLayoutProps)+ -') must by applied through the contentContainerStyle prop.');} - - - -var contentSizeChangeProps={}; -if(this.props.onContentSizeChange){ -contentSizeChangeProps={ -onLayout:this._handleContentOnLayout};} - - - -var contentContainer= -React.createElement(View,babelHelpers.extends({}, -contentSizeChangeProps,{ -ref:INNERVIEW, -style:contentContainerStyle, -removeClippedSubviews:this.props.removeClippedSubviews, -collapsable:false}), -this.props.children); - - -var alwaysBounceHorizontal= -this.props.alwaysBounceHorizontal!==undefined? -this.props.alwaysBounceHorizontal: -this.props.horizontal; - -var alwaysBounceVertical= -this.props.alwaysBounceVertical!==undefined? -this.props.alwaysBounceVertical: -!this.props.horizontal; - -var props=babelHelpers.extends({}, -this.props,{ -alwaysBounceHorizontal:alwaysBounceHorizontal, -alwaysBounceVertical:alwaysBounceVertical, -style:[styles.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}); - - -var onRefreshStart=this.props.onRefreshStart; - - -props.onRefreshStart=onRefreshStart? -(function(){onRefreshStart&&onRefreshStart(this.endRefreshing);}).bind(this): -null; - -var ScrollViewClass; -if(Platform.OS==='ios'){ -ScrollViewClass=RCTScrollView;}else -if(Platform.OS==='android'){ -if(this.props.horizontal){ -ScrollViewClass=AndroidHorizontalScrollView;}else -{ -ScrollViewClass=AndroidScrollView;}} - - -invariant( -ScrollViewClass!==undefined, -'ScrollViewClass must not be undefined'); - - -return ( -React.createElement(ScrollViewClass,babelHelpers.extends({},props,{ref:SCROLLVIEW}), -contentContainer));}}); - - - - - -var styles=StyleSheet.create({ -base:{ -flex:1}, - -contentContainerHorizontal:{ -alignSelf:'flex-start', -flexDirection:'row'}}); - - - -var validAttributes=babelHelpers.extends({}, -ReactNativeViewAttributes.UIView,{ -alwaysBounceHorizontal:true, -alwaysBounceVertical:true, -automaticallyAdjustContentInsets:true, -bounces:true, -centerContent:true, -contentInset:{diff:insetsDiffer}, -contentOffset:{diff:pointsDiffer}, -decelerationRate:true, -horizontal:true, -keyboardDismissMode:true, -keyboardShouldPersistTaps:true, -maximumZoomScale:true, -minimumZoomScale:true, -pagingEnabled:true, -removeClippedSubviews:true, -scrollEnabled:true, -scrollIndicatorInsets:{diff:insetsDiffer}, -scrollsToTop:true, -showsHorizontalScrollIndicator:true, -showsVerticalScrollIndicator:true, -snapToInterval:true, -snapToAlignment:true, -stickyHeaderIndices:{diff:deepDiffer}, -scrollEventThrottle:true, -zoomScale:true}); - - -if(Platform.OS==='android'){ -var AndroidScrollView=requireNativeComponent('RCTScrollView',ScrollView); -var AndroidHorizontalScrollView=requireNativeComponent( -'AndroidHorizontalScrollView', -ScrollView);}else - -if(Platform.OS==='ios'){ -var RCTScrollView=requireNativeComponent('RCTScrollView',ScrollView);} - - -module.exports=ScrollView; -}); -__d('PointPropType',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var PropTypes=require('ReactPropTypes'); - -var createStrictShapeTypeChecker=require('createStrictShapeTypeChecker'); - -var PointPropType=createStrictShapeTypeChecker({ -x:PropTypes.number, -y:PropTypes.number}); - - -module.exports=PointPropType; -}); -__d('ScrollResponder',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var Dimensions=require('Dimensions'); -var Platform=require('Platform'); -var RCTDeviceEventEmitter=require('RCTDeviceEventEmitter'); -var React=require('React'); -var Subscribable=require('Subscribable'); -var TextInputState=require('TextInputState');var _require= - -require('NativeModules');var UIManager=_require.UIManager;var ScrollViewManager=_require.ScrollViewManager; - -var invariant=require('invariant'); -var warning=require('warning'); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var IS_ANIMATING_TOUCH_START_THRESHOLD_MS=16; - - - - - - - - - - -var ScrollResponderMixin={ -mixins:[Subscribable.Mixin], -scrollResponderMixinGetInitialState:function(){ -return { -isTouching:false, -lastMomentumScrollBeginTime:0, -lastMomentumScrollEndTime:0, - - - - - - -observedScrollSinceBecomingResponder:false, -becameResponderWhileAnimating:false};}, - - - - - - -scrollResponderHandleScrollShouldSetResponder:function(){ -return this.state.isTouching;}, - - - - - - - - - - - - - - - - - - - - - - - - - - - -scrollResponderHandleStartShouldSetResponder:function(){ -return false;}, - - - - - - - - - - - - - -scrollResponderHandleStartShouldSetResponderCapture:function(e){ - -var currentlyFocusedTextInput=TextInputState.currentlyFocusedField(); -if(!this.props.keyboardShouldPersistTaps&& -currentlyFocusedTextInput!=null&& -e.target!==currentlyFocusedTextInput){ -return true;} - -return this.scrollResponderIsAnimating();}, - - - - - - - - - - - - -scrollResponderHandleResponderReject:function(){ -warning(false,"ScrollView doesn't take rejection well - scrolls anyway");}, - - - - - - - - - - - - - - - - - -scrollResponderHandleTerminationRequest:function(){ -return !this.state.observedScrollSinceBecomingResponder;}, - - - - - - - -scrollResponderHandleTouchEnd:function(e){ -var nativeEvent=e.nativeEvent; -this.state.isTouching=nativeEvent.touches.length!==0; -this.props.onTouchEnd&&this.props.onTouchEnd(e);}, - - - - - -scrollResponderHandleResponderRelease:function(e){ -this.props.onResponderRelease&&this.props.onResponderRelease(e); - - - -var currentlyFocusedTextInput=TextInputState.currentlyFocusedField(); -if(!this.props.keyboardShouldPersistTaps&& -currentlyFocusedTextInput!=null&& -e.target!==currentlyFocusedTextInput&& -!this.state.observedScrollSinceBecomingResponder&& -!this.state.becameResponderWhileAnimating){ -this.props.onScrollResponderKeyboardDismissed&& -this.props.onScrollResponderKeyboardDismissed(e); -TextInputState.blurTextInput(currentlyFocusedTextInput);}}, - - - -scrollResponderHandleScroll:function(e){ -this.state.observedScrollSinceBecomingResponder=true; -this.props.onScroll&&this.props.onScroll(e);}, - - - - - -scrollResponderHandleResponderGrant:function(e){ -this.state.observedScrollSinceBecomingResponder=false; -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=true; -this.props.onTouchStart&&this.props.onTouchStart(e);}, - - - - - - - - - - - - - -scrollResponderHandleTouchMove:function(e){ -this.props.onTouchMove&&this.props.onTouchMove(e);}, - - - - - - - -scrollResponderIsAnimating:function(){ -var now=Date.now(); -var timeSinceLastMomentumScrollEnd=now-this.state.lastMomentumScrollEndTime; -var isAnimating=timeSinceLastMomentumScrollEnd=1, -'Navigator requires props.initialRoute or props.initialRouteStack.'); - -var initialRouteIndex=routeStack.length-1; -if(this.props.initialRoute){ -initialRouteIndex=routeStack.indexOf(this.props.initialRoute); -invariant( -initialRouteIndex!==-1, -'initialRoute is not in initialRouteStack.');} - - -return { -sceneConfigStack:routeStack.map( -function(route){return _this.props.configureScene(route);}), - -routeStack:routeStack, -presentedIndex:initialRouteIndex, -transitionFromIndex:null, -activeGesture:null, -pendingGestureProgress:null, -transitionQueue:[]};}, - - - -componentWillMount:function(){var _this2=this; - -this.__defineGetter__('navigationContext',this._getNavigationContext); - -this._subRouteFocus=[]; -this.parentNavigator=this.props.navigator; -this._handlers={}; -this.springSystem=new rebound.SpringSystem(); -this.spring=this.springSystem.createSpring(); -this.spring.setRestSpeedThreshold(0.05); -this.spring.setCurrentValue(0).setAtRest(); -this.spring.addListener({ -onSpringEndStateChange:function(){ -if(!_this2._interactionHandle){ -_this2._interactionHandle=_this2.createInteractionHandle();}}, - - -onSpringUpdate:function(){ -_this2._handleSpringUpdate();}, - -onSpringAtRest:function(){ -_this2._completeTransition();}}); - - -this.panGesture=PanResponder.create({ -onMoveShouldSetPanResponder:this._handleMoveShouldSetPanResponder, -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(){ -if(this._navigationContext){ -this._navigationContext.dispose(); -this._navigationContext=null;} - - -this.spring.destroy(); - -if(this._interactionHandle){ -this.clearInteractionHandle(this._interactionHandle);}}, - - - - - - - - - - -immediatelyResetRouteStack:function(nextRouteStack){var _this3=this; -var destIndex=nextRouteStack.length-1; -this.setState({ -routeStack:nextRouteStack, -sceneConfigStack:nextRouteStack.map( -this.props.configureScene), - -presentedIndex:destIndex, -activeGesture:null, -transitionFromIndex:null, -transitionQueue:[]}, -function(){ -_this3._handleSpringUpdate();});}, - - - -_transitionTo:function(destIndex,velocity,jumpSpringTo,cb){ -if(destIndex===this.state.presentedIndex){ -return;} - -if(this.state.transitionFromIndex!==null){ -this.state.transitionQueue.push({ -destIndex:destIndex, -velocity:velocity, -cb:cb}); - -return;} - -this.state.transitionFromIndex=this.state.presentedIndex; -this.state.presentedIndex=destIndex; -this.state.transitionCb=cb; -this._onAnimationStart(); -if(AnimationsDebugModule){ -AnimationsDebugModule.startRecordingFps();} - -var sceneConfig=this.state.sceneConfigStack[this.state.transitionFromIndex]|| -this.state.sceneConfigStack[this.state.presentedIndex]; -invariant( -sceneConfig, -'Cannot configure scene at index '+this.state.transitionFromIndex); - -if(jumpSpringTo!=null){ -this.spring.setCurrentValue(jumpSpringTo);} - -this.spring.setOvershootClampingEnabled(true); -this.spring.getSpringConfig().friction=sceneConfig.springFriction; -this.spring.getSpringConfig().tension=sceneConfig.springTension; -this.spring.setVelocity(velocity||sceneConfig.defaultTransitionVelocity); -this.spring.setEndValue(1);}, - - - - - - -_handleSpringUpdate:function(){ -if(!this.isMounted()){ -return;} - - -if(this.state.transitionFromIndex!=null){ -this._transitionBetween( -this.state.transitionFromIndex, -this.state.presentedIndex, -this.spring.getCurrentValue());}else - -if(this.state.activeGesture!=null){ -var presentedToIndex=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture); -this._transitionBetween( -this.state.presentedIndex, -presentedToIndex, -this.spring.getCurrentValue());}}, - - - - - - - -_completeTransition:function(){ -if(!this.isMounted()){ -return;} - - -if(this.spring.getCurrentValue()!==1&&this.spring.getCurrentValue()!==0){ - - -if(this.state.pendingGestureProgress){ -this.state.pendingGestureProgress=null;} - -return;} - -this._onAnimationEnd(); -var presentedIndex=this.state.presentedIndex; -var didFocusRoute=this._subRouteFocus[presentedIndex]||this.state.routeStack[presentedIndex]; -this._emitDidFocus(didFocusRoute); -if(AnimationsDebugModule){ -AnimationsDebugModule.stopRecordingFps(Date.now());} - -this.state.transitionFromIndex=null; -this.spring.setCurrentValue(0).setAtRest(); -this._hideScenes(); -if(this.state.transitionCb){ -this.state.transitionCb(); -this.state.transitionCb=null;} - -if(this._interactionHandle){ -this.clearInteractionHandle(this._interactionHandle); -this._interactionHandle=null;} - -if(this.state.pendingGestureProgress){ - - -var gestureToIndex=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture); -this._enableScene(gestureToIndex); -this.spring.setEndValue(this.state.pendingGestureProgress); -return;} - -if(this.state.transitionQueue.length){ -var queuedTransition=this.state.transitionQueue.shift(); -this._enableScene(queuedTransition.destIndex); -this._emitWillFocus(this.state.routeStack[queuedTransition.destIndex]); -this._transitionTo( -queuedTransition.destIndex, -queuedTransition.velocity, -null, -queuedTransition.cb);}}, - - - - -_emitDidFocus:function(route){ -this.navigationContext.emit('didfocus',{route:route}); - -if(this.props.onDidFocus){ -this.props.onDidFocus(route);}}, - - - -_emitWillFocus:function(route){ -this.navigationContext.emit('willfocus',{route:route}); - -var navBar=this._navBar; -if(navBar&&navBar.handleWillFocus){ -navBar.handleWillFocus(route);} - -if(this.props.onWillFocus){ -this.props.onWillFocus(route);}}, - - - - - - -_hideScenes:function(){ -var gesturingToIndex=null; -if(this.state.activeGesture){ -gesturingToIndex=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);} - -for(var i=0;i=this.state.routeStack.length-1&& -gestureName==='jumpForward'; -return wouldOverswipeForward||wouldOverswipeBack;}, - - -_deltaForGestureAction:function(gestureAction){ -switch(gestureAction){ -case 'pop': -case 'jumpBack': -return -1; -case 'jumpForward': -return 1; -default: -invariant(false,'Unsupported gesture action '+gestureAction); -return;}}, - - - -_handlePanResponderRelease:function(e,gestureState){var _this4=this; -var sceneConfig=this.state.sceneConfigStack[this.state.presentedIndex]; -var releaseGestureAction=this.state.activeGesture; -if(!releaseGestureAction){ - -return;} - -var releaseGesture=sceneConfig.gestures[releaseGestureAction]; -var destIndex=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture); -if(this.spring.getCurrentValue()===0){ - -this.spring.setCurrentValue(0).setAtRest(); -this._completeTransition(); -return;} - -var isTravelVertical=releaseGesture.direction==='top-to-bottom'||releaseGesture.direction==='bottom-to-top'; -var isTravelInverted=releaseGesture.direction==='right-to-left'||releaseGesture.direction==='bottom-to-top'; -var velocity,gestureDistance; -if(isTravelVertical){ -velocity=isTravelInverted?-gestureState.vy:gestureState.vy; -gestureDistance=isTravelInverted?-gestureState.dy:gestureState.dy;}else -{ -velocity=isTravelInverted?-gestureState.vx:gestureState.vx; -gestureDistance=isTravelInverted?-gestureState.dx:gestureState.dx;} - -var transitionVelocity=clamp(-10,velocity,10); -if(Math.abs(velocity)releaseGesture.fullDistance*releaseGesture.stillCompletionRatio; -transitionVelocity=hasGesturedEnoughToComplete?releaseGesture.snapVelocity:-releaseGesture.snapVelocity;} - -if(transitionVelocity<0||this._doesGestureOverswipe(releaseGestureAction)){ - - -if(this.state.transitionFromIndex==null){ - -var transitionBackToPresentedIndex=this.state.presentedIndex; - -this.state.presentedIndex=destIndex; -this._transitionTo( -transitionBackToPresentedIndex, --transitionVelocity, -1-this.spring.getCurrentValue());}}else - - -{ - -this._emitWillFocus(this.state.routeStack[destIndex]); -this._transitionTo( -destIndex, -transitionVelocity, -null, -function(){ -if(releaseGestureAction==='pop'){ -_this4._cleanScenesPastIndex(destIndex);}});} - - - - -this._detachGesture();}, - - -_handlePanResponderTerminate:function(e,gestureState){ -if(this.state.activeGesture==null){ -return;} - -var destIndex=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture); -this._detachGesture(); -var transitionBackToPresentedIndex=this.state.presentedIndex; - -this.state.presentedIndex=destIndex; -this._transitionTo( -transitionBackToPresentedIndex, -null, -1-this.spring.getCurrentValue());}, - - - -_attachGesture:function(gestureId){ -this.state.activeGesture=gestureId; -var gesturingToIndex=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture); -this._enableScene(gesturingToIndex);}, - - -_detachGesture:function(){ -this.state.activeGesture=null; -this.state.pendingGestureProgress=null; -this._hideScenes();}, - - -_handlePanResponderMove:function(e,gestureState){ -if(this._isMoveGestureAttached!==undefined){ -invariant( -this._expectingGestureGrant, -'Responder granted unexpectedly.'); - -this._attachGesture(this._expectingGestureGrant); -this._onAnimationStart(); -this._expectingGestureGrant=undefined;} - - -var sceneConfig=this.state.sceneConfigStack[this.state.presentedIndex]; -if(this.state.activeGesture){ -var gesture=sceneConfig.gestures[this.state.activeGesture]; -return this._moveAttachedGesture(gesture,gestureState);} - -var matchedGesture=this._matchGestureAction(GESTURE_ACTIONS,sceneConfig.gestures,gestureState); -if(matchedGesture){ -this._attachGesture(matchedGesture);}}, - - - -_moveAttachedGesture:function(gesture,gestureState){ -var isTravelVertical=gesture.direction==='top-to-bottom'||gesture.direction==='bottom-to-top'; -var isTravelInverted=gesture.direction==='right-to-left'||gesture.direction==='bottom-to-top'; -var distance=isTravelVertical?gestureState.dy:gestureState.dx; -distance=isTravelInverted?-distance:distance; -var gestureDetectMovement=gesture.gestureDetectMovement; -var nextProgress=(distance-gestureDetectMovement)/( -gesture.fullDistance-gestureDetectMovement); -if(nextProgress<0&&gesture.isDetachable){ -var gesturingToIndex=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture); -this._transitionBetween(this.state.presentedIndex,gesturingToIndex,0); -this._detachGesture(); -if(this.state.pendingGestureProgress!=null){ -this.spring.setCurrentValue(0);} - -return;} - -if(this._doesGestureOverswipe(this.state.activeGesture)){ -var frictionConstant=gesture.overswipe.frictionConstant; -var frictionByDistance=gesture.overswipe.frictionByDistance; -var frictionRatio=1/(frictionConstant+Math.abs(nextProgress)*frictionByDistance); -nextProgress*=frictionRatio;} - -nextProgress=clamp(0,nextProgress,1); -if(this.state.transitionFromIndex!=null){ -this.state.pendingGestureProgress=nextProgress;}else -if(this.state.pendingGestureProgress){ -this.spring.setEndValue(nextProgress);}else -{ -this.spring.setCurrentValue(nextProgress);}}, - - - -_matchGestureAction:function(eligibleGestures,gestures,gestureState){var _this5=this; -if(!gestures){ -return null;} - -var matchedGesture=null; -eligibleGestures.some(function(gestureName,gestureIndex){ -var gesture=gestures[gestureName]; -if(!gesture){ -return;} - -if(gesture.overswipe==null&&_this5._doesGestureOverswipe(gestureName)){ - -return false;} - -var isTravelVertical=gesture.direction==='top-to-bottom'||gesture.direction==='bottom-to-top'; -var isTravelInverted=gesture.direction==='right-to-left'||gesture.direction==='bottom-to-top'; -var currentLoc=isTravelVertical?gestureState.moveY:gestureState.moveX; -var travelDist=isTravelVertical?gestureState.dy:gestureState.dx; -var oppositeAxisTravelDist= -isTravelVertical?gestureState.dx:gestureState.dy; -var edgeHitWidth=gesture.edgeHitWidth; -if(isTravelInverted){ -currentLoc=-currentLoc; -travelDist=-travelDist; -oppositeAxisTravelDist=-oppositeAxisTravelDist; -edgeHitWidth=isTravelVertical? --(SCREEN_HEIGHT-edgeHitWidth): --(SCREEN_WIDTH-edgeHitWidth);} - -var moveStartedInRegion=gesture.edgeHitWidth==null|| -currentLoc=gesture.gestureDetectMovement; -if(!moveTravelledFarEnough){ -return false;} - -var directionIsCorrect=Math.abs(travelDist)>Math.abs(oppositeAxisTravelDist)*gesture.directionRatio; -if(directionIsCorrect){ -matchedGesture=gestureName; -return true;}else -{ -_this5._eligibleGestures=_this5._eligibleGestures.slice().splice(gestureIndex,1);}}); - - -return matchedGesture||null;}, - - -_transitionSceneStyle:function(fromIndex,toIndex,progress,index){ -var viewAtIndex=this.refs['scene_'+index]; -if(viewAtIndex===null||viewAtIndex===undefined){ -return;} - - -var sceneConfigIndex=fromIndex=0&&fromIndex>=0){ -navBar.updateProgress(progress,fromIndex,toIndex);}}, - - - -_handleResponderTerminationRequest:function(){ -return false;}, - - -_getDestIndexWithinBounds:function(n){ -var currentIndex=this.state.presentedIndex; -var destIndex=currentIndex+n; -invariant( -destIndex>=0, -'Cannot jump before the first route.'); - -var maxIndex=this.state.routeStack.length-1; -invariant( -maxIndex>=destIndex, -'Cannot jump past the last route.'); - -return destIndex;}, - - -_jumpN:function(n){ -var destIndex=this._getDestIndexWithinBounds(n); -this._enableScene(destIndex); -this._emitWillFocus(this.state.routeStack[destIndex]); -this._transitionTo(destIndex);}, - - -jumpTo:function(route){ -var destIndex=this.state.routeStack.indexOf(route); -invariant( -destIndex!==-1, -'Cannot jump to route that is not in the route stack'); - -this._jumpN(destIndex-this.state.presentedIndex);}, - - -jumpForward:function(){ -this._jumpN(1);}, - - -jumpBack:function(){ -this._jumpN(-1);}, - - -push:function(route){var _this6=this; -invariant(!!route,'Must supply route to push'); -var activeLength=this.state.presentedIndex+1; -var activeStack=this.state.routeStack.slice(0,activeLength); -var activeAnimationConfigStack=this.state.sceneConfigStack.slice(0,activeLength); -var nextStack=activeStack.concat([route]); -var destIndex=nextStack.length-1; -var nextAnimationConfigStack=activeAnimationConfigStack.concat([ -this.props.configureScene(route)]); - -this._emitWillFocus(nextStack[destIndex]); -this.setState({ -routeStack:nextStack, -sceneConfigStack:nextAnimationConfigStack}, -function(){ -_this6._enableScene(destIndex); -_this6._transitionTo(destIndex);});}, - - - -_popN:function(n){var _this7=this; -if(n===0){ -return;} - -invariant( -this.state.presentedIndex-n>=0, -'Cannot pop below zero'); - -var popIndex=this.state.presentedIndex-n; -this._enableScene(popIndex); -this._emitWillFocus(this.state.routeStack[popIndex]); -this._transitionTo( -popIndex, -null, -null, -function(){ -_this7._cleanScenesPastIndex(popIndex);});}, - - - - -pop:function(){ -if(this.state.transitionQueue.length){ - - - - - - -return;} - - -if(this.state.presentedIndex>0){ -this._popN(1);}}, - - - - - - - - - -replaceAtIndex:function(route,index,cb){var _this8=this; -invariant(!!route,'Must supply route to replace'); -if(index<0){ -index+=this.state.routeStack.length;} - - -if(this.state.routeStack.length<=index){ -return;} - - -var nextRouteStack=this.state.routeStack.slice(); -var nextAnimationModeStack=this.state.sceneConfigStack.slice(); -nextRouteStack[index]=route; -nextAnimationModeStack[index]=this.props.configureScene(route); - -if(index===this.state.presentedIndex){ -this._emitWillFocus(route);} - -this.setState({ -routeStack:nextRouteStack, -sceneConfigStack:nextAnimationModeStack}, -function(){ -if(index===_this8.state.presentedIndex){ -_this8._emitDidFocus(route);} - -cb&&cb();});}, - - - - - - -replace:function(route){ -this.replaceAtIndex(route,this.state.presentedIndex);}, - - - - - -replacePrevious:function(route){ -this.replaceAtIndex(route,this.state.presentedIndex-1);}, - - -popToTop:function(){ -this.popToRoute(this.state.routeStack[0]);}, - - -popToRoute:function(route){ -var indexOfRoute=this.state.routeStack.indexOf(route); -invariant( -indexOfRoute!==-1, -'Calling popToRoute for a route that doesn\'t exist!'); - -var numToPop=this.state.presentedIndex-indexOfRoute; -this._popN(numToPop);}, - - -replacePreviousAndPop:function(route){ -if(this.state.routeStack.length<2){ -return;} - -this.replacePrevious(route); -this.pop();}, - - -resetTo:function(route){var _this9=this; -invariant(!!route,'Must supply route to push'); -this.replaceAtIndex(route,0,function(){ - - -if(_this9.state.presentedIndex>0){ -_this9._popN(_this9.state.presentedIndex);}});}, - - - - -getCurrentRoutes:function(){ - -return this.state.routeStack.slice();}, - - -_cleanScenesPastIndex:function(index){ -var newStackLength=index+1; - -if(newStackLength0){ - - -var args=Array.prototype.slice.call(arguments); -this._emitQueue.push(args); -return;} - - -this._emitCounter++; - -if(LegacyEventTypes.has(eventType)){ - -this.__emit( -eventType, -data, -null, -{ -defaultPrevented:false, -eventPhase:AT_TARGET, -propagationStopped:true, -target:this});}else - - -{ -var targets=[this]; -var parentTarget=this.parent; -while(parentTarget){ -targets.unshift(parentTarget); -parentTarget=parentTarget.parent;} - - -var propagationStopped=false; -var defaultPrevented=false; -var callback=function(event){ -propagationStopped=propagationStopped||event.isPropagationStopped(); -defaultPrevented=defaultPrevented||event.defaultPrevented;}; - - - -targets.some(function(currentTarget){ -if(propagationStopped){ -return true;} - - -var extraInfo={ -defaultPrevented:defaultPrevented, -eventPhase:CAPTURING_PHASE, -propagationStopped:propagationStopped, -target:_this}; - - -currentTarget.__emit(eventType,data,callback,extraInfo);}, -this); - - -targets.reverse().some(function(currentTarget){ -if(propagationStopped){ -return true;} - -var extraInfo={ -defaultPrevented:defaultPrevented, -eventPhase:BUBBLING_PHASE, -propagationStopped:propagationStopped, -target:_this}; - -currentTarget.__emit(eventType,data,callback,extraInfo);}, -this);} - - -if(didEmitCallback){ -var event=NavigationEvent.pool(eventType,this,data); -propagationStopped&&event.stopPropagation(); -defaultPrevented&&event.preventDefault(); -didEmitCallback.call(this,event); -event.dispose();} - - -this._emitCounter--; -while(this._emitQueue.length){ -var args=this._emitQueue.shift(); -this.emit.apply(this,args);}}},{key:'dispose',value:function dispose() - - - -{ - -this._bubbleEventEmitter&&this._bubbleEventEmitter.removeAllListeners(); -this._captureEventEmitter&&this._captureEventEmitter.removeAllListeners(); -this._bubbleEventEmitter=null; -this._captureEventEmitter=null; -this._currentRoute=null;}},{key:'__emit',value:function __emit( - - - - -eventType, -data, -didEmitCallback, -extraInfo) -{ -var emitter; -switch(extraInfo.eventPhase){ -case CAPTURING_PHASE: -emitter=this._captureEventEmitter; -break; - -case AT_TARGET: -emitter=this._bubbleEventEmitter; -break; - -case BUBBLING_PHASE: -emitter=this._bubbleEventEmitter; -break; - -default: -invariant(false,'invalid event phase %s',extraInfo.eventPhase);} - - -if(extraInfo.target===this){ - -extraInfo.eventPhase=AT_TARGET;} - - -if(emitter){ -emitter.emit( -eventType, -data, -didEmitCallback, -extraInfo);}}},{key:'_onFocus',value:function _onFocus( - - - - -event){ -invariant( -event.data&&event.data.hasOwnProperty('route'), -'event type "%s" should provide route', -event.type); - - -this._currentRoute=event.data.route;}},{key:'parent',get:function(){var parent=this.__node.getParent();return parent?parent.getValue():null;}},{key:'top',get:function(){var result=null;var parentNode=this.__node.getParent();while(parentNode){result=parentNode.getValue();parentNode=parentNode.getParent();}return result;}},{key:'currentRoute',get:function(){return this._currentRoute;}}]);return NavigationContext;})(); - - - -module.exports=NavigationContext; -}); -__d('NavigationEvent',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var invariant=require('invariant');var - -NavigationEventPool=(function(){ - - -function NavigationEventPool(){babelHelpers.classCallCheck(this,NavigationEventPool); -this._list=[];}babelHelpers.createClass(NavigationEventPool,[{key:'get',value:function get( - - -type,currentTarget,data){ -var event; -if(this._list.length>0){ -event=this._list.pop(); -event.constructor.call(event,type,currentTarget,data);}else -{ -event=new NavigationEvent(type,currentTarget,data);} - -return event;}},{key:'put',value:function put( - - -event){ -this._list.push(event);}}]);return NavigationEventPool;})(); - - - -var _navigationEventPool=new NavigationEventPool();var - - - - - - - - - - - - - - - - - - - - - - - -NavigationEvent=(function(){babelHelpers.createClass(NavigationEvent,null,[{key:'pool',value:function pool( - - - - - - - - - - - - - - - - - - -type,currentTarget,data){ -return _navigationEventPool.get(type,currentTarget,data);}}]); - - -function NavigationEvent(type,currentTarget,data){babelHelpers.classCallCheck(this,NavigationEvent); -this.target=currentTarget; -this.eventPhase=NavigationEvent.NONE; - -this._type=type; -this._currentTarget=currentTarget; -this._data=data; -this._defaultPrevented=false; -this._disposed=false; -this._propagationStopped=false;}babelHelpers.createClass(NavigationEvent,[{key:'preventDefault',value:function preventDefault() - - - - - - - - - - - - - - - - - - - - - - -{ -this._defaultPrevented=true;}},{key:'stopPropagation',value:function stopPropagation() - - -{ -this._propagationStopped=true;}},{key:'stop',value:function stop() - - -{ -this.preventDefault(); -this.stopPropagation();}},{key:'isPropagationStopped',value:function isPropagationStopped() - - -{ -return this._propagationStopped;}},{key:'dispose',value:function dispose() - - - - - - - -{ -invariant(!this._disposed,'NavigationEvent is already disposed'); -this._disposed=true; - - -this.target=null; -this.eventPhase=NavigationEvent.NONE; -this._type=null; -this._currentTarget=null; -this._data=null; -this._defaultPrevented=false; - - -_navigationEventPool.put(this);}},{key:'type',get:function(){return this._type;}},{key:'currentTarget',get:function(){return this._currentTarget;}},{key:'data',get:function(){return this._data;}},{key:'defaultPrevented',get:function(){return this._defaultPrevented;}}]);return NavigationEvent;})(); - - - - - - - - - - -NavigationEvent.NONE=0; - - -NavigationEvent.CAPTURING_PHASE=1; - - - -NavigationEvent.AT_TARGET=2; - - - - - -NavigationEvent.BUBBLING_PHASE=3; - -module.exports=NavigationEvent; -}); -__d('NavigationEventEmitter',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var EventEmitter=require('EventEmitter'); -var NavigationEvent=require('NavigationEvent');var - - - - - - - - -NavigationEventEmitter=(function(_EventEmitter){babelHelpers.inherits(NavigationEventEmitter,_EventEmitter); - - - - -function NavigationEventEmitter(target){babelHelpers.classCallCheck(this,NavigationEventEmitter);var _this=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(NavigationEventEmitter).call(this)); - -_this._emitting=false; -_this._emitQueue=[]; -_this._target=target;return _this;}babelHelpers.createClass(NavigationEventEmitter,[{key:'emit',value:function emit( - - - -eventType, -data, -didEmitCallback, -extraInfo) -{ -if(this._emitting){ - - -var args=Array.prototype.slice.call(arguments); -this._emitQueue.unshift(args); -return;} - - -this._emitting=true; - -var event=NavigationEvent.pool(eventType,this._target,data); - -if(extraInfo){ -if(extraInfo.target){ -event.target=extraInfo.target;} - - -if(extraInfo.eventPhase){ -event.eventPhase=extraInfo.eventPhase;} - - -if(extraInfo.defaultPrevented){ -event.preventDefault();} - - -if(extraInfo.propagationStopped){ -event.stopPropagation();}} - - - - - -babelHelpers.get(Object.getPrototypeOf(NavigationEventEmitter.prototype),'emit',this).call(this,String(eventType),event); - -if(typeof didEmitCallback==='function'){ -didEmitCallback.call(this._target,event);} - -event.dispose(); - -this._emitting=false; - -while(this._emitQueue.length){ -var args=this._emitQueue.shift(); -this.emit.apply(this,args);}}}]);return NavigationEventEmitter;})(EventEmitter); - - - - -module.exports=NavigationEventEmitter; -}); -__d('NavigationTreeNode',function(global, require, module, exports) { 'use strict'; - - - - - - - - - -var invariant=require('invariant'); -var immutable=require('immutable/dist/immutable.js');var - -List=immutable.List;var - - - - - - -NavigationTreeNode=(function(){ - - - - - - -function NavigationTreeNode(value){babelHelpers.classCallCheck(this,NavigationTreeNode); -this.__parent=null; -this._children=new List(); -this._value=value;}babelHelpers.createClass(NavigationTreeNode,[{key:'getValue',value:function getValue() - - -{ -return this._value;}},{key:'getParent',value:function getParent() - - -{ -return this.__parent;}},{key:'getChildrenCount',value:function getChildrenCount() - - -{ -return this._children.size;}},{key:'getChildAt',value:function getChildAt( - - -index){ -return index>-1&&index-1, -'The node to be removed is not a child of this node.'); - - -child.__parent=null; - -this._children=this._children.splice(index,1);}},{key:'indexOf',value:function indexOf( - - -child){ -return this._children.indexOf(child);}},{key:'forEach',value:function forEach( - - -callback,context){ -this._children.forEach(callback,context);}},{key:'map',value:function map( - - -callback,context){ -return this._children.map(callback,context).toJS();}},{key:'some',value:function some( - - -callback,context){ -return this._children.some(callback,context);}}]);return NavigationTreeNode;})(); - - - - -module.exports=NavigationTreeNode; -}); -__d('immutable/dist/immutable.js',function(global, require, module, exports) { ( - - - - - - - - -function(global,factory){ -typeof exports==='object'&&typeof module!=='undefined'?module.exports=factory(): -typeof define==='function'&&define.amd?define(factory): -global.Immutable=factory();})( -this,function(){'use strict';var SLICE$0=Array.prototype.slice; - -function createClass(ctor,superClass){ -if(superClass){ -ctor.prototype=Object.create(superClass.prototype);} - -ctor.prototype.constructor=ctor;} - - -function Iterable(value){ -return isIterable(value)?value:Seq(value);} - - - -createClass(KeyedIterable,Iterable); -function KeyedIterable(value){ -return isKeyed(value)?value:KeyedSeq(value);} - - - -createClass(IndexedIterable,Iterable); -function IndexedIterable(value){ -return isIndexed(value)?value:IndexedSeq(value);} - - - -createClass(SetIterable,Iterable); -function SetIterable(value){ -return isIterable(value)&&!isAssociative(value)?value:SetSeq(value);} - - - - -function isIterable(maybeIterable){ -return !!(maybeIterable&&maybeIterable[IS_ITERABLE_SENTINEL]);} - - -function isKeyed(maybeKeyed){ -return !!(maybeKeyed&&maybeKeyed[IS_KEYED_SENTINEL]);} - - -function isIndexed(maybeIndexed){ -return !!(maybeIndexed&&maybeIndexed[IS_INDEXED_SENTINEL]);} - - -function isAssociative(maybeAssociative){ -return isKeyed(maybeAssociative)||isIndexed(maybeAssociative);} - - -function isOrdered(maybeOrdered){ -return !!(maybeOrdered&&maybeOrdered[IS_ORDERED_SENTINEL]);} - - -Iterable.isIterable=isIterable; -Iterable.isKeyed=isKeyed; -Iterable.isIndexed=isIndexed; -Iterable.isAssociative=isAssociative; -Iterable.isOrdered=isOrdered; - -Iterable.Keyed=KeyedIterable; -Iterable.Indexed=IndexedIterable; -Iterable.Set=SetIterable; - - -var IS_ITERABLE_SENTINEL='@@__IMMUTABLE_ITERABLE__@@'; -var IS_KEYED_SENTINEL='@@__IMMUTABLE_KEYED__@@'; -var IS_INDEXED_SENTINEL='@@__IMMUTABLE_INDEXED__@@'; -var IS_ORDERED_SENTINEL='@@__IMMUTABLE_ORDERED__@@'; - - -var DELETE='delete'; - - -var SHIFT=5; -var SIZE=1<>>0; -if(''+uint32Index!==index||uint32Index===4294967295){ -return NaN;} - -index=uint32Index;} - -return index<0?ensureSize(iter)+index:index;} - - -function returnTrue(){ -return true;} - - -function wholeSlice(begin,end,size){ -return (begin===0||size!==undefined&&begin<=-size)&&( -end===undefined||size!==undefined&&end>=size);} - - -function resolveBegin(begin,size){ -return resolveIndex(begin,size,0);} - - -function resolveEnd(end,size){ -return resolveIndex(end,size,size);} - - -function resolveIndex(index,size,defaultIndex){ -return index===undefined? -defaultIndex: -index<0? -Math.max(0,size+index): -size===undefined? -index: -Math.min(size,index);} - - - - -var ITERATE_KEYS=0; -var ITERATE_VALUES=1; -var ITERATE_ENTRIES=2; - -var REAL_ITERATOR_SYMBOL=typeof Symbol==='function'&&Symbol.iterator; -var FAUX_ITERATOR_SYMBOL='@@iterator'; - -var ITERATOR_SYMBOL=REAL_ITERATOR_SYMBOL||FAUX_ITERATOR_SYMBOL; - - -function Iterator(next){ -this.next=next;} - - -Iterator.prototype.toString=function(){ -return '[Iterator]';}; - - - -Iterator.KEYS=ITERATE_KEYS; -Iterator.VALUES=ITERATE_VALUES; -Iterator.ENTRIES=ITERATE_ENTRIES; - -Iterator.prototype.inspect= -Iterator.prototype.toSource=function(){return this.toString();}; -Iterator.prototype[ITERATOR_SYMBOL]=function(){ -return this;}; - - - -function iteratorValue(type,k,v,iteratorResult){ -var value=type===0?k:type===1?v:[k,v]; -iteratorResult?iteratorResult.value=value:iteratorResult={ -value:value,done:false}; - -return iteratorResult;} - - -function iteratorDone(){ -return {value:undefined,done:true};} - - -function hasIterator(maybeIterable){ -return !!getIteratorFn(maybeIterable);} - - -function isIterator(maybeIterator){ -return maybeIterator&&typeof maybeIterator.next==='function';} - - -function getIterator(iterable){ -var iteratorFn=getIteratorFn(iterable); -return iteratorFn&&iteratorFn.call(iterable);} - - -function getIteratorFn(iterable){ -var iteratorFn=iterable&&( -REAL_ITERATOR_SYMBOL&&iterable[REAL_ITERATOR_SYMBOL]|| -iterable[FAUX_ITERATOR_SYMBOL]); - -if(typeof iteratorFn==='function'){ -return iteratorFn;}} - - - -function isArrayLike(value){ -return value&&typeof value.length==='number';} - - -createClass(Seq,Iterable); -function Seq(value){ -return value===null||value===undefined?emptySequence(): -isIterable(value)?value.toSeq():seqFromValue(value);} - - -Seq.of=function(){ -return Seq(arguments);}; - - -Seq.prototype.toSeq=function(){ -return this;}; - - -Seq.prototype.toString=function(){ -return this.__toString('Seq {','}');}; - - -Seq.prototype.cacheResult=function(){ -if(!this._cache&&this.__iterateUncached){ -this._cache=this.entrySeq().toArray(); -this.size=this._cache.length;} - -return this;}; - - - - -Seq.prototype.__iterate=function(fn,reverse){ -return seqIterate(this,fn,reverse,true);}; - - - - -Seq.prototype.__iterator=function(type,reverse){ -return seqIterator(this,type,reverse,true);}; - - - - -createClass(KeyedSeq,Seq); -function KeyedSeq(value){ -return value===null||value===undefined? -emptySequence().toKeyedSeq(): -isIterable(value)? -isKeyed(value)?value.toSeq():value.fromEntrySeq(): -keyedSeqFromValue(value);} - - -KeyedSeq.prototype.toKeyedSeq=function(){ -return this;}; - - - - -createClass(IndexedSeq,Seq); -function IndexedSeq(value){ -return value===null||value===undefined?emptySequence(): -!isIterable(value)?indexedSeqFromValue(value): -isKeyed(value)?value.entrySeq():value.toIndexedSeq();} - - -IndexedSeq.of=function(){ -return IndexedSeq(arguments);}; - - -IndexedSeq.prototype.toIndexedSeq=function(){ -return this;}; - - -IndexedSeq.prototype.toString=function(){ -return this.__toString('Seq [',']');}; - - -IndexedSeq.prototype.__iterate=function(fn,reverse){ -return seqIterate(this,fn,reverse,false);}; - - -IndexedSeq.prototype.__iterator=function(type,reverse){ -return seqIterator(this,type,reverse,false);}; - - - - -createClass(SetSeq,Seq); -function SetSeq(value){ -return ( -value===null||value===undefined?emptySequence(): -!isIterable(value)?indexedSeqFromValue(value): -isKeyed(value)?value.entrySeq():value). -toSetSeq();} - - -SetSeq.of=function(){ -return SetSeq(arguments);}; - - -SetSeq.prototype.toSetSeq=function(){ -return this;}; - - - - -Seq.isSeq=isSeq; -Seq.Keyed=KeyedSeq; -Seq.Set=SetSeq; -Seq.Indexed=IndexedSeq; - -var IS_SEQ_SENTINEL='@@__IMMUTABLE_SEQ__@@'; - -Seq.prototype[IS_SEQ_SENTINEL]=true; - - - -createClass(ArraySeq,IndexedSeq); -function ArraySeq(array){ -this._array=array; -this.size=array.length;} - - -ArraySeq.prototype.get=function(index,notSetValue){ -return this.has(index)?this._array[wrapIndex(this,index)]:notSetValue;}; - - -ArraySeq.prototype.__iterate=function(fn,reverse){ -var array=this._array; -var maxIndex=array.length-1; -for(var ii=0;ii<=maxIndex;ii++){ -if(fn(array[reverse?maxIndex-ii:ii],ii,this)===false){ -return ii+1;}} - - -return ii;}; - - -ArraySeq.prototype.__iterator=function(type,reverse){ -var array=this._array; -var maxIndex=array.length-1; -var ii=0; -return new Iterator(function() -{return ii>maxIndex? -iteratorDone(): -iteratorValue(type,ii,array[reverse?maxIndex-ii++:ii++]);});}; - - - - - -createClass(ObjectSeq,KeyedSeq); -function ObjectSeq(object){ -var keys=Object.keys(object); -this._object=object; -this._keys=keys; -this.size=keys.length;} - - -ObjectSeq.prototype.get=function(key,notSetValue){ -if(notSetValue!==undefined&&!this.has(key)){ -return notSetValue;} - -return this._object[key];}; - - -ObjectSeq.prototype.has=function(key){ -return this._object.hasOwnProperty(key);}; - - -ObjectSeq.prototype.__iterate=function(fn,reverse){ -var object=this._object; -var keys=this._keys; -var maxIndex=keys.length-1; -for(var ii=0;ii<=maxIndex;ii++){ -var key=keys[reverse?maxIndex-ii:ii]; -if(fn(object[key],key,this)===false){ -return ii+1;}} - - -return ii;}; - - -ObjectSeq.prototype.__iterator=function(type,reverse){ -var object=this._object; -var keys=this._keys; -var maxIndex=keys.length-1; -var ii=0; -return new Iterator(function(){ -var key=keys[reverse?maxIndex-ii:ii]; -return ii++>maxIndex? -iteratorDone(): -iteratorValue(type,key,object[key]);});}; - - - -ObjectSeq.prototype[IS_ORDERED_SENTINEL]=true; - - -createClass(IterableSeq,IndexedSeq); -function IterableSeq(iterable){ -this._iterable=iterable; -this.size=iterable.length||iterable.size;} - - -IterableSeq.prototype.__iterateUncached=function(fn,reverse){ -if(reverse){ -return this.cacheResult().__iterate(fn,reverse);} - -var iterable=this._iterable; -var iterator=getIterator(iterable); -var iterations=0; -if(isIterator(iterator)){ -var step; -while(!(step=iterator.next()).done){ -if(fn(step.value,iterations++,this)===false){ -break;}}} - - - -return iterations;}; - - -IterableSeq.prototype.__iteratorUncached=function(type,reverse){ -if(reverse){ -return this.cacheResult().__iterator(type,reverse);} - -var iterable=this._iterable; -var iterator=getIterator(iterable); -if(!isIterator(iterator)){ -return new Iterator(iteratorDone);} - -var iterations=0; -return new Iterator(function(){ -var step=iterator.next(); -return step.done?step:iteratorValue(type,iterations++,step.value);});}; - - - - - -createClass(IteratorSeq,IndexedSeq); -function IteratorSeq(iterator){ -this._iterator=iterator; -this._iteratorCache=[];} - - -IteratorSeq.prototype.__iterateUncached=function(fn,reverse){ -if(reverse){ -return this.cacheResult().__iterate(fn,reverse);} - -var iterator=this._iterator; -var cache=this._iteratorCache; -var iterations=0; -while(iterations=cache.length){ -var step=iterator.next(); -if(step.done){ -return step;} - -cache[iterations]=step.value;} - -return iteratorValue(type,iterations,cache[iterations++]);});}; - - - - - - - - -function isSeq(maybeSeq){ -return !!(maybeSeq&&maybeSeq[IS_SEQ_SENTINEL]);} - - -var EMPTY_SEQ; - -function emptySequence(){ -return EMPTY_SEQ||(EMPTY_SEQ=new ArraySeq([]));} - - -function keyedSeqFromValue(value){ -var seq= -Array.isArray(value)?new ArraySeq(value).fromEntrySeq(): -isIterator(value)?new IteratorSeq(value).fromEntrySeq(): -hasIterator(value)?new IterableSeq(value).fromEntrySeq(): -typeof value==='object'?new ObjectSeq(value): -undefined; -if(!seq){ -throw new TypeError( -'Expected Array or iterable object of [k, v] entries, '+ -'or keyed object: '+value);} - - -return seq;} - - -function indexedSeqFromValue(value){ -var seq=maybeIndexedSeqFromValue(value); -if(!seq){ -throw new TypeError( -'Expected Array or iterable object of values: '+value);} - - -return seq;} - - -function seqFromValue(value){ -var seq=maybeIndexedSeqFromValue(value)|| -typeof value==='object'&&new ObjectSeq(value); -if(!seq){ -throw new TypeError( -'Expected Array or iterable object of values, or keyed object: '+value);} - - -return seq;} - - -function maybeIndexedSeqFromValue(value){ -return ( -isArrayLike(value)?new ArraySeq(value): -isIterator(value)?new IteratorSeq(value): -hasIterator(value)?new IterableSeq(value): -undefined);} - - - -function seqIterate(seq,fn,reverse,useKeys){ -var cache=seq._cache; -if(cache){ -var maxIndex=cache.length-1; -for(var ii=0;ii<=maxIndex;ii++){ -var entry=cache[reverse?maxIndex-ii:ii]; -if(fn(entry[1],useKeys?entry[0]:ii,seq)===false){ -return ii+1;}} - - -return ii;} - -return seq.__iterateUncached(fn,reverse);} - - -function seqIterator(seq,type,reverse,useKeys){ -var cache=seq._cache; -if(cache){ -var maxIndex=cache.length-1; -var ii=0; -return new Iterator(function(){ -var entry=cache[reverse?maxIndex-ii:ii]; -return ii++>maxIndex? -iteratorDone(): -iteratorValue(type,useKeys?entry[0]:ii-1,entry[1]);});} - - -return seq.__iteratorUncached(type,reverse);} - - -function fromJS(json,converter){ -return converter? -fromJSWith(converter,json,'',{'':json}): -fromJSDefault(json);} - - -function fromJSWith(converter,json,key,parentJSON){ -if(Array.isArray(json)){ -return converter.call(parentJSON,key,IndexedSeq(json).map(function(v,k){return fromJSWith(converter,v,k,json);}));} - -if(isPlainObj(json)){ -return converter.call(parentJSON,key,KeyedSeq(json).map(function(v,k){return fromJSWith(converter,v,k,json);}));} - -return json;} - - -function fromJSDefault(json){ -if(Array.isArray(json)){ -return IndexedSeq(json).map(fromJSDefault).toList();} - -if(isPlainObj(json)){ -return KeyedSeq(json).map(fromJSDefault).toMap();} - -return json;} - - -function isPlainObj(value){ -return value&&(value.constructor===Object||value.constructor===undefined);} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -function is(valueA,valueB){ -if(valueA===valueB||valueA!==valueA&&valueB!==valueB){ -return true;} - -if(!valueA||!valueB){ -return false;} - -if(typeof valueA.valueOf==='function'&& -typeof valueB.valueOf==='function'){ -valueA=valueA.valueOf(); -valueB=valueB.valueOf(); -if(valueA===valueB||valueA!==valueA&&valueB!==valueB){ -return true;} - -if(!valueA||!valueB){ -return false;}} - - -if(typeof valueA.equals==='function'&& -typeof valueB.equals==='function'&& -valueA.equals(valueB)){ -return true;} - -return false;} - - -function deepEqual(a,b){ -if(a===b){ -return true;} - - -if( -!isIterable(b)|| -a.size!==undefined&&b.size!==undefined&&a.size!==b.size|| -a.__hash!==undefined&&b.__hash!==undefined&&a.__hash!==b.__hash|| -isKeyed(a)!==isKeyed(b)|| -isIndexed(a)!==isIndexed(b)|| -isOrdered(a)!==isOrdered(b)) -{ -return false;} - - -if(a.size===0&&b.size===0){ -return true;} - - -var notAssociative=!isAssociative(a); - -if(isOrdered(a)){ -var entries=a.entries(); -return b.every(function(v,k){ -var entry=entries.next().value; -return entry&&is(entry[1],v)&&(notAssociative||is(entry[0],k));})&& -entries.next().done;} - - -var flipped=false; - -if(a.size===undefined){ -if(b.size===undefined){ -if(typeof a.cacheResult==='function'){ -a.cacheResult();}}else - -{ -flipped=true; -var _=a; -a=b; -b=_;}} - - - -var allEqual=true; -var bSize=b.__iterate(function(v,k){ -if(notAssociative?!a.has(v): -flipped?!is(v,a.get(k,NOT_SET)):!is(a.get(k,NOT_SET),v)){ -allEqual=false; -return false;}}); - - - -return allEqual&&a.size===bSize;} - - -createClass(Repeat,IndexedSeq); - -function Repeat(value,times){ -if(!(this instanceof Repeat)){ -return new Repeat(value,times);} - -this._value=value; -this.size=times===undefined?Infinity:Math.max(0,times); -if(this.size===0){ -if(EMPTY_REPEAT){ -return EMPTY_REPEAT;} - -EMPTY_REPEAT=this;}} - - - -Repeat.prototype.toString=function(){ -if(this.size===0){ -return 'Repeat []';} - -return 'Repeat [ '+this._value+' '+this.size+' times ]';}; - - -Repeat.prototype.get=function(index,notSetValue){ -return this.has(index)?this._value:notSetValue;}; - - -Repeat.prototype.includes=function(searchValue){ -return is(this._value,searchValue);}; - - -Repeat.prototype.slice=function(begin,end){ -var size=this.size; -return wholeSlice(begin,end,size)?this: -new Repeat(this._value,resolveEnd(end,size)-resolveBegin(begin,size));}; - - -Repeat.prototype.reverse=function(){ -return this;}; - - -Repeat.prototype.indexOf=function(searchValue){ -if(is(this._value,searchValue)){ -return 0;} - -return -1;}; - - -Repeat.prototype.lastIndexOf=function(searchValue){ -if(is(this._value,searchValue)){ -return this.size;} - -return -1;}; - - -Repeat.prototype.__iterate=function(fn,reverse){ -for(var ii=0;ii1?' by '+this._step:'')+ -' ]';}; - - -Range.prototype.get=function(index,notSetValue){ -return this.has(index)? -this._start+wrapIndex(this,index)*this._step: -notSetValue;}; - - -Range.prototype.includes=function(searchValue){ -var possibleIndex=(searchValue-this._start)/this._step; -return possibleIndex>=0&& -possibleIndex=0&&indexmaxIndex?iteratorDone():iteratorValue(type,ii++,v);});}; - - - -Range.prototype.equals=function(other){ -return other instanceof Range? -this._start===other._start&& -this._end===other._end&& -this._step===other._step: -deepEqual(this,other);}; - - - -var EMPTY_RANGE; - -createClass(Collection,Iterable); -function Collection(){ -throw TypeError('Abstract');} - - - -createClass(KeyedCollection,Collection);function KeyedCollection(){} - -createClass(IndexedCollection,Collection);function IndexedCollection(){} - -createClass(SetCollection,Collection);function SetCollection(){} - - -Collection.Keyed=KeyedCollection; -Collection.Indexed=IndexedCollection; -Collection.Set=SetCollection; - -var imul= -typeof Math.imul==='function'&&Math.imul(0xffffffff,2)===-2? -Math.imul: -function imul(a,b){ -a=a|0; -b=b|0; -var c=a&0xffff; -var d=b&0xffff; - -return c*d+((a>>>16)*d+c*(b>>>16)<<16>>>0)|0;}; - - - - - - -function smi(i32){ -return i32>>>1&0x40000000|i32&0xBFFFFFFF;} - - -function hash(o){ -if(o===false||o===null||o===undefined){ -return 0;} - -if(typeof o.valueOf==='function'){ -o=o.valueOf(); -if(o===false||o===null||o===undefined){ -return 0;}} - - -if(o===true){ -return 1;} - -var type=typeof o; -if(type==='number'){ -var h=o|0; -if(h!==o){ -h^=o*0xFFFFFFFF;} - -while(o>0xFFFFFFFF){ -o/=0xFFFFFFFF; -h^=o;} - -return smi(h);} - -if(type==='string'){ -return o.length>STRING_HASH_CACHE_MIN_STRLEN?cachedHashString(o):hashString(o);} - -if(typeof o.hashCode==='function'){ -return o.hashCode();} - -if(type==='object'){ -return hashJSObj(o);} - -if(typeof o.toString==='function'){ -return hashString(o.toString());} - -throw new Error('Value type '+type+' cannot be hashed.');} - - -function cachedHashString(string){ -var hash=stringHashCache[string]; -if(hash===undefined){ -hash=hashString(string); -if(STRING_HASH_CACHE_SIZE===STRING_HASH_CACHE_MAX_SIZE){ -STRING_HASH_CACHE_SIZE=0; -stringHashCache={};} - -STRING_HASH_CACHE_SIZE++; -stringHashCache[string]=hash;} - -return hash;} - - - -function hashString(string){ - - - - - - -var hash=0; -for(var ii=0;ii0){ -switch(node.nodeType){ -case 1: -return node.uniqueID; -case 9: -return node.documentElement&&node.documentElement.uniqueID;}}} - - - - - -var usingWeakMap=typeof WeakMap==='function'; -var weakMap; -if(usingWeakMap){ -weakMap=new WeakMap();} - - -var objHashUID=0; - -var UID_HASH_KEY='__immutablehash__'; -if(typeof Symbol==='function'){ -UID_HASH_KEY=Symbol(UID_HASH_KEY);} - - -var STRING_HASH_CACHE_MIN_STRLEN=16; -var STRING_HASH_CACHE_MAX_SIZE=255; -var STRING_HASH_CACHE_SIZE=0; -var stringHashCache={}; - -function assertNotInfinite(size){ -invariant( -size!==Infinity, -'Cannot perform this action with an infinite size.');} - - - -createClass(Map,KeyedCollection); - - - -function Map(value){ -return value===null||value===undefined?emptyMap(): -isMap(value)&&!isOrdered(value)?value: -emptyMap().withMutations(function(map){ -var iter=KeyedIterable(value); -assertNotInfinite(iter.size); -iter.forEach(function(v,k){return map.set(k,v);});});} - - - -Map.prototype.toString=function(){ -return this.__toString('Map {','}');}; - - - - -Map.prototype.get=function(k,notSetValue){ -return this._root? -this._root.get(0,undefined,k,notSetValue): -notSetValue;}; - - - - -Map.prototype.set=function(k,v){ -return updateMap(this,k,v);}; - - -Map.prototype.setIn=function(keyPath,v){ -return this.updateIn(keyPath,NOT_SET,function(){return v;});}; - - -Map.prototype.remove=function(k){ -return updateMap(this,k,NOT_SET);}; - - -Map.prototype.deleteIn=function(keyPath){ -return this.updateIn(keyPath,function(){return NOT_SET;});}; - - -Map.prototype.update=function(k,notSetValue,updater){ -return arguments.length===1? -k(this): -this.updateIn([k],notSetValue,updater);}; - - -Map.prototype.updateIn=function(keyPath,notSetValue,updater){ -if(!updater){ -updater=notSetValue; -notSetValue=undefined;} - -var updatedValue=updateInDeepMap( -this, -forceIterator(keyPath), -notSetValue, -updater); - -return updatedValue===NOT_SET?undefined:updatedValue;}; - - -Map.prototype.clear=function(){ -if(this.size===0){ -return this;} - -if(this.__ownerID){ -this.size=0; -this._root=null; -this.__hash=undefined; -this.__altered=true; -return this;} - -return emptyMap();}; - - - - -Map.prototype.merge=function(){ -return mergeIntoMapWith(this,undefined,arguments);}; - - -Map.prototype.mergeWith=function(merger){var iters=SLICE$0.call(arguments,1); -return mergeIntoMapWith(this,merger,iters);}; - - -Map.prototype.mergeIn=function(keyPath){var iters=SLICE$0.call(arguments,1); -return this.updateIn( -keyPath, -emptyMap(), -function(m){return typeof m.merge==='function'? -m.merge.apply(m,iters): -iters[iters.length-1];});}; - - - -Map.prototype.mergeDeep=function(){ -return mergeIntoMapWith(this,deepMerger,arguments);}; - - -Map.prototype.mergeDeepWith=function(merger){var iters=SLICE$0.call(arguments,1); -return mergeIntoMapWith(this,deepMergerWith(merger),iters);}; - - -Map.prototype.mergeDeepIn=function(keyPath){var iters=SLICE$0.call(arguments,1); -return this.updateIn( -keyPath, -emptyMap(), -function(m){return typeof m.mergeDeep==='function'? -m.mergeDeep.apply(m,iters): -iters[iters.length-1];});}; - - - -Map.prototype.sort=function(comparator){ - -return OrderedMap(sortFactory(this,comparator));}; - - -Map.prototype.sortBy=function(mapper,comparator){ - -return OrderedMap(sortFactory(this,comparator,mapper));}; - - - - -Map.prototype.withMutations=function(fn){ -var mutable=this.asMutable(); -fn(mutable); -return mutable.wasAltered()?mutable.__ensureOwner(this.__ownerID):this;}; - - -Map.prototype.asMutable=function(){ -return this.__ownerID?this:this.__ensureOwner(new OwnerID());}; - - -Map.prototype.asImmutable=function(){ -return this.__ensureOwner();}; - - -Map.prototype.wasAltered=function(){ -return this.__altered;}; - - -Map.prototype.__iterator=function(type,reverse){ -return new MapIterator(this,type,reverse);}; - - -Map.prototype.__iterate=function(fn,reverse){var this$0=this; -var iterations=0; -this._root&&this._root.iterate(function(entry){ -iterations++; -return fn(entry[1],entry[0],this$0);}, -reverse); -return iterations;}; - - -Map.prototype.__ensureOwner=function(ownerID){ -if(ownerID===this.__ownerID){ -return this;} - -if(!ownerID){ -this.__ownerID=ownerID; -this.__altered=false; -return this;} - -return makeMap(this.size,this._root,ownerID,this.__hash);}; - - - -function isMap(maybeMap){ -return !!(maybeMap&&maybeMap[IS_MAP_SENTINEL]);} - - -Map.isMap=isMap; - -var IS_MAP_SENTINEL='@@__IMMUTABLE_MAP__@@'; - -var MapPrototype=Map.prototype; -MapPrototype[IS_MAP_SENTINEL]=true; -MapPrototype[DELETE]=MapPrototype.remove; -MapPrototype.removeIn=MapPrototype.deleteIn; - - - - - - -function ArrayMapNode(ownerID,entries){ -this.ownerID=ownerID; -this.entries=entries;} - - -ArrayMapNode.prototype.get=function(shift,keyHash,key,notSetValue){ -var entries=this.entries; -for(var ii=0,len=entries.length;ii=MAX_ARRAY_MAP_SIZE){ -return createNodes(ownerID,entries,key,value);} - - -var isEditable=ownerID&&ownerID===this.ownerID; -var newEntries=isEditable?entries:arrCopy(entries); - -if(exists){ -if(removed){ -idx===len-1?newEntries.pop():newEntries[idx]=newEntries.pop();}else -{ -newEntries[idx]=[key,value];}}else - -{ -newEntries.push([key,value]);} - - -if(isEditable){ -this.entries=newEntries; -return this;} - - -return new ArrayMapNode(ownerID,newEntries);}; - - - - - -function BitmapIndexedNode(ownerID,bitmap,nodes){ -this.ownerID=ownerID; -this.bitmap=bitmap; -this.nodes=nodes;} - - -BitmapIndexedNode.prototype.get=function(shift,keyHash,key,notSetValue){ -if(keyHash===undefined){ -keyHash=hash(key);} - -var bit=1<<((shift===0?keyHash:keyHash>>>shift)&MASK); -var bitmap=this.bitmap; -return (bitmap&bit)===0?notSetValue: -this.nodes[popCount(bitmap&bit-1)].get(shift+SHIFT,keyHash,key,notSetValue);}; - - -BitmapIndexedNode.prototype.update=function(ownerID,shift,keyHash,key,value,didChangeSize,didAlter){ -if(keyHash===undefined){ -keyHash=hash(key);} - -var keyHashFrag=(shift===0?keyHash:keyHash>>>shift)&MASK; -var bit=1<=MAX_BITMAP_INDEXED_SIZE){ -return expandNodes(ownerID,nodes,bitmap,keyHashFrag,newNode);} - - -if(exists&&!newNode&&nodes.length===2&&isLeafNode(nodes[idx^1])){ -return nodes[idx^1];} - - -if(exists&&newNode&&nodes.length===1&&isLeafNode(newNode)){ -return newNode;} - - -var isEditable=ownerID&&ownerID===this.ownerID; -var newBitmap=exists?newNode?bitmap:bitmap^bit:bitmap|bit; -var newNodes=exists?newNode? -setIn(nodes,idx,newNode,isEditable): -spliceOut(nodes,idx,isEditable): -spliceIn(nodes,idx,newNode,isEditable); - -if(isEditable){ -this.bitmap=newBitmap; -this.nodes=newNodes; -return this;} - - -return new BitmapIndexedNode(ownerID,newBitmap,newNodes);}; - - - - - -function HashArrayMapNode(ownerID,count,nodes){ -this.ownerID=ownerID; -this.count=count; -this.nodes=nodes;} - - -HashArrayMapNode.prototype.get=function(shift,keyHash,key,notSetValue){ -if(keyHash===undefined){ -keyHash=hash(key);} - -var idx=(shift===0?keyHash:keyHash>>>shift)&MASK; -var node=this.nodes[idx]; -return node?node.get(shift+SHIFT,keyHash,key,notSetValue):notSetValue;}; - - -HashArrayMapNode.prototype.update=function(ownerID,shift,keyHash,key,value,didChangeSize,didAlter){ -if(keyHash===undefined){ -keyHash=hash(key);} - -var idx=(shift===0?keyHash:keyHash>>>shift)&MASK; -var removed=value===NOT_SET; -var nodes=this.nodes; -var node=nodes[idx]; - -if(removed&&!node){ -return this;} - - -var newNode=updateNode(node,ownerID,shift+SHIFT,keyHash,key,value,didChangeSize,didAlter); -if(newNode===node){ -return this;} - - -var newCount=this.count; -if(!node){ -newCount++;}else -if(!newNode){ -newCount--; -if(newCount>>shift)&MASK; -var idx2=(shift===0?keyHash:keyHash>>>shift)&MASK; - -var newNode; -var nodes=idx1===idx2? -[mergeIntoNode(node,ownerID,shift+SHIFT,keyHash,entry)]:( -newNode=new ValueNode(ownerID,keyHash,entry),idx1>>=1){ -expandedNodes[ii]=bitmap&1?nodes[count++]:undefined;} - -expandedNodes[including]=node; -return new HashArrayMapNode(ownerID,count+1,expandedNodes);} - - -function mergeIntoMapWith(map,merger,iterables){ -var iters=[]; -for(var ii=0;ii>1&0x55555555); -x=(x&0x33333333)+(x>>2&0x33333333); -x=x+(x>>4)&0x0f0f0f0f; -x=x+(x>>8); -x=x+(x>>16); -return x&0x7f;} - - -function setIn(array,idx,val,canEdit){ -var newArray=canEdit?array:arrCopy(array); -newArray[idx]=val; -return newArray;} - - -function spliceIn(array,idx,val,canEdit){ -var newLen=array.length+1; -if(canEdit&&idx+1===newLen){ -array[idx]=val; -return array;} - -var newArray=new Array(newLen); -var after=0; -for(var ii=0;ii0&&size=0&&index>>level&MASK; -if(originIndex>=this.array.length){ -return new VNode([],ownerID);} - -var removingFirst=originIndex===0; -var newChild; -if(level>0){ -var oldChild=this.array[originIndex]; -newChild=oldChild&&oldChild.removeBefore(ownerID,level-SHIFT,index); -if(newChild===oldChild&&removingFirst){ -return this;}} - - -if(removingFirst&&!newChild){ -return this;} - -var editable=editableVNode(this,ownerID); -if(!removingFirst){ -for(var ii=0;ii>>level&MASK; -if(sizeIndex>=this.array.length){ -return this;} - - -var newChild; -if(level>0){ -var oldChild=this.array[sizeIndex]; -newChild=oldChild&&oldChild.removeAfter(ownerID,level-SHIFT,index); -if(newChild===oldChild&&sizeIndex===this.array.length-1){ -return this;}} - - - -var editable=editableVNode(this,ownerID); -editable.array.splice(sizeIndex+1); -if(newChild){ -editable.array[sizeIndex]=newChild;} - -return editable;}; - - - - -var DONE={}; - -function iterateList(list,reverse){ -var left=list._origin; -var right=list._capacity; -var tailPos=getTailOffset(right); -var tail=list._tail; - -return iterateNodeOrLeaf(list._root,list._level,0); - -function iterateNodeOrLeaf(node,level,offset){ -return level===0? -iterateLeaf(node,offset): -iterateNode(node,level,offset);} - - -function iterateLeaf(node,offset){ -var array=offset===tailPos?tail&&tail.array:node&&node.array; -var from=offset>left?0:left-offset; -var to=right-offset; -if(to>SIZE){ -to=SIZE;} - -return function(){ -if(from===to){ -return DONE;} - -var idx=reverse?--to:from++; -return array&&array[idx];};} - - - -function iterateNode(node,level,offset){ -var values; -var array=node&&node.array; -var from=offset>left?0:left-offset>>level; -var to=(right-offset>>level)+1; -if(to>SIZE){ -to=SIZE;} - -return function(){ -do { -if(values){ -var value=values(); -if(value!==DONE){ -return value;} - -values=null;} - -if(from===to){ -return DONE;} - -var idx=reverse?--to:from++; -values=iterateNodeOrLeaf( -array&&array[idx],level-SHIFT,offset+(idx<=list.size||index<0){ -return list.withMutations(function(list){ -index<0? -setListBounds(list,index).set(0,value): -setListBounds(list,0,index+1).set(index,value);});} - - - -index+=list._origin; - -var newTail=list._tail; -var newRoot=list._root; -var didAlter=MakeRef(DID_ALTER); -if(index>=getTailOffset(list._capacity)){ -newTail=updateVNode(newTail,list.__ownerID,0,index,value,didAlter);}else -{ -newRoot=updateVNode(newRoot,list.__ownerID,list._level,index,value,didAlter);} - - -if(!didAlter.value){ -return list;} - - -if(list.__ownerID){ -list._root=newRoot; -list._tail=newTail; -list.__hash=undefined; -list.__altered=true; -return list;} - -return makeList(list._origin,list._capacity,list._level,newRoot,newTail);} - - -function updateVNode(node,ownerID,level,index,value,didAlter){ -var idx=index>>>level&MASK; -var nodeHas=node&&idx0){ -var lowerNode=node&&node.array[idx]; -var newLowerNode=updateVNode(lowerNode,ownerID,level-SHIFT,index,value,didAlter); -if(newLowerNode===lowerNode){ -return node;} - -newNode=editableVNode(node,ownerID); -newNode.array[idx]=newLowerNode; -return newNode;} - - -if(nodeHas&&node.array[idx]===value){ -return node;} - - -SetRef(didAlter); - -newNode=editableVNode(node,ownerID); -if(value===undefined&&idx===newNode.array.length-1){ -newNode.array.pop();}else -{ -newNode.array[idx]=value;} - -return newNode;} - - -function editableVNode(node,ownerID){ -if(ownerID&&node&&ownerID===node.ownerID){ -return node;} - -return new VNode(node?node.array.slice():[],ownerID);} - - -function listNodeFor(list,rawIndex){ -if(rawIndex>=getTailOffset(list._capacity)){ -return list._tail;} - -if(rawIndex<1<0){ -node=node.array[rawIndex>>>level&MASK]; -level-=SHIFT;} - -return node;}} - - - -function setListBounds(list,begin,end){ - - -if(begin!==undefined){ -begin=begin|0;} - -if(end!==undefined){ -end=end|0;} - -var owner=list.__ownerID||new OwnerID(); -var oldOrigin=list._origin; -var oldCapacity=list._capacity; -var newOrigin=oldOrigin+begin; -var newCapacity=end===undefined?oldCapacity:end<0?oldCapacity+end:oldOrigin+end; -if(newOrigin===oldOrigin&&newCapacity===oldCapacity){ -return list;} - - - -if(newOrigin>=newCapacity){ -return list.clear();} - - -var newLevel=list._level; -var newRoot=list._root; - - -var offsetShift=0; -while(newOrigin+offsetShift<0){ -newRoot=new VNode(newRoot&&newRoot.array.length?[undefined,newRoot]:[],owner); -newLevel+=SHIFT; -offsetShift+=1<=1<oldTailOffset?new VNode([],owner):oldTail; - - -if(oldTail&&newTailOffset>oldTailOffset&&newOriginSHIFT;level-=SHIFT){ -var idx=oldTailOffset>>>level&MASK; -node=node.array[idx]=editableVNode(node.array[idx],owner);} - -node.array[oldTailOffset>>>SHIFT&MASK]=oldTail;} - - - -if(newCapacity=newTailOffset){ -newOrigin-=newTailOffset; -newCapacity-=newTailOffset; -newLevel=SHIFT; -newRoot=null; -newTail=newTail&&newTail.removeBefore(owner,0,newOrigin);}else - - -if(newOrigin>oldOrigin||newTailOffset>>newLevel&MASK; -if(beginIndex!==newTailOffset>>>newLevel&MASK){ -break;} - -if(beginIndex){ -offsetShift+=(1<oldOrigin){ -newRoot=newRoot.removeBefore(owner,newLevel,newOrigin-offsetShift);} - -if(newRoot&&newTailOffsetmaxSize){ -maxSize=iter.size;} - -if(!isIterable(value)){ -iter=iter.map(function(v){return fromJS(v);});} - -iters.push(iter);} - -if(maxSize>list.size){ -list=list.setSize(maxSize);} - -return mergeIntoCollectionWith(list,merger,iters);} - - -function getTailOffset(size){ -return size>>SHIFT<=SIZE&&list.size>=map.size*2){ -newList=list.filter(function(entry,idx){return entry!==undefined&&i!==idx;}); -newMap=newList.toKeyedSeq().map(function(entry){return entry[0];}).flip().toMap(); -if(omap.__ownerID){ -newMap.__ownerID=newList.__ownerID=omap.__ownerID;}}else - -{ -newMap=map.remove(k); -newList=i===list.size-1?list.pop():list.set(i,undefined);}}else - -{ -if(has){ -if(v===list.get(i)[1]){ -return omap;} - -newMap=map; -newList=list.set(i,[k,v]);}else -{ -newMap=map.set(k,list.size); -newList=list.set(list.size,[k,v]);}} - - -if(omap.__ownerID){ -omap.size=newMap.size; -omap._map=newMap; -omap._list=newList; -omap.__hash=undefined; -return omap;} - -return makeOrderedMap(newMap,newList);} - - -createClass(ToKeyedSequence,KeyedSeq); -function ToKeyedSequence(indexed,useKeys){ -this._iter=indexed; -this._useKeys=useKeys; -this.size=indexed.size;} - - -ToKeyedSequence.prototype.get=function(key,notSetValue){ -return this._iter.get(key,notSetValue);}; - - -ToKeyedSequence.prototype.has=function(key){ -return this._iter.has(key);}; - - -ToKeyedSequence.prototype.valueSeq=function(){ -return this._iter.valueSeq();}; - - -ToKeyedSequence.prototype.reverse=function(){var this$0=this; -var reversedSequence=reverseFactory(this,true); -if(!this._useKeys){ -reversedSequence.valueSeq=function(){return this$0._iter.toSeq().reverse();};} - -return reversedSequence;}; - - -ToKeyedSequence.prototype.map=function(mapper,context){var this$0=this; -var mappedSequence=mapFactory(this,mapper,context); -if(!this._useKeys){ -mappedSequence.valueSeq=function(){return this$0._iter.toSeq().map(mapper,context);};} - -return mappedSequence;}; - - -ToKeyedSequence.prototype.__iterate=function(fn,reverse){var this$0=this; -var ii; -return this._iter.__iterate( -this._useKeys? -function(v,k){return fn(v,k,this$0);}:( -ii=reverse?resolveSize(this):0, -function(v){return fn(v,reverse?--ii:ii++,this$0);}), -reverse);}; - - - -ToKeyedSequence.prototype.__iterator=function(type,reverse){ -if(this._useKeys){ -return this._iter.__iterator(type,reverse);} - -var iterator=this._iter.__iterator(ITERATE_VALUES,reverse); -var ii=reverse?resolveSize(this):0; -return new Iterator(function(){ -var step=iterator.next(); -return step.done?step: -iteratorValue(type,reverse?--ii:ii++,step.value,step);});}; - - - -ToKeyedSequence.prototype[IS_ORDERED_SENTINEL]=true; - - -createClass(ToIndexedSequence,IndexedSeq); -function ToIndexedSequence(iter){ -this._iter=iter; -this.size=iter.size;} - - -ToIndexedSequence.prototype.includes=function(value){ -return this._iter.includes(value);}; - - -ToIndexedSequence.prototype.__iterate=function(fn,reverse){var this$0=this; -var iterations=0; -return this._iter.__iterate(function(v){return fn(v,iterations++,this$0);},reverse);}; - - -ToIndexedSequence.prototype.__iterator=function(type,reverse){ -var iterator=this._iter.__iterator(ITERATE_VALUES,reverse); -var iterations=0; -return new Iterator(function(){ -var step=iterator.next(); -return step.done?step: -iteratorValue(type,iterations++,step.value,step);});}; - - - - - -createClass(ToSetSequence,SetSeq); -function ToSetSequence(iter){ -this._iter=iter; -this.size=iter.size;} - - -ToSetSequence.prototype.has=function(key){ -return this._iter.includes(key);}; - - -ToSetSequence.prototype.__iterate=function(fn,reverse){var this$0=this; -return this._iter.__iterate(function(v){return fn(v,v,this$0);},reverse);}; - - -ToSetSequence.prototype.__iterator=function(type,reverse){ -var iterator=this._iter.__iterator(ITERATE_VALUES,reverse); -return new Iterator(function(){ -var step=iterator.next(); -return step.done?step: -iteratorValue(type,step.value,step.value,step);});}; - - - - - -createClass(FromEntriesSequence,KeyedSeq); -function FromEntriesSequence(entries){ -this._iter=entries; -this.size=entries.size;} - - -FromEntriesSequence.prototype.entrySeq=function(){ -return this._iter.toSeq();}; - - -FromEntriesSequence.prototype.__iterate=function(fn,reverse){var this$0=this; -return this._iter.__iterate(function(entry){ - - -if(entry){ -validateEntry(entry); -var indexedIterable=isIterable(entry); -return fn( -indexedIterable?entry.get(1):entry[1], -indexedIterable?entry.get(0):entry[0], -this$0);}}, - - -reverse);}; - - -FromEntriesSequence.prototype.__iterator=function(type,reverse){ -var iterator=this._iter.__iterator(ITERATE_VALUES,reverse); -return new Iterator(function(){ -while(true){ -var step=iterator.next(); -if(step.done){ -return step;} - -var entry=step.value; - - -if(entry){ -validateEntry(entry); -var indexedIterable=isIterable(entry); -return iteratorValue( -type, -indexedIterable?entry.get(0):entry[0], -indexedIterable?entry.get(1):entry[1], -step);}}});}; - - - - - - - -ToIndexedSequence.prototype.cacheResult= -ToKeyedSequence.prototype.cacheResult= -ToSetSequence.prototype.cacheResult= -FromEntriesSequence.prototype.cacheResult= -cacheResultThrough; - - -function flipFactory(iterable){ -var flipSequence=makeSequence(iterable); -flipSequence._iter=iterable; -flipSequence.size=iterable.size; -flipSequence.flip=function(){return iterable;}; -flipSequence.reverse=function(){ -var reversedSequence=iterable.reverse.apply(this); -reversedSequence.flip=function(){return iterable.reverse();}; -return reversedSequence;}; - -flipSequence.has=function(key){return iterable.includes(key);}; -flipSequence.includes=function(key){return iterable.has(key);}; -flipSequence.cacheResult=cacheResultThrough; -flipSequence.__iterateUncached=function(fn,reverse){var this$0=this; -return iterable.__iterate(function(v,k){return fn(k,v,this$0)!==false;},reverse);}; - -flipSequence.__iteratorUncached=function(type,reverse){ -if(type===ITERATE_ENTRIES){ -var iterator=iterable.__iterator(type,reverse); -return new Iterator(function(){ -var step=iterator.next(); -if(!step.done){ -var k=step.value[0]; -step.value[0]=step.value[1]; -step.value[1]=k;} - -return step;});} - - -return iterable.__iterator( -type===ITERATE_VALUES?ITERATE_KEYS:ITERATE_VALUES, -reverse);}; - - -return flipSequence;} - - - -function mapFactory(iterable,mapper,context){ -var mappedSequence=makeSequence(iterable); -mappedSequence.size=iterable.size; -mappedSequence.has=function(key){return iterable.has(key);}; -mappedSequence.get=function(key,notSetValue){ -var v=iterable.get(key,NOT_SET); -return v===NOT_SET? -notSetValue: -mapper.call(context,v,key,iterable);}; - -mappedSequence.__iterateUncached=function(fn,reverse){var this$0=this; -return iterable.__iterate( -function(v,k,c){return fn(mapper.call(context,v,k,c),k,this$0)!==false;}, -reverse);}; - - -mappedSequence.__iteratorUncached=function(type,reverse){ -var iterator=iterable.__iterator(ITERATE_ENTRIES,reverse); -return new Iterator(function(){ -var step=iterator.next(); -if(step.done){ -return step;} - -var entry=step.value; -var key=entry[0]; -return iteratorValue( -type, -key, -mapper.call(context,entry[1],key,iterable), -step);});}; - - - -return mappedSequence;} - - - -function reverseFactory(iterable,useKeys){ -var reversedSequence=makeSequence(iterable); -reversedSequence._iter=iterable; -reversedSequence.size=iterable.size; -reversedSequence.reverse=function(){return iterable;}; -if(iterable.flip){ -reversedSequence.flip=function(){ -var flipSequence=flipFactory(iterable); -flipSequence.reverse=function(){return iterable.flip();}; -return flipSequence;};} - - -reversedSequence.get=function(key,notSetValue) -{return iterable.get(useKeys?key:-1-key,notSetValue);}; -reversedSequence.has=function(key) -{return iterable.has(useKeys?key:-1-key);}; -reversedSequence.includes=function(value){return iterable.includes(value);}; -reversedSequence.cacheResult=cacheResultThrough; -reversedSequence.__iterate=function(fn,reverse){var this$0=this; -return iterable.__iterate(function(v,k){return fn(v,k,this$0);},!reverse);}; - -reversedSequence.__iterator= -function(type,reverse){return iterable.__iterator(type,!reverse);}; -return reversedSequence;} - - - -function filterFactory(iterable,predicate,context,useKeys){ -var filterSequence=makeSequence(iterable); -if(useKeys){ -filterSequence.has=function(key){ -var v=iterable.get(key,NOT_SET); -return v!==NOT_SET&&!!predicate.call(context,v,key,iterable);}; - -filterSequence.get=function(key,notSetValue){ -var v=iterable.get(key,NOT_SET); -return v!==NOT_SET&&predicate.call(context,v,key,iterable)? -v:notSetValue;};} - - -filterSequence.__iterateUncached=function(fn,reverse){var this$0=this; -var iterations=0; -iterable.__iterate(function(v,k,c){ -if(predicate.call(context,v,k,c)){ -iterations++; -return fn(v,useKeys?k:iterations-1,this$0);}}, - -reverse); -return iterations;}; - -filterSequence.__iteratorUncached=function(type,reverse){ -var iterator=iterable.__iterator(ITERATE_ENTRIES,reverse); -var iterations=0; -return new Iterator(function(){ -while(true){ -var step=iterator.next(); -if(step.done){ -return step;} - -var entry=step.value; -var key=entry[0]; -var value=entry[1]; -if(predicate.call(context,value,key,iterable)){ -return iteratorValue(type,useKeys?key:iterations++,value,step);}}});}; - - - - -return filterSequence;} - - - -function countByFactory(iterable,grouper,context){ -var groups=Map().asMutable(); -iterable.__iterate(function(v,k){ -groups.update( -grouper.call(context,v,k,iterable), -0, -function(a){return a+1;});}); - - -return groups.asImmutable();} - - - -function groupByFactory(iterable,grouper,context){ -var isKeyedIter=isKeyed(iterable); -var groups=(isOrdered(iterable)?OrderedMap():Map()).asMutable(); -iterable.__iterate(function(v,k){ -groups.update( -grouper.call(context,v,k,iterable), -function(a){return a=a||[],a.push(isKeyedIter?[k,v]:v),a;});}); - - -var coerce=iterableClass(iterable); -return groups.map(function(arr){return reify(iterable,coerce(arr));});} - - - -function sliceFactory(iterable,begin,end,useKeys){ -var originalSize=iterable.size; - - - -if(begin!==undefined){ -begin=begin|0;} - -if(end!==undefined){ -end=end|0;} - - -if(wholeSlice(begin,end,originalSize)){ -return iterable;} - - -var resolvedBegin=resolveBegin(begin,originalSize); -var resolvedEnd=resolveEnd(end,originalSize); - - - - -if(resolvedBegin!==resolvedBegin||resolvedEnd!==resolvedEnd){ -return sliceFactory(iterable.toSeq().cacheResult(),begin,end,useKeys);} - - - - - - -var resolvedSize=resolvedEnd-resolvedBegin; -var sliceSize; -if(resolvedSize===resolvedSize){ -sliceSize=resolvedSize<0?0:resolvedSize;} - - -var sliceSeq=makeSequence(iterable); - - - -sliceSeq.size=sliceSize===0?sliceSize:iterable.size&&sliceSize||undefined; - -if(!useKeys&&isSeq(iterable)&&sliceSize>=0){ -sliceSeq.get=function(index,notSetValue){ -index=wrapIndex(this,index); -return index>=0&&indexsliceSize){ -return iteratorDone();} - -var step=iterator.next(); -if(useKeys||type===ITERATE_VALUES){ -return step;}else -if(type===ITERATE_KEYS){ -return iteratorValue(type,iterations-1,undefined,step);}else -{ -return iteratorValue(type,iterations-1,step.value[1],step);}});}; - - - - -return sliceSeq;} - - - -function takeWhileFactory(iterable,predicate,context){ -var takeSequence=makeSequence(iterable); -takeSequence.__iterateUncached=function(fn,reverse){var this$0=this; -if(reverse){ -return this.cacheResult().__iterate(fn,reverse);} - -var iterations=0; -iterable.__iterate(function(v,k,c) -{return predicate.call(context,v,k,c)&&++iterations&&fn(v,k,this$0);}); - -return iterations;}; - -takeSequence.__iteratorUncached=function(type,reverse){var this$0=this; -if(reverse){ -return this.cacheResult().__iterator(type,reverse);} - -var iterator=iterable.__iterator(ITERATE_ENTRIES,reverse); -var iterating=true; -return new Iterator(function(){ -if(!iterating){ -return iteratorDone();} - -var step=iterator.next(); -if(step.done){ -return step;} - -var entry=step.value; -var k=entry[0]; -var v=entry[1]; -if(!predicate.call(context,v,k,this$0)){ -iterating=false; -return iteratorDone();} - -return type===ITERATE_ENTRIES?step: -iteratorValue(type,k,v,step);});}; - - -return takeSequence;} - - - -function skipWhileFactory(iterable,predicate,context,useKeys){ -var skipSequence=makeSequence(iterable); -skipSequence.__iterateUncached=function(fn,reverse){var this$0=this; -if(reverse){ -return this.cacheResult().__iterate(fn,reverse);} - -var isSkipping=true; -var iterations=0; -iterable.__iterate(function(v,k,c){ -if(!(isSkipping&&(isSkipping=predicate.call(context,v,k,c)))){ -iterations++; -return fn(v,useKeys?k:iterations-1,this$0);}}); - - -return iterations;}; - -skipSequence.__iteratorUncached=function(type,reverse){var this$0=this; -if(reverse){ -return this.cacheResult().__iterator(type,reverse);} - -var iterator=iterable.__iterator(ITERATE_ENTRIES,reverse); -var skipping=true; -var iterations=0; -return new Iterator(function(){ -var step,k,v; -do { -step=iterator.next(); -if(step.done){ -if(useKeys||type===ITERATE_VALUES){ -return step;}else -if(type===ITERATE_KEYS){ -return iteratorValue(type,iterations++,undefined,step);}else -{ -return iteratorValue(type,iterations++,step.value[1],step);}} - - -var entry=step.value; -k=entry[0]; -v=entry[1]; -skipping&&(skipping=predicate.call(context,v,k,this$0));}while( -skipping); -return type===ITERATE_ENTRIES?step: -iteratorValue(type,k,v,step);});}; - - -return skipSequence;} - - - -function concatFactory(iterable,values){ -var isKeyedIterable=isKeyed(iterable); -var iters=[iterable].concat(values).map(function(v){ -if(!isIterable(v)){ -v=isKeyedIterable? -keyedSeqFromValue(v): -indexedSeqFromValue(Array.isArray(v)?v:[v]);}else -if(isKeyedIterable){ -v=KeyedIterable(v);} - -return v;}). -filter(function(v){return v.size!==0;}); - -if(iters.length===0){ -return iterable;} - - -if(iters.length===1){ -var singleton=iters[0]; -if(singleton===iterable|| -isKeyedIterable&&isKeyed(singleton)|| -isIndexed(iterable)&&isIndexed(singleton)){ -return singleton;}} - - - -var concatSeq=new ArraySeq(iters); -if(isKeyedIterable){ -concatSeq=concatSeq.toKeyedSeq();}else -if(!isIndexed(iterable)){ -concatSeq=concatSeq.toSetSeq();} - -concatSeq=concatSeq.flatten(true); -concatSeq.size=iters.reduce( -function(sum,seq){ -if(sum!==undefined){ -var size=seq.size; -if(size!==undefined){ -return sum+size;}}}, - - - -0); - -return concatSeq;} - - - -function flattenFactory(iterable,depth,useKeys){ -var flatSequence=makeSequence(iterable); -flatSequence.__iterateUncached=function(fn,reverse){ -var iterations=0; -var stopped=false; -function flatDeep(iter,currentDepth){var this$0=this; -iter.__iterate(function(v,k){ -if((!depth||currentDepth0;} - - - -function zipWithFactory(keyIter,zipper,iters){ -var zipSequence=makeSequence(keyIter); -zipSequence.size=new ArraySeq(iters).map(function(i){return i.size;}).min(); - - -zipSequence.__iterate=function(fn,reverse){ - - - - - - - - - - - - - -var iterator=this.__iterator(ITERATE_VALUES,reverse); -var step; -var iterations=0; -while(!(step=iterator.next()).done){ -if(fn(step.value,iterations++,this)===false){ -break;}} - - -return iterations;}; - -zipSequence.__iteratorUncached=function(type,reverse){ -var iterators=iters.map(function(i) -{return i=Iterable(i),getIterator(reverse?i.reverse():i);}); - -var iterations=0; -var isDone=false; -return new Iterator(function(){ -var steps; -if(!isDone){ -steps=iterators.map(function(i){return i.next();}); -isDone=steps.some(function(s){return s.done;});} - -if(isDone){ -return iteratorDone();} - -return iteratorValue( -type, -iterations++, -zipper.apply(null,steps.map(function(s){return s.value;})));});}; - - - -return zipSequence;} - - - - - -function reify(iter,seq){ -return isSeq(iter)?seq:iter.constructor(seq);} - - -function validateEntry(entry){ -if(entry!==Object(entry)){ -throw new TypeError('Expected [K, V] tuple: '+entry);}} - - - -function resolveSize(iter){ -assertNotInfinite(iter.size); -return ensureSize(iter);} - - -function iterableClass(iterable){ -return isKeyed(iterable)?KeyedIterable: -isIndexed(iterable)?IndexedIterable: -SetIterable;} - - -function makeSequence(iterable){ -return Object.create( -( -isKeyed(iterable)?KeyedSeq: -isIndexed(iterable)?IndexedSeq: -SetSeq). -prototype);} - - - -function cacheResultThrough(){ -if(this._iter.cacheResult){ -this._iter.cacheResult(); -this.size=this._iter.size; -return this;}else -{ -return Seq.prototype.cacheResult.call(this);}} - - - -function defaultComparator(a,b){ -return a>b?1:a=0;ii--){ -head={ -value:arguments[ii], -next:head};} - - -if(this.__ownerID){ -this.size=newSize; -this._head=head; -this.__hash=undefined; -this.__altered=true; -return this;} - -return makeStack(newSize,head);}; - - -Stack.prototype.pushAll=function(iter){ -iter=IndexedIterable(iter); -if(iter.size===0){ -return this;} - -assertNotInfinite(iter.size); -var newSize=this.size; -var head=this._head; -iter.reverse().forEach(function(value){ -newSize++; -head={ -value:value, -next:head};}); - - -if(this.__ownerID){ -this.size=newSize; -this._head=head; -this.__hash=undefined; -this.__altered=true; -return this;} - -return makeStack(newSize,head);}; - - -Stack.prototype.pop=function(){ -return this.slice(1);}; - - -Stack.prototype.unshift=function(){ -return this.push.apply(this,arguments);}; - - -Stack.prototype.unshiftAll=function(iter){ -return this.pushAll(iter);}; - - -Stack.prototype.shift=function(){ -return this.pop.apply(this,arguments);}; - - -Stack.prototype.clear=function(){ -if(this.size===0){ -return this;} - -if(this.__ownerID){ -this.size=0; -this._head=undefined; -this.__hash=undefined; -this.__altered=true; -return this;} - -return emptyStack();}; - - -Stack.prototype.slice=function(begin,end){ -if(wholeSlice(begin,end,this.size)){ -return this;} - -var resolvedBegin=resolveBegin(begin,this.size); -var resolvedEnd=resolveEnd(end,this.size); -if(resolvedEnd!==this.size){ - -return IndexedCollection.prototype.slice.call(this,begin,end);} - -var newSize=this.size-resolvedBegin; -var head=this._head; -while(resolvedBegin--){ -head=head.next;} - -if(this.__ownerID){ -this.size=newSize; -this._head=head; -this.__hash=undefined; -this.__altered=true; -return this;} - -return makeStack(newSize,head);}; - - - - -Stack.prototype.__ensureOwner=function(ownerID){ -if(ownerID===this.__ownerID){ -return this;} - -if(!ownerID){ -this.__ownerID=ownerID; -this.__altered=false; -return this;} - -return makeStack(this.size,this._head,ownerID,this.__hash);}; - - - - -Stack.prototype.__iterate=function(fn,reverse){ -if(reverse){ -return this.reverse().__iterate(fn);} - -var iterations=0; -var node=this._head; -while(node){ -if(fn(node.value,iterations++,this)===false){ -break;} - -node=node.next;} - -return iterations;}; - - -Stack.prototype.__iterator=function(type,reverse){ -if(reverse){ -return this.reverse().__iterator(type);} - -var iterations=0; -var node=this._head; -return new Iterator(function(){ -if(node){ -var value=node.value; -node=node.next; -return iteratorValue(type,iterations++,value);} - -return iteratorDone();});}; - - - - -function isStack(maybeStack){ -return !!(maybeStack&&maybeStack[IS_STACK_SENTINEL]);} - - -Stack.isStack=isStack; - -var IS_STACK_SENTINEL='@@__IMMUTABLE_STACK__@@'; - -var StackPrototype=Stack.prototype; -StackPrototype[IS_STACK_SENTINEL]=true; -StackPrototype.withMutations=MapPrototype.withMutations; -StackPrototype.asMutable=MapPrototype.asMutable; -StackPrototype.asImmutable=MapPrototype.asImmutable; -StackPrototype.wasAltered=MapPrototype.wasAltered; - - -function makeStack(size,head,ownerID,hash){ -var map=Object.create(StackPrototype); -map.size=size; -map._head=head; -map.__ownerID=ownerID; -map.__hash=hash; -map.__altered=false; -return map;} - - -var EMPTY_STACK; -function emptyStack(){ -return EMPTY_STACK||(EMPTY_STACK=makeStack(0));} - - - - - -function mixin(ctor,methods){ -var keyCopier=function(key){ctor.prototype[key]=methods[key];}; -Object.keys(methods).forEach(keyCopier); -Object.getOwnPropertySymbols&& -Object.getOwnPropertySymbols(methods).forEach(keyCopier); -return ctor;} - - -Iterable.Iterator=Iterator; - -mixin(Iterable,{ - - - -toArray:function(){ -assertNotInfinite(this.size); -var array=new Array(this.size||0); -this.valueSeq().__iterate(function(v,i){array[i]=v;}); -return array;}, - - -toIndexedSeq:function(){ -return new ToIndexedSequence(this);}, - - -toJS:function(){ -return this.toSeq().map( -function(value){return value&&typeof value.toJS==='function'?value.toJS():value;}). -__toJS();}, - - -toJSON:function(){ -return this.toSeq().map( -function(value){return value&&typeof value.toJSON==='function'?value.toJSON():value;}). -__toJS();}, - - -toKeyedSeq:function(){ -return new ToKeyedSequence(this,true);}, - - -toMap:function(){ - -return Map(this.toKeyedSeq());}, - - -toObject:function(){ -assertNotInfinite(this.size); -var object={}; -this.__iterate(function(v,k){object[k]=v;}); -return object;}, - - -toOrderedMap:function(){ - -return OrderedMap(this.toKeyedSeq());}, - - -toOrderedSet:function(){ - -return OrderedSet(isKeyed(this)?this.valueSeq():this);}, - - -toSet:function(){ - -return Set(isKeyed(this)?this.valueSeq():this);}, - - -toSetSeq:function(){ -return new ToSetSequence(this);}, - - -toSeq:function(){ -return isIndexed(this)?this.toIndexedSeq(): -isKeyed(this)?this.toKeyedSeq(): -this.toSetSeq();}, - - -toStack:function(){ - -return Stack(isKeyed(this)?this.valueSeq():this);}, - - -toList:function(){ - -return List(isKeyed(this)?this.valueSeq():this);}, - - - - - -toString:function(){ -return '[Iterable]';}, - - -__toString:function(head,tail){ -if(this.size===0){ -return head+tail;} - -return head+' '+this.toSeq().map(this.__toStringMapper).join(', ')+' '+tail;}, - - - - - -concat:function(){var values=SLICE$0.call(arguments,0); -return reify(this,concatFactory(this,values));}, - - -includes:function(searchValue){ -return this.some(function(value){return is(value,searchValue);});}, - - -entries:function(){ -return this.__iterator(ITERATE_ENTRIES);}, - - -every:function(predicate,context){ -assertNotInfinite(this.size); -var returnValue=true; -this.__iterate(function(v,k,c){ -if(!predicate.call(context,v,k,c)){ -returnValue=false; -return false;}}); - - -return returnValue;}, - - -filter:function(predicate,context){ -return reify(this,filterFactory(this,predicate,context,true));}, - - -find:function(predicate,context,notSetValue){ -var entry=this.findEntry(predicate,context); -return entry?entry[1]:notSetValue;}, - - -findEntry:function(predicate,context){ -var found; -this.__iterate(function(v,k,c){ -if(predicate.call(context,v,k,c)){ -found=[k,v]; -return false;}}); - - -return found;}, - - -findLastEntry:function(predicate,context){ -return this.toSeq().reverse().findEntry(predicate,context);}, - - -forEach:function(sideEffect,context){ -assertNotInfinite(this.size); -return this.__iterate(context?sideEffect.bind(context):sideEffect);}, - - -join:function(separator){ -assertNotInfinite(this.size); -separator=separator!==undefined?''+separator:','; -var joined=''; -var isFirst=true; -this.__iterate(function(v){ -isFirst?isFirst=false:joined+=separator; -joined+=v!==null&&v!==undefined?v.toString():'';}); - -return joined;}, - - -keys:function(){ -return this.__iterator(ITERATE_KEYS);}, - - -map:function(mapper,context){ -return reify(this,mapFactory(this,mapper,context));}, - - -reduce:function(reducer,initialReduction,context){ -assertNotInfinite(this.size); -var reduction; -var useFirst; -if(arguments.length<2){ -useFirst=true;}else -{ -reduction=initialReduction;} - -this.__iterate(function(v,k,c){ -if(useFirst){ -useFirst=false; -reduction=v;}else -{ -reduction=reducer.call(context,reduction,v,k,c);}}); - - -return reduction;}, - - -reduceRight:function(reducer,initialReduction,context){ -var reversed=this.toKeyedSeq().reverse(); -return reversed.reduce.apply(reversed,arguments);}, - - -reverse:function(){ -return reify(this,reverseFactory(this,true));}, - - -slice:function(begin,end){ -return reify(this,sliceFactory(this,begin,end,true));}, - - -some:function(predicate,context){ -return !this.every(not(predicate),context);}, - - -sort:function(comparator){ -return reify(this,sortFactory(this,comparator));}, - - -values:function(){ -return this.__iterator(ITERATE_VALUES);}, - - - - - -butLast:function(){ -return this.slice(0,-1);}, - - -isEmpty:function(){ -return this.size!==undefined?this.size===0:!this.some(function(){return true;});}, - - -count:function(predicate,context){ -return ensureSize( -predicate?this.toSeq().filter(predicate,context):this);}, - - - -countBy:function(grouper,context){ -return countByFactory(this,grouper,context);}, - - -equals:function(other){ -return deepEqual(this,other);}, - - -entrySeq:function(){ -var iterable=this; -if(iterable._cache){ - -return new ArraySeq(iterable._cache);} - -var entriesSequence=iterable.toSeq().map(entryMapper).toIndexedSeq(); -entriesSequence.fromEntrySeq=function(){return iterable.toSeq();}; -return entriesSequence;}, - - -filterNot:function(predicate,context){ -return this.filter(not(predicate),context);}, - - -findLast:function(predicate,context,notSetValue){ -return this.toKeyedSeq().reverse().find(predicate,context,notSetValue);}, - - -first:function(){ -return this.find(returnTrue);}, - - -flatMap:function(mapper,context){ -return reify(this,flatMapFactory(this,mapper,context));}, - - -flatten:function(depth){ -return reify(this,flattenFactory(this,depth,true));}, - - -fromEntrySeq:function(){ -return new FromEntriesSequence(this);}, - - -get:function(searchKey,notSetValue){ -return this.find(function(_,key){return is(key,searchKey);},undefined,notSetValue);}, - - -getIn:function(searchKeyPath,notSetValue){ -var nested=this; - - -var iter=forceIterator(searchKeyPath); -var step; -while(!(step=iter.next()).done){ -var key=step.value; -nested=nested&&nested.get?nested.get(key,NOT_SET):NOT_SET; -if(nested===NOT_SET){ -return notSetValue;}} - - -return nested;}, - - -groupBy:function(grouper,context){ -return groupByFactory(this,grouper,context);}, - - -has:function(searchKey){ -return this.get(searchKey,NOT_SET)!==NOT_SET;}, - - -hasIn:function(searchKeyPath){ -return this.getIn(searchKeyPath,NOT_SET)!==NOT_SET;}, - - -isSubset:function(iter){ -iter=typeof iter.includes==='function'?iter:Iterable(iter); -return this.every(function(value){return iter.includes(value);});}, - - -isSuperset:function(iter){ -iter=typeof iter.isSubset==='function'?iter:Iterable(iter); -return iter.isSubset(this);}, - - -keySeq:function(){ -return this.toSeq().map(keyMapper).toIndexedSeq();}, - - -last:function(){ -return this.toSeq().reverse().first();}, - - -max:function(comparator){ -return maxFactory(this,comparator);}, - - -maxBy:function(mapper,comparator){ -return maxFactory(this,comparator,mapper);}, - - -min:function(comparator){ -return maxFactory(this,comparator?neg(comparator):defaultNegComparator);}, - - -minBy:function(mapper,comparator){ -return maxFactory(this,comparator?neg(comparator):defaultNegComparator,mapper);}, - - -rest:function(){ -return this.slice(1);}, - - -skip:function(amount){ -return this.slice(Math.max(0,amount));}, - - -skipLast:function(amount){ -return reify(this,this.toSeq().reverse().skip(amount).reverse());}, - - -skipWhile:function(predicate,context){ -return reify(this,skipWhileFactory(this,predicate,context,true));}, - - -skipUntil:function(predicate,context){ -return this.skipWhile(not(predicate),context);}, - - -sortBy:function(mapper,comparator){ -return reify(this,sortFactory(this,comparator,mapper));}, - - -take:function(amount){ -return this.slice(0,Math.max(0,amount));}, - - -takeLast:function(amount){ -return reify(this,this.toSeq().reverse().take(amount).reverse());}, - - -takeWhile:function(predicate,context){ -return reify(this,takeWhileFactory(this,predicate,context));}, - - -takeUntil:function(predicate,context){ -return this.takeWhile(not(predicate),context);}, - - -valueSeq:function(){ -return this.toIndexedSeq();}, - - - - - -hashCode:function(){ -return this.__hash||(this.__hash=hashIterable(this));}}); - - - - - - - - - - - - - - - -var IterablePrototype=Iterable.prototype; -IterablePrototype[IS_ITERABLE_SENTINEL]=true; -IterablePrototype[ITERATOR_SYMBOL]=IterablePrototype.values; -IterablePrototype.__toJS=IterablePrototype.toArray; -IterablePrototype.__toStringMapper=quoteString; -IterablePrototype.inspect= -IterablePrototype.toSource=function(){return this.toString();}; -IterablePrototype.chain=IterablePrototype.flatMap; -IterablePrototype.contains=IterablePrototype.includes; - - -(function(){ -try{ -Object.defineProperty(IterablePrototype,'length',{ -get:function(){ -if(!Iterable.noLengthWarning){ -var stack; -try{ -throw new Error();} -catch(error) { -stack=error.stack;} - -if(stack.indexOf('_wrapObject')===-1){ -console&&console.warn&&console.warn( -'iterable.length has been deprecated, '+ -'use iterable.size or iterable.count(). '+ -'This warning will become a silent error in a future version. '+ -stack); - -return this.size;}}}});} - - - - -catch(e) {}})(); - - - - -mixin(KeyedIterable,{ - - - -flip:function(){ -return reify(this,flipFactory(this));}, - - -findKey:function(predicate,context){ -var entry=this.findEntry(predicate,context); -return entry&&entry[0];}, - - -findLastKey:function(predicate,context){ -return this.toSeq().reverse().findKey(predicate,context);}, - - -keyOf:function(searchValue){ -return this.findKey(function(value){return is(value,searchValue);});}, - - -lastKeyOf:function(searchValue){ -return this.findLastKey(function(value){return is(value,searchValue);});}, - - -mapEntries:function(mapper,context){var this$0=this; -var iterations=0; -return reify(this, -this.toSeq().map( -function(v,k){return mapper.call(context,[k,v],iterations++,this$0);}). -fromEntrySeq());}, - - - -mapKeys:function(mapper,context){var this$0=this; -return reify(this, -this.toSeq().flip().map( -function(k,v){return mapper.call(context,k,v,this$0);}). -flip());}}); - - - - - -var KeyedIterablePrototype=KeyedIterable.prototype; -KeyedIterablePrototype[IS_KEYED_SENTINEL]=true; -KeyedIterablePrototype[ITERATOR_SYMBOL]=IterablePrototype.entries; -KeyedIterablePrototype.__toJS=IterablePrototype.toObject; -KeyedIterablePrototype.__toStringMapper=function(v,k){return JSON.stringify(k)+': '+quoteString(v);}; - - - -mixin(IndexedIterable,{ - - - -toKeyedSeq:function(){ -return new ToKeyedSequence(this,false);}, - - - - - -filter:function(predicate,context){ -return reify(this,filterFactory(this,predicate,context,false));}, - - -findIndex:function(predicate,context){ -var entry=this.findEntry(predicate,context); -return entry?entry[0]:-1;}, - - -indexOf:function(searchValue){ -var key=this.toKeyedSeq().keyOf(searchValue); -return key===undefined?-1:key;}, - - -lastIndexOf:function(searchValue){ -var key=this.toKeyedSeq().reverse().keyOf(searchValue); -return key===undefined?-1:key;}, - - - - - -reverse:function(){ -return reify(this,reverseFactory(this,false));}, - - -slice:function(begin,end){ -return reify(this,sliceFactory(this,begin,end,false));}, - - -splice:function(index,removeNum){ -var numArgs=arguments.length; -removeNum=Math.max(removeNum|0,0); -if(numArgs===0||numArgs===2&&!removeNum){ -return this;} - - - - -index=resolveBegin(index,index<0?this.count():this.size); -var spliced=this.slice(0,index); -return reify( -this, -numArgs===1? -spliced: -spliced.concat(arrCopy(arguments,2),this.slice(index+removeNum)));}, - - - - - - -findLastIndex:function(predicate,context){ -var key=this.toKeyedSeq().findLastKey(predicate,context); -return key===undefined?-1:key;}, - - -first:function(){ -return this.get(0);}, - - -flatten:function(depth){ -return reify(this,flattenFactory(this,depth,false));}, - - -get:function(index,notSetValue){ -index=wrapIndex(this,index); -return index<0||this.size===Infinity|| -this.size!==undefined&&index>this.size? -notSetValue: -this.find(function(_,key){return key===index;},undefined,notSetValue);}, - - -has:function(index){ -index=wrapIndex(this,index); -return index>=0&&(this.size!==undefined? -this.size===Infinity||indexb?-1:0;} - - -function hashIterable(iterable){ -if(iterable.size===Infinity){ -return 0;} - -var ordered=isOrdered(iterable); -var keyed=isKeyed(iterable); -var h=ordered?1:0; -var size=iterable.__iterate( -keyed? -ordered? -function(v,k){h=31*h+hashMerge(hash(v),hash(k))|0;}: -function(v,k){h=h+hashMerge(hash(v),hash(k))|0;}: -ordered? -function(v){h=31*h+hash(v)|0;}: -function(v){h=h+hash(v)|0;}); - -return murmurHashOfSize(size,h);} - - -function murmurHashOfSize(size,h){ -h=imul(h,0xCC9E2D51); -h=imul(h<<15|h>>>-15,0x1B873593); -h=imul(h<<13|h>>>-13,5); -h=(h+0xE6546B64|0)^size; -h=imul(h^h>>>16,0x85EBCA6B); -h=imul(h^h>>>13,0xC2B2AE35); -h=smi(h^h>>>16); -return h;} - - -function hashMerge(a,b){ -return a^b+0x9E3779B9+(a<<6)+(a>>2)|0;} - - -var Immutable={ - -Iterable:Iterable, - -Seq:Seq, -Collection:Collection, -Map:Map, -OrderedMap:OrderedMap, -List:List, -Stack:Stack, -Set:Set, -OrderedSet:OrderedSet, - -Record:Record, -Range:Range, -Repeat:Repeat, - -is:is, -fromJS:fromJS}; - - - -return Immutable;}); -}); -__d('NavigatorBreadcrumbNavigationBar',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - - - - - - - -var NavigatorBreadcrumbNavigationBarStyles=require('NavigatorBreadcrumbNavigationBarStyles'); -var NavigatorNavigationBarStylesAndroid=require('NavigatorNavigationBarStylesAndroid'); -var NavigatorNavigationBarStylesIOS=require('NavigatorNavigationBarStylesIOS'); -var Platform=require('Platform'); -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var View=require('View');var _require= - -require('immutable/dist/immutable.js');var Map=_require.Map; - -var invariant=require('invariant'); - -var Interpolators=NavigatorBreadcrumbNavigationBarStyles.Interpolators; -var NavigatorNavigationBarStyles=Platform.OS==='android'? -NavigatorNavigationBarStylesAndroid:NavigatorNavigationBarStylesIOS; -var PropTypes=React.PropTypes; - - - - -var CRUMB_PROPS=Interpolators.map(function(){return {style:{}};}); -var ICON_PROPS=Interpolators.map(function(){return {style:{}};}); -var SEPARATOR_PROPS=Interpolators.map(function(){return {style:{}};}); -var TITLE_PROPS=Interpolators.map(function(){return {style:{}};}); -var RIGHT_BUTTON_PROPS=Interpolators.map(function(){return {style:{}};}); - - -var navStatePresentedIndex=function(navState){ -if(navState.presentedIndex!==undefined){ -return navState.presentedIndex;} - - -return navState.observedTopOfStack;}; - - - - - - - - - - -var initStyle=function(index,presentedIndex){ -return index===presentedIndex?NavigatorBreadcrumbNavigationBarStyles.Center[index]: -indexfromIndex?progress:1-progress; -var oldDistToCenter=index-fromIndex; -var newDistToCenter=index-toIndex; -var interpolate; -invariant( -Interpolators[index], -'Cannot find breadcrumb interpolators for '+index); - -if(oldDistToCenter>0&&newDistToCenter===0|| -newDistToCenter>0&&oldDistToCenter===0){ -interpolate=Interpolators[index].RightToCenter;}else -if(oldDistToCenter<0&&newDistToCenter===0|| -newDistToCenter<0&&oldDistToCenter===0){ -interpolate=Interpolators[index].CenterToLeft;}else -if(oldDistToCenter===newDistToCenter){ -interpolate=Interpolators[index].RightToCenter;}else -{ -interpolate=Interpolators[index].RightToLeft;} - - -if(interpolate.Crumb(CRUMB_PROPS[index].style,amount)){ -this._setPropsIfExists('crumb_'+index,CRUMB_PROPS[index]);} - -if(interpolate.Icon(ICON_PROPS[index].style,amount)){ -this._setPropsIfExists('icon_'+index,ICON_PROPS[index]);} - -if(interpolate.Separator(SEPARATOR_PROPS[index].style,amount)){ -this._setPropsIfExists('separator_'+index,SEPARATOR_PROPS[index]);} - -if(interpolate.Title(TITLE_PROPS[index].style,amount)){ -this._setPropsIfExists('title_'+index,TITLE_PROPS[index]);} - -var right=this.refs['right_'+index]; -if(right&& -interpolate.RightItem(RIGHT_BUTTON_PROPS[index].style,amount)){ -right.setNativeProps(RIGHT_BUTTON_PROPS[index]);}}, - - - -updateProgress:function(progress,fromIndex,toIndex){ -var max=Math.max(fromIndex,toIndex); -var min=Math.min(fromIndex,toIndex); -for(var index=min;index<=max;index++){ -this._updateIndexProgress(progress,index,fromIndex,toIndex);}}, - - - -onAnimationStart:function(fromIndex,toIndex){ -var max=Math.max(fromIndex,toIndex); -var min=Math.min(fromIndex,toIndex); -for(var index=min;index<=max;index++){ -this._setRenderViewsToHardwareTextureAndroid(index,true);}}, - - - -onAnimationEnd:function(){ -var max=this.props.navState.routeStack.length-1; -for(var index=0;index<=max;index++){ -this._setRenderViewsToHardwareTextureAndroid(index,false);}}, - - - -_setRenderViewsToHardwareTextureAndroid:function(index,renderToHardwareTexture){ -var props={ -renderToHardwareTextureAndroid:renderToHardwareTexture}; - - -this._setPropsIfExists('icon_'+index,props); -this._setPropsIfExists('separator_'+index,props); -this._setPropsIfExists('title_'+index,props); -this._setPropsIfExists('right_'+index,props);}, - - -componentWillMount:function(){ -this._descriptors={ -crumb:new Map(), -title:new Map(), -right:new Map()};}, - - - -render:function(){ -var navState=this.props.navState; -var icons=navState&&navState.routeStack.map(this._getBreadcrumb); -var titles=navState.routeStack.map(this._getTitle); -var buttons=navState.routeStack.map(this._getRightButton); -return ( -React.createElement(View,{style:[styles.breadCrumbContainer,this.props.style]}, -titles, -icons, -buttons));}, - - - - -_getBreadcrumb:function(route,index){ -if(this._descriptors.crumb.has(route)){ -return this._descriptors.crumb.get(route);} - - -var navBarRouteMapper=this.props.routeMapper; -var firstStyles=initStyle(index,navStatePresentedIndex(this.props.navState)); - -var breadcrumbDescriptor= -React.createElement(View,{ -key:'crumb_'+index, -ref:'crumb_'+index, -style:firstStyles.Crumb}, -React.createElement(View,{ref:'icon_'+index,style:firstStyles.Icon}, -navBarRouteMapper.iconForRoute(route,this.props.navigator)), - -React.createElement(View,{ref:'separator_'+index,style:firstStyles.Separator}, -navBarRouteMapper.separatorForRoute(route,this.props.navigator))); - - - - -this._descriptors.crumb=this._descriptors.crumb.set(route,breadcrumbDescriptor); -return breadcrumbDescriptor;}, - - -_getTitle:function(route,index){ -if(this._descriptors.title.has(route)){ -return this._descriptors.title.get(route);} - - -var titleContent=this.props.routeMapper.titleContentForRoute( -this.props.navState.routeStack[index], -this.props.navigator); - -var firstStyles=initStyle(index,navStatePresentedIndex(this.props.navState)); - -var titleDescriptor= -React.createElement(View,{ -key:'title_'+index, -ref:'title_'+index, -style:firstStyles.Title}, -titleContent); - - -this._descriptors.title=this._descriptors.title.set(route,titleDescriptor); -return titleDescriptor;}, - - -_getRightButton:function(route,index){ -if(this._descriptors.right.has(route)){ -return this._descriptors.right.get(route);} - -var rightContent=this.props.routeMapper.rightContentForRoute( -this.props.navState.routeStack[index], -this.props.navigator); - -if(!rightContent){ -this._descriptors.right=this._descriptors.right.set(route,null); -return null;} - -var firstStyles=initStyle(index,navStatePresentedIndex(this.props.navState)); -var rightButtonDescriptor= -React.createElement(View,{ -key:'right_'+index, -ref:'right_'+index, -style:firstStyles.RightItem}, -rightContent); - - -this._descriptors.right=this._descriptors.right.set(route,rightButtonDescriptor); -return rightButtonDescriptor;}, - - -_setPropsIfExists:function(ref,props){ -var ref=this.refs[ref]; -ref&&ref.setNativeProps(props);}}); - - - -var styles=StyleSheet.create({ -breadCrumbContainer:{ -overflow:'hidden', -position:'absolute', -height:NavigatorNavigationBarStyles.General.TotalNavHeight, -top:0, -left:0, -right:0}}); - - - -module.exports=NavigatorBreadcrumbNavigationBar; -}); -__d('NavigatorBreadcrumbNavigationBarStyles',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - - - - - - - -var Dimensions=require('Dimensions'); -var NavigatorNavigationBarStylesIOS=require('NavigatorNavigationBarStylesIOS'); - -var buildStyleInterpolator=require('buildStyleInterpolator'); -var merge=require('merge'); - -var SCREEN_WIDTH=Dimensions.get('window').width; -var STATUS_BAR_HEIGHT=NavigatorNavigationBarStylesIOS.General.StatusBarHeight; -var NAV_BAR_HEIGHT=NavigatorNavigationBarStylesIOS.General.NavBarHeight; - -var SPACING=4; -var ICON_WIDTH=40; -var SEPARATOR_WIDTH=9; -var CRUMB_WIDTH=ICON_WIDTH+SEPARATOR_WIDTH; - -var OPACITY_RATIO=100; -var ICON_INACTIVE_OPACITY=0.6; -var MAX_BREADCRUMBS=10; - -var CRUMB_BASE={ -position:'absolute', -flexDirection:'row', -top:STATUS_BAR_HEIGHT, -width:CRUMB_WIDTH, -height:NAV_BAR_HEIGHT, -backgroundColor:'transparent'}; - - -var ICON_BASE={ -width:ICON_WIDTH, -height:NAV_BAR_HEIGHT}; - - -var SEPARATOR_BASE={ -width:SEPARATOR_WIDTH, -height:NAV_BAR_HEIGHT}; - - -var TITLE_BASE={ -position:'absolute', -top:STATUS_BAR_HEIGHT, -height:NAV_BAR_HEIGHT, -backgroundColor:'transparent'}; - - - -var FIRST_TITLE_BASE=merge(TITLE_BASE,{ -left:0, -right:0, -alignItems:'center', -height:NAV_BAR_HEIGHT}); - - -var RIGHT_BUTTON_BASE={ -position:'absolute', -top:STATUS_BAR_HEIGHT, -right:SPACING, -overflow:'hidden', -opacity:1, -height:NAV_BAR_HEIGHT, -backgroundColor:'transparent'}; - - - - - - -var LEFT=[]; -var CENTER=[]; -var RIGHT=[]; -for(var i=0;i= '+( -anim.threshold+' ? '+anim.to+' : '+anim.from)+';\n');}; - - - -var computeNextValIdentity=function(anim){ -return ' nextScalarVal = value;\n';}; - - -var operationVar=function(name){ -return name+'ReuseOp';}; - - -var createReusableOperationVars=function(anims){ -var ret=''; -for(var name in anims){ -if(ShouldAllocateReusableOperationVars[name]){ -ret+='var '+operationVar(name)+' = [];\n';}} - - -return ret;}; - - -var newlines=function(statements){ -return '\n'+statements.join('\n')+'\n';}; - - - - - - - - -var computeNextMatrixOperationField=function(anim,name,dimension,index){ -var fieldAccess=operationVar(name)+'['+index+']'; -if(anim.from[dimension]!==undefined&&anim.to[dimension]!==undefined){ -return ' '+anim.from[dimension]!==anim.to[dimension]? -computeNextValLinear(anim,anim.from[dimension],anim.to[dimension],fieldAccess): -fieldAccess+' = '+anim.from[dimension]+';';}else -{ -return ' '+fieldAccess+' = '+InitialOperationField[name][index]+';';}}; - - - -var unrolledVars=[]; -for(var varIndex=0;varIndex<16;varIndex++){ -unrolledVars.push('m'+varIndex);} - -var setNextMatrixAndDetectChange=function(orderedMatrixOperations){ -var fn=[ -' var transformMatrix = result.transformMatrix !== undefined ? '+ -'result.transformMatrix : (result.transformMatrix = []);']; - -fn.push.apply( -fn, -inline(MatrixOps.unroll,['transformMatrix'].concat(unrolledVars))); - -for(var i=0;ifromIndex?progress:1-progress; -var oldDistToCenter=index-fromIndex; -var newDistToCenter=index-toIndex; -var interpolate; -if(oldDistToCenter>0&&newDistToCenter===0|| -newDistToCenter>0&&oldDistToCenter===0){ -interpolate=this.props.navigationStyles.Interpolators.RightToCenter;}else -if(oldDistToCenter<0&&newDistToCenter===0|| -newDistToCenter<0&&oldDistToCenter===0){ -interpolate=this.props.navigationStyles.Interpolators.CenterToLeft;}else -if(oldDistToCenter===newDistToCenter){ -interpolate=this.props.navigationStyles.Interpolators.RightToCenter;}else -{ -interpolate=this.props.navigationStyles.Interpolators.RightToLeft;} - - -COMPONENT_NAMES.forEach(function(componentName){ -var component=this._components[componentName].get(this.props.navState.routeStack[index]); -var props=this._getReusableProps(componentName,index); -if(component&&interpolate[componentName](props.style,amount)){ -component.setNativeProps(props);}}, - -this);}, - - -updateProgress:function( -progress, -fromIndex, -toIndex) -{ -var max=Math.max(fromIndex,toIndex); -var min=Math.min(fromIndex,toIndex); -for(var index=min;index<=max;index++){ -this._updateIndexProgress(progress,index,fromIndex,toIndex);}}, - - - -render:function(){ -var navBarStyle={ -height:this.props.navigationStyles.General.TotalNavHeight}; - -var navState=this.props.navState; -var components=COMPONENT_NAMES.map(function(componentName){ -return navState.routeStack.map( -this._getComponent.bind(this,componentName));}, - -this); - -return ( -React.createElement(View,{style:[styles.navBarContainer,navBarStyle,this.props.style]}, -components));}, - - - - -_getComponent:function( -componentName, -route, -index) -{var _this2=this; -if(this._descriptors[componentName].includes(route)){ -return this._descriptors[componentName].get(route);} - - -var rendered=null; - -var content=this.props.routeMapper[componentName]( -this.props.navState.routeStack[index], -this.props.navigator, -index, -this.props.navState); - -if(!content){ -return null;} - - -var initialStage=index===navStatePresentedIndex(this.props.navState)? -this.props.navigationStyles.Stages.Center: -this.props.navigationStyles.Stages.Left; -rendered= -React.createElement(View,{ -ref:function(ref){ -_this2._components[componentName]=_this2._components[componentName].set(route,ref);}, - -style:initialStage[componentName]}, -content); - - - -this._descriptors[componentName]=this._descriptors[componentName].set(route,rendered); -return rendered;}}); - - - - - -var styles=StyleSheet.create({ -navBarContainer:{ -position:'absolute', -top:0, -left:0, -right:0, -backgroundColor:'transparent'}}); - - - -module.exports=NavigatorNavigationBar; -}); -__d('NavigatorSceneConfigs',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - - - - - - - -var Dimensions=require('Dimensions'); -var PixelRatio=require('PixelRatio'); - -var buildStyleInterpolator=require('buildStyleInterpolator'); - -var SCREEN_WIDTH=Dimensions.get('window').width; -var SCREEN_HEIGHT=Dimensions.get('window').height; - -var FadeToTheLeft={ - - -transformTranslate:{ -from:{x:0,y:0,z:0}, -to:{x:-Math.round(Dimensions.get('window').width*0.3),y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - - - - - - - - - - - - -transformScale:{ -from:{x:1,y:1,z:1}, -to:{x:0.95,y:0.95,z:1}, -min:0, -max:1, -type:'linear', -extrapolate:true}, - -opacity:{ -from:1, -to:0.3, -min:0, -max:1, -type:'linear', -extrapolate:false, -round:100}, - -translateX:{ -from:0, -to:-Math.round(Dimensions.get('window').width*0.3), -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -scaleX:{ -from:1, -to:0.95, -min:0, -max:1, -type:'linear', -extrapolate:true}, - -scaleY:{ -from:1, -to:0.95, -min:0, -max:1, -type:'linear', -extrapolate:true}}; - - - -var FadeToTheRight=babelHelpers.extends({}, -FadeToTheLeft,{ -transformTranslate:{ -from:{x:0,y:0,z:0}, -to:{x:Math.round(SCREEN_WIDTH*0.3),y:0,z:0}}, - -translateX:{ -from:0, -to:Math.round(SCREEN_WIDTH*0.3)}}); - - - -var FadeIn={ -opacity:{ -from:0, -to:1, -min:0.5, -max:1, -type:'linear', -extrapolate:false, -round:100}}; - - - -var FadeOut={ -opacity:{ -from:1, -to:0, -min:0, -max:0.5, -type:'linear', -extrapolate:false, -round:100}}; - - - -var ToTheLeft={ -transformTranslate:{ -from:{x:0,y:0,z:0}, -to:{x:-Dimensions.get('window').width,y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -opacity:{ -value:1.0, -type:'constant'}, - - -translateX:{ -from:0, -to:-Dimensions.get('window').width, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}}; - - - -var ToTheUp={ -transformTranslate:{ -from:{x:0,y:0,z:0}, -to:{x:0,y:-Dimensions.get('window').height,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -opacity:{ -value:1.0, -type:'constant'}, - -translateY:{ -from:0, -to:-Dimensions.get('window').height, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}}; - - - -var ToTheDown={ -transformTranslate:{ -from:{x:0,y:0,z:0}, -to:{x:0,y:Dimensions.get('window').height,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -opacity:{ -value:1.0, -type:'constant'}, - -translateY:{ -from:0, -to:Dimensions.get('window').height, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}}; - - - -var FromTheRight={ -opacity:{ -value:1.0, -type:'constant'}, - - -transformTranslate:{ -from:{x:Dimensions.get('window').width,y:0,z:0}, -to:{x:0,y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - - -translateX:{ -from:Dimensions.get('window').width, -to:0, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - - -scaleX:{ -value:1, -type:'constant'}, - -scaleY:{ -value:1, -type:'constant'}}; - - - -var FromTheLeft=babelHelpers.extends({}, -FromTheRight,{ -transformTranslate:{ -from:{x:-SCREEN_WIDTH,y:0,z:0}, -to:{x:0,y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -translateX:{ -from:-SCREEN_WIDTH, -to:0, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}}); - - - -var FromTheDown=babelHelpers.extends({}, -FromTheRight,{ -transformTranslate:{ -from:{y:SCREEN_HEIGHT,x:0,z:0}, -to:{x:0,y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -translateY:{ -from:SCREEN_HEIGHT, -to:0, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}}); - - - -var FromTheTop=babelHelpers.extends({}, -FromTheRight,{ -transformTranslate:{ -from:{y:-SCREEN_HEIGHT,x:0,z:0}, -to:{x:0,y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -translateY:{ -from:-SCREEN_HEIGHT, -to:0, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}}); - - - -var ToTheBack={ - - -transformTranslate:{ -from:{x:0,y:0,z:0}, -to:{x:0,y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -transformScale:{ -from:{x:1,y:1,z:1}, -to:{x:0.95,y:0.95,z:1}, -min:0, -max:1, -type:'linear', -extrapolate:true}, - -opacity:{ -from:1, -to:0.3, -min:0, -max:1, -type:'linear', -extrapolate:false, -round:100}, - -scaleX:{ -from:1, -to:0.95, -min:0, -max:1, -type:'linear', -extrapolate:true}, - -scaleY:{ -from:1, -to:0.95, -min:0, -max:1, -type:'linear', -extrapolate:true}}; - - - -var FromTheFront={ -opacity:{ -value:1.0, -type:'constant'}, - - -transformTranslate:{ -from:{x:0,y:Dimensions.get('window').height,z:0}, -to:{x:0,y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -translateY:{ -from:Dimensions.get('window').height, -to:0, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -scaleX:{ -value:1, -type:'constant'}, - -scaleY:{ -value:1, -type:'constant'}}; - - - -var ToTheBackAndroid={ -opacity:{ -value:1, -type:'constant'}}; - - - -var FromTheFrontAndroid={ -opacity:{ -from:0, -to:1, -min:0.5, -max:1, -type:'linear', -extrapolate:false, -round:100}, - -transformTranslate:{ -from:{x:0,y:100,z:0}, -to:{x:0,y:0,z:0}, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}, - -translateY:{ -from:100, -to:0, -min:0, -max:1, -type:'linear', -extrapolate:true, -round:PixelRatio.get()}}; - - - -var BaseOverswipeConfig={ -frictionConstant:1, -frictionByDistance:1.5}; - - -var BaseLeftToRightGesture={ - - -isDetachable:false, - - -gestureDetectMovement:2, - - -notMoving:0.3, - - -directionRatio:0.66, - - -snapVelocity:2, - - -edgeHitWidth:30, - - -stillCompletionRatio:3/5, - -fullDistance:SCREEN_WIDTH, - -direction:'left-to-right'}; - - - -var BaseRightToLeftGesture=babelHelpers.extends({}, -BaseLeftToRightGesture,{ -direction:'right-to-left'}); - - -var BaseDownUpGesture=babelHelpers.extends({}, -BaseLeftToRightGesture,{ -fullDistance:SCREEN_HEIGHT, -direction:'down-to-up'}); - - -var BaseUpDownGesture=babelHelpers.extends({}, -BaseLeftToRightGesture,{ -fullDistance:SCREEN_HEIGHT, -direction:'up-to-down'}); - - -var BaseConfig={ - -gestures:{ -pop:BaseLeftToRightGesture}, - - - -springFriction:26, -springTension:200, - - -defaultTransitionVelocity:1.5, - - -animationInterpolators:{ -into:buildStyleInterpolator(FromTheRight), -out:buildStyleInterpolator(FadeToTheLeft)}}; - - - -var NavigatorSceneConfigs={ -PushFromRight:babelHelpers.extends({}, -BaseConfig), - - -FloatFromRight:babelHelpers.extends({}, -BaseConfig), - - -FloatFromLeft:babelHelpers.extends({}, -BaseConfig,{ -animationInterpolators:{ -into:buildStyleInterpolator(FromTheLeft), -out:buildStyleInterpolator(FadeToTheRight)}}), - - -FloatFromBottom:babelHelpers.extends({}, -BaseConfig,{ -gestures:{ -pop:babelHelpers.extends({}, -BaseLeftToRightGesture,{ -edgeHitWidth:150, -direction:'top-to-bottom', -fullDistance:SCREEN_HEIGHT})}, - - -animationInterpolators:{ -into:buildStyleInterpolator(FromTheFront), -out:buildStyleInterpolator(ToTheBack)}}), - - -FloatFromBottomAndroid:babelHelpers.extends({}, -BaseConfig,{ -gestures:null, -defaultTransitionVelocity:3, -springFriction:20, -animationInterpolators:{ -into:buildStyleInterpolator(FromTheFrontAndroid), -out:buildStyleInterpolator(ToTheBackAndroid)}}), - - -FadeAndroid:babelHelpers.extends({}, -BaseConfig,{ -gestures:null, -animationInterpolators:{ -into:buildStyleInterpolator(FadeIn), -out:buildStyleInterpolator(FadeOut)}}), - - -HorizontalSwipeJump:babelHelpers.extends({}, -BaseConfig,{ -gestures:{ -jumpBack:babelHelpers.extends({}, -BaseLeftToRightGesture,{ -overswipe:BaseOverswipeConfig, -edgeHitWidth:null, -isDetachable:true}), - -jumpForward:babelHelpers.extends({}, -BaseRightToLeftGesture,{ -overswipe:BaseOverswipeConfig, -edgeHitWidth:null, -isDetachable:true})}, - - -animationInterpolators:{ -into:buildStyleInterpolator(FromTheRight), -out:buildStyleInterpolator(ToTheLeft)}}), - - -VerticalUpSwipeJump:babelHelpers.extends({}, -BaseConfig,{ -gestures:{ -jumpBack:babelHelpers.extends({}, -BaseDownUpGesture,{ -overswipe:BaseOverswipeConfig, -edgeHitWidth:null, -isDetachable:true}), - -jumpForward:babelHelpers.extends({}, -BaseDownUpGesture,{ -overswipe:BaseOverswipeConfig, -edgeHitWidth:null, -isDetachable:true})}, - - -animationInterpolators:{ -into:buildStyleInterpolator(FromTheDown), -out:buildStyleInterpolator(ToTheUp)}}), - - -VerticalDownSwipeJump:babelHelpers.extends({}, -BaseConfig,{ -gestures:{ -jumpBack:babelHelpers.extends({}, -BaseUpDownGesture,{ -overswipe:BaseOverswipeConfig, -edgeHitWidth:null, -isDetachable:true}), - -jumpForward:babelHelpers.extends({}, -BaseUpDownGesture,{ -overswipe:BaseOverswipeConfig, -edgeHitWidth:null, -isDetachable:true})}, - - -animationInterpolators:{ -into:buildStyleInterpolator(FromTheTop), -out:buildStyleInterpolator(ToTheDown)}})}; - - - - -module.exports=NavigatorSceneConfigs; -}); -__d('PanResponder',function(global, require, module, exports) { "use strict"; - - - - - -var TouchHistoryMath=require('TouchHistoryMath'); - -var currentCentroidXOfTouchesChangedAfter= -TouchHistoryMath.currentCentroidXOfTouchesChangedAfter; -var currentCentroidYOfTouchesChangedAfter= -TouchHistoryMath.currentCentroidYOfTouchesChangedAfter; -var previousCentroidXOfTouchesChangedAfter= -TouchHistoryMath.previousCentroidXOfTouchesChangedAfter; -var previousCentroidYOfTouchesChangedAfter= -TouchHistoryMath.previousCentroidYOfTouchesChangedAfter; -var currentCentroidX=TouchHistoryMath.currentCentroidX; -var currentCentroidY=TouchHistoryMath.currentCentroidY; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var PanResponder={ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -_initializeGestureState:function(gestureState){ -gestureState.moveX=0; -gestureState.moveY=0; -gestureState.x0=0; -gestureState.y0=0; -gestureState.dx=0; -gestureState.dy=0; -gestureState.vx=0; -gestureState.vy=0; -gestureState.numberActiveTouches=0; - -gestureState._accountsForMovesUpTo=0;}, - - - - - - - - - - - - - - - - - - - - - - - - - - -_updateGestureStateOnMove:function(gestureState,touchHistory){ -gestureState.numberActiveTouches=touchHistory.numberActiveTouches; -gestureState.moveX=currentCentroidXOfTouchesChangedAfter( -touchHistory, -gestureState._accountsForMovesUpTo); - -gestureState.moveY=currentCentroidYOfTouchesChangedAfter( -touchHistory, -gestureState._accountsForMovesUpTo); - -var movedAfter=gestureState._accountsForMovesUpTo; -var prevX=previousCentroidXOfTouchesChangedAfter(touchHistory,movedAfter); -var x=currentCentroidXOfTouchesChangedAfter(touchHistory,movedAfter); -var prevY=previousCentroidYOfTouchesChangedAfter(touchHistory,movedAfter); -var y=currentCentroidYOfTouchesChangedAfter(touchHistory,movedAfter); -var nextDX=gestureState.dx+(x-prevX); -var nextDY=gestureState.dy+(y-prevY); - - -var dt= -touchHistory.mostRecentTimeStamp-gestureState._accountsForMovesUpTo; -gestureState.vx=(nextDX-gestureState.dx)/dt; -gestureState.vy=(nextDY-gestureState.dy)/dt; - -gestureState.dx=nextDX; -gestureState.dy=nextDY; -gestureState._accountsForMovesUpTo=touchHistory.mostRecentTimeStamp;}, - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -create:function(config){ -var gestureState={ - -stateID:Math.random()}; - -PanResponder._initializeGestureState(gestureState); -var panHandlers={ -onStartShouldSetResponder:function(e){ -return config.onStartShouldSetPanResponder===undefined?false: -config.onStartShouldSetPanResponder(e,gestureState);}, - -onMoveShouldSetResponder:function(e){ -return config.onMoveShouldSetPanResponder===undefined?false: -config.onMoveShouldSetPanResponder(e,gestureState);}, - -onStartShouldSetResponderCapture:function(e){ - - -if(e.nativeEvent.touches.length===1){ -PanResponder._initializeGestureState(gestureState);} - -gestureState.numberActiveTouches=e.touchHistory.numberActiveTouches; -return config.onStartShouldSetPanResponderCapture!==undefined? -config.onStartShouldSetPanResponderCapture(e,gestureState):false;}, - - -onMoveShouldSetResponderCapture:function(e){ -var touchHistory=e.touchHistory; - - - -if(gestureState._accountsForMovesUpTo===touchHistory.mostRecentTimeStamp){ -return false;} - -PanResponder._updateGestureStateOnMove(gestureState,touchHistory); -return config.onMoveShouldSetPanResponderCapture? -config.onMoveShouldSetPanResponderCapture(e,gestureState):false;}, - - -onResponderGrant:function(e){ -gestureState.x0=currentCentroidX(e.touchHistory); -gestureState.y0=currentCentroidY(e.touchHistory); -gestureState.dx=0; -gestureState.dy=0; -config.onPanResponderGrant&&config.onPanResponderGrant(e,gestureState); - -return config.onShouldBlockNativeResponder===undefined?true: -config.onShouldBlockNativeResponder();}, - - -onResponderReject:function(e){ -config.onPanResponderReject&&config.onPanResponderReject(e,gestureState);}, - - -onResponderRelease:function(e){ -config.onPanResponderRelease&&config.onPanResponderRelease(e,gestureState); -PanResponder._initializeGestureState(gestureState);}, - - -onResponderStart:function(e){ -var touchHistory=e.touchHistory; -gestureState.numberActiveTouches=touchHistory.numberActiveTouches; -config.onPanResponderStart&&config.onPanResponderStart(e,gestureState);}, - - -onResponderMove:function(e){ -var touchHistory=e.touchHistory; - - -if(gestureState._accountsForMovesUpTo===touchHistory.mostRecentTimeStamp){ -return;} - - - -PanResponder._updateGestureStateOnMove(gestureState,touchHistory); -config.onPanResponderMove&&config.onPanResponderMove(e,gestureState);}, - - -onResponderEnd:function(e){ -var touchHistory=e.touchHistory; -gestureState.numberActiveTouches=touchHistory.numberActiveTouches; -config.onPanResponderEnd&&config.onPanResponderEnd(e,gestureState);}, - - -onResponderTerminate:function(e){ -config.onPanResponderTerminate&& -config.onPanResponderTerminate(e,gestureState); -PanResponder._initializeGestureState(gestureState);}, - - -onResponderTerminationRequest:function(e){ -return config.onPanResponderTerminationRequest===undefined?true: -config.onPanResponderTerminationRequest(e,gestureState);}}; - - -return {panHandlers:panHandlers};}}; - - - -module.exports=PanResponder; -}); -__d('TouchHistoryMath',function(global, require, module, exports) { "use strict"; - - - - - -var TouchHistoryMath={ - - - - - - - - - - - - - - - - -centroidDimension:function(touchHistory,touchesChangedAfter,isXAxis,ofCurrent){ -var touchBank=touchHistory.touchBank; -var total=0; -var count=0; - -var oneTouchData=touchHistory.numberActiveTouches===1? -touchHistory.touchBank[touchHistory.indexOfSingleActiveTouch]:null; - -if(oneTouchData!==null){ -if(oneTouchData.touchActive&&oneTouchData.currentTimeStamp>touchesChangedAfter){ -total+=ofCurrent&&isXAxis?oneTouchData.currentPageX: -ofCurrent&&!isXAxis?oneTouchData.currentPageY: -!ofCurrent&&isXAxis?oneTouchData.previousPageX: -oneTouchData.previousPageY; -count=1;}}else - -{ -for(var i=0;i=touchesChangedAfter){ -var toAdd; -if(ofCurrent&&isXAxis){ -toAdd=touchTrack.currentPageX;}else -if(ofCurrent&&!isXAxis){ -toAdd=touchTrack.currentPageY;}else -if(!ofCurrent&&isXAxis){ -toAdd=touchTrack.previousPageX;}else -{ -toAdd=touchTrack.previousPageY;} - -total+=toAdd; -count++;}}} - - - -return count>0?total/count:TouchHistoryMath.noCentroid;}, - - -currentCentroidXOfTouchesChangedAfter:function(touchHistory,touchesChangedAfter){ -return TouchHistoryMath.centroidDimension( -touchHistory, -touchesChangedAfter, -true, -true);}, - - - -currentCentroidYOfTouchesChangedAfter:function(touchHistory,touchesChangedAfter){ -return TouchHistoryMath.centroidDimension( -touchHistory, -touchesChangedAfter, -false, -true);}, - - - -previousCentroidXOfTouchesChangedAfter:function(touchHistory,touchesChangedAfter){ -return TouchHistoryMath.centroidDimension( -touchHistory, -touchesChangedAfter, -true, -false);}, - - - -previousCentroidYOfTouchesChangedAfter:function(touchHistory,touchesChangedAfter){ -return TouchHistoryMath.centroidDimension( -touchHistory, -touchesChangedAfter, -false, -false);}, - - - -currentCentroidX:function(touchHistory){ -return TouchHistoryMath.centroidDimension( -touchHistory, -0, -true, -true);}, - - - -currentCentroidY:function(touchHistory){ -return TouchHistoryMath.centroidDimension( -touchHistory, -0, -false, -true);}, - - - -noCentroid:-1}; - - -module.exports=TouchHistoryMath; -}); -__d('clamp',function(global, require, module, exports) { function - - - - - - - - - - - - - - - - - - - - - - - -clamp(min,value,max){ -if(valuemax){ -return max;} - -return value;} - - -module.exports=clamp; -}); -__d('rebound/rebound.js',function(global, require, module, exports) { ( - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -function(){ -var rebound={}; -var util=rebound.util={}; -var concat=Array.prototype.concat; -var slice=Array.prototype.slice; - - -util.bind=function bind(func,context){ -var args=slice.call(arguments,2); -return function(){ -func.apply(context,concat.call(args,slice.call(arguments)));};}; - - - - -util.extend=function extend(target,source){ -for(var key in source){ -if(source.hasOwnProperty(key)){ -target[key]=source[key];}}}; - - - - - - - - - -var SpringSystem=rebound.SpringSystem=function SpringSystem(looper){ -this._springRegistry={}; -this._activeSprings=[]; -this.listeners=[]; -this._idleSpringIndices=[]; -this.looper=looper||new AnimationLooper(); -this.looper.springSystem=this;}; - - -util.extend(SpringSystem.prototype,{ - -_springRegistry:null, - -_isIdle:true, - -_lastTimeMillis:-1, - -_activeSprings:null, - -listeners:null, - -_idleSpringIndices:null, - - - - - - -setLooper:function(looper){ -this.looper=looper; -looper.springSystem=this;}, - - - - - - -createSpring:function(tension,friction){ -var springConfig; -if(tension===undefined||friction===undefined){ -springConfig=SpringConfig.DEFAULT_ORIGAMI_SPRING_CONFIG;}else -{ -springConfig= -SpringConfig.fromOrigamiTensionAndFriction(tension,friction);} - -return this.createSpringWithConfig(springConfig);}, - - - - - -createSpringWithBouncinessAndSpeed:function(bounciness,speed){ -var springConfig; -if(bounciness===undefined||speed===undefined){ -springConfig=SpringConfig.DEFAULT_ORIGAMI_SPRING_CONFIG;}else -{ -springConfig= -SpringConfig.fromBouncinessAndSpeed(bounciness,speed);} - -return this.createSpringWithConfig(springConfig);}, - - - -createSpringWithConfig:function(springConfig){ -var spring=new Spring(this); -this.registerSpring(spring); -spring.setSpringConfig(springConfig); -return spring;}, - - - - - - -getIsIdle:function(){ -return this._isIdle;}, - - - - - -getSpringById:function(id){ -return this._springRegistry[id];}, - - - - -getAllSprings:function(){ -var vals=[]; -for(var id in this._springRegistry){ -if(this._springRegistry.hasOwnProperty(id)){ -vals.push(this._springRegistry[id]);}} - - -return vals;}, - - - - - - -registerSpring:function(spring){ -this._springRegistry[spring.getId()]=spring;}, - - - - - - -deregisterSpring:function(spring){ -removeFirst(this._activeSprings,spring); -delete this._springRegistry[spring.getId()];}, - - -advance:function(time,deltaTime){ -while(this._idleSpringIndices.length>0){this._idleSpringIndices.pop();} -for(var i=0,len=this._activeSprings.length;i0){ -var idx=this._idleSpringIndices.pop(); -idx>=0&&this._activeSprings.splice(idx,1);}}, - - - - - - - - - - - - - - - - -loop:function(currentTimeMillis){ -var listener; -if(this._lastTimeMillis===-1){ -this._lastTimeMillis=currentTimeMillis-1;} - -var ellapsedMillis=currentTimeMillis-this._lastTimeMillis; -this._lastTimeMillis=currentTimeMillis; - -var i=0,len=this.listeners.length; -for(i=0;i0&&( -startend|| -start>end&&this.getCurrentValue()Spring.MAX_DELTA_TIME_SEC){ -adjustedDeltaTime=Spring.MAX_DELTA_TIME_SEC;} - - -this._timeAccumulator+=adjustedDeltaTime; - -var tension=this._springConfig.tension, -friction=this._springConfig.friction, - -position=this._currentState.position, -velocity=this._currentState.velocity, -tempPosition=this._tempState.position, -tempVelocity=this._tempState.velocity, - -aVelocity,aAcceleration, -bVelocity,bAcceleration, -cVelocity,cAcceleration, -dVelocity,dAcceleration, - -dxdt,dvdt; - -while(this._timeAccumulator>=Spring.SOLVER_TIMESTEP_SEC){ - -this._timeAccumulator-=Spring.SOLVER_TIMESTEP_SEC; - -if(this._timeAccumulator0){ -this._interpolate(this._timeAccumulator/Spring.SOLVER_TIMESTEP_SEC);} - - -if(this.isAtRest()|| -this._overshootClampingEnabled&&this.isOvershooting()){ - -if(this._springConfig.tension>0){ -this._startValue=this._endValue; -this._currentState.position=this._endValue;}else -{ -this._endValue=this._currentState.position; -this._startValue=this._endValue;} - -this.setVelocity(0); -isAtRest=true;} - - -var notifyActivate=false; -if(this._wasAtRest){ -this._wasAtRest=false; -notifyActivate=true;} - - -var notifyAtRest=false; -if(isAtRest){ -this._wasAtRest=true; -notifyAtRest=true;} - - -this.notifyPositionUpdated(notifyActivate,notifyAtRest);}, - - -notifyPositionUpdated:function(notifyActivate,notifyAtRest){ -for(var i=0,len=this.listeners.length;i18&&tension<=44){ -friction=this.b3Friction2(tension);}else -{ -friction=this.b3Friction3(tension);} - -return friction;}}); - - - -util.extend(SpringConfig,{ - - - - -fromOrigamiTensionAndFriction:function(tension,friction){ -return new SpringConfig( -OrigamiValueConverter.tensionFromOrigamiValue(tension), -OrigamiValueConverter.frictionFromOrigamiValue(friction));}, - - - - - -fromBouncinessAndSpeed:function(bounciness,speed){ -var bouncyConversion=new rebound.BouncyConversion(bounciness,speed); -return this.fromOrigamiTensionAndFriction( -bouncyConversion.bouncyTension, -bouncyConversion.bouncyFriction);}, - - - - -coastingConfigWithOrigamiFriction:function(friction){ -return new SpringConfig( -0, -OrigamiValueConverter.frictionFromOrigamiValue(friction));}}); - - - - -SpringConfig.DEFAULT_ORIGAMI_SPRING_CONFIG= -SpringConfig.fromOrigamiTensionAndFriction(40,7); - -util.extend(SpringConfig.prototype,{friction:0,tension:0}); - - - - -var colorCache={}; -util.hexToRGB=function(color){ -if(colorCache[color]){ -return colorCache[color];} - -color=color.replace('#',''); -if(color.length===3){ -color=color[0]+color[0]+color[1]+color[1]+color[2]+color[2];} - -var parts=color.match(/.{2}/g); - -var ret={ -r:parseInt(parts[0],16), -g:parseInt(parts[1],16), -b:parseInt(parts[2],16)}; - - -colorCache[color]=ret; -return ret;}; - - -util.rgbToHex=function(r,g,b){ -r=r.toString(16); -g=g.toString(16); -b=b.toString(16); -r=r.length<2?'0'+r:r; -g=g.length<2?'0'+g:g; -b=b.length<2?'0'+b:b; -return '#'+r+g+b;}; - - -var MathUtil=rebound.MathUtil={ - - - - - - - - -mapValueInRange:function(value,fromLow,fromHigh,toLow,toHigh){ -var fromRangeSize=fromHigh-fromLow; -var toRangeSize=toHigh-toLow; -var valueScale=(value-fromLow)/fromRangeSize; -return toLow+valueScale*toRangeSize;}, - - - - - -interpolateColor: -function(val,startColor,endColor,fromLow,fromHigh,asRGB){ -fromLow=fromLow===undefined?0:fromLow; -fromHigh=fromHigh===undefined?1:fromHigh; -startColor=util.hexToRGB(startColor); -endColor=util.hexToRGB(endColor); -var r=Math.floor( -util.mapValueInRange(val,fromLow,fromHigh,startColor.r,endColor.r)); - -var g=Math.floor( -util.mapValueInRange(val,fromLow,fromHigh,startColor.g,endColor.g)); - -var b=Math.floor( -util.mapValueInRange(val,fromLow,fromHigh,startColor.b,endColor.b)); - -if(asRGB){ -return 'rgb('+r+','+g+','+b+')';}else -{ -return util.rgbToHex(r,g,b);}}, - - - -degreesToRadians:function(deg){ -return deg*Math.PI/180;}, - - -radiansToDegrees:function(rad){ -return rad*180/Math.PI;}}; - - - - -util.extend(util,MathUtil); - - - - - - - -function removeFirst(array,item){ -var idx=array.indexOf(item); -idx!=-1&&array.splice(idx,1);} - - -var _onFrame; -if(typeof window!=='undefined'){ -_onFrame=window.requestAnimationFrame|| -window.webkitRequestAnimationFrame|| -window.mozRequestAnimationFrame|| -window.msRequestAnimationFrame|| -window.oRequestAnimationFrame|| -function(callback){ -window.setTimeout(callback,1000/60);};} - - -if(!_onFrame&&typeof process!=='undefined'&&process.title==='node'){ -_onFrame=setImmediate;} - - - -util.onFrame=function onFrame(func){ -return _onFrame(func);}; - - - - -if(typeof exports!='undefined'){ -util.extend(exports,rebound);}else -if(typeof window!='undefined'){ -window.rebound=rebound;}})(); -}); -__d('NavigatorIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var EventEmitter=require('EventEmitter'); -var Image=require('Image'); -var NavigationContext=require('NavigationContext'); -var RCTNavigatorManager=require('NativeModules').NavigatorManager; -var React=require('React'); -var StaticContainer=require('StaticContainer.react'); -var StyleSheet=require('StyleSheet'); -var View=require('View'); - -var invariant=require('invariant'); -var logError=require('logError'); -var requireNativeComponent=require('requireNativeComponent'); -var resolveAssetSource=require('resolveAssetSource'); - -var TRANSITIONER_REF='transitionerRef'; - -var PropTypes=React.PropTypes; - -var __uid=0; -function getuid(){ -return __uid++;} - - -var NavigatorTransitionerIOS=React.createClass({displayName:'NavigatorTransitionerIOS', -requestSchedulingNavigation:function(cb){ -RCTNavigatorManager.requestSchedulingJavaScriptNavigation( -React.findNodeHandle(this), -logError, -cb);}, - - - -render:function(){ -return ( -React.createElement(RCTNavigator,this.props));}}); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var NavigatorIOS=React.createClass({displayName:'NavigatorIOS', - -propTypes:{ - - - - - - -initialRoute:PropTypes.shape({ - - - -component:PropTypes.func.isRequired, - - - - -title:PropTypes.string.isRequired, - - - - - -passProps:PropTypes.object, - - - - - - -backButtonIcon:Image.propTypes.source, - - - - - - -backButtonTitle:PropTypes.string, - - - - -leftButtonIcon:Image.propTypes.source, - - - - -leftButtonTitle:PropTypes.string, - - - - -onLeftButtonPress:PropTypes.func, - - - - -rightButtonIcon:Image.propTypes.source, - - - - -rightButtonTitle:PropTypes.string, - - - - -onRightButtonPress:PropTypes.func, - - - - -wrapperStyle:View.propTypes.style}). - -isRequired, - - - - -navigationBarHidden:PropTypes.bool, - - - - -shadowHidden:PropTypes.bool, - - - - - -itemWrapperStyle:View.propTypes.style, - - - - -tintColor:PropTypes.string, - - - - -barTintColor:PropTypes.string, - - - - -titleTextColor:PropTypes.string, - - - - -translucent:PropTypes.bool}, - - - -navigator:undefined, -navigationContext:new NavigationContext(), - -componentWillMount:function(){ - - -this.navigator={ -push:this.push, -pop:this.pop, -popN:this.popN, -replace:this.replace, -replacePrevious:this.replacePrevious, -replacePreviousAndPop:this.replacePreviousAndPop, -resetTo:this.resetTo, -popToRoute:this.popToRoute, -popToTop:this.popToTop, -navigationContext:this.navigationContext}; - -this._emitWillFocus(this.state.routeStack[this.state.observedTopOfStack]);}, - - -componentDidMount:function(){ -this._emitDidFocus(this.state.routeStack[this.state.observedTopOfStack]);}, - - -componentWillUnmount:function(){ -this.navigationContext.dispose(); -this.navigationContext=new NavigationContext();}, - - -getDefaultProps:function(){ -return { -translucent:true};}, - - - -getInitialState:function(){ -return { -idStack:[getuid()], -routeStack:[this.props.initialRoute], - -requestedTopOfStack:0, - - - - - - -observedTopOfStack:0, -progress:1, -fromIndex:0, -toIndex:0, - - -makingNavigatorRequest:false, - - - -updatingAllIndicesAtOrBeyond:0};}, - - - -_toFocusOnNavigationComplete:undefined, - -_handleFocusRequest:function(item){ -if(this.state.makingNavigatorRequest){ -this._toFocusOnNavigationComplete=item;}else -{ -this._getFocusEmitter().emit('focus',item);}}, - - - -_focusEmitter:undefined, - -_getFocusEmitter:function(){ - -var focusEmitter=this._focusEmitter; -if(!focusEmitter){ -focusEmitter=new EventEmitter(); -this._focusEmitter=focusEmitter;} - -return focusEmitter;}, - - -getChildContext:function() - - -{ -return { -onFocusRequested:this._handleFocusRequest, -focusEmitter:this._getFocusEmitter()};}, - - - -childContextTypes:{ -onFocusRequested:React.PropTypes.func, -focusEmitter:React.PropTypes.instanceOf(EventEmitter)}, - - -_tryLockNavigator:function(cb){ -this.refs[TRANSITIONER_REF].requestSchedulingNavigation( -function(acquiredLock){return acquiredLock&&cb();});}, - - - -_handleNavigatorStackChanged:function(e){ -var newObservedTopOfStack=e.nativeEvent.stackLength-1; -this._emitDidFocus(this.state.routeStack[newObservedTopOfStack]); - -invariant( -newObservedTopOfStack<=this.state.requestedTopOfStack, -'No navigator item should be pushed without JS knowing about it %s %s',newObservedTopOfStack,this.state.requestedTopOfStack); - -var wasWaitingForConfirmation= -this.state.requestedTopOfStack!==this.state.observedTopOfStack; -if(wasWaitingForConfirmation){ -invariant( -newObservedTopOfStack===this.state.requestedTopOfStack, -'If waiting for observedTopOfStack to reach requestedTopOfStack, '+ -'the only valid observedTopOfStack should be requestedTopOfStack.');} - - - - - - - - - - - -var nextState={ -observedTopOfStack:newObservedTopOfStack, -makingNavigatorRequest:false, -updatingAllIndicesAtOrBeyond:null, -progress:1, -toIndex:newObservedTopOfStack, -fromIndex:newObservedTopOfStack}; - -this.setState(nextState,this._eliminateUnneededChildren);}, - - -_eliminateUnneededChildren:function(){ - - - -var updatingAllIndicesAtOrBeyond= -this.state.routeStack.length>this.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:true, -updatingAllIndicesAtOrBeyond:updatingAllIndicesAtOrBeyond});}, - - - -_emitDidFocus:function(route){ -this.navigationContext.emit('didfocus',{route:route});}, - - -_emitWillFocus:function(route){ -this.navigationContext.emit('willfocus',{route:route});}, - - -push:function(route){var _this=this; -invariant(!!route,'Must supply route to push'); - -if(this.state.requestedTopOfStack===this.state.observedTopOfStack){ -this._tryLockNavigator(function(){ -_this._emitWillFocus(route); - -var nextStack=_this.state.routeStack.concat([route]); -var nextIDStack=_this.state.idStack.concat([getuid()]); -_this.setState({ - - -idStack:nextIDStack, -routeStack:nextStack, -requestedTopOfStack:nextStack.length-1, -makingNavigatorRequest:true, -updatingAllIndicesAtOrBeyond:nextStack.length-1});});}}, - - - - - -popN:function(n){var _this2=this; -if(n===0){ -return;} - - -if(this.state.requestedTopOfStack===this.state.observedTopOfStack){ -if(this.state.requestedTopOfStack>0){ -this._tryLockNavigator(function(){ -var newRequestedTopOfStack=_this2.state.requestedTopOfStack-n; -invariant(newRequestedTopOfStack>=0,'Cannot pop below 0'); -_this2._emitWillFocus(_this2.state.routeStack[newRequestedTopOfStack]); -_this2.setState({ -requestedTopOfStack:newRequestedTopOfStack, -makingNavigatorRequest:true, - - -updatingAllIndicesAtOrBeyond:null});});}}}, - - - - - - -pop:function(){ -this.popN(1);}, - - - - - - - - -replaceAtIndex:function(route,index){ -invariant(!!route,'Must supply route to replace'); -if(index<0){ -index+=this.state.routeStack.length;} - - -if(this.state.routeStack.length<=index){ -return;} - - - - -var nextIDStack=this.state.idStack.slice(); -var nextRouteStack=this.state.routeStack.slice(); -nextIDStack[index]=getuid(); -nextRouteStack[index]=route; - -this.setState({ -idStack:nextIDStack, -routeStack:nextRouteStack, -makingNavigatorRequest:false, -updatingAllIndicesAtOrBeyond:index}); - - -this._emitWillFocus(route); -this._emitDidFocus(route);}, - - - - - -replace:function(route){ -this.replaceAtIndex(route,-1);}, - - - - - -replacePrevious:function(route){ -this.replaceAtIndex(route,-2);}, - - -popToTop:function(){ -this.popToRoute(this.state.routeStack[0]);}, - - -popToRoute:function(route){ -var indexOfRoute=this.state.routeStack.indexOf(route); -invariant( -indexOfRoute!==-1, -'Calling pop to route for a route that doesn\'t exist!'); - -var numToPop=this.state.routeStack.length-indexOfRoute-1; -this.popN(numToPop);}, - - -replacePreviousAndPop:function(route){var _this3=this; - -if(this.state.requestedTopOfStack!==this.state.observedTopOfStack){ -return;} - -if(this.state.routeStack.length<2){ -return;} - -this._tryLockNavigator(function(){ -_this3.replacePrevious(route); -_this3.setState({ -requestedTopOfStack:_this3.state.requestedTopOfStack-1, -makingNavigatorRequest:true});});}, - - - - -resetTo:function(route){ -invariant(!!route,'Must supply route to push'); - -if(this.state.requestedTopOfStack!==this.state.observedTopOfStack){ -return;} - -this.replaceAtIndex(route,0); -this.popToRoute(route);}, - - -handleNavigationComplete:function(e){ -if(this._toFocusOnNavigationComplete){ -this._getFocusEmitter().emit('focus',this._toFocusOnNavigationComplete); -this._toFocusOnNavigationComplete=null;} - -this._handleNavigatorStackChanged(e);}, - - -_routeToStackItem:function(route,i){var -component=route.component;var wrapperStyle=route.wrapperStyle;var passProps=route.passProps;var route=babelHelpers.objectWithoutProperties(route,['component','wrapperStyle','passProps']);var _props= -this.props;var itemWrapperStyle=_props.itemWrapperStyle;var props=babelHelpers.objectWithoutProperties(_props,['itemWrapperStyle']); -var shouldUpdateChild= -this.state.updatingAllIndicesAtOrBeyond&& -this.state.updatingAllIndicesAtOrBeyond>=i; -var Component=component; -return ( -React.createElement(StaticContainer,{key:'nav'+i,shouldUpdate:shouldUpdateChild}, -React.createElement(RCTNavigatorItem,babelHelpers.extends({}, -route, -props,{ -style:[ -styles.stackItem, -itemWrapperStyle, -wrapperStyle]}), - -React.createElement(Component,babelHelpers.extends({ -navigator:this.navigator, -route:route}, -passProps)))));}, - - - - - - -renderNavigationStackItems:function(){ -var shouldRecurseToNavigator= -this.state.makingNavigatorRequest|| -this.state.updatingAllIndicesAtOrBeyond!==null; - - -var items=shouldRecurseToNavigator? -this.state.routeStack.map(this._routeToStackItem):null; -return ( -React.createElement(StaticContainer,{shouldUpdate:shouldRecurseToNavigator}, -React.createElement(NavigatorTransitionerIOS,{ -ref:TRANSITIONER_REF, -style:styles.transitioner, -vertical:this.props.vertical, -requestedTopOfStack:this.state.requestedTopOfStack, -onNavigationComplete:this.handleNavigationComplete}, -items)));}, - - - - - -render:function(){ -return ( -React.createElement(View,{style:this.props.style}, -this.renderNavigationStackItems()));}}); - - - - - -var styles=StyleSheet.create({ -stackItem:{ -backgroundColor:'white', -overflow:'hidden', -position:'absolute', -top:0, -left:0, -right:0, -bottom:0}, - -transitioner:{ -flex:1}}); - - - -var RCTNavigator=requireNativeComponent('RCTNavigator'); -var RCTNavigatorItem=requireNativeComponent('RCTNavItem'); - -module.exports=NavigatorIOS; -}); -__d('StaticContainer.react',function(global, require, module, exports) { var - - - - - - - - - - - - - - - - - - - - -React=require('React'); - -var onlyChild=require('onlyChild');var - - - - - - - - - - - - - - - - -StaticContainer=(function(_React$Component){babelHelpers.inherits(StaticContainer,_React$Component);function StaticContainer(){babelHelpers.classCallCheck(this,StaticContainer);return babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(StaticContainer).apply(this,arguments));}babelHelpers.createClass(StaticContainer,[{key:'shouldComponentUpdate',value:function shouldComponentUpdate( - -nextProps){ -return !!nextProps.shouldUpdate;}},{key:'render',value:function render() - - -{ -var child=this.props.children; -return child===null||child===false?null:onlyChild(child);}}]);return StaticContainer;})(React.Component); - - - - -module.exports=StaticContainer; -}); -__d('PickerIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var NativeMethodsMixin=require('NativeMethodsMixin'); -var React=require('React'); -var ReactChildren=require('ReactChildren'); -var RCTPickerIOSConsts=require('NativeModules').UIManager.RCTPicker.Constants; -var StyleSheet=require('StyleSheet'); -var StyleSheetPropType=require('StyleSheetPropType'); -var TextStylePropTypes=require('TextStylePropTypes'); -var View=require('View'); - -var itemStylePropType=StyleSheetPropType(TextStylePropTypes); -var requireNativeComponent=require('requireNativeComponent'); - -var PickerIOS=React.createClass({displayName:'PickerIOS', -mixins:[NativeMethodsMixin], - -propTypes:babelHelpers.extends({}, -View.propTypes,{ -itemStyle:itemStylePropType, -onValueChange:React.PropTypes.func, -selectedValue:React.PropTypes.any}), - - -getInitialState:function(){ -return this._stateFromProps(this.props);}, - - -componentWillReceiveProps:function(nextProps){ -this.setState(this._stateFromProps(nextProps));}, - - - -_stateFromProps:function(props){ -var selectedIndex=0; -var items=[]; -ReactChildren.forEach(props.children,function(child,index){ -if(child.props.value===props.selectedValue){ -selectedIndex=index;} - -items.push({value:child.props.value,label:child.props.label});}); - -return {selectedIndex:selectedIndex,items:items};}, - - -render:function(){var _this=this; -return ( -React.createElement(View,{style:this.props.style}, -React.createElement(RCTPickerIOS,{ -ref:function(picker){return _this._picker=picker;}, -style:[styles.pickerIOS,this.props.itemStyle], -items:this.state.items, -selectedIndex:this.state.selectedIndex, -onChange:this._onChange})));}, - - - - - -_onChange:function(event){ -if(this.props.onChange){ -this.props.onChange(event);} - -if(this.props.onValueChange){ -this.props.onValueChange(event.nativeEvent.newValue);} - - - - - - - - -if(this._picker&&this.state.selectedIndex!==event.nativeEvent.newIndex){ -this._picker.setNativeProps({ -selectedIndex:this.state.selectedIndex});}}}); - - - - - -PickerIOS.Item=React.createClass({displayName:'Item', -propTypes:{ -value:React.PropTypes.any, -label:React.PropTypes.string}, - - -render:function(){ - -return null;}}); - - - -var styles=StyleSheet.create({ -pickerIOS:{ - - - -height:RCTPickerIOSConsts.ComponentHeight}}); - - - -var RCTPickerIOS=requireNativeComponent('RCTPicker',{ -propTypes:{ -style:itemStylePropType}}, - -{ -nativeOnly:{ -items:true, -onChange:true, -selectedIndex:true}}); - - - -module.exports=PickerIOS; -}); -__d('ProgressBarAndroid',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -module.exports=require('UnimplementedView'); -}); -__d('ProgressViewIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var Image=require('Image'); -var NativeMethodsMixin=require('NativeMethodsMixin'); -var NativeModules=require('NativeModules'); -var PropTypes=require('ReactPropTypes'); -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - - - - -var ProgressViewIOS=React.createClass({displayName:'ProgressViewIOS', -mixins:[NativeMethodsMixin], - -propTypes:babelHelpers.extends({}, -View.propTypes,{ - - - -progressViewStyle:PropTypes.oneOf(['default','bar']), - - - - -progress:PropTypes.number, - - - - -progressTintColor:PropTypes.string, - - - - -trackTintColor:PropTypes.string, - - - - -progressImage:Image.propTypes.source, - - - - -trackImage:Image.propTypes.source}), - - -render:function(){ -return ( -React.createElement(RCTProgressView,babelHelpers.extends({}, -this.props,{ -style:[styles.progressView,this.props.style]})));}}); - - - - - -var styles=StyleSheet.create({ -progressView:{ -height:NativeModules.ProgressViewManager.ComponentHeight}}); - - - -var RCTProgressView=requireNativeComponent( -'RCTProgressView', -ProgressViewIOS); - - -module.exports=ProgressViewIOS; -}); -__d('SegmentedControlIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var NativeMethodsMixin=require('NativeMethodsMixin'); -var NativeModules=require('NativeModules'); -var PropTypes=require('ReactPropTypes'); -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - - - - - - -var SEGMENTED_CONTROL_REFERENCE='segmentedcontrol'; - - - - - - -var SegmentedControlIOS=React.createClass({displayName:'SegmentedControlIOS', -mixins:[NativeMethodsMixin], - -propTypes:babelHelpers.extends({}, -View.propTypes,{ - - - -values:PropTypes.arrayOf(PropTypes.string), - - - - -selectedIndex:PropTypes.number, - - - - - -onValueChange:PropTypes.func, - - - - - -onChange:PropTypes.func, - - - - - -enabled:PropTypes.bool, - - - - -tintColor:PropTypes.string, - - - - - -momentary:PropTypes.bool}), - - -getDefaultProps:function(){ -return { -values:[], -enabled:true};}, - - - -_onChange:function(event){ -this.props.onChange&&this.props.onChange(event); -this.props.onValueChange&&this.props.onValueChange(event.nativeEvent.value);}, - - -render:function(){ -return ( -React.createElement(RCTSegmentedControl,babelHelpers.extends({}, -this.props,{ -ref:SEGMENTED_CONTROL_REFERENCE, -style:[styles.segmentedControl,this.props.style], -onChange:this._onChange})));}}); - - - - - -var styles=StyleSheet.create({ -segmentedControl:{ -height:NativeModules.SegmentedControlManager.ComponentHeight}}); - - - -var RCTSegmentedControl=requireNativeComponent( -'RCTSegmentedControl', -SegmentedControlIOS); - - -module.exports=SegmentedControlIOS; -}); -__d('SliderIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var Image=require('Image'); -var NativeMethodsMixin=require('NativeMethodsMixin'); -var PropTypes=require('ReactPropTypes'); -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - - - -var SliderIOS=React.createClass({displayName:'SliderIOS', -mixins:[NativeMethodsMixin], - -propTypes:babelHelpers.extends({}, -View.propTypes,{ - - - - -style:View.propTypes.style, - - - - - - - - - -value:PropTypes.number, - - - - - - -step:PropTypes.number, - - - - -minimumValue:PropTypes.number, - - - - -maximumValue:PropTypes.number, - - - - - -minimumTrackTintColor:PropTypes.string, - - - - - -maximumTrackTintColor:PropTypes.string, - - - - - -disabled:PropTypes.bool, - - - - -trackImage:Image.propTypes.source, - - - - -thumbImage:Image.propTypes.source, - - - - -onValueChange:PropTypes.func, - - - - - -onSlidingComplete:PropTypes.func}), - - -getDefaultProps:function(){ -return { -disabled:false};}, - - - -render:function(){var _this=this; - -var onValueChange=this.props.onValueChange&&function(event){ -_this.props.onValueChange&& -_this.props.onValueChange(event.nativeEvent.value);}; - - -var onSlidingComplete=this.props.onSlidingComplete&&function(event){ -_this.props.onSlidingComplete&& -_this.props.onSlidingComplete(event.nativeEvent.value);};var _props= - - -this.props;var style=_props.style;var props=babelHelpers.objectWithoutProperties(_props,['style']); -style=[styles.slider,style]; - -return ( -React.createElement(RCTSlider,babelHelpers.extends({}, -props,{ -style:style, -onValueChange:onValueChange, -onSlidingComplete:onSlidingComplete})));}}); - - - - - -var styles=StyleSheet.create({ -slider:{ -height:40}}); - - - -var RCTSlider=requireNativeComponent('RCTSlider',SliderIOS); - -module.exports=SliderIOS; -}); -__d('SnapshotViewIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var React=require('React'); -var StyleSheet=require('StyleSheet');var _require= -require('NativeModules');var TestModule=_require.TestModule;var UIManager=_require.UIManager; -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - -var SnapshotViewIOS=React.createClass({displayName:'SnapshotViewIOS', -onDefaultAction:function(event){ -TestModule.verifySnapshot(TestModule.markTestPassed);}, - - -render:function(){ -var testIdentifier=this.props.testIdentifier||'test'; -var onSnapshotReady=this.props.onSnapshotReady||this.onDefaultAction; -return ( -React.createElement(RCTSnapshot,babelHelpers.extends({ -style:style.snapshot}, -this.props,{ -onSnapshotReady:onSnapshotReady, -testIdentifier:testIdentifier})));}, - - - - -propTypes:babelHelpers.extends({}, -View.propTypes,{ - -onSnapshotReady:React.PropTypes.func, - -testIdentifier:React.PropTypes.string})}); - - - -var style=StyleSheet.create({ -snapshot:{ -flex:1}}); - - - - - - -var RCTSnapshot=UIManager.RCTSnapshot? -requireNativeComponent('RCTSnapshot',SnapshotViewIOS): -View; - -module.exports=SnapshotViewIOS; -}); -__d('Switch',function(global, require, module, exports) { 'use strict'; - - - - - - - -var NativeMethodsMixin=require('NativeMethodsMixin'); -var Platform=require('Platform'); -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - - - - - - - - - -var Switch=React.createClass({displayName:'Switch', -propTypes:babelHelpers.extends({}, -View.propTypes,{ - - - - -value:React.PropTypes.bool, - - - - -disabled:React.PropTypes.bool, - - - -onValueChange:React.PropTypes.func, - - - -testID:React.PropTypes.string, - - - - - -tintColor:React.PropTypes.string, - - - - -onTintColor:React.PropTypes.string, - - - - -thumbTintColor:React.PropTypes.string}), - - -getDefaultProps:function(){ -return { -value:false, -disabled:false};}, - - - -mixins:[NativeMethodsMixin], - -_rctSwitch:{}, -_onChange:function(event){ -this.props.onChange&&this.props.onChange(event); -this.props.onValueChange&&this.props.onValueChange(event.nativeEvent.value); - - - -if(Platform.OS==='android'){ -this._rctSwitch.setNativeProps({on:this.props.value});}else -{ -this._rctSwitch.setNativeProps({value:this.props.value});}}, - - - -render:function(){var _this=this; -var props=babelHelpers.extends({},this.props); -props.onStartShouldSetResponder=function(){return true;}; -props.onResponderTerminationRequest=function(){return false;}; -if(Platform.OS==='android'){ -props.enabled=!this.props.disabled; -props.on=this.props.value; -props.style=[styles.rctSwitchAndroid,this.props.style];}else -if(Platform.OS==='ios'){ -props.style=[styles.rctSwitchIOS,this.props.style];} - -return ( -React.createElement(RCTSwitch,babelHelpers.extends({}, -props,{ -ref:function(ref){_this._rctSwitch=ref;}, -onChange:this._onChange})));}}); - - - - - -var styles=StyleSheet.create({ -rctSwitchIOS:{ -height:31, -width:51}, - -rctSwitchAndroid:{ -height:27, -width:40}}); - - - -if(Platform.OS==='android'){ -var RCTSwitch=requireNativeComponent('AndroidSwitch',Switch,{ -nativeOnly:{onChange:true,on:true,enabled:true}});}else - -{ -var RCTSwitch=requireNativeComponent('RCTSwitch',Switch,{ -nativeOnly:{onChange:true}});} - - - -module.exports=Switch; -}); -__d('PullToRefreshViewAndroid',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -module.exports=require('UnimplementedView'); -}); -__d('SwitchAndroid',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -module.exports=require('UnimplementedView'); -}); -__d('SwitchIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - -var NativeMethodsMixin=require('NativeMethodsMixin'); -var PropTypes=require('ReactPropTypes'); -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - -var SWITCH='switch'; - - - - - - - - - - - - - - - -var SwitchIOS=React.createClass({displayName:'SwitchIOS', -mixins:[NativeMethodsMixin], - -propTypes:babelHelpers.extends({}, -View.propTypes,{ - - - - -value:PropTypes.bool, - - - - - -disabled:PropTypes.bool, - - - - -onValueChange:PropTypes.func, - - - - -onTintColor:PropTypes.string, - - - - -thumbTintColor:PropTypes.string, - - - - -tintColor:PropTypes.string}), - - -getDefaultProps:function(){ -return { -value:false, -disabled:false};}, - - - -_onChange:function(event){ - - -this.refs[SWITCH].setNativeProps({value:this.props.value}); - -if(this.props.value===event.nativeEvent.value||this.props.disabled){ -return;} - - -this.props.onChange&&this.props.onChange(event); -this.props.onValueChange&&this.props.onValueChange(event.nativeEvent.value);}, - - -render:function(){ -return ( -React.createElement(RCTSwitch,babelHelpers.extends({}, -this.props,{ -ref:SWITCH, -onChange:this._onChange, -style:[styles.rkSwitch,this.props.style]})));}}); - - - - - -var styles=StyleSheet.create({ -rkSwitch:{ -height:31, -width:51}}); - - - -var RCTSwitch=requireNativeComponent('RCTSwitch',SwitchIOS,{ -nativeOnly:{onChange:true}}); - - -module.exports=SwitchIOS; -}); -__d('TabBarIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var TabBarItemIOS=require('TabBarItemIOS'); -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - -var TabBarIOS=React.createClass({displayName:'TabBarIOS', -statics:{ -Item:TabBarItemIOS}, - - -propTypes:babelHelpers.extends({}, -View.propTypes,{ -style:View.propTypes.style, - - - -tintColor:React.PropTypes.string, - - - -barTintColor:React.PropTypes.string, - - - -translucent:React.PropTypes.bool}), - - -render:function(){ -return ( -React.createElement(RCTTabBar,{ -style:[styles.tabGroup,this.props.style], -tintColor:this.props.tintColor, -barTintColor:this.props.barTintColor, -translucent:this.props.translucent!==false}, -this.props.children));}}); - - - - - -var styles=StyleSheet.create({ -tabGroup:{ -flex:1}}); - - - -var RCTTabBar=requireNativeComponent('RCTTabBar',TabBarIOS); - -module.exports=TabBarIOS; -}); -__d('TabBarItemIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var Image=require('Image'); -var React=require('React'); -var StaticContainer=require('StaticContainer.react'); -var StyleSheet=require('StyleSheet'); -var View=require('View'); - -var requireNativeComponent=require('requireNativeComponent'); - -var TabBarItemIOS=React.createClass({displayName:'TabBarItemIOS', -propTypes:babelHelpers.extends({}, -View.propTypes,{ - - - -badge:React.PropTypes.oneOfType([ -React.PropTypes.string, -React.PropTypes.number]), - - - - - - -systemIcon:React.PropTypes.oneOf([ -'bookmarks', -'contacts', -'downloads', -'favorites', -'featured', -'history', -'more', -'most-recent', -'most-viewed', -'recents', -'search', -'top-rated']), - - - - -icon:Image.propTypes.source, - - - - -selectedIcon:Image.propTypes.source, - - - - -onPress:React.PropTypes.func, - - - - -selected:React.PropTypes.bool, - - - -style:View.propTypes.style, - - - - -title:React.PropTypes.string}), - - -getInitialState:function(){ -return { -hasBeenSelected:false};}, - - - -componentWillMount:function(){ -if(this.props.selected){ -this.setState({hasBeenSelected:true});}}, - - - -componentWillReceiveProps:function(nextProps){ -if(this.state.hasBeenSelected||nextProps.selected){ -this.setState({hasBeenSelected:true});}}, - - - -render:function(){var _props= -this.props;var style=_props.style;var children=_props.children;var props=babelHelpers.objectWithoutProperties(_props,['style','children']); - - - -if(this.state.hasBeenSelected){ -var tabContents= -React.createElement(StaticContainer,{shouldUpdate:this.props.selected}, -children);}else - -{ -var tabContents=React.createElement(View,null);} - - -return ( -React.createElement(RCTTabBarItem,babelHelpers.extends({}, -props,{ -style:[styles.tab,style]}), -tabContents));}}); - - - - - -var styles=StyleSheet.create({ -tab:{ -position:'absolute', -top:0, -right:0, -bottom:0, -left:0}}); - - - -var RCTTabBarItem=requireNativeComponent('RCTTabBarItem',TabBarItemIOS); - -module.exports=TabBarItemIOS; -}); -__d('Text',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var NativeMethodsMixin=require('NativeMethodsMixin'); -var Platform=require('Platform'); -var React=require('React'); -var ReactInstanceMap=require('ReactInstanceMap'); -var ReactNativeViewAttributes=require('ReactNativeViewAttributes'); -var StyleSheetPropType=require('StyleSheetPropType'); -var TextStylePropTypes=require('TextStylePropTypes'); -var Touchable=require('Touchable'); - -var createReactNativeComponentClass= -require('createReactNativeComponentClass'); -var merge=require('merge'); - -var stylePropType=StyleSheetPropType(TextStylePropTypes); - -var viewConfig={ -validAttributes:merge(ReactNativeViewAttributes.UIView,{ -isHighlighted:true, -numberOfLines:true, -allowFontScaling:true}), - -uiViewClassName:'RCTText'}; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var Text=React.createClass({displayName:'Text', -propTypes:{ - - - - - -numberOfLines:React.PropTypes.number, - - - - - -onLayout:React.PropTypes.func, - - - -onPress:React.PropTypes.func, - - - - - -suppressHighlighting:React.PropTypes.bool, -style:stylePropType, - - - -testID:React.PropTypes.string, - - - -allowFontScaling:React.PropTypes.bool}, - -getDefaultProps:function(){ -return { -accessible:true, -allowFontScaling:true};}, - - -getInitialState:function(){ -return merge(Touchable.Mixin.touchableGetInitialState(),{ -isHighlighted:false});}, - - -mixins:[NativeMethodsMixin], -viewConfig:viewConfig, -getChildContext:function(){ -return {isInAParentText:true};}, - -childContextTypes:{ -isInAParentText:React.PropTypes.bool}, - -contextTypes:{ -isInAParentText:React.PropTypes.bool}, - - - - -_handlers:null, - - - - -touchableHandleActivePressIn:null, -touchableHandleActivePressOut:null, -touchableHandlePress:null, -touchableGetPressRectOffset:null, -render:function(){var _this=this; -var newProps=this.props; -if(this.props.onStartShouldSetResponder||this.props.onPress){ -if(!this._handlers){ -this._handlers={ -onStartShouldSetResponder:function(){ -var shouldSetFromProps=_this.props.onStartShouldSetResponder&& -_this.props.onStartShouldSetResponder(); -var setResponder=shouldSetFromProps||!!_this.props.onPress; -if(setResponder&&!_this.touchableHandleActivePressIn){ - - -for(var key in Touchable.Mixin){ -if(typeof Touchable.Mixin[key]==='function'){ -_this[key]=Touchable.Mixin[key].bind(_this);}} - - -_this.touchableHandleActivePressIn=function(){ -if(_this.props.suppressHighlighting||!_this.props.onPress){ -return;} - -_this.setState({ -isHighlighted:true});}; - - - -_this.touchableHandleActivePressOut=function(){ -if(_this.props.suppressHighlighting||!_this.props.onPress){ -return;} - -_this.setState({ -isHighlighted:false});}; - - - -_this.touchableHandlePress=function(){ -_this.props.onPress&&_this.props.onPress();}; - - -_this.touchableGetPressRectOffset=function(){ -return PRESS_RECT_OFFSET;};} - - -return setResponder;}, - -onResponderGrant:(function(e,dispatchID){ -this.touchableHandleResponderGrant(e,dispatchID); -this.props.onResponderGrant&& -this.props.onResponderGrant.apply(this,arguments);}). -bind(this), -onResponderMove:(function(e){ -this.touchableHandleResponderMove(e); -this.props.onResponderMove&& -this.props.onResponderMove.apply(this,arguments);}). -bind(this), -onResponderRelease:(function(e){ -this.touchableHandleResponderRelease(e); -this.props.onResponderRelease&& -this.props.onResponderRelease.apply(this,arguments);}). -bind(this), -onResponderTerminate:(function(e){ -this.touchableHandleResponderTerminate(e); -this.props.onResponderTerminate&& -this.props.onResponderTerminate.apply(this,arguments);}). -bind(this), -onResponderTerminationRequest:(function(){ - - -var allowTermination=this.touchableHandleResponderTerminationRequest(); -if(allowTermination&&this.props.onResponderTerminationRequest){ -allowTermination=this.props.onResponderTerminationRequest.apply(this,arguments);} - -return allowTermination;}). -bind(this)};} - - -newProps=babelHelpers.extends({}, -this.props, -this._handlers,{ -isHighlighted:this.state.isHighlighted});} - - -if(this.context.isInAParentText){ -return React.createElement(RCTVirtualText,newProps);}else -{ -return React.createElement(RCTText,newProps);}}}); - - - - - - - - - - - -var PRESS_RECT_OFFSET={top:20,left:20,right:20,bottom:30}; - -var RCTText=createReactNativeComponentClass(viewConfig); -var RCTVirtualText=RCTText; - -if(Platform.OS==='android'){ -RCTVirtualText=createReactNativeComponentClass({ -validAttributes:merge(ReactNativeViewAttributes.UIView,{ -isHighlighted:true}), - -uiViewClassName:'RCTVirtualText'});} - - - -module.exports=Text; -}); -__d('Touchable',function(global, require, module, exports) { 'use strict'; - - - - - -var BoundingDimensions=require('BoundingDimensions'); -var Position=require('Position'); -var TouchEventUtils=require('TouchEventUtils'); - -var keyMirror=require('keyMirror'); -var queryLayoutByID=require('queryLayoutByID'); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var States=keyMirror({ -NOT_RESPONDER:null, -RESPONDER_INACTIVE_PRESS_IN:null, -RESPONDER_INACTIVE_PRESS_OUT:null, -RESPONDER_ACTIVE_PRESS_IN:null, -RESPONDER_ACTIVE_PRESS_OUT:null, -RESPONDER_ACTIVE_LONG_PRESS_IN:null, -RESPONDER_ACTIVE_LONG_PRESS_OUT:null, -ERROR:null}); - - - - - -var IsActive={ -RESPONDER_ACTIVE_PRESS_OUT:true, -RESPONDER_ACTIVE_PRESS_IN:true}; - - - - - - -var IsPressingIn={ -RESPONDER_INACTIVE_PRESS_IN:true, -RESPONDER_ACTIVE_PRESS_IN:true, -RESPONDER_ACTIVE_LONG_PRESS_IN:true}; - - -var IsLongPressingIn={ -RESPONDER_ACTIVE_LONG_PRESS_IN:true}; - - - - - -var Signals=keyMirror({ -DELAY:null, -RESPONDER_GRANT:null, -RESPONDER_RELEASE:null, -RESPONDER_TERMINATED:null, -ENTER_PRESS_RECT:null, -LEAVE_PRESS_RECT:null, -LONG_PRESS_DETECTED:null}); - - - - - -var Transitions={ -NOT_RESPONDER:{ -DELAY:States.ERROR, -RESPONDER_GRANT:States.RESPONDER_INACTIVE_PRESS_IN, -RESPONDER_RELEASE:States.ERROR, -RESPONDER_TERMINATED:States.ERROR, -ENTER_PRESS_RECT:States.ERROR, -LEAVE_PRESS_RECT:States.ERROR, -LONG_PRESS_DETECTED:States.ERROR}, - -RESPONDER_INACTIVE_PRESS_IN:{ -DELAY:States.RESPONDER_ACTIVE_PRESS_IN, -RESPONDER_GRANT:States.ERROR, -RESPONDER_RELEASE:States.NOT_RESPONDER, -RESPONDER_TERMINATED:States.NOT_RESPONDER, -ENTER_PRESS_RECT:States.RESPONDER_INACTIVE_PRESS_IN, -LEAVE_PRESS_RECT:States.RESPONDER_INACTIVE_PRESS_OUT, -LONG_PRESS_DETECTED:States.ERROR}, - -RESPONDER_INACTIVE_PRESS_OUT:{ -DELAY:States.RESPONDER_ACTIVE_PRESS_OUT, -RESPONDER_GRANT:States.ERROR, -RESPONDER_RELEASE:States.NOT_RESPONDER, -RESPONDER_TERMINATED:States.NOT_RESPONDER, -ENTER_PRESS_RECT:States.RESPONDER_INACTIVE_PRESS_IN, -LEAVE_PRESS_RECT:States.RESPONDER_INACTIVE_PRESS_OUT, -LONG_PRESS_DETECTED:States.ERROR}, - -RESPONDER_ACTIVE_PRESS_IN:{ -DELAY:States.ERROR, -RESPONDER_GRANT:States.ERROR, -RESPONDER_RELEASE:States.NOT_RESPONDER, -RESPONDER_TERMINATED:States.NOT_RESPONDER, -ENTER_PRESS_RECT:States.RESPONDER_ACTIVE_PRESS_IN, -LEAVE_PRESS_RECT:States.RESPONDER_ACTIVE_PRESS_OUT, -LONG_PRESS_DETECTED:States.RESPONDER_ACTIVE_LONG_PRESS_IN}, - -RESPONDER_ACTIVE_PRESS_OUT:{ -DELAY:States.ERROR, -RESPONDER_GRANT:States.ERROR, -RESPONDER_RELEASE:States.NOT_RESPONDER, -RESPONDER_TERMINATED:States.NOT_RESPONDER, -ENTER_PRESS_RECT:States.RESPONDER_ACTIVE_PRESS_IN, -LEAVE_PRESS_RECT:States.RESPONDER_ACTIVE_PRESS_OUT, -LONG_PRESS_DETECTED:States.ERROR}, - -RESPONDER_ACTIVE_LONG_PRESS_IN:{ -DELAY:States.ERROR, -RESPONDER_GRANT:States.ERROR, -RESPONDER_RELEASE:States.NOT_RESPONDER, -RESPONDER_TERMINATED:States.NOT_RESPONDER, -ENTER_PRESS_RECT:States.RESPONDER_ACTIVE_LONG_PRESS_IN, -LEAVE_PRESS_RECT:States.RESPONDER_ACTIVE_LONG_PRESS_OUT, -LONG_PRESS_DETECTED:States.RESPONDER_ACTIVE_LONG_PRESS_IN}, - -RESPONDER_ACTIVE_LONG_PRESS_OUT:{ -DELAY:States.ERROR, -RESPONDER_GRANT:States.ERROR, -RESPONDER_RELEASE:States.NOT_RESPONDER, -RESPONDER_TERMINATED:States.NOT_RESPONDER, -ENTER_PRESS_RECT:States.RESPONDER_ACTIVE_LONG_PRESS_IN, -LEAVE_PRESS_RECT:States.RESPONDER_ACTIVE_LONG_PRESS_OUT, -LONG_PRESS_DETECTED:States.ERROR}, - -error:{ -DELAY:States.NOT_RESPONDER, -RESPONDER_GRANT:States.RESPONDER_INACTIVE_PRESS_IN, -RESPONDER_RELEASE:States.NOT_RESPONDER, -RESPONDER_TERMINATED:States.NOT_RESPONDER, -ENTER_PRESS_RECT:States.NOT_RESPONDER, -LEAVE_PRESS_RECT:States.NOT_RESPONDER, -LONG_PRESS_DETECTED:States.NOT_RESPONDER}}; - - - - - - -var HIGHLIGHT_DELAY_MS=130; - -var PRESS_EXPAND_PX=20; - -var LONG_PRESS_THRESHOLD=500; - -var LONG_PRESS_DELAY_MS=LONG_PRESS_THRESHOLD-HIGHLIGHT_DELAY_MS; - -var LONG_PRESS_ALLOWED_MOVEMENT=10; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var TouchableMixin={ - - - -componentWillUnmount:function(){ -this.touchableDelayTimeout&&clearTimeout(this.touchableDelayTimeout); -this.longPressDelayTimeout&&clearTimeout(this.longPressDelayTimeout); -this.pressOutDelayTimeout&&clearTimeout(this.pressOutDelayTimeout);}, - - - - - - - - - -touchableGetInitialState:function(){ -return { -touchable:{touchState:undefined,responderID:null}};}, - - - - - - - -touchableHandleResponderTerminationRequest:function(){ -return !this.props.rejectResponderTermination;}, - - - - - -touchableHandleStartShouldSetResponder:function(){ -return true;}, - - - - - -touchableLongPressCancelsPress:function(){ -return true;}, - - - - - - - - -touchableHandleResponderGrant:function(e,dispatchID){ - - - -e.persist(); - -this.pressOutDelayTimeout&&clearTimeout(this.pressOutDelayTimeout); -this.pressOutDelayTimeout=null; - -this.state.touchable.touchState=States.NOT_RESPONDER; -this.state.touchable.responderID=dispatchID; -this._receiveSignal(Signals.RESPONDER_GRANT,e); -var delayMS= -this.touchableGetHighlightDelayMS!==undefined? -Math.max(this.touchableGetHighlightDelayMS(),0):HIGHLIGHT_DELAY_MS; -delayMS=isNaN(delayMS)?HIGHLIGHT_DELAY_MS:delayMS; -if(delayMS!==0){ -this.touchableDelayTimeout=setTimeout( -this._handleDelay.bind(this,e), -delayMS);}else - -{ -this._handleDelay(e);} - - -var longDelayMS= -this.touchableGetLongPressDelayMS!==undefined? -Math.max(this.touchableGetLongPressDelayMS(),10):LONG_PRESS_DELAY_MS; -longDelayMS=isNaN(longDelayMS)?LONG_PRESS_DELAY_MS:longDelayMS; -this.longPressDelayTimeout=setTimeout( -this._handleLongDelay.bind(this,e), -longDelayMS+delayMS);}, - - - - - - -touchableHandleResponderRelease:function(e){ -this._receiveSignal(Signals.RESPONDER_RELEASE,e);}, - - - - - -touchableHandleResponderTerminate:function(e){ -this._receiveSignal(Signals.RESPONDER_TERMINATED,e);}, - - - - - -touchableHandleResponderMove:function(e){ - - -if(this.state.touchable.touchState===States.RESPONDER_INACTIVE_PRESS_IN){ -return;} - - - -if(!this.state.touchable.positionOnActivate){ -return;} - - -var positionOnActivate=this.state.touchable.positionOnActivate; -var dimensionsOnActivate=this.state.touchable.dimensionsOnActivate; -var pressRectOffset=this.touchableGetPressRectOffset? -this.touchableGetPressRectOffset():{ -left:PRESS_EXPAND_PX, -right:PRESS_EXPAND_PX, -top:PRESS_EXPAND_PX, -bottom:PRESS_EXPAND_PX}; - - -var pressExpandLeft=pressRectOffset.left; -var pressExpandTop=pressRectOffset.top; -var pressExpandRight=pressRectOffset.right; -var pressExpandBottom=pressRectOffset.bottom; - -var touch=TouchEventUtils.extractSingleTouch(e.nativeEvent); -var pageX=touch&&touch.pageX; -var pageY=touch&&touch.pageY; - -if(this.pressInLocation){ -var movedDistance=this._getDistanceBetweenPoints(pageX,pageY,this.pressInLocation.pageX,this.pressInLocation.pageY); -if(movedDistance>LONG_PRESS_ALLOWED_MOVEMENT){ -this._cancelLongPressDelayTimeout();}} - - - -var isTouchWithinActive= -pageX>positionOnActivate.left-pressExpandLeft&& -pageY>positionOnActivate.top-pressExpandTop&& -pageX< -positionOnActivate.left+ -dimensionsOnActivate.width+ -pressExpandRight&& -pageY< -positionOnActivate.top+ -dimensionsOnActivate.height+ -pressExpandBottom; -if(isTouchWithinActive){ -this._receiveSignal(Signals.ENTER_PRESS_RECT,e); -var curState=this.state.touchable.touchState; -if(curState===States.RESPONDER_INACTIVE_PRESS_IN){ - -this._cancelLongPressDelayTimeout();}}else - -{ -this._cancelLongPressDelayTimeout(); -this._receiveSignal(Signals.LEAVE_PRESS_RECT,e);}}, - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -_remeasureMetricsOnActivation:function(){ -queryLayoutByID( -this.state.touchable.responderID, -null, -this._handleQueryLayout);}, - - - -_handleQueryLayout:function(l,t,w,h,globalX,globalY){ -this.state.touchable.positionOnActivate&& -Position.release(this.state.touchable.positionOnActivate); -this.state.touchable.dimensionsOnActivate&& -BoundingDimensions.release(this.state.touchable.dimensionsOnActivate); -this.state.touchable.positionOnActivate=Position.getPooled(globalX,globalY); -this.state.touchable.dimensionsOnActivate=BoundingDimensions.getPooled(w,h);}, - - -_handleDelay:function(e){ -this.touchableDelayTimeout=null; -this._receiveSignal(Signals.DELAY,e);}, - - -_handleLongDelay:function(e){ -this.longPressDelayTimeout=null; -var curState=this.state.touchable.touchState; -if(curState!==States.RESPONDER_ACTIVE_PRESS_IN&& -curState!==States.RESPONDER_ACTIVE_LONG_PRESS_IN){ -console.error('Attempted to transition from state `'+curState+'` to `'+ -States.RESPONDER_ACTIVE_LONG_PRESS_IN+'`, which is not supported. This is '+ -'most likely due to `Touchable.longPressDelayTimeout` not being cancelled.');}else -{ -this._receiveSignal(Signals.LONG_PRESS_DETECTED,e);}}, - - - - - - - - - - - -_receiveSignal:function(signal,e){ -var curState=this.state.touchable.touchState; -var nextState=Transitions[curState]&&Transitions[curState][signal]; -if(!nextState){ -throw new Error( -'Unrecognized signal `'+signal+'` or state `'+curState+ -'` for Touchable responder `'+this.state.touchable.responderID+'`');} - - -if(nextState===States.ERROR){ -throw new Error( -'Touchable cannot transition from `'+curState+'` to `'+signal+ -'` for responder `'+this.state.touchable.responderID+'`');} - - -if(curState!==nextState){ -this._performSideEffectsForTransition(curState,nextState,signal,e); -this.state.touchable.touchState=nextState;}}, - - - -_cancelLongPressDelayTimeout:function(){ -this.longPressDelayTimeout&&clearTimeout(this.longPressDelayTimeout); -this.longPressDelayTimeout=null;}, - - -_isHighlight:function(state){ -return state===States.RESPONDER_ACTIVE_PRESS_IN|| -state===States.RESPONDER_ACTIVE_LONG_PRESS_IN;}, - - -_savePressInLocation:function(e){ -var touch=TouchEventUtils.extractSingleTouch(e.nativeEvent); -var pageX=touch&&touch.pageX; -var pageY=touch&&touch.pageY; -this.pressInLocation={pageX:pageX,pageY:pageY};}, - - -_getDistanceBetweenPoints:function(aX,aY,bX,bY){ -var deltaX=aX-bX; -var deltaY=aY-bY; -return Math.sqrt(deltaX*deltaX+deltaY*deltaY);}, - - - - - - - - - - - - - -_performSideEffectsForTransition:function(curState,nextState,signal,e){ -var curIsHighlight=this._isHighlight(curState); -var newIsHighlight=this._isHighlight(nextState); - -var isFinalSignal= -signal===Signals.RESPONDER_TERMINATED|| -signal===Signals.RESPONDER_RELEASE; - -if(isFinalSignal){ -this._cancelLongPressDelayTimeout();} - - -if(!IsActive[curState]&&IsActive[nextState]){ -this._remeasureMetricsOnActivation();} - - -if(IsPressingIn[curState]&&signal===Signals.LONG_PRESS_DETECTED){ -this.touchableHandleLongPress&&this.touchableHandleLongPress(e);} - - -if(newIsHighlight&&!curIsHighlight){ -this._savePressInLocation(e); -this.touchableHandleActivePressIn&&this.touchableHandleActivePressIn(e);}else -if(!newIsHighlight&&curIsHighlight&&this.touchableHandleActivePressOut){ -if(this.touchableGetPressOutDelayMS&&this.touchableGetPressOutDelayMS()){ -this.pressOutDelayTimeout=this.setTimeout(function(){ -this.touchableHandleActivePressOut(e);}, -this.touchableGetPressOutDelayMS());}else -{ -this.touchableHandleActivePressOut(e);}} - - - -if(IsPressingIn[curState]&&signal===Signals.RESPONDER_RELEASE){ -var hasLongPressHandler=!!this.props.onLongPress; -var pressIsLongButStillCallOnPress= -IsLongPressingIn[curState]&&( -!hasLongPressHandler|| -!this.touchableLongPressCancelsPress()); - - -var shouldInvokePress=!IsLongPressingIn[curState]||pressIsLongButStillCallOnPress; -if(shouldInvokePress&&this.touchableHandlePress){ -this.touchableHandlePress(e);}} - - - -this.touchableDelayTimeout&&clearTimeout(this.touchableDelayTimeout); -this.touchableDelayTimeout=null;}}; - - - - -var Touchable={ -Mixin:TouchableMixin}; - - -module.exports=Touchable; -}); -__d('BoundingDimensions',function(global, require, module, exports) { 'use strict'; - - - - - -var PooledClass=require('PooledClass'); - -var twoArgumentPooler=PooledClass.twoArgumentPooler; - - - - - - - - -function BoundingDimensions(width,height){ -this.width=width; -this.height=height;} - - -BoundingDimensions.prototype.destructor=function(){ -this.width=null; -this.height=null;}; - - - - - - -BoundingDimensions.getPooledFromElement=function(element){ -return BoundingDimensions.getPooled( -element.offsetWidth, -element.offsetHeight);}; - - - -PooledClass.addPoolingTo(BoundingDimensions,twoArgumentPooler); - -module.exports=BoundingDimensions; -}); -__d('Position',function(global, require, module, exports) { 'use strict'; - - - - - -var PooledClass=require('PooledClass'); - -var twoArgumentPooler=PooledClass.twoArgumentPooler; - - - - - - - - - -function Position(left,top){ -this.left=left; -this.top=top;} - - -Position.prototype.destructor=function(){ -this.left=null; -this.top=null;}; - - -PooledClass.addPoolingTo(Position,twoArgumentPooler); - -module.exports=Position; -}); -__d('TouchEventUtils',function(global, require, module, exports) { var - - - - - - - - - - -TouchEventUtils={ - - - - - - - - - - -extractSingleTouch:function(nativeEvent){ -var touches=nativeEvent.touches; -var changedTouches=nativeEvent.changedTouches; -var hasTouches=touches&&touches.length>0; -var hasChangedTouches=changedTouches&&changedTouches.length>0; - -return !hasTouches&&hasChangedTouches?changedTouches[0]: -hasTouches?touches[0]: -nativeEvent;}}; - - - -module.exports=TouchEventUtils; -}); -__d('queryLayoutByID',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactNativeTagHandles=require('ReactNativeTagHandles'); -var UIManager=require('UIManager'); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var queryLayoutByID=function( -rootNodeID, -onError, -onSuccess) -{ - -UIManager.measure( -ReactNativeTagHandles.rootNodeIDToTag[rootNodeID], -onSuccess);}; - - - -module.exports=queryLayoutByID; -}); -__d('TextInput',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var DocumentSelectionState=require('DocumentSelectionState'); -var EventEmitter=require('EventEmitter'); -var NativeMethodsMixin=require('NativeMethodsMixin'); -var Platform=require('Platform'); -var PropTypes=require('ReactPropTypes'); -var React=require('React'); -var ReactChildren=require('ReactChildren'); -var StyleSheet=require('StyleSheet'); -var Text=require('Text'); -var TextInputState=require('TextInputState'); -var TimerMixin=require('react-timer-mixin/TimerMixin.js'); -var TouchableWithoutFeedback=require('TouchableWithoutFeedback'); -var UIManager=require('UIManager'); -var View=require('View'); - -var createReactNativeComponentClass=require('createReactNativeComponentClass'); -var emptyFunction=require('emptyFunction'); -var invariant=require('invariant'); -var requireNativeComponent=require('requireNativeComponent'); - -var onlyMultiline={ -onTextInput:true, -children:true}; - - -var notMultiline={}; - - - -if(Platform.OS==='android'){ -var AndroidTextInput=requireNativeComponent('AndroidTextInput',null);}else -if(Platform.OS==='ios'){ -var RCTTextView=requireNativeComponent('RCTTextView',null); -var RCTTextField=requireNativeComponent('RCTTextField',null);} - - - - - - - - - - - - - - - - - - - - - - - - - -var TextInput=React.createClass({displayName:'TextInput', -statics:{ - -State:TextInputState}, - - -propTypes:babelHelpers.extends({}, -View.propTypes,{ - - - - - - - - -autoCapitalize:PropTypes.oneOf([ -'none', -'sentences', -'words', -'characters']), - - - - -autoCorrect:PropTypes.bool, - - - - -autoFocus:PropTypes.bool, - - - - -textAlign:PropTypes.oneOf([ -'start', -'center', -'end']), - - - - - -textAlignVertical:PropTypes.oneOf([ -'top', -'center', -'bottom']), - - - - -editable:PropTypes.bool, - - - - - - - - -keyboardType:PropTypes.oneOf([ - -'default', -'numeric', -'email-address', - -'ascii-capable', -'numbers-and-punctuation', -'url', -'number-pad', -'phone-pad', -'name-phone-pad', -'decimal-pad', -'twitter', -'web-search']), - - - - - -keyboardAppearance:PropTypes.oneOf([ -'default', -'light', -'dark']), - - - - - -returnKeyType:PropTypes.oneOf([ -'default', -'go', -'google', -'join', -'next', -'route', -'search', -'send', -'yahoo', -'done', -'emergency-call']), - - - - - -maxLength:PropTypes.number, - - - - - -numberOfLines:PropTypes.number, - - - - - -enablesReturnKeyAutomatically:PropTypes.bool, - - - - -multiline:PropTypes.bool, - - - -onBlur:PropTypes.func, - - - -onFocus:PropTypes.func, - - - -onChange:PropTypes.func, - - - - -onChangeText:PropTypes.func, - - - -onEndEditing:PropTypes.func, - - - - -onSubmitEditing:PropTypes.func, - - - - - - -onKeyPress:PropTypes.func, - - - -onLayout:PropTypes.func, - - - -placeholder:PropTypes.string, - - - -placeholderTextColor:PropTypes.string, - - - - -secureTextEntry:PropTypes.bool, - - - - - -selectionState:PropTypes.instanceOf(DocumentSelectionState), - - - - - - - - - -value:PropTypes.string, - - - - - -defaultValue:PropTypes.string, - - - - -clearButtonMode:PropTypes.oneOf([ -'never', -'while-editing', -'unless-editing', -'always']), - - - - - -clearTextOnFocus:PropTypes.bool, - - - - -selectTextOnFocus:PropTypes.bool, - - - - - - - - -blurOnSubmit:PropTypes.bool, - - - -style:Text.propTypes.style, - - - -testID:PropTypes.string, - - - - -underlineColorAndroid:PropTypes.string}), - - - - - - -mixins:[NativeMethodsMixin,TimerMixin], - -viewConfig: -Platform.OS==='ios'&&RCTTextField? -RCTTextField.viewConfig: -Platform.OS==='android'&&AndroidTextInput? -AndroidTextInput.viewConfig: -{}, - -isFocused:function(){ -return TextInputState.currentlyFocusedField()=== -React.findNodeHandle(this.refs.input);}, - - -getInitialState:function(){ -return { -mostRecentEventCount:0};}, - - - -contextTypes:{ -onFocusRequested:React.PropTypes.func, -focusEmitter:React.PropTypes.instanceOf(EventEmitter)}, - - -_focusSubscription:undefined, - -componentDidMount:function(){var _this=this; -if(!this.context.focusEmitter){ -if(this.props.autoFocus){ -this.requestAnimationFrame(this.focus);} - -return;} - -this._focusSubscription=this.context.focusEmitter.addListener( -'focus', -function(el){ -if(_this===el){ -_this.requestAnimationFrame(_this.focus);}else -if(_this.isFocused()){ -_this.blur();}}); - - - -if(this.props.autoFocus){ -this.context.onFocusRequested(this);}}, - - - -componentWillUnmount:function(){ -this._focusSubscription&&this._focusSubscription.remove(); -if(this.isFocused()){ -this.blur();}}, - - - -getChildContext:function(){ -return {isInAParentText:true};}, - - -childContextTypes:{ -isInAParentText:React.PropTypes.bool}, - - -clear:function(){ -this.setNativeProps({text:''});}, - - -render:function(){ -if(Platform.OS==='ios'){ -return this._renderIOS();}else -if(Platform.OS==='android'){ -return this._renderAndroid();}}, - - - -_getText:function(){ -return typeof this.props.value==='string'? -this.props.value: -this.props.defaultValue;}, - - -_renderIOS:function(){var _this2=this; -var textContainer; - -var onSelectionChange; -if(this.props.selectionState||this.props.onSelectionChange){ -onSelectionChange=function(event){ -if(_this2.props.selectionState){ -var selection=event.nativeEvent.selection; -_this2.props.selectionState.update(selection.start,selection.end);} - -_this2.props.onSelectionChange&&_this2.props.onSelectionChange(event);};} - - - -var props=babelHelpers.extends({},this.props); -props.style=[styles.input,this.props.style]; -if(!props.multiline){ -for(var propKey in onlyMultiline){ -if(props[propKey]){ -throw new Error( -'TextInput prop `'+propKey+'` is only supported with multiline.');}} - - - -textContainer= -React.createElement(RCTTextField,babelHelpers.extends({ -ref:'input'}, -props,{ -onFocus:this._onFocus, -onBlur:this._onBlur, -onChange:this._onChange, -onSelectionChange:onSelectionChange, -onSelectionChangeShouldSetResponder:emptyFunction.thatReturnsTrue, -text:this._getText(), -mostRecentEventCount:this.state.mostRecentEventCount}));}else - -{ -for(var propKey in notMultiline){ -if(props[propKey]){ -throw new Error( -'TextInput prop `'+propKey+'` cannot be used with multiline.');}} - - - - -var children=props.children; -var childCount=0; -ReactChildren.forEach(children,function(){return ++childCount;}); -invariant( -!(props.value&&childCount), -'Cannot specify both value and children.'); - -if(childCount>1){ -children=React.createElement(Text,null,children);} - -if(props.inputView){ -children=[children,props.inputView];} - -textContainer= -React.createElement(RCTTextView,babelHelpers.extends({ -ref:'input'}, -props,{ -children:children, -mostRecentEventCount:this.state.mostRecentEventCount, -onFocus:this._onFocus, -onBlur:this._onBlur, -onChange:this._onChange, -onSelectionChange:onSelectionChange, -onTextInput:this._onTextInput, -onSelectionChangeShouldSetResponder:emptyFunction.thatReturnsTrue, -text:this._getText()}));} - - - -return ( -React.createElement(TouchableWithoutFeedback,{ -onPress:this._onPress, -rejectResponderTermination:true, -testID:props.testID}, -textContainer));}, - - - - -_renderAndroid:function(){ -var autoCapitalize=UIManager.UIText.AutocapitalizationType[this.props.autoCapitalize]; -var textAlign= -UIManager.AndroidTextInput.Constants.TextAlign[this.props.textAlign]; -var textAlignVertical= -UIManager.AndroidTextInput.Constants.TextAlignVertical[this.props.textAlignVertical]; -var children=this.props.children; -var childCount=0; -ReactChildren.forEach(children,function(){return ++childCount;}); -invariant( -!(this.props.value&&childCount), -'Cannot specify both value and children.'); - -if(childCount>1){ -children=React.createElement(Text,null,children);} - -var textContainer= -React.createElement(AndroidTextInput,{ -ref:'input', -style:[this.props.style], -autoCapitalize:autoCapitalize, -autoCorrect:this.props.autoCorrect, -textAlign:textAlign, -textAlignVertical:textAlignVertical, -keyboardType:this.props.keyboardType, -mostRecentEventCount:this.state.mostRecentEventCount, -multiline:this.props.multiline, -numberOfLines:this.props.numberOfLines, -maxLength:this.props.maxLength, -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:children, -editable:this.props.editable}); - - -return ( -React.createElement(TouchableWithoutFeedback,{ -onPress:this._onPress, -testID:this.props.testID}, -textContainer));}, - - - - -_onFocus:function(event){ -if(this.props.onFocus){ -this.props.onFocus(event);}}, - - - -_onPress:function(event){ -if(this.props.editable||this.props.editable===undefined){ -this.focus();}}, - - - -_onChange:function(event){var _this3=this; -if(Platform.OS==='android'){ - -this.refs.input.setNativeProps({ -mostRecentEventCount:event.nativeEvent.eventCount});} - - -var text=event.nativeEvent.text; -var eventCount=event.nativeEvent.eventCount; -this.props.onChange&&this.props.onChange(event); -this.props.onChangeText&&this.props.onChangeText(text); -this.setState({mostRecentEventCount:eventCount},function(){ - -if(Platform.OS==='android'){ - - - -if(text!==_this3.props.value&&typeof _this3.props.value==='string'){ -_this3.refs.input.setNativeProps({ -text:_this3.props.value});}}});}, - - - - - - -_onBlur:function(event){ -this.blur(); -if(this.props.onBlur){ -this.props.onBlur(event);}}, - - - -_onTextInput:function(event){ -this.props.onTextInput&&this.props.onTextInput(event);}}); - - - -var styles=StyleSheet.create({ -input:{ -alignSelf:'stretch'}}); - - - -module.exports=TextInput; -}); -__d('DocumentSelectionState',function(global, require, module, exports) { var - - - - - - - - - - - - - - - - - -mixInEventEmitter=require('mixInEventEmitter');var - - - - - - - - - - -DocumentSelectionState=(function(){ - - - - -function DocumentSelectionState(anchor,focus){babelHelpers.classCallCheck(this,DocumentSelectionState); -this._anchorOffset=anchor; -this._focusOffset=focus; -this._hasFocus=false;}babelHelpers.createClass(DocumentSelectionState,[{key:'update',value:function update( - - - - - - - - - -anchor,focus){ -if(this._anchorOffset!==anchor||this._focusOffset!==focus){ -this._anchorOffset=anchor; -this._focusOffset=focus; -this.emit('update');}}},{key:'constrainLength',value:function constrainLength( - - - - - - - - - -maxLength){ -this.update( -Math.min(this._anchorOffset,maxLength), -Math.min(this._focusOffset,maxLength));}},{key:'focus',value:function focus() - - - -{ -if(!this._hasFocus){ -this._hasFocus=true; -this.emit('focus');}}},{key:'blur',value:function blur() - - - -{ -if(this._hasFocus){ -this._hasFocus=false; -this.emit('blur');}}},{key:'hasFocus',value:function hasFocus() - - - - - - -{ -return this._hasFocus;}},{key:'isCollapsed',value:function isCollapsed() - - - - - -{ -return this._anchorOffset===this._focusOffset;}},{key:'isBackward',value:function isBackward() - - - - - -{ -return this._anchorOffset>this._focusOffset;}},{key:'getAnchorOffset',value:function getAnchorOffset() - - - - - -{ -return this._hasFocus?this._anchorOffset:null;}},{key:'getFocusOffset',value:function getFocusOffset() - - - - - -{ -return this._hasFocus?this._focusOffset:null;}},{key:'getStartOffset',value:function getStartOffset() - - - - - -{ -return ( -this._hasFocus?Math.min(this._anchorOffset,this._focusOffset):null);}},{key:'getEndOffset',value:function getEndOffset() - - - - - - -{ -return ( -this._hasFocus?Math.max(this._anchorOffset,this._focusOffset):null);}},{key:'overlaps',value:function overlaps( - - - - - - - - -start,end){ -return ( -this.hasFocus()&& -this.getStartOffset()<=end&&start<=this.getEndOffset());}}]);return DocumentSelectionState;})(); - - - - -mixInEventEmitter(DocumentSelectionState,{ -'blur':true, -'focus':true, -'update':true}); - - -module.exports=DocumentSelectionState; -}); -__d('mixInEventEmitter',function(global, require, module, exports) { var - - - - - - - - - - - - - - - - -EventEmitter=require('EventEmitter'); -var EventEmitterWithHolding=require('EventEmitterWithHolding'); -var EventHolder=require('EventHolder'); -var EventValidator=require('EventValidator'); - -var copyProperties=require('copyProperties'); -var invariant=require('invariant'); -var keyOf=require('keyOf'); - -var TYPES_KEY=keyOf({__types:true}); - - - - - - - - - - - - - - - - - - - - - - -function mixInEventEmitter(klass,types){ -invariant(types,'Must supply set of valid event types'); -invariant(!this.__eventEmitter,'An active emitter is already mixed in'); - - - -var target=klass.prototype||klass; - -var ctor=klass.constructor; -if(ctor){ -invariant( -ctor===Object||ctor===Function, -'Mix EventEmitter into a class, not an instance');} - - - - - -if(target.hasOwnProperty(TYPES_KEY)){ -copyProperties(target.__types,types);}else -if(target.__types){ -target.__types=copyProperties({},target.__types,types);}else -{ -target.__types=types;} - -copyProperties(target,EventEmitterMixin);} - - -var EventEmitterMixin={ -emit:function(eventType,a,b,c,d,e,_){ -return this.__getEventEmitter().emit(eventType,a,b,c,d,e,_);}, - - -emitAndHold:function(eventType,a,b,c,d,e,_){ -return this.__getEventEmitter().emitAndHold(eventType,a,b,c,d,e,_);}, - - -addListener:function(eventType,listener,context){ -return this.__getEventEmitter().addListener(eventType,listener,context);}, - - -once:function(eventType,listener,context){ -return this.__getEventEmitter().once(eventType,listener,context);}, - - -addRetroactiveListener:function(eventType,listener,context){ -return this.__getEventEmitter().addRetroactiveListener( -eventType, -listener, -context);}, - - - -addListenerMap:function(listenerMap,context){ -return this.__getEventEmitter().addListenerMap(listenerMap,context);}, - - -addRetroactiveListenerMap:function(listenerMap,context){ -return this.__getEventEmitter().addListenerMap(listenerMap,context);}, - - -removeAllListeners:function(){ -this.__getEventEmitter().removeAllListeners();}, - - -removeCurrentListener:function(){ -this.__getEventEmitter().removeCurrentListener();}, - - -releaseHeldEventType:function(eventType){ -this.__getEventEmitter().releaseHeldEventType(eventType);}, - - -__getEventEmitter:function(){ -if(!this.__eventEmitter){ -var emitter=new EventEmitter(); -emitter=EventValidator.addValidation(emitter,this.__types); - -var holder=new EventHolder(); -this.__eventEmitter=new EventEmitterWithHolding(emitter,holder);} - -return this.__eventEmitter;}}; - - - -module.exports=mixInEventEmitter; -}); -__d('EventEmitterWithHolding',function(global, require, module, exports) { 'use strict';var - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -EventEmitterWithHolding=(function(){ - - - - - - - -function EventEmitterWithHolding(emitter,holder){babelHelpers.classCallCheck(this,EventEmitterWithHolding); -this._emitter=emitter; -this._eventHolder=holder; -this._currentEventToken=null; -this._emittingHeldEvents=false;}babelHelpers.createClass(EventEmitterWithHolding,[{key:'addListener',value:function addListener( - - - - - -eventType,listener,context){ -return this._emitter.addListener(eventType,listener,context);}},{key:'once',value:function once( - - - - - -eventType,listener,context){ -return this._emitter.once(eventType,listener,context);}},{key:'addRetroactiveListener',value:function addRetroactiveListener( - - - - - - - - - - - - - - - - - - - - - - - -eventType,listener,context){ -var subscription=this._emitter.addListener(eventType,listener,context); - -this._emittingHeldEvents=true; -this._eventHolder.emitToListener(eventType,listener,context); -this._emittingHeldEvents=false; - -return subscription;}},{key:'removeAllListeners',value:function removeAllListeners( - - - - - -eventType){ -this._emitter.removeAllListeners(eventType);}},{key:'removeCurrentListener',value:function removeCurrentListener() - - - - - -{ -this._emitter.removeCurrentListener();}},{key:'listeners',value:function listeners( - - - - - -eventType){ -return this._emitter.listeners(eventType);}},{key:'emit',value:function emit( - - - - - -eventType,a,b,c,d,e,_){ -this._emitter.emit(eventType,a,b,c,d,e,_);}},{key:'emitAndHold',value:function emitAndHold( - - - - - - - - - - - - - - - - - -eventType,a,b,c,d,e,_){ -this._currentEventToken=this._eventHolder.holdEvent( -eventType, -a,b,c,d,e,_); - -this._emitter.emit(eventType,a,b,c,d,e,_); -this._currentEventToken=null;}},{key:'releaseCurrentEvent',value:function releaseCurrentEvent() - - - - - -{ -if(this._currentEventToken!==null){ -this._eventHolder.releaseEvent(this._currentEventToken);}else -if(this._emittingHeldEvents){ -this._eventHolder.releaseCurrentEvent();}}},{key:'releaseHeldEventType',value:function releaseHeldEventType( - - - - - - - -eventType){ -this._eventHolder.releaseEventType(eventType);}}]);return EventEmitterWithHolding;})(); - - - -module.exports=EventEmitterWithHolding; -}); -__d('EventHolder',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - -var invariant=require('invariant');var - -EventHolder=(function(){ -function EventHolder(){babelHelpers.classCallCheck(this,EventHolder); -this._heldEvents={}; -this._currentEventKey=null;}babelHelpers.createClass(EventHolder,[{key:'holdEvent',value:function holdEvent( - - - - - - - - - - - - - - - - - - - - - - - -eventType,a,b,c,d,e,_){ -this._heldEvents[eventType]=this._heldEvents[eventType]||[]; -var eventsOfType=this._heldEvents[eventType]; -var key={ -eventType:eventType, -index:eventsOfType.length}; - -eventsOfType.push([a,b,c,d,e,_]); -return key;}},{key:'emitToListener',value:function emitToListener( - - - - - - - - - - -eventType,listener,context){var _this=this; -var eventsOfType=this._heldEvents[eventType]; -if(!eventsOfType){ -return;} - -var origEventKey=this._currentEventKey; -eventsOfType.forEach(function(eventHeld,index){ -if(!eventHeld){ -return;} - -_this._currentEventKey={ -eventType:eventType, -index:index}; - -listener.apply(context,eventHeld);}); - -this._currentEventKey=origEventKey;}},{key:'releaseCurrentEvent',value:function releaseCurrentEvent() - - - - - - - - - - -{ -invariant( -this._currentEventKey!==null, -'Not in an emitting cycle; there is no current event'); - -this.releaseEvent(this._currentEventKey);}},{key:'releaseEvent',value:function releaseEvent( - - - - - - - - -token){ -delete this._heldEvents[token.eventType][token.index];}},{key:'releaseEventType',value:function releaseEventType( - - - - - - - -type){ -this._heldEvents[type]=[];}}]);return EventHolder;})(); - - - -module.exports=EventHolder; -}); -__d('EventValidator',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - -var copyProperties=require('copyProperties'); - - - - - - - - - - -var EventValidator={ - - - - - - - - - - -addValidation:function(emitter,types){ -var eventTypes=Object.keys(types); -var emitterWithValidation=Object.create(emitter); - -copyProperties(emitterWithValidation,{ -emit:function emit(type,a,b,c,d,e,_){ -assertAllowsEventType(type,eventTypes); -return emitter.emit.call(this,type,a,b,c,d,e,_);}}); - - - -return emitterWithValidation;}}; - - - -function assertAllowsEventType(type,allowedTypes){ -if(allowedTypes.indexOf(type)===-1){ -throw new TypeError(errorMessageFor(type,allowedTypes));}} - - - -function errorMessageFor(type,allowedTypes){ -var message='Unknown event type "'+type+'". '; -if(__DEV__){ -message+=recommendationFor(type,allowedTypes);} - -message+='Known event types: '+allowedTypes.join(', ')+'.'; -return message;} - - - -if(__DEV__){ -var recommendationFor=function(type,allowedTypes){ -var closestTypeRecommendation=closestTypeFor(type,allowedTypes); -if(isCloseEnough(closestTypeRecommendation,type)){ -return 'Did you mean "'+closestTypeRecommendation.type+'"? ';}else -{ -return '';}}; - - - -var closestTypeFor=function(type,allowedTypes){ -var typeRecommendations=allowedTypes.map( -typeRecommendationFor.bind(this,type)); - -return typeRecommendations.sort(recommendationSort)[0];}; - - -var typeRecommendationFor=function(type,recomendedType){ -return { -type:recomendedType, -distance:damerauLevenshteinDistance(type,recomendedType)};}; - - - -var recommendationSort=function(recommendationA,recommendationB){ -if(recommendationA.distancerecommendationB.distance){ -return 1;}else -{ -return 0;}}; - - - -var isCloseEnough=function(closestType,actualType){ -return closestType.distance/actualType.length<0.334;}; - - -var damerauLevenshteinDistance=function(a,b){ -var i,j; -var d=[]; - -for(i=0;i<=a.length;i++){ -d[i]=[i];} - - -for(j=1;j<=b.length;j++){ -d[0][j]=j;} - - -for(i=1;i<=a.length;i++){ -for(j=1;j<=b.length;j++){ -var cost=a.charAt(i-1)===b.charAt(j-1)?0:1; - -d[i][j]=Math.min( -d[i-1][j]+1, -d[i][j-1]+1, -d[i-1][j-1]+cost); - - -if(i>1&&j>1&& -a.charAt(i-1)==b.charAt(j-2)&& -a.charAt(i-2)==b.charAt(j-1)){ -d[i][j]=Math.min(d[i][j],d[i-2][j-2]+cost);}}} - - - - -return d[a.length][b.length];};} - - - -module.exports=EventValidator; -}); -__d('copyProperties',function(global, require, module, exports) { function - - - - - - - - - - - - - - - - - - - - - - - -copyProperties(obj,a,b,c,d,e,f){ -obj=obj||{}; - -if(__DEV__){ -if(f){ -throw new Error('Too many arguments passed to copyProperties');}} - - - -var args=[a,b,c,d,e]; -var ii=0,v; -while(args[ii]){ -v=args[ii++]; -for(var k in v){ -obj[k]=v[k];} - - - - -if(v.hasOwnProperty&&v.hasOwnProperty('toString')&& -typeof v.toString!='undefined'&&obj.toString!==v.toString){ -obj.toString=v.toString;}} - - - -return obj;} - - -module.exports=copyProperties; -}); -__d('TouchableWithoutFeedback',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var EdgeInsetsPropType=require('EdgeInsetsPropType'); -var React=require('React'); -var TimerMixin=require('react-timer-mixin/TimerMixin.js'); -var Touchable=require('Touchable'); -var View=require('View'); -var ensurePositiveDelayProps=require('ensurePositiveDelayProps'); -var invariant=require('invariant'); -var onlyChild=require('onlyChild'); - - - -var PRESS_RETENTION_OFFSET={top:20,left:20,right:20,bottom:30}; - - - - - - -var TouchableWithoutFeedback=React.createClass({displayName:'TouchableWithoutFeedback', -mixins:[TimerMixin,Touchable.Mixin], - -propTypes:{ -accessible:React.PropTypes.bool, -accessibilityComponentType:React.PropTypes.oneOf(View.AccessibilityComponentType), -accessibilityTraits:React.PropTypes.oneOfType([ -React.PropTypes.oneOf(View.AccessibilityTraits), -React.PropTypes.arrayOf(React.PropTypes.oneOf(View.AccessibilityTraits))]), - - - - - -onPress:React.PropTypes.func, -onPressIn:React.PropTypes.func, -onPressOut:React.PropTypes.func, - - - - - -onLayout:React.PropTypes.func, - -onLongPress:React.PropTypes.func, - - - - -delayPressIn:React.PropTypes.number, - - - -delayPressOut:React.PropTypes.number, - - - -delayLongPress:React.PropTypes.number, - - - - - - - -pressRetentionOffset:EdgeInsetsPropType}, - - -getInitialState:function(){ -return this.touchableGetInitialState();}, - - -componentDidMount:function(){ -ensurePositiveDelayProps(this.props);}, - - -componentWillReceiveProps:function(nextProps){ -ensurePositiveDelayProps(nextProps);}, - - - - - - -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 this.props.pressRetentionOffset||PRESS_RETENTION_OFFSET;}, - - -touchableGetHighlightDelayMS:function(){ -return this.props.delayPressIn||0;}, - - -touchableGetLongPressDelayMS:function(){ -return this.props.delayLongPress===0?0: -this.props.delayLongPress||500;}, - - -touchableGetPressOutDelayMS:function(){ -return this.props.delayPressOut||0;}, - - -render:function(){ - -return React.cloneElement(onlyChild(this.props.children),{ -accessible:this.props.accessible!==false, -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});}}); - - - - -module.exports=TouchableWithoutFeedback; -}); -__d('ensurePositiveDelayProps',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var invariant=require('invariant'); - -var ensurePositiveDelayProps=function(props){ -invariant( -!(props.delayPressIn<0||props.delayPressOut<0|| -props.delayLongPress<0), -'Touchable components cannot have negative delay properties');}; - - - -module.exports=ensurePositiveDelayProps; -}); -__d('ToastAndroid',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var warning=require('warning'); - -var ToastAndroid={ - -show:function( -message, -duration) -{ -warning(false,'Cannot use ToastAndroid on iOS.');}}; - - - - -module.exports=ToastAndroid; -}); -__d('ToolbarAndroid',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -module.exports=require('UnimplementedView'); -}); -__d('TouchableHighlight',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - -var NativeMethodsMixin=require('NativeMethodsMixin'); -var React=require('React'); -var ReactNativeViewAttributes=require('ReactNativeViewAttributes'); -var StyleSheet=require('StyleSheet'); -var TimerMixin=require('react-timer-mixin/TimerMixin.js'); -var Touchable=require('Touchable'); -var TouchableWithoutFeedback=require('TouchableWithoutFeedback'); -var View=require('View'); - -var ensureComponentIsNative=require('ensureComponentIsNative'); -var ensurePositiveDelayProps=require('ensurePositiveDelayProps'); -var keyOf=require('keyOf'); -var merge=require('merge'); -var onlyChild=require('onlyChild'); - - - -var DEFAULT_PROPS={ -activeOpacity:0.8, -underlayColor:'black'}; - - -var PRESS_RETENTION_OFFSET={top:20,left:20,right:20,bottom:30}; - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var TouchableHighlight=React.createClass({displayName:'TouchableHighlight', -propTypes:babelHelpers.extends({}, -TouchableWithoutFeedback.propTypes,{ - - - - -activeOpacity:React.PropTypes.number, - - - - -underlayColor:React.PropTypes.string, -style:View.propTypes.style, - - - -onShowUnderlay:React.PropTypes.func, - - - -onHideUnderlay:React.PropTypes.func}), - - -mixins:[NativeMethodsMixin,TimerMixin,Touchable.Mixin], - -getDefaultProps:function(){return DEFAULT_PROPS;}, - - -computeSyntheticState:function(props){ -return { -activeProps:{ -style:{ -opacity:props.activeOpacity}}, - - -activeUnderlayProps:{ -style:{ -backgroundColor:props.underlayColor}}, - - -underlayStyle:[ -INACTIVE_UNDERLAY_PROPS.style, -props.style]};}, - - - - -getInitialState:function(){ -return merge( -this.touchableGetInitialState(),this.computeSyntheticState(this.props));}, - - - -componentDidMount:function(){ -ensurePositiveDelayProps(this.props); -ensureComponentIsNative(this.refs[CHILD_REF]);}, - - -componentDidUpdate:function(){ -ensureComponentIsNative(this.refs[CHILD_REF]);}, - - -componentWillReceiveProps:function(nextProps){ -ensurePositiveDelayProps(nextProps); -if(nextProps.activeOpacity!==this.props.activeOpacity|| -nextProps.underlayColor!==this.props.underlayColor|| -nextProps.style!==this.props.style){ -this.setState(this.computeSyntheticState(nextProps));}}, - - - -viewConfig:{ -uiViewClassName:'RCTView', -validAttributes:ReactNativeViewAttributes.RCTView}, - - - - - - -touchableHandleActivePressIn:function(e){ -this.clearTimeout(this._hideTimeout); -this._hideTimeout=null; -this._showUnderlay(); -this.props.onPressIn&&this.props.onPressIn(e);}, - - -touchableHandleActivePressOut:function(e){ -if(!this._hideTimeout){ -this._hideUnderlay();} - -this.props.onPressOut&&this.props.onPressOut(e);}, - - -touchableHandlePress:function(e){ -this.clearTimeout(this._hideTimeout); -this._showUnderlay(); -this._hideTimeout=this.setTimeout(this._hideUnderlay, -this.props.delayPressOut||100); -this.props.onPress&&this.props.onPress(e);}, - - -touchableHandleLongPress:function(e){ -this.props.onLongPress&&this.props.onLongPress(e);}, - - -touchableGetPressRectOffset:function(){ -return this.props.pressRetentionOffset||PRESS_RETENTION_OFFSET;}, - - -touchableGetHighlightDelayMS:function(){ -return this.props.delayPressIn;}, - - -touchableGetLongPressDelayMS:function(){ -return this.props.delayLongPress;}, - - -touchableGetPressOutDelayMS:function(){ -return this.props.delayPressOut;}, - - -_showUnderlay:function(){ -if(!this.isMounted()){ -return;} - - -this.refs[UNDERLAY_REF].setNativeProps(this.state.activeUnderlayProps); -this.refs[CHILD_REF].setNativeProps(this.state.activeProps); -this.props.onShowUnderlay&&this.props.onShowUnderlay();}, - - -_hideUnderlay:function(){ -this.clearTimeout(this._hideTimeout); -this._hideTimeout=null; -if(this.refs[UNDERLAY_REF]){ -this.refs[CHILD_REF].setNativeProps(INACTIVE_CHILD_PROPS); -this.refs[UNDERLAY_REF].setNativeProps(babelHelpers.extends({}, -INACTIVE_UNDERLAY_PROPS,{ -style:this.state.underlayStyle})); - -this.props.onHideUnderlay&&this.props.onHideUnderlay();}}, - - - -render:function(){ -return ( -React.createElement(View,{ -accessible:true, -accessibilityComponentType:this.props.accessibilityComponentType, -accessibilityTraits:this.props.accessibilityTraits, -ref:UNDERLAY_REF, -style:this.state.underlayStyle, -onLayout:this.props.onLayout, -onStartShouldSetResponder:this.touchableHandleStartShouldSetResponder, -onResponderTerminationRequest:this.touchableHandleResponderTerminationRequest, -onResponderGrant:this.touchableHandleResponderGrant, -onResponderMove:this.touchableHandleResponderMove, -onResponderRelease:this.touchableHandleResponderRelease, -onResponderTerminate:this.touchableHandleResponderTerminate, -testID:this.props.testID}, -React.cloneElement( -onlyChild(this.props.children), -{ -ref:CHILD_REF})));}}); - - - - - - - -var CHILD_REF=keyOf({childRef:null}); -var UNDERLAY_REF=keyOf({underlayRef:null}); -var INACTIVE_CHILD_PROPS={ -style:StyleSheet.create({x:{opacity:1.0}}).x}; - -var INACTIVE_UNDERLAY_PROPS={ -style:StyleSheet.create({x:{backgroundColor:'transparent'}}).x}; - - -module.exports=TouchableHighlight; -}); -__d('ensureComponentIsNative',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var invariant=require('invariant'); - -var ensureComponentIsNative=function(component){ -invariant( -component&&typeof component.setNativeProps==='function', -'Touchable child must either be native or forward setNativeProps to a '+ -'native component');}; - - - -module.exports=ensureComponentIsNative; -}); -__d('TouchableNativeFeedback',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var Text=require('Text'); -var View=require('View'); - -var DummyTouchableNativeFeedback=React.createClass({displayName:'DummyTouchableNativeFeedback', -render:function(){ -return ( -React.createElement(View,{style:[styles.container,this.props.style]}, -React.createElement(Text,{style:styles.info},'TouchableNativeFeedback is not supported on this platform!')));}}); - - - - - -var styles=StyleSheet.create({ -container:{ -height:100, -width:300, -backgroundColor:'#ffbcbc', -borderWidth:1, -borderColor:'red', -alignItems:'center', -justifyContent:'center', -margin:10}, - -info:{ -color:'#333333', -margin:20}}); - - - -module.exports=DummyTouchableNativeFeedback; -}); -__d('TouchableOpacity',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - -var Animated=require('Animated'); -var NativeMethodsMixin=require('NativeMethodsMixin'); -var React=require('React'); -var TimerMixin=require('react-timer-mixin/TimerMixin.js'); -var Touchable=require('Touchable'); -var TouchableWithoutFeedback=require('TouchableWithoutFeedback'); - -var ensurePositiveDelayProps=require('ensurePositiveDelayProps'); -var flattenStyle=require('flattenStyle'); - - - -var PRESS_RETENTION_OFFSET={top:20,left:20,right:20,bottom:30}; - - - - - - - - - - - - - - - - - - - - - - -var TouchableOpacity=React.createClass({displayName:'TouchableOpacity', -mixins:[TimerMixin,Touchable.Mixin,NativeMethodsMixin], - -propTypes:babelHelpers.extends({}, -TouchableWithoutFeedback.propTypes,{ - - - - -activeOpacity:React.PropTypes.number}), - - -getDefaultProps:function(){ -return { -activeOpacity:0.2};}, - - - -getInitialState:function(){ -return babelHelpers.extends({}, -this.touchableGetInitialState(),{ -anim:new Animated.Value(1)});}, - - - -componentDidMount:function(){ -ensurePositiveDelayProps(this.props);}, - - -componentWillReceiveProps:function(nextProps){ -ensurePositiveDelayProps(nextProps);}, - - -setOpacityTo:function(value){ -Animated.timing( -this.state.anim, -{toValue:value,duration:150}). -start();}, - - - - - - -touchableHandleActivePressIn:function(e){ -this.clearTimeout(this._hideTimeout); -this._hideTimeout=null; -this._opacityActive(); -this.props.onPressIn&&this.props.onPressIn(e);}, - - -touchableHandleActivePressOut:function(e){ -if(!this._hideTimeout){ -this._opacityInactive();} - -this.props.onPressOut&&this.props.onPressOut(e);}, - - -touchableHandlePress:function(e){ -this.clearTimeout(this._hideTimeout); -this._opacityActive(); -this._hideTimeout=this.setTimeout( -this._opacityInactive, -this.props.delayPressOut||100); - -this.props.onPress&&this.props.onPress(e);}, - - -touchableHandleLongPress:function(e){ -this.props.onLongPress&&this.props.onLongPress(e);}, - - -touchableGetPressRectOffset:function(){ -return this.props.pressRetentionOffset||PRESS_RETENTION_OFFSET;}, - - -touchableGetHighlightDelayMS:function(){ -return this.props.delayPressIn||0;}, - - -touchableGetLongPressDelayMS:function(){ -return this.props.delayLongPress===0?0: -this.props.delayLongPress||500;}, - - -touchableGetPressOutDelayMS:function(){ -return this.props.delayPressOut;}, - - -_opacityActive:function(){ -this.setOpacityTo(this.props.activeOpacity);}, - - -_opacityInactive:function(){ -this.clearTimeout(this._hideTimeout); -this._hideTimeout=null; -var childStyle=flattenStyle(this.props.style)||{}; -this.setOpacityTo( -childStyle.opacity===undefined?1:childStyle.opacity);}, - - - -render:function(){ -return ( -React.createElement(Animated.View,{ -accessible:true, -accessibilityComponentType:this.props.accessibilityComponentType, -accessibilityTraits:this.props.accessibilityTraits, -style:[this.props.style,{opacity:this.state.anim}], -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}, -this.props.children));}}); - - - - - -module.exports=TouchableOpacity; -}); -__d('Animated',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var AnimatedImplementation=require('AnimatedImplementation'); -var Image=require('Image'); -var Text=require('Text'); -var View=require('View'); - -module.exports=babelHelpers.extends({}, -AnimatedImplementation,{ -View:AnimatedImplementation.createAnimatedComponent(View), -Text:AnimatedImplementation.createAnimatedComponent(Text), -Image:AnimatedImplementation.createAnimatedComponent(Image)}); -}); -__d('AnimatedImplementation',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var Easing=require('Easing'); -var InteractionManager=require('InteractionManager'); -var Interpolation=require('Interpolation'); -var React=require('React'); -var Set=require('Set'); -var SpringConfig=require('SpringConfig'); -var ViewStylePropTypes=require('ViewStylePropTypes'); - -var flattenStyle=require('flattenStyle'); -var invariant=require('invariant'); -var requestAnimationFrame=require('requestAnimationFrame');var - - - - - - - - -Animated=(function(){function Animated(){babelHelpers.classCallCheck(this,Animated);}babelHelpers.createClass(Animated,[{key:'__attach',value:function __attach() -{}},{key:'__detach',value:function __detach() -{}},{key:'__getValue',value:function __getValue() -{}},{key:'__getAnimatedValue',value:function __getAnimatedValue() -{return this.__getValue();}},{key:'__addChild',value:function __addChild( -child){}},{key:'__removeChild',value:function __removeChild( -child){}},{key:'__getChildren',value:function __getChildren() -{return [];}}]);return Animated;})();var - - - - - - - - - -Animation=(function(){function Animation(){babelHelpers.classCallCheck(this,Animation);}babelHelpers.createClass(Animation,[{key:'start',value:function start( - - - - -fromValue, -onUpdate, -onEnd, -previousAnimation) -{}},{key:'stop',value:function stop() -{}},{key:'__debouncedOnEnd',value:function __debouncedOnEnd( - -result){ -var onEnd=this.__onEnd; -this.__onEnd=null; -onEnd&&onEnd(result);}}]);return Animation;})();var - - - -AnimatedWithChildren=(function(_Animated){babelHelpers.inherits(AnimatedWithChildren,_Animated); - - -function AnimatedWithChildren(){babelHelpers.classCallCheck(this,AnimatedWithChildren);var _this=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(AnimatedWithChildren).call(this)); - -_this._children=[];return _this;}babelHelpers.createClass(AnimatedWithChildren,[{key:'__addChild',value:function __addChild( - - -child){ -if(this._children.length===0){ -this.__attach();} - -this._children.push(child);}},{key:'__removeChild',value:function __removeChild( - - -child){ -var index=this._children.indexOf(child); -if(index===-1){ -console.warn('Trying to remove a child that doesn\'t exist'); -return;} - -this._children.splice(index,1); -if(this._children.length===0){ -this.__detach();}}},{key:'__getChildren',value:function __getChildren() - - - -{ -return this._children;}}]);return AnimatedWithChildren;})(Animated); - - - - - - - - - - - - - - - - - - - - - - - - - -function _flush(rootNode){ -var animatedStyles=new Set(); -function findAnimatedStyles(node){ -if(typeof node.update==='function'){ -animatedStyles.add(node);}else -{ -node.__getChildren().forEach(findAnimatedStyles);}} - - -findAnimatedStyles(rootNode); -animatedStyles.forEach(function(animatedStyle){return animatedStyle.update();});} - - - - - - - - - - - - - - - - -var easeInOut=Easing.inOut(Easing.ease);var - -TimingAnimation=(function(_Animation){babelHelpers.inherits(TimingAnimation,_Animation); - - - - - - - - - - -function TimingAnimation( -config) -{babelHelpers.classCallCheck(this,TimingAnimation);var _this2=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(TimingAnimation).call(this)); - -_this2._toValue=config.toValue; -_this2._easing=config.easing||easeInOut; -_this2._duration=config.duration!==undefined?config.duration:500; -_this2._delay=config.delay||0; -_this2.__isInteraction=config.isInteraction!==undefined?config.isInteraction:true;return _this2;}babelHelpers.createClass(TimingAnimation,[{key:'start',value:function start( - - - -fromValue, -onUpdate, -onEnd) -{var _this3=this; -this.__active=true; -this._fromValue=fromValue; -this._onUpdate=onUpdate; -this.__onEnd=onEnd; - -var start=function(){ -if(_this3._duration===0){ -_this3._onUpdate(_this3._toValue); -_this3.__debouncedOnEnd({finished:true});}else -{ -_this3._startTime=Date.now(); -_this3._animationFrame=requestAnimationFrame(_this3.onUpdate.bind(_this3));}}; - - -if(this._delay){ -this._timeout=setTimeout(start,this._delay);}else -{ -start();}}},{key:'onUpdate',value:function onUpdate() - - - -{ -var now=Date.now(); -if(now>=this._startTime+this._duration){ -if(this._duration===0){ -this._onUpdate(this._toValue);}else -{ -this._onUpdate( -this._fromValue+this._easing(1)*(this._toValue-this._fromValue));} - - -this.__debouncedOnEnd({finished:true}); -return;} - - -this._onUpdate( -this._fromValue+ -this._easing((now-this._startTime)/this._duration)*( -this._toValue-this._fromValue)); - -if(this.__active){ -this._animationFrame=requestAnimationFrame(this.onUpdate.bind(this));}}},{key:'stop',value:function stop() - - - -{ -this.__active=false; -clearTimeout(this._timeout); -window.cancelAnimationFrame(this._animationFrame); -this.__debouncedOnEnd({finished:false});}}]);return TimingAnimation;})(Animation);var - - - - - - - - - - - - - -DecayAnimation=(function(_Animation2){babelHelpers.inherits(DecayAnimation,_Animation2); - - - - - - - - -function DecayAnimation( -config) -{babelHelpers.classCallCheck(this,DecayAnimation);var _this4=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(DecayAnimation).call(this)); - -_this4._deceleration=config.deceleration||0.998; -_this4._velocity=config.velocity; -_this4.__isInteraction=config.isInteraction!==undefined?config.isInteraction:true;return _this4;}babelHelpers.createClass(DecayAnimation,[{key:'start',value:function start( - - - -fromValue, -onUpdate, -onEnd) -{ -this.__active=true; -this._lastValue=fromValue; -this._fromValue=fromValue; -this._onUpdate=onUpdate; -this.__onEnd=onEnd; -this._startTime=Date.now(); -this._animationFrame=requestAnimationFrame(this.onUpdate.bind(this));}},{key:'onUpdate',value:function onUpdate() - - -{ -var now=Date.now(); - -var value=this._fromValue+ -this._velocity/(1-this._deceleration)*( -1-Math.exp(-(1-this._deceleration)*(now-this._startTime))); - -this._onUpdate(value); - -if(Math.abs(this._lastValue-value)<0.1){ -this.__debouncedOnEnd({finished:true}); -return;} - - -this._lastValue=value; -if(this.__active){ -this._animationFrame=requestAnimationFrame(this.onUpdate.bind(this));}}},{key:'stop',value:function stop() - - - -{ -this.__active=false; -window.cancelAnimationFrame(this._animationFrame); -this.__debouncedOnEnd({finished:false});}}]);return DecayAnimation;})(Animation); - - - - - - - - - - - - - - - - - - - - - - - - - - - -function withDefault(value,defaultValue){ -if(value===undefined||value===null){ -return defaultValue;} - -return value;}var - - -SpringAnimation=(function(_Animation3){babelHelpers.inherits(SpringAnimation,_Animation3); - - - - - - - - - - - - - - - -function SpringAnimation( -config) -{babelHelpers.classCallCheck(this,SpringAnimation);var _this5=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(SpringAnimation).call(this)); - - -_this5._overshootClamping=withDefault(config.overshootClamping,false); -_this5._restDisplacementThreshold=withDefault(config.restDisplacementThreshold,0.001); -_this5._restSpeedThreshold=withDefault(config.restSpeedThreshold,0.001); -_this5._initialVelocity=config.velocity; -_this5._lastVelocity=withDefault(config.velocity,0); -_this5._toValue=config.toValue; -_this5.__isInteraction=config.isInteraction!==undefined?config.isInteraction:true; - -var springConfig; -if(config.bounciness!==undefined||config.speed!==undefined){ -invariant( -config.tension===undefined&&config.friction===undefined, -'You can only define bounciness/speed or tension/friction but not both'); - -springConfig=SpringConfig.fromBouncinessAndSpeed( -withDefault(config.bounciness,8), -withDefault(config.speed,12));}else - -{ -springConfig=SpringConfig.fromOrigamiTensionAndFriction( -withDefault(config.tension,40), -withDefault(config.friction,7));} - - -_this5._tension=springConfig.tension; -_this5._friction=springConfig.friction;return _this5;}babelHelpers.createClass(SpringAnimation,[{key:'start',value:function start( - - - -fromValue, -onUpdate, -onEnd, -previousAnimation) -{ -this.__active=true; -this._startPosition=fromValue; -this._lastPosition=this._startPosition; - -this._onUpdate=onUpdate; -this.__onEnd=onEnd; -this._lastTime=Date.now(); - -if(previousAnimation instanceof SpringAnimation){ -var internalState=previousAnimation.getInternalState(); -this._lastPosition=internalState.lastPosition; -this._lastVelocity=internalState.lastVelocity; -this._lastTime=internalState.lastTime;} - -if(this._initialVelocity!==undefined&& -this._initialVelocity!==null){ -this._lastVelocity=this._initialVelocity;} - -this.onUpdate();}},{key:'getInternalState',value:function getInternalState() - - -{ -return { -lastPosition:this._lastPosition, -lastVelocity:this._lastVelocity, -lastTime:this._lastTime};}},{key:'onUpdate',value:function onUpdate() - - - -{ -var position=this._lastPosition; -var velocity=this._lastVelocity; - -var tempPosition=this._lastPosition; -var tempVelocity=this._lastVelocity; - - - - - -var MAX_STEPS=64; -var now=Date.now(); -if(now>this._lastTime+MAX_STEPS){ -now=this._lastTime+MAX_STEPS;} - - - - - -var TIMESTEP_MSEC=1; -var numSteps=Math.floor((now-this._lastTime)/TIMESTEP_MSEC); - -for(var i=0;ithis._toValue;}else -{ -isOvershooting=positioninputMax){ -if(extrapolateRight==='identity'){ -return result;}else -if(extrapolateRight==='clamp'){ -result=inputMax;}else -if(extrapolateRight==='extend'){}} - - - - -if(outputMin===outputMax){ -return outputMin;} - - -if(inputMin===inputMax){ -if(input<=inputMin){ -return outputMin;} - -return outputMax;} - - - -if(inputMin===-Infinity){ -result=-result;}else -if(inputMax===Infinity){ -result=result-inputMin;}else -{ -result=(result-inputMin)/(inputMax-inputMin);} - - - -result=easing(result); - - -if(outputMin===-Infinity){ -result=-result;}else -if(outputMax===Infinity){ -result=result+outputMin;}else -{ -result=result*(outputMax-outputMin)+outputMin;} - - -return result;} - - -function colorToRgba( -input) -{ -var color=tinycolor(input); -if(color.isValid()){var _color$toRgb= -color.toRgb();var r=_color$toRgb.r;var g=_color$toRgb.g;var b=_color$toRgb.b;var a=_color$toRgb.a; -return 'rgba('+r+', '+g+', '+b+', '+(a===undefined?1:a)+')';}else -{ -return input;}} - - - -var stringShapeRegex=/[0-9\.-]+/g; - - - - - - - - - -function createInterpolationFromStringOutputRange( -config) -{ -var outputRange=config.outputRange; -invariant(outputRange.length>=2,'Bad output range'); -outputRange=outputRange.map(colorToRgba); -checkPattern(outputRange); - - - - - - - - - - - - -var outputRanges=outputRange[0].match(stringShapeRegex).map(function(){return [];}); -outputRange.forEach(function(value){ - - - -value.match(stringShapeRegex).forEach(function(number,i){ -outputRanges[i].push(+number);});}); - - - - - - -var interpolations=outputRange[0].match(stringShapeRegex).map(function(value,i){ -return Interpolation.create(babelHelpers.extends({}, -config,{ -outputRange:outputRanges[i]}));}); - - - -return function(input){ -var i=0; - - - -return outputRange[0].replace(stringShapeRegex,function(){ -return String(interpolations[i++](input));});};} - - - - -function checkPattern(arr){ -var pattern=arr[0].replace(stringShapeRegex,''); -for(var i=1;i=input){ -break;}} - - -return i-1;} - - -function checkValidInputRange(arr){ -invariant(arr.length>=2,'inputRange must have at least 2 elements'); -for(var i=1;i=arr[i-1], - - - - - - -'inputRange must be monotonically increasing '+arr);}} - - - - -function checkInfiniteRange(name,arr){ -invariant(arr.length>=2,name+' must have at least 2 elements'); -invariant( -arr.length!==2||arr[0]!==-Infinity||arr[1]!==Infinity, - - - - - - -name+'cannot be ]-infinity;+infinity[ '+arr);} - - - -module.exports=Interpolation; -}); -__d('Easing',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var _bezier=require('bezier');var - - - - - - -Easing=(function(){function Easing(){babelHelpers.classCallCheck(this,Easing);}babelHelpers.createClass(Easing,null,[{key:'step0',value:function step0( -n){ -return n>0?1:0;}},{key:'step1',value:function step1( - - -n){ -return n>=1?1:0;}},{key:'linear',value:function linear( - - -t){ -return t;}},{key:'ease',value:function ease( - - -t){ -return _ease(t);}},{key:'quad',value:function quad( - - -t){ -return t*t;}},{key:'cubic',value:function cubic( - - -t){ -return t*t*t;}},{key:'poly',value:function poly( - - -n){ -return function(t){return Math.pow(t,n);};}},{key:'sin',value:function sin( - - -t){ -return 1-Math.cos(t*Math.PI/2);}},{key:'circle',value:function circle( - - -t){ -return 1-Math.sqrt(1-t*t);}},{key:'exp',value:function exp( - - -t){ -return Math.pow(2,10*(t-1));}},{key:'elastic',value:function elastic() - - - - - - - - - - - - -{var bounciness=arguments.length<=0||arguments[0]===undefined?1:arguments[0]; -var p=bounciness*Math.PI; -return function(t){return 1-Math.pow(Math.cos(t*Math.PI/2),3)*Math.cos(t*p);};}},{key:'back',value:function back( - - -s){ -if(s===undefined){ -s=1.70158;} - -return function(t){return t*t*((s+1)*t-s);};}},{key:'bounce',value:function bounce( - - -t){ -if(t<1/2.75){ -return 7.5625*t*t;} - - -if(t<2/2.75){ -t-=1.5/2.75; -return 7.5625*t*t+0.75;} - - -if(t<2.5/2.75){ -t-=2.25/2.75; -return 7.5625*t*t+0.9375;} - - -t-=2.625/2.75; -return 7.5625*t*t+0.984375;}},{key:'bezier',value:function bezier( - - - -x1, -y1, -x2, -y2, -epsilon) -{ -if(epsilon===undefined){ - - -var duration=500; -epsilon=1000/60/duration/4;} - - -return _bezier(x1,y1,x2,y2,epsilon);}},{key:'in',value:function _in( - - - -easing) -{ -return easing;}},{key:'out',value:function out( - - - - - - -easing) -{ -return function(t){return 1-easing(1-t);};}},{key:'inOut',value:function inOut( - - - - - - -easing) -{ -return function(t){ -if(t<0.5){ -return easing(t*2)/2;} - -return 1-easing((1-t)*2)/2;};}}]);return Easing;})(); - - - - -var _ease=Easing.bezier(0.42,0,1,1); - - - -module.exports=Easing; -}); -__d('bezier',function(global, require, module, exports) { module. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -exports=function(x1,y1,x2,y2,epsilon){ - -var curveX=function(t){ -var v=1-t; -return 3*v*v*t*x1+3*v*t*t*x2+t*t*t;}; - - -var curveY=function(t){ -var v=1-t; -return 3*v*v*t*y1+3*v*t*t*y2+t*t*t;}; - - -var derivativeCurveX=function(t){ -var v=1-t; -return 3*(2*(t-1)*t+v*v)*x1+3*(-t*t*t+2*v*t)*x2;}; - - -return function(t){ - -var x=t,t0,t1,t2,x2,d2,i; - - -for(t2=x,i=0;i<8;i++){ -x2=curveX(t2)-x; -if(Math.abs(x2)t1)return curveY(t1); - - -while(t0x2)t0=t2;else -t1=t2; -t2=(t1-t0)*.5+t0;} - - - -return curveY(t2);};}; -}); -__d('SpringConfig',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - -function tensionFromOrigamiValue(oValue){ -return (oValue-30)*3.62+194;} - - -function frictionFromOrigamiValue(oValue){ -return (oValue-8)*3+25;} - - -function fromOrigamiTensionAndFriction( -tension, -friction) -{ -return { -tension:tensionFromOrigamiValue(tension), -friction:frictionFromOrigamiValue(friction)};} - - - -function fromBouncinessAndSpeed( -bounciness, -speed) -{ -function normalize(value,startValue,endValue){ -return (value-startValue)/(endValue-startValue);} - - -function projectNormal(n,start,end){ -return start+n*(end-start);} - - -function linearInterpolation(t,start,end){ -return t*end+(1-t)*start;} - - -function quadraticOutInterpolation(t,start,end){ -return linearInterpolation(2*t-t*t,start,end);} - - -function b3Friction1(x){ -return 0.0007*Math.pow(x,3)- -0.031*Math.pow(x,2)+0.64*x+1.28;} - - -function b3Friction2(x){ -return 0.000044*Math.pow(x,3)- -0.006*Math.pow(x,2)+0.36*x+2;} - - -function b3Friction3(x){ -return 0.00000045*Math.pow(x,3)- -0.000332*Math.pow(x,2)+0.1078*x+5.84;} - - -function b3Nobounce(tension){ -if(tension<=18){ -return b3Friction1(tension);}else -if(tension>18&&tension<=44){ -return b3Friction2(tension);}else -{ -return b3Friction3(tension);}} - - - -var b=normalize(bounciness/1.7,0,20); -b=projectNormal(b,0,0.8); -var s=normalize(speed/1.7,0,20); -var bouncyTension=projectNormal(s,0.5,200); -var bouncyFriction=quadraticOutInterpolation( -b, -b3Nobounce(bouncyTension), -0.01); - - -return { -tension:tensionFromOrigamiValue(bouncyTension), -friction:frictionFromOrigamiValue(bouncyFriction)};} - - - -module.exports={ -fromOrigamiTensionAndFriction:fromOrigamiTensionAndFriction, -fromBouncinessAndSpeed:fromBouncinessAndSpeed}; -}); -__d('requestAnimationFrame',function(global, require, module, exports) { var - - - - - - - - - - -emptyFunction=require('emptyFunction'); -var nativeRequestAnimationFrame=require('nativeRequestAnimationFrame'); - -var lastTime=0; - -var requestAnimationFrame= -nativeRequestAnimationFrame|| -function(callback){ -var currTime=Date.now(); -var timeDelay=Math.max(0,16-(currTime-lastTime)); -lastTime=currTime+timeDelay; -return global.setTimeout(function(){ -callback(Date.now());}, -timeDelay);}; - - - -requestAnimationFrame(emptyFunction); - -module.exports=requestAnimationFrame; -}); -__d('nativeRequestAnimationFrame',function(global, require, module, exports) { var - - - - - - - - - - -nativeRequestAnimationFrame= -global.requestAnimationFrame|| -global.webkitRequestAnimationFrame|| -global.mozRequestAnimationFrame|| -global.oRequestAnimationFrame|| -global.msRequestAnimationFrame; - -module.exports=nativeRequestAnimationFrame; -}); -__d('ViewPagerAndroid',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - -module.exports=require('UnimplementedView'); -}); -__d('WebView',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ActivityIndicatorIOS=require('ActivityIndicatorIOS'); -var EdgeInsetsPropType=require('EdgeInsetsPropType'); -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var Text=require('Text'); -var View=require('View'); - -var invariant=require('invariant'); -var keyMirror=require('keyMirror'); -var requireNativeComponent=require('requireNativeComponent'); - -var PropTypes=React.PropTypes; -var RCTWebViewManager=require('NativeModules').WebViewManager; - -var BGWASH='rgba(255,255,255,0.8)'; -var RCT_WEBVIEW_REF='webview'; - -var WebViewState=keyMirror({ -IDLE:null, -LOADING:null, -ERROR:null}); - - -var NavigationType={ -click:RCTWebViewManager.NavigationType.LinkClicked, -formsubmit:RCTWebViewManager.NavigationType.FormSubmitted, -backforward:RCTWebViewManager.NavigationType.BackForward, -reload:RCTWebViewManager.NavigationType.Reload, -formresubmit:RCTWebViewManager.NavigationType.FormResubmitted, -other:RCTWebViewManager.NavigationType.Other}; - - -var JSNavigationScheme=RCTWebViewManager.JSNavigationScheme; - - - - - - - - - -var defaultRenderLoading=function(){return ( -React.createElement(View,{style:styles.loadingView}, -React.createElement(ActivityIndicatorIOS,null)));}; - - -var defaultRenderError=function(errorDomain,errorCode,errorDesc){return ( -React.createElement(View,{style:styles.errorContainer}, -React.createElement(Text,{style:styles.errorTextTitle},'Error loading page'), - - -React.createElement(Text,{style:styles.errorText}, -'Domain: '+errorDomain), - -React.createElement(Text,{style:styles.errorText}, -'Error Code: '+errorCode), - -React.createElement(Text,{style:styles.errorText}, -'Description: '+errorDesc)));}; - - - - - - - -var WebView=React.createClass({displayName:'WebView', -statics:{ -JSNavigationScheme:JSNavigationScheme, -NavigationType:NavigationType}, - - -propTypes:babelHelpers.extends({}, -View.propTypes,{ -url:PropTypes.string, -html:PropTypes.string, - - - -renderError:PropTypes.func, - - - -renderLoading:PropTypes.func, - - - -bounces:PropTypes.bool, - - - -scrollEnabled:PropTypes.bool, -automaticallyAdjustContentInsets:PropTypes.bool, -contentInset:EdgeInsetsPropType, -onNavigationStateChange:PropTypes.func, -startInLoadingState:PropTypes.bool, -style:View.propTypes.style, - - - - - -javaScriptEnabledAndroid:PropTypes.bool, - - - - -injectedJavaScript:PropTypes.string, - - - - - -scalesPageToFit:PropTypes.bool, - - - - - - -onShouldStartLoadWithRequest:PropTypes.func, - - - - - - - - - - -allowsInlineMediaPlayback:PropTypes.bool}), - - -getInitialState:function(){ -return { -viewState:WebViewState.IDLE, -lastErrorEvent:null, -startInLoadingState:true};}, - - - -componentWillMount:function(){ -if(this.props.startInLoadingState){ -this.setState({viewState:WebViewState.LOADING});}}, - - - -render:function(){var _this=this; -var otherView=null; - -if(this.state.viewState===WebViewState.LOADING){ -otherView=(this.props.renderLoading||defaultRenderLoading)();}else -if(this.state.viewState===WebViewState.ERROR){ -var errorEvent=this.state.lastErrorEvent; -invariant( -errorEvent!=null, -'lastErrorEvent expected to be non-null'); - -otherView=(this.props.renderError||defaultRenderError)( -errorEvent.domain, -errorEvent.code, -errorEvent.description);}else - -if(this.state.viewState!==WebViewState.IDLE){ -console.error( -'RCTWebView invalid state encountered: '+this.state.loading);} - - - -var webViewStyles=[styles.container,styles.webView,this.props.style]; -if(this.state.viewState===WebViewState.LOADING|| -this.state.viewState===WebViewState.ERROR){ - -webViewStyles.push(styles.hidden);} - - -var onShouldStartLoadWithRequest=this.props.onShouldStartLoadWithRequest&&function(event){ -var shouldStart=_this.props.onShouldStartLoadWithRequest&& -_this.props.onShouldStartLoadWithRequest(event.nativeEvent); -RCTWebViewManager.startLoadWithResult(!!shouldStart,event.nativeEvent.lockIdentifier);}; - - -var webView= -React.createElement(RCTWebView,{ -ref:RCT_WEBVIEW_REF, -key:'webViewKey', -style:webViewStyles, -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, -onShouldStartLoadWithRequest:onShouldStartLoadWithRequest, -scalesPageToFit:this.props.scalesPageToFit, -allowsInlineMediaPlayback:this.props.allowsInlineMediaPlayback}); - - -return ( -React.createElement(View,{style:styles.container}, -webView, -otherView));}, - - - - -goForward:function(){ -RCTWebViewManager.goForward(this.getWebViewHandle());}, - - -goBack:function(){ -RCTWebViewManager.goBack(this.getWebViewHandle());}, - - -reload:function(){ -RCTWebViewManager.reload(this.getWebViewHandle());}, - - - - - - -updateNavigationState:function(event){ -if(this.props.onNavigationStateChange){ -this.props.onNavigationStateChange(event.nativeEvent);}}, - - - -getWebViewHandle:function(){ -return React.findNodeHandle(this.refs[RCT_WEBVIEW_REF]);}, - - -onLoadingStart:function(event){ -this.updateNavigationState(event);}, - - -onLoadingError:function(event){ -event.persist(); -console.warn('Encountered an error loading page',event.nativeEvent); - -this.setState({ -lastErrorEvent:event.nativeEvent, -viewState:WebViewState.ERROR});}, - - - -onLoadingFinish:function(event){ -this.setState({ -viewState:WebViewState.IDLE}); - -this.updateNavigationState(event);}}); - - - -var RCTWebView=requireNativeComponent('RCTWebView',WebView,{ -nativeOnly:{ -onLoadingStart:true, -onLoadingError:true, -onLoadingFinish:true}}); - - - -var styles=StyleSheet.create({ -container:{ -flex:1}, - -errorContainer:{ -flex:1, -justifyContent:'center', -alignItems:'center', -backgroundColor:BGWASH}, - -errorText:{ -fontSize:14, -textAlign:'center', -marginBottom:2}, - -errorTextTitle:{ -fontSize:15, -fontWeight:'500', -marginBottom:10}, - -hidden:{ -height:0, -flex:0}, - -loadingView:{ -backgroundColor:BGWASH, -flex:1, -justifyContent:'center', -alignItems:'center'}, - -webView:{ -backgroundColor:'#ffffff'}}); - - - -module.exports=WebView; -}); -__d('ActionSheetIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var RCTActionSheetManager=require('NativeModules').ActionSheetManager; - -var invariant=require('invariant'); -var processColor=require('processColor'); - -var ActionSheetIOS={ -showActionSheetWithOptions:function(options,callback){ -invariant( -typeof options==='object'&&options!==null, -'Options must a valid object'); - -invariant( -typeof callback==='function', -'Must provide a valid callback'); - -RCTActionSheetManager.showActionSheetWithOptions(babelHelpers.extends({}, -options,{tintColor:processColor(options.tintColor)}), -callback);}, - - - -showShareActionSheetWithOptions:function( -options, -failureCallback, -successCallback) -{ -invariant( -typeof options==='object'&&options!==null, -'Options must a valid object'); - -invariant( -typeof failureCallback==='function', -'Must provide a valid failureCallback'); - -invariant( -typeof successCallback==='function', -'Must provide a valid successCallback'); - -RCTActionSheetManager.showShareActionSheetWithOptions(babelHelpers.extends({}, -options,{tintColor:processColor(options.tintColor)}), -failureCallback, -successCallback);}}; - - - - -module.exports=ActionSheetIOS; -}); -__d('AdSupportIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var AdSupport=require('NativeModules').AdSupport; - -module.exports={ -getAdvertisingId:function(onSuccess,onFailure){ -AdSupport.getAdvertisingId(onSuccess,onFailure);}, - - -getAdvertisingTrackingEnabled:function(onSuccess,onFailure){ -AdSupport.getAdvertisingTrackingEnabled(onSuccess,onFailure);}}; -}); -__d('Alert',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var AlertIOS=require('AlertIOS'); -var Platform=require('Platform'); -var DialogModuleAndroid=require('NativeModules').DialogManagerAndroid;var - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Alert=(function(){function Alert(){babelHelpers.classCallCheck(this,Alert);}babelHelpers.createClass(Alert,null,[{key:'alert',value:function alert( - - -title, -message, -buttons, -type) -{ -if(Platform.OS==='ios'){ -AlertIOS.alert(title,message,buttons,type);}else -if(Platform.OS==='android'){ -AlertAndroid.alert(title,message,buttons);}}}]);return Alert;})();var - - - - - - - -AlertAndroid=(function(){function AlertAndroid(){babelHelpers.classCallCheck(this,AlertAndroid);}babelHelpers.createClass(AlertAndroid,null,[{key:'alert',value:function alert( - - -title, -message, -buttons) -{ -var config={ -title:title||'', -message:message||''}; - - - -var validButtons=buttons?buttons.slice(0,3):[{text:'OK'}]; -var buttonPositive=validButtons.pop(); -var buttonNegative=validButtons.pop(); -var buttonNeutral=validButtons.pop(); -if(buttonNeutral){ -config=babelHelpers.extends({},config,{buttonNeutral:buttonNeutral.text||''});} - -if(buttonNegative){ -config=babelHelpers.extends({},config,{buttonNegative:buttonNegative.text||''});} - -if(buttonPositive){ -config=babelHelpers.extends({},config,{buttonPositive:buttonPositive.text||''});} - -DialogModuleAndroid.showAlert( -config, -function(errorMessage){return console.warn(message);}, -function(action,buttonKey){ -if(action!==DialogModuleAndroid.buttonClicked){ -return;} - -if(buttonKey===DialogModuleAndroid.buttonNeutral){ -buttonNeutral.onPress&&buttonNeutral.onPress();}else -if(buttonKey===DialogModuleAndroid.buttonNegative){ -buttonNegative.onPress&&buttonNegative.onPress();}else -if(buttonKey===DialogModuleAndroid.buttonPositive){ -buttonPositive.onPress&&buttonPositive.onPress();}});}}]);return AlertAndroid;})(); - - - - - - -module.exports=Alert; -}); -__d('AlertIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var RCTAlertManager=require('NativeModules').AlertManager; -var invariant=require('invariant');var - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -AlertIOS=(function(){function AlertIOS(){babelHelpers.classCallCheck(this,AlertIOS);}babelHelpers.createClass(AlertIOS,null,[{key:'alert',value:function alert( - -title, -message, -buttons, - - - - -type) -{ -var callbacks=[]; -var buttonsSpec=[]; -var cancelButtonKey; -var destructiveButtonKey; -buttons&&buttons.forEach(function(btn,index){ -callbacks[index]=btn.onPress; -if(btn.style=='cancel'){ -cancelButtonKey=String(index);}else -if(btn.style=='destructive'){ -destructiveButtonKey=String(index);} - -if(btn.text||index<(buttons||[]).length-1){ -var btnDef={}; -btnDef[index]=btn.text||''; -buttonsSpec.push(btnDef);}}); - - -RCTAlertManager.alertWithArgs({ -title:title||undefined, -message:message||undefined, -buttons:buttonsSpec, -type:type||undefined, -cancelButtonKey:cancelButtonKey, -destructiveButtonKey:destructiveButtonKey}, -function(id,value){ -var cb=callbacks[id]; -cb&&cb(value);});}},{key:'prompt',value:function prompt( - - - - -title, -value, -buttons, - - - - -callback) -{ -if(arguments.length===2){ -if(typeof value==='object'){ -buttons=value; -value=undefined;}else -if(typeof value==='function'){ -callback=value; -value=undefined;}}else - -if(arguments.length===3&&typeof buttons==='function'){ -callback=buttons; -buttons=undefined;} - - -invariant( -!(callback&&buttons)&&(callback||buttons), -'Must provide either a button list or a callback, but not both'); - - -if(!buttons){ -buttons=[{onPress:callback}];} - -this.alert(title,value,buttons,'plain-text');}}]);return AlertIOS;})(); - - - -module.exports=AlertIOS; -}); -__d('AppRegistry',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var BatchedBridge=require('BatchedBridge'); -var ReactNative=require('ReactNative'); - -var invariant=require('invariant'); -var renderApplication=require('renderApplication'); - -if(__DEV__){ - - -require('RCTRenderingPerf');} - - -var runnables={}; - - - - - - - - - - - - - - - - - - - - - - - - -var AppRegistry={ -registerConfig:function(config){ -for(var i=0;iDimensions.get('window').height/2?'top':'bottom', -selection:hierarchy.length-1, -hierarchy:hierarchy, -inspected:{ -style:props.style||{}, -frame:frame}});}},{key:'setPerfing',value:function setPerfing( - - - - -val){ -this.setState({ -perfing:val, -inspecting:false, -inspected:null});}},{key:'setInspecting',value:function setInspecting( - - - -val){ -this.setState({ -inspecting:val, -inspected:null});}},{key:'render',value:function render() - - - -{ -var panelContainerStyle=this.state.panelPos==='bottom'?{bottom:0}:{top:0}; -return ( -React.createElement(View,{style:styles.container,pointerEvents:'box-none'}, -this.state.inspecting&& -React.createElement(InspectorOverlay,{ -rootTag:this.props.rootTag, -inspected:this.state.inspected, -inspectedViewTag:this.props.inspectedViewTag, -onTouchInstance:this.onTouchInstance.bind(this)}), - -React.createElement(View,{style:[styles.panelContainer,panelContainerStyle]}, -React.createElement(InspectorPanel,{ -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)}))));}}]);return Inspector;})(React.Component); - - - - - - - -var styles=StyleSheet.create({ -container:{ -position:'absolute', -backgroundColor:'transparent', -top:0, -left:0, -right:0, -bottom:0}, - -panelContainer:{ -position:'absolute', -left:0, -right:0}}); - - - -module.exports=Inspector; -}); -__d('InspectorOverlay',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var Dimensions=require('Dimensions'); -var InspectorUtils=require('InspectorUtils'); -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var UIManager=require('NativeModules').UIManager; -var View=require('View'); -var ElementBox=require('ElementBox'); - -var PropTypes=React.PropTypes; - - - - - -var InspectorOverlay=React.createClass({displayName:'InspectorOverlay', -propTypes:{ -inspected:PropTypes.shape({ -frame:PropTypes.object, -style:PropTypes.any}), - -inspectedViewTag:PropTypes.number, -onTouchInstance:PropTypes.func.isRequired}, - - -findViewForTouchEvent:function(e){var _this=this;var _e$nativeEvent$touche= -e.nativeEvent.touches[0];var locationX=_e$nativeEvent$touche.locationX;var locationY=_e$nativeEvent$touche.locationY; -UIManager.findSubviewIn( -this.props.inspectedViewTag, -[locationX,locationY], -function(nativeViewTag,left,top,width,height){ -var instance=InspectorUtils.findInstanceByNativeTag(_this.props.rootTag,nativeViewTag); -if(!instance){ -return;} - -_this.props.onTouchInstance(instance,{left:left,top:top,width:width,height:height},locationY);});}, - - - - -shouldSetResponser:function(e){ -this.findViewForTouchEvent(e); -return true;}, - - -render:function(){ -var content=null; -if(this.props.inspected){ -content=React.createElement(ElementBox,{frame:this.props.inspected.frame,style:this.props.inspected.style});} - - -return ( -React.createElement(View,{ -onStartShouldSetResponder:this.shouldSetResponser, -onResponderMove:this.findViewForTouchEvent, -style:[styles.inspector,{height:Dimensions.get('window').height}]}, -content));}}); - - - - - -var styles=StyleSheet.create({ -inspector:{ -backgroundColor:'transparent', -position:'absolute', -left:0, -top:0, -right:0}}); - - - -module.exports=InspectorOverlay; -}); -__d('ElementBox',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var React=require('React'); -var View=require('View'); -var StyleSheet=require('StyleSheet'); -var BorderBox=require('BorderBox'); -var resolveBoxStyle=require('resolveBoxStyle'); - -var flattenStyle=require('flattenStyle');var - -ElementBox=(function(_React$Component){babelHelpers.inherits(ElementBox,_React$Component);function ElementBox(){babelHelpers.classCallCheck(this,ElementBox);return babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(ElementBox).apply(this,arguments));}babelHelpers.createClass(ElementBox,[{key:'render',value:function render() -{ -var style=flattenStyle(this.props.style)||{}; -var margin=resolveBoxStyle('margin',style); -var padding=resolveBoxStyle('padding',style); -var frameStyle=this.props.frame; -if(margin){ -frameStyle={ -top:frameStyle.top-margin.top, -left:frameStyle.left-margin.left, -height:frameStyle.height+margin.top+margin.bottom, -width:frameStyle.width+margin.left+margin.right};} - - -var contentStyle={ -width:this.props.frame.width, -height:this.props.frame.height}; - -if(padding){ -contentStyle={ -width:contentStyle.width-padding.left-padding.right, -height:contentStyle.height-padding.top-padding.bottom};} - - -return ( -React.createElement(View,{style:[styles.frame,frameStyle],pointerEvents:'none'}, -React.createElement(BorderBox,{box:margin,style:styles.margin}, -React.createElement(BorderBox,{box:padding,style:styles.padding}, -React.createElement(View,{style:[styles.content,contentStyle]})))));}}]);return ElementBox;})(React.Component); - - - - - - - -var styles=StyleSheet.create({ -frame:{ -position:'absolute'}, - -content:{ -backgroundColor:'rgba(200, 230, 255, 0.8)'}, - -padding:{ -borderColor:'rgba(77, 255, 0, 0.3)'}, - -margin:{ -borderColor:'rgba(255, 132, 0, 0.3)'}}); - - - -module.exports=ElementBox; -}); -__d('BorderBox',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var React=require('React'); -var View=require('View');var - -BorderBox=(function(_React$Component){babelHelpers.inherits(BorderBox,_React$Component);function BorderBox(){babelHelpers.classCallCheck(this,BorderBox);return babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(BorderBox).apply(this,arguments));}babelHelpers.createClass(BorderBox,[{key:'render',value:function render() -{ -var box=this.props.box; -if(!box){ -return this.props.children;} - -var style={ -borderTopWidth:box.top, -borderBottomWidth:box.bottom, -borderLeftWidth:box.left, -borderRightWidth:box.right}; - -return ( -React.createElement(View,{style:[style,this.props.style]}, -this.props.children));}}]);return BorderBox;})(React.Component); - - - - - -module.exports=BorderBox; -}); -__d('resolveBoxStyle',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - - - - - - - - - -function resolveBoxStyle(prefix,style){ -var res={}; -var subs=['top','left','bottom','right']; -var set=false; -subs.forEach(function(sub){ -res[sub]=style[prefix]||0;}); - -if(style[prefix]){ -set=true;} - -if(style[prefix+'Vertical']){ -res.top=res.bottom=style[prefix+'Vertical']; -set=true;} - -if(style[prefix+'Horizontal']){ -res.left=res.right=style[prefix+'Horizontal']; -set=true;} - -subs.forEach(function(sub){ -var val=style[prefix+capFirst(sub)]; -if(val){ -res[sub]=val; -set=true;}}); - - -if(!set){ -return;} - -return res;} - - -function capFirst(text){ -return text[0].toUpperCase()+text.slice(1);} - - -module.exports=resolveBoxStyle; -}); -__d('InspectorPanel',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var Text=require('Text'); -var View=require('View'); -var ElementProperties=require('ElementProperties'); -var PerformanceOverlay=require('PerformanceOverlay'); -var TouchableHighlight=require('TouchableHighlight'); - -var PropTypes=React.PropTypes;var - -InspectorPanel=(function(_React$Component){babelHelpers.inherits(InspectorPanel,_React$Component);function InspectorPanel(){babelHelpers.classCallCheck(this,InspectorPanel);return babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(InspectorPanel).apply(this,arguments));}babelHelpers.createClass(InspectorPanel,[{key:'renderWaiting',value:function renderWaiting() -{ -if(this.props.inspecting){ -return ( -React.createElement(Text,{style:styles.waitingText},'Tap something to inspect it'));} - - - - -return React.createElement(Text,{style:styles.waitingText},'Nothing is inspected');}},{key:'render',value:function render() - - -{ -var contents; -if(this.props.inspected){ -contents= -React.createElement(ElementProperties,{ -style:this.props.inspected.style, -frame:this.props.inspected.frame, -hierarchy:this.props.hierarchy, -selection:this.props.selection, -setSelection:this.props.setSelection});}else - - -if(this.props.perfing){ -contents= -React.createElement(PerformanceOverlay,null);}else - -{ -contents= -React.createElement(View,{style:styles.waiting}, -this.renderWaiting());} - - - -return ( -React.createElement(View,{style:styles.container}, -!this.props.devtoolsIsOpen&&contents, -React.createElement(View,{style:styles.buttonRow}, -React.createElement(Button,{ -title:'Inspect', -pressed:this.props.inspecting, -onClick:this.props.setInspecting}), - -React.createElement(Button,{title:'Perf', -pressed:this.props.perfing, -onClick:this.props.setPerfing}))));}}]);return InspectorPanel;})(React.Component); - - - - - - - -InspectorPanel.propTypes={ -devtoolsIsOpen:PropTypes.bool, -inspecting:PropTypes.bool, -setInspecting:PropTypes.func, -inspected:PropTypes.object, -perfing:PropTypes.bool, -setPerfing:PropTypes.func};var - - -Button=(function(_React$Component2){babelHelpers.inherits(Button,_React$Component2);function Button(){babelHelpers.classCallCheck(this,Button);return babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(Button).apply(this,arguments));}babelHelpers.createClass(Button,[{key:'render',value:function render() -{var _this3=this; -return ( -React.createElement(TouchableHighlight,{onPress:function(){return _this3.props.onClick(!_this3.props.pressed);},style:[ -styles.button, -this.props.pressed&&styles.buttonPressed]}, - -React.createElement(Text,{style:styles.buttonText},this.props.title)));}}]);return Button;})(React.Component); - - - - - -var styles=StyleSheet.create({ -buttonRow:{ -flexDirection:'row'}, - -button:{ -backgroundColor:'rgba(0, 0, 0, 0.3)', -margin:2, -height:30, -justifyContent:'center', -alignItems:'center'}, - -buttonPressed:{ -backgroundColor:'rgba(255, 255, 255, 0.3)'}, - -buttonText:{ -textAlign:'center', -color:'white', -margin:5}, - -container:{ -backgroundColor:'rgba(0, 0, 0, 0.7)'}, - -waiting:{ -height:100}, - -waitingText:{ -fontSize:20, -textAlign:'center', -marginVertical:20}}); - - - -module.exports=InspectorPanel; -}); -__d('ElementProperties',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var BoxInspector=require('BoxInspector'); -var PropTypes=require('ReactPropTypes'); -var React=require('React'); -var StyleInspector=require('StyleInspector'); -var StyleSheet=require('StyleSheet'); -var Text=require('Text'); -var TouchableHighlight=require('TouchableHighlight'); -var TouchableWithoutFeedback=require('TouchableWithoutFeedback'); -var View=require('View'); - -var flattenStyle=require('flattenStyle'); -var mapWithSeparator=require('mapWithSeparator'); - -var ElementProperties=React.createClass({displayName:'ElementProperties', -propTypes:{ -hierarchy:PropTypes.array.isRequired, -style:PropTypes.oneOfType([ -PropTypes.object, -PropTypes.array, -PropTypes.number])}, - - - -render:function(){var _this=this; -var style=flattenStyle(this.props.style); -var selection=this.props.selection; - - -return ( -React.createElement(TouchableWithoutFeedback,null, -React.createElement(View,{style:styles.info}, -React.createElement(View,{style:styles.breadcrumb}, -mapWithSeparator( -this.props.hierarchy, -function(item,i){return ( -React.createElement(TouchableHighlight,{ -style:[styles.breadItem,i===selection&&styles.selected], -onPress:function(){return _this.props.setSelection(i);}}, -React.createElement(Text,{style:styles.breadItemText}, -item.getName?item.getName():'Unknown')));}, - - - -function(){return React.createElement(Text,{style:styles.breadSep},'â–¸');})), - - -React.createElement(View,{style:styles.row}, -React.createElement(StyleInspector,{style:style}), -React.createElement(BoxInspector,{style:style,frame:this.props.frame})))));}}); - - - - - - - -var styles=StyleSheet.create({ -breadSep:{ -fontSize:8, -color:'white'}, - -breadcrumb:{ -flexDirection:'row', -flexWrap:'wrap', -marginBottom:5}, - -selected:{ -borderColor:'white', -borderRadius:5}, - -breadItem:{ -borderWidth:1, -borderColor:'transparent', -marginHorizontal:2}, - -breadItemText:{ -fontSize:10, -color:'white', -marginHorizontal:5}, - -row:{ -flexDirection:'row', -alignItems:'center', -justifyContent:'space-between'}, - -info:{ -padding:10}, - -path:{ -color:'white', -fontSize:9}}); - - - -module.exports=ElementProperties; -}); -__d('BoxInspector',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var Text=require('Text'); -var View=require('View'); -var resolveBoxStyle=require('resolveBoxStyle'); - -var blank={ -top:0, -left:0, -right:0, -bottom:0};var - - -BoxInspector=(function(_React$Component){babelHelpers.inherits(BoxInspector,_React$Component);function BoxInspector(){babelHelpers.classCallCheck(this,BoxInspector);return babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(BoxInspector).apply(this,arguments));}babelHelpers.createClass(BoxInspector,[{key:'render',value:function render() -{ -var frame=this.props.frame; -var style=this.props.style; -var margin=style&&resolveBoxStyle('margin',style)||blank; -var padding=style&&resolveBoxStyle('padding',style)||blank; -return ( -React.createElement(BoxContainer,{title:'margin',titleStyle:styles.marginLabel,box:margin}, -React.createElement(BoxContainer,{title:'padding',box:padding}, -React.createElement(View,null, -React.createElement(Text,{style:styles.innerText},'(', -frame.left,', ',frame.top,')'), - -React.createElement(Text,{style:styles.innerText}, -frame.width,' × ',frame.height)))));}}]);return BoxInspector;})(React.Component);var - - - - - - - - -BoxContainer=(function(_React$Component2){babelHelpers.inherits(BoxContainer,_React$Component2);function BoxContainer(){babelHelpers.classCallCheck(this,BoxContainer);return babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(BoxContainer).apply(this,arguments));}babelHelpers.createClass(BoxContainer,[{key:'render',value:function render() -{ -var box=this.props.box; -return ( -React.createElement(View,{style:styles.box}, -React.createElement(View,{style:styles.row}, -React.createElement(Text,{style:[this.props.titleStyle,styles.label]},this.props.title), -React.createElement(Text,{style:styles.boxText},box.top)), - -React.createElement(View,{style:styles.row}, -React.createElement(Text,{style:styles.boxText},box.left), -this.props.children, -React.createElement(Text,{style:styles.boxText},box.right)), - -React.createElement(Text,{style:styles.boxText},box.bottom)));}}]);return BoxContainer;})(React.Component); - - - - - -var styles=StyleSheet.create({ -row:{ -flexDirection:'row', -alignItems:'center', -justifyContent:'space-around'}, - -marginLabel:{ -width:60}, - -label:{ -fontSize:10, -color:'rgb(255,100,0)', -marginLeft:5, -flex:1, -textAlign:'left', -top:-3}, - -buffer:{ -fontSize:10, -color:'yellow', -flex:1, -textAlign:'center'}, - -innerText:{ -color:'yellow', -fontSize:12, -textAlign:'center', -width:70}, - -box:{ -borderWidth:1, -borderColor:'grey'}, - -boxText:{ -color:'white', -fontSize:12, -marginHorizontal:3, -marginVertical:2, -textAlign:'center'}}); - - - -module.exports=BoxInspector; -}); -__d('StyleInspector',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var React=require('React'); -var StyleSheet=require('StyleSheet'); -var Text=require('Text'); -var View=require('View');var - -StyleInspector=(function(_React$Component){babelHelpers.inherits(StyleInspector,_React$Component);function StyleInspector(){babelHelpers.classCallCheck(this,StyleInspector);return babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(StyleInspector).apply(this,arguments));}babelHelpers.createClass(StyleInspector,[{key:'render',value:function render() -{var _this2=this; -if(!this.props.style){ -return React.createElement(Text,{style:styles.noStyle},'No style');} - -var names=Object.keys(this.props.style); -return ( -React.createElement(View,{style:styles.container}, -React.createElement(View,null, -names.map(function(name){return React.createElement(Text,{style:styles.attr},name,':');})), - -React.createElement(View,null, -names.map(function(name){return React.createElement(Text,{style:styles.value},_this2.props.style[name]);}))));}}]);return StyleInspector;})(React.Component); - - - - - - -var styles=StyleSheet.create({ -container:{ -flexDirection:'row'}, - -row:{ -flexDirection:'row', -alignItems:'center', -justifyContent:'space-around'}, - -attr:{ -fontSize:10, -color:'#ccc'}, - -value:{ -fontSize:10, -color:'white', -marginLeft:10}, - -noStyle:{ -color:'white', -fontSize:10}}); - - - -module.exports=StyleInspector; -}); -__d('mapWithSeparator',function(global, require, module, exports) { 'use strict'; - - - - - - -function mapWithSeparator(array,valueFunction,separatorFunction){ -var results=[]; -for(var i=0;i1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];} -var index=0; -return format.replace(/%s/g,function(match){return args[index++];});} - - -function updateWarningMap(format){ -var stringifySafe=require('stringifySafe'); - -format=String(format); -var argCount=(format.match(/%s/g)||[]).length;for(var _len2=arguments.length,args=Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++){args[_key2-1]=arguments[_key2];} -var warning=[ -sprintf.apply(undefined,[format].concat(babelHelpers.toConsumableArray(args.slice(0,argCount))))].concat(babelHelpers.toConsumableArray( -args.slice(argCount).map(stringifySafe))). -join(' '); - -var count=_warningMap.has(warning)?_warningMap.get(warning):0; -_warningMap.set(warning,count+2); -_warningEmitter.emit('warning',_warningMap);} - - -function isWarningIgnored(warning){ -return ( -Array.isArray(console.ignoredYellowBox)&& -console.ignoredYellowBox.some( -function(ignorePrefix){return warning.startsWith(ignorePrefix);}));} - - - - -var WarningRow=function(_ref){var count=_ref.count;var warning=_ref.warning;var onPress=_ref.onPress; -var Text=require('Text'); -var TouchableHighlight=require('TouchableHighlight'); -var View=require('View'); - -var countText=count>1? -React.createElement(Text,{style:styles.listRowCount},'('+count+') '): -null; - -return ( -React.createElement(View,{style:styles.listRow}, -React.createElement(TouchableHighlight,{ -activeOpacity:0.5, -onPress:onPress, -style:styles.listRowContent, -underlayColor:'transparent'}, -React.createElement(Text,{style:styles.listRowText,numberOfLines:2}, -countText, -warning))));}; - - - - - - -var WarningInspector=function(_ref2) - - - - - -{var count=_ref2.count;var warning=_ref2.warning;var onClose=_ref2.onClose;var onDismiss=_ref2.onDismiss;var onDismissAll=_ref2.onDismissAll; -var ScrollView=require('ScrollView'); -var Text=require('Text'); -var TouchableHighlight=require('TouchableHighlight'); -var View=require('View'); - -var countSentence= -'Warning encountered '+count+' time'+(count-1?'s':'')+'.'; - -return ( -React.createElement(TouchableHighlight,{ -activeOpacity:0.95, -underlayColor:backgroundColor(0.8), -onPress:onClose, -style:styles.inspector}, -React.createElement(View,{style:styles.inspectorContent}, -React.createElement(View,{style:styles.inspectorCount}, -React.createElement(Text,{style:styles.inspectorCountText},countSentence)), - -React.createElement(ScrollView,{style:styles.inspectorWarning}, -React.createElement(Text,{style:styles.inspectorWarningText},warning)), - -React.createElement(View,{style:styles.inspectorButtons}, -React.createElement(TouchableHighlight,{ -activeOpacity:0.5, -onPress:onDismiss, -style:styles.inspectorButton, -underlayColor:'transparent'}, -React.createElement(Text,{style:styles.inspectorButtonText},'Dismiss')), - - - -React.createElement(TouchableHighlight,{ -activeOpacity:0.5, -onPress:onDismissAll, -style:styles.inspectorButton, -underlayColor:'transparent'}, -React.createElement(Text,{style:styles.inspectorButtonText},'Dismiss All'))))));};var - - - - - - - - - -YellowBox=(function(_React$Component){babelHelpers.inherits(YellowBox,_React$Component); - - - - - - -function YellowBox(props,context){babelHelpers.classCallCheck(this,YellowBox);var _this=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(YellowBox).call(this, -props,context)); -_this.state={ -inspecting:null, -warningMap:_warningMap}; - -_this.dismissWarning=function(warning){var _this$state= -_this.state;var inspecting=_this$state.inspecting;var warningMap=_this$state.warningMap; -if(warning){ -warningMap.delete(warning);}else -{ -warningMap.clear();} - -_this.setState({ -inspecting:warning&&inspecting!==warning?inspecting:null, -warningMap:warningMap});};return _this;}babelHelpers.createClass(YellowBox,[{key:'componentDidMount',value:function componentDidMount() - - - - -{var _this2=this; -var scheduled=null; -this._listener=_warningEmitter.addListener('warning',function(warningMap){ - - -scheduled=scheduled||setImmediate(function(){ -scheduled=null; -_this2.setState({ -warningMap:warningMap});});});}},{key:'componentWillUnmount',value:function componentWillUnmount() - - - - - -{ -if(this._listener){ -this._listener.remove();}}},{key:'render',value:function render() - - - -{var _this3=this; -if(console.disableYellowBox||this.state.warningMap.size===0){ -return null;} - -var ScrollView=require('ScrollView'); -var View=require('View'); - -var inspecting=this.state.inspecting; -var inspector=inspecting!==null? -React.createElement(WarningInspector,{ -count:this.state.warningMap.get(inspecting), -warning:inspecting, -onClose:function(){return _this3.setState({inspecting:null});}, -onDismiss:function(){return _this3.dismissWarning(inspecting);}, -onDismissAll:function(){return _this3.dismissWarning(null);}}): - -null; - -var rows=[]; -this.state.warningMap.forEach(function(count,warning){ -if(!isWarningIgnored(warning)){ -rows.push( -React.createElement(WarningRow,{ -key:warning, -count:count, -warning:warning, -onPress:function(){return _this3.setState({inspecting:warning});}, -onDismiss:function(){return _this3.dismissWarning(warning);}}));}}); - - - - - -var listStyle=[ -styles.list, - -{height:Math.min(rows.length,4.4)*(rowGutter+rowHeight)}]; - -return ( -React.createElement(View,{style:inspector?styles.fullScreen:listStyle}, -React.createElement(ScrollView,{style:listStyle}, -rows), - -inspector));}}]);return YellowBox;})(React.Component); - - - - - -var backgroundColor=function(opacity){return 'rgba(250, 186, 48, '+opacity+')';}; -var textColor='white'; -var rowGutter=1; -var rowHeight=46; - -var styles=StyleSheet.create({ -fullScreen:{ -backgroundColor:'transparent', -position:'absolute', -left:0, -right:0, -top:0, -bottom:0}, - -inspector:{ -backgroundColor:backgroundColor(0.95), -flex:1}, - -inspectorContainer:{ -flex:1}, - -inspectorButtons:{ -flexDirection:'row', -position:'absolute', -left:0, -right:0, -bottom:0}, - -inspectorButton:{ -flex:1, -padding:22}, - -inspectorButtonText:{ -color:textColor, -fontSize:14, -opacity:0.8, -textAlign:'center'}, - -inspectorContent:{ -flex:1, -paddingTop:5}, - -inspectorCount:{ -padding:15, -paddingBottom:0}, - -inspectorCountText:{ -color:textColor, -fontSize:14}, - -inspectorWarning:{ -padding:15, -position:'absolute', -top:39, -bottom:60}, - -inspectorWarningText:{ -color:textColor, -fontSize:16, -fontWeight:'600'}, - -list:{ -backgroundColor:'transparent', -position:'absolute', -left:0, -right:0, -bottom:0}, - -listRow:{ -position:'relative', -backgroundColor:backgroundColor(0.95), -flex:1, -height:rowHeight, -marginTop:rowGutter}, - -listRowContent:{ -flex:1}, - -listRowCount:{ -color:'rgba(255, 255, 255, 0.5)'}, - -listRowText:{ -color:textColor, -position:'absolute', -left:0, -top:Platform.OS==='android'?5:7, -marginLeft:15, -marginRight:15}}); - - - -module.exports=YellowBox; -}); -__d('RCTRenderingPerf',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var ReactDefaultPerf=require('ReactDefaultPerf'); - -var invariant=require('invariant'); - - - - - - -var perfModules=[]; -var enabled=false; - -var RCTRenderingPerf={ - -toggle:function(){ -console.log('Render perfomance measurements enabled'); -enabled=true;}, - - -start:function(){ -if(!enabled){ -return;} - - -ReactDefaultPerf.start(); -perfModules.forEach(function(module){return module.start();});}, - - -stop:function(){ -if(!enabled){ -return;} - - -ReactDefaultPerf.stop(); -ReactDefaultPerf.printInclusive(); -ReactDefaultPerf.printWasted(); - -var totalRender=0; -var totalTime=0; -var measurements=ReactDefaultPerf.getLastMeasurements(); -for(var ii=0;ii component':item.componentName, -'Inclusive time (ms)':roundFloat(item.time), -'Instances':item.count};})); - - -console.log( -'Total time:', -ReactDefaultPerfAnalysis.getTotalTime(measurements).toFixed(2)+' ms');}, - - - -getMeasurementsSummaryMap:function(measurements){ -var summary=ReactDefaultPerfAnalysis.getInclusiveSummary( -measurements, -true); - -return summary.map(function(item){ -return { -'Owner > component':item.componentName, -'Wasted time (ms)':item.time, -'Instances':item.count};});}, - - - - -printWasted:function(measurements){ -measurements=measurements||ReactDefaultPerf._allMeasurements; -console.table(ReactDefaultPerf.getMeasurementsSummaryMap(measurements)); -console.log( -'Total time:', -ReactDefaultPerfAnalysis.getTotalTime(measurements).toFixed(2)+' ms');}, - - - -printDOM:function(measurements){ -measurements=measurements||ReactDefaultPerf._allMeasurements; -var summary=ReactDefaultPerfAnalysis.getDOMSummary(measurements); -console.table(summary.map(function(item){ -var result={}; -result[DOMProperty.ID_ATTRIBUTE_NAME]=item.id; -result.type=item.type; -result.args=JSON.stringify(item.args); -return result;})); - -console.log( -'Total time:', -ReactDefaultPerfAnalysis.getTotalTime(measurements).toFixed(2)+' ms');}, - - - -_recordWrite:function(id,fnName,totalTime,args){ - -var writes= -ReactDefaultPerf. -_allMeasurements[ReactDefaultPerf._allMeasurements.length-1]. -writes; -writes[id]=writes[id]||[]; -writes[id].push({ -type:fnName, -time:totalTime, -args:args});}, - - - -measure:function(moduleName,fnName,func){ -return function(){for(var _len=arguments.length,args=Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];} -var totalTime; -var rv; -var start; - -if(fnName==='_renderNewRootComponent'|| -fnName==='flushBatchedUpdates'){ - - - - -ReactDefaultPerf._allMeasurements.push({ -exclusive:{}, -inclusive:{}, -render:{}, -counts:{}, -writes:{}, -displayNames:{}, -totalTime:0, -created:{}}); - -start=performanceNow(); -rv=func.apply(this,args); -ReactDefaultPerf._allMeasurements[ -ReactDefaultPerf._allMeasurements.length-1]. -totalTime=performanceNow()-start; -return rv;}else -if(fnName==='_mountImageIntoNode'|| -moduleName==='ReactBrowserEventEmitter'|| -moduleName==='ReactDOMIDOperations'|| -moduleName==='CSSPropertyOperations'|| -moduleName==='DOMChildrenOperations'|| -moduleName==='DOMPropertyOperations'){ -start=performanceNow(); -rv=func.apply(this,args); -totalTime=performanceNow()-start; - -if(fnName==='_mountImageIntoNode'){ -var mountID=ReactMount.getID(args[1]); -ReactDefaultPerf._recordWrite(mountID,fnName,totalTime,args[0]);}else -if(fnName==='dangerouslyProcessChildrenUpdates'){ - -args[0].forEach(function(update){ -var writeArgs={}; -if(update.fromIndex!==null){ -writeArgs.fromIndex=update.fromIndex;} - -if(update.toIndex!==null){ -writeArgs.toIndex=update.toIndex;} - -if(update.textContent!==null){ -writeArgs.textContent=update.textContent;} - -if(update.markupIndex!==null){ -writeArgs.markup=args[1][update.markupIndex];} - -ReactDefaultPerf._recordWrite( -update.parentID, -update.type, -totalTime, -writeArgs);});}else - - -{ - -var id=args[0]; -if(typeof id==='object'){ -id=ReactMount.getID(args[0]);} - -ReactDefaultPerf._recordWrite( -id, -fnName, -totalTime, -Array.prototype.slice.call(args,1));} - - -return rv;}else -if(moduleName==='ReactCompositeComponent'&&( -fnName==='mountComponent'|| -fnName==='updateComponent'|| -fnName==='_renderValidatedComponent')){ - -if(this._currentElement.type===ReactMount.TopLevelWrapper){ -return func.apply(this,args);} - - -var rootNodeID=fnName==='mountComponent'? -args[0]: -this._rootNodeID; -var isRender=fnName==='_renderValidatedComponent'; -var isMount=fnName==='mountComponent'; - -var mountStack=ReactDefaultPerf._mountStack; -var entry=ReactDefaultPerf._allMeasurements[ -ReactDefaultPerf._allMeasurements.length-1]; - - -if(isRender){ -addValue(entry.counts,rootNodeID,1);}else -if(isMount){ -entry.created[rootNodeID]=true; -mountStack.push(0);} - - -start=performanceNow(); -rv=func.apply(this,args); -totalTime=performanceNow()-start; - -if(isRender){ -addValue(entry.render,rootNodeID,totalTime);}else -if(isMount){ -var subMountTime=mountStack.pop(); -mountStack[mountStack.length-1]+=totalTime; -addValue(entry.exclusive,rootNodeID,totalTime-subMountTime); -addValue(entry.inclusive,rootNodeID,totalTime);}else -{ -addValue(entry.inclusive,rootNodeID,totalTime);} - - -entry.displayNames[rootNodeID]={ -current:this.getName(), -owner:this._currentElement._owner? -this._currentElement._owner.getName(): -''}; - - -return rv;}else -{ -return func.apply(this,args);}};}}; - - - - - -module.exports=ReactDefaultPerf; -}); -__d('DOMProperty',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var invariant=require('invariant'); - -function checkMask(value,bitmask){ -return (value&bitmask)===bitmask;} - - -var DOMPropertyInjection={ - - - - -MUST_USE_ATTRIBUTE:0x1, -MUST_USE_PROPERTY:0x2, -HAS_SIDE_EFFECTS:0x4, -HAS_BOOLEAN_VALUE:0x8, -HAS_NUMERIC_VALUE:0x10, -HAS_POSITIVE_NUMERIC_VALUE:0x20|0x10, -HAS_OVERLOADED_BOOLEAN_VALUE:0x40, - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -injectDOMPropertyConfig:function(domPropertyConfig){ -var Injection=DOMPropertyInjection; -var Properties=domPropertyConfig.Properties||{}; -var DOMAttributeNamespaces=domPropertyConfig.DOMAttributeNamespaces||{}; -var DOMAttributeNames=domPropertyConfig.DOMAttributeNames||{}; -var DOMPropertyNames=domPropertyConfig.DOMPropertyNames||{}; -var DOMMutationMethods=domPropertyConfig.DOMMutationMethods||{}; - -if(domPropertyConfig.isCustomAttribute){ -DOMProperty._isCustomAttributeFunctions.push( -domPropertyConfig.isCustomAttribute);} - - - -for(var propName in Properties){ -invariant( -!DOMProperty.properties.hasOwnProperty(propName), -'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.', -propName); - - -var lowerCased=propName.toLowerCase(); -var propConfig=Properties[propName]; - -var propertyInfo={ -attributeName:lowerCased, -attributeNamespace:null, -propertyName:propName, -mutationMethod:null, - -mustUseAttribute:checkMask(propConfig,Injection.MUST_USE_ATTRIBUTE), -mustUseProperty:checkMask(propConfig,Injection.MUST_USE_PROPERTY), -hasSideEffects:checkMask(propConfig,Injection.HAS_SIDE_EFFECTS), -hasBooleanValue:checkMask(propConfig,Injection.HAS_BOOLEAN_VALUE), -hasNumericValue:checkMask(propConfig,Injection.HAS_NUMERIC_VALUE), -hasPositiveNumericValue: -checkMask(propConfig,Injection.HAS_POSITIVE_NUMERIC_VALUE), -hasOverloadedBooleanValue: -checkMask(propConfig,Injection.HAS_OVERLOADED_BOOLEAN_VALUE)}; - - -invariant( -!propertyInfo.mustUseAttribute||!propertyInfo.mustUseProperty, -'DOMProperty: Cannot require using both attribute and property: %s', -propName); - -invariant( -propertyInfo.mustUseProperty||!propertyInfo.hasSideEffects, -'DOMProperty: Properties that have side effects must use property: %s', -propName); - -invariant( -propertyInfo.hasBooleanValue+propertyInfo.hasNumericValue+ -propertyInfo.hasOverloadedBooleanValue<=1, -'DOMProperty: Value can be one of boolean, overloaded boolean, or '+ -'numeric value, but not a combination: %s', -propName); - - -if(__DEV__){ -DOMProperty.getPossibleStandardName[lowerCased]=propName;} - - -if(DOMAttributeNames.hasOwnProperty(propName)){ -var attributeName=DOMAttributeNames[propName]; -propertyInfo.attributeName=attributeName; -if(__DEV__){ -DOMProperty.getPossibleStandardName[attributeName]=propName;}} - - - -if(DOMAttributeNamespaces.hasOwnProperty(propName)){ -propertyInfo.attributeNamespace=DOMAttributeNamespaces[propName];} - - -if(DOMPropertyNames.hasOwnProperty(propName)){ -propertyInfo.propertyName=DOMPropertyNames[propName];} - - -if(DOMMutationMethods.hasOwnProperty(propName)){ -propertyInfo.mutationMethod=DOMMutationMethods[propName];} - - -DOMProperty.properties[propName]=propertyInfo;}}}; - - - -var defaultValueCache={}; - - - - - - - - - - - - - - -var DOMProperty={ - -ID_ATTRIBUTE_NAME:'data-reactid', - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -properties:{}, - - - - - - -getPossibleStandardName:__DEV__?{}:null, - - - - -_isCustomAttributeFunctions:[], - - - - - -isCustomAttribute:function(attributeName){ -for(var i=0;i=DONT_CARE_THRESHOLD){ -arr.push(candidates[displayName]);}} - - - -arr.sort(function(a,b){ -return b.exclusive-a.exclusive;}); - - -return arr;} - - -function getInclusiveSummary(measurements,onlyClean){ -var candidates={}; -var inclusiveKey; - -for(var i=0;i '+displayName.current; - -candidates[inclusiveKey]=candidates[inclusiveKey]||{ -componentName:inclusiveKey, -time:0, -count:0}; - - -if(measurement.inclusive[id]){ -candidates[inclusiveKey].time+=measurement.inclusive[id];} - -if(measurement.counts[id]){ -candidates[inclusiveKey].count+=measurement.counts[id];}}} - - - - - -var arr=[]; -for(inclusiveKey in candidates){ -if(candidates[inclusiveKey].time>=DONT_CARE_THRESHOLD){ -arr.push(candidates[inclusiveKey]);}} - - - -arr.sort(function(a,b){ -return b.time-a.time;}); - - -return arr;} - - -function getUnchangedComponents(measurement){ - - - -var cleanComponents={}; -var dirtyLeafIDs=Object.keys(measurement.writes); -var allIDs=assign({},measurement.exclusive,measurement.inclusive); - -for(var id in allIDs){ -var isDirty=false; - - -for(var i=0;i0){ -cleanComponents[id]=true;}} - - -return cleanComponents;} - - -var ReactDefaultPerfAnalysis={ -getExclusiveSummary:getExclusiveSummary, -getInclusiveSummary:getInclusiveSummary, -getDOMSummary:getDOMSummary, -getTotalTime:getTotalTime}; - - -module.exports=ReactDefaultPerfAnalysis; -}); -__d('ReactMount',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var DOMProperty=require('DOMProperty'); -var ReactBrowserEventEmitter=require('ReactBrowserEventEmitter'); -var ReactCurrentOwner=require('ReactCurrentOwner'); -var ReactDOMFeatureFlags=require('ReactDOMFeatureFlags'); -var ReactElement=require('ReactElement'); -var ReactEmptyComponentRegistry=require('ReactEmptyComponentRegistry'); -var ReactInstanceHandles=require('ReactInstanceHandles'); -var ReactInstanceMap=require('ReactInstanceMap'); -var ReactMarkupChecksum=require('ReactMarkupChecksum'); -var ReactPerf=require('ReactPerf'); -var ReactReconciler=require('ReactReconciler'); -var ReactUpdateQueue=require('ReactUpdateQueue'); -var ReactUpdates=require('ReactUpdates'); - -var assign=require('Object.assign'); -var emptyObject=require('emptyObject'); -var containsNode=require('containsNode'); -var instantiateReactComponent=require('instantiateReactComponent'); -var invariant=require('invariant'); -var setInnerHTML=require('setInnerHTML'); -var shouldUpdateReactComponent=require('shouldUpdateReactComponent'); -var validateDOMNesting=require('validateDOMNesting'); -var warning=require('warning'); - -var ATTR_NAME=DOMProperty.ID_ATTRIBUTE_NAME; -var nodeCache={}; - -var ELEMENT_NODE_TYPE=1; -var DOC_NODE_TYPE=9; -var DOCUMENT_FRAGMENT_NODE_TYPE=11; - -var ownerDocumentContextKey= -'__ReactMount_ownerDocument$'+Math.random().toString(36).slice(2); - - - -var instancesByReactRootID={}; - - -var containersByReactRootID={}; - -if(__DEV__){ - -var rootElementsByReactRootID={};} - - - -var findComponentRootReusableArray=[]; - - - - - - - -function firstDifferenceIndex(string1,string2){ -var minLen=Math.min(string1.length,string2.length); -for(var i=0;i 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`.', -targetID, -ReactMount.getID(ancestorNode));}, - - - -_mountImageIntoNode:function( -markup, -container, -shouldReuseMarkup, -transaction) -{ -invariant( -container&&( -container.nodeType===ELEMENT_NODE_TYPE|| -container.nodeType===DOC_NODE_TYPE|| -container.nodeType===DOCUMENT_FRAGMENT_NODE_TYPE), - -'mountComponentIntoNode(...): Target container is not valid.'); - - -if(shouldReuseMarkup){ -var rootElement=getReactRootElementInContainer(container); -if(ReactMarkupChecksum.canReuseMarkup(markup,rootElement)){ -return;}else -{ -var checksum=rootElement.getAttribute( -ReactMarkupChecksum.CHECKSUM_ATTR_NAME); - -rootElement.removeAttribute(ReactMarkupChecksum.CHECKSUM_ATTR_NAME); - -var rootMarkup=rootElement.outerHTML; -rootElement.setAttribute( -ReactMarkupChecksum.CHECKSUM_ATTR_NAME, -checksum); - - -var normalizedMarkup=markup; -if(__DEV__){ - - - - -var normalizer; -if(container.nodeType===ELEMENT_NODE_TYPE){ -normalizer=document.createElement('div'); -normalizer.innerHTML=markup; -normalizedMarkup=normalizer.innerHTML;}else -{ -normalizer=document.createElement('iframe'); -document.body.appendChild(normalizer); -normalizer.contentDocument.write(markup); -normalizedMarkup=normalizer.contentDocument.documentElement.outerHTML; -document.body.removeChild(normalizer);}} - - - -var diffIndex=firstDifferenceIndex(normalizedMarkup,rootMarkup); -var difference=' (client) '+ -normalizedMarkup.substring(diffIndex-20,diffIndex+20)+ -'\n (server) '+rootMarkup.substring(diffIndex-20,diffIndex+20); - -invariant( -container.nodeType!==DOC_NODE_TYPE, -'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', -difference); - - -if(__DEV__){ -warning( -false, -'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', -difference);}}} - - - - - -invariant( -container.nodeType!==DOC_NODE_TYPE, -'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 ReactDOMServer.renderToString() for server rendering.'); - - -if(transaction.useCreateElement){ -while(container.lastChild){ -container.removeChild(container.lastChild);} - -container.appendChild(markup);}else -{ -setInnerHTML(container,markup);}}, - - - -ownerDocumentContextKey:ownerDocumentContextKey, - - - - - -getReactRootID:getReactRootID, - -getID:getID, - -setID:setID, - -getNode:getNode, - -getNodeFromInstance:getNodeFromInstance, - -isValid:isValid, - -purgeID:purgeID}; - - -ReactPerf.measureMethods(ReactMount,'ReactMount',{ -_renderNewRootComponent:'_renderNewRootComponent', -_mountImageIntoNode:'_mountImageIntoNode'}); - - -module.exports=ReactMount; -}); -__d('ReactBrowserEventEmitter',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var EventConstants=require('EventConstants'); -var EventPluginHub=require('EventPluginHub'); -var EventPluginRegistry=require('EventPluginRegistry'); -var ReactEventEmitterMixin=require('ReactEventEmitterMixin'); -var ReactPerf=require('ReactPerf'); -var ViewportMetrics=require('ViewportMetrics'); - -var assign=require('Object.assign'); -var isEventSupported=require('isEventSupported'); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var alreadyListeningTo={}; -var isMonitoringScrollValue=false; -var reactTopListenersCounter=0; - - - - -var topEventMapping={ -topAbort:'abort', -topBlur:'blur', -topCanPlay:'canplay', -topCanPlayThrough:'canplaythrough', -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', -topDurationChange:'durationchange', -topEmptied:'emptied', -topEncrypted:'encrypted', -topEnded:'ended', -topError:'error', -topFocus:'focus', -topInput:'input', -topKeyDown:'keydown', -topKeyPress:'keypress', -topKeyUp:'keyup', -topLoadedData:'loadeddata', -topLoadedMetadata:'loadedmetadata', -topLoadStart:'loadstart', -topMouseDown:'mousedown', -topMouseMove:'mousemove', -topMouseOut:'mouseout', -topMouseOver:'mouseover', -topMouseUp:'mouseup', -topPaste:'paste', -topPause:'pause', -topPlay:'play', -topPlaying:'playing', -topProgress:'progress', -topRateChange:'ratechange', -topScroll:'scroll', -topSeeked:'seeked', -topSeeking:'seeking', -topSelectionChange:'selectionchange', -topStalled:'stalled', -topSuspend:'suspend', -topTextInput:'textInput', -topTimeUpdate:'timeupdate', -topTouchCancel:'touchcancel', -topTouchEnd:'touchend', -topTouchMove:'touchmove', -topTouchStart:'touchstart', -topVolumeChange:'volumechange', -topWaiting:'waiting', -topWheel:'wheel'}; - - - - - -var topListenersIDKey='_reactListenersID'+String(Math.random()).slice(2); - -function getListeningForDocument(mountAt){ - - -if(!Object.prototype.hasOwnProperty.call(mountAt,topListenersIDKey)){ -mountAt[topListenersIDKey]=reactTopListenersCounter++; -alreadyListeningTo[mountAt[topListenersIDKey]]={};} - -return alreadyListeningTo[mountAt[topListenersIDKey]];} - - - - - - - - - - - - -var ReactBrowserEventEmitter=assign({},ReactEventEmitterMixin,{ - - - - -ReactEventListener:null, - -injection:{ - - - -injectReactEventListener:function(ReactEventListener){ -ReactEventListener.setHandleTopLevel( -ReactBrowserEventEmitter.handleTopLevel); - -ReactBrowserEventEmitter.ReactEventListener=ReactEventListener;}}, - - - - - - - - -setEnabled:function(enabled){ -if(ReactBrowserEventEmitter.ReactEventListener){ -ReactBrowserEventEmitter.ReactEventListener.setEnabled(enabled);}}, - - - - - - -isEnabled:function(){ -return !!( -ReactBrowserEventEmitter.ReactEventListener&& -ReactBrowserEventEmitter.ReactEventListener.isEnabled());}, - - - - - - - - - - - - - - - - - - - - - - - - -listenTo:function(registrationName,contentDocumentHandle){ -var mountAt=contentDocumentHandle; -var isListening=getListeningForDocument(mountAt); -var dependencies= -EventPluginRegistry.registrationNameDependencies[registrationName]; - -var topLevelTypes=EventConstants.topLevelTypes; -for(var i=0;i/; - -var ReactMarkupChecksum={ -CHECKSUM_ATTR_NAME:'data-react-checksum', - - - - - -addChecksumToMarkup:function(markup){ -var checksum=adler32(markup); - - -return markup.replace( -TAG_END, -' '+ReactMarkupChecksum.CHECKSUM_ATTR_NAME+'="'+checksum+'"$&');}, - - - - - - - - -canReuseMarkup:function(markup,element){ -var existingChecksum=element.getAttribute( -ReactMarkupChecksum.CHECKSUM_ATTR_NAME); - -existingChecksum=existingChecksum&&parseInt(existingChecksum,10); -var markupChecksum=adler32(markup); -return markupChecksum===existingChecksum;}}; - - - -module.exports=ReactMarkupChecksum; -}); -__d('adler32',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var MOD=65521; - - - - - - -function adler32(data){ -var a=1; -var b=0; -var i=0; -var l=data.length; -var m=l&~0x3; -while(i]/; - - - - - - - - - -var setInnerHTML=function(node,html){ -node.innerHTML=html;}; - - - -if(typeof MSApp!=='undefined'&&MSApp.execUnsafeLocalFunction){ -setInnerHTML=function(node,html){ -MSApp.execUnsafeLocalFunction(function(){ -node.innerHTML=html;});};} - - - - -if(ExecutionEnvironment.canUseDOM){ - - - - - - -var testElement=document.createElement('div'); -testElement.innerHTML=' '; -if(testElement.innerHTML===''){ -setInnerHTML=function(node,html){ - - - - - -if(node.parentNode){ -node.parentNode.replaceChild(node,node);} - - - - - - -if(WHITESPACE_TEST.test(html)|| -html[0]==='<'&&NONVISIBLE_TEST.test(html)){ - - - - - - -node.innerHTML=String.fromCharCode(0xFEFF)+html; - - - -var textNode=node.firstChild; -if(textNode.data.length===1){ -node.removeChild(textNode);}else -{ -textNode.deleteData(0,1);}}else - -{ -node.innerHTML=html;}};}} - - - - - -module.exports=setInnerHTML; -}); -__d('validateDOMNesting',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var assign=require('Object.assign'); -var emptyFunction=require('emptyFunction'); -var warning=require('warning'); - -var validateDOMNesting=emptyFunction; - -if(__DEV__){ - - - - - - - - - - - - -var specialTags=[ -'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']; - - - -var inScopeTags=[ -'applet','caption','html','table','td','th','marquee','object', -'template', - - - - -'foreignObject','desc','title']; - - - -var buttonScopeTags=inScopeTags.concat(['button']); - - -var impliedEndTags= -['dd','dt','li','option','optgroup','p','rp','rt']; - -var emptyAncestorInfo={ -parentTag:null, - -formTag:null, -aTagInScope:null, -buttonTagInScope:null, -nobrTagInScope:null, -pTagInButtonScope:null, - -listItemTagAutoclosing:null, -dlItemTagAutoclosing:null}; - - -var updatedAncestorInfo=function(oldInfo,tag,instance){ -var ancestorInfo=assign({},oldInfo||emptyAncestorInfo); -var info={tag:tag,instance:instance}; - -if(inScopeTags.indexOf(tag)!==-1){ -ancestorInfo.aTagInScope=null; -ancestorInfo.buttonTagInScope=null; -ancestorInfo.nobrTagInScope=null;} - -if(buttonScopeTags.indexOf(tag)!==-1){ -ancestorInfo.pTagInButtonScope=null;} - - - - -if( -specialTags.indexOf(tag)!==-1&& -tag!=='address'&&tag!=='div'&&tag!=='p') -{ -ancestorInfo.listItemTagAutoclosing=null; -ancestorInfo.dlItemTagAutoclosing=null;} - - -ancestorInfo.parentTag=info; - -if(tag==='form'){ -ancestorInfo.formTag=info;} - -if(tag==='a'){ -ancestorInfo.aTagInScope=info;} - -if(tag==='button'){ -ancestorInfo.buttonTagInScope=info;} - -if(tag==='nobr'){ -ancestorInfo.nobrTagInScope=info;} - -if(tag==='p'){ -ancestorInfo.pTagInButtonScope=info;} - -if(tag==='li'){ -ancestorInfo.listItemTagAutoclosing=info;} - -if(tag==='dd'||tag==='dt'){ -ancestorInfo.dlItemTagAutoclosing=info;} - - -return ancestorInfo;}; - - - - - -var isTagValidWithParent=function(tag,parentTag){ - -switch(parentTag){ - -case 'select': -return tag==='option'||tag==='optgroup'||tag==='#text'; -case 'optgroup': -return tag==='option'||tag==='#text'; - - -case 'option': -return tag==='#text'; - - - - - - - -case 'tr': -return ( -tag==='th'||tag==='td'||tag==='style'||tag==='script'|| -tag==='template'); - - - -case 'tbody': -case 'thead': -case 'tfoot': -return ( -tag==='tr'||tag==='style'||tag==='script'|| -tag==='template'); - - - -case 'colgroup': -return tag==='col'||tag==='template'; - - -case 'table': -return ( -tag==='caption'||tag==='colgroup'||tag==='tbody'|| -tag==='tfoot'||tag==='thead'||tag==='style'|| -tag==='script'||tag==='template'); - - - -case 'head': -return ( -tag==='base'||tag==='basefont'||tag==='bgsound'|| -tag==='link'||tag==='meta'||tag==='title'|| -tag==='noscript'||tag==='noframes'||tag==='style'|| -tag==='script'||tag==='template'); - - - -case 'html': -return tag==='head'||tag==='body';} - - - - - -switch(tag){ -case 'h1': -case 'h2': -case 'h3': -case 'h4': -case 'h5': -case 'h6': -return ( -parentTag!=='h1'&&parentTag!=='h2'&&parentTag!=='h3'&& -parentTag!=='h4'&&parentTag!=='h5'&&parentTag!=='h6'); - - -case 'rp': -case 'rt': -return impliedEndTags.indexOf(parentTag)===-1; - -case 'caption': -case 'col': -case 'colgroup': -case 'frame': -case 'head': -case 'tbody': -case 'td': -case 'tfoot': -case 'th': -case 'thead': -case 'tr': - - - - -return parentTag==null;} - - -return true;}; - - - - - -var findInvalidAncestorForTag=function(tag,ancestorInfo){ -switch(tag){ -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 ancestorInfo.pTagInButtonScope; - -case 'form': -return ancestorInfo.formTag||ancestorInfo.pTagInButtonScope; - -case 'li': -return ancestorInfo.listItemTagAutoclosing; - -case 'dd': -case 'dt': -return ancestorInfo.dlItemTagAutoclosing; - -case 'button': -return ancestorInfo.buttonTagInScope; - -case 'a': - - -return ancestorInfo.aTagInScope; - -case 'nobr': -return ancestorInfo.nobrTagInScope;} - - -return null;}; - - - - - - -var findOwnerStack=function(instance){ -if(!instance){ -return [];} - - -var stack=[]; - -do { - -stack.push(instance);}while( -instance=instance._currentElement._owner); -stack.reverse(); -return stack;}; - - -var didWarn={}; - -validateDOMNesting=function(childTag,childInstance,ancestorInfo){ -ancestorInfo=ancestorInfo||emptyAncestorInfo; -var parentInfo=ancestorInfo.parentTag; -var parentTag=parentInfo&&parentInfo.tag; - -var invalidParent= -isTagValidWithParent(childTag,parentTag)?null:parentInfo; -var invalidAncestor= -invalidParent?null:findInvalidAncestorForTag(childTag,ancestorInfo); -var problematic=invalidParent||invalidAncestor; - -if(problematic){ -var ancestorTag=problematic.tag; -var ancestorInstance=problematic.instance; - -var childOwner=childInstance&&childInstance._currentElement._owner; -var ancestorOwner= -ancestorInstance&&ancestorInstance._currentElement._owner; - -var childOwners=findOwnerStack(childOwner); -var ancestorOwners=findOwnerStack(ancestorOwner); - -var minStackLen=Math.min(childOwners.length,ancestorOwners.length); -var i; - -var deepestCommon=-1; -for(i=0;i '); - -var warnKey= -!!invalidParent+'|'+childTag+'|'+ancestorTag+'|'+ownerInfo; -if(didWarn[warnKey]){ -return;} - -didWarn[warnKey]=true; - -if(invalidParent){ -var info=''; -if(ancestorTag==='table'&&childTag==='tr'){ -info+= -' Add a to your code to match the DOM tree generated by '+ -'the browser.';} - -warning( -false, -'validateDOMNesting(...): <%s> cannot appear as a child of <%s>. '+ -'See %s.%s', -childTag, -ancestorTag, -ownerInfo, -info);}else - -{ -warning( -false, -'validateDOMNesting(...): <%s> cannot appear as a descendant of '+ -'<%s>. See %s.', -childTag, -ancestorTag, -ownerInfo);}}}; - - - - - -validateDOMNesting.ancestorInfoContextKey= -'__validateDOMNesting_ancestorInfo$'+Math.random().toString(36).slice(2); - -validateDOMNesting.updatedAncestorInfo=updatedAncestorInfo; - - -validateDOMNesting.isTagValidInContext=function(tag,ancestorInfo){ -ancestorInfo=ancestorInfo||emptyAncestorInfo; -var parentInfo=ancestorInfo.parentTag; -var parentTag=parentInfo&&parentInfo.tag; -return ( -isTagValidWithParent(tag,parentTag)&& -!findInvalidAncestorForTag(tag,ancestorInfo));};} - - - - -module.exports=validateDOMNesting; -}); -__d('AppStateIOS',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - -var Map=require('Map'); -var NativeModules=require('NativeModules'); -var RCTDeviceEventEmitter=require('RCTDeviceEventEmitter'); -var RCTAppState=NativeModules.AppState; - -var logError=require('logError'); -var invariant=require('invariant'); - -var _eventHandlers={ -change:new Map(), -memoryWarning:new Map()}; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var AppStateIOS={ - - - - - -addEventListener:function( -type, -handler) -{ -invariant( -['change','memoryWarning'].indexOf(type)!==-1, -'Trying to subscribe to unknown event: "%s"',type); - -if(type==='change'){ -_eventHandlers[type].set(handler,RCTDeviceEventEmitter.addListener( -'appStateDidChange', -function(appStateData){ -handler(appStateData.app_state);}));}else - - -if(type==='memoryWarning'){ -_eventHandlers[type].set(handler,RCTDeviceEventEmitter.addListener( -'memoryWarning', -handler));}}, - - - - - - - -removeEventListener:function( -type, -handler) -{ -invariant( -['change','memoryWarning'].indexOf(type)!==-1, -'Trying to remove listener for unknown event: "%s"',type); - -if(!_eventHandlers[type].has(handler)){ -return;} - -_eventHandlers[type].get(handler).remove(); -_eventHandlers[type].delete(handler);}, - - - - - - -currentState:'active'}; - - - -RCTDeviceEventEmitter.addListener( -'appStateDidChange', -function(appStateData){ -AppStateIOS.currentState=appStateData.app_state;}); - - - -RCTAppState.getCurrentAppState( -function(appStateData){ -AppStateIOS.currentState=appStateData.app_state;}, - -logError); - - -module.exports=AppStateIOS; -}); -__d('AsyncStorage',function(global, require, module, exports) { 'use strict'; - - - - - - - - - - - - - -var NativeModules=require('NativeModules'); -var RCTAsyncSQLiteStorage=NativeModules.AsyncSQLiteDBStorage; -var RCTAsyncRocksDBStorage=NativeModules.AsyncRocksDBStorage; -var RCTAsyncFileStorage=NativeModules.AsyncLocalStorage; - - -var RCTAsyncStorage=RCTAsyncRocksDBStorage||RCTAsyncSQLiteStorage||RCTAsyncFileStorage; - - - - - - - - - - - - - -var AsyncStorage={ -_getRequests:[], -_getKeys:[], -_immediate:null, - - - - - -getItem:function( -key, -callback) -{ -return new Promise(function(resolve,reject){ -RCTAsyncStorage.multiGet([key],function(errors,result){ - -var value=result&&result[0]&&result[0][1]?result[0][1]:null; -var errs=convertErrors(errors); -callback&&callback(errs&&errs[0],value); -if(errs){ -reject(errs[0]);}else -{ -resolve(value);}});});}, - - - - - - - - - -setItem:function( -key, -value, -callback) -{ -return new Promise(function(resolve,reject){ -RCTAsyncStorage.multiSet([[key,value]],function(errors){ -var errs=convertErrors(errors); -callback&&callback(errs&&errs[0]); -if(errs){ -reject(errs[0]);}else -{ -resolve(null);}});});}, - - - - - - - - -removeItem:function( -key, -callback) -{ -return new Promise(function(resolve,reject){ -RCTAsyncStorage.multiRemove([key],function(errors){ -var errs=convertErrors(errors); -callback&&callback(errs&&errs[0]); -if(errs){ -reject(errs[0]);}else -{ -resolve(null);}});});}, - - - - - - - - - -mergeItem:function( -key, -value, -callback) -{ -return new Promise(function(resolve,reject){ -RCTAsyncStorage.multiMerge([[key,value]],function(errors){ -var errs=convertErrors(errors); -callback&&callback(errs&&errs[0]); -if(errs){ -reject(errs[0]);}else -{ -resolve(null);}});});}, - - - - - - - - - - -clear:function(callback){ -return new Promise(function(resolve,reject){ -RCTAsyncStorage.clear(function(error){ -callback&&callback(convertError(error)); -if(error&&convertError(error)){ -reject(convertError(error));}else -{ -resolve(null);}});});}, - - - - - - - - -getAllKeys:function(callback){ -return new Promise(function(resolve,reject){ -RCTAsyncStorage.getAllKeys(function(error,keys){ -callback&&callback(convertError(error),keys); -if(error){ -reject(convertError(error));}else -{ -resolve(keys);}});});}, - - - - - - - - - - - - - - - - -flushGetRequests:function(){ -var getRequests=this._getRequests; -var getKeys=this._getKeys; - -this._getRequests=[]; -this._getKeys=[]; - -RCTAsyncStorage.multiGet(getKeys,function(errors,result){ - - - -var reqLength=getRequests.length;var _loop=function( -i){ -var request=getRequests[i]; -var requestKeys=request.keys; -requestResult=result.filter(function(resultPair){ -return requestKeys.indexOf(resultPair[0])!==-1;}); - - -request.callback&&request.callback(null,requestResult); -request.resolve&&request.resolve(requestResult);};for(var i=0;i1){ -for(var ii=1;ii=i.error&&(o=i.warn),e.nativeLoggingHook(r,o)}}function o(t){if(!Array.isArray(t)){var n=t;t=[];for(var o in n)if(n.hasOwnProperty(o)){var a=n[o];a[r]=o,t.push(a)}}if(0===t.length)return void e.nativeLoggingHook("",i.info);var u=Object.keys(t[0]).sort(),l=[],c=[];u.forEach(function(e,n){c[n]=e.length;for(var r=0;r=0||p.indexOf("description")>=0))return o(t);if(0===p.length){if(_(t)){var f=t.name?": "+t.name:"";return e.stylize("[Function"+f+"]","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 o(t)}var d="",m=!1,b=["{","}"];if(l(t)&&(m=!0,b=["[","]"]),_(t)){var S=t.name?": "+t.name:"";d=" [Function"+S+"]"}if(v(t)&&(d=" "+RegExp.prototype.toString.call(t)),g(t)&&(d=" "+Date.prototype.toUTCString.call(t)),y(t)&&(d=" "+o(t)),0===p.length&&(!m||0==t.length))return b[0]+d+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 R;return R=m?s(e,t,r,h,p):p.map(function(n){return a(e,t,r,h,n,m)}),e.seen.pop(),u(R,d,b)}function i(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"):c(t)?e.stylize(""+t,"boolean"):p(t)?e.stylize("null","null"):void 0}function o(e){return"["+Error.prototype.toString.call(e)+"]"}function s(e,t,n,r,i){for(var o=[],s=0,u=t.length;u>s;++s)S(t,String(s))?o.push(a(e,t,n,r,String(s),!0)):o.push("");return i.forEach(function(i){i.match(/^\d+$/)||o.push(a(e,t,n,r,i,!0))}),o}function a(e,t,n,i,o,s){var a,u,l;if(l=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]},l.get?u=l.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):l.set&&(u=e.stylize("[Setter]","special")),S(i,o)||(a="["+o+"]"),u||(e.seen.indexOf(l.value)<0?(u=p(n)?r(e,l.value,null):r(e,l.value,n-1),u.indexOf("\n")>-1&&(u=s?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(a)){if(s&&o.match(/^\d+$/))return u;a=JSON.stringify(""+o),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+u}function u(e,t,n){var r=0,i=e.reduce(function(e,t){return r++,t.indexOf("\n")>=0&&r++,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function l(e){return Array.isArray(e)}function c(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 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)",i={trace:0,info:1,warn:2,error:3};"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(i){n.reportError(i)}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 i(){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||"",i)}};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),i=arguments.length>1?Number(arguments[1])||0:n,o=Math.min(Math.max(i,0),n),s=o-r.length;return 0>s?!1:t.lastIndexOf(r,s)===s}),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,i=0;r>i;i++)if(e.call(t,n[i],i,n))return i;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 i=t.call(this,n,r);return-1===i?e:this[i]}})}(),Array.from||(Array.from=function(e){if(null==e)throw new TypeError("Object is null or undefined");var t,n,r=arguments[1],i=arguments[2],o=this,s=Object(e),a="function"==typeof Symbol?Symbol.iterator:"@@iterator",u="function"==typeof r,l="function"==typeof s[a],c=0;if(l){t="function"==typeof o?new o:[];for(var p,h=s[a]();!(p=h.next()).done;)n=p.value,u&&(n=r.call(i,n,c)),t[c]=n,c+=1;return t.length=c,t}var f=s.length;for((isNaN(f)||0>f)&&(f=0),t="function"==typeof o?new o(f):new Array(f);f>c;)n=s[c],u&&(n=r.call(i,n,c)),t[c]=n,c+=1;return t.length=c,t}),function(e){var t=e.babelHelpers={};t.createRawReactElement=function(){var e="function"==typeof Symbol&&Symbol["for"]&&Symbol["for"]("react.element")||60103;return function(t,n,r){return{$$typeof:e,type:t,key:n,ref:null,props:r,_owner:null}}}(),t.classCallCheck=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},t.createClass=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},t.possibleConstructorReturn=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},t.slicedToArray=function(){function e(e,t){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){i=!0,o=u}finally{try{!r&&a["return"]&&a["return"]()}finally{if(i)throw o}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),t.taggedTemplateLiteral=function(e,t){return Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))},t.toConsumableArray=function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);tr;r++)if(i(e[r],t[r]))return!0}else{for(var o in e)if(i(e[o],t[o]))return!0;for(var s in t)if(void 0===e[s]&&void 0!==t[s])return!0}return!1};n.exports=i}),__d("styleDiffer",function(e,t,n,r){"use strict";function i(e,t){return!o(e,t)}function o(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;n32&&(this._debugInfo[this._callbackID>>5]=null),this._debugInfo[this._callbackID>>1]=[t,n],i&&r.push(this._callbackID),this._callbacks[this._callbackID++]=i,o&&r.push(this._callbackID),this._callbacks[this._callbackID++]=o),this._queue[f].push(t),this._queue[d].push(n),this._queue[v].push(r);var s=(new Date).getTime();e.nativeFlushQueueImmediate&&s-this._lastFlush>=m&&(e.nativeFlushQueueImmediate(this._queue),this._queue=[[],[],[]],this._lastFlush=s)}},{key:"__callFunction",value:function(e,n,r){this._lastFlush=(new Date).getTime(),isFinite(e)&&(n=this._methodTable[e][n],e=this._moduleTable[e]),a.profile(function(){return e+"."+n+"("+h(r)+")"});var i=this._callableModules[e];i||(console.warn("Module is not registered:",e),i=t(e)),i[n].apply(i,r),a.profileEnd()}},{key:"__invokeCallback",value:function(e,t){a.profile(function(){return"MessageQueue.invokeCallback("+e+", "+h(t)+")"}),this._lastFlush=(new Date).getTime();var n=this._callbacks[e];if(!n){var r=this._debugInfo[e>>1],i=r&&this._remoteModuleTable[r[0]],o=r&&this._remoteMethodTable[r[0]][r[1]];c(n,"Callback with id "+e+": "+i+"."+o+"() not found"),n&&g&&console.log("N->JS : ("+JSON.stringify(t)+")")}this._callbacks[-2&e]=null,this._callbacks[1|e]=null,n.apply(null,t),a.profileEnd()}},{key:"_genModulesConfig",value:function(e){if(Array.isArray(e))return e;for(var t=[],n=Object.keys(e),r=0,i=n.length;i>r;r++){var o=n[r],s=e[o],a=[o];s.constants&&a.push(s.constants);var u=s.methods;if(u){for(var l=[],c=[],p=Object.keys(u),h=0,f=p.length;f>h;h++){var d=p[h],v=u[d];l[v.methodID]=d,v.type===y.remoteAsync&&c.push(v.methodID)}l.length&&(a.push(l),c.length&&a.push(c))}t[s.moduleID]=a}return t}},{key:"_genLookupTables",value:function(e,t,n){var r=this;e.forEach(function(e,i){r._genLookup(e,i,t,n)})}},{key:"_genLookup",value:function(e,t,n,r){if(e){var o=void 0,s=void 0;if(i(e)){var a=babelHelpers.slicedToArray(e,3);o=a[0],s=a[2]}else{var u=babelHelpers.slicedToArray(e,2);o=u[0],s=u[1]}n[t]=o,r[t]=babelHelpers["extends"]({},s)}}},{key:"_genModules",value:function(e){var t=this;e.forEach(function(e,n){t._genModule(e,n)})}},{key:"_genModule",value:function(e,t){var n=this;if(e){var r=void 0,s=void 0,a=void 0,u=void 0;if(i(e)){var l=babelHelpers.slicedToArray(e,4);r=l[0],s=l[1],a=l[2],u=l[3]}else{var c=babelHelpers.slicedToArray(e,3);r=c[0],a=c[1],u=c[2]}var p={};return a&&a.forEach(function(e,r){var i=u&&o(u,r)?y.remoteAsync:y.remote;p[e]=n._genMethod(t,r,i)}),babelHelpers["extends"](p,s),s||a||u||(p.moduleID=t),this.RemoteModules[r]=p,p}}},{key:"_genMethod",value:function(e,t,n){var r=null,i=this;return r=n===y.remoteAsync?function(){for(var n=arguments.length,r=Array(n),o=0;n>o;o++)r[o]=arguments[o];return new Promise(function(n,o){i.__nativeCall(e,t,r,n,function(e){var t=s(e);o(t)})})}:function(){for(var n=arguments.length,r=Array(n),o=0;n>o;o++)r[o]=arguments[o];var s=r.length>0?r[r.length-1]:null,a=r.length>1?r[r.length-2]:null,u="function"==typeof s,l="function"==typeof a;l&&c(u,"Cannot have a non-function arg after a function arg.");var p=u+l,h=u?s:null,f=l?a:null;return r=r.slice(0,r.length-p),i.__nativeCall(e,t,r,f,h)},r.type=n,r}},{key:"registerCallableModule",value:function(e,t){this._callableModules[e]=t}}]),n}();n.exports=b}),__d("BridgeProfiling",function(e,t,n,r){"use strict";function i(){return l||(l=t("ReactPerf")),l}var o=1<<17,s=1<<27,a=!1,u=0,l=null,c={setEnabled:function(t){a!==t&&(t?e.nativeTraceBeginLegacy&&e.nativeTraceBeginLegacy(s):e.nativeTraceEndLegacy&&e.nativeTraceEndLegacy(s)),a=t,i().enableMeasure=t},profile:function(t){a&&(t="function"==typeof t?t():t,e.nativeTraceBeginSection(o,t))},profileEnd:function(){a&&e.nativeTraceEndSection(o)},profileAsync:function(t){var n=u;return a&&(u++,t="function"==typeof t?t():t,e.nativeTraceBeginAsyncSection(o,t,n,0)),n},profileAsyncEnd:function(t,n){a&&(t="function"==typeof t?t():t,e.nativeTraceEndAsyncSection(o,t,n,0))},reactPerfMeasure:function(e,t,n){return function(r){if(!a)return n.apply(this,arguments);var i="ReactCompositeComponent"===e&&this.getName()||"";c.profile(e+"."+t+"("+i+")");var o=n.apply(this,arguments);return c.profileEnd(),o}},swizzleReactPerf:function(){i().injection.injectMeasure(c.reactPerfMeasure)},attachToRelayProfiler:function(e){e.attachProfileHandler("*",function(e){var t=c.profileAsync(e);return function(){c.profileAsyncEnd(e,t)}})},swizzleJSON:function(){c.measureMethods(JSON,"JSON",["parse","stringify"])},measureMethods:function(e,t,n){},measure:function(e,t,n){return n}};c.setEnabled(e.__RCTProfileIsProfiling||!1),n.exports=c}),__d("ReactPerf",function(e,t,n,r){"use strict";function i(e,t,n){return n}var o={enableMeasure:!1,storedMeasure:i,measureMethods:function(e,t,n){},measure:function(e,t,n){return n},injection:{injectMeasure:function(e){o.storedMeasure=e}}};n.exports=o}),__d("ErrorUtils",function(e,t,n,r){var i=this;n.exports=i.ErrorUtils}),__d("JSTimersExecution",function(e,t,n,r){"use strict";var i=t("invariant"),o=t("keyMirror"),s=t("performanceNow"),a=t("warning"),u=t("BridgeProfiling"),l={GUID:1,Type:o({setTimeout:null,setInterval:null,requestAnimationFrame:null,setImmediate:null}),callbacks:[],types:[],timerIDs:[],immediates:[],callTimer:function(e){a(e<=l.GUID,"Tried to call timer with ID "+e+" but no such timer exists");var t=l.timerIDs.indexOf(e);if(-1!==t){var n=l.types[t],r=l.callbacks[t];(n===l.Type.setTimeout||n===l.Type.setImmediate||n===l.Type.requestAnimationFrame)&&l._clearIndex(t);try{if(n===l.Type.setTimeout||n===l.Type.setInterval||n===l.Type.setImmediate)r();else{if(n!==l.Type.requestAnimationFrame)return void console.error("Tried to call a callback with invalid type: "+n);var i=s();r(i)}}catch(o){l.errors=l.errors||[],l.errors.push(o)}}},callTimers:function(e){i(0!==e.length,'Probably shouldn\'t call "callTimers" with no timerIDs'),l.errors=null,e.forEach(l.callTimer);var n=l.errors;if(n){var r=n.length;if(r>1)for(var o=1;r>o;o++)t("JSTimers").setTimeout(function(e){throw e}.bind(null,n[o]),0);throw n[0]}},callImmediatesPass:function(){if(u.profile("JSTimersExecution.callImmediatesPass()"),l.immediates.length>0){var e=l.immediates.slice();l.immediates=[];for(var t=0;t0},callImmediates:function(){for(l.errors=null;l.callImmediatesPass(););l.errors&&l.errors.forEach(function(e){return t("JSTimers").setTimeout(function(){throw e},0)})},_clearIndex:function(e){l.timerIDs[e]=null,l.callbacks[e]=null,l.types[e]=null}};n.exports=l}),__d("keyMirror",function(e,t,n,r){"use strict";var i=t("invariant"),o=function(e){var t,n={};i(e instanceof Object&&!Array.isArray(e),"keyMirror(...): Argument must be an object.");for(t in e)e.hasOwnProperty(t)&&(n[t]=t);return n};n.exports=o}),__d("performanceNow",function(e,t,n,r){var i=t("performance"),o=i;o&&o.now||(o=Date);var s=o.now.bind(o);n.exports=s}),__d("performance",function(e,t,n,r){"use strict";var i,o=t("ExecutionEnvironment");o.canUseDOM&&(i=window.performance||window.msPerformance||window.webkitPerformance),n.exports=i||{}}),__d("ExecutionEnvironment",function(e,t,n,r){"use strict";var i=!1,o={canUseDOM:i,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:i&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:i&&!!window.screen,isInWorker:!i};n.exports=o}),__d("warning",function(e,t,n,r){"use strict";var i=t("emptyFunction"),o=i;n.exports=o}),__d("emptyFunction",function(e,t,n,r){function i(e){return function(){return e; -}}function o(){}o.thatReturns=i,o.thatReturnsFalse=i(!1),o.thatReturnsTrue=i(!0),o.thatReturnsNull=i(null),o.thatReturnsThis=function(){return this},o.thatReturnsArgument=function(e){return e},n.exports=o}),__d("JSTimers",function(e,t,n,r){"use strict";var i=t("NativeModules").Timing,o=t("JSTimersExecution"),s={Types:o.Types,_getFreeIndex:function(){var e=o.timerIDs.indexOf(null);return-1===e&&(e=o.timerIDs.length),e},setTimeout:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),a=2;n>a;a++)r[a-2]=arguments[a];var u=o.GUID++,l=s._getFreeIndex();return o.timerIDs[l]=u,o.callbacks[l]=function(){return e.apply(void 0,r)},o.types[l]=o.Type.setTimeout,i.createTimer(u,t||0,Date.now(),!1),u},setInterval:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),a=2;n>a;a++)r[a-2]=arguments[a];var u=o.GUID++,l=s._getFreeIndex();return o.timerIDs[l]=u,o.callbacks[l]=function(){return e.apply(void 0,r)},o.types[l]=o.Type.setInterval,i.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 i=o.GUID++,a=s._getFreeIndex();return o.timerIDs[a]=i,o.callbacks[a]=function(){return e.apply(void 0,n)},o.types[a]=o.Type.setImmediate,o.immediates.push(i),i},requestAnimationFrame:function(e){var t=o.GUID++,n=s._getFreeIndex();return o.timerIDs[n]=t,o.callbacks[n]=e,o.types[n]=o.Type.requestAnimationFrame,i.createTimer(t,1,Date.now(),!1),t},clearTimeout:function(e){s._clearTimerID(e)},clearInterval:function(e){s._clearTimerID(e)},clearImmediate:function(e){s._clearTimerID(e),o.immediates.splice(o.immediates.indexOf(e),1)},cancelAnimationFrame:function(e){s._clearTimerID(e)},_clearTimerID:function(e){if(null!=e){var t=o.timerIDs.indexOf(e);-1!==t&&(o._clearIndex(t),o.types[t]!==o.Type.setImmediate&&i.deleteTimer(e))}}};n.exports=s}),__d("stringifySafe",function(e,t,n,r){"use strict";function i(e){var t,n=typeof e;if(void 0===e)t="undefined";else if(null===e)t="null";else if("string"===n)t='"'+e+'"';else if("function"===n)try{t=e.toString()}catch(r){t="[function unknown]"}else try{t=JSON.stringify(e)}catch(r){if("function"==typeof e.toString)try{t=e.toString()}catch(i){}}return t||'["'+n+'" failed to stringify]'}n.exports=i}),__d("findNodeHandle",function(e,t,n,r){"use strict";function i(e){if(null==e)return null;if("number"==typeof e)return e;var t=e,n=o.get(t);if(n)return s.rootNodeIDToTag[n._rootNodeID];var r=t._rootNodeID;return r?s.rootNodeIDToTag[r]:(a("object"==typeof t&&"_rootNodeID"in t||null!=t.render&&"function"==typeof t.render,"findNodeHandle(...): Argument is not a component (type: %s, keys: %s)",typeof t,Object.keys(t)),void a(!1,"findNodeHandle(...): Unable to find node handle for unmounted component."))}var o=(t("ReactCurrentOwner"),t("ReactInstanceMap")),s=t("ReactNativeTagHandles"),a=t("invariant");t("warning");n.exports=i}),__d("ReactCurrentOwner",function(e,t,n,r){"use strict";var i={current:null};n.exports=i}),__d("ReactInstanceMap",function(e,t,n,r){"use strict";var i={remove:function(e){e._reactInternalInstance=void 0},get:function(e){return e._reactInternalInstance},has:function(e){return void 0!==e._reactInternalInstance},set:function(e,t){e._reactInternalInstance=t}};n.exports=i}),__d("ReactNativeTagHandles",function(e,t,n,r){"use strict";var i=t("invariant"),o=t("warning"),s=1,a="{TOP_LEVEL}",u={tagsStartAt:s,tagCount:s,allocateTag:function(){for(;this.reactTagIsNativeTopRootID(u.tagCount);)u.tagCount++;var e=u.tagCount;return u.tagCount++,e},associateRootNodeIDWithMountedNodeHandle:function(e,t){o(e&&t,"Root node or tag is null when associating"),e&&t&&(u.tagToRootNodeID[t]=e,u.rootNodeIDToTag[e]=t)},allocateRootNodeIDForTag:function(e){return i(this.reactTagIsNativeTopRootID(e),"Expect a native root tag, instead got ",e),".r["+e+"]"+a},reactTagIsNativeTopRootID:function(e){return e%10===1},getNativeTopRootIDFromNodeID:function(e){if(!e)return null;var t=e.indexOf(a);return-1===t?null:e.substr(0,t+a.length)},mostRecentMountedNodeHandleForRootNodeID:function(e){return u.rootNodeIDToTag[e]},tagToRootNodeID:[],rootNodeIDToTag:{}};n.exports=u}),__d("ReactPropTypes",function(e,t,n,r){"use strict";function i(e){function t(t,n,r,i,o,s){if(i=i||E,s=s||r,null==n[r]){var a=b[o];return t?new Error("Required "+a+" `"+s+"` was not specified in "+("`"+i+"`.")):null}return e(n,r,i,o,s)}var n=t.bind(null,!1);return n.isRequired=t.bind(null,!0),n}function o(e){function t(t,n,r,i,o){var s=t[n],a=m(s);if(a!==e){var u=b[i],l=g(s);return new Error("Invalid "+u+" `"+o+"` of type "+("`"+l+"` supplied to `"+r+"`, expected ")+("`"+e+"`."))}return null}return i(t)}function s(){return i(S.thatReturns(null))}function a(e){function t(t,n,r,i,o){var s=t[n];if(!Array.isArray(s)){var a=b[i],u=m(s);return new Error("Invalid "+a+" `"+o+"` of type "+("`"+u+"` supplied to `"+r+"`, expected an array."))}for(var l=0;l>"}var _=t("ReactElement"),b=t("ReactPropTypeLocationNames"),S=t("emptyFunction"),R=t("getIteratorFn"),E="<>",T={array:o("array"),bool:o("boolean"),func:o("function"),number:o("number"),object:o("object"),string:o("string"),any:s(),arrayOf:a,element:u(),instanceOf:l,node:f(),objectOf:p,oneOf:c,oneOfType:h,shape:d};n.exports=T}),__d("ReactElement",function(e,t,n,r){"use strict";var i=t("ReactCurrentOwner"),o=t("Object.assign"),s=(t("canDefineProperty"),"function"==typeof Symbol&&Symbol["for"]&&Symbol["for"]("react.element")||60103),a={key:!0,ref:!0,__self:!0,__source:!0},u=function(e,t,n,r,i,o,a){var u={$$typeof:s,type:e,key:t,ref:n,props:a,_owner:o};return u};u.createElement=function(e,t,n){var r,o={},s=null,l=null,c=null,p=null;if(null!=t){l=void 0===t.ref?null:t.ref,s=void 0===t.key?null:""+t.key,c=void 0===t.__self?null:t.__self,p=void 0===t.__source?null:t.__source;for(r in t)t.hasOwnProperty(r)&&!a.hasOwnProperty(r)&&(o[r]=t[r])}var h=arguments.length-2;if(1===h)o.children=n;else if(h>1){for(var f=Array(h),d=0;h>d;d++)f[d]=arguments[d+2];o.children=f}if(e&&e.defaultProps){var v=e.defaultProps;for(r in v)"undefined"==typeof o[r]&&(o[r]=v[r])}return u(e,s,l,c,p,i.current,o)},u.createFactory=function(e){var t=u.createElement.bind(null,e);return t.type=e,t},u.cloneAndReplaceKey=function(e,t){var n=u(e.type,t,e.ref,e._self,e._source,e._owner,e.props);return n},u.cloneAndReplaceProps=function(e,t){var n=u(e.type,e.key,e.ref,e._self,e._source,e._owner,t);return n},u.cloneElement=function(e,t,n){var r,s=o({},e.props),l=e.key,c=e.ref,p=e._self,h=e._source,f=e._owner;if(null!=t){void 0!==t.ref&&(c=t.ref,f=i.current),void 0!==t.key&&(l=""+t.key);for(r in t)t.hasOwnProperty(r)&&!a.hasOwnProperty(r)&&(s[r]=t[r])}var d=arguments.length-2;if(1===d)s.children=n;else if(d>1){for(var v=Array(d),m=0;d>m;m++)v[m]=arguments[m+2];s.children=v}return u(e.type,l,c,p,h,f,s)},u.isValidElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===s},n.exports=u}),__d("Object.assign",function(e,t,n,r){"use strict";function i(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,i=1;i=0;--r){var i=this.tryEntries[r],o=i.completion;if("root"===i.tryLoc)return t("end");if(i.tryLoc<=this.prev){var s=g.call(i,"catchLoc"),a=g.call(i,"finallyLoc");if(s&&a){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),w}},"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 i=r.arg;h(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:d(e),resultName:t,nextLoc:n},w}}}("object"==typeof e?e:"object"==typeof window?window:"object"==typeof self?self:this)}),__d("ExceptionsManager",function(e,t,n,r){"use strict";function i(e,t){var n=++c;if(a){var r=u(e);t?a.reportFatalException(e.message,r,n):a.reportSoftException(e.message,r,n)}}function o(e,t){e.message||(e=new Error(e)),(console._errorOriginal||console.error)(e.message),i(e,t)}function s(){console._errorOriginal||(console._errorOriginal=console.error.bind(console),console.error=function(){if(console._errorOriginal.apply(null,arguments),console.reportErrorsAsExceptions)if(arguments[0]&&arguments[0].stack)i(arguments[0],!1);else{var e=Array.prototype.map.call(arguments,l).join(", ");if('"Warning: '===e.slice(0,10))return;var t=new Error("console.error: "+e);t.framesToPop=1,i(t,!1)}},void 0===console.reportErrorsAsExceptions&&(console.reportErrorsAsExceptions=!0))}var a=t("NativeModules").ExceptionsManager,u=(t("loadSourceMap"),t("parseErrorStack")),l=t("stringifySafe"),c=0;n.exports={handleException:o,installConsoleErrorReporter:s}}),__d("loadSourceMap",function(e,t,n,r){"use strict";function i(){return o().then(function(e){return new l(e)})}function o(){return e.RAW_SOURCE_MAP?a.resolve(e.RAW_SOURCE_MAP):p?h?new a(p.getScriptText).then(s).then(function(e){return null===e?a.reject(new Error("No source map URL found. May be running from bundled file.")):a.resolve(e)}).then(fetch).then(function(e){return e.text()}):a.reject(new Error("RCTNetworking module is not available")):a.reject(new Error("RCTSourceCode module is not available"))}function s(e){var t=e.url,n=e.text,r=e.fullSourceMappingURL;if(r)return r;var i=c.getFrom(n);if(!i)return null;var o=t.match(/(.+:\/\/.*?)\//)[1];return o+i}var a=t("Promise"),u=t("NativeModules"),l=t("SourceMap").SourceMapConsumer,c=t("react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js"),p=u.SourceCode,h=u.Networking;n.exports=i}),__d("Promise",function(e,t,n,r){"use strict";e.setImmediate=t("setImmediate");var i=t("promise/setimmediate/es6-extensions.js");t("promise/setimmediate/done.js"),i.prototype["finally"]=function(e){return this.then(e,e)},n.exports=i}),__d("setImmediate",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)},v=v.next={handle:h++},v.handle}function i(){for(var e,t;!m&&(e=d.next);)if(d=e,t=f[e.handle]){m=!0;try{t(),m=!1}finally{o(e.handle),m&&(m=!1,d.next&&p(i))}}}function o(e){delete f[e]}function s(){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 a(){var t="setImmediate$"+Math.random()+"$",r=function(n){n.source===e&&"string"==typeof n.data&&0===n.data.indexOf(t)&&i()};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=i,p=function(){var t=n(arguments);return e.port2.postMessage(t),t}}function l(){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,i()},e.appendChild(r),t}}function c(){p=function(){return setTimeout(i,0),n(arguments)}}var p,h=1,f={},d={},v=d,m=!1,g=e.document;s()?a():e.MessageChannel?u():g&&"onreadystatechange"in g.createElement("script")?l():c(),r.setImmediate=p,r.clearImmediate=o}(Function("return this")())}),__d("promise/setimmediate/es6-extensions.js",function(e,t,n,r){"use strict";function i(e){var t=new o(o._61);return t._81=1,t._65=e,t}var o=t("promise/setimmediate/core.js");n.exports=o;var s=i(!0),a=i(!1),u=i(null),l=i(void 0),c=i(0),p=i("");o.resolve=function(e){if(e instanceof o)return e;if(null===e)return u;if(void 0===e)return l;if(e===!0)return s;if(e===!1)return a;if(0===e)return c;if(""===e)return p;if("object"==typeof e||"function"==typeof e)try{var t=e.then;if("function"==typeof t)return new o(t.bind(e))}catch(n){return new o(function(e,t){t(n)})}return i(e)},o.all=function(e){var t=Array.prototype.slice.call(e);return new o(function(e,n){function r(s,a){if(a&&("object"==typeof a||"function"==typeof a)){if(a instanceof o&&a.then===o.prototype.then){for(;3===a._81;)a=a._65;return 1===a._81?r(s,a._65):(2===a._81&&n(a._65),void a.then(function(e){r(s,e)},n))}var u=a.then;if("function"==typeof u){var l=new o(u.bind(a));return void l.then(function(e){r(s,e)},n)}}t[s]=a,0===--i&&e(t)}if(0===t.length)return e([]);for(var i=t.length,s=0;s0&&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,s=0,a=0,u=0,l="";this._mappings.sort(o.compareByGeneratedPositions);for(var c=0,p=this._mappings.length;p>c;c++){if(e=this._mappings[c],e.generatedLine!==n)for(t=0;e.generatedLine!==n;)l+=";",n++;else if(c>0){if(!o.compareByGeneratedPositions(e,this._mappings[c-1]))continue;l+=","}l+=i.encode(e.generatedColumn-t),t=e.generatedColumn,e.source&&(l+=i.encode(this._sources.indexOf(e.source)-u),u=this._sources.indexOf(e.source),l+=i.encode(e.originalLine-1-s),s=e.originalLine-1,l+=i.encode(e.originalColumn-r),r=e.originalColumn,e.name&&(l+=i.encode(this._names.indexOf(e.name)-a),a=this._names.indexOf(e.name)))}return l},r.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;t&&(e=o.relative(t,e));var n=o.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 i(e){var t=1===(1&e),n=e>>1;return t?-n:n}var o=e("./base64"),s=5,a=1<>>=s,i>0&&(t|=l),n+=o.encode(t);while(i>0);return n},t.decode=function(e){var t,n,r=0,a=e.length,c=0,p=0;do{if(r>=a)throw new Error("Expected more digits in base 64 VLQ value.");n=o.decode(e.charAt(r++)),t=!!(n&l),n&=u,c+=n<r)-(r>n)}function p(e,t,n){var r;return(r=c(e.source,t.source))?r:(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,r||n?r:(r=c(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=c(e.source,t.source))?r:(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,r?r:c(e.name,t.name)))}t.getArg=r;var f=/([\w+\-.]+):\/\/((\w+:\w+)@)?([\w.]+)?(:(\d+))?(\S+)?/,d=/^data:.+\,.+/;t.urlParse=i,t.urlGenerate=o,t.join=s,t.toSetString=a,t.fromSetString=u,t.relative=l,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 i=e("./util");r.fromArray=function(e,t){for(var n=new r,i=0,o=e.length;o>i;i++)n.add(e[i],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[i.toSetString(e)]=r)},r.prototype.has=function(e){return Object.prototype.hasOwnProperty.call(this._set,i.toSetString(e))},r.prototype.indexOf=function(e){if(this.has(e))return this._set[i.toSetString(e)];throw new Error('"'+e+'" is not in the set.')},r.prototype.at=function(e){if(e>=0&&e0;)if(";"===f.charAt(0))o++,f=f.slice(1),s=0;else if(","===f.charAt(0))f=f.slice(1);else{if(n={},n.generatedLine=o,r=a.decode(f),n.generatedColumn=s+r.value,s=n.generatedColumn,f=r.rest,f.length>0&&!h.test(f.charAt(0))){if(r=a.decode(f),n.source=this._sources.at(c+r.value),c+=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=a.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=a.decode(f),n.originalColumn=l+r.value,l=n.originalColumn,f=r.rest,f.length>0&&!h.test(f.charAt(0))&&(r=a.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(i.compareByOriginalPositions)},r.prototype._findMapping=function(e,t,n,r,i){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 o.search(e,t,i)},r.prototype.originalPositionFor=function(e){var t={generatedLine:i.getArg(e,"line"),generatedColumn:i.getArg(e,"column")},n=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",i.compareByGeneratedPositions);if(n){var r=i.getArg(n,"source",null);return r&&this.sourceRoot&&(r=i.join(this.sourceRoot,r)),{source:r,line:i.getArg(n,"originalLine",null),column:i.getArg(n,"originalColumn",null),name:i.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=i.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var t;if(this.sourceRoot&&(t=i.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:i.getArg(e,"source"),originalLine:i.getArg(e,"line"),originalColumn:i.getArg(e,"column")};this.sourceRoot&&(t.source=i.relative(this.sourceRoot,t.source));var n=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",i.compareByOriginalPositions);return n?{line:i.getArg(n,"generatedLine",null),column:i.getArg(n,"generatedColumn",null)}:{line:null,column:null}},r.GENERATED_ORDER=1,r.ORIGINAL_ORDER=2,r.prototype.eachMapping=function(e,t,n){var o,s=t||null,a=n||r.GENERATED_ORDER;switch(a){case r.GENERATED_ORDER:o=this._generatedMappings;break;case r.ORIGINAL_ORDER:o=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var u=this.sourceRoot;o.map(function(e){var t=e.source;return t&&u&&(t=i.join(u,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name}}).forEach(e,s)},t.SourceMapConsumer=r}),e("source-map/binary-search",["require","exports","module"],function(e,t,n){function r(e,t,n,i,o){var s=Math.floor((t-e)/2)+e,a=o(n,i[s],!0);return 0===a?i[s]:a>0?t-s>1?r(s,t,n,i,o):i[s]:s-e>1?r(e,s,n,i,o):0>e?null:i[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,i){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===i?null:i,null!=r&&this.add(r)}var i=e("./source-map-generator").SourceMapGenerator,o=e("./util");r.fromStringWithSourceMap=function(e,t){function n(e,t){null===e||void 0===e.source?i.add(t):i.add(new r(e.originalLine,e.originalColumn,e.source,t,e.name))}var i=new r,o=e.split("\n"),s=1,a=0,u=null;return t.eachMapping(function(e){if(null===u){for(;s=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,i=this.children.length;i>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[o.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 i=Object.keys(this.sourceContents),t=0,n=i.length;n>t;t++)e(o.fromSetString(i[t]),this.sourceContents[i[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 i(e),r=!1,o=null,s=null,a=null,u=null;return this.walk(function(e,i){t.code+=e,null!==i.source&&null!==i.line&&null!==i.column?((o!==i.source||s!==i.line||a!==i.column||u!==i.name)&&n.addMapping({source:i.source,original:{line:i.line,column:i.column},generated:{line:t.line,column:t.column},name:i.name}),o=i.source,s=i.line,a=i.column,u=i.name,r=!0):r&&(n.addMapping({generated:{line:t.line,column:t.column}}),o=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 o={};i.call(o),n.exports=o.sourceMap}),__d("react-native/Libraries/JavaScriptAppEngine/Initialization/source-map-url.js",function(e,t,n,r){!function(){var e=null;void function(t,i){"function"==typeof e&&e.amd?e(i):"object"==typeof r?n.exports=i():t.sourceMappingURL=i()}(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",function(e,t,n,r){"use strict";function i(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 o(e,t){if(!e||!e.stack)return[];for(var n=Array.isArray(e.stack)?e.stack:s.parse(e.stack),r=e.framesToPop||0;r--;)n.shift();return t&&n.forEach(i.bind(null,t)),n}var s=t("stacktrace-parser/index.js");n.exports=o}),__d("stacktrace-parser/index.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 i="",o={parse:function(e){for(var t,n,r=/^\s*at (?:(?:(?:Anonymous function)?|((?:\[object object\])?\S+(?: \[as \S+\])?)) )?\(?((?:file|http|https):.*?):(\d+)(?::(\d+))?\)?\s*$/i,o=/^(?:\s*(\S*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i,s=/^\s*at (?:((?:\[object object\])?\S+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i,a=e.split("\n"),u=[],l=0,c=a.length;c>l;++l){if(t=o.exec(a[l]))n={file:t[3],methodName:t[1]||i,lineNumber:+t[4],column:t[5]?+t[5]:null};else if(t=r.exec(a[l]))n={file:t[2],methodName:t[1]||i,lineNumber:+t[3],column:t[4]?+t[4]:null};else{if(!(t=s.exec(a[l])))continue;n={file:t[2],methodName:t[1]||i,lineNumber:+t[3],column:t[4]?+t[4]:null}}u.push(n)}return u}};n.exports=o}),__d("XMLHttpRequest",function(e,t,n,r){"use strict";var i=t("FormData"),o=t("RCTNetworking"),s=t("XMLHttpRequestBase"),a=function(e){function t(){babelHelpers.classCallCheck(this,t);var e=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this));return e.upload={},e}return babelHelpers.inherits(t,e),babelHelpers.createClass(t,[{key:"sendImpl",value:function(e,t,n,r){"string"==typeof r?r={string:r}:r instanceof i&&(r={formData:r.getParts()}),o.sendRequest({method:e,url:t,data:r,headers:n,incrementalUpdates:this.onreadystatechange?!0:!1},this.didCreateRequest.bind(this))}}]),t}(s);n.exports=a}),__d("FormData",function(e,t,n,r){"use strict";var i=function(){function e(){babelHelpers.classCallCheck(this,e),this._parts=[]}return babelHelpers.createClass(e,[{key:"append",value:function(e,t){this._parts.push([e,t])}},{key:"getParts",value:function(){return this._parts.map(function(e){var t=babelHelpers.slicedToArray(e,2),n=t[0],r=t[1],i='form-data; name="'+n+'"',o={"content-disposition":i};return"string"==typeof r?{string:r,headers:o,fieldName:n}:("string"==typeof r.name&&(o["content-disposition"]+='; filename="'+r.name+'"'),"string"==typeof r.type&&(o["content-type"]=r.type),babelHelpers["extends"]({},r,{headers:o,fieldName:n}))})}}]),e}();n.exports=i}),__d("RCTNetworking",function(e,t,n,r){"use strict";var i=t("NativeModules").Networking,o=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"sendRequest",value:function(e,t){i.sendRequest(e,t)}},{key:"abortRequest",value:function(e){i.cancelRequest(e)}}]),e}();n.exports=o}),__d("XMLHttpRequestBase",function(e,t,n,r){"use strict";var i=t("RCTNetworking"),o=t("RCTDeviceEventEmitter"),s=function(){function e(){babelHelpers.classCallCheck(this,e),this.UNSENT=0,this.OPENED=1,this.HEADERS_RECEIVED=2,this.LOADING=3,this.DONE=4,this.onreadystatechange=null,this.onload=null,this.upload=void 0,this._reset(),this._method=null,this._url=null,this._aborted=!1}return babelHelpers.createClass(e,[{key:"_reset",value:function(){this.readyState=this.UNSENT,this.responseHeaders=void 0,this.responseText="",this.status=0,this._requestId=null,this._headers={},this._sent=!1,this._lowerCaseResponseHeaders={},this._clearSubscriptions()}},{key:"didCreateRequest",value:function(e){var t=this;this._requestId=e,this._subscriptions.push(o.addListener("didSendNetworkData",function(e){var n;return(n=t._didUploadProgress).call.apply(n,[t].concat(babelHelpers.toConsumableArray(e)))})),this._subscriptions.push(o.addListener("didReceiveNetworkResponse",function(e){var n;return(n=t._didReceiveResponse).call.apply(n,[t].concat(babelHelpers.toConsumableArray(e)))})),this._subscriptions.push(o.addListener("didReceiveNetworkData",function(e){var n;return(n=t._didReceiveData).call.apply(n,[t].concat(babelHelpers.toConsumableArray(e)))})),this._subscriptions.push(o.addListener("didCompleteNetworkResponse",function(e){var n;return(n=t._didCompleteResponse).call.apply(n,[t].concat(babelHelpers.toConsumableArray(e)))}))}},{key:"_didUploadProgress",value:function(e,t,n){if(e===this._requestId&&this.upload&&this.upload.onprogress){var r={lengthComputable:!0,loaded:t,total:n};this.upload.onprogress(r)}}},{key:"_didReceiveResponse",value:function(e,t,n){e===this._requestId&&(this.status=t,this.setResponseHeaders(n),this.setReadyState(this.HEADERS_RECEIVED))}},{key:"_didReceiveData",value:function(e,t){e===this._requestId&&(this.responseText?this.responseText+=t:this.responseText=t,this.setReadyState(this.LOADING))}},{key:"_didCompleteResponse",value:function(e,t){e===this._requestId&&(t&&(this.responseText=t),this._clearSubscriptions(),this._requestId=null,this.setReadyState(this.DONE))}},{key:"_clearSubscriptions",value:function(){(this._subscriptions||[]).forEach(function(e){e.remove()}),this._subscriptions=[]}},{key:"getAllResponseHeaders",value:function(){if(!this.responseHeaders)return null;var e=this.responseHeaders||{};return Object.keys(e).map(function(t){return t+": "+e[t]}).join("\n")}},{key:"getResponseHeader",value:function(e){var t=this._lowerCaseResponseHeaders[e.toLowerCase()];return void 0!==t?t:null}},{key:"setRequestHeader",value:function(e,t){if(this.readyState!==this.OPENED)throw new Error("Request has not been opened");this._headers[e.toLowerCase()]=t}},{key:"open",value:function(e,t,n){if(this.readyState!==this.UNSENT)throw new Error("Cannot open, already sending");if(void 0!==n&&!n)throw new Error("Synchronous http requests are not supported");this._reset(),this._method=e,this._url=t,this._aborted=!1,this.setReadyState(this.OPENED)}},{key:"sendImpl",value:function(e,t,n,r){throw new Error("Subclass must define sendImpl method")}},{key:"send",value:function(e){if(this.readyState!==this.OPENED)throw new Error("Request has not been opened");if(this._sent)throw new Error("Request has already been sent");this._sent=!0,this.sendImpl(this._method,this._url,this._headers,e)}},{key:"abort",value:function(){this._aborted=!0,this._requestId&&i.abortRequest(this._requestId),this.readyState===this.UNSENT||this.readyState===this.OPENED&&!this._sent||this.readyState===this.DONE||(this._reset(),this.setReadyState(this.DONE)),this._reset()}},{key:"setResponseHeaders",value:function(e){this.responseHeaders=e||null;var t=e||{};this._lowerCaseResponseHeaders=Object.keys(t).reduce(function(e,n){return e[n.toLowerCase()]=t[n],e},{})}},{key:"setReadyState",value:function(e){this.readyState=e;var t=this.onreadystatechange;t&&t(null),e!==this.DONE||this._aborted||this._sendLoad()}},{key:"_sendLoad",value:function(){var e=this.onload;e&&e(null)}}]),e}();n.exports=s}),__d("RCTDeviceEventEmitter",function(e,t,n,r){"use strict";var i=t("EventEmitter"),o=t("BatchedBridge"),s=new i;o.registerCallableModule("RCTDeviceEventEmitter",s),n.exports=s}),__d("EventEmitter",function(e,t,n,r){var i=t("EmitterSubscription"),o=(t("ErrorUtils"),t("EventSubscriptionVendor")),s=t("emptyFunction"),a=t("invariant"),u=function(){function e(){babelHelpers.classCallCheck(this,e),this._subscriber=new o}return babelHelpers.createClass(e,[{key:"addListener",value:function(e,t,n){return this._subscriber.addSubscription(e,new i(this._subscriber,t,n))}},{key:"once",value:function(e,t,n){var r=this;return this.addListener(e,function(){r.removeCurrentListener(),t.apply(n,arguments)})}},{key:"removeAllListeners",value:function(e){this._subscriber.removeAllSubscriptions(e)}},{key:"removeCurrentListener",value:function(){a(!!this._currentSubscription,"Not in an emitting cycle; there is no current subscription"),this._subscriber.removeSubscription(this._currentSubscription)}},{key:"listeners",value:function(e){var t=this._subscriber.getSubscriptionsForType(e);return t?t.filter(s.thatReturnsTrue).map(function(e){return e.listener}):[]}},{key:"emit",value:function(e){var t=this._subscriber.getSubscriptionsForType(e);if(t){for(var n=Object.keys(t),r=0;r-1?t:e}function c(e,t){t=t||{};var r=t.body;if(c.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=l(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," "),i=n.join("=").replace(/\+/g," ");t.append(decodeURIComponent(r),decodeURIComponent(i))}}),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(),i=n.join(":").trim();t.append(r,i)}),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(!i.fetch){n.prototype.append=function(n,r){n=e(n),r=t(r);var i=this.map[n];i||(i=[],this.map[n]=i),i.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},v=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];c.prototype.clone=function(){return new c(this)},u.call(c.prototype),f.prototype.clone=function(){return new f(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new n(this.headers),url:this.url})},u.call(f.prototype),i.Headers=n,i.Request=c,i.Response=f,i.fetch=function(e,t){var n;return n=c.prototype.isPrototypeOf(e)&&!t?e:new c(e,t),new Promise(function(e,t){function r(){return"responseURL"in i?i.responseURL:/^X-Request-URL:/m.test(i.getAllResponseHeaders())?i.getResponseHeader("X-Request-URL"):void 0}var i=new XMLHttpRequest;i.onload=function(){var n=1223===i.status?204:i.status;if(100>n||n>599)return void t(new TypeError("Network request failed"));var o={status:n,statusText:i.statusText,headers:h(i),url:r()},s="response"in i?i.response:i.responseText;e(new f(s,o))},i.onerror=function(){t(new TypeError("Network request failed"))},i.open(n.method,n.url,!0),"include"===n.credentials&&(i.withCredentials=!0),"responseType"in i&&d.blob&&(i.responseType="blob"),n.headers.forEach(function(e,t){i.setRequestHeader(t,e)}),i.send("undefined"==typeof n._bodyInit?null:n._bodyInit)})},i.fetch.polyfill=!0}}(),n.exports=i}),__d("Geolocation",function(e,t,n,r){"use strict";var i=t("RCTDeviceEventEmitter"),o=t("NativeModules").LocationObserver,s=t("invariant"),a=t("logError"),u=t("warning"),l=[],c=!1,p={getCurrentPosition:function(e,t,n){s("function"==typeof e,"Must provide a valid geo_success callback."),o.getCurrentPosition(n||{},e,t||a)},watchPosition:function(e,t,n){c||(o.startObserving(n||{}),c=!0);var r=l.length;return l.push([i.addListener("geolocationDidChange",e),t?i.addListener("geolocationError",t):null]),r},clearWatch:function(e){var t=l[e];if(t){t[0].remove();var n=t[1];n&&n.remove(),l[e]=void 0;for(var r=!0,i=0;i0){for(var e=Array(arguments.length),t=0;t=i;i++)if(o(e,i)&&o(t,i))r=i;else if(e.charAt(i)!==t.charAt(i))break;var a=e.substr(0,r);return f(s(a),"getFirstCommonAncestorID(%s, %s): Expected a valid React DOM ID: %s",e,t,a),a}function p(e,t,n,r,i,o){e=e||"",t=t||"",f(e!==t,"traverseParentPath(...): Cannot traverse from and to the same ID, `%s`.",e);var s=a(t,e);f(s||a(e,t),"traverseParentPath(%s, %s, ...): Cannot traverse from two IDs that do not have a parent path.",e,t);for(var c=0,p=s?u:l,h=e;;h=p(h,t)){var d;if(i&&h===e||o&&h===t||(d=n(h,s,r)),d===!1||h===t)break;f(c++1){var t=e.indexOf(d,1);return t>-1?e.substr(0,t):e}return null},traverseEnterLeave:function(e,t,n,r,i){var o=c(e,t);o!==e&&p(e,o,n,r,!1,!0),o!==t&&p(o,t,n,i,!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:c,_getNextDescendantID:l,isAncestorIDOf:a,SEPARATOR:d};n.exports=g}),__d("ReactRootIndex",function(e,t,n,r){"use strict";var i={injectCreateReactRootIndex:function(e){o.createReactRootIndex=e}},o={createReactRootIndex:null,injection:i};n.exports=o}),__d("ReactNativeMount",function(e,t,n,r){"use strict";function i(e,t){return e+"["+t+"]"}function o(e,t,n,r){var i=c.mountComponent(e,t,r,d);e._renderedComponent._topLevelWrapper=e,y._mountImageIntoNode(i,n)}function s(e,t,n){var r=h.ReactReconcileTransaction.getPooled();r.perform(o,null,e,t,n,r),h.ReactReconcileTransaction.release(r)}var a=t("ReactElement"),u=t("ReactNativeTagHandles"),l=t("ReactPerf"),c=t("ReactReconciler"),p=t("ReactUpdateQueue"),h=t("ReactUpdates"),f=t("UIManager"),d=t("emptyObject"),v=t("instantiateReactComponent"),m=t("shouldUpdateReactComponent"),g=function(){};g.prototype.isReactComponent={},g.prototype.render=function(){return this.props};var y={instanceCount:0,_instancesByContainerID:{},findNodeHandle:t("findNodeHandle"),nativeTagToRootNodeID:function(e){return u.tagToRootNodeID[e]},renderComponent:function(e,t,n){var r=new a(g,null,null,null,null,null,e),o=u.tagToRootNodeID[t];if(o){var l=y._instancesByContainerID[o];if(l){var c=l._currentElement,f=c.props;if(m(f,e))return p.enqueueElementInternal(l,r),n&&p.enqueueCallbackInternal(l,n),l;y.unmountComponentAtNode(t)}}if(!u.reactTagIsNativeTopRootID(t))return void console.error("You cannot render into anything but a top root");var o=u.allocateRootNodeIDForTag(t);u.associateRootNodeIDWithMountedNodeHandle(o,t);var d=v(r);y._instancesByContainerID[o]=d;var _=i(o,y.instanceCount++);h.batchedUpdates(s,d,_,o);var b=d.getPublicInstance();return n&&n.call(b),b},_mountImageIntoNode:l.measure("ReactComponentBrowserEnvironment","mountImageIntoNode",function(e,t){u.associateRootNodeIDWithMountedNodeHandle(e.rootNodeID,e.tag);var n=[e.tag],r=[0];f.manageChildren(u.mostRecentMountedNodeHandleForRootNodeID(t),null,null,n,r,null)}),unmountComponentAtNodeAndRemoveContainer:function(e){y.unmountComponentAtNode(e),f.removeRootView(e)},unmountComponentAtNode:function(e){if(!u.reactTagIsNativeTopRootID(e))return console.error("You cannot render into anything but a top root"),!1;var t=u.tagToRootNodeID[e],n=y._instancesByContainerID[t];return n?(y.unmountComponentFromNode(n,t),delete y._instancesByContainerID[t],!0):!1},unmountComponentFromNode:function(e,t){c.unmountComponent(e);var n=u.mostRecentMountedNodeHandleForRootNodeID(t);f.removeSubviewsFromContainerWithID(n)},getNode:function(e){return u.rootNodeIDToTag[e]},getID:function(e){return u.tagToRootNodeID[e]}};y.renderComponent=l.measure("ReactMount","_renderNewRootComponent",y.renderComponent),n.exports=y}),__d("ReactReconciler",function(e,t,n,r){"use strict";function i(){o.attachRefs(this,this._currentElement)}var o=t("ReactRef"),s={mountComponent:function(e,t,n,r){var o=e.mountComponent(t,n,r);return e._currentElement&&null!=e._currentElement.ref&&n.getReactMountReady().enqueue(i,e),o},unmountComponent:function(e){o.detachRefs(e,e._currentElement),e.unmountComponent()},receiveComponent:function(e,t,n,r){var s=e._currentElement;if(t!==s||r!==e._context){var a=o.shouldUpdateRefs(s,t);a&&o.detachRefs(e,s),e.receiveComponent(t,n,r),a&&e._currentElement&&null!=e._currentElement.ref&&n.getReactMountReady().enqueue(i,e)}},performUpdateIfNecessary:function(e,t){e.performUpdateIfNecessary(t)}};n.exports=s}),__d("ReactRef",function(e,t,n,r){"use strict";function i(e,t,n){"function"==typeof e?e(t.getPublicInstance()):s.addComponentAsRefTo(t,e,n)}function o(e,t,n){"function"==typeof e?e(null):s.removeComponentAsRefFrom(t,e,n)}var s=t("ReactOwner"),a={};a.attachRefs=function(e,t){if(null!==t&&t!==!1){var n=t.ref;null!=n&&i(n,e,t._owner)}},a.shouldUpdateRefs=function(e,t){var n=null===e||e===!1,r=null===t||t===!1;return n||r||t._owner!==e._owner||t.ref!==e.ref},a.detachRefs=function(e,t){if(null!==t&&t!==!1){var n=t.ref;null!=n&&o(n,e,t._owner)}},n.exports=a}),__d("ReactOwner",function(e,t,n,r){"use strict";var i=t("invariant"),o={isValidOwner:function(e){return!(!e||"function"!=typeof e.attachRef||"function"!=typeof e.detachRef)},addComponentAsRefTo:function(e,t,n){i(o.isValidOwner(n),"addComponentAsRefTo(...): Only a ReactOwner can have refs. You might be adding a ref to a component that was not created inside a component's `render` method, or you have multiple copies of React loaded (details: https://fb.me/react-refs-must-have-owner)."),n.attachRef(t,e)},removeComponentAsRefFrom:function(e,t,n){i(o.isValidOwner(n),"removeComponentAsRefFrom(...): Only a ReactOwner can have refs. You might be removing a ref to a component that was not created inside a component's `render` method, or you have multiple copies of React loaded (details: https://fb.me/react-refs-must-have-owner)."),n.getPublicInstance().refs[t]===e.getPublicInstance()&&n.detachRef(t)}};n.exports=o}),__d("ReactUpdateQueue",function(e,t,n,r){"use strict";function i(e){u.enqueueUpdate(e)}function o(e,t){var n=a.get(e);return n?n:null}var s=(t("ReactCurrentOwner"),t("ReactElement")),a=t("ReactInstanceMap"),u=t("ReactUpdates"),l=t("Object.assign"),c=t("invariant"),p=(t("warning"),{isMounted:function(e){var t=a.get(e);return t?!!t._renderedComponent:!1},enqueueCallback:function(e,t){c("function"==typeof t,"enqueueCallback(...): You called `setProps`, `replaceProps`, `setState`, `replaceState`, or `forceUpdate` with a callback that isn't callable.");var n=o(e);return n?(n._pendingCallbacks?n._pendingCallbacks.push(t):n._pendingCallbacks=[t],void i(n)):null},enqueueCallbackInternal:function(e,t){c("function"==typeof t,"enqueueCallback(...): You called `setProps`, `replaceProps`, `setState`, `replaceState`, or `forceUpdate` with a callback that isn't callable."),e._pendingCallbacks?e._pendingCallbacks.push(t):e._pendingCallbacks=[t],i(e)},enqueueForceUpdate:function(e){var t=o(e,"forceUpdate");t&&(t._pendingForceUpdate=!0,i(t))},enqueueReplaceState:function(e,t){var n=o(e,"replaceState");n&&(n._pendingStateQueue=[t],n._pendingReplaceState=!0,i(n))},enqueueSetState:function(e,t){var n=o(e,"setState");if(n){var r=n._pendingStateQueue||(n._pendingStateQueue=[]);r.push(t),i(n)}},enqueueSetProps:function(e,t){var n=o(e,"setProps");n&&p.enqueueSetPropsInternal(n,t)},enqueueSetPropsInternal:function(e,t){var n=e._topLevelWrapper;c(n,"setProps(...): You called `setProps` on a component with a parent. This is an anti-pattern since props will get reactively updated when rendered. Instead, change the owner's `render` method to pass the correct value as props to the component where it is created.");var r=n._pendingElement||n._currentElement,o=r.props,a=l({},o.props,t);n._pendingElement=s.cloneAndReplaceProps(r,s.cloneAndReplaceProps(o,a)),i(n)},enqueueReplaceProps:function(e,t){var n=o(e,"replaceProps");n&&p.enqueueReplacePropsInternal(n,t)},enqueueReplacePropsInternal:function(e,t){var n=e._topLevelWrapper;c(n,"replaceProps(...): You called `replaceProps` on a component with a parent. This is an anti-pattern since props will get reactively updated when rendered. Instead, change the owner's `render` method to pass the correct value as props to the component where it is created.");var r=n._pendingElement||n._currentElement,o=r.props;n._pendingElement=s.cloneAndReplaceProps(r,s.cloneAndReplaceProps(o,t)),i(n)},enqueueElementInternal:function(e,t){e._pendingElement=t,i(e)}});n.exports=p}),__d("ReactUpdates",function(e,t,n,r){"use strict";function i(){g(w.ReactReconcileTransaction&&S,"ReactUpdates: must inject a reconcile transaction class and batching strategy")}function o(){this.reinitializeTransaction(),this.dirtyComponentsLength=null,this.callbackQueue=p.getPooled(),this.reconcileTransaction=w.ReactReconcileTransaction.getPooled(!1)}function s(e,t,n,r,o,s){i(),S.batchedUpdates(e,t,n,r,o,s)}function a(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(a);for(var n=0;t>n;n++){var r=y[n],i=r._pendingCallbacks;if(r._pendingCallbacks=null,d.performUpdateIfNecessary(r,e.reconcileTransaction),i)for(var o=0;o component.'),this._rootNodeID=e;var r=i.allocateTag(),s=i.getNativeTopRootIDFromNodeID(e);return o.createView(r,"RCTRawText",s?i.rootNodeIDToTag[s]: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,o.updateView(i.mostRecentMountedNodeHandleForRootNodeID(this._rootNodeID),"RCTRawText",{text:this._stringText}))}},unmountComponent:function(){this._currentElement=null,this._stringText=null,this._rootNodeID=null}}),n.exports=u}),__d("PerformanceLogger",function(e,t,n,r){"use strict";var i=t("BatchedBridge"),o=t("performanceNow"),s={},a={},u={addTimespan:function(e,t,n){s[e]||(s[e]={description:n,totalTime:t})},startTimespan:function(e,t){s[e]||(s[e]={description:t,startTime:o()})},stopTimespan:function(e){s[e]&&s[e].startTime&&(s[e].endTime||(s[e].endTime=o(),s[e].totalTime=s[e].endTime-s[e].startTime))},clear:function(){s={},a={}},clearExceptTimespans:function(e){s=Object.keys(s).reduce(function(t,n){return-1!==e.indexOf(n)&&(t[n]=s[n]),t},{}),a={}},getTimespans:function(){return s},hasTimespan:function(e){return!!s[e]},logTimespans:function(){for(var e in s)s[e].totalTime&&console.log(e+": "+s[e].totalTime+"ms")},addTimespans:function(e,t){for(var n=0,r=e.length;r>n;n+=2){var i=t[n/2];u.addTimespan(i,e[n+1]-e[n],i)}},setExtra:function(e,t){a[e]||(a[e]=t)},getExtras:function(){return a}};i.registerCallableModule("PerformanceLogger",u),n.exports=u}),__d("EventPluginHub",function(e,t,n,r){"use strict";var i=t("EventPluginRegistry"),o=t("EventPluginUtils"),s=t("ReactErrorUtils"),a=t("accumulateInto"),u=t("forEachAccumulated"),l=t("invariant"),c=(t("warning"),{}),p=null,h=function(e,t){e&&(o.executeDispatchesInOrder(e,t),e.isPersistent()||e.constructor.release(e))},f=function(e){return h(e,!0)},d=function(e){return h(e,!1)},v=null,m={injection:{injectMount:o.injection.injectMount,injectInstanceHandle:function(e){v=e},getInstanceHandle:function(){return v},injectEventPluginOrder:i.injectEventPluginOrder,injectEventPluginsByName:i.injectEventPluginsByName},eventNameDispatchConfigs:i.eventNameDispatchConfigs,registrationNameModules:i.registrationNameModules,putListener:function(e,t,n){l("function"==typeof n,"Expected %s listener to be a function, instead got type %s",t,typeof n);var r=c[t]||(c[t]={});r[e]=n;var o=i.registrationNameModules[t];o&&o.didPutListener&&o.didPutListener(e,t,n)},getListener:function(e,t){var n=c[t];return n&&n[e]},deleteListener:function(e,t){var n=i.registrationNameModules[t];n&&n.willDeleteListener&&n.willDeleteListener(e,t);var r=c[t];r&&delete r[e]},deleteAllListeners:function(e){for(var t in c)if(c[t][e]){var n=i.registrationNameModules[t];n&&n.willDeleteListener&&n.willDeleteListener(e,t),delete c[t][e]}},extractEvents:function(e,t,n,r,o){for(var s,u=i.plugins,l=0;l-1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e),!c.plugins[n]){a(t.extractEvents,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e),c.plugins[n]=t;var r=t.eventTypes;for(var i in r)a(o(r[i],t,i),"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",i,e)}}}function o(e,t,n){a(!c.eventNameDispatchConfigs.hasOwnProperty(n),"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",n),c.eventNameDispatchConfigs[n]=e;var r=e.phasedRegistrationNames;if(r){for(var i in r)if(r.hasOwnProperty(i)){var o=r[i];s(o,t,n)}return!0}return e.registrationName?(s(e.registrationName,t,n),!0):!1}function s(e,t,n){a(!c.registrationNameModules[e],"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e),c.registrationNameModules[e]=t,c.registrationNameDependencies[e]=t.eventTypes[n].dependencies}var a=t("invariant"),u=null,l={},c={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},injectEventPluginOrder:function(e){a(!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),i()},injectEventPluginsByName:function(e){var t=!1;for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];l.hasOwnProperty(n)&&l[n]===r||(a(!l[n],"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",n),l[n]=r,t=!0)}t&&i()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return c.registrationNameModules[t.registrationName]||null;for(var n in t.phasedRegistrationNames)if(t.phasedRegistrationNames.hasOwnProperty(n)){var r=c.registrationNameModules[t.phasedRegistrationNames[n]];if(r)return r}return null},_resetEventPlugins:function(){u=null;for(var e in l)l.hasOwnProperty(e)&&delete l[e];c.plugins.length=0;var t=c.eventNameDispatchConfigs;for(var n in t)t.hasOwnProperty(n)&&delete t[n];var r=c.registrationNameModules;for(var i in r)r.hasOwnProperty(i)&&delete r[i]}};n.exports=c}),__d("EventPluginUtils",function(e,t,n,r){"use strict";function i(e){return e===g.topMouseUp||e===g.topTouchEnd||e===g.topTouchCancel}function o(e){return e===g.topMouseMove||e===g.topTouchMove}function s(e){return e===g.topMouseDown||e===g.topTouchStart}function a(e,t,n,r){var i=e.type||"unknown-event";e.currentTarget=m.Mount.getNode(r),t?d.invokeGuardedCallbackWithCatch(i,n,e,r):d.invokeGuardedCallback(i,n,e,r),e.currentTarget=null}function u(e,t){var n=e._dispatchListeners,r=e._dispatchIDs;if(Array.isArray(n))for(var i=0;ie,"Maximum deep merge depth exceeded. You may be attempting to merge circular structures in an unsupported way.")},checkArrayStrategy:function(e){i(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:o({Clobber:!0,IndexByIndex:!0})};n.exports=u}),__d("NodeHandle",function(e,t,n,r){var i={injection:{injectImplementation:function(e){i._Implementation=e}},_Implementation:null,getRootNodeID:function(e){return i._Implementation.getRootNodeID(e)}};n.exports=i}),__d("ReactDefaultBatchingStrategy",function(e,t,n,r){"use strict";function i(){this.reinitializeTransaction()}var o=t("ReactUpdates"),s=t("Transaction"),a=t("Object.assign"),u=t("emptyFunction"),l={initialize:u,close:function(){f.isBatchingUpdates=!1}},c={initialize:u,close:o.flushBatchedUpdates.bind(o)},p=[c,l];a(i.prototype,s.Mixin,{getTransactionWrappers:function(){return p}});var h=new i,f={isBatchingUpdates:!1,batchedUpdates:function(e,t,n,r,i,o){var s=f.isBatchingUpdates;f.isBatchingUpdates=!0,s?e(t,n,r,i,o):h.perform(e,null,t,n,r,i,o)}};n.exports=f}),__d("ReactNativeComponentEnvironment",function(e,t,n,r){"use strict";var i=t("ReactNativeDOMIDOperations"),o=t("ReactNativeReconcileTransaction"),s={processChildrenUpdates:i.dangerouslyProcessChildrenUpdates,replaceNodeWithMarkupByID:i.dangerouslyReplaceNodeWithMarkupByID,unmountIDFromEnvironment:function(){},clearNode:function(){},ReactReconcileTransaction:o};n.exports=s}),__d("ReactNativeDOMIDOperations",function(e,t,n,r){"use strict";var i=t("ReactNativeTagHandles"),o=t("ReactMultiChildUpdateTypes"),s=t("ReactPerf"),a=t("UIManager"),u=function(e,t){if(e.length){for(var n={},r=0;r=r?(this._iteratedObject=void 0,e(void 0,!0)):(this._nextIndex=a+1,u===i?e(a,!1):u===o?e(n[a],!1):u===s?e([a,n[a]],!1):void 0)}},{key:"@@iterator",value:function(){return this}}]),t}(),n=function(){function t(e){if(babelHelpers.classCallCheck(this,t),"string"!=typeof e)throw new TypeError("Object is not a string");this._iteratedString=e,this._nextIndex=0}return babelHelpers.createClass(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,i=r.length;if(n>=i)return this._iteratedString=void 0,e(void 0,!0);var o,s=r.charCodeAt(n);if(55296>s||s>56319||n+1===i)o=r[n];else{var a=r.charCodeAt(n+1);o=56320>a||a>57343?r[n]:r[n]+r[n+1]}return this._nextIndex=n+o.length,e(o,!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||o):e[a]()}}()}();babelHelpers["extends"](u,{KIND_KEY:i,KIND_VALUE:o,KIND_KEY_VAL:s,ITERATOR_SYMBOL:a}),n.exports=u}),__d("_shouldPolyfillES6Collection",function(e,t,n,r){function i(t){var n=e[t];if(null==n)return!0;if("function"!=typeof e.Symbol)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}n.exports=i}),__d("ReactNativeGlobalResponderHandler",function(e,t,n,r){"use strict";var i=t("ReactNativeTagHandles"),o=t("UIManager"),s={onChange:function(e,t,n){null!==t?o.setJSResponder(i.mostRecentMountedNodeHandleForRootNodeID(t),n):o.clearJSResponder()}};n.exports=s}),__d("ResponderEventPlugin",function(e,t,n,r){"use strict";function i(e,t,n,r){var i=m(e)?x.startShouldSetResponder:g(e)?x.moveShouldSetResponder:e===a.topLevelTypes.topSelectionChange?x.selectionChangeShouldSetResponder:x.scrollShouldSetResponder,o=R?c.getFirstCommonAncestorID(R,t):t,s=o===R,u=p.getPooled(i,o,n,r);u.touchHistory=h.touchHistory,s?l.accumulateTwoPhaseDispatchesSkipTarget(u):l.accumulateTwoPhaseDispatches(u);var d=S(u);if(u.isPersistent()||u.constructor.release(u),!d||d===R)return null;var v,y=p.getPooled(x.responderGrant,d,n,r);y.touchHistory=h.touchHistory,l.accumulateDirectDispatches(y);var E=_(y)===!0;if(R){var T=p.getPooled(x.responderTerminationRequest,R,n,r);T.touchHistory=h.touchHistory,l.accumulateDirectDispatches(T);var w=!b(T)||_(T);if(T.isPersistent()||T.constructor.release(T),w){var I=x.responderTerminate,P=p.getPooled(I,R,n,r);P.touchHistory=h.touchHistory,l.accumulateDirectDispatches(P),v=f(v,[y,P]),C(d,E)}else{var O=p.getPooled(x.responderReject,d,n,r);O.touchHistory=h.touchHistory,l.accumulateDirectDispatches(O),v=f(v,O)}}else v=f(v,y),C(d,E);return v}function o(e,t,n){return t&&(e===a.topLevelTypes.topScroll&&!n.responderIgnoreScroll||E>0&&e===a.topLevelTypes.topSelectionChange||m(e)||g(e))}function s(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 c=o(e,n,r)?i(e,n,r,u):null,v=R&&m(e),_=R&&g(e),b=R&&y(e),S=v?x.responderStart:_?x.responderMove:b?x.responderEnd:null;if(S){var I=p.getPooled(S,R,r,u);I.touchHistory=h.touchHistory,l.accumulateDirectDispatches(I),c=f(c,I)}var P=R&&e===a.topLevelTypes.topTouchCancel,O=R&&!P&&y(e)&&s(r),k=P?x.responderTerminate:O?x.responderRelease:null;if(k){var N=p.getPooled(k,R,r,u);N.touchHistory=h.touchHistory,l.accumulateDirectDispatches(N),c=f(c,N),C(null)}var A=h.touchHistory.numberActiveTouches;return w.GlobalInteractionHandler&&A!==T&&w.GlobalInteractionHandler.onChange(A),T=A,c},GlobalResponderHandler:null, -GlobalInteractionHandler:null,injection:{injectGlobalResponderHandler:function(e){w.GlobalResponderHandler=e},injectGlobalInteractionHandler:function(e){w.GlobalInteractionHandler=e}}};n.exports=w}),__d("ResponderSyntheticEvent",function(e,t,n,r){"use strict";function i(e,t,n,r){o.call(this,e,t,n,r)}var o=t("SyntheticEvent"),s={touchHistory:function(e){return null}};o.augmentClass(i,s),n.exports=i}),__d("ResponderTouchHistoryStore",function(e,t,n,r){"use strict";var i=t("EventPluginUtils"),o=(t("invariant"),i.isMoveish),s=i.isStartish,a=i.isEndish,u={touchBank:[],numberActiveTouches:0,indexOfSingleActiveTouch:-1,mostRecentTimeStamp:0},l=function(e){return e.timeStamp||e.timestamp},c=function(e){return{touchActive:!0,startTimeStamp:l(e),startPageX:e.pageX,startPageY:e.pageY,currentPageX:e.pageX,currentPageY:e.pageY,currentTimeStamp:l(e),previousPageX:e.pageX,previousPageY:e.pageY,previousTimeStamp:l(e)}},p=function(e,t){e.touchActive=!0,e.startTimeStamp=l(t),e.startPageX=t.pageX,e.startPageY=t.pageY,e.currentPageX=t.pageX,e.currentPageY=t.pageY,e.currentTimeStamp=l(t),e.previousPageX=t.pageX,e.previousPageY=t.pageY,e.previousTimeStamp=l(t)},h=function(e){var t=u.touchBank,n=e.identifier,r=t[n];r?p(r,e):t[e.identifier]=c(e),u.mostRecentTimeStamp=l(e)},f=function(e){var t=u.touchBank,n=t[e.identifier];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=l(e),u.mostRecentTimeStamp=l(e)},d=function(e){var t=u.touchBank,n=t[e.identifier];n.previousPageX=n.currentPageX,n.previousPageY=n.currentPageY,n.previousTimeStamp=n.currentTimeStamp,n.currentPageX=e.pageX,n.currentPageY=e.pageY,n.currentTimeStamp=l(e),n.touchActive=!1,u.mostRecentTimeStamp=l(e)},v={recordTouchTrack:function(e,t){var n=u.touchBank;if(o(e))t.changedTouches.forEach(f);else if(s(e))t.changedTouches.forEach(h),u.numberActiveTouches=t.touches.length,1===u.numberActiveTouches&&(u.indexOfSingleActiveTouch=t.touches[0].identifier);else if(a(e)&&(t.changedTouches.forEach(d),u.numberActiveTouches=t.touches.length,1===u.numberActiveTouches))for(var r=0;rn&&(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 i,o,s;if(e=c(e,360),t=c(t,100),n=c(n,100),0===t)i=o=s=n;else{var a=.5>n?n*(1+t):n+t-n*t,u=2*n-a;i=r(u,a,e+1/3),o=r(u,a,e),s=r(u,a,e-1/3)}return{r:255*i,g:255*o,b:255*s}}function u(e,t,n){e=6*c(e,360),t=c(t,100),n=c(n,100);var r=math.floor(e),i=e-r,o=n*(1-t),s=n*(1-i*t),a=n*(1-(1-i)*t),u=r%6,l=[n,s,o,o,a,n][u],p=[a,n,n,s,o,o][u],h=[o,o,a,n,n,s][u];return{r:255*l,g:255*p,b:255*h}}function l(e){return e=parseFloat(e),(isNaN(e)||0>e||e>1)&&(e=1),e}function c(e,t){h(e)&&(e="100%");var n=f(e);return e=b(t,S(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 f(e){return"string"==typeof e&&-1!=e.indexOf("%")}function d(e){return 1>=e&&(e=100*e+"%"),e}function v(e){return p(e)/255}function m(e){e=e.replace(g,"").replace(y,"").toLowerCase();var t=!1;if(R[e])e=R[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.hex8.exec(e))?{r:p(n[1]),g:p(n[2]),b:p(n[3]),a:v(n[4]),format:t?"name":"hex"}:(n=E.hex6.exec(e))?{r:p(n[1]),g:p(n[2]),b:p(n[3]),format:t?"name":"hex"}:(n=E.hex4.exec(e))?{r:p(n[1]+""+n[1]),g:p(n[2]+""+n[2]),b:p(n[3]+""+n[3]),a:v(n[4]+""+n[4]),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 g=/^[\s,#]+/,y=/\s+$/,_=Math.round,b=Math.min,S=Math.max;i.prototype={toRgb:function(){return{r:_(this._r),g:_(this._g),b:_(this._b),a:this._a}},isValid:function(){return this._ok}};var R=i.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*\\)?",i="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?";return{rgb:new RegExp("rgb"+r),rgba:new RegExp("rgba"+i),hsl:new RegExp("hsl"+r),hsla:new RegExp("hsla"+i),hsv:new RegExp("hsv"+r),hsva:new RegExp("hsva"+i),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex4:/^([0-9a-fA-F]{1})([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})$/}}();n.exports=i}),__d("processTransform",function(e,t,n,r){"use strict";function i(e){var t=a.createIdentityMatrix();return e.forEach(function(e){var n=Object.keys(e)[0],r=e[n];switch(n){case"matrix":a.multiplyInto(t,t,r);break;case"perspective":o(t,a.reusePerspectiveCommand,[r]);break;case"rotateX":o(t,a.reuseRotateXCommand,[s(r)]);break;case"rotateY":o(t,a.reuseRotateYCommand,[s(r)]);break;case"rotate":case"rotateZ":o(t,a.reuseRotateZCommand,[s(r)]);break;case"scale":o(t,a.reuseScaleCommand,[r]);break;case"scaleX":o(t,a.reuseScaleXCommand,[r]);break;case"scaleY":o(t,a.reuseScaleYCommand,[r]);break;case"translate":o(t,a.reuseTranslate3dCommand,[r[0],r[1],r[2]||0]);break;case"translateX":o(t,a.reuseTranslate2dCommand,[r,0]);break;case"translateY":o(t,a.reuseTranslate2dCommand,[0,r]);break;case"skewX":o(t,a.reuseSkewXCommand,[s(r)]);break;case"skewY":o(t,a.reuseSkewYCommand,[s(r)]);break;default:throw new Error("Invalid transform name: "+n)}}),"android"===u.OS?a.decomposeMatrix(t):t}function o(e,t,n){var r=a.createIdentityMatrix(),i=[r].concat(n);t.apply(this,i),a.multiplyInto(e,e,r)}function s(e){var t=parseFloat(e,10);return e.indexOf("rad")>-1?t:t*Math.PI/180}var a=t("MatrixMath"),u=t("Platform");t("invariant"),t("stringifySafe");n.exports=i}),__d("MatrixMath",function(e,t,n,r){"use strict";var i=t("invariant"),o={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,i,o){var s=2/(t-e),a=2/(r-n),u=-2/(o-i),l=-(t+e)/(t-e),c=-(r+n)/(r-n),p=-(o+i)/(o-i);return[s,0,0,0,0,a,0,0,0,0,u,0,l,c,p,1]},createFrustum:function(e,t,n,r,i,o){var s=1/(t-e),a=1/(r-n),u=1/(i-o),l=2*(i*s),c=2*(i*a),p=(t+e)*s,h=(r+n)*a,f=(o+i)*u,d=2*(o*i*u);return[l,0,0,0,0,c,0,0,p,h,f,-1,0,0,d,0]},createPerspective:function(e,t,n,r){var i=1/Math.tan(e),o=1/(n-r),s=(r+n)*o,a=2*(r*n*o);return[i/t,0,0,0,0,i,0,0,0,0,s,-1,0,0,a,0]},createTranslate2d:function(e,t){var n=o.createIdentityMatrix();return o.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=o.createIdentityMatrix();return o.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=o.createIdentityMatrix();return o.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],i=t[1],o=t[2],s=t[3],a=t[4],u=t[5],l=t[6],c=t[7],p=t[8],h=t[9],f=t[10],d=t[11],v=t[12],m=t[13],g=t[14],y=t[15],_=n[0],b=n[1],S=n[2],R=n[3];e[0]=_*r+b*a+S*p+R*v,e[1]=_*i+b*u+S*h+R*m,e[2]=_*o+b*l+S*f+R*g,e[3]=_*s+b*c+S*d+R*y,_=n[4],b=n[5],S=n[6],R=n[7],e[4]=_*r+b*a+S*p+R*v,e[5]=_*i+b*u+S*h+R*m,e[6]=_*o+b*l+S*f+R*g,e[7]=_*s+b*c+S*d+R*y,_=n[8],b=n[9],S=n[10],R=n[11],e[8]=_*r+b*a+S*p+R*v,e[9]=_*i+b*u+S*h+R*m,e[10]=_*o+b*l+S*f+R*g,e[11]=_*s+b*c+S*d+R*y,_=n[12],b=n[13],S=n[14],R=n[15],e[12]=_*r+b*a+S*p+R*v,e[13]=_*i+b*u+S*h+R*m,e[14]=_*o+b*l+S*f+R*g,e[15]=_*s+b*c+S*d+R*y},determinant:function(e){var t=babelHelpers.slicedToArray(e,16),n=t[0],r=t[1],i=t[2],o=t[3],s=t[4],a=t[5],u=t[6],l=t[7],c=t[8],p=t[9],h=t[10],f=t[11],d=t[12],v=t[13],m=t[14],g=t[15];return o*u*p*d-i*l*p*d-o*a*h*d+r*l*h*d+i*a*f*d-r*u*f*d-o*u*c*v+i*l*c*v+o*s*h*v-n*l*h*v-i*s*f*v+n*u*f*v+o*a*c*m-r*l*c*m-o*s*p*m+n*l*p*m+r*s*f*m-n*a*f*m-i*a*c*g+r*u*c*g+i*s*p*g-n*u*p*g-r*s*h*g+n*a*h*g},inverse:function(e){var t=o.determinant(e);if(!t)return e;var n=babelHelpers.slicedToArray(e,16),r=n[0],i=n[1],s=n[2],a=n[3],u=n[4],l=n[5],c=n[6],p=n[7],h=n[8],f=n[9],d=n[10],v=n[11],m=n[12],g=n[13],y=n[14],_=n[15];return[(c*v*g-p*d*g+p*f*y-l*v*y-c*f*_+l*d*_)/t,(a*d*g-s*v*g-a*f*y+i*v*y+s*f*_-i*d*_)/t,(s*p*g-a*c*g+a*l*y-i*p*y-s*l*_+i*c*_)/t,(a*c*f-s*p*f-a*l*d+i*p*d+s*l*v-i*c*v)/t,(p*d*m-c*v*m-p*h*y+u*v*y+c*h*_-u*d*_)/t,(s*v*m-a*d*m+a*h*y-r*v*y-s*h*_+r*d*_)/t,(a*c*m-s*p*m-a*u*y+r*p*y+s*u*_-r*c*_)/t,(s*p*h-a*c*h+a*u*d-r*p*d-s*u*v+r*c*v)/t,(l*v*m-p*f*m+p*h*g-u*v*g-l*h*_+u*f*_)/t,(a*f*m-i*v*m-a*h*g+r*v*g+i*h*_-r*f*_)/t,(i*p*m-a*l*m+a*u*g-r*p*g-i*u*_+r*l*_)/t,(a*l*h-i*p*h-a*u*f+r*p*f+i*u*v-r*l*v)/t,(c*f*m-l*d*m-c*h*g+u*d*g+l*h*y-u*f*y)/t,(i*d*m-s*f*m+s*h*g-r*d*g-i*h*y+r*f*y)/t,(s*l*m-i*c*m-s*u*g+r*c*g+i*u*y-r*l*y)/t,(i*c*h-s*l*h+s*u*f-r*c*f-i*u*d+r*l*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=babelHelpers.slicedToArray(e,4),r=n[0],i=n[1],o=n[2],s=n[3];return[r*t[0]+i*t[4]+o*t[8]+s*t[12],r*t[1]+i*t[5]+o*t[9]+s*t[13],r*t[2]+i*t[6]+o*t[10]+s*t[14],r*t[3]+i*t[7]+o*t[11]+s*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||o.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=babelHelpers.slicedToArray(e,4),i=r[0],s=r[1],a=r[2],u=r[3],l=u*u,c=i*i,p=s*s,h=a*a,f=i*s+a*u,d=l+c+p+h,v=180/Math.PI;return f>.49999*d?[0,2*Math.atan2(i,u)*v,90]:-.49999*d>f?[0,-2*Math.atan2(i,u)*v,-90]:[o.roundTo3Places(Math.atan2(2*i*u-2*s*a,1-2*c-2*h)*v),o.roundTo3Places(Math.atan2(2*s*u-2*i*a,1-2*p-2*h)*v),o.roundTo3Places(Math.asin(2*i*s+2*a*u)*v)]},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){i(16===e.length,"Matrix decomposition needs a list of 3d matrix values, received %s",e);var t=[],n=[],r=[],s=[],a=[];if(e[15]){for(var u=[],l=[],c=0;4>c;c++){u.push([]);for(var p=0;4>p;p++){var h=e[4*c+p]/e[15];u[c].push(h),l.push(3===p?0:h)}}if(l[15]=1,o.determinant(l)){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=o.inverse(l),v=o.transpose(d),t=o.multiplyVectorByMatrix(f,v);else t[0]=t[1]=t[2]=0,t[3]=1;for(var c=0;3>c;c++)a[c]=u[3][c];var m=[];for(c=0;3>c;c++)m[c]=[u[c][0],u[c][1],u[c][2]];r[0]=o.v3Length(m[0]),m[0]=o.v3Normalize(m[0],r[0]),s[0]=o.v3Dot(m[0],m[1]),m[1]=o.v3Combine(m[1],m[0],1,-s[0]),s[0]=o.v3Dot(m[0],m[1]),m[1]=o.v3Combine(m[1],m[0],1,-s[0]),r[1]=o.v3Length(m[1]),m[1]=o.v3Normalize(m[1],r[1]),s[0]/=r[1],s[1]=o.v3Dot(m[0],m[2]),m[2]=o.v3Combine(m[2],m[0],1,-s[1]),s[2]=o.v3Dot(m[1],m[2]),m[2]=o.v3Combine(m[2],m[1],1,-s[2]),r[2]=o.v3Length(m[2]),m[2]=o.v3Normalize(m[2],r[2]),s[1]/=r[2],s[2]/=r[2];var g=o.v3Cross(m[1],m[2]);if(o.v3Dot(m[0],g)<0)for(c=0;3>c;c++)r[c]*=-1,m[c][0]*=-1,m[c][1]*=-1,m[c][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:r,skew:s,translation:a,rotate:y[2],rotateX:y[0],rotateY:y[1],scaleX:r[0],scaleY:r[1],translateX:a[0],translateY:a[1]}}}}};n.exports=o}),__d("sizesDiffer",function(e,t,n,r){"use strict";var i={width:void 0,height:void 0},o=function(e,t){return e=e||i,t=t||i,e!==t&&(e.width!==t.width||e.height!==t.height)};n.exports=o}),__d("ReactNativeViewAttributes",function(e,t,n,r){"use strict";var i=t("ReactNativeStyleAttributes"),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,needsOffscreenAlphaCompositing:!0,style:i},o.RCTView=babelHelpers["extends"]({},o.UIView,{removeClippedSubviews:!0}),n.exports=o}),__d("StyleSheetPropType",function(e,t,n,r){"use strict";function i(e){var t=o(e);return function(e,n,r,i){var o=e;return e[n]&&(o={},o[n]=s(e[n])),t(o,n,r,i)}}var o=t("createStrictShapeTypeChecker"),s=t("flattenStyle");n.exports=i}),__d("createStrictShapeTypeChecker",function(e,t,n,r){"use strict";function i(e){function t(t,n,r,i,u){if(!n[r])return void(t&&s(!1,"Required object `"+r+"` was not specified in "+("`"+i+"`.")));var l=n[r],c=typeof l,p=u&&o[u]||"(unknown)";"object"!==c&&s(!1,"Invalid "+p+" `"+r+"` of type `"+c+"` "+("supplied to `"+i+"`, expected `object`."));var h=a(n[r],e);for(var f in h){var d=e[f];d||s(!1,"Invalid props."+r+" key `"+f+"` supplied to `"+i+"`.\nBad object: "+JSON.stringify(n[r],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(e),null," "));var v=d(l,f,i,u);v&&s(!1,v.message+"\nBad object: "+JSON.stringify(n[r],null," "))}}function n(e,n,r,i){return t(!1,e,n,r,i)}return n.isRequired=t.bind(null,!0),n}var o=t("ReactPropTypeLocationNames"),s=t("invariant"),a=t("merge");n.exports=i}),__d("requireNativeComponent",function(e,t,n,r){"use strict";function i(e,t,n){var r=s[e];if(!r||!r.NativeProps)return v(!1,'Native component for "%s" does not exist',e),a;var i=babelHelpers["extends"]({},s.RCTView.NativeProps,r.NativeProps);r.uiViewClassName=e,r.validAttributes={},r.propTypes=t&&t.propTypes;for(var l in i){var c=!1,p={},h=m[i[l]];h&&(p.diff=h,c=!0);var f=g[i[l]];f&&(p.process=f,c=!0),r.validAttributes[l]=c?p:!0}return r.validAttributes.style=o,u(r)}var o=t("ReactNativeStyleAttributes"),s=t("UIManager"),a=t("UnimplementedView"),u=t("createReactNativeComponentClass"),l=t("insetsDiffer"),c=t("pointsDiffer"),p=t("matricesDiffer"),h=t("processColor"),f=t("resolveAssetSource"),d=t("sizesDiffer"),v=(t("verifyPropTypes"),t("warning")),m={CATransform3D:p,CGPoint:c,CGSize:d,UIEdgeInsets:l},g={CGColor:h,CGColorArray:h,UIColor:h,UIColorArray:h,CGImage:f,UIImage:f,RCTImageSource:f,Color:h};n.exports=i}),__d("verifyPropTypes",function(e,t,n,r){"use strict";function i(e,t,n){if(t){var r=e.name||e.displayName||"unknown";if(!e.propTypes)throw new Error("`"+r+"` has no propTypes defined`");var i=t.NativeProps;for(var s in i)if(!(e.propTypes[s]||o[s]||n&&n[s])){var a;throw a=e.propTypes.hasOwnProperty(s)?"`"+r+"` has incorrectly defined propType for native prop `"+t.uiViewClassName+"."+s+"` of native type `"+i[s]:"`"+r+"` has no propType for native prop `"+t.uiViewClassName+"."+s+"` of native type `"+i[s]+"`",new Error(a)}}}var o=t("ReactNativeStyleAttributes");n.exports=i}),__d("UnimplementedView",function(e,t,n,r){"use strict";var i=t("React"),o=t("StyleSheet"),s=i.createClass({displayName:"UnimplementedView",setNativeProps:function(){},render:function(){var e=t("View");return i.createElement(e,{style:[a.unimplementedView,this.props.style]},this.props.children)}}),a=o.create({unimplementedView:{borderWidth:1,borderColor:"red",alignSelf:"flex-start"}});n.exports=s}),__d("StyleSheet",function(e,t,n,r){"use strict";var i=t("StyleSheetRegistry"),o=t("StyleSheetValidation"),s=t("flattenStyle"),a=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"create",value:function(e){var t={};for(var n in e)o.validateStyle(n,e),t[n]=i.registerStyle(e[n]);return t}}]),e}();a.flatten=s,n.exports=a}),__d("StyleSheetValidation",function(e,t,n,r){"use strict";var i=t("ImageStylePropTypes"),o=(t("ReactPropTypeLocations"),t("TextStylePropTypes")),s=t("ViewStylePropTypes"),a=(t("invariant"),function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"validateStyleProp",value:function(e,t,n){return}},{key:"validateStyle",value:function(e,t){return}},{key:"addValidStylePropTypes",value:function(e){for(var t in e)u[t]=e[t]}}]),e}()),u={};a.addValidStylePropTypes(i),a.addValidStylePropTypes(o),a.addValidStylePropTypes(s),n.exports=a}),__d("createReactNativeComponentClass",function(e,t,n,r){"use strict";var i=t("ReactNativeBaseComponent"),o=function(e){var t=function(e){this._currentElement=e,this._rootNodeID=null,this._renderedChildren=null};return t.displayName=e.uiViewClassName,t.viewConfig=e,t.propTypes=e.propTypes,t.prototype=new i(e),t.prototype.constructor=t,t};n.exports=o}),__d("ReactNativeBaseComponent",function(e,t,n,r){"use strict";var i=t("NativeMethodsMixin"),o=t("ReactNativeAttributePayload"),s=t("ReactNativeEventEmitter"),a=t("ReactNativeTagHandles"),u=t("ReactMultiChild"),l=t("UIManager"),c=(t("deepFreezeAndThrowOnMutationInDev"),t("warning")),p=s.registrationNames,h=s.putListener,f=s.deleteListener,d=s.deleteAllListeners,v=function(e){this.viewConfig=e},m=function(e){var t=m._cache[e];if(t)return t;for(var n=[],r=0;e>r;r++)n[r]=r;return m._cache[e]=n,n};m._cache={},v.Mixin={getPublicInstance:function(){return this},construct:function(e){this._currentElement=e},unmountComponent:function(){d(this._rootNodeID),this.unmountChildren(),this._rootNodeID=null},initializeChildren:function(e,t,n,r){ -var i=this.mountChildren(e,n,r);if(i.length){for(var o=m(i.length),s=[],u=0;u=t)return e[n];return e[e.length-1]||1}function p(e){if("object"==typeof e)return e;var t=v.getAssetByID(e);return t?h(t):null}function h(e){var t=i();return{__packager_asset:!0,width:e.width,height:e.height,uri:t?a(t,e):s(e),scale:c(e.scales,m.get())}}var f,d,v=t("AssetRegistry"),m=t("PixelRatio"),g=t("Platform"),y=t("NativeModules").SourceCode;n.exports=p,n.exports.pickScale=c}),__d("AssetRegistry",function(e,t,n,r){"use strict";function i(e){return s.push(e)}function o(e){return s[e-1]}var s=[];n.exports={registerAsset:i,getAssetByID:o}}),__d("PixelRatio",function(e,t,n,r){"use strict";var i=t("Dimensions"),o=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"get",value:function(){return i.get("window").scale}},{key:"getFontScale",value:function(){return i.get("window").fontScale||e.get()}},{key:"getPixelSizeForLayoutSize",value:function(t){return Math.round(t*e.get())}},{key:"startDetecting",value:function(){}}]),e}();n.exports=o}),__d("Dimensions",function(e,t,n,r){"use strict";var i=t("UIManager"),o=t("invariant"),s=i.Dimensions;if(s&&s.windowPhysicalPixels){s=JSON.parse(JSON.stringify(s));var a=s.windowPhysicalPixels;s.window={width:a.width/a.scale,height:a.height/a.scale,scale:a.scale,fontScale:a.fontScale},delete s.windowPhysicalPixels}var u=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"set",value:function(e){return babelHelpers["extends"](s,e),!0}},{key:"get",value:function(e){return o(s[e],"No dimension set for key "+e),s[e]}}]),e}();n.exports=u}),__d("ReactChildren",function(e,t,n,r){"use strict";function i(e){return(""+e).replace(S,"//")}function o(e,t){this.func=e,this.context=t,this.count=0}function s(e,t,n){var r=e.func,i=e.context;r.call(i,t,e.count++)}function a(e,t,n){if(null==e)return e;var r=o.getPooled(t,n);y(e,s,r),o.release(r)}function u(e,t,n,r){this.result=e,this.keyPrefix=t,this.func=n,this.context=r,this.count=0}function l(e,t,n){var r=e.result,o=e.keyPrefix,s=e.func,a=e.context,u=s.call(a,t,e.count++);Array.isArray(u)?c(u,r,n,g.thatReturnsArgument):null!=u&&(m.isValidElement(u)&&(u=m.cloneAndReplaceKey(u,o+(u!==t?i(u.key||"")+"/":"")+n)),r.push(u))}function c(e,t,n,r,o){var s="";null!=n&&(s=i(n)+"/");var a=u.getPooled(t,s,r,o);y(e,l,a),u.release(a)}function p(e,t,n){if(null==e)return e;var r=[];return c(e,r,null,t,n),r}function h(e,t,n){return null}function f(e,t){return y(e,h,null)}function d(e){var t=[];return c(e,t,null,g.thatReturnsArgument),t}var v=t("PooledClass"),m=t("ReactElement"),g=t("emptyFunction"),y=t("traverseAllChildren"),_=v.twoArgumentPooler,b=v.fourArgumentPooler,S=/\/(?!\/)/g;o.prototype.destructor=function(){this.func=null,this.context=null,this.count=0},v.addPoolingTo(o,_),u.prototype.destructor=function(){this.result=null,this.keyPrefix=null,this.func=null,this.context=null,this.count=0},v.addPoolingTo(u,b);var R={forEach:a,map:p,mapIntoWithKeyPrefixInternal:c,count:f,toArray:d};n.exports=R}),__d("ReactClass",function(e,t,n,r){"use strict";function i(e,t){var n=E.hasOwnProperty(t)?E[t]:null;C.hasOwnProperty(t)&&g(n===S.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)&&g(n===S.DEFINE_MANY||n===S.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 o(e,t){if(t){g("function"!=typeof t,"ReactClass: You're attempting to use a component class as a mixin. Instead, just use a regular object."),g(!f.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(b)&&T.mixins(e,t.mixins);for(var r in t)if(t.hasOwnProperty(r)&&r!==b){var o=t[r];if(i(n,r),T.hasOwnProperty(r))T[r](e,o);else{var s=E.hasOwnProperty(r),a=n.hasOwnProperty(r),c="function"==typeof o,p=c&&!s&&!a&&t.autobind!==!1;if(p)n.__reactAutoBindMap||(n.__reactAutoBindMap={}),n.__reactAutoBindMap[r]=o,n[r]=o;else if(a){var h=E[r];g(s&&(h===S.DEFINE_MANY_MERGED||h===S.DEFINE_MANY),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",h,r),h===S.DEFINE_MANY_MERGED?n[r]=u(n[r],o):h===S.DEFINE_MANY&&(n[r]=l(n[r],o))}else n[r]=o}}}}function s(e,t){if(t)for(var n in t){var r=t[n];if(t.hasOwnProperty(n)){var i=n in T;g(!i,'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 o=n in e;g(!o,"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 a(e,t){g(e&&t&&"object"==typeof e&&"object"==typeof t,"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.");for(var n in t)t.hasOwnProperty(n)&&(g(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 u(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 i={};return a(i,n),a(i,r),i}}function l(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function c(e,t){var n=t.bind(e);return n}function p(e){for(var t in e.__reactAutoBindMap)if(e.__reactAutoBindMap.hasOwnProperty(t)){var n=e.__reactAutoBindMap[t];e[t]=c(e,n)}}var h=t("ReactComponent"),f=t("ReactElement"),d=(t("ReactPropTypeLocations"),t("ReactPropTypeLocationNames"),t("ReactNoopUpdateQueue")),v=t("Object.assign"),m=t("emptyObject"),g=t("invariant"),y=t("keyMirror"),_=t("keyOf"),b=(t("warning"),_({mixins:null})),S=y({DEFINE_ONCE:null,DEFINE_MANY:null,OVERRIDE_BASE:null,DEFINE_MANY_MERGED:null}),R=[],E={mixins:S.DEFINE_MANY,statics:S.DEFINE_MANY,propTypes:S.DEFINE_MANY,contextTypes:S.DEFINE_MANY,childContextTypes:S.DEFINE_MANY,getDefaultProps:S.DEFINE_MANY_MERGED,getInitialState:S.DEFINE_MANY_MERGED,getChildContext:S.DEFINE_MANY_MERGED,render:S.DEFINE_ONCE,componentWillMount:S.DEFINE_MANY,componentDidMount:S.DEFINE_MANY,componentWillReceiveProps:S.DEFINE_MANY,shouldComponentUpdate:S.DEFINE_ONCE,componentWillUpdate:S.DEFINE_MANY,componentDidUpdate:S.DEFINE_MANY,componentWillUnmount:S.DEFINE_MANY,updateComponent:S.OVERRIDE_BASE},T={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n.")}var s=g[e]||(g[e]={});if(s[r])return null;s[r]=!0;var a={parentOrOwner:r,url:" See https://fb.me/react-warning-keys for more information.",childOwner:null};return t&&t._owner&&t._owner!==f.current&&(a.childOwner=" It was passed a child from "+t._owner.getName()+"."),a}function a(e,t){if("object"==typeof e)if(Array.isArray(e))for(var n=0;nr;r++)n[r]=t(e[r],r);return n},s=function(e,t){if(e.isColor)this.red=e.red,this.green=e.green,this.blue=e.blue,this.alpha=e.alpha;else{var n=i[e];switch(n&&(e=n,t="hex"),typeof e){case"string":t||(t=(t=e.match(/^rgb|^hsb|^hsl/))?t[0]:"hex");break;case"object":t=t||"rgb",e=e.toString();break;case"number":t="hex",e=e.toString(16)}e=s["parse"+t.toUpperCase()](e),this.red=e[0],this.green=e[1],this.blue=e[2],this.alpha=e[3]}this.isColor=!0},a=function(e,t,n){return Math.min(n,Math.max(t,e))},u=/([-.\d]+\%?)\s*,\s*([-.\d]+\%?)\s*,\s*([-.\d]+\%?)\s*,?\s*([-.\d]*\%?)/,l=/^#?([a-f0-9]{1,2})([a-f0-9]{1,2})([a-f0-9]{1,2})([a-f0-9]{0,2})$/i;s.parseRGB=function(e){return o(e.match(u).slice(1),function(e,t){return e&&(e=parseFloat(e)*("%"==e[e.length-1]?2.55:1)),3>t?Math.round((e%=256)<0?e+256:e):a(""===e?1:Number(e),0,1)})},s.parseHEX=function(e){return 1==e.length&&(e=e+e+e),o(e.match(l).slice(1),function(e,t){return 3==t?e?parseInt(e,16)/255:1:parseInt(1==e.length?e+e:e,16)})},s.parseHSB=function(e){var t=o(e.match(u).slice(1),function(e,t){return e&&(e=parseFloat(e)),0===t?Math.round((e%=360)<0?e+360:e):3>t?a(Math.round(e),0,100):a(""===e?1:Number(e),0,1)}),n=t[3],r=Math.round(t[2]/100*255);if(0==t[1])return[r,r,r,n];var i=t[0],s=i%60,l=Math.round(t[2]*(100-t[1])/1e4*255),c=Math.round(t[2]*(6e3-t[1]*s)/6e5*255),p=Math.round(t[2]*(6e3-t[1]*(60-s))/6e5*255);switch(Math.floor(i/60)){case 0:return[r,p,l,n];case 1:return[c,r,l,n];case 2:return[l,r,p,n];case 3:return[l,c,r,n];case 4:return[p,l,r,n];default:return[r,l,c,n]}},s.parseHSL=function(e){var t=o(e.match(u).slice(1),function(e,t){return e&&(e=parseFloat(e)),0===t?Math.round((e%=360)<0?e+360:e):3>t?a(Math.round(e),0,100):a(""===e?1:Number(e),0,1)}),n=t[0]/60,r=t[1]/100,i=t[2]/100,s=t[3],l=(1-Math.abs(2*i-1))*r,c=l*(1-Math.abs(n%2-1)),p=i-l/2,h=Math.round(255*(l+p)),f=Math.round(255*(c+p)),d=Math.round(255*p);switch(Math.floor(n)){case 0:return[h,f,d,s];case 1:return[f,h,d,s];case 2:return[d,h,f,s];case 3:return[d,f,h,s];case 4:return[f,d,h,s];default:return[h,d,f,s]}};var c=function(e,t){return 1!=t[3]?e+="a":t.pop(),e+"("+t.join(", ")+")"};s.prototype={toHSB:function(e){var t=this.red,n=this.green,r=this.blue,i=this.alpha,o=Math.max(t,n,r),s=Math.min(t,n,r),a=o-s,u=0,l=0!=a?a/o:0,p=o/255;if(l){var h=(o-t)/a,f=(o-n)/a,d=(o-r)/a;u=t==o?d-f:n==o?2+h-d:4+f-h,(u/=6)<0&&u++}var v=[Math.round(360*u),Math.round(100*l),Math.round(100*p),i];return e?v:c("hsb",v)},toHSL:function(e){var t=this.red,n=this.green,r=this.blue,i=this.alpha,o=Math.max(t,n,r),s=Math.min(t,n,r),a=o-s,u=0,l=0!=a?a/(255-Math.abs(o+s-255)):0,p=(o+s)/512;if(l){var h=(o-t)/a,f=(o-n)/a,d=(o-r)/a;u=t==o?d-f:n==o?2+h-d:4+f-h,(u/=6)<0&&u++}var v=[Math.round(360*u),Math.round(100*l),Math.round(100*p),i];return e?v:c("hsl",v)},toHEX:function(e){var t=this.alpha,n=1==(t=Math.round(255*t).toString(16)).length?t+t:t,r=o([this.red,this.green,this.blue],function(e){return e=e.toString(16),1==e.length?"0"+e:e});return e?r.concat(n):"#"+r.join("")+("ff"==n?"":n)},toRGB:function(e){var t=[this.red,this.green,this.blue,this.alpha];return e?t:c("rgb",t)}},s.prototype.toString=s.prototype.toRGB,s.hex=function(e){return new s(e,"hex")},null==this.hex&&(this.hex=s.hex),s.hsb=function(e,t,n,r){return new s([e||0,t||0,n||0,null==r?1:r],"hsb")},null==this.hsb&&(this.hsb=s.hsb),s.hsl=function(e,t,n,r){return new s([e||0,t||0,n||0,null==r?1:r],"hsl")},null==this.hsl&&(this.hsl=s.hsl),s.rgb=function(e,t,n,r){return new s([e||0,t||0,n||0,null==r?1:r],"rgb")},null==this.rgb&&(this.rgb=s.rgb),s.detach=function(e){return e=new s(e),[s.rgb(e.red,e.green,e.blue).toString(),e.alpha]},n.exports=s}),__d("ARTSerializablePath",function(e,t,n,r){"use strict";var i=t("art/core/class.js"),o=t("art/core/path.js"),s=0,a=1,u=2,l=3,c=4,p=i(o,{initialize:function(e){this.reset(),e instanceof p?this.path=e.path.slice(0):e&&(e.applyToPath?e.applyToPath(this):this.push(e))},onReset:function(){this.path=[]},onMove:function(e,t,n,r){this.path.push(s,n,r)},onLine:function(e,t,n,r){this.path.push(u,n,r)},onBezierCurve:function(e,t,n,r,i,o,s,a){this.path.push(l,n,r,i,o,s,a)},_arcToBezier:o.prototype.onArc,onArc:function(e,t,n,r,i,o,s,a,u,l,p,h){return s!==a||h?this._arcToBezier(e,t,n,r,i,o,s,a,u,l,p,h):void this.path.push(c,i,o,s,u,l,p?0:1)},onClose:function(){this.path.push(a)},toJSON:function(){return this.path}});n.exports=p}),__d("art/core/class.js",function(e,t,n,r){n.exports=function(e){for(var t={},n=0,r=arguments.length;r>n;n++){var i=arguments[n];"function"==typeof i&&(i=i.prototype);for(var o in i)t[o]=i[o]}return t.initialize||(t.initialize=function(){}),t.constructor=function(e,n,r,i,o,s,a,u){return new t.initialize(e,n,r,i,o,s,a,u)},t.constructor.prototype=t.initialize.prototype=t,t.constructor}}),__d("art/core/path.js",function(e,t,n,r){var i=t("art/core/class.js");n.exports=i({initialize:function(e){this.reset().push(e)},push:function(){var e=Array.prototype.join.call(arguments," ").match(/[a-df-z]|[\-+]?(?:[\d\.]e[\-+]?|[^\s\-+,a-z])+/gi);if(!e)return this;for(var t,n=e[0],r=1;n;){switch(n){case"m":this.move(e[r++],e[r++]);break;case"l":this.line(e[r++],e[r++]);break;case"c":this.curve(e[r++],e[r++],e[r++],e[r++],e[r++],e[r++]);break;case"s":this.curve(e[r++],e[r++],null,null,e[r++],e[r++]);break;case"q":this.curve(e[r++],e[r++],e[r++],e[r++]);break;case"t":this.curve(e[r++],e[r++]);break;case"a":this.arc(e[r+5],e[r+6],e[r],e[r+1],e[r+3],!+e[r+4],e[r+2]),r+=7;break;case"h":this.line(e[r++],0);break;case"v":this.line(0,e[r++]);break;case"M":this.moveTo(e[r++],e[r++]);break;case"L":this.lineTo(e[r++],e[r++]);break;case"C":this.curveTo(e[r++],e[r++],e[r++],e[r++],e[r++],e[r++]);break;case"S":this.curveTo(e[r++],e[r++],null,null,e[r++],e[r++]); -break;case"Q":this.curveTo(e[r++],e[r++],e[r++],e[r++]);break;case"T":this.curveTo(e[r++],e[r++]);break;case"A":this.arcTo(e[r+5],e[r+6],e[r],e[r+1],e[r+3],!+e[r+4],e[r+2]),r+=7;break;case"H":this.lineTo(e[r++],this.penY);break;case"V":this.lineTo(this.penX,e[r++]);break;case"Z":case"z":this.close();break;default:n=t,r--;continue}t=n,"m"==t?t="l":"M"==t&&(t="L"),n=e[r++]}return this},reset:function(){return this.penX=this.penY=0,this.penDownX=this.penDownY=null,this._pivotX=this._pivotY=0,this.onReset(),this},move:function(e,t){return this.onMove(this.penX,this.penY,this._pivotX=this.penX+=+e,this._pivotY=this.penY+=+t),this},moveTo:function(e,t){return this.onMove(this.penX,this.penY,this._pivotX=this.penX=+e,this._pivotY=this.penY=+t),this},line:function(e,t){return this.lineTo(this.penX+ +e,this.penY+ +t)},lineTo:function(e,t){return null==this.penDownX&&(this.penDownX=this.penX,this.penDownY=this.penY),this.onLine(this.penX,this.penY,this._pivotX=this.penX=+e,this._pivotY=this.penY=+t),this},curve:function(e,t,n,r,i,o){var s=this.penX,a=this.penY;return this.curveTo(s+ +e,a+ +t,null==n?null:s+ +n,null==r?null:a+ +r,null==i?null:s+ +i,null==o?null:a+ +o)},curveTo:function(e,t,n,r,i,o){var s=this.penX,a=this.penY;return null==n&&(n=+e,r=+t,e=2*s-(this._pivotX||0),t=2*a-(this._pivotY||0)),null==i?(this._pivotX=+e,this._pivotY=+t,i=+n,o=+r,n=(i+2*+e)/3,r=(o+2*+t)/3,e=(s+2*+e)/3,t=(a+2*+t)/3):(this._pivotX=+n,this._pivotY=+r),null==this.penDownX&&(this.penDownX=s,this.penDownY=a),this.onBezierCurve(s,a,+e,+t,+n,+r,this.penX=+i,this.penY=+o),this},arc:function(e,t,n,r,i,o,s){return this.arcTo(this.penX+ +e,this.penY+ +t,n,r,i,o,s)},arcTo:function(e,t,n,r,i,o,s){if(r=Math.abs(+r||+n||+t-this.penY),n=Math.abs(+n||+e-this.penX),!n||!r||e==this.penX&&t==this.penY)return this.lineTo(e,t);var a=this.penX,u=this.penY,l=!+o,c=!!+i,p=s?s*Math.PI/180:0,h=Math.cos(p),f=Math.sin(p);e-=a,t-=u;var d=h*e/2+f*t/2,v=-f*e/2+h*t/2,m=n*n*r*r,g=r*r*d*d,y=n*n*v*v,_=m-y-g;if(0>_)_=Math.sqrt(1-_/m),n*=_,r*=_,d=e/2,v=t/2;else{_=Math.sqrt(_/(y+g)),c==l&&(_=-_);var b=-_*v*n/r,S=_*d*r/n;d=h*b-f*S+e/2,v=f*b+h*S+t/2}var R=h/n,E=f/n,T=-f/r,C=h/r,x=Math.atan2(T*-d+C*-v,R*-d+E*-v),w=Math.atan2(T*(e-d)+C*(t-v),R*(e-d)+E*(t-v));return d+=a,v+=u,e+=a,t+=u,null==this.penDownX&&(this.penDownX=this.penX,this.penDownY=this.penY),this.onArc(a,u,this._pivotX=this.penX=e,this._pivotY=this.penY=t,d,v,n,r,x,w,!l,s),this},counterArc:function(e,t,n,r,i){return this.arc(e,t,n,r,i,!0)},counterArcTo:function(e,t,n,r,i){return this.arcTo(e,t,n,r,i,!0)},close:function(){return null!=this.penDownX&&(this.onClose(this.penX,this.penY,this.penX=this.penDownX,this.penY=this.penDownY),this.penDownX=null),this},onReset:function(){},onMove:function(e,t,n,r){},onLine:function(e,t,n,r){this.onBezierCurve(e,t,e,t,n,r,n,r)},onBezierCurve:function(e,t,n,r,i,o,s,a){var u,l,c,p,h,f=s-e,d=a-t,v=f*f+d*d;if(c=n-e,p=r-t,h=c*f+p*d,h>v?(c-=f,p-=d):h>0&&0!=v&&(c-=h/v*f,p-=h/v*d),u=c*c+p*p,c=i-e,p=o-t,h=c*f+p*d,h>v?(c-=f,p-=d):h>0&&0!=v&&(c-=h/v*f,p-=h/v*d),l=c*c+p*p,.01>u&&.01>l)return void this.onLine(e,t,s,a);if(isNaN(u)||isNaN(l))throw new Error("Bad input");var m=.5*(n+i),g=.5*(r+o),y=.5*(n+e),_=.5*(r+t),b=.5*(y+m),S=.5*(_+g),R=.5*(s+i),E=.5*(a+o),T=.5*(R+m),C=.5*(E+g),x=.5*(b+T),w=.5*(S+C);this.onBezierCurve(e,t,y,_,b,S,x,w),this.onBezierCurve(x,w,T,C,R,E,s,a)},onArc:function(e,t,n,r,i,o,s,a,u,l,c,p){var h=p?p*Math.PI/180:0,f=Math.cos(h),d=Math.sin(h),v=f*s,m=-d*a,g=d*s,y=f*a,_=l-u;0>_&&!c?_+=2*Math.PI:_>0&&c&&(_-=2*Math.PI);for(var b=Math.ceil(Math.abs(_/(Math.PI/2))),S=_/b,R=4/3*Math.tan(S/4),E=Math.cos(u),T=Math.sin(u),C=0;b>C;C++){var x=E-R*T,w=T+R*E;u+=S,E=Math.cos(u),T=Math.sin(u);var I=E+R*T,P=T-R*E;this.onBezierCurve(e,t,i+v*x+m*w,o+g*x+y*w,i+v*I+m*P,o+g*I+y*P,e=i+v*E+m*T,t=o+g*E+y*T)}},onClose:function(e,t,n,r){this.onLine(e,t,n,r)}})}),__d("art/core/transform.js",function(e,t,n,r){function i(e,t,n,r,i,o){return e&&"object"==typeof e&&(t=e.yx,r=e.yy,o=e.y,n=e.xy,i=e.x,e=e.xx),this.xx=null==e?1:e,this.yx=t||0,this.xy=n||0,this.yy=null==r?1:r,this.x=(null==i?this.x:i)||0,this.y=(null==o?this.y:o)||0,this._transform(),this}var o=t("art/core/class.js");n.exports=o({initialize:i,_transform:function(){},xx:1,yx:0,x:0,xy:0,yy:1,y:0,transform:function(e,t,n,r,i,o){var s=this;return e&&"object"==typeof e&&(t=e.yx,r=e.yy,o=e.y,n=e.xy,i=e.x,e=e.xx),i||(i=0),o||(o=0),this.transformTo(s.xx*e+s.xy*t,s.yx*e+s.yy*t,s.xx*n+s.xy*r,s.yx*n+s.yy*r,s.xx*i+s.xy*o+s.x,s.yx*i+s.yy*o+s.y)},transformTo:i,translate:function(e,t){return this.transform(1,0,0,1,e,t)},move:function(e,t){return this.x+=e||0,this.y+=t||0,this._transform(),this},scale:function(e,t){return null==t&&(t=e),this.transform(e,0,0,t,0,0)},rotate:function(e,t,n){(null==t||null==n)&&(t=(this.left||0)+(this.width||0)/2,n=(this.top||0)+(this.height||0)/2);var r=e*Math.PI/180,i=Math.sin(r),o=Math.cos(r);this.transform(1,0,0,1,t,n);var s=this;return this.transformTo(o*s.xx-i*s.yx,i*s.xx+o*s.yx,o*s.xy-i*s.yy,i*s.xy+o*s.yy,s.x,s.y).transform(1,0,0,1,-t,-n)},moveTo:function(e,t){var n=this;return this.transformTo(n.xx,n.yx,n.xy,n.yy,e,t)},rotateTo:function(e,t,n){var r=this,i=r.yx/r.xx>r.yy/r.xy?-1:1;return(r.xx<0?r.xy>=0:r.xy<0)&&(i=-i),this.rotate(e-180*Math.atan2(i*r.yx,i*r.xx)/Math.PI,t,n)},scaleTo:function(e,t){var n=this,r=Math.sqrt(n.xx*n.xx+n.yx*n.yx);return n.xx/=r,n.yx/=r,r=Math.sqrt(n.yy*n.yy+n.xy*n.xy),n.yy/=r,n.xy/=r,this.scale(e,t)},resizeTo:function(e,t){var n=this.width,r=this.height;return n&&r?this.scaleTo(e/n,t/r):this},inversePoint:function(e,t){var n=this.xx,r=this.yx,i=this.xy,o=this.yy,s=this.x,a=this.y,u=r*i-n*o;return 0==u?null:{x:(o*(s-e)+i*(t-a))/u,y:(n*(a-t)+r*(e-s))/u}},point:function(e,t){var n=this;return{x:n.xx*e+n.xy*t+n.x,y:n.yx*e+n.yy*t+n.y}}})}),__d("DatePickerIOS",function(e,t,n,r){"use strict";var i=t("NativeMethodsMixin"),o=t("ReactPropTypes"),s=t("React"),a=t("NativeModules").UIManager.RCTDatePicker.Constants,u=t("StyleSheet"),l=t("View"),c=t("requireNativeComponent"),p=s.createClass({displayName:"DatePickerIOS",_picker:void 0,mixins:[i],propTypes:babelHelpers["extends"]({},l.propTypes,{date:o.instanceOf(Date).isRequired,onDateChange:o.func.isRequired,maximumDate:o.instanceOf(Date),minimumDate:o.instanceOf(Date),mode:o.oneOf(["date","time","datetime"]),minuteInterval:o.oneOf([1,2,3,4,5,6,10,12,15,20,30]),timeZoneOffsetInMinutes:o.number}),getDefaultProps:function(){return{mode:"datetime"}},_onChange:function(e){var t=e.nativeEvent.timestamp;this.props.onDateChange&&this.props.onDateChange(new Date(t)),this.props.onChange&&this.props.onChange(e);var n=this.props.date.getTime();this._picker&&t!==n&&this._picker.setNativeProps({date:n})},render:function(){var e=this,t=this.props;return s.createElement(l,{style:t.style},s.createElement(f,{ref:function(t){return e._picker=t},style:h.datePickerIOS,date:t.date.getTime(),maximumDate:t.maximumDate?t.maximumDate.getTime():void 0,minimumDate:t.minimumDate?t.minimumDate.getTime():void 0,mode:t.mode,minuteInterval:t.minuteInterval,timeZoneOffsetInMinutes:t.timeZoneOffsetInMinutes,onChange:this._onChange}))}}),h=u.create({datePickerIOS:{height:a.ComponentHeight,width:a.ComponentWidth}}),f=c("RCTDatePicker",p,{nativeOnly:{onChange:!0}});n.exports=p}),__d("DrawerLayoutAndroid",function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("Image",function(e,t,n,r){"use strict";var i=t("EdgeInsetsPropType"),o=t("ImageResizeMode"),s=t("ImageStylePropTypes"),a=t("NativeMethodsMixin"),u=t("NativeModules"),l=t("ReactPropTypes"),c=t("React"),p=t("ReactNativeViewAttributes"),h=(t("View"),t("StyleSheet")),f=t("StyleSheetPropType"),d=t("flattenStyle"),v=(t("invariant"),t("requireNativeComponent")),m=t("resolveAssetSource"),g=(t("warning"),c.createClass({displayName:"Image",propTypes:{style:f(s),source:l.oneOfType([l.shape({uri:l.string}),l.number]),defaultSource:l.oneOfType([l.shape({uri:l.string}),l.number]),accessible:l.bool,accessibilityLabel:l.string,capInsets:i,resizeMode:l.oneOf(["cover","contain","stretch"]),testID:l.string,onLayout:l.func,onLoadStart:l.func,onProgress:l.func,onError:l.func,onLoad:l.func,onLoadEnd:l.func},statics:{resizeMode:o},mixins:[a],viewConfig:{uiViewClassName:"UIView",validAttributes:p.UIView},contextTypes:{isInAParentText:c.PropTypes.bool},render:function(){var e=m(this.props.source)||{},t=e.width,n=e.height,r=d([{width:t,height:n},y.base,this.props.style])||{},i=e.uri&&e.uri.match(/^https?:/),o=i?b:_,s=this.props.resizeMode||(r||{}).resizeMode||"cover",a=(r||{}).tintColor;return i&&a&&(o=_),this.context.isInAParentText?c.createElement(S,{source:e}):c.createElement(o,babelHelpers["extends"]({},this.props,{style:r,resizeMode:s,tintColor:a,source:e}))}})),y=h.create({base:{overflow:"hidden"}}),_=v("RCTImageView",g),b=u.NetworkImageViewManager?v("RCTNetworkImageView",g):_,S=v("RCTVirtualImage",g);n.exports=g}),__d("EdgeInsetsPropType",function(e,t,n,r){"use strict";var i=t("ReactPropTypes"),o=t("createStrictShapeTypeChecker"),s=o({top:i.number,left:i.number,bottom:i.number,right:i.number});n.exports=s}),__d("ListView",function(e,t,n,r){"use strict";var i=t("ListViewDataSource"),o=t("React"),s=t("NativeModules").ScrollViewManager,a=t("ScrollView"),u=t("ScrollResponder"),l=t("StaticRenderer"),c=t("react-timer-mixin/TimerMixin.js"),p=t("isEmpty"),h=(t("logError"),t("merge")),f=o.PropTypes,d=1,v=10,m=1e3,g=1e3,y=50,_="listviewscroll",b=o.createClass({displayName:"ListView",mixins:[u.Mixin,c],statics:{DataSource:i},propTypes:babelHelpers["extends"]({},a.propTypes,{dataSource:f.instanceOf(i).isRequired,renderSeparator:f.func,renderRow:f.func.isRequired,initialListSize:f.number,onEndReached:f.func,onEndReachedThreshold:f.number,pageSize:f.number,renderFooter:f.func,renderHeader:f.func,renderSectionHeader:f.func,renderScrollComponent:o.PropTypes.func.isRequired,scrollRenderAheadDistance:o.PropTypes.number,onChangeVisibleRows:o.PropTypes.func,removeClippedSubviews:o.PropTypes.bool}),getMetrics:function(){return{contentLength:this.scrollProperties.contentLength,totalRows:this.props.dataSource.getRowCount(),renderedRows:this.state.curRenderedRowsCount,visibleRows:Object.keys(this._visibleRows).length}},getScrollResponder:function(){return this.refs[_]&&this.refs[_].getScrollResponder&&this.refs[_].getScrollResponder()},setNativeProps:function(e){this.refs[_].setNativeProps(e)},getDefaultProps:function(){return{initialListSize:v,pageSize:d,renderScrollComponent:function(e){return o.createElement(a,e)},scrollRenderAheadDistance:m,onEndReachedThreshold:g}},getInitialState:function(){return{curRenderedRowsCount:this.props.initialListSize,prevRenderedRowsCount:0,highlightedRow:{}}},getInnerViewNode:function(){return this.refs[_].getInnerViewNode()},componentWillMount:function(){this.scrollProperties={visibleLength:null,contentLength:null,offset:0},this._childFrames=[],this._visibleRows={}},componentDidMount:function(){var e=this;this.requestAnimationFrame(function(){e._measureAndUpdateScrollProps()})},componentWillReceiveProps:function(e){this.props.dataSource!==e.dataSource&&this.setState(function(e,t){var n=Math.min(e.curRenderedRowsCount+t.pageSize,t.dataSource.getRowCount());return{prevRenderedRowsCount:0,curRenderedRowsCount:n}})},componentDidUpdate:function(){var e=this;this.requestAnimationFrame(function(){e._measureAndUpdateScrollProps()})},onRowHighlighted:function(e,t){this.setState({highlightedRow:{sectionID:e,rowID:t}})},render:function(){for(var e=[],t=this.props.dataSource,n=t.rowIdentities,r=0,i=[],s=this.props.renderHeader&&this.props.renderHeader(),a=this.props.renderFooter&&this.props.renderFooter(),u=s?1:0,c=0;c=this.state.prevRenderedRowsCount&&t.sectionHeaderShouldUpdate(c);e.push(o.createElement(l,{key:"s_"+p,shouldUpdate:!!f,render:this.props.renderSectionHeader.bind(null,t.getSectionHeaderData(c),p)})),i.push(u++)}for(var d=0;d=this.state.prevRenderedRowsCount&&t.rowShouldUpdate(c,d),b=o.createElement(l,{key:"r_"+m,shouldUpdate:!!g,render:this.props.renderRow.bind(null,t.getRowData(c,d),p,v,this.onRowHighlighted)});if(e.push(b),u++,this.props.renderSeparator&&(d!==h.length-1||c===n.length-1)){var S=this.state.highlightedRow.sectionID===p&&(this.state.highlightedRow.rowID===v||this.state.highlightedRow.rowID===h[d+1]),R=this.props.renderSeparator(p,v,S);e.push(R),u++}if(++r===this.state.curRenderedRowsCount)break}if(r>=this.state.curRenderedRowsCount)break}}var E=this.props,T=E.renderScrollComponent,C=babelHelpers.objectWithoutProperties(E,["renderScrollComponent"]);return C.scrollEventThrottle||(C.scrollEventThrottle=y),void 0===C.removeClippedSubviews&&(C.removeClippedSubviews=!0),babelHelpers["extends"](C,{onScroll:this._onScroll,stickyHeaderIndices:i,onKeyboardWillShow:void 0,onKeyboardWillHide:void 0,onKeyboardDidShow:void 0,onKeyboardDidHide:void 0}),o.cloneElement(T(C),{ref:_,onContentSizeChange:this._onContentSizeChange,onLayout:this._onLayout},s,e,a)},_measureAndUpdateScrollProps:function(){var e=this.getScrollResponder();e&&e.getInnerViewNode&&s&&s.calculateChildFrames&&s.calculateChildFrames(o.findNodeHandle(e),this._updateChildFrames)},_onContentSizeChange:function(e,t){this.scrollProperties.contentLength=this.props.horizontal?e:t,this._updateVisibleRows(),this._renderMoreRowsIfNeeded()},_onLayout:function(e){var t=e.nativeEvent.layout,n=t.width,r=t.height;this.scrollProperties.visibleLength=this.props.horizontal?n:r,this._updateVisibleRows(),this._renderMoreRowsIfNeeded()},_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)o||i>R?b&&(l=!0,delete m[y],c[v]||(c[v]={}),c[v][y]=!1):b||(l=!0,m[y]=!0,c[v]||(c[v]={}),c[v][y]=!0)}p(m)?this._visibleRows[v]&&delete this._visibleRows[v]:this._visibleRows[v]=m}}l&&this.props.onChangeVisibleRows(this._visibleRows,c)}},_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.onEndReached&&this._getDistanceFromEnd(this.scrollProperties)>this.props.onEndReachedThreshold&&(this._sentEndForContentLength=null),this.props.onScroll&&this.props.onScroll(e)}});n.exports=b}),__d("ListViewDataSource",function(e,t,n,r){"use strict";function i(e,t,n){return e[t][n]}function o(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;tt||this.state.lastMomentumScrollEndTimer;r++){var o=n[r];if(o.id===t.nativeEvent.annotationId){"left"===t.nativeEvent.side?o.onLeftCalloutPress&&o.onLeftCalloutPress(t.nativeEvent):"right"===t.nativeEvent.side&&o.onRightCalloutPress&&o.onRightCalloutPress(t.nativeEvent);break}}};if(this.props.onRegionChange||this.props.onRegionChangeComplete)var o=function(t){t.nativeEvent.continuous?e.props.onRegionChange&&e.props.onRegionChange(t.nativeEvent.region):e.props.onRegionChangeComplete&&e.props.onRegionChangeComplete(t.nativeEvent.region)};return l.createElement(a,babelHelpers["extends"]({},this.props,{annotations:n,overlays:r,onPress:i,onChange:o}))}}),v=u&&u.PinColors;d.PinColors=v&&{RED:v.RED,GREEN:v.GREEN,PURPLE:v.PURPLE};var a=f("RCTMap",d,{nativeOnly:{onChange:!0,onPress:!0}});n.exports=d}),__d("Modal",function(e,t,n,r){"use strict";var i=t("ReactPropTypes"),o=t("React"),s=t("StyleSheet"),a=t("View"),u=t("requireNativeComponent"),l=u("RCTModalHostView",null),c=function(e){function t(){return babelHelpers.classCallCheck(this,t),babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(t).apply(this,arguments))}return babelHelpers.inherits(t,e),babelHelpers.createClass(t,[{key:"render",value:function(){if(this.props.visible===!1)return null;if(this.props.transparent)var e={backgroundColor:"transparent"};return o.createElement(l,{animated:this.props.animated,transparent:this.props.transparent,onDismiss:this.props.onDismiss,style:p.modal},o.createElement(a,{style:[p.container,e]},this.props.children))}}]),t}(o.Component);c.propTypes={animated:i.bool,transparent:i.bool,visible:i.bool,onDismiss:i.func},c.defaultProps={visible:!0};var p=s.create({modal:{position:"absolute"},container:{left:0,position:"absolute",top:0}});n.exports=c}),__d("Navigator",function(e,t,n,r){"use strict";function i(){return I++}function o(e){if(null===e||"object"!=typeof e)return String(e);var t="__navigatorRouteID";return e.hasOwnProperty(t)||Object.defineProperty(e,t,{enumerable:!1,configurable:!1,writable:!1,value:i()}),e[t]}var s=t("NativeModules").AnimationsDebugModule,a=t("Dimensions"),u=t("InteractionMixin"),l=t("Map"),c=t("NavigationContext"),p=t("NavigatorBreadcrumbNavigationBar"),h=t("NavigatorNavigationBar"),f=t("NavigatorSceneConfigs"),d=t("PanResponder"),v=t("React"),m=t("StyleSheet"),g=t("Subscribable"),y=t("react-timer-mixin/TimerMixin.js"),_=t("View"),b=t("clamp"),S=t("flattenStyle"),R=t("invariant"),E=t("rebound/rebound.js"),T=v.PropTypes,C=a.get("window").width,x=a.get("window").height,w={pointerEvents:"none",style:{top:x,bottom:-x,opacity:0}},I=0,P=m.create({container:{flex:1,overflow:"hidden"},defaultSceneStyle:{position:"absolute",left:0,right:0,bottom:0,top:0},baseScene:{position:"absolute",overflow:"hidden",left:0,right:0,bottom:0,top:0},disabledScene:{top:x,bottom:-x},transitioner:{flex:1,backgroundColor:"transparent",overflow:"hidden"}}),O=["pop","jumpBack","jumpForward"],k=v.createClass({displayName:"Navigator",propTypes:{configureScene:T.func,renderScene:T.func.isRequired,initialRoute:T.object,initialRouteStack:T.arrayOf(T.object),onWillFocus:T.func,onDidFocus:T.func,navigationBar:T.node,navigator:T.object,sceneStyle:_.propTypes.style},statics:{BreadcrumbNavigationBar:p,NavigationBar:h,SceneConfigs:f},mixins:[y,u,g.Mixin],getDefaultProps:function(){return{configureScene:function(){return f.PushFromRight},sceneStyle:P.defaultSceneStyle}},getInitialState:function(){var e=this;this._navigationBarNavigator=this.props.navigationBarNavigator||this,this._renderedSceneMap=new l;var t=this.props.initialRouteStack||[this.props.initialRoute];R(t.length>=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,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),this.spring.destroy(),this._interactionHandle&&this.clearInteractionHandle(this._interactionHandle)},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 i=this.state.sceneConfigStack[this.state.transitionFromIndex]||this.state.sceneConfigStack[this.state.presentedIndex];R(i,"Cannot configure scene at index "+this.state.transitionFromIndex),null!=n&&this.spring.setCurrentValue(n),this.spring.setOvershootClampingEnabled(!0),this.spring.getSpringConfig().friction=i.springFriction,this.spring.getSpringConfig().tension=i.springTension,this.spring.setVelocity(t||i.defaultTransitionVelocity),this.spring.setEndValue(1)}},_handleSpringUpdate:function(){if(this.isMounted())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(this.isMounted()){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=O},_handleMoveShouldSetPanResponder:function(e,t){var n=this.state.sceneConfigStack[this.state.presentedIndex];return n?(this._expectingGestureGrant=this._matchGestureAction(this._eligibleGestures,n.gestures,t),!!this._expectingGestureGrant):!1},_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},_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],i=this.state.activeGesture;if(i){var o=r.gestures[i],s=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);if(0===this.spring.getCurrentValue())return this.spring.setCurrentValue(0).setAtRest(),void this._completeTransition();var a,u,l="top-to-bottom"===o.direction||"bottom-to-top"===o.direction,c="right-to-left"===o.direction||"bottom-to-top"===o.direction;l?(a=c?-t.vy:t.vy,u=c?-t.dy:t.dy):(a=c?-t.vx:t.vx,u=c?-t.dx:t.dx);var p=b(-10,a,10);if(Math.abs(a)o.fullDistance*o.stillCompletionRatio;p=h?o.snapVelocity:-o.snapVelocity}if(0>p||this._doesGestureOverswipe(i)){if(null==this.state.transitionFromIndex){var f=this.state.presentedIndex;this.state.presentedIndex=s,this._transitionTo(f,-p,1-this.spring.getCurrentValue())}}else this._emitWillFocus(this.state.routeStack[s]),this._transitionTo(s,p,null,function(){"pop"===i&&n._cleanScenesPastIndex(s)});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){void 0!==this._isMoveGestureAttached&&(R(this._expectingGestureGrant,"Responder granted unexpectedly."),this._attachGesture(this._expectingGestureGrant),this._onAnimationStart(),this._expectingGestureGrant=void 0);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 i=this._matchGestureAction(O,n.gestures,t);i&&this._attachGesture(i)},_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,i=n?t.dy:t.dx;i=r?-i:i;var o=e.gestureDetectMovement,s=(i-o)/(e.fullDistance-o);if(0>s&&e.isDetachable){var a=this.state.presentedIndex+this._deltaForGestureAction(this.state.activeGesture);return this._transitionBetween(this.state.presentedIndex,a,0),this._detachGesture(),void(null!=this.state.pendingGestureProgress&&this.spring.setCurrentValue(0))}if(this._doesGestureOverswipe(this.state.activeGesture)){var u=e.overswipe.frictionConstant,l=e.overswipe.frictionByDistance,c=1/(u+Math.abs(s)*l);s*=c}s=b(0,s,1),null!=this.state.transitionFromIndex?this.state.pendingGestureProgress=s:this.state.pendingGestureProgress?this.spring.setEndValue(s):this.spring.setCurrentValue(s)},_matchGestureAction:function(e,t,n){var r=this;if(!t)return null;var i=null;return e.some(function(e,o){var s=t[e];if(s){if(null==s.overswipe&&r._doesGestureOverswipe(e))return!1;var a="top-to-bottom"===s.direction||"bottom-to-top"===s.direction,u="right-to-left"===s.direction||"bottom-to-top"===s.direction,l=a?n.moveY:n.moveX,c=a?n.dy:n.dx,p=a?n.dx:n.dy,h=s.edgeHitWidth;u&&(l=-l,c=-c,p=-p,h=a?-(x-h):-(C-h));var f=null==s.edgeHitWidth||h>l;if(!f)return!1;var d=c>=s.gestureDetectMovement;if(!d)return!1;var v=Math.abs(c)>Math.abs(p)*s.directionRatio;return v?(i=e,!0):void(r._eligibleGestures=r._eligibleGestures.slice().splice(o,1))}}),i||null},_transitionSceneStyle:function(e,t,n,r){var i=this.refs["scene_"+r];if(null!==i&&void 0!==i){var o=t>e?t:e,s=this.state.sceneConfigStack[o];s||(s=this.state.sceneConfigStack[o-1]);var a={},u=e>r||t>r?s.animationInterpolators.out:s.animationInterpolators.into,l=t>e?n:1-n,c=u(a,l);c&&i.setNativeProps({style:a})}},_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),i=this.state.sceneConfigStack.slice(0,n),o=r.concat([e]),s=o.length-1,a=i.concat([this.props.configureScene(e)]);this._emitWillFocus(o[s]),this.setState({routeStack:o,sceneConfigStack:a},function(){t._enableScene(s),t._transitionTo(s)})},_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 i=this.state.routeStack.slice(),o=this.state.sceneConfigStack.slice();i[t]=e,o[t]=this.props.configureScene(e),t===this.state.presentedIndex&&this._emitWillFocus(e),this.setState({routeStack:i,sceneConfigStack:o},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){var o=Array.prototype.slice.call(arguments);return void this._emitQueue.push(o)}if(this._emitCounter++,f.has(e))this.__emit(e,t,null,{defaultPrevented:!1,eventPhase:c,propagationStopped:!0,target:this});else{for(var s=[this],a=this.parent;a;)s.unshift(a),a=a.parent;var u=!1,l=!1,d=function(e){u=u||e.isPropagationStopped(),l=l||e.defaultPrevented};s.some(function(n){if(u)return!0;var i={defaultPrevented:l,eventPhase:h,propagationStopped:u,target:r};n.__emit(e,t,d,i)},this),s.reverse().some(function(n){if(u)return!0;var i={defaultPrevented:l,eventPhase:p,propagationStopped:u,target:r};n.__emit(e,t,d,i)},this)}if(n){var v=i.pool(e,this,t);u&&v.stopPropagation(),l&&v.preventDefault(),n.call(this,v),v.dispose()}for(this._emitCounter--;this._emitQueue.length;){var o=this._emitQueue.shift();this.emit.apply(this,o)}}},{key:"dispose",value:function(){this._bubbleEventEmitter&&this._bubbleEventEmitter.removeAllListeners(),this._captureEventEmitter&&this._captureEventEmitter.removeAllListeners(),this._bubbleEventEmitter=null,this._captureEventEmitter=null,this._currentRoute=null}},{key:"__emit",value:function(e,t,n,r){var i;switch(r.eventPhase){case h:i=this._captureEventEmitter;break;case c:i=this._bubbleEventEmitter;break;case p:i=this._bubbleEventEmitter;break;default:l(!1,"invalid event phase %s",r.eventPhase)}r.target===this&&(r.eventPhase=c),i&&i.emit(e,t,n,r)}},{key:"_onFocus",value:function(e){l(e.data&&e.data.hasOwnProperty("route"),'event type "%s" should provide route',e.type),this._currentRoute=e.data.route}},{key:"parent",get:function(){var e=this.__node.getParent();return e?e.getValue():null}},{key:"top",get:function(){for(var e=null,t=this.__node.getParent();t;)e=t.getValue(),t=t.getParent();return e}},{key:"currentRoute",get:function(){return this._currentRoute}}]),e}();n.exports=d}),__d("NavigationEvent",function(e,t,n,r){"use strict";var i=t("invariant"),o=function(){function e(){babelHelpers.classCallCheck(this,e),this._list=[]}return babelHelpers.createClass(e,[{key:"get",value:function(e,t,n){var r;return this._list.length>0?(r=this._list.pop(),r.constructor.call(r,e,t,n)):r=new a(e,t,n),r}},{key:"put",value:function(e){this._list.push(e)}}]),e}(),s=new o,a=function(){function e(t,n,r){babelHelpers.classCallCheck(this,e),this.target=n,this.eventPhase=e.NONE,this._type=t,this._currentTarget=n,this._data=r,this._defaultPrevented=!1,this._disposed=!1,this._propagationStopped=!1}return babelHelpers.createClass(e,null,[{key:"pool",value:function(e,t,n){return s.get(e,t,n)}}]),babelHelpers.createClass(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(){i(!this._disposed,"NavigationEvent is already disposed"),this._disposed=!0,this.target=null,this.eventPhase=e.NONE,this._type=null,this._currentTarget=null,this._data=null,this._defaultPrevented=!1,s.put(this)}},{key:"type",get:function(){return this._type}},{key:"currentTarget",get:function(){return this._currentTarget}},{key:"data",get:function(){return this._data}},{key:"defaultPrevented",get:function(){return this._defaultPrevented}}]),e}();a.NONE=0,a.CAPTURING_PHASE=1,a.AT_TARGET=2,a.BUBBLING_PHASE=3,n.exports=a}),__d("NavigationEventEmitter",function(e,t,n,r){"use strict";var i=t("EventEmitter"),o=t("NavigationEvent"),s=function(e){function t(e){babelHelpers.classCallCheck(this,t);var n=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this));return n._emitting=!1,n._emitQueue=[],n._target=e,n}return babelHelpers.inherits(t,e),babelHelpers.createClass(t,[{key:"emit",value:function(e,n,r,i){if(this._emitting){var s=Array.prototype.slice.call(arguments);return void this._emitQueue.unshift(s)}this._emitting=!0;var a=o.pool(e,this._target,n);for(i&&(i.target&&(a.target=i.target),i.eventPhase&&(a.eventPhase=i.eventPhase),i.defaultPrevented&&a.preventDefault(),i.propagationStopped&&a.stopPropagation()),babelHelpers.get(Object.getPrototypeOf(t.prototype),"emit",this).call(this,String(e),a),"function"==typeof r&&r.call(this._target,a),a.dispose(),this._emitting=!1;this._emitQueue.length;){var s=this._emitQueue.shift();this.emit.apply(this,s)}}}]),t}(i);n.exports=s}),__d("NavigationTreeNode",function(e,t,n,r){"use strict";var i=t("invariant"),o=t("immutable/dist/immutable.js"),s=o.List,a=function(){function e(t){babelHelpers.classCallCheck(this,e),this.__parent=null,this._children=new s,this._value=t}return babelHelpers.createClass(e,[{key:"getValue",value:function(){return this._value}},{key:"getParent",value:function(){return this.__parent}},{key:"getChildrenCount",value:function(){return this._children.size}},{key:"getChildAt",value:function(e){return e>-1&&e-1,"The node to be removed is not a child of this node."),e.__parent=null,this._children=this._children.splice(t,1)}},{key:"indexOf",value:function(e){return this._children.indexOf(e)}},{key:"forEach",value:function(e,t){this._children.forEach(e,t)}},{key:"map",value:function(e,t){return this._children.map(e,t).toJS()}},{key:"some",value:function(e,t){return this._children.some(e,t)}}]),e}();n.exports=a}),__d("immutable/dist/immutable.js",function(e,t,n,r){!function(e,t){"object"==typeof r&&"undefined"!=typeof n?n.exports=t():"function"==typeof define&&define.amd?define(t):e.Immutable=t()}(this,function(){"use strict";function e(e,t){t&&(e.prototype=Object.create(t.prototype)),e.prototype.constructor=e}function t(e){return o(e)?e:P(e)}function n(e){return s(e)?e:O(e)}function r(e){return a(e)?e:k(e)}function i(e){return o(e)&&!u(e)?e:N(e)}function o(e){return!(!e||!e[ln])}function s(e){return!(!e||!e[cn])}function a(e){return!(!e||!e[pn])}function u(e){return s(e)||a(e)}function l(e){return!(!e||!e[hn])}function c(e){return e.value=!1,e}function p(e){e&&(e.value=!0)}function h(){}function f(e,t){t=t||0;for(var n=Math.max(0,e.length-t),r=new Array(n),i=0;n>i;i++)r[i]=e[i+t];return r}function d(e){return void 0===e.size&&(e.size=e.__iterate(m)),e.size}function v(e,t){if("number"!=typeof t){var n=t>>>0;if(""+n!==t||4294967295===n)return NaN;t=n}return 0>t?d(e)+t:t}function m(){return!0}function g(e,t,n){return(0===e||void 0!==n&&-n>=e)&&(void 0===t||void 0!==n&&t>=n)}function y(e,t){return b(e,t,0)}function _(e,t){return b(e,t,t)}function b(e,t,n){return void 0===e?n:0>e?Math.max(0,t+e):void 0===t?e:Math.min(t,e)}function S(e){this.next=e}function R(e,t,n,r){var i=0===e?t:1===e?n:[t,n];return r?r.value=i:r={value:i,done:!1},r}function E(){return{value:void 0,done:!0}}function T(e){return!!w(e)}function C(e){return e&&"function"==typeof e.next}function x(e){var t=w(e);return t&&t.call(e)}function w(e){var t=e&&(En&&e[En]||e[Tn]);return"function"==typeof t?t:void 0}function I(e){return e&&"number"==typeof e.length}function P(e){return null===e||void 0===e?j():o(e)?e.toSeq():B(e)}function O(e){return null===e||void 0===e?j().toKeyedSeq():o(e)?s(e)?e.toSeq():e.fromEntrySeq():V(e)}function k(e){return null===e||void 0===e?j():o(e)?s(e)?e.entrySeq():e.toIndexedSeq():F(e)}function N(e){return(null===e||void 0===e?j():o(e)?s(e)?e.entrySeq():e:F(e)).toSetSeq()}function A(e){this._array=e,this.size=e.length}function D(e){var t=Object.keys(e);this._object=e,this._keys=t,this.size=t.length}function M(e){this._iterable=e,this.size=e.length||e.size}function L(e){this._iterator=e,this._iteratorCache=[]}function H(e){return!(!e||!e[xn])}function j(){return wn||(wn=new A([]))}function V(e){var t=Array.isArray(e)?new A(e).fromEntrySeq():C(e)?new L(e).fromEntrySeq():T(e)?new M(e).fromEntrySeq():"object"==typeof e?new D(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=q(e);if(!t)throw new TypeError("Expected Array or iterable object of values: "+e);return t}function B(e){var t=q(e)||"object"==typeof e&&new D(e);if(!t)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+e);return t}function q(e){return I(e)?new A(e):C(e)?new L(e):T(e)?new M(e):void 0}function U(e,t,n,r){var i=e._cache;if(i){for(var o=i.length-1,s=0;o>=s;s++){var a=i[n?o-s:s];if(t(a[1],r?a[0]:s,e)===!1)return s+1}return s}return e.__iterateUncached(t,n)}function z(e,t,n,r){var i=e._cache;if(i){var o=i.length-1,s=0;return new S(function(){var e=i[n?o-s:s];return s++>o?E():R(t,r?e[0]:s-1,e[1])})}return e.__iteratorUncached(t,n)}function G(e,t){return t?W(t,e,"",{"":e}):Y(e)}function W(e,t,n,r){return Array.isArray(t)?e.call(r,n,k(t).map(function(n,r){return W(e,n,r,t)})):X(t)?e.call(r,n,O(t).map(function(n,r){return W(e,n,r,t)})):t}function Y(e){return Array.isArray(e)?k(e).map(Y).toList():X(e)?O(e).map(Y).toMap():e}function X(e){return e&&(e.constructor===Object||void 0===e.constructor)}function K(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){if(e===t)return!0;if(!o(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||s(e)!==s(t)||a(e)!==a(t)||l(e)!==l(t))return!1;if(0===e.size&&0===t.size)return!0;var n=!u(e);if(l(e)){var r=e.entries();return t.every(function(e,t){var i=r.next().value;return i&&K(i[1],e)&&(n||K(i[0],t))})&&r.next().done}var i=!1;if(void 0===e.size)if(void 0===t.size)"function"==typeof e.cacheResult&&e.cacheResult();else{i=!0;var c=e;e=t,t=c}var p=!0,h=t.__iterate(function(t,r){return(n?e.has(t):i?K(t,e.get(r,gn)):K(e.get(r,gn),t))?void 0:(p=!1,!1)});return p&&e.size===h}function Q(e,t){if(!(this instanceof Q))return new Q(e,t);if(this._value=e,this.size=void 0===t?1/0:Math.max(0,t),0===this.size){if(In)return In;In=this}}function $(e,t){if(!e)throw new Error(t)}function Z(e,t,n){if(!(this instanceof Z))return new Z(e,t,n);if($(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(Pn)return Pn;Pn=this}}function ee(){throw TypeError("Abstract")}function te(){}function ne(){}function re(){}function ie(e){return e>>>1&1073741824|3221225471&e}function oe(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 ie(n)}if("string"===t)return e.length>Hn?se(e):ae(e);if("function"==typeof e.hashCode)return e.hashCode();if("object"===t)return ue(e);if("function"==typeof e.toString)return ae(e.toString());throw new Error("Value type "+t+" cannot be hashed.")}function se(e){var t=Fn[e];return void 0===t&&(t=ae(e),Vn===jn&&(Vn=0,Fn={}),Vn++,Fn[e]=t),t}function ae(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 ce(e){$(e!==1/0,"Cannot perform this action with an infinite size.")}function pe(e){return null===e||void 0===e?Re():he(e)&&!l(e)?e:Re().withMutations(function(t){var r=n(e);ce(r.size),r.forEach(function(e,n){return t.set(n,e)})})}function he(e){return!(!e||!e[Bn])}function fe(e,t){this.ownerID=e,this.entries=t}function de(e,t,n){this.ownerID=e,this.bitmap=t,this.nodes=n}function ve(e,t,n){this.ownerID=e,this.count=t,this.nodes=n}function me(e,t,n){this.ownerID=e,this.keyHash=t,this.entries=n}function ge(e,t,n){this.ownerID=e,this.keyHash=t,this.entry=n}function ye(e,t,n){this._type=t,this._reverse=n,this._stack=e._root&&be(e._root)}function _e(e,t){return R(e,t[0],t[1])}function be(e,t){return{node:e,index:0,__prev:t}}function Se(e,t,n,r){var i=Object.create(qn);return i.size=e,i._root=t,i.__ownerID=n,i.__hash=r,i.__altered=!1,i}function Re(){return Un||(Un=Se(0))}function Ee(e,t,n){var r,i;if(e._root){var o=c(yn),s=c(_n);if(r=Te(e._root,e.__ownerID,0,void 0,t,n,o,s),!s.value)return e;i=e.size+(o.value?n===gn?-1:1:0)}else{if(n===gn)return e;i=1,r=new fe(e.__ownerID,[[t,n]])}return e.__ownerID?(e.size=i,e._root=r,e.__hash=void 0,e.__altered=!0,e):r?Se(i,r):Re()}function Te(e,t,n,r,i,o,s,a){return e?e.update(t,n,r,i,o,s,a):o===gn?e:(p(a),p(s),new ge(t,r,[i,o]))}function Ce(e){return e.constructor===ge||e.constructor===me}function xe(e,t,n,r,i){if(e.keyHash===r)return new me(t,r,[e.entry,i]);var o,s=(0===n?e.keyHash:e.keyHash>>>n)&mn,a=(0===n?r:r>>>n)&mn,u=s===a?[xe(e,t,n+dn,r,i)]:(o=new ge(t,r,i),a>s?[e,o]:[o,e]);return new de(t,1<a;a++,u<<=1){var c=t[a];void 0!==c&&a!==r&&(i|=u,s[o++]=c)}return new de(e,i,s)}function Pe(e,t,n,r,i){for(var o=0,s=new Array(vn),a=0;0!==n;a++,n>>>=1)s[a]=1&n?t[o++]:void 0;return s[r]=i,new ve(e,o+1,s)}function Oe(e,t,r){for(var i=[],s=0;s>1&1431655765,e=(858993459&e)+(e>>2&858993459),e=e+(e>>4)&252645135,e+=e>>8,e+=e>>16,127&e}function Le(e,t,n,r){var i=r?e:f(e);return i[t]=n,i}function He(e,t,n,r){var i=e.length+1;if(r&&t+1===i)return e[t]=n,e;for(var o=new Array(i),s=0,a=0;i>a;a++)a===t?(o[a]=n,s=-1):o[a]=e[a+s];return o}function je(e,t,n){var r=e.length-1;if(n&&t===r)return e.pop(),e;for(var i=new Array(r),o=0,s=0;r>s;s++)s===t&&(o=1),i[s]=e[s+o];return i}function Ve(e){var t=ze();if(null===e||void 0===e)return t;if(Fe(e))return e;var n=r(e),i=n.size;return 0===i?t:(ce(i),i>0&&vn>i?Ue(0,i,dn,null,new Be(n.toArray())):t.withMutations(function(e){e.setSize(i),n.forEach(function(t,n){return e.set(n,t)})}))}function Fe(e){return!(!e||!e[Yn])}function Be(e,t){this.array=e,this.ownerID=t}function qe(e,t){function n(e,t,n){return 0===t?r(e,n):i(e,t,n)}function r(e,n){var r=n===a?u&&u.array:e&&e.array,i=n>o?0:o-n,l=s-n;return l>vn&&(l=vn),function(){if(i===l)return Jn;var e=t?--l:i++;return r&&r[e]}}function i(e,r,i){var a,u=e&&e.array,l=i>o?0:o-i>>r,c=(s-i>>r)+1;return c>vn&&(c=vn),function(){for(;;){if(a){var e=a();if(e!==Jn)return e;a=null}if(l===c)return Jn;var o=t?--c:l++;a=n(u&&u[o],r-dn,i+(o<=e.size||0>t)return e.withMutations(function(e){0>t?Ke(e,t).set(0,n):Ke(e,0,t+1).set(t,n)});t+=e._origin;var r=e._tail,i=e._root,o=c(_n);return t>=Qe(e._capacity)?r=We(r,e.__ownerID,0,t,n,o):i=We(i,e.__ownerID,e._level,t,n,o),o.value?e.__ownerID?(e._root=i,e._tail=r,e.__hash=void 0,e.__altered=!0,e):Ue(e._origin,e._capacity,e._level,i,r):e}function We(e,t,n,r,i,o){var s=r>>>n&mn,a=e&&s0){var l=e&&e.array[s],c=We(l,t,n-dn,r,i,o);return c===l?e:(u=Ye(e,t),u.array[s]=c,u)}return a&&e.array[s]===i?e:(p(o),u=Ye(e,t),void 0===i&&s===u.array.length-1?u.array.pop():u.array[s]=i,u)}function Ye(e,t){return t&&e&&t===e.ownerID?e:new Be(e?e.array.slice():[],t)}function Xe(e,t){if(t>=Qe(e._capacity))return e._tail;if(t<1<0;)n=n.array[t>>>r&mn],r-=dn;return n}}function Ke(e,t,n){void 0!==t&&(t=0|t),void 0!==n&&(n=0|n);var r=e.__ownerID||new h,i=e._origin,o=e._capacity,s=i+t,a=void 0===n?o:0>n?o+n:i+n;if(s===i&&a===o)return e;if(s>=a)return e.clear();for(var u=e._level,l=e._root,c=0;0>s+c;)l=new Be(l&&l.array.length?[void 0,l]:[],r),u+=dn,c+=1<=1<f?Xe(e,a-1):f>p?new Be([],r):d;if(d&&f>p&&o>s&&d.array.length){l=Ye(l,r);for(var m=l,g=u;g>dn;g-=dn){var y=p>>>g&mn;m=m.array[y]=Ye(m.array[y],r)}m.array[p>>>dn&mn]=d}if(o>a&&(v=v&&v.removeAfter(r,0,a)),s>=f)s-=f,a-=f,u=dn,l=null,v=v&&v.removeBefore(r,0,s);else if(s>i||p>f){for(c=0;l;){var _=s>>>u&mn;if(_!==f>>>u&mn)break;_&&(c+=(1<i&&(l=l.removeBefore(r,u,s-c)),l&&p>f&&(l=l.removeAfter(r,u,f-c)),c&&(s-=c,a-=c)}return e.__ownerID?(e.size=a-s,e._origin=s,e._capacity=a,e._level=u,e._root=l,e._tail=v,e.__hash=void 0,e.__altered=!0,e):Ue(s,a,u,l,v)}function Je(e,t,n){for(var i=[],s=0,a=0;as&&(s=l.size),o(u)||(l=l.map(function(e){return G(e)})),i.push(l)}return s>e.size&&(e=e.setSize(s)),Ae(e,t,i)}function Qe(e){return vn>e?0:e-1>>>dn<=vn&&s.size>=2*o.size?(i=s.filter(function(e,t){return void 0!==e&&a!==t}),r=i.toKeyedSeq().map(function(e){return e[0]}).flip().toMap(),e.__ownerID&&(r.__ownerID=i.__ownerID=e.__ownerID)):(r=o.remove(t),i=a===s.size-1?s.pop():s.set(a,void 0))}else if(u){if(n===s.get(a)[1])return e;r=o,i=s.set(a,[t,n])}else r=o.set(t,s.size),i=s.set(s.size,[t,n]);return e.__ownerID?(e.size=r.size,e._map=r,e._list=i,e.__hash=void 0,e):et(r,i)}function rt(e,t){this._iter=e,this._useKeys=t,this.size=e.size}function it(e){this._iter=e,this.size=e.size}function ot(e){this._iter=e,this.size=e.size}function st(e){this._iter=e,this.size=e.size}function at(e){var t=It(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=Pt,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===Rn){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===Sn?bn:Sn,n)},t}function ut(e,t,n){var r=It(e);return r.size=e.size,r.has=function(t){return e.has(t)},r.get=function(r,i){var o=e.get(r,gn);return o===gn?i:t.call(n,o,r,e)},r.__iterateUncached=function(r,i){var o=this;return e.__iterate(function(e,i,s){return r(t.call(n,e,i,s),i,o)!==!1},i)},r.__iteratorUncached=function(r,i){var o=e.__iterator(Rn,i);return new S(function(){var i=o.next();if(i.done)return i;var s=i.value,a=s[0];return R(r,a,t.call(n,s[1],a,e),i)})},r}function lt(e,t){var n=It(e);return n._iter=e,n.size=e.size,n.reverse=function(){return e},e.flip&&(n.flip=function(){var t=at(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=Pt,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 ct(e,t,n,r){var i=It(e);return r&&(i.has=function(r){var i=e.get(r,gn);return i!==gn&&!!t.call(n,i,r,e)},i.get=function(r,i){var o=e.get(r,gn);return o!==gn&&t.call(n,o,r,e)?o:i}),i.__iterateUncached=function(i,o){var s=this,a=0;return e.__iterate(function(e,o,u){return t.call(n,e,o,u)?(a++,i(e,r?o:a-1,s)):void 0},o),a},i.__iteratorUncached=function(i,o){var s=e.__iterator(Rn,o),a=0;return new S(function(){for(;;){var o=s.next();if(o.done)return o;var u=o.value,l=u[0],c=u[1];if(t.call(n,c,l,e))return R(i,r?l:a++,c,o)}})},i}function pt(e,t,n){var r=pe().asMutable();return e.__iterate(function(i,o){r.update(t.call(n,i,o,e),0,function(e){return e+1})}),r.asImmutable()}function ht(e,t,n){var r=s(e),i=(l(e)?$e():pe()).asMutable();e.__iterate(function(o,s){i.update(t.call(n,o,s,e),function(e){return e=e||[],e.push(r?[s,o]:o),e})});var o=wt(e);return i.map(function(t){return Tt(e,o(t))})}function ft(e,t,n,r){var i=e.size;if(void 0!==t&&(t=0|t),void 0!==n&&(n=0|n),g(t,n,i))return e;var o=y(t,i),s=_(n,i);if(o!==o||s!==s)return ft(e.toSeq().cacheResult(),t,n,r);var a,u=s-o;u===u&&(a=0>u?0:u);var l=It(e);return l.size=0===a?a:e.size&&a||void 0,!r&&H(e)&&a>=0&&(l.get=function(t,n){return t=v(this,t),t>=0&&a>t?e.get(t+o,n):n}),l.__iterateUncached=function(t,n){var i=this;if(0===a)return 0;if(n)return this.cacheResult().__iterate(t,n);var s=0,u=!0,l=0;return e.__iterate(function(e,n){return u&&(u=s++a)return E();var e=i.next();return r||t===Sn?e:t===bn?R(t,u-1,void 0,e):R(t,u-1,e.value[1],e)})},l}function dt(e,t,n){var r=It(e);return r.__iterateUncached=function(r,i){var o=this;if(i)return this.cacheResult().__iterate(r,i);var s=0;return e.__iterate(function(e,i,a){return t.call(n,e,i,a)&&++s&&r(e,i,o)}),s},r.__iteratorUncached=function(r,i){var o=this;if(i)return this.cacheResult().__iterator(r,i);var s=e.__iterator(Rn,i),a=!0;return new S(function(){if(!a)return E();var e=s.next();if(e.done)return e;var i=e.value,u=i[0],l=i[1];return t.call(n,l,u,o)?r===Rn?e:R(r,u,l,e):(a=!1,E())})},r}function vt(e,t,n,r){var i=It(e);return i.__iterateUncached=function(i,o){var s=this;if(o)return this.cacheResult().__iterate(i,o);var a=!0,u=0;return e.__iterate(function(e,o,l){return a&&(a=t.call(n,e,o,l))?void 0:(u++,i(e,r?o:u-1,s))}),u},i.__iteratorUncached=function(i,o){var s=this;if(o)return this.cacheResult().__iterator(i,o);var a=e.__iterator(Rn,o),u=!0,l=0;return new S(function(){var e,o,c;do{if(e=a.next(),e.done)return r||i===Sn?e:i===bn?R(i,l++,void 0,e):R(i,l++,e.value[1],e);var p=e.value;o=p[0],c=p[1],u&&(u=t.call(n,c,o,s))}while(u);return i===Rn?e:R(i,o,c,e)})},i}function mt(e,t){var r=s(e),i=[e].concat(t).map(function(e){return o(e)?r&&(e=n(e)):e=r?V(e):F(Array.isArray(e)?e:[e]),e}).filter(function(e){return 0!==e.size});if(0===i.length)return e;if(1===i.length){var u=i[0];if(u===e||r&&s(u)||a(e)&&a(u))return u}var l=new A(i);return r?l=l.toKeyedSeq():a(e)||(l=l.toSetSeq()),l=l.flatten(!0),l.size=i.reduce(function(e,t){if(void 0!==e){var n=t.size;if(void 0!==n)return e+n}},0),l}function gt(e,t,n){var r=It(e);return r.__iterateUncached=function(r,i){function s(e,l){var c=this;e.__iterate(function(e,i){return(!t||t>l)&&o(e)?s(e,l+1):r(e,n?i:a++,c)===!1&&(u=!0),!u},i)}var a=0,u=!1;return s(e,0),a},r.__iteratorUncached=function(r,i){var s=e.__iterator(r,i),a=[],u=0;return new S(function(){for(;s;){var e=s.next();if(e.done===!1){var l=e.value;if(r===Rn&&(l=l[1]),t&&!(a.length0}function Et(e,n,r){var i=It(e);return i.size=new A(r).map(function(e){return e.size}).min(),i.__iterate=function(e,t){for(var n,r=this.__iterator(Sn,t),i=0;!(n=r.next()).done&&e(n.value,i++,this)!==!1;);return i},i.__iteratorUncached=function(e,i){var o=r.map(function(e){return e=t(e),x(i?e.reverse():e)}),s=0,a=!1;return new S(function(){var t;return a||(t=o.map(function(e){return e.next()}),a=t.some(function(e){return e.done})),a?E():R(e,s++,n.apply(null,t.map(function(e){return e.value})))})},i}function Tt(e,t){return H(e)?t:e.constructor(t)}function Ct(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function xt(e){return ce(e.size),d(e)}function wt(e){return s(e)?n:a(e)?r:i}function It(e){return Object.create((s(e)?O:a(e)?k:N).prototype)}function Pt(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):P.prototype.cacheResult.call(this)}function Ot(e,t){return e>t?1:t>e?-1:0}function kt(e){var n=x(e);if(!n){if(!I(e))throw new TypeError("Expected iterable or array-like: "+e);n=x(t(e))}return n}function Nt(e,t){var n,r=function(o){if(o instanceof r)return o;if(!(this instanceof r))return new r(o);if(!n){n=!0;var s=Object.keys(e);Mt(i,s),i.size=s.length,i._name=t,i._keys=s,i._defaultValues=e}this._map=pe(o)},i=r.prototype=Object.create($n);return i.constructor=r,r}function At(e,t,n){var r=Object.create(Object.getPrototypeOf(e));return r._map=t,r.__ownerID=n,r}function Dt(e){return e._name||e.constructor.name||"Record"}function Mt(e,t){try{t.forEach(Lt.bind(void 0,e))}catch(n){}}function Lt(e,t){Object.defineProperty(e,t,{get:function(){return this.get(t)},set:function(e){$(this.__ownerID,"Cannot set on an immutable record."),this.set(t,e)}})}function Ht(e){return null===e||void 0===e?Bt():jt(e)&&!l(e)?e:Bt().withMutations(function(t){var n=i(e);ce(n.size),n.forEach(function(e){return t.add(e)})})}function jt(e){return!(!e||!e[Zn])}function Vt(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 Ft(e,t){var n=Object.create(er);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Bt(){return tr||(tr=Ft(Re()))}function qt(e){return null===e||void 0===e?Gt():Ut(e)?e:Gt().withMutations(function(t){var n=i(e);ce(n.size),n.forEach(function(e){return t.add(e)})})}function Ut(e){return jt(e)&&l(e)}function zt(e,t){var n=Object.create(nr);return n.size=e?e.size:0,n._map=e,n.__ownerID=t,n}function Gt(){return rr||(rr=zt(tt()))}function Wt(e){return null===e||void 0===e?Kt():Yt(e)?e:Kt().unshiftAll(e)}function Yt(e){return!(!e||!e[ir])}function Xt(e,t,n,r){var i=Object.create(or);return i.size=e,i._head=t,i.__ownerID=n,i.__hash=r,i.__altered=!1,i}function Kt(){return sr||(sr=Xt(0))}function Jt(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 Qt(e,t){return t}function $t(e,t){return[t,e]}function Zt(e){return function(){return!e.apply(this,arguments)}}function en(e){return function(){return-e.apply(this,arguments)}}function tn(e){return"string"==typeof e?JSON.stringify(e):e}function nn(){return f(arguments)}function rn(e,t){return t>e?1:e>t?-1:0}function on(e){if(e.size===1/0)return 0;var t=l(e),n=s(e),r=t?1:0,i=e.__iterate(n?t?function(e,t){r=31*r+an(oe(e),oe(t))|0}:function(e,t){r=r+an(oe(e),oe(t))|0}:t?function(e){r=31*r+oe(e)|0}:function(e){r=r+oe(e)|0});return sn(i,r)}function sn(e,t){return t=kn(t,3432918353),t=kn(t<<15|t>>>-15,461845907),t=kn(t<<13|t>>>-13,5),t=(t+3864292196|0)^e,t=kn(t^t>>>16,2246822507),t=kn(t^t>>>13,3266489909),t=ie(t^t>>>16)}function an(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}var un=Array.prototype.slice;e(n,t),e(r,t),e(i,t),t.isIterable=o,t.isKeyed=s,t.isIndexed=a,t.isAssociative=u,t.isOrdered=l,t.Keyed=n,t.Indexed=r,t.Set=i;var ln="@@__IMMUTABLE_ITERABLE__@@",cn="@@__IMMUTABLE_KEYED__@@",pn="@@__IMMUTABLE_INDEXED__@@",hn="@@__IMMUTABLE_ORDERED__@@",fn="delete",dn=5,vn=1<=i;i++)if(e(n[t?r-i:i],i,this)===!1)return i+1;return i},A.prototype.__iterator=function(e,t){var n=this._array,r=n.length-1,i=0;return new S(function(){return i>r?E():R(e,i,n[t?r-i++:i++])})},e(D,O),D.prototype.get=function(e,t){return void 0===t||this.has(e)?this._object[e]:t},D.prototype.has=function(e){return this._object.hasOwnProperty(e)},D.prototype.__iterate=function(e,t){for(var n=this._object,r=this._keys,i=r.length-1,o=0;i>=o;o++){var s=r[t?i-o:o];if(e(n[s],s,this)===!1)return o+1}return o},D.prototype.__iterator=function(e,t){var n=this._object,r=this._keys,i=r.length-1,o=0;return new S(function(){var s=r[t?i-o:o];return o++>i?E():R(e,s,n[s])})},D.prototype[hn]=!0,e(M,k),M.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);var n=this._iterable,r=x(n),i=0;if(C(r))for(var o;!(o=r.next()).done&&e(o.value,i++,this)!==!1;);return i},M.prototype.__iteratorUncached=function(e,t){if(t)return this.cacheResult().__iterator(e,t);var n=this._iterable,r=x(n);if(!C(r))return new S(E);var i=0;return new S(function(){var t=r.next();return t.done?t:R(e,i++,t.value)})},e(L,k),L.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);for(var n=this._iterator,r=this._iteratorCache,i=0;i=r.length){var t=n.next();if(t.done)return t;r[i]=t.value}return R(e,i,r[i++])})};var wn;e(Q,k),Q.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},Q.prototype.get=function(e,t){return this.has(e)?this._value:t},Q.prototype.includes=function(e){return K(this._value,e)},Q.prototype.slice=function(e,t){var n=this.size;return g(e,t,n)?this:new Q(this._value,_(t,n)-y(e,n))},Q.prototype.reverse=function(){return this},Q.prototype.indexOf=function(e){return K(this._value,e)?0:-1},Q.prototype.lastIndexOf=function(e){return K(this._value,e)?this.size:-1},Q.prototype.__iterate=function(e,t){for(var n=0;n1?" by "+this._step:"")+" ]"},Z.prototype.get=function(e,t){return this.has(e)?this._start+v(this,e)*this._step:t},Z.prototype.includes=function(e){var t=(e-this._start)/this._step;return t>=0&&t=t?new Z(0,0):new Z(this.get(e,this._end),this.get(t,this._end),this._step))},Z.prototype.indexOf=function(e){var t=e-this._start;if(t%this._step===0){var n=t/this._step;if(n>=0&&n=o;o++){if(e(i,o,this)===!1)return o+1;i+=t?-r:r}return o},Z.prototype.__iterator=function(e,t){var n=this.size-1,r=this._step,i=t?this._start+n*r:this._start,o=0;return new S(function(){var s=i;return i+=t?-r:r,o>n?E():R(e,o++,s)})},Z.prototype.equals=function(e){return e instanceof Z?this._start===e._start&&this._end===e._end&&this._step===e._step:J(this,e)};var Pn;e(ee,t),e(te,ee),e(ne,ee),e(re,ee),ee.Keyed=te,ee.Indexed=ne,ee.Set=re;var On,kn="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},Nn=Object.isExtensible,An=function(){try{return Object.defineProperty({},"@",{}),!0}catch(e){return!1}}(),Dn="function"==typeof WeakMap;Dn&&(On=new WeakMap);var Mn=0,Ln="__immutablehash__";"function"==typeof Symbol&&(Ln=Symbol(Ln));var Hn=16,jn=255,Vn=0,Fn={};e(pe,te),pe.prototype.toString=function(){return this.__toString("Map {","}")},pe.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},pe.prototype.set=function(e,t){return Ee(this,e,t)},pe.prototype.setIn=function(e,t){return this.updateIn(e,gn,function(){return t})},pe.prototype.remove=function(e){return Ee(this,e,gn)},pe.prototype.deleteIn=function(e){return this.updateIn(e,function(){return gn})},pe.prototype.update=function(e,t,n){return 1===arguments.length?e(this):this.updateIn([e],t,n)},pe.prototype.updateIn=function(e,t,n){n||(n=t,t=void 0);var r=De(this,kt(e),t,n);return r===gn?void 0:r},pe.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Re()},pe.prototype.merge=function(){return Oe(this,void 0,arguments)},pe.prototype.mergeWith=function(e){var t=un.call(arguments,1);return Oe(this,e,t)},pe.prototype.mergeIn=function(e){var t=un.call(arguments,1);return this.updateIn(e,Re(),function(e){return"function"==typeof e.merge?e.merge.apply(e,t):t[t.length-1]})},pe.prototype.mergeDeep=function(){return Oe(this,ke,arguments)},pe.prototype.mergeDeepWith=function(e){var t=un.call(arguments,1);return Oe(this,Ne(e),t)},pe.prototype.mergeDeepIn=function(e){var t=un.call(arguments,1);return this.updateIn(e,Re(),function(e){return"function"==typeof e.mergeDeep?e.mergeDeep.apply(e,t):t[t.length-1]})},pe.prototype.sort=function(e){return $e(bt(this,e))},pe.prototype.sortBy=function(e,t){return $e(bt(this,t,e))},pe.prototype.withMutations=function(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this},pe.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new h)},pe.prototype.asImmutable=function(){return this.__ensureOwner()},pe.prototype.wasAltered=function(){return this.__altered},pe.prototype.__iterator=function(e,t){return new ye(this,e,t)},pe.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},pe.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Se(this.size,this._root,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},pe.isMap=he;var Bn="@@__IMMUTABLE_MAP__@@",qn=pe.prototype;qn[Bn]=!0,qn[fn]=qn.remove,qn.removeIn=qn.deleteIn,fe.prototype.get=function(e,t,n,r){for(var i=this.entries,o=0,s=i.length;s>o;o++)if(K(n,i[o][0]))return i[o][1];return r},fe.prototype.update=function(e,t,n,r,i,o,s){for(var a=i===gn,u=this.entries,l=0,c=u.length;c>l&&!K(r,u[l][0]);l++);var h=c>l;if(h?u[l][1]===i:a)return this;if(p(s),(a||!h)&&p(o),!a||1!==u.length){if(!h&&!a&&u.length>=zn)return we(e,u,r,i);var d=e&&e===this.ownerID,v=d?u:f(u);return h?a?l===c-1?v.pop():v[l]=v.pop():v[l]=[r,i]:v.push([r,i]),d?(this.entries=v,this):new fe(e,v)}},de.prototype.get=function(e,t,n,r){void 0===t&&(t=oe(n));var i=1<<((0===e?t:t>>>e)&mn),o=this.bitmap;return 0===(o&i)?r:this.nodes[Me(o&i-1)].get(e+dn,t,n,r)},de.prototype.update=function(e,t,n,r,i,o,s){void 0===n&&(n=oe(r));var a=(0===t?n:n>>>t)&mn,u=1<=Gn)return Pe(e,h,l,a,d);if(c&&!d&&2===h.length&&Ce(h[1^p]))return h[1^p];if(c&&d&&1===h.length&&Ce(d))return d;var v=e&&e===this.ownerID,m=c?d?l:l^u:l|u,g=c?d?Le(h,p,d,v):je(h,p,v):He(h,p,d,v);return v?(this.bitmap=m,this.nodes=g,this):new de(e,m,g)},ve.prototype.get=function(e,t,n,r){void 0===t&&(t=oe(n));var i=(0===e?t:t>>>e)&mn,o=this.nodes[i];return o?o.get(e+dn,t,n,r):r},ve.prototype.update=function(e,t,n,r,i,o,s){void 0===n&&(n=oe(r));var a=(0===t?n:n>>>t)&mn,u=i===gn,l=this.nodes,c=l[a];if(u&&!c)return this;var p=Te(c,e,t+dn,n,r,i,o,s);if(p===c)return this;var h=this.count;if(c){if(!p&&(h--,Wn>h))return Ie(e,l,h,a)}else h++;var f=e&&e===this.ownerID,d=Le(l,a,p,f);return f?(this.count=h,this.nodes=d,this):new ve(e,h,d)},me.prototype.get=function(e,t,n,r){for(var i=this.entries,o=0,s=i.length;s>o;o++)if(K(n,i[o][0]))return i[o][1]; -return r},me.prototype.update=function(e,t,n,r,i,o,s){void 0===n&&(n=oe(r));var a=i===gn;if(n!==this.keyHash)return a?this:(p(s),p(o),xe(this,e,t,n,[r,i]));for(var u=this.entries,l=0,c=u.length;c>l&&!K(r,u[l][0]);l++);var h=c>l;if(h?u[l][1]===i:a)return this;if(p(s),(a||!h)&&p(o),a&&2===c)return new ge(e,this.keyHash,u[1^l]);var d=e&&e===this.ownerID,v=d?u:f(u);return h?a?l===c-1?v.pop():v[l]=v.pop():v[l]=[r,i]:v.push([r,i]),d?(this.entries=v,this):new me(e,this.keyHash,v)},ge.prototype.get=function(e,t,n,r){return K(n,this.entry[0])?this.entry[1]:r},ge.prototype.update=function(e,t,n,r,i,o,s){var a=i===gn,u=K(r,this.entry[0]);return(u?i===this.entry[1]:a)?this:(p(s),a?void p(o):u?e&&e===this.ownerID?(this.entry[1]=i,this):new ge(e,this.keyHash,[r,i]):(p(o),xe(this,e,t,oe(r),[r,i])))},fe.prototype.iterate=me.prototype.iterate=function(e,t){for(var n=this.entries,r=0,i=n.length-1;i>=r;r++)if(e(n[t?i-r:r])===!1)return!1},de.prototype.iterate=ve.prototype.iterate=function(e,t){for(var n=this.nodes,r=0,i=n.length-1;i>=r;r++){var o=n[t?i-r:r];if(o&&o.iterate(e,t)===!1)return!1}},ge.prototype.iterate=function(e,t){return e(this.entry)},e(ye,S),ye.prototype.next=function(){for(var e=this._type,t=this._stack;t;){var n,r=t.node,i=t.index++;if(r.entry){if(0===i)return _e(e,r.entry)}else if(r.entries){if(n=r.entries.length-1,n>=i)return _e(e,r.entries[this._reverse?n-i:i])}else if(n=r.nodes.length-1,n>=i){var o=r.nodes[this._reverse?n-i:i];if(o){if(o.entry)return _e(e,o.entry);t=this._stack=be(o,t)}continue}t=this._stack=this._stack.__prev}return E()};var Un,zn=vn/4,Gn=vn/2,Wn=vn/4;e(Ve,ne),Ve.of=function(){return this(arguments)},Ve.prototype.toString=function(){return this.__toString("List [","]")},Ve.prototype.get=function(e,t){if(e=v(this,e),e>=0&&e>>t&mn;if(r>=this.array.length)return new Be([],e);var i,o=0===r;if(t>0){var s=this.array[r];if(i=s&&s.removeBefore(e,t-dn,n),i===s&&o)return this}if(o&&!i)return this;var a=Ye(this,e);if(!o)for(var u=0;r>u;u++)a.array[u]=void 0;return i&&(a.array[r]=i),a},Be.prototype.removeAfter=function(e,t,n){if(n===(t?1<>>t&mn;if(r>=this.array.length)return this;var i;if(t>0){var o=this.array[r];if(i=o&&o.removeAfter(e,t-dn,n),i===o&&r===this.array.length-1)return this}var s=Ye(this,e);return s.array.splice(r+1),i&&(s.array[r]=i),s};var Kn,Jn={};e($e,pe),$e.of=function(){return this(arguments)},$e.prototype.toString=function(){return this.__toString("OrderedMap {","}")},$e.prototype.get=function(e,t){var n=this._map.get(e);return void 0!==n?this._list.get(n)[1]:t},$e.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._map.clear(),this._list.clear(),this):tt()},$e.prototype.set=function(e,t){return nt(this,e,t)},$e.prototype.remove=function(e){return nt(this,e,gn)},$e.prototype.wasAltered=function(){return this._map.wasAltered()||this._list.wasAltered()},$e.prototype.__iterate=function(e,t){var n=this;return this._list.__iterate(function(t){return t&&e(t[1],t[0],n)},t)},$e.prototype.__iterator=function(e,t){return this._list.fromEntrySeq().__iterator(e,t)},$e.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map.__ensureOwner(e),n=this._list.__ensureOwner(e);return e?et(t,n,e,this.__hash):(this.__ownerID=e,this._map=t,this._list=n,this)},$e.isOrderedMap=Ze,$e.prototype[hn]=!0,$e.prototype[fn]=$e.prototype.remove;var Qn;e(rt,O),rt.prototype.get=function(e,t){return this._iter.get(e,t)},rt.prototype.has=function(e){return this._iter.has(e)},rt.prototype.valueSeq=function(){return this._iter.valueSeq()},rt.prototype.reverse=function(){var e=this,t=lt(this,!0);return this._useKeys||(t.valueSeq=function(){return e._iter.toSeq().reverse()}),t},rt.prototype.map=function(e,t){var n=this,r=ut(this,e,t);return this._useKeys||(r.valueSeq=function(){return n._iter.toSeq().map(e,t)}),r},rt.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?xt(this):0,function(i){return e(i,t?--n:n++,r)}),t)},rt.prototype.__iterator=function(e,t){if(this._useKeys)return this._iter.__iterator(e,t);var n=this._iter.__iterator(Sn,t),r=t?xt(this):0;return new S(function(){var i=n.next();return i.done?i:R(e,t?--r:r++,i.value,i)})},rt.prototype[hn]=!0,e(it,k),it.prototype.includes=function(e){return this._iter.includes(e)},it.prototype.__iterate=function(e,t){var n=this,r=0;return this._iter.__iterate(function(t){return e(t,r++,n)},t)},it.prototype.__iterator=function(e,t){var n=this._iter.__iterator(Sn,t),r=0;return new S(function(){var t=n.next();return t.done?t:R(e,r++,t.value,t)})},e(ot,N),ot.prototype.has=function(e){return this._iter.includes(e)},ot.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){return e(t,t,n)},t)},ot.prototype.__iterator=function(e,t){var n=this._iter.__iterator(Sn,t);return new S(function(){var t=n.next();return t.done?t:R(e,t.value,t.value,t)})},e(st,O),st.prototype.entrySeq=function(){return this._iter.toSeq()},st.prototype.__iterate=function(e,t){var n=this;return this._iter.__iterate(function(t){if(t){Ct(t);var r=o(t);return e(r?t.get(1):t[1],r?t.get(0):t[0],n)}},t)},st.prototype.__iterator=function(e,t){var n=this._iter.__iterator(Sn,t);return new S(function(){for(;;){var t=n.next();if(t.done)return t;var r=t.value;if(r){Ct(r);var i=o(r);return R(e,i?r.get(0):r[0],i?r.get(1):r[1],t)}}})},it.prototype.cacheResult=rt.prototype.cacheResult=ot.prototype.cacheResult=st.prototype.cacheResult=Pt,e(Nt,te),Nt.prototype.toString=function(){return this.__toString(Dt(this)+" {","}")},Nt.prototype.has=function(e){return this._defaultValues.hasOwnProperty(e)},Nt.prototype.get=function(e,t){if(!this.has(e))return t;var n=this._defaultValues[e];return this._map?this._map.get(e,n):n},Nt.prototype.clear=function(){if(this.__ownerID)return this._map&&this._map.clear(),this;var e=this.constructor;return e._empty||(e._empty=At(this,Re()))},Nt.prototype.set=function(e,t){if(!this.has(e))throw new Error('Cannot set unknown key "'+e+'" on '+Dt(this));var n=this._map&&this._map.set(e,t);return this.__ownerID||n===this._map?this:At(this,n)},Nt.prototype.remove=function(e){if(!this.has(e))return this;var t=this._map&&this._map.remove(e);return this.__ownerID||t===this._map?this:At(this,t)},Nt.prototype.wasAltered=function(){return this._map.wasAltered()},Nt.prototype.__iterator=function(e,t){var r=this;return n(this._defaultValues).map(function(e,t){return r.get(t)}).__iterator(e,t)},Nt.prototype.__iterate=function(e,t){var r=this;return n(this._defaultValues).map(function(e,t){return r.get(t)}).__iterate(e,t)},Nt.prototype.__ensureOwner=function(e){if(e===this.__ownerID)return this;var t=this._map&&this._map.__ensureOwner(e);return e?At(this,t,e):(this.__ownerID=e,this._map=t,this)};var $n=Nt.prototype;$n[fn]=$n.remove,$n.deleteIn=$n.removeIn=qn.removeIn,$n.merge=qn.merge,$n.mergeWith=qn.mergeWith,$n.mergeIn=qn.mergeIn,$n.mergeDeep=qn.mergeDeep,$n.mergeDeepWith=qn.mergeDeepWith,$n.mergeDeepIn=qn.mergeDeepIn,$n.setIn=qn.setIn,$n.update=qn.update,$n.updateIn=qn.updateIn,$n.withMutations=qn.withMutations,$n.asMutable=qn.asMutable,$n.asImmutable=qn.asImmutable,e(Ht,re),Ht.of=function(){return this(arguments)},Ht.fromKeys=function(e){return this(n(e).keySeq())},Ht.prototype.toString=function(){return this.__toString("Set {","}")},Ht.prototype.has=function(e){return this._map.has(e)},Ht.prototype.add=function(e){return Vt(this,this._map.set(e,!0))},Ht.prototype.remove=function(e){return Vt(this,this._map.remove(e))},Ht.prototype.clear=function(){return Vt(this,this._map.clear())},Ht.prototype.union=function(){var e=un.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;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):Xt(e,t)},Wt.prototype.pushAll=function(e){if(e=r(e),0===e.size)return this;ce(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):Xt(t,n)},Wt.prototype.pop=function(){return this.slice(1)},Wt.prototype.unshift=function(){return this.push.apply(this,arguments)},Wt.prototype.unshiftAll=function(e){return this.pushAll(e)},Wt.prototype.shift=function(){return this.pop.apply(this,arguments)},Wt.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):Kt()},Wt.prototype.slice=function(e,t){if(g(e,t,this.size))return this;var n=y(e,this.size),r=_(t,this.size);if(r!==this.size)return ne.prototype.slice.call(this,e,t);for(var i=this.size-n,o=this._head;n--;)o=o.next;return this.__ownerID?(this.size=i,this._head=o,this.__hash=void 0,this.__altered=!0,this):Xt(i,o)},Wt.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Xt(this.size,this._head,e,this.__hash):(this.__ownerID=e,this.__altered=!1,this)},Wt.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},Wt.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()})},Wt.isStack=Yt;var ir="@@__IMMUTABLE_STACK__@@",or=Wt.prototype;or[ir]=!0,or.withMutations=qn.withMutations,or.asMutable=qn.asMutable,or.asImmutable=qn.asImmutable,or.wasAltered=qn.wasAltered;var sr;t.Iterator=S,Jt(t,{toArray:function(){ce(this.size);var e=new Array(this.size||0);return this.valueSeq().__iterate(function(t,n){e[n]=t}),e},toIndexedSeq:function(){return new it(this)},toJS:function(){return this.toSeq().map(function(e){return e&&"function"==typeof e.toJS?e.toJS():e}).__toJS()},toJSON:function(){return this.toSeq().map(function(e){return e&&"function"==typeof e.toJSON?e.toJSON():e}).__toJS()},toKeyedSeq:function(){return new rt(this,!0)},toMap:function(){return pe(this.toKeyedSeq())},toObject:function(){ce(this.size);var e={};return this.__iterate(function(t,n){e[n]=t}),e},toOrderedMap:function(){return $e(this.toKeyedSeq())},toOrderedSet:function(){return qt(s(this)?this.valueSeq():this)},toSet:function(){return Ht(s(this)?this.valueSeq():this)},toSetSeq:function(){return new ot(this)},toSeq:function(){return a(this)?this.toIndexedSeq():s(this)?this.toKeyedSeq():this.toSetSeq()},toStack:function(){return Wt(s(this)?this.valueSeq():this)},toList:function(){return Ve(s(this)?this.valueSeq():this)},toString:function(){return"[Iterable]"},__toString:function(e,t){return 0===this.size?e+t:e+" "+this.toSeq().map(this.__toStringMapper).join(", ")+" "+t},concat:function(){var e=un.call(arguments,0);return Tt(this,mt(this,e))},includes:function(e){return this.some(function(t){return K(t,e)})},entries:function(){return this.__iterator(Rn)},every:function(e,t){ce(this.size);var n=!0;return this.__iterate(function(r,i,o){return e.call(t,r,i,o)?void 0:(n=!1,!1)}),n},filter:function(e,t){return Tt(this,ct(this,e,t,!0))},find:function(e,t,n){var r=this.findEntry(e,t);return r?r[1]:n},findEntry:function(e,t){var n;return this.__iterate(function(r,i,o){return e.call(t,r,i,o)?(n=[i,r],!1):void 0}),n},findLastEntry:function(e,t){return this.toSeq().reverse().findEntry(e,t)},forEach:function(e,t){return ce(this.size),this.__iterate(t?e.bind(t):e)},join:function(e){ce(this.size),e=void 0!==e?""+e:",";var t="",n=!0;return this.__iterate(function(r){n?n=!1:t+=e,t+=null!==r&&void 0!==r?r.toString():""}),t},keys:function(){return this.__iterator(bn)},map:function(e,t){return Tt(this,ut(this,e,t))},reduce:function(e,t,n){ce(this.size);var r,i;return arguments.length<2?i=!0:r=t,this.__iterate(function(t,o,s){i?(i=!1,r=t):r=e.call(n,r,t,o,s)}),r},reduceRight:function(e,t,n){var r=this.toKeyedSeq().reverse();return r.reduce.apply(r,arguments)},reverse:function(){return Tt(this,lt(this,!0))},slice:function(e,t){return Tt(this,ft(this,e,t,!0))},some:function(e,t){return!this.every(Zt(e),t)},sort:function(e){return Tt(this,bt(this,e))},values:function(){return this.__iterator(Sn)},butLast:function(){return this.slice(0,-1)},isEmpty:function(){return void 0!==this.size?0===this.size:!this.some(function(){return!0})},count:function(e,t){return d(e?this.toSeq().filter(e,t):this)},countBy:function(e,t){return pt(this,e,t)},equals:function(e){return J(this,e)},entrySeq:function(){var e=this;if(e._cache)return new A(e._cache);var t=e.toSeq().map($t).toIndexedSeq();return t.fromEntrySeq=function(){return e.toSeq()},t},filterNot:function(e,t){return this.filter(Zt(e),t)},findLast:function(e,t,n){return this.toKeyedSeq().reverse().find(e,t,n)},first:function(){return this.find(m)},flatMap:function(e,t){return Tt(this,yt(this,e,t))},flatten:function(e){return Tt(this,gt(this,e,!0))},fromEntrySeq:function(){return new st(this)},get:function(e,t){return this.find(function(t,n){return K(n,e)},void 0,t)},getIn:function(e,t){for(var n,r=this,i=kt(e);!(n=i.next()).done;){var o=n.value;if(r=r&&r.get?r.get(o,gn):gn,r===gn)return t}return r},groupBy:function(e,t){return ht(this,e,t)},has:function(e){return this.get(e,gn)!==gn},hasIn:function(e){return this.getIn(e,gn)!==gn},isSubset:function(e){return e="function"==typeof e.includes?e:t(e),this.every(function(t){return e.includes(t)})},isSuperset:function(e){return e="function"==typeof e.isSubset?e:t(e),e.isSubset(this)},keySeq:function(){return this.toSeq().map(Qt).toIndexedSeq()},last:function(){return this.toSeq().reverse().first()},max:function(e){return St(this,e)},maxBy:function(e,t){return St(this,t,e)},min:function(e){return St(this,e?en(e):rn)},minBy:function(e,t){return St(this,t?en(t):rn,e)},rest:function(){return this.slice(1)},skip:function(e){return this.slice(Math.max(0,e))},skipLast:function(e){return Tt(this,this.toSeq().reverse().skip(e).reverse())},skipWhile:function(e,t){return Tt(this,vt(this,e,t,!0))},skipUntil:function(e,t){return this.skipWhile(Zt(e),t)},sortBy:function(e,t){return Tt(this,bt(this,t,e))},take:function(e){return this.slice(0,Math.max(0,e))},takeLast:function(e){return Tt(this,this.toSeq().reverse().take(e).reverse())},takeWhile:function(e,t){return Tt(this,dt(this,e,t))},takeUntil:function(e,t){return this.takeWhile(Zt(e),t)},valueSeq:function(){return this.toIndexedSeq()},hashCode:function(){return this.__hash||(this.__hash=on(this))}});var ar=t.prototype;ar[ln]=!0,ar[Cn]=ar.values,ar.__toJS=ar.toArray,ar.__toStringMapper=tn,ar.inspect=ar.toSource=function(){return this.toString()},ar.chain=ar.flatMap,ar.contains=ar.includes,function(){try{Object.defineProperty(ar,"length",{get:function(){if(!t.noLengthWarning){var e;try{throw new Error}catch(n){e=n.stack}if(-1===e.indexOf("_wrapObject"))return console&&console.warn&&console.warn("iterable.length has been deprecated, use iterable.size or iterable.count(). This warning will become a silent error in a future version. "+e),this.size}}})}catch(e){}}(),Jt(n,{flip:function(){return Tt(this,at(this))},findKey:function(e,t){var n=this.findEntry(e,t);return n&&n[0]},findLastKey:function(e,t){return this.toSeq().reverse().findKey(e,t)},keyOf:function(e){return this.findKey(function(t){return K(t,e)})},lastKeyOf:function(e){return this.findLastKey(function(t){return K(t,e)})},mapEntries:function(e,t){var n=this,r=0;return Tt(this,this.toSeq().map(function(i,o){return e.call(t,[o,i],r++,n)}).fromEntrySeq())},mapKeys:function(e,t){var n=this;return Tt(this,this.toSeq().flip().map(function(r,i){return e.call(t,r,i,n)}).flip())}});var ur=n.prototype;ur[cn]=!0,ur[Cn]=ar.entries,ur.__toJS=ar.toObject,ur.__toStringMapper=function(e,t){return JSON.stringify(t)+": "+tn(e)},Jt(r,{toKeyedSeq:function(){return new rt(this,!1)},filter:function(e,t){return Tt(this,ct(this,e,t,!1))},findIndex:function(e,t){var n=this.findEntry(e,t);return n?n[0]:-1},indexOf:function(e){var t=this.toKeyedSeq().keyOf(e);return void 0===t?-1:t},lastIndexOf:function(e){var t=this.toKeyedSeq().reverse().keyOf(e);return void 0===t?-1:t},reverse:function(){return Tt(this,lt(this,!1))},slice:function(e,t){return Tt(this,ft(this,e,t,!1))},splice:function(e,t){var n=arguments.length;if(t=Math.max(0|t,0),0===n||2===n&&!t)return this;e=y(e,0>e?this.count():this.size);var r=this.slice(0,e);return Tt(this,1===n?r:r.concat(f(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 Tt(this,gt(this,e,!1))},get:function(e,t){return e=v(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=v(this,e),e>=0&&(void 0!==this.size?this.size===1/0||ee?i.Left[e]:i.Right[e]},T=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:c.propTypes.style},statics:{Styles:i},_updateIndexProgress:function(e,t,n,r){var i,o=r>n?e:1-e,s=t-n,a=t-r;f(d[t],"Cannot find breadcrumb interpolators for "+t),i=s>0&&0===a||a>0&&0===s?d[t].RightToCenter:0>s&&0===a||0>a&&0===s?d[t].CenterToLeft:s===a?d[t].RightToCenter:d[t].RightToLeft,i.Crumb(g[t].style,o)&&this._setPropsIfExists("crumb_"+t,g[t]),i.Icon(y[t].style,o)&&this._setPropsIfExists("icon_"+t,y[t]),i.Separator(_[t].style,o)&&this._setPropsIfExists("separator_"+t,_[t]),i.Title(b[t].style,o)&&this._setPropsIfExists("title_"+t,b[t]);var u=this.refs["right_"+t];u&&i.RightItem(S[t].style,o)&&u.setNativeProps(S[t])},updateProgress:function(e,t,n){for(var r=Math.max(t,n),i=Math.min(t,n),o=i;r>=o;o++)this._updateIndexProgress(e,o,t,n)},onAnimationStart:function(e,t){for(var n=Math.max(e,t),r=Math.min(e,t),i=r;n>=i;i++)this._setRenderViewsToHardwareTextureAndroid(i,!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(c,{style:[C.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=E(t,R(this.props.navState)),i=u.createElement(c,{key:"crumb_"+t,ref:"crumb_"+t,style:r.Crumb},u.createElement(c,{ref:"icon_"+t,style:r.Icon},n.iconForRoute(e,this.props.navigator)),u.createElement(c,{ref:"separator_"+t,style:r.Separator},n.separatorForRoute(e,this.props.navigator)));return this._descriptors.crumb=this._descriptors.crumb.set(e,i),i},_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=E(t,R(this.props.navState)),i=u.createElement(c,{key:"title_"+t,ref:"title_"+t,style:r.Title},n);return this._descriptors.title=this._descriptors.title.set(e,i),i},_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=E(t,R(this.props.navState)),i=u.createElement(c,{key:"right_"+t,ref:"right_"+t,style:r.RightItem},n);return this._descriptors.right=this._descriptors.right.set(e,i),i},_setPropsIfExists:function(e,t){var e=this.refs[e];e&&e.setNativeProps(t)}}),C=l.create({breadCrumbContainer:{overflow:"hidden",position:"absolute",height:v.General.TotalNavHeight,top:0,left:0,right:0}});n.exports=T}),__d("NavigatorBreadcrumbNavigationBarStyles",function(e,t,n,r){"use strict";for(var i=t("Dimensions"),o=t("NavigatorNavigationBarStylesIOS"),s=t("buildStyleInterpolator"),a=t("merge"),u=i.get("window").width,l=o.General.StatusBarHeight,c=o.General.NavBarHeight,p=4,h=40,f=9,d=h+f,v=100,m=.6,g=10,y={position:"absolute",flexDirection:"row",top:l,width:d,height:c,backgroundColor:"transparent"},_={width:h,height:c},b={width:f,height:c},S={position:"absolute",top:l,height:c,backgroundColor:"transparent"},R=a(S,{left:0,right:0,alignItems:"center",height:c}),E={position:"absolute",top:l,right:p,overflow:"hidden",opacity:1,height:c,backgroundColor:"transparent"},T=[],C=[],x=[],w=0;g>w;w++){var I=d*w+p;T[w]={Crumb:a(y,{left:I}),Icon:a(_,{opacity:m}),Separator:a(b,{opacity:1}),Title:a(S,{left:I,opacity:0}),RightItem:a(E,{opacity:0})},C[w]={Crumb:a(y,{left:I}),Icon:a(_,{opacity:1}),Separator:a(b,{opacity:0}),Title:a(S,{left:I+h,opacity:1}),RightItem:a(E,{opacity:1})};var P=u-100;x[w]={Crumb:a(y,{left:P}),Icon:a(_,{opacity:0}),Separator:a(b,{opacity:0}),Title:a(S,{left:P+h,opacity:0}),RightItem:a(E,{opacity:0})}}C[0]={Crumb:a(y,{left:u/4}),Icon:a(_,{opacity:0}),Separator:a(b,{opacity:0}),Title:a(R,{opacity:1}),RightItem:C[0].RightItem},T[0].Title=a(R,{left:-u/4,opacity:0}),x[0].Title=a(R,{opacity:0});var O=function(e,t){return{Crumb:s({left:{type:"linear",from:e.Crumb.left,to:t.Crumb.left,min:0,max:1,extrapolate:!0}}),Icon:s({opacity:{type:"linear",from:e.Icon.opacity,to:t.Icon.opacity,min:0,max:1}}),Separator:s({opacity:{type:"linear",from:e.Separator.opacity,to:t.Separator.opacity,min:0,max:1}}),Title:s({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:s({opacity:{type:"linear",from:e.RightItem.opacity,to:t.RightItem.opacity,min:0,max:1,round:v}})}},k=C.map(function(e,t){return{RightToCenter:O(x[t],C[t]),CenterToLeft:O(C[t],T[t]),RightToLeft:O(x[t],T[t])}});n.exports={Interpolators:k,Left:T,Center:C,Right:x,IconWidth:h,IconHeight:c,SeparatorWidth:f,SeparatorHeight:c}}),__d("NavigatorNavigationBarStylesIOS",function(e,t,n,r){"use strict";function i(e,t){return{Title:s({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:s({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:s({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 o=t("Dimensions"),s=t("buildStyleInterpolator"),a=t("merge"),u=o.get("window").width,l=44,c=20,p=l+c,h={Title:{position:"absolute",top:c,left:0,right:0,alignItems:"center",height:l,backgroundColor:"transparent"},LeftButton:{position:"absolute",top:c,left:0,overflow:"hidden",opacity:1,height:l,backgroundColor:"transparent"},RightButton:{position:"absolute",top:c,right:0,overflow:"hidden",opacity:1,alignItems:"flex-end",height:l,backgroundColor:"transparent"}},f={Left:{Title:a(h.Title,{left:-u/2,opacity:0}),LeftButton:a(h.LeftButton,{left:-u/3,opacity:0}),RightButton:a(h.RightButton,{left:u/3,opacity:0})},Center:{Title:a(h.Title,{left:0,opacity:1}),LeftButton:a(h.LeftButton,{left:0,opacity:1}),RightButton:a(h.RightButton,{left:2*u/3-0,opacity:1})},Right:{Title:a(h.Title,{left:u/2,opacity:0}),LeftButton:a(h.LeftButton,{left:0,opacity:0}),RightButton:a(h.RightButton,{left:u,opacity:0})}},d=100,v={RightToCenter:i(f.Right,f.Center),CenterToLeft:i(f.Center,f.Left),RightToLeft:i(f.Right,f.Left)};n.exports={General:{NavBarHeight:l,StatusBarHeight:c,TotalNavHeight:p},Interpolators:v,Stages:f}}),__d("buildStyleInterpolator",function(e,t,n,r){for(var i=t("keyOf"),o=i({x:null}),s=i({y:null}),a=i({z:null}),u=i({w:null}),l=i({transformRotateRadians:null}),c={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)||[],i=r.map(function(e){return"\\b"+e+"\\b"}).join("|"),o=new RegExp(i,"g"),s=n.substring(n.indexOf("{")+1,n.lastIndexOf("}")),a=s.replace(o,function(e){var n=r.indexOf(e),i=t[n];return i});return a.split("\n")},d={unroll:function(e,t,n,r,i,o,s,a,u,l,c,p,h,f,d,v,m){t=e[0],n=e[1],r=e[2],i=e[3],o=e[4],s=e[5],a=e[6],u=e[7],l=e[8],c=e[9],p=e[10],h=e[11],f=e[12],d=e[13],v=e[14],m=e[15]},matrixDiffers:function(e,t,n,r,i,o,s,a,u,l,c,p,h,f,d,v,m,g){e=e||n!==t[0]||r!==t[1]||i!==t[2]||o!==t[3]||s!==t[4]||a!==t[5]||u!==t[6]||l!==t[7]||c!==t[8]||p!==t[9]||h!==t[10]||f!==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],i=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]*i,e[9]=e[9]*i,e[10]=e[10]*i,e[11]=e[11]*i,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],i=t[2];e[12]=e[0]*n+e[4]*r+e[8]*i+e[12],e[13]=e[1]*n+e[5]*r+e[9]*i+e[13],e[14]=e[2]*n+e[6]*r+e[10]*i+e[14],e[15]=e[3]*n+e[7]*r+e[11]*i+e[15]},transformRotateRadians:function(e,t){var n=t[0],r=t[1],i=t[2],o=t[3],s=n+n,a=r+r,u=i+i,l=n*s,c=n*a,p=n*u,h=r*a,f=r*u,d=i*u,v=o*s,m=o*a,g=o*u,y=1-(h+d),_=c+g,b=p-m,S=c-g,R=1-(l+d),E=f+v,T=p+m,C=f-v,x=1-(l+h),w=e[0],I=e[1],P=e[2],O=e[3],k=e[4],N=e[5],A=e[6],D=e[7],M=e[8],L=e[9],H=e[10],j=e[11],V=y,F=_,B=b; -e[0]=V*w+F*k+B*M,e[1]=V*I+F*N+B*L,e[2]=V*P+F*A+B*H,e[3]=V*O+F*D+B*j,V=S,F=R,B=E,e[4]=V*w+F*k+B*M,e[5]=V*I+F*N+B*L,e[6]=V*P+F*A+B*H,e[7]=V*O+F*D+B*j,V=T,F=C,B=x,e[8]=V*w+F*k+B*M,e[9]=V*I+F*N+B*L,e[10]=V*P+F*A+B*H,e[11]=V*O+F*D+B*j}},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],i=t[2],o=t[3],s=n+n,a=r+r,u=i+i,l=n*s,c=n*a,p=n*u,h=r*a,f=r*u,d=i*u,v=o*s,m=o*a,g=o*u,y=1-(h+d),_=c+g,b=p-m,S=c-g,R=1-(l+d),E=f+v,T=p+m,C=f-v,x=1-(l+h),w=y,I=_,P=b;e[0]=w,e[1]=I,e[2]=P,e[3]=0,w=S,I=R,P=E,e[4]=w,e[5]=I,e[6]=P,e[7]=0,w=T,I=C,P=x,e[8]=w,e[9]=I,e[10]=P,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 i="round"in e,o=e.round,s=" ratio = (value - "+e.min+") / "+(e.max-e.min)+";\n";e.extrapolate||(s+=" ratio = ratio > 1 ? 1 : (ratio < 0 ? 0 : ratio);\n");var a=i?"Math.round("+o+" * ":"",u=i?") / "+o:"";return s+=" "+r+" = "+a+"("+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)c[n]&&(t+="var "+R(n)+" = [];\n");return t},T=function(e){return"\n"+e.join("\n")+"\n"},C=function(e,t,n,r){var i=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],i):i+" = "+e.from[n]+";":" "+i+" = "+p[t][r]+";"},x=[],w=0;16>w;w++)x.push("m"+w);var I=function(e){var t=[" var transformMatrix = result.transformMatrix !== undefined ? result.transformMatrix : (result.transformMatrix = []);"];t.push.apply(t,f(d.unroll,["transformMatrix"].concat(x)));for(var n=0;nn?e:1-e,s=t-n,a=t-r;i=s>0&&0===a||a>0&&0===s?this.props.navigationStyles.Interpolators.RightToCenter:0>s&&0===a||0>a&&0===s?this.props.navigationStyles.Interpolators.CenterToLeft:s===a?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&&i[e](r.style,o)&&n.setNativeProps(r)},this)},updateProgress:function(e,t,n){for(var r=Math.max(t,n),i=Math.min(t,n),o=i;r>=o;o++)this._updateIndexProgress(e,o,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 i.createElement(l,{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 o=null,s=this.props.routeMapper[e](this.props.navState.routeStack[n],this.props.navigator,n,this.props.navState);if(!s)return null;var a=n===d(this.props.navState)?this.props.navigationStyles.Stages.Center:this.props.navigationStyles.Stages.Left;return o=i.createElement(l,{ref:function(n){r._components[e]=r._components[e].set(t,n)},style:a[e]},s),this._descriptors[e]=this._descriptors[e].set(t,o),o}}),m=u.create({navBarContainer:{position:"absolute",top:0,left:0,right:0,backgroundColor:"transparent"}});n.exports=v}),__d("NavigatorSceneConfigs",function(e,t,n,r){"use strict";var i=t("Dimensions"),o=t("PixelRatio"),s=t("buildStyleInterpolator"),a=i.get("window").width,u=i.get("window").height,l={transformTranslate:{from:{x:0,y:0,z:0},to:{x:-Math.round(.3*i.get("window").width),y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},transformScale:{from:{x:1,y:1,z:1},to:{x:.95,y:.95,z:1},min:0,max:1,type:"linear",extrapolate:!0},opacity:{from:1,to:.3,min:0,max:1,type:"linear",extrapolate:!1,round:100},translateX:{from:0,to:-Math.round(.3*i.get("window").width),min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},scaleX:{from:1,to:.95,min:0,max:1,type:"linear",extrapolate:!0},scaleY:{from:1,to:.95,min:0,max:1,type:"linear",extrapolate:!0}},c=babelHelpers["extends"]({},l,{transformTranslate:{from:{x:0,y:0,z:0},to:{x:Math.round(.3*a),y:0,z:0}},translateX:{from:0,to:Math.round(.3*a)}}),p={opacity:{from:0,to:1,min:.5,max:1,type:"linear",extrapolate:!1,round:100}},h={opacity:{from:1,to:0,min:0,max:.5,type:"linear",extrapolate:!1,round:100}},f={transformTranslate:{from:{x:0,y:0,z:0},to:{x:-i.get("window").width,y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},opacity:{value:1,type:"constant"},translateX:{from:0,to:-i.get("window").width,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()}},d={transformTranslate:{from:{x:0,y:0,z:0},to:{x:0,y:-i.get("window").height,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},opacity:{value:1,type:"constant"},translateY:{from:0,to:-i.get("window").height,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()}},v={transformTranslate:{from:{x:0,y:0,z:0},to:{x:0,y:i.get("window").height,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},opacity:{value:1,type:"constant"},translateY:{from:0,to:i.get("window").height,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()}},m={opacity:{value:1,type:"constant"},transformTranslate:{from:{x:i.get("window").width,y:0,z:0},to:{x:0,y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},translateX:{from:i.get("window").width,to:0,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},scaleX:{value:1,type:"constant"},scaleY:{value:1,type:"constant"}},g=babelHelpers["extends"]({},m,{transformTranslate:{from:{x:-a,y:0,z:0},to:{x:0,y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},translateX:{from:-a,to:0,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()}}),y=babelHelpers["extends"]({},m,{transformTranslate:{from:{y:u,x:0,z:0},to:{x:0,y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},translateY:{from:u,to:0,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()}}),_=babelHelpers["extends"]({},m,{transformTranslate:{from:{y:-u,x:0,z:0},to:{x:0,y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},translateY:{from:-u,to:0,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()}}),b={transformTranslate:{from:{x:0,y:0,z:0},to:{x:0,y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},transformScale:{from:{x:1,y:1,z:1},to:{x:.95,y:.95,z:1},min:0,max:1,type:"linear",extrapolate:!0},opacity:{from:1,to:.3,min:0,max:1,type:"linear",extrapolate:!1,round:100},scaleX:{from:1,to:.95,min:0,max:1,type:"linear",extrapolate:!0},scaleY:{from:1,to:.95,min:0,max:1,type:"linear",extrapolate:!0}},S={opacity:{value:1,type:"constant"},transformTranslate:{from:{x:0,y:i.get("window").height,z:0},to:{x:0,y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},translateY:{from:i.get("window").height,to:0,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},scaleX:{value:1,type:"constant"},scaleY:{value:1,type:"constant"}},R={opacity:{value:1,type:"constant"}},E={opacity:{from:0,to:1,min:.5,max:1,type:"linear",extrapolate:!1,round:100},transformTranslate:{from:{x:0,y:100,z:0},to:{x:0,y:0,z:0},min:0,max:1,type:"linear",extrapolate:!0,round:o.get()},translateY:{from:100,to:0,min:0,max:1,type:"linear",extrapolate:!0,round:o.get()}},T={frictionConstant:1,frictionByDistance:1.5},C={isDetachable:!1,gestureDetectMovement:2,notMoving:.3,directionRatio:.66,snapVelocity:2,edgeHitWidth:30,stillCompletionRatio:.6,fullDistance:a,direction:"left-to-right"},x=babelHelpers["extends"]({},C,{direction:"right-to-left"}),w=babelHelpers["extends"]({},C,{fullDistance:u,direction:"down-to-up"}),I=babelHelpers["extends"]({},C,{fullDistance:u,direction:"up-to-down"}),P={gestures:{pop:C},springFriction:26,springTension:200,defaultTransitionVelocity:1.5,animationInterpolators:{into:s(m),out:s(l)}},O={PushFromRight:babelHelpers["extends"]({},P),FloatFromRight:babelHelpers["extends"]({},P),FloatFromLeft:babelHelpers["extends"]({},P,{animationInterpolators:{into:s(g),out:s(c)}}),FloatFromBottom:babelHelpers["extends"]({},P,{gestures:{pop:babelHelpers["extends"]({},C,{edgeHitWidth:150,direction:"top-to-bottom",fullDistance:u})},animationInterpolators:{into:s(S),out:s(b)}}),FloatFromBottomAndroid:babelHelpers["extends"]({},P,{gestures:null,defaultTransitionVelocity:3,springFriction:20,animationInterpolators:{into:s(E),out:s(R)}}),FadeAndroid:babelHelpers["extends"]({},P,{gestures:null,animationInterpolators:{into:s(p),out:s(h)}}),HorizontalSwipeJump:babelHelpers["extends"]({},P,{gestures:{jumpBack:babelHelpers["extends"]({},C,{overswipe:T,edgeHitWidth:null,isDetachable:!0}),jumpForward:babelHelpers["extends"]({},x,{overswipe:T,edgeHitWidth:null,isDetachable:!0})},animationInterpolators:{into:s(m),out:s(f)}}),VerticalUpSwipeJump:babelHelpers["extends"]({},P,{gestures:{jumpBack:babelHelpers["extends"]({},w,{overswipe:T,edgeHitWidth:null,isDetachable:!0}),jumpForward:babelHelpers["extends"]({},w,{overswipe:T,edgeHitWidth:null,isDetachable:!0})},animationInterpolators:{into:s(y),out:s(d)}}),VerticalDownSwipeJump:babelHelpers["extends"]({},P,{gestures:{jumpBack:babelHelpers["extends"]({},I,{overswipe:T,edgeHitWidth:null,isDetachable:!0}),jumpForward:babelHelpers["extends"]({},I,{overswipe:T,edgeHitWidth:null,isDetachable:!0})},animationInterpolators:{into:s(_),out:s(v)}})};n.exports=O}),__d("PanResponder",function(e,t,n,r){"use strict";var i=t("TouchHistoryMath"),o=i.currentCentroidXOfTouchesChangedAfter,s=i.currentCentroidYOfTouchesChangedAfter,a=i.previousCentroidXOfTouchesChangedAfter,u=i.previousCentroidYOfTouchesChangedAfter,l=i.currentCentroidX,c=i.currentCentroidY,p={_initializeGestureState:function(e){e.moveX=0,e.moveY=0,e.x0=0,e.y0=0,e.dx=0,e.dy=0,e.vx=0,e.vy=0,e.numberActiveTouches=0,e._accountsForMovesUpTo=0},_updateGestureStateOnMove:function(e,t){e.numberActiveTouches=t.numberActiveTouches,e.moveX=o(t,e._accountsForMovesUpTo),e.moveY=s(t,e._accountsForMovesUpTo);var n=e._accountsForMovesUpTo,r=a(t,n),i=o(t,n),l=u(t,n),c=s(t,n),p=e.dx+(i-r),h=e.dy+(c-l),f=t.mostRecentTimeStamp-e._accountsForMovesUpTo;e.vx=(p-e.dx)/f,e.vy=(h-e.dy)/f,e.dx=p,e.dy=h,e._accountsForMovesUpTo=t.mostRecentTimeStamp},create:function(e){var t={stateID:Math.random()};p._initializeGestureState(t);var n={onStartShouldSetResponder:function(n){return void 0===e.onStartShouldSetPanResponder?!1:e.onStartShouldSetPanResponder(n,t)},onMoveShouldSetResponder:function(n){return void 0===e.onMoveShouldSetPanResponder?!1:e.onMoveShouldSetPanResponder(n,t)},onStartShouldSetResponderCapture:function(n){return 1===n.nativeEvent.touches.length&&p._initializeGestureState(t),t.numberActiveTouches=n.touchHistory.numberActiveTouches,void 0!==e.onStartShouldSetPanResponderCapture?e.onStartShouldSetPanResponderCapture(n,t):!1},onMoveShouldSetResponderCapture:function(n){var r=n.touchHistory;return t._accountsForMovesUpTo===r.mostRecentTimeStamp?!1:(p._updateGestureStateOnMove(t,r),e.onMoveShouldSetPanResponderCapture?e.onMoveShouldSetPanResponderCapture(n,t):!1)},onResponderGrant:function(n){return t.x0=l(n.touchHistory),t.y0=c(n.touchHistory),t.dx=0,t.dy=0,e.onPanResponderGrant&&e.onPanResponderGrant(n,t),void 0===e.onShouldBlockNativeResponder?!0:e.onShouldBlockNativeResponder()},onResponderReject:function(n){e.onPanResponderReject&&e.onPanResponderReject(n,t)},onResponderRelease:function(n){e.onPanResponderRelease&&e.onPanResponderRelease(n,t),p._initializeGestureState(t)},onResponderStart:function(n){var r=n.touchHistory;t.numberActiveTouches=r.numberActiveTouches,e.onPanResponderStart&&e.onPanResponderStart(n,t)},onResponderMove:function(n){var r=n.touchHistory;t._accountsForMovesUpTo!==r.mostRecentTimeStamp&&(p._updateGestureStateOnMove(t,r),e.onPanResponderMove&&e.onPanResponderMove(n,t))},onResponderEnd:function(n){var r=n.touchHistory;t.numberActiveTouches=r.numberActiveTouches,e.onPanResponderEnd&&e.onPanResponderEnd(n,t)},onResponderTerminate:function(n){e.onPanResponderTerminate&&e.onPanResponderTerminate(n,t),p._initializeGestureState(t)},onResponderTerminationRequest:function(n){return void 0===e.onPanResponderTerminationRequest?!0:e.onPanResponderTerminationRequest(n,t)}};return{panHandlers:n}}};n.exports=p}),__d("TouchHistoryMath",function(e,t,n,r){"use strict";var i={centroidDimension:function(e,t,n,r){var o=e.touchBank,s=0,a=0,u=1===e.numberActiveTouches?e.touchBank[e.indexOfSingleActiveTouch]:null;if(null!==u)u.touchActive&&u.currentTimeStamp>t&&(s+=r&&n?u.currentPageX:r&&!n?u.currentPageY:!r&&n?u.previousPageX:u.previousPageY,a=1);else for(var l=0;l=t){var p;p=r&&n?c.currentPageX:r&&!n?c.currentPageY:!r&&n?c.previousPageX:c.previousPageY,s+=p,a++}}return a>0?s/a:i.noCentroid},currentCentroidXOfTouchesChangedAfter:function(e,t){return i.centroidDimension(e,t,!0,!0)},currentCentroidYOfTouchesChangedAfter:function(e,t){return i.centroidDimension(e,t,!1,!0)},previousCentroidXOfTouchesChangedAfter:function(e,t){return i.centroidDimension(e,t,!0,!1)},previousCentroidYOfTouchesChangedAfter:function(e,t){return i.centroidDimension(e,t,!1,!1)},currentCentroidX:function(e){return i.centroidDimension(e,0,!0,!0)},currentCentroidY:function(e){return i.centroidDimension(e,0,!1,!0)},noCentroid:-1};n.exports=i}),__d("clamp",function(e,t,n,r){function i(e,t,n){return e>t?e:t>n?n:t}n.exports=i}),__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={},i=Array.prototype.concat,o=Array.prototype.slice;n.bind=function(e,t){var n=o.call(arguments,2);return function(){e.apply(t,i.call(n,o.call(arguments)))}},n.extend=function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};var s=t.SpringSystem=function(e){this._springRegistry={},this._activeSprings=[],this.listeners=[],this._idleSpringIndices=[],this.looper=e||new c,this.looper.springSystem=this};n.extend(s.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?l.DEFAULT_ORIGAMI_SPRING_CONFIG:l.fromOrigamiTensionAndFriction(e,t),this.createSpringWithConfig(n)},createSpringWithBouncinessAndSpeed:function(e,t){var n;return n=void 0===e||void 0===t?l.DEFAULT_ORIGAMI_SPRING_CONFIG:l.fromBouncinessAndSpeed(e,t),this.createSpringWithConfig(n)},createSpringWithConfig:function(e){var t=new a(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 i=this._activeSprings[n];i.systemShouldAdvance()?i.advance(e/1e3,t/1e3):this._idleSpringIndices.push(this._activeSprings.indexOf(i))}for(;this._idleSpringIndices.length>0;){var o=this._idleSpringIndices.pop();o>=0&&this._activeSprings.splice(o,1)}},loop:function(e){var t;-1===this._lastTimeMillis&&(this._lastTimeMillis=e-1);var n=e-this._lastTimeMillis;this._lastTimeMillis=e;var r=0,i=this.listeners.length;for(r=0;i>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;i>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 a=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(a,{_ID:0,MAX_DELTA_TIME_SEC:.064,SOLVER_TIMESTEP_SEC:.001}),n.extend(a.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],i=r.onSpringEndStateChange;i&&i(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()a.MAX_DELTA_TIME_SEC&&(r=a.MAX_DELTA_TIME_SEC),this._timeAccumulator+=r;for(var i,o,s,u,l,c,p,h,f,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>=a.SOLVER_TIMESTEP_SEC;)this._timeAccumulator-=a.SOLVER_TIMESTEP_SEC,this._timeAccumulator0&&this._interpolate(this._timeAccumulator/a.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 i=this.listeners[n];e&&i.onSpringActivate&&i.onSpringActivate(this),i.onSpringUpdate&&i.onSpringUpdate(this),t&&i.onSpringAtRest&&i.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(l,{fromOrigamiTensionAndFriction:function(e,t){return new l(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 l(0,p.frictionFromOrigamiValue(e))}}),l.DEFAULT_ORIGAMI_SPRING_CONFIG=l.fromOrigamiTensionAndFriction(40,7),n.extend(l.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,i){var o=n-t,s=i-r,a=(e-t)/o;return r+a*s},interpolateColor:function(e,t,r,i,o,s){i=void 0===i?0:i,o=void 0===o?1:o,t=n.hexToRGB(t),r=n.hexToRGB(r);var a=Math.floor(n.mapValueInRange(e,i,o,t.r,r.r)),u=Math.floor(n.mapValueInRange(e,i,o,t.g,r.g)),l=Math.floor(n.mapValueInRange(e,i,o,t.b,r.b));return s?"rgb("+a+","+u+","+l+")":n.rgbToHex(a,u,l)},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||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",function(e,t,n,r){"use strict";function i(){return y++}var o=t("EventEmitter"),s=t("Image"),a=t("NavigationContext"),u=t("NativeModules").NavigatorManager,l=t("React"),c=t("StaticContainer.react"),p=t("StyleSheet"),h=t("View"),f=t("invariant"),d=t("logError"),v=t("requireNativeComponent"),m=(t("resolveAssetSource"),"transitionerRef"),g=l.PropTypes,y=0,_=l.createClass({displayName:"NavigatorTransitionerIOS",requestSchedulingNavigation:function(e){u.requestSchedulingJavaScriptNavigation(l.findNodeHandle(this),d,e)},render:function(){return l.createElement(R,this.props)}}),b=l.createClass({displayName:"NavigatorIOS",propTypes:{initialRoute:g.shape({component:g.func.isRequired,title:g.string.isRequired,passProps:g.object,backButtonIcon:s.propTypes.source,backButtonTitle:g.string,leftButtonIcon:s.propTypes.source,leftButtonTitle:g.string,onLeftButtonPress:g.func,rightButtonIcon:s.propTypes.source,rightButtonTitle:g.string,onRightButtonPress:g.func,wrapperStyle:h.propTypes.style}).isRequired,navigationBarHidden:g.bool,shadowHidden:g.bool,itemWrapperStyle:h.propTypes.style,tintColor:g.string,barTintColor:g.string,titleTextColor:g.string,translucent:g.bool},navigator:void 0,navigationContext:new a,componentWillMount:function(){this.navigator={push:this.push,pop:this.pop,popN:this.popN,replace:this.replace,replacePrevious:this.replacePrevious,replacePreviousAndPop:this.replacePreviousAndPop,resetTo:this.resetTo,popToRoute:this.popToRoute,popToTop:this.popToTop,navigationContext:this.navigationContext},this._emitWillFocus(this.state.routeStack[this.state.observedTopOfStack])},componentDidMount:function(){this._emitDidFocus(this.state.routeStack[this.state.observedTopOfStack])},componentWillUnmount:function(){this.navigationContext.dispose(),this.navigationContext=new a},getDefaultProps:function(){return{translucent:!0}},getInitialState:function(){return{idStack:[i()],routeStack:[this.props.initialRoute],requestedTopOfStack:0,observedTopOfStack:0,progress:1,fromIndex:0,toIndex:0,makingNavigatorRequest:!1,updatingAllIndicesAtOrBeyond:0}},_toFocusOnNavigationComplete:void 0,_handleFocusRequest:function(e){this.state.makingNavigatorRequest?this._toFocusOnNavigationComplete=e:this._getFocusEmitter().emit("focus",e)},_focusEmitter:void 0,_getFocusEmitter:function(){var e=this._focusEmitter;return e||(e=new o,this._focusEmitter=e),e},getChildContext:function(){return{onFocusRequested:this._handleFocusRequest,focusEmitter:this._getFocusEmitter()}},childContextTypes:{onFocusRequested:l.PropTypes.func, -focusEmitter:l.PropTypes.instanceOf(o)},_tryLockNavigator:function(e){this.refs[m].requestSchedulingNavigation(function(t){return t&&e()})},_handleNavigatorStackChanged:function(e){var t=e.nativeEvent.stackLength-1;this._emitDidFocus(this.state.routeStack[t]),f(t<=this.state.requestedTopOfStack,"No navigator item should be pushed without JS knowing about it %s %s",t,this.state.requestedTopOfStack);var n=this.state.requestedTopOfStack!==this.state.observedTopOfStack;n&&f(t===this.state.requestedTopOfStack,"If waiting for observedTopOfStack to reach requestedTopOfStack, the only valid observedTopOfStack should be requestedTopOfStack.");var r={observedTopOfStack:t,makingNavigatorRequest:!1,updatingAllIndicesAtOrBeyond:null,progress:1,toIndex:t,fromIndex:t};this.setState(r,this._eliminateUnneededChildren)},_eliminateUnneededChildren:function(){var e=this.state.routeStack.length>this.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([i()]);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]=i(),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=e.wrapperStyle,i=e.passProps,e=babelHelpers.objectWithoutProperties(e,["component","wrapperStyle","passProps"]),o=this.props,s=o.itemWrapperStyle,a=babelHelpers.objectWithoutProperties(o,["itemWrapperStyle"]),u=this.state.updatingAllIndicesAtOrBeyond&&this.state.updatingAllIndicesAtOrBeyond>=t,p=n;return l.createElement(c,{key:"nav"+t,shouldUpdate:u},l.createElement(E,babelHelpers["extends"]({},e,a,{style:[S.stackItem,s,r]}),l.createElement(p,babelHelpers["extends"]({navigator:this.navigator,route:e},i))))},renderNavigationStackItems:function(){var e=this.state.makingNavigatorRequest||null!==this.state.updatingAllIndicesAtOrBeyond,t=e?this.state.routeStack.map(this._routeToStackItem):null;return l.createElement(c,{shouldUpdate:e},l.createElement(_,{ref:m,style:S.transitioner,vertical:this.props.vertical,requestedTopOfStack:this.state.requestedTopOfStack,onNavigationComplete:this.handleNavigationComplete},t))},render:function(){return l.createElement(h,{style:this.props.style},this.renderNavigationStackItems())}}),S=p.create({stackItem:{backgroundColor:"white",overflow:"hidden",position:"absolute",top:0,left:0,right:0,bottom:0},transitioner:{flex:1}}),R=v("RCTNavigator"),E=v("RCTNavItem");n.exports=b}),__d("StaticContainer.react",function(e,t,n,r){var i=t("React"),o=t("onlyChild"),s=function(e){function t(){return babelHelpers.classCallCheck(this,t),babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(t).apply(this,arguments))}return babelHelpers.inherits(t,e),babelHelpers.createClass(t,[{key:"shouldComponentUpdate",value:function(e){return!!e.shouldUpdate}},{key:"render",value:function(){var e=this.props.children;return null===e||e===!1?null:o(e)}}]),t}(i.Component);n.exports=s}),__d("PickerIOS",function(e,t,n,r){"use strict";var i=t("NativeMethodsMixin"),o=t("React"),s=t("ReactChildren"),a=t("NativeModules").UIManager.RCTPicker.Constants,u=t("StyleSheet"),l=t("StyleSheetPropType"),c=t("TextStylePropTypes"),p=t("View"),h=l(c),f=t("requireNativeComponent"),d=o.createClass({displayName:"PickerIOS",mixins:[i],propTypes:babelHelpers["extends"]({},p.propTypes,{itemStyle:h,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 s.forEach(e.children,function(r,i){r.props.value===e.selectedValue&&(t=i),n.push({value:r.props.value,label:r.props.label})}),{selectedIndex:t,items:n}},render:function(){var e=this;return o.createElement(p,{style:this.props.style},o.createElement(m,{ref:function(t){return e._picker=t},style:[v.pickerIOS,this.props.itemStyle],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._picker&&this.state.selectedIndex!==e.nativeEvent.newIndex&&this._picker.setNativeProps({selectedIndex:this.state.selectedIndex})}});d.Item=o.createClass({displayName:"Item",propTypes:{value:o.PropTypes.any,label:o.PropTypes.string},render:function(){return null}});var v=u.create({pickerIOS:{height:a.ComponentHeight}}),m=f("RCTPicker",{propTypes:{style:h}},{nativeOnly:{items:!0,onChange:!0,selectedIndex:!0}});n.exports=d}),__d("ProgressBarAndroid",function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("ProgressViewIOS",function(e,t,n,r){"use strict";var i=t("Image"),o=t("NativeMethodsMixin"),s=t("NativeModules"),a=t("ReactPropTypes"),u=t("React"),l=t("StyleSheet"),c=t("View"),p=t("requireNativeComponent"),h=u.createClass({displayName:"ProgressViewIOS",mixins:[o],propTypes:babelHelpers["extends"]({},c.propTypes,{progressViewStyle:a.oneOf(["default","bar"]),progress:a.number,progressTintColor:a.string,trackTintColor:a.string,progressImage:i.propTypes.source,trackImage:i.propTypes.source}),render:function(){return u.createElement(d,babelHelpers["extends"]({},this.props,{style:[f.progressView,this.props.style]}))}}),f=l.create({progressView:{height:s.ProgressViewManager.ComponentHeight}}),d=p("RCTProgressView",h);n.exports=h}),__d("SegmentedControlIOS",function(e,t,n,r){"use strict";var i=t("NativeMethodsMixin"),o=t("NativeModules"),s=t("ReactPropTypes"),a=t("React"),u=t("StyleSheet"),l=t("View"),c=t("requireNativeComponent"),p="segmentedcontrol",h=a.createClass({displayName:"SegmentedControlIOS",mixins:[i],propTypes:babelHelpers["extends"]({},l.propTypes,{values:s.arrayOf(s.string),selectedIndex:s.number,onValueChange:s.func,onChange:s.func,enabled:s.bool,tintColor:s.string,momentary:s.bool}),getDefaultProps:function(){return{values:[],enabled:!0}},_onChange:function(e){this.props.onChange&&this.props.onChange(e),this.props.onValueChange&&this.props.onValueChange(e.nativeEvent.value)},render:function(){return a.createElement(d,babelHelpers["extends"]({},this.props,{ref:p,style:[f.segmentedControl,this.props.style],onChange:this._onChange}))}}),f=u.create({segmentedControl:{height:o.SegmentedControlManager.ComponentHeight}}),d=c("RCTSegmentedControl",h);n.exports=h}),__d("SliderIOS",function(e,t,n,r){"use strict";var i=t("Image"),o=t("NativeMethodsMixin"),s=t("ReactPropTypes"),a=t("React"),u=t("StyleSheet"),l=t("View"),c=t("requireNativeComponent"),p=a.createClass({displayName:"SliderIOS",mixins:[o],propTypes:babelHelpers["extends"]({},l.propTypes,{style:l.propTypes.style,value:s.number,step:s.number,minimumValue:s.number,maximumValue:s.number,minimumTrackTintColor:s.string,maximumTrackTintColor:s.string,disabled:s.bool,trackImage:i.propTypes.source,thumbImage:i.propTypes.source,onValueChange:s.func,onSlidingComplete:s.func}),getDefaultProps:function(){return{disabled:!1}},render:function(){var e=this,t=this.props.onValueChange&&function(t){e.props.onValueChange&&e.props.onValueChange(t.nativeEvent.value)},n=this.props.onSlidingComplete&&function(t){e.props.onSlidingComplete&&e.props.onSlidingComplete(t.nativeEvent.value)},r=this.props,i=r.style,o=babelHelpers.objectWithoutProperties(r,["style"]);return i=[h.slider,i],a.createElement(f,babelHelpers["extends"]({},o,{style:i,onValueChange:t,onSlidingComplete:n}))}}),h=u.create({slider:{height:40}}),f=c("RCTSlider",p);n.exports=p}),__d("SnapshotViewIOS",function(e,t,n,r){"use strict";var i=t("React"),o=t("StyleSheet"),s=t("NativeModules"),a=s.TestModule,u=s.UIManager,l=t("View"),c=t("requireNativeComponent"),p=i.createClass({displayName:"SnapshotViewIOS",onDefaultAction:function(e){a.verifySnapshot(a.markTestPassed)},render:function(){var e=this.props.testIdentifier||"test",t=this.props.onSnapshotReady||this.onDefaultAction;return i.createElement(f,babelHelpers["extends"]({style:h.snapshot},this.props,{onSnapshotReady:t,testIdentifier:e}))},propTypes:babelHelpers["extends"]({},l.propTypes,{onSnapshotReady:i.PropTypes.func,testIdentifier:i.PropTypes.string})}),h=o.create({snapshot:{flex:1}}),f=u.RCTSnapshot?c("RCTSnapshot",p):l;n.exports=p}),__d("Switch",function(e,t,n,r){"use strict";var i=t("NativeMethodsMixin"),o=t("Platform"),s=t("React"),a=t("StyleSheet"),u=t("View"),l=t("requireNativeComponent"),c=s.createClass({displayName:"Switch",propTypes:babelHelpers["extends"]({},u.propTypes,{value:s.PropTypes.bool,disabled:s.PropTypes.bool,onValueChange:s.PropTypes.func,testID:s.PropTypes.string,tintColor:s.PropTypes.string,onTintColor:s.PropTypes.string,thumbTintColor:s.PropTypes.string}),getDefaultProps:function(){return{value:!1,disabled:!1}},mixins:[i],_rctSwitch:{},_onChange:function(e){this.props.onChange&&this.props.onChange(e),this.props.onValueChange&&this.props.onValueChange(e.nativeEvent.value),"android"===o.OS?this._rctSwitch.setNativeProps({on:this.props.value}):this._rctSwitch.setNativeProps({value:this.props.value})},render:function(){var e=this,t=babelHelpers["extends"]({},this.props);return t.onStartShouldSetResponder=function(){return!0},t.onResponderTerminationRequest=function(){return!1},"android"===o.OS?(t.enabled=!this.props.disabled,t.on=this.props.value,t.style=[p.rctSwitchAndroid,this.props.style]):"ios"===o.OS&&(t.style=[p.rctSwitchIOS,this.props.style]),s.createElement(h,babelHelpers["extends"]({},t,{ref:function(t){e._rctSwitch=t},onChange:this._onChange}))}}),p=a.create({rctSwitchIOS:{height:31,width:51},rctSwitchAndroid:{height:27,width:40}});if("android"===o.OS)var h=l("AndroidSwitch",c,{nativeOnly:{onChange:!0,on:!0,enabled:!0}});else var h=l("RCTSwitch",c,{nativeOnly:{onChange:!0}});n.exports=c}),__d("PullToRefreshViewAndroid",function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("SwitchAndroid",function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("SwitchIOS",function(e,t,n,r){"use strict";var i=t("NativeMethodsMixin"),o=t("ReactPropTypes"),s=t("React"),a=t("StyleSheet"),u=t("View"),l=t("requireNativeComponent"),c="switch",p=s.createClass({displayName:"SwitchIOS",mixins:[i],propTypes:babelHelpers["extends"]({},u.propTypes,{value:o.bool,disabled:o.bool,onValueChange:o.func,onTintColor:o.string,thumbTintColor:o.string,tintColor:o.string}),getDefaultProps:function(){return{value:!1,disabled:!1}},_onChange:function(e){this.refs[c].setNativeProps({value:this.props.value}),this.props.value===e.nativeEvent.value||this.props.disabled||(this.props.onChange&&this.props.onChange(e),this.props.onValueChange&&this.props.onValueChange(e.nativeEvent.value))},render:function(){return s.createElement(f,babelHelpers["extends"]({},this.props,{ref:c,onChange:this._onChange,style:[h.rkSwitch,this.props.style]}))}}),h=a.create({rkSwitch:{height:31,width:51}}),f=l("RCTSwitch",p,{nativeOnly:{onChange:!0}});n.exports=p}),__d("TabBarIOS",function(e,t,n,r){"use strict";var i=t("React"),o=t("StyleSheet"),s=t("TabBarItemIOS"),a=t("View"),u=t("requireNativeComponent"),l=i.createClass({displayName:"TabBarIOS",statics:{Item:s},propTypes:babelHelpers["extends"]({},a.propTypes,{style:a.propTypes.style,tintColor:i.PropTypes.string,barTintColor:i.PropTypes.string,translucent:i.PropTypes.bool}),render:function(){return i.createElement(p,{style:[c.tabGroup,this.props.style],tintColor:this.props.tintColor,barTintColor:this.props.barTintColor,translucent:this.props.translucent!==!1},this.props.children)}}),c=o.create({tabGroup:{flex:1}}),p=u("RCTTabBar",l);n.exports=l}),__d("TabBarItemIOS",function(e,t,n,r){"use strict";var i=t("Image"),o=t("React"),s=t("StaticContainer.react"),a=t("StyleSheet"),u=t("View"),l=t("requireNativeComponent"),c=o.createClass({displayName:"TabBarItemIOS",propTypes:babelHelpers["extends"]({},u.propTypes,{badge:o.PropTypes.oneOfType([o.PropTypes.string,o.PropTypes.number]),systemIcon:o.PropTypes.oneOf(["bookmarks","contacts","downloads","favorites","featured","history","more","most-recent","most-viewed","recents","search","top-rated"]),icon:i.propTypes.source,selectedIcon:i.propTypes.source,onPress:o.PropTypes.func,selected:o.PropTypes.bool,style:u.propTypes.style,title:o.PropTypes.string}),getInitialState:function(){return{hasBeenSelected:!1}},componentWillMount:function(){this.props.selected&&this.setState({hasBeenSelected:!0})},componentWillReceiveProps:function(e){(this.state.hasBeenSelected||e.selected)&&this.setState({hasBeenSelected:!0})},render:function(){var e=this.props,t=e.style,n=e.children,r=babelHelpers.objectWithoutProperties(e,["style","children"]);if(this.state.hasBeenSelected)var i=o.createElement(s,{shouldUpdate:this.props.selected},n);else var i=o.createElement(u,null);return o.createElement(h,babelHelpers["extends"]({},r,{style:[p.tab,t]}),i)}}),p=a.create({tab:{position:"absolute",top:0,right:0,bottom:0,left:0}}),h=l("RCTTabBarItem",c);n.exports=c}),__d("Text",function(e,t,n,r){"use strict";var i=t("NativeMethodsMixin"),o=t("Platform"),s=t("React"),a=(t("ReactInstanceMap"),t("ReactNativeViewAttributes")),u=t("StyleSheetPropType"),l=t("TextStylePropTypes"),c=t("Touchable"),p=t("createReactNativeComponentClass"),h=t("merge"),f=u(l),d={validAttributes:h(a.UIView,{isHighlighted:!0,numberOfLines:!0,allowFontScaling:!0}),uiViewClassName:"RCTText"},v=s.createClass({displayName:"Text",propTypes:{numberOfLines:s.PropTypes.number,onLayout:s.PropTypes.func,onPress:s.PropTypes.func,suppressHighlighting:s.PropTypes.bool,style:f,testID:s.PropTypes.string,allowFontScaling:s.PropTypes.bool},getDefaultProps:function(){return{accessible:!0,allowFontScaling:!0}},getInitialState:function(){return h(c.Mixin.touchableGetInitialState(),{isHighlighted:!1})},mixins:[i],viewConfig:d,getChildContext:function(){return{isInAParentText:!0}},childContextTypes:{isInAParentText:s.PropTypes.bool},contextTypes:{isInAParentText:s.PropTypes.bool},_handlers:null,touchableHandleActivePressIn:null,touchableHandleActivePressOut:null,touchableHandlePress:null,touchableGetPressRectOffset:null,render:function(){var e=this,t=this.props;return(this.props.onStartShouldSetResponder||this.props.onPress)&&(this._handlers||(this._handlers={onStartShouldSetResponder:function(){var t=e.props.onStartShouldSetResponder&&e.props.onStartShouldSetResponder(),n=t||!!e.props.onPress;if(n&&!e.touchableHandleActivePressIn){for(var r in c.Mixin)"function"==typeof c.Mixin[r]&&(e[r]=c.Mixin[r].bind(e));e.touchableHandleActivePressIn=function(){!e.props.suppressHighlighting&&e.props.onPress&&e.setState({isHighlighted:!0})},e.touchableHandleActivePressOut=function(){!e.props.suppressHighlighting&&e.props.onPress&&e.setState({isHighlighted:!1})},e.touchableHandlePress=function(){e.props.onPress&&e.props.onPress()},e.touchableGetPressRectOffset=function(){return m}}return n},onResponderGrant:function(e,t){this.touchableHandleResponderGrant(e,t),this.props.onResponderGrant&&this.props.onResponderGrant.apply(this,arguments)}.bind(this),onResponderMove:function(e){this.touchableHandleResponderMove(e),this.props.onResponderMove&&this.props.onResponderMove.apply(this,arguments)}.bind(this),onResponderRelease:function(e){this.touchableHandleResponderRelease(e),this.props.onResponderRelease&&this.props.onResponderRelease.apply(this,arguments)}.bind(this),onResponderTerminate:function(e){this.touchableHandleResponderTerminate(e),this.props.onResponderTerminate&&this.props.onResponderTerminate.apply(this,arguments)}.bind(this),onResponderTerminationRequest:function(){var e=this.touchableHandleResponderTerminationRequest();return e&&this.props.onResponderTerminationRequest&&(e=this.props.onResponderTerminationRequest.apply(this,arguments)),e}.bind(this)}),t=babelHelpers["extends"]({},this.props,this._handlers,{isHighlighted:this.state.isHighlighted})),this.context.isInAParentText?s.createElement(y,t):s.createElement(g,t)}}),m={top:20,left:20,right:20,bottom:30},g=p(d),y=g;"android"===o.OS&&(y=p({validAttributes:h(a.UIView,{isHighlighted:!0}),uiViewClassName:"RCTVirtualText"})),n.exports=v}),__d("Touchable",function(e,t,n,r){"use strict";var i=t("BoundingDimensions"),o=t("Position"),s=t("TouchEventUtils"),a=t("keyMirror"),u=t("queryLayoutByID"),l=a({NOT_RESPONDER:null,RESPONDER_INACTIVE_PRESS_IN:null,RESPONDER_INACTIVE_PRESS_OUT:null,RESPONDER_ACTIVE_PRESS_IN:null,RESPONDER_ACTIVE_PRESS_OUT:null,RESPONDER_ACTIVE_LONG_PRESS_IN:null,RESPONDER_ACTIVE_LONG_PRESS_OUT:null,ERROR:null}),c={RESPONDER_ACTIVE_PRESS_OUT:!0,RESPONDER_ACTIVE_PRESS_IN:!0},p={RESPONDER_INACTIVE_PRESS_IN:!0,RESPONDER_ACTIVE_PRESS_IN:!0,RESPONDER_ACTIVE_LONG_PRESS_IN:!0},h={RESPONDER_ACTIVE_LONG_PRESS_IN:!0},f=a({DELAY:null,RESPONDER_GRANT:null,RESPONDER_RELEASE:null,RESPONDER_TERMINATED:null,ENTER_PRESS_RECT:null,LEAVE_PRESS_RECT:null,LONG_PRESS_DETECTED:null}),d={NOT_RESPONDER:{DELAY:l.ERROR,RESPONDER_GRANT:l.RESPONDER_INACTIVE_PRESS_IN,RESPONDER_RELEASE:l.ERROR,RESPONDER_TERMINATED:l.ERROR,ENTER_PRESS_RECT:l.ERROR,LEAVE_PRESS_RECT:l.ERROR,LONG_PRESS_DETECTED:l.ERROR},RESPONDER_INACTIVE_PRESS_IN:{DELAY:l.RESPONDER_ACTIVE_PRESS_IN,RESPONDER_GRANT:l.ERROR,RESPONDER_RELEASE:l.NOT_RESPONDER,RESPONDER_TERMINATED:l.NOT_RESPONDER,ENTER_PRESS_RECT:l.RESPONDER_INACTIVE_PRESS_IN,LEAVE_PRESS_RECT:l.RESPONDER_INACTIVE_PRESS_OUT,LONG_PRESS_DETECTED:l.ERROR},RESPONDER_INACTIVE_PRESS_OUT:{DELAY:l.RESPONDER_ACTIVE_PRESS_OUT,RESPONDER_GRANT:l.ERROR,RESPONDER_RELEASE:l.NOT_RESPONDER,RESPONDER_TERMINATED:l.NOT_RESPONDER,ENTER_PRESS_RECT:l.RESPONDER_INACTIVE_PRESS_IN,LEAVE_PRESS_RECT:l.RESPONDER_INACTIVE_PRESS_OUT,LONG_PRESS_DETECTED:l.ERROR},RESPONDER_ACTIVE_PRESS_IN:{DELAY:l.ERROR,RESPONDER_GRANT:l.ERROR,RESPONDER_RELEASE:l.NOT_RESPONDER,RESPONDER_TERMINATED:l.NOT_RESPONDER,ENTER_PRESS_RECT:l.RESPONDER_ACTIVE_PRESS_IN,LEAVE_PRESS_RECT:l.RESPONDER_ACTIVE_PRESS_OUT,LONG_PRESS_DETECTED:l.RESPONDER_ACTIVE_LONG_PRESS_IN},RESPONDER_ACTIVE_PRESS_OUT:{DELAY:l.ERROR,RESPONDER_GRANT:l.ERROR,RESPONDER_RELEASE:l.NOT_RESPONDER,RESPONDER_TERMINATED:l.NOT_RESPONDER,ENTER_PRESS_RECT:l.RESPONDER_ACTIVE_PRESS_IN,LEAVE_PRESS_RECT:l.RESPONDER_ACTIVE_PRESS_OUT,LONG_PRESS_DETECTED:l.ERROR},RESPONDER_ACTIVE_LONG_PRESS_IN:{DELAY:l.ERROR,RESPONDER_GRANT:l.ERROR,RESPONDER_RELEASE:l.NOT_RESPONDER,RESPONDER_TERMINATED:l.NOT_RESPONDER,ENTER_PRESS_RECT:l.RESPONDER_ACTIVE_LONG_PRESS_IN,LEAVE_PRESS_RECT:l.RESPONDER_ACTIVE_LONG_PRESS_OUT,LONG_PRESS_DETECTED:l.RESPONDER_ACTIVE_LONG_PRESS_IN},RESPONDER_ACTIVE_LONG_PRESS_OUT:{DELAY:l.ERROR,RESPONDER_GRANT:l.ERROR,RESPONDER_RELEASE:l.NOT_RESPONDER,RESPONDER_TERMINATED:l.NOT_RESPONDER,ENTER_PRESS_RECT:l.RESPONDER_ACTIVE_LONG_PRESS_IN,LEAVE_PRESS_RECT:l.RESPONDER_ACTIVE_LONG_PRESS_OUT,LONG_PRESS_DETECTED:l.ERROR},error:{DELAY:l.NOT_RESPONDER,RESPONDER_GRANT:l.RESPONDER_INACTIVE_PRESS_IN,RESPONDER_RELEASE:l.NOT_RESPONDER,RESPONDER_TERMINATED:l.NOT_RESPONDER,ENTER_PRESS_RECT:l.NOT_RESPONDER,LEAVE_PRESS_RECT:l.NOT_RESPONDER,LONG_PRESS_DETECTED:l.NOT_RESPONDER}},v=130,m=20,g=500,y=g-v,_=10,b={componentWillUnmount:function(){this.touchableDelayTimeout&&clearTimeout(this.touchableDelayTimeout),this.longPressDelayTimeout&&clearTimeout(this.longPressDelayTimeout),this.pressOutDelayTimeout&&clearTimeout(this.pressOutDelayTimeout)},touchableGetInitialState:function(){return{touchable:{touchState:void 0,responderID:null}}},touchableHandleResponderTerminationRequest:function(){return!this.props.rejectResponderTermination},touchableHandleStartShouldSetResponder:function(){return!0},touchableLongPressCancelsPress:function(){return!0},touchableHandleResponderGrant:function(e,t){e.persist(),this.pressOutDelayTimeout&&clearTimeout(this.pressOutDelayTimeout),this.pressOutDelayTimeout=null,this.state.touchable.touchState=l.NOT_RESPONDER,this.state.touchable.responderID=t,this._receiveSignal(f.RESPONDER_GRANT,e);var n=void 0!==this.touchableGetHighlightDelayMS?Math.max(this.touchableGetHighlightDelayMS(),0):v;n=isNaN(n)?v:n,0!==n?this.touchableDelayTimeout=setTimeout(this._handleDelay.bind(this,e),n):this._handleDelay(e);var r=void 0!==this.touchableGetLongPressDelayMS?Math.max(this.touchableGetLongPressDelayMS(),10):y;r=isNaN(r)?y:r,this.longPressDelayTimeout=setTimeout(this._handleLongDelay.bind(this,e),r+n)},touchableHandleResponderRelease:function(e){this._receiveSignal(f.RESPONDER_RELEASE,e)},touchableHandleResponderTerminate:function(e){this._receiveSignal(f.RESPONDER_TERMINATED,e)},touchableHandleResponderMove:function(e){if(this.state.touchable.touchState!==l.RESPONDER_INACTIVE_PRESS_IN&&this.state.touchable.positionOnActivate){var t=this.state.touchable.positionOnActivate,n=this.state.touchable.dimensionsOnActivate,r=this.touchableGetPressRectOffset?this.touchableGetPressRectOffset():{left:m,right:m,top:m,bottom:m},i=r.left,o=r.top,a=r.right,u=r.bottom,c=s.extractSingleTouch(e.nativeEvent),p=c&&c.pageX,h=c&&c.pageY;if(this.pressInLocation){var d=this._getDistanceBetweenPoints(p,h,this.pressInLocation.pageX,this.pressInLocation.pageY);d>_&&this._cancelLongPressDelayTimeout()}var v=p>t.left-i&&h>t.top-o&&p0,i=n&&n.length>0;return!r&&i?n[0]:r?t[0]:e}};n.exports=i}),__d("queryLayoutByID",function(e,t,n,r){"use strict";var i=t("ReactNativeTagHandles"),o=t("UIManager"),s=function(e,t,n){o.measure(i.rootNodeIDToTag[e],n)};n.exports=s}),__d("TextInput",function(e,t,n,r){"use strict";var i=t("DocumentSelectionState"),o=t("EventEmitter"),s=t("NativeMethodsMixin"),a=t("Platform"),u=t("ReactPropTypes"),l=t("React"),c=t("ReactChildren"),p=t("StyleSheet"),h=t("Text"),f=t("TextInputState"),d=t("react-timer-mixin/TimerMixin.js"),v=t("TouchableWithoutFeedback"),m=t("UIManager"),g=t("View"),y=(t("createReactNativeComponentClass"),t("emptyFunction")),_=t("invariant"),b=t("requireNativeComponent"),S={onTextInput:!0,children:!0},R={};if("android"===a.OS)var E=b("AndroidTextInput",null);else if("ios"===a.OS)var T=b("RCTTextView",null),C=b("RCTTextField",null);var x=l.createClass({displayName:"TextInput",statics:{State:f},propTypes:babelHelpers["extends"]({},g.propTypes,{autoCapitalize:u.oneOf(["none","sentences","words","characters"]),autoCorrect:u.bool,autoFocus:u.bool,textAlign:u.oneOf(["start","center","end"]),textAlignVertical:u.oneOf(["top","center","bottom"]),editable:u.bool,keyboardType:u.oneOf(["default","numeric","email-address","ascii-capable","numbers-and-punctuation","url","number-pad","phone-pad","name-phone-pad","decimal-pad","twitter","web-search"]),keyboardAppearance:u.oneOf(["default","light","dark"]),returnKeyType:u.oneOf(["default","go","google","join","next","route","search","send","yahoo","done","emergency-call"]),maxLength:u.number,numberOfLines:u.number,enablesReturnKeyAutomatically:u.bool,multiline:u.bool,onBlur:u.func,onFocus:u.func,onChange:u.func,onChangeText:u.func,onEndEditing:u.func,onSubmitEditing:u.func,onKeyPress:u.func,onLayout:u.func,placeholder:u.string,placeholderTextColor:u.string,secureTextEntry:u.bool,selectionState:u.instanceOf(i),value:u.string,defaultValue:u.string,clearButtonMode:u.oneOf(["never","while-editing","unless-editing","always"]),clearTextOnFocus:u.bool,selectTextOnFocus:u.bool,blurOnSubmit:u.bool,style:h.propTypes.style,testID:u.string,underlineColorAndroid:u.string}),mixins:[s,d],viewConfig:"ios"===a.OS&&C?C.viewConfig:"android"===a.OS&&E?E.viewConfig:{},isFocused:function(){return f.currentlyFocusedField()===l.findNodeHandle(this.refs.input)},getInitialState:function(){return{mostRecentEventCount:0}},contextTypes:{onFocusRequested:l.PropTypes.func,focusEmitter:l.PropTypes.instanceOf(o)},_focusSubscription:void 0,componentDidMount:function(){var e=this;return this.context.focusEmitter?(this._focusSubscription=this.context.focusEmitter.addListener("focus",function(t){e===t?e.requestAnimationFrame(e.focus):e.isFocused()&&e.blur()}),void(this.props.autoFocus&&this.context.onFocusRequested(this))):void(this.props.autoFocus&&this.requestAnimationFrame(this.focus))},componentWillUnmount:function(){this._focusSubscription&&this._focusSubscription.remove(),this.isFocused()&&this.blur()},getChildContext:function(){return{isInAParentText:!0}},childContextTypes:{isInAParentText:l.PropTypes.bool},clear:function(){this.setNativeProps({text:""})},render:function(){return"ios"===a.OS?this._renderIOS():"android"===a.OS?this._renderAndroid():void 0},_getText:function(){return"string"==typeof this.props.value?this.props.value:this.props.defaultValue},_renderIOS:function(){var e,t,n=this;(this.props.selectionState||this.props.onSelectionChange)&&(t=function(e){if(n.props.selectionState){var t=e.nativeEvent.selection;n.props.selectionState.update(t.start,t.end)}n.props.onSelectionChange&&n.props.onSelectionChange(e)});var r=babelHelpers["extends"]({},this.props);if(r.style=[w.input,this.props.style],r.multiline){for(var i in R)if(r[i])throw new Error("TextInput prop `"+i+"` cannot be used with multiline.");var o=r.children,s=0;c.forEach(o,function(){return++s}),_(!(r.value&&s),"Cannot specify both value and children."),s>1&&(o=l.createElement(h,null,o)),r.inputView&&(o=[o,r.inputView]),e=l.createElement(T,babelHelpers["extends"]({ref:"input"},r,{children:o,mostRecentEventCount:this.state.mostRecentEventCount,onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChange:t,onTextInput:this._onTextInput,onSelectionChangeShouldSetResponder:y.thatReturnsTrue,text:this._getText()}))}else{for(var i in S)if(r[i])throw new Error("TextInput prop `"+i+"` is only supported with multiline.");e=l.createElement(C,babelHelpers["extends"]({ref:"input"},r,{onFocus:this._onFocus,onBlur:this._onBlur,onChange:this._onChange,onSelectionChange:t,onSelectionChangeShouldSetResponder:y.thatReturnsTrue,text:this._getText(),mostRecentEventCount:this.state.mostRecentEventCount}))}return l.createElement(v,{onPress:this._onPress,rejectResponderTermination:!0, -testID:r.testID},e)},_renderAndroid:function(){var e=m.UIText.AutocapitalizationType[this.props.autoCapitalize],t=m.AndroidTextInput.Constants.TextAlign[this.props.textAlign],n=m.AndroidTextInput.Constants.TextAlignVertical[this.props.textAlignVertical],r=this.props.children,i=0;c.forEach(r,function(){return++i}),_(!(this.props.value&&i),"Cannot specify both value and children."),i>1&&(r=l.createElement(h,null,r));var o=l.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,maxLength:this.props.maxLength,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(v,{onPress:this._onPress,testID:this.props.testID},o)},_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"===a.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(){"android"===a.OS&&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)},_onTextInput:function(e){this.props.onTextInput&&this.props.onTextInput(e)}}),w=p.create({input:{alignSelf:"stretch"}});n.exports=x}),__d("DocumentSelectionState",function(e,t,n,r){var i=t("mixInEventEmitter"),o=function(){function e(t,n){babelHelpers.classCallCheck(this,e),this._anchorOffset=t,this._focusOffset=n,this._hasFocus=!1}return babelHelpers.createClass(e,[{key:"update",value:function(e,t){(this._anchorOffset!==e||this._focusOffset!==t)&&(this._anchorOffset=e,this._focusOffset=t,this.emit("update"))}},{key:"constrainLength",value:function(e){this.update(Math.min(this._anchorOffset,e),Math.min(this._focusOffset,e))}},{key:"focus",value:function(){this._hasFocus||(this._hasFocus=!0,this.emit("focus"))}},{key:"blur",value:function(){this._hasFocus&&(this._hasFocus=!1,this.emit("blur"))}},{key:"hasFocus",value:function(){return this._hasFocus}},{key:"isCollapsed",value:function(){return this._anchorOffset===this._focusOffset}},{key:"isBackward",value:function(){return this._anchorOffset>this._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(o,{blur:!0,focus:!0,update:!0}),n.exports=o}),__d("mixInEventEmitter",function(e,t,n,r){function i(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(h)?l(n.__types,t):n.__types?n.__types=l({},n.__types,t):n.__types=t,l(n,f)}var o=t("EventEmitter"),s=t("EventEmitterWithHolding"),a=t("EventHolder"),u=t("EventValidator"),l=t("copyProperties"),c=t("invariant"),p=t("keyOf"),h=p({__types:!0}),f={emit:function(e,t,n,r,i,o,s){return this.__getEventEmitter().emit(e,t,n,r,i,o,s)},emitAndHold:function(e,t,n,r,i,o,s){return this.__getEventEmitter().emitAndHold(e,t,n,r,i,o,s)},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=u.addValidation(e,this.__types);var t=new a;this.__eventEmitter=new s(e,t)}return this.__eventEmitter}};n.exports=i}),__d("EventEmitterWithHolding",function(e,t,n,r){"use strict";var i=function(){function e(t,n){babelHelpers.classCallCheck(this,e),this._emitter=t,this._eventHolder=n,this._currentEventToken=null,this._emittingHeldEvents=!1}return babelHelpers.createClass(e,[{key:"addListener",value:function(e,t,n){return this._emitter.addListener(e,t,n)}},{key:"once",value:function(e,t,n){return this._emitter.once(e,t,n)}},{key:"addRetroactiveListener",value:function(e,t,n){var r=this._emitter.addListener(e,t,n);return this._emittingHeldEvents=!0,this._eventHolder.emitToListener(e,t,n),this._emittingHeldEvents=!1,r}},{key:"removeAllListeners",value:function(e){this._emitter.removeAllListeners(e)}},{key:"removeCurrentListener",value:function(){this._emitter.removeCurrentListener()}},{key:"listeners",value:function(e){return this._emitter.listeners(e)}},{key:"emit",value:function(e,t,n,r,i,o,s){this._emitter.emit(e,t,n,r,i,o,s)}},{key:"emitAndHold",value:function(e,t,n,r,i,o,s){this._currentEventToken=this._eventHolder.holdEvent(e,t,n,r,i,o,s),this._emitter.emit(e,t,n,r,i,o,s),this._currentEventToken=null}},{key:"releaseCurrentEvent",value:function(){null!==this._currentEventToken?this._eventHolder.releaseEvent(this._currentEventToken):this._emittingHeldEvents&&this._eventHolder.releaseCurrentEvent()}},{key:"releaseHeldEventType",value:function(e){this._eventHolder.releaseEventType(e)}}]),e}();n.exports=i}),__d("EventHolder",function(e,t,n,r){"use strict";var i=t("invariant"),o=function(){function e(){babelHelpers.classCallCheck(this,e),this._heldEvents={},this._currentEventKey=null}return babelHelpers.createClass(e,[{key:"holdEvent",value:function(e,t,n,r,i,o,s){this._heldEvents[e]=this._heldEvents[e]||[];var a=this._heldEvents[e],u={eventType:e,index:a.length};return a.push([t,n,r,i,o,s]),u}},{key:"emitToListener",value:function(e,t,n){var r=this,i=this._heldEvents[e];if(i){var o=this._currentEventKey;i.forEach(function(i,o){i&&(r._currentEventKey={eventType:e,index:o},t.apply(n,i))}),this._currentEventKey=o}}},{key:"releaseCurrentEvent",value:function(){i(null!==this._currentEventKey,"Not in an emitting cycle; there is no current event"),this.releaseEvent(this._currentEventKey)}},{key:"releaseEvent",value:function(e){delete this._heldEvents[e.eventType][e.index]}},{key:"releaseEventType",value:function(e){this._heldEvents[e]=[]}}]),e}();n.exports=o}),__d("EventValidator",function(e,t,n,r){"use strict";function i(e,t){if(-1===t.indexOf(e))throw new TypeError(o(e,t))}function o(e,t){var n='Unknown event type "'+e+'". ';return n+="Known event types: "+t.join(", ")+"."}var s=t("copyProperties"),a={addValidation:function(e,t){var n=Object.keys(t),r=Object.create(e);return s(r,{emit:function(t,r,o,s,a,u,l){return i(t,n),e.emit.call(this,t,r,o,s,a,u,l)}}),r}};n.exports=a}),__d("copyProperties",function(e,t,n,r){function i(e,t,n,r,i,o,s){e=e||{};for(var a,u=[t,n,r,i,o],l=0;u[l];){a=u[l++];for(var c in a)e[c]=a[c];a.hasOwnProperty&&a.hasOwnProperty("toString")&&"undefined"!=typeof a.toString&&e.toString!==a.toString&&(e.toString=a.toString)}return e}n.exports=i}),__d("TouchableWithoutFeedback",function(e,t,n,r){"use strict";var i=t("EdgeInsetsPropType"),o=t("React"),s=t("react-timer-mixin/TimerMixin.js"),a=t("Touchable"),u=t("View"),l=t("ensurePositiveDelayProps"),c=(t("invariant"),t("onlyChild")),p={top:20,left:20,right:20,bottom:30},h=o.createClass({displayName:"TouchableWithoutFeedback",mixins:[s,a.Mixin],propTypes:{accessible:o.PropTypes.bool,accessibilityComponentType:o.PropTypes.oneOf(u.AccessibilityComponentType),accessibilityTraits:o.PropTypes.oneOfType([o.PropTypes.oneOf(u.AccessibilityTraits),o.PropTypes.arrayOf(o.PropTypes.oneOf(u.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,pressRetentionOffset:i},getInitialState:function(){return this.touchableGetInitialState()},componentDidMount:function(){l(this.props)},componentWillReceiveProps:function(e){l(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 this.props.pressRetentionOffset||p},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=h}),__d("ensurePositiveDelayProps",function(e,t,n,r){"use strict";var i=t("invariant"),o=function(e){i(!(e.delayPressIn<0||e.delayPressOut<0||e.delayLongPress<0),"Touchable components cannot have negative delay properties")};n.exports=o}),__d("ToastAndroid",function(e,t,n,r){"use strict";var i=t("warning"),o={show:function(e,t){i(!1,"Cannot use ToastAndroid on iOS.")}};n.exports=o}),__d("ToolbarAndroid",function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("TouchableHighlight",function(e,t,n,r){"use strict";var i=t("NativeMethodsMixin"),o=t("React"),s=t("ReactNativeViewAttributes"),a=t("StyleSheet"),u=t("react-timer-mixin/TimerMixin.js"),l=t("Touchable"),c=t("TouchableWithoutFeedback"),p=t("View"),h=t("ensureComponentIsNative"),f=t("ensurePositiveDelayProps"),d=t("keyOf"),v=t("merge"),m=t("onlyChild"),g={activeOpacity:.8,underlayColor:"black"},y={top:20,left:20,right:20,bottom:30},_=o.createClass({displayName:"TouchableHighlight",propTypes:babelHelpers["extends"]({},c.propTypes,{activeOpacity:o.PropTypes.number,underlayColor:o.PropTypes.string,style:p.propTypes.style,onShowUnderlay:o.PropTypes.func,onHideUnderlay:o.PropTypes.func}),mixins:[i,u,l.Mixin],getDefaultProps:function(){return g},computeSyntheticState:function(e){return{activeProps:{style:{opacity:e.activeOpacity}},activeUnderlayProps:{style:{backgroundColor:e.underlayColor}},underlayStyle:[E.style,e.style]}},getInitialState:function(){return v(this.touchableGetInitialState(),this.computeSyntheticState(this.props))},componentDidMount:function(){f(this.props),h(this.refs[b])},componentDidUpdate:function(){h(this.refs[b])},componentWillReceiveProps:function(e){f(e),(e.activeOpacity!==this.props.activeOpacity||e.underlayColor!==this.props.underlayColor||e.style!==this.props.style)&&this.setState(this.computeSyntheticState(e))},viewConfig:{uiViewClassName:"RCTView",validAttributes:s.RCTView},touchableHandleActivePressIn:function(e){this.clearTimeout(this._hideTimeout),this._hideTimeout=null,this._showUnderlay(),this.props.onPressIn&&this.props.onPressIn(e)},touchableHandleActivePressOut:function(e){this._hideTimeout||this._hideUnderlay(),this.props.onPressOut&&this.props.onPressOut(e)},touchableHandlePress:function(e){this.clearTimeout(this._hideTimeout),this._showUnderlay(),this._hideTimeout=this.setTimeout(this._hideUnderlay,this.props.delayPressOut||100),this.props.onPress&&this.props.onPress(e)},touchableHandleLongPress:function(e){this.props.onLongPress&&this.props.onLongPress(e)},touchableGetPressRectOffset:function(){return this.props.pressRetentionOffset||y},touchableGetHighlightDelayMS:function(){return this.props.delayPressIn},touchableGetLongPressDelayMS:function(){return this.props.delayLongPress},touchableGetPressOutDelayMS:function(){return this.props.delayPressOut},_showUnderlay:function(){this.isMounted()&&(this.refs[S].setNativeProps(this.state.activeUnderlayProps),this.refs[b].setNativeProps(this.state.activeProps),this.props.onShowUnderlay&&this.props.onShowUnderlay())},_hideUnderlay:function(){this.clearTimeout(this._hideTimeout),this._hideTimeout=null,this.refs[S]&&(this.refs[b].setNativeProps(R),this.refs[S].setNativeProps(babelHelpers["extends"]({},E,{style:this.state.underlayStyle})),this.props.onHideUnderlay&&this.props.onHideUnderlay())},render:function(){return o.createElement(p,{accessible:!0,accessibilityComponentType:this.props.accessibilityComponentType,accessibilityTraits:this.props.accessibilityTraits,ref:S,style:this.state.underlayStyle,onLayout:this.props.onLayout,onStartShouldSetResponder:this.touchableHandleStartShouldSetResponder,onResponderTerminationRequest:this.touchableHandleResponderTerminationRequest,onResponderGrant:this.touchableHandleResponderGrant,onResponderMove:this.touchableHandleResponderMove,onResponderRelease:this.touchableHandleResponderRelease,onResponderTerminate:this.touchableHandleResponderTerminate,testID:this.props.testID},o.cloneElement(m(this.props.children),{ref:b}))}}),b=d({childRef:null}),S=d({underlayRef:null}),R={style:a.create({x:{opacity:1}}).x},E={style:a.create({x:{backgroundColor:"transparent"}}).x};n.exports=_}),__d("ensureComponentIsNative",function(e,t,n,r){"use strict";var i=t("invariant"),o=function(e){i(e&&"function"==typeof e.setNativeProps,"Touchable child must either be native or forward setNativeProps to a native component")};n.exports=o}),__d("TouchableNativeFeedback",function(e,t,n,r){"use strict";var i=t("React"),o=t("StyleSheet"),s=t("Text"),a=t("View"),u=i.createClass({displayName:"DummyTouchableNativeFeedback",render:function(){return i.createElement(a,{style:[l.container,this.props.style]},i.createElement(s,{style:l.info},"TouchableNativeFeedback is not supported on this platform!"))}}),l=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=u}),__d("TouchableOpacity",function(e,t,n,r){"use strict";var i=t("Animated"),o=t("NativeMethodsMixin"),s=t("React"),a=t("react-timer-mixin/TimerMixin.js"),u=t("Touchable"),l=t("TouchableWithoutFeedback"),c=t("ensurePositiveDelayProps"),p=t("flattenStyle"),h={top:20,left:20,right:20,bottom:30},f=s.createClass({displayName:"TouchableOpacity",mixins:[a,u.Mixin,o],propTypes:babelHelpers["extends"]({},l.propTypes,{activeOpacity:s.PropTypes.number}),getDefaultProps:function(){return{activeOpacity:.2}},getInitialState:function(){return babelHelpers["extends"]({},this.touchableGetInitialState(),{anim:new i.Value(1)})},componentDidMount:function(){c(this.props)},componentWillReceiveProps:function(e){c(e)},setOpacityTo:function(e){i.timing(this.state.anim,{toValue:e,duration:150}).start()},touchableHandleActivePressIn:function(e){this.clearTimeout(this._hideTimeout),this._hideTimeout=null,this._opacityActive(),this.props.onPressIn&&this.props.onPressIn(e)},touchableHandleActivePressOut:function(e){this._hideTimeout||this._opacityInactive(),this.props.onPressOut&&this.props.onPressOut(e)},touchableHandlePress:function(e){this.clearTimeout(this._hideTimeout),this._opacityActive(),this._hideTimeout=this.setTimeout(this._opacityInactive,this.props.delayPressOut||100),this.props.onPress&&this.props.onPress(e)},touchableHandleLongPress:function(e){this.props.onLongPress&&this.props.onLongPress(e)},touchableGetPressRectOffset:function(){return this.props.pressRetentionOffset||h},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},_opacityActive:function(){this.setOpacityTo(this.props.activeOpacity)},_opacityInactive:function(){this.clearTimeout(this._hideTimeout),this._hideTimeout=null;var e=p(this.props.style)||{};this.setOpacityTo(void 0===e.opacity?1:e.opacity)},render:function(){return s.createElement(i.View,{accessible:!0,accessibilityComponentType:this.props.accessibilityComponentType,accessibilityTraits:this.props.accessibilityTraits,style:[this.props.style,{opacity:this.state.anim}],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},this.props.children)}});n.exports=f}),__d("Animated",function(e,t,n,r){"use strict";var i=t("AnimatedImplementation"),o=t("Image"),s=t("Text"),a=t("View");n.exports=babelHelpers["extends"]({},i,{View:i.createAnimatedComponent(a),Text:i.createAnimatedComponent(s),Image:i.createAnimatedComponent(o)})}),__d("AnimatedImplementation",function(e,t,n,r){"use strict";function i(e){function t(e){"function"==typeof e.update?n.add(e):e.__getChildren().forEach(t)}var n=new p;t(e),n.forEach(function(e){return e.update()})}function o(e,t){return void 0===e||null===e?t:e}function s(e){var t="node",n=function(n){function r(){return babelHelpers.classCallCheck(this,r),babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(r).apply(this,arguments))}return babelHelpers.inherits(r,n),babelHelpers.createClass(r,[{key:"componentWillUnmount",value:function(){this._propsAnimated&&this._propsAnimated.__detach()}},{key:"setNativeProps",value:function(e){this.refs[t].setNativeProps(e)}},{key:"componentWillMount",value:function(){this.attachProps(this.props)}},{key:"attachProps",value:function(e){var n=this,r=this._propsAnimated,i=function(){if(n.refs[t].setNativeProps){var e=n._propsAnimated.__getAnimatedValue();n.refs[t].setNativeProps(e)}else n.forceUpdate()};this._propsAnimated=new O(e,i),r&&r.__detach()}},{key:"componentWillReceiveProps",value:function(e){this.attachProps(e)}},{key:"render",value:function(){return c.createElement(e,babelHelpers["extends"]({},this._propsAnimated.__getValue(),{ref:t}))}}]),r}(c.Component);return n.propTypes={style:function(t,n,r){if(e.propTypes)for(var i in f)e.propTypes[i]||void 0===t[i]||console.error("You are setting the style `{ "+i+": ... }` as a prop. You should nest it in a style object. E.g. `{ style: { "+i+": ... } }`")}},n}var a=t("Easing"),u=t("InteractionManager"),l=t("Interpolation"),c=t("React"),p=t("Set"),h=t("SpringConfig"),f=t("ViewStylePropTypes"),d=t("flattenStyle"),v=t("invariant"),m=t("requestAnimationFrame"),g=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,[{key:"__attach",value:function(){}},{key:"__detach",value:function(){}},{key:"__getValue",value:function(){}},{key:"__getAnimatedValue",value:function(){return this.__getValue()}},{key:"__addChild",value:function(e){}},{key:"__removeChild",value:function(e){}},{key:"__getChildren",value:function(){return[]}}]),e}(),y=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,[{key:"start",value:function(e,t,n,r){}},{key:"stop",value:function(){}},{key:"__debouncedOnEnd",value:function(e){var t=this.__onEnd;this.__onEnd=null,t&&t(e)}}]),e}(),_=function(e){function t(){babelHelpers.classCallCheck(this,t);var e=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this));return e._children=[],e}return babelHelpers.inherits(t,e),babelHelpers.createClass(t,[{key:"__addChild",value:function(e){0===this._children.length&&this.__attach(),this._children.push(e)}},{key:"__removeChild",value:function(e){var t=this._children.indexOf(e);return-1===t?void console.warn("Trying to remove a child that doesn't exist"):(this._children.splice(t,1),void(0===this._children.length&&this.__detach()))}},{key:"__getChildren",value:function(){return this._children}}]),t}(g),b=a.inOut(a.ease),S=function(e){function t(e){babelHelpers.classCallCheck(this,t);var n=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this));return n._toValue=e.toValue,n._easing=e.easing||b,n._duration=void 0!==e.duration?e.duration:500,n._delay=e.delay||0,n.__isInteraction=void 0!==e.isInteraction?e.isInteraction:!0,n}return babelHelpers.inherits(t,e),babelHelpers.createClass(t,[{key:"start",value:function n(e,t,r){var i=this;this.__active=!0,this._fromValue=e,this._onUpdate=t,this.__onEnd=r;var n=function(){0===i._duration?(i._onUpdate(i._toValue),i.__debouncedOnEnd({finished:!0})):(i._startTime=Date.now(),i._animationFrame=m(i.onUpdate.bind(i)))};this._delay?this._timeout=setTimeout(n,this._delay):n()}},{key:"onUpdate",value:function(){var e=Date.now();return e>=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=m(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,clearTimeout(this._timeout),window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(y),R=function(e){function t(e){babelHelpers.classCallCheck(this,t);var n=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this));return n._deceleration=e.deceleration||.998,n._velocity=e.velocity,n.__isInteraction=void 0!==e.isInteraction?e.isInteraction:!0,n}return babelHelpers.inherits(t,e),babelHelpers.createClass(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=m(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=m(this.onUpdate.bind(this)))))}},{key:"stop",value:function(){this.__active=!1,window.cancelAnimationFrame(this._animationFrame),this.__debouncedOnEnd({finished:!1})}}]),t}(y),E=function(e){function t(e){babelHelpers.classCallCheck(this,t);var n=babelHelpers.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this));n._overshootClamping=o(e.overshootClamping,!1),n._restDisplacementThreshold=o(e.restDisplacementThreshold,.001),n._restSpeedThreshold=o(e.restSpeedThreshold,.001),n._initialVelocity=e.velocity,n._lastVelocity=o(e.velocity,0),n._toValue=e.toValue,n.__isInteraction=void 0!==e.isInteraction?e.isInteraction:!0;var r;return void 0!==e.bounciness||void 0!==e.speed?(v(void 0===e.tension&&void 0===e.friction,"You can only define bounciness/speed or tension/friction but not both"),r=h.fromBouncinessAndSpeed(o(e.bounciness,8),o(e.speed,12))):r=h.fromOrigamiTensionAndFriction(o(e.tension,40),o(e.friction,7)),n._tension=r.tension,n._friction=r.friction,n}return babelHelpers.inherits(t,e),babelHelpers.createClass(t,[{key:"start",value:function(e,n,r,i){if(this.__active=!0,this._startPosition=e,this._lastPosition=this._startPosition,this._onUpdate=n,this.__onEnd=r,this._lastTime=Date.now(),i instanceof t){var o=i.getInternalState();this._lastPosition=o.lastPosition,this._lastVelocity=o.lastVelocity,this._lastTime=o.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,i=64,o=Date.now();o>this._lastTime+i&&(o=this._lastTime+i);for(var s=1,a=Math.floor((o-this._lastTime)/s),u=0;a>u;++u){var l=s/1e3,c=t,p=this._tension*(this._toValue-n)-this._friction*r,n=e+c*l/2,r=t+p*l/2,h=r,f=this._tension*(this._toValue-n)-this._friction*r;n=e+h*l/2,r=t+f*l/2;var d=r,v=this._tension*(this._toValue-n)-this._friction*r;n=e+d*l/2,r=t+v*l/2;var g=r,y=this._tension*(this._toValue-n)-this._friction*r;n=e+d*l/2,r=t+v*l/2;var _=(c+2*(h+d)+g)/6,b=(p+2*(f+v)+y)/6;e+=_*l,t+=b*l}if(this._lastTime=o,this._lastPosition=e,this._lastVelocity=t,this._onUpdate(e),this.__active){var S=!1;this._overshootClamping&&0!==this._tension&&(S=this._startPositionthis._toValue:ei;i++)r[i]=arguments[i];var o=function(e,t,n){if("number"==typeof t)return v(e instanceof C,"Bad mapping of type "+typeof e+" for key "+n+", event value must map to AnimatedValue"),void e.setValue(t);v("object"==typeof e,"Bad mapping of type "+typeof e+" for key "+n),v("object"==typeof t,"Bad event of type "+typeof t+" for key "+n);for(var n in e)o(e[n],t[n],n)};e.forEach(function(e,t){o(e,r[t],"arg"+t)}),t&&t.listener&&t.listener.apply(null,r)}};n.exports={Value:C,ValueXY:x,decay:M,timing:D,spring:A,delay:j,sequence:L,parallel:H,stagger:V,event:F,createAnimatedComponent:s,__PropsOnlyForTests:O}}),__d("Interpolation",function(e,t,n,r){"use strict";function i(e,t,n,r,i,o,s,a){var u=e;if(t>u){if("identity"===s)return u;"clamp"===s&&(u=t)}if(u>n){if("identity"===a)return u;"clamp"===a&&(u=n)}return r===i?r:t===n?t>=e?r:i:(t===-(1/0)?u=-u:n===1/0?u-=t:u=(u-t)/(n-t),u=o(u),r===-(1/0)?u=-u:i===1/0?u+=r:u=u*(i-r)+r,u)}function o(e){var t=p(e);if(t.isValid()){var n=t.toRgb(),r=n.r,i=n.g,o=n.b,s=n.a;return"rgba("+r+", "+i+", "+o+", "+(void 0===s?1:s)+")"}return e}function s(e){var t=e.outputRange;h(t.length>=2,"Bad output range"),t=t.map(o),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(babelHelpers["extends"]({},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 l(e){h(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){h(t.length>=2,e+" must have at least 2 elements"),h(2!==t.length||t[0]!==-(1/0)||t[1]!==1/0,e+"cannot be ]-infinity;+infinity[ "+t)}var p=t("tinycolor"),h=function(e,t){if(!e){var n=new Error(t);throw n.framesToPop=1,n}},f=function(e){return e},d=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"create",value:function(e){if(e.outputRange&&"string"==typeof e.outputRange[0])return s(e);var t=e.outputRange;c("outputRange",t);var n=e.inputRange;c("inputRange",n),l(n),h(n.length===t.length,"inputRange ("+n.length+") and outputRange ("+t.length+") must have the same length");var r=e.easing||f,o="extend";void 0!==e.extrapolateLeft?o=e.extrapolateLeft:void 0!==e.extrapolate&&(o=e.extrapolate);var a="extend";return void 0!==e.extrapolateRight?a=e.extrapolateRight:void 0!==e.extrapolate&&(a=e.extrapolate),function(e){h("number"==typeof e,"Cannot interpolation an input which is not a number");var s=u(e,n);return i(e,n[s],n[s+1],t[s],t[s+1],r,o,a)}}}]),e}(),v=/[0-9\.-]+/g;n.exports=d}),__d("Easing",function(e,t,n,r){"use strict";var i=t("bezier"),o=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"step0",value:function(e){return e>0?1:0}},{key:"step1",value:function(e){return e>=1?1:0}},{key:"linear",value:function(e){return e}},{key:"ease",value: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(){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 s=500;o=1e3/60/s/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=o.bezier(.42,0,1,1);n.exports=o}),__d("bezier",function(e,t,n,r){n.exports=function(e,t,n,r,i){var o=function(t){var r=1-t;return 3*r*r*t*e+3*r*t*t*n+t*t*t},s=function(e){var n=1-e;return 3*n*n*e*t+3*n*e*e*r+e*e*e},a=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,l,c,p=e;for(r=p,c=0;8>c;c++){if(u=o(r)-p,Math.abs(u)r)return s(t);if(r>n)return s(n);for(;n>t;){if(u=o(r),Math.abs(u-p)u?t=r:n=r,r=.5*(n-t)+t}return s(r)}}}),__d("SpringConfig",function(e,t,n,r){"use strict";function i(e){return 3.62*(e-30)+194}function o(e){return 3*(e-8)+25}function s(e,t){return{tension:i(e),friction:o(t)}}function a(e,t){function n(e,t,n){return(e-t)/(n-t)}function r(e,t,n){return t+e*(n-t)}function s(e,t,n){return e*n+(1-e)*t}function a(e,t,n){return s(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 l(e){return 44e-6*Math.pow(e,3)-.006*Math.pow(e,2)+.36*e+2}function c(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?l(e):c(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),v=a(h,p(d),.01);return{tension:i(d),friction:o(v)}}n.exports={fromOrigamiTensionAndFriction:s,fromBouncinessAndSpeed:a}}),__d("requestAnimationFrame",function(e,t,n,r){var i=t("emptyFunction"),o=t("nativeRequestAnimationFrame"),s=0,a=o||function(t){var n=Date.now(),r=Math.max(0,16-(n-s));return s=n+r,e.setTimeout(function(){t(Date.now())},r)};a(i),n.exports=a}),__d("nativeRequestAnimationFrame",function(e,t,n,r){var i=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame;n.exports=i}),__d("ViewPagerAndroid",function(e,t,n,r){"use strict";n.exports=t("UnimplementedView")}),__d("WebView",function(e,t,n,r){"use strict";var i=t("ActivityIndicatorIOS"),o=t("EdgeInsetsPropType"),s=t("React"),a=t("StyleSheet"),u=t("Text"),l=t("View"),c=t("invariant"),p=t("keyMirror"),h=t("requireNativeComponent"),f=s.PropTypes,d=t("NativeModules").WebViewManager,v="rgba(255,255,255,0.8)",m="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 s.createElement(l,{style:T.loadingView},s.createElement(i,null))},S=function(e,t,n){return s.createElement(l,{style:T.errorContainer},s.createElement(u,{style:T.errorTextTitle},"Error loading page"),s.createElement(u,{style:T.errorText},"Domain: "+e),s.createElement(u,{style:T.errorText},"Error Code: "+t),s.createElement(u,{style:T.errorText},"Description: "+n))},R=s.createClass({displayName:"WebView",statics:{JSNavigationScheme:_,NavigationType:y},propTypes:babelHelpers["extends"]({},l.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:l.propTypes.style,javaScriptEnabledAndroid:f.bool,injectedJavaScript:f.string,scalesPageToFit:f.bool,onShouldStartLoadWithRequest:f.func,allowsInlineMediaPlayback: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=this,t=null;if(this.state.viewState===g.LOADING)t=(this.props.renderLoading||b)();else if(this.state.viewState===g.ERROR){var n=this.state.lastErrorEvent;c(null!=n,"lastErrorEvent expected to be non-null"),t=(this.props.renderError||S)(n.domain,n.code,n.description)}else this.state.viewState!==g.IDLE&&console.error("RCTWebView invalid state encountered: "+this.state.loading);var r=[T.container,T.webView,this.props.style];(this.state.viewState===g.LOADING||this.state.viewState===g.ERROR)&&r.push(T.hidden);var i=this.props.onShouldStartLoadWithRequest&&function(t){var n=e.props.onShouldStartLoadWithRequest&&e.props.onShouldStartLoadWithRequest(t.nativeEvent);d.startLoadWithResult(!!n,t.nativeEvent.lockIdentifier)},o=s.createElement(E,{ref:m,key:"webViewKey",style:r,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,onShouldStartLoadWithRequest:i,scalesPageToFit:this.props.scalesPageToFit,allowsInlineMediaPlayback:this.props.allowsInlineMediaPlayback});return s.createElement(l,{style:T.container},o,t)},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 s.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)}}),E=h("RCTWebView",R,{nativeOnly:{onLoadingStart:!0,onLoadingError:!0,onLoadingFinish:!0}}),T=a.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=R}),__d("ActionSheetIOS",function(e,t,n,r){"use strict";var i=t("NativeModules").ActionSheetManager,o=t("invariant"),s=t("processColor"),a={showActionSheetWithOptions:function(e,t){o("object"==typeof e&&null!==e,"Options must a valid object"),o("function"==typeof t,"Must provide a valid callback"),i.showActionSheetWithOptions(babelHelpers["extends"]({},e,{tintColor:s(e.tintColor)}),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"),i.showShareActionSheetWithOptions(babelHelpers["extends"]({},e,{tintColor:s(e.tintColor)}),t,n)}};n.exports=a}),__d("AdSupportIOS",function(e,t,n,r){"use strict";var i=t("NativeModules").AdSupport;n.exports={getAdvertisingId:function(e,t){i.getAdvertisingId(e,t)},getAdvertisingTrackingEnabled:function(e,t){i.getAdvertisingTrackingEnabled(e,t)}}}),__d("Alert",function(e,t,n,r){"use strict";var i=t("AlertIOS"),o=t("Platform"),s=t("NativeModules").DialogManagerAndroid,a=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"alert",value:function(e,t,n,r){"ios"===o.OS?i.alert(e,t,n,r):"android"===o.OS&&u.alert(e,t,n)}}]),e}(),u=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"alert",value:function(e,t,n){var r={title:e||"",message:t||""},i=n?n.slice(0,3):[{text:"OK"}],o=i.pop(),a=i.pop(),u=i.pop();u&&(r=babelHelpers["extends"]({},r,{buttonNeutral:u.text||""})),a&&(r=babelHelpers["extends"]({},r,{buttonNegative:a.text||""})),o&&(r=babelHelpers["extends"]({},r,{buttonPositive:o.text||""})),s.showAlert(r,function(e){return console.warn(t)},function(e,t){e===s.buttonClicked&&(t===s.buttonNeutral?u.onPress&&u.onPress():t===s.buttonNegative?a.onPress&&a.onPress():t===s.buttonPositive&&o.onPress&&o.onPress())})}}]),e}();n.exports=a}),__d("AlertIOS",function(e,t,n,r){"use strict";var i=t("NativeModules").AlertManager,o=t("invariant"),s=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"alert",value:function(e,t,n,r){var o,s,a=[],u=[];n&&n.forEach(function(e,t){if(a[t]=e.onPress,"cancel"==e.style?o=String(t):"destructive"==e.style&&(s=String(t)),e.text||t<(n||[]).length-1){var r={};r[t]=e.text||"",u.push(r)}}),i.alertWithArgs({title:e||void 0,message:t||void 0,buttons:u,type:r||void 0,cancelButtonKey:o,destructiveButtonKey:s},function(e,t){var n=a[e];n&&n(t)})}},{key:"prompt",value:function(e,t,n,r){2===arguments.length?"object"==typeof t?(n=t,t=void 0):"function"==typeof t&&(r=t,t=void 0):3===arguments.length&&"function"==typeof n&&(r=n,n=void 0),o(!(r&&n)&&(r||n),"Must provide either a button list or a callback, but not both"),n||(n=[{onPress:r}]),this.alert(e,t,n,"plain-text")}}]),e}();n.exports=s}),__d("AppRegistry",function(e,t,n,r){"use strict";var i=t("BatchedBridge"),o=t("ReactNative"),s=t("invariant"),a=t("renderApplication"),u={},l={registerConfig:function(e){for(var t=0;to;o++){var s;i(o)}})},multiGet:function(e,t){var n=this;this._immediate||(this._immediate=setImmediate(function(){n._immediate=null,n.flushGetRequests()}));var r={keys:e,callback:t,keyIndex:this._getKeys.length,resolve:null,reject:null},i=new Promise(function(e,t){r.resolve=e,r.reject=t});return this._getRequests.push(r),this._getKeys.push.apply(this._getKeys,e),i},multiSet:function(e,t){return new Promise(function(n,r){c.multiSet(e,function(e){var o=i(e);t&&t(o),o?r(o):n(null)})})},multiRemove:function(e,t){return new Promise(function(n,r){c.multiRemove(e,function(e){var o=i(e);t&&t(o),o?r(o):n(null)})})},multiMerge:function(e,t){return new Promise(function(n,r){c.multiMerge(e,function(e){var o=i(e);t&&t(o),o?r(o):n(null)})})}};c.multiMerge||(delete p.mergeItem,delete p.multiMerge),n.exports=p}),__d("BackAndroid",function(e,t,n,r){"use strict";function i(){}var o={exitApp:i,addEventListener:i,removeEventListener:i};n.exports=o}),__d("CameraRoll",function(e,t,n,r){"use strict";var i=t("ReactPropTypes"),o=t("NativeModules").CameraRollManager,s=t("createStrictShapeTypeChecker"),a=t("deepFreezeAndThrowOnMutationInDev"),u=t("invariant"),l=["Album","All","Event","Faces","Library","PhotoStream","SavedPhotos"],c=["All","Videos","Photos"];a(l),a(c);var p=(s({first:i.number.isRequired,after:i.string,groupTypes:i.oneOf(l),groupName:i.string,assetType:i.oneOf(c),mimeTypes:i.arrayOf(i.string)}),s({edges:i.arrayOf(s({node:s({type:i.string.isRequired,group_name:i.string.isRequired,image:s({uri:i.string.isRequired,height:i.number.isRequired,width:i.number.isRequired,isStored:i.bool}).isRequired,timestamp:i.number.isRequired,location:s({latitude:i.number,longitude:i.number,altitude:i.number,heading:i.number,speed:i.number})}).isRequired})).isRequired,page_info:s({has_next_page:i.bool.isRequired,start_cursor:i.string,end_cursor:i.string}).isRequired}),function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"saveImageWithTag",value:function(e,t,n){u("string"==typeof e,"CameraRoll.saveImageWithTag tag must be a valid string."),o.saveImageWithTag(e,function(e){t&&t(e)},function(e){n&&n(e)})}},{key:"getPhotos",value:function(e,t,n){var r=t;o.getPhotos(e,r,n)}}]),e}());p.GroupTypesOptions=l,p.AssetTypeOptions=c,n.exports=p}),__d("Clipboard",function(e,t,n,r){"use strict";n.exports=t("NativeModules").Clipboard}),__d("ImagePickerIOS",function(e,t,n,r){"use strict";var i=t("NativeModules").ImagePickerIOS,o={canRecordVideos:function(e){return i.canRecordVideos(e)},canUseCamera:function(e){return i.canUseCamera(e)},openCameraDialog:function(e,t,n){return e=babelHelpers["extends"]({videoMode:!1},e),i.openCameraDialog(e,t,n)},openSelectDialog:function(e,t,n){return e=babelHelpers["extends"]({showImages:!0,showVideos:!1},e),i.openSelectDialog(e,t,n)}};n.exports=o}),__d("IntentAndroid",function(e,t,n,r){"use strict";n.exports={openURL:function(e){console.error("IntentAndroid is not supported on iOS")}}}),__d("LayoutAnimation",function(e,t,n,r){"use strict";function i(e,t){v({config:e},"config","LayoutAnimation.configureNext"),a.configureNextLayoutAnimation(e,t||function(){},function(){})}function o(e,t,n){return{duration:e,create:{type:t,property:n},update:{type:t}}}var s=t("ReactPropTypes"),a=t("UIManager"),u=t("createStrictShapeTypeChecker"),l=t("keyMirror"),c={spring:!0,linear:!0,easeInEaseOut:!0,easeIn:!0,easeOut:!0,keyboard:!0},p=l(c),h={opacity:!0,scaleXY:!0},f=l(h),d=u({duration:s.number,delay:s.number,springDamping:s.number,initialVelocity:s.number,type:s.oneOf(Object.keys(p)),property:s.oneOf(Object.keys(f))}),v=u({duration:s.number.isRequired,create:d,update:d,"delete":d}),m={easeInEaseOut:o(300,p.easeInEaseOut,f.opacity),linear:o(500,p.linear,f.opacity),spring:{duration:700,create:{type:p.linear,property:f.opacity},update:{type:p.spring,springDamping:.4}}},g={configureNext:i,create:o,Types:p,Properties:f,configChecker:v,Presets:m,easeInEaseOut:i.bind(null,m.easeInEaseOut),linear:i.bind(null,m.linear),spring:i.bind(null,m.spring)};n.exports=g}),__d("LinkingIOS",function(e,t,n,r){"use strict";var i=t("RCTDeviceEventEmitter"),o=t("NativeModules").LinkingManager,s=t("Map"),a=t("invariant"),u=new s,l=o&&o.initialURL,c="openURL",p=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"addEventListener",value:function(e,t){a("url"===e,"LinkingIOS only supports `url` events");var n=i.addListener(c,t);u.set(t,n)}},{key:"removeEventListener",value:function(e,t){a("url"===e,"LinkingIOS only supports `url` events");var n=u.get(t);n&&(n.remove(),u["delete"](t))}},{key:"openURL",value:function(e){a("string"==typeof e,"Invalid url: should be a string"),o.openURL(e)}},{key:"canOpenURL",value:function(e,t){a("string"==typeof e,"Invalid url: should be a string"),a("function"==typeof t,"A valid callback function is required"),o.canOpenURL(e,t)}},{key:"popInitialURL",value:function(){var e=l;return l=null,e}}]),e}();n.exports=p}),__d("NetInfo",function(e,t,n,r){"use strict";var i=t("Map"),o=t("NativeModules"),s=t("Platform"),a=t("RCTDeviceEventEmitter"),u=o.NetInfo,l="networkStatusDidChange",c=new i,p=void 0;"ios"===s.OS?p=function(e){return"none"!==e&&"unknown"!==e}:"android"===s.OS&&(p=function(e){return"NONE"!==e&&"UNKNOWN"!==e});var h=new i,f={addEventListener:function(e,t){var n=a.addListener(l,function(e){t(e.network_info)});c.set(t,n)},removeEventListener:function(e,t){var n=c.get(t);n&&(n.remove(),c["delete"](t))},fetch:function(){return new Promise(function(e,t){u.getCurrentConnectivity(function(t){e(t.network_info)},t)})},isConnected:{addEventListener:function(e,t){var n=function(e){t(p(e))};h.set(t,n),f.addEventListener(e,n)},removeEventListener:function(e,t){var n=h.get(t);f.removeEventListener(e,n),h["delete"](t)},fetch:function(){return f.fetch().then(function(e){return p(e)})}},isConnectionExpensive:function(e){"android"===s.OS?u.isConnectionMetered(function(t){e(t)}):e(null,"Unsupported")}};n.exports=f}),__d("PushNotificationIOS",function(e,t,n,r){"use strict";var i=t("Map"),o=t("RCTDeviceEventEmitter"),s=t("NativeModules").PushNotificationManager,a=t("invariant"),u=new i,l=s&&s.initialNotification,c="remoteNotificationReceived",p="remoteNotificationsRegistered",h=function(){function e(t){var n=this;babelHelpers.classCallCheck(this,e),this._data={},Object.keys(t).forEach(function(e){var r=t[e];"aps"===e?(n._alert=r.alert,n._sound=r.sound,n._badgeCount=r.badge):n._data[e]=r})}return babelHelpers.createClass(e,null,[{key:"presentLocalNotification",value:function(e){s.presentLocalNotification(e)}},{key:"scheduleLocalNotification",value:function(e){s.scheduleLocalNotification(e)}},{key:"cancelAllLocalNotifications",value:function(){s.cancelAllLocalNotifications()}},{key:"setApplicationIconBadgeNumber",value:function(e){s.setApplicationIconBadgeNumber(e)}},{key:"getApplicationIconBadgeNumber",value:function(e){s.getApplicationIconBadgeNumber(e)}},{key:"addEventListener",value:function(t,n){a("notification"===t||"register"===t,"PushNotificationIOS only supports `notification` and `register` events");var r;"notification"===t?r=o.addListener(c,function(t){n(new e(t))}):"register"===t&&(r=o.addListener(p,function(e){n(e.deviceToken)})),u.set(n,r)}},{key:"requestPermissions",value:function(e){var t={};t=e?{alert:!!e.alert,badge:!!e.badge,sound:!!e.sound}:{alert:!0,badge:!0,sound:!0},s.requestPermissions(t)}},{key:"abandonPermissions",value:function(){s.abandonPermissions()}},{key:"checkPermissions",value:function(e){a("function"==typeof e,"Must provide a valid callback"),s.checkPermissions(e)}},{key:"removeEventListener",value:function(e,t){a("notification"===e||"register"===e,"PushNotificationIOS only supports `notification` and `register` events");var n=u.get(t);n&&(n.remove(),u["delete"](t))}},{key:"popInitialNotification",value:function(){var t=l&&new e(l);return l=null,t}}]),babelHelpers.createClass(e,[{key:"getMessage",value:function(){return this._alert}},{key:"getSound",value:function(){return this._sound}},{key:"getAlert",value:function(){return this._alert}},{key:"getBadgeCount",value:function(){return this._badgeCount}},{key:"getData",value:function(){return this._data}}]),e}();n.exports=h}),__d("Settings",function(e,t,n,r){"use strict";var i=t("RCTDeviceEventEmitter"),o=t("NativeModules").SettingsManager,s=t("invariant"),a=[],u={_settings:o&&o.settings,get:function(e){return this._settings[e]},set:function(e){this._settings=babelHelpers["extends"](this._settings,e),o.setValues(e)},watchKeys:function(e,t){"string"==typeof e&&(e=[e]),s(Array.isArray(e),"keys should be a string or array of strings");var n=a.length;return a.push({keys:e,callback:t}),n},clearWatch:function(e){e1)for(var r=1;n>r;r++)t=arguments[r],t&&(e=(e?e+" ":"")+t);return e}n.exports=i}),__d("ReactFragment",function(e,t,n,r){"use strict";var i=t("ReactChildren"),o=t("ReactElement"),s=t("emptyFunction"),a=t("invariant"),u=t("warning"),l={create:function(e){if("object"!=typeof e||!e||Array.isArray(e))return u(!1,"React.addons.createFragment only accepts a single object. Got: %s",e),e;if(o.isValidElement(e))return u(!1,"React.addons.createFragment does not accept a ReactElement without a wrapper object."),e;a(1!==e.nodeType,"React.addons.createFragment(...): Encountered an invalid child; DOM elements are not valid children of React components.");var t=[];for(var n in e)i.mapIntoWithKeyPrefixInternal(e[n],t,n,s.thatReturnsArgument);return t}};n.exports=l}),__d("update",function(e,t,n,r){"use strict";function i(e){return Array.isArray(e)?e.concat():e&&"object"==typeof e?a(new e.constructor,e):e}function o(e,t,n){l(Array.isArray(e),"update(): expected target of %s to be an array; got %s.",n,e);var r=t[n];l(Array.isArray(r),"update(): expected spec of %s to be an array; got %s. Did you forget to wrap your parameter in an array?",n,r)}function s(e,t){if(l("object"==typeof t,"update(): You provided a key path to update() that did not contain one of %s. Did you forget to include {%s: ...}?",g.join(", "),d),c.call(t,d))return l(1===Object.keys(t).length,"Cannot have more than one key in an object with %s",d),t[d];var n=i(e);if(c.call(t,v)){var r=t[v];l(r&&"object"==typeof r,"update(): %s expects a spec of type 'object'; got %s",v,r),l(n&&"object"==typeof n,"update(): %s expects a target of type 'object'; got %s",v,n),a(n,t[v])}c.call(t,p)&&(o(e,t,p),t[p].forEach(function(e){n.push(e)})),c.call(t,h)&&(o(e,t,h),t[h].forEach(function(e){n.unshift(e)})),c.call(t,f)&&(l(Array.isArray(e),"Expected %s target to be an array; got %s",f,e),l(Array.isArray(t[f]),"update(): expected spec of %s to be an array of arrays; got %s. Did you forget to wrap your parameters in an array?",f,t[f]),t[f].forEach(function(e){l(Array.isArray(e),"update(): expected spec of %s to be an array of arrays; got %s. Did you forget to wrap your parameters in an array?",f,t[f]),n.splice.apply(n,e)})),c.call(t,m)&&(l("function"==typeof t[m],"update(): expected spec of %s to be a function; got %s.",m,t[m]),n=t[m](n));for(var u in t)y.hasOwnProperty(u)&&y[u]||(n[u]=s(e[u],t[u]));return n}var a=t("Object.assign"),u=t("keyOf"),l=t("invariant"),c={}.hasOwnProperty,p=u({$push:null}),h=u({$unshift:null}),f=u({$splice:null}),d=u({$set:null}),v=u({$merge:null}),m=u({$apply:null}),g=[p,h,f,d,v,m],y={};g.forEach(function(e){y[e]=!0}),n.exports=s}),require("InitializeJavaScriptAppEngine"),require("react-xaml-wpf/index.ios.js"); -//# sourceMappingURL=bundle.js -__SSTOKENSTRING = "@generated SignedSource<<5dd244de2345a982f19fad292e6168ab>>";