@genexus/genexus-ide-ui 1.0.9 → 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 (248) 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 +1 -1
  18. package/dist/cjs/gx-ide-design-import.cjs.entry.js +2 -2
  19. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
  20. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +1 -1
  21. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +1 -1
  22. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +2 -2
  24. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +523 -182
  25. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +3 -3
  28. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  29. package/dist/cjs/gx-ide-recent-news.cjs.entry.js +1 -1
  30. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  31. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -2
  32. package/dist/cjs/gx-ide-start-page.cjs.entry.js +2 -2
  33. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
  35. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  36. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  37. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  38. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  39. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  40. package/dist/cjs/gx-ide-test.cjs.entry.js +53 -102
  41. package/dist/cjs/gx-ide-test.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
  43. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +2 -2
  44. package/dist/cjs/loader.cjs.js +1 -1
  45. package/dist/collection/common/common.js +25 -1
  46. package/dist/collection/common/common.js.map +1 -1
  47. package/dist/collection/common/config.js +5 -0
  48. package/dist/collection/common/config.js.map +1 -1
  49. package/dist/collection/common/form-validation.js +50 -0
  50. package/dist/collection/common/form-validation.js.map +1 -0
  51. package/dist/collection/components/_helpers/card/card.css +3 -0
  52. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +3 -0
  53. package/dist/collection/components/_helpers/list-selector/list-selector.css +3 -0
  54. package/dist/collection/components/_starting-template/template.css +3 -0
  55. package/dist/collection/components/_test/test.js +53 -102
  56. package/dist/collection/components/_test/test.js.map +1 -1
  57. package/dist/collection/components/ai-assistant/ai-assistant.css +3 -0
  58. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.css +3 -0
  59. package/dist/collection/components/bpm/assign-roles/bpm-assign-roles.css +3 -0
  60. package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.css +3 -0
  61. package/dist/collection/components/bpm/import-files/bpm-import-files.css +3 -0
  62. package/dist/collection/components/bpm/import-gxpm/bpm-import-gxpm.css +3 -0
  63. package/dist/collection/components/bpm/objects-selector/bpm-objects-selector.css +3 -0
  64. package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.css +3 -0
  65. package/dist/collection/components/connect-gx-server/connect-gx-server.css +3 -0
  66. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +3 -0
  67. package/dist/collection/components/dashboard-home/dashboard-home.css +3 -0
  68. package/dist/collection/components/design-import/design-import.css +3 -0
  69. package/dist/collection/components/gam-installation-settings/gam-installation-settings.css +3 -0
  70. package/dist/collection/components/kb-manager-import/kb-manager-import.css +3 -0
  71. package/dist/collection/components/modules/edit-module-server/edit-module-server.css +3 -0
  72. package/dist/collection/components/modules/manage-module-references/manage-module-references.css +3 -0
  73. package/dist/collection/components/modules/manage-module-references-v2/manage-module-references.css +3 -0
  74. package/dist/collection/components/new-environment/new-environment.css +3 -0
  75. package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +2 -1
  76. package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -1
  77. package/dist/collection/components/new-kb/helpers.js +9 -0
  78. package/dist/collection/components/new-kb/helpers.js.map +1 -0
  79. package/dist/collection/components/new-kb/new-kb.css +39 -665
  80. package/dist/collection/components/new-kb/new-kb.js +679 -382
  81. package/dist/collection/components/new-kb/new-kb.js.map +1 -1
  82. package/dist/collection/components/new-object/new-object.css +3 -0
  83. package/dist/collection/components/object-selector/object-selector.css +4 -0
  84. package/dist/collection/components/object-selector/object-selector.js +1 -1
  85. package/dist/collection/components/object-selector/object-selector.js.map +1 -1
  86. package/dist/collection/components/references/references.css +3 -0
  87. package/dist/collection/components/share-kb/share-kb.css +3 -0
  88. package/dist/collection/components/start-page/recent-news.css +3 -0
  89. package/dist/collection/components/start-page/start-page.css +3 -0
  90. package/dist/collection/components/team-dev/commit/commit.css +3 -0
  91. package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +3 -0
  92. package/dist/collection/components/team-dev/update/update.css +3 -0
  93. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +3 -0
  94. package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +3 -0
  95. package/dist/collection/components/wf-settings/wf-settings.css +3 -0
  96. package/dist/collection/components/ww-images/ww-images.css +3 -0
  97. package/dist/components/common.js +14 -18
  98. package/dist/components/common.js.map +1 -1
  99. package/dist/components/config.js +5 -0
  100. package/dist/components/config.js.map +1 -1
  101. package/dist/components/gx-ide-dashboard-home.js +1 -1
  102. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  103. package/dist/components/gx-ide-new-kb.js +561 -209
  104. package/dist/components/gx-ide-new-kb.js.map +1 -1
  105. package/dist/components/gx-ide-object-selector.js +2 -2
  106. package/dist/components/gx-ide-object-selector.js.map +1 -1
  107. package/dist/components/gx-ide-start-page.js +1 -1
  108. package/dist/components/gx-ide-start-page.js.map +1 -1
  109. package/dist/components/gx-ide-test.js +53 -102
  110. package/dist/components/gx-ide-test.js.map +1 -1
  111. package/dist/esm/{common-31ac2b05.js → common-339b4376.js} +15 -19
  112. package/dist/esm/common-339b4376.js.map +1 -0
  113. package/dist/esm/{config-084ee328.js → config-ed1f26d7.js} +6 -1
  114. package/dist/esm/config-ed1f26d7.js.map +1 -0
  115. package/dist/esm/genexus-ide-ui.js +1 -1
  116. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
  117. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
  118. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +1 -1
  119. package/dist/esm/gx-ide-bpm-import-files.entry.js +1 -1
  120. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
  121. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
  122. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +1 -1
  123. package/dist/esm/gx-ide-connect-gx-server.entry.js +1 -1
  124. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
  125. package/dist/esm/gx-ide-dashboard-home.entry.js +1 -1
  126. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  127. package/dist/esm/gx-ide-data-selector.entry.js +1 -1
  128. package/dist/esm/gx-ide-design-import.entry.js +2 -2
  129. package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
  130. package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
  131. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +1 -1
  132. package/dist/esm/gx-ide-manage-module-references.entry.js +1 -1
  133. package/dist/esm/gx-ide-new-environment.entry.js +2 -2
  134. package/dist/esm/gx-ide-new-kb.entry.js +524 -183
  135. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  136. package/dist/esm/gx-ide-new-object.entry.js +1 -1
  137. package/dist/esm/gx-ide-object-selector.entry.js +3 -3
  138. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  139. package/dist/esm/gx-ide-recent-news.entry.js +1 -1
  140. package/dist/esm/gx-ide-references.entry.js +1 -1
  141. package/dist/esm/gx-ide-share-kb.entry.js +2 -2
  142. package/dist/esm/gx-ide-start-page.entry.js +2 -2
  143. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  144. package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
  145. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  146. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  147. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  148. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  149. package/dist/esm/gx-ide-template.entry.js +1 -1
  150. package/dist/esm/gx-ide-test.entry.js +53 -102
  151. package/dist/esm/gx-ide-test.entry.js.map +1 -1
  152. package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
  153. package/dist/esm/gx-ide-ww-images.entry.js +2 -2
  154. package/dist/esm/loader.js +1 -1
  155. package/dist/genexus-ide-ui/genexus-ide-ui.css +2 -2
  156. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +4 -4
  157. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  158. package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +2 -1
  159. package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -1
  160. package/dist/genexus-ide-ui/{p-032bdefc.entry.js → p-0fced96c.entry.js} +2 -2
  161. package/dist/genexus-ide-ui/{p-794ac8e6.entry.js → p-15711eed.entry.js} +2 -2
  162. package/dist/genexus-ide-ui/{p-8f294d2e.entry.js → p-176e8d55.entry.js} +2 -2
  163. package/dist/genexus-ide-ui/{p-4ade9a67.entry.js → p-1ad7189f.entry.js} +2 -2
  164. package/dist/genexus-ide-ui/{p-b5bb18d9.entry.js → p-1d56cc71.entry.js} +2 -2
  165. package/dist/genexus-ide-ui/{p-dcbf5cd9.entry.js → p-2ac9e22b.entry.js} +2 -2
  166. package/dist/genexus-ide-ui/{p-05eb7c04.entry.js → p-3714339e.entry.js} +20 -20
  167. package/dist/genexus-ide-ui/p-3714339e.entry.js.map +1 -0
  168. package/dist/genexus-ide-ui/p-3e5e2766.entry.js +765 -0
  169. package/dist/genexus-ide-ui/p-3e5e2766.entry.js.map +1 -0
  170. package/dist/genexus-ide-ui/{p-af836892.js → p-3ef5a5a6.js} +33 -37
  171. package/dist/genexus-ide-ui/p-3ef5a5a6.js.map +1 -0
  172. package/dist/genexus-ide-ui/{p-929dd336.entry.js → p-55304f04.entry.js} +2 -2
  173. package/dist/genexus-ide-ui/{p-e557aa5e.entry.js → p-5c5abefc.entry.js} +2 -2
  174. package/dist/genexus-ide-ui/{p-d5c2b4cc.entry.js → p-6fa9ea04.entry.js} +2 -2
  175. package/dist/genexus-ide-ui/{p-a4370f5d.entry.js → p-70588f0b.entry.js} +2 -2
  176. package/dist/genexus-ide-ui/{p-55a30661.js → p-78b90603.js} +6 -1
  177. package/dist/genexus-ide-ui/p-78b90603.js.map +1 -0
  178. package/dist/genexus-ide-ui/{p-5d8817cb.entry.js → p-88fff4f3.entry.js} +2 -2
  179. package/dist/genexus-ide-ui/{p-e0072adb.entry.js → p-9a9fdfc0.entry.js} +2 -2
  180. package/dist/genexus-ide-ui/p-a29cfcdb.entry.js +100 -0
  181. package/dist/genexus-ide-ui/p-a29cfcdb.entry.js.map +1 -0
  182. package/dist/genexus-ide-ui/{p-5620c188.entry.js → p-a29d27ed.entry.js} +2 -2
  183. package/dist/genexus-ide-ui/{p-2b200d34.entry.js → p-a2dad270.entry.js} +3 -3
  184. package/dist/genexus-ide-ui/{p-41e5e8e0.entry.js → p-a787b331.entry.js} +2 -2
  185. package/dist/genexus-ide-ui/{p-8beec8d4.entry.js → p-a7be549c.entry.js} +2 -2
  186. package/dist/genexus-ide-ui/{p-62be51c2.entry.js → p-b967c6e3.entry.js} +2 -2
  187. package/dist/genexus-ide-ui/{p-1a1042c2.entry.js → p-c10d7879.entry.js} +2 -2
  188. package/dist/genexus-ide-ui/{p-9d02318b.entry.js → p-c484250c.entry.js} +2 -2
  189. package/dist/genexus-ide-ui/{p-593981a8.entry.js → p-ca842e11.entry.js} +3 -3
  190. package/dist/genexus-ide-ui/{p-afb531b3.entry.js → p-d1a76638.entry.js} +2 -2
  191. package/dist/genexus-ide-ui/{p-f69df17d.entry.js → p-d703bff2.entry.js} +2 -2
  192. package/dist/genexus-ide-ui/{p-f512bbca.entry.js → p-dbf8b06e.entry.js} +2 -2
  193. package/dist/genexus-ide-ui/{p-b7dfdf6d.entry.js → p-de18e865.entry.js} +3 -3
  194. package/dist/genexus-ide-ui/{p-88ab3f67.entry.js → p-e0da6770.entry.js} +2 -2
  195. package/dist/genexus-ide-ui/{p-c0ee7647.entry.js → p-e146e456.entry.js} +3 -3
  196. package/dist/genexus-ide-ui/{p-54ee665f.entry.js → p-e4cbd23c.entry.js} +2 -2
  197. package/dist/genexus-ide-ui/{p-eb6ef221.entry.js → p-e629ab16.entry.js} +2 -2
  198. package/dist/genexus-ide-ui/{p-1f8445eb.entry.js → p-edffe8d7.entry.js} +3 -3
  199. package/dist/genexus-ide-ui/{p-aea82479.entry.js → p-faa6fc25.entry.js} +2 -2
  200. package/dist/types/common/common.d.ts +6 -1
  201. package/dist/types/common/config.d.ts +6 -0
  202. package/dist/types/common/form-validation.d.ts +8 -0
  203. package/dist/types/components/_test/test.d.ts +1 -1
  204. package/dist/types/components/new-kb/helpers.d.ts +5 -0
  205. package/dist/types/components/new-kb/new-kb.d.ts +68 -102
  206. package/dist/types/components.d.ts +0 -27
  207. package/package.json +3 -3
  208. package/dist/cjs/common-d21da2fc.js.map +0 -1
  209. package/dist/cjs/config-cefda28a.js.map +0 -1
  210. package/dist/esm/common-31ac2b05.js.map +0 -1
  211. package/dist/esm/config-084ee328.js.map +0 -1
  212. package/dist/genexus-ide-ui/p-05eb7c04.entry.js.map +0 -1
  213. package/dist/genexus-ide-ui/p-55a30661.js.map +0 -1
  214. package/dist/genexus-ide-ui/p-69a83248.entry.js +0 -186
  215. package/dist/genexus-ide-ui/p-69a83248.entry.js.map +0 -1
  216. package/dist/genexus-ide-ui/p-9d640444.entry.js +0 -472
  217. package/dist/genexus-ide-ui/p-9d640444.entry.js.map +0 -1
  218. package/dist/genexus-ide-ui/p-af836892.js.map +0 -1
  219. /package/dist/genexus-ide-ui/{p-032bdefc.entry.js.map → p-0fced96c.entry.js.map} +0 -0
  220. /package/dist/genexus-ide-ui/{p-794ac8e6.entry.js.map → p-15711eed.entry.js.map} +0 -0
  221. /package/dist/genexus-ide-ui/{p-8f294d2e.entry.js.map → p-176e8d55.entry.js.map} +0 -0
  222. /package/dist/genexus-ide-ui/{p-4ade9a67.entry.js.map → p-1ad7189f.entry.js.map} +0 -0
  223. /package/dist/genexus-ide-ui/{p-b5bb18d9.entry.js.map → p-1d56cc71.entry.js.map} +0 -0
  224. /package/dist/genexus-ide-ui/{p-dcbf5cd9.entry.js.map → p-2ac9e22b.entry.js.map} +0 -0
  225. /package/dist/genexus-ide-ui/{p-929dd336.entry.js.map → p-55304f04.entry.js.map} +0 -0
  226. /package/dist/genexus-ide-ui/{p-e557aa5e.entry.js.map → p-5c5abefc.entry.js.map} +0 -0
  227. /package/dist/genexus-ide-ui/{p-d5c2b4cc.entry.js.map → p-6fa9ea04.entry.js.map} +0 -0
  228. /package/dist/genexus-ide-ui/{p-a4370f5d.entry.js.map → p-70588f0b.entry.js.map} +0 -0
  229. /package/dist/genexus-ide-ui/{p-5d8817cb.entry.js.map → p-88fff4f3.entry.js.map} +0 -0
  230. /package/dist/genexus-ide-ui/{p-e0072adb.entry.js.map → p-9a9fdfc0.entry.js.map} +0 -0
  231. /package/dist/genexus-ide-ui/{p-5620c188.entry.js.map → p-a29d27ed.entry.js.map} +0 -0
  232. /package/dist/genexus-ide-ui/{p-2b200d34.entry.js.map → p-a2dad270.entry.js.map} +0 -0
  233. /package/dist/genexus-ide-ui/{p-41e5e8e0.entry.js.map → p-a787b331.entry.js.map} +0 -0
  234. /package/dist/genexus-ide-ui/{p-8beec8d4.entry.js.map → p-a7be549c.entry.js.map} +0 -0
  235. /package/dist/genexus-ide-ui/{p-62be51c2.entry.js.map → p-b967c6e3.entry.js.map} +0 -0
  236. /package/dist/genexus-ide-ui/{p-1a1042c2.entry.js.map → p-c10d7879.entry.js.map} +0 -0
  237. /package/dist/genexus-ide-ui/{p-9d02318b.entry.js.map → p-c484250c.entry.js.map} +0 -0
  238. /package/dist/genexus-ide-ui/{p-593981a8.entry.js.map → p-ca842e11.entry.js.map} +0 -0
  239. /package/dist/genexus-ide-ui/{p-afb531b3.entry.js.map → p-d1a76638.entry.js.map} +0 -0
  240. /package/dist/genexus-ide-ui/{p-f69df17d.entry.js.map → p-d703bff2.entry.js.map} +0 -0
  241. /package/dist/genexus-ide-ui/{p-f512bbca.entry.js.map → p-dbf8b06e.entry.js.map} +0 -0
  242. /package/dist/genexus-ide-ui/{p-b7dfdf6d.entry.js.map → p-de18e865.entry.js.map} +0 -0
  243. /package/dist/genexus-ide-ui/{p-88ab3f67.entry.js.map → p-e0da6770.entry.js.map} +0 -0
  244. /package/dist/genexus-ide-ui/{p-c0ee7647.entry.js.map → p-e146e456.entry.js.map} +0 -0
  245. /package/dist/genexus-ide-ui/{p-54ee665f.entry.js.map → p-e4cbd23c.entry.js.map} +0 -0
  246. /package/dist/genexus-ide-ui/{p-eb6ef221.entry.js.map → p-e629ab16.entry.js.map} +0 -0
  247. /package/dist/genexus-ide-ui/{p-1f8445eb.entry.js.map → p-edffe8d7.entry.js.map} +0 -0
  248. /package/dist/genexus-ide-ui/{p-aea82479.entry.js.map → p-faa6fc25.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["patchBrowser","importMeta","url","opts","resourcesUrl","URL","href","promiseResolve","then","options","bootstrapLazy","JSON","parse"],"sources":["node_modules/@stencil/core/internal/client/patch-browser.js","@lazy-browser-entrypoint?app-data=conditional"],"sourcesContent":["/*\n Stencil Client Patch Browser v4.9.1 | MIT Licensed | https://stenciljs.com\n */\nimport { BUILD, NAMESPACE } from '@stencil/core/internal/app-data';\nimport { consoleDevInfo, doc, promiseResolve, H } from '@stencil/core';\nconst patchBrowser = () => {\n // NOTE!! This fn cannot use async/await!\n if (BUILD.isDev && !BUILD.isTesting) {\n consoleDevInfo('Running in development mode.');\n }\n if (BUILD.cloneNodeFix) {\n // opted-in to polyfill cloneNode() for slot polyfilled components\n patchCloneNodeFix(H.prototype);\n }\n const scriptElm = BUILD.scriptDataOpts\n ? Array.from(doc.querySelectorAll('script')).find((s) => new RegExp(`\\/${NAMESPACE}(\\\\.esm)?\\\\.js($|\\\\?|#)`).test(s.src) ||\n s.getAttribute('data-stencil-namespace') === NAMESPACE)\n : null;\n const importMeta = import.meta.url;\n const opts = BUILD.scriptDataOpts ? (scriptElm || {})['data-opts'] || {} : {};\n if (importMeta !== '') {\n opts.resourcesUrl = new URL('.', importMeta).href;\n }\n return promiseResolve(opts);\n};\nconst patchCloneNodeFix = (HTMLElementPrototype) => {\n const nativeCloneNodeFn = HTMLElementPrototype.cloneNode;\n HTMLElementPrototype.cloneNode = function (deep) {\n if (this.nodeName === 'TEMPLATE') {\n return nativeCloneNodeFn.call(this, deep);\n }\n const clonedNode = nativeCloneNodeFn.call(this, false);\n const srcChildNodes = this.childNodes;\n if (deep) {\n for (let i = 0; i < srcChildNodes.length; i++) {\n // Node.ATTRIBUTE_NODE === 2, and checking because IE11\n if (srcChildNodes[i].nodeType !== 2) {\n clonedNode.appendChild(srcChildNodes[i].cloneNode(true));\n }\n }\n }\n return clonedNode;\n };\n};\nexport { patchBrowser };\n","export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { patchBrowser } from '@stencil/core/internal/client/patch-browser';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\npatchBrowser().then(options => {\n globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n});\n"],"mappings":";;;;;;GAKA,OAAMA,eAAe;EAajB,MAAMC,gBAAyBC;EAC/B,MAAMC,IAAqE;EAC3E,IAAIF,MAAe,IAAI;IACnBE,EAAKC,eAAe,IAAIC,IAAI,KAAKJ,GAAYK;AACrD;EACI,OAAOC,EAAeJ;AAAK;;ACnB/BH,eAAeQ,MAAKC,KAEXC,EAAcC,KAAAC,MAAA,+1jBAAuCH"}
1
+ {"version":3,"names":["patchBrowser","importMeta","url","opts","resourcesUrl","URL","href","promiseResolve","then","options","bootstrapLazy","JSON","parse"],"sources":["node_modules/@stencil/core/internal/client/patch-browser.js","@lazy-browser-entrypoint?app-data=conditional"],"sourcesContent":["/*\n Stencil Client Patch Browser v4.9.1 | MIT Licensed | https://stenciljs.com\n */\nimport { BUILD, NAMESPACE } from '@stencil/core/internal/app-data';\nimport { consoleDevInfo, doc, promiseResolve, H } from '@stencil/core';\nconst patchBrowser = () => {\n // NOTE!! This fn cannot use async/await!\n if (BUILD.isDev && !BUILD.isTesting) {\n consoleDevInfo('Running in development mode.');\n }\n if (BUILD.cloneNodeFix) {\n // opted-in to polyfill cloneNode() for slot polyfilled components\n patchCloneNodeFix(H.prototype);\n }\n const scriptElm = BUILD.scriptDataOpts\n ? Array.from(doc.querySelectorAll('script')).find((s) => new RegExp(`\\/${NAMESPACE}(\\\\.esm)?\\\\.js($|\\\\?|#)`).test(s.src) ||\n s.getAttribute('data-stencil-namespace') === NAMESPACE)\n : null;\n const importMeta = import.meta.url;\n const opts = BUILD.scriptDataOpts ? (scriptElm || {})['data-opts'] || {} : {};\n if (importMeta !== '') {\n opts.resourcesUrl = new URL('.', importMeta).href;\n }\n return promiseResolve(opts);\n};\nconst patchCloneNodeFix = (HTMLElementPrototype) => {\n const nativeCloneNodeFn = HTMLElementPrototype.cloneNode;\n HTMLElementPrototype.cloneNode = function (deep) {\n if (this.nodeName === 'TEMPLATE') {\n return nativeCloneNodeFn.call(this, deep);\n }\n const clonedNode = nativeCloneNodeFn.call(this, false);\n const srcChildNodes = this.childNodes;\n if (deep) {\n for (let i = 0; i < srcChildNodes.length; i++) {\n // Node.ATTRIBUTE_NODE === 2, and checking because IE11\n if (srcChildNodes[i].nodeType !== 2) {\n clonedNode.appendChild(srcChildNodes[i].cloneNode(true));\n }\n }\n }\n return clonedNode;\n };\n};\nexport { patchBrowser };\n","export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { patchBrowser } from '@stencil/core/internal/client/patch-browser';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\npatchBrowser().then(options => {\n globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n});\n"],"mappings":";;;;;;GAKA,OAAMA,eAAe;EAajB,MAAMC,gBAAyBC;EAC/B,MAAMC,IAAqE;EAC3E,IAAIF,MAAe,IAAI;IACnBE,EAAKC,eAAe,IAAIC,IAAI,KAAKJ,GAAYK;AACrD;EACI,OAAOC,EAAeJ;AAAK;;ACnB/BH,eAAeQ,MAAKC,KAEXC,EAAcC,KAAAC,MAAA,gvlBAAuCH"}
@@ -2,7 +2,8 @@
2
2
  "componentName": "New Kb",
3
3
  "header": {
4
4
  "kbName": "KB Name",
5
- "kbLocation": "Location"
5
+ "kbLocation": "Location",
6
+ "selectLocationButton": "Select location"
6
7
  },
7
8
  "tabBasic": {
8
9
  "tabLabel": "Basic",
@@ -2,7 +2,8 @@
2
2
  "componentName": "新規 KB",
3
3
  "header": {
4
4
  "kbName": "KB 名",
5
- "kbLocation": "場所"
5
+ "kbLocation": "場所",
6
+ "selectLocationButton":
6
7
  },
7
8
  "tabBasic": {
8
9
  "tabLabel": "基本",
@@ -2,7 +2,7 @@ import { r as t, c as e, a as r, h as a, H as o, g as i } from "./p-aaed592c.js"
2
2
 
3
3
  import { L as s } from "./p-74d59062.js";
4
4
 
5
- import { r as l } from "./p-af836892.js";
5
+ import { r as l } from "./p-3ef5a5a6.js";
6
6
 
7
7
  import { f as n } from "./p-14e6ef41.js";
8
8
 
@@ -238,4 +238,4 @@ const d = class {
238
238
  d.style = g;
239
239
 
240
240
  export { d as gx_ide_create_kb_from_server };
241
- //# sourceMappingURL=p-032bdefc.entry.js.map
241
+ //# sourceMappingURL=p-0fced96c.entry.js.map
@@ -1,6 +1,6 @@
1
1
  import { r as t, c as e, h as r, H as a, g as o } from "./p-aaed592c.js";
2
2
 
3
- import { c as i } from "./p-55a30661.js";
3
+ import { c as i } from "./p-78b90603.js";
4
4
 
5
5
  import { L as s } from "./p-74d59062.js";
6
6
 
@@ -155,4 +155,4 @@ const c = class {
155
155
  c.style = n;
156
156
 
157
157
  export { c as gx_ide_bpm_import_files };
158
- //# sourceMappingURL=p-794ac8e6.entry.js.map
158
+ //# sourceMappingURL=p-15711eed.entry.js.map
@@ -4,7 +4,7 @@ import { g as o } from "./p-6df9fab1.js";
4
4
 
5
5
  import { L as i } from "./p-74d59062.js";
6
6
 
7
- import { c as s } from "./p-55a30661.js";
7
+ import { c as s } from "./p-78b90603.js";
8
8
 
9
9
  import { h as n } from "./p-14e6ef41.js";
10
10
 
@@ -208,4 +208,4 @@ w = new WeakMap, k = new WeakMap;
208
208
  j.style = l;
209
209
 
210
210
  export { j as gx_ide_recent_news };
211
- //# sourceMappingURL=p-8f294d2e.entry.js.map
211
+ //# sourceMappingURL=p-176e8d55.entry.js.map
@@ -1,6 +1,6 @@
1
1
  import { r as e, c as t, h as r, H as a, g as o } from "./p-aaed592c.js";
2
2
 
3
- import { c as i } from "./p-55a30661.js";
3
+ import { c as i } from "./p-78b90603.js";
4
4
 
5
5
  import { L as s } from "./p-74d59062.js";
6
6
 
@@ -164,4 +164,4 @@ const n = class {
164
164
  n.style = l;
165
165
 
166
166
  export { n as gx_ide_gam_installation_settings };
167
- //# sourceMappingURL=p-4ade9a67.entry.js.map
167
+ //# sourceMappingURL=p-1ad7189f.entry.js.map
@@ -2,7 +2,7 @@ import { r as e, c as t, a as r, h as a, H as o, g as i } from "./p-aaed592c.js"
2
2
 
3
3
  import { L as s } from "./p-74d59062.js";
4
4
 
5
- import { c as n } from "./p-55a30661.js";
5
+ import { c as n } from "./p-78b90603.js";
6
6
 
7
7
  import { r as l } from "./p-e8bdf9dc.js";
8
8
 
@@ -336,4 +336,4 @@ const g = class {
336
336
  g.style = d;
337
337
 
338
338
  export { g as gx_ide_references };
339
- //# sourceMappingURL=p-b5bb18d9.entry.js.map
339
+ //# sourceMappingURL=p-1d56cc71.entry.js.map
@@ -2,7 +2,7 @@ import { r as t, a as e, h as i, H as s, g as a } from "./p-aaed592c.js";
2
2
 
3
3
  import { L as n } from "./p-74d59062.js";
4
4
 
5
- import { c as r } from "./p-55a30661.js";
5
+ import { c as r } from "./p-78b90603.js";
6
6
 
7
7
  import { g as o } from "./p-6df9fab1.js";
8
8
 
@@ -329,4 +329,4 @@ C = new WeakMap, _ = new WeakMap, E = new WeakMap, T = new WeakMap, z = new Weak
329
329
  S.style = l;
330
330
 
331
331
  export { S as gx_ide_data_selector };
332
- //# sourceMappingURL=p-dcbf5cd9.entry.js.map
332
+ //# sourceMappingURL=p-2ac9e22b.entry.js.map
@@ -4,7 +4,7 @@ import { g as l } from "./p-6df9fab1.js";
4
4
 
5
5
  import { L as o } from "./p-74d59062.js";
6
6
 
7
- import { c as r } from "./p-55a30661.js";
7
+ import { c as r } from "./p-78b90603.js";
8
8
 
9
9
  import { a as n } from "./p-14e6ef41.js";
10
10
 
@@ -24,7 +24,7 @@ const mapCategoryToComboBoxItemModel = t => t.map((t => ({
24
24
  caption: t.label
25
25
  })));
26
26
 
27
- const d = ':host{block-size:100%;display:grid;grid-template-rows:auto 1fr auto;overflow:auto}.section{display:contents}.filter-layout{grid-template:"pattern type" "category module" "modified modified";grid-template-columns:1fr 1fr}.pattern{grid-area:pattern}.type{grid-area:type}.category{grid-area:category}.module{grid-area:module}.modified-accordion{grid-area:modified;display:flex;flex-direction:column}.field-group-modified{grid-template-columns:1fr 1fr 1fr}gx-ide-container::part(content){display:grid}ch-tabular-grid{overflow:auto}.tabular-grid-object-selector ch-tabular-grid-cell:is(:nth-child(5)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.objects-count{display:grid;grid-template-columns:1fr 1fr;border-block-start:var(--mer-border__width--sm) solid var(--mer-color__elevation--04)}.objects-selected,.objects-matching{padding-block-end:var(--mer-spacing--xs)}ch-tabular-grid-rowset-empty{position:relative}ch-tabular-grid.empty-result::part(main){overflow:hidden}input::-webkit-datetime-edit-fields-wrapper{padding:none}';
27
+ const d = ':host{block-size:100%;display:grid;grid-template-rows:auto 1fr auto;overflow:auto}.section{display:contents}.filter-layout{grid-template:"pattern type" "category module" "modified modified";grid-template-columns:1fr 1fr}.pattern{grid-area:pattern}.type{grid-area:type}.category{grid-area:category}.module{grid-area:module}.modified-accordion{grid-area:modified;display:flex;flex-direction:column}.field-group-modified{grid-template-columns:1fr 1fr 1fr}.input-date-time{block-size:calc( var(--control__font-size--regular) * var(--control__line-height) + var(--control__padding-block) * 2 + var(--control__border-width) * 2 )}gx-ide-container::part(content){display:grid}ch-tabular-grid{overflow:auto}.tabular-grid-object-selector ch-tabular-grid-cell:is(:nth-child(5)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.objects-count{display:grid;grid-template-columns:1fr 1fr;border-block-start:var(--mer-border__width--sm) solid var(--mer-color__elevation--04)}.objects-selected,.objects-matching{padding-block-end:var(--mer-spacing--xs)}ch-tabular-grid-rowset-empty{position:relative}ch-tabular-grid.empty-result::part(main){overflow:hidden}input::-webkit-datetime-edit-fields-wrapper{padding:none}';
28
28
 
29
29
  var h = undefined && undefined.__classPrivateFieldGet || function(t, e, i, s) {
30
30
  if (i === "a" && !s) throw new TypeError("Private accessor was defined without a getter");
@@ -39,7 +39,7 @@ var f = undefined && undefined.__classPrivateFieldSet || function(t, e, i, s, a)
39
39
  return s === "a" ? a.call(t, i) : a ? a.value = i : e.set(t, i), i;
40
40
  };
41
41
 
42
- var u, p, b, m, g, w, v, y, k, M, x, W, j, T, C, D, _, $, z, E, F, I, P, S, N, L, K, V, A, B;
42
+ var u, p, b, m, g, w, v, y, k, M, x, W, j, _, T, C, z, D, $, E, F, I, P, S, N, L, K, V, A, B;
43
43
 
44
44
  const H = [ "resets/box-sizing", "utils/form--full", "components/accordion", "components/tabular-grid", "utils/typography", "utils/layout" ];
45
45
 
@@ -81,15 +81,15 @@ const O = class {
81
81
  j.set(this, (() => {
82
82
  this.cancelCallback();
83
83
  }));
84
- T.set(this, (t => {
84
+ _.set(this, (t => {
85
85
  if (t.key === "Enter") {
86
86
  h(this, I, "f").call(this, t);
87
87
  }
88
88
  }));
89
- C.set(this, (() => {
89
+ T.set(this, (() => {
90
90
  h(this, x, "f").selectAllRows(false);
91
91
  }));
92
- D.set(this, (t => {
92
+ C.set(this, (t => {
93
93
  const e = h(this, u, "f");
94
94
  if (t === "selected") {
95
95
  if (this.selectedObjectsIdsArray.length === 0) {
@@ -109,21 +109,21 @@ const O = class {
109
109
  }
110
110
  return `${this.objects.length} ${e.objCount.matching.many}`;
111
111
  }));
112
- _.set(this, (() => {
112
+ z.set(this, (() => {
113
113
  const t = new Date;
114
114
  const e = t.toISOString().split("T")[0];
115
115
  const i = t.toISOString().split("T")[1].slice(0, 5);
116
116
  // Only take 'HH:MM' part
117
117
  return `${e}T${i}`;
118
118
  }));
119
- $.set(this, (t => {
119
+ D.set(this, (t => {
120
120
  this.modifiedAfterValue = t.detail;
121
121
  if (this.modifiedAfterValue !== c.DATE_TIME || this.modifiedAfterValue === c.DATE_TIME && h(this, M, "f").value) {
122
122
  // if "modified" is "after date/time" only refresh ui if date/time is valid.
123
123
  h(this, P, "f").call(this);
124
124
  }
125
125
  }));
126
- z.set(this, (t => {
126
+ $.set(this, (t => {
127
127
  this.selectedObjectsIdsArray = t.detail.rowsId;
128
128
  }));
129
129
  E.set(this, (t => {
@@ -159,7 +159,7 @@ const O = class {
159
159
  this.objects = h(this, B, "f").call(this, t);
160
160
  }
161
161
  this.selectedObjectsIdsArray = [];
162
- h(this, C, "f").call(this);
162
+ h(this, T, "f").call(this);
163
163
  this.loading = false;
164
164
  }));
165
165
  }));
@@ -249,7 +249,7 @@ const O = class {
249
249
  id: "after-type",
250
250
  model: h(this, b, "f"),
251
251
  ref: t => f(this, y, t, "f"),
252
- onInput: h(this, $, "f")
252
+ onInput: h(this, D, "f")
253
253
  })), i("div", {
254
254
  class: "field field-block"
255
255
  }, i("label", {
@@ -287,17 +287,17 @@ const O = class {
287
287
  onInput: h(this, P, "f")
288
288
  })))))))));
289
289
  N.set(this, (() => i("footer", {
290
- class: "footer"
290
+ class: "footer control-footer"
291
291
  }, i("div", {
292
292
  class: "control-footer control-footer-space-between objects-count spacing-body-inline",
293
293
  slot: "footer-above"
294
294
  }, i("p", {
295
295
  class: "text-body-regular-s objects-selected",
296
296
  part: "objects-selected"
297
- }, h(this, D, "f").call(this, "selected")), i("p", {
297
+ }, h(this, C, "f").call(this, "selected")), i("p", {
298
298
  class: "text-body-regular-s objects-matching",
299
299
  part: "objects-matching"
300
- }, h(this, D, "f").call(this, "matching"))), i("div", {
300
+ }, h(this, C, "f").call(this, "matching"))), i("div", {
301
301
  class: "control-footer-with-border control-footer-space-between spacing-body-inline spacing-body-block-end"
302
302
  }, i("button", {
303
303
  // button new object
@@ -332,8 +332,8 @@ const O = class {
332
332
  rowSelectionMode: this.multiSelection ? "multiple" : "single",
333
333
  ref: t => f(this, x, t, "f"),
334
334
  part: "ch-grid-objects",
335
- onKeyDown: h(this, T, "f"),
336
- onSelectionChanged: h(this, z, "f"),
335
+ onKeyDown: h(this, _, "f"),
336
+ onSelectionChanged: h(this, $, "f"),
337
337
  onDblClick: h(this, I, "f")
338
338
  }, i("ch-tabular-grid-columnset", {
339
339
  class: "tabular-grid-column-set"
@@ -461,7 +461,7 @@ const O = class {
461
461
  this.types = undefined;
462
462
  }
463
463
  async connectedCallback() {
464
- J = h(this, _, "f").call(this);
464
+ J = h(this, z, "f").call(this);
465
465
  }
466
466
  async componentWillLoad() {
467
467
  f(this, u, await o.getComponentStrings(this.el), "f");
@@ -514,12 +514,12 @@ const O = class {
514
514
 
515
515
  u = new WeakMap, p = new WeakMap, b = new WeakMap, m = new WeakMap, g = new WeakMap,
516
516
  w = new WeakMap, v = new WeakMap, y = new WeakMap, k = new WeakMap, M = new WeakMap,
517
- x = new WeakMap, W = new WeakMap, j = new WeakMap, T = new WeakMap, C = new WeakMap,
518
- D = new WeakMap, _ = new WeakMap, $ = new WeakMap, z = new WeakMap, E = new WeakMap,
517
+ x = new WeakMap, W = new WeakMap, j = new WeakMap, _ = new WeakMap, T = new WeakMap,
518
+ C = new WeakMap, z = new WeakMap, D = new WeakMap, $ = new WeakMap, E = new WeakMap,
519
519
  F = new WeakMap, I = new WeakMap, P = new WeakMap, S = new WeakMap, N = new WeakMap,
520
520
  L = new WeakMap, K = new WeakMap, V = new WeakMap, A = new WeakMap, B = new WeakMap;
521
521
 
522
522
  O.style = d;
523
523
 
524
524
  export { O as gx_ide_object_selector };
525
- //# sourceMappingURL=p-05eb7c04.entry.js.map
525
+ //# sourceMappingURL=p-3714339e.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mapObjectTypeToComboBoxItemModel","objectTypeModel","map","objectType","value","id","caption","name","mapCategoryToComboBoxItemModel","categoryModel","category","label","objectSelectorCss","CSS_BUNDLES","FILTER_ICON","getIconPath","colorType","USER_ICON","MODIFIED_ACCORDION_MODEL","expanded","TODAY","GxIdeObjectSelector","_GxIdeObjectSelector_componentLocale","set","this","_GxIdeObjectSelector_shortcutsSrc","getAssetPath","_GxIdeObjectSelector_afterModel","_GxIdeObjectSelector_patternInput","_GxIdeObjectSelector_typeComboBox","_GxIdeObjectSelector_categoryComboBox","_GxIdeObjectSelector_moduleEntitySelector","_GxIdeObjectSelector_afterTypeComboBox","_GxIdeObjectSelector_userInput","_GxIdeObjectSelector_modifiedDateInput","_GxIdeObjectSelector_objectsGrid","_GxIdeObjectSelector_shortcutsEl","_GxIdeObjectSelector_cancelCallbackHandler","cancelCallback","_GxIdeObjectSelector_chGridKeyDownHandler","e","key","__classPrivateFieldGet","_GxIdeObjectSelector_openSelectionCallbackHandler","call","_GxIdeObjectSelector_deselectAll","selectAllRows","_GxIdeObjectSelector_evaluateObjectsCount","type","locale","selectedObjectsIdsArray","length","objCount","selected","none","one","many","objects","matching","_GxIdeObjectSelector_getToday","now","Date","date","toISOString","split","time","slice","_GxIdeObjectSelector_handleAfterValueChange","event","modifiedAfterValue","detail","FILTER_AFTER","DATE_TIME","_GxIdeObjectSelector_refreshUIWithNewConfiguration","_GxIdeObjectSelector_handleObjectsSelectionChange","rowsId","_GxIdeObjectSelector_hostKeyPressHandler","stopPropagation","_GxIdeObjectSelector_newObjectCallbackHandler","newObjectCallback","openSelectionCallback","modifiedAfter","user","_b","_a","trim","filters","pattern","_c","module","_e","_d","modifiedBy","modifiedDate","_f","loading","loadCallback","then","_GxIdeObjectSelector_sortObjectsByName","_GxIdeObjectSelector_renderFilter","h","class","htmlFor","filter","accessibleName","debounce","config","inputDebounce","part","patternValue","mode","ref","el","__classPrivateFieldSet","onInput","disabled","types","defaultType","model","categories","defaultCategory","defaultModule","labelCaption","labelPosition","onValueChanged","defaultValue","selectEntityCallback","selectModuleCallback","slot","after","startImgSrc","dateTime","max","_GxIdeObjectSelector_renderFooter","onClick","undefined","footer","btnNew","btnCancel","btnConfirm","multiSelection","_GxIdeObjectSelector_selectAll","btnSelectAll","_GxIdeObjectSelector_renderObjects","rowSelectionMode","onKeyDown","onSelectionChanged","onDblClick","settingable","size","tabularGrid","colSize","maxContent","tableHead","description","commonDouble","importDate","obj","rowid","src","icon","formatDate","loader","loaderTitle","title","show","stateIconSrc","stateTitle","emptyState","_GxIdeObjectSelector_setAfterDefaultValue","NONE","_GxIdeObjectSelector_setAfterOptions","afterNone","IMPORT","LAST_BUILD","sort","a","b","nameA","toLowerCase","nameB","connectedCallback","componentWillLoad","Locale","getComponentStrings","componentDidLoad","focus","componentDidRender","suspendShortcuts","suspend","validate","isValid","render","Host","onKeyPress"],"sources":["src/components/object-selector/helpers.ts","src/components/object-selector/object-selector.scss?tag=gx-ide-object-selector&encapsulation=shadow","src/components/object-selector/object-selector.tsx"],"sourcesContent":["import { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\nimport { ObjectType, GxOption } from \"../../common/types\";\n// - - - - - - - - - - - -\n// Data Mappings\n// - - - - - - - - - - - -\n\n// ch-combo-box-render\n\nexport const mapObjectTypeToComboBoxItemModel = (\n objectTypeModel: ObjectType[]\n): ComboBoxModel =>\n objectTypeModel.map(objectType => ({\n value: objectType.id,\n caption: objectType.name\n }));\nexport const mapCategoryToComboBoxItemModel = (\n categoryModel: GxOption[]\n): ComboBoxModel =>\n categoryModel.map(category => ({\n value: category.id,\n caption: category.label\n }));\n","@import \"../../../node_modules/@genexus/mercury/dist/mercury.scss\"; // for the tabular-grid-cell-layout mixin\n\n:host {\n block-size: 100%;\n display: grid;\n grid-template-rows: auto 1fr auto;\n overflow: auto;\n}\n\n.section {\n display: contents;\n}\n\n/* Filters */\n.filter-layout {\n grid-template:\n \"pattern type\"\n \"category module\"\n \"modified modified\";\n grid-template-columns: 1fr 1fr;\n}\n.pattern {\n grid-area: pattern;\n}\n.type {\n grid-area: type;\n}\n.category {\n grid-area: category;\n}\n.module {\n grid-area: module;\n}\n.modified-accordion {\n grid-area: modified;\n display: flex;\n flex-direction: column;\n}\n.field-group-modified {\n grid-template-columns: 1fr 1fr 1fr;\n}\n.input-date-time {\n // TODO: Mercury controls block-size should be defined by a variable,\n // instead of the sum of the font-size + line-height + padding-block.\n // once this is updated, the block-size defined bellow should not be\n // required anymore.\n\n block-size: calc(\n var(--control__font-size--regular) * var(--control__line-height) +\n var(--control__padding-block) * 2 + var(--control__border-width) * 2\n );\n}\n\ngx-ide-container::part(content) {\n // only apply display grid when the loader is being displayed, to stretch the container.\n display: grid;\n}\n\n/*tabular grid*/\nch-tabular-grid {\n overflow: auto;\n}\n@include tabular-grid-cell-layout(\n $tabular-grid-selector: \".tabular-grid-object-selector\",\n $tabular-grid-cell-node-type: \"text\",\n $tabular-grid-cell-apply-ellipsis: true,\n $tabular-grid-affected-columns-nth-list: (\n 5\n )\n);\n\n// Objects Table\n.objects-count {\n display: grid;\n grid-template-columns: 1fr 1fr;\n border-block-start: var(--mer-border__width--sm) solid\n var(--mer-color__elevation--04);\n}\n.objects-selected,\n.objects-matching {\n padding-block-end: var(--mer-spacing--xs);\n}\n\nch-tabular-grid-rowset-empty {\n position: relative; // makes this the bounder element for the loader\n}\n\nch-tabular-grid.empty-result::part(main) {\n // WA to avoid scrollbar flickering when displaying the empty-state message\n overflow: hidden;\n}\n\ninput::-webkit-datetime-edit-fields-wrapper {\n // WA remove padding to force this input block-size to be the same as other\n // mercury controls block size.\n padding: none;\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method,\n getAssetPath\n} from \"@stencil/core\";\n\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport {\n AccordionModel,\n ComboBoxModel,\n TabularGridSelectionChangedEvent\n} from \"@genexus/chameleon-controls-library\";\n\nimport { Locale } from \"../../common/locale\";\nimport { config } from \"../../common/config\";\nimport { EntityData, GxOption, ObjectType } from \"../../common/types\";\nimport { formatDate } from \"../../common/helpers\";\nimport {\n mapObjectTypeToComboBoxItemModel,\n mapCategoryToComboBoxItemModel\n} from \"./helpers\";\nimport { FILTER_AFTER, FilterAfterValue } from \"../../common/constants\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"components/accordion\",\n \"components/tabular-grid\",\n \"utils/typography\",\n \"utils/layout\"\n];\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-elevation\"\n});\nconst USER_ICON = getIconPath({\n category: \"system\",\n name: \"user\",\n colorType: \"on-elevation\"\n});\n\nconst MODIFIED_ACCORDION_MODEL: AccordionModel = [\n {\n id: \"modified\",\n caption: \"Modified\",\n expanded: false\n }\n];\n\nlet TODAY: string = null;\n\n@Component({\n tag: \"gx-ide-object-selector\",\n styleUrl: \"object-selector.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/object-selector\"]\n})\nexport class GxIdeObjectSelector {\n #componentLocale: any;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/object-selector/shortcuts.json`\n );\n\n #afterModel: ComboBoxModel = null;\n\n @Element() el: HTMLGxIdeObjectSelectorElement;\n\n /* References needed to collect data */\n #patternInput!: HTMLChEditElement;\n #typeComboBox!: HTMLChComboBoxRenderElement;\n #categoryComboBox!: HTMLChComboBoxRenderElement;\n #moduleEntitySelector!: HTMLGxIdeEntitySelectorElement;\n #afterTypeComboBox!: HTMLChComboBoxRenderElement;\n #userInput!: HTMLChEditElement;\n #modifiedDateInput!: HTMLInputElement;\n #objectsGrid!: HTMLChTabularGridElement;\n #shortcutsEl: HTMLChShortcutsElement;\n\n /**\n * For show or hide the filters relative to modifiers\n */\n @State() filterModified = false;\n\n /**\n * True if loadCallback has been called and has not been resolved yet.\n */\n @State() loading: boolean = false;\n\n /**\n * The \"modified after\" value\n */\n @State() modifiedAfterValue: FilterAfterValue;\n\n /**\n * The objects rendered in the table\n */\n @State() objects: ObjectData[] = [];\n\n /**\n * The selected objects in the table of objects\n */\n @State() selectedObjectsIdsArray: 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 * The categories render in the filter category selector\n */\n @Prop() readonly categories!: GxOption[];\n\n /**\n * The default id value for the category filter\n */\n @Prop() readonly defaultCategory: string;\n\n /**\n * The default value for the module/folder filter\n */\n @Prop() readonly defaultModule: EntityData;\n\n /**\n * The default value for the type filter\n */\n @Prop() readonly defaultType: string;\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 component needs to reload the list of attributes.\n */\n @Prop() readonly loadCallback!: LoadCallback;\n\n /**\n * True if multiple object selection is allowed. Default is 'True'\n */\n @Prop() readonly multiSelection: boolean = false;\n\n /**\n * Callback invoked when the user presses the 'New' button.\n */\n @Prop() readonly newObjectCallback!: NewObjectCallback;\n\n /**\n * This is a function provided by the developer for expanded the data of object that is double-clicked or entered.\n */\n @Prop() readonly openSelectionCallback!: OpenSelectionCallback;\n\n /**\n * Current value of the input pattern. It is also used to set the default value when initializing the component\n */\n @Prop() readonly patternValue: string;\n\n /**\n * Callback invoked when the action is executed in the Module/Folder filter. It returns the information of the selected object (id and name) or 'undefined' if it was canceled.\n */\n @Prop() readonly selectModuleCallback: SelectModuleCallback;\n\n /**\n * The types render in the filter type selector\n */\n @Prop() readonly types!: ObjectType[];\n\n async connectedCallback() {\n TODAY = this.#getToday();\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#setAfterOptions();\n this.#setAfterDefaultValue();\n }\n\n componentDidLoad() {\n this.#refreshUIWithNewConfiguration();\n this.#patternInput.focus();\n }\n\n componentDidRender() {}\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#shortcutsEl.suspend = true;\n } else {\n this.#shortcutsEl.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 #cancelCallbackHandler = (): void => {\n this.cancelCallback();\n };\n\n #chGridKeyDownHandler = (e: KeyboardEvent) => {\n if (e.key === \"Enter\") {\n this.#openSelectionCallbackHandler(e);\n }\n };\n\n #deselectAll = (): void => {\n (this.#objectsGrid as any).selectAllRows(false);\n };\n\n #evaluateObjectsCount = (type: \"selected\" | \"matching\"): string => {\n const locale = this.#componentLocale;\n\n if (type === \"selected\") {\n if (this.selectedObjectsIdsArray.length === 0) {\n return locale.objCount.selected.none;\n }\n if (this.selectedObjectsIdsArray.length === 1) {\n return `1 ${locale.objCount.selected.one}`;\n }\n return `${this.selectedObjectsIdsArray.length} ${locale.objCount.selected.many}`;\n }\n\n // type === \"matching\"\n if (this.objects.length === 0) {\n return locale.objCount.matching.none;\n }\n if (this.objects.length === 1) {\n return `1 ${locale.objCount.matching.one}`;\n }\n return `${this.objects.length} ${locale.objCount.matching.many}`;\n };\n\n #getToday = (): string => {\n const now = new Date();\n const date = now.toISOString().split(\"T\")[0];\n const time = now.toISOString().split(\"T\")[1].slice(0, 5); // Only take 'HH:MM' part\n return `${date}T${time}`;\n };\n\n #handleAfterValueChange = (event: CustomEvent<string> | InputEvent) => {\n this.modifiedAfterValue = event.detail as FilterAfterValue;\n if (\n this.modifiedAfterValue !== FILTER_AFTER.DATE_TIME ||\n (this.modifiedAfterValue === FILTER_AFTER.DATE_TIME &&\n this.#modifiedDateInput.value)\n ) {\n // if \"modified\" is \"after date/time\" only refresh ui if date/time is valid.\n this.#refreshUIWithNewConfiguration();\n }\n };\n\n #handleObjectsSelectionChange = (\n event: CustomEvent<TabularGridSelectionChangedEvent>\n ) => {\n this.selectedObjectsIdsArray = event.detail.rowsId;\n };\n\n #hostKeyPressHandler = (e: KeyboardEvent) => {\n // just prevent keypress propagation\n if (e.key === \"Enter\") {\n e.stopPropagation();\n }\n };\n\n #newObjectCallbackHandler = (): void => {\n this.newObjectCallback();\n };\n\n #openSelectionCallbackHandler = (e: MouseEvent | KeyboardEvent): void => {\n e.stopPropagation();\n this.openSelectionCallback(this.selectedObjectsIdsArray);\n };\n\n #refreshUIWithNewConfiguration = (): void => {\n /* 'modified' checkbox, should only be considered if 'date' || 'user' */\n const modifiedAfter = this.#afterTypeComboBox.value;\n const user = this.#userInput?.value?.trim();\n const filters: ObjectFiltersData = {\n pattern: this.#patternInput?.value,\n type: this.#typeComboBox.value,\n category: this.#categoryComboBox.value,\n module: this.#moduleEntitySelector?.value?.id,\n modifiedAfter: modifiedAfter ? modifiedAfter : null,\n modifiedBy: user ? user : null,\n modifiedDate:\n modifiedAfter === FILTER_AFTER.DATE_TIME\n ? new Date(this.#modifiedDateInput?.value)\n : null\n };\n this.loading = true;\n this.objects = [];\n this.loadCallback(filters).then((objects: ObjectData[]) => {\n if (objects) {\n this.objects = this.#sortObjectsByName(objects);\n }\n this.selectedObjectsIdsArray = [];\n this.#deselectAll();\n this.loading = false;\n });\n };\n\n #renderFilter = (): Element => {\n return (\n <header class=\"control-header spacing-body-inline spacing-body-block-start\">\n <form class=\"field-group filter-layout\">\n <div class=\"field field-block pattern\">\n <label\n // pattern\n class=\"label\"\n htmlFor=\"pattern\"\n >\n {this.#componentLocale.filter.pattern}\n </label>\n\n <ch-edit\n accessibleName={this.#componentLocale.filter.pattern}\n debounce={config.inputDebounce}\n class=\"form-input\"\n part=\"filter-pattern\"\n id=\"pattern\"\n name=\"pattern\"\n value={this.patternValue}\n mode=\"text\"\n ref={(el: HTMLChEditElement) =>\n (this.#patternInput = el as HTMLChEditElement)\n }\n onInput={this.#refreshUIWithNewConfiguration}\n ></ch-edit>\n </div>\n\n <div class=\"field field-block type\">\n <label\n // type\n class=\"label\"\n htmlFor=\"type\"\n >\n {this.#componentLocale.filter.type}\n </label>\n <ch-combo-box-render\n accessibleName={this.#componentLocale.filter.type}\n class=\"combo-box\"\n disabled={!this.types}\n value={this.defaultType}\n part=\"filter-type\"\n id=\"type\"\n model={mapObjectTypeToComboBoxItemModel(this.types)}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#typeComboBox = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#refreshUIWithNewConfiguration}\n ></ch-combo-box-render>\n </div>\n\n <div class=\"field field-block category\">\n <label\n // category\n class=\"label\"\n htmlFor=\"category\"\n >\n {this.#componentLocale.filter.category}\n </label>\n <ch-combo-box-render\n id=\"category\"\n class=\"combo-box\"\n accessibleName={this.#componentLocale.filter.category}\n disabled={!this.categories}\n model={mapCategoryToComboBoxItemModel(this.categories)}\n value={this.defaultCategory}\n part=\"filter-category\"\n onInput={this.categories && this.#refreshUIWithNewConfiguration}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#categoryComboBox = el as HTMLChComboBoxRenderElement)\n }\n ></ch-combo-box-render>\n </div>\n\n <gx-ide-entity-selector\n // module\n class=\"module\"\n id=\"module\"\n value={this.defaultModule}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#moduleEntitySelector =\n el as HTMLGxIdeEntitySelectorElement)\n }\n labelCaption={this.#componentLocale.filter.module}\n labelPosition=\"block-start\"\n onValueChanged={this.#refreshUIWithNewConfiguration}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectModuleCallback}\n ></gx-ide-entity-selector>\n\n <ch-accordion-render\n // modified\n class=\"accordion-outlined modified-accordion\"\n model={MODIFIED_ACCORDION_MODEL}\n >\n <div slot=\"modified\" class=\"spacing-body\">\n <div class=\"field-group field-group-modified\">\n <div class=\"field field-block after\">\n <label\n // after\n class=\"label\"\n htmlFor=\"after-type\"\n >\n {this.#componentLocale.filter.after}\n </label>\n <ch-combo-box-render\n class=\"combo-box\"\n value={this.modifiedAfterValue}\n part=\"filter-after-type\"\n id=\"after-type\"\n model={this.#afterModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#afterTypeComboBox =\n el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#handleAfterValueChange}\n ></ch-combo-box-render>\n </div>\n\n <div class=\"field field-block\">\n <label\n // user\n class=\"label\"\n htmlFor=\"user-name\"\n >\n {this.#componentLocale.filter.user}\n </label>\n <ch-edit\n class=\"form-input\"\n part=\"filter-user\"\n value={this.patternValue}\n ref={(el: HTMLChEditElement) =>\n (this.#userInput = el as HTMLChEditElement)\n }\n id=\"user-name\"\n name=\"userName\"\n startImgSrc={USER_ICON}\n onInput={this.#refreshUIWithNewConfiguration}\n ></ch-edit>\n </div>\n\n <div class=\"field field-block\">\n <label\n // date\n class={{\n \"label\": true,\n \"label--disabled\":\n this.modifiedAfterValue !== \"afterDateTime\"\n }}\n htmlFor=\"modified-date\"\n >\n {this.#componentLocale.filter.dateTime}\n </label>\n\n <input\n type=\"datetime-local\"\n class=\"form-input input-date-time\"\n id=\"modified-date\"\n name=\"modifiedDate\"\n part=\"filter-pattern\"\n value={this.patternValue}\n max={TODAY}\n ref={(el: HTMLInputElement) =>\n (this.#modifiedDateInput = el as HTMLInputElement)\n }\n disabled={this.modifiedAfterValue !== \"afterDateTime\"}\n onInput={this.#refreshUIWithNewConfiguration}\n ></input>\n </div>\n </div>\n </div>\n </ch-accordion-render>\n </form>\n </header>\n );\n };\n\n #renderFooter = (): Element => {\n return (\n <footer class=\"footer control-footer\">\n <div\n class=\"control-footer control-footer-space-between objects-count spacing-body-inline\"\n slot=\"footer-above\"\n >\n <p\n class=\"text-body-regular-s objects-selected\"\n part=\"objects-selected\"\n >\n {this.#evaluateObjectsCount(\"selected\")}\n </p>\n <p\n class=\"text-body-regular-s objects-matching\"\n part=\"objects-matching\"\n >\n {this.#evaluateObjectsCount(\"matching\")}\n </p>\n </div>\n\n <div class=\"control-footer-with-border control-footer-space-between spacing-body-inline spacing-body-block-end\">\n <button\n // button new object\n class=\"button-secondary\"\n part=\"button button-new\"\n onClick={!this.loading ? this.#newObjectCallbackHandler : undefined}\n disabled={this.loading}\n >\n {this.#componentLocale.footer.btnNew}\n </button>\n <div class=\"end buttons-spacer\">\n <button\n // button cancel\n class=\"button-secondary\"\n part=\"button button-cancel\"\n onClick={this.#cancelCallbackHandler}\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // button confirm\n class=\"button-primary\"\n part=\"button button-confirm\"\n onClick={this.#openSelectionCallbackHandler}\n disabled={this.loading}\n >\n {this.#componentLocale.footer.btnConfirm}\n </button>\n {this.multiSelection ? (\n <button\n class=\"button-secondary\"\n onClick={this.#selectAll}\n part=\"button button-select-all\"\n >\n {this.#componentLocale.footer.btnSelectAll}\n </button>\n ) : null}\n </div>\n </div>\n </footer>\n );\n };\n\n #renderObjects = (): Element => {\n return (\n <ch-tabular-grid\n class={{\n \"tabular-grid\": true,\n \"tabular-grid-object-selector\": true,\n \"empty-result\": this.objects.length === 0\n }}\n rowSelectionMode={this.multiSelection ? \"multiple\" : \"single\"}\n ref={(el: HTMLChTabularGridElement) => (this.#objectsGrid = el)}\n part=\"ch-grid-objects\"\n onKeyDown={this.#chGridKeyDownHandler}\n onSelectionChanged={this.#handleObjectsSelectionChange}\n onDblClick={this.#openSelectionCallbackHandler}\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.type}\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.module}\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.commonDouble}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.modifiedDate}\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.importDate}\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-columnset>\n\n {this.objects.length ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objects.map((obj: ObjectData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n key={obj.id}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image src={obj.icon} class=\"icon-md\"></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.type}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.module}\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-cell class=\"tabular-grid-cell\">\n {`${formatDate(obj.modifiedDate, \"date-time\")}`}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(obj.importDate, \"date-time\")}`}\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 {this.loader && this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <gx-ide-empty-state\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 #selectAll = (): void => {\n (this.#objectsGrid as any).selectAllRows();\n };\n\n #setAfterDefaultValue = (): void => {\n this.modifiedAfterValue = FILTER_AFTER.NONE;\n };\n\n #setAfterOptions = (): void => {\n this.#afterModel = [\n {\n caption: this.#componentLocale.filter.afterNone,\n value: FILTER_AFTER.NONE\n },\n {\n caption: this.#componentLocale.filter[FILTER_AFTER.DATE_TIME],\n value: FILTER_AFTER.DATE_TIME\n },\n {\n caption: this.#componentLocale.filter[FILTER_AFTER.IMPORT],\n value: FILTER_AFTER.IMPORT\n },\n {\n caption: this.#componentLocale.filter[FILTER_AFTER.LAST_BUILD],\n value: FILTER_AFTER.LAST_BUILD\n }\n ];\n };\n\n #sortObjectsByName = (objects: ObjectData[]): ObjectData[] => {\n return 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\n render(): void {\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.#shortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section class=\"section\">\n {this.#renderFilter()}\n {this.#renderObjects()}\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type NewObjectCallback = () => Promise<void>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\n\nexport type OpenSelectionCallback = (ids: string[]) => Promise<void>;\n\nexport type LoadCallback = (\n filters: ObjectFiltersData\n) => Promise<ObjectData[]>;\n\nexport type ObjectFiltersData = {\n pattern?: string;\n type: string;\n category?: string;\n module?: string;\n modifiedAfter?: string;\n modifiedBy?: string;\n modifiedDate?: Date;\n};\n\nexport type ObjectData = {\n id: string;\n icon: string;\n name: string;\n type: string;\n description: string;\n module: string;\n modifiedDate?: Date;\n importDate?: Date;\n};\n"],"mappings":"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"}