@lingk/sync 0.1.74 → 0.1.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/main.js CHANGED
@@ -335,7 +335,7 @@ module.exports =
335
335
  });
336
336
 
337
337
  var resources = [];
338
- bundle.resources && bundle.resources.forEach(function (rsc) {
338
+ bundle.resources && bundle.resources.forEach(function (rsc, rscIndex) {
339
339
 
340
340
  //get resource and joinKey for bundleResource (check both metadatas)
341
341
  var resourceProvider = rsc.provider.replace('Reader', '').toLowerCase();
@@ -398,7 +398,11 @@ module.exports =
398
398
  provider: resourceProvider
399
399
  }, deNestedJoinKey.property && { joinKeyName: deNestedJoinKey.property }, joinKeyResourceName && { joinKeyResource: joinKeyResourceName }, deNestedJoinKey.parentsArray && deNestedJoinKey.parentsArray.length > 0 && { joinKeyParents: deNestedJoinKey.parentsArray }, deNestedPrimaryKey.property && { primaryKeyName: deNestedPrimaryKey.property }, primaryKeyResourceName && { primaryKeyResource: primaryKeyResourceName }, deNestedPrimaryKey.parentsArray && deNestedPrimaryKey.parentsArray.length > 0 && { primaryKeyParents: deNestedPrimaryKey.parentsArray }, {
400
400
  joinType: rsc.joinType || 'LEFT JOIN'
401
- }, rscResource.parentRef && { parentRef: rscResource.parentRef }, rsc.parameterFilters && { parameterFilters: rsc.parameterFilters }));
401
+ }, rscResource.parentRef && { parentRef: rscResource.parentRef }, rsc.parameterFilters && { parameterFilters: rsc.parameterFilters }, {
402
+ level: rsc.level || (rscIndex === 0 ? 0 : 1)
403
+ }, primaryKeyResourceName && {
404
+ parentNameAndProvider: primaryKeyResourceName + '_' + resourceProvider
405
+ }));
402
406
  }
403
407
  }); // end bundle.resource.forEach
404
408
 
@@ -625,7 +629,7 @@ module.exports =
625
629
  /***/ function(module, exports, __webpack_require__) {
626
630
 
627
631
  var dP = __webpack_require__(18)
628
- , createDesc = __webpack_require__(34);
632
+ , createDesc = __webpack_require__(35);
629
633
  module.exports = __webpack_require__(9) ? function(object, key, value){
630
634
  return dP.f(object, key, createDesc(1, value));
631
635
  } : function(object, key, value){
@@ -707,7 +711,7 @@ module.exports =
707
711
  /***/ function(module, exports, __webpack_require__) {
708
712
 
709
713
  // to indexed object, toObject with fallback for non-array-like ES3 strings
710
- var IObject = __webpack_require__(31)
714
+ var IObject = __webpack_require__(32)
711
715
  , defined = __webpack_require__(16);
712
716
  module.exports = function(it){
713
717
  return IObject(defined(it));
@@ -924,8 +928,8 @@ module.exports =
924
928
  /* 25 */
925
929
  /***/ function(module, exports, __webpack_require__) {
926
930
 
927
- var shared = __webpack_require__(35)('keys')
928
- , uid = __webpack_require__(37);
931
+ var shared = __webpack_require__(36)('keys')
932
+ , uid = __webpack_require__(38);
929
933
  module.exports = function(key){
930
934
  return shared[key] || (shared[key] = uid(key));
931
935
  };
@@ -1495,6 +1499,42 @@ module.exports =
1495
1499
 
1496
1500
  /***/ },
1497
1501
  /* 27 */
1502
+ /***/ function(module, exports, __webpack_require__) {
1503
+
1504
+ /**
1505
+ * Copyright 2013-present, Facebook, Inc.
1506
+ * All rights reserved.
1507
+ *
1508
+ * This source code is licensed under the BSD-style license found in the
1509
+ * LICENSE file in the root directory of this source tree. An additional grant
1510
+ * of patent rights can be found in the PATENTS file in the same directory.
1511
+ */
1512
+
1513
+ if (false) {
1514
+ var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
1515
+ Symbol.for &&
1516
+ Symbol.for('react.element')) ||
1517
+ 0xeac7;
1518
+
1519
+ var isValidElement = function(object) {
1520
+ return typeof object === 'object' &&
1521
+ object !== null &&
1522
+ object.$$typeof === REACT_ELEMENT_TYPE;
1523
+ };
1524
+
1525
+ // By explicitly using `prop-types` you are opting into new development behavior.
1526
+ // http://fb.me/prop-types-in-prod
1527
+ var throwOnDirectAccess = true;
1528
+ module.exports = require('./factoryWithTypeCheckers')(isValidElement, throwOnDirectAccess);
1529
+ } else {
1530
+ // By explicitly using `prop-types` you are opting into new production behavior.
1531
+ // http://fb.me/prop-types-in-prod
1532
+ module.exports = __webpack_require__(176)();
1533
+ }
1534
+
1535
+
1536
+ /***/ },
1537
+ /* 28 */
1498
1538
  /***/ function(module, exports, __webpack_require__) {
1499
1539
 
1500
1540
  'use strict';
@@ -1507,15 +1547,15 @@ module.exports =
1507
1547
 
1508
1548
  var _react2 = _interopRequireDefault(_react);
1509
1549
 
1510
- var _propTypes = __webpack_require__(39);
1550
+ var _propTypes = __webpack_require__(27);
1511
1551
 
1512
1552
  var _propTypes2 = _interopRequireDefault(_propTypes);
1513
1553
 
1514
- var _TransitionGroup = __webpack_require__(203);
1554
+ var _TransitionGroup = __webpack_require__(204);
1515
1555
 
1516
1556
  var _TransitionGroup2 = _interopRequireDefault(_TransitionGroup);
1517
1557
 
1518
- var _CSSTransitionGroupChild = __webpack_require__(202);
1558
+ var _CSSTransitionGroupChild = __webpack_require__(203);
1519
1559
 
1520
1560
  var _CSSTransitionGroupChild2 = _interopRequireDefault(_CSSTransitionGroupChild);
1521
1561
 
@@ -1593,7 +1633,7 @@ module.exports =
1593
1633
  module.exports = exports['default'];
1594
1634
 
1595
1635
  /***/ },
1596
- /* 28 */
1636
+ /* 29 */
1597
1637
  /***/ function(module, exports) {
1598
1638
 
1599
1639
  var toString = {}.toString;
@@ -1603,7 +1643,7 @@ module.exports =
1603
1643
  };
1604
1644
 
1605
1645
  /***/ },
1606
- /* 29 */
1646
+ /* 30 */
1607
1647
  /***/ function(module, exports, __webpack_require__) {
1608
1648
 
1609
1649
  var isObject = __webpack_require__(14)
@@ -1615,7 +1655,7 @@ module.exports =
1615
1655
  };
1616
1656
 
1617
1657
  /***/ },
1618
- /* 30 */
1658
+ /* 31 */
1619
1659
  /***/ function(module, exports) {
1620
1660
 
1621
1661
  // IE 8- don't enum bug keys
@@ -1624,30 +1664,30 @@ module.exports =
1624
1664
  ).split(',');
1625
1665
 
1626
1666
  /***/ },
1627
- /* 31 */
1667
+ /* 32 */
1628
1668
  /***/ function(module, exports, __webpack_require__) {
1629
1669
 
1630
1670
  // fallback for non-array-like ES3 and non-enumerable old V8 strings
1631
- var cof = __webpack_require__(28);
1671
+ var cof = __webpack_require__(29);
1632
1672
  module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
1633
1673
  return cof(it) == 'String' ? it.split('') : Object(it);
1634
1674
  };
1635
1675
 
1636
1676
  /***/ },
1637
- /* 32 */,
1638
- /* 33 */
1677
+ /* 33 */,
1678
+ /* 34 */
1639
1679
  /***/ function(module, exports, __webpack_require__) {
1640
1680
 
1641
1681
  // 19.1.2.14 / 15.2.3.14 Object.keys(O)
1642
1682
  var $keys = __webpack_require__(46)
1643
- , enumBugKeys = __webpack_require__(30);
1683
+ , enumBugKeys = __webpack_require__(31);
1644
1684
 
1645
1685
  module.exports = Object.keys || function keys(O){
1646
1686
  return $keys(O, enumBugKeys);
1647
1687
  };
1648
1688
 
1649
1689
  /***/ },
1650
- /* 34 */
1690
+ /* 35 */
1651
1691
  /***/ function(module, exports) {
1652
1692
 
1653
1693
  module.exports = function(bitmap, value){
@@ -1660,7 +1700,7 @@ module.exports =
1660
1700
  };
1661
1701
 
1662
1702
  /***/ },
1663
- /* 35 */
1703
+ /* 36 */
1664
1704
  /***/ function(module, exports, __webpack_require__) {
1665
1705
 
1666
1706
  var global = __webpack_require__(6)
@@ -1671,7 +1711,7 @@ module.exports =
1671
1711
  };
1672
1712
 
1673
1713
  /***/ },
1674
- /* 36 */
1714
+ /* 37 */
1675
1715
  /***/ function(module, exports, __webpack_require__) {
1676
1716
 
1677
1717
  // 7.1.13 ToObject(argument)
@@ -1681,7 +1721,7 @@ module.exports =
1681
1721
  };
1682
1722
 
1683
1723
  /***/ },
1684
- /* 37 */
1724
+ /* 38 */
1685
1725
  /***/ function(module, exports) {
1686
1726
 
1687
1727
  var id = 0
@@ -1691,7 +1731,7 @@ module.exports =
1691
1731
  };
1692
1732
 
1693
1733
  /***/ },
1694
- /* 38 */
1734
+ /* 39 */
1695
1735
  /***/ function(module, exports, __webpack_require__) {
1696
1736
 
1697
1737
  var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -1744,42 +1784,6 @@ module.exports =
1744
1784
  }());
1745
1785
 
1746
1786
 
1747
- /***/ },
1748
- /* 39 */
1749
- /***/ function(module, exports, __webpack_require__) {
1750
-
1751
- /**
1752
- * Copyright 2013-present, Facebook, Inc.
1753
- * All rights reserved.
1754
- *
1755
- * This source code is licensed under the BSD-style license found in the
1756
- * LICENSE file in the root directory of this source tree. An additional grant
1757
- * of patent rights can be found in the PATENTS file in the same directory.
1758
- */
1759
-
1760
- if (false) {
1761
- var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
1762
- Symbol.for &&
1763
- Symbol.for('react.element')) ||
1764
- 0xeac7;
1765
-
1766
- var isValidElement = function(object) {
1767
- return typeof object === 'object' &&
1768
- object !== null &&
1769
- object.$$typeof === REACT_ELEMENT_TYPE;
1770
- };
1771
-
1772
- // By explicitly using `prop-types` you are opting into new development behavior.
1773
- // http://fb.me/prop-types-in-prod
1774
- var throwOnDirectAccess = true;
1775
- module.exports = require('./factoryWithTypeCheckers')(isValidElement, throwOnDirectAccess);
1776
- } else {
1777
- // By explicitly using `prop-types` you are opting into new production behavior.
1778
- // http://fb.me/prop-types-in-prod
1779
- module.exports = __webpack_require__(176)();
1780
- }
1781
-
1782
-
1783
1787
  /***/ },
1784
1788
  /* 40 */
1785
1789
  /***/ function(module, exports) {
@@ -1899,7 +1903,7 @@ module.exports =
1899
1903
  /***/ function(module, exports, __webpack_require__) {
1900
1904
 
1901
1905
  module.exports = !__webpack_require__(9) && !__webpack_require__(12)(function(){
1902
- return Object.defineProperty(__webpack_require__(29)('div'), 'a', {get: function(){ return 7; }}).a != 7;
1906
+ return Object.defineProperty(__webpack_require__(30)('div'), 'a', {get: function(){ return 7; }}).a != 7;
1903
1907
  });
1904
1908
 
1905
1909
  /***/ },
@@ -2664,7 +2668,7 @@ module.exports =
2664
2668
 
2665
2669
  // BUNDLES
2666
2670
  if (group.resources) {
2667
- group.resources = group.resources.map(function (rsc) {
2671
+ group.resources = group.resources.map(function (rsc, rscIndex) {
2668
2672
  //get resource source (check both metadatas)
2669
2673
  var dataSourceMetadata = rsc.provider.toLowerCase() === targetProvider.toLowerCase() ? targetMetadata : sourceMetadata;
2670
2674
  var sourceResource = dataSourceMetadata.find(function (metaRsc) {
@@ -2715,7 +2719,10 @@ module.exports =
2715
2719
  joinType: rsc.joinType
2716
2720
  }, rsc.recordTypeId && { recordTypeId: rsc.recordTypeId }, rsc.parameterFilters && { parameterFilters: rsc.parameterFilters.filter(function (pf) {
2717
2721
  return pf.val;
2718
- }) });
2722
+ }) }, {
2723
+ level: rsc.level || (rscIndex === 0 ? 0 : 1),
2724
+ parentNameAndProvider: primaryKeyResource + '_' + rsc.provider.toLowerCase()
2725
+ });
2719
2726
  } else return null;
2720
2727
  });
2721
2728
  }
@@ -4616,7 +4623,7 @@ module.exports =
4616
4623
 
4617
4624
  var _react2 = _interopRequireDefault(_react);
4618
4625
 
4619
- var _propTypes = __webpack_require__(39);
4626
+ var _propTypes = __webpack_require__(27);
4620
4627
 
4621
4628
  var _propTypes2 = _interopRequireDefault(_propTypes);
4622
4629
 
@@ -5473,7 +5480,7 @@ module.exports =
5473
5480
  };
5474
5481
  }
5475
5482
 
5476
- function callGenerateRecipe(tenantId, appId, typeId, typeGuid, title, piGuid, mappingGuid, sourceMetadata, destinationMetadata, isManagedPackage, onGenerationError) {
5483
+ function callGenerateRecipe(tenantId, appId, typeId, typeGuid, title, piGuid, mappingGuid, sourceMetadata, destinationMetadata, isManagedPackage, onGenerationError, envName) {
5477
5484
  return function (dispatch, getState, api) {
5478
5485
  var _getState13 = getState(),
5479
5486
  config = _getState13.config;
@@ -5487,7 +5494,8 @@ module.exports =
5487
5494
  "schemaMappingGuid": mappingGuid,
5488
5495
  "sourceSchema": sourceMetadata,
5489
5496
  "destinationSchema": destinationMetadata,
5490
- "isManagedPackage": isManagedPackage
5497
+ "isManagedPackage": isManagedPackage,
5498
+ "environment": envName
5491
5499
  }
5492
5500
  }).then(function (res) {
5493
5501
  return res;
@@ -5512,7 +5520,7 @@ module.exports =
5512
5520
  }
5513
5521
  }).then(function (pi) {
5514
5522
  if (map.mappings && map.mappings.length > 0 && deployment) {
5515
- dispatch(callGenerateRecipe(tenantId, appId, typeId, typeGuid, title, pi.productizedIntegrationGuid, map.schemaMappingGuid, sourceMetadata, destinationMetadata, isManagedPackage, onGenerationError)).then(function (generatedRecipe) {
5523
+ dispatch(callGenerateRecipe(tenantId, appId, typeId, typeGuid, title, pi.productizedIntegrationGuid, map.schemaMappingGuid, sourceMetadata, destinationMetadata, isManagedPackage, onGenerationError, envName)).then(function (generatedRecipe) {
5516
5524
  onGenerate();
5517
5525
  if (deployment) {
5518
5526
  if (deployment.type === 'once') {
@@ -5747,7 +5755,7 @@ module.exports =
5747
5755
  function tryGetCredentials(tenantId, appId, credentialType, credsConfig, envName) {
5748
5756
  return function (dispatch, getState, api) {
5749
5757
  var isOauth = credsConfig && credsConfig.length === 1 && credsConfig[0] === 'Oauth';
5750
- if (!isOauth) {
5758
+ if (!isOauth && envName) {
5751
5759
  return dispatch(getCredentialForEnvironment(tenantId, appId, credentialType, envName));
5752
5760
  } else return Promise.resolve(null);
5753
5761
  };
@@ -5762,7 +5770,7 @@ module.exports =
5762
5770
  metadataApi = wiz.metadataApi;
5763
5771
 
5764
5772
  var isOauth = credentials && credentials[0] === 'Oauth';
5765
- if (savedEndpoint && savedEndpoint.length > 8 || isOauth) {
5773
+ if (envName && (isOauth || savedEndpoint && savedEndpoint.length > 8)) {
5766
5774
  var isReload = true;
5767
5775
  var environment = { name: envName };
5768
5776
  return dispatch(callGetMetadata(tenantId, appId, mode, type, metadataEndpoint, metadataApi, savedEndpoint, credentials, null, actualCreds, environment, isReload));
@@ -5838,8 +5846,8 @@ module.exports =
5838
5846
  type: types.SET_WIZARD_ENVIRONMENTS,
5839
5847
  data: data.map(function (e) {
5840
5848
  return {
5841
- environmentId: e.Id,
5842
- name: e.Name
5849
+ environmentId: e.id,
5850
+ name: e.name
5843
5851
  };
5844
5852
  })
5845
5853
  });
@@ -6777,6 +6785,10 @@ module.exports =
6777
6785
 
6778
6786
  var _reduxForm = __webpack_require__(2);
6779
6787
 
6788
+ var _reactDropzone = __webpack_require__(201);
6789
+
6790
+ var _reactDropzone2 = _interopRequireDefault(_reactDropzone);
6791
+
6780
6792
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6781
6793
 
6782
6794
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -6859,8 +6871,8 @@ module.exports =
6859
6871
  onGenerateUrl: function onGenerateUrl(urlType) {
6860
6872
  return getOauthUrl(urlType, mode);
6861
6873
  },
6862
- mode: mode, inputs: inputs, checking: checking }) : isSFTP ? _react2.default.createElement(SFTP, { step: step, wizard: wizard, onCheck: check, onPasteHeader: true,
6863
- mode: mode, inputs: inputs, checking: checking }) : _react2.default.createElement(
6874
+ mode: mode, inputs: inputs, checking: checking }) : isSFTP ? _react2.default.createElement(SFTP, { step: step, wizard: wizard, onCheck: check,
6875
+ mode: mode, checking: checking }) : _react2.default.createElement(
6864
6876
  'div',
6865
6877
  null,
6866
6878
  _react2.default.createElement(
@@ -6953,34 +6965,63 @@ module.exports =
6953
6965
  var _this = _possibleConstructorReturn(this, (SFTP.__proto__ || Object.getPrototypeOf(SFTP)).call(this));
6954
6966
 
6955
6967
  _this.state = {
6956
- resources: []
6968
+ files: []
6957
6969
  };
6958
6970
  return _this;
6959
6971
  }
6960
6972
 
6961
6973
  _createClass(SFTP, [{
6962
- key: 'pasteHeader',
6963
- value: function pasteHeader(e) {
6964
- e.clipboardData.items[0].getAsString(function (txt) {
6965
- if (txt) {
6966
- // split on tab (coming out of google sheets or excel... maybe check for commas too?)
6967
- var rows = txt.split('\t');
6968
- console.log(rows);
6969
- }
6970
- });
6974
+ key: 'onDrop',
6975
+ value: function onDrop(files) {
6976
+ console.log(files);
6977
+ this.setState({ files: files });
6971
6978
  }
6972
6979
  }, {
6973
6980
  key: 'render',
6974
6981
  value: function render() {
6975
- var inputs = this.props.inputs;
6982
+ var files = this.state.files;
6976
6983
 
6977
- var Textarea = inputs.Textarea;
6984
+ var hasFile = files && files.length > 0;
6978
6985
  return _react2.default.createElement(
6979
6986
  'div',
6980
6987
  null,
6981
- 'Paste the Header Row of your CSV here, to',
6982
- _react2.default.createElement('br', null),
6983
- _react2.default.createElement(Textarea, { onPaste: this.pasteHeader })
6988
+ _react2.default.createElement(
6989
+ 'div',
6990
+ { style: { display: 'inline-block' } },
6991
+ _react2.default.createElement(
6992
+ _reactDropzone2.default,
6993
+ { onDrop: this.onDrop.bind(this),
6994
+ className: 'dropzone' },
6995
+ _react2.default.createElement(
6996
+ 'p',
6997
+ null,
6998
+ 'Drop one or more files here, or click to select files to upload.'
6999
+ )
7000
+ )
7001
+ ),
7002
+ _react2.default.createElement(
7003
+ 'aside',
7004
+ { style: { marginLeft: 30 } },
7005
+ _react2.default.createElement(
7006
+ 'h3',
7007
+ { style: { marginTop: 10 } },
7008
+ 'Dropped files'
7009
+ ),
7010
+ _react2.default.createElement(
7011
+ 'ul',
7012
+ null,
7013
+ files.map(function (f) {
7014
+ return _react2.default.createElement(
7015
+ 'li',
7016
+ { key: f.name },
7017
+ f.name,
7018
+ ' - ',
7019
+ f.size,
7020
+ ' bytes'
7021
+ );
7022
+ })
7023
+ )
7024
+ )
6984
7025
  );
6985
7026
  }
6986
7027
  }]);
@@ -7181,7 +7222,7 @@ module.exports =
7181
7222
 
7182
7223
  var _react2 = _interopRequireDefault(_react);
7183
7224
 
7184
- var _CSSTransitionGroup = __webpack_require__(27);
7225
+ var _CSSTransitionGroup = __webpack_require__(28);
7185
7226
 
7186
7227
  var _CSSTransitionGroup2 = _interopRequireDefault(_CSSTransitionGroup);
7187
7228
 
@@ -8141,7 +8182,7 @@ module.exports =
8141
8182
 
8142
8183
  var _react2 = _interopRequireDefault(_react);
8143
8184
 
8144
- var _CSSTransitionGroup = __webpack_require__(27);
8185
+ var _CSSTransitionGroup = __webpack_require__(28);
8145
8186
 
8146
8187
  var _CSSTransitionGroup2 = _interopRequireDefault(_CSSTransitionGroup);
8147
8188
 
@@ -8290,9 +8331,12 @@ module.exports =
8290
8331
  if (this.finalDelta) {
8291
8332
  this.props.changeEntityOrder(this.props.resourceGroupIndex, i, i + this.finalDelta);
8292
8333
  }
8293
- this.setState({ yPositions: this.elementReorders.map(function () {
8334
+ this.setState({
8335
+ yPositions: this.elementReorders.map(function () {
8294
8336
  return 0;
8295
- }) });
8337
+ }),
8338
+ currentlyBeingDragged: null
8339
+ });
8296
8340
  this.props.unPick();
8297
8341
  e.stopPropagation();
8298
8342
  }
@@ -8314,10 +8358,10 @@ module.exports =
8314
8358
  leftClicked = _props3.leftClicked,
8315
8359
  sourceSchema = _props3.sourceSchema,
8316
8360
  destinationSchema = _props3.destinationSchema,
8317
- overflowHidden = _props3.overflowHidden,
8318
8361
  showOverflow = _props3.showOverflow,
8319
8362
  step = _props3.step,
8320
- isReverse = _props3.isReverse;
8363
+ isReverse = _props3.isReverse,
8364
+ changeEntityLevel = _props3.changeEntityLevel;
8321
8365
  var parameterModalResourceIndex = this.state.parameterModalResourceIndex;
8322
8366
 
8323
8367
 
@@ -8346,37 +8390,6 @@ module.exports =
8346
8390
  })
8347
8391
  })*/
8348
8392
 
8349
- var primaryRscVals = null;
8350
- var primaryRscSectionLabels = null;
8351
-
8352
- if (group && group.resources && group.resources[0]) {
8353
- var primaryResourceSchema = group.resources[0].provider.toLowerCase() === step.destinationProvider.toLowerCase() ? destinationSchema : sourceSchema;
8354
- primaryRscVals = primaryResourceSchema && primaryResourceSchema.find(function (defaultRsc) {
8355
- return defaultRsc.name === group.resources[0].name;
8356
- }) && [primaryResourceSchema.find(function (defaultRsc) {
8357
- return defaultRsc.name === group.resources[0].name;
8358
- }).properties.filter(function (f) {
8359
- return !f.fake;
8360
- })];
8361
-
8362
- var primaryHasParameters = group.resources[0].parentRef && group.resources[0].parentRef.length > 0 && group.resources[0].parentRef.some(function (pr) {
8363
- return pr.foreignKeyFields && pr.foreignKeyFields.length > 0;
8364
- });
8365
-
8366
- primaryRscSectionLabels = [group.resources[0].name];
8367
-
8368
- if (primaryHasParameters) {
8369
- group.resources[0].parentRef.forEach(function (pr) {
8370
- var params = [];
8371
- primaryRscSectionLabels.push(pr.ref.split('/')[2]);
8372
- pr.foreignKeyFields.forEach(function (fkf) {
8373
- params.push({ label: fkf });
8374
- });
8375
- primaryRscVals.push(params);
8376
- });
8377
- }
8378
- }
8379
-
8380
8393
  return _react2.default.createElement(
8381
8394
  'div',
8382
8395
  { style: { position: 'relative' } },
@@ -8414,9 +8427,8 @@ module.exports =
8414
8427
  'div',
8415
8428
  { style: {
8416
8429
  background: 'white', width: 720, minHeight: 245,
8417
- overflow: overflowHidden ? 'hidden' : 'visible',
8418
8430
  border: '1px solid rgb(204, 205, 207)', position: 'relative',
8419
- height: groupResourcesLength * 58 + 84 + 78
8431
+ height: groupResourcesLength * 60 + 84 + 78
8420
8432
  } },
8421
8433
  _react2.default.createElement(
8422
8434
  'div',
@@ -8438,6 +8450,46 @@ module.exports =
8438
8450
  { style: { position: 'relative' } },
8439
8451
  group && group.resources && group.resources.map(function (rsc, i) {
8440
8452
 
8453
+ /* PARENT RESOURCE (to join against)*/
8454
+ var primaryResource = null;
8455
+ var primaryRscVals = null;
8456
+ var primaryRscSectionLabels = null;
8457
+
8458
+ if (rsc.parentNameAndProvider) {
8459
+ primaryResource = group.resources.find(function (gr) {
8460
+ return rsc.parentNameAndProvider.toLowerCase() === (gr.name + '_' + gr.provider).toLowerCase();
8461
+ });
8462
+
8463
+ if (primaryResource) {
8464
+ var primaryResourceSchema = primaryResource && primaryResource.provider.toLowerCase() === step.destinationProvider.toLowerCase() ? destinationSchema : sourceSchema;
8465
+ primaryRscVals = primaryResourceSchema && primaryResourceSchema.find(function (defaultRsc) {
8466
+ return defaultRsc.name === primaryResource.name;
8467
+ }) && [primaryResourceSchema.find(function (defaultRsc) {
8468
+ return defaultRsc.name === primaryResource.name;
8469
+ }).properties.filter(function (f) {
8470
+ return !f.fake;
8471
+ })];
8472
+
8473
+ var primaryHasParameters = primaryResource.parentRef && primaryResource.parentRef.length > 0 && primaryResource.parentRef.some(function (pr) {
8474
+ return pr.foreignKeyFields && pr.foreignKeyFields.length > 0;
8475
+ });
8476
+
8477
+ primaryRscSectionLabels = [primaryResource.name];
8478
+
8479
+ if (primaryHasParameters) {
8480
+ primaryResource.parentRef.forEach(function (pr) {
8481
+ var params = [];
8482
+ primaryRscSectionLabels.push(pr.ref.split('/')[2]);
8483
+ pr.foreignKeyFields.forEach(function (fkf) {
8484
+ params.push({ label: fkf });
8485
+ });
8486
+ primaryRscVals.push(params);
8487
+ });
8488
+ }
8489
+ }
8490
+ }
8491
+
8492
+ /* THIS RESOURCE*/
8441
8493
  var isDestinationEntity = rsc.provider.toLowerCase() === step.destinationProvider.toLowerCase();
8442
8494
  var isSelected = selectedEntity.name === rsc.name && selectedEntity.isDestinationEntity === isDestinationEntity;
8443
8495
 
@@ -8445,6 +8497,10 @@ module.exports =
8445
8497
  return pr.foreignKeyFields && pr.foreignKeyFields.length > 0;
8446
8498
  });
8447
8499
 
8500
+ var hasChildren = group && group.resources && group.resources.find(function (r) {
8501
+ return r.primaryKeyResource === rsc.name;
8502
+ }) ? true : false;
8503
+
8448
8504
  var rscSchema = isDestinationEntity ? destinationSchema : sourceSchema;
8449
8505
  var joinRscVals = rscSchema && rscSchema.find(function (defaultRsc) {
8450
8506
  return defaultRsc.name === rsc.name;
@@ -8485,13 +8541,6 @@ module.exports =
8485
8541
  joinKeyLabel += rsc.joinKeyName;
8486
8542
  }
8487
8543
 
8488
- /*let isDependency = false
8489
- group.resources && group.resources.forEach(gr=>{
8490
- if(gr.parentRef && gr.parentRef.find(pr=>pr===rsc.name)){
8491
- isDependency=true
8492
- }
8493
- })*/
8494
-
8495
8544
  var rscName = rsc.name;
8496
8545
  if (isReverse) {
8497
8546
  if (rsc.provider.toLowerCase() === step.sourceProvider.toLowerCase()) {
@@ -8503,195 +8552,228 @@ module.exports =
8503
8552
  }
8504
8553
  }
8505
8554
 
8555
+ var canMoveLeft = false;
8556
+ var canMoveRight = false;
8557
+ if (i > 1) {
8558
+ var beforeResourceLevel = group.resources[i - 1].level;
8559
+ if (rsc.level > 1 && rsc.level <= beforeResourceLevel + 1) {
8560
+ canMoveLeft = true;
8561
+ }
8562
+ if (rsc.level <= beforeResourceLevel) {
8563
+ canMoveRight = true;
8564
+ }
8565
+ }
8566
+
8506
8567
  return _react2.default.createElement(
8507
8568
  _reactDraggable2.default,
8508
8569
  { axis: 'y', bounds: 'parent', key: i, handle: '.drag-handle',
8509
8570
  position: { x: 0, y: _this3.state.yPositions[i] },
8510
8571
  onStart: function onStart(e, v) {
8511
8572
  return _this3.handleDragStart(e, v, i);
8512
- }, onDrag: _this3.handleDrag, onStop: _this3.handleDragEnd },
8573
+ },
8574
+ onDrag: _this3.handleDrag, onStop: _this3.handleDragEnd,
8575
+ disabled: hasChildren },
8513
8576
  _react2.default.createElement(
8514
8577
  'div',
8515
- { className: 'schema-panel', style: { zIndex: _this3.state.zIndexes[i] }, onClick: function onClick() {
8516
- return _this3.raiseUp(i);
8517
- } },
8578
+ { style: { position: 'relative', zIndex: _this3.state.zIndexes[i] } },
8579
+ _react2.default.createElement(LevelArrows, { hasChildren: hasChildren,
8580
+ onChange: function onChange(c) {
8581
+ return changeEntityLevel(resourceGroupIndex, i, rsc.level + c);
8582
+ },
8583
+ canMoveRight: canMoveRight, canMoveLeft: canMoveLeft
8584
+ }),
8518
8585
  _react2.default.createElement(
8519
8586
  'div',
8520
- { className: 'schema-panel-header' },
8587
+ { className: 'schema-panel',
8588
+ onClick: function onClick() {
8589
+ return _this3.raiseUp(i);
8590
+ },
8591
+ style: { marginLeft: rsc.level * 18, borderRadius: 4,
8592
+ border: '1px solid rgb(\n ' + (0 + rsc.level * 10) + ',\n ' + (50 + rsc.level * 15) + ',\n ' + (100 + rsc.level * 20) + ')'
8593
+ } },
8521
8594
  _react2.default.createElement(
8522
8595
  'div',
8523
- { style: { display: 'inline-block', verticalAlign: 'top', margin: '4px 4px 0px 0px', cursor: 'pointer' }, onClick: function onClick(e) {
8524
- return e.stopPropagation();
8525
- },
8526
- className: 'drag-handle' },
8596
+ { className: 'schema-panel-header', style: {
8597
+ background: 'rgb(\n ' + (50 + rsc.level * 10) + ',\n ' + (120 + rsc.level * 15) + ',\n ' + (180 + rsc.level * 25) + ')'
8598
+ } },
8527
8599
  _react2.default.createElement(
8528
- 'svg',
8529
- { width: '24', height: '24', viewBox: '0 0 24 24' },
8530
- _react2.default.createElement('path', { fill: '#FFFFFF', d: 'M9,3H11V5H9V3M13,3H15V5H13V3M9,7H11V9H9V7M13,7H15V9H13V7M9,11H11V13H9V11M13,11H15V13H13V11M9,15H11V17H9V15M13,15H15V17H13V15M9,19H11V21H9V19M13,19H15V21H13V19Z' })
8531
- )
8532
- ),
8533
- _react2.default.createElement(
8534
- 'div',
8535
- { style: { padding: '7px 0px 0px 5px', fontSize: '14px',
8536
- display: 'inline-block' } },
8600
+ 'div',
8601
+ { style: { display: 'inline-block', verticalAlign: 'top', margin: '4px 4px 0px 0px', cursor: hasChildren ? 'auto' : 'pointer' },
8602
+ onClick: function onClick(e) {
8603
+ return e.stopPropagation();
8604
+ },
8605
+ className: 'drag-handle' },
8606
+ _react2.default.createElement(
8607
+ 'svg',
8608
+ { width: '24', height: '24', viewBox: '0 0 24 24',
8609
+ fill: hasChildren ? '#AAAAAA' : '#FFFFFF' },
8610
+ _react2.default.createElement('path', { d: 'M9,3H11V5H9V3M13,3H15V5H13V3M9,7H11V9H9V7M13,7H15V9H13V7M9,11H11V13H9V11M13,11H15V13H13V11M9,15H11V17H9V15M13,15H15V17H13V15M9,19H11V21H9V19M13,19H15V21H13V19Z' })
8611
+ )
8612
+ ),
8537
8613
  _react2.default.createElement(
8538
- 'span',
8539
- { style: { maxWidth: 260, overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', display: 'inline-block' } },
8540
- rscName
8614
+ 'div',
8615
+ { style: { padding: '7px 0px 0px 5px', fontSize: '14px',
8616
+ display: 'inline-block' } },
8617
+ _react2.default.createElement(
8618
+ 'span',
8619
+ { style: { maxWidth: 260 - rsc.level * 20, overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', display: 'inline-block' } },
8620
+ rscName
8621
+ ),
8622
+ hasParameters && _react2.default.createElement(
8623
+ 'div',
8624
+ { className: 'accordion-panel-parameters',
8625
+ onClick: function onClick() {
8626
+ return _this3.setState({
8627
+ parameterModalResourceIndex: i
8628
+ });
8629
+ } },
8630
+ _react2.default.createElement(
8631
+ 'svg',
8632
+ { fill: '#FFFFFF', height: '28', viewBox: '0 0 24 24', width: '28' },
8633
+ _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
8634
+ _react2.default.createElement('path', { d: 'M12 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm7-7H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-1.75 9c0 .23-.02.46-.05.68l1.48 1.16c.13.11.17.3.08.45l-1.4 2.42c-.09.15-.27.21-.43.15l-1.74-.7c-.36.28-.76.51-1.18.69l-.26 1.85c-.03.17-.18.3-.35.3h-2.8c-.17 0-.32-.13-.35-.29l-.26-1.85c-.43-.18-.82-.41-1.18-.69l-1.74.7c-.16.06-.34 0-.43-.15l-1.4-2.42c-.09-.15-.05-.34.08-.45l1.48-1.16c-.03-.23-.05-.46-.05-.69 0-.23.02-.46.05-.68l-1.48-1.16c-.13-.11-.17-.3-.08-.45l1.4-2.42c.09-.15.27-.21.43-.15l1.74.7c.36-.28.76-.51 1.18-.69l.26-1.85c.03-.17.18-.3.35-.3h2.8c.17 0 .32.13.35.29l.26 1.85c.43.18.82.41 1.18.69l1.74-.7c.16-.06.34 0 .43.15l1.4 2.42c.09.15.05.34-.08.45l-1.48 1.16c.03.23.05.46.05.69z' })
8635
+ )
8636
+ )
8541
8637
  ),
8542
- hasParameters && _react2.default.createElement(
8638
+ _react2.default.createElement(
8543
8639
  'div',
8544
- { className: 'accordion-panel-parameters',
8545
- onClick: function onClick() {
8546
- return _this3.setState({
8547
- parameterModalResourceIndex: i
8548
- });
8640
+ { className: 'accordion-panel-close',
8641
+ onClick: function onClick(e) {
8642
+ return didRemoveEntity(e, resourceGroupIndex, rsc.name, i);
8549
8643
  } },
8550
8644
  _react2.default.createElement(
8551
8645
  'svg',
8552
- { fill: '#FFFFFF', height: '28', viewBox: '0 0 24 24', width: '28' },
8553
- _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
8554
- _react2.default.createElement('path', { d: 'M12 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm7-7H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-1.75 9c0 .23-.02.46-.05.68l1.48 1.16c.13.11.17.3.08.45l-1.4 2.42c-.09.15-.27.21-.43.15l-1.74-.7c-.36.28-.76.51-1.18.69l-.26 1.85c-.03.17-.18.3-.35.3h-2.8c-.17 0-.32-.13-.35-.29l-.26-1.85c-.43-.18-.82-.41-1.18-.69l-1.74.7c-.16.06-.34 0-.43-.15l-1.4-2.42c-.09-.15-.05-.34.08-.45l1.48-1.16c-.03-.23-.05-.46-.05-.69 0-.23.02-.46.05-.68l-1.48-1.16c-.13-.11-.17-.3-.08-.45l1.4-2.42c.09-.15.27-.21.43-.15l1.74.7c.36-.28.76-.51 1.18-.69l.26-1.85c.03-.17.18-.3.35-.3h2.8c.17 0 .32.13.35.29l.26 1.85c.43.18.82.41 1.18.69l1.74-.7c.16-.06.34 0 .43.15l1.4 2.42c.09.15.05.34-.08.45l-1.48 1.16c.03.23.05.46.05.69z' })
8646
+ { style: { width: 18, height: 18 }, viewBox: '0 0 60 60' },
8647
+ _react2.default.createElement('path', { style: { strokeWidth: 5, strokeLinecap: 'round' },
8648
+ d: 'M 15.674663,15.572746 L 44.587629,44.485711 M 45.118838,15.420972 L 15.522889,45.016920' })
8555
8649
  )
8556
- )
8557
- ),
8558
- _react2.default.createElement(
8559
- 'div',
8560
- { className: 'accordion-panel-close',
8561
- onClick: function onClick(e) {
8562
- return didRemoveEntity(e, resourceGroupIndex, rsc.name, i);
8563
- } },
8650
+ ),
8564
8651
  _react2.default.createElement(
8565
- 'svg',
8566
- { style: { width: 18, height: 18 }, viewBox: '0 0 60 60' },
8567
- _react2.default.createElement('path', { style: { strokeWidth: 5, strokeLinecap: 'round' },
8568
- d: 'M 15.674663,15.572746 L 44.587629,44.485711 M 45.118838,15.420972 L 15.522889,45.016920' })
8652
+ 'div',
8653
+ { className: 'accordion-panel-toggle' + (rsc.joinKeyName && rsc.primaryKeyName ? ' join-ok' : '') },
8654
+ i !== 0 ? _react2.default.createElement(
8655
+ Button,
8656
+ { type: 'brand', iconAlign: 'right',
8657
+ icon: isSelected ? 'chevronup' : 'chevrondown',
8658
+ style: { paddingRight: 38 },
8659
+ onClick: function onClick() {
8660
+ _this3.props.pickEntity({
8661
+ name: rsc.name,
8662
+ isDestinationEntity: rsc.provider.toLowerCase() === step.destinationProvider.toLowerCase()
8663
+ });
8664
+ } },
8665
+ joinKeyLabel && primaryKeyLabel ? primaryKeyLabel + ' = ' + joinKeyLabel : 'Configure Join'
8666
+ ) : null
8569
8667
  )
8570
8668
  ),
8571
8669
  _react2.default.createElement(
8572
- 'div',
8573
- { style: { verticalAlign: 'top', float: 'right', marginRight: 8 } },
8574
- i !== 0 ? _react2.default.createElement(
8575
- Button,
8576
- { type: 'brand', icon: isSelected ? 'chevronup' : 'chevrondown',
8577
- iconAlign: 'right', className: rsc.joinKeyName && rsc.primaryKeyName ? 'join-ok' : '',
8578
- onClick: function onClick() {
8579
- _this3.props.pickEntity({
8580
- name: rsc.name,
8581
- isDestinationEntity: rsc.provider.toLowerCase() === step.destinationProvider.toLowerCase()
8582
- });
8583
- } },
8584
- joinKeyLabel && primaryKeyLabel ? primaryKeyLabel + ' = ' + joinKeyLabel : 'Configure Join'
8585
- ) : null
8586
- )
8587
- ),
8588
- _react2.default.createElement(
8589
- _CSSTransitionGroup2.default,
8590
- { transitionName: 'panel-collapse', transitionEnterTimeout: 250, transitionLeaveTimeout: 250 },
8591
- isSelected ? _react2.default.createElement(
8592
- 'div',
8593
- { className: 'schema-accordion-collapse' },
8594
- _react2.default.createElement(
8670
+ _CSSTransitionGroup2.default,
8671
+ { transitionName: 'panel-collapse', transitionEnterTimeout: 250, transitionLeaveTimeout: 250 },
8672
+ isSelected ? _react2.default.createElement(
8595
8673
  'div',
8596
- { style: { display: 'inline-block', width: '33%', marginTop: 6, verticalAlign: 'top', position: 'relative' } },
8674
+ { className: 'schema-accordion-collapse' },
8597
8675
  _react2.default.createElement(
8598
8676
  'div',
8599
- { className: 'labelz', style: { marginBottom: 6 } },
8600
- 'Primary Object Join Key'
8601
- ),
8602
- _react2.default.createElement(
8603
- Tooltip,
8604
- { nubbin: 'left-top', popStyle: { width: 180, left: -5 },
8605
- wrapStyle: { left: 148, top: 2, zIndex: 6003 } },
8677
+ { style: { display: 'inline-block', width: '33%', marginTop: 6, verticalAlign: 'top', position: 'relative' } },
8606
8678
  _react2.default.createElement(
8607
- 'p',
8608
- null,
8609
- 'Choose a Join Key for the Primary object in this group (',
8610
- group.resources[0].name,
8611
- ')'
8612
- )
8679
+ 'div',
8680
+ { className: 'labelz', style: { marginBottom: 6 } },
8681
+ 'Primary Object Join Key'
8682
+ ),
8683
+ _react2.default.createElement(
8684
+ Tooltip,
8685
+ { nubbin: 'left-top', popStyle: { width: 180, left: -5 },
8686
+ wrapStyle: { left: 148, top: 2, zIndex: 6003 } },
8687
+ _react2.default.createElement(
8688
+ 'p',
8689
+ null,
8690
+ 'Choose a Join Key for the Primary object in this group (',
8691
+ primaryResource && primaryResource.name,
8692
+ ')'
8693
+ )
8694
+ ),
8695
+ _react2.default.createElement(_selectWrapper2.default, { label: primaryKeyLabel || 'Primary Join Key',
8696
+ onSelect: function onSelect(v, idx, field) {
8697
+ selectPrimaryKey(v, field, resourceGroupIndex, i);
8698
+ },
8699
+ onClick: showOverflow,
8700
+ type: 'neutral', inputs: inputs,
8701
+ values: primaryRscVals,
8702
+ sectionLabels: primaryRscSectionLabels,
8703
+ fieldPropLabel: 'label',
8704
+ selectedValues: [{
8705
+ label: rsc.primaryKeyName,
8706
+ parents: rsc.primaryKeyParents
8707
+ }],
8708
+ sectionLabelSuffix: 'Fields'
8709
+ })
8613
8710
  ),
8614
- _react2.default.createElement(_selectWrapper2.default, { label: primaryKeyLabel || 'Primary Join Key',
8615
- onSelect: function onSelect(v, idx, field) {
8616
- selectPrimaryKey(v, field, resourceGroupIndex, i);
8617
- },
8618
- onClick: showOverflow,
8619
- type: 'neutral', inputs: inputs,
8620
- values: primaryRscVals,
8621
- sectionLabels: primaryRscSectionLabels,
8622
- fieldPropLabel: 'label',
8623
- selectedValues: [{
8624
- label: rsc.primaryKeyName,
8625
- parents: rsc.primaryKeyParents
8626
- }],
8627
- sectionLabelSuffix: 'Fields'
8628
- })
8629
- ),
8630
- _react2.default.createElement(
8631
- 'div',
8632
- { style: { display: 'inline-block', width: '33%', marginTop: 6, verticalAlign: 'top', position: 'relative' } },
8633
8711
  _react2.default.createElement(
8634
8712
  'div',
8635
- { className: 'labelz', style: { marginBottom: 6 } },
8636
- 'Join Key'
8637
- ),
8638
- _react2.default.createElement(
8639
- Tooltip,
8640
- { nubbin: 'left-top', popStyle: { width: 170, left: -5 },
8641
- wrapStyle: { left: 50, top: 2, zIndex: 6002 } },
8713
+ { style: { display: 'inline-block', width: '33%', marginTop: 6, verticalAlign: 'top', position: 'relative' } },
8642
8714
  _react2.default.createElement(
8643
- 'p',
8644
- null,
8645
- 'Choose a Join Key for this object (',
8646
- rsc.name,
8647
- '), whose value should match the Primary Object Join Key.'
8648
- )
8715
+ 'div',
8716
+ { className: 'labelz', style: { marginBottom: 6 } },
8717
+ 'Join Key'
8718
+ ),
8719
+ _react2.default.createElement(
8720
+ Tooltip,
8721
+ { nubbin: 'left-top', popStyle: { width: 170, left: -5 },
8722
+ wrapStyle: { left: 50, top: 2, zIndex: 6002 } },
8723
+ _react2.default.createElement(
8724
+ 'p',
8725
+ null,
8726
+ 'Choose a Join Key for this object (',
8727
+ rsc.name,
8728
+ '), whose value should match the Primary Object Join Key.'
8729
+ )
8730
+ ),
8731
+ _react2.default.createElement(_selectWrapper2.default, { label: joinKeyLabel || 'Join Key',
8732
+ onSelect: function onSelect(v, idx, field) {
8733
+ selectJoinKey(v, field, resourceGroupIndex, i);
8734
+ },
8735
+ onClick: showOverflow,
8736
+ type: 'neutral', inputs: inputs,
8737
+ values: joinRscVals,
8738
+ sectionLabels: joinRscSectionLabels,
8739
+ fieldPropLabel: 'label',
8740
+ selectedValues: [{
8741
+ label: rsc.joinKeyName,
8742
+ parents: rsc.joinKeyParents
8743
+ }],
8744
+ sectionLabelSuffix: 'Fields'
8745
+ })
8649
8746
  ),
8650
- _react2.default.createElement(_selectWrapper2.default, { label: joinKeyLabel || 'Join Key',
8651
- onSelect: function onSelect(v, idx, field) {
8652
- selectJoinKey(v, field, resourceGroupIndex, i);
8653
- },
8654
- onClick: showOverflow,
8655
- type: 'neutral', inputs: inputs,
8656
- values: joinRscVals,
8657
- sectionLabels: joinRscSectionLabels,
8658
- fieldPropLabel: 'label',
8659
- selectedValues: [{
8660
- label: rsc.joinKeyName,
8661
- parents: rsc.joinKeyParents
8662
- }],
8663
- sectionLabelSuffix: 'Fields'
8664
- })
8665
- ),
8666
- _react2.default.createElement(
8667
- 'div',
8668
- { style: { display: 'inline-block', width: '33%', marginTop: 6, position: 'relative', verticalAlign: 'top' } },
8669
8747
  _react2.default.createElement(
8670
- Tooltip,
8671
- { nubbin: 'right-top', popStyle: { width: 300, right: 46 },
8672
- wrapStyle: { left: 60, top: 2, zIndex: 6003 } },
8748
+ 'div',
8749
+ { style: { display: 'inline-block', width: '33%', marginTop: 6, position: 'relative', verticalAlign: 'top' } },
8673
8750
  _react2.default.createElement(
8674
- 'p',
8675
- null,
8676
- 'All: ',
8677
- rsc.name + ' records may or may not have a related ' + group.resources[0].name + ' record'
8751
+ Tooltip,
8752
+ { nubbin: 'right-top', popStyle: { width: 300, right: 46 },
8753
+ wrapStyle: { left: 60, top: 2, zIndex: 9003, position: 'relative' } },
8754
+ _react2.default.createElement(
8755
+ 'p',
8756
+ null,
8757
+ 'All: ',
8758
+ rsc.name + ' records may or may not have a related ' + (primaryResource && primaryResource.name) + ' record'
8759
+ ),
8760
+ _react2.default.createElement(
8761
+ 'p',
8762
+ { style: { marginTop: 6 } },
8763
+ 'Matching: ',
8764
+ 'Each ' + rsc.name + ' must have at least one related ' + (primaryResource && primaryResource.name) + ' record'
8765
+ )
8678
8766
  ),
8679
- _react2.default.createElement(
8680
- 'p',
8681
- { style: { marginTop: 6 } },
8682
- 'Matching: ',
8683
- 'Each ' + rsc.name + ' must have at least one related ' + group.resources[0].name + ' record'
8684
- )
8685
- ),
8686
- _react2.default.createElement(_reduxForm.Field, { name: 'resourceGroups.' + resourceGroupIndex + '.resources.' + i + '.joinType',
8687
- component: inputs.rfRadioGroup, label: 'Join Type',
8688
- onClickOption: function onClickOption() {}, options: {
8689
- 'LEFT JOIN': 'All records',
8690
- 'INNER JOIN': 'Matching records'
8691
- } }),
8692
- _react2.default.createElement(_joinVenn2.default, { joinType: rsc.joinType })
8693
- )
8694
- ) : null
8767
+ _react2.default.createElement(_reduxForm.Field, { name: 'resourceGroups.' + resourceGroupIndex + '.resources.' + i + '.joinType',
8768
+ component: inputs.rfRadioGroup, label: 'Join Type',
8769
+ onClickOption: function onClickOption() {}, options: {
8770
+ 'LEFT JOIN': 'All records',
8771
+ 'INNER JOIN': 'Matching records'
8772
+ } }),
8773
+ _react2.default.createElement(_joinVenn2.default, { joinType: rsc.joinType })
8774
+ )
8775
+ ) : null
8776
+ )
8695
8777
  )
8696
8778
  )
8697
8779
  );
@@ -8699,12 +8781,12 @@ module.exports =
8699
8781
  ),
8700
8782
  resourceGroups && resourceGroups.length > 0 ? _react2.default.createElement(
8701
8783
  'div',
8702
- { style: { display: 'inline-block', marginLeft: 11 } },
8784
+ { style: { display: 'inline-block', marginLeft: 17 } },
8703
8785
  _react2.default.createElement(_selectWrapper2.default, { label: 'Add Data Source', style: { height: 40 }, onClick: showOverflow,
8704
8786
  onSelect: function onSelect(v, i, entity) {
8705
8787
  return addDefaultEntity(v, i, entity, resourceGroupIndex);
8706
8788
  },
8707
- type: 'neutral', inputs: inputs
8789
+ type: 'neutral', inputs: inputs, wrapClass: 'larger-dropdown'
8708
8790
  //selectedValues={resourceGroups && resourceGroups[resourceGroupIndex] &&
8709
8791
  //resourceGroups[resourceGroupIndex].resources}
8710
8792
  , values: !isReverse ? [sourceSchema, destinationSchema] : [destinationSchema, sourceSchema],
@@ -8770,6 +8852,11 @@ module.exports =
8770
8852
  ) : null
8771
8853
  )
8772
8854
  ),
8855
+ _react2.default.createElement('div', { style: {
8856
+ background: '#eCeFeF', width: 245, minHeight: 245, left: 719, top: 0, zIndex: 99999,
8857
+ height: groupResourcesLength * 60 + 84 + 78, borderLeft: '1px solid rgb(204, 205, 207)',
8858
+ display: 'inline-block', position: 'absolute'
8859
+ } }),
8773
8860
  _react2.default.createElement(
8774
8861
  'div',
8775
8862
  { className: 'parameter-modal' },
@@ -8789,6 +8876,41 @@ module.exports =
8789
8876
  }(_react2.default.Component);
8790
8877
 
8791
8878
  exports.default = SchemaAccordion;
8879
+
8880
+
8881
+ var LevelArrows = function LevelArrows(_ref2) {
8882
+ var onChange = _ref2.onChange,
8883
+ canMoveLeft = _ref2.canMoveLeft,
8884
+ canMoveRight = _ref2.canMoveRight,
8885
+ hasChildren = _ref2.hasChildren;
8886
+ return _react2.default.createElement(
8887
+ 'div',
8888
+ {
8889
+ style: { position: 'absolute', zIndex: 7, height: 60, left: -5, paddingTop: 14 } },
8890
+ _react2.default.createElement(
8891
+ 'div',
8892
+ { className: 'schema-panel-resource-arrow' },
8893
+ canMoveLeft && _react2.default.createElement(
8894
+ 'svg',
8895
+ { height: '18', viewBox: '0 0 24 24', width: '18',
8896
+ onClick: function onClick() {
8897
+ return onChange(-1);
8898
+ } },
8899
+ _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
8900
+ _react2.default.createElement('path', { d: 'M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z' })
8901
+ ),
8902
+ canMoveRight && _react2.default.createElement(
8903
+ 'svg',
8904
+ { height: '18', viewBox: '0 0 24 24', width: '18',
8905
+ onClick: function onClick() {
8906
+ return onChange(1);
8907
+ } },
8908
+ _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
8909
+ _react2.default.createElement('path', { d: 'M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z' })
8910
+ )
8911
+ )
8912
+ );
8913
+ };
8792
8914
 
8793
8915
  /***/ },
8794
8916
  /* 110 */
@@ -9544,7 +9666,7 @@ module.exports =
9544
9666
 
9545
9667
  var _moment2 = _interopRequireDefault(_moment);
9546
9668
 
9547
- __webpack_require__(211);
9669
+ __webpack_require__(212);
9548
9670
 
9549
9671
  __webpack_require__(171);
9550
9672
 
@@ -9790,7 +9912,7 @@ module.exports =
9790
9912
 
9791
9913
  var _previewTabContent = __webpack_require__(52);
9792
9914
 
9793
- var _CSSTransitionGroup = __webpack_require__(27);
9915
+ var _CSSTransitionGroup = __webpack_require__(28);
9794
9916
 
9795
9917
  var _CSSTransitionGroup2 = _interopRequireDefault(_CSSTransitionGroup);
9796
9918
 
@@ -9829,15 +9951,8 @@ module.exports =
9829
9951
  newEnvName: ''
9830
9952
  };
9831
9953
  _this.check = _this.check.bind(_this);
9832
- _this.seeFields = _this.seeFields.bind(_this);
9833
- _this.getOauthUrl = _this.getOauthUrl.bind(_this);
9834
- _this.clickDirection = _this.clickDirection.bind(_this);
9835
- _this.selectProvider = _this.selectProvider.bind(_this);
9836
- //this.saveEnvironment = this.saveEnvironment.bind(this)
9837
- _this.selectEnvironment = _this.selectEnvironment.bind(_this);
9838
9954
  _this.tryGetCredentialAndCheck = _this.tryGetCredentialAndCheck.bind(_this);
9839
- _this.createEnvironment = _this.createEnvironment.bind(_this);
9840
- _this.changeEnvName = _this.changeEnvName.bind(_this);
9955
+ _this.selectProvider = _this.selectProvider.bind(_this);
9841
9956
  return _this;
9842
9957
  }
9843
9958
 
@@ -10094,7 +10209,7 @@ module.exports =
10094
10209
  style: { minWidth: 200, textAlign: 'left' },
10095
10210
  values: wizard.environments,
10096
10211
  title: 'Choose Environment', inputs: inputs, sectionLabelSuffix: '',
10097
- onSelect: this.selectEnvironment,
10212
+ onSelect: this.selectEnvironment.bind(this),
10098
10213
  selectedValues: [formValues['environment'] ? { name: formValues['environment'] } : {}],
10099
10214
  disabled: wizard.environments && wizard.environments.length > 0 ? false : true
10100
10215
  })
@@ -10106,9 +10221,11 @@ module.exports =
10106
10221
  'div',
10107
10222
  { style: { width: 200, display: 'inline-block' } },
10108
10223
  _react2.default.createElement(Input, { type: 'text', label: 'New Environment', value: newEnvName,
10109
- onChange: this.changeEnvName, style: { width: 200 },
10224
+ onChange: this.changeEnvName.bind(this), style: { width: 200 },
10110
10225
  onKeyPress: function onKeyPress(e) {
10111
- if (e.key === 'Enter' && !disableCreateEnv) _this5.createEnvironment(newEnvName);
10226
+ if (e.key === 'Enter' && !disableCreateEnv) {
10227
+ _this5.createEnvironment(newEnvName).bind(_this5);
10228
+ }
10112
10229
  },
10113
10230
  inputRef: function inputRef(ref) {
10114
10231
  return _this5.envNameInput = ref;
@@ -10119,6 +10236,7 @@ module.exports =
10119
10236
  Button,
10120
10237
  {
10121
10238
  type: 'brand',
10239
+ size: 'small',
10122
10240
  onClick: function onClick() {
10123
10241
  return _this5.createEnvironment(newEnvName);
10124
10242
  },
@@ -10190,9 +10308,10 @@ module.exports =
10190
10308
  'div',
10191
10309
  { className: 'env-creds' },
10192
10310
  _react2.default.createElement(_envSections2.default, { config: step[m + 'Config'], mode: m, checking: checking,
10193
- wizard: wizard, getOauthUrl: _this5.getOauthUrl, formValues: formValues,
10194
- clickDirection: _this5.clickDirection, inputs: inputs, step: step,
10195
- seeFields: _this5.seeFields, check: _this5.check })
10311
+ wizard: wizard, getOauthUrl: _this5.getOauthUrl.bind(_this5),
10312
+ formValues: formValues,
10313
+ clickDirection: _this5.clickDirection.bind(_this5), inputs: inputs, step: step,
10314
+ seeFields: _this5.seeFields.bind(_this5), check: _this5.check })
10196
10315
  )
10197
10316
  )
10198
10317
  );
@@ -10203,7 +10322,7 @@ module.exports =
10203
10322
  return _this5.setState({ showResources: null });
10204
10323
  },
10205
10324
  mode: this.state.showResources, wizard: wizard, step: step, inputs: inputs,
10206
- seeFields: this.seeFields, isReverse: formValues.direction === 'reverse' }),
10325
+ seeFields: this.seeFields.bind(this), isReverse: formValues.direction === 'reverse' }),
10207
10326
  _react2.default.createElement('br', null),
10208
10327
  _react2.default.createElement('br', null),
10209
10328
  _react2.default.createElement(_navButtons2.default, { nextDisabled: notAllMetadata || !formValues['environment'],
@@ -10862,7 +10981,7 @@ module.exports =
10862
10981
 
10863
10982
  var _loadData2 = _interopRequireDefault(_loadData);
10864
10983
 
10865
- var _CSSTransitionGroup = __webpack_require__(27);
10984
+ var _CSSTransitionGroup = __webpack_require__(28);
10866
10985
 
10867
10986
  var _CSSTransitionGroup2 = _interopRequireDefault(_CSSTransitionGroup);
10868
10987
 
@@ -12013,11 +12132,12 @@ module.exports =
12013
12132
  _this.removeEntity = _this.removeEntity.bind(_this);
12014
12133
  _this.addGroup = _this.addGroup.bind(_this);
12015
12134
  _this.removeGroup = _this.removeGroup.bind(_this);
12135
+ _this.changeEntityLevel = _this.changeEntityLevel.bind(_this);
12016
12136
  _this.changeEntityOrder = _this.changeEntityOrder.bind(_this);
12017
12137
  _this.changeGroupOrder = _this.changeGroupOrder.bind(_this);
12018
12138
  _this.openConnectionModal = _this.openConnectionModal.bind(_this);
12019
12139
  _this.hideModal = _this.hideModal.bind(_this);
12020
- _this.refreshAllPrimaryKeyNames = _this.refreshAllPrimaryKeyNames.bind(_this);
12140
+ _this.refreshAllPrimaryKeys = _this.refreshAllPrimaryKeys.bind(_this);
12021
12141
  _this.selectPrimaryKey = _this.selectPrimaryKey.bind(_this);
12022
12142
  _this.selectJoinKey = _this.selectJoinKey.bind(_this);
12023
12143
  return _this;
@@ -12123,9 +12243,11 @@ module.exports =
12123
12243
  });
12124
12244
  if (entityExists) return;
12125
12245
 
12246
+ var level = 1;
12126
12247
  if (!group.resources || group.resources && group.resources.length === 0) {
12127
12248
  group.resources = [];
12128
12249
  this.openConnectionModal(group, groupIndex);
12250
+ level = 0;
12129
12251
  }
12130
12252
  // ADD PARENTS AS WELL ?
12131
12253
  /*if(parentRef && parentRef.length>0){
@@ -12144,10 +12266,11 @@ module.exports =
12144
12266
  name: v,
12145
12267
  __name: entity.type,
12146
12268
  provider: entity.section,
12147
- joinType: 'LEFT JOIN'
12269
+ joinType: 'LEFT JOIN',
12270
+ level: level
12148
12271
  }, entity.parentRef && { parentRef: entity.parentRef }, entity.recordTypeId && { recordTypeId: entity.rtid }));
12149
12272
  change('resourceGroups', resourceGroups);
12150
- this.forceUpdate();
12273
+ this.assignAllParents(groupIndex);
12151
12274
  }
12152
12275
  }, {
12153
12276
  key: 'newEntityKeyPress',
@@ -12190,58 +12313,118 @@ module.exports =
12190
12313
  group.mappings = mapz;
12191
12314
  group.resources.splice(rscIndex, 1);
12192
12315
  change('resourceGroups', resourceGroups);
12193
- this.forceUpdate();
12316
+ this.assignAllParents(groupIndex);
12194
12317
  }
12195
12318
  }, {
12196
- key: 'changeEntityOrder',
12197
- value: function changeEntityOrder(groupIndex, iStart, iEnd) {
12319
+ key: 'changeEntityLevel',
12320
+ value: function changeEntityLevel(groupIndex, entityIndex, newLevel) {
12198
12321
  var _props7 = this.props,
12199
12322
  change = _props7.change,
12200
12323
  formValues = _props7.formValues;
12201
12324
 
12202
12325
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12203
12326
  var resources = resourceGroups[groupIndex].resources;
12204
- resources.splice(iEnd, 0, resources.splice(iStart, 1)[0]);
12205
- if (iEnd === 0 || iStart === 0) {
12206
- this.refreshAllPrimaryKeyNames(groupIndex);
12207
- }
12327
+ var rsc = resources[entityIndex];
12328
+ rsc.level = newLevel;
12208
12329
  change('resourceGroups', resourceGroups);
12330
+ this.assignAllParents(groupIndex);
12209
12331
  this.forceUpdate();
12210
12332
  }
12211
12333
  }, {
12212
- key: 'refreshAllPrimaryKeyNames',
12213
- value: function refreshAllPrimaryKeyNames(groupIndex) {
12334
+ key: 'changeEntityOrder',
12335
+ value: function changeEntityOrder(groupIndex, iStart, iEnd) {
12214
12336
  var _props8 = this.props,
12215
12337
  change = _props8.change,
12216
12338
  formValues = _props8.formValues;
12217
12339
 
12218
12340
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12219
- var group = resourceGroups[groupIndex];
12220
- group.sourceKey = null;
12221
- group.resources.forEach(function (g) {
12222
- g.primaryKeyName = null;
12223
- });
12224
- change('resourceGroups', resourceGroups);
12225
- //this.openConnectionModal(group, groupIndex)
12341
+ var resources = resourceGroups[groupIndex].resources;
12342
+
12343
+ resources.splice(iEnd, 0, resources.splice(iStart, 1)[0]);
12344
+ if (iEnd === 0) {
12345
+ resources[0].level = 0;
12346
+ resources[0].primaryKeyResource = null;
12347
+ resources[0].parentNameAndProvider = null;
12348
+ resources[0].primaryKeyName = null;
12349
+ resources[0].primaryKeyParents = null;
12350
+ resources[1].level = 1;
12351
+ }
12352
+ if (iStart === 0) {
12353
+ // right now cant drag if 0
12354
+ }
12355
+ change('resourceGroups', resourceGroups);
12356
+ this.assignAllParents(groupIndex);
12226
12357
  }
12227
12358
  }, {
12228
- key: 'changeGroupOrder',
12229
- value: function changeGroupOrder(iStart, iEnd) {
12359
+ key: 'assignAllParents',
12360
+ value: function assignAllParents(groupIndex) {
12230
12361
  var _props9 = this.props,
12231
12362
  change = _props9.change,
12232
12363
  formValues = _props9.formValues;
12233
12364
 
12234
12365
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12235
- resourceGroups.splice(iEnd, 0, resourceGroups.splice(iStart, 1)[0]);
12366
+ var resources = resourceGroups[groupIndex].resources;
12367
+
12368
+ resources.forEach(function (eachR, eachI) {
12369
+ var newParent = '';
12370
+ var newParentProvider = '';
12371
+ for (var i = eachI - 1; i >= 0; i--) {
12372
+ if (resources[i].level < eachR.level) {
12373
+ newParent = resources[i].name;
12374
+ newParentProvider = resources[i].provider;
12375
+ eachR.level = resources[i].level + 1;
12376
+ break;
12377
+ }
12378
+ }
12379
+ if (newParent && newParentProvider && (newParent + '_' + newParentProvider).toLowerCase() !== (eachR.parentNameAndProvider && eachR.parentNameAndProvider.toLowerCase())) {
12380
+ eachR.primaryKeyResource = newParent;
12381
+ eachR.parentNameAndProvider = newParent + '_' + newParentProvider;
12382
+ eachR.primaryKeyName = null;
12383
+ eachR.primaryKeyParents = null;
12384
+ }
12385
+ if (eachI === 0 && eachR.level !== 0) {
12386
+ eachR.level = 0;
12387
+ }
12388
+ });
12236
12389
  change('resourceGroups', resourceGroups);
12390
+ //this.forceUpdate()
12237
12391
  }
12238
12392
  }, {
12239
- key: 'selectPrimaryKey',
12240
- value: function selectPrimaryKey(v, field, rgi, i) {
12393
+ key: 'refreshAllPrimaryKeys',
12394
+ value: function refreshAllPrimaryKeys(groupIndex) {
12241
12395
  var _props10 = this.props,
12242
12396
  change = _props10.change,
12243
12397
  formValues = _props10.formValues;
12244
12398
 
12399
+ var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12400
+ var group = resourceGroups[groupIndex];
12401
+ group.sourceKey = null;
12402
+ group.resources.forEach(function (r) {
12403
+ r.primaryKeyName = null;
12404
+ r.primaryKeyResource = null;
12405
+ r.primaryKeyParents = null;
12406
+ });
12407
+ change('resourceGroups', resourceGroups);
12408
+ //this.openConnectionModal(group, groupIndex)
12409
+ }
12410
+ }, {
12411
+ key: 'changeGroupOrder',
12412
+ value: function changeGroupOrder(iStart, iEnd) {
12413
+ var _props11 = this.props,
12414
+ change = _props11.change,
12415
+ formValues = _props11.formValues;
12416
+
12417
+ var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12418
+ resourceGroups.splice(iEnd, 0, resourceGroups.splice(iStart, 1)[0]);
12419
+ change('resourceGroups', resourceGroups);
12420
+ }
12421
+ }, {
12422
+ key: 'selectPrimaryKey',
12423
+ value: function selectPrimaryKey(v, field, rgi, i) {
12424
+ var _props12 = this.props,
12425
+ change = _props12.change,
12426
+ formValues = _props12.formValues;
12427
+
12245
12428
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12246
12429
  var rsc = resourceGroups[rgi].resources[i];
12247
12430
  rsc.primaryKeyName = v;
@@ -12254,9 +12437,9 @@ module.exports =
12254
12437
  }, {
12255
12438
  key: 'selectJoinKey',
12256
12439
  value: function selectJoinKey(v, field, rgi, i) {
12257
- var _props11 = this.props,
12258
- change = _props11.change,
12259
- formValues = _props11.formValues;
12440
+ var _props13 = this.props,
12441
+ change = _props13.change,
12442
+ formValues = _props13.formValues;
12260
12443
 
12261
12444
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12262
12445
  var rsc = resourceGroups[rgi].resources[i];
@@ -12272,15 +12455,15 @@ module.exports =
12272
12455
  value: function render() {
12273
12456
  var _this2 = this;
12274
12457
 
12275
- var _props12 = this.props,
12276
- inputs = _props12.inputs,
12277
- handleSubmit = _props12.handleSubmit,
12278
- nav = _props12.nav,
12279
- formValues = _props12.formValues,
12280
- step = _props12.step,
12281
- reset = _props12.reset,
12282
- wizard = _props12.wizard,
12283
- change = _props12.change;
12458
+ var _props14 = this.props,
12459
+ inputs = _props14.inputs,
12460
+ handleSubmit = _props14.handleSubmit,
12461
+ nav = _props14.nav,
12462
+ formValues = _props14.formValues,
12463
+ step = _props14.step,
12464
+ reset = _props14.reset,
12465
+ wizard = _props14.wizard,
12466
+ change = _props14.change;
12284
12467
 
12285
12468
  if (!formValues['resourceGroups']) return _react2.default.createElement('div', null);
12286
12469
 
@@ -12345,7 +12528,8 @@ module.exports =
12345
12528
  changeEntityOrder: this.changeEntityOrder, step: step,
12346
12529
  destinationSchema: destinationSchema, isReverse: isReverse,
12347
12530
  selectPrimaryKey: this.selectPrimaryKey,
12348
- selectJoinKey: this.selectJoinKey, change: change }),
12531
+ selectJoinKey: this.selectJoinKey, change: change,
12532
+ changeEntityLevel: this.changeEntityLevel }),
12349
12533
  _react2.default.createElement(_bundleTable2.default, { openConnectionModal: this.openConnectionModal, mode: formValues.direction })
12350
12534
  ),
12351
12535
  _react2.default.createElement('br', null)
@@ -12451,7 +12635,7 @@ module.exports =
12451
12635
 
12452
12636
  var _nestExpand2 = _interopRequireDefault(_nestExpand);
12453
12637
 
12454
- var _CSSTransitionGroup = __webpack_require__(27);
12638
+ var _CSSTransitionGroup = __webpack_require__(28);
12455
12639
 
12456
12640
  var _CSSTransitionGroup2 = _interopRequireDefault(_CSSTransitionGroup);
12457
12641
 
@@ -13331,7 +13515,7 @@ module.exports =
13331
13515
 
13332
13516
  var _react2 = _interopRequireDefault(_react);
13333
13517
 
13334
- var _redux = __webpack_require__(212);
13518
+ var _redux = __webpack_require__(213);
13335
13519
 
13336
13520
  var _reactRedux = __webpack_require__(65);
13337
13521
 
@@ -13574,11 +13758,11 @@ module.exports =
13574
13758
 
13575
13759
  'use strict';
13576
13760
  // 19.1.2.1 Object.assign(target, source, ...)
13577
- var getKeys = __webpack_require__(33)
13761
+ var getKeys = __webpack_require__(34)
13578
13762
  , gOPS = __webpack_require__(146)
13579
13763
  , pIE = __webpack_require__(148)
13580
- , toObject = __webpack_require__(36)
13581
- , IObject = __webpack_require__(31)
13764
+ , toObject = __webpack_require__(37)
13765
+ , IObject = __webpack_require__(32)
13582
13766
  , $assign = Object.assign;
13583
13767
 
13584
13768
  // should work with symbols and should have deterministic property order (V8 bug)
@@ -16296,7 +16480,7 @@ module.exports =
16296
16480
 
16297
16481
  var _moment2 = _interopRequireDefault(_moment);
16298
16482
 
16299
- var _classnames = __webpack_require__(38);
16483
+ var _classnames = __webpack_require__(39);
16300
16484
 
16301
16485
  var _classnames2 = _interopRequireDefault(_classnames);
16302
16486
 
@@ -16482,7 +16666,7 @@ module.exports =
16482
16666
 
16483
16667
  var _reactDom2 = _interopRequireDefault(_reactDom);
16484
16668
 
16485
- var _classnames3 = __webpack_require__(38);
16669
+ var _classnames3 = __webpack_require__(39);
16486
16670
 
16487
16671
  var _classnames4 = _interopRequireDefault(_classnames3);
16488
16672
 
@@ -17953,8 +18137,1029 @@ module.exports =
17953
18137
  module.exports = exports['default'];
17954
18138
 
17955
18139
  /***/ },
17956
- /* 201 */,
17957
- /* 202 */
18140
+ /* 201 */
18141
+ /***/ function(module, exports, __webpack_require__) {
18142
+
18143
+ (function webpackUniversalModuleDefinition(root, factory) {
18144
+ if(true)
18145
+ module.exports = factory(__webpack_require__(1), __webpack_require__(27));
18146
+ else if(typeof define === 'function' && define.amd)
18147
+ define(["react", "prop-types"], factory);
18148
+ else if(typeof exports === 'object')
18149
+ exports["Dropzone"] = factory(require("react"), require("prop-types"));
18150
+ else
18151
+ root["Dropzone"] = factory(root["react"], root["prop-types"]);
18152
+ })(this, function(__WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__) {
18153
+ return /******/ (function(modules) { // webpackBootstrap
18154
+ /******/ // The module cache
18155
+ /******/ var installedModules = {};
18156
+ /******/
18157
+ /******/ // The require function
18158
+ /******/ function __webpack_require__(moduleId) {
18159
+ /******/
18160
+ /******/ // Check if module is in cache
18161
+ /******/ if(installedModules[moduleId]) {
18162
+ /******/ return installedModules[moduleId].exports;
18163
+ /******/ }
18164
+ /******/ // Create a new module (and put it into the cache)
18165
+ /******/ var module = installedModules[moduleId] = {
18166
+ /******/ i: moduleId,
18167
+ /******/ l: false,
18168
+ /******/ exports: {}
18169
+ /******/ };
18170
+ /******/
18171
+ /******/ // Execute the module function
18172
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
18173
+ /******/
18174
+ /******/ // Flag the module as loaded
18175
+ /******/ module.l = true;
18176
+ /******/
18177
+ /******/ // Return the exports of the module
18178
+ /******/ return module.exports;
18179
+ /******/ }
18180
+ /******/
18181
+ /******/
18182
+ /******/ // expose the modules object (__webpack_modules__)
18183
+ /******/ __webpack_require__.m = modules;
18184
+ /******/
18185
+ /******/ // expose the module cache
18186
+ /******/ __webpack_require__.c = installedModules;
18187
+ /******/
18188
+ /******/ // define getter function for harmony exports
18189
+ /******/ __webpack_require__.d = function(exports, name, getter) {
18190
+ /******/ if(!__webpack_require__.o(exports, name)) {
18191
+ /******/ Object.defineProperty(exports, name, {
18192
+ /******/ configurable: false,
18193
+ /******/ enumerable: true,
18194
+ /******/ get: getter
18195
+ /******/ });
18196
+ /******/ }
18197
+ /******/ };
18198
+ /******/
18199
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
18200
+ /******/ __webpack_require__.n = function(module) {
18201
+ /******/ var getter = module && module.__esModule ?
18202
+ /******/ function getDefault() { return module['default']; } :
18203
+ /******/ function getModuleExports() { return module; };
18204
+ /******/ __webpack_require__.d(getter, 'a', getter);
18205
+ /******/ return getter;
18206
+ /******/ };
18207
+ /******/
18208
+ /******/ // Object.prototype.hasOwnProperty.call
18209
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
18210
+ /******/
18211
+ /******/ // __webpack_public_path__
18212
+ /******/ __webpack_require__.p = "";
18213
+ /******/
18214
+ /******/ // Load entry module and return exports
18215
+ /******/ return __webpack_require__(__webpack_require__.s = 0);
18216
+ /******/ })
18217
+ /************************************************************************/
18218
+ /******/ ([
18219
+ /* 0 */
18220
+ /***/ (function(module, exports, __webpack_require__) {
18221
+
18222
+ "use strict";
18223
+ /* WEBPACK VAR INJECTION */(function(process) {
18224
+
18225
+ Object.defineProperty(exports, "__esModule", {
18226
+ value: true
18227
+ });
18228
+
18229
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
18230
+
18231
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
18232
+
18233
+ var _react = __webpack_require__(2);
18234
+
18235
+ var _react2 = _interopRequireDefault(_react);
18236
+
18237
+ var _propTypes = __webpack_require__(3);
18238
+
18239
+ var _propTypes2 = _interopRequireDefault(_propTypes);
18240
+
18241
+ var _utils = __webpack_require__(4);
18242
+
18243
+ var _styles = __webpack_require__(6);
18244
+
18245
+ var _styles2 = _interopRequireDefault(_styles);
18246
+
18247
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18248
+
18249
+ function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
18250
+
18251
+ function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
18252
+
18253
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
18254
+
18255
+ function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
18256
+
18257
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint prefer-template: 0 */
18258
+
18259
+ var Dropzone = function (_React$Component) {
18260
+ _inherits(Dropzone, _React$Component);
18261
+
18262
+ function Dropzone(props, context) {
18263
+ _classCallCheck(this, Dropzone);
18264
+
18265
+ var _this = _possibleConstructorReturn(this, (Dropzone.__proto__ || Object.getPrototypeOf(Dropzone)).call(this, props, context));
18266
+
18267
+ _this.renderChildren = function (children, isDragActive, isDragAccept, isDragReject) {
18268
+ if (typeof children === 'function') {
18269
+ return children(_extends({}, _this.state, {
18270
+ isDragActive: isDragActive,
18271
+ isDragAccept: isDragAccept,
18272
+ isDragReject: isDragReject
18273
+ }));
18274
+ }
18275
+ return children;
18276
+ };
18277
+
18278
+ _this.composeHandlers = _this.composeHandlers.bind(_this);
18279
+ _this.onClick = _this.onClick.bind(_this);
18280
+ _this.onDocumentDrop = _this.onDocumentDrop.bind(_this);
18281
+ _this.onDragEnter = _this.onDragEnter.bind(_this);
18282
+ _this.onDragLeave = _this.onDragLeave.bind(_this);
18283
+ _this.onDragOver = _this.onDragOver.bind(_this);
18284
+ _this.onDragStart = _this.onDragStart.bind(_this);
18285
+ _this.onDrop = _this.onDrop.bind(_this);
18286
+ _this.onFileDialogCancel = _this.onFileDialogCancel.bind(_this);
18287
+ _this.onInputElementClick = _this.onInputElementClick.bind(_this);
18288
+
18289
+ _this.setRef = _this.setRef.bind(_this);
18290
+ _this.setRefs = _this.setRefs.bind(_this);
18291
+
18292
+ _this.isFileDialogActive = false;
18293
+
18294
+ _this.state = {
18295
+ draggedFiles: [],
18296
+ acceptedFiles: [],
18297
+ rejectedFiles: []
18298
+ };
18299
+ return _this;
18300
+ }
18301
+
18302
+ _createClass(Dropzone, [{
18303
+ key: 'componentDidMount',
18304
+ value: function componentDidMount() {
18305
+ var preventDropOnDocument = this.props.preventDropOnDocument;
18306
+
18307
+ this.dragTargets = [];
18308
+
18309
+ if (preventDropOnDocument) {
18310
+ document.addEventListener('dragover', _utils.onDocumentDragOver, false);
18311
+ document.addEventListener('drop', this.onDocumentDrop, false);
18312
+ }
18313
+ this.fileInputEl.addEventListener('click', this.onInputElementClick, false);
18314
+ // Tried implementing addEventListener, but didn't work out
18315
+ document.body.onfocus = this.onFileDialogCancel;
18316
+ }
18317
+ }, {
18318
+ key: 'componentWillUnmount',
18319
+ value: function componentWillUnmount() {
18320
+ var preventDropOnDocument = this.props.preventDropOnDocument;
18321
+
18322
+ if (preventDropOnDocument) {
18323
+ document.removeEventListener('dragover', _utils.onDocumentDragOver);
18324
+ document.removeEventListener('drop', this.onDocumentDrop);
18325
+ }
18326
+ this.fileInputEl.removeEventListener('click', this.onInputElementClick, false);
18327
+ // Can be replaced with removeEventListener, if addEventListener works
18328
+ document.body.onfocus = null;
18329
+ }
18330
+ }, {
18331
+ key: 'composeHandlers',
18332
+ value: function composeHandlers(handler) {
18333
+ if (this.props.disabled) {
18334
+ return null;
18335
+ }
18336
+
18337
+ return handler;
18338
+ }
18339
+ }, {
18340
+ key: 'onDocumentDrop',
18341
+ value: function onDocumentDrop(evt) {
18342
+ if (this.node.contains(evt.target)) {
18343
+ // if we intercepted an event for our instance, let it propagate down to the instance's onDrop handler
18344
+ return;
18345
+ }
18346
+ evt.preventDefault();
18347
+ this.dragTargets = [];
18348
+ }
18349
+ }, {
18350
+ key: 'onDragStart',
18351
+ value: function onDragStart(evt) {
18352
+ if (this.props.onDragStart) {
18353
+ this.props.onDragStart.call(this, evt);
18354
+ }
18355
+ }
18356
+ }, {
18357
+ key: 'onDragEnter',
18358
+ value: function onDragEnter(evt) {
18359
+ evt.preventDefault();
18360
+
18361
+ // Count the dropzone and any children that are entered.
18362
+ if (this.dragTargets.indexOf(evt.target) === -1) {
18363
+ this.dragTargets.push(evt.target);
18364
+ }
18365
+
18366
+ this.setState({
18367
+ isDragActive: true, // Do not rely on files for the drag state. It doesn't work in Safari.
18368
+ draggedFiles: (0, _utils.getDataTransferItems)(evt)
18369
+ });
18370
+
18371
+ if (this.props.onDragEnter) {
18372
+ this.props.onDragEnter.call(this, evt);
18373
+ }
18374
+ }
18375
+ }, {
18376
+ key: 'onDragOver',
18377
+ value: function onDragOver(evt) {
18378
+ // eslint-disable-line class-methods-use-this
18379
+ evt.preventDefault();
18380
+ evt.stopPropagation();
18381
+ try {
18382
+ evt.dataTransfer.dropEffect = 'copy'; // eslint-disable-line no-param-reassign
18383
+ } catch (err) {
18384
+ // continue regardless of error
18385
+ }
18386
+
18387
+ if (this.props.onDragOver) {
18388
+ this.props.onDragOver.call(this, evt);
18389
+ }
18390
+ return false;
18391
+ }
18392
+ }, {
18393
+ key: 'onDragLeave',
18394
+ value: function onDragLeave(evt) {
18395
+ var _this2 = this;
18396
+
18397
+ evt.preventDefault();
18398
+
18399
+ // Only deactivate once the dropzone and all children have been left.
18400
+ this.dragTargets = this.dragTargets.filter(function (el) {
18401
+ return el !== evt.target && _this2.node.contains(el);
18402
+ });
18403
+ if (this.dragTargets.length > 0) {
18404
+ return;
18405
+ }
18406
+
18407
+ // Clear dragging files state
18408
+ this.setState({
18409
+ isDragActive: false,
18410
+ draggedFiles: []
18411
+ });
18412
+
18413
+ if (this.props.onDragLeave) {
18414
+ this.props.onDragLeave.call(this, evt);
18415
+ }
18416
+ }
18417
+ }, {
18418
+ key: 'onDrop',
18419
+ value: function onDrop(evt) {
18420
+ var _this3 = this;
18421
+
18422
+ var _props = this.props,
18423
+ onDrop = _props.onDrop,
18424
+ onDropAccepted = _props.onDropAccepted,
18425
+ onDropRejected = _props.onDropRejected,
18426
+ multiple = _props.multiple,
18427
+ disablePreview = _props.disablePreview,
18428
+ accept = _props.accept;
18429
+
18430
+ var fileList = (0, _utils.getDataTransferItems)(evt);
18431
+ var acceptedFiles = [];
18432
+ var rejectedFiles = [];
18433
+
18434
+ // Stop default browser behavior
18435
+ evt.preventDefault();
18436
+
18437
+ // Reset the counter along with the drag on a drop.
18438
+ this.dragTargets = [];
18439
+ this.isFileDialogActive = false;
18440
+
18441
+ fileList.forEach(function (file) {
18442
+ if (!disablePreview) {
18443
+ try {
18444
+ file.preview = window.URL.createObjectURL(file); // eslint-disable-line no-param-reassign
18445
+ } catch (err) {
18446
+ if (process.env.NODE_ENV !== 'production') {
18447
+ console.error('Failed to generate preview for file', file, err); // eslint-disable-line no-console
18448
+ }
18449
+ }
18450
+ }
18451
+
18452
+ if ((0, _utils.fileAccepted)(file, accept) && (0, _utils.fileMatchSize)(file, _this3.props.maxSize, _this3.props.minSize)) {
18453
+ acceptedFiles.push(file);
18454
+ } else {
18455
+ rejectedFiles.push(file);
18456
+ }
18457
+ });
18458
+
18459
+ if (!multiple) {
18460
+ // if not in multi mode add any extra accepted files to rejected.
18461
+ // This will allow end users to easily ignore a multi file drop in "single" mode.
18462
+ rejectedFiles.push.apply(rejectedFiles, _toConsumableArray(acceptedFiles.splice(1)));
18463
+ }
18464
+
18465
+ if (onDrop) {
18466
+ onDrop.call(this, acceptedFiles, rejectedFiles, evt);
18467
+ }
18468
+
18469
+ if (rejectedFiles.length > 0 && onDropRejected) {
18470
+ onDropRejected.call(this, rejectedFiles, evt);
18471
+ }
18472
+
18473
+ if (acceptedFiles.length > 0 && onDropAccepted) {
18474
+ onDropAccepted.call(this, acceptedFiles, evt);
18475
+ }
18476
+
18477
+ // Clear files value
18478
+ this.draggedFiles = null;
18479
+
18480
+ // Reset drag state
18481
+ this.setState({
18482
+ isDragActive: false,
18483
+ draggedFiles: [],
18484
+ acceptedFiles: acceptedFiles,
18485
+ rejectedFiles: rejectedFiles
18486
+ });
18487
+ }
18488
+ }, {
18489
+ key: 'onClick',
18490
+ value: function onClick(evt) {
18491
+ var _props2 = this.props,
18492
+ onClick = _props2.onClick,
18493
+ disableClick = _props2.disableClick;
18494
+
18495
+ if (!disableClick) {
18496
+ evt.stopPropagation();
18497
+
18498
+ if (onClick) {
18499
+ onClick.call(this, evt);
18500
+ }
18501
+
18502
+ // in IE11/Edge the file-browser dialog is blocking, ensure this is behind setTimeout
18503
+ // this is so react can handle state changes in the onClick prop above above
18504
+ // see: https://github.com/react-dropzone/react-dropzone/issues/450
18505
+ setTimeout(this.open.bind(this), 0);
18506
+ }
18507
+ }
18508
+ }, {
18509
+ key: 'onInputElementClick',
18510
+ value: function onInputElementClick(evt) {
18511
+ evt.stopPropagation();
18512
+ if (this.props.inputProps && this.props.inputProps.onClick) {
18513
+ this.props.inputProps.onClick();
18514
+ }
18515
+ }
18516
+ }, {
18517
+ key: 'onFileDialogCancel',
18518
+ value: function onFileDialogCancel() {
18519
+ // timeout will not recognize context of this method
18520
+ var onFileDialogCancel = this.props.onFileDialogCancel;
18521
+ var fileInputEl = this.fileInputEl;
18522
+ var isFileDialogActive = this.isFileDialogActive;
18523
+ // execute the timeout only if the onFileDialogCancel is defined and FileDialog
18524
+ // is opened in the browser
18525
+
18526
+ if (onFileDialogCancel && isFileDialogActive) {
18527
+ setTimeout(function () {
18528
+ // Returns an object as FileList
18529
+ var FileList = fileInputEl.files;
18530
+ if (!FileList.length) {
18531
+ isFileDialogActive = false;
18532
+ onFileDialogCancel();
18533
+ }
18534
+ }, 300);
18535
+ }
18536
+ }
18537
+ }, {
18538
+ key: 'setRef',
18539
+ value: function setRef(ref) {
18540
+ this.node = ref;
18541
+ }
18542
+ }, {
18543
+ key: 'setRefs',
18544
+ value: function setRefs(ref) {
18545
+ this.fileInputEl = ref;
18546
+ }
18547
+ /**
18548
+ * Open system file upload dialog.
18549
+ *
18550
+ * @public
18551
+ */
18552
+
18553
+ }, {
18554
+ key: 'open',
18555
+ value: function open() {
18556
+ this.isFileDialogActive = true;
18557
+ this.fileInputEl.value = null;
18558
+ this.fileInputEl.click();
18559
+ }
18560
+ }, {
18561
+ key: 'render',
18562
+ value: function render() {
18563
+ var _props3 = this.props,
18564
+ accept = _props3.accept,
18565
+ acceptClassName = _props3.acceptClassName,
18566
+ activeClassName = _props3.activeClassName,
18567
+ children = _props3.children,
18568
+ disabled = _props3.disabled,
18569
+ disabledClassName = _props3.disabledClassName,
18570
+ inputProps = _props3.inputProps,
18571
+ multiple = _props3.multiple,
18572
+ name = _props3.name,
18573
+ rejectClassName = _props3.rejectClassName,
18574
+ rest = _objectWithoutProperties(_props3, ['accept', 'acceptClassName', 'activeClassName', 'children', 'disabled', 'disabledClassName', 'inputProps', 'multiple', 'name', 'rejectClassName']);
18575
+
18576
+ var acceptStyle = rest.acceptStyle,
18577
+ activeStyle = rest.activeStyle,
18578
+ className = rest.className,
18579
+ disabledStyle = rest.disabledStyle,
18580
+ rejectStyle = rest.rejectStyle,
18581
+ style = rest.style,
18582
+ props = _objectWithoutProperties(rest, ['acceptStyle', 'activeStyle', 'className', 'disabledStyle', 'rejectStyle', 'style']);
18583
+
18584
+ var _state = this.state,
18585
+ isDragActive = _state.isDragActive,
18586
+ draggedFiles = _state.draggedFiles;
18587
+
18588
+ var filesCount = draggedFiles.length;
18589
+ var isMultipleAllowed = multiple || filesCount <= 1;
18590
+ var isDragAccept = filesCount > 0 && (0, _utils.allFilesAccepted)(draggedFiles, this.props.accept);
18591
+ var isDragReject = filesCount > 0 && (!isDragAccept || !isMultipleAllowed);
18592
+ className = className || '';
18593
+ var noStyles = !className && !style && !activeStyle && !acceptStyle && !rejectStyle && !disabledStyle;
18594
+
18595
+ if (isDragActive && activeClassName) {
18596
+ className += ' ' + activeClassName;
18597
+ }
18598
+ if (isDragAccept && acceptClassName) {
18599
+ className += ' ' + acceptClassName;
18600
+ }
18601
+ if (isDragReject && rejectClassName) {
18602
+ className += ' ' + rejectClassName;
18603
+ }
18604
+ if (disabled && disabledClassName) {
18605
+ className += ' ' + disabledClassName;
18606
+ }
18607
+
18608
+ if (noStyles) {
18609
+ style = _styles2.default.default;
18610
+ activeStyle = _styles2.default.active;
18611
+ acceptStyle = style.active;
18612
+ rejectStyle = _styles2.default.rejected;
18613
+ disabledStyle = _styles2.default.disabled;
18614
+ }
18615
+
18616
+ var appliedStyle = _extends({}, style);
18617
+ if (activeStyle && isDragActive) {
18618
+ appliedStyle = _extends({}, style, activeStyle);
18619
+ }
18620
+ if (acceptStyle && isDragAccept) {
18621
+ appliedStyle = _extends({}, appliedStyle, acceptStyle);
18622
+ }
18623
+ if (rejectStyle && isDragReject) {
18624
+ appliedStyle = _extends({}, appliedStyle, rejectStyle);
18625
+ }
18626
+ if (disabledStyle && disabled) {
18627
+ appliedStyle = _extends({}, style, disabledStyle);
18628
+ }
18629
+
18630
+ var inputAttributes = {
18631
+ accept: accept,
18632
+ disabled: disabled,
18633
+ type: 'file',
18634
+ style: { display: 'none' },
18635
+ multiple: _utils.supportMultiple && multiple,
18636
+ ref: this.setRefs,
18637
+ onChange: this.onDrop,
18638
+ autoComplete: 'off'
18639
+ };
18640
+
18641
+ if (name && name.length) {
18642
+ inputAttributes.name = name;
18643
+ }
18644
+
18645
+ // Remove custom properties before passing them to the wrapper div element
18646
+ var customProps = ['acceptedFiles', 'preventDropOnDocument', 'disablePreview', 'disableClick', 'activeClassName', 'acceptClassName', 'rejectClassName', 'disabledClassName', 'onDropAccepted', 'onDropRejected', 'onFileDialogCancel', 'maxSize', 'minSize'];
18647
+ var divProps = _extends({}, props);
18648
+ customProps.forEach(function (prop) {
18649
+ return delete divProps[prop];
18650
+ });
18651
+
18652
+ return _react2.default.createElement(
18653
+ 'div',
18654
+ _extends({
18655
+ className: className,
18656
+ style: appliedStyle
18657
+ }, divProps /* expand user provided props first so event handlers are never overridden */, {
18658
+ onClick: this.composeHandlers(this.onClick),
18659
+ onDragStart: this.composeHandlers(this.onDragStart),
18660
+ onDragEnter: this.composeHandlers(this.onDragEnter),
18661
+ onDragOver: this.composeHandlers(this.onDragOver),
18662
+ onDragLeave: this.composeHandlers(this.onDragLeave),
18663
+ onDrop: this.composeHandlers(this.onDrop),
18664
+ ref: this.setRef,
18665
+ 'aria-disabled': disabled
18666
+ }),
18667
+ this.renderChildren(children, isDragActive, isDragAccept, isDragReject),
18668
+ _react2.default.createElement('input', _extends({}, inputProps /* expand user provided inputProps first so inputAttributes override them */, inputAttributes))
18669
+ );
18670
+ }
18671
+ }]);
18672
+
18673
+ return Dropzone;
18674
+ }(_react2.default.Component);
18675
+
18676
+ exports.default = Dropzone;
18677
+
18678
+
18679
+ Dropzone.propTypes = {
18680
+ /**
18681
+ * Allow specific types of files. See https://github.com/okonet/attr-accept for more information.
18682
+ * Keep in mind that mime type determination is not reliable across platforms. CSV files,
18683
+ * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under
18684
+ * Windows. In some cases there might not be a mime type set at all.
18685
+ * See: https://github.com/react-dropzone/react-dropzone/issues/276
18686
+ */
18687
+ accept: _propTypes2.default.string,
18688
+
18689
+ /**
18690
+ * Contents of the dropzone
18691
+ */
18692
+ children: _propTypes2.default.oneOfType([_propTypes2.default.node, _propTypes2.default.func]),
18693
+
18694
+ /**
18695
+ * Disallow clicking on the dropzone container to open file dialog
18696
+ */
18697
+ disableClick: _propTypes2.default.bool,
18698
+
18699
+ /**
18700
+ * Enable/disable the dropzone entirely
18701
+ */
18702
+ disabled: _propTypes2.default.bool,
18703
+
18704
+ /**
18705
+ * Enable/disable preview generation
18706
+ */
18707
+ disablePreview: _propTypes2.default.bool,
18708
+
18709
+ /**
18710
+ * If false, allow dropped items to take over the current browser window
18711
+ */
18712
+ preventDropOnDocument: _propTypes2.default.bool,
18713
+
18714
+ /**
18715
+ * Pass additional attributes to the `<input type="file"/>` tag
18716
+ */
18717
+ inputProps: _propTypes2.default.object,
18718
+
18719
+ /**
18720
+ * Allow dropping multiple files
18721
+ */
18722
+ multiple: _propTypes2.default.bool,
18723
+
18724
+ /**
18725
+ * `name` attribute for the input tag
18726
+ */
18727
+ name: _propTypes2.default.string,
18728
+
18729
+ /**
18730
+ * Maximum file size
18731
+ */
18732
+ maxSize: _propTypes2.default.number,
18733
+
18734
+ /**
18735
+ * Minimum file size
18736
+ */
18737
+ minSize: _propTypes2.default.number,
18738
+
18739
+ /**
18740
+ * className
18741
+ */
18742
+ className: _propTypes2.default.string,
18743
+
18744
+ /**
18745
+ * className for active state
18746
+ */
18747
+ activeClassName: _propTypes2.default.string,
18748
+
18749
+ /**
18750
+ * className for accepted state
18751
+ */
18752
+ acceptClassName: _propTypes2.default.string,
18753
+
18754
+ /**
18755
+ * className for rejected state
18756
+ */
18757
+ rejectClassName: _propTypes2.default.string,
18758
+
18759
+ /**
18760
+ * className for disabled state
18761
+ */
18762
+ disabledClassName: _propTypes2.default.string,
18763
+
18764
+ /**
18765
+ * CSS styles to apply
18766
+ */
18767
+ style: _propTypes2.default.object,
18768
+
18769
+ /**
18770
+ * CSS styles to apply when drag is active
18771
+ */
18772
+ activeStyle: _propTypes2.default.object,
18773
+
18774
+ /**
18775
+ * CSS styles to apply when drop will be accepted
18776
+ */
18777
+ acceptStyle: _propTypes2.default.object,
18778
+
18779
+ /**
18780
+ * CSS styles to apply when drop will be rejected
18781
+ */
18782
+ rejectStyle: _propTypes2.default.object,
18783
+
18784
+ /**
18785
+ * CSS styles to apply when dropzone is disabled
18786
+ */
18787
+ disabledStyle: _propTypes2.default.object,
18788
+
18789
+ /**
18790
+ * onClick callback
18791
+ * @param {Event} event
18792
+ */
18793
+ onClick: _propTypes2.default.func,
18794
+
18795
+ /**
18796
+ * onDrop callback
18797
+ */
18798
+ onDrop: _propTypes2.default.func,
18799
+
18800
+ /**
18801
+ * onDropAccepted callback
18802
+ */
18803
+ onDropAccepted: _propTypes2.default.func,
18804
+
18805
+ /**
18806
+ * onDropRejected callback
18807
+ */
18808
+ onDropRejected: _propTypes2.default.func,
18809
+
18810
+ /**
18811
+ * onDragStart callback
18812
+ */
18813
+ onDragStart: _propTypes2.default.func,
18814
+
18815
+ /**
18816
+ * onDragEnter callback
18817
+ */
18818
+ onDragEnter: _propTypes2.default.func,
18819
+
18820
+ /**
18821
+ * onDragOver callback
18822
+ */
18823
+ onDragOver: _propTypes2.default.func,
18824
+
18825
+ /**
18826
+ * onDragLeave callback
18827
+ */
18828
+ onDragLeave: _propTypes2.default.func,
18829
+
18830
+ /**
18831
+ * Provide a callback on clicking the cancel button of the file dialog
18832
+ */
18833
+ onFileDialogCancel: _propTypes2.default.func
18834
+ };
18835
+
18836
+ Dropzone.defaultProps = {
18837
+ preventDropOnDocument: true,
18838
+ disabled: false,
18839
+ disablePreview: false,
18840
+ disableClick: false,
18841
+ multiple: true,
18842
+ maxSize: Infinity,
18843
+ minSize: 0
18844
+ };
18845
+ module.exports = exports['default'];
18846
+ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))
18847
+
18848
+ /***/ }),
18849
+ /* 1 */
18850
+ /***/ (function(module, exports) {
18851
+
18852
+ // shim for using process in browser
18853
+ var process = module.exports = {};
18854
+
18855
+ // cached from whatever global is present so that test runners that stub it
18856
+ // don't break things. But we need to wrap it in a try catch in case it is
18857
+ // wrapped in strict mode code which doesn't define any globals. It's inside a
18858
+ // function because try/catches deoptimize in certain engines.
18859
+
18860
+ var cachedSetTimeout;
18861
+ var cachedClearTimeout;
18862
+
18863
+ function defaultSetTimout() {
18864
+ throw new Error('setTimeout has not been defined');
18865
+ }
18866
+ function defaultClearTimeout () {
18867
+ throw new Error('clearTimeout has not been defined');
18868
+ }
18869
+ (function () {
18870
+ try {
18871
+ if (typeof setTimeout === 'function') {
18872
+ cachedSetTimeout = setTimeout;
18873
+ } else {
18874
+ cachedSetTimeout = defaultSetTimout;
18875
+ }
18876
+ } catch (e) {
18877
+ cachedSetTimeout = defaultSetTimout;
18878
+ }
18879
+ try {
18880
+ if (typeof clearTimeout === 'function') {
18881
+ cachedClearTimeout = clearTimeout;
18882
+ } else {
18883
+ cachedClearTimeout = defaultClearTimeout;
18884
+ }
18885
+ } catch (e) {
18886
+ cachedClearTimeout = defaultClearTimeout;
18887
+ }
18888
+ } ())
18889
+ function runTimeout(fun) {
18890
+ if (cachedSetTimeout === setTimeout) {
18891
+ //normal enviroments in sane situations
18892
+ return setTimeout(fun, 0);
18893
+ }
18894
+ // if setTimeout wasn't available but was latter defined
18895
+ if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
18896
+ cachedSetTimeout = setTimeout;
18897
+ return setTimeout(fun, 0);
18898
+ }
18899
+ try {
18900
+ // when when somebody has screwed with setTimeout but no I.E. maddness
18901
+ return cachedSetTimeout(fun, 0);
18902
+ } catch(e){
18903
+ try {
18904
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
18905
+ return cachedSetTimeout.call(null, fun, 0);
18906
+ } catch(e){
18907
+ // 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
18908
+ return cachedSetTimeout.call(this, fun, 0);
18909
+ }
18910
+ }
18911
+
18912
+
18913
+ }
18914
+ function runClearTimeout(marker) {
18915
+ if (cachedClearTimeout === clearTimeout) {
18916
+ //normal enviroments in sane situations
18917
+ return clearTimeout(marker);
18918
+ }
18919
+ // if clearTimeout wasn't available but was latter defined
18920
+ if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
18921
+ cachedClearTimeout = clearTimeout;
18922
+ return clearTimeout(marker);
18923
+ }
18924
+ try {
18925
+ // when when somebody has screwed with setTimeout but no I.E. maddness
18926
+ return cachedClearTimeout(marker);
18927
+ } catch (e){
18928
+ try {
18929
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
18930
+ return cachedClearTimeout.call(null, marker);
18931
+ } catch (e){
18932
+ // 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.
18933
+ // Some versions of I.E. have different rules for clearTimeout vs setTimeout
18934
+ return cachedClearTimeout.call(this, marker);
18935
+ }
18936
+ }
18937
+
18938
+
18939
+
18940
+ }
18941
+ var queue = [];
18942
+ var draining = false;
18943
+ var currentQueue;
18944
+ var queueIndex = -1;
18945
+
18946
+ function cleanUpNextTick() {
18947
+ if (!draining || !currentQueue) {
18948
+ return;
18949
+ }
18950
+ draining = false;
18951
+ if (currentQueue.length) {
18952
+ queue = currentQueue.concat(queue);
18953
+ } else {
18954
+ queueIndex = -1;
18955
+ }
18956
+ if (queue.length) {
18957
+ drainQueue();
18958
+ }
18959
+ }
18960
+
18961
+ function drainQueue() {
18962
+ if (draining) {
18963
+ return;
18964
+ }
18965
+ var timeout = runTimeout(cleanUpNextTick);
18966
+ draining = true;
18967
+
18968
+ var len = queue.length;
18969
+ while(len) {
18970
+ currentQueue = queue;
18971
+ queue = [];
18972
+ while (++queueIndex < len) {
18973
+ if (currentQueue) {
18974
+ currentQueue[queueIndex].run();
18975
+ }
18976
+ }
18977
+ queueIndex = -1;
18978
+ len = queue.length;
18979
+ }
18980
+ currentQueue = null;
18981
+ draining = false;
18982
+ runClearTimeout(timeout);
18983
+ }
18984
+
18985
+ process.nextTick = function (fun) {
18986
+ var args = new Array(arguments.length - 1);
18987
+ if (arguments.length > 1) {
18988
+ for (var i = 1; i < arguments.length; i++) {
18989
+ args[i - 1] = arguments[i];
18990
+ }
18991
+ }
18992
+ queue.push(new Item(fun, args));
18993
+ if (queue.length === 1 && !draining) {
18994
+ runTimeout(drainQueue);
18995
+ }
18996
+ };
18997
+
18998
+ // v8 likes predictible objects
18999
+ function Item(fun, array) {
19000
+ this.fun = fun;
19001
+ this.array = array;
19002
+ }
19003
+ Item.prototype.run = function () {
19004
+ this.fun.apply(null, this.array);
19005
+ };
19006
+ process.title = 'browser';
19007
+ process.browser = true;
19008
+ process.env = {};
19009
+ process.argv = [];
19010
+ process.version = ''; // empty string to avoid regexp issues
19011
+ process.versions = {};
19012
+
19013
+ function noop() {}
19014
+
19015
+ process.on = noop;
19016
+ process.addListener = noop;
19017
+ process.once = noop;
19018
+ process.off = noop;
19019
+ process.removeListener = noop;
19020
+ process.removeAllListeners = noop;
19021
+ process.emit = noop;
19022
+ process.prependListener = noop;
19023
+ process.prependOnceListener = noop;
19024
+
19025
+ process.listeners = function (name) { return [] }
19026
+
19027
+ process.binding = function (name) {
19028
+ throw new Error('process.binding is not supported');
19029
+ };
19030
+
19031
+ process.cwd = function () { return '/' };
19032
+ process.chdir = function (dir) {
19033
+ throw new Error('process.chdir is not supported');
19034
+ };
19035
+ process.umask = function() { return 0; };
19036
+
19037
+
19038
+ /***/ }),
19039
+ /* 2 */
19040
+ /***/ (function(module, exports) {
19041
+
19042
+ module.exports = __WEBPACK_EXTERNAL_MODULE_2__;
19043
+
19044
+ /***/ }),
19045
+ /* 3 */
19046
+ /***/ (function(module, exports) {
19047
+
19048
+ module.exports = __WEBPACK_EXTERNAL_MODULE_3__;
19049
+
19050
+ /***/ }),
19051
+ /* 4 */
19052
+ /***/ (function(module, exports, __webpack_require__) {
19053
+
19054
+ "use strict";
19055
+
19056
+
19057
+ Object.defineProperty(exports, "__esModule", {
19058
+ value: true
19059
+ });
19060
+ exports.supportMultiple = undefined;
19061
+ exports.getDataTransferItems = getDataTransferItems;
19062
+ exports.fileAccepted = fileAccepted;
19063
+ exports.fileMatchSize = fileMatchSize;
19064
+ exports.allFilesAccepted = allFilesAccepted;
19065
+ exports.onDocumentDragOver = onDocumentDragOver;
19066
+
19067
+ var _attrAccept = __webpack_require__(5);
19068
+
19069
+ var _attrAccept2 = _interopRequireDefault(_attrAccept);
19070
+
19071
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19072
+
19073
+ var supportMultiple = exports.supportMultiple = typeof document !== 'undefined' && document && document.createElement ? 'multiple' in document.createElement('input') : true;
19074
+
19075
+ function getDataTransferItems(event) {
19076
+ var dataTransferItemsList = [];
19077
+ if (event.dataTransfer) {
19078
+ var dt = event.dataTransfer;
19079
+ if (dt.files && dt.files.length) {
19080
+ dataTransferItemsList = dt.files;
19081
+ } else if (dt.items && dt.items.length) {
19082
+ // During the drag even the dataTransfer.files is null
19083
+ // but Chrome implements some drag store, which is accesible via dataTransfer.items
19084
+ dataTransferItemsList = dt.items;
19085
+ }
19086
+ } else if (event.target && event.target.files) {
19087
+ dataTransferItemsList = event.target.files;
19088
+ }
19089
+ // Convert from DataTransferItemsList to the native Array
19090
+ return Array.prototype.slice.call(dataTransferItemsList);
19091
+ }
19092
+
19093
+ // Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with
19094
+ // that MIME type will always be accepted
19095
+ function fileAccepted(file, accept) {
19096
+ return file.type === 'application/x-moz-file' || (0, _attrAccept2.default)(file, accept);
19097
+ }
19098
+
19099
+ function fileMatchSize(file, maxSize, minSize) {
19100
+ return file.size <= maxSize && file.size >= minSize;
19101
+ }
19102
+
19103
+ function allFilesAccepted(files, accept) {
19104
+ return files.every(function (file) {
19105
+ return fileAccepted(file, accept);
19106
+ });
19107
+ }
19108
+
19109
+ // allow the entire document to be a drag target
19110
+ function onDocumentDragOver(evt) {
19111
+ evt.preventDefault();
19112
+ }
19113
+
19114
+ /***/ }),
19115
+ /* 5 */
19116
+ /***/ (function(module, exports) {
19117
+
19118
+ module.exports=function(t){function n(e){if(r[e])return r[e].exports;var o=r[e]={exports:{},id:e,loaded:!1};return t[e].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}var r={};return n.m=t,n.c=r,n.p="",n(0)}([function(t,n,r){"use strict";n.__esModule=!0,r(8),r(9),n["default"]=function(t,n){if(t&&n){var r=function(){var r=Array.isArray(n)?n:n.split(","),e=t.name||"",o=t.type||"",i=o.replace(/\/.*$/,"");return{v:r.some(function(t){var n=t.trim();return"."===n.charAt(0)?e.toLowerCase().endsWith(n.toLowerCase()):/\/\*$/.test(n)?i===n.replace(/\/.*$/,""):o===n})}}();if("object"==typeof r)return r.v}return!0},t.exports=n["default"]},function(t,n){var r=t.exports={version:"1.2.2"};"number"==typeof __e&&(__e=r)},function(t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},function(t,n,r){var e=r(2),o=r(1),i=r(4),u=r(19),c="prototype",f=function(t,n){return function(){return t.apply(n,arguments)}},s=function(t,n,r){var a,p,l,y,d=t&s.G,h=t&s.P,v=d?e:t&s.S?e[n]||(e[n]={}):(e[n]||{})[c],x=d?o:o[n]||(o[n]={});d&&(r=n);for(a in r)p=!(t&s.F)&&v&&a in v,l=(p?v:r)[a],y=t&s.B&&p?f(l,e):h&&"function"==typeof l?f(Function.call,l):l,v&&!p&&u(v,a,l),x[a]!=l&&i(x,a,y),h&&((x[c]||(x[c]={}))[a]=l)};e.core=o,s.F=1,s.G=2,s.S=4,s.P=8,s.B=16,s.W=32,t.exports=s},function(t,n,r){var e=r(5),o=r(18);t.exports=r(22)?function(t,n,r){return e.setDesc(t,n,o(1,r))}:function(t,n,r){return t[n]=r,t}},function(t,n){var r=Object;t.exports={create:r.create,getProto:r.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:r.getOwnPropertyDescriptor,setDesc:r.defineProperty,setDescs:r.defineProperties,getKeys:r.keys,getNames:r.getOwnPropertyNames,getSymbols:r.getOwnPropertySymbols,each:[].forEach}},function(t,n){var r=0,e=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+e).toString(36))}},function(t,n,r){var e=r(20)("wks"),o=r(2).Symbol;t.exports=function(t){return e[t]||(e[t]=o&&o[t]||(o||r(6))("Symbol."+t))}},function(t,n,r){r(26),t.exports=r(1).Array.some},function(t,n,r){r(25),t.exports=r(1).String.endsWith},function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,n){var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},function(t,n,r){var e=r(10);t.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,o){return t.call(n,r,e,o)}}return function(){return t.apply(n,arguments)}}},function(t,n){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},function(t,n,r){t.exports=function(t){var n=/./;try{"/./"[t](n)}catch(e){try{return n[r(7)("match")]=!1,!"/./"[t](n)}catch(o){}}return!0}},function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n,r){var e=r(16),o=r(11),i=r(7)("match");t.exports=function(t){var n;return e(t)&&(void 0!==(n=t[i])?!!n:"RegExp"==o(t))}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n,r){var e=r(2),o=r(4),i=r(6)("src"),u="toString",c=Function[u],f=(""+c).split(u);r(1).inspectSource=function(t){return c.call(t)},(t.exports=function(t,n,r,u){"function"==typeof r&&(o(r,i,t[n]?""+t[n]:f.join(String(n))),"name"in r||(r.name=n)),t===e?t[n]=r:(u||delete t[n],o(t,n,r))})(Function.prototype,u,function(){return"function"==typeof this&&this[i]||c.call(this)})},function(t,n,r){var e=r(2),o="__core-js_shared__",i=e[o]||(e[o]={});t.exports=function(t){return i[t]||(i[t]={})}},function(t,n,r){var e=r(17),o=r(13);t.exports=function(t,n,r){if(e(n))throw TypeError("String#"+r+" doesn't accept regex!");return String(o(t))}},function(t,n,r){t.exports=!r(15)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,n){var r=Math.ceil,e=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?e:r)(t)}},function(t,n,r){var e=r(23),o=Math.min;t.exports=function(t){return t>0?o(e(t),9007199254740991):0}},function(t,n,r){"use strict";var e=r(3),o=r(24),i=r(21),u="endsWith",c=""[u];e(e.P+e.F*r(14)(u),"String",{endsWith:function(t){var n=i(this,t,u),r=arguments,e=r.length>1?r[1]:void 0,f=o(n.length),s=void 0===e?f:Math.min(o(e),f),a=String(t);return c?c.call(n,a,s):n.slice(s-a.length,s)===a}})},function(t,n,r){var e=r(5),o=r(3),i=r(1).Array||Array,u={},c=function(t,n){e.each.call(t.split(","),function(t){void 0==n&&t in i?u[t]=i[t]:t in[]&&(u[t]=r(12)(Function.call,[][t],n))})};c("pop,reverse,shift,keys,values,entries",1),c("indexOf,every,some,forEach,map,filter,find,findIndex,includes",3),c("join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill"),o(o.S,"Array",u)}]);
19119
+
19120
+ /***/ }),
19121
+ /* 6 */
19122
+ /***/ (function(module, exports, __webpack_require__) {
19123
+
19124
+ "use strict";
19125
+
19126
+
19127
+ Object.defineProperty(exports, "__esModule", {
19128
+ value: true
19129
+ });
19130
+ exports.default = {
19131
+ rejected: {
19132
+ borderStyle: 'solid',
19133
+ borderColor: '#c66',
19134
+ backgroundColor: '#eee'
19135
+ },
19136
+ disabled: {
19137
+ opacity: 0.5
19138
+ },
19139
+ active: {
19140
+ borderStyle: 'solid',
19141
+ borderColor: '#6c6',
19142
+ backgroundColor: '#eee'
19143
+ },
19144
+ default: {
19145
+ width: 200,
19146
+ height: 200,
19147
+ borderWidth: 2,
19148
+ borderColor: '#666',
19149
+ borderStyle: 'dashed',
19150
+ borderRadius: 5
19151
+ }
19152
+ };
19153
+ module.exports = exports['default'];
19154
+
19155
+ /***/ })
19156
+ /******/ ]);
19157
+ });
19158
+ //# sourceMappingURL=index.js.map
19159
+
19160
+ /***/ },
19161
+ /* 202 */,
19162
+ /* 203 */
17958
19163
  /***/ function(module, exports, __webpack_require__) {
17959
19164
 
17960
19165
  'use strict';
@@ -17963,25 +19168,25 @@ module.exports =
17963
19168
 
17964
19169
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
17965
19170
 
17966
- var _addClass = __webpack_require__(204);
19171
+ var _addClass = __webpack_require__(205);
17967
19172
 
17968
19173
  var _addClass2 = _interopRequireDefault(_addClass);
17969
19174
 
17970
- var _removeClass = __webpack_require__(206);
19175
+ var _removeClass = __webpack_require__(207);
17971
19176
 
17972
19177
  var _removeClass2 = _interopRequireDefault(_removeClass);
17973
19178
 
17974
- var _requestAnimationFrame = __webpack_require__(208);
19179
+ var _requestAnimationFrame = __webpack_require__(209);
17975
19180
 
17976
19181
  var _requestAnimationFrame2 = _interopRequireDefault(_requestAnimationFrame);
17977
19182
 
17978
- var _properties = __webpack_require__(207);
19183
+ var _properties = __webpack_require__(208);
17979
19184
 
17980
19185
  var _react = __webpack_require__(1);
17981
19186
 
17982
19187
  var _react2 = _interopRequireDefault(_react);
17983
19188
 
17984
- var _propTypes = __webpack_require__(39);
19189
+ var _propTypes = __webpack_require__(27);
17985
19190
 
17986
19191
  var _propTypes2 = _interopRequireDefault(_propTypes);
17987
19192
 
@@ -18188,7 +19393,7 @@ module.exports =
18188
19393
  module.exports = exports['default'];
18189
19394
 
18190
19395
  /***/ },
18191
- /* 203 */
19396
+ /* 204 */
18192
19397
  /***/ function(module, exports, __webpack_require__) {
18193
19398
 
18194
19399
  'use strict';
@@ -18205,15 +19410,15 @@ module.exports =
18205
19410
 
18206
19411
  var _react2 = _interopRequireDefault(_react);
18207
19412
 
18208
- var _propTypes = __webpack_require__(39);
19413
+ var _propTypes = __webpack_require__(27);
18209
19414
 
18210
19415
  var _propTypes2 = _interopRequireDefault(_propTypes);
18211
19416
 
18212
- var _warning = __webpack_require__(210);
19417
+ var _warning = __webpack_require__(211);
18213
19418
 
18214
19419
  var _warning2 = _interopRequireDefault(_warning);
18215
19420
 
18216
- var _ChildMapping = __webpack_require__(209);
19421
+ var _ChildMapping = __webpack_require__(210);
18217
19422
 
18218
19423
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18219
19424
 
@@ -18465,7 +19670,7 @@ module.exports =
18465
19670
  module.exports = exports['default'];
18466
19671
 
18467
19672
  /***/ },
18468
- /* 204 */
19673
+ /* 205 */
18469
19674
  /***/ function(module, exports, __webpack_require__) {
18470
19675
 
18471
19676
  'use strict';
@@ -18475,7 +19680,7 @@ module.exports =
18475
19680
  });
18476
19681
  exports.default = addClass;
18477
19682
 
18478
- var _hasClass = __webpack_require__(205);
19683
+ var _hasClass = __webpack_require__(206);
18479
19684
 
18480
19685
  var _hasClass2 = _interopRequireDefault(_hasClass);
18481
19686
 
@@ -18487,7 +19692,7 @@ module.exports =
18487
19692
  module.exports = exports['default'];
18488
19693
 
18489
19694
  /***/ },
18490
- /* 205 */
19695
+ /* 206 */
18491
19696
  /***/ function(module, exports) {
18492
19697
 
18493
19698
  "use strict";
@@ -18502,7 +19707,7 @@ module.exports =
18502
19707
  module.exports = exports["default"];
18503
19708
 
18504
19709
  /***/ },
18505
- /* 206 */
19710
+ /* 207 */
18506
19711
  /***/ function(module, exports) {
18507
19712
 
18508
19713
  'use strict';
@@ -18512,7 +19717,7 @@ module.exports =
18512
19717
  };
18513
19718
 
18514
19719
  /***/ },
18515
- /* 207 */
19720
+ /* 208 */
18516
19721
  /***/ function(module, exports, __webpack_require__) {
18517
19722
 
18518
19723
  'use strict';
@@ -18627,7 +19832,7 @@ module.exports =
18627
19832
  }
18628
19833
 
18629
19834
  /***/ },
18630
- /* 208 */
19835
+ /* 209 */
18631
19836
  /***/ function(module, exports, __webpack_require__) {
18632
19837
 
18633
19838
  'use strict';
@@ -18685,7 +19890,7 @@ module.exports =
18685
19890
  module.exports = exports['default'];
18686
19891
 
18687
19892
  /***/ },
18688
- /* 209 */
19893
+ /* 210 */
18689
19894
  /***/ function(module, exports, __webpack_require__) {
18690
19895
 
18691
19896
  'use strict';
@@ -18781,7 +19986,7 @@ module.exports =
18781
19986
  }
18782
19987
 
18783
19988
  /***/ },
18784
- /* 210 */
19989
+ /* 211 */
18785
19990
  /***/ function(module, exports, __webpack_require__) {
18786
19991
 
18787
19992
  /**
@@ -18847,13 +20052,13 @@ module.exports =
18847
20052
 
18848
20053
 
18849
20054
  /***/ },
18850
- /* 211 */
20055
+ /* 212 */
18851
20056
  /***/ function(module, exports) {
18852
20057
 
18853
20058
  module.exports = require("moment-timezone");
18854
20059
 
18855
20060
  /***/ },
18856
- /* 212 */
20061
+ /* 213 */
18857
20062
  /***/ function(module, exports) {
18858
20063
 
18859
20064
  module.exports = require("redux");