@genexus/genexus-ide-ui 1.0.53 → 1.0.54
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.
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +25 -12
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +395 -0
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +19 -0
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +19 -0
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +19 -0
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/shortcuts.json +15 -0
- package/dist/collection/components/select-kb-items/helpers.js +167 -0
- package/dist/collection/components/select-kb-items/helpers.js.map +1 -0
- package/dist/collection/components/select-kb-items/select-kb-items.css +24 -0
- package/dist/collection/components/select-kb-items/select-kb-items.js +480 -0
- package/dist/collection/components/select-kb-items/select-kb-items.js.map +1 -0
- package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.css +8 -0
- package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +24 -11
- package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -1
- package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +3 -2
- package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +2 -1
- package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +2 -1
- package/dist/collection/testing/locale.e2e.js +1 -0
- package/dist/collection/testing/locale.e2e.js.map +1 -1
- package/dist/components/gx-ide-create-kb-from-server.js +25 -12
- package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
- package/dist/components/gx-ide-select-kb-items.d.ts +11 -0
- package/dist/components/gx-ide-select-kb-items.js +428 -0
- package/dist/components/gx-ide-select-kb-items.js.map +1 -0
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js +25 -12
- package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-select-kb-items.entry.js +391 -0
- package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +3 -2
- package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +2 -1
- package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +2 -1
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +19 -0
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +19 -0
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +19 -0
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/shortcuts.json +15 -0
- package/dist/genexus-ide-ui/{p-2145674e.entry.js → p-67132150.entry.js} +54 -39
- package/dist/genexus-ide-ui/p-67132150.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-b95a0250.entry.js +465 -0
- package/dist/genexus-ide-ui/p-b95a0250.entry.js.map +1 -0
- package/dist/types/components/select-kb-items/helpers.d.ts +9 -0
- package/dist/types/components/select-kb-items/select-kb-items.d.ts +100 -0
- package/dist/types/components/team-dev/create-kb-from-server/create-kb-from-server.d.ts +2 -2
- package/dist/types/components.d.ts +101 -2
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-2145674e.entry.js.map +0 -1
|
@@ -8,7 +8,7 @@ import { c as o } from "./p-13738332.js";
|
|
|
8
8
|
|
|
9
9
|
import { v as r } from "./p-289c3290.js";
|
|
10
10
|
|
|
11
|
-
import { L as
|
|
11
|
+
import { L as h } from "./p-311eedf3.js";
|
|
12
12
|
|
|
13
13
|
const mapKbsModelToActionListModel = t => {
|
|
14
14
|
const e = [];
|
|
@@ -22,7 +22,7 @@ const mapKbsModelToActionListModel = t => {
|
|
|
22
22
|
return e;
|
|
23
23
|
};
|
|
24
24
|
|
|
25
|
-
const
|
|
25
|
+
const l = ":host{display:grid;block-size:100%;grid-template-rows:max-content 1fr max-content}.section{display:contents}header{display:grid;grid-template-rows:max-content;grid-template-columns:1fr 1fr max-content}.button-change{align-self:center;justify-self:end}.main{display:grid;grid-template-columns:1fr;grid-template-rows:max-content 1fr max-content max-content}.search-kbs{inline-size:50%}.versions-container{grid-auto-rows:max-content}.versions-container__input{display:grid;grid-template-columns:1fr max-content;gap:var(--mer-spacing--xs)}.versions-container .button-icon-only{border-color:var(--mer-color__neutral-gray--500);border-width:var(--mer-border__width--sm);border-radius:var(--mer-border__radius--sm)}.versions-container .button-icon-only:hover{border-color:var(--mer-color__neutral-gray--100)}";
|
|
26
26
|
|
|
27
27
|
var c = undefined && undefined.__classPrivateFieldSet || function(t, e, s, i, a) {
|
|
28
28
|
if (i === "m") throw new TypeError("Private method is not writable");
|
|
@@ -37,11 +37,11 @@ var d = undefined && undefined.__classPrivateFieldGet || function(t, e, s, i) {
|
|
|
37
37
|
return s === "m" ? i : s === "a" ? i.call(t) : i ? i.value : e.get(t);
|
|
38
38
|
};
|
|
39
39
|
|
|
40
|
-
var f, p, u, m, b,
|
|
40
|
+
var f, p, u, m, b, v, w, g, k, y, M, W, _, x, T, j, C, E, S, $, P, z, A, I;
|
|
41
41
|
|
|
42
|
-
const
|
|
42
|
+
const L = [ "resets/box-sizing", "utils/form--full", "utils/layout", "utils/typography", "utils/spacing", "components/list-box", "components/tooltip", "chameleon/scrollbar" ];
|
|
43
43
|
|
|
44
|
-
const
|
|
44
|
+
const N = class {
|
|
45
45
|
constructor(i) {
|
|
46
46
|
t(this, i);
|
|
47
47
|
f.set(this, n({
|
|
@@ -60,20 +60,23 @@ const K = class {
|
|
|
60
60
|
}, {
|
|
61
61
|
value: "All",
|
|
62
62
|
caption: "All Versions"
|
|
63
|
+
}, {
|
|
64
|
+
value: "Select",
|
|
65
|
+
caption: "Select Version"
|
|
63
66
|
} ]);
|
|
64
67
|
m.set(this, void 0);
|
|
65
68
|
b.set(this, []);
|
|
66
|
-
|
|
67
|
-
|
|
69
|
+
v.set(this, []);
|
|
70
|
+
w.set(this, e(`./gx-ide-assets/create-kb-from-server/shortcuts.json`));
|
|
68
71
|
g.set(this, void 0);
|
|
69
72
|
k.set(this, false);
|
|
70
73
|
y.set(this, void 0);
|
|
71
74
|
M.set(this, void 0);
|
|
72
75
|
W.set(this, void 0);
|
|
73
|
-
|
|
76
|
+
_.set(this, (() => {
|
|
74
77
|
this.cancelCallback();
|
|
75
78
|
}));
|
|
76
|
-
|
|
79
|
+
x.set(this, (async () => {
|
|
77
80
|
this.changeConnectionCallback({
|
|
78
81
|
authenticationType: this.connectionData.authenticationType,
|
|
79
82
|
serverUrl: this.connectionData.serverUrl,
|
|
@@ -81,15 +84,15 @@ const K = class {
|
|
|
81
84
|
userPassword: this.connectionData.userPassword
|
|
82
85
|
});
|
|
83
86
|
}));
|
|
84
|
-
|
|
87
|
+
T.set(this, (async () => {
|
|
85
88
|
if (this.versionSelectedType !== "Select") {
|
|
86
|
-
c(this,
|
|
89
|
+
c(this, v, [], "f");
|
|
87
90
|
}
|
|
88
91
|
this.createKBCallback({
|
|
89
92
|
selectedKB: d(this, g, "f"),
|
|
90
93
|
versionSelected: this.versionSelectedType,
|
|
91
94
|
localKBName: this.localKbNameInputValue,
|
|
92
|
-
versionList: d(this,
|
|
95
|
+
versionList: d(this, v, "f")
|
|
93
96
|
}).then((t => {
|
|
94
97
|
this.validatableControls = r(t, this.validatableControls);
|
|
95
98
|
}));
|
|
@@ -122,7 +125,7 @@ const K = class {
|
|
|
122
125
|
this.filterValue = "";
|
|
123
126
|
}));
|
|
124
127
|
}));
|
|
125
|
-
|
|
128
|
+
S.set(this, (() => {
|
|
126
129
|
// populate validatableControls with the controls that could have errors.
|
|
127
130
|
const t = [ d(this, W, "f") ];
|
|
128
131
|
t.forEach((t => {
|
|
@@ -135,21 +138,33 @@ const K = class {
|
|
|
135
138
|
}
|
|
136
139
|
}));
|
|
137
140
|
}));
|
|
138
|
-
|
|
141
|
+
$.set(this, (t => {
|
|
139
142
|
this.localKbNameInputValue = t.detail;
|
|
140
143
|
c(this, k, true, "f");
|
|
141
144
|
}));
|
|
142
|
-
|
|
145
|
+
P.set(this, (async () => {
|
|
143
146
|
if (this.selectKBVersionsCallback) {
|
|
144
147
|
await this.selectKBVersionsCallback(d(this, g, "f")).then((t => {
|
|
145
148
|
if (t === null || t === void 0 ? void 0 : t.length) {
|
|
146
|
-
this
|
|
147
|
-
|
|
149
|
+
c(this, v, t.map((t => ({
|
|
150
|
+
id: t.id,
|
|
151
|
+
name: t.name
|
|
152
|
+
}))), "f");
|
|
153
|
+
if (t.length === 1 && d(this, v, "f")[0].id === 0) {
|
|
154
|
+
this.localKbNameInputValue = d(this, g, "f");
|
|
155
|
+
this.versionsValueInput = d(this, m, "f").kb.versionsPlaceholder;
|
|
156
|
+
} else if (t.length > 1) {
|
|
157
|
+
this.localKbNameInputValue = d(this, g, "f");
|
|
158
|
+
this.versionsValueInput = `${t.length.toString()} ${d(this, m, "f").kb.versionSelectedFieldValue}`;
|
|
159
|
+
} else {
|
|
160
|
+
this.localKbNameInputValue = `${d(this, g, "f")}_${d(this, v, "f")[0].name}`;
|
|
161
|
+
this.versionsValueInput = `${t[0].name} ${d(this, m, "f").kb.oneVersionSelectedFieldValue}`;
|
|
162
|
+
}
|
|
148
163
|
}
|
|
149
164
|
}));
|
|
150
165
|
}
|
|
151
166
|
}));
|
|
152
|
-
|
|
167
|
+
z.set(this, (t => {
|
|
153
168
|
var e;
|
|
154
169
|
const s = (e = t.detail[0]) === null || e === void 0 ? void 0 : e.item;
|
|
155
170
|
if (s === undefined) {
|
|
@@ -164,22 +179,22 @@ const K = class {
|
|
|
164
179
|
}
|
|
165
180
|
this.localKbNameInputValue = s.caption;
|
|
166
181
|
}));
|
|
167
|
-
|
|
182
|
+
A.set(this, (t => {
|
|
168
183
|
this.versionSelectedType = t.detail;
|
|
169
184
|
}));
|
|
170
|
-
|
|
185
|
+
I.set(this, (() => s("footer", {
|
|
171
186
|
class: "footer control-footer-with-border spacing-body-inline spacing-body-block-end"
|
|
172
187
|
}, s("div", {
|
|
173
188
|
class: "buttons-spacer"
|
|
174
189
|
}, s("button", {
|
|
175
190
|
// cancel button
|
|
176
191
|
class: "button-secondary",
|
|
177
|
-
onClick: d(this,
|
|
192
|
+
onClick: d(this, _, "f"),
|
|
178
193
|
part: "button button-cancel"
|
|
179
194
|
}, d(this, m, "f").footer.cancel), s("button", {
|
|
180
195
|
// create kb button
|
|
181
196
|
class: "button-primary",
|
|
182
|
-
onClick: this.enableSelectVersionsButton && d(this,
|
|
197
|
+
onClick: this.enableSelectVersionsButton && d(this, T, "f"),
|
|
183
198
|
disabled: !this.enableSelectVersionsButton,
|
|
184
199
|
part: "button button-create-kb"
|
|
185
200
|
}, d(this, m, "f").footer.createKb)))));
|
|
@@ -200,19 +215,19 @@ const K = class {
|
|
|
200
215
|
componentDidLoad() {
|
|
201
216
|
d(this, y, "f").focus();
|
|
202
217
|
this.versionSelectedType = d(this, M, "f").value;
|
|
203
|
-
d(this,
|
|
218
|
+
d(this, S, "f").call(this);
|
|
204
219
|
}
|
|
205
220
|
async componentWillLoad() {
|
|
206
|
-
c(this, m, await
|
|
221
|
+
c(this, m, await h.getComponentStrings(this.el), "f");
|
|
207
222
|
await d(this, E, "f").call(this);
|
|
208
223
|
}
|
|
209
224
|
render() {
|
|
210
225
|
return s(i, {
|
|
211
226
|
class: "widget"
|
|
212
227
|
}, s("ch-theme", {
|
|
213
|
-
model:
|
|
228
|
+
model: L
|
|
214
229
|
}), s("ch-shortcuts", {
|
|
215
|
-
src: d(this,
|
|
230
|
+
src: d(this, w, "f"),
|
|
216
231
|
ref: t => this.chShortcutsEl = t
|
|
217
232
|
}), s("section", {
|
|
218
233
|
class: "section"
|
|
@@ -228,7 +243,7 @@ const K = class {
|
|
|
228
243
|
class: "label"
|
|
229
244
|
}, d(this, m, "f").header.user), s("p", null, this.connectionData.userName)), s("button", {
|
|
230
245
|
class: "button-tertiary button-change",
|
|
231
|
-
onClick: d(this,
|
|
246
|
+
onClick: d(this, x, "f")
|
|
232
247
|
}, d(this, m, "f").header.change)), s("section", {
|
|
233
248
|
class: "main field-group spacing-body"
|
|
234
249
|
}, s("ch-edit", {
|
|
@@ -241,14 +256,14 @@ const K = class {
|
|
|
241
256
|
}), s("ch-action-list-render", {
|
|
242
257
|
selection: "single",
|
|
243
258
|
class: "list-box",
|
|
244
|
-
onSelectedItemsChange: d(this,
|
|
259
|
+
onSelectedItemsChange: d(this, z, "f"),
|
|
245
260
|
model: this.kbsFilteredActionListModel
|
|
246
261
|
}), s("div", {
|
|
247
262
|
class: "versions-container field-group"
|
|
248
263
|
}, s("ch-radio-group-render", {
|
|
249
264
|
class: "radio-group",
|
|
250
265
|
model: d(this, u, "f"),
|
|
251
|
-
onChange: d(this,
|
|
266
|
+
onChange: d(this, A, "f"),
|
|
252
267
|
value: d(this, u, "f")[0].value,
|
|
253
268
|
ref: t => c(this, M, t, "f")
|
|
254
269
|
}), this.versionSelectedType === "Select" && s("div", {
|
|
@@ -267,7 +282,7 @@ const K = class {
|
|
|
267
282
|
value: this.versionsValueInput
|
|
268
283
|
}), s("button", {
|
|
269
284
|
class: "button-tertiary button-icon-only",
|
|
270
|
-
onClick: d(this,
|
|
285
|
+
onClick: d(this, P, "f"),
|
|
271
286
|
disabled: !this.enableSelectVersionsButton
|
|
272
287
|
}, s("ch-image", {
|
|
273
288
|
src: d(this, p, "f"),
|
|
@@ -282,10 +297,10 @@ const K = class {
|
|
|
282
297
|
class: "input",
|
|
283
298
|
id: "local-kb-name",
|
|
284
299
|
value: this.localKbNameInputValue,
|
|
285
|
-
onInput: d(this,
|
|
300
|
+
onInput: d(this, $, "f"),
|
|
286
301
|
placeholder: d(this, m, "f").kb.localKbNamePlaceholder,
|
|
287
302
|
ref: t => c(this, W, t, "f")
|
|
288
|
-
}), d(this, j, "f").call(this, d(this, W, "f")))), d(this,
|
|
303
|
+
}), d(this, j, "f").call(this, d(this, W, "f")))), d(this, I, "f").call(this)));
|
|
289
304
|
}
|
|
290
305
|
static get assetsDirs() {
|
|
291
306
|
return [ "gx-ide-assets/create-kb-from-server" ];
|
|
@@ -296,12 +311,12 @@ const K = class {
|
|
|
296
311
|
};
|
|
297
312
|
|
|
298
313
|
f = new WeakMap, p = new WeakMap, u = new WeakMap, m = new WeakMap, b = new WeakMap,
|
|
299
|
-
|
|
300
|
-
M = new WeakMap, W = new WeakMap,
|
|
301
|
-
j = new WeakMap, C = new WeakMap, E = new WeakMap,
|
|
302
|
-
|
|
314
|
+
v = new WeakMap, w = new WeakMap, g = new WeakMap, k = new WeakMap, y = new WeakMap,
|
|
315
|
+
M = new WeakMap, W = new WeakMap, _ = new WeakMap, x = new WeakMap, T = new WeakMap,
|
|
316
|
+
j = new WeakMap, C = new WeakMap, E = new WeakMap, S = new WeakMap, $ = new WeakMap,
|
|
317
|
+
P = new WeakMap, z = new WeakMap, A = new WeakMap, I = new WeakMap;
|
|
303
318
|
|
|
304
|
-
|
|
319
|
+
N.style = l;
|
|
305
320
|
|
|
306
|
-
export {
|
|
307
|
-
//# sourceMappingURL=p-
|
|
321
|
+
export { N as gx_ide_create_kb_from_server };
|
|
322
|
+
//# sourceMappingURL=p-67132150.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["mapKbsModelToActionListModel","kbsData","listBoxItems","forEach","kb","push","id","type","caption","name","createKbFromServerCss","CSS_BUNDLES","GxIdeCreateKbFromServer","_GxIdeCreateKbFromServer_chSearchIcon","set","this","getIconPath","category","colorType","_GxIdeCreateKbFromServer_showMoreIcon","_GxIdeCreateKbFromServer_versionsSelect","value","_GxIdeCreateKbFromServer__componentLocale","_GxIdeCreateKbFromServer_kbsActionListModel","_GxIdeCreateKbFromServer_kbVersions","_GxIdeCreateKbFromServer_shortcutsSrc","getAssetPath","_GxIdeCreateKbFromServer_selectedKbId","_GxIdeCreateKbFromServer_kbNameAlreadyEditedByUser","_GxIdeCreateKbFromServer_searchKbsEl","_GxIdeCreateKbFromServer_versionSelectedTypeEl","_GxIdeCreateKbFromServer_localKBNameEl","_GxIdeCreateKbFromServer_cancelHandler","cancelCallback","_GxIdeCreateKbFromServer_changeConnectionHandler","async","changeConnectionCallback","authenticationType","connectionData","serverUrl","userName","userPassword","_GxIdeCreateKbFromServer_createHandler","versionSelectedType","__classPrivateFieldSet","createKBCallback","selectedKB","__classPrivateFieldGet","versionSelected","localKBName","localKbNameInputValue","versionList","then","formSubmitResult","validatableControls","validateControls","_GxIdeCreateKbFromServer_evaluateTooltipRender","controlReference","_b","_a","get","hasError","_c","message","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","_GxIdeCreateKbFromServer_filterValueChangedHandler","event","filterValue","detail","toLowerCase","kbsFilteredActionListModel","filter","item","includes","_GxIdeCreateKbFromServer_init","getGXserverKBsCallback","result","_GxIdeCreateKbFromServer_initializeValidatableControls","validatableControl","reference","undefined","_GxIdeCreateKbFromServer_inputLocalKbNameHandler","_GxIdeCreateKbFromServer_selectedVersionHandler","selectKBVersionsCallback","length","map","kbVersion","versionsValueInput","versionsPlaceholder","toString","versionSelectedFieldValue","oneVersionSelectedFieldValue","_GxIdeCreateKbFromServer_selectKbChangeHandler","enableSelectVersionsButton","_GxIdeCreateKbFromServer_versionsChangedHandler","_GxIdeCreateKbFromServer_renderFooter","onClick","part","footer","cancel","disabled","createKb","Map","componentDidLoad","focus","call","componentWillLoad","Locale","getComponentStrings","el","render","Host","model","src","ref","chShortcutsEl","header","user","change","startImgSrc","onInput","placeholder","searchKbsPlaceholder","selection","onSelectedItemsChange","onChange","htmlFor","versionsLabel","readonly","versionsPlaceholderDisabled","localKbNameLabel","localKbNamePlaceholder"],"sources":["src/components/team-dev/create-kb-from-server/helpers.ts","src/components/team-dev/create-kb-from-server/create-kb-from-server.scss?tag=gx-ide-create-kb-from-server&encapsulation=shadow","src/components/team-dev/create-kb-from-server/create-kb-from-server.tsx"],"sourcesContent":["import { ActionListItemModel } from \"@genexus/chameleon-controls-library\";\nimport { KBData } from \"./create-kb-from-server\";\n\nexport const mapKbsModelToActionListModel = (\n kbsData: KBData[]\n): ActionListItemModel[] => {\n const listBoxItems: ActionListItemModel[] = [];\n kbsData.forEach(kb => {\n listBoxItems.push({\n id: kb.id,\n type: \"actionable\",\n caption: kb.name\n });\n });\n return listBoxItems;\n};\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// - - - - - - - - - - -\n// Header\n// - - - - - - - - - - -\n\nheader {\n display: grid;\n grid-template-rows: max-content;\n grid-template-columns: 1fr 1fr max-content;\n}\n\n.button-change {\n align-self: center;\n justify-self: end;\n}\n\n// - - - - - - - - - - -\n// Main\n// - - - - - - - - - - -\n\n.main {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: max-content 1fr max-content max-content;\n}\n\n.search-kbs {\n inline-size: 50%;\n}\n\n.versions-container {\n grid-auto-rows: max-content;\n\n &__input {\n display: grid;\n grid-template-columns: 1fr max-content;\n gap: var(--mer-spacing--xs);\n }\n\n .button-icon-only {\n border-color: var(--mer-color__neutral-gray--500);\n border-width: var(--mer-border__width--sm);\n border-radius: var(--mer-border__radius--sm);\n }\n\n .button-icon-only:hover {\n border-color: var(--mer-color__neutral-gray--100);\n }\n}\n","// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n getAssetPath\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { mapKbsModelToActionListModel } from \"./helpers\";\nimport {\n ActionListItemActionable,\n ActionListItemModel,\n ActionListItemModelExtended,\n ChActionListRenderCustomEvent,\n ChEditCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\n@Component({\n tag: \"gx-ide-create-kb-from-server\",\n styleUrl: \"create-kb-from-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/create-kb-from-server\"]\n})\nexport class GxIdeCreateKbFromServer {\n #chSearchIcon = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n });\n\n #showMoreIcon = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"on-elevation\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" },\n { value: \"Select\", caption: \"Select Version\" }\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbsActionListModel: ActionListItemModel[] = [];\n #kbVersions: KBVersion[] = [];\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n #selectedKbId: string;\n #kbNameAlreadyEditedByUser: boolean = false;\n\n #searchKbsEl!: HTMLChEditElement;\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n #localKBNameEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n /**\n * The current kbn name value.\n */\n @State() localKbNameInputValue: string = \"\";\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * KBs filtered\n */\n @State() kbsFilteredActionListModel: ActionListItemModel[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Create KB' button is pressed. Receives the user's parameter selection to create the remote KB locally and ends the dialog.\n */\n @Prop() readonly createKBCallback!: (\n kbInfo: KnowledgeBaseInfo\n ) => Promise<FormSubmitResult>;\n\n /**\n * Callback that must be invoked when invoking the dialog\n */\n @Prop() readonly getGXserverKBsCallback!: (\n data: GXServerConnectionData\n ) => Promise<KBData[]>;\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector. Receives the KB selected by the user, and displays the version selector dialog. Returns a list of versions chosen by the user.\n */\n @Prop() readonly selectKBVersionsCallback: (\n selectedKB: string\n ) => Promise<KBVersion[]>;\n\n componentDidLoad() {\n (this.#searchKbsEl as HTMLElement).focus();\n\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n\n this.#initializeValidatableControls();\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n await this.#init();\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #createHandler = async (): Promise<void> => {\n if (this.versionSelectedType !== \"Select\") {\n this.#kbVersions = [];\n }\n this.createKBCallback({\n selectedKB: this.#selectedKbId,\n versionSelected: this.versionSelectedType,\n localKBName: this.localKbNameInputValue,\n versionList: this.#kbVersions\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.kbsFilteredActionListModel = this.#kbsActionListModel.filter(\n (item: ActionListItemActionable) =>\n item.caption.toLowerCase().includes(this.filterValue)\n );\n };\n\n #init = async () => {\n await this.getGXserverKBsCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n }).then(result => {\n this.#kbsActionListModel = mapKbsModelToActionListModel(result);\n this.kbsFilteredActionListModel = this.#kbsActionListModel;\n this.filterValue = \"\";\n });\n };\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#localKBNameEl];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #inputLocalKbNameHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.localKbNameInputValue = event.detail as string;\n this.#kbNameAlreadyEditedByUser = true;\n };\n\n #selectedVersionHandler = async () => {\n if (this.selectKBVersionsCallback) {\n await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n if (result?.length) {\n this.#kbVersions = result.map(kbVersion => ({\n id: kbVersion.id,\n name: kbVersion.name\n }));\n\n if (result.length === 1 && this.#kbVersions[0].id === 0) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput =\n this.#_componentLocale.kb.versionsPlaceholder;\n } else if (result.length > 1) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput = `${result.length.toString()} ${\n this.#_componentLocale.kb.versionSelectedFieldValue\n }`;\n } else {\n this.localKbNameInputValue = `${this.#selectedKbId}_${\n this.#kbVersions[0].name\n }`;\n this.versionsValueInput = `${result[0].name} ${\n this.#_componentLocale.kb.oneVersionSelectedFieldValue\n }`;\n }\n }\n });\n }\n };\n\n #selectKbChangeHandler = (\n event: ChActionListRenderCustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const item = event.detail[0]?.item as ActionListItemActionable;\n if (item === undefined) {\n this.enableSelectVersionsButton = false;\n this.#selectedKbId = undefined;\n return;\n }\n this.enableSelectVersionsButton = true;\n this.#selectedKbId = item.id;\n if (this.#kbNameAlreadyEditedByUser) {\n return;\n }\n this.localKbNameInputValue = item.caption;\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // create kb button\n class=\"button-primary\"\n onClick={this.enableSelectVersionsButton && this.#createHandler}\n disabled={!this.enableSelectVersionsButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.createKb}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n\n <section class=\"main field-group spacing-body\">\n <ch-edit\n class=\"input search-kbs\"\n id=\"local-kb-name\"\n startImgSrc={this.#chSearchIcon}\n onInput={this.#filterValueChangedHandler}\n placeholder={this.#_componentLocale.kb.searchKbsPlaceholder}\n ref={el => (this.#searchKbsEl = el as HTMLChEditElement)}\n ></ch-edit>\n\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n onSelectedItemsChange={this.#selectKbChangeHandler}\n model={this.kbsFilteredActionListModel}\n ></ch-action-list-render>\n\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={el =>\n (this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement)\n }\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-sm\"\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"localKbName\">\n {this.#_componentLocale.kb.localKbNameLabel}\n </label>\n <ch-edit\n // local kb name\n class=\"input\"\n id=\"local-kb-name\"\n value={this.localKbNameInputValue}\n onInput={this.#inputLocalKbNameHandler}\n placeholder={this.#_componentLocale.kb.localKbNamePlaceholder}\n ref={(el: HTMLChEditElement) =>\n (this.#localKBNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#localKBNameEl)}\n </div>\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type KBVersion = {\n id: number;\n name: string;\n type?: VersionType;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type KnowledgeBaseInfo = {\n selectedKB: string;\n versionSelected: VersionOption;\n localKBName: string;\n versionList: KBVersion[];\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type VersionType = \"Branch\" | \"Frozen\";\n"],"mappings":"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"}
|