graphiql-rails 1.4.6 → 1.4.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/graphiql/rails/application.js +1 -1
- data/app/assets/javascripts/graphiql/rails/{graphiql-0.11.9.js → graphiql-0.11.10.js} +1 -1
- data/app/assets/javascripts/graphiql/rails/react-16.0.0.js +352 -55
- data/app/assets/javascripts/graphiql/rails/react-dom-16.0.0.js +1649 -443
- data/app/assets/stylesheets/graphiql/rails/application.css +1 -1
- data/app/assets/stylesheets/graphiql/rails/{graphiql-0.11.9.css → graphiql-0.11.10.css} +0 -0
- data/lib/graphiql/rails/version.rb +1 -1
- data/test/dummy/log/test.log +54 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/04/04s93Tzn3Xqp27RIPbk2JW4EwFJ92GRHxAYQBN1VaXI.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/5b/5bhY6WKi3LOKFSpOcjAhFLluKpH8Xa9jdyNENH4tuU4.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/7B/7BaLGu15JbZ67DHzBkca1NG_IR1fhlT8DO90PRE5SNM.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/7z/7zyPqEZVFv5eme1L8Ohq6irryEe_c7rbMOu4VqGay1U.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/EV/EVWaEay9drlzZPTuMUk4TcUNZJMtlWWeLhaaO9JJZjg.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/EV/EVijhtV3qWCnXrJFIq-iVWGc64v2dA__sdr56TQYCSk.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/FB/FBNtr3b9clNS21vaPpPMRInEQ7kdmmpR9_ryPdGh6w0.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/GN/GNlsWA_sPYrTKNioToykgcuxYaYs3i-fNUvp46T2TqI.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/HF/HFDxddNOXrzxty0N2BJcntkB9xohfW4UYyQaPbR9TFo.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/HI/HIyUohMcYwHkGtck1ZKdxersZXMYsV8cGRbosYFIP1o.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/LF/LFqr3zNoPXj4i8azJatXfhKitCHvaJW9TZLqCVt9QVE.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/LU/LU0Ubj6_8OMcF5fL-zqxXcjU3mRi93-ZpFGJHwvUGfw.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ou/OuplBYxOhZFXuhKhSBH9eCHNTDNdS49VgNZ-JmcrbY4.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Q_/Q_iHaipwEjUmrRm5iFo24-4dqwl93je4AFivWazf2KU.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Rw/RW6uS8uCcZkHdRl2LON6z_d_Z2se9Pewf73vwD_q3Ek.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/UO/UOdiJSX4CRds4wn8qz631wa3Of5BmZMJfB7F0-8FIJY.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/V-/V-hZ6m4_ZwIdj4upwYPz69NdrL43nZlaGZUirXK7_7k.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/WX/WX5ywUkiKM_R0MV4XsNYkFPa-40XbWvsewiG-fZdJyY.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/YS/YS0y5dVS9Y6jAFfzOWLhnQQz5ZdCQN9UGHQAIYyTZE0.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/cF/cFSqaWNl1N78GziUAvtxvdUGx-Uz2tPl0pO7s4xdLbg.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/cm/cm1WOYI9w3uhkNu4Vb-kEOMneN7k0pXLnojjROiB9eI.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/cw/cwa_bniOlVHoF7FyHKeX8x_qO49-hOA9eayBSno-g7Q.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/d-/d-vlHCxMOwTCsoMm5RJOU__--UZ92MQCSHKcX_Rn74g.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ds/dsUc8MYjZLb1U4G-ZGH-qF1dNwPuP2E-ZBEBStqgp_8.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/eG/eGaxh4Y7whkTSuX4sU8qBgRDw3p13trMMi1HKtu-P8Y.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ke/ke-ZvnGtZDuEhoW6xWTIZuTbky_xNgwKpcSOS5uGhwc.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/kr/krJuIicueAPd9Y2zaquz99Ih1rMCyMuwgX0Baz8-Qx0.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/l1/l169rNZ_HA-2QeoeEkH9EKed4Y6EM6BkysX0gRwcTa0.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/lV/lV0_8GAp9W7BkTcvZ7p3Ht9e5utCCqfDsAn2jwRFoiY.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/mE/mEpxSHG0H2wBmMqZhuxoNnT0RM-dt-1qtOOdLVtxJT4.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/mp/mpJRIM20i6M6EBGL4RR1Cc5_WfZITiRsqF18FLEWuPg.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/n5/n5xv2MlwapYuZyH3iVyFUtsZl_rPXEKTiH65TnftKXQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/oo/ooqsnFa1pVxDKucHBGRjSn5q5n_BQ2_6bomZlEBrZJw.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/pt/ptSZ8wxSLerQdTXe07GS9bM2WGd76vpEBeKnAhWxRBI.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/vK/vK4VG3ZhZCj-pNuZ1GgShrmUDE-Ldxz4x1AZKPiEv6M.cache +1 -0
- metadata +72 -4
@@ -6,31 +6,12 @@
|
|
6
6
|
* This source code is licensed under the MIT license found in the
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
8
8
|
*/
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
(
|
14
|
-
|
15
|
-
'use strict';
|
16
|
-
|
17
|
-
var react = require('react');
|
18
|
-
var invariant = require('fbjs/lib/invariant');
|
19
|
-
var ExecutionEnvironment = require('fbjs/lib/ExecutionEnvironment');
|
20
|
-
var _assign = require('object-assign');
|
21
|
-
var EventListener = require('fbjs/lib/EventListener');
|
22
|
-
var require$$0 = require('fbjs/lib/warning');
|
23
|
-
var hyphenateStyleName = require('fbjs/lib/hyphenateStyleName');
|
24
|
-
var emptyFunction = require('fbjs/lib/emptyFunction');
|
25
|
-
var camelizeStyleName = require('fbjs/lib/camelizeStyleName');
|
26
|
-
var performanceNow = require('fbjs/lib/performanceNow');
|
27
|
-
var propTypes = require('prop-types');
|
28
|
-
var emptyObject = require('fbjs/lib/emptyObject');
|
29
|
-
var checkPropTypes = require('prop-types/checkPropTypes');
|
30
|
-
var shallowEqual = require('fbjs/lib/shallowEqual');
|
31
|
-
var containsNode = require('fbjs/lib/containsNode');
|
32
|
-
var focusNode = require('fbjs/lib/focusNode');
|
33
|
-
var getActiveElement = require('fbjs/lib/getActiveElement');
|
9
|
+
|
10
|
+
(function (global, factory) {
|
11
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react')) :
|
12
|
+
typeof define === 'function' && define.amd ? define(['react'], factory) :
|
13
|
+
(global.ReactDOM = factory(global.React));
|
14
|
+
}(this, (function (require$$0) { 'use strict';
|
34
15
|
|
35
16
|
/**
|
36
17
|
* Copyright (c) 2013-present, Facebook, Inc.
|
@@ -42,6 +23,58 @@ var getActiveElement = require('fbjs/lib/getActiveElement');
|
|
42
23
|
*
|
43
24
|
*/
|
44
25
|
|
26
|
+
/**
|
27
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
28
|
+
*
|
29
|
+
* This source code is licensed under the MIT license found in the
|
30
|
+
* LICENSE file in the root directory of this source tree.
|
31
|
+
*
|
32
|
+
*/
|
33
|
+
|
34
|
+
/**
|
35
|
+
* Use invariant() to assert state which your program assumes to be true.
|
36
|
+
*
|
37
|
+
* Provide sprintf-style format (only %s is supported) and arguments
|
38
|
+
* to provide information about what broke and what you were
|
39
|
+
* expecting.
|
40
|
+
*
|
41
|
+
* The invariant message will be stripped in production, but the invariant
|
42
|
+
* will remain to ensure logic does not differ in production.
|
43
|
+
*/
|
44
|
+
|
45
|
+
var validateFormat = function validateFormat(format) {};
|
46
|
+
|
47
|
+
{
|
48
|
+
validateFormat = function validateFormat(format) {
|
49
|
+
if (format === undefined) {
|
50
|
+
throw new Error('invariant requires an error message argument');
|
51
|
+
}
|
52
|
+
};
|
53
|
+
}
|
54
|
+
|
55
|
+
function invariant(condition, format, a, b, c, d, e, f) {
|
56
|
+
validateFormat(format);
|
57
|
+
|
58
|
+
if (!condition) {
|
59
|
+
var error;
|
60
|
+
if (format === undefined) {
|
61
|
+
error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');
|
62
|
+
} else {
|
63
|
+
var args = [a, b, c, d, e, f];
|
64
|
+
var argIndex = 0;
|
65
|
+
error = new Error(format.replace(/%s/g, function () {
|
66
|
+
return args[argIndex++];
|
67
|
+
}));
|
68
|
+
error.name = 'Invariant Violation';
|
69
|
+
}
|
70
|
+
|
71
|
+
error.framesToPop = 1; // we don't care about invariant's own frame
|
72
|
+
throw error;
|
73
|
+
}
|
74
|
+
}
|
75
|
+
|
76
|
+
var invariant_1 = invariant;
|
77
|
+
|
45
78
|
/**
|
46
79
|
* Copyright (c) 2013-present, Facebook, Inc.
|
47
80
|
*
|
@@ -55,7 +88,7 @@ var getActiveElement = require('fbjs/lib/getActiveElement');
|
|
55
88
|
|
56
89
|
|
57
90
|
|
58
|
-
!
|
91
|
+
!require$$0 ? invariant_1(false, 'ReactDOM was loaded before React. Make sure you load the React package before loading ReactDOM.') : void 0;
|
59
92
|
|
60
93
|
/**
|
61
94
|
* Copyright (c) 2013-present, Facebook, Inc.
|
@@ -111,6 +144,42 @@ var DOMNamespaces = {
|
|
111
144
|
getChildNamespace: getChildNamespace_1
|
112
145
|
};
|
113
146
|
|
147
|
+
/**
|
148
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
149
|
+
*
|
150
|
+
* This source code is licensed under the MIT license found in the
|
151
|
+
* LICENSE file in the root directory of this source tree.
|
152
|
+
*
|
153
|
+
*/
|
154
|
+
|
155
|
+
var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
|
156
|
+
|
157
|
+
/**
|
158
|
+
* Simple, lightweight module assisting with the detection and context of
|
159
|
+
* Worker. Helps avoid circular dependencies and allows code to reason about
|
160
|
+
* whether or not they are in a Worker, even if they never include the main
|
161
|
+
* `ReactWorker` dependency.
|
162
|
+
*/
|
163
|
+
var ExecutionEnvironment = {
|
164
|
+
|
165
|
+
canUseDOM: canUseDOM,
|
166
|
+
|
167
|
+
canUseWorkers: typeof Worker !== 'undefined',
|
168
|
+
|
169
|
+
canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent),
|
170
|
+
|
171
|
+
canUseViewport: canUseDOM && !!window.screen,
|
172
|
+
|
173
|
+
isInWorker: !canUseDOM // For now, this is true - might change in the future.
|
174
|
+
|
175
|
+
};
|
176
|
+
|
177
|
+
var ExecutionEnvironment_1 = ExecutionEnvironment;
|
178
|
+
|
179
|
+
var ReactInternals = require$$0.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
|
180
|
+
|
181
|
+
var assign = ReactInternals.assign;
|
182
|
+
|
114
183
|
/**
|
115
184
|
* Injectable ordering of event plugins.
|
116
185
|
*/
|
@@ -134,15 +203,15 @@ function recomputePluginOrdering() {
|
|
134
203
|
for (var pluginName in namesToPlugins) {
|
135
204
|
var pluginModule = namesToPlugins[pluginName];
|
136
205
|
var pluginIndex = eventPluginOrder.indexOf(pluginName);
|
137
|
-
!(pluginIndex > -1) ?
|
206
|
+
!(pluginIndex > -1) ? invariant_1(false, 'EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.', pluginName) : void 0;
|
138
207
|
if (EventPluginRegistry.plugins[pluginIndex]) {
|
139
208
|
continue;
|
140
209
|
}
|
141
|
-
!pluginModule.extractEvents ?
|
210
|
+
!pluginModule.extractEvents ? invariant_1(false, 'EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.', pluginName) : void 0;
|
142
211
|
EventPluginRegistry.plugins[pluginIndex] = pluginModule;
|
143
212
|
var publishedEvents = pluginModule.eventTypes;
|
144
213
|
for (var eventName in publishedEvents) {
|
145
|
-
!publishEventForPlugin(publishedEvents[eventName], pluginModule, eventName) ?
|
214
|
+
!publishEventForPlugin(publishedEvents[eventName], pluginModule, eventName) ? invariant_1(false, 'EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.', eventName, pluginName) : void 0;
|
146
215
|
}
|
147
216
|
}
|
148
217
|
}
|
@@ -156,7 +225,7 @@ function recomputePluginOrdering() {
|
|
156
225
|
* @private
|
157
226
|
*/
|
158
227
|
function publishEventForPlugin(dispatchConfig, pluginModule, eventName) {
|
159
|
-
!!EventPluginRegistry.eventNameDispatchConfigs.hasOwnProperty(eventName) ?
|
228
|
+
!!EventPluginRegistry.eventNameDispatchConfigs.hasOwnProperty(eventName) ? invariant_1(false, 'EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.', eventName) : void 0;
|
160
229
|
EventPluginRegistry.eventNameDispatchConfigs[eventName] = dispatchConfig;
|
161
230
|
|
162
231
|
var phasedRegistrationNames = dispatchConfig.phasedRegistrationNames;
|
@@ -183,7 +252,7 @@ function publishEventForPlugin(dispatchConfig, pluginModule, eventName) {
|
|
183
252
|
* @private
|
184
253
|
*/
|
185
254
|
function publishRegistrationName(registrationName, pluginModule, eventName) {
|
186
|
-
!!EventPluginRegistry.registrationNameModules[registrationName] ?
|
255
|
+
!!EventPluginRegistry.registrationNameModules[registrationName] ? invariant_1(false, 'EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.', registrationName) : void 0;
|
187
256
|
EventPluginRegistry.registrationNameModules[registrationName] = pluginModule;
|
188
257
|
EventPluginRegistry.registrationNameDependencies[registrationName] = pluginModule.eventTypes[eventName].dependencies;
|
189
258
|
|
@@ -242,7 +311,7 @@ var EventPluginRegistry = {
|
|
242
311
|
* @see {EventPluginHub.injection.injectEventPluginOrder}
|
243
312
|
*/
|
244
313
|
injectEventPluginOrder: function (injectedEventPluginOrder) {
|
245
|
-
!!eventPluginOrder ?
|
314
|
+
!!eventPluginOrder ? invariant_1(false, 'EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React.') : void 0;
|
246
315
|
// Clone the ordering so it cannot be dynamically mutated.
|
247
316
|
eventPluginOrder = Array.prototype.slice.call(injectedEventPluginOrder);
|
248
317
|
recomputePluginOrdering();
|
@@ -266,7 +335,7 @@ var EventPluginRegistry = {
|
|
266
335
|
}
|
267
336
|
var pluginModule = injectedNamesToPlugins[pluginName];
|
268
337
|
if (!namesToPlugins.hasOwnProperty(pluginName) || namesToPlugins[pluginName] !== pluginModule) {
|
269
|
-
!!namesToPlugins[pluginName] ?
|
338
|
+
!!namesToPlugins[pluginName] ? invariant_1(false, 'EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.', pluginName) : void 0;
|
270
339
|
namesToPlugins[pluginName] = pluginModule;
|
271
340
|
isOrderingDirty = true;
|
272
341
|
}
|
@@ -279,6 +348,114 @@ var EventPluginRegistry = {
|
|
279
348
|
|
280
349
|
var EventPluginRegistry_1 = EventPluginRegistry;
|
281
350
|
|
351
|
+
/**
|
352
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
353
|
+
*
|
354
|
+
* This source code is licensed under the MIT license found in the
|
355
|
+
* LICENSE file in the root directory of this source tree.
|
356
|
+
*
|
357
|
+
*
|
358
|
+
*/
|
359
|
+
|
360
|
+
function makeEmptyFunction(arg) {
|
361
|
+
return function () {
|
362
|
+
return arg;
|
363
|
+
};
|
364
|
+
}
|
365
|
+
|
366
|
+
/**
|
367
|
+
* This function accepts and discards inputs; it has no side effects. This is
|
368
|
+
* primarily useful idiomatically for overridable function endpoints which
|
369
|
+
* always need to be callable, since JS lacks a null-call idiom ala Cocoa.
|
370
|
+
*/
|
371
|
+
var emptyFunction = function emptyFunction() {};
|
372
|
+
|
373
|
+
emptyFunction.thatReturns = makeEmptyFunction;
|
374
|
+
emptyFunction.thatReturnsFalse = makeEmptyFunction(false);
|
375
|
+
emptyFunction.thatReturnsTrue = makeEmptyFunction(true);
|
376
|
+
emptyFunction.thatReturnsNull = makeEmptyFunction(null);
|
377
|
+
emptyFunction.thatReturnsThis = function () {
|
378
|
+
return this;
|
379
|
+
};
|
380
|
+
emptyFunction.thatReturnsArgument = function (arg) {
|
381
|
+
return arg;
|
382
|
+
};
|
383
|
+
|
384
|
+
var emptyFunction_1 = emptyFunction;
|
385
|
+
|
386
|
+
/**
|
387
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
388
|
+
*
|
389
|
+
* This source code is licensed under the MIT license found in the
|
390
|
+
* LICENSE file in the root directory of this source tree.
|
391
|
+
*
|
392
|
+
* @typechecks
|
393
|
+
*/
|
394
|
+
|
395
|
+
|
396
|
+
|
397
|
+
/**
|
398
|
+
* Upstream version of event listener. Does not take into account specific
|
399
|
+
* nature of platform.
|
400
|
+
*/
|
401
|
+
var EventListener = {
|
402
|
+
/**
|
403
|
+
* Listen to DOM events during the bubble phase.
|
404
|
+
*
|
405
|
+
* @param {DOMEventTarget} target DOM element to register listener on.
|
406
|
+
* @param {string} eventType Event type, e.g. 'click' or 'mouseover'.
|
407
|
+
* @param {function} callback Callback function.
|
408
|
+
* @return {object} Object with a `remove` method.
|
409
|
+
*/
|
410
|
+
listen: function listen(target, eventType, callback) {
|
411
|
+
if (target.addEventListener) {
|
412
|
+
target.addEventListener(eventType, callback, false);
|
413
|
+
return {
|
414
|
+
remove: function remove() {
|
415
|
+
target.removeEventListener(eventType, callback, false);
|
416
|
+
}
|
417
|
+
};
|
418
|
+
} else if (target.attachEvent) {
|
419
|
+
target.attachEvent('on' + eventType, callback);
|
420
|
+
return {
|
421
|
+
remove: function remove() {
|
422
|
+
target.detachEvent('on' + eventType, callback);
|
423
|
+
}
|
424
|
+
};
|
425
|
+
}
|
426
|
+
},
|
427
|
+
|
428
|
+
/**
|
429
|
+
* Listen to DOM events during the capture phase.
|
430
|
+
*
|
431
|
+
* @param {DOMEventTarget} target DOM element to register listener on.
|
432
|
+
* @param {string} eventType Event type, e.g. 'click' or 'mouseover'.
|
433
|
+
* @param {function} callback Callback function.
|
434
|
+
* @return {object} Object with a `remove` method.
|
435
|
+
*/
|
436
|
+
capture: function capture(target, eventType, callback) {
|
437
|
+
if (target.addEventListener) {
|
438
|
+
target.addEventListener(eventType, callback, true);
|
439
|
+
return {
|
440
|
+
remove: function remove() {
|
441
|
+
target.removeEventListener(eventType, callback, true);
|
442
|
+
}
|
443
|
+
};
|
444
|
+
} else {
|
445
|
+
{
|
446
|
+
console.error('Attempted to listen to events during the capture phase on a ' + 'browser that does not support the capture phase. Your application ' + 'will not receive some events.');
|
447
|
+
}
|
448
|
+
return {
|
449
|
+
remove: emptyFunction_1
|
450
|
+
};
|
451
|
+
}
|
452
|
+
},
|
453
|
+
|
454
|
+
registerDefault: function registerDefault() {}
|
455
|
+
};
|
456
|
+
|
457
|
+
var EventListener_1 = EventListener;
|
458
|
+
|
282
459
|
// These attributes should be all lowercase to allow for
|
283
460
|
// case insensitive checks
|
284
461
|
var RESERVED_PROPS = {
|
@@ -339,7 +516,7 @@ var DOMPropertyInjection = {
|
|
339
516
|
var DOMMutationMethods = domPropertyConfig.DOMMutationMethods || {};
|
340
517
|
|
341
518
|
for (var propName in Properties) {
|
342
|
-
!!DOMProperty.properties.hasOwnProperty(propName) ?
|
519
|
+
!!DOMProperty.properties.hasOwnProperty(propName) ? invariant_1(false, 'injectDOMPropertyConfig(...): You\'re trying to inject DOM property \'%s\' which has already been injected. You may be accidentally injecting the same DOM property config twice, or you may be injecting two configs that have conflicting property names.', propName) : void 0;
|
343
520
|
|
344
521
|
var lowerCased = propName.toLowerCase();
|
345
522
|
var propConfig = Properties[propName];
|
@@ -357,7 +534,7 @@ var DOMPropertyInjection = {
|
|
357
534
|
hasOverloadedBooleanValue: checkMask(propConfig, Injection.HAS_OVERLOADED_BOOLEAN_VALUE),
|
358
535
|
hasStringBooleanValue: checkMask(propConfig, Injection.HAS_STRING_BOOLEAN_VALUE)
|
359
536
|
};
|
360
|
-
!(propertyInfo.hasBooleanValue + propertyInfo.hasNumericValue + propertyInfo.hasOverloadedBooleanValue <= 1) ?
|
537
|
+
!(propertyInfo.hasBooleanValue + propertyInfo.hasNumericValue + propertyInfo.hasOverloadedBooleanValue <= 1) ? invariant_1(false, 'DOMProperty: Value can be one of boolean, overloaded boolean, or numeric value, but not a combination: %s', propName) : void 0;
|
361
538
|
|
362
539
|
if (DOMAttributeNames.hasOwnProperty(propName)) {
|
363
540
|
var attributeName = DOMAttributeNames[propName];
|
@@ -660,7 +837,7 @@ function precacheChildNodes(inst, node) {
|
|
660
837
|
}
|
661
838
|
}
|
662
839
|
// We reached the end of the DOM children without finding an ID match.
|
663
|
-
|
840
|
+
invariant_1(false, 'Unable to find element with ID %s.', childID);
|
664
841
|
}
|
665
842
|
inst._flags |= Flags.hasCachedChildNodes;
|
666
843
|
}
|
@@ -739,7 +916,7 @@ function getNodeFromInstance(inst) {
|
|
739
916
|
|
740
917
|
// Without this first invariant, passing a non-DOM-component triggers the next
|
741
918
|
// invariant for a missing parent, which is super confusing.
|
742
|
-
!(inst._hostNode !== undefined) ?
|
919
|
+
!(inst._hostNode !== undefined) ? invariant_1(false, 'getNodeFromInstance: Invalid argument.') : void 0;
|
743
920
|
|
744
921
|
if (inst._hostNode) {
|
745
922
|
return inst._hostNode;
|
@@ -749,7 +926,7 @@ function getNodeFromInstance(inst) {
|
|
749
926
|
var parents = [];
|
750
927
|
while (!inst._hostNode) {
|
751
928
|
parents.push(inst);
|
752
|
-
!inst._hostParent ?
|
929
|
+
!inst._hostParent ? invariant_1(false, 'React DOM tree root should always have a node reference.') : void 0;
|
753
930
|
inst = inst._hostParent;
|
754
931
|
}
|
755
932
|
|
@@ -827,16 +1004,16 @@ var ReactInstanceMap = {
|
|
827
1004
|
|
828
1005
|
var ReactInstanceMap_1 = ReactInstanceMap;
|
829
1006
|
|
830
|
-
var ReactInternals =
|
1007
|
+
var ReactInternals$1 = require$$0.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
|
831
1008
|
|
832
1009
|
var ReactGlobalSharedState = {
|
833
|
-
ReactCurrentOwner: ReactInternals.ReactCurrentOwner
|
1010
|
+
ReactCurrentOwner: ReactInternals$1.ReactCurrentOwner
|
834
1011
|
};
|
835
1012
|
|
836
1013
|
{
|
837
|
-
|
838
|
-
ReactComponentTreeHook: ReactInternals.ReactComponentTreeHook,
|
839
|
-
ReactDebugCurrentFrame: ReactInternals.ReactDebugCurrentFrame
|
1014
|
+
assign(ReactGlobalSharedState, {
|
1015
|
+
ReactComponentTreeHook: ReactInternals$1.ReactComponentTreeHook,
|
1016
|
+
ReactDebugCurrentFrame: ReactInternals$1.ReactDebugCurrentFrame
|
840
1017
|
});
|
841
1018
|
}
|
842
1019
|
|
@@ -875,6 +1052,57 @@ function getComponentName(instanceOrFiber) {
|
|
875
1052
|
|
876
1053
|
var getComponentName_1 = getComponentName;
|
877
1054
|
|
1055
|
+
/**
|
1056
|
+
* Similar to invariant but only logs a warning if the condition is not met.
|
1057
|
+
* This can be used to log issues in development environments in critical
|
1058
|
+
* paths. Removing the logging code for production environments will keep the
|
1059
|
+
* same logic and follow the same code paths.
|
1060
|
+
*/
|
1061
|
+
|
1062
|
+
var warning$2 = emptyFunction_1;
|
1063
|
+
|
1064
|
+
{
|
1065
|
+
var printWarning = function printWarning(format) {
|
1066
|
+
for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
1067
|
+
args[_key - 1] = arguments[_key];
|
1068
|
+
}
|
1069
|
+
|
1070
|
+
var argIndex = 0;
|
1071
|
+
var message = 'Warning: ' + format.replace(/%s/g, function () {
|
1072
|
+
return args[argIndex++];
|
1073
|
+
});
|
1074
|
+
if (typeof console !== 'undefined') {
|
1075
|
+
console.error(message);
|
1076
|
+
}
|
1077
|
+
try {
|
1078
|
+
// --- Welcome to debugging React ---
|
1079
|
+
// This error was thrown as a convenience so that you can use this stack
|
1080
|
+
// to find the callsite that caused this warning to fire.
|
1081
|
+
throw new Error(message);
|
1082
|
+
} catch (x) {}
|
1083
|
+
};
|
1084
|
+
|
1085
|
+
warning$2 = function warning(condition, format) {
|
1086
|
+
if (format === undefined) {
|
1087
|
+
throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');
|
1088
|
+
}
|
1089
|
+
|
1090
|
+
if (format.indexOf('Failed Composite propType: ') === 0) {
|
1091
|
+
return; // Ignore CompositeComponent proptype check.
|
1092
|
+
}
|
1093
|
+
|
1094
|
+
if (!condition) {
|
1095
|
+
for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
|
1096
|
+
args[_key2 - 2] = arguments[_key2];
|
1097
|
+
}
|
1098
|
+
|
1099
|
+
printWarning.apply(undefined, [format].concat(args));
|
1100
|
+
}
|
1101
|
+
};
|
1102
|
+
}
|
1103
|
+
|
1104
|
+
var warning_1 = warning$2;
|
1105
|
+
|
878
1106
|
/**
|
879
1107
|
* Copyright (c) 2013-present, Facebook, Inc.
|
880
1108
|
*
|
@@ -905,7 +1133,7 @@ var ReactCurrentOwner = ReactGlobalSharedState_1.ReactCurrentOwner;
|
|
905
1133
|
|
906
1134
|
|
907
1135
|
{
|
908
|
-
var warning$1 =
|
1136
|
+
var warning$1 = warning_1;
|
909
1137
|
}
|
910
1138
|
|
911
1139
|
var ClassComponent = ReactTypeOfWork.ClassComponent;
|
@@ -972,7 +1200,7 @@ var isMounted = function (component) {
|
|
972
1200
|
};
|
973
1201
|
|
974
1202
|
function assertIsMounted(fiber) {
|
975
|
-
!(isFiberMountedImpl(fiber) === MOUNTED) ?
|
1203
|
+
!(isFiberMountedImpl(fiber) === MOUNTED) ? invariant_1(false, 'Unable to find node on an unmounted component.') : void 0;
|
976
1204
|
}
|
977
1205
|
|
978
1206
|
function findCurrentFiberUsingSlowPath(fiber) {
|
@@ -980,7 +1208,7 @@ function findCurrentFiberUsingSlowPath(fiber) {
|
|
980
1208
|
if (!alternate) {
|
981
1209
|
// If there is no alternate, then we only need to check if it is mounted.
|
982
1210
|
var state = isFiberMountedImpl(fiber);
|
983
|
-
!(state !== UNMOUNTED) ?
|
1211
|
+
!(state !== UNMOUNTED) ? invariant_1(false, 'Unable to find node on an unmounted component.') : void 0;
|
984
1212
|
if (state === MOUNTING) {
|
985
1213
|
return null;
|
986
1214
|
}
|
@@ -1019,7 +1247,7 @@ function findCurrentFiberUsingSlowPath(fiber) {
|
|
1019
1247
|
}
|
1020
1248
|
// We should never have an alternate for any mounting node. So the only
|
1021
1249
|
// way this could possibly happen is if this was unmounted, if at all.
|
1022
|
-
|
1250
|
+
invariant_1(false, 'Unable to find node on an unmounted component.');
|
1023
1251
|
}
|
1024
1252
|
|
1025
1253
|
if (a['return'] !== b['return']) {
|
@@ -1070,15 +1298,15 @@ function findCurrentFiberUsingSlowPath(fiber) {
|
|
1070
1298
|
}
|
1071
1299
|
_child = _child.sibling;
|
1072
1300
|
}
|
1073
|
-
!didFindChild ?
|
1301
|
+
!didFindChild ? invariant_1(false, 'Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.') : void 0;
|
1074
1302
|
}
|
1075
1303
|
}
|
1076
1304
|
|
1077
|
-
!(a.alternate === b) ?
|
1305
|
+
!(a.alternate === b) ? invariant_1(false, 'Return fibers should always be each others\' alternates. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
1078
1306
|
}
|
1079
1307
|
// If the root is not a host container, we're in a disconnected tree. I.e.
|
1080
1308
|
// unmounted.
|
1081
|
-
!(a.tag === HostRoot$1) ?
|
1309
|
+
!(a.tag === HostRoot$1) ? invariant_1(false, 'Unable to find node on an unmounted component.') : void 0;
|
1082
1310
|
if (a.stateNode.current === a) {
|
1083
1311
|
// We've determined that A is the current branch.
|
1084
1312
|
return fiber;
|
@@ -1173,7 +1401,7 @@ var ReactErrorUtils = {
|
|
1173
1401
|
|
1174
1402
|
injection: {
|
1175
1403
|
injectErrorUtils: function (injectedErrorUtils) {
|
1176
|
-
!(typeof injectedErrorUtils.invokeGuardedCallback === 'function') ?
|
1404
|
+
!(typeof injectedErrorUtils.invokeGuardedCallback === 'function') ? invariant_1(false, 'Injected invokeGuardedCallback() must be a function.') : void 0;
|
1177
1405
|
invokeGuardedCallback = injectedErrorUtils.invokeGuardedCallback;
|
1178
1406
|
}
|
1179
1407
|
},
|
@@ -1235,7 +1463,7 @@ var ReactErrorUtils = {
|
|
1235
1463
|
ReactErrorUtils._hasCaughtError = false;
|
1236
1464
|
return error;
|
1237
1465
|
} else {
|
1238
|
-
|
1466
|
+
invariant_1(false, 'clearCaughtError was called but no error was captured. This error is likely caused by a bug in React. Please file an issue.');
|
1239
1467
|
}
|
1240
1468
|
}
|
1241
1469
|
};
|
@@ -1371,7 +1599,7 @@ var rethrowCaughtError = function () {
|
|
1371
1599
|
var ReactErrorUtils_1 = ReactErrorUtils;
|
1372
1600
|
|
1373
1601
|
{
|
1374
|
-
var warning$
|
1602
|
+
var warning$3 = warning_1;
|
1375
1603
|
}
|
1376
1604
|
|
1377
1605
|
/**
|
@@ -1387,7 +1615,7 @@ var injection = {
|
|
1387
1615
|
injectComponentTree: function (Injected) {
|
1388
1616
|
ComponentTree = Injected;
|
1389
1617
|
{
|
1390
|
-
warning$
|
1618
|
+
warning$3(Injected && Injected.getNodeFromInstance && Injected.getInstanceFromNode, 'EventPluginUtils.injection.injectComponentTree(...): Injected ' + 'module is missing getNodeFromInstance or getInstanceFromNode.');
|
1391
1619
|
}
|
1392
1620
|
}
|
1393
1621
|
};
|
@@ -1415,7 +1643,7 @@ var validateEventDispatches;
|
|
1415
1643
|
var instancesIsArr = Array.isArray(dispatchInstances);
|
1416
1644
|
var instancesLen = instancesIsArr ? dispatchInstances.length : dispatchInstances ? 1 : 0;
|
1417
1645
|
|
1418
|
-
warning$
|
1646
|
+
warning$3(instancesIsArr === listenersIsArr && instancesLen === listenersLen, 'EventPluginUtils: Invalid `event`.');
|
1419
1647
|
};
|
1420
1648
|
}
|
1421
1649
|
|
@@ -1513,7 +1741,7 @@ function executeDirectDispatch(event) {
|
|
1513
1741
|
}
|
1514
1742
|
var dispatchListener = event._dispatchListeners;
|
1515
1743
|
var dispatchInstance = event._dispatchInstances;
|
1516
|
-
!!Array.isArray(dispatchListener) ?
|
1744
|
+
!!Array.isArray(dispatchListener) ? invariant_1(false, 'executeDirectDispatch(...): Invalid `event`.') : void 0;
|
1517
1745
|
event.currentTarget = dispatchListener ? EventPluginUtils.getNodeFromInstance(dispatchInstance) : null;
|
1518
1746
|
var res = dispatchListener ? dispatchListener(event) : null;
|
1519
1747
|
event.currentTarget = null;
|
@@ -1582,12 +1810,12 @@ function restoreStateOfTarget(target) {
|
|
1582
1810
|
return;
|
1583
1811
|
}
|
1584
1812
|
if (typeof internalInstance.tag === 'number') {
|
1585
|
-
!(fiberHostComponent && typeof fiberHostComponent.restoreControlledState === 'function') ?
|
1813
|
+
!(fiberHostComponent && typeof fiberHostComponent.restoreControlledState === 'function') ? invariant_1(false, 'Fiber needs to be injected to handle a fiber target for controlled events. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
1586
1814
|
var props = EventPluginUtils_1.getFiberCurrentPropsFromNode(internalInstance.stateNode);
|
1587
1815
|
fiberHostComponent.restoreControlledState(internalInstance.stateNode, internalInstance.type, props);
|
1588
1816
|
return;
|
1589
1817
|
}
|
1590
|
-
!(typeof internalInstance.restoreControlledState === 'function') ?
|
1818
|
+
!(typeof internalInstance.restoreControlledState === 'function') ? invariant_1(false, 'The internal instance must be a React host component. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
1591
1819
|
// If it is not a Fiber, we can just use dynamic dispatch.
|
1592
1820
|
internalInstance.restoreControlledState();
|
1593
1821
|
}
|
@@ -1831,7 +2059,7 @@ var ReactDOMEventListener = {
|
|
1831
2059
|
if (!element) {
|
1832
2060
|
return null;
|
1833
2061
|
}
|
1834
|
-
return
|
2062
|
+
return EventListener_1.listen(element, handlerBaseName, ReactDOMEventListener.dispatchEvent.bind(null, topLevelType));
|
1835
2063
|
},
|
1836
2064
|
|
1837
2065
|
/**
|
@@ -1848,7 +2076,7 @@ var ReactDOMEventListener = {
|
|
1848
2076
|
if (!element) {
|
1849
2077
|
return null;
|
1850
2078
|
}
|
1851
|
-
return
|
2079
|
+
return EventListener_1.capture(element, handlerBaseName, ReactDOMEventListener.dispatchEvent.bind(null, topLevelType));
|
1852
2080
|
},
|
1853
2081
|
|
1854
2082
|
dispatchEvent: function (topLevelType, nativeEvent) {
|
@@ -1894,7 +2122,7 @@ var ReactDOMEventListener_1 = ReactDOMEventListener;
|
|
1894
2122
|
*/
|
1895
2123
|
|
1896
2124
|
function accumulateInto(current, next) {
|
1897
|
-
!(next != null) ?
|
2125
|
+
!(next != null) ? invariant_1(false, 'accumulateInto(...): Accumulated items must not be null or undefined.') : void 0;
|
1898
2126
|
|
1899
2127
|
if (current == null) {
|
1900
2128
|
return next;
|
@@ -2083,7 +2311,7 @@ var EventPluginHub = {
|
|
2083
2311
|
}
|
2084
2312
|
}
|
2085
2313
|
|
2086
|
-
!(!listener || typeof listener === 'function') ?
|
2314
|
+
!(!listener || typeof listener === 'function') ? invariant_1(false, 'Expected `%s` listener to be a function, instead got a value of `%s` type.', registrationName, typeof listener) : void 0;
|
2087
2315
|
return listener;
|
2088
2316
|
},
|
2089
2317
|
|
@@ -2138,7 +2366,7 @@ var EventPluginHub = {
|
|
2138
2366
|
} else {
|
2139
2367
|
forEachAccumulated_1(processingEventQueue, executeDispatchesAndReleaseTopLevel);
|
2140
2368
|
}
|
2141
|
-
!!eventQueue ?
|
2369
|
+
!!eventQueue ? invariant_1(false, 'processEventQueue(): Additional events were enqueued while processing an event queue. Support for this has not yet been implemented.') : void 0;
|
2142
2370
|
// This would be a good time to rethrow if any of the event handlers threw.
|
2143
2371
|
ReactErrorUtils_1.rethrowCaughtError();
|
2144
2372
|
}
|
@@ -2165,7 +2393,7 @@ var ReactEventEmitterMixin = {
|
|
2165
2393
|
var ReactEventEmitterMixin_1 = ReactEventEmitterMixin;
|
2166
2394
|
|
2167
2395
|
var useHasFeature;
|
2168
|
-
if (
|
2396
|
+
if (ExecutionEnvironment_1.canUseDOM) {
|
2169
2397
|
useHasFeature = document.implementation && document.implementation.hasFeature &&
|
2170
2398
|
// always returns true in newer browsers as per the standard.
|
2171
2399
|
// @see http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature
|
@@ -2187,7 +2415,7 @@ if (ExecutionEnvironment.canUseDOM) {
|
|
2187
2415
|
* @license Modernizr 3.0.0pre (Custom Build) | MIT
|
2188
2416
|
*/
|
2189
2417
|
function isEventSupported(eventNameSuffix, capture) {
|
2190
|
-
if (!
|
2418
|
+
if (!ExecutionEnvironment_1.canUseDOM || capture && !('addEventListener' in document)) {
|
2191
2419
|
return false;
|
2192
2420
|
}
|
2193
2421
|
|
@@ -2252,7 +2480,7 @@ var style = {};
|
|
2252
2480
|
/**
|
2253
2481
|
* Bootstrap if a DOM exists.
|
2254
2482
|
*/
|
2255
|
-
if (
|
2483
|
+
if (ExecutionEnvironment_1.canUseDOM) {
|
2256
2484
|
style = document.createElement('div').style;
|
2257
2485
|
|
2258
2486
|
// On some platforms, in particular some releases of Android 4.x,
|
@@ -2457,7 +2685,7 @@ function getListeningForDocument(mountAt) {
|
|
2457
2685
|
return alreadyListeningTo[mountAt[topListenersIDKey]];
|
2458
2686
|
}
|
2459
2687
|
|
2460
|
-
var ReactBrowserEventEmitter =
|
2688
|
+
var ReactBrowserEventEmitter = assign({}, ReactEventEmitterMixin_1, {
|
2461
2689
|
/**
|
2462
2690
|
* Sets whether or not any created callbacks should be enabled.
|
2463
2691
|
*
|
@@ -2770,6 +2998,112 @@ function dangerousStyleValue(name, value, isCustomProperty) {
|
|
2770
2998
|
|
2771
2999
|
var dangerousStyleValue_1 = dangerousStyleValue;
|
2772
3000
|
|
3001
|
+
/**
|
3002
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
3003
|
+
*
|
3004
|
+
* This source code is licensed under the MIT license found in the
|
3005
|
+
* LICENSE file in the root directory of this source tree.
|
3006
|
+
*
|
3007
|
+
* @typechecks
|
3008
|
+
*/
|
3009
|
+
|
3010
|
+
var _uppercasePattern = /([A-Z])/g;
|
3011
|
+
|
3012
|
+
/**
|
3013
|
+
* Hyphenates a camelcased string, for example:
|
3014
|
+
*
|
3015
|
+
* > hyphenate('backgroundColor')
|
3016
|
+
* < "background-color"
|
3017
|
+
*
|
3018
|
+
* For CSS style names, use `hyphenateStyleName` instead which works properly
|
3019
|
+
* with all vendor prefixes, including `ms`.
|
3020
|
+
*
|
3021
|
+
* @param {string} string
|
3022
|
+
* @return {string}
|
3023
|
+
*/
|
3024
|
+
function hyphenate(string) {
|
3025
|
+
return string.replace(_uppercasePattern, '-$1').toLowerCase();
|
3026
|
+
}
|
3027
|
+
|
3028
|
+
var hyphenate_1 = hyphenate;
|
3029
|
+
|
3030
|
+
var msPattern = /^ms-/;
|
3031
|
+
|
3032
|
+
/**
|
3033
|
+
* Hyphenates a camelcased CSS property name, for example:
|
3034
|
+
*
|
3035
|
+
* > hyphenateStyleName('backgroundColor')
|
3036
|
+
* < "background-color"
|
3037
|
+
* > hyphenateStyleName('MozTransition')
|
3038
|
+
* < "-moz-transition"
|
3039
|
+
* > hyphenateStyleName('msTransition')
|
3040
|
+
* < "-ms-transition"
|
3041
|
+
*
|
3042
|
+
* As Modernizr suggests (http://modernizr.com/docs/#prefixed), an `ms` prefix
|
3043
|
+
* is converted to `-ms-`.
|
3044
|
+
*
|
3045
|
+
* @param {string} string
|
3046
|
+
* @return {string}
|
3047
|
+
*/
|
3048
|
+
function hyphenateStyleName$1(string) {
|
3049
|
+
return hyphenate_1(string).replace(msPattern, '-ms-');
|
3050
|
+
}
|
3051
|
+
|
3052
|
+
var hyphenateStyleName_1 = hyphenateStyleName$1;
|
3053
|
+
|
3054
|
+
/**
|
3055
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
3056
|
+
*
|
3057
|
+
* This source code is licensed under the MIT license found in the
|
3058
|
+
* LICENSE file in the root directory of this source tree.
|
3059
|
+
*
|
3060
|
+
* @typechecks
|
3061
|
+
*/
|
3062
|
+
|
3063
|
+
var _hyphenPattern = /-(.)/g;
|
3064
|
+
|
3065
|
+
/**
|
3066
|
+
* Camelcases a hyphenated string, for example:
|
3067
|
+
*
|
3068
|
+
* > camelize('background-color')
|
3069
|
+
* < "backgroundColor"
|
3070
|
+
*
|
3071
|
+
* @param {string} string
|
3072
|
+
* @return {string}
|
3073
|
+
*/
|
3074
|
+
function camelize(string) {
|
3075
|
+
return string.replace(_hyphenPattern, function (_, character) {
|
3076
|
+
return character.toUpperCase();
|
3077
|
+
});
|
3078
|
+
}
|
3079
|
+
|
3080
|
+
var camelize_1 = camelize;
|
3081
|
+
|
3082
|
+
var msPattern$1 = /^-ms-/;
|
3083
|
+
|
3084
|
+
/**
|
3085
|
+
* Camelcases a hyphenated CSS property name, for example:
|
3086
|
+
*
|
3087
|
+
* > camelizeStyleName('background-color')
|
3088
|
+
* < "backgroundColor"
|
3089
|
+
* > camelizeStyleName('-moz-transition')
|
3090
|
+
* < "MozTransition"
|
3091
|
+
* > camelizeStyleName('-ms-transition')
|
3092
|
+
* < "msTransition"
|
3093
|
+
*
|
3094
|
+
* As Andi Smith suggests
|
3095
|
+
* (http://www.andismith.com/blog/2012/02/modernizr-prefixed/), an `-ms` prefix
|
3096
|
+
* is converted to lowercase `ms`.
|
3097
|
+
*
|
3098
|
+
* @param {string} string
|
3099
|
+
* @return {string}
|
3100
|
+
*/
|
3101
|
+
function camelizeStyleName$1(string) {
|
3102
|
+
return camelize_1(string.replace(msPattern$1, 'ms-'));
|
3103
|
+
}
|
3104
|
+
|
3105
|
+
var camelizeStyleName_1 = camelizeStyleName$1;
|
3106
|
+
|
2773
3107
|
/**
|
2774
3108
|
* Copyright (c) 2016-present, Facebook, Inc.
|
2775
3109
|
*
|
@@ -2887,12 +3221,12 @@ var ReactDebugCurrentFiber = {
|
|
2887
3221
|
|
2888
3222
|
var ReactDebugCurrentFiber_1 = ReactDebugCurrentFiber;
|
2889
3223
|
|
2890
|
-
var warnValidStyle$1 =
|
3224
|
+
var warnValidStyle$1 = emptyFunction_1;
|
2891
3225
|
|
2892
3226
|
{
|
2893
|
-
var camelizeStyleName
|
3227
|
+
var camelizeStyleName = camelizeStyleName_1;
|
2894
3228
|
var getComponentName$2 = getComponentName_1;
|
2895
|
-
var warning$
|
3229
|
+
var warning$5 = warning_1;
|
2896
3230
|
|
2897
3231
|
var _require$3 = ReactDebugCurrentFiber_1,
|
2898
3232
|
getCurrentFiberOwnerName$1 = _require$3.getCurrentFiberOwnerName;
|
@@ -2916,7 +3250,7 @@ var warnValidStyle$1 = emptyFunction;
|
|
2916
3250
|
}
|
2917
3251
|
|
2918
3252
|
warnedStyleNames[name] = true;
|
2919
|
-
warning$
|
3253
|
+
warning$5(false, 'Unsupported style property %s. Did you mean %s?%s', name, camelizeStyleName(name), checkRenderMessage(owner));
|
2920
3254
|
};
|
2921
3255
|
|
2922
3256
|
var warnBadVendoredStyleName = function (name, owner) {
|
@@ -2925,7 +3259,7 @@ var warnValidStyle$1 = emptyFunction;
|
|
2925
3259
|
}
|
2926
3260
|
|
2927
3261
|
warnedStyleNames[name] = true;
|
2928
|
-
warning$
|
3262
|
+
warning$5(false, 'Unsupported vendor-prefixed style property %s. Did you mean %s?%s', name, name.charAt(0).toUpperCase() + name.slice(1), checkRenderMessage(owner));
|
2929
3263
|
};
|
2930
3264
|
|
2931
3265
|
var warnStyleValueWithSemicolon = function (name, value, owner) {
|
@@ -2934,7 +3268,7 @@ var warnValidStyle$1 = emptyFunction;
|
|
2934
3268
|
}
|
2935
3269
|
|
2936
3270
|
warnedStyleValues[value] = true;
|
2937
|
-
warning$
|
3271
|
+
warning$5(false, "Style property values shouldn't contain a semicolon.%s " + 'Try "%s: %s" instead.', checkRenderMessage(owner), name, value.replace(badStyleValueWithSemicolonPattern, ''));
|
2938
3272
|
};
|
2939
3273
|
|
2940
3274
|
var warnStyleValueIsNaN = function (name, value, owner) {
|
@@ -2943,7 +3277,7 @@ var warnValidStyle$1 = emptyFunction;
|
|
2943
3277
|
}
|
2944
3278
|
|
2945
3279
|
warnedForNaNValue = true;
|
2946
|
-
warning$
|
3280
|
+
warning$5(false, '`NaN` is an invalid value for the `%s` css style property.%s', name, checkRenderMessage(owner));
|
2947
3281
|
};
|
2948
3282
|
|
2949
3283
|
var warnStyleValueIsInfinity = function (name, value, owner) {
|
@@ -2952,7 +3286,7 @@ var warnValidStyle$1 = emptyFunction;
|
|
2952
3286
|
}
|
2953
3287
|
|
2954
3288
|
warnedForInfinityValue = true;
|
2955
|
-
warning$
|
3289
|
+
warning$5(false, '`Infinity` is an invalid value for the `%s` css style property.%s', name, checkRenderMessage(owner));
|
2956
3290
|
};
|
2957
3291
|
|
2958
3292
|
var checkRenderMessage = function (owner) {
|
@@ -2999,12 +3333,12 @@ var warnValidStyle$1 = emptyFunction;
|
|
2999
3333
|
var warnValidStyle_1 = warnValidStyle$1;
|
3000
3334
|
|
3001
3335
|
{
|
3002
|
-
var hyphenateStyleName
|
3336
|
+
var hyphenateStyleName = hyphenateStyleName_1;
|
3003
3337
|
var warnValidStyle = warnValidStyle_1;
|
3004
3338
|
}
|
3005
3339
|
|
3006
3340
|
var hasShorthandPropertyBug = false;
|
3007
|
-
if (
|
3341
|
+
if (ExecutionEnvironment_1.canUseDOM) {
|
3008
3342
|
var tempStyle = document.createElement('div').style;
|
3009
3343
|
try {
|
3010
3344
|
// IE8 throws "Invalid argument." if resetting shorthand style properties.
|
@@ -3035,7 +3369,7 @@ var CSSPropertyOperations = {
|
|
3035
3369
|
var styleValue = styles[styleName];
|
3036
3370
|
if (styleValue != null) {
|
3037
3371
|
var isCustomProperty = styleName.indexOf('--') === 0;
|
3038
|
-
serialized += delimiter + hyphenateStyleName
|
3372
|
+
serialized += delimiter + hyphenateStyleName(styleName) + ':';
|
3039
3373
|
serialized += dangerousStyleValue_1(styleName, styleValue, isCustomProperty);
|
3040
3374
|
|
3041
3375
|
delimiter = ';';
|
@@ -3094,11 +3428,11 @@ var CSSPropertyOperations_1 = CSSPropertyOperations;
|
|
3094
3428
|
var ReactInvalidSetStateWarningHook = {};
|
3095
3429
|
|
3096
3430
|
{
|
3097
|
-
var warning$
|
3431
|
+
var warning$8 = warning_1;
|
3098
3432
|
var processingChildContext = false;
|
3099
3433
|
|
3100
3434
|
var warnInvalidSetState = function () {
|
3101
|
-
warning$
|
3435
|
+
warning$8(!processingChildContext, 'setState(...): Cannot call setState() inside getChildContext()');
|
3102
3436
|
};
|
3103
3437
|
|
3104
3438
|
ReactInvalidSetStateWarningHook = {
|
@@ -3152,12 +3486,50 @@ var ReactHostOperationHistoryHook = null;
|
|
3152
3486
|
|
3153
3487
|
var ReactHostOperationHistoryHook_1 = ReactHostOperationHistoryHook;
|
3154
3488
|
|
3489
|
+
var performance$1;
|
3490
|
+
|
3491
|
+
if (ExecutionEnvironment_1.canUseDOM) {
|
3492
|
+
performance$1 = window.performance || window.msPerformance || window.webkitPerformance;
|
3493
|
+
}
|
3494
|
+
|
3495
|
+
var performance_1 = performance$1 || {};
|
3496
|
+
|
3497
|
+
/**
|
3498
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
3499
|
+
*
|
3500
|
+
* This source code is licensed under the MIT license found in the
|
3501
|
+
* LICENSE file in the root directory of this source tree.
|
3502
|
+
*
|
3503
|
+
* @typechecks
|
3504
|
+
*/
|
3505
|
+
|
3506
|
+
|
3507
|
+
|
3508
|
+
var performanceNow;
|
3509
|
+
|
3510
|
+
/**
|
3511
|
+
* Detect if we can use `window.performance.now()` and gracefully fallback to
|
3512
|
+
* `Date.now()` if it doesn't exist. We need to support Firefox < 15 for now
|
3513
|
+
* because of Facebook's testing infrastructure.
|
3514
|
+
*/
|
3515
|
+
if (performance_1.now) {
|
3516
|
+
performanceNow = function performanceNow() {
|
3517
|
+
return performance_1.now();
|
3518
|
+
};
|
3519
|
+
} else {
|
3520
|
+
performanceNow = function performanceNow() {
|
3521
|
+
return Date.now();
|
3522
|
+
};
|
3523
|
+
}
|
3524
|
+
|
3525
|
+
var performanceNow_1 = performanceNow;
|
3526
|
+
|
3155
3527
|
var ReactComponentTreeHook = ReactGlobalSharedState_1.ReactComponentTreeHook;
|
3156
3528
|
|
3157
3529
|
|
3158
3530
|
|
3159
3531
|
{
|
3160
|
-
var warning$
|
3532
|
+
var warning$7 = warning_1;
|
3161
3533
|
}
|
3162
3534
|
|
3163
3535
|
// Trust the developer to only use this with a true check
|
@@ -3171,7 +3543,7 @@ var ReactDebugTool$1 = null;
|
|
3171
3543
|
try {
|
3172
3544
|
fn.call(context, arg1, arg2, arg3, arg4, arg5);
|
3173
3545
|
} catch (e) {
|
3174
|
-
warning$
|
3546
|
+
warning$7(didHookThrowForEvent[event], 'Exception thrown by hook while handling %s: %s', event, e + '\n' + e.stack);
|
3175
3547
|
didHookThrowForEvent[event] = true;
|
3176
3548
|
}
|
3177
3549
|
};
|
@@ -3236,7 +3608,7 @@ var ReactDebugTool$1 = null;
|
|
3236
3608
|
if (previousMeasurements.length || previousOperations.length) {
|
3237
3609
|
var registeredIDs = ReactComponentTreeHook.getRegisteredIDs();
|
3238
3610
|
flushHistory.push({
|
3239
|
-
duration:
|
3611
|
+
duration: performanceNow_1() - previousStartTime,
|
3240
3612
|
measurements: previousMeasurements || [],
|
3241
3613
|
operations: previousOperations || [],
|
3242
3614
|
treeSnapshot: getTreeSnapshot(registeredIDs)
|
@@ -3244,7 +3616,7 @@ var ReactDebugTool$1 = null;
|
|
3244
3616
|
}
|
3245
3617
|
|
3246
3618
|
clearHistory();
|
3247
|
-
currentFlushStartTime =
|
3619
|
+
currentFlushStartTime = performanceNow_1();
|
3248
3620
|
currentFlushMeasurements = [];
|
3249
3621
|
};
|
3250
3622
|
|
@@ -3255,7 +3627,7 @@ var ReactDebugTool$1 = null;
|
|
3255
3627
|
return;
|
3256
3628
|
}
|
3257
3629
|
if (!debugID) {
|
3258
|
-
warning$
|
3630
|
+
warning$7(false, 'ReactDebugTool: debugID may not be empty.');
|
3259
3631
|
}
|
3260
3632
|
};
|
3261
3633
|
|
@@ -3264,10 +3636,10 @@ var ReactDebugTool$1 = null;
|
|
3264
3636
|
return;
|
3265
3637
|
}
|
3266
3638
|
if (currentTimerType && !lifeCycleTimerHasWarned) {
|
3267
|
-
warning$
|
3639
|
+
warning$7(false, 'There is an internal error in the React performance measurement code.' + '\n\nDid not expect %s timer to start while %s timer is still in ' + 'progress for %s instance.', timerType, currentTimerType || 'no', debugID === currentTimerDebugID ? 'the same' : 'another');
|
3268
3640
|
lifeCycleTimerHasWarned = true;
|
3269
3641
|
}
|
3270
|
-
currentTimerStartTime =
|
3642
|
+
currentTimerStartTime = performanceNow_1();
|
3271
3643
|
currentTimerNestedFlushDuration = 0;
|
3272
3644
|
currentTimerDebugID = debugID;
|
3273
3645
|
currentTimerType = timerType;
|
@@ -3278,14 +3650,14 @@ var ReactDebugTool$1 = null;
|
|
3278
3650
|
return;
|
3279
3651
|
}
|
3280
3652
|
if (currentTimerType !== timerType && !lifeCycleTimerHasWarned) {
|
3281
|
-
warning$
|
3653
|
+
warning$7(false, 'There is an internal error in the React performance measurement code. ' + 'We did not expect %s timer to stop while %s timer is still in ' + 'progress for %s instance. Please report this as a bug in React.', timerType, currentTimerType || 'no', debugID === currentTimerDebugID ? 'the same' : 'another');
|
3282
3654
|
lifeCycleTimerHasWarned = true;
|
3283
3655
|
}
|
3284
3656
|
if (isProfiling) {
|
3285
3657
|
currentFlushMeasurements.push({
|
3286
3658
|
timerType: timerType,
|
3287
3659
|
instanceID: debugID,
|
3288
|
-
duration:
|
3660
|
+
duration: performanceNow_1() - currentTimerStartTime - currentTimerNestedFlushDuration
|
3289
3661
|
});
|
3290
3662
|
}
|
3291
3663
|
currentTimerStartTime = 0;
|
@@ -3297,7 +3669,7 @@ var ReactDebugTool$1 = null;
|
|
3297
3669
|
var pauseCurrentLifeCycleTimer = function () {
|
3298
3670
|
var currentTimer = {
|
3299
3671
|
startTime: currentTimerStartTime,
|
3300
|
-
nestedFlushStartTime:
|
3672
|
+
nestedFlushStartTime: performanceNow_1(),
|
3301
3673
|
debugID: currentTimerDebugID,
|
3302
3674
|
timerType: currentTimerType
|
3303
3675
|
};
|
@@ -3315,7 +3687,7 @@ var ReactDebugTool$1 = null;
|
|
3315
3687
|
debugID = _lifeCycleTimerStack$.debugID,
|
3316
3688
|
timerType = _lifeCycleTimerStack$.timerType;
|
3317
3689
|
|
3318
|
-
var nestedFlushDuration =
|
3690
|
+
var nestedFlushDuration = performanceNow_1() - nestedFlushStartTime;
|
3319
3691
|
currentTimerStartTime = startTime;
|
3320
3692
|
currentTimerNestedFlushDuration += nestedFlushDuration;
|
3321
3693
|
currentTimerDebugID = debugID;
|
@@ -3346,7 +3718,7 @@ var ReactDebugTool$1 = null;
|
|
3346
3718
|
}
|
3347
3719
|
|
3348
3720
|
var markName = debugID + '::' + markType;
|
3349
|
-
lastMarkTimeStamp =
|
3721
|
+
lastMarkTimeStamp = performanceNow_1();
|
3350
3722
|
performance.mark(markName);
|
3351
3723
|
};
|
3352
3724
|
|
@@ -3364,7 +3736,7 @@ var ReactDebugTool$1 = null;
|
|
3364
3736
|
// I determined the magic number by tweaking it back and forth.
|
3365
3737
|
// 0.05ms was enough to prevent the issue, but I set it to 0.1ms to be safe.
|
3366
3738
|
// When the bug is fixed, we can `measure()` unconditionally if we want to.
|
3367
|
-
var timeStamp =
|
3739
|
+
var timeStamp = performanceNow_1();
|
3368
3740
|
if (timeStamp - lastMarkTimeStamp > 0.1) {
|
3369
3741
|
var measurementName = displayName + ' [' + markType + ']';
|
3370
3742
|
performance.measure(measurementName, markName);
|
@@ -3493,7 +3865,7 @@ var ReactDebugTool$1 = null;
|
|
3493
3865
|
|
3494
3866
|
ReactDebugTool$1.addHook(ReactInvalidSetStateWarningHook_1);
|
3495
3867
|
ReactDebugTool$1.addHook(ReactComponentTreeHook);
|
3496
|
-
var url =
|
3868
|
+
var url = ExecutionEnvironment_1.canUseDOM && window.location.href || '';
|
3497
3869
|
if (/[?&]react_perf\b/.test(url)) {
|
3498
3870
|
ReactDebugTool$1.beginProfiling();
|
3499
3871
|
}
|
@@ -3513,7 +3885,7 @@ var debugTool = null;
|
|
3513
3885
|
var ReactInstrumentation = { debugTool: debugTool };
|
3514
3886
|
|
3515
3887
|
{
|
3516
|
-
var warning$
|
3888
|
+
var warning$6 = warning_1;
|
3517
3889
|
}
|
3518
3890
|
|
3519
3891
|
// isAttributeNameSafe() is currently duplicated in DOMMarkupOperations.
|
@@ -3534,7 +3906,7 @@ function isAttributeNameSafe(attributeName) {
|
|
3534
3906
|
}
|
3535
3907
|
illegalAttributeNameCache[attributeName] = true;
|
3536
3908
|
{
|
3537
|
-
warning$
|
3909
|
+
warning$6(false, 'Invalid attribute name: `%s`', attributeName);
|
3538
3910
|
}
|
3539
3911
|
return false;
|
3540
3912
|
}
|
@@ -3670,109 +4042,728 @@ var DOMPropertyOperations = {
|
|
3670
4042
|
} else if (propertyInfo.hasBooleanValue || propertyInfo.hasOverloadedBooleanValue && value === true) {
|
3671
4043
|
node.setAttribute(attributeName, '');
|
3672
4044
|
} else {
|
3673
|
-
node.setAttribute(attributeName, '' + value);
|
4045
|
+
node.setAttribute(attributeName, '' + value);
|
4046
|
+
}
|
4047
|
+
}
|
4048
|
+
} else {
|
4049
|
+
DOMPropertyOperations.setValueForAttribute(node, name, DOMProperty_1.shouldSetAttribute(name, value) ? value : null);
|
4050
|
+
return;
|
4051
|
+
}
|
4052
|
+
|
4053
|
+
{
|
4054
|
+
var payload = {};
|
4055
|
+
payload[name] = value;
|
4056
|
+
ReactInstrumentation.debugTool.onHostOperation({
|
4057
|
+
instanceID: ReactDOMComponentTree_1.getInstanceFromNode(node)._debugID,
|
4058
|
+
type: 'update attribute',
|
4059
|
+
payload: payload
|
4060
|
+
});
|
4061
|
+
}
|
4062
|
+
},
|
4063
|
+
|
4064
|
+
setValueForAttribute: function (node, name, value) {
|
4065
|
+
if (!isAttributeNameSafe(name)) {
|
4066
|
+
return;
|
4067
|
+
}
|
4068
|
+
if (value == null) {
|
4069
|
+
node.removeAttribute(name);
|
4070
|
+
} else {
|
4071
|
+
node.setAttribute(name, '' + value);
|
4072
|
+
}
|
4073
|
+
|
4074
|
+
{
|
4075
|
+
var payload = {};
|
4076
|
+
payload[name] = value;
|
4077
|
+
ReactInstrumentation.debugTool.onHostOperation({
|
4078
|
+
instanceID: ReactDOMComponentTree_1.getInstanceFromNode(node)._debugID,
|
4079
|
+
type: 'update attribute',
|
4080
|
+
payload: payload
|
4081
|
+
});
|
4082
|
+
}
|
4083
|
+
},
|
4084
|
+
|
4085
|
+
/**
|
4086
|
+
* Deletes an attributes from a node.
|
4087
|
+
*
|
4088
|
+
* @param {DOMElement} node
|
4089
|
+
* @param {string} name
|
4090
|
+
*/
|
4091
|
+
deleteValueForAttribute: function (node, name) {
|
4092
|
+
node.removeAttribute(name);
|
4093
|
+
{
|
4094
|
+
ReactInstrumentation.debugTool.onHostOperation({
|
4095
|
+
instanceID: ReactDOMComponentTree_1.getInstanceFromNode(node)._debugID,
|
4096
|
+
type: 'remove attribute',
|
4097
|
+
payload: name
|
4098
|
+
});
|
4099
|
+
}
|
4100
|
+
},
|
4101
|
+
|
4102
|
+
/**
|
4103
|
+
* Deletes the value for a property on a node.
|
4104
|
+
*
|
4105
|
+
* @param {DOMElement} node
|
4106
|
+
* @param {string} name
|
4107
|
+
*/
|
4108
|
+
deleteValueForProperty: function (node, name) {
|
4109
|
+
var propertyInfo = DOMProperty_1.getPropertyInfo(name);
|
4110
|
+
if (propertyInfo) {
|
4111
|
+
var mutationMethod = propertyInfo.mutationMethod;
|
4112
|
+
if (mutationMethod) {
|
4113
|
+
mutationMethod(node, undefined);
|
4114
|
+
} else if (propertyInfo.mustUseProperty) {
|
4115
|
+
var propName = propertyInfo.propertyName;
|
4116
|
+
if (propertyInfo.hasBooleanValue) {
|
4117
|
+
node[propName] = false;
|
4118
|
+
} else {
|
4119
|
+
node[propName] = '';
|
4120
|
+
}
|
4121
|
+
} else {
|
4122
|
+
node.removeAttribute(propertyInfo.attributeName);
|
4123
|
+
}
|
4124
|
+
} else {
|
4125
|
+
node.removeAttribute(name);
|
4126
|
+
}
|
4127
|
+
|
4128
|
+
{
|
4129
|
+
ReactInstrumentation.debugTool.onHostOperation({
|
4130
|
+
instanceID: ReactDOMComponentTree_1.getInstanceFromNode(node)._debugID,
|
4131
|
+
type: 'remove attribute',
|
4132
|
+
payload: name
|
4133
|
+
});
|
4134
|
+
}
|
4135
|
+
}
|
4136
|
+
};
|
4137
|
+
|
4138
|
+
var DOMPropertyOperations_1 = DOMPropertyOperations;
|
4139
|
+
|
4140
|
+
function createCommonjsModule(fn, module) {
|
4141
|
+
return module = { exports: {} }, fn(module, module.exports), module.exports;
|
4142
|
+
}
|
4143
|
+
|
4144
|
+
/**
|
4145
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
4146
|
+
*
|
4147
|
+
* This source code is licensed under the MIT license found in the
|
4148
|
+
* LICENSE file in the root directory of this source tree.
|
4149
|
+
*/
|
4150
|
+
|
4151
|
+
var ReactPropTypesSecret$1 = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
|
4152
|
+
|
4153
|
+
var ReactPropTypesSecret_1 = ReactPropTypesSecret$1;
|
4154
|
+
|
4155
|
+
{
|
4156
|
+
var invariant$2 = invariant_1;
|
4157
|
+
var warning$11 = warning_1;
|
4158
|
+
var ReactPropTypesSecret$2 = ReactPropTypesSecret_1;
|
4159
|
+
var loggedTypeFailures$1 = {};
|
4160
|
+
}
|
4161
|
+
|
4162
|
+
/**
|
4163
|
+
* Assert that the values match with the type specs.
|
4164
|
+
* Error messages are memorized and will only be shown once.
|
4165
|
+
*
|
4166
|
+
* @param {object} typeSpecs Map of name to a ReactPropType
|
4167
|
+
* @param {object} values Runtime values that need to be type-checked
|
4168
|
+
* @param {string} location e.g. "prop", "context", "child context"
|
4169
|
+
* @param {string} componentName Name of the component for error messages.
|
4170
|
+
* @param {?Function} getStack Returns the component stack.
|
4171
|
+
* @private
|
4172
|
+
*/
|
4173
|
+
function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
|
4174
|
+
{
|
4175
|
+
for (var typeSpecName in typeSpecs) {
|
4176
|
+
if (typeSpecs.hasOwnProperty(typeSpecName)) {
|
4177
|
+
var error;
|
4178
|
+
// Prop type validation may throw. In case they do, we don't want to
|
4179
|
+
// fail the render phase where it didn't fail before. So we log it.
|
4180
|
+
// After these have been cleaned up, we'll let them throw.
|
4181
|
+
try {
|
4182
|
+
// This is intentionally an invariant that gets caught. It's the same
|
4183
|
+
// behavior as without this statement except with a better message.
|
4184
|
+
invariant$2(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'the `prop-types` package, but received `%s`.', componentName || 'React class', location, typeSpecName, typeof typeSpecs[typeSpecName]);
|
4185
|
+
error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret$2);
|
4186
|
+
} catch (ex) {
|
4187
|
+
error = ex;
|
4188
|
+
}
|
4189
|
+
warning$11(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);
|
4190
|
+
if (error instanceof Error && !(error.message in loggedTypeFailures$1)) {
|
4191
|
+
// Only monitor this failure once because there tends to be a lot of the
|
4192
|
+
// same error.
|
4193
|
+
loggedTypeFailures$1[error.message] = true;
|
4194
|
+
|
4195
|
+
var stack = getStack ? getStack() : '';
|
4196
|
+
|
4197
|
+
warning$11(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');
|
4198
|
+
}
|
4199
|
+
}
|
4200
|
+
}
|
4201
|
+
}
|
4202
|
+
}
|
4203
|
+
|
4204
|
+
var checkPropTypes_1 = checkPropTypes;
|
4205
|
+
|
4206
|
+
var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
|
4207
|
+
/* global Symbol */
|
4208
|
+
var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
|
4209
|
+
var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
|
4210
|
+
|
4211
|
+
/**
|
4212
|
+
* Returns the iterator method function contained on the iterable object.
|
4213
|
+
*
|
4214
|
+
* Be sure to invoke the function with the iterable as context:
|
4215
|
+
*
|
4216
|
+
* var iteratorFn = getIteratorFn(myIterable);
|
4217
|
+
* if (iteratorFn) {
|
4218
|
+
* var iterator = iteratorFn.call(myIterable);
|
4219
|
+
* ...
|
4220
|
+
* }
|
4221
|
+
*
|
4222
|
+
* @param {?object} maybeIterable
|
4223
|
+
* @return {?function}
|
4224
|
+
*/
|
4225
|
+
function getIteratorFn(maybeIterable) {
|
4226
|
+
var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
|
4227
|
+
if (typeof iteratorFn === 'function') {
|
4228
|
+
return iteratorFn;
|
4229
|
+
}
|
4230
|
+
}
|
4231
|
+
|
4232
|
+
/**
|
4233
|
+
* Collection of methods that allow declaration and validation of props that are
|
4234
|
+
* supplied to React components. Example usage:
|
4235
|
+
*
|
4236
|
+
* var Props = require('ReactPropTypes');
|
4237
|
+
* var MyArticle = React.createClass({
|
4238
|
+
* propTypes: {
|
4239
|
+
* // An optional string prop named "description".
|
4240
|
+
* description: Props.string,
|
4241
|
+
*
|
4242
|
+
* // A required enum prop named "category".
|
4243
|
+
* category: Props.oneOf(['News','Photos']).isRequired,
|
4244
|
+
*
|
4245
|
+
* // A prop named "dialog" that requires an instance of Dialog.
|
4246
|
+
* dialog: Props.instanceOf(Dialog).isRequired
|
4247
|
+
* },
|
4248
|
+
* render: function() { ... }
|
4249
|
+
* });
|
4250
|
+
*
|
4251
|
+
* A more formal specification of how these methods are used:
|
4252
|
+
*
|
4253
|
+
* type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
|
4254
|
+
* decl := ReactPropTypes.{type}(.isRequired)?
|
4255
|
+
*
|
4256
|
+
* Each and every declaration produces a function with the same signature. This
|
4257
|
+
* allows the creation of custom validation functions. For example:
|
4258
|
+
*
|
4259
|
+
* var MyLink = React.createClass({
|
4260
|
+
* propTypes: {
|
4261
|
+
* // An optional string or URI prop named "href".
|
4262
|
+
* href: function(props, propName, componentName) {
|
4263
|
+
* var propValue = props[propName];
|
4264
|
+
* if (propValue != null && typeof propValue !== 'string' &&
|
4265
|
+
* !(propValue instanceof URI)) {
|
4266
|
+
* return new Error(
|
4267
|
+
* 'Expected a string or an URI for ' + propName + ' in ' +
|
4268
|
+
* componentName
|
4269
|
+
* );
|
4270
|
+
* }
|
4271
|
+
* }
|
4272
|
+
* },
|
4273
|
+
* render: function() {...}
|
4274
|
+
* });
|
4275
|
+
*
|
4276
|
+
* @internal
|
4277
|
+
*/
|
4278
|
+
|
4279
|
+
var ANONYMOUS = '<<anonymous>>';
|
4280
|
+
|
4281
|
+
// Important!
|
4282
|
+
// Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
|
4283
|
+
var ReactPropTypes = {
|
4284
|
+
array: createPrimitiveTypeChecker('array'),
|
4285
|
+
bool: createPrimitiveTypeChecker('boolean'),
|
4286
|
+
func: createPrimitiveTypeChecker('function'),
|
4287
|
+
number: createPrimitiveTypeChecker('number'),
|
4288
|
+
object: createPrimitiveTypeChecker('object'),
|
4289
|
+
string: createPrimitiveTypeChecker('string'),
|
4290
|
+
symbol: createPrimitiveTypeChecker('symbol'),
|
4291
|
+
|
4292
|
+
any: createAnyTypeChecker(),
|
4293
|
+
arrayOf: createArrayOfTypeChecker,
|
4294
|
+
element: createElementTypeChecker(),
|
4295
|
+
instanceOf: createInstanceTypeChecker,
|
4296
|
+
node: createNodeChecker(),
|
4297
|
+
objectOf: createObjectOfTypeChecker,
|
4298
|
+
oneOf: createEnumTypeChecker,
|
4299
|
+
oneOfType: createUnionTypeChecker,
|
4300
|
+
shape: createShapeTypeChecker,
|
4301
|
+
exact: createStrictShapeTypeChecker,
|
4302
|
+
};
|
4303
|
+
|
4304
|
+
/**
|
4305
|
+
* inlined Object.is polyfill to avoid requiring consumers ship their own
|
4306
|
+
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
|
4307
|
+
*/
|
4308
|
+
/*eslint-disable no-self-compare*/
|
4309
|
+
function is(x, y) {
|
4310
|
+
// SameValue algorithm
|
4311
|
+
if (x === y) {
|
4312
|
+
// Steps 1-5, 7-10
|
4313
|
+
// Steps 6.b-6.e: +0 != -0
|
4314
|
+
return x !== 0 || 1 / x === 1 / y;
|
4315
|
+
} else {
|
4316
|
+
// Step 6.a: NaN == NaN
|
4317
|
+
return x !== x && y !== y;
|
4318
|
+
}
|
4319
|
+
}
|
4320
|
+
/*eslint-enable no-self-compare*/
|
4321
|
+
|
4322
|
+
/**
|
4323
|
+
* We use an Error-like object for backward compatibility as people may call
|
4324
|
+
* PropTypes directly and inspect their output. However, we don't use real
|
4325
|
+
* Errors anymore. We don't inspect their stack anyway, and creating them
|
4326
|
+
* is prohibitively expensive if they are created too often, such as what
|
4327
|
+
* happens in oneOfType() for any type before the one that matched.
|
4328
|
+
*/
|
4329
|
+
function PropTypeError(message) {
|
4330
|
+
this.message = message;
|
4331
|
+
this.stack = '';
|
4332
|
+
}
|
4333
|
+
// Make `instanceof Error` still work for returned errors.
|
4334
|
+
PropTypeError.prototype = Error.prototype;
|
4335
|
+
|
4336
|
+
function createChainableTypeChecker(validate) {
|
4337
|
+
{
|
4338
|
+
var manualPropTypeCallCache = {};
|
4339
|
+
var manualPropTypeWarningCount = 0;
|
4340
|
+
}
|
4341
|
+
function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
|
4342
|
+
componentName = componentName || ANONYMOUS;
|
4343
|
+
propFullName = propFullName || propName;
|
4344
|
+
|
4345
|
+
if (secret !== ReactPropTypesSecret_1) {
|
4346
|
+
if (throwOnDirectAccess) {
|
4347
|
+
// New behavior only for users of `prop-types` package
|
4348
|
+
invariant_1(
|
4349
|
+
false,
|
4350
|
+
'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
|
4351
|
+
'Use `PropTypes.checkPropTypes()` to call them. ' +
|
4352
|
+
'Read more at http://fb.me/use-check-prop-types'
|
4353
|
+
);
|
4354
|
+
} else if ('development' !== 'production' && typeof console !== 'undefined') {
|
4355
|
+
// Old behavior for people using React.PropTypes
|
4356
|
+
var cacheKey = componentName + ':' + propName;
|
4357
|
+
if (
|
4358
|
+
!manualPropTypeCallCache[cacheKey] &&
|
4359
|
+
// Avoid spamming the console because they are often not actionable except for lib authors
|
4360
|
+
manualPropTypeWarningCount < 3
|
4361
|
+
) {
|
4362
|
+
warning_1(
|
4363
|
+
false,
|
4364
|
+
'You are manually calling a React.PropTypes validation ' +
|
4365
|
+
'function for the `%s` prop on `%s`. This is deprecated ' +
|
4366
|
+
'and will throw in the standalone `prop-types` package. ' +
|
4367
|
+
'You may be seeing this warning due to a third-party PropTypes ' +
|
4368
|
+
'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.',
|
4369
|
+
propFullName,
|
4370
|
+
componentName
|
4371
|
+
);
|
4372
|
+
manualPropTypeCallCache[cacheKey] = true;
|
4373
|
+
manualPropTypeWarningCount++;
|
4374
|
+
}
|
4375
|
+
}
|
4376
|
+
}
|
4377
|
+
if (props[propName] == null) {
|
4378
|
+
if (isRequired) {
|
4379
|
+
if (props[propName] === null) {
|
4380
|
+
return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
|
4381
|
+
}
|
4382
|
+
return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
|
4383
|
+
}
|
4384
|
+
return null;
|
4385
|
+
} else {
|
4386
|
+
return validate(props, propName, componentName, location, propFullName);
|
4387
|
+
}
|
4388
|
+
}
|
4389
|
+
|
4390
|
+
var chainedCheckType = checkType.bind(null, false);
|
4391
|
+
chainedCheckType.isRequired = checkType.bind(null, true);
|
4392
|
+
|
4393
|
+
return chainedCheckType;
|
4394
|
+
}
|
4395
|
+
|
4396
|
+
function createPrimitiveTypeChecker(expectedType) {
|
4397
|
+
function validate(props, propName, componentName, location, propFullName, secret) {
|
4398
|
+
var propValue = props[propName];
|
4399
|
+
var propType = getPropType(propValue);
|
4400
|
+
if (propType !== expectedType) {
|
4401
|
+
// `propValue` being instance of, say, date/regexp, pass the 'object'
|
4402
|
+
// check, but we can offer a more precise error message here rather than
|
4403
|
+
// 'of type `object`'.
|
4404
|
+
var preciseType = getPreciseType(propValue);
|
4405
|
+
|
4406
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
|
4407
|
+
}
|
4408
|
+
return null;
|
4409
|
+
}
|
4410
|
+
return createChainableTypeChecker(validate);
|
4411
|
+
}
|
4412
|
+
|
4413
|
+
function createAnyTypeChecker() {
|
4414
|
+
return createChainableTypeChecker(emptyFunction_1.thatReturnsNull);
|
4415
|
+
}
|
4416
|
+
|
4417
|
+
function createArrayOfTypeChecker(typeChecker) {
|
4418
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4419
|
+
if (typeof typeChecker !== 'function') {
|
4420
|
+
return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
|
4421
|
+
}
|
4422
|
+
var propValue = props[propName];
|
4423
|
+
if (!Array.isArray(propValue)) {
|
4424
|
+
var propType = getPropType(propValue);
|
4425
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
|
4426
|
+
}
|
4427
|
+
for (var i = 0; i < propValue.length; i++) {
|
4428
|
+
var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret_1);
|
4429
|
+
if (error instanceof Error) {
|
4430
|
+
return error;
|
4431
|
+
}
|
4432
|
+
}
|
4433
|
+
return null;
|
4434
|
+
}
|
4435
|
+
return createChainableTypeChecker(validate);
|
4436
|
+
}
|
4437
|
+
|
4438
|
+
function createElementTypeChecker() {
|
4439
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4440
|
+
var propValue = props[propName];
|
4441
|
+
if (!isValidElement(propValue)) {
|
4442
|
+
var propType = getPropType(propValue);
|
4443
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
|
4444
|
+
}
|
4445
|
+
return null;
|
4446
|
+
}
|
4447
|
+
return createChainableTypeChecker(validate);
|
4448
|
+
}
|
4449
|
+
|
4450
|
+
function createInstanceTypeChecker(expectedClass) {
|
4451
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4452
|
+
if (!(props[propName] instanceof expectedClass)) {
|
4453
|
+
var expectedClassName = expectedClass.name || ANONYMOUS;
|
4454
|
+
var actualClassName = getClassName(props[propName]);
|
4455
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
|
4456
|
+
}
|
4457
|
+
return null;
|
4458
|
+
}
|
4459
|
+
return createChainableTypeChecker(validate);
|
4460
|
+
}
|
4461
|
+
|
4462
|
+
function createEnumTypeChecker(expectedValues) {
|
4463
|
+
if (!Array.isArray(expectedValues)) {
|
4464
|
+
warning_1(false, 'Invalid argument supplied to oneOf, expected an instance of array.');
|
4465
|
+
return emptyFunction_1.thatReturnsNull;
|
4466
|
+
}
|
4467
|
+
|
4468
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4469
|
+
var propValue = props[propName];
|
4470
|
+
for (var i = 0; i < expectedValues.length; i++) {
|
4471
|
+
if (is(propValue, expectedValues[i])) {
|
4472
|
+
return null;
|
4473
|
+
}
|
4474
|
+
}
|
4475
|
+
|
4476
|
+
var valuesString = JSON.stringify(expectedValues);
|
4477
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
|
4478
|
+
}
|
4479
|
+
return createChainableTypeChecker(validate);
|
4480
|
+
}
|
4481
|
+
|
4482
|
+
function createObjectOfTypeChecker(typeChecker) {
|
4483
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4484
|
+
if (typeof typeChecker !== 'function') {
|
4485
|
+
return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
|
4486
|
+
}
|
4487
|
+
var propValue = props[propName];
|
4488
|
+
var propType = getPropType(propValue);
|
4489
|
+
if (propType !== 'object') {
|
4490
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
|
4491
|
+
}
|
4492
|
+
for (var key in propValue) {
|
4493
|
+
if (propValue.hasOwnProperty(key)) {
|
4494
|
+
var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret_1);
|
4495
|
+
if (error instanceof Error) {
|
4496
|
+
return error;
|
4497
|
+
}
|
4498
|
+
}
|
4499
|
+
}
|
4500
|
+
return null;
|
4501
|
+
}
|
4502
|
+
return createChainableTypeChecker(validate);
|
4503
|
+
}
|
4504
|
+
|
4505
|
+
function createUnionTypeChecker(arrayOfTypeCheckers) {
|
4506
|
+
if (!Array.isArray(arrayOfTypeCheckers)) {
|
4507
|
+
warning_1(false, 'Invalid argument supplied to oneOfType, expected an instance of array.');
|
4508
|
+
return emptyFunction_1.thatReturnsNull;
|
4509
|
+
}
|
4510
|
+
|
4511
|
+
for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
|
4512
|
+
var checker = arrayOfTypeCheckers[i];
|
4513
|
+
if (typeof checker !== 'function') {
|
4514
|
+
warning_1(
|
4515
|
+
false,
|
4516
|
+
'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
|
4517
|
+
'received %s at index %s.',
|
4518
|
+
getPostfixForTypeWarning(checker),
|
4519
|
+
i
|
4520
|
+
);
|
4521
|
+
return emptyFunction_1.thatReturnsNull;
|
4522
|
+
}
|
4523
|
+
}
|
4524
|
+
|
4525
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4526
|
+
for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
|
4527
|
+
var checker = arrayOfTypeCheckers[i];
|
4528
|
+
if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret_1) == null) {
|
4529
|
+
return null;
|
4530
|
+
}
|
4531
|
+
}
|
4532
|
+
|
4533
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
|
4534
|
+
}
|
4535
|
+
return createChainableTypeChecker(validate);
|
4536
|
+
}
|
4537
|
+
|
4538
|
+
function createNodeChecker() {
|
4539
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4540
|
+
if (!isNode(props[propName])) {
|
4541
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
|
4542
|
+
}
|
4543
|
+
return null;
|
4544
|
+
}
|
4545
|
+
return createChainableTypeChecker(validate);
|
4546
|
+
}
|
4547
|
+
|
4548
|
+
function createShapeTypeChecker(shapeTypes) {
|
4549
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4550
|
+
var propValue = props[propName];
|
4551
|
+
var propType = getPropType(propValue);
|
4552
|
+
if (propType !== 'object') {
|
4553
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
|
4554
|
+
}
|
4555
|
+
for (var key in shapeTypes) {
|
4556
|
+
var checker = shapeTypes[key];
|
4557
|
+
if (!checker) {
|
4558
|
+
continue;
|
4559
|
+
}
|
4560
|
+
var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret_1);
|
4561
|
+
if (error) {
|
4562
|
+
return error;
|
4563
|
+
}
|
4564
|
+
}
|
4565
|
+
return null;
|
4566
|
+
}
|
4567
|
+
return createChainableTypeChecker(validate);
|
4568
|
+
}
|
4569
|
+
|
4570
|
+
function createStrictShapeTypeChecker(shapeTypes) {
|
4571
|
+
function validate(props, propName, componentName, location, propFullName) {
|
4572
|
+
var propValue = props[propName];
|
4573
|
+
var propType = getPropType(propValue);
|
4574
|
+
if (propType !== 'object') {
|
4575
|
+
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
|
4576
|
+
}
|
4577
|
+
// We need to check all keys in case some are required but missing from
|
4578
|
+
// props.
|
4579
|
+
var allKeys = assign({}, props[propName], shapeTypes);
|
4580
|
+
for (var key in allKeys) {
|
4581
|
+
var checker = shapeTypes[key];
|
4582
|
+
if (!checker) {
|
4583
|
+
return new PropTypeError(
|
4584
|
+
'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
|
4585
|
+
'\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
|
4586
|
+
'\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
|
4587
|
+
);
|
4588
|
+
}
|
4589
|
+
var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret_1);
|
4590
|
+
if (error) {
|
4591
|
+
return error;
|
4592
|
+
}
|
4593
|
+
}
|
4594
|
+
return null;
|
4595
|
+
}
|
4596
|
+
|
4597
|
+
return createChainableTypeChecker(validate);
|
4598
|
+
}
|
4599
|
+
|
4600
|
+
function isNode(propValue) {
|
4601
|
+
switch (typeof propValue) {
|
4602
|
+
case 'number':
|
4603
|
+
case 'string':
|
4604
|
+
case 'undefined':
|
4605
|
+
return true;
|
4606
|
+
case 'boolean':
|
4607
|
+
return !propValue;
|
4608
|
+
case 'object':
|
4609
|
+
if (Array.isArray(propValue)) {
|
4610
|
+
return propValue.every(isNode);
|
4611
|
+
}
|
4612
|
+
if (propValue === null || isValidElement(propValue)) {
|
4613
|
+
return true;
|
4614
|
+
}
|
4615
|
+
|
4616
|
+
var iteratorFn = getIteratorFn(propValue);
|
4617
|
+
if (iteratorFn) {
|
4618
|
+
var iterator = iteratorFn.call(propValue);
|
4619
|
+
var step;
|
4620
|
+
if (iteratorFn !== propValue.entries) {
|
4621
|
+
while (!(step = iterator.next()).done) {
|
4622
|
+
if (!isNode(step.value)) {
|
4623
|
+
return false;
|
4624
|
+
}
|
4625
|
+
}
|
4626
|
+
} else {
|
4627
|
+
// Iterator will provide entry [k,v] tuples rather than values.
|
4628
|
+
while (!(step = iterator.next()).done) {
|
4629
|
+
var entry = step.value;
|
4630
|
+
if (entry) {
|
4631
|
+
if (!isNode(entry[1])) {
|
4632
|
+
return false;
|
4633
|
+
}
|
4634
|
+
}
|
4635
|
+
}
|
4636
|
+
}
|
4637
|
+
} else {
|
4638
|
+
return false;
|
3674
4639
|
}
|
3675
|
-
}
|
3676
|
-
} else {
|
3677
|
-
DOMPropertyOperations.setValueForAttribute(node, name, DOMProperty_1.shouldSetAttribute(name, value) ? value : null);
|
3678
|
-
return;
|
3679
|
-
}
|
3680
4640
|
|
3681
|
-
|
3682
|
-
|
3683
|
-
|
3684
|
-
ReactInstrumentation.debugTool.onHostOperation({
|
3685
|
-
instanceID: ReactDOMComponentTree_1.getInstanceFromNode(node)._debugID,
|
3686
|
-
type: 'update attribute',
|
3687
|
-
payload: payload
|
3688
|
-
});
|
4641
|
+
return true;
|
4642
|
+
default:
|
4643
|
+
return false;
|
3689
4644
|
}
|
3690
|
-
}
|
4645
|
+
}
|
3691
4646
|
|
3692
|
-
|
3693
|
-
|
3694
|
-
|
4647
|
+
function isSymbol(propType, propValue) {
|
4648
|
+
// Native Symbol.
|
4649
|
+
if (propType === 'symbol') {
|
4650
|
+
return true;
|
3695
4651
|
}
|
3696
|
-
|
3697
|
-
|
3698
|
-
|
3699
|
-
|
4652
|
+
|
4653
|
+
// 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
|
4654
|
+
if (propValue['@@toStringTag'] === 'Symbol') {
|
4655
|
+
return true;
|
3700
4656
|
}
|
3701
4657
|
|
3702
|
-
|
3703
|
-
|
3704
|
-
|
3705
|
-
ReactInstrumentation.debugTool.onHostOperation({
|
3706
|
-
instanceID: ReactDOMComponentTree_1.getInstanceFromNode(node)._debugID,
|
3707
|
-
type: 'update attribute',
|
3708
|
-
payload: payload
|
3709
|
-
});
|
4658
|
+
// Fallback for non-spec compliant Symbols which are polyfilled.
|
4659
|
+
if (typeof Symbol === 'function' && propValue instanceof Symbol) {
|
4660
|
+
return true;
|
3710
4661
|
}
|
3711
|
-
},
|
3712
4662
|
|
3713
|
-
|
3714
|
-
|
3715
|
-
|
3716
|
-
|
3717
|
-
|
3718
|
-
|
3719
|
-
|
3720
|
-
|
3721
|
-
{
|
3722
|
-
ReactInstrumentation.debugTool.onHostOperation({
|
3723
|
-
instanceID: ReactDOMComponentTree_1.getInstanceFromNode(node)._debugID,
|
3724
|
-
type: 'remove attribute',
|
3725
|
-
payload: name
|
3726
|
-
});
|
4663
|
+
return false;
|
4664
|
+
}
|
4665
|
+
|
4666
|
+
// Equivalent of `typeof` but with special handling for array and regexp.
|
4667
|
+
function getPropType(propValue) {
|
4668
|
+
var propType = typeof propValue;
|
4669
|
+
if (Array.isArray(propValue)) {
|
4670
|
+
return 'array';
|
3727
4671
|
}
|
3728
|
-
|
4672
|
+
if (propValue instanceof RegExp) {
|
4673
|
+
// Old webkits (at least until Android 4.0) return 'function' rather than
|
4674
|
+
// 'object' for typeof a RegExp. We'll normalize this here so that /bla/
|
4675
|
+
// passes PropTypes.object.
|
4676
|
+
return 'object';
|
4677
|
+
}
|
4678
|
+
if (isSymbol(propType, propValue)) {
|
4679
|
+
return 'symbol';
|
4680
|
+
}
|
4681
|
+
return propType;
|
4682
|
+
}
|
3729
4683
|
|
3730
|
-
|
3731
|
-
|
3732
|
-
|
3733
|
-
|
3734
|
-
|
3735
|
-
|
3736
|
-
|
3737
|
-
|
3738
|
-
|
3739
|
-
|
3740
|
-
if (
|
3741
|
-
|
3742
|
-
} else if (propertyInfo.mustUseProperty) {
|
3743
|
-
var propName = propertyInfo.propertyName;
|
3744
|
-
if (propertyInfo.hasBooleanValue) {
|
3745
|
-
node[propName] = false;
|
3746
|
-
} else {
|
3747
|
-
node[propName] = '';
|
3748
|
-
}
|
3749
|
-
} else {
|
3750
|
-
node.removeAttribute(propertyInfo.attributeName);
|
4684
|
+
// This handles more types than `getPropType`. Only used for error messages.
|
4685
|
+
// See `createPrimitiveTypeChecker`.
|
4686
|
+
function getPreciseType(propValue) {
|
4687
|
+
if (typeof propValue === 'undefined' || propValue === null) {
|
4688
|
+
return '' + propValue;
|
4689
|
+
}
|
4690
|
+
var propType = getPropType(propValue);
|
4691
|
+
if (propType === 'object') {
|
4692
|
+
if (propValue instanceof Date) {
|
4693
|
+
return 'date';
|
4694
|
+
} else if (propValue instanceof RegExp) {
|
4695
|
+
return 'regexp';
|
3751
4696
|
}
|
3752
|
-
} else {
|
3753
|
-
node.removeAttribute(name);
|
3754
4697
|
}
|
4698
|
+
return propType;
|
4699
|
+
}
|
3755
4700
|
|
3756
|
-
|
3757
|
-
|
3758
|
-
|
3759
|
-
|
3760
|
-
|
3761
|
-
|
4701
|
+
// Returns a string that is postfixed to a warning about an invalid type.
|
4702
|
+
// For example, "undefined" or "of type array"
|
4703
|
+
function getPostfixForTypeWarning(value) {
|
4704
|
+
var type = getPreciseType(value);
|
4705
|
+
switch (type) {
|
4706
|
+
case 'array':
|
4707
|
+
case 'object':
|
4708
|
+
return 'an ' + type;
|
4709
|
+
case 'boolean':
|
4710
|
+
case 'date':
|
4711
|
+
case 'regexp':
|
4712
|
+
return 'a ' + type;
|
4713
|
+
default:
|
4714
|
+
return type;
|
4715
|
+
}
|
4716
|
+
}
|
4717
|
+
|
4718
|
+
// Returns class name of the object, if any.
|
4719
|
+
function getClassName(propValue) {
|
4720
|
+
if (!propValue.constructor || !propValue.constructor.name) {
|
4721
|
+
return ANONYMOUS;
|
3762
4722
|
}
|
4723
|
+
return propValue.constructor.name;
|
3763
4724
|
}
|
4725
|
+
|
4726
|
+
ReactPropTypes.checkPropTypes = checkPropTypes_1;
|
4727
|
+
ReactPropTypes.PropTypes = ReactPropTypes;
|
4728
|
+
|
4729
|
+
return ReactPropTypes;
|
3764
4730
|
};
|
3765
4731
|
|
3766
|
-
var
|
4732
|
+
var index = createCommonjsModule(function (module) {
|
4733
|
+
/**
|
4734
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
4735
|
+
*
|
4736
|
+
* This source code is licensed under the MIT license found in the
|
4737
|
+
* LICENSE file in the root directory of this source tree.
|
4738
|
+
*/
|
4739
|
+
|
4740
|
+
{
|
4741
|
+
var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
|
4742
|
+
Symbol.for &&
|
4743
|
+
Symbol.for('react.element')) ||
|
4744
|
+
0xeac7;
|
4745
|
+
|
4746
|
+
var isValidElement = function(object) {
|
4747
|
+
return typeof object === 'object' &&
|
4748
|
+
object !== null &&
|
4749
|
+
object.$$typeof === REACT_ELEMENT_TYPE;
|
4750
|
+
};
|
4751
|
+
|
4752
|
+
// By explicitly using `prop-types` you are opting into new development behavior.
|
4753
|
+
// http://fb.me/prop-types-in-prod
|
4754
|
+
var throwOnDirectAccess = true;
|
4755
|
+
module.exports = factoryWithTypeCheckers(isValidElement, throwOnDirectAccess);
|
4756
|
+
}
|
4757
|
+
});
|
3767
4758
|
|
3768
4759
|
var ReactControlledValuePropTypes = {
|
3769
4760
|
checkPropTypes: null
|
3770
4761
|
};
|
3771
4762
|
|
3772
4763
|
{
|
3773
|
-
var warning$
|
3774
|
-
var emptyFunction$2 =
|
3775
|
-
var PropTypes =
|
4764
|
+
var warning$10 = warning_1;
|
4765
|
+
var emptyFunction$2 = emptyFunction_1;
|
4766
|
+
var PropTypes = index;
|
3776
4767
|
var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
|
3777
4768
|
|
3778
4769
|
ReactControlledValuePropTypes.checkPropTypes = emptyFunction$2;
|
@@ -3786,7 +4777,7 @@ var ReactControlledValuePropTypes = {
|
|
3786
4777
|
submit: true
|
3787
4778
|
};
|
3788
4779
|
|
3789
|
-
var propTypes
|
4780
|
+
var propTypes = {
|
3790
4781
|
value: function (props, propName, componentName) {
|
3791
4782
|
if (!props[propName] || hasReadOnlyValue[props.type] || props.onChange || props.readOnly || props.disabled) {
|
3792
4783
|
return null;
|
@@ -3809,16 +4800,16 @@ var ReactControlledValuePropTypes = {
|
|
3809
4800
|
* this outside of the ReactDOM controlled form components.
|
3810
4801
|
*/
|
3811
4802
|
ReactControlledValuePropTypes.checkPropTypes = function (tagName, props, getStack) {
|
3812
|
-
for (var propName in propTypes
|
3813
|
-
if (propTypes
|
3814
|
-
var error = propTypes
|
4803
|
+
for (var propName in propTypes) {
|
4804
|
+
if (propTypes.hasOwnProperty(propName)) {
|
4805
|
+
var error = propTypes[propName](props, propName, tagName, 'prop', null, ReactPropTypesSecret);
|
3815
4806
|
}
|
3816
4807
|
if (error instanceof Error && !(error.message in loggedTypeFailures)) {
|
3817
4808
|
// Only monitor this failure once because there tends to be a lot of the
|
3818
4809
|
// same error.
|
3819
4810
|
loggedTypeFailures[error.message] = true;
|
3820
4811
|
|
3821
|
-
warning$
|
4812
|
+
warning$10(false, 'Failed form propType: %s%s', error.message, getStack());
|
3822
4813
|
}
|
3823
4814
|
}
|
3824
4815
|
};
|
@@ -3832,7 +4823,7 @@ var getCurrentFiberOwnerName$3 = ReactDebugCurrentFiber_1.getCurrentFiberOwnerNa
|
|
3832
4823
|
var _require2$3 = ReactDebugCurrentFiber_1,
|
3833
4824
|
getCurrentFiberStackAddendum$2 = _require2$3.getCurrentFiberStackAddendum;
|
3834
4825
|
|
3835
|
-
var warning$
|
4826
|
+
var warning$9 = warning_1;
|
3836
4827
|
}
|
3837
4828
|
|
3838
4829
|
|
@@ -3869,7 +4860,7 @@ var ReactDOMInput = {
|
|
3869
4860
|
var value = props.value;
|
3870
4861
|
var checked = props.checked;
|
3871
4862
|
|
3872
|
-
var hostProps =
|
4863
|
+
var hostProps = assign({
|
3873
4864
|
// Make sure we set .type before any other properties (setting .value
|
3874
4865
|
// before .type means .value is lost in IE11 and below)
|
3875
4866
|
type: undefined,
|
@@ -3895,11 +4886,11 @@ var ReactDOMInput = {
|
|
3895
4886
|
ReactControlledValuePropTypes_1.checkPropTypes('input', props, getCurrentFiberStackAddendum$2);
|
3896
4887
|
|
3897
4888
|
if (props.checked !== undefined && props.defaultChecked !== undefined && !didWarnCheckedDefaultChecked) {
|
3898
|
-
warning$
|
4889
|
+
warning$9(false, '%s contains an input of type %s with both checked and defaultChecked props. ' + 'Input elements must be either controlled or uncontrolled ' + '(specify either the checked prop, or the defaultChecked prop, but not ' + 'both). Decide between using a controlled or uncontrolled input ' + 'element and remove one of these props. More info: ' + 'https://fb.me/react-controlled-components', getCurrentFiberOwnerName$3() || 'A component', props.type);
|
3899
4890
|
didWarnCheckedDefaultChecked = true;
|
3900
4891
|
}
|
3901
4892
|
if (props.value !== undefined && props.defaultValue !== undefined && !didWarnValueDefaultValue) {
|
3902
|
-
warning$
|
4893
|
+
warning$9(false, '%s contains an input of type %s with both value and defaultValue props. ' + 'Input elements must be either controlled or uncontrolled ' + '(specify either the value prop, or the defaultValue prop, but not ' + 'both). Decide between using a controlled or uncontrolled input ' + 'element and remove one of these props. More info: ' + 'https://fb.me/react-controlled-components', getCurrentFiberOwnerName$3() || 'A component', props.type);
|
3903
4894
|
didWarnValueDefaultValue = true;
|
3904
4895
|
}
|
3905
4896
|
}
|
@@ -3919,11 +4910,11 @@ var ReactDOMInput = {
|
|
3919
4910
|
var controlled = isControlled(props);
|
3920
4911
|
|
3921
4912
|
if (!node._wrapperState.controlled && controlled && !didWarnUncontrolledToControlled) {
|
3922
|
-
warning$
|
4913
|
+
warning$9(false, 'A component is changing an uncontrolled input of type %s to be controlled. ' + 'Input elements should not switch from uncontrolled to controlled (or vice versa). ' + 'Decide between using a controlled or uncontrolled input ' + 'element for the lifetime of the component. More info: https://fb.me/react-controlled-components%s', props.type, getCurrentFiberStackAddendum$2());
|
3923
4914
|
didWarnUncontrolledToControlled = true;
|
3924
4915
|
}
|
3925
4916
|
if (node._wrapperState.controlled && !controlled && !didWarnControlledToUncontrolled) {
|
3926
|
-
warning$
|
4917
|
+
warning$9(false, 'A component is changing a controlled input of type %s to be uncontrolled. ' + 'Input elements should not switch from controlled to uncontrolled (or vice versa). ' + 'Decide between using a controlled or uncontrolled input ' + 'element for the lifetime of the component. More info: https://fb.me/react-controlled-components%s', props.type, getCurrentFiberStackAddendum$2());
|
3927
4918
|
didWarnControlledToUncontrolled = true;
|
3928
4919
|
}
|
3929
4920
|
}
|
@@ -4057,7 +5048,7 @@ function updateNamedCousins(rootNode, props) {
|
|
4057
5048
|
// That's probably okay; we don't support it just as we don't support
|
4058
5049
|
// mixing React radio buttons with non-React ones.
|
4059
5050
|
var otherProps = ReactDOMComponentTree_1.getFiberCurrentPropsFromNode(otherNode);
|
4060
|
-
!otherProps ?
|
5051
|
+
!otherProps ? invariant_1(false, 'ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported.') : void 0;
|
4061
5052
|
// If this is a controlled radio button group, forcing the input that
|
4062
5053
|
// was previously checked to update will cause it to be come re-checked
|
4063
5054
|
// as appropriate.
|
@@ -4069,7 +5060,7 @@ function updateNamedCousins(rootNode, props) {
|
|
4069
5060
|
var ReactDOMFiberInput = ReactDOMInput;
|
4070
5061
|
|
4071
5062
|
{
|
4072
|
-
var warning$
|
5063
|
+
var warning$12 = warning_1;
|
4073
5064
|
}
|
4074
5065
|
|
4075
5066
|
function flattenChildren(children) {
|
@@ -4079,7 +5070,7 @@ function flattenChildren(children) {
|
|
4079
5070
|
// invalid types are ignored.
|
4080
5071
|
// We can silently skip them because invalid DOM nesting warning
|
4081
5072
|
// catches these cases in Fiber.
|
4082
|
-
|
5073
|
+
require$$0.Children.forEach(children, function (child) {
|
4083
5074
|
if (child == null) {
|
4084
5075
|
return;
|
4085
5076
|
}
|
@@ -4098,7 +5089,7 @@ var ReactDOMOption = {
|
|
4098
5089
|
validateProps: function (element, props) {
|
4099
5090
|
// TODO (yungsters): Remove support for `selected` in <option>.
|
4100
5091
|
{
|
4101
|
-
warning$
|
5092
|
+
warning$12(props.selected == null, 'Use the `defaultValue` or `value` props on <select> instead of ' + 'setting `selected` on <option>.');
|
4102
5093
|
}
|
4103
5094
|
},
|
4104
5095
|
|
@@ -4110,7 +5101,7 @@ var ReactDOMOption = {
|
|
4110
5101
|
},
|
4111
5102
|
|
4112
5103
|
getHostProps: function (element, props) {
|
4113
|
-
var hostProps =
|
5104
|
+
var hostProps = assign({ children: undefined }, props);
|
4114
5105
|
|
4115
5106
|
var content = flattenChildren(props.children);
|
4116
5107
|
|
@@ -4128,7 +5119,7 @@ var getCurrentFiberOwnerName$4 = ReactDebugCurrentFiber_1.getCurrentFiberOwnerNa
|
|
4128
5119
|
|
4129
5120
|
{
|
4130
5121
|
var didWarnValueDefaultValue$1 = false;
|
4131
|
-
var warning$
|
5122
|
+
var warning$13 = warning_1;
|
4132
5123
|
|
4133
5124
|
var _require2$4 = ReactDebugCurrentFiber_1,
|
4134
5125
|
getCurrentFiberStackAddendum$3 = _require2$4.getCurrentFiberStackAddendum;
|
@@ -4157,9 +5148,9 @@ function checkSelectPropTypes(props) {
|
|
4157
5148
|
}
|
4158
5149
|
var isArray = Array.isArray(props[propName]);
|
4159
5150
|
if (props.multiple && !isArray) {
|
4160
|
-
warning$
|
5151
|
+
warning$13(false, 'The `%s` prop supplied to <select> must be an array if ' + '`multiple` is true.%s', propName, getDeclarationErrorAddendum());
|
4161
5152
|
} else if (!props.multiple && isArray) {
|
4162
|
-
warning$
|
5153
|
+
warning$13(false, 'The `%s` prop supplied to <select> must be a scalar ' + 'value if `multiple` is false.%s', propName, getDeclarationErrorAddendum());
|
4163
5154
|
}
|
4164
5155
|
}
|
4165
5156
|
}
|
@@ -4217,7 +5208,7 @@ function updateOptions(node, multiple, propValue) {
|
|
4217
5208
|
*/
|
4218
5209
|
var ReactDOMSelect = {
|
4219
5210
|
getHostProps: function (element, props) {
|
4220
|
-
return
|
5211
|
+
return assign({}, props, {
|
4221
5212
|
value: undefined
|
4222
5213
|
});
|
4223
5214
|
},
|
@@ -4236,7 +5227,7 @@ var ReactDOMSelect = {
|
|
4236
5227
|
|
4237
5228
|
{
|
4238
5229
|
if (props.value !== undefined && props.defaultValue !== undefined && !didWarnValueDefaultValue$1) {
|
4239
|
-
warning$
|
5230
|
+
warning$13(false, 'Select elements must be either controlled or uncontrolled ' + '(specify either the value prop, or the defaultValue prop, but not ' + 'both). Decide between using a controlled or uncontrolled select ' + 'element and remove one of these props. More info: ' + 'https://fb.me/react-controlled-components');
|
4240
5231
|
didWarnValueDefaultValue$1 = true;
|
4241
5232
|
}
|
4242
5233
|
}
|
@@ -4289,7 +5280,7 @@ var ReactDOMSelect = {
|
|
4289
5280
|
var ReactDOMFiberSelect = ReactDOMSelect;
|
4290
5281
|
|
4291
5282
|
{
|
4292
|
-
var warning$
|
5283
|
+
var warning$14 = warning_1;
|
4293
5284
|
|
4294
5285
|
var _require$4 = ReactDebugCurrentFiber_1,
|
4295
5286
|
getCurrentFiberStackAddendum$4 = _require$4.getCurrentFiberStackAddendum;
|
@@ -4315,7 +5306,7 @@ var didWarnValDefaultVal = false;
|
|
4315
5306
|
var ReactDOMTextarea = {
|
4316
5307
|
getHostProps: function (element, props) {
|
4317
5308
|
var node = element;
|
4318
|
-
!(props.dangerouslySetInnerHTML == null) ?
|
5309
|
+
!(props.dangerouslySetInnerHTML == null) ? invariant_1(false, '`dangerouslySetInnerHTML` does not make sense on <textarea>.') : void 0;
|
4319
5310
|
|
4320
5311
|
// Always set children to the same thing. In IE9, the selection range will
|
4321
5312
|
// get reset if `textContent` is mutated. We could add a check in setTextContent
|
@@ -4323,7 +5314,7 @@ var ReactDOMTextarea = {
|
|
4323
5314
|
// completely solve this IE9 bug), but Sebastian+Sophie seemed to like this
|
4324
5315
|
// solution. The value can be a boolean or object so that's why it's forced
|
4325
5316
|
// to be a string.
|
4326
|
-
var hostProps =
|
5317
|
+
var hostProps = assign({}, props, {
|
4327
5318
|
value: undefined,
|
4328
5319
|
defaultValue: undefined,
|
4329
5320
|
children: '' + node._wrapperState.initialValue
|
@@ -4337,7 +5328,7 @@ var ReactDOMTextarea = {
|
|
4337
5328
|
{
|
4338
5329
|
ReactControlledValuePropTypes_1.checkPropTypes('textarea', props, getCurrentFiberStackAddendum$4);
|
4339
5330
|
if (props.value !== undefined && props.defaultValue !== undefined && !didWarnValDefaultVal) {
|
4340
|
-
warning$
|
5331
|
+
warning$14(false, 'Textarea elements must be either controlled or uncontrolled ' + '(specify either the value prop, or the defaultValue prop, but not ' + 'both). Decide between using a controlled or uncontrolled textarea ' + 'and remove one of these props. More info: ' + 'https://fb.me/react-controlled-components');
|
4341
5332
|
didWarnValDefaultVal = true;
|
4342
5333
|
}
|
4343
5334
|
}
|
@@ -4352,11 +5343,11 @@ var ReactDOMTextarea = {
|
|
4352
5343
|
var children = props.children;
|
4353
5344
|
if (children != null) {
|
4354
5345
|
{
|
4355
|
-
warning$
|
5346
|
+
warning$14(false, 'Use the `defaultValue` or `value` props instead of setting ' + 'children on <textarea>.');
|
4356
5347
|
}
|
4357
|
-
!(defaultValue == null) ?
|
5348
|
+
!(defaultValue == null) ? invariant_1(false, 'If you supply `defaultValue` on a <textarea>, do not pass children.') : void 0;
|
4358
5349
|
if (Array.isArray(children)) {
|
4359
|
-
!(children.length <= 1) ?
|
5350
|
+
!(children.length <= 1) ? invariant_1(false, '<textarea> can only have at most one child.') : void 0;
|
4360
5351
|
children = children[0];
|
4361
5352
|
}
|
4362
5353
|
|
@@ -4452,14 +5443,14 @@ var omittedCloseTags_1 = omittedCloseTags;
|
|
4452
5443
|
// For HTML, certain tags cannot have children. This has the same purpose as
|
4453
5444
|
// `omittedCloseTags` except that `menuitem` should still have its closing tag.
|
4454
5445
|
|
4455
|
-
var voidElementTags =
|
5446
|
+
var voidElementTags = assign({
|
4456
5447
|
menuitem: true
|
4457
5448
|
}, omittedCloseTags_1);
|
4458
5449
|
|
4459
5450
|
var voidElementTags_1 = voidElementTags;
|
4460
5451
|
|
4461
5452
|
{
|
4462
|
-
var warning$
|
5453
|
+
var warning$15 = warning_1;
|
4463
5454
|
}
|
4464
5455
|
|
4465
5456
|
var HTML$1 = '__html';
|
@@ -4481,16 +5472,16 @@ function assertValidProps(tag, props, getCurrentOwnerName) {
|
|
4481
5472
|
}
|
4482
5473
|
// Note the use of `==` which checks for null or undefined.
|
4483
5474
|
if (voidElementTags_1[tag]) {
|
4484
|
-
!(props.children == null && props.dangerouslySetInnerHTML == null) ?
|
5475
|
+
!(props.children == null && props.dangerouslySetInnerHTML == null) ? invariant_1(false, '%s is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.%s', tag, getDeclarationErrorAddendum$1(getCurrentOwnerName)) : void 0;
|
4485
5476
|
}
|
4486
5477
|
if (props.dangerouslySetInnerHTML != null) {
|
4487
|
-
!(props.children == null) ?
|
4488
|
-
!(typeof props.dangerouslySetInnerHTML === 'object' && HTML$1 in props.dangerouslySetInnerHTML) ?
|
5478
|
+
!(props.children == null) ? invariant_1(false, 'Can only set one of `children` or `props.dangerouslySetInnerHTML`.') : void 0;
|
5479
|
+
!(typeof props.dangerouslySetInnerHTML === 'object' && HTML$1 in props.dangerouslySetInnerHTML) ? invariant_1(false, '`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://fb.me/react-invariant-dangerously-set-inner-html for more information.') : void 0;
|
4489
5480
|
}
|
4490
5481
|
{
|
4491
|
-
warning$
|
5482
|
+
warning$15(props.suppressContentEditableWarning || !props.contentEditable || props.children == null, '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.');
|
4492
5483
|
}
|
4493
|
-
!(props.style == null || typeof props.style === 'object') ?
|
5484
|
+
!(props.style == null || typeof props.style === 'object') ? invariant_1(false, 'The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + \'em\'}} when using JSX.%s', getDeclarationErrorAddendum$1(getCurrentOwnerName)) : void 0;
|
4494
5485
|
}
|
4495
5486
|
|
4496
5487
|
var assertValidProps_1 = assertValidProps;
|
@@ -4857,7 +5848,7 @@ var setTextContent = function (node, text) {
|
|
4857
5848
|
node.textContent = text;
|
4858
5849
|
};
|
4859
5850
|
|
4860
|
-
if (
|
5851
|
+
if (ExecutionEnvironment_1.canUseDOM) {
|
4861
5852
|
if (!('textContent' in document.documentElement)) {
|
4862
5853
|
setTextContent = function (node, text) {
|
4863
5854
|
if (node.nodeType === TEXT_NODE$2) {
|
@@ -4944,7 +5935,7 @@ var rARIACamel = new RegExp('^(aria)[A-Z][' + DOMProperty_1.ATTRIBUTE_NAME_CHAR
|
|
4944
5935
|
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
4945
5936
|
|
4946
5937
|
{
|
4947
|
-
var warning$
|
5938
|
+
var warning$16 = warning_1;
|
4948
5939
|
|
4949
5940
|
var _require$5 = ReactGlobalSharedState_1,
|
4950
5941
|
ReactComponentTreeHook$1 = _require$5.ReactComponentTreeHook,
|
@@ -4979,13 +5970,13 @@ function validateProperty(tagName, name, debugID) {
|
|
4979
5970
|
// If this is an aria-* attribute, but is not listed in the known DOM
|
4980
5971
|
// DOM properties, then it is an invalid aria-* attribute.
|
4981
5972
|
if (correctName == null) {
|
4982
|
-
warning$
|
5973
|
+
warning$16(false, 'Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.%s', name, getStackAddendum(debugID));
|
4983
5974
|
warnedProperties[name] = true;
|
4984
5975
|
return true;
|
4985
5976
|
}
|
4986
5977
|
// aria-* attributes should be lowercase; suggest the lowercase version.
|
4987
5978
|
if (name !== correctName) {
|
4988
|
-
warning$
|
5979
|
+
warning$16(false, 'Invalid ARIA attribute `%s`. Did you mean `%s`?%s', name, correctName, getStackAddendum(debugID));
|
4989
5980
|
warnedProperties[name] = true;
|
4990
5981
|
return true;
|
4991
5982
|
}
|
@@ -5003,7 +5994,7 @@ function validateProperty(tagName, name, debugID) {
|
|
5003
5994
|
}
|
5004
5995
|
// aria-* attributes should be lowercase; suggest the lowercase version.
|
5005
5996
|
if (name !== standardName) {
|
5006
|
-
warning$
|
5997
|
+
warning$16(false, 'Unknown ARIA attribute `%s`. Did you mean `%s`?%s', name, standardName, getStackAddendum(debugID));
|
5007
5998
|
warnedProperties[name] = true;
|
5008
5999
|
return true;
|
5009
6000
|
}
|
@@ -5027,9 +6018,9 @@ function warnInvalidARIAProps(type, props, debugID) {
|
|
5027
6018
|
}).join(', ');
|
5028
6019
|
|
5029
6020
|
if (invalidProps.length === 1) {
|
5030
|
-
warning$
|
6021
|
+
warning$16(false, 'Invalid aria prop %s on <%s> tag. ' + 'For details, see https://fb.me/invalid-aria-prop%s', unknownPropString, type, getStackAddendum(debugID));
|
5031
6022
|
} else if (invalidProps.length > 1) {
|
5032
|
-
warning$
|
6023
|
+
warning$16(false, 'Invalid aria props %s on <%s> tag. ' + 'For details, see https://fb.me/invalid-aria-prop%s', unknownPropString, type, getStackAddendum(debugID));
|
5033
6024
|
}
|
5034
6025
|
}
|
5035
6026
|
|
@@ -5059,7 +6050,7 @@ var ReactDOMInvalidARIAHook$1 = {
|
|
5059
6050
|
var ReactDOMInvalidARIAHook_1 = ReactDOMInvalidARIAHook$1;
|
5060
6051
|
|
5061
6052
|
{
|
5062
|
-
var warning$
|
6053
|
+
var warning$17 = warning_1;
|
5063
6054
|
|
5064
6055
|
var _require$6 = ReactGlobalSharedState_1,
|
5065
6056
|
ReactComponentTreeHook$2 = _require$6.ReactComponentTreeHook,
|
@@ -5086,7 +6077,7 @@ function validateProperties$1(type, props, debugID /* Stack only */) {
|
|
5086
6077
|
return;
|
5087
6078
|
}
|
5088
6079
|
if (props != null && props.value === null && !didWarnValueNull) {
|
5089
|
-
warning$
|
6080
|
+
warning$17(false, '`value` prop on `%s` should not be null. ' + 'Consider using the empty string to clear the component or `undefined` ' + 'for uncontrolled components.%s', type, getStackAddendum$1(debugID));
|
5090
6081
|
|
5091
6082
|
didWarnValueNull = true;
|
5092
6083
|
}
|
@@ -5610,7 +6601,7 @@ var possibleStandardNames$1 = {
|
|
5610
6601
|
var possibleStandardNames_1 = possibleStandardNames$1;
|
5611
6602
|
|
5612
6603
|
{
|
5613
|
-
var warning$
|
6604
|
+
var warning$18 = warning_1;
|
5614
6605
|
|
5615
6606
|
var _require$7 = ReactGlobalSharedState_1,
|
5616
6607
|
ReactComponentTreeHook$3 = _require$7.ReactComponentTreeHook,
|
@@ -5657,13 +6648,13 @@ function getStackAddendum$2(debugID) {
|
|
5657
6648
|
var registrationName = EventPluginRegistry_1.possibleRegistrationNames.hasOwnProperty(lowerCasedName) ? EventPluginRegistry_1.possibleRegistrationNames[lowerCasedName] : null;
|
5658
6649
|
|
5659
6650
|
if (registrationName != null) {
|
5660
|
-
warning$
|
6651
|
+
warning$18(false, 'Invalid event handler property `%s`. Did you mean `%s`?%s', name, registrationName, getStackAddendum$2(debugID));
|
5661
6652
|
warnedProperties$1[name] = true;
|
5662
6653
|
return true;
|
5663
6654
|
}
|
5664
6655
|
|
5665
6656
|
if (lowerCasedName.indexOf('on') === 0) {
|
5666
|
-
warning$
|
6657
|
+
warning$18(false, 'Unknown event handler property `%s`. It will be ignored.%s', name, getStackAddendum$2(debugID));
|
5667
6658
|
warnedProperties$1[name] = true;
|
5668
6659
|
return true;
|
5669
6660
|
}
|
@@ -5674,31 +6665,31 @@ function getStackAddendum$2(debugID) {
|
|
5674
6665
|
}
|
5675
6666
|
|
5676
6667
|
if (lowerCasedName === 'onfocusin' || lowerCasedName === 'onfocusout') {
|
5677
|
-
warning$
|
6668
|
+
warning$18(false, 'React uses onFocus and onBlur instead of onFocusIn and onFocusOut. ' + 'All React events are normalized to bubble, so onFocusIn and onFocusOut ' + 'are not needed/supported by React.');
|
5678
6669
|
warnedProperties$1[name] = true;
|
5679
6670
|
return true;
|
5680
6671
|
}
|
5681
6672
|
|
5682
6673
|
if (lowerCasedName === 'innerhtml') {
|
5683
|
-
warning$
|
6674
|
+
warning$18(false, 'Directly setting property `innerHTML` is not permitted. ' + 'For more information, lookup documentation on `dangerouslySetInnerHTML`.');
|
5684
6675
|
warnedProperties$1[name] = true;
|
5685
6676
|
return true;
|
5686
6677
|
}
|
5687
6678
|
|
5688
6679
|
if (lowerCasedName === 'aria') {
|
5689
|
-
warning$
|
6680
|
+
warning$18(false, 'The `aria` attribute is reserved for future use in React. ' + 'Pass individual `aria-` attributes instead.');
|
5690
6681
|
warnedProperties$1[name] = true;
|
5691
6682
|
return true;
|
5692
6683
|
}
|
5693
6684
|
|
5694
6685
|
if (lowerCasedName === 'is' && value !== null && value !== undefined && typeof value !== 'string') {
|
5695
|
-
warning$
|
6686
|
+
warning$18(false, 'Received a `%s` for string attribute `is`. If this is expected, cast ' + 'the value to a string.%s', typeof value, getStackAddendum$2(debugID));
|
5696
6687
|
warnedProperties$1[name] = true;
|
5697
6688
|
return true;
|
5698
6689
|
}
|
5699
6690
|
|
5700
6691
|
if (typeof value === 'number' && isNaN(value)) {
|
5701
|
-
warning$
|
6692
|
+
warning$18(false, 'Received NaN for numeric attribute `%s`. If this is expected, cast ' + 'the value to a string.%s', name, getStackAddendum$2(debugID));
|
5702
6693
|
warnedProperties$1[name] = true;
|
5703
6694
|
return true;
|
5704
6695
|
}
|
@@ -5709,20 +6700,20 @@ function getStackAddendum$2(debugID) {
|
|
5709
6700
|
if (possibleStandardNames.hasOwnProperty(lowerCasedName)) {
|
5710
6701
|
var standardName = possibleStandardNames[lowerCasedName];
|
5711
6702
|
if (standardName !== name) {
|
5712
|
-
warning$
|
6703
|
+
warning$18(false, 'Invalid DOM property `%s`. Did you mean `%s`?%s', name, standardName, getStackAddendum$2(debugID));
|
5713
6704
|
warnedProperties$1[name] = true;
|
5714
6705
|
return true;
|
5715
6706
|
}
|
5716
6707
|
} else if (!isReserved && name !== lowerCasedName) {
|
5717
6708
|
// Unknown attributes should have lowercase casing since that's how they
|
5718
6709
|
// will be cased anyway with server rendering.
|
5719
|
-
warning$
|
6710
|
+
warning$18(false, 'React does not recognize the `%s` prop on a DOM element. If you ' + 'intentionally want it to appear in the DOM as a custom ' + 'attribute, spell it as lowercase `%s` instead. ' + 'If you accidentally passed it from a parent component, remove ' + 'it from the DOM element.%s', name, lowerCasedName, getStackAddendum$2(debugID));
|
5720
6711
|
warnedProperties$1[name] = true;
|
5721
6712
|
return true;
|
5722
6713
|
}
|
5723
6714
|
|
5724
6715
|
if (typeof value === 'boolean') {
|
5725
|
-
warning$
|
6716
|
+
warning$18(DOMProperty_1.shouldAttributeAcceptBooleanValue(name), 'Received `%s` for non-boolean attribute `%s`. If this is expected, cast ' + 'the value to a string.%s', value, name, getStackAddendum$2(debugID));
|
5726
6717
|
warnedProperties$1[name] = true;
|
5727
6718
|
return true;
|
5728
6719
|
}
|
@@ -5756,9 +6747,9 @@ var warnUnknownProperties = function (type, props, debugID) {
|
|
5756
6747
|
return '`' + prop + '`';
|
5757
6748
|
}).join(', ');
|
5758
6749
|
if (unknownProps.length === 1) {
|
5759
|
-
warning$
|
6750
|
+
warning$18(false, 'Invalid value for prop %s on <%s> tag. Either remove it from the element, ' + 'or pass a string or number value to keep it in the DOM. ' + 'For details, see https://fb.me/react-attribute-behavior%s', unknownPropString, type, getStackAddendum$2(debugID));
|
5760
6751
|
} else if (unknownProps.length > 1) {
|
5761
|
-
warning$
|
6752
|
+
warning$18(false, 'Invalid values for props %s on <%s> tag. Either remove them from the element, ' + 'or pass a string or number value to keep them in the DOM. ' + 'For details, see https://fb.me/react-attribute-behavior%s', unknownPropString, type, getStackAddendum$2(debugID));
|
5762
6753
|
}
|
5763
6754
|
};
|
5764
6755
|
|
@@ -5800,7 +6791,7 @@ var DOCUMENT_FRAGMENT_NODE$1 = HTMLNodeType_1.DOCUMENT_FRAGMENT_NODE;
|
|
5800
6791
|
|
5801
6792
|
|
5802
6793
|
{
|
5803
|
-
var warning$
|
6794
|
+
var warning$4 = warning_1;
|
5804
6795
|
|
5805
6796
|
var _require3$1 = ReactDebugCurrentFiber_1,
|
5806
6797
|
getCurrentFiberStackAddendum = _require3$1.getCurrentFiberStackAddendum;
|
@@ -5849,7 +6840,7 @@ var getIntrinsicNamespace$1 = DOMNamespaces.getIntrinsicNamespace;
|
|
5849
6840
|
return;
|
5850
6841
|
}
|
5851
6842
|
didWarnInvalidHydration = true;
|
5852
|
-
warning$
|
6843
|
+
warning$4(false, 'Text content did not match. Server: "%s" Client: "%s"', serverText, clientText);
|
5853
6844
|
};
|
5854
6845
|
|
5855
6846
|
var warnForPropDifference = function (propName, serverValue, clientValue) {
|
@@ -5857,7 +6848,7 @@ var getIntrinsicNamespace$1 = DOMNamespaces.getIntrinsicNamespace;
|
|
5857
6848
|
return;
|
5858
6849
|
}
|
5859
6850
|
didWarnInvalidHydration = true;
|
5860
|
-
warning$
|
6851
|
+
warning$4(false, 'Prop `%s` did not match. Server: %s Client: %s', propName, JSON.stringify(serverValue), JSON.stringify(clientValue));
|
5861
6852
|
};
|
5862
6853
|
|
5863
6854
|
var warnForExtraAttributes = function (attributeNames) {
|
@@ -5869,11 +6860,11 @@ var getIntrinsicNamespace$1 = DOMNamespaces.getIntrinsicNamespace;
|
|
5869
6860
|
attributeNames.forEach(function (name) {
|
5870
6861
|
names.push(name);
|
5871
6862
|
});
|
5872
|
-
warning$
|
6863
|
+
warning$4(false, 'Extra attributes from the server: %s', names);
|
5873
6864
|
};
|
5874
6865
|
|
5875
6866
|
var warnForInvalidEventListener = function (registrationName, listener) {
|
5876
|
-
warning$
|
6867
|
+
warning$4(false, 'Expected `%s` listener to be a function, instead got a value of `%s` type.%s', registrationName, typeof listener, getCurrentFiberStackAddendum());
|
5877
6868
|
};
|
5878
6869
|
|
5879
6870
|
var testDocument;
|
@@ -5937,7 +6928,7 @@ function trapClickOnNonInteractiveElement(node) {
|
|
5937
6928
|
// bookkeeping for it. Not sure if we need to clear it when the listener is
|
5938
6929
|
// removed.
|
5939
6930
|
// TODO: Only do this for the relevant Safaris maybe?
|
5940
|
-
node.onclick =
|
6931
|
+
node.onclick = emptyFunction_1;
|
5941
6932
|
}
|
5942
6933
|
|
5943
6934
|
function setInitialDOMProperties(domElement, rootContainerElement, nextProps, isCustomComponentTag) {
|
@@ -6029,7 +7020,7 @@ var ReactDOMFiberComponent = {
|
|
6029
7020
|
var isCustomComponentTag = isCustomComponent_1(type, props);
|
6030
7021
|
// Should this check be gated by parent namespace? Not sure we want to
|
6031
7022
|
// allow <SVG> or <mATH>.
|
6032
|
-
warning$
|
7023
|
+
warning$4(isCustomComponentTag || type === type.toLowerCase(), '<%s /> is using uppercase HTML. Always use lowercase HTML tags ' + 'in React.', type);
|
6033
7024
|
}
|
6034
7025
|
|
6035
7026
|
if (type === 'script') {
|
@@ -6057,7 +7048,7 @@ var ReactDOMFiberComponent = {
|
|
6057
7048
|
if (namespaceURI === HTML_NAMESPACE$1) {
|
6058
7049
|
if (!isCustomComponentTag && Object.prototype.toString.call(domElement) === '[object HTMLUnknownElement]' && !Object.prototype.hasOwnProperty.call(warnedUnknownTags, type)) {
|
6059
7050
|
warnedUnknownTags[type] = true;
|
6060
|
-
warning$
|
7051
|
+
warning$4(false, 'The tag <%s> is unrecognized in this browser. ' + 'If you meant to render a React component, start its name with ' + 'an uppercase letter.', type);
|
6061
7052
|
}
|
6062
7053
|
}
|
6063
7054
|
}
|
@@ -6072,7 +7063,7 @@ var ReactDOMFiberComponent = {
|
|
6072
7063
|
{
|
6073
7064
|
validatePropertiesInDevelopment(tag, rawProps);
|
6074
7065
|
if (isCustomComponentTag && !didWarnShadyDOM && domElement.shadyRoot) {
|
6075
|
-
warning$
|
7066
|
+
warning$4(false, '%s is using shady DOM. Using shady DOM with React can ' + 'cause things to break subtly.', getCurrentFiberOwnerName() || 'A component');
|
6076
7067
|
didWarnShadyDOM = true;
|
6077
7068
|
}
|
6078
7069
|
}
|
@@ -6378,7 +7369,7 @@ var ReactDOMFiberComponent = {
|
|
6378
7369
|
var isCustomComponentTag = isCustomComponent_1(tag, rawProps);
|
6379
7370
|
validatePropertiesInDevelopment(tag, rawProps);
|
6380
7371
|
if (isCustomComponentTag && !didWarnShadyDOM && domElement.shadyRoot) {
|
6381
|
-
warning$
|
7372
|
+
warning$4(false, '%s is using shady DOM. Using shady DOM with React can ' + 'cause things to break subtly.', getCurrentFiberOwnerName() || 'A component');
|
6382
7373
|
didWarnShadyDOM = true;
|
6383
7374
|
}
|
6384
7375
|
}
|
@@ -6617,7 +7608,7 @@ var ReactDOMFiberComponent = {
|
|
6617
7608
|
return;
|
6618
7609
|
}
|
6619
7610
|
didWarnInvalidHydration = true;
|
6620
|
-
warning$
|
7611
|
+
warning$4(false, 'Did not expect server HTML to contain a <%s> in <%s>.', child.nodeName.toLowerCase(), parentNode.nodeName.toLowerCase());
|
6621
7612
|
}
|
6622
7613
|
},
|
6623
7614
|
warnForDeletedHydratableText: function (parentNode, child) {
|
@@ -6626,7 +7617,7 @@ var ReactDOMFiberComponent = {
|
|
6626
7617
|
return;
|
6627
7618
|
}
|
6628
7619
|
didWarnInvalidHydration = true;
|
6629
|
-
warning$
|
7620
|
+
warning$4(false, 'Did not expect server HTML to contain the text node "%s" in <%s>.', child.nodeValue, parentNode.nodeName.toLowerCase());
|
6630
7621
|
}
|
6631
7622
|
},
|
6632
7623
|
warnForInsertedHydratedElement: function (parentNode, tag, props) {
|
@@ -6635,7 +7626,7 @@ var ReactDOMFiberComponent = {
|
|
6635
7626
|
return;
|
6636
7627
|
}
|
6637
7628
|
didWarnInvalidHydration = true;
|
6638
|
-
warning$
|
7629
|
+
warning$4(false, 'Expected server HTML to contain a matching <%s> in <%s>.', tag, parentNode.nodeName.toLowerCase());
|
6639
7630
|
}
|
6640
7631
|
},
|
6641
7632
|
warnForInsertedHydratedText: function (parentNode, text) {
|
@@ -6651,7 +7642,7 @@ var ReactDOMFiberComponent = {
|
|
6651
7642
|
return;
|
6652
7643
|
}
|
6653
7644
|
didWarnInvalidHydration = true;
|
6654
|
-
warning$
|
7645
|
+
warning$4(false, 'Expected server HTML to contain a matching text node for "%s" in <%s>.', text, parentNode.nodeName.toLowerCase());
|
6655
7646
|
}
|
6656
7647
|
},
|
6657
7648
|
restoreControlledState: function (domElement, tag, props) {
|
@@ -6682,17 +7673,17 @@ var ReactDOMFiberComponent_1 = ReactDOMFiberComponent;
|
|
6682
7673
|
|
6683
7674
|
|
6684
7675
|
{
|
6685
|
-
var warning$
|
7676
|
+
var warning$19 = warning_1;
|
6686
7677
|
|
6687
|
-
if (
|
6688
|
-
warning$
|
7678
|
+
if (ExecutionEnvironment_1.canUseDOM && typeof requestAnimationFrame !== 'function') {
|
7679
|
+
warning$19(false, 'React depends on requestAnimationFrame. Make sure that you load a ' + 'polyfill in older browsers. http://fb.me/react-polyfills');
|
6689
7680
|
}
|
6690
7681
|
}
|
6691
7682
|
|
6692
7683
|
// TODO: There's no way to cancel, because Fiber doesn't atm.
|
6693
7684
|
var rIC = void 0;
|
6694
7685
|
|
6695
|
-
if (!
|
7686
|
+
if (!ExecutionEnvironment_1.canUseDOM) {
|
6696
7687
|
rIC = function (frameCallback) {
|
6697
7688
|
setTimeout(function () {
|
6698
7689
|
frameCallback({
|
@@ -6848,7 +7839,7 @@ var HostRoot$2 = ReactTypeOfWork.HostRoot;
|
|
6848
7839
|
|
6849
7840
|
|
6850
7841
|
{
|
6851
|
-
var warning$
|
7842
|
+
var warning$21 = warning_1;
|
6852
7843
|
}
|
6853
7844
|
|
6854
7845
|
// Callbacks are not validated until invocation
|
@@ -7009,7 +8000,7 @@ function insertUpdate(fiber, update) {
|
|
7009
8000
|
// Warn if an update is scheduled from inside an updater function.
|
7010
8001
|
{
|
7011
8002
|
if (queue1.isProcessing || queue2 !== null && queue2.isProcessing) {
|
7012
|
-
warning$
|
8003
|
+
warning$21(false, 'An update (setState, replaceState, or forceUpdate) was scheduled ' + 'from inside an update function. Update functions should be pure, ' + 'with zero side-effects. Consider using componentDidUpdate or a ' + 'callback.');
|
7013
8004
|
}
|
7014
8005
|
}
|
7015
8006
|
|
@@ -7198,9 +8189,9 @@ function beginUpdateQueue(current, workInProgress, queue, instance, prevState, p
|
|
7198
8189
|
_partialState = getStateFromUpdate(update, instance, state, props);
|
7199
8190
|
if (_partialState) {
|
7200
8191
|
if (dontMutatePrevState) {
|
7201
|
-
state =
|
8192
|
+
state = assign({}, state, _partialState);
|
7202
8193
|
} else {
|
7203
|
-
state =
|
8194
|
+
state = assign(state, _partialState);
|
7204
8195
|
}
|
7205
8196
|
dontMutatePrevState = false;
|
7206
8197
|
}
|
@@ -7246,7 +8237,7 @@ function commitCallbacks(finishedWork, queue, context) {
|
|
7246
8237
|
|
7247
8238
|
for (var i = 0; i < callbackList.length; i++) {
|
7248
8239
|
var _callback = callbackList[i];
|
7249
|
-
!(typeof _callback === 'function') ?
|
8240
|
+
!(typeof _callback === 'function') ? invariant_1(false, 'Invalid argument passed as callback. Expected a function. Instead received: %s', _callback) : void 0;
|
7250
8241
|
_callback.call(context);
|
7251
8242
|
}
|
7252
8243
|
}
|
@@ -7262,8 +8253,24 @@ var ReactFiberUpdateQueue = {
|
|
7262
8253
|
commitCallbacks: commitCallbacks_1
|
7263
8254
|
};
|
7264
8255
|
|
8256
|
+
/**
|
8257
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
8258
|
+
*
|
8259
|
+
* This source code is licensed under the MIT license found in the
|
8260
|
+
* LICENSE file in the root directory of this source tree.
|
8261
|
+
*
|
8262
|
+
*/
|
8263
|
+
|
8264
|
+
var emptyObject = {};
|
8265
|
+
|
8266
|
+
{
|
8267
|
+
Object.freeze(emptyObject);
|
8268
|
+
}
|
8269
|
+
|
8270
|
+
var emptyObject_1 = emptyObject;
|
8271
|
+
|
7265
8272
|
{
|
7266
|
-
var warning$
|
8273
|
+
var warning$23 = warning_1;
|
7267
8274
|
}
|
7268
8275
|
|
7269
8276
|
var valueStack = [];
|
@@ -7272,7 +8279,7 @@ var valueStack = [];
|
|
7272
8279
|
var fiberStack = [];
|
7273
8280
|
}
|
7274
8281
|
|
7275
|
-
var index = -1;
|
8282
|
+
var index$2 = -1;
|
7276
8283
|
|
7277
8284
|
var createCursor$1 = function (defaultValue) {
|
7278
8285
|
return {
|
@@ -7281,55 +8288,55 @@ var createCursor$1 = function (defaultValue) {
|
|
7281
8288
|
};
|
7282
8289
|
|
7283
8290
|
var isEmpty = function () {
|
7284
|
-
return index === -1;
|
8291
|
+
return index$2 === -1;
|
7285
8292
|
};
|
7286
8293
|
|
7287
8294
|
var pop$1 = function (cursor, fiber) {
|
7288
|
-
if (index < 0) {
|
8295
|
+
if (index$2 < 0) {
|
7289
8296
|
{
|
7290
|
-
warning$
|
8297
|
+
warning$23(false, 'Unexpected pop.');
|
7291
8298
|
}
|
7292
8299
|
return;
|
7293
8300
|
}
|
7294
8301
|
|
7295
8302
|
{
|
7296
|
-
if (fiber !== fiberStack[index]) {
|
7297
|
-
warning$
|
8303
|
+
if (fiber !== fiberStack[index$2]) {
|
8304
|
+
warning$23(false, 'Unexpected Fiber popped.');
|
7298
8305
|
}
|
7299
8306
|
}
|
7300
8307
|
|
7301
|
-
cursor.current = valueStack[index];
|
8308
|
+
cursor.current = valueStack[index$2];
|
7302
8309
|
|
7303
|
-
valueStack[index] = null;
|
8310
|
+
valueStack[index$2] = null;
|
7304
8311
|
|
7305
8312
|
{
|
7306
|
-
fiberStack[index] = null;
|
8313
|
+
fiberStack[index$2] = null;
|
7307
8314
|
}
|
7308
8315
|
|
7309
|
-
index--;
|
8316
|
+
index$2--;
|
7310
8317
|
};
|
7311
8318
|
|
7312
8319
|
var push$1 = function (cursor, value, fiber) {
|
7313
|
-
index++;
|
8320
|
+
index$2++;
|
7314
8321
|
|
7315
|
-
valueStack[index] = cursor.current;
|
8322
|
+
valueStack[index$2] = cursor.current;
|
7316
8323
|
|
7317
8324
|
{
|
7318
|
-
fiberStack[index] = fiber;
|
8325
|
+
fiberStack[index$2] = fiber;
|
7319
8326
|
}
|
7320
8327
|
|
7321
8328
|
cursor.current = value;
|
7322
8329
|
};
|
7323
8330
|
|
7324
8331
|
var reset = function () {
|
7325
|
-
while (index > -1) {
|
7326
|
-
valueStack[index] = null;
|
8332
|
+
while (index$2 > -1) {
|
8333
|
+
valueStack[index$2] = null;
|
7327
8334
|
|
7328
8335
|
{
|
7329
|
-
fiberStack[index] = null;
|
8336
|
+
fiberStack[index$2] = null;
|
7330
8337
|
}
|
7331
8338
|
|
7332
|
-
index--;
|
8339
|
+
index$2--;
|
7333
8340
|
}
|
7334
8341
|
};
|
7335
8342
|
|
@@ -7701,8 +8708,8 @@ var pop = ReactFiberStack.pop;
|
|
7701
8708
|
var push = ReactFiberStack.push;
|
7702
8709
|
|
7703
8710
|
{
|
7704
|
-
var warning$
|
7705
|
-
var checkPropTypes$1 =
|
8711
|
+
var warning$22 = warning_1;
|
8712
|
+
var checkPropTypes$1 = checkPropTypes_1;
|
7706
8713
|
var ReactDebugCurrentFiber$2 = ReactDebugCurrentFiber_1;
|
7707
8714
|
|
7708
8715
|
var _require4 = ReactDebugFiberPerf_1,
|
@@ -7713,13 +8720,13 @@ var push = ReactFiberStack.push;
|
|
7713
8720
|
}
|
7714
8721
|
|
7715
8722
|
// A cursor to the current merged context object on the stack.
|
7716
|
-
var contextStackCursor = createCursor(
|
8723
|
+
var contextStackCursor = createCursor(emptyObject_1);
|
7717
8724
|
// A cursor to a boolean indicating whether the context has changed.
|
7718
8725
|
var didPerformWorkStackCursor = createCursor(false);
|
7719
8726
|
// Keep track of the previous context object that was on the stack.
|
7720
8727
|
// We use this to get access to the parent context after we have already
|
7721
8728
|
// pushed the next context provider, and now need to merge their contexts.
|
7722
|
-
var previousContext =
|
8729
|
+
var previousContext = emptyObject_1;
|
7723
8730
|
|
7724
8731
|
function getUnmaskedContext(workInProgress) {
|
7725
8732
|
var hasOwnContext = isContextProvider$1(workInProgress);
|
@@ -7745,7 +8752,7 @@ var getMaskedContext = function (workInProgress, unmaskedContext) {
|
|
7745
8752
|
var type = workInProgress.type;
|
7746
8753
|
var contextTypes = type.contextTypes;
|
7747
8754
|
if (!contextTypes) {
|
7748
|
-
return
|
8755
|
+
return emptyObject_1;
|
7749
8756
|
}
|
7750
8757
|
|
7751
8758
|
// Avoid recreating masked context unless unmasked context has changed.
|
@@ -7807,7 +8814,7 @@ var popTopLevelContextObject = function (fiber) {
|
|
7807
8814
|
};
|
7808
8815
|
|
7809
8816
|
var pushTopLevelContextObject = function (fiber, context, didChange) {
|
7810
|
-
!(contextStackCursor.cursor == null) ?
|
8817
|
+
!(contextStackCursor.cursor == null) ? invariant_1(false, 'Unexpected context found on stack. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
7811
8818
|
|
7812
8819
|
push(contextStackCursor, context, fiber);
|
7813
8820
|
push(didPerformWorkStackCursor, didChange, fiber);
|
@@ -7825,7 +8832,7 @@ function processChildContext$1(fiber, parentContext, isReconciling) {
|
|
7825
8832
|
|
7826
8833
|
if (!warnedAboutMissingGetChildContext[componentName]) {
|
7827
8834
|
warnedAboutMissingGetChildContext[componentName] = true;
|
7828
|
-
warning$
|
8835
|
+
warning$22(false, '%s.childContextTypes is specified but there is no getChildContext() method ' + 'on the instance. You can either define getChildContext() on %s or remove ' + 'childContextTypes from it.', componentName, componentName);
|
7829
8836
|
}
|
7830
8837
|
}
|
7831
8838
|
return parentContext;
|
@@ -7840,7 +8847,7 @@ function processChildContext$1(fiber, parentContext, isReconciling) {
|
|
7840
8847
|
ReactDebugCurrentFiber$2.resetCurrentFiber();
|
7841
8848
|
}
|
7842
8849
|
for (var contextKey in childContext) {
|
7843
|
-
!(contextKey in childContextTypes) ?
|
8850
|
+
!(contextKey in childContextTypes) ? invariant_1(false, '%s.getChildContext(): key "%s" is not defined in childContextTypes.', getComponentName_1(fiber) || 'Unknown', contextKey) : void 0;
|
7844
8851
|
}
|
7845
8852
|
{
|
7846
8853
|
var name = getComponentName_1(fiber) || 'Unknown';
|
@@ -7855,7 +8862,7 @@ function processChildContext$1(fiber, parentContext, isReconciling) {
|
|
7855
8862
|
ReactDebugCurrentFiber$2.resetCurrentFiber();
|
7856
8863
|
}
|
7857
8864
|
|
7858
|
-
return
|
8865
|
+
return assign({}, parentContext, childContext);
|
7859
8866
|
}
|
7860
8867
|
var processChildContext_1 = processChildContext$1;
|
7861
8868
|
|
@@ -7868,7 +8875,7 @@ var pushContextProvider = function (workInProgress) {
|
|
7868
8875
|
// We push the context as early as possible to ensure stack integrity.
|
7869
8876
|
// If the instance does not exist yet, we will push null at first,
|
7870
8877
|
// and replace it on the stack later when invalidating the context.
|
7871
|
-
var memoizedMergedChildContext = instance && instance.__reactInternalMemoizedMergedChildContext ||
|
8878
|
+
var memoizedMergedChildContext = instance && instance.__reactInternalMemoizedMergedChildContext || emptyObject_1;
|
7872
8879
|
|
7873
8880
|
// Remember the parent context so we can merge with it later.
|
7874
8881
|
// Inherit the parent's did-perform-work value to avoid inadvertantly blocking updates.
|
@@ -7881,7 +8888,7 @@ var pushContextProvider = function (workInProgress) {
|
|
7881
8888
|
|
7882
8889
|
var invalidateContextProvider = function (workInProgress, didChange) {
|
7883
8890
|
var instance = workInProgress.stateNode;
|
7884
|
-
!instance ?
|
8891
|
+
!instance ? invariant_1(false, 'Expected to have an instance by this point. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
7885
8892
|
|
7886
8893
|
if (didChange) {
|
7887
8894
|
// Merge parent and own context.
|
@@ -7904,15 +8911,15 @@ var invalidateContextProvider = function (workInProgress, didChange) {
|
|
7904
8911
|
};
|
7905
8912
|
|
7906
8913
|
var resetContext = function () {
|
7907
|
-
previousContext =
|
7908
|
-
contextStackCursor.current =
|
8914
|
+
previousContext = emptyObject_1;
|
8915
|
+
contextStackCursor.current = emptyObject_1;
|
7909
8916
|
didPerformWorkStackCursor.current = false;
|
7910
8917
|
};
|
7911
8918
|
|
7912
8919
|
var findCurrentUnmaskedContext$1 = function (fiber) {
|
7913
8920
|
// Currently this is only used with renderSubtreeIntoContainer; not sure if it
|
7914
8921
|
// makes sense elsewhere
|
7915
|
-
!(isFiberMounted$1(fiber) && fiber.tag === ClassComponent$3) ?
|
8922
|
+
!(isFiberMounted$1(fiber) && fiber.tag === ClassComponent$3) ? invariant_1(false, 'Expected subtree parent to be a mounted class component. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
7916
8923
|
|
7917
8924
|
var node = fiber;
|
7918
8925
|
while (node.tag !== HostRoot$3) {
|
@@ -7920,7 +8927,7 @@ var findCurrentUnmaskedContext$1 = function (fiber) {
|
|
7920
8927
|
return node.stateNode.__reactInternalMemoizedMergedChildContext;
|
7921
8928
|
}
|
7922
8929
|
var parent = node['return'];
|
7923
|
-
!parent ?
|
8930
|
+
!parent ? invariant_1(false, 'Found unexpected detached subtree parent. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
7924
8931
|
node = parent;
|
7925
8932
|
}
|
7926
8933
|
return node.stateNode.context;
|
@@ -8182,7 +9189,7 @@ function createFiberFromElementType(type, key, internalContextTag, debugOwner) {
|
|
8182
9189
|
info += '\n\nCheck the render method of `' + ownerName + '`.';
|
8183
9190
|
}
|
8184
9191
|
}
|
8185
|
-
|
9192
|
+
invariant_1(false, 'Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s', type == null ? type : typeof type, info);
|
8186
9193
|
}
|
8187
9194
|
return fiber;
|
8188
9195
|
}
|
@@ -8312,8 +9319,8 @@ var injection$1 = {
|
|
8312
9319
|
* Return false to prevent default behavior of logging to console.error.
|
8313
9320
|
*/
|
8314
9321
|
injectDialog: function (fn) {
|
8315
|
-
!(showDialog === defaultShowDialog) ?
|
8316
|
-
!(typeof fn === 'function') ?
|
9322
|
+
!(showDialog === defaultShowDialog) ? invariant_1(false, 'The custom dialog was already injected.') : void 0;
|
9323
|
+
!(typeof fn === 'function') ? invariant_1(false, 'Injected showDialog() must be a function.') : void 0;
|
8317
9324
|
showDialog = fn;
|
8318
9325
|
}
|
8319
9326
|
};
|
@@ -8473,7 +9480,7 @@ var REACT_PORTAL_TYPE = ReactPortal.REACT_PORTAL_TYPE;
|
|
8473
9480
|
var _require3$4 = ReactDebugCurrentFiber_1,
|
8474
9481
|
getCurrentFiberStackAddendum$5 = _require3$4.getCurrentFiberStackAddendum;
|
8475
9482
|
|
8476
|
-
var warning$
|
9483
|
+
var warning$26 = warning_1;
|
8477
9484
|
var didWarnAboutMaps = false;
|
8478
9485
|
/**
|
8479
9486
|
* Warn if there's no key explicitly set on dynamic arrays of children or
|
@@ -8489,7 +9496,7 @@ var REACT_PORTAL_TYPE = ReactPortal.REACT_PORTAL_TYPE;
|
|
8489
9496
|
if (!child._store || child._store.validated || child.key != null) {
|
8490
9497
|
return;
|
8491
9498
|
}
|
8492
|
-
!(typeof child._store === 'object') ?
|
9499
|
+
!(typeof child._store === 'object') ? invariant_1(false, 'React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
8493
9500
|
child._store.validated = true;
|
8494
9501
|
|
8495
9502
|
var currentComponentErrorInfo = 'Each child in an array or iterator should have a unique ' + '"key" prop. See https://fb.me/react-warning-keys for ' + 'more information.' + (getCurrentFiberStackAddendum$5() || '');
|
@@ -8498,7 +9505,7 @@ var REACT_PORTAL_TYPE = ReactPortal.REACT_PORTAL_TYPE;
|
|
8498
9505
|
}
|
8499
9506
|
ownerHasKeyUseWarning[currentComponentErrorInfo] = true;
|
8500
9507
|
|
8501
|
-
warning$
|
9508
|
+
warning$26(false, 'Each child in an array or iterator should have a unique ' + '"key" prop. See https://fb.me/react-warning-keys for ' + 'more information.%s', getCurrentFiberStackAddendum$5());
|
8502
9509
|
};
|
8503
9510
|
}
|
8504
9511
|
|
@@ -8551,21 +9558,21 @@ function coerceRef(current, element) {
|
|
8551
9558
|
if (owner) {
|
8552
9559
|
if (typeof owner.tag === 'number') {
|
8553
9560
|
var ownerFiber = owner;
|
8554
|
-
!(ownerFiber.tag === ClassComponent$7) ?
|
9561
|
+
!(ownerFiber.tag === ClassComponent$7) ? invariant_1(false, 'Stateless function components cannot have refs.') : void 0;
|
8555
9562
|
inst = ownerFiber.stateNode;
|
8556
9563
|
} else {
|
8557
9564
|
// Stack
|
8558
9565
|
inst = owner.getPublicInstance();
|
8559
9566
|
}
|
8560
9567
|
}
|
8561
|
-
!inst ?
|
9568
|
+
!inst ? invariant_1(false, 'Missing owner for string ref %s. This error is likely caused by a bug in React. Please file an issue.', mixedRef) : void 0;
|
8562
9569
|
var stringRef = '' + mixedRef;
|
8563
9570
|
// Check if previous string ref matches new string ref
|
8564
9571
|
if (current !== null && current.ref !== null && current.ref._stringRef === stringRef) {
|
8565
9572
|
return current.ref;
|
8566
9573
|
}
|
8567
9574
|
var ref = function (value) {
|
8568
|
-
var refs = inst.refs ===
|
9575
|
+
var refs = inst.refs === emptyObject_1 ? inst.refs = {} : inst.refs;
|
8569
9576
|
if (value === null) {
|
8570
9577
|
delete refs[stringRef];
|
8571
9578
|
} else {
|
@@ -8575,8 +9582,8 @@ function coerceRef(current, element) {
|
|
8575
9582
|
ref._stringRef = stringRef;
|
8576
9583
|
return ref;
|
8577
9584
|
} else {
|
8578
|
-
!(typeof mixedRef === 'string') ?
|
8579
|
-
!element._owner ?
|
9585
|
+
!(typeof mixedRef === 'string') ? invariant_1(false, 'Expected ref to be a function or a string.') : void 0;
|
9586
|
+
!element._owner ? invariant_1(false, 'Element ref was specified as a string (%s) but no owner was set. You may have multiple copies of React loaded. (details: https://fb.me/react-refs-must-have-owner).', mixedRef) : void 0;
|
8580
9587
|
}
|
8581
9588
|
}
|
8582
9589
|
return mixedRef;
|
@@ -8588,12 +9595,12 @@ function throwOnInvalidObjectType(returnFiber, newChild) {
|
|
8588
9595
|
{
|
8589
9596
|
addendum = ' If you meant to render a collection of children, use an array ' + 'instead.' + (getCurrentFiberStackAddendum$5() || '');
|
8590
9597
|
}
|
8591
|
-
|
9598
|
+
invariant_1(false, 'Objects are not valid as a React child (found: %s).%s', Object.prototype.toString.call(newChild) === '[object Object]' ? 'object with keys {' + Object.keys(newChild).join(', ') + '}' : newChild, addendum);
|
8592
9599
|
}
|
8593
9600
|
}
|
8594
9601
|
|
8595
9602
|
function warnOnFunctionType() {
|
8596
|
-
warning$
|
9603
|
+
warning$26(false, 'Functions are not valid as a React child. This may happen if ' + 'you return a Component instead of <Component /> from render. ' + 'Or maybe you meant to call this function rather than return it.%s', getCurrentFiberStackAddendum$5() || '');
|
8597
9604
|
}
|
8598
9605
|
|
8599
9606
|
// This wrapper function exists because I expect to clone the code in each path
|
@@ -9034,7 +10041,7 @@ function ChildReconciler(shouldClone, shouldTrackSideEffects) {
|
|
9034
10041
|
knownKeys.add(key);
|
9035
10042
|
break;
|
9036
10043
|
}
|
9037
|
-
warning$
|
10044
|
+
warning$26(false, 'Encountered two children with the same key, `%s`. ' + 'Keys should be unique so that components maintain their identity ' + 'across updates. Non-unique keys may cause children to be ' + 'duplicated and/or omitted — the behavior is unsupported and ' + 'could change in a future version.%s', key, getCurrentFiberStackAddendum$5());
|
9038
10045
|
break;
|
9039
10046
|
default:
|
9040
10047
|
break;
|
@@ -9187,14 +10194,14 @@ function ChildReconciler(shouldClone, shouldTrackSideEffects) {
|
|
9187
10194
|
// but using the iterator instead.
|
9188
10195
|
|
9189
10196
|
var iteratorFn = getIteratorFn(newChildrenIterable);
|
9190
|
-
!(typeof iteratorFn === 'function') ?
|
10197
|
+
!(typeof iteratorFn === 'function') ? invariant_1(false, 'An object is not an iterable. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
9191
10198
|
|
9192
10199
|
{
|
9193
10200
|
// Warn about using Maps as children
|
9194
10201
|
if (typeof newChildrenIterable.entries === 'function') {
|
9195
10202
|
var possibleMap = newChildrenIterable;
|
9196
10203
|
if (possibleMap.entries === iteratorFn) {
|
9197
|
-
warning$
|
10204
|
+
warning$26(didWarnAboutMaps, 'Using Maps as children is unsupported and will likely yield ' + 'unexpected results. Convert it to a sequence/iterable of keyed ' + 'ReactElements instead.%s', getCurrentFiberStackAddendum$5());
|
9198
10205
|
didWarnAboutMaps = true;
|
9199
10206
|
}
|
9200
10207
|
}
|
@@ -9213,7 +10220,7 @@ function ChildReconciler(shouldClone, shouldTrackSideEffects) {
|
|
9213
10220
|
}
|
9214
10221
|
|
9215
10222
|
var newChildren = iteratorFn.call(newChildrenIterable);
|
9216
|
-
!(newChildren != null) ?
|
10223
|
+
!(newChildren != null) ? invariant_1(false, 'An iterable object provided no iterator.') : void 0;
|
9217
10224
|
|
9218
10225
|
var resultingFirstChild = null;
|
9219
10226
|
var previousNewFiber = null;
|
@@ -9529,7 +10536,7 @@ function ChildReconciler(shouldClone, shouldTrackSideEffects) {
|
|
9529
10536
|
case FunctionalComponent$2:
|
9530
10537
|
{
|
9531
10538
|
var Component = returnFiber.type;
|
9532
|
-
|
10539
|
+
invariant_1(false, '%s(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.', Component.displayName || Component.name || 'Component');
|
9533
10540
|
}
|
9534
10541
|
}
|
9535
10542
|
}
|
@@ -9548,7 +10555,7 @@ var reconcileChildFibersInPlace$1 = ChildReconciler(false, true);
|
|
9548
10555
|
var mountChildFibersInPlace$1 = ChildReconciler(false, false);
|
9549
10556
|
|
9550
10557
|
var cloneChildFibers$1 = function (current, workInProgress) {
|
9551
|
-
!(current === null || workInProgress.child === current.child) ?
|
10558
|
+
!(current === null || workInProgress.child === current.child) ? invariant_1(false, 'Resuming work not yet implemented.') : void 0;
|
9552
10559
|
|
9553
10560
|
if (workInProgress.child === null) {
|
9554
10561
|
return;
|
@@ -9577,6 +10584,70 @@ var ReactChildFiber = {
|
|
9577
10584
|
cloneChildFibers: cloneChildFibers$1
|
9578
10585
|
};
|
9579
10586
|
|
10587
|
+
/**
|
10588
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
10589
|
+
*
|
10590
|
+
* This source code is licensed under the MIT license found in the
|
10591
|
+
* LICENSE file in the root directory of this source tree.
|
10592
|
+
*
|
10593
|
+
* @typechecks
|
10594
|
+
*
|
10595
|
+
*/
|
10596
|
+
|
10597
|
+
/*eslint-disable no-self-compare */
|
10598
|
+
|
10599
|
+
var hasOwnProperty$2 = Object.prototype.hasOwnProperty;
|
10600
|
+
|
10601
|
+
/**
|
10602
|
+
* inlined Object.is polyfill to avoid requiring consumers ship their own
|
10603
|
+
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
|
10604
|
+
*/
|
10605
|
+
function is(x, y) {
|
10606
|
+
// SameValue algorithm
|
10607
|
+
if (x === y) {
|
10608
|
+
// Steps 1-5, 7-10
|
10609
|
+
// Steps 6.b-6.e: +0 != -0
|
10610
|
+
// Added the nonzero y check to make Flow happy, but it is redundant
|
10611
|
+
return x !== 0 || y !== 0 || 1 / x === 1 / y;
|
10612
|
+
} else {
|
10613
|
+
// Step 6.a: NaN == NaN
|
10614
|
+
return x !== x && y !== y;
|
10615
|
+
}
|
10616
|
+
}
|
10617
|
+
|
10618
|
+
/**
|
10619
|
+
* Performs equality by iterating through keys on an object and returning false
|
10620
|
+
* when any key has values which are not strictly equal between the arguments.
|
10621
|
+
* Returns true when the values of all keys are strictly equal.
|
10622
|
+
*/
|
10623
|
+
function shallowEqual(objA, objB) {
|
10624
|
+
if (is(objA, objB)) {
|
10625
|
+
return true;
|
10626
|
+
}
|
10627
|
+
|
10628
|
+
if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
|
10629
|
+
return false;
|
10630
|
+
}
|
10631
|
+
|
10632
|
+
var keysA = Object.keys(objA);
|
10633
|
+
var keysB = Object.keys(objB);
|
10634
|
+
|
10635
|
+
if (keysA.length !== keysB.length) {
|
10636
|
+
return false;
|
10637
|
+
}
|
10638
|
+
|
10639
|
+
// Test for A's keys different from B.
|
10640
|
+
for (var i = 0; i < keysA.length; i++) {
|
10641
|
+
if (!hasOwnProperty$2.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
|
10642
|
+
return false;
|
10643
|
+
}
|
10644
|
+
}
|
10645
|
+
|
10646
|
+
return true;
|
10647
|
+
}
|
10648
|
+
|
10649
|
+
var shallowEqual_1 = shallowEqual;
|
10650
|
+
|
9580
10651
|
var Update$1 = ReactTypeOfSideEffect.Update;
|
9581
10652
|
|
9582
10653
|
|
@@ -9612,9 +10683,9 @@ var isArray$1 = Array.isArray;
|
|
9612
10683
|
startPhaseTimer$1 = _require7$1.startPhaseTimer,
|
9613
10684
|
stopPhaseTimer$1 = _require7$1.stopPhaseTimer;
|
9614
10685
|
|
9615
|
-
var warning$
|
10686
|
+
var warning$27 = warning_1;
|
9616
10687
|
var warnOnInvalidCallback = function (callback, callerName) {
|
9617
|
-
warning$
|
10688
|
+
warning$27(callback === null || typeof callback === 'function', '%s(...): Expected the last optional `callback` argument to be a ' + 'function. Instead received: %s.', callerName, callback);
|
9618
10689
|
};
|
9619
10690
|
|
9620
10691
|
// This is so gross but it's at least non-critical and can be removed if
|
@@ -9625,7 +10696,7 @@ var isArray$1 = Array.isArray;
|
|
9625
10696
|
Object.defineProperty(fakeInternalInstance, '_processChildContext', {
|
9626
10697
|
enumerable: false,
|
9627
10698
|
value: function () {
|
9628
|
-
|
10699
|
+
invariant_1(false, '_processChildContext is not available in React 16+. This likely means you have multiple copies of React and are attempting to nest a React 15 tree inside a React 16 tree using unstable_renderSubtreeIntoContainer, which isn\'t supported. Try to make sure you have only one copy of React (and ideally, switch to ReactDOM.createPortal).');
|
9629
10700
|
}
|
9630
10701
|
});
|
9631
10702
|
Object.freeze(fakeInternalInstance);
|
@@ -9685,14 +10756,14 @@ var ReactFiberClassComponent = function (scheduleUpdate, getPriorityContext, mem
|
|
9685
10756
|
}
|
9686
10757
|
|
9687
10758
|
{
|
9688
|
-
warning$
|
10759
|
+
warning$27(shouldUpdate !== undefined, '%s.shouldComponentUpdate(): Returned undefined instead of a ' + 'boolean value. Make sure to return true or false.', getComponentName_1(workInProgress) || 'Unknown');
|
9689
10760
|
}
|
9690
10761
|
|
9691
10762
|
return shouldUpdate;
|
9692
10763
|
}
|
9693
10764
|
|
9694
10765
|
if (type.prototype && type.prototype.isPureReactComponent) {
|
9695
|
-
return !
|
10766
|
+
return !shallowEqual_1(oldProps, newProps) || !shallowEqual_1(oldState, newState);
|
9696
10767
|
}
|
9697
10768
|
|
9698
10769
|
return true;
|
@@ -9704,36 +10775,36 @@ var ReactFiberClassComponent = function (scheduleUpdate, getPriorityContext, mem
|
|
9704
10775
|
{
|
9705
10776
|
var name = getComponentName_1(workInProgress);
|
9706
10777
|
var renderPresent = instance.render;
|
9707
|
-
warning$
|
10778
|
+
warning$27(renderPresent, '%s(...): No `render` method found on the returned component ' + 'instance: you may have forgotten to define `render`.', name);
|
9708
10779
|
var noGetInitialStateOnES6 = !instance.getInitialState || instance.getInitialState.isReactClassApproved || instance.state;
|
9709
|
-
warning$
|
10780
|
+
warning$27(noGetInitialStateOnES6, 'getInitialState was defined on %s, a plain JavaScript class. ' + 'This is only supported for classes created using React.createClass. ' + 'Did you mean to define a state property instead?', name);
|
9710
10781
|
var noGetDefaultPropsOnES6 = !instance.getDefaultProps || instance.getDefaultProps.isReactClassApproved;
|
9711
|
-
warning$
|
10782
|
+
warning$27(noGetDefaultPropsOnES6, 'getDefaultProps was defined on %s, a plain JavaScript class. ' + 'This is only supported for classes created using React.createClass. ' + 'Use a static property to define defaultProps instead.', name);
|
9712
10783
|
var noInstancePropTypes = !instance.propTypes;
|
9713
|
-
warning$
|
10784
|
+
warning$27(noInstancePropTypes, 'propTypes was defined as an instance property on %s. Use a static ' + 'property to define propTypes instead.', name);
|
9714
10785
|
var noInstanceContextTypes = !instance.contextTypes;
|
9715
|
-
warning$
|
10786
|
+
warning$27(noInstanceContextTypes, 'contextTypes was defined as an instance property on %s. Use a static ' + 'property to define contextTypes instead.', name);
|
9716
10787
|
var noComponentShouldUpdate = typeof instance.componentShouldUpdate !== 'function';
|
9717
|
-
warning$
|
10788
|
+
warning$27(noComponentShouldUpdate, '%s has a method called ' + 'componentShouldUpdate(). Did you mean shouldComponentUpdate()? ' + 'The name is phrased as a question because the function is ' + 'expected to return a value.', name);
|
9718
10789
|
if (type.prototype && type.prototype.isPureReactComponent && typeof instance.shouldComponentUpdate !== 'undefined') {
|
9719
|
-
warning$
|
10790
|
+
warning$27(false, '%s has a method called shouldComponentUpdate(). ' + 'shouldComponentUpdate should not be used when extending React.PureComponent. ' + 'Please extend React.Component if shouldComponentUpdate is used.', getComponentName_1(workInProgress) || 'A pure component');
|
9720
10791
|
}
|
9721
10792
|
var noComponentDidUnmount = typeof instance.componentDidUnmount !== 'function';
|
9722
|
-
warning$
|
10793
|
+
warning$27(noComponentDidUnmount, '%s has a method called ' + 'componentDidUnmount(). But there is no such lifecycle method. ' + 'Did you mean componentWillUnmount()?', name);
|
9723
10794
|
var noComponentWillRecieveProps = typeof instance.componentWillRecieveProps !== 'function';
|
9724
|
-
warning$
|
10795
|
+
warning$27(noComponentWillRecieveProps, '%s has a method called ' + 'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?', name);
|
9725
10796
|
var hasMutatedProps = instance.props !== workInProgress.pendingProps;
|
9726
|
-
warning$
|
10797
|
+
warning$27(instance.props === undefined || !hasMutatedProps, '%s(...): When calling super() in `%s`, make sure to pass ' + "up the same props that your component's constructor was passed.", name, name);
|
9727
10798
|
var noInstanceDefaultProps = !instance.defaultProps;
|
9728
|
-
warning$
|
10799
|
+
warning$27(noInstanceDefaultProps, 'Setting defaultProps as an instance property on %s is not supported and will be ignored.' + ' Instead, define defaultProps as a static property on %s.', name, name);
|
9729
10800
|
}
|
9730
10801
|
|
9731
10802
|
var state = instance.state;
|
9732
10803
|
if (state && (typeof state !== 'object' || isArray$1(state))) {
|
9733
|
-
|
10804
|
+
invariant_1(false, '%s.state: must be set to an object or null', getComponentName_1(workInProgress));
|
9734
10805
|
}
|
9735
10806
|
if (typeof instance.getChildContext === 'function') {
|
9736
|
-
!(typeof workInProgress.type.childContextTypes === 'object') ?
|
10807
|
+
!(typeof workInProgress.type.childContextTypes === 'object') ? invariant_1(false, '%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().', getComponentName_1(workInProgress)) : void 0;
|
9737
10808
|
}
|
9738
10809
|
}
|
9739
10810
|
|
@@ -9756,7 +10827,7 @@ var ReactFiberClassComponent = function (scheduleUpdate, getPriorityContext, mem
|
|
9756
10827
|
var ctor = workInProgress.type;
|
9757
10828
|
var unmaskedContext = getUnmaskedContext$2(workInProgress);
|
9758
10829
|
var needsContext = isContextConsumer$1(workInProgress);
|
9759
|
-
var context = needsContext ? getMaskedContext$2(workInProgress, unmaskedContext) :
|
10830
|
+
var context = needsContext ? getMaskedContext$2(workInProgress, unmaskedContext) : emptyObject_1;
|
9760
10831
|
var instance = new ctor(props, context);
|
9761
10832
|
adoptClassInstance(workInProgress, instance);
|
9762
10833
|
|
@@ -9781,7 +10852,7 @@ var ReactFiberClassComponent = function (scheduleUpdate, getPriorityContext, mem
|
|
9781
10852
|
|
9782
10853
|
if (oldState !== instance.state) {
|
9783
10854
|
{
|
9784
|
-
warning$
|
10855
|
+
warning$27(false, '%s.componentWillMount(): Assigning directly to this.state is ' + "deprecated (except inside a component's " + 'constructor). Use setState instead.', getComponentName_1(workInProgress));
|
9785
10856
|
}
|
9786
10857
|
updater.enqueueReplaceState(instance, instance.state, null);
|
9787
10858
|
}
|
@@ -9799,7 +10870,7 @@ var ReactFiberClassComponent = function (scheduleUpdate, getPriorityContext, mem
|
|
9799
10870
|
|
9800
10871
|
if (instance.state !== oldState) {
|
9801
10872
|
{
|
9802
|
-
warning$
|
10873
|
+
warning$27(false, '%s.componentWillReceiveProps(): Assigning directly to ' + "this.state is deprecated (except inside a component's " + 'constructor). Use setState instead.', getComponentName_1(workInProgress));
|
9803
10874
|
}
|
9804
10875
|
updater.enqueueReplaceState(instance, instance.state, null);
|
9805
10876
|
}
|
@@ -9817,13 +10888,13 @@ var ReactFiberClassComponent = function (scheduleUpdate, getPriorityContext, mem
|
|
9817
10888
|
var state = instance.state || null;
|
9818
10889
|
|
9819
10890
|
var props = workInProgress.pendingProps;
|
9820
|
-
!props ?
|
10891
|
+
!props ? invariant_1(false, 'There must be pending props for an initial mount. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
9821
10892
|
|
9822
10893
|
var unmaskedContext = getUnmaskedContext$2(workInProgress);
|
9823
10894
|
|
9824
10895
|
instance.props = props;
|
9825
10896
|
instance.state = state;
|
9826
|
-
instance.refs =
|
10897
|
+
instance.refs = emptyObject_1;
|
9827
10898
|
instance.context = getMaskedContext$2(workInProgress, unmaskedContext);
|
9828
10899
|
|
9829
10900
|
if (ReactFeatureFlags_1.enableAsyncSubtreeAPI && workInProgress.type != null && workInProgress.type.prototype != null && workInProgress.type.prototype.unstable_isAsyncReactComponent === true) {
|
@@ -9960,7 +11031,7 @@ var ReactFiberClassComponent = function (scheduleUpdate, getPriorityContext, mem
|
|
9960
11031
|
// If there aren't any new props, then we'll reuse the memoized props.
|
9961
11032
|
// This could be from already completed work.
|
9962
11033
|
newProps = oldProps;
|
9963
|
-
!(newProps != null) ?
|
11034
|
+
!(newProps != null) ? invariant_1(false, 'There should always be pending or memoized props. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
9964
11035
|
}
|
9965
11036
|
var oldContext = instance.context;
|
9966
11037
|
var newUnmaskedContext = getUnmaskedContext$2(workInProgress);
|
@@ -10092,7 +11163,7 @@ var ReactCurrentOwner$2 = ReactGlobalSharedState_1.ReactCurrentOwner;
|
|
10092
11163
|
var _require7 = ReactDebugFiberPerf_1,
|
10093
11164
|
cancelWorkTimer = _require7.cancelWorkTimer;
|
10094
11165
|
|
10095
|
-
var warning$
|
11166
|
+
var warning$25 = warning_1;
|
10096
11167
|
|
10097
11168
|
var warnedAboutStatelessRefs = {};
|
10098
11169
|
}
|
@@ -10216,7 +11287,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10216
11287
|
mountClassInstance(workInProgress, priorityLevel);
|
10217
11288
|
shouldUpdate = true;
|
10218
11289
|
} else {
|
10219
|
-
|
11290
|
+
invariant_1(false, 'Resuming work not yet implemented.');
|
10220
11291
|
// In a resume, we'll already have an instance we can reuse.
|
10221
11292
|
// shouldUpdate = resumeMountClassInstance(workInProgress, priorityLevel);
|
10222
11293
|
}
|
@@ -10331,7 +11402,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10331
11402
|
var nextProps = workInProgress.pendingProps;
|
10332
11403
|
if (nextProps === null) {
|
10333
11404
|
nextProps = memoizedProps;
|
10334
|
-
!(nextProps !== null) ?
|
11405
|
+
!(nextProps !== null) ? invariant_1(false, 'We should always have pending or current props. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
10335
11406
|
}
|
10336
11407
|
var prevProps = current !== null ? current.memoizedProps : null;
|
10337
11408
|
|
@@ -10387,7 +11458,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10387
11458
|
}
|
10388
11459
|
|
10389
11460
|
function mountIndeterminateComponent(current, workInProgress, priorityLevel) {
|
10390
|
-
!(current === null) ?
|
11461
|
+
!(current === null) ? invariant_1(false, 'An indeterminate component should never have mounted. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
10391
11462
|
var fn = workInProgress.type;
|
10392
11463
|
var props = workInProgress.pendingProps;
|
10393
11464
|
var unmaskedContext = getUnmaskedContext$1(workInProgress);
|
@@ -10420,7 +11491,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10420
11491
|
var Component = workInProgress.type;
|
10421
11492
|
|
10422
11493
|
if (Component) {
|
10423
|
-
warning$
|
11494
|
+
warning$25(!Component.childContextTypes, '%s(...): childContextTypes cannot be defined on a functional component.', Component.displayName || Component.name || 'Component');
|
10424
11495
|
}
|
10425
11496
|
if (workInProgress.ref !== null) {
|
10426
11497
|
var info = '';
|
@@ -10436,7 +11507,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10436
11507
|
}
|
10437
11508
|
if (!warnedAboutStatelessRefs[warningKey]) {
|
10438
11509
|
warnedAboutStatelessRefs[warningKey] = true;
|
10439
|
-
warning$
|
11510
|
+
warning$25(false, 'Stateless function components cannot be given refs. ' + 'Attempts to access this ref will fail.%s%s', info, ReactDebugCurrentFiber$4.getCurrentFiberStackAddendum());
|
10440
11511
|
}
|
10441
11512
|
}
|
10442
11513
|
}
|
@@ -10453,7 +11524,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10453
11524
|
// we don't do the bailout and we have to reuse existing props instead.
|
10454
11525
|
if (nextCoroutine === null) {
|
10455
11526
|
nextCoroutine = current && current.memoizedProps;
|
10456
|
-
!(nextCoroutine !== null) ?
|
11527
|
+
!(nextCoroutine !== null) ? invariant_1(false, 'We should always have pending or current props. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
10457
11528
|
}
|
10458
11529
|
} else if (nextCoroutine === null || workInProgress.memoizedProps === nextCoroutine) {
|
10459
11530
|
nextCoroutine = workInProgress.memoizedProps;
|
@@ -10490,7 +11561,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10490
11561
|
// we don't do the bailout and we have to reuse existing props instead.
|
10491
11562
|
if (nextChildren === null) {
|
10492
11563
|
nextChildren = current && current.memoizedProps;
|
10493
|
-
!(nextChildren != null) ?
|
11564
|
+
!(nextChildren != null) ? invariant_1(false, 'We should always have pending or current props. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
10494
11565
|
}
|
10495
11566
|
} else if (nextChildren === null || workInProgress.memoizedProps === nextChildren) {
|
10496
11567
|
return bailoutOnAlreadyFinishedWork(current, workInProgress);
|
@@ -10624,7 +11695,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10624
11695
|
case Fragment$2:
|
10625
11696
|
return updateFragment(current, workInProgress);
|
10626
11697
|
default:
|
10627
|
-
|
11698
|
+
invariant_1(false, 'Unknown unit of work tag. This error is likely caused by a bug in React. Please file an issue.');
|
10628
11699
|
}
|
10629
11700
|
}
|
10630
11701
|
|
@@ -10638,7 +11709,7 @@ var ReactFiberBeginWork = function (config, hostContext, hydrationContext, sched
|
|
10638
11709
|
pushHostRootContext(workInProgress);
|
10639
11710
|
break;
|
10640
11711
|
default:
|
10641
|
-
|
11712
|
+
invariant_1(false, 'Invalid type of work. This error is likely caused by a bug in React. Please file an issue.');
|
10642
11713
|
}
|
10643
11714
|
|
10644
11715
|
// Add an error effect so we can handle the error during the commit phase
|
@@ -10746,7 +11817,7 @@ var ReactFiberCompleteWork = function (config, hostContext, hydrationContext) {
|
|
10746
11817
|
}
|
10747
11818
|
while (node !== null) {
|
10748
11819
|
if (node.tag === HostComponent$8 || node.tag === HostText$6 || node.tag === HostPortal$6) {
|
10749
|
-
|
11820
|
+
invariant_1(false, 'A coroutine cannot have host component children.');
|
10750
11821
|
} else if (node.tag === YieldComponent$4) {
|
10751
11822
|
yields.push(node.type);
|
10752
11823
|
} else if (node.child !== null) {
|
@@ -10767,7 +11838,7 @@ var ReactFiberCompleteWork = function (config, hostContext, hydrationContext) {
|
|
10767
11838
|
|
10768
11839
|
function moveCoroutineToHandlerPhase(current, workInProgress) {
|
10769
11840
|
var coroutine = workInProgress.memoizedProps;
|
10770
|
-
!coroutine ?
|
11841
|
+
!coroutine ? invariant_1(false, 'Should be resolved by now. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
10771
11842
|
|
10772
11843
|
// First step of the coroutine has completed. Now we need to do the second.
|
10773
11844
|
// TODO: It would be nice to have a multi stage coroutine represented by a
|
@@ -10893,7 +11964,7 @@ var ReactFiberCompleteWork = function (config, hostContext, hydrationContext) {
|
|
10893
11964
|
}
|
10894
11965
|
} else {
|
10895
11966
|
if (!newProps) {
|
10896
|
-
!(workInProgress.stateNode !== null) ?
|
11967
|
+
!(workInProgress.stateNode !== null) ? invariant_1(false, 'We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
10897
11968
|
// This can happen when we abort work.
|
10898
11969
|
return null;
|
10899
11970
|
}
|
@@ -10945,7 +12016,7 @@ var ReactFiberCompleteWork = function (config, hostContext, hydrationContext) {
|
|
10945
12016
|
}
|
10946
12017
|
} else {
|
10947
12018
|
if (typeof newText !== 'string') {
|
10948
|
-
!(workInProgress.stateNode !== null) ?
|
12019
|
+
!(workInProgress.stateNode !== null) ? invariant_1(false, 'We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
10949
12020
|
// This can happen when we abort work.
|
10950
12021
|
return null;
|
10951
12022
|
}
|
@@ -10980,10 +12051,10 @@ var ReactFiberCompleteWork = function (config, hostContext, hydrationContext) {
|
|
10980
12051
|
return null;
|
10981
12052
|
// Error cases
|
10982
12053
|
case IndeterminateComponent$3:
|
10983
|
-
|
12054
|
+
invariant_1(false, 'An indeterminate component should have become determinate before completing. This error is likely caused by a bug in React. Please file an issue.');
|
10984
12055
|
// eslint-disable-next-line no-fallthrough
|
10985
12056
|
default:
|
10986
|
-
|
12057
|
+
invariant_1(false, 'Unknown unit of work tag. This error is likely caused by a bug in React. Please file an issue.');
|
10987
12058
|
}
|
10988
12059
|
}
|
10989
12060
|
|
@@ -10993,7 +12064,7 @@ var ReactFiberCompleteWork = function (config, hostContext, hydrationContext) {
|
|
10993
12064
|
};
|
10994
12065
|
|
10995
12066
|
{
|
10996
|
-
var warning$
|
12067
|
+
var warning$28 = warning_1;
|
10997
12068
|
}
|
10998
12069
|
|
10999
12070
|
var onCommitFiberRoot = null;
|
@@ -11007,7 +12078,7 @@ function catchErrors(fn) {
|
|
11007
12078
|
} catch (err) {
|
11008
12079
|
if (true && !hasLoggedError) {
|
11009
12080
|
hasLoggedError = true;
|
11010
|
-
warning$
|
12081
|
+
warning$28(false, 'React DevTools encountered an error: %s', err);
|
11011
12082
|
}
|
11012
12083
|
}
|
11013
12084
|
};
|
@@ -11021,7 +12092,7 @@ function injectInternals$1(internals) {
|
|
11021
12092
|
var hook = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
11022
12093
|
if (!hook.supportsFiber) {
|
11023
12094
|
{
|
11024
|
-
warning$
|
12095
|
+
warning$28(false, 'The installed version of React DevTools is too old and will not work ' + 'with the current version of React. Please update React DevTools. ' + 'https://fb.me/react-devtools');
|
11025
12096
|
}
|
11026
12097
|
// DevTools exists, even though it doesn't support Fiber.
|
11027
12098
|
return true;
|
@@ -11038,7 +12109,7 @@ function injectInternals$1(internals) {
|
|
11038
12109
|
} catch (err) {
|
11039
12110
|
// Catch all errors because it is unsafe to throw during initialization.
|
11040
12111
|
{
|
11041
|
-
warning$
|
12112
|
+
warning$28(false, 'React DevTools encountered an error: %s.', err);
|
11042
12113
|
}
|
11043
12114
|
}
|
11044
12115
|
// DevTools exists
|
@@ -11151,7 +12222,7 @@ var ReactFiberCommitWork = function (config, captureError) {
|
|
11151
12222
|
}
|
11152
12223
|
parent = parent['return'];
|
11153
12224
|
}
|
11154
|
-
|
12225
|
+
invariant_1(false, 'Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.');
|
11155
12226
|
}
|
11156
12227
|
|
11157
12228
|
function isHostParent(fiber) {
|
@@ -11218,7 +12289,7 @@ var ReactFiberCommitWork = function (config, captureError) {
|
|
11218
12289
|
isContainer = true;
|
11219
12290
|
break;
|
11220
12291
|
default:
|
11221
|
-
|
12292
|
+
invariant_1(false, 'Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue.');
|
11222
12293
|
}
|
11223
12294
|
if (parentFiber.effectTag & ContentReset$2) {
|
11224
12295
|
// Reset the text content of the parent before doing any insertions
|
@@ -11312,7 +12383,7 @@ var ReactFiberCommitWork = function (config, captureError) {
|
|
11312
12383
|
if (!currentParentIsValid) {
|
11313
12384
|
var parent = node['return'];
|
11314
12385
|
findParent: while (true) {
|
11315
|
-
!(parent !== null) ?
|
12386
|
+
!(parent !== null) ? invariant_1(false, 'Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
11316
12387
|
switch (parent.tag) {
|
11317
12388
|
case HostComponent$9:
|
11318
12389
|
currentParent = parent.stateNode;
|
@@ -11465,7 +12536,7 @@ var ReactFiberCommitWork = function (config, captureError) {
|
|
11465
12536
|
}
|
11466
12537
|
case HostText$7:
|
11467
12538
|
{
|
11468
|
-
!(finishedWork.stateNode !== null) ?
|
12539
|
+
!(finishedWork.stateNode !== null) ? invariant_1(false, 'This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
11469
12540
|
var textInstance = finishedWork.stateNode;
|
11470
12541
|
var newText = finishedWork.memoizedProps;
|
11471
12542
|
// For hydration we reuse the update path but we treat the oldProps
|
@@ -11485,7 +12556,7 @@ var ReactFiberCommitWork = function (config, captureError) {
|
|
11485
12556
|
}
|
11486
12557
|
default:
|
11487
12558
|
{
|
11488
|
-
|
12559
|
+
invariant_1(false, 'This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.');
|
11489
12560
|
}
|
11490
12561
|
}
|
11491
12562
|
}
|
@@ -11562,7 +12633,7 @@ var ReactFiberCommitWork = function (config, captureError) {
|
|
11562
12633
|
}
|
11563
12634
|
default:
|
11564
12635
|
{
|
11565
|
-
|
12636
|
+
invariant_1(false, 'This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.');
|
11566
12637
|
}
|
11567
12638
|
}
|
11568
12639
|
}
|
@@ -11616,7 +12687,7 @@ var ReactFiberHostContext = function (config) {
|
|
11616
12687
|
var rootInstanceStackCursor = createCursor$2(NO_CONTEXT);
|
11617
12688
|
|
11618
12689
|
function requiredContext(c) {
|
11619
|
-
!(c !== NO_CONTEXT) ?
|
12690
|
+
!(c !== NO_CONTEXT) ? invariant_1(false, 'Expected host context to exist. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
11620
12691
|
return c;
|
11621
12692
|
}
|
11622
12693
|
|
@@ -11723,10 +12794,10 @@ var ReactFiberHydrationContext = function (config) {
|
|
11723
12794
|
resetHydrationState: function () {},
|
11724
12795
|
tryToClaimNextHydratableInstance: function () {},
|
11725
12796
|
prepareToHydrateHostInstance: function () {
|
11726
|
-
|
12797
|
+
invariant_1(false, 'Expected prepareToHydrateHostInstance() to never be called. This error is likely caused by a bug in React. Please file an issue.');
|
11727
12798
|
},
|
11728
12799
|
prepareToHydrateHostTextInstance: function () {
|
11729
|
-
|
12800
|
+
invariant_1(false, 'Expected prepareToHydrateHostTextInstance() to never be called. This error is likely caused by a bug in React. Please file an issue.');
|
11730
12801
|
},
|
11731
12802
|
popHydrationState: function (fiber) {
|
11732
12803
|
return false;
|
@@ -12021,7 +13092,7 @@ var resetContext$1 = _require14.resetContext;
|
|
12021
13092
|
|
12022
13093
|
|
12023
13094
|
{
|
12024
|
-
var warning$
|
13095
|
+
var warning$24 = warning_1;
|
12025
13096
|
var ReactFiberInstrumentation$1 = ReactFiberInstrumentation_1;
|
12026
13097
|
var ReactDebugCurrentFiber$3 = ReactDebugCurrentFiber_1;
|
12027
13098
|
|
@@ -12042,16 +13113,16 @@ var resetContext$1 = _require14.resetContext;
|
|
12042
13113
|
|
12043
13114
|
var warnAboutUpdateOnUnmounted = function (instance) {
|
12044
13115
|
var ctor = instance.constructor;
|
12045
|
-
warning$
|
13116
|
+
warning$24(false, 'Can only update a mounted or mounting component. This usually means ' + 'you called setState, replaceState, or forceUpdate on an unmounted ' + 'component. This is a no-op.\n\nPlease check the code for the ' + '%s component.', ctor && (ctor.displayName || ctor.name) || 'ReactClass');
|
12046
13117
|
};
|
12047
13118
|
|
12048
13119
|
var warnAboutInvalidUpdates = function (instance) {
|
12049
13120
|
switch (ReactDebugCurrentFiber$3.phase) {
|
12050
13121
|
case 'getChildContext':
|
12051
|
-
warning$
|
13122
|
+
warning$24(false, 'setState(...): Cannot call setState() inside getChildContext()');
|
12052
13123
|
break;
|
12053
13124
|
case 'render':
|
12054
|
-
warning$
|
13125
|
+
warning$24(false, 'Cannot update during an existing state transition (such as within ' + "`render` or another component's constructor). Render methods should " + 'be a pure function of props and state; constructor side-effects are ' + 'an anti-pattern, but can be moved to `componentWillMount`.');
|
12055
13126
|
break;
|
12056
13127
|
}
|
12057
13128
|
};
|
@@ -12332,7 +13403,7 @@ var ReactFiberScheduler = function (config) {
|
|
12332
13403
|
|
12333
13404
|
pendingCommit = null;
|
12334
13405
|
var root = finishedWork.stateNode;
|
12335
|
-
!(root.current !== finishedWork) ?
|
13406
|
+
!(root.current !== finishedWork) ? invariant_1(false, 'Cannot commit the same tree as before. This is probably a bug related to the return field. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
12336
13407
|
|
12337
13408
|
if (nextPriorityLevel === SynchronousPriority$1 || nextPriorityLevel === TaskPriority$1) {
|
12338
13409
|
// Keep track of the number of iterations to prevent an infinite
|
@@ -12380,7 +13451,7 @@ var ReactFiberScheduler = function (config) {
|
|
12380
13451
|
}
|
12381
13452
|
}
|
12382
13453
|
if (didError) {
|
12383
|
-
!(nextEffect !== null) ?
|
13454
|
+
!(nextEffect !== null) ? invariant_1(false, 'Should have next effect. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
12384
13455
|
captureError(nextEffect, _error);
|
12385
13456
|
// Clean-up
|
12386
13457
|
if (nextEffect !== null) {
|
@@ -12419,7 +13490,7 @@ var ReactFiberScheduler = function (config) {
|
|
12419
13490
|
}
|
12420
13491
|
}
|
12421
13492
|
if (_didError) {
|
12422
|
-
!(nextEffect !== null) ?
|
13493
|
+
!(nextEffect !== null) ? invariant_1(false, 'Should have next effect. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
12423
13494
|
captureError(nextEffect, _error2);
|
12424
13495
|
if (nextEffect !== null) {
|
12425
13496
|
nextEffect = nextEffect.nextEffect;
|
@@ -12640,7 +13711,7 @@ var ReactFiberScheduler = function (config) {
|
|
12640
13711
|
nextUnitOfWork = performUnitOfWork(nextUnitOfWork);
|
12641
13712
|
}
|
12642
13713
|
if (nextUnitOfWork === null) {
|
12643
|
-
!(pendingCommit !== null) ?
|
13714
|
+
!(pendingCommit !== null) ? invariant_1(false, 'Should have a pending commit. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
12644
13715
|
// We just completed a root. Commit it now.
|
12645
13716
|
priorityContext = TaskPriority$1;
|
12646
13717
|
commitAllWork(pendingCommit);
|
@@ -12681,7 +13752,7 @@ var ReactFiberScheduler = function (config) {
|
|
12681
13752
|
while (nextUnitOfWork !== null) {
|
12682
13753
|
nextUnitOfWork = performUnitOfWork(nextUnitOfWork);
|
12683
13754
|
if (nextUnitOfWork === null) {
|
12684
|
-
!(pendingCommit !== null) ?
|
13755
|
+
!(pendingCommit !== null) ? invariant_1(false, 'Should have a pending commit. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
12685
13756
|
// We just completed a root. Commit it now.
|
12686
13757
|
priorityContext = TaskPriority$1;
|
12687
13758
|
commitAllWork(pendingCommit);
|
@@ -12705,7 +13776,7 @@ var ReactFiberScheduler = function (config) {
|
|
12705
13776
|
// omit either of the checks in the following condition, but we need
|
12706
13777
|
// both to satisfy Flow.
|
12707
13778
|
if (nextUnitOfWork === null) {
|
12708
|
-
!(pendingCommit !== null) ?
|
13779
|
+
!(pendingCommit !== null) ? invariant_1(false, 'Should have a pending commit. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
12709
13780
|
// We just completed a root. If we have time, commit it now.
|
12710
13781
|
// Otherwise, we'll commit it in the next frame.
|
12711
13782
|
if (deadline.timeRemaining() > timeHeuristicForUnitOfWork) {
|
@@ -12760,7 +13831,7 @@ var ReactFiberScheduler = function (config) {
|
|
12760
13831
|
// No work left. We can exit.
|
12761
13832
|
break loop;
|
12762
13833
|
default:
|
12763
|
-
|
13834
|
+
invariant_1(false, 'Switch statement should be exhuastive. This error is likely caused by a bug in React. Please file an issue.');
|
12764
13835
|
}
|
12765
13836
|
} while (true);
|
12766
13837
|
}
|
@@ -12787,7 +13858,7 @@ var ReactFiberScheduler = function (config) {
|
|
12787
13858
|
startWorkLoopTimer();
|
12788
13859
|
}
|
12789
13860
|
|
12790
|
-
!!isPerformingWork ?
|
13861
|
+
!!isPerformingWork ? invariant_1(false, 'performWork was called recursively. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
12791
13862
|
isPerformingWork = true;
|
12792
13863
|
|
12793
13864
|
// The priority context changes during the render phase. We'll need to
|
@@ -12823,7 +13894,7 @@ var ReactFiberScheduler = function (config) {
|
|
12823
13894
|
// "Capture" the error by finding the nearest boundary. If there is no
|
12824
13895
|
// error boundary, we use the root.
|
12825
13896
|
var boundary = captureError(failedWork, error);
|
12826
|
-
!(boundary !== null) ?
|
13897
|
+
!(boundary !== null) ? invariant_1(false, 'Should have found an error boundary. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
12827
13898
|
|
12828
13899
|
if (didFatal) {
|
12829
13900
|
// The error we just captured was a fatal error. This happens
|
@@ -13045,7 +14116,7 @@ var ReactFiberScheduler = function (config) {
|
|
13045
14116
|
}
|
13046
14117
|
}
|
13047
14118
|
|
13048
|
-
!(capturedError != null) ?
|
14119
|
+
!(capturedError != null) ? invariant_1(false, 'No error for given unit of work. This error is likely caused by a bug in React. Please file an issue.') : void 0;
|
13049
14120
|
|
13050
14121
|
switch (effectfulFiber.tag) {
|
13051
14122
|
case ClassComponent$5:
|
@@ -13068,7 +14139,7 @@ var ReactFiberScheduler = function (config) {
|
|
13068
14139
|
}
|
13069
14140
|
return;
|
13070
14141
|
default:
|
13071
|
-
|
14142
|
+
invariant_1(false, 'Invalid type of work. This error is likely caused by a bug in React. Please file an issue.');
|
13072
14143
|
}
|
13073
14144
|
}
|
13074
14145
|
|
@@ -13131,7 +14202,7 @@ var ReactFiberScheduler = function (config) {
|
|
13131
14202
|
|
13132
14203
|
if (nestedUpdateCount > NESTED_UPDATE_LIMIT) {
|
13133
14204
|
didFatal = true;
|
13134
|
-
|
14205
|
+
invariant_1(false, 'Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.');
|
13135
14206
|
}
|
13136
14207
|
|
13137
14208
|
if (!isPerformingWork && priorityLevel <= nextPriorityLevel) {
|
@@ -13186,7 +14257,7 @@ var ReactFiberScheduler = function (config) {
|
|
13186
14257
|
}
|
13187
14258
|
break;
|
13188
14259
|
case TaskPriority$1:
|
13189
|
-
!isBatchingUpdates ?
|
14260
|
+
!isBatchingUpdates ? invariant_1(false, 'Task updates can only be scheduled as a nested update or inside batchedUpdates.') : void 0;
|
13190
14261
|
break;
|
13191
14262
|
default:
|
13192
14263
|
// Schedule a callback to perform the work later.
|
@@ -13271,7 +14342,7 @@ var ReactFiberScheduler = function (config) {
|
|
13271
14342
|
isBatchingUpdates = previousIsBatchingUpdates;
|
13272
14343
|
priorityContext = previousPriorityContext;
|
13273
14344
|
|
13274
|
-
!!isPerformingWork ?
|
14345
|
+
!!isPerformingWork ? invariant_1(false, 'flushSync was called from inside a lifecycle method. It cannot be called when React is already rendering.') : void 0;
|
13275
14346
|
performWork(TaskPriority$1, null);
|
13276
14347
|
}
|
13277
14348
|
}
|
@@ -13312,12 +14383,12 @@ var ReactFiberScheduler = function (config) {
|
|
13312
14383
|
|
13313
14384
|
|
13314
14385
|
var getContextFiber = function (arg) {
|
13315
|
-
|
14386
|
+
invariant_1(false, 'Missing injection for fiber getContextForSubtree');
|
13316
14387
|
};
|
13317
14388
|
|
13318
14389
|
function getContextForSubtree(parentComponent) {
|
13319
14390
|
if (!parentComponent) {
|
13320
|
-
return
|
14391
|
+
return emptyObject_1;
|
13321
14392
|
}
|
13322
14393
|
|
13323
14394
|
var instance = ReactInstanceMap_1.get(parentComponent);
|
@@ -13347,7 +14418,7 @@ var createFiberRoot = ReactFiberRoot.createFiberRoot;
|
|
13347
14418
|
var HostComponent$3 = ReactTypeOfWork.HostComponent;
|
13348
14419
|
|
13349
14420
|
{
|
13350
|
-
var warning$
|
14421
|
+
var warning$20 = warning_1;
|
13351
14422
|
var ReactFiberInstrumentation = ReactFiberInstrumentation_1;
|
13352
14423
|
var ReactDebugCurrentFiber$1 = ReactDebugCurrentFiber_1;
|
13353
14424
|
var getComponentName$4 = getComponentName_1;
|
@@ -13377,7 +14448,7 @@ var ReactFiberReconciler = function (config) {
|
|
13377
14448
|
function scheduleTopLevelUpdate(current, element, callback) {
|
13378
14449
|
{
|
13379
14450
|
if (ReactDebugCurrentFiber$1.phase === 'render' && ReactDebugCurrentFiber$1.current !== null) {
|
13380
|
-
warning$
|
14451
|
+
warning$20(false, 'Render methods should be a pure function of props and state; ' + 'triggering nested component updates from render is not allowed. ' + 'If necessary, trigger nested updates in componentDidUpdate.\n\n' + 'Check the render method of %s.', getComponentName$4(ReactDebugCurrentFiber$1.current) || 'Unknown');
|
13381
14452
|
}
|
13382
14453
|
}
|
13383
14454
|
|
@@ -13389,7 +14460,7 @@ var ReactFiberReconciler = function (config) {
|
|
13389
14460
|
var nextState = { element: element };
|
13390
14461
|
callback = callback === undefined ? null : callback;
|
13391
14462
|
{
|
13392
|
-
warning$
|
14463
|
+
warning$20(callback === null || typeof callback === 'function', 'render(...): Expected the last optional `callback` argument to be a ' + 'function. Instead received: %s.', callback);
|
13393
14464
|
}
|
13394
14465
|
addTopLevelUpdate(current, nextState, callback, priorityLevel);
|
13395
14466
|
scheduleUpdate(current, priorityLevel);
|
@@ -13537,7 +14608,7 @@ var contentKey = null;
|
|
13537
14608
|
* @internal
|
13538
14609
|
*/
|
13539
14610
|
function getTextContentAccessor() {
|
13540
|
-
if (!contentKey &&
|
14611
|
+
if (!contentKey && ExecutionEnvironment_1.canUseDOM) {
|
13541
14612
|
// Prefer textContent to innerText because many browsers support both but
|
13542
14613
|
// SVG <text> elements don't support innerText even when <div> does.
|
13543
14614
|
contentKey = 'textContent' in document.documentElement ? 'textContent' : 'innerText';
|
@@ -13552,8 +14623,8 @@ var getTextContentAccessor_1 = getTextContentAccessor;
|
|
13552
14623
|
* is available on the Range object, IE11 sometimes gets them wrong.
|
13553
14624
|
* If the anchor/focus nodes and offsets are the same, the range is collapsed.
|
13554
14625
|
*/
|
13555
|
-
function isCollapsed(anchorNode, anchorOffset, focusNode
|
13556
|
-
return anchorNode === focusNode
|
14626
|
+
function isCollapsed(anchorNode, anchorOffset, focusNode, focusOffset) {
|
14627
|
+
return anchorNode === focusNode && anchorOffset === focusOffset;
|
13557
14628
|
}
|
13558
14629
|
|
13559
14630
|
/**
|
@@ -13569,7 +14640,7 @@ function getModernOffsets(node) {
|
|
13569
14640
|
|
13570
14641
|
var anchorNode = selection.anchorNode;
|
13571
14642
|
var anchorOffset = selection.anchorOffset;
|
13572
|
-
var focusNode
|
14643
|
+
var focusNode = selection.focusNode;
|
13573
14644
|
var focusOffset = selection.focusOffset;
|
13574
14645
|
|
13575
14646
|
var currentRange = selection.getRangeAt(0);
|
@@ -13609,7 +14680,7 @@ function getModernOffsets(node) {
|
|
13609
14680
|
// Detect whether the selection is backward.
|
13610
14681
|
var detectionRange = document.createRange();
|
13611
14682
|
detectionRange.setStart(anchorNode, anchorOffset);
|
13612
|
-
detectionRange.setEnd(focusNode
|
14683
|
+
detectionRange.setEnd(focusNode, focusOffset);
|
13613
14684
|
var isBackward = detectionRange.collapsed;
|
13614
14685
|
|
13615
14686
|
return {
|
@@ -13681,6 +14752,142 @@ var ReactDOMSelection = {
|
|
13681
14752
|
|
13682
14753
|
var ReactDOMSelection_1 = ReactDOMSelection;
|
13683
14754
|
|
14755
|
+
/**
|
14756
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
14757
|
+
*
|
14758
|
+
* This source code is licensed under the MIT license found in the
|
14759
|
+
* LICENSE file in the root directory of this source tree.
|
14760
|
+
*
|
14761
|
+
* @typechecks
|
14762
|
+
*/
|
14763
|
+
|
14764
|
+
/**
|
14765
|
+
* @param {*} object The object to check.
|
14766
|
+
* @return {boolean} Whether or not the object is a DOM node.
|
14767
|
+
*/
|
14768
|
+
function isNode(object) {
|
14769
|
+
var doc = object ? object.ownerDocument || object : document;
|
14770
|
+
var defaultView = doc.defaultView || window;
|
14771
|
+
return !!(object && (typeof defaultView.Node === 'function' ? object instanceof defaultView.Node : typeof object === 'object' && typeof object.nodeType === 'number' && typeof object.nodeName === 'string'));
|
14772
|
+
}
|
14773
|
+
|
14774
|
+
var isNode_1 = isNode;
|
14775
|
+
|
14776
|
+
/**
|
14777
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
14778
|
+
*
|
14779
|
+
* This source code is licensed under the MIT license found in the
|
14780
|
+
* LICENSE file in the root directory of this source tree.
|
14781
|
+
*
|
14782
|
+
* @typechecks
|
14783
|
+
*/
|
14784
|
+
|
14785
|
+
|
14786
|
+
|
14787
|
+
/**
|
14788
|
+
* @param {*} object The object to check.
|
14789
|
+
* @return {boolean} Whether or not the object is a DOM text node.
|
14790
|
+
*/
|
14791
|
+
function isTextNode(object) {
|
14792
|
+
return isNode_1(object) && object.nodeType == 3;
|
14793
|
+
}
|
14794
|
+
|
14795
|
+
var isTextNode_1 = isTextNode;
|
14796
|
+
|
14797
|
+
/**
|
14798
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
14799
|
+
*
|
14800
|
+
* This source code is licensed under the MIT license found in the
|
14801
|
+
* LICENSE file in the root directory of this source tree.
|
14802
|
+
*
|
14803
|
+
*
|
14804
|
+
*/
|
14805
|
+
|
14806
|
+
|
14807
|
+
|
14808
|
+
/*eslint-disable no-bitwise */
|
14809
|
+
|
14810
|
+
/**
|
14811
|
+
* Checks if a given DOM node contains or is another DOM node.
|
14812
|
+
*/
|
14813
|
+
function containsNode(outerNode, innerNode) {
|
14814
|
+
if (!outerNode || !innerNode) {
|
14815
|
+
return false;
|
14816
|
+
} else if (outerNode === innerNode) {
|
14817
|
+
return true;
|
14818
|
+
} else if (isTextNode_1(outerNode)) {
|
14819
|
+
return false;
|
14820
|
+
} else if (isTextNode_1(innerNode)) {
|
14821
|
+
return containsNode(outerNode, innerNode.parentNode);
|
14822
|
+
} else if ('contains' in outerNode) {
|
14823
|
+
return outerNode.contains(innerNode);
|
14824
|
+
} else if (outerNode.compareDocumentPosition) {
|
14825
|
+
return !!(outerNode.compareDocumentPosition(innerNode) & 16);
|
14826
|
+
} else {
|
14827
|
+
return false;
|
14828
|
+
}
|
14829
|
+
}
|
14830
|
+
|
14831
|
+
var containsNode_1 = containsNode;
|
14832
|
+
|
14833
|
+
/**
|
14834
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
14835
|
+
*
|
14836
|
+
* This source code is licensed under the MIT license found in the
|
14837
|
+
* LICENSE file in the root directory of this source tree.
|
14838
|
+
*
|
14839
|
+
*/
|
14840
|
+
|
14841
|
+
/**
|
14842
|
+
* @param {DOMElement} node input/textarea to focus
|
14843
|
+
*/
|
14844
|
+
|
14845
|
+
function focusNode(node) {
|
14846
|
+
// IE8 can throw "Can't move focus to the control because it is invisible,
|
14847
|
+
// not enabled, or of a type that does not accept the focus." for all kinds of
|
14848
|
+
// reasons that are too expensive and fragile to test.
|
14849
|
+
try {
|
14850
|
+
node.focus();
|
14851
|
+
} catch (e) {}
|
14852
|
+
}
|
14853
|
+
|
14854
|
+
var focusNode_1 = focusNode;
|
14855
|
+
|
14856
|
+
/**
|
14857
|
+
* Copyright (c) 2013-present, Facebook, Inc.
|
14858
|
+
*
|
14859
|
+
* This source code is licensed under the MIT license found in the
|
14860
|
+
* LICENSE file in the root directory of this source tree.
|
14861
|
+
*
|
14862
|
+
* @typechecks
|
14863
|
+
*/
|
14864
|
+
|
14865
|
+
/* eslint-disable fb-www/typeof-undefined */
|
14866
|
+
|
14867
|
+
/**
|
14868
|
+
* Same as document.activeElement but wraps in a try-catch block. In IE it is
|
14869
|
+
* not safe to call document.activeElement if there is nothing focused.
|
14870
|
+
*
|
14871
|
+
* The activeElement will be null only if the document or document body is not
|
14872
|
+
* yet defined.
|
14873
|
+
*
|
14874
|
+
* @param {?DOMDocument} doc Defaults to current document.
|
14875
|
+
* @return {?DOMElement}
|
14876
|
+
*/
|
14877
|
+
function getActiveElement(doc) /*?DOMElement*/{
|
14878
|
+
doc = doc || (typeof document !== 'undefined' ? document : undefined);
|
14879
|
+
if (typeof doc === 'undefined') {
|
14880
|
+
return null;
|
14881
|
+
}
|
14882
|
+
try {
|
14883
|
+
return doc.activeElement || doc.body;
|
14884
|
+
} catch (e) {
|
14885
|
+
return doc.body;
|
14886
|
+
}
|
14887
|
+
}
|
14888
|
+
|
14889
|
+
var getActiveElement_1 = getActiveElement;
|
14890
|
+
|
13684
14891
|
var ELEMENT_NODE$2 = HTMLNodeType_1.ELEMENT_NODE;
|
13685
14892
|
|
13686
14893
|
|
@@ -13688,7 +14895,7 @@ var ELEMENT_NODE$2 = HTMLNodeType_1.ELEMENT_NODE;
|
|
13688
14895
|
|
13689
14896
|
|
13690
14897
|
function isInDocument(node) {
|
13691
|
-
return
|
14898
|
+
return containsNode_1(document.documentElement, node);
|
13692
14899
|
}
|
13693
14900
|
|
13694
14901
|
/**
|
@@ -13704,7 +14911,7 @@ var ReactInputSelection = {
|
|
13704
14911
|
},
|
13705
14912
|
|
13706
14913
|
getSelectionInformation: function () {
|
13707
|
-
var focusedElem =
|
14914
|
+
var focusedElem = getActiveElement_1();
|
13708
14915
|
return {
|
13709
14916
|
focusedElem: focusedElem,
|
13710
14917
|
selectionRange: ReactInputSelection.hasSelectionCapabilities(focusedElem) ? ReactInputSelection.getSelection(focusedElem) : null
|
@@ -13717,7 +14924,7 @@ var ReactInputSelection = {
|
|
13717
14924
|
* nodes and place them back in, resulting in focus being lost.
|
13718
14925
|
*/
|
13719
14926
|
restoreSelection: function (priorSelectionInformation) {
|
13720
|
-
var curFocusedElem =
|
14927
|
+
var curFocusedElem = getActiveElement_1();
|
13721
14928
|
var priorFocusedElem = priorSelectionInformation.focusedElem;
|
13722
14929
|
var priorSelectionRange = priorSelectionInformation.selectionRange;
|
13723
14930
|
if (curFocusedElem !== priorFocusedElem && isInDocument(priorFocusedElem)) {
|
@@ -13738,7 +14945,7 @@ var ReactInputSelection = {
|
|
13738
14945
|
}
|
13739
14946
|
}
|
13740
14947
|
|
13741
|
-
|
14948
|
+
focusNode_1(priorFocusedElem);
|
13742
14949
|
|
13743
14950
|
for (var i = 0; i < ancestors.length; i++) {
|
13744
14951
|
var info = ancestors[i];
|
@@ -13826,14 +15033,14 @@ var ReactCurrentOwner$3 = ReactGlobalSharedState_1.ReactCurrentOwner;
|
|
13826
15033
|
|
13827
15034
|
|
13828
15035
|
{
|
13829
|
-
var warning$
|
15036
|
+
var warning$29 = warning_1;
|
13830
15037
|
}
|
13831
15038
|
|
13832
15039
|
var findFiber = function (arg) {
|
13833
|
-
|
15040
|
+
invariant_1(false, 'Missing injection for fiber findDOMNode');
|
13834
15041
|
};
|
13835
15042
|
var findStack = function (arg) {
|
13836
|
-
|
15043
|
+
invariant_1(false, 'Missing injection for stack findDOMNode');
|
13837
15044
|
};
|
13838
15045
|
|
13839
15046
|
var findDOMNode = function (componentOrElement) {
|
@@ -13842,7 +15049,7 @@ var findDOMNode = function (componentOrElement) {
|
|
13842
15049
|
if (owner !== null) {
|
13843
15050
|
var isFiber = typeof owner.tag === 'number';
|
13844
15051
|
var warnedAboutRefsInRender = isFiber ? owner.stateNode._warnedAboutRefsInRender : owner._warnedAboutRefsInRender;
|
13845
|
-
warning$
|
15052
|
+
warning$29(warnedAboutRefsInRender, '%s is accessing findDOMNode inside its render(). ' + 'render() should be a pure function of props and state. It should ' + 'never access something that requires stale data from the previous ' + 'render, such as refs. Move this logic to componentDidMount and ' + 'componentDidUpdate instead.', getComponentName_1(owner) || 'A component');
|
13846
15053
|
if (isFiber) {
|
13847
15054
|
owner.stateNode._warnedAboutRefsInRender = true;
|
13848
15055
|
} else {
|
@@ -13867,9 +15074,9 @@ var findDOMNode = function (componentOrElement) {
|
|
13867
15074
|
}
|
13868
15075
|
|
13869
15076
|
if (typeof componentOrElement.render === 'function') {
|
13870
|
-
|
15077
|
+
invariant_1(false, 'Unable to find node on an unmounted component.');
|
13871
15078
|
} else {
|
13872
|
-
|
15079
|
+
invariant_1(false, 'Element appears to be neither ReactComponent nor DOMNode. Keys: %s', Object.keys(componentOrElement));
|
13873
15080
|
}
|
13874
15081
|
};
|
13875
15082
|
|
@@ -13908,7 +15115,7 @@ var findDOMNode_1 = findDOMNode;
|
|
13908
15115
|
var lowPriorityWarning$1 = function () {};
|
13909
15116
|
|
13910
15117
|
{
|
13911
|
-
var printWarning = function (format) {
|
15118
|
+
var printWarning$1 = function (format) {
|
13912
15119
|
for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
13913
15120
|
args[_key - 1] = arguments[_key];
|
13914
15121
|
}
|
@@ -13937,17 +15144,17 @@ var lowPriorityWarning$1 = function () {};
|
|
13937
15144
|
args[_key2 - 2] = arguments[_key2];
|
13938
15145
|
}
|
13939
15146
|
|
13940
|
-
printWarning.apply(undefined, [format].concat(args));
|
15147
|
+
printWarning$1.apply(undefined, [format].concat(args));
|
13941
15148
|
}
|
13942
15149
|
};
|
13943
15150
|
}
|
13944
15151
|
|
13945
15152
|
var lowPriorityWarning_1 = lowPriorityWarning$1;
|
13946
15153
|
|
13947
|
-
var validateDOMNesting$1 =
|
15154
|
+
var validateDOMNesting$1 = emptyFunction_1;
|
13948
15155
|
|
13949
15156
|
{
|
13950
|
-
var warning$
|
15157
|
+
var warning$30 = warning_1;
|
13951
15158
|
|
13952
15159
|
var _require$13 = ReactDebugCurrentFiber_1,
|
13953
15160
|
getCurrentFiberStackAddendum$6 = _require$13.getCurrentFiberStackAddendum;
|
@@ -13996,7 +15203,7 @@ var validateDOMNesting$1 = emptyFunction;
|
|
13996
15203
|
};
|
13997
15204
|
|
13998
15205
|
var updatedAncestorInfo$1 = function (oldInfo, tag, instance) {
|
13999
|
-
var ancestorInfo =
|
15206
|
+
var ancestorInfo = assign({}, oldInfo || emptyAncestorInfo);
|
14000
15207
|
var info = { tag: tag, instance: instance };
|
14001
15208
|
|
14002
15209
|
if (inScopeTags.indexOf(tag) !== -1) {
|
@@ -14253,7 +15460,7 @@ var validateDOMNesting$1 = emptyFunction;
|
|
14253
15460
|
var parentTag = parentInfo && parentInfo.tag;
|
14254
15461
|
|
14255
15462
|
if (childText != null) {
|
14256
|
-
warning$
|
15463
|
+
warning$30(childTag == null, 'validateDOMNesting: when childText is passed, childTag should be null');
|
14257
15464
|
childTag = '#text';
|
14258
15465
|
}
|
14259
15466
|
|
@@ -14298,9 +15505,9 @@ var validateDOMNesting$1 = emptyFunction;
|
|
14298
15505
|
if (ancestorTag === 'table' && childTag === 'tr') {
|
14299
15506
|
info += ' Add a <tbody> to your code to match the DOM tree generated by ' + 'the browser.';
|
14300
15507
|
}
|
14301
|
-
warning$
|
15508
|
+
warning$30(false, 'validateDOMNesting(...): %s cannot appear as a child of <%s>.%s%s%s', tagDisplayName, ancestorTag, whitespaceInfo, info, addendum);
|
14302
15509
|
} else {
|
14303
|
-
warning$
|
15510
|
+
warning$30(false, 'validateDOMNesting(...): %s cannot appear as a descendant of ' + '<%s>.%s', tagDisplayName, ancestorTag, addendum);
|
14304
15511
|
}
|
14305
15512
|
};
|
14306
15513
|
|
@@ -14454,7 +15661,7 @@ var ReactTreeTraversal = {
|
|
14454
15661
|
var getListener = EventPluginHub_1.getListener;
|
14455
15662
|
|
14456
15663
|
{
|
14457
|
-
var warning$
|
15664
|
+
var warning$31 = warning_1;
|
14458
15665
|
}
|
14459
15666
|
|
14460
15667
|
/**
|
@@ -14474,7 +15681,7 @@ function listenerAtPhase(inst, event, propagationPhase) {
|
|
14474
15681
|
*/
|
14475
15682
|
function accumulateDirectionalDispatches(inst, phase, event) {
|
14476
15683
|
{
|
14477
|
-
warning$
|
15684
|
+
warning$31(inst, 'Dispatching inst must not be null');
|
14478
15685
|
}
|
14479
15686
|
var listener = listenerAtPhase(inst, event, phase);
|
14480
15687
|
if (listener) {
|
@@ -14642,7 +15849,7 @@ var isProxySupported = typeof Proxy === 'function';
|
|
14642
15849
|
var EVENT_POOL_SIZE = 10;
|
14643
15850
|
|
14644
15851
|
{
|
14645
|
-
var warning$
|
15852
|
+
var warning$32 = warning_1;
|
14646
15853
|
}
|
14647
15854
|
|
14648
15855
|
var shouldBeReleasedProperties = ['dispatchConfig', '_targetInst', 'nativeEvent', 'isDefaultPrevented', 'isPropagationStopped', '_dispatchListeners', '_dispatchInstances'];
|
@@ -14655,7 +15862,7 @@ var EventInterface = {
|
|
14655
15862
|
type: null,
|
14656
15863
|
target: null,
|
14657
15864
|
// currentTarget is set when dispatching; no use in copying it here
|
14658
|
-
currentTarget:
|
15865
|
+
currentTarget: emptyFunction_1.thatReturnsNull,
|
14659
15866
|
eventPhase: null,
|
14660
15867
|
bubbles: null,
|
14661
15868
|
cancelable: null,
|
@@ -14718,15 +15925,15 @@ function SyntheticEvent(dispatchConfig, targetInst, nativeEvent, nativeEventTarg
|
|
14718
15925
|
|
14719
15926
|
var defaultPrevented = nativeEvent.defaultPrevented != null ? nativeEvent.defaultPrevented : nativeEvent.returnValue === false;
|
14720
15927
|
if (defaultPrevented) {
|
14721
|
-
this.isDefaultPrevented =
|
15928
|
+
this.isDefaultPrevented = emptyFunction_1.thatReturnsTrue;
|
14722
15929
|
} else {
|
14723
|
-
this.isDefaultPrevented =
|
15930
|
+
this.isDefaultPrevented = emptyFunction_1.thatReturnsFalse;
|
14724
15931
|
}
|
14725
|
-
this.isPropagationStopped =
|
15932
|
+
this.isPropagationStopped = emptyFunction_1.thatReturnsFalse;
|
14726
15933
|
return this;
|
14727
15934
|
}
|
14728
15935
|
|
14729
|
-
|
15936
|
+
assign(SyntheticEvent.prototype, {
|
14730
15937
|
preventDefault: function () {
|
14731
15938
|
this.defaultPrevented = true;
|
14732
15939
|
var event = this.nativeEvent;
|
@@ -14739,7 +15946,7 @@ _assign(SyntheticEvent.prototype, {
|
|
14739
15946
|
} else if (typeof event.returnValue !== 'unknown') {
|
14740
15947
|
event.returnValue = false;
|
14741
15948
|
}
|
14742
|
-
this.isDefaultPrevented =
|
15949
|
+
this.isDefaultPrevented = emptyFunction_1.thatReturnsTrue;
|
14743
15950
|
},
|
14744
15951
|
|
14745
15952
|
stopPropagation: function () {
|
@@ -14759,7 +15966,7 @@ _assign(SyntheticEvent.prototype, {
|
|
14759
15966
|
event.cancelBubble = true;
|
14760
15967
|
}
|
14761
15968
|
|
14762
|
-
this.isPropagationStopped =
|
15969
|
+
this.isPropagationStopped = emptyFunction_1.thatReturnsTrue;
|
14763
15970
|
},
|
14764
15971
|
|
14765
15972
|
/**
|
@@ -14768,7 +15975,7 @@ _assign(SyntheticEvent.prototype, {
|
|
14768
15975
|
* won't be added back into the pool.
|
14769
15976
|
*/
|
14770
15977
|
persist: function () {
|
14771
|
-
this.isPersistent =
|
15978
|
+
this.isPersistent = emptyFunction_1.thatReturnsTrue;
|
14772
15979
|
},
|
14773
15980
|
|
14774
15981
|
/**
|
@@ -14776,7 +15983,7 @@ _assign(SyntheticEvent.prototype, {
|
|
14776
15983
|
*
|
14777
15984
|
* @return {boolean} True if this should not be released, false otherwise.
|
14778
15985
|
*/
|
14779
|
-
isPersistent:
|
15986
|
+
isPersistent: emptyFunction_1.thatReturnsFalse,
|
14780
15987
|
|
14781
15988
|
/**
|
14782
15989
|
* `PooledClass` looks for `destructor` on each instance it releases.
|
@@ -14793,8 +16000,8 @@ _assign(SyntheticEvent.prototype, {
|
|
14793
16000
|
}
|
14794
16001
|
{
|
14795
16002
|
Object.defineProperty(this, 'nativeEvent', getPooledWarningPropertyDefinition('nativeEvent', null));
|
14796
|
-
Object.defineProperty(this, 'preventDefault', getPooledWarningPropertyDefinition('preventDefault',
|
14797
|
-
Object.defineProperty(this, 'stopPropagation', getPooledWarningPropertyDefinition('stopPropagation',
|
16003
|
+
Object.defineProperty(this, 'preventDefault', getPooledWarningPropertyDefinition('preventDefault', emptyFunction_1));
|
16004
|
+
Object.defineProperty(this, 'stopPropagation', getPooledWarningPropertyDefinition('stopPropagation', emptyFunction_1));
|
14798
16005
|
}
|
14799
16006
|
}
|
14800
16007
|
});
|
@@ -14814,11 +16021,11 @@ SyntheticEvent.augmentClass = function (Class, Interface) {
|
|
14814
16021
|
E.prototype = Super.prototype;
|
14815
16022
|
var prototype = new E();
|
14816
16023
|
|
14817
|
-
|
16024
|
+
assign(prototype, Class.prototype);
|
14818
16025
|
Class.prototype = prototype;
|
14819
16026
|
Class.prototype.constructor = Class;
|
14820
16027
|
|
14821
|
-
Class.Interface =
|
16028
|
+
Class.Interface = assign({}, Super.Interface, Interface);
|
14822
16029
|
Class.augmentClass = Super.augmentClass;
|
14823
16030
|
addEventPoolingTo(Class);
|
14824
16031
|
};
|
@@ -14838,7 +16045,7 @@ SyntheticEvent.augmentClass = function (Class, Interface) {
|
|
14838
16045
|
return new Proxy(constructor.apply(that, args), {
|
14839
16046
|
set: function (target, prop, value) {
|
14840
16047
|
if (prop !== 'isPersistent' && !target.constructor.Interface.hasOwnProperty(prop) && shouldBeReleasedProperties.indexOf(prop) === -1) {
|
14841
|
-
warning$
|
16048
|
+
warning$32(didWarnForAddedNewProperty || target.isPersistent(), "This synthetic event is reused for performance reasons. If you're " + "seeing this, you're adding a new property in the synthetic event object. " + 'The property is never released. See ' + 'https://fb.me/react-event-pooling for more information.');
|
14842
16049
|
didWarnForAddedNewProperty = true;
|
14843
16050
|
}
|
14844
16051
|
target[prop] = value;
|
@@ -14885,7 +16092,7 @@ function getPooledWarningPropertyDefinition(propName, getVal) {
|
|
14885
16092
|
|
14886
16093
|
function warn(action, result) {
|
14887
16094
|
var warningCondition = false;
|
14888
|
-
warning$
|
16095
|
+
warning$32(warningCondition, "This synthetic event is reused for performance reasons. If you're seeing this, " + "you're %s `%s` on a released/nullified synthetic event. %s. " + 'If you must keep the original synthetic event around, use event.persist(). ' + 'See https://fb.me/react-event-pooling for more information.', action, propName, result);
|
14889
16096
|
}
|
14890
16097
|
}
|
14891
16098
|
|
@@ -14901,7 +16108,7 @@ function getPooledEvent(dispatchConfig, targetInst, nativeEvent, nativeInst) {
|
|
14901
16108
|
|
14902
16109
|
function releasePooledEvent(event) {
|
14903
16110
|
var EventConstructor = this;
|
14904
|
-
!(event instanceof EventConstructor) ?
|
16111
|
+
!(event instanceof EventConstructor) ? invariant_1(false, 'Trying to release an event instance into a pool of a different type.') : void 0;
|
14905
16112
|
event.destructor();
|
14906
16113
|
if (EventConstructor.eventPool.length < EVENT_POOL_SIZE) {
|
14907
16114
|
EventConstructor.eventPool.push(event);
|
@@ -14962,22 +16169,22 @@ var SyntheticInputEvent_1 = SyntheticInputEvent;
|
|
14962
16169
|
var END_KEYCODES = [9, 13, 27, 32]; // Tab, Return, Esc, Space
|
14963
16170
|
var START_KEYCODE = 229;
|
14964
16171
|
|
14965
|
-
var canUseCompositionEvent =
|
16172
|
+
var canUseCompositionEvent = ExecutionEnvironment_1.canUseDOM && 'CompositionEvent' in window;
|
14966
16173
|
|
14967
16174
|
var documentMode = null;
|
14968
|
-
if (
|
16175
|
+
if (ExecutionEnvironment_1.canUseDOM && 'documentMode' in document) {
|
14969
16176
|
documentMode = document.documentMode;
|
14970
16177
|
}
|
14971
16178
|
|
14972
16179
|
// Webkit offers a very useful `textInput` event that can be used to
|
14973
16180
|
// directly represent `beforeInput`. The IE `textinput` event is not as
|
14974
16181
|
// useful, so we don't use it.
|
14975
|
-
var canUseTextInputEvent =
|
16182
|
+
var canUseTextInputEvent = ExecutionEnvironment_1.canUseDOM && 'TextEvent' in window && !documentMode && !isPresto();
|
14976
16183
|
|
14977
16184
|
// In IE9+, we have access to composition events, but the data supplied
|
14978
16185
|
// by the native compositionend event may be incorrect. Japanese ideographic
|
14979
16186
|
// spaces, for instance (\u3000) are not recorded correctly.
|
14980
|
-
var useFallbackCompositionData =
|
16187
|
+
var useFallbackCompositionData = ExecutionEnvironment_1.canUseDOM && (!canUseCompositionEvent || documentMode && documentMode > 8 && documentMode <= 11);
|
14981
16188
|
|
14982
16189
|
/**
|
14983
16190
|
* Opera <= 12 includes TextEvent in window, but does not fire
|
@@ -15454,7 +16661,7 @@ function getTargetInstForChangeEvent(topLevelType, targetInst) {
|
|
15454
16661
|
* SECTION: handle `input` event
|
15455
16662
|
*/
|
15456
16663
|
var isInputEventSupported = false;
|
15457
|
-
if (
|
16664
|
+
if (ExecutionEnvironment_1.canUseDOM) {
|
15458
16665
|
// IE9 claims to support the input event but fails to trigger it when
|
15459
16666
|
// deleting text, so we ignore its input events.
|
15460
16667
|
isInputEventSupported = isEventSupported_1('input') && (!document.documentMode || document.documentMode > 9);
|
@@ -15860,7 +17067,7 @@ var DOCUMENT_NODE$2 = HTMLNodeType_1.DOCUMENT_NODE;
|
|
15860
17067
|
|
15861
17068
|
|
15862
17069
|
|
15863
|
-
var skipSelectionChangeEvent =
|
17070
|
+
var skipSelectionChangeEvent = ExecutionEnvironment_1.canUseDOM && 'documentMode' in document && document.documentMode <= 11;
|
15864
17071
|
|
15865
17072
|
var eventTypes$3 = {
|
15866
17073
|
select: {
|
@@ -15918,13 +17125,13 @@ function constructSelectEvent(nativeEvent, nativeEventTarget) {
|
|
15918
17125
|
// selection (this matches native `select` event behavior). In HTML5, select
|
15919
17126
|
// fires only on input and textarea thus if there's no focused element we
|
15920
17127
|
// won't dispatch.
|
15921
|
-
if (mouseDown || activeElement$1 == null || activeElement$1 !==
|
17128
|
+
if (mouseDown || activeElement$1 == null || activeElement$1 !== getActiveElement_1()) {
|
15922
17129
|
return null;
|
15923
17130
|
}
|
15924
17131
|
|
15925
17132
|
// Only fire when selection has actually changed.
|
15926
17133
|
var currentSelection = getSelection(activeElement$1);
|
15927
|
-
if (!lastSelection || !
|
17134
|
+
if (!lastSelection || !shallowEqual_1(lastSelection, currentSelection)) {
|
15928
17135
|
lastSelection = currentSelection;
|
15929
17136
|
|
15930
17137
|
var syntheticEvent = SyntheticEvent_1.getPooled(eventTypes$3.select, activeElementInst$1, nativeEvent, nativeEventTarget);
|
@@ -16559,7 +17766,7 @@ var SimpleEventPlugin = {
|
|
16559
17766
|
EventConstructor = SyntheticClipboardEvent_1;
|
16560
17767
|
break;
|
16561
17768
|
}
|
16562
|
-
!EventConstructor ?
|
17769
|
+
!EventConstructor ? invariant_1(false, 'SimpleEventPlugin: Unhandled event type, `%s`.', topLevelType) : void 0;
|
16563
17770
|
var event = EventConstructor.getPooled(dispatchConfig, targetInst, nativeEvent, nativeEventTarget);
|
16564
17771
|
EventPropagators_1.accumulateTwoPhaseDispatches(event);
|
16565
17772
|
return event;
|
@@ -16788,7 +17995,7 @@ var updateFiberProps = ReactDOMComponentTree_1.updateFiberProps;
|
|
16788
17995
|
|
16789
17996
|
{
|
16790
17997
|
var lowPriorityWarning = lowPriorityWarning_1;
|
16791
|
-
var warning =
|
17998
|
+
var warning = warning_1;
|
16792
17999
|
var validateDOMNesting = validateDOMNesting_1;
|
16793
18000
|
var updatedAncestorInfo = validateDOMNesting.updatedAncestorInfo;
|
16794
18001
|
|
@@ -17056,7 +18263,7 @@ ReactGenericBatching_1.injection.injectFiberBatchedUpdates(DOMRenderer.batchedUp
|
|
17056
18263
|
var warnedAboutHydrateAPI = false;
|
17057
18264
|
|
17058
18265
|
function renderSubtreeIntoContainer(parentComponent, children, container, forceHydrate, callback) {
|
17059
|
-
!isValidContainer(container) ?
|
18266
|
+
!isValidContainer(container) ? invariant_1(false, 'Target container is not a DOM element.') : void 0;
|
17060
18267
|
|
17061
18268
|
{
|
17062
18269
|
if (container._reactRootContainer && container.nodeType !== COMMENT_NODE) {
|
@@ -17113,7 +18320,7 @@ function renderSubtreeIntoContainer(parentComponent, children, container, forceH
|
|
17113
18320
|
function createPortal(children, container) {
|
17114
18321
|
var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
17115
18322
|
|
17116
|
-
!isValidContainer(container) ?
|
18323
|
+
!isValidContainer(container) ? invariant_1(false, 'Target container is not a DOM element.') : void 0;
|
17117
18324
|
// TODO: pass ReactDOM portal implementation as third argument
|
17118
18325
|
return ReactPortal.createPortal(children, container, null, key);
|
17119
18326
|
}
|
@@ -17129,11 +18336,11 @@ var ReactDOMFiber = {
|
|
17129
18336
|
return renderSubtreeIntoContainer(null, element, container, false, callback);
|
17130
18337
|
},
|
17131
18338
|
unstable_renderSubtreeIntoContainer: function (parentComponent, element, containerNode, callback) {
|
17132
|
-
!(parentComponent != null && ReactInstanceMap_1.has(parentComponent)) ?
|
18339
|
+
!(parentComponent != null && ReactInstanceMap_1.has(parentComponent)) ? invariant_1(false, 'parentComponent must be a valid React Component') : void 0;
|
17133
18340
|
return renderSubtreeIntoContainer(parentComponent, element, containerNode, false, callback);
|
17134
18341
|
},
|
17135
18342
|
unmountComponentAtNode: function (container) {
|
17136
|
-
!isValidContainer(container) ?
|
18343
|
+
!isValidContainer(container) ? invariant_1(false, 'unmountComponentAtNode(...): Target container is not a DOM element.') : void 0;
|
17137
18344
|
|
17138
18345
|
if (container._reactRootContainer) {
|
17139
18346
|
{
|
@@ -17201,7 +18408,7 @@ var foundDevTools = injectInternals({
|
|
17201
18408
|
});
|
17202
18409
|
|
17203
18410
|
{
|
17204
|
-
if (!foundDevTools &&
|
18411
|
+
if (!foundDevTools && ExecutionEnvironment_1.canUseDOM && window.top === window.self) {
|
17205
18412
|
// If we're in Chrome or Firefox, provide a download link if not installed.
|
17206
18413
|
if (navigator.userAgent.indexOf('Chrome') > -1 && navigator.userAgent.indexOf('Edge') === -1 || navigator.userAgent.indexOf('Firefox') > -1) {
|
17207
18414
|
var protocol = window.location.protocol;
|
@@ -17215,7 +18422,6 @@ var foundDevTools = injectInternals({
|
|
17215
18422
|
|
17216
18423
|
var ReactDOMFiberEntry = ReactDOMFiber;
|
17217
18424
|
|
17218
|
-
|
18425
|
+
return ReactDOMFiberEntry;
|
17219
18426
|
|
17220
|
-
})
|
17221
|
-
}
|
18427
|
+
})));
|