asheeui 0.6.15 → 1.0.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 (389) hide show
  1. package/dist/AsheeUIProvider.d.ts.map +1 -1
  2. package/dist/AsheeUIProvider.js +29 -24
  3. package/dist/components/accordion/Accordion.d.ts.map +1 -1
  4. package/dist/components/accordion/Accordion.js +81 -173
  5. package/dist/components/accordion/accordion-config.js +12 -13
  6. package/dist/components/accordion/accordion-styles.js +21 -24
  7. package/dist/components/alert/Alert.d.ts +88 -0
  8. package/dist/components/alert/Alert.d.ts.map +1 -0
  9. package/dist/components/alert/Alert.js +61 -0
  10. package/dist/components/alert/alert-config.d.ts +56 -0
  11. package/dist/components/alert/alert-config.d.ts.map +1 -0
  12. package/dist/components/alert/alert-config.js +14 -0
  13. package/dist/components/alert/alert-styles.d.ts +32 -0
  14. package/dist/components/alert/alert-styles.d.ts.map +1 -0
  15. package/dist/components/alert/alert-styles.js +20 -0
  16. package/dist/components/alert/index.d.ts +3 -0
  17. package/dist/components/alert/index.d.ts.map +1 -0
  18. package/dist/components/alert/index.js +3 -0
  19. package/dist/components/autocomplete/Autocomplete.d.ts +6 -6
  20. package/dist/components/autocomplete/Autocomplete.d.ts.map +1 -1
  21. package/dist/components/autocomplete/Autocomplete.js +114 -136
  22. package/dist/components/autocomplete/autocomplete-config.d.ts +1 -1
  23. package/dist/components/autocomplete/autocomplete-config.d.ts.map +1 -1
  24. package/dist/components/autocomplete/autocomplete-config.js +7 -12
  25. package/dist/components/avatar/Avatar.d.ts +87 -0
  26. package/dist/components/avatar/Avatar.d.ts.map +1 -0
  27. package/dist/components/avatar/Avatar.js +43 -0
  28. package/dist/components/avatar/avatar-config.d.ts +48 -0
  29. package/dist/components/avatar/avatar-config.d.ts.map +1 -0
  30. package/dist/components/avatar/avatar-config.js +14 -0
  31. package/dist/components/avatar/avatar-styles.d.ts +21 -0
  32. package/dist/components/avatar/avatar-styles.d.ts.map +1 -0
  33. package/dist/components/avatar/avatar-styles.js +13 -0
  34. package/dist/components/avatar/avatar.helpers.d.ts +19 -0
  35. package/dist/components/avatar/avatar.helpers.d.ts.map +1 -0
  36. package/dist/components/avatar/avatar.helpers.js +11 -0
  37. package/dist/components/avatar/index.d.ts +3 -0
  38. package/dist/components/avatar/index.d.ts.map +1 -0
  39. package/dist/components/avatar/index.js +4 -0
  40. package/dist/components/badge/Badge.d.ts +69 -0
  41. package/dist/components/badge/Badge.d.ts.map +1 -0
  42. package/dist/components/badge/Badge.js +39 -0
  43. package/dist/components/badge/badge-config.d.ts +63 -0
  44. package/dist/components/badge/badge-config.d.ts.map +1 -0
  45. package/dist/components/badge/badge-config.js +15 -0
  46. package/dist/components/badge/badge-styles.d.ts +27 -0
  47. package/dist/components/badge/badge-styles.d.ts.map +1 -0
  48. package/dist/components/badge/badge-styles.js +25 -0
  49. package/dist/components/badge/index.d.ts +3 -0
  50. package/dist/components/badge/index.d.ts.map +1 -0
  51. package/dist/components/badge/index.js +3 -0
  52. package/dist/components/breadcrumb/Breadcrumb.d.ts +106 -0
  53. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -0
  54. package/dist/components/breadcrumb/Breadcrumb.js +52 -0
  55. package/dist/components/breadcrumb/breadcrumb-config.d.ts +41 -0
  56. package/dist/components/breadcrumb/breadcrumb-config.d.ts.map +1 -0
  57. package/dist/components/breadcrumb/breadcrumb-config.js +10 -0
  58. package/dist/components/breadcrumb/breadcrumb-styles.d.ts +28 -0
  59. package/dist/components/breadcrumb/breadcrumb-styles.d.ts.map +1 -0
  60. package/dist/components/breadcrumb/breadcrumb-styles.js +17 -0
  61. package/dist/components/breadcrumb/index.d.ts +3 -0
  62. package/dist/components/breadcrumb/index.d.ts.map +1 -0
  63. package/dist/components/breadcrumb/index.js +3 -0
  64. package/dist/components/button/Button.d.ts +29 -1
  65. package/dist/components/button/Button.d.ts.map +1 -1
  66. package/dist/components/button/Button.js +50 -108
  67. package/dist/components/button/button-config.js +16 -17
  68. package/dist/components/button/button-styles.js +10 -11
  69. package/dist/components/{date-picker/DatePicker.d.ts → calendar/Calendar.d.ts} +22 -22
  70. package/dist/components/calendar/Calendar.d.ts.map +1 -0
  71. package/dist/components/calendar/Calendar.js +123 -0
  72. package/dist/components/{date-picker/Calendar.d.ts → calendar/DateGrid.d.ts} +7 -7
  73. package/dist/components/calendar/DateGrid.d.ts.map +1 -0
  74. package/dist/components/calendar/DateGrid.js +194 -0
  75. package/dist/components/calendar/TimeSpinner.d.ts.map +1 -0
  76. package/dist/components/calendar/TimeSpinner.js +60 -0
  77. package/dist/components/{date-picker/date-picker-config.d.ts → calendar/calendar-config.d.ts} +17 -17
  78. package/dist/components/calendar/calendar-config.d.ts.map +1 -0
  79. package/dist/components/calendar/calendar-config.js +15 -0
  80. package/dist/components/{date-picker/date-picker-styles.d.ts → calendar/calendar-styles.d.ts} +1 -1
  81. package/dist/components/calendar/calendar-styles.d.ts.map +1 -0
  82. package/dist/components/calendar/calendar-styles.js +46 -0
  83. package/dist/components/{date-picker/date-picker.helpers.d.ts → calendar/calendar.helpers.d.ts} +9 -9
  84. package/dist/components/calendar/calendar.helpers.d.ts.map +1 -0
  85. package/dist/components/calendar/calendar.helpers.js +82 -0
  86. package/dist/components/calendar/index.d.ts +3 -0
  87. package/dist/components/calendar/index.d.ts.map +1 -0
  88. package/dist/components/calendar/index.js +6 -0
  89. package/dist/components/card/Card.d.ts +36 -16
  90. package/dist/components/card/Card.d.ts.map +1 -1
  91. package/dist/components/card/Card.js +115 -205
  92. package/dist/components/card/card-config.js +24 -21
  93. package/dist/components/card/card-styles.js +19 -22
  94. package/dist/components/carousel/Carousel.d.ts.map +1 -1
  95. package/dist/components/carousel/Carousel.js +125 -248
  96. package/dist/components/carousel/carousel-config.js +24 -25
  97. package/dist/components/carousel/carousel-styles.d.ts +1 -20
  98. package/dist/components/carousel/carousel-styles.d.ts.map +1 -1
  99. package/dist/components/carousel/carousel-styles.js +14 -16
  100. package/dist/components/chip/Chip.js +84 -191
  101. package/dist/components/chip/chip-config.js +13 -14
  102. package/dist/components/chip/chip-styles.js +22 -26
  103. package/dist/components/drawer/Drawer.d.ts +33 -11
  104. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  105. package/dist/components/drawer/Drawer.js +70 -131
  106. package/dist/components/drawer/drawer-config.js +14 -15
  107. package/dist/components/drawer/drawer-styles.js +38 -42
  108. package/dist/components/{select/Select.d.ts → dropmenu/Dropmenu.d.ts} +22 -21
  109. package/dist/components/dropmenu/Dropmenu.d.ts.map +1 -0
  110. package/dist/components/dropmenu/Dropmenu.js +102 -0
  111. package/dist/components/{select/select-config.d.ts → dropmenu/dropmenu-config.d.ts} +8 -8
  112. package/dist/components/dropmenu/dropmenu-config.d.ts.map +1 -0
  113. package/dist/components/dropmenu/dropmenu-config.js +9 -0
  114. package/dist/components/{select/select-styles.d.ts → dropmenu/dropmenu-styles.d.ts} +1 -1
  115. package/dist/components/dropmenu/dropmenu-styles.d.ts.map +1 -0
  116. package/dist/components/dropmenu/dropmenu-styles.js +6 -0
  117. package/dist/components/dropmenu/index.d.ts +3 -0
  118. package/dist/components/dropmenu/index.d.ts.map +1 -0
  119. package/dist/components/dropmenu/index.js +3 -0
  120. package/dist/components/field/FieldShell.d.ts +13 -1
  121. package/dist/components/field/FieldShell.d.ts.map +1 -1
  122. package/dist/components/field/FieldShell.js +50 -56
  123. package/dist/components/field/field-config.js +17 -18
  124. package/dist/components/field/field-styles.js +8 -8
  125. package/dist/components/form/Form.d.ts +109 -0
  126. package/dist/components/form/Form.d.ts.map +1 -0
  127. package/dist/components/form/Form.js +42 -0
  128. package/dist/components/form/form-config.d.ts +57 -0
  129. package/dist/components/form/form-config.d.ts.map +1 -0
  130. package/dist/components/form/form-config.js +12 -0
  131. package/dist/components/form/form-styles.d.ts +27 -0
  132. package/dist/components/form/form-styles.d.ts.map +1 -0
  133. package/dist/components/form/form-styles.js +5 -0
  134. package/dist/components/form/index.d.ts +3 -0
  135. package/dist/components/form/index.d.ts.map +1 -0
  136. package/dist/components/form/index.js +3 -0
  137. package/dist/components/image/Image.d.ts +8 -9
  138. package/dist/components/image/Image.d.ts.map +1 -1
  139. package/dist/components/image/Image.js +65 -132
  140. package/dist/components/image/image-config.js +17 -18
  141. package/dist/components/image/image-styles.js +14 -15
  142. package/dist/components/input/Input.js +65 -150
  143. package/dist/components/input/PasswordInput.js +30 -49
  144. package/dist/components/input/input-config.js +7 -7
  145. package/dist/components/input/input-styles.js +9 -10
  146. package/dist/components/keyboard/KeyboardContext.js +10 -11
  147. package/dist/components/keyboard/KeyboardProvider.js +100 -181
  148. package/dist/components/keyboard/OnScreenKeyboard.d.ts.map +1 -1
  149. package/dist/components/keyboard/OnScreenKeyboard.js +159 -166
  150. package/dist/components/keyboard/keyboard-config.js +59 -57
  151. package/dist/components/keyboard/keyboard-styles.js +10 -11
  152. package/dist/components/keyboard/use-keyboard-field.js +29 -21
  153. package/dist/components/link/Link.d.ts +12 -10
  154. package/dist/components/link/Link.d.ts.map +1 -1
  155. package/dist/components/link/Link.js +47 -137
  156. package/dist/components/link/link-config.js +14 -15
  157. package/dist/components/link/link-styles.js +25 -29
  158. package/dist/components/marquee/Marquee.d.ts.map +1 -1
  159. package/dist/components/marquee/Marquee.js +58 -144
  160. package/dist/components/marquee/marquee-config.js +18 -19
  161. package/dist/components/marquee/marquee-styles.js +13 -15
  162. package/dist/components/{select-menu/SelectMenu.d.ts → menu/Menu.d.ts} +52 -19
  163. package/dist/components/menu/Menu.d.ts.map +1 -0
  164. package/dist/components/menu/Menu.js +161 -0
  165. package/dist/components/menu/index.d.ts +5 -0
  166. package/dist/components/menu/index.d.ts.map +1 -0
  167. package/dist/components/menu/index.js +4 -0
  168. package/dist/components/{select-menu/select-menu-config.d.ts → menu/menu-config.d.ts} +5 -5
  169. package/dist/components/menu/menu-config.d.ts.map +1 -0
  170. package/dist/components/menu/menu-config.js +14 -0
  171. package/dist/components/menu/menu-navigation.d.ts +38 -0
  172. package/dist/components/menu/menu-navigation.d.ts.map +1 -0
  173. package/dist/components/menu/menu-navigation.js +20 -0
  174. package/dist/components/{select-menu/use-select-floating.d.ts → menu/use-menu-floating.d.ts} +20 -10
  175. package/dist/components/menu/use-menu-floating.d.ts.map +1 -0
  176. package/dist/components/menu/use-menu-floating.js +43 -0
  177. package/dist/components/modal/Modal.d.ts +32 -11
  178. package/dist/components/modal/Modal.d.ts.map +1 -1
  179. package/dist/components/modal/Modal.js +74 -137
  180. package/dist/components/modal/modal-config.js +15 -16
  181. package/dist/components/modal/modal-styles.js +13 -14
  182. package/dist/components/multi-select/MultiSelect.d.ts +29 -12
  183. package/dist/components/multi-select/MultiSelect.d.ts.map +1 -1
  184. package/dist/components/multi-select/MultiSelect.js +162 -283
  185. package/dist/components/multi-select/multi-select-config.d.ts +24 -19
  186. package/dist/components/multi-select/multi-select-config.d.ts.map +1 -1
  187. package/dist/components/multi-select/multi-select-config.js +18 -21
  188. package/dist/components/multi-select/multi-select-styles.js +17 -20
  189. package/dist/components/pagination/Pagination.d.ts +91 -0
  190. package/dist/components/pagination/Pagination.d.ts.map +1 -0
  191. package/dist/components/pagination/Pagination.js +66 -0
  192. package/dist/components/pagination/index.d.ts +3 -0
  193. package/dist/components/pagination/index.d.ts.map +1 -0
  194. package/dist/components/pagination/index.js +4 -0
  195. package/dist/components/pagination/pagination-config.d.ts +66 -0
  196. package/dist/components/pagination/pagination-config.d.ts.map +1 -0
  197. package/dist/components/pagination/pagination-config.js +19 -0
  198. package/dist/components/pagination/pagination-styles.d.ts +19 -0
  199. package/dist/components/pagination/pagination-styles.d.ts.map +1 -0
  200. package/dist/components/pagination/pagination-styles.js +5 -0
  201. package/dist/components/pagination/pagination.helpers.d.ts +26 -0
  202. package/dist/components/pagination/pagination.helpers.d.ts.map +1 -0
  203. package/dist/components/pagination/pagination.helpers.js +12 -0
  204. package/dist/components/radio/Radio.d.ts +53 -107
  205. package/dist/components/radio/Radio.d.ts.map +1 -1
  206. package/dist/components/radio/Radio.js +56 -79
  207. package/dist/components/radio/RadioGroup.d.ts +107 -53
  208. package/dist/components/radio/RadioGroup.d.ts.map +1 -1
  209. package/dist/components/radio/RadioGroup.js +51 -155
  210. package/dist/components/radio/index.d.ts +0 -1
  211. package/dist/components/radio/index.d.ts.map +1 -1
  212. package/dist/components/radio/radio-config.js +15 -16
  213. package/dist/components/radio/radio-context.js +6 -6
  214. package/dist/components/radio/radio-styles.js +55 -60
  215. package/dist/components/resizable-screen/ResizableScreen.d.ts +4 -4
  216. package/dist/components/resizable-screen/ResizableScreen.js +87 -177
  217. package/dist/components/resizable-screen/resizable-screen-config.js +16 -17
  218. package/dist/components/scrollbar/index.js +1 -0
  219. package/dist/components/scrollbar/scrollbar-config.js +13 -0
  220. package/dist/components/sidebar/Sidebar.d.ts +43 -22
  221. package/dist/components/sidebar/Sidebar.d.ts.map +1 -1
  222. package/dist/components/sidebar/Sidebar.js +148 -331
  223. package/dist/components/sidebar/sidebar-config.d.ts +98 -31
  224. package/dist/components/sidebar/sidebar-config.d.ts.map +1 -1
  225. package/dist/components/sidebar/sidebar-config.js +47 -33
  226. package/dist/components/sidebar/sidebar-styles.js +27 -32
  227. package/dist/components/skeleton/Skeleton.d.ts +65 -0
  228. package/dist/components/skeleton/Skeleton.d.ts.map +1 -0
  229. package/dist/components/skeleton/Skeleton.js +29 -0
  230. package/dist/components/skeleton/index.d.ts +3 -0
  231. package/dist/components/skeleton/index.d.ts.map +1 -0
  232. package/dist/components/skeleton/index.js +3 -0
  233. package/dist/components/skeleton/skeleton-config.d.ts +40 -0
  234. package/dist/components/skeleton/skeleton-config.d.ts.map +1 -0
  235. package/dist/components/skeleton/skeleton-config.js +13 -0
  236. package/dist/components/skeleton/skeleton-styles.d.ts +19 -0
  237. package/dist/components/skeleton/skeleton-styles.d.ts.map +1 -0
  238. package/dist/components/skeleton/skeleton-styles.js +5 -0
  239. package/dist/components/spinner/spinner-config.js +12 -13
  240. package/dist/components/spinner/spinner-styles.js +13 -14
  241. package/dist/components/spinner/spinner.js +39 -82
  242. package/dist/components/switch/Switch.d.ts.map +1 -1
  243. package/dist/components/switch/Switch.js +64 -154
  244. package/dist/components/switch/switch-config.js +11 -12
  245. package/dist/components/switch/switch-styles.js +14 -16
  246. package/dist/components/table/Table.js +64 -186
  247. package/dist/components/table/table-config.js +17 -18
  248. package/dist/components/table/table-styles.js +48 -52
  249. package/dist/components/tabs/Tabs.d.ts +16 -8
  250. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  251. package/dist/components/tabs/Tabs.js +93 -208
  252. package/dist/components/tabs/tabs-config.d.ts +42 -20
  253. package/dist/components/tabs/tabs-config.d.ts.map +1 -1
  254. package/dist/components/tabs/tabs-config.js +26 -18
  255. package/dist/components/tabs/tabs-styles.js +15 -17
  256. package/dist/components/textarea/Textarea.d.ts +10 -10
  257. package/dist/components/textarea/Textarea.js +52 -138
  258. package/dist/components/textarea/textarea-config.d.ts +2 -2
  259. package/dist/components/textarea/textarea-config.js +10 -11
  260. package/dist/components/textarea/textarea-styles.js +9 -10
  261. package/dist/components/toast/ToastContext.js +22 -26
  262. package/dist/components/toast/ToastItem.d.ts.map +1 -1
  263. package/dist/components/toast/ToastItem.js +83 -144
  264. package/dist/components/toast/ToastProvider.d.ts.map +1 -1
  265. package/dist/components/toast/ToastProvider.js +128 -190
  266. package/dist/components/toast/toast-config.js +23 -24
  267. package/dist/components/toast/toast-styles.js +50 -55
  268. package/dist/components/toast/use-pausable-timeout.js +17 -13
  269. package/dist/components/tooltip/Tooltip.d.ts +5 -0
  270. package/dist/components/tooltip/Tooltip.d.ts.map +1 -1
  271. package/dist/components/tooltip/Tooltip.js +68 -158
  272. package/dist/components/tooltip/tooltip-config.d.ts +25 -0
  273. package/dist/components/tooltip/tooltip-config.d.ts.map +1 -1
  274. package/dist/components/tooltip/tooltip-config.js +26 -22
  275. package/dist/components/tooltip/tooltip-styles.js +15 -17
  276. package/dist/components/typography/Typography.d.ts +60 -0
  277. package/dist/components/typography/Typography.d.ts.map +1 -0
  278. package/dist/components/typography/Typography.js +28 -0
  279. package/dist/components/typography/index.d.ts +3 -0
  280. package/dist/components/typography/index.d.ts.map +1 -0
  281. package/dist/components/typography/index.js +3 -0
  282. package/dist/components/typography/typography-config.d.ts +54 -0
  283. package/dist/components/typography/typography-config.d.ts.map +1 -0
  284. package/dist/components/typography/typography-config.js +12 -0
  285. package/dist/components/typography/typography-styles.d.ts +21 -0
  286. package/dist/components/typography/typography-styles.d.ts.map +1 -0
  287. package/dist/components/typography/typography-styles.js +19 -0
  288. package/dist/config/default-config.d.ts.map +1 -1
  289. package/dist/config/default-config.js +11 -34
  290. package/dist/config/index.js +1 -0
  291. package/dist/config/resolve-color.js +23 -23
  292. package/dist/config/resolve-config.d.ts.map +1 -1
  293. package/dist/config/resolve-config.js +14 -12
  294. package/dist/config/validate-config.d.ts +34 -0
  295. package/dist/config/validate-config.d.ts.map +1 -0
  296. package/dist/config/validate-config.js +190 -0
  297. package/dist/icons/ArrowLeftIcon.js +16 -19
  298. package/dist/icons/CalendarIcon.js +43 -24
  299. package/dist/icons/CheckIcon.js +16 -19
  300. package/dist/icons/ChevronDownIcon.js +15 -21
  301. package/dist/icons/ChevronLeftIcon.js +16 -19
  302. package/dist/icons/ChevronRightIcon.js +16 -19
  303. package/dist/icons/ChevronUpIcon.js +16 -19
  304. package/dist/icons/ClearIcon.js +26 -22
  305. package/dist/icons/ClockIcon.js +20 -22
  306. package/dist/icons/CloseIcon.js +26 -22
  307. package/dist/icons/ErrorIcon.js +16 -19
  308. package/dist/icons/ExternalLinkIcon.js +25 -23
  309. package/dist/icons/EyeIcon.js +20 -22
  310. package/dist/icons/EyeOffIcon.js +21 -22
  311. package/dist/icons/InfoIcon.js +16 -19
  312. package/dist/icons/SearchIcon.js +25 -22
  313. package/dist/icons/WarningIcon.js +16 -19
  314. package/dist/index.d.ts +15 -17
  315. package/dist/index.d.ts.map +1 -1
  316. package/dist/index.js +79 -163
  317. package/dist/libs/context.js +10 -13
  318. package/dist/libs/index.js +4 -0
  319. package/dist/libs/registry.js +10 -12
  320. package/dist/libs/use-body-scroll-lock.d.ts +21 -0
  321. package/dist/libs/use-body-scroll-lock.d.ts.map +1 -0
  322. package/dist/libs/use-body-scroll-lock.js +27 -0
  323. package/dist/libs/use-dialog-overlay.d.ts +21 -0
  324. package/dist/libs/use-dialog-overlay.d.ts.map +1 -0
  325. package/dist/libs/use-dialog-overlay.js +21 -0
  326. package/dist/libs/use-floating-z-index.d.ts +32 -0
  327. package/dist/libs/use-floating-z-index.d.ts.map +1 -0
  328. package/dist/libs/use-floating-z-index.js +16 -0
  329. package/dist/libs/use-isomorphic-layout-effect.js +5 -5
  330. package/dist/libs/use-prefers-reduced-motion.d.ts +23 -0
  331. package/dist/libs/use-prefers-reduced-motion.d.ts.map +1 -0
  332. package/dist/libs/use-prefers-reduced-motion.js +19 -0
  333. package/dist/scripts/AsheeThemeScript.js +70 -44
  334. package/dist/shared/index.d.ts +1 -0
  335. package/dist/shared/index.d.ts.map +1 -1
  336. package/dist/shared/radius.d.ts.map +1 -1
  337. package/dist/shared/radius.js +12 -13
  338. package/dist/shared/typography.d.ts +81 -0
  339. package/dist/shared/typography.d.ts.map +1 -0
  340. package/dist/shared/typography.js +137 -0
  341. package/dist/shared/variant.js +46 -134
  342. package/dist/theme/color.js +28 -28
  343. package/dist/theme/controller.d.ts.map +1 -1
  344. package/dist/theme/controller.js +65 -178
  345. package/dist/theme/useTheme.js +13 -44
  346. package/dist/utils/cn.js +7 -7
  347. package/dist/utils/index.d.ts +1 -0
  348. package/dist/utils/index.d.ts.map +1 -1
  349. package/dist/utils/index.js +1 -0
  350. package/dist/utils/merge-object.js +13 -14
  351. package/dist/utils/resolve-token.js +11 -14
  352. package/dist/utils/stacking.d.ts +76 -0
  353. package/dist/utils/stacking.d.ts.map +1 -0
  354. package/dist/utils/stacking.js +34 -0
  355. package/package.json +22 -14
  356. package/dist/components/date-picker/Calendar.d.ts.map +0 -1
  357. package/dist/components/date-picker/Calendar.js +0 -224
  358. package/dist/components/date-picker/DatePicker.d.ts.map +0 -1
  359. package/dist/components/date-picker/DatePicker.js +0 -221
  360. package/dist/components/date-picker/TimeSpinner.d.ts.map +0 -1
  361. package/dist/components/date-picker/TimeSpinner.js +0 -84
  362. package/dist/components/date-picker/date-picker-config.d.ts.map +0 -1
  363. package/dist/components/date-picker/date-picker-config.js +0 -16
  364. package/dist/components/date-picker/date-picker-styles.d.ts.map +0 -1
  365. package/dist/components/date-picker/date-picker-styles.js +0 -47
  366. package/dist/components/date-picker/date-picker.helpers.d.ts.map +0 -1
  367. package/dist/components/date-picker/date-picker.helpers.js +0 -110
  368. package/dist/components/date-picker/index.d.ts +0 -3
  369. package/dist/components/date-picker/index.d.ts.map +0 -1
  370. package/dist/components/date-picker/index.js +0 -6
  371. package/dist/components/select/Select.d.ts.map +0 -1
  372. package/dist/components/select/Select.js +0 -196
  373. package/dist/components/select/index.d.ts +0 -3
  374. package/dist/components/select/index.d.ts.map +0 -1
  375. package/dist/components/select/index.js +0 -3
  376. package/dist/components/select/select-config.d.ts.map +0 -1
  377. package/dist/components/select/select-config.js +0 -10
  378. package/dist/components/select/select-styles.d.ts.map +0 -1
  379. package/dist/components/select/select-styles.js +0 -6
  380. package/dist/components/select-menu/SelectMenu.d.ts.map +0 -1
  381. package/dist/components/select-menu/SelectMenu.js +0 -198
  382. package/dist/components/select-menu/index.d.ts +0 -4
  383. package/dist/components/select-menu/index.d.ts.map +0 -1
  384. package/dist/components/select-menu/index.js +0 -3
  385. package/dist/components/select-menu/select-menu-config.d.ts.map +0 -1
  386. package/dist/components/select-menu/select-menu-config.js +0 -14
  387. package/dist/components/select-menu/use-select-floating.d.ts.map +0 -1
  388. package/dist/components/select-menu/use-select-floating.js +0 -50
  389. /package/dist/components/{date-picker → calendar}/TimeSpinner.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/theme/controller.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAa/C;;GAEG;AACH,KAAK,QAAQ,GAAG,MAAM,IAAI,CAAC;AAE3B;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,YAAY,EAAE,cAAc,CAAC;IAE7B;;;;OAIG;IACH,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,cAAM,eAAe;IACnB;;;OAGG;IACH,OAAO,CAAC,SAAS,CAA2B;IAE5C;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAsB;IAEtC;;;OAGG;IACH,OAAO,CAAC,YAAY,CAA2B;IAE/C;;;OAGG;IACH,OAAO,CAAC,eAAe,CAAyB;IAEhD;;OAEG;IACH,OAAO,CAAC,SAAS,CAAuB;IAExC;;;OAGG;IACH,OAAO,CAAC,UAAU,CAA+B;;IASjD;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,gBAAgB,GAAG,IAAI;IAkC3D;;;;;;OAMG;IACH,UAAU,UAAW,cAAc,KAAG,IAAI,CAExC;IAEF;;;OAGG;IACH,YAAY,QAAO,cAAc,CAAmB;IAEpD;;;;;OAKG;IACH,gBAAgB,QAAO,SAAS,CAAkB;IAElD;;;;OAIG;IACH,QAAQ,cAAe,cAAc,KAAG,IAAI,CAS1C;IAEF;;;;;OAKG;IACH,SAAS,aAAc,QAAQ,KAAG,CAAC,MAAM,IAAI,CAAC,CAG5C;IAEF;;;OAGG;IACH,kBAAkB,QAAO,SAAS,MAAM,EAAE,CAAyB;IAEnE;;;;;OAKG;IACH,WAAW,QAAO,IAAI,CAWpB;IAEF;;;;OAIG;IACH,OAAO,CAAC,kBAAkB,CAMxB;IAEF;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAKhB;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO;IAOf;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAKf;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;CA+BvB;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/theme/controller.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAa/C;;GAEG;AACH,KAAK,QAAQ,GAAG,MAAM,IAAI,CAAC;AAE3B;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,YAAY,EAAE,cAAc,CAAC;IAE7B;;;;OAIG;IACH,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,cAAM,eAAe;IACnB;;;OAGG;IACH,OAAO,CAAC,SAAS,CAA2B;IAE5C;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAsB;IAEtC;;;OAGG;IACH,OAAO,CAAC,YAAY,CAA2B;IAE/C;;;OAGG;IACH,OAAO,CAAC,eAAe,CAAyB;IAEhD;;OAEG;IACH,OAAO,CAAC,SAAS,CAAuB;IAExC;;;OAGG;IACH,OAAO,CAAC,UAAU,CAA+B;;IASjD;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,gBAAgB,GAAG,IAAI;IAkC3D;;;;;;OAMG;IACH,UAAU,GAAI,OAAO,cAAc,KAAG,IAAI,CAExC;IAEF;;;OAGG;IACH,YAAY,QAAO,cAAc,CAAmB;IAEpD;;;;;OAKG;IACH,gBAAgB,QAAO,SAAS,CAAkB;IAElD;;;;OAIG;IACH,QAAQ,GAAI,WAAW,cAAc,KAAG,IAAI,CAS1C;IAEF;;;;;OAKG;IACH,SAAS,GAAI,UAAU,QAAQ,KAAG,CAAC,MAAM,IAAI,CAAC,CAG5C;IAEF;;;OAGG;IACH,kBAAkB,QAAO,SAAS,MAAM,EAAE,CAAyB;IAEnE;;;;;OAKG;IACH,WAAW,QAAO,IAAI,CAWpB;IAEF;;;;OAIG;IACH,OAAO,CAAC,kBAAkB,CAMxB;IAEF;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAKhB;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO;IAOf;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAKf;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;CA+BvB;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
@@ -1,179 +1,66 @@
1
1
  "use client";
2
- var r = Object.defineProperty;
3
- var d = (n, e, t) => e in n ? r(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t;
4
- var s = (n, e, t) => d(n, typeof e != "symbol" ? e + "" : e, t);
5
- const o = "ashee-theme", c = "(prefers-color-scheme: dark)", h = "theme-";
6
- class m {
7
- constructor() {
8
- /**
9
- * The user's selected theme preference, which may be "system"
10
- * or a specific theme name.
11
- */
12
- s(this, "selection", "light");
13
- /**
14
- * The final resolved theme name after applying the selection
15
- * and resolving "system" to either "light" or "dark".
16
- */
17
- s(this, "resolved", "light");
18
- /**
19
- * The default theme configured when the controller was initialized.
20
- * Used as a fallback when the stored preference is invalid.
21
- */
22
- s(this, "defaultTheme", "light");
23
- /**
24
- * The list of available themes in the application.
25
- * Used for validation and cycling through themes.
26
- */
27
- s(this, "availableThemes", []);
28
- /**
29
- * Set of listener functions that are called when the theme changes.
30
- */
31
- s(this, "listeners", /* @__PURE__ */ new Set());
32
- /**
33
- * MediaQueryList for detecting system dark mode preference.
34
- * Null when running in a non-browser environment.
35
- */
36
- s(this, "mediaQuery", null);
37
- /**
38
- * Seeds the default theme. Kept for backward compatibility - prefer
39
- * `configure()`, which also validates the stored selection against the
40
- * available theme map.
41
- *
42
- * @deprecated Use `configure()` instead for complete initialization.
43
- */
44
- s(this, "setDefault", (e) => {
45
- this.configure({ defaultTheme: e, themes: this.availableThemes });
46
- });
47
- /**
48
- * Returns the current theme selection.
49
- * @returns The current selected theme, which may be "system" or a specific theme name.
50
- */
51
- s(this, "getSelection", () => this.selection);
52
- /**
53
- * Returns the resolved theme name after applying the selection.
54
- * If the selection is "system", this will resolve to either "light" or "dark"
55
- * based on the system preference.
56
- * @returns The resolved theme name.
57
- */
58
- s(this, "getResolvedTheme", () => this.resolved);
59
- /**
60
- * Sets the theme selection and persists it to localStorage.
61
- * The provided selection is validated and sanitized before applying.
62
- * @param selection - The theme to select, either "system" or a theme name.
63
- */
64
- s(this, "setTheme", (e) => {
65
- const t = this.sanitize(e);
66
- this.selection = t, typeof window < "u" && window.localStorage.setItem(o, t), this.applySelection(), this.listeners.forEach((i) => {
67
- i();
68
- });
69
- });
70
- /**
71
- * Subscribes a listener to theme changes.
72
- * The listener will be called whenever the theme selection or resolved theme changes.
73
- * @param listener - The function to call when the theme changes.
74
- * @returns An unsubscribe function that removes the listener.
75
- */
76
- s(this, "subscribe", (e) => (this.listeners.add(e), () => this.listeners.delete(e)));
77
- /**
78
- * Returns the list of available theme names.
79
- * @returns The list of available themes configured in the controller.
80
- */
81
- s(this, "getAvailableThemes", () => this.availableThemes);
82
- /**
83
- * Cycles to the next theme in sequence (including "system" mode by default).
84
- * Loops back to the start when reaching the end of the available themes list.
85
- * The "system" option is not included in the toggle sequence; only specific
86
- * theme names are cycled through.
87
- */
88
- s(this, "toggleTheme", () => {
89
- const e = Array.from(new Set(this.availableThemes)).filter(
90
- (l) => l !== "system"
91
- ), t = e.indexOf(this.selection), i = t === -1 ? 0 : (t + 1) % e.length;
92
- this.setTheme(e[i]);
93
- });
94
- /**
95
- * Handles system dark mode preference changes.
96
- * Only re-applies the theme if the current selection is "system",
97
- * ensuring the resolved theme stays in sync with system changes.
98
- */
99
- s(this, "handleSystemChange", () => {
100
- this.selection === "system" && (this.applySelection(), this.listeners.forEach((e) => {
101
- e();
102
- }));
103
- });
104
- typeof window > "u" || (this.mediaQuery = window.matchMedia(c), this.mediaQuery.addEventListener("change", this.handleSystemChange));
105
- }
106
- /**
107
- * Seeds the controller with the resolved theme config and applies the theme.
108
- *
109
- * - Uses `localStorage["ashee-theme"]` when it holds a valid selection.
110
- * - Falls back to `config.theme.defaultTheme` on first visit.
111
- * - Clears stale/invalid values from storage.
112
- * - Never writes to storage (only `setTheme` persists user intent).
113
- */
114
- configure({ defaultTheme: e, themes: t }) {
115
- if (this.defaultTheme = e, this.availableThemes = t, typeof window > "u") {
116
- console.log(
117
- "[Theme] Running in non-browser environment, skipping localStorage operations."
118
- );
119
- return;
120
- }
121
- const i = window.localStorage.getItem(o), l = i !== null && this.isValid(i);
122
- l || i !== null && (console.log(
123
- "[Theme] Invalid stored theme, removing from localStorage."
124
- ), window.localStorage.removeItem(o)), this.selection = l ? i : e, this.applySelection(), this.listeners.forEach((a) => {
125
- a();
126
- });
127
- }
128
- /**
129
- * Validates a theme selection and returns a valid fallback if necessary.
130
- * @param selection - The theme selection to sanitize.
131
- * @returns A valid theme selection, falling back to the default theme
132
- * if the provided selection is invalid.
133
- */
134
- sanitize(e) {
135
- return this.isValid(e) ? e : this.defaultTheme;
136
- }
137
- /**
138
- * Checks whether a theme selection is valid.
139
- * "system" is always valid. Other theme names are valid if they exist
140
- * in the available themes list. If no available themes are configured,
141
- * any selection is considered valid.
142
- * @param selection - The theme selection to validate.
143
- * @returns True if the selection is valid, false otherwise.
144
- */
145
- isValid(e) {
146
- return e === "system" ? !0 : this.availableThemes.length > 0 ? this.availableThemes.includes(e) : !0;
147
- }
148
- /**
149
- * Resolves a theme selection to an actual theme name.
150
- * If the selection is "system", resolves based on the system preference.
151
- * @param selection - The theme selection to resolve.
152
- * @returns The resolved theme name.
153
- */
154
- resolve(e) {
155
- var t;
156
- return e !== "system" ? e : (t = this.mediaQuery) != null && t.matches ? "dark" : "light";
157
- }
158
- /**
159
- * Applies the current theme selection by updating the DOM.
160
- * This method sanitizes the selection, resolves it to a theme name,
161
- * and applies the appropriate CSS class to the document root.
162
- * It ensures that only valid theme classes are applied and removes
163
- * any previously applied theme classes.
164
- */
165
- applySelection() {
166
- const e = this.sanitize(this.selection);
167
- let t = this.resolve(e);
168
- if (this.availableThemes.length > 0 && !this.availableThemes.includes(t) && (t = this.availableThemes.includes(this.defaultTheme) ? this.defaultTheme : this.availableThemes[0]), this.resolved = t, typeof document > "u") return;
169
- const i = document.documentElement, l = `${h}${t}`;
170
- for (const a of Array.from(i.classList))
171
- a.startsWith(h) && i.classList.remove(a);
172
- i.classList.add(l);
173
- }
174
- }
175
- const f = new m();
176
- export {
177
- o as THEME_STORAGE_KEY,
178
- f as themeController
179
- };
2
+ //#region src/theme/controller.ts
3
+ var e = "ashee-theme", t = "theme-", n = new class {
4
+ selection = "light";
5
+ resolved = "light";
6
+ defaultTheme = "light";
7
+ availableThemes = [];
8
+ listeners = /* @__PURE__ */ new Set();
9
+ mediaQuery = null;
10
+ constructor() {
11
+ typeof window > "u" || (this.mediaQuery = window.matchMedia("(prefers-color-scheme: dark)"), this.mediaQuery.addEventListener("change", this.handleSystemChange));
12
+ }
13
+ configure({ defaultTheme: t, themes: n }) {
14
+ if (this.defaultTheme = t, this.availableThemes = n, typeof window > "u") {
15
+ console.log("[Theme] Running in non-browser environment, skipping localStorage operations.");
16
+ return;
17
+ }
18
+ let r = window.localStorage.getItem(e), i = r !== null && this.isValid(r);
19
+ i || r !== null && (console.log("[Theme] Invalid stored theme, removing from localStorage."), window.localStorage.removeItem(e)), this.selection = i ? r : t, this.applySelection(), this.listeners.forEach((e) => {
20
+ e();
21
+ });
22
+ }
23
+ setDefault = (e) => {
24
+ this.configure({
25
+ defaultTheme: e,
26
+ themes: this.availableThemes
27
+ });
28
+ };
29
+ getSelection = () => this.selection;
30
+ getResolvedTheme = () => this.resolved;
31
+ setTheme = (t) => {
32
+ let n = this.sanitize(t);
33
+ this.selection = n, typeof window < "u" && window.localStorage.setItem(e, n), this.applySelection(), this.listeners.forEach((e) => {
34
+ e();
35
+ });
36
+ };
37
+ subscribe = (e) => (this.listeners.add(e), () => this.listeners.delete(e));
38
+ getAvailableThemes = () => this.availableThemes;
39
+ toggleTheme = () => {
40
+ let e = Array.from(new Set(this.availableThemes)).filter((e) => e !== "system"), t = e.indexOf(this.selection), n = t === -1 ? 0 : (t + 1) % e.length;
41
+ this.setTheme(e[n]);
42
+ };
43
+ handleSystemChange = () => {
44
+ this.selection === "system" && (this.applySelection(), this.listeners.forEach((e) => {
45
+ e();
46
+ }));
47
+ };
48
+ sanitize(e) {
49
+ return this.isValid(e) ? e : this.defaultTheme;
50
+ }
51
+ isValid(e) {
52
+ return e === "system" ? !0 : this.availableThemes.length > 0 ? this.availableThemes.includes(e) : !0;
53
+ }
54
+ resolve(e) {
55
+ return e === "system" ? this.mediaQuery?.matches ? "dark" : "light" : e;
56
+ }
57
+ applySelection() {
58
+ let e = this.sanitize(this.selection), n = this.resolve(e);
59
+ if (this.availableThemes.length > 0 && !this.availableThemes.includes(n) && (n = this.availableThemes.includes(this.defaultTheme) ? this.defaultTheme : this.availableThemes[0]), this.resolved = n, typeof document > "u") return;
60
+ let r = document.documentElement, i = `${t}${n}`;
61
+ for (let e of Array.from(r.classList)) e.startsWith(t) && r.classList.remove(e);
62
+ r.classList.add(i);
63
+ }
64
+ }();
65
+ //#endregion
66
+ export { e as THEME_STORAGE_KEY, n as themeController };
@@ -1,47 +1,16 @@
1
1
  "use client";
2
- import { useSyncExternalStore as t } from "react";
2
+ "use client";
3
3
  import { themeController as e } from "./controller.js";
4
- function r() {
5
- const o = t(
6
- e.subscribe,
7
- e.getSelection,
8
- () => "light"
9
- ), l = t(
10
- e.subscribe,
11
- e.getResolvedTheme,
12
- () => "light"
13
- );
14
- return {
15
- /**
16
- * The user's current theme selection.
17
- * This can be either a specific theme name or "system".
18
- */
19
- theme: o,
20
- /**
21
- * The resolved theme name after applying the selection.
22
- * If the selection is "system", this resolves to either "light" or "dark"
23
- * based on the system preference.
24
- */
25
- resolvedTheme: l,
26
- /**
27
- * Function to set the theme selection.
28
- * This persists the selection to localStorage and applies the theme.
29
- * @param selection - The theme to select, either "system" or a theme name.
30
- */
31
- setTheme: e.setTheme,
32
- /**
33
- * Function to cycle to the next available theme.
34
- * This cycles through all available theme names, excluding "system".
35
- * Loops back to the start when reaching the end of the list.
36
- */
37
- toggleTheme: e.toggleTheme,
38
- /**
39
- * The list of available theme names in the application.
40
- * This does not include "system" as it is not a theme name.
41
- */
42
- availableThemes: e.getAvailableThemes()
43
- };
4
+ import { useSyncExternalStore as t } from "react";
5
+ //#region src/theme/useTheme.ts
6
+ function n() {
7
+ return {
8
+ theme: t(e.subscribe, e.getSelection, () => "light"),
9
+ resolvedTheme: t(e.subscribe, e.getResolvedTheme, () => "light"),
10
+ setTheme: e.setTheme,
11
+ toggleTheme: e.toggleTheme,
12
+ availableThemes: e.getAvailableThemes()
13
+ };
44
14
  }
45
- export {
46
- r as useTheme
47
- };
15
+ //#endregion
16
+ export { n as useTheme };
package/dist/utils/cn.js CHANGED
@@ -1,9 +1,9 @@
1
1
  "use client";
2
- import { clsx as t } from "clsx";
3
- import { twMerge as e } from "tailwind-merge";
4
- function c(...r) {
5
- return e(t(r));
2
+ import { clsx as e } from "clsx";
3
+ import { twMerge as t } from "tailwind-merge";
4
+ //#region src/utils/cn.ts
5
+ function n(...n) {
6
+ return t(e(n));
6
7
  }
7
- export {
8
- c as cn
9
- };
8
+ //#endregion
9
+ export { n as cn };
@@ -1,4 +1,5 @@
1
1
  export { cn } from './cn';
2
2
  export { mergeObject } from './merge-object';
3
+ export { ASHEE_GLOBAL_LAYER, ASHEE_LAYER, establishesStackingContext, resolveBaseZIndex, resolveFloatingZIndex, } from './stacking';
3
4
  export type { DeepPartial } from './types';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,0BAA0B,EAC1B,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from "./cn.js";
2
2
  export * from "./merge-object.js";
3
3
  export * from "./resolve-token.js";
4
+ export * from "./stacking.js";
@@ -1,17 +1,16 @@
1
1
  "use client";
2
- function u(e) {
3
- return typeof e == "object" && e !== null && !Array.isArray(e);
2
+ //#region src/utils/merge-object.ts
3
+ function e(e) {
4
+ return typeof e == "object" && !!e && !Array.isArray(e);
4
5
  }
5
- function l(e, n) {
6
- if (!n)
7
- return e;
8
- const o = { ...e }, s = e, i = n;
9
- for (const t of Object.keys(n)) {
10
- const c = i[t], r = s[t];
11
- c !== void 0 && (u(r) && u(c) ? o[t] = l(r, c) : o[t] = c);
12
- }
13
- return o;
6
+ function t(n, r) {
7
+ if (!r) return n;
8
+ let i = { ...n }, a = n, o = r;
9
+ for (let n of Object.keys(r)) {
10
+ let r = o[n], s = a[n];
11
+ r !== void 0 && (i[n] = e(s) && e(r) ? t(s, r) : r);
12
+ }
13
+ return i;
14
14
  }
15
- export {
16
- l as mergeObject
17
- };
15
+ //#endregion
16
+ export { t as mergeObject };
@@ -1,19 +1,16 @@
1
1
  "use client";
2
- function u(n, e, r, t) {
3
- return n ?? e ?? r ?? t;
2
+ //#region src/utils/resolve-token.ts
3
+ function e(e, t, n, r) {
4
+ return e ?? t ?? n ?? r;
4
5
  }
5
- function o(n, e, r) {
6
- return n ?? e ?? r;
6
+ function t(e, t, n) {
7
+ return e ?? t ?? n;
7
8
  }
8
- function i(n, e, r, t = "md") {
9
- return n ?? e ?? r ?? t;
9
+ function n(e, t, n, r = "md") {
10
+ return e ?? t ?? n ?? r;
10
11
  }
11
- function s(n, e, r) {
12
- return e[n] ?? e[r] ?? "";
12
+ function r(e, t, n) {
13
+ return t[e] ?? t[n] ?? "";
13
14
  }
14
- export {
15
- o as resolveAnimate,
16
- u as resolveCascade,
17
- s as resolveClassKey,
18
- i as resolveRadiusKey
19
- };
15
+ //#endregion
16
+ export { t as resolveAnimate, e as resolveCascade, r as resolveClassKey, n as resolveRadiusKey };
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Stacking-context utilities for AsheeUI floating elements.
3
+ * This file provides the layering standard used by every floating component.
4
+ *
5
+ * Floating elements are portaled to `document.body`, which places them in the
6
+ * root stacking context, so their `z-index` competes with app-level chrome
7
+ * such as custom navbars. To layer correctly against both AsheeUI's own
8
+ * components and arbitrary client components, a floating element derives its
9
+ * `z-index` from the trigger's own stacking context:
10
+ *
11
+ * floating z-index = outermost stacking context z-index of the trigger
12
+ * + the component's layer delta
13
+ *
14
+ * The delta only orders AsheeUI's internal layers relative to each other
15
+ * (dropdown < popover < tooltip). All elevation is carried by the derived
16
+ * base, so an anchored popup stays above its own container (for example a
17
+ * navbar) without ever outranking unrelated app chrome.
18
+ */
19
+ /**
20
+ * Layer deltas for anchored floating elements (elements bound to a trigger).
21
+ * Deltas are intentionally small integers so an anchored popup can never
22
+ * leapfrog unrelated app chrome such as a high `z-index` navbar.
23
+ */
24
+ export declare const ASHEE_LAYER: {
25
+ /** Dropmenu, MultiSelect, Autocomplete, and the shared Menu. */
26
+ readonly dropdown: 10;
27
+ /** Calendar and other floating panels. */
28
+ readonly popover: 20;
29
+ /** Tooltips. */
30
+ readonly tooltip: 30;
31
+ };
32
+ /**
33
+ * Fixed rungs for app-level overlays, which are not anchored to a trigger and
34
+ * should sit above page chrome.
35
+ */
36
+ export declare const ASHEE_GLOBAL_LAYER: {
37
+ /** Modal and Drawer. */
38
+ readonly overlay: 1000;
39
+ /** Docked surfaces such as the on-screen keyboard. */
40
+ readonly docked: 1500;
41
+ /** Toasts. */
42
+ readonly toast: 2000;
43
+ };
44
+ /**
45
+ * Determines whether an element establishes a stacking context, using the
46
+ * conditions documented for CSS stacking contexts.
47
+ *
48
+ * @param element - The element to test.
49
+ * @param computed - Optional precomputed style for the element.
50
+ * @returns True when the element creates a stacking context.
51
+ */
52
+ export declare function establishesStackingContext(element: Element, computed?: CSSStyleDeclaration): boolean;
53
+ /**
54
+ * Resolves the `z-index` of the outermost stacking context that contains the
55
+ * reference element — the context that governs where the reference's subtree
56
+ * sits in the root stacking order.
57
+ *
58
+ * Walking outward matters: stacking contexts are atomic in their parent, so
59
+ * only the outermost context ancestor decides the subtree's position.
60
+ *
61
+ * @param reference - The trigger element.
62
+ * @returns The context's `z-index`, or 0 when the reference lives in the
63
+ * plain root flow.
64
+ */
65
+ export declare function resolveBaseZIndex(reference: Element | null | undefined): number;
66
+ /**
67
+ * Resolves the `z-index` a portaled floating element should use so it renders
68
+ * above its trigger's stacking context without outranking unrelated app
69
+ * chrome.
70
+ *
71
+ * @param reference - The trigger element.
72
+ * @param layerDelta - The component's layer delta from `ASHEE_LAYER`.
73
+ * @returns The derived `z-index`.
74
+ */
75
+ export declare function resolveFloatingZIndex(reference: Element | null | undefined, layerDelta: number): number;
76
+ //# sourceMappingURL=stacking.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stacking.d.ts","sourceRoot":"","sources":["../../src/utils/stacking.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,WAAW;IACtB,gEAAgE;;IAEhE,0CAA0C;;IAE1C,gBAAgB;;CAER,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,kBAAkB;IAC7B,wBAAwB;;IAExB,sDAAsD;;IAEtD,cAAc;;CAEN,CAAC;AAiBX;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,QAAQ,GAAE,mBAAsD,GAC/D,OAAO,CAmCT;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GACpC,MAAM,CAwBR;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACrC,UAAU,EAAE,MAAM,GACjB,MAAM,CAER"}
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ //#region src/utils/stacking.ts
3
+ var e = {
4
+ dropdown: 10,
5
+ popover: 20,
6
+ tooltip: 30
7
+ }, t = {
8
+ overlay: 1e3,
9
+ docked: 1500,
10
+ toast: 2e3
11
+ };
12
+ function n(e) {
13
+ if (e.parentElement) return e.parentElement;
14
+ let t = e.getRootNode();
15
+ return t instanceof ShadowRoot ? t.host : null;
16
+ }
17
+ function r(e, t = window.getComputedStyle(e)) {
18
+ return !!(t.position === "fixed" || t.position === "sticky" || (t.position === "absolute" || t.position === "relative") && t.zIndex !== "auto" || t.opacity !== "1" || t.transform !== "none" || t.filter !== "none" || t.getPropertyValue("backdrop-filter") !== "none" || t.getPropertyValue("perspective") !== "none" || t.getPropertyValue("clip-path") !== "none" || t.getPropertyValue("mix-blend-mode") !== "normal" || t.getPropertyValue("isolation") === "isolate" || /transform|opacity|filter/.test(t.getPropertyValue("will-change")) || /layout|paint|strict|content/.test(t.getPropertyValue("contain")));
19
+ }
20
+ function i(e) {
21
+ if (typeof window > "u" || !e) return 0;
22
+ let t = 0, i = n(e);
23
+ for (; i && i !== document.body && i !== document.documentElement;) {
24
+ let e = window.getComputedStyle(i);
25
+ if (r(i, e)) {
26
+ let n = Number.parseInt(e.zIndex, 10);
27
+ t = Number.isNaN(n) ? 0 : n;
28
+ }
29
+ i = n(i);
30
+ }
31
+ return Math.max(t, 0);
32
+ }
33
+ //#endregion
34
+ export { t as ASHEE_GLOBAL_LAYER, e as ASHEE_LAYER, r as establishesStackingContext, i as resolveBaseZIndex };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "asheeui",
3
- "version": "0.6.15",
3
+ "version": "1.0.0",
4
4
  "description": "Accessible and customizable React primitives engineered with Tailwind CSS.",
5
5
  "author": "Ashee Softworks <asheesoftworks@gmail.com>",
6
6
  "homepage": "https://asheeui.com",
@@ -49,7 +49,8 @@
49
49
  "dist"
50
50
  ],
51
51
  "sideEffects": [
52
- "*.css"
52
+ "*.css",
53
+ "**/*-config*"
53
54
  ],
54
55
  "dependencies": {
55
56
  "@floating-ui/react": "^0.27.20",
@@ -63,21 +64,28 @@
63
64
  },
64
65
  "devDependencies": {
65
66
  "@floating-ui/react": "^0.27.20",
66
- "@types/node": "^26.1.2",
67
- "@types/react": "^19.0.0",
68
- "@types/react-dom": "^19.0.0",
69
- "@vitejs/plugin-react": "^4.0.0",
70
- "react": "^19.0.0",
71
- "react-dom": "^19.0.0",
72
- "tsx": "^4.23.12",
73
- "typescript": "^5.0.0",
74
- "vite": "^6.0.0",
75
- "vite-plugin-dts": "^4.0.0"
67
+ "@testing-library/jest-dom": "^7.0.1",
68
+ "@testing-library/react": "^16.3.3",
69
+ "@testing-library/user-event": "^14.6.7",
70
+ "@types/node": "^26.5.0",
71
+ "@types/react": "^19.3.0",
72
+ "@types/react-dom": "^19.3.0",
73
+ "@typescript/typescript6": "^6.0.2",
74
+ "@vitejs/plugin-react": "^6.1.1",
75
+ "jsdom": "^30.0.1",
76
+ "react": "^19.3.0",
77
+ "react-dom": "^19.3.0",
78
+ "tsx": "^4.23.13",
79
+ "typescript": "^7.0.2",
80
+ "vite": "^8.3.0",
81
+ "vite-plugin-dts": "^5.1.0",
82
+ "vitest": "^5.0.0"
76
83
  },
77
84
  "module": "./dist/index.js",
78
85
  "license": "MIT",
79
86
  "scripts": {
80
- "build:registry": "tsx src/scripts/build-registry.ts",
81
- "build": "vite build"
87
+ "build": "vite build",
88
+ "test": "vitest run",
89
+ "test:watch": "vitest"
82
90
  }
83
91
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../../src/components/date-picker/Calendar.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AASvD,UAAU,aAAa;IACrB;;;OAGG;IACH,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC;;;OAGG;IACH,IAAI,EAAE,UAAU,CAAC;IACjB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,eAAe,EAAE,YAAY,CAAC;IAC9B;;;OAGG;IACH,aAAa,EAAE,KAAK,CAAC;IACrB;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACtC;;;OAGG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,qDA0QnB,CAAC"}