@genexus/genexus-ide-ui 0.0.144 → 0.0.145

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +102 -60
  3. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +25 -22
  6. package/dist/collection/components/create-kb-from-server/create-kb-from-server.js +189 -177
  7. package/dist/collection/components/create-kb-from-server/create-kb-from-server.js.map +1 -1
  8. package/dist/collection/components/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +13 -14
  9. package/dist/components/gx-ide-create-kb-from-server.js +153 -99
  10. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  11. package/dist/esm/genexus-ide-ui.js +1 -1
  12. package/dist/esm/gx-ide-create-kb-from-server.entry.js +102 -60
  13. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  14. package/dist/esm/loader.js +1 -1
  15. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  16. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  17. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +13 -14
  18. package/dist/genexus-ide-ui/{p-2191d598.entry.js → p-3051fa72.entry.js} +185 -135
  19. package/dist/genexus-ide-ui/p-3051fa72.entry.js.map +1 -0
  20. package/dist/types/components/create-kb-from-server/create-kb-from-server.d.ts +51 -49
  21. package/dist/types/components.d.ts +43 -67
  22. package/package.json +1 -1
  23. package/dist/genexus-ide-ui/p-2191d598.entry.js.map +0 -1
@@ -1,24 +1,28 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, getAssetPath, h, Host } from '@stencil/core/internal/client';
2
2
  import { L as Locale } from './locale.js';
3
- import { d as defineCustomElement$i } from './icon.js';
4
- import { d as defineCustomElement$h } from './ch-shortcuts2.js';
5
- import { d as defineCustomElement$g } from './ch-window2.js';
6
- import { d as defineCustomElement$f } from './ch-window-close2.js';
7
- import { d as defineCustomElement$e } from './container.js';
8
- import { d as defineCustomElement$d } from './list-selector.js';
9
- import { d as defineCustomElement$c } from './list-selector-item.js';
10
- import { d as defineCustomElement$b } from './title2.js';
11
- import { d as defineCustomElement$a } from './button.js';
12
- import { d as defineCustomElement$9 } from './form-radio.js';
13
- import { d as defineCustomElement$8 } from './form-radio-group.js';
14
- import { d as defineCustomElement$7 } from './form-text.js';
15
- import { d as defineCustomElement$6 } from './icon2.js';
16
- import { d as defineCustomElement$5 } from './gxg-label2.js';
3
+ import { r as renderFormItems } from './common.js';
4
+ import { f as formSubmitValidation } from './form-validation.js';
5
+ import { d as defineCustomElement$k } from './icon.js';
6
+ import { d as defineCustomElement$j } from './ch-shortcuts2.js';
7
+ import { d as defineCustomElement$i } from './ch-window2.js';
8
+ import { d as defineCustomElement$h } from './ch-window-close2.js';
9
+ import { d as defineCustomElement$g } from './container.js';
10
+ import { d as defineCustomElement$f } from './title2.js';
11
+ import { d as defineCustomElement$e } from './button.js';
12
+ import { d as defineCustomElement$d } from './combo-box.js';
13
+ import { d as defineCustomElement$c } from './combo-box-item.js';
14
+ import { d as defineCustomElement$b } from './form-checkbox.js';
15
+ import { d as defineCustomElement$a } from './form-radio.js';
16
+ import { d as defineCustomElement$9 } from './form-text.js';
17
+ import { d as defineCustomElement$8 } from './icon2.js';
18
+ import { d as defineCustomElement$7 } from './gxg-label2.js';
19
+ import { d as defineCustomElement$6 } from './list-box.js';
20
+ import { d as defineCustomElement$5 } from './list-box-item.js';
17
21
  import { d as defineCustomElement$4 } from './shortcuts.js';
18
22
  import { d as defineCustomElement$3 } from './title.js';
19
23
  import { d as defineCustomElement$2 } from './tooltip.js';
20
24
 
21
- const createKbFromServerCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-container{display:flex;height:100%;width:100%;box-sizing:border-box}p{margin:0;font-size:var(--mer-font__size--xxs)}:host{display:block;border:1px solid var(--gxg-border-color--regular);background-color:var(--mer-color__surface)}.header{display:grid;gap:var(--mer-spacing--md);grid-template-rows:auto;grid-template-columns:1fr 1fr min-content;align-items:center;padding:var(--mer-spacing--sm);border-block-end:1px solid var(--mer-border-color__on-elevation--01)}.header__item{display:flex;flex-direction:column;gap:var(--mer-spacing--xxxs)}.main{display:flex;flex-direction:column;gap:var(--mer-spacing--sm);padding:var(--mer-spacing--sm)}.kbs-list{max-height:200px}.versions-container{display:flex;flex-direction:column}.versions-container__input{display:flex;gap:8px}";
25
+ const createKbFromServerCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-container{display:flex;height:100%;width:100%;box-sizing:border-box}p{margin:0;font-size:var(--mer-font__size--xxs)}:host{display:block;border:1px solid var(--gxg-border-color--regular);background-color:var(--mer-color__surface)}.grid-data{grid-template-columns:repeat(2, 1fr)}.grid-data-account{grid-template-columns:auto 1fr}.grid-data-account>:nth-child(1){grid-area:1/1/2/3}.grid-data-account>:nth-child(6){grid-area:4/2/5/3}.grid-data-kbs{display:flex;flex-direction:column;gap:var(--gx-ide-grid-row-gap)}.grid-data-kbs .search-kbs{width:100%;display:flex}.grid-data-kbs .box-kbs{height:150px}.grid-data-kbs-footer{display:flex}.flex{display:flex}.flex>:nth-child(2){flex:1}";
22
26
 
23
27
  const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCreateKbFromServer extends HTMLElement {
24
28
  constructor() {
@@ -28,84 +32,104 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
28
32
  this.componentDidRenderFirstTime = createEvent(this, "componentDidRenderFirstTime", 7);
29
33
  this.renderedFirstTime = false;
30
34
  this.shortcutsSrc = getAssetPath(`./gx-ide-assets/create-kb-from-server/shortcuts.json`);
35
+ this.kbIdSelected = null;
36
+ this.authenticationTypes = [];
31
37
  // 7.LISTENERS //
32
38
  // 8.PUBLIC METHODS API //
33
39
  // 9.LOCAL METHODS //
34
- this.init = async () => {
35
- if (this.getGXserverKBsCallback) {
36
- await this.getGXserverKBsCallback({
37
- serverUrl: this.serverUrl,
38
- user: this.userName,
39
- password: this.userPassword
40
- }).then(result => {
41
- this.kbsData = result;
42
- });
43
- }
44
- // get version option
45
- this.versionSelectedType = this.versionSelectedTypeEl
46
- .value;
40
+ this.setAuthenticationTypes = () => {
41
+ this.authenticationTypes = [
42
+ {
43
+ id: "genexus",
44
+ value: "genexus",
45
+ label: this._componentLocale.authenticationTypes.genexusAccount
46
+ },
47
+ {
48
+ id: "local",
49
+ value: "local",
50
+ label: this._componentLocale.authenticationTypes.local
51
+ }
52
+ ];
47
53
  };
48
- this.cancelHandler = () => {
49
- if (this.cancelCallback) {
50
- this.cancelCallback();
51
- }
54
+ this.addEventListeners = () => {
55
+ this.serverUrlsEl.addEventListener("valueChanged", () => {
56
+ this.reset();
57
+ });
58
+ this.searchKBEl.addEventListener("valueChanged", (e) => {
59
+ this.kbNameEl.value = "";
60
+ this.kbIdSelected = null;
61
+ this.kbSearchText = e.detail;
62
+ });
63
+ this.listBoxEl.addEventListener("selectionChanged", (ev) => {
64
+ const selectedItems = ev.detail.items;
65
+ let selectedItem;
66
+ if (selectedItems.length > 0) {
67
+ selectedItem = ev.detail.items[0];
68
+ }
69
+ if (selectedItem) {
70
+ this.kbIdSelected = selectedItem.value;
71
+ const kbSelected = this.kbs.find(kb => kb.id === this.kbIdSelected);
72
+ if (kbSelected) {
73
+ this.kbNameEl.value = kbSelected.name;
74
+ }
75
+ }
76
+ });
52
77
  };
53
- this.createHandler = async () => {
78
+ this.createKbHandler = () => {
54
79
  if (this.createKBCallback) {
55
- this.createKBCallback(this.selectedKbId, this.versionSelectedType, this.localKBNameEl.value, this.kbVersionsIds);
56
- }
57
- };
58
- this.changeConnectionHandler = async () => {
59
- if (this.changeConnectionCallback) {
60
- this.changeConnectionCallback({
61
- serverUrl: this.serverUrl,
62
- user: this.userName,
63
- password: this.userPassword
80
+ const createKBCallbackPromise = this.createKBCallback({
81
+ id: this.kbIdSelected,
82
+ name: this.kbNameEl.value
83
+ });
84
+ createKBCallbackPromise.then((formSubmitResult) => {
85
+ formSubmitValidation(formSubmitResult, this);
64
86
  });
65
87
  }
66
88
  };
67
- this.renderKbs = () => {
68
- return this.kbsData.map(kb => {
69
- return (h("gx-ide-list-selector-item", { itemId: kb.id, itemValue: kb.name }));
70
- });
71
- };
72
- this.selectionChangedHandler = (event) => {
73
- this.selectedKbId = event.detail[0].itemId;
74
- };
75
- this.selectedVersionHandler = async () => {
76
- if (this.selectKBVersionsCallback) {
77
- await this.selectKBVersionsCallback(this.selectedKbId).then(result => {
78
- if (result === null || result === void 0 ? void 0 : result.length) {
79
- this.kbVersions = result;
80
- this.kbVersionsIds = result.map(version => version.id.toString());
89
+ this.connectCallbackHandler = () => {
90
+ var _a, _b;
91
+ if (this.connectCallback) {
92
+ const connectCallbackPromise = this.connectCallback({
93
+ serverUrl: this.serverUrlsEl.value,
94
+ authenticationType: this.authenticationTypeEl.value,
95
+ user: (_a = this.userNameEl) === null || _a === void 0 ? void 0 : _a.value,
96
+ password: (_b = this.passwordEl) === null || _b === void 0 ? void 0 : _b.value
97
+ });
98
+ connectCallbackPromise.then((connectionResultData) => {
99
+ formSubmitValidation(connectionResultData.formResult, this);
100
+ if (connectionResultData.formResult.success &&
101
+ connectionResultData.kbs) {
102
+ this.kbs = connectionResultData.kbs;
103
+ this.selectionKbDisabled = false;
81
104
  }
82
105
  });
83
106
  }
84
107
  };
85
- this.versionsChangedHandler = (event) => {
86
- this.versionSelectedType = event.detail.value;
87
- };
88
- this.kbsData = [];
89
- this.kbVersions = [];
90
- this.kbVersionsIds = [];
91
- this.versionSelectedType = undefined;
108
+ this.selectionKbDisabled = true;
109
+ this.kbs = [];
110
+ this.kbSearchText = "";
92
111
  this.displayTitle = false;
93
- this.serverUrl = undefined;
94
- this.userName = undefined;
95
- this.userPassword = undefined;
96
- this.getGXserverKBsCallback = undefined;
97
- this.changeConnectionCallback = undefined;
112
+ this.connectCallback = undefined;
98
113
  this.createKBCallback = undefined;
99
- this.selectKBVersionsCallback = undefined;
100
- this.cancelCallback = undefined;
114
+ this.enableCustomServer = true;
115
+ this.kbName = undefined;
116
+ this.password = undefined;
117
+ this.serverUrls = undefined;
118
+ this.userName = undefined;
119
+ }
120
+ watchPropHandler(newKbs) {
121
+ /* When the list of servers are updated, the first server is selected by default */
122
+ this.kbIdSelected = newKbs[0].id;
123
+ this.kbName = newKbs[0].name;
101
124
  }
102
125
  // 6.METHODS //
103
126
  async componentWillLoad() {
104
127
  this._componentLocale = await Locale.getComponentStrings(this.el);
128
+ this.setAuthenticationTypes();
105
129
  }
106
130
  componentDidLoad() {
107
- this.searchKbsEl.focus();
108
- this.init();
131
+ this.serverUrlsEl.focus();
132
+ this.addEventListeners();
109
133
  }
110
134
  componentDidRender() {
111
135
  if (!this.renderedFirstTime) {
@@ -113,34 +137,54 @@ const GxIdeCreateKbFromServer$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeCr
113
137
  this.renderedFirstTime = true;
114
138
  }
115
139
  }
140
+ reset() {
141
+ this.kbs = [];
142
+ this.kbIdSelected = null;
143
+ this.selectionKbDisabled = true;
144
+ this.searchKBEl.value = "";
145
+ this.kbSearchText = "";
146
+ }
147
+ // 10.RENDER() FUNCTION //
116
148
  // 11.RENDER() FUNCTION //
117
149
  render() {
118
- return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper" }, h("gx-ide-container", { slimmerFooter: true, noContentPadding: true, noContentGap: true, containerTitle: this.displayTitle ? this._componentLocale.componentName : null }, h("div", { class: "header" }, h("div", { class: "header__item" }, h("gxg-label", { labelPosition: "start", class: "kb-label" }, this._componentLocale.header.serverUrl), h("p", null, this.serverUrl)), h("div", { class: "header__item" }, h("gxg-label", { labelPosition: "start", class: "kb-label" }, this._componentLocale.header.user), h("p", null, this.userName)), h("gxg-button", { type: "secondary-text-only", class: "header__button", onClick: this.changeConnectionHandler }, this._componentLocale.header.change)), h("main", { class: "main" }, h("gxg-form-text", { icon: "gemini-tools/search", iconPosition: "start", placeholder: this._componentLocale.main.searchKB, maxWidth: "300px", ref: el => (this.searchKbsEl = el) }), h("gx-ide-list-selector", { listName: "kbs-list", ellipsis: true, onSelectionChanged: this.selectionChangedHandler, class: "kbs-list" }, this.renderKbs()), h("gxg-form-radio-group", { row: true, onChange: this.versionsChangedHandler, ref: el => (this.versionSelectedTypeEl =
119
- el) }, h("gxg-form-radio", { label: this._componentLocale.main.trunkVersion, id: "Trunk", value: "Trunk" }), h("gxg-form-radio", { label: this._componentLocale.main.allVersions, id: "All", value: "All" }), h("gxg-form-radio", { label: this._componentLocale.main.selectVersion, id: "Select", value: "Select" })), h("div", { class: "versions-container" }, h("gxg-label", { labelPosition: "above" }, this._componentLocale.main.selectVersion), h("div", { class: "versions-container__input" }, h("gxg-form-text", { readonly: true, value: `${this.kbVersions.length.toString()} versions selected` }), h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/show-more-horizontal", onClick: this.selectedVersionHandler }))), h("gxg-form-text", { label: "Local KB Name", labelPosition: "above", ref: el => (this.localKBNameEl = el) })), h("gxg-button", { type: "outlined", slot: "footer-end", onClick: this.cancelHandler }, this._componentLocale.footer.cancel), h("gxg-button", { onClick: this.createHandler, slot: "footer-end" }, this._componentLocale.footer.create))), h("gxg-shortcuts", { src: this.shortcutsSrc })));
150
+ return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper" }, h("gx-ide-container", { containerTitle: this.displayTitle ? this._componentLocale.componentName : null }, h("div", { class: "flex" }, h("gxg-label", { labelPosition: "start", class: "kb-label" }, this._componentLocale.label.serverUrl), h("gxg-combo-box", { disableFilter: !this.enableCustomServer, ref: (el) => (this.serverUrlsEl = el), class: "server-urls-combo-box", part: "server-urls" }, this.serverUrls
151
+ ? renderFormItems("gxg-combo-box-item", this.serverUrls.map(sUrl => ({
152
+ id: sUrl,
153
+ label: sUrl,
154
+ value: sUrl
155
+ })), "server-urls")
156
+ : null)), h("div", { class: "grid grid-data" }, h("div", null, h("div", { class: "grid grid-data-account" }, h("gxg-combo-box", { "tool-tip": true, disableFilter: true, value: this.authenticationTypes[0].id, ref: (el) => (this.authenticationTypeEl = el), class: "authentication-type", part: "authentication-type", onValueChanged: this.evaluateAuthenticationType }, renderFormItems("gxg-combo-box-item", this.authenticationTypes, "authentication-type")), h("gxg-label", { labelPosition: "start", class: "kb-label" }, `${this._componentLocale.label.userName}:`), h("gxg-form-text", { ref: (el) => (this.userNameEl = el), "tool-tip": true, value: this.userName, class: "user-name", part: "user-name" }), h("gxg-label", { labelPosition: "start", class: "kb-label" }, `${this._componentLocale.label.password}:`), h("gxg-form-text", { "tool-tip": true, password: true, ref: (el) => (this.passwordEl = el), value: this.password, class: "password", part: "password" }), h("div", null, h("gxg-button", { id: "button-connect", type: "primary-text-only", onClick: this.connectCallbackHandler, part: "button-connect" }, this._componentLocale.buttons.connect)))), h("div", { class: "grid" }, h("div", { class: "grid-data-kbs" }, h("div", { class: "search-kbs" }, h("gxg-form-text", { ref: (el) => (this.searchKBEl = el), class: "search-kb-input", part: "search-kb", disabled: this.selectionKbDisabled, placeholder: this._componentLocale.label.searchKbs })), h("div", { class: "box-kbs" }, h("gxg-list-box", { singleSelection: true, disabled: this.selectionKbDisabled, ref: (el) => (this.listBoxEl = el), part: "kbs" }, this.kbs
157
+ .filter(kb => kb.name
158
+ .toLowerCase()
159
+ .includes(this.kbSearchText.toLowerCase()))
160
+ .map(kb => (h("gxg-list-box-item", { value: kb.id, key: kb.id }, kb.name)))))), h("div", { class: "grid grid-data-kbs-footer" }, h("gxg-form-text", { ref: (el) => (this.kbNameEl = el), label: this._componentLocale.localKb, value: this.kbName, class: "kb-name", part: "kb-name", disabled: this.selectionKbDisabled }), h("div", null, h("gxg-button", { id: "button-create", type: "primary-text-only", onClick: this.createKbHandler, part: "button-create", disabled: this.selectionKbDisabled }, this._componentLocale.buttons.create))))))), h("gxg-shortcuts", { src: this.shortcutsSrc })));
120
161
  }
121
162
  static get assetsDirs() { return ["gx-ide-assets/create-kb-from-server"]; }
122
163
  get el() { return this; }
164
+ static get watchers() { return {
165
+ "kbs": ["watchPropHandler"]
166
+ }; }
123
167
  static get style() { return createKbFromServerCss; }
124
168
  }, [1, "gx-ide-create-kb-from-server", {
125
169
  "displayTitle": [4, "display-title"],
126
- "serverUrl": [1, "server-url"],
127
- "userName": [1, "user-name"],
128
- "userPassword": [1, "user-password"],
129
- "getGXserverKBsCallback": [16],
130
- "changeConnectionCallback": [16],
170
+ "connectCallback": [16],
131
171
  "createKBCallback": [16],
132
- "selectKBVersionsCallback": [16],
133
- "cancelCallback": [16],
134
- "kbsData": [32],
135
- "kbVersions": [32],
136
- "kbVersionsIds": [32],
137
- "versionSelectedType": [32]
172
+ "enableCustomServer": [4, "enable-custom-server"],
173
+ "kbName": [1025, "kb-name"],
174
+ "password": [1],
175
+ "serverUrls": [16],
176
+ "userName": [1, "user-name"],
177
+ "selectionKbDisabled": [32],
178
+ "kbs": [32],
179
+ "kbSearchText": [32]
180
+ }, undefined, {
181
+ "kbs": ["watchPropHandler"]
138
182
  }]);
139
183
  function defineCustomElement$1() {
140
184
  if (typeof customElements === "undefined") {
141
185
  return;
142
186
  }
143
- const components = ["gx-ide-create-kb-from-server", "ch-icon", "ch-shortcuts", "ch-window", "ch-window-close", "gx-ide-container", "gx-ide-list-selector", "gx-ide-list-selector-item", "gx-ide-title", "gxg-button", "gxg-form-radio", "gxg-form-radio-group", "gxg-form-text", "gxg-icon", "gxg-label", "gxg-shortcuts", "gxg-title", "gxg-tooltip"];
187
+ const components = ["gx-ide-create-kb-from-server", "ch-icon", "ch-shortcuts", "ch-window", "ch-window-close", "gx-ide-container", "gx-ide-title", "gxg-button", "gxg-combo-box", "gxg-combo-box-item", "gxg-form-checkbox", "gxg-form-radio", "gxg-form-text", "gxg-icon", "gxg-label", "gxg-list-box", "gxg-list-box-item", "gxg-shortcuts", "gxg-title", "gxg-tooltip"];
144
188
  components.forEach(tagName => { switch (tagName) {
145
189
  case "gx-ide-create-kb-from-server":
146
190
  if (!customElements.get(tagName)) {
@@ -149,70 +193,80 @@ function defineCustomElement$1() {
149
193
  break;
150
194
  case "ch-icon":
151
195
  if (!customElements.get(tagName)) {
152
- defineCustomElement$i();
196
+ defineCustomElement$k();
153
197
  }
154
198
  break;
155
199
  case "ch-shortcuts":
156
200
  if (!customElements.get(tagName)) {
157
- defineCustomElement$h();
201
+ defineCustomElement$j();
158
202
  }
159
203
  break;
160
204
  case "ch-window":
161
205
  if (!customElements.get(tagName)) {
162
- defineCustomElement$g();
206
+ defineCustomElement$i();
163
207
  }
164
208
  break;
165
209
  case "ch-window-close":
166
210
  if (!customElements.get(tagName)) {
167
- defineCustomElement$f();
211
+ defineCustomElement$h();
168
212
  }
169
213
  break;
170
214
  case "gx-ide-container":
215
+ if (!customElements.get(tagName)) {
216
+ defineCustomElement$g();
217
+ }
218
+ break;
219
+ case "gx-ide-title":
220
+ if (!customElements.get(tagName)) {
221
+ defineCustomElement$f();
222
+ }
223
+ break;
224
+ case "gxg-button":
171
225
  if (!customElements.get(tagName)) {
172
226
  defineCustomElement$e();
173
227
  }
174
228
  break;
175
- case "gx-ide-list-selector":
229
+ case "gxg-combo-box":
176
230
  if (!customElements.get(tagName)) {
177
231
  defineCustomElement$d();
178
232
  }
179
233
  break;
180
- case "gx-ide-list-selector-item":
234
+ case "gxg-combo-box-item":
181
235
  if (!customElements.get(tagName)) {
182
236
  defineCustomElement$c();
183
237
  }
184
238
  break;
185
- case "gx-ide-title":
239
+ case "gxg-form-checkbox":
186
240
  if (!customElements.get(tagName)) {
187
241
  defineCustomElement$b();
188
242
  }
189
243
  break;
190
- case "gxg-button":
244
+ case "gxg-form-radio":
191
245
  if (!customElements.get(tagName)) {
192
246
  defineCustomElement$a();
193
247
  }
194
248
  break;
195
- case "gxg-form-radio":
249
+ case "gxg-form-text":
196
250
  if (!customElements.get(tagName)) {
197
251
  defineCustomElement$9();
198
252
  }
199
253
  break;
200
- case "gxg-form-radio-group":
254
+ case "gxg-icon":
201
255
  if (!customElements.get(tagName)) {
202
256
  defineCustomElement$8();
203
257
  }
204
258
  break;
205
- case "gxg-form-text":
259
+ case "gxg-label":
206
260
  if (!customElements.get(tagName)) {
207
261
  defineCustomElement$7();
208
262
  }
209
263
  break;
210
- case "gxg-icon":
264
+ case "gxg-list-box":
211
265
  if (!customElements.get(tagName)) {
212
266
  defineCustomElement$6();
213
267
  }
214
268
  break;
215
- case "gxg-label":
269
+ case "gxg-list-box-item":
216
270
  if (!customElements.get(tagName)) {
217
271
  defineCustomElement$5();
218
272
  }
@@ -1 +1 @@
1
- {"file":"gx-ide-create-kb-from-server.js","mappings":"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","names":["GxIdeCreateKbFromServer"],"sources":["src/components/create-kb-from-server/create-kb-from-server.scss?tag=gx-ide-create-kb-from-server&encapsulation=shadow","src/components/create-kb-from-server/create-kb-from-server.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n border: 1px solid var(--gxg-border-color--regular);\n background-color: var(--mer-color__surface);\n}\n\n.header {\n display: grid;\n gap: var(--mer-spacing--md);\n grid-template-rows: auto;\n grid-template-columns: 1fr 1fr min-content;\n align-items: center;\n padding: var(--mer-spacing--sm);\n\n &__item {\n display: flex;\n flex-direction: column;\n gap: var(--mer-spacing--xxxs);\n }\n\n border-block-end: 1px solid var(--mer-border-color__on-elevation--01);\n}\n\n.main {\n display: flex;\n flex-direction: column;\n gap: var(--mer-spacing--sm);\n padding: var(--mer-spacing--sm);\n}\n\n.kbs-list {\n max-height: 200px;\n}\n\n.versions-container {\n display: flex;\n flex-direction: column;\n\n &__input {\n display: flex;\n gap: 8px;\n }\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n getAssetPath\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { GXServerConnectionDefault } from \"../connect-gx-server/connect-gx-server\";\nimport { Locale } from \"../../common/locale\";\nimport { ItemData } from \"../_helpers/list-selector/list-selector-item/list-selector-item\";\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 [key: string]: any;\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n\n private selectedKbId: string;\n private localKBNameEl: HTMLGxgFormTextElement;\n private versionSelectedTypeEl: HTMLGxgFormRadioGroupElement;\n\n /* References */\n\n private searchKbsEl!: HTMLGxgFormTextElement;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n // 3.STATE() VARIABLES //\n\n /**\n * KBs that return from connect to the server\n */\n @State() kbsData: KBData[] = [];\n\n /**\n * The kb versions returned from selectKBVersionsCallback\n */\n @State() kbVersions: KBVersion[] = [];\n\n /**\n * The kb versions ids returned from selectKBVersionsCallback\n */\n @State() kbVersionsIds: string[] = [];\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * URL of the GXserver to use, not editable by the user in this instance\n */\n @Prop() readonly serverUrl: string;\n\n /**\n * Name of the user with whom you connected to the GXserver, it is also not editable\n */\n @Prop() readonly userName: string;\n\n /**\n * Name of the user with whom you connected to the GXserver. It is necessary to know this information when trying to obtain the KBs using the “getGXserverKBsCallback” callback.\n */\n @Prop() readonly userPassword: string;\n\n /**\n * Callback that must be invoked when invoking the dialog\n */\n @Prop() readonly getGXserverKBsCallback: (\n data: GXServerConnectionDefault\n ) => Promise<KBData[]>;\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: GXServerConnectionDefault\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 selectedKB: string,\n versionSelected: VersionOption,\n localKBName: string,\n versionList?: string[]\n ) => Promise<void>;\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 /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback: () => Promise<void>;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n // 6.METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidLoad() {\n (this.searchKbsEl as HTMLElement).focus();\n this.init();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private init = async () => {\n if (this.getGXserverKBsCallback) {\n await this.getGXserverKBsCallback({\n serverUrl: this.serverUrl,\n user: this.userName,\n password: this.userPassword\n }).then(result => {\n this.kbsData = result;\n });\n }\n\n // get version option\n this.versionSelectedType = this.versionSelectedTypeEl\n .value as VersionOption;\n };\n\n private cancelHandler = (): void => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n private createHandler = async (): Promise<void> => {\n if (this.createKBCallback) {\n this.createKBCallback(\n this.selectedKbId,\n this.versionSelectedType,\n this.localKBNameEl.value,\n this.kbVersionsIds\n );\n }\n };\n\n private changeConnectionHandler = async (): Promise<void> => {\n if (this.changeConnectionCallback) {\n this.changeConnectionCallback({\n serverUrl: this.serverUrl,\n user: this.userName,\n password: this.userPassword\n });\n }\n };\n\n private renderKbs = (): HTMLGxIdeListSelectorItemElement[] => {\n return this.kbsData.map(kb => {\n return (\n <gx-ide-list-selector-item\n itemId={kb.id}\n itemValue={kb.name}\n ></gx-ide-list-selector-item>\n );\n });\n };\n\n private selectionChangedHandler = (event: CustomEvent<ItemData[]>) => {\n this.selectedKbId = event.detail[0].itemId;\n };\n\n private selectedVersionHandler = async () => {\n if (this.selectKBVersionsCallback) {\n await this.selectKBVersionsCallback(this.selectedKbId).then(result => {\n if (result?.length) {\n this.kbVersions = result;\n this.kbVersionsIds = result.map(version => version.id.toString());\n }\n });\n }\n };\n\n private versionsChangedHandler = (\n event: CustomEvent<{ value: string; id?: string }>\n ) => {\n this.versionSelectedType = event.detail.value as VersionOption;\n };\n\n // 11.RENDER() FUNCTION //\n\n render(): void {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n slimmerFooter\n noContentPadding\n noContentGap\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n >\n <div class=\"header\">\n {/* server url */}\n <div class=\"header__item\">\n <gxg-label labelPosition=\"start\" class=\"kb-label\">\n {this._componentLocale.header.serverUrl}\n </gxg-label>\n <p>{this.serverUrl}</p>\n </div>\n\n {/* user */}\n <div class=\"header__item\">\n <gxg-label labelPosition=\"start\" class=\"kb-label\">\n {this._componentLocale.header.user}\n </gxg-label>\n <p>{this.userName}</p>\n </div>\n\n {/* change */}\n <gxg-button\n type=\"secondary-text-only\"\n class=\"header__button\"\n onClick={this.changeConnectionHandler}\n >\n {this._componentLocale.header.change}\n </gxg-button>\n </div>\n\n <main class=\"main\">\n {/* search kbs */}\n <gxg-form-text\n icon=\"gemini-tools/search\"\n iconPosition=\"start\"\n placeholder={this._componentLocale.main.searchKB}\n maxWidth=\"300px\"\n ref={el => (this.searchKbsEl = el as HTMLGxgFormTextElement)}\n ></gxg-form-text>\n\n {/* kbs list */}\n <gx-ide-list-selector\n listName=\"kbs-list\"\n ellipsis\n onSelectionChanged={this.selectionChangedHandler}\n class=\"kbs-list\"\n >\n {this.renderKbs()}\n </gx-ide-list-selector>\n\n {/* select version */}\n <gxg-form-radio-group\n row\n onChange={this.versionsChangedHandler}\n ref={el =>\n (this.versionSelectedTypeEl =\n el as HTMLGxgFormRadioGroupElement)\n }\n >\n <gxg-form-radio\n label={this._componentLocale.main.trunkVersion}\n id=\"Trunk\"\n value=\"Trunk\"\n ></gxg-form-radio>\n <gxg-form-radio\n label={this._componentLocale.main.allVersions}\n id=\"All\"\n value=\"All\"\n ></gxg-form-radio>\n <gxg-form-radio\n label={this._componentLocale.main.selectVersion}\n id=\"Select\"\n value=\"Select\"\n ></gxg-form-radio>\n </gxg-form-radio-group>\n\n {/* local kb name */}\n <div class=\"versions-container\">\n <gxg-label labelPosition=\"above\">\n {this._componentLocale.main.selectVersion}\n </gxg-label>\n\n <div class=\"versions-container__input\">\n <gxg-form-text\n readonly\n value={`${this.kbVersions.length.toString()} versions selected`}\n ></gxg-form-text>\n <gxg-button\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/show-more-horizontal\"\n onClick={this.selectedVersionHandler}\n ></gxg-button>\n </div>\n </div>\n {/* local kb name */}\n <gxg-form-text\n label=\"Local KB Name\"\n labelPosition=\"above\"\n ref={el => (this.localKBNameEl = el as HTMLGxgFormTextElement)}\n ></gxg-form-text>\n </main>\n\n {/* cancel / create */}\n <gxg-button\n type=\"outlined\"\n slot=\"footer-end\"\n onClick={this.cancelHandler}\n >\n {this._componentLocale.footer.cancel}\n </gxg-button>\n <gxg-button onClick={this.createHandler} slot=\"footer-end\">\n {this._componentLocale.footer.create}\n </gxg-button>\n </gx-ide-container>\n </div>\n <gxg-shortcuts src={this.shortcutsSrc}></gxg-shortcuts>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type KBVersion = {\n id: number;\n name: string;\n type: VersionType;\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type VersionType = \"Branch\" | \"Frozen\";\n"],"version":3}
1
+ {"file":"gx-ide-create-kb-from-server.js","mappings":"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","names":["GxIdeCreateKbFromServer"],"sources":["src/components/create-kb-from-server/create-kb-from-server.scss?tag=gx-ide-create-kb-from-server&encapsulation=shadow","src/components/create-kb-from-server/create-kb-from-server.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n border: 1px solid var(--gxg-border-color--regular);\n background-color: var(--mer-color__surface);\n}\n:host(.gxi-create-kb-from-server--shadow) {\n}\n\n.grid-data {\n grid-template-columns: repeat(2, 1fr);\n}\n.grid-data-account {\n grid-template-columns: auto 1fr;\n > :nth-child(1) {\n grid-area: 1 / 1 / 2 / 3;\n }\n > :nth-child(6) {\n grid-area: 4 / 2 / 5 / 3;\n }\n}\n.grid-data-kbs {\n display: flex;\n flex-direction: column;\n gap: var(--gx-ide-grid-row-gap);\n .search-kbs {\n width: 100%;\n display: flex;\n }\n .box-kbs {\n height: 150px;\n }\n}\n.grid-data-kbs-footer {\n display: flex;\n}\n.flex {\n display: flex;\n > :nth-child(2) {\n flex: 1;\n }\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n getAssetPath,\n Watch\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { SelectionChangedEvent } from \"@genexus/gemini/dist/types/components/list-box/list-box\";\n/* CUSTOM IMPORTS */\nimport { GxOption } from \"../../common/types\";\nimport { Locale } from \"../../common/locale\";\nimport { renderFormItems } from \"../../common/common\";\nimport {\n FormSubmitResult,\n GxServerAuthenticationType\n} from \"../../common/types\";\nimport { formSubmitValidation } from \"../../common/form-validation\";\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 [key: string]: any;\n\n /*\nINDEX:\n1.OWN PROPERTIES\n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.METHODS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n\n /* References needed to collect data with \"Connect\" and \"Create\" buttons submit*/\n private authenticationTypeEl!: HTMLGxgComboBoxElement;\n private serverUrlsEl!: HTMLGxgComboBoxElement;\n private kbNameEl!: HTMLGxgFormTextElement;\n private passwordEl!: HTMLGxgFormTextElement;\n private userNameEl!: HTMLGxgFormTextElement;\n private searchKBEl!: HTMLGxgFormTextElement;\n private listBoxEl!: HTMLElement;\n private kbIdSelected: string = null;\n private authenticationTypes: GxOption[] = [];\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n // 3.STATE() VARIABLES //\n\n /**\n * Disabled or not the part for select and create the KB\n */\n @State() selectionKbDisabled = true;\n\n /**\n * KBs that return from connect to the server\n */\n\n @State() kbs: KBData[] = [];\n @Watch(\"kbs\")\n watchPropHandler(newKbs: KBData[]) {\n /* When the list of servers are updated, the first server is selected by default */\n this.kbIdSelected = newKbs[0].id;\n this.kbName = newKbs[0].name;\n }\n\n /**\n * KBs search text\n */\n @State() kbSearchText = \"\";\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback that will be invoked when the user connect to the kb server (‘Connect’ button)\n */\n @Prop() readonly connectCallback: (\n data: GXServerConnectionData\n ) => Promise<ConnectionResultData>;\n\n /**\n * Callback that will be invoked when the user confirms KB creation (‘Create’ button)\n */\n @Prop() readonly createKBCallback: (\n data: CreateKBData\n ) => Promise<FormSubmitResult>;\n\n /**\n * If is true then the user can specify a server url that don't be in the combo box of server urls.\n */\n @Prop() readonly enableCustomServer: boolean = true;\n\n /**\n * The knowledge base default suggested name\n */\n // eslint-disable-next-line @stencil-community/strict-mutable\n @Prop({ mutable: true }) kbName: string;\n\n /**\n * Password for the database connection.\n */\n @Prop() readonly password: string;\n\n /**\n * Array of URLs of cataloged servers to be displayed in the combo\n */\n @Prop() readonly serverUrls!: string[];\n\n /**\n * Username for the database connection.\n */\n @Prop() readonly userName: string;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n // 6.METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.setAuthenticationTypes();\n }\n\n componentDidLoad() {\n (this.serverUrlsEl as HTMLElement).focus();\n this.addEventListeners();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private setAuthenticationTypes = () => {\n this.authenticationTypes = [\n {\n id: \"genexus\",\n value: \"genexus\",\n label: this._componentLocale.authenticationTypes.genexusAccount\n },\n {\n id: \"local\",\n value: \"local\",\n label: this._componentLocale.authenticationTypes.local\n }\n ];\n };\n\n private addEventListeners = () => {\n this.serverUrlsEl.addEventListener(\"valueChanged\", () => {\n this.reset();\n });\n\n this.searchKBEl.addEventListener(\n \"valueChanged\",\n (e: CustomEvent<string>) => {\n this.kbNameEl.value = \"\";\n this.kbIdSelected = null;\n this.kbSearchText = e.detail;\n }\n );\n\n this.listBoxEl.addEventListener(\n \"selectionChanged\",\n (ev: CustomEvent<SelectionChangedEvent>): void => {\n const selectedItems = ev.detail.items;\n let selectedItem;\n if (selectedItems.length > 0) {\n selectedItem = ev.detail.items[0];\n }\n if (selectedItem) {\n this.kbIdSelected = selectedItem.value;\n const kbSelected = this.kbs.find(kb => kb.id === this.kbIdSelected);\n if (kbSelected) {\n this.kbNameEl.value = kbSelected.name;\n }\n }\n }\n );\n };\n\n private reset() {\n this.kbs = [];\n this.kbIdSelected = null;\n this.selectionKbDisabled = true;\n this.searchKBEl.value = \"\";\n this.kbSearchText = \"\";\n }\n\n private createKbHandler = (): void => {\n if (this.createKBCallback) {\n const createKBCallbackPromise = this.createKBCallback({\n id: this.kbIdSelected,\n name: this.kbNameEl.value\n });\n createKBCallbackPromise.then((formSubmitResult: FormSubmitResult) => {\n formSubmitValidation(formSubmitResult, this);\n });\n }\n };\n\n private connectCallbackHandler = (): void => {\n if (this.connectCallback) {\n const connectCallbackPromise = this.connectCallback({\n serverUrl: this.serverUrlsEl.value,\n authenticationType: this.authenticationTypeEl.value,\n user: this.userNameEl?.value,\n password: this.passwordEl?.value\n });\n connectCallbackPromise.then(\n (connectionResultData: ConnectionResultData) => {\n formSubmitValidation(connectionResultData.formResult, this);\n if (\n connectionResultData.formResult.success &&\n connectionResultData.kbs\n ) {\n this.kbs = connectionResultData.kbs;\n this.selectionKbDisabled = false;\n }\n }\n );\n }\n };\n\n // 10.RENDER() FUNCTION //\n\n // 11.RENDER() FUNCTION //\n\n render(): void {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n >\n <div class=\"flex\">\n {/* #kb name */}\n <gxg-label labelPosition=\"start\" class=\"kb-label\">\n {this._componentLocale.label.serverUrl}\n </gxg-label>\n <gxg-combo-box\n disableFilter={!this.enableCustomServer}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.serverUrlsEl = el as HTMLGxgComboBoxElement)\n }\n class=\"server-urls-combo-box\"\n part=\"server-urls\"\n >\n {this.serverUrls\n ? renderFormItems(\n \"gxg-combo-box-item\",\n this.serverUrls.map(sUrl => ({\n id: sUrl,\n label: sUrl,\n value: sUrl\n })),\n \"server-urls\"\n )\n : null}\n </gxg-combo-box>\n </div>\n <div class=\"grid grid-data\">\n <div>\n <div class=\"grid grid-data-account\">\n {/* #authentication type */}\n <gxg-combo-box\n tool-tip\n disableFilter\n value={this.authenticationTypes[0].id}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.authenticationTypeEl = el as HTMLGxgComboBoxElement)\n }\n class=\"authentication-type\"\n part=\"authentication-type\"\n onValueChanged={this.evaluateAuthenticationType}\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.authenticationTypes,\n \"authentication-type\"\n )}\n </gxg-combo-box>\n\n {/* #user name */}\n <gxg-label labelPosition=\"start\" class=\"kb-label\">\n {`${this._componentLocale.label.userName}:`}\n </gxg-label>\n <gxg-form-text\n ref={(el: HTMLGxgFormTextElement) =>\n (this.userNameEl = el as HTMLGxgFormTextElement)\n }\n tool-tip\n value={this.userName}\n class=\"user-name\"\n part=\"user-name\"\n ></gxg-form-text>\n\n {/* #password */}\n <gxg-label labelPosition=\"start\" class=\"kb-label\">\n {`${this._componentLocale.label.password}:`}\n </gxg-label>\n <gxg-form-text\n tool-tip\n password\n ref={(el: HTMLGxgFormTextElement) =>\n (this.passwordEl = el as HTMLGxgFormTextElement)\n }\n value={this.password}\n class=\"password\"\n part=\"password\"\n ></gxg-form-text>\n\n {/* #connect */}\n <div>\n <gxg-button\n id=\"button-connect\"\n type=\"primary-text-only\"\n onClick={this.connectCallbackHandler}\n part=\"button-connect\"\n >\n {this._componentLocale.buttons.connect}\n </gxg-button>\n </div>\n </div>\n </div>\n\n <div class=\"grid\">\n <div class=\"grid-data-kbs\">\n <div class=\"search-kbs\">\n <gxg-form-text\n ref={(el: HTMLGxgFormTextElement) =>\n (this.searchKBEl = el as HTMLGxgFormTextElement)\n }\n class=\"search-kb-input\"\n part=\"search-kb\"\n disabled={this.selectionKbDisabled}\n placeholder={this._componentLocale.label.searchKbs}\n ></gxg-form-text>\n </div>\n <div class=\"box-kbs\">\n <gxg-list-box\n singleSelection\n disabled={this.selectionKbDisabled}\n ref={(el: HTMLElement) => (this.listBoxEl = el)}\n part=\"kbs\"\n >\n {this.kbs\n .filter(kb =>\n kb.name\n .toLowerCase()\n .includes(this.kbSearchText.toLowerCase())\n )\n .map(kb => (\n <gxg-list-box-item value={kb.id} key={kb.id}>\n {kb.name}\n </gxg-list-box-item>\n ))}\n </gxg-list-box>\n </div>\n </div>\n <div class=\"grid grid-data-kbs-footer\">\n {/* #kbName */}\n <gxg-form-text\n ref={(el: HTMLGxgFormTextElement) =>\n (this.kbNameEl = el as HTMLGxgFormTextElement)\n }\n label={this._componentLocale.localKb}\n value={this.kbName}\n class=\"kb-name\"\n part=\"kb-name\"\n disabled={this.selectionKbDisabled}\n ></gxg-form-text>\n\n {/* #create button */}\n <div>\n <gxg-button\n id=\"button-create\"\n type=\"primary-text-only\"\n onClick={this.createKbHandler}\n part=\"button-create\"\n disabled={this.selectionKbDisabled}\n >\n {this._componentLocale.buttons.create}\n </gxg-button>\n </div>\n </div>\n </div>\n </div>\n </gx-ide-container>\n </div>\n <gxg-shortcuts src={this.shortcutsSrc}></gxg-shortcuts>\n </Host>\n );\n }\n}\n\nexport interface GXServerConnectionData {\n serverUrl: string;\n authenticationType: GxServerAuthenticationType;\n user: string;\n password: string;\n}\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\nexport interface KBData {\n id: string;\n name: string;\n}\nexport interface CreateKBData {\n id: string;\n name: string;\n}\n"],"version":3}