@genexus/genexus-ide-ui 0.0.12 → 0.0.14

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 (304) hide show
  1. package/dist/cjs/ch-grid-action-refresh_6.cjs.entry.js +359 -0
  2. package/dist/cjs/ch-grid-rowset-legend_2.cjs.entry.js +51 -0
  3. package/dist/cjs/{ch-grid_9.cjs.entry.js → ch-grid_7.cjs.entry.js} +130 -332
  4. package/dist/cjs/ch-suggest_5.cjs.entry.js +388 -0
  5. package/dist/cjs/form-validation-87e3749d.js +68 -0
  6. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  7. package/dist/cjs/gx-ide-container_2.cjs.entry.js +168 -0
  8. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +1 -1
  9. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +118 -0
  10. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +36 -87
  11. package/dist/cjs/gx-ide-references.cjs.entry.js +299 -0
  12. package/dist/cjs/gx-ide-template.cjs.entry.js +11 -12
  13. package/dist/cjs/gx-ide-test.cjs.entry.js +2 -25
  14. package/dist/cjs/gxg-breadcrumb.cjs.entry.js +0 -1
  15. package/dist/cjs/gxg-button-group.cjs.entry.js +1 -1
  16. package/dist/cjs/gxg-button.cjs.entry.js +2 -2
  17. package/dist/cjs/gxg-combo-box_8.cjs.entry.js +172 -231
  18. package/dist/cjs/gxg-container.cjs.entry.js +215 -0
  19. package/dist/cjs/gxg-date-picker.cjs.entry.js +1 -1
  20. package/dist/cjs/gxg-drop-down.cjs.entry.js +1 -1
  21. package/dist/cjs/gxg-form-checkbox.cjs.entry.js +3 -1
  22. package/dist/cjs/gxg-form-radio-group.cjs.entry.js +76 -36
  23. package/dist/cjs/gxg-form-text.cjs.entry.js +17 -5
  24. package/dist/cjs/gxg-form-textarea.cjs.entry.js +1 -1
  25. package/dist/cjs/gxg-list-box.cjs.entry.js +3 -2
  26. package/dist/cjs/gxg-menu-item.cjs.entry.js +59 -12
  27. package/dist/cjs/gxg-menu-list.cjs.entry.js +28 -0
  28. package/dist/cjs/gxg-menu.cjs.entry.js +228 -12
  29. package/dist/cjs/gxg-option.cjs.entry.js +1 -1
  30. package/dist/cjs/gxg-paginator.cjs.entry.js +1 -1
  31. package/dist/cjs/gxg-select.cjs.entry.js +1 -1
  32. package/dist/cjs/gxg-test.cjs.entry.js +36 -10
  33. package/dist/cjs/gxg-title.cjs.entry.js +11 -7
  34. package/dist/cjs/{gxg-tree-item.cjs.entry.js → gxg-tree_2.cjs.entry.js} +197 -43
  35. package/dist/cjs/loader.cjs.js +1 -1
  36. package/dist/cjs/render-tree-25d5b8a1.js +29 -0
  37. package/dist/cjs/{repositionScroll-e3ae1947.js → reposition-scroll-accee84c.js} +3 -15
  38. package/dist/cjs/types-e04c9098.js +12 -0
  39. package/dist/collection/collection-manifest.json +7 -1
  40. package/dist/collection/common/common.js +6 -6
  41. package/dist/collection/common/form-validation.js +17 -0
  42. package/dist/collection/common/interfaces.js +3 -1
  43. package/dist/collection/common/render-suggest.js +18 -0
  44. package/dist/collection/components/_template/gx-ide-assets/template/langs/template.lang.en.json +1 -1
  45. package/dist/collection/components/_template/template.css +90 -6
  46. package/dist/collection/components/_template/template.js +26 -23
  47. package/dist/{node_modules/@genexus/gemini/dist/collection/components/suggest/gxg-suggest.css → collection/components/container/container.css} +118 -120
  48. package/dist/collection/components/container/container.js +535 -0
  49. package/dist/collection/components/entity-selector/entity-selector.css +1 -1
  50. package/dist/collection/components/new-environment/gx-ide-assets/new-environment/langs/new-environment.lang.en.json +26 -0
  51. package/dist/collection/components/new-environment/gx-ide-assets/new-environment/langs/new-environment.lang.ja.json +3 -0
  52. package/dist/collection/components/new-environment/gx-ide-assets/new-environment/langs/new-environment.lang.zh.json +3 -0
  53. package/dist/collection/components/new-environment/new-environment.css +219 -0
  54. package/dist/collection/components/new-environment/new-environment.js +355 -0
  55. package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +1 -0
  56. package/dist/collection/components/new-kb/new-kb.css +100 -8
  57. package/dist/collection/components/new-kb/new-kb.js +88 -84
  58. package/dist/collection/components/references/gx-ide-assets/references/langs/references.lang.en.json +15 -0
  59. package/dist/collection/components/references/gx-ide-assets/references/langs/references.lang.ja.json +3 -0
  60. package/dist/collection/components/references/gx-ide-assets/references/langs/references.lang.zh.json +3 -0
  61. package/dist/collection/components/references/helpers.js +76 -0
  62. package/dist/collection/components/references/references.css +194 -0
  63. package/dist/collection/components/references/references.js +377 -0
  64. package/dist/collection/components/top-bar/top-bar.css +17 -0
  65. package/dist/collection/components/top-bar/top-bar.js +62 -0
  66. package/dist/collection/index.js +1 -0
  67. package/dist/collection/pages/assets/common.js +28 -8
  68. package/dist/components/button-group.js +1 -1
  69. package/dist/components/button.js +2 -2
  70. package/dist/components/ch-grid-rowset-legend.js +1 -32
  71. package/dist/components/ch-grid-rowset-legend2.js +34 -0
  72. package/dist/components/ch-grid2.js +1 -1
  73. package/dist/components/ch-suggest-list-item.js +1 -61
  74. package/dist/components/ch-suggest-list-item2.js +60 -0
  75. package/dist/components/ch-suggest-list.js +1 -39
  76. package/dist/components/ch-suggest-list2.js +41 -0
  77. package/dist/components/ch-suggest.js +1 -249
  78. package/dist/{cjs/ch-suggest.cjs.entry.js → components/ch-suggest2.js} +98 -59
  79. package/dist/components/combo-box-item.js +6 -1
  80. package/dist/components/combo-box.js +72 -11
  81. package/dist/components/container.js +83 -156
  82. package/dist/components/form-checkbox.js +4 -2
  83. package/dist/components/form-radio-group.js +244 -0
  84. package/dist/components/form-radio.js +13 -22
  85. package/dist/components/form-text.js +20 -6
  86. package/dist/components/form-validation.js +64 -0
  87. package/dist/components/gx-ide-container.d.ts +11 -0
  88. package/dist/components/gx-ide-container.js +6 -0
  89. package/dist/components/gx-ide-entity-selector.js +1 -1
  90. package/dist/components/gx-ide-new-environment.d.ts +11 -0
  91. package/dist/components/gx-ide-new-environment.js +258 -0
  92. package/dist/components/gx-ide-new-kb.js +55 -93
  93. package/dist/components/gx-ide-references.d.ts +11 -0
  94. package/dist/components/gx-ide-references.js +433 -0
  95. package/dist/components/gx-ide-template.js +67 -14
  96. package/dist/components/gx-ide-test.js +2 -25
  97. package/dist/components/gx-ide-top-bar.d.ts +11 -0
  98. package/dist/components/gx-ide-top-bar.js +6 -0
  99. package/dist/components/gxg-breadcrumb.js +0 -1
  100. package/dist/components/gxg-container.js +251 -1
  101. package/dist/components/gxg-date-picker.js +1 -1
  102. package/dist/components/gxg-drop-down.js +1 -1
  103. package/dist/components/gxg-form-checkbox-group.js +6 -0
  104. package/dist/components/gxg-form-checkbox-group2.js +109 -0
  105. package/dist/components/gxg-form-radio-group.js +1 -202
  106. package/dist/components/gxg-form-textarea.js +1 -1
  107. package/dist/components/gxg-grid.js +1 -44
  108. package/dist/components/gxg-grid2.js +46 -0
  109. package/dist/components/gxg-list-box.js +2 -2
  110. package/dist/components/gxg-menu-item.js +64 -15
  111. package/dist/components/gxg-menu-list.js +50 -0
  112. package/dist/components/gxg-menu.js +233 -14
  113. package/dist/components/gxg-option.js +1 -1
  114. package/dist/components/gxg-paginator.js +1 -1
  115. package/dist/components/gxg-select.js +1 -1
  116. package/dist/components/gxg-suggest.js +1 -27
  117. package/dist/components/gxg-test.js +110 -16
  118. package/dist/components/gxg-text.js +1 -73
  119. package/dist/components/gxg-tree-item2.js +31 -43
  120. package/dist/components/gxg-tree2.js +0 -4
  121. package/dist/components/index.d.ts +4 -0
  122. package/dist/components/index.js +6 -0
  123. package/dist/components/render-tree.js +27 -0
  124. package/dist/components/{repositionScroll.js → reposition-scroll.js} +2 -13
  125. package/dist/components/suggest.js +57 -0
  126. package/dist/components/tab-button.js +1 -1
  127. package/dist/components/tab.js +17 -2
  128. package/dist/{esm/gxg-text.entry.js → components/text.js} +53 -19
  129. package/dist/components/title.js +13 -8
  130. package/dist/components/top-bar.js +74 -0
  131. package/dist/components/types.js +10 -0
  132. package/dist/esm/ch-grid-action-refresh_6.entry.js +350 -0
  133. package/dist/esm/ch-grid-rowset-legend_2.entry.js +46 -0
  134. package/dist/esm/{ch-grid_9.entry.js → ch-grid_7.entry.js} +125 -325
  135. package/dist/esm/ch-suggest_5.entry.js +380 -0
  136. package/dist/esm/form-validation-a6686ca1.js +64 -0
  137. package/dist/esm/genexus-ide-ui.js +1 -1
  138. package/dist/esm/gx-ide-container_2.entry.js +163 -0
  139. package/dist/esm/gx-ide-entity-selector.entry.js +1 -1
  140. package/dist/esm/gx-ide-new-environment.entry.js +114 -0
  141. package/dist/esm/gx-ide-new-kb.entry.js +36 -87
  142. package/dist/esm/gx-ide-references.entry.js +295 -0
  143. package/dist/esm/gx-ide-template.entry.js +11 -12
  144. package/dist/esm/gx-ide-test.entry.js +2 -25
  145. package/dist/esm/gxg-breadcrumb.entry.js +0 -1
  146. package/dist/esm/gxg-button-group.entry.js +1 -1
  147. package/dist/esm/gxg-button.entry.js +2 -2
  148. package/dist/esm/gxg-combo-box_8.entry.js +164 -223
  149. package/dist/esm/gxg-container.entry.js +211 -0
  150. package/dist/esm/gxg-date-picker.entry.js +1 -1
  151. package/dist/esm/gxg-drop-down.entry.js +1 -1
  152. package/dist/esm/gxg-form-checkbox.entry.js +4 -2
  153. package/dist/esm/gxg-form-radio-group.entry.js +77 -37
  154. package/dist/esm/gxg-form-text.entry.js +17 -5
  155. package/dist/esm/gxg-form-textarea.entry.js +1 -1
  156. package/dist/esm/gxg-list-box.entry.js +3 -2
  157. package/dist/esm/gxg-menu-item.entry.js +60 -13
  158. package/dist/esm/gxg-menu-list.entry.js +24 -0
  159. package/dist/esm/gxg-menu.entry.js +228 -12
  160. package/dist/esm/gxg-option.entry.js +1 -1
  161. package/dist/esm/gxg-paginator.entry.js +1 -1
  162. package/dist/esm/gxg-select.entry.js +1 -1
  163. package/dist/esm/gxg-test.entry.js +36 -10
  164. package/dist/esm/gxg-title.entry.js +11 -7
  165. package/dist/esm/{gxg-tree-item.entry.js → gxg-tree_2.entry.js} +198 -45
  166. package/dist/esm/loader.js +1 -1
  167. package/dist/esm/render-tree-fc8636a3.js +27 -0
  168. package/dist/esm/{repositionScroll-9d3ee138.js → reposition-scroll-3478b46f.js} +2 -13
  169. package/dist/esm/types-02481dff.js +10 -0
  170. package/dist/genexus-ide-ui/genexus-ide-ui.css +2 -2
  171. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  172. package/dist/genexus-ide-ui/gx-ide-assets/new-environment/langs/new-environment.lang.en.json +26 -0
  173. package/dist/genexus-ide-ui/gx-ide-assets/new-environment/langs/new-environment.lang.ja.json +3 -0
  174. package/dist/genexus-ide-ui/gx-ide-assets/new-environment/langs/new-environment.lang.zh.json +3 -0
  175. package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +1 -0
  176. package/dist/genexus-ide-ui/gx-ide-assets/references/langs/references.lang.en.json +15 -0
  177. package/dist/genexus-ide-ui/gx-ide-assets/references/langs/references.lang.ja.json +3 -0
  178. package/dist/genexus-ide-ui/gx-ide-assets/references/langs/references.lang.zh.json +3 -0
  179. package/dist/genexus-ide-ui/gx-ide-assets/template/langs/template.lang.en.json +1 -1
  180. package/dist/genexus-ide-ui/{p-7e7af90d.entry.js → p-01e9d3aa.entry.js} +1 -1
  181. package/dist/genexus-ide-ui/p-05ad8cad.js +1 -0
  182. package/dist/genexus-ide-ui/p-0a8bd33f.entry.js +1 -0
  183. package/dist/genexus-ide-ui/{p-9292edf8.entry.js → p-18936375.entry.js} +1 -1
  184. package/dist/genexus-ide-ui/p-1e412d88.entry.js +1 -0
  185. package/dist/genexus-ide-ui/p-203ea363.entry.js +1 -0
  186. package/dist/genexus-ide-ui/p-408bdfc6.entry.js +1 -0
  187. package/dist/genexus-ide-ui/p-4198315e.entry.js +1 -0
  188. package/dist/genexus-ide-ui/{p-944e787a.entry.js → p-41e8442b.entry.js} +1 -1
  189. package/dist/genexus-ide-ui/p-4d572963.entry.js +1 -0
  190. package/dist/genexus-ide-ui/p-4e78d56d.entry.js +1 -0
  191. package/dist/genexus-ide-ui/p-62814082.entry.js +1 -0
  192. package/dist/genexus-ide-ui/p-6a84b339.js +1 -0
  193. package/dist/genexus-ide-ui/p-6bee904e.entry.js +1 -0
  194. package/dist/genexus-ide-ui/{p-1cedf0b2.entry.js → p-7137b4cf.entry.js} +1 -1
  195. package/dist/genexus-ide-ui/p-75961324.entry.js +1 -0
  196. package/dist/genexus-ide-ui/p-7c2068c2.entry.js +1 -0
  197. package/dist/genexus-ide-ui/{p-c0360787.entry.js → p-7fa78be9.entry.js} +1 -1
  198. package/dist/genexus-ide-ui/p-89d0ef14.entry.js +1 -0
  199. package/dist/genexus-ide-ui/p-8cdad9e1.entry.js +1 -0
  200. package/dist/genexus-ide-ui/p-925cb9fe.js +1 -0
  201. package/dist/genexus-ide-ui/p-92b75873.entry.js +1 -0
  202. package/dist/genexus-ide-ui/p-9e32e006.entry.js +1 -0
  203. package/dist/genexus-ide-ui/p-a5fee36d.entry.js +1 -0
  204. package/dist/genexus-ide-ui/p-abee8c7b.js +1 -0
  205. package/dist/genexus-ide-ui/p-ae1871e4.entry.js +1 -0
  206. package/dist/genexus-ide-ui/{p-8ae0846e.entry.js → p-af0ac52d.entry.js} +1 -1
  207. package/dist/genexus-ide-ui/p-b4e4fc69.entry.js +1 -0
  208. package/dist/genexus-ide-ui/p-be9406e7.entry.js +1 -0
  209. package/dist/genexus-ide-ui/p-c670dcba.entry.js +1 -0
  210. package/dist/genexus-ide-ui/p-e377e5be.entry.js +1 -0
  211. package/dist/genexus-ide-ui/p-eb8e9655.entry.js +1 -0
  212. package/dist/genexus-ide-ui/p-ecedca13.entry.js +1 -0
  213. package/dist/genexus-ide-ui/p-f5aa333b.entry.js +1 -0
  214. package/dist/genexus-ide-ui/{p-01795e05.entry.js → p-f6536bbc.entry.js} +1 -1
  215. package/dist/genexus-ide-ui/{p-f739d5dc.entry.js → p-ff877c22.entry.js} +1 -1
  216. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/suggest/ch-suggest.css +28 -6
  217. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/suggest/suggest-list/ch-suggest-list.css +6 -0
  218. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/suggest/suggest-list-item/ch-suggest-list-item.css +13 -0
  219. package/dist/node_modules/@genexus/gemini/dist/collection/components/button/button.css +1 -1
  220. package/dist/node_modules/@genexus/gemini/dist/collection/components/date-picker/date-picker.css +1 -1
  221. package/dist/node_modules/@genexus/gemini/dist/collection/components/drop-down/drop-down.css +1 -1
  222. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-checkbox/form-checkbox.css +14 -1
  223. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-checkbox-group/gxg-form-checkbox-group.css +336 -0
  224. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-option/option.css +1 -1
  225. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-radio/form-radio.css +2 -2
  226. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-radio-group/form-radio-group.css +2 -2
  227. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-select/select.css +1 -1
  228. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-text/form-text.css +1 -1
  229. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-textarea/form-textarea.css +1 -1
  230. package/dist/node_modules/@genexus/gemini/dist/collection/components/grid/gxg-grid.css +344 -10
  231. package/dist/node_modules/@genexus/gemini/dist/collection/components/list-box/list-box.css +1 -1
  232. package/dist/node_modules/@genexus/gemini/dist/collection/components/menu/menu.css +31 -23
  233. package/dist/node_modules/@genexus/gemini/dist/collection/components/menu-item/menu-item.css +35 -11
  234. package/dist/node_modules/@genexus/gemini/dist/collection/components/menu-list/menu-list.css +340 -0
  235. package/dist/node_modules/@genexus/gemini/dist/collection/components/paginator/gxg-paginator.css +1 -1
  236. package/dist/node_modules/@genexus/gemini/dist/collection/components/suggest/styles.css +617 -0
  237. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab/tab.css +10 -0
  238. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-button/tab-button.css +1 -1
  239. package/dist/node_modules/@genexus/gemini/dist/collection/components/text/text.css +35 -9
  240. package/dist/node_modules/@genexus/gemini/dist/collection/components/title/title.css +27 -0
  241. package/dist/node_modules/@genexus/gemini/dist/collection/components/tree-item/gxg-tree-item.css +1 -1
  242. package/dist/types/common/common.d.ts +4 -4
  243. package/dist/types/common/form-validation.d.ts +2 -0
  244. package/dist/types/common/interfaces.d.ts +0 -3
  245. package/dist/types/common/render-suggest.d.ts +2 -0
  246. package/dist/types/common/types.d.ts +10 -18
  247. package/dist/types/components/_template/template.d.ts +5 -5
  248. package/dist/types/components/container/container.d.ts +117 -0
  249. package/dist/types/components/new-environment/new-environment.d.ts +91 -0
  250. package/dist/types/components/new-kb/new-kb.d.ts +43 -38
  251. package/dist/types/components/references/helpers.d.ts +17 -0
  252. package/dist/types/components/references/references.d.ts +125 -0
  253. package/dist/types/components/top-bar/top-bar.d.ts +14 -0
  254. package/dist/types/components.d.ts +423 -35
  255. package/dist/types/index.d.ts +1 -0
  256. package/package.json +5 -2
  257. package/dist/cjs/ch-grid-column-resize_2.cjs.entry.js +0 -94
  258. package/dist/cjs/ch-grid-rowset-legend.cjs.entry.js +0 -23
  259. package/dist/cjs/ch-grid-settings_2.cjs.entry.js +0 -62
  260. package/dist/cjs/ch-suggest-list-item.cjs.entry.js +0 -50
  261. package/dist/cjs/ch-suggest-list.cjs.entry.js +0 -28
  262. package/dist/cjs/gxg-grid.cjs.entry.js +0 -34
  263. package/dist/cjs/gxg-suggest.cjs.entry.js +0 -19
  264. package/dist/cjs/gxg-text.cjs.entry.js +0 -60
  265. package/dist/cjs/gxg-tree.cjs.entry.js +0 -177
  266. package/dist/cjs/helpers-00cb4402.js +0 -12
  267. package/dist/esm/ch-grid-column-resize_2.entry.js +0 -89
  268. package/dist/esm/ch-grid-rowset-legend.entry.js +0 -19
  269. package/dist/esm/ch-grid-settings_2.entry.js +0 -57
  270. package/dist/esm/ch-suggest-list-item.entry.js +0 -46
  271. package/dist/esm/ch-suggest-list.entry.js +0 -24
  272. package/dist/esm/ch-suggest.entry.js +0 -218
  273. package/dist/esm/gxg-grid.entry.js +0 -30
  274. package/dist/esm/gxg-suggest.entry.js +0 -15
  275. package/dist/esm/gxg-tree.entry.js +0 -173
  276. package/dist/esm/helpers-78ca0d8a.js +0 -10
  277. package/dist/genexus-ide-ui/p-161b5c92.entry.js +0 -1
  278. package/dist/genexus-ide-ui/p-18c86754.entry.js +0 -1
  279. package/dist/genexus-ide-ui/p-215a6957.entry.js +0 -1
  280. package/dist/genexus-ide-ui/p-26000a72.entry.js +0 -1
  281. package/dist/genexus-ide-ui/p-26b1d9c2.entry.js +0 -1
  282. package/dist/genexus-ide-ui/p-3182ba74.entry.js +0 -1
  283. package/dist/genexus-ide-ui/p-3c6099ff.entry.js +0 -1
  284. package/dist/genexus-ide-ui/p-421bd2fb.entry.js +0 -1
  285. package/dist/genexus-ide-ui/p-5faaf0e5.entry.js +0 -1
  286. package/dist/genexus-ide-ui/p-783b8e55.entry.js +0 -1
  287. package/dist/genexus-ide-ui/p-7b79281c.entry.js +0 -1
  288. package/dist/genexus-ide-ui/p-7dead490.entry.js +0 -1
  289. package/dist/genexus-ide-ui/p-847aca21.entry.js +0 -1
  290. package/dist/genexus-ide-ui/p-84a47196.entry.js +0 -1
  291. package/dist/genexus-ide-ui/p-8eb472e6.entry.js +0 -1
  292. package/dist/genexus-ide-ui/p-8f89e354.entry.js +0 -1
  293. package/dist/genexus-ide-ui/p-a04ce551.entry.js +0 -1
  294. package/dist/genexus-ide-ui/p-ad1b71a0.js +0 -1
  295. package/dist/genexus-ide-ui/p-b31a9621.entry.js +0 -1
  296. package/dist/genexus-ide-ui/p-b7a03c38.js +0 -1
  297. package/dist/genexus-ide-ui/p-b7c204b2.entry.js +0 -1
  298. package/dist/genexus-ide-ui/p-c3c9f7a2.entry.js +0 -1
  299. package/dist/genexus-ide-ui/p-c714cf27.entry.js +0 -1
  300. package/dist/genexus-ide-ui/p-da94ba10.entry.js +0 -1
  301. package/dist/genexus-ide-ui/p-de120e4b.entry.js +0 -1
  302. package/dist/genexus-ide-ui/p-e82e2182.entry.js +0 -1
  303. package/dist/genexus-ide-ui/p-e9d84bbe.entry.js +0 -1
  304. package/dist/genexus-ide-ui/p-fed1d2ba.entry.js +0 -1
@@ -0,0 +1,380 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-4f0a5746.js';
2
+ import { s as state } from './store-75f5d491.js';
3
+ import { f as formMessageLogic } from './form-73d85602.js';
4
+ import { f as formClasses, c as commonClassesNames } from './classesNames-6cd8fadb.js';
5
+
6
+ const chSuggestCss = "*,::after,::before{box-sizing:border-box}:host{--window-max-height:none;--window-gap:50px}.main-wrapper{display:block}.label-input-wrapper{display:flex}.label-input-wrapper .input{flex:1}:host([label-position=start]) .label-input-wrapper{flex-direction:row}:host([label-position=above]) .label-input-wrapper{flex-direction:column}.input{background-color:unset;border:none;color:inherit;font:inherit;margin:0;padding:0;outline:0}.ch-window-container{position:relative}ch-window::part(window){width:100%;max-height:calc(var(--window-max-height) - var(--window-gap));overflow-y:auto}";
7
+
8
+ const ARROW_DOWN$1 = "ArrowDown";
9
+ const ARROW_UP$1 = "ArrowUp";
10
+ const ChSuggest = class {
11
+ constructor(hostRef) {
12
+ registerInstance(this, hostRef);
13
+ this.valueChanged = createEvent(this, "valueChanged", 7);
14
+ this.keyEventsDictionary = {
15
+ ArrowDown: (e) => {
16
+ const newFocusedItem = this.getNewFocusedItem(e.currentFocusedItem, ARROW_DOWN$1);
17
+ const nextFocusedItem = this.getNewFocusedItem(newFocusedItem, ARROW_DOWN$1);
18
+ newFocusedItem && newFocusedItem.focus();
19
+ if (!nextFocusedItem) {
20
+ /* This is the last item. Adjust window scroll to be at the very bottom*/
21
+ this.scrollListToBottom();
22
+ }
23
+ },
24
+ ArrowUp: (e) => {
25
+ const newFocusedItem = this.getNewFocusedItem(e.currentFocusedItem, ARROW_UP$1);
26
+ const nextFocusedItem = this.getNewFocusedItem(newFocusedItem, ARROW_UP$1);
27
+ newFocusedItem && newFocusedItem.focus();
28
+ if (!nextFocusedItem) {
29
+ /* This is the first item. Adjust window scroll to be at the very top*/
30
+ this.scrollListToTop();
31
+ }
32
+ }
33
+ };
34
+ // 3.STATE() VARIABLES //
35
+ this.windowHidden = true;
36
+ this.slotIsEmpty = true;
37
+ // 4.PUBLIC PROPERTY API / WATCH'S //
38
+ /**
39
+ * The debounce amount in milliseconds (This is the time the suggest waits after the user has finished typing, to show the suggestions).
40
+ */
41
+ this.debounce = 500;
42
+ /**
43
+ * The label position
44
+ */
45
+ this.labelPosition = "start";
46
+ /**
47
+ * Whether or not to display the label
48
+ */
49
+ this.showLabel = true;
50
+ /**
51
+ * Wether or not the suggest has a header. The header will show the "suggestTitle" if provided, and a close button.
52
+ */
53
+ this.showHeader = false;
54
+ /**
55
+ * If true, it will position the cursor at the end when the input is focused.
56
+ */
57
+ this.cursorEnd = false;
58
+ // 10.LOCAL METHODS //
59
+ this.evaluateSlotIsEmpty = () => {
60
+ this.slotIsEmpty = !this.el.firstElementChild;
61
+ };
62
+ this.setFocusOnFirstItem = () => {
63
+ const firstItem = this.el.querySelector("ch-suggest-list-item");
64
+ firstItem && firstItem.focus();
65
+ };
66
+ this.getChSuggestListItems = () => Array.from(this.el.querySelectorAll("ch-suggest-list-item"));
67
+ this.getNewFocusedItem = (currentFocusedItem, direction) => {
68
+ /* Helper function that returns the list item that should get focus (the first one, or the last one)*/
69
+ const getListChild = (list) => {
70
+ const listItems = list.querySelectorAll("ch-suggest-list-item");
71
+ let listChild = listItems && listItems[listItems.length - 1];
72
+ if (direction === ARROW_DOWN$1) {
73
+ listChild = list.querySelector("ch-suggest-list-item");
74
+ }
75
+ else {
76
+ const parentListItems = list.querySelectorAll("ch-suggest-list-item");
77
+ listChild =
78
+ parentListItems && parentListItems[parentListItems.length - 1];
79
+ }
80
+ return listChild;
81
+ };
82
+ if (!currentFocusedItem) {
83
+ return;
84
+ }
85
+ let newFocusedItem = direction === ARROW_DOWN$1
86
+ ? currentFocusedItem.nextElementSibling
87
+ : currentFocusedItem.previousElementSibling;
88
+ if ((newFocusedItem === null || newFocusedItem === void 0 ? void 0 : newFocusedItem.nodeName) === "CH-SUGGEST-LIST") {
89
+ newFocusedItem = getListChild(newFocusedItem);
90
+ }
91
+ else if (!newFocusedItem) {
92
+ /* this could be the last item of a list, but not the last item*/
93
+ const parent = currentFocusedItem.parentElement;
94
+ const sibling = direction === ARROW_DOWN$1
95
+ ? parent.nextElementSibling
96
+ : parent.previousElementSibling;
97
+ const parentIsList = parent.nodeName === "CH-SUGGEST-LIST";
98
+ if (parentIsList &&
99
+ sibling &&
100
+ sibling.nodeName === "CH-SUGGEST-LIST-ITEM") {
101
+ newFocusedItem =
102
+ direction === ARROW_DOWN$1
103
+ ? parent.nextElementSibling
104
+ : parent.previousElementSibling;
105
+ }
106
+ else if (parentIsList &&
107
+ sibling &&
108
+ sibling.nodeName === "CH-SUGGEST-LIST") {
109
+ const parentList = direction === ARROW_DOWN$1
110
+ ? parent.nextElementSibling
111
+ : parent.previousElementSibling;
112
+ let listChild;
113
+ if (direction === ARROW_DOWN$1) {
114
+ listChild = parentList.querySelector("ch-suggest-list-item");
115
+ }
116
+ else {
117
+ listChild = getListChild(parentList);
118
+ }
119
+ newFocusedItem = listChild ? listChild : null;
120
+ }
121
+ }
122
+ return newFocusedItem;
123
+ };
124
+ /**
125
+ * Every time the input event is triggered, the value of the input is sent to processInputEvent, which is responsible for displaying a window with the suggested options. this.debounce is a delay that, along with clearTimeout, ensures that the window is only shown after the user has stopped typing.
126
+ */
127
+ this.handleInput = (e) => {
128
+ this.value = e.target.value;
129
+ if (this.timeoutReference) {
130
+ clearTimeout(this.timeoutReference);
131
+ }
132
+ this.timeoutReference = setTimeout(() => {
133
+ this.processInputEvent();
134
+ }, this.debounce);
135
+ };
136
+ this.handleKeyDown = (e) => {
137
+ if (e.key === ARROW_DOWN$1) {
138
+ e.preventDefault();
139
+ this.setFocusOnFirstItem();
140
+ }
141
+ };
142
+ this.evaluateWindowMaxHeight = () => {
143
+ const viewportHeight = window.innerHeight;
144
+ const documentHeight = document.body.scrollHeight;
145
+ const height = documentHeight >= viewportHeight ? documentHeight : viewportHeight;
146
+ const inputBottomPosition = this.textInput.getBoundingClientRect().bottom + window.scrollY;
147
+ const windowMaxHeight = height - inputBottomPosition + "px";
148
+ this.el.style.setProperty("--window-max-height", windowMaxHeight);
149
+ };
150
+ this.scrollListToTop = () => {
151
+ const partWindow = this.chWindow.shadowRoot.querySelector("[part='window']");
152
+ partWindow.scrollTop = 0;
153
+ };
154
+ this.scrollListToBottom = () => {
155
+ const partWindow = this.chWindow.shadowRoot.querySelector("[part='window']");
156
+ partWindow.scrollTop = partWindow.scrollHeight;
157
+ };
158
+ this.processInputEvent = () => {
159
+ this.evaluateWindowMaxHeight();
160
+ this.chWindow.hidden = this.slotIsEmpty;
161
+ };
162
+ this.closeWindow = () => {
163
+ this.chWindow.hidden = true;
164
+ };
165
+ this.onFocusHandler = () => {
166
+ if (this.cursorEnd) {
167
+ this.textInput.setSelectionRange(this.textInput.value.length, this.textInput.value.length);
168
+ }
169
+ };
170
+ }
171
+ watchValueHandler(newValue) {
172
+ this.valueChanged.emit(newValue);
173
+ }
174
+ // 6.COMPONENT LIFECYCLE EVENTS //
175
+ componentWillLoad() {
176
+ this.evaluateSlotIsEmpty();
177
+ }
178
+ // 7.LISTENERS //
179
+ itemSelectedHandler(event) {
180
+ this.value = event.detail.value;
181
+ this.closeWindow();
182
+ }
183
+ focusChangeAttemptHandler(event) {
184
+ const keyEventHandler = this.keyEventsDictionary[event.detail.code];
185
+ if (keyEventHandler) {
186
+ const currentFocusedItem = event.detail.el;
187
+ const chSuggestListItemsArray = this.getChSuggestListItems();
188
+ const currentFocusedItemIndex = chSuggestListItemsArray.findIndex(item => {
189
+ return item === currentFocusedItem;
190
+ });
191
+ const newItemToSetFocusOn = null;
192
+ keyEventHandler({
193
+ event: event.detail,
194
+ currentFocusedItem: currentFocusedItem,
195
+ chSuggestListItemsArray: chSuggestListItemsArray,
196
+ currentFocusedItemIndex: currentFocusedItemIndex,
197
+ newItemToSetFocusOn: newItemToSetFocusOn
198
+ });
199
+ }
200
+ }
201
+ windowClosedHandler() {
202
+ this.textInput.focus();
203
+ this.windowHidden = true;
204
+ }
205
+ // 9.PUBLIC METHODS API //
206
+ /**
207
+ * @description It selects/highlights the input text.
208
+ */
209
+ async selectInputText() {
210
+ this.textInput.focus();
211
+ this.textInput.select();
212
+ }
213
+ // 10.RENDER() FUNCTION //
214
+ render() {
215
+ return (h(Host, null, h("div", { class: "main-wrapper", part: "main-wrapper" }, h("div", { class: "label-input-wrapper", part: "label-input-wrapper" }, this.showLabel && this.label && (h("label", { id: "label", htmlFor: "input", part: "label" }, this.label)), h("input", { type: "text", id: "input", part: "input", class: "input", ref: el => (this.textInput = el), onInput: this.handleInput, onKeyDown: this.handleKeyDown, onFocus: this.onFocusHandler, value: this.value, autocomplete: "off", "aria-controls": "ch-window", "aria-label": !this.showLabel && this.label ? this.label : undefined, "aria-labelledby": this.showLabel && this.label ? "label" : undefined, "aria-expanded": this.windowHidden.toString() })), h("ch-window", { id: "ch-window", container: this.textInput, "close-on-outside-click": true, "close-on-escape": true, xAlign: "inside-start", yAlign: "outside-end", ref: el => (this.chWindow = el), showHeader: this.showHeader, caption: this.suggestTitle, exportparts: "\n header:header, \n caption:title, \n close:close-button,\n window:dropdown" }, h("slot", { onSlotchange: this.evaluateSlotIsEmpty })))));
216
+ }
217
+ static get delegatesFocus() { return true; }
218
+ get el() { return getElement(this); }
219
+ static get watchers() { return {
220
+ "value": ["watchValueHandler"]
221
+ }; }
222
+ };
223
+ ChSuggest.style = chSuggestCss;
224
+
225
+ const chSuggestListCss = "*,::after,::before{box-sizing:border-box}:host{display:block}.title{margin:0;font:inherit}.list{margin:0;padding:0}";
226
+
227
+ const ChSuggestList = class {
228
+ constructor(hostRef) {
229
+ registerInstance(this, hostRef);
230
+ }
231
+ // 2.REFERENCE TO ELEMENTS //
232
+ // 3.STATE() VARIABLES //
233
+ // 4.PUBLIC PROPERTY API / WATCH'S //
234
+ // 5.EVENTS (EMIT) //
235
+ // 6.COMPONENT LIFECYCLE EVENTS //
236
+ // 7.LISTENERS //
237
+ // 8.PUBLIC METHODS API //
238
+ // 9.LOCAL METHODS //
239
+ // 10.RENDER() FUNCTION //
240
+ render() {
241
+ return (h(Host, null, this.label && (h("h2", { id: "heading", part: "title", class: "title" }, this.label)), h("ul", { "aria-labelledby": this.label ? "heading" : undefined, part: "list", class: "list" }, h("slot", null))));
242
+ }
243
+ };
244
+ ChSuggestList.style = chSuggestListCss;
245
+
246
+ const chSuggestListItemCss = ":host{display:block}:where(button){all:unset;display:flex;width:100%;cursor:pointer}*,::after,::before{box-sizing:border-box}";
247
+
248
+ const ARROW_DOWN = "ArrowDown";
249
+ const ARROW_UP = "ArrowUp";
250
+ const ChSuggestListItem = class {
251
+ constructor(hostRef) {
252
+ registerInstance(this, hostRef);
253
+ this.itemSelected = createEvent(this, "itemSelected", 7);
254
+ this.focusChangeAttempt = createEvent(this, "focusChangeAttempt", 7);
255
+ // 6.COMPONENT LIFECYCLE EVENTS //
256
+ // 7.LISTENERS //
257
+ // 8.PUBLIC METHODS API //
258
+ // 9.LOCAL METHODS //
259
+ this.handleClick = () => {
260
+ this.itemSelected.emit({
261
+ value: this.value || this.el.innerText,
262
+ description: this.description
263
+ });
264
+ };
265
+ this.handleKeyDown = (e) => {
266
+ if (e.code === ARROW_UP || e.code === ARROW_DOWN) {
267
+ e.preventDefault();
268
+ this.focusChangeAttempt.emit({
269
+ el: this.el,
270
+ code: e.code
271
+ });
272
+ }
273
+ };
274
+ }
275
+ // 10.RENDER() FUNCTION //
276
+ render() {
277
+ return (h(Host, { role: "listitem", onKeyDown: this.handleKeyDown }, h("button", { part: "button", onClick: this.handleClick }, h("slot", { name: "icon" }), h("div", { class: "content-wrapper", part: "content-wrapper" }, h("slot", null), this.description && (h("span", { part: "description" }, this.description))))));
278
+ }
279
+ static get delegatesFocus() { return true; }
280
+ get el() { return getElement(this); }
281
+ };
282
+ ChSuggestListItem.style = chSuggestListItemCss;
283
+
284
+ const stylesCss = "@charset \"UTF-8\";:root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-01--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-02{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-02--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-03{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-03--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-04{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-04--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-05{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em}.gxg-title-05--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em;color:var(--color-on-primary)}.gxg-text{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-text--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-text--gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--gray-05)}.gxg-quote{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;font-style:italic}.gxg-quote--negative{color:var(--color-on-primary)}.gxg-link{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--color-primary-hover)}.gxg-link:active{color:var(--color-primary-active)}.gxg-link-gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04)}.gxg-link-gray:hover{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04);color:var(--gray-06)}.gxg-alert-error{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-error-dark);display:inline-block}.gxg-alert-warning{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-warning-dark);display:inline-block}.gxg-alert-success{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-success-dark);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-button-styles{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}:host(.gxg-validation--warning) .form-element{border-color:var(--color-warning-dark)}:host(.gxg-validation--warning) .form-element:focus{outline-color:var(--color-warning-dark);border-color:var(--color-warning-dark)}:host(.gxg-validation--warning) .form-element:focus+.checkmark{--checkmark-border-color:var(--color-warning-dark)}:host(.gxg-validation--error) .form-element{border-color:var(--color-error-dark)}:host(.gxg-validation--error) .form-element:focus{outline-color:var(--color-error-dark);border-color:var(--color-error-dark)}:host(.gxg-validation--error) .form-element:focus+.checkmark{--checkmark-border-color:var(--color-error-dark)}:host(.gxg-validation--success) .form-element{border-color:var(--color-success-dark)}:host(.gxg-validation--success) .form-element:focus{outline-color:var(--color-success-dark);border-color:var(--color-success-dark)}:host(.gxg-validation--success) .form-element:focus+.checkmark{--checkmark-border-color:var(--color-success-dark)}ch-suggest{font-family:var(--font-family-primary);font-size:var(--font-size-lg);color:var(--color-on-background);}ch-suggest::-webkit-scrollbar{width:6px;height:6px}ch-suggest::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}ch-suggest::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}ch-suggest::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}ch-suggest .gxg-scroll{display:block;overflow-y:auto;padding-right:2px}ch-suggest ::-webkit-scrollbar{width:6px;height:6px}ch-suggest ::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}ch-suggest ::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}ch-suggest ::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}ch-suggest::part(label){font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;display:flex;align-items:center;cursor:default;font-size:inherit}ch-suggest[label-position=start]::part(label){margin-inline-end:var(--gxg-label-margin-horizontal)}ch-suggest[label-position=above]::part(label){margin-block-end:var(--gxg-label-margin-vertical)}ch-suggest::part(input){height:var(--spacing-comp-05);border:var(--border-width-sm) solid var(--gxg-border-color--regular);padding:var(--spacing-comp-01) var(--spacing-comp-02);box-sizing:border-box;background-color:var(--color-background)}ch-suggest::part(input):focus{outline-style:solid;outline-color:var(--color-primary-active);outline-width:var(--border-width-md);outline-offset:-2px}ch-suggest::part(input):focus{outline-style:solid;outline-color:var(--color-primary-active);outline-width:var(--border-width-md);outline-offset:-2px}ch-suggest::part(header){display:block;padding-block-end:var(--spacing-comp-02);display:flex;justify-content:flex-end}ch-suggest::part(close-button){height:var(--spacing-comp-05);width:var(--spacing-comp-05);background-color:var(--color-background);color:var(--color-primary-hover);border:1px solid var(--color-primary-hover);box-sizing:border-box;cursor:pointer;display:block}ch-suggest::part(close-button):hover{background-color:var(--color-primary-hover-opacity-01)}ch-suggest::part(close-button)::after{content:\"✖\";width:100%;display:block;line-height:24px;text-align:center}ch-suggest::part(close-button):focus{outline-style:solid;outline-color:var(--color-primary-active);outline-width:var(--border-width-md);outline-offset:-2px}ch-suggest::part(dropdown){background-color:var(--color-background);margin-top:var(--spacing-comp-01);padding:var(--spacing-comp-02);box-shadow:var(--box-shadow-02);}ch-suggest::part(dropdown)::-webkit-scrollbar{width:6px;height:6px}ch-suggest::part(dropdown)::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}ch-suggest::part(dropdown)::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}ch-suggest::part(dropdown)::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}ch-suggest::part(dropdown) .gxg-scroll{display:block;overflow-y:auto;padding-right:2px}ch-suggest::part(dropdown) ::-webkit-scrollbar{width:6px;height:6px}ch-suggest::part(dropdown) ::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}ch-suggest::part(dropdown) ::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}ch-suggest::part(dropdown) ::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}.messages-wrapper{margin-top:var(--spacing-comp-02);display:flex;gap:var(--spacing-comp-01);flex-direction:column}gxg-suggest.gxg-validation--success ch-suggest::part(input){outline-color:var(--color-success-dark);border-color:var(--color-success-dark)}gxg-suggest.gxg-validation--success ch-suggest::part(input)+.checkmark{--checkmark-border-color:var(--color-success-dark)}gxg-suggest.gxg-validation--warning ch-suggest::part(input){outline-color:var(--color-warning-dark);border-color:var(--color-warning-dark)}gxg-suggest.gxg-validation--warning ch-suggest::part(input)+.checkmark{--checkmark-border-color:var(--color-warning-dark)}gxg-suggest.gxg-validation--error ch-suggest::part(input){outline-color:var(--color-error-dark);border-color:var(--color-error-dark)}gxg-suggest.gxg-validation--error ch-suggest::part(input)+.checkmark{--checkmark-border-color:var(--color-error-dark)}gxg-suggest.gxg--disabled ch-suggest{pointer-events:none}gxg-suggest.gxg--disabled ch-suggest::part(input){background-color:var(--gray-01);color:var(--color-on-disabled)}gxg-suggest[ellipsis]:not([ellipsis=false]) ch-suggest-list-item::part(content-wrapper){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}ch-suggest-list{margin:var(--spacing-comp-01) 0;font-family:inherit;border:var(--border-width-sm) solid var(--gxg-border-color--regular)}ch-suggest-list:first-child{margin-top:0}ch-suggest-list:last-child{margin-bottom:0}ch-suggest-list::part(title){text-transform:uppercase;font-weight:var(--font-weight-semibold);margin:var(--spacing-comp-01) 0 0 0;padding:var(--spacing-comp-01) var(--spacing-comp-02)}ch-suggest-list-item{}ch-suggest-list-item::part(button){padding:var(--spacing-comp-01) var(--spacing-comp-02);align-items:center;gap:var(--spacing-comp-01);box-sizing:border-box}ch-suggest-list-item::part(button):focus{outline-style:solid;outline-color:var(--color-primary-active);outline-width:var(--border-width-md);outline-offset:-2px}ch-suggest-list-item::part(description)::before{content:\" - \"}ch-suggest-list-item gxg-icon::part(ch-icon){--icon-size:16px;margin-right:2px}ch-suggest-list-item:hover{background-color:var(--gxg-background-color-item-hover)}";
285
+
286
+ const GxgSuggest = class {
287
+ constructor(hostRef) {
288
+ registerInstance(this, hostRef);
289
+ /* VALIDATION */
290
+ /**
291
+ * The validation status
292
+ */
293
+ this.validationStatus = "indeterminate";
294
+ /**
295
+ * The presence of this attribute makes the suggest disabled.
296
+ */
297
+ this.disabled = false;
298
+ /**
299
+ * The presence of this attribute forces the suggest list items to not wrap to a second line, and it will display ellipsis. (...)
300
+ */
301
+ this.ellipsis = true;
302
+ }
303
+ render() {
304
+ return (h(Host, { class: {
305
+ large: state.large,
306
+ [formClasses["VALIDATION_INDETERMINATE_CLASS"]]: this.validationStatus === "indeterminate",
307
+ [formClasses["VALIDATION_WARNING_CLASS"]]: this.validationStatus === "warning",
308
+ [formClasses["VALIDATION_ERROR_CLASS"]]: this.validationStatus === "error",
309
+ [formClasses["VALIDATION_SUCCESS_CLASS"]]: this.validationStatus === "success",
310
+ [commonClassesNames["DISABLED_CLASS"]]: this.disabled,
311
+ } }, h("slot", null), formMessageLogic(this)));
312
+ }
313
+ };
314
+ GxgSuggest.style = stylesCss;
315
+
316
+ const textCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0;}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px;}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-01--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-02{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-02--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-03{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-03--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-04{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-04--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-05{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em}.gxg-title-05--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em;color:var(--color-on-primary)}.gxg-text{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-text--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-text--gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--gray-05)}.gxg-quote{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;font-style:italic}.gxg-quote--negative{color:var(--color-on-primary)}.gxg-link{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--color-primary-hover)}.gxg-link:active{color:var(--color-primary-active)}.gxg-link-gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04)}.gxg-link-gray:hover{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04);color:var(--gray-06)}.gxg-alert-error{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-error-dark);display:inline-block}.gxg-alert-warning{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-warning-dark);display:inline-block}.gxg-alert-success{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-success-dark);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-button-styles{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}:host{display:block;font-size:14px}:host p,:host q,:host a{display:block;margin:0;padding:0;margin:0 auto}:host([text-align=start]){text-align:start}:host([text-align=start]) *{text-align:start}:host([text-align=center]){text-align:center}:host([text-align=center]) *{text-align:center}:host([text-align=end]){text-align:end}:host([text-align=end]) *{text-align:end}:host([padding=s]){padding:var(--spacing-comp-01)}:host([padding=m]){padding:var(--spacing-comp-02)}:host(.large) .gxg-text,:host(.large) .gxg-text--gray,:host(.large) .gxg-quote,:host(.large) .gxg-link,:host(.large) .gxg-link-gray,:host(.large) .gxg-alert-error,:host(.large) .gxg-alert-warning,:host(.large) .gxg-alert-success{font-size:var(--font-size-lg)}";
317
+
318
+ const GxgText = class {
319
+ constructor(hostRef) {
320
+ registerInstance(this, hostRef);
321
+ /**
322
+ * The target (for "link" or "link-gray" types
323
+ * */
324
+ this.target = "_self";
325
+ /**
326
+ * Text type
327
+ */
328
+ this.type = "text-regular";
329
+ /**
330
+ * Text alignment
331
+ */
332
+ this.textAlign = "start";
333
+ /**
334
+ * Text padding
335
+ */
336
+ this.padding = "none";
337
+ /**
338
+ * Max. width
339
+ */
340
+ this.maxWidth = "100%";
341
+ }
342
+ textType() {
343
+ let text;
344
+ switch (this.type) {
345
+ case "text-regular":
346
+ text = (h("p", { style: { maxWidth: this.maxWidth }, class: "gxg-text" }, h("slot", null)));
347
+ break;
348
+ case "text-gray":
349
+ text = (h("p", { style: { maxWidth: this.maxWidth }, class: "gxg-text--gray" }, h("slot", null)));
350
+ break;
351
+ case "text-quote":
352
+ text = (h("q", { style: { maxWidth: this.maxWidth }, class: "gxg-quote" }, h("slot", null)));
353
+ break;
354
+ case "text-link":
355
+ text = (h("a", { style: { maxWidth: this.maxWidth }, href: this.href, target: this.target, class: "gxg-link" }, h("slot", null)));
356
+ break;
357
+ case "text-link-gray":
358
+ text = (h("a", { style: { maxWidth: this.maxWidth }, href: this.href, target: this.target, class: "gxg-link-gray" }, h("slot", null)));
359
+ break;
360
+ case "text-alert-error":
361
+ text = (h("p", { style: { maxWidth: this.maxWidth }, class: "gxg-alert-error" }, h("slot", null)));
362
+ break;
363
+ case "text-alert-warning":
364
+ text = (h("p", { style: { maxWidth: this.maxWidth }, class: "gxg-alert-warning" }, h("slot", null)));
365
+ break;
366
+ case "text-alert-success":
367
+ text = (h("p", { style: { maxWidth: this.maxWidth }, class: "gxg-alert-success" }, h("slot", null)));
368
+ break;
369
+ default:
370
+ text = (h("p", { style: { maxWidth: this.maxWidth }, class: "gxg-text" }, h("slot", null)));
371
+ }
372
+ return text;
373
+ }
374
+ render() {
375
+ return h(Host, { class: { large: state.large } }, this.textType(), " ");
376
+ }
377
+ };
378
+ GxgText.style = textCss;
379
+
380
+ export { ChSuggest as ch_suggest, ChSuggestList as ch_suggest_list, ChSuggestListItem as ch_suggest_list_item, GxgSuggest as gxg_suggest, GxgText as gxg_text };
@@ -0,0 +1,64 @@
1
+ import { h } from './index-4f0a5746.js';
2
+
3
+ /* STENCIL IMPORTS */
4
+ const renderFormItems = (componentType = "gxg-combo-box-item", options, group = "undefined-group", callback) => {
5
+ if (options.length) {
6
+ const items = [];
7
+ options.forEach(option => {
8
+ let item;
9
+ switch (componentType) {
10
+ case "gxg-form-checkbox":
11
+ item = (h("gxg-form-checkbox", { checkboxId: option.id, checked: option.checked, disabled: option.disabled, label: option.label, value: option.value, onChange: callback ? callback : null, iconName: option.iconName, part: `${group}-${option.id}` }));
12
+ items.push(item);
13
+ break;
14
+ case "gxg-combo-box-item":
15
+ item = (h("gxg-combo-box-item", { value: option.id, icon: option.iconName, part: `${group}-${option.id}` }, option.label));
16
+ items.push(item);
17
+ break;
18
+ case "gxg-form-radio":
19
+ item = (h("gxg-form-radio", { "radio-id": option.id, checked: option.checked, disabled: option.disabled, label: option.label, value: option.value, name: group, part: `${group}-${option.id}` }));
20
+ items.push(item);
21
+ break;
22
+ }
23
+ });
24
+ return items;
25
+ }
26
+ return null;
27
+ };
28
+ /**
29
+ *
30
+ * @param gxOptions An array of GxOptions's
31
+ * @returns The first option in the array that is 'selected'. If no one found it returns null.
32
+ */
33
+ const getSelectedGxOption = (gxOptions) => {
34
+ let found;
35
+ if (gxOptions === null || gxOptions === void 0 ? void 0 : gxOptions.length) {
36
+ for (let i = 0; i < gxOptions.length; i++) {
37
+ if (gxOptions[i].selected) {
38
+ found = gxOptions[i];
39
+ break;
40
+ }
41
+ }
42
+ }
43
+ return found;
44
+ };
45
+
46
+ const formSubmitValidation = (result, ref) => {
47
+ var _a;
48
+ (_a = result.fieldErrors) === null || _a === void 0 ? void 0 : _a.forEach(element => {
49
+ const key = element.key;
50
+ const message = element.message;
51
+ const hasError = element.hasError;
52
+ const reference = ref[`${key}El`];
53
+ if (reference && hasError && message.trim()) {
54
+ reference.validationStatus = "error";
55
+ reference.validationMessage = message;
56
+ }
57
+ else if (reference && !hasError) {
58
+ reference.validationStatus = "indeterminate";
59
+ reference.validationMessage = null;
60
+ }
61
+ });
62
+ };
63
+
64
+ export { formSubmitValidation as f, getSelectedGxOption as g, renderFormItems as r };