@prolibu-suite/cobalt-core 0.9.6 → 0.10.0

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 (611) hide show
  1. package/custom-elements.json +750 -80
  2. package/dist/cjs/co-accordion.cjs.entry.js +1 -1
  3. package/dist/cjs/co-action-bar.cjs.entry.js +1 -1
  4. package/dist/cjs/co-app-shell.cjs.entry.js +4 -4
  5. package/dist/cjs/co-audio-player.cjs.entry.js +1 -1
  6. package/dist/cjs/co-autocomplete.cjs.entry.js +2 -2
  7. package/dist/cjs/co-avatar-group.cjs.entry.js +1 -1
  8. package/dist/cjs/co-avatar_2.cjs.entry.js +49 -17
  9. package/dist/cjs/co-badge.cjs.entry.js +11 -3
  10. package/dist/cjs/co-bottom-sheet.cjs.entry.js +1 -1
  11. package/dist/cjs/co-breadcrumb-item.cjs.entry.js +1 -1
  12. package/dist/cjs/co-breadcrumb.cjs.entry.js +1 -1
  13. package/dist/cjs/co-button-group.cjs.entry.js +1 -1
  14. package/dist/cjs/co-button.cjs.entry.js +2 -2
  15. package/dist/cjs/co-calendar-month_2.cjs.entry.js +55 -20
  16. package/dist/cjs/co-calendar_3.cjs.entry.js +27 -15
  17. package/dist/cjs/co-card.cjs.entry.js +1 -1
  18. package/dist/cjs/co-carousel-item.cjs.entry.js +1 -1
  19. package/dist/cjs/co-carousel.cjs.entry.js +2 -2
  20. package/dist/cjs/co-checkbox-group.cjs.entry.js +2 -2
  21. package/dist/cjs/co-checkbox.cjs.entry.js +6 -6
  22. package/dist/cjs/co-chip_2.cjs.entry.js +8 -5
  23. package/dist/cjs/co-color-picker.cjs.entry.js +1048 -27
  24. package/dist/cjs/co-column-picker.cjs.entry.js +3 -3
  25. package/dist/cjs/co-combobox.cjs.entry.js +2 -2
  26. package/dist/cjs/co-command-search.cjs.entry.js +1 -1
  27. package/dist/cjs/co-data-table-pagination.cjs.entry.js +5 -5
  28. package/dist/cjs/co-data-table.cjs.entry.js +1 -1
  29. package/dist/cjs/co-date-picker.cjs.entry.js +3 -3
  30. package/dist/cjs/co-date-range-picker.cjs.entry.js +3 -3
  31. package/dist/cjs/co-date-range.cjs.entry.js +2 -2
  32. package/dist/cjs/co-date-time-picker.cjs.entry.js +101 -130
  33. package/dist/cjs/co-drive-card.cjs.entry.js +2 -2
  34. package/dist/cjs/co-drop-zone.cjs.entry.js +2 -2
  35. package/dist/cjs/co-emoji-picker.cjs.entry.js +4 -4
  36. package/dist/cjs/co-empty-state.cjs.entry.js +4 -4
  37. package/dist/cjs/co-event-calendar.cjs.entry.js +4 -4
  38. package/dist/cjs/co-event-popover.cjs.entry.js +3 -3
  39. package/dist/cjs/co-fab.cjs.entry.js +3 -3
  40. package/dist/cjs/co-file-field.cjs.entry.js +102 -106
  41. package/dist/cjs/co-file-type-tile.cjs.entry.js +3 -3
  42. package/dist/cjs/co-helper-text.cjs.entry.js +3 -3
  43. package/dist/cjs/co-icon-button.cjs.entry.js +6 -6
  44. package/dist/cjs/co-icon.cjs.entry.js +3 -3
  45. package/dist/cjs/co-input.cjs.entry.js +26 -4
  46. package/dist/cjs/co-json-field.cjs.entry.js +5 -5
  47. package/dist/cjs/co-lightbox.cjs.entry.js +204 -21
  48. package/dist/cjs/co-list-footer.cjs.entry.js +2 -2
  49. package/dist/cjs/co-list-item.cjs.entry.js +5 -5
  50. package/dist/cjs/co-loader.cjs.entry.js +1 -1
  51. package/dist/cjs/co-media-thumb.cjs.entry.js +3 -3
  52. package/dist/cjs/co-menu-divider.cjs.entry.js +2 -2
  53. package/dist/cjs/co-menu-item.cjs.entry.js +84 -3
  54. package/dist/cjs/co-menu.cjs.entry.js +2 -2
  55. package/dist/cjs/co-modal.cjs.entry.js +6 -4
  56. package/dist/cjs/co-navbar.cjs.entry.js +4 -4
  57. package/dist/cjs/co-number-field.cjs.entry.js +272 -9
  58. package/dist/cjs/co-overlay.cjs.entry.js +6 -4
  59. package/dist/cjs/co-page-header.cjs.entry.js +2 -2
  60. package/dist/cjs/co-phone-field.cjs.entry.js +3 -3
  61. package/dist/cjs/co-popover.cjs.entry.js +58 -21
  62. package/dist/cjs/co-progress-bar.cjs.entry.js +3 -3
  63. package/dist/cjs/co-progress-circle.cjs.entry.js +3 -3
  64. package/dist/cjs/co-provider-logo_2.cjs.entry.js +47 -3
  65. package/dist/cjs/co-radio-group.cjs.entry.js +1 -1
  66. package/dist/cjs/co-radio.cjs.entry.js +4 -4
  67. package/dist/cjs/co-rating.cjs.entry.js +4 -4
  68. package/dist/cjs/co-ref-field.cjs.entry.js +4 -4
  69. package/dist/cjs/co-rich-text-editor.cjs.entry.js +11 -8
  70. package/dist/cjs/co-rich-text-toolbar.cjs.entry.js +7 -3
  71. package/dist/cjs/co-rich-text-viewer.cjs.entry.js +4 -3
  72. package/dist/cjs/co-row.cjs.entry.js +3 -3
  73. package/dist/cjs/co-segmented-bar.cjs.entry.js +1 -1
  74. package/dist/cjs/co-select.cjs.entry.js +2 -2
  75. package/dist/cjs/co-separator.cjs.entry.js +2 -2
  76. package/dist/cjs/co-sidebar-nav.cjs.entry.js +2 -2
  77. package/dist/cjs/co-sidebar.cjs.entry.js +3 -3
  78. package/dist/cjs/co-slider.cjs.entry.js +3 -3
  79. package/dist/cjs/co-switch.cjs.entry.js +6 -6
  80. package/dist/cjs/co-tab-group.cjs.entry.js +3 -3
  81. package/dist/cjs/co-tab.cjs.entry.js +3 -3
  82. package/dist/cjs/co-tags-field.cjs.entry.js +8 -8
  83. package/dist/cjs/co-textarea.cjs.entry.js +6 -6
  84. package/dist/cjs/co-time-field.cjs.entry.js +325 -0
  85. package/dist/cjs/co-toast.cjs.entry.js +2 -2
  86. package/dist/cjs/co-toggle-button-group.cjs.entry.js +4 -4
  87. package/dist/cjs/co-toggle-button.cjs.entry.js +4 -4
  88. package/dist/cjs/co-transfer-list.cjs.entry.js +1 -1
  89. package/dist/cjs/co-video.cjs.entry.js +32 -7
  90. package/dist/cjs/cobalt.cjs.js +2 -2
  91. package/dist/cjs/color-CML2Cfdh.js +142 -0
  92. package/dist/cjs/{dateI18n-wblvKRq_.js → dateI18n-BK2qHqoC.js} +36 -0
  93. package/dist/cjs/{fieldChip-BLzo9MEV.js → fieldChip-B6YIGU1V.js} +1 -1
  94. package/dist/cjs/fileI18n-6sdbKvo6.js +88 -0
  95. package/dist/cjs/{index-DFZ5YhIT.js → index-BYwrR87Z.js} +28 -10
  96. package/dist/cjs/{index-DK-2Lzmf.js → index-MDAnKsze.js} +25 -21
  97. package/dist/cjs/loader.cjs.js +2 -2
  98. package/dist/cjs/{positioning-DCj_AJ2T.js → positioning-CyatXeT_.js} +32 -13
  99. package/dist/cjs/{requiredMark-C1xcrzSZ.js → requiredMark-D-t-IPN0.js} +1 -1
  100. package/dist/cjs/{toolbar-config-BQfWTW6P.js → toolbar-config-BSGas-Wl.js} +10 -0
  101. package/dist/cobalt/cobalt.css +1 -1
  102. package/dist/cobalt/cobalt.esm.js +1 -1
  103. package/dist/cobalt/{p-f83b48fd.entry.js → p-011dc80b.entry.js} +1 -1
  104. package/dist/cobalt/{p-316c62c0.entry.js → p-0678c797.entry.js} +1 -1
  105. package/dist/cobalt/{p-43bd298d.entry.js → p-08e42e00.entry.js} +1 -1
  106. package/dist/cobalt/{p-1c68bc41.entry.js → p-10b82207.entry.js} +1 -1
  107. package/dist/cobalt/{p-a8c64cc3.entry.js → p-15d59169.entry.js} +1 -1
  108. package/dist/cobalt/{p-07d570a6.entry.js → p-16954cea.entry.js} +1 -1
  109. package/dist/cobalt/{p-85a61e28.entry.js → p-17244412.entry.js} +1 -1
  110. package/dist/cobalt/p-1788aab5.entry.js +1 -0
  111. package/dist/cobalt/p-1a589c8e.entry.js +1 -0
  112. package/dist/cobalt/{p-da546d08.entry.js → p-1dc55e43.entry.js} +1 -1
  113. package/dist/cobalt/p-20a39218.entry.js +1 -0
  114. package/dist/cobalt/{p-4c7e3984.entry.js → p-23ab0cc5.entry.js} +1 -1
  115. package/dist/cobalt/{p-fabe5fb2.entry.js → p-2636b7eb.entry.js} +1 -1
  116. package/dist/cobalt/{p-88a0659f.entry.js → p-27a7e549.entry.js} +1 -1
  117. package/dist/cobalt/{p-18d34b01.entry.js → p-290066ef.entry.js} +1 -1
  118. package/dist/cobalt/{p-89e38c5e.entry.js → p-2f9cbbd5.entry.js} +1 -1
  119. package/dist/cobalt/{p-ef5e1167.entry.js → p-325b91b6.entry.js} +1 -1
  120. package/dist/cobalt/{p-60cb66f5.entry.js → p-37f5036b.entry.js} +1 -1
  121. package/dist/cobalt/p-3cc3ff93.entry.js +1 -0
  122. package/dist/cobalt/p-410bee4d.entry.js +1 -0
  123. package/dist/cobalt/{p-6795a258.entry.js → p-44c4e4a3.entry.js} +1 -1
  124. package/dist/cobalt/{p-4b083da4.entry.js → p-44ea675f.entry.js} +1 -1
  125. package/dist/cobalt/{p-2828ecf6.entry.js → p-4592ca00.entry.js} +1 -1
  126. package/dist/cobalt/p-4908f33f.entry.js +1 -0
  127. package/dist/cobalt/{p-342e1da4.entry.js → p-4d65e713.entry.js} +1 -1
  128. package/dist/cobalt/{p-dca4cd5f.entry.js → p-4d897896.entry.js} +1 -1
  129. package/dist/cobalt/{p-33ea4a90.entry.js → p-50bcc76f.entry.js} +1 -1
  130. package/dist/cobalt/{p-ac91259e.entry.js → p-5298c030.entry.js} +1 -1
  131. package/dist/cobalt/p-54c987d7.entry.js +1 -0
  132. package/dist/cobalt/p-56551580.entry.js +1 -0
  133. package/dist/cobalt/p-58137c9e.entry.js +1 -0
  134. package/dist/cobalt/{p-4f754c9a.entry.js → p-58d9b650.entry.js} +1 -1
  135. package/dist/cobalt/p-59963937.entry.js +1 -0
  136. package/dist/cobalt/{p-2d329ac8.entry.js → p-623cc195.entry.js} +1 -1
  137. package/dist/cobalt/p-63825d7f.entry.js +1 -0
  138. package/dist/cobalt/{p-8e667eb6.entry.js → p-66b11b38.entry.js} +1 -1
  139. package/dist/cobalt/{p-fb3a095b.entry.js → p-6bf6bc3e.entry.js} +1 -1
  140. package/dist/cobalt/p-6f700f0d.entry.js +1 -0
  141. package/dist/cobalt/p-73c6d735.entry.js +1 -0
  142. package/dist/cobalt/{p-a6357340.entry.js → p-76249983.entry.js} +1 -1
  143. package/dist/cobalt/{p-bfc2a849.entry.js → p-82266f11.entry.js} +1 -1
  144. package/dist/cobalt/{p-a9b29cc2.entry.js → p-826ee074.entry.js} +1 -1
  145. package/dist/cobalt/{p-23b3ff3f.entry.js → p-83a9a05a.entry.js} +1 -1
  146. package/dist/cobalt/{p-568cfe8d.entry.js → p-83ea631d.entry.js} +1 -1
  147. package/dist/cobalt/p-85501c6a.entry.js +1 -0
  148. package/dist/cobalt/{p-dfd25f1d.entry.js → p-88195a63.entry.js} +1 -1
  149. package/dist/cobalt/p-8fa5dc4a.entry.js +1 -0
  150. package/dist/cobalt/{p-c8dba82f.entry.js → p-91e73a92.entry.js} +1 -1
  151. package/dist/cobalt/{p-ac466658.entry.js → p-92b092db.entry.js} +1 -1
  152. package/dist/cobalt/{p-36197363.entry.js → p-996f4e38.entry.js} +1 -1
  153. package/dist/cobalt/p-BRbgGqLw.js +1 -0
  154. package/dist/cobalt/{p-BL0sCfMH.js → p-Bryf3-Js.js} +1 -1
  155. package/dist/cobalt/p-DFHRS9cJ.js +1 -0
  156. package/dist/cobalt/{p-CrtiywTB.js → p-DH5lfRNj.js} +1 -1
  157. package/dist/{components/p-WeuPA9Rw.js → cobalt/p-DOL2zACE.js} +1 -1
  158. package/dist/cobalt/p-D_zA1Pv4.js +1 -0
  159. package/dist/cobalt/{p-fef5db54.entry.js → p-a32b20eb.entry.js} +1 -1
  160. package/dist/cobalt/p-aa9400bf.entry.js +1 -0
  161. package/dist/cobalt/{p-8eb485c8.entry.js → p-aaca6dab.entry.js} +1 -1
  162. package/dist/cobalt/{p-e5495539.entry.js → p-aae86f96.entry.js} +1 -1
  163. package/dist/cobalt/{p-8f38e24d.entry.js → p-ad33c40e.entry.js} +1 -1
  164. package/dist/cobalt/p-b0c4fc71.entry.js +1 -0
  165. package/dist/cobalt/{p-da18b5f4.entry.js → p-b1e8d69e.entry.js} +1 -1
  166. package/dist/cobalt/p-b48917c9.entry.js +1 -0
  167. package/dist/cobalt/{p-7e53e9c8.entry.js → p-b565104d.entry.js} +1 -1
  168. package/dist/cobalt/{p-b0319a2d.entry.js → p-b90d41e4.entry.js} +1 -1
  169. package/dist/cobalt/{p-c5684c79.entry.js → p-bd683db3.entry.js} +1 -1
  170. package/dist/cobalt/{p-1ddbc48b.entry.js → p-c124e82b.entry.js} +1 -1
  171. package/dist/cobalt/{p-95efe661.entry.js → p-c2ebf0ec.entry.js} +1 -1
  172. package/dist/cobalt/{p-76420ac1.entry.js → p-c32c176a.entry.js} +1 -1
  173. package/dist/cobalt/{p-54ae807d.entry.js → p-c465d619.entry.js} +1 -1
  174. package/dist/cobalt/{p-ab45d9bd.entry.js → p-c91d4fc6.entry.js} +1 -1
  175. package/dist/cobalt/{p-ce35c898.entry.js → p-d29bb0fa.entry.js} +1 -1
  176. package/dist/cobalt/{p-7c5e846a.entry.js → p-db805569.entry.js} +1 -1
  177. package/dist/cobalt/p-e01f9b9a.entry.js +1 -0
  178. package/dist/cobalt/p-e3aae282.entry.js +1 -0
  179. package/dist/cobalt/{p-d15d3a97.entry.js → p-e4264532.entry.js} +1 -1
  180. package/dist/cobalt/{p-93c68029.entry.js → p-e48f4e45.entry.js} +1 -1
  181. package/dist/cobalt/{p-3f0eed59.entry.js → p-e49a564c.entry.js} +1 -1
  182. package/dist/cobalt/p-e8a2f993.entry.js +1 -0
  183. package/dist/cobalt/p-e8a4e6b0.entry.js +1 -0
  184. package/dist/cobalt/p-ea20f048.entry.js +1 -0
  185. package/dist/cobalt/{p-c1e7fb32.entry.js → p-eb063cc0.entry.js} +1 -1
  186. package/dist/cobalt/p-eb82358d.entry.js +1 -0
  187. package/dist/cobalt/{p-2114c036.entry.js → p-eb8691f2.entry.js} +1 -1
  188. package/dist/cobalt/{p-e8878cf9.entry.js → p-ee2023da.entry.js} +1 -1
  189. package/dist/cobalt/p-ee9a623d.entry.js +1 -0
  190. package/dist/cobalt/p-ef5ca521.entry.js +1 -0
  191. package/dist/cobalt/p-f4e1c3c3.entry.js +1 -0
  192. package/dist/cobalt/{p-e364b8a5.entry.js → p-f57dffca.entry.js} +1 -1
  193. package/dist/cobalt/p-f6691108.entry.js +1 -0
  194. package/dist/cobalt/p-f68dd124.entry.js +1 -0
  195. package/dist/cobalt/p-fMqVDypp.js +1 -0
  196. package/dist/cobalt/{p-0c463d9a.entry.js → p-fd150cc6.entry.js} +1 -1
  197. package/dist/cobalt/{p-0e91e5c4.entry.js → p-fe7e8813.entry.js} +1 -1
  198. package/dist/cobalt/p-gKnOhsd2.js +1 -0
  199. package/dist/cobalt/p-jYd9gu_c.js +1 -0
  200. package/dist/collection/collection-manifest.json +1 -0
  201. package/dist/collection/components/co-app-shell/co-app-shell.css +107 -41
  202. package/dist/collection/components/co-app-shell/co-app-shell.js +2 -2
  203. package/dist/collection/components/co-autocomplete/co-autocomplete.js +1 -1
  204. package/dist/collection/components/co-avatar-group/co-avatar-group.js +1 -1
  205. package/dist/collection/components/co-badge/co-badge.css +18 -0
  206. package/dist/collection/components/co-badge/co-badge.js +29 -1
  207. package/dist/collection/components/co-button/co-button.css +4 -4
  208. package/dist/collection/components/co-checkbox/co-checkbox.css +12 -3
  209. package/dist/collection/components/co-checkbox/co-checkbox.js +6 -6
  210. package/dist/collection/components/co-checkbox-group/co-checkbox-group.css +1 -3
  211. package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +1 -1
  212. package/dist/collection/components/co-color-picker/co-color-picker.css +252 -5
  213. package/dist/collection/components/co-color-picker/co-color-picker.js +932 -15
  214. package/dist/collection/components/co-color-picker/presets.js +113 -15
  215. package/dist/collection/components/co-column-picker/co-column-picker.js +2 -2
  216. package/dist/collection/components/co-combobox/co-combobox.js +1 -1
  217. package/dist/collection/components/co-command-search/co-command-search.js +1 -1
  218. package/dist/collection/components/co-data-table/co-data-table.js +1 -1
  219. package/dist/collection/components/co-data-table-pagination/co-data-table-pagination.js +4 -4
  220. package/dist/collection/components/co-date-field/co-date-field.js +4 -4
  221. package/dist/collection/components/co-date-range/co-date-range.js +1 -1
  222. package/dist/collection/components/co-date-range-picker/co-date-range-picker.js +2 -2
  223. package/dist/collection/components/co-date-time-picker/co-date-time-picker.css +128 -32
  224. package/dist/collection/components/co-date-time-picker/co-date-time-picker.js +142 -138
  225. package/dist/collection/components/co-drawer/co-drawer.css +99 -36
  226. package/dist/collection/components/co-drawer/co-drawer.js +19 -7
  227. package/dist/collection/components/co-drive-card/co-drive-card.js +1 -1
  228. package/dist/collection/components/co-drop-zone/co-drop-zone.js +1 -1
  229. package/dist/collection/components/co-emoji-picker/co-emoji-picker.js +2 -2
  230. package/dist/collection/components/co-empty-state/co-empty-state.css +28 -0
  231. package/dist/collection/components/co-empty-state/co-empty-state.js +2 -2
  232. package/dist/collection/components/co-event-calendar/co-event-calendar.js +2 -2
  233. package/dist/collection/components/co-event-popover/co-event-popover.js +1 -1
  234. package/dist/collection/components/co-fab/co-fab.js +2 -2
  235. package/dist/collection/components/co-file-field/co-file-field.css +55 -2
  236. package/dist/collection/components/co-file-field/co-file-field.js +41 -13
  237. package/dist/collection/components/co-file-field/co-file-field.utils.js +51 -4
  238. package/dist/collection/components/co-file-type-tile/co-file-type-tile.js +2 -2
  239. package/dist/collection/components/co-helper-text/co-helper-text.js +2 -2
  240. package/dist/collection/components/co-icon/co-icon.js +2 -2
  241. package/dist/collection/components/co-icon-button/co-icon-button.css +40 -2
  242. package/dist/collection/components/co-icon-button/co-icon-button.js +43 -4
  243. package/dist/collection/components/co-input/co-input.css +33 -0
  244. package/dist/collection/components/co-input/co-input.js +25 -2
  245. package/dist/collection/components/co-json-field/co-json-field.js +3 -3
  246. package/dist/collection/components/co-lightbox/co-lightbox.css +23 -0
  247. package/dist/collection/components/co-lightbox/co-lightbox.js +209 -20
  248. package/dist/collection/components/co-list-footer/co-list-footer.js +1 -1
  249. package/dist/collection/components/co-list-item/co-list-item.js +4 -4
  250. package/dist/collection/components/co-media-thumb/co-media-thumb.js +2 -2
  251. package/dist/collection/components/co-menu/co-menu.js +1 -1
  252. package/dist/collection/components/co-menu-divider/co-menu-divider.js +1 -1
  253. package/dist/collection/components/co-menu-item/co-menu-item.js +67 -3
  254. package/dist/collection/components/co-modal/co-modal.css +106 -37
  255. package/dist/collection/components/co-modal/co-modal.js +4 -2
  256. package/dist/collection/components/co-navbar/co-navbar.css +4 -2
  257. package/dist/collection/components/co-navbar/co-navbar.js +2 -2
  258. package/dist/collection/components/co-number-field/co-number-field.css +22 -0
  259. package/dist/collection/components/co-number-field/co-number-field.js +216 -9
  260. package/dist/collection/components/co-option-list/co-option-list.css +25 -4
  261. package/dist/collection/components/co-option-list/co-option-list.js +26 -3
  262. package/dist/collection/components/co-overlay/co-overlay.js +5 -3
  263. package/dist/collection/components/co-page-header/co-page-header.js +1 -1
  264. package/dist/collection/components/co-phone-field/co-phone-field.js +1 -1
  265. package/dist/collection/components/co-popover/co-popover.css +18 -3
  266. package/dist/collection/components/co-popover/co-popover.js +83 -20
  267. package/dist/collection/components/co-progress-bar/co-progress-bar.js +2 -2
  268. package/dist/collection/components/co-progress-circle/co-progress-circle.js +2 -2
  269. package/dist/collection/components/co-radio/co-radio.js +3 -3
  270. package/dist/collection/components/co-radio-group/co-radio-group.js +1 -1
  271. package/dist/collection/components/co-rating/co-rating.js +3 -3
  272. package/dist/collection/components/co-ref-field/co-ref-field.js +3 -3
  273. package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.css +14 -1
  274. package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.js +9 -6
  275. package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.js +7 -3
  276. package/dist/collection/components/co-rich-text-viewer/co-rich-text-viewer.js +3 -2
  277. package/dist/collection/components/co-row/co-row.js +2 -2
  278. package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +1 -1
  279. package/dist/collection/components/co-select/co-select.js +1 -1
  280. package/dist/collection/components/co-separator/co-separator.js +1 -1
  281. package/dist/collection/components/co-sidebar/co-sidebar.js +2 -2
  282. package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.css +2 -2
  283. package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +1 -1
  284. package/dist/collection/components/co-skeleton/co-skeleton.css +18 -0
  285. package/dist/collection/components/co-skeleton/co-skeleton.js +83 -1
  286. package/dist/collection/components/co-slider/co-slider.js +2 -2
  287. package/dist/collection/components/co-switch/co-switch.css +3 -3
  288. package/dist/collection/components/co-switch/co-switch.js +3 -3
  289. package/dist/collection/components/co-tab/co-tab.js +2 -2
  290. package/dist/collection/components/co-tab-group/co-tab-group.js +2 -2
  291. package/dist/collection/components/co-tags-field/co-tags-field.js +5 -5
  292. package/dist/collection/components/co-textarea/co-textarea.js +4 -4
  293. package/dist/collection/components/co-time-field/co-time-field.css +111 -0
  294. package/dist/collection/components/co-time-field/co-time-field.js +536 -0
  295. package/dist/collection/components/co-toast/co-toast.css +13 -7
  296. package/dist/collection/components/co-toast/co-toast.js +2 -2
  297. package/dist/collection/components/co-toggle-button/co-toggle-button.css +16 -11
  298. package/dist/collection/components/co-toggle-button/co-toggle-button.js +2 -2
  299. package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.css +7 -1
  300. package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.js +2 -2
  301. package/dist/collection/components/co-tooltip/co-tooltip.css +12 -1
  302. package/dist/collection/components/co-tooltip/co-tooltip.js +49 -16
  303. package/dist/collection/components/co-transfer-list/co-transfer-list.js +1 -1
  304. package/dist/collection/components/co-video/co-video.js +34 -9
  305. package/dist/collection/utils/amountText.js +95 -0
  306. package/dist/collection/utils/color.js +109 -3
  307. package/dist/collection/utils/colorPickerI18n.js +55 -0
  308. package/dist/collection/utils/dateI18n.js +36 -0
  309. package/dist/collection/utils/fileI18n.js +3 -0
  310. package/dist/collection/utils/positioning.js +37 -4
  311. package/dist/collection/utils/submenu.js +35 -0
  312. package/dist/components/co-accordion.js +1 -1
  313. package/dist/components/co-action-bar.js +1 -1
  314. package/dist/components/co-app-shell.js +1 -1
  315. package/dist/components/co-audio-player.js +1 -1
  316. package/dist/components/co-autocomplete.js +1 -1
  317. package/dist/components/co-avatar-group.js +1 -1
  318. package/dist/components/co-avatar.js +1 -1
  319. package/dist/components/co-badge.js +1 -1
  320. package/dist/components/co-breadcrumb-item.js +1 -1
  321. package/dist/components/co-breadcrumb.js +1 -1
  322. package/dist/components/co-button.js +1 -1
  323. package/dist/components/co-calendar-month.js +1 -1
  324. package/dist/components/co-calendar-timegrid.js +1 -1
  325. package/dist/components/co-calendar.js +1 -1
  326. package/dist/components/co-carousel.js +1 -1
  327. package/dist/components/co-checkbox-group.js +1 -1
  328. package/dist/components/co-checkbox.js +1 -1
  329. package/dist/components/co-chip.js +1 -1
  330. package/dist/components/co-color-picker.js +1 -1
  331. package/dist/components/co-column-picker.js +1 -1
  332. package/dist/components/co-combobox.js +1 -1
  333. package/dist/components/co-command-search.js +1 -1
  334. package/dist/components/co-data-table-pagination.js +1 -1
  335. package/dist/components/co-data-table.js +1 -1
  336. package/dist/components/co-date-field.js +1 -1
  337. package/dist/components/co-date-picker.js +1 -1
  338. package/dist/components/co-date-range-picker.js +1 -1
  339. package/dist/components/co-date-range.js +1 -1
  340. package/dist/components/co-date-time-picker.js +1 -1
  341. package/dist/components/co-drawer.js +1 -1
  342. package/dist/components/co-drive-card.js +1 -1
  343. package/dist/components/co-drop-zone.js +1 -1
  344. package/dist/components/co-emoji-picker.js +1 -1
  345. package/dist/components/co-empty-state.js +1 -1
  346. package/dist/components/co-event-calendar.js +1 -1
  347. package/dist/components/co-event-popover.js +1 -1
  348. package/dist/components/co-fab.js +1 -1
  349. package/dist/components/co-file-field.js +1 -1
  350. package/dist/components/co-file-type-tile.js +1 -1
  351. package/dist/components/co-helper-text.js +1 -1
  352. package/dist/components/co-icon-button.js +1 -1
  353. package/dist/components/co-icon.js +1 -1
  354. package/dist/components/co-input.js +1 -1
  355. package/dist/components/co-json-field.js +1 -1
  356. package/dist/components/co-lightbox.js +1 -1
  357. package/dist/components/co-list-footer.js +1 -1
  358. package/dist/components/co-list-item.js +1 -1
  359. package/dist/components/co-media-thumb.js +1 -1
  360. package/dist/components/co-menu-divider.js +1 -1
  361. package/dist/components/co-menu-item.js +1 -1
  362. package/dist/components/co-menu.js +1 -1
  363. package/dist/components/co-modal.js +1 -1
  364. package/dist/components/co-navbar.js +1 -1
  365. package/dist/components/co-number-field.js +1 -1
  366. package/dist/components/co-option-list.js +1 -1
  367. package/dist/components/co-overlay.js +1 -1
  368. package/dist/components/co-page-header.js +1 -1
  369. package/dist/components/co-phone-field.js +1 -1
  370. package/dist/components/co-popover.js +1 -1
  371. package/dist/components/co-progress-bar.js +1 -1
  372. package/dist/components/co-progress-circle.js +1 -1
  373. package/dist/components/co-radio-group.js +1 -1
  374. package/dist/components/co-radio.js +1 -1
  375. package/dist/components/co-rating.js +1 -1
  376. package/dist/components/co-ref-field.js +1 -1
  377. package/dist/components/co-rich-text-editor.js +1 -1
  378. package/dist/components/co-rich-text-toolbar.js +1 -1
  379. package/dist/components/co-rich-text-viewer.js +1 -1
  380. package/dist/components/co-row.js +1 -1
  381. package/dist/components/co-select.js +1 -1
  382. package/dist/components/co-separator.js +1 -1
  383. package/dist/components/co-sidebar-nav.js +1 -1
  384. package/dist/components/co-sidebar.js +1 -1
  385. package/dist/components/co-skeleton.js +1 -1
  386. package/dist/components/co-slider.js +1 -1
  387. package/dist/components/co-switch.js +1 -1
  388. package/dist/components/co-tab-group.js +1 -1
  389. package/dist/components/co-tab.js +1 -1
  390. package/dist/components/co-tags-field.js +1 -1
  391. package/dist/components/co-textarea.js +1 -1
  392. package/dist/components/co-time-field.d.ts +11 -0
  393. package/dist/components/co-time-field.js +1 -0
  394. package/dist/components/co-toast.js +1 -1
  395. package/dist/components/co-toggle-button-group.js +1 -1
  396. package/dist/components/co-toggle-button.js +1 -1
  397. package/dist/components/co-tooltip.js +1 -1
  398. package/dist/components/co-transfer-list.js +1 -1
  399. package/dist/components/co-video.js +1 -1
  400. package/dist/components/index.js +1 -1
  401. package/dist/components/p-9ceBPSd1.js +1 -0
  402. package/dist/components/p-B1QFLcY9.js +1 -0
  403. package/dist/components/p-B2IsXte7.js +1 -0
  404. package/dist/components/p-B4NCaKrR.js +1 -0
  405. package/dist/components/p-BBP5__CY.js +1 -0
  406. package/dist/components/{p-Dabi98BI.js → p-BGDqldEg.js} +1 -1
  407. package/dist/components/p-BRbgGqLw.js +1 -0
  408. package/dist/components/p-Be_kyNRE.js +1 -0
  409. package/dist/components/{p-BL0sCfMH.js → p-Bryf3-Js.js} +1 -1
  410. package/dist/components/p-BsTO1uUA.js +1 -0
  411. package/dist/components/{p-CuZXTvDM.js → p-Bv6U5y3d.js} +1 -1
  412. package/dist/components/p-BxP8OBw6.js +1 -0
  413. package/dist/components/{p-P8wvwhM2.js → p-CFFDmGPS.js} +1 -1
  414. package/dist/components/{p-CA_JAK9s.js → p-CT2enQ6h.js} +1 -1
  415. package/dist/components/p-CXPRaTuo.js +1 -0
  416. package/dist/components/{p-D5EdMieb.js → p-Cl3AdEQJ.js} +1 -1
  417. package/dist/components/p-CnX3L8aF.js +1 -0
  418. package/dist/components/p-DFHRS9cJ.js +1 -0
  419. package/dist/components/p-DIo66nBr.js +1 -0
  420. package/dist/components/{p-Dj1EZ5qD.js → p-DNJAIVfI.js} +1 -1
  421. package/dist/{cobalt/p-WeuPA9Rw.js → components/p-DOL2zACE.js} +1 -1
  422. package/dist/components/p-DRP8D9ro.js +1 -0
  423. package/dist/components/p-DkDTmHCg.js +1 -0
  424. package/dist/components/{p-Bxk96Zgc.js → p-Du_CgT5E.js} +1 -1
  425. package/dist/components/{p-BHYtxTzM.js → p-HxVRXXXC.js} +1 -1
  426. package/dist/components/{p-B0Dc-I_C.js → p-NNxjElcX.js} +1 -1
  427. package/dist/components/p-gKnOhsd2.js +1 -0
  428. package/dist/components/p-jYd9gu_c.js +1 -0
  429. package/dist/components/{p-D4qzGifz.js → p-vby0ITbe.js} +1 -1
  430. package/dist/components/{p-D6OUW6oW.js → p-x4grh-eZ.js} +1 -1
  431. package/dist/esm/co-accordion.entry.js +1 -1
  432. package/dist/esm/co-action-bar.entry.js +1 -1
  433. package/dist/esm/co-app-shell.entry.js +4 -4
  434. package/dist/esm/co-audio-player.entry.js +1 -1
  435. package/dist/esm/co-autocomplete.entry.js +2 -2
  436. package/dist/esm/co-avatar-group.entry.js +1 -1
  437. package/dist/esm/co-avatar_2.entry.js +49 -17
  438. package/dist/esm/co-badge.entry.js +11 -3
  439. package/dist/esm/co-bottom-sheet.entry.js +1 -1
  440. package/dist/esm/co-breadcrumb-item.entry.js +1 -1
  441. package/dist/esm/co-breadcrumb.entry.js +1 -1
  442. package/dist/esm/co-button-group.entry.js +1 -1
  443. package/dist/esm/co-button.entry.js +2 -2
  444. package/dist/esm/co-calendar-month_2.entry.js +37 -2
  445. package/dist/esm/co-calendar_3.entry.js +27 -15
  446. package/dist/esm/co-card.entry.js +1 -1
  447. package/dist/esm/co-carousel-item.entry.js +1 -1
  448. package/dist/esm/co-carousel.entry.js +2 -2
  449. package/dist/esm/co-checkbox-group.entry.js +2 -2
  450. package/dist/esm/co-checkbox.entry.js +6 -6
  451. package/dist/esm/co-chip_2.entry.js +8 -5
  452. package/dist/esm/co-color-picker.entry.js +1048 -27
  453. package/dist/esm/co-column-picker.entry.js +3 -3
  454. package/dist/esm/co-combobox.entry.js +2 -2
  455. package/dist/esm/co-command-search.entry.js +1 -1
  456. package/dist/esm/co-data-table-pagination.entry.js +5 -5
  457. package/dist/esm/co-data-table.entry.js +1 -1
  458. package/dist/esm/co-date-picker.entry.js +3 -3
  459. package/dist/esm/co-date-range-picker.entry.js +3 -3
  460. package/dist/esm/co-date-range.entry.js +2 -2
  461. package/dist/esm/co-date-time-picker.entry.js +101 -130
  462. package/dist/esm/co-drive-card.entry.js +2 -2
  463. package/dist/esm/co-drop-zone.entry.js +2 -2
  464. package/dist/esm/co-emoji-picker.entry.js +4 -4
  465. package/dist/esm/co-empty-state.entry.js +4 -4
  466. package/dist/esm/co-event-calendar.entry.js +4 -4
  467. package/dist/esm/co-event-popover.entry.js +3 -3
  468. package/dist/esm/co-fab.entry.js +3 -3
  469. package/dist/esm/co-file-field.entry.js +95 -99
  470. package/dist/esm/co-file-type-tile.entry.js +3 -3
  471. package/dist/esm/co-helper-text.entry.js +3 -3
  472. package/dist/esm/co-icon-button.entry.js +6 -6
  473. package/dist/esm/co-icon.entry.js +3 -3
  474. package/dist/esm/co-input.entry.js +26 -4
  475. package/dist/esm/co-json-field.entry.js +5 -5
  476. package/dist/esm/co-lightbox.entry.js +204 -21
  477. package/dist/esm/co-list-footer.entry.js +2 -2
  478. package/dist/esm/co-list-item.entry.js +5 -5
  479. package/dist/esm/co-loader.entry.js +1 -1
  480. package/dist/esm/co-media-thumb.entry.js +3 -3
  481. package/dist/esm/co-menu-divider.entry.js +2 -2
  482. package/dist/esm/co-menu-item.entry.js +84 -3
  483. package/dist/esm/co-menu.entry.js +2 -2
  484. package/dist/esm/co-modal.entry.js +6 -4
  485. package/dist/esm/co-navbar.entry.js +4 -4
  486. package/dist/esm/co-number-field.entry.js +272 -9
  487. package/dist/esm/co-overlay.entry.js +6 -4
  488. package/dist/esm/co-page-header.entry.js +2 -2
  489. package/dist/esm/co-phone-field.entry.js +3 -3
  490. package/dist/esm/co-popover.entry.js +58 -21
  491. package/dist/esm/co-progress-bar.entry.js +3 -3
  492. package/dist/esm/co-progress-circle.entry.js +3 -3
  493. package/dist/esm/co-provider-logo_2.entry.js +47 -3
  494. package/dist/esm/co-radio-group.entry.js +1 -1
  495. package/dist/esm/co-radio.entry.js +4 -4
  496. package/dist/esm/co-rating.entry.js +4 -4
  497. package/dist/esm/co-ref-field.entry.js +4 -4
  498. package/dist/esm/co-rich-text-editor.entry.js +11 -8
  499. package/dist/esm/co-rich-text-toolbar.entry.js +7 -3
  500. package/dist/esm/co-rich-text-viewer.entry.js +4 -3
  501. package/dist/esm/co-row.entry.js +3 -3
  502. package/dist/esm/co-segmented-bar.entry.js +1 -1
  503. package/dist/esm/co-select.entry.js +2 -2
  504. package/dist/esm/co-separator.entry.js +2 -2
  505. package/dist/esm/co-sidebar-nav.entry.js +2 -2
  506. package/dist/esm/co-sidebar.entry.js +3 -3
  507. package/dist/esm/co-slider.entry.js +3 -3
  508. package/dist/esm/co-switch.entry.js +6 -6
  509. package/dist/esm/co-tab-group.entry.js +3 -3
  510. package/dist/esm/co-tab.entry.js +3 -3
  511. package/dist/esm/co-tags-field.entry.js +8 -8
  512. package/dist/esm/co-textarea.entry.js +6 -6
  513. package/dist/esm/co-time-field.entry.js +323 -0
  514. package/dist/esm/co-toast.entry.js +2 -2
  515. package/dist/esm/co-toggle-button-group.entry.js +4 -4
  516. package/dist/esm/co-toggle-button.entry.js +4 -4
  517. package/dist/esm/co-transfer-list.entry.js +1 -1
  518. package/dist/esm/co-video.entry.js +32 -7
  519. package/dist/esm/cobalt.js +3 -3
  520. package/dist/esm/color-BRbgGqLw.js +136 -0
  521. package/dist/esm/{dateI18n-CnNpoKwg.js → dateI18n-jYd9gu_c.js} +36 -0
  522. package/dist/esm/{fieldChip-DsAfq1e0.js → fieldChip-uyggU8VV.js} +1 -1
  523. package/dist/esm/fileI18n-gKnOhsd2.js +84 -0
  524. package/dist/esm/{index-RuXxdKzC.js → index-68iUQp5j.js} +28 -10
  525. package/dist/esm/{index-CrtiywTB.js → index-DH5lfRNj.js} +25 -21
  526. package/dist/esm/loader.js +3 -3
  527. package/dist/esm/{positioning-BMdapAL8.js → positioning-DFHRS9cJ.js} +32 -13
  528. package/dist/esm/{requiredMark-DCD-ZA51.js → requiredMark-BCJUuZvC.js} +1 -1
  529. package/dist/esm/{toolbar-config-WeuPA9Rw.js → toolbar-config-DOL2zACE.js} +10 -0
  530. package/dist/types/components/co-badge/co-badge.d.ts +7 -0
  531. package/dist/types/components/co-checkbox/co-checkbox.d.ts +1 -1
  532. package/dist/types/components/co-color-picker/co-color-picker.d.ts +358 -4
  533. package/dist/types/components/co-color-picker/presets.d.ts +107 -4
  534. package/dist/types/components/co-date-time-picker/co-date-time-picker.d.ts +43 -21
  535. package/dist/types/components/co-drawer/co-drawer.d.ts +4 -3
  536. package/dist/types/components/co-file-field/co-file-field.d.ts +14 -0
  537. package/dist/types/components/co-file-field/co-file-field.utils.d.ts +18 -1
  538. package/dist/types/components/co-icon-button/co-icon-button.d.ts +9 -0
  539. package/dist/types/components/co-input/co-input.d.ts +4 -0
  540. package/dist/types/components/co-lightbox/co-lightbox.d.ts +60 -4
  541. package/dist/types/components/co-menu-item/co-menu-item.d.ts +16 -0
  542. package/dist/types/components/co-number-field/co-number-field.d.ts +42 -1
  543. package/dist/types/components/co-option-list/co-option-list.d.ts +3 -0
  544. package/dist/types/components/co-overlay/co-overlay.d.ts +4 -2
  545. package/dist/types/components/co-popover/co-popover.d.ts +16 -0
  546. package/dist/types/components/co-rich-text-toolbar/co-rich-text-toolbar.d.ts +1 -1
  547. package/dist/types/components/co-skeleton/co-skeleton.d.ts +13 -0
  548. package/dist/types/components/co-time-field/co-time-field.d.ts +60 -0
  549. package/dist/types/components/co-tooltip/co-tooltip.d.ts +5 -0
  550. package/dist/types/components/co-video/co-video.d.ts +4 -0
  551. package/dist/types/components.d.ts +451 -87
  552. package/dist/types/utils/amountText.d.ts +34 -0
  553. package/dist/types/utils/color.d.ts +44 -1
  554. package/dist/types/utils/colorPickerI18n.d.ts +26 -0
  555. package/dist/types/utils/dateI18n.d.ts +12 -0
  556. package/dist/types/utils/fileI18n.d.ts +1 -0
  557. package/dist/types/utils/positioning.d.ts +10 -0
  558. package/dist/types/utils/submenu.d.ts +44 -0
  559. package/package.json +3 -3
  560. package/dist/cjs/color-YhUkm10t.js +0 -32
  561. package/dist/cjs/time-LBHtzLHe.js +0 -42
  562. package/dist/cobalt/p-07904986.entry.js +0 -1
  563. package/dist/cobalt/p-09799193.entry.js +0 -1
  564. package/dist/cobalt/p-17ae943c.entry.js +0 -1
  565. package/dist/cobalt/p-23a103a0.entry.js +0 -1
  566. package/dist/cobalt/p-2f88d151.entry.js +0 -1
  567. package/dist/cobalt/p-3495fda1.entry.js +0 -1
  568. package/dist/cobalt/p-409f28bb.entry.js +0 -1
  569. package/dist/cobalt/p-682b3313.entry.js +0 -1
  570. package/dist/cobalt/p-6bf814f9.entry.js +0 -1
  571. package/dist/cobalt/p-7532c739.entry.js +0 -1
  572. package/dist/cobalt/p-7c88163e.entry.js +0 -1
  573. package/dist/cobalt/p-7cf4b4ae.entry.js +0 -1
  574. package/dist/cobalt/p-7ea87b75.entry.js +0 -1
  575. package/dist/cobalt/p-8183f56f.entry.js +0 -1
  576. package/dist/cobalt/p-8345b25f.entry.js +0 -1
  577. package/dist/cobalt/p-983af614.entry.js +0 -1
  578. package/dist/cobalt/p-BG4WRR22.js +0 -1
  579. package/dist/cobalt/p-BMdapAL8.js +0 -1
  580. package/dist/cobalt/p-CF8OB_TM.js +0 -1
  581. package/dist/cobalt/p-CnNpoKwg.js +0 -1
  582. package/dist/cobalt/p-T4la7ly_.js +0 -1
  583. package/dist/cobalt/p-a2d31248.entry.js +0 -1
  584. package/dist/cobalt/p-a6b5cadd.entry.js +0 -1
  585. package/dist/cobalt/p-b8581787.entry.js +0 -1
  586. package/dist/cobalt/p-bcedbd73.entry.js +0 -1
  587. package/dist/cobalt/p-d40a465f.entry.js +0 -1
  588. package/dist/cobalt/p-dea43204.entry.js +0 -1
  589. package/dist/cobalt/p-dfcf667d.entry.js +0 -1
  590. package/dist/cobalt/p-e6882ddd.entry.js +0 -1
  591. package/dist/cobalt/p-e84eda2e.entry.js +0 -1
  592. package/dist/cobalt/p-f25967fb.entry.js +0 -1
  593. package/dist/cobalt/p-f5f1b463.entry.js +0 -1
  594. package/dist/cobalt/p-fd39f410.entry.js +0 -1
  595. package/dist/cobalt/p-mAGnZXRn.js +0 -1
  596. package/dist/components/p-BMdapAL8.js +0 -1
  597. package/dist/components/p-BTQEg3UO.js +0 -1
  598. package/dist/components/p-Bbny3WUc.js +0 -1
  599. package/dist/components/p-Bz0QZqnB.js +0 -1
  600. package/dist/components/p-CF8OB_TM.js +0 -1
  601. package/dist/components/p-CR0izsJC.js +0 -1
  602. package/dist/components/p-CnNpoKwg.js +0 -1
  603. package/dist/components/p-DI1ek0EB.js +0 -1
  604. package/dist/components/p-DP0bbhfN.js +0 -1
  605. package/dist/components/p-D_9BRkj6.js +0 -1
  606. package/dist/components/p-DbipMAyT.js +0 -1
  607. package/dist/components/p-DgUBcJIS.js +0 -1
  608. package/dist/components/p-DolCkNsL.js +0 -1
  609. package/dist/components/p-hfGFsvaD.js +0 -1
  610. package/dist/esm/color-BG4WRR22.js +0 -30
  611. package/dist/esm/time-CF8OB_TM.js +0 -37
@@ -1 +1 @@
1
- import{p as o,H as e,c as r,h as c,t as i}from"./index.js";import{R as t}from"./p-CWneqh4n.js";import{d as a}from"./p-Dj1EZ5qD.js";import{d as s}from"./p-DP0bbhfN.js";const n=[{name:"Green",value:"#02A270"},{name:"Yellow",value:"#FDBF00"},{name:"Blue",value:"#2563EB"},{name:"Pink",value:"#F32A73"},{name:"Red",value:"#EB1E1E"},{name:"Orange",value:"#F0821E"},{name:"Teal",value:"#00AFAF"},{name:"Light blue",value:"#00BEE6"},{name:"Electric blue",value:"#000AFF"},{name:"Violet",value:"#5F4BD7"},{name:"Burgundy",value:"#811137"},{name:"Olive",value:"#AAB43C"}],l=o(class o extends e{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.coChange=r(this,"coChange",7),this.value="",this.placeholder="Select color",this.disabled=!1,this.required=!1,this.status="default",this.layout="vertical",this.size="md",this.presets="",this.isOpen=!1,this.copied=!1,this.handlePopoverOpen=()=>{this.isOpen=!0},this.handlePopoverClose=()=>{this.isOpen=!1,this.restoreTriggerFocus()},this.handleTriggerKeyDown=o=>{this.disabled||("Enter"===o.key||" "===o.key?(o.preventDefault(),this.isOpen=!this.isOpen):"ArrowDown"!==o.key||this.isOpen||(o.preventDefault(),this.isOpen=!0))}}get parsedPresets(){if(Array.isArray(this.presets))return this.presets.map((o=>"string"==typeof o?{name:o,value:o}:o));if("string"==typeof this.presets&&this.presets.trim())try{const o=JSON.parse(this.presets);if(Array.isArray(o))return o.map((o=>"string"==typeof o?{name:o,value:o}:o))}catch(o){}return n}restoreTriggerFocus(){var o;const e=document.activeElement;(e===this.el||this.el.contains(e))&&(null===(o=this.triggerEl)||void 0===o||o.focus())}handleSwatchClick(o){this.value=o,this.coChange.emit(o),this.isOpen=!1,this.restoreTriggerFocus()}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning"}[this.status]||null}async handleCopy(){if(this.value)try{await navigator.clipboard.writeText(this.value),this.copied=!0,setTimeout((()=>{this.copied=!1}),1500)}catch(o){}}render(){const e=this.parsedPresets,r=!!this.value;return c("div",{key:"5b99c6a39399a6731d09115e7fd2ce2d64baffb2",class:`co-color-picker co-color-picker--${this.size} ${"default"!==this.status?"co-color-picker--"+this.status:""} ${this.isOpen?"co-color-picker--open":""} ${this.disabled?"co-color-picker--disabled":""}`},this.label&&c("label",{key:"816392c0b3cebcb2e84ea28ea7e6b7976503b6f9",class:"co-color-picker__label"},this.label,c(t,{key:"e0e1c97522f4516763fc663878203e2dafb783b3",required:this.required})),c("co-popover",{key:"d49ba1f9cd64d2498940247f3ba02897dcc9d2d7",open:this.isOpen,placement:"bottom-start",matchWidth:!0,offset:4,onCoOpen:this.handlePopoverOpen,onCoClose:this.handlePopoverClose},c("div",{key:"1121b429c89fb9cc066cc66564ae547687bf8ed3",slot:"trigger",class:"co-color-picker__trigger",role:"combobox","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"dialog","aria-controls":this.isOpen?o.PANEL_ID:void 0,"aria-label":this.label||void 0,"aria-disabled":this.disabled?"true":void 0,tabIndex:this.disabled?-1:0,ref:o=>this.triggerEl=o,onKeyDown:this.handleTriggerKeyDown},c("span",{key:"2567db35022b5ffdd9921d8bec263c90103fd5f3",class:"co-color-picker__swatch",style:{background:r?this.value:"transparent"}}),c("span",{key:"7fecc93b5ecc91acf2c874a26ed1f9d8770d9adf",class:"co-color-picker__value "+(r?"":"co-color-picker__value--empty")},r?this.value:this.placeholder)),this.isOpen&&c("div",{key:"44d904e4156fac15b302ffe86d68cef72bc7518e",class:"co-color-picker__panel",id:o.PANEL_ID,role:"dialog","aria-label":this.label||this.placeholder},c("div",{key:"a566f189c87792f0af3e493c00eed7240dcd49c9",class:"co-color-picker__grid"},e.map((o=>{var e;return c("button",{type:"button",key:o.value,class:"co-color-picker__grid-item "+(o.value.toUpperCase()===(null===(e=this.value)||void 0===e?void 0:e.toUpperCase())?"co-color-picker__grid-item--selected":""),style:{background:o.value},title:o.name,onClick:()=>this.handleSwatchClick(o.value)})}))),r&&c("div",{key:"bae8ffe387fe30710b654975379e70a4b3724ec9",class:"co-color-picker__hex-row"},c("span",{key:"671a5a64abc2f824c8d1ef8c2404023d8d51c28d",class:"co-color-picker__hex-prefix"},"#"),c("span",{key:"3a6742eb528c5a92fe16b2f2e5d8b2ebdf885450",class:"co-color-picker__hex-value"},this.value.replace(/^#/,"")),c("button",{key:"f53957b494dbed0648d32fcb743673a2ada063b4",type:"button",class:"co-color-picker__copy-btn "+(this.copied?"co-color-picker__copy-btn--copied":""),title:"Copy",onClick:()=>this.handleCopy()},c("co-icon",{key:"c99e611beddc2108f3973ecee4f6012423cffd23",name:this.copied?"check":"copy",size:16}))))),this.helperText&&c("div",{key:"1d6a6e97eab1eafcb9265944693cb0d1121e04ee",class:"co-color-picker__helper"},this.statusIcon&&c("co-icon",{key:"bcf943836fddf264cede2f339844f35aa167002f",name:this.statusIcon,size:14,weight:"fill",class:"co-color-picker__helper-icon"}),c("span",{key:"a439c4d102d17d0d6c9e55757dcf43ec8b3ade8f",class:"co-color-picker__helper-text"},this.helperText)))}get el(){return this}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1}.co-color-picker{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-color-picker--disabled{opacity:0.5;pointer-events:none}.co-color-picker__label{font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-secondary);padding:0 var(--co-spacing-xs)}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}.co-color-picker co-popover{display:block;width:100%}.co-color-picker__trigger{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-color-picker--s .co-color-picker__trigger{min-height:28px;padding:var(--co-spacing-xxs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-color-picker--sm .co-color-picker__trigger{min-height:32px;padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-14)}.co-color-picker--lg .co-color-picker__trigger{min-height:48px;padding:var(--co-spacing-sm) var(--co-spacing-lg);font-size:var(--co-font-size-16)}.co-color-picker--s .co-color-picker__swatch,.co-color-picker--sm .co-color-picker__swatch{width:18px;height:18px}.co-color-picker__trigger:hover{border-color:var(--co-semantic-border-default)}.co-color-picker--open .co-color-picker__trigger{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--co-semantic-border-focus) 15%, transparent)}.co-color-picker__trigger:focus-visible{outline:none;border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--co-semantic-border-focus) 15%, transparent)}.co-color-picker--error .co-color-picker__trigger{border-color:var(--co-color-status-error)}.co-color-picker__swatch{width:22px;height:22px;box-sizing:border-box;border-radius:var(--co-border-radius-full);border:1px solid var(--co-semantic-border-subtle);flex-shrink:0}.co-color-picker__value{flex:1;font-size:inherit;font-family:inherit;color:var(--co-semantic-text-default);font-weight:500;text-transform:uppercase}.co-color-picker__value--empty{color:var(--co-semantic-text-muted);font-weight:400}.co-color-picker__panel{padding:var(--co-spacing-md);display:flex;flex-direction:column;gap:var(--co-spacing-md)}.co-color-picker__grid{display:grid;grid-template-columns:repeat(8, 1fr);gap:var(--co-spacing-sm2)}.co-color-picker__grid-item{width:32px;height:32px;border-radius:var(--co-border-radius-xxs);border:2px solid transparent;cursor:pointer;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-out), border-color var(--co-motion-duration-fast) var(--co-motion-ease-out);box-sizing:border-box}.co-color-picker__grid-item:hover{transform:scale(1.1)}.co-color-picker__grid-item--selected{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--co-semantic-border-focus) 25%, transparent)}.co-color-picker__hex-row{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-xs) var(--co-spacing-sm);background:var(--co-semantic-surface-secondary);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-xxs)}.co-color-picker__hex-prefix{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:500}.co-color-picker__hex-value{flex:1;font-size:var(--co-font-size-14);font-family:var(--co-font-family-mono, monospace);color:var(--co-semantic-text-default);text-transform:uppercase;user-select:all}.co-color-picker__copy-btn{display:flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs);border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);border-radius:var(--co-border-radius-xxs);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out), background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-color-picker__copy-btn:hover{color:var(--co-semantic-text-default);background:var(--co-semantic-surface-hover)}.co-color-picker__copy-btn--copied{color:var(--co-color-status-success)}.co-color-picker__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);font-size:var(--co-font-size-14);color:var(--co-semantic-text-muted);padding:0 var(--co-spacing-xs)}.co-color-picker__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-color-picker--error .co-color-picker__helper{color:var(--co-semantic-status-error)}:host([layout='horizontal']) .co-color-picker{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-color-picker__label{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-color-picker__label{white-space:normal}:host([layout='horizontal']) .co-color-picker>:not(.co-color-picker__label){grid-column:2;min-width:0}"}},[1,"co-color-picker",{value:[1025],label:[1],placeholder:[1],disabled:[4],required:[4],status:[1],helperText:[1,"helper-text"],layout:[513],size:[513],name:[1],presets:[1],isOpen:[32],copied:[32]}]);function d(){"undefined"!=typeof customElements&&["co-color-picker","co-icon","co-popover"].forEach((o=>{switch(o){case"co-color-picker":customElements.get(i(o))||customElements.define(i(o),l);break;case"co-icon":customElements.get(i(o))||a();break;case"co-popover":customElements.get(i(o))||s()}}))}l.PANEL_ID="co-color-picker-panel",d();const p=l,h=d;export{p as CoColorPicker,h as defineCustomElement}
1
+ import{p as o,H as e,c as r,h as i,t}from"./index.js";import{R as c}from"./p-CWneqh4n.js";import{h as s,a,p as n,b as l,i as h}from"./p-BRbgGqLw.js";import{l as d,f as p}from"./p-gKnOhsd2.js";import{d as u}from"./p-DNJAIVfI.js";import{d as b}from"./p-DRP8D9ro.js";const m={en:{swatches:"Color presets",groupNeutrals:"Neutrals",groupBrand:"Brand colors",area:"Saturation and brightness",hue:"Hue",hueValue:"{n} degrees",saturation:"Saturation",satValue:"Saturation {n}%",brightness:"Brightness",briValue:"Brightness {n}%",area2D:"2D slider",hexField:"Hex code",eyedropper:"Pick a color from the screen",copy:"Copy"},es:{swatches:"Colores predefinidos",groupNeutrals:"Neutros",groupBrand:"Colores de marca",area:"Saturación y brillo",hue:"Matiz",hueValue:"{n} grados",saturation:"Saturación",satValue:"Saturación {n} %",brightness:"Brillo",briValue:"Brillo {n} %",area2D:"Control 2D",hexField:"Código hexadecimal",eyedropper:"Elegir un color de la pantalla",copy:"Copiar"},pt:{swatches:"Cores predefinidas",groupNeutrals:"Neutros",groupBrand:"Cores da marca",area:"Saturação e brilho",hue:"Matiz",hueValue:"{n} graus",saturation:"Saturação",satValue:"Saturação {n} %",brightness:"Brilho",briValue:"Brilho {n} %",area2D:"Controle 2D",hexField:"Código hexadecimal",eyedropper:"Escolher uma cor da tela",copy:"Copiar"}},f=o=>{var e;return"string"==typeof o?{key:o,name:o,value:o,synthesizedKey:!0}:null!=o.key?{key:o.key,name:o.name,value:o.value}:{key:null!==(e=o.name)&&void 0!==e?e:o.value,name:o.name,value:o.value,synthesizedKey:!0}},v=[{key:"black",name:"Black",value:"#1F1C1B"},{key:"gray",name:"Gray",value:"#585858"},{key:"silver",name:"Silver",value:"#C4C4C4"},{key:"smoke",name:"Smoke",value:"#E3E3E3"},{key:"bone",name:"Bone",value:"#F7F6F0"},{key:"green",name:"Green",value:"#02A270"},{key:"olive",name:"Olive",value:"#AAB43C"},{key:"yellow",name:"Yellow",value:"#FDBF00"},{key:"orange",name:"Orange",value:"#F0821E"},{key:"red",name:"Red",value:"#EB1E1E"},{key:"pink",name:"Pink",value:"#F32A73"},{key:"burgundy",name:"Burgundy",value:"#811137"},{key:"violet",name:"Violet",value:"#5F4BD7"},{key:"electricBlue",name:"Electric blue",value:"#000AFF"},{key:"blue",name:"Blue",value:"#2563EB"},{key:"lightBlue",name:"Light blue",value:"#00BEE6"},{key:"teal",name:"Teal",value:"#00AFAF"}],g=["black","gray","silver","smoke","bone"],k=v.filter((o=>!g.includes(o.key))).map((o=>o.key)),x=new Set(g),_=new Set(k),y=/^#?[0-9a-f]*$/i,w=Object.freeze({h:0,s:100,v:100}),z=o=>o.reduce(((o,e)=>o.concat(e.items)),[]),C=o(class o extends e{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coChange=r(this,"coChange",7),this.coInput=r(this,"coInput",7),this.value="",this.placeholder="Select color",this.disabled=!1,this.required=!1,this.status="default",this.layout="vertical",this.size="md",this.presets="",this.locale="en",this.isOpen=!1,this.copied=!1,this.hsv=w,this.hexDraft="",this.hexEditing=!1,this.areaAxis="s",this.emitted="",this.committed="",this.focusedIndex=0,this.areaDragging=!1,this.handlePopoverOpen=()=>{this.isOpen=!0,this.areaDragging=!1,this.resetHexDraft();const o=this.flatPresets.findIndex((o=>o.value.toUpperCase()===(this.value||"").toUpperCase()));this.focusedIndex=o>=0?o:0},this.handlePopoverClose=()=>{this.isOpen=!1,this.finishHexEdit(),this.restoreTriggerFocus()},this.handleTriggerKeyDown=o=>{this.disabled||("Enter"===o.key||" "===o.key?(o.preventDefault(),this.isOpen=!this.isOpen):"ArrowDown"!==o.key||this.isOpen||(o.preventDefault(),this.isOpen=!0))},this.pointerToHsv=o=>{var e;const r=null===(e=this.areaEl)||void 0===e?void 0:e.getBoundingClientRect();return!!(r&&r.width>0&&r.height>0)&&(this.previewHsv({s:100*Math.min(Math.max((o.clientX-r.left)/r.width,0),1),v:100*(1-Math.min(Math.max((o.clientY-r.top)/r.height,0),1))}),!0)},this.handleAreaPointerDown=o=>{var e,r;this.disabled||0!==o.button||(null===(r=null===(e=this.areaEl)||void 0===e?void 0:e.setPointerCapture)||void 0===r||r.call(e,o.pointerId),this.areaDragging=this.pointerToHsv(o))},this.handleAreaPointerMove=o=>{!this.disabled&&this.areaDragging&&1===o.buttons&&this.pointerToHsv(o)},this.handleAreaPointerCancel=()=>{this.areaDragging=!1},this.handleAreaPointerUp=o=>{this.areaDragging&&0===o.button&&(this.areaDragging=!1,this.disabled||this.commit(s(this.hsv)))},this.handleAreaKeyDown=e=>{if(this.disabled)return;const r=o.AREA_KEYS[e.key];if(!r)return;e.preventDefault();const i=Math.min(100,Math.max(0,this.hsv[r.axis]+r.dir*(e.shiftKey?10:1)));this.focusAxis(r.axis),this.previewHsv({[r.axis]:i}),this.commit(s(this.hsv))},this.handleHueKeyDown=o=>{if(this.disabled||!o.shiftKey)return;const e="ArrowRight"===o.key||"ArrowUp"===o.key?1:"ArrowLeft"===o.key||"ArrowDown"===o.key?-1:0;e&&(o.preventDefault(),this.previewHsv({h:Math.min(360,Math.max(0,this.hsv.h+10*e))}),this.commit(s(this.hsv)))},this.handleGridKeyDown=o=>{var e;const r=this.presetGroups,i=z(r),t=i.length;if(!t)return;const c=Math.min(Math.max(this.focusedIndex,0),t-1);let s=c;switch(o.key){case"ArrowRight":s=(c+1)%t;break;case"ArrowLeft":s=(c-1+t)%t;break;case"ArrowDown":s=this.verticalNeighbor(r,c,1);break;case"ArrowUp":s=this.verticalNeighbor(r,c,-1);break;case"Home":s=0;break;case"End":s=t-1;break;case"Enter":case" ":return o.preventDefault(),void this.handleSwatchClick(i[c].value);default:return}o.preventDefault(),this.focusedIndex=s,null===(e=this.optionEls()[s])||void 0===e||e.focus()},this.handleHexInput=o=>{var e,r;if(this.disabled)return;const i=o.target,t=this.escapeHex(i.value);if(i.value!==t){const o=null!==(e=i.selectionStart)&&void 0!==e?e:i.value.length,c=Math.min(this.escapeHex(i.value.slice(0,o)).length,t.length);i.value=t,null===(r=i.setSelectionRange)||void 0===r||r.call(i,c,c)}this.hexEditing=!0,this.hexDraft=t,a(t)&&this.previewHex(this.expandHex(t))},this.handleHexBlur=()=>{this.finishHexEdit()},this.handleHexKeyDown=o=>{"Enter"===o.key&&(o.preventDefault(),this.finishHexEdit())},this.handleHexPaste=o=>{var e,r;if(this.disabled)return;const i=(null!==(r=null===(e=o.clipboardData)||void 0===e?void 0:e.getData("text"))&&void 0!==r?r:"").trim(),t=n(i);if(t)return o.preventDefault(),this.hexEditing=!1,this.hexDraft=this.escapeHex(t),void this.commit(t);y.test(i)||o.preventDefault()},this.handleEyeDropper=async()=>{if(this.finishHexEdit(),this.hasEyeDropper)try{const o=window.EyeDropper,{sRGBHex:e}=await(new o).open(),r=n(e);r&&this.commit(r)}catch(o){}}}syncFromValue(o){if(this.syncHexDraft(o),(o||"").toUpperCase()===(this.emitted||"").toUpperCase())return;this.committed=o,this.emitted=o;const e=l(o||"");e&&(this.hsv=e)}componentWillLoad(){const o=l(this.value||"");this.hsv=null!=o?o:w,this.areaAxis="s",this.resetHexDraft(),this.committed=this.value,this.emitted=this.value}previewHsv(o){this.hsv=Object.assign(Object.assign({},this.hsv),o),this.emitPreview(s(this.hsv))}previewHex(o){const e=l(o);e&&(this.hsv=e),this.emitPreview(o)}emitPreview(o){this.emitted=o,this.value=o,this.coInput.emit(o)}commit(o){if(s(this.hsv)!==o){const e=l(o);e&&(this.hsv=e)}this.emitted=o,this.committed=o,this.value=o,this.coChange.emit(o)}get strings(){return function(o){return m[d(o)]}(this.locale)}get parsedPresets(){if(Array.isArray(this.presets))return this.presets.map(f);if("string"==typeof this.presets&&this.presets.trim())try{const o=JSON.parse(this.presets);if(Array.isArray(o))return o.map((o=>f(o)))}catch(o){}return v}get presetGroups(){const o=this.parsedPresets,e=function(o){const e=[],r=[];for(const i of o){if(i.synthesizedKey)return null;if(x.has(i.key))e.push(i);else{if(!_.has(i.key))return null;r.push(i)}}return e.length&&r.length?{neutrals:e,brand:r}:null}(o);return e?[{label:this.strings.groupNeutrals,items:e.neutrals,from:0},{label:this.strings.groupBrand,items:e.brand,from:e.neutrals.length}]:[{label:void 0,items:o,from:0}]}get flatPresets(){return z(this.presetGroups)}restoreTriggerFocus(){var o;const e=document.activeElement;(e===this.el||this.el.contains(e))&&(null===(o=this.triggerEl)||void 0===o||o.focus())}handleSwatchClick(o){this.commit(o),this.isOpen=!1,this.restoreTriggerFocus()}focusAxis(o){this.areaAxis=o;const e="s"===o?this.satEl:this.valEl;e&&(e.removeAttribute("aria-hidden"),e.focus())}optionEls(){var o,e;return Array.from(null!==(e=null===(o=this.gridEl)||void 0===o?void 0:o.querySelectorAll('[role="option"]'))&&void 0!==e?e:[])}verticalNeighbor(o,e,r){const i=o.findIndex((o=>e>=o.from&&e<o.from+o.items.length));if(i<0)return e;const t=o[i],c=e-t.from,s=c%6,a=Math.ceil(t.items.length/6),n=Math.floor(c/6)+r;if(n>=0&&n<a)return t.from+Math.min(6*n+s,t.items.length-1);const l=o[i+r];return l?l.from+Math.min(6*(1===r?0:(Math.ceil(l.items.length/6)||1)-1)+s,l.items.length-1):e}renderArea(){const{h:o,s:e,v:r}=this.hsv,t="s"===this.areaAxis;return i("div",{class:"co-color-picker__area",role:"group","aria-label":this.strings.area,ref:o=>this.areaEl=o,style:{"--co-color-picker-hue":""+o},onPointerDown:this.handleAreaPointerDown,onPointerMove:this.handleAreaPointerMove,onPointerUp:this.handleAreaPointerUp,onPointerCancel:this.handleAreaPointerCancel},i("span",{class:"co-color-picker__area-thumb",role:"presentation",style:{left:e+"%",top:100-r+"%",background:this.value}}),i("input",{type:"range",min:"0",max:"100",step:"1",class:"co-color-picker__channel","data-channel":"s",value:Math.round(e),ref:o=>this.satEl=o,tabIndex:t?0:-1,"aria-hidden":t?void 0:"true","aria-label":this.strings.saturation,"aria-roledescription":this.strings.area2D,"aria-valuetext":p(this.strings.satValue,{n:Math.round(e)}),"aria-orientation":"horizontal",disabled:this.disabled,onFocus:()=>this.areaAxis="s",onInput:o=>this.previewHsv({s:+o.target.value}),onChange:()=>this.commit(s(this.hsv)),onKeyDown:this.handleAreaKeyDown}),i("input",{type:"range",min:"0",max:"100",step:"1",class:"co-color-picker__channel","data-channel":"v",value:Math.round(r),ref:o=>this.valEl=o,tabIndex:t?-1:0,"aria-hidden":t?"true":void 0,"aria-label":this.strings.brightness,"aria-roledescription":this.strings.area2D,"aria-valuetext":p(this.strings.briValue,{n:Math.round(r)}),"aria-orientation":"vertical",disabled:this.disabled,onFocus:()=>this.areaAxis="v",onInput:o=>this.previewHsv({v:+o.target.value}),onChange:()=>this.commit(s(this.hsv)),onKeyDown:this.handleAreaKeyDown}))}renderHue(){return i("input",{type:"range",min:"0",max:"360",step:"1",class:"co-color-picker__hue-input",value:Math.round(this.hsv.h),"aria-label":this.strings.hue,"aria-valuetext":p(this.strings.hueValue,{n:Math.round(this.hsv.h)}),disabled:this.disabled,onInput:o=>this.previewHsv({h:+o.target.value}),onChange:()=>this.commit(s(this.hsv)),onKeyDown:this.handleHueKeyDown})}renderSwatches(){return i("div",{class:"co-color-picker__grid",role:"listbox","aria-label":this.strings.swatches,ref:o=>this.gridEl=o,onKeyDown:this.handleGridKeyDown},this.presetGroups.map((o=>i("div",{class:"co-color-picker__grid-group",key:o.from,role:o.label?"group":"presentation","aria-label":o.label},o.items.map(((e,r)=>{const t=o.from+r,c=e.value.toUpperCase()===(this.value||"").toUpperCase();return i("div",{key:e.value,role:"option","aria-selected":c?"true":"false","aria-label":e.name,tabIndex:t===this.focusedIndex?0:-1,class:{"co-color-picker__grid-item":!0,"co-color-picker__grid-item--selected":c,"co-color-picker__grid-item--light":h(e.value)},style:{background:e.value},onFocus:()=>this.focusedIndex=t,onClick:()=>this.handleSwatchClick(e.value)},c&&i("co-icon",{name:"check",size:16,weight:"bold",class:"co-color-picker__grid-check"}))}))))))}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning"}[this.status]||null}escapeHex(o){return(o||"").replace(/[^0-9a-f]/gi,"").substring(0,6).toUpperCase()}expandHex(o){const e=o.replace("#","");return"#"+(3===e.length?e[0]+e[0]+e[1]+e[1]+e[2]+e[2]:e).toUpperCase()}resetHexDraft(){this.hexEditing=!1,this.syncHexDraft(this.value)}syncHexDraft(o){this.hexEditing||o&&!a(o)||(this.hexDraft=this.escapeHex(o))}finishHexEdit(){const o=this.hexEditing;if(this.hexEditing=!1,!this.disabled){if(o&&a(this.hexDraft)){const o=this.expandHex(this.hexDraft);return this.commit(o),void this.syncHexDraft(o)}this.revertToCommitted()}}revertToCommitted(){const o=this.committed;this.syncHexDraft(o),o||(this.hsv=w),(this.value||"").toUpperCase()!==(o||"").toUpperCase()&&(this.value=o,this.emitted=o,this.coInput.emit(o))}get hasEyeDropper(){return"undefined"!=typeof window&&"EyeDropper"in window}renderHexRow(){const o=!!this.value;return i("div",{class:"co-color-picker__hex-row"},i("span",{class:"co-color-picker__hex-prefix"},"#"),i("input",{type:"text",class:"co-color-picker__hex-input",value:this.hexDraft,spellcheck:!1,autocomplete:"off",maxLength:6,"aria-label":this.strings.hexField,disabled:this.disabled,onInput:this.handleHexInput,onBlur:this.handleHexBlur,onKeyDown:this.handleHexKeyDown,onPaste:this.handleHexPaste}),this.hasEyeDropper&&i("button",{type:"button",class:"co-color-picker__eyedropper",title:this.strings.eyedropper,"aria-label":this.strings.eyedropper,disabled:this.disabled,onClick:this.handleEyeDropper},i("co-icon",{name:"eyedropper",size:16})),i("button",{type:"button",class:"co-color-picker__copy-btn "+(this.copied?"co-color-picker__copy-btn--copied":""),title:this.strings.copy,"aria-label":this.strings.copy,disabled:this.disabled||!o,onClick:()=>this.handleCopy()},i("co-icon",{name:this.copied?"check":"copy",size:16})))}async handleCopy(){if(this.value)try{await navigator.clipboard.writeText(this.value),this.copied=!0,setTimeout((()=>{this.copied=!1}),1500)}catch(o){}}render(){const e=!!this.value;return i("div",{key:"d0069249895cc3cf148c963f149ff7b3a15ab939",class:`co-color-picker co-color-picker--${this.size} ${"default"!==this.status?"co-color-picker--"+this.status:""} ${this.isOpen?"co-color-picker--open":""} ${this.disabled?"co-color-picker--disabled":""}`},this.label&&i("label",{key:"e28d265aefc19f7e86ed36bfbfe6b6ec537d1ca2",class:"co-color-picker__label"},this.label,i(c,{key:"0aff2dde3002e1c9a79f2c3a385b64d33dc3418c",required:this.required})),i("co-popover",{key:"edac2d09e0d15c2f09dfff2ea0a2b95f5384d8de",open:this.isOpen,placement:"bottom-start",offset:4,onCoOpen:this.handlePopoverOpen,onCoClose:this.handlePopoverClose},i("div",{key:"98c2e3c5ed50f8cc869c1cf791ddce85e8887b8e",slot:"trigger",class:"co-color-picker__trigger",role:"combobox","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"dialog","aria-controls":this.isOpen?o.PANEL_ID:void 0,"aria-label":this.label||void 0,"aria-disabled":this.disabled?"true":void 0,tabIndex:this.disabled?-1:0,ref:o=>this.triggerEl=o,onKeyDown:this.handleTriggerKeyDown},i("span",{key:"65e49a6246c71b6366f7907c715c64259c30be46",class:"co-color-picker__swatch",style:{background:e?this.value:"transparent"}}),i("span",{key:"d8e6e852383ec925c4336f9b49a69e73d88e2234",class:"co-color-picker__value "+(e?"":"co-color-picker__value--empty")},e?this.value:this.placeholder)),this.isOpen&&i("div",{key:"2893b57d82d7ac2edc4e3bd8eac266fdc6cbfba0",class:"co-color-picker__panel",id:o.PANEL_ID,role:"dialog","aria-label":this.label||this.placeholder},this.renderArea(),this.renderHue(),this.renderSwatches(),this.renderHexRow())),this.helperText&&i("div",{key:"ca583c8033afaafa5bdd59ccd63e711eaf02e6df",class:"co-color-picker__helper"},this.statusIcon&&i("co-icon",{key:"aca2fd8186658e7d4e13ab67dc7a6e93c2fd8b89",name:this.statusIcon,size:14,weight:"fill",class:"co-color-picker__helper-icon"}),i("span",{key:"e8e3cdf72353a1f5fb8b53fe725389386c7d75ea",class:"co-color-picker__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{value:[{syncFromValue:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1}.co-color-picker{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-color-picker--disabled{opacity:0.5;pointer-events:none}.co-color-picker__label{font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-secondary);padding:0 var(--co-spacing-xs)}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}.co-color-picker co-popover{display:block;width:100%}.co-color-picker__trigger{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-color-picker--s .co-color-picker__trigger{min-height:28px;padding:var(--co-spacing-xxs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-color-picker--sm .co-color-picker__trigger{min-height:32px;padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-14)}.co-color-picker--lg .co-color-picker__trigger{min-height:48px;padding:var(--co-spacing-sm) var(--co-spacing-lg);font-size:var(--co-font-size-16)}.co-color-picker--s .co-color-picker__swatch,.co-color-picker--sm .co-color-picker__swatch{width:18px;height:18px}.co-color-picker__trigger:hover{border-color:var(--co-semantic-border-default)}.co-color-picker--open .co-color-picker__trigger{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--co-semantic-border-focus) 15%, transparent)}.co-color-picker__trigger:focus-visible{outline:none;border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--co-semantic-border-focus) 15%, transparent)}.co-color-picker--error .co-color-picker__trigger{border-color:var(--co-color-status-error)}.co-color-picker__swatch{width:22px;height:22px;box-sizing:border-box;border-radius:var(--co-border-radius-full);border:1px solid var(--co-semantic-border-subtle);flex-shrink:0}.co-color-picker__value{flex:1;font-size:inherit;font-family:inherit;color:var(--co-semantic-text-default);font-weight:500;text-transform:uppercase}.co-color-picker__value--empty{color:var(--co-semantic-text-muted);font-weight:400}.co-color-picker__panel{padding:var(--co-spacing-md);display:flex;flex-direction:column;gap:var(--co-spacing-md)}.co-color-picker__area{position:relative;height:132px;border-radius:var(--co-border-radius-xxs);cursor:crosshair;touch-action:none;background:linear-gradient(to top, black, transparent), linear-gradient(to right, white, transparent), hsl(var(--co-color-picker-hue, 0) 100% 50%)}.co-color-picker__area-thumb{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:var(--co-border-radius-full);border:2px solid var(--co-semantic-surface-page);box-shadow:0 0 0 1px var(--co-semantic-border-default);box-sizing:border-box;pointer-events:none}.co-color-picker__channel{position:absolute;inset:0;opacity:0;pointer-events:none;margin:0}.co-color-picker__area:focus-within{outline:2px solid var(--co-semantic-border-focus);outline-offset:2px}.co-color-picker__hue-input{width:100%;height:12px;margin:0;appearance:none;-webkit-appearance:none;border-radius:var(--co-border-radius-full);background:linear-gradient(to right, hsl(0 100% 50%), hsl(60 100% 50%), hsl(120 100% 50%), hsl(180 100% 50%), hsl(240 100% 50%), hsl(300 100% 50%), hsl(360 100% 50%));cursor:pointer}.co-color-picker__hue-input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:16px;height:16px;border-radius:var(--co-border-radius-full);background:var(--co-semantic-surface-page);box-shadow:0 0 0 1px var(--co-semantic-border-default);cursor:grab}.co-color-picker__hue-input::-moz-range-thumb{width:16px;height:16px;border:none;border-radius:var(--co-border-radius-full);background:var(--co-semantic-surface-page);box-shadow:0 0 0 1px var(--co-semantic-border-default)}.co-color-picker__hue-input:focus-visible{outline:2px solid var(--co-semantic-border-focus);outline-offset:2px}.co-color-picker__grid{display:flex;flex-direction:column;gap:var(--co-spacing-md)}.co-color-picker__grid-group{display:grid;grid-template-columns:repeat(6, 32px);gap:var(--co-spacing-sm2)}.co-color-picker__grid-item{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--co-border-radius-xxs);border:2px solid transparent;cursor:pointer;box-sizing:border-box;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-out), border-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-color-picker__grid-item:hover{transform:scale(1.1)}.co-color-picker__grid-item--selected{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--co-semantic-border-focus) 25%, transparent)}.co-color-picker__grid-item--light{box-shadow:inset 0 0 0 1px var(--co-semantic-border-default)}.co-color-picker__grid-item--light.co-color-picker__grid-item--selected{box-shadow:inset 0 0 0 1px var(--co-semantic-border-default), 0 0 0 2px color-mix(in srgb, var(--co-semantic-border-focus) 25%, transparent)}.co-color-picker__grid-item:focus-visible{outline:none;box-shadow:0 0 0 2px var(--co-semantic-surface-page), 0 0 0 4px var(--co-semantic-border-focus)}.co-color-picker__grid-item--light:focus-visible{box-shadow:inset 0 0 0 1px var(--co-semantic-border-default), 0 0 0 2px var(--co-semantic-surface-page), 0 0 0 4px var(--co-semantic-border-focus)}.co-color-picker__grid-check{color:var(--co-semantic-surface-page)}.co-color-picker__grid-item--light .co-color-picker__grid-check{color:var(--co-semantic-text-default)}.co-color-picker__hex-row{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-xs) var(--co-spacing-sm);background:var(--co-semantic-surface-secondary);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-xxs)}.co-color-picker__hex-prefix{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:500}.co-color-picker__hex-row:has(>.co-color-picker__hex-input:focus){border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-color-picker__hex-input{flex:1;min-width:0;box-sizing:border-box;border:none;background:transparent;padding:0;font-size:var(--co-font-size-14);font-family:var(--co-font-family-mono, monospace);color:var(--co-semantic-text-default);text-transform:uppercase}.co-color-picker__hex-input:focus,.co-color-picker__hex-input:focus-visible{outline:none}.co-color-picker__hex-input:disabled{color:var(--co-semantic-text-muted);cursor:not-allowed;opacity:1;-webkit-text-fill-color:var(--co-semantic-text-muted)}.co-color-picker__eyedropper{display:flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs);border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);border-radius:var(--co-border-radius-xxs);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out), background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-color-picker__eyedropper:hover:not(:disabled){color:var(--co-semantic-text-default);background:var(--co-semantic-surface-hover)}.co-color-picker__eyedropper:focus-visible{outline:none;box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-color-picker__eyedropper:disabled{cursor:not-allowed;opacity:0.5}.co-color-picker__copy-btn{display:flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs);border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);border-radius:var(--co-border-radius-xxs);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out), background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-color-picker__copy-btn:hover:not(:disabled){color:var(--co-semantic-text-default);background:var(--co-semantic-surface-hover)}.co-color-picker__copy-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-color-picker__copy-btn:disabled{cursor:not-allowed;opacity:0.5}.co-color-picker__copy-btn--copied{color:var(--co-color-status-success)}.co-color-picker__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);font-size:var(--co-font-size-14);color:var(--co-semantic-text-muted);padding:0 var(--co-spacing-xs)}.co-color-picker__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-color-picker--error .co-color-picker__helper{color:var(--co-semantic-status-error)}:host([layout='horizontal']) .co-color-picker{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-color-picker__label{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-color-picker__label{white-space:normal}:host([layout='horizontal']) .co-color-picker>:not(.co-color-picker__label){grid-column:2;min-width:0}"}},[1,"co-color-picker",{value:[1025],label:[1],placeholder:[1],disabled:[4],required:[4],status:[1],helperText:[1,"helper-text"],layout:[513],size:[513],name:[1],presets:[1],locale:[1],isOpen:[32],copied:[32],hsv:[32],hexDraft:[32],areaAxis:[32],focusedIndex:[32]},void 0,{value:[{syncFromValue:0}]}]);function A(){"undefined"!=typeof customElements&&["co-color-picker","co-icon","co-popover"].forEach((o=>{switch(o){case"co-color-picker":customElements.get(t(o))||customElements.define(t(o),C);break;case"co-icon":customElements.get(t(o))||u();break;case"co-popover":customElements.get(t(o))||b()}}))}C.PANEL_ID="co-color-picker-panel",C.AREA_KEYS={ArrowRight:{axis:"s",dir:1},ArrowLeft:{axis:"s",dir:-1},ArrowUp:{axis:"v",dir:1},ArrowDown:{axis:"v",dir:-1}},A();const D=C,B=A;export{D as CoColorPicker,B as defineCustomElement}
@@ -1 +1 @@
1
- import{h as e,t as o,p as c,H as t,c as r}from"./index.js";import{n as i}from"./p-CQY6Ul7q.js";import{d as n}from"./p-Bbny3WUc.js";import{d as s}from"./p-Bxk96Zgc.js";import{d as a}from"./p-Dj1EZ5qD.js";function l(e){return e?e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/^\w/,(e=>e.toUpperCase())):""}function d(e){return(e+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function p(e,o){if(!o)return d(e);const c=o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return d(e).replace(RegExp(`(${c})`,"gi"),"<mark>$1</mark>")}function u(e,o){const c=new Set(e),t={};for(const c of e){const e=c.split(".");let r=t;for(let c=0;c<e.length;c++){const t=e[c],i=e.slice(0,c+1).join(".");if(!r[t]){const n=c===e.length-1&&(null==o?void 0:o.get(i))||t;r[t]={label:n,key:i,childrenMap:{}}}c<e.length-1&&(r=r[t].childrenMap)}}const r=e=>Object.values(e).map((e=>{const o=r(e.childrenMap),t=o.length>0,i=t&&c.has(e.key),n={label:e.label,key:e.key,fullPath:e.key,children:t?o:null};return i&&n.children&&n.children.unshift({label:e.label,key:e.key+".__self",fullPath:e.key,children:null,isSelf:!0}),n}));return m(r(t))}function m(e){return[...e].sort(((e,o)=>{if(e.isSelf)return-1;if(o.isSelf)return 1;const c=e.children&&e.children.length>0,t=o.children&&o.children.length>0;return!c&&t?-1:c&&!t?1:e.label.localeCompare(o.label)})).map((e=>Object.assign(Object.assign({},e),{children:e.children?m(e.children):null})))}function h(e,o){const c=i(o);return e.map((e=>{const t=i(e.label).includes(c),r=i(l(e.label)).includes(c),n=i(e.fullPath).includes(c);if(!e.children||0===e.children.length)return t||r||n?e:null;const s=h(e.children,o);return t||r||s.length>0?Object.assign(Object.assign({},e),{children:s.length>0?s:e.children}):null})).filter(Boolean)}function f(e){const o=[];for(const c of e)c.children&&0!==c.children.length?o.push(...f(c.children)):o.push(c.fullPath);return o}const _=o=>{const{node:c,depth:t,selected:r,expandedKeys:i,disabled:n,query:s,onOptionClick:a,onParentCheck:d,onToggleExpand:u}=o,m=!c.children||0===c.children.length,h=i.has(c.key),b=m&&r.includes(c.fullPath);let k=!1,x=!1,g=0,v=0;if(!m&&c.children){const e=f(c.children);v=e.length,g=e.filter((e=>r.includes(e))).length,k=v>0&&g===v,x=g>0}return e("div",{class:"co-column-picker__node"},e("div",{class:{"co-column-picker__node-row":!0,"co-column-picker__node-row--leaf":m,"co-column-picker__node-row--parent":!m,"co-column-picker__node-row--expanded":!m&&h,"co-column-picker__node-row--selected":m&&b},style:{paddingLeft:20*t+10+"px"},onClick:e=>m?a(c.fullPath):u(c.key,e)},e("co-checkbox",{checked:m?b:k,indeterminate:!m&&x&&!k,disabled:n,onClick:e=>{e.stopPropagation(),m?a(c.fullPath):d(c)}}),e("span",{class:{"co-column-picker__node-label":!0,"co-column-picker__node-label--parent":!m,"co-column-picker__node-label--self":!!c.isSelf},innerHTML:p(l(c.label),s)}),c.isSelf&&e("span",{class:"co-column-picker__self-tag"},"self"),!m&&e("span",{class:"co-column-picker__node-counter"},g>0&&[e("span",{class:"co-column-picker__counter-selected"},g),e("span",{class:"co-column-picker__counter-sep"},"/")],e("span",{class:"co-column-picker__counter-total"},v)),!m&&e("span",{class:{"co-column-picker__chevron":!0,"co-column-picker__chevron--open":h},onClick:e=>u(c.key,e)},e("co-icon",{name:"caret-right",size:16}))),!m&&h&&c.children&&e("div",{class:"co-column-picker__node-children",style:{"--guide-left":20*t+19+"px"}},c.children.map((o=>e(_,{node:o,depth:t+1,selected:r,expandedKeys:i,disabled:n,query:s,onOptionClick:a,onParentCheck:d,onToggleExpand:u})))))},b=c(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coChange=r(this,"coChange",7),this.coClear=r(this,"coClear",7),this.coSearch=r(this,"coSearch",7),this.options="[]",this.value="[]",this.multiple=!0,this.disabled=!1,this.showToolbar=!0,this.showSearch=!0,this.clearable=!0,this.placeholder="Select…",this.maxHeight=220,this.emptyText="No results found",this.selectAllText="Select all",this.clearText="Clear",this.expandText="Expand",this.collapseText="Collapse",this.selectedText="selected",this.sections="[]",this.status="default",this.isOpen=!1,this.query="",this.expandedKeys=new Set,this.focused=!1,this.handleFieldClick=()=>{this.disabled||(this.isOpen=!this.isOpen,this.focused=!0,this.isOpen&&requestAnimationFrame((()=>{var e;return null===(e=this.searchInputEl)||void 0===e?void 0:e.focus()})))},this.handleSearchInput=e=>{this.query=e.target.value,this.coSearch.emit(this.query),this.query&&(this.expandedKeys=function(e,o,c){const t=i(o),r=new Set(c),n=e=>{var o;let c=!1;for(const s of e)if(null===(o=s.children)||void 0===o?void 0:o.length){const e=n(s.children),o=i(s.label).includes(t)||i(l(s.label)).includes(t);(e||o)&&(r.add(s.key),c=!0)}else(i(s.label).includes(t)||i(l(s.label)).includes(t))&&(c=!0);return c};return n(e),r}(this.getTree(),this.query,this.expandedKeys))},this.handleSearchClear=e=>{var o;e.stopPropagation(),this.query="",this.coSearch.emit(""),null===(o=this.searchInputEl)||void 0===o||o.focus()},this.handleClear=e=>{e.stopPropagation(),this.value="[]",this.coClear.emit(),this.coChange.emit([])},this.handleSelectAll=()=>{this.disabled||this.emitSelection(f(this.getTree()))},this.handleDeselectAll=()=>{this.disabled||(this.value="[]",this.coClear.emit(),this.coChange.emit([]))},this.handleExpandAll=()=>{this.expandedKeys=function(e){const o=new Set,c=e=>{var t;for(const r of e)(null===(t=r.children)||void 0===t?void 0:t.length)&&(o.add(r.key),c(r.children))};return c(e),o}(this.getTree())},this.handleCollapseAll=()=>{this.expandedKeys=new Set},this.handleOptionClick=e=>{if(!this.disabled)if(this.multiple){const o=[...this.selectedValues],c=o.indexOf(e);c>=0?o.splice(c,1):o.push(e),this.emitSelection(o)}else this.emitSelection([e]),this.isOpen=!1},this.handleParentCheck=e=>{if(this.disabled)return;const o=f(e.children||[]),c=[...this.selectedValues];if(o.every((e=>c.includes(e))))this.emitSelection(c.filter((e=>!o.includes(e))));else{for(const e of o)c.includes(e)||c.push(e);this.emitSelection(c)}},this.handleChipRemove=(e,o)=>{o.stopPropagation(),this.disabled||this.emitSelection(this.selectedValues.filter((o=>o!==e)))},this.handleToggleExpand=(e,o)=>{o.stopPropagation();const c=new Set(this.expandedKeys);c.has(e)?c.delete(e):c.add(e),this.expandedKeys=c}}get parsedOptions(){return function(e){let o=e;if("string"==typeof o)try{o=JSON.parse(o)}catch(e){return[]}return Array.isArray(o)?o.map((e=>"string"==typeof e?e:e.value)):[]}(this.options)}get parsedSections(){return function(e){let o=e;if("string"==typeof o)try{o=JSON.parse(o)}catch(e){return[]}return Array.isArray(o)?o:[]}(this.sections)}get selectedValues(){return function(e){if("string"==typeof e)try{return JSON.parse(e)}catch(o){return e?[e]:[]}return Array.isArray(e)?e:[]}(this.value)}get optionLabelMap(){return function(e){let o=e;if("string"==typeof o)try{o=JSON.parse(o)}catch(e){return new Map}if(!Array.isArray(o))return new Map;const c=new Map;for(const e of o)"string"==typeof e?c.set(e,l(e.split(".").pop()||e)):c.set(e.value,e.label||e.value);return c}(this.options)}get hasValue(){return this.selectedValues.length>0}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning",info:"info"}[this.status]||null}emitSelection(e){this.value=JSON.stringify(e),this.coChange.emit(e)}onOptionsChange(){this.expandedKeys=function(e,o,c){if(!o.length)return c;const t=new Set(c),r=e=>{var c;for(const i of e)(null===(c=i.children)||void 0===c?void 0:c.length)&&(f(i.children).some((e=>o.includes(e)))&&t.add(i.key),r(i.children))};return r(e),t}(this.getTree(),this.selectedValues,this.expandedKeys)}handleDocumentClick(e){this.el.contains(e.target)||(this.isOpen=!1,this.focused=!1)}getTree(){return u(this.parsedOptions,this.optionLabelMap)}getSectionedTree(){const e=this.parsedSections;if(!e.length)return[];const o=this.parsedOptions;return e.map((c=>{const t=o.filter((o=>c.prefix?o.startsWith(c.prefix+"."):!e.some((e=>e.prefix&&o.startsWith(e.prefix+".")))));return Object.assign(Object.assign({},c),{nodes:m(u(t,this.optionLabelMap))})})).filter((e=>e.nodes.length>0))}renderField(){const o=this.selectedValues,c=this.optionLabelMap;return e("div",{class:{"co-column-picker__field":!0,"co-column-picker__field--focused":this.focused,"co-column-picker__field--disabled":this.disabled,"co-column-picker__field--open":this.isOpen},onClick:this.handleFieldClick},this.multiple&&o.length>0&&e("div",{class:"co-column-picker__field-chips"},o.map((o=>e("co-chip",{label:c.get(o)||l(o.split(".").pop()||o),size:"small",removable:!this.disabled,onCoRemove:e=>this.handleChipRemove(o,e)})))),!this.multiple&&o.length>0&&e("span",{class:"co-column-picker__field-text"},o.map((e=>c.get(e)||l(e.split(".").pop()||e))).join(", ")),0===o.length&&e("span",{class:"co-column-picker__field-placeholder"},this.placeholder),e("div",{class:"co-column-picker__field-actions"},this.clearable&&this.hasValue&&!this.disabled&&e("button",{class:"co-column-picker__field-clear",type:"button",tabIndex:-1,onClick:this.handleClear,"aria-label":"Clear"},e("co-icon",{name:"x-circle",size:16,weight:"fill"})),e("co-icon",{name:this.isOpen?"caret-up":"caret-down",size:16,class:"co-column-picker__field-caret"})))}renderTree(){const o={selected:this.selectedValues,expandedKeys:this.expandedKeys,disabled:this.disabled,query:this.query,onOptionClick:this.handleOptionClick,onParentCheck:this.handleParentCheck,onToggleExpand:this.handleToggleExpand};if(this.parsedSections.length>0){const c=this.getSectionedTree(),t=this.query?c.map((e=>Object.assign(Object.assign({},e),{nodes:h(e.nodes,this.query)}))).filter((e=>e.nodes.length>0)):c;return t.length?e("div",{class:"co-column-picker__tree"},t.map((c=>[e("div",{class:"co-column-picker__section-header"},e("span",{class:"co-column-picker__section-label"},c.label),c.prefix&&e("span",{class:"co-column-picker__section-prefix"},"(",c.prefix,")")),...c.nodes.map((c=>e(_,Object.assign({node:c,depth:0},o))))]))):this.renderEmpty()}const c=this.getTree(),t=this.query?h(c,this.query):c;return t.length?e("div",{class:"co-column-picker__tree"},t.map((c=>e(_,Object.assign({node:c,depth:0},o))))):this.renderEmpty()}renderEmpty(){return e("div",{class:"co-column-picker__empty"},e("co-icon",{name:"magnifying-glass",size:40,class:"co-column-picker__empty-icon"}),e("span",null,this.emptyText))}render(){return e("div",{key:"6407a41a8e03d70e54cfd378747396a413eb0a11",class:{"co-column-picker":!0,"co-column-picker--open":this.isOpen,"co-column-picker--disabled":this.disabled,"co-column-picker--focused":this.focused,["co-column-picker--"+this.status]:"default"!==this.status}},(this.label||this.secondaryLabel)&&e("div",{key:"86850ac9d0162b34369c70424549d101c9b72cc3",class:"co-column-picker__labels"},this.label&&e("label",{key:"c05eccf88052fdcf8b593282daa1fc0f9a8bab1e",class:"co-column-picker__label"},this.label),this.secondaryLabel&&e("span",{key:"fe64f07fb1238d51506575c679bb33c7797c2edc",class:"co-column-picker__secondary-label"},this.secondaryLabel)),this.renderField(),this.isOpen&&e("div",{key:"cb28e40aaf843c96a2649efef1e3803cde627345",class:"co-column-picker__dropdown"},this.showSearch&&e("div",{key:"37ab85bf708a3ba34f5ddb1ab416600b0d0be072",class:"co-column-picker__search"},e("co-icon",{key:"8b10c859742279f5e11d764d6012429259bdec19",name:"magnifying-glass",size:14,class:"co-column-picker__search-icon"}),e("input",{key:"7f52dbbcc524bf78424cb85396ad62b68b16dac5",ref:e=>this.searchInputEl=e,class:"co-column-picker__search-input",type:"text",value:this.query,placeholder:this.placeholder,onInput:this.handleSearchInput,onClick:e=>e.stopPropagation()}),this.query&&e("button",{key:"ddbd0996534dcda27de900019d10b12eeb352d8d",class:"co-column-picker__search-clear",type:"button",onClick:this.handleSearchClear},e("co-icon",{key:"f4d997c88423b664f63fcc09acf5366f735f3a57",name:"x",size:14}))),this.showToolbar&&this.multiple&&e("div",{key:"0e6ee3c9351c48c10affd4e2146cf9939a06971d",class:"co-column-picker__toolbar"},e("button",{key:"101167f8a9da5f47dec86a94f9ffa0d4bb2edfbb",class:"co-column-picker__toolbar-btn",type:"button",onClick:this.handleSelectAll},this.selectAllText),e("button",{key:"6e00fd6f1be5f2bc223dbb1b6800916d0872b7a2",class:"co-column-picker__toolbar-btn",type:"button",onClick:this.handleDeselectAll},this.clearText),e("span",{key:"9446309b1a737059936a3fecdbbca37677544c49",class:"co-column-picker__toolbar-sep"}),e("button",{key:"7a014ee36386286cee3b97d1a67cafe8eca60ac4",class:"co-column-picker__toolbar-btn",type:"button",onClick:this.handleExpandAll},this.expandText),e("button",{key:"09a58d24e5fef162b9c8452d905e36c89b5fb0a9",class:"co-column-picker__toolbar-btn",type:"button",onClick:this.handleCollapseAll},this.collapseText),e("span",{key:"01468f7c6140081183cccb1c7ae063f8bbafad5e",style:{flex:"1"}}),this.selectedValues.length>0&&e("span",{key:"94d9805ce88fed580da36d122d134c4f445df03f",class:"co-column-picker__toolbar-counter"},this.selectedValues.length," ",this.selectedText)),e("div",{key:"95aab5f3408bf840d0e27f6e1de3908b6a9dd3c6",class:"co-column-picker__scroll",style:{maxHeight:this.maxHeight+"px"}},this.renderTree())),this.helperText&&e("div",{key:"27533140acd117f09e981f307f0c39d741b92515",class:"co-column-picker__helper co-column-picker__helper--"+this.status},this.statusIcon&&e("co-icon",{key:"7992e3f214985653e673f64f5b85e07be5298cc7",name:this.statusIcon,size:14,weight:"fill",class:"co-column-picker__helper-icon"}),e("span",{key:"01eb7d766027a9c0cff30f91be730f3dbb4b2443",class:"co-column-picker__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{options:[{onOptionsChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;position:relative}.co-column-picker{display:flex;flex-direction:column;gap:var(--co-spacing-xs);position:relative}.co-column-picker__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-xs)}.co-column-picker__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;cursor:default}.co-column-picker__secondary-label{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;text-align:right}.co-column-picker--disabled .co-column-picker__label,.co-column-picker--disabled .co-column-picker__secondary-label{color:var(--co-semantic-text-disabled)}.co-column-picker__field{display:flex;align-items:center;flex-wrap:wrap;gap:var(--co-spacing-xs);padding:var(--co-spacing-xs) var(--co-spacing-md);background:var(--co-semantic-surface-secondary);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__field--focused{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-column-picker__field--disabled{background:var(--co-semantic-surface-disabled);border-color:transparent;cursor:not-allowed}.co-column-picker--error .co-column-picker__field{border-color:var(--co-semantic-status-error)}.co-column-picker--success .co-column-picker__field{border-color:var(--co-semantic-status-success)}.co-column-picker--warning .co-column-picker__field{border-color:var(--co-color-status-review)}.co-column-picker--info .co-column-picker__field{border-color:var(--co-semantic-status-info)}.co-column-picker__field-text{flex:1;min-width:0;color:var(--co-semantic-text-default);font-size:var(--co-font-size-14);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-column-picker__field-placeholder{flex:1;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400}.co-column-picker__field-chips{display:flex;flex-wrap:wrap;gap:var(--co-spacing-xs);flex:1}.co-column-picker__field-actions{display:flex;align-items:center;gap:var(--co-spacing-xs);flex-shrink:0;margin-left:auto}.co-column-picker__field-clear{display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__field-clear:hover{color:var(--co-semantic-text-default)}.co-column-picker__field-caret{color:var(--co-semantic-text-muted);display:flex;align-items:center;transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__field--open .co-column-picker__field-caret{color:var(--co-semantic-text-default)}.co-column-picker__dropdown{position:absolute;top:100%;left:0;right:0;z-index:100;margin-top:var(--co-spacing-xs);background:var(--co-semantic-surface-secondary);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-sm, 12px);box-shadow:0 4px 16px var(--co-color-opacity-negro-8);overflow:hidden}.co-column-picker__search{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xs) var(--co-spacing-md);border-bottom:1px solid var(--co-semantic-border-subtle);transition:border-color var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-column-picker__search:focus-within{border-color:var(--co-semantic-border-focus)}.co-column-picker__search-icon{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-column-picker__search-input{flex:1;border:none;outline:none;background:transparent;font-size:var(--co-font-size-14);font-family:inherit;color:var(--co-semantic-text-default);line-height:1.4;padding:0}.co-column-picker__search-input::placeholder{color:var(--co-semantic-text-muted)}.co-column-picker__search-clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:none;cursor:pointer;color:var(--co-semantic-text-muted);padding:0;border-radius:var(--co-border-radius-xxs);transition:all var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__search-clear:hover{color:var(--co-semantic-text-default);background:var(--co-semantic-surface-hover)}.co-column-picker__toolbar{display:flex;align-items:center;gap:2px;padding:var(--co-spacing-xs) var(--co-spacing-md);border-bottom:1px solid var(--co-semantic-border-subtle)}.co-column-picker__toolbar-sep{width:1px;height:14px;background:var(--co-semantic-border-subtle);margin:0 var(--co-spacing-xs)}.co-column-picker__toolbar-btn{border:none;background:none;font-size:11.5px;font-family:inherit;color:var(--co-semantic-text-muted);cursor:pointer;padding:3px var(--co-spacing-xs);font-weight:500;transition:all var(--co-motion-duration-fast) var(--co-motion-ease-out);border-radius:var(--co-border-radius-xxs);line-height:1.4}.co-column-picker__toolbar-btn:hover{color:var(--co-semantic-text-default);background:var(--co-semantic-surface-hover)}.co-column-picker__toolbar-counter{font-size:11.5px;font-weight:500;color:var(--co-semantic-text-muted);font-variant-numeric:tabular-nums;padding:2px var(--co-spacing-xs);background:var(--co-semantic-surface-muted);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-xxs)}.co-column-picker__scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--co-semantic-border-default) transparent}.co-column-picker__scroll::-webkit-scrollbar{width:6px}.co-column-picker__scroll::-webkit-scrollbar-track{background:transparent}.co-column-picker__scroll::-webkit-scrollbar-thumb{background:var(--co-semantic-border-default);border-radius:var(--co-border-radius-full)}.co-column-picker__tree{padding:var(--co-spacing-xs) 0}.co-column-picker__node{user-select:none}.co-column-picker__node-row{display:flex;align-items:center;min-height:34px;padding:0 12px 0 10px;gap:var(--co-spacing-xs);cursor:pointer;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__node-row:hover{background-color:var(--co-semantic-surface-hover)}.co-column-picker__node-row--parent:hover{background-color:var(--co-semantic-surface-muted)}.co-column-picker__node-row--expanded{background-color:var(--co-semantic-surface-muted)}.co-column-picker__node-row--selected{background-color:var(--co-semantic-surface-muted)}.co-column-picker__node-label{flex:1;font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.co-column-picker__node-label--parent{font-weight:600;text-transform:capitalize}.co-column-picker__node-label--self{font-weight:400;color:var(--co-semantic-text-muted);text-transform:none}.co-column-picker__node-label mark{background:color-mix(in srgb, var(--co-color-primary-amarillo) 30%, transparent);color:inherit;padding:0 1px;border-radius:1px}.co-column-picker__self-tag{flex-shrink:0;font-size:10px;font-weight:500;color:var(--co-semantic-text-muted);background:var(--co-semantic-surface-muted);padding:1px 6px;border-radius:var(--co-border-radius-xxs);border:1px solid var(--co-semantic-border-subtle);text-transform:lowercase}.co-column-picker__node-counter{flex-shrink:0;font-size:11px;font-weight:400;color:var(--co-semantic-text-muted);font-variant-numeric:tabular-nums}.co-column-picker__counter-selected{font-weight:600;color:var(--co-semantic-text-default)}.co-column-picker__counter-sep{color:var(--co-semantic-border-default);margin:0 1px}.co-column-picker__counter-total{color:var(--co-semantic-text-muted)}.co-column-picker__chevron{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--co-semantic-text-muted);margin-left:var(--co-spacing-xs);transition:transform var(--co-motion-duration-base) var(--co-motion-ease-out), color var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-column-picker__chevron:hover{color:var(--co-semantic-text-default)}.co-column-picker__chevron--open{transform:rotate(90deg);color:var(--co-semantic-text-default)}.co-column-picker__node-children{position:relative}.co-column-picker__node-children::before{content:'';position:absolute;left:var(--guide-left, 19px);top:0;bottom:0;width:1px;background:var(--co-semantic-border-default)}.co-column-picker__section-header{display:flex;align-items:center;gap:6px;padding:var(--co-spacing-xs) var(--co-spacing-md) var(--co-spacing-xs);margin-top:var(--co-spacing-xs);border-top:1px solid var(--co-semantic-border-subtle)}.co-column-picker__section-header:first-child{margin-top:0;border-top:none}.co-column-picker__section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--co-semantic-text-secondary)}.co-column-picker__section-prefix{font-size:10px;font-weight:500;color:var(--co-semantic-text-muted);opacity:0.75}.co-column-picker__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--co-spacing-xs);padding:40px 16px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14)}.co-column-picker__empty-icon{color:var(--co-semantic-border-default)}.co-column-picker__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs)}.co-column-picker__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-column-picker__helper-text{font-size:var(--co-font-size-12, 12px);font-weight:400;line-height:1.4;color:var(--co-semantic-text-muted)}.co-column-picker__helper--error .co-column-picker__helper-text,.co-column-picker__helper--error .co-column-picker__helper-icon{color:var(--co-semantic-status-error)}.co-column-picker__helper--success .co-column-picker__helper-text,.co-column-picker__helper--success .co-column-picker__helper-icon{color:var(--co-semantic-status-success)}.co-column-picker__helper--warning .co-column-picker__helper-text,.co-column-picker__helper--warning .co-column-picker__helper-icon{color:var(--co-color-status-review)}.co-column-picker__helper--info .co-column-picker__helper-text,.co-column-picker__helper--info .co-column-picker__helper-icon{color:var(--co-semantic-status-info)}"}},[1,"co-column-picker",{label:[1],secondaryLabel:[1,"secondary-label"],options:[1],value:[1025],multiple:[4],disabled:[4],showToolbar:[4,"show-toolbar"],showSearch:[4,"show-search"],clearable:[4],placeholder:[1],maxHeight:[2,"max-height"],emptyText:[1,"empty-text"],selectAllText:[1,"select-all-text"],clearText:[1,"clear-text"],expandText:[1,"expand-text"],collapseText:[1,"collapse-text"],selectedText:[1,"selected-text"],sections:[1],status:[1],helperText:[1,"helper-text"],isOpen:[32],query:[32],expandedKeys:[32],focused:[32]},[[4,"click","handleDocumentClick"]],{options:[{onOptionsChange:0}]}]);function k(){"undefined"!=typeof customElements&&["co-column-picker","co-checkbox","co-chip","co-icon"].forEach((e=>{switch(e){case"co-column-picker":customElements.get(o(e))||customElements.define(o(e),b);break;case"co-checkbox":customElements.get(o(e))||n();break;case"co-chip":customElements.get(o(e))||s();break;case"co-icon":customElements.get(o(e))||a()}}))}k();const x=b,g=k;export{x as CoColumnPicker,g as defineCustomElement}
1
+ import{h as e,t as o,p as c,H as t,c as r}from"./index.js";import{n as i}from"./p-CQY6Ul7q.js";import{d as n}from"./p-9ceBPSd1.js";import{d as s}from"./p-Du_CgT5E.js";import{d as a}from"./p-DNJAIVfI.js";function l(e){return e?e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/^\w/,(e=>e.toUpperCase())):""}function d(e){return(e+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function p(e,o){if(!o)return d(e);const c=o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return d(e).replace(RegExp(`(${c})`,"gi"),"<mark>$1</mark>")}function u(e,o){const c=new Set(e),t={};for(const c of e){const e=c.split(".");let r=t;for(let c=0;c<e.length;c++){const t=e[c],i=e.slice(0,c+1).join(".");if(!r[t]){const n=c===e.length-1&&(null==o?void 0:o.get(i))||t;r[t]={label:n,key:i,childrenMap:{}}}c<e.length-1&&(r=r[t].childrenMap)}}const r=e=>Object.values(e).map((e=>{const o=r(e.childrenMap),t=o.length>0,i=t&&c.has(e.key),n={label:e.label,key:e.key,fullPath:e.key,children:t?o:null};return i&&n.children&&n.children.unshift({label:e.label,key:e.key+".__self",fullPath:e.key,children:null,isSelf:!0}),n}));return m(r(t))}function m(e){return[...e].sort(((e,o)=>{if(e.isSelf)return-1;if(o.isSelf)return 1;const c=e.children&&e.children.length>0,t=o.children&&o.children.length>0;return!c&&t?-1:c&&!t?1:e.label.localeCompare(o.label)})).map((e=>Object.assign(Object.assign({},e),{children:e.children?m(e.children):null})))}function h(e,o){const c=i(o);return e.map((e=>{const t=i(e.label).includes(c),r=i(l(e.label)).includes(c),n=i(e.fullPath).includes(c);if(!e.children||0===e.children.length)return t||r||n?e:null;const s=h(e.children,o);return t||r||s.length>0?Object.assign(Object.assign({},e),{children:s.length>0?s:e.children}):null})).filter(Boolean)}function f(e){const o=[];for(const c of e)c.children&&0!==c.children.length?o.push(...f(c.children)):o.push(c.fullPath);return o}const _=o=>{const{node:c,depth:t,selected:r,expandedKeys:i,disabled:n,query:s,onOptionClick:a,onParentCheck:d,onToggleExpand:u}=o,m=!c.children||0===c.children.length,h=i.has(c.key),b=m&&r.includes(c.fullPath);let k=!1,x=!1,g=0,v=0;if(!m&&c.children){const e=f(c.children);v=e.length,g=e.filter((e=>r.includes(e))).length,k=v>0&&g===v,x=g>0}return e("div",{class:"co-column-picker__node"},e("div",{class:{"co-column-picker__node-row":!0,"co-column-picker__node-row--leaf":m,"co-column-picker__node-row--parent":!m,"co-column-picker__node-row--expanded":!m&&h,"co-column-picker__node-row--selected":m&&b},style:{paddingLeft:20*t+10+"px"},onClick:e=>m?a(c.fullPath):u(c.key,e)},e("co-checkbox",{checked:m?b:k,indeterminate:!m&&x&&!k,disabled:n,onClick:e=>{e.stopPropagation(),m?a(c.fullPath):d(c)}}),e("span",{class:{"co-column-picker__node-label":!0,"co-column-picker__node-label--parent":!m,"co-column-picker__node-label--self":!!c.isSelf},innerHTML:p(l(c.label),s)}),c.isSelf&&e("span",{class:"co-column-picker__self-tag"},"self"),!m&&e("span",{class:"co-column-picker__node-counter"},g>0&&[e("span",{class:"co-column-picker__counter-selected"},g),e("span",{class:"co-column-picker__counter-sep"},"/")],e("span",{class:"co-column-picker__counter-total"},v)),!m&&e("span",{class:{"co-column-picker__chevron":!0,"co-column-picker__chevron--open":h},onClick:e=>u(c.key,e)},e("co-icon",{name:"caret-right",size:16}))),!m&&h&&c.children&&e("div",{class:"co-column-picker__node-children",style:{"--guide-left":20*t+19+"px"}},c.children.map((o=>e(_,{node:o,depth:t+1,selected:r,expandedKeys:i,disabled:n,query:s,onOptionClick:a,onParentCheck:d,onToggleExpand:u})))))},b=c(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coChange=r(this,"coChange",7),this.coClear=r(this,"coClear",7),this.coSearch=r(this,"coSearch",7),this.options="[]",this.value="[]",this.multiple=!0,this.disabled=!1,this.showToolbar=!0,this.showSearch=!0,this.clearable=!0,this.placeholder="Select…",this.maxHeight=220,this.emptyText="No results found",this.selectAllText="Select all",this.clearText="Clear",this.expandText="Expand",this.collapseText="Collapse",this.selectedText="selected",this.sections="[]",this.status="default",this.isOpen=!1,this.query="",this.expandedKeys=new Set,this.focused=!1,this.handleFieldClick=()=>{this.disabled||(this.isOpen=!this.isOpen,this.focused=!0,this.isOpen&&requestAnimationFrame((()=>{var e;return null===(e=this.searchInputEl)||void 0===e?void 0:e.focus()})))},this.handleSearchInput=e=>{this.query=e.target.value,this.coSearch.emit(this.query),this.query&&(this.expandedKeys=function(e,o,c){const t=i(o),r=new Set(c),n=e=>{var o;let c=!1;for(const s of e)if(null===(o=s.children)||void 0===o?void 0:o.length){const e=n(s.children),o=i(s.label).includes(t)||i(l(s.label)).includes(t);(e||o)&&(r.add(s.key),c=!0)}else(i(s.label).includes(t)||i(l(s.label)).includes(t))&&(c=!0);return c};return n(e),r}(this.getTree(),this.query,this.expandedKeys))},this.handleSearchClear=e=>{var o;e.stopPropagation(),this.query="",this.coSearch.emit(""),null===(o=this.searchInputEl)||void 0===o||o.focus()},this.handleClear=e=>{e.stopPropagation(),this.value="[]",this.coClear.emit(),this.coChange.emit([])},this.handleSelectAll=()=>{this.disabled||this.emitSelection(f(this.getTree()))},this.handleDeselectAll=()=>{this.disabled||(this.value="[]",this.coClear.emit(),this.coChange.emit([]))},this.handleExpandAll=()=>{this.expandedKeys=function(e){const o=new Set,c=e=>{var t;for(const r of e)(null===(t=r.children)||void 0===t?void 0:t.length)&&(o.add(r.key),c(r.children))};return c(e),o}(this.getTree())},this.handleCollapseAll=()=>{this.expandedKeys=new Set},this.handleOptionClick=e=>{if(!this.disabled)if(this.multiple){const o=[...this.selectedValues],c=o.indexOf(e);c>=0?o.splice(c,1):o.push(e),this.emitSelection(o)}else this.emitSelection([e]),this.isOpen=!1},this.handleParentCheck=e=>{if(this.disabled)return;const o=f(e.children||[]),c=[...this.selectedValues];if(o.every((e=>c.includes(e))))this.emitSelection(c.filter((e=>!o.includes(e))));else{for(const e of o)c.includes(e)||c.push(e);this.emitSelection(c)}},this.handleChipRemove=(e,o)=>{o.stopPropagation(),this.disabled||this.emitSelection(this.selectedValues.filter((o=>o!==e)))},this.handleToggleExpand=(e,o)=>{o.stopPropagation();const c=new Set(this.expandedKeys);c.has(e)?c.delete(e):c.add(e),this.expandedKeys=c}}get parsedOptions(){return function(e){let o=e;if("string"==typeof o)try{o=JSON.parse(o)}catch(e){return[]}return Array.isArray(o)?o.map((e=>"string"==typeof e?e:e.value)):[]}(this.options)}get parsedSections(){return function(e){let o=e;if("string"==typeof o)try{o=JSON.parse(o)}catch(e){return[]}return Array.isArray(o)?o:[]}(this.sections)}get selectedValues(){return function(e){if("string"==typeof e)try{return JSON.parse(e)}catch(o){return e?[e]:[]}return Array.isArray(e)?e:[]}(this.value)}get optionLabelMap(){return function(e){let o=e;if("string"==typeof o)try{o=JSON.parse(o)}catch(e){return new Map}if(!Array.isArray(o))return new Map;const c=new Map;for(const e of o)"string"==typeof e?c.set(e,l(e.split(".").pop()||e)):c.set(e.value,e.label||e.value);return c}(this.options)}get hasValue(){return this.selectedValues.length>0}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning",info:"info"}[this.status]||null}emitSelection(e){this.value=JSON.stringify(e),this.coChange.emit(e)}onOptionsChange(){this.expandedKeys=function(e,o,c){if(!o.length)return c;const t=new Set(c),r=e=>{var c;for(const i of e)(null===(c=i.children)||void 0===c?void 0:c.length)&&(f(i.children).some((e=>o.includes(e)))&&t.add(i.key),r(i.children))};return r(e),t}(this.getTree(),this.selectedValues,this.expandedKeys)}handleDocumentClick(e){this.el.contains(e.target)||(this.isOpen=!1,this.focused=!1)}getTree(){return u(this.parsedOptions,this.optionLabelMap)}getSectionedTree(){const e=this.parsedSections;if(!e.length)return[];const o=this.parsedOptions;return e.map((c=>{const t=o.filter((o=>c.prefix?o.startsWith(c.prefix+"."):!e.some((e=>e.prefix&&o.startsWith(e.prefix+".")))));return Object.assign(Object.assign({},c),{nodes:m(u(t,this.optionLabelMap))})})).filter((e=>e.nodes.length>0))}renderField(){const o=this.selectedValues,c=this.optionLabelMap;return e("div",{class:{"co-column-picker__field":!0,"co-column-picker__field--focused":this.focused,"co-column-picker__field--disabled":this.disabled,"co-column-picker__field--open":this.isOpen},onClick:this.handleFieldClick},this.multiple&&o.length>0&&e("div",{class:"co-column-picker__field-chips"},o.map((o=>e("co-chip",{label:c.get(o)||l(o.split(".").pop()||o),size:"small",removable:!this.disabled,onCoRemove:e=>this.handleChipRemove(o,e)})))),!this.multiple&&o.length>0&&e("span",{class:"co-column-picker__field-text"},o.map((e=>c.get(e)||l(e.split(".").pop()||e))).join(", ")),0===o.length&&e("span",{class:"co-column-picker__field-placeholder"},this.placeholder),e("div",{class:"co-column-picker__field-actions"},this.clearable&&this.hasValue&&!this.disabled&&e("button",{class:"co-column-picker__field-clear",type:"button",tabIndex:-1,onClick:this.handleClear,"aria-label":"Clear"},e("co-icon",{name:"x-circle",size:16,weight:"fill"})),e("co-icon",{name:this.isOpen?"caret-up":"caret-down",size:16,class:"co-column-picker__field-caret"})))}renderTree(){const o={selected:this.selectedValues,expandedKeys:this.expandedKeys,disabled:this.disabled,query:this.query,onOptionClick:this.handleOptionClick,onParentCheck:this.handleParentCheck,onToggleExpand:this.handleToggleExpand};if(this.parsedSections.length>0){const c=this.getSectionedTree(),t=this.query?c.map((e=>Object.assign(Object.assign({},e),{nodes:h(e.nodes,this.query)}))).filter((e=>e.nodes.length>0)):c;return t.length?e("div",{class:"co-column-picker__tree"},t.map((c=>[e("div",{class:"co-column-picker__section-header"},e("span",{class:"co-column-picker__section-label"},c.label),c.prefix&&e("span",{class:"co-column-picker__section-prefix"},"(",c.prefix,")")),...c.nodes.map((c=>e(_,Object.assign({node:c,depth:0},o))))]))):this.renderEmpty()}const c=this.getTree(),t=this.query?h(c,this.query):c;return t.length?e("div",{class:"co-column-picker__tree"},t.map((c=>e(_,Object.assign({node:c,depth:0},o))))):this.renderEmpty()}renderEmpty(){return e("div",{class:"co-column-picker__empty"},e("co-icon",{name:"magnifying-glass",size:40,class:"co-column-picker__empty-icon"}),e("span",null,this.emptyText))}render(){return e("div",{key:"bf11db2386df7088dfcec622ee02ce527fcef54f",class:{"co-column-picker":!0,"co-column-picker--open":this.isOpen,"co-column-picker--disabled":this.disabled,"co-column-picker--focused":this.focused,["co-column-picker--"+this.status]:"default"!==this.status}},(this.label||this.secondaryLabel)&&e("div",{key:"27543398ce1e3fc9e0f08ee2e4d59167e4e79894",class:"co-column-picker__labels"},this.label&&e("label",{key:"7051f1b7c44c7f0da7ae0e741a14cbe8a3f3ba26",class:"co-column-picker__label"},this.label),this.secondaryLabel&&e("span",{key:"17d011a13a7f5f7c1c44f3738f15b3438180fc7b",class:"co-column-picker__secondary-label"},this.secondaryLabel)),this.renderField(),this.isOpen&&e("div",{key:"4dcb6cb4289630a8238e53010aec69ec0cfc2e2a",class:"co-column-picker__dropdown"},this.showSearch&&e("div",{key:"0233bff4eeb82fe7fdf91aad530c97fc6dcac06f",class:"co-column-picker__search"},e("co-icon",{key:"64d1e6fc90c2380e509ca750854a40e416a902c1",name:"magnifying-glass",size:14,class:"co-column-picker__search-icon"}),e("input",{key:"60e75c92d5fa2991542063e5add78d8b1c79861b",ref:e=>this.searchInputEl=e,class:"co-column-picker__search-input",type:"text",value:this.query,placeholder:this.placeholder,onInput:this.handleSearchInput,onClick:e=>e.stopPropagation()}),this.query&&e("button",{key:"c894d1f8cd91368d9662e63f288384a111b7ffe0",class:"co-column-picker__search-clear",type:"button",onClick:this.handleSearchClear},e("co-icon",{key:"ea9d732d1c828fb3146046418d6b5d8dbc5c3c1b",name:"x",size:14}))),this.showToolbar&&this.multiple&&e("div",{key:"1aa8fde242c2b5d531411d67ef7ea96da4b0dbef",class:"co-column-picker__toolbar"},e("button",{key:"ce0bf82e65376e0eef1d83ee2e977617116e53ea",class:"co-column-picker__toolbar-btn",type:"button",onClick:this.handleSelectAll},this.selectAllText),e("button",{key:"7e418708aa8234f8e60ffd64d1ef7aad5baa5c98",class:"co-column-picker__toolbar-btn",type:"button",onClick:this.handleDeselectAll},this.clearText),e("span",{key:"5f1d2021e7b7ac9d51b4fb4f530a52204558818b",class:"co-column-picker__toolbar-sep"}),e("button",{key:"67a4b15e8b7ca43942866b502c2e28da9edb48d2",class:"co-column-picker__toolbar-btn",type:"button",onClick:this.handleExpandAll},this.expandText),e("button",{key:"c832eff1b36989819ad1b89c30c55398877c33b3",class:"co-column-picker__toolbar-btn",type:"button",onClick:this.handleCollapseAll},this.collapseText),e("span",{key:"1b0644a54e796cb85280850375dcade772a35648",style:{flex:"1"}}),this.selectedValues.length>0&&e("span",{key:"4292ea60a8c533dc67c57b029dee1c19403d68ed",class:"co-column-picker__toolbar-counter"},this.selectedValues.length," ",this.selectedText)),e("div",{key:"9b06012caa39e9704698a77981b994d31c1d60e3",class:"co-column-picker__scroll",style:{maxHeight:this.maxHeight+"px"}},this.renderTree())),this.helperText&&e("div",{key:"c6c169d84d6b495101741df8012307cee8ada693",class:"co-column-picker__helper co-column-picker__helper--"+this.status},this.statusIcon&&e("co-icon",{key:"e5e6d35e4b5356dbe1880742fe3c35ee9d845ae6",name:this.statusIcon,size:14,weight:"fill",class:"co-column-picker__helper-icon"}),e("span",{key:"e3a626266f8f68277ae8dbfa2d4194a57855af8d",class:"co-column-picker__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{options:[{onOptionsChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;position:relative}.co-column-picker{display:flex;flex-direction:column;gap:var(--co-spacing-xs);position:relative}.co-column-picker__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-xs)}.co-column-picker__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;cursor:default}.co-column-picker__secondary-label{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;text-align:right}.co-column-picker--disabled .co-column-picker__label,.co-column-picker--disabled .co-column-picker__secondary-label{color:var(--co-semantic-text-disabled)}.co-column-picker__field{display:flex;align-items:center;flex-wrap:wrap;gap:var(--co-spacing-xs);padding:var(--co-spacing-xs) var(--co-spacing-md);background:var(--co-semantic-surface-secondary);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__field--focused{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-column-picker__field--disabled{background:var(--co-semantic-surface-disabled);border-color:transparent;cursor:not-allowed}.co-column-picker--error .co-column-picker__field{border-color:var(--co-semantic-status-error)}.co-column-picker--success .co-column-picker__field{border-color:var(--co-semantic-status-success)}.co-column-picker--warning .co-column-picker__field{border-color:var(--co-color-status-review)}.co-column-picker--info .co-column-picker__field{border-color:var(--co-semantic-status-info)}.co-column-picker__field-text{flex:1;min-width:0;color:var(--co-semantic-text-default);font-size:var(--co-font-size-14);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-column-picker__field-placeholder{flex:1;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400}.co-column-picker__field-chips{display:flex;flex-wrap:wrap;gap:var(--co-spacing-xs);flex:1}.co-column-picker__field-actions{display:flex;align-items:center;gap:var(--co-spacing-xs);flex-shrink:0;margin-left:auto}.co-column-picker__field-clear{display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__field-clear:hover{color:var(--co-semantic-text-default)}.co-column-picker__field-caret{color:var(--co-semantic-text-muted);display:flex;align-items:center;transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__field--open .co-column-picker__field-caret{color:var(--co-semantic-text-default)}.co-column-picker__dropdown{position:absolute;top:100%;left:0;right:0;z-index:100;margin-top:var(--co-spacing-xs);background:var(--co-semantic-surface-secondary);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-sm, 12px);box-shadow:0 4px 16px var(--co-color-opacity-negro-8);overflow:hidden}.co-column-picker__search{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xs) var(--co-spacing-md);border-bottom:1px solid var(--co-semantic-border-subtle);transition:border-color var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-column-picker__search:focus-within{border-color:var(--co-semantic-border-focus)}.co-column-picker__search-icon{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-column-picker__search-input{flex:1;border:none;outline:none;background:transparent;font-size:var(--co-font-size-14);font-family:inherit;color:var(--co-semantic-text-default);line-height:1.4;padding:0}.co-column-picker__search-input::placeholder{color:var(--co-semantic-text-muted)}.co-column-picker__search-clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:none;cursor:pointer;color:var(--co-semantic-text-muted);padding:0;border-radius:var(--co-border-radius-xxs);transition:all var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__search-clear:hover{color:var(--co-semantic-text-default);background:var(--co-semantic-surface-hover)}.co-column-picker__toolbar{display:flex;align-items:center;gap:2px;padding:var(--co-spacing-xs) var(--co-spacing-md);border-bottom:1px solid var(--co-semantic-border-subtle)}.co-column-picker__toolbar-sep{width:1px;height:14px;background:var(--co-semantic-border-subtle);margin:0 var(--co-spacing-xs)}.co-column-picker__toolbar-btn{border:none;background:none;font-size:11.5px;font-family:inherit;color:var(--co-semantic-text-muted);cursor:pointer;padding:3px var(--co-spacing-xs);font-weight:500;transition:all var(--co-motion-duration-fast) var(--co-motion-ease-out);border-radius:var(--co-border-radius-xxs);line-height:1.4}.co-column-picker__toolbar-btn:hover{color:var(--co-semantic-text-default);background:var(--co-semantic-surface-hover)}.co-column-picker__toolbar-counter{font-size:11.5px;font-weight:500;color:var(--co-semantic-text-muted);font-variant-numeric:tabular-nums;padding:2px var(--co-spacing-xs);background:var(--co-semantic-surface-muted);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-xxs)}.co-column-picker__scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--co-semantic-border-default) transparent}.co-column-picker__scroll::-webkit-scrollbar{width:6px}.co-column-picker__scroll::-webkit-scrollbar-track{background:transparent}.co-column-picker__scroll::-webkit-scrollbar-thumb{background:var(--co-semantic-border-default);border-radius:var(--co-border-radius-full)}.co-column-picker__tree{padding:var(--co-spacing-xs) 0}.co-column-picker__node{user-select:none}.co-column-picker__node-row{display:flex;align-items:center;min-height:34px;padding:0 12px 0 10px;gap:var(--co-spacing-xs);cursor:pointer;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-column-picker__node-row:hover{background-color:var(--co-semantic-surface-hover)}.co-column-picker__node-row--parent:hover{background-color:var(--co-semantic-surface-muted)}.co-column-picker__node-row--expanded{background-color:var(--co-semantic-surface-muted)}.co-column-picker__node-row--selected{background-color:var(--co-semantic-surface-muted)}.co-column-picker__node-label{flex:1;font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.co-column-picker__node-label--parent{font-weight:600;text-transform:capitalize}.co-column-picker__node-label--self{font-weight:400;color:var(--co-semantic-text-muted);text-transform:none}.co-column-picker__node-label mark{background:color-mix(in srgb, var(--co-color-primary-amarillo) 30%, transparent);color:inherit;padding:0 1px;border-radius:1px}.co-column-picker__self-tag{flex-shrink:0;font-size:10px;font-weight:500;color:var(--co-semantic-text-muted);background:var(--co-semantic-surface-muted);padding:1px 6px;border-radius:var(--co-border-radius-xxs);border:1px solid var(--co-semantic-border-subtle);text-transform:lowercase}.co-column-picker__node-counter{flex-shrink:0;font-size:11px;font-weight:400;color:var(--co-semantic-text-muted);font-variant-numeric:tabular-nums}.co-column-picker__counter-selected{font-weight:600;color:var(--co-semantic-text-default)}.co-column-picker__counter-sep{color:var(--co-semantic-border-default);margin:0 1px}.co-column-picker__counter-total{color:var(--co-semantic-text-muted)}.co-column-picker__chevron{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--co-semantic-text-muted);margin-left:var(--co-spacing-xs);transition:transform var(--co-motion-duration-base) var(--co-motion-ease-out), color var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-column-picker__chevron:hover{color:var(--co-semantic-text-default)}.co-column-picker__chevron--open{transform:rotate(90deg);color:var(--co-semantic-text-default)}.co-column-picker__node-children{position:relative}.co-column-picker__node-children::before{content:'';position:absolute;left:var(--guide-left, 19px);top:0;bottom:0;width:1px;background:var(--co-semantic-border-default)}.co-column-picker__section-header{display:flex;align-items:center;gap:6px;padding:var(--co-spacing-xs) var(--co-spacing-md) var(--co-spacing-xs);margin-top:var(--co-spacing-xs);border-top:1px solid var(--co-semantic-border-subtle)}.co-column-picker__section-header:first-child{margin-top:0;border-top:none}.co-column-picker__section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--co-semantic-text-secondary)}.co-column-picker__section-prefix{font-size:10px;font-weight:500;color:var(--co-semantic-text-muted);opacity:0.75}.co-column-picker__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--co-spacing-xs);padding:40px 16px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14)}.co-column-picker__empty-icon{color:var(--co-semantic-border-default)}.co-column-picker__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs)}.co-column-picker__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-column-picker__helper-text{font-size:var(--co-font-size-12, 12px);font-weight:400;line-height:1.4;color:var(--co-semantic-text-muted)}.co-column-picker__helper--error .co-column-picker__helper-text,.co-column-picker__helper--error .co-column-picker__helper-icon{color:var(--co-semantic-status-error)}.co-column-picker__helper--success .co-column-picker__helper-text,.co-column-picker__helper--success .co-column-picker__helper-icon{color:var(--co-semantic-status-success)}.co-column-picker__helper--warning .co-column-picker__helper-text,.co-column-picker__helper--warning .co-column-picker__helper-icon{color:var(--co-color-status-review)}.co-column-picker__helper--info .co-column-picker__helper-text,.co-column-picker__helper--info .co-column-picker__helper-icon{color:var(--co-semantic-status-info)}"}},[1,"co-column-picker",{label:[1],secondaryLabel:[1,"secondary-label"],options:[1],value:[1025],multiple:[4],disabled:[4],showToolbar:[4,"show-toolbar"],showSearch:[4,"show-search"],clearable:[4],placeholder:[1],maxHeight:[2,"max-height"],emptyText:[1,"empty-text"],selectAllText:[1,"select-all-text"],clearText:[1,"clear-text"],expandText:[1,"expand-text"],collapseText:[1,"collapse-text"],selectedText:[1,"selected-text"],sections:[1],status:[1],helperText:[1,"helper-text"],isOpen:[32],query:[32],expandedKeys:[32],focused:[32]},[[4,"click","handleDocumentClick"]],{options:[{onOptionsChange:0}]}]);function k(){"undefined"!=typeof customElements&&["co-column-picker","co-checkbox","co-chip","co-icon"].forEach((e=>{switch(e){case"co-column-picker":customElements.get(o(e))||customElements.define(o(e),b);break;case"co-checkbox":customElements.get(o(e))||n();break;case"co-chip":customElements.get(o(e))||s();break;case"co-icon":customElements.get(o(e))||a()}}))}k();const x=b,g=k;export{x as CoColumnPicker,g as defineCustomElement}
@@ -1 +1 @@
1
- import{p as o,H as e,c as t,h as c,t as i}from"./index.js";import{R as s}from"./p-CWneqh4n.js";import{r as a}from"./p-CQY6Ul7q.js";import{d as r}from"./p-D_9BRkj6.js";import{d as n}from"./p-Bxk96Zgc.js";import{d as l}from"./p-Dj1EZ5qD.js";import{d as h}from"./p-CA_JAK9s.js";import{d as b}from"./p-BH184F0X.js";import{d}from"./p-DI1ek0EB.js";import{d as m}from"./p-DP0bbhfN.js";import{d as p}from"./p-Bz0QZqnB.js";const f=o(class o extends e{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.coChange=t(this,"coChange",7),this.coOpen=t(this,"coOpen",3),this.coClose=t(this,"coClose",3),this.coClear=t(this,"coClear",7),this.coFooterPrimary=t(this,"coFooterPrimary",7),this.coFooterSecondary=t(this,"coFooterSecondary",7),this.required=!1,this.placeholder="",this.disabled=!1,this.clearable=!0,this.searchable=!1,this.searchPlaceholder="Search",this.showFooter=!1,this.footerPrimaryLabel="Ok",this.footerSecondaryLabel="New Tags",this.options="[]",this.emptyMessage="No results found",this.value="[]",this.multiple=!0,this.size="md",this.status="default",this.layout="vertical",this.isOpen=!1,this.searchQuery="",this.overflowCount=0,this.pendingFocus=!1,this.handleTriggerClick=o=>{this.disabled&&o.stopPropagation()},this.handleTriggerKeyDown=o=>{this.disabled||o.target===this.triggerEl&&("Enter"===o.key||" "===o.key?(o.preventDefault(),this.isOpen=!this.isOpen):"ArrowDown"!==o.key||this.isOpen||(o.preventDefault(),this.isOpen=!0))},this.handlePopoverOpen=()=>{console.log("[co-combobox] handlePopoverOpen called"),this.isOpen=!0},this.handlePopoverClose=()=>{console.log("[co-combobox] handlePopoverClose called"),this.isOpen=!1},this.handleClear=o=>{o.stopPropagation(),this.value="[]",this.coClear.emit(),this.coChange.emit({value:this.multiple?[]:"",item:null})},this.handleListChange=o=>{if(null==o.value)return this.value="[]",this.isOpen=!1,void this.coChange.emit({value:null,item:null});if(this.multiple){const e=o.value;this.value=JSON.stringify(e),this.coChange.emit({value:e,item:o.item})}else{const e=o.value;this.value=JSON.stringify([e]),this.isOpen=!1,this.coChange.emit({value:e,item:o.item})}},this.handleListRemove=o=>{const e=this.selectedValues.filter((e=>e!==o));this.value=JSON.stringify(e),this.coChange.emit({value:e,item:{_id:o,label:o}})},this.handleFooterPrimary=()=>{this.coFooterPrimary.emit(),this.isOpen=!1},this.handleFooterSecondary=()=>{this.coFooterSecondary.emit()}}normalizeOptions(o){return o.map((o=>"string"==typeof o?{label:o,value:o}:o))}get parsedOptions(){if("string"==typeof this.options)try{return this.normalizeOptions(JSON.parse(this.options))}catch(o){return[]}return this.normalizeOptions(this.options)}get selectedValues(){if("string"==typeof this.value)try{return JSON.parse(this.value)}catch(o){return[]}return this.value}get filteredOptions(){return this.searchQuery?a(this.parsedOptions,this.searchQuery,(o=>o.label)):this.parsedOptions}get listItemsJson(){return JSON.stringify(this.filteredOptions.map((o=>({_id:o.value,label:o.label,icon:o.icon}))))}get displayText(){const o=this.selectedValues;if(0===o.length)return"";const e=this.parsedOptions.find((e=>e.value===o[0]));return e?e.label:o[0]}get selectedOptions(){return this.selectedValues.map((o=>this.parsedOptions.find((e=>e.value===o)))).filter((o=>!!o))}get hasValue(){return this.selectedValues.length>0}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning",info:"info"}[this.status]||null}onOpenChange(o){o?(this.searchQuery="",this.pendingFocus=!0,this.coOpen.emit()):(this.coClose.emit(),this.restoreTriggerFocus())}onValueChange(){}connectedCallback(){this.resizeObserver=new ResizeObserver((()=>{this.calcOverflow()}))}disconnectedCallback(){var o;null===(o=this.resizeObserver)||void 0===o||o.disconnect()}componentDidRender(){var o,e,t;this.chipContainerEl&&(null===(o=this.resizeObserver)||void 0===o||o.disconnect(),null===(e=this.resizeObserver)||void 0===e||e.observe(this.chipContainerEl)),this.calcOverflow(),this.pendingFocus&&(null===(t=this.optionListEl)||void 0===t?void 0:t.isConnected)&&(this.pendingFocus=!1,this.optionListEl.focusSearch())}calcOverflow(){if(!this.multiple||!this.chipContainerEl)return;const o=this.chipContainerEl,e=Array.from(o.querySelectorAll("co-chip"));if(0===e.length)return void(0!==this.overflowCount&&(this.overflowCount=0));const t=o.getBoundingClientRect().right;let c=0;for(let o=e.length-1;o>=0&&e[o].getBoundingClientRect().right>t+1;o--)c++;c!==this.overflowCount&&(this.overflowCount=c)}restoreTriggerFocus(){var o;const e=document.activeElement;(e===this.el||this.el.contains(e))&&(null===(o=this.triggerEl)||void 0===o||o.focus())}render(){return c("div",{key:"37a1a6c5d14a61e45a522024b1aecf9ef3421cb5",class:{"co-combobox":!0,"co-combobox--open":this.isOpen,"co-combobox--disabled":this.disabled,["co-combobox--"+this.size]:!0},part:"wrapper"},(this.label||this.secondaryLabel)&&c("div",{key:"4db14a62bbdbd01088df7279939cce69eb30f9a3",class:"co-combobox__labels"},this.label&&c("label",{key:"294744758ea6e99f1c68c3b612269aa5fb38e838",class:"co-combobox__label",part:"label"},this.label,c(s,{key:"17c9fd9fe7cac0abd1f6b8bee4f31a9e536758fb",required:this.required})),this.secondaryLabel&&c("span",{key:"457e35ca2dd250a7ecd5c36980ced045fb46f319",class:"co-combobox__secondary-label",part:"secondary-label"},this.secondaryLabel)),c("co-popover",{key:"54fdc55762dcf268d1522c345968d39f26fc768e",open:this.isOpen,placement:"bottom-start",matchWidth:!0,offset:4,onCoOpen:this.handlePopoverOpen,onCoClose:this.handlePopoverClose},c("div",{key:"0bb104f5e51e7ea5b36d7325e178c7c7eadde05c",slot:"trigger",class:"co-combobox__trigger",part:"trigger",role:"combobox","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"listbox","aria-label":this.label||void 0,"aria-disabled":this.disabled?"true":void 0,"aria-controls":this.isOpen?o.LIST_ID:void 0,tabIndex:this.disabled?-1:0,ref:o=>this.triggerEl=o,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeyDown},this.iconLeft&&c("co-icon",{key:"ebdfa267be7257aaa2b187fc867cb5d334d91319",name:this.iconLeft,size:16,class:"co-combobox__icon"}),c("div",{key:"77671cfffe0d593242c776316292dec69af64ed6",class:"co-combobox__input-wrapper",ref:o=>this.chipContainerEl=o},this.multiple&&this.hasValue?this.selectedOptions.map((o=>c("co-chip",{size:"small","icon-mode":"both",label:o.label},c("co-icon",{slot:"icon-left",name:o.icon||"circle",size:10}),c("co-icon",{slot:"icon-right",name:"x-circle",size:10,weight:"fill",onClick:e=>{e.stopPropagation(),this.handleListRemove(o.value)}})))):c("span",{class:{"co-combobox__text":!0,"co-combobox__text--placeholder":!this.hasValue}},this.hasValue?this.displayText:this.placeholder)),this.multiple&&this.overflowCount>0&&c("span",{key:"c230748247efc705f21f299254c24b717d7f5af7",class:"co-combobox__overflow-badge"},this.overflowCount),this.clearable&&this.hasValue&&!this.disabled&&c("button",{key:"b8acd2eeeb17ec672912886e7dfa67abd1026927",class:"co-combobox__clear",type:"button",tabIndex:-1,onClick:this.handleClear,"aria-label":"Clear selection",part:"clear"},c("co-icon",{key:"d21e7dec49db82e5514a1562b60596d51ee69094",name:"x-circle",size:16,weight:"fill"})),c("co-icon",{key:"51becab683f82d56d93599e701025a640822127c",name:this.isOpen?"caret-up":"caret-down",size:16,class:"co-combobox__caret"})),c("div",{key:"8d21ea81c9c5ca9500359f7cedadf12328e4c5eb",class:"co-combobox__dropdown",part:"dropdown"},this.isOpen&&c("co-option-list",{key:"066a18d85a356c238ff9ced3721c1d3280bce4c8",id:o.LIST_ID,ref:o=>this.optionListEl=o,items:this.listItemsJson,value:this.multiple?JSON.stringify(this.selectedValues):this.selectedValues[0]||"",multiple:this.multiple,selectedAffordance:"check",removableItems:this.multiple,virtual:!0,searchable:this.searchable,searchPlaceholder:this.searchPlaceholder,searchDebounce:0,highlightMatches:!0,emptyMessage:this.emptyMessage,onCoSearch:o=>{this.searchQuery=o.detail},onCoChange:o=>this.handleListChange(o.detail),onCoRemoveItem:o=>this.handleListRemove(o.detail)},this.showFooter&&c("co-list-footer",{key:"11d5f3fd067ac246e2068bc33a7ef938efef8829",slot:"footer",secondaryLabel:this.footerSecondaryLabel,primaryLabel:this.footerPrimaryLabel,onCoSecondary:this.handleFooterSecondary,onCoPrimary:this.handleFooterPrimary})))),this.helperText&&c("div",{key:"aea733779599bf85e1060062b9664821bcd1f003",class:"co-combobox__helper co-combobox__helper--"+this.status,part:"helper"},this.statusIcon&&c("co-icon",{key:"629698daf7e0005c8849062777daf8b329fe969c",name:this.statusIcon,size:14,weight:"fill",class:"co-combobox__helper-icon"}),c("span",{key:"d91bd4fdadedb2eebbe4a2a3c5d033978cb8db76",class:"co-combobox__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{isOpen:[{onOpenChange:0}],value:[{onValueChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;position:relative}.co-combobox{display:flex;flex-direction:column;gap:var(--co-spacing-sm2);position:relative}.co-combobox__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-sm2)}.co-combobox__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;letter-spacing:var(--co-font-letter-spacing-body);line-height:1;white-space:nowrap;cursor:default}.co-combobox__secondary-label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;letter-spacing:var(--co-font-letter-spacing-body);line-height:1;white-space:nowrap;text-align:right}.co-combobox__trigger{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out);overflow:hidden}.co-combobox--s .co-combobox__trigger{min-height:28px;padding:var(--co-spacing-xxs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-combobox--sm .co-combobox__trigger{min-height:32px;padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-14)}.co-combobox--lg .co-combobox__trigger{min-height:48px;padding:var(--co-spacing-sm) var(--co-spacing-lg);font-size:var(--co-font-size-16)}.co-combobox--open .co-combobox__trigger{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-combobox__trigger:focus-visible{outline:none;border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-combobox--disabled .co-combobox__trigger{background:var(--co-semantic-surface-disabled);border-color:transparent;cursor:not-allowed}.co-combobox__icon{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-combobox--disabled .co-combobox__icon{color:var(--co-semantic-text-disabled)}.co-combobox__input-wrapper{flex:1;display:flex;align-items:center;flex-wrap:nowrap;gap:4px;min-width:0;min-height:22px;padding:0;overflow:hidden}.co-combobox__input-wrapper co-chip{--co-chip-max-width:120px;--co-chip-bg:var(--co-semantic-surface-muted);--co-chip-color:var(--co-semantic-text-default);--co-chip-border:1px solid var(--co-semantic-border-subtle);flex-shrink:0}.co-combobox__overflow-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 4px;border-radius:var(--co-border-radius-full);background:var(--co-semantic-status-info, #2d6cc5);color:var(--co-color-base-blanco, #fff);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-10);font-weight:600;line-height:1;white-space:nowrap}.co-combobox__text{color:var(--co-semantic-text-default);font-family:inherit;font-size:inherit;font-weight:400;letter-spacing:inherit;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-combobox__text--placeholder{color:var(--co-semantic-text-muted)}.co-combobox--disabled .co-combobox__text{color:var(--co-semantic-text-disabled)}.co-combobox__clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-combobox__clear:hover{color:var(--co-semantic-text-default)}.co-combobox__caret{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-combobox--disabled .co-combobox__caret{color:var(--co-semantic-text-disabled)}.co-combobox__dropdown{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-combobox__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs)}.co-combobox__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-combobox__helper-text{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1}.co-combobox__helper--error .co-combobox__helper-icon,.co-combobox__helper--error .co-combobox__helper-text{color:var(--co-semantic-status-error)}.co-combobox__helper--success .co-combobox__helper-icon,.co-combobox__helper--success .co-combobox__helper-text{color:var(--co-semantic-status-success)}.co-combobox__helper--warning .co-combobox__helper-icon,.co-combobox__helper--warning .co-combobox__helper-text{color:var(--co-color-status-review)}.co-combobox__helper--info .co-combobox__helper-icon,.co-combobox__helper--info .co-combobox__helper-text{color:var(--co-semantic-status-info)}:host([layout='horizontal']) .co-combobox{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-combobox__labels{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-combobox__label{white-space:normal}:host([layout='horizontal']) .co-combobox>:not(.co-combobox__labels){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}"}},[1,"co-combobox",{label:[1],required:[4],secondaryLabel:[1,"secondary-label"],placeholder:[1],disabled:[4],iconLeft:[1,"icon-left"],clearable:[4],searchable:[4],searchPlaceholder:[1,"search-placeholder"],showFooter:[4,"show-footer"],footerPrimaryLabel:[1,"footer-primary-label"],footerSecondaryLabel:[1,"footer-secondary-label"],options:[1],emptyMessage:[1,"empty-message"],value:[1025],multiple:[4],size:[513],helperText:[1,"helper-text"],status:[1],layout:[513],isOpen:[32],searchQuery:[32],overflowCount:[32]},void 0,{isOpen:[{onOpenChange:0}],value:[{onValueChange:0}]}]);function x(){"undefined"!=typeof customElements&&["co-combobox","co-avatar","co-chip","co-icon","co-list-footer","co-loader","co-option-list","co-popover","co-tooltip"].forEach((o=>{switch(o){case"co-combobox":customElements.get(i(o))||customElements.define(i(o),f);break;case"co-avatar":customElements.get(i(o))||r();break;case"co-chip":customElements.get(i(o))||n();break;case"co-icon":customElements.get(i(o))||l();break;case"co-list-footer":customElements.get(i(o))||h();break;case"co-loader":customElements.get(i(o))||b();break;case"co-option-list":customElements.get(i(o))||d();break;case"co-popover":customElements.get(i(o))||m();break;case"co-tooltip":customElements.get(i(o))||p()}}))}f.LIST_ID="co-combobox-list",x();const g=f,u=x;export{g as CoCombobox,u as defineCustomElement}
1
+ import{p as o,H as e,c as t,h as c,t as i}from"./index.js";import{R as s}from"./p-CWneqh4n.js";import{r as a}from"./p-CQY6Ul7q.js";import{d as r}from"./p-B1QFLcY9.js";import{d as n}from"./p-Du_CgT5E.js";import{d as l}from"./p-DNJAIVfI.js";import{d as h}from"./p-CT2enQ6h.js";import{d as b}from"./p-BH184F0X.js";import{d}from"./p-B2IsXte7.js";import{d as m}from"./p-DRP8D9ro.js";import{d as p}from"./p-DIo66nBr.js";const f=o(class o extends e{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.coChange=t(this,"coChange",7),this.coOpen=t(this,"coOpen",3),this.coClose=t(this,"coClose",3),this.coClear=t(this,"coClear",7),this.coFooterPrimary=t(this,"coFooterPrimary",7),this.coFooterSecondary=t(this,"coFooterSecondary",7),this.required=!1,this.placeholder="",this.disabled=!1,this.clearable=!0,this.searchable=!1,this.searchPlaceholder="Search",this.showFooter=!1,this.footerPrimaryLabel="Ok",this.footerSecondaryLabel="New Tags",this.options="[]",this.emptyMessage="No results found",this.value="[]",this.multiple=!0,this.size="md",this.status="default",this.layout="vertical",this.isOpen=!1,this.searchQuery="",this.overflowCount=0,this.pendingFocus=!1,this.handleTriggerClick=o=>{this.disabled&&o.stopPropagation()},this.handleTriggerKeyDown=o=>{this.disabled||o.target===this.triggerEl&&("Enter"===o.key||" "===o.key?(o.preventDefault(),this.isOpen=!this.isOpen):"ArrowDown"!==o.key||this.isOpen||(o.preventDefault(),this.isOpen=!0))},this.handlePopoverOpen=()=>{console.log("[co-combobox] handlePopoverOpen called"),this.isOpen=!0},this.handlePopoverClose=()=>{console.log("[co-combobox] handlePopoverClose called"),this.isOpen=!1},this.handleClear=o=>{o.stopPropagation(),this.value="[]",this.coClear.emit(),this.coChange.emit({value:this.multiple?[]:"",item:null})},this.handleListChange=o=>{if(null==o.value)return this.value="[]",this.isOpen=!1,void this.coChange.emit({value:null,item:null});if(this.multiple){const e=o.value;this.value=JSON.stringify(e),this.coChange.emit({value:e,item:o.item})}else{const e=o.value;this.value=JSON.stringify([e]),this.isOpen=!1,this.coChange.emit({value:e,item:o.item})}},this.handleListRemove=o=>{const e=this.selectedValues.filter((e=>e!==o));this.value=JSON.stringify(e),this.coChange.emit({value:e,item:{_id:o,label:o}})},this.handleFooterPrimary=()=>{this.coFooterPrimary.emit(),this.isOpen=!1},this.handleFooterSecondary=()=>{this.coFooterSecondary.emit()}}normalizeOptions(o){return o.map((o=>"string"==typeof o?{label:o,value:o}:o))}get parsedOptions(){if("string"==typeof this.options)try{return this.normalizeOptions(JSON.parse(this.options))}catch(o){return[]}return this.normalizeOptions(this.options)}get selectedValues(){if("string"==typeof this.value)try{return JSON.parse(this.value)}catch(o){return[]}return this.value}get filteredOptions(){return this.searchQuery?a(this.parsedOptions,this.searchQuery,(o=>o.label)):this.parsedOptions}get listItemsJson(){return JSON.stringify(this.filteredOptions.map((o=>({_id:o.value,label:o.label,icon:o.icon}))))}get displayText(){const o=this.selectedValues;if(0===o.length)return"";const e=this.parsedOptions.find((e=>e.value===o[0]));return e?e.label:o[0]}get selectedOptions(){return this.selectedValues.map((o=>this.parsedOptions.find((e=>e.value===o)))).filter((o=>!!o))}get hasValue(){return this.selectedValues.length>0}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning",info:"info"}[this.status]||null}onOpenChange(o){o?(this.searchQuery="",this.pendingFocus=!0,this.coOpen.emit()):(this.coClose.emit(),this.restoreTriggerFocus())}onValueChange(){}connectedCallback(){this.resizeObserver=new ResizeObserver((()=>{this.calcOverflow()}))}disconnectedCallback(){var o;null===(o=this.resizeObserver)||void 0===o||o.disconnect()}componentDidRender(){var o,e,t;this.chipContainerEl&&(null===(o=this.resizeObserver)||void 0===o||o.disconnect(),null===(e=this.resizeObserver)||void 0===e||e.observe(this.chipContainerEl)),this.calcOverflow(),this.pendingFocus&&(null===(t=this.optionListEl)||void 0===t?void 0:t.isConnected)&&(this.pendingFocus=!1,this.optionListEl.focusSearch())}calcOverflow(){if(!this.multiple||!this.chipContainerEl)return;const o=this.chipContainerEl,e=Array.from(o.querySelectorAll("co-chip"));if(0===e.length)return void(0!==this.overflowCount&&(this.overflowCount=0));const t=o.getBoundingClientRect().right;let c=0;for(let o=e.length-1;o>=0&&e[o].getBoundingClientRect().right>t+1;o--)c++;c!==this.overflowCount&&(this.overflowCount=c)}restoreTriggerFocus(){var o;const e=document.activeElement;(e===this.el||this.el.contains(e))&&(null===(o=this.triggerEl)||void 0===o||o.focus())}render(){return c("div",{key:"37a1a6c5d14a61e45a522024b1aecf9ef3421cb5",class:{"co-combobox":!0,"co-combobox--open":this.isOpen,"co-combobox--disabled":this.disabled,["co-combobox--"+this.size]:!0},part:"wrapper"},(this.label||this.secondaryLabel)&&c("div",{key:"4db14a62bbdbd01088df7279939cce69eb30f9a3",class:"co-combobox__labels"},this.label&&c("label",{key:"294744758ea6e99f1c68c3b612269aa5fb38e838",class:"co-combobox__label",part:"label"},this.label,c(s,{key:"17c9fd9fe7cac0abd1f6b8bee4f31a9e536758fb",required:this.required})),this.secondaryLabel&&c("span",{key:"457e35ca2dd250a7ecd5c36980ced045fb46f319",class:"co-combobox__secondary-label",part:"secondary-label"},this.secondaryLabel)),c("co-popover",{key:"54fdc55762dcf268d1522c345968d39f26fc768e",open:this.isOpen,placement:"bottom-start",matchWidth:!0,offset:4,onCoOpen:this.handlePopoverOpen,onCoClose:this.handlePopoverClose},c("div",{key:"0bb104f5e51e7ea5b36d7325e178c7c7eadde05c",slot:"trigger",class:"co-combobox__trigger",part:"trigger",role:"combobox","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"listbox","aria-label":this.label||void 0,"aria-disabled":this.disabled?"true":void 0,"aria-controls":this.isOpen?o.LIST_ID:void 0,tabIndex:this.disabled?-1:0,ref:o=>this.triggerEl=o,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeyDown},this.iconLeft&&c("co-icon",{key:"ebdfa267be7257aaa2b187fc867cb5d334d91319",name:this.iconLeft,size:16,class:"co-combobox__icon"}),c("div",{key:"77671cfffe0d593242c776316292dec69af64ed6",class:"co-combobox__input-wrapper",ref:o=>this.chipContainerEl=o},this.multiple&&this.hasValue?this.selectedOptions.map((o=>c("co-chip",{size:"small","icon-mode":"both",label:o.label},c("co-icon",{slot:"icon-left",name:o.icon||"circle",size:10}),c("co-icon",{slot:"icon-right",name:"x-circle",size:10,weight:"fill",onClick:e=>{e.stopPropagation(),this.handleListRemove(o.value)}})))):c("span",{class:{"co-combobox__text":!0,"co-combobox__text--placeholder":!this.hasValue}},this.hasValue?this.displayText:this.placeholder)),this.multiple&&this.overflowCount>0&&c("span",{key:"c230748247efc705f21f299254c24b717d7f5af7",class:"co-combobox__overflow-badge"},this.overflowCount),this.clearable&&this.hasValue&&!this.disabled&&c("button",{key:"b8acd2eeeb17ec672912886e7dfa67abd1026927",class:"co-combobox__clear",type:"button",tabIndex:-1,onClick:this.handleClear,"aria-label":"Clear selection",part:"clear"},c("co-icon",{key:"d21e7dec49db82e5514a1562b60596d51ee69094",name:"x-circle",size:16,weight:"fill"})),c("co-icon",{key:"51becab683f82d56d93599e701025a640822127c",name:this.isOpen?"caret-up":"caret-down",size:16,class:"co-combobox__caret"})),c("div",{key:"8d21ea81c9c5ca9500359f7cedadf12328e4c5eb",class:"co-combobox__dropdown",part:"dropdown"},this.isOpen&&c("co-option-list",{key:"066a18d85a356c238ff9ced3721c1d3280bce4c8",id:o.LIST_ID,ref:o=>this.optionListEl=o,items:this.listItemsJson,value:this.multiple?JSON.stringify(this.selectedValues):this.selectedValues[0]||"",multiple:this.multiple,selectedAffordance:"check",removableItems:this.multiple,virtual:!0,searchable:this.searchable,searchPlaceholder:this.searchPlaceholder,searchDebounce:0,highlightMatches:!0,emptyMessage:this.emptyMessage,onCoSearch:o=>{this.searchQuery=o.detail},onCoChange:o=>this.handleListChange(o.detail),onCoRemoveItem:o=>this.handleListRemove(o.detail)},this.showFooter&&c("co-list-footer",{key:"11d5f3fd067ac246e2068bc33a7ef938efef8829",slot:"footer",secondaryLabel:this.footerSecondaryLabel,primaryLabel:this.footerPrimaryLabel,onCoSecondary:this.handleFooterSecondary,onCoPrimary:this.handleFooterPrimary})))),this.helperText&&c("div",{key:"aea733779599bf85e1060062b9664821bcd1f003",class:"co-combobox__helper co-combobox__helper--"+this.status,part:"helper"},this.statusIcon&&c("co-icon",{key:"629698daf7e0005c8849062777daf8b329fe969c",name:this.statusIcon,size:14,weight:"fill",class:"co-combobox__helper-icon"}),c("span",{key:"d91bd4fdadedb2eebbe4a2a3c5d033978cb8db76",class:"co-combobox__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{isOpen:[{onOpenChange:0}],value:[{onValueChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;position:relative}.co-combobox{display:flex;flex-direction:column;gap:var(--co-spacing-sm2);position:relative}.co-combobox__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-sm2)}.co-combobox__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;letter-spacing:var(--co-font-letter-spacing-body);line-height:1;white-space:nowrap;cursor:default}.co-combobox__secondary-label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;letter-spacing:var(--co-font-letter-spacing-body);line-height:1;white-space:nowrap;text-align:right}.co-combobox__trigger{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out);overflow:hidden}.co-combobox--s .co-combobox__trigger{min-height:28px;padding:var(--co-spacing-xxs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-combobox--sm .co-combobox__trigger{min-height:32px;padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-14)}.co-combobox--lg .co-combobox__trigger{min-height:48px;padding:var(--co-spacing-sm) var(--co-spacing-lg);font-size:var(--co-font-size-16)}.co-combobox--open .co-combobox__trigger{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-combobox__trigger:focus-visible{outline:none;border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-combobox--disabled .co-combobox__trigger{background:var(--co-semantic-surface-disabled);border-color:transparent;cursor:not-allowed}.co-combobox__icon{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-combobox--disabled .co-combobox__icon{color:var(--co-semantic-text-disabled)}.co-combobox__input-wrapper{flex:1;display:flex;align-items:center;flex-wrap:nowrap;gap:4px;min-width:0;min-height:22px;padding:0;overflow:hidden}.co-combobox__input-wrapper co-chip{--co-chip-max-width:120px;--co-chip-bg:var(--co-semantic-surface-muted);--co-chip-color:var(--co-semantic-text-default);--co-chip-border:1px solid var(--co-semantic-border-subtle);flex-shrink:0}.co-combobox__overflow-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 4px;border-radius:var(--co-border-radius-full);background:var(--co-semantic-status-info, #2d6cc5);color:var(--co-color-base-blanco, #fff);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-10);font-weight:600;line-height:1;white-space:nowrap}.co-combobox__text{color:var(--co-semantic-text-default);font-family:inherit;font-size:inherit;font-weight:400;letter-spacing:inherit;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-combobox__text--placeholder{color:var(--co-semantic-text-muted)}.co-combobox--disabled .co-combobox__text{color:var(--co-semantic-text-disabled)}.co-combobox__clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-combobox__clear:hover{color:var(--co-semantic-text-default)}.co-combobox__caret{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-combobox--disabled .co-combobox__caret{color:var(--co-semantic-text-disabled)}.co-combobox__dropdown{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-combobox__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs)}.co-combobox__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-combobox__helper-text{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1}.co-combobox__helper--error .co-combobox__helper-icon,.co-combobox__helper--error .co-combobox__helper-text{color:var(--co-semantic-status-error)}.co-combobox__helper--success .co-combobox__helper-icon,.co-combobox__helper--success .co-combobox__helper-text{color:var(--co-semantic-status-success)}.co-combobox__helper--warning .co-combobox__helper-icon,.co-combobox__helper--warning .co-combobox__helper-text{color:var(--co-color-status-review)}.co-combobox__helper--info .co-combobox__helper-icon,.co-combobox__helper--info .co-combobox__helper-text{color:var(--co-semantic-status-info)}:host([layout='horizontal']) .co-combobox{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-combobox__labels{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-combobox__label{white-space:normal}:host([layout='horizontal']) .co-combobox>:not(.co-combobox__labels){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}"}},[1,"co-combobox",{label:[1],required:[4],secondaryLabel:[1,"secondary-label"],placeholder:[1],disabled:[4],iconLeft:[1,"icon-left"],clearable:[4],searchable:[4],searchPlaceholder:[1,"search-placeholder"],showFooter:[4,"show-footer"],footerPrimaryLabel:[1,"footer-primary-label"],footerSecondaryLabel:[1,"footer-secondary-label"],options:[1],emptyMessage:[1,"empty-message"],value:[1025],multiple:[4],size:[513],helperText:[1,"helper-text"],status:[1],layout:[513],isOpen:[32],searchQuery:[32],overflowCount:[32]},void 0,{isOpen:[{onOpenChange:0}],value:[{onValueChange:0}]}]);function x(){"undefined"!=typeof customElements&&["co-combobox","co-avatar","co-chip","co-icon","co-list-footer","co-loader","co-option-list","co-popover","co-tooltip"].forEach((o=>{switch(o){case"co-combobox":customElements.get(i(o))||customElements.define(i(o),f);break;case"co-avatar":customElements.get(i(o))||r();break;case"co-chip":customElements.get(i(o))||n();break;case"co-icon":customElements.get(i(o))||l();break;case"co-list-footer":customElements.get(i(o))||h();break;case"co-loader":customElements.get(i(o))||b();break;case"co-option-list":customElements.get(i(o))||d();break;case"co-popover":customElements.get(i(o))||m();break;case"co-tooltip":customElements.get(i(o))||p()}}))}f.LIST_ID="co-combobox-list",x();const u=f,g=x;export{u as CoCombobox,g as defineCustomElement}
@@ -1 +1 @@
1
- import{t as a,p as e,H as o,c as t,h as c}from"./index.js";import{r as s}from"./p-CQY6Ul7q.js";import{d as r}from"./p-D_9BRkj6.js";import{d as i}from"./p-Bxk96Zgc.js";import{d as n}from"./p-Dj1EZ5qD.js";import{d}from"./p-BH184F0X.js";import{d as h}from"./p-DI1ek0EB.js";import{d as l}from"./p-D6OUW6oW.js";import{d as m}from"./p-Bz0QZqnB.js";const p=e(class extends o{constructor(a){super(),!1!==a&&this.__registerHost(),this.__attachShadow(),this.coSelect=t(this,"coSelect",7),this.coClose=t(this,"coClose",7),this.coSearch=t(this,"coSearch",7),this.coScopeChange=t(this,"coScopeChange",1),this.coBackspaceEmpty=t(this,"coBackspaceEmpty",1),this.coChipRemove=t(this,"coChipRemove",1),this.coTabSelect=t(this,"coTabSelect",1),this.coMoreTabs=t(this,"coMoreTabs",1),this.open=!1,this.placeholder="Search...",this.items=[],this.emptyMessage="No results found",this.async=!1,this.loading=!1,this.chips="[]",this.tabs="[]",this.activeTab="",this.hasMore=!1,this.moreLabel="More",this.favorites="[]",this.query="",this.handleInput=a=>{this.query=a.target.value,this.coSearch.emit(this.query)},this.handleKeyDown=a=>{var e,o;if(function(a,e){return"Backspace"===a&&""===e}(a.key,this.query))return a.preventDefault(),void this.coBackspaceEmpty.emit(this.query);switch(a.key){case"ArrowDown":case"ArrowUp":case"Enter":a.preventDefault(),null===(e=this.optionListEl)||void 0===e||e.handleKey(a);break;case"Escape":a.preventDefault(),this.close();break;case"Tab":a.preventDefault(),null===(o=this.optionListEl)||void 0===o||o.handleKey(new KeyboardEvent("keydown",{key:a.shiftKey?"ArrowUp":"ArrowDown"}))}},this.handleListPick=a=>{const e=this.filteredItems.find((e=>e.value===a));e&&this.selectItem(e)},this.handlePanelKeyDown=a=>{"Escape"===a.key&&(a.preventDefault(),this.close())},this.handleOverlayClick=()=>{this.close()},this.handlePanelClick=a=>{a.stopPropagation()},this.handleTriggerClick=()=>{this.open=!0}}get parsedItems(){if("string"==typeof this.items)try{return JSON.parse(this.items)}catch(a){return[]}return this.items}get filteredItems(){return function(a,e,o){return o?a:e?s(a,e,(a=>[a.label,a.value])):a}(this.parsedItems,this.query,this.async)}get parsedChips(){try{const a="string"==typeof this.chips?JSON.parse(this.chips):this.chips;return Array.isArray(a)?a:[]}catch(a){return[]}}get parsedTabs(){try{const a="string"==typeof this.tabs?JSON.parse(this.tabs):this.tabs;return Array.isArray(a)?a:[]}catch(a){return[]}}get parsedFavorites(){try{const a="string"==typeof this.favorites?JSON.parse(this.favorites):this.favorites;return Array.isArray(a)?a:[]}catch(a){return[]}}onActiveTabChange(a){a&&(this.query=""),requestAnimationFrame((()=>{var a;const e=null===(a=this.el.shadowRoot)||void 0===a?void 0:a.querySelector('.co-command-search__tab[aria-selected="true"]');null==e||e.scrollIntoView({inline:"nearest",block:"nearest"})}))}onOpenChange(a){a&&(this.query="",requestAnimationFrame((()=>{var a;return null===(a=this.inputEl)||void 0===a?void 0:a.focus()})))}selectItem(a){!function(a){return!0===a.keepOpen}(a)?(this.coSelect.emit(a.value),this.close()):this.coScopeChange.emit(a.value)}close(){this.open&&(this.open=!1,this.coClose.emit())}render(){const a=this.filteredItems;return[c("div",{key:"2fa819f611d5e106367baecd8d0d468ef538abb9",class:"co-command-search__trigger",onClick:this.handleTriggerClick},c("slot",{key:"ee17e409b1253cc447d9813a458c3b123597caa1",name:"trigger"})),c("co-overlay",{key:"57f2be7cc61b9c73d20af7cabe44f27f52da130b",open:this.open,onCoClose:this.handleOverlayClick},c("div",{key:"8e582bca997ca0b0ed0b77a26a2f5bce17540159",class:{"co-command-search":!0,"co-command-search--open":this.open},part:"panel",role:"dialog","aria-modal":"true","aria-label":"Command palette",onClick:this.handlePanelClick,onKeyDown:this.handlePanelKeyDown},c("div",{key:"6252fab9df91285b063186c0814a678c2f91aec9",class:"co-command-search__input-row",part:"input-row"},c("co-icon",{key:"4ce68141969cd823f3b6d1e286dcd62609244587",name:"magnifying-glass",size:20}),this.parsedChips.map(((a,e)=>c("span",{class:"co-command-search__facet-chip"},a.icon&&c("co-icon",{name:a.icon,size:12}),c("span",{class:"co-command-search__facet-chip-label"},a.label),c("button",{class:"co-command-search__facet-chip-remove",type:"button","aria-label":"Remove filter "+a.label,onClick:a=>{a.stopPropagation(),this.coChipRemove.emit(e)}},c("co-icon",{name:"x",size:10,weight:"bold"}))))),c("input",{key:"565abed1c59c32ce3336e110cd9da6afadb693b5",class:"co-command-search__input",type:"text",placeholder:this.placeholder,value:this.query,onInput:this.handleInput,onKeyDown:this.handleKeyDown,ref:a=>this.inputEl=a,part:"input",role:"combobox","aria-expanded":this.open?"true":"false","aria-autocomplete":"list"}),this.loading&&c("co-loader",{key:"f84db9e0b3f9c53d8eae6ab6edb790f189b3e49d",class:"co-command-search__loading",part:"loading",size:"sm"}),c("span",{key:"7f9e3b653c9d52d0438fafbb645506f3a7aa7f2c",class:"co-command-search__shortcut"},"ESC")),(this.parsedTabs.length>0||this.hasMore)&&c("div",{key:"fd734ad98b004d5e08f601631d6e2c547ef70dca",class:"co-command-search__tabs",part:"tabs",role:"tablist"},this.parsedTabs.map((a=>{const e=a.value===this.activeTab;return c("co-chip",{class:"co-command-search__tab",role:"tab","aria-selected":e?"true":"false",clickable:!0,selected:e,variant:e?"filled":"outlined",color:e?"primary":"default",iconLeft:a.icon,label:a.label,onCoClick:()=>this.coTabSelect.emit(e?"":a.value)})})),this.hasMore&&c("co-chip",{key:"f5812a94f9f24df93b34abd9588e43b354d6c5e8",class:"co-command-search__tab co-command-search__tab--more",clickable:!0,variant:"outlined",label:this.moreLabel,iconRight:"caret-down",onCoClick:()=>this.coMoreTabs.emit()})),c("div",{key:"b21f950593d51ecb05ffa7f752cd3b8eebf0ef08",class:"co-command-search__results",part:"results"},this.parsedFavorites.length>0&&!this.query&&c("div",{key:"054210475307154dbd369a6468e5bd38a88534a2",class:"co-command-search__fav",part:"favorites"},c("div",{key:"4cc849cf107af9b94cb9715a7d054f6567e75345",class:"co-command-search__fav-grid"},this.parsedFavorites.map((a=>c("button",{class:"co-command-search__fav-card",type:"button",onClick:()=>this.coSelect.emit(a.value)},c("span",{class:"co-command-search__fav-icon",style:{background:a.color||"var(--co-semantic-surface-muted)"}},c("co-icon",{name:a.icon||"circle",size:26,weight:"fill"})),c("span",{class:"co-command-search__fav-label"},a.label)))))),c("co-option-list",{key:"b48e7eb20f3591e8539211343908fa84ca1ebd1f",ref:a=>this.optionListEl=a,items:JSON.stringify(a.map((a=>({_id:a.value,label:a.label,icon:a.icon,description:a.subtitle,group:a.section,disabled:a.disabled})))),autoHighlight:!0,highlightMatches:!0,highlightTerm:this.query,loading:this.loading,emptyMessage:this.emptyMessage,onCoChange:a=>this.handleListPick(a.detail.item._id)}))))]}get el(){return this}static get watchers(){return{activeTab:[{onActiveTabChange:0}],open:[{onOpenChange:0}]}}static get style(){return":host{display:contents}co-overlay{--co-overlay-bg:rgba(0, 0, 0, 0.16)}.co-command-search__trigger{display:contents}.co-command-search{display:flex;flex-direction:column;width:90vw;max-width:560px;max-height:420px;background:var(--co-semantic-surface-page);border-radius:var(--co-border-radius-lg);box-shadow:0 8px 32px rgba(0, 0, 0, 0.12);overflow:hidden;font-family:var(--co-font-family-primary);transform:translateY(8px) scale(0.98);opacity:0;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-out), opacity var(--co-motion-duration-fast) var(--co-motion-ease-out);margin-top:-15vh}.co-command-search--open{transform:translateY(0) scale(1);opacity:1}.co-command-search__input-row{display:flex;align-items:center;gap:var(--co-spacing-sm);padding:var(--co-spacing-md) var(--co-spacing-lg);border-bottom:1px solid var(--co-semantic-border-default);color:var(--co-semantic-text-muted)}.co-command-search__input{flex:1;border:none;outline:none;background:transparent;font-size:var(--co-font-size-16);font-family:var(--co-font-family-primary);color:var(--co-semantic-text-default);min-width:0}.co-command-search__input::placeholder{color:var(--co-semantic-text-muted)}.co-command-search__shortcut{font-size:var(--co-font-size-10);color:var(--co-semantic-text-muted);background:var(--co-semantic-surface-muted);padding:2px var(--co-spacing-xs);border-radius:var(--co-border-radius-xxs);font-weight:500;line-height:1.4;flex-shrink:0}.co-command-search__results{flex:1;overflow-y:auto;padding:var(--co-spacing-xs) 0}.co-command-search__loading{flex-shrink:0;display:flex;align-items:center}.co-command-search__facet-chip{display:inline-flex;align-items:center;gap:2px;padding:2px var(--co-spacing-xs);background:var(--co-color-primary-azul);color:var(--co-color-base-blanco, #fff);border-radius:var(--co-border-radius-full);font-size:var(--co-font-size-12);font-weight:500;white-space:nowrap;flex-shrink:0}.co-command-search__facet-chip-label{max-width:110px;overflow:hidden;text-overflow:ellipsis}.co-command-search__facet-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:none;border-radius:var(--co-border-radius-full);background:rgba(255, 255, 255, 0.25);color:inherit;cursor:pointer;padding:0;line-height:1;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-command-search__facet-chip-remove:hover{background:rgba(255, 255, 255, 0.4)}.co-command-search__tabs{display:flex;align-items:center;gap:var(--co-spacing-sm);padding:var(--co-spacing-md);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;border-bottom:1px solid var(--co-semantic-border-default);scroll-padding-right:104px}.co-command-search__tabs::-webkit-scrollbar{display:none;}.co-command-search__tab{flex:0 0 auto}.co-command-search__tab--more{position:sticky;right:0;padding-left:var(--co-spacing-sm);background:var(--co-semantic-surface-page);box-shadow:-12px 0 10px -4px var(--co-semantic-surface-page)}.co-command-search__fav{padding:var(--co-spacing-sm) var(--co-spacing-lg) var(--co-spacing-md);border-bottom:1px solid var(--co-semantic-border-default)}.co-command-search__fav-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(88px, 1fr));gap:var(--co-spacing-xs)}.co-command-search__fav-card{display:flex;flex-direction:column;align-items:center;gap:var(--co-spacing-sm);padding:var(--co-spacing-sm) var(--co-spacing-xs);background:transparent;border:none;border-radius:var(--co-border-radius-sm);cursor:pointer;font-family:inherit;text-align:center;min-width:0;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-command-search__fav-card:hover{background:var(--co-semantic-surface-hover)}.co-command-search__fav-card:focus-visible{outline:none;box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-command-search__fav-icon{flex:none;width:50px;height:50px;border-radius:var(--co-border-radius-sm);display:flex;align-items:center;justify-content:center;color:var(--co-color-base-blanco, #fff);box-shadow:0 2px 6px rgba(0, 0, 0, 0.14)}.co-command-search__fav-label{font-size:var(--co-font-size-12);font-weight:500;line-height:1.2;color:var(--co-semantic-text-default);max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}"}},[257,"co-command-search",{open:[1540],placeholder:[1],items:[1],emptyMessage:[1,"empty-message"],async:[516],loading:[516],chips:[513],tabs:[1],activeTab:[1,"active-tab"],hasMore:[4,"has-more"],moreLabel:[1,"more-label"],favorites:[1],query:[32]},void 0,{activeTab:[{onActiveTabChange:0}],open:[{onOpenChange:0}]}]);function f(){"undefined"!=typeof customElements&&["co-command-search","co-avatar","co-chip","co-icon","co-loader","co-option-list","co-overlay","co-tooltip"].forEach((e=>{switch(e){case"co-command-search":customElements.get(a(e))||customElements.define(a(e),p);break;case"co-avatar":customElements.get(a(e))||r();break;case"co-chip":customElements.get(a(e))||i();break;case"co-icon":customElements.get(a(e))||n();break;case"co-loader":customElements.get(a(e))||d();break;case"co-option-list":customElements.get(a(e))||h();break;case"co-overlay":customElements.get(a(e))||l();break;case"co-tooltip":customElements.get(a(e))||m()}}))}f();const b=p,u=f;export{b as CoCommandSearch,u as defineCustomElement}
1
+ import{t as a,p as e,H as o,c as t,h as c}from"./index.js";import{r as s}from"./p-CQY6Ul7q.js";import{d as r}from"./p-B1QFLcY9.js";import{d as i}from"./p-Du_CgT5E.js";import{d as n}from"./p-DNJAIVfI.js";import{d}from"./p-BH184F0X.js";import{d as h}from"./p-B2IsXte7.js";import{d as l}from"./p-x4grh-eZ.js";import{d as m}from"./p-DIo66nBr.js";const p=e(class extends o{constructor(a){super(),!1!==a&&this.__registerHost(),this.__attachShadow(),this.coSelect=t(this,"coSelect",7),this.coClose=t(this,"coClose",7),this.coSearch=t(this,"coSearch",7),this.coScopeChange=t(this,"coScopeChange",1),this.coBackspaceEmpty=t(this,"coBackspaceEmpty",1),this.coChipRemove=t(this,"coChipRemove",1),this.coTabSelect=t(this,"coTabSelect",1),this.coMoreTabs=t(this,"coMoreTabs",1),this.open=!1,this.placeholder="Search...",this.items=[],this.emptyMessage="No results found",this.async=!1,this.loading=!1,this.chips="[]",this.tabs="[]",this.activeTab="",this.hasMore=!1,this.moreLabel="More",this.favorites="[]",this.query="",this.handleInput=a=>{this.query=a.target.value,this.coSearch.emit(this.query)},this.handleKeyDown=a=>{var e,o;if(function(a,e){return"Backspace"===a&&""===e}(a.key,this.query))return a.preventDefault(),void this.coBackspaceEmpty.emit(this.query);switch(a.key){case"ArrowDown":case"ArrowUp":case"Enter":a.preventDefault(),null===(e=this.optionListEl)||void 0===e||e.handleKey(a);break;case"Escape":a.preventDefault(),this.close();break;case"Tab":a.preventDefault(),null===(o=this.optionListEl)||void 0===o||o.handleKey(new KeyboardEvent("keydown",{key:a.shiftKey?"ArrowUp":"ArrowDown"}))}},this.handleListPick=a=>{const e=this.filteredItems.find((e=>e.value===a));e&&this.selectItem(e)},this.handlePanelKeyDown=a=>{"Escape"===a.key&&(a.preventDefault(),this.close())},this.handleOverlayClick=()=>{this.close()},this.handlePanelClick=a=>{a.stopPropagation()},this.handleTriggerClick=()=>{this.open=!0}}get parsedItems(){if("string"==typeof this.items)try{return JSON.parse(this.items)}catch(a){return[]}return this.items}get filteredItems(){return function(a,e,o){return o?a:e?s(a,e,(a=>[a.label,a.value])):a}(this.parsedItems,this.query,this.async)}get parsedChips(){try{const a="string"==typeof this.chips?JSON.parse(this.chips):this.chips;return Array.isArray(a)?a:[]}catch(a){return[]}}get parsedTabs(){try{const a="string"==typeof this.tabs?JSON.parse(this.tabs):this.tabs;return Array.isArray(a)?a:[]}catch(a){return[]}}get parsedFavorites(){try{const a="string"==typeof this.favorites?JSON.parse(this.favorites):this.favorites;return Array.isArray(a)?a:[]}catch(a){return[]}}onActiveTabChange(a){a&&(this.query=""),requestAnimationFrame((()=>{var a;const e=null===(a=this.el.shadowRoot)||void 0===a?void 0:a.querySelector('.co-command-search__tab[aria-selected="true"]');null==e||e.scrollIntoView({inline:"nearest",block:"nearest"})}))}onOpenChange(a){a&&(this.query="",requestAnimationFrame((()=>{var a;return null===(a=this.inputEl)||void 0===a?void 0:a.focus()})))}selectItem(a){!function(a){return!0===a.keepOpen}(a)?(this.coSelect.emit(a.value),this.close()):this.coScopeChange.emit(a.value)}close(){this.open&&(this.open=!1,this.coClose.emit())}render(){const a=this.filteredItems;return[c("div",{key:"2fa819f611d5e106367baecd8d0d468ef538abb9",class:"co-command-search__trigger",onClick:this.handleTriggerClick},c("slot",{key:"ee17e409b1253cc447d9813a458c3b123597caa1",name:"trigger"})),c("co-overlay",{key:"57f2be7cc61b9c73d20af7cabe44f27f52da130b",open:this.open,onCoClose:this.handleOverlayClick},c("div",{key:"8e582bca997ca0b0ed0b77a26a2f5bce17540159",class:{"co-command-search":!0,"co-command-search--open":this.open},part:"panel",role:"dialog","aria-modal":"true","aria-label":"Command palette",onClick:this.handlePanelClick,onKeyDown:this.handlePanelKeyDown},c("div",{key:"6252fab9df91285b063186c0814a678c2f91aec9",class:"co-command-search__input-row",part:"input-row"},c("co-icon",{key:"4ce68141969cd823f3b6d1e286dcd62609244587",name:"magnifying-glass",size:20}),this.parsedChips.map(((a,e)=>c("span",{class:"co-command-search__facet-chip"},a.icon&&c("co-icon",{name:a.icon,size:12}),c("span",{class:"co-command-search__facet-chip-label"},a.label),c("button",{class:"co-command-search__facet-chip-remove",type:"button","aria-label":"Remove filter "+a.label,onClick:a=>{a.stopPropagation(),this.coChipRemove.emit(e)}},c("co-icon",{name:"x",size:10,weight:"bold"}))))),c("input",{key:"565abed1c59c32ce3336e110cd9da6afadb693b5",class:"co-command-search__input",type:"text",placeholder:this.placeholder,value:this.query,onInput:this.handleInput,onKeyDown:this.handleKeyDown,ref:a=>this.inputEl=a,part:"input",role:"combobox","aria-expanded":this.open?"true":"false","aria-autocomplete":"list"}),this.loading&&c("co-loader",{key:"f84db9e0b3f9c53d8eae6ab6edb790f189b3e49d",class:"co-command-search__loading",part:"loading",size:"sm"}),c("span",{key:"7f9e3b653c9d52d0438fafbb645506f3a7aa7f2c",class:"co-command-search__shortcut"},"ESC")),(this.parsedTabs.length>0||this.hasMore)&&c("div",{key:"fd734ad98b004d5e08f601631d6e2c547ef70dca",class:"co-command-search__tabs",part:"tabs",role:"tablist"},this.parsedTabs.map((a=>{const e=a.value===this.activeTab;return c("co-chip",{class:"co-command-search__tab",role:"tab","aria-selected":e?"true":"false",clickable:!0,selected:e,variant:e?"filled":"outlined",color:e?"primary":"default",iconLeft:a.icon,label:a.label,onCoClick:()=>this.coTabSelect.emit(e?"":a.value)})})),this.hasMore&&c("co-chip",{key:"f5812a94f9f24df93b34abd9588e43b354d6c5e8",class:"co-command-search__tab co-command-search__tab--more",clickable:!0,variant:"outlined",label:this.moreLabel,iconRight:"caret-down",onCoClick:()=>this.coMoreTabs.emit()})),c("div",{key:"b21f950593d51ecb05ffa7f752cd3b8eebf0ef08",class:"co-command-search__results",part:"results"},this.parsedFavorites.length>0&&!this.query&&c("div",{key:"054210475307154dbd369a6468e5bd38a88534a2",class:"co-command-search__fav",part:"favorites"},c("div",{key:"4cc849cf107af9b94cb9715a7d054f6567e75345",class:"co-command-search__fav-grid"},this.parsedFavorites.map((a=>c("button",{class:"co-command-search__fav-card",type:"button",onClick:()=>this.coSelect.emit(a.value)},c("span",{class:"co-command-search__fav-icon",style:{background:a.color||"var(--co-semantic-surface-muted)"}},c("co-icon",{name:a.icon||"circle",size:26,weight:"fill"})),c("span",{class:"co-command-search__fav-label"},a.label)))))),c("co-option-list",{key:"b48e7eb20f3591e8539211343908fa84ca1ebd1f",ref:a=>this.optionListEl=a,items:JSON.stringify(a.map((a=>({_id:a.value,label:a.label,icon:a.icon,description:a.subtitle,group:a.section,disabled:a.disabled})))),autoHighlight:!0,highlightMatches:!0,highlightTerm:this.query,loading:this.loading,emptyMessage:this.emptyMessage,onCoChange:a=>this.handleListPick(a.detail.item._id)}))))]}get el(){return this}static get watchers(){return{activeTab:[{onActiveTabChange:0}],open:[{onOpenChange:0}]}}static get style(){return":host{display:contents}co-overlay{--co-overlay-bg:rgba(0, 0, 0, 0.16)}.co-command-search__trigger{display:contents}.co-command-search{display:flex;flex-direction:column;width:90vw;max-width:560px;max-height:420px;background:var(--co-semantic-surface-page);border-radius:var(--co-border-radius-lg);box-shadow:0 8px 32px rgba(0, 0, 0, 0.12);overflow:hidden;font-family:var(--co-font-family-primary);transform:translateY(8px) scale(0.98);opacity:0;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-out), opacity var(--co-motion-duration-fast) var(--co-motion-ease-out);margin-top:-15vh}.co-command-search--open{transform:translateY(0) scale(1);opacity:1}.co-command-search__input-row{display:flex;align-items:center;gap:var(--co-spacing-sm);padding:var(--co-spacing-md) var(--co-spacing-lg);border-bottom:1px solid var(--co-semantic-border-default);color:var(--co-semantic-text-muted)}.co-command-search__input{flex:1;border:none;outline:none;background:transparent;font-size:var(--co-font-size-16);font-family:var(--co-font-family-primary);color:var(--co-semantic-text-default);min-width:0}.co-command-search__input::placeholder{color:var(--co-semantic-text-muted)}.co-command-search__shortcut{font-size:var(--co-font-size-10);color:var(--co-semantic-text-muted);background:var(--co-semantic-surface-muted);padding:2px var(--co-spacing-xs);border-radius:var(--co-border-radius-xxs);font-weight:500;line-height:1.4;flex-shrink:0}.co-command-search__results{flex:1;overflow-y:auto;padding:var(--co-spacing-xs) 0}.co-command-search__loading{flex-shrink:0;display:flex;align-items:center}.co-command-search__facet-chip{display:inline-flex;align-items:center;gap:2px;padding:2px var(--co-spacing-xs);background:var(--co-color-primary-azul);color:var(--co-color-base-blanco, #fff);border-radius:var(--co-border-radius-full);font-size:var(--co-font-size-12);font-weight:500;white-space:nowrap;flex-shrink:0}.co-command-search__facet-chip-label{max-width:110px;overflow:hidden;text-overflow:ellipsis}.co-command-search__facet-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:none;border-radius:var(--co-border-radius-full);background:rgba(255, 255, 255, 0.25);color:inherit;cursor:pointer;padding:0;line-height:1;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-command-search__facet-chip-remove:hover{background:rgba(255, 255, 255, 0.4)}.co-command-search__tabs{display:flex;align-items:center;gap:var(--co-spacing-sm);padding:var(--co-spacing-md);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;border-bottom:1px solid var(--co-semantic-border-default);scroll-padding-right:104px}.co-command-search__tabs::-webkit-scrollbar{display:none;}.co-command-search__tab{flex:0 0 auto}.co-command-search__tab--more{position:sticky;right:0;padding-left:var(--co-spacing-sm);background:var(--co-semantic-surface-page);box-shadow:-12px 0 10px -4px var(--co-semantic-surface-page)}.co-command-search__fav{padding:var(--co-spacing-sm) var(--co-spacing-lg) var(--co-spacing-md);border-bottom:1px solid var(--co-semantic-border-default)}.co-command-search__fav-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(88px, 1fr));gap:var(--co-spacing-xs)}.co-command-search__fav-card{display:flex;flex-direction:column;align-items:center;gap:var(--co-spacing-sm);padding:var(--co-spacing-sm) var(--co-spacing-xs);background:transparent;border:none;border-radius:var(--co-border-radius-sm);cursor:pointer;font-family:inherit;text-align:center;min-width:0;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-command-search__fav-card:hover{background:var(--co-semantic-surface-hover)}.co-command-search__fav-card:focus-visible{outline:none;box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-command-search__fav-icon{flex:none;width:50px;height:50px;border-radius:var(--co-border-radius-sm);display:flex;align-items:center;justify-content:center;color:var(--co-color-base-blanco, #fff);box-shadow:0 2px 6px rgba(0, 0, 0, 0.14)}.co-command-search__fav-label{font-size:var(--co-font-size-12);font-weight:500;line-height:1.2;color:var(--co-semantic-text-default);max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}"}},[257,"co-command-search",{open:[1540],placeholder:[1],items:[1],emptyMessage:[1,"empty-message"],async:[516],loading:[516],chips:[513],tabs:[1],activeTab:[1,"active-tab"],hasMore:[4,"has-more"],moreLabel:[1,"more-label"],favorites:[1],query:[32]},void 0,{activeTab:[{onActiveTabChange:0}],open:[{onOpenChange:0}]}]);function f(){"undefined"!=typeof customElements&&["co-command-search","co-avatar","co-chip","co-icon","co-loader","co-option-list","co-overlay","co-tooltip"].forEach((e=>{switch(e){case"co-command-search":customElements.get(a(e))||customElements.define(a(e),p);break;case"co-avatar":customElements.get(a(e))||r();break;case"co-chip":customElements.get(a(e))||i();break;case"co-icon":customElements.get(a(e))||n();break;case"co-loader":customElements.get(a(e))||d();break;case"co-option-list":customElements.get(a(e))||h();break;case"co-overlay":customElements.get(a(e))||l();break;case"co-tooltip":customElements.get(a(e))||m()}}))}f();const b=p,u=f;export{b as CoCommandSearch,u as defineCustomElement}
@@ -1 +1 @@
1
- import{t as a,p as o,H as i,c as e,h as t}from"./index.js";import{d as n}from"./p-Dj1EZ5qD.js";const c=o(class extends i{constructor(a){super(),!1!==a&&this.__registerHost(),this.__attachShadow(),this.coPageChange=e(this,"coPageChange",7),this.page=1,this.pageSize=40,this.totalCount=0,this.pageSizes="[10, 20, 40, 50, 100]",this.perPageLabel="Per page",this.recordsLabel="Records",this.jumpToPageLabel="Jump to page",this.previousLabel="Previous",this.nextLabel="Next",this.parsedPageSizes=[10,20,40,50,100],this.jumpToValue="",this.showPageSizeDropdown=!1}parsePageSizes(){try{this.parsedPageSizes="string"==typeof this.pageSizes?JSON.parse(this.pageSizes):this.pageSizes}catch(a){this.parsedPageSizes=[10,20,40,50,100]}}componentWillLoad(){this.parsePageSizes()}get totalPages(){return Math.max(1,Math.ceil(this.totalCount/this.pageSize))}goToPage(a){const o=Math.max(1,Math.min(a,this.totalPages));o!==this.page&&(this.page=o,this.coPageChange.emit({page:this.page,pageSize:this.pageSize}))}changePageSize(a){this.pageSize=a,this.page=1,this.showPageSizeDropdown=!1,this.coPageChange.emit({page:1,pageSize:a})}handleJumpToPage(a){if("Enter"===a.key){const a=parseInt(this.jumpToValue,10);isNaN(a)||(this.goToPage(a),this.jumpToValue="")}}getVisiblePages(){const a=this.totalPages,o=this.page;if(a<=7)return Array.from({length:a},((a,o)=>o+1));const i=[1];o>3&&i.push("...");const e=Math.max(2,o-1),t=Math.min(a-1,o+1);for(let a=e;a<=t;a++)i.push(a);return o<a-2&&i.push("..."),i.push(a),i}render(){const a=this.getVisiblePages();return t("div",{key:"185e1d7a9d69e1bacd7aeb697c70e9cefae6057d",class:"co-pagination",part:"pagination"},t("div",{key:"93dcff37dcd024519d00176b3bf52c6fc94c00ec",class:"co-pagination__section"},t("span",{key:"f13f0b987bd3634046b26225b867b4a3f8766eb3",class:"co-pagination__label"},this.jumpToPageLabel),t("input",{key:"aed4e49fe945dac3dab1b84d97119f7e5c298142",type:"text",class:"co-pagination__jump-input",value:this.jumpToValue||this.page+"",onInput:a=>{this.jumpToValue=a.target.value},onKeyDown:a=>this.handleJumpToPage(a),onFocus:a=>{a.target.select()},part:"jump-input"})),t("div",{key:"67a1d54ce40eb1cc003d5f88ea644df994d0c590",class:"co-pagination__section co-pagination__section--page-size"},t("div",{key:"877cb7ebbf427e505f399d14e48cec4011282ab4",class:"co-pagination__page-size-trigger",onClick:()=>{this.showPageSizeDropdown=!this.showPageSizeDropdown}},t("span",{key:"ef55eceda68aa0d561a3066a6a9f864171350f94",class:"co-pagination__page-size-value"},this.pageSize),t("span",{key:"1813de04f69717833fe432ec5188aaa00a379128",class:"co-pagination__label"},this.perPageLabel),t("co-icon",{key:"20ba29bbb24dfbd03551a439ad9f7cbbbb233f8e",name:"caret-down",size:14})),this.showPageSizeDropdown&&t("div",{key:"99bf24b654f5171fb2bf6a0b720057179e7931f1",class:"co-pagination__page-size-dropdown",part:"dropdown"},this.parsedPageSizes.map((a=>t("button",{class:{"co-pagination__page-size-option":!0,"co-pagination__page-size-option--active":a===this.pageSize},onClick:()=>this.changePageSize(a)},a))))),t("div",{key:"1b0a013033bffc0ef849590f4bd2b19ba78346f3",class:"co-pagination__spacer"}),t("div",{key:"02bcc300d05ff7e2710c2bbb1373ef695e563b6e",class:"co-pagination__section"},t("span",{key:"3942e7ef9ac9d7b295c1c81685fbeec6032df795",class:"co-pagination__count"},this.totalCount.toLocaleString()," ",this.recordsLabel)),t("div",{key:"6e88cd0855d6f34ce0e38d1ee89234b8cf929ad0",class:"co-pagination__section co-pagination__nav"},t("button",{key:"81b26b3f719a1eca429a6820bf7da6d68b79398f",class:"co-pagination__nav-btn",disabled:this.page<=1,onClick:()=>this.goToPage(this.page-1),part:"prev-btn"},this.previousLabel),a.map((a=>"..."===a?t("span",{class:"co-pagination__ellipsis"},"…"):t("button",{class:{"co-pagination__page-btn":!0,"co-pagination__page-btn--active":a===this.page},onClick:()=>this.goToPage(a)},a))),t("button",{key:"83448292b1fba7470971b46e8ab14267e8a762dc",class:"co-pagination__nav-btn",disabled:this.page>=this.totalPages,onClick:()=>this.goToPage(this.page+1),part:"next-btn"},this.nextLabel)))}static get watchers(){return{pageSizes:[{parsePageSizes:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary)}.co-pagination{display:flex;align-items:center;gap:var(--co-spacing-lg);padding:var(--co-spacing-md) var(--co-spacing-lg);border-top:1px solid var(--co-color-opacity-negro-8);background:var(--co-color-base-blanco);font-size:var(--co-font-size-12);color:var(--co-semantic-text-secondary);letter-spacing:var(--co-font-letter-spacing-body);user-select:none}.co-pagination__section{display:flex;align-items:center;gap:var(--co-spacing-sm);flex-shrink:0}.co-pagination__spacer{flex:1}.co-pagination__label{color:var(--co-semantic-text-secondary);white-space:nowrap}.co-pagination__count{color:var(--co-semantic-text-secondary);white-space:nowrap}.co-pagination__jump-input{width:32px;height:28px;border:1px solid var(--co-color-opacity-negro-8);border-radius:var(--co-border-radius-xxs);background:var(--co-color-base-blanco);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12);color:var(--co-semantic-text-default);text-align:center;padding:0 var(--co-spacing-xs);outline:none;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-pagination__jump-input:focus{border-color:var(--co-color-primary-azul)}.co-pagination__section--page-size{position:relative}.co-pagination__page-size-trigger{display:flex;align-items:center;gap:var(--co-spacing-xs);cursor:pointer;padding:var(--co-spacing-xs) var(--co-spacing-sm);border-radius:var(--co-border-radius-xxs);transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-pagination__page-size-trigger:hover{background:var(--co-semantic-surface-hover)}.co-pagination__page-size-value{font-weight:500;color:var(--co-semantic-text-default)}.co-pagination__page-size-dropdown{position:absolute;bottom:calc(100% + 4px);left:0;min-width:72px;background:var(--co-color-base-blanco);border:1px solid var(--co-color-opacity-negro-8);border-radius:var(--co-border-radius-xs);box-shadow:0 4px 12px var(--co-color-opacity-negro-8);padding:var(--co-spacing-xs) 0;z-index:10}.co-pagination__page-size-option{display:block;width:100%;padding:var(--co-spacing-sm) var(--co-spacing-md);border:none;background:none;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12);color:var(--co-semantic-text-default);text-align:left;cursor:pointer;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-pagination__page-size-option:hover{background:var(--co-semantic-surface-hover)}.co-pagination__page-size-option--active{font-weight:500;color:var(--co-color-primary-azul)}.co-pagination__nav{display:flex;align-items:center;gap:var(--co-spacing-xxs)}.co-pagination__nav-btn{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xs) var(--co-spacing-sm);border:1px solid var(--co-color-opacity-negro-8);border-radius:var(--co-border-radius-xxs);background:var(--co-color-base-blanco);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12);color:var(--co-semantic-text-default);cursor:pointer;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out);white-space:nowrap}.co-pagination__nav-btn:hover:not(:disabled){background:var(--co-semantic-surface-hover)}.co-pagination__nav-btn:disabled{opacity:0.4;cursor:not-allowed}.co-pagination__page-btn{min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--co-border-radius-xxs);background:none;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12);color:var(--co-semantic-text-secondary);cursor:pointer;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-pagination__page-btn:hover{background:var(--co-semantic-surface-hover)}.co-pagination__page-btn--active{background:var(--co-color-base-negro);color:var(--co-color-base-blanco);font-weight:500}.co-pagination__page-btn--active:hover{background:var(--co-color-base-negro)}.co-pagination__ellipsis{display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;color:var(--co-color-gray-400)}"}},[1,"co-data-table-pagination",{page:[1538],pageSize:[1538,"page-size"],totalCount:[2,"total-count"],pageSizes:[1,"page-sizes"],perPageLabel:[1,"per-page-label"],recordsLabel:[1,"records-label"],jumpToPageLabel:[1,"jump-to-page-label"],previousLabel:[1,"previous-label"],nextLabel:[1,"next-label"],parsedPageSizes:[32],jumpToValue:[32],showPageSizeDropdown:[32]},void 0,{pageSizes:[{parsePageSizes:0}]}]);function s(){"undefined"!=typeof customElements&&["co-data-table-pagination","co-icon"].forEach((o=>{switch(o){case"co-data-table-pagination":customElements.get(a(o))||customElements.define(a(o),c);break;case"co-icon":customElements.get(a(o))||n()}}))}s();const r=c,p=s;export{r as CoDataTablePagination,p as defineCustomElement}
1
+ import{t as a,p as o,H as i,c as e,h as t}from"./index.js";import{d as n}from"./p-DNJAIVfI.js";const c=o(class extends i{constructor(a){super(),!1!==a&&this.__registerHost(),this.__attachShadow(),this.coPageChange=e(this,"coPageChange",7),this.page=1,this.pageSize=40,this.totalCount=0,this.pageSizes="[10, 20, 40, 50, 100]",this.perPageLabel="Per page",this.recordsLabel="Records",this.jumpToPageLabel="Jump to page",this.previousLabel="Previous",this.nextLabel="Next",this.parsedPageSizes=[10,20,40,50,100],this.jumpToValue="",this.showPageSizeDropdown=!1}parsePageSizes(){try{this.parsedPageSizes="string"==typeof this.pageSizes?JSON.parse(this.pageSizes):this.pageSizes}catch(a){this.parsedPageSizes=[10,20,40,50,100]}}componentWillLoad(){this.parsePageSizes()}get totalPages(){return Math.max(1,Math.ceil(this.totalCount/this.pageSize))}goToPage(a){const o=Math.max(1,Math.min(a,this.totalPages));o!==this.page&&(this.page=o,this.coPageChange.emit({page:this.page,pageSize:this.pageSize}))}changePageSize(a){this.pageSize=a,this.page=1,this.showPageSizeDropdown=!1,this.coPageChange.emit({page:1,pageSize:a})}handleJumpToPage(a){if("Enter"===a.key){const a=parseInt(this.jumpToValue,10);isNaN(a)||(this.goToPage(a),this.jumpToValue="")}}getVisiblePages(){const a=this.totalPages,o=this.page;if(a<=7)return Array.from({length:a},((a,o)=>o+1));const i=[1];o>3&&i.push("...");const e=Math.max(2,o-1),t=Math.min(a-1,o+1);for(let a=e;a<=t;a++)i.push(a);return o<a-2&&i.push("..."),i.push(a),i}render(){const a=this.getVisiblePages();return t("div",{key:"7bb75d863d77c1ee257994eb81557f4efd320cf3",class:"co-pagination",part:"pagination"},t("div",{key:"593441b0dc0178fd73a333636764e29fe60efa49",class:"co-pagination__section"},t("span",{key:"453dc30bbfbd9eb899c8bd2e7aa112e9f183a8d8",class:"co-pagination__label"},this.jumpToPageLabel),t("input",{key:"a806c23c5515f81d4751a69950f3ff944a41c9b9",type:"text",class:"co-pagination__jump-input",value:this.jumpToValue||this.page+"",onInput:a=>{this.jumpToValue=a.target.value},onKeyDown:a=>this.handleJumpToPage(a),onFocus:a=>{a.target.select()},part:"jump-input"})),t("div",{key:"9eadd04de3cab8260445a2eb133734c3c3aa7cf6",class:"co-pagination__section co-pagination__section--page-size"},t("div",{key:"e3dd5337ee92d9fa715fb27b1ff689b4e6fd4559",class:"co-pagination__page-size-trigger",onClick:()=>{this.showPageSizeDropdown=!this.showPageSizeDropdown}},t("span",{key:"8699129db80a836d122b150d357f3c6d72b21683",class:"co-pagination__page-size-value"},this.pageSize),t("span",{key:"cfc74fc55c23887dc2d13efa379458d8ef9dd947",class:"co-pagination__label"},this.perPageLabel),t("co-icon",{key:"700821528fd851f6c8cbafb07ffe3ba95838d977",name:"caret-down",size:14})),this.showPageSizeDropdown&&t("div",{key:"d0cd76772f54b3a5853d8158dd72d5972a9ef5e8",class:"co-pagination__page-size-dropdown",part:"dropdown"},this.parsedPageSizes.map((a=>t("button",{class:{"co-pagination__page-size-option":!0,"co-pagination__page-size-option--active":a===this.pageSize},onClick:()=>this.changePageSize(a)},a))))),t("div",{key:"1389c60c3985201af55ba9ba609e020e6fb43c86",class:"co-pagination__spacer"}),t("div",{key:"6254c6c322e1ca929c6f2654ec80887efad30615",class:"co-pagination__section"},t("span",{key:"aeb3619ad97e67f866cc982745efb56aafc25f87",class:"co-pagination__count"},this.totalCount.toLocaleString()," ",this.recordsLabel)),t("div",{key:"fae17e08dd1383aaf71587b7efe504d575e198c6",class:"co-pagination__section co-pagination__nav"},t("button",{key:"912bfea50023f5e039364a5f4e3dc1d7bb2f05e7",class:"co-pagination__nav-btn",disabled:this.page<=1,onClick:()=>this.goToPage(this.page-1),part:"prev-btn"},this.previousLabel),a.map((a=>"..."===a?t("span",{class:"co-pagination__ellipsis"},"…"):t("button",{class:{"co-pagination__page-btn":!0,"co-pagination__page-btn--active":a===this.page},onClick:()=>this.goToPage(a)},a))),t("button",{key:"7c933d5a710cb5509b360d23fa0512df1a7a8bc4",class:"co-pagination__nav-btn",disabled:this.page>=this.totalPages,onClick:()=>this.goToPage(this.page+1),part:"next-btn"},this.nextLabel)))}static get watchers(){return{pageSizes:[{parsePageSizes:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary)}.co-pagination{display:flex;align-items:center;gap:var(--co-spacing-lg);padding:var(--co-spacing-md) var(--co-spacing-lg);border-top:1px solid var(--co-color-opacity-negro-8);background:var(--co-color-base-blanco);font-size:var(--co-font-size-12);color:var(--co-semantic-text-secondary);letter-spacing:var(--co-font-letter-spacing-body);user-select:none}.co-pagination__section{display:flex;align-items:center;gap:var(--co-spacing-sm);flex-shrink:0}.co-pagination__spacer{flex:1}.co-pagination__label{color:var(--co-semantic-text-secondary);white-space:nowrap}.co-pagination__count{color:var(--co-semantic-text-secondary);white-space:nowrap}.co-pagination__jump-input{width:32px;height:28px;border:1px solid var(--co-color-opacity-negro-8);border-radius:var(--co-border-radius-xxs);background:var(--co-color-base-blanco);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12);color:var(--co-semantic-text-default);text-align:center;padding:0 var(--co-spacing-xs);outline:none;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-pagination__jump-input:focus{border-color:var(--co-color-primary-azul)}.co-pagination__section--page-size{position:relative}.co-pagination__page-size-trigger{display:flex;align-items:center;gap:var(--co-spacing-xs);cursor:pointer;padding:var(--co-spacing-xs) var(--co-spacing-sm);border-radius:var(--co-border-radius-xxs);transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-pagination__page-size-trigger:hover{background:var(--co-semantic-surface-hover)}.co-pagination__page-size-value{font-weight:500;color:var(--co-semantic-text-default)}.co-pagination__page-size-dropdown{position:absolute;bottom:calc(100% + 4px);left:0;min-width:72px;background:var(--co-color-base-blanco);border:1px solid var(--co-color-opacity-negro-8);border-radius:var(--co-border-radius-xs);box-shadow:0 4px 12px var(--co-color-opacity-negro-8);padding:var(--co-spacing-xs) 0;z-index:10}.co-pagination__page-size-option{display:block;width:100%;padding:var(--co-spacing-sm) var(--co-spacing-md);border:none;background:none;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12);color:var(--co-semantic-text-default);text-align:left;cursor:pointer;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-pagination__page-size-option:hover{background:var(--co-semantic-surface-hover)}.co-pagination__page-size-option--active{font-weight:500;color:var(--co-color-primary-azul)}.co-pagination__nav{display:flex;align-items:center;gap:var(--co-spacing-xxs)}.co-pagination__nav-btn{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xs) var(--co-spacing-sm);border:1px solid var(--co-color-opacity-negro-8);border-radius:var(--co-border-radius-xxs);background:var(--co-color-base-blanco);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12);color:var(--co-semantic-text-default);cursor:pointer;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out);white-space:nowrap}.co-pagination__nav-btn:hover:not(:disabled){background:var(--co-semantic-surface-hover)}.co-pagination__nav-btn:disabled{opacity:0.4;cursor:not-allowed}.co-pagination__page-btn{min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--co-border-radius-xxs);background:none;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12);color:var(--co-semantic-text-secondary);cursor:pointer;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-pagination__page-btn:hover{background:var(--co-semantic-surface-hover)}.co-pagination__page-btn--active{background:var(--co-color-base-negro);color:var(--co-color-base-blanco);font-weight:500}.co-pagination__page-btn--active:hover{background:var(--co-color-base-negro)}.co-pagination__ellipsis{display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;color:var(--co-color-gray-400)}"}},[1,"co-data-table-pagination",{page:[1538],pageSize:[1538,"page-size"],totalCount:[2,"total-count"],pageSizes:[1,"page-sizes"],perPageLabel:[1,"per-page-label"],recordsLabel:[1,"records-label"],jumpToPageLabel:[1,"jump-to-page-label"],previousLabel:[1,"previous-label"],nextLabel:[1,"next-label"],parsedPageSizes:[32],jumpToValue:[32],showPageSizeDropdown:[32]},void 0,{pageSizes:[{parsePageSizes:0}]}]);function s(){"undefined"!=typeof customElements&&["co-data-table-pagination","co-icon"].forEach((o=>{switch(o){case"co-data-table-pagination":customElements.get(a(o))||customElements.define(a(o),c);break;case"co-icon":customElements.get(a(o))||n()}}))}s();const r=c,p=s;export{r as CoDataTablePagination,p as defineCustomElement}
@@ -1 +1 @@
1
- import{t,p as e,H as a,c as o,h as i}from"./index.js";import{d as s}from"./p-DbipMAyT.js";import{d as c}from"./p-Bbny3WUc.js";import{d as r}from"./p-Dj1EZ5qD.js";const n=e(class extends a{constructor(t){super(),!1!==t&&this.__registerHost(),this.coSort=o(this,"coSort",7),this.coRowSelect=o(this,"coRowSelect",7),this.coSelectAll=o(this,"coSelectAll",7),this.coColumnResize=o(this,"coColumnResize",7),this.coColumnPin=o(this,"coColumnPin",7),this.coHeaderFilter=o(this,"coHeaderFilter",7),this.coRowDblClick=o(this,"coRowDblClick",7),this.coRowClick=o(this,"coRowClick",7),this.coEmptyAction=o(this,"coEmptyAction",7),this.columns="[]",this.rows="[]",this.rowKey="_id",this.loading=!1,this.skeletonRows=10,this.emptyTitle="",this.emptyMessage="No records found",this.emptyIcon="magnifying-glass",this.emptyActionVariant="stroke",this.sortField="",this.sortOrder="",this.filteredFields="[]",this.indirectFilteredFields="[]",this.selectable=!1,this.selectedKeys="[]",this.resizable=!0,this.parsedColumns=[],this.parsedRows=[],this.parsedSelectedKeys=new Set,this.parsedFilteredFields=[],this.parsedIndirectFields=[],this.columnWidths=new Map,this.resizingColumn=null,this.resizeStartX=0,this.resizeStartWidth=0,this.resizeEdgeExtra=0,this.resizeLastClientX=0,this.resizeAutoScrollRaf=0,this.resizePendingScroll=0,this.suppressNextSort=!1}parseColumns(){try{const t="string"==typeof this.columns?JSON.parse(this.columns):this.columns;this.parsedColumns=t,t.forEach((t=>{t.width&&!this.columnWidths.has(t.field)&&this.columnWidths.set(t.field,t.width)}))}catch(t){this.parsedColumns=[]}}parseRows(){try{this.parsedRows="string"==typeof this.rows?JSON.parse(this.rows):this.rows}catch(t){this.parsedRows=[]}}parseSelectedKeys(){try{const t="string"==typeof this.selectedKeys?JSON.parse(this.selectedKeys):this.selectedKeys;this.parsedSelectedKeys=new Set(t)}catch(t){this.parsedSelectedKeys=new Set}}parseFilteredFields(){try{this.parsedFilteredFields="string"==typeof this.filteredFields?JSON.parse(this.filteredFields):this.filteredFields||[]}catch(t){this.parsedFilteredFields=[]}}parseIndirectFields(){try{this.parsedIndirectFields="string"==typeof this.indirectFilteredFields?JSON.parse(this.indirectFilteredFields):this.indirectFilteredFields||[]}catch(t){this.parsedIndirectFields=[]}}componentWillLoad(){this.parseColumns(),this.parseRows(),this.parseSelectedKeys(),this.parseFilteredFields(),this.parseIndirectFields()}componentDidRender(){if(this.resizePendingScroll){const t=this.el.querySelector(".co-data-table__scroll");t&&(t.scrollLeft+=this.resizePendingScroll),this.resizePendingScroll=0}}handleSort(t){if(this.suppressNextSort)return void(this.suppressNextSort=!1);let e;e=this.sortField===t?"asc"===this.sortOrder?"desc":"desc"===this.sortOrder?"":"asc":"asc",this.sortField=""===e?"":t,this.sortOrder=e,this.coSort.emit({field:t,order:e})}isAllSelected(){return 0!==this.parsedRows.length&&this.parsedRows.every((t=>this.parsedSelectedKeys.has(t[this.rowKey]+"")))}isSomeSelected(){if(0===this.parsedRows.length)return!1;const t=this.parsedRows.filter((t=>this.parsedSelectedKeys.has(t[this.rowKey]+""))).length;return t>0&&t<this.parsedRows.length}handleSelectAll(){const t=!this.isAllSelected()&&!this.isSomeSelected();this.coSelectAll.emit({selected:!this.isAllSelected()||t})}handleRowSelect(t){const e=t[this.rowKey]+"",a=!this.parsedSelectedKeys.has(e);this.coRowSelect.emit({key:e,selected:a})}handleResizeStart(t,e){e.preventDefault(),e.stopPropagation(),this.resizingColumn=t,this.resizeStartX=e.clientX,this.resizeStartWidth=this.columnWidths.get(t)||150,this.resizeEdgeExtra=0,this.resizeLastClientX=e.clientX;const a=this.el.querySelector(".co-data-table__scroll"),o=()=>{var t;return(null===(t=this.parsedColumns.find((t=>t.field===this.resizingColumn)))||void 0===t?void 0:t.minWidth)||80},i=()=>{const t=this.resizingColumn;if(!t)return 0;const e=function({startWidth:t,minWidth:e,pointerDelta:a,autoScrollExtra:o}){return Math.max(e,t+a+o)}({startWidth:this.resizeStartWidth,minWidth:o(),pointerDelta:this.resizeLastClientX-this.resizeStartX,autoScrollExtra:this.resizeEdgeExtra});return this.columnWidths=new Map(this.columnWidths.set(t,e)),e},s=()=>{this.resizeAutoScrollRaf=0;const t=this.resizingColumn;if(!t||!a)return;const e=a.getBoundingClientRect(),c=function({pointerX:t,containerLeft:e,containerRight:a,edgeZone:o=72,maxSpeed:i=24}){const s=a-e;if(s<=0)return 0;const c=Math.min(o,s/3),r=a-c;if(t>r)return Math.min(i,(t-r)/c*i);const n=e+c;return t<n?-Math.min(i,(n-t)/c*i):0}({pointerX:this.resizeLastClientX,containerLeft:e.left,containerRight:e.right});c&&(c<0&&(this.columnWidths.get(t)||this.resizeStartWidth)<=o()||(this.resizeEdgeExtra+=c,this.resizePendingScroll+=c,i(),this.resizeAutoScrollRaf=requestAnimationFrame(s)))},c=t=>{this.resizingColumn&&(this.resizeLastClientX=t.clientX,i(),this.resizeAutoScrollRaf||(this.resizeAutoScrollRaf=requestAnimationFrame(s)))},r=()=>{if(this.resizeAutoScrollRaf&&(cancelAnimationFrame(this.resizeAutoScrollRaf),this.resizeAutoScrollRaf=0),this.resizingColumn){const t=this.columnWidths.get(this.resizingColumn)||150;this.coColumnResize.emit({field:this.resizingColumn,width:t}),this.suppressNextSort=!0}this.resizingColumn=null,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",r)};document.addEventListener("mousemove",c),document.addEventListener("mouseup",r)}handleRowClick(t,e){this.coRowClick.emit({row:t,index:e})}handleRowDblClick(t,e){this.coRowDblClick.emit({row:t,index:e})}handleColumnPin(t,e){e.stopPropagation(),this.coColumnPin.emit({field:t})}handleColumnFilter(t,e){e.stopPropagation();const a=e.currentTarget.getBoundingClientRect();this.coHeaderFilter.emit({field:t,rect:{top:a.top,left:a.left,bottom:a.bottom,right:a.right,width:a.width,height:a.height}})}formatCellValue(t){if(null==t)return"";if("boolean"==typeof t)return t?"Yes":"No";if("string"==typeof t){if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}/.test(t))try{const e=new Date(t);if(!isNaN(e.getTime()))return e.toLocaleDateString("es",{year:"numeric",month:"short",day:"numeric"})+" "+e.toLocaleTimeString("es",{hour:"2-digit",minute:"2-digit"})}catch(t){}return t}return"number"==typeof t?t+"":Array.isArray(t)?t.map((t=>this.formatCellValue(t))).join(", "):"object"==typeof t?t.firstName||t.lastName?[t.firstName,t.lastName].filter(Boolean).join(" "):t.name?t.name+"":t.title?t.title+"":t.label?t.label+"":t.stageName?t.stageName+"":t.companyName?t.companyName+"":t.dealName?t.dealName+"":t._id&&Object.keys(t).length<=3?t._id+"":JSON.stringify(t):t+""}getColumnStyle(t){return Object.assign({},t.sticky?{left:this.selectable?"48px":"0px"}:{})}getColumnWidth(t){return this.columnWidths.get(t.field)||t.width||t.minWidth||150}getTableWidth(){let t=this.selectable?48:0;for(const e of this.parsedColumns)t+=this.getColumnWidth(e);return t}renderColgroup(){return i("colgroup",null,this.selectable&&i("col",{style:{width:"48px"}}),this.parsedColumns.map((t=>i("col",{style:{width:this.getColumnWidth(t)+"px",minWidth:(t.minWidth||80)+"px"}}))))}renderSortIcon(t){if(!t.sortable)return null;const e=this.sortField===t.field&&""!==this.sortOrder;return i("span",{class:{"co-data-table__sort-icon":!0,"co-data-table__sort-icon--active":e}},i("co-icon",{name:e?"asc"===this.sortOrder?"caret-up":"caret-down":"caret-up-down",size:16,weight:e?"fill":"regular"}))}renderHeader(){return i("thead",{class:"co-data-table__head"},i("tr",{class:"co-data-table__header-row"},this.selectable&&i("th",{class:"co-data-table__th co-data-table__th--checkbox co-data-table__th--sticky",style:{left:"0px"}},i("co-checkbox",{size:"small",checked:this.isAllSelected(),indeterminate:this.isSomeSelected(),onCoChange:()=>this.handleSelectAll()})),this.parsedColumns.map(((t,e)=>i("th",{class:{"co-data-table__th":!0,"co-data-table__th--sticky":!!t.sticky,"co-data-table__th--sortable":!!t.sortable,"co-data-table__th--sorted":this.sortField===t.field,["co-data-table__th--align-"+(t.align||"left")]:!0},style:this.getColumnStyle(t),"aria-sort":t.sortable&&this.sortField===t.field&&""!==this.sortOrder?"asc"===this.sortOrder?"ascending":"descending":void 0},i("span",{class:"co-data-table__th-content"},i("span",{class:{"co-data-table__pin-icon":!0,"co-data-table__pin-icon--active":!!t.sticky},title:t.sticky?"Unpin column":"Pin column",onClick:e=>this.handleColumnPin(t.field,e)},i("co-icon",{name:"push-pin",size:14,weight:t.sticky?"fill":"regular"})),t.sortable?i("button",{type:"button",class:"co-data-table__sort-button","aria-label":"Sort by "+t.label,onClick:()=>this.handleSort(t.field)},i("span",{class:"co-data-table__th-label"},t.label),this.renderSortIcon(t)):i("span",{class:"co-data-table__th-label"},t.label),t.filterable&&i("span",{class:{"co-data-table__filter-icon":!0,"co-data-table__filter-icon--active":this.parsedFilteredFields.includes(t.field),"co-data-table__filter-icon--indirect":!this.parsedFilteredFields.includes(t.field)&&this.parsedIndirectFields.includes(t.field)},title:this.parsedFilteredFields.includes(t.field)?"Edit column filter":this.parsedIndirectFields.includes(t.field)?"Filtered by other filters":"Filter column",onClick:e=>this.handleColumnFilter(t.field,e)},i("co-icon",{name:"funnel",size:14,weight:this.parsedFilteredFields.includes(t.field)?"fill":"regular"}))),this.resizable&&e<this.parsedColumns.length-1&&i("span",{class:{"co-data-table__resize-handle":!0,"co-data-table__resize-handle--active":this.resizingColumn===t.field},onMouseDown:e=>this.handleResizeStart(t.field,e),onClick:t=>t.stopPropagation()}))))))}renderSkeletonBody(){return i("tbody",{class:"co-data-table__body co-data-table__body--skeleton","aria-hidden":"true"},Array.from({length:this.skeletonRows}).map(((t,e)=>i("tr",{class:"co-data-table__row co-data-table__row--skeleton",key:"skeleton-"+e},this.selectable&&i("td",{class:"co-data-table__td co-data-table__td--checkbox co-data-table__td--sticky",style:{left:"0px"}},i("div",{class:"co-data-table__skeleton co-data-table__skeleton--checkbox"})),this.parsedColumns.map((t=>i("td",{class:{"co-data-table__td":!0,"co-data-table__td--sticky":!!t.sticky},style:Object.assign({},this.getColumnStyle(t))},i("div",{class:"co-data-table__skeleton"}))))))))}renderEmpty(){return this.loading||this.parsedRows.length>0?null:i("div",{class:"co-data-table__empty",part:"empty"},i("div",{class:"co-data-table__empty-icon"},i("co-icon",{name:this.emptyIcon,size:32,weight:"regular"})),this.emptyTitle&&i("h3",{class:"co-data-table__empty-title"},this.emptyTitle),this.emptyMessage&&i("p",{class:"co-data-table__empty-message"},this.emptyMessage),i("div",{class:"co-data-table__empty-action"},this.emptyActionLabel?i("co-button",{variant:this.emptyActionVariant,size:"m",label:this.emptyActionLabel,iconLeft:this.emptyActionIcon,onClick:()=>this.coEmptyAction.emit()}):i("slot",{name:"empty-action"})))}render(){return i("div",{key:"6ba1f3bb555252c55246c8af73b8ce08610e93b0",class:{"co-data-table":!0,"co-data-table--resizing":null!==this.resizingColumn,"co-data-table--loading":this.loading,"co-data-table--empty":!this.loading&&0===this.parsedRows.length}},i("div",{key:"69bc61a98f48ac06006d9b5ab132abf15bbeeb64",class:"co-data-table__scroll"},i("table",{key:"bc7627b050900ca6c8887981e47368bfb7f181ea",class:"co-data-table__table",style:{width:this.getTableWidth()+"px",minWidth:"100%"}},this.renderColgroup(),this.renderHeader(),i("slot",{key:"fc98863e680b660844ec968af6ebc645160ee32e"}),this.loading?this.renderSkeletonBody():null)),this.renderEmpty())}get el(){return this}static get watchers(){return{columns:[{parseColumns:0}],rows:[{parseRows:0}],selectedKeys:[{parseSelectedKeys:0}],filteredFields:[{parseFilteredFields:0}],indirectFilteredFields:[{parseIndirectFields:0}]}}static get style(){return"co-data-table{display:block;flex:1;min-height:0;overflow:hidden;contain:layout}.co-data-table{position:relative;font-family:var(--co-font-family-primary);background:var(--co-color-base-blanco);display:flex;flex-direction:column;height:100%}.co-data-table--resizing{cursor:col-resize;user-select:none}.co-data-table__scroll{flex:1;overflow-x:auto;overflow-y:auto;min-height:0}.co-data-table__table{min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.co-data-table__head{position:sticky;top:0;z-index:2}.co-data-table__header-row{height:40px}.co-data-table__th{position:relative;height:40px;padding:0 var(--co-spacing-md);background:var(--co-color-base-blanco);border-bottom:1px solid color-mix(in srgb, var(--co-semantic-border-default) 75%, transparent);border-right:1px solid color-mix(in srgb, var(--co-semantic-border-default) 75%, transparent);text-align:left;vertical-align:middle;font-size:var(--co-font-size-14);font-weight:500;color:var(--co-semantic-text-default);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;white-space:nowrap;overflow:hidden;box-sizing:border-box}.co-data-table__th:last-child{border-right:none}.co-data-table__th--sortable{cursor:pointer}.co-data-table__th--sortable:hover{background-image:linear-gradient(var(--co-semantic-surface-hover), var(--co-semantic-surface-hover))}.co-data-table__th-content{display:flex;align-items:center;justify-content:space-between;gap:var(--co-spacing-sm)}.co-data-table__pin-icon{display:flex;align-items:center;flex-shrink:0;color:var(--co-color-gray-300);cursor:pointer;opacity:0;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-data-table__pin-icon--active{opacity:1;color:var(--co-semantic-text-default)}.co-data-table__th:hover .co-data-table__pin-icon{opacity:1}.co-data-table__pin-icon:hover{color:var(--co-semantic-text-default)}.co-data-table__filter-icon{display:flex;align-items:center;flex-shrink:0;color:var(--co-color-gray-300);cursor:pointer;opacity:0;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-data-table__th:hover .co-data-table__filter-icon{opacity:1}.co-data-table__filter-icon:hover{color:var(--co-semantic-text-default)}.co-data-table__filter-icon--active{opacity:1;color:var(--co-color-primary-azul)}.co-data-table__filter-icon--indirect{opacity:0.45;color:var(--co-semantic-text-muted)}.co-data-table__th-label{flex:1;overflow:hidden;text-overflow:ellipsis}.co-data-table__sort-icon{display:flex;align-items:center;flex-shrink:0;color:var(--co-color-gray-400);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-data-table__sort-icon--active{color:var(--co-semantic-text-default)}.co-data-table__sort-button{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--co-spacing-sm);background:transparent;border:0;padding:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.co-data-table__sort-button:focus-visible{outline:2px solid var(--co-semantic-border-focus, var(--co-color-primary-azul));outline-offset:-2px;border-radius:var(--co-border-radius-xxs)}.co-data-table__th--checkbox,.co-data-table__td--checkbox{width:48px;min-width:48px;max-width:48px;padding:0 var(--co-spacing-md);text-align:center;line-height:0;}.co-data-table__th--sticky,.co-data-table__td--sticky{position:sticky;z-index:1;background:var(--co-color-base-blanco)}.co-data-table__th--sticky{z-index:3}.co-data-table__th.co-data-table__th--sticky,.co-data-table__td.co-data-table__td--sticky{overflow:visible}.co-data-table__td--sticky::after,.co-data-table__th--sticky::after{content:'';position:absolute;top:0;right:-4px;bottom:0;width:4px;pointer-events:none;opacity:0;background:linear-gradient(to right, var(--co-color-opacity-negro-8), transparent);transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-data-table__resize-handle{position:absolute;top:0;right:-2px;width:5px;height:100%;cursor:col-resize;z-index:1}.co-data-table__resize-handle:hover{background:var(--co-color-primary-azul);opacity:0.3}.co-data-table__resize-handle--active{background:var(--co-color-primary-azul);opacity:0.3}.co-data-table__row{height:48px;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out);content-visibility:auto;contain-intrinsic-size:auto 48px}.co-data-table__row:hover{background:var(--co-semantic-surface-hover)}.co-data-table__row--selected{background:var(--co-color-opacity-negro-4)}.co-data-table__row--selected:hover{background:var(--co-color-opacity-negro-8)}.co-data-table__td{height:48px;padding:0 var(--co-spacing-md);background:inherit;border-bottom:1px solid color-mix(in srgb, var(--co-semantic-border-default) 75%, transparent);border-right:1px solid color-mix(in srgb, var(--co-semantic-border-default) 75%, transparent);vertical-align:middle;font-size:var(--co-font-size-12);font-weight:var(--co-font-weight-medium);color:var(--co-semantic-text-default);letter-spacing:var(--co-font-letter-spacing-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.co-data-table__td:last-child{border-right:none}.co-data-table__th--align-center,.co-data-table__td--align-center{text-align:center}.co-data-table__th--align-right,.co-data-table__td--align-right{text-align:right}.co-data-table__cell-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.co-data-table--empty .co-data-table__scroll{flex:0 0 auto;overflow:hidden}.co-data-table__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;flex:1;min-height:280px;padding:var(--co-spacing-3xl) var(--co-spacing-lg);gap:var(--co-spacing-lg) }.co-data-table__empty-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--co-border-radius-full);background:var(--co-semantic-surface-muted);color:var(--co-semantic-text-secondary);margin-bottom:var(--co-spacing-sm)}.co-data-table__empty-title{font-size:var(--co-font-size-24);font-weight:var(--co-font-weight-medium, 500);line-height:1.25;color:var(--co-semantic-text-default);letter-spacing:-0.03em}.co-data-table__empty-message{font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-secondary);margin:0;max-width:538px ;line-height:1.25}.co-data-table__empty-action{margin-top:var(--co-spacing-md);display:inline-flex}.co-data-table__empty-action:empty{display:none}.co-data-table__skeleton{height:14px;border-radius:var(--co-border-radius-xxs);background:linear-gradient( 90deg, var(--co-semantic-surface-secondary) 0%, var(--co-semantic-surface-hover, rgba(0, 0, 0, 0.04)) 50%, var(--co-semantic-surface-secondary) 100% );background-size:200% 100%;animation:co-dt-shimmer 1.2s ease-in-out infinite;width:70%}.co-data-table__skeleton--checkbox{width:16px;height:16px;margin:0 auto}@keyframes co-dt-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.co-data-table__skeleton{animation:none}}.co-data-table__row--skeleton{pointer-events:none;content-visibility:visible}.co-data-table__row--flash-create{animation:co-dt-flash-create 1s ease-out}.co-data-table__row--flash-update{animation:co-dt-flash-update 1s ease-out}.co-data-table__row--flash-delete{animation:co-dt-flash-delete 0.5s ease-out forwards}@keyframes co-dt-flash-create{0%{background-color:rgba(2, 162, 112, 0.15)}100%{background-color:transparent}}@keyframes co-dt-flash-update{0%{background-color:rgba(37, 99, 235, 0.15)}100%{background-color:transparent}}@keyframes co-dt-flash-delete{0%{opacity:1;background-color:rgba(170, 46, 27, 0.1)}100%{opacity:0;height:0;padding:0;overflow:hidden}}"}},[260,"co-data-table",{columns:[1],rows:[1],rowKey:[1,"row-key"],loading:[4],skeletonRows:[2,"skeleton-rows"],emptyTitle:[1,"empty-title"],emptyMessage:[1,"empty-message"],emptyIcon:[1,"empty-icon"],emptyActionLabel:[1,"empty-action-label"],emptyActionVariant:[1,"empty-action-variant"],emptyActionIcon:[1,"empty-action-icon"],sortField:[1537,"sort-field"],sortOrder:[1537,"sort-order"],filteredFields:[513,"filtered-fields"],indirectFilteredFields:[513,"indirect-filtered-fields"],selectable:[4],selectedKeys:[1025,"selected-keys"],resizable:[4],parsedColumns:[32],parsedRows:[32],parsedSelectedKeys:[32],parsedFilteredFields:[32],parsedIndirectFields:[32],columnWidths:[32],resizingColumn:[32],resizeStartX:[32],resizeStartWidth:[32]},void 0,{columns:[{parseColumns:0}],rows:[{parseRows:0}],selectedKeys:[{parseSelectedKeys:0}],filteredFields:[{parseFilteredFields:0}],indirectFilteredFields:[{parseIndirectFields:0}]}]);function l(){"undefined"!=typeof customElements&&["co-data-table","co-button","co-checkbox","co-icon"].forEach((e=>{switch(e){case"co-data-table":customElements.get(t(e))||customElements.define(t(e),n);break;case"co-button":customElements.get(t(e))||s();break;case"co-checkbox":customElements.get(t(e))||c();break;case"co-icon":customElements.get(t(e))||r()}}))}l();const d=n,h=l;export{d as CoDataTable,h as defineCustomElement}
1
+ import{t,p as e,H as a,c as o,h as i}from"./index.js";import{d as s}from"./p-BsTO1uUA.js";import{d as c}from"./p-9ceBPSd1.js";import{d as r}from"./p-DNJAIVfI.js";const n=e(class extends a{constructor(t){super(),!1!==t&&this.__registerHost(),this.coSort=o(this,"coSort",7),this.coRowSelect=o(this,"coRowSelect",7),this.coSelectAll=o(this,"coSelectAll",7),this.coColumnResize=o(this,"coColumnResize",7),this.coColumnPin=o(this,"coColumnPin",7),this.coHeaderFilter=o(this,"coHeaderFilter",7),this.coRowDblClick=o(this,"coRowDblClick",7),this.coRowClick=o(this,"coRowClick",7),this.coEmptyAction=o(this,"coEmptyAction",7),this.columns="[]",this.rows="[]",this.rowKey="_id",this.loading=!1,this.skeletonRows=10,this.emptyTitle="",this.emptyMessage="No records found",this.emptyIcon="magnifying-glass",this.emptyActionVariant="stroke",this.sortField="",this.sortOrder="",this.filteredFields="[]",this.indirectFilteredFields="[]",this.selectable=!1,this.selectedKeys="[]",this.resizable=!0,this.parsedColumns=[],this.parsedRows=[],this.parsedSelectedKeys=new Set,this.parsedFilteredFields=[],this.parsedIndirectFields=[],this.columnWidths=new Map,this.resizingColumn=null,this.resizeStartX=0,this.resizeStartWidth=0,this.resizeEdgeExtra=0,this.resizeLastClientX=0,this.resizeAutoScrollRaf=0,this.resizePendingScroll=0,this.suppressNextSort=!1}parseColumns(){try{const t="string"==typeof this.columns?JSON.parse(this.columns):this.columns;this.parsedColumns=t,t.forEach((t=>{t.width&&!this.columnWidths.has(t.field)&&this.columnWidths.set(t.field,t.width)}))}catch(t){this.parsedColumns=[]}}parseRows(){try{this.parsedRows="string"==typeof this.rows?JSON.parse(this.rows):this.rows}catch(t){this.parsedRows=[]}}parseSelectedKeys(){try{const t="string"==typeof this.selectedKeys?JSON.parse(this.selectedKeys):this.selectedKeys;this.parsedSelectedKeys=new Set(t)}catch(t){this.parsedSelectedKeys=new Set}}parseFilteredFields(){try{this.parsedFilteredFields="string"==typeof this.filteredFields?JSON.parse(this.filteredFields):this.filteredFields||[]}catch(t){this.parsedFilteredFields=[]}}parseIndirectFields(){try{this.parsedIndirectFields="string"==typeof this.indirectFilteredFields?JSON.parse(this.indirectFilteredFields):this.indirectFilteredFields||[]}catch(t){this.parsedIndirectFields=[]}}componentWillLoad(){this.parseColumns(),this.parseRows(),this.parseSelectedKeys(),this.parseFilteredFields(),this.parseIndirectFields()}componentDidRender(){if(this.resizePendingScroll){const t=this.el.querySelector(".co-data-table__scroll");t&&(t.scrollLeft+=this.resizePendingScroll),this.resizePendingScroll=0}}handleSort(t){if(this.suppressNextSort)return void(this.suppressNextSort=!1);let e;e=this.sortField===t?"asc"===this.sortOrder?"desc":"desc"===this.sortOrder?"":"asc":"asc",this.sortField=""===e?"":t,this.sortOrder=e,this.coSort.emit({field:t,order:e})}isAllSelected(){return 0!==this.parsedRows.length&&this.parsedRows.every((t=>this.parsedSelectedKeys.has(t[this.rowKey]+"")))}isSomeSelected(){if(0===this.parsedRows.length)return!1;const t=this.parsedRows.filter((t=>this.parsedSelectedKeys.has(t[this.rowKey]+""))).length;return t>0&&t<this.parsedRows.length}handleSelectAll(){const t=!this.isAllSelected()&&!this.isSomeSelected();this.coSelectAll.emit({selected:!this.isAllSelected()||t})}handleRowSelect(t){const e=t[this.rowKey]+"",a=!this.parsedSelectedKeys.has(e);this.coRowSelect.emit({key:e,selected:a})}handleResizeStart(t,e){e.preventDefault(),e.stopPropagation(),this.resizingColumn=t,this.resizeStartX=e.clientX,this.resizeStartWidth=this.columnWidths.get(t)||150,this.resizeEdgeExtra=0,this.resizeLastClientX=e.clientX;const a=this.el.querySelector(".co-data-table__scroll"),o=()=>{var t;return(null===(t=this.parsedColumns.find((t=>t.field===this.resizingColumn)))||void 0===t?void 0:t.minWidth)||80},i=()=>{const t=this.resizingColumn;if(!t)return 0;const e=function({startWidth:t,minWidth:e,pointerDelta:a,autoScrollExtra:o}){return Math.max(e,t+a+o)}({startWidth:this.resizeStartWidth,minWidth:o(),pointerDelta:this.resizeLastClientX-this.resizeStartX,autoScrollExtra:this.resizeEdgeExtra});return this.columnWidths=new Map(this.columnWidths.set(t,e)),e},s=()=>{this.resizeAutoScrollRaf=0;const t=this.resizingColumn;if(!t||!a)return;const e=a.getBoundingClientRect(),c=function({pointerX:t,containerLeft:e,containerRight:a,edgeZone:o=72,maxSpeed:i=24}){const s=a-e;if(s<=0)return 0;const c=Math.min(o,s/3),r=a-c;if(t>r)return Math.min(i,(t-r)/c*i);const n=e+c;return t<n?-Math.min(i,(n-t)/c*i):0}({pointerX:this.resizeLastClientX,containerLeft:e.left,containerRight:e.right});c&&(c<0&&(this.columnWidths.get(t)||this.resizeStartWidth)<=o()||(this.resizeEdgeExtra+=c,this.resizePendingScroll+=c,i(),this.resizeAutoScrollRaf=requestAnimationFrame(s)))},c=t=>{this.resizingColumn&&(this.resizeLastClientX=t.clientX,i(),this.resizeAutoScrollRaf||(this.resizeAutoScrollRaf=requestAnimationFrame(s)))},r=()=>{if(this.resizeAutoScrollRaf&&(cancelAnimationFrame(this.resizeAutoScrollRaf),this.resizeAutoScrollRaf=0),this.resizingColumn){const t=this.columnWidths.get(this.resizingColumn)||150;this.coColumnResize.emit({field:this.resizingColumn,width:t}),this.suppressNextSort=!0}this.resizingColumn=null,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",r)};document.addEventListener("mousemove",c),document.addEventListener("mouseup",r)}handleRowClick(t,e){this.coRowClick.emit({row:t,index:e})}handleRowDblClick(t,e){this.coRowDblClick.emit({row:t,index:e})}handleColumnPin(t,e){e.stopPropagation(),this.coColumnPin.emit({field:t})}handleColumnFilter(t,e){e.stopPropagation();const a=e.currentTarget.getBoundingClientRect();this.coHeaderFilter.emit({field:t,rect:{top:a.top,left:a.left,bottom:a.bottom,right:a.right,width:a.width,height:a.height}})}formatCellValue(t){if(null==t)return"";if("boolean"==typeof t)return t?"Yes":"No";if("string"==typeof t){if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}/.test(t))try{const e=new Date(t);if(!isNaN(e.getTime()))return e.toLocaleDateString("es",{year:"numeric",month:"short",day:"numeric"})+" "+e.toLocaleTimeString("es",{hour:"2-digit",minute:"2-digit"})}catch(t){}return t}return"number"==typeof t?t+"":Array.isArray(t)?t.map((t=>this.formatCellValue(t))).join(", "):"object"==typeof t?t.firstName||t.lastName?[t.firstName,t.lastName].filter(Boolean).join(" "):t.name?t.name+"":t.title?t.title+"":t.label?t.label+"":t.stageName?t.stageName+"":t.companyName?t.companyName+"":t.dealName?t.dealName+"":t._id&&Object.keys(t).length<=3?t._id+"":JSON.stringify(t):t+""}getColumnStyle(t){return Object.assign({},t.sticky?{left:this.selectable?"48px":"0px"}:{})}getColumnWidth(t){return this.columnWidths.get(t.field)||t.width||t.minWidth||150}getTableWidth(){let t=this.selectable?48:0;for(const e of this.parsedColumns)t+=this.getColumnWidth(e);return t}renderColgroup(){return i("colgroup",null,this.selectable&&i("col",{style:{width:"48px"}}),this.parsedColumns.map((t=>i("col",{style:{width:this.getColumnWidth(t)+"px",minWidth:(t.minWidth||80)+"px"}}))))}renderSortIcon(t){if(!t.sortable)return null;const e=this.sortField===t.field&&""!==this.sortOrder;return i("span",{class:{"co-data-table__sort-icon":!0,"co-data-table__sort-icon--active":e}},i("co-icon",{name:e?"asc"===this.sortOrder?"caret-up":"caret-down":"caret-up-down",size:16,weight:e?"fill":"regular"}))}renderHeader(){return i("thead",{class:"co-data-table__head"},i("tr",{class:"co-data-table__header-row"},this.selectable&&i("th",{class:"co-data-table__th co-data-table__th--checkbox co-data-table__th--sticky",style:{left:"0px"}},i("co-checkbox",{size:"small",checked:this.isAllSelected(),indeterminate:this.isSomeSelected(),onCoChange:()=>this.handleSelectAll()})),this.parsedColumns.map(((t,e)=>i("th",{class:{"co-data-table__th":!0,"co-data-table__th--sticky":!!t.sticky,"co-data-table__th--sortable":!!t.sortable,"co-data-table__th--sorted":this.sortField===t.field,["co-data-table__th--align-"+(t.align||"left")]:!0},style:this.getColumnStyle(t),"aria-sort":t.sortable&&this.sortField===t.field&&""!==this.sortOrder?"asc"===this.sortOrder?"ascending":"descending":void 0},i("span",{class:"co-data-table__th-content"},i("span",{class:{"co-data-table__pin-icon":!0,"co-data-table__pin-icon--active":!!t.sticky},title:t.sticky?"Unpin column":"Pin column",onClick:e=>this.handleColumnPin(t.field,e)},i("co-icon",{name:"push-pin",size:14,weight:t.sticky?"fill":"regular"})),t.sortable?i("button",{type:"button",class:"co-data-table__sort-button","aria-label":"Sort by "+t.label,onClick:()=>this.handleSort(t.field)},i("span",{class:"co-data-table__th-label"},t.label),this.renderSortIcon(t)):i("span",{class:"co-data-table__th-label"},t.label),t.filterable&&i("span",{class:{"co-data-table__filter-icon":!0,"co-data-table__filter-icon--active":this.parsedFilteredFields.includes(t.field),"co-data-table__filter-icon--indirect":!this.parsedFilteredFields.includes(t.field)&&this.parsedIndirectFields.includes(t.field)},title:this.parsedFilteredFields.includes(t.field)?"Edit column filter":this.parsedIndirectFields.includes(t.field)?"Filtered by other filters":"Filter column",onClick:e=>this.handleColumnFilter(t.field,e)},i("co-icon",{name:"funnel",size:14,weight:this.parsedFilteredFields.includes(t.field)?"fill":"regular"}))),this.resizable&&e<this.parsedColumns.length-1&&i("span",{class:{"co-data-table__resize-handle":!0,"co-data-table__resize-handle--active":this.resizingColumn===t.field},onMouseDown:e=>this.handleResizeStart(t.field,e),onClick:t=>t.stopPropagation()}))))))}renderSkeletonBody(){return i("tbody",{class:"co-data-table__body co-data-table__body--skeleton","aria-hidden":"true"},Array.from({length:this.skeletonRows}).map(((t,e)=>i("tr",{class:"co-data-table__row co-data-table__row--skeleton",key:"skeleton-"+e},this.selectable&&i("td",{class:"co-data-table__td co-data-table__td--checkbox co-data-table__td--sticky",style:{left:"0px"}},i("div",{class:"co-data-table__skeleton co-data-table__skeleton--checkbox"})),this.parsedColumns.map((t=>i("td",{class:{"co-data-table__td":!0,"co-data-table__td--sticky":!!t.sticky},style:Object.assign({},this.getColumnStyle(t))},i("div",{class:"co-data-table__skeleton"}))))))))}renderEmpty(){return this.loading||this.parsedRows.length>0?null:i("div",{class:"co-data-table__empty",part:"empty"},i("div",{class:"co-data-table__empty-icon"},i("co-icon",{name:this.emptyIcon,size:32,weight:"regular"})),this.emptyTitle&&i("h3",{class:"co-data-table__empty-title"},this.emptyTitle),this.emptyMessage&&i("p",{class:"co-data-table__empty-message"},this.emptyMessage),i("div",{class:"co-data-table__empty-action"},this.emptyActionLabel?i("co-button",{variant:this.emptyActionVariant,size:"m",label:this.emptyActionLabel,iconLeft:this.emptyActionIcon,onClick:()=>this.coEmptyAction.emit()}):i("slot",{name:"empty-action"})))}render(){return i("div",{key:"6ba1f3bb555252c55246c8af73b8ce08610e93b0",class:{"co-data-table":!0,"co-data-table--resizing":null!==this.resizingColumn,"co-data-table--loading":this.loading,"co-data-table--empty":!this.loading&&0===this.parsedRows.length}},i("div",{key:"69bc61a98f48ac06006d9b5ab132abf15bbeeb64",class:"co-data-table__scroll"},i("table",{key:"bc7627b050900ca6c8887981e47368bfb7f181ea",class:"co-data-table__table",style:{width:this.getTableWidth()+"px",minWidth:"100%"}},this.renderColgroup(),this.renderHeader(),i("slot",{key:"fc98863e680b660844ec968af6ebc645160ee32e"}),this.loading?this.renderSkeletonBody():null)),this.renderEmpty())}get el(){return this}static get watchers(){return{columns:[{parseColumns:0}],rows:[{parseRows:0}],selectedKeys:[{parseSelectedKeys:0}],filteredFields:[{parseFilteredFields:0}],indirectFilteredFields:[{parseIndirectFields:0}]}}static get style(){return"co-data-table{display:block;flex:1;min-height:0;overflow:hidden;contain:layout}.co-data-table{position:relative;font-family:var(--co-font-family-primary);background:var(--co-color-base-blanco);display:flex;flex-direction:column;height:100%}.co-data-table--resizing{cursor:col-resize;user-select:none}.co-data-table__scroll{flex:1;overflow-x:auto;overflow-y:auto;min-height:0}.co-data-table__table{min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.co-data-table__head{position:sticky;top:0;z-index:2}.co-data-table__header-row{height:40px}.co-data-table__th{position:relative;height:40px;padding:0 var(--co-spacing-md);background:var(--co-color-base-blanco);border-bottom:1px solid color-mix(in srgb, var(--co-semantic-border-default) 75%, transparent);border-right:1px solid color-mix(in srgb, var(--co-semantic-border-default) 75%, transparent);text-align:left;vertical-align:middle;font-size:var(--co-font-size-14);font-weight:500;color:var(--co-semantic-text-default);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;white-space:nowrap;overflow:hidden;box-sizing:border-box}.co-data-table__th:last-child{border-right:none}.co-data-table__th--sortable{cursor:pointer}.co-data-table__th--sortable:hover{background-image:linear-gradient(var(--co-semantic-surface-hover), var(--co-semantic-surface-hover))}.co-data-table__th-content{display:flex;align-items:center;justify-content:space-between;gap:var(--co-spacing-sm)}.co-data-table__pin-icon{display:flex;align-items:center;flex-shrink:0;color:var(--co-color-gray-300);cursor:pointer;opacity:0;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-data-table__pin-icon--active{opacity:1;color:var(--co-semantic-text-default)}.co-data-table__th:hover .co-data-table__pin-icon{opacity:1}.co-data-table__pin-icon:hover{color:var(--co-semantic-text-default)}.co-data-table__filter-icon{display:flex;align-items:center;flex-shrink:0;color:var(--co-color-gray-300);cursor:pointer;opacity:0;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-data-table__th:hover .co-data-table__filter-icon{opacity:1}.co-data-table__filter-icon:hover{color:var(--co-semantic-text-default)}.co-data-table__filter-icon--active{opacity:1;color:var(--co-color-primary-azul)}.co-data-table__filter-icon--indirect{opacity:0.45;color:var(--co-semantic-text-muted)}.co-data-table__th-label{flex:1;overflow:hidden;text-overflow:ellipsis}.co-data-table__sort-icon{display:flex;align-items:center;flex-shrink:0;color:var(--co-color-gray-400);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-data-table__sort-icon--active{color:var(--co-semantic-text-default)}.co-data-table__sort-button{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--co-spacing-sm);background:transparent;border:0;padding:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.co-data-table__sort-button:focus-visible{outline:2px solid var(--co-semantic-border-focus, var(--co-color-primary-azul));outline-offset:-2px;border-radius:var(--co-border-radius-xxs)}.co-data-table__th--checkbox,.co-data-table__td--checkbox{width:48px;min-width:48px;max-width:48px;padding:0 var(--co-spacing-md);text-align:center;line-height:0;}.co-data-table__th--sticky,.co-data-table__td--sticky{position:sticky;z-index:1;background:var(--co-color-base-blanco)}.co-data-table__th--sticky{z-index:3}.co-data-table__th.co-data-table__th--sticky,.co-data-table__td.co-data-table__td--sticky{overflow:visible}.co-data-table__td--sticky::after,.co-data-table__th--sticky::after{content:'';position:absolute;top:0;right:-4px;bottom:0;width:4px;pointer-events:none;opacity:0;background:linear-gradient(to right, var(--co-color-opacity-negro-8), transparent);transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-data-table__resize-handle{position:absolute;top:0;right:-2px;width:5px;height:100%;cursor:col-resize;z-index:1}.co-data-table__resize-handle:hover{background:var(--co-color-primary-azul);opacity:0.3}.co-data-table__resize-handle--active{background:var(--co-color-primary-azul);opacity:0.3}.co-data-table__row{height:48px;transition:background-color var(--co-motion-duration-fast) var(--co-motion-ease-out);content-visibility:auto;contain-intrinsic-size:auto 48px}.co-data-table__row:hover{background:var(--co-semantic-surface-hover)}.co-data-table__row--selected{background:var(--co-color-opacity-negro-4)}.co-data-table__row--selected:hover{background:var(--co-color-opacity-negro-8)}.co-data-table__td{height:48px;padding:0 var(--co-spacing-md);background:inherit;border-bottom:1px solid color-mix(in srgb, var(--co-semantic-border-default) 75%, transparent);border-right:1px solid color-mix(in srgb, var(--co-semantic-border-default) 75%, transparent);vertical-align:middle;font-size:var(--co-font-size-12);font-weight:var(--co-font-weight-medium);color:var(--co-semantic-text-default);letter-spacing:var(--co-font-letter-spacing-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.co-data-table__td:last-child{border-right:none}.co-data-table__th--align-center,.co-data-table__td--align-center{text-align:center}.co-data-table__th--align-right,.co-data-table__td--align-right{text-align:right}.co-data-table__cell-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.co-data-table--empty .co-data-table__scroll{flex:0 0 auto;overflow:hidden}.co-data-table__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;flex:1;min-height:280px;padding:var(--co-spacing-3xl) var(--co-spacing-lg);gap:var(--co-spacing-lg) }.co-data-table__empty-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--co-border-radius-full);background:var(--co-semantic-surface-muted);color:var(--co-semantic-text-secondary);margin-bottom:var(--co-spacing-sm)}.co-data-table__empty-title{font-size:var(--co-font-size-24);font-weight:var(--co-font-weight-medium, 500);line-height:1.25;color:var(--co-semantic-text-default);letter-spacing:-0.03em}.co-data-table__empty-message{font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-secondary);margin:0;max-width:538px ;line-height:1.25}.co-data-table__empty-action{margin-top:var(--co-spacing-md);display:inline-flex}.co-data-table__empty-action:empty{display:none}.co-data-table__skeleton{height:14px;border-radius:var(--co-border-radius-xxs);background:linear-gradient( 90deg, var(--co-semantic-surface-secondary) 0%, var(--co-semantic-surface-hover, rgba(0, 0, 0, 0.04)) 50%, var(--co-semantic-surface-secondary) 100% );background-size:200% 100%;animation:co-dt-shimmer 1.2s ease-in-out infinite;width:70%}.co-data-table__skeleton--checkbox{width:16px;height:16px;margin:0 auto}@keyframes co-dt-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.co-data-table__skeleton{animation:none}}.co-data-table__row--skeleton{pointer-events:none;content-visibility:visible}.co-data-table__row--flash-create{animation:co-dt-flash-create 1s ease-out}.co-data-table__row--flash-update{animation:co-dt-flash-update 1s ease-out}.co-data-table__row--flash-delete{animation:co-dt-flash-delete 0.5s ease-out forwards}@keyframes co-dt-flash-create{0%{background-color:rgba(2, 162, 112, 0.15)}100%{background-color:transparent}}@keyframes co-dt-flash-update{0%{background-color:rgba(37, 99, 235, 0.15)}100%{background-color:transparent}}@keyframes co-dt-flash-delete{0%{opacity:1;background-color:rgba(170, 46, 27, 0.1)}100%{opacity:0;height:0;padding:0;overflow:hidden}}"}},[260,"co-data-table",{columns:[1],rows:[1],rowKey:[1,"row-key"],loading:[4],skeletonRows:[2,"skeleton-rows"],emptyTitle:[1,"empty-title"],emptyMessage:[1,"empty-message"],emptyIcon:[1,"empty-icon"],emptyActionLabel:[1,"empty-action-label"],emptyActionVariant:[1,"empty-action-variant"],emptyActionIcon:[1,"empty-action-icon"],sortField:[1537,"sort-field"],sortOrder:[1537,"sort-order"],filteredFields:[513,"filtered-fields"],indirectFilteredFields:[513,"indirect-filtered-fields"],selectable:[4],selectedKeys:[1025,"selected-keys"],resizable:[4],parsedColumns:[32],parsedRows:[32],parsedSelectedKeys:[32],parsedFilteredFields:[32],parsedIndirectFields:[32],columnWidths:[32],resizingColumn:[32],resizeStartX:[32],resizeStartWidth:[32]},void 0,{columns:[{parseColumns:0}],rows:[{parseRows:0}],selectedKeys:[{parseSelectedKeys:0}],filteredFields:[{parseFilteredFields:0}],indirectFilteredFields:[{parseIndirectFields:0}]}]);function l(){"undefined"!=typeof customElements&&["co-data-table","co-button","co-checkbox","co-icon"].forEach((e=>{switch(e){case"co-data-table":customElements.get(t(e))||customElements.define(t(e),n);break;case"co-button":customElements.get(t(e))||s();break;case"co-checkbox":customElements.get(t(e))||c();break;case"co-icon":customElements.get(t(e))||r()}}))}l();const d=n,h=l;export{d as CoDataTable,h as defineCustomElement}
@@ -1 +1 @@
1
- import{C as o,d as s}from"./p-B0Dc-I_C.js";const p=o,r=s;export{p as CoDateField,r as defineCustomElement}
1
+ import{C as o,d as s}from"./p-NNxjElcX.js";const p=o,r=s;export{p as CoDateField,r as defineCustomElement}