@genexus/genexus-ide-ui 1.1.6 → 1.1.8
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-deployment-tool.cjs.entry.js +61 -20
- package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js.map +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/gx-ide-team-dev-update.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/deployment-tool/deployment-tool.js +78 -20
- package/dist/collection/components/deployment-tool/deployment-tool.js.map +1 -1
- 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/components/team-dev/update/update.js +1 -1
- package/dist/collection/components/team-dev/update/update.js.map +1 -1
- package/dist/collection/testing/locale.e2e.js +1 -0
- package/dist/collection/testing/locale.e2e.js.map +1 -1
- package/dist/components/gx-ide-deployment-tool.js +62 -20
- package/dist/components/gx-ide-deployment-tool.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/gx-ide-team-dev-update.js +1 -1
- package/dist/components/gx-ide-team-dev-update.js.map +1 -1
- 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-deployment-tool.entry.js +61 -20
- package/dist/esm/gx-ide-deployment-tool.entry.js.map +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/gx-ide-team-dev-update.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
- 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-3085add2.entry.js → p-03dbccde.entry.js} +193 -160
- package/dist/genexus-ide-ui/p-03dbccde.entry.js.map +1 -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-036d005d.entry.js → p-75a5c51f.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-75a5c51f.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/deployment-tool/deployment-tool.d.ts +5 -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 +149 -18
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-036d005d.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-3085add2.entry.js.map +0 -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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-new-version.js","mappings":"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","names":["GxIdeNewVersion"],"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","import { Component, Host, Prop, Element, State, h, Watch } from \"@stencil/core\";\n\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../common/locale\";\nimport { ChCheckboxCustomEvent } from \"@genexus/chameleon-controls-library\";\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];\n\n// ch-checkbox\nconst CHECKED_VALUE = \"on\";\nconst SET_NEW_VERSION_AS_ACTIVE_ID = \"set-new-version-as-active\";\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 @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 * 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<void>;\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 #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 }\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 };\n this.createCallback(newVersionData);\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 ></ch-edit>\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 <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 </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};\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-new-version.js","mappings":"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","names":["GxIdeNewVersion"],"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"],"version":3}
|
|
@@ -1,510 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { g as getIconPath } from './MERCURY_ASSETS.js';
|
|
3
|
-
import { L as Locale } from './locale.js';
|
|
4
|
-
import { d as defineCustomElement$2 } from './ide-loader.js';
|
|
5
|
-
|
|
6
|
-
const ACTIVE_ITEM_DEFAULT_ICON = getIconPath({
|
|
7
|
-
category: "system",
|
|
8
|
-
name: "check-circle",
|
|
9
|
-
colorType: "primary"
|
|
10
|
-
});
|
|
11
|
-
const convertItemsNodeListToFlattenedTreeViewModel = (itemsList, checkboxType) => {
|
|
12
|
-
const itemsListFlattenedTreeViewModel = [];
|
|
13
|
-
const processNode = (item) => {
|
|
14
|
-
var _a;
|
|
15
|
-
const startImgSrc = item.active && !item.iconStart
|
|
16
|
-
? ACTIVE_ITEM_DEFAULT_ICON
|
|
17
|
-
: item.iconStart;
|
|
18
|
-
const leaf = !((_a = item.nodes) === null || _a === void 0 ? void 0 : _a.length);
|
|
19
|
-
const checkbox = checkboxType === "all" ||
|
|
20
|
-
(checkboxType === "custom" && item.checkbox) ||
|
|
21
|
-
(checkboxType === "leaf" && leaf);
|
|
22
|
-
const metaData = JSON.stringify({
|
|
23
|
-
versionType: item.type
|
|
24
|
-
});
|
|
25
|
-
itemsListFlattenedTreeViewModel.push({
|
|
26
|
-
caption: item.name,
|
|
27
|
-
checkbox: checkbox,
|
|
28
|
-
checked: item.checked,
|
|
29
|
-
startImgSrc: startImgSrc,
|
|
30
|
-
endImgSrc: item.iconEnd,
|
|
31
|
-
expanded: item.expanded,
|
|
32
|
-
id: item.id.toString(),
|
|
33
|
-
items: null,
|
|
34
|
-
leaf: leaf,
|
|
35
|
-
metadata: metaData,
|
|
36
|
-
parts: item.parts,
|
|
37
|
-
selected: item.selected
|
|
38
|
-
});
|
|
39
|
-
if (item.nodes) {
|
|
40
|
-
item.nodes.forEach(childNode => processNode(childNode));
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
itemsList.forEach(item => processNode(item));
|
|
44
|
-
return itemsListFlattenedTreeViewModel;
|
|
45
|
-
};
|
|
46
|
-
const convertItemsListToTreeViewModel = (itemsList, checkboxType) => {
|
|
47
|
-
const itemsListTreeViewModel = [];
|
|
48
|
-
itemsList.forEach(item => {
|
|
49
|
-
var _a;
|
|
50
|
-
const startImgSrc = item.active && !item.iconStart
|
|
51
|
-
? ACTIVE_ITEM_DEFAULT_ICON
|
|
52
|
-
: item.iconStart;
|
|
53
|
-
const leaf = !((_a = item.nodes) === null || _a === void 0 ? void 0 : _a.length);
|
|
54
|
-
const checkbox = checkboxType === "all" ||
|
|
55
|
-
(checkboxType === "custom" && item.checkbox) ||
|
|
56
|
-
(checkboxType === "leaf" && leaf);
|
|
57
|
-
const expanded = item.expanded;
|
|
58
|
-
const iconStart = startImgSrc;
|
|
59
|
-
const iconEnd = item.iconEnd;
|
|
60
|
-
const metaData = JSON.stringify({
|
|
61
|
-
versionType: item.type
|
|
62
|
-
});
|
|
63
|
-
const order = parseInt(item.id);
|
|
64
|
-
itemsListTreeViewModel.push({
|
|
65
|
-
caption: item.name,
|
|
66
|
-
checkbox: checkbox,
|
|
67
|
-
checked: item.checked,
|
|
68
|
-
startImgSrc: iconStart,
|
|
69
|
-
endImgSrc: iconEnd,
|
|
70
|
-
expanded: expanded,
|
|
71
|
-
id: item.id.toString(),
|
|
72
|
-
items: !leaf
|
|
73
|
-
? convertItemsListToTreeViewModel(item.nodes, checkboxType)
|
|
74
|
-
: null,
|
|
75
|
-
leaf: leaf,
|
|
76
|
-
metadata: metaData,
|
|
77
|
-
parts: item.parts,
|
|
78
|
-
order: order,
|
|
79
|
-
selected: item.selected
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
return itemsListTreeViewModel;
|
|
83
|
-
};
|
|
84
|
-
const findItemNode = (id, item) => {
|
|
85
|
-
if (item.id === id) {
|
|
86
|
-
return item;
|
|
87
|
-
}
|
|
88
|
-
if (item.nodes) {
|
|
89
|
-
for (const itemNode of item.nodes) {
|
|
90
|
-
const result = findItemNode(id, itemNode);
|
|
91
|
-
if (result) {
|
|
92
|
-
return result;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
return null;
|
|
97
|
-
};
|
|
98
|
-
function findItemInArray(itemsNodes, id) {
|
|
99
|
-
for (const item of itemsNodes) {
|
|
100
|
-
const result = findItemNode(id, item);
|
|
101
|
-
if (result) {
|
|
102
|
-
return result;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
return null;
|
|
106
|
-
}
|
|
107
|
-
const setAllLeafsCheckedFalse = (itemsList) => {
|
|
108
|
-
const uncheck = (itemNode) => {
|
|
109
|
-
var _a;
|
|
110
|
-
itemNode.checked = false;
|
|
111
|
-
if ((_a = itemNode.nodes) === null || _a === void 0 ? void 0 : _a.length) {
|
|
112
|
-
itemNode.nodes.forEach(childNode => uncheck(childNode));
|
|
113
|
-
}
|
|
114
|
-
};
|
|
115
|
-
itemsList.forEach(item => uncheck(item));
|
|
116
|
-
return itemsList;
|
|
117
|
-
};
|
|
118
|
-
const unselectAllNodes = (itemsList) => {
|
|
119
|
-
const unselect = (itemNode) => {
|
|
120
|
-
var _a;
|
|
121
|
-
itemNode.selected = false;
|
|
122
|
-
if ((_a = itemNode.nodes) === null || _a === void 0 ? void 0 : _a.length) {
|
|
123
|
-
itemNode.nodes.forEach(childNode => unselect(childNode));
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
itemsList.forEach(item => unselect(item));
|
|
127
|
-
};
|
|
128
|
-
const checkItems = (itemsList, idsChecked) => {
|
|
129
|
-
setAllLeafsCheckedFalse(itemsList);
|
|
130
|
-
idsChecked.forEach(id => {
|
|
131
|
-
const itemFind = findItemInArray(itemsList, id);
|
|
132
|
-
if (itemFind) {
|
|
133
|
-
itemFind.checked = true;
|
|
134
|
-
}
|
|
135
|
-
});
|
|
136
|
-
return itemsList;
|
|
137
|
-
};
|
|
138
|
-
const expandItems = (itemsList, idsChecked) => {
|
|
139
|
-
idsChecked.forEach(id => {
|
|
140
|
-
const itemFind = findItemInArray(itemsList, id);
|
|
141
|
-
if (itemFind) {
|
|
142
|
-
itemFind.expanded = true;
|
|
143
|
-
}
|
|
144
|
-
});
|
|
145
|
-
return itemsList;
|
|
146
|
-
};
|
|
147
|
-
const selectItems = (itemsList, idsSelected) => {
|
|
148
|
-
idsSelected.forEach(id => {
|
|
149
|
-
const itemFind = findItemInArray(itemsList, id);
|
|
150
|
-
if (itemFind) {
|
|
151
|
-
itemFind.selected = true;
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
|
-
return itemsList;
|
|
155
|
-
};
|
|
156
|
-
function searchInNode(item, id) {
|
|
157
|
-
var _a;
|
|
158
|
-
// If the current node is the searched node, we return an empty list (it has no parents in this branch)
|
|
159
|
-
if (item.id === id) {
|
|
160
|
-
return [];
|
|
161
|
-
}
|
|
162
|
-
// We traverse each child looking for the target node
|
|
163
|
-
if ((_a = item.nodes) === null || _a === void 0 ? void 0 : _a.length) {
|
|
164
|
-
for (const node of item.nodes) {
|
|
165
|
-
const parents = searchInNode(node, id);
|
|
166
|
-
if (parents !== null) {
|
|
167
|
-
// If we find it, we include the current node at the beginning of the path and return
|
|
168
|
-
return [item.id, ...parents];
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
return null;
|
|
173
|
-
}
|
|
174
|
-
const searchParentsItems = (items, ids) => {
|
|
175
|
-
const parents = [];
|
|
176
|
-
for (const id of ids) {
|
|
177
|
-
for (const rootItem of items) {
|
|
178
|
-
const results = searchInNode(rootItem, id);
|
|
179
|
-
if (results !== null) {
|
|
180
|
-
results.forEach(result => {
|
|
181
|
-
parents.push(result);
|
|
182
|
-
});
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
return parents;
|
|
187
|
-
};
|
|
188
|
-
/**
|
|
189
|
-
* Recursively searches for the first node with the active=true property
|
|
190
|
-
* @param nodes Array of nodes to search through
|
|
191
|
-
* @returns An object with caption, iconStart, and path to the first active node found, or null if none is found
|
|
192
|
-
*/
|
|
193
|
-
const findFirstActiveNode = (nodes) => {
|
|
194
|
-
// Helper function that keeps track of the path during recursion
|
|
195
|
-
const findActiveWithPath = (nodeList, currentPath = []) => {
|
|
196
|
-
// Base case: if nodes is undefined or empty
|
|
197
|
-
if (!nodeList || nodeList.length === 0) {
|
|
198
|
-
return null;
|
|
199
|
-
}
|
|
200
|
-
// Iterate through each node in the array
|
|
201
|
-
for (const node of nodeList) {
|
|
202
|
-
// Create a new path that includes the current node
|
|
203
|
-
const nodePath = [...currentPath, node.id];
|
|
204
|
-
// Check if the current node is active
|
|
205
|
-
if (node.active === true) {
|
|
206
|
-
return {
|
|
207
|
-
caption: node.name,
|
|
208
|
-
iconStart: node.iconStart,
|
|
209
|
-
path: nodePath
|
|
210
|
-
};
|
|
211
|
-
}
|
|
212
|
-
// If the node has children, search through them with the updated path
|
|
213
|
-
if (node.nodes && node.nodes.length > 0) {
|
|
214
|
-
const result = findActiveWithPath(node.nodes, nodePath);
|
|
215
|
-
// If we find an active node in this subtree, return it immediately
|
|
216
|
-
if (result !== null) {
|
|
217
|
-
return result;
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
// No active node found in any of the nodes
|
|
222
|
-
return null;
|
|
223
|
-
};
|
|
224
|
-
// Start the search with an empty path
|
|
225
|
-
return findActiveWithPath(nodes);
|
|
226
|
-
};
|
|
227
|
-
|
|
228
|
-
const selectKbItemsCss = ":host{display:grid;block-size:100%;grid-template-rows:max-content 1fr max-content}.header.has-active-item{grid-area:header}.section{display:contents}.header{grid-template-areas:\"view-mode view-mode\" \"pattern-filter active-item\";grid-template-columns:minmax(150px, 350px) max-content;--field-group__column-gap:var(\n --mer-spacing--md\n )}.view-mode__toggle-checkboxes{grid-area:view-mode}.pattern-filter{grid-area:pattern-filter;max-inline-size:350px}.active-item{grid-area:active-item;background-color:var(--mer-surface__elevation--01);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--xs) var(--mer-spacing--sm);display:flex;align-items:center;gap:var(--mer-spacing--xs)}.active-item__icon-container{display:contents}.active-item__icon{pointer-events:none}.active-item__link{text-decoration:underline;color:var(--mer-text__primary);cursor:pointer}.active-item__link:hover{color:var(--mer-text__primary--hover)}.active-item__link:active{color:var(--mer-text__primary--active)}.view-mode__toggle-checkboxes{grid-template-columns:max-content max-content}.field__items-view-type{align-items:center}.field__items-view-type .label{margin-block-start:0 !important}.field__toggle-checkboxes .label{margin-block-start:0 !important}.trees{position:relative}";
|
|
229
|
-
|
|
230
|
-
var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
231
|
-
if (kind === "m")
|
|
232
|
-
throw new TypeError("Private method is not writable");
|
|
233
|
-
if (kind === "a" && !f)
|
|
234
|
-
throw new TypeError("Private accessor was defined without a setter");
|
|
235
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
|
|
236
|
-
throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
237
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
238
|
-
};
|
|
239
|
-
var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
240
|
-
if (kind === "a" && !f)
|
|
241
|
-
throw new TypeError("Private accessor was defined without a getter");
|
|
242
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
|
|
243
|
-
throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
244
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
245
|
-
};
|
|
246
|
-
var _GxIdeSelectKbItems__componentLocale, _GxIdeSelectKbItems_checkedNodesIds, _GxIdeSelectKbItems_chShortcutsEl, _GxIdeSelectKbItems_selectedNodesIds, _GxIdeSelectKbItems_shortcutsSrc, _GxIdeSelectKbItems_updatedModelList, _GxIdeSelectKbItems_viewItemsAsModel, _GxIdeSelectKbItems_treeViewRenderEl, _GxIdeSelectKbItems_cancelHandler, _GxIdeSelectKbItems_checkedItemsChangeHandler, _GxIdeSelectKbItems_confirmHandler, _GxIdeSelectKbItems_contextMenuHandler, _GxIdeSelectKbItems_executeDialogAction, _GxIdeSelectKbItems_patternSearchValueChangedHandler, _GxIdeSelectKbItems_renderActionButtons, _GxIdeSelectKbItems_renderFooter, _GxIdeSelectKbItems_selectedItemsChangeHandler, _GxIdeSelectKbItems_toggleAndSelectNodesInModelItems, _GxIdeSelectKbItems_toggleCheckedNodesInModelItems, _GxIdeSelectKbItems_updateViews, _GxIdeSelectKbItems_viewItemsAsChangedHandler, _GxIdeSelectKbItems_toggleCheckboxesChangedHandler, _GxIdeSelectKbItems_scrollIntoActiveVersionNode;
|
|
247
|
-
const CSS_BUNDLES = [
|
|
248
|
-
"resets/box-sizing",
|
|
249
|
-
"chameleon/scrollbar",
|
|
250
|
-
"components/tooltip",
|
|
251
|
-
"components/tree-view",
|
|
252
|
-
"utils/form--full",
|
|
253
|
-
"utils/layout",
|
|
254
|
-
"utils/spacing",
|
|
255
|
-
"utils/typography"
|
|
256
|
-
];
|
|
257
|
-
const SYSTEM_SEARCH_ICON = getIconPath({
|
|
258
|
-
category: "system",
|
|
259
|
-
name: "search",
|
|
260
|
-
colorType: "on-surface"
|
|
261
|
-
});
|
|
262
|
-
const VIEW_AS_TREE_ID = "tree";
|
|
263
|
-
const VIEW_AS_LIST_ID = "list";
|
|
264
|
-
const TOGGLE_CHECKBOXES_CHECKED_VALUE = "on";
|
|
265
|
-
const GxIdeSelectKbItems$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeSelectKbItems extends HTMLElement {
|
|
266
|
-
constructor() {
|
|
267
|
-
super();
|
|
268
|
-
this.__registerHost();
|
|
269
|
-
this.__attachShadow();
|
|
270
|
-
_GxIdeSelectKbItems__componentLocale.set(this, void 0);
|
|
271
|
-
_GxIdeSelectKbItems_checkedNodesIds.set(this, []);
|
|
272
|
-
_GxIdeSelectKbItems_chShortcutsEl.set(this, void 0);
|
|
273
|
-
_GxIdeSelectKbItems_selectedNodesIds.set(this, []);
|
|
274
|
-
_GxIdeSelectKbItems_shortcutsSrc.set(this, getAssetPath(`./gx-ide-assets/select-kb-items/shortcuts.json`));
|
|
275
|
-
_GxIdeSelectKbItems_updatedModelList.set(this, []);
|
|
276
|
-
_GxIdeSelectKbItems_viewItemsAsModel.set(this, void 0);
|
|
277
|
-
_GxIdeSelectKbItems_treeViewRenderEl.set(this, void 0);
|
|
278
|
-
_GxIdeSelectKbItems_cancelHandler.set(this, () => {
|
|
279
|
-
if (this.cancelCallback) {
|
|
280
|
-
this.cancelCallback();
|
|
281
|
-
}
|
|
282
|
-
});
|
|
283
|
-
_GxIdeSelectKbItems_checkedItemsChangeHandler.set(this, async (e) => {
|
|
284
|
-
const checkedNodesIds = [];
|
|
285
|
-
e.detail.forEach(node => {
|
|
286
|
-
node.item.checked && checkedNodesIds.push(node.item.id);
|
|
287
|
-
});
|
|
288
|
-
__classPrivateFieldSet(this, _GxIdeSelectKbItems_checkedNodesIds, checkedNodesIds, "f");
|
|
289
|
-
__classPrivateFieldSet(this, _GxIdeSelectKbItems_updatedModelList, checkItems(this.itemsList, __classPrivateFieldGet(this, _GxIdeSelectKbItems_checkedNodesIds, "f")), "f");
|
|
290
|
-
if (this.checkedChanged) {
|
|
291
|
-
this.checkedChanged(__classPrivateFieldGet(this, _GxIdeSelectKbItems_checkedNodesIds, "f"));
|
|
292
|
-
}
|
|
293
|
-
});
|
|
294
|
-
_GxIdeSelectKbItems_confirmHandler.set(this, () => {
|
|
295
|
-
if (this.confirmCallback) {
|
|
296
|
-
this.confirmCallback(__classPrivateFieldGet(this, _GxIdeSelectKbItems_checkedNodesIds, "f"));
|
|
297
|
-
}
|
|
298
|
-
});
|
|
299
|
-
_GxIdeSelectKbItems_contextMenuHandler.set(this, async (e) => {
|
|
300
|
-
if (this.itemContextMenuCallback) {
|
|
301
|
-
let info;
|
|
302
|
-
const isSelected = __classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedNodesIds, "f").find(id => id === e.detail.id);
|
|
303
|
-
if (!__classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedNodesIds, "f").length || !isSelected) {
|
|
304
|
-
await __classPrivateFieldGet(this, _GxIdeSelectKbItems_treeViewRenderEl, "f").updateItemsProperties(__classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedNodesIds, "f"), { selected: false });
|
|
305
|
-
await __classPrivateFieldGet(this, _GxIdeSelectKbItems_treeViewRenderEl, "f").updateItemsProperties([e.detail.id], {
|
|
306
|
-
selected: true
|
|
307
|
-
});
|
|
308
|
-
info = {
|
|
309
|
-
clientX: e.detail.contextmenuEvent.clientX,
|
|
310
|
-
clientY: e.detail.contextmenuEvent.clientY,
|
|
311
|
-
selection: [e.detail.id]
|
|
312
|
-
};
|
|
313
|
-
}
|
|
314
|
-
else {
|
|
315
|
-
info = {
|
|
316
|
-
clientX: e.detail.contextmenuEvent.clientX,
|
|
317
|
-
clientY: e.detail.contextmenuEvent.clientY,
|
|
318
|
-
selection: __classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedNodesIds, "f")
|
|
319
|
-
};
|
|
320
|
-
}
|
|
321
|
-
this.itemContextMenuCallback(info);
|
|
322
|
-
}
|
|
323
|
-
});
|
|
324
|
-
_GxIdeSelectKbItems_executeDialogAction.set(this, (callback) => {
|
|
325
|
-
return () => {
|
|
326
|
-
callback(__classPrivateFieldGet(this, _GxIdeSelectKbItems_checkedNodesIds, "f"), __classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedNodesIds, "f"));
|
|
327
|
-
};
|
|
328
|
-
});
|
|
329
|
-
_GxIdeSelectKbItems_patternSearchValueChangedHandler.set(this, (event) => {
|
|
330
|
-
this.searchPatternValue = event.detail.toString();
|
|
331
|
-
});
|
|
332
|
-
_GxIdeSelectKbItems_renderActionButtons.set(this, () => {
|
|
333
|
-
return (h("div", null, this.dialogActions.map(action => {
|
|
334
|
-
return (h("button", { class: "button-tertiary", part: `button button-${action.name}`, onClick: __classPrivateFieldGet(this, _GxIdeSelectKbItems_executeDialogAction, "f").call(this, action.callback), disabled: this.loading }, action.name));
|
|
335
|
-
})));
|
|
336
|
-
});
|
|
337
|
-
_GxIdeSelectKbItems_renderFooter.set(this, () => {
|
|
338
|
-
return (h("footer", { class: "footer control-footer-with-border spacing-body-inline spacing-body-block-end control-footer-space-between" }, __classPrivateFieldGet(this, _GxIdeSelectKbItems_renderActionButtons, "f").call(this), h("div", { class: "buttons-spacer " }, this.cancelCallback && (h("button", { class: "button-secondary", part: "cancel-button", onClick: __classPrivateFieldGet(this, _GxIdeSelectKbItems_cancelHandler, "f") }, __classPrivateFieldGet(this, _GxIdeSelectKbItems__componentLocale, "f").footer.cancel)), this.confirmCallback && (h("button", { class: "button-primary", part: "confirm-button", onClick: __classPrivateFieldGet(this, _GxIdeSelectKbItems_confirmHandler, "f"), disabled: this.loading }, __classPrivateFieldGet(this, _GxIdeSelectKbItems__componentLocale, "f").footer.select)))));
|
|
339
|
-
});
|
|
340
|
-
_GxIdeSelectKbItems_selectedItemsChangeHandler.set(this, (e) => {
|
|
341
|
-
const selectedNodesIds = [];
|
|
342
|
-
unselectAllNodes(this.itemsList);
|
|
343
|
-
e.detail.forEach(node => {
|
|
344
|
-
selectedNodesIds.push(node.item.id);
|
|
345
|
-
});
|
|
346
|
-
__classPrivateFieldSet(this, _GxIdeSelectKbItems_selectedNodesIds, selectedNodesIds, "f");
|
|
347
|
-
if (this.selectionChanged) {
|
|
348
|
-
this.selectionChanged(__classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedNodesIds, "f"));
|
|
349
|
-
}
|
|
350
|
-
__classPrivateFieldSet(this, _GxIdeSelectKbItems_updatedModelList, selectItems(this.itemsList, selectedNodesIds), "f");
|
|
351
|
-
});
|
|
352
|
-
_GxIdeSelectKbItems_toggleAndSelectNodesInModelItems.set(this, async (selectedItemsIds) => {
|
|
353
|
-
const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);
|
|
354
|
-
const newItemsSelected = selectItems(this.itemsList, selectedItemsIds);
|
|
355
|
-
const newItemsExpanded = expandItems(newItemsSelected, nodesToToggle);
|
|
356
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_updateViews, "f").call(this, newItemsExpanded);
|
|
357
|
-
});
|
|
358
|
-
_GxIdeSelectKbItems_toggleCheckedNodesInModelItems.set(this, async (selectedItemsIds) => {
|
|
359
|
-
const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);
|
|
360
|
-
const newItemsExpanded = expandItems(this.itemsList, nodesToToggle);
|
|
361
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_updateViews, "f").call(this, newItemsExpanded);
|
|
362
|
-
});
|
|
363
|
-
_GxIdeSelectKbItems_updateViews.set(this, (newItemsList) => {
|
|
364
|
-
this.nodeVersionsListTreeModel = convertItemsListToTreeViewModel(newItemsList, this.checkboxType);
|
|
365
|
-
this.nodeListFlattenedTreeModel =
|
|
366
|
-
convertItemsNodeListToFlattenedTreeViewModel(newItemsList, this.checkboxType);
|
|
367
|
-
});
|
|
368
|
-
_GxIdeSelectKbItems_viewItemsAsChangedHandler.set(this, async (event) => {
|
|
369
|
-
const selectedViewType = event.detail;
|
|
370
|
-
this.nodesVersionsViewType = selectedViewType;
|
|
371
|
-
if (this.nodesVersionsViewType === "tree") {
|
|
372
|
-
await __classPrivateFieldGet(this, _GxIdeSelectKbItems_toggleAndSelectNodesInModelItems, "f").call(this, __classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedNodesIds, "f"));
|
|
373
|
-
await __classPrivateFieldGet(this, _GxIdeSelectKbItems_toggleCheckedNodesInModelItems, "f").call(this, __classPrivateFieldGet(this, _GxIdeSelectKbItems_checkedNodesIds, "f"));
|
|
374
|
-
}
|
|
375
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_updateViews, "f").call(this, __classPrivateFieldGet(this, _GxIdeSelectKbItems_updatedModelList, "f"));
|
|
376
|
-
});
|
|
377
|
-
_GxIdeSelectKbItems_toggleCheckboxesChangedHandler.set(this, (event) => {
|
|
378
|
-
this.toggleCheckboxes = event.detail === TOGGLE_CHECKBOXES_CHECKED_VALUE;
|
|
379
|
-
});
|
|
380
|
-
_GxIdeSelectKbItems_scrollIntoActiveVersionNode.set(this, () => {
|
|
381
|
-
var _a;
|
|
382
|
-
const doScrollIntoView = __classPrivateFieldGet(this, _GxIdeSelectKbItems_treeViewRenderEl, "f") && ((_a = this.activeItemNode) === null || _a === void 0 ? void 0 : _a.path);
|
|
383
|
-
if (doScrollIntoView) {
|
|
384
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_treeViewRenderEl, "f").scrollIntoVisible(this.activeItemNode.path);
|
|
385
|
-
}
|
|
386
|
-
if (this.activeItemCallback) {
|
|
387
|
-
this.activeItemCallback();
|
|
388
|
-
}
|
|
389
|
-
});
|
|
390
|
-
this.activeItemNode = undefined;
|
|
391
|
-
this.nodeListFlattenedTreeModel = [];
|
|
392
|
-
this.loading = true;
|
|
393
|
-
this.nodesVersionsViewType = "tree";
|
|
394
|
-
this.nodeVersionsListTreeModel = [];
|
|
395
|
-
this.searchPatternValue = null;
|
|
396
|
-
this.toggleCheckboxes = true;
|
|
397
|
-
this.activeItemCallback = undefined;
|
|
398
|
-
this.cancelCallback = undefined;
|
|
399
|
-
this.checkboxType = undefined;
|
|
400
|
-
this.expandOnClick = true;
|
|
401
|
-
this.checkedChanged = undefined;
|
|
402
|
-
this.confirmCallback = undefined;
|
|
403
|
-
this.dialogActions = [];
|
|
404
|
-
this.itemContextMenuCallback = undefined;
|
|
405
|
-
this.itemsList = [];
|
|
406
|
-
this.multiSelection = false;
|
|
407
|
-
this.selectionChanged = undefined;
|
|
408
|
-
}
|
|
409
|
-
watchNodeListHandler(newItemsList) {
|
|
410
|
-
if (newItemsList.length > 0) {
|
|
411
|
-
this.loading = false;
|
|
412
|
-
}
|
|
413
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_updateViews, "f").call(this, newItemsList);
|
|
414
|
-
// Check and update activeItem
|
|
415
|
-
this.activeItemNode = findFirstActiveNode(newItemsList);
|
|
416
|
-
}
|
|
417
|
-
async componentWillLoad() {
|
|
418
|
-
__classPrivateFieldSet(this, _GxIdeSelectKbItems__componentLocale, await Locale.getComponentStrings(this.el), "f");
|
|
419
|
-
__classPrivateFieldSet(this, _GxIdeSelectKbItems_viewItemsAsModel, [
|
|
420
|
-
{ value: VIEW_AS_TREE_ID, caption: __classPrivateFieldGet(this, _GxIdeSelectKbItems__componentLocale, "f").main.tree },
|
|
421
|
-
{ value: VIEW_AS_LIST_ID, caption: "List" }
|
|
422
|
-
], "f");
|
|
423
|
-
this.watchNodeListHandler(this.itemsList);
|
|
424
|
-
}
|
|
425
|
-
/**
|
|
426
|
-
* Suspends or reactivates the shortcuts
|
|
427
|
-
*/
|
|
428
|
-
async suspendShortcuts(suspendShortcuts) {
|
|
429
|
-
if (suspendShortcuts) {
|
|
430
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_chShortcutsEl, "f").suspend = true;
|
|
431
|
-
}
|
|
432
|
-
else {
|
|
433
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_chShortcutsEl, "f").suspend = false;
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
/**
|
|
437
|
-
* Allow to update the selected items
|
|
438
|
-
*/
|
|
439
|
-
async updateSelection(selectedItemsIds) {
|
|
440
|
-
// first clear selected
|
|
441
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_treeViewRenderEl, "f").updateItemsProperties(__classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedNodesIds, "f"), {
|
|
442
|
-
selected: false
|
|
443
|
-
});
|
|
444
|
-
// then select
|
|
445
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_treeViewRenderEl, "f").updateItemsProperties(selectedItemsIds, {
|
|
446
|
-
selected: true
|
|
447
|
-
});
|
|
448
|
-
}
|
|
449
|
-
render() {
|
|
450
|
-
return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-shortcuts", { src: __classPrivateFieldGet(this, _GxIdeSelectKbItems_shortcutsSrc, "f"), ref: (el) => (__classPrivateFieldSet(this, _GxIdeSelectKbItems_chShortcutsEl, el, "f")) }), h("section", { class: "section" }, h("header", { class: "header control-header field-group spacing-body-block-start spacing-body-inline" }, h("div", { class: "field-group view-mode__toggle-checkboxes" }, h("div", { class: "field field-inline field__items-view-type" }, h("label", { class: "label", htmlFor: "view-mode" }, "Select view mode:"), h("ch-radio-group-render", { class: "radio-group", id: "view-mode", model: __classPrivateFieldGet(this, _GxIdeSelectKbItems_viewItemsAsModel, "f"), onChange: __classPrivateFieldGet(this, _GxIdeSelectKbItems_viewItemsAsChangedHandler, "f"), value: __classPrivateFieldGet(this, _GxIdeSelectKbItems_viewItemsAsModel, "f")[0].value })), this.checkboxType !== "none" && (h("div", { class: "field field-inline field__toggle-checkboxes" }, h("label", { class: "label", htmlFor: "toggle-checkboxes" }, "Toggle Checkboxes"), h("ch-checkbox", { class: "checkbox", id: "toggle-checkboxes", checkedValue: TOGGLE_CHECKBOXES_CHECKED_VALUE, value: TOGGLE_CHECKBOXES_CHECKED_VALUE, onInput: __classPrivateFieldGet(this, _GxIdeSelectKbItems_toggleCheckboxesChangedHandler, "f") })))), h("ch-edit", { class: "input pattern-filter", placeholder: __classPrivateFieldGet(this, _GxIdeSelectKbItems__componentLocale, "f").header.searchPatternPlaceholder, startImgSrc: SYSTEM_SEARCH_ICON, onInput: __classPrivateFieldGet(this, _GxIdeSelectKbItems_patternSearchValueChangedHandler, "f") }), this.activeItemNode && (h("div", { class: "active-item" }, h("span", { class: "active-item__icon-container" }, h("ch-image", { class: "icon-md active-item__icon", src: this.activeItemNode.iconStart || ACTIVE_ITEM_DEFAULT_ICON, containerRef: null })), __classPrivateFieldGet(this, _GxIdeSelectKbItems__componentLocale, "f").header.activeItem, h("button", { class: "active-item__link", onClick: __classPrivateFieldGet(this, _GxIdeSelectKbItems_scrollIntoActiveVersionNode, "f") }, this.activeItemNode.caption)))), h("div", { class: "spacing-body-inline-start trees" }, this.loading ? (h("gx-ide-loader", { loaderTitle: __classPrivateFieldGet(this, _GxIdeSelectKbItems__componentLocale, "f").loader.title, show: true })) : (h("ch-tree-view-render", { class: "tree-view", model: this.nodesVersionsViewType === "tree"
|
|
451
|
-
? this.nodeVersionsListTreeModel
|
|
452
|
-
: this.nodeListFlattenedTreeModel, "show-lines": this.nodesVersionsViewType === "tree" ? "all" : "none", expandableButton: this.nodesVersionsViewType === "tree" ? "decorative" : "no", onItemContextmenu: __classPrivateFieldGet(this, _GxIdeSelectKbItems_contextMenuHandler, "f"), onCheckedItemsChange: __classPrivateFieldGet(this, _GxIdeSelectKbItems_checkedItemsChangeHandler, "f"), onSelectedItemsChange: __classPrivateFieldGet(this, _GxIdeSelectKbItems_selectedItemsChangeHandler, "f"), expandOnClick: this.expandOnClick, multiSelection: this.multiSelection, filter: this.searchPatternValue, filterType: "caption", toggleCheckboxes: this.toggleCheckboxes, ref: (el) => {
|
|
453
|
-
__classPrivateFieldSet(this, _GxIdeSelectKbItems_treeViewRenderEl, el, "f");
|
|
454
|
-
} }))), (this.dialogActions.length > 0 ||
|
|
455
|
-
this.cancelCallback ||
|
|
456
|
-
this.confirmCallback) &&
|
|
457
|
-
__classPrivateFieldGet(this, _GxIdeSelectKbItems_renderFooter, "f").call(this))));
|
|
458
|
-
}
|
|
459
|
-
static get assetsDirs() { return ["gx-ide-assets/select-kb-items"]; }
|
|
460
|
-
get el() { return this; }
|
|
461
|
-
static get watchers() { return {
|
|
462
|
-
"itemsList": ["watchNodeListHandler"]
|
|
463
|
-
}; }
|
|
464
|
-
static get style() { return selectKbItemsCss; }
|
|
465
|
-
}, [1, "gx-ide-select-kb-items", {
|
|
466
|
-
"activeItemCallback": [16],
|
|
467
|
-
"cancelCallback": [16],
|
|
468
|
-
"checkboxType": [1, "checkbox-type"],
|
|
469
|
-
"expandOnClick": [4, "expand-on-click"],
|
|
470
|
-
"checkedChanged": [16],
|
|
471
|
-
"confirmCallback": [16],
|
|
472
|
-
"dialogActions": [16],
|
|
473
|
-
"itemContextMenuCallback": [16],
|
|
474
|
-
"itemsList": [16],
|
|
475
|
-
"multiSelection": [4, "multi-selection"],
|
|
476
|
-
"selectionChanged": [16],
|
|
477
|
-
"activeItemNode": [32],
|
|
478
|
-
"nodeListFlattenedTreeModel": [32],
|
|
479
|
-
"loading": [32],
|
|
480
|
-
"nodesVersionsViewType": [32],
|
|
481
|
-
"nodeVersionsListTreeModel": [32],
|
|
482
|
-
"searchPatternValue": [32],
|
|
483
|
-
"toggleCheckboxes": [32],
|
|
484
|
-
"suspendShortcuts": [64],
|
|
485
|
-
"updateSelection": [64]
|
|
486
|
-
}, undefined, {
|
|
487
|
-
"itemsList": ["watchNodeListHandler"]
|
|
488
|
-
}]);
|
|
489
|
-
_GxIdeSelectKbItems__componentLocale = new WeakMap(), _GxIdeSelectKbItems_checkedNodesIds = new WeakMap(), _GxIdeSelectKbItems_chShortcutsEl = new WeakMap(), _GxIdeSelectKbItems_selectedNodesIds = new WeakMap(), _GxIdeSelectKbItems_shortcutsSrc = new WeakMap(), _GxIdeSelectKbItems_updatedModelList = new WeakMap(), _GxIdeSelectKbItems_viewItemsAsModel = new WeakMap(), _GxIdeSelectKbItems_treeViewRenderEl = new WeakMap(), _GxIdeSelectKbItems_cancelHandler = new WeakMap(), _GxIdeSelectKbItems_checkedItemsChangeHandler = new WeakMap(), _GxIdeSelectKbItems_confirmHandler = new WeakMap(), _GxIdeSelectKbItems_contextMenuHandler = new WeakMap(), _GxIdeSelectKbItems_executeDialogAction = new WeakMap(), _GxIdeSelectKbItems_patternSearchValueChangedHandler = new WeakMap(), _GxIdeSelectKbItems_renderActionButtons = new WeakMap(), _GxIdeSelectKbItems_renderFooter = new WeakMap(), _GxIdeSelectKbItems_selectedItemsChangeHandler = new WeakMap(), _GxIdeSelectKbItems_toggleAndSelectNodesInModelItems = new WeakMap(), _GxIdeSelectKbItems_toggleCheckedNodesInModelItems = new WeakMap(), _GxIdeSelectKbItems_updateViews = new WeakMap(), _GxIdeSelectKbItems_viewItemsAsChangedHandler = new WeakMap(), _GxIdeSelectKbItems_toggleCheckboxesChangedHandler = new WeakMap(), _GxIdeSelectKbItems_scrollIntoActiveVersionNode = new WeakMap();
|
|
490
|
-
function defineCustomElement$1() {
|
|
491
|
-
if (typeof customElements === "undefined") {
|
|
492
|
-
return;
|
|
493
|
-
}
|
|
494
|
-
const components = ["gx-ide-select-kb-items", "gx-ide-loader"];
|
|
495
|
-
components.forEach(tagName => { switch (tagName) {
|
|
496
|
-
case "gx-ide-select-kb-items":
|
|
497
|
-
if (!customElements.get(tagName)) {
|
|
498
|
-
customElements.define(tagName, GxIdeSelectKbItems$1);
|
|
499
|
-
}
|
|
500
|
-
break;
|
|
501
|
-
case "gx-ide-loader":
|
|
502
|
-
if (!customElements.get(tagName)) {
|
|
503
|
-
defineCustomElement$2();
|
|
504
|
-
}
|
|
505
|
-
break;
|
|
506
|
-
} });
|
|
507
|
-
}
|
|
1
|
+
import { G as GxIdeSelectKbItems$1, d as defineCustomElement$1 } from './select-kb-items.js';
|
|
508
2
|
|
|
509
3
|
const GxIdeSelectKbItems = GxIdeSelectKbItems$1;
|
|
510
4
|
const defineCustomElement = defineCustomElement$1;
|