@genexus/genexus-ide-ui 1.0.24 → 1.0.25

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 (123) hide show
  1. package/dist/cjs/{form-validation-0019e158.js → form-validation-178cf461.js} +1 -19
  2. package/dist/cjs/form-validation-178cf461.js.map +1 -0
  3. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  4. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +197 -61
  5. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +190 -122
  7. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +1 -1
  9. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
  10. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +149 -43
  11. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/collection/collection-manifest.json +3 -3
  14. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.css +33 -0
  15. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js +350 -0
  16. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js.map +1 -0
  17. package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.en.json +13 -0
  18. package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.ja.json +3 -0
  19. package/dist/collection/components/team-dev/connect-gx-server/helpers.js +17 -0
  20. package/dist/collection/components/team-dev/connect-gx-server/helpers.js.map +1 -0
  21. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.css +39 -0
  22. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +381 -0
  23. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -0
  24. 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 +27 -0
  25. 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 +27 -0
  26. 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 +27 -0
  27. package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/shortcuts.json +10 -0
  28. package/dist/collection/components/team-dev/create-kb-from-server/helpers.js +12 -0
  29. package/dist/collection/components/team-dev/create-kb-from-server/helpers.js.map +1 -0
  30. package/dist/collection/components/team-dev/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.en.json +27 -0
  31. package/dist/collection/components/team-dev/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.ja.json +27 -0
  32. package/dist/collection/components/team-dev/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.zh.json +27 -0
  33. package/dist/collection/components/team-dev/share-kb/gx-ide-assets/share-kb/shortcuts.json +10 -0
  34. package/dist/collection/components/team-dev/share-kb/helpers.js +12 -0
  35. package/dist/collection/components/team-dev/share-kb/helpers.js.map +1 -0
  36. package/dist/collection/components/team-dev/share-kb/share-kb.css +39 -0
  37. package/dist/collection/components/team-dev/share-kb/share-kb.js +349 -0
  38. package/dist/collection/components/team-dev/share-kb/share-kb.js.map +1 -0
  39. package/dist/components/form-validation.js +1 -18
  40. package/dist/components/form-validation.js.map +1 -1
  41. package/dist/components/gx-ide-connect-gx-server.js +211 -82
  42. package/dist/components/gx-ide-connect-gx-server.js.map +1 -1
  43. package/dist/components/gx-ide-create-kb-from-server.js +204 -148
  44. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  45. package/dist/components/gx-ide-share-kb.js +160 -61
  46. package/dist/components/gx-ide-share-kb.js.map +1 -1
  47. package/dist/esm/{form-validation-44b2c2a8.js → form-validation-cd0215c6.js} +2 -19
  48. package/dist/esm/form-validation-cd0215c6.js.map +1 -0
  49. package/dist/esm/genexus-ide-ui.js +1 -1
  50. package/dist/esm/gx-ide-connect-gx-server.entry.js +198 -62
  51. package/dist/esm/gx-ide-connect-gx-server.entry.js.map +1 -1
  52. package/dist/esm/gx-ide-create-kb-from-server.entry.js +191 -123
  53. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  54. package/dist/esm/gx-ide-new-environment.entry.js +1 -1
  55. package/dist/esm/gx-ide-new-kb.entry.js +1 -1
  56. package/dist/esm/gx-ide-share-kb.entry.js +149 -43
  57. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  58. package/dist/esm/loader.js +1 -1
  59. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  60. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  61. package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.en.json +8 -12
  62. package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.ja.json +2 -16
  63. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +20 -12
  64. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +20 -12
  65. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +25 -1
  66. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/shortcuts.json +5 -2
  67. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/langs/share-kb.lang.en.json +22 -8
  68. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/langs/share-kb.lang.ja.json +23 -9
  69. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/langs/share-kb.lang.zh.json +25 -1
  70. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/shortcuts.json +5 -2
  71. package/dist/genexus-ide-ui/p-289c3290.js +39 -0
  72. package/dist/genexus-ide-ui/p-289c3290.js.map +1 -0
  73. package/dist/genexus-ide-ui/p-2c6dd837.entry.js +305 -0
  74. package/dist/genexus-ide-ui/p-2c6dd837.entry.js.map +1 -0
  75. package/dist/genexus-ide-ui/p-407c31c6.entry.js +264 -0
  76. package/dist/genexus-ide-ui/p-407c31c6.entry.js.map +1 -0
  77. package/dist/genexus-ide-ui/{p-3adbc04c.entry.js → p-4cbaa118.entry.js} +11 -11
  78. package/dist/genexus-ide-ui/p-e31b4df0.entry.js +249 -0
  79. package/dist/genexus-ide-ui/p-e31b4df0.entry.js.map +1 -0
  80. package/dist/genexus-ide-ui/{p-3d5fea0a.entry.js → p-ed7eada1.entry.js} +2 -2
  81. package/dist/types/components/team-dev/connect-gx-server/connect-gx-server.d.ts +50 -0
  82. package/dist/types/components/team-dev/connect-gx-server/helpers.d.ts +4 -0
  83. package/dist/types/components/team-dev/create-kb-from-server/create-kb-from-server.d.ts +82 -0
  84. package/dist/types/components/team-dev/create-kb-from-server/helpers.d.ts +3 -0
  85. package/dist/types/components/team-dev/share-kb/helpers.d.ts +3 -0
  86. package/dist/types/components/team-dev/share-kb/share-kb.d.ts +73 -0
  87. package/dist/types/components.d.ts +119 -151
  88. package/package.json +1 -1
  89. package/dist/cjs/form-validation-0019e158.js.map +0 -1
  90. package/dist/collection/components/connect-gx-server/connect-gx-server.css +0 -609
  91. package/dist/collection/components/connect-gx-server/connect-gx-server.js +0 -258
  92. package/dist/collection/components/connect-gx-server/connect-gx-server.js.map +0 -1
  93. package/dist/collection/components/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.en.json +0 -17
  94. package/dist/collection/components/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.ja.json +0 -17
  95. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +0 -638
  96. package/dist/collection/components/create-kb-from-server/create-kb-from-server.js +0 -349
  97. package/dist/collection/components/create-kb-from-server/create-kb-from-server.js.map +0 -1
  98. package/dist/collection/components/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +0 -19
  99. package/dist/collection/components/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +0 -19
  100. package/dist/collection/components/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +0 -3
  101. package/dist/collection/components/create-kb-from-server/gx-ide-assets/create-kb-from-server/shortcuts.json +0 -7
  102. package/dist/collection/components/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.en.json +0 -13
  103. package/dist/collection/components/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.ja.json +0 -13
  104. package/dist/collection/components/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.zh.json +0 -3
  105. package/dist/collection/components/share-kb/gx-ide-assets/share-kb/shortcuts.json +0 -7
  106. package/dist/collection/components/share-kb/share-kb.css +0 -636
  107. package/dist/collection/components/share-kb/share-kb.js +0 -189
  108. package/dist/collection/components/share-kb/share-kb.js.map +0 -1
  109. package/dist/esm/form-validation-44b2c2a8.js.map +0 -1
  110. package/dist/genexus-ide-ui/p-02bc66c1.entry.js +0 -129
  111. package/dist/genexus-ide-ui/p-02bc66c1.entry.js.map +0 -1
  112. package/dist/genexus-ide-ui/p-58e13823.entry.js +0 -158
  113. package/dist/genexus-ide-ui/p-58e13823.entry.js.map +0 -1
  114. package/dist/genexus-ide-ui/p-b8624c0b.js +0 -56
  115. package/dist/genexus-ide-ui/p-b8624c0b.js.map +0 -1
  116. package/dist/genexus-ide-ui/p-cf2c8b3c.entry.js +0 -241
  117. package/dist/genexus-ide-ui/p-cf2c8b3c.entry.js.map +0 -1
  118. package/dist/types/components/connect-gx-server/connect-gx-server.d.ts +0 -62
  119. package/dist/types/components/create-kb-from-server/create-kb-from-server.d.ts +0 -97
  120. package/dist/types/components/share-kb/share-kb.d.ts +0 -53
  121. /package/dist/collection/components/{connect-gx-server → team-dev/connect-gx-server}/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.zh.json +0 -0
  122. /package/dist/genexus-ide-ui/{p-3adbc04c.entry.js.map → p-4cbaa118.entry.js.map} +0 -0
  123. /package/dist/genexus-ide-ui/{p-3d5fea0a.entry.js.map → p-ed7eada1.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mapAuthenticationTypeToComboBoxModel","authenticationTypes","map","authenticationType","value","id","caption","name","mapServerUrlsToComboBoxModel","serverUrls","serverUrl","connectGxServerCss","CSS_BUNDLES","HTMLGxIdeConnectGxServer","_HTMLGxIdeConnectGxServer_componentLocale","set","this","_HTMLGxIdeConnectGxServer_usernameRef","_HTMLGxIdeConnectGxServer_passwordRef","_HTMLGxIdeConnectGxServer_serverUrlRef","_HTMLGxIdeConnectGxServer_cancelClickHandler","cancelCallback","_HTMLGxIdeConnectGxServer_connectClickHandler","async","connectCallback","gxServerConnectionData","then","formSubmitResult","validatableControls","validateControls","_HTMLGxIdeConnectGxServer_evaluateTooltipRender","controlReference","_b","_a","get","hasError","_c","message","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","_HTMLGxIdeConnectGxServer_init","authenticationTypesChanged","serverUrlsChanged","defaultConnectionData","serverUrlsComboBoxModel","_d","authenticationTypesComboBoxModel","_e","_f","userName","_g","userPassword","_h","_HTMLGxIdeConnectGxServer_initializeValidatableControls","__classPrivateFieldGet","forEach","validatableControl","reference","undefined","_HTMLGxIdeConnectGxServer_serverUrlInputEventHandler","event","detail","_HTMLGxIdeConnectGxServer_authenticationInputEventHandler","authenticationTypeId","authenticationTypeIndex","findIndex","authType","authenticationTypeName","_HTMLGxIdeConnectGxServer_usernameInputEventHandler","_HTMLGxIdeConnectGxServer_passwordInputEventHandler","Map","newAuthenticationTypes","length","newServerUrls","componentWillLoad","__classPrivateFieldSet","Locale","getComponentStrings","el","call","componentDidLoad","render","Host","model","htmlFor","main","serverURLLabel","accessibleName","placeholder","onInput","suggest","enableCustomServer","suggestOptions","alreadyProcessed","autoExpand","hideMatchesAndShowNonMatches","highlightMatchedItems","matchCase","regularExpression","renderActiveItemIconOnExpand","strict","ref","authenticationTypeLabel","usernameLabel","type","passwordLabel","onClick","footer","cancelButtonCaption","connectButtonCaption"],"sources":["src/components/team-dev/connect-gx-server/helpers.ts","src/components/team-dev/connect-gx-server/connect-gx-server.scss?tag=gx-ide-connect-gx-server&encapsulation=shadow","src/components/team-dev/connect-gx-server/connect-gx-server.tsx"],"sourcesContent":["import { AuthenticationType } from \"./connect-gx-server\";\nimport { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\n\nexport const mapAuthenticationTypeToComboBoxModel = (\n authenticationTypes: AuthenticationType[]\n): ComboBoxModel => {\n return authenticationTypes.map(authenticationType => {\n return {\n value: authenticationType.id,\n caption: authenticationType.name\n };\n });\n};\n\nexport const mapServerUrlsToComboBoxModel = (\n serverUrls: string[]\n): ComboBoxModel => {\n return serverUrls.map(serverUrl => {\n return {\n value: serverUrl,\n caption: serverUrl\n };\n });\n};\n",":host {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: 1fr max-content;\n}\n\n.main {\n display: grid;\n grid-template-areas:\n \"server-url server-url\"\n \"authentication-type .\"\n \"user-name user-password\";\n grid-auto-rows: max-content;\n grid-template-columns: 1fr 1fr;\n}\n\n.section {\n display: contents;\n}\n\n.authentication-type {\n grid-area: authentication-type;\n}\n.server-url {\n grid-area: server-url;\n}\n.user-name {\n grid-area: user-name;\n}\n.user-password {\n grid-area: user-password;\n}\n","// Stencil\nimport { Component, Host, h, Prop, Element, State, Watch } from \"@stencil/core\";\n\n// Other Libraries\nimport { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport {\n mapAuthenticationTypeToComboBoxModel,\n mapServerUrlsToComboBoxModel\n} from \"./helpers\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\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\n@Component({\n tag: \"gx-ide-connect-gx-server\",\n styleUrl: \"connect-gx-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/connect-gx-server\"]\n})\nexport class HTMLGxIdeConnectGxServer {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n\n @Element() el: HTMLGxIdeConnectGxServerElement;\n #usernameRef!: HTMLChEditElement;\n #passwordRef!: HTMLChEditElement;\n #serverUrlRef!: HTMLChComboBoxRenderElement;\n\n @State() authenticationTypesComboBoxModel: ComboBoxModel;\n @State() gxServerConnectionData: GXServerConnectionData = {\n authenticationType: {\n id: null,\n name: null\n },\n serverUrl: null,\n userName: null,\n userPassword: null\n };\n @State() serverUrlsComboBoxModel: ComboBoxModel;\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * List of authentication types.\n */\n @Prop() readonly authenticationTypes!: AuthenticationType[];\n @Watch(\"authenticationTypes\")\n authenticationTypesChanged(newAuthenticationTypes: AuthenticationType[]) {\n if (newAuthenticationTypes?.length) {\n this.authenticationTypesComboBoxModel =\n mapAuthenticationTypeToComboBoxModel(newAuthenticationTypes);\n }\n }\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Connect' button is pressed.\n */\n @Prop() readonly connectCallback!: (\n data: GXServerConnectionData\n ) => Promise<FormSubmitResult>;\n\n /**\n * Initial user values ​​for the case in which the user returns to the login modal after successful authentication.\n */\n @Prop() readonly defaultConnectionData?: GXServerConnectionData;\n\n /**\n * true if the user should be allowed to manually enter a server URL.\n */\n @Prop() readonly enableCustomServer: boolean = false;\n\n /**\n * Array of cataloged server URLs to be displayed in the combo.\n */\n @Prop() readonly serverUrls: string[];\n @Watch(\"serverUrls\")\n serverUrlsChanged(newServerUrls: string[]) {\n if (newServerUrls?.length) {\n this.serverUrlsComboBoxModel =\n mapServerUrlsToComboBoxModel(newServerUrls);\n }\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n\n this.#init();\n }\n\n async componentDidLoad() {\n this.#initializeValidatableControls();\n }\n\n #cancelClickHandler = () => {\n this.cancelCallback();\n };\n\n #connectClickHandler = async () => {\n this.connectCallback(this.gxServerConnectionData).then(\n (formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n }\n );\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #init = () => {\n this.authenticationTypesChanged(this.authenticationTypes);\n this.serverUrlsChanged(this.serverUrls);\n // set initial values:\n // server url\n this.gxServerConnectionData.serverUrl =\n this.defaultConnectionData?.serverUrl ||\n this.serverUrlsComboBoxModel[0]?.value;\n // authentication type\n this.gxServerConnectionData.authenticationType = {\n id:\n (this.defaultConnectionData?.authenticationType.id as string) ||\n this.authenticationTypesComboBoxModel[0]?.value,\n name:\n (this.defaultConnectionData?.authenticationType.name as string) ||\n this.authenticationTypesComboBoxModel[0]?.caption\n };\n\n // user name\n this.gxServerConnectionData.userName = this.defaultConnectionData?.userName;\n this.gxServerConnectionData.userPassword =\n this.defaultConnectionData?.userPassword;\n };\n\n #initializeValidatableControls = () => {\n // populate #controlsValidation with the controls that could have errors.\n const validatableControls: HTMLElement[] = [\n this.#usernameRef,\n this.#passwordRef,\n this.#serverUrlRef\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 // handlers that update this.gxServerConnectionData:\n #serverUrlInputEventHandler = (event: CustomEvent<string> | InputEvent) => {\n this.gxServerConnectionData.serverUrl = event.detail as string;\n };\n #authenticationInputEventHandler = (\n event: CustomEvent<string> | InputEvent\n ) => {\n const authenticationTypeId = event.detail as string;\n const authenticationTypeIndex = this.authenticationTypes.findIndex(\n authType => {\n return authType.id === authenticationTypeId;\n }\n );\n const authenticationTypeName =\n this.authenticationTypes[authenticationTypeIndex].name;\n\n this.gxServerConnectionData.authenticationType = {\n id: authenticationTypeId,\n name: authenticationTypeName\n };\n };\n #usernameInputEventHandler = (event: CustomEvent<string> | InputEvent) => {\n this.gxServerConnectionData.userName = event.detail as string;\n };\n #passwordInputEventHandler = (event: CustomEvent<string> | InputEvent) => {\n this.gxServerConnectionData.userPassword = event.detail as string;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <section class=\"section\">\n <div class=\"main field-group spacing-body\">\n <div\n // server urls\n class=\"field field-block server-url\"\n >\n <label class=\"label\" htmlFor=\"server-url\">\n {this.#componentLocale.main.serverURLLabel}\n </label>\n <ch-combo-box-render\n id=\"server-url\"\n class=\"combo-box\"\n accessibleName=\"Server Url\"\n model={this.serverUrlsComboBoxModel}\n placeholder=\"Select a server URL\"\n value={this.gxServerConnectionData?.serverUrl}\n onInput={this.#serverUrlInputEventHandler}\n suggest={this.enableCustomServer}\n suggestOptions={{\n alreadyProcessed: true,\n autoExpand: false,\n hideMatchesAndShowNonMatches: false,\n highlightMatchedItems: false,\n matchCase: false,\n regularExpression: false,\n renderActiveItemIconOnExpand: true,\n strict: false\n }}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#serverUrlRef = el as HTMLChComboBoxRenderElement)\n }\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#serverUrlRef)}\n </div>\n\n <div\n // authentication types\n class=\"field field-block authentication-type\"\n >\n <label class=\"label\" htmlFor=\"authentication-type\">\n {this.#componentLocale.main.authenticationTypeLabel}\n </label>\n <ch-combo-box-render\n id=\"authentication-type\"\n class=\"combo-box\"\n accessibleName=\"Authentication Types\"\n model={this.authenticationTypesComboBoxModel}\n placeholder=\"Select an authentication type\"\n value={this.gxServerConnectionData?.authenticationType.id}\n onInput={this.#authenticationInputEventHandler}\n ></ch-combo-box-render>\n </div>\n\n <div\n // username\n class=\"field field-block user-name\"\n >\n <label class=\"label\" htmlFor=\"username\">\n {this.#componentLocale.main.usernameLabel}\n </label>\n <ch-edit\n type=\"text\"\n id=\"username\"\n class=\"input\"\n value={this.gxServerConnectionData?.userName}\n onInput={this.#usernameInputEventHandler}\n ref={(el: HTMLChEditElement) =>\n (this.#usernameRef = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#usernameRef)}\n </div>\n\n <div\n // user password\n class=\"field field-block user-password\"\n >\n <label class=\"label\" htmlFor=\"password\">\n {this.#componentLocale.main.passwordLabel}\n </label>\n <ch-edit\n type=\"password\"\n id=\"password\"\n class=\"input\"\n value={this.gxServerConnectionData?.userPassword}\n onInput={this.#passwordInputEventHandler}\n ref={(el: HTMLChEditElement) =>\n (this.#passwordRef = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#passwordRef)}\n </div>\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelClickHandler}\n >\n {this.#componentLocale.footer.cancelButtonCaption}\n </button>\n\n <button\n // connect button\n class=\"button-primary\"\n onClick={this.#connectClickHandler}\n >\n {this.#componentLocale.footer.connectButtonCaption}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type GXServerConnectionData = {\n authenticationType: AuthenticationType;\n serverUrl: string;\n userName: string;\n userPassword: string;\n};\n\nexport type AuthenticationType = {\n id: string;\n name: string;\n};\n"],"mappings":"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"}
@@ -8,7 +8,7 @@ import { r, m as h } from "./p-014916d7.js";
8
8
 
9
9
  import { g as d } from "./p-3ef5a5a6.js";
10
10
 
11
- import { v as c } from "./p-b8624c0b.js";
11
+ import { v as c } from "./p-289c3290.js";
12
12
 
13
13
  import { r as l } from "./p-1252519a.js";
14
14
 
@@ -27,7 +27,7 @@ var p = undefined && undefined.__classPrivateFieldSet || function(t, e, i, s, n)
27
27
  return s === "a" ? n.call(t, i) : n ? n.value = i : e.set(t, i), i;
28
28
  };
29
29
 
30
- var b, m, v, g, w, k, _, y, M, W, x, C, j, E, S, I, T, z, F, A, D, L, P, H, R, V, q, B, G, J;
30
+ var m, b, v, g, w, k, _, y, M, W, x, C, j, E, S, I, T, z, F, A, D, L, P, H, R, V, q, B, G, J;
31
31
 
32
32
  const K = [
33
33
  // TODO: review if "utils/form--full" is required.
@@ -44,8 +44,8 @@ const U = "advanced";
44
44
  const X = class {
45
45
  constructor(s) {
46
46
  t(this, s);
47
- b.set(this, false);
48
- m.set(this, void 0);
47
+ m.set(this, false);
48
+ b.set(this, void 0);
49
49
  v.set(this, false);
50
50
  /**
51
51
  * frontEndsState saves the id's of the front ends checkboxes that are checked
@@ -291,9 +291,9 @@ const X = class {
291
291
  u(this, F, "f").call(this);
292
292
  }
293
293
  componentDidRender() {
294
- if (this.advancedTabIsVisible && !u(this, b, "f")) {
294
+ if (this.advancedTabIsVisible && !u(this, m, "f")) {
295
295
  // just call this once.
296
- p(this, b, true, "f");
296
+ p(this, m, true, "f");
297
297
  }
298
298
  }
299
299
  async componentWillLoad() {
@@ -311,9 +311,9 @@ const X = class {
311
311
  * Suspends or reactivates the shortcuts
312
312
  */ async suspendShortcuts(t) {
313
313
  if (t) {
314
- u(this, m, "f").suspend = true;
314
+ u(this, b, "f").suspend = true;
315
315
  } else {
316
- u(this, m, "f").suspend = false;
316
+ u(this, b, "f").suspend = false;
317
317
  }
318
318
  }
319
319
  render() {
@@ -323,7 +323,7 @@ const X = class {
323
323
  model: K
324
324
  }), i("ch-shortcuts", {
325
325
  src: u(this, y, "f"),
326
- ref: t => p(this, m, t, "f")
326
+ ref: t => p(this, b, t, "f")
327
327
  }), i("section", {
328
328
  class: "section"
329
329
  }, i("header", {
@@ -421,7 +421,7 @@ const X = class {
421
421
  }
422
422
  };
423
423
 
424
- b = new WeakMap, m = new WeakMap, v = new WeakMap, g = new WeakMap, w = new WeakMap,
424
+ m = new WeakMap, b = new WeakMap, v = new WeakMap, g = new WeakMap, w = new WeakMap,
425
425
  k = new WeakMap, _ = new WeakMap, y = new WeakMap, M = new WeakMap, W = new WeakMap,
426
426
  x = new WeakMap, C = new WeakMap, j = new WeakMap, E = new WeakMap, S = new WeakMap,
427
427
  I = new WeakMap, T = new WeakMap, z = new WeakMap, F = new WeakMap, A = new WeakMap,
@@ -431,4 +431,4 @@ V = new WeakMap, q = new WeakMap, B = new WeakMap, G = new WeakMap, J = new Weak
431
431
  X.style = f;
432
432
 
433
433
  export { X as gx_ide_new_environment };
434
- //# sourceMappingURL=p-3adbc04c.entry.js.map
434
+ //# sourceMappingURL=p-4cbaa118.entry.js.map
@@ -0,0 +1,249 @@
1
+ import { r as t, c as e, a as s, h as i, H as n, g as a } from "./p-aaed592c.js";
2
+
3
+ import { g as o } from "./p-0b0ce806.js";
4
+
5
+ import { c as r } from "./p-78b90603.js";
6
+
7
+ import { v as l } from "./p-289c3290.js";
8
+
9
+ import { L as c } from "./p-74d59062.js";
10
+
11
+ const h = ":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}.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(--mer-spacing--xs)}";
12
+
13
+ var d = undefined && undefined.__classPrivateFieldGet || function(t, e, s, i) {
14
+ if (s === "a" && !i) throw new TypeError("Private accessor was defined without a getter");
15
+ if (typeof e === "function" ? t !== e || !i : !e.has(t)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
16
+ return s === "m" ? i : s === "a" ? i.call(t) : i ? i.value : e.get(t);
17
+ };
18
+
19
+ var f = undefined && undefined.__classPrivateFieldSet || function(t, e, s, i, n) {
20
+ if (i === "m") throw new TypeError("Private method is not writable");
21
+ if (i === "a" && !n) throw new TypeError("Private accessor was defined without a setter");
22
+ if (typeof e === "function" ? t !== e || !n : !e.has(t)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
23
+ return i === "a" ? n.call(t, s) : n ? n.value = s : e.set(t, s), s;
24
+ };
25
+
26
+ var p, u, m, b, g, v, w, y, k, x, M, W, T, j, _;
27
+
28
+ const E = [ "resets/box-sizing", "utils/form--full", "utils/layout", "utils/typography", "utils/spacing", "components/list-box", "components/tooltip", "chameleon/scrollbar" ];
29
+
30
+ const C = class {
31
+ constructor(n) {
32
+ t(this, n);
33
+ this.componentDidRenderFirstTime = e(this, "componentDidRenderFirstTime", 7);
34
+ p.set(this, o({
35
+ category: "gemini-tools",
36
+ name: "show-more-horizontal",
37
+ colorType: "on-elevation"
38
+ }));
39
+ u.set(this, [ {
40
+ value: "Trunk",
41
+ caption: "Trunk Version"
42
+ }, {
43
+ value: "All",
44
+ caption: "All Versions"
45
+ } ]);
46
+ m.set(this, void 0);
47
+ // uncomment #kbVersionsIds when versions selector is available
48
+ // #kbVersionsIds: string[] = [];
49
+ b.set(this, false);
50
+ g.set(this, s(`./gx-ide-assets/create-kb-from-server/shortcuts.json`));
51
+ // #selectedKbId: string;
52
+ v.set(this, void 0);
53
+ w.set(this, void 0);
54
+ y.set(this, (() => {
55
+ this.cancelCallback();
56
+ }));
57
+ k.set(this, (async () => {
58
+ this.changeConnectionCallback({
59
+ authenticationType: this.connectionData.authenticationType,
60
+ serverUrl: this.connectionData.serverUrl,
61
+ userName: this.connectionData.userName,
62
+ userPassword: this.connectionData.userPassword
63
+ });
64
+ }));
65
+ x.set(this, (async () => {
66
+ // uncomment the following lines when versions selector is available
67
+ // if (this.versionSelectedType !== "Select") {
68
+ // this.#kbVersionsIds = [];
69
+ // }
70
+ this.shareKBCallback({
71
+ name: this.kbName,
72
+ serverUrl: this.connectionData.serverUrl
73
+ }).then((t => {
74
+ this.validatableControls = l(t, this.validatableControls);
75
+ }));
76
+ }));
77
+ // TODO: evaluate if this should be a global helper function.
78
+ // It is used on other dialogs as well.
79
+ M.set(this, (t => {
80
+ var e, s, n;
81
+ return ((s = (e = this.validatableControls) === null || e === void 0 ? void 0 : e.get(t === null || t === void 0 ? void 0 : t.id)) === null || s === void 0 ? void 0 : s.hasError) && ((n = this.validatableControls.get(t.id)) === null || n === void 0 ? void 0 : n.message) && i("ch-tooltip", {
82
+ class: "tooltip",
83
+ actionElement: t,
84
+ blockAlign: r.tooltipSettings.blockAlign,
85
+ inlineAlign: r.tooltipSettings.inlineAlign,
86
+ delay: r.tooltipSettings.delay
87
+ }, this.validatableControls.get(t.id).message);
88
+ }));
89
+ W.set(this, (() => {
90
+ // populate validatableControls with the controls that could have errors.
91
+ const t = [ d(this, w, "f") ];
92
+ t.forEach((t => {
93
+ if (t.id) {
94
+ this.validatableControls.set(t.id, {
95
+ reference: t,
96
+ hasError: false,
97
+ message: undefined
98
+ });
99
+ }
100
+ }));
101
+ }));
102
+ T.set(this, (t => {
103
+ this.kbName = t.detail;
104
+ }));
105
+ // #selectedVersionHandler = async () => {
106
+ // if (this.selectKBVersionsCallback) {
107
+ // await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {
108
+ // if (result?.length) {
109
+ // this.versionsValueInput = result.length
110
+ // .toString()
111
+ // .concat(this.#_componentLocale.kb.versionSelectedFieldValue);
112
+ // this.#kbVersionsIds = result.map(kbVersion =>
113
+ // kbVersion.id.toString()
114
+ // );
115
+ // }
116
+ // });
117
+ // }
118
+ // };
119
+ j.set(this, (t => {
120
+ this.versionSelectedType = t.detail;
121
+ }));
122
+ _.set(this, (() => {
123
+ const t = !this.kbName.length;
124
+ return i("footer", {
125
+ class: "footer control-footer-with-border spacing-body-inline spacing-body-block-end"
126
+ }, i("div", {
127
+ class: "buttons-spacer"
128
+ }, i("button", {
129
+ // cancel button
130
+ class: "button-secondary",
131
+ onClick: d(this, y, "f"),
132
+ part: "button button-cancel"
133
+ }, d(this, m, "f").footer.cancel), i("button", {
134
+ // share kb button
135
+ class: "button-primary",
136
+ onClick: !t && d(this, x, "f"),
137
+ disabled: t,
138
+ part: "button button-create-kb"
139
+ }, d(this, m, "f").footer.shareKB)));
140
+ }));
141
+ this.enableSelectVersionsButton = false;
142
+ this.validatableControls = new Map;
143
+ this.versionSelectedType = undefined;
144
+ this.versionsValueInput = "";
145
+ this.connectionData = undefined;
146
+ this.cancelCallback = undefined;
147
+ this.changeConnectionCallback = undefined;
148
+ this.kbName = undefined;
149
+ this.shareKBCallback = undefined;
150
+ this.selectKBVersionsCallback = undefined;
151
+ }
152
+ componentDidLoad() {
153
+ this.versionSelectedType = d(this, v, "f").value;
154
+ d(this, W, "f").call(this);
155
+ }
156
+ componentDidRender() {
157
+ if (!d(this, b, "f")) {
158
+ this.componentDidRenderFirstTime.emit(d(this, m, "f").componentName);
159
+ f(this, b, true, "f");
160
+ }
161
+ }
162
+ async componentWillLoad() {
163
+ f(this, m, await c.getComponentStrings(this.el), "f");
164
+ }
165
+ render() {
166
+ return i(n, {
167
+ class: "widget"
168
+ }, i("ch-theme", {
169
+ model: E
170
+ }), i("ch-shortcuts", {
171
+ src: d(this, g, "f"),
172
+ ref: t => this.chShortcutsEl = t
173
+ }), i("section", {
174
+ class: "section"
175
+ }, i("header", {
176
+ class: "header control-header-with-border space-body spacing-body-inline spacing-body-block-start"
177
+ }, i("div", {
178
+ class: "field field-block"
179
+ }, i("label", {
180
+ class: "label"
181
+ }, d(this, m, "f").header.serverUrl), i("p", null, this.connectionData.serverUrl)), i("div", {
182
+ class: "field field-block"
183
+ }, i("label", {
184
+ class: "label"
185
+ }, d(this, m, "f").header.user), i("p", null, this.connectionData.userName)), i("button", {
186
+ class: "button-tertiary button-change",
187
+ onClick: d(this, k, "f")
188
+ }, d(this, m, "f").header.change)), i("section", {
189
+ class: "main field-group spacing-body"
190
+ }, i("div", {
191
+ class: "field field-block"
192
+ }, i("label", {
193
+ class: "label",
194
+ htmlFor: "alias"
195
+ }, d(this, m, "f").kb.aliasLabel), i("ch-edit", {
196
+ // alias
197
+ class: "input",
198
+ id: "kb-name",
199
+ value: this.kbName,
200
+ onInput: d(this, T, "f"),
201
+ placeholder: d(this, m, "f").kb.localKbNamePlaceholder,
202
+ ref: t => f(this, w, t, "f")
203
+ }), d(this, M, "f").call(this, d(this, w, "f"))), i("div", {
204
+ class: "versions-container field-group"
205
+ }, i("ch-radio-group-render", {
206
+ class: "radio-group",
207
+ model: d(this, u, "f"),
208
+ onChange: d(this, j, "f"),
209
+ value: d(this, u, "f")[0].value,
210
+ ref: t => f(this, v, t, "f")
211
+ }), this.versionSelectedType === "Select" && i("div", {
212
+ class: "versions-container__item field-group"
213
+ }, i("div", {
214
+ class: "field field-block"
215
+ }, i("label", {
216
+ class: "label",
217
+ htmlFor: "control-id-1"
218
+ }, d(this, m, "f").kb.versionsLabel), i("div", {
219
+ class: "versions-container__input"
220
+ }, i("ch-edit", {
221
+ class: "input",
222
+ readonly: true,
223
+ placeholder: this.enableSelectVersionsButton ? d(this, m, "f").kb.versionsPlaceholder : d(this, m, "f").kb.versionsPlaceholderDisabled,
224
+ value: this.versionsValueInput
225
+ }), i("button", {
226
+ class: "button-tertiary button-icon-only",
227
+ // onClick={this.#selectedVersionHandler}
228
+ disabled: !this.enableSelectVersionsButton
229
+ }, i("ch-image", {
230
+ src: d(this, p, "f"),
231
+ class: "icon-sm"
232
+ }))))))), d(this, _, "f").call(this)));
233
+ }
234
+ static get assetsDirs() {
235
+ return [ "gx-ide-assets/share-kb" ];
236
+ }
237
+ get el() {
238
+ return a(this);
239
+ }
240
+ };
241
+
242
+ p = new WeakMap, u = new WeakMap, m = new WeakMap, b = new WeakMap, g = new WeakMap,
243
+ v = new WeakMap, w = new WeakMap, y = new WeakMap, k = new WeakMap, x = new WeakMap,
244
+ M = new WeakMap, W = new WeakMap, T = new WeakMap, j = new WeakMap, _ = new WeakMap;
245
+
246
+ C.style = h;
247
+
248
+ export { C as gx_ide_share_kb };
249
+ //# sourceMappingURL=p-e31b4df0.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["shareKbCss","CSS_BUNDLES","GxIdeShareKb","_GxIdeShareKb_showMoreIcon","set","this","getIconPath","category","name","colorType","_GxIdeShareKb_versionsSelect","value","caption","_GxIdeShareKb__componentLocale","_GxIdeShareKb_renderedFirstTime","_GxIdeShareKb_shortcutsSrc","getAssetPath","_GxIdeShareKb_versionSelectedTypeEl","_GxIdeShareKb_KBNameEl","_GxIdeShareKb_cancelHandler","cancelCallback","_GxIdeShareKb_changeConnectionHandler","async","changeConnectionCallback","authenticationType","connectionData","serverUrl","userName","userPassword","_GxIdeShareKb_shareKBHandler","shareKBCallback","kbName","then","formSubmitResult","validatableControls","validateControls","_GxIdeShareKb_evaluateTooltipRender","controlReference","_b","_a","get","id","hasError","_c","message","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","_GxIdeShareKb_initializeValidatableControls","__classPrivateFieldGet","forEach","validatableControl","reference","undefined","_GxIdeShareKb_kbNameInputHandler","event","detail","_GxIdeShareKb_versionsChangedHandler","versionSelectedType","_GxIdeShareKb_renderFooter","disableShareKbButton","length","onClick","part","footer","cancel","disabled","shareKB","Map","componentDidLoad","call","componentDidRender","componentDidRenderFirstTime","emit","componentName","__classPrivateFieldSet","componentWillLoad","Locale","getComponentStrings","el","render","Host","model","src","ref","chShortcutsEl","header","user","change","htmlFor","kb","aliasLabel","onInput","placeholder","localKbNamePlaceholder","onChange","versionsLabel","readonly","enableSelectVersionsButton","versionsPlaceholder","versionsPlaceholderDisabled","versionsValueInput"],"sources":["src/components/team-dev/share-kb/share-kb.scss?tag=gx-ide-share-kb&encapsulation=shadow","src/components/team-dev/share-kb/share-kb.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// - - - - - - - - - - -\n// Header\n// - - - - - - - - - - -\n\nheader {\n display: grid;\n grid-template-rows: max-content;\n grid-template-columns: 1fr 1fr max-content;\n}\n\n.button-change {\n align-self: center;\n justify-self: end;\n}\n\n// - - - - - - - - - - -\n// Main\n// - - - - - - - - - - -\n\n.main {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: max-content 1fr max-content max-content;\n}\n\n.search-kbs {\n inline-size: 50%;\n}\n\n.versions-container {\n grid-auto-rows: max-content;\n\n &__input {\n display: grid;\n grid-template-columns: 1fr max-content;\n gap: var(--mer-spacing--xs);\n }\n}\n","// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n getAssetPath\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { ChEditCustomEvent } from \"@genexus/chameleon-controls-library\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\n@Component({\n tag: \"gx-ide-share-kb\",\n styleUrl: \"share-kb.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/share-kb\"]\n})\nexport class GxIdeShareKb {\n #showMoreIcon = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"on-elevation\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" }\n // { value: \"Select\", caption: \"Select Version\" } TODO: display once \"gx-ide-select-kb-versions\" is ready.\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n // uncomment #kbVersionsIds when versions selector is available\n // #kbVersionsIds: string[] = [];\n #renderedFirstTime = false;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n // #selectedKbId: string;\n\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeShareKbElement;\n\n #KBNameEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * The name of the KB.\n */\n @Prop({ mutable: true }) kbName: string;\n\n /**\n * Callback that must be invoked when the Share button is pressed.\n */\n @Prop() readonly shareKBCallback: (\n data: ShareKBData\n ) => Promise<FormSubmitResult>;\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 * Emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n componentDidLoad() {\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n\n this.#initializeValidatableControls();\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 async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #shareKBHandler = async (): Promise<void> => {\n // uncomment the following lines when versions selector is available\n // if (this.versionSelectedType !== \"Select\") {\n // this.#kbVersionsIds = [];\n // }\n this.shareKBCallback({\n name: this.kbName,\n serverUrl: this.connectionData.serverUrl\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#KBNameEl];\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 #kbNameInputHandler = (event: ChEditCustomEvent<string> | InputEvent) => {\n this.kbName = event.detail as string;\n };\n\n // #selectedVersionHandler = async () => {\n // if (this.selectKBVersionsCallback) {\n // await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n // if (result?.length) {\n // this.versionsValueInput = result.length\n // .toString()\n // .concat(this.#_componentLocale.kb.versionSelectedFieldValue);\n // this.#kbVersionsIds = result.map(kbVersion =>\n // kbVersion.id.toString()\n // );\n // }\n // });\n // }\n // };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #renderFooter = () => {\n const disableShareKbButton = !this.kbName.length;\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // share kb button\n class=\"button-primary\"\n onClick={!disableShareKbButton && this.#shareKBHandler}\n disabled={disableShareKbButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.shareKB}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n\n <section class=\"main field-group spacing-body\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"alias\">\n {this.#_componentLocale.kb.aliasLabel}\n </label>\n <ch-edit\n // alias\n class=\"input\"\n id=\"kb-name\"\n value={this.kbName}\n onInput={this.#kbNameInputHandler}\n placeholder={this.#_componentLocale.kb.localKbNamePlaceholder}\n ref={(el: HTMLChEditElement) =>\n (this.#KBNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#KBNameEl)}\n </div>\n\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={el =>\n (this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement)\n }\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n class=\"button-tertiary button-icon-only\"\n // onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-sm\"\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type KBVersion = {\n id: number;\n name: string;\n type: VersionType;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type ShareKBData = {\n name: string;\n serverUrl: string;\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type VersionType = \"Branch\" | \"Frozen\";\n"],"mappings":";;;;;;;;;;AAAA,MAAMA,IAAa;;;;;;;;;;;;;;;;;AC4BnB,MAAMC,IAA8B,EAClC,qBACA,oBACA,gBACA,oBACA,iBACA,uBACA,sBACA;;MASWC,IAAY;;;;IACvBC,EAAAC,IAAAC,MAAgBC,EAAY;MAC1BC,UAAU;MACVC,MAAM;MACNC,WAAW;;IAGbC,EAAAN,IAAAC,MAAyC,EACvC;MAAEM,OAAO;MAASC,SAAS;OAC3B;MAAED,OAAO;MAAOC,SAAS;;IAM3BC,EAAAT,IAAAC,WAAA;;;QAGAS,EAAAV,IAAAC,MAAqB;IACrBU,EAAAX,IAAAC,MAAgBW,EACd;;QAIFC,EAAAb,IAAAC,WAAA;IAIAa,EAAAd,IAAAC,WAAA;IAgFAc,EAAAf,IAAAC,OAAiB;MACfA,KAAKe;AAAgB;IAGvBC,EAAAjB,IAAAC,OAA2BiB;MACzBjB,KAAKkB,yBAAyB;QAC5BC,oBAAoBnB,KAAKoB,eAAeD;QACxCE,WAAWrB,KAAKoB,eAAeC;QAC/BC,UAAUtB,KAAKoB,eAAeE;QAC9BC,cAAcvB,KAAKoB,eAAeG;;AAClC;IAGJC,EAAAzB,IAAAC,OAAkBiB;;;;;MAKhBjB,KAAKyB,gBAAgB;QACnBtB,MAAMH,KAAK0B;QACXL,WAAWrB,KAAKoB,eAAeC;SAC9BM,MAAMC;QACP5B,KAAK6B,sBAAsBC,EACzBF,GACA5B,KAAK6B;AACN;AACD;;;QAKJE,EAAAhC,IAAAC,OACEgC;;MAEA,SAAAC,KAAAC,IAAAlC,KAAK6B,yBAAmB,QAAAK,WAAA,aAAAA,EAAEC,IAAIH,MAAgB,QAAhBA,WAAgB,aAAhBA,EAAkBI,SAAG,QAAAH,WAAA,aAAAA,EAAEI,eACrDC,IAAAtC,KAAK6B,oBAAoBM,IAAIH,EAAiBI,SAAG,QAAAE,WAAA,aAAAA,EAAEC,YACjDC,EAAA;QACEC,OAAM;QACNC,eAAeV;QACfW,YAAYC,EAAOC,gBAAgBF;QACnCG,aAAaF,EAAOC,gBAAgBC;QACpCC,OAAOH,EAAOC,gBAAgBE;SAE7B/C,KAAK6B,oBAAoBM,IAAIH,EAAiBI,IAAIG;AAEtD;IAEHS,EAAAjD,IAAAC,OAAiC;;MAE/B,MAAM6B,IAAqC,EAACoB,EAAAjD,MAAIa,GAAA;MAChDgB,EAAoBqB,SAAQC;QAC1B,IAAIA,EAAmBf,IAAI;UACzBpC,KAAK6B,oBAAoB9B,IAAIoD,EAAmBf,IAAI;YAClDgB,WAAWD;YACXd,UAAU;YACVE,SAASc;;;;AAGb;IAGJC,EAAAvD,IAAAC,OAAuBuD;MACrBvD,KAAK0B,SAAS6B,EAAMC;AAAgB;;;;;;;;;;;;;;;QAkBtCC,EAAA1D,IAAAC,OAA2BuD;MACzBvD,KAAK0D,sBAAsBH,EAAMC;AAAuB;IAG1DG,EAAA5D,IAAAC,OAAgB;MACd,MAAM4D,KAAwB5D,KAAK0B,OAAOmC;MAC1C,OACErB,EAAA;QAAQC,OAAM;SACZD,EAAA;QAAKC,OAAM;SACTD,EAAA;;QAEEC,OAAM;QACNqB,SAASb,EAAAjD,MAAIc,GAAA;QACbiD,MAAK;SAEJd,EAAAjD,MAAIQ,GAAA,KAAmBwD,OAAOC,SAGjCzB,EAAA;;QAEEC,OAAM;QACNqB,UAAUF,KAAwBX,EAAAjD,MAAIwB,GAAA;QACtC0C,UAAUN;QACVG,MAAK;SAEJd,EAAAjD,MAAIQ,GAAA,KAAmBwD,OAAOG;AAG5B;sCAvLkC;+BAEhB,IAAIC;;8BAUG;;;;;;;;EA2CtC,gBAAAC;IACErE,KAAK0D,sBAAsBT,EAAAjD,MAAIY,GAAA,KAC5BN;IAEH2C,EAAAjD,MAAIgD,GAAA,KAA+BsB,KAAnCtE;;EAGF,kBAAAuE;IACE,KAAKtB,EAAAjD,MAAIS,GAAA,MAAqB;MAC5BT,KAAKwE,4BAA4BC,KAC/BxB,EAAAjD,MAAIQ,GAAA,KAAmBkE;MAEzBC,EAAA3E,MAAIS,GAAsB,MAAI;;;EAIlC,uBAAMmE;IACJD,EAAA3E,MAAIQ,SAA2BqE,EAAOC,oBAAoB9E,KAAK+E,KAAG;;EAmHpE,MAAAC;IACE,OACExC,EAACyC,GAAI;MAACxC,OAAM;OACVD,EAAA;MAAU0C,OAAOtF;QACjB4C,EAAA;MACE2C,KAAKlC,EAAAjD,MAAIU,GAAA;MACT0E,KAAML,KACH/E,KAAKqF,gBAAgBN;QAI1BvC,EAAA;MAASC,OAAM;OACbD,EAAA;MAAQC,OAAM;OACZD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;OACVQ,EAAAjD,MAAIQ,GAAA,KAAmB8E,OAAOjE,YAEjCmB,EAAA,WAAIxC,KAAKoB,eAAeC,aAG1BmB,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;OAASQ,EAAAjD,MAAIQ,GAAA,KAAmB8E,OAAOC,OACpD/C,EAAA,WAAIxC,KAAKoB,eAAeE,YAG1BkB,EAAA;MACEC,OAAM;MACNqB,SAASb,EAAAjD,MAAIgB,GAAA;OAEZiC,EAAAjD,MAAIQ,GAAA,KAAmB8E,OAAOE,UAInChD,EAAA;MAASC,OAAM;OACbD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;MAAQgD,SAAQ;OAC1BxC,EAAAjD,MAAIQ,GAAA,KAAmBkF,GAAGC,aAE7BnD,EAAA;;MAEEC,OAAM;MACNL,IAAG;MACH9B,OAAON,KAAK0B;MACZkE,SAAS3C,EAAAjD,MAAIsD,GAAA;MACbuC,aAAa5C,EAAAjD,MAAIQ,GAAA,KAAmBkF,GAAGI;MACvCV,KAAML,KACHJ,EAAA3E,MAAIa,GAAakE,GAAuB;QAG5C9B,EAAAjD,MAAI+B,GAAA,KAAuBuC,KAA3BtE,MAA4BiD,EAAAjD,MAAIa,GAAA,QAGnC2B,EAAA;MAAKC,OAAM;OACTD,EAAA;MACEC,OAAM;MACNyC,OAAOjC,EAAAjD,MAAIK,GAAA;MACX0F,UAAU9C,EAAAjD,MAAIyD,GAAA;MACdnD,OAAO2C,EAAAjD,MAAIK,GAAA,KAAiB,GAAGC;MAC/B8E,KAAKL,KACFJ,EAAA3E,MAAIY,GACHmE,GAAmC;QAIxC/E,KAAK0D,wBAAwB,YAC5BlB,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;MAAQgD,SAAQ;OAC1BxC,EAAAjD,MAAIQ,GAAA,KAAmBkF,GAAGM,gBAE7BxD,EAAA;MAAKC,OAAM;OACTD,EAAA;MACEC,OAAM;MACNwD,UAAQ;MACRJ,aACE7F,KAAKkG,6BACDjD,EAAAjD,MAAIQ,GAAA,KAAmBkF,GAAGS,sBAC1BlD,EAAAjD,MAAIQ,GAAA,KAAmBkF,GACpBU;MAET9F,OAAON,KAAKqG;QAEd7D,EAAA;MACEC,OAAM;;MAENyB,WAAWlE,KAAKkG;OAEhB1D,EAAA;MACE2C,KAAKlC,EAAAjD,MAAIF,GAAA;MACT2C,OAAM;cAUrBQ,EAAAjD,MAAI2D,GAAA,KAAcW,KAAlBtE"}
@@ -10,7 +10,7 @@ import { g as l } from "./p-3ef5a5a6.js";
10
10
 
11
11
  import { r, m as d } from "./p-014916d7.js";
12
12
 
13
- import { v as c } from "./p-b8624c0b.js";
13
+ import { v as c } from "./p-289c3290.js";
14
14
 
15
15
  import { r as f } from "./p-1252519a.js";
16
16
 
@@ -731,4 +731,4 @@ et = new WeakMap;
731
731
  dt.style = p;
732
732
 
733
733
  export { dt as gx_ide_new_kb };
734
- //# sourceMappingURL=p-3d5fea0a.entry.js.map
734
+ //# sourceMappingURL=p-ed7eada1.entry.js.map
@@ -0,0 +1,50 @@
1
+ import { ComboBoxModel } from "@genexus/chameleon-controls-library";
2
+ import { FormSubmitResult } from "../../../common/types";
3
+ import { ControlValidation } from "../../../common/form-validation";
4
+ export declare class HTMLGxIdeConnectGxServer {
5
+ #private;
6
+ el: HTMLGxIdeConnectGxServerElement;
7
+ authenticationTypesComboBoxModel: ComboBoxModel;
8
+ gxServerConnectionData: GXServerConnectionData;
9
+ serverUrlsComboBoxModel: ComboBoxModel;
10
+ validatableControls: Map<string, ControlValidation>;
11
+ /**
12
+ * List of authentication types.
13
+ */
14
+ readonly authenticationTypes: AuthenticationType[];
15
+ authenticationTypesChanged(newAuthenticationTypes: AuthenticationType[]): void;
16
+ /**
17
+ * Callback that must be invoked when the 'Cancel' button is pressed.
18
+ */
19
+ readonly cancelCallback: () => Promise<void>;
20
+ /**
21
+ * Callback that must be invoked when the 'Connect' button is pressed.
22
+ */
23
+ readonly connectCallback: (data: GXServerConnectionData) => Promise<FormSubmitResult>;
24
+ /**
25
+ * Initial user values ​​for the case in which the user returns to the login modal after successful authentication.
26
+ */
27
+ readonly defaultConnectionData?: GXServerConnectionData;
28
+ /**
29
+ * true if the user should be allowed to manually enter a server URL.
30
+ */
31
+ readonly enableCustomServer: boolean;
32
+ /**
33
+ * Array of cataloged server URLs to be displayed in the combo.
34
+ */
35
+ readonly serverUrls: string[];
36
+ serverUrlsChanged(newServerUrls: string[]): void;
37
+ componentWillLoad(): Promise<void>;
38
+ componentDidLoad(): Promise<void>;
39
+ render(): any;
40
+ }
41
+ export type GXServerConnectionData = {
42
+ authenticationType: AuthenticationType;
43
+ serverUrl: string;
44
+ userName: string;
45
+ userPassword: string;
46
+ };
47
+ export type AuthenticationType = {
48
+ id: string;
49
+ name: string;
50
+ };
@@ -0,0 +1,4 @@
1
+ import { AuthenticationType } from "./connect-gx-server";
2
+ import { ComboBoxModel } from "@genexus/chameleon-controls-library";
3
+ export declare const mapAuthenticationTypeToComboBoxModel: (authenticationTypes: AuthenticationType[]) => ComboBoxModel;
4
+ export declare const mapServerUrlsToComboBoxModel: (serverUrls: string[]) => ComboBoxModel;
@@ -0,0 +1,82 @@
1
+ import { GXServerConnectionData } from "../connect-gx-server/connect-gx-server";
2
+ import { FormSubmitResult } from "../../../common/types";
3
+ import { ControlValidation } from "../../../common/form-validation";
4
+ import { ActionListItemModel } from "@genexus/chameleon-controls-library";
5
+ export declare class GxIdeCreateKbFromServer {
6
+ #private;
7
+ [key: string]: any;
8
+ el: HTMLGxIdeCreateKbFromServerElement;
9
+ /**
10
+ * State to enable/disable the select versions button
11
+ */
12
+ enableSelectVersionsButton: boolean;
13
+ /**
14
+ * The current kbn name value.
15
+ */
16
+ localKbNameInputValue: string;
17
+ /**
18
+ * State to store the filter input value to filter the list-box
19
+ */
20
+ filterValue: string;
21
+ /**
22
+ * KBs filtered
23
+ */
24
+ kbsFilteredActionListModel: ActionListItemModel[];
25
+ validatableControls: Map<string, ControlValidation>;
26
+ /**
27
+ * The version selected type
28
+ */
29
+ versionSelectedType: VersionOption;
30
+ /**
31
+ * String value to show the number of versions selected ("N versions selected")
32
+ */
33
+ versionsValueInput: string;
34
+ /**
35
+ * Set of data required when executing any of the callbacks that require a connection to the server.
36
+ */
37
+ readonly connectionData: GXServerConnectionData;
38
+ /**
39
+ * Callback that is invoked when the dialog is closed
40
+ */
41
+ readonly cancelCallback: () => Promise<void>;
42
+ /**
43
+ * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal
44
+ */
45
+ readonly changeConnectionCallback: (data: GXServerConnectionData) => Promise<void>;
46
+ /**
47
+ * 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.
48
+ */
49
+ readonly createKBCallback: (kbInfo: KnowledgeBaseInfo) => Promise<FormSubmitResult>;
50
+ /**
51
+ * Callback that must be invoked when invoking the dialog
52
+ */
53
+ readonly getGXserverKBsCallback: (data: GXServerConnectionData) => Promise<KBData[]>;
54
+ /**
55
+ * 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.
56
+ */
57
+ readonly selectKBVersionsCallback: (selectedKB: string) => Promise<KBVersion[]>;
58
+ componentDidLoad(): void;
59
+ componentWillLoad(): Promise<void>;
60
+ render(): void;
61
+ }
62
+ export type KBData = {
63
+ id: string;
64
+ name: string;
65
+ };
66
+ export type KBVersion = {
67
+ id: number;
68
+ name: string;
69
+ type: VersionType;
70
+ };
71
+ export type ConnectionResultData = {
72
+ formResult: FormSubmitResult;
73
+ kbs: KBData[];
74
+ };
75
+ export type KnowledgeBaseInfo = {
76
+ selectedKB: string;
77
+ versionSelected: VersionOption;
78
+ localKBName: string;
79
+ versionList: string[];
80
+ };
81
+ export type VersionOption = "Trunk" | "All" | "Select";
82
+ export type VersionType = "Branch" | "Frozen";
@@ -0,0 +1,3 @@
1
+ import { ActionListItemModel } from "@genexus/chameleon-controls-library";
2
+ import { KBData } from "./create-kb-from-server";
3
+ export declare const mapKbsModelToActionListModel: (kbsData: KBData[]) => ActionListItemModel[];
@@ -0,0 +1,3 @@
1
+ import { ActionListItemModel } from "@genexus/chameleon-controls-library";
2
+ import { KBData } from "./share-kb";
3
+ export declare const mapKbsModelToActionListModel: (kbsData: KBData[]) => ActionListItemModel[];