@genexus/genexus-ide-ui 1.0.55 → 1.0.56

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 (27) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +94 -66
  3. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js.map +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/collection/components/gam-installation-settings/gam-installation-settings.css +13 -43
  6. package/dist/collection/components/gam-installation-settings/gam-installation-settings.js +139 -150
  7. package/dist/collection/components/gam-installation-settings/gam-installation-settings.js.map +1 -1
  8. package/dist/collection/components/gam-installation-settings/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.en.json +2 -1
  9. package/dist/collection/components/gam-installation-settings/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.ja.json +3 -2
  10. package/dist/collection/components/gam-installation-settings/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.zh.json +2 -1
  11. package/dist/components/gx-ide-gam-installation-settings.js +100 -85
  12. package/dist/components/gx-ide-gam-installation-settings.js.map +1 -1
  13. package/dist/esm/genexus-ide-ui.js +1 -1
  14. package/dist/esm/gx-ide-gam-installation-settings.entry.js +95 -67
  15. package/dist/esm/gx-ide-gam-installation-settings.entry.js.map +1 -1
  16. package/dist/esm/loader.js +1 -1
  17. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  18. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  19. package/dist/genexus-ide-ui/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.en.json +2 -1
  20. package/dist/genexus-ide-ui/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.ja.json +3 -2
  21. package/dist/genexus-ide-ui/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.zh.json +2 -1
  22. package/dist/genexus-ide-ui/{p-36a97020.entry.js → p-3f44de6a.entry.js} +157 -134
  23. package/dist/genexus-ide-ui/p-3f44de6a.entry.js.map +1 -0
  24. package/dist/types/components/gam-installation-settings/gam-installation-settings.d.ts +14 -38
  25. package/dist/types/components.d.ts +6 -33
  26. package/package.json +1 -1
  27. package/dist/genexus-ide-ui/p-36a97020.entry.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"names":["gamInstallationSettingsCss","CSS_BUNDLES","GxIdeGamInstallationSettings","_GxIdeGamInstallationSettings__componentLocale","set","this","_GxIdeGamInstallationSettings_futureUpgradesComboEl","_GxIdeGamInstallationSettings_panelsCheckboxEl","_GxIdeGamInstallationSettings_webPanelsCheckboxEl","_GxIdeGamInstallationSettings_cancelCallbackHandler","cancelCallback","_GxIdeGamInstallationSettings_repairCallbackHandler","async","saveCallback","data","importWebPanels","__classPrivateFieldGet","value","importPanels","futureUpgrades","repairCallback","_GxIdeGamInstallationSettings_renderFilters","h","class","role","filters","filtersHeading","id","frontEndObjects","checkedValue","_a","defaultConfiguration","undefined","caption","webPanelsCheckbox","ref","el","__classPrivateFieldSet","part","canSelectPanels","panelsCheckbox","disabled","htmlFor","futureUpgradesComboLabel","model","manageFutureUpgrades","installAutomatically","promptMe","neverUpdate","_GxIdeGamInstallationSettings_renderDescription","configurationType","header","headerTextInstallation","firstSentence","secondSentence","thirdSentence","headerTextUpdate","_GxIdeGamInstallationSettings_saveCallbackHandler","componentWillLoad","Locale","getComponentStrings","render","Host","call","onClick"],"sources":["src/components/gam-installation-settings/gam-installation-settings.scss?tag=gx-ide-gam-installation-settings&encapsulation=shadow","src/components/gam-installation-settings/gam-installation-settings.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: grid;\n grid-template-rows: max-content 1fr max-content;\n height: 100%;\n}\n\n.control-header {\n margin-block-end: var(--mer-spacing--md);\n}\n\n.main-content {\n grid-auto-rows: max-content;\n}\n\n.footer-info {\n margin-bottom: var(--mer-spacing--sm);\n}\n\n.description {\n display: grid;\n grid-auto-rows: max-content;\n gap: 8px;\n}\n","/* eslint-disable @stencil-community/own-props-must-be-private */\n/* STENCIL IMPORTS */\nimport { Component, Host, h, Prop, Element } from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../common/locale\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/checkbox\",\n \"components/combo-box\",\n \"components/edit\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\"\n];\n@Component({\n tag: \"gx-ide-gam-installation-settings\",\n styleUrl: \"gam-installation-settings.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/gam-installation-settings\"]\n})\nexport class GxIdeGamInstallationSettings {\n /**\n * The component hard-coded strings translations.\n */\n #_componentLocale: any;\n\n @Element() el: HTMLGxIdeGamInstallationSettingsElement;\n\n #futureUpgradesComboEl!: HTMLChComboBoxRenderElement;\n #panelsCheckboxEl!: HTMLChCheckboxElement;\n #webPanelsCheckboxEl!: HTMLChCheckboxElement;\n\n /**\n * Callback invoked when the user wants to cancel the exportation process\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Determines 'Panels' checkbox activation, enabled only if an SD generator is in the KB.\n * Otherwise, the checkbox is disabled.\n */\n @Prop() readonly canSelectPanels: boolean = false;\n\n /**\n * Specifies the configuration type to be used\n */\n @Prop() readonly configurationType: \"installation\" | \"update\" =\n \"installation\";\n\n /**\n * Defines default config for initializing the dialog with stored gam config data\n */\n @Prop() readonly defaultConfiguration: GamConfigData | undefined = {\n importWebPanels: true,\n importPanels: false,\n futureUpgrades: \"prompt\"\n };\n\n /**\n * Callback invoked when the user press repair button\n */\n @Prop() readonly repairCallback: RepairCallback;\n\n /**\n * Callback invoked when the user initiates the export process\n */\n @Prop() readonly saveCallback: SaveCallback;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n #cancelCallbackHandler = () => {\n this.cancelCallback();\n };\n\n #repairCallbackHandler = async () => {\n if (this.saveCallback) {\n const data: GamConfigData = {\n importWebPanels: !!this.#webPanelsCheckboxEl.value,\n importPanels: !!this.#panelsCheckboxEl.value,\n futureUpgrades: this.#futureUpgradesComboEl.value\n ? (this.#futureUpgradesComboEl.value as ComboValues)\n : null\n };\n await this.repairCallback(data);\n }\n };\n\n #renderFilters = () => {\n return (\n <div\n class=\"field-group\"\n role=\"region\"\n aria-label={this.#_componentLocale.filters.filtersHeading}\n >\n <h5 class=\"subtitle-regular-s margin-block-end-s\">\n {this.#_componentLocale.filters.filtersHeading}\n </h5>\n\n <div class=\"filters__wrapper\">\n <div\n class=\"field-group\"\n role=\"group\"\n aria-labelledby=\"frontend-objects-label\"\n >\n <div class=\"field field-block\">\n <label id=\"frontend-objects-label\" class=\"label\">\n {this.#_componentLocale.filters.frontEndObjects}\n </label>\n\n <div class=\"field-group-inline\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue=\"webPanels\"\n value={\n this.defaultConfiguration?.importWebPanels\n ? \"webPanels\"\n : undefined\n }\n caption={this.#_componentLocale.filters.webPanelsCheckbox}\n ref={(el: HTMLChCheckboxElement) =>\n (this.#webPanelsCheckboxEl = el as HTMLChCheckboxElement)\n }\n part=\"web-panels-checkbox\"\n ></ch-checkbox>\n\n <ch-checkbox\n class=\"checkbox\"\n checkedValue=\"panels\"\n value={\n this.defaultConfiguration.importPanels &&\n this.canSelectPanels\n ? \"panels\"\n : undefined\n }\n caption={this.#_componentLocale.filters.panelsCheckbox}\n disabled={!this.canSelectPanels}\n ref={(el: HTMLChCheckboxElement) =>\n (this.#panelsCheckboxEl = el as HTMLChCheckboxElement)\n }\n part=\"panels-checkbox\"\n ></ch-checkbox>\n </div>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"future-upgrades-combo\">\n {this.#_componentLocale.filters.futureUpgradesComboLabel}\n </label>\n <ch-combo-box-render\n id=\"future-upgrades-combo\"\n class=\"combo-box\"\n value={this.defaultConfiguration.futureUpgrades}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#futureUpgradesComboEl =\n el as HTMLChComboBoxRenderElement)\n }\n model={[\n {\n value: \"automatic\",\n caption:\n this.#_componentLocale.manageFutureUpgrades\n .installAutomatically\n },\n {\n value: \"prompt\",\n caption:\n this.#_componentLocale.manageFutureUpgrades.promptMe\n },\n {\n value: \"never\",\n caption:\n this.#_componentLocale.manageFutureUpgrades.neverUpdate\n }\n ]}\n part=\"future-upgrades-combo\"\n ></ch-combo-box-render>\n </div>\n </div>\n </div>\n </div>\n );\n };\n\n #renderDescription = () => {\n return (\n <div class=\"description\">\n {this.configurationType === \"installation\"\n ? [\n <p class=\"text-body\">\n {\n this.#_componentLocale.header.headerTextInstallation\n .firstSentence\n }\n </p>,\n <p class=\"text-body\">\n {\n this.#_componentLocale.header.headerTextInstallation\n .secondSentence\n }\n </p>,\n <p class=\"text-body\">\n {\n this.#_componentLocale.header.headerTextInstallation\n .thirdSentence\n }\n </p>\n ]\n : [\n <p class=\"text-body\">\n {this.#_componentLocale.header.headerTextUpdate.firstSentence}\n </p>,\n <p class=\"text-body\">\n {this.#_componentLocale.header.headerTextUpdate.secondSentence}\n </p>\n ]}\n {/* header text */}\n </div>\n );\n };\n\n #saveCallbackHandler = async () => {\n if (this.saveCallback) {\n const data: GamConfigData = {\n importWebPanels: !!this.#webPanelsCheckboxEl.value,\n importPanels: !!this.#panelsCheckboxEl.value,\n futureUpgrades: this.#futureUpgradesComboEl.value\n ? (this.#futureUpgradesComboEl.value as ComboValues)\n : null\n };\n await this.saveCallback(data);\n }\n };\n\n render() {\n return (\n <Host class=\"widget spacing-body\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <div class=\"control-header control-header-with-border\">\n {this.#renderDescription()}\n </div>\n <div class=\"main-content field-group\">{this.#renderFilters()}</div>\n\n <div class=\"footer\">\n {this.configurationType === \"update\" && (\n <div class=\"footer-info\">\n <p>Use Repair to import GAM components again</p>\n </div>\n )}\n\n <div class=\"control-footer-with-border control-footer-space-between\">\n {this.configurationType === \"update\" && (\n <button\n id=\"repair-button\"\n class=\"button-secondary\"\n onClick={this.#repairCallbackHandler}\n part=\"button button--repair\"\n >\n Repair\n </button>\n )}\n <div class=\"buttons-spacer\">\n <button\n id=\"cancel-button\"\n class=\"button-secondary\"\n onClick={this.#cancelCallbackHandler}\n part=\"button button--cancel\"\n >\n Cancel\n </button>\n <button\n id=\"confirm-button\"\n class=\"button-primary\"\n onClick={this.#saveCallbackHandler}\n part=\"button button--confirm\"\n >\n Save\n </button>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n\nexport type CancelCallback = () => Promise<void>;\ntype ComboValues = \"automatic\" | \"prompt\" | \"never\";\nexport type GamConfigData = {\n importWebPanels: boolean;\n importPanels: boolean;\n futureUpgrades: \"never\" | \"prompt\" | \"automatic\";\n};\n\nexport type RepairCallback = (config: GamConfigData) => Promise<void>;\nexport type SaveCallback = (data: GamConfigData) => Promise<void>;\n"],"mappings":"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"}
@@ -1,63 +1,39 @@
1
- import { EventEmitter } from "../../stencil-public-runtime";
2
1
  export declare class GxIdeGamInstallationSettings {
2
+ #private;
3
+ el: HTMLGxIdeGamInstallationSettingsElement;
3
4
  /**
4
- * The component hard-coded strings translations.
5
+ * Callback invoked when the user wants to cancel the exportation process
5
6
  */
6
- private _componentLocale;
7
- private renderedFirstTime;
8
- el: HTMLGxIdeGamInstallationSettingsElement;
9
- private webPanelsCheckboxEl;
10
- private panelsCheckboxEl;
11
- private futureUpgradesComboEl;
7
+ readonly cancelCallback: CancelCallback;
12
8
  /**
13
- * If true it displays the component title on the header
9
+ * Determines 'Panels' checkbox activation, enabled only if an SD generator is in the KB.
10
+ * Otherwise, the checkbox is disabled.
14
11
  */
15
- readonly displayTitle = false;
12
+ readonly canSelectPanels: boolean;
16
13
  /**
17
14
  * Specifies the configuration type to be used
18
15
  */
19
16
  readonly configurationType: "installation" | "update";
20
17
  /**
21
- * Callback invoked when the user press repair button
22
- */
23
- readonly repairCallback: RepairCallback;
24
- /**
25
- * Callback invoked when the user wants to start the exportation process
26
- */
27
- readonly saveCallback: SaveCallback;
28
- /**
29
- * Callback invoked when the user wants to cancel the exportation process
30
- */
31
- readonly cancelCallback: CancelCallback;
32
- /**
33
- * Defines the default configuration property. Necessary for initializing the dialogue
34
- * using stored 'game config data' from the server. If undefined, default values are
35
- * applied.
18
+ * Defines default config for initializing the dialog with stored gam config data
36
19
  */
37
20
  readonly defaultConfiguration: GamConfigData | undefined;
38
21
  /**
39
- * Property determining 'Panels' checkbox activation. Enabled only if an SD generator is
40
- * present in the KB. If not, checkbox is disabled
22
+ * Callback invoked when the user press repair button
41
23
  */
42
- readonly canSelectPanels: boolean;
24
+ readonly repairCallback: RepairCallback;
43
25
  /**
44
- * @description Gets fired when the component has rendered for the first time.
26
+ * Callback invoked when the user initiates the export process
45
27
  */
46
- componentDidRenderFirstTime: EventEmitter<string>;
28
+ readonly saveCallback: SaveCallback;
47
29
  componentWillLoad(): Promise<void>;
48
- componentDidRender(): void;
49
- private repairCallbackHandler;
50
- private saveCallbackHandler;
51
- private cancelCallbackHandler;
52
- private renderHeader;
53
- private renderFilters;
54
30
  render(): any;
55
31
  }
32
+ export type CancelCallback = () => Promise<void>;
56
33
  export type GamConfigData = {
57
34
  importWebPanels: boolean;
58
35
  importPanels: boolean;
59
36
  futureUpgrades: "never" | "prompt" | "automatic";
60
37
  };
61
- export type SaveCallback = (data: GamConfigData) => Promise<void>;
62
- export type CancelCallback = () => Promise<void>;
63
38
  export type RepairCallback = (config: GamConfigData) => Promise<void>;
39
+ export type SaveCallback = (data: GamConfigData) => Promise<void>;
@@ -896,7 +896,7 @@ export namespace Components {
896
896
  }
897
897
  interface GxIdeGamInstallationSettings {
898
898
  /**
899
- * Property determining 'Panels' checkbox activation. Enabled only if an SD generator is present in the KB. If not, checkbox is disabled
899
+ * Determines 'Panels' checkbox activation, enabled only if an SD generator is in the KB. Otherwise, the checkbox is disabled.
900
900
  */
901
901
  "canSelectPanels": boolean;
902
902
  /**
@@ -908,19 +908,15 @@ export namespace Components {
908
908
  */
909
909
  "configurationType": "installation" | "update";
910
910
  /**
911
- * Defines the default configuration property. Necessary for initializing the dialogue using stored 'game config data' from the server. If undefined, default values are applied.
911
+ * Defines default config for initializing the dialog with stored gam config data
912
912
  */
913
913
  "defaultConfiguration": GamConfigData | undefined;
914
- /**
915
- * If true it displays the component title on the header
916
- */
917
- "displayTitle": false;
918
914
  /**
919
915
  * Callback invoked when the user press repair button
920
916
  */
921
917
  "repairCallback": RepairCallback;
922
918
  /**
923
- * Callback invoked when the user wants to start the exportation process
919
+ * Callback invoked when the user initiates the export process
924
920
  */
925
921
  "saveCallback": SaveCallback;
926
922
  }
@@ -2138,10 +2134,6 @@ export interface GxIdeEntitySelectorCustomEvent<T> extends CustomEvent<T> {
2138
2134
  detail: T;
2139
2135
  target: HTMLGxIdeEntitySelectorElement;
2140
2136
  }
2141
- export interface GxIdeGamInstallationSettingsCustomEvent<T> extends CustomEvent<T> {
2142
- detail: T;
2143
- target: HTMLGxIdeGamInstallationSettingsElement;
2144
- }
2145
2137
  export interface GxIdeKbManagerImportCustomEvent<T> extends CustomEvent<T> {
2146
2138
  detail: T;
2147
2139
  target: HTMLGxIdeKbManagerImportElement;
@@ -2480,18 +2472,7 @@ declare global {
2480
2472
  prototype: HTMLGxIdeEntitySelectorElement;
2481
2473
  new (): HTMLGxIdeEntitySelectorElement;
2482
2474
  };
2483
- interface HTMLGxIdeGamInstallationSettingsElementEventMap {
2484
- "componentDidRenderFirstTime": string;
2485
- }
2486
2475
  interface HTMLGxIdeGamInstallationSettingsElement extends Components.GxIdeGamInstallationSettings, HTMLStencilElement {
2487
- addEventListener<K extends keyof HTMLGxIdeGamInstallationSettingsElementEventMap>(type: K, listener: (this: HTMLGxIdeGamInstallationSettingsElement, ev: GxIdeGamInstallationSettingsCustomEvent<HTMLGxIdeGamInstallationSettingsElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2488
- addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2489
- addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2490
- addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2491
- removeEventListener<K extends keyof HTMLGxIdeGamInstallationSettingsElementEventMap>(type: K, listener: (this: HTMLGxIdeGamInstallationSettingsElement, ev: GxIdeGamInstallationSettingsCustomEvent<HTMLGxIdeGamInstallationSettingsElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2492
- removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2493
- removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2494
- removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2495
2476
  }
2496
2477
  var HTMLGxIdeGamInstallationSettingsElement: {
2497
2478
  prototype: HTMLGxIdeGamInstallationSettingsElement;
@@ -3812,7 +3793,7 @@ declare namespace LocalJSX {
3812
3793
  }
3813
3794
  interface GxIdeGamInstallationSettings {
3814
3795
  /**
3815
- * Property determining 'Panels' checkbox activation. Enabled only if an SD generator is present in the KB. If not, checkbox is disabled
3796
+ * Determines 'Panels' checkbox activation, enabled only if an SD generator is in the KB. Otherwise, the checkbox is disabled.
3816
3797
  */
3817
3798
  "canSelectPanels"?: boolean;
3818
3799
  /**
@@ -3824,23 +3805,15 @@ declare namespace LocalJSX {
3824
3805
  */
3825
3806
  "configurationType"?: "installation" | "update";
3826
3807
  /**
3827
- * Defines the default configuration property. Necessary for initializing the dialogue using stored 'game config data' from the server. If undefined, default values are applied.
3808
+ * Defines default config for initializing the dialog with stored gam config data
3828
3809
  */
3829
3810
  "defaultConfiguration"?: GamConfigData | undefined;
3830
- /**
3831
- * If true it displays the component title on the header
3832
- */
3833
- "displayTitle"?: false;
3834
- /**
3835
- * @description Gets fired when the component has rendered for the first time.
3836
- */
3837
- "onComponentDidRenderFirstTime"?: (event: GxIdeGamInstallationSettingsCustomEvent<string>) => void;
3838
3811
  /**
3839
3812
  * Callback invoked when the user press repair button
3840
3813
  */
3841
3814
  "repairCallback"?: RepairCallback;
3842
3815
  /**
3843
- * Callback invoked when the user wants to start the exportation process
3816
+ * Callback invoked when the user initiates the export process
3844
3817
  */
3845
3818
  "saveCallback"?: SaveCallback;
3846
3819
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genexus/genexus-ide-ui",
3
3
  "license": "Apache-2.0",
4
- "version": "1.0.55",
4
+ "version": "1.0.56",
5
5
  "description": "GeneXus IDE UI components",
6
6
  "main": "dist/index.cjs.js",
7
7
  "module": "dist/index.js",
@@ -1 +0,0 @@
1
- {"version":3,"names":["gamInstallationSettingsCss","GxIdeGamInstallationSettings","this","renderedFirstTime","repairCallbackHandler","async","saveCallback","data","importWebPanels","webPanelsCheckboxEl","checked","importPanels","panelsCheckboxEl","futureUpgrades","futureUpgradesComboEl","value","repairCallback","saveCallbackHandler","cancelCallbackHandler","cancelCallback","renderHeader","h","class","slot","configurationType","type","_componentLocale","header","headerTextInstallation","firstSentence","secondSentence","thirdSentence","headerTextUpdate","renderFilters","filters","filtersHeading","labelPosition","center","label","webPanelsCheckbox","part","ref","el","_a","defaultConfiguration","panelsCheckbox","canSelectPanels","disabled","futureUpgradesComboLabel","disableFilter","manageFutureUpgrades","installAutomatically","promptMe","neverUpdate","componentWillLoad","Locale","getComponentStrings","componentDidRender","componentDidRenderFirstTime","emit","componentName","render","Host","noHeadingPadding","headingPaddingTop","noContentPadding","noContentGap","noAboveFooterPadding","containerTitle","displayTitle","slimmerFooter","config","gxIdeContainer","footer","footerRepairText","footerSaveText","footerCancelText","enableSecurity","onClick","repairButton","cancelButton","no","confirmButton","yes"],"sources":["src/components/gam-installation-settings/gam-installation-settings.scss?tag=gx-ide-gam-installation-settings&encapsulation=shadow","src/components/gam-installation-settings/gam-installation-settings.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n}\n/*Header*/\n.header {\n border-top: 1px solid var(--gx-ide-container-border-color);\n padding: var(--gx-ide-container__padding) var(--gx-ide-container__padding);\n}\n/*Main*/\n.message-checkbox-container {\n padding: 0 var(--gx-ide-container__padding) var(--gx-ide-container__padding)\n var(--gx-ide-container__padding);\n}\n/*Filters*/\n.filters {\n display: grid;\n gap: var(--gx-ide-grid-column-gap);\n padding: var(--gx-ide-container__padding);\n\n &__wrapper {\n display: flex;\n gap: var(--gx-ide-container__padding);\n\n > * {\n flex: 1;\n }\n }\n &__front-end-objects {\n display: flex;\n gap: var(--gx-ide-grid-column-gap);\n }\n}\n.footer-above {\n display: flex;\n gap: var(--gx-ide-container__padding);\n > * {\n flex: 1;\n font-size: var(--mer-font__size--2xs);\n padding: var(--mer-spacing--xs);\n display: flex;\n align-items: center;\n justify-content: center;\n line-height: 1.5em;\n }\n > *:first-child {\n border-inline-end: var(--mer-border__width--sm) solid\n var(--gx-ide-container-border-color);\n }\n &__right {\n display: flex;\n flex-direction: column;\n }\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { config } from \"../../common/config\";\nimport { Locale } from \"../../common/locale\";\n\n@Component({\n tag: \"gx-ide-gam-installation-settings\",\n styleUrl: \"gam-installation-settings.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/gam-installation-settings\"]\n})\nexport class GxIdeGamInstallationSettings {\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeGamInstallationSettingsElement;\n\n private webPanelsCheckboxEl!: HTMLGxgFormCheckboxElement;\n private panelsCheckboxEl!: HTMLGxgFormCheckboxElement;\n private futureUpgradesComboEl!: HTMLGxgComboBoxElement;\n\n // 3.STATE() VARIABLES //\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Specifies the configuration type to be used\n */\n @Prop() readonly configurationType: \"installation\" | \"update\" =\n \"installation\";\n\n /**\n * Callback invoked when the user press repair button\n */\n @Prop() readonly repairCallback: RepairCallback;\n\n /**\n * Callback invoked when the user wants to start the exportation process\n */\n @Prop() readonly saveCallback: SaveCallback;\n\n /**\n * Callback invoked when the user wants to cancel the exportation process\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Defines the default configuration property. Necessary for initializing the dialogue\n * using stored 'game config data' from the server. If undefined, default values are\n * applied.\n */\n @Prop() readonly defaultConfiguration: GamConfigData | undefined = {\n importWebPanels: true,\n importPanels: false,\n futureUpgrades: \"prompt\"\n };\n\n /**\n * Property determining 'Panels' checkbox activation. Enabled only if an SD generator is\n * present in the KB. If not, checkbox is disabled\n */\n @Prop() readonly canSelectPanels: boolean = false;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private repairCallbackHandler = async () => {\n if (this.saveCallback) {\n const data: GamConfigData = {\n importWebPanels: this.webPanelsCheckboxEl.checked,\n importPanels: this.panelsCheckboxEl.checked,\n futureUpgrades: this.futureUpgradesComboEl.value\n ? this.futureUpgradesComboEl.value\n : null\n };\n await this.repairCallback(data);\n }\n };\n\n private saveCallbackHandler = async () => {\n if (this.saveCallback) {\n const data: GamConfigData = {\n importWebPanels: this.webPanelsCheckboxEl.checked,\n importPanels: this.panelsCheckboxEl.checked,\n futureUpgrades: this.futureUpgradesComboEl.value\n ? this.futureUpgradesComboEl.value\n : null\n };\n await this.saveCallback(data);\n }\n };\n private cancelCallbackHandler = () => {\n this.cancelCallback();\n };\n\n /* Renders*/\n private renderHeader = () => {\n return (\n <header class=\"header\" slot=\"header\">\n {this.configurationType === \"installation\"\n ? [\n <gxg-text type=\"text-regular\">\n {\n this._componentLocale.header.headerTextInstallation\n .firstSentence\n }\n </gxg-text>,\n <gxg-text type=\"text-regular\">\n {\n this._componentLocale.header.headerTextInstallation\n .secondSentence\n }\n </gxg-text>,\n <gxg-text type=\"text-regular\">\n {\n this._componentLocale.header.headerTextInstallation\n .thirdSentence\n }\n </gxg-text>\n ]\n : [\n <gxg-text type=\"text-regular\">\n {this._componentLocale.header.headerTextUpdate.firstSentence}\n </gxg-text>,\n <gxg-text type=\"text-regular\">\n {this._componentLocale.header.headerTextUpdate.secondSentence}\n </gxg-text>\n ]}\n {/* header text */}\n </header>\n );\n };\n\n private renderFilters = () => {\n return (\n <div class=\"filters\">\n <gxg-title type=\"title-05\">\n {this._componentLocale.filters.filtersHeading}\n </gxg-title>\n\n <div class=\"filters__wrapper\">\n <div class=\"filters__wrapper-left\">\n <gxg-label labelPosition=\"above\" center={false}>\n Frontend Objects\n </gxg-label>\n <div class=\"filters__front-end-objects\">\n <gxg-form-checkbox\n label={this._componentLocale.filters.webPanelsCheckbox}\n part=\"web-panels-checkbox\"\n slot=\"footer-start\"\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.webPanelsCheckboxEl = el as HTMLGxgFormCheckboxElement)\n }\n checked={this.defaultConfiguration?.importWebPanels}\n ></gxg-form-checkbox>\n <gxg-form-checkbox\n label={this._componentLocale.filters.panelsCheckbox}\n part=\"panels-checkbox\"\n slot=\"footer-start\"\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.panelsCheckboxEl = el as HTMLGxgFormCheckboxElement)\n }\n checked={\n this.defaultConfiguration.importPanels && this.canSelectPanels\n }\n disabled={!this.canSelectPanels}\n ></gxg-form-checkbox>\n </div>\n </div>\n <div class=\"filters__wrapper-right\">\n <gxg-combo-box\n label={this._componentLocale.filters.futureUpgradesComboLabel}\n disableFilter\n part=\"future-upgrades-combo\"\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.futureUpgradesComboEl = el as HTMLGxgComboBoxElement)\n }\n value={this.defaultConfiguration.futureUpgrades}\n >\n <gxg-combo-box-item value=\"automatic\">\n {\n this._componentLocale.manageFutureUpgrades\n .installAutomatically\n }\n </gxg-combo-box-item>\n <gxg-combo-box-item value=\"prompt\">\n {this._componentLocale.manageFutureUpgrades.promptMe}\n </gxg-combo-box-item>\n <gxg-combo-box-item value=\"never\">\n {this._componentLocale.manageFutureUpgrades.neverUpdate}\n </gxg-combo-box-item>\n </gxg-combo-box>\n </div>\n </div>\n </div>\n );\n };\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noHeadingPadding\n headingPaddingTop\n noContentPadding\n noContentGap\n noAboveFooterPadding\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n >\n {this.renderHeader()}\n {this.renderFilters()}\n <div class=\"footer-above\" slot=\"footer-above\">\n {this.configurationType === \"update\" ? (\n <div class=\"footer-above__left\">\n <p>{this._componentLocale.footer.footerRepairText}</p>\n </div>\n ) : null}\n\n <div class=\"footer-above__right\">\n {this.configurationType === \"update\" ? (\n [\n <p>{this._componentLocale.footer.footerSaveText}</p>,\n <p>{this._componentLocale.footer.footerCancelText}</p>\n ]\n ) : (\n // configurationType is \"installation\"\n <p>{this._componentLocale.footer.enableSecurity}</p>\n )}\n </div>\n </div>\n\n {this.configurationType === \"update\" ? (\n <gxg-button\n type=\"outlined\"\n slot=\"footer-start\"\n onClick={this.repairCallbackHandler}\n >\n {this._componentLocale.footer.repairButton}\n </gxg-button>\n ) : null}\n\n <gxg-button\n type=\"outlined\"\n slot=\"footer-end\"\n onClick={this.cancelCallbackHandler}\n >\n {this.configurationType === \"update\"\n ? this._componentLocale.footer.cancelButton\n : this._componentLocale.footer.no}\n </gxg-button>\n <gxg-button slot=\"footer-end\" onClick={this.saveCallbackHandler}>\n {this.configurationType === \"update\"\n ? this._componentLocale.footer.confirmButton\n : this._componentLocale.footer.yes}\n </gxg-button>\n </gx-ide-container>\n </div>\n </Host>\n );\n }\n}\n\nexport type GamConfigData = {\n importWebPanels: boolean;\n importPanels: boolean;\n futureUpgrades: \"never\" | \"prompt\" | \"automatic\";\n};\n\nexport type SaveCallback = (data: GamConfigData) => Promise<void>;\nexport type CancelCallback = () => Promise<void>;\nexport type RepairCallback = (config: GamConfigData) => Promise<void>;\n"],"mappings":"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"}