@cascivo/react 0.12.0 → 0.13.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/dist/accordion/accordion.js +46 -44
  2. package/dist/action-sheet/action-sheet.js +16 -16
  3. package/dist/alert-dialog/alert-dialog.js +34 -34
  4. package/dist/app-shell/app-shell.css +1 -1
  5. package/dist/app-shell/app-shell.js +36 -33
  6. package/dist/app-shell/app-shell.module.js +8 -8
  7. package/dist/avatar-group/avatar-group.js +6 -6
  8. package/dist/badge/badge.js +17 -10
  9. package/dist/bottom-sheet/bottom-sheet.js +18 -18
  10. package/dist/button/button.css +1 -1
  11. package/dist/button/button.js +15 -12
  12. package/dist/button/button.module.js +1 -1
  13. package/dist/button-group/button-group.js +8 -8
  14. package/dist/card/card.css +1 -1
  15. package/dist/card/card.module.js +8 -8
  16. package/dist/carousel/carousel.js +20 -20
  17. package/dist/checkbox/checkbox.js +21 -21
  18. package/dist/checkbox-card/checkbox-card.js +15 -13
  19. package/dist/collapsible/collapsible.js +7 -7
  20. package/dist/color-picker/color-picker.js +26 -26
  21. package/dist/combobox/combobox.css +1 -1
  22. package/dist/combobox/combobox.js +86 -86
  23. package/dist/combobox/combobox.module.js +15 -15
  24. package/dist/command-menu/command-menu.js +111 -111
  25. package/dist/comparison/comparison.js +10 -10
  26. package/dist/context-menu/context-menu.js +9 -9
  27. package/dist/copy-button/copy-button.js +18 -16
  28. package/dist/data-table/data-table.css +1 -1
  29. package/dist/data-table/data-table.js +8 -2
  30. package/dist/data-table/data-table.module.js +29 -29
  31. package/dist/date-picker/date-picker.css +1 -1
  32. package/dist/date-picker/date-picker.js +25 -25
  33. package/dist/date-picker/date-picker.module.js +19 -19
  34. package/dist/date-range-picker/date-range-picker.js +26 -26
  35. package/dist/drawer/drawer.css +1 -1
  36. package/dist/drawer/drawer.js +18 -17
  37. package/dist/drawer/drawer.module.js +9 -9
  38. package/dist/dropdown/dropdown.js +48 -48
  39. package/dist/editable/editable.js +11 -11
  40. package/dist/fab/fab.js +53 -53
  41. package/dist/field/field.js +8 -8
  42. package/dist/file-uploader/file-uploader.css +1 -1
  43. package/dist/file-uploader/file-uploader.js +19 -19
  44. package/dist/file-uploader/file-uploader.module.js +14 -14
  45. package/dist/filter/filter.js +10 -9
  46. package/dist/header-panel/header-panel.js +31 -31
  47. package/dist/hover-card/hover-card.js +21 -21
  48. package/dist/icon-button/icon-button.css +1 -1
  49. package/dist/icon-button/icon-button.js +5 -5
  50. package/dist/icon-button/icon-button.module.js +1 -1
  51. package/dist/index.d.ts +1475 -251
  52. package/dist/input/input.css +1 -1
  53. package/dist/input/input.js +22 -21
  54. package/dist/input/input.module.js +5 -5
  55. package/dist/item/item.css +1 -1
  56. package/dist/item/item.module.js +6 -6
  57. package/dist/layouts/src/page-header/page-header.css +1 -0
  58. package/dist/layouts/src/page-header/page-header.js +33 -0
  59. package/dist/layouts/src/page-header/page-header.module.js +13 -0
  60. package/dist/link/link.js +14 -12
  61. package/dist/log-viewer/log-viewer.js +26 -26
  62. package/dist/menu/menu.js +20 -20
  63. package/dist/menu-button/menu-button.js +48 -48
  64. package/dist/menubar/menubar.js +42 -42
  65. package/dist/modal/modal.css +1 -1
  66. package/dist/modal/modal.js +41 -35
  67. package/dist/modal/modal.module.js +8 -7
  68. package/dist/multi-select/multi-select.css +1 -1
  69. package/dist/multi-select/multi-select.js +57 -57
  70. package/dist/multi-select/multi-select.module.js +11 -11
  71. package/dist/native-select/native-select.js +13 -11
  72. package/dist/navigation-menu/navigation-menu.js +46 -46
  73. package/dist/node/accordion/accordion.js +46 -44
  74. package/dist/node/action-sheet/action-sheet.js +16 -16
  75. package/dist/node/alert-dialog/alert-dialog.js +34 -34
  76. package/dist/node/app-shell/app-shell.js +36 -33
  77. package/dist/node/app-shell/app-shell.module.js +8 -8
  78. package/dist/node/avatar-group/avatar-group.js +6 -6
  79. package/dist/node/badge/badge.js +17 -10
  80. package/dist/node/bottom-sheet/bottom-sheet.js +18 -18
  81. package/dist/node/button/button.js +15 -12
  82. package/dist/node/button/button.module.js +1 -1
  83. package/dist/node/button-group/button-group.js +8 -8
  84. package/dist/node/card/card.module.js +8 -8
  85. package/dist/node/carousel/carousel.js +20 -20
  86. package/dist/node/checkbox/checkbox.js +21 -21
  87. package/dist/node/checkbox-card/checkbox-card.js +15 -13
  88. package/dist/node/collapsible/collapsible.js +7 -7
  89. package/dist/node/color-picker/color-picker.js +26 -26
  90. package/dist/node/combobox/combobox.js +86 -86
  91. package/dist/node/combobox/combobox.module.js +15 -15
  92. package/dist/node/command-menu/command-menu.js +111 -111
  93. package/dist/node/comparison/comparison.js +10 -10
  94. package/dist/node/context-menu/context-menu.js +9 -9
  95. package/dist/node/copy-button/copy-button.js +18 -16
  96. package/dist/node/data-table/data-table.js +8 -2
  97. package/dist/node/data-table/data-table.module.js +29 -29
  98. package/dist/node/date-picker/date-picker.js +25 -25
  99. package/dist/node/date-picker/date-picker.module.js +19 -19
  100. package/dist/node/date-range-picker/date-range-picker.js +26 -26
  101. package/dist/node/drawer/drawer.js +18 -17
  102. package/dist/node/drawer/drawer.module.js +9 -9
  103. package/dist/node/dropdown/dropdown.js +48 -48
  104. package/dist/node/editable/editable.js +11 -11
  105. package/dist/node/fab/fab.js +53 -53
  106. package/dist/node/field/field.js +8 -8
  107. package/dist/node/file-uploader/file-uploader.js +19 -19
  108. package/dist/node/file-uploader/file-uploader.module.js +14 -14
  109. package/dist/node/filter/filter.js +10 -9
  110. package/dist/node/header-panel/header-panel.js +31 -31
  111. package/dist/node/hover-card/hover-card.js +21 -21
  112. package/dist/node/icon-button/icon-button.js +5 -5
  113. package/dist/node/icon-button/icon-button.module.js +1 -1
  114. package/dist/node/input/input.js +22 -21
  115. package/dist/node/input/input.module.js +5 -5
  116. package/dist/node/item/item.module.js +6 -6
  117. package/dist/node/layouts/src/page-header/page-header.js +33 -0
  118. package/dist/node/layouts/src/page-header/page-header.module.js +12 -0
  119. package/dist/node/link/link.js +14 -12
  120. package/dist/node/log-viewer/log-viewer.js +26 -26
  121. package/dist/node/menu/menu.js +20 -20
  122. package/dist/node/menu-button/menu-button.js +48 -48
  123. package/dist/node/menubar/menubar.js +42 -42
  124. package/dist/node/modal/modal.js +41 -35
  125. package/dist/node/modal/modal.module.js +8 -7
  126. package/dist/node/multi-select/multi-select.js +57 -57
  127. package/dist/node/multi-select/multi-select.module.js +11 -11
  128. package/dist/node/native-select/native-select.js +13 -11
  129. package/dist/node/navigation-menu/navigation-menu.js +46 -46
  130. package/dist/node/notification/notification.js +50 -44
  131. package/dist/node/notification/notification.module.js +7 -7
  132. package/dist/node/number-input/number-input.js +52 -50
  133. package/dist/node/number-input/number-input.module.js +8 -8
  134. package/dist/node/otp-input/otp-input.js +8 -8
  135. package/dist/node/otp-input/otp-input.module.js +2 -2
  136. package/dist/node/overflow-menu/overflow-menu.js +18 -13
  137. package/dist/node/password-input/password-input.js +28 -27
  138. package/dist/node/password-input/password-input.module.js +7 -7
  139. package/dist/node/popover/popover.js +26 -24
  140. package/dist/node/progress/progress.js +3 -2
  141. package/dist/node/pull-to-refresh/pull-to-refresh.js +13 -13
  142. package/dist/node/radial-progress/radial-progress.js +5 -5
  143. package/dist/node/radio/radio.js +23 -22
  144. package/dist/node/radio-card/radio-card.js +27 -26
  145. package/dist/node/react/src/index.js +4 -3
  146. package/dist/node/react/src/theme.js +30 -19
  147. package/dist/node/resizable/resizable.js +11 -11
  148. package/dist/node/scroll-area/scroll-area.js +4 -4
  149. package/dist/node/search/search.js +49 -49
  150. package/dist/node/search/search.module.js +5 -5
  151. package/dist/node/select/select.js +27 -26
  152. package/dist/node/sheet/sheet.js +11 -10
  153. package/dist/node/sheet/sheet.module.js +5 -5
  154. package/dist/node/side-nav/side-nav.js +91 -91
  155. package/dist/node/skip-nav/skip-nav.js +12 -12
  156. package/dist/node/slider/slider.js +13 -11
  157. package/dist/node/stat/stat.js +6 -5
  158. package/dist/node/stat/stat.module.js +7 -7
  159. package/dist/node/status/status.js +18 -11
  160. package/dist/node/steps/steps.js +23 -23
  161. package/dist/node/structured-list/structured-list.js +33 -32
  162. package/dist/node/tabs/tabs.js +49 -47
  163. package/dist/node/tag/tag.js +22 -15
  164. package/dist/node/tags-input/tags-input.js +35 -35
  165. package/dist/node/tags-input/tags-input.module.js +4 -4
  166. package/dist/node/textarea/textarea.js +22 -21
  167. package/dist/node/tile/tile.module.js +3 -3
  168. package/dist/node/time-picker/time-picker.js +22 -21
  169. package/dist/node/time-picker/time-picker.module.js +5 -5
  170. package/dist/node/timeline/timeline.js +22 -16
  171. package/dist/node/toast/toast.js +15 -15
  172. package/dist/node/toc/toc.js +8 -8
  173. package/dist/node/toggle/toggle.js +15 -13
  174. package/dist/node/toggle-group/toggle-group.js +10 -10
  175. package/dist/node/toggletip/toggletip.js +9 -9
  176. package/dist/node/tooltip/tooltip.js +5 -5
  177. package/dist/node/tree-view/tree-view.js +32 -32
  178. package/dist/notification/notification.css +1 -1
  179. package/dist/notification/notification.js +50 -44
  180. package/dist/notification/notification.module.js +7 -7
  181. package/dist/number-input/number-input.css +1 -1
  182. package/dist/number-input/number-input.js +52 -50
  183. package/dist/number-input/number-input.module.js +8 -8
  184. package/dist/otp-input/otp-input.css +1 -1
  185. package/dist/otp-input/otp-input.js +8 -8
  186. package/dist/otp-input/otp-input.module.js +2 -2
  187. package/dist/overflow-menu/overflow-menu.js +18 -13
  188. package/dist/password-input/password-input.css +1 -1
  189. package/dist/password-input/password-input.js +28 -27
  190. package/dist/password-input/password-input.module.js +7 -7
  191. package/dist/popover/popover.js +26 -24
  192. package/dist/progress/progress.js +3 -2
  193. package/dist/pull-to-refresh/pull-to-refresh.js +13 -13
  194. package/dist/radial-progress/radial-progress.js +5 -5
  195. package/dist/radio/radio.js +23 -22
  196. package/dist/radio-card/radio-card.js +27 -26
  197. package/dist/react/src/index.js +4 -3
  198. package/dist/react/src/theme.js +30 -19
  199. package/dist/resizable/resizable.js +11 -11
  200. package/dist/scroll-area/scroll-area.js +4 -4
  201. package/dist/search/search.css +1 -1
  202. package/dist/search/search.js +49 -49
  203. package/dist/search/search.module.js +5 -5
  204. package/dist/select/select.js +27 -26
  205. package/dist/sheet/sheet.css +1 -1
  206. package/dist/sheet/sheet.js +11 -10
  207. package/dist/sheet/sheet.module.js +5 -5
  208. package/dist/side-nav/side-nav.js +91 -91
  209. package/dist/skip-nav/skip-nav.js +12 -12
  210. package/dist/slider/slider.js +13 -11
  211. package/dist/stat/stat.css +1 -1
  212. package/dist/stat/stat.js +6 -5
  213. package/dist/stat/stat.module.js +7 -7
  214. package/dist/status/status.js +18 -11
  215. package/dist/steps/steps.js +23 -23
  216. package/dist/structured-list/structured-list.js +33 -32
  217. package/dist/styles.css +87 -23
  218. package/dist/tabs/tabs.js +49 -47
  219. package/dist/tag/tag.js +22 -15
  220. package/dist/tags-input/tags-input.css +1 -1
  221. package/dist/tags-input/tags-input.js +35 -35
  222. package/dist/tags-input/tags-input.module.js +4 -4
  223. package/dist/textarea/textarea.js +22 -21
  224. package/dist/tile/tile.css +1 -1
  225. package/dist/tile/tile.module.js +3 -3
  226. package/dist/time-picker/time-picker.css +1 -1
  227. package/dist/time-picker/time-picker.js +22 -21
  228. package/dist/time-picker/time-picker.module.js +5 -5
  229. package/dist/timeline/timeline.js +22 -16
  230. package/dist/toast/toast.js +15 -15
  231. package/dist/toc/toc.js +8 -8
  232. package/dist/toggle/toggle.js +15 -13
  233. package/dist/toggle-group/toggle-group.js +10 -10
  234. package/dist/toggletip/toggletip.js +9 -9
  235. package/dist/tooltip/tooltip.js +5 -5
  236. package/dist/tree-view/tree-view.js +32 -32
  237. package/package.json +10 -4
@@ -1 +1 @@
1
- @layer cascivo.component{._root_jwjfs_2{--_row-height:3rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-surface);background-color:var(--cascivo-color-surface);flex-direction:column;display:flex;overflow:hidden}._root_jwjfs_2[data-density=compact]{--_row-height:2.25rem}._root_jwjfs_2[data-density=normal]{--_row-height:3rem}._root_jwjfs_2[data-density=relaxed]{--_row-height:3.75rem}._toolbar_jwjfs_26{justify-content:space-between;align-items:flex-end;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-end:1px solid var(--cascivo-color-border);display:flex}._heading_jwjfs_35{gap:var(--cascivo-space-1);flex-direction:column;display:flex}._title_jwjfs_41{font-size:var(--cascivo-text-base);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._description_jwjfs_47{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle)}._search_jwjfs_52{appearance:none;height:2rem;min-inline-size:14rem;padding-inline:var(--cascivo-space-3);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none}._search_jwjfs_52:hover:not(:focus){border-color:var(--cascivo-color-border-strong)}._search_jwjfs_52:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._batchBar_jwjfs_79{justify-content:space-between;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-2) var(--cascivo-space-4);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);display:flex}._batchCount_jwjfs_89{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text)}._batchActions_jwjfs_95{gap:var(--cascivo-space-2);display:flex}._scroller_jwjfs_101{max-block-size:var(--cascivo-data-table-max-height,none);overflow:auto}._scrollerVirtualized_jwjfs_106{block-size:var(--cascivo-data-table-height,400px);max-block-size:none;overflow:auto}._table_jwjfs_112{border-collapse:collapse;table-layout:auto;inline-size:100%}._root_jwjfs_2[data-paginated=true] ._table_jwjfs_112{table-layout:fixed}._table_jwjfs_112 thead th{padding-block:var(--cascivo-space-2);padding-inline:var(--cascivo-data-table-cell-gap,var(--cascivo-space-4));text-align:start;font-weight:var(--cascivo-font-semibold);font-size:var(--cascivo-text-xs);text-transform:uppercase;letter-spacing:var(--cascivo-tracking-wide);color:var(--cascivo-color-text-subtle);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);white-space:nowrap}._table_jwjfs_112 thead th[data-align=end]{text-align:end}._table_jwjfs_112 td{padding-block:0;padding-inline:var(--cascivo-data-table-cell-gap,var(--cascivo-space-4));block-size:var(--_row-height);vertical-align:middle;border-block-end:1px solid var(--cascivo-color-border);color:var(--cascivo-color-text);overflow-wrap:anywhere}._table_jwjfs_112 td[data-align=end]{text-align:end}._table_jwjfs_112 tbody tr[data-filler-row] td{border-block-end:none}._root_jwjfs_2[data-sticky-header=true] ._table_jwjfs_112 thead th{z-index:var(--cascivo-z-raised,10);background-color:var(--cascivo-color-surface);position:sticky;inset-block-start:0}._root_jwjfs_2[data-zebra=true] ._table_jwjfs_112 tbody tr:nth-child(2n of ._row_jwjfs_172){background-color:var(--cascivo-color-bg-subtle)}._controlCol_jwjfs_178{inline-size:3rem}._controlCell_jwjfs_182{text-align:center;padding-inline:var(--cascivo-space-2)}._sortButton_jwjfs_188{align-items:center;gap:var(--cascivo-space-1);font-family:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:none;outline:none;padding:0;display:inline-flex}._sortButton_jwjfs_188:focus-visible{text-decoration:underline}._sortButton_jwjfs_188:after{content:"↕";opacity:.4;font-size:.75em}._sortButton_jwjfs_188[data-state=ascending]:after{content:"↑";opacity:.9}._sortButton_jwjfs_188[data-state=descending]:after{content:"↓";opacity:.9}._row_jwjfs_172{content-visibility:auto;contain-intrinsic-size:auto var(--_row-height,3rem)}._row_jwjfs_172[data-state=selected] td{background-color:color-mix(in srgb, var(--cascivo-color-accent) 8%, transparent)}._emptyCell_jwjfs_236{padding:var(--cascivo-space-8) var(--cascivo-space-4);text-align:center;color:var(--cascivo-color-text-muted)}._expansionRow_jwjfs_243[data-state=closed]{display:none}._expansionGrid_jwjfs_249{overflow:hidden}._expansionInner_jwjfs_253{padding:var(--cascivo-space-4)}._expandButton_jwjfs_258{cursor:pointer;block-size:1.5rem;inline-size:1.5rem;color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex}._expandButton_jwjfs_258:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._expandButton_jwjfs_258:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._chevron_jwjfs_281{block-size:.75rem;inline-size:.75rem;transition:transform var(--cascivo-duration-150) var(--cascivo-ease-out);border-block-end:2px solid;border-inline-end:2px solid;display:block;transform:rotate(45deg)}._expandButton_jwjfs_258[data-state=open] ._chevron_jwjfs_281{transform:rotate(-135deg)}._shimmer_jwjfs_296{background-color:var(--cascivo-color-bg-subtle);border-radius:var(--cascivo-radius-indicator);block-size:.875rem;inline-size:80%;display:block;position:relative;overflow:hidden}._shimmer_jwjfs_296:after{content:"";background:linear-gradient(90deg, transparent, var(--cascivo-color-surface), transparent);animation:_shimmer_jwjfs_296 var(--cascivo-duration-500,.5s) var(--cascivo-ease-in-out,ease-in-out) infinite;position:absolute;inset:0;translate:-100%}@keyframes _shimmer_jwjfs_296{to{translate:100%}}._footer_jwjfs_323{justify-content:flex-end;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-start:1px solid var(--cascivo-color-border);font-size:var(--cascivo-text-sm);display:flex}._pageSize_jwjfs_333{align-items:center;gap:var(--cascivo-space-2);color:var(--cascivo-color-text-muted);display:flex}._pageSize_jwjfs_333 select{appearance:none;height:2rem;padding-inline:var(--cascivo-space-2);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;outline:none}._pageSize_jwjfs_333 select:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._range_jwjfs_359{color:var(--cascivo-color-text-muted);white-space:nowrap}._pageButtons_jwjfs_364{gap:var(--cascivo-space-1);display:flex}._pageButton_jwjfs_364{border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text);font-size:var(--cascivo-text-base);transition:background-color var(--cascivo-duration-150) var(--cascivo-ease-out), border-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;outline:none;justify-content:center;align-items:center;display:inline-flex}._pageButton_jwjfs_364:hover:not(:disabled){background-color:var(--cascivo-color-bg-subtle);border-color:var(--cascivo-color-border-strong)}._pageButton_jwjfs_364:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._pageButton_jwjfs_364:disabled{color:var(--cascivo-color-text-muted);cursor:not-allowed}._srOnly_jwjfs_405{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}
1
+ @layer cascivo.component{._root_ulang_2{--_row-height:3rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-surface);background-color:var(--cascivo-color-surface);flex-direction:column;display:flex;overflow:hidden}._root_ulang_2[data-density=compact]{--_row-height:2.25rem}._root_ulang_2[data-density=normal]{--_row-height:3rem}._root_ulang_2[data-density=relaxed]{--_row-height:3.75rem}._toolbar_ulang_26{justify-content:space-between;align-items:flex-end;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-end:1px solid var(--cascivo-color-border);display:flex}._heading_ulang_35{gap:var(--cascivo-space-1);flex-direction:column;display:flex}._title_ulang_41{font-size:var(--cascivo-text-base);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._description_ulang_47{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle)}._search_ulang_52{appearance:none;height:2rem;min-inline-size:14rem;padding-inline:var(--cascivo-space-3);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none}._search_ulang_52:hover:not(:focus){border-color:var(--cascivo-color-border-strong)}._search_ulang_52:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._batchBar_ulang_79{justify-content:space-between;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-2) var(--cascivo-space-4);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);display:flex}._batchCount_ulang_89{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text)}._batchActions_ulang_95{gap:var(--cascivo-space-2);display:flex}._scroller_ulang_101{max-block-size:var(--cascivo-data-table-max-height,none);overflow:auto}._scrollerVirtualized_ulang_106{block-size:var(--cascivo-data-table-height,400px);max-block-size:none;overflow:auto}._table_ulang_112{border-collapse:collapse;table-layout:auto;inline-size:100%}._root_ulang_2[data-paginated=true][data-fixed-layout=true] ._table_ulang_112{table-layout:fixed}._table_ulang_112 thead th{padding-block:var(--cascivo-space-2);padding-inline:var(--cascivo-data-table-cell-gap,var(--cascivo-space-4));text-align:start;font-weight:var(--cascivo-font-semibold);font-size:var(--cascivo-text-xs);text-transform:uppercase;letter-spacing:var(--cascivo-tracking-wide);color:var(--cascivo-color-text-subtle);background-color:var(--cascivo-color-bg-subtle);border-block-end:1px solid var(--cascivo-color-border);white-space:nowrap}._table_ulang_112 thead th[data-align=end]{text-align:end}._table_ulang_112 td{padding-block:0;padding-inline:var(--cascivo-data-table-cell-gap,var(--cascivo-space-4));block-size:var(--_row-height);vertical-align:middle;border-block-end:1px solid var(--cascivo-color-border);color:var(--cascivo-color-text)}._table_ulang_112 td[data-sized],._table_ulang_112 th[data-sized]{overflow-wrap:anywhere}._table_ulang_112 td[data-align=end]{text-align:end}._table_ulang_112 tbody tr[data-filler-row] td{border-block-end:none}._root_ulang_2[data-sticky-header=true] ._table_ulang_112 thead th{z-index:var(--cascivo-z-raised,10);background-color:var(--cascivo-color-surface);position:sticky;inset-block-start:0}._root_ulang_2[data-zebra=true] ._table_ulang_112 tbody tr:nth-child(2n of ._row_ulang_182){background-color:var(--cascivo-color-bg-subtle)}._controlCol_ulang_188{inline-size:3rem}._controlCell_ulang_192{text-align:center;padding-inline:var(--cascivo-space-2)}._sortButton_ulang_198{align-items:center;gap:var(--cascivo-space-1);font-family:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:none;outline:none;padding:0;display:inline-flex}._sortButton_ulang_198:focus-visible{text-decoration:underline}._sortButton_ulang_198:after{content:"↕";opacity:.4;font-size:.75em}._sortButton_ulang_198[data-state=ascending]:after{content:"↑";opacity:.9}._sortButton_ulang_198[data-state=descending]:after{content:"↓";opacity:.9}._row_ulang_182{content-visibility:auto;contain-intrinsic-size:auto var(--_row-height,3rem)}._row_ulang_182[data-state=selected] td{background-color:color-mix(in srgb, var(--cascivo-color-accent) 8%, transparent)}._emptyCell_ulang_246{padding:var(--cascivo-space-8) var(--cascivo-space-4);text-align:center;color:var(--cascivo-color-text-muted)}._expansionRow_ulang_253[data-state=closed]{display:none}._expansionGrid_ulang_259{overflow:hidden}._expansionInner_ulang_263{padding:var(--cascivo-space-4)}._expandButton_ulang_268{cursor:pointer;block-size:1.5rem;inline-size:1.5rem;color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex}._expandButton_ulang_268:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._expandButton_ulang_268:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._chevron_ulang_291{block-size:.75rem;inline-size:.75rem;transition:transform var(--cascivo-duration-150) var(--cascivo-ease-out);border-block-end:2px solid;border-inline-end:2px solid;display:block;transform:rotate(45deg)}._expandButton_ulang_268[data-state=open] ._chevron_ulang_291{transform:rotate(-135deg)}._shimmer_ulang_306{background-color:var(--cascivo-color-bg-subtle);border-radius:var(--cascivo-radius-indicator);block-size:.875rem;inline-size:80%;display:block;position:relative;overflow:hidden}._shimmer_ulang_306:after{content:"";background:linear-gradient(90deg, transparent, var(--cascivo-color-surface), transparent);animation:_shimmer_ulang_306 var(--cascivo-duration-500,.5s) var(--cascivo-ease-in-out,ease-in-out) infinite;position:absolute;inset:0;translate:-100%}@keyframes _shimmer_ulang_306{to{translate:100%}}._footer_ulang_333{justify-content:flex-end;align-items:center;gap:var(--cascivo-space-4);padding:var(--cascivo-space-3) var(--cascivo-space-4);border-block-start:1px solid var(--cascivo-color-border);font-size:var(--cascivo-text-sm);display:flex}._pageSize_ulang_343{align-items:center;gap:var(--cascivo-space-2);color:var(--cascivo-color-text-muted);display:flex}._pageSize_ulang_343 select{appearance:none;height:2rem;padding-inline:var(--cascivo-space-2);font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;outline:none}._pageSize_ulang_343 select:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._range_ulang_369{color:var(--cascivo-color-text-muted);white-space:nowrap}._pageButtons_ulang_374{gap:var(--cascivo-space-1);display:flex}._pageButton_ulang_374{border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text);font-size:var(--cascivo-text-base);transition:background-color var(--cascivo-duration-150) var(--cascivo-ease-out), border-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;outline:none;justify-content:center;align-items:center;display:inline-flex}._pageButton_ulang_374:hover:not(:disabled){background-color:var(--cascivo-color-bg-subtle);border-color:var(--cascivo-color-border-strong)}._pageButton_ulang_374:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._pageButton_ulang_374:disabled{color:var(--cascivo-color-text-muted);cursor:not-allowed}._srOnly_ulang_415{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}
@@ -4,9 +4,9 @@ import { Button as e } from "../button/button.js";
4
4
  import { Checkbox as t } from "../checkbox/checkbox.js";
5
5
  import n from "./data-table.module.js";
6
6
  import { batch as r, cn as i, useComputed as a, useSignal as o, useSignalEffect as ee, useSignals as te } from "@cascivo/core";
7
+ import { Fragment as ne, useId as re, useRef as ie } from "react";
7
8
  import { builtin as s, t as c } from "@cascivo/i18n";
8
9
  import { jsx as l, jsxs as u } from "react/jsx-runtime";
9
- import { Fragment as ne, useId as re, useRef as ie } from "react";
10
10
  import { flushSync as ae } from "react-dom";
11
11
  //#region ../components/src/data-table/data-table.tsx
12
12
  function d(e, t) {
@@ -117,6 +117,7 @@ function f({ columns: f, rows: se, getRowId: ce, sort: p, defaultSort: le, sortM
117
117
  "data-zebra": pe || void 0,
118
118
  "data-sticky-header": me || void 0,
119
119
  "data-paginated": h ? !0 : void 0,
120
+ "data-fixed-layout": f.every((e) => e.width !== void 0) || void 0,
120
121
  children: [
121
122
  /* @__PURE__ */ l("span", {
122
123
  "aria-live": "polite",
@@ -176,7 +177,10 @@ function f({ columns: f, rows: se, getRowId: ce, sort: p, defaultSort: le, sortM
176
177
  /* @__PURE__ */ u("colgroup", { children: [
177
178
  v && /* @__PURE__ */ l("col", { className: n.controlCol }),
178
179
  g && /* @__PURE__ */ l("col", { className: n.controlCol }),
179
- f.map((e) => /* @__PURE__ */ l("col", { style: e.width === void 0 ? void 0 : { width: e.width } }, e.key))
180
+ f.map((e) => /* @__PURE__ */ l("col", { style: e.width !== void 0 || e.minWidth !== void 0 ? {
181
+ ...e.width === void 0 ? {} : { width: e.width },
182
+ ...e.minWidth === void 0 ? {} : { minWidth: e.minWidth }
183
+ } : void 0 }, e.key))
180
184
  ] }),
181
185
  /* @__PURE__ */ l("thead", { children: /* @__PURE__ */ u("tr", { children: [
182
186
  v && /* @__PURE__ */ l("th", {
@@ -205,6 +209,7 @@ function f({ columns: f, rows: se, getRowId: ce, sort: p, defaultSort: le, sortM
205
209
  return /* @__PURE__ */ l("th", {
206
210
  scope: "col",
207
211
  "data-align": e.align ?? "start",
212
+ "data-sized": e.width !== void 0 || void 0,
208
213
  "aria-sort": e.sortable ? r : void 0,
209
214
  children: e.sortable ? /* @__PURE__ */ l("button", {
210
215
  type: "button",
@@ -269,6 +274,7 @@ function f({ columns: f, rows: se, getRowId: ce, sort: p, defaultSort: le, sortM
269
274
  }),
270
275
  f.map((t) => /* @__PURE__ */ l("td", {
271
276
  "data-align": t.align ?? "start",
277
+ "data-sized": t.width !== void 0 || void 0,
272
278
  children: t.render ? t.render(e.row) : String(d(e.row, t.key) ?? "")
273
279
  }, t.key))
274
280
  ]
@@ -2,35 +2,35 @@
2
2
 
3
3
  import './data-table.css';
4
4
  var e = {
5
- root: "_root_jwjfs_2",
6
- toolbar: "_toolbar_jwjfs_26",
7
- heading: "_heading_jwjfs_35",
8
- title: "_title_jwjfs_41",
9
- description: "_description_jwjfs_47",
10
- search: "_search_jwjfs_52",
11
- batchBar: "_batchBar_jwjfs_79",
12
- batchCount: "_batchCount_jwjfs_89",
13
- batchActions: "_batchActions_jwjfs_95",
14
- scroller: "_scroller_jwjfs_101",
15
- scrollerVirtualized: "_scrollerVirtualized_jwjfs_106",
16
- table: "_table_jwjfs_112",
17
- row: "_row_jwjfs_172",
18
- controlCol: "_controlCol_jwjfs_178",
19
- controlCell: "_controlCell_jwjfs_182",
20
- sortButton: "_sortButton_jwjfs_188",
21
- emptyCell: "_emptyCell_jwjfs_236",
22
- expansionRow: "_expansionRow_jwjfs_243",
23
- expansionGrid: "_expansionGrid_jwjfs_249",
24
- expansionInner: "_expansionInner_jwjfs_253",
25
- expandButton: "_expandButton_jwjfs_258",
26
- chevron: "_chevron_jwjfs_281",
27
- shimmer: "_shimmer_jwjfs_296",
28
- footer: "_footer_jwjfs_323",
29
- pageSize: "_pageSize_jwjfs_333",
30
- range: "_range_jwjfs_359",
31
- pageButtons: "_pageButtons_jwjfs_364",
32
- pageButton: "_pageButton_jwjfs_364",
33
- srOnly: "_srOnly_jwjfs_405"
5
+ root: "_root_ulang_2",
6
+ toolbar: "_toolbar_ulang_26",
7
+ heading: "_heading_ulang_35",
8
+ title: "_title_ulang_41",
9
+ description: "_description_ulang_47",
10
+ search: "_search_ulang_52",
11
+ batchBar: "_batchBar_ulang_79",
12
+ batchCount: "_batchCount_ulang_89",
13
+ batchActions: "_batchActions_ulang_95",
14
+ scroller: "_scroller_ulang_101",
15
+ scrollerVirtualized: "_scrollerVirtualized_ulang_106",
16
+ table: "_table_ulang_112",
17
+ row: "_row_ulang_182",
18
+ controlCol: "_controlCol_ulang_188",
19
+ controlCell: "_controlCell_ulang_192",
20
+ sortButton: "_sortButton_ulang_198",
21
+ emptyCell: "_emptyCell_ulang_246",
22
+ expansionRow: "_expansionRow_ulang_253",
23
+ expansionGrid: "_expansionGrid_ulang_259",
24
+ expansionInner: "_expansionInner_ulang_263",
25
+ expandButton: "_expandButton_ulang_268",
26
+ chevron: "_chevron_ulang_291",
27
+ shimmer: "_shimmer_ulang_306",
28
+ footer: "_footer_ulang_333",
29
+ pageSize: "_pageSize_ulang_343",
30
+ range: "_range_ulang_369",
31
+ pageButtons: "_pageButtons_ulang_374",
32
+ pageButton: "_pageButton_ulang_374",
33
+ srOnly: "_srOnly_ulang_415"
34
34
  };
35
35
  //#endregion
36
36
  export { e as default };
@@ -1 +1 @@
1
- @layer cascivo.component{._wrapper_6chzy_2{gap:var(--cascivo-space-1);font-family:var(--cascivo-font-sans);flex-direction:column;display:inline-flex;position:relative}._wrapper_6chzy_2[data-size=sm]{--_height:2rem;--_font:var(--cascivo-text-sm);--_px:var(--cascivo-space-3)}._wrapper_6chzy_2[data-size=md]{--_height:2.5rem;--_font:var(--cascivo-text-sm);--_px:var(--cascivo-space-4)}._wrapper_6chzy_2[data-size=lg]{--_height:3rem;--_font:var(--cascivo-text-base);--_px:var(--cascivo-space-4)}._label_6chzy_27{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text);line-height:var(--cascivo-leading-snug)}._field_6chzy_34{align-items:center;display:flex;position:relative}._trigger_6chzy_40{justify-content:space-between;align-items:center;gap:var(--cascivo-space-2);block-size:var(--_height,2.5rem);min-inline-size:12rem;padding-inline:var(--_px,var(--cascivo-space-4));font-family:var(--cascivo-font-sans);font-size:var(--_font,var(--cascivo-text-sm));color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;text-align:start;transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none;display:flex}._trigger_6chzy_40:hover:not(:disabled){border-color:var(--cascivo-color-border-strong)}._trigger_6chzy_40:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._trigger_6chzy_40:disabled{opacity:.5;cursor:not-allowed}._wrapper_6chzy_2[data-state=error] ._trigger_6chzy_40{border-color:var(--cascivo-color-danger)}._value_6chzy_78{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._placeholder_6chzy_84{color:var(--cascivo-color-text-subtle)}._icon_6chzy_87{color:var(--cascivo-color-text-muted);font-style:normal}._clear_6chzy_92{cursor:pointer;min-block-size:1.5rem;min-inline-size:1.5rem;color:var(--cascivo-color-text-muted);font-size:var(--cascivo-text-xs);padding:var(--cascivo-space-1);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;inset-inline-end:var(--cascivo-space-8)}._clear_6chzy_92:hover{color:var(--cascivo-color-text)}._clear_6chzy_92:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._calendar_6chzy_117{z-index:var(--cascivo-z-dropdown);padding:var(--cascivo-space-3);background-color:var(--cascivo-color-surface-overlay);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-overlay);box-shadow:var(--cascivo-shadow-overlay);opacity:0;visibility:hidden;transition:opacity var(--cascivo-motion-enter), translate var(--cascivo-motion-enter), visibility var(--cascivo-motion-enter);position:absolute;inset-block-start:calc(100% + var(--cascivo-space-1));inset-inline-start:0;translate:0 -.25rem}._calendar_6chzy_117[data-state=open]{opacity:1;visibility:visible;translate:0}@starting-style{._calendar_6chzy_117[data-state=open]{opacity:0;translate:0 -.25rem}}._header_6chzy_149{justify-content:space-between;align-items:center;margin-block-end:var(--cascivo-space-2);display:flex}._monthLabel_6chzy_156{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._navButton_6chzy_162{border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text-muted);font-size:var(--cascivo-text-base);background:0 0;border:1px solid #0000;outline:none;justify-content:center;align-items:center;display:inline-flex}._navButton_6chzy_162:hover{background-color:var(--cascivo-color-bg-subtle);color:var(--cascivo-color-text)}._navButton_6chzy_162:focus-visible{border-color:var(--cascivo-color-accent)}._grid_6chzy_184{border-collapse:collapse;inline-size:100%}._weekday_6chzy_189{padding-block:var(--cascivo-space-1);font-size:var(--cascivo-text-xs);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text-muted);text-align:center;inline-size:2.25rem}._cell_6chzy_198{text-align:center;padding:2px}._empty_6chzy_202{inline-size:2.25rem}._day_6chzy_206{block-size:2.25rem;inline-size:2.25rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border-radius:var(--cascivo-radius-control);cursor:pointer;background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:flex}._day_6chzy_206:hover:not([aria-disabled]){background-color:var(--cascivo-color-bg-subtle)}._day_6chzy_206:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._day_6chzy_206[data-today]{font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-accent)}._day_6chzy_206[data-selected]{background-color:var(--cascivo-color-accent);color:var(--cascivo-color-accent-foreground,var(--cascivo-color-text-on-accent))}._day_6chzy_206[aria-disabled]{opacity:.35;cursor:not-allowed}._error_6chzy_241{font-size:var(--cascivo-text-xs);color:var(--cascivo-color-danger)}._hint_6chzy_245{font-size:var(--cascivo-text-xs);color:var(--cascivo-color-text-muted)}}
1
+ @layer cascivo.component{._wrapper_1hgll_2{gap:var(--cascivo-space-1);min-inline-size:0;font-family:var(--cascivo-font-sans);flex-direction:column;display:inline-flex;position:relative}._wrapper_1hgll_2[data-size=sm]{--_height:2rem;--_font:var(--cascivo-text-sm);--_px:var(--cascivo-space-3)}._wrapper_1hgll_2[data-size=md]{--_height:2.5rem;--_font:var(--cascivo-text-sm);--_px:var(--cascivo-space-4)}._wrapper_1hgll_2[data-size=lg]{--_height:3rem;--_font:var(--cascivo-text-base);--_px:var(--cascivo-space-4)}._label_1hgll_31{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text);line-height:var(--cascivo-leading-snug)}._field_1hgll_38{align-items:center;display:flex;position:relative}._trigger_1hgll_44{justify-content:space-between;align-items:center;gap:var(--cascivo-space-2);block-size:var(--_height,2.5rem);min-inline-size:12rem;padding-inline:var(--_px,var(--cascivo-space-4));font-family:var(--cascivo-font-sans);font-size:var(--_font,var(--cascivo-text-sm));color:var(--cascivo-color-text);background-color:var(--cascivo-color-surface);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-field);cursor:pointer;text-align:start;transition:border-color var(--cascivo-duration-150) var(--cascivo-ease-out), box-shadow var(--cascivo-duration-150) var(--cascivo-ease-out);outline:none;display:flex}._trigger_1hgll_44:hover:not(:disabled){border-color:var(--cascivo-color-border-strong)}._trigger_1hgll_44:focus-visible{border-color:var(--cascivo-color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cascivo-color-accent) 20%, transparent)}._trigger_1hgll_44:disabled{opacity:.5;cursor:not-allowed}._wrapper_1hgll_2[data-state=error] ._trigger_1hgll_44{border-color:var(--cascivo-color-danger)}._value_1hgll_82{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._placeholder_1hgll_88{color:var(--cascivo-color-text-subtle)}._icon_1hgll_91{color:var(--cascivo-color-text-muted);font-style:normal}._clear_1hgll_96{cursor:pointer;min-block-size:1.5rem;min-inline-size:1.5rem;color:var(--cascivo-color-text-muted);font-size:var(--cascivo-text-xs);padding:var(--cascivo-space-1);border-radius:var(--cascivo-radius-control);background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;inset-inline-end:var(--cascivo-space-8)}._clear_1hgll_96:hover{color:var(--cascivo-color-text)}._clear_1hgll_96:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._calendar_1hgll_121{z-index:var(--cascivo-z-dropdown);padding:var(--cascivo-space-3);background-color:var(--cascivo-color-surface-overlay);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-overlay);box-shadow:var(--cascivo-shadow-overlay);opacity:0;visibility:hidden;transition:opacity var(--cascivo-motion-enter), translate var(--cascivo-motion-enter), visibility var(--cascivo-motion-enter);position:absolute;inset-block-start:calc(100% + var(--cascivo-space-1));inset-inline-start:0;translate:0 -.25rem}._calendar_1hgll_121[data-state=open]{opacity:1;visibility:visible;translate:0}@starting-style{._calendar_1hgll_121[data-state=open]{opacity:0;translate:0 -.25rem}}._header_1hgll_153{justify-content:space-between;align-items:center;margin-block-end:var(--cascivo-space-2);display:flex}._monthLabel_1hgll_160{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text)}._navButton_1hgll_166{border-radius:var(--cascivo-radius-control);cursor:pointer;block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text-muted);font-size:var(--cascivo-text-base);background:0 0;border:1px solid #0000;outline:none;justify-content:center;align-items:center;display:inline-flex}._navButton_1hgll_166:hover{background-color:var(--cascivo-color-bg-subtle);color:var(--cascivo-color-text)}._navButton_1hgll_166:focus-visible{border-color:var(--cascivo-color-accent)}._grid_1hgll_188{border-collapse:collapse;inline-size:100%}._weekday_1hgll_193{padding-block:var(--cascivo-space-1);font-size:var(--cascivo-text-xs);font-weight:var(--cascivo-font-medium);color:var(--cascivo-color-text-muted);text-align:center;inline-size:2.25rem}._cell_1hgll_202{text-align:center;padding:2px}._empty_1hgll_206{inline-size:2.25rem}._day_1hgll_210{block-size:2.25rem;inline-size:2.25rem;font-family:var(--cascivo-font-sans);font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text);border-radius:var(--cascivo-radius-control);cursor:pointer;background:0 0;border:none;outline:none;justify-content:center;align-items:center;display:flex}._day_1hgll_210:hover:not([aria-disabled]){background-color:var(--cascivo-color-bg-subtle)}._day_1hgll_210:focus-visible{box-shadow:0 0 0 2px var(--cascivo-color-accent)}._day_1hgll_210[data-today]{font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-accent)}._day_1hgll_210[data-selected]{background-color:var(--cascivo-color-accent);color:var(--cascivo-color-accent-foreground,var(--cascivo-color-text-on-accent))}._day_1hgll_210[aria-disabled]{opacity:.35;cursor:not-allowed}._error_1hgll_245{font-size:var(--cascivo-text-xs);color:var(--cascivo-color-danger)}._hint_1hgll_249{font-size:var(--cascivo-text-xs);color:var(--cascivo-color-text-muted)}}
@@ -2,9 +2,9 @@
2
2
 
3
3
  import e from "./date-picker.module.js";
4
4
  import { batch as t, cn as n, createMachine as r, useMachine as i, useSignal as a, useSignalEffect as o, useSignals as s } from "@cascivo/core";
5
- import { builtin as c, currentLocale as ee, t as l } from "@cascivo/i18n";
6
- import { jsx as u, jsxs as d } from "react/jsx-runtime";
7
- import { useId as f, useRef as te } from "react";
5
+ import { useId as c, useRef as ee } from "react";
6
+ import { builtin as l, currentLocale as te, t as u } from "@cascivo/i18n";
7
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
8
8
  //#region ../components/src/date-picker/date-picker.tsx
9
9
  var p = r({
10
10
  initial: "closed",
@@ -41,9 +41,9 @@ function _(e) {
41
41
  }
42
42
  function v({ value: r, defaultValue: v, onValueChange: y, onChange: b, min: x, max: S, clearable: C = !1, label: w, hint: T, error: E, size: D = "md", disabled: O = !1, labels: k, className: re, id: A }) {
43
43
  s();
44
- let [j, M] = i(p), N = f(), P = A ?? `cascade-date-picker-${N}`, F = `${N}-grid`, I = ee(), ie = k?.placeholder ?? l(c.datePicker.placeholder), ae = k?.previousMonth ?? l(c.datePicker.previousMonth), L = k?.nextMonth ?? l(c.datePicker.nextMonth), R = k?.clear ?? l(c.datePicker.clear), z = /* @__PURE__ */ new Date(), B = g(z), V = a(r ?? v);
44
+ let [j, M] = i(p), N = c(), P = A ?? `cascade-date-picker-${N}`, F = `${N}-grid`, I = te(), ie = k?.placeholder ?? u(l.datePicker.placeholder), ae = k?.previousMonth ?? u(l.datePicker.previousMonth), L = k?.nextMonth ?? u(l.datePicker.nextMonth), R = k?.clear ?? u(l.datePicker.clear), z = /* @__PURE__ */ new Date(), B = g(z), V = a(r ?? v);
45
45
  r !== void 0 && (V.value = r);
46
- let H = a(V.value ? _(V.value).getUTCFullYear() : z.getUTCFullYear()), U = a(V.value ? _(V.value).getUTCMonth() : z.getUTCMonth()), W = a(V.value), G = te(null);
46
+ let H = a(V.value ? _(V.value).getUTCFullYear() : z.getUTCFullYear()), U = a(V.value ? _(V.value).getUTCMonth() : z.getUTCMonth()), W = a(V.value), G = ee(null);
47
47
  o(() => {
48
48
  if (j.value !== "open") return;
49
49
  let e = (e) => {
@@ -94,20 +94,20 @@ function v({ value: r, defaultValue: v, onValueChange: y, onChange: b, min: x, m
94
94
  });
95
95
  }
96
96
  }, $ = V.value ? h(_(V.value), I) : "";
97
- return /* @__PURE__ */ d("div", {
97
+ return /* @__PURE__ */ f("div", {
98
98
  ref: G,
99
99
  className: n(e.wrapper, re),
100
100
  "data-state": E ? "error" : j.value,
101
101
  "data-size": D,
102
102
  children: [
103
- w && /* @__PURE__ */ u("label", {
103
+ w && /* @__PURE__ */ d("label", {
104
104
  className: e.label,
105
105
  htmlFor: P,
106
106
  children: w
107
107
  }),
108
- /* @__PURE__ */ d("div", {
108
+ /* @__PURE__ */ f("div", {
109
109
  className: e.field,
110
- children: [/* @__PURE__ */ d("button", {
110
+ children: [/* @__PURE__ */ f("button", {
111
111
  id: P,
112
112
  type: "button",
113
113
  role: "combobox",
@@ -119,15 +119,15 @@ function v({ value: r, defaultValue: v, onValueChange: y, onChange: b, min: x, m
119
119
  className: e.trigger,
120
120
  disabled: O,
121
121
  onClick: j.value === "open" ? q : K,
122
- children: [/* @__PURE__ */ u("span", {
122
+ children: [/* @__PURE__ */ d("span", {
123
123
  className: n(e.value, $ ? void 0 : e.placeholder),
124
124
  children: $ || ie
125
- }), /* @__PURE__ */ u("span", {
125
+ }), /* @__PURE__ */ d("span", {
126
126
  className: e.icon,
127
127
  "aria-hidden": "true",
128
128
  children: "📅"
129
129
  })]
130
- }), C && V.value !== void 0 && /* @__PURE__ */ u("button", {
130
+ }), C && V.value !== void 0 && /* @__PURE__ */ d("button", {
131
131
  type: "button",
132
132
  className: e.clear,
133
133
  "aria-label": R,
@@ -135,29 +135,29 @@ function v({ value: r, defaultValue: v, onValueChange: y, onChange: b, min: x, m
135
135
  children: "✕"
136
136
  })]
137
137
  }),
138
- /* @__PURE__ */ d("div", {
138
+ /* @__PURE__ */ f("div", {
139
139
  id: F,
140
140
  role: "dialog",
141
141
  "aria-label": Q,
142
142
  className: e.calendar,
143
143
  "data-state": j.value,
144
144
  onKeyDown: de,
145
- children: [/* @__PURE__ */ d("div", {
145
+ children: [/* @__PURE__ */ f("div", {
146
146
  className: e.header,
147
147
  children: [
148
- /* @__PURE__ */ u("button", {
148
+ /* @__PURE__ */ d("button", {
149
149
  type: "button",
150
150
  className: e.navButton,
151
151
  "aria-label": ae,
152
152
  onClick: se,
153
153
  children: "‹"
154
154
  }),
155
- /* @__PURE__ */ u("span", {
155
+ /* @__PURE__ */ d("span", {
156
156
  className: e.monthLabel,
157
157
  "aria-live": "polite",
158
158
  children: Q
159
159
  }),
160
- /* @__PURE__ */ u("button", {
160
+ /* @__PURE__ */ d("button", {
161
161
  type: "button",
162
162
  className: e.navButton,
163
163
  "aria-label": L,
@@ -165,20 +165,20 @@ function v({ value: r, defaultValue: v, onValueChange: y, onChange: b, min: x, m
165
165
  children: "›"
166
166
  })
167
167
  ]
168
- }), /* @__PURE__ */ d("table", {
168
+ }), /* @__PURE__ */ f("table", {
169
169
  role: "grid",
170
170
  className: e.grid,
171
- children: [/* @__PURE__ */ u("thead", { children: /* @__PURE__ */ u("tr", { children: ue.map((t) => /* @__PURE__ */ u("th", {
171
+ children: [/* @__PURE__ */ d("thead", { children: /* @__PURE__ */ d("tr", { children: ue.map((t) => /* @__PURE__ */ d("th", {
172
172
  className: e.weekday,
173
173
  abbr: t,
174
174
  scope: "col",
175
175
  children: t
176
- }, t)) }) }), /* @__PURE__ */ u("tbody", { children: Z.map((t, n) => /* @__PURE__ */ u("tr", { children: t.map((t, n) => {
177
- if (!t) return /* @__PURE__ */ u("td", { className: e.empty }, n);
176
+ }, t)) }) }), /* @__PURE__ */ d("tbody", { children: Z.map((t, n) => /* @__PURE__ */ d("tr", { children: t.map((t, n) => {
177
+ if (!t) return /* @__PURE__ */ d("td", { className: e.empty }, n);
178
178
  let r = g(t), i = r === V.value, a = r === B, o = r === W.value, s = x !== void 0 && r < x || S !== void 0 && r > S;
179
- return /* @__PURE__ */ u("td", {
179
+ return /* @__PURE__ */ d("td", {
180
180
  className: e.cell,
181
- children: /* @__PURE__ */ u("button", {
181
+ children: /* @__PURE__ */ d("button", {
182
182
  type: "button",
183
183
  className: e.day,
184
184
  tabIndex: o ? 0 : -1,
@@ -200,13 +200,13 @@ function v({ value: r, defaultValue: v, onValueChange: y, onChange: b, min: x, m
200
200
  }) }, n)) })]
201
201
  })]
202
202
  }),
203
- E && /* @__PURE__ */ u("span", {
203
+ E && /* @__PURE__ */ d("span", {
204
204
  id: `${N}-error`,
205
205
  className: e.error,
206
206
  role: "alert",
207
207
  children: E
208
208
  }),
209
- !E && T && /* @__PURE__ */ u("span", {
209
+ !E && T && /* @__PURE__ */ d("span", {
210
210
  id: `${N}-hint`,
211
211
  className: e.hint,
212
212
  children: T
@@ -2,25 +2,25 @@
2
2
 
3
3
  import './date-picker.css';
4
4
  var e = {
5
- wrapper: "_wrapper_6chzy_2",
6
- label: "_label_6chzy_27",
7
- field: "_field_6chzy_34",
8
- trigger: "_trigger_6chzy_40",
9
- value: "_value_6chzy_78",
10
- placeholder: "_placeholder_6chzy_84",
11
- icon: "_icon_6chzy_87",
12
- clear: "_clear_6chzy_92",
13
- calendar: "_calendar_6chzy_117",
14
- header: "_header_6chzy_149",
15
- monthLabel: "_monthLabel_6chzy_156",
16
- navButton: "_navButton_6chzy_162",
17
- grid: "_grid_6chzy_184",
18
- weekday: "_weekday_6chzy_189",
19
- cell: "_cell_6chzy_198",
20
- empty: "_empty_6chzy_202",
21
- day: "_day_6chzy_206",
22
- error: "_error_6chzy_241",
23
- hint: "_hint_6chzy_245"
5
+ wrapper: "_wrapper_1hgll_2",
6
+ label: "_label_1hgll_31",
7
+ field: "_field_1hgll_38",
8
+ trigger: "_trigger_1hgll_44",
9
+ value: "_value_1hgll_82",
10
+ placeholder: "_placeholder_1hgll_88",
11
+ icon: "_icon_1hgll_91",
12
+ clear: "_clear_1hgll_96",
13
+ calendar: "_calendar_1hgll_121",
14
+ header: "_header_1hgll_153",
15
+ monthLabel: "_monthLabel_1hgll_160",
16
+ navButton: "_navButton_1hgll_166",
17
+ grid: "_grid_1hgll_188",
18
+ weekday: "_weekday_1hgll_193",
19
+ cell: "_cell_1hgll_202",
20
+ empty: "_empty_1hgll_206",
21
+ day: "_day_1hgll_210",
22
+ error: "_error_1hgll_245",
23
+ hint: "_hint_1hgll_249"
24
24
  };
25
25
  //#endregion
26
26
  export { e as default };
@@ -2,10 +2,10 @@
2
2
 
3
3
  import { Calendar as e } from "../calendar/calendar.js";
4
4
  import t from "./date-range-picker.module.js";
5
- import { batch as n, cn as r, useControllableSignal as i, useSignal as a, useSignalEffect as o, useSignals as s } from "@cascivo/core";
6
- import { builtin as c, currentLocale as ee, t as l } from "@cascivo/i18n";
7
- import { jsx as u, jsxs as d } from "react/jsx-runtime";
8
- import { useRef as f } from "react";
5
+ import { batch as n, cn as r, useControllableSignal as ee, useSignal as i, useSignalEffect as a, useSignals as o } from "@cascivo/core";
6
+ import { useRef as s } from "react";
7
+ import { builtin as c, currentLocale as l, t as u } from "@cascivo/i18n";
8
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
9
9
  //#region ../components/src/date-range-picker/date-range-picker.tsx
10
10
  function p(e) {
11
11
  return Date.UTC(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate());
@@ -21,15 +21,15 @@ function h(e, t, n) {
21
21
  };
22
22
  }
23
23
  function g({ value: g, defaultValue: _, onValueChange: te, min: v, max: y, disabled: b, presets: x, locale: S, placeholder: C, size: w = "md", labels: T, className: ne }) {
24
- s();
25
- let E = S ?? ee(), re = C ?? l(c.dateRangePicker.placeholder), D = T?.apply ?? l(c.dateRangePicker.apply), O = T?.clear ?? l(c.dateRangePicker.clear), k = T?.previousMonth ?? l(c.calendar.previousMonth), A = T?.nextMonth ?? l(c.calendar.nextMonth), [j, M] = i({
24
+ o();
25
+ let E = S ?? l(), re = C ?? u(c.dateRangePicker.placeholder), D = T?.apply ?? u(c.dateRangePicker.apply), O = T?.clear ?? u(c.dateRangePicker.clear), k = T?.previousMonth ?? u(c.calendar.previousMonth), A = T?.nextMonth ?? u(c.calendar.nextMonth), [j, M] = ee({
26
26
  value: g === void 0 ? void 0 : g,
27
27
  defaultValue: _ ?? null,
28
28
  onChange: (e) => {
29
29
  e && te?.(e);
30
30
  }
31
- }), N = a(!1), P = a(null), F = a(null), I = j.value?.start ?? _?.start ?? /* @__PURE__ */ new Date(), L = a(I.getUTCFullYear()), R = a(I.getUTCMonth()), z = f(null);
32
- o(() => {
31
+ }), N = i(!1), P = i(null), F = i(null), I = j.value?.start ?? _?.start ?? /* @__PURE__ */ new Date(), L = i(I.getUTCFullYear()), R = i(I.getUTCMonth()), z = s(null);
32
+ a(() => {
33
33
  if (!N.value) return;
34
34
  let e = (e) => {
35
35
  z.current && !z.current.contains(e.target) && (N.value = !1);
@@ -102,49 +102,49 @@ function g({ value: g, defaultValue: _, onValueChange: te, min: v, max: y, disab
102
102
  nextMonth: A
103
103
  }
104
104
  };
105
- return /* @__PURE__ */ d("div", {
105
+ return /* @__PURE__ */ f("div", {
106
106
  ref: z,
107
107
  className: r(t.wrapper, ne),
108
108
  "data-size": w,
109
109
  onKeyDown: (e) => {
110
110
  e.key === "Escape" && N.value && (e.stopPropagation(), V());
111
111
  },
112
- children: [/* @__PURE__ */ d("button", {
112
+ children: [/* @__PURE__ */ f("button", {
113
113
  type: "button",
114
114
  role: "combobox",
115
115
  "aria-expanded": N.value,
116
116
  "aria-haspopup": "dialog",
117
- "aria-label": T?.label ?? l(c.dateRangePicker.label),
117
+ "aria-label": T?.label ?? u(c.dateRangePicker.label),
118
118
  className: t.trigger,
119
119
  onClick: N.value ? V : B,
120
- children: [/* @__PURE__ */ u("span", {
120
+ children: [/* @__PURE__ */ d("span", {
121
121
  className: r(t.value, Z ? void 0 : t.placeholder),
122
122
  children: Z || re
123
- }), /* @__PURE__ */ u("span", {
123
+ }), /* @__PURE__ */ d("span", {
124
124
  className: t.icon,
125
125
  "aria-hidden": "true",
126
126
  children: "📅"
127
127
  })]
128
- }), /* @__PURE__ */ d("div", {
128
+ }), /* @__PURE__ */ f("div", {
129
129
  role: "dialog",
130
130
  className: t.panel,
131
131
  "data-state": N.value ? "open" : "closed",
132
132
  children: [
133
- x && x.length > 0 && /* @__PURE__ */ u("div", {
133
+ x && x.length > 0 && /* @__PURE__ */ d("div", {
134
134
  className: t.presets,
135
- children: x.map((e) => /* @__PURE__ */ u("button", {
135
+ children: x.map((e) => /* @__PURE__ */ d("button", {
136
136
  type: "button",
137
137
  className: t.preset,
138
138
  onClick: () => W(e),
139
139
  children: e.label
140
140
  }, e.label))
141
141
  }),
142
- /* @__PURE__ */ d("div", {
142
+ /* @__PURE__ */ f("div", {
143
143
  className: t.calendars,
144
144
  children: [
145
- /* @__PURE__ */ u("div", {
145
+ /* @__PURE__ */ d("div", {
146
146
  className: t.calNav,
147
- children: /* @__PURE__ */ u("button", {
147
+ children: /* @__PURE__ */ d("button", {
148
148
  type: "button",
149
149
  className: t.navButton,
150
150
  "aria-label": k,
@@ -152,19 +152,19 @@ function g({ value: g, defaultValue: _, onValueChange: te, min: v, max: y, disab
152
152
  children: "‹"
153
153
  })
154
154
  }),
155
- /* @__PURE__ */ u(e, {
155
+ /* @__PURE__ */ d(e, {
156
156
  month: R.value,
157
157
  year: L.value,
158
158
  ...$
159
159
  }),
160
- /* @__PURE__ */ u(e, {
160
+ /* @__PURE__ */ d(e, {
161
161
  month: Q.month,
162
162
  year: Q.year,
163
163
  ...$
164
164
  }),
165
- /* @__PURE__ */ u("div", {
165
+ /* @__PURE__ */ d("div", {
166
166
  className: t.calNav,
167
- children: /* @__PURE__ */ u("button", {
167
+ children: /* @__PURE__ */ d("button", {
168
168
  type: "button",
169
169
  className: t.navButton,
170
170
  "aria-label": A,
@@ -174,14 +174,14 @@ function g({ value: g, defaultValue: _, onValueChange: te, min: v, max: y, disab
174
174
  })
175
175
  ]
176
176
  }),
177
- /* @__PURE__ */ d("div", {
177
+ /* @__PURE__ */ f("div", {
178
178
  className: t.footer,
179
- children: [/* @__PURE__ */ u("button", {
179
+ children: [/* @__PURE__ */ d("button", {
180
180
  type: "button",
181
181
  className: t.clearBtn,
182
182
  onClick: G,
183
183
  children: O
184
- }), /* @__PURE__ */ u("button", {
184
+ }), /* @__PURE__ */ d("button", {
185
185
  type: "button",
186
186
  className: t.applyBtn,
187
187
  onClick: V,
@@ -1 +1 @@
1
- @layer cascivo.component{._overlay_cbcjg_2{z-index:var(--cascivo-z-overlay,50);opacity:1;transition:opacity var(--cascivo-motion-enter);background-color:#0006;display:flex;position:fixed;inset:0}._overlay_cbcjg_2[data-state=closed]{opacity:0;transition:opacity var(--cascivo-motion-exit)}@starting-style{._overlay_cbcjg_2[data-state=open]{opacity:0}}._overlay_cbcjg_2[data-side=end]{justify-content:flex-end;align-items:stretch}._overlay_cbcjg_2[data-side=start]{justify-content:flex-start;align-items:stretch}._overlay_cbcjg_2[data-side=top]{align-items:flex-start}._overlay_cbcjg_2[data-side=bottom]{align-items:flex-end}._panel_cbcjg_39{background:var(--cascivo-color-surface);box-shadow:var(--cascivo-shadow-overlay);transform:none;transform:translate(var(--_drawer-drag-x,0), var(--_drawer-drag-y,0));transition:translate var(--cascivo-motion-enter), transform var(--cascivo-motion-exit);flex-direction:column;display:flex}._panel_cbcjg_39[data-dragging]{transition:none}._overlay_cbcjg_2[data-state=closed] ._panel_cbcjg_39{transition:translate var(--cascivo-motion-exit)}._panel_cbcjg_39[data-side=end]{inline-size:var(--_drawer-size,min(24rem, 90vw));border-inline-start:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-overlay) 0 0 var(--cascivo-radius-overlay);block-size:100%;translate:0}._overlay_cbcjg_2[data-state=closed] ._panel_cbcjg_39[data-side=end]{translate:100%}._panel_cbcjg_39[data-side=start]{inline-size:var(--_drawer-size,min(24rem, 90vw));border-inline-end:1px solid var(--cascivo-color-border);border-radius:0 var(--cascivo-radius-overlay) var(--cascivo-radius-overlay) 0;block-size:100%;translate:0}._overlay_cbcjg_2[data-state=closed] ._panel_cbcjg_39[data-side=start]{translate:-100%}._panel_cbcjg_39[data-side=top]{inline-size:100%;block-size:var(--_drawer-size,auto);border-block-end:1px solid var(--cascivo-color-border);border-radius:0 0 var(--cascivo-radius-overlay) var(--cascivo-radius-overlay);max-block-size:80vh;translate:0}._overlay_cbcjg_2[data-state=closed] ._panel_cbcjg_39[data-side=top]{translate:0 -100%}._panel_cbcjg_39[data-side=bottom]{inline-size:100%;block-size:var(--_drawer-size,auto);border-block-start:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-overlay) var(--cascivo-radius-overlay) 0 0;max-block-size:80vh;translate:0}._overlay_cbcjg_2[data-state=closed] ._panel_cbcjg_39[data-side=bottom]{translate:0 100%}@starting-style{._overlay_cbcjg_2[data-state=open] ._panel_cbcjg_39[data-side=end]{translate:100%}._overlay_cbcjg_2[data-state=open] ._panel_cbcjg_39[data-side=start]{translate:-100%}._overlay_cbcjg_2[data-state=open] ._panel_cbcjg_39[data-side=top]{translate:0 -100%}._overlay_cbcjg_2[data-state=open] ._panel_cbcjg_39[data-side=bottom]{translate:0 100%}}._header_cbcjg_124{justify-content:space-between;align-items:flex-start;gap:var(--cascivo-space-4);padding:var(--cascivo-space-4) var(--cascivo-space-6);border-block-end:1px solid var(--cascivo-color-border);flex-shrink:0;display:flex}._heading_cbcjg_134{gap:var(--cascivo-space-1);flex-direction:column;display:flex}._title_cbcjg_140{font-size:var(--cascivo-text-lg);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text);margin:0}._description_cbcjg_147{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle);margin:0}._close_cbcjg_153{block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);cursor:pointer;transition:color var(--cascivo-duration-150) var(--cascivo-ease-out), background-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}._close_cbcjg_153:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._close_cbcjg_153:focus-visible{box-shadow:var(--cascivo-focus-ring);outline:none}._closeIcon_cbcjg_181{block-size:1rem;inline-size:1rem}._body_cbcjg_186{padding:var(--cascivo-space-6);flex:1;overflow-y:auto}@media (prefers-reduced-motion:reduce){._panel_cbcjg_39{transition:none}}}
1
+ @layer cascivo.component{._overlay_1q94b_2{z-index:var(--cascivo-z-overlay,50);opacity:1;transition:opacity var(--cascivo-motion-enter);background-color:#0006;display:flex;position:fixed;inset:0}._overlay_1q94b_2[data-state=closed]{opacity:0;transition:opacity var(--cascivo-motion-exit)}@starting-style{._overlay_1q94b_2[data-state=open]{opacity:0}}._overlay_1q94b_2[data-side=end]{justify-content:flex-end;align-items:stretch}._overlay_1q94b_2[data-side=start]{justify-content:flex-start;align-items:stretch}._overlay_1q94b_2[data-side=top]{align-items:flex-start}._overlay_1q94b_2[data-side=bottom]{align-items:flex-end}._panel_1q94b_39{background:var(--cascivo-color-surface);box-shadow:var(--cascivo-shadow-overlay);transform:none;transform:translate(var(--_drawer-drag-x,0), var(--_drawer-drag-y,0));transition:translate var(--cascivo-motion-enter), transform var(--cascivo-motion-exit);flex-direction:column;display:flex}._panel_1q94b_39[data-dragging]{transition:none}._overlay_1q94b_2[data-state=closed] ._panel_1q94b_39{transition:translate var(--cascivo-motion-exit)}._panel_1q94b_39[data-side=end]{inline-size:var(--_drawer-size,min(24rem, 90vw));border-inline-start:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-overlay) 0 0 var(--cascivo-radius-overlay);block-size:100%;translate:0}._overlay_1q94b_2[data-state=closed] ._panel_1q94b_39[data-side=end]{translate:100%}._panel_1q94b_39[data-side=start]{inline-size:var(--_drawer-size,min(24rem, 90vw));border-inline-end:1px solid var(--cascivo-color-border);border-radius:0 var(--cascivo-radius-overlay) var(--cascivo-radius-overlay) 0;block-size:100%;translate:0}._overlay_1q94b_2[data-state=closed] ._panel_1q94b_39[data-side=start]{translate:-100%}._panel_1q94b_39[data-side=top]{inline-size:100%;block-size:var(--_drawer-size,auto);border-block-end:1px solid var(--cascivo-color-border);border-radius:0 0 var(--cascivo-radius-overlay) var(--cascivo-radius-overlay);max-block-size:80vh;translate:0}._overlay_1q94b_2[data-state=closed] ._panel_1q94b_39[data-side=top]{translate:0 -100%}._panel_1q94b_39[data-side=bottom]{inline-size:100%;block-size:var(--_drawer-size,auto);border-block-start:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-overlay) var(--cascivo-radius-overlay) 0 0;max-block-size:80vh;translate:0}._overlay_1q94b_2[data-state=closed] ._panel_1q94b_39[data-side=bottom]{translate:0 100%}@starting-style{._overlay_1q94b_2[data-state=open] ._panel_1q94b_39[data-side=end]{translate:100%}._overlay_1q94b_2[data-state=open] ._panel_1q94b_39[data-side=start]{translate:-100%}._overlay_1q94b_2[data-state=open] ._panel_1q94b_39[data-side=top]{translate:0 -100%}._overlay_1q94b_2[data-state=open] ._panel_1q94b_39[data-side=bottom]{translate:0 100%}}._header_1q94b_124{justify-content:space-between;align-items:flex-start;gap:var(--cascivo-space-4);padding:var(--cascivo-space-4) var(--cascivo-space-6);border-block-end:1px solid var(--cascivo-color-border);flex-shrink:0;display:flex}._heading_1q94b_134{gap:var(--cascivo-space-1);flex-direction:column;display:flex}._title_1q94b_140{font-size:var(--cascivo-text-lg);font-weight:var(--cascivo-font-semibold);color:var(--cascivo-color-text);margin:0}._description_1q94b_147{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle);margin:0}._close_1q94b_153{block-size:2rem;inline-size:2rem;color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);cursor:pointer;transition:color var(--cascivo-duration-150) var(--cascivo-ease-out), background-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}._close_1q94b_153:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._close_1q94b_153:focus-visible{box-shadow:var(--cascivo-focus-ring);outline:none}._closeIcon_1q94b_181{block-size:1rem;inline-size:1rem}._body_1q94b_186{gap:var(--cascivo-dialog-body-gap,var(--cascivo-space-5));padding:var(--cascivo-space-6);flex-direction:column;flex:1;display:flex;overflow-y:auto}@media (prefers-reduced-motion:reduce){._panel_1q94b_39{transition:none}}}
@@ -2,9 +2,9 @@
2
2
 
3
3
  import e from "./drawer.module.js";
4
4
  import { DismissableLayer as t, FocusScope as n, Portal as r, Presence as i, cn as a, useControllableSignal as o, useDraggable as s, useScrollLock as c, useSignals as l } from "@cascivo/core";
5
- import { builtin as u, t as d } from "@cascivo/i18n";
6
- import { jsx as f, jsxs as p } from "react/jsx-runtime";
7
- import { useId as m } from "react";
5
+ import { useId as u } from "react";
6
+ import { builtin as d, t as f } from "@cascivo/i18n";
7
+ import { jsx as p, jsxs as m } from "react/jsx-runtime";
8
8
  //#region ../components/src/drawer/drawer.tsx
9
9
  var h = 80;
10
10
  function g({ open: g, defaultOpen: _, onOpenChange: v, side: y = "end", size: b, title: x, description: S, children: C, labels: w, className: T, swipeToDismiss: E = !1 }) {
@@ -22,25 +22,25 @@ function g({ open: g, defaultOpen: _, onOpenChange: v, side: y = "end", size: b,
22
22
  let t = k === "y" ? e.y : e.x, n = y === "end" && t > h || y === "start" && t < -80 || y === "bottom" && t > h || y === "top" && t < -80;
23
23
  N(), n && O(!1);
24
24
  }
25
- }), P = m(), F = m(), I = w?.close ?? d(u.drawer.close), L = {
25
+ }), P = u(), F = u(), I = w?.close ?? f(d.drawer.close), L = {
26
26
  ...b ? { "--_drawer-size": b } : {},
27
27
  ...E ? {
28
28
  "--_drawer-drag-x": `${j.value.x}px`,
29
29
  "--_drawer-drag-y": `${j.value.y}px`
30
30
  } : {}
31
31
  };
32
- return /* @__PURE__ */ f(r, { children: /* @__PURE__ */ f(i, {
32
+ return /* @__PURE__ */ p(r, { children: /* @__PURE__ */ p(i, {
33
33
  present: D,
34
- children: /* @__PURE__ */ f("div", {
34
+ children: /* @__PURE__ */ p("div", {
35
35
  className: e.overlay,
36
36
  "data-side": y,
37
- children: /* @__PURE__ */ f(t, {
37
+ children: /* @__PURE__ */ p(t, {
38
38
  onDismiss: () => O(!1),
39
- children: /* @__PURE__ */ f(n, {
39
+ children: /* @__PURE__ */ p(n, {
40
40
  trapped: !0,
41
41
  restoreFocus: !0,
42
42
  autoFocus: !0,
43
- children: /* @__PURE__ */ p("div", {
43
+ children: /* @__PURE__ */ m("div", {
44
44
  role: "dialog",
45
45
  "aria-modal": "true",
46
46
  "aria-labelledby": x ? P : void 0,
@@ -49,30 +49,30 @@ function g({ open: g, defaultOpen: _, onOpenChange: v, side: y = "end", size: b,
49
49
  "data-dragging": E && M.value ? "" : void 0,
50
50
  className: a(e.panel, T),
51
51
  style: L,
52
- children: [(x || S) && /* @__PURE__ */ p("div", {
52
+ children: [(x || S) && /* @__PURE__ */ m("div", {
53
53
  className: e.header,
54
54
  ref: E ? A : void 0,
55
- children: [/* @__PURE__ */ p("div", {
55
+ children: [/* @__PURE__ */ m("div", {
56
56
  className: e.heading,
57
- children: [x && /* @__PURE__ */ f("h2", {
57
+ children: [x && /* @__PURE__ */ p("h2", {
58
58
  id: P,
59
59
  className: e.title,
60
60
  children: x
61
- }), S && /* @__PURE__ */ f("p", {
61
+ }), S && /* @__PURE__ */ p("p", {
62
62
  id: F,
63
63
  className: e.description,
64
64
  children: S
65
65
  })]
66
- }), /* @__PURE__ */ f("button", {
66
+ }), /* @__PURE__ */ p("button", {
67
67
  type: "button",
68
68
  "aria-label": I,
69
69
  onClick: () => O(!1),
70
70
  className: e.close,
71
- children: /* @__PURE__ */ f("svg", {
71
+ children: /* @__PURE__ */ p("svg", {
72
72
  "aria-hidden": "true",
73
73
  viewBox: "0 0 16 16",
74
74
  className: e.closeIcon,
75
- children: /* @__PURE__ */ f("path", {
75
+ children: /* @__PURE__ */ p("path", {
76
76
  d: "M4 4l8 8M12 4l-8 8",
77
77
  fill: "none",
78
78
  stroke: "currentColor",
@@ -81,8 +81,9 @@ function g({ open: g, defaultOpen: _, onOpenChange: v, side: y = "end", size: b,
81
81
  })
82
82
  })
83
83
  })]
84
- }), /* @__PURE__ */ f("div", {
84
+ }), /* @__PURE__ */ p("div", {
85
85
  className: e.body,
86
+ "data-cascivo-drawer-body": "",
86
87
  children: C
87
88
  })]
88
89
  })