@genexus/genexus-ide-ui 1.1.6 → 1.1.7
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-design-import.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-version.cjs.entry.js +58 -14
- package/dist/cjs/gx-ide-new-version.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +16 -9
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +2 -2
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +270 -0
- package/dist/cjs/gx-ide-team-dev-history.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/design-import/design-import.js +1 -1
- package/dist/collection/components/design-import/design-import.js.map +1 -1
- package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.en.json +3 -1
- package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.ja.json +3 -1
- package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.zh.json +3 -1
- package/dist/collection/components/new-version/new-version.css +4 -0
- package/dist/collection/components/new-version/new-version.js +124 -18
- package/dist/collection/components/new-version/new-version.js.map +1 -1
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +2 -1
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +1 -0
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +1 -0
- package/dist/collection/components/select-kb-items/select-kb-items.css +22 -27
- package/dist/collection/components/select-kb-items/select-kb-items.js +34 -8
- package/dist/collection/components/select-kb-items/select-kb-items.js.map +1 -1
- package/dist/collection/components/team-dev/commit/commit.js +2 -2
- package/dist/collection/components/team-dev/commit/commit.js.map +1 -1
- package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.en.json +42 -0
- package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.ja.json +42 -0
- package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.zh.json +42 -0
- package/dist/collection/components/team-dev/history/helpers.js +22 -0
- package/dist/collection/components/team-dev/history/helpers.js.map +1 -0
- package/dist/collection/components/team-dev/history/history.css +124 -0
- package/dist/collection/components/team-dev/history/history.js +448 -0
- package/dist/collection/components/team-dev/history/history.js.map +1 -0
- package/dist/collection/testing/locale.e2e.js +1 -0
- package/dist/collection/testing/locale.e2e.js.map +1 -1
- package/dist/components/gx-ide-design-import.js +1 -1
- package/dist/components/gx-ide-design-import.js.map +1 -1
- package/dist/components/gx-ide-new-version.js +65 -15
- package/dist/components/gx-ide-new-version.js.map +1 -1
- package/dist/components/gx-ide-select-kb-items.js +1 -507
- package/dist/components/gx-ide-select-kb-items.js.map +1 -1
- package/dist/components/gx-ide-team-dev-commit.js +2 -2
- package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
- package/dist/components/gx-ide-team-dev-history.d.ts +11 -0
- package/dist/components/gx-ide-team-dev-history.js +322 -0
- package/dist/components/gx-ide-team-dev-history.js.map +1 -0
- package/dist/components/select-kb-items.js +520 -0
- package/dist/components/select-kb-items.js.map +1 -0
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-design-import.entry.js +1 -1
- package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-version.entry.js +58 -14
- package/dist/esm/gx-ide-new-version.entry.js.map +1 -1
- package/dist/esm/gx-ide-select-kb-items.entry.js +16 -9
- package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +2 -2
- package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-history.entry.js +266 -0
- package/dist/esm/gx-ide-team-dev-history.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/new-version/langs/new-version.lang.en.json +3 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-version/langs/new-version.lang.ja.json +3 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-version/langs/new-version.lang.zh.json +3 -1
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +2 -1
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +1 -0
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +1 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.en.json +42 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.ja.json +42 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.zh.json +42 -0
- package/dist/genexus-ide-ui/{p-48062d23.entry.js → p-0acf517c.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-48062d23.entry.js.map → p-0acf517c.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-d2107cb2.entry.js → p-34fd4875.entry.js} +3 -18
- package/dist/genexus-ide-ui/p-34fd4875.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-74715731.entry.js +541 -0
- package/dist/genexus-ide-ui/p-74715731.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-80c1ddc3.entry.js +218 -0
- package/dist/genexus-ide-ui/p-80c1ddc3.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9fa1200f.entry.js → p-a8d0b62e.entry.js} +139 -125
- package/dist/genexus-ide-ui/p-a8d0b62e.entry.js.map +1 -0
- package/dist/types/components/new-version/new-version.d.ts +27 -1
- package/dist/types/components/select-kb-items/select-kb-items.d.ts +8 -0
- package/dist/types/components/team-dev/history/helpers.d.ts +7 -0
- package/dist/types/components/team-dev/history/history.d.ts +109 -0
- package/dist/types/components.d.ts +141 -18
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-9fa1200f.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-c91af626.entry.js +0 -149
- package/dist/genexus-ide-ui/p-c91af626.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-d2107cb2.entry.js.map +0 -1
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { r as e, h as t, H as s, a as i } from "./p-25a9f1d7.js";
|
|
2
|
+
|
|
3
|
+
import { L as o } from "./p-311eedf3.js";
|
|
4
|
+
|
|
5
|
+
import { v as n } from "./p-289c3290.js";
|
|
6
|
+
|
|
7
|
+
import { c as a } from "./p-13738332.js";
|
|
8
|
+
|
|
9
|
+
const c = ":host{display:grid;block-size:100%;grid-template-rows:1fr max-content}.field-group{grid-auto-rows:max-content}.main{overflow:auto}.section{display:contents}.tooltip{position:absolute}";
|
|
10
|
+
|
|
11
|
+
var r = undefined && undefined.__classPrivateFieldGet || function(e, t, s, i) {
|
|
12
|
+
if (s === "a" && !i) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
if (typeof t === "function" ? e !== t || !i : !t.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
14
|
+
return s === "m" ? i : s === "a" ? i.call(e) : i ? i.value : t.get(e);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
var l = undefined && undefined.__classPrivateFieldSet || function(e, t, s, i, o) {
|
|
18
|
+
if (i === "m") throw new TypeError("Private method is not writable");
|
|
19
|
+
if (i === "a" && !o) throw new TypeError("Private accessor was defined without a setter");
|
|
20
|
+
if (typeof t === "function" ? e !== t || !o : !t.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
21
|
+
return i === "a" ? o.call(e, s) : o ? o.value = s : t.set(e, s), s;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
var h, d, f, p, u, v, w, m, b;
|
|
25
|
+
|
|
26
|
+
const k = [ "resets/box-sizing", "utils/form", "utils/spacing", "utils/layout", "chameleon/scrollbar", "components/checkbox", "components/button", "components/edit", "components/tooltip" ];
|
|
27
|
+
|
|
28
|
+
// ch-checkbox
|
|
29
|
+
const y = "on";
|
|
30
|
+
|
|
31
|
+
const g = "set-new-version-as-active";
|
|
32
|
+
|
|
33
|
+
const x = "create-linked-local-version";
|
|
34
|
+
|
|
35
|
+
const M = "create-as-protected-version";
|
|
36
|
+
|
|
37
|
+
const W = class {
|
|
38
|
+
constructor(s) {
|
|
39
|
+
e(this, s);
|
|
40
|
+
/**
|
|
41
|
+
* The component hard-coded strings translations.
|
|
42
|
+
*/
|
|
43
|
+
// eslint-disable-next-line @stencil-community/own-props-must-be-private
|
|
44
|
+
h.set(this, void 0);
|
|
45
|
+
d.set(this, void 0);
|
|
46
|
+
f.set(this, (e => {
|
|
47
|
+
const t = e.target;
|
|
48
|
+
if (t.id === g) {
|
|
49
|
+
this.setNewVersionAsActive = e.detail === y;
|
|
50
|
+
} else if (t.id === x) {
|
|
51
|
+
this.createLinkedLocalVersion = e.detail === y;
|
|
52
|
+
} else if (t.id === M) {
|
|
53
|
+
this.createAsProtectedVersion = e.detail === y;
|
|
54
|
+
}
|
|
55
|
+
}));
|
|
56
|
+
p.set(this, (e => {
|
|
57
|
+
this.versionName = e.detail;
|
|
58
|
+
}));
|
|
59
|
+
u.set(this, (e => {
|
|
60
|
+
this.versionDescription = e.detail;
|
|
61
|
+
}));
|
|
62
|
+
v.set(this, (async () => {
|
|
63
|
+
this.cancelCallback();
|
|
64
|
+
}));
|
|
65
|
+
w.set(this, (async () => {
|
|
66
|
+
const e = {
|
|
67
|
+
versionName: this.versionName,
|
|
68
|
+
versionDescription: this.versionDescription,
|
|
69
|
+
setNewVersionAsActive: this.setNewVersionAsActive,
|
|
70
|
+
createLocalLinkedVersion: this.createLinkedLocalVersion,
|
|
71
|
+
createProtectedVersion: this.createAsProtectedVersion
|
|
72
|
+
};
|
|
73
|
+
const t = await this.createCallback(e);
|
|
74
|
+
this.validatableControls = n(t, this.validatableControls);
|
|
75
|
+
}));
|
|
76
|
+
m.set(this, (() => {
|
|
77
|
+
// populate validatableControls with the controls that could have errors.
|
|
78
|
+
const e = [ r(this, d, "f") ];
|
|
79
|
+
e.forEach((e => {
|
|
80
|
+
if (e.id) {
|
|
81
|
+
this.validatableControls.set(e.id, {
|
|
82
|
+
reference: e,
|
|
83
|
+
hasError: false,
|
|
84
|
+
message: undefined
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}));
|
|
88
|
+
}));
|
|
89
|
+
// TODO: evaluate if this should be a global helper function.
|
|
90
|
+
// It is used on other dialogs as well.
|
|
91
|
+
b.set(this, (e => {
|
|
92
|
+
var s, i, o;
|
|
93
|
+
return ((i = (s = this.validatableControls) === null || s === void 0 ? void 0 : s.get(e === null || e === void 0 ? void 0 : e.id)) === null || i === void 0 ? void 0 : i.hasError) && ((o = this.validatableControls.get(e.id)) === null || o === void 0 ? void 0 : o.message) && t("ch-tooltip", {
|
|
94
|
+
class: "tooltip",
|
|
95
|
+
actionElement: e,
|
|
96
|
+
blockAlign: a.tooltipSettings.blockAlign,
|
|
97
|
+
inlineAlign: a.tooltipSettings.inlineAlign,
|
|
98
|
+
delay: a.tooltipSettings.delay
|
|
99
|
+
}, this.validatableControls.get(e.id).message);
|
|
100
|
+
}));
|
|
101
|
+
this.versionName = undefined;
|
|
102
|
+
this.versionDescription = undefined;
|
|
103
|
+
this.setNewVersionAsActive = false;
|
|
104
|
+
this.createLinkedLocalVersion = false;
|
|
105
|
+
this.createAsProtectedVersion = false;
|
|
106
|
+
this.validatableControls = new Map;
|
|
107
|
+
this.isRemoteOperation = false;
|
|
108
|
+
this.isFreezeOperation = false;
|
|
109
|
+
this.showLinkedLocalVersionCheckbox = false;
|
|
110
|
+
this.cancelCallback = undefined;
|
|
111
|
+
this.createCallback = undefined;
|
|
112
|
+
this.defaultInputValues = undefined;
|
|
113
|
+
}
|
|
114
|
+
defaultInputValuesChanged(e) {
|
|
115
|
+
this.versionName = e === null || e === void 0 ? void 0 : e.versionName;
|
|
116
|
+
this.versionDescription = e === null || e === void 0 ? void 0 : e.versionDescription;
|
|
117
|
+
}
|
|
118
|
+
async componentWillLoad() {
|
|
119
|
+
l(this, h, await o.getComponentStrings(this.el), "f");
|
|
120
|
+
this.defaultInputValuesChanged(this.defaultInputValues);
|
|
121
|
+
}
|
|
122
|
+
componentDidLoad() {
|
|
123
|
+
r(this, m, "f").call(this);
|
|
124
|
+
}
|
|
125
|
+
render() {
|
|
126
|
+
const e = !this.versionName || this.versionName.length === 0;
|
|
127
|
+
return t(s, {
|
|
128
|
+
class: "widget"
|
|
129
|
+
}, t("ch-theme", {
|
|
130
|
+
model: k
|
|
131
|
+
}), t("section", {
|
|
132
|
+
class: "section"
|
|
133
|
+
}, t("div", {
|
|
134
|
+
class: "main scrollable field-group spacing-body"
|
|
135
|
+
}, t("div", {
|
|
136
|
+
class: "field field-block"
|
|
137
|
+
}, t("label", {
|
|
138
|
+
class: "label",
|
|
139
|
+
htmlFor: "version-name"
|
|
140
|
+
}, r(this, h, "f").labels.name), t("ch-edit", {
|
|
141
|
+
type: "text",
|
|
142
|
+
id: "version-name",
|
|
143
|
+
class: "input",
|
|
144
|
+
placeholder: r(this, h, "f").placeHolders.name,
|
|
145
|
+
value: this.versionName,
|
|
146
|
+
onInput: r(this, p, "f"),
|
|
147
|
+
ref: e => l(this, d, e, "f")
|
|
148
|
+
}), r(this, b, "f").call(this, r(this, d, "f"))), t("div", {
|
|
149
|
+
class: "field field-block"
|
|
150
|
+
}, t("label", {
|
|
151
|
+
class: "label",
|
|
152
|
+
htmlFor: "version-description"
|
|
153
|
+
}, r(this, h, "f").labels.description), t("ch-edit", {
|
|
154
|
+
type: "text",
|
|
155
|
+
id: "version-description",
|
|
156
|
+
class: "input",
|
|
157
|
+
placeholder: r(this, h, "f").placeHolders.description,
|
|
158
|
+
value: this.versionDescription,
|
|
159
|
+
onInput: r(this, u, "f")
|
|
160
|
+
})), !this.isRemoteOperation ? t("div", {
|
|
161
|
+
class: "field field-inline"
|
|
162
|
+
}, t("ch-checkbox", {
|
|
163
|
+
class: "checkbox",
|
|
164
|
+
id: "set-new-version-as-active",
|
|
165
|
+
checkedValue: y,
|
|
166
|
+
onInput: r(this, f, "f"),
|
|
167
|
+
caption: r(this, h, "f").labels.setActive
|
|
168
|
+
})) : t("div", {
|
|
169
|
+
class: "layout layout--cols-2"
|
|
170
|
+
}, this.showLinkedLocalVersionCheckbox && t("div", {
|
|
171
|
+
class: "layout__panel"
|
|
172
|
+
}, t("ch-checkbox", {
|
|
173
|
+
class: "checkbox",
|
|
174
|
+
id: "create-linked-local-version",
|
|
175
|
+
checkedValue: y,
|
|
176
|
+
onInput: r(this, f, "f"),
|
|
177
|
+
caption: r(this, h, "f").labels.createLinkedLocalVersion
|
|
178
|
+
})), !this.isFreezeOperation && t("div", {
|
|
179
|
+
class: "layout__panel"
|
|
180
|
+
}, t("ch-checkbox", {
|
|
181
|
+
class: "checkbox",
|
|
182
|
+
id: "create-as-protected-version",
|
|
183
|
+
checkedValue: y,
|
|
184
|
+
onInput: r(this, f, "f"),
|
|
185
|
+
caption: r(this, h, "f").labels.createAsProtectedVersion
|
|
186
|
+
})))), t("footer", {
|
|
187
|
+
class: "control-footer-with-border spacing-body"
|
|
188
|
+
}, t("div", {
|
|
189
|
+
class: "buttons-spacer"
|
|
190
|
+
}, t("button", {
|
|
191
|
+
class: "button-secondary",
|
|
192
|
+
onClick: r(this, v, "f")
|
|
193
|
+
}, r(this, h, "f").buttons.cancel), t("button", {
|
|
194
|
+
class: "button-primary",
|
|
195
|
+
onClick: r(this, w, "f"),
|
|
196
|
+
disabled: e
|
|
197
|
+
}, r(this, h, "f").buttons.create)))));
|
|
198
|
+
}
|
|
199
|
+
static get assetsDirs() {
|
|
200
|
+
return [ "gx-ide-assets/new-version" ];
|
|
201
|
+
}
|
|
202
|
+
get el() {
|
|
203
|
+
return i(this);
|
|
204
|
+
}
|
|
205
|
+
static get watchers() {
|
|
206
|
+
return {
|
|
207
|
+
defaultInputValues: [ "defaultInputValuesChanged" ]
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
h = new WeakMap, d = new WeakMap, f = new WeakMap, p = new WeakMap, u = new WeakMap,
|
|
213
|
+
v = new WeakMap, w = new WeakMap, m = new WeakMap, b = new WeakMap;
|
|
214
|
+
|
|
215
|
+
W.style = c;
|
|
216
|
+
|
|
217
|
+
export { W as gx_ide_new_version };
|
|
218
|
+
//# sourceMappingURL=p-80c1ddc3.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["newVersionCss","CSS_BUNDLES","CHECKED_VALUE","SET_NEW_VERSION_AS_ACTIVE_ID","CREATE_LINKED_LOCAL_VERSION_ID","CREATE_AS_PROTECTED_VERSION_ID","GxIdeNewVersion","_GxIdeNewVersion_componentLocale","set","this","_GxIdeNewVersion_versionNameEl","_GxIdeNewVersion_handleCheckBoxValueChange","event","target","id","setNewVersionAsActive","detail","createLinkedLocalVersion","createAsProtectedVersion","_GxIdeNewVersion_handleNameValueChange","versionName","_GxIdeNewVersion_handleDescriptionValueChange","versionDescription","_GxIdeNewVersion_cancelClickHandler","async","cancelCallback","_GxIdeNewVersion_createClickHandler","newVersionData","createLocalLinkedVersion","createProtectedVersion","formSubmitResult","createCallback","validatableControls","validateControls","_GxIdeNewVersion_initializeValidatableControls","__classPrivateFieldGet","forEach","validatableControl","reference","hasError","message","undefined","_GxIdeNewVersion_evaluateTooltipRender","controlReference","_b","_a","get","_c","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","Map","defaultInputValuesChanged","newDefaultInputValues","componentWillLoad","__classPrivateFieldSet","Locale","getComponentStrings","el","defaultInputValues","componentDidLoad","call","render","createButtonDisabled","length","Host","model","htmlFor","labels","name","type","placeholder","placeHolders","value","onInput","ref","description","isRemoteOperation","checkedValue","caption","setActive","showLinkedLocalVersionCheckbox","isFreezeOperation","onClick","buttons","cancel","disabled","create"],"sources":["src/components/new-version/new-version.scss?tag=gx-ide-new-version&encapsulation=shadow","src/components/new-version/new-version.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.field-group {\n grid-auto-rows: max-content;\n}\n\n.main {\n overflow: auto;\n}\n\n.section {\n display: contents;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State, Watch } from \"@stencil/core\";\n\nimport { ChCheckboxCustomEvent } from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../common/locale\";\nimport { FormSubmitResult } from \"../../components\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../common/form-validation\";\nimport { config } from \"../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"chameleon/scrollbar\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/tooltip\"\n];\n\n// ch-checkbox\nconst CHECKED_VALUE = \"on\";\nconst SET_NEW_VERSION_AS_ACTIVE_ID = \"set-new-version-as-active\";\nconst CREATE_LINKED_LOCAL_VERSION_ID = \"create-linked-local-version\";\nconst CREATE_AS_PROTECTED_VERSION_ID = \"create-as-protected-version\";\n\n@Component({\n tag: \"gx-ide-new-version\",\n styleUrl: \"new-version.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/new-version\"]\n})\nexport class GxIdeNewVersion {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n\n #versionNameEl!: HTMLChEditElement;\n\n @Element() el: HTMLGxIdeNewVersionElement;\n\n /**\n * The version selected name\n */\n @State() versionName: string;\n\n /**\n * The version selected description\n */\n @State() versionDescription: string;\n\n /**\n * Checkbox value to set the new version as active\n */\n @State() setNewVersionAsActive: boolean = false;\n\n /**\n * Checkbox value to create new remote version linked to the local version\n */\n @State() createLinkedLocalVersion: boolean = false;\n\n /**\n * Checkbox value to create new remote version as protected version\n */\n @State() createAsProtectedVersion: boolean = false;\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Indicates if the component is going to be used to create a new remote version\n */\n @Prop() readonly isRemoteOperation: boolean = false;\n\n /**\n * Indicates if the component is going to be used to create a new remote frozen version\n */\n @Prop() readonly isFreezeOperation: boolean = false;\n\n /**\n * Indicates if the component must show the checkbox to create a linked local version\n */\n @Prop() readonly showLinkedLocalVersionCheckbox: boolean = false;\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Create' button is pressed.\n */\n @Prop() readonly createCallback: (\n newVersionData: NewVersionData\n ) => Promise<FormSubmitResult>;\n\n /**\n * This property is used to set the initial values of the input fields when the component is loaded.\n */\n @Prop() readonly defaultInputValues: NewVersionData;\n @Watch(\"defaultInputValues\")\n defaultInputValuesChanged(newDefaultInputValues: NewVersionData) {\n this.versionName = newDefaultInputValues?.versionName;\n this.versionDescription = newDefaultInputValues?.versionDescription;\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.defaultInputValuesChanged(this.defaultInputValues);\n }\n\n componentDidLoad() {\n this.#initializeValidatableControls();\n }\n\n #handleCheckBoxValueChange = (\n event: ChCheckboxCustomEvent<any> | InputEvent\n ) => {\n const target = event.target as HTMLInputElement;\n if (target.id === SET_NEW_VERSION_AS_ACTIVE_ID) {\n this.setNewVersionAsActive = event.detail === CHECKED_VALUE;\n } else if (target.id === CREATE_LINKED_LOCAL_VERSION_ID) {\n this.createLinkedLocalVersion = event.detail === CHECKED_VALUE;\n } else if (target.id === CREATE_AS_PROTECTED_VERSION_ID) {\n this.createAsProtectedVersion = event.detail === CHECKED_VALUE;\n }\n };\n\n #handleNameValueChange = (event: CustomEvent<string> | InputEvent) => {\n this.versionName = event.detail as string;\n };\n\n #handleDescriptionValueChange = (event: CustomEvent<string> | InputEvent) => {\n this.versionDescription = event.detail as string;\n };\n\n #cancelClickHandler = async () => {\n this.cancelCallback();\n };\n\n #createClickHandler = async () => {\n const newVersionData: NewVersionData = {\n versionName: this.versionName,\n versionDescription: this.versionDescription,\n setNewVersionAsActive: this.setNewVersionAsActive,\n createLocalLinkedVersion: this.createLinkedLocalVersion,\n createProtectedVersion: this.createAsProtectedVersion\n };\n const formSubmitResult = await this.createCallback(newVersionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#versionNameEl];\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 // 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 render() {\n const createButtonDisabled =\n !this.versionName || this.versionName.length === 0;\n\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"section\">\n <div class=\"main scrollable field-group spacing-body\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"version-name\">\n {this.#componentLocale.labels.name}\n </label>\n <ch-edit\n type=\"text\"\n id=\"version-name\"\n class=\"input\"\n placeholder={this.#componentLocale.placeHolders.name}\n value={this.versionName}\n onInput={this.#handleNameValueChange}\n ref={(el: HTMLChEditElement) =>\n (this.#versionNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#versionNameEl)}\n </div>\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"version-description\">\n {this.#componentLocale.labels.description}\n </label>\n <ch-edit\n type=\"text\"\n id=\"version-description\"\n class=\"input\"\n placeholder={this.#componentLocale.placeHolders.description}\n value={this.versionDescription}\n onInput={this.#handleDescriptionValueChange}\n ></ch-edit>\n </div>\n {!this.isRemoteOperation ? (\n <div class=\"field field-inline\">\n <ch-checkbox\n class=\"checkbox\"\n id=\"set-new-version-as-active\"\n checkedValue={CHECKED_VALUE}\n onInput={this.#handleCheckBoxValueChange}\n caption={this.#componentLocale.labels.setActive}\n ></ch-checkbox>\n </div>\n ) : (\n <div class=\"layout layout--cols-2\">\n {this.showLinkedLocalVersionCheckbox && (\n <div class=\"layout__panel\">\n <ch-checkbox\n class=\"checkbox\"\n id=\"create-linked-local-version\"\n checkedValue={CHECKED_VALUE}\n onInput={this.#handleCheckBoxValueChange}\n caption={\n this.#componentLocale.labels.createLinkedLocalVersion\n }\n ></ch-checkbox>\n </div>\n )}\n {!this.isFreezeOperation && (\n <div class=\"layout__panel\">\n <ch-checkbox\n class=\"checkbox\"\n id=\"create-as-protected-version\"\n checkedValue={CHECKED_VALUE}\n onInput={this.#handleCheckBoxValueChange}\n caption={\n this.#componentLocale.labels.createAsProtectedVersion\n }\n ></ch-checkbox>\n </div>\n )}\n </div>\n )}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button\n class=\"button-secondary\"\n onClick={this.#cancelClickHandler}\n >\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#createClickHandler}\n disabled={createButtonDisabled}\n >\n {this.#componentLocale.buttons.create}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type NewVersionData = {\n versionName: string;\n versionDescription: string;\n setNewVersionAsActive?: boolean;\n createLocalLinkedVersion?: boolean;\n createProtectedVersion?: boolean;\n};\n"],"mappings":"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"}
|