@prolibu-suite/cobalt-core 0.10.4 → 0.11.1

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 (824) hide show
  1. package/README.md +12 -5
  2. package/custom-elements.json +7034 -1203
  3. package/dist/cjs/co-accordion.cjs.entry.js +3 -3
  4. package/dist/cjs/co-action-bar.cjs.entry.js +3 -3
  5. package/dist/cjs/co-app-shell.cjs.entry.js +3 -3
  6. package/dist/cjs/co-audio-player.cjs.entry.js +4 -4
  7. package/dist/cjs/co-autocomplete.cjs.entry.js +12 -5
  8. package/dist/cjs/co-avatar-group.cjs.entry.js +3 -3
  9. package/dist/cjs/co-avatar.cjs.entry.js +7 -4
  10. package/dist/cjs/co-badge.cjs.entry.js +2 -2
  11. package/dist/cjs/co-bottom-sheet.cjs.entry.js +5 -5
  12. package/dist/cjs/co-breadcrumb-item.cjs.entry.js +3 -3
  13. package/dist/cjs/co-breadcrumb.cjs.entry.js +2 -2
  14. package/dist/cjs/co-button-group.cjs.entry.js +4 -3
  15. package/dist/cjs/co-button.cjs.entry.js +9 -7
  16. package/dist/cjs/co-calendar-month_2.cjs.entry.js +16 -4
  17. package/dist/cjs/co-calendar_3.cjs.entry.js +76 -27
  18. package/dist/cjs/co-card.cjs.entry.js +3 -3
  19. package/dist/cjs/co-carousel-item.cjs.entry.js +2 -2
  20. package/dist/cjs/co-carousel.cjs.entry.js +6 -3
  21. package/dist/cjs/co-checkbox-group.cjs.entry.js +4 -4
  22. package/dist/cjs/co-checkbox.cjs.entry.js +13 -5
  23. package/dist/cjs/co-chip_2.cjs.entry.js +20 -7
  24. package/dist/cjs/co-color-area.cjs.entry.js +169 -0
  25. package/dist/cjs/co-color-picker.cjs.entry.js +5 -5
  26. package/dist/cjs/co-color-slider.cjs.entry.js +189 -0
  27. package/dist/cjs/co-column-picker.cjs.entry.js +23 -3
  28. package/dist/cjs/co-combobox.cjs.entry.js +5 -5
  29. package/dist/cjs/co-command-search.cjs.entry.js +5 -5
  30. package/dist/cjs/co-data-table-pagination.cjs.entry.js +5 -5
  31. package/dist/cjs/co-data-table.cjs.entry.js +3 -3
  32. package/dist/cjs/co-date-picker.cjs.entry.js +10 -2
  33. package/dist/cjs/co-date-range-picker.cjs.entry.js +11 -2
  34. package/dist/cjs/co-date-range.cjs.entry.js +8 -2
  35. package/dist/cjs/co-date-time-picker.cjs.entry.js +11 -4
  36. package/dist/cjs/co-document-editor.cjs.entry.js +1167 -0
  37. package/dist/cjs/co-drive-card.cjs.entry.js +2 -2
  38. package/dist/cjs/co-drop-zone.cjs.entry.js +2 -2
  39. package/dist/cjs/co-emoji-picker.cjs.entry.js +3 -3
  40. package/dist/cjs/co-empty-state.cjs.entry.js +3 -3
  41. package/dist/cjs/co-event-calendar.cjs.entry.js +5 -3
  42. package/dist/cjs/co-event-popover.cjs.entry.js +7 -3
  43. package/dist/cjs/co-fab.cjs.entry.js +7 -3
  44. package/dist/cjs/co-file-field.cjs.entry.js +12 -8
  45. package/dist/cjs/co-file-type-tile.cjs.entry.js +3 -3
  46. package/dist/cjs/co-gradient-bar.cjs.entry.js +220 -0
  47. package/dist/cjs/co-helper-text.cjs.entry.js +3 -3
  48. package/dist/cjs/co-icon-button.cjs.entry.js +48 -9
  49. package/dist/cjs/co-icon.cjs.entry.js +3 -3
  50. package/dist/cjs/co-input.cjs.entry.js +14 -8
  51. package/dist/cjs/co-json-field.cjs.entry.js +10 -5
  52. package/dist/cjs/{co-tooltip.cjs.entry.js → co-kbd_2.cjs.entry.js} +194 -6
  53. package/dist/cjs/co-lightbox.cjs.entry.js +5 -5
  54. package/dist/cjs/co-list-footer.cjs.entry.js +2 -2
  55. package/dist/cjs/co-list-item.cjs.entry.js +5 -5
  56. package/dist/cjs/co-loader.cjs.entry.js +1 -1
  57. package/dist/cjs/co-media-thumb.cjs.entry.js +3 -3
  58. package/dist/cjs/co-menu-divider.cjs.entry.js +3 -3
  59. package/dist/cjs/co-menu-item.cjs.entry.js +41 -43
  60. package/dist/cjs/co-menu.cjs.entry.js +81 -5
  61. package/dist/cjs/co-modal.cjs.entry.js +350 -7
  62. package/dist/cjs/co-navbar.cjs.entry.js +3 -3
  63. package/dist/cjs/co-number-field.cjs.entry.js +11 -5
  64. package/dist/cjs/co-overlay.cjs.entry.js +8 -4
  65. package/dist/cjs/co-page-header.cjs.entry.js +2 -2
  66. package/dist/cjs/co-phone-field.cjs.entry.js +3 -3
  67. package/dist/cjs/co-popover.cjs.entry.js +69 -6
  68. package/dist/cjs/co-progress-bar.cjs.entry.js +3 -3
  69. package/dist/cjs/co-progress-circle.cjs.entry.js +3 -3
  70. package/dist/cjs/co-provider-logo_2.cjs.entry.js +2 -2
  71. package/dist/cjs/co-radio-group.cjs.entry.js +4 -4
  72. package/dist/cjs/co-radio.cjs.entry.js +4 -4
  73. package/dist/cjs/co-rating.cjs.entry.js +11 -4
  74. package/dist/cjs/co-ref-field.cjs.entry.js +14 -5
  75. package/dist/cjs/co-rich-text-editor.cjs.entry.js +40 -92
  76. package/dist/cjs/co-rich-text-toolbar.cjs.entry.js +80 -20
  77. package/dist/cjs/co-rich-text-viewer.cjs.entry.js +9 -2
  78. package/dist/cjs/co-row.cjs.entry.js +3 -3
  79. package/dist/cjs/co-segmented-bar.cjs.entry.js +3 -3
  80. package/dist/cjs/co-select.cjs.entry.js +171 -29
  81. package/dist/cjs/co-separator.cjs.entry.js +2 -2
  82. package/dist/cjs/co-sidebar-nav.cjs.entry.js +20 -5
  83. package/dist/cjs/co-sidebar.cjs.entry.js +3 -3
  84. package/dist/cjs/co-slider.cjs.entry.js +209 -23
  85. package/dist/cjs/co-swatch-grid.cjs.entry.js +121 -0
  86. package/dist/cjs/co-switch.cjs.entry.js +5 -5
  87. package/dist/cjs/co-tab-group.cjs.entry.js +113 -4
  88. package/dist/cjs/co-tab.cjs.entry.js +15 -5
  89. package/dist/cjs/co-tags-field.cjs.entry.js +13 -8
  90. package/dist/cjs/co-textarea.cjs.entry.js +6 -6
  91. package/dist/cjs/co-tile.cjs.entry.js +61 -0
  92. package/dist/cjs/co-time-field.cjs.entry.js +5 -2
  93. package/dist/cjs/co-toast.cjs.entry.js +3 -3
  94. package/dist/cjs/co-toggle-button-group.cjs.entry.js +29 -5
  95. package/dist/cjs/co-toggle-button.cjs.entry.js +70 -6
  96. package/dist/cjs/co-transfer-list.cjs.entry.js +7 -3
  97. package/dist/cjs/co-tree-item.cjs.entry.js +110 -0
  98. package/dist/cjs/co-video.cjs.entry.js +11 -3
  99. package/dist/cjs/cobalt.cjs.js +2 -2
  100. package/dist/cjs/{color-CML2Cfdh.js → color-DQVrQGi0.js} +10 -5
  101. package/dist/cjs/{fieldChip-B6YIGU1V.js → fieldChip-C7MxxBVO.js} +1 -1
  102. package/dist/cjs/gradientStops-CMpH4fB_.js +153 -0
  103. package/dist/cjs/hsv-DpfSF3M2.js +95 -0
  104. package/dist/cjs/{index-MDAnKsze.js → index-bHoidDwv.js} +67 -27
  105. package/dist/cjs/index-oMHzCXm6.js +144 -0
  106. package/dist/cjs/loader.cjs.js +2 -2
  107. package/dist/cjs/{index-2kMmd5-a.js → pagination-DV43TRj9.js} +1780 -297
  108. package/dist/cjs/{positioning-CyatXeT_.js → positioning-CILo5esi.js} +45 -18
  109. package/dist/cjs/{requiredMark-D-t-IPN0.js → requiredMark-21yHvvZS.js} +1 -1
  110. package/dist/cjs/rich-text-host-ueFSfW-6.js +119 -0
  111. package/dist/cjs/{richTextI18n-B28uAhh4.js → richTextI18n-DXGIv5w1.js} +45 -0
  112. package/dist/cjs/submenu-RlaX6irw.js +65 -0
  113. package/dist/cjs/{toolbar-config-CYACt9hh.js → toolbar-config-DczL6C4W.js} +32 -0
  114. package/dist/cobalt/cobalt.css +1 -1
  115. package/dist/cobalt/cobalt.esm.js +1 -1
  116. package/dist/cobalt/{p-76249983.entry.js → p-019eed8e.entry.js} +1 -1
  117. package/dist/cobalt/p-04e3e1f6.entry.js +1 -0
  118. package/dist/cobalt/p-06689166.entry.js +1 -0
  119. package/dist/cobalt/p-0d046d98.entry.js +1 -0
  120. package/dist/cobalt/{p-28764b8e.entry.js → p-0e4c2234.entry.js} +1 -1
  121. package/dist/cobalt/{p-b90d41e4.entry.js → p-1348d5ca.entry.js} +1 -1
  122. package/dist/cobalt/{p-49834b8e.entry.js → p-13e5b724.entry.js} +1 -1
  123. package/dist/cobalt/p-1a5bec8c.entry.js +1 -0
  124. package/dist/cobalt/p-21b4a830.entry.js +1 -0
  125. package/dist/cobalt/p-2231bacc.entry.js +1 -0
  126. package/dist/cobalt/{p-b437eff6.entry.js → p-26cbdc33.entry.js} +1 -1
  127. package/dist/cobalt/{p-aa9400bf.entry.js → p-28cf05f3.entry.js} +1 -1
  128. package/dist/cobalt/{p-eadfd661.entry.js → p-358a6c2a.entry.js} +1 -1
  129. package/dist/cobalt/p-3b5024ce.entry.js +1 -0
  130. package/dist/cobalt/p-3b6efb79.entry.js +1 -0
  131. package/dist/cobalt/p-3d1a48e5.entry.js +1 -0
  132. package/dist/cobalt/p-47eca182.entry.js +1 -0
  133. package/dist/cobalt/{p-eb82358d.entry.js → p-4bcdd422.entry.js} +1 -1
  134. package/dist/cobalt/{p-17244412.entry.js → p-4d743628.entry.js} +1 -1
  135. package/dist/cobalt/{p-011dc80b.entry.js → p-4e81e580.entry.js} +1 -1
  136. package/dist/cobalt/{p-ee9a623d.entry.js → p-53a251ca.entry.js} +1 -1
  137. package/dist/cobalt/{p-11c5ce78.entry.js → p-56176aa0.entry.js} +1 -1
  138. package/dist/cobalt/{p-a32b20eb.entry.js → p-58ebb303.entry.js} +1 -1
  139. package/dist/cobalt/{p-4592ca00.entry.js → p-5a32b9a2.entry.js} +1 -1
  140. package/dist/cobalt/{p-2636b7eb.entry.js → p-5e678e88.entry.js} +1 -1
  141. package/dist/cobalt/{p-996f4e38.entry.js → p-60f948c4.entry.js} +1 -1
  142. package/dist/cobalt/p-63908a8d.entry.js +1 -0
  143. package/dist/cobalt/p-65c191aa.entry.js +1 -0
  144. package/dist/cobalt/{p-c2ebf0ec.entry.js → p-65d44da2.entry.js} +1 -1
  145. package/dist/cobalt/p-67a024dd.entry.js +1 -0
  146. package/dist/cobalt/{p-ee149fd2.entry.js → p-6974df59.entry.js} +1 -1
  147. package/dist/cobalt/{p-000a15b8.entry.js → p-69ecc933.entry.js} +1 -1
  148. package/dist/cobalt/p-6c1992c9.entry.js +1 -0
  149. package/dist/cobalt/{p-b821d9de.entry.js → p-6d4a660c.entry.js} +1 -1
  150. package/dist/cobalt/{p-f57dffca.entry.js → p-713637f2.entry.js} +1 -1
  151. package/dist/cobalt/{p-292b0389.entry.js → p-71ae1551.entry.js} +1 -1
  152. package/dist/cobalt/{p-91e73a92.entry.js → p-71dc8e4a.entry.js} +1 -1
  153. package/dist/cobalt/{p-aaca6dab.entry.js → p-71ee36a8.entry.js} +1 -1
  154. package/dist/cobalt/p-71fe35c4.entry.js +1 -0
  155. package/dist/cobalt/{p-08e42e00.entry.js → p-73313cbe.entry.js} +1 -1
  156. package/dist/cobalt/{p-7b5c555c.entry.js → p-763698b3.entry.js} +1 -1
  157. package/dist/cobalt/p-77e0d401.entry.js +1 -0
  158. package/dist/cobalt/{p-c91d4fc6.entry.js → p-78412feb.entry.js} +1 -1
  159. package/dist/cobalt/p-7beface1.entry.js +1 -0
  160. package/dist/cobalt/{p-f4e1c3c3.entry.js → p-7d1718ed.entry.js} +1 -1
  161. package/dist/cobalt/{p-826ee074.entry.js → p-7df18a52.entry.js} +1 -1
  162. package/dist/cobalt/p-7e678cbd.entry.js +1 -0
  163. package/dist/cobalt/{p-d0b2c418.entry.js → p-7fabd8ba.entry.js} +1 -1
  164. package/dist/cobalt/{p-23ab0cc5.entry.js → p-848f5ca4.entry.js} +1 -1
  165. package/dist/cobalt/{p-623cc195.entry.js → p-8680559b.entry.js} +1 -1
  166. package/dist/cobalt/p-87de5469.entry.js +1 -0
  167. package/dist/cobalt/p-87e62e2b.entry.js +1 -0
  168. package/dist/cobalt/{p-1861fe41.entry.js → p-8a2a2b6c.entry.js} +1 -1
  169. package/dist/cobalt/p-903237f9.entry.js +1 -0
  170. package/dist/cobalt/{p-2c9dba2f.entry.js → p-95f2ebb1.entry.js} +1 -1
  171. package/dist/cobalt/{p-24196410.entry.js → p-99df434b.entry.js} +1 -1
  172. package/dist/cobalt/{p-290066ef.entry.js → p-9adbab95.entry.js} +1 -1
  173. package/dist/cobalt/p-9dc01092.entry.js +1 -0
  174. package/dist/cobalt/p-9ee5bef3.entry.js +1 -0
  175. package/dist/cobalt/p-B1JT7us1.js +1 -0
  176. package/dist/cobalt/{p-BRbgGqLw.js → p-BVGGRfNG.js} +1 -1
  177. package/dist/cobalt/p-BmdKHBZP.js +1 -0
  178. package/dist/cobalt/p-BtliEQAT.js +1 -0
  179. package/dist/cobalt/p-COJdaKBU.js +1 -0
  180. package/dist/cobalt/{p-BAYo-RBt.js → p-CRxTFT_z.js} +1 -1
  181. package/dist/cobalt/p-CYN5B3IQ.js +1 -0
  182. package/dist/cobalt/p-DJkaRtbb.js +2 -0
  183. package/dist/cobalt/p-DU-KOQ8L.js +1 -0
  184. package/dist/cobalt/p-DXLeDZvr.js +1 -0
  185. package/dist/cobalt/{p-D_zA1Pv4.js → p-DgJovDdy.js} +1 -1
  186. package/dist/cobalt/p-RVQJEYxa.js +1 -0
  187. package/dist/cobalt/{p-ee2023da.entry.js → p-a27013e6.entry.js} +1 -1
  188. package/dist/cobalt/{p-2f9cbbd5.entry.js → p-a4eb298c.entry.js} +1 -1
  189. package/dist/cobalt/p-a56bd4a8.entry.js +1 -0
  190. package/dist/cobalt/{p-59963937.entry.js → p-a5eabecb.entry.js} +1 -1
  191. package/dist/cobalt/p-a5ee1fc2.entry.js +1 -0
  192. package/dist/cobalt/{p-fb2d1144.entry.js → p-a7cd61ce.entry.js} +1 -1
  193. package/dist/cobalt/{p-39a50e7f.entry.js → p-ad752791.entry.js} +1 -1
  194. package/dist/cobalt/{p-07416e31.entry.js → p-ae999b94.entry.js} +1 -1
  195. package/dist/cobalt/{p-4d65e713.entry.js → p-aed832d5.entry.js} +1 -1
  196. package/dist/cobalt/p-b2457431.entry.js +1 -0
  197. package/dist/cobalt/{p-6dd220e0.entry.js → p-b39a4999.entry.js} +1 -1
  198. package/dist/cobalt/p-b5dabdc3.entry.js +1 -0
  199. package/dist/cobalt/{p-8471abe2.entry.js → p-b67fb616.entry.js} +1 -1
  200. package/dist/cobalt/{p-f7eb1a40.entry.js → p-b9b73dcb.entry.js} +1 -1
  201. package/dist/cobalt/{p-f9a7b7c6.entry.js → p-ba39a965.entry.js} +1 -1
  202. package/dist/cobalt/{p-58d9b650.entry.js → p-be520bd5.entry.js} +1 -1
  203. package/dist/cobalt/{p-1dc55e43.entry.js → p-bee30373.entry.js} +1 -1
  204. package/dist/cobalt/{p-44c4e4a3.entry.js → p-c220362c.entry.js} +1 -1
  205. package/dist/cobalt/p-c4c997f3.entry.js +1 -0
  206. package/dist/cobalt/{p-a2462d7a.entry.js → p-c5464a98.entry.js} +1 -1
  207. package/dist/cobalt/p-c567533e.entry.js +1 -0
  208. package/dist/cobalt/{p-c30b4cb5.entry.js → p-cf5b91be.entry.js} +1 -1
  209. package/dist/cobalt/p-cfaaa684.entry.js +1 -0
  210. package/dist/cobalt/p-d00c3894.entry.js +1 -0
  211. package/dist/cobalt/p-d1e83525.entry.js +1 -0
  212. package/dist/cobalt/{p-44ea675f.entry.js → p-d5d8fa8b.entry.js} +1 -1
  213. package/dist/cobalt/p-d6215d80.entry.js +1 -0
  214. package/dist/cobalt/p-d6e7c258.entry.js +1 -0
  215. package/dist/cobalt/p-dabcbba7.entry.js +1 -0
  216. package/dist/cobalt/p-db623519.entry.js +1 -0
  217. package/dist/cobalt/{p-c7d7d7f7.entry.js → p-df529110.entry.js} +1 -1
  218. package/dist/cobalt/{p-1cc818ca.entry.js → p-ea24eea8.entry.js} +1 -1
  219. package/dist/cobalt/{p-d29bb0fa.entry.js → p-efb3cbb0.entry.js} +1 -1
  220. package/dist/cobalt/{p-f6691108.entry.js → p-f0898e21.entry.js} +1 -1
  221. package/dist/cobalt/{p-0c004735.entry.js → p-f2fa2ac0.entry.js} +1 -1
  222. package/dist/cobalt/p-f403eeec.entry.js +1 -0
  223. package/dist/cobalt/{p-e4264532.entry.js → p-f69804a6.entry.js} +1 -1
  224. package/dist/cobalt/p-xnrKkNWQ.js +1 -0
  225. package/dist/collection/collection-manifest.json +8 -0
  226. package/dist/collection/components/co-accordion/co-accordion.js +12 -2
  227. package/dist/collection/components/co-action-bar/co-action-bar.css +6 -0
  228. package/dist/collection/components/co-action-bar/co-action-bar.js +3 -2
  229. package/dist/collection/components/co-app-shell/co-app-shell.css +6 -0
  230. package/dist/collection/components/co-app-shell/co-app-shell.js +13 -2
  231. package/dist/collection/components/co-audio-player/co-audio-player.js +19 -7
  232. package/dist/collection/components/co-autocomplete/co-autocomplete.js +30 -17
  233. package/dist/collection/components/co-avatar/co-avatar.css +16 -2
  234. package/dist/collection/components/co-avatar/co-avatar.js +14 -4
  235. package/dist/collection/components/co-avatar-group/co-avatar-group.css +4 -0
  236. package/dist/collection/components/co-avatar-group/co-avatar-group.js +8 -3
  237. package/dist/collection/components/co-badge/co-badge.js +8 -1
  238. package/dist/collection/components/co-bottom-sheet/co-bottom-sheet.js +13 -4
  239. package/dist/collection/components/co-breadcrumb/co-breadcrumb.js +5 -1
  240. package/dist/collection/components/co-breadcrumb-item/co-breadcrumb-item.js +8 -2
  241. package/dist/collection/components/co-button/co-button.css +81 -6
  242. package/dist/collection/components/co-button/co-button.js +39 -11
  243. package/dist/collection/components/co-button-group/co-button-group.js +10 -3
  244. package/dist/collection/components/co-calendar/calendarMarks.js +40 -0
  245. package/dist/collection/components/co-calendar/co-calendar.css +19 -1
  246. package/dist/collection/components/co-calendar/co-calendar.js +84 -20
  247. package/dist/collection/components/co-calendar-month/co-calendar-month.js +1 -1
  248. package/dist/collection/components/co-calendar-timegrid/co-calendar-timegrid.js +36 -19
  249. package/dist/collection/components/co-card/co-card.js +11 -2
  250. package/dist/collection/components/co-carousel/co-carousel.css +10 -0
  251. package/dist/collection/components/co-carousel/co-carousel.js +17 -5
  252. package/dist/collection/components/co-carousel-item/co-carousel-item.js +1 -1
  253. package/dist/collection/components/co-checkbox/co-checkbox.css +43 -1
  254. package/dist/collection/components/co-checkbox/co-checkbox.js +39 -3
  255. package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +9 -4
  256. package/dist/collection/components/co-chip/co-chip.css +9 -0
  257. package/dist/collection/components/co-chip/co-chip.js +15 -2
  258. package/dist/collection/components/co-color-area/co-color-area.css +87 -0
  259. package/dist/collection/components/co-color-area/co-color-area.js +342 -0
  260. package/dist/collection/components/co-color-picker/co-color-picker.js +4 -2
  261. package/dist/collection/components/co-color-slider/co-color-slider.css +115 -0
  262. package/dist/collection/components/co-color-slider/co-color-slider.js +354 -0
  263. package/dist/collection/components/co-column-picker/co-column-picker.js +51 -25
  264. package/dist/collection/components/co-combobox/co-combobox.js +18 -4
  265. package/dist/collection/components/co-command-search/co-command-search.js +19 -8
  266. package/dist/collection/components/co-data-table/co-data-table.js +8 -3
  267. package/dist/collection/components/co-data-table-pagination/co-data-table-pagination.js +16 -4
  268. package/dist/collection/components/co-date-field/co-date-field.js +19 -13
  269. package/dist/collection/components/co-date-picker/co-date-picker.js +38 -25
  270. package/dist/collection/components/co-date-range/co-date-range.js +19 -10
  271. package/dist/collection/components/co-date-range-picker/co-date-range-picker.js +44 -30
  272. package/dist/collection/components/co-date-time-picker/co-date-time-picker.js +31 -22
  273. package/dist/collection/components/co-document-editor/change-throttle.js +30 -0
  274. package/dist/collection/components/co-document-editor/co-document-editor.css +438 -0
  275. package/dist/collection/components/co-document-editor/co-document-editor.js +1549 -0
  276. package/dist/collection/components/co-document-editor/document-props.js +40 -0
  277. package/dist/collection/components/co-document-editor/header-tools.js +11 -0
  278. package/dist/collection/components/co-document-editor/image-bar.js +66 -0
  279. package/dist/collection/components/co-document-editor/page-styles.js +90 -0
  280. package/dist/collection/components/co-document-editor/zoom.js +45 -0
  281. package/dist/collection/components/co-drawer/co-drawer.css +5 -0
  282. package/dist/collection/components/co-drawer/co-drawer.js +13 -0
  283. package/dist/collection/components/co-drive-card/co-drive-card.js +14 -1
  284. package/dist/collection/components/co-drop-zone/co-drop-zone.js +7 -2
  285. package/dist/collection/components/co-emoji-picker/co-emoji-picker.css +4 -0
  286. package/dist/collection/components/co-emoji-picker/co-emoji-picker.js +11 -2
  287. package/dist/collection/components/co-empty-state/co-empty-state.js +4 -2
  288. package/dist/collection/components/co-event-calendar/co-event-calendar.js +16 -4
  289. package/dist/collection/components/co-event-popover/co-event-popover.js +18 -6
  290. package/dist/collection/components/co-fab/co-fab.css +8 -0
  291. package/dist/collection/components/co-fab/co-fab.js +17 -8
  292. package/dist/collection/components/co-file-field/co-file-field.js +16 -11
  293. package/dist/collection/components/co-file-type-tile/co-file-type-tile.js +9 -2
  294. package/dist/collection/components/co-gradient-bar/co-gradient-bar.css +143 -0
  295. package/dist/collection/components/co-gradient-bar/co-gradient-bar.js +412 -0
  296. package/dist/collection/components/co-helper-text/co-helper-text.js +4 -2
  297. package/dist/collection/components/co-icon/co-icon.js +6 -2
  298. package/dist/collection/components/co-icon-button/co-icon-button.css +104 -19
  299. package/dist/collection/components/co-icon-button/co-icon-button.js +125 -10
  300. package/dist/collection/components/co-input/co-input.css +125 -0
  301. package/dist/collection/components/co-input/co-input.js +48 -11
  302. package/dist/collection/components/co-json-field/co-json-field.js +19 -12
  303. package/dist/collection/components/co-kbd/co-kbd.css +99 -0
  304. package/dist/collection/components/co-kbd/co-kbd.js +298 -0
  305. package/dist/collection/components/co-lightbox/co-lightbox.js +4 -4
  306. package/dist/collection/components/co-list-footer/co-list-footer.js +4 -1
  307. package/dist/collection/components/co-list-item/co-list-item.js +7 -4
  308. package/dist/collection/components/co-loader/co-loader.js +5 -0
  309. package/dist/collection/components/co-media-thumb/co-media-thumb.js +9 -2
  310. package/dist/collection/components/co-menu/co-menu.css +70 -0
  311. package/dist/collection/components/co-menu/co-menu.js +146 -6
  312. package/dist/collection/components/co-menu-divider/co-menu-divider.css +21 -0
  313. package/dist/collection/components/co-menu-divider/co-menu-divider.js +2 -1
  314. package/dist/collection/components/co-menu-item/co-menu-item.css +56 -6
  315. package/dist/collection/components/co-menu-item/co-menu-item.js +60 -4
  316. package/dist/collection/components/co-modal/co-modal.css +218 -1
  317. package/dist/collection/components/co-modal/co-modal.js +354 -12
  318. package/dist/collection/components/co-navbar/co-navbar.css +7 -0
  319. package/dist/collection/components/co-navbar/co-navbar.js +4 -2
  320. package/dist/collection/components/co-number-field/co-number-field.js +29 -15
  321. package/dist/collection/components/co-option-list/co-option-list.css +102 -21
  322. package/dist/collection/components/co-option-list/co-option-list.js +37 -16
  323. package/dist/collection/components/co-overlay/co-overlay.css +4 -0
  324. package/dist/collection/components/co-overlay/co-overlay.js +17 -3
  325. package/dist/collection/components/co-page-header/co-page-header.js +4 -1
  326. package/dist/collection/components/co-phone-field/co-phone-field.js +1 -1
  327. package/dist/collection/components/co-popover/co-popover.css +20 -2
  328. package/dist/collection/components/co-popover/co-popover.js +148 -10
  329. package/dist/collection/components/co-progress-bar/co-progress-bar.js +5 -2
  330. package/dist/collection/components/co-progress-circle/co-progress-circle.js +5 -2
  331. package/dist/collection/components/co-provider-logo/co-provider-logo.js +3 -0
  332. package/dist/collection/components/co-radio/co-radio.js +11 -3
  333. package/dist/collection/components/co-radio-group/co-radio-group.js +9 -4
  334. package/dist/collection/components/co-rating/co-rating.js +25 -13
  335. package/dist/collection/components/co-ref-field/co-ref-field.css +14 -0
  336. package/dist/collection/components/co-ref-field/co-ref-field.js +55 -27
  337. package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.js +66 -111
  338. package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.css +12 -0
  339. package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.js +127 -19
  340. package/dist/collection/components/co-rich-text-viewer/co-rich-text-viewer.js +16 -1
  341. package/dist/collection/components/co-row/co-row.js +5 -2
  342. package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +9 -3
  343. package/dist/collection/components/co-select/co-select.css +207 -11
  344. package/dist/collection/components/co-select/co-select.js +198 -48
  345. package/dist/collection/components/co-select/virtualRows.js +57 -0
  346. package/dist/collection/components/co-separator/co-separator.js +8 -1
  347. package/dist/collection/components/co-sidebar/co-sidebar.js +10 -2
  348. package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.css +15 -0
  349. package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +20 -4
  350. package/dist/collection/components/co-skeleton/co-skeleton.js +4 -1
  351. package/dist/collection/components/co-slider/co-slider.css +155 -5
  352. package/dist/collection/components/co-slider/co-slider.js +263 -32
  353. package/dist/collection/components/co-swatch-grid/co-swatch-grid.css +56 -0
  354. package/dist/collection/components/co-swatch-grid/co-swatch-grid.js +293 -0
  355. package/dist/collection/components/co-switch/co-switch.css +4 -0
  356. package/dist/collection/components/co-switch/co-switch.js +12 -3
  357. package/dist/collection/components/co-tab/co-tab.css +60 -0
  358. package/dist/collection/components/co-tab/co-tab.js +44 -6
  359. package/dist/collection/components/co-tab-group/co-tab-group.css +24 -0
  360. package/dist/collection/components/co-tab-group/co-tab-group.js +133 -2
  361. package/dist/collection/components/co-tab-group/revealTab.js +26 -0
  362. package/dist/collection/components/co-tags-field/co-tags-field.js +21 -14
  363. package/dist/collection/components/co-textarea/co-textarea.js +4 -4
  364. package/dist/collection/components/co-tile/co-tile.css +63 -0
  365. package/dist/collection/components/co-tile/co-tile.js +167 -0
  366. package/dist/collection/components/co-time-field/co-time-field.js +9 -4
  367. package/dist/collection/components/co-toast/co-toast.css +11 -0
  368. package/dist/collection/components/co-toast/co-toast.js +13 -4
  369. package/dist/collection/components/co-toggle-button/co-toggle-button.css +106 -0
  370. package/dist/collection/components/co-toggle-button/co-toggle-button.js +91 -15
  371. package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.css +21 -0
  372. package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.js +41 -11
  373. package/dist/collection/components/co-tooltip/co-tooltip.css +36 -0
  374. package/dist/collection/components/co-tooltip/co-tooltip.js +61 -3
  375. package/dist/collection/components/co-transfer-list/co-transfer-list.js +19 -10
  376. package/dist/collection/components/co-tree-item/co-tree-item.css +235 -0
  377. package/dist/collection/components/co-tree-item/co-tree-item.js +355 -0
  378. package/dist/collection/components/co-tree-item/treeItemI18n.js +16 -0
  379. package/dist/collection/components/co-video/co-video.css +11 -0
  380. package/dist/collection/components/co-video/co-video.js +41 -22
  381. package/dist/collection/utils/color.js +9 -5
  382. package/dist/collection/utils/dragMove.js +95 -0
  383. package/dist/collection/utils/gradientBarI18n.js +24 -0
  384. package/dist/collection/utils/gradientStops.js +142 -0
  385. package/dist/collection/utils/hsv.js +114 -0
  386. package/dist/collection/utils/kbdI18n.js +29 -0
  387. package/dist/collection/utils/positioning.js +44 -18
  388. package/dist/collection/utils/rich-text-host.js +109 -0
  389. package/dist/collection/utils/richTextI18n.js +45 -0
  390. package/dist/collection/utils/submenu.js +23 -3
  391. package/dist/collection/utils/swatchGridI18n.js +14 -0
  392. package/dist/collection/utils/test/fake-block-layout.js +41 -0
  393. package/dist/collection/utils/test/prosemirror-dom-shim.js +17 -0
  394. package/dist/collection/utils/test/shared-contract-css.js +9 -0
  395. package/dist/components/co-accordion.js +1 -1
  396. package/dist/components/co-action-bar.js +1 -1
  397. package/dist/components/co-app-shell.js +1 -1
  398. package/dist/components/co-audio-player.js +1 -1
  399. package/dist/components/co-autocomplete.js +1 -1
  400. package/dist/components/co-avatar-group.js +1 -1
  401. package/dist/components/co-avatar.js +1 -1
  402. package/dist/components/co-badge.js +1 -1
  403. package/dist/components/co-bottom-sheet.js +1 -1
  404. package/dist/components/co-breadcrumb-item.js +1 -1
  405. package/dist/components/co-breadcrumb.js +1 -1
  406. package/dist/components/co-button-group.js +1 -1
  407. package/dist/components/co-button.js +1 -1
  408. package/dist/components/co-calendar-month.js +1 -1
  409. package/dist/components/co-calendar-timegrid.js +1 -1
  410. package/dist/components/co-calendar.js +1 -1
  411. package/dist/components/co-card.js +1 -1
  412. package/dist/components/co-carousel-item.js +1 -1
  413. package/dist/components/co-carousel.js +1 -1
  414. package/dist/components/co-checkbox-group.js +1 -1
  415. package/dist/components/co-checkbox.js +1 -1
  416. package/dist/components/co-chip.js +1 -1
  417. package/dist/components/co-color-area.d.ts +11 -0
  418. package/dist/components/co-color-area.js +1 -0
  419. package/dist/components/co-color-picker.js +1 -1
  420. package/dist/components/co-color-slider.d.ts +11 -0
  421. package/dist/components/co-color-slider.js +1 -0
  422. package/dist/components/co-column-picker.js +1 -1
  423. package/dist/components/co-combobox.js +1 -1
  424. package/dist/components/co-command-search.js +1 -1
  425. package/dist/components/co-data-table-pagination.js +1 -1
  426. package/dist/components/co-data-table.js +1 -1
  427. package/dist/components/co-date-field.js +1 -1
  428. package/dist/components/co-date-picker.js +1 -1
  429. package/dist/components/co-date-range-picker.js +1 -1
  430. package/dist/components/co-date-range.js +1 -1
  431. package/dist/components/co-date-time-picker.js +1 -1
  432. package/dist/components/co-document-editor.d.ts +11 -0
  433. package/dist/components/co-document-editor.js +1 -0
  434. package/dist/components/co-drawer.js +1 -1
  435. package/dist/components/co-drive-card.js +1 -1
  436. package/dist/components/co-drop-zone.js +1 -1
  437. package/dist/components/co-emoji-picker.js +1 -1
  438. package/dist/components/co-empty-state.js +1 -1
  439. package/dist/components/co-event-calendar.js +1 -1
  440. package/dist/components/co-event-popover.js +1 -1
  441. package/dist/components/co-fab.js +1 -1
  442. package/dist/components/co-file-field.js +1 -1
  443. package/dist/components/co-file-type-tile.js +1 -1
  444. package/dist/components/co-gradient-bar.d.ts +11 -0
  445. package/dist/components/co-gradient-bar.js +1 -0
  446. package/dist/components/co-helper-text.js +1 -1
  447. package/dist/components/co-icon-button.js +1 -1
  448. package/dist/components/co-icon.js +1 -1
  449. package/dist/components/co-input.js +1 -1
  450. package/dist/components/co-json-field.js +1 -1
  451. package/dist/components/co-kbd.d.ts +11 -0
  452. package/dist/components/co-kbd.js +1 -0
  453. package/dist/components/co-lightbox.js +1 -1
  454. package/dist/components/co-list-footer.js +1 -1
  455. package/dist/components/co-list-item.js +1 -1
  456. package/dist/components/co-media-thumb.js +1 -1
  457. package/dist/components/co-menu-divider.js +1 -1
  458. package/dist/components/co-menu-item.js +1 -1
  459. package/dist/components/co-menu.js +1 -1
  460. package/dist/components/co-modal.js +1 -1
  461. package/dist/components/co-navbar.js +1 -1
  462. package/dist/components/co-number-field.js +1 -1
  463. package/dist/components/co-option-list.js +1 -1
  464. package/dist/components/co-overlay.js +1 -1
  465. package/dist/components/co-page-header.js +1 -1
  466. package/dist/components/co-phone-field.js +1 -1
  467. package/dist/components/co-popover.js +1 -1
  468. package/dist/components/co-progress-bar.js +1 -1
  469. package/dist/components/co-progress-circle.js +1 -1
  470. package/dist/components/co-radio-group.js +1 -1
  471. package/dist/components/co-radio.js +1 -1
  472. package/dist/components/co-rating.js +1 -1
  473. package/dist/components/co-ref-field.js +1 -1
  474. package/dist/components/co-rich-text-editor.js +1 -1
  475. package/dist/components/co-rich-text-toolbar.js +1 -1
  476. package/dist/components/co-rich-text-viewer.js +1 -1
  477. package/dist/components/co-row.js +1 -1
  478. package/dist/components/co-segmented-bar.js +1 -1
  479. package/dist/components/co-select.js +1 -1
  480. package/dist/components/co-separator.js +1 -1
  481. package/dist/components/co-sidebar-nav.js +1 -1
  482. package/dist/components/co-sidebar.js +1 -1
  483. package/dist/components/co-skeleton.js +1 -1
  484. package/dist/components/co-slider.js +1 -1
  485. package/dist/components/co-swatch-grid.d.ts +11 -0
  486. package/dist/components/co-swatch-grid.js +1 -0
  487. package/dist/components/co-switch.js +1 -1
  488. package/dist/components/co-tab-group.js +1 -1
  489. package/dist/components/co-tab.js +1 -1
  490. package/dist/components/co-tags-field.js +1 -1
  491. package/dist/components/co-textarea.js +1 -1
  492. package/dist/components/co-tile.d.ts +11 -0
  493. package/dist/components/co-tile.js +1 -0
  494. package/dist/components/co-time-field.js +1 -1
  495. package/dist/components/co-toast.js +1 -1
  496. package/dist/components/co-toggle-button-group.js +1 -1
  497. package/dist/components/co-toggle-button.js +1 -1
  498. package/dist/components/co-tooltip.js +1 -1
  499. package/dist/components/co-transfer-list.js +1 -1
  500. package/dist/components/co-tree-item.d.ts +11 -0
  501. package/dist/components/co-tree-item.js +1 -0
  502. package/dist/components/co-video.js +1 -1
  503. package/dist/components/index.js +1 -1
  504. package/dist/components/p-8XzG8pzY.js +1 -0
  505. package/dist/components/p-9VoFSbIH.js +1 -0
  506. package/dist/components/p-B1JT7us1.js +1 -0
  507. package/dist/components/{p-Dc_Kbari.js → p-B3Egz082.js} +1 -1
  508. package/dist/components/p-B9wdMd_0.js +1 -0
  509. package/dist/components/p-BRZci8B3.js +1 -0
  510. package/dist/components/{p-BRbgGqLw.js → p-BVGGRfNG.js} +1 -1
  511. package/dist/components/{p-B56LX2SH.js → p-BVdCvEza.js} +1 -1
  512. package/dist/components/p-BdmzslA5.js +1 -0
  513. package/dist/components/p-BmdKHBZP.js +1 -0
  514. package/dist/components/p-BtliEQAT.js +1 -0
  515. package/dist/components/{p-CT2enQ6h.js → p-Bw_b_czs.js} +1 -1
  516. package/dist/components/{p-NNxjElcX.js → p-C4sZjIDj.js} +1 -1
  517. package/dist/components/{p-Nt4JJxbL.js → p-C6WHpL5X.js} +1 -1
  518. package/dist/components/p-COJdaKBU.js +1 -0
  519. package/dist/components/p-COozgrEk.js +1 -0
  520. package/dist/components/{p-BAYo-RBt.js → p-CRxTFT_z.js} +1 -1
  521. package/dist/components/{p-uxdXViMV.js → p-CiYPJW0B.js} +1 -1
  522. package/dist/components/p-Cnfd6Zze.js +1 -0
  523. package/dist/components/{p-BhCVadcA.js → p-CxWo3qDo.js} +1 -1
  524. package/dist/components/p-D4XP17VP.js +1 -0
  525. package/dist/components/{p-e5KibEs8.js → p-DJ468fPu.js} +1 -1
  526. package/dist/components/p-DU-KOQ8L.js +1 -0
  527. package/dist/components/p-DXLeDZvr.js +1 -0
  528. package/dist/components/{p-DvR45CLa.js → p-Dn2wblrA.js} +1 -1
  529. package/dist/components/p-Dnz99Ox_.js +1 -0
  530. package/dist/components/p-DsuFNmTI.js +1 -0
  531. package/dist/components/{p-Du_CgT5E.js → p-Du8EpQb-.js} +1 -1
  532. package/dist/components/{p-DFlJMEJ-.js → p-DymSqdlK.js} +1 -1
  533. package/dist/components/p-Hi57w2_2.js +1 -0
  534. package/dist/components/{p-DNJAIVfI.js → p-KK2vAKs-.js} +1 -1
  535. package/dist/components/p-RVQJEYxa.js +1 -0
  536. package/dist/components/p-TGRbLkLz.js +1 -0
  537. package/dist/components/p-VcrjNCew.js +1 -0
  538. package/dist/components/{p-Dxa7c4Ap.js → p-dnaee7fS.js} +1 -1
  539. package/dist/components/p-nrwDl_gx.js +1 -0
  540. package/dist/components/{p-P4HlMBlL.js → p-zJ3pjFzW.js} +1 -1
  541. package/dist/esm/co-accordion.entry.js +3 -3
  542. package/dist/esm/co-action-bar.entry.js +3 -3
  543. package/dist/esm/co-app-shell.entry.js +3 -3
  544. package/dist/esm/co-audio-player.entry.js +4 -4
  545. package/dist/esm/co-autocomplete.entry.js +12 -5
  546. package/dist/esm/co-avatar-group.entry.js +3 -3
  547. package/dist/esm/co-avatar.entry.js +7 -4
  548. package/dist/esm/co-badge.entry.js +2 -2
  549. package/dist/esm/co-bottom-sheet.entry.js +5 -5
  550. package/dist/esm/co-breadcrumb-item.entry.js +3 -3
  551. package/dist/esm/co-breadcrumb.entry.js +2 -2
  552. package/dist/esm/co-button-group.entry.js +4 -3
  553. package/dist/esm/co-button.entry.js +9 -7
  554. package/dist/esm/co-calendar-month_2.entry.js +16 -4
  555. package/dist/esm/co-calendar_3.entry.js +76 -27
  556. package/dist/esm/co-card.entry.js +3 -3
  557. package/dist/esm/co-carousel-item.entry.js +2 -2
  558. package/dist/esm/co-carousel.entry.js +6 -3
  559. package/dist/esm/co-checkbox-group.entry.js +4 -4
  560. package/dist/esm/co-checkbox.entry.js +13 -5
  561. package/dist/esm/co-chip_2.entry.js +20 -7
  562. package/dist/esm/co-color-area.entry.js +167 -0
  563. package/dist/esm/co-color-picker.entry.js +5 -5
  564. package/dist/esm/co-color-slider.entry.js +187 -0
  565. package/dist/esm/co-column-picker.entry.js +23 -3
  566. package/dist/esm/co-combobox.entry.js +5 -5
  567. package/dist/esm/co-command-search.entry.js +5 -5
  568. package/dist/esm/co-data-table-pagination.entry.js +5 -5
  569. package/dist/esm/co-data-table.entry.js +3 -3
  570. package/dist/esm/co-date-picker.entry.js +10 -2
  571. package/dist/esm/co-date-range-picker.entry.js +11 -2
  572. package/dist/esm/co-date-range.entry.js +8 -2
  573. package/dist/esm/co-date-time-picker.entry.js +11 -4
  574. package/dist/esm/co-document-editor.entry.js +1165 -0
  575. package/dist/esm/co-drive-card.entry.js +2 -2
  576. package/dist/esm/co-drop-zone.entry.js +2 -2
  577. package/dist/esm/co-emoji-picker.entry.js +3 -3
  578. package/dist/esm/co-empty-state.entry.js +3 -3
  579. package/dist/esm/co-event-calendar.entry.js +5 -3
  580. package/dist/esm/co-event-popover.entry.js +7 -3
  581. package/dist/esm/co-fab.entry.js +7 -3
  582. package/dist/esm/co-file-field.entry.js +12 -8
  583. package/dist/esm/co-file-type-tile.entry.js +3 -3
  584. package/dist/esm/co-gradient-bar.entry.js +218 -0
  585. package/dist/esm/co-helper-text.entry.js +3 -3
  586. package/dist/esm/co-icon-button.entry.js +48 -9
  587. package/dist/esm/co-icon.entry.js +3 -3
  588. package/dist/esm/co-input.entry.js +14 -8
  589. package/dist/esm/co-json-field.entry.js +10 -5
  590. package/dist/esm/{co-tooltip.entry.js → co-kbd_2.entry.js} +194 -7
  591. package/dist/esm/co-lightbox.entry.js +5 -5
  592. package/dist/esm/co-list-footer.entry.js +2 -2
  593. package/dist/esm/co-list-item.entry.js +5 -5
  594. package/dist/esm/co-loader.entry.js +1 -1
  595. package/dist/esm/co-media-thumb.entry.js +3 -3
  596. package/dist/esm/co-menu-divider.entry.js +3 -3
  597. package/dist/esm/co-menu-item.entry.js +39 -41
  598. package/dist/esm/co-menu.entry.js +81 -5
  599. package/dist/esm/co-modal.entry.js +350 -7
  600. package/dist/esm/co-navbar.entry.js +3 -3
  601. package/dist/esm/co-number-field.entry.js +11 -5
  602. package/dist/esm/co-overlay.entry.js +8 -4
  603. package/dist/esm/co-page-header.entry.js +2 -2
  604. package/dist/esm/co-phone-field.entry.js +3 -3
  605. package/dist/esm/co-popover.entry.js +69 -6
  606. package/dist/esm/co-progress-bar.entry.js +3 -3
  607. package/dist/esm/co-progress-circle.entry.js +3 -3
  608. package/dist/esm/co-provider-logo_2.entry.js +2 -2
  609. package/dist/esm/co-radio-group.entry.js +4 -4
  610. package/dist/esm/co-radio.entry.js +4 -4
  611. package/dist/esm/co-rating.entry.js +11 -4
  612. package/dist/esm/co-ref-field.entry.js +14 -5
  613. package/dist/esm/co-rich-text-editor.entry.js +40 -92
  614. package/dist/esm/co-rich-text-toolbar.entry.js +80 -20
  615. package/dist/esm/co-rich-text-viewer.entry.js +9 -2
  616. package/dist/esm/co-row.entry.js +3 -3
  617. package/dist/esm/co-segmented-bar.entry.js +3 -3
  618. package/dist/esm/co-select.entry.js +171 -29
  619. package/dist/esm/co-separator.entry.js +2 -2
  620. package/dist/esm/co-sidebar-nav.entry.js +20 -5
  621. package/dist/esm/co-sidebar.entry.js +3 -3
  622. package/dist/esm/co-slider.entry.js +209 -23
  623. package/dist/esm/co-swatch-grid.entry.js +119 -0
  624. package/dist/esm/co-switch.entry.js +5 -5
  625. package/dist/esm/co-tab-group.entry.js +113 -4
  626. package/dist/esm/co-tab.entry.js +15 -5
  627. package/dist/esm/co-tags-field.entry.js +13 -8
  628. package/dist/esm/co-textarea.entry.js +6 -6
  629. package/dist/esm/co-tile.entry.js +59 -0
  630. package/dist/esm/co-time-field.entry.js +5 -2
  631. package/dist/esm/co-toast.entry.js +3 -3
  632. package/dist/esm/co-toggle-button-group.entry.js +29 -5
  633. package/dist/esm/co-toggle-button.entry.js +70 -6
  634. package/dist/esm/co-transfer-list.entry.js +7 -3
  635. package/dist/esm/co-tree-item.entry.js +108 -0
  636. package/dist/esm/co-video.entry.js +11 -3
  637. package/dist/esm/cobalt.js +3 -3
  638. package/dist/esm/{color-BRbgGqLw.js → color-BVGGRfNG.js} +10 -6
  639. package/dist/esm/{fieldChip-uyggU8VV.js → fieldChip-B2ctp2m6.js} +1 -1
  640. package/dist/esm/gradientStops-DDK0y8ra.js +145 -0
  641. package/dist/esm/hsv-COJdaKBU.js +90 -0
  642. package/dist/esm/index-Cpo8HTwr.js +142 -0
  643. package/dist/esm/{index-DH5lfRNj.js → index-DJkaRtbb.js} +67 -28
  644. package/dist/esm/loader.js +3 -3
  645. package/dist/esm/{index-BBIYyvq-.js → pagination-D9OfZUnY.js} +1728 -297
  646. package/dist/esm/{positioning-DFHRS9cJ.js → positioning-BtliEQAT.js} +45 -19
  647. package/dist/esm/{requiredMark-BCJUuZvC.js → requiredMark-D5C5NzOE.js} +1 -1
  648. package/dist/esm/rich-text-host-BmdKHBZP.js +111 -0
  649. package/dist/esm/{richTextI18n-BYKAgwq3.js → richTextI18n-xnrKkNWQ.js} +45 -0
  650. package/dist/esm/submenu-DU-KOQ8L.js +57 -0
  651. package/dist/esm/{toolbar-config-BAYo-RBt.js → toolbar-config-CRxTFT_z.js} +32 -0
  652. package/dist/types/components/co-accordion/co-accordion.d.ts +10 -0
  653. package/dist/types/components/co-action-bar/co-action-bar.d.ts +1 -0
  654. package/dist/types/components/co-app-shell/co-app-shell.d.ts +11 -0
  655. package/dist/types/components/co-audio-player/co-audio-player.d.ts +16 -0
  656. package/dist/types/components/co-autocomplete/co-autocomplete.d.ts +21 -0
  657. package/dist/types/components/co-avatar/co-avatar.d.ts +11 -2
  658. package/dist/types/components/co-avatar-group/co-avatar-group.d.ts +5 -0
  659. package/dist/types/components/co-badge/co-badge.d.ts +7 -0
  660. package/dist/types/components/co-bottom-sheet/co-bottom-sheet.d.ts +9 -0
  661. package/dist/types/components/co-breadcrumb/co-breadcrumb.d.ts +4 -0
  662. package/dist/types/components/co-breadcrumb-item/co-breadcrumb-item.d.ts +6 -0
  663. package/dist/types/components/co-button/co-button.d.ts +12 -4
  664. package/dist/types/components/co-button-group/co-button-group.d.ts +7 -0
  665. package/dist/types/components/co-calendar/calendarMarks.d.ts +15 -0
  666. package/dist/types/components/co-calendar/co-calendar.d.ts +18 -0
  667. package/dist/types/components/co-calendar-timegrid/co-calendar-timegrid.d.ts +23 -0
  668. package/dist/types/components/co-card/co-card.d.ts +9 -0
  669. package/dist/types/components/co-carousel/co-carousel.d.ts +12 -0
  670. package/dist/types/components/co-checkbox/co-checkbox.d.ts +15 -0
  671. package/dist/types/components/co-checkbox-group/co-checkbox-group.d.ts +5 -0
  672. package/dist/types/components/co-chip/co-chip.d.ts +13 -0
  673. package/dist/types/components/co-color-area/co-color-area.d.ts +65 -0
  674. package/dist/types/components/co-color-picker/co-color-picker.d.ts +2 -0
  675. package/dist/types/components/co-color-slider/co-color-slider.d.ts +62 -0
  676. package/dist/types/components/co-column-picker/co-column-picker.d.ts +32 -0
  677. package/dist/types/components/co-combobox/co-combobox.d.ts +14 -0
  678. package/dist/types/components/co-command-search/co-command-search.d.ts +15 -0
  679. package/dist/types/components/co-data-table/co-data-table.d.ts +5 -0
  680. package/dist/types/components/co-data-table-pagination/co-data-table-pagination.d.ts +12 -0
  681. package/dist/types/components/co-date-field/co-date-field.d.ts +11 -0
  682. package/dist/types/components/co-date-picker/co-date-picker.d.ts +30 -0
  683. package/dist/types/components/co-date-range/co-date-range.d.ts +12 -0
  684. package/dist/types/components/co-date-range-picker/co-date-range-picker.d.ts +33 -0
  685. package/dist/types/components/co-date-time-picker/co-date-time-picker.d.ts +22 -1
  686. package/dist/types/components/co-document-editor/change-throttle.d.ts +9 -0
  687. package/dist/types/components/co-document-editor/co-document-editor.d.ts +284 -0
  688. package/dist/types/components/co-document-editor/document-props.d.ts +6 -0
  689. package/dist/types/components/co-document-editor/header-tools.d.ts +11 -0
  690. package/dist/types/components/co-document-editor/image-bar.d.ts +50 -0
  691. package/dist/types/components/co-document-editor/page-styles.d.ts +1 -0
  692. package/dist/types/components/co-document-editor/zoom.d.ts +26 -0
  693. package/dist/types/components/co-drawer/co-drawer.d.ts +13 -0
  694. package/dist/types/components/co-drive-card/co-drive-card.d.ts +13 -0
  695. package/dist/types/components/co-drop-zone/co-drop-zone.d.ts +6 -1
  696. package/dist/types/components/co-emoji-picker/co-emoji-picker.d.ts +9 -0
  697. package/dist/types/components/co-empty-state/co-empty-state.d.ts +2 -0
  698. package/dist/types/components/co-event-calendar/co-event-calendar.d.ts +12 -16
  699. package/dist/types/components/co-event-popover/co-event-popover.d.ts +13 -0
  700. package/dist/types/components/co-fab/co-fab.d.ts +11 -0
  701. package/dist/types/components/co-file-field/co-file-field.d.ts +6 -0
  702. package/dist/types/components/co-file-type-tile/co-file-type-tile.d.ts +7 -0
  703. package/dist/types/components/co-gradient-bar/co-gradient-bar.d.ts +77 -0
  704. package/dist/types/components/co-helper-text/co-helper-text.d.ts +2 -0
  705. package/dist/types/components/co-icon/co-icon.d.ts +4 -0
  706. package/dist/types/components/co-icon-button/co-icon-button.d.ts +39 -2
  707. package/dist/types/components/co-input/co-input.d.ts +25 -5
  708. package/dist/types/components/co-json-field/co-json-field.d.ts +11 -0
  709. package/dist/types/components/co-kbd/co-kbd.d.ts +50 -0
  710. package/dist/types/components/co-list-footer/co-list-footer.d.ts +3 -0
  711. package/dist/types/components/co-list-item/co-list-item.d.ts +3 -0
  712. package/dist/types/components/co-loader/co-loader.d.ts +5 -0
  713. package/dist/types/components/co-media-thumb/co-media-thumb.d.ts +7 -0
  714. package/dist/types/components/co-menu/co-menu.d.ts +42 -1
  715. package/dist/types/components/co-menu-divider/co-menu-divider.d.ts +1 -0
  716. package/dist/types/components/co-menu-item/co-menu-item.d.ts +19 -0
  717. package/dist/types/components/co-modal/co-modal.d.ts +126 -5
  718. package/dist/types/components/co-navbar/co-navbar.d.ts +2 -0
  719. package/dist/types/components/co-number-field/co-number-field.d.ts +20 -0
  720. package/dist/types/components/co-option-list/co-option-list.d.ts +29 -1
  721. package/dist/types/components/co-option-list/optionListLogic.d.ts +3 -0
  722. package/dist/types/components/co-overlay/co-overlay.d.ts +10 -0
  723. package/dist/types/components/co-page-header/co-page-header.d.ts +3 -0
  724. package/dist/types/components/co-popover/co-popover.d.ts +51 -0
  725. package/dist/types/components/co-progress-bar/co-progress-bar.d.ts +3 -0
  726. package/dist/types/components/co-progress-circle/co-progress-circle.d.ts +3 -0
  727. package/dist/types/components/co-provider-logo/co-provider-logo.d.ts +3 -0
  728. package/dist/types/components/co-radio/co-radio.d.ts +8 -0
  729. package/dist/types/components/co-radio-group/co-radio-group.d.ts +5 -0
  730. package/dist/types/components/co-rating/co-rating.d.ts +15 -0
  731. package/dist/types/components/co-ref-field/co-ref-field.d.ts +42 -0
  732. package/dist/types/components/co-rich-text-editor/co-rich-text-editor.d.ts +31 -5
  733. package/dist/types/components/co-rich-text-toolbar/co-rich-text-toolbar.d.ts +20 -2
  734. package/dist/types/components/co-rich-text-viewer/co-rich-text-viewer.d.ts +8 -0
  735. package/dist/types/components/co-row/co-row.d.ts +3 -0
  736. package/dist/types/components/co-segmented-bar/co-segmented-bar.d.ts +6 -0
  737. package/dist/types/components/co-select/co-select.d.ts +73 -5
  738. package/dist/types/components/co-select/virtualRows.d.ts +44 -0
  739. package/dist/types/components/co-separator/co-separator.d.ts +7 -0
  740. package/dist/types/components/co-sidebar/co-sidebar.d.ts +8 -0
  741. package/dist/types/components/co-sidebar-nav/co-sidebar-nav.d.ts +1 -0
  742. package/dist/types/components/co-skeleton/co-skeleton.d.ts +3 -0
  743. package/dist/types/components/co-slider/co-slider.d.ts +160 -1
  744. package/dist/types/components/co-swatch-grid/co-swatch-grid.d.ts +38 -0
  745. package/dist/types/components/co-switch/co-switch.d.ts +9 -0
  746. package/dist/types/components/co-tab/co-tab.d.ts +20 -2
  747. package/dist/types/components/co-tab-group/co-tab-group.d.ts +46 -0
  748. package/dist/types/components/co-tab-group/revealTab.d.ts +29 -0
  749. package/dist/types/components/co-tags-field/co-tags-field.d.ts +11 -0
  750. package/dist/types/components/co-tile/co-tile.d.ts +45 -0
  751. package/dist/types/components/co-time-field/co-time-field.d.ts +5 -0
  752. package/dist/types/components/co-toast/co-toast.d.ts +9 -0
  753. package/dist/types/components/co-toggle-button/co-toggle-button.d.ts +45 -2
  754. package/dist/types/components/co-toggle-button-group/co-toggle-button-group.d.ts +30 -2
  755. package/dist/types/components/co-tooltip/co-tooltip.d.ts +22 -0
  756. package/dist/types/components/co-transfer-list/co-transfer-list.d.ts +12 -0
  757. package/dist/types/components/co-tree-item/co-tree-item.d.ts +75 -0
  758. package/dist/types/components/co-tree-item/treeItemI18n.d.ts +6 -0
  759. package/dist/types/components/co-video/co-video.d.ts +31 -0
  760. package/dist/types/components.d.ts +3905 -85
  761. package/dist/types/utils/color.d.ts +9 -1
  762. package/dist/types/utils/dragMove.d.ts +63 -0
  763. package/dist/types/utils/gradientBarI18n.d.ts +8 -0
  764. package/dist/types/utils/gradientStops.d.ts +63 -0
  765. package/dist/types/utils/hsv.d.ts +44 -0
  766. package/dist/types/utils/kbdI18n.d.ts +25 -0
  767. package/dist/types/utils/positioning.d.ts +24 -0
  768. package/dist/types/utils/rich-text-host.d.ts +41 -0
  769. package/dist/types/utils/richTextI18n.d.ts +15 -0
  770. package/dist/types/utils/submenu.d.ts +16 -2
  771. package/dist/types/utils/swatchGridI18n.d.ts +6 -0
  772. package/dist/types/utils/test/fake-block-layout.d.ts +7 -0
  773. package/dist/types/utils/test/prosemirror-dom-shim.d.ts +1 -0
  774. package/dist/types/utils/test/shared-contract-css.d.ts +9 -0
  775. package/package.json +5 -5
  776. package/dist/cobalt/p-0678c797.entry.js +0 -1
  777. package/dist/cobalt/p-1d3a79af.entry.js +0 -1
  778. package/dist/cobalt/p-216a63ee.entry.js +0 -1
  779. package/dist/cobalt/p-3d31c575.entry.js +0 -1
  780. package/dist/cobalt/p-416795f5.entry.js +0 -1
  781. package/dist/cobalt/p-56551580.entry.js +0 -1
  782. package/dist/cobalt/p-58137c9e.entry.js +0 -1
  783. package/dist/cobalt/p-5a3e4c81.entry.js +0 -1
  784. package/dist/cobalt/p-5c756787.entry.js +0 -1
  785. package/dist/cobalt/p-67f3b9d6.entry.js +0 -1
  786. package/dist/cobalt/p-6a4f3179.entry.js +0 -1
  787. package/dist/cobalt/p-71cbc53c.entry.js +0 -1
  788. package/dist/cobalt/p-72e52af7.entry.js +0 -1
  789. package/dist/cobalt/p-8530ad16.entry.js +0 -1
  790. package/dist/cobalt/p-8a74bf7d.entry.js +0 -1
  791. package/dist/cobalt/p-8e05b979.entry.js +0 -1
  792. package/dist/cobalt/p-8ebc0c12.entry.js +0 -1
  793. package/dist/cobalt/p-8f2199ff.entry.js +0 -1
  794. package/dist/cobalt/p-9246e09c.entry.js +0 -1
  795. package/dist/cobalt/p-99a655f6.entry.js +0 -1
  796. package/dist/cobalt/p-BYKAgwq3.js +0 -1
  797. package/dist/cobalt/p-CJW9H3Gi.js +0 -1
  798. package/dist/cobalt/p-DFHRS9cJ.js +0 -1
  799. package/dist/cobalt/p-DH5lfRNj.js +0 -2
  800. package/dist/cobalt/p-a1b422ca.entry.js +0 -1
  801. package/dist/cobalt/p-ade07307.entry.js +0 -1
  802. package/dist/cobalt/p-b0762fd8.entry.js +0 -1
  803. package/dist/cobalt/p-b698188c.entry.js +0 -1
  804. package/dist/cobalt/p-bde32f8b.entry.js +0 -1
  805. package/dist/cobalt/p-d375014b.entry.js +0 -1
  806. package/dist/cobalt/p-db805569.entry.js +0 -1
  807. package/dist/cobalt/p-e3aae282.entry.js +0 -1
  808. package/dist/cobalt/p-e49a564c.entry.js +0 -1
  809. package/dist/cobalt/p-ef301976.entry.js +0 -1
  810. package/dist/cobalt/p-fMqVDypp.js +0 -1
  811. package/dist/components/p-2EOI1nrz.js +0 -1
  812. package/dist/components/p-7TncUlLN.js +0 -1
  813. package/dist/components/p-B4NCaKrR.js +0 -1
  814. package/dist/components/p-BGDqldEg.js +0 -1
  815. package/dist/components/p-BJh68Jqe.js +0 -1
  816. package/dist/components/p-BrAFTkAn.js +0 -1
  817. package/dist/components/p-Bsh0JMGf.js +0 -1
  818. package/dist/components/p-CJW9H3Gi.js +0 -1
  819. package/dist/components/p-CWCYYQrF.js +0 -1
  820. package/dist/components/p-D9T7zKeL.js +0 -1
  821. package/dist/components/p-DFHRS9cJ.js +0 -1
  822. package/dist/components/p-DTPYZwaZ.js +0 -1
  823. package/dist/components/p-Dcg4krSX.js +0 -1
  824. package/dist/components/p-Dh8ffSjK.js +0 -1
@@ -1,16 +1,29 @@
1
1
  import { h } from "@stencil/core";
2
2
  import { afterEventFor } from "../co-overlay/overlayAfterClose";
3
3
  import { slotHasContent } from "../../utils/slotContent";
4
+ import { clampDragOffset, dragOffsetOf, isInteractiveDragTarget, } from "../../utils/dragMove";
4
5
  /**
6
+ * Ventana modal con header (título, descripción, ✕), cuerpo y footer de
7
+ * acciones, sobre un scrim que bloquea la página (`co-overlay`). Es
8
+ * controlada: la ✕, el scrim y Escape solo emiten `coClose`; quien la usa pone
9
+ * `open` en `false`. Wrapper Vue: `CoModal` de `@prolibu-suite/cobalt-vue`.
10
+ *
5
11
  * @slot - Modal body content
6
12
  * @slot header-leading - Control before the heading (e.g. a back arrow on a
7
13
  * second screen of the same modal)
8
14
  * @slot header-actions - Controls at the right end of the header (e.g. a settings
9
15
  * icon-button), before the close button
10
16
  * @slot footer - Footer with action buttons
11
- * @part modal | header | header-text | heading | description | body | footer -
12
- * layout/typography hooks for a consumer that must match a specific spec
13
- * (paddings, heading weight); colors stay on semantic tokens
17
+ *
18
+ * Los parts son ganchos de layout y tipografía (paddings, peso del título) para
19
+ * ajustar a una spec puntual; los colores siguen en tokens semánticos.
20
+ * @part modal - Panel del modal (superficie, radio y sombra).
21
+ * @part header - Header completo; con `movable` es la zona de arrastre.
22
+ * @part header-text - Contenedor del título y la descripción.
23
+ * @part heading - Título (`heading`).
24
+ * @part description - Descripción bajo el título.
25
+ * @part body - Cuerpo (slot por defecto).
26
+ * @part footer - Footer de acciones (slot `footer`).
14
27
  */
15
28
  export class CoModal {
16
29
  constructor() {
@@ -33,7 +46,8 @@ export class CoModal {
33
46
  */
34
47
  this.closeOnEscape = false;
35
48
  /**
36
- * Modal width: sm (400px), md (540px), lg (680px),
49
+ * Modal width: xs (369px, vía `--co-modal-width` — paneles anclados como
50
+ * "Tipografía y color"), sm (400px), md (540px), lg (680px),
37
51
  * full (min(1400px, 95vw) × 92vh — media/document viewers).
38
52
  *
39
53
  * `full` also drops the body padding and lets the body grow, so a slotted
@@ -46,6 +60,59 @@ export class CoModal {
46
60
  /** Hairline between header and body. `false` lets the body run straight
47
61
  * under the heading (Figma modals whose first row is a segmented control). */
48
62
  this.headerDivider = true;
63
+ /**
64
+ * Visual treatment. `default` = superficie squircle actual
65
+ * (radio `--co-modal-r`, sombra que sigue la silueta). `panel` = superficie
66
+ * plana (radio 12, borde `--co-semantic-border-subtle`, `--co-shadow-lg`),
67
+ * SIN máscara squircle — look de panel anclado, no de diálogo centrado.
68
+ *
69
+ * `dialog` = la anatomía del componente "Modal" del design system
70
+ * (Figma Prolibu UI Suite, nodo `1179:37247`): superficie plana radio 16
71
+ * (`--co-border-radius-lg`) sin borde ni sombra propios, título 22/500 y
72
+ * cuerpo 16/1.5 `text-secondary` sin divisor entre ambos, padding 32
73
+ * (`--co-spacing-3xl`), footer 16/24 con hairline `border-subtle` y botones
74
+ * cuadrados de radio 12. Sin máscara squircle. El ✕ (si `closable`) es el
75
+ * redondo de 32 del modo `panel`.
76
+ */
77
+ this.appearance = 'default';
78
+ /**
79
+ * Control del scrim. `none` = sin fondo oscuro y sin cierre por
80
+ * clic afuera — independiente de `closeOnOverlay` (que solo aplica cuando
81
+ * SÍ hay scrim). `co-overlay` es quien posee el único `<div>` de scrim del
82
+ * árbol, así que `none` implica no montar `<co-overlay>` (ver `inline`).
83
+ */
84
+ this.backdrop = 'default';
85
+ /**
86
+ * Renderiza en `position: fixed` con su propio `--co-modal-z-index` en vez
87
+ * de promoverse al TOP LAYER del browser. `co-overlay` promueve
88
+ * su scrim al top layer vía Popover API (`showPopover()`); el top layer
89
+ * SIEMPRE pinta por encima de cualquier `z-index` normal, así que un
90
+ * portal propio del consumidor (selector de fuente/color del editor) con
91
+ * z-index alto quedaría igual TAPADO detrás del modal. `inline` evita eso.
92
+ *
93
+ * `co-overlay` es también quien posee la promoción a top layer — no hay
94
+ * forma de pedirle "no te promuevas" sin tocar ese componente, así que,
95
+ * igual que `backdrop="none"`, `inline`
96
+ * implica no montar `<co-overlay>`: el panel pasa a posicionarse y apilarse
97
+ * solo (`.co-modal__frame--standalone`, ver co-modal.css).
98
+ */
99
+ this.inline = false;
100
+ /**
101
+ * Opt-in: el modal se MUEVE arrastrando su header. Default false →
102
+ * los consumidores actuales quedan byte-idénticos (ni DOM ni CSS cambian).
103
+ *
104
+ * Con `movable`, el `part="header"` entero es la zona de agarre (`cursor:
105
+ * grab`), salvo los controles que contenga (el ✕, y cualquier botón, enlace
106
+ * o campo: ver `isInteractiveDragTarget`). Soltar confirma la posición;
107
+ * `pointercancel` o perder el foco de la ventana la CANCELAN y dejan la
108
+ * anterior. La posición no se persiste: cerrar y reabrir devuelve el panel a
109
+ * su lugar por defecto.
110
+ *
111
+ * Se llama `movable` y no `draggable` a propósito: `draggable` es un atributo
112
+ * global de HTML (arrastre nativo HTML5) y una prop de React, y una prop del
113
+ * mismo nombre taparía `HTMLElement.draggable` con dos semánticas encimadas.
114
+ */
115
+ this.movable = false;
49
116
  /* `:empty` can't see across a <slot>, so slotted presence is tracked in JS */
50
117
  this.hasFooter = false;
51
118
  this.handleFooterSlotChange = (e) => {
@@ -58,6 +125,12 @@ export class CoModal {
58
125
  this.handleCloseClick = () => {
59
126
  this.coClose.emit();
60
127
  };
128
+ /** Freno del clic del panel: existe SOLO para que un clic adentro no llegue
129
+ * al `<co-overlay>`, que cierra con cualquier clic sobre su div. Sin
130
+ * overlay (`inline` / `backdrop="none"`) no hay nada que proteger, y el
131
+ * freno se tragaba los `onClick` de React del contenido proyectado (React
132
+ * delega en la raíz; el camino compuesto del evento cruza este div). Por
133
+ * eso se monta condicionado a `usesOverlay` — ver `render()`. */
61
134
  this.stopPropagation = (e) => {
62
135
  e.stopPropagation();
63
136
  };
@@ -70,6 +143,84 @@ export class CoModal {
70
143
  else if (ev === 'after-close')
71
144
  this.coAfterClose.emit();
72
145
  };
146
+ // ── Arrastre por el header (Task D1) ──────────────────────────────────
147
+ /** Gesto en curso: pinta el cursor `grabbing` (única razón para re-render). */
148
+ this.dragging = false;
149
+ /** Desplazamiento YA confirmado. El gesto siguiente arranca desde acá. */
150
+ this.committedOffset = { x: 0, y: 0 };
151
+ /** Desplazamiento en vivo (= el confirmado mientras no hay gesto). */
152
+ this.liveOffset = { x: 0, y: 0 };
153
+ this.handleDragDown = (e) => {
154
+ var _a;
155
+ // Solo el botón primario; un segundo puntero no roba el gesto en curso.
156
+ if (!this.movable || this.dragging || e.button !== 0)
157
+ return;
158
+ // El ✕ (y cualquier control que el header llegue a tener) no arrastra.
159
+ if (isInteractiveDragTarget(e, this.headerEl))
160
+ return;
161
+ const rect = (_a = this.modalEl) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
162
+ if (!rect)
163
+ return;
164
+ // Evita seleccionar el título al arrastrar. El foco NO se toca: el header
165
+ // no es un control, no entra al tab-order ni cambia el aria-labelledby.
166
+ e.preventDefault();
167
+ this.dragging = true;
168
+ this.dragPointerId = e.pointerId;
169
+ this.dragStart = { x: e.clientX, y: e.clientY };
170
+ // Caja SIN trasladar: `getBoundingClientRect` la devuelve con el
171
+ // desplazamiento ya aplicado, pero el offset que se acota es absoluto
172
+ // desde el origen sin trasladar (`committedOffset + delta`). Mezclarlos
173
+ // corría el rango permitido exactamente `committedOffset` px en cada
174
+ // gesto nuevo, y del segundo en adelante el panel se iba de pantalla.
175
+ this.dragRect = {
176
+ left: rect.left - this.committedOffset.x,
177
+ top: rect.top - this.committedOffset.y,
178
+ width: rect.width,
179
+ height: rect.height,
180
+ };
181
+ this.dragViewport = { width: window.innerWidth, height: window.innerHeight };
182
+ this.capturePointer(e);
183
+ // El listener del blur vive solo mientras dura el gesto: sin `movable` (o
184
+ // sin arrastre en curso) el componente no engancha nada en `window`.
185
+ window.addEventListener('blur', this.handleWindowBlur);
186
+ };
187
+ this.handleDragMove = (e) => {
188
+ if (!this.isActiveDragPointer(e))
189
+ return;
190
+ if (!this.dragStart || !this.dragRect || !this.dragViewport)
191
+ return;
192
+ const raw = dragOffsetOf(this.committedOffset, this.dragStart, { x: e.clientX, y: e.clientY });
193
+ this.writeOffset(clampDragOffset(raw, this.dragRect, this.dragViewport));
194
+ };
195
+ /** Soltar CONFIRMA la posición alcanzada. */
196
+ this.handleDragUp = (e) => {
197
+ if (!this.isActiveDragPointer(e))
198
+ return;
199
+ this.committedOffset = this.liveOffset;
200
+ this.releasePointer(e);
201
+ this.endDrag();
202
+ };
203
+ /** `pointercancel` CANCELA: el panel vuelve a la última posición confirmada. */
204
+ this.handleDragCancel = (e) => {
205
+ if (!this.isActiveDragPointer(e))
206
+ return;
207
+ this.releasePointer(e);
208
+ this.writeOffset(this.committedOffset);
209
+ this.endDrag();
210
+ };
211
+ /** Perder el foco de la ventana (alt-tab, un iframe que se lo lleva) cancela igual que `pointercancel`. */
212
+ this.handleWindowBlur = () => {
213
+ if (!this.dragging)
214
+ return;
215
+ this.writeOffset(this.committedOffset);
216
+ this.endDrag();
217
+ };
218
+ }
219
+ /** Verdadero cuando NO corresponde montar `<co-overlay>` — ver doc de
220
+ * `backdrop` e `inline` arriba: ambas comparten el mismo mecanismo porque
221
+ * co-overlay es la única superficie dueña del scrim Y del top layer. */
222
+ get usesOverlay() {
223
+ return this.backdrop !== 'none' && !this.inline;
73
224
  }
74
225
  handleKeydown(e) {
75
226
  if (!this.open || !this.closeOnEscape)
@@ -77,18 +228,122 @@ export class CoModal {
77
228
  if (e.key === 'Escape')
78
229
  this.coClose.emit();
79
230
  }
231
+ /**
232
+ * La posición no se persiste: cada APERTURA arranca desde la posición por
233
+ * defecto. El reset va al abrir y no al cerrar a propósito — reseteando al
234
+ * cerrar, el panel se teletransportaba al centro mientras corría su
235
+ * animación de salida (un consumidor que lo deja montado y solo apaga
236
+ * `open` lo veía saltar).
237
+ */
238
+ resetPositionOnOpen(open) {
239
+ this.endDrag();
240
+ if (!open)
241
+ return;
242
+ this.committedOffset = { x: 0, y: 0 };
243
+ this.writeOffset({ x: 0, y: 0 });
244
+ }
245
+ disconnectedCallback() {
246
+ // Desmontarse en pleno gesto no debe dejar el listener colgado.
247
+ window.removeEventListener('blur', this.handleWindowBlur);
248
+ }
249
+ endDrag() {
250
+ window.removeEventListener('blur', this.handleWindowBlur);
251
+ this.dragging = false;
252
+ this.dragPointerId = undefined;
253
+ this.dragStart = undefined;
254
+ this.dragRect = undefined;
255
+ this.dragViewport = undefined;
256
+ }
257
+ /** `==`: en jsdom los MouseEvent traen `pointerId` undefined y deben seguir pasando. */
258
+ isActiveDragPointer(e) {
259
+ // eslint-disable-next-line eqeqeq
260
+ return this.dragging && e.pointerId == this.dragPointerId;
261
+ }
262
+ /** `setPointerCapture` sigue el gesto fuera del header (y garantiza el `pointercancel`). */
263
+ capturePointer(e) {
264
+ const el = this.headerEl;
265
+ if (!el || typeof el.setPointerCapture !== 'function' || e.pointerId == null)
266
+ return;
267
+ try {
268
+ el.setPointerCapture(e.pointerId);
269
+ }
270
+ catch (_a) {
271
+ /* pointerId inactivo (evento sintético): sin captura, el gesto vive dentro del header */
272
+ }
273
+ }
274
+ releasePointer(e) {
275
+ const el = this.headerEl;
276
+ if (!el || typeof el.releasePointerCapture !== 'function' || e.pointerId == null)
277
+ return;
278
+ try {
279
+ el.releasePointerCapture(e.pointerId);
280
+ }
281
+ catch (_a) {
282
+ /* ya liberado */
283
+ }
284
+ }
285
+ /**
286
+ * Escribe el desplazamiento como custom property en el panel; la regla que la
287
+ * consume vive en `.co-modal--movable` (co-modal.css).
288
+ *
289
+ * Va por el DOM y no por el `style` del vdom a propósito: el `transform` del
290
+ * panel es la animación de apertura (`scale`), así que el desplazamiento usa
291
+ * la propiedad independiente `translate` — se compone con ese transform, no
292
+ * dispara layout, y al no declararla el vdom ningún re-render la pisa.
293
+ */
294
+ writeOffset(offset) {
295
+ this.liveOffset = offset;
296
+ const el = this.modalEl;
297
+ if (!el)
298
+ return;
299
+ if (offset.x === 0 && offset.y === 0)
300
+ el.style.removeProperty('--co-modal-translate');
301
+ else
302
+ el.style.setProperty('--co-modal-translate', `${offset.x}px ${offset.y}px`);
303
+ }
80
304
  render() {
81
- return (h("co-overlay", { key: '9b796364a697af4d4a0ede50e5dd5516ccaa299f', open: this.open, onCoClose: this.handleOverlayClick }, h("div", { key: 'bea863aedb405cdc492277add25e2c08ea7ef258', class: "co-modal__frame co-sq-elevation-fallback" }, h("div", { key: '05f9e86f7a813243913f60c6a042fb93ed65a463', class: {
305
+ // `panel` (Task C12) y `dialog` (Task M1) no usan la receta squircle:
306
+ // superficies planas con radio/borde/sombra propios declarados en
307
+ // co-modal.css. (Las dos comparaciones van literales: el guard
308
+ // squircle-surface-guard.test.ts las busca por texto.)
309
+ const squircle = this.appearance !== 'panel' && this.appearance !== 'dialog';
310
+ const flat = !squircle;
311
+ const closeIconSize = flat ? 18 : 20;
312
+ // Receta squircle: global/squircle-surface.css. El frame lleva el
313
+ // drop-shadow SOLO en el fallback (.co-sq-elevation-fallback); el panel
314
+ // lleva recorte + box-shadow (Chromium) y conserva la animación de
315
+ // open/close + onTransitionEnd sin cambios.
316
+ const frame = (h("div", { class: {
317
+ 'co-modal__frame': true,
318
+ 'co-sq-elevation-fallback': squircle,
319
+ // Ver doc de `backdrop`/`inline` en los @Prop: sin <co-overlay> el
320
+ // frame se posiciona y apila solo (position:fixed + z-index).
321
+ 'co-modal__frame--standalone': !this.usesOverlay,
322
+ } }, h("div", { class: {
82
323
  'co-modal': true,
83
- 'co-sq-clip': true,
84
- 'co-sq-elevation': true,
324
+ 'co-sq-clip': squircle,
325
+ 'co-sq-elevation': squircle,
85
326
  'co-modal--open': this.open,
327
+ 'co-modal--xs': this.size === 'xs',
86
328
  'co-modal--sm': this.size === 'sm',
87
329
  'co-modal--lg': this.size === 'lg',
88
330
  'co-modal--full': this.size === 'full',
89
331
  'co-modal--no-dividers': this.noDividers,
90
332
  'co-modal--no-header-divider': !this.headerDivider,
91
- }, part: "modal", ref: (el) => (this.modalEl = el), role: "dialog", "aria-modal": "true", "aria-labelledby": this.heading ? 'modal-heading' : undefined, onClick: this.stopPropagation, onTransitionEnd: this.handleTransitionEnd }, h("div", { key: '8ecd9f7f4413339e484710e2abef1c21fc7f25d0', class: "co-modal__header", part: "header" }, h("slot", { key: '09df61b3aac8a26e0eb85a6a6aa48f9a7f547dbf', name: "header-leading" }), h("div", { key: '8e9a55561a1b5615f77eb3eb96284ddc68eddbc3', class: "co-modal__header-text", part: "header-text" }, h("h2", { key: '65c083247543448d9f527592cd8614a4c713cf4c', class: "co-modal__heading", part: "heading", id: "modal-heading" }, this.heading), this.description && (h("p", { key: 'c871aa6549cf56265a02048ca18f736d92d1a482', class: "co-modal__description", part: "description" }, this.description))), h("slot", { key: '106a5be71c8c03736313c1084c61d3b836ebb495', name: "header-actions" }), this.closable && (h("button", { key: 'a0df67cd09e5f414c58f9f67f6a92c58b9f4773b', class: "co-modal__close", type: "button", "aria-label": "Close", onClick: this.handleCloseClick }, h("co-icon", { key: 'e766981fff30de0c79599756dde74c5981d5c9fd', name: "x", size: 20 })))), !this.noDividers && (h("div", { key: '355e455c19cbc4a0783c0e0c2689265e6f599484', class: "co-modal__body", part: "body" }, h("slot", { key: 'fa6d3310464ff33de17618561182736bc6cef0e5' }))), h("div", { key: '43b89751fac3fd1b707a284d260e91dd7d7ea8a6', class: { 'co-modal__footer': true, 'co-modal__footer--empty': !this.hasFooter }, part: "footer" }, h("slot", { key: 'e9821b0712a6903c923f9bb50393e4b85545c211', name: "footer", onSlotchange: this.handleFooterSlotChange }))))));
333
+ 'co-modal--panel': this.appearance === 'panel',
334
+ 'co-modal--dialog': this.appearance === 'dialog',
335
+ 'co-modal--movable': this.movable,
336
+ }, part: "modal", ref: (el) => (this.modalEl = el), role: "dialog", "aria-modal": "true", "aria-labelledby": this.heading ? 'modal-heading' : undefined,
337
+ // Sin <co-overlay> el clic sigue su curso (los onClick delegados del
338
+ // consumidor lo necesitan); con overlay, el freno de siempre.
339
+ onClick: this.usesOverlay ? this.stopPropagation : undefined, onTransitionEnd: this.handleTransitionEnd }, h("div", { class: {
340
+ 'co-modal__header': true,
341
+ 'co-modal__header--movable': this.movable,
342
+ 'co-modal__header--dragging': this.dragging,
343
+ }, part: "header", ref: (el) => (this.headerEl = el), onPointerDown: this.movable ? this.handleDragDown : undefined, onPointerMove: this.movable ? this.handleDragMove : undefined, onPointerUp: this.movable ? this.handleDragUp : undefined, onPointerCancel: this.movable ? this.handleDragCancel : undefined }, h("slot", { name: "header-leading" }), h("div", { class: "co-modal__header-text", part: "header-text" }, h("h2", { class: "co-modal__heading", part: "heading", id: "modal-heading" }, this.heading), this.description && (h("p", { class: "co-modal__description", part: "description" }, this.description))), h("slot", { name: "header-actions" }), this.closable && (h("button", { class: "co-modal__close", type: "button", "aria-label": "Close", onClick: this.handleCloseClick }, h("co-icon", { name: "x", size: closeIconSize })))), !this.noDividers && (h("div", { class: "co-modal__body", part: "body" }, h("slot", null))), h("div", { class: { 'co-modal__footer': true, 'co-modal__footer--empty': !this.hasFooter }, part: "footer" }, h("slot", { name: "footer", onSlotchange: this.handleFooterSlotChange })))));
344
+ if (!this.usesOverlay)
345
+ return frame;
346
+ return (h("co-overlay", { open: this.open, onCoClose: this.handleOverlayClick }, frame));
92
347
  }
93
348
  static get is() { return "co-modal"; }
94
349
  static get encapsulation() { return "shadow"; }
@@ -227,15 +482,15 @@ export class CoModal {
227
482
  "type": "string",
228
483
  "mutable": false,
229
484
  "complexType": {
230
- "original": "'sm' | 'md' | 'lg' | 'full'",
231
- "resolved": "\"full\" | \"lg\" | \"md\" | \"sm\"",
485
+ "original": "'xs' | 'sm' | 'md' | 'lg' | 'full'",
486
+ "resolved": "\"full\" | \"lg\" | \"md\" | \"sm\" | \"xs\"",
232
487
  "references": {}
233
488
  },
234
489
  "required": false,
235
490
  "optional": false,
236
491
  "docs": {
237
492
  "tags": [],
238
- "text": "Modal width: sm (400px), md (540px), lg (680px),\nfull (min(1400px, 95vw) \u00D7 92vh \u2014 media/document viewers).\n\n`full` also drops the body padding and lets the body grow, so a slotted\n<video>/<iframe> fills the panel edge-to-edge instead of sitting in a\ncontent-height box."
493
+ "text": "Modal width: xs (369px, v\u00EDa `--co-modal-width` \u2014 paneles anclados como\n\"Tipograf\u00EDa y color\"), sm (400px), md (540px), lg (680px),\nfull (min(1400px, 95vw) \u00D7 92vh \u2014 media/document viewers).\n\n`full` also drops the body padding and lets the body grow, so a slotted\n<video>/<iframe> fills the panel edge-to-edge instead of sitting in a\ncontent-height box."
239
494
  },
240
495
  "getter": false,
241
496
  "setter": false,
@@ -282,12 +537,93 @@ export class CoModal {
282
537
  "reflect": false,
283
538
  "attribute": "header-divider",
284
539
  "defaultValue": "true"
540
+ },
541
+ "appearance": {
542
+ "type": "string",
543
+ "mutable": false,
544
+ "complexType": {
545
+ "original": "'default' | 'panel' | 'dialog'",
546
+ "resolved": "\"default\" | \"dialog\" | \"panel\"",
547
+ "references": {}
548
+ },
549
+ "required": false,
550
+ "optional": false,
551
+ "docs": {
552
+ "tags": [],
553
+ "text": "Visual treatment. `default` = superficie squircle actual\n(radio `--co-modal-r`, sombra que sigue la silueta). `panel` = superficie\nplana (radio 12, borde `--co-semantic-border-subtle`, `--co-shadow-lg`),\nSIN m\u00E1scara squircle \u2014 look de panel anclado, no de di\u00E1logo centrado.\n\n`dialog` = la anatom\u00EDa del componente \"Modal\" del design system\n(Figma Prolibu UI Suite, nodo `1179:37247`): superficie plana radio 16\n(`--co-border-radius-lg`) sin borde ni sombra propios, t\u00EDtulo 22/500 y\ncuerpo 16/1.5 `text-secondary` sin divisor entre ambos, padding 32\n(`--co-spacing-3xl`), footer 16/24 con hairline `border-subtle` y botones\ncuadrados de radio 12. Sin m\u00E1scara squircle. El \u2715 (si `closable`) es el\nredondo de 32 del modo `panel`."
554
+ },
555
+ "getter": false,
556
+ "setter": false,
557
+ "reflect": true,
558
+ "attribute": "appearance",
559
+ "defaultValue": "'default'"
560
+ },
561
+ "backdrop": {
562
+ "type": "string",
563
+ "mutable": false,
564
+ "complexType": {
565
+ "original": "'default' | 'none'",
566
+ "resolved": "\"default\" | \"none\"",
567
+ "references": {}
568
+ },
569
+ "required": false,
570
+ "optional": false,
571
+ "docs": {
572
+ "tags": [],
573
+ "text": "Control del scrim. `none` = sin fondo oscuro y sin cierre por\nclic afuera \u2014 independiente de `closeOnOverlay` (que solo aplica cuando\nS\u00CD hay scrim). `co-overlay` es quien posee el \u00FAnico `<div>` de scrim del\n\u00E1rbol, as\u00ED que `none` implica no montar `<co-overlay>` (ver `inline`)."
574
+ },
575
+ "getter": false,
576
+ "setter": false,
577
+ "reflect": true,
578
+ "attribute": "backdrop",
579
+ "defaultValue": "'default'"
580
+ },
581
+ "inline": {
582
+ "type": "boolean",
583
+ "mutable": false,
584
+ "complexType": {
585
+ "original": "boolean",
586
+ "resolved": "boolean",
587
+ "references": {}
588
+ },
589
+ "required": false,
590
+ "optional": false,
591
+ "docs": {
592
+ "tags": [],
593
+ "text": "Renderiza en `position: fixed` con su propio `--co-modal-z-index` en vez\nde promoverse al TOP LAYER del browser. `co-overlay` promueve\nsu scrim al top layer v\u00EDa Popover API (`showPopover()`); el top layer\nSIEMPRE pinta por encima de cualquier `z-index` normal, as\u00ED que un\nportal propio del consumidor (selector de fuente/color del editor) con\nz-index alto quedar\u00EDa igual TAPADO detr\u00E1s del modal. `inline` evita eso.\n\n`co-overlay` es tambi\u00E9n quien posee la promoci\u00F3n a top layer \u2014 no hay\nforma de pedirle \"no te promuevas\" sin tocar ese componente, as\u00ED que,\nigual que `backdrop=\"none\"`, `inline`\nimplica no montar `<co-overlay>`: el panel pasa a posicionarse y apilarse\nsolo (`.co-modal__frame--standalone`, ver co-modal.css)."
594
+ },
595
+ "getter": false,
596
+ "setter": false,
597
+ "reflect": true,
598
+ "attribute": "inline",
599
+ "defaultValue": "false"
600
+ },
601
+ "movable": {
602
+ "type": "boolean",
603
+ "mutable": false,
604
+ "complexType": {
605
+ "original": "boolean",
606
+ "resolved": "boolean",
607
+ "references": {}
608
+ },
609
+ "required": false,
610
+ "optional": false,
611
+ "docs": {
612
+ "tags": [],
613
+ "text": "Opt-in: el modal se MUEVE arrastrando su header. Default false \u2192\nlos consumidores actuales quedan byte-id\u00E9nticos (ni DOM ni CSS cambian).\n\nCon `movable`, el `part=\"header\"` entero es la zona de agarre (`cursor:\ngrab`), salvo los controles que contenga (el \u2715, y cualquier bot\u00F3n, enlace\no campo: ver `isInteractiveDragTarget`). Soltar confirma la posici\u00F3n;\n`pointercancel` o perder el foco de la ventana la CANCELAN y dejan la\nanterior. La posici\u00F3n no se persiste: cerrar y reabrir devuelve el panel a\nsu lugar por defecto.\n\nSe llama `movable` y no `draggable` a prop\u00F3sito: `draggable` es un atributo\nglobal de HTML (arrastre nativo HTML5) y una prop de React, y una prop del\nmismo nombre tapar\u00EDa `HTMLElement.draggable` con dos sem\u00E1nticas encimadas."
614
+ },
615
+ "getter": false,
616
+ "setter": false,
617
+ "reflect": true,
618
+ "attribute": "movable",
619
+ "defaultValue": "false"
285
620
  }
286
621
  };
287
622
  }
288
623
  static get states() {
289
624
  return {
290
- "hasFooter": {}
625
+ "hasFooter": {},
626
+ "dragging": {}
291
627
  };
292
628
  }
293
629
  static get events() {
@@ -338,6 +674,12 @@ export class CoModal {
338
674
  }
339
675
  }];
340
676
  }
677
+ static get watchers() {
678
+ return [{
679
+ "propName": "open",
680
+ "methodName": "resetPositionOnOpen"
681
+ }];
682
+ }
341
683
  static get listeners() {
342
684
  return [{
343
685
  "name": "keydown",
@@ -1,3 +1,10 @@
1
+ /**
2
+ * @prop --co-navbar-padding-x: Padding horizontal en las tallas `sm` y `md`.
3
+ * @prop --co-navbar-padding-x-start: Padding izquierdo en la talla `lg` (default 12px).
4
+ * @prop --co-navbar-padding-x-end: Padding derecho en la talla `lg` (default 24px).
5
+ * @prop --co-navbar-bg: Fondo de la barra; cada `variant` lo asigna en el elemento interno, así que se sobrescribe vía `co-navbar::part(navbar)`.
6
+ * @prop --co-navbar-color: Color de texto de la barra; igual que el fondo, vía `::part(navbar)`.
7
+ */
1
8
  :host {
2
9
  display: block;
3
10
  }
@@ -2,7 +2,9 @@ import { h } from "@stencil/core";
2
2
  /**
3
3
  * Horizontal toolbar container. Place any content inside the default slot.
4
4
  * Works like Quasar's q-toolbar — a styled flex row.
5
+ * Wrapper Vue: `CoNavbar` de `@prolibu-suite/cobalt-vue`.
5
6
  * @slot - Content (buttons, titles, icons, etc.)
7
+ * @part navbar - La barra.
6
8
  */
7
9
  export class CoNavbar {
8
10
  constructor() {
@@ -14,12 +16,12 @@ export class CoNavbar {
14
16
  this.rounded = false;
15
17
  }
16
18
  render() {
17
- return (h("div", { key: '9899b395fdf793bf9b7e47509b81eb559aac0b56', class: {
19
+ return (h("div", { key: '68c78b33434a32372eef9763b0c11c9a185f6ef8', class: {
18
20
  'co-navbar': true,
19
21
  [`co-navbar--${this.variant}`]: true,
20
22
  [`co-navbar--${this.size}`]: true,
21
23
  'co-navbar--rounded': this.rounded,
22
- }, part: "navbar", role: "toolbar" }, h("slot", { key: 'c863bcf8dc9eddab771922a81e11c1966bfe8d2e' })));
24
+ }, part: "navbar", role: "toolbar" }, h("slot", { key: 'a9d05ff60065f85dc24e941478a18fa40466143f' })));
23
25
  }
24
26
  static get is() { return "co-navbar"; }
25
27
  static get encapsulation() { return "shadow"; }