@genexus/genexus-ide-ui 1.0.8 → 1.0.10

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 (256) hide show
  1. package/dist/cjs/{common-d21da2fc.js → common-10d3b190.js} +15 -19
  2. package/dist/cjs/common-10d3b190.js.map +1 -0
  3. package/dist/cjs/{config-cefda28a.js → config-b21feeee.js} +6 -1
  4. package/dist/cjs/config-b21feeee.js.map +1 -0
  5. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  6. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +1 -1
  8. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +1 -1
  9. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +1 -1
  10. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +1 -1
  11. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +1 -1
  12. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +1 -1
  13. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +1 -1
  14. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +1 -1
  16. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  17. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +3 -3
  18. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
  19. package/dist/cjs/gx-ide-design-import.cjs.entry.js +2 -2
  20. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
  21. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +1 -1
  22. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +1 -1
  24. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +2 -2
  25. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +523 -182
  26. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  27. package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
  28. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +3 -3
  29. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gx-ide-recent-news.cjs.entry.js +1 -1
  31. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  32. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -2
  33. package/dist/cjs/gx-ide-start-page.cjs.entry.js +2 -2
  34. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  35. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
  36. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  37. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  38. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  39. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  40. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  41. package/dist/cjs/gx-ide-test.cjs.entry.js +53 -102
  42. package/dist/cjs/gx-ide-test.cjs.entry.js.map +1 -1
  43. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
  44. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +2 -2
  45. package/dist/cjs/loader.cjs.js +1 -1
  46. package/dist/collection/common/common.js +25 -1
  47. package/dist/collection/common/common.js.map +1 -1
  48. package/dist/collection/common/config.js +5 -0
  49. package/dist/collection/common/config.js.map +1 -1
  50. package/dist/collection/common/form-validation.js +50 -0
  51. package/dist/collection/common/form-validation.js.map +1 -0
  52. package/dist/collection/components/_helpers/card/card.css +3 -0
  53. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +3 -0
  54. package/dist/collection/components/_helpers/list-selector/list-selector.css +3 -0
  55. package/dist/collection/components/_starting-template/template.css +3 -0
  56. package/dist/collection/components/_test/test.js +53 -102
  57. package/dist/collection/components/_test/test.js.map +1 -1
  58. package/dist/collection/components/ai-assistant/ai-assistant.css +3 -0
  59. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.css +3 -0
  60. package/dist/collection/components/bpm/assign-roles/bpm-assign-roles.css +3 -0
  61. package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.css +3 -0
  62. package/dist/collection/components/bpm/import-files/bpm-import-files.css +3 -0
  63. package/dist/collection/components/bpm/import-gxpm/bpm-import-gxpm.css +3 -0
  64. package/dist/collection/components/bpm/objects-selector/bpm-objects-selector.css +3 -0
  65. package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.css +3 -0
  66. package/dist/collection/components/connect-gx-server/connect-gx-server.css +3 -0
  67. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +3 -0
  68. package/dist/collection/components/dashboard-home/dashboard-home.css +3 -0
  69. package/dist/collection/components/data-selector/data-selector.css +10 -0
  70. package/dist/collection/components/data-selector/data-selector.js +1 -1
  71. package/dist/collection/components/data-selector/data-selector.js.map +1 -1
  72. package/dist/collection/components/design-import/design-import.css +3 -0
  73. package/dist/collection/components/gam-installation-settings/gam-installation-settings.css +3 -0
  74. package/dist/collection/components/kb-manager-import/kb-manager-import.css +3 -0
  75. package/dist/collection/components/modules/edit-module-server/edit-module-server.css +3 -0
  76. package/dist/collection/components/modules/manage-module-references/manage-module-references.css +3 -0
  77. package/dist/collection/components/modules/manage-module-references-v2/manage-module-references.css +3 -0
  78. package/dist/collection/components/new-environment/new-environment.css +3 -0
  79. package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +2 -1
  80. package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -1
  81. package/dist/collection/components/new-kb/helpers.js +9 -0
  82. package/dist/collection/components/new-kb/helpers.js.map +1 -0
  83. package/dist/collection/components/new-kb/new-kb.css +39 -665
  84. package/dist/collection/components/new-kb/new-kb.js +679 -382
  85. package/dist/collection/components/new-kb/new-kb.js.map +1 -1
  86. package/dist/collection/components/new-object/new-object.css +3 -0
  87. package/dist/collection/components/object-selector/object-selector.css +4 -0
  88. package/dist/collection/components/object-selector/object-selector.js +1 -1
  89. package/dist/collection/components/object-selector/object-selector.js.map +1 -1
  90. package/dist/collection/components/references/references.css +3 -0
  91. package/dist/collection/components/share-kb/share-kb.css +3 -0
  92. package/dist/collection/components/start-page/recent-news.css +3 -0
  93. package/dist/collection/components/start-page/start-page.css +3 -0
  94. package/dist/collection/components/team-dev/commit/commit.css +3 -0
  95. package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +3 -0
  96. package/dist/collection/components/team-dev/update/update.css +3 -0
  97. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +3 -0
  98. package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +3 -0
  99. package/dist/collection/components/wf-settings/wf-settings.css +3 -0
  100. package/dist/collection/components/ww-images/ww-images.css +3 -0
  101. package/dist/components/common.js +14 -18
  102. package/dist/components/common.js.map +1 -1
  103. package/dist/components/config.js +5 -0
  104. package/dist/components/config.js.map +1 -1
  105. package/dist/components/gx-ide-dashboard-home.js +1 -1
  106. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  107. package/dist/components/gx-ide-data-selector.js +2 -2
  108. package/dist/components/gx-ide-data-selector.js.map +1 -1
  109. package/dist/components/gx-ide-new-kb.js +561 -209
  110. package/dist/components/gx-ide-new-kb.js.map +1 -1
  111. package/dist/components/gx-ide-object-selector.js +2 -2
  112. package/dist/components/gx-ide-object-selector.js.map +1 -1
  113. package/dist/components/gx-ide-start-page.js +1 -1
  114. package/dist/components/gx-ide-start-page.js.map +1 -1
  115. package/dist/components/gx-ide-test.js +53 -102
  116. package/dist/components/gx-ide-test.js.map +1 -1
  117. package/dist/esm/{common-31ac2b05.js → common-339b4376.js} +15 -19
  118. package/dist/esm/common-339b4376.js.map +1 -0
  119. package/dist/esm/{config-084ee328.js → config-ed1f26d7.js} +6 -1
  120. package/dist/esm/config-ed1f26d7.js.map +1 -0
  121. package/dist/esm/genexus-ide-ui.js +1 -1
  122. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
  123. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
  124. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +1 -1
  125. package/dist/esm/gx-ide-bpm-import-files.entry.js +1 -1
  126. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
  127. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
  128. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +1 -1
  129. package/dist/esm/gx-ide-connect-gx-server.entry.js +1 -1
  130. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
  131. package/dist/esm/gx-ide-dashboard-home.entry.js +1 -1
  132. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  133. package/dist/esm/gx-ide-data-selector.entry.js +3 -3
  134. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
  135. package/dist/esm/gx-ide-design-import.entry.js +2 -2
  136. package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
  137. package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
  138. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +1 -1
  139. package/dist/esm/gx-ide-manage-module-references.entry.js +1 -1
  140. package/dist/esm/gx-ide-new-environment.entry.js +2 -2
  141. package/dist/esm/gx-ide-new-kb.entry.js +524 -183
  142. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  143. package/dist/esm/gx-ide-new-object.entry.js +1 -1
  144. package/dist/esm/gx-ide-object-selector.entry.js +3 -3
  145. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  146. package/dist/esm/gx-ide-recent-news.entry.js +1 -1
  147. package/dist/esm/gx-ide-references.entry.js +1 -1
  148. package/dist/esm/gx-ide-share-kb.entry.js +2 -2
  149. package/dist/esm/gx-ide-start-page.entry.js +2 -2
  150. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  151. package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
  152. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  153. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  154. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  155. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  156. package/dist/esm/gx-ide-template.entry.js +1 -1
  157. package/dist/esm/gx-ide-test.entry.js +53 -102
  158. package/dist/esm/gx-ide-test.entry.js.map +1 -1
  159. package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
  160. package/dist/esm/gx-ide-ww-images.entry.js +2 -2
  161. package/dist/esm/loader.js +1 -1
  162. package/dist/genexus-ide-ui/genexus-ide-ui.css +2 -2
  163. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +4 -4
  164. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  165. package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +2 -1
  166. package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -1
  167. package/dist/genexus-ide-ui/{p-032bdefc.entry.js → p-0fced96c.entry.js} +2 -2
  168. package/dist/genexus-ide-ui/{p-794ac8e6.entry.js → p-15711eed.entry.js} +2 -2
  169. package/dist/genexus-ide-ui/{p-8f294d2e.entry.js → p-176e8d55.entry.js} +2 -2
  170. package/dist/genexus-ide-ui/{p-4ade9a67.entry.js → p-1ad7189f.entry.js} +2 -2
  171. package/dist/genexus-ide-ui/{p-b5bb18d9.entry.js → p-1d56cc71.entry.js} +2 -2
  172. package/dist/genexus-ide-ui/{p-cc87175f.entry.js → p-2ac9e22b.entry.js} +83 -83
  173. package/dist/genexus-ide-ui/p-2ac9e22b.entry.js.map +1 -0
  174. package/dist/genexus-ide-ui/{p-05eb7c04.entry.js → p-3714339e.entry.js} +20 -20
  175. package/dist/genexus-ide-ui/p-3714339e.entry.js.map +1 -0
  176. package/dist/genexus-ide-ui/p-3e5e2766.entry.js +765 -0
  177. package/dist/genexus-ide-ui/p-3e5e2766.entry.js.map +1 -0
  178. package/dist/genexus-ide-ui/{p-af836892.js → p-3ef5a5a6.js} +33 -37
  179. package/dist/genexus-ide-ui/p-3ef5a5a6.js.map +1 -0
  180. package/dist/genexus-ide-ui/{p-929dd336.entry.js → p-55304f04.entry.js} +2 -2
  181. package/dist/genexus-ide-ui/{p-e557aa5e.entry.js → p-5c5abefc.entry.js} +2 -2
  182. package/dist/genexus-ide-ui/{p-d5c2b4cc.entry.js → p-6fa9ea04.entry.js} +2 -2
  183. package/dist/genexus-ide-ui/{p-a4370f5d.entry.js → p-70588f0b.entry.js} +2 -2
  184. package/dist/genexus-ide-ui/{p-55a30661.js → p-78b90603.js} +6 -1
  185. package/dist/genexus-ide-ui/p-78b90603.js.map +1 -0
  186. package/dist/genexus-ide-ui/{p-5d8817cb.entry.js → p-88fff4f3.entry.js} +2 -2
  187. package/dist/genexus-ide-ui/{p-e0072adb.entry.js → p-9a9fdfc0.entry.js} +2 -2
  188. package/dist/genexus-ide-ui/p-a29cfcdb.entry.js +100 -0
  189. package/dist/genexus-ide-ui/p-a29cfcdb.entry.js.map +1 -0
  190. package/dist/genexus-ide-ui/{p-5620c188.entry.js → p-a29d27ed.entry.js} +2 -2
  191. package/dist/genexus-ide-ui/{p-2b200d34.entry.js → p-a2dad270.entry.js} +3 -3
  192. package/dist/genexus-ide-ui/{p-41e5e8e0.entry.js → p-a787b331.entry.js} +2 -2
  193. package/dist/genexus-ide-ui/{p-8beec8d4.entry.js → p-a7be549c.entry.js} +2 -2
  194. package/dist/genexus-ide-ui/{p-62be51c2.entry.js → p-b967c6e3.entry.js} +2 -2
  195. package/dist/genexus-ide-ui/{p-1a1042c2.entry.js → p-c10d7879.entry.js} +2 -2
  196. package/dist/genexus-ide-ui/{p-9d02318b.entry.js → p-c484250c.entry.js} +2 -2
  197. package/dist/genexus-ide-ui/{p-593981a8.entry.js → p-ca842e11.entry.js} +3 -3
  198. package/dist/genexus-ide-ui/{p-afb531b3.entry.js → p-d1a76638.entry.js} +2 -2
  199. package/dist/genexus-ide-ui/{p-f69df17d.entry.js → p-d703bff2.entry.js} +2 -2
  200. package/dist/genexus-ide-ui/{p-f512bbca.entry.js → p-dbf8b06e.entry.js} +2 -2
  201. package/dist/genexus-ide-ui/{p-b7dfdf6d.entry.js → p-de18e865.entry.js} +3 -3
  202. package/dist/genexus-ide-ui/{p-88ab3f67.entry.js → p-e0da6770.entry.js} +2 -2
  203. package/dist/genexus-ide-ui/{p-c0ee7647.entry.js → p-e146e456.entry.js} +3 -3
  204. package/dist/genexus-ide-ui/{p-54ee665f.entry.js → p-e4cbd23c.entry.js} +2 -2
  205. package/dist/genexus-ide-ui/{p-eb6ef221.entry.js → p-e629ab16.entry.js} +2 -2
  206. package/dist/genexus-ide-ui/{p-1f8445eb.entry.js → p-edffe8d7.entry.js} +3 -3
  207. package/dist/genexus-ide-ui/{p-aea82479.entry.js → p-faa6fc25.entry.js} +2 -2
  208. package/dist/types/common/common.d.ts +6 -1
  209. package/dist/types/common/config.d.ts +6 -0
  210. package/dist/types/common/form-validation.d.ts +8 -0
  211. package/dist/types/components/_test/test.d.ts +1 -1
  212. package/dist/types/components/new-kb/helpers.d.ts +5 -0
  213. package/dist/types/components/new-kb/new-kb.d.ts +68 -102
  214. package/dist/types/components.d.ts +0 -27
  215. package/package.json +3 -3
  216. package/dist/cjs/common-d21da2fc.js.map +0 -1
  217. package/dist/cjs/config-cefda28a.js.map +0 -1
  218. package/dist/esm/common-31ac2b05.js.map +0 -1
  219. package/dist/esm/config-084ee328.js.map +0 -1
  220. package/dist/genexus-ide-ui/p-05eb7c04.entry.js.map +0 -1
  221. package/dist/genexus-ide-ui/p-55a30661.js.map +0 -1
  222. package/dist/genexus-ide-ui/p-69a83248.entry.js +0 -186
  223. package/dist/genexus-ide-ui/p-69a83248.entry.js.map +0 -1
  224. package/dist/genexus-ide-ui/p-9d640444.entry.js +0 -472
  225. package/dist/genexus-ide-ui/p-9d640444.entry.js.map +0 -1
  226. package/dist/genexus-ide-ui/p-af836892.js.map +0 -1
  227. package/dist/genexus-ide-ui/p-cc87175f.entry.js.map +0 -1
  228. /package/dist/genexus-ide-ui/{p-032bdefc.entry.js.map → p-0fced96c.entry.js.map} +0 -0
  229. /package/dist/genexus-ide-ui/{p-794ac8e6.entry.js.map → p-15711eed.entry.js.map} +0 -0
  230. /package/dist/genexus-ide-ui/{p-8f294d2e.entry.js.map → p-176e8d55.entry.js.map} +0 -0
  231. /package/dist/genexus-ide-ui/{p-4ade9a67.entry.js.map → p-1ad7189f.entry.js.map} +0 -0
  232. /package/dist/genexus-ide-ui/{p-b5bb18d9.entry.js.map → p-1d56cc71.entry.js.map} +0 -0
  233. /package/dist/genexus-ide-ui/{p-929dd336.entry.js.map → p-55304f04.entry.js.map} +0 -0
  234. /package/dist/genexus-ide-ui/{p-e557aa5e.entry.js.map → p-5c5abefc.entry.js.map} +0 -0
  235. /package/dist/genexus-ide-ui/{p-d5c2b4cc.entry.js.map → p-6fa9ea04.entry.js.map} +0 -0
  236. /package/dist/genexus-ide-ui/{p-a4370f5d.entry.js.map → p-70588f0b.entry.js.map} +0 -0
  237. /package/dist/genexus-ide-ui/{p-5d8817cb.entry.js.map → p-88fff4f3.entry.js.map} +0 -0
  238. /package/dist/genexus-ide-ui/{p-e0072adb.entry.js.map → p-9a9fdfc0.entry.js.map} +0 -0
  239. /package/dist/genexus-ide-ui/{p-5620c188.entry.js.map → p-a29d27ed.entry.js.map} +0 -0
  240. /package/dist/genexus-ide-ui/{p-2b200d34.entry.js.map → p-a2dad270.entry.js.map} +0 -0
  241. /package/dist/genexus-ide-ui/{p-41e5e8e0.entry.js.map → p-a787b331.entry.js.map} +0 -0
  242. /package/dist/genexus-ide-ui/{p-8beec8d4.entry.js.map → p-a7be549c.entry.js.map} +0 -0
  243. /package/dist/genexus-ide-ui/{p-62be51c2.entry.js.map → p-b967c6e3.entry.js.map} +0 -0
  244. /package/dist/genexus-ide-ui/{p-1a1042c2.entry.js.map → p-c10d7879.entry.js.map} +0 -0
  245. /package/dist/genexus-ide-ui/{p-9d02318b.entry.js.map → p-c484250c.entry.js.map} +0 -0
  246. /package/dist/genexus-ide-ui/{p-593981a8.entry.js.map → p-ca842e11.entry.js.map} +0 -0
  247. /package/dist/genexus-ide-ui/{p-afb531b3.entry.js.map → p-d1a76638.entry.js.map} +0 -0
  248. /package/dist/genexus-ide-ui/{p-f69df17d.entry.js.map → p-d703bff2.entry.js.map} +0 -0
  249. /package/dist/genexus-ide-ui/{p-f512bbca.entry.js.map → p-dbf8b06e.entry.js.map} +0 -0
  250. /package/dist/genexus-ide-ui/{p-b7dfdf6d.entry.js.map → p-de18e865.entry.js.map} +0 -0
  251. /package/dist/genexus-ide-ui/{p-88ab3f67.entry.js.map → p-e0da6770.entry.js.map} +0 -0
  252. /package/dist/genexus-ide-ui/{p-c0ee7647.entry.js.map → p-e146e456.entry.js.map} +0 -0
  253. /package/dist/genexus-ide-ui/{p-54ee665f.entry.js.map → p-e4cbd23c.entry.js.map} +0 -0
  254. /package/dist/genexus-ide-ui/{p-eb6ef221.entry.js.map → p-e629ab16.entry.js.map} +0 -0
  255. /package/dist/genexus-ide-ui/{p-1f8445eb.entry.js.map → p-edffe8d7.entry.js.map} +0 -0
  256. /package/dist/genexus-ide-ui/{p-aea82479.entry.js.map → p-faa6fc25.entry.js.map} +0 -0
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -380,6 +380,9 @@ New classes for Chameleon + Mercury
380
380
  display: contents;
381
381
  }
382
382
 
383
+ /* - - - - - - - - - - - - - - - - - - -
384
+ Old classes (Gemini) to be removed soon
385
+ - - - - - - - - - - - - - - - - - - - */
383
386
  /* - - - - - - - - - - - - - - - - - - -
384
387
  Old classes (Gemini) to be removed soon
385
388
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -1,3 +1,20 @@
1
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
+ if (kind === "a" && !f)
3
+ throw new TypeError("Private accessor was defined without a getter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
5
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
6
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
7
+ };
8
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
9
+ if (kind === "m")
10
+ throw new TypeError("Private method is not writable");
11
+ if (kind === "a" && !f)
12
+ throw new TypeError("Private accessor was defined without a setter");
13
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
14
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
15
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
16
+ };
17
+ var _GxIdeTest_listBoxRef, _GxIdeTest_actionListModelOne, _GxIdeTest_actionListModelTwo, _GxIdeTest_modelOneButtonHandler, _GxIdeTest_modelTwoButtonHandler;
1
18
  /* STENCIL IMPORTS */
2
19
  import { Host, h } from "@stencil/core";
3
20
  const CSS_BUNDLES = [
@@ -5,123 +22,56 @@ const CSS_BUNDLES = [
5
22
  // "utils/form",
6
23
  // "utils/layout",
7
24
  // "utils/typography",
8
- // "components/button",
25
+ "components/button",
9
26
  // "components/checkbox",
10
- "components/combo-box",
11
- "components/edit",
12
- "components/tabular-grid"
27
+ "components/list-box"
13
28
  ];
14
29
  export class GxIdeTest {
15
30
  constructor() {
16
31
  /* THIS IS A COMPONENT FOR TESTING PURPOSES. DO WHATEVER YOU WANT.*/
17
- this.comboBoxModel = [
32
+ _GxIdeTest_listBoxRef.set(this, void 0);
33
+ _GxIdeTest_actionListModelOne.set(this, [
18
34
  {
19
- value: "Value 1",
20
- caption: "Label for the value 1"
35
+ id: "id-1-1",
36
+ caption: "Item 1-1",
37
+ type: "actionable"
21
38
  },
22
39
  {
23
- value: "Value 2",
24
- caption: "Label for the value 222",
25
- items: [
26
- {
27
- value: "Value 2.1",
28
- caption: "Label for the value 2.1"
29
- },
30
- {
31
- value: "Value 2.2",
32
- caption: "Label for the value 2.2"
33
- }
34
- ]
40
+ id: "id-1-2",
41
+ caption: "Item 1-2",
42
+ type: "actionable"
35
43
  },
36
44
  {
37
- value: "Value 3",
38
- caption: "Label for the value 3",
39
- disabled: true
40
- },
41
- { value: "Value 4", caption: "Label for the value 4" },
42
- {
43
- value: "Value 5",
44
- caption: "Label for the value 5",
45
- disabled: true,
46
- expandable: true,
47
- items: [
48
- {
49
- value: "Value 5.1",
50
- caption: "Label for the value 5.1"
51
- },
52
- {
53
- value: "Value 5.2",
54
- caption: "Label for the value 5.2"
55
- },
56
- {
57
- value: "Value 5.3",
58
- caption: "Label for the value 5.3",
59
- disabled: false
60
- },
61
- {
62
- value: "Value 5.4",
63
- caption: "Label for the value 5.4"
64
- }
65
- ]
66
- },
45
+ id: "id-1-3",
46
+ caption: "Item 1-3",
47
+ type: "actionable"
48
+ }
49
+ ]);
50
+ _GxIdeTest_actionListModelTwo.set(this, [
67
51
  {
68
- value: "Value 6",
69
- caption: "Label for the value 6",
70
- expandable: true,
71
- expanded: true,
72
- items: [
73
- {
74
- value: "Value 6.1",
75
- caption: "Label for the value 6.1",
76
- disabled: true
77
- },
78
- {
79
- value: "Value 6.2",
80
- caption: "Label for the value 6.2",
81
- disabled: true
82
- },
83
- {
84
- value: "Value 6.3",
85
- caption: "Label for the value 6.3",
86
- disabled: false
87
- },
88
- {
89
- value: "Value 6.4",
90
- caption: "Label for the value 6.4"
91
- }
92
- ]
52
+ id: "id-2-1",
53
+ caption: "Item 2-1",
54
+ type: "actionable"
93
55
  },
94
56
  {
95
- value: "Value 7",
96
- caption: "Label for the value 7",
97
- disabled: true
57
+ id: "id-2-2",
58
+ caption: "Item 2-2",
59
+ type: "actionable"
98
60
  },
99
- { value: "Value 8", caption: "Label for the value 8" },
100
61
  {
101
- value: "Value 9",
102
- caption: "Label for the value 9",
103
- expandable: true,
104
- items: [
105
- {
106
- value: "Value 9.1",
107
- caption: "Label for the value 9.1"
108
- },
109
- {
110
- value: "Value 9.2",
111
- caption: "Label for the value 9.2"
112
- },
113
- {
114
- value: "Value 9.3",
115
- caption: "Label for the value 9.3",
116
- disabled: false
117
- },
118
- {
119
- value: "Value 9.4",
120
- caption: "Label for the value 9.4"
121
- }
122
- ]
62
+ id: "id-2-3",
63
+ caption: "Item 2-3",
64
+ type: "actionable"
123
65
  }
124
- ];
66
+ ]);
67
+ _GxIdeTest_modelOneButtonHandler.set(this, () => {
68
+ __classPrivateFieldGet(this, _GxIdeTest_listBoxRef, "f").model = [];
69
+ __classPrivateFieldGet(this, _GxIdeTest_listBoxRef, "f").model = __classPrivateFieldGet(this, _GxIdeTest_actionListModelOne, "f");
70
+ });
71
+ _GxIdeTest_modelTwoButtonHandler.set(this, () => {
72
+ __classPrivateFieldGet(this, _GxIdeTest_listBoxRef, "f").model = [];
73
+ __classPrivateFieldGet(this, _GxIdeTest_listBoxRef, "f").model = __classPrivateFieldGet(this, _GxIdeTest_actionListModelTwo, "f");
74
+ });
125
75
  this.name = undefined;
126
76
  this.filterOn = true;
127
77
  }
@@ -134,7 +84,7 @@ export class GxIdeTest {
134
84
  // 9.LOCAL METHODS //
135
85
  // 10.RENDER() FUNCTION //
136
86
  render() {
137
- return (h(Host, null, h("ch-theme", { model: CSS_BUNDLES }), h("ch-tabular-grid", { class: "property-grid" }, h("ch-tabular-grid-columnset", { class: "property-grid-column-set" }, h("ch-tabular-grid-column", { "column-name": "Property", size: "50%", class: "property-grid-column" }), h("ch-tabular-grid-column", { "column-name": "Value", size: "minmax(auto, calc(100% - var(--ch-tabular-grid-column-1-width)))", class: "property-grid-column" })), h("ch-tabular-grid-row", { class: "property-grid-row property-grid-property-readonly" }, h("ch-tabular-grid-cell", { class: "property-grid-cell" }, "Property Name: Read Only Property Name: Read Only Property Name: Read Only Property Name: Read Only Property Name: Read Only"), h("ch-tabular-grid-cell", { class: "property-grid-cell" }, "Property Value: Enabled Property Value: Enabled Property Value: Enabled Property Value: Enabled Property Value: Enabled")), h("ch-tabular-grid-row", { class: "property-grid-row property-grid-value-readonly" }, h("ch-tabular-grid-cell", { class: "property-grid-cell" }, "Property Name: Enabled Property Name: Enabled Property Name: Enabled Property Name: Enabled Property Name: Enabled"), h("ch-tabular-grid-cell", { class: "property-grid-cell" }, "Property Value: Read Only Property Value: Read Only Property Value: Read Only Property Value: Read Only Property Value: Read Only")), h("ch-tabular-grid-row", { class: "property-grid-row property-grid-value-edited" }, h("ch-tabular-grid-cell", { class: "property-grid-cell" }, "Property Name: Enabled Property Name: Enabled Property Name: Enabled Property Name: Enabled"), h("ch-tabular-grid-cell", { class: "property-grid-cell" }, "Property Value: Edited Property Value: Edited Property Value: Edited Property Value: Edited Property Value: Edited"))), h("hr", null), h("ch-tabular-grid", { class: "property-grid" }, h("ch-tabular-grid-columnset", { class: "property-grid-column-set" }, h("ch-tabular-grid-column", { "column-name": "Property", size: "50%", class: "property-grid-column" }), h("ch-tabular-grid-column", { "column-name": "Value", size: "minmax(auto, calc(100% - var(--ch-tabular-grid-column-1-width)))", class: "property-grid-column" })), h("ch-tabular-grid-row", { class: "property-grid-row property-grid-value-editing" }, h("ch-tabular-grid-cell", { class: "property-grid-cell" }, "Lorem ipsum dolor sit amet consectetur, adipisicing elit. Assumenda dicta suscipit illo sit doloribus quos, ipsa voluptatum minus numquam fugit explicabo corporis non hic earum deserunt, ipsum expedita corrupti? Similique?"), h("ch-tabular-grid-cell", { class: "property-grid-cell" }, h("ch-combo-box-render", { "accessible-name": "Colors", id: "combo-box-1", class: "combo-box", model: this.comboBoxModel, placeholder: "placeholder" }))), h("ch-tabular-grid-row", { class: "property-grid-row property-grid-value-editing" }, h("ch-tabular-grid-cell", { class: "property-grid-cell" }, "Form Input"), h("ch-tabular-grid-cell", { class: "property-grid-cell" }, h("ch-edit", { class: "form-input", value: "Pat Taylor" }))))));
87
+ return (h(Host, null, h("ch-theme", { model: CSS_BUNDLES }), h("ch-action-list-render", { class: "list-box", selection: "single", model: __classPrivateFieldGet(this, _GxIdeTest_actionListModelOne, "f"), ref: el => (__classPrivateFieldSet(this, _GxIdeTest_listBoxRef, el, "f")) }), h("button", { class: "button-primary", onClick: __classPrivateFieldGet(this, _GxIdeTest_modelOneButtonHandler, "f") }, "set model one"), h("button", { class: "button-primary", onClick: __classPrivateFieldGet(this, _GxIdeTest_modelTwoButtonHandler, "f") }, "set model two")));
138
88
  }
139
89
  static get is() { return "gx-ide-test"; }
140
90
  static get encapsulation() { return "shadow"; }
@@ -175,4 +125,5 @@ export class GxIdeTest {
175
125
  };
176
126
  }
177
127
  }
128
+ _GxIdeTest_listBoxRef = new WeakMap(), _GxIdeTest_actionListModelOne = new WeakMap(), _GxIdeTest_actionListModelTwo = new WeakMap(), _GxIdeTest_modelOneButtonHandler = new WeakMap(), _GxIdeTest_modelTwoButtonHandler = new WeakMap();
178
129
  //# sourceMappingURL=test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../../../src/components/_test/test.tsx"],"names":[],"mappings":"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","sourcesContent":["/* STENCIL IMPORTS */\nimport { Component, Host, h, Prop, State } from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { MercuryBundles } from \"@genexus/mercury\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n // \"utils/form\",\n // \"utils/layout\",\n // \"utils/typography\",\n // \"components/button\",\n // \"components/checkbox\",\n \"components/combo-box\",\n \"components/edit\",\n \"components/tabular-grid\"\n];\n\n@Component({\n tag: \"gx-ide-test\",\n styleUrl: \"test.scss\",\n shadow: true\n})\nexport class GxIdeTest {\n /* THIS IS A COMPONENT FOR TESTING PURPOSES. DO WHATEVER YOU WANT.*/\n\n private comboBoxModel = [\n {\n value: \"Value 1\",\n caption: \"Label for the value 1\"\n },\n {\n value: \"Value 2\",\n caption: \"Label for the value 222\",\n items: [\n {\n value: \"Value 2.1\",\n caption: \"Label for the value 2.1\"\n },\n {\n value: \"Value 2.2\",\n caption: \"Label for the value 2.2\"\n }\n ]\n },\n {\n value: \"Value 3\",\n caption: \"Label for the value 3\",\n disabled: true\n },\n { value: \"Value 4\", caption: \"Label for the value 4\" },\n {\n value: \"Value 5\",\n caption: \"Label for the value 5\",\n disabled: true,\n expandable: true,\n items: [\n {\n value: \"Value 5.1\",\n caption: \"Label for the value 5.1\"\n },\n {\n value: \"Value 5.2\",\n caption: \"Label for the value 5.2\"\n },\n {\n value: \"Value 5.3\",\n caption: \"Label for the value 5.3\",\n disabled: false\n },\n {\n value: \"Value 5.4\",\n caption: \"Label for the value 5.4\"\n }\n ]\n },\n {\n value: \"Value 6\",\n caption: \"Label for the value 6\",\n expandable: true,\n expanded: true,\n items: [\n {\n value: \"Value 6.1\",\n caption: \"Label for the value 6.1\",\n disabled: true\n },\n {\n value: \"Value 6.2\",\n caption: \"Label for the value 6.2\",\n disabled: true\n },\n {\n value: \"Value 6.3\",\n caption: \"Label for the value 6.3\",\n disabled: false\n },\n {\n value: \"Value 6.4\",\n caption: \"Label for the value 6.4\"\n }\n ]\n },\n {\n value: \"Value 7\",\n caption: \"Label for the value 7\",\n disabled: true\n },\n { value: \"Value 8\", caption: \"Label for the value 8\" },\n {\n value: \"Value 9\",\n caption: \"Label for the value 9\",\n expandable: true,\n items: [\n {\n value: \"Value 9.1\",\n caption: \"Label for the value 9.1\"\n },\n {\n value: \"Value 9.2\",\n caption: \"Label for the value 9.2\"\n },\n {\n value: \"Value 9.3\",\n caption: \"Label for the value 9.3\",\n disabled: false\n },\n {\n value: \"Value 9.4\",\n caption: \"Label for the value 9.4\"\n }\n ]\n }\n ];\n // 1.OWN PROPERTIES //\n\n /**\n * The component name\n */\n @Prop() readonly name: string;\n\n // 2. REFERENCE TO ELEMENTS //\n\n // 3.STATE() VARIABLES //\n\n @State() filterOn: boolean = true;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n // 5.EVENTS (EMIT) //\n\n componentWillLoad() {}\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <Host>\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <ch-tabular-grid class=\"property-grid\">\n <ch-tabular-grid-columnset class=\"property-grid-column-set\">\n <ch-tabular-grid-column\n column-name=\"Property\"\n size=\"50%\"\n class=\"property-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name=\"Value\"\n size=\"minmax(auto, calc(100% - var(--ch-tabular-grid-column-1-width)))\"\n class=\"property-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n <ch-tabular-grid-row class=\"property-grid-row property-grid-property-readonly\">\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n Property Name: Read Only Property Name: Read Only Property Name:\n Read Only Property Name: Read Only Property Name: Read Only\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n Property Value: Enabled Property Value: Enabled Property Value:\n Enabled Property Value: Enabled Property Value: Enabled\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n\n <ch-tabular-grid-row class=\"property-grid-row property-grid-value-readonly\">\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n Property Name: Enabled Property Name: Enabled Property Name:\n Enabled Property Name: Enabled Property Name: Enabled\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n Property Value: Read Only Property Value: Read Only Property\n Value: Read Only Property Value: Read Only Property Value: Read\n Only\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n\n <ch-tabular-grid-row class=\"property-grid-row property-grid-value-edited\">\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n Property Name: Enabled Property Name: Enabled Property Name:\n Enabled Property Name: Enabled\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n Property Value: Edited Property Value: Edited Property Value:\n Edited Property Value: Edited Property Value: Edited\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n </ch-tabular-grid>\n <hr />\n <ch-tabular-grid class=\"property-grid\">\n <ch-tabular-grid-columnset class=\"property-grid-column-set\">\n <ch-tabular-grid-column\n column-name=\"Property\"\n size=\"50%\"\n class=\"property-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name=\"Value\"\n size=\"minmax(auto, calc(100% - var(--ch-tabular-grid-column-1-width)))\"\n class=\"property-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n <ch-tabular-grid-row class=\"property-grid-row property-grid-value-editing\">\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n Lorem ipsum dolor sit amet consectetur, adipisicing elit.\n Assumenda dicta suscipit illo sit doloribus quos, ipsa voluptatum\n minus numquam fugit explicabo corporis non hic earum deserunt,\n ipsum expedita corrupti? Similique?\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n <ch-combo-box-render\n accessible-name=\"Colors\"\n id=\"combo-box-1\"\n class=\"combo-box\"\n model={this.comboBoxModel}\n placeholder=\"placeholder\"\n ></ch-combo-box-render>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n <ch-tabular-grid-row class=\"property-grid-row property-grid-value-editing\">\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n Form Input\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"property-grid-cell\">\n <ch-edit class=\"form-input\" value=\"Pat Taylor\"></ch-edit>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n </ch-tabular-grid>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../../../src/components/_test/test.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qBAAqB;AACrB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAKhE,MAAM,WAAW,GAAmB;IAClC,mBAAmB;IACnB,gBAAgB;IAChB,kBAAkB;IAClB,sBAAsB;IACtB,mBAAmB;IACnB,yBAAyB;IACzB,qBAAqB;CACtB,CAAC;AAOF,MAAM,OAAO,SAAS;;QACpB,oEAAoE;QACpE,wCAA4C;QAC5C,wCAA6C;YAC3C;gBACE,EAAE,EAAE,QAAQ;gBACZ,OAAO,EAAE,UAAU;gBACnB,IAAI,EAAE,YAAY;aACnB;YACD;gBACE,EAAE,EAAE,QAAQ;gBACZ,OAAO,EAAE,UAAU;gBACnB,IAAI,EAAE,YAAY;aACnB;YACD;gBACE,EAAE,EAAE,QAAQ;gBACZ,OAAO,EAAE,UAAU;gBACnB,IAAI,EAAE,YAAY;aACnB;SACF,EAAC;QAEF,wCAA6C;YAC3C;gBACE,EAAE,EAAE,QAAQ;gBACZ,OAAO,EAAE,UAAU;gBACnB,IAAI,EAAE,YAAY;aACnB;YACD;gBACE,EAAE,EAAE,QAAQ;gBACZ,OAAO,EAAE,UAAU;gBACnB,IAAI,EAAE,YAAY;aACnB;YACD;gBACE,EAAE,EAAE,QAAQ;gBACZ,OAAO,EAAE,UAAU;gBACnB,IAAI,EAAE,YAAY;aACnB;SACF,EAAC;QAEF,2CAAyB,GAAG,EAAE;YAC5B,uBAAA,IAAI,6BAAY,CAAC,KAAK,GAAG,EAAE,CAAC;YAC5B,uBAAA,IAAI,6BAAY,CAAC,KAAK,GAAG,uBAAA,IAAI,qCAAoB,CAAC;QACpD,CAAC,EAAC;QAEF,2CAAyB,GAAG,EAAE;YAC5B,uBAAA,IAAI,6BAAY,CAAC,KAAK,GAAG,EAAE,CAAC;YAC5B,uBAAA,IAAI,6BAAY,CAAC,KAAK,GAAG,uBAAA,IAAI,qCAAoB,CAAC;QACpD,CAAC,EAAC;;wBAa2B,IAAI;;IAEjC,qCAAqC;IAErC,qBAAqB;IAErB,iBAAiB,KAAI,CAAC;IAEtB,mCAAmC;IAEnC,iBAAiB;IAEjB,0BAA0B;IAE1B,qBAAqB;IAErB,0BAA0B;IAE1B,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,gBAAU,KAAK,EAAE,WAAW,GAAa;YAEzC,6BACE,KAAK,EAAC,UAAU,EAChB,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAE,uBAAA,IAAI,qCAAoB,EAC/B,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,uBAAA,IAAI,yBAAe,EAAmC,MAAA,CAAC,GAC5C;YACzB,cAAQ,KAAK,EAAC,gBAAgB,EAAC,OAAO,EAAE,uBAAA,IAAI,wCAAuB,oBAE1D;YACT,cAAQ,KAAK,EAAC,gBAAgB,EAAC,OAAO,EAAE,uBAAA,IAAI,wCAAuB,oBAE1D,CACJ,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/* STENCIL IMPORTS */\nimport { Component, Host, h, Prop, State } from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { ActionListItemModel } from \"@genexus/chameleon-controls-library\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n // \"utils/form\",\n // \"utils/layout\",\n // \"utils/typography\",\n \"components/button\",\n // \"components/checkbox\",\n \"components/list-box\"\n];\n\n@Component({\n tag: \"gx-ide-test\",\n styleUrl: \"test.scss\",\n shadow: true\n})\nexport class GxIdeTest {\n /* THIS IS A COMPONENT FOR TESTING PURPOSES. DO WHATEVER YOU WANT.*/\n #listBoxRef!: HTMLChActionListRenderElement;\n #actionListModelOne: ActionListItemModel[] = [\n {\n id: \"id-1-1\",\n caption: \"Item 1-1\",\n type: \"actionable\"\n },\n {\n id: \"id-1-2\",\n caption: \"Item 1-2\",\n type: \"actionable\"\n },\n {\n id: \"id-1-3\",\n caption: \"Item 1-3\",\n type: \"actionable\"\n }\n ];\n\n #actionListModelTwo: ActionListItemModel[] = [\n {\n id: \"id-2-1\",\n caption: \"Item 2-1\",\n type: \"actionable\"\n },\n {\n id: \"id-2-2\",\n caption: \"Item 2-2\",\n type: \"actionable\"\n },\n {\n id: \"id-2-3\",\n caption: \"Item 2-3\",\n type: \"actionable\"\n }\n ];\n\n #modelOneButtonHandler = () => {\n this.#listBoxRef.model = [];\n this.#listBoxRef.model = this.#actionListModelOne;\n };\n\n #modelTwoButtonHandler = () => {\n this.#listBoxRef.model = [];\n this.#listBoxRef.model = this.#actionListModelTwo;\n };\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component name\n */\n @Prop() readonly name: string;\n\n // 2. REFERENCE TO ELEMENTS //\n\n // 3.STATE() VARIABLES //\n\n @State() filterOn: boolean = true;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n // 5.EVENTS (EMIT) //\n\n componentWillLoad() {}\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <Host>\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <ch-action-list-render\n class=\"list-box\"\n selection=\"single\"\n model={this.#actionListModelOne}\n ref={el => (this.#listBoxRef = el as HTMLChActionListRenderElement)}\n ></ch-action-list-render>\n <button class=\"button-primary\" onClick={this.#modelOneButtonHandler}>\n set model one\n </button>\n <button class=\"button-primary\" onClick={this.#modelTwoButtonHandler}>\n set model two\n </button>\n </Host>\n );\n }\n}\n"]}
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -690,6 +690,9 @@ New classes for Chameleon + Mercury
690
690
  display: contents;
691
691
  }
692
692
 
693
+ /* - - - - - - - - - - - - - - - - - - -
694
+ Old classes (Gemini) to be removed soon
695
+ - - - - - - - - - - - - - - - - - - - */
693
696
  /* - - - - - - - - - - - - - - - - - - -
694
697
  Old classes (Gemini) to be removed soon
695
698
  - - - - - - - - - - - - - - - - - - - */
@@ -17,6 +17,16 @@
17
17
  contain: size;
18
18
  }
19
19
 
20
+ .data ch-tabular-grid-cell:is(:nth-child(2), :nth-child(3), :nth-child(4)) {
21
+ padding-block: var(--grid-cell__padding-block);
22
+ padding-inline: var(--grid-cell__padding-inline);
23
+ align-items: start;
24
+ justify-content: start;
25
+ display: inline-block;
26
+ white-space: nowrap;
27
+ overflow: hidden;
28
+ text-overflow: ellipsis;
29
+ }
20
30
  ch-tabular-grid.empty-result::part(main) {
21
31
  overflow: hidden;
22
32
  }
@@ -124,7 +124,7 @@ export class GxIdeDataSelector {
124
124
  "tabular-grid": true,
125
125
  "empty-result": this.objects.length === 0,
126
126
  "data": true
127
- }, rowSelectionMode: this.selectionType, onKeyDown: __classPrivateFieldGet(this, _GxIdeDataSelector_chGridKeyDownHandler, "f"), part: "ch-grid-objects", onSelectionChanged: this.objects.length ? __classPrivateFieldGet(this, _GxIdeDataSelector_objectsSelectionChangedHandler, "f") : undefined, ref: (el) => (__classPrivateFieldSet(this, _GxIdeDataSelector_chTabularGridObjectsEl, el, "f")) }, h("ch-tabular-grid-columnset", { class: "tabular-grid-column-set" }, h("ch-tabular-grid-column", { "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.maxContent, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.name, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.maxContent, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.dataType, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.maxContent, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.description, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.auto, class: "tabular-grid-column" })), !gridIsEmpty ? (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, this.objects.map((obj) => (h("ch-tabular-grid-row", { rowid: obj.id, onDblClick: __classPrivateFieldGet(this, _GxIdeDataSelector_confirmCallbackHandler, "f"), class: "tabular-grid-row" }, h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, h("ch-image", { src: obj.type === "attribute"
127
+ }, rowSelectionMode: this.selectionType, onKeyDown: __classPrivateFieldGet(this, _GxIdeDataSelector_chGridKeyDownHandler, "f"), part: "ch-grid-objects", onSelectionChanged: this.objects.length ? __classPrivateFieldGet(this, _GxIdeDataSelector_objectsSelectionChangedHandler, "f") : undefined, ref: (el) => (__classPrivateFieldSet(this, _GxIdeDataSelector_chTabularGridObjectsEl, el, "f")) }, h("ch-tabular-grid-columnset", { class: "tabular-grid-column-set" }, h("ch-tabular-grid-column", { "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.maxContent, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.name, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.common, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.dataType, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.common, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.description, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.common, class: "tabular-grid-column" })), !gridIsEmpty ? (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, this.objects.map((obj) => (h("ch-tabular-grid-row", { rowid: obj.id, onDblClick: __classPrivateFieldGet(this, _GxIdeDataSelector_confirmCallbackHandler, "f"), class: "tabular-grid-row" }, h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, h("ch-image", { src: obj.type === "attribute"
128
128
  ? "objects/attribute"
129
129
  : "objects-parts/variables", class: "icon-md" })), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.name), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.dataType), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.description)))))) : (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, h("ch-tabular-grid-rowset-empty", null, displayLoader ? (h("gx-ide-loader", { loaderTitle: __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").loader.title, show: true })) : (h("gx-ide-empty-state", { isAnimated: __classPrivateFieldGet(this, _GxIdeDataSelector_animateEmptyState, "f"), stateIconSrc: FILTER_ICON, stateTitle: __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").emptyState.title })))))));
130
130
  });
@@ -1 +1 @@
1
- {"version":3,"file":"data-selector.js","sourceRoot":"","sources":["../../../src/components/data-selector/data-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @stencil-community/own-props-must-be-private */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method,\n getAssetPath\n} from \"@stencil/core\";\n\nimport { Locale } from \"../../common/locale\";\n\nimport { config } from \"../../common/config\";\nimport { EntityData } from \"../../common/types\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport { TabularGridSelectionChangedEvent } from \"@genexus/chameleon-controls-library\";\n\n// Best performance bundle\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/tabular-grid\",\n \"components/icon\",\n \"utils/form\",\n \"utils/layout\",\n \"chameleon/scrollbar\"\n];\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-elevation\"\n});\n\n@Component({\n tag: \"gx-ide-data-selector\",\n styleUrl: \"data-selector.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/data-selector\"]\n})\nexport class GxIdeDataSelector {\n #firstGridObjectId: string; // used to select the first item after \"loadItemsCallback\"\n #loadItemsCallbackJustCalled: boolean = false; // used to select the first item after \"loadItemsCallback\"\n\n #componentLocale: any;\n #animateEmptyState: boolean = false;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/data-selector/shortcuts.json`);\n /* References needed to collect data */\n #filterPatternEl!: HTMLChEditElement;\n #filterObjectEl!: HTMLGxIdeEntitySelectorElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #chTabularGridObjectsEl: HTMLChTabularGridElement;\n\n @Element() el: HTMLGxIdeDataSelectorElement;\n\n /**\n * True if loadItemsCallback has been called and has not been resolved yet.\n */\n @State() loading: boolean = true;\n\n /**\n * The objects rendered in the table\n */\n @State() objects: ItemData[] = [];\n\n /**\n * The selected objects in the table of objects\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * Callback invoked when the user wishes to cancel the selection of objects.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n * Callback invoked when the user presses the 'OK' button\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * The default value for the module/folder filter\n */\n @Prop() readonly defaultModule: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when user presses the edit button. Receives the first\n * selected element id as a parameter.\n */\n @Prop() readonly editCallback!: EditCallback;\n\n /**\n * Callback invoked when the component needs to reload the list of attributes.\n */\n @Prop() readonly loadItemsCallback!: LoadItemsCallback;\n\n /**\n * If true, it will display a loader when needed.\n */\n @Prop() readonly loader = false;\n\n /**\n * Callback invoked when the user presses the 'New' button.\n */\n @Prop() readonly newVariableCallback!: NewVariableCallback;\n\n /**\n * Callback invoked when the action is executed in the Object filter. It returns\n * the information of the selected object (id and name) or 'undefined' if it was\n * canceled.\n */\n @Prop() readonly selectObjectCallback: SelectObjectCallback;\n\n /**\n * Single if multiple object selection is not allowed. Default is multiple\n */\n @Prop() readonly selectionType: \"single\" | \"multiple\" = \"multiple\";\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#refreshUIWithNewConfiguration();\n }\n\n componentDidLoad() {\n this.#filterPatternEl.focus();\n }\n\n componentDidRender() {\n this.#evaluateFirstRowSelection();\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n /**\n * Validate necessary data input\n */\n @Method()\n async validate(): Promise<boolean> {\n const isValid = true;\n return isValid;\n }\n\n /**\n * After items have been loaded and rendered, the first row should be selected.\n */\n #evaluateFirstRowSelection = () => {\n if (this.#loadItemsCallbackJustCalled) {\n this.#chTabularGridObjectsEl.selectRow(this.#firstGridObjectId);\n }\n this.#loadItemsCallbackJustCalled = false;\n };\n\n #chGridKeyDownHandler = (e: KeyboardEvent) => {\n if (e.key === \"Enter\") {\n this.#confirmCallbackHandler(e);\n }\n };\n\n #confirmCallbackHandler = (e: MouseEvent | KeyboardEvent): void => {\n e.stopPropagation();\n this.confirmCallback(this.selectedObjectsIds);\n };\n\n #editCallbackHandler = async (e: MouseEvent): Promise<void> => {\n e.stopPropagation();\n if (this.selectedObjectsIds[0]) {\n const result = await this.editCallback(this.selectedObjectsIds[0]);\n if (result) {\n this.#refreshUIWithNewConfiguration();\n }\n }\n };\n\n #hostKeyPressHandler = (e: KeyboardEvent) => {\n // TODO : revise why this is necessary\n // just prevent keypress propagation\n if (e.key === \"Enter\") {\n e.stopPropagation();\n }\n };\n\n #objectsSelectionChangedHandler = (\n event: CustomEvent<TabularGridSelectionChangedEvent>\n ) => {\n this.selectedObjectsIds = event.detail.rowsId;\n };\n\n #newVariableCallbackHandler = async () => {\n const response = await this.newVariableCallback();\n if (response) {\n this.#refreshUIWithNewConfiguration();\n }\n };\n #refreshUIWithNewConfiguration = (): void => {\n this.objects = [];\n const filters: FiltersData = {\n pattern: this.#filterPatternEl?.value,\n object: this.#filterObjectEl?.value?.id\n };\n this.loading = true;\n this.loadItemsCallback(filters).then((items: ItemData[]) => {\n if (items.length) {\n this.objects = this.#sortObjectsByName(items);\n this.#firstGridObjectId = this.objects[0].id;\n this.#loadItemsCallbackJustCalled = true;\n }\n this.selectedObjectsIds = [];\n this.loading = false;\n });\n };\n\n #renderFilter = (): Element[] => {\n return [\n <div class=\"header__field-group field-group\">\n <div class=\"field field-block pattern-field\">\n <label class=\"label\" htmlFor=\"filter-pattern\">\n {this.#componentLocale.filter.pattern}\n </label>\n <ch-edit\n autoFocus\n id=\"filter-pattern\"\n name=\"filter-pattern\"\n class=\"form-input pattern-input\"\n part=\"filter-pattern\"\n debounce={config.inputDebounce}\n onInput={this.#refreshUIWithNewConfiguration}\n ref={(el: HTMLChEditElement) =>\n (this.#filterPatternEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n <gx-ide-entity-selector\n id=\"object-selector\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectObjectCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#filterObjectEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"entity\"\n onValueChanged={this.#refreshUIWithNewConfiguration}\n ></gx-ide-entity-selector>\n </div>\n ];\n };\n\n #renderObjects = (): Element => {\n const gridIsEmpty = !this.objects.length;\n const displayLoader = this.loader && this.loading;\n if (!gridIsEmpty || displayLoader) {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n return (\n <ch-tabular-grid\n class={{\n \"tabular-grid\": true,\n \"empty-result\": this.objects.length === 0,\n \"data\": true\n }}\n rowSelectionMode={this.selectionType}\n onKeyDown={this.#chGridKeyDownHandler}\n part=\"ch-grid-objects\"\n onSelectionChanged={\n this.objects.length ? this.#objectsSelectionChangedHandler : undefined\n }\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chTabularGridObjectsEl = el as HTMLChTabularGridElement)\n }\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.name}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.dataType}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.description}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.auto}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n {!gridIsEmpty ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objects.map((obj: ItemData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n onDblClick={this.#confirmCallbackHandler}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image\n src={\n obj.type === \"attribute\"\n ? \"objects/attribute\"\n : \"objects-parts/variables\"\n }\n class=\"icon-md\"\n ></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.dataType}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n {displayLoader ? (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateIconSrc={FILTER_ICON}\n stateTitle={this.#componentLocale.emptyState.title}\n ></gx-ide-empty-state>\n )}\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #sortObjectsByName = (objects: ItemData[]): ItemData[] =>\n // TODO (make this a common helper function\n // and use it in other dialog grids that\n // require filter by name).\n objects.sort((a, b) => {\n const nameA = a.name.toLowerCase(),\n nameB = b.name.toLowerCase();\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n return 0;\n });\n\n render() {\n const newVariableButtonEnabled = !this.loading;\n const editButtonEnabled = !this.loading && this.selectedObjectsIds.length;\n const cancelButtonEnabled = this.loading;\n const okButtonEnabled = !this.loading;\n\n return (\n <Host onKeyPress={this.#hostKeyPressHandler} 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 spacing-body-block-start spacing-body-inline\">\n {this.#renderFilter()}\n </header>\n {this.#renderObjects()}\n <footer class=\"footer control-footer-with-border control-footer-space-between spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // New Variable Button\n class=\"button-secondary\"\n disabled={!newVariableButtonEnabled}\n part=\"button button-new\"\n type=\"button\"\n onClick={this.#newVariableCallbackHandler}\n >\n {this.#componentLocale.footer.btnNew}\n </button>\n <button\n // Edit Button\n class=\"button-secondary\"\n disabled={!editButtonEnabled}\n part=\"button button-edit\"\n type=\"button\"\n onClick={editButtonEnabled && this.#editCallbackHandler}\n >\n {this.#componentLocale.footer.btnEdit}\n </button>\n </div>\n\n <div class=\"buttons-spacer\">\n <button\n // Cancel Button\n class=\"button-secondary\"\n part=\"button button-cancel\"\n disabled={!cancelButtonEnabled}\n type=\"button\"\n onClick={cancelButtonEnabled && this.cancelCallback}\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // Confirm Button\n class=\"button-primary\"\n part=\"button button-ok\"\n disabled={!okButtonEnabled}\n type=\"button\"\n onClick={okButtonEnabled && this.#confirmCallbackHandler}\n >\n {this.#componentLocale.footer.btnConfirm}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type NewVariableCallback = () => Promise<boolean>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type SelectObjectCallback = () => Promise<EntityData | undefined>;\n\nexport type EditCallback = (id: string) => Promise<boolean>;\n\nexport type ConfirmCallback = (ids: string[]) => Promise<void>;\n\nexport type LoadItemsCallback = (filters: FiltersData) => Promise<ItemData[]>;\n\nexport type FiltersData = {\n pattern?: string;\n object?: string;\n};\n\nexport type ItemData = {\n type: ItemType;\n id: string;\n name: string;\n dataType: string;\n description: string;\n};\n\nexport type ItemType = \"variable\" | \"attribute\";\n"]}
1
+ {"version":3,"file":"data-selector.js","sourceRoot":"","sources":["../../../src/components/data-selector/data-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @stencil-community/own-props-must-be-private */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method,\n getAssetPath\n} from \"@stencil/core\";\n\nimport { Locale } from \"../../common/locale\";\n\nimport { config } from \"../../common/config\";\nimport { EntityData } from \"../../common/types\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport { TabularGridSelectionChangedEvent } from \"@genexus/chameleon-controls-library\";\n\n// Best performance bundle\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/tabular-grid\",\n \"components/icon\",\n \"utils/form\",\n \"utils/layout\",\n \"chameleon/scrollbar\"\n];\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-elevation\"\n});\n\n@Component({\n tag: \"gx-ide-data-selector\",\n styleUrl: \"data-selector.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/data-selector\"]\n})\nexport class GxIdeDataSelector {\n #firstGridObjectId: string; // used to select the first item after \"loadItemsCallback\"\n #loadItemsCallbackJustCalled: boolean = false; // used to select the first item after \"loadItemsCallback\"\n\n #componentLocale: any;\n #animateEmptyState: boolean = false;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/data-selector/shortcuts.json`);\n /* References needed to collect data */\n #filterPatternEl!: HTMLChEditElement;\n #filterObjectEl!: HTMLGxIdeEntitySelectorElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #chTabularGridObjectsEl: HTMLChTabularGridElement;\n\n @Element() el: HTMLGxIdeDataSelectorElement;\n\n /**\n * True if loadItemsCallback has been called and has not been resolved yet.\n */\n @State() loading: boolean = true;\n\n /**\n * The objects rendered in the table\n */\n @State() objects: ItemData[] = [];\n\n /**\n * The selected objects in the table of objects\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * Callback invoked when the user wishes to cancel the selection of objects.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n * Callback invoked when the user presses the 'OK' button\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * The default value for the module/folder filter\n */\n @Prop() readonly defaultModule: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when user presses the edit button. Receives the first\n * selected element id as a parameter.\n */\n @Prop() readonly editCallback!: EditCallback;\n\n /**\n * Callback invoked when the component needs to reload the list of attributes.\n */\n @Prop() readonly loadItemsCallback!: LoadItemsCallback;\n\n /**\n * If true, it will display a loader when needed.\n */\n @Prop() readonly loader = false;\n\n /**\n * Callback invoked when the user presses the 'New' button.\n */\n @Prop() readonly newVariableCallback!: NewVariableCallback;\n\n /**\n * Callback invoked when the action is executed in the Object filter. It returns\n * the information of the selected object (id and name) or 'undefined' if it was\n * canceled.\n */\n @Prop() readonly selectObjectCallback: SelectObjectCallback;\n\n /**\n * Single if multiple object selection is not allowed. Default is multiple\n */\n @Prop() readonly selectionType: \"single\" | \"multiple\" = \"multiple\";\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#refreshUIWithNewConfiguration();\n }\n\n componentDidLoad() {\n this.#filterPatternEl.focus();\n }\n\n componentDidRender() {\n this.#evaluateFirstRowSelection();\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n /**\n * Validate necessary data input\n */\n @Method()\n async validate(): Promise<boolean> {\n const isValid = true;\n return isValid;\n }\n\n /**\n * After items have been loaded and rendered, the first row should be selected.\n */\n #evaluateFirstRowSelection = () => {\n if (this.#loadItemsCallbackJustCalled) {\n this.#chTabularGridObjectsEl.selectRow(this.#firstGridObjectId);\n }\n this.#loadItemsCallbackJustCalled = false;\n };\n\n #chGridKeyDownHandler = (e: KeyboardEvent) => {\n if (e.key === \"Enter\") {\n this.#confirmCallbackHandler(e);\n }\n };\n\n #confirmCallbackHandler = (e: MouseEvent | KeyboardEvent): void => {\n e.stopPropagation();\n this.confirmCallback(this.selectedObjectsIds);\n };\n\n #editCallbackHandler = async (e: MouseEvent): Promise<void> => {\n e.stopPropagation();\n if (this.selectedObjectsIds[0]) {\n const result = await this.editCallback(this.selectedObjectsIds[0]);\n if (result) {\n this.#refreshUIWithNewConfiguration();\n }\n }\n };\n\n #hostKeyPressHandler = (e: KeyboardEvent) => {\n // TODO : revise why this is necessary\n // just prevent keypress propagation\n if (e.key === \"Enter\") {\n e.stopPropagation();\n }\n };\n\n #objectsSelectionChangedHandler = (\n event: CustomEvent<TabularGridSelectionChangedEvent>\n ) => {\n this.selectedObjectsIds = event.detail.rowsId;\n };\n\n #newVariableCallbackHandler = async () => {\n const response = await this.newVariableCallback();\n if (response) {\n this.#refreshUIWithNewConfiguration();\n }\n };\n #refreshUIWithNewConfiguration = (): void => {\n this.objects = [];\n const filters: FiltersData = {\n pattern: this.#filterPatternEl?.value,\n object: this.#filterObjectEl?.value?.id\n };\n this.loading = true;\n this.loadItemsCallback(filters).then((items: ItemData[]) => {\n if (items.length) {\n this.objects = this.#sortObjectsByName(items);\n this.#firstGridObjectId = this.objects[0].id;\n this.#loadItemsCallbackJustCalled = true;\n }\n this.selectedObjectsIds = [];\n this.loading = false;\n });\n };\n\n #renderFilter = (): Element[] => {\n return [\n <div class=\"header__field-group field-group\">\n <div class=\"field field-block pattern-field\">\n <label class=\"label\" htmlFor=\"filter-pattern\">\n {this.#componentLocale.filter.pattern}\n </label>\n <ch-edit\n autoFocus\n id=\"filter-pattern\"\n name=\"filter-pattern\"\n class=\"form-input pattern-input\"\n part=\"filter-pattern\"\n debounce={config.inputDebounce}\n onInput={this.#refreshUIWithNewConfiguration}\n ref={(el: HTMLChEditElement) =>\n (this.#filterPatternEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n <gx-ide-entity-selector\n id=\"object-selector\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectObjectCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#filterObjectEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"entity\"\n onValueChanged={this.#refreshUIWithNewConfiguration}\n ></gx-ide-entity-selector>\n </div>\n ];\n };\n\n #renderObjects = (): Element => {\n const gridIsEmpty = !this.objects.length;\n const displayLoader = this.loader && this.loading;\n if (!gridIsEmpty || displayLoader) {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n return (\n <ch-tabular-grid\n class={{\n \"tabular-grid\": true,\n \"empty-result\": this.objects.length === 0,\n \"data\": true\n }}\n rowSelectionMode={this.selectionType}\n onKeyDown={this.#chGridKeyDownHandler}\n part=\"ch-grid-objects\"\n onSelectionChanged={\n this.objects.length ? this.#objectsSelectionChangedHandler : undefined\n }\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chTabularGridObjectsEl = el as HTMLChTabularGridElement)\n }\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.name}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.dataType}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.description}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n {!gridIsEmpty ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objects.map((obj: ItemData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n onDblClick={this.#confirmCallbackHandler}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image\n src={\n obj.type === \"attribute\"\n ? \"objects/attribute\"\n : \"objects-parts/variables\"\n }\n class=\"icon-md\"\n ></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.dataType}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n {displayLoader ? (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateIconSrc={FILTER_ICON}\n stateTitle={this.#componentLocale.emptyState.title}\n ></gx-ide-empty-state>\n )}\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #sortObjectsByName = (objects: ItemData[]): ItemData[] =>\n // TODO (make this a common helper function\n // and use it in other dialog grids that\n // require filter by name).\n objects.sort((a, b) => {\n const nameA = a.name.toLowerCase(),\n nameB = b.name.toLowerCase();\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n return 0;\n });\n\n render() {\n const newVariableButtonEnabled = !this.loading;\n const editButtonEnabled = !this.loading && this.selectedObjectsIds.length;\n const cancelButtonEnabled = this.loading;\n const okButtonEnabled = !this.loading;\n\n return (\n <Host onKeyPress={this.#hostKeyPressHandler} 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 spacing-body-block-start spacing-body-inline\">\n {this.#renderFilter()}\n </header>\n {this.#renderObjects()}\n <footer class=\"footer control-footer-with-border control-footer-space-between spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // New Variable Button\n class=\"button-secondary\"\n disabled={!newVariableButtonEnabled}\n part=\"button button-new\"\n type=\"button\"\n onClick={this.#newVariableCallbackHandler}\n >\n {this.#componentLocale.footer.btnNew}\n </button>\n <button\n // Edit Button\n class=\"button-secondary\"\n disabled={!editButtonEnabled}\n part=\"button button-edit\"\n type=\"button\"\n onClick={editButtonEnabled && this.#editCallbackHandler}\n >\n {this.#componentLocale.footer.btnEdit}\n </button>\n </div>\n\n <div class=\"buttons-spacer\">\n <button\n // Cancel Button\n class=\"button-secondary\"\n part=\"button button-cancel\"\n disabled={!cancelButtonEnabled}\n type=\"button\"\n onClick={cancelButtonEnabled && this.cancelCallback}\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // Confirm Button\n class=\"button-primary\"\n part=\"button button-ok\"\n disabled={!okButtonEnabled}\n type=\"button\"\n onClick={okButtonEnabled && this.#confirmCallbackHandler}\n >\n {this.#componentLocale.footer.btnConfirm}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type NewVariableCallback = () => Promise<boolean>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type SelectObjectCallback = () => Promise<EntityData | undefined>;\n\nexport type EditCallback = (id: string) => Promise<boolean>;\n\nexport type ConfirmCallback = (ids: string[]) => Promise<void>;\n\nexport type LoadItemsCallback = (filters: FiltersData) => Promise<ItemData[]>;\n\nexport type FiltersData = {\n pattern?: string;\n object?: string;\n};\n\nexport type ItemData = {\n type: ItemType;\n id: string;\n name: string;\n dataType: string;\n description: string;\n};\n\nexport type ItemType = \"variable\" | \"attribute\";\n"]}
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */
@@ -1553,6 +1553,9 @@ New classes for Chameleon + Mercury
1553
1553
  display: contents;
1554
1554
  }
1555
1555
 
1556
+ /* - - - - - - - - - - - - - - - - - - -
1557
+ Old classes (Gemini) to be removed soon
1558
+ - - - - - - - - - - - - - - - - - - - */
1556
1559
  /* - - - - - - - - - - - - - - - - - - -
1557
1560
  Old classes (Gemini) to be removed soon
1558
1561
  - - - - - - - - - - - - - - - - - - - */
@@ -375,6 +375,9 @@ New classes for Chameleon + Mercury
375
375
  display: contents;
376
376
  }
377
377
 
378
+ /* - - - - - - - - - - - - - - - - - - -
379
+ Old classes (Gemini) to be removed soon
380
+ - - - - - - - - - - - - - - - - - - - */
378
381
  /* - - - - - - - - - - - - - - - - - - -
379
382
  Old classes (Gemini) to be removed soon
380
383
  - - - - - - - - - - - - - - - - - - - */