react-rails 2.6.0 → 2.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/README.md +16 -3
- data/lib/assets/javascripts/react_ujs.js +24 -7
- data/lib/assets/react-source/development/react-server.js +937 -275
- data/lib/assets/react-source/development/react.js +19459 -14928
- data/lib/assets/react-source/production/react-server.js +4 -4
- data/lib/assets/react-source/production/react.js +8 -8
- data/lib/react/jsx/sprockets_strategy.rb +1 -1
- data/lib/react/rails/version.rb +1 -1
- metadata +5 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ca305d1d6e644b9a6626812de984d9f7df96d230c6d7544906228e5d266a008
|
4
|
+
data.tar.gz: 0adaef4fa3452878dcb2d113f7e383333c297dd4fb245ce669fd0616c2bf4060
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d0584ef2799b453aa22f965594dde71dc3f4895ca0747108bd96b99494df68c2603b27f7146a93aed9c8ef02f632142d408c457beb4eaf7932a714f2ee6ab75
|
7
|
+
data.tar.gz: 400040ce79b9f881197e5bc9f60378427972d3e75804e8683f226eefe8e0af76e71737c236796daf27d977ebfa81d528047b7e5949744f5371e74b118c3c2977
|
data/CHANGELOG.md
CHANGED
@@ -8,6 +8,26 @@
|
|
8
8
|
|
9
9
|
#### Bug Fixes
|
10
10
|
|
11
|
+
## 2.6.1
|
12
|
+
|
13
|
+
#### Breaking Changes
|
14
|
+
|
15
|
+
#### New Features
|
16
|
+
|
17
|
+
- React 16.9.0
|
18
|
+
- Sprockets users get React_UJS 2.6.1
|
19
|
+
|
20
|
+
#### Deprecation
|
21
|
+
|
22
|
+
- Removed tests for Rails 3, 4, 5.0
|
23
|
+
- Removed tests for Sprockets 2
|
24
|
+
- Removed tests for Webpacker 1.1, 2
|
25
|
+
|
26
|
+
#### Bug Fixes
|
27
|
+
|
28
|
+
- React_UJS 2.6.1 still complies with ES5 #1027 #1026 #1016
|
29
|
+
- Support RubyGems pattern for Alpha releases when detecting sprockets version #1047
|
30
|
+
|
11
31
|
## 2.6.0
|
12
32
|
|
13
33
|
#### Breaking Changes
|
@@ -15,6 +35,7 @@
|
|
15
35
|
#### New Features
|
16
36
|
|
17
37
|
- Typescript component generator #990
|
38
|
+
- Enhanced Turbolinks Support #978 #962
|
18
39
|
|
19
40
|
#### Deprecation
|
20
41
|
|
data/README.md
CHANGED
@@ -74,6 +74,17 @@ gem 'react-rails'
|
|
74
74
|
```
|
75
75
|
|
76
76
|
##### 3) Now run the installers:
|
77
|
+
|
78
|
+
###### Rails 6.x:
|
79
|
+
```
|
80
|
+
$ bundle install
|
81
|
+
$ rails webpacker:install
|
82
|
+
$ rails webpacker:install:react
|
83
|
+
$ rails generate react:install
|
84
|
+
```
|
85
|
+
Note: For Rails 6, You don't need to add `javascript_pack_tag` as in Step 4. Since its already added by default.
|
86
|
+
|
87
|
+
###### Rails 5.x:
|
77
88
|
```
|
78
89
|
$ bundle install
|
79
90
|
$ rails webpacker:install # OR (on rails version < 5.0) rake webpacker:install
|
@@ -658,7 +669,7 @@ yarn install
|
|
658
669
|
### Undefined Set
|
659
670
|
```
|
660
671
|
ExecJS::ProgramError (identifier 'Set' undefined):
|
661
|
-
|
672
|
+
|
662
673
|
(execjs):1
|
663
674
|
```
|
664
675
|
If you see any variation of this issue, see [Using TheRubyRacer](#using-therubyracer)
|
@@ -670,9 +681,11 @@ TheRubyRacer [hasn't updated LibV8](https://github.com/cowboyd/therubyracer/blob
|
|
670
681
|
LibV8 itself is already [beyond version 7](https://github.com/cowboyd/libv8/releases/tag/v7.3.492.27.1) therefore many serverside issues are caused by old JS engines and fixed by using an up to date one such as [MiniRacer](https://github.com/discourse/mini_racer) or [TheRubyRhino](https://github.com/cowboyd/therubyrhino) on JRuby.
|
671
682
|
|
672
683
|
### HMR
|
673
|
-
|
684
|
+
Hot Module Replacement is [possible with this gem](https://stackoverflow.com/a/54846330/193785) as it does just pass through to Webpacker. Please open an issue to let us know tips and tricks for it to add to the wiki.
|
685
|
+
|
686
|
+
Sample repo that shows HMR working with `react-rails`: [https://github.com/edelgado/react-rails-hmr](https://github.com/edelgado/react-rails-hmr)
|
674
687
|
|
675
|
-
One
|
688
|
+
One caveat is that currently you [cannot Server-Side Render along with HMR](https://github.com/reactjs/react-rails/issues/925#issuecomment-415469572).
|
676
689
|
|
677
690
|
## Related Projects
|
678
691
|
|
@@ -236,9 +236,16 @@ var ReactRailsUJS = {
|
|
236
236
|
// This attribute holds which method to use between: ReactDOM.hydrate, ReactDOM.render
|
237
237
|
RENDER_ATTR: 'data-hydrate',
|
238
238
|
|
239
|
+
// A unique identifier to identify a node
|
240
|
+
CACHE_ID_ATTR: "data-react-cache-id",
|
241
|
+
|
242
|
+
TURBOLINKS_PERMANENT_ATTR: "data-turbolinks-permanent",
|
243
|
+
|
239
244
|
// If jQuery is detected, save a reference to it for event handlers
|
240
245
|
jQuery: (typeof window !== 'undefined') && (typeof window.jQuery !== 'undefined') && window.jQuery,
|
241
246
|
|
247
|
+
components: {},
|
248
|
+
|
242
249
|
// helper method for the mount and unmount methods to find the
|
243
250
|
// `data-react-class` DOM elements
|
244
251
|
findDOMNodes: function(searchSelector) {
|
@@ -304,6 +311,8 @@ var ReactRailsUJS = {
|
|
304
311
|
var propsJson = node.getAttribute(ujs.PROPS_ATTR);
|
305
312
|
var props = propsJson && JSON.parse(propsJson);
|
306
313
|
var hydrate = node.getAttribute(ujs.RENDER_ATTR);
|
314
|
+
var cacheId = node.getAttribute(ujs.CACHE_ID_ATTR);
|
315
|
+
var turbolinksPermanent = node.hasAttribute(ujs.TURBOLINKS_PERMANENT_ATTR);
|
307
316
|
|
308
317
|
if (!constructor) {
|
309
318
|
var message = "Cannot find component: '" + className + "'"
|
@@ -312,13 +321,21 @@ var ReactRailsUJS = {
|
|
312
321
|
}
|
313
322
|
throw new Error(message + ". Make sure your component is available to render.")
|
314
323
|
} else {
|
324
|
+
var component = this.components[cacheId];
|
325
|
+
if(component === undefined) {
|
326
|
+
component = React.createElement(constructor, props);
|
327
|
+
if(turbolinksPermanent) {
|
328
|
+
this.components[cacheId] = component;
|
329
|
+
}
|
330
|
+
}
|
331
|
+
|
315
332
|
if (hydrate && typeof ReactDOM.hydrate === "function") {
|
316
|
-
ReactDOM.hydrate(
|
333
|
+
component = ReactDOM.hydrate(component, node);
|
317
334
|
} else {
|
318
|
-
ReactDOM.render(
|
335
|
+
component = ReactDOM.render(component, node);
|
319
336
|
}
|
320
337
|
}
|
321
|
-
}
|
338
|
+
}
|
322
339
|
},
|
323
340
|
|
324
341
|
// Within `searchSelector`, find nodes which have React components
|
@@ -422,13 +439,13 @@ module.exports = {
|
|
422
439
|
module.exports = {
|
423
440
|
// Turbolinks 5+ got rid of named events (?!)
|
424
441
|
setup: function(ujs) {
|
425
|
-
|
426
|
-
ujs.handleEvent('turbolinks:before-render', ujs.handleUnmount)
|
442
|
+
ujs.handleEvent('turbolinks:load', ujs.handleMount);
|
443
|
+
ujs.handleEvent('turbolinks:before-render', ujs.handleUnmount);
|
427
444
|
},
|
428
445
|
|
429
446
|
teardown: function(ujs) {
|
430
|
-
|
431
|
-
ujs.removeEvent('turbolinks:before-render', ujs.handleUnmount)
|
447
|
+
ujs.removeEvent('turbolinks:load', ujs.handleMount);
|
448
|
+
ujs.removeEvent('turbolinks:before-render', ujs.handleUnmount);
|
432
449
|
},
|
433
450
|
}
|
434
451
|
|
@@ -264,7 +264,7 @@
|
|
264
264
|
/* 3 */
|
265
265
|
/***/ (function(module, exports, __webpack_require__) {
|
266
266
|
|
267
|
-
/** @license React v16.
|
267
|
+
/** @license React v16.9.0
|
268
268
|
* react.production.min.js
|
269
269
|
*
|
270
270
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
@@ -273,22 +273,22 @@
|
|
273
273
|
* LICENSE file in the root directory of this source tree.
|
274
274
|
*/
|
275
275
|
|
276
|
-
'use strict';var
|
277
|
-
60115,
|
278
|
-
function
|
279
|
-
function
|
280
|
-
|
281
|
-
function M(a,b,d){var c=void 0,e={},g=null,
|
276
|
+
'use strict';var h=__webpack_require__(4),n="function"===typeof Symbol&&Symbol.for,p=n?Symbol.for("react.element"):60103,q=n?Symbol.for("react.portal"):60106,r=n?Symbol.for("react.fragment"):60107,t=n?Symbol.for("react.strict_mode"):60108,u=n?Symbol.for("react.profiler"):60114,v=n?Symbol.for("react.provider"):60109,w=n?Symbol.for("react.context"):60110,x=n?Symbol.for("react.forward_ref"):60112,y=n?Symbol.for("react.suspense"):60113,aa=n?Symbol.for("react.suspense_list"):60120,ba=n?Symbol.for("react.memo"):
|
277
|
+
60115,ca=n?Symbol.for("react.lazy"):60116;n&&Symbol.for("react.fundamental");n&&Symbol.for("react.responder");var z="function"===typeof Symbol&&Symbol.iterator;
|
278
|
+
function A(a){for(var b=a.message,d="https://reactjs.org/docs/error-decoder.html?invariant="+b,c=1;c<arguments.length;c++)d+="&args[]="+encodeURIComponent(arguments[c]);a.message="Minified React error #"+b+"; visit "+d+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings. ";return a}var B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C={};
|
279
|
+
function D(a,b,d){this.props=a;this.context=b;this.refs=C;this.updater=d||B}D.prototype.isReactComponent={};D.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw A(Error(85));this.updater.enqueueSetState(this,a,b,"setState")};D.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate")};function E(){}E.prototype=D.prototype;function F(a,b,d){this.props=a;this.context=b;this.refs=C;this.updater=d||B}var G=F.prototype=new E;
|
280
|
+
G.constructor=F;h(G,D.prototype);G.isPureReactComponent=!0;var H={current:null},I={suspense:null},J={current:null},K=Object.prototype.hasOwnProperty,L={key:!0,ref:!0,__self:!0,__source:!0};
|
281
|
+
function M(a,b,d){var c=void 0,e={},g=null,k=null;if(null!=b)for(c in void 0!==b.ref&&(k=b.ref),void 0!==b.key&&(g=""+b.key),b)K.call(b,c)&&!L.hasOwnProperty(c)&&(e[c]=b[c]);var f=arguments.length-2;if(1===f)e.children=d;else if(1<f){for(var l=Array(f),m=0;m<f;m++)l[m]=arguments[m+2];e.children=l}if(a&&a.defaultProps)for(c in f=a.defaultProps,f)void 0===e[c]&&(e[c]=f[c]);return{$$typeof:p,type:a,key:g,ref:k,props:e,_owner:J.current}}
|
282
282
|
function da(a,b){return{$$typeof:p,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function N(a){return"object"===typeof a&&null!==a&&a.$$typeof===p}function escape(a){var b={"=":"=0",":":"=2"};return"$"+(""+a).replace(/[=:]/g,function(a){return b[a]})}var O=/\/+/g,P=[];function Q(a,b,d,c){if(P.length){var e=P.pop();e.result=a;e.keyPrefix=b;e.func=d;e.context=c;e.count=0;return e}return{result:a,keyPrefix:b,func:d,context:c,count:0}}
|
283
283
|
function R(a){a.result=null;a.keyPrefix=null;a.func=null;a.context=null;a.count=0;10>P.length&&P.push(a)}
|
284
|
-
function S(a,b,d,c){var e=typeof a;if("undefined"===e||"boolean"===e)a=null;var g=!1;if(null===a)g=!0;else switch(e){case "string":case "number":g=!0;break;case "object":switch(a.$$typeof){case p:case q:g=!0}}if(g)return d(c,a,""===b?"."+T(a,0):b),1;g=0;b=""===b?".":b+":";if(Array.isArray(a))for(var
|
285
|
-
0;!(e=a.next()).done;)e=e.value,f=b+T(e,
|
286
|
-
function fa(a,b,d){var c=a.result,e=a.keyPrefix;a=a.func.call(a.context,b,a.count++);Array.isArray(a)?V(a,c,d,function(a){return a}):null!=a&&(N(a)&&(a=da(a,e+(!a.key||b&&b.key===a.key?"":(""+a.key).replace(O,"$&/")+"/")+d)),c.push(a))}function V(a,b,d,c,e){var g="";null!=d&&(g=(""+d).replace(O,"$&/")+"/");b=Q(b,g,c,e);U(a,fa,b);R(b)}function W(){var a=
|
287
|
-
var X={Children:{map:function(a,b,d){if(null==a)return a;var c=[];V(a,c,null,b,d);return c},forEach:function(a,b,d){if(null==a)return a;b=Q(null,null,b,d);U(a,ea,b);R(b)},count:function(a){return U(a,function(){return null},null)},toArray:function(a){var b=[];V(a,b,null,function(a){return a});return b},only:function(a){N(a)
|
288
|
-
_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:v,_context:a};return a.Consumer=a},forwardRef:function(a){return{$$typeof:
|
289
|
-
b,d){return W().useImperativeHandle(a,b,d)},useDebugValue:function(){},useLayoutEffect:function(a,b){return W().useLayoutEffect(a,b)},useMemo:function(a,b){return W().useMemo(a,b)},useReducer:function(a,b,d){return W().useReducer(a,b,d)},useRef:function(a){return W().useRef(a)},useState:function(a){return W().useState(a)},Fragment:r,StrictMode:t,Suspense:
|
290
|
-
b){void 0!==b.ref&&(
|
291
|
-
|
284
|
+
function S(a,b,d,c){var e=typeof a;if("undefined"===e||"boolean"===e)a=null;var g=!1;if(null===a)g=!0;else switch(e){case "string":case "number":g=!0;break;case "object":switch(a.$$typeof){case p:case q:g=!0}}if(g)return d(c,a,""===b?"."+T(a,0):b),1;g=0;b=""===b?".":b+":";if(Array.isArray(a))for(var k=0;k<a.length;k++){e=a[k];var f=b+T(e,k);g+=S(e,f,d,c)}else if(null===a||"object"!==typeof a?f=null:(f=z&&a[z]||a["@@iterator"],f="function"===typeof f?f:null),"function"===typeof f)for(a=f.call(a),k=
|
285
|
+
0;!(e=a.next()).done;)e=e.value,f=b+T(e,k++),g+=S(e,f,d,c);else if("object"===e)throw d=""+a,A(Error(31),"[object Object]"===d?"object with keys {"+Object.keys(a).join(", ")+"}":d,"");return g}function U(a,b,d){return null==a?0:S(a,"",b,d)}function T(a,b){return"object"===typeof a&&null!==a&&null!=a.key?escape(a.key):b.toString(36)}function ea(a,b){a.func.call(a.context,b,a.count++)}
|
286
|
+
function fa(a,b,d){var c=a.result,e=a.keyPrefix;a=a.func.call(a.context,b,a.count++);Array.isArray(a)?V(a,c,d,function(a){return a}):null!=a&&(N(a)&&(a=da(a,e+(!a.key||b&&b.key===a.key?"":(""+a.key).replace(O,"$&/")+"/")+d)),c.push(a))}function V(a,b,d,c,e){var g="";null!=d&&(g=(""+d).replace(O,"$&/")+"/");b=Q(b,g,c,e);U(a,fa,b);R(b)}function W(){var a=H.current;if(null===a)throw A(Error(321));return a}
|
287
|
+
var X={Children:{map:function(a,b,d){if(null==a)return a;var c=[];V(a,c,null,b,d);return c},forEach:function(a,b,d){if(null==a)return a;b=Q(null,null,b,d);U(a,ea,b);R(b)},count:function(a){return U(a,function(){return null},null)},toArray:function(a){var b=[];V(a,b,null,function(a){return a});return b},only:function(a){if(!N(a))throw A(Error(143));return a}},createRef:function(){return{current:null}},Component:D,PureComponent:F,createContext:function(a,b){void 0===b&&(b=null);a={$$typeof:w,_calculateChangedBits:b,
|
288
|
+
_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:v,_context:a};return a.Consumer=a},forwardRef:function(a){return{$$typeof:x,render:a}},lazy:function(a){return{$$typeof:ca,_ctor:a,_status:-1,_result:null}},memo:function(a,b){return{$$typeof:ba,type:a,compare:void 0===b?null:b}},useCallback:function(a,b){return W().useCallback(a,b)},useContext:function(a,b){return W().useContext(a,b)},useEffect:function(a,b){return W().useEffect(a,b)},useImperativeHandle:function(a,
|
289
|
+
b,d){return W().useImperativeHandle(a,b,d)},useDebugValue:function(){},useLayoutEffect:function(a,b){return W().useLayoutEffect(a,b)},useMemo:function(a,b){return W().useMemo(a,b)},useReducer:function(a,b,d){return W().useReducer(a,b,d)},useRef:function(a){return W().useRef(a)},useState:function(a){return W().useState(a)},Fragment:r,Profiler:u,StrictMode:t,Suspense:y,unstable_SuspenseList:aa,createElement:M,cloneElement:function(a,b,d){if(null===a||void 0===a)throw A(Error(267),a);var c=void 0,e=
|
290
|
+
h({},a.props),g=a.key,k=a.ref,f=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,f=J.current);void 0!==b.key&&(g=""+b.key);var l=void 0;a.type&&a.type.defaultProps&&(l=a.type.defaultProps);for(c in b)K.call(b,c)&&!L.hasOwnProperty(c)&&(e[c]=void 0===b[c]&&void 0!==l?l[c]:b[c])}c=arguments.length-2;if(1===c)e.children=d;else if(1<c){l=Array(c);for(var m=0;m<c;m++)l[m]=arguments[m+2];e.children=l}return{$$typeof:p,type:a.type,key:g,ref:k,props:e,_owner:f}},createFactory:function(a){var b=M.bind(null,a);
|
291
|
+
b.type=a;return b},isValidElement:N,version:"16.9.0",unstable_withSuspenseConfig:function(a,b){var d=I.suspense;I.suspense=void 0===b?null:b;try{a()}finally{I.suspense=d}},__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:{ReactCurrentDispatcher:H,ReactCurrentBatchConfig:I,ReactCurrentOwner:J,IsSomeRendererActing:{current:!1},assign:h}},Y={default:X},Z=Y&&X||Y;module.exports=Z.default||Z;
|
292
292
|
|
293
293
|
|
294
294
|
/***/ }),
|
@@ -391,7 +391,7 @@
|
|
391
391
|
/* 5 */
|
392
392
|
/***/ (function(module, exports, __webpack_require__) {
|
393
393
|
|
394
|
-
/* WEBPACK VAR INJECTION */(function(process) {/** @license React v16.
|
394
|
+
/* WEBPACK VAR INJECTION */(function(process) {/** @license React v16.9.0
|
395
395
|
* react.development.js
|
396
396
|
*
|
397
397
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
@@ -413,7 +413,7 @@
|
|
413
413
|
|
414
414
|
// TODO: this is special because it gets imported during build.
|
415
415
|
|
416
|
-
var ReactVersion = '16.
|
416
|
+
var ReactVersion = '16.9.0';
|
417
417
|
|
418
418
|
// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
|
419
419
|
// nor polyfill, then a plain number is used for performance.
|
@@ -426,12 +426,17 @@
|
|
426
426
|
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
|
427
427
|
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
|
428
428
|
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace;
|
429
|
+
// TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
|
430
|
+
// (unstable) APIs that have been removed. Can we remove the symbols?
|
429
431
|
|
430
432
|
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
|
431
433
|
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
|
432
434
|
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
|
435
|
+
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
|
433
436
|
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
|
434
437
|
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
|
438
|
+
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
|
439
|
+
var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
|
435
440
|
|
436
441
|
var MAYBE_ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
|
437
442
|
var FAUX_ITERATOR_SYMBOL = '@@iterator';
|
@@ -447,6 +452,19 @@
|
|
447
452
|
return null;
|
448
453
|
}
|
449
454
|
|
455
|
+
// Do not require this module directly! Use normal `invariant` calls with
|
456
|
+
// template literal strings. The messages will be converted to ReactError during
|
457
|
+
// build, and in production they will be minified.
|
458
|
+
|
459
|
+
// Do not require this module directly! Use normal `invariant` calls with
|
460
|
+
// template literal strings. The messages will be converted to ReactError during
|
461
|
+
// build, and in production they will be minified.
|
462
|
+
|
463
|
+
function ReactError(error) {
|
464
|
+
error.name = 'Invariant Violation';
|
465
|
+
return error;
|
466
|
+
}
|
467
|
+
|
450
468
|
/**
|
451
469
|
* Use invariant() to assert state which your program assumes to be true.
|
452
470
|
*
|
@@ -458,40 +476,6 @@
|
|
458
476
|
* will remain to ensure logic does not differ in production.
|
459
477
|
*/
|
460
478
|
|
461
|
-
var validateFormat = function () {};
|
462
|
-
|
463
|
-
{
|
464
|
-
validateFormat = function (format) {
|
465
|
-
if (format === undefined) {
|
466
|
-
throw new Error('invariant requires an error message argument');
|
467
|
-
}
|
468
|
-
};
|
469
|
-
}
|
470
|
-
|
471
|
-
function invariant(condition, format, a, b, c, d, e, f) {
|
472
|
-
validateFormat(format);
|
473
|
-
|
474
|
-
if (!condition) {
|
475
|
-
var error = void 0;
|
476
|
-
if (format === undefined) {
|
477
|
-
error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');
|
478
|
-
} else {
|
479
|
-
var args = [a, b, c, d, e, f];
|
480
|
-
var argIndex = 0;
|
481
|
-
error = new Error(format.replace(/%s/g, function () {
|
482
|
-
return args[argIndex++];
|
483
|
-
}));
|
484
|
-
error.name = 'Invariant Violation';
|
485
|
-
}
|
486
|
-
|
487
|
-
error.framesToPop = 1; // we don't care about invariant's own frame
|
488
|
-
throw error;
|
489
|
-
}
|
490
|
-
}
|
491
|
-
|
492
|
-
// Relying on the `invariant()` implementation lets us
|
493
|
-
// preserve the format and params in the www builds.
|
494
|
-
|
495
479
|
/**
|
496
480
|
* Forked from fbjs/warning:
|
497
481
|
* https://github.com/facebook/fbjs/blob/e66ba20ad5be433eb54423f2b097d829324d9de6/packages/fbjs/src/__forks__/warning.js
|
@@ -724,7 +708,13 @@
|
|
724
708
|
* @protected
|
725
709
|
*/
|
726
710
|
Component.prototype.setState = function (partialState, callback) {
|
727
|
-
|
711
|
+
(function () {
|
712
|
+
if (!(typeof partialState === 'object' || typeof partialState === 'function' || partialState == null)) {
|
713
|
+
{
|
714
|
+
throw ReactError(Error('setState(...): takes an object of state variables to update or a function which returns an object of state variables.'));
|
715
|
+
}
|
716
|
+
}
|
717
|
+
})();
|
728
718
|
this.updater.enqueueSetState(this, partialState, callback, 'setState');
|
729
719
|
};
|
730
720
|
|
@@ -813,6 +803,14 @@
|
|
813
803
|
current: null
|
814
804
|
};
|
815
805
|
|
806
|
+
/**
|
807
|
+
* Keeps track of the current batch's configuration such as how long an update
|
808
|
+
* should suspend for if it needs to.
|
809
|
+
*/
|
810
|
+
var ReactCurrentBatchConfig = {
|
811
|
+
suspense: null
|
812
|
+
};
|
813
|
+
|
816
814
|
/**
|
817
815
|
* Keeps track of the current owner.
|
818
816
|
*
|
@@ -884,8 +882,6 @@
|
|
884
882
|
return type;
|
885
883
|
}
|
886
884
|
switch (type) {
|
887
|
-
case REACT_CONCURRENT_MODE_TYPE:
|
888
|
-
return 'ConcurrentMode';
|
889
885
|
case REACT_FRAGMENT_TYPE:
|
890
886
|
return 'Fragment';
|
891
887
|
case REACT_PORTAL_TYPE:
|
@@ -896,6 +892,8 @@
|
|
896
892
|
return 'StrictMode';
|
897
893
|
case REACT_SUSPENSE_TYPE:
|
898
894
|
return 'Suspense';
|
895
|
+
case REACT_SUSPENSE_LIST_TYPE:
|
896
|
+
return 'SuspenseList';
|
899
897
|
}
|
900
898
|
if (typeof type === 'object') {
|
901
899
|
switch (type.$$typeof) {
|
@@ -914,6 +912,7 @@
|
|
914
912
|
if (resolvedThenable) {
|
915
913
|
return getComponentName(resolvedThenable);
|
916
914
|
}
|
915
|
+
break;
|
917
916
|
}
|
918
917
|
}
|
919
918
|
}
|
@@ -954,9 +953,19 @@
|
|
954
953
|
};
|
955
954
|
}
|
956
955
|
|
956
|
+
/**
|
957
|
+
* Used by act() to track whether you're inside an act() scope.
|
958
|
+
*/
|
959
|
+
|
960
|
+
var IsSomeRendererActing = {
|
961
|
+
current: false
|
962
|
+
};
|
963
|
+
|
957
964
|
var ReactSharedInternals = {
|
958
965
|
ReactCurrentDispatcher: ReactCurrentDispatcher,
|
966
|
+
ReactCurrentBatchConfig: ReactCurrentBatchConfig,
|
959
967
|
ReactCurrentOwner: ReactCurrentOwner,
|
968
|
+
IsSomeRendererActing: IsSomeRendererActing,
|
960
969
|
// Used by renderers to avoid bundling object-assign twice in UMD bundles:
|
961
970
|
assign: _assign
|
962
971
|
};
|
@@ -1070,8 +1079,10 @@
|
|
1070
1079
|
* if something is a React Element.
|
1071
1080
|
*
|
1072
1081
|
* @param {*} type
|
1082
|
+
* @param {*} props
|
1073
1083
|
* @param {*} key
|
1074
1084
|
* @param {string|object} ref
|
1085
|
+
* @param {*} owner
|
1075
1086
|
* @param {*} self A *temporary* helper to detect places where `this` is
|
1076
1087
|
* different from the `owner` when React.createElement is called, so that we
|
1077
1088
|
* can warn. We want to get rid of owner and replace string `ref`s with arrow
|
@@ -1079,8 +1090,6 @@
|
|
1079
1090
|
* change in behavior.
|
1080
1091
|
* @param {*} source An annotation object (added by a transpiler or otherwise)
|
1081
1092
|
* indicating filename, line number, and/or other information.
|
1082
|
-
* @param {*} owner
|
1083
|
-
* @param {*} props
|
1084
1093
|
* @internal
|
1085
1094
|
*/
|
1086
1095
|
var ReactElement = function (type, key, ref, self, source, owner, props) {
|
@@ -1139,6 +1148,73 @@
|
|
1139
1148
|
return element;
|
1140
1149
|
};
|
1141
1150
|
|
1151
|
+
/**
|
1152
|
+
* https://github.com/reactjs/rfcs/pull/107
|
1153
|
+
* @param {*} type
|
1154
|
+
* @param {object} props
|
1155
|
+
* @param {string} key
|
1156
|
+
*/
|
1157
|
+
|
1158
|
+
|
1159
|
+
/**
|
1160
|
+
* https://github.com/reactjs/rfcs/pull/107
|
1161
|
+
* @param {*} type
|
1162
|
+
* @param {object} props
|
1163
|
+
* @param {string} key
|
1164
|
+
*/
|
1165
|
+
function jsxDEV(type, config, maybeKey, source, self) {
|
1166
|
+
var propName = void 0;
|
1167
|
+
|
1168
|
+
// Reserved names are extracted
|
1169
|
+
var props = {};
|
1170
|
+
|
1171
|
+
var key = null;
|
1172
|
+
var ref = null;
|
1173
|
+
|
1174
|
+
if (hasValidRef(config)) {
|
1175
|
+
ref = config.ref;
|
1176
|
+
}
|
1177
|
+
|
1178
|
+
if (hasValidKey(config)) {
|
1179
|
+
key = '' + config.key;
|
1180
|
+
}
|
1181
|
+
|
1182
|
+
// Remaining properties are added to a new props object
|
1183
|
+
for (propName in config) {
|
1184
|
+
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {
|
1185
|
+
props[propName] = config[propName];
|
1186
|
+
}
|
1187
|
+
}
|
1188
|
+
|
1189
|
+
// intentionally not checking if key was set above
|
1190
|
+
// this key is higher priority as it's static
|
1191
|
+
if (maybeKey !== undefined) {
|
1192
|
+
key = '' + maybeKey;
|
1193
|
+
}
|
1194
|
+
|
1195
|
+
// Resolve default props
|
1196
|
+
if (type && type.defaultProps) {
|
1197
|
+
var defaultProps = type.defaultProps;
|
1198
|
+
for (propName in defaultProps) {
|
1199
|
+
if (props[propName] === undefined) {
|
1200
|
+
props[propName] = defaultProps[propName];
|
1201
|
+
}
|
1202
|
+
}
|
1203
|
+
}
|
1204
|
+
|
1205
|
+
if (key || ref) {
|
1206
|
+
var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type;
|
1207
|
+
if (key) {
|
1208
|
+
defineKeyPropWarningGetter(props, displayName);
|
1209
|
+
}
|
1210
|
+
if (ref) {
|
1211
|
+
defineRefPropWarningGetter(props, displayName);
|
1212
|
+
}
|
1213
|
+
}
|
1214
|
+
|
1215
|
+
return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);
|
1216
|
+
}
|
1217
|
+
|
1142
1218
|
/**
|
1143
1219
|
* Create and return a new ReactElement of the given type.
|
1144
1220
|
* See https://reactjs.org/docs/react-api.html#createelement
|
@@ -1230,7 +1306,13 @@
|
|
1230
1306
|
* See https://reactjs.org/docs/react-api.html#cloneelement
|
1231
1307
|
*/
|
1232
1308
|
function cloneElement(element, config, children) {
|
1233
|
-
|
1309
|
+
(function () {
|
1310
|
+
if (!!(element === null || element === undefined)) {
|
1311
|
+
{
|
1312
|
+
throw ReactError(Error('React.cloneElement(...): The argument must be a React element, but you passed ' + element + '.'));
|
1313
|
+
}
|
1314
|
+
}
|
1315
|
+
})();
|
1234
1316
|
|
1235
1317
|
var propName = void 0;
|
1236
1318
|
|
@@ -1450,7 +1532,13 @@
|
|
1450
1532
|
addendum = ' If you meant to render a collection of children, use an array ' + 'instead.' + ReactDebugCurrentFrame.getStackAddendum();
|
1451
1533
|
}
|
1452
1534
|
var childrenString = '' + children;
|
1453
|
-
|
1535
|
+
(function () {
|
1536
|
+
{
|
1537
|
+
{
|
1538
|
+
throw ReactError(Error('Objects are not valid as a React child (found: ' + (childrenString === '[object Object]' ? 'object with keys {' + Object.keys(children).join(', ') + '}' : childrenString) + ').' + addendum));
|
1539
|
+
}
|
1540
|
+
}
|
1541
|
+
})();
|
1454
1542
|
}
|
1455
1543
|
}
|
1456
1544
|
|
@@ -1626,7 +1714,13 @@
|
|
1626
1714
|
* structure.
|
1627
1715
|
*/
|
1628
1716
|
function onlyChild(children) {
|
1629
|
-
|
1717
|
+
(function () {
|
1718
|
+
if (!isValidElement(children)) {
|
1719
|
+
{
|
1720
|
+
throw ReactError(Error('React.Children.only expected to receive a single React element child.'));
|
1721
|
+
}
|
1722
|
+
}
|
1723
|
+
})();
|
1630
1724
|
return children;
|
1631
1725
|
}
|
1632
1726
|
|
@@ -1808,7 +1902,7 @@
|
|
1808
1902
|
function isValidElementType(type) {
|
1809
1903
|
return typeof type === 'string' || typeof type === 'function' ||
|
1810
1904
|
// Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
|
1811
|
-
type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_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);
|
1905
|
+
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);
|
1812
1906
|
}
|
1813
1907
|
|
1814
1908
|
function memo(type, compare) {
|
@@ -1826,7 +1920,13 @@
|
|
1826
1920
|
|
1827
1921
|
function resolveDispatcher() {
|
1828
1922
|
var dispatcher = ReactCurrentDispatcher.current;
|
1829
|
-
|
1923
|
+
(function () {
|
1924
|
+
if (!(dispatcher !== null)) {
|
1925
|
+
{
|
1926
|
+
throw ReactError(Error('Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://fb.me/react-invalid-hook-call for tips about how to debug and fix this problem.'));
|
1927
|
+
}
|
1928
|
+
}
|
1929
|
+
})();
|
1830
1930
|
return dispatcher;
|
1831
1931
|
}
|
1832
1932
|
|
@@ -1897,6 +1997,30 @@
|
|
1897
1997
|
}
|
1898
1998
|
}
|
1899
1999
|
|
2000
|
+
var emptyObject$1 = {};
|
2001
|
+
|
2002
|
+
function useResponder(responder, listenerProps) {
|
2003
|
+
var dispatcher = resolveDispatcher();
|
2004
|
+
{
|
2005
|
+
if (responder == null || responder.$$typeof !== REACT_RESPONDER_TYPE) {
|
2006
|
+
warning$1(false, 'useResponder: invalid first argument. Expected an event responder, but instead got %s', responder);
|
2007
|
+
return;
|
2008
|
+
}
|
2009
|
+
}
|
2010
|
+
return dispatcher.useResponder(responder, listenerProps || emptyObject$1);
|
2011
|
+
}
|
2012
|
+
|
2013
|
+
// Within the scope of the callback, mark all updates as being allowed to suspend.
|
2014
|
+
function withSuspenseConfig(scope, config) {
|
2015
|
+
var previousConfig = ReactCurrentBatchConfig.suspense;
|
2016
|
+
ReactCurrentBatchConfig.suspense = config === undefined ? null : config;
|
2017
|
+
try {
|
2018
|
+
scope();
|
2019
|
+
} finally {
|
2020
|
+
ReactCurrentBatchConfig.suspense = previousConfig;
|
2021
|
+
}
|
2022
|
+
}
|
2023
|
+
|
1900
2024
|
/**
|
1901
2025
|
* ReactElementValidator provides a wrapper around a element factory
|
1902
2026
|
* which validates the props passed to the element. This is intended to be
|
@@ -1920,9 +2044,8 @@
|
|
1920
2044
|
return '';
|
1921
2045
|
}
|
1922
2046
|
|
1923
|
-
function getSourceInfoErrorAddendum(
|
1924
|
-
if (
|
1925
|
-
var source = elementProps.__source;
|
2047
|
+
function getSourceInfoErrorAddendum(source) {
|
2048
|
+
if (source !== undefined) {
|
1926
2049
|
var fileName = source.fileName.replace(/^.*[\\\/]/, '');
|
1927
2050
|
var lineNumber = source.lineNumber;
|
1928
2051
|
return '\n\nCheck your code at ' + fileName + ':' + lineNumber + '.';
|
@@ -1930,6 +2053,13 @@
|
|
1930
2053
|
return '';
|
1931
2054
|
}
|
1932
2055
|
|
2056
|
+
function getSourceInfoErrorAddendumForProps(elementProps) {
|
2057
|
+
if (elementProps !== null && elementProps !== undefined) {
|
2058
|
+
return getSourceInfoErrorAddendum(elementProps.__source);
|
2059
|
+
}
|
2060
|
+
return '';
|
2061
|
+
}
|
2062
|
+
|
1933
2063
|
/**
|
1934
2064
|
* Warn if there's no key explicitly set on dynamic arrays of children or
|
1935
2065
|
* object keys are not valid. This allows us to keep track of children between
|
@@ -2090,6 +2220,90 @@
|
|
2090
2220
|
setCurrentlyValidatingElement(null);
|
2091
2221
|
}
|
2092
2222
|
|
2223
|
+
function jsxWithValidation(type, props, key, isStaticChildren, source, self) {
|
2224
|
+
var validType = isValidElementType(type);
|
2225
|
+
|
2226
|
+
// We warn in this case but don't throw. We expect the element creation to
|
2227
|
+
// succeed and there will likely be errors in render.
|
2228
|
+
if (!validType) {
|
2229
|
+
var info = '';
|
2230
|
+
if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {
|
2231
|
+
info += ' You likely forgot to export your component from the file ' + "it's defined in, or you might have mixed up default and named imports.";
|
2232
|
+
}
|
2233
|
+
|
2234
|
+
var sourceInfo = getSourceInfoErrorAddendum(source);
|
2235
|
+
if (sourceInfo) {
|
2236
|
+
info += sourceInfo;
|
2237
|
+
} else {
|
2238
|
+
info += getDeclarationErrorAddendum();
|
2239
|
+
}
|
2240
|
+
|
2241
|
+
var typeString = void 0;
|
2242
|
+
if (type === null) {
|
2243
|
+
typeString = 'null';
|
2244
|
+
} else if (Array.isArray(type)) {
|
2245
|
+
typeString = 'array';
|
2246
|
+
} else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) {
|
2247
|
+
typeString = '<' + (getComponentName(type.type) || 'Unknown') + ' />';
|
2248
|
+
info = ' Did you accidentally export a JSX literal instead of a component?';
|
2249
|
+
} else {
|
2250
|
+
typeString = typeof type;
|
2251
|
+
}
|
2252
|
+
|
2253
|
+
warning$1(false, 'React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);
|
2254
|
+
}
|
2255
|
+
|
2256
|
+
var element = jsxDEV(type, props, key, source, self);
|
2257
|
+
|
2258
|
+
// The result can be nullish if a mock or a custom function is used.
|
2259
|
+
// TODO: Drop this when these are no longer allowed as the type argument.
|
2260
|
+
if (element == null) {
|
2261
|
+
return element;
|
2262
|
+
}
|
2263
|
+
|
2264
|
+
// Skip key warning if the type isn't valid since our key validation logic
|
2265
|
+
// doesn't expect a non-string/function type and can throw confusing errors.
|
2266
|
+
// We don't want exception behavior to differ between dev and prod.
|
2267
|
+
// (Rendering will throw with a helpful message and as soon as the type is
|
2268
|
+
// fixed, the key warnings will appear.)
|
2269
|
+
if (validType) {
|
2270
|
+
var children = props.children;
|
2271
|
+
if (children !== undefined) {
|
2272
|
+
if (isStaticChildren) {
|
2273
|
+
for (var i = 0; i < children.length; i++) {
|
2274
|
+
validateChildKeys(children[i], type);
|
2275
|
+
}
|
2276
|
+
} else {
|
2277
|
+
validateChildKeys(children, type);
|
2278
|
+
}
|
2279
|
+
}
|
2280
|
+
}
|
2281
|
+
|
2282
|
+
if (props.key !== undefined) {
|
2283
|
+
warning$1(false, 'React.jsx: Spreading a key to JSX is a deprecated pattern. ' + 'Explicitly pass a key after spreading props in your JSX call. ' + 'E.g. <ComponentName {...props} key={key} />');
|
2284
|
+
}
|
2285
|
+
|
2286
|
+
if (type === REACT_FRAGMENT_TYPE) {
|
2287
|
+
validateFragmentProps(element);
|
2288
|
+
} else {
|
2289
|
+
validatePropTypes(element);
|
2290
|
+
}
|
2291
|
+
|
2292
|
+
return element;
|
2293
|
+
}
|
2294
|
+
|
2295
|
+
// These two functions exist to still get child warnings in dev
|
2296
|
+
// even with the prod transform. This means that jsxDEV is purely
|
2297
|
+
// opt-in behavior for better messages but that we won't stop
|
2298
|
+
// giving you warnings if you use production apis.
|
2299
|
+
function jsxWithValidationStatic(type, props, key) {
|
2300
|
+
return jsxWithValidation(type, props, key, true);
|
2301
|
+
}
|
2302
|
+
|
2303
|
+
function jsxWithValidationDynamic(type, props, key) {
|
2304
|
+
return jsxWithValidation(type, props, key, false);
|
2305
|
+
}
|
2306
|
+
|
2093
2307
|
function createElementWithValidation(type, props, children) {
|
2094
2308
|
var validType = isValidElementType(type);
|
2095
2309
|
|
@@ -2101,7 +2315,7 @@
|
|
2101
2315
|
info += ' You likely forgot to export your component from the file ' + "it's defined in, or you might have mixed up default and named imports.";
|
2102
2316
|
}
|
2103
2317
|
|
2104
|
-
var sourceInfo =
|
2318
|
+
var sourceInfo = getSourceInfoErrorAddendumForProps(props);
|
2105
2319
|
if (sourceInfo) {
|
2106
2320
|
info += sourceInfo;
|
2107
2321
|
} else {
|
@@ -2180,6 +2394,73 @@
|
|
2180
2394
|
return newElement;
|
2181
2395
|
}
|
2182
2396
|
|
2397
|
+
var hasBadMapPolyfill = void 0;
|
2398
|
+
|
2399
|
+
{
|
2400
|
+
hasBadMapPolyfill = false;
|
2401
|
+
try {
|
2402
|
+
var frozenObject = Object.freeze({});
|
2403
|
+
var testMap = new Map([[frozenObject, null]]);
|
2404
|
+
var testSet = new Set([frozenObject]);
|
2405
|
+
// This is necessary for Rollup to not consider these unused.
|
2406
|
+
// https://github.com/rollup/rollup/issues/1771
|
2407
|
+
// TODO: we can remove these if Rollup fixes the bug.
|
2408
|
+
testMap.set(0, 0);
|
2409
|
+
testSet.add(0);
|
2410
|
+
} catch (e) {
|
2411
|
+
// TODO: Consider warning about bad polyfills
|
2412
|
+
hasBadMapPolyfill = true;
|
2413
|
+
}
|
2414
|
+
}
|
2415
|
+
|
2416
|
+
function createFundamentalComponent(impl) {
|
2417
|
+
// We use responder as a Map key later on. When we have a bad
|
2418
|
+
// polyfill, then we can't use it as a key as the polyfill tries
|
2419
|
+
// to add a property to the object.
|
2420
|
+
if (true && !hasBadMapPolyfill) {
|
2421
|
+
Object.freeze(impl);
|
2422
|
+
}
|
2423
|
+
var fundamantalComponent = {
|
2424
|
+
$$typeof: REACT_FUNDAMENTAL_TYPE,
|
2425
|
+
impl: impl
|
2426
|
+
};
|
2427
|
+
{
|
2428
|
+
Object.freeze(fundamantalComponent);
|
2429
|
+
}
|
2430
|
+
return fundamantalComponent;
|
2431
|
+
}
|
2432
|
+
|
2433
|
+
function createEventResponder(displayName, responderConfig) {
|
2434
|
+
var getInitialState = responderConfig.getInitialState,
|
2435
|
+
onEvent = responderConfig.onEvent,
|
2436
|
+
onMount = responderConfig.onMount,
|
2437
|
+
onUnmount = responderConfig.onUnmount,
|
2438
|
+
onOwnershipChange = responderConfig.onOwnershipChange,
|
2439
|
+
onRootEvent = responderConfig.onRootEvent,
|
2440
|
+
rootEventTypes = responderConfig.rootEventTypes,
|
2441
|
+
targetEventTypes = responderConfig.targetEventTypes;
|
2442
|
+
|
2443
|
+
var eventResponder = {
|
2444
|
+
$$typeof: REACT_RESPONDER_TYPE,
|
2445
|
+
displayName: displayName,
|
2446
|
+
getInitialState: getInitialState || null,
|
2447
|
+
onEvent: onEvent || null,
|
2448
|
+
onMount: onMount || null,
|
2449
|
+
onOwnershipChange: onOwnershipChange || null,
|
2450
|
+
onRootEvent: onRootEvent || null,
|
2451
|
+
onUnmount: onUnmount || null,
|
2452
|
+
rootEventTypes: rootEventTypes || null,
|
2453
|
+
targetEventTypes: targetEventTypes || null
|
2454
|
+
};
|
2455
|
+
// We use responder as a Map key later on. When we have a bad
|
2456
|
+
// polyfill, then we can't use it as a key as the polyfill tries
|
2457
|
+
// to add a property to the object.
|
2458
|
+
if (true && !hasBadMapPolyfill) {
|
2459
|
+
Object.freeze(eventResponder);
|
2460
|
+
}
|
2461
|
+
return eventResponder;
|
2462
|
+
}
|
2463
|
+
|
2183
2464
|
// Helps identify side effects in begin-phase lifecycle hooks and setState reducers:
|
2184
2465
|
|
2185
2466
|
|
@@ -2211,13 +2492,55 @@
|
|
2211
2492
|
// Only used in www builds.
|
2212
2493
|
|
2213
2494
|
|
2495
|
+
// Disable javascript: URL strings in href for XSS protection.
|
2496
|
+
|
2497
|
+
|
2214
2498
|
// React Fire: prevent the value and checked attributes from syncing
|
2215
2499
|
// with their related DOM properties
|
2216
2500
|
|
2217
2501
|
|
2218
2502
|
// These APIs will no longer be "unstable" in the upcoming 16.7 release,
|
2219
2503
|
// Control this behavior with a flag to support 16.6 minor releases in the meanwhile.
|
2220
|
-
|
2504
|
+
|
2505
|
+
|
2506
|
+
|
2507
|
+
|
2508
|
+
// See https://github.com/react-native-community/discussions-and-proposals/issues/72 for more information
|
2509
|
+
// This is a flag so we can fix warnings in RN core before turning it on
|
2510
|
+
|
2511
|
+
|
2512
|
+
// Experimental React Flare event system and event components support.
|
2513
|
+
var enableFlareAPI = false;
|
2514
|
+
|
2515
|
+
// Experimental Host Component support.
|
2516
|
+
var enableFundamentalAPI = false;
|
2517
|
+
|
2518
|
+
// New API for JSX transforms to target - https://github.com/reactjs/rfcs/pull/107
|
2519
|
+
var enableJSXTransformAPI = false;
|
2520
|
+
|
2521
|
+
// We will enforce mocking scheduler with scheduler/unstable_mock at some point. (v17?)
|
2522
|
+
// Till then, we warn about the missing mock, but still fallback to a sync mode compatible version
|
2523
|
+
|
2524
|
+
// Temporary flag to revert the fix in #15650
|
2525
|
+
|
2526
|
+
|
2527
|
+
// For tests, we flush suspense fallbacks in an act scope;
|
2528
|
+
// *except* in some of our own tests, where we test incremental loading states.
|
2529
|
+
|
2530
|
+
|
2531
|
+
// Changes priority of some events like mousemove to user-blocking priority,
|
2532
|
+
// but without making them discrete. The flag exists in case it causes
|
2533
|
+
// starvation problems.
|
2534
|
+
|
2535
|
+
|
2536
|
+
// Add a callback property to suspense to notify which promises are currently
|
2537
|
+
// in the update queue. This allows reporting and tracing of what is causing
|
2538
|
+
// the user to see a loading state.
|
2539
|
+
|
2540
|
+
|
2541
|
+
// Part of the simplification of React.createElement so we can eventually move
|
2542
|
+
// from React.createElement to React.jsx
|
2543
|
+
// https://github.com/reactjs/rfcs/blob/createlement-rfc/text/0000-create-element-changes.md
|
2221
2544
|
|
2222
2545
|
var React = {
|
2223
2546
|
Children: {
|
@@ -2249,8 +2572,10 @@
|
|
2249
2572
|
useState: useState,
|
2250
2573
|
|
2251
2574
|
Fragment: REACT_FRAGMENT_TYPE,
|
2575
|
+
Profiler: REACT_PROFILER_TYPE,
|
2252
2576
|
StrictMode: REACT_STRICT_MODE_TYPE,
|
2253
2577
|
Suspense: REACT_SUSPENSE_TYPE,
|
2578
|
+
unstable_SuspenseList: REACT_SUSPENSE_LIST_TYPE,
|
2254
2579
|
|
2255
2580
|
createElement: createElementWithValidation,
|
2256
2581
|
cloneElement: cloneElementWithValidation,
|
@@ -2259,22 +2584,31 @@
|
|
2259
2584
|
|
2260
2585
|
version: ReactVersion,
|
2261
2586
|
|
2262
|
-
|
2263
|
-
unstable_Profiler: REACT_PROFILER_TYPE,
|
2587
|
+
unstable_withSuspenseConfig: withSuspenseConfig,
|
2264
2588
|
|
2265
2589
|
__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: ReactSharedInternals
|
2266
2590
|
};
|
2267
2591
|
|
2592
|
+
if (enableFlareAPI) {
|
2593
|
+
React.unstable_useResponder = useResponder;
|
2594
|
+
React.unstable_createResponder = createEventResponder;
|
2595
|
+
}
|
2596
|
+
|
2597
|
+
if (enableFundamentalAPI) {
|
2598
|
+
React.unstable_createFundamental = createFundamentalComponent;
|
2599
|
+
}
|
2600
|
+
|
2268
2601
|
// Note: some APIs are added with feature flags.
|
2269
2602
|
// Make sure that stable builds for open source
|
2270
2603
|
// don't modify the React object to avoid deopts.
|
2271
2604
|
// Also let's not expose their names in stable builds.
|
2272
2605
|
|
2273
|
-
if (
|
2274
|
-
|
2275
|
-
|
2276
|
-
|
2277
|
-
|
2606
|
+
if (enableJSXTransformAPI) {
|
2607
|
+
{
|
2608
|
+
React.jsxDEV = jsxWithValidation;
|
2609
|
+
React.jsx = jsxWithValidationDynamic;
|
2610
|
+
React.jsxs = jsxWithValidationStatic;
|
2611
|
+
}
|
2278
2612
|
}
|
2279
2613
|
|
2280
2614
|
|
@@ -3633,7 +3967,7 @@
|
|
3633
3967
|
/* 25 */
|
3634
3968
|
/***/ (function(module, exports) {
|
3635
3969
|
|
3636
|
-
/** @license React v16.
|
3970
|
+
/** @license React v16.9.0
|
3637
3971
|
* react-is.production.min.js
|
3638
3972
|
*
|
3639
3973
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
@@ -3643,18 +3977,18 @@
|
|
3643
3977
|
*/
|
3644
3978
|
|
3645
3979
|
'use strict';Object.defineProperty(exports,"__esModule",{value:!0});
|
3646
|
-
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?Symbol.for("react.
|
3647
|
-
|
3648
|
-
exports.
|
3649
|
-
exports.
|
3650
|
-
exports.
|
3980
|
+
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?Symbol.for("react.suspense_list"):
|
3981
|
+
60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.fundamental"):60117,w=b?Symbol.for("react.responder"):60118;function x(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 h:return a;default:return u}}case t:case r:case d:return u}}}function y(a){return x(a)===m}exports.typeOf=x;exports.AsyncMode=l;
|
3982
|
+
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;exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;
|
3983
|
+
exports.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===v||a.$$typeof===w)};exports.isAsyncMode=function(a){return y(a)||x(a)===l};exports.isConcurrentMode=y;exports.isContextConsumer=function(a){return x(a)===k};exports.isContextProvider=function(a){return x(a)===h};
|
3984
|
+
exports.isElement=function(a){return"object"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return x(a)===n};exports.isFragment=function(a){return x(a)===e};exports.isLazy=function(a){return x(a)===t};exports.isMemo=function(a){return x(a)===r};exports.isPortal=function(a){return x(a)===d};exports.isProfiler=function(a){return x(a)===g};exports.isStrictMode=function(a){return x(a)===f};exports.isSuspense=function(a){return x(a)===p};
|
3651
3985
|
|
3652
3986
|
|
3653
3987
|
/***/ }),
|
3654
3988
|
/* 26 */
|
3655
3989
|
/***/ (function(module, exports, __webpack_require__) {
|
3656
3990
|
|
3657
|
-
/* WEBPACK VAR INJECTION */(function(process) {/** @license React v16.
|
3991
|
+
/* WEBPACK VAR INJECTION */(function(process) {/** @license React v16.9.0
|
3658
3992
|
* react-is.development.js
|
3659
3993
|
*
|
3660
3994
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
@@ -3684,17 +4018,22 @@
|
|
3684
4018
|
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
|
3685
4019
|
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
|
3686
4020
|
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace;
|
4021
|
+
// TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
|
4022
|
+
// (unstable) APIs that have been removed. Can we remove the symbols?
|
3687
4023
|
var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
|
3688
4024
|
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
|
3689
4025
|
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
|
3690
4026
|
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
|
4027
|
+
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
|
3691
4028
|
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
|
3692
4029
|
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
|
4030
|
+
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
|
4031
|
+
var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
|
3693
4032
|
|
3694
4033
|
function isValidElementType(type) {
|
3695
4034
|
return typeof type === 'string' || typeof type === 'function' ||
|
3696
4035
|
// Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
|
3697
|
-
type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_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);
|
4036
|
+
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);
|
3698
4037
|
}
|
3699
4038
|
|
3700
4039
|
/**
|
@@ -4570,7 +4909,7 @@
|
|
4570
4909
|
/* 30 */
|
4571
4910
|
/***/ (function(module, exports, __webpack_require__) {
|
4572
4911
|
|
4573
|
-
/** @license React v16.
|
4912
|
+
/** @license React v16.9.0
|
4574
4913
|
* react-dom-server.browser.production.min.js
|
4575
4914
|
*
|
4576
4915
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
@@ -4579,55 +4918,58 @@
|
|
4579
4918
|
* LICENSE file in the root directory of this source tree.
|
4580
4919
|
*/
|
4581
4920
|
|
4582
|
-
'use strict';var
|
4583
|
-
function
|
4584
|
-
|
4585
|
-
function
|
4586
|
-
|
4587
|
-
function
|
4588
|
-
var
|
4589
|
-
function
|
4590
|
-
function
|
4591
|
-
"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(a){J[a]=new I(a,0,!1,a,null)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(a){var b=a[0];J[b]=new I(b,1,!1,a[1],null)});["contentEditable","draggable","spellCheck","value"].forEach(function(a){J[a]=new I(a,2,!1,a.toLowerCase(),null)});
|
4592
|
-
["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(a){J[a]=new I(a,2,!1,a,null)});"allowFullScreen async autoFocus autoPlay controls default defer disabled formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(a){J[a]=new I(a,3,!1,a.toLowerCase(),null
|
4593
|
-
["capture","download"].forEach(function(a){J[a]=new I(a,4,!1,a,null)});["cols","rows","size","span"].forEach(function(a){J[a]=new I(a,6,!1,a,null)});["rowSpan","start"].forEach(function(a){J[a]=new I(a,5,!1,a.toLowerCase(),null)});var K=/[\-:]([a-z])/g;function L(a){return a[1].toUpperCase()}
|
4921
|
+
'use strict';var l=__webpack_require__(4),m=__webpack_require__(1);function r(a){for(var b=a.message,d="https://reactjs.org/docs/error-decoder.html?invariant="+b,c=1;c<arguments.length;c++)d+="&args[]="+encodeURIComponent(arguments[c]);a.message="Minified React error #"+b+"; visit "+d+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings. ";return a}
|
4922
|
+
var t="function"===typeof Symbol&&Symbol.for,aa=t?Symbol.for("react.portal"):60106,v=t?Symbol.for("react.fragment"):60107,ba=t?Symbol.for("react.strict_mode"):60108,ca=t?Symbol.for("react.profiler"):60114,x=t?Symbol.for("react.provider"):60109,da=t?Symbol.for("react.context"):60110,ea=t?Symbol.for("react.concurrent_mode"):60111,fa=t?Symbol.for("react.forward_ref"):60112,A=t?Symbol.for("react.suspense"):60113,ha=t?Symbol.for("react.suspense_list"):60120,ia=t?Symbol.for("react.memo"):60115,ja=t?Symbol.for("react.lazy"):
|
4923
|
+
60116,ka=t?Symbol.for("react.fundamental"):60117;
|
4924
|
+
function B(a){if(null==a)return null;if("function"===typeof a)return a.displayName||a.name||null;if("string"===typeof a)return a;switch(a){case v:return"Fragment";case aa:return"Portal";case ca:return"Profiler";case ba:return"StrictMode";case A:return"Suspense";case ha:return"SuspenseList"}if("object"===typeof a)switch(a.$$typeof){case da:return"Context.Consumer";case x:return"Context.Provider";case fa:var b=a.render;b=b.displayName||b.name||"";return a.displayName||(""!==b?"ForwardRef("+b+")":"ForwardRef");
|
4925
|
+
case ia:return B(a.type);case ja:if(a=1===a._status?a._result:null)return B(a)}return null}var C=m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;C.hasOwnProperty("ReactCurrentDispatcher")||(C.ReactCurrentDispatcher={current:null});C.hasOwnProperty("ReactCurrentBatchConfig")||(C.ReactCurrentBatchConfig={suspense:null});var la={};function D(a,b){for(var d=a._threadCount|0;d<=b;d++)a[d]=a._currentValue2,a._threadCount=d+1}
|
4926
|
+
function ma(a,b,d,c){if(c&&(c=a.contextType,"object"===typeof c&&null!==c))return D(c,d),c[d];if(a=a.contextTypes){d={};for(var f in a)d[f]=b[f];b=d}else b=la;return b}for(var E=new Uint16Array(16),G=0;15>G;G++)E[G]=G+1;E[15]=0;
|
4927
|
+
var na=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,oa=Object.prototype.hasOwnProperty,pa={},qa={};
|
4928
|
+
function ra(a){if(oa.call(qa,a))return!0;if(oa.call(pa,a))return!1;if(na.test(a))return qa[a]=!0;pa[a]=!0;return!1}function sa(a,b,d,c){if(null!==d&&0===d.type)return!1;switch(typeof b){case "function":case "symbol":return!0;case "boolean":if(c)return!1;if(null!==d)return!d.acceptsBooleans;a=a.toLowerCase().slice(0,5);return"data-"!==a&&"aria-"!==a;default:return!1}}
|
4929
|
+
function ta(a,b,d,c){if(null===b||"undefined"===typeof b||sa(a,b,d,c))return!0;if(c)return!1;if(null!==d)switch(d.type){case 3:return!b;case 4:return!1===b;case 5:return isNaN(b);case 6:return isNaN(b)||1>b}return!1}function I(a,b,d,c,f,e){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=c;this.attributeNamespace=f;this.mustUseProperty=d;this.propertyName=a;this.type=b;this.sanitizeURL=e}var J={};
|
4930
|
+
"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(a){J[a]=new I(a,0,!1,a,null,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(a){var b=a[0];J[b]=new I(b,1,!1,a[1],null,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(a){J[a]=new I(a,2,!1,a.toLowerCase(),null,!1)});
|
4931
|
+
["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(a){J[a]=new I(a,2,!1,a,null,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(a){J[a]=new I(a,3,!1,a.toLowerCase(),null,!1)});
|
4932
|
+
["checked","multiple","muted","selected"].forEach(function(a){J[a]=new I(a,3,!0,a,null,!1)});["capture","download"].forEach(function(a){J[a]=new I(a,4,!1,a,null,!1)});["cols","rows","size","span"].forEach(function(a){J[a]=new I(a,6,!1,a,null,!1)});["rowSpan","start"].forEach(function(a){J[a]=new I(a,5,!1,a.toLowerCase(),null,!1)});var K=/[\-:]([a-z])/g;function L(a){return a[1].toUpperCase()}
|
4594
4933
|
"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(a){var b=a.replace(K,
|
4595
|
-
L);J[b]=new I(b,1,!1,a,null)});"xlink:actuate xlink:arcrole xlink:
|
4596
|
-
|
4597
|
-
function
|
4598
|
-
function
|
4599
|
-
function
|
4600
|
-
|
4601
|
-
|
4602
|
-
var
|
4603
|
-
|
4604
|
-
|
4605
|
-
|
4606
|
-
|
4607
|
-
|
4608
|
-
c(f,e)}return{
|
4609
|
-
|
4610
|
-
|
4611
|
-
|
4612
|
-
|
4613
|
-
|
4614
|
-
|
4615
|
-
|
4616
|
-
"";
|
4617
|
-
|
4618
|
-
"":
|
4619
|
-
|
4620
|
-
|
4621
|
-
|
4622
|
-
|
4623
|
-
|
4934
|
+
L);J[b]=new I(b,1,!1,a,null,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(a){var b=a.replace(K,L);J[b]=new I(b,1,!1,a,"http://www.w3.org/1999/xlink",!1)});["xml:base","xml:lang","xml:space"].forEach(function(a){var b=a.replace(K,L);J[b]=new I(b,1,!1,a,"http://www.w3.org/XML/1998/namespace",!1)});["tabIndex","crossOrigin"].forEach(function(a){J[a]=new I(a,1,!1,a.toLowerCase(),null,!1)});
|
4935
|
+
J.xlinkHref=new I("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0);["src","href","action","formAction"].forEach(function(a){J[a]=new I(a,1,!1,a.toLowerCase(),null,!0)});var ua=/["'&<>]/;
|
4936
|
+
function M(a){if("boolean"===typeof a||"number"===typeof a)return""+a;a=""+a;var b=ua.exec(a);if(b){var d="",c,f=0;for(c=b.index;c<a.length;c++){switch(a.charCodeAt(c)){case 34:b=""";break;case 38:b="&";break;case 39:b="'";break;case 60:b="<";break;case 62:b=">";break;default:continue}f!==c&&(d+=a.substring(f,c));f=c+1;d+=b}a=f!==c?d+a.substring(f,c):d}return a}
|
4937
|
+
function va(a,b){var d=J.hasOwnProperty(a)?J[a]:null;var c;if(c="style"!==a)c=null!==d?0===d.type:!(2<a.length)||"o"!==a[0]&&"O"!==a[0]||"n"!==a[1]&&"N"!==a[1]?!1:!0;if(c||ta(a,b,d,!1))return"";if(null!==d){a=d.attributeName;c=d.type;if(3===c||4===c&&!0===b)return a+'=""';d.sanitizeURL&&(b=""+b);return a+"="+('"'+M(b)+'"')}return ra(a)?a+"="+('"'+M(b)+'"'):""}var N=null,O=null,P=null,Q=!1,R=!1,T=null,U=0;function V(){if(null===N)throw r(Error(321));return N}
|
4938
|
+
function wa(){if(0<U)throw r(Error(312));return{memoizedState:null,queue:null,next:null}}function W(){null===P?null===O?(Q=!1,O=P=wa()):(Q=!0,P=O):null===P.next?(Q=!1,P=P.next=wa()):(Q=!0,P=P.next);return P}function xa(a,b,d,c){for(;R;)R=!1,U+=1,P=null,d=a(b,c);O=N=null;U=0;P=T=null;return d}function ya(a,b){return"function"===typeof b?b(a):b}
|
4939
|
+
function za(a,b,d){N=V();P=W();if(Q){var c=P.queue;b=c.dispatch;if(null!==T&&(d=T.get(c),void 0!==d)){T.delete(c);c=P.memoizedState;do c=a(c,d.action),d=d.next;while(null!==d);P.memoizedState=c;return[c,b]}return[P.memoizedState,b]}a=a===ya?"function"===typeof b?b():b:void 0!==d?d(b):b;P.memoizedState=a;a=P.queue={last:null,dispatch:null};a=a.dispatch=Aa.bind(null,N,a);return[P.memoizedState,a]}
|
4940
|
+
function Aa(a,b,d){if(!(25>U))throw r(Error(301));if(a===N)if(R=!0,a={action:d,next:null},null===T&&(T=new Map),d=T.get(b),void 0===d)T.set(b,a);else{for(b=d;null!==b.next;)b=b.next;b.next=a}}function Ba(){}
|
4941
|
+
var X=0,Ca={readContext:function(a){var b=X;D(a,b);return a[b]},useContext:function(a){V();var b=X;D(a,b);return a[b]},useMemo:function(a,b){N=V();P=W();b=void 0===b?null:b;if(null!==P){var d=P.memoizedState;if(null!==d&&null!==b){a:{var c=d[1];if(null===c)c=!1;else{for(var f=0;f<c.length&&f<b.length;f++){var e=b[f],h=c[f];if((e!==h||0===e&&1/e!==1/h)&&(e===e||h===h)){c=!1;break a}}c=!0}}if(c)return d[0]}}a=a();P.memoizedState=[a,b];return a},useReducer:za,useRef:function(a){N=V();P=W();var b=P.memoizedState;
|
4942
|
+
return null===b?(a={current:a},P.memoizedState=a):b},useState:function(a){return za(ya,a)},useLayoutEffect:function(){},useCallback:function(a){return a},useImperativeHandle:Ba,useEffect:Ba,useDebugValue:Ba,useResponder:function(a,b){return{props:b,responder:a}}},Da={html:"http://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg"};
|
4943
|
+
function Ea(a){switch(a){case "svg":return"http://www.w3.org/2000/svg";case "math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}
|
4944
|
+
var Fa={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},Ga=l({menuitem:!0},Fa),Y={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,
|
4945
|
+
gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Ha=["Webkit","ms","Moz","O"];Object.keys(Y).forEach(function(a){Ha.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);Y[b]=Y[a]})});
|
4946
|
+
var Ia=/([A-Z])/g,Ja=/^ms-/,Z=m.Children.toArray,Ka=C.ReactCurrentDispatcher,La={listing:!0,pre:!0,textarea:!0},Ma=/^[a-zA-Z][a-zA-Z:_\.\-\d]*$/,Na={},Oa={};function Pa(a){if(void 0===a||null===a)return a;var b="";m.Children.forEach(a,function(a){null!=a&&(b+=a)});return b}var Qa=Object.prototype.hasOwnProperty,Ra={children:null,dangerouslySetInnerHTML:null,suppressContentEditableWarning:null,suppressHydrationWarning:null};function Sa(a,b){if(void 0===a)throw r(Error(152),B(b)||"Component");}
|
4947
|
+
function Ta(a,b,d){function c(c,f){var e=f.prototype&&f.prototype.isReactComponent,g=ma(f,b,d,e),h=[],w=!1,p={isMounted:function(){return!1},enqueueForceUpdate:function(){if(null===h)return null},enqueueReplaceState:function(a,b){w=!0;h=[b]},enqueueSetState:function(a,b){if(null===h)return null;h.push(b)}},k=void 0;if(e)k=new f(c.props,g,p),"function"===typeof f.getDerivedStateFromProps&&(e=f.getDerivedStateFromProps.call(null,c.props,k.state),null!=e&&(k.state=l({},k.state,e)));else if(N={},k=f(c.props,
|
4948
|
+
g,p),k=xa(f,c.props,k,g),null==k||null==k.render){a=k;Sa(a,f);return}k.props=c.props;k.context=g;k.updater=p;p=k.state;void 0===p&&(k.state=p=null);if("function"===typeof k.UNSAFE_componentWillMount||"function"===typeof k.componentWillMount)if("function"===typeof k.componentWillMount&&"function"!==typeof f.getDerivedStateFromProps&&k.componentWillMount(),"function"===typeof k.UNSAFE_componentWillMount&&"function"!==typeof f.getDerivedStateFromProps&&k.UNSAFE_componentWillMount(),h.length){p=h;var q=
|
4949
|
+
w;h=null;w=!1;if(q&&1===p.length)k.state=p[0];else{e=q?p[0]:k.state;var y=!0;for(q=q?1:0;q<p.length;q++){var u=p[q];u="function"===typeof u?u.call(k,e,c.props,g):u;null!=u&&(y?(y=!1,e=l({},e,u)):l(e,u))}k.state=e}}else h=null;a=k.render();Sa(a,f);c=void 0;if("function"===typeof k.getChildContext&&(g=f.childContextTypes,"object"===typeof g)){c=k.getChildContext();for(var S in c)if(!(S in g))throw r(Error(108),B(f)||"Unknown",S);}c&&(b=l({},b,c))}for(;m.isValidElement(a);){var f=a,e=f.type;if("function"!==
|
4950
|
+
typeof e)break;c(f,e)}return{child:a,context:b}}
|
4951
|
+
var Ua=function(){function a(b,d){if(!(this instanceof a))throw new TypeError("Cannot call a class as a function");m.isValidElement(b)?b.type!==v?b=[b]:(b=b.props.children,b=m.isValidElement(b)?[b]:Z(b)):b=Z(b);b={type:null,domNamespace:Da.html,children:b,childIndex:0,context:la,footer:""};var c=E[0];if(0===c){var f=E;c=f.length;var e=2*c;if(!(65536>=e))throw r(Error(304));var h=new Uint16Array(e);h.set(f);E=h;E[0]=c+1;for(f=c;f<e-1;f++)E[f]=f+1;E[e-1]=0}else E[0]=E[c];this.threadID=c;this.stack=
|
4952
|
+
[b];this.exhausted=!1;this.currentSelectValue=null;this.previousWasTextNode=!1;this.makeStaticMarkup=d;this.suspenseDepth=0;this.contextIndex=-1;this.contextStack=[];this.contextValueStack=[]}a.prototype.destroy=function(){if(!this.exhausted){this.exhausted=!0;this.clearProviders();var a=this.threadID;E[a]=E[0];E[0]=a}};a.prototype.pushProvider=function(a){var b=++this.contextIndex,c=a.type._context,f=this.threadID;D(c,f);var e=c[f];this.contextStack[b]=c;this.contextValueStack[b]=e;c[f]=a.props.value};
|
4953
|
+
a.prototype.popProvider=function(){var a=this.contextIndex,d=this.contextStack[a],c=this.contextValueStack[a];this.contextStack[a]=null;this.contextValueStack[a]=null;this.contextIndex--;d[this.threadID]=c};a.prototype.clearProviders=function(){for(var a=this.contextIndex;0<=a;a--)this.contextStack[a][this.threadID]=this.contextValueStack[a]};a.prototype.read=function(a){if(this.exhausted)return null;var b=X;X=this.threadID;var c=Ka.current;Ka.current=Ca;try{for(var f=[""],e=!1;f[0].length<a;){if(0===
|
4954
|
+
this.stack.length){this.exhausted=!0;var h=this.threadID;E[h]=E[0];E[0]=h;break}var g=this.stack[this.stack.length-1];if(e||g.childIndex>=g.children.length){var H=g.footer;""!==H&&(this.previousWasTextNode=!1);this.stack.pop();if("select"===g.type)this.currentSelectValue=null;else if(null!=g.type&&null!=g.type.type&&g.type.type.$$typeof===x)this.popProvider(g.type);else if(g.type===A){this.suspenseDepth--;var F=f.pop();if(e){e=!1;var n=g.fallbackFrame;if(!n)throw r(Error(303));this.stack.push(n);
|
4955
|
+
f[this.suspenseDepth]+="\x3c!--$!--\x3e";continue}else f[this.suspenseDepth]+=F}f[this.suspenseDepth]+=H}else{var w=g.children[g.childIndex++],p="";try{p+=this.render(w,g.context,g.domNamespace)}catch(k){throw k;}finally{}f.length<=this.suspenseDepth&&f.push("");f[this.suspenseDepth]+=p}}return f[0]}finally{Ka.current=c,X=b}};a.prototype.render=function(a,d,c){if("string"===typeof a||"number"===typeof a){c=""+a;if(""===c)return"";if(this.makeStaticMarkup)return M(c);if(this.previousWasTextNode)return"\x3c!-- --\x3e"+
|
4956
|
+
M(c);this.previousWasTextNode=!0;return M(c)}d=Ta(a,d,this.threadID);a=d.child;d=d.context;if(null===a||!1===a)return"";if(!m.isValidElement(a)){if(null!=a&&null!=a.$$typeof){c=a.$$typeof;if(c===aa)throw r(Error(257));throw r(Error(258),c.toString());}a=Z(a);this.stack.push({type:null,domNamespace:c,children:a,childIndex:0,context:d,footer:""});return""}var b=a.type;if("string"===typeof b)return this.renderDOM(a,d,c);switch(b){case ba:case ea:case ca:case ha:case v:return a=Z(a.props.children),this.stack.push({type:null,
|
4957
|
+
domNamespace:c,children:a,childIndex:0,context:d,footer:""}),"";case A:throw r(Error(294));}if("object"===typeof b&&null!==b)switch(b.$$typeof){case fa:N={};var e=b.render(a.props,a.ref);e=xa(b.render,a.props,e,a.ref);e=Z(e);this.stack.push({type:null,domNamespace:c,children:e,childIndex:0,context:d,footer:""});return"";case ia:return a=[m.createElement(b.type,l({ref:a.ref},a.props))],this.stack.push({type:null,domNamespace:c,children:a,childIndex:0,context:d,footer:""}),"";case x:return b=Z(a.props.children),
|
4958
|
+
c={type:a,domNamespace:c,children:b,childIndex:0,context:d,footer:""},this.pushProvider(a),this.stack.push(c),"";case da:b=a.type;e=a.props;var h=this.threadID;D(b,h);b=Z(e.children(b[h]));this.stack.push({type:a,domNamespace:c,children:b,childIndex:0,context:d,footer:""});return"";case ka:throw r(Error(338));case ja:throw r(Error(295));}throw r(Error(130),null==b?b:typeof b,"");};a.prototype.renderDOM=function(a,d,c){var b=a.type.toLowerCase();c===Da.html&&Ea(b);if(!Na.hasOwnProperty(b)){if(!Ma.test(b))throw r(Error(65),
|
4959
|
+
b);Na[b]=!0}var e=a.props;if("input"===b)e=l({type:void 0},e,{defaultChecked:void 0,defaultValue:void 0,value:null!=e.value?e.value:e.defaultValue,checked:null!=e.checked?e.checked:e.defaultChecked});else if("textarea"===b){var h=e.value;if(null==h){h=e.defaultValue;var g=e.children;if(null!=g){if(null!=h)throw r(Error(92));if(Array.isArray(g)){if(!(1>=g.length))throw r(Error(93));g=g[0]}h=""+g}null==h&&(h="")}e=l({},e,{value:void 0,children:""+h})}else if("select"===b)this.currentSelectValue=null!=
|
4960
|
+
e.value?e.value:e.defaultValue,e=l({},e,{value:void 0});else if("option"===b){g=this.currentSelectValue;var H=Pa(e.children);if(null!=g){var F=null!=e.value?e.value+"":H;h=!1;if(Array.isArray(g))for(var n=0;n<g.length;n++){if(""+g[n]===F){h=!0;break}}else h=""+g===F;e=l({selected:void 0,children:void 0},e,{selected:h,children:H})}}if(h=e){if(Ga[b]&&(null!=h.children||null!=h.dangerouslySetInnerHTML))throw r(Error(137),b,"");if(null!=h.dangerouslySetInnerHTML){if(null!=h.children)throw r(Error(60));
|
4961
|
+
if(!("object"===typeof h.dangerouslySetInnerHTML&&"__html"in h.dangerouslySetInnerHTML))throw r(Error(61));}if(null!=h.style&&"object"!==typeof h.style)throw r(Error(62),"");}h=e;g=this.makeStaticMarkup;H=1===this.stack.length;F="<"+a.type;for(z in h)if(Qa.call(h,z)){var w=h[z];if(null!=w){if("style"===z){n=void 0;var p="",k="";for(n in w)if(w.hasOwnProperty(n)){var q=0===n.indexOf("--"),y=w[n];if(null!=y){if(q)var u=n;else if(u=n,Oa.hasOwnProperty(u))u=Oa[u];else{var S=u.replace(Ia,"-$1").toLowerCase().replace(Ja,
|
4962
|
+
"-ms-");u=Oa[u]=S}p+=k+u+":";k=n;q=null==y||"boolean"===typeof y||""===y?"":q||"number"!==typeof y||0===y||Y.hasOwnProperty(k)&&Y[k]?(""+y).trim():y+"px";p+=q;k=";"}}w=p||null}n=null;b:if(q=b,y=h,-1===q.indexOf("-"))q="string"===typeof y.is;else switch(q){case "annotation-xml":case "color-profile":case "font-face":case "font-face-src":case "font-face-uri":case "font-face-format":case "font-face-name":case "missing-glyph":q=!1;break b;default:q=!0}q?Ra.hasOwnProperty(z)||(n=z,n=ra(n)&&null!=w?n+"="+
|
4963
|
+
('"'+M(w)+'"'):""):n=va(z,w);n&&(F+=" "+n)}}g||H&&(F+=' data-reactroot=""');var z=F;h="";Fa.hasOwnProperty(b)?z+="/>":(z+=">",h="</"+a.type+">");a:{g=e.dangerouslySetInnerHTML;if(null!=g){if(null!=g.__html){g=g.__html;break a}}else if(g=e.children,"string"===typeof g||"number"===typeof g){g=M(g);break a}g=null}null!=g?(e=[],La[b]&&"\n"===g.charAt(0)&&(z+="\n"),z+=g):e=Z(e.children);a=a.type;c=null==c||"http://www.w3.org/1999/xhtml"===c?Ea(a):"http://www.w3.org/2000/svg"===c&&"foreignObject"===a?"http://www.w3.org/1999/xhtml":
|
4964
|
+
c;this.stack.push({domNamespace:c,type:b,children:e,childIndex:0,context:d,footer:h});this.previousWasTextNode=!1;return z};return a}(),Va={renderToString:function(a){a=new Ua(a,!1);try{return a.read(Infinity)}finally{a.destroy()}},renderToStaticMarkup:function(a){a=new Ua(a,!0);try{return a.read(Infinity)}finally{a.destroy()}},renderToNodeStream:function(){throw r(Error(207));},renderToStaticNodeStream:function(){throw r(Error(208));},version:"16.9.0"},Wa={default:Va},Xa=Wa&&Va||
|
4965
|
+
Wa;module.exports=Xa.default||Xa;
|
4624
4966
|
|
4625
4967
|
|
4626
4968
|
/***/ }),
|
4627
4969
|
/* 31 */
|
4628
4970
|
/***/ (function(module, exports, __webpack_require__) {
|
4629
4971
|
|
4630
|
-
/* WEBPACK VAR INJECTION */(function(process) {/** @license React v16.
|
4972
|
+
/* WEBPACK VAR INJECTION */(function(process) {/** @license React v16.9.0
|
4631
4973
|
* react-dom-server.browser.development.js
|
4632
4974
|
*
|
4633
4975
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
@@ -4648,6 +4990,23 @@
|
|
4648
4990
|
var React = __webpack_require__(1);
|
4649
4991
|
var checkPropTypes = __webpack_require__(6);
|
4650
4992
|
|
4993
|
+
// Do not require this module directly! Use normal `invariant` calls with
|
4994
|
+
// template literal strings. The messages will be converted to ReactError during
|
4995
|
+
// build, and in production they will be minified.
|
4996
|
+
|
4997
|
+
// Do not require this module directly! Use normal `invariant` calls with
|
4998
|
+
// template literal strings. The messages will be converted to ReactError during
|
4999
|
+
// build, and in production they will be minified.
|
5000
|
+
|
5001
|
+
function ReactError(error) {
|
5002
|
+
error.name = 'Invariant Violation';
|
5003
|
+
return error;
|
5004
|
+
}
|
5005
|
+
|
5006
|
+
// TODO: this is special because it gets imported during build.
|
5007
|
+
|
5008
|
+
var ReactVersion = '16.9.0';
|
5009
|
+
|
4651
5010
|
/**
|
4652
5011
|
* Use invariant() to assert state which your program assumes to be true.
|
4653
5012
|
*
|
@@ -4659,44 +5018,6 @@
|
|
4659
5018
|
* will remain to ensure logic does not differ in production.
|
4660
5019
|
*/
|
4661
5020
|
|
4662
|
-
var validateFormat = function () {};
|
4663
|
-
|
4664
|
-
{
|
4665
|
-
validateFormat = function (format) {
|
4666
|
-
if (format === undefined) {
|
4667
|
-
throw new Error('invariant requires an error message argument');
|
4668
|
-
}
|
4669
|
-
};
|
4670
|
-
}
|
4671
|
-
|
4672
|
-
function invariant(condition, format, a, b, c, d, e, f) {
|
4673
|
-
validateFormat(format);
|
4674
|
-
|
4675
|
-
if (!condition) {
|
4676
|
-
var error = void 0;
|
4677
|
-
if (format === undefined) {
|
4678
|
-
error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');
|
4679
|
-
} else {
|
4680
|
-
var args = [a, b, c, d, e, f];
|
4681
|
-
var argIndex = 0;
|
4682
|
-
error = new Error(format.replace(/%s/g, function () {
|
4683
|
-
return args[argIndex++];
|
4684
|
-
}));
|
4685
|
-
error.name = 'Invariant Violation';
|
4686
|
-
}
|
4687
|
-
|
4688
|
-
error.framesToPop = 1; // we don't care about invariant's own frame
|
4689
|
-
throw error;
|
4690
|
-
}
|
4691
|
-
}
|
4692
|
-
|
4693
|
-
// Relying on the `invariant()` implementation lets us
|
4694
|
-
// preserve the format and params in the www builds.
|
4695
|
-
|
4696
|
-
// TODO: this is special because it gets imported during build.
|
4697
|
-
|
4698
|
-
var ReactVersion = '16.8.6';
|
4699
|
-
|
4700
5021
|
/**
|
4701
5022
|
* Similar to invariant but only logs a warning if the condition is not met.
|
4702
5023
|
* This can be used to log issues in development environments in critical
|
@@ -4758,12 +5079,16 @@
|
|
4758
5079
|
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
|
4759
5080
|
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
|
4760
5081
|
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace;
|
5082
|
+
// TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
|
5083
|
+
// (unstable) APIs that have been removed. Can we remove the symbols?
|
4761
5084
|
|
4762
5085
|
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
|
4763
5086
|
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
|
4764
5087
|
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
|
5088
|
+
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
|
4765
5089
|
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
|
4766
5090
|
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
|
5091
|
+
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
|
4767
5092
|
|
4768
5093
|
var Resolved = 1;
|
4769
5094
|
|
@@ -4794,8 +5119,6 @@
|
|
4794
5119
|
return type;
|
4795
5120
|
}
|
4796
5121
|
switch (type) {
|
4797
|
-
case REACT_CONCURRENT_MODE_TYPE:
|
4798
|
-
return 'ConcurrentMode';
|
4799
5122
|
case REACT_FRAGMENT_TYPE:
|
4800
5123
|
return 'Fragment';
|
4801
5124
|
case REACT_PORTAL_TYPE:
|
@@ -4806,6 +5129,8 @@
|
|
4806
5129
|
return 'StrictMode';
|
4807
5130
|
case REACT_SUSPENSE_TYPE:
|
4808
5131
|
return 'Suspense';
|
5132
|
+
case REACT_SUSPENSE_LIST_TYPE:
|
5133
|
+
return 'SuspenseList';
|
4809
5134
|
}
|
4810
5135
|
if (typeof type === 'object') {
|
4811
5136
|
switch (type.$$typeof) {
|
@@ -4824,6 +5149,7 @@
|
|
4824
5149
|
if (resolvedThenable) {
|
4825
5150
|
return getComponentName(resolvedThenable);
|
4826
5151
|
}
|
5152
|
+
break;
|
4827
5153
|
}
|
4828
5154
|
}
|
4829
5155
|
}
|
@@ -4893,6 +5219,11 @@
|
|
4893
5219
|
current: null
|
4894
5220
|
};
|
4895
5221
|
}
|
5222
|
+
if (!ReactSharedInternals.hasOwnProperty('ReactCurrentBatchConfig')) {
|
5223
|
+
ReactSharedInternals.ReactCurrentBatchConfig = {
|
5224
|
+
suspense: null
|
5225
|
+
};
|
5226
|
+
}
|
4896
5227
|
|
4897
5228
|
/**
|
4898
5229
|
* Similar to invariant but only logs a warning if the condition is not met.
|
@@ -4964,7 +5295,7 @@
|
|
4964
5295
|
|
4965
5296
|
|
4966
5297
|
// Warn about deprecated, async-unsafe lifecycles; relates to RFC #6:
|
4967
|
-
var warnAboutDeprecatedLifecycles =
|
5298
|
+
var warnAboutDeprecatedLifecycles = true;
|
4968
5299
|
|
4969
5300
|
// Gather advanced timing metrics for Profiler subtrees.
|
4970
5301
|
|
@@ -4981,6 +5312,9 @@
|
|
4981
5312
|
// Only used in www builds.
|
4982
5313
|
|
4983
5314
|
|
5315
|
+
// Disable javascript: URL strings in href for XSS protection.
|
5316
|
+
var disableJavaScriptURLs = false;
|
5317
|
+
|
4984
5318
|
// React Fire: prevent the value and checked attributes from syncing
|
4985
5319
|
// with their related DOM properties
|
4986
5320
|
|
@@ -4988,6 +5322,49 @@
|
|
4988
5322
|
// These APIs will no longer be "unstable" in the upcoming 16.7 release,
|
4989
5323
|
// Control this behavior with a flag to support 16.6 minor releases in the meanwhile.
|
4990
5324
|
|
5325
|
+
|
5326
|
+
|
5327
|
+
|
5328
|
+
// See https://github.com/react-native-community/discussions-and-proposals/issues/72 for more information
|
5329
|
+
// This is a flag so we can fix warnings in RN core before turning it on
|
5330
|
+
|
5331
|
+
|
5332
|
+
// Experimental React Flare event system and event components support.
|
5333
|
+
var enableFlareAPI = false;
|
5334
|
+
|
5335
|
+
// Experimental Host Component support.
|
5336
|
+
var enableFundamentalAPI = false;
|
5337
|
+
|
5338
|
+
// New API for JSX transforms to target - https://github.com/reactjs/rfcs/pull/107
|
5339
|
+
|
5340
|
+
|
5341
|
+
// We will enforce mocking scheduler with scheduler/unstable_mock at some point. (v17?)
|
5342
|
+
// Till then, we warn about the missing mock, but still fallback to a sync mode compatible version
|
5343
|
+
|
5344
|
+
// Temporary flag to revert the fix in #15650
|
5345
|
+
|
5346
|
+
|
5347
|
+
// For tests, we flush suspense fallbacks in an act scope;
|
5348
|
+
// *except* in some of our own tests, where we test incremental loading states.
|
5349
|
+
|
5350
|
+
|
5351
|
+
// Changes priority of some events like mousemove to user-blocking priority,
|
5352
|
+
// but without making them discrete. The flag exists in case it causes
|
5353
|
+
// starvation problems.
|
5354
|
+
|
5355
|
+
|
5356
|
+
// Add a callback property to suspense to notify which promises are currently
|
5357
|
+
// in the update queue. This allows reporting and tracing of what is causing
|
5358
|
+
// the user to see a loading state.
|
5359
|
+
|
5360
|
+
|
5361
|
+
// Part of the simplification of React.createElement so we can eventually move
|
5362
|
+
// from React.createElement to React.jsx
|
5363
|
+
// https://github.com/reactjs/rfcs/blob/createlement-rfc/text/0000-create-element-changes.md
|
5364
|
+
|
5365
|
+
|
5366
|
+
var disableLegacyContext = false;
|
5367
|
+
|
4991
5368
|
var ReactDebugCurrentFrame$1 = void 0;
|
4992
5369
|
var didWarnAboutInvalidateContextType = void 0;
|
4993
5370
|
{
|
@@ -5032,45 +5409,72 @@
|
|
5032
5409
|
}
|
5033
5410
|
}
|
5034
5411
|
|
5035
|
-
function processContext(type, context, threadID) {
|
5036
|
-
|
5037
|
-
|
5038
|
-
|
5039
|
-
|
5040
|
-
|
5041
|
-
|
5042
|
-
|
5043
|
-
|
5044
|
-
didWarnAboutInvalidateContextType.
|
5045
|
-
|
5046
|
-
|
5047
|
-
|
5048
|
-
|
5049
|
-
|
5050
|
-
|
5051
|
-
|
5052
|
-
|
5053
|
-
|
5054
|
-
|
5055
|
-
|
5056
|
-
|
5057
|
-
|
5412
|
+
function processContext(type, context, threadID, isClass) {
|
5413
|
+
if (isClass) {
|
5414
|
+
var contextType = type.contextType;
|
5415
|
+
{
|
5416
|
+
if ('contextType' in type) {
|
5417
|
+
var isValid =
|
5418
|
+
// Allow null for conditional declaration
|
5419
|
+
contextType === null || contextType !== undefined && contextType.$$typeof === REACT_CONTEXT_TYPE && contextType._context === undefined; // Not a <Context.Consumer>
|
5420
|
+
|
5421
|
+
if (!isValid && !didWarnAboutInvalidateContextType.has(type)) {
|
5422
|
+
didWarnAboutInvalidateContextType.add(type);
|
5423
|
+
|
5424
|
+
var addendum = '';
|
5425
|
+
if (contextType === undefined) {
|
5426
|
+
addendum = ' However, it is set to undefined. ' + 'This can be caused by a typo or by mixing up named and default imports. ' + 'This can also happen due to a circular dependency, so ' + 'try moving the createContext() call to a separate file.';
|
5427
|
+
} else if (typeof contextType !== 'object') {
|
5428
|
+
addendum = ' However, it is set to a ' + typeof contextType + '.';
|
5429
|
+
} else if (contextType.$$typeof === REACT_PROVIDER_TYPE) {
|
5430
|
+
addendum = ' Did you accidentally pass the Context.Provider instead?';
|
5431
|
+
} else if (contextType._context !== undefined) {
|
5432
|
+
// <Context.Consumer>
|
5433
|
+
addendum = ' Did you accidentally pass the Context.Consumer instead?';
|
5434
|
+
} else {
|
5435
|
+
addendum = ' However, it is set to an object with keys {' + Object.keys(contextType).join(', ') + '}.';
|
5436
|
+
}
|
5437
|
+
warningWithoutStack$1(false, '%s defines an invalid contextType. ' + 'contextType should point to the Context object returned by React.createContext().%s', getComponentName(type) || 'Component', addendum);
|
5058
5438
|
}
|
5059
|
-
warningWithoutStack$1(false, '%s defines an invalid contextType. ' + 'contextType should point to the Context object returned by React.createContext().%s', getComponentName(type) || 'Component', addendum);
|
5060
5439
|
}
|
5061
5440
|
}
|
5062
|
-
|
5063
|
-
|
5064
|
-
|
5065
|
-
|
5441
|
+
if (typeof contextType === 'object' && contextType !== null) {
|
5442
|
+
validateContextBounds(contextType, threadID);
|
5443
|
+
return contextType[threadID];
|
5444
|
+
}
|
5445
|
+
if (disableLegacyContext) {
|
5446
|
+
{
|
5447
|
+
if (type.contextTypes) {
|
5448
|
+
warningWithoutStack$1(false, '%s uses the legacy contextTypes API which is no longer supported. ' + 'Use React.createContext() with static contextType instead.', getComponentName(type) || 'Unknown');
|
5449
|
+
}
|
5450
|
+
}
|
5451
|
+
return emptyObject;
|
5452
|
+
} else {
|
5453
|
+
var maskedContext = maskContext(type, context);
|
5454
|
+
{
|
5455
|
+
if (type.contextTypes) {
|
5456
|
+
checkContextTypes(type.contextTypes, maskedContext, 'context');
|
5457
|
+
}
|
5458
|
+
}
|
5459
|
+
return maskedContext;
|
5460
|
+
}
|
5066
5461
|
} else {
|
5067
|
-
|
5068
|
-
|
5069
|
-
|
5070
|
-
|
5462
|
+
if (disableLegacyContext) {
|
5463
|
+
{
|
5464
|
+
if (type.contextTypes) {
|
5465
|
+
warningWithoutStack$1(false, '%s uses the legacy contextTypes API which is no longer supported. ' + 'Use React.createContext() with React.useContext() instead.', getComponentName(type) || 'Unknown');
|
5466
|
+
}
|
5467
|
+
}
|
5468
|
+
return undefined;
|
5469
|
+
} else {
|
5470
|
+
var _maskedContext = maskContext(type, context);
|
5471
|
+
{
|
5472
|
+
if (type.contextTypes) {
|
5473
|
+
checkContextTypes(type.contextTypes, _maskedContext, 'context');
|
5474
|
+
}
|
5071
5475
|
}
|
5476
|
+
return _maskedContext;
|
5072
5477
|
}
|
5073
|
-
return maskedContext;
|
5074
5478
|
}
|
5075
5479
|
}
|
5076
5480
|
|
@@ -5088,7 +5492,13 @@
|
|
5088
5492
|
var oldArray = nextAvailableThreadIDs;
|
5089
5493
|
var oldSize = oldArray.length;
|
5090
5494
|
var newSize = oldSize * 2;
|
5091
|
-
|
5495
|
+
(function () {
|
5496
|
+
if (!(newSize <= 0x10000)) {
|
5497
|
+
{
|
5498
|
+
throw ReactError(Error('Maximum number of concurrent React renderers exceeded. This can happen if you are not properly destroying the Readable provided by React. Ensure that you call .destroy() on it if you no longer want to read from it, and did not read to the end. If you use .pipe() this should be automatic.'));
|
5499
|
+
}
|
5500
|
+
}
|
5501
|
+
})();
|
5092
5502
|
var newArray = new Uint16Array(newSize);
|
5093
5503
|
newArray.set(oldArray);
|
5094
5504
|
nextAvailableThreadIDs = newArray;
|
@@ -5247,13 +5657,14 @@
|
|
5247
5657
|
return properties.hasOwnProperty(name) ? properties[name] : null;
|
5248
5658
|
}
|
5249
5659
|
|
5250
|
-
function PropertyInfoRecord(name, type, mustUseProperty, attributeName, attributeNamespace) {
|
5660
|
+
function PropertyInfoRecord(name, type, mustUseProperty, attributeName, attributeNamespace, sanitizeURL) {
|
5251
5661
|
this.acceptsBooleans = type === BOOLEANISH_STRING || type === BOOLEAN || type === OVERLOADED_BOOLEAN;
|
5252
5662
|
this.attributeName = attributeName;
|
5253
5663
|
this.attributeNamespace = attributeNamespace;
|
5254
5664
|
this.mustUseProperty = mustUseProperty;
|
5255
5665
|
this.propertyName = name;
|
5256
5666
|
this.type = type;
|
5667
|
+
this.sanitizeURL = sanitizeURL;
|
5257
5668
|
}
|
5258
5669
|
|
5259
5670
|
// When adding attributes to this list, be sure to also add them to
|
@@ -5269,8 +5680,9 @@
|
|
5269
5680
|
'defaultValue', 'defaultChecked', 'innerHTML', 'suppressContentEditableWarning', 'suppressHydrationWarning', 'style'].forEach(function (name) {
|
5270
5681
|
properties[name] = new PropertyInfoRecord(name, RESERVED, false, // mustUseProperty
|
5271
5682
|
name, // attributeName
|
5272
|
-
null
|
5273
|
-
|
5683
|
+
null, // attributeNamespace
|
5684
|
+
false);
|
5685
|
+
} // sanitizeURL
|
5274
5686
|
);
|
5275
5687
|
|
5276
5688
|
// A few React string attributes have a different name.
|
@@ -5281,8 +5693,9 @@
|
|
5281
5693
|
|
5282
5694
|
properties[name] = new PropertyInfoRecord(name, STRING, false, // mustUseProperty
|
5283
5695
|
attributeName, // attributeName
|
5284
|
-
null
|
5285
|
-
|
5696
|
+
null, // attributeNamespace
|
5697
|
+
false);
|
5698
|
+
} // sanitizeURL
|
5286
5699
|
);
|
5287
5700
|
|
5288
5701
|
// These are "enumerated" HTML attributes that accept "true" and "false".
|
@@ -5291,8 +5704,9 @@
|
|
5291
5704
|
['contentEditable', 'draggable', 'spellCheck', 'value'].forEach(function (name) {
|
5292
5705
|
properties[name] = new PropertyInfoRecord(name, BOOLEANISH_STRING, false, // mustUseProperty
|
5293
5706
|
name.toLowerCase(), // attributeName
|
5294
|
-
null
|
5295
|
-
|
5707
|
+
null, // attributeNamespace
|
5708
|
+
false);
|
5709
|
+
} // sanitizeURL
|
5296
5710
|
);
|
5297
5711
|
|
5298
5712
|
// These are "enumerated" SVG attributes that accept "true" and "false".
|
@@ -5302,21 +5716,23 @@
|
|
5302
5716
|
['autoReverse', 'externalResourcesRequired', 'focusable', 'preserveAlpha'].forEach(function (name) {
|
5303
5717
|
properties[name] = new PropertyInfoRecord(name, BOOLEANISH_STRING, false, // mustUseProperty
|
5304
5718
|
name, // attributeName
|
5305
|
-
null
|
5306
|
-
|
5719
|
+
null, // attributeNamespace
|
5720
|
+
false);
|
5721
|
+
} // sanitizeURL
|
5307
5722
|
);
|
5308
5723
|
|
5309
5724
|
// These are HTML boolean attributes.
|
5310
5725
|
['allowFullScreen', 'async',
|
5311
5726
|
// Note: there is a special case that prevents it from being written to the DOM
|
5312
5727
|
// on the client side because the browsers are inconsistent. Instead we call focus().
|
5313
|
-
'autoFocus', 'autoPlay', 'controls', 'default', 'defer', 'disabled', 'formNoValidate', 'hidden', 'loop', 'noModule', 'noValidate', 'open', 'playsInline', 'readOnly', 'required', 'reversed', 'scoped', 'seamless',
|
5728
|
+
'autoFocus', 'autoPlay', 'controls', 'default', 'defer', 'disabled', 'disablePictureInPicture', 'formNoValidate', 'hidden', 'loop', 'noModule', 'noValidate', 'open', 'playsInline', 'readOnly', 'required', 'reversed', 'scoped', 'seamless',
|
5314
5729
|
// Microdata
|
5315
5730
|
'itemScope'].forEach(function (name) {
|
5316
5731
|
properties[name] = new PropertyInfoRecord(name, BOOLEAN, false, // mustUseProperty
|
5317
5732
|
name.toLowerCase(), // attributeName
|
5318
|
-
null
|
5319
|
-
|
5733
|
+
null, // attributeNamespace
|
5734
|
+
false);
|
5735
|
+
} // sanitizeURL
|
5320
5736
|
);
|
5321
5737
|
|
5322
5738
|
// These are the few React props that we set as DOM properties
|
@@ -5327,8 +5743,9 @@
|
|
5327
5743
|
'multiple', 'muted', 'selected'].forEach(function (name) {
|
5328
5744
|
properties[name] = new PropertyInfoRecord(name, BOOLEAN, true, // mustUseProperty
|
5329
5745
|
name, // attributeName
|
5330
|
-
null
|
5331
|
-
|
5746
|
+
null, // attributeNamespace
|
5747
|
+
false);
|
5748
|
+
} // sanitizeURL
|
5332
5749
|
);
|
5333
5750
|
|
5334
5751
|
// These are HTML attributes that are "overloaded booleans": they behave like
|
@@ -5336,24 +5753,27 @@
|
|
5336
5753
|
['capture', 'download'].forEach(function (name) {
|
5337
5754
|
properties[name] = new PropertyInfoRecord(name, OVERLOADED_BOOLEAN, false, // mustUseProperty
|
5338
5755
|
name, // attributeName
|
5339
|
-
null
|
5340
|
-
|
5756
|
+
null, // attributeNamespace
|
5757
|
+
false);
|
5758
|
+
} // sanitizeURL
|
5341
5759
|
);
|
5342
5760
|
|
5343
5761
|
// These are HTML attributes that must be positive numbers.
|
5344
5762
|
['cols', 'rows', 'size', 'span'].forEach(function (name) {
|
5345
5763
|
properties[name] = new PropertyInfoRecord(name, POSITIVE_NUMERIC, false, // mustUseProperty
|
5346
5764
|
name, // attributeName
|
5347
|
-
null
|
5348
|
-
|
5765
|
+
null, // attributeNamespace
|
5766
|
+
false);
|
5767
|
+
} // sanitizeURL
|
5349
5768
|
);
|
5350
5769
|
|
5351
5770
|
// These are HTML attributes that must be numbers.
|
5352
5771
|
['rowSpan', 'start'].forEach(function (name) {
|
5353
5772
|
properties[name] = new PropertyInfoRecord(name, NUMERIC, false, // mustUseProperty
|
5354
5773
|
name.toLowerCase(), // attributeName
|
5355
|
-
null
|
5356
|
-
|
5774
|
+
null, // attributeNamespace
|
5775
|
+
false);
|
5776
|
+
} // sanitizeURL
|
5357
5777
|
);
|
5358
5778
|
|
5359
5779
|
var CAMELIZE = /[\-\:]([a-z])/g;
|
@@ -5369,23 +5789,26 @@
|
|
5369
5789
|
['accent-height', 'alignment-baseline', 'arabic-form', 'baseline-shift', 'cap-height', 'clip-path', 'clip-rule', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'dominant-baseline', 'enable-background', 'fill-opacity', 'fill-rule', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'glyph-name', 'glyph-orientation-horizontal', 'glyph-orientation-vertical', 'horiz-adv-x', 'horiz-origin-x', 'image-rendering', 'letter-spacing', 'lighting-color', 'marker-end', 'marker-mid', 'marker-start', 'overline-position', 'overline-thickness', 'paint-order', 'panose-1', 'pointer-events', 'rendering-intent', 'shape-rendering', 'stop-color', 'stop-opacity', 'strikethrough-position', 'strikethrough-thickness', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke-width', 'text-anchor', 'text-decoration', 'text-rendering', 'underline-position', 'underline-thickness', 'unicode-bidi', 'unicode-range', 'units-per-em', 'v-alphabetic', 'v-hanging', 'v-ideographic', 'v-mathematical', 'vector-effect', 'vert-adv-y', 'vert-origin-x', 'vert-origin-y', 'word-spacing', 'writing-mode', 'xmlns:xlink', 'x-height'].forEach(function (attributeName) {
|
5370
5790
|
var name = attributeName.replace(CAMELIZE, capitalize);
|
5371
5791
|
properties[name] = new PropertyInfoRecord(name, STRING, false, // mustUseProperty
|
5372
|
-
attributeName, null
|
5373
|
-
|
5792
|
+
attributeName, null, // attributeNamespace
|
5793
|
+
false);
|
5794
|
+
} // sanitizeURL
|
5374
5795
|
);
|
5375
5796
|
|
5376
5797
|
// String SVG attributes with the xlink namespace.
|
5377
|
-
['xlink:actuate', 'xlink:arcrole', 'xlink:
|
5798
|
+
['xlink:actuate', 'xlink:arcrole', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type'].forEach(function (attributeName) {
|
5378
5799
|
var name = attributeName.replace(CAMELIZE, capitalize);
|
5379
5800
|
properties[name] = new PropertyInfoRecord(name, STRING, false, // mustUseProperty
|
5380
|
-
attributeName, 'http://www.w3.org/1999/xlink');
|
5381
|
-
}
|
5801
|
+
attributeName, 'http://www.w3.org/1999/xlink', false);
|
5802
|
+
} // sanitizeURL
|
5803
|
+
);
|
5382
5804
|
|
5383
5805
|
// String SVG attributes with the xml namespace.
|
5384
5806
|
['xml:base', 'xml:lang', 'xml:space'].forEach(function (attributeName) {
|
5385
5807
|
var name = attributeName.replace(CAMELIZE, capitalize);
|
5386
5808
|
properties[name] = new PropertyInfoRecord(name, STRING, false, // mustUseProperty
|
5387
|
-
attributeName, 'http://www.w3.org/XML/1998/namespace');
|
5388
|
-
}
|
5809
|
+
attributeName, 'http://www.w3.org/XML/1998/namespace', false);
|
5810
|
+
} // sanitizeURL
|
5811
|
+
);
|
5389
5812
|
|
5390
5813
|
// These attribute exists both in HTML and SVG.
|
5391
5814
|
// The attribute name is case-sensitive in SVG so we can't just use
|
@@ -5393,10 +5816,59 @@
|
|
5393
5816
|
['tabIndex', 'crossOrigin'].forEach(function (attributeName) {
|
5394
5817
|
properties[attributeName] = new PropertyInfoRecord(attributeName, STRING, false, // mustUseProperty
|
5395
5818
|
attributeName.toLowerCase(), // attributeName
|
5396
|
-
null
|
5397
|
-
|
5819
|
+
null, // attributeNamespace
|
5820
|
+
false);
|
5821
|
+
} // sanitizeURL
|
5398
5822
|
);
|
5399
5823
|
|
5824
|
+
// These attributes accept URLs. These must not allow javascript: URLS.
|
5825
|
+
// These will also need to accept Trusted Types object in the future.
|
5826
|
+
var xlinkHref = 'xlinkHref';
|
5827
|
+
properties[xlinkHref] = new PropertyInfoRecord('xlinkHref', STRING, false, // mustUseProperty
|
5828
|
+
'xlink:href', 'http://www.w3.org/1999/xlink', true);
|
5829
|
+
|
5830
|
+
['src', 'href', 'action', 'formAction'].forEach(function (attributeName) {
|
5831
|
+
properties[attributeName] = new PropertyInfoRecord(attributeName, STRING, false, // mustUseProperty
|
5832
|
+
attributeName.toLowerCase(), // attributeName
|
5833
|
+
null, // attributeNamespace
|
5834
|
+
true);
|
5835
|
+
} // sanitizeURL
|
5836
|
+
);
|
5837
|
+
|
5838
|
+
var ReactDebugCurrentFrame$2 = null;
|
5839
|
+
{
|
5840
|
+
ReactDebugCurrentFrame$2 = ReactSharedInternals.ReactDebugCurrentFrame;
|
5841
|
+
}
|
5842
|
+
|
5843
|
+
// A javascript: URL can contain leading C0 control or \u0020 SPACE,
|
5844
|
+
// and any newline or tab are filtered out as if they're not part of the URL.
|
5845
|
+
// https://url.spec.whatwg.org/#url-parsing
|
5846
|
+
// Tab or newline are defined as \r\n\t:
|
5847
|
+
// https://infra.spec.whatwg.org/#ascii-tab-or-newline
|
5848
|
+
// A C0 control is a code point in the range \u0000 NULL to \u001F
|
5849
|
+
// INFORMATION SEPARATOR ONE, inclusive:
|
5850
|
+
// https://infra.spec.whatwg.org/#c0-control-or-space
|
5851
|
+
|
5852
|
+
/* eslint-disable max-len */
|
5853
|
+
var isJavaScriptProtocol = /^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*\:/i;
|
5854
|
+
|
5855
|
+
var didWarn = false;
|
5856
|
+
|
5857
|
+
function sanitizeURL(url) {
|
5858
|
+
if (disableJavaScriptURLs) {
|
5859
|
+
(function () {
|
5860
|
+
if (!!isJavaScriptProtocol.test(url)) {
|
5861
|
+
{
|
5862
|
+
throw ReactError(Error('React has blocked a javascript: URL as a security precaution.' + (ReactDebugCurrentFrame$2.getStackAddendum())));
|
5863
|
+
}
|
5864
|
+
}
|
5865
|
+
})();
|
5866
|
+
} else if (true && !didWarn && isJavaScriptProtocol.test(url)) {
|
5867
|
+
didWarn = true;
|
5868
|
+
warning$1(false, 'A future version of React will block javascript: URLs as a security precaution. ' + 'Use event handlers instead if you can. If you need to generate unsafe HTML try ' + 'using dangerouslySetInnerHTML instead. React was passed %s.', JSON.stringify(url));
|
5869
|
+
}
|
5870
|
+
}
|
5871
|
+
|
5400
5872
|
// code copied and modified from escape-html
|
5401
5873
|
/**
|
5402
5874
|
* Module variables.
|
@@ -5528,6 +6000,10 @@
|
|
5528
6000
|
if (type === BOOLEAN || type === OVERLOADED_BOOLEAN && value === true) {
|
5529
6001
|
return attributeName + '=""';
|
5530
6002
|
} else {
|
6003
|
+
if (propertyInfo.sanitizeURL) {
|
6004
|
+
value = '' + value;
|
6005
|
+
sanitizeURL(value);
|
6006
|
+
}
|
5531
6007
|
return attributeName + '=' + quoteAttributeValueForBrowser(value);
|
5532
6008
|
}
|
5533
6009
|
} else if (isAttributeNameSafe(name)) {
|
@@ -5578,7 +6054,13 @@
|
|
5578
6054
|
var currentHookNameInDev = void 0;
|
5579
6055
|
|
5580
6056
|
function resolveCurrentlyRenderingComponent() {
|
5581
|
-
|
6057
|
+
(function () {
|
6058
|
+
if (!(currentlyRenderingComponent !== null)) {
|
6059
|
+
{
|
6060
|
+
throw ReactError(Error('Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://fb.me/react-invalid-hook-call for tips about how to debug and fix this problem.'));
|
6061
|
+
}
|
6062
|
+
}
|
6063
|
+
})();
|
5582
6064
|
{
|
5583
6065
|
!!isInHookUserCodeInDev ? warning$1(false, 'Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. ' + 'You can only call Hooks at the top level of your React function. ' + 'For more information, see ' + 'https://fb.me/rules-of-hooks') : void 0;
|
5584
6066
|
}
|
@@ -5611,7 +6093,13 @@
|
|
5611
6093
|
|
5612
6094
|
function createHook() {
|
5613
6095
|
if (numberOfReRenders > 0) {
|
5614
|
-
|
6096
|
+
(function () {
|
6097
|
+
{
|
6098
|
+
{
|
6099
|
+
throw ReactError(Error('Rendered more hooks than during the previous render'));
|
6100
|
+
}
|
6101
|
+
}
|
6102
|
+
})();
|
5615
6103
|
}
|
5616
6104
|
return {
|
5617
6105
|
memoizedState: null,
|
@@ -5845,7 +6333,13 @@
|
|
5845
6333
|
}
|
5846
6334
|
|
5847
6335
|
function dispatchAction(componentIdentity, queue, action) {
|
5848
|
-
|
6336
|
+
(function () {
|
6337
|
+
if (!(numberOfReRenders < RE_RENDER_LIMIT)) {
|
6338
|
+
{
|
6339
|
+
throw ReactError(Error('Too many re-renders. React limits the number of renders to prevent an infinite loop.'));
|
6340
|
+
}
|
6341
|
+
}
|
6342
|
+
})();
|
5849
6343
|
|
5850
6344
|
if (componentIdentity === currentlyRenderingComponent) {
|
5851
6345
|
// This is a render phase update. Stash it in a lazily-created map of
|
@@ -5882,6 +6376,13 @@
|
|
5882
6376
|
return callback;
|
5883
6377
|
}
|
5884
6378
|
|
6379
|
+
function useResponder(responder, props) {
|
6380
|
+
return {
|
6381
|
+
props: props,
|
6382
|
+
responder: responder
|
6383
|
+
};
|
6384
|
+
}
|
6385
|
+
|
5885
6386
|
function noop() {}
|
5886
6387
|
|
5887
6388
|
var currentThreadID = 0;
|
@@ -5904,7 +6405,8 @@
|
|
5904
6405
|
// Effects are not run in the server environment.
|
5905
6406
|
useEffect: noop,
|
5906
6407
|
// Debugging effect
|
5907
|
-
useDebugValue: noop
|
6408
|
+
useDebugValue: noop,
|
6409
|
+
useResponder: useResponder
|
5908
6410
|
};
|
5909
6411
|
|
5910
6412
|
var HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';
|
@@ -5942,14 +6444,14 @@
|
|
5942
6444
|
return parentNamespace;
|
5943
6445
|
}
|
5944
6446
|
|
5945
|
-
var ReactDebugCurrentFrame$
|
6447
|
+
var ReactDebugCurrentFrame$3 = null;
|
5946
6448
|
|
5947
6449
|
var ReactControlledValuePropTypes = {
|
5948
6450
|
checkPropTypes: null
|
5949
6451
|
};
|
5950
6452
|
|
5951
6453
|
{
|
5952
|
-
ReactDebugCurrentFrame$
|
6454
|
+
ReactDebugCurrentFrame$3 = ReactSharedInternals.ReactDebugCurrentFrame;
|
5953
6455
|
|
5954
6456
|
var hasReadOnlyValue = {
|
5955
6457
|
button: true,
|
@@ -5963,13 +6465,13 @@
|
|
5963
6465
|
|
5964
6466
|
var propTypes = {
|
5965
6467
|
value: function (props, propName, componentName) {
|
5966
|
-
if (hasReadOnlyValue[props.type] || props.onChange || props.readOnly || props.disabled || props[propName] == null) {
|
6468
|
+
if (hasReadOnlyValue[props.type] || props.onChange || props.readOnly || props.disabled || props[propName] == null || enableFlareAPI && props.listeners) {
|
5967
6469
|
return null;
|
5968
6470
|
}
|
5969
6471
|
return new Error('You provided a `value` prop to a form field without an ' + '`onChange` handler. This will render a read-only field. If ' + 'the field should be mutable use `defaultValue`. Otherwise, ' + 'set either `onChange` or `readOnly`.');
|
5970
6472
|
},
|
5971
6473
|
checked: function (props, propName, componentName) {
|
5972
|
-
if (props.onChange || props.readOnly || props.disabled || props[propName] == null) {
|
6474
|
+
if (props.onChange || props.readOnly || props.disabled || props[propName] == null || enableFlareAPI && props.listeners) {
|
5973
6475
|
return null;
|
5974
6476
|
}
|
5975
6477
|
return new Error('You provided a `checked` prop to a form field without an ' + '`onChange` handler. This will render a read-only field. If ' + 'the field should be mutable use `defaultChecked`. Otherwise, ' + 'set either `onChange` or `readOnly`.');
|
@@ -5981,7 +6483,7 @@
|
|
5981
6483
|
* this outside of the ReactDOM controlled form components.
|
5982
6484
|
*/
|
5983
6485
|
ReactControlledValuePropTypes.checkPropTypes = function (tagName, props) {
|
5984
|
-
checkPropTypes(propTypes, props, 'prop', tagName, ReactDebugCurrentFrame$
|
6486
|
+
checkPropTypes(propTypes, props, 'prop', tagName, ReactDebugCurrentFrame$3.getStackAddendum);
|
5985
6487
|
};
|
5986
6488
|
}
|
5987
6489
|
|
@@ -6018,9 +6520,9 @@
|
|
6018
6520
|
// or add stack by default to invariants where possible.
|
6019
6521
|
var HTML = '__html';
|
6020
6522
|
|
6021
|
-
var ReactDebugCurrentFrame$
|
6523
|
+
var ReactDebugCurrentFrame$4 = null;
|
6022
6524
|
{
|
6023
|
-
ReactDebugCurrentFrame$
|
6525
|
+
ReactDebugCurrentFrame$4 = ReactSharedInternals.ReactDebugCurrentFrame;
|
6024
6526
|
}
|
6025
6527
|
|
6026
6528
|
function assertValidProps(tag, props) {
|
@@ -6029,16 +6531,40 @@
|
|
6029
6531
|
}
|
6030
6532
|
// Note the use of `==` which checks for null or undefined.
|
6031
6533
|
if (voidElementTags[tag]) {
|
6032
|
-
|
6534
|
+
(function () {
|
6535
|
+
if (!(props.children == null && props.dangerouslySetInnerHTML == null)) {
|
6536
|
+
{
|
6537
|
+
throw ReactError(Error(tag + ' is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.' + (ReactDebugCurrentFrame$4.getStackAddendum())));
|
6538
|
+
}
|
6539
|
+
}
|
6540
|
+
})();
|
6033
6541
|
}
|
6034
6542
|
if (props.dangerouslySetInnerHTML != null) {
|
6035
|
-
|
6036
|
-
|
6543
|
+
(function () {
|
6544
|
+
if (!(props.children == null)) {
|
6545
|
+
{
|
6546
|
+
throw ReactError(Error('Can only set one of `children` or `props.dangerouslySetInnerHTML`.'));
|
6547
|
+
}
|
6548
|
+
}
|
6549
|
+
})();
|
6550
|
+
(function () {
|
6551
|
+
if (!(typeof props.dangerouslySetInnerHTML === 'object' && HTML in props.dangerouslySetInnerHTML)) {
|
6552
|
+
{
|
6553
|
+
throw ReactError(Error('`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://fb.me/react-invariant-dangerously-set-inner-html for more information.'));
|
6554
|
+
}
|
6555
|
+
}
|
6556
|
+
})();
|
6037
6557
|
}
|
6038
6558
|
{
|
6039
6559
|
!(props.suppressContentEditableWarning || !props.contentEditable || props.children == null) ? warning$1(false, 'A component is `contentEditable` and contains `children` managed by ' + 'React. It is now your responsibility to guarantee that none of ' + 'those nodes are unexpectedly modified or duplicated. This is ' + 'probably not intentional.') : void 0;
|
6040
6560
|
}
|
6041
|
-
|
6561
|
+
(function () {
|
6562
|
+
if (!(props.style == null || typeof props.style === 'object')) {
|
6563
|
+
{
|
6564
|
+
throw ReactError(Error('The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + \'em\'}} when using JSX.' + (ReactDebugCurrentFrame$4.getStackAddendum())));
|
6565
|
+
}
|
6566
|
+
}
|
6567
|
+
})();
|
6042
6568
|
}
|
6043
6569
|
|
6044
6570
|
/**
|
@@ -6539,6 +7065,7 @@
|
|
6539
7065
|
defer: 'defer',
|
6540
7066
|
dir: 'dir',
|
6541
7067
|
disabled: 'disabled',
|
7068
|
+
disablepictureinpicture: 'disablePictureInPicture',
|
6542
7069
|
download: 'download',
|
6543
7070
|
draggable: 'draggable',
|
6544
7071
|
enctype: 'encType',
|
@@ -7245,6 +7772,7 @@
|
|
7245
7772
|
var didWarnInvalidOptionChildren = false;
|
7246
7773
|
var didWarnAboutNoopUpdateForComponent = {};
|
7247
7774
|
var didWarnAboutBadClass = {};
|
7775
|
+
var didWarnAboutModulePatternComponent = {};
|
7248
7776
|
var didWarnAboutDeprecatedWillMount = {};
|
7249
7777
|
var didWarnAboutUndefinedDerivedState = {};
|
7250
7778
|
var didWarnAboutUninitializedState = {};
|
@@ -7262,7 +7790,13 @@
|
|
7262
7790
|
var validatedTagCache = {};
|
7263
7791
|
function validateDangerousTag(tag) {
|
7264
7792
|
if (!validatedTagCache.hasOwnProperty(tag)) {
|
7265
|
-
|
7793
|
+
(function () {
|
7794
|
+
if (!VALID_TAG_REGEX.test(tag)) {
|
7795
|
+
{
|
7796
|
+
throw ReactError(Error('Invalid tag: ' + tag));
|
7797
|
+
}
|
7798
|
+
}
|
7799
|
+
})();
|
7266
7800
|
validatedTagCache[tag] = true;
|
7267
7801
|
}
|
7268
7802
|
}
|
@@ -7292,7 +7826,7 @@
|
|
7292
7826
|
}
|
7293
7827
|
}
|
7294
7828
|
if (styleValue != null) {
|
7295
|
-
serialized += delimiter + processStyleName(styleName) + ':';
|
7829
|
+
serialized += delimiter + (isCustomProperty ? styleName : processStyleName(styleName)) + ':';
|
7296
7830
|
serialized += dangerousStyleValue(styleName, styleValue, isCustomProperty);
|
7297
7831
|
|
7298
7832
|
delimiter = ';';
|
@@ -7388,6 +7922,9 @@
|
|
7388
7922
|
if (!hasOwnProperty.call(props, propKey)) {
|
7389
7923
|
continue;
|
7390
7924
|
}
|
7925
|
+
if (enableFlareAPI && propKey === 'listeners') {
|
7926
|
+
continue;
|
7927
|
+
}
|
7391
7928
|
var propValue = props[propKey];
|
7392
7929
|
if (propValue == null) {
|
7393
7930
|
continue;
|
@@ -7422,7 +7959,13 @@
|
|
7422
7959
|
|
7423
7960
|
function validateRenderResult(child, type) {
|
7424
7961
|
if (child === undefined) {
|
7425
|
-
|
7962
|
+
(function () {
|
7963
|
+
{
|
7964
|
+
{
|
7965
|
+
throw ReactError(Error((getComponentName(type) || 'Component') + '(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.'));
|
7966
|
+
}
|
7967
|
+
}
|
7968
|
+
})();
|
7426
7969
|
}
|
7427
7970
|
}
|
7428
7971
|
|
@@ -7442,7 +7985,8 @@
|
|
7442
7985
|
|
7443
7986
|
// Extra closure so queue and replace can be captured properly
|
7444
7987
|
function processChild(element, Component) {
|
7445
|
-
var
|
7988
|
+
var isClass = shouldConstruct(Component);
|
7989
|
+
var publicContext = processContext(Component, context, threadID, isClass);
|
7446
7990
|
|
7447
7991
|
var queue = [];
|
7448
7992
|
var replace = false;
|
@@ -7470,7 +8014,7 @@
|
|
7470
8014
|
};
|
7471
8015
|
|
7472
8016
|
var inst = void 0;
|
7473
|
-
if (
|
8017
|
+
if (isClass) {
|
7474
8018
|
inst = new Component(element.props, publicContext, updater);
|
7475
8019
|
|
7476
8020
|
if (typeof Component.getDerivedStateFromProps === 'function') {
|
@@ -7521,6 +8065,14 @@
|
|
7521
8065
|
validateRenderResult(child, Component);
|
7522
8066
|
return;
|
7523
8067
|
}
|
8068
|
+
|
8069
|
+
{
|
8070
|
+
var _componentName3 = getComponentName(Component) || 'Unknown';
|
8071
|
+
if (!didWarnAboutModulePatternComponent[_componentName3]) {
|
8072
|
+
warningWithoutStack$1(false, 'The <%s /> component appears to be a function component that returns a class instance. ' + 'Change %s to a class that extends React.Component instead. ' + "If you can't use a class try assigning the prototype on the function as a workaround. " + "`%s.prototype = React.Component.prototype`. Don't use an arrow function since it " + 'cannot be called with `new` by React.', _componentName3, _componentName3, _componentName3);
|
8073
|
+
didWarnAboutModulePatternComponent[_componentName3] = true;
|
8074
|
+
}
|
8075
|
+
}
|
7524
8076
|
}
|
7525
8077
|
|
7526
8078
|
inst.props = element.props;
|
@@ -7535,11 +8087,13 @@
|
|
7535
8087
|
if (typeof inst.componentWillMount === 'function') {
|
7536
8088
|
{
|
7537
8089
|
if (warnAboutDeprecatedLifecycles && inst.componentWillMount.__suppressDeprecationWarning !== true) {
|
7538
|
-
var
|
8090
|
+
var _componentName4 = getComponentName(Component) || 'Unknown';
|
7539
8091
|
|
7540
|
-
if (!didWarnAboutDeprecatedWillMount[
|
7541
|
-
lowPriorityWarning$1(false,
|
7542
|
-
|
8092
|
+
if (!didWarnAboutDeprecatedWillMount[_componentName4]) {
|
8093
|
+
lowPriorityWarning$1(false,
|
8094
|
+
// keep this warning in sync with ReactStrictModeWarning.js
|
8095
|
+
'componentWillMount has been renamed, and is not recommended for use. ' + 'See https://fb.me/react-async-component-lifecycle-hooks for details.\n\n' + '* Move code from componentWillMount to componentDidMount (preferred in most cases) ' + 'or the constructor.\n' + '\nPlease update the following components: %s', _componentName4);
|
8096
|
+
didWarnAboutDeprecatedWillMount[_componentName4] = true;
|
7543
8097
|
}
|
7544
8098
|
}
|
7545
8099
|
}
|
@@ -7596,19 +8150,34 @@
|
|
7596
8150
|
validateRenderResult(child, Component);
|
7597
8151
|
|
7598
8152
|
var childContext = void 0;
|
7599
|
-
if (
|
7600
|
-
|
7601
|
-
|
7602
|
-
|
7603
|
-
|
7604
|
-
!(contextKey in childContextTypes) ? invariant(false, '%s.getChildContext(): key "%s" is not defined in childContextTypes.', getComponentName(Component) || 'Unknown', contextKey) : void 0;
|
8153
|
+
if (disableLegacyContext) {
|
8154
|
+
{
|
8155
|
+
var childContextTypes = Component.childContextTypes;
|
8156
|
+
if (childContextTypes !== undefined) {
|
8157
|
+
warningWithoutStack$1(false, '%s uses the legacy childContextTypes API which is no longer supported. ' + 'Use React.createContext() instead.', getComponentName(Component) || 'Unknown');
|
7605
8158
|
}
|
7606
|
-
} else {
|
7607
|
-
warningWithoutStack$1(false, '%s.getChildContext(): childContextTypes must be defined in order to ' + 'use getChildContext().', getComponentName(Component) || 'Unknown');
|
7608
8159
|
}
|
7609
|
-
}
|
7610
|
-
|
7611
|
-
|
8160
|
+
} else {
|
8161
|
+
if (typeof inst.getChildContext === 'function') {
|
8162
|
+
var _childContextTypes = Component.childContextTypes;
|
8163
|
+
if (typeof _childContextTypes === 'object') {
|
8164
|
+
childContext = inst.getChildContext();
|
8165
|
+
for (var contextKey in childContext) {
|
8166
|
+
(function () {
|
8167
|
+
if (!(contextKey in _childContextTypes)) {
|
8168
|
+
{
|
8169
|
+
throw ReactError(Error((getComponentName(Component) || 'Unknown') + '.getChildContext(): key "' + contextKey + '" is not defined in childContextTypes.'));
|
8170
|
+
}
|
8171
|
+
}
|
8172
|
+
})();
|
8173
|
+
}
|
8174
|
+
} else {
|
8175
|
+
warningWithoutStack$1(false, '%s.getChildContext(): childContextTypes must be defined in order to ' + 'use getChildContext().', getComponentName(Component) || 'Unknown');
|
8176
|
+
}
|
8177
|
+
}
|
8178
|
+
if (childContext) {
|
8179
|
+
context = _assign({}, context, childContext);
|
8180
|
+
}
|
7612
8181
|
}
|
7613
8182
|
}
|
7614
8183
|
return { child: child, context: context };
|
@@ -7764,8 +8333,15 @@
|
|
7764
8333
|
suspended = false;
|
7765
8334
|
// If rendering was suspended at this boundary, render the fallbackFrame
|
7766
8335
|
var _fallbackFrame = frame.fallbackFrame;
|
7767
|
-
|
8336
|
+
(function () {
|
8337
|
+
if (!_fallbackFrame) {
|
8338
|
+
{
|
8339
|
+
throw ReactError(Error('suspense fallback not found, something is broken'));
|
8340
|
+
}
|
8341
|
+
}
|
8342
|
+
})();
|
7768
8343
|
this.stack.push(_fallbackFrame);
|
8344
|
+
out[this.suspenseDepth] += '<!--$!-->';
|
7769
8345
|
// Skip flushing output since we're switching to the fallback
|
7770
8346
|
continue;
|
7771
8347
|
} else {
|
@@ -7838,9 +8414,21 @@
|
|
7838
8414
|
if (nextChild != null && nextChild.$$typeof != null) {
|
7839
8415
|
// Catch unexpected special types early.
|
7840
8416
|
var $$typeof = nextChild.$$typeof;
|
7841
|
-
|
8417
|
+
(function () {
|
8418
|
+
if (!($$typeof !== REACT_PORTAL_TYPE)) {
|
8419
|
+
{
|
8420
|
+
throw ReactError(Error('Portals are not currently supported by the server renderer. Render them conditionally so that they only appear on the client render.'));
|
8421
|
+
}
|
8422
|
+
}
|
8423
|
+
})();
|
7842
8424
|
// Catch-all to prevent an infinite loop if React.Children.toArray() supports some new type.
|
7843
|
-
|
8425
|
+
(function () {
|
8426
|
+
{
|
8427
|
+
{
|
8428
|
+
throw ReactError(Error('Unknown element-like object type: ' + $$typeof.toString() + '. This is likely a bug in React. Please file an issue.'));
|
8429
|
+
}
|
8430
|
+
}
|
8431
|
+
})();
|
7844
8432
|
}
|
7845
8433
|
var nextChildren = toArray(nextChild);
|
7846
8434
|
var frame = {
|
@@ -7869,6 +8457,7 @@
|
|
7869
8457
|
case REACT_STRICT_MODE_TYPE:
|
7870
8458
|
case REACT_CONCURRENT_MODE_TYPE:
|
7871
8459
|
case REACT_PROFILER_TYPE:
|
8460
|
+
case REACT_SUSPENSE_LIST_TYPE:
|
7872
8461
|
case REACT_FRAGMENT_TYPE:
|
7873
8462
|
{
|
7874
8463
|
var _nextChildren = toArray(nextChild.props.children);
|
@@ -7915,8 +8504,7 @@
|
|
7915
8504
|
children: fallbackChildren,
|
7916
8505
|
childIndex: 0,
|
7917
8506
|
context: context,
|
7918
|
-
footer: ''
|
7919
|
-
out: ''
|
8507
|
+
footer: '<!--/$-->'
|
7920
8508
|
};
|
7921
8509
|
var _frame2 = {
|
7922
8510
|
fallbackFrame: _fallbackFrame2,
|
@@ -7935,7 +8523,13 @@
|
|
7935
8523
|
this.suspenseDepth++;
|
7936
8524
|
return '<!--$-->';
|
7937
8525
|
} else {
|
7938
|
-
|
8526
|
+
(function () {
|
8527
|
+
{
|
8528
|
+
{
|
8529
|
+
throw ReactError(Error('ReactDOMServer does not yet support Suspense.'));
|
8530
|
+
}
|
8531
|
+
}
|
8532
|
+
})();
|
7939
8533
|
}
|
7940
8534
|
}
|
7941
8535
|
// eslint-disable-next-line-no-fallthrough
|
@@ -8052,8 +8646,46 @@
|
|
8052
8646
|
this.stack.push(_frame7);
|
8053
8647
|
return '';
|
8054
8648
|
}
|
8649
|
+
// eslint-disable-next-line-no-fallthrough
|
8650
|
+
case REACT_FUNDAMENTAL_TYPE:
|
8651
|
+
{
|
8652
|
+
if (enableFundamentalAPI) {
|
8653
|
+
var fundamentalImpl = elementType.impl;
|
8654
|
+
var open = fundamentalImpl.getServerSideString(null, nextElement.props);
|
8655
|
+
var getServerSideStringClose = fundamentalImpl.getServerSideStringClose;
|
8656
|
+
var close = getServerSideStringClose !== undefined ? getServerSideStringClose(null, nextElement.props) : '';
|
8657
|
+
var _nextChildren8 = fundamentalImpl.reconcileChildren !== false ? toArray(nextChild.props.children) : [];
|
8658
|
+
var _frame8 = {
|
8659
|
+
type: null,
|
8660
|
+
domNamespace: parentNamespace,
|
8661
|
+
children: _nextChildren8,
|
8662
|
+
childIndex: 0,
|
8663
|
+
context: context,
|
8664
|
+
footer: close
|
8665
|
+
};
|
8666
|
+
{
|
8667
|
+
_frame8.debugElementStack = [];
|
8668
|
+
}
|
8669
|
+
this.stack.push(_frame8);
|
8670
|
+
return open;
|
8671
|
+
}
|
8672
|
+
(function () {
|
8673
|
+
{
|
8674
|
+
{
|
8675
|
+
throw ReactError(Error('ReactDOMServer does not yet support the fundamental API.'));
|
8676
|
+
}
|
8677
|
+
}
|
8678
|
+
})();
|
8679
|
+
}
|
8680
|
+
// eslint-disable-next-line-no-fallthrough
|
8055
8681
|
case REACT_LAZY_TYPE:
|
8056
|
-
|
8682
|
+
(function () {
|
8683
|
+
{
|
8684
|
+
{
|
8685
|
+
throw ReactError(Error('ReactDOMServer does not yet support lazy-loaded components.'));
|
8686
|
+
}
|
8687
|
+
}
|
8688
|
+
})();
|
8057
8689
|
}
|
8058
8690
|
}
|
8059
8691
|
|
@@ -8068,7 +8700,13 @@
|
|
8068
8700
|
info += '\n\nCheck the render method of `' + ownerName + '`.';
|
8069
8701
|
}
|
8070
8702
|
}
|
8071
|
-
|
8703
|
+
(function () {
|
8704
|
+
{
|
8705
|
+
{
|
8706
|
+
throw ReactError(Error('Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: ' + (elementType == null ? elementType : typeof elementType) + '.' + info));
|
8707
|
+
}
|
8708
|
+
}
|
8709
|
+
})();
|
8072
8710
|
}
|
8073
8711
|
};
|
8074
8712
|
|
@@ -8131,9 +8769,21 @@
|
|
8131
8769
|
{
|
8132
8770
|
warning$1(false, 'Use the `defaultValue` or `value` props instead of setting ' + 'children on <textarea>.');
|
8133
8771
|
}
|
8134
|
-
|
8772
|
+
(function () {
|
8773
|
+
if (!(defaultValue == null)) {
|
8774
|
+
{
|
8775
|
+
throw ReactError(Error('If you supply `defaultValue` on a <textarea>, do not pass children.'));
|
8776
|
+
}
|
8777
|
+
}
|
8778
|
+
})();
|
8135
8779
|
if (Array.isArray(textareaChildren)) {
|
8136
|
-
|
8780
|
+
(function () {
|
8781
|
+
if (!(textareaChildren.length <= 1)) {
|
8782
|
+
{
|
8783
|
+
throw ReactError(Error('<textarea> can only have at most one child.'));
|
8784
|
+
}
|
8785
|
+
}
|
8786
|
+
})();
|
8137
8787
|
textareaChildren = textareaChildren[0];
|
8138
8788
|
}
|
8139
8789
|
|
@@ -8294,11 +8944,23 @@
|
|
8294
8944
|
}
|
8295
8945
|
|
8296
8946
|
function renderToNodeStream() {
|
8297
|
-
|
8947
|
+
(function () {
|
8948
|
+
{
|
8949
|
+
{
|
8950
|
+
throw ReactError(Error('ReactDOMServer.renderToNodeStream(): The streaming API is not available in the browser. Use ReactDOMServer.renderToString() instead.'));
|
8951
|
+
}
|
8952
|
+
}
|
8953
|
+
})();
|
8298
8954
|
}
|
8299
8955
|
|
8300
8956
|
function renderToStaticNodeStream() {
|
8301
|
-
|
8957
|
+
(function () {
|
8958
|
+
{
|
8959
|
+
{
|
8960
|
+
throw ReactError(Error('ReactDOMServer.renderToStaticNodeStream(): The streaming API is not available in the browser. Use ReactDOMServer.renderToStaticMarkup() instead.'));
|
8961
|
+
}
|
8962
|
+
}
|
8963
|
+
})();
|
8302
8964
|
}
|
8303
8965
|
|
8304
8966
|
// Note: when changing this, also consider https://github.com/facebook/react/issues/11526
|