react-rails 1.8.1 → 1.8.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -45,7 +45,7 @@
45
45
  /***/ function(module, exports, __webpack_require__) {
46
46
 
47
47
  var React = __webpack_require__(1);
48
- var ReactDOM = __webpack_require__(33);
48
+ var ReactDOM = __webpack_require__(35);
49
49
 
50
50
  window.React = React;
51
51
  window.ReactDOM = ReactDOM;
@@ -81,13 +81,14 @@
81
81
 
82
82
  var ReactChildren = __webpack_require__(5);
83
83
  var ReactComponent = __webpack_require__(17);
84
- var ReactClass = __webpack_require__(20);
85
- var ReactDOMFactories = __webpack_require__(25);
84
+ var ReactPureComponent = __webpack_require__(20);
85
+ var ReactClass = __webpack_require__(21);
86
+ var ReactDOMFactories = __webpack_require__(26);
86
87
  var ReactElement = __webpack_require__(9);
87
- var ReactPropTypes = __webpack_require__(30);
88
- var ReactVersion = __webpack_require__(31);
88
+ var ReactPropTypes = __webpack_require__(32);
89
+ var ReactVersion = __webpack_require__(33);
89
90
 
90
- var onlyChild = __webpack_require__(32);
91
+ var onlyChild = __webpack_require__(34);
91
92
  var warning = __webpack_require__(11);
92
93
 
93
94
  var createElement = ReactElement.createElement;
@@ -95,7 +96,7 @@
95
96
  var cloneElement = ReactElement.cloneElement;
96
97
 
97
98
  if (process.env.NODE_ENV !== 'production') {
98
- var ReactElementValidator = __webpack_require__(27);
99
+ var ReactElementValidator = __webpack_require__(28);
99
100
  createElement = ReactElementValidator.createElement;
100
101
  createFactory = ReactElementValidator.createFactory;
101
102
  cloneElement = ReactElementValidator.cloneElement;
@@ -125,6 +126,7 @@
125
126
  },
126
127
 
127
128
  Component: ReactComponent,
129
+ PureComponent: ReactPureComponent,
128
130
 
129
131
  createElement: createElement,
130
132
  cloneElement: cloneElement,
@@ -158,7 +160,6 @@
158
160
  /***/ function(module, exports) {
159
161
 
160
162
  // shim for using process in browser
161
-
162
163
  var process = module.exports = {};
163
164
 
164
165
  // cached from whatever global is present so that test runners that stub it
@@ -170,21 +171,63 @@
170
171
  var cachedClearTimeout;
171
172
 
172
173
  (function () {
173
- try {
174
- cachedSetTimeout = setTimeout;
175
- } catch (e) {
176
- cachedSetTimeout = function () {
177
- throw new Error('setTimeout is not defined');
174
+ try {
175
+ cachedSetTimeout = setTimeout;
176
+ } catch (e) {
177
+ cachedSetTimeout = function () {
178
+ throw new Error('setTimeout is not defined');
179
+ }
178
180
  }
179
- }
180
- try {
181
- cachedClearTimeout = clearTimeout;
182
- } catch (e) {
183
- cachedClearTimeout = function () {
184
- throw new Error('clearTimeout is not defined');
181
+ try {
182
+ cachedClearTimeout = clearTimeout;
183
+ } catch (e) {
184
+ cachedClearTimeout = function () {
185
+ throw new Error('clearTimeout is not defined');
186
+ }
185
187
  }
186
- }
187
188
  } ())
189
+ function runTimeout(fun) {
190
+ if (cachedSetTimeout === setTimeout) {
191
+ //normal enviroments in sane situations
192
+ return setTimeout(fun, 0);
193
+ }
194
+ try {
195
+ // when when somebody has screwed with setTimeout but no I.E. maddness
196
+ return cachedSetTimeout(fun, 0);
197
+ } catch(e){
198
+ try {
199
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
200
+ return cachedSetTimeout.call(null, fun, 0);
201
+ } catch(e){
202
+ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
203
+ return cachedSetTimeout.call(this, fun, 0);
204
+ }
205
+ }
206
+
207
+
208
+ }
209
+ function runClearTimeout(marker) {
210
+ if (cachedClearTimeout === clearTimeout) {
211
+ //normal enviroments in sane situations
212
+ return clearTimeout(marker);
213
+ }
214
+ try {
215
+ // when when somebody has screwed with setTimeout but no I.E. maddness
216
+ return cachedClearTimeout(marker);
217
+ } catch (e){
218
+ try {
219
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
220
+ return cachedClearTimeout.call(null, marker);
221
+ } catch (e){
222
+ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
223
+ // Some versions of I.E. have different rules for clearTimeout vs setTimeout
224
+ return cachedClearTimeout.call(this, marker);
225
+ }
226
+ }
227
+
228
+
229
+
230
+ }
188
231
  var queue = [];
189
232
  var draining = false;
190
233
  var currentQueue;
@@ -209,7 +252,7 @@
209
252
  if (draining) {
210
253
  return;
211
254
  }
212
- var timeout = cachedSetTimeout.call(null, cleanUpNextTick);
255
+ var timeout = runTimeout(cleanUpNextTick);
213
256
  draining = true;
214
257
 
215
258
  var len = queue.length;
@@ -226,7 +269,7 @@
226
269
  }
227
270
  currentQueue = null;
228
271
  draining = false;
229
- cachedClearTimeout.call(null, timeout);
272
+ runClearTimeout(timeout);
230
273
  }
231
274
 
232
275
  process.nextTick = function (fun) {
@@ -238,7 +281,7 @@
238
281
  }
239
282
  queue.push(new Item(fun, args));
240
283
  if (queue.length === 1 && !draining) {
241
- cachedSetTimeout.call(null, drainQueue, 0);
284
+ runTimeout(drainQueue);
242
285
  }
243
286
  };
244
287
 
@@ -892,6 +935,7 @@
892
935
  // This can be replaced with a WeakMap once they are implemented in
893
936
  // commonly used development environments.
894
937
  element._store = {};
938
+ var shadowChildren = Array.isArray(props.children) ? props.children.slice(0) : props.children;
895
939
 
896
940
  // To make comparing ReactElements easier for testing purposes, we make
897
941
  // the validation flag non-enumerable (where possible, which should
@@ -911,6 +955,12 @@
911
955
  writable: false,
912
956
  value: self
913
957
  });
958
+ Object.defineProperty(element, '_shadowChildren', {
959
+ configurable: false,
960
+ enumerable: false,
961
+ writable: false,
962
+ value: shadowChildren
963
+ });
914
964
  // Two elements created in two different places should be considered
915
965
  // equal for testing purposes and therefore we hide it from enumeration.
916
966
  Object.defineProperty(element, '_source', {
@@ -922,6 +972,7 @@
922
972
  } else {
923
973
  element._store.validated = false;
924
974
  element._self = self;
975
+ element._shadowChildren = shadowChildren;
925
976
  element._source = source;
926
977
  }
927
978
  if (Object.freeze) {
@@ -1422,7 +1473,14 @@
1422
1473
  }
1423
1474
  } else {
1424
1475
  if (process.env.NODE_ENV !== 'production') {
1425
- process.env.NODE_ENV !== 'production' ? warning(didWarnAboutMaps, 'Using Maps as children is not yet fully supported. It is an ' + 'experimental feature that might be removed. Convert it to a ' + 'sequence / iterable of keyed ReactElements instead.') : void 0;
1476
+ var mapsAsChildrenAddendum = '';
1477
+ if (ReactCurrentOwner.current) {
1478
+ var mapsAsChildrenOwnerName = ReactCurrentOwner.current.getName();
1479
+ if (mapsAsChildrenOwnerName) {
1480
+ mapsAsChildrenAddendum = ' Check the render method of `' + mapsAsChildrenOwnerName + '`.';
1481
+ }
1482
+ }
1483
+ process.env.NODE_ENV !== 'production' ? warning(didWarnAboutMaps, 'Using Maps as children is not yet fully supported. It is an ' + 'experimental feature that might be removed. Convert it to a ' + 'sequence / iterable of keyed ReactElements instead.%s', mapsAsChildrenAddendum) : void 0;
1426
1484
  didWarnAboutMaps = true;
1427
1485
  }
1428
1486
  // Iterator will provide entry [k,v] tuples rather than values.
@@ -1847,6 +1905,53 @@
1847
1905
 
1848
1906
  /***/ },
1849
1907
  /* 20 */
1908
+ /***/ function(module, exports, __webpack_require__) {
1909
+
1910
+ /**
1911
+ * Copyright 2013-present, Facebook, Inc.
1912
+ * All rights reserved.
1913
+ *
1914
+ * This source code is licensed under the BSD-style license found in the
1915
+ * LICENSE file in the root directory of this source tree. An additional grant
1916
+ * of patent rights can be found in the PATENTS file in the same directory.
1917
+ *
1918
+ * @providesModule ReactPureComponent
1919
+ */
1920
+
1921
+ 'use strict';
1922
+
1923
+ var _assign = __webpack_require__(4);
1924
+
1925
+ var ReactComponent = __webpack_require__(17);
1926
+ var ReactNoopUpdateQueue = __webpack_require__(18);
1927
+
1928
+ var emptyObject = __webpack_require__(19);
1929
+
1930
+ /**
1931
+ * Base class helpers for the updating state of a component.
1932
+ */
1933
+ function ReactPureComponent(props, context, updater) {
1934
+ // Duplicated from ReactComponent.
1935
+ this.props = props;
1936
+ this.context = context;
1937
+ this.refs = emptyObject;
1938
+ // We initialize the default updater but the real one gets injected by the
1939
+ // renderer.
1940
+ this.updater = updater || ReactNoopUpdateQueue;
1941
+ }
1942
+
1943
+ function ComponentDummy() {}
1944
+ ComponentDummy.prototype = ReactComponent.prototype;
1945
+ ReactPureComponent.prototype = new ComponentDummy();
1946
+ ReactPureComponent.prototype.constructor = ReactPureComponent;
1947
+ // Avoid an extra prototype jump for these methods.
1948
+ _assign(ReactPureComponent.prototype, ReactComponent.prototype);
1949
+ ReactPureComponent.prototype.isPureReactComponent = true;
1950
+
1951
+ module.exports = ReactPureComponent;
1952
+
1953
+ /***/ },
1954
+ /* 21 */
1850
1955
  /***/ function(module, exports, __webpack_require__) {
1851
1956
 
1852
1957
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -1867,14 +1972,14 @@
1867
1972
 
1868
1973
  var ReactComponent = __webpack_require__(17);
1869
1974
  var ReactElement = __webpack_require__(9);
1870
- var ReactPropTypeLocations = __webpack_require__(21);
1871
- var ReactPropTypeLocationNames = __webpack_require__(23);
1975
+ var ReactPropTypeLocations = __webpack_require__(22);
1976
+ var ReactPropTypeLocationNames = __webpack_require__(24);
1872
1977
  var ReactNoopUpdateQueue = __webpack_require__(18);
1873
1978
 
1874
1979
  var emptyObject = __webpack_require__(19);
1875
1980
  var invariant = __webpack_require__(8);
1876
- var keyMirror = __webpack_require__(22);
1877
- var keyOf = __webpack_require__(24);
1981
+ var keyMirror = __webpack_require__(23);
1982
+ var keyOf = __webpack_require__(25);
1878
1983
  var warning = __webpack_require__(11);
1879
1984
 
1880
1985
  var MIXINS_KEY = keyOf({ mixins: null });
@@ -2236,6 +2341,13 @@
2236
2341
  */
2237
2342
  function mixSpecIntoComponent(Constructor, spec) {
2238
2343
  if (!spec) {
2344
+ if (process.env.NODE_ENV !== 'production') {
2345
+ var typeofSpec = typeof spec;
2346
+ var isMixinValid = typeofSpec === 'object' && spec !== null;
2347
+
2348
+ process.env.NODE_ENV !== 'production' ? warning(isMixinValid, '%s: You\'re attempting to include a mixin that is either null ' + 'or not an object. Check the mixins included by the component, ' + 'as well as any mixins they include themselves. ' + 'Expected object but got %s.', Constructor.displayName || 'ReactClass', spec === null ? null : typeofSpec) : void 0;
2349
+ }
2350
+
2239
2351
  return;
2240
2352
  }
2241
2353
 
@@ -2577,7 +2689,7 @@
2577
2689
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
2578
2690
 
2579
2691
  /***/ },
2580
- /* 21 */
2692
+ /* 22 */
2581
2693
  /***/ function(module, exports, __webpack_require__) {
2582
2694
 
2583
2695
  /**
@@ -2593,7 +2705,7 @@
2593
2705
 
2594
2706
  'use strict';
2595
2707
 
2596
- var keyMirror = __webpack_require__(22);
2708
+ var keyMirror = __webpack_require__(23);
2597
2709
 
2598
2710
  var ReactPropTypeLocations = keyMirror({
2599
2711
  prop: null,
@@ -2604,7 +2716,7 @@
2604
2716
  module.exports = ReactPropTypeLocations;
2605
2717
 
2606
2718
  /***/ },
2607
- /* 22 */
2719
+ /* 23 */
2608
2720
  /***/ function(module, exports, __webpack_require__) {
2609
2721
 
2610
2722
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -2657,7 +2769,7 @@
2657
2769
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
2658
2770
 
2659
2771
  /***/ },
2660
- /* 23 */
2772
+ /* 24 */
2661
2773
  /***/ function(module, exports, __webpack_require__) {
2662
2774
 
2663
2775
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -2687,7 +2799,7 @@
2687
2799
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
2688
2800
 
2689
2801
  /***/ },
2690
- /* 24 */
2802
+ /* 25 */
2691
2803
  /***/ function(module, exports) {
2692
2804
 
2693
2805
  "use strict";
@@ -2726,7 +2838,7 @@
2726
2838
  module.exports = keyOf;
2727
2839
 
2728
2840
  /***/ },
2729
- /* 25 */
2841
+ /* 26 */
2730
2842
  /***/ function(module, exports, __webpack_require__) {
2731
2843
 
2732
2844
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -2744,7 +2856,7 @@
2744
2856
 
2745
2857
  var ReactElement = __webpack_require__(9);
2746
2858
 
2747
- var mapObject = __webpack_require__(26);
2859
+ var mapObject = __webpack_require__(27);
2748
2860
 
2749
2861
  /**
2750
2862
  * Create a factory that creates HTML tag elements.
@@ -2754,7 +2866,7 @@
2754
2866
  */
2755
2867
  function createDOMFactory(tag) {
2756
2868
  if (process.env.NODE_ENV !== 'production') {
2757
- var ReactElementValidator = __webpack_require__(27);
2869
+ var ReactElementValidator = __webpack_require__(28);
2758
2870
  return ReactElementValidator.createFactory(tag);
2759
2871
  }
2760
2872
  return ReactElement.createFactory(tag);
@@ -2908,7 +3020,7 @@
2908
3020
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
2909
3021
 
2910
3022
  /***/ },
2911
- /* 26 */
3023
+ /* 27 */
2912
3024
  /***/ function(module, exports) {
2913
3025
 
2914
3026
  /**
@@ -2963,7 +3075,7 @@
2963
3075
  module.exports = mapObject;
2964
3076
 
2965
3077
  /***/ },
2966
- /* 27 */
3078
+ /* 28 */
2967
3079
  /***/ function(module, exports, __webpack_require__) {
2968
3080
 
2969
3081
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -2987,11 +3099,11 @@
2987
3099
  'use strict';
2988
3100
 
2989
3101
  var ReactCurrentOwner = __webpack_require__(10);
2990
- var ReactComponentTreeDevtool = __webpack_require__(28);
3102
+ var ReactComponentTreeDevtool = __webpack_require__(29);
2991
3103
  var ReactElement = __webpack_require__(9);
2992
- var ReactPropTypeLocations = __webpack_require__(21);
3104
+ var ReactPropTypeLocations = __webpack_require__(22);
2993
3105
 
2994
- var checkReactTypeSpec = __webpack_require__(29);
3106
+ var checkReactTypeSpec = __webpack_require__(30);
2995
3107
 
2996
3108
  var canDefineProperty = __webpack_require__(13);
2997
3109
  var getIteratorFn = __webpack_require__(15);
@@ -3195,7 +3307,7 @@
3195
3307
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
3196
3308
 
3197
3309
  /***/ },
3198
- /* 28 */
3310
+ /* 29 */
3199
3311
  /***/ function(module, exports, __webpack_require__) {
3200
3312
 
3201
3313
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -3419,7 +3531,7 @@
3419
3531
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
3420
3532
 
3421
3533
  /***/ },
3422
- /* 29 */
3534
+ /* 30 */
3423
3535
  /***/ function(module, exports, __webpack_require__) {
3424
3536
 
3425
3537
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -3437,11 +3549,23 @@
3437
3549
 
3438
3550
  var _prodInvariant = __webpack_require__(7);
3439
3551
 
3440
- var ReactPropTypeLocationNames = __webpack_require__(23);
3552
+ var ReactPropTypeLocationNames = __webpack_require__(24);
3553
+ var ReactPropTypesSecret = __webpack_require__(31);
3441
3554
 
3442
3555
  var invariant = __webpack_require__(8);
3443
3556
  var warning = __webpack_require__(11);
3444
3557
 
3558
+ var ReactComponentTreeDevtool;
3559
+
3560
+ if (typeof process !== 'undefined' && process.env && process.env.NODE_ENV === 'test') {
3561
+ // Temporary hack.
3562
+ // Inline requires don't work well with Jest:
3563
+ // https://github.com/facebook/react/issues/7240
3564
+ // Remove the inline requires when we don't need them anymore:
3565
+ // https://github.com/facebook/react/pull/7178
3566
+ ReactComponentTreeDevtool = __webpack_require__(29);
3567
+ }
3568
+
3445
3569
  var loggedTypeFailures = {};
3446
3570
 
3447
3571
  /**
@@ -3467,7 +3591,7 @@
3467
3591
  // This is intentionally an invariant that gets caught. It's the same
3468
3592
  // behavior as without this statement except with a better message.
3469
3593
  !(typeof typeSpecs[typeSpecName] === 'function') ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.', componentName || 'React class', ReactPropTypeLocationNames[location], typeSpecName) : _prodInvariant('84', componentName || 'React class', ReactPropTypeLocationNames[location], typeSpecName) : void 0;
3470
- error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location);
3594
+ error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
3471
3595
  } catch (ex) {
3472
3596
  error = ex;
3473
3597
  }
@@ -3480,7 +3604,9 @@
3480
3604
  var componentStackInfo = '';
3481
3605
 
3482
3606
  if (process.env.NODE_ENV !== 'production') {
3483
- var ReactComponentTreeDevtool = __webpack_require__(28);
3607
+ if (!ReactComponentTreeDevtool) {
3608
+ ReactComponentTreeDevtool = __webpack_require__(29);
3609
+ }
3484
3610
  if (debugID !== null) {
3485
3611
  componentStackInfo = ReactComponentTreeDevtool.getStackAddendumByID(debugID);
3486
3612
  } else if (element !== null) {
@@ -3498,10 +3624,31 @@
3498
3624
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
3499
3625
 
3500
3626
  /***/ },
3501
- /* 30 */
3502
- /***/ function(module, exports, __webpack_require__) {
3627
+ /* 31 */
3628
+ /***/ function(module, exports) {
3503
3629
 
3504
3630
  /**
3631
+ * Copyright 2013-present, Facebook, Inc.
3632
+ * All rights reserved.
3633
+ *
3634
+ * This source code is licensed under the BSD-style license found in the
3635
+ * LICENSE file in the root directory of this source tree. An additional grant
3636
+ * of patent rights can be found in the PATENTS file in the same directory.
3637
+ *
3638
+ * @providesModule ReactPropTypesSecret
3639
+ */
3640
+
3641
+ 'use strict';
3642
+
3643
+ var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
3644
+
3645
+ module.exports = ReactPropTypesSecret;
3646
+
3647
+ /***/ },
3648
+ /* 32 */
3649
+ /***/ function(module, exports, __webpack_require__) {
3650
+
3651
+ /* WEBPACK VAR INJECTION */(function(process) {/**
3505
3652
  * Copyright 2013-present, Facebook, Inc.
3506
3653
  * All rights reserved.
3507
3654
  *
@@ -3515,10 +3662,12 @@
3515
3662
  'use strict';
3516
3663
 
3517
3664
  var ReactElement = __webpack_require__(9);
3518
- var ReactPropTypeLocationNames = __webpack_require__(23);
3665
+ var ReactPropTypeLocationNames = __webpack_require__(24);
3666
+ var ReactPropTypesSecret = __webpack_require__(31);
3519
3667
 
3520
3668
  var emptyFunction = __webpack_require__(12);
3521
3669
  var getIteratorFn = __webpack_require__(15);
3670
+ var warning = __webpack_require__(11);
3522
3671
 
3523
3672
  /**
3524
3673
  * Collection of methods that allow declaration and validation of props that are
@@ -3608,9 +3757,21 @@
3608
3757
  /*eslint-enable no-self-compare*/
3609
3758
 
3610
3759
  function createChainableTypeChecker(validate) {
3611
- function checkType(isRequired, props, propName, componentName, location, propFullName) {
3760
+ if (process.env.NODE_ENV !== 'production') {
3761
+ var manualPropTypeCallCache = {};
3762
+ }
3763
+ function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
3612
3764
  componentName = componentName || ANONYMOUS;
3613
3765
  propFullName = propFullName || propName;
3766
+ if (process.env.NODE_ENV !== 'production') {
3767
+ if (secret !== ReactPropTypesSecret && typeof console !== 'undefined') {
3768
+ var cacheKey = componentName + ':' + propName;
3769
+ if (!manualPropTypeCallCache[cacheKey]) {
3770
+ process.env.NODE_ENV !== 'production' ? warning(false, 'You are manually calling a React.PropTypes validation ' + 'function for the `%s` prop on `%s`. This is deprecated ' + 'and will not work in the next major version. You may be ' + 'seeing this warning due to a third-party PropTypes library. ' + 'See https://fb.me/react-warning-dont-call-proptypes for details.', propFullName, componentName) : void 0;
3771
+ manualPropTypeCallCache[cacheKey] = true;
3772
+ }
3773
+ }
3774
+ }
3614
3775
  if (props[propName] == null) {
3615
3776
  var locationName = ReactPropTypeLocationNames[location];
3616
3777
  if (isRequired) {
@@ -3629,7 +3790,7 @@
3629
3790
  }
3630
3791
 
3631
3792
  function createPrimitiveTypeChecker(expectedType) {
3632
- function validate(props, propName, componentName, location, propFullName) {
3793
+ function validate(props, propName, componentName, location, propFullName, secret) {
3633
3794
  var propValue = props[propName];
3634
3795
  var propType = getPropType(propValue);
3635
3796
  if (propType !== expectedType) {
@@ -3662,7 +3823,7 @@
3662
3823
  return new Error('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
3663
3824
  }
3664
3825
  for (var i = 0; i < propValue.length; i++) {
3665
- var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']');
3826
+ var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
3666
3827
  if (error instanceof Error) {
3667
3828
  return error;
3668
3829
  }
@@ -3674,9 +3835,11 @@
3674
3835
 
3675
3836
  function createElementTypeChecker() {
3676
3837
  function validate(props, propName, componentName, location, propFullName) {
3677
- if (!ReactElement.isValidElement(props[propName])) {
3838
+ var propValue = props[propName];
3839
+ if (!ReactElement.isValidElement(propValue)) {
3678
3840
  var locationName = ReactPropTypeLocationNames[location];
3679
- return new Error('Invalid ' + locationName + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a single ReactElement.'));
3841
+ var propType = getPropType(propValue);
3842
+ return new Error('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
3680
3843
  }
3681
3844
  return null;
3682
3845
  }
@@ -3698,9 +3861,8 @@
3698
3861
 
3699
3862
  function createEnumTypeChecker(expectedValues) {
3700
3863
  if (!Array.isArray(expectedValues)) {
3701
- return createChainableTypeChecker(function () {
3702
- return new Error('Invalid argument supplied to oneOf, expected an instance of array.');
3703
- });
3864
+ process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;
3865
+ return emptyFunction.thatReturnsNull;
3704
3866
  }
3705
3867
 
3706
3868
  function validate(props, propName, componentName, location, propFullName) {
@@ -3731,7 +3893,7 @@
3731
3893
  }
3732
3894
  for (var key in propValue) {
3733
3895
  if (propValue.hasOwnProperty(key)) {
3734
- var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key);
3896
+ var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
3735
3897
  if (error instanceof Error) {
3736
3898
  return error;
3737
3899
  }
@@ -3744,15 +3906,14 @@
3744
3906
 
3745
3907
  function createUnionTypeChecker(arrayOfTypeCheckers) {
3746
3908
  if (!Array.isArray(arrayOfTypeCheckers)) {
3747
- return createChainableTypeChecker(function () {
3748
- return new Error('Invalid argument supplied to oneOfType, expected an instance of array.');
3749
- });
3909
+ process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;
3910
+ return emptyFunction.thatReturnsNull;
3750
3911
  }
3751
3912
 
3752
3913
  function validate(props, propName, componentName, location, propFullName) {
3753
3914
  for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
3754
3915
  var checker = arrayOfTypeCheckers[i];
3755
- if (checker(props, propName, componentName, location, propFullName) == null) {
3916
+ if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
3756
3917
  return null;
3757
3918
  }
3758
3919
  }
@@ -3787,7 +3948,7 @@
3787
3948
  if (!checker) {
3788
3949
  continue;
3789
3950
  }
3790
- var error = checker(propValue, key, componentName, location, propFullName + '.' + key);
3951
+ var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
3791
3952
  if (error) {
3792
3953
  return error;
3793
3954
  }
@@ -3904,9 +4065,10 @@
3904
4065
  }
3905
4066
 
3906
4067
  module.exports = ReactPropTypes;
4068
+ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
3907
4069
 
3908
4070
  /***/ },
3909
- /* 31 */
4071
+ /* 33 */
3910
4072
  /***/ function(module, exports) {
3911
4073
 
3912
4074
  /**
@@ -3922,10 +4084,10 @@
3922
4084
 
3923
4085
  'use strict';
3924
4086
 
3925
- module.exports = '15.2.1';
4087
+ module.exports = '15.3.0';
3926
4088
 
3927
4089
  /***/ },
3928
- /* 32 */
4090
+ /* 34 */
3929
4091
  /***/ function(module, exports, __webpack_require__) {
3930
4092
 
3931
4093
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -3969,16 +4131,16 @@
3969
4131
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
3970
4132
 
3971
4133
  /***/ },
3972
- /* 33 */
4134
+ /* 35 */
3973
4135
  /***/ function(module, exports, __webpack_require__) {
3974
4136
 
3975
4137
  'use strict';
3976
4138
 
3977
- module.exports = __webpack_require__(34);
4139
+ module.exports = __webpack_require__(36);
3978
4140
 
3979
4141
 
3980
4142
  /***/ },
3981
- /* 34 */
4143
+ /* 36 */
3982
4144
  /***/ function(module, exports, __webpack_require__) {
3983
4145
 
3984
4146
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -3996,21 +4158,21 @@
3996
4158
 
3997
4159
  'use strict';
3998
4160
 
3999
- var ReactDOMComponentTree = __webpack_require__(35);
4000
- var ReactDefaultInjection = __webpack_require__(38);
4001
- var ReactMount = __webpack_require__(164);
4002
- var ReactReconciler = __webpack_require__(58);
4003
- var ReactUpdates = __webpack_require__(55);
4004
- var ReactVersion = __webpack_require__(31);
4161
+ var ReactDOMComponentTree = __webpack_require__(37);
4162
+ var ReactDefaultInjection = __webpack_require__(40);
4163
+ var ReactMount = __webpack_require__(167);
4164
+ var ReactReconciler = __webpack_require__(60);
4165
+ var ReactUpdates = __webpack_require__(57);
4166
+ var ReactVersion = __webpack_require__(33);
4005
4167
 
4006
- var findDOMNode = __webpack_require__(169);
4007
- var getHostComponentFromComposite = __webpack_require__(170);
4008
- var renderSubtreeIntoContainer = __webpack_require__(171);
4168
+ var findDOMNode = __webpack_require__(172);
4169
+ var getHostComponentFromComposite = __webpack_require__(173);
4170
+ var renderSubtreeIntoContainer = __webpack_require__(174);
4009
4171
  var warning = __webpack_require__(11);
4010
4172
 
4011
4173
  ReactDefaultInjection.inject();
4012
4174
 
4013
- var React = {
4175
+ var ReactDOM = {
4014
4176
  findDOMNode: findDOMNode,
4015
4177
  render: ReactMount.render,
4016
4178
  unmountComponentAtNode: ReactMount.unmountComponentAtNode,
@@ -4046,7 +4208,7 @@
4046
4208
  }
4047
4209
 
4048
4210
  if (process.env.NODE_ENV !== 'production') {
4049
- var ExecutionEnvironment = __webpack_require__(48);
4211
+ var ExecutionEnvironment = __webpack_require__(50);
4050
4212
  if (ExecutionEnvironment.canUseDOM && window.top === window.self) {
4051
4213
 
4052
4214
  // First check if devtools is not installed
@@ -4081,11 +4243,11 @@
4081
4243
  }
4082
4244
  }
4083
4245
 
4084
- module.exports = React;
4246
+ module.exports = ReactDOM;
4085
4247
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
4086
4248
 
4087
4249
  /***/ },
4088
- /* 35 */
4250
+ /* 37 */
4089
4251
  /***/ function(module, exports, __webpack_require__) {
4090
4252
 
4091
4253
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -4103,8 +4265,8 @@
4103
4265
 
4104
4266
  var _prodInvariant = __webpack_require__(7);
4105
4267
 
4106
- var DOMProperty = __webpack_require__(36);
4107
- var ReactDOMComponentFlags = __webpack_require__(37);
4268
+ var DOMProperty = __webpack_require__(38);
4269
+ var ReactDOMComponentFlags = __webpack_require__(39);
4108
4270
 
4109
4271
  var invariant = __webpack_require__(8);
4110
4272
 
@@ -4279,7 +4441,7 @@
4279
4441
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
4280
4442
 
4281
4443
  /***/ },
4282
- /* 36 */
4444
+ /* 38 */
4283
4445
  /***/ function(module, exports, __webpack_require__) {
4284
4446
 
4285
4447
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -4491,7 +4653,7 @@
4491
4653
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
4492
4654
 
4493
4655
  /***/ },
4494
- /* 37 */
4656
+ /* 39 */
4495
4657
  /***/ function(module, exports) {
4496
4658
 
4497
4659
  /**
@@ -4514,7 +4676,7 @@
4514
4676
  module.exports = ReactDOMComponentFlags;
4515
4677
 
4516
4678
  /***/ },
4517
- /* 38 */
4679
+ /* 40 */
4518
4680
  /***/ function(module, exports, __webpack_require__) {
4519
4681
 
4520
4682
  /**
@@ -4530,24 +4692,24 @@
4530
4692
 
4531
4693
  'use strict';
4532
4694
 
4533
- var BeforeInputEventPlugin = __webpack_require__(39);
4534
- var ChangeEventPlugin = __webpack_require__(54);
4535
- var DefaultEventPluginOrder = __webpack_require__(71);
4536
- var EnterLeaveEventPlugin = __webpack_require__(72);
4537
- var HTMLDOMPropertyConfig = __webpack_require__(77);
4538
- var ReactComponentBrowserEnvironment = __webpack_require__(78);
4539
- var ReactDOMComponent = __webpack_require__(92);
4540
- var ReactDOMComponentTree = __webpack_require__(35);
4541
- var ReactDOMEmptyComponent = __webpack_require__(135);
4542
- var ReactDOMTreeTraversal = __webpack_require__(136);
4543
- var ReactDOMTextComponent = __webpack_require__(137);
4544
- var ReactDefaultBatchingStrategy = __webpack_require__(138);
4545
- var ReactEventListener = __webpack_require__(139);
4546
- var ReactInjection = __webpack_require__(142);
4547
- var ReactReconcileTransaction = __webpack_require__(143);
4548
- var SVGDOMPropertyConfig = __webpack_require__(151);
4549
- var SelectEventPlugin = __webpack_require__(152);
4550
- var SimpleEventPlugin = __webpack_require__(153);
4695
+ var BeforeInputEventPlugin = __webpack_require__(41);
4696
+ var ChangeEventPlugin = __webpack_require__(56);
4697
+ var DefaultEventPluginOrder = __webpack_require__(74);
4698
+ var EnterLeaveEventPlugin = __webpack_require__(75);
4699
+ var HTMLDOMPropertyConfig = __webpack_require__(80);
4700
+ var ReactComponentBrowserEnvironment = __webpack_require__(81);
4701
+ var ReactDOMComponent = __webpack_require__(95);
4702
+ var ReactDOMComponentTree = __webpack_require__(37);
4703
+ var ReactDOMEmptyComponent = __webpack_require__(138);
4704
+ var ReactDOMTreeTraversal = __webpack_require__(139);
4705
+ var ReactDOMTextComponent = __webpack_require__(140);
4706
+ var ReactDefaultBatchingStrategy = __webpack_require__(141);
4707
+ var ReactEventListener = __webpack_require__(142);
4708
+ var ReactInjection = __webpack_require__(145);
4709
+ var ReactReconcileTransaction = __webpack_require__(146);
4710
+ var SVGDOMPropertyConfig = __webpack_require__(154);
4711
+ var SelectEventPlugin = __webpack_require__(155);
4712
+ var SimpleEventPlugin = __webpack_require__(156);
4551
4713
 
4552
4714
  var alreadyInjected = false;
4553
4715
 
@@ -4603,7 +4765,7 @@
4603
4765
  };
4604
4766
 
4605
4767
  /***/ },
4606
- /* 39 */
4768
+ /* 41 */
4607
4769
  /***/ function(module, exports, __webpack_require__) {
4608
4770
 
4609
4771
  /**
@@ -4619,14 +4781,14 @@
4619
4781
 
4620
4782
  'use strict';
4621
4783
 
4622
- var EventConstants = __webpack_require__(40);
4623
- var EventPropagators = __webpack_require__(41);
4624
- var ExecutionEnvironment = __webpack_require__(48);
4625
- var FallbackCompositionState = __webpack_require__(49);
4626
- var SyntheticCompositionEvent = __webpack_require__(51);
4627
- var SyntheticInputEvent = __webpack_require__(53);
4784
+ var EventConstants = __webpack_require__(42);
4785
+ var EventPropagators = __webpack_require__(43);
4786
+ var ExecutionEnvironment = __webpack_require__(50);
4787
+ var FallbackCompositionState = __webpack_require__(51);
4788
+ var SyntheticCompositionEvent = __webpack_require__(53);
4789
+ var SyntheticInputEvent = __webpack_require__(55);
4628
4790
 
4629
- var keyOf = __webpack_require__(24);
4791
+ var keyOf = __webpack_require__(25);
4630
4792
 
4631
4793
  var END_KEYCODES = [9, 13, 27, 32]; // Tab, Return, Esc, Space
4632
4794
  var START_KEYCODE = 229;
@@ -4996,7 +5158,7 @@
4996
5158
  module.exports = BeforeInputEventPlugin;
4997
5159
 
4998
5160
  /***/ },
4999
- /* 40 */
5161
+ /* 42 */
5000
5162
  /***/ function(module, exports, __webpack_require__) {
5001
5163
 
5002
5164
  /**
@@ -5012,7 +5174,7 @@
5012
5174
 
5013
5175
  'use strict';
5014
5176
 
5015
- var keyMirror = __webpack_require__(22);
5177
+ var keyMirror = __webpack_require__(23);
5016
5178
 
5017
5179
  var PropagationPhases = keyMirror({ bubbled: null, captured: null });
5018
5180
 
@@ -5098,7 +5260,7 @@
5098
5260
  module.exports = EventConstants;
5099
5261
 
5100
5262
  /***/ },
5101
- /* 41 */
5263
+ /* 43 */
5102
5264
  /***/ function(module, exports, __webpack_require__) {
5103
5265
 
5104
5266
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -5114,12 +5276,12 @@
5114
5276
 
5115
5277
  'use strict';
5116
5278
 
5117
- var EventConstants = __webpack_require__(40);
5118
- var EventPluginHub = __webpack_require__(42);
5119
- var EventPluginUtils = __webpack_require__(44);
5279
+ var EventConstants = __webpack_require__(42);
5280
+ var EventPluginHub = __webpack_require__(44);
5281
+ var EventPluginUtils = __webpack_require__(46);
5120
5282
 
5121
- var accumulateInto = __webpack_require__(46);
5122
- var forEachAccumulated = __webpack_require__(47);
5283
+ var accumulateInto = __webpack_require__(48);
5284
+ var forEachAccumulated = __webpack_require__(49);
5123
5285
  var warning = __webpack_require__(11);
5124
5286
 
5125
5287
  var PropagationPhases = EventConstants.PropagationPhases;
@@ -5241,7 +5403,7 @@
5241
5403
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
5242
5404
 
5243
5405
  /***/ },
5244
- /* 42 */
5406
+ /* 44 */
5245
5407
  /***/ function(module, exports, __webpack_require__) {
5246
5408
 
5247
5409
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -5259,12 +5421,12 @@
5259
5421
 
5260
5422
  var _prodInvariant = __webpack_require__(7);
5261
5423
 
5262
- var EventPluginRegistry = __webpack_require__(43);
5263
- var EventPluginUtils = __webpack_require__(44);
5264
- var ReactErrorUtils = __webpack_require__(45);
5424
+ var EventPluginRegistry = __webpack_require__(45);
5425
+ var EventPluginUtils = __webpack_require__(46);
5426
+ var ReactErrorUtils = __webpack_require__(47);
5265
5427
 
5266
- var accumulateInto = __webpack_require__(46);
5267
- var forEachAccumulated = __webpack_require__(47);
5428
+ var accumulateInto = __webpack_require__(48);
5429
+ var forEachAccumulated = __webpack_require__(49);
5268
5430
  var invariant = __webpack_require__(8);
5269
5431
 
5270
5432
  /**
@@ -5301,6 +5463,10 @@
5301
5463
  return executeDispatchesAndRelease(e, false);
5302
5464
  };
5303
5465
 
5466
+ var getDictionaryKey = function (inst) {
5467
+ return '.' + inst._rootNodeID;
5468
+ };
5469
+
5304
5470
  /**
5305
5471
  * This is a unified interface for event plugins to be installed and configured.
5306
5472
  *
@@ -5344,7 +5510,7 @@
5344
5510
  },
5345
5511
 
5346
5512
  /**
5347
- * Stores `listener` at `listenerBank[registrationName][id]`. Is idempotent.
5513
+ * Stores `listener` at `listenerBank[registrationName][key]`. Is idempotent.
5348
5514
  *
5349
5515
  * @param {object} inst The instance, which is the source of events.
5350
5516
  * @param {string} registrationName Name of listener (e.g. `onClick`).
@@ -5353,8 +5519,9 @@
5353
5519
  putListener: function (inst, registrationName, listener) {
5354
5520
  !(typeof listener === 'function') ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Expected %s listener to be a function, instead got type %s', registrationName, typeof listener) : _prodInvariant('94', registrationName, typeof listener) : void 0;
5355
5521
 
5522
+ var key = getDictionaryKey(inst);
5356
5523
  var bankForRegistrationName = listenerBank[registrationName] || (listenerBank[registrationName] = {});
5357
- bankForRegistrationName[inst._rootNodeID] = listener;
5524
+ bankForRegistrationName[key] = listener;
5358
5525
 
5359
5526
  var PluginModule = EventPluginRegistry.registrationNameModules[registrationName];
5360
5527
  if (PluginModule && PluginModule.didPutListener) {
@@ -5369,7 +5536,8 @@
5369
5536
  */
5370
5537
  getListener: function (inst, registrationName) {
5371
5538
  var bankForRegistrationName = listenerBank[registrationName];
5372
- return bankForRegistrationName && bankForRegistrationName[inst._rootNodeID];
5539
+ var key = getDictionaryKey(inst);
5540
+ return bankForRegistrationName && bankForRegistrationName[key];
5373
5541
  },
5374
5542
 
5375
5543
  /**
@@ -5387,7 +5555,8 @@
5387
5555
  var bankForRegistrationName = listenerBank[registrationName];
5388
5556
  // TODO: This should never be null -- when is it?
5389
5557
  if (bankForRegistrationName) {
5390
- delete bankForRegistrationName[inst._rootNodeID];
5558
+ var key = getDictionaryKey(inst);
5559
+ delete bankForRegistrationName[key];
5391
5560
  }
5392
5561
  },
5393
5562
 
@@ -5397,12 +5566,13 @@
5397
5566
  * @param {object} inst The instance, which is the source of events.
5398
5567
  */
5399
5568
  deleteAllListeners: function (inst) {
5569
+ var key = getDictionaryKey(inst);
5400
5570
  for (var registrationName in listenerBank) {
5401
5571
  if (!listenerBank.hasOwnProperty(registrationName)) {
5402
5572
  continue;
5403
5573
  }
5404
5574
 
5405
- if (!listenerBank[registrationName][inst._rootNodeID]) {
5575
+ if (!listenerBank[registrationName][key]) {
5406
5576
  continue;
5407
5577
  }
5408
5578
 
@@ -5411,7 +5581,7 @@
5411
5581
  PluginModule.willDeleteListener(inst, registrationName);
5412
5582
  }
5413
5583
 
5414
- delete listenerBank[registrationName][inst._rootNodeID];
5584
+ delete listenerBank[registrationName][key];
5415
5585
  }
5416
5586
  },
5417
5587
 
@@ -5488,7 +5658,7 @@
5488
5658
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
5489
5659
 
5490
5660
  /***/ },
5491
- /* 43 */
5661
+ /* 45 */
5492
5662
  /***/ function(module, exports, __webpack_require__) {
5493
5663
 
5494
5664
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -5741,7 +5911,7 @@
5741
5911
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
5742
5912
 
5743
5913
  /***/ },
5744
- /* 44 */
5914
+ /* 46 */
5745
5915
  /***/ function(module, exports, __webpack_require__) {
5746
5916
 
5747
5917
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -5759,8 +5929,8 @@
5759
5929
 
5760
5930
  var _prodInvariant = __webpack_require__(7);
5761
5931
 
5762
- var EventConstants = __webpack_require__(40);
5763
- var ReactErrorUtils = __webpack_require__(45);
5932
+ var EventConstants = __webpack_require__(42);
5933
+ var ReactErrorUtils = __webpack_require__(47);
5764
5934
 
5765
5935
  var invariant = __webpack_require__(8);
5766
5936
  var warning = __webpack_require__(11);
@@ -5976,7 +6146,7 @@
5976
6146
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
5977
6147
 
5978
6148
  /***/ },
5979
- /* 45 */
6149
+ /* 47 */
5980
6150
  /***/ function(module, exports, __webpack_require__) {
5981
6151
 
5982
6152
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -6058,7 +6228,7 @@
6058
6228
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
6059
6229
 
6060
6230
  /***/ },
6061
- /* 46 */
6231
+ /* 48 */
6062
6232
  /***/ function(module, exports, __webpack_require__) {
6063
6233
 
6064
6234
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -6122,7 +6292,7 @@
6122
6292
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
6123
6293
 
6124
6294
  /***/ },
6125
- /* 47 */
6295
+ /* 49 */
6126
6296
  /***/ function(module, exports) {
6127
6297
 
6128
6298
  /**
@@ -6158,7 +6328,7 @@
6158
6328
  module.exports = forEachAccumulated;
6159
6329
 
6160
6330
  /***/ },
6161
- /* 48 */
6331
+ /* 50 */
6162
6332
  /***/ function(module, exports) {
6163
6333
 
6164
6334
  /**
@@ -6198,7 +6368,7 @@
6198
6368
  module.exports = ExecutionEnvironment;
6199
6369
 
6200
6370
  /***/ },
6201
- /* 49 */
6371
+ /* 51 */
6202
6372
  /***/ function(module, exports, __webpack_require__) {
6203
6373
 
6204
6374
  /**
@@ -6218,7 +6388,7 @@
6218
6388
 
6219
6389
  var PooledClass = __webpack_require__(6);
6220
6390
 
6221
- var getTextContentAccessor = __webpack_require__(50);
6391
+ var getTextContentAccessor = __webpack_require__(52);
6222
6392
 
6223
6393
  /**
6224
6394
  * This helper class stores information about text content of a target node,
@@ -6298,7 +6468,7 @@
6298
6468
  module.exports = FallbackCompositionState;
6299
6469
 
6300
6470
  /***/ },
6301
- /* 50 */
6471
+ /* 52 */
6302
6472
  /***/ function(module, exports, __webpack_require__) {
6303
6473
 
6304
6474
  /**
@@ -6314,7 +6484,7 @@
6314
6484
 
6315
6485
  'use strict';
6316
6486
 
6317
- var ExecutionEnvironment = __webpack_require__(48);
6487
+ var ExecutionEnvironment = __webpack_require__(50);
6318
6488
 
6319
6489
  var contentKey = null;
6320
6490
 
@@ -6336,7 +6506,7 @@
6336
6506
  module.exports = getTextContentAccessor;
6337
6507
 
6338
6508
  /***/ },
6339
- /* 51 */
6509
+ /* 53 */
6340
6510
  /***/ function(module, exports, __webpack_require__) {
6341
6511
 
6342
6512
  /**
@@ -6352,7 +6522,7 @@
6352
6522
 
6353
6523
  'use strict';
6354
6524
 
6355
- var SyntheticEvent = __webpack_require__(52);
6525
+ var SyntheticEvent = __webpack_require__(54);
6356
6526
 
6357
6527
  /**
6358
6528
  * @interface Event
@@ -6377,7 +6547,7 @@
6377
6547
  module.exports = SyntheticCompositionEvent;
6378
6548
 
6379
6549
  /***/ },
6380
- /* 52 */
6550
+ /* 54 */
6381
6551
  /***/ function(module, exports, __webpack_require__) {
6382
6552
 
6383
6553
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -6643,7 +6813,7 @@
6643
6813
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
6644
6814
 
6645
6815
  /***/ },
6646
- /* 53 */
6816
+ /* 55 */
6647
6817
  /***/ function(module, exports, __webpack_require__) {
6648
6818
 
6649
6819
  /**
@@ -6659,7 +6829,7 @@
6659
6829
 
6660
6830
  'use strict';
6661
6831
 
6662
- var SyntheticEvent = __webpack_require__(52);
6832
+ var SyntheticEvent = __webpack_require__(54);
6663
6833
 
6664
6834
  /**
6665
6835
  * @interface Event
@@ -6685,7 +6855,7 @@
6685
6855
  module.exports = SyntheticInputEvent;
6686
6856
 
6687
6857
  /***/ },
6688
- /* 54 */
6858
+ /* 56 */
6689
6859
  /***/ function(module, exports, __webpack_require__) {
6690
6860
 
6691
6861
  /**
@@ -6701,18 +6871,18 @@
6701
6871
 
6702
6872
  'use strict';
6703
6873
 
6704
- var EventConstants = __webpack_require__(40);
6705
- var EventPluginHub = __webpack_require__(42);
6706
- var EventPropagators = __webpack_require__(41);
6707
- var ExecutionEnvironment = __webpack_require__(48);
6708
- var ReactDOMComponentTree = __webpack_require__(35);
6709
- var ReactUpdates = __webpack_require__(55);
6710
- var SyntheticEvent = __webpack_require__(52);
6874
+ var EventConstants = __webpack_require__(42);
6875
+ var EventPluginHub = __webpack_require__(44);
6876
+ var EventPropagators = __webpack_require__(43);
6877
+ var ExecutionEnvironment = __webpack_require__(50);
6878
+ var ReactDOMComponentTree = __webpack_require__(37);
6879
+ var ReactUpdates = __webpack_require__(57);
6880
+ var SyntheticEvent = __webpack_require__(54);
6711
6881
 
6712
- var getEventTarget = __webpack_require__(68);
6713
- var isEventSupported = __webpack_require__(69);
6714
- var isTextInputElement = __webpack_require__(70);
6715
- var keyOf = __webpack_require__(24);
6882
+ var getEventTarget = __webpack_require__(71);
6883
+ var isEventSupported = __webpack_require__(72);
6884
+ var isTextInputElement = __webpack_require__(73);
6885
+ var keyOf = __webpack_require__(25);
6716
6886
 
6717
6887
  var topLevelTypes = EventConstants.topLevelTypes;
6718
6888
 
@@ -7015,7 +7185,7 @@
7015
7185
  module.exports = ChangeEventPlugin;
7016
7186
 
7017
7187
  /***/ },
7018
- /* 55 */
7188
+ /* 57 */
7019
7189
  /***/ function(module, exports, __webpack_require__) {
7020
7190
 
7021
7191
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -7034,11 +7204,11 @@
7034
7204
  var _prodInvariant = __webpack_require__(7),
7035
7205
  _assign = __webpack_require__(4);
7036
7206
 
7037
- var CallbackQueue = __webpack_require__(56);
7207
+ var CallbackQueue = __webpack_require__(58);
7038
7208
  var PooledClass = __webpack_require__(6);
7039
- var ReactFeatureFlags = __webpack_require__(57);
7040
- var ReactReconciler = __webpack_require__(58);
7041
- var Transaction = __webpack_require__(67);
7209
+ var ReactFeatureFlags = __webpack_require__(59);
7210
+ var ReactReconciler = __webpack_require__(60);
7211
+ var Transaction = __webpack_require__(70);
7042
7212
 
7043
7213
  var invariant = __webpack_require__(8);
7044
7214
 
@@ -7272,7 +7442,7 @@
7272
7442
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
7273
7443
 
7274
7444
  /***/ },
7275
- /* 56 */
7445
+ /* 58 */
7276
7446
  /***/ function(module, exports, __webpack_require__) {
7277
7447
 
7278
7448
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -7384,7 +7554,7 @@
7384
7554
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
7385
7555
 
7386
7556
  /***/ },
7387
- /* 57 */
7557
+ /* 59 */
7388
7558
  /***/ function(module, exports) {
7389
7559
 
7390
7560
  /**
@@ -7411,7 +7581,7 @@
7411
7581
  module.exports = ReactFeatureFlags;
7412
7582
 
7413
7583
  /***/ },
7414
- /* 58 */
7584
+ /* 60 */
7415
7585
  /***/ function(module, exports, __webpack_require__) {
7416
7586
 
7417
7587
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -7427,12 +7597,10 @@
7427
7597
 
7428
7598
  'use strict';
7429
7599
 
7430
- var _prodInvariant = __webpack_require__(7);
7431
-
7432
- var ReactRef = __webpack_require__(59);
7433
- var ReactInstrumentation = __webpack_require__(61);
7600
+ var ReactRef = __webpack_require__(61);
7601
+ var ReactInstrumentation = __webpack_require__(63);
7434
7602
 
7435
- var invariant = __webpack_require__(8);
7603
+ var warning = __webpack_require__(11);
7436
7604
 
7437
7605
  /**
7438
7606
  * Helper to call ReactRef.attachRefs with this composite component, split out
@@ -7569,7 +7737,7 @@
7569
7737
  if (internalInstance._updateBatchNumber !== updateBatchNumber) {
7570
7738
  // The component's enqueued batch number should always be the current
7571
7739
  // batch or the following one.
7572
- !(internalInstance._updateBatchNumber == null || internalInstance._updateBatchNumber === updateBatchNumber + 1) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'performUpdateIfNecessary: Unexpected batch number (current %s, pending %s)', updateBatchNumber, internalInstance._updateBatchNumber) : _prodInvariant('121', updateBatchNumber, internalInstance._updateBatchNumber) : void 0;
7740
+ process.env.NODE_ENV !== 'production' ? warning(internalInstance._updateBatchNumber == null || internalInstance._updateBatchNumber === updateBatchNumber + 1, 'performUpdateIfNecessary: Unexpected batch number (current %s, ' + 'pending %s)', updateBatchNumber, internalInstance._updateBatchNumber) : void 0;
7573
7741
  return;
7574
7742
  }
7575
7743
  if (process.env.NODE_ENV !== 'production') {
@@ -7593,7 +7761,7 @@
7593
7761
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
7594
7762
 
7595
7763
  /***/ },
7596
- /* 59 */
7764
+ /* 61 */
7597
7765
  /***/ function(module, exports, __webpack_require__) {
7598
7766
 
7599
7767
  /**
@@ -7609,7 +7777,7 @@
7609
7777
 
7610
7778
  'use strict';
7611
7779
 
7612
- var ReactOwner = __webpack_require__(60);
7780
+ var ReactOwner = __webpack_require__(62);
7613
7781
 
7614
7782
  var ReactRef = {};
7615
7783
 
@@ -7659,7 +7827,9 @@
7659
7827
 
7660
7828
  return(
7661
7829
  // This has a few false positives w/r/t empty components.
7662
- prevEmpty || nextEmpty || nextElement._owner !== prevElement._owner || nextElement.ref !== prevElement.ref
7830
+ prevEmpty || nextEmpty || nextElement.ref !== prevElement.ref ||
7831
+ // If owner changes but we have an unchanged function ref, don't update refs
7832
+ typeof nextElement.ref === 'string' && nextElement._owner !== prevElement._owner
7663
7833
  );
7664
7834
  };
7665
7835
 
@@ -7676,7 +7846,7 @@
7676
7846
  module.exports = ReactRef;
7677
7847
 
7678
7848
  /***/ },
7679
- /* 60 */
7849
+ /* 62 */
7680
7850
  /***/ function(module, exports, __webpack_require__) {
7681
7851
 
7682
7852
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -7776,7 +7946,7 @@
7776
7946
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
7777
7947
 
7778
7948
  /***/ },
7779
- /* 61 */
7949
+ /* 63 */
7780
7950
  /***/ function(module, exports, __webpack_require__) {
7781
7951
 
7782
7952
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -7795,7 +7965,7 @@
7795
7965
  var debugTool = null;
7796
7966
 
7797
7967
  if (process.env.NODE_ENV !== 'production') {
7798
- var ReactDebugTool = __webpack_require__(62);
7968
+ var ReactDebugTool = __webpack_require__(64);
7799
7969
  debugTool = ReactDebugTool;
7800
7970
  }
7801
7971
 
@@ -7803,7 +7973,7 @@
7803
7973
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
7804
7974
 
7805
7975
  /***/ },
7806
- /* 62 */
7976
+ /* 64 */
7807
7977
  /***/ function(module, exports, __webpack_require__) {
7808
7978
 
7809
7979
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -7819,12 +7989,13 @@
7819
7989
 
7820
7990
  'use strict';
7821
7991
 
7822
- var ReactInvalidSetStateWarningDevTool = __webpack_require__(63);
7823
- var ReactHostOperationHistoryDevtool = __webpack_require__(64);
7824
- var ReactComponentTreeDevtool = __webpack_require__(28);
7825
- var ExecutionEnvironment = __webpack_require__(48);
7992
+ var ReactInvalidSetStateWarningDevTool = __webpack_require__(65);
7993
+ var ReactHostOperationHistoryDevtool = __webpack_require__(66);
7994
+ var ReactComponentTreeDevtool = __webpack_require__(29);
7995
+ var ReactChildrenMutationWarningDevtool = __webpack_require__(67);
7996
+ var ExecutionEnvironment = __webpack_require__(50);
7826
7997
 
7827
- var performanceNow = __webpack_require__(65);
7998
+ var performanceNow = __webpack_require__(68);
7828
7999
  var warning = __webpack_require__(11);
7829
8000
 
7830
8001
  var eventHandlers = [];
@@ -7854,6 +8025,8 @@
7854
8025
  var currentTimerNestedFlushDuration = null;
7855
8026
  var currentTimerType = null;
7856
8027
 
8028
+ var lifeCycleTimerHasWarned = false;
8029
+
7857
8030
  function clearHistory() {
7858
8031
  ReactComponentTreeDevtool.purgeUnmountedComponents();
7859
8032
  ReactHostOperationHistoryDevtool.clearHistory();
@@ -7911,7 +8084,10 @@
7911
8084
  if (currentFlushNesting === 0) {
7912
8085
  return;
7913
8086
  }
7914
- process.env.NODE_ENV !== 'production' ? warning(!currentTimerType, 'There is an internal error in the React performance measurement code. ' + 'Did not expect %s timer to start while %s timer is still in ' + 'progress for %s instance.', timerType, currentTimerType || 'no', debugID === currentTimerDebugID ? 'the same' : 'another') : void 0;
8087
+ if (currentTimerType && !lifeCycleTimerHasWarned) {
8088
+ process.env.NODE_ENV !== 'production' ? warning(false, 'There is an internal error in the React performance measurement code. ' + 'Did not expect %s timer to start while %s timer is still in ' + 'progress for %s instance.', timerType, currentTimerType || 'no', debugID === currentTimerDebugID ? 'the same' : 'another') : void 0;
8089
+ lifeCycleTimerHasWarned = true;
8090
+ }
7915
8091
  currentTimerStartTime = performanceNow();
7916
8092
  currentTimerNestedFlushDuration = 0;
7917
8093
  currentTimerDebugID = debugID;
@@ -7922,7 +8098,10 @@
7922
8098
  if (currentFlushNesting === 0) {
7923
8099
  return;
7924
8100
  }
7925
- process.env.NODE_ENV !== 'production' ? warning(currentTimerType === timerType, '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') : void 0;
8101
+ if (currentTimerType !== timerType && !lifeCycleTimerHasWarned) {
8102
+ process.env.NODE_ENV !== 'production' ? warning(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') : void 0;
8103
+ lifeCycleTimerHasWarned = true;
8104
+ }
7926
8105
  if (isProfiling) {
7927
8106
  currentFlushMeasurements.push({
7928
8107
  timerType: timerType,
@@ -8048,6 +8227,14 @@
8048
8227
  checkDebugID(debugID);
8049
8228
  emitEvent('onHostOperation', debugID, type, payload);
8050
8229
  },
8230
+ onComponentHasMounted: function (debugID) {
8231
+ checkDebugID(debugID);
8232
+ emitEvent('onComponentHasMounted', debugID);
8233
+ },
8234
+ onComponentHasUpdated: function (debugID) {
8235
+ checkDebugID(debugID);
8236
+ emitEvent('onComponentHasUpdated', debugID);
8237
+ },
8051
8238
  onSetState: function () {
8052
8239
  emitEvent('onSetState');
8053
8240
  },
@@ -8103,6 +8290,7 @@
8103
8290
 
8104
8291
  ReactDebugTool.addDevtool(ReactInvalidSetStateWarningDevTool);
8105
8292
  ReactDebugTool.addDevtool(ReactComponentTreeDevtool);
8293
+ ReactDebugTool.addDevtool(ReactChildrenMutationWarningDevtool);
8106
8294
  var url = ExecutionEnvironment.canUseDOM && window.location.href || '';
8107
8295
  if (/[?&]react_perf\b/.test(url)) {
8108
8296
  ReactDebugTool.beginProfiling();
@@ -8112,7 +8300,7 @@
8112
8300
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
8113
8301
 
8114
8302
  /***/ },
8115
- /* 63 */
8303
+ /* 65 */
8116
8304
  /***/ function(module, exports, __webpack_require__) {
8117
8305
 
8118
8306
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -8154,7 +8342,7 @@
8154
8342
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
8155
8343
 
8156
8344
  /***/ },
8157
- /* 64 */
8345
+ /* 66 */
8158
8346
  /***/ function(module, exports) {
8159
8347
 
8160
8348
  /**
@@ -8196,61 +8384,129 @@
8196
8384
  module.exports = ReactHostOperationHistoryDevtool;
8197
8385
 
8198
8386
  /***/ },
8199
- /* 65 */
8387
+ /* 67 */
8200
8388
  /***/ function(module, exports, __webpack_require__) {
8201
8389
 
8202
- 'use strict';
8203
-
8204
- /**
8205
- * Copyright (c) 2013-present, Facebook, Inc.
8390
+ /* WEBPACK VAR INJECTION */(function(process) {/**
8391
+ * Copyright 2013-present, Facebook, Inc.
8206
8392
  * All rights reserved.
8207
8393
  *
8208
8394
  * This source code is licensed under the BSD-style license found in the
8209
8395
  * LICENSE file in the root directory of this source tree. An additional grant
8210
8396
  * of patent rights can be found in the PATENTS file in the same directory.
8211
8397
  *
8212
- * @typechecks
8398
+ * @providesModule ReactChildrenMutationWarningDevtool
8213
8399
  */
8214
8400
 
8215
- var performance = __webpack_require__(66);
8216
-
8217
- var performanceNow;
8218
-
8219
- /**
8220
- * Detect if we can use `window.performance.now()` and gracefully fallback to
8221
- * `Date.now()` if it doesn't exist. We need to support Firefox < 15 for now
8222
- * because of Facebook's testing infrastructure.
8223
- */
8224
- if (performance.now) {
8225
- performanceNow = function performanceNow() {
8226
- return performance.now();
8227
- };
8228
- } else {
8229
- performanceNow = function performanceNow() {
8230
- return Date.now();
8231
- };
8232
- }
8401
+ 'use strict';
8233
8402
 
8234
- module.exports = performanceNow;
8403
+ var ReactComponentTreeDevtool = __webpack_require__(29);
8235
8404
 
8236
- /***/ },
8237
- /* 66 */
8238
- /***/ function(module, exports, __webpack_require__) {
8405
+ var warning = __webpack_require__(11);
8239
8406
 
8240
- /**
8241
- * Copyright (c) 2013-present, Facebook, Inc.
8242
- * All rights reserved.
8243
- *
8244
- * This source code is licensed under the BSD-style license found in the
8245
- * LICENSE file in the root directory of this source tree. An additional grant
8246
- * of patent rights can be found in the PATENTS file in the same directory.
8247
- *
8248
- * @typechecks
8249
- */
8407
+ var elements = {};
8408
+
8409
+ function handleElement(debugID, element) {
8410
+ if (element == null) {
8411
+ return;
8412
+ }
8413
+ if (element._shadowChildren === undefined) {
8414
+ return;
8415
+ }
8416
+ if (element._shadowChildren === element.props.children) {
8417
+ return;
8418
+ }
8419
+ var isMutated = false;
8420
+ if (Array.isArray(element._shadowChildren)) {
8421
+ if (element._shadowChildren.length === element.props.children.length) {
8422
+ for (var i = 0; i < element._shadowChildren.length; i++) {
8423
+ if (element._shadowChildren[i] !== element.props.children[i]) {
8424
+ isMutated = true;
8425
+ }
8426
+ }
8427
+ } else {
8428
+ isMutated = true;
8429
+ }
8430
+ }
8431
+ process.env.NODE_ENV !== 'production' ? warning(Array.isArray(element._shadowChildren) && !isMutated, 'Component\'s children should not be mutated.%s', ReactComponentTreeDevtool.getStackAddendumByID(debugID)) : void 0;
8432
+ }
8433
+
8434
+ var ReactDOMUnknownPropertyDevtool = {
8435
+ onBeforeMountComponent: function (debugID, element) {
8436
+ elements[debugID] = element;
8437
+ },
8438
+ onBeforeUpdateComponent: function (debugID, element) {
8439
+ elements[debugID] = element;
8440
+ },
8441
+ onComponentHasMounted: function (debugID) {
8442
+ handleElement(debugID, elements[debugID]);
8443
+ delete elements[debugID];
8444
+ },
8445
+ onComponentHasUpdated: function (debugID) {
8446
+ handleElement(debugID, elements[debugID]);
8447
+ delete elements[debugID];
8448
+ }
8449
+ };
8450
+
8451
+ module.exports = ReactDOMUnknownPropertyDevtool;
8452
+ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
8453
+
8454
+ /***/ },
8455
+ /* 68 */
8456
+ /***/ function(module, exports, __webpack_require__) {
8250
8457
 
8251
8458
  'use strict';
8252
8459
 
8253
- var ExecutionEnvironment = __webpack_require__(48);
8460
+ /**
8461
+ * Copyright (c) 2013-present, Facebook, Inc.
8462
+ * All rights reserved.
8463
+ *
8464
+ * This source code is licensed under the BSD-style license found in the
8465
+ * LICENSE file in the root directory of this source tree. An additional grant
8466
+ * of patent rights can be found in the PATENTS file in the same directory.
8467
+ *
8468
+ * @typechecks
8469
+ */
8470
+
8471
+ var performance = __webpack_require__(69);
8472
+
8473
+ var performanceNow;
8474
+
8475
+ /**
8476
+ * Detect if we can use `window.performance.now()` and gracefully fallback to
8477
+ * `Date.now()` if it doesn't exist. We need to support Firefox < 15 for now
8478
+ * because of Facebook's testing infrastructure.
8479
+ */
8480
+ if (performance.now) {
8481
+ performanceNow = function performanceNow() {
8482
+ return performance.now();
8483
+ };
8484
+ } else {
8485
+ performanceNow = function performanceNow() {
8486
+ return Date.now();
8487
+ };
8488
+ }
8489
+
8490
+ module.exports = performanceNow;
8491
+
8492
+ /***/ },
8493
+ /* 69 */
8494
+ /***/ function(module, exports, __webpack_require__) {
8495
+
8496
+ /**
8497
+ * Copyright (c) 2013-present, Facebook, Inc.
8498
+ * All rights reserved.
8499
+ *
8500
+ * This source code is licensed under the BSD-style license found in the
8501
+ * LICENSE file in the root directory of this source tree. An additional grant
8502
+ * of patent rights can be found in the PATENTS file in the same directory.
8503
+ *
8504
+ * @typechecks
8505
+ */
8506
+
8507
+ 'use strict';
8508
+
8509
+ var ExecutionEnvironment = __webpack_require__(50);
8254
8510
 
8255
8511
  var performance;
8256
8512
 
@@ -8261,7 +8517,7 @@
8261
8517
  module.exports = performance || {};
8262
8518
 
8263
8519
  /***/ },
8264
- /* 67 */
8520
+ /* 70 */
8265
8521
  /***/ function(module, exports, __webpack_require__) {
8266
8522
 
8267
8523
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -8500,7 +8756,7 @@
8500
8756
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
8501
8757
 
8502
8758
  /***/ },
8503
- /* 68 */
8759
+ /* 71 */
8504
8760
  /***/ function(module, exports) {
8505
8761
 
8506
8762
  /**
@@ -8540,7 +8796,7 @@
8540
8796
  module.exports = getEventTarget;
8541
8797
 
8542
8798
  /***/ },
8543
- /* 69 */
8799
+ /* 72 */
8544
8800
  /***/ function(module, exports, __webpack_require__) {
8545
8801
 
8546
8802
  /**
@@ -8556,7 +8812,7 @@
8556
8812
 
8557
8813
  'use strict';
8558
8814
 
8559
- var ExecutionEnvironment = __webpack_require__(48);
8815
+ var ExecutionEnvironment = __webpack_require__(50);
8560
8816
 
8561
8817
  var useHasFeature;
8562
8818
  if (ExecutionEnvironment.canUseDOM) {
@@ -8605,7 +8861,7 @@
8605
8861
  module.exports = isEventSupported;
8606
8862
 
8607
8863
  /***/ },
8608
- /* 70 */
8864
+ /* 73 */
8609
8865
  /***/ function(module, exports) {
8610
8866
 
8611
8867
  /**
@@ -8661,7 +8917,7 @@
8661
8917
  module.exports = isTextInputElement;
8662
8918
 
8663
8919
  /***/ },
8664
- /* 71 */
8920
+ /* 74 */
8665
8921
  /***/ function(module, exports, __webpack_require__) {
8666
8922
 
8667
8923
  /**
@@ -8677,7 +8933,7 @@
8677
8933
 
8678
8934
  'use strict';
8679
8935
 
8680
- var keyOf = __webpack_require__(24);
8936
+ var keyOf = __webpack_require__(25);
8681
8937
 
8682
8938
  /**
8683
8939
  * Module that is injectable into `EventPluginHub`, that specifies a
@@ -8693,7 +8949,7 @@
8693
8949
  module.exports = DefaultEventPluginOrder;
8694
8950
 
8695
8951
  /***/ },
8696
- /* 72 */
8952
+ /* 75 */
8697
8953
  /***/ function(module, exports, __webpack_require__) {
8698
8954
 
8699
8955
  /**
@@ -8709,12 +8965,12 @@
8709
8965
 
8710
8966
  'use strict';
8711
8967
 
8712
- var EventConstants = __webpack_require__(40);
8713
- var EventPropagators = __webpack_require__(41);
8714
- var ReactDOMComponentTree = __webpack_require__(35);
8715
- var SyntheticMouseEvent = __webpack_require__(73);
8968
+ var EventConstants = __webpack_require__(42);
8969
+ var EventPropagators = __webpack_require__(43);
8970
+ var ReactDOMComponentTree = __webpack_require__(37);
8971
+ var SyntheticMouseEvent = __webpack_require__(76);
8716
8972
 
8717
- var keyOf = __webpack_require__(24);
8973
+ var keyOf = __webpack_require__(25);
8718
8974
 
8719
8975
  var topLevelTypes = EventConstants.topLevelTypes;
8720
8976
 
@@ -8803,7 +9059,7 @@
8803
9059
  module.exports = EnterLeaveEventPlugin;
8804
9060
 
8805
9061
  /***/ },
8806
- /* 73 */
9062
+ /* 76 */
8807
9063
  /***/ function(module, exports, __webpack_require__) {
8808
9064
 
8809
9065
  /**
@@ -8819,10 +9075,10 @@
8819
9075
 
8820
9076
  'use strict';
8821
9077
 
8822
- var SyntheticUIEvent = __webpack_require__(74);
8823
- var ViewportMetrics = __webpack_require__(75);
9078
+ var SyntheticUIEvent = __webpack_require__(77);
9079
+ var ViewportMetrics = __webpack_require__(78);
8824
9080
 
8825
- var getEventModifierState = __webpack_require__(76);
9081
+ var getEventModifierState = __webpack_require__(79);
8826
9082
 
8827
9083
  /**
8828
9084
  * @interface MouseEvent
@@ -8880,7 +9136,7 @@
8880
9136
  module.exports = SyntheticMouseEvent;
8881
9137
 
8882
9138
  /***/ },
8883
- /* 74 */
9139
+ /* 77 */
8884
9140
  /***/ function(module, exports, __webpack_require__) {
8885
9141
 
8886
9142
  /**
@@ -8896,9 +9152,9 @@
8896
9152
 
8897
9153
  'use strict';
8898
9154
 
8899
- var SyntheticEvent = __webpack_require__(52);
9155
+ var SyntheticEvent = __webpack_require__(54);
8900
9156
 
8901
- var getEventTarget = __webpack_require__(68);
9157
+ var getEventTarget = __webpack_require__(71);
8902
9158
 
8903
9159
  /**
8904
9160
  * @interface UIEvent
@@ -8944,7 +9200,7 @@
8944
9200
  module.exports = SyntheticUIEvent;
8945
9201
 
8946
9202
  /***/ },
8947
- /* 75 */
9203
+ /* 78 */
8948
9204
  /***/ function(module, exports) {
8949
9205
 
8950
9206
  /**
@@ -8976,7 +9232,7 @@
8976
9232
  module.exports = ViewportMetrics;
8977
9233
 
8978
9234
  /***/ },
8979
- /* 76 */
9235
+ /* 79 */
8980
9236
  /***/ function(module, exports) {
8981
9237
 
8982
9238
  /**
@@ -9024,7 +9280,7 @@
9024
9280
  module.exports = getEventModifierState;
9025
9281
 
9026
9282
  /***/ },
9027
- /* 77 */
9283
+ /* 80 */
9028
9284
  /***/ function(module, exports, __webpack_require__) {
9029
9285
 
9030
9286
  /**
@@ -9040,7 +9296,7 @@
9040
9296
 
9041
9297
  'use strict';
9042
9298
 
9043
- var DOMProperty = __webpack_require__(36);
9299
+ var DOMProperty = __webpack_require__(38);
9044
9300
 
9045
9301
  var MUST_USE_PROPERTY = DOMProperty.injection.MUST_USE_PROPERTY;
9046
9302
  var HAS_BOOLEAN_VALUE = DOMProperty.injection.HAS_BOOLEAN_VALUE;
@@ -9146,6 +9402,7 @@
9146
9402
  profile: 0,
9147
9403
  radioGroup: 0,
9148
9404
  readOnly: HAS_BOOLEAN_VALUE,
9405
+ referrerPolicy: 0,
9149
9406
  rel: 0,
9150
9407
  required: HAS_BOOLEAN_VALUE,
9151
9408
  reversed: HAS_BOOLEAN_VALUE,
@@ -9237,7 +9494,7 @@
9237
9494
  module.exports = HTMLDOMPropertyConfig;
9238
9495
 
9239
9496
  /***/ },
9240
- /* 78 */
9497
+ /* 81 */
9241
9498
  /***/ function(module, exports, __webpack_require__) {
9242
9499
 
9243
9500
  /**
@@ -9253,8 +9510,8 @@
9253
9510
 
9254
9511
  'use strict';
9255
9512
 
9256
- var DOMChildrenOperations = __webpack_require__(79);
9257
- var ReactDOMIDOperations = __webpack_require__(91);
9513
+ var DOMChildrenOperations = __webpack_require__(82);
9514
+ var ReactDOMIDOperations = __webpack_require__(94);
9258
9515
 
9259
9516
  /**
9260
9517
  * Abstracts away all functionality of the reconciler that requires knowledge of
@@ -9281,7 +9538,7 @@
9281
9538
  module.exports = ReactComponentBrowserEnvironment;
9282
9539
 
9283
9540
  /***/ },
9284
- /* 79 */
9541
+ /* 82 */
9285
9542
  /***/ function(module, exports, __webpack_require__) {
9286
9543
 
9287
9544
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -9297,15 +9554,15 @@
9297
9554
 
9298
9555
  'use strict';
9299
9556
 
9300
- var DOMLazyTree = __webpack_require__(80);
9301
- var Danger = __webpack_require__(86);
9302
- var ReactMultiChildUpdateTypes = __webpack_require__(90);
9303
- var ReactDOMComponentTree = __webpack_require__(35);
9304
- var ReactInstrumentation = __webpack_require__(61);
9557
+ var DOMLazyTree = __webpack_require__(83);
9558
+ var Danger = __webpack_require__(89);
9559
+ var ReactMultiChildUpdateTypes = __webpack_require__(93);
9560
+ var ReactDOMComponentTree = __webpack_require__(37);
9561
+ var ReactInstrumentation = __webpack_require__(63);
9305
9562
 
9306
- var createMicrosoftUnsafeLocalFunction = __webpack_require__(83);
9307
- var setInnerHTML = __webpack_require__(82);
9308
- var setTextContent = __webpack_require__(84);
9563
+ var createMicrosoftUnsafeLocalFunction = __webpack_require__(86);
9564
+ var setInnerHTML = __webpack_require__(85);
9565
+ var setTextContent = __webpack_require__(87);
9309
9566
 
9310
9567
  function getNodeAfter(parentNode, node) {
9311
9568
  // Special case for text components, which return [open, close] comments
@@ -9481,7 +9738,7 @@
9481
9738
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
9482
9739
 
9483
9740
  /***/ },
9484
- /* 80 */
9741
+ /* 83 */
9485
9742
  /***/ function(module, exports, __webpack_require__) {
9486
9743
 
9487
9744
  /**
@@ -9497,11 +9754,11 @@
9497
9754
 
9498
9755
  'use strict';
9499
9756
 
9500
- var DOMNamespaces = __webpack_require__(81);
9501
- var setInnerHTML = __webpack_require__(82);
9757
+ var DOMNamespaces = __webpack_require__(84);
9758
+ var setInnerHTML = __webpack_require__(85);
9502
9759
 
9503
- var createMicrosoftUnsafeLocalFunction = __webpack_require__(83);
9504
- var setTextContent = __webpack_require__(84);
9760
+ var createMicrosoftUnsafeLocalFunction = __webpack_require__(86);
9761
+ var setTextContent = __webpack_require__(87);
9505
9762
 
9506
9763
  var ELEMENT_NODE_TYPE = 1;
9507
9764
  var DOCUMENT_FRAGMENT_NODE_TYPE = 11;
@@ -9604,7 +9861,7 @@
9604
9861
  module.exports = DOMLazyTree;
9605
9862
 
9606
9863
  /***/ },
9607
- /* 81 */
9864
+ /* 84 */
9608
9865
  /***/ function(module, exports) {
9609
9866
 
9610
9867
  /**
@@ -9629,7 +9886,7 @@
9629
9886
  module.exports = DOMNamespaces;
9630
9887
 
9631
9888
  /***/ },
9632
- /* 82 */
9889
+ /* 85 */
9633
9890
  /***/ function(module, exports, __webpack_require__) {
9634
9891
 
9635
9892
  /**
@@ -9645,13 +9902,13 @@
9645
9902
 
9646
9903
  'use strict';
9647
9904
 
9648
- var ExecutionEnvironment = __webpack_require__(48);
9649
- var DOMNamespaces = __webpack_require__(81);
9905
+ var ExecutionEnvironment = __webpack_require__(50);
9906
+ var DOMNamespaces = __webpack_require__(84);
9650
9907
 
9651
9908
  var WHITESPACE_TEST = /^[ \r\n\t\f]/;
9652
9909
  var NONVISIBLE_TEST = /<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/;
9653
9910
 
9654
- var createMicrosoftUnsafeLocalFunction = __webpack_require__(83);
9911
+ var createMicrosoftUnsafeLocalFunction = __webpack_require__(86);
9655
9912
 
9656
9913
  // SVG temp container for IE lacking innerHTML
9657
9914
  var reusableSVGContainer;
@@ -9732,7 +9989,7 @@
9732
9989
  module.exports = setInnerHTML;
9733
9990
 
9734
9991
  /***/ },
9735
- /* 83 */
9992
+ /* 86 */
9736
9993
  /***/ function(module, exports) {
9737
9994
 
9738
9995
  /**
@@ -9769,7 +10026,7 @@
9769
10026
  module.exports = createMicrosoftUnsafeLocalFunction;
9770
10027
 
9771
10028
  /***/ },
9772
- /* 84 */
10029
+ /* 87 */
9773
10030
  /***/ function(module, exports, __webpack_require__) {
9774
10031
 
9775
10032
  /**
@@ -9785,9 +10042,9 @@
9785
10042
 
9786
10043
  'use strict';
9787
10044
 
9788
- var ExecutionEnvironment = __webpack_require__(48);
9789
- var escapeTextContentForBrowser = __webpack_require__(85);
9790
- var setInnerHTML = __webpack_require__(82);
10045
+ var ExecutionEnvironment = __webpack_require__(50);
10046
+ var escapeTextContentForBrowser = __webpack_require__(88);
10047
+ var setInnerHTML = __webpack_require__(85);
9791
10048
 
9792
10049
  /**
9793
10050
  * Set the textContent property of a node, ensuring that whitespace is preserved
@@ -9822,7 +10079,7 @@
9822
10079
  module.exports = setTextContent;
9823
10080
 
9824
10081
  /***/ },
9825
- /* 85 */
10082
+ /* 88 */
9826
10083
  /***/ function(module, exports) {
9827
10084
 
9828
10085
  /**
@@ -9949,7 +10206,7 @@
9949
10206
  module.exports = escapeTextContentForBrowser;
9950
10207
 
9951
10208
  /***/ },
9952
- /* 86 */
10209
+ /* 89 */
9953
10210
  /***/ function(module, exports, __webpack_require__) {
9954
10211
 
9955
10212
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -9967,10 +10224,10 @@
9967
10224
 
9968
10225
  var _prodInvariant = __webpack_require__(7);
9969
10226
 
9970
- var DOMLazyTree = __webpack_require__(80);
9971
- var ExecutionEnvironment = __webpack_require__(48);
10227
+ var DOMLazyTree = __webpack_require__(83);
10228
+ var ExecutionEnvironment = __webpack_require__(50);
9972
10229
 
9973
- var createNodesFromMarkup = __webpack_require__(87);
10230
+ var createNodesFromMarkup = __webpack_require__(90);
9974
10231
  var emptyFunction = __webpack_require__(12);
9975
10232
  var invariant = __webpack_require__(8);
9976
10233
 
@@ -10003,7 +10260,7 @@
10003
10260
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
10004
10261
 
10005
10262
  /***/ },
10006
- /* 87 */
10263
+ /* 90 */
10007
10264
  /***/ function(module, exports, __webpack_require__) {
10008
10265
 
10009
10266
  /* WEBPACK VAR INJECTION */(function(process) {'use strict';
@@ -10021,10 +10278,10 @@
10021
10278
 
10022
10279
  /*eslint-disable fb-www/unsafe-html*/
10023
10280
 
10024
- var ExecutionEnvironment = __webpack_require__(48);
10281
+ var ExecutionEnvironment = __webpack_require__(50);
10025
10282
 
10026
- var createArrayFromMixed = __webpack_require__(88);
10027
- var getMarkupWrap = __webpack_require__(89);
10283
+ var createArrayFromMixed = __webpack_require__(91);
10284
+ var getMarkupWrap = __webpack_require__(92);
10028
10285
  var invariant = __webpack_require__(8);
10029
10286
 
10030
10287
  /**
@@ -10092,7 +10349,7 @@
10092
10349
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
10093
10350
 
10094
10351
  /***/ },
10095
- /* 88 */
10352
+ /* 91 */
10096
10353
  /***/ function(module, exports, __webpack_require__) {
10097
10354
 
10098
10355
  /* WEBPACK VAR INJECTION */(function(process) {'use strict';
@@ -10224,7 +10481,7 @@
10224
10481
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
10225
10482
 
10226
10483
  /***/ },
10227
- /* 89 */
10484
+ /* 92 */
10228
10485
  /***/ function(module, exports, __webpack_require__) {
10229
10486
 
10230
10487
  /* WEBPACK VAR INJECTION */(function(process) {'use strict';
@@ -10241,7 +10498,7 @@
10241
10498
 
10242
10499
  /*eslint-disable fb-www/unsafe-html */
10243
10500
 
10244
- var ExecutionEnvironment = __webpack_require__(48);
10501
+ var ExecutionEnvironment = __webpack_require__(50);
10245
10502
 
10246
10503
  var invariant = __webpack_require__(8);
10247
10504
 
@@ -10324,7 +10581,7 @@
10324
10581
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
10325
10582
 
10326
10583
  /***/ },
10327
- /* 90 */
10584
+ /* 93 */
10328
10585
  /***/ function(module, exports, __webpack_require__) {
10329
10586
 
10330
10587
  /**
@@ -10340,7 +10597,7 @@
10340
10597
 
10341
10598
  'use strict';
10342
10599
 
10343
- var keyMirror = __webpack_require__(22);
10600
+ var keyMirror = __webpack_require__(23);
10344
10601
 
10345
10602
  /**
10346
10603
  * When a component's children are updated, a series of update configuration
@@ -10361,7 +10618,7 @@
10361
10618
  module.exports = ReactMultiChildUpdateTypes;
10362
10619
 
10363
10620
  /***/ },
10364
- /* 91 */
10621
+ /* 94 */
10365
10622
  /***/ function(module, exports, __webpack_require__) {
10366
10623
 
10367
10624
  /**
@@ -10377,8 +10634,8 @@
10377
10634
 
10378
10635
  'use strict';
10379
10636
 
10380
- var DOMChildrenOperations = __webpack_require__(79);
10381
- var ReactDOMComponentTree = __webpack_require__(35);
10637
+ var DOMChildrenOperations = __webpack_require__(82);
10638
+ var ReactDOMComponentTree = __webpack_require__(37);
10382
10639
 
10383
10640
  /**
10384
10641
  * Operations used to process updates to DOM nodes.
@@ -10400,7 +10657,7 @@
10400
10657
  module.exports = ReactDOMIDOperations;
10401
10658
 
10402
10659
  /***/ },
10403
- /* 92 */
10660
+ /* 95 */
10404
10661
  /***/ function(module, exports, __webpack_require__) {
10405
10662
 
10406
10663
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -10421,35 +10678,35 @@
10421
10678
  var _prodInvariant = __webpack_require__(7),
10422
10679
  _assign = __webpack_require__(4);
10423
10680
 
10424
- var AutoFocusUtils = __webpack_require__(93);
10425
- var CSSPropertyOperations = __webpack_require__(95);
10426
- var DOMLazyTree = __webpack_require__(80);
10427
- var DOMNamespaces = __webpack_require__(81);
10428
- var DOMProperty = __webpack_require__(36);
10429
- var DOMPropertyOperations = __webpack_require__(103);
10430
- var EventConstants = __webpack_require__(40);
10431
- var EventPluginHub = __webpack_require__(42);
10432
- var EventPluginRegistry = __webpack_require__(43);
10433
- var ReactBrowserEventEmitter = __webpack_require__(109);
10434
- var ReactComponentBrowserEnvironment = __webpack_require__(78);
10435
- var ReactDOMButton = __webpack_require__(112);
10436
- var ReactDOMComponentFlags = __webpack_require__(37);
10437
- var ReactDOMComponentTree = __webpack_require__(35);
10438
- var ReactDOMInput = __webpack_require__(114);
10439
- var ReactDOMOption = __webpack_require__(116);
10440
- var ReactDOMSelect = __webpack_require__(117);
10441
- var ReactDOMTextarea = __webpack_require__(118);
10442
- var ReactInstrumentation = __webpack_require__(61);
10443
- var ReactMultiChild = __webpack_require__(119);
10444
- var ReactServerRenderingTransaction = __webpack_require__(130);
10681
+ var AutoFocusUtils = __webpack_require__(96);
10682
+ var CSSPropertyOperations = __webpack_require__(98);
10683
+ var DOMLazyTree = __webpack_require__(83);
10684
+ var DOMNamespaces = __webpack_require__(84);
10685
+ var DOMProperty = __webpack_require__(38);
10686
+ var DOMPropertyOperations = __webpack_require__(106);
10687
+ var EventConstants = __webpack_require__(42);
10688
+ var EventPluginHub = __webpack_require__(44);
10689
+ var EventPluginRegistry = __webpack_require__(45);
10690
+ var ReactBrowserEventEmitter = __webpack_require__(112);
10691
+ var ReactComponentBrowserEnvironment = __webpack_require__(81);
10692
+ var ReactDOMButton = __webpack_require__(115);
10693
+ var ReactDOMComponentFlags = __webpack_require__(39);
10694
+ var ReactDOMComponentTree = __webpack_require__(37);
10695
+ var ReactDOMInput = __webpack_require__(117);
10696
+ var ReactDOMOption = __webpack_require__(119);
10697
+ var ReactDOMSelect = __webpack_require__(120);
10698
+ var ReactDOMTextarea = __webpack_require__(121);
10699
+ var ReactInstrumentation = __webpack_require__(63);
10700
+ var ReactMultiChild = __webpack_require__(122);
10701
+ var ReactServerRenderingTransaction = __webpack_require__(134);
10445
10702
 
10446
10703
  var emptyFunction = __webpack_require__(12);
10447
- var escapeTextContentForBrowser = __webpack_require__(85);
10704
+ var escapeTextContentForBrowser = __webpack_require__(88);
10448
10705
  var invariant = __webpack_require__(8);
10449
- var isEventSupported = __webpack_require__(69);
10450
- var keyOf = __webpack_require__(24);
10451
- var shallowEqual = __webpack_require__(133);
10452
- var validateDOMNesting = __webpack_require__(134);
10706
+ var isEventSupported = __webpack_require__(72);
10707
+ var keyOf = __webpack_require__(25);
10708
+ var shallowEqual = __webpack_require__(129);
10709
+ var validateDOMNesting = __webpack_require__(137);
10453
10710
  var warning = __webpack_require__(11);
10454
10711
 
10455
10712
  var Flags = ReactDOMComponentFlags;
@@ -10816,6 +11073,8 @@
10816
11073
  * @return {string} The computed markup.
10817
11074
  */
10818
11075
  mountComponent: function (transaction, hostParent, hostContainerInfo, context) {
11076
+ var _this = this;
11077
+
10819
11078
  this._rootNodeID = globalIdCounter++;
10820
11079
  this._domID = hostContainerInfo._idCounter++;
10821
11080
  this._hostParent = hostParent;
@@ -10971,6 +11230,15 @@
10971
11230
  break;
10972
11231
  }
10973
11232
 
11233
+ if (process.env.NODE_ENV !== 'production') {
11234
+ if (this._debugID) {
11235
+ var callback = function () {
11236
+ return ReactInstrumentation.debugTool.onComponentHasMounted(_this._debugID);
11237
+ };
11238
+ transaction.getReactMountReady().enqueue(callback, this);
11239
+ }
11240
+ }
11241
+
10974
11242
  return mountImage;
10975
11243
  },
10976
11244
 
@@ -11139,6 +11407,8 @@
11139
11407
  * @overridable
11140
11408
  */
11141
11409
  updateComponent: function (transaction, prevElement, nextElement, context) {
11410
+ var _this2 = this;
11411
+
11142
11412
  var lastProps = prevElement.props;
11143
11413
  var nextProps = this._currentElement.props;
11144
11414
 
@@ -11176,6 +11446,15 @@
11176
11446
  // reconciliation
11177
11447
  transaction.getReactMountReady().enqueue(postUpdateSelectWrapper, this);
11178
11448
  }
11449
+
11450
+ if (process.env.NODE_ENV !== 'production') {
11451
+ if (this._debugID) {
11452
+ var callback = function () {
11453
+ return ReactInstrumentation.debugTool.onComponentHasUpdated(_this2._debugID);
11454
+ };
11455
+ transaction.getReactMountReady().enqueue(callback, this);
11456
+ }
11457
+ }
11179
11458
  },
11180
11459
 
11181
11460
  /**
@@ -11409,7 +11688,7 @@
11409
11688
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
11410
11689
 
11411
11690
  /***/ },
11412
- /* 93 */
11691
+ /* 96 */
11413
11692
  /***/ function(module, exports, __webpack_require__) {
11414
11693
 
11415
11694
  /**
@@ -11425,9 +11704,9 @@
11425
11704
 
11426
11705
  'use strict';
11427
11706
 
11428
- var ReactDOMComponentTree = __webpack_require__(35);
11707
+ var ReactDOMComponentTree = __webpack_require__(37);
11429
11708
 
11430
- var focusNode = __webpack_require__(94);
11709
+ var focusNode = __webpack_require__(97);
11431
11710
 
11432
11711
  var AutoFocusUtils = {
11433
11712
  focusDOMComponent: function () {
@@ -11438,7 +11717,7 @@
11438
11717
  module.exports = AutoFocusUtils;
11439
11718
 
11440
11719
  /***/ },
11441
- /* 94 */
11720
+ /* 97 */
11442
11721
  /***/ function(module, exports) {
11443
11722
 
11444
11723
  /**
@@ -11469,7 +11748,7 @@
11469
11748
  module.exports = focusNode;
11470
11749
 
11471
11750
  /***/ },
11472
- /* 95 */
11751
+ /* 98 */
11473
11752
  /***/ function(module, exports, __webpack_require__) {
11474
11753
 
11475
11754
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -11485,14 +11764,14 @@
11485
11764
 
11486
11765
  'use strict';
11487
11766
 
11488
- var CSSProperty = __webpack_require__(96);
11489
- var ExecutionEnvironment = __webpack_require__(48);
11490
- var ReactInstrumentation = __webpack_require__(61);
11767
+ var CSSProperty = __webpack_require__(99);
11768
+ var ExecutionEnvironment = __webpack_require__(50);
11769
+ var ReactInstrumentation = __webpack_require__(63);
11491
11770
 
11492
- var camelizeStyleName = __webpack_require__(97);
11493
- var dangerousStyleValue = __webpack_require__(99);
11494
- var hyphenateStyleName = __webpack_require__(100);
11495
- var memoizeStringOnly = __webpack_require__(102);
11771
+ var camelizeStyleName = __webpack_require__(100);
11772
+ var dangerousStyleValue = __webpack_require__(102);
11773
+ var hyphenateStyleName = __webpack_require__(103);
11774
+ var memoizeStringOnly = __webpack_require__(105);
11496
11775
  var warning = __webpack_require__(11);
11497
11776
 
11498
11777
  var processStyleName = memoizeStringOnly(function (styleName) {
@@ -11680,7 +11959,7 @@
11680
11959
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
11681
11960
 
11682
11961
  /***/ },
11683
- /* 96 */
11962
+ /* 99 */
11684
11963
  /***/ function(module, exports) {
11685
11964
 
11686
11965
  /**
@@ -11833,7 +12112,7 @@
11833
12112
  module.exports = CSSProperty;
11834
12113
 
11835
12114
  /***/ },
11836
- /* 97 */
12115
+ /* 100 */
11837
12116
  /***/ function(module, exports, __webpack_require__) {
11838
12117
 
11839
12118
  /**
@@ -11849,7 +12128,7 @@
11849
12128
 
11850
12129
  'use strict';
11851
12130
 
11852
- var camelize = __webpack_require__(98);
12131
+ var camelize = __webpack_require__(101);
11853
12132
 
11854
12133
  var msPattern = /^-ms-/;
11855
12134
 
@@ -11877,7 +12156,7 @@
11877
12156
  module.exports = camelizeStyleName;
11878
12157
 
11879
12158
  /***/ },
11880
- /* 98 */
12159
+ /* 101 */
11881
12160
  /***/ function(module, exports) {
11882
12161
 
11883
12162
  "use strict";
@@ -11913,7 +12192,7 @@
11913
12192
  module.exports = camelize;
11914
12193
 
11915
12194
  /***/ },
11916
- /* 99 */
12195
+ /* 102 */
11917
12196
  /***/ function(module, exports, __webpack_require__) {
11918
12197
 
11919
12198
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -11929,7 +12208,7 @@
11929
12208
 
11930
12209
  'use strict';
11931
12210
 
11932
- var CSSProperty = __webpack_require__(96);
12211
+ var CSSProperty = __webpack_require__(99);
11933
12212
  var warning = __webpack_require__(11);
11934
12213
 
11935
12214
  var isUnitlessNumber = CSSProperty.isUnitlessNumber;
@@ -11998,7 +12277,7 @@
11998
12277
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
11999
12278
 
12000
12279
  /***/ },
12001
- /* 100 */
12280
+ /* 103 */
12002
12281
  /***/ function(module, exports, __webpack_require__) {
12003
12282
 
12004
12283
  /**
@@ -12014,7 +12293,7 @@
12014
12293
 
12015
12294
  'use strict';
12016
12295
 
12017
- var hyphenate = __webpack_require__(101);
12296
+ var hyphenate = __webpack_require__(104);
12018
12297
 
12019
12298
  var msPattern = /^ms-/;
12020
12299
 
@@ -12041,7 +12320,7 @@
12041
12320
  module.exports = hyphenateStyleName;
12042
12321
 
12043
12322
  /***/ },
12044
- /* 101 */
12323
+ /* 104 */
12045
12324
  /***/ function(module, exports) {
12046
12325
 
12047
12326
  'use strict';
@@ -12078,7 +12357,7 @@
12078
12357
  module.exports = hyphenate;
12079
12358
 
12080
12359
  /***/ },
12081
- /* 102 */
12360
+ /* 105 */
12082
12361
  /***/ function(module, exports) {
12083
12362
 
12084
12363
  /**
@@ -12112,7 +12391,7 @@
12112
12391
  module.exports = memoizeStringOnly;
12113
12392
 
12114
12393
  /***/ },
12115
- /* 103 */
12394
+ /* 106 */
12116
12395
  /***/ function(module, exports, __webpack_require__) {
12117
12396
 
12118
12397
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -12128,12 +12407,12 @@
12128
12407
 
12129
12408
  'use strict';
12130
12409
 
12131
- var DOMProperty = __webpack_require__(36);
12132
- var ReactDOMComponentTree = __webpack_require__(35);
12133
- var ReactDOMInstrumentation = __webpack_require__(104);
12134
- var ReactInstrumentation = __webpack_require__(61);
12410
+ var DOMProperty = __webpack_require__(38);
12411
+ var ReactDOMComponentTree = __webpack_require__(37);
12412
+ var ReactDOMInstrumentation = __webpack_require__(107);
12413
+ var ReactInstrumentation = __webpack_require__(63);
12135
12414
 
12136
- var quoteAttributeValueForBrowser = __webpack_require__(108);
12415
+ var quoteAttributeValueForBrowser = __webpack_require__(111);
12137
12416
  var warning = __webpack_require__(11);
12138
12417
 
12139
12418
  var VALID_ATTRIBUTE_NAME_REGEX = new RegExp('^[' + DOMProperty.ATTRIBUTE_NAME_START_CHAR + '][' + DOMProperty.ATTRIBUTE_NAME_CHAR + ']*$');
@@ -12346,7 +12625,7 @@
12346
12625
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
12347
12626
 
12348
12627
  /***/ },
12349
- /* 104 */
12628
+ /* 107 */
12350
12629
  /***/ function(module, exports, __webpack_require__) {
12351
12630
 
12352
12631
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -12365,7 +12644,7 @@
12365
12644
  var debugTool = null;
12366
12645
 
12367
12646
  if (process.env.NODE_ENV !== 'production') {
12368
- var ReactDOMDebugTool = __webpack_require__(105);
12647
+ var ReactDOMDebugTool = __webpack_require__(108);
12369
12648
  debugTool = ReactDOMDebugTool;
12370
12649
  }
12371
12650
 
@@ -12373,7 +12652,7 @@
12373
12652
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
12374
12653
 
12375
12654
  /***/ },
12376
- /* 105 */
12655
+ /* 108 */
12377
12656
  /***/ function(module, exports, __webpack_require__) {
12378
12657
 
12379
12658
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -12389,9 +12668,9 @@
12389
12668
 
12390
12669
  'use strict';
12391
12670
 
12392
- var ReactDOMNullInputValuePropDevtool = __webpack_require__(106);
12393
- var ReactDOMUnknownPropertyDevtool = __webpack_require__(107);
12394
- var ReactDebugTool = __webpack_require__(62);
12671
+ var ReactDOMNullInputValuePropDevtool = __webpack_require__(109);
12672
+ var ReactDOMUnknownPropertyDevtool = __webpack_require__(110);
12673
+ var ReactDebugTool = __webpack_require__(64);
12395
12674
 
12396
12675
  var warning = __webpack_require__(11);
12397
12676
 
@@ -12446,7 +12725,7 @@
12446
12725
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
12447
12726
 
12448
12727
  /***/ },
12449
- /* 106 */
12728
+ /* 109 */
12450
12729
  /***/ function(module, exports, __webpack_require__) {
12451
12730
 
12452
12731
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -12462,7 +12741,7 @@
12462
12741
 
12463
12742
  'use strict';
12464
12743
 
12465
- var ReactComponentTreeDevtool = __webpack_require__(28);
12744
+ var ReactComponentTreeDevtool = __webpack_require__(29);
12466
12745
 
12467
12746
  var warning = __webpack_require__(11);
12468
12747
 
@@ -12495,7 +12774,7 @@
12495
12774
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
12496
12775
 
12497
12776
  /***/ },
12498
- /* 107 */
12777
+ /* 110 */
12499
12778
  /***/ function(module, exports, __webpack_require__) {
12500
12779
 
12501
12780
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -12511,9 +12790,9 @@
12511
12790
 
12512
12791
  'use strict';
12513
12792
 
12514
- var DOMProperty = __webpack_require__(36);
12515
- var EventPluginRegistry = __webpack_require__(43);
12516
- var ReactComponentTreeDevtool = __webpack_require__(28);
12793
+ var DOMProperty = __webpack_require__(38);
12794
+ var EventPluginRegistry = __webpack_require__(45);
12795
+ var ReactComponentTreeDevtool = __webpack_require__(29);
12517
12796
 
12518
12797
  var warning = __webpack_require__(11);
12519
12798
 
@@ -12613,7 +12892,7 @@
12613
12892
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
12614
12893
 
12615
12894
  /***/ },
12616
- /* 108 */
12895
+ /* 111 */
12617
12896
  /***/ function(module, exports, __webpack_require__) {
12618
12897
 
12619
12898
  /**
@@ -12629,7 +12908,7 @@
12629
12908
 
12630
12909
  'use strict';
12631
12910
 
12632
- var escapeTextContentForBrowser = __webpack_require__(85);
12911
+ var escapeTextContentForBrowser = __webpack_require__(88);
12633
12912
 
12634
12913
  /**
12635
12914
  * Escapes attribute value to prevent scripting attacks.
@@ -12644,7 +12923,7 @@
12644
12923
  module.exports = quoteAttributeValueForBrowser;
12645
12924
 
12646
12925
  /***/ },
12647
- /* 109 */
12926
+ /* 112 */
12648
12927
  /***/ function(module, exports, __webpack_require__) {
12649
12928
 
12650
12929
  /**
@@ -12662,13 +12941,13 @@
12662
12941
 
12663
12942
  var _assign = __webpack_require__(4);
12664
12943
 
12665
- var EventConstants = __webpack_require__(40);
12666
- var EventPluginRegistry = __webpack_require__(43);
12667
- var ReactEventEmitterMixin = __webpack_require__(110);
12668
- var ViewportMetrics = __webpack_require__(75);
12944
+ var EventConstants = __webpack_require__(42);
12945
+ var EventPluginRegistry = __webpack_require__(45);
12946
+ var ReactEventEmitterMixin = __webpack_require__(113);
12947
+ var ViewportMetrics = __webpack_require__(78);
12669
12948
 
12670
- var getVendorPrefixedEventName = __webpack_require__(111);
12671
- var isEventSupported = __webpack_require__(69);
12949
+ var getVendorPrefixedEventName = __webpack_require__(114);
12950
+ var isEventSupported = __webpack_require__(72);
12672
12951
 
12673
12952
  /**
12674
12953
  * Summary of `ReactBrowserEventEmitter` event handling:
@@ -12966,7 +13245,7 @@
12966
13245
  module.exports = ReactBrowserEventEmitter;
12967
13246
 
12968
13247
  /***/ },
12969
- /* 110 */
13248
+ /* 113 */
12970
13249
  /***/ function(module, exports, __webpack_require__) {
12971
13250
 
12972
13251
  /**
@@ -12982,7 +13261,7 @@
12982
13261
 
12983
13262
  'use strict';
12984
13263
 
12985
- var EventPluginHub = __webpack_require__(42);
13264
+ var EventPluginHub = __webpack_require__(44);
12986
13265
 
12987
13266
  function runEventQueueInBatch(events) {
12988
13267
  EventPluginHub.enqueueEvents(events);
@@ -13004,7 +13283,7 @@
13004
13283
  module.exports = ReactEventEmitterMixin;
13005
13284
 
13006
13285
  /***/ },
13007
- /* 111 */
13286
+ /* 114 */
13008
13287
  /***/ function(module, exports, __webpack_require__) {
13009
13288
 
13010
13289
  /**
@@ -13020,7 +13299,7 @@
13020
13299
 
13021
13300
  'use strict';
13022
13301
 
13023
- var ExecutionEnvironment = __webpack_require__(48);
13302
+ var ExecutionEnvironment = __webpack_require__(50);
13024
13303
 
13025
13304
  /**
13026
13305
  * Generate a mapping of standard vendor prefixes using the defined style property and event name.
@@ -13110,7 +13389,7 @@
13110
13389
  module.exports = getVendorPrefixedEventName;
13111
13390
 
13112
13391
  /***/ },
13113
- /* 112 */
13392
+ /* 115 */
13114
13393
  /***/ function(module, exports, __webpack_require__) {
13115
13394
 
13116
13395
  /**
@@ -13126,7 +13405,7 @@
13126
13405
 
13127
13406
  'use strict';
13128
13407
 
13129
- var DisabledInputUtils = __webpack_require__(113);
13408
+ var DisabledInputUtils = __webpack_require__(116);
13130
13409
 
13131
13410
  /**
13132
13411
  * Implements a <button> host component that does not receive mouse events
@@ -13139,7 +13418,7 @@
13139
13418
  module.exports = ReactDOMButton;
13140
13419
 
13141
13420
  /***/ },
13142
- /* 113 */
13421
+ /* 116 */
13143
13422
  /***/ function(module, exports) {
13144
13423
 
13145
13424
  /**
@@ -13194,7 +13473,7 @@
13194
13473
  module.exports = DisabledInputUtils;
13195
13474
 
13196
13475
  /***/ },
13197
- /* 114 */
13476
+ /* 117 */
13198
13477
  /***/ function(module, exports, __webpack_require__) {
13199
13478
 
13200
13479
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -13213,11 +13492,11 @@
13213
13492
  var _prodInvariant = __webpack_require__(7),
13214
13493
  _assign = __webpack_require__(4);
13215
13494
 
13216
- var DisabledInputUtils = __webpack_require__(113);
13217
- var DOMPropertyOperations = __webpack_require__(103);
13218
- var LinkedValueUtils = __webpack_require__(115);
13219
- var ReactDOMComponentTree = __webpack_require__(35);
13220
- var ReactUpdates = __webpack_require__(55);
13495
+ var DisabledInputUtils = __webpack_require__(116);
13496
+ var DOMPropertyOperations = __webpack_require__(106);
13497
+ var LinkedValueUtils = __webpack_require__(118);
13498
+ var ReactDOMComponentTree = __webpack_require__(37);
13499
+ var ReactUpdates = __webpack_require__(57);
13221
13500
 
13222
13501
  var invariant = __webpack_require__(8);
13223
13502
  var warning = __webpack_require__(11);
@@ -13265,7 +13544,10 @@
13265
13544
  var hostProps = _assign({
13266
13545
  // Make sure we set .type before any other properties (setting .value
13267
13546
  // before .type means .value is lost in IE11 and below)
13268
- type: undefined
13547
+ type: undefined,
13548
+ // Make sure we set .step before .value (setting .value before .step
13549
+ // means .value is rounded on mount, based upon step precision)
13550
+ step: undefined
13269
13551
  }, DisabledInputUtils.getHostProps(inst, props), {
13270
13552
  defaultChecked: undefined,
13271
13553
  defaultValue: undefined,
@@ -13444,7 +13726,7 @@
13444
13726
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
13445
13727
 
13446
13728
  /***/ },
13447
- /* 115 */
13729
+ /* 118 */
13448
13730
  /***/ function(module, exports, __webpack_require__) {
13449
13731
 
13450
13732
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -13462,8 +13744,9 @@
13462
13744
 
13463
13745
  var _prodInvariant = __webpack_require__(7);
13464
13746
 
13465
- var ReactPropTypes = __webpack_require__(30);
13466
- var ReactPropTypeLocations = __webpack_require__(21);
13747
+ var ReactPropTypes = __webpack_require__(32);
13748
+ var ReactPropTypeLocations = __webpack_require__(22);
13749
+ var ReactPropTypesSecret = __webpack_require__(31);
13467
13750
 
13468
13751
  var invariant = __webpack_require__(8);
13469
13752
  var warning = __webpack_require__(11);
@@ -13526,7 +13809,7 @@
13526
13809
  checkPropTypes: function (tagName, props, owner) {
13527
13810
  for (var propName in propTypes) {
13528
13811
  if (propTypes.hasOwnProperty(propName)) {
13529
- var error = propTypes[propName](props, propName, tagName, ReactPropTypeLocations.prop);
13812
+ var error = propTypes[propName](props, propName, tagName, ReactPropTypeLocations.prop, null, ReactPropTypesSecret);
13530
13813
  }
13531
13814
  if (error instanceof Error && !(error.message in loggedTypeFailures)) {
13532
13815
  // Only monitor this failure once because there tends to be a lot of the
@@ -13585,7 +13868,7 @@
13585
13868
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
13586
13869
 
13587
13870
  /***/ },
13588
- /* 116 */
13871
+ /* 119 */
13589
13872
  /***/ function(module, exports, __webpack_require__) {
13590
13873
 
13591
13874
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -13604,8 +13887,8 @@
13604
13887
  var _assign = __webpack_require__(4);
13605
13888
 
13606
13889
  var ReactChildren = __webpack_require__(5);
13607
- var ReactDOMComponentTree = __webpack_require__(35);
13608
- var ReactDOMSelect = __webpack_require__(117);
13890
+ var ReactDOMComponentTree = __webpack_require__(37);
13891
+ var ReactDOMSelect = __webpack_require__(120);
13609
13892
 
13610
13893
  var warning = __webpack_require__(11);
13611
13894
  var didWarnInvalidOptionChildren = false;
@@ -13714,7 +13997,7 @@
13714
13997
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
13715
13998
 
13716
13999
  /***/ },
13717
- /* 117 */
14000
+ /* 120 */
13718
14001
  /***/ function(module, exports, __webpack_require__) {
13719
14002
 
13720
14003
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -13732,10 +14015,10 @@
13732
14015
 
13733
14016
  var _assign = __webpack_require__(4);
13734
14017
 
13735
- var DisabledInputUtils = __webpack_require__(113);
13736
- var LinkedValueUtils = __webpack_require__(115);
13737
- var ReactDOMComponentTree = __webpack_require__(35);
13738
- var ReactUpdates = __webpack_require__(55);
14018
+ var DisabledInputUtils = __webpack_require__(116);
14019
+ var LinkedValueUtils = __webpack_require__(118);
14020
+ var ReactDOMComponentTree = __webpack_require__(37);
14021
+ var ReactUpdates = __webpack_require__(57);
13739
14022
 
13740
14023
  var warning = __webpack_require__(11);
13741
14024
 
@@ -13920,7 +14203,7 @@
13920
14203
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
13921
14204
 
13922
14205
  /***/ },
13923
- /* 118 */
14206
+ /* 121 */
13924
14207
  /***/ function(module, exports, __webpack_require__) {
13925
14208
 
13926
14209
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -13939,10 +14222,10 @@
13939
14222
  var _prodInvariant = __webpack_require__(7),
13940
14223
  _assign = __webpack_require__(4);
13941
14224
 
13942
- var DisabledInputUtils = __webpack_require__(113);
13943
- var LinkedValueUtils = __webpack_require__(115);
13944
- var ReactDOMComponentTree = __webpack_require__(35);
13945
- var ReactUpdates = __webpack_require__(55);
14225
+ var DisabledInputUtils = __webpack_require__(116);
14226
+ var LinkedValueUtils = __webpack_require__(118);
14227
+ var ReactDOMComponentTree = __webpack_require__(37);
14228
+ var ReactUpdates = __webpack_require__(57);
13946
14229
 
13947
14230
  var invariant = __webpack_require__(8);
13948
14231
  var warning = __webpack_require__(11);
@@ -14081,7 +14364,7 @@
14081
14364
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
14082
14365
 
14083
14366
  /***/ },
14084
- /* 119 */
14367
+ /* 122 */
14085
14368
  /***/ function(module, exports, __webpack_require__) {
14086
14369
 
14087
14370
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -14099,17 +14382,17 @@
14099
14382
 
14100
14383
  var _prodInvariant = __webpack_require__(7);
14101
14384
 
14102
- var ReactComponentEnvironment = __webpack_require__(120);
14103
- var ReactInstanceMap = __webpack_require__(121);
14104
- var ReactInstrumentation = __webpack_require__(61);
14105
- var ReactMultiChildUpdateTypes = __webpack_require__(90);
14385
+ var ReactComponentEnvironment = __webpack_require__(123);
14386
+ var ReactInstanceMap = __webpack_require__(124);
14387
+ var ReactInstrumentation = __webpack_require__(63);
14388
+ var ReactMultiChildUpdateTypes = __webpack_require__(93);
14106
14389
 
14107
14390
  var ReactCurrentOwner = __webpack_require__(10);
14108
- var ReactReconciler = __webpack_require__(58);
14109
- var ReactChildReconciler = __webpack_require__(122);
14391
+ var ReactReconciler = __webpack_require__(60);
14392
+ var ReactChildReconciler = __webpack_require__(125);
14110
14393
 
14111
14394
  var emptyFunction = __webpack_require__(12);
14112
- var flattenChildren = __webpack_require__(129);
14395
+ var flattenChildren = __webpack_require__(133);
14113
14396
  var invariant = __webpack_require__(8);
14114
14397
 
14115
14398
  /**
@@ -14286,7 +14569,7 @@
14286
14569
  return ReactChildReconciler.instantiateChildren(nestedChildren, transaction, context);
14287
14570
  },
14288
14571
 
14289
- _reconcilerUpdateChildren: function (prevChildren, nextNestedChildrenElements, removedNodes, transaction, context) {
14572
+ _reconcilerUpdateChildren: function (prevChildren, nextNestedChildrenElements, mountImages, removedNodes, transaction, context) {
14290
14573
  var nextChildren;
14291
14574
  if (process.env.NODE_ENV !== 'production') {
14292
14575
  if (this._currentElement) {
@@ -14296,12 +14579,12 @@
14296
14579
  } finally {
14297
14580
  ReactCurrentOwner.current = null;
14298
14581
  }
14299
- ReactChildReconciler.updateChildren(prevChildren, nextChildren, removedNodes, transaction, context);
14582
+ ReactChildReconciler.updateChildren(prevChildren, nextChildren, mountImages, removedNodes, transaction, this, this._hostContainerInfo, context);
14300
14583
  return nextChildren;
14301
14584
  }
14302
14585
  }
14303
14586
  nextChildren = flattenChildren(nextNestedChildrenElements);
14304
- ReactChildReconciler.updateChildren(prevChildren, nextChildren, removedNodes, transaction, context);
14587
+ ReactChildReconciler.updateChildren(prevChildren, nextChildren, mountImages, removedNodes, transaction, this, this._hostContainerInfo, context);
14305
14588
  return nextChildren;
14306
14589
  },
14307
14590
 
@@ -14398,7 +14681,8 @@
14398
14681
  _updateChildren: function (nextNestedChildrenElements, transaction, context) {
14399
14682
  var prevChildren = this._renderedChildren;
14400
14683
  var removedNodes = {};
14401
- var nextChildren = this._reconcilerUpdateChildren(prevChildren, nextNestedChildrenElements, removedNodes, transaction, context);
14684
+ var mountImages = [];
14685
+ var nextChildren = this._reconcilerUpdateChildren(prevChildren, nextNestedChildrenElements, mountImages, removedNodes, transaction, context);
14402
14686
  if (!nextChildren && !prevChildren) {
14403
14687
  return;
14404
14688
  }
@@ -14406,8 +14690,10 @@
14406
14690
  var name;
14407
14691
  // `nextIndex` will increment for each child in `nextChildren`, but
14408
14692
  // `lastIndex` will be the last index visited in `prevChildren`.
14409
- var lastIndex = 0;
14410
14693
  var nextIndex = 0;
14694
+ var lastIndex = 0;
14695
+ // `nextMountIndex` will increment for each newly mounted child.
14696
+ var nextMountIndex = 0;
14411
14697
  var lastPlacedNode = null;
14412
14698
  for (name in nextChildren) {
14413
14699
  if (!nextChildren.hasOwnProperty(name)) {
@@ -14426,7 +14712,8 @@
14426
14712
  // The `removedNodes` loop below will actually remove the child.
14427
14713
  }
14428
14714
  // The child must be instantiated before it's mounted.
14429
- updates = enqueue(updates, this._mountChildAtIndex(nextChild, lastPlacedNode, nextIndex, transaction, context));
14715
+ updates = enqueue(updates, this._mountChildAtIndex(nextChild, mountImages[nextMountIndex], lastPlacedNode, nextIndex, transaction, context));
14716
+ nextMountIndex++;
14430
14717
  }
14431
14718
  nextIndex++;
14432
14719
  lastPlacedNode = ReactReconciler.getHostNode(nextChild);
@@ -14509,8 +14796,7 @@
14509
14796
  * @param {ReactReconcileTransaction} transaction
14510
14797
  * @private
14511
14798
  */
14512
- _mountChildAtIndex: function (child, afterNode, index, transaction, context) {
14513
- var mountImage = ReactReconciler.mountComponent(child, transaction, this, this._hostContainerInfo, context);
14799
+ _mountChildAtIndex: function (child, mountImage, afterNode, index, transaction, context) {
14514
14800
  child._mountIndex = index;
14515
14801
  return this.createChild(child, afterNode, mountImage);
14516
14802
  },
@@ -14537,7 +14823,7 @@
14537
14823
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
14538
14824
 
14539
14825
  /***/ },
14540
- /* 120 */
14826
+ /* 123 */
14541
14827
  /***/ function(module, exports, __webpack_require__) {
14542
14828
 
14543
14829
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -14596,7 +14882,7 @@
14596
14882
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
14597
14883
 
14598
14884
  /***/ },
14599
- /* 121 */
14885
+ /* 124 */
14600
14886
  /***/ function(module, exports) {
14601
14887
 
14602
14888
  /**
@@ -14649,7 +14935,7 @@
14649
14935
  module.exports = ReactInstanceMap;
14650
14936
 
14651
14937
  /***/ },
14652
- /* 122 */
14938
+ /* 125 */
14653
14939
  /***/ function(module, exports, __webpack_require__) {
14654
14940
 
14655
14941
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -14665,19 +14951,32 @@
14665
14951
 
14666
14952
  'use strict';
14667
14953
 
14668
- var ReactReconciler = __webpack_require__(58);
14954
+ var ReactReconciler = __webpack_require__(60);
14669
14955
 
14670
- var instantiateReactComponent = __webpack_require__(123);
14956
+ var instantiateReactComponent = __webpack_require__(126);
14671
14957
  var KeyEscapeUtils = __webpack_require__(16);
14672
- var shouldUpdateReactComponent = __webpack_require__(126);
14958
+ var shouldUpdateReactComponent = __webpack_require__(130);
14673
14959
  var traverseAllChildren = __webpack_require__(14);
14674
14960
  var warning = __webpack_require__(11);
14675
14961
 
14962
+ var ReactComponentTreeDevtool;
14963
+
14964
+ if (typeof process !== 'undefined' && process.env && process.env.NODE_ENV === 'test') {
14965
+ // Temporary hack.
14966
+ // Inline requires don't work well with Jest:
14967
+ // https://github.com/facebook/react/issues/7240
14968
+ // Remove the inline requires when we don't need them anymore:
14969
+ // https://github.com/facebook/react/pull/7178
14970
+ ReactComponentTreeDevtool = __webpack_require__(29);
14971
+ }
14972
+
14676
14973
  function instantiateChild(childInstances, child, name, selfDebugID) {
14677
14974
  // We found a component instance.
14678
14975
  var keyUnique = childInstances[name] === undefined;
14679
14976
  if (process.env.NODE_ENV !== 'production') {
14680
- var ReactComponentTreeDevtool = __webpack_require__(28);
14977
+ if (!ReactComponentTreeDevtool) {
14978
+ ReactComponentTreeDevtool = __webpack_require__(29);
14979
+ }
14681
14980
  process.env.NODE_ENV !== 'production' ? warning(keyUnique, 'flattenChildren(...): Encountered two children with the same key, ' + '`%s`. Child keys must be unique; when two children share a key, only ' + 'the first child will be used.%s', KeyEscapeUtils.unescape(name), ReactComponentTreeDevtool.getStackAddendumByID(selfDebugID)) : void 0;
14682
14981
  }
14683
14982
  if (child != null && keyUnique) {
@@ -14726,7 +15025,7 @@
14726
15025
  * @return {?object} A new set of child instances.
14727
15026
  * @internal
14728
15027
  */
14729
- updateChildren: function (prevChildren, nextChildren, removedNodes, transaction, context) {
15028
+ updateChildren: function (prevChildren, nextChildren, mountImages, removedNodes, transaction, hostParent, hostContainerInfo, context) {
14730
15029
  // We currently don't have a way to track moves here but if we use iterators
14731
15030
  // instead of for..in we can zip the iterators and check if an item has
14732
15031
  // moved.
@@ -14755,6 +15054,10 @@
14755
15054
  // The child must be instantiated before it's mounted.
14756
15055
  var nextChildInstance = instantiateReactComponent(nextElement, true);
14757
15056
  nextChildren[name] = nextChildInstance;
15057
+ // Creating mount image now ensures refs are resolved in right order
15058
+ // (see https://github.com/facebook/react/pull/7101 for explanation).
15059
+ var nextChildMountImage = ReactReconciler.mountComponent(nextChildInstance, transaction, hostParent, hostContainerInfo, context);
15060
+ mountImages.push(nextChildMountImage);
14758
15061
  }
14759
15062
  }
14760
15063
  // Unmount children that are no longer present.
@@ -14789,7 +15092,7 @@
14789
15092
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
14790
15093
 
14791
15094
  /***/ },
14792
- /* 123 */
15095
+ /* 126 */
14793
15096
  /***/ function(module, exports, __webpack_require__) {
14794
15097
 
14795
15098
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -14808,10 +15111,10 @@
14808
15111
  var _prodInvariant = __webpack_require__(7),
14809
15112
  _assign = __webpack_require__(4);
14810
15113
 
14811
- var ReactCompositeComponent = __webpack_require__(124);
14812
- var ReactEmptyComponent = __webpack_require__(127);
14813
- var ReactHostComponent = __webpack_require__(128);
14814
- var ReactInstrumentation = __webpack_require__(61);
15114
+ var ReactCompositeComponent = __webpack_require__(127);
15115
+ var ReactEmptyComponent = __webpack_require__(131);
15116
+ var ReactHostComponent = __webpack_require__(132);
15117
+ var ReactInstrumentation = __webpack_require__(63);
14815
15118
 
14816
15119
  var invariant = __webpack_require__(8);
14817
15120
  var warning = __webpack_require__(11);
@@ -14941,7 +15244,7 @@
14941
15244
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
14942
15245
 
14943
15246
  /***/ },
14944
- /* 124 */
15247
+ /* 127 */
14945
15248
  /***/ function(module, exports, __webpack_require__) {
14946
15249
 
14947
15250
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -14960,23 +15263,29 @@
14960
15263
  var _prodInvariant = __webpack_require__(7),
14961
15264
  _assign = __webpack_require__(4);
14962
15265
 
14963
- var ReactComponentEnvironment = __webpack_require__(120);
15266
+ var ReactComponentEnvironment = __webpack_require__(123);
14964
15267
  var ReactCurrentOwner = __webpack_require__(10);
14965
15268
  var ReactElement = __webpack_require__(9);
14966
- var ReactErrorUtils = __webpack_require__(45);
14967
- var ReactInstanceMap = __webpack_require__(121);
14968
- var ReactInstrumentation = __webpack_require__(61);
14969
- var ReactNodeTypes = __webpack_require__(125);
14970
- var ReactPropTypeLocations = __webpack_require__(21);
14971
- var ReactReconciler = __webpack_require__(58);
14972
-
14973
- var checkReactTypeSpec = __webpack_require__(29);
14974
-
15269
+ var ReactErrorUtils = __webpack_require__(47);
15270
+ var ReactInstanceMap = __webpack_require__(124);
15271
+ var ReactInstrumentation = __webpack_require__(63);
15272
+ var ReactNodeTypes = __webpack_require__(128);
15273
+ var ReactPropTypeLocations = __webpack_require__(22);
15274
+ var ReactReconciler = __webpack_require__(60);
15275
+
15276
+ var checkReactTypeSpec = __webpack_require__(30);
14975
15277
  var emptyObject = __webpack_require__(19);
14976
15278
  var invariant = __webpack_require__(8);
14977
- var shouldUpdateReactComponent = __webpack_require__(126);
15279
+ var shallowEqual = __webpack_require__(129);
15280
+ var shouldUpdateReactComponent = __webpack_require__(130);
14978
15281
  var warning = __webpack_require__(11);
14979
15282
 
15283
+ var CompositeTypes = {
15284
+ ImpureClass: 0,
15285
+ PureClass: 1,
15286
+ StatelessFunctional: 2
15287
+ };
15288
+
14980
15289
  function StatelessComponent(Component) {}
14981
15290
  StatelessComponent.prototype.render = function () {
14982
15291
  var Component = ReactInstanceMap.get(this)._currentElement.type;
@@ -15015,7 +15324,11 @@
15015
15324
  }
15016
15325
 
15017
15326
  function shouldConstruct(Component) {
15018
- return Component.prototype && Component.prototype.isReactComponent;
15327
+ return !!(Component.prototype && Component.prototype.isReactComponent);
15328
+ }
15329
+
15330
+ function isPureComponent(Component) {
15331
+ return !!(Component.prototype && Component.prototype.isPureReactComponent);
15019
15332
  }
15020
15333
 
15021
15334
  /**
@@ -15068,6 +15381,7 @@
15068
15381
  construct: function (element) {
15069
15382
  this._currentElement = element;
15070
15383
  this._rootNodeID = null;
15384
+ this._compositeType = null;
15071
15385
  this._instance = null;
15072
15386
  this._hostParent = null;
15073
15387
  this._hostContainerInfo = null;
@@ -15108,6 +15422,8 @@
15108
15422
  * @internal
15109
15423
  */
15110
15424
  mountComponent: function (transaction, hostParent, hostContainerInfo, context) {
15425
+ var _this = this;
15426
+
15111
15427
  this._context = context;
15112
15428
  this._mountOrder = nextMountID++;
15113
15429
  this._hostParent = hostParent;
@@ -15121,15 +15437,23 @@
15121
15437
  var updateQueue = transaction.getUpdateQueue();
15122
15438
 
15123
15439
  // Initialize the public class
15124
- var inst = this._constructComponent(publicProps, publicContext, updateQueue);
15440
+ var doConstruct = shouldConstruct(Component);
15441
+ var inst = this._constructComponent(doConstruct, publicProps, publicContext, updateQueue);
15125
15442
  var renderedElement;
15126
15443
 
15127
15444
  // Support functional components
15128
- if (!shouldConstruct(Component) && (inst == null || inst.render == null)) {
15445
+ if (!doConstruct && (inst == null || inst.render == null)) {
15129
15446
  renderedElement = inst;
15130
15447
  warnIfInvalidElement(Component, renderedElement);
15131
15448
  !(inst === null || inst === false || ReactElement.isValidElement(inst)) ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s(...): A valid React element (or null) must be returned. You may have returned undefined, an array or some other invalid object.', Component.displayName || Component.name || 'Component') : _prodInvariant('105', Component.displayName || Component.name || 'Component') : void 0;
15132
15449
  inst = new StatelessComponent(Component);
15450
+ this._compositeType = CompositeTypes.StatelessFunctional;
15451
+ } else {
15452
+ if (isPureComponent(Component)) {
15453
+ this._compositeType = CompositeTypes.PureClass;
15454
+ } else {
15455
+ this._compositeType = CompositeTypes.ImpureClass;
15456
+ }
15133
15457
  }
15134
15458
 
15135
15459
  if (process.env.NODE_ENV !== 'production') {
@@ -15195,26 +15519,35 @@
15195
15519
  }
15196
15520
  }
15197
15521
 
15522
+ if (process.env.NODE_ENV !== 'production') {
15523
+ if (this._debugID) {
15524
+ var callback = function (component) {
15525
+ return ReactInstrumentation.debugTool.onComponentHasMounted(_this._debugID);
15526
+ };
15527
+ transaction.getReactMountReady().enqueue(callback, this);
15528
+ }
15529
+ }
15530
+
15198
15531
  return markup;
15199
15532
  },
15200
15533
 
15201
- _constructComponent: function (publicProps, publicContext, updateQueue) {
15534
+ _constructComponent: function (doConstruct, publicProps, publicContext, updateQueue) {
15202
15535
  if (process.env.NODE_ENV !== 'production') {
15203
15536
  ReactCurrentOwner.current = this;
15204
15537
  try {
15205
- return this._constructComponentWithoutOwner(publicProps, publicContext, updateQueue);
15538
+ return this._constructComponentWithoutOwner(doConstruct, publicProps, publicContext, updateQueue);
15206
15539
  } finally {
15207
15540
  ReactCurrentOwner.current = null;
15208
15541
  }
15209
15542
  } else {
15210
- return this._constructComponentWithoutOwner(publicProps, publicContext, updateQueue);
15543
+ return this._constructComponentWithoutOwner(doConstruct, publicProps, publicContext, updateQueue);
15211
15544
  }
15212
15545
  },
15213
15546
 
15214
- _constructComponentWithoutOwner: function (publicProps, publicContext, updateQueue) {
15547
+ _constructComponentWithoutOwner: function (doConstruct, publicProps, publicContext, updateQueue) {
15215
15548
  var Component = this._currentElement.type;
15216
15549
  var instanceOrElement;
15217
- if (shouldConstruct(Component)) {
15550
+ if (doConstruct) {
15218
15551
  if (process.env.NODE_ENV !== 'production') {
15219
15552
  if (this._debugID !== 0) {
15220
15553
  ReactInstrumentation.debugTool.onBeginLifeCycleTimer(this._debugID, 'ctor');
@@ -15518,7 +15851,6 @@
15518
15851
 
15519
15852
  var willReceive = false;
15520
15853
  var nextContext;
15521
- var nextProps;
15522
15854
 
15523
15855
  // Determine if the context has changed or not
15524
15856
  if (this._context === nextUnmaskedContext) {
@@ -15528,7 +15860,8 @@
15528
15860
  willReceive = true;
15529
15861
  }
15530
15862
 
15531
- nextProps = nextParentElement.props;
15863
+ var prevProps = prevParentElement.props;
15864
+ var nextProps = nextParentElement.props;
15532
15865
 
15533
15866
  // Not a simple state update but a props update
15534
15867
  if (prevParentElement !== nextParentElement) {
@@ -15555,16 +15888,22 @@
15555
15888
  var nextState = this._processPendingState(nextProps, nextContext);
15556
15889
  var shouldUpdate = true;
15557
15890
 
15558
- if (!this._pendingForceUpdate && inst.shouldComponentUpdate) {
15559
- if (process.env.NODE_ENV !== 'production') {
15560
- if (this._debugID !== 0) {
15561
- ReactInstrumentation.debugTool.onBeginLifeCycleTimer(this._debugID, 'shouldComponentUpdate');
15891
+ if (!this._pendingForceUpdate) {
15892
+ if (inst.shouldComponentUpdate) {
15893
+ if (process.env.NODE_ENV !== 'production') {
15894
+ if (this._debugID !== 0) {
15895
+ ReactInstrumentation.debugTool.onBeginLifeCycleTimer(this._debugID, 'shouldComponentUpdate');
15896
+ }
15562
15897
  }
15563
- }
15564
- shouldUpdate = inst.shouldComponentUpdate(nextProps, nextState, nextContext);
15565
- if (process.env.NODE_ENV !== 'production') {
15566
- if (this._debugID !== 0) {
15567
- ReactInstrumentation.debugTool.onEndLifeCycleTimer(this._debugID, 'shouldComponentUpdate');
15898
+ shouldUpdate = inst.shouldComponentUpdate(nextProps, nextState, nextContext);
15899
+ if (process.env.NODE_ENV !== 'production') {
15900
+ if (this._debugID !== 0) {
15901
+ ReactInstrumentation.debugTool.onEndLifeCycleTimer(this._debugID, 'shouldComponentUpdate');
15902
+ }
15903
+ }
15904
+ } else {
15905
+ if (this._compositeType === CompositeTypes.PureClass) {
15906
+ shouldUpdate = !shallowEqual(prevProps, nextProps) || !shallowEqual(inst.state, nextState);
15568
15907
  }
15569
15908
  }
15570
15909
  }
@@ -15626,6 +15965,8 @@
15626
15965
  * @private
15627
15966
  */
15628
15967
  _performComponentUpdate: function (nextElement, nextProps, nextState, nextContext, transaction, unmaskedContext) {
15968
+ var _this2 = this;
15969
+
15629
15970
  var inst = this._instance;
15630
15971
 
15631
15972
  var hasComponentDidUpdate = Boolean(inst.componentDidUpdate);
@@ -15667,6 +16008,15 @@
15667
16008
  transaction.getReactMountReady().enqueue(inst.componentDidUpdate.bind(inst, prevProps, prevState, prevContext), inst);
15668
16009
  }
15669
16010
  }
16011
+
16012
+ if (process.env.NODE_ENV !== 'production') {
16013
+ if (this._debugID) {
16014
+ var callback = function () {
16015
+ return ReactInstrumentation.debugTool.onComponentHasUpdated(_this2._debugID);
16016
+ };
16017
+ transaction.getReactMountReady().enqueue(callback, this);
16018
+ }
16019
+ }
15670
16020
  },
15671
16021
 
15672
16022
  /**
@@ -15752,11 +16102,15 @@
15752
16102
  */
15753
16103
  _renderValidatedComponent: function () {
15754
16104
  var renderedComponent;
15755
- ReactCurrentOwner.current = this;
15756
- try {
16105
+ if (process.env.NODE_ENV !== 'production' || this._compositeType !== CompositeTypes.StatelessFunctional) {
16106
+ ReactCurrentOwner.current = this;
16107
+ try {
16108
+ renderedComponent = this._renderValidatedComponentWithoutOwnerOrContext();
16109
+ } finally {
16110
+ ReactCurrentOwner.current = null;
16111
+ }
16112
+ } else {
15757
16113
  renderedComponent = this._renderValidatedComponentWithoutOwnerOrContext();
15758
- } finally {
15759
- ReactCurrentOwner.current = null;
15760
16114
  }
15761
16115
  !(
15762
16116
  // TODO: An `isValidNode` function would probably be more appropriate
@@ -15819,7 +16173,7 @@
15819
16173
  */
15820
16174
  getPublicInstance: function () {
15821
16175
  var inst = this._instance;
15822
- if (inst instanceof StatelessComponent) {
16176
+ if (this._compositeType === CompositeTypes.StatelessFunctional) {
15823
16177
  return null;
15824
16178
  }
15825
16179
  return inst;
@@ -15840,7 +16194,7 @@
15840
16194
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
15841
16195
 
15842
16196
  /***/ },
15843
- /* 125 */
16197
+ /* 128 */
15844
16198
  /***/ function(module, exports, __webpack_require__) {
15845
16199
 
15846
16200
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -15886,7 +16240,78 @@
15886
16240
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
15887
16241
 
15888
16242
  /***/ },
15889
- /* 126 */
16243
+ /* 129 */
16244
+ /***/ function(module, exports) {
16245
+
16246
+ /**
16247
+ * Copyright (c) 2013-present, Facebook, Inc.
16248
+ * All rights reserved.
16249
+ *
16250
+ * This source code is licensed under the BSD-style license found in the
16251
+ * LICENSE file in the root directory of this source tree. An additional grant
16252
+ * of patent rights can be found in the PATENTS file in the same directory.
16253
+ *
16254
+ * @typechecks
16255
+ *
16256
+ */
16257
+
16258
+ /*eslint-disable no-self-compare */
16259
+
16260
+ 'use strict';
16261
+
16262
+ var hasOwnProperty = Object.prototype.hasOwnProperty;
16263
+
16264
+ /**
16265
+ * inlined Object.is polyfill to avoid requiring consumers ship their own
16266
+ * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
16267
+ */
16268
+ function is(x, y) {
16269
+ // SameValue algorithm
16270
+ if (x === y) {
16271
+ // Steps 1-5, 7-10
16272
+ // Steps 6.b-6.e: +0 != -0
16273
+ return x !== 0 || 1 / x === 1 / y;
16274
+ } else {
16275
+ // Step 6.a: NaN == NaN
16276
+ return x !== x && y !== y;
16277
+ }
16278
+ }
16279
+
16280
+ /**
16281
+ * Performs equality by iterating through keys on an object and returning false
16282
+ * when any key has values which are not strictly equal between the arguments.
16283
+ * Returns true when the values of all keys are strictly equal.
16284
+ */
16285
+ function shallowEqual(objA, objB) {
16286
+ if (is(objA, objB)) {
16287
+ return true;
16288
+ }
16289
+
16290
+ if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
16291
+ return false;
16292
+ }
16293
+
16294
+ var keysA = Object.keys(objA);
16295
+ var keysB = Object.keys(objB);
16296
+
16297
+ if (keysA.length !== keysB.length) {
16298
+ return false;
16299
+ }
16300
+
16301
+ // Test for A's keys different from B.
16302
+ for (var i = 0; i < keysA.length; i++) {
16303
+ if (!hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
16304
+ return false;
16305
+ }
16306
+ }
16307
+
16308
+ return true;
16309
+ }
16310
+
16311
+ module.exports = shallowEqual;
16312
+
16313
+ /***/ },
16314
+ /* 130 */
15890
16315
  /***/ function(module, exports) {
15891
16316
 
15892
16317
  /**
@@ -15933,7 +16358,7 @@
15933
16358
  module.exports = shouldUpdateReactComponent;
15934
16359
 
15935
16360
  /***/ },
15936
- /* 127 */
16361
+ /* 131 */
15937
16362
  /***/ function(module, exports) {
15938
16363
 
15939
16364
  /**
@@ -15968,7 +16393,7 @@
15968
16393
  module.exports = ReactEmptyComponent;
15969
16394
 
15970
16395
  /***/ },
15971
- /* 128 */
16396
+ /* 132 */
15972
16397
  /***/ function(module, exports, __webpack_require__) {
15973
16398
 
15974
16399
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -16050,7 +16475,7 @@
16050
16475
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
16051
16476
 
16052
16477
  /***/ },
16053
- /* 129 */
16478
+ /* 133 */
16054
16479
  /***/ function(module, exports, __webpack_require__) {
16055
16480
 
16056
16481
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -16071,6 +16496,17 @@
16071
16496
  var traverseAllChildren = __webpack_require__(14);
16072
16497
  var warning = __webpack_require__(11);
16073
16498
 
16499
+ var ReactComponentTreeDevtool;
16500
+
16501
+ if (typeof process !== 'undefined' && process.env && process.env.NODE_ENV === 'test') {
16502
+ // Temporary hack.
16503
+ // Inline requires don't work well with Jest:
16504
+ // https://github.com/facebook/react/issues/7240
16505
+ // Remove the inline requires when we don't need them anymore:
16506
+ // https://github.com/facebook/react/pull/7178
16507
+ ReactComponentTreeDevtool = __webpack_require__(29);
16508
+ }
16509
+
16074
16510
  /**
16075
16511
  * @param {function} traverseContext Context passed through traversal.
16076
16512
  * @param {?ReactComponent} child React child component.
@@ -16083,7 +16519,9 @@
16083
16519
  var result = traverseContext;
16084
16520
  var keyUnique = result[name] === undefined;
16085
16521
  if (process.env.NODE_ENV !== 'production') {
16086
- var ReactComponentTreeDevtool = __webpack_require__(28);
16522
+ if (!ReactComponentTreeDevtool) {
16523
+ ReactComponentTreeDevtool = __webpack_require__(29);
16524
+ }
16087
16525
  process.env.NODE_ENV !== 'production' ? warning(keyUnique, 'flattenChildren(...): Encountered two children with the same key, ' + '`%s`. Child keys must be unique; when two children share a key, only ' + 'the first child will be used.%s', KeyEscapeUtils.unescape(name), ReactComponentTreeDevtool.getStackAddendumByID(selfDebugID)) : void 0;
16088
16526
  }
16089
16527
  if (keyUnique && child != null) {
@@ -16117,7 +16555,7 @@
16117
16555
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
16118
16556
 
16119
16557
  /***/ },
16120
- /* 130 */
16558
+ /* 134 */
16121
16559
  /***/ function(module, exports, __webpack_require__) {
16122
16560
 
16123
16561
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -16136,9 +16574,9 @@
16136
16574
  var _assign = __webpack_require__(4);
16137
16575
 
16138
16576
  var PooledClass = __webpack_require__(6);
16139
- var Transaction = __webpack_require__(67);
16140
- var ReactInstrumentation = __webpack_require__(61);
16141
- var ReactServerUpdateQueue = __webpack_require__(131);
16577
+ var Transaction = __webpack_require__(70);
16578
+ var ReactInstrumentation = __webpack_require__(63);
16579
+ var ReactServerUpdateQueue = __webpack_require__(135);
16142
16580
 
16143
16581
  /**
16144
16582
  * Executed within the scope of the `Transaction` instance. Consider these as
@@ -16213,7 +16651,7 @@
16213
16651
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
16214
16652
 
16215
16653
  /***/ },
16216
- /* 131 */
16654
+ /* 135 */
16217
16655
  /***/ function(module, exports, __webpack_require__) {
16218
16656
 
16219
16657
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -16232,8 +16670,8 @@
16232
16670
 
16233
16671
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
16234
16672
 
16235
- var ReactUpdateQueue = __webpack_require__(132);
16236
- var Transaction = __webpack_require__(67);
16673
+ var ReactUpdateQueue = __webpack_require__(136);
16674
+ var Transaction = __webpack_require__(70);
16237
16675
  var warning = __webpack_require__(11);
16238
16676
 
16239
16677
  function warnNoop(publicInstance, callerName) {
@@ -16360,7 +16798,7 @@
16360
16798
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
16361
16799
 
16362
16800
  /***/ },
16363
- /* 132 */
16801
+ /* 136 */
16364
16802
  /***/ function(module, exports, __webpack_require__) {
16365
16803
 
16366
16804
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -16379,9 +16817,9 @@
16379
16817
  var _prodInvariant = __webpack_require__(7);
16380
16818
 
16381
16819
  var ReactCurrentOwner = __webpack_require__(10);
16382
- var ReactInstanceMap = __webpack_require__(121);
16383
- var ReactInstrumentation = __webpack_require__(61);
16384
- var ReactUpdates = __webpack_require__(55);
16820
+ var ReactInstanceMap = __webpack_require__(124);
16821
+ var ReactInstrumentation = __webpack_require__(63);
16822
+ var ReactUpdates = __webpack_require__(57);
16385
16823
 
16386
16824
  var invariant = __webpack_require__(8);
16387
16825
  var warning = __webpack_require__(11);
@@ -16407,10 +16845,11 @@
16407
16845
  var internalInstance = ReactInstanceMap.get(publicInstance);
16408
16846
  if (!internalInstance) {
16409
16847
  if (process.env.NODE_ENV !== 'production') {
16848
+ var ctor = publicInstance.constructor;
16410
16849
  // Only warn when we have a callerName. Otherwise we should be silent.
16411
16850
  // We're probably calling from enqueueCallback. We don't want to warn
16412
16851
  // there because we already warned for the corresponding lifecycle method.
16413
- process.env.NODE_ENV !== 'production' ? warning(!callerName, '%s(...): Can only update a mounted or mounting component. ' + 'This usually means you called %s() on an unmounted component. ' + 'This is a no-op. Please check the code for the %s component.', callerName, callerName, publicInstance.constructor.displayName) : void 0;
16852
+ process.env.NODE_ENV !== 'production' ? warning(!callerName, '%s(...): Can only update a mounted or mounting component. ' + 'This usually means you called %s() on an unmounted component. ' + 'This is a no-op. Please check the code for the %s component.', callerName, callerName, ctor && (ctor.displayName || ctor.name) || 'ReactClass') : void 0;
16414
16853
  }
16415
16854
  return null;
16416
16855
  }
@@ -16591,78 +17030,7 @@
16591
17030
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
16592
17031
 
16593
17032
  /***/ },
16594
- /* 133 */
16595
- /***/ function(module, exports) {
16596
-
16597
- /**
16598
- * Copyright (c) 2013-present, Facebook, Inc.
16599
- * All rights reserved.
16600
- *
16601
- * This source code is licensed under the BSD-style license found in the
16602
- * LICENSE file in the root directory of this source tree. An additional grant
16603
- * of patent rights can be found in the PATENTS file in the same directory.
16604
- *
16605
- * @typechecks
16606
- *
16607
- */
16608
-
16609
- /*eslint-disable no-self-compare */
16610
-
16611
- 'use strict';
16612
-
16613
- var hasOwnProperty = Object.prototype.hasOwnProperty;
16614
-
16615
- /**
16616
- * inlined Object.is polyfill to avoid requiring consumers ship their own
16617
- * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
16618
- */
16619
- function is(x, y) {
16620
- // SameValue algorithm
16621
- if (x === y) {
16622
- // Steps 1-5, 7-10
16623
- // Steps 6.b-6.e: +0 != -0
16624
- return x !== 0 || 1 / x === 1 / y;
16625
- } else {
16626
- // Step 6.a: NaN == NaN
16627
- return x !== x && y !== y;
16628
- }
16629
- }
16630
-
16631
- /**
16632
- * Performs equality by iterating through keys on an object and returning false
16633
- * when any key has values which are not strictly equal between the arguments.
16634
- * Returns true when the values of all keys are strictly equal.
16635
- */
16636
- function shallowEqual(objA, objB) {
16637
- if (is(objA, objB)) {
16638
- return true;
16639
- }
16640
-
16641
- if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
16642
- return false;
16643
- }
16644
-
16645
- var keysA = Object.keys(objA);
16646
- var keysB = Object.keys(objB);
16647
-
16648
- if (keysA.length !== keysB.length) {
16649
- return false;
16650
- }
16651
-
16652
- // Test for A's keys different from B.
16653
- for (var i = 0; i < keysA.length; i++) {
16654
- if (!hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
16655
- return false;
16656
- }
16657
- }
16658
-
16659
- return true;
16660
- }
16661
-
16662
- module.exports = shallowEqual;
16663
-
16664
- /***/ },
16665
- /* 134 */
17033
+ /* 137 */
16666
17034
  /***/ function(module, exports, __webpack_require__) {
16667
17035
 
16668
17036
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -17037,7 +17405,7 @@
17037
17405
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
17038
17406
 
17039
17407
  /***/ },
17040
- /* 135 */
17408
+ /* 138 */
17041
17409
  /***/ function(module, exports, __webpack_require__) {
17042
17410
 
17043
17411
  /**
@@ -17055,8 +17423,8 @@
17055
17423
 
17056
17424
  var _assign = __webpack_require__(4);
17057
17425
 
17058
- var DOMLazyTree = __webpack_require__(80);
17059
- var ReactDOMComponentTree = __webpack_require__(35);
17426
+ var DOMLazyTree = __webpack_require__(83);
17427
+ var ReactDOMComponentTree = __webpack_require__(37);
17060
17428
 
17061
17429
  var ReactDOMEmptyComponent = function (instantiate) {
17062
17430
  // ReactCompositeComponent uses this:
@@ -17102,7 +17470,7 @@
17102
17470
  module.exports = ReactDOMEmptyComponent;
17103
17471
 
17104
17472
  /***/ },
17105
- /* 136 */
17473
+ /* 139 */
17106
17474
  /***/ function(module, exports, __webpack_require__) {
17107
17475
 
17108
17476
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -17244,7 +17612,7 @@
17244
17612
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
17245
17613
 
17246
17614
  /***/ },
17247
- /* 137 */
17615
+ /* 140 */
17248
17616
  /***/ function(module, exports, __webpack_require__) {
17249
17617
 
17250
17618
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -17263,14 +17631,14 @@
17263
17631
  var _prodInvariant = __webpack_require__(7),
17264
17632
  _assign = __webpack_require__(4);
17265
17633
 
17266
- var DOMChildrenOperations = __webpack_require__(79);
17267
- var DOMLazyTree = __webpack_require__(80);
17268
- var ReactDOMComponentTree = __webpack_require__(35);
17269
- var ReactInstrumentation = __webpack_require__(61);
17634
+ var DOMChildrenOperations = __webpack_require__(82);
17635
+ var DOMLazyTree = __webpack_require__(83);
17636
+ var ReactDOMComponentTree = __webpack_require__(37);
17637
+ var ReactInstrumentation = __webpack_require__(63);
17270
17638
 
17271
- var escapeTextContentForBrowser = __webpack_require__(85);
17639
+ var escapeTextContentForBrowser = __webpack_require__(88);
17272
17640
  var invariant = __webpack_require__(8);
17273
- var validateDOMNesting = __webpack_require__(134);
17641
+ var validateDOMNesting = __webpack_require__(137);
17274
17642
 
17275
17643
  /**
17276
17644
  * Text nodes violate a couple assumptions that React makes about components:
@@ -17421,7 +17789,7 @@
17421
17789
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
17422
17790
 
17423
17791
  /***/ },
17424
- /* 138 */
17792
+ /* 141 */
17425
17793
  /***/ function(module, exports, __webpack_require__) {
17426
17794
 
17427
17795
  /**
@@ -17439,8 +17807,8 @@
17439
17807
 
17440
17808
  var _assign = __webpack_require__(4);
17441
17809
 
17442
- var ReactUpdates = __webpack_require__(55);
17443
- var Transaction = __webpack_require__(67);
17810
+ var ReactUpdates = __webpack_require__(57);
17811
+ var Transaction = __webpack_require__(70);
17444
17812
 
17445
17813
  var emptyFunction = __webpack_require__(12);
17446
17814
 
@@ -17494,7 +17862,7 @@
17494
17862
  module.exports = ReactDefaultBatchingStrategy;
17495
17863
 
17496
17864
  /***/ },
17497
- /* 139 */
17865
+ /* 142 */
17498
17866
  /***/ function(module, exports, __webpack_require__) {
17499
17867
 
17500
17868
  /**
@@ -17512,14 +17880,14 @@
17512
17880
 
17513
17881
  var _assign = __webpack_require__(4);
17514
17882
 
17515
- var EventListener = __webpack_require__(140);
17516
- var ExecutionEnvironment = __webpack_require__(48);
17883
+ var EventListener = __webpack_require__(143);
17884
+ var ExecutionEnvironment = __webpack_require__(50);
17517
17885
  var PooledClass = __webpack_require__(6);
17518
- var ReactDOMComponentTree = __webpack_require__(35);
17519
- var ReactUpdates = __webpack_require__(55);
17886
+ var ReactDOMComponentTree = __webpack_require__(37);
17887
+ var ReactUpdates = __webpack_require__(57);
17520
17888
 
17521
- var getEventTarget = __webpack_require__(68);
17522
- var getUnboundedScrollPosition = __webpack_require__(141);
17889
+ var getEventTarget = __webpack_require__(71);
17890
+ var getUnboundedScrollPosition = __webpack_require__(144);
17523
17891
 
17524
17892
  /**
17525
17893
  * Find the deepest React component completely containing the root of the
@@ -17656,7 +18024,7 @@
17656
18024
  module.exports = ReactEventListener;
17657
18025
 
17658
18026
  /***/ },
17659
- /* 140 */
18027
+ /* 143 */
17660
18028
  /***/ function(module, exports, __webpack_require__) {
17661
18029
 
17662
18030
  /* WEBPACK VAR INJECTION */(function(process) {'use strict';
@@ -17745,7 +18113,7 @@
17745
18113
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
17746
18114
 
17747
18115
  /***/ },
17748
- /* 141 */
18116
+ /* 144 */
17749
18117
  /***/ function(module, exports) {
17750
18118
 
17751
18119
  /**
@@ -17788,7 +18156,7 @@
17788
18156
  module.exports = getUnboundedScrollPosition;
17789
18157
 
17790
18158
  /***/ },
17791
- /* 142 */
18159
+ /* 145 */
17792
18160
  /***/ function(module, exports, __webpack_require__) {
17793
18161
 
17794
18162
  /**
@@ -17804,15 +18172,15 @@
17804
18172
 
17805
18173
  'use strict';
17806
18174
 
17807
- var DOMProperty = __webpack_require__(36);
17808
- var EventPluginHub = __webpack_require__(42);
17809
- var EventPluginUtils = __webpack_require__(44);
17810
- var ReactComponentEnvironment = __webpack_require__(120);
17811
- var ReactClass = __webpack_require__(20);
17812
- var ReactEmptyComponent = __webpack_require__(127);
17813
- var ReactBrowserEventEmitter = __webpack_require__(109);
17814
- var ReactHostComponent = __webpack_require__(128);
17815
- var ReactUpdates = __webpack_require__(55);
18175
+ var DOMProperty = __webpack_require__(38);
18176
+ var EventPluginHub = __webpack_require__(44);
18177
+ var EventPluginUtils = __webpack_require__(46);
18178
+ var ReactComponentEnvironment = __webpack_require__(123);
18179
+ var ReactClass = __webpack_require__(21);
18180
+ var ReactEmptyComponent = __webpack_require__(131);
18181
+ var ReactBrowserEventEmitter = __webpack_require__(112);
18182
+ var ReactHostComponent = __webpack_require__(132);
18183
+ var ReactUpdates = __webpack_require__(57);
17816
18184
 
17817
18185
  var ReactInjection = {
17818
18186
  Component: ReactComponentEnvironment.injection,
@@ -17829,7 +18197,7 @@
17829
18197
  module.exports = ReactInjection;
17830
18198
 
17831
18199
  /***/ },
17832
- /* 143 */
18200
+ /* 146 */
17833
18201
  /***/ function(module, exports, __webpack_require__) {
17834
18202
 
17835
18203
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -17847,13 +18215,13 @@
17847
18215
 
17848
18216
  var _assign = __webpack_require__(4);
17849
18217
 
17850
- var CallbackQueue = __webpack_require__(56);
18218
+ var CallbackQueue = __webpack_require__(58);
17851
18219
  var PooledClass = __webpack_require__(6);
17852
- var ReactBrowserEventEmitter = __webpack_require__(109);
17853
- var ReactInputSelection = __webpack_require__(144);
17854
- var ReactInstrumentation = __webpack_require__(61);
17855
- var Transaction = __webpack_require__(67);
17856
- var ReactUpdateQueue = __webpack_require__(132);
18220
+ var ReactBrowserEventEmitter = __webpack_require__(112);
18221
+ var ReactInputSelection = __webpack_require__(147);
18222
+ var ReactInstrumentation = __webpack_require__(63);
18223
+ var Transaction = __webpack_require__(70);
18224
+ var ReactUpdateQueue = __webpack_require__(136);
17857
18225
 
17858
18226
  /**
17859
18227
  * Ensures that, when possible, the selection range (currently selected text
@@ -18013,7 +18381,7 @@
18013
18381
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
18014
18382
 
18015
18383
  /***/ },
18016
- /* 144 */
18384
+ /* 147 */
18017
18385
  /***/ function(module, exports, __webpack_require__) {
18018
18386
 
18019
18387
  /**
@@ -18029,11 +18397,11 @@
18029
18397
 
18030
18398
  'use strict';
18031
18399
 
18032
- var ReactDOMSelection = __webpack_require__(145);
18400
+ var ReactDOMSelection = __webpack_require__(148);
18033
18401
 
18034
- var containsNode = __webpack_require__(147);
18035
- var focusNode = __webpack_require__(94);
18036
- var getActiveElement = __webpack_require__(150);
18402
+ var containsNode = __webpack_require__(150);
18403
+ var focusNode = __webpack_require__(97);
18404
+ var getActiveElement = __webpack_require__(153);
18037
18405
 
18038
18406
  function isInDocument(node) {
18039
18407
  return containsNode(document.documentElement, node);
@@ -18142,7 +18510,7 @@
18142
18510
  module.exports = ReactInputSelection;
18143
18511
 
18144
18512
  /***/ },
18145
- /* 145 */
18513
+ /* 148 */
18146
18514
  /***/ function(module, exports, __webpack_require__) {
18147
18515
 
18148
18516
  /**
@@ -18158,10 +18526,10 @@
18158
18526
 
18159
18527
  'use strict';
18160
18528
 
18161
- var ExecutionEnvironment = __webpack_require__(48);
18529
+ var ExecutionEnvironment = __webpack_require__(50);
18162
18530
 
18163
- var getNodeForCharacterOffset = __webpack_require__(146);
18164
- var getTextContentAccessor = __webpack_require__(50);
18531
+ var getNodeForCharacterOffset = __webpack_require__(149);
18532
+ var getTextContentAccessor = __webpack_require__(52);
18165
18533
 
18166
18534
  /**
18167
18535
  * While `isCollapsed` is available on the Selection object and `collapsed`
@@ -18359,7 +18727,7 @@
18359
18727
  module.exports = ReactDOMSelection;
18360
18728
 
18361
18729
  /***/ },
18362
- /* 146 */
18730
+ /* 149 */
18363
18731
  /***/ function(module, exports) {
18364
18732
 
18365
18733
  /**
@@ -18438,7 +18806,7 @@
18438
18806
  module.exports = getNodeForCharacterOffset;
18439
18807
 
18440
18808
  /***/ },
18441
- /* 147 */
18809
+ /* 150 */
18442
18810
  /***/ function(module, exports, __webpack_require__) {
18443
18811
 
18444
18812
  'use strict';
@@ -18454,7 +18822,7 @@
18454
18822
  *
18455
18823
  */
18456
18824
 
18457
- var isTextNode = __webpack_require__(148);
18825
+ var isTextNode = __webpack_require__(151);
18458
18826
 
18459
18827
  /*eslint-disable no-bitwise */
18460
18828
 
@@ -18482,7 +18850,7 @@
18482
18850
  module.exports = containsNode;
18483
18851
 
18484
18852
  /***/ },
18485
- /* 148 */
18853
+ /* 151 */
18486
18854
  /***/ function(module, exports, __webpack_require__) {
18487
18855
 
18488
18856
  'use strict';
@@ -18498,7 +18866,7 @@
18498
18866
  * @typechecks
18499
18867
  */
18500
18868
 
18501
- var isNode = __webpack_require__(149);
18869
+ var isNode = __webpack_require__(152);
18502
18870
 
18503
18871
  /**
18504
18872
  * @param {*} object The object to check.
@@ -18511,7 +18879,7 @@
18511
18879
  module.exports = isTextNode;
18512
18880
 
18513
18881
  /***/ },
18514
- /* 149 */
18882
+ /* 152 */
18515
18883
  /***/ function(module, exports) {
18516
18884
 
18517
18885
  'use strict';
@@ -18538,7 +18906,7 @@
18538
18906
  module.exports = isNode;
18539
18907
 
18540
18908
  /***/ },
18541
- /* 150 */
18909
+ /* 153 */
18542
18910
  /***/ function(module, exports) {
18543
18911
 
18544
18912
  'use strict';
@@ -18577,7 +18945,7 @@
18577
18945
  module.exports = getActiveElement;
18578
18946
 
18579
18947
  /***/ },
18580
- /* 151 */
18948
+ /* 154 */
18581
18949
  /***/ function(module, exports) {
18582
18950
 
18583
18951
  /**
@@ -18845,6 +19213,8 @@
18845
19213
  xlinkTitle: 'xlink:title',
18846
19214
  xlinkType: 'xlink:type',
18847
19215
  xmlBase: 'xml:base',
19216
+ xmlns: 0,
19217
+ xmlnsXlink: 'xmlns:xlink',
18848
19218
  xmlLang: 'xml:lang',
18849
19219
  xmlSpace: 'xml:space',
18850
19220
  y: 0,
@@ -18882,7 +19252,7 @@
18882
19252
  module.exports = SVGDOMPropertyConfig;
18883
19253
 
18884
19254
  /***/ },
18885
- /* 152 */
19255
+ /* 155 */
18886
19256
  /***/ function(module, exports, __webpack_require__) {
18887
19257
 
18888
19258
  /**
@@ -18898,17 +19268,17 @@
18898
19268
 
18899
19269
  'use strict';
18900
19270
 
18901
- var EventConstants = __webpack_require__(40);
18902
- var EventPropagators = __webpack_require__(41);
18903
- var ExecutionEnvironment = __webpack_require__(48);
18904
- var ReactDOMComponentTree = __webpack_require__(35);
18905
- var ReactInputSelection = __webpack_require__(144);
18906
- var SyntheticEvent = __webpack_require__(52);
19271
+ var EventConstants = __webpack_require__(42);
19272
+ var EventPropagators = __webpack_require__(43);
19273
+ var ExecutionEnvironment = __webpack_require__(50);
19274
+ var ReactDOMComponentTree = __webpack_require__(37);
19275
+ var ReactInputSelection = __webpack_require__(147);
19276
+ var SyntheticEvent = __webpack_require__(54);
18907
19277
 
18908
- var getActiveElement = __webpack_require__(150);
18909
- var isTextInputElement = __webpack_require__(70);
18910
- var keyOf = __webpack_require__(24);
18911
- var shallowEqual = __webpack_require__(133);
19278
+ var getActiveElement = __webpack_require__(153);
19279
+ var isTextInputElement = __webpack_require__(73);
19280
+ var keyOf = __webpack_require__(25);
19281
+ var shallowEqual = __webpack_require__(129);
18912
19282
 
18913
19283
  var topLevelTypes = EventConstants.topLevelTypes;
18914
19284
 
@@ -19083,7 +19453,7 @@
19083
19453
  module.exports = SelectEventPlugin;
19084
19454
 
19085
19455
  /***/ },
19086
- /* 153 */
19456
+ /* 156 */
19087
19457
  /***/ function(module, exports, __webpack_require__) {
19088
19458
 
19089
19459
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -19101,26 +19471,26 @@
19101
19471
 
19102
19472
  var _prodInvariant = __webpack_require__(7);
19103
19473
 
19104
- var EventConstants = __webpack_require__(40);
19105
- var EventListener = __webpack_require__(140);
19106
- var EventPropagators = __webpack_require__(41);
19107
- var ReactDOMComponentTree = __webpack_require__(35);
19108
- var SyntheticAnimationEvent = __webpack_require__(154);
19109
- var SyntheticClipboardEvent = __webpack_require__(155);
19110
- var SyntheticEvent = __webpack_require__(52);
19111
- var SyntheticFocusEvent = __webpack_require__(156);
19112
- var SyntheticKeyboardEvent = __webpack_require__(157);
19113
- var SyntheticMouseEvent = __webpack_require__(73);
19114
- var SyntheticDragEvent = __webpack_require__(160);
19115
- var SyntheticTouchEvent = __webpack_require__(161);
19116
- var SyntheticTransitionEvent = __webpack_require__(162);
19117
- var SyntheticUIEvent = __webpack_require__(74);
19118
- var SyntheticWheelEvent = __webpack_require__(163);
19474
+ var EventConstants = __webpack_require__(42);
19475
+ var EventListener = __webpack_require__(143);
19476
+ var EventPropagators = __webpack_require__(43);
19477
+ var ReactDOMComponentTree = __webpack_require__(37);
19478
+ var SyntheticAnimationEvent = __webpack_require__(157);
19479
+ var SyntheticClipboardEvent = __webpack_require__(158);
19480
+ var SyntheticEvent = __webpack_require__(54);
19481
+ var SyntheticFocusEvent = __webpack_require__(159);
19482
+ var SyntheticKeyboardEvent = __webpack_require__(160);
19483
+ var SyntheticMouseEvent = __webpack_require__(76);
19484
+ var SyntheticDragEvent = __webpack_require__(163);
19485
+ var SyntheticTouchEvent = __webpack_require__(164);
19486
+ var SyntheticTransitionEvent = __webpack_require__(165);
19487
+ var SyntheticUIEvent = __webpack_require__(77);
19488
+ var SyntheticWheelEvent = __webpack_require__(166);
19119
19489
 
19120
19490
  var emptyFunction = __webpack_require__(12);
19121
- var getEventCharCode = __webpack_require__(158);
19491
+ var getEventCharCode = __webpack_require__(161);
19122
19492
  var invariant = __webpack_require__(8);
19123
- var keyOf = __webpack_require__(24);
19493
+ var keyOf = __webpack_require__(25);
19124
19494
 
19125
19495
  var topLevelTypes = EventConstants.topLevelTypes;
19126
19496
 
@@ -19573,6 +19943,10 @@
19573
19943
  var ON_CLICK_KEY = keyOf({ onClick: null });
19574
19944
  var onClickListeners = {};
19575
19945
 
19946
+ function getDictionaryKey(inst) {
19947
+ return '.' + inst._rootNodeID;
19948
+ }
19949
+
19576
19950
  var SimpleEventPlugin = {
19577
19951
 
19578
19952
  eventTypes: eventTypes,
@@ -19696,19 +20070,19 @@
19696
20070
  // fire. The workaround for this bug involves attaching an empty click
19697
20071
  // listener on the target node.
19698
20072
  if (registrationName === ON_CLICK_KEY) {
19699
- var id = inst._rootNodeID;
20073
+ var key = getDictionaryKey(inst);
19700
20074
  var node = ReactDOMComponentTree.getNodeFromInstance(inst);
19701
- if (!onClickListeners[id]) {
19702
- onClickListeners[id] = EventListener.listen(node, 'click', emptyFunction);
20075
+ if (!onClickListeners[key]) {
20076
+ onClickListeners[key] = EventListener.listen(node, 'click', emptyFunction);
19703
20077
  }
19704
20078
  }
19705
20079
  },
19706
20080
 
19707
20081
  willDeleteListener: function (inst, registrationName) {
19708
20082
  if (registrationName === ON_CLICK_KEY) {
19709
- var id = inst._rootNodeID;
19710
- onClickListeners[id].remove();
19711
- delete onClickListeners[id];
20083
+ var key = getDictionaryKey(inst);
20084
+ onClickListeners[key].remove();
20085
+ delete onClickListeners[key];
19712
20086
  }
19713
20087
  }
19714
20088
 
@@ -19718,7 +20092,7 @@
19718
20092
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
19719
20093
 
19720
20094
  /***/ },
19721
- /* 154 */
20095
+ /* 157 */
19722
20096
  /***/ function(module, exports, __webpack_require__) {
19723
20097
 
19724
20098
  /**
@@ -19734,7 +20108,7 @@
19734
20108
 
19735
20109
  'use strict';
19736
20110
 
19737
- var SyntheticEvent = __webpack_require__(52);
20111
+ var SyntheticEvent = __webpack_require__(54);
19738
20112
 
19739
20113
  /**
19740
20114
  * @interface Event
@@ -19762,7 +20136,7 @@
19762
20136
  module.exports = SyntheticAnimationEvent;
19763
20137
 
19764
20138
  /***/ },
19765
- /* 155 */
20139
+ /* 158 */
19766
20140
  /***/ function(module, exports, __webpack_require__) {
19767
20141
 
19768
20142
  /**
@@ -19778,7 +20152,7 @@
19778
20152
 
19779
20153
  'use strict';
19780
20154
 
19781
- var SyntheticEvent = __webpack_require__(52);
20155
+ var SyntheticEvent = __webpack_require__(54);
19782
20156
 
19783
20157
  /**
19784
20158
  * @interface Event
@@ -19805,7 +20179,7 @@
19805
20179
  module.exports = SyntheticClipboardEvent;
19806
20180
 
19807
20181
  /***/ },
19808
- /* 156 */
20182
+ /* 159 */
19809
20183
  /***/ function(module, exports, __webpack_require__) {
19810
20184
 
19811
20185
  /**
@@ -19821,7 +20195,7 @@
19821
20195
 
19822
20196
  'use strict';
19823
20197
 
19824
- var SyntheticUIEvent = __webpack_require__(74);
20198
+ var SyntheticUIEvent = __webpack_require__(77);
19825
20199
 
19826
20200
  /**
19827
20201
  * @interface FocusEvent
@@ -19846,7 +20220,7 @@
19846
20220
  module.exports = SyntheticFocusEvent;
19847
20221
 
19848
20222
  /***/ },
19849
- /* 157 */
20223
+ /* 160 */
19850
20224
  /***/ function(module, exports, __webpack_require__) {
19851
20225
 
19852
20226
  /**
@@ -19862,11 +20236,11 @@
19862
20236
 
19863
20237
  'use strict';
19864
20238
 
19865
- var SyntheticUIEvent = __webpack_require__(74);
20239
+ var SyntheticUIEvent = __webpack_require__(77);
19866
20240
 
19867
- var getEventCharCode = __webpack_require__(158);
19868
- var getEventKey = __webpack_require__(159);
19869
- var getEventModifierState = __webpack_require__(76);
20241
+ var getEventCharCode = __webpack_require__(161);
20242
+ var getEventKey = __webpack_require__(162);
20243
+ var getEventModifierState = __webpack_require__(79);
19870
20244
 
19871
20245
  /**
19872
20246
  * @interface KeyboardEvent
@@ -19935,7 +20309,7 @@
19935
20309
  module.exports = SyntheticKeyboardEvent;
19936
20310
 
19937
20311
  /***/ },
19938
- /* 158 */
20312
+ /* 161 */
19939
20313
  /***/ function(module, exports) {
19940
20314
 
19941
20315
  /**
@@ -19990,7 +20364,7 @@
19990
20364
  module.exports = getEventCharCode;
19991
20365
 
19992
20366
  /***/ },
19993
- /* 159 */
20367
+ /* 162 */
19994
20368
  /***/ function(module, exports, __webpack_require__) {
19995
20369
 
19996
20370
  /**
@@ -20006,7 +20380,7 @@
20006
20380
 
20007
20381
  'use strict';
20008
20382
 
20009
- var getEventCharCode = __webpack_require__(158);
20383
+ var getEventCharCode = __webpack_require__(161);
20010
20384
 
20011
20385
  /**
20012
20386
  * Normalization of deprecated HTML5 `key` values
@@ -20097,7 +20471,7 @@
20097
20471
  module.exports = getEventKey;
20098
20472
 
20099
20473
  /***/ },
20100
- /* 160 */
20474
+ /* 163 */
20101
20475
  /***/ function(module, exports, __webpack_require__) {
20102
20476
 
20103
20477
  /**
@@ -20113,7 +20487,7 @@
20113
20487
 
20114
20488
  'use strict';
20115
20489
 
20116
- var SyntheticMouseEvent = __webpack_require__(73);
20490
+ var SyntheticMouseEvent = __webpack_require__(76);
20117
20491
 
20118
20492
  /**
20119
20493
  * @interface DragEvent
@@ -20138,7 +20512,7 @@
20138
20512
  module.exports = SyntheticDragEvent;
20139
20513
 
20140
20514
  /***/ },
20141
- /* 161 */
20515
+ /* 164 */
20142
20516
  /***/ function(module, exports, __webpack_require__) {
20143
20517
 
20144
20518
  /**
@@ -20154,9 +20528,9 @@
20154
20528
 
20155
20529
  'use strict';
20156
20530
 
20157
- var SyntheticUIEvent = __webpack_require__(74);
20531
+ var SyntheticUIEvent = __webpack_require__(77);
20158
20532
 
20159
- var getEventModifierState = __webpack_require__(76);
20533
+ var getEventModifierState = __webpack_require__(79);
20160
20534
 
20161
20535
  /**
20162
20536
  * @interface TouchEvent
@@ -20188,7 +20562,7 @@
20188
20562
  module.exports = SyntheticTouchEvent;
20189
20563
 
20190
20564
  /***/ },
20191
- /* 162 */
20565
+ /* 165 */
20192
20566
  /***/ function(module, exports, __webpack_require__) {
20193
20567
 
20194
20568
  /**
@@ -20204,7 +20578,7 @@
20204
20578
 
20205
20579
  'use strict';
20206
20580
 
20207
- var SyntheticEvent = __webpack_require__(52);
20581
+ var SyntheticEvent = __webpack_require__(54);
20208
20582
 
20209
20583
  /**
20210
20584
  * @interface Event
@@ -20232,7 +20606,7 @@
20232
20606
  module.exports = SyntheticTransitionEvent;
20233
20607
 
20234
20608
  /***/ },
20235
- /* 163 */
20609
+ /* 166 */
20236
20610
  /***/ function(module, exports, __webpack_require__) {
20237
20611
 
20238
20612
  /**
@@ -20248,7 +20622,7 @@
20248
20622
 
20249
20623
  'use strict';
20250
20624
 
20251
- var SyntheticMouseEvent = __webpack_require__(73);
20625
+ var SyntheticMouseEvent = __webpack_require__(76);
20252
20626
 
20253
20627
  /**
20254
20628
  * @interface WheelEvent
@@ -20291,7 +20665,7 @@
20291
20665
  module.exports = SyntheticWheelEvent;
20292
20666
 
20293
20667
  /***/ },
20294
- /* 164 */
20668
+ /* 167 */
20295
20669
  /***/ function(module, exports, __webpack_require__) {
20296
20670
 
20297
20671
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -20309,27 +20683,27 @@
20309
20683
 
20310
20684
  var _prodInvariant = __webpack_require__(7);
20311
20685
 
20312
- var DOMLazyTree = __webpack_require__(80);
20313
- var DOMProperty = __webpack_require__(36);
20314
- var ReactBrowserEventEmitter = __webpack_require__(109);
20686
+ var DOMLazyTree = __webpack_require__(83);
20687
+ var DOMProperty = __webpack_require__(38);
20688
+ var ReactBrowserEventEmitter = __webpack_require__(112);
20315
20689
  var ReactCurrentOwner = __webpack_require__(10);
20316
- var ReactDOMComponentTree = __webpack_require__(35);
20317
- var ReactDOMContainerInfo = __webpack_require__(165);
20318
- var ReactDOMFeatureFlags = __webpack_require__(166);
20690
+ var ReactDOMComponentTree = __webpack_require__(37);
20691
+ var ReactDOMContainerInfo = __webpack_require__(168);
20692
+ var ReactDOMFeatureFlags = __webpack_require__(169);
20319
20693
  var ReactElement = __webpack_require__(9);
20320
- var ReactFeatureFlags = __webpack_require__(57);
20321
- var ReactInstanceMap = __webpack_require__(121);
20322
- var ReactInstrumentation = __webpack_require__(61);
20323
- var ReactMarkupChecksum = __webpack_require__(167);
20324
- var ReactReconciler = __webpack_require__(58);
20325
- var ReactUpdateQueue = __webpack_require__(132);
20326
- var ReactUpdates = __webpack_require__(55);
20694
+ var ReactFeatureFlags = __webpack_require__(59);
20695
+ var ReactInstanceMap = __webpack_require__(124);
20696
+ var ReactInstrumentation = __webpack_require__(63);
20697
+ var ReactMarkupChecksum = __webpack_require__(170);
20698
+ var ReactReconciler = __webpack_require__(60);
20699
+ var ReactUpdateQueue = __webpack_require__(136);
20700
+ var ReactUpdates = __webpack_require__(57);
20327
20701
 
20328
20702
  var emptyObject = __webpack_require__(19);
20329
- var instantiateReactComponent = __webpack_require__(123);
20703
+ var instantiateReactComponent = __webpack_require__(126);
20330
20704
  var invariant = __webpack_require__(8);
20331
- var setInnerHTML = __webpack_require__(82);
20332
- var shouldUpdateReactComponent = __webpack_require__(126);
20705
+ var setInnerHTML = __webpack_require__(85);
20706
+ var shouldUpdateReactComponent = __webpack_require__(130);
20333
20707
  var warning = __webpack_require__(11);
20334
20708
 
20335
20709
  var ATTR_NAME = DOMProperty.ID_ATTRIBUTE_NAME;
@@ -20796,7 +21170,7 @@
20796
21170
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
20797
21171
 
20798
21172
  /***/ },
20799
- /* 165 */
21173
+ /* 168 */
20800
21174
  /***/ function(module, exports, __webpack_require__) {
20801
21175
 
20802
21176
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -20812,7 +21186,7 @@
20812
21186
 
20813
21187
  'use strict';
20814
21188
 
20815
- var validateDOMNesting = __webpack_require__(134);
21189
+ var validateDOMNesting = __webpack_require__(137);
20816
21190
 
20817
21191
  var DOC_NODE_TYPE = 9;
20818
21192
 
@@ -20835,7 +21209,7 @@
20835
21209
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
20836
21210
 
20837
21211
  /***/ },
20838
- /* 166 */
21212
+ /* 169 */
20839
21213
  /***/ function(module, exports) {
20840
21214
 
20841
21215
  /**
@@ -20858,7 +21232,7 @@
20858
21232
  module.exports = ReactDOMFeatureFlags;
20859
21233
 
20860
21234
  /***/ },
20861
- /* 167 */
21235
+ /* 170 */
20862
21236
  /***/ function(module, exports, __webpack_require__) {
20863
21237
 
20864
21238
  /**
@@ -20874,7 +21248,7 @@
20874
21248
 
20875
21249
  'use strict';
20876
21250
 
20877
- var adler32 = __webpack_require__(168);
21251
+ var adler32 = __webpack_require__(171);
20878
21252
 
20879
21253
  var TAG_END = /\/?>/;
20880
21254
  var COMMENT_START = /^<\!\-\-/;
@@ -20913,7 +21287,7 @@
20913
21287
  module.exports = ReactMarkupChecksum;
20914
21288
 
20915
21289
  /***/ },
20916
- /* 168 */
21290
+ /* 171 */
20917
21291
  /***/ function(module, exports) {
20918
21292
 
20919
21293
  /**
@@ -20962,7 +21336,7 @@
20962
21336
  module.exports = adler32;
20963
21337
 
20964
21338
  /***/ },
20965
- /* 169 */
21339
+ /* 172 */
20966
21340
  /***/ function(module, exports, __webpack_require__) {
20967
21341
 
20968
21342
  /* WEBPACK VAR INJECTION */(function(process) {/**
@@ -20981,10 +21355,10 @@
20981
21355
  var _prodInvariant = __webpack_require__(7);
20982
21356
 
20983
21357
  var ReactCurrentOwner = __webpack_require__(10);
20984
- var ReactDOMComponentTree = __webpack_require__(35);
20985
- var ReactInstanceMap = __webpack_require__(121);
21358
+ var ReactDOMComponentTree = __webpack_require__(37);
21359
+ var ReactInstanceMap = __webpack_require__(124);
20986
21360
 
20987
- var getHostComponentFromComposite = __webpack_require__(170);
21361
+ var getHostComponentFromComposite = __webpack_require__(173);
20988
21362
  var invariant = __webpack_require__(8);
20989
21363
  var warning = __webpack_require__(11);
20990
21364
 
@@ -21028,7 +21402,7 @@
21028
21402
  /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))
21029
21403
 
21030
21404
  /***/ },
21031
- /* 170 */
21405
+ /* 173 */
21032
21406
  /***/ function(module, exports, __webpack_require__) {
21033
21407
 
21034
21408
  /**
@@ -21044,7 +21418,7 @@
21044
21418
 
21045
21419
  'use strict';
21046
21420
 
21047
- var ReactNodeTypes = __webpack_require__(125);
21421
+ var ReactNodeTypes = __webpack_require__(128);
21048
21422
 
21049
21423
  function getHostComponentFromComposite(inst) {
21050
21424
  var type;
@@ -21063,7 +21437,7 @@
21063
21437
  module.exports = getHostComponentFromComposite;
21064
21438
 
21065
21439
  /***/ },
21066
- /* 171 */
21440
+ /* 174 */
21067
21441
  /***/ function(module, exports, __webpack_require__) {
21068
21442
 
21069
21443
  /**
@@ -21079,7 +21453,7 @@
21079
21453
 
21080
21454
  'use strict';
21081
21455
 
21082
- var ReactMount = __webpack_require__(164);
21456
+ var ReactMount = __webpack_require__(167);
21083
21457
 
21084
21458
  module.exports = ReactMount.renderSubtreeIntoContainer;
21085
21459