@lingk/sync 0.0.58 → 0.0.60

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
@@ -4599,7 +4599,9 @@ module.exports =
4599
4599
  resources.push(Object.assign({
4600
4600
  name: rscResource.name,
4601
4601
  provider: resourceProvider
4602
- }, rscPrimaryKey && { primaryKeyName: rscPrimaryKey.label }, rscJoinKey && { joinKeyName: rscJoinKey.label }));
4602
+ }, rscPrimaryKey && { primaryKeyName: rscPrimaryKey.label }, rscJoinKey && { joinKeyName: rscJoinKey.label }, {
4603
+ joinType: rsc.joinType || 'LEFT JOIN'
4604
+ }));
4603
4605
  }
4604
4606
  }); // end bundle.resource.forEach
4605
4607
 
@@ -4654,8 +4656,8 @@ module.exports =
4654
4656
  } // end if (!formValues['resourceGroups'])
4655
4657
 
4656
4658
 
4657
- if (wizard.savedConfiguration && wizard.savedConfiguration['defaultDataset'] && !formValues['defaultDataset']) {
4658
- change('defaultDataset', wizard.savedConfiguration['defaultDataset']);
4659
+ if (wizard.savedConfiguration && wizard.savedConfiguration['scenario'] && !formValues['scenario']) {
4660
+ change('scenario', wizard.savedConfiguration['scenario']);
4659
4661
  }
4660
4662
 
4661
4663
  var modes = ['source', 'destination'];
@@ -4688,7 +4690,7 @@ module.exports =
4688
4690
  }
4689
4691
  }
4690
4692
 
4691
- actions.setWizardDataLoaded(true);
4693
+ //actions.setWizardDataLoaded(true)
4692
4694
  }
4693
4695
 
4694
4696
  exports.default = loadData;
@@ -5285,6 +5287,8 @@ module.exports =
5285
5287
  var START_PREVIEW = exports.START_PREVIEW = 'START_PREVIEW';
5286
5288
  var FINISH_PREVIEW = exports.FINISH_PREVIEW = 'FINISH_PREVIEW';
5287
5289
  var SET_WIZARD_METADATA = exports.SET_WIZARD_METADATA = 'SET_WIZARD_METADATA';
5290
+ var START_GET_SCENARIO = exports.START_GET_SCENARIO = 'START_GET_SCENARIO';
5291
+ var FINISH_GET_SCENARIO = exports.FINISH_GET_SCENARIO = 'FINISH_GET_SCENARIO';
5288
5292
 
5289
5293
  /***/ },
5290
5294
  /* 12 */
@@ -5406,6 +5410,7 @@ module.exports =
5406
5410
  _this.showOverflow = _this.showOverflow.bind(_this);
5407
5411
  _this.go = _this.go.bind(_this);
5408
5412
  _this.disableMultiple = _this.disableMultiple.bind(_this);
5413
+ _this.addDefaultEntity = _this.addDefaultEntity.bind(_this);
5409
5414
  return _this;
5410
5415
  }
5411
5416
 
@@ -5504,6 +5509,18 @@ module.exports =
5504
5509
  sel[i] = sel[i] && sel[i].name === v.name ? { name: '' } : v;
5505
5510
  this.setState({ selectedEntities: sel });
5506
5511
  }
5512
+ }, {
5513
+ key: 'addDefaultEntity',
5514
+ value: function addDefaultEntity(groupIndex, v, rscIndex, section) {
5515
+ var _this3 = this;
5516
+
5517
+ this.props.addDefaultEntity(groupIndex, v, rscIndex, section);
5518
+ setTimeout(function () {
5519
+ var sel = [].concat(_toConsumableArray(_this3.state.selectedEntities));
5520
+ sel[_this3.state.resourceGroupIndex] = { name: v };
5521
+ _this3.setState({ selectedEntities: sel });
5522
+ }, 40);
5523
+ }
5507
5524
  }, {
5508
5525
  key: 'unPick',
5509
5526
  value: function unPick() {
@@ -5546,13 +5563,12 @@ module.exports =
5546
5563
  }, {
5547
5564
  key: 'render',
5548
5565
  value: function render() {
5549
- var _this3 = this;
5566
+ var _this4 = this;
5550
5567
 
5551
5568
  var _props = this.props,
5552
5569
  resourceGroups = _props.resourceGroups,
5553
5570
  style = _props.style,
5554
5571
  isBundleStep = _props.isBundleStep,
5555
- addDefaultEntity = _props.addDefaultEntity,
5556
5572
  destinationSchema = _props.destinationSchema,
5557
5573
  inputs = _props.inputs,
5558
5574
  step = _props.step;
@@ -5572,7 +5588,7 @@ module.exports =
5572
5588
  toggle: paneToggle,
5573
5589
  pickEntity: this.pickEntity,
5574
5590
  changeGroupOrder: this.changeGroupOrderFromBundleTable,
5575
- addDefaultEntity: addDefaultEntity,
5591
+ addDefaultEntity: this.addDefaultEntity,
5576
5592
  overflowHidden: this.state.overflowHidden,
5577
5593
  showOverflow: this.showOverflow,
5578
5594
  removeResourceGroup: this.removeResourceGroup,
@@ -5612,7 +5628,7 @@ module.exports =
5612
5628
  Button,
5613
5629
  { type: this.state.multiple ? 'brand' : 'neutral', style: smallButtonStyle,
5614
5630
  onClick: function onClick() {
5615
- return _this3.setState({ multiple: !_this3.state.multiple });
5631
+ return _this4.setState({ multiple: !_this4.state.multiple });
5616
5632
  } },
5617
5633
  'Multiple'
5618
5634
  ),
@@ -5682,7 +5698,7 @@ module.exports =
5682
5698
  { className: 'schema-group-dots' },
5683
5699
  resourceGroups.map(function (g, i) {
5684
5700
  return _react2.default.createElement('div', { className: 'schema-group-dot', key: i, style: resourceGroupIndex !== i ? { background: "#CFCFCF" } : {}, onClick: function onClick() {
5685
- return _this3.clickDot(i);
5701
+ return _this4.clickDot(i);
5686
5702
  } });
5687
5703
  })
5688
5704
  )
@@ -16886,6 +16902,7 @@ module.exports =
16886
16902
  value: true
16887
16903
  });
16888
16904
  exports.callCheckConnection = callCheckConnection;
16905
+ exports.callGetScenario = callGetScenario;
16889
16906
  exports.callPreviewIntegration = callPreviewIntegration;
16890
16907
  exports.callPostBundles = callPostBundles;
16891
16908
  exports.callPostMapping = callPostMapping;
@@ -16949,6 +16966,23 @@ module.exports =
16949
16966
  };
16950
16967
  }
16951
16968
 
16969
+ function callGetScenario(magicNumber, bundleGuid, mappingGuid) {
16970
+ return function (dispatch, getState, api) {
16971
+ dispatch({
16972
+ type: types.START_GET_SCENARIO
16973
+ });
16974
+ var tenantId = magicNumber;
16975
+ var accountId = magicNumber;
16976
+ return Promise.all([dispatch(callGetBundles(tenantId, accountId, bundleGuid)), dispatch(callGetMapping(tenantId, accountId, mappingGuid))]).then(function (res) {
16977
+ dispatch({
16978
+ type: types.FINISH_GET_SCENARIO
16979
+ });
16980
+ }).catch(function (err) {
16981
+ console.log(err);
16982
+ });
16983
+ };
16984
+ }
16985
+
16952
16986
  function callPreviewIntegration(tenantId, appId, url) {
16953
16987
  return function (dispatch, getState, api) {
16954
16988
  dispatch({
@@ -18319,12 +18353,7 @@ module.exports =
18319
18353
  var providerTypes = exports.providerTypes = {
18320
18354
  Salesforce: {
18321
18355
  credentials: [{ name: 'Username' }, { name: 'Password' }, { name: 'API Key' }],
18322
- metadataEndpoint: 'salesforceschema',
18323
- customStep: {
18324
- type: 'default',
18325
- title: 'Choose Default Dataset',
18326
- options: ['standard', 'heda']
18327
- }
18356
+ metadataEndpoint: 'salesforceschema'
18328
18357
  },
18329
18358
  API: {
18330
18359
  credentials: [{ name: 'Consumer Key' }, { name: 'Secret' }]
@@ -18632,198 +18661,6 @@ module.exports =
18632
18661
 
18633
18662
  'use strict';
18634
18663
 
18635
- Object.defineProperty(exports, "__esModule", {
18636
- value: true
18637
- });
18638
-
18639
- 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; }; }();
18640
-
18641
- var _react = __webpack_require__(2);
18642
-
18643
- var _react2 = _interopRequireDefault(_react);
18644
-
18645
- var _reduxForm = __webpack_require__(4);
18646
-
18647
- var _navButtons = __webpack_require__(5);
18648
-
18649
- var _navButtons2 = _interopRequireDefault(_navButtons);
18650
-
18651
- var _loadData = __webpack_require__(8);
18652
-
18653
- var _loadData2 = _interopRequireDefault(_loadData);
18654
-
18655
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18656
-
18657
- 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); } }
18658
-
18659
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
18660
-
18661
- 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; }
18662
-
18663
- 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; }
18664
-
18665
- var DefaultDatasetStep = function (_Component) {
18666
- _inherits(DefaultDatasetStep, _Component);
18667
-
18668
- function DefaultDatasetStep() {
18669
- _classCallCheck(this, DefaultDatasetStep);
18670
-
18671
- var _this = _possibleConstructorReturn(this, (DefaultDatasetStep.__proto__ || Object.getPrototypeOf(DefaultDatasetStep)).call(this));
18672
-
18673
- _this.defaultResourceMapping = [{
18674
- name: 'Contact',
18675
- provider: 'Salesforce',
18676
- lingkSourceKey: 'ExternalId',
18677
- lingkSourceKeyObject: 'Applicants',
18678
- resources: [{
18679
- name: 'Applicants',
18680
- joinKeyName: '',
18681
- primaryKeyName: '',
18682
- provider: 'Banner'
18683
- }]
18684
- }, {
18685
- name: 'Admissions Application',
18686
- provider: 'Salesforce',
18687
- lingkSourceKey: 'ApplicationNumber',
18688
- lingkSourceKeyObject: 'Student Applications',
18689
- resources: [{
18690
- name: 'Student Applications',
18691
- joinKeyName: '',
18692
- primaryKeyName: '',
18693
- provider: 'Banner'
18694
- }, {
18695
- name: 'Contact',
18696
- joinKeyName: 'Lingk External Id',
18697
- primaryKeyName: 'StudentExternalId',
18698
- provider: 'Salesforce'
18699
- }]
18700
- }];
18701
- _this.loadDefault = _this.loadDefault.bind(_this);
18702
- _this.select = _this.select.bind(_this);
18703
- return _this;
18704
- }
18705
-
18706
- _createClass(DefaultDatasetStep, [{
18707
- key: 'componentDidMount',
18708
- value: function componentDidMount() {
18709
- var _props = this.props,
18710
- step = _props.step,
18711
- wizard = _props.wizard,
18712
- change = _props.change,
18713
- formValues = _props.formValues,
18714
- actions = _props.actions;
18715
-
18716
- if (!wizard.dataLoaded) {
18717
- (0, _loadData2.default)(step, wizard, change, formValues, actions);
18718
- }
18719
- }
18720
- }, {
18721
- key: 'options',
18722
- value: function options(ops) {
18723
- var defaultDatasetTitles = {
18724
- 'standard': 'Standard Salesforce Dataset',
18725
- 'heda': 'Salesforce HEDA Dataset'
18726
- };
18727
- var obj = {};
18728
- ops.forEach(function (o) {
18729
- obj[o] = defaultDatasetTitles[o];
18730
- });
18731
- return obj;
18732
- }
18733
- }, {
18734
- key: 'select',
18735
- value: function select(v) {
18736
- if (v !== this.props.formValues['defaultDataset']) {
18737
- this.loadDefault();
18738
- }
18739
- }
18740
- }, {
18741
- key: 'loadDefault',
18742
- value: function loadDefault() {
18743
- //default bundle map
18744
- var change = this.props.change;
18745
-
18746
- var defaults = [].concat(_toConsumableArray(this.defaultResourceMapping));
18747
- change('resourceGroups', defaults);
18748
- }
18749
- }, {
18750
- key: 'autoMap',
18751
- value: function autoMap() {
18752
- // this function needs to dig deeper and check every field against every mapping
18753
- var _props2 = this.props,
18754
- formValues = _props2.formValues,
18755
- change = _props2.change,
18756
- step = _props2.step;
18757
-
18758
- var sourceSchema = formValues['sourceSchema'] || {};
18759
- var obj = {};
18760
- for (var key in step.autoMapData) {
18761
- if (sourceSchema && sourceSchema[key.split('.')[0]]) {
18762
- obj[key] = step.autoMapData[key];
18763
- }
18764
- }
18765
- change('mappings', obj);
18766
- }
18767
- }, {
18768
- key: 'render',
18769
- value: function render() {
18770
- var _props3 = this.props,
18771
- inputs = _props3.inputs,
18772
- handleSubmit = _props3.handleSubmit,
18773
- nav = _props3.nav,
18774
- step = _props3.step,
18775
- reset = _props3.reset,
18776
- formValues = _props3.formValues;
18777
-
18778
-
18779
- return _react2.default.createElement(
18780
- 'form',
18781
- { onSubmit: handleSubmit, onKeyPress: function onKeyPress(e) {
18782
- return e.charCode === 13 ? e.preventDefault() : null;
18783
- } },
18784
- _react2.default.createElement(
18785
- 'div',
18786
- { style: { fontSize: 20 } },
18787
- 'Choose Default Dataset'
18788
- ),
18789
- _react2.default.createElement('br', null),
18790
- _react2.default.createElement(
18791
- 'p',
18792
- null,
18793
- 'Choose a default dataset as the starting point for your integration.'
18794
- ),
18795
- _react2.default.createElement('br', null),
18796
- _react2.default.createElement(
18797
- 'div',
18798
- { style: { marginLeft: 16 } },
18799
- _react2.default.createElement(_reduxForm.Field, { component: inputs.rfRadioGroup, name: 'defaultDataset', label: 'Default Dataset',
18800
- options: this.options(step.options), onClickOption: this.select })
18801
- ),
18802
- _react2.default.createElement('br', null),
18803
- _react2.default.createElement(_navButtons2.default, { nextDisabled: !formValues['defaultDataset'], handleSubmit: handleSubmit,
18804
- nav: nav, reset: reset, inputs: inputs }),
18805
- _react2.default.createElement('br', null),
18806
- _react2.default.createElement('br', null)
18807
- );
18808
- }
18809
- }]);
18810
-
18811
- return DefaultDatasetStep;
18812
- }(_react.Component);
18813
-
18814
- exports.default = (0, _reduxForm.reduxForm)({
18815
- form: 'wizard',
18816
- destroyOnUnmount: false,
18817
- forceUnregisterOnUnmount: true,
18818
- touchOnBlur: false
18819
- })(DefaultDatasetStep);
18820
-
18821
- /***/ },
18822
- /* 181 */
18823
- /***/ function(module, exports, __webpack_require__) {
18824
-
18825
- 'use strict';
18826
-
18827
18664
  Object.defineProperty(exports, "__esModule", {
18828
18665
  value: true
18829
18666
  });
@@ -19058,7 +18895,7 @@ module.exports =
19058
18895
  })(DeployStep);
19059
18896
 
19060
18897
  /***/ },
19061
- /* 182 */
18898
+ /* 181 */
19062
18899
  /***/ function(module, exports, __webpack_require__) {
19063
18900
 
19064
18901
  'use strict';
@@ -19333,7 +19170,7 @@ module.exports =
19333
19170
  })(EnvironmentStep);
19334
19171
 
19335
19172
  /***/ },
19336
- /* 183 */
19173
+ /* 182 */
19337
19174
  /***/ function(module, exports, __webpack_require__) {
19338
19175
 
19339
19176
  'use strict';
@@ -19434,7 +19271,7 @@ module.exports =
19434
19271
  })(FilterStep);
19435
19272
 
19436
19273
  /***/ },
19437
- /* 184 */
19274
+ /* 183 */
19438
19275
  /***/ function(module, exports, __webpack_require__) {
19439
19276
 
19440
19277
  'use strict';
@@ -19677,7 +19514,7 @@ module.exports =
19677
19514
  })(MapStep);
19678
19515
 
19679
19516
  /***/ },
19680
- /* 185 */
19517
+ /* 184 */
19681
19518
  /***/ function(module, exports, __webpack_require__) {
19682
19519
 
19683
19520
  'use strict';
@@ -19793,7 +19630,7 @@ module.exports =
19793
19630
  })(NameStep);
19794
19631
 
19795
19632
  /***/ },
19796
- /* 186 */
19633
+ /* 185 */
19797
19634
  /***/ function(module, exports, __webpack_require__) {
19798
19635
 
19799
19636
  'use strict';
@@ -19891,7 +19728,7 @@ module.exports =
19891
19728
  })(PhaseStep);
19892
19729
 
19893
19730
  /***/ },
19894
- /* 187 */
19731
+ /* 186 */
19895
19732
  /***/ function(module, exports, __webpack_require__) {
19896
19733
 
19897
19734
  'use strict';
@@ -20025,6 +19862,143 @@ module.exports =
20025
19862
  validate: _validate2.default
20026
19863
  })(PreviewStep);
20027
19864
 
19865
+ /***/ },
19866
+ /* 187 */
19867
+ /***/ function(module, exports, __webpack_require__) {
19868
+
19869
+ 'use strict';
19870
+
19871
+ Object.defineProperty(exports, "__esModule", {
19872
+ value: true
19873
+ });
19874
+
19875
+ 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; }; }();
19876
+
19877
+ var _react = __webpack_require__(2);
19878
+
19879
+ var _react2 = _interopRequireDefault(_react);
19880
+
19881
+ var _reduxForm = __webpack_require__(4);
19882
+
19883
+ var _navButtons = __webpack_require__(5);
19884
+
19885
+ var _navButtons2 = _interopRequireDefault(_navButtons);
19886
+
19887
+ var _loadData = __webpack_require__(8);
19888
+
19889
+ var _loadData2 = _interopRequireDefault(_loadData);
19890
+
19891
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19892
+
19893
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
19894
+
19895
+ 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; }
19896
+
19897
+ 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; }
19898
+
19899
+ var DefaultDatasetStep = function (_Component) {
19900
+ _inherits(DefaultDatasetStep, _Component);
19901
+
19902
+ function DefaultDatasetStep() {
19903
+ var _ref;
19904
+
19905
+ var _temp, _this, _ret;
19906
+
19907
+ _classCallCheck(this, DefaultDatasetStep);
19908
+
19909
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
19910
+ args[_key] = arguments[_key];
19911
+ }
19912
+
19913
+ return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = DefaultDatasetStep.__proto__ || Object.getPrototypeOf(DefaultDatasetStep)).call.apply(_ref, [this].concat(args))), _this), _this.select = function (v) {
19914
+ var _this$props = _this.props,
19915
+ step = _this$props.step,
19916
+ actions = _this$props.actions;
19917
+
19918
+ var scenario = step.options.find(function (o) {
19919
+ return o.name === v;
19920
+ });
19921
+ actions.callGetScenario(step.magicNumber, scenario.bundleGuid, scenario.mappingGuid);
19922
+ }, _temp), _possibleConstructorReturn(_this, _ret);
19923
+ }
19924
+
19925
+ _createClass(DefaultDatasetStep, [{
19926
+ key: 'componentDidMount',
19927
+ value: function componentDidMount() {
19928
+ var _props = this.props,
19929
+ step = _props.step,
19930
+ wizard = _props.wizard,
19931
+ change = _props.change,
19932
+ formValues = _props.formValues,
19933
+ actions = _props.actions;
19934
+
19935
+ if (!wizard.dataLoaded) {
19936
+ (0, _loadData2.default)(step, wizard, change, formValues, actions);
19937
+ }
19938
+ }
19939
+ }, {
19940
+ key: 'options',
19941
+ value: function options(ops) {
19942
+ var obj = {};
19943
+ ops.forEach(function (o) {
19944
+ obj[o.name] = o.label;
19945
+ });
19946
+ return obj;
19947
+ }
19948
+ }, {
19949
+ key: 'render',
19950
+ value: function render() {
19951
+ var _props2 = this.props,
19952
+ inputs = _props2.inputs,
19953
+ handleSubmit = _props2.handleSubmit,
19954
+ nav = _props2.nav,
19955
+ step = _props2.step,
19956
+ reset = _props2.reset,
19957
+ wizard = _props2.wizard;
19958
+
19959
+
19960
+ return _react2.default.createElement(
19961
+ 'form',
19962
+ { onSubmit: handleSubmit, onKeyPress: function onKeyPress(e) {
19963
+ return e.charCode === 13 ? e.preventDefault() : null;
19964
+ } },
19965
+ _react2.default.createElement(
19966
+ 'div',
19967
+ { style: { fontSize: 20 } },
19968
+ 'Choose Default Scenario'
19969
+ ),
19970
+ _react2.default.createElement('br', null),
19971
+ _react2.default.createElement(
19972
+ 'p',
19973
+ null,
19974
+ 'Use the chosen scenario as a starting point for your integration, and customize it to your requirements.'
19975
+ ),
19976
+ _react2.default.createElement('br', null),
19977
+ _react2.default.createElement(
19978
+ 'div',
19979
+ { style: { marginLeft: 16 } },
19980
+ _react2.default.createElement(_reduxForm.Field, { component: inputs.rfRadioGroup, name: 'scenario', label: 'Data Scenario',
19981
+ options: this.options(step.options), onClickOption: this.select })
19982
+ ),
19983
+ _react2.default.createElement('br', null),
19984
+ _react2.default.createElement(_navButtons2.default, { nextDisabled: !wizard.gotScenario, handleSubmit: handleSubmit,
19985
+ nav: nav, reset: reset, inputs: inputs }),
19986
+ _react2.default.createElement('br', null),
19987
+ _react2.default.createElement('br', null)
19988
+ );
19989
+ }
19990
+ }]);
19991
+
19992
+ return DefaultDatasetStep;
19993
+ }(_react.Component);
19994
+
19995
+ exports.default = (0, _reduxForm.reduxForm)({
19996
+ form: 'wizard',
19997
+ destroyOnUnmount: false,
19998
+ forceUnregisterOnUnmount: true,
19999
+ touchOnBlur: false
20000
+ })(DefaultDatasetStep);
20001
+
20028
20002
  /***/ },
20029
20003
  /* 188 */
20030
20004
  /***/ function(module, exports, __webpack_require__) {
@@ -20202,12 +20176,17 @@ module.exports =
20202
20176
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
20203
20177
  var group = resourceGroups[groupIndex];
20204
20178
  if (!group.resources) {
20205
- group.resources = [];
20179
+ group.resources = [{
20180
+ name: v,
20181
+ provider: section
20182
+ }];
20183
+ } else {
20184
+ group.resources.push({
20185
+ name: v,
20186
+ provider: section,
20187
+ joinType: 'LEFT JOIN'
20188
+ });
20206
20189
  }
20207
- group.resources.push({
20208
- name: v,
20209
- provider: section
20210
- });
20211
20190
  if (group.resources.length === 1) {
20212
20191
  this.openConnectionModal(group, groupIndex);
20213
20192
  }
@@ -20231,8 +20210,24 @@ module.exports =
20231
20210
  formValues = _props6.formValues;
20232
20211
 
20233
20212
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
20234
- var resources = resourceGroups[groupIndex].resources;
20235
- resources.splice(rscIndex, 1);
20213
+ var group = resourceGroups[groupIndex];
20214
+ console.log(group);
20215
+ console.log(entity);
20216
+ if (group.customExternalKeys) {
20217
+ if (group.sourceKeysObjects.find(function (sko) {
20218
+ return sko === entity;
20219
+ })) {
20220
+ var deleteIndex = group.sourceKeysObjects.indexOf(entity);
20221
+ group.sourceKeys.splice(deleteIndex, 1);
20222
+ group.sourceKeysObjects.splice(deleteIndex, 1);
20223
+ }
20224
+ } else {
20225
+ if (entity === group.lingkSourceKeyObject) {
20226
+ group.lingkSourceKey = null;
20227
+ group.lingkSourceKeyObject = null;
20228
+ }
20229
+ }
20230
+ group.resources.splice(rscIndex, 1);
20236
20231
  change('resourceGroups', resourceGroups);
20237
20232
  this.forceUpdate();
20238
20233
  }
@@ -20266,7 +20261,7 @@ module.exports =
20266
20261
  g.primaryKeyName = null;
20267
20262
  });
20268
20263
  change('resourceGroups', resourceGroups);
20269
- this.openConnectionModal(group, groupIndex);
20264
+ //this.openConnectionModal(group, groupIndex)
20270
20265
  }
20271
20266
  }, {
20272
20267
  key: 'changeGroupOrder',
@@ -20294,6 +20289,8 @@ module.exports =
20294
20289
  wizard = _props10.wizard,
20295
20290
  change = _props10.change;
20296
20291
 
20292
+ if (!formValues['resourceGroups']) return _react2.default.createElement('div', null);
20293
+
20297
20294
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups'])) || null;
20298
20295
  var BundleTable = inputs.BundleTable;
20299
20296
 
@@ -20400,20 +20397,21 @@ module.exports =
20400
20397
  step = props.step;
20401
20398
 
20402
20399
  return _react2.default.createElement(
20403
- 'div',
20404
- { style: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' } },
20400
+ 'pre',
20401
+ { style: { whiteSpace: 'pre-wrap', maxWidth: 400, fontFamily: '"Salesforce Sans", Arial, sans-serif',
20402
+ paddingLeft: '1em', textIndent: '-1em', margin: 0 } },
20405
20403
  group.resources && group.resources.map(function (rsc, i) {
20406
20404
  return _react2.default.createElement(
20407
20405
  'span',
20408
20406
  { key: i },
20409
20407
  i !== 0 && _react2.default.createElement(
20410
- 'span',
20408
+ 'strong',
20411
20409
  null,
20412
20410
  '+ '
20413
20411
  ),
20414
20412
  _react2.default.createElement(
20415
20413
  'span',
20416
- { style: { fontWeight: i === 0 ? 'bold' : 'normal' } },
20414
+ { style: { fontWeight: i === 0 ? 'bold' : 'normal', whiteSpace: 'nowrap' } },
20417
20415
  rsc.provider === step.destinationProvider ? rsc.name + ' (' + step.destinationProvider + ')' : rsc.name,
20418
20416
  '\xA0'
20419
20417
  )
@@ -20439,19 +20437,23 @@ module.exports =
20439
20437
  }
20440
20438
  return _react2.default.createElement(
20441
20439
  'div',
20442
- { className: 'connect-resource-group', onClick: function onClick(e) {
20443
- e.stopPropagation();
20444
- openConnectionModal(group, i);
20445
- }, style: { paddingTop: linked ? 5 : 6 } },
20446
- linked ? _react2.default.createElement(
20447
- 'svg',
20448
- { fill: '#000000', width: '29', height: '24', viewBox: '0 0 24 24', xmlns: 'http://www.w3.org/2000/svg' },
20449
- _react2.default.createElement('path', { d: 'M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z' })
20450
- ) : _react2.default.createElement(
20451
- 'svg',
20452
- { fill: '#AAAAAA', width: '24', height: '19', viewBox: '0 0 24 24', xmlns: 'http://www.w3.org/2000/svg' },
20453
- _react2.default.createElement('path', { d: 'M2,5.27L3.28,4L20,20.72L18.73,22L14.73,18H13V16.27L9.73,13H8V11.27L5.5,8.76C4.5,9.5 3.9,10.68 3.9,12C3.9,14.26 5.74,16.1 8,16.1H11V18H8A6,6 0 0,1 2,12C2,10.16 2.83,8.5 4.14,7.41L2,5.27M16,6A6,6 0 0,1 22,12C22,14.21 20.8,16.15 19,17.19L17.6,15.77C19.07,15.15 20.1,13.7 20.1,12C20.1,9.73 18.26,7.9 16,7.9H13V6H16M8,6H11V7.9H9.72L7.82,6H8M16,11V13H14.82L12.82,11H16Z' })
20454
- )
20440
+ null,
20441
+ group && group.resources && group.resources.length > 0 ? _react2.default.createElement(
20442
+ 'div',
20443
+ { className: 'connect-resource-group', onClick: function onClick(e) {
20444
+ e.stopPropagation();
20445
+ openConnectionModal(group, i);
20446
+ }, style: { paddingTop: linked ? 5 : 6 } },
20447
+ linked ? _react2.default.createElement(
20448
+ 'svg',
20449
+ { fill: '#000000', width: '29', height: '24', viewBox: '0 0 24 24', xmlns: 'http://www.w3.org/2000/svg' },
20450
+ _react2.default.createElement('path', { d: 'M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z' })
20451
+ ) : _react2.default.createElement(
20452
+ 'svg',
20453
+ { fill: '#AAAAAA', width: '24', height: '19', viewBox: '0 0 24 24', xmlns: 'http://www.w3.org/2000/svg' },
20454
+ _react2.default.createElement('path', { d: 'M2,5.27L3.28,4L20,20.72L18.73,22L14.73,18H13V16.27L9.73,13H8V11.27L5.5,8.76C4.5,9.5 3.9,10.68 3.9,12C3.9,14.26 5.74,16.1 8,16.1H11V18H8A6,6 0 0,1 2,12C2,10.16 2.83,8.5 4.14,7.41L2,5.27M16,6A6,6 0 0,1 22,12C22,14.21 20.8,16.15 19,17.19L17.6,15.77C19.07,15.15 20.1,13.7 20.1,12C20.1,9.73 18.26,7.9 16,7.9H13V6H16M8,6H11V7.9H9.72L7.82,6H8M16,11V13H14.82L12.82,11H16Z' })
20455
+ )
20456
+ ) : null
20455
20457
  );
20456
20458
  };
20457
20459
 
@@ -20638,8 +20640,8 @@ module.exports =
20638
20640
  }).properties;
20639
20641
  });
20640
20642
 
20641
- var sourceKeys = resourceGroups[bundleIndex].sourceKeys || [''];
20642
- var destinationKeys = resourceGroups[bundleIndex].destinationKeys || [''];
20643
+ var sourceKeys = resourceGroups[bundleIndex].sourceKeys && resourceGroups[bundleIndex].sourceKeys.length > 0 ? resourceGroups[bundleIndex].sourceKeys : [''];
20644
+ var destinationKeys = resourceGroups[bundleIndex].destinationKeys && resourceGroups[bundleIndex].destinationKeys > 0 ? resourceGroups[bundleIndex].destinationKeys : [''];
20643
20645
 
20644
20646
  return _react2.default.createElement(
20645
20647
  Modal,
@@ -21597,11 +21599,12 @@ module.exports =
21597
21599
  i !== 0 ? _react2.default.createElement(
21598
21600
  Button,
21599
21601
  { type: 'brand', icon: selectedEntity.name === rsc.name ? 'chevronup' : 'chevrondown',
21600
- iconAlign: 'right', onClick: function onClick() {
21602
+ iconAlign: 'right', className: rsc.joinKeyName && rsc.primaryKeyName ? 'join-ok' : '',
21603
+ onClick: function onClick() {
21601
21604
  _this3.props.pickEntity({ name: rsc.name,
21602
21605
  isDestinationEntity: rsc.provider === step.destinationProvider });
21603
21606
  } },
21604
- 'Configure Join'
21607
+ rsc.joinKeyName && rsc.primaryKeyName ? 'Join Settings' : 'Configure Join'
21605
21608
  ) : null
21606
21609
  )
21607
21610
  ),
@@ -21695,8 +21698,8 @@ module.exports =
21695
21698
  ),
21696
21699
  _react2.default.createElement(_reduxForm.Field, { name: 'resourceGroups.' + resourceGroupIndex + '.resources.' + i + '.joinType',
21697
21700
  component: inputs.rfRadioGroup, label: 'Join Type', onClickOption: function onClickOption() {}, options: {
21698
- all: 'All records',
21699
- matching: 'Matching records'
21701
+ 'LEFT JOIN': 'All records',
21702
+ 'INNER JOIN': 'Matching records'
21700
21703
  } })
21701
21704
  )
21702
21705
  ) : null
@@ -21959,11 +21962,11 @@ module.exports =
21959
21962
 
21960
21963
  var _accountStep2 = _interopRequireDefault(_accountStep);
21961
21964
 
21962
- var _phaseStep = __webpack_require__(186);
21965
+ var _phaseStep = __webpack_require__(185);
21963
21966
 
21964
21967
  var _phaseStep2 = _interopRequireDefault(_phaseStep);
21965
21968
 
21966
- var _environmentStep = __webpack_require__(182);
21969
+ var _environmentStep = __webpack_require__(181);
21967
21970
 
21968
21971
  var _environmentStep2 = _interopRequireDefault(_environmentStep);
21969
21972
 
@@ -21971,23 +21974,23 @@ module.exports =
21971
21974
 
21972
21975
  var _schemaStep2 = _interopRequireDefault(_schemaStep);
21973
21976
 
21974
- var _filterStep = __webpack_require__(183);
21977
+ var _filterStep = __webpack_require__(182);
21975
21978
 
21976
21979
  var _filterStep2 = _interopRequireDefault(_filterStep);
21977
21980
 
21978
- var _mapStep = __webpack_require__(184);
21981
+ var _mapStep = __webpack_require__(183);
21979
21982
 
21980
21983
  var _mapStep2 = _interopRequireDefault(_mapStep);
21981
21984
 
21982
- var _previewStep = __webpack_require__(187);
21985
+ var _previewStep = __webpack_require__(186);
21983
21986
 
21984
21987
  var _previewStep2 = _interopRequireDefault(_previewStep);
21985
21988
 
21986
- var _deployStep = __webpack_require__(181);
21989
+ var _deployStep = __webpack_require__(180);
21987
21990
 
21988
21991
  var _deployStep2 = _interopRequireDefault(_deployStep);
21989
21992
 
21990
- var _nameStep = __webpack_require__(185);
21993
+ var _nameStep = __webpack_require__(184);
21991
21994
 
21992
21995
  var _nameStep2 = _interopRequireDefault(_nameStep);
21993
21996
 
@@ -21995,9 +21998,9 @@ module.exports =
21995
21998
 
21996
21999
  var _adapterStep2 = _interopRequireDefault(_adapterStep);
21997
22000
 
21998
- var _defaultDatasetStep = __webpack_require__(180);
22001
+ var _scenarioStep = __webpack_require__(187);
21999
22002
 
22000
- var _defaultDatasetStep2 = _interopRequireDefault(_defaultDatasetStep);
22003
+ var _scenarioStep2 = _interopRequireDefault(_scenarioStep);
22001
22004
 
22002
22005
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22003
22006
 
@@ -22049,7 +22052,7 @@ module.exports =
22049
22052
  deploy: _deployStep2.default,
22050
22053
  adapter: _adapterStep2.default,
22051
22054
  name: _nameStep2.default,
22052
- 'default': _defaultDatasetStep2.default
22055
+ scenario: _scenarioStep2.default
22053
22056
  };
22054
22057
  return _this;
22055
22058
  }
@@ -22192,7 +22195,8 @@ module.exports =
22192
22195
  }) && primarySourceResource.properties.find(function (prop) {
22193
22196
  return prop.label === rsc.primaryKeyName;
22194
22197
  }).name || '',
22195
- provider: rsc.provider.toLowerCase() + 'Reader'
22198
+ provider: rsc.provider.toLowerCase() + 'Reader',
22199
+ joinType: rsc.joinType
22196
22200
  };
22197
22201
  } else return null;
22198
22202
  });
@@ -22211,7 +22215,7 @@ module.exports =
22211
22215
  if (formValues.destinationEndpoint) {
22212
22216
  endpoints.destinationEndpoint = formValues.destinationEndpoint;
22213
22217
  }
22214
- var configuration = Object.assign({}, endpoints, formValues['defaultDataset'] && { defaultDataset: formValues['defaultDataset'] });
22218
+ var configuration = Object.assign({}, endpoints, formValues['scenario'] && { scenario: formValues['scenario'] });
22215
22219
  //----------------------------------
22216
22220
  // Post
22217
22221
  //----------------------------------
@@ -22340,7 +22344,7 @@ module.exports =
22340
22344
  var deployment = selector(state, 'deployment');
22341
22345
  var mappings = selector(state, 'mappings');
22342
22346
  var resourceGroups = selector(state, 'resourceGroups');
22343
- var defaultDataset = selector(state, 'defaultDataset');
22347
+ var scenario = selector(state, 'scenario');
22344
22348
  return Object.assign({}, state, {
22345
22349
  formValues: {
22346
22350
  title: title,
@@ -22351,7 +22355,7 @@ module.exports =
22351
22355
  deployment: deployment,
22352
22356
  mappings: mappings,
22353
22357
  resourceGroups: resourceGroups,
22354
- defaultDataset: defaultDataset
22358
+ scenario: scenario
22355
22359
  }
22356
22360
  });
22357
22361
  })(WizardForm);
@@ -22423,11 +22427,18 @@ module.exports =
22423
22427
  name: 'Salesforce',
22424
22428
  env: false,
22425
22429
  customizable: false, // if destination schema is not customizable, disclude the entire step
22426
- customStep: 'default'
22430
+ customStep: false
22427
22431
  },
22428
22432
  deployment: ['once', 'daily', 'repeating'],
22429
22433
  autoMapData: example.wizards[1].autoMapData,
22430
- dummyData: example.wizards[1].dummyData
22434
+ dummyData: example.wizards[1].dummyData,
22435
+ scenarios: [{
22436
+ name: 'applicants',
22437
+ label: 'Banner Applicants to Salesforce Contacts and Admissions Applications (custom)',
22438
+ bundleGuid: 'd10440051e2a46aaa181b72b8ee6af67',
22439
+ mappingGuid: 'e98da65935534fdbb4c7b4280f07f1ae'
22440
+ }],
22441
+ magicDefaultNumber: '2147483647'
22431
22442
  };
22432
22443
  /*
22433
22444
  id: 2,
@@ -22486,6 +22497,9 @@ module.exports =
22486
22497
  }, {
22487
22498
  type: 'custom',
22488
22499
  mode: 'destination'
22500
+ }, {
22501
+ type: 'scenario',
22502
+ title: 'Data Scenario'
22489
22503
  }, {
22490
22504
  type: 'environment',
22491
22505
  title: 'Destination Environment',
@@ -22535,6 +22549,10 @@ module.exports =
22535
22549
  step.options = customStep.options;
22536
22550
  stepList.push(step);
22537
22551
  }
22552
+ } else if (step.type === 'scenario') {
22553
+ step.options = wizard.scenarios;
22554
+ step.magicNumber = wizard.magicDefaultNumber;
22555
+ stepList.push(step);
22538
22556
  } else if (step.type === 'environment') {
22539
22557
  if (step.mode === 'source' && wizard.source.env) {
22540
22558
  step.providerType = wizard.source.type;