@genexus/genexus-ide-ui 1.1.72 → 1.1.74

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 (58) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +15 -3
  3. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  4. package/dist/cjs/gx-ide-name-picker.cjs.entry.js +6 -5
  5. package/dist/cjs/gx-ide-name-picker.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-restore-version.cjs.entry.js +15 -3
  7. package/dist/cjs/gx-ide-restore-version.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +15 -3
  9. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  10. package/dist/cjs/loader.cjs.js +1 -1
  11. package/dist/collection/components/name-picker/gx-ide-assets/name-picker/shortcuts.json +15 -0
  12. package/dist/collection/components/name-picker/name-picker.js +9 -8
  13. package/dist/collection/components/name-picker/name-picker.js.map +1 -1
  14. package/dist/collection/components/restore-version/restore-version.js +40 -3
  15. package/dist/collection/components/restore-version/restore-version.js.map +1 -1
  16. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +40 -3
  17. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -1
  18. package/dist/collection/components/team-dev/share-kb/share-kb.js +40 -3
  19. package/dist/collection/components/team-dev/share-kb/share-kb.js.map +1 -1
  20. package/dist/components/gx-ide-create-kb-from-server.js +17 -4
  21. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  22. package/dist/components/gx-ide-name-picker.js +8 -7
  23. package/dist/components/gx-ide-name-picker.js.map +1 -1
  24. package/dist/components/gx-ide-restore-version.js +17 -4
  25. package/dist/components/gx-ide-restore-version.js.map +1 -1
  26. package/dist/components/gx-ide-share-kb.js +17 -4
  27. package/dist/components/gx-ide-share-kb.js.map +1 -1
  28. package/dist/esm/genexus-ide-ui.js +1 -1
  29. package/dist/esm/gx-ide-create-kb-from-server.entry.js +15 -3
  30. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  31. package/dist/esm/gx-ide-name-picker.entry.js +7 -6
  32. package/dist/esm/gx-ide-name-picker.entry.js.map +1 -1
  33. package/dist/esm/gx-ide-restore-version.entry.js +15 -3
  34. package/dist/esm/gx-ide-restore-version.entry.js.map +1 -1
  35. package/dist/esm/gx-ide-share-kb.entry.js +15 -3
  36. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  37. package/dist/esm/loader.js +1 -1
  38. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  39. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  40. package/dist/genexus-ide-ui/gx-ide-assets/name-picker/shortcuts.json +15 -0
  41. package/dist/genexus-ide-ui/{p-2d989eb1.entry.js → p-345f7738.entry.js} +57 -52
  42. package/dist/genexus-ide-ui/p-345f7738.entry.js.map +1 -0
  43. package/dist/genexus-ide-ui/{p-8dedbcd9.entry.js → p-519fed7a.entry.js} +67 -56
  44. package/dist/genexus-ide-ui/p-519fed7a.entry.js.map +1 -0
  45. package/dist/genexus-ide-ui/{p-ac79f7e8.entry.js → p-65b69fe0.entry.js} +79 -69
  46. package/dist/genexus-ide-ui/p-65b69fe0.entry.js.map +1 -0
  47. package/dist/genexus-ide-ui/{p-941f470f.entry.js → p-679f037e.entry.js} +44 -34
  48. package/dist/genexus-ide-ui/p-679f037e.entry.js.map +1 -0
  49. package/dist/types/components/name-picker/name-picker.d.ts +2 -2
  50. package/dist/types/components/restore-version/restore-version.d.ts +4 -0
  51. package/dist/types/components/team-dev/create-kb-from-server/create-kb-from-server.d.ts +4 -0
  52. package/dist/types/components/team-dev/share-kb/share-kb.d.ts +4 -0
  53. package/dist/types/components.d.ts +16 -4
  54. package/package.json +1 -1
  55. package/dist/genexus-ide-ui/p-2d989eb1.entry.js.map +0 -1
  56. package/dist/genexus-ide-ui/p-8dedbcd9.entry.js.map +0 -1
  57. package/dist/genexus-ide-ui/p-941f470f.entry.js.map +0 -1
  58. package/dist/genexus-ide-ui/p-ac79f7e8.entry.js.map +0 -1
@@ -1,12 +1,12 @@
1
- import { r as t, h as e, H as i, a as s } from "./p-9b9ccd0c.js";
1
+ import { r as t, g as e, h as i, H as s, a as n } from "./p-9b9ccd0c.js";
2
2
 
3
- import { c as n } from "./p-c5196b3b.js";
3
+ import { c as o } from "./p-c5196b3b.js";
4
4
 
5
- import { c as o, v as a } from "./p-b32b6b1f.js";
5
+ import { c as a, v as r } from "./p-b32b6b1f.js";
6
6
 
7
- import { L as r } from "./p-311eedf3.js";
7
+ import { L as c } from "./p-311eedf3.js";
8
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}";
9
+ const d = ":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
10
 
11
11
  var l = undefined && undefined.__classPrivateFieldGet || function(t, e, i, s) {
12
12
  if (i === "a" && !s) throw new TypeError("Private accessor was defined without a getter");
@@ -14,38 +14,39 @@ var l = undefined && undefined.__classPrivateFieldGet || function(t, e, i, s) {
14
14
  return i === "m" ? s : i === "a" ? s.call(t) : s ? s.value : e.get(t);
15
15
  };
16
16
 
17
- var d = undefined && undefined.__classPrivateFieldSet || function(t, e, i, s, n) {
17
+ var h = undefined && undefined.__classPrivateFieldSet || function(t, e, i, s, n) {
18
18
  if (s === "m") throw new TypeError("Private method is not writable");
19
19
  if (s === "a" && !n) throw new TypeError("Private accessor was defined without a setter");
20
20
  if (typeof e === "function" ? t !== e || !n : !e.has(t)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
21
21
  return s === "a" ? n.call(t, i) : n ? n.value = i : e.set(t, i), i;
22
22
  };
23
23
 
24
- var h, f, p, u, m, w, b;
24
+ var u, f, p, m, w, b, v, g;
25
25
 
26
- const v = [ "resets/box-sizing", "utils/form", "utils/spacing", "utils/layout", "chameleon/scrollbar", "components/button", "components/edit", "components/tooltip" ];
26
+ const y = [ "resets/box-sizing", "utils/form", "utils/spacing", "utils/layout", "chameleon/scrollbar", "components/button", "components/edit", "components/tooltip" ];
27
27
 
28
- const g = class {
29
- constructor(i) {
30
- t(this, i);
28
+ const k = class {
29
+ constructor(s) {
30
+ t(this, s);
31
31
  /**
32
32
  * The component hard-coded strings translations.
33
33
  */
34
34
  // eslint-disable-next-line @stencil-community/own-props-must-be-private
35
- h.set(this, void 0);
35
+ u.set(this, void 0);
36
36
  f.set(this, void 0);
37
- p.set(this, (t => {
37
+ p.set(this, e(`./gx-ide-assets/name-picker/shortcuts.json`));
38
+ m.set(this, (t => {
38
39
  this.inputValue = t.detail;
39
- o(this.validatableControls, "input-name");
40
+ a(this.validatableControls, "input-name");
40
41
  }));
41
- u.set(this, (async () => {
42
+ w.set(this, (async () => {
42
43
  this.cancelCallback();
43
44
  }));
44
- m.set(this, (async () => {
45
- const t = await this.createCallback(this.inputValue);
46
- this.validatableControls = a(t, this.validatableControls);
45
+ b.set(this, (async () => {
46
+ const t = await this.confirmCallback(this.inputValue);
47
+ this.validatableControls = r(t, this.validatableControls);
47
48
  }));
48
- w.set(this, (() => {
49
+ v.set(this, (() => {
49
50
  // populate validatableControls with the controls that could have errors.
50
51
  const t = [ l(this, f, "f") ];
51
52
  t.forEach((t => {
@@ -60,73 +61,77 @@ const g = class {
60
61
  }));
61
62
  // TODO: evaluate if this should be a global helper function.
62
63
  // It is used on other dialogs as well.
63
- b.set(this, (t => {
64
- var i, s, o;
65
- return ((s = (i = this.validatableControls) === null || i === void 0 ? void 0 : i.get(t === null || t === void 0 ? void 0 : t.id)) === null || s === void 0 ? void 0 : s.hasError) && ((o = this.validatableControls.get(t.id)) === null || o === void 0 ? void 0 : o.message) && e("ch-tooltip", {
64
+ g.set(this, (t => {
65
+ var e, s, n;
66
+ return ((s = (e = this.validatableControls) === null || e === void 0 ? void 0 : e.get(t === null || t === void 0 ? void 0 : t.id)) === null || s === void 0 ? void 0 : s.hasError) && ((n = this.validatableControls.get(t.id)) === null || n === void 0 ? void 0 : n.message) && i("ch-tooltip", {
66
67
  class: "tooltip",
67
68
  actionElement: t,
68
- blockAlign: n.tooltipSettings.blockAlign,
69
- inlineAlign: n.tooltipSettings.inlineAlign,
70
- delay: n.tooltipSettings.delay
69
+ blockAlign: o.tooltipSettings.blockAlign,
70
+ inlineAlign: o.tooltipSettings.inlineAlign,
71
+ delay: o.tooltipSettings.delay
71
72
  }, this.validatableControls.get(t.id).message);
72
73
  }));
73
74
  this.inputValue = undefined;
74
75
  this.validatableControls = new Map;
75
76
  this.cancelCallback = undefined;
76
- this.createCallback = undefined;
77
+ this.confirmCallback = undefined;
77
78
  this.defaultInputValue = undefined;
78
79
  }
79
80
  defaultInputValueChanged(t) {
80
81
  this.inputValue = t;
81
82
  }
82
83
  async componentWillLoad() {
83
- d(this, h, await r.getComponentStrings(this.el), "f");
84
+ h(this, u, await c.getComponentStrings(this.el), "f");
84
85
  this.defaultInputValueChanged(this.defaultInputValue);
85
86
  }
86
87
  componentDidLoad() {
87
- l(this, w, "f").call(this);
88
+ l(this, v, "f").call(this);
88
89
  }
89
90
  render() {
90
91
  const t = !this.inputValue || this.inputValue.length === 0;
91
- return e(i, {
92
+ return i(s, {
92
93
  class: "widget"
93
- }, e("ch-theme", {
94
- model: v
95
- }), e("section", {
94
+ }, i("ch-theme", {
95
+ model: y
96
+ }), i("ch-shortcuts", {
97
+ src: l(this, p, "f")
98
+ }), i("section", {
96
99
  class: "section"
97
- }, e("div", {
100
+ }, i("div", {
98
101
  class: "main scrollable field-group spacing-body"
99
- }, e("div", {
102
+ }, i("div", {
100
103
  class: "field field-block"
101
- }, e("label", {
104
+ }, i("label", {
102
105
  class: "label",
103
106
  htmlFor: "input-name"
104
- }, l(this, h, "f").labels.name), e("ch-edit", {
107
+ }, l(this, u, "f").labels.name), i("ch-edit", {
105
108
  type: "text",
106
109
  id: "input-name",
107
110
  class: "input",
108
- placeholder: l(this, h, "f").placeHolders.name,
111
+ placeholder: l(this, u, "f").placeHolders.name,
109
112
  value: this.inputValue,
110
- onInput: l(this, p, "f"),
111
- ref: t => d(this, f, t, "f")
112
- }), l(this, b, "f").call(this, l(this, f, "f")))), e("footer", {
113
+ onInput: l(this, m, "f"),
114
+ ref: t => h(this, f, t, "f")
115
+ }), l(this, g, "f").call(this, l(this, f, "f")))), i("footer", {
113
116
  class: "control-footer-with-border spacing-body"
114
- }, e("div", {
117
+ }, i("div", {
115
118
  class: "buttons-spacer"
116
- }, e("button", {
119
+ }, i("button", {
120
+ id: "cancel-button",
117
121
  class: "button-secondary",
118
- onClick: l(this, u, "f")
119
- }, l(this, h, "f").buttons.cancel), e("button", {
122
+ onClick: l(this, w, "f")
123
+ }, l(this, u, "f").buttons.cancel), i("button", {
124
+ id: "confirm-button",
120
125
  class: "button-primary",
121
- onClick: l(this, m, "f"),
126
+ onClick: l(this, b, "f"),
122
127
  disabled: t
123
- }, l(this, h, "f").buttons.confirm)))));
128
+ }, l(this, u, "f").buttons.confirm)))));
124
129
  }
125
130
  static get assetsDirs() {
126
131
  return [ "gx-ide-assets/name-picker" ];
127
132
  }
128
133
  get el() {
129
- return s(this);
134
+ return n(this);
130
135
  }
131
136
  static get watchers() {
132
137
  return {
@@ -135,10 +140,10 @@ const g = class {
135
140
  }
136
141
  };
137
142
 
138
- h = new WeakMap, f = new WeakMap, p = new WeakMap, u = new WeakMap, m = new WeakMap,
139
- w = new WeakMap, b = new WeakMap;
143
+ u = new WeakMap, f = new WeakMap, p = new WeakMap, m = new WeakMap, w = new WeakMap,
144
+ b = new WeakMap, v = new WeakMap, g = new WeakMap;
140
145
 
141
- g.style = c;
146
+ k.style = d;
142
147
 
143
- export { g as gx_ide_name_picker };
144
- //# sourceMappingURL=p-2d989eb1.entry.js.map
148
+ export { k as gx_ide_name_picker };
149
+ //# sourceMappingURL=p-345f7738.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["namePickerCss","CSS_BUNDLES","GxIdeNamePicker","_GxIdeNamePicker_componentLocale","set","this","_GxIdeNamePicker_inputValueEl","_GxIdeNamePicker_shortcutsSrc","getAssetPath","_GxIdeNamePicker_handleInputValueChange","event","inputValue","detail","clearControlError","validatableControls","_GxIdeNamePicker_cancelClickHandler","async","cancelCallback","_GxIdeNamePicker_confirmClickHandler","formSubmitResult","confirmCallback","validateControls","_GxIdeNamePicker_initializeValidatableControls","__classPrivateFieldGet","forEach","validatableControl","id","reference","hasError","message","undefined","_GxIdeNamePicker_evaluateTooltipRender","controlReference","_b","_a","get","_c","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","Map","defaultInputValueChanged","newDefaultInputValue","componentWillLoad","__classPrivateFieldSet","Locale","getComponentStrings","el","defaultInputValue","componentDidLoad","call","render","confirmButtonDisabled","length","Host","model","src","htmlFor","labels","name","type","placeholder","placeHolders","value","onInput","ref","onClick","buttons","cancel","disabled","confirm"],"sources":["src/components/name-picker/name-picker.scss?tag=gx-ide-name-picker&encapsulation=shadow","src/components/name-picker/name-picker.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 {\n Component,\n Element,\n getAssetPath,\n h,\n Host,\n Prop,\n State,\n Watch\n} from \"@stencil/core\";\n\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { config } from \"../../common/config\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../common/form-validation\";\nimport { Locale } from \"../../common/locale\";\nimport { FormSubmitResult } from \"../../components\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"chameleon/scrollbar\",\n \"components/button\",\n \"components/edit\",\n \"components/tooltip\"\n];\n\n@Component({\n tag: \"gx-ide-name-picker\",\n styleUrl: \"name-picker.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/name-picker\"]\n})\nexport class GxIdeNamePicker {\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 #inputValueEl!: HTMLChEditElement;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/name-picker/shortcuts.json`);\n\n @Element() el: HTMLGxIdeNamePickerElement;\n\n /**\n * The input name\n */\n @State() inputValue: string;\n\n @State() validatableControls = new Map<string, ControlValidation>();\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 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback: (\n inputValue: string\n ) => Promise<FormSubmitResult>;\n\n /**\n * This property is used to set the initial values of the input field when the component is loaded.\n */\n @Prop() readonly defaultInputValue: string;\n @Watch(\"defaultInputValue\")\n defaultInputValueChanged(newDefaultInputValue: string) {\n this.inputValue = newDefaultInputValue;\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.defaultInputValueChanged(this.defaultInputValue);\n }\n\n componentDidLoad() {\n this.#initializeValidatableControls();\n }\n\n #handleInputValueChange = (event: CustomEvent<string> | InputEvent) => {\n this.inputValue = event.detail as string;\n clearControlError(this.validatableControls, \"input-name\");\n };\n\n #cancelClickHandler = async () => {\n this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n const formSubmitResult = await this.confirmCallback(this.inputValue);\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.#inputValueEl];\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 confirmButtonDisabled =\n !this.inputValue || this.inputValue.length === 0;\n\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts src={this.#shortcutsSrc}></ch-shortcuts>\n <section class=\"section\">\n <div class=\"main scrollable field-group spacing-body\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"input-name\">\n {this.#componentLocale.labels.name}\n </label>\n <ch-edit\n type=\"text\"\n id=\"input-name\"\n class=\"input\"\n placeholder={this.#componentLocale.placeHolders.name}\n value={this.inputValue}\n onInput={this.#handleInputValueChange}\n ref={(el: HTMLChEditElement) =>\n (this.#inputValueEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#inputValueEl)}\n </div>\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button\n id=\"cancel-button\"\n class=\"button-secondary\"\n onClick={this.#cancelClickHandler}\n >\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n id=\"confirm-button\"\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={confirmButtonDisabled}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { r as e, g as r, h as t, H as o, a } from "./p-9b9ccd0c.js";
1
+ import { r as e, g as t, h as r, H as o, a } from "./p-9b9ccd0c.js";
2
2
 
3
3
  import { g as i } from "./p-d42e842b.js";
4
4
 
@@ -14,51 +14,52 @@ import { L as s } from "./p-311eedf3.js";
14
14
 
15
15
  const n = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.pill-tag{padding:1px 4px;border-radius:2px;min-inline-size:40px;text-align:center;margin-inline-end:10px;font-size:11px}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content: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}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){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(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}.giu-static-pill-icon-and-text,.giu-static-pill{background-color:var(--elevation-background-color, var(--mer-surface__elevation--01));padding-inline:var(--mer-spacing--xs);color:var(--mer-text__on-elevation);font-size:var(--font-size-body-s);line-height:1.4;font-weight:var(--font-weight-regular);border-radius:var(--mer-border__width--lg);min-block-size:25px;display:inline-grid;align-items:center;pointer-events:none}.giu-static-pill-icon-and-text{display:inline-grid;grid-auto-flow:column;grid-auto-columns:max-content;gap:var(--mer-spacing--xs)}.tab-full-width-buttons::part(tab-list block-start),.tab-full-width-buttons::part(tab-list block-end){grid-auto-columns:1fr}.tab-full-width-buttons::part(tab block-start){justify-content:center}:host{display:grid;block-size:100%;grid-template-rows:1fr max-content}.main-container{display:grid;grid-template-rows:max-content max-content max-content;gap:var(--mer-spacing--md)}.versions-container{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)}.giu-static-pill-icon-and-text{background-color:var(--mer-surface__elevation--02)}";
16
16
 
17
- var l = undefined && undefined.__classPrivateFieldGet || function(e, r, t, o) {
18
- if (t === "a" && !o) throw new TypeError("Private accessor was defined without a getter");
19
- if (typeof r === "function" ? e !== r || !o : !r.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
20
- return t === "m" ? o : t === "a" ? o.call(e) : o ? o.value : r.get(e);
17
+ var l = undefined && undefined.__classPrivateFieldGet || function(e, t, r, o) {
18
+ if (r === "a" && !o) throw new TypeError("Private accessor was defined without a getter");
19
+ if (typeof t === "function" ? e !== t || !o : !t.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
20
+ return r === "m" ? o : r === "a" ? o.call(e) : o ? o.value : t.get(e);
21
21
  };
22
22
 
23
- var c = undefined && undefined.__classPrivateFieldSet || function(e, r, t, o, a) {
23
+ var c = undefined && undefined.__classPrivateFieldSet || function(e, t, r, o, a) {
24
24
  if (o === "m") throw new TypeError("Private method is not writable");
25
25
  if (o === "a" && !a) throw new TypeError("Private accessor was defined without a setter");
26
- if (typeof r === "function" ? e !== r || !a : !r.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
27
- return o === "a" ? a.call(e, t) : a ? a.value = t : r.set(e, t), t;
26
+ if (typeof t === "function" ? e !== t || !a : !t.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
27
+ return o === "a" ? a.call(e, r) : a ? a.value = r : t.set(e, r), r;
28
28
  };
29
29
 
30
- var g, d, f, b, v, h, m, p;
30
+ var d, g, f, b, h, v, m, p, u;
31
31
 
32
- const u = [ "resets/box-sizing", "utils/form--full", "utils/layout", "utils/typography", "utils/spacing", "chameleon/scrollbar" ];
32
+ const x = [ "resets/box-sizing", "utils/form--full", "utils/layout", "utils/typography", "utils/spacing", "chameleon/scrollbar" ];
33
33
 
34
- const x = i({
34
+ const y = i({
35
35
  category: "gemini-tools",
36
36
  name: "show-more-horizontal",
37
37
  colorType: "on-elevation"
38
38
  });
39
39
 
40
- const y = i({
40
+ const w = i({
41
41
  category: "objects",
42
42
  name: "version-frozen"
43
43
  });
44
44
 
45
- const w = i({
45
+ const k = i({
46
46
  category: "objects",
47
47
  name: "version"
48
48
  });
49
49
 
50
- const k = i({
50
+ const z = i({
51
51
  category: "system",
52
52
  name: "version",
53
53
  colorType: "on-surface"
54
54
  });
55
55
 
56
- const z = class {
56
+ const _ = class {
57
57
  constructor(o) {
58
58
  e(this, o);
59
+ d.set(this, void 0);
59
60
  g.set(this, void 0);
60
- d.set(this, r(`./gx-ide-assets/restore-version/shortcuts.json`));
61
- f.set(this, (async () => {
61
+ f.set(this, t(`./gx-ide-assets/restore-version/shortcuts.json`));
62
+ b.set(this, (async () => {
62
63
  const e = {
63
64
  toVersionGuid: this.toVersionInfo.guid,
64
65
  toVersionName: this.toVersionInfo.name,
@@ -68,17 +69,17 @@ const z = class {
68
69
  };
69
70
  await this.confirmCallback(e);
70
71
  }));
71
- b.set(this, (async () => {
72
+ h.set(this, (async () => {
72
73
  await this.cancelCallback();
73
74
  }));
74
75
  v.set(this, (e => {
75
76
  this.versionsComboBoxModel = e.map((e => ({
76
77
  caption: e.name,
77
78
  value: e.guid,
78
- startImgSrc: e.isFrozen ? y : w
79
+ startImgSrc: e.isFrozen ? w : k
79
80
  })));
80
81
  }));
81
- h.set(this, (e => {
82
+ m.set(this, (e => {
82
83
  this.selectedSourceVersionName = e.detail;
83
84
  }));
84
85
  // Uncomment this when the sync environments feature is available
@@ -87,26 +88,26 @@ const z = class {
87
88
  // ) => {
88
89
  // this.syncEnvironments = event.detail === CHECKBOX_CHECKED_VALUE;
89
90
  // };
90
- m.set(this, (async () => {
91
+ p.set(this, (async () => {
91
92
  this.selectedSourceVersion = await this.selectSourceVersionCallback();
92
93
  this.selectedSourceVersionName = this.selectedSourceVersion[0].name;
93
94
  }));
94
- p.set(this, (() => {
95
+ u.set(this, (() => {
95
96
  const e = !this.selectedSourceVersionName || !this.versionsComboBoxModel.some((e => e.caption === this.selectedSourceVersionName));
96
- return t("footer", {
97
+ return r("footer", {
97
98
  class: "footer control-footer-with-border spacing-body"
98
- }, t("div", {
99
+ }, r("div", {
99
100
  class: "buttons-spacer"
100
- }, t("button", {
101
+ }, r("button", {
101
102
  id: "cancel-button",
102
103
  class: "button-secondary",
103
- onClick: l(this, b, "f")
104
- }, l(this, g, "f").footer.cancel), t("button", {
104
+ onClick: l(this, h, "f")
105
+ }, l(this, d, "f").footer.cancel), r("button", {
105
106
  id: "confirm-button",
106
107
  class: "button-primary",
107
- onClick: l(this, f, "f"),
108
+ onClick: l(this, b, "f"),
108
109
  disabled: e
109
- }, l(this, g, "f").footer.confirm)));
110
+ }, l(this, d, "f").footer.confirm)));
110
111
  }));
111
112
  this.syncEnvironments = false;
112
113
  this.selectedSourceVersionName = "";
@@ -122,49 +123,59 @@ const z = class {
122
123
  l(this, v, "f").call(this, this.versions);
123
124
  }
124
125
  async componentWillLoad() {
125
- c(this, g, await s.getComponentStrings(this.el), "f");
126
+ c(this, d, await s.getComponentStrings(this.el), "f");
126
127
  l(this, v, "f").call(this, this.versions || []);
127
128
  }
129
+ /**
130
+ * Suspends or reactivates the shortcuts
131
+ */ async suspendShortcuts(e) {
132
+ if (e) {
133
+ l(this, g, "f").suspend = true;
134
+ } else {
135
+ l(this, g, "f").suspend = false;
136
+ }
137
+ }
128
138
  render() {
129
- return t(o, {
139
+ return r(o, {
130
140
  class: "widget"
131
- }, t("ch-theme", {
132
- model: u
133
- }), t("ch-shortcuts", {
134
- src: l(this, d, "f")
135
- }), t("div", {
141
+ }, r("ch-theme", {
142
+ model: x
143
+ }), r("ch-shortcuts", {
144
+ src: l(this, f, "f"),
145
+ ref: e => c(this, g, e, "f")
146
+ }), r("div", {
136
147
  class: "main-container spacing-body"
137
- }, t("div", null, t("p", {
148
+ }, r("div", null, r("p", {
138
149
  class: "giu-static-pill-icon-and-text"
139
- }, t("ch-image", {
150
+ }, r("ch-image", {
140
151
  class: "icon-md",
141
152
  type: "mask",
142
- src: k
143
- }), t("span", null, `${l(this, g, "f").descriptions.pill} - ${this.toVersionInfo.name}`))), t("p", {
153
+ src: z
154
+ }), r("span", null, `${l(this, d, "f").descriptions.pill} - ${this.toVersionInfo.name}`))), r("p", {
144
155
  class: "body-regular-m"
145
- }, l(this, g, "f").descriptions.summary), t("div", {
156
+ }, l(this, d, "f").descriptions.summary), r("div", {
146
157
  class: "field field-block"
147
- }, t("label", {
158
+ }, r("label", {
148
159
  class: "label",
149
160
  htmlFor: "versions-combo-box"
150
- }, l(this, g, "f").labels.fromVersion), t("div", {
161
+ }, l(this, d, "f").labels.fromVersion), r("div", {
151
162
  class: "versions-container"
152
- }, t("ch-combo-box-render", {
163
+ }, r("ch-combo-box-render", {
153
164
  class: "combo-box",
154
165
  id: "versions-combo-box",
155
166
  model: this.versionsComboBoxModel,
156
- placeholder: l(this, g, "f").placeHolders.fromVersion,
167
+ placeholder: l(this, d, "f").placeHolders.fromVersion,
157
168
  value: this.selectedSourceVersionName,
158
169
  suggest: true,
159
- onInput: l(this, h, "f")
160
- }), t("button", {
170
+ onInput: l(this, m, "f")
171
+ }), r("button", {
161
172
  id: "select-version-button",
162
173
  class: "button-tertiary button-icon-only",
163
- onClick: l(this, m, "f")
164
- }, t("ch-image", {
165
- src: x,
174
+ onClick: l(this, p, "f")
175
+ }, r("ch-image", {
176
+ src: y,
166
177
  class: "icon-sm"
167
- }))))), l(this, p, "f").call(this));
178
+ }))))), l(this, u, "f").call(this));
168
179
  }
169
180
  static get assetsDirs() {
170
181
  return [ "gx-ide-assets/restore-version" ];
@@ -179,10 +190,10 @@ const z = class {
179
190
  }
180
191
  };
181
192
 
182
- g = new WeakMap, d = new WeakMap, f = new WeakMap, b = new WeakMap, v = new WeakMap,
183
- h = new WeakMap, m = new WeakMap, p = new WeakMap;
193
+ d = new WeakMap, g = new WeakMap, f = new WeakMap, b = new WeakMap, h = new WeakMap,
194
+ v = new WeakMap, m = new WeakMap, p = new WeakMap, u = new WeakMap;
184
195
 
185
- z.style = n;
196
+ _.style = n;
186
197
 
187
- export { z as gx_ide_restore_version };
188
- //# sourceMappingURL=p-8dedbcd9.entry.js.map
198
+ export { _ as gx_ide_restore_version };
199
+ //# sourceMappingURL=p-519fed7a.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["restoreVersionCss","CSS_BUNDLES","SHOW_MORE_ICON","getIconPath","category","name","colorType","VERSION_FROZEN_OBJECT_ICON","VERSION_OBJECT_ICON","VERSION_ICON","GxIdeRestoreVersion","_GxIdeRestoreVersion_componentLocale","set","this","_GxIdeRestoreVersion_chShortcutsEl","_GxIdeRestoreVersion_shortcutsSrc","getAssetPath","_GxIdeRestoreVersion_confirmHandler","async","restoreVersionData","toVersionGuid","toVersionInfo","guid","toVersionName","fromVersionGuid","versions","find","version","selectedSourceVersionName","fromVersionName","syncEnvironments","confirmCallback","_GxIdeRestoreVersion_cancelHandler","cancelCallback","_GxIdeRestoreVersion_versionsToComboBoxItemModel","versionsComboBoxModel","map","caption","value","startImgSrc","isFrozen","_GxIdeRestoreVersion_handleComboBoxInput","event","detail","_GxIdeRestoreVersion_selectSourceVersionHandler","selectedSourceVersion","selectSourceVersionCallback","_GxIdeRestoreVersion_renderFooter","disableConfirmButton","some","v","h","class","id","onClick","__classPrivateFieldGet","footer","cancel","disabled","confirm","versionsChanged","call","componentWillLoad","__classPrivateFieldSet","Locale","getComponentStrings","el","suspendShortcuts","suspend","render","Host","model","src","ref","type","descriptions","pill","summary","htmlFor","labels","fromVersion","placeholder","placeHolders","suggest","onInput"],"sources":["src/components/restore-version/restore-version.scss?tag=gx-ide-restore-version&encapsulation=shadow","src/components/restore-version/restore-version.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.main-container {\n display: grid;\n grid-template-rows: max-content max-content max-content;\n gap: var(--mer-spacing--md);\n}\n\n.versions-container {\n display: grid;\n grid-template-columns: 1fr max-content;\n gap: var(--mer-spacing--xs);\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\n.giu-static-pill-icon-and-text {\n background-color: var(--mer-surface__elevation--02);\n}\n","import {\n ChComboBoxRenderCustomEvent,\n ComboBoxModel\n} from \"@genexus/chameleon-controls-library\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport {\n Component,\n Element,\n getAssetPath,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch\n} from \"@stencil/core\";\nimport { Locale } from \"../../common/locale\";\nimport { KBVersion } from \"../team-dev/version-control/common/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst SHOW_MORE_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"on-elevation\"\n});\n\nconst VERSION_FROZEN_OBJECT_ICON = getIconPath({\n category: \"objects\",\n name: \"version-frozen\"\n});\n\nconst VERSION_OBJECT_ICON = getIconPath({\n category: \"objects\",\n name: \"version\"\n});\n\nconst VERSION_ICON = getIconPath({\n category: \"system\",\n name: \"version\",\n colorType: \"on-surface\"\n});\n\n// Uncomment this when the sync environments feature is available\n// const CHECKBOX_CHECKED_VALUE = \"true\";\n\n@Component({\n tag: \"gx-ide-restore-version\",\n styleUrl: \"restore-version.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/restore-version\"]\n})\nexport class GxIdeRestoreVersion {\n #componentLocale: any;\n #chShortcutsEl: HTMLChShortcutsElement;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/restore-version/shortcuts.json`\n );\n @Element() el: HTMLGxIdeRestoreVersionElement;\n\n /**\n * Indicates if the environments should be synchronized.\n */\n @State() syncEnvironments: boolean = false;\n\n /**\n * Input value for the source version selector.\n */\n @State() selectedSourceVersionName: string = \"\";\n\n /**\n * Selected source version from version selector.\n */\n @State() selectedSourceVersion: KBVersion[] = [];\n\n /**\n * Combo box model for the versions selector.\n */\n @State() versionsComboBoxModel: ComboBoxModel = [];\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector.\n */\n @Prop() readonly selectSourceVersionCallback!: () => Promise<KBVersion[]>;\n\n /**\n * Callback invoked by pressing the Confirm button.\n */\n @Prop() readonly confirmCallback!: (\n restoreVersionData: RestoreVersionData\n ) => Promise<void>;\n\n /**\n * Callback invoked by pressing the Cancel button.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The target version to which the restore will be made.\n */\n @Prop() readonly toVersionInfo!: KBVersion;\n\n /**\n * List of versions to show in the versions combo box.\n */\n @Prop() readonly versions!: KBVersion[];\n @Watch(\"versions\")\n versionsChanged() {\n this.#versionsToComboBoxItemModel(this.versions);\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#versionsToComboBoxItemModel(this.versions || []);\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n #confirmHandler = async () => {\n const restoreVersionData = {\n toVersionGuid: this.toVersionInfo.guid,\n toVersionName: this.toVersionInfo.name,\n fromVersionGuid: this.versions.find(\n version => version.name === this.selectedSourceVersionName\n ).guid,\n fromVersionName: this.selectedSourceVersionName,\n syncEnvironments: this.syncEnvironments\n };\n await this.confirmCallback(restoreVersionData);\n };\n\n #cancelHandler = async () => {\n await this.cancelCallback();\n };\n\n #versionsToComboBoxItemModel = (versions: KBVersion[]) => {\n this.versionsComboBoxModel = versions.map(version => ({\n caption: version.name,\n value: version.guid,\n startImgSrc: version.isFrozen\n ? VERSION_FROZEN_OBJECT_ICON\n : VERSION_OBJECT_ICON\n }));\n };\n\n #handleComboBoxInput = (\n event: ChComboBoxRenderCustomEvent<string> | InputEvent\n ) => {\n this.selectedSourceVersionName = event.detail as string;\n };\n // Uncomment this when the sync environments feature is available\n // #handleCheckBoxValueChange = (\n // event: ChCheckboxCustomEvent<any> | InputEvent\n // ) => {\n // this.syncEnvironments = event.detail === CHECKBOX_CHECKED_VALUE;\n // };\n\n #selectSourceVersionHandler = async () => {\n this.selectedSourceVersion = await this.selectSourceVersionCallback();\n this.selectedSourceVersionName = this.selectedSourceVersion[0].name;\n };\n\n #renderFooter = () => {\n const disableConfirmButton =\n !this.selectedSourceVersionName ||\n !this.versionsComboBoxModel.some(\n v => v.caption === this.selectedSourceVersionName\n );\n return (\n <footer class=\"footer control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button\n id=\"cancel-button\"\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n >\n {this.#componentLocale.footer.cancel}\n </button>\n\n <button\n id=\"confirm-button\"\n class=\"button-primary\"\n onClick={this.#confirmHandler}\n disabled={disableConfirmButton}\n >\n {this.#componentLocale.footer.confirm}\n </button>\n </div>\n </footer>\n );\n };\n\n render() {\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 <div class=\"main-container spacing-body\">\n <div>\n <p class=\"giu-static-pill-icon-and-text\">\n <ch-image\n class=\"icon-md\"\n type=\"mask\"\n src={VERSION_ICON}\n ></ch-image>\n <span>{`${this.#componentLocale.descriptions.pill} - ${this.toVersionInfo.name}`}</span>\n </p>\n </div>\n <p class=\"body-regular-m\">\n {this.#componentLocale.descriptions.summary}\n </p>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"versions-combo-box\">\n {this.#componentLocale.labels.fromVersion}\n </label>\n <div class=\"versions-container\">\n <ch-combo-box-render\n class=\"combo-box\"\n id=\"versions-combo-box\"\n model={this.versionsComboBoxModel}\n placeholder={this.#componentLocale.placeHolders.fromVersion}\n value={this.selectedSourceVersionName}\n suggest={true}\n onInput={this.#handleComboBoxInput}\n />\n <button\n id=\"select-version-button\"\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectSourceVersionHandler}\n >\n <ch-image src={SHOW_MORE_ICON} class=\"icon-sm\"></ch-image>\n </button>\n </div>\n </div>\n\n {\n // Uncomment this when the sync environments feature is available\n /* <ch-checkbox\n class=\"checkbox\"\n caption={this.#componentLocale.buttons.syncEnvironments}\n checkedValue={CHECKBOX_CHECKED_VALUE}\n onInput={this.#handleCheckBoxValueChange}\n /> */\n }\n </div>\n {this.#renderFooter()}\n </Host>\n );\n }\n}\n\nexport type RestoreVersionData = {\n fromVersionName: string;\n fromVersionGuid: string;\n toVersionGuid: string;\n toVersionName: string;\n syncEnvironments: boolean;\n};\n"],"mappings":"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"}