@genexus/genexus-ide-ui 1.1.6 → 1.1.8

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.
Files changed (118) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js +61 -20
  3. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js.map +1 -1
  4. package/dist/cjs/gx-ide-design-import.cjs.entry.js +1 -1
  5. package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-new-version.cjs.entry.js +58 -14
  7. package/dist/cjs/gx-ide-new-version.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +16 -9
  9. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +2 -2
  11. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +270 -0
  13. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js.map +1 -0
  14. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/collection/collection-manifest.json +1 -0
  18. package/dist/collection/components/deployment-tool/deployment-tool.js +78 -20
  19. package/dist/collection/components/deployment-tool/deployment-tool.js.map +1 -1
  20. package/dist/collection/components/design-import/design-import.js +1 -1
  21. package/dist/collection/components/design-import/design-import.js.map +1 -1
  22. package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.en.json +3 -1
  23. package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.ja.json +3 -1
  24. package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.zh.json +3 -1
  25. package/dist/collection/components/new-version/new-version.css +4 -0
  26. package/dist/collection/components/new-version/new-version.js +124 -18
  27. package/dist/collection/components/new-version/new-version.js.map +1 -1
  28. package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +2 -1
  29. package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +1 -0
  30. package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +1 -0
  31. package/dist/collection/components/select-kb-items/select-kb-items.css +22 -27
  32. package/dist/collection/components/select-kb-items/select-kb-items.js +34 -8
  33. package/dist/collection/components/select-kb-items/select-kb-items.js.map +1 -1
  34. package/dist/collection/components/team-dev/commit/commit.js +2 -2
  35. package/dist/collection/components/team-dev/commit/commit.js.map +1 -1
  36. package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.en.json +42 -0
  37. package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.ja.json +42 -0
  38. package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.zh.json +42 -0
  39. package/dist/collection/components/team-dev/history/helpers.js +22 -0
  40. package/dist/collection/components/team-dev/history/helpers.js.map +1 -0
  41. package/dist/collection/components/team-dev/history/history.css +124 -0
  42. package/dist/collection/components/team-dev/history/history.js +448 -0
  43. package/dist/collection/components/team-dev/history/history.js.map +1 -0
  44. package/dist/collection/components/team-dev/update/update.js +1 -1
  45. package/dist/collection/components/team-dev/update/update.js.map +1 -1
  46. package/dist/collection/testing/locale.e2e.js +1 -0
  47. package/dist/collection/testing/locale.e2e.js.map +1 -1
  48. package/dist/components/gx-ide-deployment-tool.js +62 -20
  49. package/dist/components/gx-ide-deployment-tool.js.map +1 -1
  50. package/dist/components/gx-ide-design-import.js +1 -1
  51. package/dist/components/gx-ide-design-import.js.map +1 -1
  52. package/dist/components/gx-ide-new-version.js +65 -15
  53. package/dist/components/gx-ide-new-version.js.map +1 -1
  54. package/dist/components/gx-ide-select-kb-items.js +1 -507
  55. package/dist/components/gx-ide-select-kb-items.js.map +1 -1
  56. package/dist/components/gx-ide-team-dev-commit.js +2 -2
  57. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  58. package/dist/components/gx-ide-team-dev-history.d.ts +11 -0
  59. package/dist/components/gx-ide-team-dev-history.js +322 -0
  60. package/dist/components/gx-ide-team-dev-history.js.map +1 -0
  61. package/dist/components/gx-ide-team-dev-update.js +1 -1
  62. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  63. package/dist/components/select-kb-items.js +520 -0
  64. package/dist/components/select-kb-items.js.map +1 -0
  65. package/dist/esm/genexus-ide-ui.js +1 -1
  66. package/dist/esm/gx-ide-deployment-tool.entry.js +61 -20
  67. package/dist/esm/gx-ide-deployment-tool.entry.js.map +1 -1
  68. package/dist/esm/gx-ide-design-import.entry.js +1 -1
  69. package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
  70. package/dist/esm/gx-ide-new-version.entry.js +58 -14
  71. package/dist/esm/gx-ide-new-version.entry.js.map +1 -1
  72. package/dist/esm/gx-ide-select-kb-items.entry.js +16 -9
  73. package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
  74. package/dist/esm/gx-ide-team-dev-commit.entry.js +2 -2
  75. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  76. package/dist/esm/gx-ide-team-dev-history.entry.js +266 -0
  77. package/dist/esm/gx-ide-team-dev-history.entry.js.map +1 -0
  78. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  79. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  80. package/dist/esm/loader.js +1 -1
  81. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  82. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  83. package/dist/genexus-ide-ui/gx-ide-assets/new-version/langs/new-version.lang.en.json +3 -1
  84. package/dist/genexus-ide-ui/gx-ide-assets/new-version/langs/new-version.lang.ja.json +3 -1
  85. package/dist/genexus-ide-ui/gx-ide-assets/new-version/langs/new-version.lang.zh.json +3 -1
  86. package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +2 -1
  87. package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +1 -0
  88. package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +1 -0
  89. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.en.json +42 -0
  90. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.ja.json +42 -0
  91. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.zh.json +42 -0
  92. package/dist/genexus-ide-ui/{p-3085add2.entry.js → p-03dbccde.entry.js} +193 -160
  93. package/dist/genexus-ide-ui/p-03dbccde.entry.js.map +1 -0
  94. package/dist/genexus-ide-ui/{p-48062d23.entry.js → p-0acf517c.entry.js} +2 -2
  95. package/dist/genexus-ide-ui/{p-48062d23.entry.js.map → p-0acf517c.entry.js.map} +1 -1
  96. package/dist/genexus-ide-ui/{p-d2107cb2.entry.js → p-34fd4875.entry.js} +3 -18
  97. package/dist/genexus-ide-ui/p-34fd4875.entry.js.map +1 -0
  98. package/dist/genexus-ide-ui/p-74715731.entry.js +541 -0
  99. package/dist/genexus-ide-ui/p-74715731.entry.js.map +1 -0
  100. package/dist/genexus-ide-ui/{p-036d005d.entry.js → p-75a5c51f.entry.js} +2 -2
  101. package/dist/genexus-ide-ui/p-75a5c51f.entry.js.map +1 -0
  102. package/dist/genexus-ide-ui/p-80c1ddc3.entry.js +218 -0
  103. package/dist/genexus-ide-ui/p-80c1ddc3.entry.js.map +1 -0
  104. package/dist/genexus-ide-ui/{p-9fa1200f.entry.js → p-a8d0b62e.entry.js} +139 -125
  105. package/dist/genexus-ide-ui/p-a8d0b62e.entry.js.map +1 -0
  106. package/dist/types/components/deployment-tool/deployment-tool.d.ts +5 -0
  107. package/dist/types/components/new-version/new-version.d.ts +27 -1
  108. package/dist/types/components/select-kb-items/select-kb-items.d.ts +8 -0
  109. package/dist/types/components/team-dev/history/helpers.d.ts +7 -0
  110. package/dist/types/components/team-dev/history/history.d.ts +109 -0
  111. package/dist/types/components.d.ts +149 -18
  112. package/package.json +1 -1
  113. package/dist/genexus-ide-ui/p-036d005d.entry.js.map +0 -1
  114. package/dist/genexus-ide-ui/p-3085add2.entry.js.map +0 -1
  115. package/dist/genexus-ide-ui/p-9fa1200f.entry.js.map +0 -1
  116. package/dist/genexus-ide-ui/p-c91af626.entry.js +0 -149
  117. package/dist/genexus-ide-ui/p-c91af626.entry.js.map +0 -1
  118. package/dist/genexus-ide-ui/p-d2107cb2.entry.js.map +0 -1
@@ -64,7 +64,7 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
64
64
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
65
65
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
66
66
  };
67
- var _GxIdeDeploymentTool_instances, _GxIdeDeploymentTool_componentLocale, _GxIdeDeploymentTool_renderedFirstTime, _GxIdeDeploymentTool_flattenedObjectTypeData, _GxIdeDeploymentTool_currentDeploymentUnitId, _GxIdeDeploymentTool_onlyPackageCheckboxEl, _GxIdeDeploymentTool_targetTypesEl, _GxIdeDeploymentTool_applicationServerEl, _GxIdeDeploymentTool_generatorEl, _GxIdeDeploymentTool_deploymentUnitsEl, _GxIdeDeploymentTool_displayNameEl, _GxIdeDeploymentTool_evaluateObjects, _GxIdeDeploymentTool_handleGetDeploymentUnitObjectsCallback, _GxIdeDeploymentTool_loadDeploymentUnits, _GxIdeDeploymentTool_handleCreateDeploymentUnit, _GxIdeDeploymentTool_optionsCallbackHandler, _GxIdeDeploymentTool_addNewTypesToModel, _GxIdeDeploymentTool_addObjectsCallbackHandler, _GxIdeDeploymentTool_deployCallbackHandler, _GxIdeDeploymentTool_handleTargetTypesChange, _GxIdeDeploymentTool_flattenObjectTypes, _GxIdeDeploymentTool_objectsTreeCheckedItemsChangedHandler, _GxIdeDeploymentTool_evaluateContentToDisplay, _GxIdeDeploymentTool_getComboModel, _GxIdeDeploymentTool_renderComboSelector, _GxIdeDeploymentTool_renderHeader, _GxIdeDeploymentTool_renderApplicationServerSelector, _GxIdeDeploymentTool_renderGeneratorSelector, _GxIdeDeploymentTool_renderTargetSelector, _GxIdeDeploymentTool_renderDisplayNameInput, _GxIdeDeploymentTool_renderFooter;
67
+ var _GxIdeDeploymentTool_instances, _GxIdeDeploymentTool_componentLocale, _GxIdeDeploymentTool_renderedFirstTime, _GxIdeDeploymentTool_flattenedObjectTypeData, _GxIdeDeploymentTool_currentDeploymentUnitId, _GxIdeDeploymentTool_onlyPackageCheckboxEl, _GxIdeDeploymentTool_targetTypesEl, _GxIdeDeploymentTool_applicationServerEl, _GxIdeDeploymentTool_generatorEl, _GxIdeDeploymentTool_deploymentUnitsEl, _GxIdeDeploymentTool_displayNameEl, _GxIdeDeploymentTool_getInitialSelectedTarget, _GxIdeDeploymentTool_evaluateObjects, _GxIdeDeploymentTool_handleGetDeploymentUnitObjectsCallback, _GxIdeDeploymentTool_loadDeploymentUnits, _GxIdeDeploymentTool_handleCreateDeploymentUnit, _GxIdeDeploymentTool_optionsCallbackHandler, _GxIdeDeploymentTool_addNewTypesToModel, _GxIdeDeploymentTool_addObjectsCallbackHandler, _GxIdeDeploymentTool_deployCallbackHandler, _GxIdeDeploymentTool_getApplicationServer, _GxIdeDeploymentTool_handleTargetTypesChange, _GxIdeDeploymentTool_flattenObjectTypes, _GxIdeDeploymentTool_objectsTreeCheckedItemsChangedHandler, _GxIdeDeploymentTool_evaluateContentToDisplay, _GxIdeDeploymentTool_getComboModel, _GxIdeDeploymentTool_getComboModelItem, _GxIdeDeploymentTool_renderComboSelector, _GxIdeDeploymentTool_renderHeader, _GxIdeDeploymentTool_renderApplicationServerSelector, _GxIdeDeploymentTool_renderGeneratorSelector, _GxIdeDeploymentTool_renderTargetSelector, _GxIdeDeploymentTool_renderDisplayNameInput, _GxIdeDeploymentTool_renderFooter;
68
68
  const CSS_BUNDLES = [
69
69
  "resets/box-sizing",
70
70
  "utils/form",
@@ -78,6 +78,8 @@ const CSS_BUNDLES = [
78
78
  "components/icon",
79
79
  "utils/spacing"
80
80
  ];
81
+ const CHECKBOX_CHECKED_VALUE = "true";
82
+ const CHECKBOX_UNCHECKED_VALUE = "false";
81
83
  const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploymentTool extends HTMLElement {
82
84
  constructor() {
83
85
  super();
@@ -100,6 +102,15 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
100
102
  _GxIdeDeploymentTool_generatorEl.set(this, void 0);
101
103
  _GxIdeDeploymentTool_deploymentUnitsEl.set(this, void 0);
102
104
  _GxIdeDeploymentTool_displayNameEl.set(this, void 0);
105
+ _GxIdeDeploymentTool_getInitialSelectedTarget.set(this, () => {
106
+ if (this.defaultTargetTypeId) {
107
+ const target = this.targetTypes.find(itTarget => itTarget.id === this.defaultTargetTypeId);
108
+ if (target) {
109
+ return target;
110
+ }
111
+ }
112
+ return this.targetTypes[0];
113
+ });
103
114
  _GxIdeDeploymentTool_evaluateObjects.set(this, () => {
104
115
  var _a;
105
116
  this.noObjects = !!(((_a = this.treeModel) === null || _a === void 0 ? void 0 : _a.length) === 0 || !this.treeModel);
@@ -110,7 +121,7 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
110
121
  });
111
122
  _GxIdeDeploymentTool_loadDeploymentUnits.set(this, async (id) => {
112
123
  if (id === this.newDeploymentUnitId) {
113
- await __classPrivateFieldGet(this, _GxIdeDeploymentTool_handleCreateDeploymentUnit, "f").call(this);
124
+ // New deployment unit should be created before executing the deploy action.
114
125
  return;
115
126
  }
116
127
  __classPrivateFieldSet(this, _GxIdeDeploymentTool_currentDeploymentUnitId, id, "f");
@@ -124,11 +135,17 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
124
135
  if (!deploymentUnitData) {
125
136
  return;
126
137
  }
127
- // Update deployment units:
128
- this.deploymentUnits.unshift(deploymentUnitData);
129
- // Update combo:
130
- const comboModelItem = __classPrivateFieldGet(this, _GxIdeDeploymentTool_getComboModel, "f").call(this, [deploymentUnitData]);
131
- __classPrivateFieldGet(this, _GxIdeDeploymentTool_deploymentUnitsEl, "f").model = comboModelItem.concat(__classPrivateFieldGet(this, _GxIdeDeploymentTool_deploymentUnitsEl, "f").model);
138
+ if (!this.deploymentUnits.find(du => du.id === deploymentUnitData.id)) {
139
+ // Update deployment units:
140
+ this.deploymentUnits.unshift(deploymentUnitData);
141
+ // Update combo:
142
+ const deploymentUnitComboBoxItem = __classPrivateFieldGet(this, _GxIdeDeploymentTool_getComboModelItem, "f").call(this, deploymentUnitData);
143
+ const updatedDeploymentUnitsModel = [
144
+ deploymentUnitComboBoxItem,
145
+ ...__classPrivateFieldGet(this, _GxIdeDeploymentTool_deploymentUnitsEl, "f").model
146
+ ];
147
+ __classPrivateFieldGet(this, _GxIdeDeploymentTool_deploymentUnitsEl, "f").model = updatedDeploymentUnitsModel;
148
+ }
132
149
  __classPrivateFieldGet(this, _GxIdeDeploymentTool_deploymentUnitsEl, "f").value = deploymentUnitData.id;
133
150
  // Trigger selection callback:
134
151
  await __classPrivateFieldGet(this, _GxIdeDeploymentTool_loadDeploymentUnits, "f").call(this, deploymentUnitData.id);
@@ -162,14 +179,17 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
162
179
  }
163
180
  });
164
181
  _GxIdeDeploymentTool_deployCallbackHandler.set(this, async () => {
165
- var _a, _b, _c;
182
+ var _a, _b;
183
+ if (__classPrivateFieldGet(this, _GxIdeDeploymentTool_deploymentUnitsEl, "f").value === this.newDeploymentUnitId) {
184
+ await __classPrivateFieldGet(this, _GxIdeDeploymentTool_handleCreateDeploymentUnit, "f").call(this);
185
+ }
166
186
  const data = {
167
187
  targetId: __classPrivateFieldGet(this, _GxIdeDeploymentTool_targetTypesEl, "f").value,
168
- applicationServerId: (_a = __classPrivateFieldGet(this, _GxIdeDeploymentTool_applicationServerEl, "f")) === null || _a === void 0 ? void 0 : _a.value,
169
- displayName: (_b = __classPrivateFieldGet(this, _GxIdeDeploymentTool_displayNameEl, "f")) === null || _b === void 0 ? void 0 : _b.value,
170
- generatorId: (_c = __classPrivateFieldGet(this, _GxIdeDeploymentTool_generatorEl, "f")) === null || _c === void 0 ? void 0 : _c.value,
188
+ applicationServerId: __classPrivateFieldGet(this, _GxIdeDeploymentTool_getApplicationServer, "f").call(this),
189
+ displayName: (_a = __classPrivateFieldGet(this, _GxIdeDeploymentTool_displayNameEl, "f")) === null || _a === void 0 ? void 0 : _a.value,
190
+ generatorId: (_b = __classPrivateFieldGet(this, _GxIdeDeploymentTool_generatorEl, "f")) === null || _b === void 0 ? void 0 : _b.value,
171
191
  onlyPackage: __classPrivateFieldGet(this, _GxIdeDeploymentTool_onlyPackageCheckboxEl, "f")
172
- ? __classPrivateFieldGet(this, _GxIdeDeploymentTool_onlyPackageCheckboxEl, "f").value === "true"
192
+ ? __classPrivateFieldGet(this, _GxIdeDeploymentTool_onlyPackageCheckboxEl, "f").value === CHECKBOX_CHECKED_VALUE
173
193
  : undefined,
174
194
  objects: this.checkedObjectsIds
175
195
  };
@@ -179,10 +199,23 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
179
199
  this.allowDeploy = true;
180
200
  }
181
201
  });
202
+ _GxIdeDeploymentTool_getApplicationServer.set(this, () => {
203
+ var _a, _b, _c;
204
+ if ((_a = __classPrivateFieldGet(this, _GxIdeDeploymentTool_applicationServerEl, "f")) === null || _a === void 0 ? void 0 : _a.value) {
205
+ return __classPrivateFieldGet(this, _GxIdeDeploymentTool_applicationServerEl, "f").value;
206
+ }
207
+ return ((_b = this.selectedDeployTargetData) === null || _b === void 0 ? void 0 : _b.applicationServers.length) > 0
208
+ ? (_c = this.selectedDeployTargetData) === null || _c === void 0 ? void 0 : _c.applicationServers[0].id
209
+ : undefined;
210
+ });
182
211
  _GxIdeDeploymentTool_handleTargetTypesChange.set(this, (ev) => {
183
212
  const selectedId = ev.detail;
184
213
  this.selectedDeployTargetData =
185
214
  this.targetTypes.find(targetType => targetType.id === selectedId) || null;
215
+ if (!this.selectedDeployTargetData.canCreatePackage &&
216
+ __classPrivateFieldGet(this, _GxIdeDeploymentTool_onlyPackageCheckboxEl, "f").value === CHECKBOX_CHECKED_VALUE) {
217
+ __classPrivateFieldGet(this, _GxIdeDeploymentTool_onlyPackageCheckboxEl, "f").value = CHECKBOX_UNCHECKED_VALUE;
218
+ }
186
219
  __classPrivateFieldGet(this, _GxIdeDeploymentTool_optionsCallbackHandler, "f").call(this);
187
220
  });
188
221
  _GxIdeDeploymentTool_objectsTreeCheckedItemsChangedHandler.set(this, (event) => {
@@ -198,10 +231,13 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
198
231
  return (h("ch-tree-view-render", { class: "tree-view", model: this.treeModel, dragDisabled: true, dropDisabled: true, toggleCheckboxes: true, showLines: "last", checked: true, checkbox: true, onCheckedItemsChange: __classPrivateFieldGet(this, _GxIdeDeploymentTool_objectsTreeCheckedItemsChangedHandler, "f") }));
199
232
  });
200
233
  _GxIdeDeploymentTool_getComboModel.set(this, (baseCollection) => {
201
- return baseCollection.map(obj => ({
202
- caption: obj.name,
203
- value: obj.id
204
- }));
234
+ return baseCollection.map(obj => __classPrivateFieldGet(this, _GxIdeDeploymentTool_getComboModelItem, "f").call(this, obj));
235
+ });
236
+ _GxIdeDeploymentTool_getComboModelItem.set(this, (baseCollectionItem) => {
237
+ return {
238
+ caption: baseCollectionItem.name,
239
+ value: baseCollectionItem.id
240
+ };
205
241
  });
206
242
  _GxIdeDeploymentTool_renderComboSelector.set(this, (properties, withField = false) => {
207
243
  var _a;
@@ -254,12 +290,15 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
254
290
  id: "targetTypes",
255
291
  baseModel: this.targetTypes,
256
292
  label: __classPrivateFieldGet(this, _GxIdeDeploymentTool_componentLocale, "f").main.targetTypes,
293
+ value: this.selectedDeployTargetData
294
+ ? this.selectedDeployTargetData.id
295
+ : this.defaultTargetTypeId,
257
296
  refCallback: (el) => {
258
297
  __classPrivateFieldSet(this, _GxIdeDeploymentTool_targetTypesEl, el, "f");
259
298
  },
260
299
  onInputCallback: __classPrivateFieldGet(this, _GxIdeDeploymentTool_handleTargetTypesChange, "f")
261
300
  }),
262
- h("div", { class: "target-types-button-checkbox-wrapper buttons-spacer" }, h("button", { class: "button-tertiary button-icon-only", onClick: __classPrivateFieldGet(this, _GxIdeDeploymentTool_optionsCallbackHandler, "f") }, h("ch-image", { class: "icon-md", src: "system/settings/primary" })), h("ch-checkbox", { disabled: !((_a = this.selectedDeployTargetData) === null || _a === void 0 ? void 0 : _a.canCreatePackage), class: "checkbox", caption: __classPrivateFieldGet(this, _GxIdeDeploymentTool_componentLocale, "f").main.onlyPackageLabel, part: "only-package-checkbox", checkedValue: "true", value: "false", ref: (el) => (__classPrivateFieldSet(this, _GxIdeDeploymentTool_onlyPackageCheckboxEl, el, "f")) }))
301
+ h("div", { class: "target-types-button-checkbox-wrapper buttons-spacer" }, h("button", { class: "button-tertiary button-icon-only", onClick: __classPrivateFieldGet(this, _GxIdeDeploymentTool_optionsCallbackHandler, "f") }, h("ch-image", { class: "icon-md", src: "system/settings/primary" })), h("ch-checkbox", { disabled: !((_a = this.selectedDeployTargetData) === null || _a === void 0 ? void 0 : _a.canCreatePackage), class: "checkbox", caption: __classPrivateFieldGet(this, _GxIdeDeploymentTool_componentLocale, "f").main.onlyPackageLabel, part: "only-package-checkbox", checkedValue: CHECKBOX_CHECKED_VALUE, unCheckedValue: CHECKBOX_UNCHECKED_VALUE, value: CHECKBOX_UNCHECKED_VALUE, ref: (el) => (__classPrivateFieldSet(this, _GxIdeDeploymentTool_onlyPackageCheckboxEl, el, "f")) }))
263
302
  ];
264
303
  });
265
304
  _GxIdeDeploymentTool_renderDisplayNameInput.set(this, () => {
@@ -284,6 +323,7 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
284
323
  this.allowDeploy = true;
285
324
  this.deploymentUnits = undefined;
286
325
  this.targetTypes = undefined;
326
+ this.defaultTargetTypeId = undefined;
287
327
  this.newDeploymentUnitId = undefined;
288
328
  this.objectTypes = undefined;
289
329
  this.getDeploymentUnitObjectsCallback = undefined;
@@ -300,7 +340,7 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
300
340
  }
301
341
  async componentWillLoad() {
302
342
  __classPrivateFieldSet(this, _GxIdeDeploymentTool_componentLocale, await Locale.getComponentStrings(this.el), "f");
303
- this.selectedDeployTargetData = this.targetTypes[0];
343
+ this.selectedDeployTargetData = __classPrivateFieldGet(this, _GxIdeDeploymentTool_getInitialSelectedTarget, "f").call(this);
304
344
  this.allObjectTypes = [...this.objectTypes];
305
345
  __classPrivateFieldGet(this, _GxIdeDeploymentTool_evaluateObjects, "f").call(this);
306
346
  __classPrivateFieldGet(this, _GxIdeDeploymentTool_instances, "m", _GxIdeDeploymentTool_flattenObjectTypes).call(this, this.allObjectTypes);
@@ -319,7 +359,8 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
319
359
  }
320
360
  render() {
321
361
  var _a, _b, _c, _d, _e, _f;
322
- return (h(Host, { class: "widget spacing-body" }, h("ch-theme", { model: CSS_BUNDLES }), __classPrivateFieldGet(this, _GxIdeDeploymentTool_renderHeader, "f").call(this), h("div", { class: "container-wrapper" }, __classPrivateFieldGet(this, _GxIdeDeploymentTool_evaluateContentToDisplay, "f").call(this)), h("div", { class: "deploy-properties" }, __classPrivateFieldGet(this, _GxIdeDeploymentTool_renderTargetSelector, "f").call(this), ((_b = (_a = this.selectedDeployTargetData) === null || _a === void 0 ? void 0 : _a.applicationServers) === null || _b === void 0 ? void 0 : _b.length) > 0
362
+ return (h(Host, { class: "widget spacing-body" }, h("ch-theme", { model: CSS_BUNDLES }), __classPrivateFieldGet(this, _GxIdeDeploymentTool_renderHeader, "f").call(this), h("div", { class: "container-wrapper" }, __classPrivateFieldGet(this, _GxIdeDeploymentTool_evaluateContentToDisplay, "f").call(this)), h("div", { class: "deploy-properties" }, __classPrivateFieldGet(this, _GxIdeDeploymentTool_renderTargetSelector, "f").call(this), ((_b = (_a = this.selectedDeployTargetData) === null || _a === void 0 ? void 0 : _a.applicationServers) === null || _b === void 0 ? void 0 : _b.length) > 1 &&
363
+ this.selectedDeployTargetData.canSelectApplicationServer
323
364
  ? __classPrivateFieldGet(this, _GxIdeDeploymentTool_renderApplicationServerSelector, "f").call(this)
324
365
  : [], ((_d = (_c = this.selectedDeployTargetData) === null || _c === void 0 ? void 0 : _c.generators) === null || _d === void 0 ? void 0 : _d.length) > 0
325
366
  ? __classPrivateFieldGet(this, _GxIdeDeploymentTool_renderGeneratorSelector, "f").call(this)
@@ -337,6 +378,7 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
337
378
  }, [1, "gx-ide-deployment-tool", {
338
379
  "deploymentUnits": [16],
339
380
  "targetTypes": [16],
381
+ "defaultTargetTypeId": [1, "default-target-type-id"],
340
382
  "newDeploymentUnitId": [1, "new-deployment-unit-id"],
341
383
  "objectTypes": [16],
342
384
  "getDeploymentUnitObjectsCallback": [16],
@@ -355,7 +397,7 @@ const GxIdeDeploymentTool$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDeploy
355
397
  "treeModel": ["watchTreeModelHandler"],
356
398
  "objectTypes": ["watchObjectTypesHandler"]
357
399
  }]);
358
- _GxIdeDeploymentTool_componentLocale = new WeakMap(), _GxIdeDeploymentTool_renderedFirstTime = new WeakMap(), _GxIdeDeploymentTool_flattenedObjectTypeData = new WeakMap(), _GxIdeDeploymentTool_currentDeploymentUnitId = new WeakMap(), _GxIdeDeploymentTool_onlyPackageCheckboxEl = new WeakMap(), _GxIdeDeploymentTool_targetTypesEl = new WeakMap(), _GxIdeDeploymentTool_applicationServerEl = new WeakMap(), _GxIdeDeploymentTool_generatorEl = new WeakMap(), _GxIdeDeploymentTool_deploymentUnitsEl = new WeakMap(), _GxIdeDeploymentTool_displayNameEl = new WeakMap(), _GxIdeDeploymentTool_evaluateObjects = new WeakMap(), _GxIdeDeploymentTool_handleGetDeploymentUnitObjectsCallback = new WeakMap(), _GxIdeDeploymentTool_loadDeploymentUnits = new WeakMap(), _GxIdeDeploymentTool_handleCreateDeploymentUnit = new WeakMap(), _GxIdeDeploymentTool_optionsCallbackHandler = new WeakMap(), _GxIdeDeploymentTool_addNewTypesToModel = new WeakMap(), _GxIdeDeploymentTool_addObjectsCallbackHandler = new WeakMap(), _GxIdeDeploymentTool_deployCallbackHandler = new WeakMap(), _GxIdeDeploymentTool_handleTargetTypesChange = new WeakMap(), _GxIdeDeploymentTool_objectsTreeCheckedItemsChangedHandler = new WeakMap(), _GxIdeDeploymentTool_evaluateContentToDisplay = new WeakMap(), _GxIdeDeploymentTool_getComboModel = new WeakMap(), _GxIdeDeploymentTool_renderComboSelector = new WeakMap(), _GxIdeDeploymentTool_renderHeader = new WeakMap(), _GxIdeDeploymentTool_renderApplicationServerSelector = new WeakMap(), _GxIdeDeploymentTool_renderGeneratorSelector = new WeakMap(), _GxIdeDeploymentTool_renderTargetSelector = new WeakMap(), _GxIdeDeploymentTool_renderDisplayNameInput = new WeakMap(), _GxIdeDeploymentTool_renderFooter = new WeakMap(), _GxIdeDeploymentTool_instances = new WeakSet(), _GxIdeDeploymentTool_flattenObjectTypes = function _GxIdeDeploymentTool_flattenObjectTypes(newState) {
400
+ _GxIdeDeploymentTool_componentLocale = new WeakMap(), _GxIdeDeploymentTool_renderedFirstTime = new WeakMap(), _GxIdeDeploymentTool_flattenedObjectTypeData = new WeakMap(), _GxIdeDeploymentTool_currentDeploymentUnitId = new WeakMap(), _GxIdeDeploymentTool_onlyPackageCheckboxEl = new WeakMap(), _GxIdeDeploymentTool_targetTypesEl = new WeakMap(), _GxIdeDeploymentTool_applicationServerEl = new WeakMap(), _GxIdeDeploymentTool_generatorEl = new WeakMap(), _GxIdeDeploymentTool_deploymentUnitsEl = new WeakMap(), _GxIdeDeploymentTool_displayNameEl = new WeakMap(), _GxIdeDeploymentTool_getInitialSelectedTarget = new WeakMap(), _GxIdeDeploymentTool_evaluateObjects = new WeakMap(), _GxIdeDeploymentTool_handleGetDeploymentUnitObjectsCallback = new WeakMap(), _GxIdeDeploymentTool_loadDeploymentUnits = new WeakMap(), _GxIdeDeploymentTool_handleCreateDeploymentUnit = new WeakMap(), _GxIdeDeploymentTool_optionsCallbackHandler = new WeakMap(), _GxIdeDeploymentTool_addNewTypesToModel = new WeakMap(), _GxIdeDeploymentTool_addObjectsCallbackHandler = new WeakMap(), _GxIdeDeploymentTool_deployCallbackHandler = new WeakMap(), _GxIdeDeploymentTool_getApplicationServer = new WeakMap(), _GxIdeDeploymentTool_handleTargetTypesChange = new WeakMap(), _GxIdeDeploymentTool_objectsTreeCheckedItemsChangedHandler = new WeakMap(), _GxIdeDeploymentTool_evaluateContentToDisplay = new WeakMap(), _GxIdeDeploymentTool_getComboModel = new WeakMap(), _GxIdeDeploymentTool_getComboModelItem = new WeakMap(), _GxIdeDeploymentTool_renderComboSelector = new WeakMap(), _GxIdeDeploymentTool_renderHeader = new WeakMap(), _GxIdeDeploymentTool_renderApplicationServerSelector = new WeakMap(), _GxIdeDeploymentTool_renderGeneratorSelector = new WeakMap(), _GxIdeDeploymentTool_renderTargetSelector = new WeakMap(), _GxIdeDeploymentTool_renderDisplayNameInput = new WeakMap(), _GxIdeDeploymentTool_renderFooter = new WeakMap(), _GxIdeDeploymentTool_instances = new WeakSet(), _GxIdeDeploymentTool_flattenObjectTypes = function _GxIdeDeploymentTool_flattenObjectTypes(newState) {
359
401
  newState.forEach(objectType => {
360
402
  __classPrivateFieldGet(this, _GxIdeDeploymentTool_flattenedObjectTypeData, "f").set(objectType.id, objectType);
361
403
  });
@@ -1 +1 @@
1
- {"file":"gx-ide-deployment-tool.js","mappings":"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","names":["GxIdeDeploymentTool"],"sources":["src/components/deployment-tool/helpers.ts","src/components/deployment-tool/deployment-tool.scss?tag=gx-ide-deployment-tool&encapsulation=shadow","src/components/deployment-tool/deployment-tool.tsx"],"sourcesContent":["import { TreeViewItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/tree-view/types\";\nimport { TypedObjectData, ObjectTypeData } from \"./deployment-tool\";\n\nconst KB_OBJECT_TYPE = \"type\";\nexport const KB_OBJECT = \"object\";\n\nconst convertObjectDataToTreeItem = (\n objectTypeIcon: string,\n objectItems: TypedObjectData[]\n) => {\n return objectItems.map(objectItem => ({\n id: objectItem.id,\n caption: objectItem.name,\n startImgSrc: objectTypeIcon,\n expanded: true,\n leaf: true,\n metadata: KB_OBJECT\n }));\n};\n\nexport const convertObjectTypeDataToTreeView = (\n objectTypeData: ObjectTypeDataWithItems[]\n): TreeViewItemModel[] => {\n const treeData: TreeViewItemModel[] = [];\n if (!objectTypeData) {\n return treeData;\n }\n\n for (const objectType of objectTypeData) {\n if (objectType.items.length > 0) {\n treeData.push({\n id: objectType.id,\n caption: objectType.name,\n startImgSrc: objectType.icon,\n expanded: true,\n leaf: false,\n metadata: KB_OBJECT_TYPE,\n items: convertObjectDataToTreeItem(objectType.icon, objectType.items)\n });\n }\n }\n\n return treeData;\n};\n\nexport const createArrayOfItems = (\n objectItems: TypedObjectData[],\n objectTypes: ObjectTypeData[]\n) => {\n // The resulting array with 'items' property added to each type\n const objectTypesWithItems: ObjectTypeDataWithItems[] = objectTypes.map(\n type => {\n // Filter objects that match the current type id\n const items = objectItems.filter(object => object.type === type.id);\n\n // Return a new object type with the 'items' property\n\n return {\n ...type,\n items: items\n };\n }\n );\n const treeView = convertObjectTypeDataToTreeView(objectTypesWithItems);\n return treeView;\n};\n\nexport type ObjectTypeDataWithItems = {\n id: string;\n name: string;\n icon: string;\n items: TypedObjectData[];\n};\n","@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.header {\n display: grid;\n padding: var(--gxg-container--padding);\n gap: var(--gx-ide-grid-column-gap);\n grid-template-columns: 1fr auto;\n :nth-child(2) {\n align-self: self-end;\n }\n margin-block-end: var(--gx-ide-grid-row-gap);\n}\n\n// deploy properties\n.deploy-properties {\n display: grid;\n grid-auto-rows: max-content;\n grid-template-columns: max-content 1fr max-content;\n grid-template-areas:\n \"target-types__label target-types__combo-box target-types__button-checkbox-container\"\n \"application-server__label application-server__combo-box .\"\n \". target-type__description .\"\n \"display-name__label display-name__combo-box .\";\n align-items: center;\n column-gap: var(--field__column-gap);\n row-gap: var(--field-group__row-gap);\n border-block-start: var(--section-common-border);\n padding-block-start: var(--mer-spacing--md);\n}\n\n.label.target-types {\n grid-area: target-types__label;\n}\n#target-types {\n grid-area: target-types__combo-box;\n}\n.target-types-button-checkbox-wrapper {\n grid-area: target-types__button-checkbox-container;\n}\n\n.label.application-server {\n grid-area: application-server__label;\n}\n#application-server {\n grid-area: application-server__combo-box;\n}\n\n.target-type__description {\n grid-area: target-type__description;\n}\n\n.label.display-name {\n grid-area: display-name__label;\n}\n#display-name {\n grid-area: display-name__combo-box;\n}\n\n.footer {\n margin-block-start: var(--gx-ide-grid-row-gap);\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Event,\n Element,\n State,\n EventEmitter,\n Watch\n} from \"@stencil/core\";\n\n// Other Libraries\nimport {\n TreeViewItemModel,\n TreeViewItemModelExtended\n} from \"@genexus/chameleon-controls-library/dist/types/components/tree-view/types\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\nimport { createArrayOfItems } from \"./helpers\";\n\n// Custom Imports\nimport { Locale } from \"../../common/locale\";\nimport { KB_OBJECT } from \"./helpers\";\nimport {\n ComboBoxItemModel,\n ComboBoxModel\n} from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { ChComboBoxRenderCustomEvent } from \"@genexus/chameleon-controls-library\";\nimport { ObjectBaseData } from \"../../common/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\",\n \"components/button\",\n \"components/checkbox\",\n \"components/edit\",\n \"components/tree-view\",\n \"components/combo-box\",\n \"components/icon\",\n \"utils/spacing\"\n];\n\n@Component({\n tag: \"gx-ide-deployment-tool\",\n styleUrl: \"deployment-tool.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/deployment-tool\"]\n})\nexport class GxIdeDeploymentTool {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n #renderedFirstTime = false;\n #flattenedObjectTypeData: Map<string, ObjectTypeData> = new Map();\n #currentDeploymentUnitId: string | undefined;\n\n @Element() el: HTMLGxIdeDeploymentToolElement;\n #onlyPackageCheckboxEl!: HTMLChCheckboxElement;\n #targetTypesEl!: HTMLChComboBoxRenderElement;\n #applicationServerEl!: HTMLChComboBoxRenderElement;\n #generatorEl!: HTMLChComboBoxRenderElement;\n #deploymentUnitsEl!: HTMLChComboBoxRenderElement;\n #displayNameEl!: HTMLChEditElement;\n\n @State() checkedObjectsIds: string[] = [];\n @State() noObjects: boolean;\n @State() selectedDeployTargetData: DeployTargetData = null;\n @State() addedObjects: TypedObjectData[] = [];\n @State() allObjectTypes: ObjectTypeData[];\n @State() treeModel: TreeViewItemModel[] = [];\n @State() allowDeploy: boolean = true;\n @Watch(\"treeModel\")\n watchTreeModelHandler(newState: TreeViewItemModel[]) {\n this.noObjects = !!(newState.length === 0 || !newState);\n }\n\n /**\n * Available deployment units list\n */\n @Prop() readonly deploymentUnits: ObjectBaseData[];\n\n /**\n * Available target types list\n */\n @Prop() readonly targetTypes: DeployTargetData[];\n\n /**\n * Defines id for new deployment unit option\n */\n @Prop() readonly newDeploymentUnitId: string;\n\n /**\n * Array of possible object types\n */\n @Prop() readonly objectTypes: ObjectTypeData[];\n @Watch(\"objectTypes\")\n watchObjectTypesHandler(newState: ObjectTypeData[]) {\n this.#flattenObjectTypes(newState);\n }\n\n /**\n * Callback invoked when the user wants to access the export options.\n */\n // eslint-disable-next-line @stencil-community/decorators-style\n @Prop()\n readonly getDeploymentUnitObjectsCallback: GetDeploymentUnitObjectsCallback;\n\n /**\n * Callback invoked when the user wants to access the export options.\n */\n @Prop() readonly optionsCallback: OptionsCallback;\n\n /**\n * Callback invoked when user wants to start deploy process\n */\n @Prop() readonly deployCallback: DeployCallback;\n\n /**\n * Callback invoked when the user wants to add objects.\n */\n @Prop() readonly addObjectsCallback: AddObjectsCallback;\n\n /**\n * Callback invoked when the user wants to create a deployment unit.\n */\n @Prop() readonly createDeploymentUnitCallback: CreateDeploymentUnitCallback;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.selectedDeployTargetData = this.targetTypes[0];\n this.allObjectTypes = [...this.objectTypes];\n this.#evaluateObjects();\n this.#flattenObjectTypes(this.allObjectTypes);\n if (this.deploymentUnits.length > 0) {\n this.#loadDeploymentUnits(this.deploymentUnits[0].id);\n\n if (this.targetTypes.length > 0 && this.optionsCallback) {\n this.optionsCallback(\n this.deploymentUnits[0].id,\n this.targetTypes[0].id\n );\n }\n }\n }\n\n componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n }\n\n #evaluateObjects = () => {\n this.noObjects = !!(this.treeModel?.length === 0 || !this.treeModel);\n };\n\n #handleGetDeploymentUnitObjectsCallback = async (ev: any) => {\n await this.#loadDeploymentUnits(ev.detail);\n this.#optionsCallbackHandler();\n };\n\n #loadDeploymentUnits = async (id: string) => {\n if (id === this.newDeploymentUnitId) {\n await this.#handleCreateDeploymentUnit();\n return;\n }\n\n this.#currentDeploymentUnitId = id;\n\n const objectData = await this.getDeploymentUnitObjectsCallback(id);\n this.addedObjects = [...objectData];\n this.treeModel = createArrayOfItems(this.addedObjects, this.allObjectTypes);\n };\n\n #handleCreateDeploymentUnit = async () => {\n if (this.createDeploymentUnitCallback) {\n const deploymentUnitData = await this.createDeploymentUnitCallback();\n if (!deploymentUnitData) {\n return;\n }\n\n // Update deployment units:\n this.deploymentUnits.unshift(deploymentUnitData);\n\n // Update combo:\n const comboModelItem = this.#getComboModel([deploymentUnitData]);\n this.#deploymentUnitsEl.model = comboModelItem.concat(\n this.#deploymentUnitsEl.model\n );\n this.#deploymentUnitsEl.value = deploymentUnitData.id;\n\n // Trigger selection callback:\n await this.#loadDeploymentUnits(deploymentUnitData.id);\n }\n };\n\n #optionsCallbackHandler = () => {\n if (this.optionsCallback) {\n this.optionsCallback(\n this.#deploymentUnitsEl.value,\n this.#targetTypesEl.value\n );\n }\n };\n\n #addNewTypesToModel = () => {\n const allTypes: ObjectTypeData[] = [...this.allObjectTypes];\n\n this.addedObjects.forEach(addedObject => {\n const matchingType = this.allObjectTypes.find(\n objectType => objectType.id === addedObject.type\n );\n\n if (!matchingType) {\n allTypes.push({\n id: addedObject.type,\n name: addedObject.type,\n icon: \"\"\n });\n }\n });\n this.allObjectTypes = [...allTypes];\n };\n\n #addObjectsCallbackHandler = async () => {\n if (this.addObjectsCallback) {\n const objects: TypedObjectData[] = await this.addObjectsCallback();\n this.addedObjects = [...objects, ...this.addedObjects];\n\n this.#addNewTypesToModel();\n this.treeModel = createArrayOfItems(\n this.addedObjects,\n this.allObjectTypes\n );\n }\n };\n\n #deployCallbackHandler = async () => {\n const data: DeployData = {\n targetId: this.#targetTypesEl.value,\n applicationServerId: this.#applicationServerEl?.value,\n displayName: this.#displayNameEl?.value,\n generatorId: this.#generatorEl?.value,\n onlyPackage: this.#onlyPackageCheckboxEl\n ? this.#onlyPackageCheckboxEl.value === \"true\"\n : undefined,\n objects: this.checkedObjectsIds\n };\n\n if (this.deployCallback) {\n this.allowDeploy = false;\n await this.deployCallback(data);\n this.allowDeploy = true;\n }\n };\n\n #handleTargetTypesChange = (ev: any) => {\n const selectedId = ev.detail;\n\n this.selectedDeployTargetData =\n this.targetTypes.find(targetType => targetType.id === selectedId) || null;\n\n this.#optionsCallbackHandler();\n };\n\n #flattenObjectTypes(newState: ObjectTypeData[]) {\n newState.forEach(objectType => {\n this.#flattenedObjectTypeData.set(objectType.id, objectType);\n });\n }\n\n #objectsTreeCheckedItemsChangedHandler = (\n event: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n const allItemsWithCheckbox = [...event.detail.values()];\n\n this.checkedObjectsIds = allItemsWithCheckbox\n .filter(\n checkedItem =>\n checkedItem.item.checked && checkedItem.item.metadata === KB_OBJECT\n )\n .map(checkedItem => checkedItem.item.id);\n };\n\n #evaluateContentToDisplay = () => {\n if (this.noObjects) {\n return (\n <gx-ide-empty-state\n isAnimated={false}\n stateTitle={this.#componentLocale.main.noObjectsToDisplay}\n key=\"no-objects-empty-state\"\n stateIconSrc=\"objects/object\"\n ></gx-ide-empty-state>\n );\n }\n\n return (\n <ch-tree-view-render\n class=\"tree-view\"\n model={this.treeModel}\n dragDisabled={true}\n dropDisabled={true}\n toggleCheckboxes={true}\n showLines=\"last\"\n checked={true}\n checkbox={true}\n onCheckedItemsChange={this.#objectsTreeCheckedItemsChangedHandler}\n />\n );\n };\n\n #getComboModel = (baseCollection: ObjectBaseData[]): ComboBoxModel => {\n return baseCollection.map(\n obj =>\n ({\n caption: obj.name,\n value: obj.id\n } as ComboBoxItemModel)\n );\n };\n\n #renderComboSelector = (\n properties: ComboSelectorProperties,\n withField: boolean = false\n ) => {\n const controlId = properties.label.replace(/ /g, \"-\").toLowerCase();\n const labelClasses = `label ${controlId}`;\n const labelAndComboBox = [\n <label class={labelClasses} htmlFor={controlId}>\n {properties.label}\n </label>,\n <ch-combo-box-render\n class=\"combo-box\"\n value={\n properties.value ? properties.value : properties.baseModel[0]?.id\n }\n model={this.#getComboModel(properties.baseModel)}\n id={controlId}\n ref={properties.refCallback}\n onInput={properties.onInputCallback}\n />\n ];\n return withField ? (\n <div class=\"field field-inline\">{labelAndComboBox}</div>\n ) : (\n labelAndComboBox\n );\n };\n\n #renderHeader = () => {\n return (\n <div slot=\"header\" class=\"header control-header-with-border\">\n {this.#renderComboSelector(\n {\n id: \"deploymentUnits\",\n baseModel: this.deploymentUnits,\n label: this.#componentLocale.header.objectsToDeploy,\n value: this.#currentDeploymentUnitId,\n refCallback: (el: HTMLChComboBoxRenderElement) => {\n this.#deploymentUnitsEl = el as HTMLChComboBoxRenderElement;\n },\n onInputCallback: this.#handleGetDeploymentUnitObjectsCallback\n },\n true\n )}\n\n <button\n class=\"button-primary\"\n onClick={this.#addObjectsCallbackHandler}\n >\n {this.#componentLocale.main.addButton}\n </button>\n </div>\n );\n };\n\n #renderApplicationServerSelector = () => {\n return this.#renderComboSelector({\n id: \"application-servers\",\n baseModel: this.selectedDeployTargetData?.applicationServers,\n label: this.#componentLocale.main.applicationServer,\n refCallback: (el: HTMLChComboBoxRenderElement) => {\n this.#applicationServerEl = el as HTMLChComboBoxRenderElement;\n }\n });\n };\n\n #renderGeneratorSelector = () => {\n return this.#renderComboSelector({\n id: \"generator\",\n baseModel: this.selectedDeployTargetData?.generators,\n label: this.#componentLocale.main.generator,\n refCallback: (el: HTMLChComboBoxRenderElement) => {\n this.#generatorEl = el as HTMLChComboBoxRenderElement;\n }\n });\n };\n\n #renderTargetSelector = () => {\n return [\n this.#renderComboSelector({\n id: \"targetTypes\",\n baseModel: this.targetTypes,\n label: this.#componentLocale.main.targetTypes,\n refCallback: (el: HTMLChComboBoxRenderElement) => {\n this.#targetTypesEl = el as HTMLChComboBoxRenderElement;\n },\n onInputCallback: this.#handleTargetTypesChange\n }),\n <div class=\"target-types-button-checkbox-wrapper buttons-spacer\">\n <button\n class=\"button-tertiary button-icon-only\"\n onClick={this.#optionsCallbackHandler}\n >\n <ch-image class=\"icon-md\" src=\"system/settings/primary\" />\n </button>\n <ch-checkbox\n disabled={!this.selectedDeployTargetData?.canCreatePackage}\n class=\"checkbox\"\n caption={this.#componentLocale.main.onlyPackageLabel}\n part=\"only-package-checkbox\"\n checkedValue=\"true\"\n value=\"false\"\n ref={(el: HTMLChCheckboxElement) =>\n (this.#onlyPackageCheckboxEl = el as HTMLChCheckboxElement)\n }\n />\n </div>\n ];\n };\n\n #renderDisplayNameInput = () => {\n return [\n <label class=\"label display-name\" htmlFor=\"display-name\">\n {this.#componentLocale.main.displayName}\n </label>,\n <ch-edit\n class=\"input\"\n id=\"display-name\"\n ref={(el: HTMLChEditElement) => {\n if (el) {\n this.#displayNameEl = el;\n }\n }}\n />\n ];\n };\n\n #renderFooter = () => {\n return (\n <div slot=\"footer-end\" class=\"footer control-footer-with-border\">\n <button\n class=\"button-primary\"\n onClick={this.#deployCallbackHandler}\n disabled={!this.allowDeploy}\n >\n {this.#componentLocale.main.deployButton}\n </button>\n </div>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget spacing-body\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n {this.#renderHeader()}\n\n <div class=\"container-wrapper\">{this.#evaluateContentToDisplay()}</div>\n <div class=\"deploy-properties\">\n {this.#renderTargetSelector()}\n\n {this.selectedDeployTargetData?.applicationServers?.length > 0\n ? this.#renderApplicationServerSelector()\n : []}\n\n {this.selectedDeployTargetData?.generators?.length > 0\n ? this.#renderGeneratorSelector()\n : []}\n\n <p class=\"body-italic-s target-type__description\">\n {this.selectedDeployTargetData?.description}\n </p>\n\n {this.selectedDeployTargetData?.canDefineDisplayName\n ? this.#renderDisplayNameInput()\n : []}\n </div>\n\n {this.#renderFooter()}\n </Host>\n );\n }\n}\n\ntype ComboSelectorProperties = {\n class?: string;\n id: string;\n baseModel: ObjectBaseData[];\n value?: string;\n label: string;\n refCallback: (el: HTMLChComboBoxRenderElement) => void;\n onInputCallback?: ((event: ChComboBoxRenderCustomEvent<string>) => void) &\n ((event: InputEvent) => void);\n};\n\nexport type AddObjectsCallback = () => Promise<TypedObjectData[]>;\nexport type OptionsCallback = (\n delpoymentUnitId: string,\n targetId: string\n) => Promise<void>;\nexport type GetDeploymentUnitObjectsCallback = (\n id: string\n) => Promise<TypedObjectData[]>;\n\nexport type DeployCallback = (data: DeployData) => Promise<boolean>;\n\nexport type CreateDeploymentUnitCallback = () => Promise<\n ObjectBaseData | undefined\n>;\n\nexport type ObjectTypeData = ObjectBaseData & {\n icon: string;\n};\n\nexport type DeployTargetData = ObjectBaseData & {\n canCreatePackage: boolean;\n canDefineDisplayName: boolean;\n applicationServers: ObjectBaseData[];\n generators: ObjectBaseData[];\n description: string;\n};\n\nexport type TypedObjectData = ObjectBaseData & {\n type: string;\n};\n\nexport type DeployData = {\n targetId: string;\n applicationServerId?: string;\n displayName?: string;\n generatorId?: string;\n onlyPackage: boolean;\n objects: string[];\n};\n"],"version":3}
1
+ {"file":"gx-ide-deployment-tool.js","mappings":"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","names":["GxIdeDeploymentTool"],"sources":["src/components/deployment-tool/helpers.ts","src/components/deployment-tool/deployment-tool.scss?tag=gx-ide-deployment-tool&encapsulation=shadow","src/components/deployment-tool/deployment-tool.tsx"],"sourcesContent":["import { TreeViewItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/tree-view/types\";\nimport { TypedObjectData, ObjectTypeData } from \"./deployment-tool\";\n\nconst KB_OBJECT_TYPE = \"type\";\nexport const KB_OBJECT = \"object\";\n\nconst convertObjectDataToTreeItem = (\n objectTypeIcon: string,\n objectItems: TypedObjectData[]\n) => {\n return objectItems.map(objectItem => ({\n id: objectItem.id,\n caption: objectItem.name,\n startImgSrc: objectTypeIcon,\n expanded: true,\n leaf: true,\n metadata: KB_OBJECT\n }));\n};\n\nexport const convertObjectTypeDataToTreeView = (\n objectTypeData: ObjectTypeDataWithItems[]\n): TreeViewItemModel[] => {\n const treeData: TreeViewItemModel[] = [];\n if (!objectTypeData) {\n return treeData;\n }\n\n for (const objectType of objectTypeData) {\n if (objectType.items.length > 0) {\n treeData.push({\n id: objectType.id,\n caption: objectType.name,\n startImgSrc: objectType.icon,\n expanded: true,\n leaf: false,\n metadata: KB_OBJECT_TYPE,\n items: convertObjectDataToTreeItem(objectType.icon, objectType.items)\n });\n }\n }\n\n return treeData;\n};\n\nexport const createArrayOfItems = (\n objectItems: TypedObjectData[],\n objectTypes: ObjectTypeData[]\n) => {\n // The resulting array with 'items' property added to each type\n const objectTypesWithItems: ObjectTypeDataWithItems[] = objectTypes.map(\n type => {\n // Filter objects that match the current type id\n const items = objectItems.filter(object => object.type === type.id);\n\n // Return a new object type with the 'items' property\n\n return {\n ...type,\n items: items\n };\n }\n );\n const treeView = convertObjectTypeDataToTreeView(objectTypesWithItems);\n return treeView;\n};\n\nexport type ObjectTypeDataWithItems = {\n id: string;\n name: string;\n icon: string;\n items: TypedObjectData[];\n};\n","@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.header {\n display: grid;\n padding: var(--gxg-container--padding);\n gap: var(--gx-ide-grid-column-gap);\n grid-template-columns: 1fr auto;\n :nth-child(2) {\n align-self: self-end;\n }\n margin-block-end: var(--gx-ide-grid-row-gap);\n}\n\n// deploy properties\n.deploy-properties {\n display: grid;\n grid-auto-rows: max-content;\n grid-template-columns: max-content 1fr max-content;\n grid-template-areas:\n \"target-types__label target-types__combo-box target-types__button-checkbox-container\"\n \"application-server__label application-server__combo-box .\"\n \". target-type__description .\"\n \"display-name__label display-name__combo-box .\";\n align-items: center;\n column-gap: var(--field__column-gap);\n row-gap: var(--field-group__row-gap);\n border-block-start: var(--section-common-border);\n padding-block-start: var(--mer-spacing--md);\n}\n\n.label.target-types {\n grid-area: target-types__label;\n}\n#target-types {\n grid-area: target-types__combo-box;\n}\n.target-types-button-checkbox-wrapper {\n grid-area: target-types__button-checkbox-container;\n}\n\n.label.application-server {\n grid-area: application-server__label;\n}\n#application-server {\n grid-area: application-server__combo-box;\n}\n\n.target-type__description {\n grid-area: target-type__description;\n}\n\n.label.display-name {\n grid-area: display-name__label;\n}\n#display-name {\n grid-area: display-name__combo-box;\n}\n\n.footer {\n margin-block-start: var(--gx-ide-grid-row-gap);\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Event,\n Element,\n State,\n EventEmitter,\n Watch\n} from \"@stencil/core\";\n\n// Other Libraries\nimport {\n TreeViewItemModel,\n TreeViewItemModelExtended\n} from \"@genexus/chameleon-controls-library/dist/types/components/tree-view/types\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\nimport { createArrayOfItems } from \"./helpers\";\n\n// Custom Imports\nimport { Locale } from \"../../common/locale\";\nimport { KB_OBJECT } from \"./helpers\";\nimport {\n ComboBoxItemModel,\n ComboBoxModel\n} from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { ChComboBoxRenderCustomEvent } from \"@genexus/chameleon-controls-library\";\nimport { ObjectBaseData } from \"../../common/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\",\n \"components/button\",\n \"components/checkbox\",\n \"components/edit\",\n \"components/tree-view\",\n \"components/combo-box\",\n \"components/icon\",\n \"utils/spacing\"\n];\n\nconst CHECKBOX_CHECKED_VALUE = \"true\";\nconst CHECKBOX_UNCHECKED_VALUE = \"false\";\n\n@Component({\n tag: \"gx-ide-deployment-tool\",\n styleUrl: \"deployment-tool.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/deployment-tool\"]\n})\nexport class GxIdeDeploymentTool {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n #renderedFirstTime = false;\n #flattenedObjectTypeData: Map<string, ObjectTypeData> = new Map();\n #currentDeploymentUnitId: string | undefined;\n\n @Element() el: HTMLGxIdeDeploymentToolElement;\n #onlyPackageCheckboxEl!: HTMLChCheckboxElement;\n #targetTypesEl!: HTMLChComboBoxRenderElement;\n #applicationServerEl!: HTMLChComboBoxRenderElement;\n #generatorEl!: HTMLChComboBoxRenderElement;\n #deploymentUnitsEl!: HTMLChComboBoxRenderElement;\n #displayNameEl!: HTMLChEditElement;\n\n @State() checkedObjectsIds: string[] = [];\n @State() noObjects: boolean;\n @State() selectedDeployTargetData: DeployTargetData = null;\n @State() addedObjects: TypedObjectData[] = [];\n @State() allObjectTypes: ObjectTypeData[];\n @State() treeModel: TreeViewItemModel[] = [];\n @State() allowDeploy: boolean = true;\n @Watch(\"treeModel\")\n watchTreeModelHandler(newState: TreeViewItemModel[]) {\n this.noObjects = !!(newState.length === 0 || !newState);\n }\n\n /**\n * Available deployment units list\n */\n @Prop() readonly deploymentUnits: ObjectBaseData[];\n\n /**\n * Available target types list\n */\n @Prop() readonly targetTypes: DeployTargetData[];\n\n /**\n * Defines the default target type (will be selected by default)\n */\n @Prop() readonly defaultTargetTypeId?: string;\n\n /**\n * Defines id for new deployment unit option\n */\n @Prop() readonly newDeploymentUnitId: string;\n\n /**\n * Array of possible object types\n */\n @Prop() readonly objectTypes: ObjectTypeData[];\n @Watch(\"objectTypes\")\n watchObjectTypesHandler(newState: ObjectTypeData[]) {\n this.#flattenObjectTypes(newState);\n }\n\n /**\n * Callback invoked when the user wants to access the export options.\n */\n // eslint-disable-next-line @stencil-community/decorators-style\n @Prop()\n readonly getDeploymentUnitObjectsCallback: GetDeploymentUnitObjectsCallback;\n\n /**\n * Callback invoked when the user wants to access the export options.\n */\n @Prop() readonly optionsCallback: OptionsCallback;\n\n /**\n * Callback invoked when user wants to start deploy process\n */\n @Prop() readonly deployCallback: DeployCallback;\n\n /**\n * Callback invoked when the user wants to add objects.\n */\n @Prop() readonly addObjectsCallback: AddObjectsCallback;\n\n /**\n * Callback invoked when the user wants to create a deployment unit.\n */\n @Prop() readonly createDeploymentUnitCallback: CreateDeploymentUnitCallback;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.selectedDeployTargetData = this.#getInitialSelectedTarget();\n this.allObjectTypes = [...this.objectTypes];\n this.#evaluateObjects();\n this.#flattenObjectTypes(this.allObjectTypes);\n if (this.deploymentUnits.length > 0) {\n this.#loadDeploymentUnits(this.deploymentUnits[0].id);\n\n if (this.targetTypes.length > 0 && this.optionsCallback) {\n this.optionsCallback(\n this.deploymentUnits[0].id,\n this.targetTypes[0].id\n );\n }\n }\n }\n\n componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n }\n\n #getInitialSelectedTarget = () => {\n if (this.defaultTargetTypeId) {\n const target = this.targetTypes.find(\n itTarget => itTarget.id === this.defaultTargetTypeId\n );\n if (target) {\n return target;\n }\n }\n return this.targetTypes[0];\n };\n\n #evaluateObjects = () => {\n this.noObjects = !!(this.treeModel?.length === 0 || !this.treeModel);\n };\n\n #handleGetDeploymentUnitObjectsCallback = async (ev: any) => {\n await this.#loadDeploymentUnits(ev.detail);\n this.#optionsCallbackHandler();\n };\n\n #loadDeploymentUnits = async (id: string) => {\n if (id === this.newDeploymentUnitId) {\n // New deployment unit should be created before executing the deploy action.\n return;\n }\n\n this.#currentDeploymentUnitId = id;\n\n const objectData = await this.getDeploymentUnitObjectsCallback(id);\n this.addedObjects = [...objectData];\n this.treeModel = createArrayOfItems(this.addedObjects, this.allObjectTypes);\n };\n\n #handleCreateDeploymentUnit = async () => {\n if (this.createDeploymentUnitCallback) {\n const deploymentUnitData = await this.createDeploymentUnitCallback();\n if (!deploymentUnitData) {\n return;\n }\n\n if (!this.deploymentUnits.find(du => du.id === deploymentUnitData.id)) {\n // Update deployment units:\n this.deploymentUnits.unshift(deploymentUnitData);\n\n // Update combo:\n const deploymentUnitComboBoxItem =\n this.#getComboModelItem(deploymentUnitData);\n\n const updatedDeploymentUnitsModel = [\n deploymentUnitComboBoxItem,\n ...this.#deploymentUnitsEl.model\n ];\n this.#deploymentUnitsEl.model = updatedDeploymentUnitsModel;\n }\n\n this.#deploymentUnitsEl.value = deploymentUnitData.id;\n\n // Trigger selection callback:\n await this.#loadDeploymentUnits(deploymentUnitData.id);\n }\n };\n\n #optionsCallbackHandler = () => {\n if (this.optionsCallback) {\n this.optionsCallback(\n this.#deploymentUnitsEl.value,\n this.#targetTypesEl.value\n );\n }\n };\n\n #addNewTypesToModel = () => {\n const allTypes: ObjectTypeData[] = [...this.allObjectTypes];\n\n this.addedObjects.forEach(addedObject => {\n const matchingType = this.allObjectTypes.find(\n objectType => objectType.id === addedObject.type\n );\n\n if (!matchingType) {\n allTypes.push({\n id: addedObject.type,\n name: addedObject.type,\n icon: \"\"\n });\n }\n });\n this.allObjectTypes = [...allTypes];\n };\n\n #addObjectsCallbackHandler = async () => {\n if (this.addObjectsCallback) {\n const objects: TypedObjectData[] = await this.addObjectsCallback();\n this.addedObjects = [...objects, ...this.addedObjects];\n\n this.#addNewTypesToModel();\n this.treeModel = createArrayOfItems(\n this.addedObjects,\n this.allObjectTypes\n );\n }\n };\n\n #deployCallbackHandler = async () => {\n if (this.#deploymentUnitsEl.value === this.newDeploymentUnitId) {\n await this.#handleCreateDeploymentUnit();\n }\n\n const data: DeployData = {\n targetId: this.#targetTypesEl.value,\n applicationServerId: this.#getApplicationServer(),\n displayName: this.#displayNameEl?.value,\n generatorId: this.#generatorEl?.value,\n onlyPackage: this.#onlyPackageCheckboxEl\n ? this.#onlyPackageCheckboxEl.value === CHECKBOX_CHECKED_VALUE\n : undefined,\n objects: this.checkedObjectsIds\n };\n\n if (this.deployCallback) {\n this.allowDeploy = false;\n await this.deployCallback(data);\n this.allowDeploy = true;\n }\n };\n\n #getApplicationServer = () => {\n if (this.#applicationServerEl?.value) {\n return this.#applicationServerEl.value;\n }\n return this.selectedDeployTargetData?.applicationServers.length > 0\n ? this.selectedDeployTargetData?.applicationServers[0].id\n : undefined;\n };\n\n #handleTargetTypesChange = (ev: any) => {\n const selectedId = ev.detail;\n\n this.selectedDeployTargetData =\n this.targetTypes.find(targetType => targetType.id === selectedId) || null;\n\n if (\n !this.selectedDeployTargetData.canCreatePackage &&\n this.#onlyPackageCheckboxEl.value === CHECKBOX_CHECKED_VALUE\n ) {\n this.#onlyPackageCheckboxEl.value = CHECKBOX_UNCHECKED_VALUE;\n }\n\n this.#optionsCallbackHandler();\n };\n\n #flattenObjectTypes(newState: ObjectTypeData[]) {\n newState.forEach(objectType => {\n this.#flattenedObjectTypeData.set(objectType.id, objectType);\n });\n }\n\n #objectsTreeCheckedItemsChangedHandler = (\n event: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n const allItemsWithCheckbox = [...event.detail.values()];\n\n this.checkedObjectsIds = allItemsWithCheckbox\n .filter(\n checkedItem =>\n checkedItem.item.checked && checkedItem.item.metadata === KB_OBJECT\n )\n .map(checkedItem => checkedItem.item.id);\n };\n\n #evaluateContentToDisplay = () => {\n if (this.noObjects) {\n return (\n <gx-ide-empty-state\n isAnimated={false}\n stateTitle={this.#componentLocale.main.noObjectsToDisplay}\n key=\"no-objects-empty-state\"\n stateIconSrc=\"objects/object\"\n ></gx-ide-empty-state>\n );\n }\n\n return (\n <ch-tree-view-render\n class=\"tree-view\"\n model={this.treeModel}\n dragDisabled={true}\n dropDisabled={true}\n toggleCheckboxes={true}\n showLines=\"last\"\n checked={true}\n checkbox={true}\n onCheckedItemsChange={this.#objectsTreeCheckedItemsChangedHandler}\n />\n );\n };\n\n #getComboModel = (baseCollection: ObjectBaseData[]): ComboBoxModel => {\n return baseCollection.map(obj => this.#getComboModelItem(obj));\n };\n\n #getComboModelItem = (\n baseCollectionItem: ObjectBaseData\n ): ComboBoxItemModel => {\n return {\n caption: baseCollectionItem.name,\n value: baseCollectionItem.id\n };\n };\n\n #renderComboSelector = (\n properties: ComboSelectorProperties,\n withField: boolean = false\n ) => {\n const controlId = properties.label.replace(/ /g, \"-\").toLowerCase();\n const labelClasses = `label ${controlId}`;\n const labelAndComboBox = [\n <label class={labelClasses} htmlFor={controlId}>\n {properties.label}\n </label>,\n <ch-combo-box-render\n class=\"combo-box\"\n value={\n properties.value ? properties.value : properties.baseModel[0]?.id\n }\n model={this.#getComboModel(properties.baseModel)}\n id={controlId}\n ref={properties.refCallback}\n onInput={properties.onInputCallback}\n />\n ];\n return withField ? (\n <div class=\"field field-inline\">{labelAndComboBox}</div>\n ) : (\n labelAndComboBox\n );\n };\n\n #renderHeader = () => {\n return (\n <div slot=\"header\" class=\"header control-header-with-border\">\n {this.#renderComboSelector(\n {\n id: \"deploymentUnits\",\n baseModel: this.deploymentUnits,\n label: this.#componentLocale.header.objectsToDeploy,\n value: this.#currentDeploymentUnitId,\n refCallback: (el: HTMLChComboBoxRenderElement) => {\n this.#deploymentUnitsEl = el as HTMLChComboBoxRenderElement;\n },\n onInputCallback: this.#handleGetDeploymentUnitObjectsCallback\n },\n true\n )}\n\n <button\n class=\"button-primary\"\n onClick={this.#addObjectsCallbackHandler}\n >\n {this.#componentLocale.main.addButton}\n </button>\n </div>\n );\n };\n\n #renderApplicationServerSelector = () => {\n return this.#renderComboSelector({\n id: \"application-servers\",\n baseModel: this.selectedDeployTargetData?.applicationServers,\n label: this.#componentLocale.main.applicationServer,\n refCallback: (el: HTMLChComboBoxRenderElement) => {\n this.#applicationServerEl = el as HTMLChComboBoxRenderElement;\n }\n });\n };\n\n #renderGeneratorSelector = () => {\n return this.#renderComboSelector({\n id: \"generator\",\n baseModel: this.selectedDeployTargetData?.generators,\n label: this.#componentLocale.main.generator,\n refCallback: (el: HTMLChComboBoxRenderElement) => {\n this.#generatorEl = el as HTMLChComboBoxRenderElement;\n }\n });\n };\n\n #renderTargetSelector = () => {\n return [\n this.#renderComboSelector({\n id: \"targetTypes\",\n baseModel: this.targetTypes,\n label: this.#componentLocale.main.targetTypes,\n value: this.selectedDeployTargetData\n ? this.selectedDeployTargetData.id\n : this.defaultTargetTypeId,\n refCallback: (el: HTMLChComboBoxRenderElement) => {\n this.#targetTypesEl = el as HTMLChComboBoxRenderElement;\n },\n onInputCallback: this.#handleTargetTypesChange\n }),\n <div class=\"target-types-button-checkbox-wrapper buttons-spacer\">\n <button\n class=\"button-tertiary button-icon-only\"\n onClick={this.#optionsCallbackHandler}\n >\n <ch-image class=\"icon-md\" src=\"system/settings/primary\" />\n </button>\n <ch-checkbox\n disabled={!this.selectedDeployTargetData?.canCreatePackage}\n class=\"checkbox\"\n caption={this.#componentLocale.main.onlyPackageLabel}\n part=\"only-package-checkbox\"\n checkedValue={CHECKBOX_CHECKED_VALUE}\n unCheckedValue={CHECKBOX_UNCHECKED_VALUE}\n value={CHECKBOX_UNCHECKED_VALUE}\n ref={(el: HTMLChCheckboxElement) =>\n (this.#onlyPackageCheckboxEl = el as HTMLChCheckboxElement)\n }\n />\n </div>\n ];\n };\n\n #renderDisplayNameInput = () => {\n return [\n <label class=\"label display-name\" htmlFor=\"display-name\">\n {this.#componentLocale.main.displayName}\n </label>,\n <ch-edit\n class=\"input\"\n id=\"display-name\"\n ref={(el: HTMLChEditElement) => {\n if (el) {\n this.#displayNameEl = el;\n }\n }}\n />\n ];\n };\n\n #renderFooter = () => {\n return (\n <div slot=\"footer-end\" class=\"footer control-footer-with-border\">\n <button\n class=\"button-primary\"\n onClick={this.#deployCallbackHandler}\n disabled={!this.allowDeploy}\n >\n {this.#componentLocale.main.deployButton}\n </button>\n </div>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget spacing-body\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n {this.#renderHeader()}\n\n <div class=\"container-wrapper\">{this.#evaluateContentToDisplay()}</div>\n <div class=\"deploy-properties\">\n {this.#renderTargetSelector()}\n\n {this.selectedDeployTargetData?.applicationServers?.length > 1 &&\n this.selectedDeployTargetData.canSelectApplicationServer\n ? this.#renderApplicationServerSelector()\n : []}\n\n {this.selectedDeployTargetData?.generators?.length > 0\n ? this.#renderGeneratorSelector()\n : []}\n\n <p class=\"body-italic-s target-type__description\">\n {this.selectedDeployTargetData?.description}\n </p>\n\n {this.selectedDeployTargetData?.canDefineDisplayName\n ? this.#renderDisplayNameInput()\n : []}\n </div>\n\n {this.#renderFooter()}\n </Host>\n );\n }\n}\n\ntype ComboSelectorProperties = {\n class?: string;\n id: string;\n baseModel: ObjectBaseData[];\n value?: string;\n label: string;\n refCallback: (el: HTMLChComboBoxRenderElement) => void;\n onInputCallback?: ((event: ChComboBoxRenderCustomEvent<string>) => void) &\n ((event: InputEvent) => void);\n};\n\nexport type AddObjectsCallback = () => Promise<TypedObjectData[]>;\nexport type OptionsCallback = (\n delpoymentUnitId: string,\n targetId: string\n) => Promise<void>;\nexport type GetDeploymentUnitObjectsCallback = (\n id: string\n) => Promise<TypedObjectData[]>;\n\nexport type DeployCallback = (data: DeployData) => Promise<boolean>;\n\nexport type CreateDeploymentUnitCallback = () => Promise<\n ObjectBaseData | undefined\n>;\n\nexport type ObjectTypeData = ObjectBaseData & {\n icon: string;\n};\n\nexport type DeployTargetData = ObjectBaseData & {\n canCreatePackage: boolean;\n canDefineDisplayName: boolean;\n canSelectApplicationServer: boolean;\n applicationServers: ObjectBaseData[];\n generators: ObjectBaseData[];\n description: string;\n};\n\nexport type TypedObjectData = ObjectBaseData & {\n type: string;\n};\n\nexport type DeployData = {\n targetId: string;\n applicationServerId?: string;\n displayName?: string;\n generatorId?: string;\n onlyPackage: boolean;\n objects: string[];\n};\n"],"version":3}
@@ -502,7 +502,7 @@ const GxIdeImportFromDesign = /*@__PURE__*/ proxyCustomElement(class GxIdeImport
502
502
  "spacing-body-block-start": true,
503
503
  "header--show-access-token": this.requiresAccessToken,
504
504
  "header--hide-access-token": !this.requiresAccessToken,
505
- "field-group-cols-2": true
505
+ "field-group-justified-start": true
506
506
  } }, h("label", {
507
507
  // path/url label
508
508
  class: "label path-url-label"