UNPKG

186 kBSource Map (JSON)View Raw
1{"version":3,"file":"index.esm.js","sources":["../../taro-utils/src/shallow-equal.js","../../taro-utils/src/simple-map.js","../../taro-utils/src/index.js","../src/next-tick.js","../node_modules/react-is/cjs/react-is.production.min.js","../node_modules/react-is/cjs/react-is.development.js","../node_modules/react-is/index.js","../node_modules/object-assign/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/checkPropTypes.js","../node_modules/prop-types/factoryWithTypeCheckers.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/lodash/_freeGlobal.js","../node_modules/lodash/_root.js","../node_modules/lodash/_Symbol.js","../node_modules/lodash/_getRawTag.js","../node_modules/lodash/_objectToString.js","../node_modules/lodash/_baseGetTag.js","../node_modules/lodash/_overArg.js","../node_modules/lodash/_getPrototype.js","../node_modules/lodash/isObjectLike.js","../node_modules/lodash/isPlainObject.js","../src/util.js","../src/data-cache.js","../src/propsManager.js","../src/create-component.js","../src/lifecycle.js","../src/render-queue.js","../src/component.js","../src/pure-component.js","../src/create-app.js","../src/native-api.js","../src/index.js"],"sourcesContent":["/* eslint-disable */\nconst objectIs = Object.is || function (x, y) {\n if (x === y) {\n return x !== 0 || 1 / x === 1 / y\n }\n return x !== x && y !== y\n}\n\nexport default function shallowEqual (obj1, obj2) {\n if (typeof obj1 !== 'object' && typeof obj2 !== 'object') {\n return obj1 === obj2\n }\n\n if (obj1 === null && obj2 === null) {\n return true\n }\n if (obj1 === null || obj2 === null) {\n return false\n }\n if (objectIs(obj1, obj2)) {\n return true\n }\n const obj1Keys = obj1 ? Object.keys(obj1) : []\n const obj2Keys = obj2 ? Object.keys(obj2) : []\n if (obj1Keys.length !== obj2Keys.length) {\n return false\n }\n\n for (let i = 0; i < obj1Keys.length; i++) {\n const obj1KeyItem = obj1Keys[i]\n if (!obj2.hasOwnProperty(obj1KeyItem) || !objectIs(obj1[obj1KeyItem], obj2[obj1KeyItem])) {\n return false\n }\n }\n\n return true\n}\n","export default class SimpleMap {\n constructor () {\n this.cache = []\n this.size = 0\n }\n\n set (k, v) {\n const len = this.cache.length\n if (!len) {\n this.cache.push({ k, v })\n this.size += 1\n return\n }\n for (let i = 0; i < len; i++) {\n const item = this.cache[i]\n if (item.k === k) {\n item.v = v\n return\n }\n }\n this.cache.push({ k, v })\n this.size += 1\n }\n\n get (k) {\n const len = this.cache.length\n if (!len) {\n return\n }\n for (let i = 0; i < len; i++) {\n const item = this.cache[i]\n if (item.k === k) {\n return item.v\n }\n }\n }\n\n has (k) {\n const len = this.cache.length\n if (!len) {\n return false\n }\n for (let i = 0; i < len; i++) {\n const item = this.cache[i]\n if (item.k === k) {\n return true\n }\n }\n return false\n }\n\n delete (k) {\n const len = this.cache.length\n for (let i = 0; i < len; i++) {\n const item = this.cache[i]\n if (item.k === k) {\n this.cache.splice(i, 1)\n this.size -= 1\n return true\n }\n }\n return false\n }\n\n clear () {\n let len = this.cache.length\n this.size = 0\n if (!len) {\n return\n }\n while (len) {\n this.cache.pop()\n len--\n }\n }\n}\n","import shallowEqual from './shallow-equal'\nimport SimpleMap from './simple-map'\n\nfunction addLeadingSlash (path) {\n return path.charAt(0) === '/' ? path : '/' + path\n}\n\nfunction getCurrentPageUrl () {\n const pages = getCurrentPages()\n const currentPage = pages[pages.length - 1]\n return addLeadingSlash(currentPage.route || currentPage.__route__)\n}\n\nexport default {\n shallowEqual,\n getCurrentPageUrl,\n SimpleMap\n}\n\nexport {\n shallowEqual,\n getCurrentPageUrl,\n SimpleMap\n}\n","const nextTick = (fn, ...args) => {\n fn = typeof fn === 'function' ? fn.bind(null, ...args) : fn\n const timerFunc = wx.nextTick ? wx.nextTick : setTimeout\n timerFunc(fn)\n}\n\nexport default nextTick\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = Function.call.bind(Object.prototype.hasOwnProperty);\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar has = Function.call.bind(Object.prototype.hasOwnProperty);\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<<anonymous>>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","import isPlainObject from 'lodash/isPlainObject'\nimport { Current } from '@tarojs/taro'\nimport { SimpleMap } from '@tarojs/utils'\n\nexport function isEmptyObject (obj) {\n if (!obj || !isPlainObject(obj)) {\n return false\n }\n for (const n in obj) {\n if (obj.hasOwnProperty(n)) {\n return false\n }\n }\n return true\n}\n\nexport function isUndefined (o) {\n return o === undefined\n}\n\nexport function isNullOrUndef (o) {\n return isUndefined(o) || o === null\n}\n\n/**\n * JSON 克隆\n * @param {Object | Json} jsonObj json对象\n * @return {Object | Json} 新的json对象\n */\nexport function objClone (jsonObj) {\n let buf\n if (Array.isArray(jsonObj)) {\n buf = []\n let i = jsonObj.length\n while (i--) {\n buf[i] = objClone(jsonObj[i])\n }\n return buf\n } else if (isPlainObject(jsonObj)) {\n buf = {}\n for (const k in jsonObj) {\n buf[k] = objClone(jsonObj[k])\n }\n return buf\n } else {\n return jsonObj\n }\n}\n\nexport function getPrototype (obj) {\n /* eslint-disable */\n if (Object.getPrototypeOf) {\n return Object.getPrototypeOf(obj)\n } else if (obj.__proto__) {\n return obj.__proto__\n }\n /* eslint-enable */\n return obj.constructor.prototype\n}\n\nexport function getPrototypeChain (obj) {\n const protoChain = []\n while ((obj = getPrototype(obj))) {\n protoChain.push(obj)\n }\n return protoChain\n}\n\nexport function noop () {}\n\nexport function isFunction (arg) {\n return typeof arg === 'function'\n}\n\nexport function isArray (arg) {\n return Array.isArray(arg)\n}\n\nexport function cloneDeep (obj) {\n let newObj\n if (isArray(obj)) {\n newObj = []\n const len = obj.length\n for (let i = 0; i < len; i++) {\n newObj.push(cloneDeep(obj[i]))\n }\n } else if (isPlainObject(obj)) {\n newObj = {}\n for (const key in obj) {\n const ret = cloneDeep(obj[key])\n newObj[key] = ret\n }\n } else {\n return obj\n }\n return newObj\n}\n\nconst keyList = Object.keys\nconst hasProp = Object.prototype.hasOwnProperty\n\nfunction diffArrToPath (to, from, res = {}, keyPrev = '') {\n const len = to.length\n for (let i = 0; i < len; i++) {\n const toItem = to[i]\n const fromItem = from[i]\n const targetKey = `${keyPrev}[${i}]`\n if (toItem === fromItem) {\n continue\n } else if (typeof toItem !== typeof fromItem) {\n res[targetKey] = toItem\n } else {\n if (typeof toItem !== 'object') {\n res[targetKey] = toItem\n } else {\n const arrTo = isArray(toItem)\n const arrFrom = isArray(fromItem)\n if (arrTo !== arrFrom) {\n res[targetKey] = toItem\n } else if (arrTo && arrFrom) {\n if (toItem.length < fromItem.length) {\n res[targetKey] = toItem\n } else {\n // 数组\n diffArrToPath(toItem, fromItem, res, `${targetKey}`)\n }\n } else {\n if (!toItem || !fromItem || keyList(toItem).length < keyList(fromItem).length) {\n res[targetKey] = toItem\n } else {\n // 对象\n let shouldDiffObject = isPlainObject(toItem)\n\n shouldDiffObject &&\n Object.keys(fromItem).some(key => {\n if (typeof toItem[key] === 'undefined' && typeof fromItem[key] !== 'undefined') {\n shouldDiffObject = false\n return true\n }\n })\n\n if (shouldDiffObject) {\n diffObjToPath(toItem, fromItem, res, `${targetKey}.`)\n } else {\n res[targetKey] = toItem\n }\n }\n }\n }\n }\n }\n return res\n}\n\n// 比较的对象均为plainObject,且函数已被过滤\nexport function diffObjToPath (to, from, res = {}, keyPrev = '') {\n const keys = keyList(to)\n const len = keys.length\n\n for (let i = 0; i < len; i++) {\n const key = keys[i]\n const toItem = to[key]\n const fromItem = from[key]\n const targetKey = `${keyPrev}${key}`\n if (/^\\$compid__/.test(key)) {\n res[targetKey] = toItem\n } else if (toItem === fromItem) {\n continue\n } else if (!hasProp.call(from, key)) {\n res[targetKey] = toItem\n } else if (typeof toItem !== typeof fromItem) {\n res[targetKey] = toItem\n } else {\n if (typeof toItem !== 'object') {\n res[targetKey] = toItem\n } else {\n const arrTo = isArray(toItem)\n const arrFrom = isArray(fromItem)\n if (arrTo !== arrFrom) {\n res[targetKey] = toItem\n } else if (arrTo && arrFrom) {\n if (toItem.length < fromItem.length) {\n res[targetKey] = toItem\n } else {\n // 数组\n diffArrToPath(toItem, fromItem, res, `${targetKey}`)\n }\n } else {\n // null\n if (!toItem || !fromItem) {\n res[targetKey] = toItem\n } else {\n // 对象\n let shouldDiffObject = isPlainObject(toItem)\n\n shouldDiffObject &&\n Object.keys(fromItem).some(key => {\n if (typeof toItem[key] === 'undefined' && typeof fromItem[key] !== 'undefined') {\n shouldDiffObject = false\n return true\n }\n })\n\n if (shouldDiffObject) {\n diffObjToPath(toItem, fromItem, res, `${targetKey}.`)\n } else {\n res[targetKey] = toItem\n }\n }\n }\n }\n }\n }\n return res\n}\n\nexport function queryToJson (str) {\n const dec = decodeURIComponent\n const qp = str.split('&')\n let ret = {}\n let name\n let val\n for (let i = 0, l = qp.length, item; i < l; ++i) {\n item = qp[i]\n if (item.length) {\n const s = item.indexOf('=')\n if (s < 0) {\n name = dec(item)\n val = ''\n } else {\n name = dec(item.slice(0, s))\n val = dec(item.slice(s + 1))\n }\n if (typeof ret[name] === 'string') { // inline'd type check\n ret[name] = [ret[name]]\n }\n\n if (isArray(ret[name])) {\n ret[name].push(val)\n } else {\n ret[name] = val\n }\n }\n }\n return ret // Object\n}\n\nconst _loadTime = (new Date()).getTime().toString()\nlet _i = 1\nexport function getUniqueKey () {\n return _loadTime + (_i++)\n}\n\nexport function getElementById (component, id, type) {\n if (!component) return null\n\n let res\n if (type === 'component') {\n res = component.selectComponent(id)\n res = res ? (res.$component || res) : null\n } else {\n const query = wx.createSelectorQuery().in(component)\n res = query.select(id)\n }\n\n if (res) return res\n\n return null\n}\n\nlet id = 0\nfunction genId () {\n return String(id++)\n}\n\nlet compIdsMapper\ntry {\n compIdsMapper = new Map()\n} catch (error) {\n compIdsMapper = new SimpleMap()\n}\nexport function genCompid (key, isNeedCreate) {\n if (!Current || !Current.current || !Current.current.$scope) return []\n\n const prevId = compIdsMapper.get(key)\n if (isNeedCreate) {\n const id = genId()\n compIdsMapper.set(key, id)\n return [prevId, id]\n } else {\n const id = prevId || genId()\n !prevId && compIdsMapper.set(key, id)\n return [null, id]\n }\n}\n\nlet prefix = 0\nexport function genCompPrefix () {\n return String(prefix++)\n}\n","const data = {}\n\nexport function cacheDataSet (key, val) {\n data[key] = val\n}\n\nexport function cacheDataGet (key, delelteAfterGet) {\n const temp = data[key]\n delelteAfterGet && delete data[key]\n return temp\n}\n\nexport function cacheDataHas (key) {\n return key in data\n}\n","import { updateComponent } from './lifecycle'\nimport { filterProps } from './create-component'\nimport nextTick from './next-tick'\n\nclass Manager {\n map = {}\n observers = {}\n\n set (props = {}, compid, previd) {\n if (!compid) return\n\n if (previd) {\n this.delete(previd)\n }\n\n const { observers } = this\n if (!this.map[compid]) {\n Object.defineProperty(this.map, compid, {\n configurable: true,\n get () {\n return this[`__${compid}`]\n },\n set (props) {\n this[`__${compid}`] = props\n\n const component = observers[compid] && observers[compid].component\n const ComponentClass = observers[compid] && observers[compid].ComponentClass\n if (!component || !ComponentClass || !component.__isReady) return\n\n const extraProps = (component.$scope && component.$scope.data && component.$scope.data.extraProps) || null\n const nextProps = filterProps(ComponentClass.defaultProps, props, component.props, extraProps)\n component.props = nextProps\n nextTick(() => {\n component._unsafeCallUpdate = true\n updateComponent(component)\n component._unsafeCallUpdate = false\n })\n }\n })\n }\n this.map[compid] = props\n }\n\n delete (compid) {\n delete this.map[compid]\n delete this.map[`__${compid}`]\n delete this.observers[compid]\n }\n}\n\nexport default new Manager()\n","import { getCurrentPageUrl } from '@tarojs/utils'\nimport { commitAttachRef, detachAllRef, Current, eventCenter } from '@tarojs/taro'\nimport { isEmptyObject, isFunction, isArray } from './util'\nimport { mountComponent, updateComponent } from './lifecycle'\nimport { cacheDataSet, cacheDataGet, cacheDataHas } from './data-cache'\nimport nextTick from './next-tick'\nimport propsManager from './propsManager'\n\nconst anonymousFnNamePreffix = 'funPrivate'\nconst routerParamsPrivateKey = '__key_'\nconst preloadPrivateKey = '__preload_'\nconst PRELOAD_DATA_KEY = 'preload'\nconst preloadInitedComponent = '$preloadComponent'\nconst pageExtraFns = ['onPullDownRefresh', 'onReachBottom', 'onShareAppMessage', 'onPageScroll', 'onTabItemTap', 'onResize']\n\nfunction bindProperties (weappComponentConf, ComponentClass, isPage) {\n weappComponentConf.properties = {}\n if (isPage) {\n weappComponentConf.properties[routerParamsPrivateKey] = {\n type: null,\n value: null\n }\n weappComponentConf.properties[preloadPrivateKey] = {\n type: null,\n value: null\n }\n const defaultParams = ComponentClass.defaultParams || {}\n for (const key in defaultParams) {\n if (defaultParams.hasOwnProperty(key)) {\n weappComponentConf.properties[key] = {\n type: null,\n value: null\n }\n }\n }\n }\n weappComponentConf.properties.compid = {\n type: null,\n value: null,\n observer (newVal, oldVal) {\n initComponent.apply(this, [ComponentClass, isPage])\n if (oldVal && oldVal !== newVal) {\n const { extraProps } = this.data\n const component = this.$component\n propsManager.observers[newVal] = {\n component,\n ComponentClass: component.constructor\n }\n const nextProps = filterProps(component.constructor.defaultProps, propsManager.map[newVal], component.props, extraProps || null)\n this.$component.props = nextProps\n nextTick(() => {\n this.$component._unsafeCallUpdate = true\n updateComponent(this.$component)\n this.$component._unsafeCallUpdate = false\n })\n }\n }\n }\n weappComponentConf.properties.extraProps = {\n type: null,\n value: null,\n observer () {\n // update Component\n if (!this.$component || !this.$component.__isReady) return\n\n const nextProps = filterProps(ComponentClass.defaultProps, {}, this.$component.props, this.data.extraProps)\n this.$component.props = nextProps\n nextTick(() => {\n this.$component._unsafeCallUpdate = true\n updateComponent(this.$component)\n this.$component._unsafeCallUpdate = false\n })\n }\n }\n}\n\nfunction bindBehaviors (weappComponentConf, ComponentClass) {\n if (ComponentClass.behaviors) {\n weappComponentConf.behaviors = ComponentClass.behaviors\n }\n}\n\nfunction bindStaticOptions (weappComponentConf, ComponentClass) {\n if (ComponentClass.options) {\n weappComponentConf.options = ComponentClass.options\n }\n}\n\nfunction bindMultipleSlots (weappComponentConf, ComponentClass) {\n const multipleSlots = ComponentClass.multipleSlots\n if (!multipleSlots) {\n return\n }\n weappComponentConf.options = {\n ...weappComponentConf.options,\n ...{ multipleSlots }\n }\n}\n\nfunction bindStaticFns (weappComponentConf, ComponentClass) {\n for (const key in ComponentClass) {\n typeof ComponentClass[key] === 'function' && (weappComponentConf[key] = ComponentClass[key])\n }\n // 低版本 IOS 下部分属性不能直接访问\n Object.getOwnPropertyNames(ComponentClass).forEach(key => {\n const excludes = ['arguments', 'caller', 'length', 'name', 'prototype']\n if (excludes.indexOf(key) < 0) {\n typeof ComponentClass[key] === 'function' && (weappComponentConf[key] = ComponentClass[key])\n }\n })\n}\n\nfunction processEvent (eventHandlerName, obj) {\n if (obj[eventHandlerName]) return\n\n obj[eventHandlerName] = function (event) {\n if (event) {\n event.preventDefault = function () {}\n event.stopPropagation = function () {}\n event.currentTarget = event.currentTarget || event.target || {}\n if (event.target) {\n Object.assign(event.target, event.detail)\n }\n Object.assign(event.currentTarget, event.detail)\n }\n\n const scope = this.$component\n if (!scope || !scope[eventHandlerName]) return\n\n let callScope = scope\n const isAnonymousFn = eventHandlerName.indexOf(anonymousFnNamePreffix) > -1\n let realArgs = []\n let detailArgs = []\n let datasetArgs = []\n let isScopeBinded = false\n // 解析从dataset中传过来的参数\n const dataset = event.currentTarget.dataset || {}\n const bindArgs = {}\n const eventType = event.type.toLocaleLowerCase()\n Object.keys(dataset).forEach(key => {\n let keyLower = key.toLocaleLowerCase()\n if (/^e/.test(keyLower)) {\n // 小程序属性里中划线后跟一个下划线会解析成不同的结果\n keyLower = keyLower.replace(/^e/, '')\n if (keyLower.indexOf(eventType) >= 0) {\n const argName = keyLower.replace(eventType, '')\n if (/^(a[a-z]|so)$/.test(argName)) {\n bindArgs[argName] = dataset[key]\n }\n }\n }\n })\n // 如果是通过triggerEvent触发,并且带有参数\n if (event.detail && event.detail.__arguments && event.detail.__arguments.length > 0) {\n detailArgs = event.detail.__arguments\n }\n // 普通的事件(非匿名函数),会直接call\n if (!isAnonymousFn) {\n if ('so' in bindArgs) {\n if (bindArgs['so'] !== 'this') {\n callScope = bindArgs['so']\n }\n isScopeBinded = true\n delete bindArgs['so']\n }\n if (detailArgs.length > 0) {\n !isScopeBinded && detailArgs[0] && (callScope = detailArgs[0])\n detailArgs.shift()\n }\n if (!isEmptyObject(bindArgs)) {\n datasetArgs = Object.keys(bindArgs)\n .sort()\n .map(key => bindArgs[key])\n }\n realArgs = [...datasetArgs, ...detailArgs, event]\n } else {\n // 匿名函数,会将scope作为第一个参数\n let _scope = null\n if ('so' in bindArgs) {\n if (bindArgs['so'] !== 'this') {\n _scope = bindArgs['so']\n }\n isScopeBinded = true\n delete bindArgs['so']\n }\n if (detailArgs.length > 0) {\n !isScopeBinded && detailArgs[0] && (callScope = detailArgs[0])\n detailArgs.shift()\n }\n if (!isEmptyObject(bindArgs)) {\n datasetArgs = Object.keys(bindArgs)\n .sort()\n .map(key => bindArgs[key])\n }\n realArgs = [_scope, ...datasetArgs, ...detailArgs, event]\n }\n return scope[eventHandlerName].apply(callScope, realArgs)\n }\n}\n\nfunction bindEvents (weappComponentConf, events, isPage) {\n weappComponentConf.methods = weappComponentConf.methods || {}\n const target = weappComponentConf.methods\n events.forEach(name => {\n processEvent(name, target)\n })\n}\n\nexport function filterProps (defaultProps = {}, propsFromPropsManager = {}, curAllProps = {}, extraProps) {\n let newProps = Object.assign({}, curAllProps, propsFromPropsManager)\n\n if (!isEmptyObject(defaultProps)) {\n for (const propName in defaultProps) {\n if (newProps[propName] === undefined) {\n newProps[propName] = defaultProps[propName]\n }\n }\n }\n\n if (extraProps) {\n newProps = Object.assign({}, newProps, extraProps)\n }\n\n return newProps\n}\n\nfunction filterParams (data, defaultParams = {}) {\n let res = {}\n for (const paramName in defaultParams) {\n res[paramName] = paramName in data ? data[paramName] : defaultParams[paramName]\n }\n return res\n}\n\nexport function componentTrigger (component, key, args) {\n args = args || []\n\n if (key === 'componentDidMount') {\n if (component['$$refs'] && component['$$refs'].length > 0) {\n let refs = {}\n component['$$refs'].forEach(ref => {\n let target\n if (ref.type === 'component') {\n target = component.$scope.selectComponent(`#${ref.id}`)\n target = target ? (target.$component || target) : null\n } else {\n const query = wx.createSelectorQuery().in(component.$scope)\n target = query.select(`#${ref.id}`)\n }\n commitAttachRef(ref, target, component, refs, true)\n ref.target = target\n })\n component.refs = Object.assign({}, component.refs || {}, refs)\n }\n if (component['$$hasLoopRef']) {\n Current.current = component\n Current.index = 0\n component._disableEffect = true\n component._createData(component.state, component.props, true)\n component._disableEffect = false\n Current.current = null\n }\n }\n\n if (key === 'componentWillUnmount') {\n const compid = component.$scope.data.compid\n if (compid) propsManager.delete(compid)\n }\n\n // eslint-disable-next-line no-useless-call\n component[key] && typeof component[key] === 'function' && component[key].call(component, ...args)\n if (key === 'componentWillMount') {\n component._dirty = false\n component._disable = false\n component.state = component.getState()\n }\n if (key === 'componentWillUnmount') {\n component._dirty = true\n component._disable = true\n component.$router = {\n params: {},\n path: ''\n }\n component._pendingStates = []\n component._pendingCallbacks = []\n // refs\n detachAllRef(component)\n }\n}\n\nfunction initComponent (ComponentClass, isPage) {\n if (this.$component.__isReady) return\n // ready之后才可以setData,\n // ready之前,小程序组件初始化时仍然会触发observer,__isReady为否的时候放弃处理observer\n this.$component.__isReady = true\n // 页面Ready的时候setData更新,此时并未didMount,触发observer但不会触发子组件更新\n // 小程序组件ready,但是数据并没有ready,需要通过updateComponent来初始化数据,setData完成之后才是真正意义上的组件ready\n // 动态组件执行改造函数副本的时,在初始化数据前计算好props\n if (!isPage) {\n const compid = this.data.compid\n if (compid) {\n propsManager.observers[compid] = {\n component: this.$component,\n ComponentClass\n }\n }\n const nextProps = filterProps(ComponentClass.defaultProps, propsManager.map[compid], this.$component.props, this.data.extraProps)\n this.$component.props = nextProps\n } else {\n this.$component.$router.path = getCurrentPageUrl()\n }\n mountComponent(this.$component)\n}\n\nfunction createComponent (ComponentClass, isPage) {\n let initData = {}\n const componentProps = filterProps(ComponentClass.defaultProps)\n const componentInstance = new ComponentClass(componentProps)\n componentInstance._constructor && componentInstance._constructor(componentProps)\n try {\n Current.current = componentInstance\n Current.index = 0\n componentInstance.state = componentInstance._createData() || componentInstance.state\n } catch (err) {\n if (isPage) {\n console.warn(`[Taro warn] 请给页面提供初始 \\`state\\` 以提高初次渲染性能!`)\n } else {\n console.warn(`[Taro warn] 请给组件提供一个 \\`defaultProps\\` 以提高初次渲染性能!`)\n }\n console.warn(err)\n }\n initData = Object.assign({}, initData, componentInstance.props, componentInstance.state)\n\n const weappComponentConf = {\n data: initData,\n created (options = {}) {\n if (isPage && cacheDataHas(preloadInitedComponent)) {\n this.$component = cacheDataGet(preloadInitedComponent, true)\n this.$component.$componentType = 'PAGE'\n } else {\n this.$component = new ComponentClass({}, isPage)\n }\n this.$component._init(this)\n this.$component.render = this.$component._createData\n this.$component.__propTypes = ComponentClass.propTypes\n Object.assign(this.$component.$router.params, options)\n },\n attached () {\n let hasParamsCache\n if (isPage) {\n // params\n let params = {}\n hasParamsCache = cacheDataHas(this.data[routerParamsPrivateKey])\n if (hasParamsCache) {\n params = Object.assign({}, ComponentClass.defaultParams, cacheDataGet(this.data[routerParamsPrivateKey], true))\n } else {\n // 直接启动,非内部跳转\n params = filterParams(this.data, ComponentClass.defaultParams)\n }\n if (cacheDataHas(PRELOAD_DATA_KEY)) {\n const data = cacheDataGet(PRELOAD_DATA_KEY, true)\n this.$component.$router.preload = data\n }\n Object.assign(this.$component.$router.params, params)\n // preload\n if (cacheDataHas(this.data[preloadPrivateKey])) {\n this.$component.$preloadData = cacheDataGet(this.data[preloadPrivateKey], true)\n } else {\n this.$component.$preloadData = null\n }\n }\n if (hasParamsCache || !isPage) {\n initComponent.apply(this, [ComponentClass, isPage])\n }\n },\n ready () {\n if (!isPage && !this.$component.__mounted) {\n this.$component.__mounted = true\n componentTrigger(this.$component, 'componentDidMount')\n }\n },\n detached () {\n const component = this.$component\n componentTrigger(component, 'componentWillUnmount')\n component.hooks.forEach((hook) => {\n if (isFunction(hook.cleanup)) {\n hook.cleanup()\n }\n })\n const events = component.$$renderPropsEvents\n if (isArray(events)) {\n events.forEach(e => eventCenter.off(e))\n }\n }\n }\n if (isPage) {\n weappComponentConf.methods = weappComponentConf.methods || {}\n weappComponentConf.methods['onLoad'] = function (options = {}) {\n if (this.$component.__isReady) return\n Object.assign(this.$component.$router.params, options)\n initComponent.apply(this, [ComponentClass, isPage])\n }\n weappComponentConf.methods['onReady'] = function () {\n this.$component.__mounted = true\n componentTrigger(this.$component, 'componentDidMount')\n }\n weappComponentConf.methods['onShow'] = function () {\n componentTrigger(this.$component, 'componentDidShow')\n }\n weappComponentConf.methods['onHide'] = function () {\n componentTrigger(this.$component, 'componentDidHide')\n }\n pageExtraFns.forEach(fn => {\n if (componentInstance[fn] && typeof componentInstance[fn] === 'function') {\n weappComponentConf.methods[fn] = function () {\n const component = this.$component\n if (component && component[fn] && typeof component[fn] === 'function') {\n // eslint-disable-next-line no-useless-call\n return component[fn].call(component, ...arguments)\n }\n }\n }\n })\n __wxRoute && cacheDataSet(__wxRoute, ComponentClass)\n } else {\n weappComponentConf.pageLifetimes = weappComponentConf.pageLifetimes || {}\n\n weappComponentConf.pageLifetimes['show'] = function () {\n componentTrigger(this.$component, 'componentDidShow')\n }\n\n weappComponentConf.pageLifetimes['hide'] = function () {\n componentTrigger(this.$component, 'componentDidHide')\n }\n\n weappComponentConf.pageLifetimes['resize'] = function () {\n componentTrigger(this.$component, 'onResize')\n }\n }\n bindProperties(weappComponentConf, ComponentClass, isPage)\n bindBehaviors(weappComponentConf, ComponentClass)\n bindStaticFns(weappComponentConf, ComponentClass)\n bindStaticOptions(weappComponentConf, ComponentClass)\n bindMultipleSlots(weappComponentConf, ComponentClass)\n ComponentClass['$$events'] && bindEvents(weappComponentConf, ComponentClass['$$events'], isPage)\n if (ComponentClass['externalClasses'] && ComponentClass['externalClasses'].length) {\n weappComponentConf['externalClasses'] = ComponentClass['externalClasses']\n }\n return weappComponentConf\n}\n\nexport default createComponent\n","import {\n internal_safe_get as safeGet,\n internal_safe_set as safeSet,\n commitAttachRef,\n Current,\n invokeEffects,\n getIsUsingDiff\n} from '@tarojs/taro'\nimport PropTypes from 'prop-types'\nimport { componentTrigger } from './create-component'\nimport { cloneDeep, isEmptyObject, diffObjToPath, isFunction, isUndefined, isArray } from './util'\nimport { enqueueRender } from './render-queue'\n\nconst isDEV = typeof process === 'undefined' ||\n !process.env ||\n process.env.NODE_ENV !== 'production'\n\nfunction hasNewLifecycle (component) {\n const { constructor: { getDerivedStateFromProps }, getSnapshotBeforeUpdate } = component\n return isFunction(getDerivedStateFromProps) || isFunction(getSnapshotBeforeUpdate)\n}\n\nfunction callGetDerivedStateFromProps (component, props, state) {\n const { getDerivedStateFromProps } = component.constructor\n let newState\n if (isFunction(getDerivedStateFromProps)) {\n const partialState = getDerivedStateFromProps(props, state)\n if (!isUndefined(partialState)) {\n newState = Object.assign({}, state, partialState)\n } else {\n console.warn('getDerivedStateFromProps 没有返回任何内容,这个生命周期必须返回 null 或一个新对象。')\n }\n }\n return newState\n}\n\nfunction callGetSnapshotBeforeUpdate (component, props, state) {\n const { getSnapshotBeforeUpdate } = component\n let snapshot\n if (isFunction(getSnapshotBeforeUpdate)) {\n snapshot = getSnapshotBeforeUpdate.call(component, props, state)\n }\n return snapshot\n}\n\nexport function updateComponent (component) {\n const { props, __propTypes } = component\n if (isDEV && __propTypes) {\n let componentName = component.constructor.name\n if (isUndefined(componentName)) {\n const names = component.constructor.toString().match(/^function\\s*([^\\s(]+)/)\n componentName = isArray(names) ? names[0] : 'Component'\n }\n PropTypes.checkPropTypes(__propTypes, props, 'prop', componentName)\n }\n const prevProps = component.prevProps || props\n component.props = prevProps\n if (component.__mounted && component._unsafeCallUpdate === true && !hasNewLifecycle(component) && component.componentWillReceiveProps) {\n component._disable = true\n component.componentWillReceiveProps(props)\n component._disable = false\n }\n let state = component.getState()\n\n const prevState = component.prevState || state\n\n const stateFromProps = callGetDerivedStateFromProps(component, props, state)\n\n if (!isUndefined(stateFromProps)) {\n state = stateFromProps\n }\n\n let skip = false\n if (component.__mounted) {\n if (typeof component.shouldComponentUpdate === 'function' &&\n !component._isForceUpdate &&\n component.shouldComponentUpdate(props, state) === false) {\n skip = true\n } else if (!hasNewLifecycle(component) && isFunction(component.componentWillUpdate)) {\n component.componentWillUpdate(props, state)\n }\n }\n\n component.props = props\n component.state = state\n component._dirty = false\n component._isForceUpdate = false\n if (!skip) {\n doUpdate(component, prevProps, prevState)\n }\n component.prevProps = component.props\n component.prevState = component.state\n}\n\nexport function mountComponent (component) {\n const { props } = component\n // 在willMount前执行构造函数的副本\n if (!component.__componentWillMountTriggered) {\n component._constructor && component._constructor(props)\n }\n\n const newState = callGetDerivedStateFromProps(component, props, component.state)\n\n if (!isUndefined(newState)) {\n component.state = newState\n }\n\n component._dirty = false\n component._disable = false\n component._isForceUpdate = false\n if (!component.__componentWillMountTriggered) {\n component.__componentWillMountTriggered = true\n if (!hasNewLifecycle(component)) {\n componentTrigger(component, 'componentWillMount')\n }\n }\n doUpdate(component, props, component.state)\n component.prevProps = component.props\n component.prevState = component.state\n}\n\nfunction injectContextType (component) {\n const ctxType = component.constructor.contextType\n if (ctxType) {\n const context = ctxType.context\n const emitter = context.emitter\n if (emitter === null) {\n component.context = context._defaultValue\n return\n }\n if (!component._hasContext) {\n component._hasContext = true\n emitter.on(_ => enqueueRender(component))\n }\n component.context = emitter.value\n }\n}\n\nfunction doUpdate (component, prevProps, prevState) {\n const { state, props = {} } = component\n let data = state || {}\n if (component._createData) {\n if (component.__isReady) {\n injectContextType(component)\n Current.current = component\n Current.index = 0\n invokeEffects(component, true)\n }\n data = component._createData(state, props) || data\n if (component.__isReady) {\n Current.current = null\n }\n }\n\n data = Object.assign({}, props, data)\n if (component.$usedState && component.$usedState.length) {\n const _data = {}\n component.$usedState.forEach(key => {\n let val = safeGet(data, key)\n if (typeof val === 'undefined') {\n return\n }\n if (typeof val === 'object') {\n if (isEmptyObject(val)) return safeSet(_data, key, {})\n\n val = cloneDeep(val)\n\n if (!isEmptyObject(val)) safeSet(_data, key, val)\n } else {\n safeSet(_data, key, val)\n }\n })\n data = _data\n }\n data['$taroCompReady'] = true\n\n const dataDiff = getIsUsingDiff() ? diffObjToPath(data, component.$scope.data) : data\n const __mounted = component.__mounted\n let snapshot\n if (__mounted) {\n snapshot = callGetSnapshotBeforeUpdate(component, prevProps, prevState)\n }\n\n // 每次 setData 都独立生成一个 callback 数组\n let cbs = []\n if (component._pendingCallbacks && component._pendingCallbacks.length) {\n cbs = component._pendingCallbacks\n component._pendingCallbacks = []\n }\n\n const cb = function () {\n invokeEffects(component)\n if (__mounted) {\n if (component['$$refs'] && component['$$refs'].length > 0) {\n component['$$refs'].forEach(ref => {\n // 只有 component 类型能做判断。因为 querySelector 每次调用都一定返回 nodeRefs,无法得知 dom 类型的挂载状态。\n if (ref.type !== 'component') return\n\n let target = component.$scope.selectComponent(`#${ref.id}`)\n target = target ? (target.$component || target) : null\n\n const prevRef = ref.target\n if (target !== prevRef) {\n commitAttachRef(ref, target, component, component.refs)\n ref.target = target\n }\n })\n }\n\n if (component['$$hasLoopRef']) {\n Current.current = component\n Current.index = 0\n component._disableEffect = true\n component._createData(component.state, component.props, true)\n component._disableEffect = false\n Current.current = null\n }\n if (isFunction(component.componentDidUpdate)) {\n component.componentDidUpdate(prevProps, prevState, snapshot)\n }\n }\n\n if (cbs.length) {\n let i = cbs.length\n while (--i >= 0) {\n typeof cbs[i] === 'function' && cbs[i].call(component)\n }\n }\n }\n if (Object.keys(dataDiff).length === 0) {\n cb()\n invokeEffects(component)\n } else {\n component.$scope.setData(dataDiff, cb)\n }\n}\n","import nextTick from './next-tick'\nimport { updateComponent } from './lifecycle'\n\nlet items = []\n\nexport function enqueueRender (component, isForceUpdate = false) {\n // tslint:disable-next-line:no-conditional-assignment\n component._isForceUpdate = isForceUpdate\n if (!component._dirty && (component._dirty = true) && items.push(component) === 1) {\n nextTick(() => {\n rerender()\n })\n }\n}\n\nexport function rerender () {\n let p\n const list = items\n items = []\n // tslint:disable-next-line:no-conditional-assignment\n while ((p = list.pop())) {\n if (p._dirty) {\n updateComponent(p, true)\n }\n }\n}\n","import { enqueueRender } from './render-queue'\nimport { updateComponent } from './lifecycle'\nimport { isFunction, genCompPrefix } from './util'\nimport {\n internal_safe_get as safeGet,\n internal_force_update as forceUpdateCallback\n} from '@tarojs/taro'\nimport { cacheDataSet, cacheDataGet } from './data-cache'\n// #组件state对应小程序组件data\n// #私有的__componentProps更新用于触发子组件中对应obsever,生命周期componentWillReceiveProps,componentShouldUpdate在这里处理\n// #父组件传过来的props放到data.__props中供模板使用,这么做的目的是模拟receiveProps生命周期\n// 执行顺序:组件setState -> 组件_createData() -> 对应的小程序组件setData(组件更新)-> 子组件的__componentProps.observer执行\n// -> 触发子组件componentWillReceiveProps,更新子组件props,componentShouldUpdate -> 子组件_createData -> 子组件setData\n\nconst PRELOAD_DATA_KEY = 'preload'\n\nclass BaseComponent {\n // _createData的时候生成,小程序中通过data.__createData访问\n __computed = {}\n // this.props,小程序中通过data.__props访问\n __props = {}\n __isReady = false\n // 会在componentDidMount后置为true\n __mounted = false\n context = {}\n _dirty = true\n _disable = true\n _isForceUpdate = false\n _pendingStates = []\n _pendingCallbacks = []\n $componentType = ''\n $router = {\n params: {},\n path: ''\n }\n\n _afterScheduleEffect = false\n _disableEffect = false\n hooks = []\n effects = []\n layoutEffects = []\n\n constructor (props = {}, isPage) {\n this.state = {}\n this.props = props\n this.$componentType = isPage ? 'PAGE' : 'COMPONENT'\n this.$prefix = genCompPrefix()\n this.isTaroComponent = this.$componentType && this.$router && this._pendingStates\n }\n _constructor (props) {\n this.props = props || {}\n }\n _init (scope) {\n this.$scope = scope\n }\n setState (state, callback) {\n if (state) {\n (this._pendingStates = this._pendingStates || []).push(state)\n }\n if (isFunction(callback)) {\n (this._pendingCallbacks = this._pendingCallbacks || []).push(callback)\n }\n if (!this._disable) {\n enqueueRender(this, callback === forceUpdateCallback)\n }\n }\n\n getState () {\n const { _pendingStates, state, props } = this\n const stateClone = Object.assign({}, state)\n delete stateClone.__data\n if (!_pendingStates.length) {\n return stateClone\n }\n const queue = _pendingStates.concat()\n this._pendingStates.length = 0\n queue.forEach((nextState) => {\n if (isFunction(nextState)) {\n nextState = nextState.call(this, stateClone, props)\n }\n Object.assign(stateClone, nextState)\n })\n return stateClone\n }\n\n forceUpdate (callback) {\n if (isFunction(callback)) {\n (this._pendingCallbacks = this._pendingCallbacks || []).push(callback)\n }\n this._isForceUpdate = true\n updateComponent(this)\n }\n\n $preload (key, value) {\n const preloadData = cacheDataGet(PRELOAD_DATA_KEY) || {}\n if (typeof key === 'object') {\n for (const k in key) {\n preloadData[k] = key[k]\n }\n } else {\n preloadData[key] = value\n }\n cacheDataSet(PRELOAD_DATA_KEY, preloadData)\n }\n\n // 会被匿名函数调用\n __triggerPropsFn (key, args) {\n const keyChain = key.split('.')\n const reduxFnPrefix = '__event_'\n const reduxFnName = reduxFnPrefix + keyChain.shift()\n // redux标识过的方法,直接调用\n if (reduxFnName in this) {\n const scope = args.shift()\n let fn\n if (keyChain.length > 0) {\n fn = safeGet(this[reduxFnName], keyChain.join('.'))\n } else {\n fn = this[reduxFnName]\n }\n fn.apply(scope, args)\n } else {\n // 普通的\n const keyLower = key.toLocaleLowerCase()\n const detail = {\n __isCustomEvt: true,\n __arguments: args\n }\n if (args.length > 0) {\n detail.value = args.slice(1)\n }\n this.$scope.triggerEvent(keyLower, detail)\n }\n }\n}\n\nexport default BaseComponent\n","import { shallowEqual } from '@tarojs/utils'\n\nimport Component from './component'\n\nclass PureComponent extends Component {\n isPureComponent = true\n\n shouldComponentUpdate (nextProps, nextState) {\n return !shallowEqual(this.props, nextProps) || !shallowEqual(this.state, nextState)\n }\n}\n\nexport default PureComponent\n","function createApp (AppClass) {\n const app = new AppClass()\n const weappAppConf = {\n onLaunch (options) {\n app.$app = this\n app.$app.$router = app.$router = {\n params: options\n }\n if (app.componentWillMount) {\n app.componentWillMount()\n }\n if (app.componentDidMount) {\n app.componentDidMount()\n }\n },\n\n onShow (options) {\n Object.assign(app.$router.params, options)\n if (app.componentDidShow) {\n app.componentDidShow()\n }\n },\n\n onHide () {\n if (app.componentDidHide) {\n app.componentDidHide()\n }\n },\n\n onError (err) {\n if (app.componentDidCatchError) {\n app.componentDidCatchError(err)\n }\n },\n\n onPageNotFound (obj) {\n if (app.componentDidNotFound) {\n app.componentDidNotFound(obj)\n }\n }\n }\n return Object.assign(weappAppConf, app)\n}\n\nexport default createApp\n","import {\n onAndSyncApis,\n noPromiseApis,\n otherApis,\n initPxTransform,\n Link\n} from '@tarojs/taro'\nimport { cacheDataSet, cacheDataGet } from './data-cache'\nimport { queryToJson, getUniqueKey } from './util'\nconst RequestQueue = {\n MAX_REQUEST: 10,\n queue: [],\n pendingQueue: [],\n\n request (options) {\n this.queue.push(options)\n return this.run()\n },\n\n run () {\n if (!this.queue.length) return\n\n while (this.pendingQueue.length < this.MAX_REQUEST) {\n const options = this.queue.shift()\n let successFn = options.success\n let failFn = options.fail\n options.success = (...args) => {\n this.pendingQueue = this.pendingQueue.filter(item => item !== options)\n this.run()\n successFn && successFn.apply(options, args)\n }\n options.fail = (...args) => {\n this.pendingQueue = this.pendingQueue.filter(item => item !== options)\n this.run()\n failFn && failFn.apply(options, args)\n }\n this.pendingQueue.push(options)\n return wx.request(options)\n }\n }\n}\n\nfunction taroInterceptor (chain) {\n return request(chain.requestParams)\n}\n\nconst link = new Link(taroInterceptor)\n\nfunction request (options) {\n options = options || {}\n if (typeof options === 'string') {\n options = {\n url: options\n }\n }\n const originSuccess = options['success']\n const originFail = options['fail']\n const originComplete = options['complete']\n let requestTask\n const p = new Promise((resolve, reject) => {\n options['success'] = res => {\n originSuccess && originSuccess(res)\n resolve(res)\n }\n options['fail'] = res => {\n originFail && originFail(res)\n reject(res)\n }\n\n options['complete'] = res => {\n originComplete && originComplete(res)\n }\n\n requestTask = RequestQueue.request(options)\n })\n p.abort = (cb) => {\n cb && cb()\n if (requestTask) {\n requestTask.abort()\n }\n return p\n }\n p.onHeadersReceived = function (cb) {\n cb && cb();\n if (requestTask) {\n requestTask.onHeadersReceived();\n }\n return p;\n };\n p.offHeadersReceived = function (cb) {\n cb && cb();\n if (requestTask) {\n requestTask.offHeadersReceived();\n }\n return p;\n };\n return p\n}\n\nfunction processApis (taro) {\n const weApis = Object.assign({ }, onAndSyncApis, noPromiseApis, otherApis)\n const useDataCacheApis = {\n 'navigateTo': true,\n 'redirectTo': true,\n 'reLaunch': true\n }\n const routerParamsPrivateKey = '__key_'\n const preloadPrivateKey = '__preload_'\n const preloadInitedComponent = '$preloadComponent'\n Object.keys(weApis).forEach(key => {\n if (!(key in wx)) {\n taro[key] = () => {\n console.warn(`微信小程序暂不支持 ${key}`)\n }\n return\n }\n\n if (!onAndSyncApis[key] && !noPromiseApis[key]) {\n taro[key] = (options, ...args) => {\n options = options || {}\n let task = null\n let obj = Object.assign({}, options)\n if (typeof options === 'string') {\n if (args.length) {\n return wx[key](options, ...args)\n }\n return wx[key](options)\n }\n\n if (key === 'navigateTo' || key === 'redirectTo') {\n let url = obj['url'] ? obj['url'].replace(/^\\//, '') : ''\n if (url.indexOf('?') > -1) url = url.split('?')[0]\n\n const Component = cacheDataGet(url)\n if (Component) {\n const component = new Component()\n if (component.componentWillPreload) {\n const cacheKey = getUniqueKey()\n const MarkIndex = obj.url.indexOf('?')\n const hasMark = MarkIndex > -1\n const urlQueryStr = hasMark ? obj.url.substring(MarkIndex + 1, obj.url.length) : ''\n const params = queryToJson(urlQueryStr)\n obj.url += (hasMark ? '&' : '?') + `${preloadPrivateKey}=${cacheKey}`\n cacheDataSet(cacheKey, component.componentWillPreload(params))\n cacheDataSet(preloadInitedComponent, component)\n }\n }\n }\n\n if (useDataCacheApis[key]) {\n const url = obj['url'] = obj['url'] || ''\n const MarkIndex = url.indexOf('?')\n const hasMark = MarkIndex > -1\n const urlQueryStr = hasMark ? url.substring(MarkIndex + 1, url.length) : ''\n const params = queryToJson(urlQueryStr)\n const cacheKey = getUniqueKey()\n obj.url += (hasMark ? '&' : '?') + `${routerParamsPrivateKey}=${cacheKey}`\n cacheDataSet(cacheKey, params)\n }\n\n const p = new Promise((resolve, reject) => {\n ['fail', 'success', 'complete'].forEach((k) => {\n obj[k] = (res) => {\n options[k] && options[k](res)\n if (k === 'success') {\n if (key === 'connectSocket') {\n resolve(\n Promise.resolve().then(() => Object.assign(task, res))\n )\n } else {\n resolve(res)\n }\n } else if (k === 'fail') {\n reject(res)\n }\n }\n })\n if (args.length) {\n task = wx[key](obj, ...args)\n } else {\n task = wx[key](obj)\n }\n })\n if (key === 'uploadFile' || key === 'downloadFile') {\n p.progress = cb => {\n if (task) {\n task.onProgressUpdate(cb)\n }\n return p\n }\n p.headersReceived = cb => {\n if (task) {\n task.onHeadersReceived(cb)\n }\n return p\n }\n p.abort = cb => {\n cb && cb()\n if (task) {\n task.abort()\n }\n return p\n }\n }\n return p\n }\n } else {\n taro[key] = (...args) => {\n const argsLen = args.length\n const newArgs = args.concat()\n const lastArg = newArgs[argsLen - 1]\n if (lastArg && lastArg.isTaroComponent && lastArg.$scope) {\n newArgs.splice(argsLen - 1, 1, lastArg.$scope)\n }\n return wx[key].apply(wx, newArgs)\n }\n }\n })\n}\n\nfunction pxTransform (size) {\n const {\n designWidth = 750,\n deviceRatio = {\n '640': 2.34 / 2,\n '750': 1,\n '828': 1.81 / 2\n }\n } = this.config || {}\n if (!(designWidth in deviceRatio)) {\n throw new Error(`deviceRatio 配置中不存在 ${designWidth} 的设置!`)\n }\n return parseInt(size, 10) / deviceRatio[designWidth] + 'rpx'\n}\n\nfunction canIUseWebp () {\n const { platform } = wx.getSystemInfoSync()\n const platformLower = platform.toLowerCase()\n if (platformLower === 'android' || platformLower === 'devtools') {\n return true\n }\n return false\n}\n\nfunction wxCloud (taro) {\n const wxC = wx.cloud || {}\n const wxcloud = {}\n const apiList = [\n 'init',\n 'database',\n 'uploadFile',\n 'downloadFile',\n 'getTempFileURL',\n 'deleteFile',\n 'callFunction',\n 'CloudID'\n ]\n apiList.forEach(v => {\n wxcloud[v] = wxC[v]\n })\n taro.cloud = wxcloud\n}\n\nfunction wxEnvObj (taro) {\n const wxEnv = wx.env || {}\n const taroEnv = {}\n const envList = ['USER_DATA_PATH']\n envList.forEach(key => taroEnv[key] = wxEnv[key])\n taro.env = taroEnv\n}\n\nexport default function initNativeApi (taro) {\n processApis(taro)\n taro.request = link.request.bind(link)\n taro.addInterceptor = link.addInterceptor.bind(link)\n taro.cleanInterceptors = link.cleanInterceptors.bind(link)\n taro.getCurrentPages = getCurrentPages\n taro.getApp = getApp\n taro.requirePlugin = requirePlugin\n taro.initPxTransform = initPxTransform.bind(taro)\n taro.pxTransform = pxTransform.bind(taro)\n taro.canIUseWebp = canIUseWebp\n wxCloud(taro)\n wxEnvObj(taro)\n}\n","/* eslint-disable camelcase */\nimport {\n getEnv,\n Events,\n eventCenter,\n ENV_TYPE,\n createRef,\n render,\n internal_safe_get,\n internal_safe_set,\n internal_inline_style,\n internal_get_original,\n interceptors,\n RefsArray,\n handleLoopRef,\n useEffect,\n useLayoutEffect,\n useReducer,\n useState,\n useDidShow,\n useDidHide,\n usePullDownRefresh,\n useReachBottom,\n usePageScroll,\n useResize,\n useShareAppMessage,\n useTabItemTap,\n useRouter,\n useScope,\n useRef,\n useCallback,\n useMemo,\n useImperativeHandle,\n useContext,\n createContext,\n memo,\n setIsUsingDiff\n} from '@tarojs/taro'\nimport { shallowEqual } from '@tarojs/utils'\n\nimport Component from './component'\nimport PureComponent from './pure-component'\nimport createApp from './create-app'\nimport createComponent from './create-component'\nimport initNativeApi from './native-api'\nimport propsManager from './propsManager'\nimport { getElementById, genCompid } from './util'\n\nexport const Taro = {\n Component,\n PureComponent,\n createApp,\n initNativeApi,\n Events,\n eventCenter,\n getEnv,\n createRef,\n render,\n ENV_TYPE,\n internal_safe_get,\n internal_safe_set,\n internal_inline_style,\n createComponent,\n internal_get_original,\n handleLoopRef: handleLoopRef(getElementById),\n propsManager,\n interceptors,\n RefsArray,\n genCompid,\n useEffect,\n useLayoutEffect,\n useReducer,\n useState,\n useDidShow,\n useDidHide,\n usePullDownRefresh,\n useReachBottom,\n usePageScroll,\n useResize,\n useShareAppMessage,\n useTabItemTap,\n useRouter,\n useScope,\n useRef,\n useCallback,\n useMemo,\n useImperativeHandle,\n useContext,\n createContext,\n memo,\n shallowEqual,\n setIsUsingDiff\n}\n\nexport default Taro\n\ninitNativeApi(Taro)\n"],"names":["objectIs","Object","is","x","y","shallowEqual","obj1","obj2","obj1Keys","keys","obj2Keys","length","i","obj1KeyItem","hasOwnProperty","SimpleMap","cache","size","k","v","len","push","item","splice","pop","addLeadingSlash","path","charAt","getCurrentPageUrl","pages","getCurrentPages","currentPage","route","__route__","nextTick","fn","args","bind","timerFunc","wx","setTimeout","b","Symbol","c","d","e","f","g","h","l","m","n","p","q","r","t","w","z","a","u","$$typeof","type","A","process","env","NODE_ENV","hasSymbol","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_PROVIDER_TYPE","REACT_CONTEXT_TYPE","REACT_ASYNC_MODE_TYPE","REACT_CONCURRENT_MODE_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_BLOCK_TYPE","REACT_FUNDAMENTAL_TYPE","REACT_RESPONDER_TYPE","REACT_SCOPE_TYPE","isValidElementType","typeOf","object","$$typeofType","undefined","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","ForwardRef","Fragment","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","hasWarnedAboutDeprecatedIsAsyncMode","isAsyncMode","console","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","exports","module","require$$0","require$$1","getOwnPropertySymbols","prototype","propIsEnumerable","propertyIsEnumerable","toObject","val","TypeError","shouldUseNative","assign","test1","String","getOwnPropertyNames","test2","fromCharCode","order2","map","join","test3","split","forEach","letter","err","target","source","from","to","symbols","s","arguments","key","call","ReactPropTypesSecret","printWarning","loggedTypeFailures","has","Function","text","message","error","Error","checkPropTypes","typeSpecs","values","location","componentName","getStack","typeSpecName","name","ex","stack","resetWarningCache","emptyFunctionThatReturnsNull","isValidElement","throwOnDirectAccess","ITERATOR_SYMBOL","iterator","FAUX_ITERATOR_SYMBOL","getIteratorFn","maybeIterable","iteratorFn","ANONYMOUS","ReactPropTypes","array","createPrimitiveTypeChecker","bool","func","number","string","symbol","any","createAnyTypeChecker","arrayOf","createArrayOfTypeChecker","element","createElementTypeChecker","elementType","createElementTypeTypeChecker","instanceOf","createInstanceTypeChecker","node","createNodeChecker","objectOf","createObjectOfTypeChecker","oneOf","createEnumTypeChecker","oneOfType","createUnionTypeChecker","shape","createShapeTypeChecker","exact","createStrictShapeTypeChecker","PropTypeError","createChainableTypeChecker","validate","manualPropTypeCallCache","manualPropTypeWarningCount","checkType","isRequired","props","propName","propFullName","secret","cacheKey","chainedCheckType","expectedType","propValue","propType","getPropType","preciseType","getPreciseType","typeChecker","Array","isArray","ReactIs","expectedClass","expectedClassName","actualClassName","getClassName","expectedValues","valuesString","JSON","stringify","replacer","value","arrayOfTypeCheckers","checker","getPostfixForTypeWarning","isNode","shapeTypes","allKeys","every","step","entries","next","done","entry","isSymbol","RegExp","Date","constructor","PropTypes","emptyFunction","emptyFunctionWithReset","shim","getShim","require$$2","freeGlobal","global","freeSelf","self","root","objectProto","nativeObjectToString","toString","symToStringTag","toStringTag","getRawTag","isOwn","tag","unmasked","result","objectToString","nullTag","undefinedTag","baseGetTag","overArg","transform","arg","getPrototype","getPrototypeOf","isObjectLike","objectTag","funcProto","funcToString","objectCtorString","isPlainObject","proto","Ctor","isEmptyObject","obj","isUndefined","o","isFunction","cloneDeep","newObj","ret","keyList","hasProp","diffArrToPath","res","keyPrev","toItem","fromItem","targetKey","arrTo","arrFrom","shouldDiffObject","some","diffObjToPath","test","queryToJson","str","dec","decodeURIComponent","qp","indexOf","slice","_loadTime","getTime","_i","getUniqueKey","getElementById","component","id","selectComponent","$component","query","createSelectorQuery","select","genId","compIdsMapper","Map","genCompid","isNeedCreate","Current","current","$scope","prevId","get","set","prefix","genCompPrefix","data","cacheDataSet","cacheDataGet","delelteAfterGet","temp","cacheDataHas","Manager","compid","previd","observers","defineProperty","configurable","ComponentClass","__isReady","extraProps","nextProps","filterProps","defaultProps","_unsafeCallUpdate","updateComponent","anonymousFnNamePreffix","routerParamsPrivateKey","preloadPrivateKey","PRELOAD_DATA_KEY","preloadInitedComponent","pageExtraFns","bindProperties","weappComponentConf","isPage","properties","defaultParams","observer","newVal","oldVal","initComponent","apply","propsManager","bindBehaviors","behaviors","bindStaticOptions","options","bindMultipleSlots","multipleSlots","bindStaticFns","excludes","processEvent","eventHandlerName","event","preventDefault","stopPropagation","currentTarget","detail","scope","callScope","isAnonymousFn","realArgs","detailArgs","datasetArgs","isScopeBinded","dataset","bindArgs","eventType","toLocaleLowerCase","keyLower","replace","argName","__arguments","shift","sort","_scope","bindEvents","events","methods","propsFromPropsManager","curAllProps","newProps","filterParams","paramName","componentTrigger","refs","ref","commitAttachRef","index","_disableEffect","_createData","state","_dirty","_disable","getState","$router","params","_pendingStates","_pendingCallbacks","detachAllRef","mountComponent","createComponent","initData","componentProps","componentInstance","_constructor","warn","created","$componentType","_init","render","__propTypes","propTypes","attached","hasParamsCache","preload","$preloadData","ready","__mounted","detached","hooks","hook","cleanup","$$renderPropsEvents","eventCenter","off","__wxRoute","pageLifetimes","isDEV","hasNewLifecycle","getDerivedStateFromProps","getSnapshotBeforeUpdate","callGetDerivedStateFromProps","newState","partialState","callGetSnapshotBeforeUpdate","snapshot","names","match","prevProps","componentWillReceiveProps","prevState","stateFromProps","skip","shouldComponentUpdate","_isForceUpdate","componentWillUpdate","doUpdate","__componentWillMountTriggered","injectContextType","ctxType","contextType","context","emitter","_defaultValue","_hasContext","on","_","enqueueRender","invokeEffects","$usedState","_data","safeGet","safeSet","dataDiff","getIsUsingDiff","cbs","cb","prevRef","componentDidUpdate","setData","items","isForceUpdate","rerender","list","BaseComponent","$prefix","isTaroComponent","callback","forceUpdateCallback","stateClone","__data","queue","concat","nextState","preloadData","keyChain","reduxFnPrefix","reduxFnName","__isCustomEvt","triggerEvent","PureComponent","Component","createApp","AppClass","app","weappAppConf","onLaunch","$app","componentWillMount","componentDidMount","onShow","componentDidShow","onHide","componentDidHide","onError","componentDidCatchError","onPageNotFound","componentDidNotFound","RequestQueue","MAX_REQUEST","pendingQueue","request","run","successFn","success","failFn","fail","filter","taroInterceptor","chain","requestParams","link","Link","url","originSuccess","originFail","originComplete","requestTask","Promise","resolve","reject","abort","onHeadersReceived","offHeadersReceived","processApis","taro","weApis","onAndSyncApis","noPromiseApis","otherApis","useDataCacheApis","task","componentWillPreload","MarkIndex","hasMark","urlQueryStr","substring","then","progress","onProgressUpdate","headersReceived","argsLen","newArgs","lastArg","pxTransform","config","designWidth","deviceRatio","parseInt","canIUseWebp","getSystemInfoSync","platform","platformLower","toLowerCase","wxCloud","wxC","cloud","wxcloud","apiList","wxEnvObj","wxEnv","taroEnv","envList","initNativeApi","addInterceptor","cleanInterceptors","getApp","requirePlugin","initPxTransform","Taro","Events","getEnv","createRef","ENV_TYPE","internal_safe_get","internal_safe_set","internal_inline_style","internal_get_original","handleLoopRef","interceptors","RefsArray","useEffect","useLayoutEffect","useReducer","useState","useDidShow","useDidHide","usePullDownRefresh","useReachBottom","usePageScroll","useResize","useShareAppMessage","useTabItemTap","useRouter","useScope","useRef","useCallback","useMemo","useImperativeHandle","useContext","createContext","memo","setIsUsingDiff"],"mappings":"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"}
\No newline at end of file