@genexus/genexus-ide-ui 1.0.69 → 1.0.70

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 (33) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-ww-files.cjs.entry.js +372 -0
  3. package/dist/cjs/gx-ide-ww-files.cjs.entry.js.map +1 -0
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/collection/collection-manifest.json +1 -0
  6. package/dist/collection/components/ww-files/gx-ide-assets/ww-files/langs/ww-files.lang.en.json +45 -0
  7. package/dist/collection/components/ww-files/gx-ide-assets/ww-files/langs/ww-files.lang.ja.json +45 -0
  8. package/dist/collection/components/ww-files/gx-ide-assets/ww-files/langs/ww-files.lang.zh.json +45 -0
  9. package/dist/collection/components/ww-files/helpers.js +11 -0
  10. package/dist/collection/components/ww-files/helpers.js.map +1 -0
  11. package/dist/collection/components/ww-files/ww-files.css +147 -0
  12. package/dist/collection/components/ww-files/ww-files.js +822 -0
  13. package/dist/collection/components/ww-files/ww-files.js.map +1 -0
  14. package/dist/collection/testing/locale.e2e.js +1 -0
  15. package/dist/collection/testing/locale.e2e.js.map +1 -1
  16. package/dist/components/gx-ide-ww-files.d.ts +11 -0
  17. package/dist/components/gx-ide-ww-files.js +427 -0
  18. package/dist/components/gx-ide-ww-files.js.map +1 -0
  19. package/dist/esm/genexus-ide-ui.js +1 -1
  20. package/dist/esm/gx-ide-ww-files.entry.js +368 -0
  21. package/dist/esm/gx-ide-ww-files.entry.js.map +1 -0
  22. package/dist/esm/loader.js +1 -1
  23. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  24. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  25. package/dist/genexus-ide-ui/gx-ide-assets/ww-files/langs/ww-files.lang.en.json +45 -0
  26. package/dist/genexus-ide-ui/gx-ide-assets/ww-files/langs/ww-files.lang.ja.json +45 -0
  27. package/dist/genexus-ide-ui/gx-ide-assets/ww-files/langs/ww-files.lang.zh.json +45 -0
  28. package/dist/genexus-ide-ui/p-839f1b44.entry.js +564 -0
  29. package/dist/genexus-ide-ui/p-839f1b44.entry.js.map +1 -0
  30. package/dist/types/components/ww-files/helpers.d.ts +3 -0
  31. package/dist/types/components/ww-files/ww-files.d.ts +172 -0
  32. package/dist/types/components.d.ts +200 -12
  33. package/package.json +1 -1
@@ -0,0 +1,45 @@
1
+ {
2
+ "name": "",
3
+ "location": "",
4
+ "filter": {
5
+ "title": "",
6
+ "name": "",
7
+ "type": "",
8
+ "content": "",
9
+ "category": "",
10
+ "moduleFolder": "",
11
+ "search": "",
12
+ "allDescendants": "",
13
+ "modified": "",
14
+ "user": "",
15
+ "dateTime": "",
16
+ "after": "",
17
+ "accordionCaption": "",
18
+ "afterNone": "",
19
+ "afterDateTime": "",
20
+ "afterLastBuild": "",
21
+ "afterImport": "",
22
+ "btnMore": "",
23
+ "btnLess": ""
24
+ },
25
+ "objCount": {
26
+ "selected": "",
27
+ "matching": ""
28
+ },
29
+ "tableHead": {
30
+ "name": "",
31
+ "type": "",
32
+ "module": "",
33
+ "description": "",
34
+ "modifiedDate": "",
35
+ "importDate": "",
36
+ "lastBuildDate": "",
37
+ "lastUser": ""
38
+ },
39
+ "footer": {
40
+ "btnSelectAll": "",
41
+ "btnNew": "",
42
+ "btnOk": "",
43
+ "btnCancel": ""
44
+ }
45
+ }
@@ -0,0 +1,564 @@
1
+ import { r as i, c as t, h as e, H as s, a as n } from "./p-25a9f1d7.js";
2
+
3
+ import { L as a } from "./p-311eedf3.js";
4
+
5
+ import { c as l } from "./p-13738332.js";
6
+
7
+ const mapOptionsToComboBoxItemModel = i => i.map((i => {
8
+ var t;
9
+ return {
10
+ value: i.id,
11
+ caption: i.label,
12
+ startImgSrc: (t = i.iconName) !== null && t !== void 0 ? t : ""
13
+ };
14
+ }));
15
+
16
+ const r = '/*Gx Ide*/\n/*@container queries*/\n/* hiChar styles\nFound on /common/helpers.tsx hiChar function is used to add a span/class to every character that matches a search value. It is used to help the user see why the filter results are filtered. The span/class on the characters are useless without proper styling.\n*/\n@keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n:host {\n container-type: inline-size;\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.hide {\n display: none !important;\n}\n\n.section {\n display: contents;\n}\n\n.header {\n grid-template-areas: "name module-folder" "advanced-filter-accordion advanced-filter-accordion";\n grid-template-columns: 1fr 1fr;\n grid-auto-rows: max-content max-content;\n}\n\n.name {\n grid-area: name;\n}\n\n.module-folder {\n grid-area: module-folder;\n}\n\n.advanced-filter-accordion {\n grid-area: advanced-filter-accordion;\n}\n\n.main {\n display: grid;\n grid-template-columns: 1fr auto;\n gap: var(--mer-spacing--md);\n overflow: auto;\n padding-block-start: var(--mer-spacing--md);\n}\n\n.main__grid {\n display: grid;\n grid-template-rows: max-content 1fr;\n gap: var(--mer-spacing--md);\n overflow: auto;\n}\n\n.main__filter {\n display: grid;\n grid-auto-rows: max-content;\n gap: var(--mer-spacing--sm);\n overflow: auto;\n}\n\n.search-content {\n inline-size: 100%;\n}\n\n.filter-row {\n display: grid;\n grid-template-columns: 1fr 2fr;\n gap: var(--mer-spacing--md);\n}\n\n.category-column {\n grid-column: 1;\n}\n\n.checkboxes-column {\n grid-column: 2;\n display: flex;\n flex-direction: row;\n gap: var(--mer-spacing--md);\n align-items: center;\n min-block-size: 100%;\n justify-content: flex-start;\n padding-block-start: 1.75rem;\n}\n\n.modified-inputs {\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n gap: var(--mer-spacing--md);\n margin-block-start: var(--mer-spacing--sm);\n}\n.modified-inputs .field {\n display: flex;\n flex-direction: column;\n gap: var(--mer-spacing--sm);\n}\n.modified-inputs .field.hide {\n display: none;\n}\n.modified-inputs .field .input,\n.modified-inputs .field .combo-box {\n width: 100%;\n}\n\n.tabular-grid-ww-files {\n overflow: auto;\n inline-size: 100%;\n border-inline-end: var(--section-common-border);\n}\n\n.main__files-container {\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: var(--mer-spacing--xs);\n position: relative;\n z-index: 1;\n}\n\n.hiChar {\n color: var(--mer-color__primary--200);\n filter: brightness(1.3);\n}\n\n.tabular-grid-ww-files ch-tabular-grid-cell:is(:nth-child(4)) {\n padding-block: var(--grid-cell__padding-block);\n padding-inline: var(--grid-cell__padding-inline);\n align-items: start;\n justify-content: start;\n display: inline-block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n@container (max-width: 992px) {\n .main__files-container {\n grid-template-columns: repeat(3, 1fr);\n }\n}';
17
+
18
+ var o = undefined && undefined.__classPrivateFieldGet || function(i, t, e, s) {
19
+ if (e === "a" && !s) throw new TypeError("Private accessor was defined without a getter");
20
+ if (typeof t === "function" ? i !== t || !s : !t.has(i)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
21
+ return e === "m" ? s : e === "a" ? s.call(i) : s ? s.value : t.get(i);
22
+ };
23
+
24
+ var d = undefined && undefined.__classPrivateFieldSet || function(i, t, e, s, n) {
25
+ if (s === "m") throw new TypeError("Private method is not writable");
26
+ if (s === "a" && !n) throw new TypeError("Private accessor was defined without a setter");
27
+ if (typeof t === "function" ? i !== t || !n : !t.has(i)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
28
+ return s === "a" ? n.call(i, e) : n ? n.value = e : t.set(i, e), e;
29
+ };
30
+
31
+ var c, h, f, u, m, p, g, b, v, w, k, y, x, M, W, _, N, z, C, I, D, E, H, j, F, T, L, P, V, $;
32
+
33
+ const A = [ "resets/box-sizing", "components/button", "components/checkbox", "components/combo-box", "components/accordion", "components/edit", "components/tabular-grid", "utils/form", "utils/layout", "utils/typography", "utils/spacing" ];
34
+
35
+ const B = "afterDateTime";
36
+
37
+ const S = "afterLastBuild";
38
+
39
+ const q = "afterImport";
40
+
41
+ const G = class {
42
+ constructor(s) {
43
+ i(this, s);
44
+ this.componentDidLoadEvent = t(this, "componentDidLoadEvent", 7);
45
+ c.set(this, void 0);
46
+ h.set(this, "advanced-filter");
47
+ f.set(this, []);
48
+ u.set(this, void 0);
49
+ m.set(this, void 0);
50
+ p.set(this, void 0);
51
+ g.set(this, void 0);
52
+ b.set(this, void 0);
53
+ v.set(this, void 0);
54
+ w.set(this, void 0);
55
+ k.set(this, void 0);
56
+ y.set(this, void 0);
57
+ x.set(this, void 0);
58
+ M.set(this, (() => [ e("div", {
59
+ class: "field field-block name"
60
+ }, e("label", {
61
+ class: "label",
62
+ htmlFor: "filter-files"
63
+ }, o(this, c, "f").filter.name), e("ch-edit", {
64
+ id: "filter-files",
65
+ class: "input",
66
+ ref: i => d(this, k, i, "f"),
67
+ value: this.filterFilesInputValue,
68
+ onInput: o(this, I, "f"),
69
+ part: "filter-files"
70
+ })), e("div", {
71
+ class: "field field-block module-folder"
72
+ }, e("label", {
73
+ class: "label",
74
+ htmlFor: "module-folder"
75
+ }, o(this, c, "f").filter.moduleFolder), e("gx-ide-entity-selector", {
76
+ part: "filter-module-folder",
77
+ id: "module/folder",
78
+ labelPosition: "none",
79
+ value: this.defaultModule,
80
+ defaultValue: this.defaultModule,
81
+ selectEntityCallback: this.selectModuleCallback,
82
+ ref: i => d(this, v, i, "f")
83
+ })), e("ch-accordion-render", {
84
+ class: "accordion-outlined advanced-filter-accordion",
85
+ model: o(this, f, "f"),
86
+ onExpandedChange: o(this, j, "f")
87
+ }, e("div", {
88
+ slot: o(this, h, "f"),
89
+ class: "spacing-body"
90
+ }, e("div", {
91
+ class: "main__filter"
92
+ }, this.showSearchContents && e("div", {
93
+ class: "search-content"
94
+ }, e("div", {
95
+ class: "field field-block"
96
+ }, e("label", {
97
+ class: "label",
98
+ htmlFor: "filter-content"
99
+ }, o(this, c, "f").filter.content), e("ch-edit", {
100
+ id: "filter-content",
101
+ class: "input",
102
+ ref: i => d(this, y, i, "f"),
103
+ onInput: o(this, D, "f"),
104
+ part: "filter-content"
105
+ }))), e("div", {
106
+ class: "filter-row"
107
+ }, e("div", {
108
+ class: "category-column"
109
+ }, e("div", {
110
+ class: "field field-block"
111
+ }, e("label", {
112
+ class: "label",
113
+ htmlFor: "filter-category"
114
+ }, o(this, c, "f").filter.category), e("ch-combo-box-render", {
115
+ id: "filter-category",
116
+ class: "combo-box",
117
+ value: this.defaultCategory,
118
+ disabled: !this.categories,
119
+ ref: i => d(this, g, i, "f"),
120
+ model: this.categoriesComboBoxModel,
121
+ part: "filter-category",
122
+ onInput: o(this, z, "f")
123
+ }))), e("div", {
124
+ class: "checkboxes-column"
125
+ }, e("ch-checkbox", {
126
+ class: "checkbox",
127
+ caption: o(this, c, "f").filter.allDescendants,
128
+ checkedValue: "filterAllDescendants",
129
+ ref: i => d(this, p, i, "f"),
130
+ onInput: o(this, z, "f"),
131
+ part: "filter-all-descendants"
132
+ }), e("ch-checkbox", {
133
+ class: "checkbox align-center",
134
+ caption: o(this, c, "f").filter.modified,
135
+ checkedValue: "filterModified",
136
+ ref: i => d(this, w, i, "f"),
137
+ onInput: o(this, F, "f"),
138
+ part: "filter-modified"
139
+ })), e("div", {
140
+ class: "empty-column"
141
+ })), e("div", {
142
+ class: {
143
+ "modified-inputs": true,
144
+ hide: !this.filterModified
145
+ }
146
+ }, e("div", {
147
+ class: "field field-block"
148
+ }, e("label", {
149
+ class: "label",
150
+ htmlFor: "filter-after-type"
151
+ }, o(this, c, "f").filter.after), e("ch-combo-box-render", {
152
+ id: "filter-after-type",
153
+ class: "combo-box",
154
+ value: this.afterCurrentValue,
155
+ ref: i => d(this, m, i, "f"),
156
+ model: this.filterAfterOptions,
157
+ onInput: o(this, T, "f"),
158
+ part: "filter-after-type"
159
+ })), e("div", {
160
+ class: "field field-block"
161
+ }, e("label", {
162
+ class: "label",
163
+ htmlFor: "filter-user"
164
+ }, o(this, c, "f").filter.user), e("ch-edit", {
165
+ id: "filter-user",
166
+ class: "input",
167
+ ref: i => d(this, x, i, "f"),
168
+ onInput: o(this, z, "f"),
169
+ part: "filter-user"
170
+ })), e("div", {
171
+ class: {
172
+ "field field-block": true,
173
+ hide: this.afterCurrentValue !== B
174
+ }
175
+ }, e("label", {
176
+ class: "label",
177
+ htmlFor: "filter-modified-date"
178
+ }, o(this, c, "f").filter.dateTime), e("ch-edit", {
179
+ id: "filter-modified-date",
180
+ type: "date",
181
+ class: "input",
182
+ ref: i => d(this, b, i, "f"),
183
+ onInput: o(this, z, "f"),
184
+ part: "filter-modified-date"
185
+ })))))) ]));
186
+ W.set(this, (() => e("div", {
187
+ class: "field-group main__grid"
188
+ }, e("ch-tabular-grid", {
189
+ ref: i => d(this, u, i, "f"),
190
+ class: "tabular-grid tabular-grid-ww-files",
191
+ rowSelectionMode: "multiple",
192
+ part: "ch-grid-files"
193
+ }, e("ch-tabular-grid-columnset", {
194
+ class: "tabular-grid-column-set"
195
+ }, e("ch-tabular-grid-column", {
196
+ columnName: "",
197
+ columnNameHidden: false,
198
+ settingable: false,
199
+ size: l.tabularGrid.colSize.maxContent,
200
+ class: "tabular-grid-column"
201
+ }), e("ch-tabular-grid-column", {
202
+ columnName: o(this, c, "f").tableHead.name,
203
+ columnNameHidden: false,
204
+ settingable: false,
205
+ size: l.tabularGrid.colSize.common,
206
+ class: "tabular-grid-column"
207
+ }), this.showType && e("ch-tabular-grid-column", {
208
+ columnName: o(this, c, "f").tableHead.type,
209
+ columnNameHidden: false,
210
+ settingable: false,
211
+ size: l.tabularGrid.colSize.common,
212
+ class: "tabular-grid-column"
213
+ }), e("ch-tabular-grid-column", {
214
+ columnName: o(this, c, "f").tableHead.module,
215
+ columnNameHidden: false,
216
+ settingable: false,
217
+ size: l.tabularGrid.colSize.common,
218
+ class: "tabular-grid-column"
219
+ }), this.showDescription && e("ch-tabular-grid-column", {
220
+ columnName: o(this, c, "f").tableHead.description,
221
+ columnNameHidden: false,
222
+ settingable: false,
223
+ size: l.tabularGrid.colSize.commonDouble,
224
+ class: "tabular-grid-column"
225
+ }), this.showModifiedDate && e("ch-tabular-grid-column", {
226
+ columnName: o(this, c, "f").tableHead.modifiedDate,
227
+ columnNameHidden: false,
228
+ settingable: false,
229
+ size: l.tabularGrid.colSize.maxContent,
230
+ class: "tabular-grid-column"
231
+ }), this.showLastUser && e("ch-tabular-grid-column", {
232
+ columnName: o(this, c, "f").tableHead.lastUser,
233
+ columnNameHidden: false,
234
+ settingable: false,
235
+ size: l.tabularGrid.colSize.maxContent,
236
+ class: "tabular-grid-column"
237
+ }), this.showImportDate && e("ch-tabular-grid-column", {
238
+ columnName: o(this, c, "f").tableHead.importDate,
239
+ columnNameHidden: false,
240
+ settingable: false,
241
+ size: l.tabularGrid.colSize.maxContent,
242
+ class: "tabular-grid-column"
243
+ }), this.showLastBuildDate && e("ch-tabular-grid-column", {
244
+ columnName: o(this, c, "f").tableHead.lastBuildDate,
245
+ columnNameHidden: false,
246
+ settingable: false,
247
+ size: l.tabularGrid.colSize.maxContent,
248
+ class: "tabular-grid-column"
249
+ })), this.filteredFiles.length ? e("ch-tabular-grid-rowset", {
250
+ class: "tabular-grid-rowset"
251
+ }, this.filteredFiles.map((i => {
252
+ var t;
253
+ return e("ch-tabular-grid-row", {
254
+ rowid: i.id,
255
+ class: "tabular-grid-row"
256
+ }, e("ch-tabular-grid-cell", {
257
+ class: "tabular-grid-cell"
258
+ }, e("ch-image", {
259
+ src: i.icon
260
+ })), e("ch-tabular-grid-cell", {
261
+ class: "tabular-grid-cell"
262
+ }, o(this, _, "f").call(this, i.name.toLowerCase(), this.filterFilesInputValue)), this.showType && e("ch-tabular-grid-cell", {
263
+ class: "tabular-grid-cell"
264
+ }, o(this, _, "f").call(this, i.type.toLowerCase(), this.filterFilesInputValue)), e("ch-tabular-grid-cell", {
265
+ class: "tabular-grid-cell"
266
+ }, o(this, _, "f").call(this, i.module.toLowerCase(), this.filterFilesInputValue)), this.showDescription && e("ch-tabular-grid-cell", {
267
+ class: "tabular-grid-cell"
268
+ }, o(this, _, "f").call(this, i.description.toLowerCase(), this.filterFilesInputValue)), this.showModifiedDate && e("ch-tabular-grid-cell", {
269
+ class: "tabular-grid-cell"
270
+ }, o(this, _, "f").call(this, i.modifiedDate ? o(this, N, "f").call(this, i.modifiedDate) : "", this.filterFilesInputValue)), this.showLastUser && e("ch-tabular-grid-cell", {
271
+ class: "tabular-grid-cell"
272
+ }, o(this, _, "f").call(this, ((t = i.lastUser) === null || t === void 0 ? void 0 : t.toLowerCase()) || "", this.filterFilesInputValue)), this.showImportDate && e("ch-tabular-grid-cell", {
273
+ class: "tabular-grid-cell"
274
+ }, o(this, _, "f").call(this, i.importDate ? o(this, N, "f").call(this, i.importDate) : "", this.filterFilesInputValue)), this.showLastBuildDate && e("ch-tabular-grid-cell", {
275
+ class: "tabular-grid-cell"
276
+ }, o(this, _, "f").call(this, i.lastBuildDate ? o(this, N, "f").call(this, i.lastBuildDate) : "", this.filterFilesInputValue)));
277
+ }))) : null))));
278
+ _.set(this, ((i, t) => {
279
+ if (!t) return i;
280
+ const s = i.split(new RegExp(`(${t})`, "gi"));
281
+ return s.map(((i, s) => i.toLowerCase() === t.toLowerCase() ? e("span", {
282
+ key: s,
283
+ class: "highlight"
284
+ }, i) : i));
285
+ }));
286
+ N.set(this, (i => i.toISOString().slice(0, 10)));
287
+ z.set(this, (() => {
288
+ var i;
289
+ const t = {
290
+ name: o(this, k, "f").value,
291
+ searchContents: this.showSearchContents ? (i = o(this, y, "f")) === null || i === void 0 ? void 0 : i.value : null,
292
+ category: o(this, g, "f").value,
293
+ parent: o(this, v, "f").value ? o(this, v, "f").value.id : null,
294
+ allDescendants: !!o(this, p, "f").value,
295
+ modifiedAfter: this.filterModified ? this.afterCurrentValue : null,
296
+ modifiedBy: this.filterModified ? o(this, x, "f").value : null,
297
+ modifiedDate: this.filterModified && this.afterCurrentValue === B ? new Date(o(this, b, "f").value) : null
298
+ };
299
+ this.loadCallback(t).then((i => {
300
+ this.objects = i;
301
+ o(this, C, "f").call(this);
302
+ this.selectedObjectsIds = [];
303
+ o(this, H, "f").call(this);
304
+ }));
305
+ }));
306
+ C.set(this, (() => {
307
+ var i, t;
308
+ const e = this.filterFilesInputValue.toLowerCase();
309
+ const s = this.showSearchContents ? ((t = (i = o(this, y, "f")) === null || i === void 0 ? void 0 : i.value) === null || t === void 0 ? void 0 : t.toLowerCase()) || "" : "";
310
+ this.filteredFiles = this.objects.filter((i => {
311
+ var t, n, a, l, r;
312
+ const o = i.name.toLowerCase().includes(e);
313
+ const d = i.type.toLowerCase().includes(e);
314
+ const c = i.module.toLowerCase().includes(e);
315
+ const h = (t = i.description) === null || t === void 0 ? void 0 : t.toLowerCase().includes(e);
316
+ const f = (n = i.modifiedDate) === null || n === void 0 ? void 0 : n.toString().includes(e);
317
+ const u = (a = i.lastUser) === null || a === void 0 ? void 0 : a.toLowerCase().includes(e);
318
+ const m = (l = i.importDate) === null || l === void 0 ? void 0 : l.toString().includes(e);
319
+ const p = s ? (r = i.description) === null || r === void 0 ? void 0 : r.toLowerCase().includes(s) : true;
320
+ return (o || d || c || h || f || u || m) && p;
321
+ }));
322
+ }));
323
+ I.set(this, (i => {
324
+ this.filterFilesInputValue = i.detail.toLowerCase();
325
+ o(this, C, "f").call(this);
326
+ }));
327
+ D.set(this, (() => {
328
+ o(this, C, "f").call(this);
329
+ }));
330
+ E.set(this, (() => {
331
+ this.deleteSelectionCallback(this.selectedObjectsIds);
332
+ }));
333
+ H.set(this, (() => {
334
+ o(this, u, "f").selectAllRows(false);
335
+ }));
336
+ j.set(this, (i => {
337
+ if (i.detail.id === o(this, h, "f")) {
338
+ this.advancedFilterAccordionExpanded = i.detail.expanded;
339
+ this.filterMore = i.detail.expanded;
340
+ }
341
+ }));
342
+ F.set(this, (() => {
343
+ this.filterModified = !!o(this, w, "f").value;
344
+ this.enabledModifiedControls = this.filterModified;
345
+ if (!this.filterModified) {
346
+ // Reset related fields when unchecking Modified
347
+ o(this, x, "f").value = null;
348
+ o(this, m, "f").value = null;
349
+ this.afterCurrentValue = null;
350
+ o(this, b, "f").value = null;
351
+ } else {
352
+ // Restore default values when checking Modified
353
+ this.afterCurrentValue = B;
354
+ o(this, m, "f").value = B;
355
+ }
356
+ o(this, z, "f").call(this);
357
+ }));
358
+ T.set(this, (() => {
359
+ const i = o(this, m, "f").value;
360
+ // Validar que el valor sea uno de los permitidos
361
+ if ([ B, S, q ].includes(i)) {
362
+ this.afterCurrentValue = i;
363
+ } else {
364
+ // Si no es un valor válido, establecer el valor por defecto
365
+ this.afterCurrentValue = B;
366
+ o(this, m, "f").value = B;
367
+ }
368
+ o(this, z, "f").call(this);
369
+ }));
370
+ L.set(this, (() => {
371
+ /* module/folder */
372
+ o(this, v, "f").addEventListener("valueChanged", (() => {
373
+ o(this, z, "f").call(this);
374
+ }));
375
+ // for grid selection
376
+ o(this, u, "f").addEventListener("selectionChanged", (i => {
377
+ this.selectedObjectsIds = i.detail.rowsId;
378
+ this.selectionChangeCallback(this.selectedObjectsIds);
379
+ }));
380
+ o(this, u, "f").addEventListener("rowDoubleClicked", (() => {
381
+ o(this, V, "f").call(this);
382
+ }));
383
+ o(this, u, "f").addEventListener("rowContextMenu", (i => {
384
+ i.preventDefault();
385
+ i.stopPropagation();
386
+ this.contextMenuCallback({
387
+ selection: i.detail.selectedRowsId,
388
+ clientX: i.detail.clientX,
389
+ clientY: i.detail.clientY
390
+ });
391
+ }));
392
+ }));
393
+ P.set(this, (() => {
394
+ this.newFileCallback();
395
+ }));
396
+ V.set(this, (() => {
397
+ this.openSelectionCallback(this.selectedObjectsIds);
398
+ }));
399
+ $.set(this, (() => {
400
+ o(this, u, "f").selectAllRows();
401
+ }));
402
+ this.categoriesComboBoxModel = [];
403
+ this.afterCurrentValue = B;
404
+ this.filterAfterOptions = undefined;
405
+ this.enabledModifiedControls = false;
406
+ this.filterModified = false;
407
+ this.filterMore = false;
408
+ this.objects = [];
409
+ this.filterFilesInputValue = "";
410
+ this.filteredFiles = [];
411
+ this.selectedObjectsIds = [];
412
+ this.advancedFilterAccordionExpanded = false;
413
+ this.categories = undefined;
414
+ this.defaultCategory = undefined;
415
+ this.defaultModule = undefined;
416
+ this.filterModules = undefined;
417
+ this.types = undefined;
418
+ this.contextMenuCallback = undefined;
419
+ this.deleteSelectionCallback = undefined;
420
+ this.loadCallback = undefined;
421
+ this.newFileCallback = undefined;
422
+ this.openSelectionCallback = undefined;
423
+ this.selectModuleCallback = undefined;
424
+ this.selectionChangeCallback = undefined;
425
+ this.showSearchContents = false;
426
+ this.showDescription = false;
427
+ this.showModifiedDate = false;
428
+ this.showLastUser = false;
429
+ this.showImportDate = false;
430
+ this.showType = false;
431
+ this.showLastBuildDate = false;
432
+ }
433
+ categoriesChanged(i) {
434
+ this.categoriesComboBoxModel = mapOptionsToComboBoxItemModel(i);
435
+ }
436
+ async componentWillLoad() {
437
+ d(this, c, await a.getComponentStrings(this.el), "f");
438
+ // initialize combo-box models
439
+ this.categoriesChanged(this.categories);
440
+ // initialize "After" combo-box options
441
+ this.filterAfterOptions = [ {
442
+ caption: o(this, c, "f").filter[B],
443
+ value: B
444
+ }, {
445
+ caption: o(this, c, "f").filter[S],
446
+ value: S
447
+ }, {
448
+ caption: o(this, c, "f").filter[q],
449
+ value: q
450
+ } ];
451
+ this.afterCurrentValue = B;
452
+ // initialize accordion model with proper configuration
453
+ d(this, f, [ {
454
+ id: o(this, h, "f"),
455
+ caption: o(this, c, "f").filter.accordionCaption,
456
+ expanded: this.advancedFilterAccordionExpanded
457
+ } ], "f");
458
+ // initialize filtered files
459
+ this.filteredFiles = this.objects;
460
+ this.componentDidLoadEvent.emit(true);
461
+ }
462
+ componentDidLoad() {
463
+ o(this, L, "f").call(this);
464
+ o(this, z, "f").call(this);
465
+ }
466
+ keyDownHandler(i) {
467
+ if (document.activeElement === this.el) {
468
+ switch (i.key) {
469
+ case "Enter":
470
+ i.preventDefault();
471
+ o(this, V, "f").call(this);
472
+ break;
473
+
474
+ case "Delete":
475
+ i.preventDefault();
476
+ o(this, E, "f").call(this);
477
+ break;
478
+
479
+ case "Escape":
480
+ i.preventDefault();
481
+ o(this, H, "f").call(this);
482
+ break;
483
+ }
484
+ }
485
+ }
486
+ /**
487
+ * Validate necessary data input
488
+ */ async validate() {
489
+ const i = true;
490
+ return i;
491
+ }
492
+ /**
493
+ * This method reload the view, refreshing the filters and the table of files.
494
+ */ async reload() {
495
+ this.filterFilesInputValue = "";
496
+ o(this, x, "f").value = null;
497
+ o(this, m, "f").value = null;
498
+ this.afterCurrentValue = null;
499
+ o(this, w, "f").value = undefined;
500
+ o(this, p, "f").value = undefined;
501
+ o(this, v, "f").value = this.defaultModule;
502
+ o(this, g, "f").value = null;
503
+ o(this, y, "f").value = null;
504
+ o(this, k, "f").value = null;
505
+ this.filterMore = false;
506
+ o(this, z, "f").call(this);
507
+ }
508
+ render() {
509
+ return e(s, {
510
+ class: "widget"
511
+ }, e("ch-theme", {
512
+ model: A
513
+ }), e("section", {
514
+ class: "section"
515
+ }, e("header", {
516
+ class: "header control-header-with-border spacing-body-inline spacing-body-block-start field-group"
517
+ }, o(this, M, "f").call(this)), e("div", {
518
+ class: "main"
519
+ }, o(this, W, "f").call(this)), e("footer", {
520
+ class: "control-footer-with-border control-footer-space-between spacing-body"
521
+ }, e("p", {
522
+ // matching objects
523
+ class: "text-body",
524
+ part: "objects-matching"
525
+ }, `${this.filteredFiles.length} ${o(this, c, "f").objCount.matching}`), e("div", {
526
+ class: "buttons-spacer"
527
+ }, e("button", {
528
+ // select all button
529
+ id: "button-select-all",
530
+ class: "button-secondary",
531
+ onClick: o(this, $, "f"),
532
+ part: "button button--select-all"
533
+ }, o(this, c, "f").footer.btnSelectAll), e("button", {
534
+ // new file button
535
+ id: "button-new-file",
536
+ class: "button-primary button-icon-and-text",
537
+ onClick: o(this, P, "f"),
538
+ part: "button button--new-file"
539
+ }, o(this, c, "f").footer.btnNew)))));
540
+ }
541
+ static get assetsDirs() {
542
+ return [ "gx-ide-assets/ww-files" ];
543
+ }
544
+ get el() {
545
+ return n(this);
546
+ }
547
+ static get watchers() {
548
+ return {
549
+ categories: [ "categoriesChanged" ]
550
+ };
551
+ }
552
+ };
553
+
554
+ c = new WeakMap, h = new WeakMap, f = new WeakMap, u = new WeakMap, m = new WeakMap,
555
+ p = new WeakMap, g = new WeakMap, b = new WeakMap, v = new WeakMap, w = new WeakMap,
556
+ k = new WeakMap, y = new WeakMap, x = new WeakMap, M = new WeakMap, W = new WeakMap,
557
+ _ = new WeakMap, N = new WeakMap, z = new WeakMap, C = new WeakMap, I = new WeakMap,
558
+ D = new WeakMap, E = new WeakMap, H = new WeakMap, j = new WeakMap, F = new WeakMap,
559
+ T = new WeakMap, L = new WeakMap, P = new WeakMap, V = new WeakMap, $ = new WeakMap;
560
+
561
+ G.style = r;
562
+
563
+ export { G as gx_ide_ww_files };
564
+ //# sourceMappingURL=p-839f1b44.entry.js.map