@genexus/genexus-ide-ui 1.1.40 → 1.1.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-server-selector.cjs.entry.js +12 -28
  3. package/dist/cjs/gx-ide-server-selector.cjs.entry.js.map +1 -1
  4. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +20 -4
  5. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +99 -238
  7. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +60 -10
  9. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-ww-files.cjs.entry.js +1 -9
  11. package/dist/cjs/gx-ide-ww-files.cjs.entry.js.map +1 -1
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/tabular-grid-column-sort-5ca06dc1.js +43 -0
  14. package/dist/cjs/tabular-grid-column-sort-5ca06dc1.js.map +1 -0
  15. package/dist/cjs/tabular-grid-render-4350dbaf.js +223 -0
  16. package/dist/cjs/tabular-grid-render-4350dbaf.js.map +1 -0
  17. package/dist/cjs/uncheck-ignored-77ca69fe.js +43 -0
  18. package/dist/cjs/uncheck-ignored-77ca69fe.js.map +1 -0
  19. package/dist/collection/common/chameleon/tabular-grid-column-sort.js +39 -0
  20. package/dist/collection/common/chameleon/tabular-grid-column-sort.js.map +1 -0
  21. package/dist/collection/components/team-dev/bring-changes/bring-changes.js +18 -4
  22. package/dist/collection/components/team-dev/bring-changes/bring-changes.js.map +1 -1
  23. package/dist/collection/components/team-dev/server-selector/server-selector.css +18 -14
  24. package/dist/collection/components/team-dev/server-selector/server-selector.js +11 -27
  25. package/dist/collection/components/team-dev/server-selector/server-selector.js.map +1 -1
  26. package/dist/collection/components/team-dev/update/update.css +1 -0
  27. package/dist/collection/components/team-dev/update/update.js +62 -9
  28. package/dist/collection/components/team-dev/update/update.js.map +1 -1
  29. package/dist/collection/components/team-dev/version-control/commit/commit.css +1 -0
  30. package/dist/collection/components/team-dev/version-control/commit/commit.js +79 -20
  31. package/dist/collection/components/team-dev/version-control/commit/commit.js.map +1 -1
  32. package/dist/collection/components/team-dev/version-control/common/are-sets-equal.js +21 -0
  33. package/dist/collection/components/team-dev/version-control/common/are-sets-equal.js.map +1 -0
  34. package/dist/collection/components/team-dev/version-control/common/tabular-grid-render.js +13 -3
  35. package/dist/collection/components/team-dev/version-control/common/tabular-grid-render.js.map +1 -1
  36. package/dist/collection/components/team-dev/version-control/common/uncheck-ignored.js +18 -0
  37. package/dist/collection/components/team-dev/version-control/common/uncheck-ignored.js.map +1 -0
  38. package/dist/collection/components/ww-files/ww-files.js +1 -9
  39. package/dist/collection/components/ww-files/ww-files.js.map +1 -1
  40. package/dist/components/gx-ide-server-selector.js +12 -28
  41. package/dist/components/gx-ide-server-selector.js.map +1 -1
  42. package/dist/components/gx-ide-team-dev-bring-changes.js +18 -4
  43. package/dist/components/gx-ide-team-dev-bring-changes.js.map +1 -1
  44. package/dist/components/gx-ide-team-dev-commit.js +78 -221
  45. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  46. package/dist/components/gx-ide-team-dev-update.js +61 -10
  47. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  48. package/dist/components/gx-ide-ww-files.js +1 -9
  49. package/dist/components/gx-ide-ww-files.js.map +1 -1
  50. package/dist/components/tabular-grid-column-sort.js +41 -0
  51. package/dist/components/tabular-grid-column-sort.js.map +1 -0
  52. package/dist/components/tabular-grid-render.js +216 -0
  53. package/dist/components/tabular-grid-render.js.map +1 -0
  54. package/dist/components/uncheck-ignored.js +40 -0
  55. package/dist/components/uncheck-ignored.js.map +1 -0
  56. package/dist/esm/genexus-ide-ui.js +1 -1
  57. package/dist/esm/gx-ide-server-selector.entry.js +12 -28
  58. package/dist/esm/gx-ide-server-selector.entry.js.map +1 -1
  59. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +20 -4
  60. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js.map +1 -1
  61. package/dist/esm/gx-ide-team-dev-commit.entry.js +81 -220
  62. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  63. package/dist/esm/gx-ide-team-dev-update.entry.js +60 -10
  64. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  65. package/dist/esm/gx-ide-ww-files.entry.js +1 -9
  66. package/dist/esm/gx-ide-ww-files.entry.js.map +1 -1
  67. package/dist/esm/loader.js +1 -1
  68. package/dist/esm/tabular-grid-column-sort-1d503b27.js +41 -0
  69. package/dist/esm/tabular-grid-column-sort-1d503b27.js.map +1 -0
  70. package/dist/esm/tabular-grid-render-f7eb612b.js +216 -0
  71. package/dist/esm/tabular-grid-render-f7eb612b.js.map +1 -0
  72. package/dist/esm/uncheck-ignored-4ba48c9e.js +40 -0
  73. package/dist/esm/uncheck-ignored-4ba48c9e.js.map +1 -0
  74. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  75. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  76. package/dist/genexus-ide-ui/p-02fb496a.js +36 -0
  77. package/dist/genexus-ide-ui/p-02fb496a.js.map +1 -0
  78. package/dist/genexus-ide-ui/{p-970e89ac.entry.js → p-4b06b578.entry.js} +100 -115
  79. package/dist/genexus-ide-ui/p-4b06b578.entry.js.map +1 -0
  80. package/dist/genexus-ide-ui/{p-34447b77.entry.js → p-4e3ad78d.entry.js} +261 -234
  81. package/dist/genexus-ide-ui/p-4e3ad78d.entry.js.map +1 -0
  82. package/dist/genexus-ide-ui/p-77c2e69d.js +314 -0
  83. package/dist/genexus-ide-ui/p-77c2e69d.js.map +1 -0
  84. package/dist/genexus-ide-ui/{p-9b8a8487.entry.js → p-8c867f9a.entry.js} +159 -167
  85. package/dist/genexus-ide-ui/p-8c867f9a.entry.js.map +1 -0
  86. package/dist/genexus-ide-ui/p-a7883e6b.entry.js +691 -0
  87. package/dist/genexus-ide-ui/p-a7883e6b.entry.js.map +1 -0
  88. package/dist/genexus-ide-ui/p-c9b9e260.js +36 -0
  89. package/dist/genexus-ide-ui/p-c9b9e260.js.map +1 -0
  90. package/dist/genexus-ide-ui/{p-42f37527.entry.js → p-e1a2550e.entry.js} +351 -289
  91. package/dist/genexus-ide-ui/p-e1a2550e.entry.js.map +1 -0
  92. package/dist/types/common/chameleon/tabular-grid-column-sort.d.ts +4 -0
  93. package/dist/types/components/team-dev/update/update.d.ts +6 -0
  94. package/dist/types/components/team-dev/version-control/commit/commit.d.ts +15 -13
  95. package/dist/types/components/team-dev/version-control/common/are-sets-equal.d.ts +12 -0
  96. package/dist/types/components/team-dev/version-control/common/tabular-grid-render.d.ts +13 -1
  97. package/dist/types/components/team-dev/version-control/common/uncheck-ignored.d.ts +13 -0
  98. package/dist/types/components/ww-files/ww-files.d.ts +0 -1
  99. package/package.json +1 -1
  100. package/dist/genexus-ide-ui/p-34447b77.entry.js.map +0 -1
  101. package/dist/genexus-ide-ui/p-42f37527.entry.js.map +0 -1
  102. package/dist/genexus-ide-ui/p-723d25ae.entry.js +0 -912
  103. package/dist/genexus-ide-ui/p-723d25ae.entry.js.map +0 -1
  104. package/dist/genexus-ide-ui/p-970e89ac.entry.js.map +0 -1
  105. package/dist/genexus-ide-ui/p-9b8a8487.entry.js.map +0 -1
@@ -1,10 +1,8 @@
1
1
  import { h, proxyCustomElement, HTMLElement, Host } from '@stencil/core/internal/client';
2
2
  import { L as Locale } from './locale.js';
3
- import { g as getIconPath } from './MERCURY_ASSETS.js';
4
- import { r as renderObjectTypeWithIcon } from './utilities.js';
5
- import { f as formatDate } from './helpers.js';
6
- import { h as hiChar } from './helpers2.js';
7
- import { c as config } from './config.js';
3
+ import { u as uncheckIgnoredObjects, a as areSetsEqual } from './uncheck-ignored.js';
4
+ import { A as ALL_VALUE, a as CSS_SELECTORS, I as ICONS, r as renderTabularGridColumns, b as renderTabularGridRows, C as COLUMNS_IDS } from './tabular-grid-render.js';
5
+ import { s as sortTabularGridColumn } from './tabular-grid-column-sort.js';
8
6
  import { d as defineCustomElement$3 } from './gx-ide-empty-state2.js';
9
7
  import { d as defineCustomElement$2 } from './ide-loader.js';
10
8
 
@@ -75,203 +73,7 @@ const typesToComboBoxItemModel = (objectTypeModel) => objectTypeModel.map(object
75
73
  startImgSrc: objectType.icon
76
74
  }));
77
75
 
78
- const ALL_VALUE = "All";
79
- const CSS_SELECTORS = {
80
- HEADER: "header spacing-body-inline spacing-body-block-start field-group",
81
- HEADER_DETAILS: "header__details",
82
- FILTER: "filter",
83
- MAIN: "main spacing-body",
84
- GRID_CELL_DESCRIPTION: "tabular-grid-cell-description-custom-selector"
85
- };
86
- const ICONS = {
87
- add: getIconPath({
88
- category: "system",
89
- name: "add",
90
- colorType: "on-elevation"
91
- }),
92
- edit: getIconPath({
93
- category: "system",
94
- name: "edit",
95
- colorType: "on-elevation"
96
- }),
97
- error: getIconPath({
98
- category: "system",
99
- name: "error",
100
- colorType: "error"
101
- }),
102
- filter: getIconPath({
103
- category: "window-tools",
104
- name: "filter",
105
- colorType: "neutral"
106
- }),
107
- filterWithConditions: getIconPath({
108
- category: "window-tools",
109
- name: "filter-conditions",
110
- colorType: "neutral"
111
- }),
112
- info: getIconPath({
113
- category: "system",
114
- name: "information",
115
- colorType: "on-elevation"
116
- }),
117
- refresh: getIconPath({
118
- category: "gemini-tools",
119
- name: "reset",
120
- colorType: "neutral"
121
- }),
122
- search: getIconPath({
123
- category: "system",
124
- name: "search",
125
- colorType: "on-elevation"
126
- }),
127
- success: getIconPath({
128
- category: "system",
129
- name: "check",
130
- colorType: "success"
131
- }),
132
- substract: getIconPath({
133
- category: "system",
134
- name: "substract",
135
- colorType: "on-elevation"
136
- }),
137
- warning: getIconPath({
138
- category: "system",
139
- name: "warning",
140
- colorType: "warning"
141
- })
142
- };
143
-
144
- // stencil
145
- const BUTTON_ACTION_SELECTOR = "button-action-custom-selector";
146
- const renderStateCellContent = (action, componentLocale) => {
147
- let icon;
148
- let caption;
149
- let iconColor;
150
- if (action === "deleted") {
151
- icon = ICONS.substract;
152
- caption = componentLocale.states.deleted;
153
- iconColor = "--mer-icon__error";
154
- }
155
- else if (action === "inserted") {
156
- icon = ICONS.add;
157
- caption = componentLocale.states.inserted;
158
- iconColor = "--mer-icon__success";
159
- }
160
- else if (action === "modified") {
161
- icon = ICONS.edit;
162
- caption = componentLocale.states.modified;
163
- iconColor = "--mer-icon__warning";
164
- }
165
- else if (action === "conflicted") {
166
- icon = ICONS.warning;
167
- caption = componentLocale.states.conflicted;
168
- iconColor = "--mer-icon__warning";
169
- }
170
- else if (!action) {
171
- // proably is "ignored"
172
- return null;
173
- }
174
- return (h("span", { class: "custom-icon-text-wrapper" },
175
- h("ch-image", { type: "mask", class: "icon-md", src: icon, style: { backgroundColor: `var(${iconColor})` } }),
176
- `${caption}`));
177
- };
178
- const renderObjectStatus = (objectId, objectsStatusMap, updatePillAsButton, commitSingleObject, componentLocale) => {
179
- const status = objectsStatusMap.get(objectId);
180
- const caption = status === "pending" && updatePillAsButton
181
- ? componentLocale.status.commit
182
- : componentLocale.status[status];
183
- if (status === "commiting") {
184
- return h("span", { class: "spinner-caption" }, caption);
185
- }
186
- const classes = `pill pill--${status}`;
187
- if (updatePillAsButton && status === "pending") {
188
- return (h("button", { class: {
189
- "button-secondary": true,
190
- "button-icon-and-text": true,
191
- "pill": true,
192
- "pill--update": true,
193
- [BUTTON_ACTION_SELECTOR]: true
194
- }, onClick: commitSingleObject(objectId) }, caption));
195
- }
196
- else {
197
- return h("span", { class: classes }, caption);
198
- }
199
- };
200
- const renderTabularGridRows = (type, pendingObjectsAfterFilter, ignoredObjectsAfterFilter, alreadyUpdatedObjectsIdsSet, markedObjectsSet, objectsMessagesDataMap, updatePillAsButton, commitSingleObject, objectsStatusMap, searchValue, componentLocale) => {
201
- let objects;
202
- if (type === "pending") {
203
- objects = pendingObjectsAfterFilter;
204
- }
205
- else if (type === "ignored") {
206
- objects = ignoredObjectsAfterFilter;
207
- }
208
- searchValue = searchValue.toLowerCase();
209
- const filteredRows = objects.map(object => {
210
- const alreadyUpdated = alreadyUpdatedObjectsIdsSet.has(object.id);
211
- const hideCheckbox = alreadyUpdated || type === "ignored";
212
- const marked = markedObjectsSet.has(object.id);
213
- const messages = objectsMessagesDataMap.get(object.id);
214
- return (h("ch-tabular-grid-row", { class: "tabular-grid-row", key: object.id, rowid: object.id, ref: (el) => marked && (el === null || el === void 0 ? void 0 : el.setAttribute("marked", "true")) },
215
- h("ch-tabular-grid-cell", { "cell-type": "rich", "row-selector": "true", class: {
216
- "tabular-grid-cell": true,
217
- "no-checkbox-custom-selector": hideCheckbox
218
- }, size: "max-content" },
219
- h("div", null, hiChar(object.name, searchValue))),
220
- h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, renderObjectTypeWithIcon(object.type)),
221
- h("ch-tabular-grid-cell", { class: {
222
- "tabular-grid-cell": true,
223
- [CSS_SELECTORS.GRID_CELL_DESCRIPTION]: true
224
- } },
225
- h("div", null, hiChar(object.description, searchValue))),
226
- h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, formatDate(object.modifiedOn)),
227
- h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, object.module),
228
- h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, renderStateCellContent(object.state, componentLocale)),
229
- h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, formatDate(object.lastSynchronized)),
230
- h("ch-tabular-grid-cell", { class: "tabular-grid-cell tabular-grid-cell--for-pill" }, renderObjectStatus(object.id, objectsStatusMap, updatePillAsButton, commitSingleObject, componentLocale)),
231
- (messages === null || messages === void 0 ? void 0 : messages.length) && (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" },
232
- h("ch-tabular-grid-rowset-empty", { class: {
233
- "tabular-grid-rowset-empty": true
234
- } },
235
- h("ul", { class: "messages-list" }, messages.map(message => {
236
- let MESSAGE_ICON;
237
- if (message.type === "error") {
238
- MESSAGE_ICON = ICONS.error;
239
- }
240
- else if (message.type === "warning") {
241
- MESSAGE_ICON = ICONS.warning;
242
- }
243
- else if (message.type === "success") {
244
- MESSAGE_ICON = ICONS.success;
245
- }
246
- else {
247
- // info
248
- MESSAGE_ICON = ICONS.info;
249
- }
250
- return (h("li", { class: "message-description" },
251
- h("ch-image", { class: "icon-md message-icon", src: MESSAGE_ICON }),
252
- message.text));
253
- })))))));
254
- });
255
- // this.objectsRenderedAlready = true;
256
- return filteredRows;
257
- };
258
- const renderTabularGridColumns = (ignoredGridColumns, gridIsEmpty = false, componentLocale) => {
259
- const colSize = gridIsEmpty
260
- ? config.tabularGrid.colSize.auto
261
- : config.tabularGrid.colSize.maxContent;
262
- return (h("ch-tabular-grid-columnset", { class: "tabular-grid-column-set" },
263
- !ignoredGridColumns.includes("name") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "name", columnName: componentLocale.objects.name, columnType: "rich", richRowSelector: true, richRowSelectorMode: "mark", settingable: false, size: colSize })),
264
- !ignoredGridColumns.includes("type") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "type", columnName: componentLocale.objects.type, settingable: false, size: colSize })),
265
- !ignoredGridColumns.includes("description") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "description", columnName: componentLocale.objects.description, settingable: false, size: config.tabularGrid.colSize.description })),
266
- !ignoredGridColumns.includes("modifiedOn") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "modifiedOn", columnName: componentLocale.objects.modifiedOn, settingable: false, size: colSize })),
267
- !ignoredGridColumns.includes("module") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "module", columnName: componentLocale.objects.module, settingable: false, size: colSize })),
268
- !ignoredGridColumns.includes("localState") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "localState", columnName: componentLocale.objects.localState, settingable: false, size: colSize })),
269
- !ignoredGridColumns.includes("lastSynchronized") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "lastSynchronized", columnName: componentLocale.objects.lastSynchronized, settingable: false, size: colSize })),
270
- !ignoredGridColumns.includes("action") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "action", columnName: componentLocale.objects.action, settingable: false, size: colSize })),
271
- !ignoredGridColumns.includes("status") && (h("ch-tabular-grid-column", { class: "tabular-grid-column", columnId: "status", columnName: componentLocale.objects.status, settingable: false, size: gridIsEmpty ? "auto" : "100px" }))));
272
- };
273
-
274
- const commitCss = ".detail__knowledge-base{padding-inline:24px;border-inline-end:1px solid var(--mer-border-color__on-elevation--01)}.detail__genexus-server{padding-inline-end:24px;border-inline-end:1px solid var(--mer-border-color__on-elevation--01)}.detail__version{padding-inline-start:24px}.filter,.filter-secondary>div{display:grid;gap:12px}:host{display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content max-content 1fr;--pill-border-radius:12px;--pill-padding-inline:8px;--pill-padding-block:2px;--pill-font-size:var(--font-size-body-s)}.section{display:grid;display:contents}.header__details{display:grid;row-gap:var(--mer-spacing--md);grid-auto-columns:max-content;grid-auto-rows:max-content;margin-block-end:var(--mer-spacing--lg)}.detail__label{color:var(--mer-color__neutral-gray--400)}.detail__link{align-items:start;color:var(--mer-text__primary);text-decoration:underline}.detail__link:hover{color:var(--mer-text__primary--hover)}.detail__link:active{color:var(--mer-text__primary--active)}.filter__combo{max-block-size:minmax(0, 200px)}.main{position:relative;display:grid;overflow:auto}.loader{position:relative;inline-size:100%;block-size:100%;inset-block-start:0;--elevation-background-color:var(--mer-surface__elevation--01)}.empty-state{block-size:100%}.tabular-grid.disabled-custom-selector .tabular-grid-cell::part(selector-label),.tabular-grid.disabled-custom-selector .tabular-grid-column::part(bar-selector),.tabular-grid.disabled-custom-selector .tabular-grid-cell::part(actions-icon){pointer-events:none;opacity:0.5}.tabular-grid-cell.no-checkbox-custom-selector::part(selector-label){visibility:hidden}.tabular-grid{border-radius:4px;overflow:hidden}.tabular-grid .tabular-grid-cell--for-pill{--grid-cell__padding-block:4px;align-items:center;justify-content:center}.tabular-grid .button-action-custom-selector{--control__padding-block:var(--pill-padding-block);--control__padding-inline:var(--pill-padding-inline);font-size:inherit;font-weight:inherit;}.tabular-grid.empty-result::part(main){overflow:hidden}.messages-list{margin:0;padding:0;list-style:none;max-inline-size:800px;padding:8px 0;list-style-type:none;display:flex;flex-direction:column;gap:var(--mer-spacing--3xs)}.message-description{line-height:1.5;display:flex;align-items:center;gap:8px}.message-icon{flex-shrink:0}.pill{--pill-background-color:transparent;--pill-color:transparent;--pill-border-color:transparent;background-color:var(--pill-background-color);color:var(--pill-color);border:1px solid var(--pill-border-color);inline-size:100%;padding:var(--pill-padding-block) var(--pill-padding-inline);display:flex;align-items:center;justify-content:center;border-radius:var(--pill-border-radius);position:relative;font-weight:var(--font-weight-semi-bold)}.pill--update,.pill--pending{--pill-background-color:var();--pill-color:var(--mer-color__neutral-gray--400);--pill-border-color:var()}.pill--to-merge-marked{--pill-background-color:var();--pill-color:var(--mer-border-color__primary);--pill-border-color:var()}.pill--ignored{--pill-background-color:var(--mer-surface__elevation--02);--pill-color:var(--mer-text__on-disabled);--pill-border-color:var(--mer-border-color__primary--disabled)}.pill--pending{--pill-background-color:var(--mer-color__tinted-primary--8);--pill-color:var(--mer-border-color__primary);--pill-border-color:var(--mer-color__tinted-primary--50)}.pill--warning{--pill-background-color:var(--mer-color__tinted-yellow--5);--pill-color:var(--mer-border-color__warning);--pill-border-color:var(--mer-color__tinted-yellow--60)}.pill--error{--pill-background-color:var(--mer-color__tinted-red--5);--pill-color:var(--mer-border-color__error);--pill-border-color:var(--mer-color__tinted-red--60)}.pill--commited{--pill-background-color:var(--mer-color__tinted-green--5);--pill-color:var(--mer-border-color__success);--pill-border-color:var(--mer-color__tinted-green--60)}.pill--transitioning{--pill-color:transparent}.spinner-caption{display:flex;align-items:center;gap:6px;--status-circle-color:transparent;--status-circle-size:$size;--status-circle-inset-inline-start:14px;--pill-color:var(--mer-border-color__primary)}.spinner-caption::before{display:inline-block;content:\"\";width:14px;height:14px;border:calc(14px / 7) solid var(--mer-color__tinted-primary--50);border-top:calc(14px / 7) solid var(--mer-color__primary--300);border-radius:50%;animation:spin var(--mer-timing--regular) linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.hiChar{color:var(--mer-color__primary--200);filter:brightness(1.3)}.custom-icon-text-wrapper{display:flex;align-items:center;gap:10px}.header__details{grid-template-areas:\"detail-heading-gx . . .\" \"detail-genexus-server detail-knowledge-base detail-version detail-last-full-update\"}.detail__heading-genexus-server{grid-area:detail-heading-gx}.detail__genexus-server{grid-area:detail-genexus-server}.detail__knowledge-base{grid-area:detail-knowledge-base}.detail__version{grid-area:detail-version}.filter-container{container-type:inline-size;box-sizing:border-box;display:grid;column-gap:12px;grid-template-areas:\"filter-primary filter-toggle-button filter-action-buttons\" \"filter-secondary . .\" \"comments comments comments\";grid-template-columns:minmax(0, max-content) max-content 1fr}.filter-primary{grid-area:filter-primary;grid-template-columns:minmax(0, 200px) minmax(0, 200px) minmax(0, 200px)}.filter-container>:nth-child(2){grid-area:filter-toggle-button}.filter-container>:nth-child(3){grid-area:filter-action-buttons;justify-content:end}.filter__toggle-secondary-filter-btn{grid-area:filter-toggle-button}.filter__buttons{grid-area:filter-buttons;margin-inline-start:auto}.filter-secondary{display:grid;grid-template-rows:0fr;grid-area:filter-secondary;transition:grid-template-rows var(--mer-timing--fast)}.filter-secondary--visible{grid-template-rows:1fr}.filter-secondary>div{display:grid;overflow:hidden;font-size:0;grid-template-columns:repeat(3, minmax(0, 200px))}.filter-secondary>div>.combo-box,.comments{margin-block-start:12px}.comments{grid-area:comments}.input-comments-container{position:relative}.input-comments{--control__border-color:transparent;padding-block:0 !important;padding-inline:0 !important;--line-height-tight:1.4;block-size:100%;background-color:var(--mer-surface);transition:var(--mer-timing--super-fast) block-size, var(--mer-timing--super-fast) background-color, var(--mer-timing--super-fast) padding-block, var(--mer-timing--super-fast) padding-inline}.input-comments:focus{position:absolute;block-size:minmax(0, 200px);inline-size:100%;z-index:99;background-color:var(--mer-surface__elevation--01);padding-block:var(--control__padding-block) !important;padding-inline:var(--control__padding-inline) !important}";
76
+ const commitCss = ".detail__knowledge-base{padding-inline:24px;border-inline-end:1px solid var(--mer-border-color__on-elevation--01)}.detail__genexus-server{padding-inline-end:24px;border-inline-end:1px solid var(--mer-border-color__on-elevation--01)}.detail__version{padding-inline-start:24px}.filter,.filter-secondary>div{display:grid;gap:12px}:host{display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content max-content 1fr;--pill-border-radius:12px;--pill-padding-inline:8px;--pill-padding-block:2px;--pill-font-size:var(--font-size-body-s)}.section{display:grid;display:contents}.header__details{display:grid;row-gap:var(--mer-spacing--md);grid-auto-columns:max-content;grid-auto-rows:max-content;margin-block-end:var(--mer-spacing--lg)}.detail__label{color:var(--mer-color__neutral-gray--400)}.detail__link{align-items:start;color:var(--mer-text__primary);text-decoration:underline}.detail__link:hover{color:var(--mer-text__primary--hover)}.detail__link:active{color:var(--mer-text__primary--active)}.filter__combo{max-block-size:minmax(0, 200px)}.main{position:relative;display:grid;overflow:auto}.loader{position:relative;inline-size:100%;block-size:100%;inset-block-start:0;--elevation-background-color:var(--mer-surface__elevation--01)}.empty-state{block-size:100%}.tabular-grid.disabled-custom-selector .tabular-grid-cell::part(selector-label),.tabular-grid.disabled-custom-selector .tabular-grid-column::part(bar-selector),.tabular-grid.disabled-custom-selector .tabular-grid-cell::part(actions-icon){pointer-events:none;opacity:0.5}.tabular-grid-cell.no-checkbox-custom-selector::part(selector-label){visibility:hidden;pointer-events:none}.tabular-grid{border-radius:4px;overflow:hidden}.tabular-grid .tabular-grid-cell--for-pill{--grid-cell__padding-block:4px;align-items:center;justify-content:center}.tabular-grid .button-action-custom-selector{--control__padding-block:var(--pill-padding-block);--control__padding-inline:var(--pill-padding-inline);font-size:inherit;font-weight:inherit;}.tabular-grid.empty-result::part(main){overflow:hidden}.messages-list{margin:0;padding:0;list-style:none;max-inline-size:800px;padding:8px 0;list-style-type:none;display:flex;flex-direction:column;gap:var(--mer-spacing--3xs)}.message-description{line-height:1.5;display:flex;align-items:center;gap:8px}.message-icon{flex-shrink:0}.pill{--pill-background-color:transparent;--pill-color:transparent;--pill-border-color:transparent;background-color:var(--pill-background-color);color:var(--pill-color);border:1px solid var(--pill-border-color);inline-size:100%;padding:var(--pill-padding-block) var(--pill-padding-inline);display:flex;align-items:center;justify-content:center;border-radius:var(--pill-border-radius);position:relative;font-weight:var(--font-weight-semi-bold)}.pill--update,.pill--pending{--pill-background-color:var();--pill-color:var(--mer-color__neutral-gray--400);--pill-border-color:var()}.pill--to-merge-marked{--pill-background-color:var();--pill-color:var(--mer-border-color__primary);--pill-border-color:var()}.pill--ignored{--pill-background-color:var(--mer-surface__elevation--02);--pill-color:var(--mer-text__on-disabled);--pill-border-color:var(--mer-border-color__primary--disabled)}.pill--pending{--pill-background-color:var(--mer-color__tinted-primary--8);--pill-color:var(--mer-border-color__primary);--pill-border-color:var(--mer-color__tinted-primary--50)}.pill--warning{--pill-background-color:var(--mer-color__tinted-yellow--5);--pill-color:var(--mer-border-color__warning);--pill-border-color:var(--mer-color__tinted-yellow--60)}.pill--error{--pill-background-color:var(--mer-color__tinted-red--5);--pill-color:var(--mer-border-color__error);--pill-border-color:var(--mer-color__tinted-red--60)}.pill--commited{--pill-background-color:var(--mer-color__tinted-green--5);--pill-color:var(--mer-border-color__success);--pill-border-color:var(--mer-color__tinted-green--60)}.pill--transitioning{--pill-color:transparent}.spinner-caption{display:flex;align-items:center;gap:6px;--status-circle-color:transparent;--status-circle-size:$size;--status-circle-inset-inline-start:14px;--pill-color:var(--mer-border-color__primary)}.spinner-caption::before{display:inline-block;content:\"\";width:14px;height:14px;border:calc(14px / 7) solid var(--mer-color__tinted-primary--50);border-top:calc(14px / 7) solid var(--mer-color__primary--300);border-radius:50%;animation:spin var(--mer-timing--regular) linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.hiChar{color:var(--mer-color__primary--200);filter:brightness(1.3)}.custom-icon-text-wrapper{display:flex;align-items:center;gap:10px}.header__details{grid-template-areas:\"detail-heading-gx . . .\" \"detail-genexus-server detail-knowledge-base detail-version detail-last-full-update\"}.detail__heading-genexus-server{grid-area:detail-heading-gx}.detail__genexus-server{grid-area:detail-genexus-server}.detail__knowledge-base{grid-area:detail-knowledge-base}.detail__version{grid-area:detail-version}.filter-container{container-type:inline-size;box-sizing:border-box;display:grid;column-gap:12px;grid-template-areas:\"filter-primary filter-toggle-button filter-action-buttons\" \"filter-secondary . .\" \"comments comments comments\";grid-template-columns:minmax(0, max-content) max-content 1fr}.filter-primary{grid-area:filter-primary;grid-template-columns:minmax(0, 200px) minmax(0, 200px) minmax(0, 200px)}.filter-container>:nth-child(2){grid-area:filter-toggle-button}.filter-container>:nth-child(3){grid-area:filter-action-buttons;justify-content:end}.filter__toggle-secondary-filter-btn{grid-area:filter-toggle-button}.filter__buttons{grid-area:filter-buttons;margin-inline-start:auto}.filter-secondary{display:grid;grid-template-rows:0fr;grid-area:filter-secondary;transition:grid-template-rows var(--mer-timing--fast)}.filter-secondary--visible{grid-template-rows:1fr}.filter-secondary>div{display:grid;overflow:hidden;font-size:0;grid-template-columns:repeat(3, minmax(0, 200px))}.filter-secondary>div>.combo-box,.comments{margin-block-start:12px}.comments{grid-area:comments}.input-comments-container{position:relative}.input-comments{--control__border-color:transparent;padding-block:0 !important;padding-inline:0 !important;--line-height-tight:1.4;block-size:100%;background-color:var(--mer-surface);transition:var(--mer-timing--super-fast) block-size, var(--mer-timing--super-fast) background-color, var(--mer-timing--super-fast) padding-block, var(--mer-timing--super-fast) padding-inline}.input-comments:focus{position:absolute;block-size:minmax(0, 200px);inline-size:100%;z-index:99;background-color:var(--mer-surface__elevation--01);padding-block:var(--control__padding-block) !important;padding-inline:var(--control__padding-inline) !important}";
275
77
 
276
78
  var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
277
79
  if (kind === "a" && !f)
@@ -289,7 +91,7 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
289
91
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
290
92
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
291
93
  };
292
- var _GxIdeTeamDevCommit_componentLocale, _GxIdeTeamDevCommit_localStatesComboBoxModel, _GxIdeTeamDevCommit_rowCheckedChangedByTheUser, _GxIdeTeamDevCommit_chGridPendingForUpdateEl, _GxIdeTeamDevCommit_commitCheckedClickedHandler, _GxIdeTeamDevCommit_commitSingleObject, _GxIdeTeamDevCommit_commitObjectsHandler, _GxIdeTeamDevCommit_rowMarkingChangedHandler, _GxIdeTeamDevCommit_rowSelectionChangedHandler, _GxIdeTeamDevCommit_commentsInputHandler, _GxIdeTeamDevCommit_applyClientFilter, _GxIdeTeamDevCommit_filteredObjects, _GxIdeTeamDevCommit_evaluateSecondaryFilterHasConditions, _GxIdeTeamDevCommit_toggleFiltersHandler, _GxIdeTeamDevCommit_searchInputHandler, _GxIdeTeamDevCommit_typeChangedHandler, _GxIdeTeamDevCommit_stateChangedHandler, _GxIdeTeamDevCommit_folderChanged, _GxIdeTeamDevCommit_onRowContextMenuHandler, _GxIdeTeamDevCommit_updatePendingCheckedItems, _GxIdeTeamDevCommit_setInitialObjectsStatus, _GxIdeTeamDevCommit_loadData, _GxIdeTeamDevCommit_markPendingObjects, _GxIdeTeamDevCommit_revertPendingCommitsCheckboxes, _GxIdeTeamDevCommit_togglePendingCommitsCheckboxes;
94
+ var _GxIdeTeamDevCommit_componentLocale, _GxIdeTeamDevCommit_localStatesComboBoxModel, _GxIdeTeamDevCommit_rowCheckedChangedByTheUser, _GxIdeTeamDevCommit_chGridPendingForUpdateEl, _GxIdeTeamDevCommit_commitCheckedClickedHandler, _GxIdeTeamDevCommit_commitSingleObject, _GxIdeTeamDevCommit_commitObjectsHandler, _GxIdeTeamDevCommit_rowMarkingChangedHandler, _GxIdeTeamDevCommit_rowSelectionChangedHandler, _GxIdeTeamDevCommit_commentsInputHandler, _GxIdeTeamDevCommit_applyClientFilter, _GxIdeTeamDevCommit_filteredObjects, _GxIdeTeamDevCommit_evaluateSecondaryFilterHasConditions, _GxIdeTeamDevCommit_toggleFiltersHandler, _GxIdeTeamDevCommit_searchInputHandler, _GxIdeTeamDevCommit_typeChangedHandler, _GxIdeTeamDevCommit_stateChangedHandler, _GxIdeTeamDevCommit_folderChanged, _GxIdeTeamDevCommit_onRowContextMenuHandler, _GxIdeTeamDevCommit_updatePendingCheckedItems, _GxIdeTeamDevCommit_setInitialObjectsStatus, _GxIdeTeamDevCommit_loadData, _GxIdeTeamDevCommit_markPendingObjects, _GxIdeTeamDevCommit_revertPendingCommitsCheckboxes, _GxIdeTeamDevCommit_togglePendingCommitsCheckboxes, _GxIdeTeamDevCommit_sortTabularGridColumnCallback, _GxIdeTeamDevCommit_columnSelectorClickedCallback;
293
95
  const FILTER_SECONDARY_CONTAINER_ID = "filters-secondary-container";
294
96
  const FILTER_SECONDARY_BUTTON_ID = "filter-toggle-button";
295
97
  const CSS_BUNDLES = [
@@ -358,7 +160,11 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
358
160
  this.objectsMessagesDataMap.delete(objectResult.id);
359
161
  }
360
162
  if (objectResult.result === "commited") {
361
- this.alreadyCommitedObjectsIdsSet.add(objectResult.id);
163
+ // Apply a new Set to "alreadyCommitedObjectsIdsSet" in order for the Watch to fire.
164
+ this.alreadyCommitedObjectsIdsSet = new Set([
165
+ ...this.alreadyCommitedObjectsIdsSet,
166
+ objectResult.id
167
+ ]);
362
168
  this.objectsStatusMap.set(objectResult.id, "commited");
363
169
  await __classPrivateFieldGet(this, _GxIdeTeamDevCommit_chGridPendingForUpdateEl, "f").markRow(objectResult.id, false);
364
170
  }
@@ -493,9 +299,6 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
493
299
  __classPrivateFieldSet(this, _GxIdeTeamDevCommit_rowCheckedChangedByTheUser, true, "f");
494
300
  });
495
301
  _GxIdeTeamDevCommit_setInitialObjectsStatus.set(this, () => {
496
- if (this.objectsRenderedAlready) {
497
- return;
498
- }
499
302
  this.pendingAndIgnored.pendingForCommit.forEach(pendingObject => {
500
303
  const status = "pending";
501
304
  this.objectsStatusMap.set(pendingObject.id, status);
@@ -514,10 +317,9 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
514
317
  folder: this.selectedFolder,
515
318
  category: this.selectedCategory
516
319
  });
517
- __classPrivateFieldGet(this, _GxIdeTeamDevCommit_setInitialObjectsStatus, "f").call(this);
518
320
  this.loading = false;
519
321
  // Is is required to mark/check all objects after loadCallback.
520
- __classPrivateFieldGet(this, _GxIdeTeamDevCommit_markPendingObjects, "f").call(this);
322
+ // this.#markPendingObjects();
521
323
  });
522
324
  /**
523
325
  * Marks all pending objects that have not been committed yet.
@@ -558,6 +360,44 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
558
360
  }
559
361
  }
560
362
  });
363
+ _GxIdeTeamDevCommit_sortTabularGridColumnCallback.set(this, (e) => {
364
+ const columnId = e.detail.columnId;
365
+ let objectProperty;
366
+ let dateType = "string";
367
+ if (columnId === COLUMNS_IDS.type) {
368
+ objectProperty = "name"; // the type name
369
+ dateType = "object";
370
+ }
371
+ else if (columnId === COLUMNS_IDS.modifiedOn ||
372
+ columnId === COLUMNS_IDS.lastSynchronized) {
373
+ dateType = "dateString";
374
+ }
375
+ this.pendingObjectsAfterFilter = [
376
+ ...sortTabularGridColumn(e, this.pendingObjectsAfterFilter, dateType, objectProperty)
377
+ ];
378
+ this.ignoredObjectsAfterFilter = [
379
+ ...sortTabularGridColumn(e, this.ignoredObjectsAfterFilter, dateType, objectProperty)
380
+ ];
381
+ });
382
+ /**
383
+ * WA: Ignored objects must always remain unchecked.
384
+ * Because `tabular-grid` selects all rows when the checkbox column is toggled,
385
+ * we need to manually unselect the ignored IDs. // TODO: Move this function
386
+ * to common
387
+ */
388
+ _GxIdeTeamDevCommit_columnSelectorClickedCallback.set(this, async (e) => {
389
+ const allRowsChecked = e.detail;
390
+ if (allRowsChecked) {
391
+ const markedRowsIds = await __classPrivateFieldGet(this, _GxIdeTeamDevCommit_chGridPendingForUpdateEl, "f").getMarkedRows();
392
+ const ignoredMarkedRowsIds = markedRowsIds.filter(rowId => {
393
+ return this.ignoredIdsSet.has(rowId);
394
+ });
395
+ if (ignoredMarkedRowsIds.length) {
396
+ uncheckIgnoredObjects(ignoredMarkedRowsIds, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_chGridPendingForUpdateEl, "f"));
397
+ }
398
+ }
399
+ });
400
+ this.allPendingAreCommited = false;
561
401
  this.alreadyCommitedObjectsIdsSet = new Set([]);
562
402
  this.ignoredIdsSet = new Set([]);
563
403
  this.pendingIdsSet = new Set([]);
@@ -570,7 +410,6 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
570
410
  this.filterSecondaryIsHidden = true;
571
411
  this.filterSecondaryHasConditions = false;
572
412
  this.loading = true;
573
- this.objectsRenderedAlready = false;
574
413
  this.changesetsComboBoxModel = undefined;
575
414
  this.pendingObjectsAfterFilter = [];
576
415
  this.ignoredObjectsAfterFilter = [];
@@ -599,6 +438,11 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
599
438
  this.updatePillAsButton = false;
600
439
  this.serverDetails = undefined;
601
440
  }
441
+ alreadyCommitedObjectsIdsSetChanged(newCommitedObjectsIdsSet) {
442
+ const pendingIdsSetAndCommitedIdsSetAreEqual = areSetsEqual(newCommitedObjectsIdsSet, this.pendingIdsSet);
443
+ this.allPendingAreCommited =
444
+ pendingIdsSetAndCommitedIdsSetAreEqual && this.pendingIdsSet.size > 0;
445
+ }
602
446
  markedObjectsSetChanged(newMarkedObjectsSet) {
603
447
  this.atLeastOneObjectIsChecked = newMarkedObjectsSet.size > 0;
604
448
  }
@@ -608,17 +452,24 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
608
452
  this.commiting = false;
609
453
  }
610
454
  }
611
- pendingAndIgnoredChanged() {
455
+ pendingAndIgnoredChanged(newPendingAndIgnored) {
612
456
  var _a, _b;
613
- __classPrivateFieldGet(this, _GxIdeTeamDevCommit_applyClientFilter, "f").call(this);
614
- this.pendingIdsSet.clear();
615
- (_a = this.pendingAndIgnored.pendingForCommit) === null || _a === void 0 ? void 0 : _a.forEach(pending => {
457
+ // clear previous state
458
+ this.pendingIdsSet.clear(); // before pendingIdsSet.add
459
+ this.ignoredIdsSet.clear(); // before ignoredIdsSet.add
460
+ this.objectsMessagesDataMap = new Map();
461
+ this.alreadyCommitedObjectsIdsSet = new Set();
462
+ this.commentInputHasError = false;
463
+ this.markedObjectsSet = new Set(); // before #markPendingObjects
464
+ (_a = newPendingAndIgnored.pendingForCommit) === null || _a === void 0 ? void 0 : _a.forEach(pending => {
616
465
  this.pendingIdsSet.add(pending.id);
617
466
  });
618
- this.ignoredIdsSet.clear();
619
- (_b = this.pendingAndIgnored.ignoredObjects) === null || _b === void 0 ? void 0 : _b.forEach(ignored => {
467
+ (_b = newPendingAndIgnored.ignoredObjects) === null || _b === void 0 ? void 0 : _b.forEach(ignored => {
620
468
  this.ignoredIdsSet.add(ignored.id);
621
469
  });
470
+ __classPrivateFieldGet(this, _GxIdeTeamDevCommit_markPendingObjects, "f").call(this); // after pendingIdsSet.add and ignoredIdsSet.add
471
+ __classPrivateFieldGet(this, _GxIdeTeamDevCommit_setInitialObjectsStatus, "f").call(this); // after pendingIdsSet.add and ignoredIdsSet.add
472
+ __classPrivateFieldGet(this, _GxIdeTeamDevCommit_applyClientFilter, "f").call(this);
622
473
  }
623
474
  typesChanged(newTypes) {
624
475
  this.typesComboBoxModel = typesToComboBoxItemModel(newTypes);
@@ -678,12 +529,14 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
678
529
  }
679
530
  async componentDidLoad() {
680
531
  await __classPrivateFieldGet(this, _GxIdeTeamDevCommit_loadData, "f").call(this);
532
+ // initialize "allPendingAreCommited"
533
+ this.alreadyCommitedObjectsIdsSetChanged(this.alreadyCommitedObjectsIdsSet);
681
534
  }
682
535
  /**
683
536
  * Used by the host to instruct the component to force a data reload in the grids.
684
537
  */
685
538
  async reload() {
686
- __classPrivateFieldGet(this, _GxIdeTeamDevCommit_loadData, "f").call(this);
539
+ await __classPrivateFieldGet(this, _GxIdeTeamDevCommit_loadData, "f").call(this);
687
540
  }
688
541
  render() {
689
542
  const disableControls = this.commiting || this.loading;
@@ -692,7 +545,9 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
692
545
  const filterIcon = this.filterSecondaryHasConditions
693
546
  ? ICONS.filterWithConditions
694
547
  : ICONS.filter;
695
- const commitButtonEnabled = this.atLeastOneObjectIsChecked && this.commentsValue.length > 0;
548
+ const commitButtonEnabled = this.atLeastOneObjectIsChecked &&
549
+ this.commentsValue.length > 0 &&
550
+ !this.allPendingAreCommited;
696
551
  return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("section", { class: "section" }, h("header", { class: { [CSS_SELECTORS.HEADER]: true } }, h("div", {
697
552
  // header details
698
553
  class: { [CSS_SELECTORS.HEADER_DETAILS]: true }
@@ -738,7 +593,7 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
738
593
  "objects-tabular-grid": true,
739
594
  "disabled-custom-selector": this.commiting,
740
595
  "empty-result": gridIsEmpty
741
- }, keyboardNavigationMode: "focus", rowSelectionMode: "multiple", onSelectionChanged: __classPrivateFieldGet(this, _GxIdeTeamDevCommit_rowSelectionChangedHandler, "f"), onRowMarkingChanged: __classPrivateFieldGet(this, _GxIdeTeamDevCommit_rowMarkingChangedHandler, "f"), onRowContextMenu: __classPrivateFieldGet(this, _GxIdeTeamDevCommit_onRowContextMenuHandler, "f").call(this), ref: (el) => (__classPrivateFieldSet(this, _GxIdeTeamDevCommit_chGridPendingForUpdateEl, el, "f")) }, renderTabularGridColumns(["action"], gridIsEmpty, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_componentLocale, "f")), !gridIsEmpty
596
+ }, keyboardNavigationMode: "focus", rowSelectionMode: "multiple", onSelectionChanged: __classPrivateFieldGet(this, _GxIdeTeamDevCommit_rowSelectionChangedHandler, "f"), onRowMarkingChanged: __classPrivateFieldGet(this, _GxIdeTeamDevCommit_rowMarkingChangedHandler, "f"), onRowContextMenu: __classPrivateFieldGet(this, _GxIdeTeamDevCommit_onRowContextMenuHandler, "f").call(this), ref: (el) => (__classPrivateFieldSet(this, _GxIdeTeamDevCommit_chGridPendingForUpdateEl, el, "f")) }, renderTabularGridColumns(["action"], gridIsEmpty, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_sortTabularGridColumnCallback, "f"), __classPrivateFieldGet(this, _GxIdeTeamDevCommit_columnSelectorClickedCallback, "f"), __classPrivateFieldGet(this, _GxIdeTeamDevCommit_componentLocale, "f"), !this.allPendingAreCommited), !gridIsEmpty
742
597
  ? [
743
598
  h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, h("ch-tabular-grid-rowset-legend", { class: "tabular-grid-rowset-legend" }, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_componentLocale, "f").objects.pendingCommits), renderTabularGridRows("pending", this.pendingObjectsAfterFilter, this.ignoredObjectsAfterFilter, this.alreadyCommitedObjectsIdsSet, this.markedObjectsSet, this.objectsMessagesDataMap, this.updatePillAsButton, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_commitSingleObject, "f"), this.objectsStatusMap, this.searchValue, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_componentLocale, "f"))),
744
599
  h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, h("ch-tabular-grid-rowset-legend", { class: "tabular-grid-rowset-legend" }, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_componentLocale, "f").objects.ignoredObjects), renderTabularGridRows("ignored", this.pendingObjectsAfterFilter, this.ignoredObjectsAfterFilter, this.alreadyCommitedObjectsIdsSet, this.markedObjectsSet, this.objectsMessagesDataMap, this.updatePillAsButton, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_commitSingleObject, "f"), this.objectsStatusMap, this.searchValue, __classPrivateFieldGet(this, _GxIdeTeamDevCommit_componentLocale, "f")))
@@ -748,6 +603,7 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
748
603
  static get assetsDirs() { return ["gx-ide-assets/team-dev-commit"]; }
749
604
  get el() { return this; }
750
605
  static get watchers() { return {
606
+ "alreadyCommitedObjectsIdsSet": ["alreadyCommitedObjectsIdsSetChanged"],
751
607
  "markedObjectsSet": ["markedObjectsSetChanged"],
752
608
  "objectsStatusMap": ["objectsStatusMapChanged"],
753
609
  "pendingAndIgnored": ["pendingAndIgnoredChanged"],
@@ -768,6 +624,7 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
768
624
  "folders": [16],
769
625
  "updatePillAsButton": [4, "update-pill-as-button"],
770
626
  "serverDetails": [16],
627
+ "allPendingAreCommited": [32],
771
628
  "alreadyCommitedObjectsIdsSet": [32],
772
629
  "ignoredIdsSet": [32],
773
630
  "pendingIdsSet": [32],
@@ -780,7 +637,6 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
780
637
  "filterSecondaryIsHidden": [32],
781
638
  "filterSecondaryHasConditions": [32],
782
639
  "loading": [32],
783
- "objectsRenderedAlready": [32],
784
640
  "changesetsComboBoxModel": [32],
785
641
  "pendingObjectsAfterFilter": [32],
786
642
  "ignoredObjectsAfterFilter": [32],
@@ -796,6 +652,7 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
796
652
  "foldersComboBoxModel": [32],
797
653
  "reload": [64]
798
654
  }, undefined, {
655
+ "alreadyCommitedObjectsIdsSet": ["alreadyCommitedObjectsIdsSetChanged"],
799
656
  "markedObjectsSet": ["markedObjectsSetChanged"],
800
657
  "objectsStatusMap": ["objectsStatusMapChanged"],
801
658
  "pendingAndIgnored": ["pendingAndIgnoredChanged"],
@@ -803,7 +660,7 @@ const GxIdeTeamDevCommit$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeTeamDev
803
660
  "changeset": ["changesetChanged"],
804
661
  "folders": ["folderChanged"]
805
662
  }]);
806
- _GxIdeTeamDevCommit_componentLocale = new WeakMap(), _GxIdeTeamDevCommit_localStatesComboBoxModel = new WeakMap(), _GxIdeTeamDevCommit_rowCheckedChangedByTheUser = new WeakMap(), _GxIdeTeamDevCommit_chGridPendingForUpdateEl = new WeakMap(), _GxIdeTeamDevCommit_commitCheckedClickedHandler = new WeakMap(), _GxIdeTeamDevCommit_commitSingleObject = new WeakMap(), _GxIdeTeamDevCommit_commitObjectsHandler = new WeakMap(), _GxIdeTeamDevCommit_rowMarkingChangedHandler = new WeakMap(), _GxIdeTeamDevCommit_rowSelectionChangedHandler = new WeakMap(), _GxIdeTeamDevCommit_commentsInputHandler = new WeakMap(), _GxIdeTeamDevCommit_applyClientFilter = new WeakMap(), _GxIdeTeamDevCommit_filteredObjects = new WeakMap(), _GxIdeTeamDevCommit_evaluateSecondaryFilterHasConditions = new WeakMap(), _GxIdeTeamDevCommit_toggleFiltersHandler = new WeakMap(), _GxIdeTeamDevCommit_searchInputHandler = new WeakMap(), _GxIdeTeamDevCommit_typeChangedHandler = new WeakMap(), _GxIdeTeamDevCommit_stateChangedHandler = new WeakMap(), _GxIdeTeamDevCommit_folderChanged = new WeakMap(), _GxIdeTeamDevCommit_onRowContextMenuHandler = new WeakMap(), _GxIdeTeamDevCommit_updatePendingCheckedItems = new WeakMap(), _GxIdeTeamDevCommit_setInitialObjectsStatus = new WeakMap(), _GxIdeTeamDevCommit_loadData = new WeakMap(), _GxIdeTeamDevCommit_markPendingObjects = new WeakMap(), _GxIdeTeamDevCommit_revertPendingCommitsCheckboxes = new WeakMap(), _GxIdeTeamDevCommit_togglePendingCommitsCheckboxes = new WeakMap();
663
+ _GxIdeTeamDevCommit_componentLocale = new WeakMap(), _GxIdeTeamDevCommit_localStatesComboBoxModel = new WeakMap(), _GxIdeTeamDevCommit_rowCheckedChangedByTheUser = new WeakMap(), _GxIdeTeamDevCommit_chGridPendingForUpdateEl = new WeakMap(), _GxIdeTeamDevCommit_commitCheckedClickedHandler = new WeakMap(), _GxIdeTeamDevCommit_commitSingleObject = new WeakMap(), _GxIdeTeamDevCommit_commitObjectsHandler = new WeakMap(), _GxIdeTeamDevCommit_rowMarkingChangedHandler = new WeakMap(), _GxIdeTeamDevCommit_rowSelectionChangedHandler = new WeakMap(), _GxIdeTeamDevCommit_commentsInputHandler = new WeakMap(), _GxIdeTeamDevCommit_applyClientFilter = new WeakMap(), _GxIdeTeamDevCommit_filteredObjects = new WeakMap(), _GxIdeTeamDevCommit_evaluateSecondaryFilterHasConditions = new WeakMap(), _GxIdeTeamDevCommit_toggleFiltersHandler = new WeakMap(), _GxIdeTeamDevCommit_searchInputHandler = new WeakMap(), _GxIdeTeamDevCommit_typeChangedHandler = new WeakMap(), _GxIdeTeamDevCommit_stateChangedHandler = new WeakMap(), _GxIdeTeamDevCommit_folderChanged = new WeakMap(), _GxIdeTeamDevCommit_onRowContextMenuHandler = new WeakMap(), _GxIdeTeamDevCommit_updatePendingCheckedItems = new WeakMap(), _GxIdeTeamDevCommit_setInitialObjectsStatus = new WeakMap(), _GxIdeTeamDevCommit_loadData = new WeakMap(), _GxIdeTeamDevCommit_markPendingObjects = new WeakMap(), _GxIdeTeamDevCommit_revertPendingCommitsCheckboxes = new WeakMap(), _GxIdeTeamDevCommit_togglePendingCommitsCheckboxes = new WeakMap(), _GxIdeTeamDevCommit_sortTabularGridColumnCallback = new WeakMap(), _GxIdeTeamDevCommit_columnSelectorClickedCallback = new WeakMap();
807
664
  function defineCustomElement$1() {
808
665
  if (typeof customElements === "undefined") {
809
666
  return;