@prolibu-suite/cobalt-core 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (515) hide show
  1. package/custom-elements.json +8266 -5138
  2. package/dist/cjs/co-action-bar.cjs.entry.js +89 -0
  3. package/dist/cjs/co-app-shell.cjs.entry.js +2 -2
  4. package/dist/cjs/co-audio-player.cjs.entry.js +279 -0
  5. package/dist/cjs/co-avatar_2.cjs.entry.js +3 -3
  6. package/dist/cjs/co-badge.cjs.entry.js +1 -1
  7. package/dist/cjs/co-bottom-sheet.cjs.entry.js +3 -3
  8. package/dist/cjs/co-breadcrumb-item.cjs.entry.js +2 -2
  9. package/dist/cjs/co-breadcrumb.cjs.entry.js +1 -1
  10. package/dist/cjs/co-button-group.cjs.entry.js +2 -2
  11. package/dist/cjs/co-button.cjs.entry.js +12 -5
  12. package/dist/cjs/co-calendar-month_2.cjs.entry.js +1601 -0
  13. package/dist/cjs/co-calendar_3.cjs.entry.js +9 -9
  14. package/dist/cjs/co-card.cjs.entry.js +2 -2
  15. package/dist/cjs/co-carousel-item.cjs.entry.js +1 -1
  16. package/dist/cjs/co-carousel.cjs.entry.js +3 -3
  17. package/dist/cjs/co-checkbox.cjs.entry.js +4 -4
  18. package/dist/cjs/co-chip_2.cjs.entry.js +95 -6
  19. package/dist/cjs/co-color-picker.cjs.entry.js +2 -2
  20. package/dist/cjs/co-column-picker.cjs.entry.js +2 -2
  21. package/dist/cjs/co-data-table-pagination.cjs.entry.js +4 -4
  22. package/dist/cjs/co-data-table.cjs.entry.js +1 -1
  23. package/dist/cjs/co-date-picker.cjs.entry.js +1 -1
  24. package/dist/cjs/co-date-range-picker.cjs.entry.js +2 -2
  25. package/dist/cjs/co-date-range.cjs.entry.js +1 -1
  26. package/dist/cjs/co-date-time-picker.cjs.entry.js +409 -0
  27. package/dist/cjs/co-drive-card.cjs.entry.js +1 -1
  28. package/dist/cjs/co-drop-zone.cjs.entry.js +1 -1
  29. package/dist/cjs/co-empty-state.cjs.entry.js +2 -2
  30. package/dist/cjs/co-event-calendar.cjs.entry.js +118 -17
  31. package/dist/cjs/co-event-popover.cjs.entry.js +132 -0
  32. package/dist/cjs/co-fab.cjs.entry.js +2 -2
  33. package/dist/cjs/co-file-field.cjs.entry.js +5 -5
  34. package/dist/cjs/co-file-type-tile.cjs.entry.js +2 -2
  35. package/dist/cjs/co-helper-text.cjs.entry.js +2 -2
  36. package/dist/cjs/co-icon-button.cjs.entry.js +1 -1
  37. package/dist/cjs/co-icon.cjs.entry.js +2 -2
  38. package/dist/cjs/co-json-field.cjs.entry.js +3 -3
  39. package/dist/cjs/co-lightbox.cjs.entry.js +5 -5
  40. package/dist/cjs/co-list-footer.cjs.entry.js +1 -1
  41. package/dist/cjs/co-list-item.cjs.entry.js +4 -4
  42. package/dist/cjs/co-media-thumb.cjs.entry.js +2 -2
  43. package/dist/cjs/co-menu-divider.cjs.entry.js +1 -1
  44. package/dist/cjs/co-menu-item.cjs.entry.js +2 -2
  45. package/dist/cjs/co-menu.cjs.entry.js +1 -1
  46. package/dist/cjs/co-modal.cjs.entry.js +2 -2
  47. package/dist/cjs/co-navbar.cjs.entry.js +2 -2
  48. package/dist/cjs/co-number-field.cjs.entry.js +2 -2
  49. package/dist/cjs/co-overlay.cjs.entry.js +1 -1
  50. package/dist/cjs/co-page-header.cjs.entry.js +1 -1
  51. package/dist/cjs/co-phone-field.cjs.entry.js +1 -1
  52. package/dist/cjs/co-popover.cjs.entry.js +1 -1
  53. package/dist/cjs/co-progress-bar.cjs.entry.js +2 -2
  54. package/dist/cjs/co-progress-circle.cjs.entry.js +2 -2
  55. package/dist/cjs/co-provider-logo_2.cjs.entry.js +72 -0
  56. package/dist/cjs/co-radio.cjs.entry.js +3 -3
  57. package/dist/cjs/co-rating.cjs.entry.js +3 -3
  58. package/dist/cjs/co-ref-field.cjs.entry.js +6 -2
  59. package/dist/cjs/co-rich-text-editor.cjs.entry.js +4 -4
  60. package/dist/cjs/co-rich-text-toolbar.cjs.entry.js +1 -1
  61. package/dist/cjs/co-row.cjs.entry.js +2 -2
  62. package/dist/cjs/co-select.cjs.entry.js +1 -1
  63. package/dist/cjs/co-separator.cjs.entry.js +1 -1
  64. package/dist/cjs/co-sidebar-nav.cjs.entry.js +12 -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 +19 -3
  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-toggle-button-group.cjs.entry.js +2 -2
  73. package/dist/cjs/co-toggle-button.cjs.entry.js +2 -2
  74. package/dist/cjs/co-video.cjs.entry.js +2 -2
  75. package/dist/cjs/cobalt.cjs.js +1 -1
  76. package/dist/cjs/{dateI18n-BdiNAl0_.js → dateI18n-wblvKRq_.js} +21 -0
  77. package/dist/cjs/{dates-D8D-aS5d.js → dates-TQLHlFd2.js} +64 -13
  78. package/dist/cjs/index-kBiXCEE7.js +28 -12
  79. package/dist/cjs/loader.cjs.js +1 -1
  80. package/dist/cjs/{positioning-DwHW399W.js → positioning-DCj_AJ2T.js} +10 -0
  81. package/dist/cjs/time-LBHtzLHe.js +42 -0
  82. package/dist/cobalt/cobalt.esm.js +1 -1
  83. package/dist/cobalt/{p-616e4286.entry.js → p-00830b8c.entry.js} +1 -1
  84. package/dist/cobalt/{p-9994fcd8.entry.js → p-0769eee9.entry.js} +1 -1
  85. package/dist/cobalt/{p-9bf42bf4.entry.js → p-0f18c4d2.entry.js} +1 -1
  86. package/dist/cobalt/{p-cdedaa82.entry.js → p-0fc1edca.entry.js} +1 -1
  87. package/dist/cobalt/p-15852fec.entry.js +1 -0
  88. package/dist/cobalt/{p-eec1c44c.entry.js → p-195c67ee.entry.js} +1 -1
  89. package/dist/cobalt/{p-B6JZk8fL.js → p-1EK-COrb.js} +1 -1
  90. package/dist/cobalt/{p-2da09948.entry.js → p-1e9c9d46.entry.js} +1 -1
  91. package/dist/cobalt/{p-e1b468c1.entry.js → p-20bd3702.entry.js} +1 -1
  92. package/dist/cobalt/p-25f59046.entry.js +1 -0
  93. package/dist/cobalt/{p-b06af5c6.entry.js → p-260196cb.entry.js} +1 -1
  94. package/dist/cobalt/p-2bf44b2b.entry.js +1 -0
  95. package/dist/cobalt/{p-8155d781.entry.js → p-2c100914.entry.js} +1 -1
  96. package/dist/cobalt/p-2e1d930f.entry.js +1 -0
  97. package/dist/cobalt/{p-080f62e4.entry.js → p-35518aee.entry.js} +1 -1
  98. package/dist/cobalt/{p-28ab9cef.entry.js → p-38ae8bff.entry.js} +1 -1
  99. package/dist/cobalt/{p-f0a98453.entry.js → p-38cf47b6.entry.js} +1 -1
  100. package/dist/cobalt/p-39dea0c0.entry.js +1 -0
  101. package/dist/cobalt/{p-3c681e3a.entry.js → p-3a746267.entry.js} +1 -1
  102. package/dist/cobalt/p-3ae69426.entry.js +1 -0
  103. package/dist/cobalt/{p-9211e794.entry.js → p-3d4e697e.entry.js} +1 -1
  104. package/dist/cobalt/{p-264508ae.entry.js → p-445acc4c.entry.js} +1 -1
  105. package/dist/cobalt/p-4de9232a.entry.js +1 -0
  106. package/dist/cobalt/{p-7f78e45c.entry.js → p-50bbfad8.entry.js} +1 -1
  107. package/dist/cobalt/{p-54f8c68c.entry.js → p-51a1ad38.entry.js} +1 -1
  108. package/dist/cobalt/{p-75515a8e.entry.js → p-523aca9f.entry.js} +1 -1
  109. package/dist/cobalt/{p-2f6c7eb5.entry.js → p-52af222b.entry.js} +1 -1
  110. package/dist/cobalt/{p-0b7359bb.entry.js → p-59f7d44b.entry.js} +1 -1
  111. package/dist/cobalt/{p-4f615cbd.entry.js → p-5b984323.entry.js} +1 -1
  112. package/dist/cobalt/{p-8fe5b07e.entry.js → p-5bfaca70.entry.js} +1 -1
  113. package/dist/cobalt/p-5c1328ff.entry.js +1 -0
  114. package/dist/cobalt/p-5e21ca17.entry.js +1 -0
  115. package/dist/cobalt/p-61d5ca3c.entry.js +1 -0
  116. package/dist/cobalt/{p-64115d66.entry.js → p-6357d9dd.entry.js} +1 -1
  117. package/dist/cobalt/{p-0a294205.entry.js → p-6985a964.entry.js} +1 -1
  118. package/dist/cobalt/p-69b8d98e.entry.js +1 -0
  119. package/dist/cobalt/{p-532baca4.entry.js → p-6b089060.entry.js} +1 -1
  120. package/dist/cobalt/{p-ceb85838.entry.js → p-6b256d01.entry.js} +1 -1
  121. package/dist/cobalt/{p-c9528a5f.entry.js → p-7c6b3175.entry.js} +1 -1
  122. package/dist/cobalt/{p-431cec34.entry.js → p-7d077a7c.entry.js} +1 -1
  123. package/dist/cobalt/{p-cbac0a11.entry.js → p-7f4bf341.entry.js} +1 -1
  124. package/dist/cobalt/p-869c338a.entry.js +1 -0
  125. package/dist/cobalt/p-890296f9.entry.js +1 -0
  126. package/dist/cobalt/{p-7178113f.entry.js → p-8fe08257.entry.js} +1 -1
  127. package/dist/cobalt/p-913b2a14.entry.js +1 -0
  128. package/dist/cobalt/{p-5b84cf37.entry.js → p-959556f4.entry.js} +1 -1
  129. package/dist/cobalt/{p-331a0108.entry.js → p-99c1ff0f.entry.js} +1 -1
  130. package/dist/cobalt/p-BMdapAL8.js +1 -0
  131. package/dist/cobalt/p-BU7SQCje.js +1 -0
  132. package/dist/cobalt/p-CF8OB_TM.js +1 -0
  133. package/dist/cobalt/p-CnNpoKwg.js +1 -0
  134. package/dist/cobalt/{p-ba5c6aa7.entry.js → p-a04feb70.entry.js} +1 -1
  135. package/dist/cobalt/p-a4f39ba2.entry.js +1 -0
  136. package/dist/cobalt/{p-d3a1a604.entry.js → p-a7c23027.entry.js} +1 -1
  137. package/dist/cobalt/p-ab8e150e.entry.js +1 -0
  138. package/dist/cobalt/{p-69ce2269.entry.js → p-acdb68a7.entry.js} +1 -1
  139. package/dist/cobalt/{p-3b9be8a8.entry.js → p-afd957c0.entry.js} +1 -1
  140. package/dist/cobalt/{p-c3004e1c.entry.js → p-b45ea918.entry.js} +1 -1
  141. package/dist/cobalt/{p-eeed80ac.entry.js → p-bad7ce84.entry.js} +1 -1
  142. package/dist/cobalt/{p-bcd38114.entry.js → p-bebacee2.entry.js} +1 -1
  143. package/dist/cobalt/{p-ec9dd3a3.entry.js → p-c32949a5.entry.js} +1 -1
  144. package/dist/cobalt/p-cd5555d2.entry.js +1 -0
  145. package/dist/cobalt/p-cd96aabf.entry.js +1 -0
  146. package/dist/cobalt/{p-2661557c.entry.js → p-ce961fba.entry.js} +1 -1
  147. package/dist/cobalt/p-d56b8a1f.entry.js +1 -0
  148. package/dist/cobalt/{p-c7d9ff39.entry.js → p-d6fff135.entry.js} +1 -1
  149. package/dist/cobalt/{p-6b38e8fb.entry.js → p-d71b87d3.entry.js} +1 -1
  150. package/dist/cobalt/{p-ff581807.entry.js → p-d83e5189.entry.js} +1 -1
  151. package/dist/cobalt/{p-741cf623.entry.js → p-dc269096.entry.js} +1 -1
  152. package/dist/cobalt/{p-e4555fda.entry.js → p-dc8e88f4.entry.js} +1 -1
  153. package/dist/cobalt/p-de5a05fc.entry.js +1 -0
  154. package/dist/cobalt/{p-0110108f.entry.js → p-df63f23c.entry.js} +1 -1
  155. package/dist/cobalt/{p-9fab9c1f.entry.js → p-e2188319.entry.js} +1 -1
  156. package/dist/cobalt/p-f0c589ad.entry.js +1 -0
  157. package/dist/cobalt/p-f4370423.entry.js +1 -0
  158. package/dist/cobalt/{p-b87a2e7a.entry.js → p-f4e4bebf.entry.js} +1 -1
  159. package/dist/cobalt/p-f53b9536.entry.js +1 -0
  160. package/dist/cobalt/{p-bb00ae4a.entry.js → p-f7ae0228.entry.js} +1 -1
  161. package/dist/collection/collection-manifest.json +6 -0
  162. package/dist/collection/components/co-action-bar/co-action-bar.css +148 -0
  163. package/dist/collection/components/co-action-bar/co-action-bar.js +247 -0
  164. package/dist/collection/components/co-app-shell/co-app-shell.js +2 -2
  165. package/dist/collection/components/co-audio-player/co-audio-player.css +58 -0
  166. package/dist/collection/components/co-audio-player/co-audio-player.js +453 -0
  167. package/dist/collection/components/co-audio-player/co-audio-player.utils.js +44 -0
  168. package/dist/collection/components/co-badge/co-badge.js +1 -1
  169. package/dist/collection/components/co-bottom-sheet/co-bottom-sheet.js +3 -3
  170. package/dist/collection/components/co-breadcrumb/co-breadcrumb.js +1 -1
  171. package/dist/collection/components/co-breadcrumb-item/co-breadcrumb-item.js +2 -2
  172. package/dist/collection/components/co-button/co-button.css +19 -0
  173. package/dist/collection/components/co-button/co-button.js +31 -5
  174. package/dist/collection/components/co-button-group/co-button-group.js +2 -2
  175. package/dist/collection/components/co-calendar/co-calendar.js +1 -1
  176. package/dist/collection/components/co-calendar-month/co-calendar-month.css +52 -3
  177. package/dist/collection/components/co-calendar-month/co-calendar-month.js +238 -55
  178. package/dist/collection/components/co-calendar-timegrid/co-calendar-timegrid.css +265 -0
  179. package/dist/collection/components/co-calendar-timegrid/co-calendar-timegrid.js +1305 -0
  180. package/dist/collection/components/co-card/co-card.js +2 -2
  181. package/dist/collection/components/co-carousel/co-carousel.js +2 -2
  182. package/dist/collection/components/co-carousel-item/co-carousel-item.js +1 -1
  183. package/dist/collection/components/co-checkbox/co-checkbox.css +1 -1
  184. package/dist/collection/components/co-checkbox/co-checkbox.js +3 -3
  185. package/dist/collection/components/co-chip/co-chip.js +2 -2
  186. package/dist/collection/components/co-color-picker/co-color-picker.js +2 -2
  187. package/dist/collection/components/co-column-picker/co-column-picker.js +2 -2
  188. package/dist/collection/components/co-data-table/co-data-table.css +4 -4
  189. package/dist/collection/components/co-data-table-pagination/co-data-table-pagination.js +4 -4
  190. package/dist/collection/components/co-date-field/co-date-field.js +4 -4
  191. package/dist/collection/components/co-date-range/co-date-range.js +1 -1
  192. package/dist/collection/components/co-date-time-picker/co-date-time-picker.css +325 -0
  193. package/dist/collection/components/co-date-time-picker/co-date-time-picker.js +1079 -0
  194. package/dist/collection/components/co-drawer/co-drawer.css +46 -0
  195. package/dist/collection/components/co-drawer/co-drawer.js +1 -1
  196. package/dist/collection/components/co-drive-card/co-drive-card.js +1 -1
  197. package/dist/collection/components/co-drop-zone/co-drop-zone.js +1 -1
  198. package/dist/collection/components/co-empty-state/co-empty-state.js +2 -2
  199. package/dist/collection/components/co-event-calendar/co-event-calendar.css +19 -7
  200. package/dist/collection/components/co-event-calendar/co-event-calendar.js +342 -39
  201. package/dist/collection/components/co-event-popover/co-event-popover.css +26 -0
  202. package/dist/collection/components/co-event-popover/co-event-popover.js +326 -0
  203. package/dist/collection/components/co-fab/co-fab.js +2 -2
  204. package/dist/collection/components/co-file-field/co-file-field.js +5 -5
  205. package/dist/collection/components/co-file-type-tile/co-file-type-tile.js +2 -2
  206. package/dist/collection/components/co-helper-text/co-helper-text.js +2 -2
  207. package/dist/collection/components/co-icon/co-icon.js +2 -2
  208. package/dist/collection/components/co-icon-button/co-icon-button.js +1 -1
  209. package/dist/collection/components/co-json-field/co-json-field.js +3 -3
  210. package/dist/collection/components/co-lightbox/co-lightbox.js +4 -4
  211. package/dist/collection/components/co-list-footer/co-list-footer.js +1 -1
  212. package/dist/collection/components/co-list-item/co-list-item.js +4 -4
  213. package/dist/collection/components/co-media-thumb/co-media-thumb.js +2 -2
  214. package/dist/collection/components/co-menu/co-menu.js +1 -1
  215. package/dist/collection/components/co-menu-divider/co-menu-divider.js +1 -1
  216. package/dist/collection/components/co-menu-item/co-menu-item.css +21 -0
  217. package/dist/collection/components/co-menu-item/co-menu-item.js +20 -1
  218. package/dist/collection/components/co-modal/co-modal.js +2 -2
  219. package/dist/collection/components/co-navbar/co-navbar.js +2 -2
  220. package/dist/collection/components/co-number-field/co-number-field.js +2 -2
  221. package/dist/collection/components/co-option-list/co-option-list.css +18 -0
  222. package/dist/collection/components/co-option-list/co-option-list.js +127 -5
  223. package/dist/collection/components/co-option-list/optionListLogic.js +13 -0
  224. package/dist/collection/components/co-overlay/co-overlay.js +1 -1
  225. package/dist/collection/components/co-page-header/co-page-header.js +1 -1
  226. package/dist/collection/components/co-phone-field/co-phone-field.js +1 -1
  227. package/dist/collection/components/co-progress-bar/co-progress-bar.js +2 -2
  228. package/dist/collection/components/co-progress-circle/co-progress-circle.js +2 -2
  229. package/dist/collection/components/co-provider-logo/co-provider-logo.css +23 -0
  230. package/dist/collection/components/co-provider-logo/co-provider-logo.js +124 -0
  231. package/dist/collection/components/co-radio/co-radio.js +3 -3
  232. package/dist/collection/components/co-rating/co-rating.js +3 -3
  233. package/dist/collection/components/co-ref-field/co-ref-field.js +6 -2
  234. package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.css +11 -0
  235. package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.js +3 -3
  236. package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.css +8 -0
  237. package/dist/collection/components/co-row/co-row.js +2 -2
  238. package/dist/collection/components/co-select/co-select.js +1 -1
  239. package/dist/collection/components/co-separator/co-separator.js +1 -1
  240. package/dist/collection/components/co-sidebar/co-sidebar.js +2 -2
  241. package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +12 -2
  242. package/dist/collection/components/co-skeleton/co-skeleton.js +1 -1
  243. package/dist/collection/components/co-slider/co-slider.js +2 -2
  244. package/dist/collection/components/co-switch/co-switch.js +3 -3
  245. package/dist/collection/components/co-tab/co-tab.js +2 -2
  246. package/dist/collection/components/co-tab-group/co-tab-group.css +25 -0
  247. package/dist/collection/components/co-tab-group/co-tab-group.js +18 -2
  248. package/dist/collection/components/co-tags-field/co-tags-field.js +5 -5
  249. package/dist/collection/components/co-textarea/co-textarea.js +4 -4
  250. package/dist/collection/components/co-toggle-button/co-toggle-button.js +2 -2
  251. package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.js +2 -2
  252. package/dist/collection/components/co-tooltip/co-tooltip.js +2 -2
  253. package/dist/collection/components/co-video/co-video.js +2 -2
  254. package/dist/collection/utils/dateI18n.js +21 -0
  255. package/dist/collection/utils/eventColor.js +52 -0
  256. package/dist/collection/utils/positioning.js +10 -0
  257. package/dist/components/co-accordion.js +1 -1
  258. package/dist/components/co-action-bar.d.ts +11 -0
  259. package/dist/components/co-action-bar.js +1 -0
  260. package/dist/components/co-app-shell.js +1 -1
  261. package/dist/components/co-audio-player.d.ts +11 -0
  262. package/dist/components/co-audio-player.js +1 -0
  263. package/dist/components/co-autocomplete.js +1 -1
  264. package/dist/components/co-avatar-group.js +1 -1
  265. package/dist/components/co-avatar.js +1 -1
  266. package/dist/components/co-badge.js +1 -1
  267. package/dist/components/co-bottom-sheet.js +1 -1
  268. package/dist/components/co-breadcrumb-item.js +1 -1
  269. package/dist/components/co-breadcrumb.js +1 -1
  270. package/dist/components/co-button-group.js +1 -1
  271. package/dist/components/co-button.js +1 -1
  272. package/dist/components/co-calendar-month.js +1 -1
  273. package/dist/components/co-calendar-timegrid.d.ts +11 -0
  274. package/dist/components/co-calendar-timegrid.js +1 -0
  275. package/dist/components/co-calendar.js +1 -1
  276. package/dist/components/co-card.js +1 -1
  277. package/dist/components/co-carousel-item.js +1 -1
  278. package/dist/components/co-carousel.js +1 -1
  279. package/dist/components/co-checkbox-group.js +1 -1
  280. package/dist/components/co-checkbox.js +1 -1
  281. package/dist/components/co-chip.js +1 -1
  282. package/dist/components/co-color-picker.js +1 -1
  283. package/dist/components/co-column-picker.js +1 -1
  284. package/dist/components/co-combobox.js +1 -1
  285. package/dist/components/co-command-search.js +1 -1
  286. package/dist/components/co-data-table-pagination.js +1 -1
  287. package/dist/components/co-data-table.js +1 -1
  288. package/dist/components/co-date-field.js +1 -1
  289. package/dist/components/co-date-picker.js +1 -1
  290. package/dist/components/co-date-range-picker.js +1 -1
  291. package/dist/components/co-date-range.js +1 -1
  292. package/dist/components/co-date-time-picker.d.ts +11 -0
  293. package/dist/components/co-date-time-picker.js +1 -0
  294. package/dist/components/co-drawer.js +1 -1
  295. package/dist/components/co-drive-card.js +1 -1
  296. package/dist/components/co-drop-zone.js +1 -1
  297. package/dist/components/co-empty-state.js +1 -1
  298. package/dist/components/co-event-calendar.js +1 -1
  299. package/dist/components/co-event-popover.d.ts +11 -0
  300. package/dist/components/co-event-popover.js +1 -0
  301. package/dist/components/co-fab.js +1 -1
  302. package/dist/components/co-file-field.js +1 -1
  303. package/dist/components/co-file-type-tile.js +1 -1
  304. package/dist/components/co-helper-text.js +1 -1
  305. package/dist/components/co-icon-button.js +1 -1
  306. package/dist/components/co-icon.js +1 -1
  307. package/dist/components/co-input.js +1 -1
  308. package/dist/components/co-json-field.js +1 -1
  309. package/dist/components/co-lightbox.js +1 -1
  310. package/dist/components/co-list-footer.js +1 -1
  311. package/dist/components/co-list-item.js +1 -1
  312. package/dist/components/co-media-thumb.js +1 -1
  313. package/dist/components/co-menu-divider.js +1 -1
  314. package/dist/components/co-menu-item.js +1 -1
  315. package/dist/components/co-menu.js +1 -1
  316. package/dist/components/co-modal.js +1 -1
  317. package/dist/components/co-navbar.js +1 -1
  318. package/dist/components/co-number-field.js +1 -1
  319. package/dist/components/co-option-list.js +1 -1
  320. package/dist/components/co-overlay.js +1 -1
  321. package/dist/components/co-page-header.js +1 -1
  322. package/dist/components/co-phone-field.js +1 -1
  323. package/dist/components/co-popover.js +1 -1
  324. package/dist/components/co-progress-bar.js +1 -1
  325. package/dist/components/co-progress-circle.js +1 -1
  326. package/dist/components/co-provider-logo.d.ts +11 -0
  327. package/dist/components/co-provider-logo.js +1 -0
  328. package/dist/components/co-radio-group.js +1 -1
  329. package/dist/components/co-radio.js +1 -1
  330. package/dist/components/co-rating.js +1 -1
  331. package/dist/components/co-ref-field.js +1 -1
  332. package/dist/components/co-rich-text-editor.js +1 -1
  333. package/dist/components/co-rich-text-toolbar.js +1 -1
  334. package/dist/components/co-row.js +1 -1
  335. package/dist/components/co-select.js +1 -1
  336. package/dist/components/co-separator.js +1 -1
  337. package/dist/components/co-sidebar-nav.js +1 -1
  338. package/dist/components/co-sidebar.js +1 -1
  339. package/dist/components/co-skeleton.js +1 -1
  340. package/dist/components/co-slider.js +1 -1
  341. package/dist/components/co-switch.js +1 -1
  342. package/dist/components/co-tab-group.js +1 -1
  343. package/dist/components/co-tab.js +1 -1
  344. package/dist/components/co-tags-field.js +1 -1
  345. package/dist/components/co-textarea.js +1 -1
  346. package/dist/components/co-toast.js +1 -1
  347. package/dist/components/co-toggle-button-group.js +1 -1
  348. package/dist/components/co-toggle-button.js +1 -1
  349. package/dist/components/co-tooltip.js +1 -1
  350. package/dist/components/co-transfer-list.js +1 -1
  351. package/dist/components/co-video.js +1 -1
  352. package/dist/components/p-B21rOC2Y.js +1 -0
  353. package/dist/components/{p-Cd3inFSL.js → p-BC6sxVVr.js} +1 -1
  354. package/dist/components/p-BMdapAL8.js +1 -0
  355. package/dist/components/p-BQFperIX.js +1 -0
  356. package/dist/components/{p-CQ-8domm.js → p-BXtiFFM2.js} +1 -1
  357. package/dist/components/{p-CmCsm4L-.js → p-BdArvV6T.js} +1 -1
  358. package/dist/components/p-BnkGlFYy.js +1 -0
  359. package/dist/components/p-C-5cLeKr.js +1 -0
  360. package/dist/components/p-CDWXNRpo.js +1 -0
  361. package/dist/components/p-CF8OB_TM.js +1 -0
  362. package/dist/components/{p-oV_1MoAN.js → p-CIWoKlGj.js} +1 -1
  363. package/dist/components/{p-Bul6EdDX.js → p-CVCEiwOS.js} +1 -1
  364. package/dist/components/{p-B0b9Etx4.js → p-CfeNhAHW.js} +1 -1
  365. package/dist/components/p-Ch837Ggl.js +1 -0
  366. package/dist/components/p-ChLib-si.js +1 -0
  367. package/dist/components/{p-DfpOEXHC.js → p-ChPooamL.js} +1 -1
  368. package/dist/components/p-CnNpoKwg.js +1 -0
  369. package/dist/components/{p-B7Yv00g9.js → p-D-3BTFRs.js} +1 -1
  370. package/dist/components/p-D0wrmRH8.js +1 -0
  371. package/dist/components/p-DZX7cEqP.js +1 -0
  372. package/dist/components/{p-B3U63yZw.js → p-DbISGXT_.js} +1 -1
  373. package/dist/components/p-Dxa7c4Ap.js +1 -0
  374. package/dist/components/p-T0MdU7sb.js +1 -0
  375. package/dist/components/{p-DwwxS5bY.js → p-W8Y8ZuPs.js} +1 -1
  376. package/dist/components/{p-9aNhJfTT.js → p-cteJszd-.js} +1 -1
  377. package/dist/components/p-e5KibEs8.js +1 -0
  378. package/dist/components/{p-Bzg5FPSA.js → p-mUoTCiYa.js} +1 -1
  379. package/dist/components/p-uZ2D6ESV.js +1 -0
  380. package/dist/components/{p-BtpRnpaF.js → p-ySi6UG0O.js} +1 -1
  381. package/dist/esm/co-action-bar.entry.js +87 -0
  382. package/dist/esm/co-app-shell.entry.js +2 -2
  383. package/dist/esm/co-audio-player.entry.js +277 -0
  384. package/dist/esm/co-avatar_2.entry.js +3 -3
  385. package/dist/esm/co-badge.entry.js +1 -1
  386. package/dist/esm/co-bottom-sheet.entry.js +3 -3
  387. package/dist/esm/co-breadcrumb-item.entry.js +2 -2
  388. package/dist/esm/co-breadcrumb.entry.js +1 -1
  389. package/dist/esm/co-button-group.entry.js +2 -2
  390. package/dist/esm/co-button.entry.js +12 -5
  391. package/dist/esm/co-calendar-month_2.entry.js +1598 -0
  392. package/dist/esm/co-calendar_3.entry.js +9 -9
  393. package/dist/esm/co-card.entry.js +2 -2
  394. package/dist/esm/co-carousel-item.entry.js +1 -1
  395. package/dist/esm/co-carousel.entry.js +3 -3
  396. package/dist/esm/co-checkbox.entry.js +4 -4
  397. package/dist/esm/co-chip_2.entry.js +95 -6
  398. package/dist/esm/co-color-picker.entry.js +2 -2
  399. package/dist/esm/co-column-picker.entry.js +2 -2
  400. package/dist/esm/co-data-table-pagination.entry.js +4 -4
  401. package/dist/esm/co-data-table.entry.js +1 -1
  402. package/dist/esm/co-date-picker.entry.js +1 -1
  403. package/dist/esm/co-date-range-picker.entry.js +2 -2
  404. package/dist/esm/co-date-range.entry.js +1 -1
  405. package/dist/esm/co-date-time-picker.entry.js +407 -0
  406. package/dist/esm/co-drive-card.entry.js +1 -1
  407. package/dist/esm/co-drop-zone.entry.js +1 -1
  408. package/dist/esm/co-empty-state.entry.js +2 -2
  409. package/dist/esm/co-event-calendar.entry.js +120 -19
  410. package/dist/esm/co-event-popover.entry.js +130 -0
  411. package/dist/esm/co-fab.entry.js +2 -2
  412. package/dist/esm/co-file-field.entry.js +5 -5
  413. package/dist/esm/co-file-type-tile.entry.js +2 -2
  414. package/dist/esm/co-helper-text.entry.js +2 -2
  415. package/dist/esm/co-icon-button.entry.js +1 -1
  416. package/dist/esm/co-icon.entry.js +2 -2
  417. package/dist/esm/co-json-field.entry.js +3 -3
  418. package/dist/esm/co-lightbox.entry.js +5 -5
  419. package/dist/esm/co-list-footer.entry.js +1 -1
  420. package/dist/esm/co-list-item.entry.js +4 -4
  421. package/dist/esm/co-media-thumb.entry.js +2 -2
  422. package/dist/esm/co-menu-divider.entry.js +1 -1
  423. package/dist/esm/co-menu-item.entry.js +2 -2
  424. package/dist/esm/co-menu.entry.js +1 -1
  425. package/dist/esm/co-modal.entry.js +2 -2
  426. package/dist/esm/co-navbar.entry.js +2 -2
  427. package/dist/esm/co-number-field.entry.js +2 -2
  428. package/dist/esm/co-overlay.entry.js +1 -1
  429. package/dist/esm/co-page-header.entry.js +1 -1
  430. package/dist/esm/co-phone-field.entry.js +1 -1
  431. package/dist/esm/co-popover.entry.js +1 -1
  432. package/dist/esm/co-progress-bar.entry.js +2 -2
  433. package/dist/esm/co-progress-circle.entry.js +2 -2
  434. package/dist/esm/co-provider-logo_2.entry.js +69 -0
  435. package/dist/esm/co-radio.entry.js +3 -3
  436. package/dist/esm/co-rating.entry.js +3 -3
  437. package/dist/esm/co-ref-field.entry.js +6 -2
  438. package/dist/esm/co-rich-text-editor.entry.js +4 -4
  439. package/dist/esm/co-rich-text-toolbar.entry.js +1 -1
  440. package/dist/esm/co-row.entry.js +2 -2
  441. package/dist/esm/co-select.entry.js +1 -1
  442. package/dist/esm/co-separator.entry.js +1 -1
  443. package/dist/esm/co-sidebar-nav.entry.js +12 -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 +19 -3
  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-toggle-button-group.entry.js +2 -2
  452. package/dist/esm/co-toggle-button.entry.js +2 -2
  453. package/dist/esm/co-video.entry.js +2 -2
  454. package/dist/esm/cobalt.js +1 -1
  455. package/dist/esm/{dateI18n-C1DCLOEl.js → dateI18n-CnNpoKwg.js} +21 -0
  456. package/dist/esm/{dates-tPYikBRJ.js → dates-BU7SQCje.js} +64 -13
  457. package/dist/esm/index-BCEz3S-z.js +28 -12
  458. package/dist/esm/loader.js +1 -1
  459. package/dist/esm/{positioning-C2mZ7x_Y.js → positioning-BMdapAL8.js} +10 -0
  460. package/dist/esm/time-CF8OB_TM.js +37 -0
  461. package/dist/esm/{tz-B6JZk8fL.js → tz-1EK-COrb.js} +1 -1
  462. package/dist/types/components/co-action-bar/co-action-bar.d.ts +66 -0
  463. package/dist/types/components/co-audio-player/co-audio-player.d.ts +62 -0
  464. package/dist/types/components/co-audio-player/co-audio-player.utils.d.ts +11 -0
  465. package/dist/types/components/co-button/co-button.d.ts +18 -1
  466. package/dist/types/components/co-calendar-month/co-calendar-month.d.ts +33 -1
  467. package/dist/types/components/co-calendar-timegrid/co-calendar-timegrid.d.ts +178 -0
  468. package/dist/types/components/co-date-time-picker/co-date-time-picker.d.ts +131 -0
  469. package/dist/types/components/co-event-calendar/co-event-calendar.d.ts +61 -8
  470. package/dist/types/components/co-event-popover/co-event-popover.d.ts +45 -0
  471. package/dist/types/components/co-menu-item/co-menu-item.d.ts +3 -0
  472. package/dist/types/components/co-option-list/co-option-list.d.ts +23 -0
  473. package/dist/types/components/co-option-list/optionListLogic.d.ts +3 -0
  474. package/dist/types/components/co-provider-logo/co-provider-logo.d.ts +17 -0
  475. package/dist/types/components/co-ref-field/co-ref-field.d.ts +1 -0
  476. package/dist/types/components/co-tab-group/co-tab-group.d.ts +5 -0
  477. package/dist/types/components.d.ts +1245 -76
  478. package/dist/types/utils/dateI18n.d.ts +7 -0
  479. package/dist/types/utils/eventColor.d.ts +20 -0
  480. package/package.json +2 -2
  481. package/dist/cjs/co-calendar-month.cjs.entry.js +0 -381
  482. package/dist/cjs/co-skeleton.cjs.entry.js +0 -26
  483. package/dist/cobalt/p-037cc571.entry.js +0 -1
  484. package/dist/cobalt/p-0b92167a.entry.js +0 -1
  485. package/dist/cobalt/p-0bc5a962.entry.js +0 -1
  486. package/dist/cobalt/p-30c80e3a.entry.js +0 -1
  487. package/dist/cobalt/p-36ad3a96.entry.js +0 -1
  488. package/dist/cobalt/p-3ecbbe93.entry.js +0 -1
  489. package/dist/cobalt/p-3f1030fb.entry.js +0 -1
  490. package/dist/cobalt/p-3f7215e7.entry.js +0 -1
  491. package/dist/cobalt/p-54857f78.entry.js +0 -1
  492. package/dist/cobalt/p-585c132d.entry.js +0 -1
  493. package/dist/cobalt/p-59b114ab.entry.js +0 -1
  494. package/dist/cobalt/p-5d0510a5.entry.js +0 -1
  495. package/dist/cobalt/p-5e246304.entry.js +0 -1
  496. package/dist/cobalt/p-C1DCLOEl.js +0 -1
  497. package/dist/cobalt/p-C2mZ7x_Y.js +0 -1
  498. package/dist/cobalt/p-c589ae25.entry.js +0 -1
  499. package/dist/cobalt/p-c635417b.entry.js +0 -1
  500. package/dist/cobalt/p-cd28aa6d.entry.js +0 -1
  501. package/dist/cobalt/p-d71b800a.entry.js +0 -1
  502. package/dist/cobalt/p-df752f6e.entry.js +0 -1
  503. package/dist/cobalt/p-fffeb610.entry.js +0 -1
  504. package/dist/cobalt/p-tPYikBRJ.js +0 -1
  505. package/dist/components/p-BTa6ss5i.js +0 -1
  506. package/dist/components/p-C1DCLOEl.js +0 -1
  507. package/dist/components/p-C2mZ7x_Y.js +0 -1
  508. package/dist/components/p-CVeEoHr7.js +0 -1
  509. package/dist/components/p-CYi6V_Ss.js +0 -1
  510. package/dist/components/p-CuQjKAf5.js +0 -1
  511. package/dist/components/p-CyYF8IJE.js +0 -1
  512. package/dist/components/p-DKvTqEaf.js +0 -1
  513. package/dist/components/p-T0UfY6rA.js +0 -1
  514. package/dist/esm/co-calendar-month.entry.js +0 -379
  515. package/dist/esm/co-skeleton.entry.js +0 -24
@@ -10,6 +10,9 @@
10
10
  export interface DateStrings {
11
11
  prevMonth: string;
12
12
  nextMonth: string;
13
+ month: string;
14
+ week: string;
15
+ day: string;
13
16
  dateLabel: string;
14
17
  clearDate: string;
15
18
  today: string;
@@ -31,6 +34,10 @@ export interface DateStrings {
31
34
  to: string;
32
35
  selectDate: string;
33
36
  setDate: string;
37
+ timeLabel: string;
38
+ selectDateTime: string;
39
+ setDateTime: string;
40
+ clearDateTime: string;
34
41
  }
35
42
  export type DateLang = 'es' | 'en' | 'pt';
36
43
  /** Map any BCP-47 locale (e.g. "es-CO") to a supported language; fallback 'en'. */
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Color de texto legible sobre el fondo de un evento de calendario.
3
+ *
4
+ * El host pinta los estados con TOKENS (`var(--co-color-primary-azul)`), no con
5
+ * hex — es la regla del design system. El cálculo de contraste necesita un color
6
+ * REAL, así que el token se resuelve contra el host antes de medir luminancia.
7
+ */
8
+ /**
9
+ * Resuelve `var(--x)` / `var(--x, fallback)` contra `host`. Un valor que no es
10
+ * `var(...)` (hex, rgb, nombre CSS) vuelve tal cual.
11
+ */
12
+ export declare function resolveCssColor(host: HTMLElement | undefined, value: string): string;
13
+ /**
14
+ * Token de color de texto legible sobre `bg` (luminancia YIQ), o `''` cuando el
15
+ * color no se puede medir — en ese caso el llamador NO debe escribir la
16
+ * variable: pisarla con un `var(--co-cal-event-text)` la vuelve
17
+ * AUTORREFERENTE, la declaración se invalida y el texto termina heredando el
18
+ * color del calendario (negro sobre un chip de color).
19
+ */
20
+ export declare function readableTextToken(host: HTMLElement | undefined, bg: string): string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prolibu-suite/cobalt-core",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "Cobalt Design System — Framework-agnostic Web Components built with Stencil",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -51,8 +51,8 @@
51
51
  "dompurify": "^3.2.6",
52
52
  "overlayscrollbars": "^2.16.0",
53
53
  "@prolibu-suite/cobalt-calendar-utils": "0.1.0",
54
- "@prolibu-suite/cobalt-date-utils": "0.1.1",
55
54
  "@prolibu-suite/cobalt-rich-text": "0.1.2",
55
+ "@prolibu-suite/cobalt-date-utils": "0.1.1",
56
56
  "@prolibu-suite/cobalt-tokens": "0.3.0"
57
57
  },
58
58
  "devDependencies": {
@@ -1,381 +0,0 @@
1
- 'use strict';
2
-
3
- var index = require('./index-kBiXCEE7.js');
4
- var dates = require('./dates-D8D-aS5d.js');
5
- var tz = require('./tz-Dgom0W69.js');
6
-
7
- /**
8
- * layout-month.ts — lane assignment for the month grid.
9
- *
10
- * Multi-day (all-day) events render as continuous bars spanning day cells; they
11
- * must keep a stable vertical lane across the days they cover, and overlapping
12
- * events must not share a lane. Single-day chips (timed events, single all-day)
13
- * are degenerate one-column bars. Days exceeding `maxLanes` report an overflow
14
- * count for the "+N more" affordance.
15
- *
16
- * Days are addressed by a week matrix of "YYYY-MM-DD" keys (e.g. from
17
- * `getMonthMatrix` in `@prolibu-suite/cobalt-date-utils`). Lexicographic string
18
- * comparison is correct for ISO dates, so no Date objects are needed here.
19
- */
20
- /** Inclusive day span of an event in calendar days. */
21
- function eventDaySpan(event, timeZone) {
22
- if (event.allDay) {
23
- // end is exclusive → last visible day is end - 1.
24
- const firstDay = event.start.slice(0, 10);
25
- const lastDay = dates.addDays(event.end.slice(0, 10), -1);
26
- if (dates.compareYMD(lastDay, firstDay) < 0)
27
- return { event, firstDay, lastDay: firstDay };
28
- return { event, firstDay, lastDay };
29
- }
30
- // Timed events occupy their (wall-clock) start day in the month grid.
31
- const day = timeZone ? tz.zonedDateKey(event.startMs, timeZone) : event.start.slice(0, 10);
32
- return { event, firstDay: day, lastDay: day };
33
- }
34
- function layoutMonth(events, weeks, options = {}) {
35
- const maxLanes = options.maxLanes ?? Infinity;
36
- const segments = [];
37
- const overflow = {};
38
- let laneCount = 0;
39
- const spans = events
40
- .map((e) => eventDaySpan(e, options.timeZone))
41
- .filter((s) => s !== null);
42
- weeks.forEach((days, weekIndex) => {
43
- if (!days.length)
44
- return;
45
- const weekStart = days[0];
46
- const weekEnd = days[days.length - 1];
47
- const colOf = new Map(days.map((d, i) => [d, i]));
48
- // Candidate segments intersecting this week.
49
- const candidates = spans
50
- .filter((s) => dates.compareYMD(s.firstDay, weekEnd) <= 0 && dates.compareYMD(weekStart, s.lastDay) <= 0)
51
- .map((s) => {
52
- const segFirst = dates.compareYMD(s.firstDay, weekStart) >= 0 ? s.firstDay : weekStart;
53
- const segLast = dates.compareYMD(s.lastDay, weekEnd) <= 0 ? s.lastDay : weekEnd;
54
- return {
55
- span: s,
56
- startCol: colOf.get(segFirst) ?? 0,
57
- endCol: colOf.get(segLast) ?? days.length - 1,
58
- };
59
- })
60
- // Multi-day/earlier events claim lanes first → stable, readable bars.
61
- .sort((a, b) => a.startCol - b.startCol ||
62
- b.endCol - b.startCol - (a.endCol - a.startCol) ||
63
- a.span.event.startMs - b.span.event.startMs ||
64
- (a.span.event.id < b.span.event.id ? -1 : 1));
65
- const placed = [];
66
- for (const cand of candidates) {
67
- let lane = 0;
68
- while (placed.some((p) => p.lane === lane && !(cand.endCol < p.startCol || cand.startCol > p.endCol))) {
69
- lane++;
70
- }
71
- placed.push({ lane, startCol: cand.startCol, endCol: cand.endCol });
72
- laneCount = Math.max(laneCount, lane + 1);
73
- segments.push({
74
- eventId: cand.span.event.id,
75
- weekIndex,
76
- lane,
77
- startCol: cand.startCol,
78
- endCol: cand.endCol,
79
- isStart: dates.compareYMD(cand.span.firstDay, weekStart) >= 0,
80
- isEnd: dates.compareYMD(cand.span.lastDay, weekEnd) <= 0,
81
- continuesBefore: dates.compareYMD(cand.span.firstDay, weekStart) < 0,
82
- continuesAfter: dates.compareYMD(cand.span.lastDay, weekEnd) > 0,
83
- });
84
- }
85
- });
86
- if (Number.isFinite(maxLanes)) {
87
- for (const seg of segments) {
88
- if (seg.lane >= maxLanes) {
89
- for (let c = seg.startCol; c <= seg.endCol; c++) {
90
- const dk = weeks[seg.weekIndex][c];
91
- overflow[dk] = (overflow[dk] ?? 0) + 1;
92
- }
93
- }
94
- }
95
- }
96
- return { segments, overflow, laneCount };
97
- }
98
-
99
- const coCalendarMonthCss = () => `:host{display:block;font-family:var(--co-font-family-primary);--co-cal-daynum-h:24px;--co-cal-lane-h:22px;--co-cal-min-week-h:92px;--co-cal-gap:2px;--co-cal-surface:var(--co-semantic-surface-page);--co-cal-border:var(--co-semantic-border-default);--co-cal-text:var(--co-semantic-text-default);--co-cal-text-muted:var(--co-semantic-text-muted);--co-cal-hover:var(--co-semantic-surface-hover);--co-cal-today-ring:var(--co-color-primary-azul);--co-cal-event-bg:var(--co-color-primary-azul);--co-cal-event-border:transparent;--co-cal-event-text:var(--co-color-base-blanco, #fff);--co-cal-event-text-light:var(--co-color-base-blanco, #fff);--co-cal-event-text-dark:var(--co-semantic-text-default)}.cal-month{display:flex;flex-direction:column;border:1px solid var(--co-cal-border);border-radius:var(--co-border-radius-xs);overflow:hidden;background:var(--co-cal-surface)}.cal-month__dow{display:grid;grid-template-columns:repeat(7, 1fr);border-bottom:1px solid var(--co-cal-border)}.cal-month__dow-cell{padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-10, 10px);font-weight:600;text-transform:uppercase;letter-spacing:0.04em;color:var(--co-cal-text-muted);text-align:right}.cal-month__week{position:relative;min-height:var(--co-cal-min-week-h)}.cal-month__week:not(:last-child){border-bottom:1px solid var(--co-cal-border)}.cal-month__days{display:grid;grid-template-columns:repeat(7, 1fr);height:100%;position:absolute;inset:0}.cal-month__day{border-right:1px solid var(--co-cal-border);padding:var(--co-spacing-xxs);cursor:pointer;transition:background 0.1s ease}.cal-month__day:last-child{border-right:0}.cal-month__day:hover{background:var(--co-cal-hover)}.cal-month__day:focus-visible{outline:2px solid var(--co-semantic-border-focus);outline-offset:-2px}.cal-month__day--outside .cal-month__daynum{color:var(--co-cal-text-muted)}.cal-month__day--disabled{cursor:not-allowed;background:color-mix(in srgb, var(--co-cal-border) 20%, transparent)}.cal-month__day--drag-over{background:color-mix(in srgb, var(--co-cal-today-ring) 14%, transparent);box-shadow:inset 0 0 0 2px var(--co-cal-today-ring)}.cal-month__daynum{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-left:auto;float:right;font-size:var(--co-font-size-12, 12px);color:var(--co-cal-text);border-radius:var(--co-border-radius-full)}.cal-month__day--today .cal-month__daynum{background:var(--co-cal-today-ring);color:var(--co-color-base-blanco, #fff);font-weight:600}.cal-month__events{position:absolute;inset:0;pointer-events:none;}.cal-chip,.cal-month__more{position:absolute;height:calc(var(--co-cal-lane-h) - 3px);box-sizing:border-box;pointer-events:auto;display:flex;align-items:center;gap:var(--co-spacing-xxs);margin:0 3px;padding:0 var(--co-spacing-xs);border:1px solid var(--co-cal-event-border);border-radius:var(--co-border-radius-xxs);font-family:inherit;font-size:var(--co-font-size-12, 12px);line-height:1;text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap}.cal-chip{background:var(--co-cal-event-bg);color:var(--co-cal-event-text)}.cal-chip:hover{filter:brightness(0.95)}.cal-chip:focus-visible{outline:2px solid var(--co-semantic-border-focus);outline-offset:1px}.cal-chip--all-day{font-weight:500}.cal-chip__dot{flex:0 0 auto;width:7px;height:7px;border-radius:var(--co-border-radius-full);background:var(--co-cal-event-bg)}.cal-chip:not(.cal-chip--all-day){background:transparent;color:var(--co-cal-text);border-color:transparent}.cal-chip:not(.cal-chip--all-day):hover{background:var(--co-cal-hover);filter:none}.cal-chip__time{flex:0 0 auto;color:var(--co-cal-text-muted);font-variant-numeric:tabular-nums}.cal-chip__title{overflow:hidden;text-overflow:ellipsis}.cal-chip__ext{flex:0 0 auto;opacity:0.8}.cal-chip--past{opacity:0.55}.cal-chip--locked{cursor:default}.cal-chip--external{border-style:dashed}.cal-chip--dragging{opacity:0.4}.cal-chip--continues-before{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.cal-chip--continues-after{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.cal-month__more{background:transparent;color:var(--co-cal-text-muted);border-color:transparent;font-weight:600;font-size:var(--co-font-size-11, 11px)}.cal-month__more:hover{background:var(--co-cal-hover);color:var(--co-cal-text)}`;
100
-
101
- const CoCalendarMonth = class {
102
- constructor(hostRef) {
103
- index.registerInstance(this, hostRef);
104
- this.coDaySelect = index.createEvent(this, "coDaySelect", 3);
105
- this.coEventClick = index.createEvent(this, "coEventClick", 3);
106
- this.coEventDrop = index.createEvent(this, "coEventDrop", 3);
107
- this.coMoreClick = index.createEvent(this, "coMoreClick", 3);
108
- /** Normalized events to render (from the engine's `normalizeEvents`). */
109
- this.events = [];
110
- /** BCP-47 locale for weekday labels. */
111
- this.locale = 'es-CO';
112
- /** First day of week, 0=Sun..6=Sat. */
113
- this.firstDayOfWeek = 1;
114
- /** Master interaction gate. */
115
- this.editable = true;
116
- /** Allow empty-day click to request a create. */
117
- this.selectable = true;
118
- /** Max event lanes per day before "+N more". */
119
- this.maxLanes = 3;
120
- /** Day currently hovered while dragging an event. */
121
- this.dragOverDate = null;
122
- /** Id of the event being dragged. */
123
- this.dragId = null;
124
- this.onPointerUp = () => this.finishDrag();
125
- this.handleKeyDown = (e) => {
126
- const cur = this.focused;
127
- let handled = true;
128
- switch (e.key) {
129
- case 'ArrowLeft':
130
- this.moveFocus(dates.addDays(cur, -1));
131
- break;
132
- case 'ArrowRight':
133
- this.moveFocus(dates.addDays(cur, 1));
134
- break;
135
- case 'ArrowUp':
136
- this.moveFocus(dates.addDays(cur, -7));
137
- break;
138
- case 'ArrowDown':
139
- this.moveFocus(dates.addDays(cur, 7));
140
- break;
141
- case 'Enter':
142
- case ' ':
143
- this.selectDay(cur);
144
- break;
145
- default:
146
- handled = false;
147
- }
148
- if (handled) {
149
- e.preventDefault();
150
- e.stopPropagation();
151
- }
152
- };
153
- }
154
- componentWillLoad() {
155
- this.focused = this.defaultFocus();
156
- }
157
- connectedCallback() {
158
- window.addEventListener('pointerup', this.onPointerUp);
159
- }
160
- disconnectedCallback() {
161
- window.removeEventListener('pointerup', this.onPointerUp);
162
- }
163
- defaultFocus() {
164
- const first = `${pad4(this.year)}-${pad2(this.month)}-01`;
165
- const today = dates.todayYMD();
166
- const t = dates.parseISO(today);
167
- return t.year === this.year && t.month === this.month ? today : first;
168
- }
169
- get matrix() {
170
- return dates.getMonthMatrix(this.year, this.month, this.firstDayOfWeek).map((row) => row.map((c) => c.value));
171
- }
172
- eventById(id) {
173
- return this.events.find((e) => e.id === id);
174
- }
175
- isDayInteractable(date) {
176
- return !dates.isDisabled(date, { min: this.minDate, max: this.maxDate });
177
- }
178
- // ── Selection / activation ──────────────────────────────────────────────
179
- selectDay(date) {
180
- if (!this.selectable || !this.isDayInteractable(date))
181
- return;
182
- this.coDaySelect.emit({ date });
183
- }
184
- activateEvent(id) {
185
- this.coEventClick.emit({ id });
186
- }
187
- // ── Keyboard (WAI-ARIA grid, forked from co-calendar) ───────────────────
188
- moveFocus(next) {
189
- this.focused = next;
190
- requestAnimationFrame(() => this.focusCell());
191
- }
192
- focusCell() {
193
- var _a, _b;
194
- (_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(`[data-date="${this.focused}"]`)) === null || _b === void 0 ? void 0 : _b.focus();
195
- }
196
- // ── Drag-move (day granularity) ─────────────────────────────────────────
197
- startDrag(e, id) {
198
- const ev = this.eventById(id);
199
- if (!ev || !this.editable || ev.editable === false || ev.startEditable === false)
200
- return;
201
- e.preventDefault();
202
- e.stopPropagation();
203
- this.dragId = id;
204
- this.dragOverDate = null;
205
- }
206
- finishDrag() {
207
- const id = this.dragId;
208
- const target = this.dragOverDate;
209
- this.dragId = null;
210
- this.dragOverDate = null;
211
- if (!id || !target)
212
- return;
213
- const ev = this.eventById(id);
214
- if (!ev)
215
- return;
216
- const originDay = ev.allDay
217
- ? ev.start.slice(0, 10)
218
- : tz.zonedDateKey(ev.startMs, this.timeZone);
219
- const deltaDays = daysBetween(originDay, target);
220
- if (deltaDays === 0)
221
- return;
222
- if (!this.isDayInteractable(target))
223
- return;
224
- const shifted = shiftEventByDays(ev, deltaDays, this.timeZone);
225
- this.coEventDrop.emit({
226
- id,
227
- start: shifted.start,
228
- end: shifted.end,
229
- oldStart: ev.start,
230
- oldEnd: ev.end,
231
- allDay: ev.allDay,
232
- });
233
- }
234
- // ── Render ──────────────────────────────────────────────────────────────
235
- renderChip(seg, weekDays) {
236
- var _a;
237
- const ev = this.eventById(seg.eventId);
238
- if (!ev)
239
- return null;
240
- const cols = weekDays.length;
241
- const left = (seg.startCol / cols) * 100;
242
- const width = ((seg.endCol - seg.startCol + 1) / cols) * 100;
243
- const isPast = ev.endMs <= Date.now();
244
- const isExternal = ((_a = ev.extendedProps) === null || _a === void 0 ? void 0 : _a.isExternal) === true;
245
- const locked = !this.editable || ev.editable === false;
246
- const timeText = ev.allDay || !seg.isStart
247
- ? ''
248
- : minutesToLabel(tz.zonedMinutesOfDay(ev.startMs, this.timeZone), this.locale);
249
- const style = {
250
- left: `${left}%`,
251
- width: `${width}%`,
252
- top: `calc(var(--co-cal-daynum-h) + ${seg.lane} * var(--co-cal-lane-h))`,
253
- };
254
- if (ev.backgroundColor) {
255
- style['--co-cal-event-bg'] = ev.backgroundColor;
256
- style['--co-cal-event-text'] = readableText(ev.backgroundColor);
257
- }
258
- if (ev.borderColor)
259
- style['--co-cal-event-border'] = ev.borderColor;
260
- return (index.h("button", { type: "button", key: `${seg.eventId}-${seg.weekIndex}`, class: {
261
- 'cal-chip': true,
262
- 'cal-chip--all-day': ev.allDay,
263
- 'cal-chip--past': isPast,
264
- 'cal-chip--external': isExternal,
265
- 'cal-chip--locked': locked,
266
- 'cal-chip--dragging': this.dragId === ev.id,
267
- 'cal-chip--continues-before': seg.continuesBefore,
268
- 'cal-chip--continues-after': seg.continuesAfter,
269
- }, style: style, title: ev.title, "aria-label": ev.title, onClick: (e) => {
270
- e.stopPropagation();
271
- this.activateEvent(ev.id);
272
- }, onPointerDown: (e) => this.startDrag(e, ev.id) }, !ev.allDay && index.h("span", { class: "cal-chip__dot", "aria-hidden": "true" }), timeText && index.h("span", { class: "cal-chip__time" }, timeText), index.h("span", { class: "cal-chip__title" }, ev.title || '—'), isExternal && index.h("co-icon", { name: "link", size: 11, class: "cal-chip__ext" })));
273
- }
274
- render() {
275
- var _a;
276
- const matrix = this.matrix;
277
- const normalized = this.events;
278
- const layout = layoutMonth(normalized, matrix, {
279
- maxLanes: this.maxLanes,
280
- timeZone: this.timeZone,
281
- });
282
- const segByWeek = new Map();
283
- for (const seg of layout.segments) {
284
- if (seg.lane >= this.maxLanes)
285
- continue;
286
- const arr = (_a = segByWeek.get(seg.weekIndex)) !== null && _a !== void 0 ? _a : [];
287
- arr.push(seg);
288
- segByWeek.set(seg.weekIndex, arr);
289
- }
290
- const short = dates.getWeekdayLabels(this.locale, this.firstDayOfWeek, 'short');
291
- const long = dates.getWeekdayLabels(this.locale, this.firstDayOfWeek, 'long');
292
- const today = dates.todayYMD();
293
- return (index.h("div", { key: '51781013cbfce9f2e8d07de9a46766c3a9326cbe', class: "cal-month", part: "grid", role: "grid", onKeyDown: this.handleKeyDown }, index.h("div", { key: 'ee3545fbd982390cd233cb54b33060b7cb9b08e1', class: "cal-month__dow", role: "row" }, short.map((lbl, i) => (index.h("span", { class: "cal-month__dow-cell", role: "columnheader", "aria-label": long[i] }, lbl)))), matrix.map((week, wi) => {
294
- var _a;
295
- return (index.h("div", { class: "cal-month__week", role: "row" }, index.h("div", { class: "cal-month__days" }, week.map((date) => {
296
- const ymd = dates.parseISO(date);
297
- const inMonth = ymd.month === this.month;
298
- const isToday = dates.compareYMD(date, today) === 0;
299
- const isFocused = dates.compareYMD(date, this.focused) === 0;
300
- const interactable = this.isDayInteractable(date);
301
- return (index.h("div", { role: "gridcell", "data-date": date, tabIndex: isFocused ? 0 : -1, "aria-current": isToday ? 'date' : undefined, "aria-disabled": interactable ? undefined : 'true', class: {
302
- 'cal-month__day': true,
303
- 'cal-month__day--outside': !inMonth,
304
- 'cal-month__day--today': isToday,
305
- 'cal-month__day--disabled': !interactable,
306
- 'cal-month__day--drag-over': this.dragId !== null && this.dragOverDate === date,
307
- }, onClick: () => this.selectDay(date), onPointerEnter: () => {
308
- if (this.dragId)
309
- this.dragOverDate = date;
310
- } }, index.h("span", { class: "cal-month__daynum" }, ymd.day)));
311
- })), index.h("div", { class: "cal-month__events" }, ((_a = segByWeek.get(wi)) !== null && _a !== void 0 ? _a : []).map((seg) => this.renderChip(seg, week)), week.map((date, col) => {
312
- var _a;
313
- const more = (_a = layout.overflow[date]) !== null && _a !== void 0 ? _a : 0;
314
- if (more <= 0)
315
- return null;
316
- return (index.h("button", { type: "button", class: "cal-month__more", style: {
317
- left: `${(col / week.length) * 100}%`,
318
- width: `${(1 / week.length) * 100}%`,
319
- top: `calc(var(--co-cal-daynum-h) + ${this.maxLanes} * var(--co-cal-lane-h))`,
320
- }, onClick: (e) => {
321
- e.stopPropagation();
322
- this.coMoreClick.emit({ date });
323
- } }, "+", more));
324
- }))));
325
- })));
326
- }
327
- get el() { return index.getElement(this); }
328
- };
329
- // ── helpers ─────────────────────────────────────────────────────────────────
330
- function pad2(n) {
331
- return String(n).padStart(2, '0');
332
- }
333
- function pad4(n) {
334
- return String(n).padStart(4, '0');
335
- }
336
- /** Whole-day delta between two "YYYY-MM-DD" using UTC-midnight arithmetic. */
337
- function daysBetween(a, b) {
338
- const [ay, am, ad] = a.split('-').map(Number);
339
- const [by, bm, bd] = b.split('-').map(Number);
340
- return Math.round((Date.UTC(by, bm - 1, bd) - Date.UTC(ay, am - 1, ad)) / 86400000);
341
- }
342
- /** Shift an event by N days, preserving wall-clock time (DST-correct for timed). */
343
- function shiftEventByDays(ev, deltaDays, timeZone) {
344
- if (ev.allDay) {
345
- return {
346
- start: dates.addDays(ev.start.slice(0, 10), deltaDays),
347
- end: dates.addDays(ev.end.slice(0, 10), deltaDays),
348
- };
349
- }
350
- return {
351
- start: tz.toUtcISO(shiftInstant(ev.startMs, deltaDays, timeZone)),
352
- end: tz.toUtcISO(shiftInstant(ev.endMs, deltaDays, timeZone)),
353
- };
354
- }
355
- function shiftInstant(ms, deltaDays, timeZone) {
356
- const wc = tz.getWallClock(ms, timeZone);
357
- const newDate = dates.addDays(`${pad4(wc.year)}-${pad2(wc.month)}-${pad2(wc.day)}`, deltaDays);
358
- const [y, m, d] = newDate.split('-').map(Number);
359
- return tz.wallClockToEpoch({ year: y, month: m, day: d, hour: wc.hour, minute: wc.minute, second: wc.second }, timeZone);
360
- }
361
- /** Short localized time label, e.g. "9:00 a. m." / "09:00". */
362
- function minutesToLabel(minutes, locale) {
363
- const h = Math.floor(minutes / 60);
364
- const m = minutes % 60;
365
- return new Intl.DateTimeFormat(locale, { hour: 'numeric', minute: '2-digit' }).format(new Date(2000, 0, 1, h, m));
366
- }
367
- /** Pick a readable text token for an arbitrary background color (YIQ luminance). */
368
- function readableText(bg) {
369
- const hex = bg.replace('#', '').trim();
370
- if (hex.length !== 3 && hex.length !== 6)
371
- return 'var(--co-cal-event-text)';
372
- const full = hex.length === 3 ? hex.split('').map((c) => c + c).join('') : hex;
373
- const r = parseInt(full.slice(0, 2), 16);
374
- const g = parseInt(full.slice(2, 4), 16);
375
- const b = parseInt(full.slice(4, 6), 16);
376
- const yiq = (r * 299 + g * 587 + b * 114) / 1000;
377
- return yiq >= 150 ? 'var(--co-cal-event-text-dark)' : 'var(--co-cal-event-text-light)';
378
- }
379
- CoCalendarMonth.style = coCalendarMonthCss();
380
-
381
- exports.co_calendar_month = CoCalendarMonth;
@@ -1,26 +0,0 @@
1
- 'use strict';
2
-
3
- var index = require('./index-kBiXCEE7.js');
4
-
5
- const coSkeletonCss = () => `:host{display:block}.co-skeleton{height:1em;border-radius:var(--co-border-radius-xs);background:linear-gradient( 90deg, var(--co-semantic-surface-secondary) 0%, var(--co-semantic-surface-hover, rgba(0, 0, 0, 0.04)) 50%, var(--co-semantic-surface-secondary) 100% );background-size:200% 100%;animation:co-skeleton-sweep 1.2s ease-in-out infinite}.co-skeleton--text{border-radius:var(--co-border-radius-xxs)}.co-skeleton--circle{border-radius:var(--co-border-radius-full)}@keyframes co-skeleton-sweep{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.co-skeleton{animation:none}}`;
6
-
7
- const CoSkeleton = class {
8
- constructor(hostRef) {
9
- index.registerInstance(this, hostRef);
10
- /** rect (default) | text (radio menor) | circle */
11
- this.variant = 'rect';
12
- /** Ancho CSS (default 100%) */
13
- this.width = '100%';
14
- /** Alto CSS (default por variante en CSS) */
15
- this.height = '';
16
- }
17
- render() {
18
- const style = { width: this.width };
19
- if (this.height)
20
- style.height = this.height;
21
- return (index.h("div", { key: '62e14646999122acf4190e503bc89ba1a75a16a0', class: { 'co-skeleton': true, [`co-skeleton--${this.variant}`]: true }, part: "skeleton", style: style, "aria-hidden": "true" }));
22
- }
23
- };
24
- CoSkeleton.style = coSkeletonCss();
25
-
26
- exports.co_skeleton = CoSkeleton;
@@ -1 +0,0 @@
1
- import{r as a,h as o,H as r}from"./p-BCEz3S-z.js";const e=class{constructor(o){a(this,o)}render(){return o(r,{key:"70a79bb97b8a0dd47b48c1df02e58a63d9a0f712",role:"group","aria-roledescription":"slide"},o("slot",{key:"9b639772cf96b15aa38ff4b2821ef9ca2a7faa53"}))}};e.style=":host{display:block;flex:0 0 100%;min-width:100%;box-sizing:border-box}";export{e as co_carousel_item}
@@ -1 +0,0 @@
1
- import{r as a,c as t,h as o,a as r}from"./p-BCEz3S-z.js";const s=class{constructor(o){a(this,o),this.coTabChange=t(this,"coTabChange",7),this.variant="pill",this.onSlotChange=()=>{this.syncTabs()}}onTabSelect(a){a.stopPropagation(),this.value=a.detail,this.coTabChange.emit(this.value),this.syncTabs()}watchValue(){this.syncTabs()}watchVariant(){this.syncTabs()}componentDidLoad(){this.syncTabs()}syncTabs(){this.el.querySelectorAll("co-tab").forEach((a=>{a.selected=(a.value||a.label)===this.value,a.variant=this.variant}))}render(){return o("div",{key:"fa78f36e2c58a2dfa33280ecc58a8e22b55a0238",class:{"co-tab-group":!0,[`co-tab-group--${this.variant}`]:!0},role:"tablist",part:"tab-group"},o("slot",{key:"0c27dbc561fa7aac4cb7697abb3b71187c9c53ff",onSlotchange:this.onSlotChange}))}get el(){return r(this)}static get watchers(){return{value:[{watchValue:0}],variant:[{watchVariant:0}]}}};s.style=":host{display:flex}.co-tab-group{display:flex;align-items:center;gap:var(--co-spacing-sm2)}.co-tab-group--underline{gap:var(--co-spacing-xs, 4px);border-bottom:1px solid var(--co-color-opacity-negro-8, rgba(31, 28, 27, 0.08))}.co-tab-group--segmented{display:inline-flex;gap:var(--co-spacing-xxs, 2px);padding:var(--co-spacing-sm, 6px);background:var(--co-color-gray-100, #f6f6f6);border-bottom:1px solid var(--co-color-opacity-negro-4, rgba(31, 28, 27, 0.04));border-radius:var(--co-border-radius-sm, 12px)}";export{s as co_tab_group}
@@ -1 +0,0 @@
1
- import{r as a,c as e,h as c}from"./p-BCEz3S-z.js";const d=class{constructor(c){a(this,c),this.coModeChange=e(this,"coModeChange",7),this.mode="full"}render(){return c("nav",{key:"1bc3acd9fa28f05c9665d9fe0ab78b9bf701b56e",class:{"co-sidebar":!0,[`co-sidebar--${this.mode}`]:!0},part:"sidebar"},c("div",{key:"a69b8746d524053a6caac9d8c5c8764f414cb599",class:"co-sidebar__header",part:"header"},c("slot",{key:"6f4fe0997327537261663c3177c29bd59aba2f3f",name:"header"})),c("div",{key:"f1c5d4fd6d11c5c872591706ab0c84d238bdf09b",class:"co-sidebar__body",part:"body"},c("slot",{key:"06b3192da38333283cf1a2c7e2c4922bce2d4b56"})),c("div",{key:"fb16f4a10d90cbbb82afbad3c531f5e807039cb8",class:"co-sidebar__footer",part:"footer"},c("slot",{key:"916b98484c92cb8c9e24f7b0e2facbd926bc8f68",name:"footer"})))}};d.style=":host{display:flex;height:100%}.co-sidebar{display:flex;flex-direction:column;background:var(--co-semantic-surface-page);border-right:1px solid var(--co-semantic-border-subtle);font-family:var(--co-font-family-primary);box-sizing:border-box;overflow:hidden;transition:width 0.2s ease}.co-sidebar--full{width:256px}.co-sidebar--min{width:58px;align-items:center}.co-sidebar__header{padding:var(--co-spacing-lg);flex-shrink:0}.co-sidebar--min .co-sidebar__header{padding:var(--co-spacing-md)}.co-sidebar__body{flex:1;overflow-y:auto;padding:var(--co-spacing-sm2) var(--co-spacing-md)}.co-sidebar--min .co-sidebar__body{padding:var(--co-spacing-sm2)}.co-sidebar__footer{padding:var(--co-spacing-md) var(--co-spacing-lg);flex-shrink:0}.co-sidebar--min .co-sidebar__footer{padding:var(--co-spacing-md)}.co-sidebar__header:empty,.co-sidebar__footer:empty{display:none}";export{d as co_sidebar}
@@ -1 +0,0 @@
1
- import{r as e,c,h as o}from"./p-BCEz3S-z.js";const r=class{constructor(o){e(this,o),this.coChange=c(this,"coChange",7),this.checked=!1,this.indeterminate=!1,this.size="small",this.disabled=!1,this.value="",this.appearance="default",this.handleClick=()=>{this.disabled||(this.indeterminate?(this.indeterminate=!1,this.checked=!1,this.coChange.emit(!1)):(this.checked=!this.checked,this.coChange.emit(this.checked)))}}render(){const e="overlay"===this.appearance,c=this.onColor&&(this.checked||this.indeterminate)?{background:this.onColor}:void 0;return o("div",{key:"7d7318c97238d5784bc5e97b4d062324567f4298",class:{"co-checkbox-row":!0,"co-checkbox-row--disabled":this.disabled},onClick:this.handleClick},o("span",{key:"6a9eb80dd31b3fdcbad3fd5375c24a7039d7ed91",role:"checkbox","aria-checked":this.indeterminate?"mixed":String(this.checked),"aria-label":this.label||"",class:{"co-checkbox":!0,[`co-checkbox--${this.size}`]:!0,"co-checkbox--overlay":e,"co-checkbox--checked":this.checked&&!this.indeterminate,"co-checkbox--indeterminate":this.indeterminate,"co-checkbox--disabled":this.disabled},style:c,part:"box"},e&&this.indeterminate&&o("svg",{key:"ea2fc2c66f3fdf9a385d30fe1c15a50196d61502",class:"co-checkbox__glyph",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},o("path",{key:"9a0c46128e14f5e62e956f51d292f8d59aa23bee",d:"M3 8h10",stroke:"#fff","stroke-width":"2.2","stroke-linecap":"round"})),e&&this.checked&&!this.indeterminate&&o("svg",{key:"5898d1b96e97a2ba71bd80ef4ee9446a1250e88e",class:"co-checkbox__glyph",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},o("path",{key:"9dcac76996e654417555489e7d2c1467848ca242",d:"M3.5 8.5l3 3 6-6.5",stroke:"#fff","stroke-width":"2.2","stroke-linecap":"round","stroke-linejoin":"round"}))),this.label&&o("span",{key:"3833a6596021f89ac26cd5201911d8fa4ca2f19a",class:"co-checkbox__label",part:"label"},this.label))}};r.style=":host{display:inline-flex;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1}.co-checkbox-row{display:flex;align-items:center;gap:var(--co-spacing-sm2);cursor:pointer}.co-checkbox-row--disabled{cursor:not-allowed}.co-checkbox__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;user-select:none}.co-checkbox-row--disabled .co-checkbox__label{color:var(--co-semantic-text-disabled)}.co-checkbox{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:none;outline:none;padding:0;overflow:hidden;flex-shrink:0;box-sizing:border-box;transition:background 0.15s ease, border-color 0.15s ease}.co-checkbox--small{width:16px;height:16px;border-radius:var(--co-border-radius-xxs);}.co-checkbox--medium{width:20px;height:20px;border-radius:var(--co-spacing-sm);}.co-checkbox--large{width:24px;height:24px;border-radius:var(--co-spacing-sm);}.co-checkbox:not(.co-checkbox--checked){background:color-mix(in srgb, var(--co-semantic-surface-secondary) 35%, transparent);-webkit-backdrop-filter:blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate));backdrop-filter:blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate));border:1px solid var(--co-semantic-border-subtle)}.co-checkbox--checked{background:var(--co-semantic-surface-primary);border:none}.co-checkbox--checked::after{content:'';display:block;box-sizing:border-box;border-style:solid;border-color:var(--co-semantic-on-primary);border-width:0 0 1.5px 1.5px;transform:rotate(-45deg) translateY(-15%)}.co-checkbox--small.co-checkbox--checked::after{width:7px;height:4px}.co-checkbox--medium.co-checkbox--checked::after{width:8px;height:5px}.co-checkbox--large.co-checkbox--checked::after{width:10px;height:6px}.co-checkbox--indeterminate{background:var(--co-semantic-surface-primary);border:none}.co-checkbox--indeterminate::after{content:'';display:block;background:var(--co-semantic-on-primary);border-radius:1px}.co-checkbox--small.co-checkbox--indeterminate::after{width:8px;height:1.5px}.co-checkbox--medium.co-checkbox--indeterminate::after{width:10px;height:1.75px}.co-checkbox--large.co-checkbox--indeterminate::after{width:12px;height:2px}.co-checkbox--disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}.co-checkbox--overlay{border-radius:6px}.co-checkbox--overlay.co-checkbox--small{width:20px;height:20px;border-radius:6px}.co-checkbox--overlay.co-checkbox--medium,.co-checkbox--overlay.co-checkbox--large{width:22px;height:22px;border-radius:6px}.co-checkbox--overlay:not(.co-checkbox--checked):not(.co-checkbox--indeterminate){background:rgba(255, 255, 255, 0.9);box-shadow:inset 0 0 0 1px var(--co-color-opacity-negro-16, rgba(31, 28, 27, 0.16));border:none}.co-checkbox--overlay.co-checkbox--checked,.co-checkbox--overlay.co-checkbox--indeterminate{background:var(--co-color-primary-azul, #2563eb);border:none;box-shadow:none}.co-checkbox--overlay.co-checkbox--checked::after,.co-checkbox--overlay.co-checkbox--indeterminate::after{content:none}.co-checkbox__glyph{display:block;width:100%;height:100%;pointer-events:none}@supports not (background: color-mix(in srgb, red, transparent)){.co-checkbox:not(.co-checkbox--checked){background:transparent}}";export{r as co_checkbox}
@@ -1 +0,0 @@
1
- import{r as e,h as o}from"./p-BCEz3S-z.js";const r=class{constructor(o){e(this,o),this.variant="rect",this.width="100%",this.height=""}render(){const e={width:this.width};return this.height&&(e.height=this.height),o("div",{key:"62e14646999122acf4190e503bc89ba1a75a16a0",class:{"co-skeleton":!0,[`co-skeleton--${this.variant}`]:!0},part:"skeleton",style:e,"aria-hidden":"true"})}};r.style=":host{display:block}.co-skeleton{height:1em;border-radius:var(--co-border-radius-xs);background:linear-gradient( 90deg, var(--co-semantic-surface-secondary) 0%, var(--co-semantic-surface-hover, rgba(0, 0, 0, 0.04)) 50%, var(--co-semantic-surface-secondary) 100% );background-size:200% 100%;animation:co-skeleton-sweep 1.2s ease-in-out infinite}.co-skeleton--text{border-radius:var(--co-border-radius-xxs)}.co-skeleton--circle{border-radius:var(--co-border-radius-full)}@keyframes co-skeleton-sweep{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.co-skeleton{animation:none}}";export{r as co_skeleton}
@@ -1 +0,0 @@
1
- import{r,c as e,h as a,H as o}from"./p-BCEz3S-z.js";const t=class{constructor(a){r(this,a),this.coSidebarModeChange=e(this,"coSidebarModeChange",7),this.sidebarMode="min",this.contentCard=!0}render(){return a(o,{key:"eba2c0de5107ee99f46dd0f58e93c7957b635fc6"},a("aside",{key:"d70fd877fb8b0341f1a93d0c96f7e94ccc67a5bc",class:"sidebar",part:"sidebar"},a("div",{key:"712d562d0137d49073264464a4656efa13505080",class:"sidebar__header",part:"sidebar-header"},a("slot",{key:"3414826e8939d2cd01f1fcdca7dadf1ec6c6921e",name:"sidebar-header"})),a("div",{key:"2f9ec77ce51b77048130c042a7c275b8f1169b68",class:"sidebar__body",part:"sidebar-body"},a("slot",{key:"6291e33cce9afcfb59fac200629f899206d667eb",name:"sidebar"})),a("div",{key:"e3314bda8652362d2570960a0ee65fb843d6e07f",class:"sidebar__footer",part:"sidebar-footer"},a("slot",{key:"e2b09d7a7435e0c29f3ac43b9a4200763964d52e",name:"sidebar-footer"}))),a("div",{key:"73081c14cf2f04ad4b0062007287edea09bb3a88",class:"main",part:"main"},a("div",{key:"5e3dbe0b27716f815972ea39dda4479b2072872c",class:"main__card",part:"card"},a("header",{key:"3df713d4c3a015ba14366433770cfba66e9b8bbc",class:"main__header",part:"header"},a("slot",{key:"8e36000c6195f22fb7abe54d1adfb026374d9248",name:"navbar"})),a("main",{key:"63cda7e07239d551fb950e12cce998e2fe9271c7",class:{main__content:!0,"main__content--card":this.contentCard},part:"content"},a("slot",{key:"7ccab85592e8e9efdc2802f0147ad8b5ad749899"})))))}};t.style=':host{display:flex;height:100vh;overflow:hidden;background:var(--co-app-shell-bg, linear-gradient( 180deg, var(--co-color-base-off-white) 0%, var(--co-color-neutral-100) 50%, var(--co-color-neutral-100) 100% ));font-family:var(--co-font-family-primary)}.sidebar{display:flex;flex-direction:column;width:256px;height:100%;flex-shrink:0;overflow:hidden;transition:width 0.2s ease;padding:var(--co-spacing-sm);padding-right:0;box-sizing:border-box}:host([sidebar-mode="min"]) .sidebar{--co-sidebar-min-width:64px;width:var(--co-sidebar-min-width);align-items:flex-start;padding:var(--co-spacing-sm) 0}.sidebar__header{flex-shrink:0}.sidebar__body{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent}.sidebar__body:hover{scrollbar-color:var(--co-color-opacity-blanco-16) transparent}.sidebar__body::-webkit-scrollbar{width:6px}.sidebar__body::-webkit-scrollbar-track{background:transparent}.sidebar__body::-webkit-scrollbar-thumb{background:transparent;border-radius:9999px}.sidebar__body:hover::-webkit-scrollbar-thumb{background:var(--co-color-opacity-blanco-16)}.sidebar__body:hover::-webkit-scrollbar-thumb:hover{background:var(--co-color-opacity-blanco-25)}.sidebar__body:hover::-webkit-scrollbar-thumb:active{background:var(--co-color-opacity-blanco-50)}.sidebar__footer{flex-shrink:0}:host([sidebar-mode="min"]) .sidebar__header,:host([sidebar-mode="min"]) .sidebar__body,:host([sidebar-mode="min"]) .sidebar__footer{display:flex;flex-direction:column;align-items:center;width:var(--co-sidebar-min-width, 64px)}:host([sidebar-mode="min"]) .sidebar__header{gap:var(--co-spacing-sm);padding-bottom:var(--co-spacing-md)}:host([sidebar-mode="min"]) .sidebar__body{scrollbar-width:none}:host([sidebar-mode="min"]) .sidebar__body::-webkit-scrollbar{width:0}.main{display:flex;flex-direction:column;flex:1;min-width:0;padding:0;margin:var(--co-spacing-sm);margin-left:0;min-height:0;filter:drop-shadow(0 1px 2px rgba(31, 28, 27, 0.06)) drop-shadow(0 10px 28px rgba(31, 28, 27, 0.12));--co-shell-r:var(--co-border-radius-md);--co-sq-tl:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 0L95 0L92.5 0L90 0L87.5 0.01L85 0.01L82.5 0.02L80 0.04L77.5 0.06L75 0.1L72.5 0.14L70 0.2L67.5 0.28L65 0.38L62.5 0.5L60 0.65L57.5 0.83L55 1.04L52.5 1.3L50 1.6L47.5 1.96L45 2.37L42.5 2.85L40 3.41L37.5 4.05L35 4.8L32.5 5.65L30 6.63L27.5 7.77L25 9.07L22.5 10.58L20 12.34L17.5 14.41L15 16.85L12.5 19.79L10 23.42L7.5 28.06L5 34.37L2.5 44.29L0 100L100 100Z%27 fill=%27%23fff%27/></svg>");--co-sq-tr:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 0L5 0L7.5 0L10 0L12.5 0.01L15 0.01L17.5 0.02L20 0.04L22.5 0.06L25 0.1L27.5 0.14L30 0.2L32.5 0.28L35 0.38L37.5 0.5L40 0.65L42.5 0.83L45 1.04L47.5 1.3L50 1.6L52.5 1.96L55 2.37L57.5 2.85L60 3.41L62.5 4.05L65 4.8L67.5 5.65L70 6.63L72.5 7.77L75 9.07L77.5 10.58L80 12.34L82.5 14.41L85 16.85L87.5 19.79L90 23.42L92.5 28.06L95 34.37L97.5 44.29L100 100L0 100Z%27 fill=%27%23fff%27/></svg>");--co-sq-bl:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 55.71L5 65.63L7.5 71.94L10 76.58L12.5 80.21L15 83.15L17.5 85.59L20 87.66L22.5 89.42L25 90.93L27.5 92.23L30 93.37L32.5 94.35L35 95.2L37.5 95.95L40 96.59L42.5 97.15L45 97.63L47.5 98.04L50 98.4L52.5 98.7L55 98.96L57.5 99.17L60 99.35L62.5 99.5L65 99.62L67.5 99.72L70 99.8L72.5 99.86L75 99.9L77.5 99.94L80 99.96L82.5 99.98L85 99.99L87.5 99.99L90 100L92.5 100L95 100L97.5 100L100 100L100 0Z%27 fill=%27%23fff%27/></svg>");--co-sq-br:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 55.71L95 65.63L92.5 71.94L90 76.58L87.5 80.21L85 83.15L82.5 85.59L80 87.66L77.5 89.42L75 90.93L72.5 92.23L70 93.37L67.5 94.35L65 95.2L62.5 95.95L60 96.59L57.5 97.15L55 97.63L52.5 98.04L50 98.4L47.5 98.7L45 98.96L42.5 99.17L40 99.35L37.5 99.5L35 99.62L32.5 99.72L30 99.8L27.5 99.86L25 99.9L22.5 99.94L20 99.96L17.5 99.98L15 99.99L12.5 99.99L10 100L7.5 100L5 100L2.5 100L0 100L0 0Z%27 fill=%27%23fff%27/></svg>")}.main__card{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-radius:0;-webkit-mask:var(--co-sq-tl) top left / var(--co-shell-r) var(--co-shell-r) no-repeat, var(--co-sq-tr) top right / var(--co-shell-r) var(--co-shell-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-shell-r) var(--co-shell-r) no-repeat, var(--co-sq-br) bottom right / var(--co-shell-r) var(--co-shell-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-shell-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-shell-r) + 2px) 100% no-repeat;mask:var(--co-sq-tl) top left / var(--co-shell-r) var(--co-shell-r) no-repeat, var(--co-sq-tr) top right / var(--co-shell-r) var(--co-shell-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-shell-r) var(--co-shell-r) no-repeat, var(--co-sq-br) bottom right / var(--co-shell-r) var(--co-shell-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-shell-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-shell-r) + 2px) 100% no-repeat}.main__header{flex-shrink:0}.main__content{flex:1;min-height:0;overflow:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent}.main__content:hover{scrollbar-color:var(--co-color-opacity-negro-16) transparent}.main__content::-webkit-scrollbar{width:6px;height:6px}.main__content::-webkit-scrollbar-track{background:transparent}.main__content::-webkit-scrollbar-thumb{background:transparent;border-radius:9999px}.main__content:hover::-webkit-scrollbar-thumb{background:var(--co-color-opacity-negro-16)}.main__content:hover::-webkit-scrollbar-thumb:hover{background:var(--co-color-opacity-negro-25)}.main__content:hover::-webkit-scrollbar-thumb:active{background:var(--co-color-opacity-negro-50)}.main__content--card{background:var(--co-semantic-surface-secondary)}';export{t as co_app_shell}
@@ -1 +0,0 @@
1
- import{r as t,c as e,h as i}from"./p-BCEz3S-z.js";import{g as a}from"./p-C1DCLOEl.js";import{a as s,d as o,p as n,g as c,b as r,e as l}from"./p-tPYikBRJ.js";import{t as d,a as h,g as u}from"./p-B6JZk8fL.js";const f=/^\d{4}-\d{2}-\d{2}$/,b=864e5;function p(t){if(!f.exec(t))return null;const[e,i,a]=t.split("-").map(Number);return i<1||i>12||a<1||a>31?null:Date.UTC(e,i-1,a)}function v(t){return h(t).slice(0,10)}function m(t,e={}){if(!t||!t.id||!t.start)return null;const i=e.defaultDurationMinutes??60,a=!0===t.allDay;let s,o,n,c;if(a){const e=p(t.start.slice(0,10));if(null===e)return null;if(s=e,n=v(e),t.end){const i=p(t.end.slice(0,10));o=null!==i&&i>e?i:e+b}else o=e+b;c=v(o)}else{let e;try{e=d(t.start)}catch{return null}if(s=e,n=t.start,t.end){let a;try{a=d(t.end)}catch{return null}o=a>e?a:e+6e4*i}else o=e+6e4*i;c=h(o)}const r=t.status?e.statusColors?.[t.status]:void 0,l=t.editable??!0;return{id:t.id,title:t.title??"",allDay:a,start:n,end:c,startMs:s,endMs:o,status:t.status,backgroundColor:t.backgroundColor??t.color??r?.backgroundColor,borderColor:t.borderColor??r?.borderColor,className:t.className,editable:l,startEditable:t.startEditable??l,durationEditable:t.durationEditable??l,display:t.display??"block",extendedProps:t.extendedProps??{}}}const g=class{constructor(i){t(this,i),this.coEventClick=e(this,"coEventClick",3),this.coDateSelect=e(this,"coDateSelect",3),this.coEventDrop=e(this,"coEventDrop",3),this.coDatesSet=e(this,"coDatesSet",3),this.coViewChange=e(this,"coViewChange",3),this.coMoreClick=e(this,"coMoreClick",3),this.view="month",this.events=[],this.locale="es-CO",this.editable=!0,this.selectable=!0,this.dayMaxEvents=3,this.firstDayOfWeek=1,this.availableViews=["month"],this.defaultDurationMinutes=60,this.goToday=()=>this.setAnchor(s()),this.goPrev=()=>this.step(-1),this.goNext=()=>this.step(1),this.handleDaySelect=t=>{const e=t.detail.date;this.coDateSelect.emit({start:e,end:o(e,1),allDay:!0})},this.handleEventClick=t=>{const e=this.normalized.find((e=>e.id===t.detail.id));e&&this.coEventClick.emit({event:e})},this.handleEventDrop=t=>{const e=this.normalized.find((e=>e.id===t.detail.id));e&&this.coEventDrop.emit({event:e,start:t.detail.start,end:t.detail.end,oldStart:t.detail.oldStart,oldEnd:t.detail.oldEnd,allDay:t.detail.allDay,revert:()=>{}})},this.handleMoreClick=t=>{const e=t.detail.date,i=this.tz,a=this.normalized.filter((t=>{var a;return(t.allDay?t.start.slice(0,10):(a=t.startMs,new Intl.DateTimeFormat("en-CA",{timeZone:i,year:"numeric",month:"2-digit",day:"2-digit"}).format(new Date(a))))===e}));this.coMoreClick.emit({date:e,events:a})}}componentWillLoad(){this.anchor=this.date&&n(this.date)?this.date:s()}componentDidLoad(){this.emitDatesSet()}onDateChange(t){t&&n(t)&&t!==this.anchor&&(this.anchor=t,this.emitDatesSet())}get tz(){return this.timeZone||u()}get normalized(){return function(t,e={}){if(!Array.isArray(t))return[];const i=[];for(const a of t){const t=m(a,e);t&&i.push(t)}return i}(function(t){if(Array.isArray(t))return t;if("string"==typeof t&&t.trim())try{const e=JSON.parse(t);return Array.isArray(e)?e:[]}catch(t){return[]}return[]}(this.events),{defaultDurationMinutes:this.defaultDurationMinutes,statusColors:_(this.statusColors)})}get viewsList(){return Array.isArray(this.availableViews)?this.availableViews:String(this.availableViews).split(",").map((t=>t.trim())).filter(Boolean)}visibleRange(){const t=n(this.anchor),e=c(t.year,t.month,this.firstDayOfWeek);return{start:e[0][0].value,end:o(e[e.length-1][6].value,1)}}emitDatesSet(){const{start:t,end:e}=this.visibleRange();this.coDatesSet.emit({view:this.view,start:t,end:e,activeDate:this.anchor})}setAnchor(t){this.anchor=t,this.date=t,this.emitDatesSet()}step(t){this.setAnchor("month"===this.view?r(this.anchor,t):o(this.anchor,7*t))}switchView(t){t!==this.view&&(this.view=t,this.coViewChange.emit({view:t}),this.emitDatesSet())}title(){const t=n(this.anchor);return l(t.year,t.month,this.locale,"long")}render(){var t;const e=a(this.locale),s=this.viewsList,o=n(this.anchor);return i("div",{key:"4820180047be56115d2b350343c50cd73e3c275c",class:"cal"},i("div",{key:"d623a44932b94bef980f35459247b743ee63b656",class:"cal__toolbar",part:"toolbar"},i("div",{key:"bd3019ee327752aeef1f8f5c8bcd738adf966861",class:"cal__nav-group"},i("button",{key:"7e57307890143d11c1d18599025c9204c88c75fa",type:"button",class:"cal__btn",onClick:this.goToday},null!==(t=e.today)&&void 0!==t?t:"Today"),i("button",{key:"97270e2db26f1d014b4c92f01f68a38881cf9dc5",type:"button",class:"cal__icon-btn","aria-label":e.prevMonth,onClick:this.goPrev},i("co-icon",{key:"64ef0715a090303ca38c039b456ead6e30ec79c9",name:"caret-left",size:16})),i("button",{key:"4c0e5eb70d51c8c7d74c4f49662395cc63d14c8a",type:"button",class:"cal__icon-btn","aria-label":e.nextMonth,onClick:this.goNext},i("co-icon",{key:"e83a4ea954f6be95369b7af5c07fb8b3541761ea",name:"caret-right",size:16}))),i("h2",{key:"465e8b8aa199bb897d81226da06ad899d3c3467e",class:"cal__title","aria-live":"polite"},this.title()),s.length>1?i("div",{class:"cal__views",role:"tablist"},s.map((t=>{var a;return i("button",{type:"button",role:"tab","aria-selected":this.view===t?"true":"false",class:{"cal__view-btn":!0,"cal__view-btn--active":this.view===t},onClick:()=>this.switchView(t)},null!==(a=e[t])&&void 0!==a?a:t)}))):i("span",{class:"cal__views-spacer"})),i("div",{key:"4997eb7d83efa22dab101463c3550e0cee373b89",class:"cal__body",part:"body"},"month"===this.view?i("co-calendar-month",{events:this.normalized,year:o.year,month:o.month,locale:this.locale,firstDayOfWeek:this.firstDayOfWeek,timeZone:this.tz,minDate:this.minDate,maxDate:this.maxDate,editable:this.editable,selectable:this.selectable,maxLanes:this.dayMaxEvents,onCoDaySelect:this.handleDaySelect,onCoEventClick:this.handleEventClick,onCoEventDrop:this.handleEventDrop,onCoMoreClick:this.handleMoreClick}):i("div",{class:"cal__placeholder"},i("co-icon",{name:"calendar-dots",size:32}),i("p",null,`${this.view} view — coming soon`))))}static get watchers(){return{date:[{onDateChange:0}]}}};function _(t){if(t){if("string"==typeof t)try{return JSON.parse(t)}catch(t){return}return t}}g.style=":host{display:flex;flex-direction:column;gap:var(--co-spacing-md);font-family:var(--co-font-family-primary);color:var(--co-semantic-text-default);block-size:100%;min-block-size:0}.cal{display:flex;flex-direction:column;gap:var(--co-spacing-md);block-size:100%;min-block-size:0}.cal__toolbar{display:flex;align-items:center;gap:var(--co-spacing-md)}.cal__nav-group{display:inline-flex;align-items:center;gap:var(--co-spacing-xs)}.cal__title{flex:1 1 auto;margin:0;text-align:center;font-size:var(--co-font-size-16, 16px);font-weight:600;text-transform:capitalize;color:var(--co-semantic-text-default)}.cal__views-spacer{flex:0 0 auto;inline-size:1px}.cal__btn{height:32px;padding:0 var(--co-spacing-md);background:none;border:1px solid var(--co-semantic-border-default);border-radius:var(--co-border-radius-xs);font-family:inherit;font-size:var(--co-font-size-14, 14px);color:var(--co-semantic-text-default);cursor:pointer;transition:background 0.1s ease}.cal__btn:hover{background:var(--co-semantic-surface-hover)}.cal__btn:focus-visible{outline:2px solid var(--co-semantic-border-focus);outline-offset:1px}.cal__icon-btn{height:32px;width:32px;display:inline-flex;align-items:center;justify-content:center;background:none;border:0;border-radius:var(--co-border-radius-xs);color:var(--co-semantic-text-default);cursor:pointer;transition:background 0.1s ease}.cal__icon-btn:hover{background:var(--co-semantic-surface-hover)}.cal__icon-btn:focus-visible{outline:2px solid var(--co-semantic-border-focus);outline-offset:1px}.cal__views{display:inline-flex;gap:2px;padding:2px;background:var(--co-semantic-surface-hover);border-radius:var(--co-border-radius-xs)}.cal__view-btn{height:28px;padding:0 var(--co-spacing-md);background:none;border:0;border-radius:var(--co-border-radius-xxs);font-family:inherit;font-size:var(--co-font-size-14, 14px);color:var(--co-semantic-text-secondary);cursor:pointer;text-transform:capitalize}.cal__view-btn--active{background:var(--co-semantic-surface-page);color:var(--co-semantic-text-default);font-weight:600;box-shadow:0 1px 2px rgba(0, 0, 0, 0.08)}.cal__view-btn:focus-visible{outline:2px solid var(--co-semantic-border-focus);outline-offset:1px}.cal__body{flex:1 1 auto;min-block-size:0;display:flex;flex-direction:column}.cal__body co-calendar-month{flex:1 1 auto;min-block-size:0}.cal__placeholder{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--co-spacing-sm);color:var(--co-semantic-text-muted);text-transform:capitalize}";export{g as co_event_calendar}
@@ -1 +0,0 @@
1
- import{r,h as e}from"./p-BCEz3S-z.js";const o=class{constructor(e){r(this,e)}render(){return e("hr",{key:"e47780a9d8f80cf8a9b1b4585e71bb20b2bebf5d",class:"co-menu-divider",role:"separator"})}};o.style=":host{display:block}.co-menu-divider{border:0;border-top:1px solid var(--co-semantic-border-subtle, rgba(31, 28, 27, 0.08));margin:var(--co-spacing-xs, 4px) 0}";export{o as co_menu_divider}
@@ -1 +0,0 @@
1
- import{r as t,c as a,h as o,a as e}from"./p-BCEz3S-z.js";import{c as r,d as c,a as i,p as n,g as s,h as l,j as h}from"./p-tPYikBRJ.js";import{z as d,b as u,a as p,c as v,w as f}from"./p-B6JZk8fL.js";const m=class{constructor(o){t(this,o),this.coDaySelect=a(this,"coDaySelect",3),this.coEventClick=a(this,"coEventClick",3),this.coEventDrop=a(this,"coEventDrop",3),this.coMoreClick=a(this,"coMoreClick",3),this.events=[],this.locale="es-CO",this.firstDayOfWeek=1,this.editable=!0,this.selectable=!0,this.maxLanes=3,this.dragOverDate=null,this.dragId=null,this.onPointerUp=()=>this.finishDrag(),this.handleKeyDown=t=>{const a=this.focused;let o=!0;switch(t.key){case"ArrowLeft":this.moveFocus(c(a,-1));break;case"ArrowRight":this.moveFocus(c(a,1));break;case"ArrowUp":this.moveFocus(c(a,-7));break;case"ArrowDown":this.moveFocus(c(a,7));break;case"Enter":case" ":this.selectDay(a);break;default:o=!1}o&&(t.preventDefault(),t.stopPropagation())}}componentWillLoad(){this.focused=this.defaultFocus()}connectedCallback(){window.addEventListener("pointerup",this.onPointerUp)}disconnectedCallback(){window.removeEventListener("pointerup",this.onPointerUp)}defaultFocus(){const t=`${g(this.year)}-${b(this.month)}-01`,a=i(),o=n(a);return o.year===this.year&&o.month===this.month?a:t}get matrix(){return s(this.year,this.month,this.firstDayOfWeek).map((t=>t.map((t=>t.value))))}eventById(t){return this.events.find((a=>a.id===t))}isDayInteractable(t){return!l(t,{min:this.minDate,max:this.maxDate})}selectDay(t){this.selectable&&this.isDayInteractable(t)&&this.coDaySelect.emit({date:t})}activateEvent(t){this.coEventClick.emit({id:t})}moveFocus(t){this.focused=t,requestAnimationFrame((()=>this.focusCell()))}focusCell(){var t,a;null===(a=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector(`[data-date="${this.focused}"]`))||void 0===a||a.focus()}startDrag(t,a){const o=this.eventById(a);o&&this.editable&&!1!==o.editable&&!1!==o.startEditable&&(t.preventDefault(),t.stopPropagation(),this.dragId=a,this.dragOverDate=null)}finishDrag(){const t=this.dragId,a=this.dragOverDate;if(this.dragId=null,this.dragOverDate=null,!t||!a)return;const o=this.eventById(t);if(!o)return;const e=function(t,a){const[o,e,r]=t.split("-").map(Number),[c,i,n]=a.split("-").map(Number);return Math.round((Date.UTC(c,i-1,n)-Date.UTC(o,e-1,r))/864e5)}(o.allDay?o.start.slice(0,10):d(o.startMs,this.timeZone),a);if(0===e)return;if(!this.isDayInteractable(a))return;const r=function(t,a,o){return t.allDay?{start:c(t.start.slice(0,10),a),end:c(t.end.slice(0,10),a)}:{start:p(_(t.startMs,a,o)),end:p(_(t.endMs,a,o))}}(o,e,this.timeZone);this.coEventDrop.emit({id:t,start:r.start,end:r.end,oldStart:o.start,oldEnd:o.end,allDay:o.allDay})}renderChip(t,a){var e;const r=this.eventById(t.eventId);if(!r)return null;const c=a.length,i=t.startCol/c*100,n=(t.endCol-t.startCol+1)/c*100,s=r.endMs<=Date.now(),l=!0===(null===(e=r.extendedProps)||void 0===e?void 0:e.isExternal),h=!this.editable||!1===r.editable,d=r.allDay||!t.isStart?"":function(t,a){const o=Math.floor(t/60),e=t%60;return new Intl.DateTimeFormat(a,{hour:"numeric",minute:"2-digit"}).format(new Date(2e3,0,1,o,e))}(u(r.startMs,this.timeZone),this.locale),p={left:`${i}%`,width:`${n}%`,top:`calc(var(--co-cal-daynum-h) + ${t.lane} * var(--co-cal-lane-h))`};return r.backgroundColor&&(p["--co-cal-event-bg"]=r.backgroundColor,p["--co-cal-event-text"]=function(t){const a=t.replace("#","").trim();if(3!==a.length&&6!==a.length)return"var(--co-cal-event-text)";const o=3===a.length?a.split("").map((t=>t+t)).join(""):a;return(299*parseInt(o.slice(0,2),16)+587*parseInt(o.slice(2,4),16)+114*parseInt(o.slice(4,6),16))/1e3>=150?"var(--co-cal-event-text-dark)":"var(--co-cal-event-text-light)"}(r.backgroundColor)),r.borderColor&&(p["--co-cal-event-border"]=r.borderColor),o("button",{type:"button",key:`${t.eventId}-${t.weekIndex}`,class:{"cal-chip":!0,"cal-chip--all-day":r.allDay,"cal-chip--past":s,"cal-chip--external":l,"cal-chip--locked":h,"cal-chip--dragging":this.dragId===r.id,"cal-chip--continues-before":t.continuesBefore,"cal-chip--continues-after":t.continuesAfter},style:p,title:r.title,"aria-label":r.title,onClick:t=>{t.stopPropagation(),this.activateEvent(r.id)},onPointerDown:t=>this.startDrag(t,r.id)},!r.allDay&&o("span",{class:"cal-chip__dot","aria-hidden":"true"}),d&&o("span",{class:"cal-chip__time"},d),o("span",{class:"cal-chip__title"},r.title||"—"),l&&o("co-icon",{name:"link",size:11,class:"cal-chip__ext"}))}render(){var t;const a=this.matrix,e=function(t,a,o={}){const e=o.maxLanes??1/0,i=[],n={};let s=0;const l=t.map((t=>function(t,a){if(t.allDay){const a=t.start.slice(0,10),o=c(t.end.slice(0,10),-1);return r(o,a)<0?{event:t,firstDay:a,lastDay:a}:{event:t,firstDay:a,lastDay:o}}const o=a?d(t.startMs,a):t.start.slice(0,10);return{event:t,firstDay:o,lastDay:o}}(t,o.timeZone))).filter((t=>null!==t));if(a.forEach(((t,a)=>{if(!t.length)return;const o=t[0],e=t[t.length-1],c=new Map(t.map(((t,a)=>[t,a]))),n=l.filter((t=>r(t.firstDay,e)<=0&&r(o,t.lastDay)<=0)).map((a=>{const i=r(a.firstDay,o)>=0?a.firstDay:o,n=r(a.lastDay,e)<=0?a.lastDay:e;return{span:a,startCol:c.get(i)??0,endCol:c.get(n)??t.length-1}})).sort(((t,a)=>t.startCol-a.startCol||a.endCol-a.startCol-(t.endCol-t.startCol)||t.span.event.startMs-a.span.event.startMs||(t.span.event.id<a.span.event.id?-1:1))),h=[];for(const t of n){let c=0;for(;h.some((a=>a.lane===c&&!(t.endCol<a.startCol||t.startCol>a.endCol)));)c++;h.push({lane:c,startCol:t.startCol,endCol:t.endCol}),s=Math.max(s,c+1),i.push({eventId:t.span.event.id,weekIndex:a,lane:c,startCol:t.startCol,endCol:t.endCol,isStart:r(t.span.firstDay,o)>=0,isEnd:r(t.span.lastDay,e)<=0,continuesBefore:r(t.span.firstDay,o)<0,continuesAfter:r(t.span.lastDay,e)>0})}})),Number.isFinite(e))for(const t of i)if(t.lane>=e)for(let o=t.startCol;o<=t.endCol;o++){const e=a[t.weekIndex][o];n[e]=(n[e]??0)+1}return{segments:i,overflow:n,laneCount:s}}(this.events,a,{maxLanes:this.maxLanes,timeZone:this.timeZone}),s=new Map;for(const a of e.segments){if(a.lane>=this.maxLanes)continue;const o=null!==(t=s.get(a.weekIndex))&&void 0!==t?t:[];o.push(a),s.set(a.weekIndex,o)}const l=h(this.locale,this.firstDayOfWeek,"short"),u=h(this.locale,this.firstDayOfWeek,"long"),p=i();return o("div",{key:"51781013cbfce9f2e8d07de9a46766c3a9326cbe",class:"cal-month",part:"grid",role:"grid",onKeyDown:this.handleKeyDown},o("div",{key:"ee3545fbd982390cd233cb54b33060b7cb9b08e1",class:"cal-month__dow",role:"row"},l.map(((t,a)=>o("span",{class:"cal-month__dow-cell",role:"columnheader","aria-label":u[a]},t)))),a.map(((t,a)=>{var c;return o("div",{class:"cal-month__week",role:"row"},o("div",{class:"cal-month__days"},t.map((t=>{const a=n(t),e=a.month===this.month,c=0===r(t,p),i=0===r(t,this.focused),s=this.isDayInteractable(t);return o("div",{role:"gridcell","data-date":t,tabIndex:i?0:-1,"aria-current":c?"date":void 0,"aria-disabled":s?void 0:"true",class:{"cal-month__day":!0,"cal-month__day--outside":!e,"cal-month__day--today":c,"cal-month__day--disabled":!s,"cal-month__day--drag-over":null!==this.dragId&&this.dragOverDate===t},onClick:()=>this.selectDay(t),onPointerEnter:()=>{this.dragId&&(this.dragOverDate=t)}},o("span",{class:"cal-month__daynum"},a.day))}))),o("div",{class:"cal-month__events"},(null!==(c=s.get(a))&&void 0!==c?c:[]).map((a=>this.renderChip(a,t))),t.map(((a,r)=>{var c;const i=null!==(c=e.overflow[a])&&void 0!==c?c:0;return i<=0?null:o("button",{type:"button",class:"cal-month__more",style:{left:r/t.length*100+"%",width:1/t.length*100+"%",top:`calc(var(--co-cal-daynum-h) + ${this.maxLanes} * var(--co-cal-lane-h))`},onClick:t=>{t.stopPropagation(),this.coMoreClick.emit({date:a})}},"+",i)}))))})))}get el(){return e(this)}};function b(t){return String(t).padStart(2,"0")}function g(t){return String(t).padStart(4,"0")}function _(t,a,o){const e=v(t,o),r=c(`${g(e.year)}-${b(e.month)}-${b(e.day)}`,a),[i,n,s]=r.split("-").map(Number);return f({year:i,month:n,day:s,hour:e.hour,minute:e.minute,second:e.second},o)}m.style=":host{display:block;font-family:var(--co-font-family-primary);--co-cal-daynum-h:24px;--co-cal-lane-h:22px;--co-cal-min-week-h:92px;--co-cal-gap:2px;--co-cal-surface:var(--co-semantic-surface-page);--co-cal-border:var(--co-semantic-border-default);--co-cal-text:var(--co-semantic-text-default);--co-cal-text-muted:var(--co-semantic-text-muted);--co-cal-hover:var(--co-semantic-surface-hover);--co-cal-today-ring:var(--co-color-primary-azul);--co-cal-event-bg:var(--co-color-primary-azul);--co-cal-event-border:transparent;--co-cal-event-text:var(--co-color-base-blanco, #fff);--co-cal-event-text-light:var(--co-color-base-blanco, #fff);--co-cal-event-text-dark:var(--co-semantic-text-default)}.cal-month{display:flex;flex-direction:column;border:1px solid var(--co-cal-border);border-radius:var(--co-border-radius-xs);overflow:hidden;background:var(--co-cal-surface)}.cal-month__dow{display:grid;grid-template-columns:repeat(7, 1fr);border-bottom:1px solid var(--co-cal-border)}.cal-month__dow-cell{padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-10, 10px);font-weight:600;text-transform:uppercase;letter-spacing:0.04em;color:var(--co-cal-text-muted);text-align:right}.cal-month__week{position:relative;min-height:var(--co-cal-min-week-h)}.cal-month__week:not(:last-child){border-bottom:1px solid var(--co-cal-border)}.cal-month__days{display:grid;grid-template-columns:repeat(7, 1fr);height:100%;position:absolute;inset:0}.cal-month__day{border-right:1px solid var(--co-cal-border);padding:var(--co-spacing-xxs);cursor:pointer;transition:background 0.1s ease}.cal-month__day:last-child{border-right:0}.cal-month__day:hover{background:var(--co-cal-hover)}.cal-month__day:focus-visible{outline:2px solid var(--co-semantic-border-focus);outline-offset:-2px}.cal-month__day--outside .cal-month__daynum{color:var(--co-cal-text-muted)}.cal-month__day--disabled{cursor:not-allowed;background:color-mix(in srgb, var(--co-cal-border) 20%, transparent)}.cal-month__day--drag-over{background:color-mix(in srgb, var(--co-cal-today-ring) 14%, transparent);box-shadow:inset 0 0 0 2px var(--co-cal-today-ring)}.cal-month__daynum{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-left:auto;float:right;font-size:var(--co-font-size-12, 12px);color:var(--co-cal-text);border-radius:var(--co-border-radius-full)}.cal-month__day--today .cal-month__daynum{background:var(--co-cal-today-ring);color:var(--co-color-base-blanco, #fff);font-weight:600}.cal-month__events{position:absolute;inset:0;pointer-events:none;}.cal-chip,.cal-month__more{position:absolute;height:calc(var(--co-cal-lane-h) - 3px);box-sizing:border-box;pointer-events:auto;display:flex;align-items:center;gap:var(--co-spacing-xxs);margin:0 3px;padding:0 var(--co-spacing-xs);border:1px solid var(--co-cal-event-border);border-radius:var(--co-border-radius-xxs);font-family:inherit;font-size:var(--co-font-size-12, 12px);line-height:1;text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap}.cal-chip{background:var(--co-cal-event-bg);color:var(--co-cal-event-text)}.cal-chip:hover{filter:brightness(0.95)}.cal-chip:focus-visible{outline:2px solid var(--co-semantic-border-focus);outline-offset:1px}.cal-chip--all-day{font-weight:500}.cal-chip__dot{flex:0 0 auto;width:7px;height:7px;border-radius:var(--co-border-radius-full);background:var(--co-cal-event-bg)}.cal-chip:not(.cal-chip--all-day){background:transparent;color:var(--co-cal-text);border-color:transparent}.cal-chip:not(.cal-chip--all-day):hover{background:var(--co-cal-hover);filter:none}.cal-chip__time{flex:0 0 auto;color:var(--co-cal-text-muted);font-variant-numeric:tabular-nums}.cal-chip__title{overflow:hidden;text-overflow:ellipsis}.cal-chip__ext{flex:0 0 auto;opacity:0.8}.cal-chip--past{opacity:0.55}.cal-chip--locked{cursor:default}.cal-chip--external{border-style:dashed}.cal-chip--dragging{opacity:0.4}.cal-chip--continues-before{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.cal-chip--continues-after{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.cal-month__more{background:transparent;color:var(--co-cal-text-muted);border-color:transparent;font-weight:600;font-size:var(--co-font-size-11, 11px)}.cal-month__more:hover{background:var(--co-cal-hover);color:var(--co-cal-text)}";export{m as co_calendar_month}
@@ -1 +0,0 @@
1
- import{r as t,h as s,H as i}from"./p-BCEz3S-z.js";const n=new Map;const e=class{constructor(s){t(this,s),this.name="",this.weight="regular",this.size=16,this.svgContent=""}async componentWillLoad(){await this.fetch()}async onPropsChange(){await this.fetch()}async fetch(){this.svgContent=this.name?await function(t,s){const i=`${s}/${t}`,e=n.get(i);if(e)return e;const r=globalThis.__cobaltIconVersion,a=`${globalThis.__cobaltIconBasePath||"https://cdn.jsdelivr.net/npm/@phosphor-icons/core@2.1.1/assets"}/${s}/${function(t,s){return"regular"===s?`${t}.svg`:`${t}-${s}.svg`}(t,s)}`,h=fetch(r?`${a}?v=${r}`:a,{priority:"low"}).then((t=>t.ok?t.text():"")).catch((()=>(n.delete(i),"")));return n.set(i,h),h}(this.name,this.weight):""}render(){return s(i,{key:"d4dcafabbc956f3b5e8099fa30092d0d535c5d06","aria-hidden":"true",style:{display:"inline-flex",width:`${this.size}px`,height:`${this.size}px`,flexShrink:"0"}},s("span",{key:"cd9008987f65922b0c770e1f080dc0a0764d62dd",part:"svg",innerHTML:this.svgContent}))}static get watchers(){return{name:[{onPropsChange:0}],weight:[{onPropsChange:0}]}}};e.style=":host{display:inline-flex;align-items:center;justify-content:center;color:inherit;line-height:1;flex-shrink:0}span{display:contents}svg{display:block;width:100%;height:100%;fill:currentColor}";export{e as co_icon}
@@ -1 +0,0 @@
1
- import{r as o,h as r,a as t}from"./p-BCEz3S-z.js";const a={l:20,m:18,s:16,xs:14},s=class{constructor(r){o(this,r),this.variant="primary",this.shape="rounded",this.size="m",this.elevated=!1,this.surface="light",this.disabled=!1,this.iconWeight="regular",this.type="button",this.handleClick=()=>{if(!this.disabled){if("submit"===this.type){const o=this.el.closest("form");if(o)return void o.requestSubmit()}if("reset"===this.type){const o=this.el.closest("form");o&&o.reset()}}}}render(){var o,t;const s=null!==(t=null!==(o=this.iconSize)&&void 0!==o?o:a[this.size])&&void 0!==t?t:18,c={};return this.color&&(c.background=this.color),this.textColor&&(c.color=this.textColor),r("button",{key:"97c11bee8f9bb11bb6585439c3c12698b0d95ecb",class:{"co-button":!0,[`co-button--${this.variant}`]:!0,[`co-button--${this.shape}`]:!0,[`co-button--${this.size}`]:!0,[`co-button--surface-${this.surface}`]:!0,"co-button--elevated":this.elevated,"co-button--disabled":this.disabled},style:Object.keys(c).length?c:void 0,type:this.type,disabled:this.disabled,onClick:this.handleClick,part:"button"},this.iconLeft?r("co-icon",{name:this.iconLeft,weight:this.iconWeight,size:s}):null,r("slot",{key:"092f58acb6dfa810ce4f5bcdc19ab15dff69104a"},this.label),this.iconRight?r("co-icon",{name:this.iconRight,weight:this.iconWeight,size:s}):null)}get el(){return t(this)}};s.style=':host{display:inline-flex}.co-button{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid transparent;outline:none;font-family:var(--co-font-family-primary);font-weight:400;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);white-space:nowrap;-webkit-font-smoothing:antialiased;transition:opacity 0.15s ease, background 0.15s ease;box-sizing:border-box;-webkit-backdrop-filter:blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate));backdrop-filter:blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate))}.co-button--primary{background:var(--co-semantic-surface-primary);color:var(--co-semantic-on-primary);border-color:color-mix(in srgb, var(--co-semantic-on-primary) 28%, transparent)}.co-button--secondary{background:color-mix(in srgb, var(--co-semantic-surface-secondary) 55%, transparent);color:var(--co-semantic-on-secondary);border-color:var(--co-semantic-border-subtle)}.co-button--stroke{background:color-mix(in srgb, var(--co-semantic-surface-secondary) 25%, transparent);color:var(--co-semantic-text-default);border-color:var(--co-semantic-border-default)}.co-button--ghost{background:transparent;color:var(--co-semantic-text-default);border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.co-button--danger{background:var(--co-semantic-status-error);color:var(--co-color-base-blanco);border-color:transparent}.co-button--success{background:var(--co-semantic-status-success);color:var(--co-color-base-blanco);border-color:transparent}.co-button--rounded.co-button--l{padding:var(--co-spacing-xl) var(--co-spacing-2xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-18);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--m{padding:var(--co-spacing-lg) var(--co-spacing-xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-16);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--s{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-14);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--xs{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-12);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--square.co-button--l{padding:var(--co-spacing-lg) var(--co-spacing-xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-18);border-radius:var(--co-border-radius-lg)}.co-button--square.co-button--m{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-16);border-radius:var(--co-border-radius-sm)}.co-button--square.co-button--s{padding:var(--co-spacing-sm2) var(--co-spacing-md);gap:var(--co-spacing-sm);font-size:var(--co-font-size-14);border-radius:var(--co-border-radius-xs)}.co-button--square.co-button--xs{padding:var(--co-spacing-sm) var(--co-spacing-sm2);gap:var(--co-spacing-xs);font-size:var(--co-font-size-12);border-radius:var(--co-spacing-sm)}.co-button--disabled,.co-button:disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}.co-button--primary:hover:not(:disabled){opacity:0.88}.co-button--secondary:hover:not(:disabled),.co-button--stroke:hover:not(:disabled){background:var(--co-semantic-surface-hover)}.co-button--ghost:hover:not(:disabled){background:color-mix(in srgb, var(--co-semantic-surface-hover) 60%, transparent);-webkit-backdrop-filter:blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate));backdrop-filter:blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate))}.co-button--danger:hover:not(:disabled),.co-button--success:hover:not(:disabled){opacity:0.88}.co-button--secondary.co-button--elevated{box-shadow:var(--co-shadow-sm, 0 1px 2px 0 rgba(26, 26, 26, 0.04)), inset 0 0 0 1px var(--co-color-opacity-negro-8)}.co-button--ghost.co-button--surface-dark,.co-button--stroke.co-button--surface-dark{color:var(--co-color-base-blanco, #fff)}.co-button--ghost.co-button--surface-dark:hover:not(:disabled),.co-button--stroke.co-button--surface-dark:hover:not(:disabled){background:var(--co-color-opacity-blanco-16);-webkit-backdrop-filter:none;backdrop-filter:none}::slotted([slot="icon-left"]),::slotted([slot="icon-right"]){display:inline-flex;flex-shrink:0}@supports not (background: color-mix(in srgb, red, transparent)){.co-button--primary{background:var(--co-semantic-surface-primary)}.co-button--secondary{background:var(--co-semantic-surface-secondary)}.co-button--stroke{background:transparent}}';export{s as co_button}
@@ -1 +0,0 @@
1
- import{r as e,c as i,h as t,a as o}from"./p-BCEz3S-z.js";const s=class{constructor(t){e(this,t),this.coSelect=i(this,"coSelect",7),this.coMenuSelect=i(this,"coMenuSelect",7),this.dense=!1,this.selected=!1,this.trailingCheck=!1,this.disabled=!1,this.variant="default",this.hasSubmenu=!1,this.submenuOpen=!1,this.handleClick=e=>{if(!this.disabled){if(this.hasSubmenu)return e.stopPropagation(),void this.openSubmenu();this.coSelect.emit(),this.coMenuSelect.emit()}},this.handleKeydown=e=>{var i;this.disabled||("Enter"===e.key||" "===e.key?(e.preventDefault(),this.handleClick(e)):"ArrowRight"===e.key&&this.hasSubmenu?(e.preventDefault(),this.openSubmenu(),requestAnimationFrame((()=>{var e;const i=this.el.querySelector("co-menu-item");null===(e=null==i?void 0:i.focusItem)||void 0===e||e.call(i)}))):"ArrowLeft"===e.key&&this.submenuOpen&&(e.preventDefault(),this.submenuOpen=!1,null===(i=this.rowEl)||void 0===i||i.focus()))},this.handleMouseEnter=()=>{!this.disabled&&this.hasSubmenu&&(this.cancelClose(),this.openSubmenu())},this.handleMouseLeave=()=>{this.hasSubmenu&&this.scheduleClose()},this.cancelClose=()=>{this.closeTimer&&(window.clearTimeout(this.closeTimer),this.closeTimer=void 0)}}async focusItem(){var e;null===(e=this.rowEl)||void 0===e||e.focus()}componentWillLoad(){this.hasSubmenu=this.detectSubmenu()}disconnectedCallback(){this.cancelClose()}detectSubmenu(){for(const e of Array.from(this.el.children)){const i=e.tagName.toLowerCase();if("co-menu-item"===i||"co-menu-divider"===i)return!0}return!1}openSubmenu(){this.submenuOpen=!0}scheduleClose(){this.cancelClose(),this.closeTimer=window.setTimeout((()=>{this.submenuOpen=!1}),260)}render(){var e;const i=t("button",{ref:e=>this.rowEl=e,class:{"co-menu-item":!0,"co-menu-item--dense":this.dense,"co-menu-item--selected":this.selected,"co-menu-item--disabled":this.disabled,"co-menu-item--danger":"danger"===this.variant,"co-menu-item--submenu":this.hasSubmenu,"co-menu-item--submenu-open":this.hasSubmenu&&this.submenuOpen},type:"button",role:"menuitem","aria-haspopup":this.hasSubmenu?"menu":void 0,"aria-expanded":this.hasSubmenu?this.submenuOpen?"true":"false":void 0,disabled:this.disabled,onClick:this.handleClick,onKeyDown:this.handleKeydown,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave},this.icon&&t("span",{class:"co-menu-item__icon"},t("co-icon",{name:this.icon,size:null!==(e=this.iconSize)&&void 0!==e?e:16})),t("span",{class:"co-menu-item__label"},this.label,t("slot",{name:"label"})),this.trailingCheck&&t("span",{class:"co-menu-item__check"},t("co-icon",{name:"check",size:15})),t("span",{class:"co-menu-item__suffix"},t("slot",{name:"suffix"}),this.hasSubmenu&&t("co-icon",{name:"caret-right",size:14})));return this.hasSubmenu?t("div",{class:"co-menu-item__wrap co-menu-item__wrap--submenu",onMouseEnter:this.cancelClose,onMouseLeave:this.handleMouseLeave},t("co-popover",{placement:"right-start",offset:4,open:this.submenuOpen,onCoOpen:()=>{this.submenuOpen=!0},onCoClose:()=>{this.submenuOpen=!1}},t("div",{slot:"trigger",class:"co-menu-item__trigger-wrap"},i),t("div",{class:"co-menu-item__submenu",role:"menu",onMouseEnter:this.cancelClose,onMouseLeave:this.handleMouseLeave},t("slot",null)))):t("div",{class:"co-menu-item__wrap"},i)}get el(){return o(this)}};s.style=":host{display:block}.co-menu-item__wrap{display:block}.co-menu-item{width:100%;display:flex;align-items:center;gap:var(--co-menu-item-gap, var(--co-spacing-sm, 8px));padding:var(--co-menu-item-padding, var(--co-spacing-sm, 8px) var(--co-spacing-md, 12px));background:transparent;border:0;border-radius:var(--co-border-radius-xs, 8px);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14, 14px);color:var(--co-semantic-text-default);text-align:left;cursor:pointer;transition:background 0.1s ease, color 0.1s ease;min-height:var(--co-menu-item-height, 36px);box-sizing:border-box}.co-menu-item--dense{padding:var(--co-spacing-xs, 4px) var(--co-spacing-md, 12px);min-height:32px}.co-menu-item--selected{background:var(--co-color-gray-100, #f6f6f6)}.co-menu-item:hover,.co-menu-item--submenu-open{background:var(--co-semantic-surface-hover, rgba(31, 28, 27, 0.04))}.co-menu-item:focus-visible{outline:2px solid var(--co-semantic-border-focus, #2563eb);outline-offset:-2px}.co-menu-item--disabled{opacity:0.5;cursor:not-allowed;pointer-events:none}.co-menu-item--danger{color:var(--co-color-status-error, #aa2e1b)}.co-menu-item--danger:hover{background:var(--co-color-status-bg-error, #ffefef)}.co-menu-item__icon{display:inline-flex;align-items:center;flex-shrink:0;color:var(--co-menu-item-icon-color, currentColor)}.co-menu-item__check{display:inline-flex;align-items:center;flex-shrink:0;color:var(--co-semantic-text-default)}.co-menu-item__label{flex:1;display:inline-flex;align-items:center;gap:var(--co-spacing-xs, 4px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-menu-item__suffix{display:inline-flex;align-items:center;gap:var(--co-spacing-xs, 4px);flex-shrink:0;color:var(--co-semantic-text-muted)}.co-menu-item--submenu-open .co-menu-item__suffix{color:var(--co-semantic-text-default)}.co-menu-item__trigger-wrap{display:block}.co-menu-item__submenu{background:var(--co-semantic-surface-secondary, #fff);border-radius:var(--co-border-radius-sm, 12px);box-shadow:var(--co-shadow-lg, 0 4px 12px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.04)), inset 0 0 0 1px var(--co-color-opacity-negro-8, rgba(31, 28, 27, 0.08));padding:var(--co-menu-padding, var(--co-spacing-xs, 4px));min-width:180px;display:flex;flex-direction:column;gap:2px;position:relative}.co-menu-item__submenu::before,.co-menu-item__submenu::after{content:'';position:absolute;top:0;bottom:0;width:6px;}.co-menu-item__submenu::before{left:-6px}.co-menu-item__submenu::after{right:-6px}";export{s as co_menu_item}