@genexus/genexus-ide-ui 0.0.99 → 0.0.101

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 (404) hide show
  1. package/dist/cjs/ch-icon_5.cjs.entry.js +3 -2
  2. package/dist/cjs/ch-icon_5.cjs.entry.js.map +1 -1
  3. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  4. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +1 -1
  5. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
  9. package/dist/cjs/gx-ide-card.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
  11. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +16 -14
  13. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js +175 -0
  17. package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js.map +1 -0
  18. package/dist/cjs/gx-ide-import-from-design.cjs.entry.js +3 -10
  19. package/dist/cjs/gx-ide-import-from-design.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -1
  21. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
  25. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
  29. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
  31. package/dist/cjs/gx-ide-new-object.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +1 -1
  33. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  35. package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +1 -1
  37. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gx-ide-start-page.cjs.entry.js +9 -5
  39. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  40. package/dist/cjs/gx-ide-status-buttons_2.cjs.entry.js +41 -27
  41. package/dist/cjs/gx-ide-status-buttons_2.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
  43. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  44. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  45. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js.map +1 -1
  46. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  47. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js.map +1 -1
  48. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  49. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js.map +1 -1
  50. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  51. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  52. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  53. package/dist/cjs/gx-ide-template.cjs.entry.js.map +1 -1
  54. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
  55. package/dist/cjs/gx-ide-ww-images.cjs.entry.js.map +1 -1
  56. package/dist/cjs/gxg-card_2.cjs.entry.js +10 -5
  57. package/dist/cjs/gxg-card_2.cjs.entry.js.map +1 -1
  58. package/dist/cjs/gxg-combo-box_2.cjs.entry.js +62 -24
  59. package/dist/cjs/gxg-combo-box_2.cjs.entry.js.map +1 -1
  60. package/dist/cjs/gxg-list-box_2.cjs.entry.js +28 -3
  61. package/dist/cjs/gxg-list-box_2.cjs.entry.js.map +1 -1
  62. package/dist/cjs/gxg-menu-item.cjs.entry.js +1 -1
  63. package/dist/cjs/gxg-menu-item.cjs.entry.js.map +1 -1
  64. package/dist/cjs/gxg-pill.cjs.entry.js +5 -5
  65. package/dist/cjs/gxg-pill.cjs.entry.js.map +1 -1
  66. package/dist/cjs/gxg-pills.cjs.entry.js +1 -1
  67. package/dist/cjs/gxg-pills.cjs.entry.js.map +1 -1
  68. package/dist/cjs/gxg-tab_4.cjs.entry.js +97 -17
  69. package/dist/cjs/gxg-tab_4.cjs.entry.js.map +1 -1
  70. package/dist/cjs/gxg-window-v2.cjs.entry.js +28 -0
  71. package/dist/cjs/gxg-window-v2.cjs.entry.js.map +1 -0
  72. package/dist/cjs/loader.cjs.js +1 -1
  73. package/dist/collection/collection-manifest.json +3 -1
  74. package/dist/collection/components/_helpers/card/card.css +333 -26
  75. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +40 -0
  76. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js +180 -0
  77. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js.map +1 -0
  78. package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.css +0 -1
  79. package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js +1 -1
  80. package/dist/collection/components/_helpers/list-selector/list-selector.css +519 -13
  81. package/dist/collection/components/_helpers/list-selector/list-selector.js +1 -1
  82. package/dist/collection/components/_starting-template/template.css +333 -26
  83. package/dist/collection/components/ai-assistant/ai-assistant.css +333 -26
  84. package/dist/collection/components/ai-assistant/ai-message.css +0 -1
  85. package/dist/collection/components/bpm-application-declaration/bpm-app-declaration.css +333 -26
  86. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +333 -26
  87. package/dist/collection/components/dashboard-home/dashboard-home.css +711 -41
  88. package/dist/collection/components/dashboard-home/dashboard-home.js +51 -14
  89. package/dist/collection/components/dashboard-home/dashboard-home.js.map +1 -1
  90. package/dist/collection/components/data-selector/data-selector.css +333 -26
  91. package/dist/collection/components/import-from-design/import-from-design.css +333 -26
  92. package/dist/collection/components/import-from-design/import-from-design.js +3 -12
  93. package/dist/collection/components/import-from-design/import-from-design.js.map +1 -1
  94. package/dist/collection/components/kb-manager-export/kb-manager-export.css +333 -26
  95. package/dist/collection/components/kb-manager-import/kb-manager-import.css +333 -26
  96. package/dist/collection/components/new-environment/new-environment.css +333 -26
  97. package/dist/collection/components/new-kb/new-kb.css +333 -26
  98. package/dist/collection/components/new-object/new-object.css +333 -26
  99. package/dist/collection/components/object-selector/object-selector.css +333 -26
  100. package/dist/collection/components/references/references.css +333 -26
  101. package/dist/collection/components/share-kb/share-kb.css +333 -26
  102. package/dist/collection/components/start-page/recent-news.css +334 -27
  103. package/dist/collection/components/start-page/start-page.css +337 -26
  104. package/dist/collection/components/start-page/start-page.js +8 -4
  105. package/dist/collection/components/start-page/start-page.js.map +1 -1
  106. package/dist/collection/components/team-dev/commit/commit.css +333 -26
  107. package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +333 -26
  108. package/dist/collection/components/team-dev/update/update.css +333 -26
  109. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +333 -26
  110. package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +333 -26
  111. package/dist/collection/components/ww-images/ww-images.css +333 -26
  112. package/dist/collection/pages/assets/common.js +1 -1
  113. package/dist/components/card.js +11 -5
  114. package/dist/components/card.js.map +1 -1
  115. package/dist/components/combo-box.js +62 -24
  116. package/dist/components/combo-box.js.map +1 -1
  117. package/dist/components/gx-ide-ai-assistant.js +1 -1
  118. package/dist/components/gx-ide-ai-assistant.js.map +1 -1
  119. package/dist/components/gx-ide-bpm-app-declaration.js +1 -1
  120. package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
  121. package/dist/components/gx-ide-card.js +1 -1
  122. package/dist/components/gx-ide-card.js.map +1 -1
  123. package/dist/components/gx-ide-create-kb-from-server.js +1 -1
  124. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  125. package/dist/components/gx-ide-dashboard-home.js +32 -47
  126. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  127. package/dist/components/gx-ide-data-selector.js +1 -1
  128. package/dist/components/gx-ide-data-selector.js.map +1 -1
  129. package/dist/components/gx-ide-empty-state.d.ts +11 -0
  130. package/dist/components/gx-ide-empty-state.js +8 -0
  131. package/dist/components/gx-ide-empty-state.js.map +1 -0
  132. package/dist/components/gx-ide-empty-state2.js +126 -0
  133. package/dist/components/gx-ide-empty-state2.js.map +1 -0
  134. package/dist/components/gx-ide-import-from-design.js +4 -12
  135. package/dist/components/gx-ide-import-from-design.js.map +1 -1
  136. package/dist/components/gx-ide-kb-manager-export.js +1 -1
  137. package/dist/components/gx-ide-kb-manager-export.js.map +1 -1
  138. package/dist/components/gx-ide-kb-manager-import.js +1 -1
  139. package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
  140. package/dist/components/gx-ide-new-environment.js +1 -1
  141. package/dist/components/gx-ide-new-environment.js.map +1 -1
  142. package/dist/components/gx-ide-new-kb.js +1 -1
  143. package/dist/components/gx-ide-new-kb.js.map +1 -1
  144. package/dist/components/gx-ide-new-object.js +1 -1
  145. package/dist/components/gx-ide-new-object.js.map +1 -1
  146. package/dist/components/gx-ide-object-selector.js +1 -1
  147. package/dist/components/gx-ide-object-selector.js.map +1 -1
  148. package/dist/components/gx-ide-references.js +1 -1
  149. package/dist/components/gx-ide-references.js.map +1 -1
  150. package/dist/components/gx-ide-share-kb.js +1 -1
  151. package/dist/components/gx-ide-share-kb.js.map +1 -1
  152. package/dist/components/gx-ide-start-page.js +21 -11
  153. package/dist/components/gx-ide-start-page.js.map +1 -1
  154. package/dist/components/gx-ide-team-dev-commit.js +1 -1
  155. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  156. package/dist/components/gx-ide-team-dev-select-recent-comment.js +1 -1
  157. package/dist/components/gx-ide-team-dev-select-recent-comment.js.map +1 -1
  158. package/dist/components/gx-ide-team-dev-update-partial-selection.js +1 -1
  159. package/dist/components/gx-ide-team-dev-update-partial-selection.js.map +1 -1
  160. package/dist/components/gx-ide-team-dev-update-to-revision.js +1 -1
  161. package/dist/components/gx-ide-team-dev-update-to-revision.js.map +1 -1
  162. package/dist/components/gx-ide-team-dev-update.js +1 -1
  163. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  164. package/dist/components/gx-ide-template.js +1 -1
  165. package/dist/components/gx-ide-template.js.map +1 -1
  166. package/dist/components/gx-ide-ww-images.js +1 -1
  167. package/dist/components/gx-ide-ww-images.js.map +1 -1
  168. package/dist/components/gxg-menu-item.js +1 -1
  169. package/dist/components/gxg-menu-item.js.map +1 -1
  170. package/dist/components/gxg-pills.js +1 -1
  171. package/dist/components/gxg-pills.js.map +1 -1
  172. package/dist/components/gxg-top-state-bar2.js +46 -30
  173. package/dist/components/gxg-top-state-bar2.js.map +1 -1
  174. package/dist/components/gxg-window-v2.js +44 -0
  175. package/dist/components/gxg-window-v2.js.map +1 -0
  176. package/dist/components/icon2.js +3 -2
  177. package/dist/components/icon2.js.map +1 -1
  178. package/dist/components/list-box.js +27 -1
  179. package/dist/components/list-box.js.map +1 -1
  180. package/dist/components/list-selector.js +1 -1
  181. package/dist/components/list-selector.js.map +1 -1
  182. package/dist/components/pill.js +5 -5
  183. package/dist/components/pill.js.map +1 -1
  184. package/dist/components/recent-news.js +1 -1
  185. package/dist/components/recent-news.js.map +1 -1
  186. package/dist/components/tab-bar.js +17 -9
  187. package/dist/components/tab-bar.js.map +1 -1
  188. package/dist/components/tab-button.js +11 -4
  189. package/dist/components/tab-button.js.map +1 -1
  190. package/dist/components/tab.js +6 -3
  191. package/dist/components/tab.js.map +1 -1
  192. package/dist/components/tabs.js +73 -4
  193. package/dist/components/tabs.js.map +1 -1
  194. package/dist/esm/ch-icon_5.entry.js +3 -2
  195. package/dist/esm/ch-icon_5.entry.js.map +1 -1
  196. package/dist/esm/genexus-ide-ui.js +1 -1
  197. package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
  198. package/dist/esm/gx-ide-ai-assistant.entry.js.map +1 -1
  199. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
  200. package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
  201. package/dist/esm/gx-ide-card.entry.js +1 -1
  202. package/dist/esm/gx-ide-card.entry.js.map +1 -1
  203. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
  204. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  205. package/dist/esm/gx-ide-dashboard-home.entry.js +16 -14
  206. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  207. package/dist/esm/gx-ide-data-selector.entry.js +1 -1
  208. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
  209. package/dist/esm/gx-ide-empty-state_2.entry.js +170 -0
  210. package/dist/esm/gx-ide-empty-state_2.entry.js.map +1 -0
  211. package/dist/esm/gx-ide-import-from-design.entry.js +3 -10
  212. package/dist/esm/gx-ide-import-from-design.entry.js.map +1 -1
  213. package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
  214. package/dist/esm/gx-ide-kb-manager-export.entry.js.map +1 -1
  215. package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
  216. package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
  217. package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
  218. package/dist/esm/gx-ide-list-selector_2.entry.js.map +1 -1
  219. package/dist/esm/gx-ide-new-environment.entry.js +1 -1
  220. package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
  221. package/dist/esm/gx-ide-new-kb.entry.js +1 -1
  222. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  223. package/dist/esm/gx-ide-new-object.entry.js +1 -1
  224. package/dist/esm/gx-ide-new-object.entry.js.map +1 -1
  225. package/dist/esm/gx-ide-object-selector.entry.js +1 -1
  226. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  227. package/dist/esm/gx-ide-references.entry.js +1 -1
  228. package/dist/esm/gx-ide-references.entry.js.map +1 -1
  229. package/dist/esm/gx-ide-share-kb.entry.js +1 -1
  230. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  231. package/dist/esm/gx-ide-start-page.entry.js +9 -5
  232. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  233. package/dist/esm/gx-ide-status-buttons_2.entry.js +41 -27
  234. package/dist/esm/gx-ide-status-buttons_2.entry.js.map +1 -1
  235. package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
  236. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  237. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  238. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js.map +1 -1
  239. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  240. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js.map +1 -1
  241. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  242. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js.map +1 -1
  243. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  244. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  245. package/dist/esm/gx-ide-template.entry.js +1 -1
  246. package/dist/esm/gx-ide-template.entry.js.map +1 -1
  247. package/dist/esm/gx-ide-ww-images.entry.js +1 -1
  248. package/dist/esm/gx-ide-ww-images.entry.js.map +1 -1
  249. package/dist/esm/gxg-card_2.entry.js +10 -5
  250. package/dist/esm/gxg-card_2.entry.js.map +1 -1
  251. package/dist/esm/gxg-combo-box_2.entry.js +62 -24
  252. package/dist/esm/gxg-combo-box_2.entry.js.map +1 -1
  253. package/dist/esm/gxg-list-box_2.entry.js +27 -2
  254. package/dist/esm/gxg-list-box_2.entry.js.map +1 -1
  255. package/dist/esm/gxg-menu-item.entry.js +1 -1
  256. package/dist/esm/gxg-menu-item.entry.js.map +1 -1
  257. package/dist/esm/gxg-pill.entry.js +5 -5
  258. package/dist/esm/gxg-pill.entry.js.map +1 -1
  259. package/dist/esm/gxg-pills.entry.js +1 -1
  260. package/dist/esm/gxg-pills.entry.js.map +1 -1
  261. package/dist/esm/gxg-tab_4.entry.js +97 -17
  262. package/dist/esm/gxg-tab_4.entry.js.map +1 -1
  263. package/dist/esm/gxg-window-v2.entry.js +24 -0
  264. package/dist/esm/gxg-window-v2.entry.js.map +1 -0
  265. package/dist/esm/loader.js +1 -1
  266. package/dist/genexus-ide-ui/genexus-ide-ui.css +74 -7
  267. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  268. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  269. package/dist/genexus-ide-ui/icon-assets/mercury/tests/balanza-path.svg +3 -0
  270. package/dist/genexus-ide-ui/icon-assets/mercury/tests/balanza-stroke.svg +9 -0
  271. package/dist/genexus-ide-ui/icon-assets/mercury/tests/folder-2.svg +3 -0
  272. package/dist/genexus-ide-ui/p-05bc4d77.entry.js +598 -0
  273. package/dist/genexus-ide-ui/p-1346991a.entry.js +232 -0
  274. package/dist/genexus-ide-ui/p-1346991a.entry.js.map +1 -0
  275. package/dist/genexus-ide-ui/{p-b8fc93f4.entry.js → p-2c8afaa6.entry.js} +147 -112
  276. package/dist/genexus-ide-ui/p-2c8afaa6.entry.js.map +1 -0
  277. package/dist/genexus-ide-ui/p-2e6da0ef.entry.js +236 -0
  278. package/dist/genexus-ide-ui/p-2e6da0ef.entry.js.map +1 -0
  279. package/dist/genexus-ide-ui/{p-8bdaef96.entry.js → p-336ee17f.entry.js} +74 -74
  280. package/dist/genexus-ide-ui/p-336ee17f.entry.js.map +1 -0
  281. package/dist/genexus-ide-ui/p-382fe6fa.entry.js +331 -0
  282. package/dist/genexus-ide-ui/p-40d52b2f.entry.js +487 -0
  283. package/dist/genexus-ide-ui/p-4a5ad686.entry.js +293 -0
  284. package/dist/genexus-ide-ui/p-4a706d20.entry.js +583 -0
  285. package/dist/genexus-ide-ui/p-4bd869d3.entry.js +702 -0
  286. package/dist/genexus-ide-ui/p-4bd869d3.entry.js.map +1 -0
  287. package/dist/genexus-ide-ui/{p-5ca84a03.entry.js → p-4e155cd5.entry.js} +27 -4
  288. package/dist/genexus-ide-ui/p-4e155cd5.entry.js.map +1 -0
  289. package/dist/genexus-ide-ui/p-4fc6d6a7.entry.js +24 -0
  290. package/dist/genexus-ide-ui/p-4fc6d6a7.entry.js.map +1 -0
  291. package/dist/genexus-ide-ui/p-54e4b362.entry.js +270 -0
  292. package/dist/genexus-ide-ui/p-54e4b362.entry.js.map +1 -0
  293. package/dist/genexus-ide-ui/p-5507f11d.entry.js +571 -0
  294. package/dist/genexus-ide-ui/p-5ac58299.entry.js +238 -0
  295. package/dist/genexus-ide-ui/p-5bce420c.entry.js +187 -0
  296. package/dist/genexus-ide-ui/p-5ed3968f.entry.js +183 -0
  297. package/dist/genexus-ide-ui/p-5ed3968f.entry.js.map +1 -0
  298. package/dist/genexus-ide-ui/{p-73aa4e69.entry.js → p-71f8aba2.entry.js} +13 -13
  299. package/dist/genexus-ide-ui/{p-73aa4e69.entry.js.map → p-71f8aba2.entry.js.map} +1 -1
  300. package/dist/genexus-ide-ui/p-725fe015.entry.js +273 -0
  301. package/dist/genexus-ide-ui/p-72e5a0db.entry.js +111 -0
  302. package/dist/genexus-ide-ui/p-784d3d82.entry.js +119 -0
  303. package/dist/genexus-ide-ui/{p-545291ad.entry.js → p-7dc3a137.entry.js} +4 -3
  304. package/dist/genexus-ide-ui/{p-545291ad.entry.js.map → p-7dc3a137.entry.js.map} +1 -1
  305. package/dist/genexus-ide-ui/{p-f186adfd.entry.js → p-85639fa5.entry.js} +100 -22
  306. package/dist/genexus-ide-ui/p-85639fa5.entry.js.map +1 -0
  307. package/dist/genexus-ide-ui/p-921fc4d4.entry.js +344 -0
  308. package/dist/genexus-ide-ui/p-9a333c79.entry.js +158 -0
  309. package/dist/genexus-ide-ui/p-a0180ad9.entry.js +614 -0
  310. package/dist/genexus-ide-ui/p-b0e539fe.entry.js +41 -0
  311. package/dist/genexus-ide-ui/p-b0e539fe.entry.js.map +1 -0
  312. package/dist/genexus-ide-ui/p-b25c9d3c.entry.js +472 -0
  313. package/dist/genexus-ide-ui/p-bddc1a7b.entry.js +305 -0
  314. package/dist/genexus-ide-ui/p-bf16cfca.entry.js +62 -0
  315. package/dist/genexus-ide-ui/{p-a439149b.entry.js → p-bff2603a.entry.js} +8 -3
  316. package/dist/genexus-ide-ui/p-bff2603a.entry.js.map +1 -0
  317. package/dist/genexus-ide-ui/p-d648668d.entry.js +436 -0
  318. package/dist/genexus-ide-ui/p-e0704caf.entry.js +44 -0
  319. package/dist/genexus-ide-ui/p-e0d9ab03.entry.js +257 -0
  320. package/dist/genexus-ide-ui/{p-e585f550.entry.js → p-e3925761.entry.js} +4 -5
  321. package/dist/genexus-ide-ui/{p-e585f550.entry.js.map → p-e3925761.entry.js.map} +1 -1
  322. package/dist/node_modules/@genexus/gemini/dist/collection/components/card/card.css +13 -1
  323. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pill.css +16 -51
  324. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pills.css +1 -8
  325. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab/tab.css +7 -0
  326. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-bar/tab-bar.css +18 -0
  327. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-button/tab-button.css +17 -0
  328. package/dist/node_modules/@genexus/gemini/dist/collection/components/tabs/tabs.css +64 -13
  329. package/dist/node_modules/@genexus/gemini/dist/collection/components/top-state-bar/gxg-top-state-bar.css +120 -43
  330. package/dist/node_modules/@genexus/gemini/dist/collection/components/window-v2/window.css +3 -0
  331. package/dist/types/components/_helpers/empty-state/gx-ide-empty-state.d.ts +34 -0
  332. package/dist/types/components/dashboard-home/dashboard-home.d.ts +8 -5
  333. package/dist/types/components/import-from-design/import-from-design.d.ts +1 -3
  334. package/dist/types/components.d.ts +77 -0
  335. package/package.json +3 -3
  336. package/dist/cjs/gx-ide-recent-news.cjs.entry.js +0 -113
  337. package/dist/cjs/gx-ide-recent-news.cjs.entry.js.map +0 -1
  338. package/dist/cjs/reposition-scroll-86d8fac5.js +0 -33
  339. package/dist/cjs/reposition-scroll-86d8fac5.js.map +0 -1
  340. package/dist/components/reposition-scroll.js +0 -31
  341. package/dist/components/reposition-scroll.js.map +0 -1
  342. package/dist/esm/gx-ide-recent-news.entry.js +0 -109
  343. package/dist/esm/gx-ide-recent-news.entry.js.map +0 -1
  344. package/dist/esm/reposition-scroll-cfff7017.js +0 -31
  345. package/dist/esm/reposition-scroll-cfff7017.js.map +0 -1
  346. package/dist/genexus-ide-ui/p-007a3368.entry.js +0 -158
  347. package/dist/genexus-ide-ui/p-050bc199.entry.js +0 -146
  348. package/dist/genexus-ide-ui/p-050bc199.entry.js.map +0 -1
  349. package/dist/genexus-ide-ui/p-148ec5e4.entry.js +0 -293
  350. package/dist/genexus-ide-ui/p-30365c44.entry.js +0 -241
  351. package/dist/genexus-ide-ui/p-30365c44.entry.js.map +0 -1
  352. package/dist/genexus-ide-ui/p-317e4ff6.entry.js +0 -62
  353. package/dist/genexus-ide-ui/p-3e87257c.entry.js +0 -41
  354. package/dist/genexus-ide-ui/p-3e87257c.entry.js.map +0 -1
  355. package/dist/genexus-ide-ui/p-420a2b62.entry.js +0 -598
  356. package/dist/genexus-ide-ui/p-587f3ba5.entry.js +0 -344
  357. package/dist/genexus-ide-ui/p-58cad79d.entry.js +0 -712
  358. package/dist/genexus-ide-ui/p-58cad79d.entry.js.map +0 -1
  359. package/dist/genexus-ide-ui/p-5ba47216.entry.js +0 -305
  360. package/dist/genexus-ide-ui/p-5ca84a03.entry.js.map +0 -1
  361. package/dist/genexus-ide-ui/p-6397feb4.entry.js +0 -472
  362. package/dist/genexus-ide-ui/p-66b88b9b.entry.js +0 -614
  363. package/dist/genexus-ide-ui/p-75f0ba9d.entry.js +0 -273
  364. package/dist/genexus-ide-ui/p-7d719234.entry.js +0 -187
  365. package/dist/genexus-ide-ui/p-7fe9374d.entry.js +0 -238
  366. package/dist/genexus-ide-ui/p-8bdaef96.entry.js.map +0 -1
  367. package/dist/genexus-ide-ui/p-906845cd.entry.js +0 -571
  368. package/dist/genexus-ide-ui/p-9c6c5a61.entry.js +0 -178
  369. package/dist/genexus-ide-ui/p-9c6c5a61.entry.js.map +0 -1
  370. package/dist/genexus-ide-ui/p-9e7ea8be.entry.js +0 -44
  371. package/dist/genexus-ide-ui/p-a2805229.entry.js +0 -331
  372. package/dist/genexus-ide-ui/p-a3368c79.entry.js +0 -111
  373. package/dist/genexus-ide-ui/p-a439149b.entry.js.map +0 -1
  374. package/dist/genexus-ide-ui/p-b8fc93f4.entry.js.map +0 -1
  375. package/dist/genexus-ide-ui/p-ca86fe87.entry.js +0 -583
  376. package/dist/genexus-ide-ui/p-cd0c26a2.entry.js +0 -487
  377. package/dist/genexus-ide-ui/p-d4d72da2.entry.js +0 -436
  378. package/dist/genexus-ide-ui/p-e4b63012.entry.js +0 -119
  379. package/dist/genexus-ide-ui/p-efa273d7.js +0 -27
  380. package/dist/genexus-ide-ui/p-efa273d7.js.map +0 -1
  381. package/dist/genexus-ide-ui/p-f186adfd.entry.js.map +0 -1
  382. package/dist/genexus-ide-ui/p-f5034221.entry.js +0 -258
  383. package/dist/genexus-ide-ui/p-f5034221.entry.js.map +0 -1
  384. package/dist/genexus-ide-ui/p-ff794656.entry.js +0 -257
  385. /package/dist/genexus-ide-ui/{p-420a2b62.entry.js.map → p-05bc4d77.entry.js.map} +0 -0
  386. /package/dist/genexus-ide-ui/{p-a2805229.entry.js.map → p-382fe6fa.entry.js.map} +0 -0
  387. /package/dist/genexus-ide-ui/{p-cd0c26a2.entry.js.map → p-40d52b2f.entry.js.map} +0 -0
  388. /package/dist/genexus-ide-ui/{p-148ec5e4.entry.js.map → p-4a5ad686.entry.js.map} +0 -0
  389. /package/dist/genexus-ide-ui/{p-ca86fe87.entry.js.map → p-4a706d20.entry.js.map} +0 -0
  390. /package/dist/genexus-ide-ui/{p-906845cd.entry.js.map → p-5507f11d.entry.js.map} +0 -0
  391. /package/dist/genexus-ide-ui/{p-7fe9374d.entry.js.map → p-5ac58299.entry.js.map} +0 -0
  392. /package/dist/genexus-ide-ui/{p-7d719234.entry.js.map → p-5bce420c.entry.js.map} +0 -0
  393. /package/dist/genexus-ide-ui/{p-75f0ba9d.entry.js.map → p-725fe015.entry.js.map} +0 -0
  394. /package/dist/genexus-ide-ui/{p-a3368c79.entry.js.map → p-72e5a0db.entry.js.map} +0 -0
  395. /package/dist/genexus-ide-ui/{p-e4b63012.entry.js.map → p-784d3d82.entry.js.map} +0 -0
  396. /package/dist/genexus-ide-ui/{p-587f3ba5.entry.js.map → p-921fc4d4.entry.js.map} +0 -0
  397. /package/dist/genexus-ide-ui/{p-007a3368.entry.js.map → p-9a333c79.entry.js.map} +0 -0
  398. /package/dist/genexus-ide-ui/{p-66b88b9b.entry.js.map → p-a0180ad9.entry.js.map} +0 -0
  399. /package/dist/genexus-ide-ui/{p-6397feb4.entry.js.map → p-b25c9d3c.entry.js.map} +0 -0
  400. /package/dist/genexus-ide-ui/{p-5ba47216.entry.js.map → p-bddc1a7b.entry.js.map} +0 -0
  401. /package/dist/genexus-ide-ui/{p-317e4ff6.entry.js.map → p-bf16cfca.entry.js.map} +0 -0
  402. /package/dist/genexus-ide-ui/{p-d4d72da2.entry.js.map → p-d648668d.entry.js.map} +0 -0
  403. /package/dist/genexus-ide-ui/{p-9e7ea8be.entry.js.map → p-e0704caf.entry.js.map} +0 -0
  404. /package/dist/genexus-ide-ui/{p-ff794656.entry.js.map → p-e0d9ab03.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"gx-ide-ww-images.js","mappings":"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","names":[],"sources":["src/components/ww-images/ww-images.scss?tag=gx-ide-ww-images&encapsulation=shadow","src/components/ww-images/ww-images.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n}\n\n/*--- Filter ---*/\n.filter--padding {\n padding: var(--gx-ide-container__padding);\n}\n.filter--gap {\n gap: var(--gx-ide-grid-row-gap);\n}\n.filter {\n display: flex;\n flex-direction: column;\n &__first-row {\n display: flex;\n gap: var(--gx-ide-grid-column-gap);\n .name,\n .module-folder {\n flex: 1;\n }\n .filter-btn {\n flex: none;\n }\n .second-column {\n display: flex;\n flex-direction: row;\n align-items: end;\n gap: var(--gx-ide-grid-column-gap);\n }\n > * {\n flex: 1;\n }\n }\n .checkboxes-label-wrapper {\n display: flex;\n flex-direction: column;\n gap: 0;\n }\n .checkboxes-wrapper {\n display: flex;\n gap: var(--gx-ide-grid-column-gap);\n border: 1px solid var(--gray-02);\n border-radius: var(--border-radius-sm);\n height: var(--gxg-form-text-height);\n box-sizing: border-box;\n align-items: center;\n padding-inline-start: var(--mer-spacing--xxs);\n }\n .user {\n max-width: 100% !important;\n }\n}\n\n/*Filter*/\n.filters-outer-wrapper {\n display: grid;\n grid-template-rows: 1fr;\n transition: grid-template-rows 200ms;\n &--hidden {\n grid-template-rows: 0fr;\n }\n}\n.filters-inner-wrapper {\n padding-top: var(--gx-ide-container__padding);\n overflow: hidden;\n display: grid;\n grid-template-columns: repeat(12, 1fr);\n grid-template-rows: repeat(3, 1fr);\n\n .search-contents {\n grid-area: 1 / 1 / 2 / 5;\n }\n .category {\n grid-area: 1 / 5 / 2 / 9;\n }\n .options {\n grid-area: 1 / 9 / 2 / 13;\n }\n .date-time {\n grid-area: 2 / 1 / 3 / 5;\n }\n .after-date-time {\n grid-area: 2 / 5 / 3 / 9;\n }\n .user {\n grid-area: 2 / 9 / 3 / 13;\n }\n .style {\n grid-area: 3 / 1 / 4 / 4;\n }\n .language {\n grid-area: 3 / 4 / 4 / 7;\n }\n .density {\n grid-area: 3 / 7 / 4 / 10;\n }\n .layer {\n grid-area: 3 / 10 / 4 / 13;\n }\n}\n\n.master-wrapper {\n height: 100%;\n display: grid;\n grid-template-rows: auto 1fr;\n}\n\n/*--- Grid/Images Container ---*/\n.grid-images-container {\n border-top: 1px solid var(--gx-ide-container-border-color);\n display: grid;\n grid-template-columns: 1fr 220px;\n grid-column-gap: 0;\n grid-row-gap: 0;\n overflow: auto;\n}\n.images-information {\n &__header {\n display: flex;\n align-items: center;\n gap: var(--gx-ide-grid-column-gap);\n &-title {\n flex: none;\n }\n }\n}\n\n/* Objects Table */\n.images-grid {\n grid-template-columns: repeat(2, 1fr);\n grid-column-gap: 0;\n > :nth-child(1) {\n grid-area: 1 / 1 / 1 / 3;\n }\n}\n.images-container {\n .image-item {\n display: inline-block;\n width: 50%;\n height: 110px; /*should be half the images container width (actually is 220px)*/\n &__container {\n padding: var(--gx-ide-container__padding);\n img {\n width: 100%;\n height: 100%;\n object-fit: scale-down;\n }\n }\n &__name {\n @include elipsis;\n text-align: center;\n width: 100%;\n display: block;\n font-size: 10px;\n padding: 4px 8px;\n box-sizing: border-box;\n background-color: var(--gray-00);\n }\n &:nth-child(odd) {\n .image-item__name {\n border-inline-end: 1px solid var(--gray-02);\n }\n }\n }\n}\n.objects-count {\n grid-template-columns: repeat(2, 1fr);\n *:nth-child(2) {\n justify-content: flex-end;\n align-items: flex-start;\n }\n}\n\n@include hiChar;\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Method,\n Listen,\n Watch\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { ChGridRowContextMenuEvent } from \"@genexus/chameleon-controls-library/dist/types/components/grid/ch-grid-types\";\nimport { DatePickerDate } from \"@genexus/gemini/dist/types/components/date-picker/date-picker\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { GxOption } from \"../../common/types\";\nimport { config } from \"../../common/config\";\nimport { renderFormItems } from \"../../common/common\";\nimport { EntityData, ContextMenuInfo } from \"../../common/types\";\nimport { FILTER_AFTER } from \"../../common/constants\";\nimport {\n formatDate,\n hiChar,\n closeOnOutsideClickHandler\n} from \"../../common/helpers\";\nimport { gridCommon } from \"../../common/grid\";\n\n@Component({\n tag: \"gx-ide-ww-images\",\n styleUrl: \"ww-images.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/ww-images\"]\n})\nexport class GxIdeWWImages {\n /*\nINDEX:\n1.OWN PROPERTIES\n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE EVENTS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private filterInitialData: FilerInitialData;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeWwImagesElement;\n\n private filterEl: HTMLDivElement;\n /* References needed to collect data */\n private filterNameEl!: HTMLGxgFormTextElement;\n private filterSearchContentsEl!: HTMLGxgFormTextElement;\n private filterCategoryEl!: HTMLGxgComboBoxElement;\n private filterModuleEl!: HTMLGxIdeEntitySelectorElement;\n private filterModifiedEl!: HTMLGxgFormCheckboxElement;\n private filterAllDescendantsEl!: HTMLGxgFormCheckboxElement;\n private filterAfterTypeEl!: HTMLGxgComboBoxElement;\n private filterUserEl!: HTMLGxgFormTextElement;\n private filterModifiedDateEl!: HTMLGxgDatePickerElement;\n private filterStyleEl!: HTMLGxgComboBoxElement;\n private filterLanguageEl!: HTMLGxgComboBoxElement;\n private filterDensityEl!: HTMLGxgComboBoxElement;\n private filterLayerEl!: HTMLGxgComboBoxElement;\n private chGridEl!: HTMLChGridElement;\n\n // 3.STATE() VARIABLES //\n\n @State() filtersHidden = true;\n @Watch(\"filtersHidden\")\n filtersHiddenHandler(hidden: boolean): void {\n if (hidden) {\n this.removeDetectClickOutsideFilter();\n } else {\n this.attachDetectClickOutsideFilter();\n }\n }\n\n /**\n * The after types render in the after selector\n */\n @State() filterAfterType = \"\";\n\n /**\n * For show or hide the filters relative to modifiers\n */\n @State() filterModified = false;\n\n /**\n * The images rendered in the table\n */\n @State() images: ImageData[] = [];\n\n /**\n * The images rendered in the table, after the filter\n */\n @State() filteredImages: ImageData[] = [];\n\n /**\n * The items of the image that is selected\n */\n @State() imagesSelectedItems: ImageItemData[] = [];\n\n /**\n * The selected images in the table of images\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * The images filter input text value\n */\n @State() filterImagesInputValue = \"\";\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Displays a secondary filter, used to filter over the filtered images\n */\n @Prop() readonly secondaryFilter = false;\n\n /**\n * The categories render in the filter category selector\n */\n @Prop() readonly categories!: GxOption[];\n\n /**\n * The densities render in the filter density selector\n */\n @Prop() readonly densities!: GxOption[];\n\n /**\n * The default value for the 'categories' 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 * The modules/folders render in the module/folder selector\n */\n @Prop() readonly filterModules!: GxOption[];\n\n /**\n * The languages render in the filter language selector\n */\n @Prop() readonly languages!: GxOption[];\n\n /**\n * The layers render in the filter layer selector\n */\n @Prop() readonly layers!: GxOption[];\n\n /**\n * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly contextMenuCallback!: ContextMenuCallback;\n\n /**\n * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly deleteSelectionCallback!: DeleteSelectionCallback;\n\n /**\n * This is a function provided by the developer that return a list of images to populate the table of images.\n */\n @Prop() readonly loadCallback!: LoadCallback;\n\n /**\n * This is a function provided by the developer that return a list of items of the image selected.\n */\n @Prop() readonly loadImageItemsCallback!: LoadImageItemsCallback;\n\n /**\n * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly newObjectCallback!: NewObjectCallback;\n\n /**\n * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly openSelectionCallback!: OpenSelectionCallback;\n\n /**\n * Callback invoked when the action is executed on the Module/Folder filter (button '...'). 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 * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly selectionObjectChangedCallback!: SelectionObjectCallback;\n\n /**\n * Applies a shadow all around\n */\n @Prop() readonly shadow = false;\n\n /**\n * The styles render in the filter style selector\n */\n @Prop() readonly styles!: GxOption[];\n\n /**\n * The types render in the filter type selector\n */\n @Prop() readonly types!: GxOption[];\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n // 6.COMPONENT LIFECYCLE EVENTS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.componentDidLoadEvent.emit(true);\n }\n\n componentDidLoad() {\n this.listenChanges();\n this.getImages();\n this.saveInitialFilterData();\n this.filterNameEl.focus();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n @Listen(\"keydown\", { passive: true })\n keyDownHandler(eventInfo: KeyboardEvent) {\n if (document.activeElement === this.el) {\n switch (eventInfo.key) {\n case \"Enter\":\n this.openSelectionCallBackHandler();\n break;\n case \"Delete\":\n this.deleteSelectionCallbackHandler();\n break;\n }\n }\n }\n\n // 8.PUBLIC METHODS API //\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 * This method reload the view, refreshing the filters and the table of images.\n */\n @Method()\n async reload(): Promise<void> {\n this.deleteSelectionCallbackHandler();\n this.getImages();\n }\n\n // 9.LOCAL METHODS //\n\n private attachDetectClickOutsideFilter = () => {\n document.addEventListener(\"click\", this.detectClickOutsideFilter);\n };\n private removeDetectClickOutsideFilter = () => {\n document.removeEventListener(\"click\", this.detectClickOutsideFilter);\n };\n private detectClickOutsideFilter = (e: PointerEvent): void => {\n const clickedOutside = closeOnOutsideClickHandler(e, this.filterEl);\n if (clickedOutside) {\n this.filtersHidden = true;\n } else {\n this.filtersHidden = false;\n }\n };\n\n /**\n * @description This is needed for resetting the filter. When the user resets the filter, all the filter controls values have to be restored to the value they had on componentDidLoad.\n */\n private saveInitialFilterData = () => {\n this.filterInitialData = {\n name: this.filterNameEl.value,\n module: this.filterModuleEl.value,\n searchContents: this.filterSearchContentsEl.value,\n category: this.filterCategoryEl.value,\n allDescendants: this.filterAllDescendantsEl.checked,\n modified: this.filterModifiedEl.checked,\n dateTime: this.filterModifiedDateEl.value,\n after: this.filterAfterTypeEl.value,\n user: this.filterUserEl.value,\n style: this.filterStyleEl.value,\n language: this.filterLanguageEl.value,\n density: this.filterDensityEl.value,\n layer: this.filterLayerEl.value\n };\n };\n\n // 9.LOCAL METHODS -> Renders //\n\n private renderFilter = (): Element => {\n return (\n <div\n class=\"filter filter--padding\"\n ref={(el: HTMLDivElement) => (this.filterEl = el as HTMLDivElement)}\n >\n <div class=\"filter__first-row\">\n {/* name */}\n <gxg-form-text\n label-position=\"above\"\n label={this._componentLocale.filter.name}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.filterNameEl = el as HTMLGxgFormTextElement)\n }\n part=\"filter-name\"\n class=\"name\"\n ></gxg-form-text>\n\n <div class=\"second-column\">\n {/* module/folder */}\n <gx-ide-entity-selector\n label={this._componentLocale.filter.moduleFolder}\n label-position=\"above\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.filterModuleEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"module-folder\"\n part=\"filter-module-folder\"\n ></gx-ide-entity-selector>\n\n {/* reset filter button */}\n <gxg-button\n onClick={this.resetFilterHandler}\n part=\"gxg-button-reset-filter\"\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/reset\"\n class=\"reset-filter-btn\"\n ></gxg-button>\n\n {/* filter button */}\n <gxg-button\n onClick={this.toggleFiltersHandler}\n part=\"gxg-button gxg-button--more-less\"\n type=\"secondary-icon-only\"\n icon={\n true ? \"window-tools/filter-conditions\" : \"window-tools/filter\"\n }\n class=\"filter-btn\"\n ></gxg-button>\n </div>\n </div>\n\n <div\n class={{\n \"filters-outer-wrapper\": true,\n \"filters-outer-wrapper--hidden\": this.filtersHidden\n }}\n >\n <div\n class={{\n \"filter\": true,\n \"filter--gap\": true,\n \"filters-inner-wrapper\": true\n }}\n >\n {/* search contents */}\n <gxg-form-text\n label-position=\"above\"\n label={this._componentLocale.filter.search}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.filterSearchContentsEl = el as HTMLGxgFormTextElement)\n }\n class={{ \"search-contents\": true }}\n part=\"filter-search\"\n ></gxg-form-text>\n\n {/* category */}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.category}\n value={this.defaultCategory}\n disabled={!this.categories}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterCategoryEl = el as HTMLGxgComboBoxElement)\n }\n class=\"category\"\n part=\"filter-category\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.categories ?? [])}\n </gxg-combo-box>\n\n <div class=\"options\">\n <gxg-label labelPosition=\"above\" center={false}>\n Options:\n </gxg-label>\n {/* all descendants*/}\n <div class=\"checkboxes-wrapper\">\n <gxg-form-checkbox\n label={this._componentLocale.filter.allDescendants}\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.filterAllDescendantsEl =\n el as HTMLGxgFormCheckboxElement)\n }\n class=\"all-descendants\"\n part=\"filter-all-descendants\"\n ></gxg-form-checkbox>\n\n {/* modified */}\n <gxg-form-checkbox\n label={this._componentLocale.filter.modified}\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.filterModifiedEl = el as HTMLGxgFormCheckboxElement)\n }\n class=\"modified\"\n part=\"filter-modified\"\n ></gxg-form-checkbox>\n </div>\n </div>\n\n {/* date/time*/}\n <div\n class={{\n \"hide\":\n !this.filterModified ||\n this.filterAfterType !== FILTER_AFTER.DATE_TIME,\n \"date-time\": true\n }}\n part=\"filter-datetime\"\n >\n <div class=\"date-time-wrapper\">\n <gxg-label label-position=\"above\">\n {this._componentLocale.filter.dateTime}\n </gxg-label>\n <gxg-date-picker\n disabled={!this.filterModified}\n ref={(el: HTMLGxgDatePickerElement) =>\n (this.filterModifiedDateEl = el as HTMLGxgDatePickerElement)\n }\n ></gxg-date-picker>\n </div>\n </div>\n\n {/* after date/time */}\n <gxg-combo-box\n class=\"after-date-time\"\n disabled={!this.filterModified}\n label={this._componentLocale.filter.afterLabel}\n disable-filter\n value={this.filterAfterType}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterAfterTypeEl = el as HTMLGxgComboBoxElement)\n }\n part=\"filter-after-type\"\n >\n {renderFormItems(\"gxg-combo-box-item\", [\n {\n id: FILTER_AFTER.NONE,\n label: this._componentLocale.filter.afterNone,\n value: FILTER_AFTER.NONE\n },\n {\n id: FILTER_AFTER.DATE_TIME,\n label: this._componentLocale.filter[FILTER_AFTER.DATE_TIME],\n value: FILTER_AFTER.DATE_TIME\n },\n {\n id: FILTER_AFTER.IMPORT,\n label: this._componentLocale.filter[FILTER_AFTER.IMPORT],\n value: FILTER_AFTER.IMPORT\n },\n {\n id: FILTER_AFTER.LAST_BUILD,\n label: this._componentLocale.filter[FILTER_AFTER.LAST_BUILD],\n value: FILTER_AFTER.LAST_BUILD\n }\n ])}\n </gxg-combo-box>\n\n {/* user */}\n <gxg-form-text\n disabled={!this.filterModified}\n labelPosition=\"above\"\n label={this._componentLocale.filter.user}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.filterUserEl = el as HTMLGxgFormTextElement)\n }\n value=\"hey\"\n centerLabel={false}\n class=\"user\"\n part=\"filter-user\"\n ></gxg-form-text>\n\n {/* style*/}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.style}\n disabled={!this.styles}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterStyleEl = el as HTMLGxgComboBoxElement)\n }\n class=\"style\"\n part=\"filter-style\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.styles ?? [])}\n </gxg-combo-box>\n\n {/* language*/}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.language}\n disabled={!this.languages}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterLanguageEl = el as HTMLGxgComboBoxElement)\n }\n class=\"language\"\n part=\"filter-language\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.languages ?? [])}\n </gxg-combo-box>\n\n {/* density*/}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.density}\n disabled={!this.densities}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterDensityEl = el as HTMLGxgComboBoxElement)\n }\n class=\"density\"\n part=\"filter-density\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.densities ?? [])}\n </gxg-combo-box>\n\n {/* layer*/}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.layer}\n disabled={!this.layers}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterLayerEl = el as HTMLGxgComboBoxElement)\n }\n class=\"layer\"\n part=\"filter-layer\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.layers ?? [])}\n </gxg-combo-box>\n </div>\n </div>\n </div>\n );\n };\n\n private renderImagesData = (): Element => {\n return (\n /* images information*/\n <gx-ide-container\n contentBorderEnd\n noContentPadding\n titleType=\"secondary\"\n containerTitle={\n !this.secondaryFilter ? this._componentLocale.imagesDataTitle : null\n }\n class={{ \"images-information\": true, \"overflow-auto\": true }}\n part=\"grid-container\"\n >\n {this.secondaryFilter ? (\n <header class=\"images-information__header\" slot=\"header\">\n <gx-ide-title\n type=\"secondary\"\n class=\"images-information__header-title\"\n >\n {this._componentLocale.imagesDataTitle}\n </gx-ide-title>\n <gxg-form-text\n icon=\"gemini-tools/search\"\n icon-position=\"start\"\n placeholder=\"Search by any field\"\n onInput={this.filterInputHandler as any}\n ></gxg-form-text>\n </header>\n ) : null}\n\n <gxg-grid part=\"images-table\" ellipsis-cell-wrapper noBorder>\n <ch-grid\n ref={(el: HTMLChGridElement) => (this.chGridEl = el)}\n part=\"ch-grid-images\"\n rowSelectionMode=\"single\"\n >\n <ch-grid-columnset>\n <ch-grid-column\n columnName=\"\"\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.auto}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.name}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.common}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.module}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.common}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.description}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.common}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.modifiedDate}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.auto}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.lastUser}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.auto}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.importDate}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.auto}\n ></ch-grid-column>\n </ch-grid-columnset>\n {this.filteredImages.map((obj: ImageData) => (\n <ch-grid-row rowid={obj.id}>\n <ch-grid-cell>\n <span class=\"cell-wrapper\"></span>\n <gxg-icon\n type={obj.icon}\n color=\"auto\"\n size=\"small\"\n ></gxg-icon>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(obj.name, this.filterImagesInputValue)}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(obj.module, this.filterImagesInputValue)}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(obj.description, this.filterImagesInputValue)}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(\n `${formatDate(obj.modifiedDate)}`,\n this.filterImagesInputValue\n )}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(obj.lastUser, this.filterImagesInputValue)}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(\n `${formatDate(obj.importDate)}`,\n this.filterImagesInputValue\n )}\n </span>\n </ch-grid-cell>\n </ch-grid-row>\n ))}\n </ch-grid>\n </gxg-grid>\n </gx-ide-container>\n );\n };\n\n private renderImages = (): Element => {\n return (\n /* tiles */\n <gx-ide-container\n containerTitle={this._componentLocale.imagesTitle}\n noContentPadding\n titleType=\"secondary\"\n class=\"overflow-auto\"\n titleHeightAsInput={\n this.secondaryFilter ? this._componentLocale.imagesDataTitle : null\n }\n part=\"image-data-container\"\n >\n <div class=\"images-container\">\n {this.imagesSelectedItems.map(item => (\n <div class=\"image-item\">\n <div class=\"image-item__container\">\n <div class=\"img\">\n <img src={item.url} alt={item.id} />\n </div>\n </div>\n <span class=\"image-item__name\">{item.name}</span>\n </div>\n ))}\n </div>\n </gx-ide-container>\n );\n };\n\n // 9.LOCAL METHODS -> Other //\n\n private getImages = (): void => {\n let filters: ImageFiltersData = {\n name: this.filterNameEl.value,\n parent: this.filterModuleEl.value ? this.filterModuleEl.value.id : null\n };\n\n const modified = this.filterModifiedEl.checked;\n const modifiedAfter = this.filterAfterTypeEl.value;\n filters = {\n ...filters,\n searchContents: this.filterSearchContentsEl.value,\n category: this.filterCategoryEl.value,\n allDescendants: this.filterAllDescendantsEl.checked,\n modifiedAfter: modified ? modifiedAfter : null,\n modifiedBy: modified ? this.filterUserEl.value : null,\n modifiedDate:\n modified && modifiedAfter === FILTER_AFTER.DATE_TIME\n ? (this.filterModifiedDateEl.value as Date)\n : null,\n style: this.filterStyleEl.value,\n language: this.filterLanguageEl.value,\n density: this.filterDensityEl.value,\n layer: this.filterLayerEl.value\n };\n\n this.loadCallback(filters).then((items: ImageData[]) => {\n this.images = items;\n this.selectedObjectsIds = [];\n this.deselectAll();\n this.filterImagesInformationHandler();\n });\n };\n\n private newObjectCallbackHandler = (): void => {\n this.newObjectCallback();\n };\n\n private openSelectionCallBackHandler = (): void => {\n this.openSelectionCallback(this.selectedObjectsIds);\n };\n\n private deleteSelectionCallbackHandler = (): void => {\n this.deleteSelectionCallback(this.selectedObjectsIds);\n };\n\n private resetFilterHandler = () => {\n if (this.filterInitialData) {\n this.filterNameEl.value = this.filterInitialData.name;\n this.filterModuleEl.value = this.filterInitialData.module;\n this.filterSearchContentsEl.value = this.filterInitialData.searchContents;\n this.filterCategoryEl.value = this.filterInitialData.category;\n this.filterAllDescendantsEl.checked =\n this.filterInitialData.allDescendants;\n this.filterModifiedEl.checked = this.filterInitialData.modified;\n this.filterModifiedDateEl.value = this.filterInitialData.dateTime;\n this.filterAfterTypeEl.value = this.filterInitialData.after;\n this.filterUserEl.value = this.filterInitialData.user;\n this.filterStyleEl.value = this.filterInitialData.style;\n this.filterLanguageEl.value = this.filterInitialData.language;\n this.filterDensityEl.value = this.filterInitialData.density;\n this.filterLayerEl.value = this.filterInitialData.layer;\n }\n };\n\n private toggleFiltersHandler = () => {\n this.filtersHidden = !this.filtersHidden;\n };\n\n private selectAll = (): void => {\n (this.chGridEl as any).selectAllRows();\n };\n\n private deselectAll = (): void => {\n (this.chGridEl as any).selectAllRows(false);\n };\n\n private listenChanges = (): void => {\n /* name */\n this.filterNameEl.addEventListener(\"change\", () => {\n this.getImages();\n });\n /* module/folder */\n this.filterModuleEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* search contents*/\n this.filterSearchContentsEl.addEventListener(\"change\", () => {\n this.getImages();\n });\n /* category */\n this.filterCategoryEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* (options) -> all descendants */\n this.filterAllDescendantsEl.addEventListener(\"change\", () => {\n this.getImages();\n });\n /* (options) -> modified */\n this.filterModifiedEl.addEventListener(\"change\", (e: any) => {\n this.filterModified = e.detail.value;\n this.getImages();\n });\n /* date/time */\n this.filterModifiedDateEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* after */\n this.filterAfterTypeEl.addEventListener(\"valueChanged\", () => {\n this.filterAfterType = this.filterAfterTypeEl.value;\n this.getImages();\n });\n /* user */\n this.filterUserEl.addEventListener(\"change\", () => {\n this.getImages();\n });\n /* style */\n this.filterStyleEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* language */\n this.filterLanguageEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* density */\n this.filterDensityEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* layer */\n this.filterLayerEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n\n // for grid selection\n this.chGridEl.addEventListener(\"selectionChanged\", (ev: any): void => {\n this.loadImageItemsCallback(ev.detail.rowsId[0]).then(\n (items: ImageItemData[]) => {\n this.imagesSelectedItems = items;\n }\n );\n });\n this.chGridEl.addEventListener(\"rowDoubleClicked\", (): void => {\n this.openSelectionCallBackHandler();\n });\n this.chGridEl.addEventListener(\"selectionChanged\", (ev: any): void => {\n this.selectedObjectsIds = ev.detail.rowsId;\n this.selectionObjectChangedCallback(this.selectedObjectsIds);\n });\n this.chGridEl.addEventListener(\n \"rowContextMenu\",\n (ev: CustomEvent<ChGridRowContextMenuEvent>): void => {\n ev.preventDefault();\n ev.stopPropagation();\n this.contextMenuCallback({\n selection: ev.detail.selectedRowsId,\n clientX: ev.detail.clientX,\n clientY: ev.detail.clientY\n });\n }\n );\n };\n\n private filterInputHandler = (e: CustomEvent<EventEmitter>) => {\n this.filterImagesInputValue = e.detail as unknown as string;\n this.filterImagesInformationHandler();\n };\n\n private filterImagesInformationHandler = () => {\n const filterValue = this.filterImagesInputValue.toLocaleLowerCase();\n this.filteredImages = this.images.filter(image => {\n const nameMatch = image.name.toLocaleLowerCase().includes(filterValue);\n const moduleMatch = image.module\n .toLocaleLowerCase()\n .includes(filterValue);\n const descriptionMatch = image.description\n .toLocaleLowerCase()\n .includes(filterValue);\n const modifiedDateMatch = image.modifiedDate\n .toString()\n .includes(filterValue);\n const lastUser = image.lastUser.toLocaleLowerCase().includes(filterValue);\n const importDateMatch =\n image.importDate && image.importDate.toString().includes(filterValue);\n\n return (\n nameMatch ||\n moduleMatch ||\n descriptionMatch ||\n modifiedDateMatch ||\n lastUser ||\n importDateMatch\n );\n });\n };\n\n // 10.RENDER() FUNCTION //\n\n render(): void {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noContentPadding\n noContentGap\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n >\n <div class=\"master-wrapper\">\n {this.renderFilter()}\n <div class=\"grid-images-container\">\n {this.renderImagesData()}\n {this.renderImages()}\n </div>\n </div>\n\n {/* select all button */}\n <gxg-button\n id=\"button-select-all\"\n type=\"outlined\"\n onClick={this.selectAll}\n part=\"gxg-button gxg-button--select-all\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnSelectAll}\n </gxg-button>\n\n {/* new file button*/}\n <gxg-button\n id=\"button-new-file\"\n type=\"primary-text-icon\"\n icon=\"objects/image\"\n onClick={this.newObjectCallbackHandler}\n part=\"gxg-button gxg-button--new-file\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnNew}\n </gxg-button>\n\n {/* matching objects */}\n <gxg-text\n class=\"align-end\"\n part=\"objects-matching\"\n slot=\"footer-start\"\n >\n {`${this.filteredImages.length} ${this._componentLocale.objCount.matching}`}\n </gxg-text>\n </gx-ide-container>\n </div>\n </Host>\n );\n }\n}\n\nexport type SelectionObjectCallback = (ids: string[]) => Promise<void>;\nexport type OpenSelectionCallback = (ids: string[]) => Promise<void>;\nexport type DeleteSelectionCallback = (ids: string[]) => Promise<void>;\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\nexport type ContextMenuCallback = (\n contextMenuInfo: ContextMenuInfo\n) => Promise<void>;\nexport type NewObjectCallback = () => Promise<void>;\nexport type LoadCallback = (filters: ImageFiltersData) => Promise<ImageData[]>;\nexport type LoadImageItemsCallback = (id: string) => Promise<ImageItemData[]>;\n\nexport type ImageFiltersData = {\n name?: string;\n searchContents?: string;\n category?: string;\n parent?: string;\n allDescendants?: boolean;\n modifiedAfter?: string;\n modifiedBy?: string;\n modifiedDate?: Date;\n style?: string;\n language?: string;\n density?: string;\n layer?: string;\n};\n\nexport type ImageData = {\n id: string;\n icon: string;\n name: string;\n description: string;\n parent: string;\n module: string;\n modifiedDate?: Date;\n lastUser?: string;\n importDate?: Date;\n};\n\nexport type ImageItemData = {\n id: string;\n name: string;\n url: string;\n};\n\ntype FilerInitialData = {\n name: string;\n module: EntityData;\n searchContents: string;\n category: string;\n allDescendants: boolean;\n modified: boolean;\n dateTime: DatePickerDate;\n after: string;\n user: string;\n style: string;\n language: string;\n density: string;\n layer: string;\n};\n"],"version":3}
1
+ {"file":"gx-ide-ww-images.js","mappings":"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","names":[],"sources":["src/components/ww-images/ww-images.scss?tag=gx-ide-ww-images&encapsulation=shadow","src/components/ww-images/ww-images.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n}\n\n/*--- Filter ---*/\n.filter--padding {\n padding: var(--gx-ide-container__padding);\n}\n.filter--gap {\n gap: var(--gx-ide-grid-row-gap);\n}\n.filter {\n display: flex;\n flex-direction: column;\n &__first-row {\n display: flex;\n gap: var(--gx-ide-grid-column-gap);\n .name,\n .module-folder {\n flex: 1;\n }\n .filter-btn {\n flex: none;\n }\n .second-column {\n display: flex;\n flex-direction: row;\n align-items: end;\n gap: var(--gx-ide-grid-column-gap);\n }\n > * {\n flex: 1;\n }\n }\n .checkboxes-label-wrapper {\n display: flex;\n flex-direction: column;\n gap: 0;\n }\n .checkboxes-wrapper {\n display: flex;\n gap: var(--gx-ide-grid-column-gap);\n border: 1px solid var(--gray-02);\n border-radius: var(--border-radius-sm);\n height: var(--gxg-form-text-height);\n box-sizing: border-box;\n align-items: center;\n padding-inline-start: var(--mer-spacing--xxs);\n }\n .user {\n max-width: 100% !important;\n }\n}\n\n/*Filter*/\n.filters-outer-wrapper {\n display: grid;\n grid-template-rows: 1fr;\n transition: grid-template-rows 200ms;\n &--hidden {\n grid-template-rows: 0fr;\n }\n}\n.filters-inner-wrapper {\n padding-top: var(--gx-ide-container__padding);\n overflow: hidden;\n display: grid;\n grid-template-columns: repeat(12, 1fr);\n grid-template-rows: repeat(3, 1fr);\n\n .search-contents {\n grid-area: 1 / 1 / 2 / 5;\n }\n .category {\n grid-area: 1 / 5 / 2 / 9;\n }\n .options {\n grid-area: 1 / 9 / 2 / 13;\n }\n .date-time {\n grid-area: 2 / 1 / 3 / 5;\n }\n .after-date-time {\n grid-area: 2 / 5 / 3 / 9;\n }\n .user {\n grid-area: 2 / 9 / 3 / 13;\n }\n .style {\n grid-area: 3 / 1 / 4 / 4;\n }\n .language {\n grid-area: 3 / 4 / 4 / 7;\n }\n .density {\n grid-area: 3 / 7 / 4 / 10;\n }\n .layer {\n grid-area: 3 / 10 / 4 / 13;\n }\n}\n\n.master-wrapper {\n height: 100%;\n display: grid;\n grid-template-rows: auto 1fr;\n}\n\n/*--- Grid/Images Container ---*/\n.grid-images-container {\n border-top: 1px solid var(--gx-ide-container-border-color);\n display: grid;\n grid-template-columns: 1fr 220px;\n grid-column-gap: 0;\n grid-row-gap: 0;\n overflow: auto;\n}\n.images-information {\n &__header {\n display: flex;\n align-items: center;\n gap: var(--gx-ide-grid-column-gap);\n &-title {\n flex: none;\n }\n }\n}\n\n/* Objects Table */\n.images-grid {\n grid-template-columns: repeat(2, 1fr);\n grid-column-gap: 0;\n > :nth-child(1) {\n grid-area: 1 / 1 / 1 / 3;\n }\n}\n.images-container {\n .image-item {\n display: inline-block;\n width: 50%;\n height: 110px; /*should be half the images container width (actually is 220px)*/\n &__container {\n padding: var(--gx-ide-container__padding);\n img {\n width: 100%;\n height: 100%;\n object-fit: scale-down;\n }\n }\n &__name {\n @include elipsis;\n text-align: center;\n width: 100%;\n display: block;\n font-size: 10px;\n padding: 4px 8px;\n box-sizing: border-box;\n background-color: var(--gray-00);\n }\n &:nth-child(odd) {\n .image-item__name {\n border-inline-end: 1px solid var(--gray-02);\n }\n }\n }\n}\n.objects-count {\n grid-template-columns: repeat(2, 1fr);\n *:nth-child(2) {\n justify-content: flex-end;\n align-items: flex-start;\n }\n}\n\n@include hiChar;\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Method,\n Listen,\n Watch\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { ChGridRowContextMenuEvent } from \"@genexus/chameleon-controls-library/dist/types/components/grid/ch-grid-types\";\nimport { DatePickerDate } from \"@genexus/gemini/dist/types/components/date-picker/date-picker\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { GxOption } from \"../../common/types\";\nimport { config } from \"../../common/config\";\nimport { renderFormItems } from \"../../common/common\";\nimport { EntityData, ContextMenuInfo } from \"../../common/types\";\nimport { FILTER_AFTER } from \"../../common/constants\";\nimport {\n formatDate,\n hiChar,\n closeOnOutsideClickHandler\n} from \"../../common/helpers\";\nimport { gridCommon } from \"../../common/grid\";\n\n@Component({\n tag: \"gx-ide-ww-images\",\n styleUrl: \"ww-images.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/ww-images\"]\n})\nexport class GxIdeWWImages {\n /*\nINDEX:\n1.OWN PROPERTIES\n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE EVENTS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private filterInitialData: FilerInitialData;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeWwImagesElement;\n\n private filterEl: HTMLDivElement;\n /* References needed to collect data */\n private filterNameEl!: HTMLGxgFormTextElement;\n private filterSearchContentsEl!: HTMLGxgFormTextElement;\n private filterCategoryEl!: HTMLGxgComboBoxElement;\n private filterModuleEl!: HTMLGxIdeEntitySelectorElement;\n private filterModifiedEl!: HTMLGxgFormCheckboxElement;\n private filterAllDescendantsEl!: HTMLGxgFormCheckboxElement;\n private filterAfterTypeEl!: HTMLGxgComboBoxElement;\n private filterUserEl!: HTMLGxgFormTextElement;\n private filterModifiedDateEl!: HTMLGxgDatePickerElement;\n private filterStyleEl!: HTMLGxgComboBoxElement;\n private filterLanguageEl!: HTMLGxgComboBoxElement;\n private filterDensityEl!: HTMLGxgComboBoxElement;\n private filterLayerEl!: HTMLGxgComboBoxElement;\n private chGridEl!: HTMLChGridElement;\n\n // 3.STATE() VARIABLES //\n\n @State() filtersHidden = true;\n @Watch(\"filtersHidden\")\n filtersHiddenHandler(hidden: boolean): void {\n if (hidden) {\n this.removeDetectClickOutsideFilter();\n } else {\n this.attachDetectClickOutsideFilter();\n }\n }\n\n /**\n * The after types render in the after selector\n */\n @State() filterAfterType = \"\";\n\n /**\n * For show or hide the filters relative to modifiers\n */\n @State() filterModified = false;\n\n /**\n * The images rendered in the table\n */\n @State() images: ImageData[] = [];\n\n /**\n * The images rendered in the table, after the filter\n */\n @State() filteredImages: ImageData[] = [];\n\n /**\n * The items of the image that is selected\n */\n @State() imagesSelectedItems: ImageItemData[] = [];\n\n /**\n * The selected images in the table of images\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * The images filter input text value\n */\n @State() filterImagesInputValue = \"\";\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Displays a secondary filter, used to filter over the filtered images\n */\n @Prop() readonly secondaryFilter = false;\n\n /**\n * The categories render in the filter category selector\n */\n @Prop() readonly categories!: GxOption[];\n\n /**\n * The densities render in the filter density selector\n */\n @Prop() readonly densities!: GxOption[];\n\n /**\n * The default value for the 'categories' 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 * The modules/folders render in the module/folder selector\n */\n @Prop() readonly filterModules!: GxOption[];\n\n /**\n * The languages render in the filter language selector\n */\n @Prop() readonly languages!: GxOption[];\n\n /**\n * The layers render in the filter layer selector\n */\n @Prop() readonly layers!: GxOption[];\n\n /**\n * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly contextMenuCallback!: ContextMenuCallback;\n\n /**\n * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly deleteSelectionCallback!: DeleteSelectionCallback;\n\n /**\n * This is a function provided by the developer that return a list of images to populate the table of images.\n */\n @Prop() readonly loadCallback!: LoadCallback;\n\n /**\n * This is a function provided by the developer that return a list of items of the image selected.\n */\n @Prop() readonly loadImageItemsCallback!: LoadImageItemsCallback;\n\n /**\n * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly newObjectCallback!: NewObjectCallback;\n\n /**\n * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly openSelectionCallback!: OpenSelectionCallback;\n\n /**\n * Callback invoked when the action is executed on the Module/Folder filter (button '...'). 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 * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.\n */\n @Prop() readonly selectionObjectChangedCallback!: SelectionObjectCallback;\n\n /**\n * Applies a shadow all around\n */\n @Prop() readonly shadow = false;\n\n /**\n * The styles render in the filter style selector\n */\n @Prop() readonly styles!: GxOption[];\n\n /**\n * The types render in the filter type selector\n */\n @Prop() readonly types!: GxOption[];\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n // 6.COMPONENT LIFECYCLE EVENTS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.componentDidLoadEvent.emit(true);\n }\n\n componentDidLoad() {\n this.listenChanges();\n this.getImages();\n this.saveInitialFilterData();\n this.filterNameEl.focus();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n @Listen(\"keydown\", { passive: true })\n keyDownHandler(eventInfo: KeyboardEvent) {\n if (document.activeElement === this.el) {\n switch (eventInfo.key) {\n case \"Enter\":\n this.openSelectionCallBackHandler();\n break;\n case \"Delete\":\n this.deleteSelectionCallbackHandler();\n break;\n }\n }\n }\n\n // 8.PUBLIC METHODS API //\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 * This method reload the view, refreshing the filters and the table of images.\n */\n @Method()\n async reload(): Promise<void> {\n this.deleteSelectionCallbackHandler();\n this.getImages();\n }\n\n // 9.LOCAL METHODS //\n\n private attachDetectClickOutsideFilter = () => {\n document.addEventListener(\"click\", this.detectClickOutsideFilter);\n };\n private removeDetectClickOutsideFilter = () => {\n document.removeEventListener(\"click\", this.detectClickOutsideFilter);\n };\n private detectClickOutsideFilter = (e: PointerEvent): void => {\n const clickedOutside = closeOnOutsideClickHandler(e, this.filterEl);\n if (clickedOutside) {\n this.filtersHidden = true;\n } else {\n this.filtersHidden = false;\n }\n };\n\n /**\n * @description This is needed for resetting the filter. When the user resets the filter, all the filter controls values have to be restored to the value they had on componentDidLoad.\n */\n private saveInitialFilterData = () => {\n this.filterInitialData = {\n name: this.filterNameEl.value,\n module: this.filterModuleEl.value,\n searchContents: this.filterSearchContentsEl.value,\n category: this.filterCategoryEl.value,\n allDescendants: this.filterAllDescendantsEl.checked,\n modified: this.filterModifiedEl.checked,\n dateTime: this.filterModifiedDateEl.value,\n after: this.filterAfterTypeEl.value,\n user: this.filterUserEl.value,\n style: this.filterStyleEl.value,\n language: this.filterLanguageEl.value,\n density: this.filterDensityEl.value,\n layer: this.filterLayerEl.value\n };\n };\n\n // 9.LOCAL METHODS -> Renders //\n\n private renderFilter = (): Element => {\n return (\n <div\n class=\"filter filter--padding\"\n ref={(el: HTMLDivElement) => (this.filterEl = el as HTMLDivElement)}\n >\n <div class=\"filter__first-row\">\n {/* name */}\n <gxg-form-text\n label-position=\"above\"\n label={this._componentLocale.filter.name}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.filterNameEl = el as HTMLGxgFormTextElement)\n }\n part=\"filter-name\"\n class=\"name\"\n ></gxg-form-text>\n\n <div class=\"second-column\">\n {/* module/folder */}\n <gx-ide-entity-selector\n label={this._componentLocale.filter.moduleFolder}\n label-position=\"above\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.filterModuleEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"module-folder\"\n part=\"filter-module-folder\"\n ></gx-ide-entity-selector>\n\n {/* reset filter button */}\n <gxg-button\n onClick={this.resetFilterHandler}\n part=\"gxg-button-reset-filter\"\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/reset\"\n class=\"reset-filter-btn\"\n ></gxg-button>\n\n {/* filter button */}\n <gxg-button\n onClick={this.toggleFiltersHandler}\n part=\"gxg-button gxg-button--more-less\"\n type=\"secondary-icon-only\"\n icon={\n true ? \"window-tools/filter-conditions\" : \"window-tools/filter\"\n }\n class=\"filter-btn\"\n ></gxg-button>\n </div>\n </div>\n\n <div\n class={{\n \"filters-outer-wrapper\": true,\n \"filters-outer-wrapper--hidden\": this.filtersHidden\n }}\n >\n <div\n class={{\n \"filter\": true,\n \"filter--gap\": true,\n \"filters-inner-wrapper\": true\n }}\n >\n {/* search contents */}\n <gxg-form-text\n label-position=\"above\"\n label={this._componentLocale.filter.search}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.filterSearchContentsEl = el as HTMLGxgFormTextElement)\n }\n class={{ \"search-contents\": true }}\n part=\"filter-search\"\n ></gxg-form-text>\n\n {/* category */}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.category}\n value={this.defaultCategory}\n disabled={!this.categories}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterCategoryEl = el as HTMLGxgComboBoxElement)\n }\n class=\"category\"\n part=\"filter-category\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.categories ?? [])}\n </gxg-combo-box>\n\n <div class=\"options\">\n <gxg-label labelPosition=\"above\" center={false}>\n Options:\n </gxg-label>\n {/* all descendants*/}\n <div class=\"checkboxes-wrapper\">\n <gxg-form-checkbox\n label={this._componentLocale.filter.allDescendants}\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.filterAllDescendantsEl =\n el as HTMLGxgFormCheckboxElement)\n }\n class=\"all-descendants\"\n part=\"filter-all-descendants\"\n ></gxg-form-checkbox>\n\n {/* modified */}\n <gxg-form-checkbox\n label={this._componentLocale.filter.modified}\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.filterModifiedEl = el as HTMLGxgFormCheckboxElement)\n }\n class=\"modified\"\n part=\"filter-modified\"\n ></gxg-form-checkbox>\n </div>\n </div>\n\n {/* date/time*/}\n <div\n class={{\n \"hide\":\n !this.filterModified ||\n this.filterAfterType !== FILTER_AFTER.DATE_TIME,\n \"date-time\": true\n }}\n part=\"filter-datetime\"\n >\n <div class=\"date-time-wrapper\">\n <gxg-label label-position=\"above\">\n {this._componentLocale.filter.dateTime}\n </gxg-label>\n <gxg-date-picker\n disabled={!this.filterModified}\n ref={(el: HTMLGxgDatePickerElement) =>\n (this.filterModifiedDateEl = el as HTMLGxgDatePickerElement)\n }\n ></gxg-date-picker>\n </div>\n </div>\n\n {/* after date/time */}\n <gxg-combo-box\n class=\"after-date-time\"\n disabled={!this.filterModified}\n label={this._componentLocale.filter.afterLabel}\n disable-filter\n value={this.filterAfterType}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterAfterTypeEl = el as HTMLGxgComboBoxElement)\n }\n part=\"filter-after-type\"\n >\n {renderFormItems(\"gxg-combo-box-item\", [\n {\n id: FILTER_AFTER.NONE,\n label: this._componentLocale.filter.afterNone,\n value: FILTER_AFTER.NONE\n },\n {\n id: FILTER_AFTER.DATE_TIME,\n label: this._componentLocale.filter[FILTER_AFTER.DATE_TIME],\n value: FILTER_AFTER.DATE_TIME\n },\n {\n id: FILTER_AFTER.IMPORT,\n label: this._componentLocale.filter[FILTER_AFTER.IMPORT],\n value: FILTER_AFTER.IMPORT\n },\n {\n id: FILTER_AFTER.LAST_BUILD,\n label: this._componentLocale.filter[FILTER_AFTER.LAST_BUILD],\n value: FILTER_AFTER.LAST_BUILD\n }\n ])}\n </gxg-combo-box>\n\n {/* user */}\n <gxg-form-text\n disabled={!this.filterModified}\n labelPosition=\"above\"\n label={this._componentLocale.filter.user}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.filterUserEl = el as HTMLGxgFormTextElement)\n }\n value=\"hey\"\n centerLabel={false}\n class=\"user\"\n part=\"filter-user\"\n ></gxg-form-text>\n\n {/* style*/}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.style}\n disabled={!this.styles}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterStyleEl = el as HTMLGxgComboBoxElement)\n }\n class=\"style\"\n part=\"filter-style\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.styles ?? [])}\n </gxg-combo-box>\n\n {/* language*/}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.language}\n disabled={!this.languages}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterLanguageEl = el as HTMLGxgComboBoxElement)\n }\n class=\"language\"\n part=\"filter-language\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.languages ?? [])}\n </gxg-combo-box>\n\n {/* density*/}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.density}\n disabled={!this.densities}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterDensityEl = el as HTMLGxgComboBoxElement)\n }\n class=\"density\"\n part=\"filter-density\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.densities ?? [])}\n </gxg-combo-box>\n\n {/* layer*/}\n <gxg-combo-box\n disable-filter\n label={this._componentLocale.filter.layer}\n disabled={!this.layers}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.filterLayerEl = el as HTMLGxgComboBoxElement)\n }\n class=\"layer\"\n part=\"filter-layer\"\n >\n {renderFormItems(\"gxg-combo-box-item\", this.layers ?? [])}\n </gxg-combo-box>\n </div>\n </div>\n </div>\n );\n };\n\n private renderImagesData = (): Element => {\n return (\n /* images information*/\n <gx-ide-container\n contentBorderEnd\n noContentPadding\n titleType=\"secondary\"\n containerTitle={\n !this.secondaryFilter ? this._componentLocale.imagesDataTitle : null\n }\n class={{ \"images-information\": true, \"overflow-auto\": true }}\n part=\"grid-container\"\n >\n {this.secondaryFilter ? (\n <header class=\"images-information__header\" slot=\"header\">\n <gx-ide-title\n type=\"secondary\"\n class=\"images-information__header-title\"\n >\n {this._componentLocale.imagesDataTitle}\n </gx-ide-title>\n <gxg-form-text\n icon=\"gemini-tools/search\"\n icon-position=\"start\"\n placeholder=\"Search by any field\"\n onInput={this.filterInputHandler as any}\n ></gxg-form-text>\n </header>\n ) : null}\n\n <gxg-grid part=\"images-table\" ellipsis-cell-wrapper noBorder>\n <ch-grid\n ref={(el: HTMLChGridElement) => (this.chGridEl = el)}\n part=\"ch-grid-images\"\n rowSelectionMode=\"single\"\n >\n <ch-grid-columnset>\n <ch-grid-column\n columnName=\"\"\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.auto}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.name}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.common}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.module}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.common}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.description}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.common}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.modifiedDate}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.auto}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.lastUser}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.auto}\n ></ch-grid-column>\n <ch-grid-column\n columnName={this._componentLocale.tableHead.importDate}\n columnNameHidden={false}\n settingable={false}\n size={gridCommon.colSize.auto}\n ></ch-grid-column>\n </ch-grid-columnset>\n {this.filteredImages.map((obj: ImageData) => (\n <ch-grid-row rowid={obj.id}>\n <ch-grid-cell>\n <span class=\"cell-wrapper\"></span>\n <gxg-icon\n type={obj.icon}\n color=\"auto\"\n size=\"small\"\n ></gxg-icon>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(obj.name, this.filterImagesInputValue)}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(obj.module, this.filterImagesInputValue)}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(obj.description, this.filterImagesInputValue)}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(\n `${formatDate(obj.modifiedDate)}`,\n this.filterImagesInputValue\n )}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(obj.lastUser, this.filterImagesInputValue)}\n </span>\n </ch-grid-cell>\n <ch-grid-cell>\n <span class=\"cell-wrapper\">\n {hiChar(\n `${formatDate(obj.importDate)}`,\n this.filterImagesInputValue\n )}\n </span>\n </ch-grid-cell>\n </ch-grid-row>\n ))}\n </ch-grid>\n </gxg-grid>\n </gx-ide-container>\n );\n };\n\n private renderImages = (): Element => {\n return (\n /* tiles */\n <gx-ide-container\n containerTitle={this._componentLocale.imagesTitle}\n noContentPadding\n titleType=\"secondary\"\n class=\"overflow-auto\"\n titleHeightAsInput={\n this.secondaryFilter ? this._componentLocale.imagesDataTitle : null\n }\n part=\"image-data-container\"\n >\n <div class=\"images-container\">\n {this.imagesSelectedItems.map(item => (\n <div class=\"image-item\">\n <div class=\"image-item__container\">\n <div class=\"img\">\n <img src={item.url} alt={item.id} />\n </div>\n </div>\n <span class=\"image-item__name\">{item.name}</span>\n </div>\n ))}\n </div>\n </gx-ide-container>\n );\n };\n\n // 9.LOCAL METHODS -> Other //\n\n private getImages = (): void => {\n let filters: ImageFiltersData = {\n name: this.filterNameEl.value,\n parent: this.filterModuleEl.value ? this.filterModuleEl.value.id : null\n };\n\n const modified = this.filterModifiedEl.checked;\n const modifiedAfter = this.filterAfterTypeEl.value;\n filters = {\n ...filters,\n searchContents: this.filterSearchContentsEl.value,\n category: this.filterCategoryEl.value,\n allDescendants: this.filterAllDescendantsEl.checked,\n modifiedAfter: modified ? modifiedAfter : null,\n modifiedBy: modified ? this.filterUserEl.value : null,\n modifiedDate:\n modified && modifiedAfter === FILTER_AFTER.DATE_TIME\n ? (this.filterModifiedDateEl.value as Date)\n : null,\n style: this.filterStyleEl.value,\n language: this.filterLanguageEl.value,\n density: this.filterDensityEl.value,\n layer: this.filterLayerEl.value\n };\n\n this.loadCallback(filters).then((items: ImageData[]) => {\n this.images = items;\n this.selectedObjectsIds = [];\n this.deselectAll();\n this.filterImagesInformationHandler();\n });\n };\n\n private newObjectCallbackHandler = (): void => {\n this.newObjectCallback();\n };\n\n private openSelectionCallBackHandler = (): void => {\n this.openSelectionCallback(this.selectedObjectsIds);\n };\n\n private deleteSelectionCallbackHandler = (): void => {\n this.deleteSelectionCallback(this.selectedObjectsIds);\n };\n\n private resetFilterHandler = () => {\n if (this.filterInitialData) {\n this.filterNameEl.value = this.filterInitialData.name;\n this.filterModuleEl.value = this.filterInitialData.module;\n this.filterSearchContentsEl.value = this.filterInitialData.searchContents;\n this.filterCategoryEl.value = this.filterInitialData.category;\n this.filterAllDescendantsEl.checked =\n this.filterInitialData.allDescendants;\n this.filterModifiedEl.checked = this.filterInitialData.modified;\n this.filterModifiedDateEl.value = this.filterInitialData.dateTime;\n this.filterAfterTypeEl.value = this.filterInitialData.after;\n this.filterUserEl.value = this.filterInitialData.user;\n this.filterStyleEl.value = this.filterInitialData.style;\n this.filterLanguageEl.value = this.filterInitialData.language;\n this.filterDensityEl.value = this.filterInitialData.density;\n this.filterLayerEl.value = this.filterInitialData.layer;\n }\n };\n\n private toggleFiltersHandler = () => {\n this.filtersHidden = !this.filtersHidden;\n };\n\n private selectAll = (): void => {\n (this.chGridEl as any).selectAllRows();\n };\n\n private deselectAll = (): void => {\n (this.chGridEl as any).selectAllRows(false);\n };\n\n private listenChanges = (): void => {\n /* name */\n this.filterNameEl.addEventListener(\"change\", () => {\n this.getImages();\n });\n /* module/folder */\n this.filterModuleEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* search contents*/\n this.filterSearchContentsEl.addEventListener(\"change\", () => {\n this.getImages();\n });\n /* category */\n this.filterCategoryEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* (options) -> all descendants */\n this.filterAllDescendantsEl.addEventListener(\"change\", () => {\n this.getImages();\n });\n /* (options) -> modified */\n this.filterModifiedEl.addEventListener(\"change\", (e: any) => {\n this.filterModified = e.detail.value;\n this.getImages();\n });\n /* date/time */\n this.filterModifiedDateEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* after */\n this.filterAfterTypeEl.addEventListener(\"valueChanged\", () => {\n this.filterAfterType = this.filterAfterTypeEl.value;\n this.getImages();\n });\n /* user */\n this.filterUserEl.addEventListener(\"change\", () => {\n this.getImages();\n });\n /* style */\n this.filterStyleEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* language */\n this.filterLanguageEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* density */\n this.filterDensityEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n /* layer */\n this.filterLayerEl.addEventListener(\"valueChanged\", () => {\n this.getImages();\n });\n\n // for grid selection\n this.chGridEl.addEventListener(\"selectionChanged\", (ev: any): void => {\n this.loadImageItemsCallback(ev.detail.rowsId[0]).then(\n (items: ImageItemData[]) => {\n this.imagesSelectedItems = items;\n }\n );\n });\n this.chGridEl.addEventListener(\"rowDoubleClicked\", (): void => {\n this.openSelectionCallBackHandler();\n });\n this.chGridEl.addEventListener(\"selectionChanged\", (ev: any): void => {\n this.selectedObjectsIds = ev.detail.rowsId;\n this.selectionObjectChangedCallback(this.selectedObjectsIds);\n });\n this.chGridEl.addEventListener(\n \"rowContextMenu\",\n (ev: CustomEvent<ChGridRowContextMenuEvent>): void => {\n ev.preventDefault();\n ev.stopPropagation();\n this.contextMenuCallback({\n selection: ev.detail.selectedRowsId,\n clientX: ev.detail.clientX,\n clientY: ev.detail.clientY\n });\n }\n );\n };\n\n private filterInputHandler = (e: CustomEvent<EventEmitter>) => {\n this.filterImagesInputValue = e.detail as unknown as string;\n this.filterImagesInformationHandler();\n };\n\n private filterImagesInformationHandler = () => {\n const filterValue = this.filterImagesInputValue.toLocaleLowerCase();\n this.filteredImages = this.images.filter(image => {\n const nameMatch = image.name.toLocaleLowerCase().includes(filterValue);\n const moduleMatch = image.module\n .toLocaleLowerCase()\n .includes(filterValue);\n const descriptionMatch = image.description\n .toLocaleLowerCase()\n .includes(filterValue);\n const modifiedDateMatch = image.modifiedDate\n .toString()\n .includes(filterValue);\n const lastUser = image.lastUser.toLocaleLowerCase().includes(filterValue);\n const importDateMatch =\n image.importDate && image.importDate.toString().includes(filterValue);\n\n return (\n nameMatch ||\n moduleMatch ||\n descriptionMatch ||\n modifiedDateMatch ||\n lastUser ||\n importDateMatch\n );\n });\n };\n\n // 10.RENDER() FUNCTION //\n\n render(): void {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noContentPadding\n noContentGap\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n >\n <div class=\"master-wrapper\">\n {this.renderFilter()}\n <div class=\"grid-images-container\">\n {this.renderImagesData()}\n {this.renderImages()}\n </div>\n </div>\n\n {/* select all button */}\n <gxg-button\n id=\"button-select-all\"\n type=\"outlined\"\n onClick={this.selectAll}\n part=\"gxg-button gxg-button--select-all\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnSelectAll}\n </gxg-button>\n\n {/* new file button*/}\n <gxg-button\n id=\"button-new-file\"\n type=\"primary-text-icon\"\n icon=\"objects/image\"\n onClick={this.newObjectCallbackHandler}\n part=\"gxg-button gxg-button--new-file\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnNew}\n </gxg-button>\n\n {/* matching objects */}\n <gxg-text\n class=\"align-end\"\n part=\"objects-matching\"\n slot=\"footer-start\"\n >\n {`${this.filteredImages.length} ${this._componentLocale.objCount.matching}`}\n </gxg-text>\n </gx-ide-container>\n </div>\n </Host>\n );\n }\n}\n\nexport type SelectionObjectCallback = (ids: string[]) => Promise<void>;\nexport type OpenSelectionCallback = (ids: string[]) => Promise<void>;\nexport type DeleteSelectionCallback = (ids: string[]) => Promise<void>;\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\nexport type ContextMenuCallback = (\n contextMenuInfo: ContextMenuInfo\n) => Promise<void>;\nexport type NewObjectCallback = () => Promise<void>;\nexport type LoadCallback = (filters: ImageFiltersData) => Promise<ImageData[]>;\nexport type LoadImageItemsCallback = (id: string) => Promise<ImageItemData[]>;\n\nexport type ImageFiltersData = {\n name?: string;\n searchContents?: string;\n category?: string;\n parent?: string;\n allDescendants?: boolean;\n modifiedAfter?: string;\n modifiedBy?: string;\n modifiedDate?: Date;\n style?: string;\n language?: string;\n density?: string;\n layer?: string;\n};\n\nexport type ImageData = {\n id: string;\n icon: string;\n name: string;\n description: string;\n parent: string;\n module: string;\n modifiedDate?: Date;\n lastUser?: string;\n importDate?: Date;\n};\n\nexport type ImageItemData = {\n id: string;\n name: string;\n url: string;\n};\n\ntype FilerInitialData = {\n name: string;\n module: EntityData;\n searchContents: string;\n category: string;\n allDescendants: boolean;\n modified: boolean;\n dateTime: DatePickerDate;\n after: string;\n user: string;\n style: string;\n language: string;\n density: string;\n layer: string;\n};\n"],"version":3}
@@ -23,7 +23,7 @@ const GxgMenuItem$1 = /*@__PURE__*/ proxyCustomElement(class GxgMenuItem extends
23
23
  this.menuItemActive.emit(this.label);
24
24
  }
25
25
  render() {
26
- return (h(Host, { onClick: this.setActive.bind(this) }, h("li", { class: "menu-item", ref: (el) => (this.listItem = el) }, h("div", { class: "menu-item__container" }, this.includeIcon(), this.label))));
26
+ return (h(Host, null, h("li", { class: "menu-item", ref: el => (this.listItem = el), onClick: this.setActive.bind(this) }, h("div", { class: "menu-item__container" }, this.includeIcon(), this.label))));
27
27
  }
28
28
  static get style() { return menuItemCss; }
29
29
  }, [1, "gxg-menu-item", {
@@ -1 +1 @@
1
- {"file":"gxg-menu-item.js","mappings":";;;;AAAA,MAAM,WAAW,GAAG,wzUAAwzU;;MCC/zUA,aAAW;IACpB;;;;;QACI,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACvB;IAKD,WAAW;QACP,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YACpB,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;SAC1E;KACJ;IACD,SAAS;QACL,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxC;IACD,MAAM;QACF,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;KAC7M;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["GxgMenuItem"],"sources":["node_modules/@genexus/gemini/dist/collection/components/menu/menu-item/menu-item.css?tag=gxg-menu-item&encapsulation=shadow","node_modules/@genexus/gemini/dist/collection/components/menu/menu-item/menu-item.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n/* Document\n ========================================================================== */\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\nhtml {\n line-height: 1.15;\n /* 1 */\n -webkit-text-size-adjust: 100%;\n /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n/**\n * Remove the margin in all browsers.\n */\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\nhr {\n box-sizing: content-box;\n /* 1 */\n height: 0;\n /* 1 */\n overflow: visible;\n /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\npre {\n font-family: monospace, monospace;\n /* 1 */\n font-size: 1em;\n /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n/**\n * Remove the gray background on active links in IE 10.\n */\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\nabbr[title] {\n border-bottom: none;\n /* 1 */\n text-decoration: underline;\n /* 2 */\n text-decoration: underline dotted;\n /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace;\n /* 1 */\n font-size: 1em;\n /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n/**\n * Remove the border on images inside links in IE 10.\n */\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n /* 1 */\n font-size: 100%;\n /* 1 */\n line-height: 1.15;\n /* 1 */\n margin: 0;\n /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\nbutton::-moz-focus-inner,\n[type=button]::-moz-focus-inner,\n[type=reset]::-moz-focus-inner,\n[type=submit]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\nbutton:-moz-focusring,\n[type=button]:-moz-focusring,\n[type=reset]:-moz-focusring,\n[type=submit]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\nlegend {\n box-sizing: border-box;\n /* 1 */\n color: inherit;\n /* 2 */\n display: table;\n /* 1 */\n max-width: 100%;\n /* 1 */\n padding: 0;\n /* 3 */\n white-space: normal;\n /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n[type=checkbox],\n[type=radio] {\n box-sizing: border-box;\n /* 1 */\n padding: 0;\n /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n[type=number]::-webkit-inner-spin-button,\n[type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n[type=search] {\n -webkit-appearance: textfield;\n /* 1 */\n outline-offset: -2px;\n /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n[type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n /* 1 */\n font: inherit;\n /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n/**\n * Add the correct display in IE 10+.\n */\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n[hidden] {\n display: none;\n}\n\n:root {\n --ui-animaton-speed: 0.2s;\n}\n\n/*ALIGNMENT*/\n/*Ellipsis*/\n/*****************************************************\nTYPOGRAPHY\n*****************************************************/\n/*Title 01 (Positive)*/\n.gxg-title-01 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-01-font-weight);\n font-size: var(--ds-title-01-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n/*Title 01 (Negative)*/\n.gxg-title-01--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-01-font-weight);\n font-size: var(--ds-title-01-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 02 (Positive)*/\n.gxg-title-02 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-02-font-weight);\n font-size: var(--ds-title-02-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-02--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-02-font-weight);\n font-size: var(--ds-title-02-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--color-on-primary);\n}\n\n/*Title 03*/\n.gxg-title-03 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-03-font-weight);\n font-size: var(--ds-title-03-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-03--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-03-font-weight);\n font-size: var(--ds-title-03-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 04*/\n.gxg-title-04 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-04-font-weight);\n font-size: var(--ds-title-04-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-04--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-04-font-weight);\n font-size: var(--ds-title-04-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 05*/\n.gxg-title-05 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-05-font-weight);\n font-size: var(--ds-title-05-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-05--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-05-font-weight);\n font-size: var(--ds-title-05-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Text*/\n.gxg-text {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-text--negative {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n.gxg-text--gray {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--dimmed);\n}\n\n/*Quote*/\n.gxg-quote {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n font-style: italic;\n}\n\n.gxg-quote--negative {\n color: var(--ds-base-font-color--negative);\n}\n\n/*Link*/\n.gxg-link {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n}\n.gxg-link:hover {\n color: var(--ds-base-font-color--link-hover);\n}\n.gxg-link:active {\n color: var(--ds-base-font-color--link-active);\n}\n\n.gxg-link-gray {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n color: var(--ds-base-font-color--dimmed);\n}\n.gxg-link-gray:hover {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n color: var(--ds-base-font-color--dimmed);\n filter: brightness(1.4);\n}\n\n/*Alerts*/\n.gxg-alert-error {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--error);\n display: inline-block;\n}\n\n.gxg-alert-warning {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--warning);\n display: inline-block;\n}\n\n.gxg-alert-success {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--success);\n display: inline-block;\n}\n\n/*Tab*/\n.gxg-tab--disabled {\n color: var(--color-primary-disabled);\n pointer-events: none;\n}\n.gxg-tab--disabled[disabled] {\n color: var(--color-primary-disabled);\n pointer-events: none;\n}\n\n/*Label*/\n.gxg-label {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--gxg-label-font-weight);\n font-size: var(--gxg-label-font-size);\n color: var(--gxg-label-color);\n text-align: center;\n line-height: 1.455em;\n display: flex;\n align-items: center;\n}\n.gxg-label:hover {\n color: var(--color-primary-hover);\n}\n.gxg-label:focus {\n color: var(--color-primary-active);\n}\n.gxg-label:active {\n color: var(--color-primary-active);\n}\n.gxg-label[disabled] {\n color: var(--color-primary-disabled);\n}\n\n.gxg-label--negative {\n color: var(--color-on-primary);\n}\n.gxg-label--negative[disabled] {\n color: var(--color-on-disabled);\n}\n\n/*****************************************************\nGXG-BUTTON and GXG-BUTTON-GROUP COMMON STYLES\n*****************************************************/\n/*****************************************************\nFORM ELEMENTS\n*****************************************************/\n.gxg-scrollbar {\n /* Track */\n /* Handle */\n /* Handle on hover */\n}\n.gxg-scrollbar::-webkit-scrollbar {\n width: var(--gxg-scrollbar-width);\n height: var(--gxg-scrollbar-width);\n}\n.gxg-scrollbar::-webkit-scrollbar-track {\n background-color: var(--gxg-scrollbar-track-background);\n border-radius: var(--gxg-scrollbar-track-border-radius);\n}\n.gxg-scrollbar::-webkit-scrollbar-thumb {\n background-color: var(--gxg-scrollbar-track-thumb-background);\n border-radius: var(--gxg-scrollbar-track-thumb-radius);\n}\n.gxg-scrollbar::-webkit-scrollbar-thumb:hover {\n background-color: var(--gxg-scrollbar-track-thumb-hover-background);\n}\n.gxg-scrollbar::-webkit-scrollbar-corner {\n background: rgba(0, 0, 0, 0);\n}\n\n:host .menu-item {\n color: var(--color-on-background);\n position: relative;\n}\n:host .menu-item:before {\n content: \"\";\n display: block;\n height: 100%;\n width: 2px;\n background-color: transparent;\n position: absolute;\n}\n:host .menu-item__container {\n height: var(--spacing-comp-06);\n background-color: transparent;\n cursor: pointer;\n padding: 0 var(--spacing-comp-05) 0 var(--spacing-comp-05);\n display: flex;\n align-items: center;\n}\n:host .menu-item__container:hover {\n background-color: var(--gray-02);\n}\n:host .menu-item gxg-icon {\n margin-right: var(--spacing-comp-01);\n}\n:host :menu-item--tab {\n font-weight: var(--font-weight-semibold);\n}\n\n:host([active]) .menu-item:before {\n background-color: var(--gray-03);\n}","import { h, Host } from \"@stencil/core\";\nexport class GxgMenuItem {\n constructor() {\n this.label = undefined;\n this.icon = null;\n this.active = false;\n }\n //A reference to the input\n listItem;\n // Event called 'todoCompleted' that is \"composed\", \"cancellable\" and it will bubble up!\n menuItemActive;\n includeIcon() {\n if (this.icon !== null) {\n return h(\"gxg-icon\", { slot: \"icon\", type: this.icon, size: \"small\" });\n }\n }\n setActive() {\n this.menuItemActive.emit(this.label);\n }\n render() {\n return (h(Host, { onClick: this.setActive.bind(this) }, h(\"li\", { class: \"menu-item\", ref: (el) => (this.listItem = el) }, h(\"div\", { class: \"menu-item__container\" }, this.includeIcon(), this.label))));\n }\n static get is() { return \"gxg-menu-item\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"menu-item.scss\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"menu-item.css\"]\n };\n }\n static get properties() {\n return {\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"icon\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\"\n },\n \"attribute\": \"icon\",\n \"reflect\": false,\n \"defaultValue\": \"null\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\"\n },\n \"attribute\": \"active\",\n \"reflect\": true,\n \"defaultValue\": \"false\"\n }\n };\n }\n static get events() {\n return [{\n \"method\": \"menuItemActive\",\n \"name\": \"menuItemActive\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"any\",\n \"resolved\": \"any\",\n \"references\": {}\n }\n }];\n }\n}\n//# sourceMappingURL=menu-item.js.map\n"],"version":3}
1
+ {"file":"gxg-menu-item.js","mappings":";;;;AAAA,MAAM,WAAW,GAAG,wzUAAwzU;;MCC/zUA,aAAW;IACpB;;;;;QACI,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACvB;IAKD,WAAW;QACP,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YACpB,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;SAC1E;KACJ;IACD,SAAS;QACL,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxC;IACD,MAAM;QACF,QAAQ,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;KAC7M;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["GxgMenuItem"],"sources":["node_modules/@genexus/gemini/dist/collection/components/menu/menu-item/menu-item.css?tag=gxg-menu-item&encapsulation=shadow","node_modules/@genexus/gemini/dist/collection/components/menu/menu-item/menu-item.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n/* Document\n ========================================================================== */\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\nhtml {\n line-height: 1.15;\n /* 1 */\n -webkit-text-size-adjust: 100%;\n /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n/**\n * Remove the margin in all browsers.\n */\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\nhr {\n box-sizing: content-box;\n /* 1 */\n height: 0;\n /* 1 */\n overflow: visible;\n /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\npre {\n font-family: monospace, monospace;\n /* 1 */\n font-size: 1em;\n /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n/**\n * Remove the gray background on active links in IE 10.\n */\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\nabbr[title] {\n border-bottom: none;\n /* 1 */\n text-decoration: underline;\n /* 2 */\n text-decoration: underline dotted;\n /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace;\n /* 1 */\n font-size: 1em;\n /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n/**\n * Remove the border on images inside links in IE 10.\n */\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n /* 1 */\n font-size: 100%;\n /* 1 */\n line-height: 1.15;\n /* 1 */\n margin: 0;\n /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\nbutton::-moz-focus-inner,\n[type=button]::-moz-focus-inner,\n[type=reset]::-moz-focus-inner,\n[type=submit]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\nbutton:-moz-focusring,\n[type=button]:-moz-focusring,\n[type=reset]:-moz-focusring,\n[type=submit]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\nlegend {\n box-sizing: border-box;\n /* 1 */\n color: inherit;\n /* 2 */\n display: table;\n /* 1 */\n max-width: 100%;\n /* 1 */\n padding: 0;\n /* 3 */\n white-space: normal;\n /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n[type=checkbox],\n[type=radio] {\n box-sizing: border-box;\n /* 1 */\n padding: 0;\n /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n[type=number]::-webkit-inner-spin-button,\n[type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n[type=search] {\n -webkit-appearance: textfield;\n /* 1 */\n outline-offset: -2px;\n /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n[type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n /* 1 */\n font: inherit;\n /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n/**\n * Add the correct display in IE 10+.\n */\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n[hidden] {\n display: none;\n}\n\n:root {\n --ui-animaton-speed: 0.2s;\n}\n\n/*ALIGNMENT*/\n/*Ellipsis*/\n/*****************************************************\nTYPOGRAPHY\n*****************************************************/\n/*Title 01 (Positive)*/\n.gxg-title-01 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-01-font-weight);\n font-size: var(--ds-title-01-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n/*Title 01 (Negative)*/\n.gxg-title-01--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-01-font-weight);\n font-size: var(--ds-title-01-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 02 (Positive)*/\n.gxg-title-02 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-02-font-weight);\n font-size: var(--ds-title-02-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-02--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-02-font-weight);\n font-size: var(--ds-title-02-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--color-on-primary);\n}\n\n/*Title 03*/\n.gxg-title-03 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-03-font-weight);\n font-size: var(--ds-title-03-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-03--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-03-font-weight);\n font-size: var(--ds-title-03-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 04*/\n.gxg-title-04 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-04-font-weight);\n font-size: var(--ds-title-04-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-04--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-04-font-weight);\n font-size: var(--ds-title-04-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 05*/\n.gxg-title-05 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-05-font-weight);\n font-size: var(--ds-title-05-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-05--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-05-font-weight);\n font-size: var(--ds-title-05-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Text*/\n.gxg-text {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-text--negative {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n.gxg-text--gray {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--dimmed);\n}\n\n/*Quote*/\n.gxg-quote {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n font-style: italic;\n}\n\n.gxg-quote--negative {\n color: var(--ds-base-font-color--negative);\n}\n\n/*Link*/\n.gxg-link {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n}\n.gxg-link:hover {\n color: var(--ds-base-font-color--link-hover);\n}\n.gxg-link:active {\n color: var(--ds-base-font-color--link-active);\n}\n\n.gxg-link-gray {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n color: var(--ds-base-font-color--dimmed);\n}\n.gxg-link-gray:hover {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n color: var(--ds-base-font-color--dimmed);\n filter: brightness(1.4);\n}\n\n/*Alerts*/\n.gxg-alert-error {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--error);\n display: inline-block;\n}\n\n.gxg-alert-warning {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--warning);\n display: inline-block;\n}\n\n.gxg-alert-success {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--success);\n display: inline-block;\n}\n\n/*Tab*/\n.gxg-tab--disabled {\n color: var(--color-primary-disabled);\n pointer-events: none;\n}\n.gxg-tab--disabled[disabled] {\n color: var(--color-primary-disabled);\n pointer-events: none;\n}\n\n/*Label*/\n.gxg-label {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--gxg-label-font-weight);\n font-size: var(--gxg-label-font-size);\n color: var(--gxg-label-color);\n text-align: center;\n line-height: 1.455em;\n display: flex;\n align-items: center;\n}\n.gxg-label:hover {\n color: var(--color-primary-hover);\n}\n.gxg-label:focus {\n color: var(--color-primary-active);\n}\n.gxg-label:active {\n color: var(--color-primary-active);\n}\n.gxg-label[disabled] {\n color: var(--color-primary-disabled);\n}\n\n.gxg-label--negative {\n color: var(--color-on-primary);\n}\n.gxg-label--negative[disabled] {\n color: var(--color-on-disabled);\n}\n\n/*****************************************************\nGXG-BUTTON and GXG-BUTTON-GROUP COMMON STYLES\n*****************************************************/\n/*****************************************************\nFORM ELEMENTS\n*****************************************************/\n.gxg-scrollbar {\n /* Track */\n /* Handle */\n /* Handle on hover */\n}\n.gxg-scrollbar::-webkit-scrollbar {\n width: var(--gxg-scrollbar-width);\n height: var(--gxg-scrollbar-width);\n}\n.gxg-scrollbar::-webkit-scrollbar-track {\n background-color: var(--gxg-scrollbar-track-background);\n border-radius: var(--gxg-scrollbar-track-border-radius);\n}\n.gxg-scrollbar::-webkit-scrollbar-thumb {\n background-color: var(--gxg-scrollbar-track-thumb-background);\n border-radius: var(--gxg-scrollbar-track-thumb-radius);\n}\n.gxg-scrollbar::-webkit-scrollbar-thumb:hover {\n background-color: var(--gxg-scrollbar-track-thumb-hover-background);\n}\n.gxg-scrollbar::-webkit-scrollbar-corner {\n background: rgba(0, 0, 0, 0);\n}\n\n:host .menu-item {\n color: var(--color-on-background);\n position: relative;\n}\n:host .menu-item:before {\n content: \"\";\n display: block;\n height: 100%;\n width: 2px;\n background-color: transparent;\n position: absolute;\n}\n:host .menu-item__container {\n height: var(--spacing-comp-06);\n background-color: transparent;\n cursor: pointer;\n padding: 0 var(--spacing-comp-05) 0 var(--spacing-comp-05);\n display: flex;\n align-items: center;\n}\n:host .menu-item__container:hover {\n background-color: var(--gray-02);\n}\n:host .menu-item gxg-icon {\n margin-right: var(--spacing-comp-01);\n}\n:host :menu-item--tab {\n font-weight: var(--font-weight-semibold);\n}\n\n:host([active]) .menu-item:before {\n background-color: var(--gray-03);\n}","import { h, Host } from \"@stencil/core\";\nexport class GxgMenuItem {\n constructor() {\n this.label = undefined;\n this.icon = null;\n this.active = false;\n }\n //A reference to the input\n listItem;\n // Event called 'todoCompleted' that is \"composed\", \"cancellable\" and it will bubble up!\n menuItemActive;\n includeIcon() {\n if (this.icon !== null) {\n return h(\"gxg-icon\", { slot: \"icon\", type: this.icon, size: \"small\" });\n }\n }\n setActive() {\n this.menuItemActive.emit(this.label);\n }\n render() {\n return (h(Host, null, h(\"li\", { class: \"menu-item\", ref: el => (this.listItem = el), onClick: this.setActive.bind(this) }, h(\"div\", { class: \"menu-item__container\" }, this.includeIcon(), this.label))));\n }\n static get is() { return \"gxg-menu-item\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"menu-item.scss\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"menu-item.css\"]\n };\n }\n static get properties() {\n return {\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"icon\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\"\n },\n \"attribute\": \"icon\",\n \"reflect\": false,\n \"defaultValue\": \"null\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\"\n },\n \"attribute\": \"active\",\n \"reflect\": true,\n \"defaultValue\": \"false\"\n }\n };\n }\n static get events() {\n return [{\n \"method\": \"menuItemActive\",\n \"name\": \"menuItemActive\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"any\",\n \"resolved\": \"any\",\n \"references\": {}\n }\n }];\n }\n}\n//# sourceMappingURL=menu-item.js.map\n"],"version":3}
@@ -1,7 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
  import { s as state } from './store.js';
3
3
 
4
- const pillsCss = ":host{display:block}.pills-wrapper{display:flex;gap:var(--spacing-comp-02);flex-wrap:wrap}:host(.mercury) .pills-wrapper{gap:var(--spacing-comp-04)}";
4
+ const pillsCss = ":host{display:block}.pills-wrapper{display:flex;gap:var(--gxg-pills__gap);flex-wrap:wrap}";
5
5
 
6
6
  const GxgPills$1 = /*@__PURE__*/ proxyCustomElement(class GxgPills extends HTMLElement {
7
7
  constructor() {
@@ -1 +1 @@
1
- {"file":"gxg-pills.js","mappings":";;;AAAA,MAAM,QAAQ,GAAG,sJAAsJ;;MCE1JA,UAAQ;;;;;;;;;;IAKjB,MAAM,QAAQ,CAAC,WAAW,GAAG,IAAI;QAC7B,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QAC7D,IAAI,WAAW,EAAE;YACb,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAClD;QACD,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI;YACf,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC1B,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;KACnB;IACD,MAAM;QACF,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;KAClH;;;;;;;;;;;;;;;;;;;;;;;;","names":["GxgPills"],"sources":["node_modules/@genexus/gemini/dist/collection/components/pills/pills.css?tag=gxg-pills&encapsulation=shadow","node_modules/@genexus/gemini/dist/collection/components/pills/pills.js"],"sourcesContent":[":host {\n display: block;\n}\n\n.pills-wrapper {\n display: flex;\n gap: var(--spacing-comp-02);\n flex-wrap: wrap;\n}\n\n/*********************************************\nMercury\n**********************************************/\n:host(.mercury) .pills-wrapper {\n gap: var(--spacing-comp-04);\n}","import { Host, h } from \"@stencil/core\";\nimport state from \"../store\";\nexport class GxgPills {\n el;\n /**\n * Returns an array with the id's of all the pills\n */\n async getPills(onlyEnabled = true) {\n const pillsIds = [];\n let pills = Array.from(this.el.querySelectorAll(\"gxg-pill\"));\n if (onlyEnabled) {\n pills = pills.filter((pill) => !pill.disabled);\n }\n pills.forEach((pill) => {\n pillsIds.push(pill.id);\n });\n return pillsIds;\n }\n render() {\n return (h(Host, { class: { mercury: state.mercury } }, h(\"div\", { class: \"pills-wrapper\" }, h(\"slot\", null))));\n }\n static get is() { return \"gxg-pills\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"pills.scss\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"pills.css\"]\n };\n }\n static get methods() {\n return {\n \"getPills\": {\n \"complexType\": {\n \"signature\": \"(onlyEnabled?: boolean) => Promise<string[]>\",\n \"parameters\": [{\n \"name\": \"onlyEnabled\",\n \"type\": \"boolean\",\n \"docs\": \"\"\n }],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<string[]>\"\n },\n \"docs\": {\n \"text\": \"Returns an array with the id's of all the pills\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n}\n//# sourceMappingURL=pills.js.map\n"],"version":3}
1
+ {"file":"gxg-pills.js","mappings":";;;AAAA,MAAM,QAAQ,GAAG,2FAA2F;;MCE/FA,UAAQ;;;;;;;;;;IAKjB,MAAM,QAAQ,CAAC,WAAW,GAAG,IAAI;QAC7B,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QAC7D,IAAI,WAAW,EAAE;YACb,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAClD;QACD,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI;YACf,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC1B,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;KACnB;IACD,MAAM;QACF,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;KAClH;;;;;;;;;;;;;;;;;;;;;;;;","names":["GxgPills"],"sources":["node_modules/@genexus/gemini/dist/collection/components/pills/pills.css?tag=gxg-pills&encapsulation=shadow","node_modules/@genexus/gemini/dist/collection/components/pills/pills.js"],"sourcesContent":[":host {\n display: block;\n}\n\n.pills-wrapper {\n display: flex;\n gap: var(--gxg-pills__gap);\n flex-wrap: wrap;\n}","import { Host, h } from \"@stencil/core\";\nimport state from \"../store\";\nexport class GxgPills {\n el;\n /**\n * Returns an array with the id's of all the pills\n */\n async getPills(onlyEnabled = true) {\n const pillsIds = [];\n let pills = Array.from(this.el.querySelectorAll(\"gxg-pill\"));\n if (onlyEnabled) {\n pills = pills.filter((pill) => !pill.disabled);\n }\n pills.forEach((pill) => {\n pillsIds.push(pill.id);\n });\n return pillsIds;\n }\n render() {\n return (h(Host, { class: { mercury: state.mercury } }, h(\"div\", { class: \"pills-wrapper\" }, h(\"slot\", null))));\n }\n static get is() { return \"gxg-pills\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"pills.scss\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"pills.css\"]\n };\n }\n static get methods() {\n return {\n \"getPills\": {\n \"complexType\": {\n \"signature\": \"(onlyEnabled?: boolean) => Promise<string[]>\",\n \"parameters\": [{\n \"name\": \"onlyEnabled\",\n \"type\": \"boolean\",\n \"docs\": \"\"\n }],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<string[]>\"\n },\n \"docs\": {\n \"text\": \"Returns an array with the id's of all the pills\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n}\n//# sourceMappingURL=pills.js.map\n"],"version":3}
@@ -2,18 +2,32 @@ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal
2
2
  import { d as defineCustomElement$2 } from './icon.js';
3
3
  import { d as defineCustomElement$1 } from './icon2.js';
4
4
 
5
- const gxgTopStateBarCss = ":host{--top-bar-progress:0%;display:grid;grid-template-rows:0fr;transition:200ms grid-template-rows}:host>*{overflow:hidden}:host(.visible){grid-template-rows:1fr}.top-state-bar{}.top-state-bar__wrapper{padding:0 var(--mer-spacing--md);display:flex;justify-content:center;align-items:center;height:var(--mer-spacing--xxl)}.top-state-bar__caption{opacity:0;transition:150ms opacity;color:var(--mer-text__on-message);font-family:var(--ds-base-font-family-primary);font-size:var(--mer-font__size--sm);font-weight:var(--mer-font__weight--semi-bold)}.top-state-bar__caption--visible{opacity:1}.top-state-bar__close{opacity:0;transition:200ms opacity;cursor:pointer}.top-state-bar__close:hover{opacity:0.75}.top-state-bar__close--visible{opacity:1}.top-state-bar--accent .top-state-bar__wrapper{background-color:var(--mer-accent__primary);color:var(--mer-text__on-primary)}.top-state-bar--success .top-state-bar__wrapper{background-color:var(--mer-color__message-green--100)}.top-state-bar--warning .top-state-bar__wrapper{background-color:var(--mer-color__message-yellow--100)}.top-state-bar--error .top-state-bar__wrapper{background-color:var(--mer-color__message-red--100)}.top-state-bar--in-progress .top-state-bar__wrapper{position:relative;overflow:hidden;z-index:1}.top-state-bar--in-progress .top-state-bar__wrapper:after{content:\"\";position:absolute;z-index:0;width:300%;height:100%;left:0;background:linear-gradient(90deg, #93f5eb 0%, #1aa3ff 33%, #93f5eb 66%, #1aa3ff 100%);animation-name:inProgress;animation-duration:2s;animation-iteration-count:infinite}.top-state-bar--in-progress .top-state-bar__caption{display:flex;align-items:center;flex-direction:column;position:relative;z-index:2}.top-state-bar--with-action .top-state-bar__caption{flex:1;text-align:center}.top-state-bar--with-action .top-state-bar__wrapper{padding-inline-end:var(--mer-spacing--xxs)}@-webkit-keyframes inProgress{0%{left:0%}100%{left:-200%}}@-moz-keyframes inProgress{0%{left:0%}100%{left:200%}}@keyframes inProgress{0%{left:0%}100%{left:-200%}}.progress-bar{transition:all 200ms;width:var(--top-bar-progress);background-color:var(--mer-accent__primary);height:var(--mer-spacing--xxs)}.progress-bar--hidden{height:0}";
5
+ const gxgTopStateBarCss = ":host{--top-bar-progress:0%;display:grid;grid-template-rows:0fr;transition:200ms grid-template-rows}:host>*{overflow:hidden}:host(.visible){grid-template-rows:1fr}.top-state-bar{position:relative;border-radius:var(--mer-border__width--lg);list-style:var(--mer-font__size--xxs);display:flex;opacity:0;transition:150ms opacity;}.top-state-bar:before{content:\"\";width:100%;height:100%;position:absolute;background-color:var(--mer-color__elevation--04);z-index:-1}.top-state-bar:after{content:\"\";left:var(--mer-border__width--sm);top:var(--mer-border__width--sm);width:calc(100% - var(--mer-border__width--sm) * 2);height:calc(100% - var(--mer-border__width--sm) * 2);position:absolute;background-color:var(--mer-color__surface);z-index:0;border-radius:var(--mer-border__width--lg)}.top-state-bar>*{position:relative;z-index:1}.top-state-bar__wrapper{flex:1;display:flex;flex-direction:column;gap:var(--mer-spacing--xs);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.top-state-bar__caption{color:var(--mer-text__on-message);font-family:var(--ds-base-font-family-primary);font-size:var(--mer-font__size--xxs);line-height:var(--mer-font__size--xxs);font-weight:var(--mer-font__weight--regular);display:flex;align-items:baseline;font-style:italic}.top-state-bar__progress-wrapper{height:var(--mer-spacing--xxs);background-color:var(--mer-color__elevation--04)}.top-state-bar__close-wrapper{cursor:pointer;border-inline-start:1px solid var(--mer-color__elevation--04);display:flex;align-items:center;transition:200ms background-color}.top-state-bar__close-wrapper:hover .top-state-bar__close{opacity:0.75}.top-state-bar__close-wrapper:active .top-state-bar__close{opacity:0.5}.top-state-bar--accent .progress-bar{background-color:var(--mer-accent__primary)}.top-state-bar--accent .top-state-bar__caption{color:var(--mer-accent__primary)}.top-state-bar--success .progress-bar{background-color:var(--mer-color__message-green--100)}.top-state-bar--success .top-state-bar__caption{color:var(--mer-color__message-green--100)}.top-state-bar--warning .progress-bar{background-color:var(--mer-color__message-yellow--100)}.top-state-bar--warning .top-state-bar__caption{color:var(--mer-color__message-yellow--100)}.top-state-bar--error .progress-bar{background-color:var(--mer-color__message-red--100)}.top-state-bar--error .top-state-bar__caption{color:var(--mer-color__message-red--100)}.top-state-bar--in-progress:before{height:0;width:120%;padding-top:60%;padding-bottom:60%;background:linear-gradient(90deg, #5ba7ff 0%, #3fa89b 100%);top:50%;left:50%;transform:translate(-50%, -50%);-webkit-animation:inProgressBackgroundColor 1s linear infinite;animation:inProgressBackgroundColor 1s linear infinite}.top-state-bar--in-progress .top-state-bar__close-wrapper{border-inline-start-color:#3fa89b;-webkit-animation:inProgressBorderColor 1s linear infinite;animation:inProgressBorderColor 1s linear infinite}.top-state-bar--in-progress .progress-bar{position:relative;overflow:hidden;z-index:1}.top-state-bar--in-progress .progress-bar:after{content:\"\";position:absolute;z-index:0;width:300%;height:100%;left:0;background:linear-gradient(90deg, #93f5eb 0%, #1aa3ff 33%, #93f5eb 66%, #1aa3ff 100%);animation-name:inProgressBar;animation-duration:2s;animation-iteration-count:infinite}.top-state-bar--in-progress .top-state-bar__caption{color:#3fa89b}.top-state-bar--visible{opacity:1}@-webkit-keyframes inProgressBorderColor{0%{border-inline-start-color:#3fa89b}100%{border-inline-start-color:#5ba7ff}}@-webkit-keyframes inProgressBackgroundColor{0%{transform:translate(-50%, -50%) rotate(0)}100%{transform:translate(-50%, -50%) rotate(1turn)}}@-webkit-keyframes inProgressBar{0%{left:0%}100%{left:-200%}}@-moz-keyframes inProgressBar{0%{left:0%}100%{left:200%}}@keyframes inProgressBar{0%{left:0%}100%{left:-200%}}.progress-bar{display:block;transition:all 200ms;width:var(--top-bar-progress);border-radius:calc(var(--mer-spacing--xxs) / 2);height:100%}:host([no-border]) .top-state-bar{position:relative}:host([no-border]) .top-state-bar:before,:host([no-border]) .top-state-bar:after{display:none}:host([no-border]) .top-state-bar__close-wrapper{border-inline-start:none}";
6
6
 
7
7
  const GxgTopStateBar = /*@__PURE__*/ proxyCustomElement(class GxgTopStateBar extends HTMLElement {
8
8
  constructor() {
9
9
  // 7.LISTENERS //
10
10
  // 8.PUBLIC METHODS API //
11
11
  // 9.LOCAL METHODS //
12
+ this.evaluateInitialProgress = () => {
13
+ if (this.progress === undefined &&
14
+ (this.stateType === "error" ||
15
+ this.stateType === "warning" ||
16
+ this.stateType === "success")) {
17
+ this.progress = 100;
18
+ }
19
+ else if (this.progress === undefined &&
20
+ this.stateType === "in-progress") {
21
+ this.progress = 0;
22
+ }
23
+ this.el.style.setProperty("--top-bar-progress", `${this.progress}%`);
24
+ };
12
25
  this.evaluateWithAction = () => {
13
- if (this.stateType === "error" ||
14
- this.stateType === "warning" ||
15
- this.stateType === "success") {
16
- this.stateWithAction = true;
26
+ if (this.withClose === undefined &&
27
+ (this.stateType === "error" ||
28
+ this.stateType === "warning" ||
29
+ this.stateType === "success")) {
30
+ this.withClose = true;
17
31
  }
18
32
  };
19
33
  this.closeButtonHandler = () => {
@@ -22,30 +36,31 @@ const GxgTopStateBar = /*@__PURE__*/ proxyCustomElement(class GxgTopStateBar ext
22
36
  super();
23
37
  this.__registerHost();
24
38
  this.__attachShadow();
25
- this.stateWithAction = false;
26
- this.captionVisible = false;
39
+ this.topStateBarVisible = false;
27
40
  this.visible = false;
28
41
  this.caption = undefined;
42
+ this.minimal = false;
29
43
  this.active = false;
30
44
  this.stateType = "in-progress";
31
- this.withProgressBar = false;
32
- this.progress = 0;
45
+ this.progress = undefined;
46
+ this.withClose = undefined;
33
47
  this.autoClose = false;
48
+ this.noBorder = false;
49
+ this.closedCallback = false;
34
50
  }
35
51
  get el() { return this; }
36
52
  watchActiveHandler(active) {
37
53
  if (active) {
38
54
  this.visible = true;
39
55
  setTimeout(() => {
40
- this.captionVisible = true;
56
+ this.topStateBarVisible = true;
41
57
  }, 300);
42
58
  }
43
59
  else {
44
- this.captionVisible = false;
60
+ this.topStateBarVisible = false;
45
61
  setTimeout(() => {
46
62
  this.visible = false;
47
63
  }, 300);
48
- this.progress = 0;
49
64
  }
50
65
  }
51
66
  watchStateTypeHandler() {
@@ -56,16 +71,19 @@ const GxgTopStateBar = /*@__PURE__*/ proxyCustomElement(class GxgTopStateBar ext
56
71
  this.el.style.setProperty("--top-bar-progress", `${progress}%`);
57
72
  }
58
73
  if (progress === 100 && this.autoClose) {
59
- this.active = false;
74
+ setTimeout(() => {
75
+ this.active = false;
76
+ }, 200);
60
77
  }
61
78
  }
62
79
  // 5.EVENTS (EMIT) //
63
80
  // 6.COMPONENT LIFECYCLE EVENTS //
64
81
  componentWillLoad() {
65
82
  this.evaluateWithAction();
83
+ this.evaluateInitialProgress();
66
84
  if (this.active) {
67
85
  this.visible = true;
68
- this.captionVisible = true;
86
+ this.topStateBarVisible = true;
69
87
  }
70
88
  }
71
89
  // 10.RENDER() FUNCTION //
@@ -73,19 +91,15 @@ const GxgTopStateBar = /*@__PURE__*/ proxyCustomElement(class GxgTopStateBar ext
73
91
  return (h(Host, { class: { visible: this.visible }, "aria-hidden": !this.active }, h("div", { role: "status", "aria-labelledby": "label", "aria-hidden": !this.active, class: {
74
92
  "top-state-bar": true,
75
93
  [`top-state-bar--${this.stateType}`]: true,
76
- "top-state-bar--with-action": this.stateWithAction
77
- } }, h("div", { class: {
78
- "top-state-bar__wrapper": true
79
- }, part: "wrapper" }, h("label", { id: "label", class: {
80
- "top-state-bar__caption": true,
81
- "top-state-bar__caption--visible": this.captionVisible
82
- }, part: "label" }, this.caption), this.stateWithAction ? (h("gxg-icon", { class: {
83
- "top-state-bar__close": true,
84
- "top-state-bar__close--visible": this.captionVisible
85
- }, role: "button", "aria-label": "close", type: "gemini-tools/close", color: "mercury-text-on-message", tabIndex: 0, onClick: this.closeButtonHandler })) : null), this.withProgressBar ? (h("div", { class: {
86
- "progress-bar": true,
87
- "progress-bar--hidden": this.progress === 0 || this.progress === 100
88
- } })) : null)));
94
+ "top-state-bar--with-close": this.withClose,
95
+ "top-state-bar--visible": this.topStateBarVisible
96
+ } }, h("div", { class: "top-state-bar__wrapper" }, !this.minimal ? (h("label", { id: "label", class: {
97
+ "top-state-bar__caption": true
98
+ }, part: "label" }, this.caption)) : null, h("div", { class: {
99
+ "top-state-bar__progress-wrapper": true
100
+ }, part: "progress-wrapper" }, h("span", { class: "progress-bar" }))), this.withClose && !this.minimal ? (h("div", { class: "top-state-bar__close-wrapper", onClick: this.closeButtonHandler }, h("gxg-icon", { class: {
101
+ "top-state-bar__close": true
102
+ }, role: "button", "aria-label": "close", type: "gemini-tools/close", color: "mercury-primary", tabIndex: 0 }))) : null)));
89
103
  }
90
104
  static get watchers() { return {
91
105
  "active": ["watchActiveHandler"],
@@ -95,13 +109,15 @@ const GxgTopStateBar = /*@__PURE__*/ proxyCustomElement(class GxgTopStateBar ext
95
109
  static get style() { return gxgTopStateBarCss; }
96
110
  }, [1, "gxg-top-state-bar", {
97
111
  "caption": [1],
112
+ "minimal": [516],
98
113
  "active": [4],
99
114
  "stateType": [513, "state-type"],
100
- "withProgressBar": [4, "with-progress-bar"],
101
115
  "progress": [2],
116
+ "withClose": [4, "with-close"],
102
117
  "autoClose": [4, "auto-close"],
103
- "stateWithAction": [32],
104
- "captionVisible": [32],
118
+ "noBorder": [516, "no-border"],
119
+ "closedCallback": [516, "closed-callback"],
120
+ "topStateBarVisible": [32],
105
121
  "visible": [32]
106
122
  }, undefined, {
107
123
  "active": ["watchActiveHandler"],