graphiql-rails 1.4.6 → 1.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
+
})));
|