@genexus/genexus-ide-ui 3.1.3 → 3.2.1
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 +45 -5
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +46 -13
- 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/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +2 -0
- package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -0
- package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.zh.json +2 -0
- package/dist/collection/components/new-kb/new-kb.css +15 -5
- package/dist/collection/components/new-kb/new-kb.js +64 -12
- 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.css +16 -0
- package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +102 -5
- 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 +5 -1
- 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 +5 -1
- 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 +5 -1
- package/dist/components/gx-ide-create-kb-from-server.js +49 -5
- package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
- package/dist/components/gx-ide-new-kb.js +48 -13
- 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 +45 -5
- package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +46 -13
- 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 +5 -1
- package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +5 -1
- package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +5 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +2 -0
- package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -0
- package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.zh.json +2 -0
- package/dist/genexus-ide-ui/{p-217bd2d7.entry.js → p-76e1c357.entry.js} +178 -137
- package/dist/genexus-ide-ui/p-76e1c357.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-83a7e6fb.entry.js → p-cf61384e.entry.js} +162 -94
- package/dist/genexus-ide-ui/p-cf61384e.entry.js.map +1 -0
- package/dist/types/components/new-kb/new-kb.d.ts +7 -0
- package/dist/types/components/team-dev/create-kb-from-server/create-kb-from-server.d.ts +17 -0
- package/dist/types/components.d.ts +38 -6
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-217bd2d7.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-83a7e6fb.entry.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["newKbCss","CSS_BUNDLES","WINDOWS_AUTHENTICATION_VALUE","MAIN_SECTION_CLASSES","BASIC_SECTION_PARENT_CLASSES","SYSTEM_ICON","getIconPath","category","name","colorType","LOCATION_MODE_DEFAULT","LOCATION_MODE_CUSTOM","BASIC_TAB_SELECTOR","ADVANCED_TAB_SELECTOR","GxIdeNewKb","_GxIdeNewKb_advancedTabHasBeenRendered","set","this","_GxIdeNewKb_componentLocale","_GxIdeNewKb_frontEndsCheckedMap","Map","_GxIdeNewKb_selectedPrototypingEnvironmentId","_GxIdeNewKb_selectedDataSourceId","_GxIdeNewKb_shortcutsSrc","getAssetPath","_GxIdeNewKb_kbSectionsModel","_GxIdeNewKb_authenticationTypeEl","_GxIdeNewKb_collationEl","_GxIdeNewKb_createDataFilesInKBFolderEl","_GxIdeNewKb_databaseNameEl","_GxIdeNewKb_dataSourceEl","_GxIdeNewKb_kbNameEl","_GxIdeNewKb_locationEl","_GxIdeNewKb_locationModeEl","_GxIdeNewKb_locationModeModel","_GxIdeNewKb_locationElRegistered","_GxIdeNewKb_passwordEl","_GxIdeNewKb_prototypingEnvironmentEl","_GxIdeNewKb_prototypingTargetEl","_GxIdeNewKb_savePasswordEl","_GxIdeNewKb_serverNameEl","_GxIdeNewKb_userInterfaceLanguageEl","_GxIdeNewKb_userNameEl","_GxIdeNewKb_chShortcutsEl","_GxIdeNewKb_handlerAuthenticationTypeInput","e","authenticationTypeValue","detail","__classPrivateFieldGet","_GxIdeNewKb_evaluateUserInputsDisplay","call","_GxIdeNewKb_handlerServerNameInput","_GxIdeNewKb_evaluateCreateDataCheckboxEnabled","_GxIdeNewKb_prototypingEnvironmentValueChangedHandler","event","__classPrivateFieldSet","_GxIdeNewKb_getDataSources","_GxIdeNewKb_updateFrontEnds","_GxIdeNewKb_prototypingTargetValueChangedHandler","async","_GxIdeNewKb_getPrototypingEnvironments","_GxIdeNewKb_dataSourceValueChangedHandler","value","_GxIdeNewKb_renderAdvanced","h","class","tabAdvanced","tabTitle","htmlFor","serverName","label","disabled","serverNames","length","placeholder","disabledPlaceholder","serverNamesInitialValue","ref","el","model","serverNamesComboBoxModel","onInput","id","part","_GxIdeNewKb_evaluateTooltipRender","authenticationType","authenticationTypes","authenticationTypesInitialValue","authenticationTypesComboBoxModel","undefined","databaseName","userNameVisible","userName","collation","collations","collationsInitialValue","collationsComboBoxModel","passwordVisible","password","type","checkedValue","caption","createDataFilesInKbFolder","createDataInKbDisabled","savePasswordVisible","savePassword","_GxIdeNewKb_renderBasic","tabBasic","prototypingTarget","prototypingTargets","prototypingTargetsInitialValue","prototypingTargetsComboBoxModel","userInterfaceLanguage","userInterfaceLanguages","userInterfaceLanguagesInitialValue","userInterfaceLanguagesComboBoxModel","backEnd","backEndLabel","prototypingEnvironment","defaultPrototypingEnvironments","prototypingEnvironmentsComboBoxModel","dataSource","defaultDataSources","defaultDataSourcesComboBoxModel","frontEnd","frontEndLabel","renderChCheckboxItems","frontEnds","_GxIdeNewKb_frontEndCheckboxInputHandler","get","_GxIdeNewKb_cancelKbHandler","cancelCallback","_GxIdeNewKb_createKbHandler","selectedFrontEndIds","_a","createCallback","_b","_c","createDataFilesInKBFolder","_d","_e","_f","kbLocation","_g","kbName","_h","_j","_k","_l","_m","_o","_p","_q","then","formSubmitResult","validatableControls","validateControls","serverNameValue","controlReference","hasError","message","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","target","checked","_GxIdeNewKb_updateFrontEndsCheckedMap","checkboxId","currentState","push","checkboxIndex","findIndex","removeIndex","getPrototypingEnvironmentsCallback","selectedPrototypingTargetId","envs","getDataSourcesCallback","selectedPrototypingEnvironmentId","updatedDefaultDataSourcesPromise","result","setSelectedItem","getSelectedItem","catch","_GxIdeNewKb_initialSetupAdvancedTab","selectedServerNameValue","selectedAuthenticationType","watchAuthenticationTypes","watchCollations","_GxIdeNewKb_initializeValidatableControlsBasicTab","forEach","validatableControl","reference","_GxIdeNewKb_initializeValidatableControlsAdvancedTab","_GxIdeNewKb_selectLocationHandler","selectLocationCallback","_GxIdeNewKb_locationModeChangeHandler","locationMode","_GxIdeNewKb_tabSelectionChangedHandler","newSelectedId","advancedTabIsVisible","updatedFrontEnds","getFrontEndsCallback","has","checkedIds","filter","fe","map","newValue","mapOptionsToComboBoxItemModel","watchDefaultDataSources","watchDefaultPrototypingEnvironments","watchPrototypingTargets","watchServerNames","watchUserInterfaceLanguages","componentWillLoad","Locale","getComponentStrings","tabLabel","header","kbLocationDefault","kbLocationCustom","connectedCallback","componentDidLoad","componentDidRender","suspendShortcuts","suspend","render","Host","src","isAdvanced","autoFocus","canSetLocation","onChange","selectLocationButton","title","onClick","scrollable","tab","tabListPosition","selectedId","overflow","contain","onSelectedItemChange","slot","footer","btnCancel","btnCreate"],"sources":["src/components/new-kb/new-kb.scss?tag=gx-ide-new-kb&encapsulation=shadow","src/components/new-kb/new-kb.tsx"],"sourcesContent":["@import \"../../global/temporary-mercury-overrides/_button.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n.header {\n &-one-col {\n grid-template-columns: 1fr;\n }\n}\n// location appears when canSetLocation is true\n.location-wrapper {\n display: flex;\n align-items: center;\n gap: var(--spacing-gap-xs);\n min-block-size: var(--control-block-size);\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.location-field {\n flex-grow: 1;\n min-inline-size: 0;\n\n > .input {\n inline-size: 100%;\n }\n}\n\n.basic {\n display: grid;\n grid-template:\n \"basic-top basic-top\" max-content\n \"back-end front-end\" 1fr;\n grid-template-columns: 1fr 1fr;\n}\n.basic__header {\n grid-area: basic-top;\n grid-template-columns: 1fr 1fr;\n}\n.dialog-header__back-end,\n.dialog-header__front-end {\n padding-block-start: 16px;\n}\n.main__back-end {\n border-inline-end: var(--section-common-border);\n}\n.main__back-end,\n.main__front-end {\n grid-auto-rows: max-content;\n padding-block: 12px;\n overflow: auto;\n}\n// back end\n.section__back-end {\n grid-area: back-end;\n grid-auto-rows: max-content;\n}\n// front end\n.section__front-end {\n grid-area: front-end;\n}\n.section__back-end,\n.section__front-end {\n display: grid;\n grid-template-rows: max-content 1fr;\n overflow: auto;\n}\n\n// advanced\n.tab-advanced-title {\n grid-area: tab-advanced-title;\n}\n.layout-tab-advanced-left-col {\n grid-area: layout-tab-advanced-left-col;\n}\n.layout-tab-advanced-right-col {\n grid-area: layout-tab-advanced-right-col;\n}\n\n.basic,\n.advanced {\n padding-block-start: 12px;\n overflow: auto;\n block-size: 100%;\n}\n\n.tab-advanced__field-group {\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-auto-rows: auto;\n}\n\n// WA / TODO: Add a helper class in Mercury to justify text.\n.text-align-center {\n text-align: center; // should be resolved on mercury\n}\n\n.tab::part(page) {\n // WA / TODO: Remove this line when the ch-tab renders supports scrollbar\n // custom styling\n scrollbar-width: thin;\n}\n\n// WA: Staring on Mercury V1.0.0. the checkbox displays an outline all around.\n// This requires the checkbox inline-size to be set to max-content.\n// TODO: Remove this once the checkbox displays correctly on a later version of Mercury.\n.checkbox {\n inline-size: max-content;\n}\n","import {\n Component,\n Host,\n Prop,\n Element,\n State,\n getAssetPath,\n Method,\n h,\n Watch\n} from \"@stencil/core\";\n\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\n\nimport { config } from \"../../common/config\";\nimport { Locale } from \"../../common/locale\";\nimport { getSelectedItem, setSelectedItem } from \"../../common/common\";\nimport {\n mapOptionsToComboBoxItemModel,\n renderChCheckboxItems\n} from \"../../common/helpers\";\nimport { FormSubmitResult, GxOption } from \"../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../common/form-validation\";\nimport {\n TabModel,\n ComboBoxModel,\n ChCheckboxCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { removeIndex } from \"../../common/array\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/tab\",\n \"components/tooltip\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst WINDOWS_AUTHENTICATION_VALUE: string = \"windows-authentication\";\nconst MAIN_SECTION_CLASSES: string = \"main\";\nconst BASIC_SECTION_PARENT_CLASSES: string = \"basic\";\n\nconst SYSTEM_ICON = getIconPath({\n category: \"system\",\n name: \"folder\",\n colorType: \"primary\"\n});\n\n\nconst LOCATION_MODE_DEFAULT = \"default\";\nconst LOCATION_MODE_CUSTOM = \"custom\";\n\nconst BASIC_TAB_SELECTOR: string = \"basic\";\nconst ADVANCED_TAB_SELECTOR: string = \"advanced\";\n\n@Component({\n tag: \"gx-ide-new-kb\",\n styleUrl: \"new-kb.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/new-kb\"]\n})\nexport class GxIdeNewKb {\n #advancedTabHasBeenRendered: boolean = false;\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n /**\n * frontEndsState saves the id's of the front ends checkboxes that are checked\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #frontEndsCheckedMap = new Map<string, string[]>();\n #selectedPrototypingEnvironmentId: string;\n #selectedDataSourceId: string;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/new-kb/shortcuts.json`);\n #kbSectionsModel: TabModel = [];\n\n @Element() el: HTMLGxIdeNewKbElement;\n\n /* References needed to collect data con \"Create\" button submit*/\n #authenticationTypeEl!: HTMLChComboBoxRenderElement;\n #collationEl!: HTMLChComboBoxRenderElement;\n #createDataFilesInKBFolderEl!: HTMLChCheckboxElement;\n #databaseNameEl!: HTMLChEditElement;\n #dataSourceEl!: HTMLChComboBoxRenderElement;\n #kbNameEl!: HTMLChEditElement;\n #locationEl!: HTMLChEditElement;\n #locationModeEl!: HTMLChRadioGroupRenderElement;\n #locationModeModel: RadioGroupItemModel[];\n #locationElRegistered = false;\n #passwordEl!: HTMLChEditElement;\n #prototypingEnvironmentEl!: HTMLChComboBoxRenderElement;\n #prototypingTargetEl!: HTMLChComboBoxRenderElement;\n #savePasswordEl!: HTMLChCheckboxElement;\n #serverNameEl!: HTMLChComboBoxRenderElement;\n #userInterfaceLanguageEl!: HTMLChComboBoxRenderElement;\n #userNameEl!: HTMLChEditElement;\n\n #chShortcutsEl: HTMLChShortcutsElement;\n\n @State() advancedTabIsVisible: boolean = false;\n @State() locationMode: string = LOCATION_MODE_DEFAULT;\n /**\n * Allows selecting multiple generators for the front end\n * TODO: Check if this property can be deleted, since we can call getFrontEndsCallback.\n */\n @State() frontEnds: GxOption[];\n @State() validatableControls = new Map<string, ControlValidation>();\n @State() createDataInKbDisabled = false;\n @State() userNameVisible = true;\n @State() passwordVisible = true;\n @State() savePasswordVisible = true;\n // representations of GxOption[] as ComboBoxModel, and initialValue for each one.\n @State() authenticationTypesComboBoxModel: ComboBoxModel = [];\n @State() authenticationTypesInitialValue: string;\n @State() collationsComboBoxModel: ComboBoxModel = [];\n @State() collationsInitialValue: string;\n @State() defaultDataSourcesComboBoxModel: ComboBoxModel = [];\n @State() prototypingTargetsComboBoxModel: ComboBoxModel = [];\n @State() prototypingTargetsInitialValue: string;\n @State() prototypingEnvironmentsComboBoxModel: ComboBoxModel = [];\n @State() prototypingEnvironmentsInitialValue: string;\n @State() serverNamesComboBoxModel: ComboBoxModel = [];\n @State() serverNamesInitialValue: string;\n @State() userInterfaceLanguagesComboBoxModel: ComboBoxModel = [];\n @State() userInterfaceLanguagesInitialValue: string;\n\n /**\n * Defines the type of authentication for the connection to the previously defined database\n */\n @Prop() readonly authenticationTypes: GxOption[] = [];\n @Watch(\"authenticationTypes\")\n watchAuthenticationTypes(newValue: GxOption[]) {\n if (newValue?.length) {\n this.authenticationTypesComboBoxModel =\n mapOptionsToComboBoxItemModel(newValue);\n this.authenticationTypesInitialValue = getSelectedItem(newValue);\n }\n }\n\n /**\n * Callback invoked when the user wants to cancel KB creation (‘Cancel’ button)\n */\n @Prop() readonly cancelCallback: CancelCallback;\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 * DB Collations\n */\n @Prop() readonly collations!: GxOption[];\n @Watch(\"collations\")\n watchCollations(newValue: GxOption[]) {\n if (newValue?.length) {\n this.collationsComboBoxModel = mapOptionsToComboBoxItemModel(newValue);\n this.collationsInitialValue = getSelectedItem(newValue);\n }\n }\n\n /**\n * Callback that will be invoked when the user confirms KB creation (‘Create’ button)\n */\n @Prop() readonly createCallback!: CreateCallback;\n\n /**\n * Disabled if the first item of the 'Server Name' combo is selected\n */\n @Prop() readonly createDataFilesInKBFolder: boolean = false;\n\n /**\n * Name of the database where we are going to persist the information of our KB\n */\n @Prop() readonly databaseName: string;\n\n /**\n * It allows defining the DBMS that will be used in the solution\n */\n @Prop({ mutable: true }) defaultDataSources: GxOption[] = [];\n @Watch(\"defaultDataSources\")\n watchDefaultDataSources(newValue: GxOption[]) {\n if (newValue?.length) {\n this.defaultDataSourcesComboBoxModel =\n mapOptionsToComboBoxItemModel(newValue);\n const result = setSelectedItem(newValue, this.#selectedDataSourceId);\n this.#selectedDataSourceId = getSelectedItem(result);\n }\n }\n\n /**\n * Callback invoked when the user wants to cancel KB creation (‘Cancel’ button)\n */\n @Prop() readonly getDataSourcesCallback: GetDataSourcesCallback;\n\n /**\n * Callback invoked when the user changes the prototyping environment, allowing for the modification of the list of front ends\n */\n @Prop() readonly getFrontEndsCallback!: GetFrontEndsCallback;\n\n /**\n * Callback invoked when the user changes the prototyping target id, allowing for the modification of the list of prototyping environments\n */\n @Prop()\n readonly getPrototypingEnvironmentsCallback!: GetPrototypingEnvironmentsCallback;\n\n /**\n * Specify whether it is feasible to display information related to local configuration parameters\n */\n @Prop() readonly isAdvanced = false;\n\n /**\n * Default suggested path to a directory where the information related to the KB will be stored/generated\n */\n @Prop({ mutable: true }) kbLocation: string;\n\n /**\n * The knowledge base default suggested name\n */\n @Prop() readonly kbName: string;\n\n /**\n * Password for the database connection. Visible if the Authentication Type is different from Windows Authentication (first item of the combo)\n */\n @Prop() readonly password: string;\n\n /**\n * It allows selecting the default environment that the KB will have (additional environments can be created later)\n */\n @Prop({ mutable: true }) defaultPrototypingEnvironments: GxOption[] = [];\n @Watch(\"defaultPrototypingEnvironments\")\n watchDefaultPrototypingEnvironments(newValue: GxOption[]) {\n if (newValue?.length) {\n this.prototypingEnvironmentsComboBoxModel =\n mapOptionsToComboBoxItemModel(newValue);\n this.#selectedPrototypingEnvironmentId = getSelectedItem(newValue);\n this.#updateFrontEnds();\n }\n }\n\n /**\n * Path to a directory where the information related to the KB will be stored/generated\n */\n @Prop() readonly prototypingTargets: GxOption[] = [];\n @Watch(\"prototypingTargets\")\n watchPrototypingTargets(newValue: GxOption[]) {\n if (newValue?.length) {\n this.prototypingTargetsComboBoxModel =\n mapOptionsToComboBoxItemModel(newValue);\n this.prototypingTargetsInitialValue = getSelectedItem(newValue);\n this.#getPrototypingEnvironments();\n }\n }\n\n /**\n * Visible if something other than Windows Authentication is selected\n */\n @Prop() readonly savePassword: boolean = false;\n\n /**\n * This is a function provided by the developer that returns a string, with the location path\n */\n @Prop() readonly selectLocationCallback!: SelectLocationCallback;\n\n /**\n * Name of the DB server where we want to persist the information of our KB\n */\n @Prop() readonly serverNames: GxOption[] = [];\n @Watch(\"serverNames\")\n watchServerNames(newValue: GxOption[]) {\n if (newValue?.length) {\n this.serverNamesComboBoxModel = mapOptionsToComboBoxItemModel(newValue);\n this.serverNamesInitialValue = getSelectedItem(newValue);\n }\n }\n\n /**\n * Specify the language in which the application screens will be developed (default language)\n */\n @Prop() readonly userInterfaceLanguages: GxOption[] = [];\n @Watch(\"userInterfaceLanguages\")\n watchUserInterfaceLanguages(newValue: GxOption[]) {\n if (newValue?.length) {\n this.userInterfaceLanguagesComboBoxModel =\n mapOptionsToComboBoxItemModel(newValue);\n this.userInterfaceLanguagesInitialValue = getSelectedItem(newValue);\n }\n }\n\n /**\n * Username for the database connection. Visible if the Authentication Type is different from Windows Authentication (first item of the combo)\n */\n @Prop() readonly userName: string;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#kbSectionsModel = [\n {\n id: BASIC_TAB_SELECTOR,\n name: this.#componentLocale.tabBasic.tabLabel\n },\n {\n id: ADVANCED_TAB_SELECTOR,\n name: this.#componentLocale.tabAdvanced.tabLabel\n }\n ];\n\n this.#locationModeModel = [\n {\n value: LOCATION_MODE_DEFAULT,\n caption: this.#componentLocale.header.kbLocationDefault\n },\n {\n value: LOCATION_MODE_CUSTOM,\n caption: this.#componentLocale.header.kbLocationCustom\n }\n ];\n }\n\n connectedCallback() {\n this.watchDefaultDataSources(this.defaultDataSources);\n this.watchDefaultPrototypingEnvironments(\n this.defaultPrototypingEnvironments\n );\n this.watchPrototypingTargets(this.prototypingTargets);\n this.watchServerNames(this.serverNames);\n this.watchUserInterfaceLanguages(this.userInterfaceLanguages);\n }\n\n componentDidLoad() {\n this.#initializeValidatableControlsBasicTab();\n }\n\n componentDidRender() {\n if (this.advancedTabIsVisible && !this.#advancedTabHasBeenRendered) {\n // just call this once.\n this.#initialSetupAdvancedTab();\n this.#initializeValidatableControlsAdvancedTab();\n this.#advancedTabHasBeenRendered = true;\n }\n\n // Register the location input for validation once it's rendered (custom mode)\n if (\n this.locationMode === LOCATION_MODE_CUSTOM &&\n !this.#locationElRegistered &&\n this.#locationEl\n ) {\n this.validatableControls.set(this.#locationEl.id, {\n reference: this.#locationEl,\n hasError: false,\n message: undefined\n });\n this.#locationElRegistered = true;\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 // Uncomment when \"TODO: define button handler and logic\" is done.\n // #geminiToolsSearchPrimary = getIconPath({\n // category: \"gemini-tools\",\n // name: \"search\",\n // colorType: \"primary\"\n // });\n // #geminiToolsResetPrimary = getIconPath({\n // category: \"gemini-tools\",\n // name: \"reset\",\n // colorType: \"primary\"\n // });\n\n #handlerAuthenticationTypeInput = (e: CustomEvent<string> | InputEvent) => {\n const authenticationTypeValue = e?.detail;\n this.#evaluateUserInputsDisplay(authenticationTypeValue as string);\n };\n\n #handlerServerNameInput = (e: CustomEvent<string> | InputEvent) => {\n this.#evaluateCreateDataCheckboxEnabled(e.detail as string);\n };\n\n #prototypingEnvironmentValueChangedHandler = (\n event: CustomEvent<string> | InputEvent\n ): void => {\n this.#selectedPrototypingEnvironmentId = event.detail as string;\n this.#getDataSources();\n this.#updateFrontEnds();\n };\n\n #prototypingTargetValueChangedHandler = async (): Promise<void> => {\n await this.#getPrototypingEnvironments();\n this.#getDataSources();\n };\n\n #dataSourceValueChangedHandler = () => {\n this.#selectedDataSourceId = this.#dataSourceEl.value;\n };\n\n #renderAdvanced = (): Element[] => {\n return [\n <h2\n // #knowledge base storage\n class=\"dialog-header subtitle-regular-xs\t text-align-center\"\n >\n {this.#componentLocale.tabAdvanced.tabTitle}\n </h2>,\n <div class=\"field-group tab-advanced__field-group\">\n <div\n // #server name\n class=\"field field-block server-name-field\"\n >\n <label class=\"label\" htmlFor=\"serverName\">\n {this.#componentLocale.tabAdvanced.serverName.label}\n </label>\n <ch-combo-box-render\n class=\"combo-box\"\n disabled={this.serverNames.length === 0}\n placeholder={\n this.serverNames.length === 0\n ? this.#componentLocale.tabAdvanced.serverName\n .disabledPlaceholder\n : \"\"\n }\n value={this.serverNamesInitialValue}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#serverNameEl = el as HTMLChComboBoxRenderElement)\n }\n model={this.serverNamesComboBoxModel}\n onInput={\n this.serverNames.length > 0 && this.#handlerServerNameInput\n }\n id=\"serverName\"\n part=\"server-name\"\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#serverNameEl)}\n </div>\n\n {/* <button\n TODO: define button handler and logic\n class=\"button-tertiary button-icon-only server-name-button\"\n aria-label=\"caption\"\n part=\"search-server-name\"\n hidden\n >\n <ch-image\n class=\"icon-xs\"\n src={this.#geminiToolsSearchPrimary}\n ></ch-image>\n </button> */}\n\n <div\n // #authentication type\n class=\"field field-block authentication-type-field\"\n >\n <label class=\"label\" htmlFor=\"authenticationType\">\n {this.#componentLocale.tabAdvanced.authenticationType.label}\n </label>\n <ch-combo-box-render\n class=\"combo-box\"\n disabled={this.authenticationTypes.length === 0}\n placeholder={\n this.authenticationTypes.length === 0\n ? this.#componentLocale.tabAdvanced.authenticationType\n .disabledPlaceholder\n : \"\"\n }\n value={this.authenticationTypesInitialValue}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#authenticationTypeEl = el as HTMLChComboBoxRenderElement)\n }\n model={this.authenticationTypesComboBoxModel}\n id=\"authenticationType\"\n part=\"authentication-type\"\n onInput={\n this.authenticationTypes.length > 0\n ? this.#handlerAuthenticationTypeInput\n : undefined\n }\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#authenticationTypeEl)}\n </div>\n\n <div\n // #database\n class=\"field field-block database-field\"\n >\n <label class=\"label\" htmlFor=\"databaseName\">\n {this.#componentLocale.tabAdvanced.databaseName.label}\n </label>\n <ch-edit\n // TODO add placeholder\n class=\"input\"\n value={this.databaseName}\n id=\"databaseName\"\n part=\"database-name\"\n ref={(el: HTMLChEditElement) =>\n (this.#databaseNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#databaseNameEl)}\n </div>\n\n {this.userNameVisible ? (\n <div\n // #username\n class=\"field field-block username-field\"\n >\n <label class=\"label\" htmlFor=\"userName\">\n {this.#componentLocale.tabAdvanced.userName.label}\n </label>\n <ch-edit\n // TODO add placeholder\n class=\"input\"\n value={this.userName}\n id=\"userName\"\n part=\"user-name\"\n ref={(el: HTMLChEditElement) =>\n (this.#userNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#userNameEl)}\n </div>\n ) : null}\n\n <div\n // #collation\n class=\"field field-block collation-field\"\n >\n <label class=\"label\" htmlFor=\"collation\">\n {this.#componentLocale.tabAdvanced.collation.label}\n </label>\n <ch-combo-box-render\n class=\"combo-box\"\n disabled={this.serverNames.length === 0}\n placeholder={\n this.collations.length === 0\n ? this.#componentLocale.tabAdvanced.collation\n .disabledPlaceholder\n : \"\"\n }\n value={this.collationsInitialValue}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#collationEl = el as HTMLChComboBoxRenderElement)\n }\n model={this.collationsComboBoxModel}\n id=\"collation\"\n part=\"collation\"\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#collationEl)}\n </div>\n\n {/* <button\n TODO: define button handler and logic \n class=\"button-tertiary button-icon-only collation-button\"\n aria-label=\"caption\"\n part=\"reset-collation\"\n >\n <ch-image\n class=\"icon-xs\"\n src={this.#geminiToolsResetPrimary}\n ></ch-image>\n </button> */}\n\n {this.passwordVisible ? (\n <div\n // #password\n class=\"field field-block password-field\"\n >\n <label class=\"label\" htmlFor=\"password\">\n {this.#componentLocale.tabAdvanced.password.label}\n </label>\n <ch-edit\n // TODO add placeholder\n class=\"input\"\n type=\"password\"\n value={this.password}\n id=\"password\"\n part=\"password\"\n ref={(el: HTMLChEditElement) =>\n (this.#passwordEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#passwordEl)}\n </div>\n ) : null}\n\n <ch-checkbox\n // #create data in knowledge base folder\n class=\"checkbox create-data-in-kb-checkbox\"\n checkedValue=\"createDataFilesInKBFolder\"\n caption={this.#componentLocale.tabAdvanced.createDataFilesInKbFolder}\n disabled={this.createDataInKbDisabled}\n part=\"create-data-in-kb\"\n id=\"createDataFilesInKBFolder\"\n ref={(el: HTMLChCheckboxElement) =>\n (this.#createDataFilesInKBFolderEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n\n {this.savePasswordVisible ? (\n <ch-checkbox\n // #save password\n class=\"checkbox save-password-checkbox\"\n checkedValue=\"password\"\n caption={this.#componentLocale.tabAdvanced.savePassword}\n part=\"save-password\"\n id=\"savePassword\"\n ref={(el: HTMLChCheckboxElement) =>\n (this.#savePasswordEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n ) : null}\n </div>\n ];\n };\n\n #renderBasic = (): HTMLElement[] => {\n return [\n <section class=\"basic__header field-group dialog-header-with-border spacing-body-inline\">\n <div\n // #prototyping target\n class=\"field field-block prototyping-target\"\n >\n <label class=\"label\" htmlFor=\"prototypingTarget\">\n {this.#componentLocale.tabBasic.prototypingTarget.label}\n </label>\n\n <ch-combo-box-render\n id=\"prototypingTarget\"\n class=\"combo-box\"\n part=\"prototyping-target\"\n disabled={this.prototypingTargets.length === 0}\n placeholder={\n this.prototypingTargets.length === 0\n ? this.#componentLocale.tabBasic.prototypingTarget\n .disabledPlaceholder\n : \"\"\n }\n value={this.prototypingTargetsInitialValue}\n model={this.prototypingTargetsComboBoxModel}\n onInput={\n this.prototypingTargets.length > 0\n ? this.#prototypingTargetValueChangedHandler\n : undefined\n }\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#prototypingTargetEl = el as HTMLChComboBoxRenderElement)\n }\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#prototypingTargetEl)}\n </div>\n\n <div\n // #user interface\n class=\"field field-block user-interface-language\"\n >\n <label class=\"label\" htmlFor=\"userInterfaceLanguage\">\n {this.#componentLocale.tabBasic.userInterfaceLanguage.label}\n </label>\n <ch-combo-box-render\n class=\"combo-box\"\n disabled={this.userInterfaceLanguages.length === 0}\n placeholder={\n this.userInterfaceLanguages.length === 0\n ? this.#componentLocale.tabBasic.userInterfaceLanguage\n .disabledPlaceholder\n : \"\"\n }\n value={this.userInterfaceLanguagesInitialValue}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#userInterfaceLanguageEl =\n el as HTMLChComboBoxRenderElement)\n }\n model={this.userInterfaceLanguagesComboBoxModel}\n id=\"userInterfaceLanguage\"\n part=\"user-interface-language\"\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#userInterfaceLanguageEl)}\n </div>\n </section>,\n\n <section\n class=\"section__back-end\"\n // backend\n >\n <h2\n // back end\n class=\"dialog-header dialog-header-with-border dialog-header__back-end subtitle-regular-xs\t text-align-center spacing-body-inline\"\n >\n {this.#componentLocale.tabBasic.backEnd.backEndLabel}\n </h2>\n <div class=\"field-group main__back-end spacing-body-inline scrollable\">\n <div\n // #prototyping environment\n class=\"field field-block\"\n >\n <label class=\"label\" htmlFor=\"prototypingEnvironment\">\n {\n this.#componentLocale.tabBasic.backEnd.prototypingEnvironment\n .label\n }\n </label>\n <ch-combo-box-render\n class=\"combo-box\"\n disabled={this.defaultPrototypingEnvironments.length === 0}\n placeholder={\n this.defaultPrototypingEnvironments.length === 0\n ? this.#componentLocale.tabBasic.backEnd\n .prototypingEnvironment.disabledPlaceholder\n : \"\"\n }\n value={this.#selectedPrototypingEnvironmentId}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#prototypingEnvironmentEl =\n el as HTMLChComboBoxRenderElement)\n }\n model={this.prototypingEnvironmentsComboBoxModel}\n onInput={this.#prototypingEnvironmentValueChangedHandler}\n part=\"prototyping-environment\"\n id=\"prototypingEnvironment\"\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#prototypingEnvironmentEl)}\n </div>\n\n <div\n // #data source\n class=\"field field-block\"\n >\n <label class=\"label\" htmlFor=\"dataSource\">\n {this.#componentLocale.tabBasic.backEnd.dataSource.label}\n </label>\n <ch-combo-box-render\n class=\"combo-box\"\n disabled={this.defaultDataSources.length === 0}\n placeholder={\n this.defaultDataSources.length === 0\n ? this.#componentLocale.tabBasic.backEnd.dataSource\n .disabledPlaceholder\n : \"\"\n }\n value={this.#selectedDataSourceId}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#dataSourceEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#dataSourceValueChangedHandler}\n model={this.defaultDataSourcesComboBoxModel}\n part=\"data-source\"\n id=\"dataSource\"\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#dataSourceEl)}\n </div>\n </div>\n </section>,\n\n <section\n class=\"section__front-end\"\n // front end\n >\n <h2 class=\"dialog-header dialog-header-with-border dialog-header__front-end subtitle-regular-xs\t text-align-center spacing-body-inline\">\n {this.#componentLocale.tabBasic.frontEnd.frontEndLabel}\n </h2>\n <div class=\"field-group main__front-end spacing-body-inline scrollable\">\n {renderChCheckboxItems(\n this.frontEnds,\n this.#frontEndCheckboxInputHandler,\n this.#frontEndsCheckedMap.get(\n this.#selectedPrototypingEnvironmentId\n )\n )}\n </div>\n </section>\n ];\n };\n\n // - - - - - - - - - -\n\n #cancelKbHandler = (): void => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n #createKbHandler = (): void => {\n const selectedFrontEndIds =\n this.#frontEndsCheckedMap.get(this.#selectedPrototypingEnvironmentId) ??\n [];\n\n this.createCallback({\n authenticationType: this.#authenticationTypeEl?.value,\n collation: this.#collationEl?.value,\n createDataFilesInKBFolder: !!this.#createDataFilesInKBFolderEl?.value,\n dataSource: this.#dataSourceEl?.value,\n databaseName: this.#databaseNameEl?.value,\n frontEnds: selectedFrontEndIds,\n kbLocation: this.#locationEl?.value,\n kbName: this.#kbNameEl?.value,\n password: this.#passwordEl?.value,\n prototypingEnvironment: this.#prototypingEnvironmentEl?.value,\n prototypingTarget: this.#prototypingTargetEl?.value,\n savePassword: !!this.#savePasswordEl?.value,\n serverName: this.#serverNameEl?.value,\n userInterfaceLanguage: this.#userInterfaceLanguageEl?.value,\n userName: this.#userNameEl?.value\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n /**\n * Disable \"Create Data in Knowledge Base Folder\" if the first Server Name\n * option is selected.\n * */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #evaluateCreateDataCheckboxEnabled = (serverNameValue: string) => {\n if (this.serverNames[0]?.id === serverNameValue) {\n this.createDataInKbDisabled = true;\n } else {\n this.createDataInKbDisabled = false;\n }\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on new-kb 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 /**\n * If \"Authentication Type\" is \"Windows Authentication\", hide User Name,\n * Password, and Save Password fields.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #evaluateUserInputsDisplay = (authenticationTypeValue: string) => {\n if (authenticationTypeValue === WINDOWS_AUTHENTICATION_VALUE) {\n this.userNameVisible = false;\n this.passwordVisible = false;\n this.savePasswordVisible = false;\n } else {\n this.userNameVisible = true;\n this.passwordVisible = true;\n this.savePasswordVisible = true;\n }\n };\n\n #frontEndCheckboxInputHandler = (\n event: ChCheckboxCustomEvent<string> | InputEvent\n ) => {\n const checkedValue = (event.target as HTMLChCheckboxElement).checkedValue;\n const checked = event.detail === checkedValue;\n this.#updateFrontEndsCheckedMap(checkedValue, checked);\n };\n\n /**\n * This function updates frontEndsCheckedMap, that contains the checked\n * checkboxes for each language front ends.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #updateFrontEndsCheckedMap = (checkboxId: string, checked: boolean) => {\n let currentState = this.#frontEndsCheckedMap.get(\n this.#selectedPrototypingEnvironmentId\n );\n if (!currentState) {\n // first time\n currentState = [];\n this.#frontEndsCheckedMap.set(\n this.#selectedPrototypingEnvironmentId,\n currentState\n );\n }\n if (checked) {\n // update by adding\n currentState.push(checkboxId);\n } else {\n // update by removing\n const checkboxIndex = currentState.findIndex(id => id === checkboxId);\n removeIndex(currentState, checkboxIndex);\n }\n };\n\n #getPrototypingEnvironments = async (): Promise<void> => {\n if (this.getPrototypingEnvironmentsCallback) {\n const selectedPrototypingTargetId = this.#prototypingTargetEl\n ? this.#prototypingTargetEl.value\n : this.prototypingTargetsInitialValue;\n const envs = await this.getPrototypingEnvironmentsCallback(\n selectedPrototypingTargetId\n );\n if (envs) {\n this.defaultPrototypingEnvironments = envs;\n }\n }\n };\n\n #getDataSources = (): void => {\n if (this.getDataSourcesCallback) {\n const selectedPrototypingEnvironmentId =\n this.#prototypingEnvironmentEl.value;\n const selectedPrototypingTargetId = this.#prototypingTargetEl.value;\n const updatedDefaultDataSourcesPromise: Promise<GxOption[]> =\n this.getDataSourcesCallback(\n selectedPrototypingEnvironmentId,\n selectedPrototypingTargetId\n );\n updatedDefaultDataSourcesPromise\n .then(result => {\n if (result.length > 0) {\n result = setSelectedItem(result, this.#selectedDataSourceId);\n this.#selectedDataSourceId = getSelectedItem(result);\n this.defaultDataSources = result;\n // set first option as selected\n this.#dataSourceEl.value =\n this.#selectedDataSourceId !== undefined\n ? this.#selectedDataSourceId\n : this.defaultDataSources[0].id;\n }\n })\n .catch(() => {\n // to do\n });\n }\n };\n\n #initialSetupAdvancedTab = () => {\n const selectedServerNameValue = this.#serverNameEl.value;\n this.#evaluateCreateDataCheckboxEnabled(selectedServerNameValue);\n\n const selectedAuthenticationType = this.#authenticationTypeEl.value;\n this.#evaluateUserInputsDisplay(selectedAuthenticationType);\n\n // map all \"Advanced Tab\" GxOption[]'s to ComboBoxModel's\n this.watchAuthenticationTypes(this.authenticationTypes);\n this.watchCollations(this.collations);\n };\n\n #initializeValidatableControlsBasicTab = () => {\n // populate #controlsValidation with the controls that could have errors.\n const validatableControls: HTMLElement[] = [\n this.#dataSourceEl,\n this.#kbNameEl,\n this.#prototypingEnvironmentEl,\n this.#prototypingTargetEl,\n this.#userInterfaceLanguageEl\n ];\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 #initializeValidatableControlsAdvancedTab = () => {\n // populate #controlsValidation with the controls that could have errors.\n const validatableControls: HTMLElement[] = [\n this.#authenticationTypeEl,\n this.#createDataFilesInKBFolderEl,\n this.#serverNameEl,\n this.#authenticationTypeEl,\n this.#databaseNameEl,\n this.#userNameEl,\n this.#collationEl,\n this.#passwordEl,\n this.#savePasswordEl\n ];\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 /**\n * @description It allows defining the DBMS that will be used in the solution\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #selectLocationHandler = (): void => {\n this.selectLocationCallback().then(kbLocation => {\n if (kbLocation) {\n this.kbLocation = kbLocation;\n } else {\n // to be defined\n }\n });\n };\n\n #locationModeChangeHandler = () => {\n this.locationMode = this.#locationModeEl.value;\n };\n\n #tabSelectionChangedHandler = (\n event: CustomEvent<{\n lastSelectedIndex: number;\n newSelectedId: string;\n newSelectedIndex: number;\n }>\n ): void => {\n if (event.detail.newSelectedId === ADVANCED_TAB_SELECTOR) {\n this.advancedTabIsVisible = true;\n // Some logic for advanced tab is done on componentDidRender lifecycle,\n // since the reference to the elements is needed.\n }\n };\n\n /**\n * Evaluates which front-end options need updates on 'getFrontEndsCallback'\n * by comparing the new state (getFrontEndsCallback result) and previous state.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #updateFrontEnds = async () => {\n const updatedFrontEnds = await this.getFrontEndsCallback(\n this.#selectedPrototypingEnvironmentId\n );\n if (updatedFrontEnds?.length > 0) {\n this.frontEnds = updatedFrontEnds;\n\n // Seed the checked map from the data's checked property so that\n // initially checked items render as checked on first load.\n if (\n !this.#frontEndsCheckedMap.has(\n this.#selectedPrototypingEnvironmentId\n )\n ) {\n const checkedIds = updatedFrontEnds\n .filter(fe => fe.checked)\n .map(fe => fe.value || fe.id);\n\n if (checkedIds.length > 0) {\n this.#frontEndsCheckedMap.set(\n this.#selectedPrototypingEnvironmentId,\n checkedIds\n );\n }\n }\n }\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section class=\"section\">\n <header\n class={{\n \"field-group\": true,\n \"dialog-header-with-border\": !this.isAdvanced,\n \"dialog-header\": this.isAdvanced,\n \"header\": true,\n \"header-one-col\": true,\n \"spacing-body-block-start\": true,\n \"spacing-body-inline\": true\n }}\n >\n <div\n // #kb name\n class=\"field field-inline kb-name\"\n >\n <label class=\"label kb-label\" htmlFor=\"kbName\">\n {this.#componentLocale.header.kbName}\n </label>\n <ch-edit\n // TODO add placeholder\n autoFocus\n class=\"input kb-input\"\n placeholder=\"SalesInventory\"\n value={this.kbName}\n ref={(el: HTMLChEditElement) =>\n (this.#kbNameEl = el as HTMLChEditElement)\n }\n id=\"kbName\"\n part=\"kb-name\"\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#kbNameEl)}\n </div>\n\n {this.canSetLocation && (\n <div class=\"location-wrapper\">\n <label class=\"label location-label\">\n {this.#componentLocale.header.kbLocation}\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#locationModeModel}\n value={LOCATION_MODE_DEFAULT}\n onChange={this.#locationModeChangeHandler}\n ref={(el: HTMLChRadioGroupRenderElement) =>\n (this.#locationModeEl =\n el as HTMLChRadioGroupRenderElement)\n }\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 ref={(el: HTMLChEditElement) =>\n (this.#locationEl = el as HTMLChEditElement)\n }\n id=\"kbLocation\"\n part=\"kb-location\"\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#locationEl)}\n </div>\n <button\n class=\"button-tertiary button-icon-only location-icon\"\n aria-label={\n this.#componentLocale.header.selectLocationButton\n }\n title={\n this.#componentLocale.header.selectLocationButton\n }\n part=\"button-select-location\"\n onClick={this.#selectLocationHandler}\n >\n <ch-image\n class=\"icon-m\"\n src={SYSTEM_ICON}\n ></ch-image>\n </button>\n </div>\n )}\n </div>\n )}\n </header>\n\n {this.isAdvanced ? (\n <ch-tab-render\n // #tab\n class={{\n scrollable: true,\n tab: true,\n [MAIN_SECTION_CLASSES]: true\n }}\n tabListPosition=\"block-start\"\n model={this.#kbSectionsModel}\n selectedId={BASIC_TAB_SELECTOR}\n overflow=\"auto\"\n contain=\"size\"\n onSelectedItemChange={\n !this.advancedTabIsVisible && this.#tabSelectionChangedHandler\n }\n >\n <div\n slot={BASIC_TAB_SELECTOR}\n class={BASIC_SECTION_PARENT_CLASSES}\n part=\"tab-button-basic\"\n >\n {this.#renderBasic()}\n </div>\n\n {this.advancedTabIsVisible && (\n <div\n slot={ADVANCED_TAB_SELECTOR}\n class=\"advanced spacing-body-inline\"\n part=\"tab-button-advanced\"\n >\n {this.#renderAdvanced()}\n </div>\n )}\n </ch-tab-render>\n ) : (\n <div class={MAIN_SECTION_CLASSES}>\n <div class={BASIC_SECTION_PARENT_CLASSES}>\n {this.#renderBasic()}\n </div>\n </div>\n )}\n\n <footer\n class={{\n \"dialog-footer\": this.isAdvanced,\n \"dialog-footer-with-border\": !this.isAdvanced,\n \"spacing-body-block-end\": true,\n \"spacing-body-inline\": true\n }}\n >\n <div class=\"buttons-spacer\">\n <button\n // #cancel\n class=\"button-secondary\"\n id=\"button-cancel\"\n onClick={this.#cancelKbHandler}\n part=\"button-cancel\"\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // #create\n class=\"button-primary\"\n id=\"button-create\"\n onClick={this.#createKbHandler}\n part=\"button-create\"\n >\n {this.#componentLocale.footer.btnCreate}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\nexport interface NewKBData {\n authenticationType: string;\n collation: string;\n createDataFilesInKBFolder: boolean;\n databaseName: string;\n dataSource: string;\n frontEnds: string[];\n kbLocation: string;\n kbName: string;\n password: string;\n prototypingEnvironment: string;\n prototypingTarget: string;\n savePassword: boolean;\n serverName: string;\n userInterfaceLanguage: string;\n userName: string;\n}\n\nexport type CreateCallback = (data: NewKBData) => Promise<FormSubmitResult>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type GetDataSourcesCallback = (\n selectedPrototypingEnvironmentId: string,\n selectedPrototypingTargetId: string\n) => Promise<GxOption[]>;\n\nexport type GetFrontEndsCallback = (\n selectedPrototypingEnvironmentId: string\n) => Promise<GxOption[]>;\n\nexport type GetPrototypingEnvironmentsCallback = (\n selectedPrototypingTargetId: string\n) => Promise<GxOption[]>;\n\nexport type SelectLocationCallback = () => Promise<string>;\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as t, g as i, h as
|
|
1
|
+
import { r as t, g as i, h as s, F as e, H as a, a as n } from "./p-9b9ccd0c.js";
|
|
2
2
|
|
|
3
3
|
import { g as o } from "./p-d42e842b.js";
|
|
4
4
|
|
|
@@ -28,34 +28,44 @@ const mapKbsModelToActionListModel = t => {
|
|
|
28
28
|
return i;
|
|
29
29
|
};
|
|
30
30
|
|
|
31
|
-
const c = "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)}";
|
|
31
|
+
const c = "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%}";
|
|
32
32
|
|
|
33
|
-
var d = undefined && undefined.__classPrivateFieldSet || function(t, i,
|
|
34
|
-
if (
|
|
35
|
-
if (
|
|
33
|
+
var d = undefined && undefined.__classPrivateFieldSet || function(t, i, s, e, a) {
|
|
34
|
+
if (e === "m") throw new TypeError("Private method is not writable");
|
|
35
|
+
if (e === "a" && !a) throw new TypeError("Private accessor was defined without a setter");
|
|
36
36
|
if (typeof i === "function" ? t !== i || !a : !i.has(t)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
37
|
-
return
|
|
37
|
+
return e === "a" ? a.call(t, s) : a ? a.value = s : i.set(t, s), s;
|
|
38
38
|
};
|
|
39
39
|
|
|
40
|
-
var f = undefined && undefined.__classPrivateFieldGet || function(t, i,
|
|
41
|
-
if (
|
|
42
|
-
if (typeof i === "function" ? t !== i || !
|
|
43
|
-
return
|
|
40
|
+
var f = undefined && undefined.__classPrivateFieldGet || function(t, i, s, e) {
|
|
41
|
+
if (s === "a" && !e) throw new TypeError("Private accessor was defined without a getter");
|
|
42
|
+
if (typeof i === "function" ? t !== i || !e : !i.has(t)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
43
|
+
return s === "m" ? e : s === "a" ? e.call(t) : e ? e.value : i.get(t);
|
|
44
44
|
};
|
|
45
45
|
|
|
46
|
-
var p, u, m, b, v, w, g, y, k, M, W, x, T, j, _, S,
|
|
46
|
+
var p, u, m, b, v, w, g, y, k, M, W, x, T, j, _, C, S, L, z, E, I, $, A, N, P, F, K, V, B;
|
|
47
47
|
|
|
48
|
-
const
|
|
48
|
+
const D = [ "resets/box-sizing", "utils/form--full", "utils/layout", "utils/typography", "utils/spacing", "components/list-box", "components/tooltip", "chameleon/scrollbar" ];
|
|
49
49
|
|
|
50
|
-
const
|
|
50
|
+
const U = o({
|
|
51
51
|
category: "system",
|
|
52
52
|
name: "information",
|
|
53
53
|
colorType: "on-surface"
|
|
54
54
|
});
|
|
55
55
|
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
56
|
+
const H = o({
|
|
57
|
+
category: "system",
|
|
58
|
+
name: "folder",
|
|
59
|
+
colorType: "primary"
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
const q = "default";
|
|
63
|
+
|
|
64
|
+
const G = "custom";
|
|
65
|
+
|
|
66
|
+
const J = class {
|
|
67
|
+
constructor(e) {
|
|
68
|
+
t(this, e);
|
|
59
69
|
p.set(this, o({
|
|
60
70
|
category: "system",
|
|
61
71
|
name: "search",
|
|
@@ -85,10 +95,11 @@ const V = class {
|
|
|
85
95
|
M.set(this, false);
|
|
86
96
|
W.set(this, void 0);
|
|
87
97
|
x.set(this, void 0);
|
|
88
|
-
T.set(this,
|
|
98
|
+
T.set(this, void 0);
|
|
99
|
+
j.set(this, (() => {
|
|
89
100
|
this.cancelCallback();
|
|
90
101
|
}));
|
|
91
|
-
|
|
102
|
+
_.set(this, (async () => {
|
|
92
103
|
this.changeConnectionCallback({
|
|
93
104
|
authenticationType: this.connectionData.authenticationType,
|
|
94
105
|
serverUrl: this.connectionData.serverUrl,
|
|
@@ -96,7 +107,22 @@ const V = class {
|
|
|
96
107
|
userPassword: this.connectionData.userPassword
|
|
97
108
|
});
|
|
98
109
|
}));
|
|
99
|
-
|
|
110
|
+
C.set(this, (t => {
|
|
111
|
+
this.locationMode = t.detail;
|
|
112
|
+
if (this.locationMode === q) {
|
|
113
|
+
this.kbLocation = "";
|
|
114
|
+
}
|
|
115
|
+
}));
|
|
116
|
+
S.set(this, (async () => {
|
|
117
|
+
const t = await this.selectLocationCallback();
|
|
118
|
+
if (t) {
|
|
119
|
+
this.kbLocation = t;
|
|
120
|
+
}
|
|
121
|
+
}));
|
|
122
|
+
L.set(this, (t => {
|
|
123
|
+
this.kbLocation = t.detail;
|
|
124
|
+
}));
|
|
125
|
+
z.set(this, (async () => {
|
|
100
126
|
if (this.versionSelectedType !== "Select") {
|
|
101
127
|
d(this, w, [], "f");
|
|
102
128
|
}
|
|
@@ -104,6 +130,7 @@ const V = class {
|
|
|
104
130
|
selectedKB: f(this, k, "f"),
|
|
105
131
|
versionSelected: this.versionSelectedType,
|
|
106
132
|
localKBName: this.localKbNameInputValue,
|
|
133
|
+
kbLocation: this.locationMode === G ? this.kbLocation || undefined : undefined,
|
|
107
134
|
versionList: f(this, w, "f")
|
|
108
135
|
}).then((t => {
|
|
109
136
|
this.validatableControls = l(t, this.validatableControls);
|
|
@@ -111,9 +138,9 @@ const V = class {
|
|
|
111
138
|
}));
|
|
112
139
|
// TODO: evaluate if this should be a global helper function.
|
|
113
140
|
// It is used on other dialogs as well.
|
|
114
|
-
|
|
115
|
-
var i,
|
|
116
|
-
return ((
|
|
141
|
+
E.set(this, (t => {
|
|
142
|
+
var i, e, a;
|
|
143
|
+
return ((e = (i = this.validatableControls) === null || i === void 0 ? void 0 : i.get(t === null || t === void 0 ? void 0 : t.id)) === null || e === void 0 ? void 0 : e.hasError) && ((a = this.validatableControls.get(t.id)) === null || a === void 0 ? void 0 : a.message) && s("ch-tooltip", {
|
|
117
144
|
class: "tooltip",
|
|
118
145
|
actionElement: t,
|
|
119
146
|
blockAlign: r.tooltipSettings.blockAlign,
|
|
@@ -121,11 +148,11 @@ const V = class {
|
|
|
121
148
|
delay: r.tooltipSettings.delay
|
|
122
149
|
}, this.validatableControls.get(t.id).message);
|
|
123
150
|
}));
|
|
124
|
-
|
|
151
|
+
I.set(this, (t => {
|
|
125
152
|
this.filterValue = t.detail.toLowerCase();
|
|
126
153
|
this.kbsFilteredActionListModel = f(this, v, "f").filter((t => t.caption.toLowerCase().includes(this.filterValue)));
|
|
127
154
|
}));
|
|
128
|
-
|
|
155
|
+
$.set(this, (async () => {
|
|
129
156
|
await this.getGXserverKBsCallback({
|
|
130
157
|
authenticationType: this.connectionData.authenticationType,
|
|
131
158
|
serverUrl: this.connectionData.serverUrl,
|
|
@@ -137,9 +164,9 @@ const V = class {
|
|
|
137
164
|
this.filterValue = "";
|
|
138
165
|
}));
|
|
139
166
|
}));
|
|
140
|
-
|
|
167
|
+
A.set(this, (() => {
|
|
141
168
|
// populate validatableControls with the controls that could have errors.
|
|
142
|
-
const t = [ f(this,
|
|
169
|
+
const t = [ f(this, T, "f") ];
|
|
143
170
|
t.forEach((t => {
|
|
144
171
|
if (t.id) {
|
|
145
172
|
this.validatableControls.set(t.id, {
|
|
@@ -150,11 +177,11 @@ const V = class {
|
|
|
150
177
|
}
|
|
151
178
|
}));
|
|
152
179
|
}));
|
|
153
|
-
|
|
180
|
+
N.set(this, (t => {
|
|
154
181
|
this.localKbNameInputValue = t.detail;
|
|
155
182
|
d(this, M, true, "f");
|
|
156
183
|
}));
|
|
157
|
-
|
|
184
|
+
P.set(this, (async () => {
|
|
158
185
|
if (this.selectKBVersionsCallback) {
|
|
159
186
|
await this.selectKBVersionsCallback(f(this, k, "f")).then((t => {
|
|
160
187
|
if (t === null || t === void 0 ? void 0 : t.length) {
|
|
@@ -176,47 +203,47 @@ const V = class {
|
|
|
176
203
|
}));
|
|
177
204
|
}
|
|
178
205
|
}));
|
|
179
|
-
|
|
206
|
+
F.set(this, (t => {
|
|
180
207
|
var i;
|
|
181
|
-
const
|
|
182
|
-
if (
|
|
208
|
+
const s = (i = t.detail[0]) === null || i === void 0 ? void 0 : i.item;
|
|
209
|
+
if (s === undefined) {
|
|
183
210
|
this.enableSelectVersionsButton = false;
|
|
184
211
|
d(this, k, undefined, "f");
|
|
185
212
|
return;
|
|
186
213
|
}
|
|
187
214
|
this.enableSelectVersionsButton = true;
|
|
188
|
-
d(this, k,
|
|
215
|
+
d(this, k, s.id, "f");
|
|
189
216
|
if (f(this, M, "f")) {
|
|
190
217
|
return;
|
|
191
218
|
}
|
|
192
|
-
this.localKbNameInputValue =
|
|
219
|
+
this.localKbNameInputValue = s.caption;
|
|
193
220
|
if (this.versionSelectedType === "Select") {
|
|
194
221
|
this.versionsValueInput = "";
|
|
195
222
|
d(this, w, [], "f");
|
|
196
223
|
}
|
|
197
224
|
}));
|
|
198
|
-
|
|
225
|
+
K.set(this, (t => {
|
|
199
226
|
this.versionSelectedType = t.detail;
|
|
200
227
|
}));
|
|
201
|
-
|
|
228
|
+
V.set(this, (t => {
|
|
202
229
|
t.sort(((t, i) => {
|
|
203
|
-
var
|
|
204
|
-
return (
|
|
230
|
+
var s, e;
|
|
231
|
+
return (s = t.caption) === null || s === void 0 ? void 0 : s.toLocaleLowerCase().localeCompare((e = i.caption) === null || e === void 0 ? void 0 : e.toLocaleLowerCase());
|
|
205
232
|
}));
|
|
206
233
|
}));
|
|
207
|
-
|
|
234
|
+
B.set(this, (() => s("footer", {
|
|
208
235
|
class: "footer dialog-footer-with-border spacing-body-inline spacing-body-block-end"
|
|
209
|
-
},
|
|
236
|
+
}, s("div", {
|
|
210
237
|
class: "buttons-spacer"
|
|
211
|
-
},
|
|
238
|
+
}, s("button", {
|
|
212
239
|
// cancel button
|
|
213
240
|
class: "button-secondary",
|
|
214
|
-
onClick: f(this,
|
|
241
|
+
onClick: f(this, j, "f"),
|
|
215
242
|
part: "button button-cancel"
|
|
216
|
-
}, f(this, b, "f").footer.cancel),
|
|
243
|
+
}, f(this, b, "f").footer.cancel), s("button", {
|
|
217
244
|
// create kb button
|
|
218
245
|
class: "button-primary",
|
|
219
|
-
onClick: this.enableSelectVersionsButton && f(this,
|
|
246
|
+
onClick: this.enableSelectVersionsButton && f(this, z, "f"),
|
|
220
247
|
disabled: !this.enableSelectVersionsButton,
|
|
221
248
|
part: "button button-create-kb"
|
|
222
249
|
}, f(this, b, "f").footer.createKb)))));
|
|
@@ -228,19 +255,30 @@ const V = class {
|
|
|
228
255
|
this.validatableControls = new Map;
|
|
229
256
|
this.versionSelectedType = undefined;
|
|
230
257
|
this.versionsValueInput = "";
|
|
258
|
+
this.locationMode = q;
|
|
259
|
+
this.kbLocation = undefined;
|
|
260
|
+
this.canSetLocation = false;
|
|
231
261
|
this.connectionData = undefined;
|
|
232
262
|
this.cancelCallback = undefined;
|
|
233
263
|
this.changeConnectionCallback = undefined;
|
|
234
264
|
this.createKBCallback = undefined;
|
|
235
265
|
this.getGXserverKBsCallback = undefined;
|
|
266
|
+
this.selectLocationCallback = undefined;
|
|
236
267
|
this.selectKBVersionsCallback = undefined;
|
|
237
268
|
}
|
|
238
269
|
async componentDidLoad() {
|
|
239
|
-
await f(this,
|
|
270
|
+
await f(this, $, "f").call(this);
|
|
240
271
|
this.loading = false;
|
|
241
272
|
}
|
|
242
273
|
async componentWillLoad() {
|
|
243
274
|
d(this, b, await h.getComponentStrings(this.el), "f");
|
|
275
|
+
d(this, W, [ {
|
|
276
|
+
value: q,
|
|
277
|
+
caption: f(this, b, "f").kb.kbLocationDefault
|
|
278
|
+
}, {
|
|
279
|
+
value: G,
|
|
280
|
+
caption: f(this, b, "f").kb.kbLocationCustom
|
|
281
|
+
} ], "f");
|
|
244
282
|
}
|
|
245
283
|
/**
|
|
246
284
|
* Suspends or reactivates the shortcuts
|
|
@@ -252,109 +290,138 @@ const V = class {
|
|
|
252
290
|
}
|
|
253
291
|
}
|
|
254
292
|
render() {
|
|
255
|
-
return
|
|
293
|
+
return s(a, {
|
|
256
294
|
class: "widget"
|
|
257
|
-
},
|
|
258
|
-
model:
|
|
259
|
-
}),
|
|
295
|
+
}, s("ch-theme", {
|
|
296
|
+
model: D
|
|
297
|
+
}), s("ch-shortcuts", {
|
|
260
298
|
src: f(this, y, "f"),
|
|
261
299
|
ref: t => d(this, g, t, "f")
|
|
262
|
-
}),
|
|
300
|
+
}), s("section", {
|
|
263
301
|
class: "section"
|
|
264
|
-
},
|
|
302
|
+
}, s("header", {
|
|
265
303
|
class: "header dialog-header-with-border space-body spacing-body-inline spacing-body-block-start"
|
|
266
|
-
},
|
|
304
|
+
}, s("div", {
|
|
267
305
|
class: "field field-block"
|
|
268
|
-
},
|
|
306
|
+
}, s("label", {
|
|
269
307
|
class: "label"
|
|
270
|
-
}, f(this, b, "f").header.serverUrl),
|
|
308
|
+
}, f(this, b, "f").header.serverUrl), s("p", null, this.connectionData.serverUrl)), s("div", {
|
|
271
309
|
class: "field field-block"
|
|
272
|
-
},
|
|
310
|
+
}, s("label", {
|
|
273
311
|
class: "label"
|
|
274
|
-
}, f(this, b, "f").header.user),
|
|
312
|
+
}, f(this, b, "f").header.user), s("p", null, this.connectionData.userName)), s("button", {
|
|
275
313
|
id: "change-connection-button",
|
|
276
314
|
class: "button-tertiary button-change",
|
|
277
|
-
onClick: f(this,
|
|
278
|
-
}, f(this, b, "f").header.change)),
|
|
315
|
+
onClick: f(this, _, "f")
|
|
316
|
+
}, f(this, b, "f").header.change)), s("section", {
|
|
279
317
|
class: "main field-group spacing-body"
|
|
280
|
-
}, this.loading ?
|
|
318
|
+
}, this.loading ? s("gx-ide-loader", {
|
|
281
319
|
loaderTitle: f(this, b, "f").loader.title,
|
|
282
320
|
description: f(this, b, "f").loader.description,
|
|
283
321
|
show: true
|
|
284
|
-
}) : e
|
|
322
|
+
}) : s(e, null, s("ch-edit", {
|
|
285
323
|
class: "input search-kbs",
|
|
286
324
|
id: "local-kb-name",
|
|
287
325
|
startImgSrc: f(this, p, "f"),
|
|
288
326
|
type: "search",
|
|
289
|
-
onInput: f(this,
|
|
327
|
+
onInput: f(this, I, "f"),
|
|
290
328
|
placeholder: f(this, b, "f").kb.searchKbsPlaceholder
|
|
291
|
-
}), f(this, v, "f").length === 0 || this.kbsFilteredActionListModel.length === 0 ?
|
|
329
|
+
}), f(this, v, "f").length === 0 || this.kbsFilteredActionListModel.length === 0 ? s("div", {
|
|
292
330
|
class: "list-box"
|
|
293
|
-
},
|
|
294
|
-
stateIconSrc:
|
|
331
|
+
}, s("gx-ide-empty-state", {
|
|
332
|
+
stateIconSrc: U,
|
|
295
333
|
stateTitle: f(this, b, "f").emptyKBsText,
|
|
296
334
|
isAnimated: true
|
|
297
|
-
})) :
|
|
335
|
+
})) : s("ch-action-list-render", {
|
|
298
336
|
selection: "single",
|
|
299
337
|
class: "list-box",
|
|
300
|
-
onSelectedItemsChange: f(this,
|
|
338
|
+
onSelectedItemsChange: f(this, F, "f"),
|
|
301
339
|
model: this.kbsFilteredActionListModel,
|
|
302
|
-
sortItemsCallback: f(this,
|
|
303
|
-
}),
|
|
340
|
+
sortItemsCallback: f(this, V, "f")
|
|
341
|
+
}), s("div", {
|
|
304
342
|
class: "versions-container field-group"
|
|
305
|
-
},
|
|
343
|
+
}, s("ch-radio-group-render", {
|
|
306
344
|
class: "radio-group",
|
|
307
345
|
model: f(this, m, "f"),
|
|
308
|
-
onChange: f(this,
|
|
346
|
+
onChange: f(this, K, "f"),
|
|
309
347
|
value: f(this, m, "f")[0].value,
|
|
310
348
|
ref: t => {
|
|
311
|
-
d(this,
|
|
312
|
-
if (f(this,
|
|
313
|
-
this.versionSelectedType = f(this,
|
|
349
|
+
d(this, x, t, "f");
|
|
350
|
+
if (f(this, x, "f")) {
|
|
351
|
+
this.versionSelectedType = f(this, x, "f").value;
|
|
314
352
|
}
|
|
315
353
|
}
|
|
316
|
-
}), this.versionSelectedType === "Select" &&
|
|
354
|
+
}), this.versionSelectedType === "Select" && s("div", {
|
|
317
355
|
class: "versions-container__item field-group"
|
|
318
|
-
},
|
|
356
|
+
}, s("div", {
|
|
319
357
|
class: "field field-block"
|
|
320
|
-
},
|
|
358
|
+
}, s("label", {
|
|
321
359
|
class: "label",
|
|
322
360
|
htmlFor: "control-id-1"
|
|
323
|
-
}, f(this, b, "f").kb.versionsLabel),
|
|
361
|
+
}, f(this, b, "f").kb.versionsLabel), s("div", {
|
|
324
362
|
class: "versions-container__input"
|
|
325
|
-
},
|
|
363
|
+
}, s("ch-edit", {
|
|
326
364
|
class: "input",
|
|
327
365
|
readonly: true,
|
|
328
366
|
placeholder: this.enableSelectVersionsButton ? f(this, b, "f").kb.versionsPlaceholder : f(this, b, "f").kb.versionsPlaceholderDisabled,
|
|
329
367
|
value: this.versionsValueInput
|
|
330
|
-
}),
|
|
368
|
+
}), s("button", {
|
|
331
369
|
id: "select-version-button",
|
|
332
370
|
class: "button-tertiary button-icon-only",
|
|
333
|
-
onClick: f(this,
|
|
371
|
+
onClick: f(this, P, "f"),
|
|
334
372
|
disabled: !this.enableSelectVersionsButton
|
|
335
|
-
},
|
|
373
|
+
}, s("ch-image", {
|
|
336
374
|
src: f(this, u, "f"),
|
|
337
375
|
class: "icon-m",
|
|
338
376
|
disabled: !this.enableSelectVersionsButton
|
|
339
|
-
})))))),
|
|
377
|
+
})))))), s("div", {
|
|
340
378
|
class: "field field-block"
|
|
341
|
-
},
|
|
379
|
+
}, s("label", {
|
|
342
380
|
class: "label",
|
|
343
381
|
htmlFor: "localKbName"
|
|
344
|
-
}, f(this, b, "f").kb.localKbNameLabel),
|
|
382
|
+
}, f(this, b, "f").kb.localKbNameLabel), s("ch-edit", {
|
|
345
383
|
// local kb name
|
|
346
384
|
class: "input",
|
|
347
|
-
id: "
|
|
385
|
+
id: "localKbName",
|
|
348
386
|
value: this.localKbNameInputValue,
|
|
349
|
-
onInput: f(this,
|
|
387
|
+
onInput: f(this, N, "f"),
|
|
350
388
|
placeholder: f(this, b, "f").kb.localKbNamePlaceholder,
|
|
351
389
|
ref: t => {
|
|
352
|
-
d(this,
|
|
353
|
-
if (f(this,
|
|
354
|
-
f(this,
|
|
390
|
+
d(this, T, t, "f");
|
|
391
|
+
if (f(this, T, "f")) {
|
|
392
|
+
f(this, A, "f").call(this);
|
|
355
393
|
}
|
|
356
394
|
}
|
|
357
|
-
}), f(this,
|
|
395
|
+
}), f(this, E, "f").call(this, f(this, T, "f"))), this.canSetLocation && s("div", {
|
|
396
|
+
class: "field field-block"
|
|
397
|
+
}, s("label", {
|
|
398
|
+
class: "label",
|
|
399
|
+
htmlFor: "kbLocation"
|
|
400
|
+
}, f(this, b, "f").kb.kbLocation), s("ch-radio-group-render", {
|
|
401
|
+
class: "radio-group",
|
|
402
|
+
id: "kbLocation",
|
|
403
|
+
model: f(this, W, "f"),
|
|
404
|
+
value: q,
|
|
405
|
+
onChange: f(this, C, "f")
|
|
406
|
+
}), this.locationMode === G && s("div", {
|
|
407
|
+
class: "location-custom-wrapper"
|
|
408
|
+
}, s("div", {
|
|
409
|
+
class: "location-field"
|
|
410
|
+
}, s("ch-edit", {
|
|
411
|
+
class: "input",
|
|
412
|
+
value: this.kbLocation,
|
|
413
|
+
id: "kbLocation",
|
|
414
|
+
onInput: f(this, L, "f")
|
|
415
|
+
})), s("button", {
|
|
416
|
+
class: "button-tertiary button-icon-only",
|
|
417
|
+
"aria-label": f(this, b, "f").kb.selectLocationButton,
|
|
418
|
+
title: f(this, b, "f").kb.selectLocationButton,
|
|
419
|
+
onClick: f(this, S, "f")
|
|
420
|
+
}, s("ch-image", {
|
|
421
|
+
class: "icon-m",
|
|
422
|
+
type: "mask",
|
|
423
|
+
src: H
|
|
424
|
+
})))))), f(this, B, "f").call(this)));
|
|
358
425
|
}
|
|
359
426
|
static get assetsDirs() {
|
|
360
427
|
return [ "gx-ide-assets/create-kb-from-server" ];
|
|
@@ -367,10 +434,11 @@ const V = class {
|
|
|
367
434
|
p = new WeakMap, u = new WeakMap, m = new WeakMap, b = new WeakMap, v = new WeakMap,
|
|
368
435
|
w = new WeakMap, g = new WeakMap, y = new WeakMap, k = new WeakMap, M = new WeakMap,
|
|
369
436
|
W = new WeakMap, x = new WeakMap, T = new WeakMap, j = new WeakMap, _ = new WeakMap,
|
|
370
|
-
|
|
371
|
-
|
|
437
|
+
C = new WeakMap, S = new WeakMap, L = new WeakMap, z = new WeakMap, E = new WeakMap,
|
|
438
|
+
I = new WeakMap, $ = new WeakMap, A = new WeakMap, N = new WeakMap, P = new WeakMap,
|
|
439
|
+
F = new WeakMap, K = new WeakMap, V = new WeakMap, B = new WeakMap;
|
|
372
440
|
|
|
373
|
-
|
|
441
|
+
J.style = c;
|
|
374
442
|
|
|
375
|
-
export {
|
|
376
|
-
//# sourceMappingURL=p-
|
|
443
|
+
export { J as gx_ide_create_kb_from_server };
|
|
444
|
+
//# sourceMappingURL=p-cf61384e.entry.js.map
|