@lingk/sync 0.1.74 → 0.1.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/main.js CHANGED
@@ -335,7 +335,7 @@ module.exports =
335
335
  });
336
336
 
337
337
  var resources = [];
338
- bundle.resources && bundle.resources.forEach(function (rsc) {
338
+ bundle.resources && bundle.resources.forEach(function (rsc, rscIndex) {
339
339
 
340
340
  //get resource and joinKey for bundleResource (check both metadatas)
341
341
  var resourceProvider = rsc.provider.replace('Reader', '').toLowerCase();
@@ -398,7 +398,11 @@ module.exports =
398
398
  provider: resourceProvider
399
399
  }, deNestedJoinKey.property && { joinKeyName: deNestedJoinKey.property }, joinKeyResourceName && { joinKeyResource: joinKeyResourceName }, deNestedJoinKey.parentsArray && deNestedJoinKey.parentsArray.length > 0 && { joinKeyParents: deNestedJoinKey.parentsArray }, deNestedPrimaryKey.property && { primaryKeyName: deNestedPrimaryKey.property }, primaryKeyResourceName && { primaryKeyResource: primaryKeyResourceName }, deNestedPrimaryKey.parentsArray && deNestedPrimaryKey.parentsArray.length > 0 && { primaryKeyParents: deNestedPrimaryKey.parentsArray }, {
400
400
  joinType: rsc.joinType || 'LEFT JOIN'
401
- }, rscResource.parentRef && { parentRef: rscResource.parentRef }, rsc.parameterFilters && { parameterFilters: rsc.parameterFilters }));
401
+ }, rscResource.parentRef && { parentRef: rscResource.parentRef }, rsc.parameterFilters && { parameterFilters: rsc.parameterFilters }, {
402
+ level: rsc.level || (rscIndex === 0 ? 0 : 1)
403
+ }, primaryKeyResourceName && {
404
+ parentNameAndProvider: primaryKeyResourceName + '_' + resourceProvider
405
+ }));
402
406
  }
403
407
  }); // end bundle.resource.forEach
404
408
 
@@ -2664,7 +2668,7 @@ module.exports =
2664
2668
 
2665
2669
  // BUNDLES
2666
2670
  if (group.resources) {
2667
- group.resources = group.resources.map(function (rsc) {
2671
+ group.resources = group.resources.map(function (rsc, rscIndex) {
2668
2672
  //get resource source (check both metadatas)
2669
2673
  var dataSourceMetadata = rsc.provider.toLowerCase() === targetProvider.toLowerCase() ? targetMetadata : sourceMetadata;
2670
2674
  var sourceResource = dataSourceMetadata.find(function (metaRsc) {
@@ -2715,7 +2719,10 @@ module.exports =
2715
2719
  joinType: rsc.joinType
2716
2720
  }, rsc.recordTypeId && { recordTypeId: rsc.recordTypeId }, rsc.parameterFilters && { parameterFilters: rsc.parameterFilters.filter(function (pf) {
2717
2721
  return pf.val;
2718
- }) });
2722
+ }) }, {
2723
+ level: rsc.level || (rscIndex === 0 ? 0 : 1),
2724
+ parentNameAndProvider: primaryKeyResource + '_' + rsc.provider.toLowerCase()
2725
+ });
2719
2726
  } else return null;
2720
2727
  });
2721
2728
  }
@@ -5473,7 +5480,7 @@ module.exports =
5473
5480
  };
5474
5481
  }
5475
5482
 
5476
- function callGenerateRecipe(tenantId, appId, typeId, typeGuid, title, piGuid, mappingGuid, sourceMetadata, destinationMetadata, isManagedPackage, onGenerationError) {
5483
+ function callGenerateRecipe(tenantId, appId, typeId, typeGuid, title, piGuid, mappingGuid, sourceMetadata, destinationMetadata, isManagedPackage, onGenerationError, envName) {
5477
5484
  return function (dispatch, getState, api) {
5478
5485
  var _getState13 = getState(),
5479
5486
  config = _getState13.config;
@@ -5487,7 +5494,8 @@ module.exports =
5487
5494
  "schemaMappingGuid": mappingGuid,
5488
5495
  "sourceSchema": sourceMetadata,
5489
5496
  "destinationSchema": destinationMetadata,
5490
- "isManagedPackage": isManagedPackage
5497
+ "isManagedPackage": isManagedPackage,
5498
+ "environment": envName
5491
5499
  }
5492
5500
  }).then(function (res) {
5493
5501
  return res;
@@ -5512,7 +5520,7 @@ module.exports =
5512
5520
  }
5513
5521
  }).then(function (pi) {
5514
5522
  if (map.mappings && map.mappings.length > 0 && deployment) {
5515
- dispatch(callGenerateRecipe(tenantId, appId, typeId, typeGuid, title, pi.productizedIntegrationGuid, map.schemaMappingGuid, sourceMetadata, destinationMetadata, isManagedPackage, onGenerationError)).then(function (generatedRecipe) {
5523
+ dispatch(callGenerateRecipe(tenantId, appId, typeId, typeGuid, title, pi.productizedIntegrationGuid, map.schemaMappingGuid, sourceMetadata, destinationMetadata, isManagedPackage, onGenerationError, envName)).then(function (generatedRecipe) {
5516
5524
  onGenerate();
5517
5525
  if (deployment) {
5518
5526
  if (deployment.type === 'once') {
@@ -5747,7 +5755,7 @@ module.exports =
5747
5755
  function tryGetCredentials(tenantId, appId, credentialType, credsConfig, envName) {
5748
5756
  return function (dispatch, getState, api) {
5749
5757
  var isOauth = credsConfig && credsConfig.length === 1 && credsConfig[0] === 'Oauth';
5750
- if (!isOauth) {
5758
+ if (!isOauth && envName) {
5751
5759
  return dispatch(getCredentialForEnvironment(tenantId, appId, credentialType, envName));
5752
5760
  } else return Promise.resolve(null);
5753
5761
  };
@@ -5762,7 +5770,7 @@ module.exports =
5762
5770
  metadataApi = wiz.metadataApi;
5763
5771
 
5764
5772
  var isOauth = credentials && credentials[0] === 'Oauth';
5765
- if (savedEndpoint && savedEndpoint.length > 8 || isOauth) {
5773
+ if (envName && (isOauth || savedEndpoint && savedEndpoint.length > 8)) {
5766
5774
  var isReload = true;
5767
5775
  var environment = { name: envName };
5768
5776
  return dispatch(callGetMetadata(tenantId, appId, mode, type, metadataEndpoint, metadataApi, savedEndpoint, credentials, null, actualCreds, environment, isReload));
@@ -5838,8 +5846,8 @@ module.exports =
5838
5846
  type: types.SET_WIZARD_ENVIRONMENTS,
5839
5847
  data: data.map(function (e) {
5840
5848
  return {
5841
- environmentId: e.Id,
5842
- name: e.Name
5849
+ environmentId: e.id,
5850
+ name: e.name
5843
5851
  };
5844
5852
  })
5845
5853
  });
@@ -8290,9 +8298,12 @@ module.exports =
8290
8298
  if (this.finalDelta) {
8291
8299
  this.props.changeEntityOrder(this.props.resourceGroupIndex, i, i + this.finalDelta);
8292
8300
  }
8293
- this.setState({ yPositions: this.elementReorders.map(function () {
8301
+ this.setState({
8302
+ yPositions: this.elementReorders.map(function () {
8294
8303
  return 0;
8295
- }) });
8304
+ }),
8305
+ currentlyBeingDragged: null
8306
+ });
8296
8307
  this.props.unPick();
8297
8308
  e.stopPropagation();
8298
8309
  }
@@ -8317,7 +8328,8 @@ module.exports =
8317
8328
  overflowHidden = _props3.overflowHidden,
8318
8329
  showOverflow = _props3.showOverflow,
8319
8330
  step = _props3.step,
8320
- isReverse = _props3.isReverse;
8331
+ isReverse = _props3.isReverse,
8332
+ changeEntityLevel = _props3.changeEntityLevel;
8321
8333
  var parameterModalResourceIndex = this.state.parameterModalResourceIndex;
8322
8334
 
8323
8335
 
@@ -8346,37 +8358,6 @@ module.exports =
8346
8358
  })
8347
8359
  })*/
8348
8360
 
8349
- var primaryRscVals = null;
8350
- var primaryRscSectionLabels = null;
8351
-
8352
- if (group && group.resources && group.resources[0]) {
8353
- var primaryResourceSchema = group.resources[0].provider.toLowerCase() === step.destinationProvider.toLowerCase() ? destinationSchema : sourceSchema;
8354
- primaryRscVals = primaryResourceSchema && primaryResourceSchema.find(function (defaultRsc) {
8355
- return defaultRsc.name === group.resources[0].name;
8356
- }) && [primaryResourceSchema.find(function (defaultRsc) {
8357
- return defaultRsc.name === group.resources[0].name;
8358
- }).properties.filter(function (f) {
8359
- return !f.fake;
8360
- })];
8361
-
8362
- var primaryHasParameters = group.resources[0].parentRef && group.resources[0].parentRef.length > 0 && group.resources[0].parentRef.some(function (pr) {
8363
- return pr.foreignKeyFields && pr.foreignKeyFields.length > 0;
8364
- });
8365
-
8366
- primaryRscSectionLabels = [group.resources[0].name];
8367
-
8368
- if (primaryHasParameters) {
8369
- group.resources[0].parentRef.forEach(function (pr) {
8370
- var params = [];
8371
- primaryRscSectionLabels.push(pr.ref.split('/')[2]);
8372
- pr.foreignKeyFields.forEach(function (fkf) {
8373
- params.push({ label: fkf });
8374
- });
8375
- primaryRscVals.push(params);
8376
- });
8377
- }
8378
- }
8379
-
8380
8361
  return _react2.default.createElement(
8381
8362
  'div',
8382
8363
  { style: { position: 'relative' } },
@@ -8416,7 +8397,7 @@ module.exports =
8416
8397
  background: 'white', width: 720, minHeight: 245,
8417
8398
  overflow: overflowHidden ? 'hidden' : 'visible',
8418
8399
  border: '1px solid rgb(204, 205, 207)', position: 'relative',
8419
- height: groupResourcesLength * 58 + 84 + 78
8400
+ height: groupResourcesLength * 60 + 84 + 78
8420
8401
  } },
8421
8402
  _react2.default.createElement(
8422
8403
  'div',
@@ -8438,6 +8419,45 @@ module.exports =
8438
8419
  { style: { position: 'relative' } },
8439
8420
  group && group.resources && group.resources.map(function (rsc, i) {
8440
8421
 
8422
+ /* PARENT RESOURCE (to join against)*/
8423
+ var primaryResource = null;
8424
+ var primaryRscVals = null;
8425
+ var primaryRscSectionLabels = null;
8426
+
8427
+ if (rsc.parentNameAndProvider) {
8428
+ primaryResource = group.resources.find(function (gr) {
8429
+ return rsc.parentNameAndProvider.toLowerCase() === (gr.name + '_' + gr.provider).toLowerCase();
8430
+ });
8431
+
8432
+ var primaryResourceSchema = primaryResource.provider.toLowerCase() === step.destinationProvider.toLowerCase() ? destinationSchema : sourceSchema;
8433
+
8434
+ primaryRscVals = primaryResourceSchema && primaryResourceSchema.find(function (defaultRsc) {
8435
+ return defaultRsc.name === primaryResource.name;
8436
+ }) && [primaryResourceSchema.find(function (defaultRsc) {
8437
+ return defaultRsc.name === primaryResource.name;
8438
+ }).properties.filter(function (f) {
8439
+ return !f.fake;
8440
+ })];
8441
+
8442
+ var primaryHasParameters = primaryResource.parentRef && primaryResource.parentRef.length > 0 && primaryResource.parentRef.some(function (pr) {
8443
+ return pr.foreignKeyFields && pr.foreignKeyFields.length > 0;
8444
+ });
8445
+
8446
+ primaryRscSectionLabels = [primaryResource.name];
8447
+
8448
+ if (primaryHasParameters) {
8449
+ primaryResource.parentRef.forEach(function (pr) {
8450
+ var params = [];
8451
+ primaryRscSectionLabels.push(pr.ref.split('/')[2]);
8452
+ pr.foreignKeyFields.forEach(function (fkf) {
8453
+ params.push({ label: fkf });
8454
+ });
8455
+ primaryRscVals.push(params);
8456
+ });
8457
+ }
8458
+ }
8459
+
8460
+ /* THIS RESOURCE*/
8441
8461
  var isDestinationEntity = rsc.provider.toLowerCase() === step.destinationProvider.toLowerCase();
8442
8462
  var isSelected = selectedEntity.name === rsc.name && selectedEntity.isDestinationEntity === isDestinationEntity;
8443
8463
 
@@ -8445,6 +8465,10 @@ module.exports =
8445
8465
  return pr.foreignKeyFields && pr.foreignKeyFields.length > 0;
8446
8466
  });
8447
8467
 
8468
+ var hasChildren = group && group.resources && group.resources.find(function (r) {
8469
+ return r.primaryKeyResource === rsc.name;
8470
+ }) ? true : false;
8471
+
8448
8472
  var rscSchema = isDestinationEntity ? destinationSchema : sourceSchema;
8449
8473
  var joinRscVals = rscSchema && rscSchema.find(function (defaultRsc) {
8450
8474
  return defaultRsc.name === rsc.name;
@@ -8485,13 +8509,6 @@ module.exports =
8485
8509
  joinKeyLabel += rsc.joinKeyName;
8486
8510
  }
8487
8511
 
8488
- /*let isDependency = false
8489
- group.resources && group.resources.forEach(gr=>{
8490
- if(gr.parentRef && gr.parentRef.find(pr=>pr===rsc.name)){
8491
- isDependency=true
8492
- }
8493
- })*/
8494
-
8495
8512
  var rscName = rsc.name;
8496
8513
  if (isReverse) {
8497
8514
  if (rsc.provider.toLowerCase() === step.sourceProvider.toLowerCase()) {
@@ -8503,195 +8520,225 @@ module.exports =
8503
8520
  }
8504
8521
  }
8505
8522
 
8523
+ var canMoveLeft = false;
8524
+ var canMoveRight = false;
8525
+ if (i > 1) {
8526
+ var beforeResourceLevel = group.resources[i - 1].level;
8527
+ if (rsc.level > 1 && rsc.level <= beforeResourceLevel + 1) {
8528
+ canMoveLeft = true;
8529
+ }
8530
+ if (rsc.level <= beforeResourceLevel) {
8531
+ canMoveRight = true;
8532
+ }
8533
+ }
8534
+
8506
8535
  return _react2.default.createElement(
8507
8536
  _reactDraggable2.default,
8508
8537
  { axis: 'y', bounds: 'parent', key: i, handle: '.drag-handle',
8509
8538
  position: { x: 0, y: _this3.state.yPositions[i] },
8510
8539
  onStart: function onStart(e, v) {
8511
8540
  return _this3.handleDragStart(e, v, i);
8512
- }, onDrag: _this3.handleDrag, onStop: _this3.handleDragEnd },
8541
+ },
8542
+ onDrag: _this3.handleDrag, onStop: _this3.handleDragEnd,
8543
+ disabled: hasChildren },
8513
8544
  _react2.default.createElement(
8514
8545
  'div',
8515
- { className: 'schema-panel', style: { zIndex: _this3.state.zIndexes[i] }, onClick: function onClick() {
8516
- return _this3.raiseUp(i);
8517
- } },
8546
+ { style: { position: 'relative', zIndex: 5999 } },
8547
+ _react2.default.createElement(LevelArrows, { hasChildren: hasChildren,
8548
+ onChange: function onChange(c) {
8549
+ return changeEntityLevel(resourceGroupIndex, i, rsc.level + c);
8550
+ },
8551
+ canMoveRight: canMoveRight, canMoveLeft: canMoveLeft
8552
+ }),
8518
8553
  _react2.default.createElement(
8519
8554
  'div',
8520
- { className: 'schema-panel-header' },
8555
+ { className: 'schema-panel',
8556
+ style: { zIndex: _this3.state.zIndexes[i], marginLeft: rsc.level * 18 },
8557
+ onClick: function onClick() {
8558
+ return _this3.raiseUp(i);
8559
+ } },
8521
8560
  _react2.default.createElement(
8522
8561
  'div',
8523
- { style: { display: 'inline-block', verticalAlign: 'top', margin: '4px 4px 0px 0px', cursor: 'pointer' }, onClick: function onClick(e) {
8524
- return e.stopPropagation();
8525
- },
8526
- className: 'drag-handle' },
8562
+ { className: 'schema-panel-header', style: {
8563
+ background: 'rgb(50,' + (120 + rsc.level * 15) + ',' + (180 + rsc.level * 30) + ')'
8564
+ } },
8527
8565
  _react2.default.createElement(
8528
- 'svg',
8529
- { width: '24', height: '24', viewBox: '0 0 24 24' },
8530
- _react2.default.createElement('path', { fill: '#FFFFFF', d: 'M9,3H11V5H9V3M13,3H15V5H13V3M9,7H11V9H9V7M13,7H15V9H13V7M9,11H11V13H9V11M13,11H15V13H13V11M9,15H11V17H9V15M13,15H15V17H13V15M9,19H11V21H9V19M13,19H15V21H13V19Z' })
8531
- )
8532
- ),
8533
- _react2.default.createElement(
8534
- 'div',
8535
- { style: { padding: '7px 0px 0px 5px', fontSize: '14px',
8536
- display: 'inline-block' } },
8566
+ 'div',
8567
+ { style: { display: 'inline-block', verticalAlign: 'top', margin: '4px 4px 0px 0px', cursor: hasChildren ? 'auto' : 'pointer' },
8568
+ onClick: function onClick(e) {
8569
+ return e.stopPropagation();
8570
+ },
8571
+ className: 'drag-handle' },
8572
+ _react2.default.createElement(
8573
+ 'svg',
8574
+ { width: '24', height: '24', viewBox: '0 0 24 24',
8575
+ fill: hasChildren ? '#AAAAAA' : '#FFFFFF' },
8576
+ _react2.default.createElement('path', { d: 'M9,3H11V5H9V3M13,3H15V5H13V3M9,7H11V9H9V7M13,7H15V9H13V7M9,11H11V13H9V11M13,11H15V13H13V11M9,15H11V17H9V15M13,15H15V17H13V15M9,19H11V21H9V19M13,19H15V21H13V19Z' })
8577
+ )
8578
+ ),
8537
8579
  _react2.default.createElement(
8538
- 'span',
8539
- { style: { maxWidth: 260, overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', display: 'inline-block' } },
8540
- rscName
8580
+ 'div',
8581
+ { style: { padding: '7px 0px 0px 5px', fontSize: '14px',
8582
+ display: 'inline-block' } },
8583
+ _react2.default.createElement(
8584
+ 'span',
8585
+ { style: { maxWidth: 260, overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', display: 'inline-block' } },
8586
+ rscName
8587
+ ),
8588
+ hasParameters && _react2.default.createElement(
8589
+ 'div',
8590
+ { className: 'accordion-panel-parameters',
8591
+ onClick: function onClick() {
8592
+ return _this3.setState({
8593
+ parameterModalResourceIndex: i
8594
+ });
8595
+ } },
8596
+ _react2.default.createElement(
8597
+ 'svg',
8598
+ { fill: '#FFFFFF', height: '28', viewBox: '0 0 24 24', width: '28' },
8599
+ _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
8600
+ _react2.default.createElement('path', { d: 'M12 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm7-7H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-1.75 9c0 .23-.02.46-.05.68l1.48 1.16c.13.11.17.3.08.45l-1.4 2.42c-.09.15-.27.21-.43.15l-1.74-.7c-.36.28-.76.51-1.18.69l-.26 1.85c-.03.17-.18.3-.35.3h-2.8c-.17 0-.32-.13-.35-.29l-.26-1.85c-.43-.18-.82-.41-1.18-.69l-1.74.7c-.16.06-.34 0-.43-.15l-1.4-2.42c-.09-.15-.05-.34.08-.45l1.48-1.16c-.03-.23-.05-.46-.05-.69 0-.23.02-.46.05-.68l-1.48-1.16c-.13-.11-.17-.3-.08-.45l1.4-2.42c.09-.15.27-.21.43-.15l1.74.7c.36-.28.76-.51 1.18-.69l.26-1.85c.03-.17.18-.3.35-.3h2.8c.17 0 .32.13.35.29l.26 1.85c.43.18.82.41 1.18.69l1.74-.7c.16-.06.34 0 .43.15l1.4 2.42c.09.15.05.34-.08.45l-1.48 1.16c.03.23.05.46.05.69z' })
8601
+ )
8602
+ )
8541
8603
  ),
8542
- hasParameters && _react2.default.createElement(
8604
+ _react2.default.createElement(
8543
8605
  'div',
8544
- { className: 'accordion-panel-parameters',
8545
- onClick: function onClick() {
8546
- return _this3.setState({
8547
- parameterModalResourceIndex: i
8548
- });
8606
+ { className: 'accordion-panel-close',
8607
+ onClick: function onClick(e) {
8608
+ return didRemoveEntity(e, resourceGroupIndex, rsc.name, i);
8549
8609
  } },
8550
8610
  _react2.default.createElement(
8551
8611
  'svg',
8552
- { fill: '#FFFFFF', height: '28', viewBox: '0 0 24 24', width: '28' },
8553
- _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
8554
- _react2.default.createElement('path', { d: 'M12 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm7-7H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-1.75 9c0 .23-.02.46-.05.68l1.48 1.16c.13.11.17.3.08.45l-1.4 2.42c-.09.15-.27.21-.43.15l-1.74-.7c-.36.28-.76.51-1.18.69l-.26 1.85c-.03.17-.18.3-.35.3h-2.8c-.17 0-.32-.13-.35-.29l-.26-1.85c-.43-.18-.82-.41-1.18-.69l-1.74.7c-.16.06-.34 0-.43-.15l-1.4-2.42c-.09-.15-.05-.34.08-.45l1.48-1.16c-.03-.23-.05-.46-.05-.69 0-.23.02-.46.05-.68l-1.48-1.16c-.13-.11-.17-.3-.08-.45l1.4-2.42c.09-.15.27-.21.43-.15l1.74.7c.36-.28.76-.51 1.18-.69l.26-1.85c.03-.17.18-.3.35-.3h2.8c.17 0 .32.13.35.29l.26 1.85c.43.18.82.41 1.18.69l1.74-.7c.16-.06.34 0 .43.15l1.4 2.42c.09.15.05.34-.08.45l-1.48 1.16c.03.23.05.46.05.69z' })
8612
+ { style: { width: 18, height: 18 }, viewBox: '0 0 60 60' },
8613
+ _react2.default.createElement('path', { style: { strokeWidth: 5, strokeLinecap: 'round' },
8614
+ d: 'M 15.674663,15.572746 L 44.587629,44.485711 M 45.118838,15.420972 L 15.522889,45.016920' })
8555
8615
  )
8556
- )
8557
- ),
8558
- _react2.default.createElement(
8559
- 'div',
8560
- { className: 'accordion-panel-close',
8561
- onClick: function onClick(e) {
8562
- return didRemoveEntity(e, resourceGroupIndex, rsc.name, i);
8563
- } },
8616
+ ),
8564
8617
  _react2.default.createElement(
8565
- 'svg',
8566
- { style: { width: 18, height: 18 }, viewBox: '0 0 60 60' },
8567
- _react2.default.createElement('path', { style: { strokeWidth: 5, strokeLinecap: 'round' },
8568
- d: 'M 15.674663,15.572746 L 44.587629,44.485711 M 45.118838,15.420972 L 15.522889,45.016920' })
8618
+ 'div',
8619
+ { style: { verticalAlign: 'top', float: 'right', marginRight: 8 } },
8620
+ i !== 0 ? _react2.default.createElement(
8621
+ Button,
8622
+ { type: 'brand', icon: isSelected ? 'chevronup' : 'chevrondown',
8623
+ iconAlign: 'right', className: rsc.joinKeyName && rsc.primaryKeyName ? 'join-ok' : '',
8624
+ onClick: function onClick() {
8625
+ _this3.props.pickEntity({
8626
+ name: rsc.name,
8627
+ isDestinationEntity: rsc.provider.toLowerCase() === step.destinationProvider.toLowerCase()
8628
+ });
8629
+ } },
8630
+ joinKeyLabel && primaryKeyLabel ? primaryKeyLabel + ' = ' + joinKeyLabel : 'Configure Join'
8631
+ ) : null
8569
8632
  )
8570
8633
  ),
8571
8634
  _react2.default.createElement(
8572
- 'div',
8573
- { style: { verticalAlign: 'top', float: 'right', marginRight: 8 } },
8574
- i !== 0 ? _react2.default.createElement(
8575
- Button,
8576
- { type: 'brand', icon: isSelected ? 'chevronup' : 'chevrondown',
8577
- iconAlign: 'right', className: rsc.joinKeyName && rsc.primaryKeyName ? 'join-ok' : '',
8578
- onClick: function onClick() {
8579
- _this3.props.pickEntity({
8580
- name: rsc.name,
8581
- isDestinationEntity: rsc.provider.toLowerCase() === step.destinationProvider.toLowerCase()
8582
- });
8583
- } },
8584
- joinKeyLabel && primaryKeyLabel ? primaryKeyLabel + ' = ' + joinKeyLabel : 'Configure Join'
8585
- ) : null
8586
- )
8587
- ),
8588
- _react2.default.createElement(
8589
- _CSSTransitionGroup2.default,
8590
- { transitionName: 'panel-collapse', transitionEnterTimeout: 250, transitionLeaveTimeout: 250 },
8591
- isSelected ? _react2.default.createElement(
8592
- 'div',
8593
- { className: 'schema-accordion-collapse' },
8594
- _react2.default.createElement(
8635
+ _CSSTransitionGroup2.default,
8636
+ { transitionName: 'panel-collapse', transitionEnterTimeout: 250, transitionLeaveTimeout: 250 },
8637
+ isSelected ? _react2.default.createElement(
8595
8638
  'div',
8596
- { style: { display: 'inline-block', width: '33%', marginTop: 6, verticalAlign: 'top', position: 'relative' } },
8639
+ { className: 'schema-accordion-collapse' },
8597
8640
  _react2.default.createElement(
8598
8641
  'div',
8599
- { className: 'labelz', style: { marginBottom: 6 } },
8600
- 'Primary Object Join Key'
8601
- ),
8602
- _react2.default.createElement(
8603
- Tooltip,
8604
- { nubbin: 'left-top', popStyle: { width: 180, left: -5 },
8605
- wrapStyle: { left: 148, top: 2, zIndex: 6003 } },
8642
+ { style: { display: 'inline-block', width: '33%', marginTop: 6, verticalAlign: 'top', position: 'relative' } },
8606
8643
  _react2.default.createElement(
8607
- 'p',
8608
- null,
8609
- 'Choose a Join Key for the Primary object in this group (',
8610
- group.resources[0].name,
8611
- ')'
8612
- )
8644
+ 'div',
8645
+ { className: 'labelz', style: { marginBottom: 6 } },
8646
+ 'Primary Object Join Key'
8647
+ ),
8648
+ _react2.default.createElement(
8649
+ Tooltip,
8650
+ { nubbin: 'left-top', popStyle: { width: 180, left: -5 },
8651
+ wrapStyle: { left: 148, top: 2, zIndex: 6003 } },
8652
+ _react2.default.createElement(
8653
+ 'p',
8654
+ null,
8655
+ 'Choose a Join Key for the Primary object in this group (',
8656
+ primaryResource && primaryResource.name,
8657
+ ')'
8658
+ )
8659
+ ),
8660
+ _react2.default.createElement(_selectWrapper2.default, { label: primaryKeyLabel || 'Primary Join Key',
8661
+ onSelect: function onSelect(v, idx, field) {
8662
+ selectPrimaryKey(v, field, resourceGroupIndex, i);
8663
+ },
8664
+ onClick: showOverflow,
8665
+ type: 'neutral', inputs: inputs,
8666
+ values: primaryRscVals,
8667
+ sectionLabels: primaryRscSectionLabels,
8668
+ fieldPropLabel: 'label',
8669
+ selectedValues: [{
8670
+ label: rsc.primaryKeyName,
8671
+ parents: rsc.primaryKeyParents
8672
+ }],
8673
+ sectionLabelSuffix: 'Fields'
8674
+ })
8613
8675
  ),
8614
- _react2.default.createElement(_selectWrapper2.default, { label: primaryKeyLabel || 'Primary Join Key',
8615
- onSelect: function onSelect(v, idx, field) {
8616
- selectPrimaryKey(v, field, resourceGroupIndex, i);
8617
- },
8618
- onClick: showOverflow,
8619
- type: 'neutral', inputs: inputs,
8620
- values: primaryRscVals,
8621
- sectionLabels: primaryRscSectionLabels,
8622
- fieldPropLabel: 'label',
8623
- selectedValues: [{
8624
- label: rsc.primaryKeyName,
8625
- parents: rsc.primaryKeyParents
8626
- }],
8627
- sectionLabelSuffix: 'Fields'
8628
- })
8629
- ),
8630
- _react2.default.createElement(
8631
- 'div',
8632
- { style: { display: 'inline-block', width: '33%', marginTop: 6, verticalAlign: 'top', position: 'relative' } },
8633
8676
  _react2.default.createElement(
8634
8677
  'div',
8635
- { className: 'labelz', style: { marginBottom: 6 } },
8636
- 'Join Key'
8637
- ),
8638
- _react2.default.createElement(
8639
- Tooltip,
8640
- { nubbin: 'left-top', popStyle: { width: 170, left: -5 },
8641
- wrapStyle: { left: 50, top: 2, zIndex: 6002 } },
8678
+ { style: { display: 'inline-block', width: '33%', marginTop: 6, verticalAlign: 'top', position: 'relative' } },
8642
8679
  _react2.default.createElement(
8643
- 'p',
8644
- null,
8645
- 'Choose a Join Key for this object (',
8646
- rsc.name,
8647
- '), whose value should match the Primary Object Join Key.'
8648
- )
8680
+ 'div',
8681
+ { className: 'labelz', style: { marginBottom: 6 } },
8682
+ 'Join Key'
8683
+ ),
8684
+ _react2.default.createElement(
8685
+ Tooltip,
8686
+ { nubbin: 'left-top', popStyle: { width: 170, left: -5 },
8687
+ wrapStyle: { left: 50, top: 2, zIndex: 6002 } },
8688
+ _react2.default.createElement(
8689
+ 'p',
8690
+ null,
8691
+ 'Choose a Join Key for this object (',
8692
+ rsc.name,
8693
+ '), whose value should match the Primary Object Join Key.'
8694
+ )
8695
+ ),
8696
+ _react2.default.createElement(_selectWrapper2.default, { label: joinKeyLabel || 'Join Key',
8697
+ onSelect: function onSelect(v, idx, field) {
8698
+ selectJoinKey(v, field, resourceGroupIndex, i);
8699
+ },
8700
+ onClick: showOverflow,
8701
+ type: 'neutral', inputs: inputs,
8702
+ values: joinRscVals,
8703
+ sectionLabels: joinRscSectionLabels,
8704
+ fieldPropLabel: 'label',
8705
+ selectedValues: [{
8706
+ label: rsc.joinKeyName,
8707
+ parents: rsc.joinKeyParents
8708
+ }],
8709
+ sectionLabelSuffix: 'Fields'
8710
+ })
8649
8711
  ),
8650
- _react2.default.createElement(_selectWrapper2.default, { label: joinKeyLabel || 'Join Key',
8651
- onSelect: function onSelect(v, idx, field) {
8652
- selectJoinKey(v, field, resourceGroupIndex, i);
8653
- },
8654
- onClick: showOverflow,
8655
- type: 'neutral', inputs: inputs,
8656
- values: joinRscVals,
8657
- sectionLabels: joinRscSectionLabels,
8658
- fieldPropLabel: 'label',
8659
- selectedValues: [{
8660
- label: rsc.joinKeyName,
8661
- parents: rsc.joinKeyParents
8662
- }],
8663
- sectionLabelSuffix: 'Fields'
8664
- })
8665
- ),
8666
- _react2.default.createElement(
8667
- 'div',
8668
- { style: { display: 'inline-block', width: '33%', marginTop: 6, position: 'relative', verticalAlign: 'top' } },
8669
8712
  _react2.default.createElement(
8670
- Tooltip,
8671
- { nubbin: 'right-top', popStyle: { width: 300, right: 46 },
8672
- wrapStyle: { left: 60, top: 2, zIndex: 6003 } },
8713
+ 'div',
8714
+ { style: { display: 'inline-block', width: '33%', marginTop: 6, position: 'relative', verticalAlign: 'top' } },
8673
8715
  _react2.default.createElement(
8674
- 'p',
8675
- null,
8676
- 'All: ',
8677
- rsc.name + ' records may or may not have a related ' + group.resources[0].name + ' record'
8716
+ Tooltip,
8717
+ { nubbin: 'right-top', popStyle: { width: 300, right: 46 },
8718
+ wrapStyle: { left: 60, top: 2, zIndex: 6003 } },
8719
+ _react2.default.createElement(
8720
+ 'p',
8721
+ null,
8722
+ 'All: ',
8723
+ rsc.name + ' records may or may not have a related ' + (primaryResource && primaryResource.name) + ' record'
8724
+ ),
8725
+ _react2.default.createElement(
8726
+ 'p',
8727
+ { style: { marginTop: 6 } },
8728
+ 'Matching: ',
8729
+ 'Each ' + rsc.name + ' must have at least one related ' + (primaryResource && primaryResource.name) + ' record'
8730
+ )
8678
8731
  ),
8679
- _react2.default.createElement(
8680
- 'p',
8681
- { style: { marginTop: 6 } },
8682
- 'Matching: ',
8683
- 'Each ' + rsc.name + ' must have at least one related ' + group.resources[0].name + ' record'
8684
- )
8685
- ),
8686
- _react2.default.createElement(_reduxForm.Field, { name: 'resourceGroups.' + resourceGroupIndex + '.resources.' + i + '.joinType',
8687
- component: inputs.rfRadioGroup, label: 'Join Type',
8688
- onClickOption: function onClickOption() {}, options: {
8689
- 'LEFT JOIN': 'All records',
8690
- 'INNER JOIN': 'Matching records'
8691
- } }),
8692
- _react2.default.createElement(_joinVenn2.default, { joinType: rsc.joinType })
8693
- )
8694
- ) : null
8732
+ _react2.default.createElement(_reduxForm.Field, { name: 'resourceGroups.' + resourceGroupIndex + '.resources.' + i + '.joinType',
8733
+ component: inputs.rfRadioGroup, label: 'Join Type',
8734
+ onClickOption: function onClickOption() {}, options: {
8735
+ 'LEFT JOIN': 'All records',
8736
+ 'INNER JOIN': 'Matching records'
8737
+ } }),
8738
+ _react2.default.createElement(_joinVenn2.default, { joinType: rsc.joinType })
8739
+ )
8740
+ ) : null
8741
+ )
8695
8742
  )
8696
8743
  )
8697
8744
  );
@@ -8699,7 +8746,7 @@ module.exports =
8699
8746
  ),
8700
8747
  resourceGroups && resourceGroups.length > 0 ? _react2.default.createElement(
8701
8748
  'div',
8702
- { style: { display: 'inline-block', marginLeft: 11 } },
8749
+ { style: { display: 'inline-block', marginLeft: 17 } },
8703
8750
  _react2.default.createElement(_selectWrapper2.default, { label: 'Add Data Source', style: { height: 40 }, onClick: showOverflow,
8704
8751
  onSelect: function onSelect(v, i, entity) {
8705
8752
  return addDefaultEntity(v, i, entity, resourceGroupIndex);
@@ -8789,6 +8836,41 @@ module.exports =
8789
8836
  }(_react2.default.Component);
8790
8837
 
8791
8838
  exports.default = SchemaAccordion;
8839
+
8840
+
8841
+ var LevelArrows = function LevelArrows(_ref2) {
8842
+ var onChange = _ref2.onChange,
8843
+ canMoveLeft = _ref2.canMoveLeft,
8844
+ canMoveRight = _ref2.canMoveRight,
8845
+ hasChildren = _ref2.hasChildren;
8846
+ return _react2.default.createElement(
8847
+ 'div',
8848
+ {
8849
+ style: { position: 'absolute', zIndex: 7, height: 60, left: -5, paddingTop: 14 } },
8850
+ _react2.default.createElement(
8851
+ 'div',
8852
+ { className: 'schema-panel-resource-arrow' },
8853
+ canMoveLeft && !hasChildren && _react2.default.createElement(
8854
+ 'svg',
8855
+ { height: '18', viewBox: '0 0 24 24', width: '18',
8856
+ onClick: function onClick() {
8857
+ return onChange(-1);
8858
+ } },
8859
+ _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
8860
+ _react2.default.createElement('path', { d: 'M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z' })
8861
+ ),
8862
+ canMoveRight && !hasChildren && _react2.default.createElement(
8863
+ 'svg',
8864
+ { height: '18', viewBox: '0 0 24 24', width: '18',
8865
+ onClick: function onClick() {
8866
+ return onChange(1);
8867
+ } },
8868
+ _react2.default.createElement('path', { d: 'M0 0h24v24H0z', fill: 'none' }),
8869
+ _react2.default.createElement('path', { d: 'M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z' })
8870
+ )
8871
+ )
8872
+ );
8873
+ };
8792
8874
 
8793
8875
  /***/ },
8794
8876
  /* 110 */
@@ -10119,6 +10201,7 @@ module.exports =
10119
10201
  Button,
10120
10202
  {
10121
10203
  type: 'brand',
10204
+ size: 'small',
10122
10205
  onClick: function onClick() {
10123
10206
  return _this5.createEnvironment(newEnvName);
10124
10207
  },
@@ -12013,11 +12096,12 @@ module.exports =
12013
12096
  _this.removeEntity = _this.removeEntity.bind(_this);
12014
12097
  _this.addGroup = _this.addGroup.bind(_this);
12015
12098
  _this.removeGroup = _this.removeGroup.bind(_this);
12099
+ _this.changeEntityLevel = _this.changeEntityLevel.bind(_this);
12016
12100
  _this.changeEntityOrder = _this.changeEntityOrder.bind(_this);
12017
12101
  _this.changeGroupOrder = _this.changeGroupOrder.bind(_this);
12018
12102
  _this.openConnectionModal = _this.openConnectionModal.bind(_this);
12019
12103
  _this.hideModal = _this.hideModal.bind(_this);
12020
- _this.refreshAllPrimaryKeyNames = _this.refreshAllPrimaryKeyNames.bind(_this);
12104
+ _this.refreshAllPrimaryKeys = _this.refreshAllPrimaryKeys.bind(_this);
12021
12105
  _this.selectPrimaryKey = _this.selectPrimaryKey.bind(_this);
12022
12106
  _this.selectJoinKey = _this.selectJoinKey.bind(_this);
12023
12107
  return _this;
@@ -12123,9 +12207,11 @@ module.exports =
12123
12207
  });
12124
12208
  if (entityExists) return;
12125
12209
 
12210
+ var level = 1;
12126
12211
  if (!group.resources || group.resources && group.resources.length === 0) {
12127
12212
  group.resources = [];
12128
12213
  this.openConnectionModal(group, groupIndex);
12214
+ level = 0;
12129
12215
  }
12130
12216
  // ADD PARENTS AS WELL ?
12131
12217
  /*if(parentRef && parentRef.length>0){
@@ -12144,10 +12230,11 @@ module.exports =
12144
12230
  name: v,
12145
12231
  __name: entity.type,
12146
12232
  provider: entity.section,
12147
- joinType: 'LEFT JOIN'
12233
+ joinType: 'LEFT JOIN',
12234
+ level: level
12148
12235
  }, entity.parentRef && { parentRef: entity.parentRef }, entity.recordTypeId && { recordTypeId: entity.rtid }));
12149
12236
  change('resourceGroups', resourceGroups);
12150
- this.forceUpdate();
12237
+ this.assignAllParents(groupIndex);
12151
12238
  }
12152
12239
  }, {
12153
12240
  key: 'newEntityKeyPress',
@@ -12190,36 +12277,92 @@ module.exports =
12190
12277
  group.mappings = mapz;
12191
12278
  group.resources.splice(rscIndex, 1);
12192
12279
  change('resourceGroups', resourceGroups);
12193
- this.forceUpdate();
12280
+ this.assignAllParents(groupIndex);
12194
12281
  }
12195
12282
  }, {
12196
- key: 'changeEntityOrder',
12197
- value: function changeEntityOrder(groupIndex, iStart, iEnd) {
12283
+ key: 'changeEntityLevel',
12284
+ value: function changeEntityLevel(groupIndex, entityIndex, newLevel) {
12198
12285
  var _props7 = this.props,
12199
12286
  change = _props7.change,
12200
12287
  formValues = _props7.formValues;
12201
12288
 
12202
12289
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12203
12290
  var resources = resourceGroups[groupIndex].resources;
12204
- resources.splice(iEnd, 0, resources.splice(iStart, 1)[0]);
12205
- if (iEnd === 0 || iStart === 0) {
12206
- this.refreshAllPrimaryKeyNames(groupIndex);
12207
- }
12291
+ var rsc = resources[entityIndex];
12292
+ rsc.level = newLevel;
12208
12293
  change('resourceGroups', resourceGroups);
12209
- this.forceUpdate();
12294
+ this.assignAllParents(groupIndex);
12210
12295
  }
12211
12296
  }, {
12212
- key: 'refreshAllPrimaryKeyNames',
12213
- value: function refreshAllPrimaryKeyNames(groupIndex) {
12297
+ key: 'changeEntityOrder',
12298
+ value: function changeEntityOrder(groupIndex, iStart, iEnd) {
12214
12299
  var _props8 = this.props,
12215
12300
  change = _props8.change,
12216
12301
  formValues = _props8.formValues;
12217
12302
 
12303
+ var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12304
+ var resources = resourceGroups[groupIndex].resources;
12305
+
12306
+ resources.splice(iEnd, 0, resources.splice(iStart, 1)[0]);
12307
+ if (iEnd === 0) {
12308
+ resources[0].level = 0;
12309
+ resources[0].primaryKeyResource = null;
12310
+ resources[0].parentNameAndProvider = null;
12311
+ resources[0].primaryKeyName = null;
12312
+ resources[0].primaryKeyParents = null;
12313
+ resources[1].level = 1;
12314
+ }
12315
+ if (iStart === 0) {
12316
+ // right now cant drag if 0
12317
+ }
12318
+ change('resourceGroups', resourceGroups);
12319
+ this.assignAllParents(groupIndex);
12320
+ }
12321
+ }, {
12322
+ key: 'assignAllParents',
12323
+ value: function assignAllParents(groupIndex) {
12324
+ var _props9 = this.props,
12325
+ change = _props9.change,
12326
+ formValues = _props9.formValues;
12327
+
12328
+ var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12329
+ var resources = resourceGroups[groupIndex].resources;
12330
+
12331
+ resources.forEach(function (eachR, eachI) {
12332
+ var newParent = '';
12333
+ var newParentProvider = '';
12334
+ for (var i = eachI - 1; i >= 0; i--) {
12335
+ if (resources[i].level < eachR.level) {
12336
+ newParent = resources[i].name;
12337
+ newParentProvider = resources[i].provider;
12338
+ eachR.level = resources[i].level + 1;
12339
+ break;
12340
+ }
12341
+ }
12342
+ if (newParent && newParentProvider && (newParent + '_' + newParentProvider).toLowerCase() !== (eachR.parentNameAndProvider && eachR.parentNameAndProvider.toLowerCase())) {
12343
+ eachR.primaryKeyResource = newParent;
12344
+ eachR.parentNameAndProvider = newParent + '_' + newParentProvider;
12345
+ eachR.primaryKeyName = null;
12346
+ eachR.primaryKeyParents = null;
12347
+ }
12348
+ });
12349
+ change('resourceGroups', resourceGroups);
12350
+ this.forceUpdate();
12351
+ }
12352
+ }, {
12353
+ key: 'refreshAllPrimaryKeys',
12354
+ value: function refreshAllPrimaryKeys(groupIndex) {
12355
+ var _props10 = this.props,
12356
+ change = _props10.change,
12357
+ formValues = _props10.formValues;
12358
+
12218
12359
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12219
12360
  var group = resourceGroups[groupIndex];
12220
12361
  group.sourceKey = null;
12221
- group.resources.forEach(function (g) {
12222
- g.primaryKeyName = null;
12362
+ group.resources.forEach(function (r) {
12363
+ r.primaryKeyName = null;
12364
+ r.primaryKeyResource = null;
12365
+ r.primaryKeyParents = null;
12223
12366
  });
12224
12367
  change('resourceGroups', resourceGroups);
12225
12368
  //this.openConnectionModal(group, groupIndex)
@@ -12227,9 +12370,9 @@ module.exports =
12227
12370
  }, {
12228
12371
  key: 'changeGroupOrder',
12229
12372
  value: function changeGroupOrder(iStart, iEnd) {
12230
- var _props9 = this.props,
12231
- change = _props9.change,
12232
- formValues = _props9.formValues;
12373
+ var _props11 = this.props,
12374
+ change = _props11.change,
12375
+ formValues = _props11.formValues;
12233
12376
 
12234
12377
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12235
12378
  resourceGroups.splice(iEnd, 0, resourceGroups.splice(iStart, 1)[0]);
@@ -12238,9 +12381,9 @@ module.exports =
12238
12381
  }, {
12239
12382
  key: 'selectPrimaryKey',
12240
12383
  value: function selectPrimaryKey(v, field, rgi, i) {
12241
- var _props10 = this.props,
12242
- change = _props10.change,
12243
- formValues = _props10.formValues;
12384
+ var _props12 = this.props,
12385
+ change = _props12.change,
12386
+ formValues = _props12.formValues;
12244
12387
 
12245
12388
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12246
12389
  var rsc = resourceGroups[rgi].resources[i];
@@ -12254,9 +12397,9 @@ module.exports =
12254
12397
  }, {
12255
12398
  key: 'selectJoinKey',
12256
12399
  value: function selectJoinKey(v, field, rgi, i) {
12257
- var _props11 = this.props,
12258
- change = _props11.change,
12259
- formValues = _props11.formValues;
12400
+ var _props13 = this.props,
12401
+ change = _props13.change,
12402
+ formValues = _props13.formValues;
12260
12403
 
12261
12404
  var resourceGroups = [].concat(_toConsumableArray(formValues['resourceGroups']));
12262
12405
  var rsc = resourceGroups[rgi].resources[i];
@@ -12272,15 +12415,15 @@ module.exports =
12272
12415
  value: function render() {
12273
12416
  var _this2 = this;
12274
12417
 
12275
- var _props12 = this.props,
12276
- inputs = _props12.inputs,
12277
- handleSubmit = _props12.handleSubmit,
12278
- nav = _props12.nav,
12279
- formValues = _props12.formValues,
12280
- step = _props12.step,
12281
- reset = _props12.reset,
12282
- wizard = _props12.wizard,
12283
- change = _props12.change;
12418
+ var _props14 = this.props,
12419
+ inputs = _props14.inputs,
12420
+ handleSubmit = _props14.handleSubmit,
12421
+ nav = _props14.nav,
12422
+ formValues = _props14.formValues,
12423
+ step = _props14.step,
12424
+ reset = _props14.reset,
12425
+ wizard = _props14.wizard,
12426
+ change = _props14.change;
12284
12427
 
12285
12428
  if (!formValues['resourceGroups']) return _react2.default.createElement('div', null);
12286
12429
 
@@ -12345,7 +12488,8 @@ module.exports =
12345
12488
  changeEntityOrder: this.changeEntityOrder, step: step,
12346
12489
  destinationSchema: destinationSchema, isReverse: isReverse,
12347
12490
  selectPrimaryKey: this.selectPrimaryKey,
12348
- selectJoinKey: this.selectJoinKey, change: change }),
12491
+ selectJoinKey: this.selectJoinKey, change: change,
12492
+ changeEntityLevel: this.changeEntityLevel }),
12349
12493
  _react2.default.createElement(_bundleTable2.default, { openConnectionModal: this.openConnectionModal, mode: formValues.direction })
12350
12494
  ),
12351
12495
  _react2.default.createElement('br', null)