@genexus/genexus-ide-ui 3.2.13 → 3.2.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +24 -34
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +12 -12
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js +26 -3
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +78 -45
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/kb-manager-import/helpers.js +2 -9
- package/dist/collection/components/kb-manager-import/helpers.js.map +1 -1
- package/dist/collection/components/kb-manager-import/kb-manager-import.js +10 -3
- package/dist/collection/components/kb-manager-import/kb-manager-import.js.map +1 -1
- package/dist/collection/components/new-environment/gx-ide-assets/new-environment/langs/new-environment.lang.en.json +3 -1
- package/dist/collection/components/new-environment/gx-ide-assets/new-environment/langs/new-environment.lang.ja.json +3 -1
- package/dist/collection/components/new-environment/gx-ide-assets/new-environment/langs/new-environment.lang.zh.json +3 -1
- package/dist/collection/components/new-environment/new-environment.css +29 -0
- package/dist/collection/components/new-environment/new-environment.js +54 -17
- package/dist/collection/components/new-environment/new-environment.js.map +1 -1
- package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +9 -5
- package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +7 -3
- package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.zh.json +9 -5
- package/dist/collection/components/new-kb/new-kb.css +42 -1
- package/dist/collection/components/new-kb/new-kb.js +78 -48
- package/dist/collection/components/new-kb/new-kb.js.map +1 -1
- package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +25 -36
- package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -1
- package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +0 -2
- package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +0 -2
- package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +0 -2
- package/dist/components/gx-ide-create-kb-from-server.js +24 -35
- package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
- package/dist/components/gx-ide-kb-manager-import.js +12 -12
- package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
- package/dist/components/gx-ide-new-environment.js +27 -4
- package/dist/components/gx-ide-new-environment.js.map +1 -1
- package/dist/components/gx-ide-new-kb.js +86 -47
- package/dist/components/gx-ide-new-kb.js.map +1 -1
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js +24 -34
- package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-kb-manager-import.entry.js +12 -12
- package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-environment.entry.js +26 -3
- package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +78 -45
- package/dist/esm/gx-ide-new-kb.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/create-kb-from-server/langs/create-kb-from-server.lang.en.json +0 -2
- package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +0 -2
- package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +0 -2
- package/dist/genexus-ide-ui/gx-ide-assets/new-environment/langs/new-environment.lang.en.json +3 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-environment/langs/new-environment.lang.ja.json +3 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-environment/langs/new-environment.lang.zh.json +3 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +9 -5
- package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +7 -3
- package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.zh.json +9 -5
- package/dist/genexus-ide-ui/{p-cf61384e.entry.js → p-2164c3a8.entry.js} +154 -167
- package/dist/genexus-ide-ui/p-2164c3a8.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-7cd24b82.entry.js → p-806c5dcb.entry.js} +58 -47
- package/dist/genexus-ide-ui/p-806c5dcb.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-5727fce7.entry.js → p-8f4af976.entry.js} +222 -184
- package/dist/genexus-ide-ui/p-8f4af976.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-eeae9dd5.entry.js → p-e3a0b11b.entry.js} +402 -346
- package/dist/genexus-ide-ui/p-e3a0b11b.entry.js.map +1 -0
- package/dist/types/components/kb-manager-import/helpers.d.ts +1 -1
- package/dist/types/components/new-environment/new-environment.d.ts +8 -3
- package/dist/types/components/new-kb/new-kb.d.ts +6 -1
- package/dist/types/components/team-dev/create-kb-from-server/create-kb-from-server.d.ts +0 -1
- package/dist/types/components.d.ts +8 -0
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-5727fce7.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-7cd24b82.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-cf61384e.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-eeae9dd5.entry.js.map +0 -1
package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-kb-from-server.js","sourceRoot":"","sources":["../../../../src/components/team-dev/create-kb-from-server/create-kb-from-server.tsx"],"names":[],"mappings":"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","sourcesContent":["// Stencil\nimport {\n Component,\n Element,\n Fragment,\n getAssetPath,\n h,\n Host,\n Method,\n Prop,\n State\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport {\n ActionListItemActionable,\n ActionListItemModel,\n ActionListItemModelExtended,\n ChActionListRenderCustomEvent,\n ChEditCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { config } from \"../../../common/config\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { KBVersion } from \"../version-control/common/types\";\nimport { mapKbsModelToActionListModel } from \"./helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\nconst INFO_ICON = getIconPath({\n category: \"system\",\n name: \"information\",\n colorType: \"on-surface\"\n});\n\nconst FOLDER_ICON = getIconPath({\n category: \"system\",\n name: \"folder\",\n colorType: \"primary\"\n});\n\nconst LOCATION_MODE_DEFAULT = \"default\";\nconst LOCATION_MODE_CUSTOM = \"custom\";\n\n@Component({\n tag: \"gx-ide-create-kb-from-server\",\n styleUrl: \"create-kb-from-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/create-kb-from-server\"]\n})\nexport class GxIdeCreateKbFromServer {\n #chSearchIcon = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"interactive\"\n });\n\n #showMoreIcon = getIconPath({\n category: \"system\",\n name: \"more-horizontal\",\n colorType: \"interactive\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" },\n { value: \"Select\", caption: \"Select Version\" }\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbsActionListModel: ActionListItemModel[] = [];\n #kbVersions: KBVersion[] = [];\n #chShortcutsEl: HTMLChShortcutsElement;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n #selectedKbId: string;\n #kbNameAlreadyEditedByUser: boolean = false;\n\n #locationModeModel: RadioGroupItemModel[];\n\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n #localKBNameEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n /**\n * The current kbn name value.\n */\n @State() localKbNameInputValue: string = \"\";\n\n /**\n * State to store the loading state of the component\n */\n @State() loading = true;\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * KBs filtered\n */\n @State() kbsFilteredActionListModel: ActionListItemModel[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n @State() locationMode: string = LOCATION_MODE_DEFAULT;\n\n /**\n * Default suggested path to a directory where the KB will be stored/generated.\n */\n @Prop({ mutable: true }) kbLocation: string;\n\n /**\n * Specifies whether the location field (and its folder-picker button) is\n * shown in the header, allowing the user to override the default `kbLocation`\n * path. Independent from `isAdvanced`.\n */\n @Prop() readonly canSetLocation: boolean = false;\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Create KB' button is pressed. Receives the user's parameter selection to create the remote KB locally and ends the dialog.\n */\n @Prop() readonly createKBCallback!: (\n kbInfo: KnowledgeBaseInfo\n ) => Promise<FormSubmitResult>;\n\n /**\n * Callback that must be invoked when invoking the dialog\n */\n @Prop() readonly getGXserverKBsCallback!: (\n data: GXServerConnectionData\n ) => Promise<KBData[]>;\n\n /**\n * Callback that returns a folder path selected by the user.\n */\n @Prop() readonly selectLocationCallback: SelectLocationCallback;\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector. Receives the KB selected by the user, and displays the version selector dialog. Returns a list of versions chosen by the user.\n */\n @Prop() readonly selectKBVersionsCallback: (\n selectedKB: string\n ) => Promise<KBVersion[]>;\n\n async componentDidLoad() {\n await this.#init();\n this.loading = false;\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n\n this.#locationModeModel = [\n {\n value: LOCATION_MODE_DEFAULT,\n caption: this.#_componentLocale.kb.kbLocationDefault\n },\n {\n value: LOCATION_MODE_CUSTOM,\n caption: this.#_componentLocale.kb.kbLocationCustom\n }\n ];\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 #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #locationModeChangeHandler = (event: CustomEvent<string>) => {\n this.locationMode = event.detail as string;\n if (this.locationMode === LOCATION_MODE_DEFAULT) {\n this.kbLocation = \"\";\n }\n };\n\n #selectLocationHandler = async (): Promise<void> => {\n const location = await this.selectLocationCallback();\n if (location) {\n this.kbLocation = location;\n }\n };\n\n #inputKbLocationHandler = (event: ChEditCustomEvent<string> | InputEvent) => {\n this.kbLocation = event.detail as string;\n };\n\n #createHandler = async (): Promise<void> => {\n if (this.versionSelectedType !== \"Select\") {\n this.#kbVersions = [];\n }\n this.createKBCallback({\n selectedKB: this.#selectedKbId,\n versionSelected: this.versionSelectedType,\n localKBName: this.localKbNameInputValue,\n kbLocation:\n this.locationMode === LOCATION_MODE_CUSTOM\n ? this.kbLocation || undefined\n : undefined,\n versionList: this.#kbVersions\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.kbsFilteredActionListModel = this.#kbsActionListModel.filter(\n (item: ActionListItemActionable) =>\n item.caption.toLowerCase().includes(this.filterValue)\n );\n };\n\n #init = async () => {\n await this.getGXserverKBsCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n }).then(result => {\n this.#kbsActionListModel = mapKbsModelToActionListModel(result);\n this.kbsFilteredActionListModel = this.#kbsActionListModel;\n this.filterValue = \"\";\n });\n };\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#localKBNameEl];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #inputLocalKbNameHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.localKbNameInputValue = event.detail as string;\n this.#kbNameAlreadyEditedByUser = true;\n };\n\n #selectedVersionHandler = async () => {\n if (this.selectKBVersionsCallback) {\n await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n if (result?.length) {\n this.#kbVersions = result.map(kbVersion => ({\n id: kbVersion.id,\n name: kbVersion.name\n }));\n\n if (result.length === 1 && this.#kbVersions[0].id === 0) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput =\n this.#_componentLocale.kb.versionsPlaceholder;\n } else if (result.length > 1) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput = `${result.length.toString()} ${\n this.#_componentLocale.kb.versionSelectedFieldValue\n }`;\n } else {\n this.localKbNameInputValue = `${this.#selectedKbId}_${\n this.#kbVersions[0].name\n }`;\n this.versionsValueInput = `${result[0].name} ${\n this.#_componentLocale.kb.oneVersionSelectedFieldValue\n }`;\n }\n }\n });\n }\n };\n\n #selectKbChangeHandler = (\n event: ChActionListRenderCustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const item = event.detail[0]?.item as ActionListItemActionable;\n if (item === undefined) {\n this.enableSelectVersionsButton = false;\n this.#selectedKbId = undefined;\n return;\n }\n this.enableSelectVersionsButton = true;\n this.#selectedKbId = item.id;\n if (this.#kbNameAlreadyEditedByUser) {\n return;\n }\n this.localKbNameInputValue = item.caption;\n if (this.versionSelectedType === \"Select\") {\n this.versionsValueInput = \"\";\n this.#kbVersions = [];\n }\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #sortItems = (model: ActionListItemActionable[]): void => {\n model.sort((a, b) =>\n a.caption\n ?.toLocaleLowerCase()\n .localeCompare(b.caption?.toLocaleLowerCase())\n );\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer dialog-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // create kb button\n class=\"button-primary\"\n onClick={this.enableSelectVersionsButton && this.#createHandler}\n disabled={!this.enableSelectVersionsButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.createKb}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header dialog-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n id=\"change-connection-button\"\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n <section class=\"main field-group spacing-body\">\n {this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n description={this.#_componentLocale.loader.description}\n show\n ></gx-ide-loader>\n ) : (\n <Fragment>\n <ch-edit\n class=\"input search-kbs\"\n id=\"local-kb-name\"\n startImgSrc={this.#chSearchIcon}\n type=\"search\"\n onInput={this.#filterValueChangedHandler}\n placeholder={this.#_componentLocale.kb.searchKbsPlaceholder}\n ></ch-edit>\n {this.#kbsActionListModel.length === 0 ||\n this.kbsFilteredActionListModel.length === 0 ? (\n <div class=\"list-box\">\n <gx-ide-empty-state\n stateIconSrc={INFO_ICON}\n stateTitle={this.#_componentLocale.emptyKBsText}\n isAnimated={true}\n ></gx-ide-empty-state>\n </div>\n ) : (\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n onSelectedItemsChange={this.#selectKbChangeHandler}\n model={this.kbsFilteredActionListModel}\n sortItemsCallback={this.#sortItems}\n ></ch-action-list-render>\n )}\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={(el: HTMLChRadioGroupRenderElement) => {\n this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement;\n if (this.#versionSelectedTypeEl) {\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n }\n }}\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n id=\"select-version-button\"\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-m\"\n disabled={!this.enableSelectVersionsButton}\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"localKbName\">\n {this.#_componentLocale.kb.localKbNameLabel}\n </label>\n <ch-edit\n // local kb name\n class=\"input\"\n id=\"localKbName\"\n value={this.localKbNameInputValue}\n onInput={this.#inputLocalKbNameHandler}\n placeholder={\n this.#_componentLocale.kb.localKbNamePlaceholder\n }\n ref={(el: HTMLChEditElement) => {\n this.#localKBNameEl = el as HTMLChEditElement;\n if (this.#localKBNameEl) {\n this.#initializeValidatableControls();\n }\n }}\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#localKBNameEl)}\n </div>\n\n {this.canSetLocation && (\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"kbLocation\">\n {this.#_componentLocale.kb.kbLocation}\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n id=\"kbLocation\"\n model={this.#locationModeModel}\n value={LOCATION_MODE_DEFAULT}\n onChange={this.#locationModeChangeHandler}\n ></ch-radio-group-render>\n\n {this.locationMode === LOCATION_MODE_CUSTOM && (\n <div class=\"location-custom-wrapper\">\n <div class=\"location-field\">\n <ch-edit\n class=\"input\"\n value={this.kbLocation}\n id=\"kbLocation\"\n onInput={this.#inputKbLocationHandler}\n ></ch-edit>\n </div>\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={\n this.#_componentLocale.kb.selectLocationButton\n }\n title={this.#_componentLocale.kb.selectLocationButton}\n onClick={this.#selectLocationHandler}\n >\n <ch-image\n class=\"icon-m\"\n type=\"mask\"\n src={FOLDER_ICON}\n ></ch-image>\n </button>\n </div>\n )}\n </div>\n )}\n </Fragment>\n )}\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type KnowledgeBaseInfo = {\n selectedKB: string;\n versionSelected: VersionOption;\n localKBName: string;\n kbLocation?: string;\n versionList: KBVersion[];\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type SelectLocationCallback = () => Promise<string>;\n"]}
|
|
1
|
+
{"version":3,"file":"create-kb-from-server.js","sourceRoot":"","sources":["../../../../src/components/team-dev/create-kb-from-server/create-kb-from-server.tsx"],"names":[],"mappings":"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","sourcesContent":["// Stencil\nimport {\n Component,\n Element,\n Fragment,\n getAssetPath,\n h,\n Host,\n Method,\n Prop,\n State\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport {\n ActionListItemActionable,\n ActionListItemModel,\n ActionListItemModelExtended,\n ChActionListRenderCustomEvent,\n ChEditCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { config } from \"../../../common/config\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { KBVersion } from \"../version-control/common/types\";\nimport { mapKbsModelToActionListModel } from \"./helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\nconst INFO_ICON = getIconPath({\n category: \"system\",\n name: \"information\",\n colorType: \"on-surface\"\n});\n\nconst FOLDER_ICON = getIconPath({\n category: \"system\",\n name: \"folder\",\n colorType: \"primary\"\n});\n\n@Component({\n tag: \"gx-ide-create-kb-from-server\",\n styleUrl: \"create-kb-from-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/create-kb-from-server\"]\n})\nexport class GxIdeCreateKbFromServer {\n #chSearchIcon = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"interactive\"\n });\n\n #showMoreIcon = getIconPath({\n category: \"system\",\n name: \"more-horizontal\",\n colorType: \"interactive\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" },\n { value: \"Select\", caption: \"Select Version\" }\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbsActionListModel: ActionListItemModel[] = [];\n #kbVersions: KBVersion[] = [];\n #chShortcutsEl: HTMLChShortcutsElement;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n #selectedKbId: string;\n #kbNameAlreadyEditedByUser: boolean = false;\n\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n #localKBNameEl!: HTMLChEditElement;\n #locationEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n /**\n * The current kbn name value.\n */\n @State() localKbNameInputValue: string = \"\";\n\n /**\n * State to store the loading state of the component\n */\n @State() loading = true;\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * KBs filtered\n */\n @State() kbsFilteredActionListModel: ActionListItemModel[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n /**\n * Default suggested path to a directory where the KB will be stored/generated.\n */\n @Prop({ mutable: true }) kbLocation: string;\n\n /**\n * Specifies whether the location field (and its folder-picker button) is\n * shown in the header, allowing the user to override the default `kbLocation`\n * path. Independent from `isAdvanced`.\n */\n @Prop() readonly canSetLocation: boolean = false;\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Create KB' button is pressed. Receives the user's parameter selection to create the remote KB locally and ends the dialog.\n */\n @Prop() readonly createKBCallback!: (\n kbInfo: KnowledgeBaseInfo\n ) => Promise<FormSubmitResult>;\n\n /**\n * Callback that must be invoked when invoking the dialog\n */\n @Prop() readonly getGXserverKBsCallback!: (\n data: GXServerConnectionData\n ) => Promise<KBData[]>;\n\n /**\n * Callback that returns a folder path selected by the user.\n */\n @Prop() readonly selectLocationCallback: SelectLocationCallback;\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector. Receives the KB selected by the user, and displays the version selector dialog. Returns a list of versions chosen by the user.\n */\n @Prop() readonly selectKBVersionsCallback: (\n selectedKB: string\n ) => Promise<KBVersion[]>;\n\n async componentDidLoad() {\n await this.#init();\n this.loading = false;\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\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 #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #selectLocationHandler = async (event: MouseEvent): Promise<void> => {\n // Capture the button before awaiting. Opening/closing the location picker\n // restores focus to it programmatically, leaving the :focus-visible outline\n // lingering as if it were still active. On a successful selection move focus\n // to the location input (natural next step, keyboard-friendly); otherwise\n // just blur the button so the outline doesn't stay pinned.\n const button = event.currentTarget as HTMLButtonElement;\n const location = await this.selectLocationCallback();\n if (location) {\n this.kbLocation = location;\n this.#locationEl?.focus();\n } else {\n button?.blur();\n }\n };\n\n #inputKbLocationHandler = (event: ChEditCustomEvent<string> | InputEvent) => {\n this.kbLocation = event.detail as string;\n };\n\n #createHandler = async (): Promise<void> => {\n if (this.versionSelectedType !== \"Select\") {\n this.#kbVersions = [];\n }\n this.createKBCallback({\n selectedKB: this.#selectedKbId,\n versionSelected: this.versionSelectedType,\n localKBName: this.localKbNameInputValue,\n kbLocation: this.kbLocation || undefined,\n versionList: this.#kbVersions\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.kbsFilteredActionListModel = this.#kbsActionListModel.filter(\n (item: ActionListItemActionable) =>\n item.caption.toLowerCase().includes(this.filterValue)\n );\n };\n\n #init = async () => {\n await this.getGXserverKBsCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n }).then(result => {\n this.#kbsActionListModel = mapKbsModelToActionListModel(result);\n this.kbsFilteredActionListModel = this.#kbsActionListModel;\n this.filterValue = \"\";\n });\n };\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#localKBNameEl];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #inputLocalKbNameHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.localKbNameInputValue = event.detail as string;\n this.#kbNameAlreadyEditedByUser = true;\n };\n\n #selectedVersionHandler = async () => {\n if (this.selectKBVersionsCallback) {\n await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n if (result?.length) {\n this.#kbVersions = result.map(kbVersion => ({\n id: kbVersion.id,\n name: kbVersion.name\n }));\n\n if (result.length === 1 && this.#kbVersions[0].id === 0) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput =\n this.#_componentLocale.kb.versionsPlaceholder;\n } else if (result.length > 1) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput = `${result.length.toString()} ${\n this.#_componentLocale.kb.versionSelectedFieldValue\n }`;\n } else {\n this.localKbNameInputValue = `${this.#selectedKbId}_${\n this.#kbVersions[0].name\n }`;\n this.versionsValueInput = `${result[0].name} ${\n this.#_componentLocale.kb.oneVersionSelectedFieldValue\n }`;\n }\n }\n });\n }\n };\n\n #selectKbChangeHandler = (\n event: ChActionListRenderCustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const item = event.detail[0]?.item as ActionListItemActionable;\n if (item === undefined) {\n this.enableSelectVersionsButton = false;\n this.#selectedKbId = undefined;\n return;\n }\n this.enableSelectVersionsButton = true;\n this.#selectedKbId = item.id;\n if (this.#kbNameAlreadyEditedByUser) {\n return;\n }\n this.localKbNameInputValue = item.caption;\n if (this.versionSelectedType === \"Select\") {\n this.versionsValueInput = \"\";\n this.#kbVersions = [];\n }\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #sortItems = (model: ActionListItemActionable[]): void => {\n model.sort((a, b) =>\n a.caption\n ?.toLocaleLowerCase()\n .localeCompare(b.caption?.toLocaleLowerCase())\n );\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer dialog-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // create kb button\n class=\"button-primary\"\n onClick={this.enableSelectVersionsButton && this.#createHandler}\n disabled={!this.enableSelectVersionsButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.createKb}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header dialog-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n id=\"change-connection-button\"\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n <section class=\"main field-group spacing-body\">\n {this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n description={this.#_componentLocale.loader.description}\n show\n ></gx-ide-loader>\n ) : (\n <Fragment>\n <ch-edit\n class=\"input search-kbs\"\n id=\"local-kb-name\"\n startImgSrc={this.#chSearchIcon}\n type=\"search\"\n onInput={this.#filterValueChangedHandler}\n placeholder={this.#_componentLocale.kb.searchKbsPlaceholder}\n ></ch-edit>\n {this.#kbsActionListModel.length === 0 ||\n this.kbsFilteredActionListModel.length === 0 ? (\n <div class=\"list-box\">\n <gx-ide-empty-state\n stateIconSrc={INFO_ICON}\n stateTitle={this.#_componentLocale.emptyKBsText}\n isAnimated={true}\n ></gx-ide-empty-state>\n </div>\n ) : (\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n onSelectedItemsChange={this.#selectKbChangeHandler}\n model={this.kbsFilteredActionListModel}\n sortItemsCallback={this.#sortItems}\n ></ch-action-list-render>\n )}\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={(el: HTMLChRadioGroupRenderElement) => {\n this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement;\n if (this.#versionSelectedTypeEl) {\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n }\n }}\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n id=\"select-version-button\"\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-m\"\n disabled={!this.enableSelectVersionsButton}\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"localKbName\">\n {this.#_componentLocale.kb.localKbNameLabel}\n </label>\n <ch-edit\n // local kb name\n class=\"input\"\n id=\"localKbName\"\n value={this.localKbNameInputValue}\n onInput={this.#inputLocalKbNameHandler}\n placeholder={\n this.#_componentLocale.kb.localKbNamePlaceholder\n }\n ref={(el: HTMLChEditElement) => {\n this.#localKBNameEl = el as HTMLChEditElement;\n if (this.#localKBNameEl) {\n this.#initializeValidatableControls();\n }\n }}\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#localKBNameEl)}\n </div>\n\n {this.canSetLocation && (\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"kbLocation\">\n {this.#_componentLocale.kb.kbLocation}\n </label>\n <div class=\"location-custom-wrapper\">\n <div class=\"location-field\">\n <ch-edit\n class=\"input\"\n value={this.kbLocation}\n id=\"kbLocation\"\n onInput={this.#inputKbLocationHandler}\n ref={(el: HTMLChEditElement) =>\n (this.#locationEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={\n this.#_componentLocale.kb.selectLocationButton\n }\n title={this.#_componentLocale.kb.selectLocationButton}\n onClick={this.#selectLocationHandler}\n >\n <ch-image\n class=\"icon-m\"\n type=\"mask\"\n src={FOLDER_ICON}\n ></ch-image>\n </button>\n </div>\n </div>\n )}\n </Fragment>\n )}\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type KnowledgeBaseInfo = {\n selectedKB: string;\n versionSelected: VersionOption;\n localKBName: string;\n kbLocation?: string;\n versionList: KBVersion[];\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type SelectLocationCallback = () => Promise<string>;\n"]}
|
|
@@ -21,8 +21,6 @@
|
|
|
21
21
|
"versionSelectedFieldValue": "versions selected",
|
|
22
22
|
"oneVersionSelectedFieldValue": "version selected",
|
|
23
23
|
"kbLocation": "Location",
|
|
24
|
-
"kbLocationDefault": "Default",
|
|
25
|
-
"kbLocationCustom": "Custom",
|
|
26
24
|
"selectLocationButton": "Select location"
|
|
27
25
|
},
|
|
28
26
|
"footer": {
|
|
@@ -23,6 +23,13 @@ const mapKbsModelToActionListModel = (kbsData) => {
|
|
|
23
23
|
|
|
24
24
|
const createKbFromServerCss = "button.button-secondary{border-color:var(--color-border-neutral-default)}:host{display:grid;block-size:100%;grid-template-rows:max-content 1fr max-content}.section{display:contents}header{display:grid;grid-template-rows:max-content;grid-template-columns:1fr 1fr max-content}.button-change{align-self:center;justify-self:end}.main{display:grid;grid-template-columns:1fr;grid-template-rows:max-content 1fr max-content max-content;position:relative}.search-kbs{inline-size:50%}.versions-container{grid-auto-rows:max-content}.versions-container__input{display:grid;grid-template-columns:1fr max-content;gap:var(--spacing-gap-m)}.location-custom-wrapper{display:flex;align-items:center;gap:var(--spacing-gap-xs);flex-grow:1;min-inline-size:0}.location-field{flex-grow:1;min-inline-size:0}.location-field>.input{inline-size:100%}";
|
|
25
25
|
|
|
26
|
+
var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
27
|
+
if (kind === "a" && !f)
|
|
28
|
+
throw new TypeError("Private accessor was defined without a getter");
|
|
29
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
|
|
30
|
+
throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
31
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
32
|
+
};
|
|
26
33
|
var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
27
34
|
if (kind === "m")
|
|
28
35
|
throw new TypeError("Private method is not writable");
|
|
@@ -32,14 +39,7 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
|
|
|
32
39
|
throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
33
40
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
34
41
|
};
|
|
35
|
-
var
|
|
36
|
-
if (kind === "a" && !f)
|
|
37
|
-
throw new TypeError("Private accessor was defined without a getter");
|
|
38
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
|
|
39
|
-
throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
40
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
41
|
-
};
|
|
42
|
-
var _GxIdeCreateKbFromServer_chSearchIcon, _GxIdeCreateKbFromServer_showMoreIcon, _GxIdeCreateKbFromServer_versionsSelect, _GxIdeCreateKbFromServer__componentLocale, _GxIdeCreateKbFromServer_kbsActionListModel, _GxIdeCreateKbFromServer_kbVersions, _GxIdeCreateKbFromServer_chShortcutsEl, _GxIdeCreateKbFromServer_shortcutsSrc, _GxIdeCreateKbFromServer_selectedKbId, _GxIdeCreateKbFromServer_kbNameAlreadyEditedByUser, _GxIdeCreateKbFromServer_locationModeModel, _GxIdeCreateKbFromServer_versionSelectedTypeEl, _GxIdeCreateKbFromServer_localKBNameEl, _GxIdeCreateKbFromServer_cancelHandler, _GxIdeCreateKbFromServer_changeConnectionHandler, _GxIdeCreateKbFromServer_locationModeChangeHandler, _GxIdeCreateKbFromServer_selectLocationHandler, _GxIdeCreateKbFromServer_inputKbLocationHandler, _GxIdeCreateKbFromServer_createHandler, _GxIdeCreateKbFromServer_evaluateTooltipRender, _GxIdeCreateKbFromServer_filterValueChangedHandler, _GxIdeCreateKbFromServer_init, _GxIdeCreateKbFromServer_initializeValidatableControls, _GxIdeCreateKbFromServer_inputLocalKbNameHandler, _GxIdeCreateKbFromServer_selectedVersionHandler, _GxIdeCreateKbFromServer_selectKbChangeHandler, _GxIdeCreateKbFromServer_versionsChangedHandler, _GxIdeCreateKbFromServer_sortItems, _GxIdeCreateKbFromServer_renderFooter;
|
|
42
|
+
var _GxIdeCreateKbFromServer_chSearchIcon, _GxIdeCreateKbFromServer_showMoreIcon, _GxIdeCreateKbFromServer_versionsSelect, _GxIdeCreateKbFromServer__componentLocale, _GxIdeCreateKbFromServer_kbsActionListModel, _GxIdeCreateKbFromServer_kbVersions, _GxIdeCreateKbFromServer_chShortcutsEl, _GxIdeCreateKbFromServer_shortcutsSrc, _GxIdeCreateKbFromServer_selectedKbId, _GxIdeCreateKbFromServer_kbNameAlreadyEditedByUser, _GxIdeCreateKbFromServer_versionSelectedTypeEl, _GxIdeCreateKbFromServer_localKBNameEl, _GxIdeCreateKbFromServer_locationEl, _GxIdeCreateKbFromServer_cancelHandler, _GxIdeCreateKbFromServer_changeConnectionHandler, _GxIdeCreateKbFromServer_selectLocationHandler, _GxIdeCreateKbFromServer_inputKbLocationHandler, _GxIdeCreateKbFromServer_createHandler, _GxIdeCreateKbFromServer_evaluateTooltipRender, _GxIdeCreateKbFromServer_filterValueChangedHandler, _GxIdeCreateKbFromServer_init, _GxIdeCreateKbFromServer_initializeValidatableControls, _GxIdeCreateKbFromServer_inputLocalKbNameHandler, _GxIdeCreateKbFromServer_selectedVersionHandler, _GxIdeCreateKbFromServer_selectKbChangeHandler, _GxIdeCreateKbFromServer_versionsChangedHandler, _GxIdeCreateKbFromServer_sortItems, _GxIdeCreateKbFromServer_renderFooter;
|
|
43
43
|
const CSS_BUNDLES = [
|
|
44
44
|
"resets/box-sizing",
|
|
45
45
|
"utils/form--full",
|
|
@@ -60,8 +60,6 @@ const FOLDER_ICON = getIconPath({
|
|
|
60
60
|
name: "folder",
|
|
61
61
|
colorType: "primary"
|
|
62
62
|
});
|
|
63
|
-
const LOCATION_MODE_DEFAULT = "default";
|
|
64
|
-
const LOCATION_MODE_CUSTOM = "custom";
|
|
65
63
|
const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCreateKbFromServer extends HTMLElement {
|
|
66
64
|
constructor() {
|
|
67
65
|
super();
|
|
@@ -89,9 +87,9 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
|
|
|
89
87
|
_GxIdeCreateKbFromServer_shortcutsSrc.set(this, getAssetPath(`./gx-ide-assets/create-kb-from-server/shortcuts.json`));
|
|
90
88
|
_GxIdeCreateKbFromServer_selectedKbId.set(this, void 0);
|
|
91
89
|
_GxIdeCreateKbFromServer_kbNameAlreadyEditedByUser.set(this, false);
|
|
92
|
-
_GxIdeCreateKbFromServer_locationModeModel.set(this, void 0);
|
|
93
90
|
_GxIdeCreateKbFromServer_versionSelectedTypeEl.set(this, void 0);
|
|
94
91
|
_GxIdeCreateKbFromServer_localKBNameEl.set(this, void 0);
|
|
92
|
+
_GxIdeCreateKbFromServer_locationEl.set(this, void 0);
|
|
95
93
|
_GxIdeCreateKbFromServer_cancelHandler.set(this, () => {
|
|
96
94
|
this.cancelCallback();
|
|
97
95
|
});
|
|
@@ -103,16 +101,21 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
|
|
|
103
101
|
userPassword: this.connectionData.userPassword
|
|
104
102
|
});
|
|
105
103
|
});
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
104
|
+
_GxIdeCreateKbFromServer_selectLocationHandler.set(this, async (event) => {
|
|
105
|
+
var _a;
|
|
106
|
+
// Capture the button before awaiting. Opening/closing the location picker
|
|
107
|
+
// restores focus to it programmatically, leaving the :focus-visible outline
|
|
108
|
+
// lingering as if it were still active. On a successful selection move focus
|
|
109
|
+
// to the location input (natural next step, keyboard-friendly); otherwise
|
|
110
|
+
// just blur the button so the outline doesn't stay pinned.
|
|
111
|
+
const button = event.currentTarget;
|
|
113
112
|
const location = await this.selectLocationCallback();
|
|
114
113
|
if (location) {
|
|
115
114
|
this.kbLocation = location;
|
|
115
|
+
(_a = __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_locationEl, "f")) === null || _a === void 0 ? void 0 : _a.focus();
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
button === null || button === void 0 ? void 0 : button.blur();
|
|
116
119
|
}
|
|
117
120
|
});
|
|
118
121
|
_GxIdeCreateKbFromServer_inputKbLocationHandler.set(this, (event) => {
|
|
@@ -126,9 +129,7 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
|
|
|
126
129
|
selectedKB: __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_selectedKbId, "f"),
|
|
127
130
|
versionSelected: this.versionSelectedType,
|
|
128
131
|
localKBName: this.localKbNameInputValue,
|
|
129
|
-
kbLocation: this.
|
|
130
|
-
? this.kbLocation || undefined
|
|
131
|
-
: undefined,
|
|
132
|
+
kbLocation: this.kbLocation || undefined,
|
|
132
133
|
versionList: __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_kbVersions, "f")
|
|
133
134
|
}).then((formSubmitResult) => {
|
|
134
135
|
this.validatableControls = validateControls(formSubmitResult, this.validatableControls);
|
|
@@ -244,7 +245,6 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
|
|
|
244
245
|
this.validatableControls = new Map();
|
|
245
246
|
this.versionSelectedType = undefined;
|
|
246
247
|
this.versionsValueInput = "";
|
|
247
|
-
this.locationMode = LOCATION_MODE_DEFAULT;
|
|
248
248
|
this.kbLocation = undefined;
|
|
249
249
|
this.canSetLocation = false;
|
|
250
250
|
this.connectionData = undefined;
|
|
@@ -261,16 +261,6 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
|
|
|
261
261
|
}
|
|
262
262
|
async componentWillLoad() {
|
|
263
263
|
__classPrivateFieldSet(this, _GxIdeCreateKbFromServer__componentLocale, await Locale.getComponentStrings(this.el), "f");
|
|
264
|
-
__classPrivateFieldSet(this, _GxIdeCreateKbFromServer_locationModeModel, [
|
|
265
|
-
{
|
|
266
|
-
value: LOCATION_MODE_DEFAULT,
|
|
267
|
-
caption: __classPrivateFieldGet(this, _GxIdeCreateKbFromServer__componentLocale, "f").kb.kbLocationDefault
|
|
268
|
-
},
|
|
269
|
-
{
|
|
270
|
-
value: LOCATION_MODE_CUSTOM,
|
|
271
|
-
caption: __classPrivateFieldGet(this, _GxIdeCreateKbFromServer__componentLocale, "f").kb.kbLocationCustom
|
|
272
|
-
}
|
|
273
|
-
], "f");
|
|
274
264
|
}
|
|
275
265
|
/**
|
|
276
266
|
* Suspends or reactivates the shortcuts
|
|
@@ -302,7 +292,7 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
|
|
|
302
292
|
__classPrivateFieldGet(this, _GxIdeCreateKbFromServer_initializeValidatableControls, "f").call(this);
|
|
303
293
|
}
|
|
304
294
|
}
|
|
305
|
-
}), __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_localKBNameEl, "f"))), this.canSetLocation && (h("div", { class: "field field-block" }, h("label", { class: "label", htmlFor: "kbLocation" }, __classPrivateFieldGet(this, _GxIdeCreateKbFromServer__componentLocale, "f").kb.kbLocation), h("
|
|
295
|
+
}), __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_localKBNameEl, "f"))), this.canSetLocation && (h("div", { class: "field field-block" }, h("label", { class: "label", htmlFor: "kbLocation" }, __classPrivateFieldGet(this, _GxIdeCreateKbFromServer__componentLocale, "f").kb.kbLocation), h("div", { class: "location-custom-wrapper" }, h("div", { class: "location-field" }, h("ch-edit", { class: "input", value: this.kbLocation, id: "kbLocation", onInput: __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_inputKbLocationHandler, "f"), ref: (el) => (__classPrivateFieldSet(this, _GxIdeCreateKbFromServer_locationEl, el, "f")) })), h("button", { class: "button-tertiary button-icon-only", "aria-label": __classPrivateFieldGet(this, _GxIdeCreateKbFromServer__componentLocale, "f").kb.selectLocationButton, title: __classPrivateFieldGet(this, _GxIdeCreateKbFromServer__componentLocale, "f").kb.selectLocationButton, onClick: __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_selectLocationHandler, "f") }, h("ch-image", { class: "icon-m", type: "mask", src: FOLDER_ICON })))))))), __classPrivateFieldGet(this, _GxIdeCreateKbFromServer_renderFooter, "f").call(this))));
|
|
306
296
|
}
|
|
307
297
|
static get assetsDirs() { return ["gx-ide-assets/create-kb-from-server"]; }
|
|
308
298
|
get el() { return this; }
|
|
@@ -325,10 +315,9 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
|
|
|
325
315
|
"validatableControls": [32],
|
|
326
316
|
"versionSelectedType": [32],
|
|
327
317
|
"versionsValueInput": [32],
|
|
328
|
-
"locationMode": [32],
|
|
329
318
|
"suspendShortcuts": [64]
|
|
330
319
|
}]);
|
|
331
|
-
_GxIdeCreateKbFromServer_chSearchIcon = new WeakMap(), _GxIdeCreateKbFromServer_showMoreIcon = new WeakMap(), _GxIdeCreateKbFromServer_versionsSelect = new WeakMap(), _GxIdeCreateKbFromServer__componentLocale = new WeakMap(), _GxIdeCreateKbFromServer_kbsActionListModel = new WeakMap(), _GxIdeCreateKbFromServer_kbVersions = new WeakMap(), _GxIdeCreateKbFromServer_chShortcutsEl = new WeakMap(), _GxIdeCreateKbFromServer_shortcutsSrc = new WeakMap(), _GxIdeCreateKbFromServer_selectedKbId = new WeakMap(), _GxIdeCreateKbFromServer_kbNameAlreadyEditedByUser = new WeakMap(),
|
|
320
|
+
_GxIdeCreateKbFromServer_chSearchIcon = new WeakMap(), _GxIdeCreateKbFromServer_showMoreIcon = new WeakMap(), _GxIdeCreateKbFromServer_versionsSelect = new WeakMap(), _GxIdeCreateKbFromServer__componentLocale = new WeakMap(), _GxIdeCreateKbFromServer_kbsActionListModel = new WeakMap(), _GxIdeCreateKbFromServer_kbVersions = new WeakMap(), _GxIdeCreateKbFromServer_chShortcutsEl = new WeakMap(), _GxIdeCreateKbFromServer_shortcutsSrc = new WeakMap(), _GxIdeCreateKbFromServer_selectedKbId = new WeakMap(), _GxIdeCreateKbFromServer_kbNameAlreadyEditedByUser = new WeakMap(), _GxIdeCreateKbFromServer_versionSelectedTypeEl = new WeakMap(), _GxIdeCreateKbFromServer_localKBNameEl = new WeakMap(), _GxIdeCreateKbFromServer_locationEl = new WeakMap(), _GxIdeCreateKbFromServer_cancelHandler = new WeakMap(), _GxIdeCreateKbFromServer_changeConnectionHandler = new WeakMap(), _GxIdeCreateKbFromServer_selectLocationHandler = new WeakMap(), _GxIdeCreateKbFromServer_inputKbLocationHandler = new WeakMap(), _GxIdeCreateKbFromServer_createHandler = new WeakMap(), _GxIdeCreateKbFromServer_evaluateTooltipRender = new WeakMap(), _GxIdeCreateKbFromServer_filterValueChangedHandler = new WeakMap(), _GxIdeCreateKbFromServer_init = new WeakMap(), _GxIdeCreateKbFromServer_initializeValidatableControls = new WeakMap(), _GxIdeCreateKbFromServer_inputLocalKbNameHandler = new WeakMap(), _GxIdeCreateKbFromServer_selectedVersionHandler = new WeakMap(), _GxIdeCreateKbFromServer_selectKbChangeHandler = new WeakMap(), _GxIdeCreateKbFromServer_versionsChangedHandler = new WeakMap(), _GxIdeCreateKbFromServer_sortItems = new WeakMap(), _GxIdeCreateKbFromServer_renderFooter = new WeakMap();
|
|
332
321
|
function defineCustomElement$1() {
|
|
333
322
|
if (typeof customElements === "undefined") {
|
|
334
323
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-create-kb-from-server.js","mappings":"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","names":["GxIdeCreateKbFromServer"],"sources":["src/components/team-dev/create-kb-from-server/helpers.ts","src/components/team-dev/create-kb-from-server/create-kb-from-server.scss?tag=gx-ide-create-kb-from-server&encapsulation=shadow","src/components/team-dev/create-kb-from-server/create-kb-from-server.tsx"],"sourcesContent":["import { ActionListItemModel } from \"@genexus/chameleon-controls-library\";\nimport { KBData } from \"./create-kb-from-server\";\n\nexport const mapKbsModelToActionListModel = (\n kbsData: KBData[]\n): ActionListItemModel[] => {\n const listBoxItems: ActionListItemModel[] = [];\n kbsData.forEach(kb => {\n listBoxItems.push({\n id: kb.id,\n type: \"actionable\",\n caption: kb.name\n });\n });\n return listBoxItems;\n};\n","@import \"../../../global/temporary-mercury-overrides/_button.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// - - - - - - - - - - -\n// Header\n// - - - - - - - - - - -\n\nheader {\n display: grid;\n grid-template-rows: max-content;\n grid-template-columns: 1fr 1fr max-content;\n}\n\n.button-change {\n align-self: center;\n justify-self: end;\n}\n\n// - - - - - - - - - - -\n// Main\n// - - - - - - - - - - -\n\n.main {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: max-content 1fr max-content max-content;\n position: relative;\n}\n\n.search-kbs {\n inline-size: 50%;\n}\n\n.versions-container {\n grid-auto-rows: max-content;\n\n &__input {\n display: grid;\n grid-template-columns: 1fr max-content;\n gap: var(--spacing-gap-m);\n }\n}\n\n.location-custom-wrapper {\n display: flex;\n align-items: center;\n gap: var(--spacing-gap-xs);\n flex-grow: 1;\n min-inline-size: 0;\n}\n\n.location-field {\n flex-grow: 1;\n min-inline-size: 0;\n\n > .input {\n inline-size: 100%;\n }\n}\n","// Stencil\nimport {\n Component,\n Element,\n Fragment,\n getAssetPath,\n h,\n Host,\n Method,\n Prop,\n State\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport {\n ActionListItemActionable,\n ActionListItemModel,\n ActionListItemModelExtended,\n ChActionListRenderCustomEvent,\n ChEditCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { config } from \"../../../common/config\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { KBVersion } from \"../version-control/common/types\";\nimport { mapKbsModelToActionListModel } from \"./helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\nconst INFO_ICON = getIconPath({\n category: \"system\",\n name: \"information\",\n colorType: \"on-surface\"\n});\n\nconst FOLDER_ICON = getIconPath({\n category: \"system\",\n name: \"folder\",\n colorType: \"primary\"\n});\n\nconst LOCATION_MODE_DEFAULT = \"default\";\nconst LOCATION_MODE_CUSTOM = \"custom\";\n\n@Component({\n tag: \"gx-ide-create-kb-from-server\",\n styleUrl: \"create-kb-from-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/create-kb-from-server\"]\n})\nexport class GxIdeCreateKbFromServer {\n #chSearchIcon = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"interactive\"\n });\n\n #showMoreIcon = getIconPath({\n category: \"system\",\n name: \"more-horizontal\",\n colorType: \"interactive\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" },\n { value: \"Select\", caption: \"Select Version\" }\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbsActionListModel: ActionListItemModel[] = [];\n #kbVersions: KBVersion[] = [];\n #chShortcutsEl: HTMLChShortcutsElement;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n #selectedKbId: string;\n #kbNameAlreadyEditedByUser: boolean = false;\n\n #locationModeModel: RadioGroupItemModel[];\n\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n #localKBNameEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n /**\n * The current kbn name value.\n */\n @State() localKbNameInputValue: string = \"\";\n\n /**\n * State to store the loading state of the component\n */\n @State() loading = true;\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * KBs filtered\n */\n @State() kbsFilteredActionListModel: ActionListItemModel[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n @State() locationMode: string = LOCATION_MODE_DEFAULT;\n\n /**\n * Default suggested path to a directory where the KB will be stored/generated.\n */\n @Prop({ mutable: true }) kbLocation: string;\n\n /**\n * Specifies whether the location field (and its folder-picker button) is\n * shown in the header, allowing the user to override the default `kbLocation`\n * path. Independent from `isAdvanced`.\n */\n @Prop() readonly canSetLocation: boolean = false;\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Create KB' button is pressed. Receives the user's parameter selection to create the remote KB locally and ends the dialog.\n */\n @Prop() readonly createKBCallback!: (\n kbInfo: KnowledgeBaseInfo\n ) => Promise<FormSubmitResult>;\n\n /**\n * Callback that must be invoked when invoking the dialog\n */\n @Prop() readonly getGXserverKBsCallback!: (\n data: GXServerConnectionData\n ) => Promise<KBData[]>;\n\n /**\n * Callback that returns a folder path selected by the user.\n */\n @Prop() readonly selectLocationCallback: SelectLocationCallback;\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector. Receives the KB selected by the user, and displays the version selector dialog. Returns a list of versions chosen by the user.\n */\n @Prop() readonly selectKBVersionsCallback: (\n selectedKB: string\n ) => Promise<KBVersion[]>;\n\n async componentDidLoad() {\n await this.#init();\n this.loading = false;\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n\n this.#locationModeModel = [\n {\n value: LOCATION_MODE_DEFAULT,\n caption: this.#_componentLocale.kb.kbLocationDefault\n },\n {\n value: LOCATION_MODE_CUSTOM,\n caption: this.#_componentLocale.kb.kbLocationCustom\n }\n ];\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 #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #locationModeChangeHandler = (event: CustomEvent<string>) => {\n this.locationMode = event.detail as string;\n if (this.locationMode === LOCATION_MODE_DEFAULT) {\n this.kbLocation = \"\";\n }\n };\n\n #selectLocationHandler = async (): Promise<void> => {\n const location = await this.selectLocationCallback();\n if (location) {\n this.kbLocation = location;\n }\n };\n\n #inputKbLocationHandler = (event: ChEditCustomEvent<string> | InputEvent) => {\n this.kbLocation = event.detail as string;\n };\n\n #createHandler = async (): Promise<void> => {\n if (this.versionSelectedType !== \"Select\") {\n this.#kbVersions = [];\n }\n this.createKBCallback({\n selectedKB: this.#selectedKbId,\n versionSelected: this.versionSelectedType,\n localKBName: this.localKbNameInputValue,\n kbLocation:\n this.locationMode === LOCATION_MODE_CUSTOM\n ? this.kbLocation || undefined\n : undefined,\n versionList: this.#kbVersions\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.kbsFilteredActionListModel = this.#kbsActionListModel.filter(\n (item: ActionListItemActionable) =>\n item.caption.toLowerCase().includes(this.filterValue)\n );\n };\n\n #init = async () => {\n await this.getGXserverKBsCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n }).then(result => {\n this.#kbsActionListModel = mapKbsModelToActionListModel(result);\n this.kbsFilteredActionListModel = this.#kbsActionListModel;\n this.filterValue = \"\";\n });\n };\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#localKBNameEl];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #inputLocalKbNameHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.localKbNameInputValue = event.detail as string;\n this.#kbNameAlreadyEditedByUser = true;\n };\n\n #selectedVersionHandler = async () => {\n if (this.selectKBVersionsCallback) {\n await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n if (result?.length) {\n this.#kbVersions = result.map(kbVersion => ({\n id: kbVersion.id,\n name: kbVersion.name\n }));\n\n if (result.length === 1 && this.#kbVersions[0].id === 0) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput =\n this.#_componentLocale.kb.versionsPlaceholder;\n } else if (result.length > 1) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput = `${result.length.toString()} ${\n this.#_componentLocale.kb.versionSelectedFieldValue\n }`;\n } else {\n this.localKbNameInputValue = `${this.#selectedKbId}_${\n this.#kbVersions[0].name\n }`;\n this.versionsValueInput = `${result[0].name} ${\n this.#_componentLocale.kb.oneVersionSelectedFieldValue\n }`;\n }\n }\n });\n }\n };\n\n #selectKbChangeHandler = (\n event: ChActionListRenderCustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const item = event.detail[0]?.item as ActionListItemActionable;\n if (item === undefined) {\n this.enableSelectVersionsButton = false;\n this.#selectedKbId = undefined;\n return;\n }\n this.enableSelectVersionsButton = true;\n this.#selectedKbId = item.id;\n if (this.#kbNameAlreadyEditedByUser) {\n return;\n }\n this.localKbNameInputValue = item.caption;\n if (this.versionSelectedType === \"Select\") {\n this.versionsValueInput = \"\";\n this.#kbVersions = [];\n }\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #sortItems = (model: ActionListItemActionable[]): void => {\n model.sort((a, b) =>\n a.caption\n ?.toLocaleLowerCase()\n .localeCompare(b.caption?.toLocaleLowerCase())\n );\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer dialog-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // create kb button\n class=\"button-primary\"\n onClick={this.enableSelectVersionsButton && this.#createHandler}\n disabled={!this.enableSelectVersionsButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.createKb}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header dialog-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n id=\"change-connection-button\"\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n <section class=\"main field-group spacing-body\">\n {this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n description={this.#_componentLocale.loader.description}\n show\n ></gx-ide-loader>\n ) : (\n <Fragment>\n <ch-edit\n class=\"input search-kbs\"\n id=\"local-kb-name\"\n startImgSrc={this.#chSearchIcon}\n type=\"search\"\n onInput={this.#filterValueChangedHandler}\n placeholder={this.#_componentLocale.kb.searchKbsPlaceholder}\n ></ch-edit>\n {this.#kbsActionListModel.length === 0 ||\n this.kbsFilteredActionListModel.length === 0 ? (\n <div class=\"list-box\">\n <gx-ide-empty-state\n stateIconSrc={INFO_ICON}\n stateTitle={this.#_componentLocale.emptyKBsText}\n isAnimated={true}\n ></gx-ide-empty-state>\n </div>\n ) : (\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n onSelectedItemsChange={this.#selectKbChangeHandler}\n model={this.kbsFilteredActionListModel}\n sortItemsCallback={this.#sortItems}\n ></ch-action-list-render>\n )}\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={(el: HTMLChRadioGroupRenderElement) => {\n this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement;\n if (this.#versionSelectedTypeEl) {\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n }\n }}\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n id=\"select-version-button\"\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-m\"\n disabled={!this.enableSelectVersionsButton}\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"localKbName\">\n {this.#_componentLocale.kb.localKbNameLabel}\n </label>\n <ch-edit\n // local kb name\n class=\"input\"\n id=\"localKbName\"\n value={this.localKbNameInputValue}\n onInput={this.#inputLocalKbNameHandler}\n placeholder={\n this.#_componentLocale.kb.localKbNamePlaceholder\n }\n ref={(el: HTMLChEditElement) => {\n this.#localKBNameEl = el as HTMLChEditElement;\n if (this.#localKBNameEl) {\n this.#initializeValidatableControls();\n }\n }}\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#localKBNameEl)}\n </div>\n\n {this.canSetLocation && (\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"kbLocation\">\n {this.#_componentLocale.kb.kbLocation}\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n id=\"kbLocation\"\n model={this.#locationModeModel}\n value={LOCATION_MODE_DEFAULT}\n onChange={this.#locationModeChangeHandler}\n ></ch-radio-group-render>\n\n {this.locationMode === LOCATION_MODE_CUSTOM && (\n <div class=\"location-custom-wrapper\">\n <div class=\"location-field\">\n <ch-edit\n class=\"input\"\n value={this.kbLocation}\n id=\"kbLocation\"\n onInput={this.#inputKbLocationHandler}\n ></ch-edit>\n </div>\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={\n this.#_componentLocale.kb.selectLocationButton\n }\n title={this.#_componentLocale.kb.selectLocationButton}\n onClick={this.#selectLocationHandler}\n >\n <ch-image\n class=\"icon-m\"\n type=\"mask\"\n src={FOLDER_ICON}\n ></ch-image>\n </button>\n </div>\n )}\n </div>\n )}\n </Fragment>\n )}\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type KnowledgeBaseInfo = {\n selectedKB: string;\n versionSelected: VersionOption;\n localKBName: string;\n kbLocation?: string;\n versionList: KBVersion[];\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type SelectLocationCallback = () => Promise<string>;\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-create-kb-from-server.js","mappings":";;;;;;;;;;;AAGO,MAAM,4BAA4B,GAAG,CAC1C,OAAiB;IAEjB,MAAM,YAAY,GAA0B,EAAE,CAAC;IAC/C,OAAO,CAAC,OAAO,CAAC,EAAE;QAChB,YAAY,CAAC,IAAI,CAAC;YAChB,EAAE,EAAE,EAAE,CAAC,EAAE;YACT,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,EAAE,CAAC,IAAI;SACjB,CAAC,CAAC;KACJ,CAAC,CAAC;IACH,OAAO,YAAY,CAAC;AACtB,CAAC;;ACfD,MAAM,qBAAqB,GAAG,yzBAAyzB;;;;;;;;;;;;;;;;;;;ACoCv1B,MAAM,WAAW,GAAmB;IAClC,mBAAmB;IACnB,kBAAkB;IAClB,cAAc;IACd,kBAAkB;IAClB,eAAe;IACf,qBAAqB;IACrB,oBAAoB;IACpB,qBAAqB;CACtB,CAAC;AAEF,MAAM,SAAS,GAAG,WAAW,CAAC;IAC5B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,aAAa;IACnB,SAAS,EAAE,YAAY;CACxB,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,WAAW,CAAC;IAC9B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,QAAQ;IACd,SAAS,EAAE,SAAS;CACrB,CAAC,CAAC;MAQUA,yBAAuB;;;;;QAClC,gDAAgB,WAAW,CAAC;YAC1B,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,aAAa;SACzB,CAAC,EAAC;QAEH,gDAAgB,WAAW,CAAC;YAC1B,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,iBAAiB;YACvB,SAAS,EAAE,aAAa;SACzB,CAAC,EAAC;QAEH,kDAAyC;YACvC,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE;YAC5C,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE;YACzC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE;SAC/C,EAAC;QAIF,4DAAuB;QACvB,sDAA6C,EAAE,EAAC;QAChD,8CAA2B,EAAE,EAAC;QAC9B,yDAAuC;QACvC,gDAAgB,YAAY,CAC1B,sDAAsD,CACvD,EAAC;QACF,wDAAsB;QACtB,6DAAsC,KAAK,EAAC;QAE5C,iEAAsD;QAItD,yDAAmC;QACnC,sDAAgC;QAmHhC,iDAAiB;YACf,IAAI,CAAC,cAAc,EAAE,CAAC;SACvB,EAAC;QAEF,2DAA2B;YACzB,IAAI,CAAC,wBAAwB,CAAC;gBAC5B,kBAAkB,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB;gBAC1D,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS;gBACxC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ;gBACtC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY;aAC/C,CAAC,CAAC;SACJ,EAAC;QAEF,yDAAyB,OAAO,KAAiB;;;;;;;YAM/C,MAAM,MAAM,GAAG,KAAK,CAAC,aAAkC,CAAC;YACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACrD,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;gBAC3B,MAAA,uBAAA,IAAI,2CAAY,0CAAE,KAAK,EAAE,CAAC;aAC3B;iBAAM;gBACL,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE,CAAC;aAChB;SACF,EAAC;QAEF,0DAA0B,CAAC,KAA6C;YACtE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,MAAgB,CAAC;SAC1C,EAAC;QAEF,iDAAiB;YACf,IAAI,IAAI,CAAC,mBAAmB,KAAK,QAAQ,EAAE;gBACzC,uBAAA,IAAI,uCAAe,EAAE,MAAA,CAAC;aACvB;YACD,IAAI,CAAC,gBAAgB,CAAC;gBACpB,UAAU,EAAE,uBAAA,IAAI,6CAAc;gBAC9B,eAAe,EAAE,IAAI,CAAC,mBAAmB;gBACzC,WAAW,EAAE,IAAI,CAAC,qBAAqB;gBACvC,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;gBACxC,WAAW,EAAE,uBAAA,IAAI,2CAAY;aAC9B,CAAC,CAAC,IAAI,CAAC,CAAC,gBAAkC;gBACzC,IAAI,CAAC,mBAAmB,GAAG,gBAAgB,CACzC,gBAAgB,EAChB,IAAI,CAAC,mBAAmB,CACzB,CAAC;aACH,CAAC,CAAC;SACJ,EAAC;;;QAIF,yDAAyB,CACvB,gBAA6B;;YAE7B,OAAA,CAAA,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,GAAG,CAAC,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,EAAE,CAAC,0CAAE,QAAQ;iBAC7D,MAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,0CAAE,OAAO,CAAA,KACxD,kBACE,KAAK,EAAC,SAAS,EACf,aAAa,EAAE,gBAAgD,EAC/D,UAAU,EAAE,MAAM,CAAC,eAAe,CAAC,UAAU,EAC7C,WAAW,EAAE,MAAM,CAAC,eAAe,CAAC,WAAW,EAC/C,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,KAAK,IAElC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,CAC/C,CACd,CAAA;SAAA,EAAC;QAEJ,6DAA6B,CAC3B,KAA6C;YAE7C,IAAI,CAAC,WAAW,GAAI,KAAK,CAAC,MAAiB,CAAC,WAAW,EAAE,CAAC;YAC1D,IAAI,CAAC,0BAA0B,GAAG,uBAAA,IAAI,mDAAoB,CAAC,MAAM,CAC/D,CAAC,IAA8B,KAC7B,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CACxD,CAAC;SACH,EAAC;QAEF,wCAAQ;YACN,MAAM,IAAI,CAAC,sBAAsB,CAAC;gBAChC,kBAAkB,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB;gBAC1D,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS;gBACxC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ;gBACtC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY;aAC/C,CAAC,CAAC,IAAI,CAAC,MAAM;gBACZ,uBAAA,IAAI,+CAAuB,4BAA4B,CAAC,MAAM,CAAC,MAAA,CAAC;gBAChE,IAAI,CAAC,0BAA0B,GAAG,uBAAA,IAAI,mDAAoB,CAAC;gBAC3D,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;aACvB,CAAC,CAAC;SACJ,EAAC;QAEF,iEAAiC;;YAE/B,MAAM,mBAAmB,GAAkB,CAAC,uBAAA,IAAI,8CAAe,CAAC,CAAC;YACjE,mBAAmB,CAAC,OAAO,CAAC,kBAAkB;gBAC5C,IAAI,kBAAkB,CAAC,EAAE,EAAE;oBACzB,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,EAAE;wBAClD,SAAS,EAAE,kBAAkB;wBAC7B,QAAQ,EAAE,KAAK;wBACf,OAAO,EAAE,SAAS;qBACnB,CAAC,CAAC;iBACJ;aACF,CAAC,CAAC;SACJ,EAAC;QAEF,2DAA2B,CACzB,KAA6C;YAE7C,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC,MAAgB,CAAC;YACpD,uBAAA,IAAI,sDAA8B,IAAI,MAAA,CAAC;SACxC,EAAC;QAEF,0DAA0B;YACxB,IAAI,IAAI,CAAC,wBAAwB,EAAE;gBACjC,MAAM,IAAI,CAAC,wBAAwB,CAAC,uBAAA,IAAI,6CAAc,CAAC,CAAC,IAAI,CAAC,MAAM;oBACjE,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,EAAE;wBAClB,uBAAA,IAAI,uCAAe,MAAM,CAAC,GAAG,CAAC,SAAS,KAAK;4BAC1C,EAAE,EAAE,SAAS,CAAC,EAAE;4BAChB,IAAI,EAAE,SAAS,CAAC,IAAI;yBACrB,CAAC,CAAC,MAAA,CAAC;wBAEJ,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,uBAAA,IAAI,2CAAY,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE;4BACvD,IAAI,CAAC,qBAAqB,GAAG,uBAAA,IAAI,6CAAc,CAAC;4BAChD,IAAI,CAAC,kBAAkB;gCACrB,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,mBAAmB,CAAC;yBACjD;6BAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC5B,IAAI,CAAC,qBAAqB,GAAG,uBAAA,IAAI,6CAAc,CAAC;4BAChD,IAAI,CAAC,kBAAkB,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,IACnD,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,yBAC5B,EAAE,CAAC;yBACJ;6BAAM;4BACL,IAAI,CAAC,qBAAqB,GAAG,GAAG,uBAAA,IAAI,6CAAc,IAChD,uBAAA,IAAI,2CAAY,CAAC,CAAC,CAAC,CAAC,IACtB,EAAE,CAAC;4BACH,IAAI,CAAC,kBAAkB,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,IACzC,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,4BAC5B,EAAE,CAAC;yBACJ;qBACF;iBACF,CAAC,CAAC;aACJ;SACF,EAAC;QAEF,yDAAyB,CACvB,KAAmE;;YAEnE,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,0CAAE,IAAgC,CAAC;YAC/D,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;gBACxC,uBAAA,IAAI,yCAAiB,SAAS,MAAA,CAAC;gBAC/B,OAAO;aACR;YACD,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;YACvC,uBAAA,IAAI,yCAAiB,IAAI,CAAC,EAAE,MAAA,CAAC;YAC7B,IAAI,uBAAA,IAAI,0DAA2B,EAAE;gBACnC,OAAO;aACR;YACD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC;YAC1C,IAAI,IAAI,CAAC,mBAAmB,KAAK,QAAQ,EAAE;gBACzC,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;gBAC7B,uBAAA,IAAI,uCAAe,EAAE,MAAA,CAAC;aACvB;SACF,EAAC;QAEF,0DAA0B,CAAC,KAA0B;YACnD,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,MAAuB,CAAC;SAC1D,EAAC;QAEF,6CAAa,CAAC,KAAiC;YAC7C,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;;gBACd,OAAA,MAAA,CAAC,CAAC,OAAO,0CACL,iBAAiB,GAClB,aAAa,CAAC,MAAA,CAAC,CAAC,OAAO,0CAAE,iBAAiB,EAAE,CAAC,CAAA;aAAA,CACjD,CAAC;SACH,EAAC;QAEF,gDAAgB;YACd,QACE,cAAQ,KAAK,EAAC,6EAA6E,IACzF,WAAK,KAAK,EAAC,gBAAgB,IACzB;;gBAEE,KAAK,EAAC,kBAAkB,EACxB,OAAO,EAAE,uBAAA,IAAI,8CAAe,EAC5B,IAAI,EAAC,sBAAsB;eAE1B,uBAAA,IAAI,iDAAkB,CAAC,MAAM,CAAC,MAAM,CAC9B,EAET;;gBAEE,KAAK,EAAC,gBAAgB,EACtB,OAAO,EAAE,IAAI,CAAC,0BAA0B,IAAI,uBAAA,IAAI,8CAAe,EAC/D,QAAQ,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAC1C,IAAI,EAAC,yBAAyB;eAE7B,uBAAA,IAAI,iDAAkB,CAAC,MAAM,CAAC,QAAQ,CAChC,CACL,CACC,EACT;SACH,EAAC;0CAxT6C,KAAK;qCAKX,EAAE;uBAKxB,IAAI;2BAKQ,EAAE;0CAK4B,EAAE;mCAEhC,IAAI,GAAG,EAA6B;;kCAU7B,EAAE;;8BAYG,KAAK;;;;;;;;;IA6ChD,MAAM,gBAAgB;QACpB,MAAM,uBAAA,IAAI,qCAAM,MAAV,IAAI,CAAQ,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACtB;IAED,MAAM,iBAAiB;QACrB,uBAAA,IAAI,6CAAqB,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAA,CAAC;KACpE;;;;IAMD,MAAM,gBAAgB,CAAC,gBAAyB;QAC9C,IAAI,gBAAgB,EAAE;YACpB,uBAAA,IAAI,8CAAe,CAAC,OAAO,GAAG,IAAI,CAAC;SACpC;aAAM;YACL,uBAAA,IAAI,8CAAe,CAAC,OAAO,GAAG,KAAK,CAAC;SACrC;KACF;IA8MD,MAAM;QACJ,QACE,EAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,IAClB,gBAAU,KAAK,EAAE,WAAW,GAAa,EACzC,oBACE,GAAG,EAAE,uBAAA,IAAI,6CAAc,EACvB,GAAG,EAAE,CAAC,EAA0B,MAC7B,uBAAA,IAAI,0CAAkB,EAA4B,MAAA,CAAC,GAExC,EAEhB,eAAS,KAAK,EAAC,SAAS,IACtB,cAAQ,KAAK,EAAC,0FAA0F,IACtG,WAAK,KAAK,EAAC,mBAAmB,IAC5B,aAAO,KAAK,EAAC,OAAO,IACjB,uBAAA,IAAI,iDAAkB,CAAC,MAAM,CAAC,SAAS,CAClC,EACR,aAAI,IAAI,CAAC,cAAc,CAAC,SAAS,CAAK,CAClC,EAEN,WAAK,KAAK,EAAC,mBAAmB,IAC5B,aAAO,KAAK,EAAC,OAAO,IAAE,uBAAA,IAAI,iDAAkB,CAAC,MAAM,CAAC,IAAI,CAAS,EACjE,aAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAK,CACjC,EAEN,cACE,EAAE,EAAC,0BAA0B,EAC7B,KAAK,EAAC,+BAA+B,EACrC,OAAO,EAAE,uBAAA,IAAI,wDAAyB,IAErC,uBAAA,IAAI,iDAAkB,CAAC,MAAM,CAAC,MAAM,CAC9B,CACF,EACT,eAAS,KAAK,EAAC,+BAA+B,IAC3C,IAAI,CAAC,OAAO,IACX,qBACE,WAAW,EAAE,uBAAA,IAAI,iDAAkB,CAAC,MAAM,CAAC,KAAK,EAChD,WAAW,EAAE,uBAAA,IAAI,iDAAkB,CAAC,MAAM,CAAC,WAAW,EACtD,IAAI,SACW,KAEjB,EAAC,QAAQ,QACP,eACE,KAAK,EAAC,kBAAkB,EACxB,EAAE,EAAC,eAAe,EAClB,WAAW,EAAE,uBAAA,IAAI,6CAAc,EAC/B,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,uBAAA,IAAI,0DAA2B,EACxC,WAAW,EAAE,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,oBAAoB,GAClD,EACV,uBAAA,IAAI,mDAAoB,CAAC,MAAM,KAAK,CAAC;YACtC,IAAI,CAAC,0BAA0B,CAAC,MAAM,KAAK,CAAC,IAC1C,WAAK,KAAK,EAAC,UAAU,IACnB,0BACE,YAAY,EAAE,SAAS,EACvB,UAAU,EAAE,uBAAA,IAAI,iDAAkB,CAAC,YAAY,EAC/C,UAAU,EAAE,IAAI,GACI,CAClB,KAEN,6BACE,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAC,UAAU,EAChB,qBAAqB,EAAE,uBAAA,IAAI,sDAAuB,EAClD,KAAK,EAAE,IAAI,CAAC,0BAA0B,EACtC,iBAAiB,EAAE,uBAAA,IAAI,0CAAW,GACX,CAC1B,EACD,WAAK,KAAK,EAAC,gCAAgC,IACzC,6BACE,KAAK,EAAC,aAAa,EACnB,KAAK,EAAE,uBAAA,IAAI,+CAAgB,EAC3B,QAAQ,EAAE,uBAAA,IAAI,uDAAwB,EACtC,KAAK,EAAE,uBAAA,IAAI,+CAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,EACpC,GAAG,EAAE,CAAC,EAAiC;gBACrC,uBAAA,IAAI,kDACF,EAAmC,MAAA,CAAC;gBACtC,IAAI,uBAAA,IAAI,sDAAuB,EAAE;oBAC/B,IAAI,CAAC,mBAAmB,GAAG,uBAAA,IAAI,sDAAuB;yBACnD,KAAsB,CAAC;iBAC3B;aACF,GACsB,EAExB,IAAI,CAAC,mBAAmB,KAAK,QAAQ,KACpC,WAAK,KAAK,EAAC,sCAAsC,IAC/C,WAAK,KAAK,EAAC,mBAAmB,IAC5B,aAAO,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,cAAc,IACxC,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,aAAa,CAClC,EACR,WAAK,KAAK,EAAC,2BAA2B,IACpC,eACE,KAAK,EAAC,OAAO,EACb,QAAQ,QACR,WAAW,EACT,IAAI,CAAC,0BAA0B;kBAC3B,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,mBAAmB;kBAC7C,uBAAA,IAAI,iDAAkB,CAAC,EAAE;qBACtB,2BAA2B,EAEpC,KAAK,EAAE,IAAI,CAAC,kBAAkB,GACrB,EACX,cACE,EAAE,EAAC,uBAAuB,EAC1B,KAAK,EAAC,kCAAkC,EACxC,OAAO,EAAE,uBAAA,IAAI,uDAAwB,EACrC,QAAQ,EAAE,CAAC,IAAI,CAAC,0BAA0B,IAE1C,gBACE,GAAG,EAAE,uBAAA,IAAI,6CAAc,EACvB,KAAK,EAAC,QAAQ,EACd,QAAQ,EAAE,CAAC,IAAI,CAAC,0BAA0B,GAChC,CACL,CACL,CACF,CACF,CACP,CACG,EAEN,WAAK,KAAK,EAAC,mBAAmB,IAC5B,aAAO,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,IACvC,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,gBAAgB,CACrC,EACR;;YAEE,KAAK,EAAC,OAAO,EACb,EAAE,EAAC,aAAa,EAChB,KAAK,EAAE,IAAI,CAAC,qBAAqB,EACjC,OAAO,EAAE,uBAAA,IAAI,wDAAyB,EACtC,WAAW,EACT,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,sBAAsB,EAElD,GAAG,EAAE,CAAC,EAAqB;gBACzB,uBAAA,IAAI,0CAAkB,EAAuB,MAAA,CAAC;gBAC9C,IAAI,uBAAA,IAAI,8CAAe,EAAE;oBACvB,uBAAA,IAAI,8DAA+B,MAAnC,IAAI,CAAiC,CAAC;iBACvC;aACF;UACQ,EACV,uBAAA,IAAI,sDAAuB,MAA3B,IAAI,EAAwB,uBAAA,IAAI,8CAAe,CAAC,CAC7C,EAEL,IAAI,CAAC,cAAc,KAClB,WAAK,KAAK,EAAC,mBAAmB,IAC5B,aAAO,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,YAAY,IACtC,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,UAAU,CAC/B,EACR,WAAK,KAAK,EAAC,yBAAyB,IAClC,WAAK,KAAK,EAAC,gBAAgB,IACzB,eACE,KAAK,EAAC,OAAO,EACb,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,EAAE,EAAC,YAAY,EACf,OAAO,EAAE,uBAAA,IAAI,uDAAwB,EACrC,GAAG,EAAE,CAAC,EAAqB,MACxB,uBAAA,IAAI,uCAAe,EAAuB,MAAA,CAAC,GAErC,CACP,EACN,cACE,KAAK,EAAC,kCAAkC,gBAEtC,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,oBAAoB,EAEhD,KAAK,EAAE,uBAAA,IAAI,iDAAkB,CAAC,EAAE,CAAC,oBAAoB,EACrD,OAAO,EAAE,uBAAA,IAAI,sDAAuB,IAEpC,gBACE,KAAK,EAAC,QAAQ,EACd,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,WAAW,GACN,CACL,CACL,CACF,CACP,CACQ,CACZ,CACO,EAET,uBAAA,IAAI,6CAAc,MAAlB,IAAI,CAAgB,CACb,CACL,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["GxIdeCreateKbFromServer"],"sources":["src/components/team-dev/create-kb-from-server/helpers.ts","src/components/team-dev/create-kb-from-server/create-kb-from-server.scss?tag=gx-ide-create-kb-from-server&encapsulation=shadow","src/components/team-dev/create-kb-from-server/create-kb-from-server.tsx"],"sourcesContent":["import { ActionListItemModel } from \"@genexus/chameleon-controls-library\";\nimport { KBData } from \"./create-kb-from-server\";\n\nexport const mapKbsModelToActionListModel = (\n kbsData: KBData[]\n): ActionListItemModel[] => {\n const listBoxItems: ActionListItemModel[] = [];\n kbsData.forEach(kb => {\n listBoxItems.push({\n id: kb.id,\n type: \"actionable\",\n caption: kb.name\n });\n });\n return listBoxItems;\n};\n","@import \"../../../global/temporary-mercury-overrides/_button.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// - - - - - - - - - - -\n// Header\n// - - - - - - - - - - -\n\nheader {\n display: grid;\n grid-template-rows: max-content;\n grid-template-columns: 1fr 1fr max-content;\n}\n\n.button-change {\n align-self: center;\n justify-self: end;\n}\n\n// - - - - - - - - - - -\n// Main\n// - - - - - - - - - - -\n\n.main {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: max-content 1fr max-content max-content;\n position: relative;\n}\n\n.search-kbs {\n inline-size: 50%;\n}\n\n.versions-container {\n grid-auto-rows: max-content;\n\n &__input {\n display: grid;\n grid-template-columns: 1fr max-content;\n gap: var(--spacing-gap-m);\n }\n}\n\n.location-custom-wrapper {\n display: flex;\n align-items: center;\n gap: var(--spacing-gap-xs);\n flex-grow: 1;\n min-inline-size: 0;\n}\n\n.location-field {\n flex-grow: 1;\n min-inline-size: 0;\n\n > .input {\n inline-size: 100%;\n }\n}\n","// Stencil\nimport {\n Component,\n Element,\n Fragment,\n getAssetPath,\n h,\n Host,\n Method,\n Prop,\n State\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport {\n ActionListItemActionable,\n ActionListItemModel,\n ActionListItemModelExtended,\n ChActionListRenderCustomEvent,\n ChEditCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { config } from \"../../../common/config\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { KBVersion } from \"../version-control/common/types\";\nimport { mapKbsModelToActionListModel } from \"./helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\nconst INFO_ICON = getIconPath({\n category: \"system\",\n name: \"information\",\n colorType: \"on-surface\"\n});\n\nconst FOLDER_ICON = getIconPath({\n category: \"system\",\n name: \"folder\",\n colorType: \"primary\"\n});\n\n@Component({\n tag: \"gx-ide-create-kb-from-server\",\n styleUrl: \"create-kb-from-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/create-kb-from-server\"]\n})\nexport class GxIdeCreateKbFromServer {\n #chSearchIcon = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"interactive\"\n });\n\n #showMoreIcon = getIconPath({\n category: \"system\",\n name: \"more-horizontal\",\n colorType: \"interactive\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" },\n { value: \"Select\", caption: \"Select Version\" }\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbsActionListModel: ActionListItemModel[] = [];\n #kbVersions: KBVersion[] = [];\n #chShortcutsEl: HTMLChShortcutsElement;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n #selectedKbId: string;\n #kbNameAlreadyEditedByUser: boolean = false;\n\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n #localKBNameEl!: HTMLChEditElement;\n #locationEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n /**\n * The current kbn name value.\n */\n @State() localKbNameInputValue: string = \"\";\n\n /**\n * State to store the loading state of the component\n */\n @State() loading = true;\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * KBs filtered\n */\n @State() kbsFilteredActionListModel: ActionListItemModel[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n /**\n * Default suggested path to a directory where the KB will be stored/generated.\n */\n @Prop({ mutable: true }) kbLocation: string;\n\n /**\n * Specifies whether the location field (and its folder-picker button) is\n * shown in the header, allowing the user to override the default `kbLocation`\n * path. Independent from `isAdvanced`.\n */\n @Prop() readonly canSetLocation: boolean = false;\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Create KB' button is pressed. Receives the user's parameter selection to create the remote KB locally and ends the dialog.\n */\n @Prop() readonly createKBCallback!: (\n kbInfo: KnowledgeBaseInfo\n ) => Promise<FormSubmitResult>;\n\n /**\n * Callback that must be invoked when invoking the dialog\n */\n @Prop() readonly getGXserverKBsCallback!: (\n data: GXServerConnectionData\n ) => Promise<KBData[]>;\n\n /**\n * Callback that returns a folder path selected by the user.\n */\n @Prop() readonly selectLocationCallback: SelectLocationCallback;\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector. Receives the KB selected by the user, and displays the version selector dialog. Returns a list of versions chosen by the user.\n */\n @Prop() readonly selectKBVersionsCallback: (\n selectedKB: string\n ) => Promise<KBVersion[]>;\n\n async componentDidLoad() {\n await this.#init();\n this.loading = false;\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\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 #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #selectLocationHandler = async (event: MouseEvent): Promise<void> => {\n // Capture the button before awaiting. Opening/closing the location picker\n // restores focus to it programmatically, leaving the :focus-visible outline\n // lingering as if it were still active. On a successful selection move focus\n // to the location input (natural next step, keyboard-friendly); otherwise\n // just blur the button so the outline doesn't stay pinned.\n const button = event.currentTarget as HTMLButtonElement;\n const location = await this.selectLocationCallback();\n if (location) {\n this.kbLocation = location;\n this.#locationEl?.focus();\n } else {\n button?.blur();\n }\n };\n\n #inputKbLocationHandler = (event: ChEditCustomEvent<string> | InputEvent) => {\n this.kbLocation = event.detail as string;\n };\n\n #createHandler = async (): Promise<void> => {\n if (this.versionSelectedType !== \"Select\") {\n this.#kbVersions = [];\n }\n this.createKBCallback({\n selectedKB: this.#selectedKbId,\n versionSelected: this.versionSelectedType,\n localKBName: this.localKbNameInputValue,\n kbLocation: this.kbLocation || undefined,\n versionList: this.#kbVersions\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.kbsFilteredActionListModel = this.#kbsActionListModel.filter(\n (item: ActionListItemActionable) =>\n item.caption.toLowerCase().includes(this.filterValue)\n );\n };\n\n #init = async () => {\n await this.getGXserverKBsCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n }).then(result => {\n this.#kbsActionListModel = mapKbsModelToActionListModel(result);\n this.kbsFilteredActionListModel = this.#kbsActionListModel;\n this.filterValue = \"\";\n });\n };\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#localKBNameEl];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #inputLocalKbNameHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.localKbNameInputValue = event.detail as string;\n this.#kbNameAlreadyEditedByUser = true;\n };\n\n #selectedVersionHandler = async () => {\n if (this.selectKBVersionsCallback) {\n await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n if (result?.length) {\n this.#kbVersions = result.map(kbVersion => ({\n id: kbVersion.id,\n name: kbVersion.name\n }));\n\n if (result.length === 1 && this.#kbVersions[0].id === 0) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput =\n this.#_componentLocale.kb.versionsPlaceholder;\n } else if (result.length > 1) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput = `${result.length.toString()} ${\n this.#_componentLocale.kb.versionSelectedFieldValue\n }`;\n } else {\n this.localKbNameInputValue = `${this.#selectedKbId}_${\n this.#kbVersions[0].name\n }`;\n this.versionsValueInput = `${result[0].name} ${\n this.#_componentLocale.kb.oneVersionSelectedFieldValue\n }`;\n }\n }\n });\n }\n };\n\n #selectKbChangeHandler = (\n event: ChActionListRenderCustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const item = event.detail[0]?.item as ActionListItemActionable;\n if (item === undefined) {\n this.enableSelectVersionsButton = false;\n this.#selectedKbId = undefined;\n return;\n }\n this.enableSelectVersionsButton = true;\n this.#selectedKbId = item.id;\n if (this.#kbNameAlreadyEditedByUser) {\n return;\n }\n this.localKbNameInputValue = item.caption;\n if (this.versionSelectedType === \"Select\") {\n this.versionsValueInput = \"\";\n this.#kbVersions = [];\n }\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #sortItems = (model: ActionListItemActionable[]): void => {\n model.sort((a, b) =>\n a.caption\n ?.toLocaleLowerCase()\n .localeCompare(b.caption?.toLocaleLowerCase())\n );\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer dialog-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // create kb button\n class=\"button-primary\"\n onClick={this.enableSelectVersionsButton && this.#createHandler}\n disabled={!this.enableSelectVersionsButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.createKb}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header dialog-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n id=\"change-connection-button\"\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n <section class=\"main field-group spacing-body\">\n {this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n description={this.#_componentLocale.loader.description}\n show\n ></gx-ide-loader>\n ) : (\n <Fragment>\n <ch-edit\n class=\"input search-kbs\"\n id=\"local-kb-name\"\n startImgSrc={this.#chSearchIcon}\n type=\"search\"\n onInput={this.#filterValueChangedHandler}\n placeholder={this.#_componentLocale.kb.searchKbsPlaceholder}\n ></ch-edit>\n {this.#kbsActionListModel.length === 0 ||\n this.kbsFilteredActionListModel.length === 0 ? (\n <div class=\"list-box\">\n <gx-ide-empty-state\n stateIconSrc={INFO_ICON}\n stateTitle={this.#_componentLocale.emptyKBsText}\n isAnimated={true}\n ></gx-ide-empty-state>\n </div>\n ) : (\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n onSelectedItemsChange={this.#selectKbChangeHandler}\n model={this.kbsFilteredActionListModel}\n sortItemsCallback={this.#sortItems}\n ></ch-action-list-render>\n )}\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={(el: HTMLChRadioGroupRenderElement) => {\n this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement;\n if (this.#versionSelectedTypeEl) {\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n }\n }}\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n id=\"select-version-button\"\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-m\"\n disabled={!this.enableSelectVersionsButton}\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"localKbName\">\n {this.#_componentLocale.kb.localKbNameLabel}\n </label>\n <ch-edit\n // local kb name\n class=\"input\"\n id=\"localKbName\"\n value={this.localKbNameInputValue}\n onInput={this.#inputLocalKbNameHandler}\n placeholder={\n this.#_componentLocale.kb.localKbNamePlaceholder\n }\n ref={(el: HTMLChEditElement) => {\n this.#localKBNameEl = el as HTMLChEditElement;\n if (this.#localKBNameEl) {\n this.#initializeValidatableControls();\n }\n }}\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#localKBNameEl)}\n </div>\n\n {this.canSetLocation && (\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"kbLocation\">\n {this.#_componentLocale.kb.kbLocation}\n </label>\n <div class=\"location-custom-wrapper\">\n <div class=\"location-field\">\n <ch-edit\n class=\"input\"\n value={this.kbLocation}\n id=\"kbLocation\"\n onInput={this.#inputKbLocationHandler}\n ref={(el: HTMLChEditElement) =>\n (this.#locationEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={\n this.#_componentLocale.kb.selectLocationButton\n }\n title={this.#_componentLocale.kb.selectLocationButton}\n onClick={this.#selectLocationHandler}\n >\n <ch-image\n class=\"icon-m\"\n type=\"mask\"\n src={FOLDER_ICON}\n ></ch-image>\n </button>\n </div>\n </div>\n )}\n </Fragment>\n )}\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type KnowledgeBaseInfo = {\n selectedKB: string;\n versionSelected: VersionOption;\n localKBName: string;\n kbLocation?: string;\n versionList: KBVersion[];\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type SelectLocationCallback = () => Promise<string>;\n"],"version":3}
|
|
@@ -17,18 +17,11 @@ const STATUS_REGEXP_KEY = "status";
|
|
|
17
17
|
// - - - - - - - - - - - - - - - - -
|
|
18
18
|
// Objects In File Tree Model
|
|
19
19
|
// - - - - - - - - - - - - - - - - -
|
|
20
|
-
const convertImportCategoryItemToTreeItem = (importCatIcon, importItems) => {
|
|
20
|
+
const convertImportCategoryItemToTreeItem = (importCatIcon, importItems, checked) => {
|
|
21
21
|
const importTreeItems = [];
|
|
22
22
|
importItems.forEach(importItem => {
|
|
23
23
|
var _a;
|
|
24
|
-
importTreeItems.push({
|
|
25
|
-
id: importItem.id,
|
|
26
|
-
caption: importItem.name,
|
|
27
|
-
expanded: true,
|
|
28
|
-
leaf: true,
|
|
29
|
-
startImgSrc: (_a = importItem.icon) !== null && _a !== void 0 ? _a : importCatIcon,
|
|
30
|
-
metadata: KB_OBJECT
|
|
31
|
-
});
|
|
24
|
+
importTreeItems.push(Object.assign({ id: importItem.id, caption: importItem.name, expanded: true, leaf: true, startImgSrc: (_a = importItem.icon) !== null && _a !== void 0 ? _a : importCatIcon, metadata: KB_OBJECT }, (checked !== undefined && { checked })));
|
|
32
25
|
});
|
|
33
26
|
return importTreeItems;
|
|
34
27
|
};
|
|
@@ -315,10 +308,17 @@ const GxIdeKbManagerImport$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeKbMan
|
|
|
315
308
|
this.hasSelection = importCategoryTreeData.length > 0;
|
|
316
309
|
});
|
|
317
310
|
_GxIdeKbManagerImport_lazyLoadTreeItems.set(this, async (treeItemId) => {
|
|
311
|
+
var _a, _b;
|
|
318
312
|
const category = __classPrivateFieldGet(this, _GxIdeKbManagerImport_importedCategoryData, "f").find(cat => cat.id === treeItemId);
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
313
|
+
if (!category || category.items.length === 0) {
|
|
314
|
+
return [];
|
|
315
|
+
}
|
|
316
|
+
// Lazy children are created fresh and would otherwise take the tree-view's
|
|
317
|
+
// default `checked={true}`, ignoring any "Unselect All" / partial selection
|
|
318
|
+
// applied while the node was collapsed. Inherit the parent category's
|
|
319
|
+
// current checked state so the loaded items match the user's selection.
|
|
320
|
+
const categoryNode = (_b = (_a = __classPrivateFieldGet(this, _GxIdeKbManagerImport_objectsTreeEl, "f")) === null || _a === void 0 ? void 0 : _a.model) === null || _b === void 0 ? void 0 : _b.find(item => item.id === treeItemId);
|
|
321
|
+
return convertImportCategoryItemToTreeItem(category.icon, category.items, categoryNode === null || categoryNode === void 0 ? void 0 : categoryNode.checked);
|
|
322
322
|
});
|
|
323
323
|
_GxIdeKbManagerImport_objectsTreeCheckedItemsChangedHandler.set(this, (event) => {
|
|
324
324
|
const allItems = event.detail;
|