@genexus/genexus-ide-ui 1.1.69 → 1.1.71

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 (132) hide show
  1. package/dist/cjs/{utilities-25be3069.js → constants-a2ac1812.js} +70 -1
  2. package/dist/cjs/constants-a2ac1812.js.map +1 -0
  3. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +7 -8
  4. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js.map +1 -1
  5. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +2 -2
  6. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  7. package/dist/cjs/gx-ide-restore-version.cjs.entry.js +5 -4
  8. package/dist/cjs/gx-ide-restore-version.cjs.entry.js.map +1 -1
  9. package/dist/cjs/gx-ide-server-selector.cjs.entry.js +8 -7
  10. package/dist/cjs/gx-ide-server-selector.cjs.entry.js.map +1 -1
  11. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -2
  12. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  13. package/dist/cjs/gx-ide-team-dev-bring-all-changes-selector.cjs.entry.js +14 -7
  14. package/dist/cjs/gx-ide-team-dev-bring-all-changes-selector.cjs.entry.js.map +1 -1
  15. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +3 -3
  16. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +21 -21
  17. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +8 -28
  19. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +3 -3
  21. package/dist/cjs/{tabular-grid-render-c0e0738c.js → tabular-grid-render-37b7153b.js} +12 -86
  22. package/dist/cjs/tabular-grid-render-37b7153b.js.map +1 -0
  23. package/dist/collection/components/restore-version/gx-ide-assets/restore-version/shortcuts.json +15 -0
  24. package/dist/collection/components/restore-version/restore-version.js +6 -5
  25. package/dist/collection/components/restore-version/restore-version.js.map +1 -1
  26. package/dist/collection/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.js +15 -8
  27. package/dist/collection/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.js.map +1 -1
  28. package/dist/collection/components/team-dev/bring-all-changes-selector/gx-ide-assets/team-dev-bring-all-changes-selector/shortcuts.json +15 -0
  29. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js +8 -9
  30. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js.map +1 -1
  31. package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/shortcuts.json +15 -0
  32. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +2 -2
  33. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -1
  34. package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/shortcuts.json +6 -1
  35. package/dist/collection/components/team-dev/history/history.css +3 -0
  36. package/dist/collection/components/team-dev/history/history.js +4 -24
  37. package/dist/collection/components/team-dev/history/history.js.map +1 -1
  38. package/dist/collection/components/team-dev/server-selector/gx-ide-assets/server-selector/shortcuts.json +15 -0
  39. package/dist/collection/components/team-dev/server-selector/server-selector.js +9 -7
  40. package/dist/collection/components/team-dev/server-selector/server-selector.js.map +1 -1
  41. package/dist/collection/components/team-dev/share-kb/gx-ide-assets/share-kb/shortcuts.json +1 -1
  42. package/dist/collection/components/team-dev/share-kb/share-kb.js +2 -2
  43. package/dist/collection/components/team-dev/share-kb/share-kb.js.map +1 -1
  44. package/dist/components/{utilities.js → constants2.js} +68 -2
  45. package/dist/components/constants2.js.map +1 -0
  46. package/dist/components/gx-ide-connect-gx-server.js +8 -9
  47. package/dist/components/gx-ide-connect-gx-server.js.map +1 -1
  48. package/dist/components/gx-ide-create-kb-from-server.js +2 -2
  49. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  50. package/dist/components/gx-ide-restore-version.js +6 -5
  51. package/dist/components/gx-ide-restore-version.js.map +1 -1
  52. package/dist/components/gx-ide-server-selector.js +9 -8
  53. package/dist/components/gx-ide-server-selector.js.map +1 -1
  54. package/dist/components/gx-ide-share-kb.js +2 -2
  55. package/dist/components/gx-ide-share-kb.js.map +1 -1
  56. package/dist/components/gx-ide-team-dev-bring-all-changes-selector.js +15 -8
  57. package/dist/components/gx-ide-team-dev-bring-all-changes-selector.js.map +1 -1
  58. package/dist/components/gx-ide-team-dev-bring-changes.js +1 -1
  59. package/dist/components/gx-ide-team-dev-commit.js +2 -1
  60. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  61. package/dist/components/gx-ide-team-dev-history.js +4 -28
  62. package/dist/components/gx-ide-team-dev-history.js.map +1 -1
  63. package/dist/components/gx-ide-team-dev-update.js +1 -1
  64. package/dist/components/tabular-grid-render.js +2 -72
  65. package/dist/components/tabular-grid-render.js.map +1 -1
  66. package/dist/esm/{utilities-efeffb76.js → constants-31612239.js} +68 -2
  67. package/dist/esm/constants-31612239.js.map +1 -0
  68. package/dist/esm/gx-ide-connect-gx-server.entry.js +8 -9
  69. package/dist/esm/gx-ide-connect-gx-server.entry.js.map +1 -1
  70. package/dist/esm/gx-ide-create-kb-from-server.entry.js +2 -2
  71. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  72. package/dist/esm/gx-ide-restore-version.entry.js +6 -5
  73. package/dist/esm/gx-ide-restore-version.entry.js.map +1 -1
  74. package/dist/esm/gx-ide-server-selector.entry.js +9 -8
  75. package/dist/esm/gx-ide-server-selector.entry.js.map +1 -1
  76. package/dist/esm/gx-ide-share-kb.entry.js +2 -2
  77. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  78. package/dist/esm/gx-ide-team-dev-bring-all-changes-selector.entry.js +15 -8
  79. package/dist/esm/gx-ide-team-dev-bring-all-changes-selector.entry.js.map +1 -1
  80. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +2 -2
  81. package/dist/esm/gx-ide-team-dev-commit.entry.js +5 -5
  82. package/dist/esm/gx-ide-team-dev-history.entry.js +8 -28
  83. package/dist/esm/gx-ide-team-dev-history.entry.js.map +1 -1
  84. package/dist/esm/gx-ide-team-dev-update.entry.js +2 -2
  85. package/dist/esm/{tabular-grid-render-c868fa55.js → tabular-grid-render-d06826a5.js} +3 -74
  86. package/dist/esm/tabular-grid-render-d06826a5.js.map +1 -0
  87. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  88. package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/shortcuts.json +15 -0
  89. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/shortcuts.json +6 -1
  90. package/dist/genexus-ide-ui/gx-ide-assets/restore-version/shortcuts.json +15 -0
  91. package/dist/genexus-ide-ui/gx-ide-assets/server-selector/shortcuts.json +15 -0
  92. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/shortcuts.json +1 -1
  93. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-all-changes-selector/shortcuts.json +15 -0
  94. package/dist/genexus-ide-ui/p-025c9aa4.entry.js +239 -0
  95. package/dist/genexus-ide-ui/p-025c9aa4.entry.js.map +1 -0
  96. package/dist/genexus-ide-ui/p-082015be.js +244 -0
  97. package/dist/{esm/tabular-grid-render-c868fa55.js.map → genexus-ide-ui/p-082015be.js.map} +1 -1
  98. package/dist/genexus-ide-ui/{p-972dc777.entry.js → p-1351412d.entry.js} +3 -3
  99. package/dist/genexus-ide-ui/p-32b37b3d.js +163 -0
  100. package/dist/genexus-ide-ui/p-32b37b3d.js.map +1 -0
  101. package/dist/genexus-ide-ui/{p-85cf50c5.entry.js → p-3ca03a38.entry.js} +31 -55
  102. package/dist/genexus-ide-ui/p-3ca03a38.entry.js.map +1 -0
  103. package/dist/genexus-ide-ui/{p-09693b80.entry.js → p-451994e8.entry.js} +111 -96
  104. package/dist/genexus-ide-ui/p-451994e8.entry.js.map +1 -0
  105. package/dist/genexus-ide-ui/{p-c3cc759d.entry.js → p-8dedbcd9.entry.js} +64 -58
  106. package/dist/genexus-ide-ui/p-8dedbcd9.entry.js.map +1 -0
  107. package/dist/genexus-ide-ui/{p-6ee5d68e.entry.js → p-92a027bc.entry.js} +33 -33
  108. package/dist/genexus-ide-ui/{p-9ffa7afd.entry.js → p-941f470f.entry.js} +3 -1
  109. package/dist/genexus-ide-ui/{p-9ffa7afd.entry.js.map → p-941f470f.entry.js.map} +1 -1
  110. package/dist/genexus-ide-ui/{p-93e79d19.entry.js → p-ac79f7e8.entry.js} +59 -57
  111. package/dist/genexus-ide-ui/{p-93e79d19.entry.js.map → p-ac79f7e8.entry.js.map} +1 -1
  112. package/dist/genexus-ide-ui/{p-e2fd2c24.entry.js → p-c256dc59.entry.js} +3 -3
  113. package/dist/genexus-ide-ui/{p-5e56280c.entry.js → p-eeeb3d52.entry.js} +199 -192
  114. package/dist/genexus-ide-ui/p-eeeb3d52.entry.js.map +1 -0
  115. package/package.json +1 -1
  116. package/dist/cjs/tabular-grid-render-c0e0738c.js.map +0 -1
  117. package/dist/cjs/utilities-25be3069.js.map +0 -1
  118. package/dist/components/utilities.js.map +0 -1
  119. package/dist/esm/utilities-efeffb76.js.map +0 -1
  120. package/dist/genexus-ide-ui/p-09693b80.entry.js.map +0 -1
  121. package/dist/genexus-ide-ui/p-22bdcf23.js +0 -322
  122. package/dist/genexus-ide-ui/p-22bdcf23.js.map +0 -1
  123. package/dist/genexus-ide-ui/p-5e56280c.entry.js.map +0 -1
  124. package/dist/genexus-ide-ui/p-85cf50c5.entry.js.map +0 -1
  125. package/dist/genexus-ide-ui/p-a105f903.entry.js +0 -234
  126. package/dist/genexus-ide-ui/p-a105f903.entry.js.map +0 -1
  127. package/dist/genexus-ide-ui/p-c3cc759d.entry.js.map +0 -1
  128. package/dist/genexus-ide-ui/p-db6c6085.js +0 -95
  129. package/dist/genexus-ide-ui/p-db6c6085.js.map +0 -1
  130. /package/dist/genexus-ide-ui/{p-972dc777.entry.js.map → p-1351412d.entry.js.map} +0 -0
  131. /package/dist/genexus-ide-ui/{p-6ee5d68e.entry.js.map → p-92a027bc.entry.js.map} +0 -0
  132. /package/dist/genexus-ide-ui/{p-e2fd2c24.entry.js.map → p-c256dc59.entry.js.map} +0 -0
@@ -1,22 +1,22 @@
1
1
  import { r as t, h as i, H as e, a } from "./p-9b9ccd0c.js";
2
2
 
3
- import { g as s } from "./p-d42e842b.js";
3
+ import { c as s } from "./p-c5196b3b.js";
4
4
 
5
- import "./p-d4ecd3bb.js";
5
+ import { f as r } from "./p-5bab65ea.js";
6
6
 
7
- import "lit";
7
+ import { L as l } from "./p-311eedf3.js";
8
8
 
9
- import "lit/directives/when.js";
9
+ import { r as n, a as o, I as d } from "./p-32b37b3d.js";
10
10
 
11
- import "lit/directives/if-defined.js";
11
+ import "./p-d42e842b.js";
12
12
 
13
- import { c as r } from "./p-c5196b3b.js";
13
+ import "./p-d4ecd3bb.js";
14
14
 
15
- import { f as l } from "./p-5bab65ea.js";
15
+ import "lit";
16
16
 
17
- import { L as n } from "./p-311eedf3.js";
17
+ import "lit/directives/when.js";
18
18
 
19
- import { r as o, a as c } from "./p-db6c6085.js";
19
+ import "lit/directives/if-defined.js";
20
20
 
21
21
  const mapObjectTypeToComboBoxItemModel = t => t.map((t => ({
22
22
  value: t.id,
@@ -36,7 +36,7 @@ const hasActiveNode = t => {
36
36
 
37
37
  const hasActiveVersionInList = t => t.some(hasActiveNode);
38
38
 
39
- const d = '.custom-icon-text-wrapper{display:flex;align-items:center;gap:10px}.warning-error-description{display:flex;align-items:center;gap:8px;padding:8px;max-inline-size:800px;line-height:1.5}.warning-error-icon{flex-shrink:0}:host{display:grid;grid-template-columns:max-content 1fr;block-size:100%;overflow:auto}.sidebar{background-color:transparent !important;border-inline-end:var(--section-common-border)}.sidebar::part(expand-button){border-radius:var(--control__border-radius)}gx-ide-select-kb-items{--search-input-max-inline-size:300px;opacity:0;transition:opacity var(--mer-timing--fast)}gx-ide-select-kb-items.sidebar-expanded{opacity:1}ch-tabular-grid.tabular-grid--empty::part(main){overflow:hidden}ch-tabular-grid-rowset-empty{position:relative}.main{display:grid;grid-template-rows:max-content 1fr;grid-row-gap:var(--mer-spacing--sm);overflow:auto}.main__header{display:grid}.main__content{position:relative;overflow:auto;display:grid;grid-template-rows:1fr max-content 2fr;grid-row-gap:var(--mer-spacing--sm)}.tabular-grid{overflow:auto}.search-filter{display:grid;grid-template-columns:1fr max-content max-content;gap:var(--gx-ide-grid-column-gap)}.action-buttons{justify-self:flex-end}.filters-grid{display:grid;grid-template-columns:repeat(6, 1fr);grid-template-areas:"from from to to type type" "user user user revision revision revision";grid-gap:var(--gx-ide-grid-column-gap);padding-block-start:var(--mer-spacing--sm)}.filters-container{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--mer-timing--fast)}.filters-container-visible{grid-template-rows:1fr}.filters-container>div{overflow:hidden}.field-from{grid-area:from}.field-to{grid-area:to}.field-type{grid-area:type}.field-user{grid-area:user}.field-revision{grid-area:revision}.commits-grid ch-tabular-grid-cell:is(:nth-child(2)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;min-inline-size:200px}.affected-objects-grid ch-tabular-grid-cell:is(:nth-child(5)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;min-inline-size:200px}';
39
+ const c = '.custom-icon-text-wrapper{display:flex;align-items:center;gap:10px}.warning-error-description{display:flex;align-items:center;gap:8px;padding:8px;max-inline-size:800px;line-height:1.5}.warning-error-icon{flex-shrink:0}:host{display:grid;grid-template-columns:max-content 1fr;block-size:100%;overflow:auto}.sidebar{background-color:transparent !important;border-inline-end:var(--section-common-border)}.sidebar::part(expand-button){border-radius:var(--control__border-radius)}gx-ide-select-kb-items{--search-input-max-inline-size:300px;opacity:0;transition:opacity var(--mer-timing--fast)}gx-ide-select-kb-items.sidebar-expanded{opacity:1}ch-tabular-grid.tabular-grid--empty::part(main){overflow:hidden}ch-tabular-grid-rowset-empty{position:relative}.main{display:grid;grid-template-rows:max-content 1fr;grid-row-gap:var(--mer-spacing--sm);overflow:auto}.main__header{display:grid}.main__content{position:relative;overflow:auto;display:grid;grid-template-rows:1fr max-content 2fr;grid-row-gap:var(--mer-spacing--sm)}.tabular-grid{overflow:auto}.search-filter{display:grid;grid-template-columns:1fr max-content max-content;gap:var(--gx-ide-grid-column-gap)}.action-buttons{justify-self:flex-end}.filters-grid{display:grid;grid-template-columns:repeat(6, 1fr);grid-template-areas:"from from to to type type" "user user user revision revision revision";grid-gap:var(--gx-ide-grid-column-gap);padding-block-start:var(--mer-spacing--sm)}.filters-container{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--mer-timing--fast)}.filters-container-visible{grid-template-rows:1fr}.filters-container>div{overflow:hidden}.field-from{grid-area:from}.field-to{grid-area:to}.field-type{grid-area:type}.field-user{grid-area:user}.field-revision{grid-area:revision}.commits-grid ch-tabular-grid-cell:is(:nth-child(2)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;min-inline-size:200px}.affected-objects-grid ch-tabular-grid-cell:is(:nth-child(5)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;min-inline-size:200px}.button-tertiary.button-icon-only{border-color:var(--control__border-color--enabled)}';
40
40
 
41
41
  var h = undefined && undefined.__classPrivateFieldGet || function(t, i, e, a) {
42
42
  if (e === "a" && !a) throw new TypeError("Private accessor was defined without a getter");
@@ -55,31 +55,7 @@ var f, m, g, p, b, v, w, y, x, k, _, M, W, j, C, z, T, E, F;
55
55
 
56
56
  const I = [ "resets/box-sizing", "utils/form--full", "utils/layout", "utils/spacing", "utils/typography", "chameleon/scrollbar", "components/tabular-grid", "components/accordion", "components/sidebar" ];
57
57
 
58
- const L = s({
59
- category: "window-tools",
60
- name: "filter",
61
- colorType: "primary"
62
- });
63
-
64
- const A = s({
65
- category: "window-tools",
66
- name: "filter",
67
- colorType: "on-surface"
68
- });
69
-
70
- const D = s({
71
- category: "gemini-tools",
72
- name: "reset",
73
- colorType: "primary"
74
- });
75
-
76
- const S = s({
77
- category: "gemini-tools",
78
- name: "search",
79
- colorType: "on-surface"
80
- });
81
-
82
- const $ = class {
58
+ const L = class {
83
59
  constructor(e) {
84
60
  t(this, e);
85
61
  f.set(this, void 0);
@@ -205,7 +181,7 @@ const $ = class {
205
181
  class: "tabular-grid-cell"
206
182
  }, t.user), i("ch-tabular-grid-cell", {
207
183
  class: "tabular-grid-cell"
208
- }, `${l(t.commitDate, "date-time")}`))))) : i("ch-tabular-grid-rowset", {
184
+ }, `${r(t.commitDate, "date-time")}`))))) : i("ch-tabular-grid-rowset", {
209
185
  class: "tabular-grid-rowset"
210
186
  }, i("ch-tabular-grid-rowset-empty", null, i("gx-ide-empty-state", {
211
187
  stateTitle: h(this, f, "f").emptyRevisionsText,
@@ -217,12 +193,12 @@ const $ = class {
217
193
  T.set(this, (() => {
218
194
  var t, e;
219
195
  const a = this.historyDetail ? this.historyDetail.objects : [];
220
- const s = ((e = (t = this.historyDetail) === null || t === void 0 ? void 0 : t.objects) === null || e === void 0 ? void 0 : e.length) === 0 || !this.historyDetail;
196
+ const r = ((e = (t = this.historyDetail) === null || t === void 0 ? void 0 : t.objects) === null || e === void 0 ? void 0 : e.length) === 0 || !this.historyDetail;
221
197
  return i("ch-tabular-grid", {
222
198
  class: {
223
199
  "affected-objects-grid": true,
224
200
  "tabular-grid": true,
225
- "tabular-grid--empty": s
201
+ "tabular-grid--empty": r
226
202
  }
227
203
  }, i("ch-tabular-grid-columnset", {
228
204
  class: "tabular-grid-column-set"
@@ -231,25 +207,25 @@ const $ = class {
231
207
  "column-name-position": "text",
232
208
  class: "tabular-grid-column",
233
209
  settingable: false,
234
- size: r.tabularGrid.colSize.maxContent
210
+ size: s.tabularGrid.colSize.maxContent
235
211
  }), i("ch-tabular-grid-column", {
236
212
  "column-name": h(this, f, "f").affectedObjectsGrid.columns.types,
237
213
  "column-name-position": "text",
238
214
  class: "tabular-grid-column",
239
215
  settingable: false,
240
- size: r.tabularGrid.colSize.maxContent
216
+ size: s.tabularGrid.colSize.maxContent
241
217
  }), i("ch-tabular-grid-column", {
242
218
  "column-name": h(this, f, "f").affectedObjectsGrid.columns.description,
243
219
  "column-name-position": "text",
244
220
  class: "tabular-grid-column",
245
221
  settingable: false,
246
- size: r.tabularGrid.colSize.auto
222
+ size: s.tabularGrid.colSize.auto
247
223
  }), i("ch-tabular-grid-column", {
248
224
  "column-name": h(this, f, "f").affectedObjectsGrid.columns.action,
249
225
  "column-name-position": "text",
250
226
  class: "tabular-grid-column",
251
227
  settingable: false,
252
- size: r.tabularGrid.colSize.maxContent
228
+ size: s.tabularGrid.colSize.maxContent
253
229
  })), this.historyDetail && this.historyDetail.objects.length > 0 ? i("ch-tabular-grid-rowset", {
254
230
  class: "tabular-grid-rowset"
255
231
  }, a.map((t => i("ch-tabular-grid-row", {
@@ -258,14 +234,14 @@ const $ = class {
258
234
  class: "tabular-grid-cell"
259
235
  }, t.name), i("ch-tabular-grid-cell", {
260
236
  class: "tabular-grid-cell"
261
- }, o(t.type)), i("ch-tabular-grid-cell", {
237
+ }, n(t.type)), i("ch-tabular-grid-cell", {
262
238
  class: "tabular-grid-cell"
263
239
  }, t.description), i("ch-tabular-grid-cell", {
264
240
  class: "tabular-grid-cell"
265
- }, c(t.state)))))) : i("ch-tabular-grid-rowset", {
241
+ }, o(t.state)))))) : i("ch-tabular-grid-rowset", {
266
242
  class: "tabular-grid-rowset"
267
243
  }, i("ch-tabular-grid-rowset-empty", null, i("gx-ide-empty-state", {
268
- stateIconSrc: A,
244
+ stateIconSrc: d.filter,
269
245
  stateTitle: h(this, f, "f").emptyHistoryDetailText,
270
246
  isAnimated: true
271
247
  }))), i("ch-tabular-grid-row", {
@@ -282,7 +258,7 @@ const $ = class {
282
258
  F.set(this, (t => {
283
259
  const i = t.split(" - ");
284
260
  const e = new Date(i[1]);
285
- const a = l(e, "date-time");
261
+ const a = r(e, "date-time");
286
262
  return `${i[0]} - ${a} - ${i[2]}`;
287
263
  }));
288
264
  this.historyDetail = undefined;
@@ -328,7 +304,7 @@ const $ = class {
328
304
  }
329
305
  }
330
306
  async componentWillLoad() {
331
- u(this, f, await n.getComponentStrings(this.el), "f");
307
+ u(this, f, await l.getComponentStrings(this.el), "f");
332
308
  u(this, m, mapObjectTypeToComboBoxItemModel(this.types), "f");
333
309
  }
334
310
  async componentDidLoad() {
@@ -373,28 +349,28 @@ const $ = class {
373
349
  }, h(this, f, "f").filters.search), i("ch-edit", {
374
350
  value: "",
375
351
  class: "input",
376
- startImgSrc: S,
352
+ startImgSrc: d.search,
377
353
  part: "search",
378
354
  id: "search",
379
355
  ref: t => u(this, b, t, "f")
380
356
  })), i("button", {
381
357
  id: "filter-toggle-button",
382
- class: "button-teritary button-icon-only",
358
+ class: "button-tertiary button-icon-only",
383
359
  "aria-label": h(this, f, "f").searchFilter.filterAriaLabel,
384
360
  "aria-expanded": this.filtersHidden ? "false" : "true",
385
361
  "aria-controls": "filters-container",
386
362
  onClick: () => h(this, C, "f").call(this)
387
363
  }, i("ch-image", {
388
364
  class: "icon-md",
389
- src: L
365
+ src: d.filter
390
366
  })), i("button", {
391
- class: "button-teritary button-icon-only",
367
+ class: "button-tertiary button-icon-only",
392
368
  "aria-label": h(this, f, "f").searchFilter.reloadAriaLabel,
393
369
  onClick: () => h(this, _, "f").call(this, this.selectedVersionId, true),
394
370
  part: h(this, f, "f").searchFilter.reloadAriaLabel
395
371
  }, i("ch-image", {
396
372
  class: "icon-md",
397
- src: D
373
+ src: d.refresh
398
374
  }))), i("div", {
399
375
  id: "filters-container",
400
376
  "aria-labelledby": "filter-toggle-button",
@@ -499,7 +475,7 @@ v = new WeakMap, w = new WeakMap, y = new WeakMap, x = new WeakMap, k = new Weak
499
475
  _ = new WeakMap, M = new WeakMap, W = new WeakMap, j = new WeakMap, C = new WeakMap,
500
476
  z = new WeakMap, T = new WeakMap, E = new WeakMap, F = new WeakMap;
501
477
 
502
- $.style = d;
478
+ L.style = c;
503
479
 
504
- export { $ as gx_ide_team_dev_history };
505
- //# sourceMappingURL=p-85cf50c5.entry.js.map
480
+ export { L as gx_ide_team_dev_history };
481
+ //# sourceMappingURL=p-3ca03a38.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mapObjectTypeToComboBoxItemModel","objectTypeModel","map","objectType","value","id","caption","name","startImgSrc","icon","hasActiveNode","node","active","Array","isArray","nodes","some","hasActiveVersionInList","versionsList","historyCss","CSS_BUNDLES","GxIdeTeamDevHistory","_GxIdeTeamDevHistory__componentLocale","set","this","_GxIdeTeamDevHistory_types","_GxIdeTeamDevHistory_fromEl","_GxIdeTeamDevHistory_revisionEl","_GxIdeTeamDevHistory_searchEl","_GxIdeTeamDevHistory_toEl","_GxIdeTeamDevHistory_typesEl","_GxIdeTeamDevHistory_userEl","_GxIdeTeamDevHistory_sidebarEl","_GxIdeTeamDevHistory_revisionsGridEl","_GxIdeTeamDevHistory_getObjectsFromVersion","async","versionId","isRefresh","loading","filters","search","__classPrivateFieldGet","from","Date","to","revision","user","type","objects","loadCallback","_GxIdeTeamDevHistory_getSelectedRevision","call","_a","error","versions","historyDetail","selectedRevisionId","revisionId","loadDetailCallback","title","_GxIdeTeamDevHistory_formatHistoryDetailDate","_GxIdeTeamDevHistory_registerGridContextMenuListener","addEventListener","ev","preventDefault","stopPropagation","_GxIdeTeamDevHistory_gridContextMenuCallbackHandler","gridContextMenuCallback","selection","clientX","clientY","_GxIdeTeamDevHistory_toggleFiltersHandler","filtersHidden","_GxIdeTeamDevHistory_renderCommitsGrid","tabularGridEmpty","length","h","class","onSelectionChanged","detail","rowsId","ref","el","__classPrivateFieldSet","selectRow","mainGrid","columns","settingable","size","comment","commitDate","obj","rowid","key","formatDate","stateTitle","emptyRevisionsText","isAnimated","_GxIdeTeamDevHistory_renderAffectedObjectsGrid","iterable","_b","affectedObjectsGrid","config","tabularGrid","colSize","maxContent","types","description","auto","action","renderObjectTypeWithIcon","renderObjectStateWithIcon","state","stateIconSrc","ICONS","filter","emptyHistoryDetailText","_GxIdeTeamDevHistory_renderLoader","loaderTitle","loader","show","parts","split","datePart","formattedDate","selectedVersionIdChanged","newSelectedVersionId","oldSelectedVersionId","versionsListChanged","newVersionsList","hasActiveVersion","selectedVersionId","isFirstLoad","componentWillLoad","Locale","getComponentStrings","componentDidLoad","e","sidebarExpanded","render","Host","model","expanded","expandButtonCollapseAccessibleName","sidebar","collapseAriaLabel","expandButtonExpandAccessibleName","expandAriaLabel","showExpandButton","checkboxType","itemsList","expandOnClick","selectionChanged","selectedVersionChangeCallback","itemContextMenuCallback","htmlFor","part","searchFilter","filterAriaLabel","onClick","src","reloadAriaLabel","refresh","inert","hidden","accessibleName","multiline","autoGrow","readonly"],"sources":["src/components/team-dev/history/helpers.ts","src/components/team-dev/history/history.scss?tag=gx-ide-team-dev-history&encapsulation=shadow","src/components/team-dev/history/history.tsx"],"sourcesContent":["import { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\nimport { ObjectType, GxOption } from \"../../../common/types\";\nimport { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { ItemNode } from \"../../select-kb-items/select-kb-items\";\n\nexport const mapObjectTypeToComboBoxItemModel = (\n objectTypeModel: ObjectType[]\n): ComboBoxItemModel[] =>\n objectTypeModel.map(objectType => ({\n value: objectType.id,\n caption: objectType.name,\n startImgSrc: objectType.icon\n }));\n\nexport const mapCategoryToComboBoxItemModel = (\n categoryModel: GxOption[]\n): ComboBoxModel =>\n categoryModel.map(category => ({\n value: category.id,\n caption: category.label\n }));\n\nconst hasActiveNode = (node: any): boolean => {\n if (node.active) {\n return true;\n }\n if (Array.isArray(node.nodes)) {\n return node.nodes.some(hasActiveNode);\n }\n return false;\n};\n\nexport const hasActiveVersionInList = (versionsList: ItemNode[]): boolean => {\n return versionsList.some(hasActiveNode);\n};\n","@import \"../../../../node_modules/@genexus/mercury/dist/assets/scss/helpers.scss\";\n@import \"../common/styles.scss\";\n\n// TODO: this should be a class on Mercury.\n// Not sure if applying \".field-group\" is the right thing to do.\n$commonRowGap: var(--mer-spacing--sm);\n\n:host {\n display: grid;\n grid-template-columns: max-content 1fr;\n block-size: 100%;\n overflow: auto;\n}\n\n.sidebar {\n background-color: transparent !important; // TODO: Apply elevation classes on Mercury.\n border-inline-end: var(--section-common-border);\n}\n\n.sidebar::part(expand-button) {\n border-radius: var(--control__border-radius);\n}\n\ngx-ide-select-kb-items {\n --search-input-max-inline-size: 300px;\n opacity: 0;\n transition: opacity var(--mer-timing--fast);\n}\ngx-ide-select-kb-items.sidebar-expanded {\n opacity: 1;\n}\n\nch-tabular-grid.tabular-grid--empty::part(main) {\n // WA to avoid scrollbar flickering when displaying the empty-state message\n overflow: hidden;\n}\n\nch-tabular-grid-rowset-empty {\n position: relative; // makes this the bounder element for the loader\n}\n\n.main {\n display: grid;\n grid-template-rows: max-content 1fr;\n grid-row-gap: $commonRowGap;\n overflow: auto;\n}\n.main__header {\n display: grid;\n}\n.main__content {\n position: relative;\n overflow: auto;\n display: grid;\n grid-template-rows: 1fr max-content 2fr;\n grid-row-gap: $commonRowGap;\n}\n\n.tabular-grid {\n overflow: auto;\n}\n\n/*SECOND GRID*/\n.search-filter {\n display: grid;\n grid-template-columns: 1fr max-content max-content;\n gap: var(--gx-ide-grid-column-gap);\n}\n\n.action-buttons {\n justify-self: flex-end;\n}\n\n.filters-grid {\n display: grid;\n grid-template-columns: repeat(6, 1fr);\n grid-template-areas:\n \"from from to to type type\"\n \"user user user revision revision revision\";\n grid-gap: var(--gx-ide-grid-column-gap);\n padding-block-start: $commonRowGap;\n}\n\n.filters-container {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--mer-timing--fast);\n}\n\n.filters-container-visible {\n grid-template-rows: 1fr;\n}\n\n.filters-container > div {\n overflow: hidden;\n}\n\n.field-from {\n grid-area: from;\n}\n\n.field-to {\n grid-area: to;\n}\n.field-type {\n grid-area: type;\n}\n.field-user {\n grid-area: user;\n}\n.field-revision {\n grid-area: revision;\n}\n\n// commits grid \"comment\" column\n@include tabular-grid-cell-layout(\n $tabular-grid-selector: \".commits-grid\",\n $tabular-grid-cell-node-type: \"text\",\n $tabular-grid-cell-min-inline-size: 200px,\n $tabular-grid-affected-columns-nth-list: (\n 2\n )\n);\n\n// affected objects grid \"description\" column\n@include tabular-grid-cell-layout(\n $tabular-grid-selector: \".affected-objects-grid\",\n $tabular-grid-cell-node-type: \"text\",\n $tabular-grid-cell-min-inline-size: 200px,\n $tabular-grid-affected-columns-nth-list: (\n 5\n )\n);\n\n.button-tertiary.button-icon-only {\n border-color: var(--control__border-color--enabled);\n}\n","/* STENCIL IMPORTS */\nimport { Component, Element, h, Host, Prop, State, Watch } from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { config } from \"../../../common/config\";\nimport { formatDate } from \"../../../common/helpers\";\nimport { Locale } from \"../../../common/locale\";\nimport { ContextMenuInfo } from \"../../../components\";\nimport { ItemNode } from \"../../select-kb-items/select-kb-items\";\nimport {\n renderObjectStateWithIcon,\n renderObjectTypeWithIcon\n} from \"../common/utilities\";\nimport ICONS from \"../version-control/common/constants\";\nimport { ObjectState } from \"../version-control/common/types\";\nimport {\n hasActiveVersionInList,\n mapObjectTypeToComboBoxItemModel\n} from \"./helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\",\n \"chameleon/scrollbar\",\n \"components/tabular-grid\",\n \"components/accordion\",\n \"components/sidebar\"\n];\n\n@Component({\n tag: \"gx-ide-team-dev-history\",\n styleUrl: \"history.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-history\"]\n})\nexport class GxIdeTeamDevHistory {\n #_componentLocale: any;\n\n #types: ComboBoxItemModel[] = [];\n\n @Element() el: HTMLGxIdeTeamDevHistoryElement;\n\n #fromEl?: HTMLChEditElement;\n #revisionEl?: HTMLChEditElement;\n #searchEl: HTMLChEditElement;\n #toEl?: HTMLChEditElement;\n #typesEl?: HTMLChComboBoxRenderElement;\n #userEl?: HTMLChEditElement;\n #sidebarEl: HTMLChSidebarElement;\n #revisionsGridEl: HTMLChTabularGridElement;\n\n @State() historyDetail: RevisionDetailData;\n\n /**\n * The files rendered in the table\n */\n @State() objects: RevisionData[] = [];\n\n /**\n * Used to call getObjectsFromVersion from the versionsChanged method only once after receiving the versions for the first time.\n */\n @State() isFirstLoad: boolean = true;\n\n /**\n * Used to hide the select-kb-items when collapsed\n */\n @State() sidebarExpanded: boolean = true;\n\n /**\n * Used to show or hide the filters section\n */\n @State() filtersHidden = true;\n\n /**\n * To show a loader when the component is loading\n */\n @State() loading: boolean = true;\n\n /**\n * The Id of the selected revision in the revisions grid\n */\n @State() selectedRevisionId: string;\n\n /**\n * Used to customize the select-kb-items \"header\" part grid layout\n */\n @State() hasActiveVersion: boolean = false; // TODO:\n\n /**\n * Possible values of type filter\n */\n @Prop() readonly types: ObjectType[];\n\n /**\n * Callback emitted when the user right click on an item\n */\n @Prop() readonly itemContextMenuCallback: (\n info: ContextMenuInfo\n ) => Promise<void>;\n\n /**\n * Callback invoked when user right-clicks on the grid\n */\n @Prop() readonly gridContextMenuCallback: (\n info: ContextMenuInfo\n ) => Promise<void>;\n\n /**\n * The Id of the selected version in the select-kb-items component\n */\n @Prop({ mutable: true }) selectedVersionId: string;\n @Watch(\"selectedVersionId\")\n async selectedVersionIdChanged(\n newSelectedVersionId: string,\n oldSelectedVersionId?: string\n ) {\n if (newSelectedVersionId === oldSelectedVersionId) {\n return;\n }\n\n // Reset filters\n this.#searchEl.value = null;\n this.#fromEl.value = null;\n this.#toEl.value = null;\n this.#revisionEl.value = null;\n this.#userEl.value = null;\n this.#typesEl.value = this.#types[0]?.value;\n\n await this.#getObjectsFromVersion(newSelectedVersionId, false);\n }\n\n /**\n * List of versions to show in the versions tree\n */\n @Prop({ mutable: true }) versions: ItemNode[];\n @Watch(\"versions\")\n async versionsListChanged(newVersionsList: ItemNode[]) {\n this.versions = newVersionsList;\n this.hasActiveVersion = hasActiveVersionInList(newVersionsList);\n\n if (\n newVersionsList.length > 0 &&\n this.selectedVersionId &&\n this.isFirstLoad\n ) {\n await this.#getObjectsFromVersion(this.selectedVersionId, false);\n this.isFirstLoad = false;\n } else if (newVersionsList.length === 0 && this.isFirstLoad) {\n this.loading = false;\n this.isFirstLoad = false;\n }\n }\n\n /**\n * Callback invoked when is necessary to reload the history info. Receive the filters as parameters and only returns the info corresponding to the master grid.\n\n */\n @Prop() readonly loadCallback: LoadCallback;\n\n /**\n * Callback invoked to obtain detailed info from a revision. As parameter receive internal revision id\n */\n @Prop() readonly loadDetailCallback: LoadDetailCallback;\n\n /**\n * Callback invoked when the selected version changes. As parameter receive the selected version id\n */\n @Prop() readonly selectedVersionChangeCallback: SelectedVersionChangeCallback;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.#types = mapObjectTypeToComboBoxItemModel(this.types);\n }\n\n async componentDidLoad() {\n this.#sidebarEl.addEventListener(\n \"expandedChange\",\n (e: CustomEvent<boolean>) => {\n this.sidebarExpanded = e.detail;\n }\n );\n }\n\n #getObjectsFromVersion = async (\n versionId: string,\n isRefresh: boolean\n ): Promise<void> => {\n this.loading = true;\n\n const filters: FiltersData = {\n search: this.#searchEl.value ? this.#searchEl.value : \"\",\n from: this.#fromEl.value ? new Date(this.#fromEl.value) : null,\n to: this.#toEl.value ? new Date(this.#toEl.value) : null,\n revision: this.#revisionEl.value ? this.#revisionEl.value : \"\",\n user: this.#userEl.value ? this.#userEl.value : \"\",\n type: this.#typesEl.value === \"all\" ? \"\" : this.#typesEl.value\n };\n try {\n this.objects = await this.loadCallback(filters, versionId, isRefresh);\n await this.#getSelectedRevision(this.objects[0]?.id);\n } catch (error) {\n this.versions = [];\n this.objects = [];\n this.historyDetail = null;\n this.selectedRevisionId = null;\n } finally {\n this.loading = false;\n }\n };\n\n #getSelectedRevision = async (revisionId: string) => {\n if (revisionId) {\n this.historyDetail = await this.loadDetailCallback(revisionId);\n this.historyDetail.title = this.#formatHistoryDetailDate(\n this.historyDetail.title\n );\n this.selectedRevisionId = revisionId;\n } else {\n this.historyDetail = null;\n }\n };\n\n #registerGridContextMenuListener = (): void => {\n if (this.#revisionsGridEl) {\n this.#revisionsGridEl.addEventListener(\n \"contextmenu\",\n (ev: MouseEvent): void => {\n ev.preventDefault();\n ev.stopPropagation();\n this.#gridContextMenuCallbackHandler(ev);\n }\n );\n }\n };\n\n #gridContextMenuCallbackHandler = async (ev: MouseEvent): Promise<void> => {\n this.gridContextMenuCallback({\n selection: [this.selectedRevisionId],\n clientX: ev.clientX,\n clientY: ev.clientY\n });\n };\n\n #toggleFiltersHandler = () => {\n this.filtersHidden = !this.filtersHidden;\n };\n\n #renderCommitsGrid = (): Element => {\n const tabularGridEmpty = this.objects?.length === 0 || !this.objects;\n return (\n <ch-tabular-grid\n class={{\n \"commits-grid\": true,\n \"tabular-grid\": true,\n \"tabular-grid--empty\": tabularGridEmpty\n }}\n onSelectionChanged={(ev: any) => {\n this.objects.length > 0 &&\n this.#getSelectedRevision(ev.detail.rowsId[0]);\n }}\n ref={(el: HTMLChTabularGridElement) => {\n if (el && this.#revisionsGridEl !== el) {\n this.#revisionsGridEl = el as HTMLChTabularGridElement;\n\n this.#registerGridContextMenuListener();\n\n if (this.objects.length > 0) {\n this.#revisionsGridEl.selectRow(this.objects[0]?.id, true);\n }\n }\n }}\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n column-name={this.#_componentLocale.mainGrid.columns.id}\n column-name-position=\"text\"\n class=\"tabular-grid-column\"\n settingable={false}\n size=\"max-content\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#_componentLocale.mainGrid.columns.comment}\n column-name-position=\"text\"\n class=\"tabular-grid-column\"\n settingable={false}\n size=\"1fr\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#_componentLocale.mainGrid.columns.user}\n column-name-position=\"text\"\n class=\"tabular-grid-column\"\n settingable={false}\n size=\"max-content\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#_componentLocale.mainGrid.columns.commitDate}\n column-name-position=\"text\"\n class=\"tabular-grid-column\"\n settingable={false}\n size=\"max-content\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n {this.objects.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objects.map((obj: RevisionData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n key={obj.id}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.id}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.comment}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.user}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(obj.commitDate, \"date-time\")}`}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateTitle={this.#_componentLocale.emptyRevisionsText}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n\n <ch-tabular-grid-row class=\"tabular-grid-row\"></ch-tabular-grid-row>\n </ch-tabular-grid>\n );\n };\n\n #renderAffectedObjectsGrid = (): Element => {\n const iterable = this.historyDetail ? this.historyDetail.objects : [];\n const tabularGridEmpty =\n this.historyDetail?.objects?.length === 0 || !this.historyDetail;\n return (\n <ch-tabular-grid\n class={{\n \"affected-objects-grid\": true,\n \"tabular-grid\": true,\n \"tabular-grid--empty\": tabularGridEmpty\n }}\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n column-name={\n this.#_componentLocale.affectedObjectsGrid.columns.name\n }\n column-name-position=\"text\"\n class=\"tabular-grid-column\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={\n this.#_componentLocale.affectedObjectsGrid.columns.types\n }\n column-name-position=\"text\"\n class=\"tabular-grid-column\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={\n this.#_componentLocale.affectedObjectsGrid.columns.description\n }\n column-name-position=\"text\"\n class=\"tabular-grid-column\"\n settingable={false}\n size={config.tabularGrid.colSize.auto}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={\n this.#_componentLocale.affectedObjectsGrid.columns.action\n }\n column-name-position=\"text\"\n class=\"tabular-grid-column\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n {this.historyDetail && this.historyDetail.objects.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {iterable.map((obj: ObjectData) => (\n <ch-tabular-grid-row class=\"tabular-grid-row\">\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectTypeWithIcon(obj.type)}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectStateWithIcon(obj.state)}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateIconSrc={ICONS.filter}\n stateTitle={this.#_componentLocale.emptyHistoryDetailText}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n\n <ch-tabular-grid-row class=\"tabular-grid-row\"></ch-tabular-grid-row>\n </ch-tabular-grid>\n );\n };\n\n #renderLoader = (): Element => {\n return (\n this.loading && (\n <div class=\"main__content scrollable\">\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n show\n description={this.#_componentLocale.loader.description}\n ></gx-ide-loader>\n </div>\n )\n );\n };\n\n #formatHistoryDetailDate = (title: string): string => {\n const parts = title.split(\" - \");\n const datePart = new Date(parts[1]);\n const formattedDate = formatDate(datePart, \"date-time\");\n return `${parts[0]} - ${formattedDate} - ${parts[2]}`;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <ch-sidebar\n ref={(el: HTMLChSidebarElement) =>\n (this.#sidebarEl = el as HTMLChSidebarElement)\n }\n class=\"sidebar\"\n expanded={this.sidebarExpanded}\n expandButtonCollapseAccessibleName={\n this.#_componentLocale.sidebar.collapseAriaLabel\n }\n expandButtonExpandAccessibleName={\n this.#_componentLocale.sidebar.expandAriaLabel\n }\n showExpandButton\n >\n <gx-ide-select-kb-items\n class={{\n \"sidebar-expanded\": this.sidebarExpanded,\n \"has-active-version\": this.hasActiveVersion\n }}\n checkboxType=\"none\"\n itemsList={this.versions}\n expandOnClick={false}\n selectionChanged={this.selectedVersionChangeCallback}\n itemContextMenuCallback={this.itemContextMenuCallback}\n ></gx-ide-select-kb-items>\n </ch-sidebar>\n\n <main class=\"main spacing-body-block-start spacing-body-inline\">\n <div class=\"main__header\">\n <div class=\"search-filter\">\n <div class=\"field field-inline\">\n <label class=\"label\" htmlFor=\"search\">\n {this.#_componentLocale.filters.search}\n </label>\n <ch-edit\n value=\"\"\n class=\"input\"\n startImgSrc={ICONS.search}\n part=\"search\"\n id=\"search\"\n ref={(el: HTMLChEditElement) =>\n (this.#searchEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n\n <button\n id=\"filter-toggle-button\"\n class=\"button-tertiary button-icon-only\"\n aria-label={this.#_componentLocale.searchFilter.filterAriaLabel}\n aria-expanded={this.filtersHidden ? \"false\" : \"true\"}\n aria-controls=\"filters-container\"\n onClick={() => this.#toggleFiltersHandler()}\n >\n <ch-image class=\"icon-md\" src={ICONS.filter}></ch-image>\n </button>\n\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={this.#_componentLocale.searchFilter.reloadAriaLabel}\n onClick={() =>\n this.#getObjectsFromVersion(this.selectedVersionId, true)\n }\n part={this.#_componentLocale.searchFilter.reloadAriaLabel}\n >\n <ch-image class=\"icon-md\" src={ICONS.refresh}></ch-image>\n </button>\n </div>\n\n <div\n id=\"filters-container\"\n aria-labelledby=\"filter-toggle-button\"\n class={{\n \"filters-container-visible\": !this.filtersHidden,\n \"filters-container\": true\n }}\n inert={this.filtersHidden}\n hidden={this.filtersHidden}\n >\n <div>\n <div class=\"filters-grid\">\n <div class=\"field field-block field-from\">\n <label class=\"label\" htmlFor=\"from\">\n {this.#_componentLocale.filters.from}\n </label>\n <ch-edit\n value=\"\"\n class=\"input\"\n type=\"date\"\n part=\"from\"\n id=\"from\"\n ref={(el: HTMLChEditElement) =>\n (this.#fromEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n\n <div class=\"field field-block field-to\">\n <label class=\"label\" htmlFor=\"to\">\n {this.#_componentLocale.filters.to}\n </label>\n <ch-edit\n value=\"\"\n class=\"input\"\n type=\"date\"\n id=\"to\"\n ref={(el: HTMLChEditElement) =>\n (this.#toEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n\n <div class=\"field field-block field-type\">\n <label class=\"label\" htmlFor=\"type\">\n {this.#_componentLocale.filters.type}\n </label>\n\n <ch-combo-box-render\n accessibleName=\"types\"\n class=\"combo-box\"\n part=\"type\"\n model={this.#types}\n value={this.#types[0]?.value}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#typesEl = el as HTMLChComboBoxRenderElement)\n }\n ></ch-combo-box-render>\n </div>\n\n <div class=\"field field-block field-user\">\n <label class=\"label\" htmlFor=\"user\">\n {this.#_componentLocale.filters.user}\n </label>\n\n <ch-edit\n value=\"\"\n part=\"user\"\n class=\"input\"\n id=\"user\"\n ref={(el: HTMLChEditElement) =>\n (this.#userEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n\n <div class=\"field field-block field-revision\">\n <label class=\"label\" htmlFor=\"revision\">\n {this.#_componentLocale.filters.revision}\n </label>\n\n <ch-edit\n value=\"\"\n part=\"revision\"\n class=\"input\"\n id=\"revision\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {this.#renderLoader()}\n\n {!this.loading && (\n <div class=\"main__content scrollable\">\n {this.#renderCommitsGrid()}\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"comment-area\">\n {this.historyDetail ? this.historyDetail.title : null}\n </label>\n <ch-edit\n class=\"input comment-text-area\"\n value={this.historyDetail ? this.historyDetail.comment : null}\n multiline\n autoGrow\n readonly={true}\n part=\"comment-area\"\n id=\"comment-area\"\n ></ch-edit>\n </div>\n\n {this.#renderAffectedObjectsGrid()}\n </div>\n )}\n </main>\n </Host>\n );\n }\n}\n\n// Types\nexport type ObjectType = {\n id: string;\n name: string;\n icon?: string;\n};\n\nexport type FiltersData = {\n search: string;\n from?: Date;\n to?: Date;\n user?: string;\n revision?: string;\n type?: string;\n};\nexport type RevisionData = {\n id: string;\n comment: string;\n user: string;\n commitDate: Date;\n};\n\nexport type RevisionDetailData = {\n title: string;\n comment: string;\n objects: ObjectData[];\n};\nexport type ObjectData = {\n typeIcon: string;\n state: ObjectState;\n name: string;\n type: ObjectType;\n description: string;\n action: string;\n};\n\nexport type LoadCallback = (\n filters: FiltersData,\n versionId: string,\n isRefresh: boolean\n) => Promise<RevisionData[]>;\n\nexport type LoadDetailCallback = (\n revision: string\n) => Promise<RevisionDetailData>;\n\nexport type SelectedVersionChangeCallback = (\n selectedVersion: string[]\n) => Promise<void>;\n"],"mappings":"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"}