@genexus/genexus-ide-ui 0.0.30 → 0.0.32

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 (108) hide show
  1. package/dist/cjs/ch-action-group_2.cjs.entry.js +2 -9
  2. package/dist/cjs/ch-checkbox.cjs.entry.js +1 -1
  3. package/dist/cjs/ch-dropdown-item.cjs.entry.js +8 -8
  4. package/dist/cjs/ch-dropdown.cjs.entry.js +11 -10
  5. package/dist/cjs/ch-suggest_4.cjs.entry.js +1 -0
  6. package/dist/cjs/ch-test-action-group.cjs.entry.js +2 -2
  7. package/dist/cjs/ch-test-tree-x.cjs.entry.js +150 -80
  8. package/dist/cjs/ch-tree-x_3.cjs.entry.js +211 -132
  9. package/dist/cjs/ch-window_2.cjs.entry.js +28 -12
  10. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  11. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +3 -3
  12. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +17 -32
  13. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +16 -1
  14. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +33 -31
  15. package/dist/cjs/gxg-combo-box_6.cjs.entry.js +10 -4
  16. package/dist/cjs/gxg-date-picker.cjs.entry.js +4 -4
  17. package/dist/cjs/loader.cjs.js +1 -1
  18. package/dist/collection/components/team-dev-commit/team-dev-commit.js +12 -18
  19. package/dist/collection/components/team-dev-update/team-dev-update.js +75 -35
  20. package/dist/collection/components/team-dev-update-partial-selection/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.en.json +4 -2
  21. package/dist/collection/components/team-dev-update-partial-selection/team-dev-update-partial-selection.css +1 -0
  22. package/dist/collection/components/team-dev-update-partial-selection/team-dev-update-partial-selection.js +22 -46
  23. package/dist/collection/components/team-dev-update-to-revision/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.en.json +1 -1
  24. package/dist/collection/components/team-dev-update-to-revision/team-dev-update-to-revision.js +33 -1
  25. package/dist/components/action-group-item.js +1 -9
  26. package/dist/components/action-group.js +1 -1
  27. package/dist/components/ch-suggest2.js +1 -0
  28. package/dist/components/ch-test-action-group.js +2 -2
  29. package/dist/components/ch-test-tree-x.js +157 -83
  30. package/dist/components/ch-window2.js +31 -13
  31. package/dist/components/checkbox.js +1 -1
  32. package/dist/components/combo-box-item.js +2 -2
  33. package/dist/components/combo-box.js +8 -2
  34. package/dist/components/dropdown-item.js +8 -8
  35. package/dist/components/dropdown.js +11 -10
  36. package/dist/components/gx-ide-team-dev-commit.js +4 -4
  37. package/dist/components/gx-ide-team-dev-update-partial-selection.js +18 -33
  38. package/dist/components/gx-ide-team-dev-update-to-revision.js +17 -1
  39. package/dist/components/gx-ide-team-dev-update.js +36 -32
  40. package/dist/components/gxg-date-picker.js +4 -4
  41. package/dist/components/tree-x-list-item.js +31 -17
  42. package/dist/components/tree-x-list.js +9 -4
  43. package/dist/components/tree-x.js +182 -117
  44. package/dist/esm/ch-action-group_2.entry.js +2 -9
  45. package/dist/esm/ch-checkbox.entry.js +1 -1
  46. package/dist/esm/ch-dropdown-item.entry.js +8 -8
  47. package/dist/esm/ch-dropdown.entry.js +11 -10
  48. package/dist/esm/ch-suggest_4.entry.js +1 -0
  49. package/dist/esm/ch-test-action-group.entry.js +2 -2
  50. package/dist/esm/ch-test-tree-x.entry.js +150 -80
  51. package/dist/esm/ch-tree-x_3.entry.js +211 -132
  52. package/dist/esm/ch-window_2.entry.js +28 -12
  53. package/dist/esm/genexus-ide-ui.js +1 -1
  54. package/dist/esm/gx-ide-team-dev-commit.entry.js +3 -3
  55. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +17 -32
  56. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +16 -1
  57. package/dist/esm/gx-ide-team-dev-update.entry.js +33 -31
  58. package/dist/esm/gxg-combo-box_6.entry.js +10 -4
  59. package/dist/esm/gxg-date-picker.entry.js +4 -4
  60. package/dist/esm/loader.js +1 -1
  61. package/dist/genexus-ide-ui/genexus-ide-ui.css +1 -1
  62. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  63. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.en.json +4 -2
  64. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.en.json +1 -1
  65. package/dist/genexus-ide-ui/p-1b6b11e1.entry.js +1 -0
  66. package/dist/genexus-ide-ui/p-1fe05a05.entry.js +1 -0
  67. package/dist/genexus-ide-ui/p-24f47ee2.entry.js +1 -0
  68. package/dist/genexus-ide-ui/{p-54bab171.entry.js → p-28d0afda.entry.js} +1 -1
  69. package/dist/genexus-ide-ui/{p-6050cdba.entry.js → p-48412811.entry.js} +1 -1
  70. package/dist/genexus-ide-ui/p-714bd8ea.entry.js +1 -0
  71. package/dist/genexus-ide-ui/p-8592f072.entry.js +1 -0
  72. package/dist/genexus-ide-ui/p-8c2ab053.entry.js +1 -0
  73. package/dist/genexus-ide-ui/p-976e8118.entry.js +1 -0
  74. package/dist/genexus-ide-ui/p-a5463fc9.entry.js +1 -0
  75. package/dist/genexus-ide-ui/p-b2923298.entry.js +1 -0
  76. package/dist/genexus-ide-ui/p-bb1809cb.entry.js +1 -0
  77. package/dist/genexus-ide-ui/p-cf41f154.entry.js +1 -0
  78. package/dist/genexus-ide-ui/p-e8a21ed7.entry.js +1 -0
  79. package/dist/genexus-ide-ui/p-f794dc13.entry.js +1 -0
  80. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/action-group-item/action-group-item.css +0 -1
  81. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/checkbox/checkbox.css +5 -3
  82. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/dropdown/dropdown.css +15 -33
  83. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/dropdown-item/dropdown-item.css +0 -4
  84. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/test/test-tree-x.css +0 -10
  85. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-x/tree-x.css +20 -3
  86. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-x-list-item/tree-x-list-item.css +25 -8
  87. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/window/ch-window.css +51 -2
  88. package/dist/node_modules/@genexus/gemini/dist/collection/components/combo-box-item/combo-box-item.css +1 -1
  89. package/dist/types/common/types.d.ts +9 -0
  90. package/dist/types/components/team-dev-commit/team-dev-commit.d.ts +8 -15
  91. package/dist/types/components/team-dev-update/team-dev-update.d.ts +16 -13
  92. package/dist/types/components/team-dev-update-partial-selection/team-dev-update-partial-selection.d.ts +11 -14
  93. package/dist/types/components/team-dev-update-to-revision/team-dev-update-to-revision.d.ts +8 -0
  94. package/dist/types/components.d.ts +39 -19
  95. package/package.json +3 -3
  96. package/dist/genexus-ide-ui/p-097a3eeb.entry.js +0 -1
  97. package/dist/genexus-ide-ui/p-32b8abf6.entry.js +0 -1
  98. package/dist/genexus-ide-ui/p-3d9a4ede.entry.js +0 -1
  99. package/dist/genexus-ide-ui/p-4bbe1c18.entry.js +0 -1
  100. package/dist/genexus-ide-ui/p-53d36ef7.entry.js +0 -1
  101. package/dist/genexus-ide-ui/p-5c64c57f.entry.js +0 -1
  102. package/dist/genexus-ide-ui/p-5ff04ebe.entry.js +0 -1
  103. package/dist/genexus-ide-ui/p-6e80380b.entry.js +0 -1
  104. package/dist/genexus-ide-ui/p-757f8567.entry.js +0 -1
  105. package/dist/genexus-ide-ui/p-8d46f8d8.entry.js +0 -1
  106. package/dist/genexus-ide-ui/p-a0e85c2a.entry.js +0 -1
  107. package/dist/genexus-ide-ui/p-cda1623a.entry.js +0 -1
  108. package/dist/genexus-ide-ui/p-f8561da6.entry.js +0 -1
@@ -8,9 +8,35 @@ export class GxIdeTeamDevUpdate {
8
8
  constructor() {
9
9
  this.loadDataCalledFirstTime = false; // pending for update grid checkboxes, should be checked, after loadData has loaded objects for the first time.
10
10
  // 9.LOCAL METHODS //
11
+ this.onRowContextMenuHandler = (grid) => async (ev) => {
12
+ if (this.objectsContextMenuCallback) {
13
+ ev.preventDefault();
14
+ ev.stopPropagation();
15
+ let selection = [];
16
+ if (grid === "pending") {
17
+ selection = await this.chGridPendingForUpdateEl.getSelectedRows();
18
+ }
19
+ else if (grid === "ignored") {
20
+ selection = await this.chGridIgnoredObjectsEl.getSelectedRows();
21
+ }
22
+ else if (grid === "results") {
23
+ selection = await this.chGridResultsEl.getSelectedRows();
24
+ }
25
+ await this.objectsContextMenuCallback(grid, {
26
+ selection: selection,
27
+ clientX: ev.detail.clientX,
28
+ clientY: ev.detail.clientY
29
+ });
30
+ }
31
+ };
11
32
  this.markAllPendingToUpdateRows = () => {
12
33
  this.chGridPendingForUpdateEl.markAllRows();
13
34
  };
35
+ this.gridOnSelectionChangedCallbackHandler = (grid) => async (ev) => {
36
+ if (this.selectCallback) {
37
+ await this.selectCallback(grid, ev.detail.rowsId);
38
+ }
39
+ };
14
40
  this.renderOptions = () => {
15
41
  return (h("gxg-container", { part: "options-container" }, h("div", { class: "grid options-grid" }, h("gxg-container", { displayBorder: true, part: "options-update-from", containerTitle: this._componentLocale.options.updateFrom }, h("div", { class: "grid options-update-from-grid" }, h("gxg-text", { type: "text-regular" }, this._componentLocale.options.updateFrom, ":"), h("gxg-text", { type: "text-link", onClick: this.openServerCallback }, this.updateFrom ? this.updateFrom.serverUrl : ""), h("gxg-text", { type: "text-regular" }, this._componentLocale.options.knowledgeBase, ":"), h("gxg-text", { type: "text-regular" }, this.updateFrom ? this.updateFrom.kbName : ""), h("gxg-text", { type: "text-regular" }, this._componentLocale.options.version, ":"), h("gxg-text", { type: "text-regular" }, this.updateFrom ? this.updateFrom.versionName : ""), h("gxg-text", { type: "text-regular" }, this._componentLocale.options.lastFullUpdate, ":"), h("gxg-text", { type: "text-regular" }, this.updateFrom
16
42
  ? formatDate(this.updateFrom.lastFullUpdate)
@@ -29,13 +55,13 @@ export class GxIdeTeamDevUpdate {
29
55
  return (h("gxg-container", { part: "data-container" }, h("gxg-tabs", { id: "dataTabs", part: "data-tabs" }, h("gxg-tab-bar", { slot: "tab-bar-container" }, h("gxg-tab-button", { slot: "tab-bar", "tab-label": this._componentLocale.tabs.pendingForUpdate, tab: "pendingForUpdate", key: "pendingForUpdate", isSelected: true }), h("gxg-tab-button", { slot: "tab-bar", "tab-label": this._componentLocale.tabs.ignoredObjects, tab: "ignoredObjects", key: "ignoredObjects" }), h("gxg-tab-button", { slot: "tab-bar", "tab-label": this._componentLocale.tabs.results, tab: "results", key: "results", ref: (el) => (this.gxgTabButtonResultsEl = el) })), h("gxg-tab", { tab: "pendingForUpdate", key: "pendingForUpdate", isSelected: true }, this.renderPendingForUpdate()), h("gxg-tab", { tab: "ignoredObjects", key: "ignoredObjects" }, this.renderIgnoredObjects()), h("gxg-tab", { tab: "results", key: "results" }, this.renderResults()))));
30
56
  };
31
57
  this.renderPendingForUpdate = () => {
32
- return (h("gxg-grid", null, h("ch-grid", { "row-selection-mode": "none", ref: (el) => (this.chGridPendingForUpdateEl = el), part: "ch-grid-pending-for-updates", class: "no-border" }, h("ch-grid-columnset", null, h("ch-grid-column", { settingable: false, sortable: false, "column-type": "rich", richRowSelector: true, richRowSelectorMode: "mark" }), h("ch-grid-column", { settingable: false, sortable: false }), h("ch-grid-column", { settingable: false, sortable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.type, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.description, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.modifiedOn, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.status, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.action, settingable: false })), this.updateData.pendingForUpdate.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", { "cell-type": "rich", "row-selector": true }), h("ch-grid-cell", null, h("gxg-icon", { type: obj.typeIcon })), h("ch-grid-cell", null, " ", this.renderIconState(obj.state), " "), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.type, " "), h("ch-grid-cell", null, " ", obj.description, " "), h("ch-grid-cell", null, `${formatDate(obj.modifiedOn)}`), h("ch-grid-cell", null, " ", obj.status, " "), h("ch-grid-cell", null, " ", obj.action, " ")))))));
58
+ return (h("gxg-grid", null, h("ch-grid", { "row-selection-mode": "multiple", ref: (el) => (this.chGridPendingForUpdateEl = el), part: "ch-grid-pending-for-updates", class: "no-border", onRowContextMenu: this.onRowContextMenuHandler("pending"), onSelectionChanged: this.gridOnSelectionChangedCallbackHandler("pending") }, h("ch-grid-columnset", null, h("ch-grid-column", { settingable: false, sortable: false, "column-type": "rich", richRowSelector: true, richRowSelectorMode: "mark" }), h("ch-grid-column", { settingable: false, sortable: false }), h("ch-grid-column", { settingable: false, sortable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.type, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.description, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.modifiedOn, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.status, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.action, settingable: false })), this.updateData.pendingForUpdate.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", { "cell-type": "rich", "row-selector": true }), h("ch-grid-cell", null, h("gxg-icon", { type: obj.typeIcon, color: "auto" })), h("ch-grid-cell", null, " ", this.renderIconState(obj.state), " "), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.type, " "), h("ch-grid-cell", null, " ", obj.description, " "), h("ch-grid-cell", null, `${formatDate(obj.modifiedOn)}`), h("ch-grid-cell", null, " ", obj.status, " "), h("ch-grid-cell", null, " ", obj.action, " ")))))));
33
59
  };
34
60
  this.renderIgnoredObjects = () => {
35
- return (h("gxg-grid", null, h("ch-grid", { "row-selection-mode": "multiple", ref: (el) => (this.chGridIgnoredObjectsEl = el), part: "ch-grid-ignored-objects", class: "no-border" }, h("ch-grid-columnset", null, h("ch-grid-column", { settingable: false, sortable: false, size: "min-content" }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, settingable: false, size: "1fr" }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.type, settingable: false, size: "1fr" })), this.updateData.ignoredObjects.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", null, h("gxg-icon", { type: obj.typeIcon })), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.type, " ")))))));
61
+ return (h("gxg-grid", null, h("ch-grid", { "row-selection-mode": "multiple", ref: (el) => (this.chGridIgnoredObjectsEl = el), part: "ch-grid-ignored-objects", class: "no-border", onRowContextMenu: this.onRowContextMenuHandler("ignored"), onSelectionChanged: this.gridOnSelectionChangedCallbackHandler("ignored") }, h("ch-grid-columnset", null, h("ch-grid-column", { settingable: false, sortable: false, size: "min-content" }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, settingable: false, size: "1fr" }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.type, settingable: false, size: "1fr" })), this.updateData.ignoredObjects.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", null, h("gxg-icon", { type: obj.typeIcon, color: "auto" })), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.type, " ")))))));
36
62
  };
37
63
  this.renderResults = () => {
38
- return (h("gxg-grid", null, h("ch-grid", { "row-selection-mode": "multiple", ref: (el) => (this.chGridResultsEl = el), part: "ch-grid-results", class: "no-border" }, h("ch-grid-columnset", null, h("ch-grid-column", { settingable: false, sortable: false, "column-type": "tree" }), h("ch-grid-column", { settingable: false, sortable: false }), h("ch-grid-column", { settingable: false, sortable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.type, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.description, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.notes, settingable: false })), this.updateResultData.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", null, " ", this.renderIconResult(obj.result), " "), h("ch-grid-cell", null, h("gxg-icon", { type: obj.typeIcon })), h("ch-grid-cell", null, " ", this.renderIconState(obj.state), " "), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.type, " "), h("ch-grid-cell", null, " ", obj.description, " "), h("ch-grid-cell", null, " ", obj.notes, " "), h("ch-grid-rowset", null, obj.messages.map(msg => {
64
+ return (h("gxg-grid", null, h("ch-grid", { "row-selection-mode": "multiple", ref: (el) => (this.chGridResultsEl = el), part: "ch-grid-results", class: "no-border", onRowContextMenu: this.onRowContextMenuHandler("results"), onSelectionChanged: this.gridOnSelectionChangedCallbackHandler("results") }, h("ch-grid-columnset", null, h("ch-grid-column", { settingable: false, sortable: false, "column-type": "tree" }), h("ch-grid-column", { settingable: false, sortable: false }), h("ch-grid-column", { settingable: false, sortable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.type, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.description, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.notes, settingable: false })), this.updateResultData.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", null, " ", this.renderIconResult(obj.result), " "), h("ch-grid-cell", null, h("gxg-icon", { type: obj.typeIcon, color: "auto" })), h("ch-grid-cell", null, " ", this.renderIconState(obj.state), " "), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.type, " "), h("ch-grid-cell", null, " ", obj.description, " "), h("ch-grid-cell", null, " ", obj.notes, " "), h("ch-grid-rowset", null, obj.messages.map(msg => {
39
65
  let msgType;
40
66
  switch (msg.type) {
41
67
  case "info":
@@ -142,38 +168,13 @@ export class GxIdeTeamDevUpdate {
142
168
  });
143
169
  }
144
170
  };
145
- this.addListeners = async () => {
146
- // for pending-for-update grid events
147
- if (this.updateData.pendingForUpdate) {
148
- this.chGridPendingForUpdateEl.addEventListener("contextmenu", async (ev) => {
149
- ev.preventDefault();
150
- ev.stopPropagation();
151
- const pendingForUpdateMarked = await this.chGridPendingForUpdateEl.getMarkedRows();
152
- this.gridContextMenuCallback(pendingForUpdateMarked, "update");
153
- });
154
- }
155
- // for ignored-objects grid events
156
- this.chGridIgnoredObjectsEl.addEventListener("contextmenu", async (ev) => {
157
- ev.preventDefault();
158
- ev.stopPropagation();
159
- const ignoredObjectsSelected = await this.chGridIgnoredObjectsEl.getSelectedRows();
160
- this.gridContextMenuCallback(ignoredObjectsSelected, "ignored");
161
- });
162
- // for results grid events
163
- this.chGridResultsEl.addEventListener("contextmenu", async (ev) => {
164
- ev.preventDefault();
165
- ev.stopPropagation();
166
- const resultsObjectsSelected = await this.chGridResultsEl.getMarkedRows();
167
- this.gridContextMenuCallback(resultsObjectsSelected, "results");
168
- });
169
- };
170
171
  this.pendingForUpdatesRowMarkingChangedHandler = async (e) => {
171
172
  // remove "rowMarkingChanged" until checkboxes have been added/removed on togglePendingCommitsCheckboxes, to prevent loops.
172
173
  this.chGridPendingForUpdateEl.removeEventListener("rowMarkingChanged", this.pendingForUpdatesRowMarkingChangedHandler);
173
174
  if (this.chGridPendingForUpdateEl) {
174
175
  const addedRowsIds = e.detail.addedRowsId;
175
176
  const removedRowsId = e.detail.removedRowsId;
176
- const pendingItemCheckedResult = await this.pendingItemCheckedCallback({
177
+ const pendingItemCheckedResult = await this.pendingItemsCheckedCallback({
177
178
  itemsChecked: addedRowsIds,
178
179
  itemsUnchecked: removedRowsId
179
180
  });
@@ -227,8 +228,10 @@ export class GxIdeTeamDevUpdate {
227
228
  this.loadCallback = undefined;
228
229
  this.objectsScopeCallback = undefined;
229
230
  this.openServerCallback = undefined;
230
- this.pendingItemCheckedCallback = undefined;
231
+ this.pendingItemsCheckedCallback = undefined;
231
232
  this.revisionScopeCallback = undefined;
233
+ this.objectsContextMenuCallback = undefined;
234
+ this.selectCallback = undefined;
232
235
  this.types = undefined;
233
236
  this.updateCallback = undefined;
234
237
  this.updateFrom = undefined;
@@ -240,7 +243,6 @@ export class GxIdeTeamDevUpdate {
240
243
  }
241
244
  async componentDidLoad() {
242
245
  await this.loadData();
243
- this.addListeners();
244
246
  }
245
247
  async componentDidRender() {
246
248
  if (this.loadDataCalledFirstTime) {
@@ -374,14 +376,14 @@ export class GxIdeTeamDevUpdate {
374
376
  "text": "This is a function provided by the developer to call when the user clicked in server url of Update From group."
375
377
  }
376
378
  },
377
- "pendingItemCheckedCallback": {
379
+ "pendingItemsCheckedCallback": {
378
380
  "type": "unknown",
379
381
  "mutable": false,
380
382
  "complexType": {
381
- "original": "PendingItemCheckedCallback",
382
- "resolved": "(pendingItemsCheckedState: PendingItemsCheckedState) => Promise<PendingItemCheckedResult>",
383
+ "original": "PendingItemsCheckedCallback",
384
+ "resolved": "(pendingItemsCheckedState: ItemsCheckedState) => Promise<ItemsCheckedResult>",
383
385
  "references": {
384
- "PendingItemCheckedCallback": {
386
+ "PendingItemsCheckedCallback": {
385
387
  "location": "local"
386
388
  }
387
389
  }
@@ -412,6 +414,44 @@ export class GxIdeTeamDevUpdate {
412
414
  "text": "This is a function provided by the developer to call when the user wants to select the revision to work on."
413
415
  }
414
416
  },
417
+ "objectsContextMenuCallback": {
418
+ "type": "unknown",
419
+ "mutable": false,
420
+ "complexType": {
421
+ "original": "ObjectsContextMenuCallback",
422
+ "resolved": "(source: UpdateSourceType, contextMenuInfo: ContextMenuInfo) => Promise<void>",
423
+ "references": {
424
+ "ObjectsContextMenuCallback": {
425
+ "location": "local"
426
+ }
427
+ }
428
+ },
429
+ "required": true,
430
+ "optional": false,
431
+ "docs": {
432
+ "tags": [],
433
+ "text": "Callback that should be invoked when the user activates the context menu on any of the grids. It receives the internal IDs of the selected elements and in which grid the event occurred. It should prevent the default browser context menu from appearing"
434
+ }
435
+ },
436
+ "selectCallback": {
437
+ "type": "unknown",
438
+ "mutable": false,
439
+ "complexType": {
440
+ "original": "UpdateSelectCallback",
441
+ "resolved": "(grid: UpdateSourceType, selectionIds: string[]) => Promise<void>",
442
+ "references": {
443
+ "UpdateSelectCallback": {
444
+ "location": "local"
445
+ }
446
+ }
447
+ },
448
+ "required": false,
449
+ "optional": false,
450
+ "docs": {
451
+ "tags": [],
452
+ "text": "Callback that should be invoked when the user selects rows from the grids"
453
+ }
454
+ },
415
455
  "types": {
416
456
  "type": "unknown",
417
457
  "mutable": false,
@@ -1,6 +1,8 @@
1
1
  {
2
2
  "name": "Name",
3
3
  "title": "Partial Selection",
4
+ "addObject": "Add",
5
+ "removeObject": "Remove",
4
6
  "tableHead": {
5
7
  "name": "Name",
6
8
  "type": "Type",
@@ -8,8 +10,8 @@
8
10
  "modifiedOn": "Modified On"
9
11
  },
10
12
  "footer": {
11
- "btnClear": "Clear",
12
- "btnOk": "Confirm",
13
+ "btnDeselectAll": "Deselect All",
14
+ "btnConfirm": "Confirm",
13
15
  "btnCancel": "Cancel"
14
16
  }
15
17
  }
@@ -133,6 +133,7 @@
133
133
  display: flex;
134
134
  align-items: center;
135
135
  justify-content: flex-end;
136
+ gap: var(--gx-ide-grid-row-gap);
136
137
  }
137
138
 
138
139
  /* Objects Table */
@@ -6,41 +6,36 @@ import { Locale } from "../../common/locale";
6
6
  export class GxIdeTeamDevUpdatePartialSelection {
7
7
  constructor() {
8
8
  // 9.LOCAL METHODS //
9
- this.handleKeyDownEvent = (add) => {
10
- if (add) {
11
- document.addEventListener("keydown", this.keyDownEventHandler);
12
- }
13
- else {
14
- document.removeEventListener("keydown", this.keyDownEventHandler);
15
- }
16
- };
17
- this.keyDownEventHandler = (e) => {
18
- console.log(e.detail);
19
- };
20
9
  this.renderObjects = () => {
21
- return (h("gxg-grid", null, h("ch-grid", { "row-selection-mode": "multiple", ref: (el) => (this.chGridEl = el), part: "ch-grid-objects" }, h("ch-grid-columnset", null, h("ch-grid-column", { columnName: "", settingable: false, sortable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.type, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.description, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.modifiedOn, settingable: false })), this.selection.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", null, h("gxg-icon", { type: obj.typeIcon })), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.type, " "), h("ch-grid-cell", null, " ", obj.description, " "), h("ch-grid-cell", null, `${obj.modifiedOn.toISOString().slice(0, 10)}`)))))));
10
+ return (h("gxg-grid", null, h("ch-grid", { "row-selection-mode": "multiple", ref: (el) => (this.chGridEl = el), part: "ch-grid-objects" }, h("ch-grid-columnset", null, h("ch-grid-column", { columnName: "", settingable: false, sortable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.type, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.description, settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.modifiedOn, settingable: false })), this.selection.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", null, h("gxg-icon", { type: obj.typeIcon, color: "auto" })), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.type, " "), h("ch-grid-cell", null, " ", obj.description, " "), h("ch-grid-cell", null, `${obj.modifiedOn.toISOString().slice(0, 10)}`)))))));
22
11
  };
23
- this.getObjects = () => {
12
+ this.getObjectsHandler = () => {
24
13
  this.addCallback().then((items) => {
25
14
  if ((items === null || items === void 0 ? void 0 : items.length) > 0) {
26
15
  this.selection = [...this.selection, ...items];
27
16
  this.selectedObjectsIds = [];
28
- this.deselectAll();
17
+ this.deselectAllHandler();
29
18
  }
30
19
  });
31
20
  };
32
- this.removeObjects = () => {
21
+ this.removeObjectsHandler = () => {
33
22
  this.selection = this.selection.filter(item => !this.selectedObjectsIds.includes(item.id));
34
23
  this.selectedObjectsIds = [];
35
- this.deselectAll();
24
+ this.deselectAllHandler();
36
25
  };
37
- this.confirm = () => {
38
- this.confirmCallback(this.selectedObjectsIds);
26
+ this.confirmHandler = () => {
27
+ if (this.confirmCallback) {
28
+ const allRowsIds = [];
29
+ this.selection.forEach(row => {
30
+ allRowsIds.push(row.id);
31
+ });
32
+ this.confirmCallback(allRowsIds);
33
+ }
39
34
  };
40
- this.cancel = () => {
35
+ this.cancelHandler = () => {
41
36
  this.cancelCallback();
42
37
  };
43
- this.deselectAll = () => {
38
+ this.deselectAllHandler = () => {
44
39
  this.chGridEl.selectAllRows(false);
45
40
  };
46
41
  this.listenChanges = () => {
@@ -59,21 +54,11 @@ export class GxIdeTeamDevUpdatePartialSelection {
59
54
  async componentWillLoad() {
60
55
  this._componentLocale = await Locale.getComponentStrings(this.el);
61
56
  this.componentDidLoadEvent.emit(true);
62
- this.handleKeyDownEvent(true);
63
57
  }
64
58
  componentDidLoad() {
65
59
  this.listenChanges();
66
60
  }
67
61
  // 7.LISTENERS //
68
- keyDownHandler(eventInfo) {
69
- if (document.activeElement === this.el) {
70
- switch (eventInfo.key) {
71
- case "Delete":
72
- this.removeObjects();
73
- break;
74
- }
75
- }
76
- }
77
62
  // 8.PUBLIC METHODS API //
78
63
  /**
79
64
  * Validate necessary data input
@@ -86,7 +71,7 @@ export class GxIdeTeamDevUpdatePartialSelection {
86
71
  render() {
87
72
  return (h(Host, { class: {
88
73
  "gxi-team-dev-update-partial-selection": true
89
- } }, h("div", { class: `main-wrapper` }, h("gxg-container", { containerTitle: this._componentLocale.title }, h("div", { class: "top-actions" }, h("gxg-button", { id: "button-add", type: "secondary-icon-only", icon: "gemini-tools/add-circle", onClick: this.getObjects, part: "gxg-button gxg-button--add" }), h("gxg-button", { id: "button-remove", type: "secondary-icon-only", icon: "gemini-tools/minus-circle", onClick: this.removeObjects, part: "gxg-button gxg-button--remove" })), this.renderObjects(), h("gxg-container", { displayBorderTop: true }, h("div", { class: "grid actions" }, h("div", null, h("gxg-button", { id: "button-clear", type: "primary-text-only", onClick: this.deselectAll, part: "gxg-button gxg-button--clear" }, this._componentLocale.footer.btnClear)), h("div", null, h("gxg-button", { id: "button-ok", type: "primary-text-only", onClick: this.confirm, part: "gxg-button gxg-button--ok" }, this._componentLocale.footer.btnOk), h("gxg-button", { id: "button-cancel", type: "outlined", onClick: this.cancel, part: "gxg-button gxg-button--cancel" }, this._componentLocale.footer.btnCancel))))))));
74
+ } }, h("div", { class: `main-wrapper` }, h("gxg-container", { containerTitle: this._componentLocale.title }, h("div", { class: "top-actions" }, h("gxg-button", { id: "button-add", type: "outlined", onClick: this.getObjectsHandler, part: "add" }, this._componentLocale.addObject), h("gxg-button", { id: "button-remove", type: "outlined", onClick: this.removeObjectsHandler, part: "remove", disabled: !(this.selectedObjectsIds.length > 0) }, this._componentLocale.removeObject)), this.renderObjects(), h("gxg-container", { displayBorderTop: true }, h("div", { class: "grid actions" }, h("div", null, h("gxg-button", { id: "button-clear", type: "outlined", onClick: this.deselectAllHandler, part: "clear", disabled: !(this.selectedObjectsIds.length > 0) }, this._componentLocale.footer.btnDeselectAll)), h("div", null, h("gxg-button", { id: "button-ok", type: "primary-text-only", onClick: this.confirmHandler, part: "confirm" }, this._componentLocale.footer.btnConfirm), h("gxg-button", { id: "button-cancel", type: "outlined", onClick: this.cancelHandler, part: "cancel" }, this._componentLocale.footer.btnCancel))))))));
90
75
  }
91
76
  static get is() { return "gx-ide-team-dev-update-partial-selection"; }
92
77
  static get encapsulation() { return "shadow"; }
@@ -107,10 +92,10 @@ export class GxIdeTeamDevUpdatePartialSelection {
107
92
  "type": "unknown",
108
93
  "mutable": false,
109
94
  "complexType": {
110
- "original": "AddCallbackFn",
95
+ "original": "AddCallback",
111
96
  "resolved": "() => Promise<ObjectData[]>",
112
97
  "references": {
113
- "AddCallbackFn": {
98
+ "AddCallback": {
114
99
  "location": "local"
115
100
  }
116
101
  }
@@ -126,10 +111,10 @@ export class GxIdeTeamDevUpdatePartialSelection {
126
111
  "type": "unknown",
127
112
  "mutable": false,
128
113
  "complexType": {
129
- "original": "CancelCallbackFn",
114
+ "original": "CancelCallback",
130
115
  "resolved": "() => Promise<void>",
131
116
  "references": {
132
- "CancelCallbackFn": {
117
+ "CancelCallback": {
133
118
  "location": "local"
134
119
  }
135
120
  }
@@ -145,10 +130,10 @@ export class GxIdeTeamDevUpdatePartialSelection {
145
130
  "type": "unknown",
146
131
  "mutable": false,
147
132
  "complexType": {
148
- "original": "ConfirmCallbackFn",
133
+ "original": "ConfirmCallback",
149
134
  "resolved": "(ids: string[]) => Promise<void>",
150
135
  "references": {
151
- "ConfirmCallbackFn": {
136
+ "ConfirmCallback": {
152
137
  "location": "local"
153
138
  }
154
139
  }
@@ -226,13 +211,4 @@ export class GxIdeTeamDevUpdatePartialSelection {
226
211
  };
227
212
  }
228
213
  static get elementRef() { return "el"; }
229
- static get listeners() {
230
- return [{
231
- "name": "keydown",
232
- "method": "keyDownHandler",
233
- "target": undefined,
234
- "capture": false,
235
- "passive": true
236
- }];
237
- }
238
214
  }
@@ -5,7 +5,7 @@
5
5
  "updateToRevision": "Update to Revision #"
6
6
  },
7
7
  "footer": {
8
- "btnOk": "Ok",
8
+ "btnUpdate": "Update",
9
9
  "btnCancel": "Cancel"
10
10
  }
11
11
  }
@@ -6,6 +6,14 @@ import { Locale } from "../../common/locale";
6
6
  export class GxIdeTeamDevUpdateToRevision {
7
7
  constructor() {
8
8
  // 9.LOCAL METHODS //
9
+ this.setInitialCheckedRadio = () => {
10
+ if (this.currentRevision === undefined) {
11
+ this.updateToLatestEl.checked = true;
12
+ }
13
+ else {
14
+ this.updateToRevisionEl.checked = true;
15
+ }
16
+ };
9
17
  this.confirm = () => {
10
18
  let revision = undefined;
11
19
  if (this.updateToRevisionEl.checked) {
@@ -16,13 +24,20 @@ export class GxIdeTeamDevUpdateToRevision {
16
24
  this.cancel = () => {
17
25
  this.cancelCallback();
18
26
  };
27
+ this.updateToRevisionOnFocusHandler = () => {
28
+ this.updateToRevisionEl.checked = true;
29
+ };
19
30
  this.cancelCallback = undefined;
20
31
  this.confirmCallback = undefined;
32
+ this.currentRevision = undefined;
21
33
  }
22
34
  // 6.COMPONENT LIFECYCLE EVENTS //
23
35
  async componentWillLoad() {
24
36
  this._componentLocale = await Locale.getComponentStrings(this.el);
37
+ }
38
+ componentDidLoad() {
25
39
  this.componentDidLoadEvent.emit(true);
40
+ this.setInitialCheckedRadio();
26
41
  }
27
42
  // 7.LISTENERS //
28
43
  // 8.PUBLIC METHODS API //
@@ -37,7 +52,7 @@ export class GxIdeTeamDevUpdateToRevision {
37
52
  render() {
38
53
  return (h(Host, { class: {
39
54
  "gxi-team-dev-update-to-revision": true
40
- } }, h("div", { class: `main-wrapper` }, h("gxg-container", null, h("gxg-form-radio-group", null, h("gxg-form-radio", { label: this._componentLocale.options.updateToLatest, value: "updateToLatest", part: "radio-to-latest" }), h("div", { class: "revision-number" }, h("gxg-form-radio", { label: this._componentLocale.options.updateToRevision, value: "updateToRevision", ref: (el) => (this.updateToRevisionEl = el), part: "radio-to-revision" }), h("gxg-form-text", { ref: (el) => (this.revisionNumberEl = el), part: "revision-number" })))), h("gxg-container", { displayBorderTop: true }, h("div", { class: "actions" }, h("gxg-button", { id: "button-ok", type: "primary-text-only", onClick: this.confirm, part: "gxg-button gxg-button--ok" }, this._componentLocale.footer.btnOk), h("gxg-button", { id: "button-cancel", type: "outlined", onClick: this.cancel, part: "gxg-button gxg-button--cancel" }, this._componentLocale.footer.btnCancel))))));
55
+ } }, h("div", { class: `main-wrapper` }, h("gxg-container", null, h("gxg-form-radio-group", null, h("gxg-form-radio", { label: this._componentLocale.options.updateToLatest, value: "updateToLatest", ref: (el) => (this.updateToLatestEl = el), part: "radio-to-latest" }), h("div", { class: "revision-number" }, h("gxg-form-radio", { label: this._componentLocale.options.updateToRevision, value: "updateToRevision", ref: (el) => (this.updateToRevisionEl = el), part: "radio-to-revision" }), h("gxg-form-text", { ref: (el) => (this.revisionNumberEl = el), onFocus: this.updateToRevisionOnFocusHandler, value: this.currentRevision, part: "revision-number" })))), h("gxg-container", { displayBorderTop: true }, h("div", { class: "actions" }, h("gxg-button", { id: "button-ok", type: "primary-text-only", onClick: this.confirm, part: "update" }, this._componentLocale.footer.btnUpdate), h("gxg-button", { id: "button-cancel", type: "outlined", onClick: this.cancel, part: "cancel" }, this._componentLocale.footer.btnCancel))))));
41
56
  }
42
57
  static get is() { return "gx-ide-team-dev-update-to-revision"; }
43
58
  static get encapsulation() { return "shadow"; }
@@ -91,6 +106,23 @@ export class GxIdeTeamDevUpdateToRevision {
91
106
  "tags": [],
92
107
  "text": "This is a function provided by the developer and is invoked when the action confirm is executed passing the selected objects of the grid"
93
108
  }
109
+ },
110
+ "currentRevision": {
111
+ "type": "string",
112
+ "mutable": false,
113
+ "complexType": {
114
+ "original": "string | undefined",
115
+ "resolved": "string",
116
+ "references": {}
117
+ },
118
+ "required": false,
119
+ "optional": false,
120
+ "docs": {
121
+ "tags": [],
122
+ "text": "Set an initial value for the review"
123
+ },
124
+ "attribute": "current-revision",
125
+ "reflect": false
94
126
  }
95
127
  };
96
128
  }
@@ -1,15 +1,11 @@
1
1
  import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
2
 
3
- const actionGroupItemCss = "ch-action-group-item[floating]{position:absolute;visibility:hidden}";
3
+ const actionGroupItemCss = "ch-action-group-item[floating]{visibility:hidden}";
4
4
 
5
5
  const ChActionGroupItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
6
  constructor() {
7
7
  super();
8
8
  this.__registerHost();
9
- /**
10
- * `true` to ignore the floating property value.
11
- */
12
- this.avoidFloating = false;
13
9
  /**
14
10
  * `true` if the control is floating. Useful to implement the
15
11
  * `"ResponsiveCollapse"` value for the `itemsOverflowBehavior` property of
@@ -18,9 +14,6 @@ const ChActionGroupItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLEle
18
14
  this.floating = false;
19
15
  }
20
16
  componentWillLoad() {
21
- if (this.avoidFloating) {
22
- return;
23
- }
24
17
  const parentAction = this.el.closest("ch-action-group");
25
18
  // Hide items at the start to improve CLS
26
19
  if (parentAction) {
@@ -34,7 +27,6 @@ const ChActionGroupItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLEle
34
27
  get el() { return this; }
35
28
  static get style() { return actionGroupItemCss; }
36
29
  }, [4, "ch-action-group-item", {
37
- "avoidFloating": [4, "avoid-floating"],
38
30
  "floating": [1540]
39
31
  }]);
40
32
  function defineCustomElement() {
@@ -127,7 +127,7 @@ const ChActionGroup = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
127
127
  }
128
128
  connectActionsContainerObserver() {
129
129
  this.actionsContainerWatcher = new ResizeObserver(this.updateDisplayedActionInFrame);
130
- this.actionsContainerWatcher.observe(this.el);
130
+ this.actionsContainerWatcher.observe(this.actionsContainer);
131
131
  }
132
132
  disconnectActionsObserver() {
133
133
  if (this.actionsWatcher) {
@@ -126,6 +126,7 @@ const ChSuggest = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
126
126
  */
127
127
  this.handleInput = (e) => {
128
128
  const inputValue = e.target.value;
129
+ this.caption = inputValue;
129
130
  if (this.timeoutReference) {
130
131
  clearTimeout(this.timeoutReference);
131
132
  }
@@ -58,7 +58,7 @@ const ChTestActionGroup$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLE
58
58
  (this.displayedItemsCount === -1 || index < this.displayedItemsCount) &&
59
59
  item.items != null &&
60
60
  item.items.map(this.renderItem)));
61
- this.firstLevelRenderCollapsedItem = (item) => (h("ch-dropdown-item", { id: item.id, class: item.class, expandBehavior: this.expandBehavior, href: item.target, leftImgSrc: item.leftIcon, openOnFocus: this.openOnFocus, position: item.responsiveCollapsePosition || "OutsideEnd_InsideStart", rightImgSrc: item.rightIcon }, item.title, item.items != null && item.items.map(this.renderItem)));
61
+ this.firstLevelRenderCollapsedItem = (item) => (h("ch-dropdown-item", { slot: "more-items", id: item.id, class: item.class, expandBehavior: this.expandBehavior, href: item.target, leftImgSrc: item.leftIcon, openOnFocus: this.openOnFocus, position: item.responsiveCollapsePosition || "OutsideEnd_InsideStart", rightImgSrc: item.rightIcon }, item.title, item.items != null && item.items.map(this.renderItem)));
62
62
  this.handleDisplayedItemsCountChange = (event) => {
63
63
  this.displayedItemsCount = event.detail;
64
64
  };
@@ -74,7 +74,7 @@ const ChTestActionGroup$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLE
74
74
  this.itemsModel
75
75
  .filter((_, index) => this.displayedItemsCount !== -1 &&
76
76
  index >= this.displayedItemsCount)
77
- .map(item => (h("ch-action-group-item", { slot: "more-items", avoidFloating: true }, this.firstLevelRenderCollapsedItem(item)))))));
77
+ .map(this.firstLevelRenderCollapsedItem))));
78
78
  }
79
79
  static get style() { return testActionGroupCss; }
80
80
  }, [0, "ch-test-action-group", {