@genexus/genexus-ide-ui 0.0.41 → 0.0.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 (88) hide show
  1. package/dist/cjs/ch-icon.cjs.entry.js +116 -0
  2. package/dist/cjs/{form-validation-f8e709d0.js → common-facb7f18.js} +0 -19
  3. package/dist/cjs/constants-e63c0ad9.js +10 -0
  4. package/dist/cjs/form-validation-b7fb4ca8.js +21 -0
  5. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  6. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +4 -3
  7. package/dist/cjs/{gxg-date-picker.cjs.entry.js → gx-ide-entity-selector_2.cjs.entry.js} +81 -0
  8. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +3 -2
  9. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +6 -5
  10. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +30 -24
  11. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +229 -0
  12. package/dist/cjs/{gxg-button.cjs.entry.js → gxg-button_2.cjs.entry.js} +61 -0
  13. package/dist/cjs/gxg-combo-box_2.cjs.entry.js +705 -0
  14. package/dist/cjs/{gxg-combo-box_6.cjs.entry.js → gxg-tab_4.cjs.entry.js} +1 -698
  15. package/dist/cjs/loader.cjs.js +1 -1
  16. package/dist/collection/collection-manifest.json +1 -0
  17. package/dist/collection/common/constants.js +6 -0
  18. package/dist/collection/components/object-selector/gx-ide-assets/object-selector/langs/object-selector.lang.en.json +1 -1
  19. package/dist/collection/components/object-selector/object-selector.js +33 -26
  20. package/dist/collection/components/ww-images/gx-ide-assets/ww-images/langs/ww-images.lang.en.json +47 -0
  21. package/dist/collection/components/ww-images/gx-ide-assets/ww-images/langs/ww-images.lang.ja.json +3 -0
  22. package/dist/collection/components/ww-images/gx-ide-assets/ww-images/langs/ww-images.lang.zh.json +3 -0
  23. package/dist/collection/components/ww-images/ww-images.css +229 -0
  24. package/dist/collection/components/ww-images/ww-images.js +674 -0
  25. package/dist/collection/pages/assets/common.js +20 -0
  26. package/dist/components/common.js +46 -0
  27. package/dist/components/constants.js +8 -0
  28. package/dist/components/form-validation.js +1 -46
  29. package/dist/components/gx-ide-create-kb-from-server.js +2 -1
  30. package/dist/components/gx-ide-new-environment.js +2 -1
  31. package/dist/components/gx-ide-new-kb.js +2 -1
  32. package/dist/components/gx-ide-object-selector.js +30 -24
  33. package/dist/components/gx-ide-ww-images.d.ts +11 -0
  34. package/dist/components/gx-ide-ww-images.js +421 -0
  35. package/dist/components/index.d.ts +1 -0
  36. package/dist/components/index.js +1 -0
  37. package/dist/esm/ch-icon.entry.js +112 -0
  38. package/dist/esm/{form-validation-cdb16431.js → common-a3df0966.js} +1 -19
  39. package/dist/esm/constants-7882d1a8.js +8 -0
  40. package/dist/esm/form-validation-09bd4504.js +19 -0
  41. package/dist/esm/genexus-ide-ui.js +1 -1
  42. package/dist/esm/gx-ide-create-kb-from-server.entry.js +2 -1
  43. package/dist/esm/{gxg-date-picker.entry.js → gx-ide-entity-selector_2.entry.js} +81 -1
  44. package/dist/esm/gx-ide-new-environment.entry.js +2 -1
  45. package/dist/esm/gx-ide-new-kb.entry.js +2 -1
  46. package/dist/esm/gx-ide-object-selector.entry.js +30 -24
  47. package/dist/esm/gx-ide-ww-images.entry.js +225 -0
  48. package/dist/esm/{gxg-button.entry.js → gxg-button_2.entry.js} +62 -2
  49. package/dist/esm/gxg-combo-box_2.entry.js +700 -0
  50. package/dist/esm/{gxg-combo-box_6.entry.js → gxg-tab_4.entry.js} +3 -698
  51. package/dist/esm/loader.js +1 -1
  52. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  53. package/dist/genexus-ide-ui/gx-ide-assets/object-selector/langs/object-selector.lang.en.json +1 -1
  54. package/dist/genexus-ide-ui/gx-ide-assets/ww-images/langs/ww-images.lang.en.json +47 -0
  55. package/dist/genexus-ide-ui/gx-ide-assets/ww-images/langs/ww-images.lang.ja.json +3 -0
  56. package/dist/genexus-ide-ui/gx-ide-assets/ww-images/langs/ww-images.lang.zh.json +3 -0
  57. package/dist/genexus-ide-ui/p-07e89cdd.entry.js +1 -0
  58. package/dist/genexus-ide-ui/p-35fc1102.entry.js +1 -0
  59. package/dist/genexus-ide-ui/p-44964acf.js +1 -0
  60. package/dist/genexus-ide-ui/p-4b7f7425.entry.js +1 -0
  61. package/dist/genexus-ide-ui/p-4d39c34a.entry.js +1 -0
  62. package/dist/genexus-ide-ui/p-5ad757f4.entry.js +1 -0
  63. package/dist/genexus-ide-ui/p-6010dc9d.js +1 -0
  64. package/dist/genexus-ide-ui/p-764ab316.entry.js +1 -0
  65. package/dist/genexus-ide-ui/p-7a83018d.entry.js +1 -0
  66. package/dist/genexus-ide-ui/p-7a90def4.entry.js +1 -0
  67. package/dist/genexus-ide-ui/p-8bf7f0e1.entry.js +1 -0
  68. package/dist/genexus-ide-ui/p-daf4eb69.js +1 -0
  69. package/dist/genexus-ide-ui/p-fcdcb919.entry.js +1 -0
  70. package/dist/types/common/constants.d.ts +6 -0
  71. package/dist/types/components/object-selector/object-selector.d.ts +5 -7
  72. package/dist/types/components/ww-images/ww-images.d.ts +191 -0
  73. package/dist/types/components.d.ts +184 -2
  74. package/package.json +1 -1
  75. package/dist/cjs/ch-icon_2.cjs.entry.js +0 -177
  76. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +0 -87
  77. package/dist/esm/ch-icon_2.entry.js +0 -172
  78. package/dist/esm/gx-ide-entity-selector.entry.js +0 -83
  79. package/dist/genexus-ide-ui/p-2ebd392f.entry.js +0 -1
  80. package/dist/genexus-ide-ui/p-34721f1c.entry.js +0 -1
  81. package/dist/genexus-ide-ui/p-5c560dd0.entry.js +0 -1
  82. package/dist/genexus-ide-ui/p-a708db45.entry.js +0 -1
  83. package/dist/genexus-ide-ui/p-c304345f.entry.js +0 -1
  84. package/dist/genexus-ide-ui/p-c38c6957.entry.js +0 -1
  85. package/dist/genexus-ide-ui/p-cf41f154.entry.js +0 -1
  86. package/dist/genexus-ide-ui/p-db945a17.js +0 -1
  87. package/dist/genexus-ide-ui/p-e1fea866.entry.js +0 -1
  88. package/dist/genexus-ide-ui/p-f9731b7c.entry.js +0 -1
@@ -0,0 +1,421 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { L as Locale } from './locale.js';
3
+ import { r as renderFormItems } from './common.js';
4
+ import { F as FILTER_AFTER } from './constants.js';
5
+ import { d as defineCustomElement$q } from './ch-grid2.js';
6
+ import { d as defineCustomElement$p } from './ch-grid-column2.js';
7
+ import { d as defineCustomElement$o } from './ch-grid-column-resize2.js';
8
+ import { d as defineCustomElement$n } from './ch-grid-column-settings2.js';
9
+ import { d as defineCustomElement$m } from './ch-grid-columnset2.js';
10
+ import { d as defineCustomElement$l } from './ch-grid-settings2.js';
11
+ import { d as defineCustomElement$k } from './ch-grid-settings-columns2.js';
12
+ import { d as defineCustomElement$j } from './icon.js';
13
+ import { d as defineCustomElement$i } from './ch-window2.js';
14
+ import { d as defineCustomElement$h } from './ch-window-close2.js';
15
+ import { d as defineCustomElement$g } from './entity-selector.js';
16
+ import { d as defineCustomElement$f } from './button.js';
17
+ import { d as defineCustomElement$e } from './combo-box.js';
18
+ import { d as defineCustomElement$d } from './combo-box-item.js';
19
+ import { d as defineCustomElement$c } from './container2.js';
20
+ import { d as defineCustomElement$b } from './date-picker.js';
21
+ import { d as defineCustomElement$a } from './form-checkbox.js';
22
+ import { d as defineCustomElement$9 } from './form-radio.js';
23
+ import { d as defineCustomElement$8 } from './form-text.js';
24
+ import { d as defineCustomElement$7 } from './gxg-grid2.js';
25
+ import { d as defineCustomElement$6 } from './icon2.js';
26
+ import { d as defineCustomElement$5 } from './gxg-label2.js';
27
+ import { d as defineCustomElement$4 } from './text.js';
28
+ import { d as defineCustomElement$3 } from './title.js';
29
+ import { d as defineCustomElement$2 } from './tooltip.js';
30
+
31
+ const wwImagesCss = ".gxi-hidden{display:none !important}.gxi-full-height{height:100%}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}:host(.gx-ide-component){box-shadow:var(--box-shadow-01) !important;height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--font-weight-regular);font-size:var(--font-size-lg);line-height:1.6em;height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:6px;height:6px}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}.gx-ide-main::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}.gx-ide-main::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}.gx-ide-main .gxg-scroll{display:block;overflow-y:auto;padding-inline-end:2px}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:6px;height:6px}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}.gx-ide-overflow::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}.gx-ide-overflow .gxg-scroll{display:block;overflow-y:auto;padding-inline-end:2px}:host{display:block;border:1px solid var(--gxg-border-color--regular);background-color:var(--color-background)}:host(.gxi-object-selector--shadow){border:none;box-shadow:var(--box-shadow-01)}.filter-grid{grid-template-columns:repeat(4, 1fr)}.filter-grid>:nth-child(3),.filter-grid>:nth-child(6){display:flex;flex-direction:row;align-items:flex-end}.filter-grid>:nth-child(4){grid-area:2/1/3/4}.filter-grid>:nth-child(5){grid-area:3/1/4/2}.filter-grid>:nth-child(6){grid-area:3/4/4/5}.filter-grid>:nth-child(7){grid-area:4/1/5/4}.filter-grid>:nth-child(8){grid-area:5/1/6/2}.filter-grid>:nth-child(9){grid-area:5/2/6/3}.filter-grid>:nth-child(10){grid-area:5/3/6/4}.filter-grid>:nth-child(11){grid-area:5/4/6/5}.flex{display:flex;flex-direction:row;align-items:center}.with-gap{gap:var(--gx-ide-grid-row-gap)}.hide{display:none !important}.images-grid{grid-template-columns:repeat(3, 1fr);grid-column-gap:0}.images-grid>:nth-child(1){grid-area:1/1/1/3}.images-data-flex{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gx-ide-grid-row-gap);text-overflow:ellipsis;overflow:hidden}.images-data-flex .image-item{display:flex;flex-direction:column;justify-content:space-between;align-items:center;width:120px}.images-data-flex .image-item .img{width:50px;height:50px;display:flex;align-items:center;justify-content:center;border:1px solid var(--gxg-border-color--regular);padding:var(--gx-ide-grid-row-gap)}.images-data-flex .image-item .img img{max-width:100%;max-height:100%}.objects-count{grid-template-columns:repeat(2, 1fr)}.objects-count *:nth-child(2){justify-content:flex-end;align-items:flex-start}";
32
+
33
+ const GxIdeWWImages = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
34
+ constructor() {
35
+ super();
36
+ this.__registerHost();
37
+ this.__attachShadow();
38
+ this.componentDidLoadEvent = createEvent(this, "componentDidLoadEvent", 7);
39
+ // 9.LOCAL METHODS //
40
+ // Renders
41
+ this.renderFilter = () => {
42
+ var _a, _b, _c, _d, _e;
43
+ return (h("gxg-container", { fieldset: true, displayBorder: true, containerTitle: this._componentLocale.filter.title, part: "filters-container" }, h("div", { class: "grid filter-grid" }, h("gxg-form-text", { "label-position": "above", label: this._componentLocale.filter.name, ref: (el) => (this.filterNameEl = el), part: "filter-name" }), h("gx-ide-entity-selector", { label: this._componentLocale.filter.moduleFolder, "label-position": "above", value: this.defaultModule, defaultValue: this.defaultModule, selectEntityCallback: this.selectModuleCallback, ref: (el) => (this.filterModuleEl = el), part: "filter-module-folder" }), h("div", null, h("gxg-button", { id: "button-more-less", type: "primary-text-only", onClick: this.showMoreFilter, part: "gxg-button gxg-button--more-less" }, this.filterMore
44
+ ? this._componentLocale.filter.btnLess
45
+ : this._componentLocale.filter.btnMore)), h("gxg-form-text", { class: { hide: !this.filterMore }, "label-position": "above", label: this._componentLocale.filter.search, ref: (el) => (this.filterSearchContentsEl = el), part: "filter-search" }), h("gxg-combo-box", { class: { hide: !this.filterMore }, "disable-filter": true, label: this._componentLocale.filter.category, value: this.defaultCategory, disabled: !this.categories, ref: (el) => (this.filterCategoryEl = el), part: "filter-category" }, renderFormItems("gxg-combo-box-item", (_a = this.categories) !== null && _a !== void 0 ? _a : [])), h("div", { class: { hide: !this.filterMore } }, h("gxg-form-checkbox", { label: this._componentLocale.filter.allDescendants, class: "align-center", ref: (el) => (this.filterAllDescendantsEl = el), part: "filter-all-descendants" })), h("div", { class: {
46
+ "flex": true,
47
+ "with-gap": true,
48
+ "hide": !this.filterMore
49
+ } }, h("gxg-form-checkbox", { label: this._componentLocale.filter.modified, class: "align-center", ref: (el) => (this.filterModifiedEl = el), part: "filter-modified" }), h("gxg-combo-box", { class: { hide: !this.filterModified }, "disable-filter": true, value: this.filterAfterType, ref: (el) => (this.filterAfterTypeEl = el), part: "filter-after-type" }, renderFormItems("gxg-combo-box-item", [
50
+ {
51
+ id: FILTER_AFTER.NONE,
52
+ label: this._componentLocale.filter.afterNone,
53
+ value: FILTER_AFTER.NONE
54
+ },
55
+ {
56
+ id: FILTER_AFTER.DATE_TIME,
57
+ label: this._componentLocale.filter[FILTER_AFTER.DATE_TIME],
58
+ value: FILTER_AFTER.DATE_TIME
59
+ },
60
+ {
61
+ id: FILTER_AFTER.IMPORT,
62
+ label: this._componentLocale.filter[FILTER_AFTER.IMPORT],
63
+ value: FILTER_AFTER.IMPORT
64
+ },
65
+ {
66
+ id: FILTER_AFTER.LAST_BUILD,
67
+ label: this._componentLocale.filter[FILTER_AFTER.LAST_BUILD],
68
+ value: FILTER_AFTER.LAST_BUILD
69
+ }
70
+ ])), h("gxg-form-text", { class: { hide: !this.filterModified }, "label-position": "start", label: this._componentLocale.filter.user, "max-width": "150px", ref: (el) => (this.filterUserEl = el), part: "filter-user" }), h("div", { class: {
71
+ flex: true,
72
+ hide: !this.filterModified ||
73
+ this.filterAfterType !== FILTER_AFTER.DATE_TIME
74
+ }, part: "filter-datetime" }, h("gxg-label", { "label-position": "start" }, this._componentLocale.filter.dateTime), h("gxg-date-picker", { ref: (el) => (this.filterModifiedDateEl = el) }))), h("gxg-combo-box", { class: { hide: !this.filterMore }, "disable-filter": true, label: this._componentLocale.filter.style, disabled: !this.styles, ref: (el) => (this.filterStyleEl = el), part: "filter-style" }, renderFormItems("gxg-combo-box-item", (_b = this.styles) !== null && _b !== void 0 ? _b : [])), h("gxg-combo-box", { class: { hide: !this.filterMore }, "disable-filter": true, label: this._componentLocale.filter.language, disabled: !this.languages, ref: (el) => (this.filterLanguageEl = el), part: "filter-language" }, renderFormItems("gxg-combo-box-item", (_c = this.languages) !== null && _c !== void 0 ? _c : [])), h("gxg-combo-box", { class: { hide: !this.filterMore }, "disable-filter": true, label: this._componentLocale.filter.density, disabled: !this.densities, ref: (el) => (this.filterDensityEl = el), part: "filter-density" }, renderFormItems("gxg-combo-box-item", (_d = this.densities) !== null && _d !== void 0 ? _d : [])), h("gxg-combo-box", { class: { hide: !this.filterMore }, "disable-filter": true, label: this._componentLocale.filter.layer, disabled: !this.layers, ref: (el) => (this.filterLayerEl = el), part: "filter-layer" }, renderFormItems("gxg-combo-box-item", (_e = this.layers) !== null && _e !== void 0 ? _e : [])))));
75
+ };
76
+ this.renderImages = () => {
77
+ return (h("gxg-grid", { part: "images-table" }, h("ch-grid", { "row-selection-mode": "multiple", ref: (el) => (this.chGridEl = el), part: "ch-grid-images" }, h("ch-grid-columnset", null, h("ch-grid-column", { columnName: "", columnNamePosition: "text", settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.name, columnNamePosition: "text", settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.module, columnNamePosition: "text", settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.description, columnNamePosition: "text", settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.modifiedDate, columnNamePosition: "text", settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.lastUser, columnNamePosition: "text", settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.importDate, columnNamePosition: "text", settingable: false }), h("ch-grid-column", { columnName: this._componentLocale.tableHead.lastBuildDate, columnNamePosition: "text", settingable: false })), this.images.map((obj) => (h("ch-grid-row", { rowid: obj.id }, h("ch-grid-cell", null, h("gxg-icon", { type: obj.icon })), h("ch-grid-cell", null, " ", obj.name, " "), h("ch-grid-cell", null, " ", obj.module, " "), h("ch-grid-cell", null, " ", obj.description, " "), h("ch-grid-cell", null, `${obj.modifiedDate.toISOString().slice(0, 10)}`), h("ch-grid-cell", null, " ", obj.lastUser, " "), h("ch-grid-cell", null, `${obj.importDate.toISOString().slice(0, 10)}`), h("ch-grid-cell", null, `${obj.lastBuildDate.toISOString().slice(0, 10)}`)))))));
78
+ };
79
+ this.renderImageData = () => {
80
+ return (h("gxg-container", { fieldset: true, displayBorder: true, containerTitle: this._componentLocale.imageDataTitle, part: "image-data-container" }, h("div", { class: "grid images-data-flex" }, this.imagesSelectedItems.map(item => (h("div", { class: "image-item" }, h("div", { class: "img" }, h("img", { src: item.url, alt: item.id })), h("gxg-text", { type: "text-regular" }, item.name)))))));
81
+ };
82
+ this.getImages = () => {
83
+ let filters = {
84
+ name: this.filterNameEl.value,
85
+ parent: this.filterModuleEl.value ? this.filterModuleEl.value.id : null
86
+ };
87
+ if (this.filterMore) {
88
+ const modified = this.filterModifiedEl.checked;
89
+ const modifiedAfter = this.filterAfterTypeEl.value;
90
+ filters = Object.assign(Object.assign({}, filters), { searchContents: this.filterSearchContentsEl.value, category: this.filterCategoryEl.value, allDescendants: this.filterAllDescendantsEl.checked, modifiedAfter: modified ? modifiedAfter : null, modifiedBy: modified ? this.filterUserEl.value : null, modifiedDate: modified && modifiedAfter === FILTER_AFTER.DATE_TIME
91
+ ? this.filterModifiedDateEl.value
92
+ : null, style: this.filterStyleEl.value, language: this.filterLanguageEl.value, density: this.filterDensityEl.value, layer: this.filterLayerEl.value });
93
+ }
94
+ this.loadCallback(filters).then((items) => {
95
+ this.images = items;
96
+ this.selectedObjectsIds = [];
97
+ this.deselectAll();
98
+ });
99
+ };
100
+ this.newObjectCallbackHandle = () => {
101
+ this.newObjectCallback();
102
+ };
103
+ this.openSelectionCallBackHandle = () => {
104
+ this.openSelectionCallback(this.selectedObjectsIds);
105
+ };
106
+ this.deleteSelectionCallbackHandle = () => {
107
+ this.deleteSelectionCallback(this.selectedObjectsIds);
108
+ };
109
+ this.contextMenuCallbackHandle = () => {
110
+ this.contextMenuCallback(this.selectedObjectsIds);
111
+ };
112
+ this.showMoreFilter = () => {
113
+ this.filterMore = !this.filterMore;
114
+ };
115
+ this.selectAll = () => {
116
+ this.chGridEl.selectAllRows();
117
+ };
118
+ this.deselectAll = () => {
119
+ this.chGridEl.selectAllRows(false);
120
+ };
121
+ this.listenChanges = () => {
122
+ this.filterNameEl.addEventListener("change", () => {
123
+ this.getImages();
124
+ });
125
+ this.filterSearchContentsEl.addEventListener("change", () => {
126
+ this.getImages();
127
+ });
128
+ this.filterAllDescendantsEl.addEventListener("change", () => {
129
+ this.getImages();
130
+ });
131
+ this.filterModifiedEl.addEventListener("change", (e) => {
132
+ this.filterModified = e.detail.value;
133
+ this.getImages();
134
+ });
135
+ this.filterUserEl.addEventListener("change", () => {
136
+ this.getImages();
137
+ });
138
+ this.filterCategoryEl.addEventListener("valueChanged", () => {
139
+ this.getImages();
140
+ });
141
+ this.filterModuleEl.addEventListener("valueChanged", () => {
142
+ this.getImages();
143
+ });
144
+ this.filterAfterTypeEl.addEventListener("valueChanged", () => {
145
+ this.filterAfterType = this.filterAfterTypeEl.value;
146
+ this.getImages();
147
+ });
148
+ // for grid selection
149
+ this.chGridEl.addEventListener("rowClicked", (ev) => {
150
+ this.loadImageItemsCallback(ev.detail.rowId).then((items) => {
151
+ this.imagesSelectedItems = items;
152
+ });
153
+ });
154
+ this.chGridEl.addEventListener("rowDoubleClicked", () => {
155
+ this.openSelectionCallBackHandle();
156
+ });
157
+ this.chGridEl.addEventListener("selectionChanged", (ev) => {
158
+ this.selectedObjectsIds = ev.detail.rowsId;
159
+ this.selectionObjectChangeCallback(this.selectedObjectsIds);
160
+ });
161
+ this.chGridEl.addEventListener("contextmenu", (ev) => {
162
+ ev.preventDefault();
163
+ ev.stopPropagation();
164
+ this.contextMenuCallbackHandle();
165
+ });
166
+ };
167
+ this.filterAfterType = "";
168
+ this.filterModified = false;
169
+ this.filterMore = false;
170
+ this.images = [];
171
+ this.imagesSelectedItems = [];
172
+ this.selectedObjectsIds = [];
173
+ this.categories = undefined;
174
+ this.densities = undefined;
175
+ this.defaultCategory = undefined;
176
+ this.defaultModule = undefined;
177
+ this.defaultType = undefined;
178
+ this.filterModules = undefined;
179
+ this.languages = undefined;
180
+ this.layers = undefined;
181
+ this.contextMenuCallback = undefined;
182
+ this.deleteSelectionCallback = undefined;
183
+ this.loadCallback = undefined;
184
+ this.loadImageItemsCallback = undefined;
185
+ this.newObjectCallback = undefined;
186
+ this.openSelectionCallback = undefined;
187
+ this.selectModuleCallback = undefined;
188
+ this.selectionObjectChangeCallback = undefined;
189
+ this.shadow = false;
190
+ this.styles = undefined;
191
+ this.types = undefined;
192
+ }
193
+ // 6.COMPONENT LIFECYCLE EVENTS //
194
+ async componentWillLoad() {
195
+ this._componentLocale = await Locale.getComponentStrings(this.el);
196
+ this.componentDidLoadEvent.emit(true);
197
+ }
198
+ componentDidLoad() {
199
+ this.listenChanges();
200
+ this.getImages();
201
+ }
202
+ // 7.LISTENERS //
203
+ keyDownHandler(eventInfo) {
204
+ if (document.activeElement === this.el) {
205
+ switch (eventInfo.key) {
206
+ case "Enter":
207
+ this.openSelectionCallBackHandle();
208
+ break;
209
+ case "Delete":
210
+ this.deleteSelectionCallbackHandle();
211
+ break;
212
+ }
213
+ }
214
+ }
215
+ // 8.PUBLIC METHODS API //
216
+ /**
217
+ * Validate necessary data input
218
+ */
219
+ async validate() {
220
+ const isValid = true;
221
+ return isValid;
222
+ }
223
+ /**
224
+ * This method reload the view, refreshing the filters and the table of images.
225
+ */
226
+ async reload() {
227
+ this.filterUserEl.value = null;
228
+ this.filterAfterTypeEl.value = null;
229
+ this.filterAfterType = null;
230
+ this.filterModifiedEl.checked = false;
231
+ this.filterAllDescendantsEl.checked = false;
232
+ this.filterModuleEl.value = null;
233
+ this.filterCategoryEl.value = null;
234
+ this.filterSearchContentsEl.value = null;
235
+ this.filterNameEl.value = null;
236
+ this.filterStyleEl.value = null;
237
+ this.filterLanguageEl.value = null;
238
+ this.filterDensityEl.value = null;
239
+ this.filterLayerEl.value = null;
240
+ this.filterMore = false;
241
+ this.getImages();
242
+ }
243
+ // 10.RENDER() FUNCTION //
244
+ render() {
245
+ return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper gx-ide-overflow" }, this.renderFilter(), h("gxg-container", null, h("div", { class: "grid images-grid" }, this.renderImages(), this.renderImageData())), h("gxg-container", null, h("div", { class: "grid objects-count" }, h("div", { class: "flex with-gap" }, h("gxg-button", { id: "button-select-all", type: "primary-text-only", onClick: this.selectAll, part: "gxg-button gxg-button--select-all" }, this._componentLocale.footer.btnSelectAll), h("gxg-button", { id: "button-new-file", type: "primary-text-only", onClick: this.newObjectCallbackHandle, part: "gxg-button gxg-button--new-file" }, this._componentLocale.footer.btnNew)), h("gxg-text", { class: "align-end", part: "objects-matching" }, `${this.images.length} ${this._componentLocale.objCount.matching}`))))));
246
+ }
247
+ static get assetsDirs() { return ["gx-ide-assets/ww-images"]; }
248
+ get el() { return this; }
249
+ static get style() { return wwImagesCss; }
250
+ }, [1, "gx-ide-ww-images", {
251
+ "categories": [16],
252
+ "densities": [16],
253
+ "defaultCategory": [1, "default-category"],
254
+ "defaultModule": [16],
255
+ "defaultType": [1, "default-type"],
256
+ "filterModules": [16],
257
+ "languages": [16],
258
+ "layers": [16],
259
+ "contextMenuCallback": [16],
260
+ "deleteSelectionCallback": [16],
261
+ "loadCallback": [16],
262
+ "loadImageItemsCallback": [16],
263
+ "newObjectCallback": [16],
264
+ "openSelectionCallback": [16],
265
+ "selectModuleCallback": [16],
266
+ "selectionObjectChangeCallback": [16],
267
+ "shadow": [4],
268
+ "styles": [16],
269
+ "types": [16],
270
+ "filterAfterType": [32],
271
+ "filterModified": [32],
272
+ "filterMore": [32],
273
+ "images": [32],
274
+ "imagesSelectedItems": [32],
275
+ "selectedObjectsIds": [32],
276
+ "validate": [64],
277
+ "reload": [64]
278
+ }, [[1, "keydown", "keyDownHandler"]]]);
279
+ function defineCustomElement$1() {
280
+ if (typeof customElements === "undefined") {
281
+ return;
282
+ }
283
+ const components = ["gx-ide-ww-images", "ch-grid", "ch-grid-column", "ch-grid-column-resize", "ch-grid-column-settings", "ch-grid-columnset", "ch-grid-settings", "ch-grid-settings-columns", "ch-icon", "ch-window", "ch-window-close", "gx-ide-entity-selector", "gxg-button", "gxg-combo-box", "gxg-combo-box-item", "gxg-container", "gxg-date-picker", "gxg-form-checkbox", "gxg-form-radio", "gxg-form-text", "gxg-grid", "gxg-icon", "gxg-label", "gxg-text", "gxg-title", "gxg-tooltip"];
284
+ components.forEach(tagName => { switch (tagName) {
285
+ case "gx-ide-ww-images":
286
+ if (!customElements.get(tagName)) {
287
+ customElements.define(tagName, GxIdeWWImages);
288
+ }
289
+ break;
290
+ case "ch-grid":
291
+ if (!customElements.get(tagName)) {
292
+ defineCustomElement$q();
293
+ }
294
+ break;
295
+ case "ch-grid-column":
296
+ if (!customElements.get(tagName)) {
297
+ defineCustomElement$p();
298
+ }
299
+ break;
300
+ case "ch-grid-column-resize":
301
+ if (!customElements.get(tagName)) {
302
+ defineCustomElement$o();
303
+ }
304
+ break;
305
+ case "ch-grid-column-settings":
306
+ if (!customElements.get(tagName)) {
307
+ defineCustomElement$n();
308
+ }
309
+ break;
310
+ case "ch-grid-columnset":
311
+ if (!customElements.get(tagName)) {
312
+ defineCustomElement$m();
313
+ }
314
+ break;
315
+ case "ch-grid-settings":
316
+ if (!customElements.get(tagName)) {
317
+ defineCustomElement$l();
318
+ }
319
+ break;
320
+ case "ch-grid-settings-columns":
321
+ if (!customElements.get(tagName)) {
322
+ defineCustomElement$k();
323
+ }
324
+ break;
325
+ case "ch-icon":
326
+ if (!customElements.get(tagName)) {
327
+ defineCustomElement$j();
328
+ }
329
+ break;
330
+ case "ch-window":
331
+ if (!customElements.get(tagName)) {
332
+ defineCustomElement$i();
333
+ }
334
+ break;
335
+ case "ch-window-close":
336
+ if (!customElements.get(tagName)) {
337
+ defineCustomElement$h();
338
+ }
339
+ break;
340
+ case "gx-ide-entity-selector":
341
+ if (!customElements.get(tagName)) {
342
+ defineCustomElement$g();
343
+ }
344
+ break;
345
+ case "gxg-button":
346
+ if (!customElements.get(tagName)) {
347
+ defineCustomElement$f();
348
+ }
349
+ break;
350
+ case "gxg-combo-box":
351
+ if (!customElements.get(tagName)) {
352
+ defineCustomElement$e();
353
+ }
354
+ break;
355
+ case "gxg-combo-box-item":
356
+ if (!customElements.get(tagName)) {
357
+ defineCustomElement$d();
358
+ }
359
+ break;
360
+ case "gxg-container":
361
+ if (!customElements.get(tagName)) {
362
+ defineCustomElement$c();
363
+ }
364
+ break;
365
+ case "gxg-date-picker":
366
+ if (!customElements.get(tagName)) {
367
+ defineCustomElement$b();
368
+ }
369
+ break;
370
+ case "gxg-form-checkbox":
371
+ if (!customElements.get(tagName)) {
372
+ defineCustomElement$a();
373
+ }
374
+ break;
375
+ case "gxg-form-radio":
376
+ if (!customElements.get(tagName)) {
377
+ defineCustomElement$9();
378
+ }
379
+ break;
380
+ case "gxg-form-text":
381
+ if (!customElements.get(tagName)) {
382
+ defineCustomElement$8();
383
+ }
384
+ break;
385
+ case "gxg-grid":
386
+ if (!customElements.get(tagName)) {
387
+ defineCustomElement$7();
388
+ }
389
+ break;
390
+ case "gxg-icon":
391
+ if (!customElements.get(tagName)) {
392
+ defineCustomElement$6();
393
+ }
394
+ break;
395
+ case "gxg-label":
396
+ if (!customElements.get(tagName)) {
397
+ defineCustomElement$5();
398
+ }
399
+ break;
400
+ case "gxg-text":
401
+ if (!customElements.get(tagName)) {
402
+ defineCustomElement$4();
403
+ }
404
+ break;
405
+ case "gxg-title":
406
+ if (!customElements.get(tagName)) {
407
+ defineCustomElement$3();
408
+ }
409
+ break;
410
+ case "gxg-tooltip":
411
+ if (!customElements.get(tagName)) {
412
+ defineCustomElement$2();
413
+ }
414
+ break;
415
+ } });
416
+ }
417
+
418
+ const GxIdeWwImages = GxIdeWWImages;
419
+ const defineCustomElement = defineCustomElement$1;
420
+
421
+ export { GxIdeWwImages, defineCustomElement };
@@ -18,6 +18,7 @@ export { GxIdeTeamDevUpdateToRevision as GxIdeTeamDevUpdateToRevision } from '..
18
18
  export { GxIdeTemplate as GxIdeTemplate } from '../types/components/_template/template';
19
19
  export { GxIdeTest as GxIdeTest } from '../types/components/_test/test';
20
20
  export { GxIdeTopBar as GxIdeTopBar } from '../types/components/top-bar/top-bar';
21
+ export { GxIdeWWImages as GxIdeWwImages } from '../types/components/ww-images/ww-images';
21
22
 
22
23
  /**
23
24
  * Used to manually set the base path where assets can be found.
@@ -79,6 +79,7 @@ export { GxIdeTeamDevUpdateToRevision, defineCustomElement as defineCustomElemen
79
79
  export { GxIdeTemplate, defineCustomElement as defineCustomElementGxIdeTemplate } from './gx-ide-template.js';
80
80
  export { GxIdeTest, defineCustomElement as defineCustomElementGxIdeTest } from './gx-ide-test.js';
81
81
  export { GxIdeTopBar, defineCustomElement as defineCustomElementGxIdeTopBar } from './gx-ide-top-bar.js';
82
+ export { GxIdeWwImages, defineCustomElement as defineCustomElementGxIdeWwImages } from './gx-ide-ww-images.js';
82
83
  export { GxgAccordion, defineCustomElement as defineCustomElementGxgAccordion } from './gxg-accordion.js';
83
84
  export { GxgAccordionItem, defineCustomElement as defineCustomElementGxgAccordionItem } from './gxg-accordion-item.js';
84
85
  export { GxgAlert, defineCustomElement as defineCustomElementGxgAlert } from './gxg-alert.js';
@@ -0,0 +1,112 @@
1
+ import { r as registerInstance, h, g as getElement } from './index-0da01575.js';
2
+
3
+ const iconContent = new Map();
4
+ const requests = new Map();
5
+ function getSvgContent(url) {
6
+ // see if we already have a request for this url
7
+ let request = requests.get(url);
8
+ if (!request) {
9
+ // we don't already have a request
10
+ request = fetch(url).then(response => {
11
+ if (response.ok) {
12
+ return response.text().then(svgContent => {
13
+ iconContent.set(url, svgContent);
14
+ return svgContent;
15
+ });
16
+ }
17
+ iconContent.set(url, "");
18
+ });
19
+ // cache for the same requests
20
+ requests.set(url, request);
21
+ }
22
+ return request;
23
+ }
24
+
25
+ const iconCss = ":host(:not([auto-color])){}:host(:not([auto-color])) svg *{fill:var(--icon-color) !important}:host(:not([auto-color])) path.icons01{fill:var(--icons01-enabled)}:host(:not([auto-color])) path.icons02{fill:var(--icons02-enabled)}:host(:not([auto-color])) path.icons03{fill:var(--icons03-enabled)}:host(:not([auto-color])) path.icons04{fill:var(--icons04-enabled)}:host(:not([auto-color])) path.icons05{fill:var(--icons05-enabled)}:host(:not([auto-color])) path.icons06{fill:var(--icons06-enabled)}:host(:not([auto-color])) path.icons07{fill:var(--icons07-enabled)}:host(:not([auto-color])) path.icons08{fill:var(--icons08-enabled)}:host(:not([auto-color])) path.icons09{fill:var(--icons09-enabled)}:host{display:inline-flex;line-height:0}:host svg{width:var(--icon-size);height:var(--icon-size)}";
26
+
27
+ const ChIcon = class {
28
+ constructor(hostRef) {
29
+ registerInstance(this, hostRef);
30
+ /**
31
+ * If enabled, the icon will be loaded lazily when it's visible in the viewport.
32
+ */
33
+ this.lazy = false;
34
+ /**
35
+ * If enabled, the icon will display its inherent/natural color
36
+ */
37
+ this.autoColor = false;
38
+ /**
39
+ * The URL of the icon.
40
+ */
41
+ this.src = "";
42
+ /**
43
+ * The size of the icon. Possible values: regular, small.
44
+ */
45
+ this.size = "regular";
46
+ this.isVisible = false;
47
+ }
48
+ /** *******************************
49
+ METHODS
50
+ *********************************/
51
+ connectedCallback() {
52
+ // purposely do not return the promise here because loading
53
+ // the svg file should not hold up loading the app
54
+ // only load the svg if it's visible
55
+ this.waitUntilVisible(this.element, "50px", () => {
56
+ this.isVisible = true;
57
+ this.getIcon();
58
+ });
59
+ }
60
+ disconnectedCallback() {
61
+ if (this.io !== undefined) {
62
+ this.io.disconnect();
63
+ this.io = undefined;
64
+ }
65
+ }
66
+ waitUntilVisible(el, rootMargin, callback) {
67
+ if (this.lazy &&
68
+ typeof window !== "undefined" &&
69
+ window.IntersectionObserver) {
70
+ const io = (this.io = new window.IntersectionObserver((data) => {
71
+ if (data[0].isIntersecting) {
72
+ io.disconnect();
73
+ this.io = undefined;
74
+ callback();
75
+ }
76
+ }, { rootMargin }));
77
+ io.observe(el);
78
+ }
79
+ else {
80
+ // browser doesn't support IntersectionObserver
81
+ // so just fallback to always show it
82
+ callback();
83
+ }
84
+ }
85
+ async getIcon() {
86
+ if (this.isVisible) {
87
+ if (this.src) {
88
+ if (iconContent.has(this.src)) {
89
+ this.svgContent = iconContent.get(this.src);
90
+ }
91
+ else {
92
+ this.svgContent = await getSvgContent(this.src);
93
+ }
94
+ }
95
+ else {
96
+ this.svgContent = "";
97
+ return;
98
+ }
99
+ }
100
+ }
101
+ render() {
102
+ return h("div", { innerHTML: this.svgContent });
103
+ }
104
+ static get assetsDirs() { return ["ch-icon-assets"]; }
105
+ get element() { return getElement(this); }
106
+ static get watchers() { return {
107
+ "src": ["getIcon"]
108
+ }; }
109
+ };
110
+ ChIcon.style = iconCss;
111
+
112
+ export { ChIcon as ch_icon };
@@ -43,22 +43,4 @@ const getSelectedGxOption = (gxOptions) => {
43
43
  return found;
44
44
  };
45
45
 
46
- const formSubmitValidation = (result, ref) => {
47
- var _a;
48
- (_a = result.fieldErrors) === null || _a === void 0 ? void 0 : _a.forEach(element => {
49
- const key = element.key;
50
- const message = element.message;
51
- const hasError = element.hasError;
52
- const reference = ref[`${key}El`];
53
- if (reference && hasError && message.trim()) {
54
- reference.validationStatus = "error";
55
- reference.validationMessage = message;
56
- }
57
- else if (reference && !hasError) {
58
- reference.validationStatus = "indeterminate";
59
- reference.validationMessage = null;
60
- }
61
- });
62
- };
63
-
64
- export { formSubmitValidation as f, getSelectedGxOption as g, renderFormItems as r };
46
+ export { getSelectedGxOption as g, renderFormItems as r };
@@ -0,0 +1,8 @@
1
+ const FILTER_AFTER = {
2
+ NONE: "none",
3
+ DATE_TIME: "afterDateTime",
4
+ LAST_BUILD: "afterLastBuild",
5
+ IMPORT: "afterImport"
6
+ };
7
+
8
+ export { FILTER_AFTER as F };
@@ -0,0 +1,19 @@
1
+ const formSubmitValidation = (result, ref) => {
2
+ var _a;
3
+ (_a = result.fieldErrors) === null || _a === void 0 ? void 0 : _a.forEach(element => {
4
+ const key = element.key;
5
+ const message = element.message;
6
+ const hasError = element.hasError;
7
+ const reference = ref[`${key}El`];
8
+ if (reference && hasError && message.trim()) {
9
+ reference.validationStatus = "error";
10
+ reference.validationMessage = message;
11
+ }
12
+ else if (reference && !hasError) {
13
+ reference.validationStatus = "indeterminate";
14
+ reference.validationMessage = null;
15
+ }
16
+ });
17
+ };
18
+
19
+ export { formSubmitValidation as f };