@prolibu-suite/cobalt-core 0.9.0 → 0.9.2

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 (495) hide show
  1. package/custom-elements.json +589 -27
  2. package/dist/cjs/co-accordion.cjs.entry.js +2 -2
  3. package/dist/cjs/co-action-bar.cjs.entry.js +2 -2
  4. package/dist/cjs/co-app-shell.cjs.entry.js +2 -2
  5. package/dist/cjs/co-audio-player.cjs.entry.js +3 -3
  6. package/dist/cjs/co-autocomplete.cjs.entry.js +1 -1
  7. package/dist/cjs/co-avatar_2.cjs.entry.js +2 -2
  8. package/dist/cjs/co-badge.cjs.entry.js +1 -1
  9. package/dist/cjs/co-bottom-sheet.cjs.entry.js +10 -11
  10. package/dist/cjs/co-breadcrumb-item.cjs.entry.js +2 -2
  11. package/dist/cjs/co-breadcrumb.cjs.entry.js +1 -1
  12. package/dist/cjs/co-button-group.cjs.entry.js +2 -2
  13. package/dist/cjs/co-button.cjs.entry.js +2 -2
  14. package/dist/cjs/co-calendar-month_2.cjs.entry.js +3 -3
  15. package/dist/cjs/co-calendar_3.cjs.entry.js +42 -7
  16. package/dist/cjs/co-card.cjs.entry.js +2 -2
  17. package/dist/cjs/co-carousel-item.cjs.entry.js +1 -1
  18. package/dist/cjs/co-carousel.cjs.entry.js +2 -2
  19. package/dist/cjs/co-checkbox.cjs.entry.js +3 -3
  20. package/dist/cjs/co-chip_2.cjs.entry.js +11 -11
  21. package/dist/cjs/co-color-picker.cjs.entry.js +2 -2
  22. package/dist/cjs/co-column-picker.cjs.entry.js +2 -2
  23. package/dist/cjs/co-combobox.cjs.entry.js +1 -1
  24. package/dist/cjs/co-data-table-pagination.cjs.entry.js +4 -4
  25. package/dist/cjs/co-data-table.cjs.entry.js +127 -8
  26. package/dist/cjs/co-date-range.cjs.entry.js +1 -1
  27. package/dist/cjs/co-date-time-picker.cjs.entry.js +2 -2
  28. package/dist/cjs/co-drive-card.cjs.entry.js +1 -1
  29. package/dist/cjs/co-drop-zone.cjs.entry.js +1 -1
  30. package/dist/cjs/co-emoji-picker.cjs.entry.js +2808 -0
  31. package/dist/cjs/co-empty-state.cjs.entry.js +2 -2
  32. package/dist/cjs/co-event-calendar.cjs.entry.js +2 -2
  33. package/dist/cjs/co-event-popover.cjs.entry.js +1 -1
  34. package/dist/cjs/co-fab.cjs.entry.js +3 -3
  35. package/dist/cjs/co-file-field.cjs.entry.js +5 -5
  36. package/dist/cjs/co-file-type-tile.cjs.entry.js +2 -2
  37. package/dist/cjs/co-helper-text.cjs.entry.js +2 -2
  38. package/dist/cjs/co-icon-button.cjs.entry.js +2 -2
  39. package/dist/cjs/co-icon.cjs.entry.js +2 -2
  40. package/dist/cjs/co-json-field.cjs.entry.js +3 -3
  41. package/dist/cjs/co-lightbox.cjs.entry.js +4 -4
  42. package/dist/cjs/co-list-footer.cjs.entry.js +1 -1
  43. package/dist/cjs/co-list-item.cjs.entry.js +4 -4
  44. package/dist/cjs/co-media-thumb.cjs.entry.js +2 -2
  45. package/dist/cjs/co-menu-divider.cjs.entry.js +1 -1
  46. package/dist/cjs/co-menu.cjs.entry.js +1 -1
  47. package/dist/cjs/co-modal.cjs.entry.js +9 -3
  48. package/dist/cjs/co-navbar.cjs.entry.js +2 -2
  49. package/dist/cjs/co-number-field.cjs.entry.js +2 -2
  50. package/dist/cjs/co-overlay.cjs.entry.js +1 -1
  51. package/dist/cjs/co-page-header.cjs.entry.js +1 -1
  52. package/dist/cjs/co-phone-field.cjs.entry.js +1 -1
  53. package/dist/cjs/co-popover.cjs.entry.js +49 -3
  54. package/dist/cjs/co-progress-bar.cjs.entry.js +2 -2
  55. package/dist/cjs/co-progress-circle.cjs.entry.js +2 -2
  56. package/dist/cjs/co-provider-logo_2.cjs.entry.js +1 -1
  57. package/dist/cjs/co-radio.cjs.entry.js +3 -3
  58. package/dist/cjs/co-rating.cjs.entry.js +3 -3
  59. package/dist/cjs/co-ref-field.cjs.entry.js +13 -4
  60. package/dist/cjs/co-rich-text-editor.cjs.entry.js +3 -3
  61. package/dist/cjs/co-row.cjs.entry.js +2 -2
  62. package/dist/cjs/co-select.cjs.entry.js +13 -4
  63. package/dist/cjs/co-separator.cjs.entry.js +1 -1
  64. package/dist/cjs/co-sidebar-nav.cjs.entry.js +2 -2
  65. package/dist/cjs/co-sidebar.cjs.entry.js +2 -2
  66. package/dist/cjs/co-slider.cjs.entry.js +2 -2
  67. package/dist/cjs/co-switch.cjs.entry.js +3 -3
  68. package/dist/cjs/co-tab-group.cjs.entry.js +2 -2
  69. package/dist/cjs/co-tab.cjs.entry.js +2 -2
  70. package/dist/cjs/co-tags-field.cjs.entry.js +5 -5
  71. package/dist/cjs/co-textarea.cjs.entry.js +4 -4
  72. package/dist/cjs/co-toast.cjs.entry.js +2 -2
  73. package/dist/cjs/co-toggle-button-group.cjs.entry.js +2 -2
  74. package/dist/cjs/co-toggle-button.cjs.entry.js +2 -2
  75. package/dist/cjs/co-transfer-list.cjs.entry.js +2 -2
  76. package/dist/cjs/co-video.cjs.entry.js +2 -2
  77. package/dist/cjs/cobalt.cjs.js +1 -1
  78. package/dist/cjs/emojiNames.es-BjpSEJ0c.js +1925 -0
  79. package/dist/cjs/emojiNames.pt-DWupaZMJ.js +1925 -0
  80. package/dist/cjs/index-DK-2Lzmf.js +16 -12
  81. package/dist/cjs/loader.cjs.js +1 -1
  82. package/dist/cjs/slotContent-Bm9RcM_Q.js +34 -0
  83. package/dist/cobalt/cobalt.esm.js +1 -1
  84. package/dist/cobalt/{p-142506d9.entry.js → p-02ac492f.entry.js} +1 -1
  85. package/dist/cobalt/p-07904986.entry.js +1 -0
  86. package/dist/cobalt/{p-24e93fcb.entry.js → p-07d570a6.entry.js} +1 -1
  87. package/dist/cobalt/p-09799193.entry.js +1 -0
  88. package/dist/cobalt/{p-e5b5ae89.entry.js → p-0ccb672b.entry.js} +1 -1
  89. package/dist/cobalt/{p-49bde154.entry.js → p-0e91e5c4.entry.js} +1 -1
  90. package/dist/cobalt/{p-724b9b54.entry.js → p-17ae943c.entry.js} +1 -1
  91. package/dist/cobalt/{p-fa5c25d6.entry.js → p-18af9e44.entry.js} +1 -1
  92. package/dist/cobalt/{p-b9ac1f25.entry.js → p-18d34b01.entry.js} +1 -1
  93. package/dist/cobalt/{p-d7b00e5f.entry.js → p-1c68bc41.entry.js} +1 -1
  94. package/dist/cobalt/{p-2a9ba4c8.entry.js → p-2114c036.entry.js} +1 -1
  95. package/dist/cobalt/{p-37541725.entry.js → p-23a103a0.entry.js} +1 -1
  96. package/dist/cobalt/{p-7255ab63.entry.js → p-23b3ff3f.entry.js} +1 -1
  97. package/dist/cobalt/{p-baeb5d55.entry.js → p-2d329ac8.entry.js} +1 -1
  98. package/dist/cobalt/{p-417ce874.entry.js → p-2d81b292.entry.js} +1 -1
  99. package/dist/cobalt/{p-b64b0a07.entry.js → p-316c62c0.entry.js} +1 -1
  100. package/dist/cobalt/{p-c3c2087e.entry.js → p-33ea4a90.entry.js} +1 -1
  101. package/dist/cobalt/{p-8a93beb0.entry.js → p-342e1da4.entry.js} +1 -1
  102. package/dist/cobalt/p-3495fda1.entry.js +1 -0
  103. package/dist/cobalt/{p-5f1b273b.entry.js → p-36197363.entry.js} +1 -1
  104. package/dist/cobalt/{p-2d0354cc.entry.js → p-3f0eed59.entry.js} +1 -1
  105. package/dist/cobalt/{p-6d532475.entry.js → p-43bd298d.entry.js} +1 -1
  106. package/dist/cobalt/{p-81866f71.entry.js → p-4a503187.entry.js} +1 -1
  107. package/dist/cobalt/{p-c7a809c7.entry.js → p-4b083da4.entry.js} +1 -1
  108. package/dist/cobalt/{p-f1284fcd.entry.js → p-4c7e3984.entry.js} +1 -1
  109. package/dist/cobalt/p-4f754c9a.entry.js +1 -0
  110. package/dist/cobalt/p-54ae807d.entry.js +1 -0
  111. package/dist/cobalt/{p-d21da71a.entry.js → p-55566b37.entry.js} +1 -1
  112. package/dist/cobalt/p-682b3313.entry.js +1 -0
  113. package/dist/cobalt/{p-a5d84c7a.entry.js → p-7457aa89.entry.js} +1 -1
  114. package/dist/cobalt/{p-8b7a4f6c.entry.js → p-77719335.entry.js} +1 -1
  115. package/dist/cobalt/{p-94a8a119.entry.js → p-7c5e846a.entry.js} +1 -1
  116. package/dist/cobalt/{p-9c2ce487.entry.js → p-7c88163e.entry.js} +1 -1
  117. package/dist/cobalt/{p-12a0ae24.entry.js → p-7cf4b4ae.entry.js} +1 -1
  118. package/dist/cobalt/{p-3ac316e0.entry.js → p-7e53e9c8.entry.js} +1 -1
  119. package/dist/cobalt/{p-e99832a9.entry.js → p-8183f56f.entry.js} +1 -1
  120. package/dist/cobalt/p-8345b25f.entry.js +1 -0
  121. package/dist/cobalt/{p-b004c3bb.entry.js → p-88a0659f.entry.js} +1 -1
  122. package/dist/cobalt/{p-87fc5aed.entry.js → p-89e38c5e.entry.js} +1 -1
  123. package/dist/cobalt/{p-a074f2ba.entry.js → p-8eb485c8.entry.js} +1 -1
  124. package/dist/cobalt/{p-c31f5c1b.entry.js → p-8f38e24d.entry.js} +1 -1
  125. package/dist/cobalt/{p-f52f61d4.entry.js → p-8f600512.entry.js} +1 -1
  126. package/dist/cobalt/{p-09fe6ece.entry.js → p-95efe661.entry.js} +1 -1
  127. package/dist/cobalt/{p-c42c505c.entry.js → p-983af614.entry.js} +1 -1
  128. package/dist/cobalt/p-B6oiFdUY.js +1 -0
  129. package/dist/cobalt/p-CBX_oabB.js +1 -0
  130. package/dist/cobalt/p-a02db338.entry.js +1 -0
  131. package/dist/cobalt/{p-19f5d480.entry.js → p-a51d8775.entry.js} +1 -1
  132. package/dist/cobalt/{p-d3c765e3.entry.js → p-a6357340.entry.js} +1 -1
  133. package/dist/cobalt/p-a6b5cadd.entry.js +1 -0
  134. package/dist/cobalt/{p-5d7c26f2.entry.js → p-a8c64cc3.entry.js} +1 -1
  135. package/dist/cobalt/{p-19706923.entry.js → p-a9096b5c.entry.js} +1 -1
  136. package/dist/cobalt/{p-b800e107.entry.js → p-a9b29cc2.entry.js} +1 -1
  137. package/dist/cobalt/p-aafb9d11.entry.js +1 -0
  138. package/dist/cobalt/{p-cc72557d.entry.js → p-ab45d9bd.entry.js} +1 -1
  139. package/dist/cobalt/{p-43b1f8fb.entry.js → p-ac466658.entry.js} +1 -1
  140. package/dist/cobalt/{p-3ecc29fa.entry.js → p-ac91259e.entry.js} +1 -1
  141. package/dist/cobalt/{p-a45e2c00.entry.js → p-b0319a2d.entry.js} +1 -1
  142. package/dist/cobalt/{p-8206c7c0.entry.js → p-b8581787.entry.js} +1 -1
  143. package/dist/cobalt/{p-debe0d79.entry.js → p-bfc2a849.entry.js} +1 -1
  144. package/dist/cobalt/{p-4e2379e4.entry.js → p-c1e7fb32.entry.js} +1 -1
  145. package/dist/cobalt/{p-21832273.entry.js → p-c5684c79.entry.js} +1 -1
  146. package/dist/cobalt/p-c6b9b9d6.entry.js +1 -0
  147. package/dist/cobalt/{p-ed2ca588.entry.js → p-ce35c898.entry.js} +1 -1
  148. package/dist/cobalt/{p-e5296961.entry.js → p-d15d3a97.entry.js} +1 -1
  149. package/dist/cobalt/p-d40a465f.entry.js +1 -0
  150. package/dist/cobalt/{p-d85a751d.entry.js → p-d4debd6f.entry.js} +1 -1
  151. package/dist/cobalt/{p-7ec85887.entry.js → p-d629fb4e.entry.js} +1 -1
  152. package/dist/cobalt/p-da18b5f4.entry.js +1 -0
  153. package/dist/cobalt/{p-360714ae.entry.js → p-dca4cd5f.entry.js} +1 -1
  154. package/dist/cobalt/{p-a530bec2.entry.js → p-dea43204.entry.js} +1 -1
  155. package/dist/cobalt/{p-f4cebc1f.entry.js → p-dfcf667d.entry.js} +1 -1
  156. package/dist/cobalt/{p-9fe9e2fe.entry.js → p-e5495539.entry.js} +1 -1
  157. package/dist/cobalt/{p-39bce45f.entry.js → p-e8878cf9.entry.js} +1 -1
  158. package/dist/cobalt/{p-39007b6c.entry.js → p-ef5e1167.entry.js} +1 -1
  159. package/dist/cobalt/{p-b1ef5107.entry.js → p-fabe5fb2.entry.js} +1 -1
  160. package/dist/cobalt/{p-76dff399.entry.js → p-fb3a095b.entry.js} +1 -1
  161. package/dist/cobalt/p-reaWaY4g.js +1 -0
  162. package/dist/collection/collection-manifest.json +1 -0
  163. package/dist/collection/components/co-accordion/co-accordion.js +2 -2
  164. package/dist/collection/components/co-action-bar/co-action-bar.js +2 -2
  165. package/dist/collection/components/co-app-shell/co-app-shell.js +2 -2
  166. package/dist/collection/components/co-audio-player/co-audio-player.js +3 -3
  167. package/dist/collection/components/co-autocomplete/co-autocomplete.css +1 -1
  168. package/dist/collection/components/co-autocomplete/co-autocomplete.js +1 -1
  169. package/dist/collection/components/co-avatar-group/co-avatar-group.js +1 -1
  170. package/dist/collection/components/co-badge/co-badge.js +1 -1
  171. package/dist/collection/components/co-bottom-sheet/co-bottom-sheet.js +10 -11
  172. package/dist/collection/components/co-breadcrumb/co-breadcrumb.js +1 -1
  173. package/dist/collection/components/co-breadcrumb-item/co-breadcrumb-item.js +2 -2
  174. package/dist/collection/components/co-button/co-button.js +2 -2
  175. package/dist/collection/components/co-button-group/co-button-group.js +2 -2
  176. package/dist/collection/components/co-calendar/co-calendar.js +1 -1
  177. package/dist/collection/components/co-calendar-month/co-calendar-month.js +1 -1
  178. package/dist/collection/components/co-calendar-timegrid/co-calendar-timegrid.js +2 -2
  179. package/dist/collection/components/co-card/co-card.js +2 -2
  180. package/dist/collection/components/co-carousel/co-carousel.js +2 -2
  181. package/dist/collection/components/co-carousel-item/co-carousel-item.js +1 -1
  182. package/dist/collection/components/co-checkbox/co-checkbox.js +3 -3
  183. package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +1 -1
  184. package/dist/collection/components/co-chip/co-chip.js +2 -2
  185. package/dist/collection/components/co-color-picker/co-color-picker.js +2 -2
  186. package/dist/collection/components/co-column-picker/co-column-picker.js +2 -2
  187. package/dist/collection/components/co-combobox/co-combobox.css +3 -1
  188. package/dist/collection/components/co-combobox/co-combobox.js +1 -1
  189. package/dist/collection/components/co-command-search/co-command-search.js +1 -1
  190. package/dist/collection/components/co-data-table/co-data-table.css +33 -0
  191. package/dist/collection/components/co-data-table/co-data-table.js +90 -8
  192. package/dist/collection/components/co-data-table-pagination/co-data-table-pagination.js +4 -4
  193. package/dist/collection/components/co-date-field/co-date-field.js +4 -4
  194. package/dist/collection/components/co-date-range/co-date-range.js +1 -1
  195. package/dist/collection/components/co-date-range-picker/co-date-range-picker.js +2 -2
  196. package/dist/collection/components/co-date-time-picker/co-date-time-picker.js +2 -2
  197. package/dist/collection/components/co-drawer/co-drawer.css +5 -2
  198. package/dist/collection/components/co-drawer/co-drawer.js +43 -1
  199. package/dist/collection/components/co-drive-card/co-drive-card.js +1 -1
  200. package/dist/collection/components/co-drop-zone/co-drop-zone.js +1 -1
  201. package/dist/collection/components/co-emoji-picker/co-emoji-picker.css +290 -0
  202. package/dist/collection/components/co-emoji-picker/co-emoji-picker.js +682 -0
  203. package/dist/collection/components/co-emoji-picker/emojiData.js +1953 -0
  204. package/dist/collection/components/co-emoji-picker/emojiNames.es.js +1922 -0
  205. package/dist/collection/components/co-emoji-picker/emojiNames.pt.js +1922 -0
  206. package/dist/collection/components/co-emoji-picker/emojiPickerLogic.js +375 -0
  207. package/dist/collection/components/co-empty-state/co-empty-state.js +2 -2
  208. package/dist/collection/components/co-event-calendar/co-event-calendar.js +2 -2
  209. package/dist/collection/components/co-event-popover/co-event-popover.js +1 -1
  210. package/dist/collection/components/co-fab/co-fab.css +8 -5
  211. package/dist/collection/components/co-fab/co-fab.js +2 -2
  212. package/dist/collection/components/co-file-field/co-file-field.js +5 -5
  213. package/dist/collection/components/co-file-type-tile/co-file-type-tile.js +2 -2
  214. package/dist/collection/components/co-helper-text/co-helper-text.js +2 -2
  215. package/dist/collection/components/co-icon/co-icon.js +2 -2
  216. package/dist/collection/components/co-icon-button/co-icon-button.css +25 -0
  217. package/dist/collection/components/co-icon-button/co-icon-button.js +1 -1
  218. package/dist/collection/components/co-json-field/co-json-field.js +3 -3
  219. package/dist/collection/components/co-lightbox/co-lightbox.js +4 -4
  220. package/dist/collection/components/co-list-footer/co-list-footer.js +1 -1
  221. package/dist/collection/components/co-list-item/co-list-item.js +4 -4
  222. package/dist/collection/components/co-media-thumb/co-media-thumb.js +2 -2
  223. package/dist/collection/components/co-menu/co-menu.js +1 -1
  224. package/dist/collection/components/co-menu-divider/co-menu-divider.js +1 -1
  225. package/dist/collection/components/co-modal/co-modal.css +3 -1
  226. package/dist/collection/components/co-modal/co-modal.js +13 -2
  227. package/dist/collection/components/co-navbar/co-navbar.js +2 -2
  228. package/dist/collection/components/co-number-field/co-number-field.js +2 -2
  229. package/dist/collection/components/co-option-list/co-option-list.css +11 -9
  230. package/dist/collection/components/co-option-list/co-option-list.js +8 -8
  231. package/dist/collection/components/co-overlay/co-overlay.js +1 -1
  232. package/dist/collection/components/co-page-header/co-page-header.js +1 -1
  233. package/dist/collection/components/co-phone-field/co-phone-field.js +1 -1
  234. package/dist/collection/components/co-popover/co-popover.js +27 -5
  235. package/dist/collection/components/co-progress-bar/co-progress-bar.js +2 -2
  236. package/dist/collection/components/co-progress-circle/co-progress-circle.js +2 -2
  237. package/dist/collection/components/co-radio/co-radio.js +3 -3
  238. package/dist/collection/components/co-radio-group/co-radio-group.js +1 -1
  239. package/dist/collection/components/co-rating/co-rating.js +3 -3
  240. package/dist/collection/components/co-ref-field/co-ref-field.css +15 -0
  241. package/dist/collection/components/co-ref-field/co-ref-field.js +72 -4
  242. package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.js +3 -3
  243. package/dist/collection/components/co-row/co-row.js +2 -2
  244. package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +1 -1
  245. package/dist/collection/components/co-select/co-select.js +68 -5
  246. package/dist/collection/components/co-separator/co-separator.js +1 -1
  247. package/dist/collection/components/co-sidebar/co-sidebar.js +2 -2
  248. package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +3 -3
  249. package/dist/collection/components/co-skeleton/co-skeleton.js +1 -1
  250. package/dist/collection/components/co-slider/co-slider.js +2 -2
  251. package/dist/collection/components/co-switch/co-switch.js +3 -3
  252. package/dist/collection/components/co-tab/co-tab.js +2 -2
  253. package/dist/collection/components/co-tab-group/co-tab-group.js +2 -2
  254. package/dist/collection/components/co-tags-field/co-tags-field.js +5 -5
  255. package/dist/collection/components/co-textarea/co-textarea.js +4 -4
  256. package/dist/collection/components/co-toast/co-toast.js +4 -4
  257. package/dist/collection/components/co-toggle-button/co-toggle-button.js +2 -2
  258. package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.js +2 -2
  259. package/dist/collection/components/co-tooltip/co-tooltip.js +2 -2
  260. package/dist/collection/components/co-transfer-list/co-transfer-list.js +3 -3
  261. package/dist/collection/components/co-video/co-video.js +2 -2
  262. package/dist/collection/utils/columnResize.js +37 -0
  263. package/dist/collection/utils/emojiI18n.js +92 -0
  264. package/dist/collection/utils/popover-stack.js +28 -0
  265. package/dist/collection/utils/slotContent.js +30 -0
  266. package/dist/components/co-accordion.js +1 -1
  267. package/dist/components/co-action-bar.js +1 -1
  268. package/dist/components/co-app-shell.js +1 -1
  269. package/dist/components/co-audio-player.js +1 -1
  270. package/dist/components/co-autocomplete.js +1 -1
  271. package/dist/components/co-avatar-group.js +1 -1
  272. package/dist/components/co-avatar.js +1 -1
  273. package/dist/components/co-badge.js +1 -1
  274. package/dist/components/co-bottom-sheet.js +1 -1
  275. package/dist/components/co-breadcrumb-item.js +1 -1
  276. package/dist/components/co-breadcrumb.js +1 -1
  277. package/dist/components/co-button-group.js +1 -1
  278. package/dist/components/co-button.js +1 -1
  279. package/dist/components/co-calendar-month.js +1 -1
  280. package/dist/components/co-calendar-timegrid.js +1 -1
  281. package/dist/components/co-calendar.js +1 -1
  282. package/dist/components/co-card.js +1 -1
  283. package/dist/components/co-carousel-item.js +1 -1
  284. package/dist/components/co-carousel.js +1 -1
  285. package/dist/components/co-checkbox-group.js +1 -1
  286. package/dist/components/co-checkbox.js +1 -1
  287. package/dist/components/co-chip.js +1 -1
  288. package/dist/components/co-color-picker.js +1 -1
  289. package/dist/components/co-column-picker.js +1 -1
  290. package/dist/components/co-combobox.js +1 -1
  291. package/dist/components/co-command-search.js +1 -1
  292. package/dist/components/co-data-table-pagination.js +1 -1
  293. package/dist/components/co-data-table.js +1 -1
  294. package/dist/components/co-date-field.js +1 -1
  295. package/dist/components/co-date-picker.js +1 -1
  296. package/dist/components/co-date-range-picker.js +1 -1
  297. package/dist/components/co-date-range.js +1 -1
  298. package/dist/components/co-date-time-picker.js +1 -1
  299. package/dist/components/co-drawer.js +1 -1
  300. package/dist/components/co-drive-card.js +1 -1
  301. package/dist/components/co-drop-zone.js +1 -1
  302. package/dist/components/co-emoji-picker.d.ts +11 -0
  303. package/dist/components/co-emoji-picker.js +1 -0
  304. package/dist/components/co-empty-state.js +1 -1
  305. package/dist/components/co-event-calendar.js +1 -1
  306. package/dist/components/co-event-popover.js +1 -1
  307. package/dist/components/co-fab.js +1 -1
  308. package/dist/components/co-file-field.js +1 -1
  309. package/dist/components/co-file-type-tile.js +1 -1
  310. package/dist/components/co-helper-text.js +1 -1
  311. package/dist/components/co-icon-button.js +1 -1
  312. package/dist/components/co-icon.js +1 -1
  313. package/dist/components/co-input.js +1 -1
  314. package/dist/components/co-json-field.js +1 -1
  315. package/dist/components/co-lightbox.js +1 -1
  316. package/dist/components/co-list-footer.js +1 -1
  317. package/dist/components/co-list-item.js +1 -1
  318. package/dist/components/co-media-thumb.js +1 -1
  319. package/dist/components/co-menu-divider.js +1 -1
  320. package/dist/components/co-menu-item.js +1 -1
  321. package/dist/components/co-menu.js +1 -1
  322. package/dist/components/co-modal.js +1 -1
  323. package/dist/components/co-navbar.js +1 -1
  324. package/dist/components/co-number-field.js +1 -1
  325. package/dist/components/co-option-list.js +1 -1
  326. package/dist/components/co-overlay.js +1 -1
  327. package/dist/components/co-page-header.js +1 -1
  328. package/dist/components/co-phone-field.js +1 -1
  329. package/dist/components/co-popover.js +1 -1
  330. package/dist/components/co-progress-bar.js +1 -1
  331. package/dist/components/co-progress-circle.js +1 -1
  332. package/dist/components/co-radio-group.js +1 -1
  333. package/dist/components/co-radio.js +1 -1
  334. package/dist/components/co-rating.js +1 -1
  335. package/dist/components/co-ref-field.js +1 -1
  336. package/dist/components/co-rich-text-editor.js +1 -1
  337. package/dist/components/co-rich-text-toolbar.js +1 -1
  338. package/dist/components/co-row.js +1 -1
  339. package/dist/components/co-select.js +1 -1
  340. package/dist/components/co-separator.js +1 -1
  341. package/dist/components/co-sidebar-nav.js +1 -1
  342. package/dist/components/co-sidebar.js +1 -1
  343. package/dist/components/co-skeleton.js +1 -1
  344. package/dist/components/co-slider.js +1 -1
  345. package/dist/components/co-switch.js +1 -1
  346. package/dist/components/co-tab-group.js +1 -1
  347. package/dist/components/co-tab.js +1 -1
  348. package/dist/components/co-tags-field.js +1 -1
  349. package/dist/components/co-textarea.js +1 -1
  350. package/dist/components/co-toast.js +1 -1
  351. package/dist/components/co-toggle-button-group.js +1 -1
  352. package/dist/components/co-toggle-button.js +1 -1
  353. package/dist/components/co-tooltip.js +1 -1
  354. package/dist/components/co-transfer-list.js +1 -1
  355. package/dist/components/co-video.js +1 -1
  356. package/dist/components/p-AvSaw4Ua.js +1 -0
  357. package/dist/components/p-B3TkpLNh.js +1 -0
  358. package/dist/components/p-B6oiFdUY.js +1 -0
  359. package/dist/components/{p-CmxZEGYq.js → p-B7hvddnu.js} +1 -1
  360. package/dist/components/{p-Ce0ZJcks.js → p-BGD3oQ73.js} +1 -1
  361. package/dist/components/{p-CJNo2JDc.js → p-BT5tSgZa.js} +1 -1
  362. package/dist/components/{p-CYv2ig6I.js → p-BsQQ7Mki.js} +1 -1
  363. package/dist/components/p-CBX_oabB.js +1 -0
  364. package/dist/components/{p-Cv5yuGLz.js → p-CXLX8DpD.js} +1 -1
  365. package/dist/components/{p-DFT1qsVu.js → p-CklsvHeL.js} +1 -1
  366. package/dist/components/{p-CKKBJaNB.js → p-CyMaOb1j.js} +1 -1
  367. package/dist/components/{p-xvWmYN3W.js → p-D5QJpmqf.js} +1 -1
  368. package/dist/components/{p-BlvsTlsS.js → p-D6OUW6oW.js} +1 -1
  369. package/dist/components/p-DP0bbhfN.js +1 -0
  370. package/dist/components/{p-BUE9mBqk.js → p-DTvb412h.js} +1 -1
  371. package/dist/components/{p-Bsll5Ofy.js → p-DkmKOF60.js} +1 -1
  372. package/dist/components/{p-re2gJwnQ.js → p-DolCkNsL.js} +1 -1
  373. package/dist/components/{p-CkQqqKRp.js → p-KWTokD0C.js} +1 -1
  374. package/dist/components/{p-BCnjq3jN.js → p-Q6caHt79.js} +1 -1
  375. package/dist/components/{p-2zy1K6zg.js → p-WWlZiln1.js} +1 -1
  376. package/dist/components/{p-DAaKsGqj.js → p-_131DL6m.js} +1 -1
  377. package/dist/components/{p-ushHimOL.js → p-gI62K3Be.js} +1 -1
  378. package/dist/components/{p-_YYd42XM.js → p-mom5kiBa.js} +1 -1
  379. package/dist/components/p-nwy6X1QT.js +1 -0
  380. package/dist/components/p-reaWaY4g.js +1 -0
  381. package/dist/esm/co-accordion.entry.js +2 -2
  382. package/dist/esm/co-action-bar.entry.js +2 -2
  383. package/dist/esm/co-app-shell.entry.js +2 -2
  384. package/dist/esm/co-audio-player.entry.js +3 -3
  385. package/dist/esm/co-autocomplete.entry.js +1 -1
  386. package/dist/esm/co-avatar_2.entry.js +2 -2
  387. package/dist/esm/co-badge.entry.js +1 -1
  388. package/dist/esm/co-bottom-sheet.entry.js +10 -11
  389. package/dist/esm/co-breadcrumb-item.entry.js +2 -2
  390. package/dist/esm/co-breadcrumb.entry.js +1 -1
  391. package/dist/esm/co-button-group.entry.js +2 -2
  392. package/dist/esm/co-button.entry.js +2 -2
  393. package/dist/esm/co-calendar-month_2.entry.js +3 -3
  394. package/dist/esm/co-calendar_3.entry.js +42 -7
  395. package/dist/esm/co-card.entry.js +2 -2
  396. package/dist/esm/co-carousel-item.entry.js +1 -1
  397. package/dist/esm/co-carousel.entry.js +2 -2
  398. package/dist/esm/co-checkbox.entry.js +3 -3
  399. package/dist/esm/co-chip_2.entry.js +11 -11
  400. package/dist/esm/co-color-picker.entry.js +2 -2
  401. package/dist/esm/co-column-picker.entry.js +2 -2
  402. package/dist/esm/co-combobox.entry.js +1 -1
  403. package/dist/esm/co-data-table-pagination.entry.js +4 -4
  404. package/dist/esm/co-data-table.entry.js +127 -8
  405. package/dist/esm/co-date-range.entry.js +1 -1
  406. package/dist/esm/co-date-time-picker.entry.js +2 -2
  407. package/dist/esm/co-drive-card.entry.js +1 -1
  408. package/dist/esm/co-drop-zone.entry.js +1 -1
  409. package/dist/esm/co-emoji-picker.entry.js +2806 -0
  410. package/dist/esm/co-empty-state.entry.js +2 -2
  411. package/dist/esm/co-event-calendar.entry.js +2 -2
  412. package/dist/esm/co-event-popover.entry.js +1 -1
  413. package/dist/esm/co-fab.entry.js +3 -3
  414. package/dist/esm/co-file-field.entry.js +5 -5
  415. package/dist/esm/co-file-type-tile.entry.js +2 -2
  416. package/dist/esm/co-helper-text.entry.js +2 -2
  417. package/dist/esm/co-icon-button.entry.js +2 -2
  418. package/dist/esm/co-icon.entry.js +2 -2
  419. package/dist/esm/co-json-field.entry.js +3 -3
  420. package/dist/esm/co-lightbox.entry.js +4 -4
  421. package/dist/esm/co-list-footer.entry.js +1 -1
  422. package/dist/esm/co-list-item.entry.js +4 -4
  423. package/dist/esm/co-media-thumb.entry.js +2 -2
  424. package/dist/esm/co-menu-divider.entry.js +1 -1
  425. package/dist/esm/co-menu.entry.js +1 -1
  426. package/dist/esm/co-modal.entry.js +9 -3
  427. package/dist/esm/co-navbar.entry.js +2 -2
  428. package/dist/esm/co-number-field.entry.js +2 -2
  429. package/dist/esm/co-overlay.entry.js +1 -1
  430. package/dist/esm/co-page-header.entry.js +1 -1
  431. package/dist/esm/co-phone-field.entry.js +1 -1
  432. package/dist/esm/co-popover.entry.js +49 -3
  433. package/dist/esm/co-progress-bar.entry.js +2 -2
  434. package/dist/esm/co-progress-circle.entry.js +2 -2
  435. package/dist/esm/co-provider-logo_2.entry.js +1 -1
  436. package/dist/esm/co-radio.entry.js +3 -3
  437. package/dist/esm/co-rating.entry.js +3 -3
  438. package/dist/esm/co-ref-field.entry.js +13 -4
  439. package/dist/esm/co-rich-text-editor.entry.js +3 -3
  440. package/dist/esm/co-row.entry.js +2 -2
  441. package/dist/esm/co-select.entry.js +13 -4
  442. package/dist/esm/co-separator.entry.js +1 -1
  443. package/dist/esm/co-sidebar-nav.entry.js +2 -2
  444. package/dist/esm/co-sidebar.entry.js +2 -2
  445. package/dist/esm/co-slider.entry.js +2 -2
  446. package/dist/esm/co-switch.entry.js +3 -3
  447. package/dist/esm/co-tab-group.entry.js +2 -2
  448. package/dist/esm/co-tab.entry.js +2 -2
  449. package/dist/esm/co-tags-field.entry.js +5 -5
  450. package/dist/esm/co-textarea.entry.js +4 -4
  451. package/dist/esm/co-toast.entry.js +2 -2
  452. package/dist/esm/co-toggle-button-group.entry.js +2 -2
  453. package/dist/esm/co-toggle-button.entry.js +2 -2
  454. package/dist/esm/co-transfer-list.entry.js +2 -2
  455. package/dist/esm/co-video.entry.js +2 -2
  456. package/dist/esm/cobalt.js +1 -1
  457. package/dist/esm/emojiNames.es-reaWaY4g.js +1923 -0
  458. package/dist/esm/emojiNames.pt-B6oiFdUY.js +1923 -0
  459. package/dist/esm/index-CrtiywTB.js +16 -12
  460. package/dist/esm/loader.js +1 -1
  461. package/dist/esm/slotContent-CBX_oabB.js +32 -0
  462. package/dist/types/components/co-bottom-sheet/co-bottom-sheet.d.ts +0 -1
  463. package/dist/types/components/co-data-table/co-data-table.d.ts +5 -0
  464. package/dist/types/components/co-drawer/co-drawer.d.ts +23 -0
  465. package/dist/types/components/co-emoji-picker/co-emoji-picker.d.ts +145 -0
  466. package/dist/types/components/co-emoji-picker/emojiData.d.ts +24 -0
  467. package/dist/types/components/co-emoji-picker/emojiNames.es.d.ts +12 -0
  468. package/dist/types/components/co-emoji-picker/emojiNames.pt.d.ts +12 -0
  469. package/dist/types/components/co-emoji-picker/emojiPickerLogic.d.ts +149 -0
  470. package/dist/types/components/co-modal/co-modal.d.ts +2 -0
  471. package/dist/types/components/co-popover/co-popover.d.ts +8 -1
  472. package/dist/types/components/co-ref-field/co-ref-field.d.ts +17 -0
  473. package/dist/types/components/co-select/co-select.d.ts +7 -0
  474. package/dist/types/components.d.ts +255 -2
  475. package/dist/types/utils/columnResize.d.ts +42 -0
  476. package/dist/types/utils/emojiI18n.d.ts +22 -0
  477. package/dist/types/utils/popover-stack.d.ts +5 -0
  478. package/dist/types/utils/slotContent.d.ts +19 -0
  479. package/package.json +4 -4
  480. package/dist/cobalt/p-212ed2ba.entry.js +0 -1
  481. package/dist/cobalt/p-2aeb1471.entry.js +0 -1
  482. package/dist/cobalt/p-30ec230e.entry.js +0 -1
  483. package/dist/cobalt/p-5ddebd10.entry.js +0 -1
  484. package/dist/cobalt/p-5f0f5d4b.entry.js +0 -1
  485. package/dist/cobalt/p-7521ec0c.entry.js +0 -1
  486. package/dist/cobalt/p-77593319.entry.js +0 -1
  487. package/dist/cobalt/p-7a2dab23.entry.js +0 -1
  488. package/dist/cobalt/p-e054cb52.entry.js +0 -1
  489. package/dist/cobalt/p-e612b43c.entry.js +0 -1
  490. package/dist/cobalt/p-e7e34852.entry.js +0 -1
  491. package/dist/cobalt/p-f1731fe9.entry.js +0 -1
  492. package/dist/components/p-Bh2__nEw.js +0 -1
  493. package/dist/components/p-BiefJDu3.js +0 -1
  494. package/dist/components/p-CL4dicvk.js +0 -1
  495. package/dist/components/p-DTJsO_Eg.js +0 -1
@@ -84,17 +84,17 @@ export class CoDataTablePagination {
84
84
  }
85
85
  render() {
86
86
  const pages = this.getVisiblePages();
87
- return (h("div", { key: 'ccf2b514ca05bb56014a2adf60cc5b4a55e8c60c', class: "co-pagination", part: "pagination" }, h("div", { key: '49649c806450bf111bb7b2e26d004ac3c0b20373', class: "co-pagination__section" }, h("span", { key: '8419a89097e4e6a89777b346de6627da9331d0f6', class: "co-pagination__label" }, this.jumpToPageLabel), h("input", { key: '315b8a1675fe6d7f3fca8fe0f1992bcbca9325a0', type: "text", class: "co-pagination__jump-input", value: this.jumpToValue || String(this.page), onInput: (e) => {
87
+ return (h("div", { key: '185e1d7a9d69e1bacd7aeb697c70e9cefae6057d', class: "co-pagination", part: "pagination" }, h("div", { key: '93dcff37dcd024519d00176b3bf52c6fc94c00ec', class: "co-pagination__section" }, h("span", { key: 'f13f0b987bd3634046b26225b867b4a3f8766eb3', class: "co-pagination__label" }, this.jumpToPageLabel), h("input", { key: 'aed4e49fe945dac3dab1b84d97119f7e5c298142', type: "text", class: "co-pagination__jump-input", value: this.jumpToValue || String(this.page), onInput: (e) => {
88
88
  this.jumpToValue = e.target.value;
89
89
  }, onKeyDown: (e) => this.handleJumpToPage(e), onFocus: (e) => {
90
90
  e.target.select();
91
- }, part: "jump-input" })), h("div", { key: 'a97c699d390734902220805bec64420deeb4fd6a', class: "co-pagination__section co-pagination__section--page-size" }, h("div", { key: 'fcd095371ce699102ce8c66787918c065481e35d', class: "co-pagination__page-size-trigger", onClick: () => { this.showPageSizeDropdown = !this.showPageSizeDropdown; } }, h("span", { key: '1ba988e2bd9c457feefa8af4cd76b0bded02fd12', class: "co-pagination__page-size-value" }, this.pageSize), h("span", { key: '51d5d3917d817c9752433a729427550a38750e56', class: "co-pagination__label" }, this.perPageLabel), h("co-icon", { key: '093883ae845b9f813337d296711c42ba130323a7', name: "caret-down", size: 14 })), this.showPageSizeDropdown && (h("div", { key: 'bbab8ec16c6abbd6f311bcbaafa1b9409f3c8a0f', class: "co-pagination__page-size-dropdown", part: "dropdown" }, this.parsedPageSizes.map(size => (h("button", { class: {
91
+ }, part: "jump-input" })), h("div", { key: '67a1d54ce40eb1cc003d5f88ea644df994d0c590', class: "co-pagination__section co-pagination__section--page-size" }, h("div", { key: '877cb7ebbf427e505f399d14e48cec4011282ab4', class: "co-pagination__page-size-trigger", onClick: () => { this.showPageSizeDropdown = !this.showPageSizeDropdown; } }, h("span", { key: 'ef55eceda68aa0d561a3066a6a9f864171350f94', class: "co-pagination__page-size-value" }, this.pageSize), h("span", { key: '1813de04f69717833fe432ec5188aaa00a379128', class: "co-pagination__label" }, this.perPageLabel), h("co-icon", { key: '20ba29bbb24dfbd03551a439ad9f7cbbbb233f8e', name: "caret-down", size: 14 })), this.showPageSizeDropdown && (h("div", { key: '99bf24b654f5171fb2bf6a0b720057179e7931f1', class: "co-pagination__page-size-dropdown", part: "dropdown" }, this.parsedPageSizes.map(size => (h("button", { class: {
92
92
  'co-pagination__page-size-option': true,
93
93
  'co-pagination__page-size-option--active': size === this.pageSize,
94
- }, onClick: () => this.changePageSize(size) }, size)))))), h("div", { key: '970ec69d86943f9a2ce03427ca046767c853761d', class: "co-pagination__spacer" }), h("div", { key: 'd3b9ac58040df59daf1cb8848237ad8ed2b05604', class: "co-pagination__section" }, h("span", { key: '6c28ef609f8f3da05791e5b8ff56d84164984def', class: "co-pagination__count" }, this.totalCount.toLocaleString(), " ", this.recordsLabel)), h("div", { key: '5a0d8770c82e23e93d3a5101111e65842af027d9', class: "co-pagination__section co-pagination__nav" }, h("button", { key: '2bea97c046df6ee0d2a7d7de80762659eb2bf9b0', class: "co-pagination__nav-btn", disabled: this.page <= 1, onClick: () => this.goToPage(this.page - 1), part: "prev-btn" }, this.previousLabel), pages.map(p => p === '...' ? (h("span", { class: "co-pagination__ellipsis" }, "\u2026")) : (h("button", { class: {
94
+ }, onClick: () => this.changePageSize(size) }, size)))))), h("div", { key: '1b0a013033bffc0ef849590f4bd2b19ba78346f3', class: "co-pagination__spacer" }), h("div", { key: '02bcc300d05ff7e2710c2bbb1373ef695e563b6e', class: "co-pagination__section" }, h("span", { key: '3942e7ef9ac9d7b295c1c81685fbeec6032df795', class: "co-pagination__count" }, this.totalCount.toLocaleString(), " ", this.recordsLabel)), h("div", { key: '6e88cd0855d6f34ce0e38d1ee89234b8cf929ad0', class: "co-pagination__section co-pagination__nav" }, h("button", { key: '81b26b3f719a1eca429a6820bf7da6d68b79398f', class: "co-pagination__nav-btn", disabled: this.page <= 1, onClick: () => this.goToPage(this.page - 1), part: "prev-btn" }, this.previousLabel), pages.map(p => p === '...' ? (h("span", { class: "co-pagination__ellipsis" }, "\u2026")) : (h("button", { class: {
95
95
  'co-pagination__page-btn': true,
96
96
  'co-pagination__page-btn--active': p === this.page,
97
- }, onClick: () => this.goToPage(p) }, p))), h("button", { key: '0e432cb2ec4ff54997a0297ddd864bfe050c01a0', class: "co-pagination__nav-btn", disabled: this.page >= this.totalPages, onClick: () => this.goToPage(this.page + 1), part: "next-btn" }, this.nextLabel))));
97
+ }, onClick: () => this.goToPage(p) }, p))), h("button", { key: '83448292b1fba7470971b46e8ab14267e8a762dc', class: "co-pagination__nav-btn", disabled: this.page >= this.totalPages, onClick: () => this.goToPage(this.page + 1), part: "next-btn" }, this.nextLabel))));
98
98
  }
99
99
  static get is() { return "co-data-table-pagination"; }
100
100
  static get encapsulation() { return "shadow"; }
@@ -162,20 +162,20 @@ export class CoDateField {
162
162
  // should still fall back to the localized default placeholder.
163
163
  const placeholder = this.placeholder || t.setDate;
164
164
  const helper = this.isInvalid ? this.errorMessage : this.helperText;
165
- return (h("div", { key: '58824a62494004dc20539095b0dc4b0abd672429', class: {
165
+ return (h("div", { key: '76448762ebc35a510daa099e2b10fffb304a09c1', class: {
166
166
  'co-date-field': true,
167
167
  'co-date-field--disabled': this.disabled,
168
168
  'co-date-field--focused': this.hasFocus,
169
169
  'co-date-field--filled': this.hasValue,
170
170
  'co-date-field--invalid': this.isInvalid,
171
171
  [`co-date-field--${this.size}`]: true,
172
- }, part: "wrapper" }, this.label && (h("div", { key: '35cbbc4dfcce22b17758b9585762bc7fe01463d1', class: "co-date-field__labels" }, h("label", { key: '172c4d990dc882b9fa6010287fdda46664473c5c', class: "co-date-field__label", part: "label" }, this.label, h(RequiredMark, { key: 'a2145c6218cf73a6ef8f248279eb3c468562d709', required: this.required })))), h("div", { key: '86b90e9a67887cbd164ec85822c2c9650cd4c6d6', class: "co-date-field__field-row" }, h("div", { key: '6ce335d82253cc3ae10d97ee76c7b7d19386fb41', class: "co-date-field__field", part: "field" }, h("co-icon", { key: '93c3e62fba825f40062d6f4113802314c51fbc04', name: "calendar", size: 16, class: "co-date-field__icon" }), h("div", { key: 'c9b227f14857a568ee2197590257313e805ef58d', class: "co-date-field__input-wrapper" }, h("input", { key: 'f756ae8a58864fb31bb707e65548e4c58c7cf217', ref: (el) => (this.inputEl = el), class: "co-date-field__native", type: "text", inputMode: "numeric", autocomplete: "off", value: this.draft, placeholder: placeholder, disabled: this.disabled, readOnly: this.readonly, required: this.required, "aria-invalid": this.isInvalid ? 'true' : 'false', "aria-label": !this.label ? t.dateLabel : undefined, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, part: "input" })), this.clearable && (h("button", { key: '2e2c361974484bb390d9d6f80b55f03857ffe568', class: {
172
+ }, part: "wrapper" }, this.label && (h("div", { key: 'e50f105a589cc7a4098281d2466b875fc70c706c', class: "co-date-field__labels" }, h("label", { key: '3dbb87b7f1a4b229afa920352f352cefa0b5be51', class: "co-date-field__label", part: "label" }, this.label, h(RequiredMark, { key: 'adad4708c70542e18e241c73dc16522ffc83a52f', required: this.required })))), h("div", { key: 'ef8bbba2b0070c21cbff8feba625ada99a75e50f', class: "co-date-field__field-row" }, h("div", { key: 'a385b086440ef6842049159424664d1f4a9a5cb5', class: "co-date-field__field", part: "field" }, h("co-icon", { key: '5ebc11e2f8a0ccaa0534682c6633228c66565396', name: "calendar", size: 16, class: "co-date-field__icon" }), h("div", { key: '8ee80f5304623f8da75f20eb93d6fe3eb927d0f1', class: "co-date-field__input-wrapper" }, h("input", { key: 'c156767ea4818750c5b00f2f965c026417ef6bd2', ref: (el) => (this.inputEl = el), class: "co-date-field__native", type: "text", inputMode: "numeric", autocomplete: "off", value: this.draft, placeholder: placeholder, disabled: this.disabled, readOnly: this.readonly, required: this.required, "aria-invalid": this.isInvalid ? 'true' : 'false', "aria-label": !this.label ? t.dateLabel : undefined, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, part: "input" })), this.clearable && (h("button", { key: '4d0b388e20ad3f862e310c951ad7a07d620f9d76', class: {
173
173
  'co-date-field__clear': true,
174
174
  'co-date-field__clear--hidden': !showClear,
175
- }, type: "button", tabIndex: -1, onMouseDown: (e) => e.preventDefault() /* keep input focus */, onClick: this.handleClear, "aria-label": (_a = this.clearLabel) !== null && _a !== void 0 ? _a : t.clearDate, part: "clear" }, h("co-icon", { key: 'c1c29a37857c1c2d6894da49bb32d243cc2cf8dd', name: "x-circle", size: 16, weight: "fill" }))))), this.name && h("input", { key: 'a0b4b27a1101a2993f488b88f072e681e4d6ef0c', type: "hidden", name: this.name, value: (_b = this.value) !== null && _b !== void 0 ? _b : '' }), helper && (h("div", { key: 'eae215d0d4c99c6105fd72c8ee6704f8a1c8444f', class: {
175
+ }, type: "button", tabIndex: -1, onMouseDown: (e) => e.preventDefault() /* keep input focus */, onClick: this.handleClear, "aria-label": (_a = this.clearLabel) !== null && _a !== void 0 ? _a : t.clearDate, part: "clear" }, h("co-icon", { key: '8eb87bc05e53b340b97bdb5f17a3bbd08e2844fc', name: "x-circle", size: 16, weight: "fill" }))))), this.name && h("input", { key: 'b182c4196a15168a1ad654f00e4c83823b0bf894', type: "hidden", name: this.name, value: (_b = this.value) !== null && _b !== void 0 ? _b : '' }), helper && (h("div", { key: 'f2cdef4f478972926e417c03aa6c23269c87fd32', class: {
176
176
  'co-date-field__helper': true,
177
177
  'co-date-field__helper--error': this.isInvalid,
178
- }, part: "helper" }, this.isInvalid && (h("co-icon", { key: 'afc623261826da8d6e94c866808b6eff58da1a44', name: "warning-circle", size: 14, class: "co-date-field__helper-icon" })), h("span", { key: '20e477abb5f1069673f2b65100aa3b6c40b85a6b', class: "co-date-field__helper-text" }, helper)))));
178
+ }, part: "helper" }, this.isInvalid && (h("co-icon", { key: 'e4a0acf05080876968835be09f4cf04b4b3ee80f', name: "warning-circle", size: 14, class: "co-date-field__helper-icon" })), h("span", { key: '2329cec15faab426f09107615e3038428b26182f', class: "co-date-field__helper-text" }, helper)))));
179
179
  }
180
180
  static get is() { return "co-date-field"; }
181
181
  static get encapsulation() { return "shadow"; }
@@ -33,7 +33,7 @@ export class CoDateRange {
33
33
  }
34
34
  }
35
35
  render() {
36
- return (h("co-date-range-picker", { key: '4c6ae7f2b043b03a896c94411ffb8dcd6b375ffc', value: this.value, label: this.label, placeholder: this.placeholder, disabled: this.disabled, clearable: this.clearable, presets: this.presets, helperText: this.helperText, locale: this.locale, applyLabel: this.applyLabel, clearLabel: this.clearLabel, onCoApply: this.handleApply, onCoClear: () => this.coClear.emit() }));
36
+ return (h("co-date-range-picker", { key: 'c72ef0bfac5b2fb196286b77c39c84cf1d72e06d', value: this.value, label: this.label, placeholder: this.placeholder, disabled: this.disabled, clearable: this.clearable, presets: this.presets, helperText: this.helperText, locale: this.locale, applyLabel: this.applyLabel, clearLabel: this.clearLabel, onCoApply: this.handleApply, onCoClear: () => this.coClear.emit() }));
37
37
  }
38
38
  static get is() { return "co-date-range"; }
39
39
  static get encapsulation() { return "shadow"; }
@@ -1039,7 +1039,7 @@ export class CoDateRangePicker {
1039
1039
  "references": {
1040
1040
  "DateRangeValue": {
1041
1041
  "location": "local",
1042
- "path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-date-range-picker/co-date-range-picker.tsx",
1042
+ "path": "/Users/agox/worktrees/cobalt-release/packages/core/src/components/co-date-range-picker/co-date-range-picker.tsx",
1043
1043
  "id": "src/components/co-date-range-picker/co-date-range-picker.tsx::DateRangeValue"
1044
1044
  }
1045
1045
  }
@@ -1060,7 +1060,7 @@ export class CoDateRangePicker {
1060
1060
  "references": {
1061
1061
  "DateRangeValue": {
1062
1062
  "location": "local",
1063
- "path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-date-range-picker/co-date-range-picker.tsx",
1063
+ "path": "/Users/agox/worktrees/cobalt-release/packages/core/src/components/co-date-range-picker/co-date-range-picker.tsx",
1064
1064
  "id": "src/components/co-date-range-picker/co-date-range-picker.tsx::DateRangeValue"
1065
1065
  }
1066
1066
  }
@@ -367,10 +367,10 @@ export class CoDateTimePicker {
367
367
  render() {
368
368
  var _a;
369
369
  const t = getDateStrings(this.locale);
370
- return (h("div", { key: '60bb94ab59fc09e96a930a5a615671e8f3eb1baf', class: "co-date-time-picker", onKeyDown: this.onRootKeyDown }, this.renderLabel(), this.isMobile ? ([
370
+ return (h("div", { key: '8ccc0e31d77dfce13ab5fdd27294d6a93944f5ae', class: "co-date-time-picker", onKeyDown: this.onRootKeyDown }, this.renderLabel(), this.isMobile ? ([
371
371
  h("div", { class: "co-date-time-picker__trigger", onClick: () => !this.disabled && !this.readonly && this.setOpen(true) }, this.renderTrigger(t)),
372
372
  h("co-drawer", { position: "bottom", open: this.open, heading: t.selectDateTime, onCoClose: () => this.setOpen(false) }, h("div", { class: "co-date-time-picker__sheet" }, this.renderPanel(t, true))),
373
- ]) : (h("co-popover", { ref: (el) => (this.popoverEl = el), open: this.open, placement: this.placement, offset: 4, closeOnEscape: false, onCoOpen: this.onPopoverOpen, onCoClose: this.onPopoverClose }, h("div", { slot: "trigger", class: "co-date-time-picker__trigger" }, this.renderTrigger(t)), this.open && this.renderPanel(t, false))), this.name && h("input", { key: '820935f800a6a1ecb036751e9267edfdad8f574d', type: "hidden", name: this.name, value: (_a = this.value) !== null && _a !== void 0 ? _a : '' }), this.renderHelper()));
373
+ ]) : (h("co-popover", { ref: (el) => (this.popoverEl = el), open: this.open, placement: this.placement, offset: 4, closeOnEscape: false, onCoOpen: this.onPopoverOpen, onCoClose: this.onPopoverClose }, h("div", { slot: "trigger", class: "co-date-time-picker__trigger" }, this.renderTrigger(t)), this.open && this.renderPanel(t, false))), this.name && h("input", { key: 'c54ad2d2ebeccc0f6f4c836d25b5de0bee6376fc', type: "hidden", name: this.name, value: (_a = this.value) !== null && _a !== void 0 ? _a : '' }), this.renderHelper()));
374
374
  }
375
375
  static get is() { return "co-date-time-picker"; }
376
376
  static get encapsulation() { return "shadow"; }
@@ -180,7 +180,9 @@
180
180
  flex-shrink: 0;
181
181
  border-bottom: 1px solid var(--co-semantic-border-default);
182
182
  }
183
- .co-drawer__tabs:empty { display: none; }
183
+ /* `:empty` can't detect slotted content (the <slot> is itself a child, so the
184
+ wrapper is never empty) — JS slotchange drives this class. */
185
+ .co-drawer__tabs--empty { display: none; }
184
186
 
185
187
  /* ─── Body ────────────────────────────────────────────────── */
186
188
  .co-drawer__body {
@@ -247,7 +249,8 @@
247
249
  border-top: 1px solid var(--co-semantic-border-default);
248
250
  flex-shrink: 0;
249
251
  }
250
- .co-drawer__footer:empty { display: none; }
252
+ /* Same as tabs: `:empty` never matches a wrapper that holds a <slot>. */
253
+ .co-drawer__footer--empty { display: none; }
251
254
 
252
255
  /* Loading overlay is rendered by <co-loader overlay> in the drawer body. */
253
256
 
@@ -1,4 +1,5 @@
1
1
  import { h } from "@stencil/core";
2
+ import { slotHasContent } from "../../utils/slotContent";
2
3
  /**
3
4
  * @slot header - Custom header content (overrides `heading` prop). Receives close button next to it.
4
5
  * @slot tabs - Optional row under the header (e.g. <co-tab-group>).
@@ -33,6 +34,19 @@ export class CoDrawer {
33
34
  this.modeless = false;
34
35
  /** Show a loading overlay over the body */
35
36
  this.loading = false;
37
+ /* `:empty` can't see across a <slot>, so slotted presence is tracked in JS */
38
+ this.hasFooter = false;
39
+ this.hasTabs = false;
40
+ this.hasHeaderSlot = false;
41
+ this.handleFooterSlotChange = (e) => {
42
+ this.hasFooter = slotHasContent(e);
43
+ };
44
+ this.handleTabsSlotChange = (e) => {
45
+ this.hasTabs = slotHasContent(e);
46
+ };
47
+ this.handleHeaderSlotChange = (e) => {
48
+ this.hasHeaderSlot = slotHasContent(e);
49
+ };
36
50
  this.handleOverlayClose = () => {
37
51
  if (this.closeOnOverlay)
38
52
  this.coClose.emit();
@@ -69,6 +83,27 @@ export class CoDrawer {
69
83
  }
70
84
  };
71
85
  }
86
+ /**
87
+ * The internal `<h2 id="co-drawer-heading">` is the FALLBACK content of the
88
+ * header slot. When a consumer fills that slot the h2 stops being RENDERED,
89
+ * but it stays in the shadow tree still carrying the `heading` prop's text —
90
+ * so the old hardcoded `aria-labelledby="co-drawer-heading"` named the dialog
91
+ * from content nobody can see, and named it with the EMPTY string in the
92
+ * common case where a consumer slots a header and sets no `heading` at all.
93
+ * Either way the visible header never became the accessible name.
94
+ *
95
+ * - Slotted header → label from the wrapper that CONTAINS the slot. Accessible
96
+ * name computation walks the flattened tree, so the consumer's own header
97
+ * text becomes the name (same shape Shoelace uses for its dialog label).
98
+ * - No slot, `heading` set → the internal h2, which is the tightest label.
99
+ * - Neither → omit, so the dialog degrades to a plain "dialog" instead of
100
+ * advertising a label that resolves to empty text.
101
+ */
102
+ get labelledBy() {
103
+ if (this.hasHeaderSlot)
104
+ return 'co-drawer-header-content';
105
+ return this.heading ? 'co-drawer-heading' : undefined;
106
+ }
72
107
  onOpenChange(next, prev) {
73
108
  if (next && !prev)
74
109
  this.coOpen.emit();
@@ -93,7 +128,7 @@ export class CoDrawer {
93
128
  'co-drawer--modeless': this.modeless,
94
129
  [`co-drawer--${this.position}`]: true,
95
130
  [`co-drawer--${this.size}`]: true,
96
- }, popover: this.modeless ? 'manual' : undefined, ref: this.modeless ? this.promoteModeless : undefined, part: "drawer", role: "dialog", "aria-modal": this.modeless ? 'false' : 'true', "aria-labelledby": "co-drawer-heading", onClick: this.stopPropagation, onTransitionEnd: this.handleTransitionEnd }, h("div", { class: "co-drawer__card", part: "card" }, h("header", { class: "co-drawer__header", part: "header" }, h("div", { class: "co-drawer__header-content" }, h("slot", { name: "header" }, h("div", { class: "co-drawer__heading-row" }, this.icon && h("co-icon", { name: this.icon, size: 20, class: "co-drawer__icon" }), h("h2", { class: "co-drawer__heading", id: "co-drawer-heading" }, this.heading)), this.description && h("p", { class: "co-drawer__description" }, this.description))), this.closable && (h("button", { class: "co-drawer__close", type: "button", "aria-label": "Close", onClick: this.handleCloseClick }, h("co-icon", { name: "x", size: 20 })))), h("div", { class: "co-drawer__tabs", part: "tabs" }, h("slot", { name: "tabs" })), h("div", { class: "co-drawer__body", part: "body" }, h("slot", null), h("co-loader", { overlay: true, visible: this.loading, part: "loader" })), h("footer", { class: "co-drawer__footer", part: "footer" }, h("slot", { name: "footer" })))));
131
+ }, popover: this.modeless ? 'manual' : undefined, ref: this.modeless ? this.promoteModeless : undefined, part: "drawer", role: "dialog", "aria-modal": this.modeless ? 'false' : 'true', "aria-labelledby": this.labelledBy, onClick: this.stopPropagation, onTransitionEnd: this.handleTransitionEnd }, h("div", { class: "co-drawer__card", part: "card" }, h("header", { class: "co-drawer__header", part: "header" }, h("div", { class: "co-drawer__header-content", id: "co-drawer-header-content" }, h("slot", { name: "header", onSlotchange: this.handleHeaderSlotChange }, h("div", { class: "co-drawer__heading-row" }, this.icon && h("co-icon", { name: this.icon, size: 20, class: "co-drawer__icon" }), h("h2", { class: "co-drawer__heading", id: "co-drawer-heading" }, this.heading)), this.description && h("p", { class: "co-drawer__description" }, this.description))), this.closable && (h("button", { class: "co-drawer__close", type: "button", "aria-label": "Close", onClick: this.handleCloseClick }, h("co-icon", { name: "x", size: 20 })))), h("div", { class: { 'co-drawer__tabs': true, 'co-drawer__tabs--empty': !this.hasTabs }, part: "tabs" }, h("slot", { name: "tabs", onSlotchange: this.handleTabsSlotChange })), h("div", { class: "co-drawer__body", part: "body" }, h("slot", null), h("co-loader", { overlay: true, visible: this.loading, part: "loader" })), h("footer", { class: { 'co-drawer__footer': true, 'co-drawer__footer--empty': !this.hasFooter }, part: "footer" }, h("slot", { name: "footer", onSlotchange: this.handleFooterSlotChange })))));
97
132
  if (this.modeless)
98
133
  return aside;
99
134
  return (h("co-overlay", { open: this.open, onCoClose: this.handleOverlayClose }, aside));
@@ -334,6 +369,13 @@ export class CoDrawer {
334
369
  }
335
370
  };
336
371
  }
372
+ static get states() {
373
+ return {
374
+ "hasFooter": {},
375
+ "hasTabs": {},
376
+ "hasHeaderSlot": {}
377
+ };
378
+ }
337
379
  static get events() {
338
380
  return [{
339
381
  "method": "coClose",
@@ -74,7 +74,7 @@ export class CoDriveCard {
74
74
  }
75
75
  render() {
76
76
  const isFile = this.variant === 'file';
77
- return (h("div", { key: '62056a659681c95fb1bdd8dc471b8543581f1662', class: {
77
+ return (h("div", { key: 'fef9abf2a536fe08fa6c65fcc4e37955c5bc5373', class: {
78
78
  'co-drive-card': true,
79
79
  [`co-drive-card--${this.variant}`]: true,
80
80
  [`co-drive-card--${this.density}`]: true,
@@ -58,7 +58,7 @@ export class CoDropZone {
58
58
  this.coDragStateChange.emit(next);
59
59
  }
60
60
  render() {
61
- return (h(Host, { key: 'a5bf9dd9d62d7d7d2ec1b0d277a267b721ea430d', class: { 'co-drop-zone': true, 'co-drop-zone--active': this.active }, part: "host", style: { '--co-drop-zone-accent': this.accent }, onDragEnter: this.handleDragEnter, onDragOver: this.handleDragOver, onDragLeave: this.handleDragLeave, onDrop: this.handleDrop }, h("slot", { key: '609343dd414c752617e50f73f36f55d4edfc773f' }), this.active && (h("div", { key: '03f38f63b2cf7d9a166d31541f1c21bb2953c80f', class: "co-drop-zone__overlay", part: "overlay" }, h("div", { key: '7b8cd9daa821d224e40507646a166190ea5f917f', class: "co-drop-zone__badge", part: "badge" }, h("co-icon", { key: 'f5f201175801233c4d32772dab7f947c8886ca34', name: this.icon, size: 34 })), h("span", { key: '766d7defd61ab35ab07b6b51c3fe177eb3afee2e', class: "co-drop-zone__label", part: "label" }, this.label)))));
61
+ return (h(Host, { key: '95256dff45bfd8c003a8c4e81aa221873b850df3', class: { 'co-drop-zone': true, 'co-drop-zone--active': this.active }, part: "host", style: { '--co-drop-zone-accent': this.accent }, onDragEnter: this.handleDragEnter, onDragOver: this.handleDragOver, onDragLeave: this.handleDragLeave, onDrop: this.handleDrop }, h("slot", { key: '4a5841592fdb7cba17a51eb49bf617f1c5c88a03' }), this.active && (h("div", { key: '80d179ef44a5c5fd6294c1252fd17c35ac1e6f28', class: "co-drop-zone__overlay", part: "overlay" }, h("div", { key: '32fcd18641cd0d766273ce2390d83460347cb358', class: "co-drop-zone__badge", part: "badge" }, h("co-icon", { key: 'c193069fd16d3935c037f6ce69606bc9342d9ad8', name: this.icon, size: 34 })), h("span", { key: 'c6827e6f837f3707778c3b6b330b29907840e46c', class: "co-drop-zone__label", part: "label" }, this.label)))));
62
62
  }
63
63
  static get is() { return "co-drop-zone"; }
64
64
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1,290 @@
1
+ :host {
2
+ display: block;
3
+ font-family: var(--co-font-family-primary);
4
+ font-size: var(--co-font-size-14);
5
+ letter-spacing: var(--co-font-letter-spacing-body);
6
+ }
7
+
8
+ /* Alto de celda/fila. DEBE coincidir con ROW_HEIGHT de emojiPickerLogic.ts:
9
+ la virtualización posiciona las filas con `row * ROW_HEIGHT`, así que si esto
10
+ se desincroniza la grilla se desalinea del scroll. */
11
+ .co-emoji-picker {
12
+ --co-emoji-picker-cell: 36px;
13
+ /* Sobrescrito inline por la prop `columns`. */
14
+ --co-emoji-picker-columns: 8;
15
+
16
+ display: flex;
17
+ flex-direction: column;
18
+ width: calc(var(--co-emoji-picker-columns) * var(--co-emoji-picker-cell) + 2 * var(--co-spacing-sm2));
19
+ box-sizing: border-box;
20
+ background: var(--co-semantic-surface-page);
21
+ color: var(--co-semantic-text-default);
22
+ }
23
+
24
+ /* ── Buscador ────────────────────────────────────────────── */
25
+ .co-emoji-picker__search {
26
+ display: flex;
27
+ align-items: center;
28
+ gap: var(--co-spacing-sm);
29
+ margin: var(--co-spacing-sm2) var(--co-spacing-sm2) 0;
30
+ padding: var(--co-spacing-xs) var(--co-spacing-sm);
31
+ background: var(--co-semantic-surface-page);
32
+ border: 1px solid var(--co-semantic-border-field);
33
+ border-radius: var(--co-border-radius-xs);
34
+ box-sizing: border-box;
35
+ color: var(--co-semantic-text-muted);
36
+ transition: border-color var(--co-motion-duration-fast) var(--co-motion-ease-out),
37
+ box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out);
38
+ }
39
+
40
+ .co-emoji-picker__search:focus-within {
41
+ border-color: var(--co-semantic-border-focus);
42
+ box-shadow: 0 0 0 2px var(--co-semantic-border-focus-ring);
43
+ }
44
+
45
+ .co-emoji-picker__input {
46
+ flex: 1;
47
+ min-width: 0;
48
+ border: none;
49
+ outline: none;
50
+ background: transparent;
51
+ font-family: inherit;
52
+ font-size: var(--co-font-size-14);
53
+ color: var(--co-semantic-text-default);
54
+ padding: var(--co-spacing-xxs) 0;
55
+ }
56
+
57
+ .co-emoji-picker__input::placeholder {
58
+ color: var(--co-semantic-text-muted);
59
+ }
60
+
61
+ /* ── Selector de tono de piel ────────────────────────────── */
62
+ .co-emoji-picker__tones {
63
+ position: relative;
64
+ display: flex;
65
+ align-items: center;
66
+ flex-shrink: 0;
67
+ }
68
+
69
+ .co-emoji-picker__tone-toggle,
70
+ .co-emoji-picker__tone {
71
+ display: flex;
72
+ align-items: center;
73
+ justify-content: center;
74
+ width: 24px;
75
+ height: 24px;
76
+ padding: 0;
77
+ border: none;
78
+ background: transparent;
79
+ border-radius: var(--co-border-radius-xxs);
80
+ font-size: var(--co-font-size-14);
81
+ line-height: 1;
82
+ cursor: pointer;
83
+ transition: background var(--co-motion-duration-fast) var(--co-motion-ease-out);
84
+ }
85
+
86
+ .co-emoji-picker__tone-toggle:hover,
87
+ .co-emoji-picker__tone:hover {
88
+ background: var(--co-semantic-surface-hover);
89
+ }
90
+
91
+ .co-emoji-picker__tone-toggle:focus-visible,
92
+ .co-emoji-picker__tone:focus-visible {
93
+ outline: none;
94
+ box-shadow: 0 0 0 2px var(--co-semantic-border-focus-ring);
95
+ }
96
+
97
+ .co-emoji-picker__tone--selected {
98
+ background: var(--co-semantic-surface-secondary);
99
+ }
100
+
101
+ /* Fila desplegable. Va absoluta para no re-maquetar la barra del buscador al
102
+ abrirse (el input no cambia de ancho). */
103
+ .co-emoji-picker__tone-row {
104
+ position: absolute;
105
+ top: calc(100% + var(--co-spacing-xs));
106
+ right: 0;
107
+ z-index: 1;
108
+ display: flex;
109
+ align-items: center;
110
+ gap: var(--co-spacing-xxs);
111
+ padding: var(--co-spacing-xxs);
112
+ background: var(--co-semantic-surface-page);
113
+ border: 1px solid var(--co-semantic-border-default);
114
+ border-radius: var(--co-border-radius-xs);
115
+ box-shadow: var(--co-shadow-lg);
116
+ }
117
+
118
+ /* ── Strip de categorías ─────────────────────────────────── */
119
+ .co-emoji-picker__categories {
120
+ display: flex;
121
+ align-items: center;
122
+ justify-content: space-between;
123
+ gap: var(--co-spacing-xxs);
124
+ padding: var(--co-spacing-sm2) var(--co-spacing-sm2) var(--co-spacing-xs);
125
+ }
126
+
127
+ .co-emoji-picker__category {
128
+ display: flex;
129
+ align-items: center;
130
+ justify-content: center;
131
+ flex: 1;
132
+ min-width: 0;
133
+ height: 28px;
134
+ padding: 0;
135
+ border: none;
136
+ background: transparent;
137
+ border-radius: var(--co-border-radius-xxs);
138
+ color: var(--co-semantic-text-muted);
139
+ cursor: pointer;
140
+ transition: color var(--co-motion-duration-fast) var(--co-motion-ease-out),
141
+ background var(--co-motion-duration-fast) var(--co-motion-ease-out);
142
+ }
143
+
144
+ .co-emoji-picker__category:hover {
145
+ color: var(--co-semantic-text-default);
146
+ background: var(--co-semantic-surface-hover);
147
+ }
148
+
149
+ .co-emoji-picker__category--active {
150
+ color: var(--co-semantic-text-default);
151
+ background: var(--co-semantic-surface-secondary);
152
+ }
153
+
154
+ .co-emoji-picker__category:focus-visible {
155
+ outline: none;
156
+ color: var(--co-semantic-text-default);
157
+ box-shadow: 0 0 0 2px var(--co-semantic-border-focus-ring);
158
+ }
159
+
160
+ /* ── Scrollport de la grilla ─────────────────────────────── */
161
+ .co-emoji-picker__scroll {
162
+ position: relative;
163
+ /* 8 filas visibles. El host lo puede ajustar con --co-emoji-picker-height. */
164
+ height: var(--co-emoji-picker-height, calc(8 * var(--co-emoji-picker-cell)));
165
+ overflow-y: auto;
166
+ overflow-x: hidden;
167
+ padding: 0 var(--co-spacing-sm2);
168
+ box-sizing: border-box;
169
+ scrollbar-width: thin;
170
+ scrollbar-color: var(--co-semantic-border-default) transparent;
171
+ outline: none;
172
+ }
173
+
174
+ .co-emoji-picker__scroll::-webkit-scrollbar {
175
+ width: 8px;
176
+ }
177
+
178
+ .co-emoji-picker__scroll::-webkit-scrollbar-thumb {
179
+ background: var(--co-semantic-border-default);
180
+ border-radius: var(--co-border-radius-full);
181
+ }
182
+
183
+ .co-emoji-picker__scroll::-webkit-scrollbar-track {
184
+ background: transparent;
185
+ }
186
+
187
+ /* Sizer: reserva el alto TOTAL del dataset para que la barra de scroll sea
188
+ real; la ventana renderizada se desplaza por transform. */
189
+ .co-emoji-picker__sizer {
190
+ position: relative;
191
+ width: 100%;
192
+ }
193
+
194
+ .co-emoji-picker__window {
195
+ position: absolute;
196
+ top: 0;
197
+ left: 0;
198
+ width: 100%;
199
+ will-change: transform;
200
+ }
201
+
202
+ /* ── Filas y celdas ──────────────────────────────────────── */
203
+ .co-emoji-picker__section {
204
+ display: flex;
205
+ align-items: flex-end;
206
+ height: var(--co-emoji-picker-cell);
207
+ padding-bottom: var(--co-spacing-xs);
208
+ box-sizing: border-box;
209
+ font-size: var(--co-font-size-11);
210
+ font-weight: 500;
211
+ text-transform: uppercase;
212
+ letter-spacing: var(--co-font-letter-spacing-caption, normal);
213
+ color: var(--co-semantic-text-muted);
214
+ /* Una sola línea: el nombre de categoría largo se recorta, nunca hace
215
+ scroll horizontal ni empuja la grilla. */
216
+ white-space: nowrap;
217
+ overflow: hidden;
218
+ text-overflow: ellipsis;
219
+ }
220
+
221
+ .co-emoji-picker__row {
222
+ display: flex;
223
+ height: var(--co-emoji-picker-cell);
224
+ }
225
+
226
+ .co-emoji-picker__cell {
227
+ display: flex;
228
+ align-items: center;
229
+ justify-content: center;
230
+ width: var(--co-emoji-picker-cell);
231
+ height: var(--co-emoji-picker-cell);
232
+ flex: 0 0 var(--co-emoji-picker-cell);
233
+ padding: 0;
234
+ border: none;
235
+ background: transparent;
236
+ border-radius: var(--co-border-radius-xxs);
237
+ cursor: pointer;
238
+ transition: background var(--co-motion-duration-instant) var(--co-motion-ease-out),
239
+ transform var(--co-motion-duration-instant) var(--co-motion-ease-out);
240
+ }
241
+
242
+ /* El hover es puramente CSS (no toca estado): el resaltado por teclado
243
+ (--active) y el del mouse son señales distintas y pueden coexistir. */
244
+ .co-emoji-picker__cell:hover,
245
+ .co-emoji-picker__cell--active {
246
+ background: var(--co-semantic-surface-hover);
247
+ }
248
+
249
+ .co-emoji-picker__cell:focus-visible {
250
+ outline: none;
251
+ background: var(--co-semantic-surface-hover);
252
+ box-shadow: 0 0 0 2px var(--co-semantic-border-focus-ring);
253
+ }
254
+
255
+ .co-emoji-picker__cell:active {
256
+ transform: scale(0.92);
257
+ }
258
+
259
+ .co-emoji-picker__glyph {
260
+ /* Fuentes de emoji del SO. La primaria (Geist) no trae glifos de emoji y
261
+ dejaría cuadros vacíos en Windows/Linux, y el sistema de tokens todavía no
262
+ define una familia de emoji: se expone como var themeable con el stack del
263
+ SO de fallback, así que el día que exista --co-font-family-emoji este CSS
264
+ la toma sin tocar nada. */
265
+ font-family: var(
266
+ --co-font-family-emoji,
267
+ 'Apple Color Emoji',
268
+ 'Segoe UI Emoji',
269
+ 'Noto Color Emoji',
270
+ 'Segoe UI Symbol',
271
+ sans-serif
272
+ );
273
+ font-size: var(--co-font-size-22);
274
+ line-height: 1;
275
+ /* El glifo puede pasarse del alto de línea nominal y desalinear la fila. */
276
+ display: block;
277
+ }
278
+
279
+ /* ── Vacío ───────────────────────────────────────────────── */
280
+ .co-emoji-picker__empty {
281
+ display: flex;
282
+ flex-direction: column;
283
+ align-items: center;
284
+ justify-content: center;
285
+ gap: var(--co-spacing-sm);
286
+ height: 100%;
287
+ color: var(--co-semantic-text-muted);
288
+ font-size: var(--co-font-size-13);
289
+ text-align: center;
290
+ }