@genexus/genexus-ide-ui 1.1.69 → 1.1.71

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 (132) hide show
  1. package/dist/cjs/{utilities-25be3069.js → constants-a2ac1812.js} +70 -1
  2. package/dist/cjs/constants-a2ac1812.js.map +1 -0
  3. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +7 -8
  4. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js.map +1 -1
  5. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +2 -2
  6. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  7. package/dist/cjs/gx-ide-restore-version.cjs.entry.js +5 -4
  8. package/dist/cjs/gx-ide-restore-version.cjs.entry.js.map +1 -1
  9. package/dist/cjs/gx-ide-server-selector.cjs.entry.js +8 -7
  10. package/dist/cjs/gx-ide-server-selector.cjs.entry.js.map +1 -1
  11. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -2
  12. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  13. package/dist/cjs/gx-ide-team-dev-bring-all-changes-selector.cjs.entry.js +14 -7
  14. package/dist/cjs/gx-ide-team-dev-bring-all-changes-selector.cjs.entry.js.map +1 -1
  15. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +3 -3
  16. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +21 -21
  17. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +8 -28
  19. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +3 -3
  21. package/dist/cjs/{tabular-grid-render-c0e0738c.js → tabular-grid-render-37b7153b.js} +12 -86
  22. package/dist/cjs/tabular-grid-render-37b7153b.js.map +1 -0
  23. package/dist/collection/components/restore-version/gx-ide-assets/restore-version/shortcuts.json +15 -0
  24. package/dist/collection/components/restore-version/restore-version.js +6 -5
  25. package/dist/collection/components/restore-version/restore-version.js.map +1 -1
  26. package/dist/collection/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.js +15 -8
  27. package/dist/collection/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.js.map +1 -1
  28. package/dist/collection/components/team-dev/bring-all-changes-selector/gx-ide-assets/team-dev-bring-all-changes-selector/shortcuts.json +15 -0
  29. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js +8 -9
  30. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js.map +1 -1
  31. package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/shortcuts.json +15 -0
  32. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +2 -2
  33. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -1
  34. package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/shortcuts.json +6 -1
  35. package/dist/collection/components/team-dev/history/history.css +3 -0
  36. package/dist/collection/components/team-dev/history/history.js +4 -24
  37. package/dist/collection/components/team-dev/history/history.js.map +1 -1
  38. package/dist/collection/components/team-dev/server-selector/gx-ide-assets/server-selector/shortcuts.json +15 -0
  39. package/dist/collection/components/team-dev/server-selector/server-selector.js +9 -7
  40. package/dist/collection/components/team-dev/server-selector/server-selector.js.map +1 -1
  41. package/dist/collection/components/team-dev/share-kb/gx-ide-assets/share-kb/shortcuts.json +1 -1
  42. package/dist/collection/components/team-dev/share-kb/share-kb.js +2 -2
  43. package/dist/collection/components/team-dev/share-kb/share-kb.js.map +1 -1
  44. package/dist/components/{utilities.js → constants2.js} +68 -2
  45. package/dist/components/constants2.js.map +1 -0
  46. package/dist/components/gx-ide-connect-gx-server.js +8 -9
  47. package/dist/components/gx-ide-connect-gx-server.js.map +1 -1
  48. package/dist/components/gx-ide-create-kb-from-server.js +2 -2
  49. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  50. package/dist/components/gx-ide-restore-version.js +6 -5
  51. package/dist/components/gx-ide-restore-version.js.map +1 -1
  52. package/dist/components/gx-ide-server-selector.js +9 -8
  53. package/dist/components/gx-ide-server-selector.js.map +1 -1
  54. package/dist/components/gx-ide-share-kb.js +2 -2
  55. package/dist/components/gx-ide-share-kb.js.map +1 -1
  56. package/dist/components/gx-ide-team-dev-bring-all-changes-selector.js +15 -8
  57. package/dist/components/gx-ide-team-dev-bring-all-changes-selector.js.map +1 -1
  58. package/dist/components/gx-ide-team-dev-bring-changes.js +1 -1
  59. package/dist/components/gx-ide-team-dev-commit.js +2 -1
  60. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  61. package/dist/components/gx-ide-team-dev-history.js +4 -28
  62. package/dist/components/gx-ide-team-dev-history.js.map +1 -1
  63. package/dist/components/gx-ide-team-dev-update.js +1 -1
  64. package/dist/components/tabular-grid-render.js +2 -72
  65. package/dist/components/tabular-grid-render.js.map +1 -1
  66. package/dist/esm/{utilities-efeffb76.js → constants-31612239.js} +68 -2
  67. package/dist/esm/constants-31612239.js.map +1 -0
  68. package/dist/esm/gx-ide-connect-gx-server.entry.js +8 -9
  69. package/dist/esm/gx-ide-connect-gx-server.entry.js.map +1 -1
  70. package/dist/esm/gx-ide-create-kb-from-server.entry.js +2 -2
  71. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  72. package/dist/esm/gx-ide-restore-version.entry.js +6 -5
  73. package/dist/esm/gx-ide-restore-version.entry.js.map +1 -1
  74. package/dist/esm/gx-ide-server-selector.entry.js +9 -8
  75. package/dist/esm/gx-ide-server-selector.entry.js.map +1 -1
  76. package/dist/esm/gx-ide-share-kb.entry.js +2 -2
  77. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  78. package/dist/esm/gx-ide-team-dev-bring-all-changes-selector.entry.js +15 -8
  79. package/dist/esm/gx-ide-team-dev-bring-all-changes-selector.entry.js.map +1 -1
  80. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +2 -2
  81. package/dist/esm/gx-ide-team-dev-commit.entry.js +5 -5
  82. package/dist/esm/gx-ide-team-dev-history.entry.js +8 -28
  83. package/dist/esm/gx-ide-team-dev-history.entry.js.map +1 -1
  84. package/dist/esm/gx-ide-team-dev-update.entry.js +2 -2
  85. package/dist/esm/{tabular-grid-render-c868fa55.js → tabular-grid-render-d06826a5.js} +3 -74
  86. package/dist/esm/tabular-grid-render-d06826a5.js.map +1 -0
  87. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  88. package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/shortcuts.json +15 -0
  89. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/shortcuts.json +6 -1
  90. package/dist/genexus-ide-ui/gx-ide-assets/restore-version/shortcuts.json +15 -0
  91. package/dist/genexus-ide-ui/gx-ide-assets/server-selector/shortcuts.json +15 -0
  92. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/shortcuts.json +1 -1
  93. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-all-changes-selector/shortcuts.json +15 -0
  94. package/dist/genexus-ide-ui/p-025c9aa4.entry.js +239 -0
  95. package/dist/genexus-ide-ui/p-025c9aa4.entry.js.map +1 -0
  96. package/dist/genexus-ide-ui/p-082015be.js +244 -0
  97. package/dist/{esm/tabular-grid-render-c868fa55.js.map → genexus-ide-ui/p-082015be.js.map} +1 -1
  98. package/dist/genexus-ide-ui/{p-972dc777.entry.js → p-1351412d.entry.js} +3 -3
  99. package/dist/genexus-ide-ui/p-32b37b3d.js +163 -0
  100. package/dist/genexus-ide-ui/p-32b37b3d.js.map +1 -0
  101. package/dist/genexus-ide-ui/{p-85cf50c5.entry.js → p-3ca03a38.entry.js} +31 -55
  102. package/dist/genexus-ide-ui/p-3ca03a38.entry.js.map +1 -0
  103. package/dist/genexus-ide-ui/{p-09693b80.entry.js → p-451994e8.entry.js} +111 -96
  104. package/dist/genexus-ide-ui/p-451994e8.entry.js.map +1 -0
  105. package/dist/genexus-ide-ui/{p-c3cc759d.entry.js → p-8dedbcd9.entry.js} +64 -58
  106. package/dist/genexus-ide-ui/p-8dedbcd9.entry.js.map +1 -0
  107. package/dist/genexus-ide-ui/{p-6ee5d68e.entry.js → p-92a027bc.entry.js} +33 -33
  108. package/dist/genexus-ide-ui/{p-9ffa7afd.entry.js → p-941f470f.entry.js} +3 -1
  109. package/dist/genexus-ide-ui/{p-9ffa7afd.entry.js.map → p-941f470f.entry.js.map} +1 -1
  110. package/dist/genexus-ide-ui/{p-93e79d19.entry.js → p-ac79f7e8.entry.js} +59 -57
  111. package/dist/genexus-ide-ui/{p-93e79d19.entry.js.map → p-ac79f7e8.entry.js.map} +1 -1
  112. package/dist/genexus-ide-ui/{p-e2fd2c24.entry.js → p-c256dc59.entry.js} +3 -3
  113. package/dist/genexus-ide-ui/{p-5e56280c.entry.js → p-eeeb3d52.entry.js} +199 -192
  114. package/dist/genexus-ide-ui/p-eeeb3d52.entry.js.map +1 -0
  115. package/package.json +1 -1
  116. package/dist/cjs/tabular-grid-render-c0e0738c.js.map +0 -1
  117. package/dist/cjs/utilities-25be3069.js.map +0 -1
  118. package/dist/components/utilities.js.map +0 -1
  119. package/dist/esm/utilities-efeffb76.js.map +0 -1
  120. package/dist/genexus-ide-ui/p-09693b80.entry.js.map +0 -1
  121. package/dist/genexus-ide-ui/p-22bdcf23.js +0 -322
  122. package/dist/genexus-ide-ui/p-22bdcf23.js.map +0 -1
  123. package/dist/genexus-ide-ui/p-5e56280c.entry.js.map +0 -1
  124. package/dist/genexus-ide-ui/p-85cf50c5.entry.js.map +0 -1
  125. package/dist/genexus-ide-ui/p-a105f903.entry.js +0 -234
  126. package/dist/genexus-ide-ui/p-a105f903.entry.js.map +0 -1
  127. package/dist/genexus-ide-ui/p-c3cc759d.entry.js.map +0 -1
  128. package/dist/genexus-ide-ui/p-db6c6085.js +0 -95
  129. package/dist/genexus-ide-ui/p-db6c6085.js.map +0 -1
  130. /package/dist/genexus-ide-ui/{p-972dc777.entry.js.map → p-1351412d.entry.js.map} +0 -0
  131. /package/dist/genexus-ide-ui/{p-6ee5d68e.entry.js.map → p-92a027bc.entry.js.map} +0 -0
  132. /package/dist/genexus-ide-ui/{p-e2fd2c24.entry.js.map → p-c256dc59.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"server-selector.js","sourceRoot":"","sources":["../../../../src/components/team-dev/server-selector/server-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["// Stencil\nimport { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport {\n ChEditCustomEvent,\n TabularGridColumnSortChangedEvent,\n TabularGridRowClickedEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { JSX, Watch } from \"@stencil/core/internal\";\nimport { config } from \"../../../common/config\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\n\nimport sortTabularGridColumn from \"../../../common/chameleon/tabular-grid-column-sort\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/tooltip\",\n \"chameleon/scrollbar\",\n \"components/tabular-grid\"\n];\n\nconst INFO_ICON = getIconPath({\n category: \"system\",\n name: \"information\",\n colorType: \"on-surface\"\n});\n\nconst LOCK_ICON = getIconPath({\n category: \"system\",\n name: \"lock\",\n colorType: \"on-surface\"\n});\n\nconst LANGUAGE_ICON = getIconPath({\n category: \"system\",\n name: \"language\",\n colorType: \"on-surface\"\n});\n\nconst DELETE_ICON = getIconPath({\n category: \"system\",\n name: \"delete-outlined\",\n colorType: \"neutral\"\n});\n\nconst ERROR_ICON = getIconPath({\n category: \"system\",\n name: \"error\",\n colorType: \"error\"\n});\n\nconst SEARCH_ICON = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n});\n\nconst SERVER_NAME_PREFIX = \"server-name-\";\n\n@Component({\n tag: \"gx-ide-server-selector\",\n styleUrl: \"server-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/server-selector\"]\n})\nexport class GxIdeServerSelector {\n #_componentLocale: any;\n\n #chGridAllServersEl: HTMLChTabularGridElement;\n #serverUrlEL: HTMLChEditElement;\n #serverFriendlyNameEL: HTMLChEditElement;\n #updatedServerName: string | undefined;\n #serverNameEditElsMap: Map<string, HTMLChEditElement> = new Map();\n #versionsSelect: RadioGroupItemModel[] = [];\n\n @Element() el: HTMLGxIdeServerSelectorElement;\n\n /**\n * State to enable/disable confirm button.\n */\n @State() enableConfirmButton: boolean = false;\n\n /**\n * The current server URL input value.\n */\n @State() serverUrlInputValue: string = \"\";\n\n /**\n * The current server URL input value.\n */\n @State() serverNameInputValue: string = \"\";\n\n /**\n * The selected server URI.\n */\n @State() selectedServerUri: string | undefined;\n\n /**\n * The selected server name.\n */\n @State() selectedServerName: string | undefined = \"None\";\n\n /**\n * The user name of the selected server.\n */\n @State() userName: string;\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * Servers filtered\n */\n @State() filteredServersData: ServerData[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The selected connection type\n */\n @State() selectedConnectionType: ConnectionOption = \"select\";\n\n /**\n * The selected recently used server ID\n */\n @State() selectedRecentlyUsedId: string;\n\n /**\n * The list of all GX servers.\n */\n @Prop({ mutable: true }) serversData: ServerData[] = [];\n @Watch(\"serversData\")\n serversDataChanged(newValue: ServerData[]) {\n this.filteredServersData = newValue;\n }\n /**\n * The list of recently used servers.\n */\n @Prop() readonly recentlyUsedServersData: ServerData[] = [];\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed and the Select Server option is checked.\n */\n @Prop() readonly selectServerCallback!: (\n authenticationSessionOrigin: AuthenticationSessionOrigin,\n connectionOption: ConnectionOption\n ) => Promise<FormSubmitResult>;\n\n /**\n * Invoked to delete a server\n */\n @Prop() readonly deleteServerCallback!: (\n serverData: ServerData\n ) => Promise<boolean>;\n\n /**\n * Invoked to update a server\n */\n @Prop() readonly updateServerCallback!: (\n serverData: ServerData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n\n this.#versionsSelect = [\n {\n value: \"select\",\n caption: this.#_componentLocale.captions.selectServer\n },\n {\n value: \"new\",\n caption: this.#_componentLocale.captions.addServer\n }\n ];\n\n this.selectedServerUri = this.serversData[0]?.serverUrl;\n this.userName = this.serversData[0]?.gxServerUsername;\n\n this.filteredServersData = this.serversData;\n }\n\n componentDidRender() {\n if (\n this.selectedConnectionType === \"new\" &&\n this.#serverUrlEL &&\n this.#serverFriendlyNameEL\n ) {\n this.#initializeValidatableControls([\n this.#serverUrlEL,\n this.#serverFriendlyNameEL\n ]);\n this.#serverNameEditElsMap.clear();\n }\n\n if (\n this.selectedConnectionType === \"select\" &&\n this.#serverNameEditElsMap.size > 0\n ) {\n this.#initializeValidatableControls([\n ...this.#serverNameEditElsMap.values()\n ]);\n }\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #confirmHandler = async (): Promise<void> => {\n let formSubmitResult: FormSubmitResult;\n if (this.selectedConnectionType === \"select\") {\n formSubmitResult = await this.selectServerCallback(\n {\n uri: this.selectedServerUri,\n name: this.selectedServerName\n },\n this.selectedConnectionType\n );\n } else {\n formSubmitResult = await this.selectServerCallback(\n {\n uri: this.serverUrlInputValue,\n name: this.serverNameInputValue\n },\n this.selectedConnectionType\n );\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 = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.filteredServersData = this.serversData.filter(item =>\n item.serverName.toLowerCase().includes(this.filterValue)\n );\n };\n\n #inputHandler = (\n event: ChEditCustomEvent<string> | InputEvent,\n field: \"serverUrlInputValue\" | \"serverNameInputValue\"\n ) => {\n this.enableConfirmButton = false;\n this[field] = (event.detail as string).trim();\n\n const controlId =\n field === \"serverUrlInputValue\" ? \"server-url\" : \"server-name\";\n clearControlError(this.validatableControls, controlId);\n this.#enableConfirmButton();\n };\n\n #handleRecentlyUsedCardClick = async (server: ServerData) => {\n this.selectedRecentlyUsedId = server.id;\n await this.#chGridAllServersEl?.selectRow(server.id);\n await this.#handleServerSelection(server.id);\n };\n\n #handleDeleteServer = async (serverData: ServerData) => {\n if (serverData.accessLevel === \"private\") {\n const result = await this.deleteServerCallback(serverData);\n if (result) {\n this.selectedServerName = \"None\";\n this.enableConfirmButton = false;\n }\n }\n };\n\n #onServerNameInput = async (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.#updatedServerName = event.detail as string;\n };\n\n #onServerNameChange = async (serverData: ServerData) => {\n let result: FormSubmitResult = {\n fieldErrors: [],\n success: false\n };\n if (\n serverData.serverName !== this.#updatedServerName &&\n serverData.accessLevel === \"private\"\n ) {\n result = await this.updateServerCallback({\n ...serverData,\n serverName: this.#updatedServerName\n });\n }\n\n this.validatableControls = validateControls(\n result,\n this.validatableControls\n );\n\n if (result.success || serverData.serverName === this.#updatedServerName) {\n this.selectedServerName = this.#updatedServerName;\n clearControlError(\n this.validatableControls,\n `${SERVER_NAME_PREFIX}${serverData.id}`\n );\n }\n };\n\n #enableConfirmButton = () => {\n if (\n this.serverUrlInputValue &&\n this.serverUrlInputValue.length > 0 &&\n this.serverNameInputValue &&\n this.serverNameInputValue.length > 0\n ) {\n this.enableConfirmButton = true;\n } else {\n this.enableConfirmButton = false;\n }\n };\n\n #onRecentlyUsedDoubleClickHandler = (serverData: ServerData) => {\n this.#handleServerSelection(serverData.id);\n this.#confirmHandler();\n };\n\n #onServersRowClickHandler = (\n event: CustomEvent<TabularGridRowClickedEvent>\n ) => this.#handleServerSelection(event.detail.rowId);\n\n #handleServerSelection = async (selectedRowId: string): Promise<void> => {\n if (selectedRowId === undefined) {\n this.enableConfirmButton = false;\n this.selectedServerUri = undefined;\n this.selectedServerName = undefined;\n return;\n }\n\n const selectedServer = this.serversData.find(\n server => server.id === selectedRowId\n );\n this.enableConfirmButton = true;\n this.selectedServerName = selectedServer?.serverName;\n this.selectedServerUri = selectedServer?.serverUrl;\n this.userName = selectedServer?.gxServerUsername || \"\";\n this.selectedRecentlyUsedId = selectedServer?.id;\n };\n\n #connectionTypeChangedHandler = (event: CustomEvent<string>) => {\n this.selectedConnectionType = event.detail as ConnectionOption;\n if (this.selectedConnectionType === \"new\") {\n this.enableConfirmButton = false;\n this.serverUrlInputValue = \"\";\n }\n this.selectedServerName = \"None\";\n };\n\n #sortTabularGridColumnCallback = (\n e: CustomEvent<TabularGridColumnSortChangedEvent>\n ) => {\n this.filteredServersData = [\n ...sortTabularGridColumn(e, this.filteredServersData, \"string\", undefined)\n ];\n };\n\n #renderTabularGridColumnSet = (\n hideColumnName: boolean = false\n ): HTMLChTabularGridColumnsetElement => {\n return (\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n columnId=\"icon\"\n class=\"tabular-grid-column tabular-grid-column-icon\"\n columnName=\"Icon\"\n settingable={false}\n columnNameHidden={true}\n size={config.tabularGrid.colSize.maxContent}\n resizable={false}\n sortable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"serverName\"\n class=\"tabular-grid-column\"\n columnName=\"Server Name\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.serverName}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"serverUrl\"\n class=\"tabular-grid-column\"\n columnName=\"Server Url\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.auto}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"userName\"\n class=\"tabular-grid-column\"\n columnName=\"Connected\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.userName}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"action\"\n class=\"tabular-grid-column tabular-grid-column-icon\"\n columnName=\"Action\"\n settingable={false}\n columnNameHidden={true}\n size={config.tabularGrid.colSize.maxContent}\n resizable={false}\n sortable={false}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n );\n };\n\n #renderTooltip = (text: string): JSX.Element | null => {\n return text !== \"\" ? (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={null}\n blockAlign=\"outside-end\"\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delayLong}\n >\n {text}\n </ch-tooltip>\n ) : null;\n };\n\n #renderServerNameErrorMessage = (errorMsg: string) => {\n return (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty class=\"tabular-grid-rowset-empty\">\n <p class=\"warning-error-description\">\n <ch-image\n class=\"icon-md warning-error-icon\"\n src={ERROR_ICON}\n ></ch-image>\n {errorMsg}\n </p>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n );\n };\n\n #renderTabularGridCommonCells = (serverData: ServerData) => {\n return [\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#renderIcon(serverData.accessLevel)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.accessLevel === \"private\" ? (\n <ch-edit\n id={`${SERVER_NAME_PREFIX}${serverData.id}`}\n value={serverData.serverName}\n onInput={this.#onServerNameInput}\n onChange={() => this.#onServerNameChange(serverData)}\n maxLength={18}\n ref={el => {\n const key = `${SERVER_NAME_PREFIX}${serverData.id}`;\n if (el) {\n this.#serverNameEditElsMap.set(key, el as HTMLChEditElement);\n } else {\n this.#serverNameEditElsMap.delete(key);\n }\n }}\n ></ch-edit>\n ) : (\n serverData.serverName\n )}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.serverUrl}\n {this.#renderTooltip(serverData.serverUrl)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.gxServerUsername}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell\n class=\"tabular-grid-cell\"\n onClick={() => this.#handleDeleteServer(serverData)}\n >\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={this.#_componentLocale.actions.deleteServer}\n disabled={serverData.accessLevel === \"public\"}\n >\n <ch-image\n disabled={serverData.accessLevel === \"public\"}\n class=\"icon-md delete-server-icon\"\n src={DELETE_ICON}\n ></ch-image>\n </button>\n </ch-tabular-grid-cell>\n ];\n };\n\n #renderAllServersGrid = (): Element => {\n return (\n <div class=\"tabular-grid-wrapper\">\n <div class=\"border-patch\"></div>\n <ch-tabular-grid\n class={\"tabular-grid tabular-grid-all-servers\"}\n rowSelectionMode=\"single\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridAllServersEl = el)\n }\n allowColumnReorder={false}\n onRowClicked={this.#onServersRowClickHandler}\n id=\"all-servers\"\n >\n {this.#renderTabularGridColumnSet()}\n {this.filteredServersData.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.filteredServersData.map((serverData: ServerData) => {\n const serverNameEditKey = `${SERVER_NAME_PREFIX}${serverData.id}`;\n const hasError =\n this.validatableControls.get(serverNameEditKey)?.hasError ===\n true;\n const errorMsg =\n this.validatableControls.get(serverNameEditKey)?.message;\n\n return (\n <ch-tabular-grid-row\n rowid={serverData.id}\n class=\"tabular-grid-row\"\n >\n {this.#renderTabularGridCommonCells(serverData)}\n {hasError && this.#renderServerNameErrorMessage(errorMsg)}\n </ch-tabular-grid-row>\n );\n })}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty class=\"tabular-grid-rowset-empty\">\n <gx-ide-empty-state\n stateIconSrc={INFO_ICON}\n stateTitle={this.#_componentLocale.emptyConnectedServers}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n </div>\n );\n };\n\n #renderIcon = (accessLevel: string): JSX.Element => {\n const icon = accessLevel === \"private\" ? LOCK_ICON : LANGUAGE_ICON;\n return <ch-image class=\"icon-md\" src={icon}></ch-image>;\n };\n\n #renderFooter = () => {\n const isSelectionMode = this.selectedConnectionType === \"select\";\n return (\n <footer\n class={{\n \"control-footer-with-border\": true,\n \"control-footer-space-between\":\n this.selectedConnectionType === \"select\",\n \"space-between\": isSelectionMode,\n \"spacing-body-inline\": true,\n \"spacing-body-block\": true\n }}\n >\n {isSelectionMode && (\n <p class=\"body-italic-m\">Selected: {this.selectedServerName}</p>\n )}\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // confirm button\n class=\"button-primary\"\n onClick={this.enableConfirmButton && this.#confirmHandler}\n disabled={!this.enableConfirmButton}\n >\n {this.#_componentLocale.footer.confirm}\n </button>\n </div>\n </footer>\n );\n };\n\n #renderRecentlyUsed = () => {\n const renderRecentlyUsed =\n this.selectedConnectionType === \"select\" &&\n this.recentlyUsedServersData.length > 0;\n\n return (\n renderRecentlyUsed && (\n <div class=\"field field-block spacing-body-inline\">\n <label class=\"label\" htmlFor=\"recently-used-servers\">\n {this.#_componentLocale.recentlyUsed.title}\n </label>\n <div\n class={{\n \"layout\": true,\n \"layout--cols-3\": this.recentlyUsedServersData.length >= 3,\n \"layout--cols-2\": this.recentlyUsedServersData.length <= 2\n }}\n >\n {this.recentlyUsedServersData.map((server: ServerData) => (\n <button\n class={{\n \"layout__panel\": true,\n \"recently-used-card\": true,\n \"recently-used-card--selected\":\n this.selectedRecentlyUsedId === server.id\n }}\n onClick={() => this.#handleRecentlyUsedCardClick(server)}\n onDblClick={() =>\n this.#onRecentlyUsedDoubleClickHandler(server)\n }\n >\n <div class=\"recently-used-card-content\">\n <p class=\"body-regular-s text-neutral-gray-400\">\n {server.serverName}\n </p>\n <p class=\"body-regular-s text-neutral-gray-400 text-decoration-line-underline\">\n {server.serverUrl}\n </p>\n </div>\n {this.#renderTooltip(server.serverUrl)}\n </button>\n ))}\n </div>\n </div>\n )\n );\n };\n\n #renderAllServers = () => {\n return (\n <div class=\"field field-block field-block-all-servers spacing-body-inline\">\n <label class=\"label\" htmlFor=\"all-servers\">\n {this.#_componentLocale.allServers.title}\n </label>\n {this.#renderAllServersGrid()}\n </div>\n );\n };\n\n render(): void {\n return (\n <Host\n class={{\n \"widget elevation-1\": true,\n \"new-connection\": this.selectedConnectionType === \"new\",\n \"recently-used-empty\": this.recentlyUsedServersData.length === 0\n }}\n >\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <main class=\"section\">\n <header class=\"header spacing-body-block-start spacing-body-inline\">\n <div class=\"field-group\">\n <label class=\"body-regular-m text-neutral-gray-400\">\n {this.#_componentLocale.header.title}\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#connectionTypeChangedHandler}\n value={this.#versionsSelect[0].value}\n ></ch-radio-group-render>\n\n {this.selectedConnectionType === \"select\" && (\n <ch-edit\n class=\"input search-server\"\n id=\"server-name-search\"\n startImgSrc={SEARCH_ICON}\n onInput={this.#filterValueChangedHandler}\n placeholder={\n this.#_componentLocale.placeholders.searchServers\n }\n accessibleName=\"search server\"\n type=\"search\"\n ></ch-edit>\n )}\n </div>\n </header>\n\n {this.selectedConnectionType === \"select\" && [\n this.#renderRecentlyUsed(),\n this.#renderAllServers()\n ]}\n\n {this.selectedConnectionType === \"new\" && (\n <section class=\"spacing-body-inline\">\n <div class=\"layout layout--cols-2\">\n <div class=\"field field-block layout__panel\">\n <label class=\"label\" htmlFor=\"server-url\">\n {this.#_componentLocale.labels.serverUrl}\n </label>\n <ch-edit\n // server url\n class=\"input\"\n id=\"server-url\"\n value={this.serverUrlInputValue}\n onInput={event =>\n this.#inputHandler(event, \"serverUrlInputValue\")\n }\n placeholder={this.#_componentLocale.placeholders.serverUrl}\n ref={el => (this.#serverUrlEL = el as HTMLChEditElement)}\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#serverUrlEL)}\n </div>\n\n <div class=\"field field-block layout__panel\">\n <label class=\"label\" htmlFor=\"server-name\">\n {this.#_componentLocale.labels.serverName}\n </label>\n <ch-edit\n // server friendly name\n class=\"input\"\n id=\"server-name\"\n value={this.serverNameInputValue}\n onInput={event =>\n this.#inputHandler(event, \"serverNameInputValue\")\n }\n placeholder={this.#_componentLocale.placeholders.serverName}\n maxLength={18}\n ref={el =>\n (this.#serverFriendlyNameEL = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#serverFriendlyNameEL)}\n </div>\n </div>\n </section>\n )}\n\n {this.#renderFooter()}\n </main>\n </Host>\n );\n }\n}\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n};\n\nexport type ConnectionOption = \"select\" | \"new\";\n\nexport type ServerAccessLevel = \"public\" | \"private\";\n\nexport type AuthenticationSessionOrigin = {\n uri: string;\n name: string;\n};\n\nexport type ServerData = {\n id: string;\n serverUrl: string;\n accessLevel: ServerAccessLevel;\n masterSessionUsername: string;\n serverName?: string;\n sessionId?: string;\n gxServerUsername: string;\n isConnected: boolean;\n};\n\nexport type NewServerConnectionData = {\n serverUrl: string;\n serverName: string;\n};\n"]}
1
+ {"version":3,"file":"server-selector.js","sourceRoot":"","sources":["../../../../src/components/team-dev/server-selector/server-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["// Stencil\nimport { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport {\n ChEditCustomEvent,\n TabularGridColumnSortChangedEvent,\n TabularGridRowClickedEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { getAssetPath, JSX, Watch } from \"@stencil/core/internal\";\nimport { config } from \"../../../common/config\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\n\nimport sortTabularGridColumn from \"../../../common/chameleon/tabular-grid-column-sort\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/tooltip\",\n \"chameleon/scrollbar\",\n \"components/tabular-grid\"\n];\n\nconst INFO_ICON = getIconPath({\n category: \"system\",\n name: \"information\",\n colorType: \"on-surface\"\n});\n\nconst LOCK_ICON = getIconPath({\n category: \"system\",\n name: \"lock\",\n colorType: \"on-surface\"\n});\n\nconst LANGUAGE_ICON = getIconPath({\n category: \"system\",\n name: \"language\",\n colorType: \"on-surface\"\n});\n\nconst DELETE_ICON = getIconPath({\n category: \"system\",\n name: \"delete-outlined\",\n colorType: \"neutral\"\n});\n\nconst ERROR_ICON = getIconPath({\n category: \"system\",\n name: \"error\",\n colorType: \"error\"\n});\n\nconst SEARCH_ICON = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n});\n\nconst SERVER_NAME_PREFIX = \"server-name-\";\n\n@Component({\n tag: \"gx-ide-server-selector\",\n styleUrl: \"server-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/server-selector\"]\n})\nexport class GxIdeServerSelector {\n #_componentLocale: any;\n\n #chGridAllServersEl: HTMLChTabularGridElement;\n #serverUrlEL: HTMLChEditElement;\n #serverFriendlyNameEL: HTMLChEditElement;\n #updatedServerName: string | undefined;\n #serverNameEditElsMap: Map<string, HTMLChEditElement> = new Map();\n #versionsSelect: RadioGroupItemModel[] = [];\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/server-selector/shortcuts.json`\n );\n @Element() el: HTMLGxIdeServerSelectorElement;\n\n /**\n * State to enable/disable confirm button.\n */\n @State() enableConfirmButton: boolean = false;\n\n /**\n * The current server URL input value.\n */\n @State() serverUrlInputValue: string = \"\";\n\n /**\n * The current server URL input value.\n */\n @State() serverNameInputValue: string = \"\";\n\n /**\n * The selected server URI.\n */\n @State() selectedServerUri: string | undefined;\n\n /**\n * The selected server name.\n */\n @State() selectedServerName: string | undefined = \"None\";\n\n /**\n * The user name of the selected server.\n */\n @State() userName: string;\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * Servers filtered\n */\n @State() filteredServersData: ServerData[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The selected connection type\n */\n @State() selectedConnectionType: ConnectionOption = \"select\";\n\n /**\n * The selected recently used server ID\n */\n @State() selectedRecentlyUsedId: string;\n\n /**\n * The list of all GX servers.\n */\n @Prop({ mutable: true }) serversData: ServerData[] = [];\n @Watch(\"serversData\")\n serversDataChanged(newValue: ServerData[]) {\n this.filteredServersData = newValue;\n }\n /**\n * The list of recently used servers.\n */\n @Prop() readonly recentlyUsedServersData: ServerData[] = [];\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed and the Select Server option is checked.\n */\n @Prop() readonly selectServerCallback!: (\n authenticationSessionOrigin: AuthenticationSessionOrigin,\n connectionOption: ConnectionOption\n ) => Promise<FormSubmitResult>;\n\n /**\n * Invoked to delete a server\n */\n @Prop() readonly deleteServerCallback!: (\n serverData: ServerData\n ) => Promise<boolean>;\n\n /**\n * Invoked to update a server\n */\n @Prop() readonly updateServerCallback!: (\n serverData: ServerData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n\n this.#versionsSelect = [\n {\n value: \"select\",\n caption: this.#_componentLocale.captions.selectServer\n },\n {\n value: \"new\",\n caption: this.#_componentLocale.captions.addServer\n }\n ];\n\n this.selectedServerUri = this.serversData[0]?.serverUrl;\n this.userName = this.serversData[0]?.gxServerUsername;\n\n this.filteredServersData = this.serversData;\n }\n\n componentDidRender() {\n if (\n this.selectedConnectionType === \"new\" &&\n this.#serverUrlEL &&\n this.#serverFriendlyNameEL\n ) {\n this.#initializeValidatableControls([\n this.#serverUrlEL,\n this.#serverFriendlyNameEL\n ]);\n this.#serverNameEditElsMap.clear();\n }\n\n if (\n this.selectedConnectionType === \"select\" &&\n this.#serverNameEditElsMap.size > 0\n ) {\n this.#initializeValidatableControls([\n ...this.#serverNameEditElsMap.values()\n ]);\n }\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #confirmHandler = async (): Promise<void> => {\n let formSubmitResult: FormSubmitResult;\n if (this.selectedConnectionType === \"select\") {\n formSubmitResult = await this.selectServerCallback(\n {\n uri: this.selectedServerUri,\n name: this.selectedServerName\n },\n this.selectedConnectionType\n );\n } else {\n formSubmitResult = await this.selectServerCallback(\n {\n uri: this.serverUrlInputValue,\n name: this.serverNameInputValue\n },\n this.selectedConnectionType\n );\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 = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.filteredServersData = this.serversData.filter(item =>\n item.serverName.toLowerCase().includes(this.filterValue)\n );\n };\n\n #inputHandler = (\n event: ChEditCustomEvent<string> | InputEvent,\n field: \"serverUrlInputValue\" | \"serverNameInputValue\"\n ) => {\n this.enableConfirmButton = false;\n this[field] = (event.detail as string).trim();\n\n const controlId =\n field === \"serverUrlInputValue\" ? \"server-url\" : \"server-name\";\n clearControlError(this.validatableControls, controlId);\n this.#enableConfirmButton();\n };\n\n #handleRecentlyUsedCardClick = async (server: ServerData) => {\n this.selectedRecentlyUsedId = server.id;\n await this.#chGridAllServersEl?.selectRow(server.id);\n await this.#handleServerSelection(server.id);\n };\n\n #handleDeleteServer = async (serverData: ServerData) => {\n if (serverData.accessLevel === \"private\") {\n const result = await this.deleteServerCallback(serverData);\n if (result) {\n this.selectedServerName = \"None\";\n this.enableConfirmButton = false;\n }\n }\n };\n\n #onServerNameInput = async (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.#updatedServerName = event.detail as string;\n };\n\n #onServerNameChange = async (serverData: ServerData) => {\n let result: FormSubmitResult = {\n fieldErrors: [],\n success: false\n };\n if (\n serverData.serverName !== this.#updatedServerName &&\n serverData.accessLevel === \"private\"\n ) {\n result = await this.updateServerCallback({\n ...serverData,\n serverName: this.#updatedServerName\n });\n }\n\n this.validatableControls = validateControls(\n result,\n this.validatableControls\n );\n\n if (result.success || serverData.serverName === this.#updatedServerName) {\n this.selectedServerName = this.#updatedServerName;\n clearControlError(\n this.validatableControls,\n `${SERVER_NAME_PREFIX}${serverData.id}`\n );\n }\n };\n\n #enableConfirmButton = () => {\n if (\n this.serverUrlInputValue &&\n this.serverUrlInputValue.length > 0 &&\n this.serverNameInputValue &&\n this.serverNameInputValue.length > 0\n ) {\n this.enableConfirmButton = true;\n } else {\n this.enableConfirmButton = false;\n }\n };\n\n #onRecentlyUsedDoubleClickHandler = (serverData: ServerData) => {\n this.#handleServerSelection(serverData.id);\n this.#confirmHandler();\n };\n\n #onServersRowClickHandler = (\n event: CustomEvent<TabularGridRowClickedEvent>\n ) => this.#handleServerSelection(event.detail.rowId);\n\n #handleServerSelection = async (selectedRowId: string): Promise<void> => {\n if (selectedRowId === undefined) {\n this.enableConfirmButton = false;\n this.selectedServerUri = undefined;\n this.selectedServerName = undefined;\n return;\n }\n\n const selectedServer = this.serversData.find(\n server => server.id === selectedRowId\n );\n this.enableConfirmButton = true;\n this.selectedServerName = selectedServer?.serverName;\n this.selectedServerUri = selectedServer?.serverUrl;\n this.userName = selectedServer?.gxServerUsername || \"\";\n this.selectedRecentlyUsedId = selectedServer?.id;\n };\n\n #connectionTypeChangedHandler = (event: CustomEvent<string>) => {\n this.selectedConnectionType = event.detail as ConnectionOption;\n if (this.selectedConnectionType === \"new\") {\n this.enableConfirmButton = false;\n this.serverUrlInputValue = \"\";\n }\n this.selectedServerName = \"None\";\n };\n\n #sortTabularGridColumnCallback = (\n e: CustomEvent<TabularGridColumnSortChangedEvent>\n ) => {\n this.filteredServersData = [\n ...sortTabularGridColumn(e, this.filteredServersData, \"string\", undefined)\n ];\n };\n\n #renderTabularGridColumnSet = (\n hideColumnName: boolean = false\n ): HTMLChTabularGridColumnsetElement => {\n return (\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n columnId=\"icon\"\n class=\"tabular-grid-column tabular-grid-column-icon\"\n columnName=\"Icon\"\n settingable={false}\n columnNameHidden={true}\n size={config.tabularGrid.colSize.maxContent}\n resizable={false}\n sortable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"serverName\"\n class=\"tabular-grid-column\"\n columnName=\"Server Name\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.serverName}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"serverUrl\"\n class=\"tabular-grid-column\"\n columnName=\"Server Url\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.auto}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"userName\"\n class=\"tabular-grid-column\"\n columnName=\"Connected\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.userName}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"action\"\n class=\"tabular-grid-column tabular-grid-column-icon\"\n columnName=\"Action\"\n settingable={false}\n columnNameHidden={true}\n size={config.tabularGrid.colSize.maxContent}\n resizable={false}\n sortable={false}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n );\n };\n\n #renderTooltip = (text: string): JSX.Element | null => {\n return text !== \"\" ? (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={null}\n blockAlign=\"outside-end\"\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delayLong}\n >\n {text}\n </ch-tooltip>\n ) : null;\n };\n\n #renderServerNameErrorMessage = (errorMsg: string) => {\n return (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty class=\"tabular-grid-rowset-empty\">\n <p class=\"warning-error-description\">\n <ch-image\n class=\"icon-md warning-error-icon\"\n src={ERROR_ICON}\n ></ch-image>\n {errorMsg}\n </p>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n );\n };\n\n #renderTabularGridCommonCells = (serverData: ServerData) => {\n return [\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#renderIcon(serverData.accessLevel)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.accessLevel === \"private\" ? (\n <ch-edit\n id={`${SERVER_NAME_PREFIX}${serverData.id}`}\n value={serverData.serverName}\n onInput={this.#onServerNameInput}\n onChange={() => this.#onServerNameChange(serverData)}\n maxLength={18}\n ref={el => {\n const key = `${SERVER_NAME_PREFIX}${serverData.id}`;\n if (el) {\n this.#serverNameEditElsMap.set(key, el as HTMLChEditElement);\n } else {\n this.#serverNameEditElsMap.delete(key);\n }\n }}\n ></ch-edit>\n ) : (\n serverData.serverName\n )}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.serverUrl}\n {this.#renderTooltip(serverData.serverUrl)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.gxServerUsername}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell\n class=\"tabular-grid-cell\"\n onClick={() => this.#handleDeleteServer(serverData)}\n >\n <button\n id=\"delete-button\"\n class=\"button-tertiary button-icon-only\"\n aria-label={this.#_componentLocale.actions.deleteServer}\n disabled={serverData.accessLevel === \"public\"}\n >\n <ch-image\n disabled={serverData.accessLevel === \"public\"}\n class=\"icon-md delete-server-icon\"\n src={DELETE_ICON}\n ></ch-image>\n </button>\n </ch-tabular-grid-cell>\n ];\n };\n\n #renderAllServersGrid = (): Element => {\n return (\n <div class=\"tabular-grid-wrapper\">\n <div class=\"border-patch\"></div>\n <ch-tabular-grid\n class={\"tabular-grid tabular-grid-all-servers\"}\n rowSelectionMode=\"single\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridAllServersEl = el)\n }\n allowColumnReorder={false}\n onRowClicked={this.#onServersRowClickHandler}\n id=\"all-servers\"\n >\n {this.#renderTabularGridColumnSet()}\n {this.filteredServersData.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.filteredServersData.map((serverData: ServerData) => {\n const serverNameEditKey = `${SERVER_NAME_PREFIX}${serverData.id}`;\n const hasError =\n this.validatableControls.get(serverNameEditKey)?.hasError ===\n true;\n const errorMsg =\n this.validatableControls.get(serverNameEditKey)?.message;\n\n return (\n <ch-tabular-grid-row\n rowid={serverData.id}\n class=\"tabular-grid-row\"\n >\n {this.#renderTabularGridCommonCells(serverData)}\n {hasError && this.#renderServerNameErrorMessage(errorMsg)}\n </ch-tabular-grid-row>\n );\n })}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty class=\"tabular-grid-rowset-empty\">\n <gx-ide-empty-state\n stateIconSrc={INFO_ICON}\n stateTitle={this.#_componentLocale.emptyConnectedServers}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n </div>\n );\n };\n\n #renderIcon = (accessLevel: string): JSX.Element => {\n const icon = accessLevel === \"private\" ? LOCK_ICON : LANGUAGE_ICON;\n return <ch-image class=\"icon-md\" src={icon}></ch-image>;\n };\n\n #renderFooter = () => {\n const isSelectionMode = this.selectedConnectionType === \"select\";\n return (\n <footer\n class={{\n \"control-footer-with-border\": true,\n \"control-footer-space-between\":\n this.selectedConnectionType === \"select\",\n \"space-between\": isSelectionMode,\n \"spacing-body-inline\": true,\n \"spacing-body-block\": true\n }}\n >\n {isSelectionMode && (\n <p class=\"body-italic-m\">Selected: {this.selectedServerName}</p>\n )}\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n id=\"cancel-button\"\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // confirm button\n id=\"confirm-button\"\n class=\"button-primary\"\n onClick={this.enableConfirmButton && this.#confirmHandler}\n disabled={!this.enableConfirmButton}\n >\n {this.#_componentLocale.footer.confirm}\n </button>\n </div>\n </footer>\n );\n };\n\n #renderRecentlyUsed = () => {\n const renderRecentlyUsed =\n this.selectedConnectionType === \"select\" &&\n this.recentlyUsedServersData.length > 0;\n\n return (\n renderRecentlyUsed && (\n <div class=\"field field-block spacing-body-inline\">\n <label class=\"label\" htmlFor=\"recently-used-servers\">\n {this.#_componentLocale.recentlyUsed.title}\n </label>\n <div\n class={{\n \"layout\": true,\n \"layout--cols-3\": this.recentlyUsedServersData.length >= 3,\n \"layout--cols-2\": this.recentlyUsedServersData.length <= 2\n }}\n >\n {this.recentlyUsedServersData.map(\n (server: ServerData, index: number) => (\n <button\n id={\"recently-used-server-\" + index}\n class={{\n \"layout__panel\": true,\n \"recently-used-card\": true,\n \"recently-used-card--selected\":\n this.selectedRecentlyUsedId === server.id\n }}\n onClick={() => this.#handleRecentlyUsedCardClick(server)}\n onDblClick={() =>\n this.#onRecentlyUsedDoubleClickHandler(server)\n }\n >\n <div class=\"recently-used-card-content\">\n <p class=\"body-regular-s text-neutral-gray-400\">\n {server.serverName}\n </p>\n <p class=\"body-regular-s text-neutral-gray-400 text-decoration-line-underline\">\n {server.serverUrl}\n </p>\n </div>\n {this.#renderTooltip(server.serverUrl)}\n </button>\n )\n )}\n </div>\n </div>\n )\n );\n };\n\n #renderAllServers = () => {\n return (\n <div class=\"field field-block field-block-all-servers spacing-body-inline\">\n <label class=\"label\" htmlFor=\"all-servers\">\n {this.#_componentLocale.allServers.title}\n </label>\n {this.#renderAllServersGrid()}\n </div>\n );\n };\n\n render(): void {\n return (\n <Host\n class={{\n \"widget elevation-1\": true,\n \"new-connection\": this.selectedConnectionType === \"new\",\n \"recently-used-empty\": this.recentlyUsedServersData.length === 0\n }}\n >\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts src={this.#shortcutsSrc}></ch-shortcuts>\n <main class=\"section\">\n <header class=\"header spacing-body-block-start spacing-body-inline\">\n <div class=\"field-group\">\n <label class=\"body-regular-m text-neutral-gray-400\">\n {this.#_componentLocale.header.title}\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#connectionTypeChangedHandler}\n value={this.#versionsSelect[0].value}\n ></ch-radio-group-render>\n\n {this.selectedConnectionType === \"select\" && (\n <ch-edit\n class=\"input search-server\"\n id=\"server-name-search\"\n startImgSrc={SEARCH_ICON}\n onInput={this.#filterValueChangedHandler}\n placeholder={\n this.#_componentLocale.placeholders.searchServers\n }\n accessibleName=\"search server\"\n type=\"search\"\n ></ch-edit>\n )}\n </div>\n </header>\n\n {this.selectedConnectionType === \"select\" && [\n this.#renderRecentlyUsed(),\n this.#renderAllServers()\n ]}\n\n {this.selectedConnectionType === \"new\" && (\n <section class=\"spacing-body-inline\">\n <div class=\"layout layout--cols-2\">\n <div class=\"field field-block layout__panel\">\n <label class=\"label\" htmlFor=\"server-url\">\n {this.#_componentLocale.labels.serverUrl}\n </label>\n <ch-edit\n // server url\n class=\"input\"\n id=\"server-url\"\n value={this.serverUrlInputValue}\n onInput={event =>\n this.#inputHandler(event, \"serverUrlInputValue\")\n }\n placeholder={this.#_componentLocale.placeholders.serverUrl}\n ref={el => (this.#serverUrlEL = el as HTMLChEditElement)}\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#serverUrlEL)}\n </div>\n\n <div class=\"field field-block layout__panel\">\n <label class=\"label\" htmlFor=\"server-name\">\n {this.#_componentLocale.labels.serverName}\n </label>\n <ch-edit\n // server friendly name\n class=\"input\"\n id=\"server-name\"\n value={this.serverNameInputValue}\n onInput={event =>\n this.#inputHandler(event, \"serverNameInputValue\")\n }\n placeholder={this.#_componentLocale.placeholders.serverName}\n maxLength={18}\n ref={el =>\n (this.#serverFriendlyNameEL = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#serverFriendlyNameEL)}\n </div>\n </div>\n </section>\n )}\n\n {this.#renderFooter()}\n </main>\n </Host>\n );\n }\n}\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n};\n\nexport type ConnectionOption = \"select\" | \"new\";\n\nexport type ServerAccessLevel = \"public\" | \"private\";\n\nexport type AuthenticationSessionOrigin = {\n uri: string;\n name: string;\n};\n\nexport type ServerData = {\n id: string;\n serverUrl: string;\n accessLevel: ServerAccessLevel;\n masterSessionUsername: string;\n serverName?: string;\n sessionId?: string;\n gxServerUsername: string;\n isConnected: boolean;\n};\n\nexport type NewServerConnectionData = {\n serverUrl: string;\n serverName: string;\n};\n"]}
@@ -4,7 +4,7 @@
4
4
  "keyShortcuts": "Enter",
5
5
  "action": "click",
6
6
  "conditions": {
7
- "focusExclude": "[part~='button-cancel']"
7
+ "focusExclude": "[part~='button-cancel'], [id='change-connection-button'], [id='select-version-button']"
8
8
  }
9
9
  }
10
10
  ]
@@ -168,13 +168,13 @@ export class GxIdeShareKb {
168
168
  __classPrivateFieldSet(this, _GxIdeShareKb__componentLocale, await Locale.getComponentStrings(this.el), "f");
169
169
  }
170
170
  render() {
171
- return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-shortcuts", { src: __classPrivateFieldGet(this, _GxIdeShareKb_shortcutsSrc, "f"), ref: (el) => (this.chShortcutsEl = el) }), h("section", { class: "section" }, h("header", { class: "header control-header-with-border space-body spacing-body-inline spacing-body-block-start" }, h("div", { class: "field field-block" }, h("label", { class: "label" }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").header.serverUrl), h("p", null, this.connectionData.serverUrl)), h("div", { class: "field field-block" }, h("label", { class: "label" }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").header.user), h("p", null, this.connectionData.userName)), h("button", { class: "button-tertiary button-change", onClick: __classPrivateFieldGet(this, _GxIdeShareKb_changeConnectionHandler, "f") }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").header.change)), h("section", { class: "main field-group spacing-body" }, h("div", { class: "field field-block" }, h("label", { class: "label", htmlFor: "alias" }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").kb.aliasLabel), h("ch-edit", {
171
+ return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-shortcuts", { src: __classPrivateFieldGet(this, _GxIdeShareKb_shortcutsSrc, "f"), ref: (el) => (this.chShortcutsEl = el) }), h("section", { class: "section" }, h("header", { class: "header control-header-with-border space-body spacing-body-inline spacing-body-block-start" }, h("div", { class: "field field-block" }, h("label", { class: "label" }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").header.serverUrl), h("p", null, this.connectionData.serverUrl)), h("div", { class: "field field-block" }, h("label", { class: "label" }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").header.user), h("p", null, this.connectionData.userName)), h("button", { id: "change-connection-button", class: "button-tertiary button-change", onClick: __classPrivateFieldGet(this, _GxIdeShareKb_changeConnectionHandler, "f") }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").header.change)), h("section", { class: "main field-group spacing-body" }, h("div", { class: "field field-block" }, h("label", { class: "label", htmlFor: "alias" }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").kb.aliasLabel), h("ch-edit", {
172
172
  // alias
173
173
  class: "input", id: "kb-name", value: this.kbName, onInput: __classPrivateFieldGet(this, _GxIdeShareKb_kbNameInputHandler, "f"), placeholder: __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").kb.localKbNamePlaceholder, ref: (el) => (__classPrivateFieldSet(this, _GxIdeShareKb_KBNameEl, el, "f"))
174
174
  }), __classPrivateFieldGet(this, _GxIdeShareKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeShareKb_KBNameEl, "f"))), h("div", { class: "versions-container field-group" }, h("ch-radio-group-render", { class: "radio-group", model: __classPrivateFieldGet(this, _GxIdeShareKb_versionsSelect, "f"), onChange: __classPrivateFieldGet(this, _GxIdeShareKb_versionsChangedHandler, "f"), value: __classPrivateFieldGet(this, _GxIdeShareKb_versionsSelect, "f")[0].value, ref: (el) => (__classPrivateFieldSet(this, _GxIdeShareKb_versionSelectedTypeEl, el, "f")) }), this.versionSelectedType === "Select" && (h("div", { class: "versions-container__item field-group" }, h("div", { class: "field field-block" }, h("label", { class: "label", htmlFor: "control-id-1" }, __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").kb.versionsLabel), h("div", { class: "versions-container__input" }, h("ch-edit", { class: "input", readonly: true, placeholder: this.enableSelectVersionsButton
175
175
  ? __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").kb.versionsPlaceholder
176
176
  : __classPrivateFieldGet(this, _GxIdeShareKb__componentLocale, "f").kb
177
- .versionsPlaceholderDisabled, value: this.versionsValueInput }), h("button", { class: "button-tertiary button-icon-only", onClick: __classPrivateFieldGet(this, _GxIdeShareKb_selectedVersionHandler, "f"), disabled: !this.enableSelectVersionsButton }, h("ch-image", { src: __classPrivateFieldGet(this, _GxIdeShareKb_showMoreIcon, "f"), class: "icon-sm" })))))))), __classPrivateFieldGet(this, _GxIdeShareKb_renderFooter, "f").call(this))));
177
+ .versionsPlaceholderDisabled, value: this.versionsValueInput }), h("button", { id: "select-version-button", class: "button-tertiary button-icon-only", onClick: __classPrivateFieldGet(this, _GxIdeShareKb_selectedVersionHandler, "f"), disabled: !this.enableSelectVersionsButton }, h("ch-image", { src: __classPrivateFieldGet(this, _GxIdeShareKb_showMoreIcon, "f"), class: "icon-sm" })))))))), __classPrivateFieldGet(this, _GxIdeShareKb_renderFooter, "f").call(this))));
178
178
  }
179
179
  static get is() { return "gx-ide-share-kb"; }
180
180
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"share-kb.js","sourceRoot":"","sources":["../../../../src/components/team-dev/share-kb/share-kb.tsx"],"names":[],"mappings":"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","sourcesContent":["// Stencil\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n getAssetPath,\n h,\n Host,\n Prop,\n State\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { ChEditCustomEvent } from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { config } from \"../../../common/config\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { KBVersion } from \"../version-control/common/types\";\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\" }\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbVersions: KBVersion[] = [];\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 if (this.versionSelectedType !== \"Select\") {\n this.#kbVersions = [];\n }\n this.shareKBCallback({\n name: this.kbName,\n serverUrl: this.connectionData.serverUrl,\n versionList: this.#kbVersions,\n allVersions: this.versionSelectedType === \"All\"\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.#kbVersions = result.map(kbVersion => ({\n id: kbVersion.id,\n name: kbVersion.name\n }));\n\n if (result.length === 1 && this.#kbVersions[0].id === 0) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput =\n this.#_componentLocale.kb.versionsPlaceholder;\n } else if (result.length > 1) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput = `${result.length.toString()} ${\n this.#_componentLocale.kb.versionSelectedFieldValue\n }`;\n } else {\n this.localKbNameInputValue = `${this.#selectedKbId}_${\n this.#kbVersions[0].name\n }`;\n this.versionsValueInput = `${result[0].name} ${\n this.#_componentLocale.kb.oneVersionSelectedFieldValue\n }`;\n }\n }\n });\n }\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n if (this.versionSelectedType === \"Select\") {\n this.enableSelectVersionsButton = true;\n } else {\n this.enableSelectVersionsButton = false;\n }\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: HTMLChRadioGroupRenderElement) =>\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 ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type ShareKBData = {\n name: string;\n serverUrl: string;\n versionList: KBVersion[];\n allVersions: boolean;\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n"]}
1
+ {"version":3,"file":"share-kb.js","sourceRoot":"","sources":["../../../../src/components/team-dev/share-kb/share-kb.tsx"],"names":[],"mappings":"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","sourcesContent":["// Stencil\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n getAssetPath,\n h,\n Host,\n Prop,\n State\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { ChEditCustomEvent } from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { config } from \"../../../common/config\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { KBVersion } from \"../version-control/common/types\";\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\" }\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbVersions: KBVersion[] = [];\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 if (this.versionSelectedType !== \"Select\") {\n this.#kbVersions = [];\n }\n this.shareKBCallback({\n name: this.kbName,\n serverUrl: this.connectionData.serverUrl,\n versionList: this.#kbVersions,\n allVersions: this.versionSelectedType === \"All\"\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.#kbVersions = result.map(kbVersion => ({\n id: kbVersion.id,\n name: kbVersion.name\n }));\n\n if (result.length === 1 && this.#kbVersions[0].id === 0) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput =\n this.#_componentLocale.kb.versionsPlaceholder;\n } else if (result.length > 1) {\n this.localKbNameInputValue = this.#selectedKbId;\n this.versionsValueInput = `${result.length.toString()} ${\n this.#_componentLocale.kb.versionSelectedFieldValue\n }`;\n } else {\n this.localKbNameInputValue = `${this.#selectedKbId}_${\n this.#kbVersions[0].name\n }`;\n this.versionsValueInput = `${result[0].name} ${\n this.#_componentLocale.kb.oneVersionSelectedFieldValue\n }`;\n }\n }\n });\n }\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n if (this.versionSelectedType === \"Select\") {\n this.enableSelectVersionsButton = true;\n } else {\n this.enableSelectVersionsButton = false;\n }\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 id=\"change-connection-button\"\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n\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: HTMLChRadioGroupRenderElement) =>\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 id=\"select-version-button\"\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-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 ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type ShareKBData = {\n name: string;\n serverUrl: string;\n versionList: KBVersion[];\n allVersions: boolean;\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n"]}
@@ -73,6 +73,72 @@ const renderObjectTypeWithIcon = (objectType) => {
73
73
  `${objectType.name}`));
74
74
  };
75
75
 
76
- export { renderObjectStateWithIcon as a, renderObjectTypeWithIcon as r };
76
+ const ALL_VALUE = "All";
77
+ const CSS_SELECTORS = {
78
+ HEADER: "header spacing-body-inline spacing-body-block-start",
79
+ HEADER_DETAILS: "header__details",
80
+ FILTER: "filter",
81
+ MAIN: "main spacing-body",
82
+ GRID_CELL_DESCRIPTION: "tabular-grid-cell-description-custom-selector"
83
+ };
84
+ const ICONS = {
85
+ add: getIconPath({
86
+ category: "system",
87
+ name: "add",
88
+ colorType: "on-elevation"
89
+ }),
90
+ edit: getIconPath({
91
+ category: "system",
92
+ name: "edit",
93
+ colorType: "on-elevation"
94
+ }),
95
+ error: getIconPath({
96
+ category: "system",
97
+ name: "error",
98
+ colorType: "error"
99
+ }),
100
+ filter: getIconPath({
101
+ category: "window-tools",
102
+ name: "filter",
103
+ colorType: "neutral"
104
+ }),
105
+ filterWithConditions: getIconPath({
106
+ category: "window-tools",
107
+ name: "filter-conditions",
108
+ colorType: "neutral"
109
+ }),
110
+ info: getIconPath({
111
+ category: "system",
112
+ name: "information",
113
+ colorType: "on-elevation"
114
+ }),
115
+ refresh: getIconPath({
116
+ category: "gemini-tools",
117
+ name: "reset",
118
+ colorType: "neutral"
119
+ }),
120
+ search: getIconPath({
121
+ category: "system",
122
+ name: "search",
123
+ colorType: "on-elevation"
124
+ }),
125
+ success: getIconPath({
126
+ category: "system",
127
+ name: "check",
128
+ colorType: "success"
129
+ }),
130
+ substract: getIconPath({
131
+ category: "system",
132
+ name: "substract",
133
+ colorType: "on-elevation"
134
+ }),
135
+ warning: getIconPath({
136
+ category: "system",
137
+ name: "warning",
138
+ colorType: "warning"
139
+ })
140
+ };
141
+
142
+ export { ALL_VALUE as A, CSS_SELECTORS as C, ICONS as I, renderObjectStateWithIcon as a, renderObjectTypeWithIcon as r };
77
143
 
78
- //# sourceMappingURL=utilities.js.map
144
+ //# sourceMappingURL=constants2.js.map
@@ -0,0 +1 @@
1
+ {"file":"constants2.js","mappings":"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","names":[],"sources":["src/components/team-dev/common/utilities.tsx","src/components/team-dev/version-control/common/constants.ts"],"sourcesContent":["// Stencil\nimport { h, JSX } from \"@stencil/core\";\nimport { getIconPath } from \"@genexus/mercury\";\nimport { ObjectState } from \"../version-control/common/types\";\nimport { ObjectType } from \"../../../components\";\n\nconst INSERTED_ICON = getIconPath({\n category: \"system\",\n name: \"add\",\n colorType: \"success\"\n});\nconst EDITED_ICON = getIconPath({\n category: \"system\",\n name: \"edit\",\n colorType: \"warning\"\n});\nconst DELETED_ICON = getIconPath({\n category: \"system\",\n name: \"substract\",\n colorType: \"error\"\n});\nconst WARNING_ICON = getIconPath({\n category: \"system\",\n name: \"warning\",\n colorType: \"warning\"\n});\n\n/**\n * Renders a visual indicator (icon and label) for a given object state.\n *\n * This helper function maps a fixed set of object states to corresponding icons\n *\n * Supported states:\n * - \"inserted\": Displays a green \"add\" icon.\n * - \"modified\": Displays a yellow \"edit\" icon.\n * - \"deleted\": Displays a red \"subtract\" icon.\n * - \"conflicted\": Displays a yellow \"warning\" icon.\n *\n * @param {ObjectState} objectState - The current state of the object.\n * @returns {HTMLChImageElement} A span element containing the corresponding icon and state label.\n */\nexport const renderObjectStateWithIcon = (\n objectState: ObjectState\n): HTMLChImageElement => {\n let icon: string;\n switch (objectState) {\n case \"inserted\":\n icon = INSERTED_ICON;\n break;\n case \"modified\":\n icon = EDITED_ICON;\n break;\n case \"deleted\":\n icon = DELETED_ICON;\n break;\n case \"conflicted\":\n icon = WARNING_ICON;\n break;\n }\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image class=\"icon-md\" src={icon}></ch-image>\n {`${objectState.charAt(0).toUpperCase() + objectState.slice(1)}`}\n </span>\n );\n};\n\n/**\n * Renders a GeneXus object type as a span element containing its icon and name.\n *\n * @param {ObjectType} objectType - The GeneXus object type to render, including its `icon` and `name` properties.\n * @returns {JSX.Element} A span element with the object's icon and label.\n */\nexport const renderObjectTypeWithIcon = (\n objectType: ObjectType\n): JSX.Element => {\n // bring changes\n const icon = objectType.icon;\n\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image class=\"icon-md\" src={icon}></ch-image>\n {`${objectType.name}`}\n </span>\n );\n};\n","import { getIconPath } from \"@genexus/mercury\";\n\nexport const ALL_VALUE = \"All\";\nexport const ALL_MODULES = \"All Modules\";\nexport const ALL_TYPES = \"All Types\";\n\nexport const CSS_SELECTORS = {\n HEADER: \"header spacing-body-inline spacing-body-block-start\",\n HEADER_DETAILS: \"header__details\",\n FILTER: \"filter\",\n MAIN: \"main spacing-body\",\n GRID_CELL_DESCRIPTION: \"tabular-grid-cell-description-custom-selector\"\n};\n\nconst ICONS = {\n add: getIconPath({\n category: \"system\",\n name: \"add\",\n colorType: \"on-elevation\"\n }),\n edit: getIconPath({\n category: \"system\",\n name: \"edit\",\n colorType: \"on-elevation\"\n }),\n error: getIconPath({\n category: \"system\",\n name: \"error\",\n colorType: \"error\"\n }),\n filter: getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"neutral\"\n }),\n filterWithConditions: getIconPath({\n category: \"window-tools\",\n name: \"filter-conditions\",\n colorType: \"neutral\"\n }),\n info: getIconPath({\n category: \"system\",\n name: \"information\",\n colorType: \"on-elevation\"\n }),\n refresh: getIconPath({\n category: \"gemini-tools\",\n name: \"reset\",\n colorType: \"neutral\"\n }),\n search: getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-elevation\"\n }),\n success: getIconPath({\n category: \"system\",\n name: \"check\",\n colorType: \"success\"\n }),\n substract: getIconPath({\n category: \"system\",\n name: \"substract\",\n colorType: \"on-elevation\"\n }),\n warning: getIconPath({\n category: \"system\",\n name: \"warning\",\n colorType: \"warning\"\n })\n};\nexport default ICONS;\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
1
+ import { proxyCustomElement, HTMLElement, getAssetPath, h, Host } from '@stencil/core/internal/client';
2
2
  import { c as config } from './config.js';
3
3
  import { v as validateControls } from './form-validation.js';
4
4
  import { L as Locale } from './locale.js';
@@ -30,7 +30,7 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
30
30
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
31
31
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
32
32
  };
33
- var _HTMLGxIdeConnectGxServer_componentLocale, _HTMLGxIdeConnectGxServer_usernameRef, _HTMLGxIdeConnectGxServer_passwordRef, _HTMLGxIdeConnectGxServer_serverUrlRef, _HTMLGxIdeConnectGxServer_cancelClickHandler, _HTMLGxIdeConnectGxServer_connectClickHandler, _HTMLGxIdeConnectGxServer_evaluateTooltipRender, _HTMLGxIdeConnectGxServer_init, _HTMLGxIdeConnectGxServer_initializeValidatableControls, _HTMLGxIdeConnectGxServer_authenticationInputEventHandler, _HTMLGxIdeConnectGxServer_usernameInputEventHandler, _HTMLGxIdeConnectGxServer_passwordInputEventHandler;
33
+ var _HTMLGxIdeConnectGxServer_componentLocale, _HTMLGxIdeConnectGxServer_usernameRef, _HTMLGxIdeConnectGxServer_passwordRef, _HTMLGxIdeConnectGxServer_serverUrlRef, _HTMLGxIdeConnectGxServer_shortcutsSrc, _HTMLGxIdeConnectGxServer_cancelClickHandler, _HTMLGxIdeConnectGxServer_connectClickHandler, _HTMLGxIdeConnectGxServer_evaluateTooltipRender, _HTMLGxIdeConnectGxServer_init, _HTMLGxIdeConnectGxServer_initializeValidatableControls, _HTMLGxIdeConnectGxServer_authenticationInputEventHandler, _HTMLGxIdeConnectGxServer_usernameInputEventHandler, _HTMLGxIdeConnectGxServer_passwordInputEventHandler;
34
34
  const CSS_BUNDLES = [
35
35
  "resets/box-sizing",
36
36
  "components/tooltip",
@@ -53,6 +53,7 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
53
53
  _HTMLGxIdeConnectGxServer_usernameRef.set(this, void 0);
54
54
  _HTMLGxIdeConnectGxServer_passwordRef.set(this, void 0);
55
55
  _HTMLGxIdeConnectGxServer_serverUrlRef.set(this, void 0);
56
+ _HTMLGxIdeConnectGxServer_shortcutsSrc.set(this, getAssetPath(`./gx-ide-assets/connect-gx-server/shortcuts.json`));
56
57
  _HTMLGxIdeConnectGxServer_cancelClickHandler.set(this, () => {
57
58
  this.cancelCallback();
58
59
  });
@@ -151,7 +152,7 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
151
152
  }
152
153
  render() {
153
154
  var _a, _b, _c, _d;
154
- return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("section", { class: "section" }, h("div", { class: "main field-group spacing-body" }, h("div", {
155
+ return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-shortcuts", { src: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_shortcutsSrc, "f") }), h("section", { class: "section" }, h("div", { class: "main field-group spacing-body" }, h("div", {
155
156
  // server urls
156
157
  class: "field field-block server-url"
157
158
  }, h("label", { class: "label", htmlFor: "server-url" }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").main.serverURLLabel), h("ch-edit", { type: "url", id: "server-url", class: "input", value: (_a = this.gxServerConnectionData) === null || _a === void 0 ? void 0 : _a.serverUrl, readonly: true, ref: (el) => (__classPrivateFieldSet(this, _HTMLGxIdeConnectGxServer_serverUrlRef, el, "f")) })), h("div", {
@@ -163,13 +164,11 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
163
164
  }, h("label", { class: "label", htmlFor: "username" }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").main.usernameLabel), h("ch-edit", { type: "text", id: "username", class: "input", value: (_c = this.gxServerConnectionData) === null || _c === void 0 ? void 0 : _c.userName, onInput: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_usernameInputEventHandler, "f"), ref: (el) => (__classPrivateFieldSet(this, _HTMLGxIdeConnectGxServer_usernameRef, el, "f")) }), __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_usernameRef, "f"))), h("div", {
164
165
  // user password
165
166
  class: "field field-block user-password"
166
- }, h("label", { class: "label", htmlFor: "password" }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").main.passwordLabel), h("ch-edit", { type: "password", id: "password", class: "input", value: (_d = this.gxServerConnectionData) === null || _d === void 0 ? void 0 : _d.userPassword, onInput: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_passwordInputEventHandler, "f"), ref: (el) => (__classPrivateFieldSet(this, _HTMLGxIdeConnectGxServer_passwordRef, el, "f")), showPasswordButton: true }), __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_passwordRef, "f")))), h("footer", { class: "control-footer-with-border spacing-body" }, h("div", { class: "buttons-spacer" }, h("button", {
167
+ }, h("label", { class: "label", htmlFor: "password" }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").main.passwordLabel), h("ch-edit", { type: "password", id: "password", class: "input", value: (_d = this.gxServerConnectionData) === null || _d === void 0 ? void 0 : _d.userPassword, onInput: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_passwordInputEventHandler, "f"), ref: (el) => (__classPrivateFieldSet(this, _HTMLGxIdeConnectGxServer_passwordRef, el, "f")), showPasswordButton: true }), __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_passwordRef, "f")))), h("footer", { class: "control-footer-with-border spacing-body" }, h("div", { class: "buttons-spacer" }, h("button", { id: "cancel-button",
167
168
  // cancel button
168
- class: "button-secondary", onClick: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_cancelClickHandler, "f")
169
- }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").footer.backButtonCaption), h("button", {
169
+ class: "button-secondary", onClick: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_cancelClickHandler, "f") }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").footer.backButtonCaption), h("button", { id: "connect-button",
170
170
  // connect button
171
- class: "button-primary", onClick: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_connectClickHandler, "f")
172
- }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").footer.connectButtonCaption))))));
171
+ class: "button-primary", onClick: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_connectClickHandler, "f") }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").footer.connectButtonCaption))))));
173
172
  }
174
173
  static get assetsDirs() { return ["gx-ide-assets/connect-gx-server"]; }
175
174
  get el() { return this; }
@@ -189,7 +188,7 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
189
188
  }, undefined, {
190
189
  "authenticationTypes": ["authenticationTypesChanged"]
191
190
  }]);
192
- _HTMLGxIdeConnectGxServer_componentLocale = new WeakMap(), _HTMLGxIdeConnectGxServer_usernameRef = new WeakMap(), _HTMLGxIdeConnectGxServer_passwordRef = new WeakMap(), _HTMLGxIdeConnectGxServer_serverUrlRef = new WeakMap(), _HTMLGxIdeConnectGxServer_cancelClickHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_connectClickHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_evaluateTooltipRender = new WeakMap(), _HTMLGxIdeConnectGxServer_init = new WeakMap(), _HTMLGxIdeConnectGxServer_initializeValidatableControls = new WeakMap(), _HTMLGxIdeConnectGxServer_authenticationInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_usernameInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_passwordInputEventHandler = new WeakMap();
191
+ _HTMLGxIdeConnectGxServer_componentLocale = new WeakMap(), _HTMLGxIdeConnectGxServer_usernameRef = new WeakMap(), _HTMLGxIdeConnectGxServer_passwordRef = new WeakMap(), _HTMLGxIdeConnectGxServer_serverUrlRef = new WeakMap(), _HTMLGxIdeConnectGxServer_shortcutsSrc = new WeakMap(), _HTMLGxIdeConnectGxServer_cancelClickHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_connectClickHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_evaluateTooltipRender = new WeakMap(), _HTMLGxIdeConnectGxServer_init = new WeakMap(), _HTMLGxIdeConnectGxServer_initializeValidatableControls = new WeakMap(), _HTMLGxIdeConnectGxServer_authenticationInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_usernameInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_passwordInputEventHandler = new WeakMap();
193
192
  function defineCustomElement$1() {
194
193
  if (typeof customElements === "undefined") {
195
194
  return;