@lingk/sync 0.1.15 → 0.1.17

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
@@ -4539,7 +4539,7 @@ module.exports =
4539
4539
  /***/ function(module, exports, __webpack_require__) {
4540
4540
 
4541
4541
  var dP = __webpack_require__(18)
4542
- , createDesc = __webpack_require__(32);
4542
+ , createDesc = __webpack_require__(33);
4543
4543
  module.exports = __webpack_require__(10) ? function(object, key, value){
4544
4544
  return dP.f(object, key, createDesc(1, value));
4545
4545
  } : function(object, key, value){
@@ -4621,7 +4621,7 @@ module.exports =
4621
4621
  /***/ function(module, exports, __webpack_require__) {
4622
4622
 
4623
4623
  // to indexed object, toObject with fallback for non-array-like ES3 strings
4624
- var IObject = __webpack_require__(29)
4624
+ var IObject = __webpack_require__(30)
4625
4625
  , defined = __webpack_require__(16);
4626
4626
  module.exports = function(it){
4627
4627
  return IObject(defined(it));
@@ -4756,15 +4756,47 @@ module.exports =
4756
4756
  return prop.name === m.propertyToName;
4757
4757
  });
4758
4758
 
4759
+ var transformations = [{ type: 'none' }];
4760
+ if (m.transformations && m.transformations.length > 0) {
4761
+ var trans = m.transformations[0];
4762
+ if (trans.type === 'concat') {
4763
+ (function () {
4764
+ var s = trans.args[1].split('->');
4765
+ var transConcatResourceName = s[0];
4766
+ var nestedFields = s[1].split('.');
4767
+ var field = nestedFields[nestedFields.length - 1];
4768
+ nestedFields.pop();
4769
+ var concatRsc = wizard.savedBundles.bundles[m.bundleIndex].resources.find(function (r) {
4770
+ return r.resourceLabel === transConcatResourceName;
4771
+ });
4772
+ var concatRscProvider = concatRsc.provider.replace('Reader', '');
4773
+ var concatRscMetadata = concatRscProvider.toLowerCase() === step.destinationProvider.toLowerCase() ? wizard.destinationMetadata : wizard.sourceMetadata;
4774
+ var transConcatResource = concatRscMetadata.find(function (r) {
4775
+ return r.type === concatRsc.resourceName;
4776
+ });
4777
+ var concatLabels = deNest(field, nestedFields, transConcatResource);
4778
+ var result = transConcatResource.name + '->';
4779
+ concatLabels.parentsArray.forEach(function (p) {
4780
+ return result += p + '.';
4781
+ });
4782
+ result += concatLabels.property;
4783
+ transformations = [{ type: 'concat', args: [trans.args[0], result] }];
4784
+ })();
4785
+ } else {
4786
+ transformations = m.transformations;
4787
+ }
4788
+ }
4789
+
4759
4790
  if (sourceResource && sourceProperty && destinationProperty) {
4760
4791
  mappings.push(Object.assign({
4761
4792
  resourceFromName: sourceResource.name,
4762
4793
  propertyFromName: deNestedProp.property
4763
4794
  }, deNestedProp.parentsArray && deNestedProp.parentsArray.length > 0 && { propertyFromParents: deNestedProp.parentsArray }, {
4764
4795
  resourceToName: bundleResource.name,
4765
- propertyToName: destinationProperty.label,
4766
- transformations: m.transformations && m.transformations.length > 0 ? m.transformations : [{ type: 'none' }]
4767
- }, m.isDestinationResource && { dataSourceIsDestinationEntity: true }, m.isExternalKeyMapping && { isExternalKeyMapping: true }, m.isUnique && { isUnique: true }));
4796
+ propertyToName: destinationProperty.label
4797
+ }, m.isDestinationResource && { dataSourceIsDestinationEntity: true }, m.isExternalKeyMapping && { isExternalKeyMapping: true }, m.isUnique && { isUnique: true }, {
4798
+ transformations: transformations
4799
+ }));
4768
4800
  }
4769
4801
  }); // end wizard.savedMappings.forEach
4770
4802
  resourceGroups.push(Object.assign({
@@ -4937,8 +4969,8 @@ module.exports =
4937
4969
  /* 24 */
4938
4970
  /***/ function(module, exports, __webpack_require__) {
4939
4971
 
4940
- var shared = __webpack_require__(33)('keys')
4941
- , uid = __webpack_require__(35);
4972
+ var shared = __webpack_require__(34)('keys')
4973
+ , uid = __webpack_require__(36);
4942
4974
  module.exports = function(key){
4943
4975
  return shared[key] || (shared[key] = uid(key));
4944
4976
  };
@@ -5508,6 +5540,134 @@ module.exports =
5508
5540
 
5509
5541
  /***/ },
5510
5542
  /* 26 */
5543
+ /***/ function(module, exports, __webpack_require__) {
5544
+
5545
+ 'use strict';
5546
+
5547
+ Object.defineProperty(exports, "__esModule", {
5548
+ value: true
5549
+ });
5550
+
5551
+ 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; }; }();
5552
+
5553
+ var _react = __webpack_require__(2);
5554
+
5555
+ var _react2 = _interopRequireDefault(_react);
5556
+
5557
+ var _nestExpand = __webpack_require__(51);
5558
+
5559
+ var _nestExpand2 = _interopRequireDefault(_nestExpand);
5560
+
5561
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5562
+
5563
+ 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); } }
5564
+
5565
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
5566
+
5567
+ 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; }
5568
+
5569
+ 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; }
5570
+
5571
+ var SelectWrapper = function (_Component) {
5572
+ _inherits(SelectWrapper, _Component);
5573
+
5574
+ function SelectWrapper() {
5575
+ _classCallCheck(this, SelectWrapper);
5576
+
5577
+ var _this = _possibleConstructorReturn(this, (SelectWrapper.__proto__ || Object.getPrototypeOf(SelectWrapper)).call(this));
5578
+
5579
+ _this.state = {
5580
+ expanded: {}
5581
+ };
5582
+ _this.expand = _this.expand.bind(_this);
5583
+ return _this;
5584
+ }
5585
+
5586
+ _createClass(SelectWrapper, [{
5587
+ key: 'componentDidMount',
5588
+ value: function componentDidMount() {}
5589
+ }, {
5590
+ key: 'expand',
5591
+ value: function expand(v, parents) {
5592
+ this.setState({ expanded: _nestExpand2.default.expand(v, parents, this.state.expanded) });
5593
+ }
5594
+ }, {
5595
+ key: 'render',
5596
+ value: function render() {
5597
+ var _props = this.props,
5598
+ values = _props.values,
5599
+ inputs = _props.inputs,
5600
+ selectedValues = _props.selectedValues,
5601
+ sectionLabels = _props.sectionLabels,
5602
+ fieldPropLabel = _props.fieldPropLabel;
5603
+
5604
+
5605
+ var iterator = function (sectionValues, entity, sectionLabel, iteration, parents, newParent) {
5606
+
5607
+ if (newParent) {
5608
+ parents = parents.concat(newParent);
5609
+ }
5610
+
5611
+ var title = '';
5612
+ parents && parents.forEach(function (pt) {
5613
+ title += pt;
5614
+ title += ': ';
5615
+ });
5616
+ title += entity[fieldPropLabel];
5617
+
5618
+ var isExpanded = _nestExpand2.default.checkIfExpanded(entity[fieldPropLabel], parents, this.state.expanded);
5619
+
5620
+ sectionValues.push(Object.assign({}, entity, {
5621
+ title: title,
5622
+ section: sectionLabel,
5623
+ iteration: iteration,
5624
+ parents: parents,
5625
+ isExpanded: isExpanded,
5626
+ isSelected: selectedValues && selectedValues.length > 0 && selectedValues.some(function (rsc) {
5627
+ return rsc[fieldPropLabel] === entity[fieldPropLabel] && (!(parents && rsc.parents) || JSON.stringify(rsc.parents) === JSON.stringify(parents)) && (!(sectionLabel && rsc.section) || sectionLabel === rsc.section);
5628
+ })
5629
+ }));
5630
+ if (entity.object && isExpanded) {
5631
+ entity.object.properties.forEach(function (p) {
5632
+ iterator(sectionValues, p, sectionLabel, iteration + 1, parents, entity[fieldPropLabel]);
5633
+ });
5634
+ }
5635
+ return sectionValues;
5636
+ }.bind(this);
5637
+
5638
+ var vals = [].concat(_toConsumableArray(values));
5639
+ if (sectionLabels) {
5640
+ var v = [];
5641
+ sectionLabels.forEach(function (s, i) {
5642
+ if (values[i] && values[i].length > 0) {
5643
+ (function () {
5644
+ v = v.concat(sectionLabels[i]);
5645
+ var sectionValues = [];
5646
+ values[i].forEach(function (entity) {
5647
+ iterator(sectionValues, entity, sectionLabels[i], 0, []);
5648
+ });
5649
+ v = v.concat(sectionValues);
5650
+ })();
5651
+ }
5652
+ });
5653
+ vals = v;
5654
+ }
5655
+
5656
+ return _react2.default.createElement(
5657
+ 'div',
5658
+ null,
5659
+ _react2.default.createElement(inputs.Select, Object.assign({}, this.props, { vals: vals, expand: this.expand }))
5660
+ );
5661
+ }
5662
+ }]);
5663
+
5664
+ return SelectWrapper;
5665
+ }(_react.Component);
5666
+
5667
+ exports.default = SelectWrapper;
5668
+
5669
+ /***/ },
5670
+ /* 27 */
5511
5671
  /***/ function(module, exports) {
5512
5672
 
5513
5673
  var toString = {}.toString;
@@ -5517,7 +5677,7 @@ module.exports =
5517
5677
  };
5518
5678
 
5519
5679
  /***/ },
5520
- /* 27 */
5680
+ /* 28 */
5521
5681
  /***/ function(module, exports, __webpack_require__) {
5522
5682
 
5523
5683
  var isObject = __webpack_require__(14)
@@ -5529,7 +5689,7 @@ module.exports =
5529
5689
  };
5530
5690
 
5531
5691
  /***/ },
5532
- /* 28 */
5692
+ /* 29 */
5533
5693
  /***/ function(module, exports) {
5534
5694
 
5535
5695
  // IE 8- don't enum bug keys
@@ -5538,30 +5698,30 @@ module.exports =
5538
5698
  ).split(',');
5539
5699
 
5540
5700
  /***/ },
5541
- /* 29 */
5701
+ /* 30 */
5542
5702
  /***/ function(module, exports, __webpack_require__) {
5543
5703
 
5544
5704
  // fallback for non-array-like ES3 and non-enumerable old V8 strings
5545
- var cof = __webpack_require__(26);
5705
+ var cof = __webpack_require__(27);
5546
5706
  module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
5547
5707
  return cof(it) == 'String' ? it.split('') : Object(it);
5548
5708
  };
5549
5709
 
5550
5710
  /***/ },
5551
- /* 30 */,
5552
- /* 31 */
5711
+ /* 31 */,
5712
+ /* 32 */
5553
5713
  /***/ function(module, exports, __webpack_require__) {
5554
5714
 
5555
5715
  // 19.1.2.14 / 15.2.3.14 Object.keys(O)
5556
5716
  var $keys = __webpack_require__(45)
5557
- , enumBugKeys = __webpack_require__(28);
5717
+ , enumBugKeys = __webpack_require__(29);
5558
5718
 
5559
5719
  module.exports = Object.keys || function keys(O){
5560
5720
  return $keys(O, enumBugKeys);
5561
5721
  };
5562
5722
 
5563
5723
  /***/ },
5564
- /* 32 */
5724
+ /* 33 */
5565
5725
  /***/ function(module, exports) {
5566
5726
 
5567
5727
  module.exports = function(bitmap, value){
@@ -5574,7 +5734,7 @@ module.exports =
5574
5734
  };
5575
5735
 
5576
5736
  /***/ },
5577
- /* 33 */
5737
+ /* 34 */
5578
5738
  /***/ function(module, exports, __webpack_require__) {
5579
5739
 
5580
5740
  var global = __webpack_require__(7)
@@ -5585,7 +5745,7 @@ module.exports =
5585
5745
  };
5586
5746
 
5587
5747
  /***/ },
5588
- /* 34 */
5748
+ /* 35 */
5589
5749
  /***/ function(module, exports, __webpack_require__) {
5590
5750
 
5591
5751
  // 7.1.13 ToObject(argument)
@@ -5595,7 +5755,7 @@ module.exports =
5595
5755
  };
5596
5756
 
5597
5757
  /***/ },
5598
- /* 35 */
5758
+ /* 36 */
5599
5759
  /***/ function(module, exports) {
5600
5760
 
5601
5761
  var id = 0
@@ -5605,7 +5765,7 @@ module.exports =
5605
5765
  };
5606
5766
 
5607
5767
  /***/ },
5608
- /* 36 */
5768
+ /* 37 */
5609
5769
  /***/ function(module, exports, __webpack_require__) {
5610
5770
 
5611
5771
  var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -5659,7 +5819,7 @@ module.exports =
5659
5819
 
5660
5820
 
5661
5821
  /***/ },
5662
- /* 37 */
5822
+ /* 38 */
5663
5823
  /***/ function(module, exports, __webpack_require__) {
5664
5824
 
5665
5825
  /**
@@ -5695,7 +5855,7 @@ module.exports =
5695
5855
 
5696
5856
 
5697
5857
  /***/ },
5698
- /* 38 */
5858
+ /* 39 */
5699
5859
  /***/ function(module, exports) {
5700
5860
 
5701
5861
  'use strict';
@@ -5719,134 +5879,6 @@ module.exports =
5719
5879
  var SET_OAUTH_URL = exports.SET_OAUTH_URL = 'SET_OAUTH_URL';
5720
5880
  var GETTING_OAUTH_URL = exports.GETTING_OAUTH_URL = 'GETTING_OAUTH_URL';
5721
5881
 
5722
- /***/ },
5723
- /* 39 */
5724
- /***/ function(module, exports, __webpack_require__) {
5725
-
5726
- 'use strict';
5727
-
5728
- Object.defineProperty(exports, "__esModule", {
5729
- value: true
5730
- });
5731
-
5732
- 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; }; }();
5733
-
5734
- var _react = __webpack_require__(2);
5735
-
5736
- var _react2 = _interopRequireDefault(_react);
5737
-
5738
- var _nestExpand = __webpack_require__(51);
5739
-
5740
- var _nestExpand2 = _interopRequireDefault(_nestExpand);
5741
-
5742
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5743
-
5744
- 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); } }
5745
-
5746
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
5747
-
5748
- 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; }
5749
-
5750
- 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; }
5751
-
5752
- var SelectWrapper = function (_Component) {
5753
- _inherits(SelectWrapper, _Component);
5754
-
5755
- function SelectWrapper() {
5756
- _classCallCheck(this, SelectWrapper);
5757
-
5758
- var _this = _possibleConstructorReturn(this, (SelectWrapper.__proto__ || Object.getPrototypeOf(SelectWrapper)).call(this));
5759
-
5760
- _this.state = {
5761
- expanded: {}
5762
- };
5763
- _this.expand = _this.expand.bind(_this);
5764
- return _this;
5765
- }
5766
-
5767
- _createClass(SelectWrapper, [{
5768
- key: 'componentDidMount',
5769
- value: function componentDidMount() {}
5770
- }, {
5771
- key: 'expand',
5772
- value: function expand(v, parents) {
5773
- this.setState({ expanded: _nestExpand2.default.expand(v, parents, this.state.expanded) });
5774
- }
5775
- }, {
5776
- key: 'render',
5777
- value: function render() {
5778
- var _props = this.props,
5779
- values = _props.values,
5780
- inputs = _props.inputs,
5781
- selectedValues = _props.selectedValues,
5782
- sectionLabels = _props.sectionLabels,
5783
- fieldPropLabel = _props.fieldPropLabel;
5784
-
5785
-
5786
- var iterator = function (sectionValues, entity, sectionLabel, iteration, parents, newParent) {
5787
-
5788
- if (newParent) {
5789
- parents = parents.concat(newParent);
5790
- }
5791
-
5792
- var title = '';
5793
- parents && parents.forEach(function (pt) {
5794
- title += pt;
5795
- title += ': ';
5796
- });
5797
- title += entity[fieldPropLabel];
5798
-
5799
- var isExpanded = _nestExpand2.default.checkIfExpanded(entity[fieldPropLabel], parents, this.state.expanded);
5800
-
5801
- sectionValues.push(Object.assign({}, entity, {
5802
- title: title,
5803
- section: sectionLabel,
5804
- iteration: iteration,
5805
- parents: parents,
5806
- isExpanded: isExpanded,
5807
- isSelected: selectedValues && selectedValues.length > 0 && selectedValues.some(function (rsc) {
5808
- return rsc[fieldPropLabel] === entity[fieldPropLabel] && (!(parents && rsc.parents) || JSON.stringify(rsc.parents) === JSON.stringify(parents)) && (!(sectionLabel && rsc.section) || sectionLabel === rsc.section);
5809
- })
5810
- }));
5811
- if (entity.object && isExpanded) {
5812
- entity.object.properties.forEach(function (p) {
5813
- iterator(sectionValues, p, sectionLabel, iteration + 1, parents, entity[fieldPropLabel]);
5814
- });
5815
- }
5816
- return sectionValues;
5817
- }.bind(this);
5818
-
5819
- var vals = [].concat(_toConsumableArray(values));
5820
- if (sectionLabels) {
5821
- var v = [];
5822
- sectionLabels.forEach(function (s, i) {
5823
- if (values[i] && values[i].length > 0) {
5824
- (function () {
5825
- v = v.concat(sectionLabels[i]);
5826
- var sectionValues = [];
5827
- values[i].forEach(function (entity) {
5828
- iterator(sectionValues, entity, sectionLabels[i], 0, []);
5829
- });
5830
- v = v.concat(sectionValues);
5831
- })();
5832
- }
5833
- });
5834
- vals = v;
5835
- }
5836
-
5837
- return _react2.default.createElement(
5838
- 'div',
5839
- null,
5840
- _react2.default.createElement(inputs.Select, Object.assign({}, this.props, { vals: vals, expand: this.expand }))
5841
- );
5842
- }
5843
- }]);
5844
-
5845
- return SelectWrapper;
5846
- }(_react.Component);
5847
-
5848
- exports.default = SelectWrapper;
5849
-
5850
5882
  /***/ },
5851
5883
  /* 40 */
5852
5884
  /***/ function(module, exports, __webpack_require__) {
@@ -5940,7 +5972,7 @@ module.exports =
5940
5972
  /***/ function(module, exports, __webpack_require__) {
5941
5973
 
5942
5974
  module.exports = !__webpack_require__(10) && !__webpack_require__(12)(function(){
5943
- return Object.defineProperty(__webpack_require__(27)('div'), 'a', {get: function(){ return 7; }}).a != 7;
5975
+ return Object.defineProperty(__webpack_require__(28)('div'), 'a', {get: function(){ return 7; }}).a != 7;
5944
5976
  });
5945
5977
 
5946
5978
  /***/ },
@@ -6019,7 +6051,7 @@ module.exports =
6019
6051
 
6020
6052
  var _react2 = _interopRequireDefault(_react);
6021
6053
 
6022
- var _propTypes = __webpack_require__(37);
6054
+ var _propTypes = __webpack_require__(38);
6023
6055
 
6024
6056
  var _propTypes2 = _interopRequireDefault(_propTypes);
6025
6057
 
@@ -6120,7 +6152,7 @@ module.exports =
6120
6152
 
6121
6153
  var _react2 = _interopRequireDefault(_react);
6122
6154
 
6123
- var _selectWrapper = __webpack_require__(39);
6155
+ var _selectWrapper = __webpack_require__(26);
6124
6156
 
6125
6157
  var _selectWrapper2 = _interopRequireDefault(_selectWrapper);
6126
6158
 
@@ -6150,7 +6182,8 @@ module.exports =
6150
6182
  justClicked: false,
6151
6183
  multiple: false,
6152
6184
  overflowHidden: true,
6153
- customizingGroup: null
6185
+ customizingGroup: null,
6186
+ showModeOptions: false
6154
6187
  };
6155
6188
  _this.pickEntity = _this.pickEntity.bind(_this);
6156
6189
  _this.unPick = _this.unPick.bind(_this);
@@ -6168,6 +6201,7 @@ module.exports =
6168
6201
  _this.addDefaultEntity = _this.addDefaultEntity.bind(_this);
6169
6202
  _this.customize = _this.customize.bind(_this);
6170
6203
  _this.removeEntity = _this.removeEntity.bind(_this);
6204
+ _this.toggleModeOptions = _this.toggleModeOptions.bind(_this);
6171
6205
  return _this;
6172
6206
  }
6173
6207
 
@@ -6220,6 +6254,11 @@ module.exports =
6220
6254
  this.setState({ customizingGroup: groupName });
6221
6255
  }
6222
6256
  }
6257
+ }, {
6258
+ key: 'toggleModeOptions',
6259
+ value: function toggleModeOptions() {
6260
+ this.setState({ showModeOptions: !this.state.showModeOptions });
6261
+ }
6223
6262
  }, {
6224
6263
  key: 'showOverflow',
6225
6264
  value: function showOverflow() {
@@ -6241,7 +6280,8 @@ module.exports =
6241
6280
  paneToggle: !this.state.paneToggle,
6242
6281
  overflowHidden: true,
6243
6282
  justClicked: true,
6244
- customizingGroup: null
6283
+ customizingGroup: null,
6284
+ showModeOptions: false
6245
6285
  });
6246
6286
  setTimeout(function () {
6247
6287
  _this2.setState({ justClicked: false });
@@ -6404,7 +6444,9 @@ module.exports =
6404
6444
  unPick: this.unPick,
6405
6445
  customizingGroup: this.state.customizingGroup,
6406
6446
  customize: this.customize,
6407
- didRemoveEntity: this.removeEntity
6447
+ didRemoveEntity: this.removeEntity,
6448
+ showModeOptions: this.state.showModeOptions,
6449
+ toggleModeOptions: this.toggleModeOptions
6408
6450
  };
6409
6451
 
6410
6452
  var smallButtonStyle = {
@@ -6695,6 +6737,33 @@ module.exports =
6695
6737
  if (trans.type === 'none') {
6696
6738
  singleMapping.transformations.splice(index, 1);
6697
6739
  }
6740
+ if (trans.type === 'concat') {
6741
+ var r;
6742
+
6743
+ (function () {
6744
+ var s = trans.args[1].split('->');
6745
+
6746
+ var transConcatSourceResourceProvider = group.resources.find(function (r) {
6747
+ return r.name === s[0];
6748
+ }).provider;
6749
+ var transConcatSourceMetadata = transConcatSourceResourceProvider === providers['destination'] ? destinationMetadata : sourceMetadata;
6750
+ var transConcatSourceResource = transConcatSourceMetadata.find(function (rsc) {
6751
+ return rsc.name === s[0];
6752
+ });
6753
+
6754
+ var nestedFields = s[1].split('.');
6755
+ var field = nestedFields[nestedFields.length - 1];
6756
+ nestedFields.pop();
6757
+ var transSourceApiNames = findNestedProp(field, nestedFields, transConcatSourceResource);
6758
+ r = transConcatSourceResource.type + '->';
6759
+
6760
+ transSourceApiNames.parentsArray.forEach(function (p) {
6761
+ return r += p + '.';
6762
+ });
6763
+ r += transSourceApiNames.property;
6764
+ trans.args[1] = r;
6765
+ })();
6766
+ }
6698
6767
  });
6699
6768
  }
6700
6769
 
@@ -6715,8 +6784,6 @@ module.exports =
6715
6784
  if (group.lingkSourceKey) delete group.lingkSourceKey;
6716
6785
  if (group.lingkSourceKeyObject) delete group.lingkSourceKeyObject;
6717
6786
  if (group.lingkSourceKeyParents) delete group.lingkSourceKeyParents;
6718
-
6719
- if (group.hasOwnProperty('deleteEnabled')) delete group.deleteEnabled;
6720
6787
  }
6721
6788
 
6722
6789
  // BUNDLES
@@ -18995,7 +19062,7 @@ module.exports =
18995
19062
 
18996
19063
  var _react2 = _interopRequireDefault(_react);
18997
19064
 
18998
- var _propTypes = __webpack_require__(37);
19065
+ var _propTypes = __webpack_require__(38);
18999
19066
 
19000
19067
  var _propTypes2 = _interopRequireDefault(_propTypes);
19001
19068
 
@@ -19502,7 +19569,7 @@ module.exports =
19502
19569
  exports.setWizardDataLoaded = setWizardDataLoaded;
19503
19570
  exports.clearWizardFormData = clearWizardFormData;
19504
19571
 
19505
- var _types = __webpack_require__(38);
19572
+ var _types = __webpack_require__(39);
19506
19573
 
19507
19574
  var types = _interopRequireWildcard(_types);
19508
19575
 
@@ -20583,7 +20650,7 @@ module.exports =
20583
20650
 
20584
20651
  var _react2 = _interopRequireDefault(_react);
20585
20652
 
20586
- var _selectWrapper = __webpack_require__(39);
20653
+ var _selectWrapper = __webpack_require__(26);
20587
20654
 
20588
20655
  var _selectWrapper2 = _interopRequireDefault(_selectWrapper);
20589
20656
 
@@ -21552,11 +21619,16 @@ module.exports =
21552
21619
  _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
21553
21620
  _react2.default.createElement('path', { d: 'M14 4l2.29 2.29-2.88 2.88 1.42 1.42 2.88-2.88L20 10V4zm-4 0H4v6l2.29-2.29 4.71 4.7V20h2v-8.41l-5.29-5.3z' })
21554
21621
  ),
21555
- merge: _react2.default.createElement(
21622
+ concat: _react2.default.createElement(
21556
21623
  'svg',
21557
21624
  { fill: '#000000', height: '19', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
21558
- _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
21559
- _react2.default.createElement('path', { d: 'M17 20.41L18.41 19 15 15.59 13.59 17 17 20.41zM7.5 8H11v5.59L5.59 19 7 20.41l6-6V8h3.5L12 3.5 7.5 8z' })
21625
+ _react2.default.createElement(
21626
+ 'g',
21627
+ { style: { transformOrigin: '12px 12px 0px', transform: 'rotate(90deg)',
21628
+ WebkitTransformOrigin: '12px 12px 0px', WebkitTransform: 'rotate(90deg)' } },
21629
+ _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
21630
+ _react2.default.createElement('path', { d: 'M17 20.41L18.41 19 15 15.59 13.59 17 17 20.41zM7.5 8H11v5.59L5.59 19 7 20.41l6-6V8h3.5L12 3.5 7.5 8z' })
21631
+ )
21560
21632
  ),
21561
21633
  date: _react2.default.createElement(
21562
21634
  'svg',
@@ -21596,6 +21668,12 @@ module.exports =
21596
21668
  _react2.default.createElement('use', { overflow: 'visible', href: '#a' })
21597
21669
  ),
21598
21670
  _react2.default.createElement('path', { clipPath: 'url(#b)', d: 'M2.5 4v3h5v12h3V7h5V4h-13zm19 5h-9v3h3v7h3v-7h3V9z' })
21671
+ ),
21672
+ ifnull: _react2.default.createElement(
21673
+ 'svg',
21674
+ { fill: '#000000', height: '19', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
21675
+ _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
21676
+ _react2.default.createElement('path', { d: 'M12.45 16h2.09L9.43 3H7.57L2.46 16h2.09l1.12-3h5.64l1.14 3zm-6.02-5L8.5 5.48 10.57 11H6.43zm15.16.59l-8.09 8.09L9.83 16l-1.41 1.41 5.09 5.09L23 13l-1.41-1.41z' })
21599
21677
  )
21600
21678
 
21601
21679
  };
@@ -21673,7 +21751,7 @@ module.exports =
21673
21751
 
21674
21752
  var _joinVenn2 = _interopRequireDefault(_joinVenn);
21675
21753
 
21676
- var _selectWrapper = __webpack_require__(39);
21754
+ var _selectWrapper = __webpack_require__(26);
21677
21755
 
21678
21756
  var _selectWrapper2 = _interopRequireDefault(_selectWrapper);
21679
21757
 
@@ -21826,6 +21904,7 @@ module.exports =
21826
21904
 
21827
21905
  var Tooltip = inputs.Tooltip;
21828
21906
  var Button = inputs.Button;
21907
+ var Radio = inputs.Radio;
21829
21908
  var group = resourceGroups[resourceGroupIndex];
21830
21909
  var isReverse = group && group.provider === step.sourceProvider;
21831
21910
  var bit = [true, false];
@@ -21852,7 +21931,7 @@ module.exports =
21852
21931
  _react2.default.createElement(
21853
21932
  Tooltip,
21854
21933
  { nubbin: 'left-top', popStyle: { width: 250 },
21855
- wrapStyle: { position: 'absolute', left: 106, top: 7, zIndex: 6001 } },
21934
+ wrapStyle: { left: 100, top: 7, zIndex: 6001 } },
21856
21935
  _react2.default.createElement(
21857
21936
  'p',
21858
21937
  null,
@@ -21866,21 +21945,15 @@ module.exports =
21866
21945
  transitionEnterTimeout: 250, transitionLeaveTimeout: 250, key: ii },
21867
21946
  x === toggle && group && group.resources ? _react2.default.createElement(
21868
21947
  'div',
21869
- { className: 'enable-delete' },
21870
- _react2.default.createElement(_reduxForm.Field, { style: { height: 19, margin: 0, color: 'grey' },
21871
- label: 'Clean Data',
21872
- component: inputs.rfCheckbox,
21873
- checked: group && group.deleteEnabled || false,
21874
- name: 'resourceGroups.' + resourceGroupIndex + '.deleteEnabled' }),
21948
+ { className: 'enable-delete',
21949
+ onClick: function onClick() {
21950
+ return _this3.props.toggleModeOptions();
21951
+ } },
21875
21952
  _react2.default.createElement(
21876
- Tooltip,
21877
- { nubbin: 'right-top', popStyle: { width: 250, right: 36 },
21878
- wrapStyle: { position: 'absolute', right: 0, top: 4, zIndex: 6001 } },
21879
- _react2.default.createElement(
21880
- 'p',
21881
- null,
21882
- 'Records that exist in the destination but not the source will be DELETED if this option is enabled.'
21883
- )
21953
+ 'span',
21954
+ null,
21955
+ 'Mode: ',
21956
+ group && group.deleteEnabled ? 'Add/Update/Delete' : 'Add/Update'
21884
21957
  )
21885
21958
  ) : null
21886
21959
  );
@@ -22026,9 +22099,8 @@ module.exports =
22026
22099
  ),
22027
22100
  _react2.default.createElement(
22028
22101
  Tooltip,
22029
- { nubbin: 'left-top', popStyle: { width: 180,
22030
- position: 'absolute', left: -15 },
22031
- wrapStyle: { position: 'absolute', left: 148, top: 2, zIndex: 6003 } },
22102
+ { nubbin: 'left-top', popStyle: { width: 180, left: -5 },
22103
+ wrapStyle: { left: 148, top: 2, zIndex: 6003 } },
22032
22104
  _react2.default.createElement(
22033
22105
  'p',
22034
22106
  null,
@@ -22063,9 +22135,8 @@ module.exports =
22063
22135
  ),
22064
22136
  _react2.default.createElement(
22065
22137
  Tooltip,
22066
- { nubbin: 'left-top', popStyle: { width: 170,
22067
- position: 'absolute', left: -15 },
22068
- wrapStyle: { position: 'absolute', left: 50, top: 2, zIndex: 6002 } },
22138
+ { nubbin: 'left-top', popStyle: { width: 170, left: -5 },
22139
+ wrapStyle: { left: 50, top: 2, zIndex: 6002 } },
22069
22140
  _react2.default.createElement(
22070
22141
  'p',
22071
22142
  null,
@@ -22095,8 +22166,8 @@ module.exports =
22095
22166
  { style: { display: 'inline-block', width: '33%', marginTop: 6, position: 'relative', verticalAlign: 'top' } },
22096
22167
  _react2.default.createElement(
22097
22168
  Tooltip,
22098
- { nubbin: 'right-top', popStyle: { width: 300, right: 36 },
22099
- wrapStyle: { position: 'absolute', left: 60, top: 2, zIndex: 6003 } },
22169
+ { nubbin: 'right-top', popStyle: { width: 300, right: 46 },
22170
+ wrapStyle: { left: 60, top: 2, zIndex: 6003 } },
22100
22171
  _react2.default.createElement(
22101
22172
  'p',
22102
22173
  null,
@@ -22140,7 +22211,61 @@ module.exports =
22140
22211
  ) : null
22141
22212
  ) : null
22142
22213
  );
22143
- })
22214
+ }),
22215
+ _react2.default.createElement(
22216
+ _CSSTransitionGroup2.default,
22217
+ { transitionName: 'bundle-mode-options',
22218
+ transitionEnterTimeout: 250, transitionLeaveTimeout: 250 },
22219
+ this.props.showModeOptions ? _react2.default.createElement(
22220
+ 'div',
22221
+ { className: 'bundle-mode-options' },
22222
+ _react2.default.createElement(
22223
+ 'div',
22224
+ { className: 'close-bundle-mode-options',
22225
+ onClick: function onClick() {
22226
+ return _this3.props.toggleModeOptions();
22227
+ } },
22228
+ _react2.default.createElement(
22229
+ 'svg',
22230
+ { style: { width: 16, height: 16 }, viewBox: '0 0 60 60' },
22231
+ _react2.default.createElement('path', { style: { strokeWidth: 5, strokeLinecap: 'round' },
22232
+ d: 'M 15.674663,15.572746 L 44.587629,44.485711 M 45.118838,15.420972 L 15.522889,45.016920' })
22233
+ )
22234
+ ),
22235
+ _react2.default.createElement(
22236
+ 'div',
22237
+ { className: 'bundle-mode-options-content' },
22238
+ _react2.default.createElement(Radio, { label: 'Add/Update',
22239
+ onChange: function onChange() {
22240
+ return _this3.props.change('resourceGroups.' + resourceGroupIndex + '.deleteEnabled', false);
22241
+ },
22242
+ checked: group && !group.deleteEnabled, style: { cursor: 'pointer' }
22243
+ }),
22244
+ _react2.default.createElement('br', null),
22245
+ _react2.default.createElement(
22246
+ 'span',
22247
+ { className: 'labelz' },
22248
+ 'If record exists in destination, update it. Otherwise, add it.'
22249
+ ),
22250
+ _react2.default.createElement('br', null),
22251
+ _react2.default.createElement('br', null),
22252
+ _react2.default.createElement(Radio, { label: 'Add/Update/Delete',
22253
+ onChange: function onChange() {
22254
+ return _this3.props.change('resourceGroups.' + resourceGroupIndex + '.deleteEnabled', true);
22255
+ },
22256
+ checked: group && group.deleteEnabled, style: { cursor: 'pointer' }
22257
+ }),
22258
+ _react2.default.createElement('br', null),
22259
+ _react2.default.createElement(
22260
+ 'span',
22261
+ { className: 'labelz' },
22262
+ 'Delete records that exist in the destination but not the source.'
22263
+ ),
22264
+ _react2.default.createElement('br', null),
22265
+ _react2.default.createElement('br', null)
22266
+ )
22267
+ ) : null
22268
+ )
22144
22269
  )
22145
22270
  );
22146
22271
  }
@@ -22169,6 +22294,10 @@ module.exports =
22169
22294
 
22170
22295
  var _reduxForm = __webpack_require__(3);
22171
22296
 
22297
+ var _selectWrapper = __webpack_require__(26);
22298
+
22299
+ var _selectWrapper2 = _interopRequireDefault(_selectWrapper);
22300
+
22172
22301
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22173
22302
 
22174
22303
  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); } }
@@ -22193,9 +22322,11 @@ module.exports =
22193
22322
  };
22194
22323
  _this.transformOptions = {
22195
22324
  'none': 'None',
22325
+ 'concat': 'Concatenate',
22196
22326
  'trim': 'Trim Field',
22197
22327
  'date': 'Date Format',
22198
- 'lookup': 'Lookup Table'
22328
+ 'lookup': 'Lookup Table',
22329
+ 'ifnull': 'Null Check'
22199
22330
  };
22200
22331
  _this.dataTypes = ['String', 'Number', 'Date', 'Boolean'];
22201
22332
  _this.dateFormats = {
@@ -22208,19 +22339,72 @@ module.exports =
22208
22339
  _this.changeLookupTableSource = _this.changeLookupTableSource.bind(_this);
22209
22340
  _this.changeLookupTableDestination = _this.changeLookupTableDestination.bind(_this);
22210
22341
  _this.pasteIntoLookupTable = _this.pasteIntoLookupTable.bind(_this);
22342
+ _this.clickRadio = _this.clickRadio.bind(_this);
22343
+ _this.changeConcatField = _this.changeConcatField.bind(_this);
22344
+ _this.changeConcatDelimeter = _this.changeConcatDelimeter.bind(_this);
22211
22345
  return _this;
22212
22346
  }
22213
22347
 
22214
22348
  _createClass(TransformModal, [{
22215
- key: 'pasteIntoLookupTable',
22216
- value: function pasteIntoLookupTable(e, i, mappingIndex) {
22217
- var _this2 = this;
22218
-
22349
+ key: 'clickRadio',
22350
+ value: function clickRadio(v, mappingIndex) {
22219
22351
  var _props = this.props,
22220
22352
  change = _props.change,
22221
22353
  resourceGroups = _props.resourceGroups,
22222
22354
  resourceGroupIndex = _props.resourceGroupIndex;
22223
22355
 
22356
+ var groups = [].concat(_toConsumableArray(resourceGroups));
22357
+ var trans = resourceGroups[resourceGroupIndex].mappings[mappingIndex].transformations[0];
22358
+ if (trans.type !== v) {
22359
+ trans.args = [''];
22360
+ }
22361
+ change('resourceGroups', groups);
22362
+ }
22363
+ }, {
22364
+ key: 'changeConcatField',
22365
+ value: function changeConcatField(field, resource, parents, mappingIndex) {
22366
+ var _props2 = this.props,
22367
+ change = _props2.change,
22368
+ resourceGroups = _props2.resourceGroups,
22369
+ resourceGroupIndex = _props2.resourceGroupIndex;
22370
+
22371
+ var groups = [].concat(_toConsumableArray(resourceGroups));
22372
+ var trans = resourceGroups[resourceGroupIndex].mappings[mappingIndex].transformations[0];
22373
+ var s = resource + '->';
22374
+ parents && parents.forEach(function (p) {
22375
+ s += p + '.';
22376
+ });
22377
+ s += field;
22378
+ trans.args = trans.args || [];
22379
+ trans.args[1] = s;
22380
+ change('resourceGroups', groups);
22381
+ this.forceUpdate();
22382
+ }
22383
+ }, {
22384
+ key: 'changeConcatDelimeter',
22385
+ value: function changeConcatDelimeter(v, mappingIndex) {
22386
+ var _props3 = this.props,
22387
+ change = _props3.change,
22388
+ resourceGroups = _props3.resourceGroups,
22389
+ resourceGroupIndex = _props3.resourceGroupIndex;
22390
+
22391
+ var groups = [].concat(_toConsumableArray(resourceGroups));
22392
+ var trans = resourceGroups[resourceGroupIndex].mappings[mappingIndex].transformations[0];
22393
+ trans.args = trans.args || [];
22394
+ trans.args[0] = v;
22395
+ change('resourceGroups', groups);
22396
+ this.forceUpdate();
22397
+ }
22398
+ }, {
22399
+ key: 'pasteIntoLookupTable',
22400
+ value: function pasteIntoLookupTable(e, i, mappingIndex) {
22401
+ var _this2 = this;
22402
+
22403
+ var _props4 = this.props,
22404
+ change = _props4.change,
22405
+ resourceGroups = _props4.resourceGroups,
22406
+ resourceGroupIndex = _props4.resourceGroupIndex;
22407
+
22224
22408
  e.clipboardData.items[0].getAsString(function (txt) {
22225
22409
  if (txt) {
22226
22410
  (function () {
@@ -22241,10 +22425,10 @@ module.exports =
22241
22425
  }, {
22242
22426
  key: 'changeTrimCount',
22243
22427
  value: function changeTrimCount(e, v, mappingIndex) {
22244
- var _props2 = this.props,
22245
- change = _props2.change,
22246
- resourceGroups = _props2.resourceGroups,
22247
- resourceGroupIndex = _props2.resourceGroupIndex;
22428
+ var _props5 = this.props,
22429
+ change = _props5.change,
22430
+ resourceGroups = _props5.resourceGroups,
22431
+ resourceGroupIndex = _props5.resourceGroupIndex;
22248
22432
 
22249
22433
  var groups = [].concat(_toConsumableArray(resourceGroups));
22250
22434
  var trans = resourceGroups[resourceGroupIndex].mappings[mappingIndex].transformations[0];
@@ -22254,10 +22438,10 @@ module.exports =
22254
22438
  }, {
22255
22439
  key: 'changeLookupTableSource',
22256
22440
  value: function changeLookupTableSource(v, i, mappingIndex) {
22257
- var _props3 = this.props,
22258
- change = _props3.change,
22259
- resourceGroups = _props3.resourceGroups,
22260
- resourceGroupIndex = _props3.resourceGroupIndex;
22441
+ var _props6 = this.props,
22442
+ change = _props6.change,
22443
+ resourceGroups = _props6.resourceGroups,
22444
+ resourceGroupIndex = _props6.resourceGroupIndex;
22261
22445
 
22262
22446
  var groups = [].concat(_toConsumableArray(resourceGroups));
22263
22447
  var trans = resourceGroups[resourceGroupIndex].mappings[mappingIndex].transformations[0];
@@ -22269,10 +22453,10 @@ module.exports =
22269
22453
  }, {
22270
22454
  key: 'changeLookupTableDestination',
22271
22455
  value: function changeLookupTableDestination(v, i, mappingIndex) {
22272
- var _props4 = this.props,
22273
- change = _props4.change,
22274
- resourceGroups = _props4.resourceGroups,
22275
- resourceGroupIndex = _props4.resourceGroupIndex;
22456
+ var _props7 = this.props,
22457
+ change = _props7.change,
22458
+ resourceGroups = _props7.resourceGroups,
22459
+ resourceGroupIndex = _props7.resourceGroupIndex;
22276
22460
 
22277
22461
  var groups = [].concat(_toConsumableArray(resourceGroups));
22278
22462
  var trans = resourceGroups[resourceGroupIndex].mappings[mappingIndex].transformations[0];
@@ -22286,13 +22470,16 @@ module.exports =
22286
22470
  value: function render() {
22287
22471
  var _this3 = this;
22288
22472
 
22289
- var _props5 = this.props,
22290
- inputs = _props5.inputs,
22291
- opened = _props5.opened,
22292
- mapping = _props5.mapping,
22293
- hideModal = _props5.hideModal,
22294
- resourceGroups = _props5.resourceGroups,
22295
- resourceGroupIndex = _props5.resourceGroupIndex;
22473
+ var _props8 = this.props,
22474
+ inputs = _props8.inputs,
22475
+ opened = _props8.opened,
22476
+ mapping = _props8.mapping,
22477
+ hideModal = _props8.hideModal,
22478
+ resourceGroups = _props8.resourceGroups,
22479
+ resourceGroupIndex = _props8.resourceGroupIndex,
22480
+ sourceSchema = _props8.sourceSchema,
22481
+ destinationSchema = _props8.destinationSchema,
22482
+ step = _props8.step;
22296
22483
 
22297
22484
  var Modal = inputs.Modal;
22298
22485
  var Input = inputs.Input;
@@ -22311,7 +22498,6 @@ module.exports =
22311
22498
  var transformation = updatedMapping.transformations && updatedMapping.transformations[0];
22312
22499
  var transformSelected = transformation && transformation.type || 'none';
22313
22500
  var transformArgs = transformation && transformation.args || [''];
22314
-
22315
22501
  // create an array of arrays (pairs) for lookup args
22316
22502
  var lookupArgs = [];
22317
22503
  if (transformSelected === 'lookup') {
@@ -22326,6 +22512,28 @@ module.exports =
22326
22512
  }
22327
22513
  }
22328
22514
 
22515
+ var sectionLabels = [];
22516
+ var sectionProviders = [];
22517
+ var vals = [];
22518
+ if (transformSelected === 'concat') {
22519
+ if (transformArgs.length < 2) {
22520
+ transformArgs.push('');
22521
+ }
22522
+ vals = group.resources.map(function (br, i) {
22523
+ sectionLabels.push(br.name);
22524
+ sectionProviders.push(br.provider);
22525
+ return group.resources[i].provider === step.destinationProvider ? destinationSchema && destinationSchema.find(function (defaultRsc) {
22526
+ return defaultRsc.name === group.resources[i].name;
22527
+ }) && destinationSchema.find(function (defaultRsc) {
22528
+ return defaultRsc.name === group.resources[i].name;
22529
+ }).properties : sourceSchema && sourceSchema.find(function (defaultRsc) {
22530
+ return defaultRsc.name === group.resources[i].name;
22531
+ }) && sourceSchema.find(function (defaultRsc) {
22532
+ return defaultRsc.name === group.resources[i].name;
22533
+ }).properties;
22534
+ });
22535
+ }
22536
+
22329
22537
  var propertyFromLabel = '';
22330
22538
  mapping.propertyFromParents && mapping.propertyFromParents.forEach(function (pfp) {
22331
22539
  propertyFromLabel += pfp;
@@ -22374,7 +22582,9 @@ module.exports =
22374
22582
  { style: { width: 150, display: 'inline-block', marginBottom: 20 } },
22375
22583
  _react2.default.createElement(_reduxForm.Field, { name: 'resourceGroups.' + resourceGroupIndex + '.mappings.' + mappingIndex + '.transformations.0.type',
22376
22584
  component: inputs.rfRadioGroup, label: 'Transformation Type', options: this.transformOptions,
22377
- onClickOption: function onClickOption() {} })
22585
+ onClickOption: function onClickOption(v) {
22586
+ return _this3.clickRadio(v, mappingIndex);
22587
+ } })
22378
22588
  ),
22379
22589
  _react2.default.createElement(
22380
22590
  'div',
@@ -22406,7 +22616,7 @@ module.exports =
22406
22616
  ),
22407
22617
  _react2.default.createElement(Input, { style: { width: 132 }, label: 'Character Count', onChange: function onChange(e, v) {
22408
22618
  return _this3.changeTrimCount(e, v, mappingIndex);
22409
- }, dataType: 'number',
22619
+ }, datatype: 'number',
22410
22620
  defaultValue: transformArgs[1] || '' })
22411
22621
  ),
22412
22622
  transformSelected === 'date' && _react2.default.createElement(
@@ -22468,6 +22678,73 @@ module.exports =
22468
22678
  value: argPair[1] || '', placeholder: 'Target Value' })
22469
22679
  );
22470
22680
  })
22681
+ ),
22682
+ transformSelected === 'concat' && _react2.default.createElement(
22683
+ 'div',
22684
+ null,
22685
+ _react2.default.createElement(
22686
+ 'div',
22687
+ { style: { marginBottom: 8 } },
22688
+ 'Concatenate a Field:'
22689
+ ),
22690
+ transformArgs.filter(function (arg, i) {
22691
+ return i !== 0;
22692
+ }).map(function (ta) {
22693
+ var a = ta.split('->');
22694
+ var section = a[0];
22695
+ var b = a[1] && a[1].split('.');
22696
+ var label = b && b[b.length - 1];
22697
+ b && b.pop();
22698
+ var parents = b || [];
22699
+
22700
+ var sourceLabel = '';
22701
+ parents && parents.forEach(function (p) {
22702
+ sourceLabel += p;
22703
+ sourceLabel += ': ';
22704
+ });
22705
+ if (label) sourceLabel += label;
22706
+
22707
+ return _react2.default.createElement(_selectWrapper2.default, { key: ta, label: sourceLabel || 'Choose Field',
22708
+ onSelect: function onSelect(v, iii, rtid, section, parents) {
22709
+ return _this3.changeConcatField(v, section, parents, mappingIndex);
22710
+ },
22711
+ inputs: inputs,
22712
+ type: 'brand', fieldPropLabel: 'label',
22713
+ values: vals, sectionLabels: sectionLabels,
22714
+ selectedValues: label && [{ label: label, parents: parents, section: section }],
22715
+ sectionLabelSuffix: 'Fields'
22716
+ });
22717
+ }),
22718
+ _react2.default.createElement('br', null),
22719
+ _react2.default.createElement(
22720
+ 'div',
22721
+ { style: { marginBottom: 8 } },
22722
+ 'Delimiter String (spaces are included)'
22723
+ ),
22724
+ _react2.default.createElement(Input, { style: { width: 132, display: 'inline-block' },
22725
+ onChange: function onChange(e, v) {
22726
+ return _this3.changeConcatDelimeter(v, mappingIndex);
22727
+ },
22728
+ value: transformArgs[0] || '', placeholder: 'Delimiter' }),
22729
+ _react2.default.createElement('br', null),
22730
+ _react2.default.createElement('br', null),
22731
+ _react2.default.createElement(
22732
+ 'span',
22733
+ null,
22734
+ 'Example Result:'
22735
+ ),
22736
+ _react2.default.createElement('br', null),
22737
+ _react2.default.createElement(ConcatExampleResult, { transformArgs: transformArgs,
22738
+ fromLabel: mapping.propertyFromName })
22739
+ ),
22740
+ transformSelected === 'ifnull' && _react2.default.createElement(
22741
+ 'div',
22742
+ null,
22743
+ _react2.default.createElement(
22744
+ 'div',
22745
+ { style: { marginBottom: 8 } },
22746
+ 'This transformation will return TRUE if a value exists, otherwise it will return FALSE.'
22747
+ )
22471
22748
  )
22472
22749
  )
22473
22750
  )
@@ -22478,6 +22755,22 @@ module.exports =
22478
22755
  return TransformModal;
22479
22756
  }(_react.Component);
22480
22757
 
22758
+ var ConcatExampleResult = function ConcatExampleResult(props) {
22759
+ var delimiter = props.transformArgs[0];
22760
+ var concatFields = '';
22761
+ concatFields += delimiter;
22762
+ props.transformArgs.filter(function (arg, i) {
22763
+ return i !== 0;
22764
+ }).forEach(function (ta) {
22765
+ concatFields += ta && ta.split('->')[1].split('.')[0];
22766
+ });
22767
+ return _react2.default.createElement(
22768
+ 'strong',
22769
+ null,
22770
+ '' + props.fromLabel + concatFields
22771
+ );
22772
+ };
22773
+
22481
22774
  exports.default = TransformModal;
22482
22775
 
22483
22776
  /***/ },
@@ -23711,8 +24004,9 @@ module.exports =
23711
24004
  null,
23712
24005
  this.state.showModal && _react2.default.createElement(_transformModal2.default, { inputs: inputs, hideModal: this.hideModal,
23713
24006
  mapping: this.state.selectedTransform, opened: this.state.showModal,
23714
- change: change, resourceGroups: resourceGroups,
23715
- resourceGroupIndex: this.state.selectedTransformResourceGroupIndex })
24007
+ change: change, resourceGroups: resourceGroups, step: step,
24008
+ resourceGroupIndex: this.state.selectedTransformResourceGroupIndex,
24009
+ sourceSchema: sourceSchema, destinationSchema: destinationSchema })
23716
24010
  ) : null,
23717
24011
  _react2.default.createElement('br', null),
23718
24012
  step.isFramework && _react2.default.createElement(
@@ -24738,7 +25032,7 @@ module.exports =
24738
25032
  changeEntityOrder: this.changeEntityOrder, step: step,
24739
25033
  destinationSchema: destinationSchema,
24740
25034
  selectPrimaryKey: this.selectPrimaryKey,
24741
- selectJoinKey: this.selectJoinKey }),
25035
+ selectJoinKey: this.selectJoinKey, change: change }),
24742
25036
  _react2.default.createElement(_bundleTable2.default, { openConnectionModal: this.openConnectionModal, mode: 'normal' }),
24743
25037
  _react2.default.createElement(_bundleTable2.default, { openConnectionModal: this.openConnectionModal, mode: 'reverse' })
24744
25038
  ),
@@ -25810,7 +26104,6 @@ module.exports =
25810
26104
  value: function componentDidMount() {
25811
26105
  var wizard = this.props.wizardConfig;
25812
26106
  var stepList = [];
25813
-
25814
26107
  for (var i = 0; i < this.allSteps.length; i++) {
25815
26108
  var step = this.allSteps[i];
25816
26109
  step.sourceProvider = wizard.source.type;
@@ -25996,11 +26289,11 @@ module.exports =
25996
26289
 
25997
26290
  'use strict';
25998
26291
  // 19.1.2.1 Object.assign(target, source, ...)
25999
- var getKeys = __webpack_require__(31)
26292
+ var getKeys = __webpack_require__(32)
26000
26293
  , gOPS = __webpack_require__(251)
26001
26294
  , pIE = __webpack_require__(253)
26002
- , toObject = __webpack_require__(34)
26003
- , IObject = __webpack_require__(29)
26295
+ , toObject = __webpack_require__(35)
26296
+ , IObject = __webpack_require__(30)
26004
26297
  , $assign = Object.assign;
26005
26298
 
26006
26299
  // should work with symbols and should have deterministic property order (V8 bug)
@@ -28954,7 +29247,7 @@ module.exports =
28954
29247
 
28955
29248
  var _moment2 = _interopRequireDefault(_moment);
28956
29249
 
28957
- var _classnames = __webpack_require__(36);
29250
+ var _classnames = __webpack_require__(37);
28958
29251
 
28959
29252
  var _classnames2 = _interopRequireDefault(_classnames);
28960
29253
 
@@ -29140,7 +29433,7 @@ module.exports =
29140
29433
 
29141
29434
  var _reactDom2 = _interopRequireDefault(_reactDom);
29142
29435
 
29143
- var _classnames3 = __webpack_require__(36);
29436
+ var _classnames3 = __webpack_require__(37);
29144
29437
 
29145
29438
  var _classnames4 = _interopRequireDefault(_classnames3);
29146
29439
 
@@ -30639,7 +30932,7 @@ module.exports =
30639
30932
 
30640
30933
  var _react2 = _interopRequireDefault(_react);
30641
30934
 
30642
- var _propTypes = __webpack_require__(37);
30935
+ var _propTypes = __webpack_require__(38);
30643
30936
 
30644
30937
  var _propTypes2 = _interopRequireDefault(_propTypes);
30645
30938
 
@@ -30863,7 +31156,7 @@ module.exports =
30863
31156
 
30864
31157
  var _react2 = _interopRequireDefault(_react);
30865
31158
 
30866
- var _propTypes = __webpack_require__(37);
31159
+ var _propTypes = __webpack_require__(38);
30867
31160
 
30868
31161
  var _propTypes2 = _interopRequireDefault(_propTypes);
30869
31162