@lingk/sync 0.0.40 → 0.0.42

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
@@ -45,7 +45,7 @@ module.exports =
45
45
  /* 0 */
46
46
  /***/ function(module, exports, __webpack_require__) {
47
47
 
48
- module.exports = __webpack_require__(58);
48
+ module.exports = __webpack_require__(60);
49
49
 
50
50
 
51
51
  /***/ },
@@ -207,6 +207,12 @@ module.exports =
207
207
  mappings: wizard.savedMapping && wizard.savedMapping.mappings && wizard.savedMapping.mappings.filter(function (map) {
208
208
  return map.bundleIndex === index;
209
209
  }).map(function (m) {
210
+ var sourceResource = wizard.sourceMetadata.find(function (rsc) {
211
+ return rsc.type === m.resourceFromName;
212
+ });
213
+ var sourceProperty = sourceResource.properties.find(function (prop) {
214
+ return prop.name === m.propertyFromName;
215
+ });
210
216
  var destinationResource = wizard.destinationMetadata.find(function (rsc) {
211
217
  return rsc.type === m.resourceToName;
212
218
  });
@@ -214,9 +220,9 @@ module.exports =
214
220
  return prop.name === m.propertyToName;
215
221
  });
216
222
  return {
217
- resourceFromName: m.resourceFromName,
218
- propertyFromName: m.propertyFromName,
219
- resourceToName: destinationProperty.type,
223
+ resourceFromName: sourceResource.name,
224
+ propertyFromName: sourceProperty.label,
225
+ resourceToName: destinationResource.name,
220
226
  propertyToName: destinationProperty.label
221
227
  };
222
228
  })
@@ -242,8 +248,7 @@ module.exports =
242
248
  exports.default = loadData;
243
249
 
244
250
  /***/ },
245
- /* 8 */,
246
- /* 9 */
251
+ /* 8 */
247
252
  /***/ function(module, exports, __webpack_require__) {
248
253
 
249
254
  "use strict";
@@ -375,13 +380,13 @@ module.exports =
375
380
  }
376
381
  }, {
377
382
  key: "addDefaultResourceGroup",
378
- value: function addDefaultResourceGroup(v) {
383
+ value: function addDefaultResourceGroup(v, i, id) {
379
384
  var _props = this.props,
380
385
  resourceGroups = _props.resourceGroups,
381
386
  addGroup = _props.addGroup;
382
387
 
383
388
  this.go(false, resourceGroups.length);
384
- addGroup(v);
389
+ addGroup(v, id);
385
390
  }
386
391
  }, {
387
392
  key: "pickEntity",
@@ -441,7 +446,6 @@ module.exports =
441
446
  leftClicked = _state.leftClicked;
442
447
 
443
448
  var Select = inputs.Select;
444
- var Input = inputs.Input;
445
449
  var Button = inputs.Button;
446
450
 
447
451
  var propsForChild = {
@@ -461,7 +465,7 @@ module.exports =
461
465
  var smallButtonStyle = {
462
466
  marginLeft: 4,
463
467
  height: 22,
464
- width: 111,
468
+ width: 102,
465
469
  lineHeight: '20px',
466
470
  padding: 0,
467
471
  verticalAlign: 'middle',
@@ -477,19 +481,12 @@ module.exports =
477
481
  _react2.default.createElement(
478
482
  "div",
479
483
  { style: style },
480
- isBundleStep ? _react2.default.createElement(
481
- "div",
482
- { style: { position: 'absolute', right: 0, top: 0 } },
483
- _react2.default.createElement(Select, { label: "+", type: "brand", style: { height: 37 }, menuAlign: "right", extraClass: true,
484
- onSelect: this.addDefaultResourceGroup, values: destinationSchema, title: "Add New"
485
- })
486
- ) : null,
487
484
  !isBundleStep ? _react2.default.createElement(
488
485
  "div",
489
- { style: { position: 'absolute', right: 0, top: 8 } },
486
+ { style: { position: 'absolute', right: 0, top: -6 } },
490
487
  _react2.default.createElement(
491
488
  "div",
492
- null,
489
+ { className: "labelz" },
493
490
  "Relationship Types:"
494
491
  ),
495
492
  _react2.default.createElement(
@@ -509,10 +506,10 @@ module.exports =
509
506
  ) : null,
510
507
  _react2.default.createElement(
511
508
  "div",
512
- { className: "schema-group-nav" },
509
+ null,
513
510
  _react2.default.createElement(
514
511
  "div",
515
- { style: { margin: '0 auto', width: 120 } },
512
+ { style: { margin: '0 auto', width: 120, marginLeft: 120 }, className: "labelz" },
516
513
  "Destination Object"
517
514
  ),
518
515
  _react2.default.createElement(
@@ -526,9 +523,9 @@ module.exports =
526
523
  _react2.default.createElement(
527
524
  "div",
528
525
  { className: "schema-groups-slider", style: {
529
- width: 240 * resourceGroups.length,
530
- transform: "translate(-" + 240 * resourceGroupIndex + "px)",
531
- WebkitTransform: "translate(-" + 240 * resourceGroupIndex + "px)"
526
+ width: 340 * resourceGroups.length,
527
+ transform: "translate(-" + 340 * resourceGroupIndex + "px)",
528
+ WebkitTransform: "translate(-" + 340 * resourceGroupIndex + "px)"
532
529
  } },
533
530
  resourceGroups.map(function (g, i) {
534
531
  return _react2.default.createElement(
@@ -553,7 +550,15 @@ module.exports =
553
550
  } });
554
551
  })
555
552
  )
556
- )
553
+ ),
554
+ isBundleStep ? _react2.default.createElement(
555
+ "div",
556
+ { style: { position: 'absolute', right: 0, top: -2, zIndex: 99 } },
557
+ _react2.default.createElement(Select, { label: "+", type: "brand", style: { height: 37 }, menuAlign: "right", extraClass: true,
558
+ onSelect: this.addDefaultResourceGroup, values: destinationSchema, title: "Add New",
559
+ minWidth: 260
560
+ })
561
+ ) : null
557
562
  ),
558
563
  _react2.default.Children.count(this.props.children) > 0 ? _react2.default.Children.map(this.props.children, function (child) {
559
564
  return _react2.default.cloneElement(child, Object.assign({}, propsForChild));
@@ -568,12 +573,12 @@ module.exports =
568
573
  exports.default = GroupNav;
569
574
 
570
575
  /***/ },
571
- /* 10 */
576
+ /* 9 */
572
577
  /***/ function(module, exports, __webpack_require__) {
573
578
 
574
579
  (function webpackUniversalModuleDefinition(root, factory) {
575
580
  if(true)
576
- module.exports = factory(__webpack_require__(1), __webpack_require__(62));
581
+ module.exports = factory(__webpack_require__(1), __webpack_require__(64));
577
582
  else if(typeof define === 'function' && define.amd)
578
583
  define(["react", "react-dom"], factory);
579
584
  else if(typeof exports === 'object')
@@ -2180,19 +2185,20 @@ module.exports =
2180
2185
  //# sourceMappingURL=react-draggable.js.map
2181
2186
 
2182
2187
  /***/ },
2183
- /* 11 */
2188
+ /* 10 */
2184
2189
  /***/ function(module, exports) {
2185
2190
 
2186
2191
  module.exports = require("react-addons-css-transition-group");
2187
2192
 
2188
2193
  /***/ },
2189
- /* 12 */,
2190
- /* 13 */
2194
+ /* 11 */,
2195
+ /* 12 */
2191
2196
  /***/ function(module, exports) {
2192
2197
 
2193
2198
  module.exports = require("react-redux");
2194
2199
 
2195
2200
  /***/ },
2201
+ /* 13 */,
2196
2202
  /* 14 */,
2197
2203
  /* 15 */,
2198
2204
  /* 16 */,
@@ -2271,6 +2277,10 @@ module.exports =
2271
2277
  type: types.FINISH_ENV_CHECK,
2272
2278
  data: { res: res, mode: mode, code: '200 OK', providerType: providerType }
2273
2279
  });
2280
+ dispatch({
2281
+ type: types.SET_WIZARD_METADATA,
2282
+ data: { res: res, mode: mode, providerType: providerType }
2283
+ });
2274
2284
  }).catch(function (err) {
2275
2285
  dispatch({
2276
2286
  type: types.FINISH_ENV_CHECK,
@@ -2600,17 +2610,16 @@ module.exports =
2600
2610
  return api.get(tenantId + '/' + appId + '/' + urlSuffix, {
2601
2611
  endpoint: AGENT_API_URL
2602
2612
  }).then(function (res) {
2603
- console.log(res);
2604
2613
  dispatch({
2605
2614
  type: types.SET_WIZARD_METADATA,
2606
2615
  data: { res: res, mode: mode, providerType: providerType }
2607
2616
  });
2608
2617
  }).catch(function (err) {
2609
2618
  console.log(err);
2610
- /*dispatch({
2619
+ dispatch({
2611
2620
  type: types.FINISH_ENV_CHECK,
2612
- data: {res:null, mode, code:'404 Error'}
2613
- })*/
2621
+ data: { res: null, mode: mode, code: '404 Error' }
2622
+ });
2614
2623
  });
2615
2624
  };
2616
2625
  }
@@ -2738,8 +2747,14 @@ module.exports =
2738
2747
  name: 'Student',
2739
2748
  properties: [{ name: 'First Name' }, { name: 'Last Name' }, { name: 'External Id' }, { name: 'Birthdate' }, { name: 'Gender' }, { name: 'Institution External Id' }, { name: 'Suffix' }, { name: 'US Citizenship Status' }, { name: 'Highest Education Level Completed' }, { name: 'Identification System' }]
2740
2749
  }, {
2741
- name: 'Program Enrollment',
2742
- properties: [{ name: 'First Name' }, { name: 'Last Name' }, { name: 'External Id' }, { name: 'Birthdate' }, { name: 'Gender' }, { name: 'Institution External Id' }, { name: 'Suffix' }, { name: 'US Citizenship Status' }, { name: 'Highest Education Level Completed' }, { name: 'Identification System' }]
2750
+ name: 'Student Email',
2751
+ properties: [{ name: 'Student External Id' }, { name: 'Email Address' }, { name: 'Email Address Type' }, { name: 'Last Modified' }, { name: 'Is Primary' }]
2752
+ }, {
2753
+ name: 'Program',
2754
+ properties: [{ name: 'Capacity' }, { name: 'CurrentEnrollment' }, { name: 'Name' }, { name: 'Last Modified' }, { name: 'Length Hours' }, { name: 'External Id' }, { name: 'Classification Of Instructional Program Code' }, { name: 'Classification Of Instructional Program Version' }, { name: 'Length Hours Type' }, { name: 'Normal Length of Time for Completion' }, { name: 'Normal Length of Time for Completion Units' }, { name: 'Postsecondary Program Level' }]
2755
+ }, {
2756
+ name: 'Student Program',
2757
+ properties: [{ name: 'Last Modified' }, { name: 'Participation Start Date' }, { name: 'Participation Exit Date' }, { name: 'Student External Id' }, { name: 'Program External Id' }, { name: 'Program Participation Status' }, { name: 'Transfer Out Indicator' }, { name: 'Work Based Learning Opportunity Type' }, { name: 'Classification Of Instructional Program Use' }]
2743
2758
  }],
2744
2759
  /*sourceDefaultSchema: [
2745
2760
  {
@@ -4232,7 +4247,7 @@ module.exports =
4232
4247
  ) : null,
4233
4248
  _react2.default.createElement(_reduxForm.Field, { name: step.mode + 'Environment', component: renderError }),
4234
4249
  _react2.default.createElement('br', null),
4235
- _react2.default.createElement(_navButtons2.default, { handleSubmit: handleSubmit, nav: nav, reset: reset, inputs: inputs }),
4250
+ _react2.default.createElement(_navButtons2.default, { nextDisabled: !wizard.sourceMetadata, handleSubmit: handleSubmit, nav: nav, reset: reset, inputs: inputs }),
4236
4251
  _react2.default.createElement('br', null),
4237
4252
  _react2.default.createElement('br', null)
4238
4253
  );
@@ -4385,10 +4400,20 @@ module.exports =
4385
4400
 
4386
4401
  var _loadData2 = _interopRequireDefault(_loadData);
4387
4402
 
4388
- var _groupNav = __webpack_require__(9);
4403
+ var _groupNav = __webpack_require__(8);
4389
4404
 
4390
4405
  var _groupNav2 = _interopRequireDefault(_groupNav);
4391
4406
 
4407
+ var _transformModal = __webpack_require__(58);
4408
+
4409
+ var _transformModal2 = _interopRequireDefault(_transformModal);
4410
+
4411
+ var _mapTableRows = __webpack_require__(56);
4412
+
4413
+ var Rows = _interopRequireWildcard(_mapTableRows);
4414
+
4415
+ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
4416
+
4392
4417
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4393
4418
 
4394
4419
  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); } }
@@ -4407,10 +4432,18 @@ module.exports =
4407
4432
 
4408
4433
  var _this = _possibleConstructorReturn(this, (MapStep.__proto__ || Object.getPrototypeOf(MapStep)).call(this));
4409
4434
 
4435
+ _this.state = {
4436
+ showModal: false,
4437
+ selectedTransform: null,
4438
+ selectedTransformIndex: null,
4439
+ selectedTransformResourceIndex: null
4440
+ };
4410
4441
  _this.clearAllMappings = _this.clearAllMappings.bind(_this);
4411
4442
  _this.autoMap = _this.autoMap.bind(_this);
4412
4443
  _this.clearOneMapping = _this.clearOneMapping.bind(_this);
4413
4444
  _this.update = _this.update.bind(_this);
4445
+ _this.hideModal = _this.hideModal.bind(_this);
4446
+ _this.selectMapping = _this.selectMapping.bind(_this);
4414
4447
  return _this;
4415
4448
  }
4416
4449
 
@@ -4432,6 +4465,23 @@ module.exports =
4432
4465
  value: function update() {
4433
4466
  this.forceUpdate();
4434
4467
  }
4468
+ }, {
4469
+ key: 'hideModal',
4470
+ value: function hideModal() {
4471
+ this.setState({
4472
+ showModal: false
4473
+ });
4474
+ }
4475
+ }, {
4476
+ key: 'selectMapping',
4477
+ value: function selectMapping(rscIndex, m, i) {
4478
+ this.setState({
4479
+ showModal: true,
4480
+ selectedTransform: m,
4481
+ selectedTransformIndex: i,
4482
+ selectedTransformResourceIndex: rscIndex
4483
+ });
4484
+ }
4435
4485
  }, {
4436
4486
  key: 'autoMap',
4437
4487
  value: function autoMap() {
@@ -4502,14 +4552,16 @@ module.exports =
4502
4552
  reset = _props5.reset,
4503
4553
  wizard = _props5.wizard;
4504
4554
 
4505
- var resourceGroups = formValues['resourceGroups'];
4506
4555
  var Button = inputs.Button;
4507
4556
  var MapTable = inputs.MapTable;
4508
-
4509
- var sourceSchema = wizard['sourceMetadata'] ? wizard['sourceMetadata'] : step.defaultSchema;
4557
+ var sourceSchema = wizard['sourceMetadata'] ? wizard['sourceMetadata'] : null;
4510
4558
 
4511
4559
  var destinationSchema = wizard['destinationMetadata'] ? wizard['destinationMetadata'] : null;
4512
4560
 
4561
+ var resourceGroups = formValues['resourceGroups'].filter(function (g) {
4562
+ return g.resources;
4563
+ });
4564
+
4513
4565
  return _react2.default.createElement(
4514
4566
  'form',
4515
4567
  { onKeyPress: function onKeyPress(e) {
@@ -4544,10 +4596,10 @@ module.exports =
4544
4596
  { style: { position: 'relative', width: 640 } },
4545
4597
  _react2.default.createElement(
4546
4598
  _groupNav2.default,
4547
- { resourceGroups: resourceGroups, customizable: false, isBundleStep: false, inputs: inputs },
4599
+ { resourceGroups: resourceGroups, customizable: false, isBundleStep: false, inputs: inputs,
4600
+ style: { position: 'relative', width: 640, height: 67, zIndex: 9000 } },
4548
4601
  _react2.default.createElement(_mapAccordion2.default, { sourceSchema: sourceSchema, destinationSchema: destinationSchema,
4549
- formValues: formValues, change: change, update: this.update
4550
- })
4602
+ formValues: formValues, change: change, update: this.update })
4551
4603
  )
4552
4604
  ) : null
4553
4605
  ),
@@ -4555,7 +4607,17 @@ module.exports =
4555
4607
  resourceGroups && resourceGroups.length > 0 ? _react2.default.createElement(
4556
4608
  'div',
4557
4609
  null,
4558
- _react2.default.createElement(MapTable, { resourceGroups: resourceGroups, clearOneMapping: this.clearOneMapping })
4610
+ _react2.default.createElement(
4611
+ MapTable,
4612
+ { resourceGroups: resourceGroups, clearOneMapping: this.clearOneMapping, selectMapping: this.selectMapping },
4613
+ _react2.default.createElement(Rows.MapTableSourceRow, null),
4614
+ _react2.default.createElement(Rows.MapTableMappingRow, null),
4615
+ _react2.default.createElement(Rows.MapTableTransformRow, null),
4616
+ _react2.default.createElement(Rows.MapTableDestinationRow, null)
4617
+ ),
4618
+ this.state.showModal && _react2.default.createElement(_transformModal2.default, { inputs: inputs, hideModal: this.hideModal, mapping: this.state.selectedTransform,
4619
+ opened: this.state.showModal, mappingIndex: this.state.selectedTransformIndex,
4620
+ resourceGroupIndex: this.state.selectedTransformResourceIndex, resourceGroups: resourceGroups })
4559
4621
  ) : null,
4560
4622
  _react2.default.createElement('br', null),
4561
4623
  _react2.default.createElement(_navButtons2.default, { handleSubmit: handleSubmit, nav: nav, reset: reset, inputs: inputs,
@@ -4950,7 +5012,7 @@ module.exports =
4950
5012
 
4951
5013
  var _navButtons2 = _interopRequireDefault(_navButtons);
4952
5014
 
4953
- var _schemaAccordion = __webpack_require__(56);
5015
+ var _schemaAccordion = __webpack_require__(57);
4954
5016
 
4955
5017
  var _schemaAccordion2 = _interopRequireDefault(_schemaAccordion);
4956
5018
 
@@ -4958,7 +5020,7 @@ module.exports =
4958
5020
 
4959
5021
  var _loadData2 = _interopRequireDefault(_loadData);
4960
5022
 
4961
- var _groupNav = __webpack_require__(9);
5023
+ var _groupNav = __webpack_require__(8);
4962
5024
 
4963
5025
  var _groupNav2 = _interopRequireDefault(_groupNav);
4964
5026
 
@@ -4998,19 +5060,10 @@ module.exports =
4998
5060
  _this.changeEntityOrder = _this.changeEntityOrder.bind(_this);
4999
5061
  _this.changeGroupOrder = _this.changeGroupOrder.bind(_this);
5000
5062
  _this.defaultResourceMapping = [{
5001
- name: 'Account',
5002
- resources: [{
5003
- name: 'Student',
5004
- externalKey: 'External Id'
5005
- }]
5006
- }, {
5007
5063
  name: 'Contact',
5008
5064
  resources: [{
5009
5065
  name: 'Student',
5010
5066
  externalKey: null
5011
- }, {
5012
- name: 'Staff',
5013
- externalKey: 'External Id'
5014
5067
  }]
5015
5068
  }];
5016
5069
  return _this;
@@ -5087,7 +5140,7 @@ module.exports =
5087
5140
  }
5088
5141
  }, {
5089
5142
  key: 'addGroup',
5090
- value: function addGroup(v) {
5143
+ value: function addGroup(v, recordTypeId) {
5091
5144
  var _props4 = this.props,
5092
5145
  change = _props4.change,
5093
5146
  formValues = _props4.formValues;
@@ -5096,7 +5149,8 @@ module.exports =
5096
5149
  var resourceGroups = formValues['resourceGroups'] || [];
5097
5150
  resourceGroups.push({
5098
5151
  name: v,
5099
- resources: null
5152
+ resources: null,
5153
+ recordTypeId: recordTypeId
5100
5154
  });
5101
5155
 
5102
5156
  change('resourceGroups', resourceGroups);
@@ -5198,7 +5252,7 @@ module.exports =
5198
5252
  var Button = inputs.Button;
5199
5253
  var Tooltip = inputs.Tooltip;
5200
5254
 
5201
- var sourceSchema = wizard[step.mode + 'Metadata'] ? wizard[step.mode + 'Metadata'] : step.defaultSchema;
5255
+ var sourceSchema = wizard['sourceMetadata'] ? wizard['sourceMetadata'] : null;
5202
5256
 
5203
5257
  var destinationSchema = wizard['destinationMetadata'] ? wizard['destinationMetadata'] : null;
5204
5258
 
@@ -5248,7 +5302,7 @@ module.exports =
5248
5302
  { style: { marginLeft: 16 } },
5249
5303
  _react2.default.createElement(
5250
5304
  _groupNav2.default,
5251
- { style: { position: 'relative', width: 540 }, isBundleStep: true,
5305
+ { isBundleStep: true, style: { position: 'relative', width: 540, height: 67, zIndex: 9000 },
5252
5306
  resourceGroups: resourceGroups, removeGroup: this.removeGroup, addGroup: this.addGroup,
5253
5307
  destinationSchema: destinationSchema, changeGroupOrder: this.changeGroupOrder,
5254
5308
  inputs: inputs, customizable: step.customizable, addDefaultEntity: this.addDefaultEntity },
@@ -5259,7 +5313,11 @@ module.exports =
5259
5313
  _react2.default.createElement('br', null)
5260
5314
  ) : null,
5261
5315
  _react2.default.createElement(_navButtons2.default, { handleSubmit: handleSubmit, nav: nav, reset: reset, inputs: inputs,
5262
- nextDisabled: !(resourceGroups && resourceGroups.length > 0) })
5316
+ nextDisabled: !(resourceGroups && resourceGroups.length > 0) || !resourceGroups.every(function (g) {
5317
+ return g.resources && g.resources.every(function (rsc) {
5318
+ return rsc.externalKey;
5319
+ });
5320
+ }) })
5263
5321
  );
5264
5322
  }
5265
5323
  }]);
@@ -5291,7 +5349,7 @@ module.exports =
5291
5349
 
5292
5350
  var _react2 = _interopRequireDefault(_react);
5293
5351
 
5294
- var _reactDraggable = __webpack_require__(10);
5352
+ var _reactDraggable = __webpack_require__(9);
5295
5353
 
5296
5354
  var _reactDraggable2 = _interopRequireDefault(_reactDraggable);
5297
5355
 
@@ -5431,11 +5489,11 @@ module.exports =
5431
5489
  _react2.default.createElement(
5432
5490
  'div',
5433
5491
  { style: { display: 'inline-block' } },
5434
- 'Source Object Groups'
5492
+ 'Source Objects'
5435
5493
  ),
5436
5494
  _react2.default.createElement(
5437
5495
  'div',
5438
- { style: { width: '35%', float: 'right', marginLeft: 8 } },
5496
+ { style: { width: '49%', float: 'right', marginLeft: 8 } },
5439
5497
  'Destination Objects'
5440
5498
  )
5441
5499
  ),
@@ -5443,77 +5501,73 @@ module.exports =
5443
5501
  'div',
5444
5502
  { className: 'bundle-table-body' },
5445
5503
  resourceGroups && resourceGroups.map(function (group, i) {
5446
- if (group.resources && group.resources.length > 0) {
5447
- return _react2.default.createElement(
5448
- _reactDraggable2.default,
5449
- { axis: 'y', bounds: 'parent', key: i, handle: '.dragon', position: { x: 0, y: _this3.state.yPositions[i] },
5450
- onStart: function onStart(e, v) {
5451
- return _this3.handleDragStart(e, v, i);
5452
- }, onDrag: _this3.handleDrag, onStop: _this3.handleDragEnd },
5504
+ return _react2.default.createElement(
5505
+ _reactDraggable2.default,
5506
+ { axis: 'y', bounds: 'parent', key: i, handle: '.dragon', position: { x: 0, y: _this3.state.yPositions[i] },
5507
+ onStart: function onStart(e, v) {
5508
+ return _this3.handleDragStart(e, v, i);
5509
+ }, onDrag: _this3.handleDrag, onStop: _this3.handleDragEnd },
5510
+ _react2.default.createElement(
5511
+ 'div',
5512
+ { className: 'bundle-table-row', key: i, style: { background: i === resourceGroupIndex ? '#f4f6f9' : 'white' } },
5453
5513
  _react2.default.createElement(
5454
5514
  'div',
5455
- { className: 'bundle-table-row', key: i, style: { background: i === resourceGroupIndex ? '#f4f6f9' : 'white' } },
5515
+ { className: 'bundle-table-dragger' },
5516
+ _react2.default.createElement(
5517
+ 'div',
5518
+ { style: { display: 'inline-block', verticalAlign: 'top', marginRight: 8, cursor: 'pointer' },
5519
+ className: 'dragon' },
5520
+ _react2.default.createElement(
5521
+ 'svg',
5522
+ { xmlns: 'http://www.w3.org/2000/svg', width: '24', height: '24', viewBox: '0 0 18 18' },
5523
+ _react2.default.createElement('path', { d: 'M9 4.12l2.38 2.38 1.06-1.06L9 2 5.56 5.44 6.62 6.5 9 4.12zm0 9.76L6.62 11.5l-1.06 1.06L9 16l3.44-3.44-1.06-1.06L9 13.88z' })
5524
+ )
5525
+ ),
5526
+ _react2.default.createElement(
5527
+ 'div',
5528
+ { style: { paddingTop: 3, display: 'inline-block', overflow: 'hidden',
5529
+ textOverflow: 'ellipsis', maxWidth: 'calc(100% - 195px)', whiteSpace: 'nowrap' } },
5530
+ group.resources && group.resources.map(function (rsc, i) {
5531
+ return _react2.default.createElement(
5532
+ 'span',
5533
+ { key: i },
5534
+ i !== 0 && _react2.default.createElement(
5535
+ 'span',
5536
+ null,
5537
+ '+ '
5538
+ ),
5539
+ _react2.default.createElement(
5540
+ 'span',
5541
+ { style: { fontWeight: i === 0 ? 'bold' : 'normal' } },
5542
+ rsc.name,
5543
+ ' '
5544
+ )
5545
+ );
5546
+ })
5547
+ ),
5456
5548
  _react2.default.createElement(
5457
5549
  'div',
5458
- { className: 'bundle-table-dragger' },
5550
+ { style: { minWidth: '49%', float: 'right' } },
5459
5551
  _react2.default.createElement(
5460
5552
  'div',
5461
- { style: { display: 'inline-block', verticalAlign: 'top', marginRight: 8, cursor: 'pointer' },
5462
- className: 'dragon' },
5553
+ { className: 'remove-resource-group', onClick: function onClick() {
5554
+ return removeResourceGroup(i);
5555
+ } },
5463
5556
  _react2.default.createElement(
5464
5557
  'svg',
5465
- { xmlns: 'http://www.w3.org/2000/svg', width: '24', height: '24', viewBox: '0 0 18 18' },
5466
- _react2.default.createElement('path', { d: 'M9 4.12l2.38 2.38 1.06-1.06L9 2 5.56 5.44 6.62 6.5 9 4.12zm0 9.76L6.62 11.5l-1.06 1.06L9 16l3.44-3.44-1.06-1.06L9 13.88z' })
5558
+ { xmlns: 'http://www.w3.org/2000/svg', style: { width: 18, height: 18 }, viewBox: '0 0 60 60' },
5559
+ _react2.default.createElement('path', { d: 'M 15.674663,15.572746 L 44.587629,44.485711 M 45.118838,15.420972 L 15.522889,45.016920' })
5467
5560
  )
5468
5561
  ),
5469
5562
  _react2.default.createElement(
5470
- 'div',
5471
- { style: { paddingTop: 3, display: 'inline-block', overflow: 'hidden',
5472
- textOverflow: 'ellipsis', maxWidth: 'calc(100% - 195px)', whiteSpace: 'nowrap' } },
5473
- group.resources && group.resources.map(function (rsc, i) {
5474
- return _react2.default.createElement(
5475
- 'span',
5476
- { key: i },
5477
- i !== 0 && _react2.default.createElement(
5478
- 'span',
5479
- null,
5480
- '+ '
5481
- ),
5482
- _react2.default.createElement(
5483
- 'span',
5484
- { style: { fontWeight: i === 0 ? 'bold' : 'normal' } },
5485
- rsc.name,
5486
- ' '
5487
- )
5488
- );
5489
- })
5490
- ),
5491
- _react2.default.createElement(
5492
- 'div',
5493
- { style: { width: '35%', float: 'right' } },
5494
- _react2.default.createElement(
5495
- 'div',
5496
- { className: 'remove-resource-group', onClick: function onClick() {
5497
- return removeResourceGroup(i);
5498
- } },
5499
- _react2.default.createElement(
5500
- 'svg',
5501
- { xmlns: 'http://www.w3.org/2000/svg', style: { width: 18, height: 18 }, viewBox: '0 0 60 60' },
5502
- _react2.default.createElement('path', { d: 'M 15.674663,15.572746 L 44.587629,44.485711 M 45.118838,15.420972 L 15.522889,45.016920' })
5503
- )
5504
- ),
5505
- _react2.default.createElement(
5506
- 'strong',
5507
- { style: { fontSize: 16, whiteSpace: 'wrap', overflow: 'hidden', textOverflow: 'ellipsis' } },
5508
- group.name
5509
- )
5563
+ 'strong',
5564
+ { style: { fontSize: 16, whiteSpace: 'nowrap', overflow: 'hidden', textOverflow: 'ellipsis' } },
5565
+ group.name
5510
5566
  )
5511
5567
  )
5512
5568
  )
5513
- );
5514
- } else {
5515
- return null;
5516
- }
5569
+ )
5570
+ );
5517
5571
  })
5518
5572
  )
5519
5573
  );
@@ -5541,7 +5595,7 @@ module.exports =
5541
5595
 
5542
5596
  var _react2 = _interopRequireDefault(_react);
5543
5597
 
5544
- var _reactAddonsCssTransitionGroup = __webpack_require__(11);
5598
+ var _reactAddonsCssTransitionGroup = __webpack_require__(10);
5545
5599
 
5546
5600
  var _reactAddonsCssTransitionGroup2 = _interopRequireDefault(_reactAddonsCssTransitionGroup);
5547
5601
 
@@ -5621,7 +5675,8 @@ module.exports =
5621
5675
  resourceFromName: selectedEntity,
5622
5676
  resourceToName: group,
5623
5677
  propertyFromName: this.state.selectedField,
5624
- propertyToName: field
5678
+ propertyToName: field,
5679
+ transformType: 'none'
5625
5680
  });
5626
5681
  change('resourceGroups', resourceGroups);
5627
5682
  this.setState({ selectedField: null });
@@ -5662,13 +5717,17 @@ module.exports =
5662
5717
  return _react2.default.createElement(
5663
5718
  'div',
5664
5719
  null,
5665
- 'Sources',
5666
5720
  _react2.default.createElement(
5667
5721
  'div',
5668
5722
  { style: { position: 'relative', height: 288, border: '1px solid rgb(204, 205, 207)', overflow: 'hidden' } },
5669
5723
  _react2.default.createElement(
5670
5724
  'div',
5671
5725
  { style: { height: 288, width: 350, overflowX: 'hidden' } },
5726
+ _react2.default.createElement(
5727
+ 'div',
5728
+ { style: { marginLeft: 12, marginTop: 3 }, className: 'labelz' },
5729
+ 'Source Objects'
5730
+ ),
5672
5731
  bit.map(function (x, ii) {
5673
5732
  return _react2.default.createElement(
5674
5733
  _reactAddonsCssTransitionGroup2.default,
@@ -5682,7 +5741,7 @@ module.exports =
5682
5741
  { ref: function ref(_ref) {
5683
5742
  _this2['scroller-' + ii] = _ref;
5684
5743
  }, className: 'scrolly',
5685
- style: { background: 'white', height: 282, width: 346, padding: 12 } },
5744
+ style: { background: 'white', height: 261, width: 350, padding: '6px 12px' } },
5686
5745
  group.resources && group.resources.map(function (rsc, i) {
5687
5746
  return _react2.default.createElement(
5688
5747
  'div',
@@ -5714,8 +5773,8 @@ module.exports =
5714
5773
  })[0].properties.map(function (field, ii) {
5715
5774
  var style = {
5716
5775
  paddingLeft: 5,
5717
- background: selectedField && selectedField === field.name ? '#dfe0e0' : 'initial',
5718
- fontWeight: selectedField === field.name || filteredMappings && Object.values(filteredMappings).includes(field.name) ? 'bold' : 'normal'
5776
+ background: selectedField && selectedField === field.label ? '#dfe0e0' : 'initial',
5777
+ fontWeight: selectedField === field.name || filteredMappings && Object.values(filteredMappings).includes(field.label) ? 'bold' : 'normal'
5719
5778
  };
5720
5779
  if (filteredMappings && Object.values(filteredMappings).includes(field)) {
5721
5780
  style['color'] = 'black';
@@ -5724,10 +5783,10 @@ module.exports =
5724
5783
  'div',
5725
5784
  { key: ii, className: 'wizard-map-field',
5726
5785
  style: style, onClick: function onClick() {
5727
- return _this2.clickField(field.name);
5786
+ return _this2.clickField(field.label);
5728
5787
  }
5729
5788
  },
5730
- field.name
5789
+ field.label
5731
5790
  );
5732
5791
  }),
5733
5792
  _react2.default.createElement('div', { style: { height: 9 } })
@@ -5759,9 +5818,9 @@ module.exports =
5759
5818
  _react2.default.createElement(
5760
5819
  'div',
5761
5820
  { className: 'scrolly', style: { height: 256, padding: '8px 12px' } },
5762
- destinationSchema.filter(function (r) {
5821
+ destinationSchema.find(function (r) {
5763
5822
  return r.name === group.name;
5764
- })[0].properties.map(function (field, i) {
5823
+ }).properties.map(function (field, i) {
5765
5824
  return _react2.default.createElement(
5766
5825
  'div',
5767
5826
  { key: i, className: selectedField ? "wizard-map-field" : '', style: {
@@ -5791,6 +5850,188 @@ module.exports =
5791
5850
 
5792
5851
  /***/ },
5793
5852
  /* 56 */
5853
+ /***/ function(module, exports, __webpack_require__) {
5854
+
5855
+ "use strict";
5856
+
5857
+ Object.defineProperty(exports, "__esModule", {
5858
+ value: true
5859
+ });
5860
+ exports.MapTableDestinationRow = exports.MapTableTransformRow = exports.MapTableMappingRow = exports.MapTableSourceRow = undefined;
5861
+
5862
+ var _react = __webpack_require__(1);
5863
+
5864
+ var _react2 = _interopRequireDefault(_react);
5865
+
5866
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5867
+
5868
+ var MapTableSourceRow = exports.MapTableSourceRow = function MapTableSourceRow(props) {
5869
+ var group = props.group;
5870
+
5871
+ return _react2.default.createElement(
5872
+ "div",
5873
+ { style: {
5874
+ minHeight: group.resources.length * 19
5875
+ } },
5876
+ group.resources && group.resources.map(function (rsc, ii) {
5877
+ var mapz = group.mappings && group.mappings.filter(function (m) {
5878
+ return m.resourceFromName === rsc.name;
5879
+ });
5880
+ var fieldNum = mapz ? mapz.length : 0;
5881
+ return _react2.default.createElement(
5882
+ "div",
5883
+ { key: ii, style: {
5884
+ marginTop: ii !== 0 ? 10 : 0,
5885
+ height: fieldNum * 19,
5886
+ minHeight: 18
5887
+ } },
5888
+ _react2.default.createElement(
5889
+ "strong",
5890
+ null,
5891
+ rsc.name
5892
+ )
5893
+ );
5894
+ })
5895
+ );
5896
+ };
5897
+
5898
+ var MapTableMappingRow = exports.MapTableMappingRow = function MapTableMappingRow(props) {
5899
+ var group = props.group,
5900
+ i = props.i,
5901
+ clearOneMapping = props.clearOneMapping;
5902
+
5903
+ return _react2.default.createElement(
5904
+ "div",
5905
+ null,
5906
+ group.resources && group.resources.map(function (rsc, iii) {
5907
+ var mapz = group.mappings && group.mappings.filter(function (m) {
5908
+ return m.resourceFromName === rsc.name;
5909
+ });
5910
+ return _react2.default.createElement(
5911
+ "div",
5912
+ { key: iii, style: {
5913
+ marginTop: iii !== 0 ? 10 : 0,
5914
+ minHeight: 18
5915
+ } },
5916
+ mapz && mapz.map(function (m, iv) {
5917
+ return _react2.default.createElement(
5918
+ "div",
5919
+ { key: iv, style: { height: 19 } },
5920
+ _react2.default.createElement(
5921
+ "div",
5922
+ { className: "x-clear-mapping",
5923
+ onClick: function onClick() {
5924
+ clearOneMapping(i, m);
5925
+ } },
5926
+ "x"
5927
+ ),
5928
+ _react2.default.createElement(
5929
+ "div",
5930
+ { className: "mapping-entry" },
5931
+ m.propertyFromName + " \u2192 " + m.propertyToName
5932
+ )
5933
+ );
5934
+ })
5935
+ );
5936
+ })
5937
+ );
5938
+ };
5939
+
5940
+ var MapTableTransformRow = exports.MapTableTransformRow = function MapTableTransformRow(props) {
5941
+ var group = props.group,
5942
+ selectMapping = props.selectMapping;
5943
+
5944
+ var icons = {
5945
+ none: _react2.default.createElement(
5946
+ "svg",
5947
+ { fill: "#CCCCCC", height: "19", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg" },
5948
+ _react2.default.createElement("path", { d: "M12 8V4l8 8-8 8v-4H4V8z" }),
5949
+ _react2.default.createElement("path", { d: "M0 0h24v24H0z", fill: "none" })
5950
+ ),
5951
+ trim: _react2.default.createElement(
5952
+ "svg",
5953
+ { fill: "#000000", height: "16", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg" },
5954
+ _react2.default.createElement("path", { d: "M0 0h24v24H0z", fill: "none" }),
5955
+ _react2.default.createElement("circle", { cx: "6", cy: "18", fill: "none", r: "2" }),
5956
+ _react2.default.createElement("circle", { cx: "12", cy: "12", fill: "none", r: ".5" }),
5957
+ _react2.default.createElement("circle", { cx: "6", cy: "6", fill: "none", r: "2" }),
5958
+ _react2.default.createElement("path", { d: "M9.64 7.64c.23-.5.36-1.05.36-1.64 0-2.21-1.79-4-4-4S2 3.79 2 6s1.79 4 4 4c.59 0 1.14-.13 1.64-.36L10 12l-2.36 2.36C7.14 14.13 6.59 14 6 14c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4c0-.59-.13-1.14-.36-1.64L12 14l7 7h3v-1L9.64 7.64zM6 8c-1.1 0-2-.89-2-2s.9-2 2-2 2 .89 2 2-.9 2-2 2zm0 12c-1.1 0-2-.89-2-2s.9-2 2-2 2 .89 2 2-.9 2-2 2zm6-7.5c-.28 0-.5-.22-.5-.5s.22-.5.5-.5.5.22.5.5-.22.5-.5.5zM19 3l-6 6 2 2 7-7V3z" })
5959
+ ),
5960
+ split: _react2.default.createElement(
5961
+ "svg",
5962
+ { fill: "#000000", height: "19", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg" },
5963
+ _react2.default.createElement("path", { d: "M0 0h24v24H0z", fill: "none" }),
5964
+ _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" })
5965
+ ),
5966
+ merge: _react2.default.createElement(
5967
+ "svg",
5968
+ { fill: "#000000", height: "19", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg" },
5969
+ _react2.default.createElement("path", { d: "M0 0h24v24H0z", fill: "none" }),
5970
+ _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" })
5971
+ ),
5972
+ date: _react2.default.createElement(
5973
+ "svg",
5974
+ { fill: "#000000", height: "18", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg" },
5975
+ _react2.default.createElement("path", { d: "M17 12h-5v5h5v-5zM16 1v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-1V1h-2zm3 18H5V8h14v11z" }),
5976
+ _react2.default.createElement("path", { d: "M0 0h24v24H0z", fill: "none" })
5977
+ ),
5978
+ sigma: _react2.default.createElement(
5979
+ "svg",
5980
+ { fill: "#000000", height: "19", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg" },
5981
+ _react2.default.createElement("path", { d: "M0 0h24v24H0z", fill: "none" }),
5982
+ _react2.default.createElement("path", { d: "M18 4H6v2l6.5 6L6 18v2h12v-3h-7l5-5-5-5h7z" })
5983
+ ),
5984
+ link: _react2.default.createElement(
5985
+ "svg",
5986
+ { fill: "#000000", height: "19", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg" },
5987
+ _react2.default.createElement("path", { d: "M0 0h24v24H0z", fill: "none" }),
5988
+ _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" })
5989
+ ),
5990
+ swap: _react2.default.createElement(
5991
+ "svg",
5992
+ { fill: "#000000", height: "19", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg" },
5993
+ _react2.default.createElement("path", { d: "M16 17.01V10h-2v7.01h-3L15 21l4-3.99h-3zM9 3L5 6.99h3V14h2V6.99h3L9 3z" }),
5994
+ _react2.default.createElement("path", { d: "M0 0h24v24H0z", fill: "none" })
5995
+ )
5996
+ };
5997
+
5998
+ return _react2.default.createElement(
5999
+ "div",
6000
+ null,
6001
+ group.resources && group.resources.map(function (rsc, iii) {
6002
+ var mapz = group.mappings && group.mappings.filter(function (m) {
6003
+ return m.resourceFromName === rsc.name;
6004
+ });
6005
+ return _react2.default.createElement(
6006
+ "div",
6007
+ { key: iii, style: {
6008
+ marginTop: iii !== 0 ? 10 : 0,
6009
+ minHeight: 18
6010
+ } },
6011
+ mapz && mapz.map(function (m, iv) {
6012
+ return _react2.default.createElement(
6013
+ "div",
6014
+ { key: iv, className: "map-table-transform-icon", onClick: function onClick() {
6015
+ return selectMapping(iii, m, iv);
6016
+ } },
6017
+ icons[m.transformType || 'none']
6018
+ );
6019
+ })
6020
+ );
6021
+ })
6022
+ );
6023
+ };
6024
+
6025
+ var MapTableDestinationRow = exports.MapTableDestinationRow = function MapTableDestinationRow(props) {
6026
+ return _react2.default.createElement(
6027
+ "strong",
6028
+ { style: { fontSize: 16, whiteSpace: 'wrap' } },
6029
+ props.group.name
6030
+ );
6031
+ };
6032
+
6033
+ /***/ },
6034
+ /* 57 */
5794
6035
  /***/ function(module, exports, __webpack_require__) {
5795
6036
 
5796
6037
  'use strict';
@@ -5805,11 +6046,11 @@ module.exports =
5805
6046
 
5806
6047
  var _react2 = _interopRequireDefault(_react);
5807
6048
 
5808
- var _reactAddonsCssTransitionGroup = __webpack_require__(11);
6049
+ var _reactAddonsCssTransitionGroup = __webpack_require__(10);
5809
6050
 
5810
6051
  var _reactAddonsCssTransitionGroup2 = _interopRequireDefault(_reactAddonsCssTransitionGroup);
5811
6052
 
5812
- var _reactDraggable = __webpack_require__(10);
6053
+ var _reactDraggable = __webpack_require__(9);
5813
6054
 
5814
6055
  var _reactDraggable2 = _interopRequireDefault(_reactDraggable);
5815
6056
 
@@ -5962,14 +6203,18 @@ module.exports =
5962
6203
  return _react2.default.createElement(
5963
6204
  'div',
5964
6205
  null,
5965
- 'Source Objects',
5966
6206
  _react2.default.createElement(
5967
6207
  'div',
5968
6208
  { style: {
5969
6209
  background: 'white', width: 540, minHeight: 245, overflow: overflowHidden ? 'hidden' : 'visible',
5970
6210
  border: '1px solid rgb(204, 205, 207)', position: 'relative',
5971
- height: groupResourcesLength * 58 + 72
6211
+ height: groupResourcesLength * 58 + 72 + 22
5972
6212
  } },
6213
+ _react2.default.createElement(
6214
+ 'div',
6215
+ { style: { marginLeft: 12, marginTop: 3 }, className: 'labelz' },
6216
+ 'Source Objects'
6217
+ ),
5973
6218
  bit.map(function (x, ii) {
5974
6219
  return _react2.default.createElement(
5975
6220
  _reactAddonsCssTransitionGroup2.default,
@@ -6027,9 +6272,11 @@ module.exports =
6027
6272
  { style: { verticalAlign: 'top', float: 'right', marginRight: 8 } },
6028
6273
  _react2.default.createElement(_reduxForm.Field, { component: inputs.rfSelect, type: 'input', menuAlign: 'right', defaultLabel: 'Choose Group Key',
6029
6274
  selectedValue: group.resources[i].externalKey, onClick: showOverflow,
6030
- values: sourceSchema.filter(function (defaultRsc) {
6275
+ values: sourceSchema.find(function (defaultRsc) {
6031
6276
  return defaultRsc.name === rsc.name;
6032
- })[0].properties,
6277
+ }) && sourceSchema.find(function (defaultRsc) {
6278
+ return defaultRsc.name === rsc.name;
6279
+ }).properties,
6033
6280
  name: 'resourceGroups.' + resourceGroupIndex + '.resources.' + i + '.externalKey'
6034
6281
  })
6035
6282
  )
@@ -6061,7 +6308,179 @@ module.exports =
6061
6308
  exports.default = SchemaAccordion;
6062
6309
 
6063
6310
  /***/ },
6064
- /* 57 */
6311
+ /* 58 */
6312
+ /***/ function(module, exports, __webpack_require__) {
6313
+
6314
+ 'use strict';
6315
+
6316
+ Object.defineProperty(exports, "__esModule", {
6317
+ value: true
6318
+ });
6319
+
6320
+ 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; }; }();
6321
+
6322
+ var _react = __webpack_require__(1);
6323
+
6324
+ var _react2 = _interopRequireDefault(_react);
6325
+
6326
+ var _reduxForm = __webpack_require__(3);
6327
+
6328
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6329
+
6330
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6331
+
6332
+ 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; }
6333
+
6334
+ 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; }
6335
+
6336
+ var TransformModal = function (_Component) {
6337
+ _inherits(TransformModal, _Component);
6338
+
6339
+ function TransformModal() {
6340
+ _classCallCheck(this, TransformModal);
6341
+
6342
+ var _this = _possibleConstructorReturn(this, (TransformModal.__proto__ || Object.getPrototypeOf(TransformModal)).call(this));
6343
+
6344
+ _this.state = {
6345
+ dataTypeSelected: '',
6346
+ dateFormatSelected: ''
6347
+ };
6348
+ _this.transformOptions = {
6349
+ 'none': 'None',
6350
+ 'trim': 'Trim Field',
6351
+ 'date': 'Date Format'
6352
+ };
6353
+ _this.dataTypes = ['String', 'Number', 'Date', 'Boolean'];
6354
+ _this.dateFormats = {
6355
+ 'ISO': "2015-03-25",
6356
+ 'Short': "03/25/2015",
6357
+ 'Long': "25 Mar 2015",
6358
+ 'Full': "Wednesday March 25 2015"
6359
+ };
6360
+ return _this;
6361
+ }
6362
+
6363
+ _createClass(TransformModal, [{
6364
+ key: 'render',
6365
+ value: function render() {
6366
+ var _this2 = this;
6367
+
6368
+ var _props = this.props,
6369
+ inputs = _props.inputs,
6370
+ opened = _props.opened,
6371
+ mapping = _props.mapping,
6372
+ hideModal = _props.hideModal,
6373
+ mappingIndex = _props.mappingIndex,
6374
+ resourceGroups = _props.resourceGroups,
6375
+ resourceGroupIndex = _props.resourceGroupIndex;
6376
+
6377
+ var MapModal = inputs.MapModal;
6378
+ var Input = inputs.Input;
6379
+
6380
+ var groups = Object.assign({}, resourceGroups);
6381
+ var group = groups[resourceGroupIndex];
6382
+ var transformSelected = group.mappings && group.mappings[mappingIndex] && group.mappings[mappingIndex].transformType || 'none';
6383
+
6384
+ return _react2.default.createElement(
6385
+ MapModal,
6386
+ { opened: opened, hideModal: hideModal },
6387
+ _react2.default.createElement(
6388
+ 'div',
6389
+ null,
6390
+ _react2.default.createElement(
6391
+ 'div',
6392
+ null,
6393
+ mapping.resourceFromName + ': ' + mapping.propertyFromName,
6394
+ '\xA0\xA0\u2192\xA0\xA0',
6395
+ mapping.resourceToName + ': ' + mapping.propertyToName
6396
+ ),
6397
+ _react2.default.createElement('br', null),
6398
+ _react2.default.createElement(
6399
+ 'div',
6400
+ { style: { width: 150, display: 'inline-block', marginBottom: 20 } },
6401
+ _react2.default.createElement(_reduxForm.Field, { name: 'resourceGroups.' + resourceGroupIndex + '.mappings.' + mappingIndex + '.transformType',
6402
+ component: inputs.rfRadioGroup, label: 'Deployment Type', options: this.transformOptions })
6403
+ ),
6404
+ _react2.default.createElement(
6405
+ 'div',
6406
+ { style: { display: 'inline-block', verticalAlign: 'top', marginLeft: 20, width: 'calc(100% - 170px)' } },
6407
+ transformSelected === 'Data Type' && _react2.default.createElement(
6408
+ 'div',
6409
+ null,
6410
+ 'Convert Source Field to:',
6411
+ _react2.default.createElement('br', null),
6412
+ this.dataTypes.map(function (type) {
6413
+ return _react2.default.createElement(
6414
+ 'div',
6415
+ { key: type, onClick: function onClick() {
6416
+ return _this2.setState({ dataTypeSelected: type });
6417
+ },
6418
+ className: _this2.state.dataTypeSelected === type ? "transform-data-type transform-data-type-sel" : "transform-data-type"
6419
+ },
6420
+ type
6421
+ );
6422
+ })
6423
+ ),
6424
+ transformSelected === 'trim' && _react2.default.createElement(
6425
+ 'div',
6426
+ null,
6427
+ _react2.default.createElement(
6428
+ 'div',
6429
+ { style: { marginBottom: 8 } },
6430
+ 'Limit final field length:'
6431
+ ),
6432
+ _react2.default.createElement(Input, { style: { width: 132 }, label: 'Character Count' })
6433
+ ),
6434
+ transformSelected === 'date' && _react2.default.createElement(
6435
+ 'div',
6436
+ null,
6437
+ _react2.default.createElement(
6438
+ 'div',
6439
+ { style: { marginBottom: 8 } },
6440
+ 'Format Date field'
6441
+ ),
6442
+ Object.keys(this.dateFormats).map(function (format, i) {
6443
+ return _react2.default.createElement(
6444
+ 'div',
6445
+ { key: i, onClick: function onClick() {
6446
+ return _this2.setState({ dateFormatSelected: format });
6447
+ },
6448
+ className: _this2.state.dateFormatSelected === format ? "transform-data-type transform-data-type-sel" : "transform-data-type"
6449
+ },
6450
+ format
6451
+ );
6452
+ }),
6453
+ _react2.default.createElement('br', null),
6454
+ this.state.dateFormatSelected && _react2.default.createElement(
6455
+ 'div',
6456
+ { style: { marginTop: 6, color: 'grey' } },
6457
+ 'Example: ',
6458
+ this.dateFormats[this.state.dateFormatSelected]
6459
+ )
6460
+ ),
6461
+ transformSelected === 'Lookup Table' && _react2.default.createElement(
6462
+ 'div',
6463
+ null,
6464
+ _react2.default.createElement(
6465
+ 'div',
6466
+ { style: { marginBottom: 8 } },
6467
+ 'Convert field name:'
6468
+ ),
6469
+ _react2.default.createElement(Input, { style: { width: 150 }, label: 'Field Name' })
6470
+ )
6471
+ )
6472
+ )
6473
+ );
6474
+ }
6475
+ }]);
6476
+
6477
+ return TransformModal;
6478
+ }(_react.Component);
6479
+
6480
+ exports.default = TransformModal;
6481
+
6482
+ /***/ },
6483
+ /* 59 */
6065
6484
  /***/ function(module, exports, __webpack_require__) {
6066
6485
 
6067
6486
  'use strict';
@@ -6080,7 +6499,7 @@ module.exports =
6080
6499
 
6081
6500
  var _reduxForm = __webpack_require__(3);
6082
6501
 
6083
- var _reactRedux = __webpack_require__(13);
6502
+ var _reactRedux = __webpack_require__(12);
6084
6503
 
6085
6504
  var _accountStep = __webpack_require__(44);
6086
6505
 
@@ -6175,33 +6594,50 @@ module.exports =
6175
6594
  }
6176
6595
 
6177
6596
  _createClass(WizardForm, [{
6597
+ key: 'camelize',
6598
+ value: function camelize(str) {
6599
+ return str.replace(/(?:^\w|[A-Z]|\b\w)/g, function (letter, index) {
6600
+ return index === 0 ? letter.toLowerCase() : letter.toUpperCase(); //toUpperCase
6601
+ }).replace(/\s+/g, '');
6602
+ }
6603
+ }, {
6178
6604
  key: 'onSubmit',
6179
6605
  value: function onSubmit(values) {
6180
6606
  var _this2 = this;
6181
6607
 
6182
- var metadataEndpoints = this.props.metadataEndpoints;
6183
-
6184
6608
  console.log('WIZARD OUTPUT: ', values);
6185
6609
  var config = Object.assign({}, values);
6186
6610
  //----------------------------------
6187
6611
  // Create bundles / mappings
6188
6612
  //----------------------------------
6613
+
6614
+ //resources: Type is the real value, Name is the displayed value
6615
+ //properties: Name is the real value, Label is the displayed value
6616
+
6617
+ /* instead of finding the values from metadata, keep metadata types/names in the RF state */
6618
+
6189
6619
  var bundles = config.resourceGroups || [];
6190
6620
  var mappings = [];
6191
6621
  bundles.forEach(function (group, index) {
6192
- var destinationResource = metadataEndpoints.destination ? _this2.props.wizard.destinationMetadata.find(function (rsc) {
6622
+ var destinationResource = _this2.props.wizard.destinationMetadata ? _this2.props.wizard.destinationMetadata.find(function (rsc) {
6193
6623
  return rsc.name === group.name;
6194
6624
  }) : group;
6625
+ group.name = destinationResource.type;
6195
6626
 
6196
6627
  if (group.mappings) {
6197
6628
  group.mappings.forEach(function (singleMapping) {
6629
+ var sourceResource = _this2.props.wizard.sourceMetadata.find(function (rsc) {
6630
+ return rsc.name === singleMapping.resourceFromName;
6631
+ });
6632
+ var sourceProperty = sourceResource.properties.find(function (prop) {
6633
+ return prop.label === singleMapping.propertyFromName;
6634
+ });
6198
6635
  var destinationProperty = destinationResource.properties.find(function (prop) {
6199
6636
  return prop.label === singleMapping.propertyToName;
6200
6637
  });
6201
- console.log(destinationProperty);
6202
6638
  mappings = mappings.concat({ // add to mappings obj
6203
- resourceFromName: singleMapping.resourceFromName,
6204
- propertyFromName: singleMapping.propertyFromName,
6639
+ resourceFromName: sourceResource.type,
6640
+ propertyFromName: sourceProperty.name,
6205
6641
  resourceToName: destinationResource.type,
6206
6642
  propertyToName: destinationProperty.name,
6207
6643
  bundleIndex: index
@@ -6211,9 +6647,15 @@ module.exports =
6211
6647
  }
6212
6648
  if (group.resources) {
6213
6649
  group.resources = group.resources.map(function (rsc) {
6650
+ var sourceResource = _this2.props.wizard.sourceMetadata.find(function (metaRsc) {
6651
+ return metaRsc.name === rsc.name;
6652
+ });
6653
+ var sourceProperty = sourceResource.properties.find(function (prop) {
6654
+ return prop.label === rsc.externalKey;
6655
+ });
6214
6656
  return {
6215
- resourceName: rsc.name,
6216
- primaryKeyName: rsc.externalKey
6657
+ resourceName: sourceResource.type,
6658
+ primaryKeyName: sourceProperty.name
6217
6659
  };
6218
6660
  });
6219
6661
  }
@@ -6233,10 +6675,13 @@ module.exports =
6233
6675
  currentPage: this.state.currentPage ? JSON.stringify(this.state.currentPage) : wizard.savedConfiguration && wizard.savedConfiguration.currentPage,
6234
6676
  "apiKey": "5664bb4478fae2000100004aae5d222c6c2742717cebc5abf69f0f9e",
6235
6677
  "apiSecret": "YThjODc4MjQ2MzEwNDgzMjYwY2RiYmY5Yzg4NzBhMmI=",
6236
- "apiEndpoint_Student": "https://www.lingkapis.com/v1/@self/ps/student",
6237
- "apiEndpoint_StudentEmail": "https://www.lingkapis.com/v1/@self/ps/studentEmail",
6238
- "apiEndpoint_StaffEmail": "https://www.lingkapis.com/v1/@self/ps/staffEmail",
6678
+ "apiEndpoint_Student": 'https://adapter.lingkapps.com:3000/api/students',
6679
+ //"apiEndpoint_Student": "https://www.lingkapis.com/v1/@self/ps/students?filter=firstName%20eq%20Carlos",
6680
+ "apiEndpoint_StudentEmail": "https://www.lingkapis.com/v1/@self/ps/studentemails",
6681
+ "apiEndpoint_StaffEmail": "https://www.lingkapis.com/v1/@self/ps/staffemails",
6239
6682
  "apiEndpoint_Staff": "https://www.lingkapis.com/v1/@self/ps/staff",
6683
+ "apiEndpoint_StudentProgram": "https://www.lingkapis.com/v1/@self/ps/studentprograms",
6684
+ "apiEndpoint_Program": "https://www.lingkapis.com/v1/@self/ps/programs",
6240
6685
  "sfObject": "Contact",
6241
6686
  "providerType_source": "lingkreader",
6242
6687
  "providerType_destination": "salesforce",
@@ -6250,7 +6695,6 @@ module.exports =
6250
6695
  "version": "v37.0",
6251
6696
  deployment: config.deployment
6252
6697
  };
6253
- console.log(config.deployment);
6254
6698
  //----------------------------------
6255
6699
  // Post
6256
6700
  //----------------------------------
@@ -6397,7 +6841,7 @@ module.exports =
6397
6841
  exports.default = WizardForm;
6398
6842
 
6399
6843
  /***/ },
6400
- /* 58 */
6844
+ /* 60 */
6401
6845
  /***/ function(module, exports, __webpack_require__) {
6402
6846
 
6403
6847
  'use strict';
@@ -6412,17 +6856,17 @@ module.exports =
6412
6856
 
6413
6857
  var _react2 = _interopRequireDefault(_react);
6414
6858
 
6415
- var _redux = __webpack_require__(63);
6859
+ var _redux = __webpack_require__(65);
6416
6860
 
6417
- var _reactRedux = __webpack_require__(13);
6861
+ var _reactRedux = __webpack_require__(12);
6418
6862
 
6419
6863
  var _wizard = __webpack_require__(41);
6420
6864
 
6421
6865
  var wizardActions = _interopRequireWildcard(_wizard);
6422
6866
 
6423
- __webpack_require__(59);
6867
+ __webpack_require__(61);
6424
6868
 
6425
- var _wizardForm = __webpack_require__(57);
6869
+ var _wizardForm = __webpack_require__(59);
6426
6870
 
6427
6871
  var _wizardForm2 = _interopRequireDefault(_wizardForm);
6428
6872
 
@@ -6453,8 +6897,8 @@ module.exports =
6453
6897
  type: 'Banner',
6454
6898
  name: 'Banner',
6455
6899
  env: true,
6456
- defaultSchema: example.wizards[1].sourceDefaultSchema,
6457
- customizable: false
6900
+ customizable: false,
6901
+ customStep: false
6458
6902
  },
6459
6903
  destination: {
6460
6904
  type: 'Salesforce',
@@ -6558,7 +7002,7 @@ module.exports =
6558
7002
  stepList.push(step);
6559
7003
  } else if (step.type === 'custom') {
6560
7004
  var customStep = providerData.providerTypes[wizard.source.type].customStep;
6561
- if (customStep) {
7005
+ if (customStep && wizard.source.customStep) {
6562
7006
  step.type = customStep.type;
6563
7007
  step.title = customStep.title;
6564
7008
  stepList.push(step);
@@ -6655,21 +7099,21 @@ module.exports =
6655
7099
  exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(LingkSync);
6656
7100
 
6657
7101
  /***/ },
6658
- /* 59 */
7102
+ /* 61 */
6659
7103
  /***/ function(module, exports) {
6660
7104
 
6661
7105
  // removed by extract-text-webpack-plugin
6662
7106
 
6663
7107
  /***/ },
6664
- /* 60 */,
6665
- /* 61 */,
6666
- /* 62 */
7108
+ /* 62 */,
7109
+ /* 63 */,
7110
+ /* 64 */
6667
7111
  /***/ function(module, exports) {
6668
7112
 
6669
7113
  module.exports = require("react-dom");
6670
7114
 
6671
7115
  /***/ },
6672
- /* 63 */
7116
+ /* 65 */
6673
7117
  /***/ function(module, exports) {
6674
7118
 
6675
7119
  module.exports = require("redux");