@sewadah/selaras 0.1.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 (500) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +131 -0
  3. package/dist/module.d.mts +22 -0
  4. package/dist/module.json +9 -0
  5. package/dist/module.mjs +127 -0
  6. package/dist/runtime/components/Accordion.d.vue.ts +59 -0
  7. package/dist/runtime/components/Accordion.vue +65 -0
  8. package/dist/runtime/components/Accordion.vue.d.ts +59 -0
  9. package/dist/runtime/components/Alert.d.vue.ts +39 -0
  10. package/dist/runtime/components/Alert.vue +64 -0
  11. package/dist/runtime/components/Alert.vue.d.ts +39 -0
  12. package/dist/runtime/components/AlertDialog.d.vue.ts +66 -0
  13. package/dist/runtime/components/AlertDialog.vue +116 -0
  14. package/dist/runtime/components/AlertDialog.vue.d.ts +66 -0
  15. package/dist/runtime/components/App.d.vue.ts +32 -0
  16. package/dist/runtime/components/App.vue +26 -0
  17. package/dist/runtime/components/App.vue.d.ts +32 -0
  18. package/dist/runtime/components/Autocomplete.d.vue.ts +61 -0
  19. package/dist/runtime/components/Autocomplete.vue +41 -0
  20. package/dist/runtime/components/Autocomplete.vue.d.ts +61 -0
  21. package/dist/runtime/components/Avatar.d.vue.ts +46 -0
  22. package/dist/runtime/components/Avatar.vue +64 -0
  23. package/dist/runtime/components/Avatar.vue.d.ts +46 -0
  24. package/dist/runtime/components/AvatarGroup.d.vue.ts +14 -0
  25. package/dist/runtime/components/AvatarGroup.vue +41 -0
  26. package/dist/runtime/components/AvatarGroup.vue.d.ts +14 -0
  27. package/dist/runtime/components/Badge.d.vue.ts +37 -0
  28. package/dist/runtime/components/Badge.vue +47 -0
  29. package/dist/runtime/components/Badge.vue.d.ts +37 -0
  30. package/dist/runtime/components/Breadcrumb.d.vue.ts +37 -0
  31. package/dist/runtime/components/Breadcrumb.vue +109 -0
  32. package/dist/runtime/components/Breadcrumb.vue.d.ts +37 -0
  33. package/dist/runtime/components/Button.d.vue.ts +45 -0
  34. package/dist/runtime/components/Button.vue +67 -0
  35. package/dist/runtime/components/Button.vue.d.ts +45 -0
  36. package/dist/runtime/components/ButtonGroup.d.vue.ts +22 -0
  37. package/dist/runtime/components/ButtonGroup.vue +21 -0
  38. package/dist/runtime/components/ButtonGroup.vue.d.ts +22 -0
  39. package/dist/runtime/components/Callout.d.vue.ts +27 -0
  40. package/dist/runtime/components/Callout.vue +47 -0
  41. package/dist/runtime/components/Callout.vue.d.ts +27 -0
  42. package/dist/runtime/components/Card.d.vue.ts +25 -0
  43. package/dist/runtime/components/Card.vue +30 -0
  44. package/dist/runtime/components/Card.vue.d.ts +25 -0
  45. package/dist/runtime/components/CardGroup.d.vue.ts +23 -0
  46. package/dist/runtime/components/CardGroup.vue +19 -0
  47. package/dist/runtime/components/CardGroup.vue.d.ts +23 -0
  48. package/dist/runtime/components/Checkbox.d.vue.ts +45 -0
  49. package/dist/runtime/components/Checkbox.vue +76 -0
  50. package/dist/runtime/components/Checkbox.vue.d.ts +45 -0
  51. package/dist/runtime/components/Chip.d.vue.ts +50 -0
  52. package/dist/runtime/components/Chip.vue +75 -0
  53. package/dist/runtime/components/Chip.vue.d.ts +50 -0
  54. package/dist/runtime/components/CodeButton.d.vue.ts +21 -0
  55. package/dist/runtime/components/CodeButton.vue +33 -0
  56. package/dist/runtime/components/CodeButton.vue.d.ts +21 -0
  57. package/dist/runtime/components/CodeGroup.d.vue.ts +3 -0
  58. package/dist/runtime/components/CodeGroup.vue +46 -0
  59. package/dist/runtime/components/CodeGroup.vue.d.ts +3 -0
  60. package/dist/runtime/components/CodeTree.d.vue.ts +17 -0
  61. package/dist/runtime/components/CodeTree.vue +56 -0
  62. package/dist/runtime/components/CodeTree.vue.d.ts +17 -0
  63. package/dist/runtime/components/Collapsible.d.vue.ts +44 -0
  64. package/dist/runtime/components/Collapsible.vue +52 -0
  65. package/dist/runtime/components/Collapsible.vue.d.ts +44 -0
  66. package/dist/runtime/components/ColorModeToggle.d.vue.ts +3 -0
  67. package/dist/runtime/components/ColorModeToggle.vue +24 -0
  68. package/dist/runtime/components/ColorModeToggle.vue.d.ts +3 -0
  69. package/dist/runtime/components/ColorPicker.d.vue.ts +30 -0
  70. package/dist/runtime/components/ColorPicker.vue +112 -0
  71. package/dist/runtime/components/ColorPicker.vue.d.ts +30 -0
  72. package/dist/runtime/components/Column.d.ts +72 -0
  73. package/dist/runtime/components/Column.js +34 -0
  74. package/dist/runtime/components/ColumnGroup.d.ts +33 -0
  75. package/dist/runtime/components/ColumnGroup.js +17 -0
  76. package/dist/runtime/components/CommandPalette.d.vue.ts +41 -0
  77. package/dist/runtime/components/CommandPalette.vue +208 -0
  78. package/dist/runtime/components/CommandPalette.vue.d.ts +41 -0
  79. package/dist/runtime/components/Container.d.vue.ts +22 -0
  80. package/dist/runtime/components/Container.vue +21 -0
  81. package/dist/runtime/components/Container.vue.d.ts +22 -0
  82. package/dist/runtime/components/ContentNavigation.d.vue.ts +31 -0
  83. package/dist/runtime/components/ContentNavigation.vue +64 -0
  84. package/dist/runtime/components/ContentNavigation.vue.d.ts +31 -0
  85. package/dist/runtime/components/ContentSurround.d.vue.ts +16 -0
  86. package/dist/runtime/components/ContentSurround.vue +46 -0
  87. package/dist/runtime/components/ContentSurround.vue.d.ts +16 -0
  88. package/dist/runtime/components/ContentToc.d.vue.ts +35 -0
  89. package/dist/runtime/components/ContentToc.vue +265 -0
  90. package/dist/runtime/components/ContentToc.vue.d.ts +35 -0
  91. package/dist/runtime/components/ContextMenu.d.vue.ts +33 -0
  92. package/dist/runtime/components/ContextMenu.vue +49 -0
  93. package/dist/runtime/components/ContextMenu.vue.d.ts +33 -0
  94. package/dist/runtime/components/DashboardGroup.d.vue.ts +24 -0
  95. package/dist/runtime/components/DashboardGroup.vue +52 -0
  96. package/dist/runtime/components/DashboardGroup.vue.d.ts +24 -0
  97. package/dist/runtime/components/DashboardNavbar.d.vue.ts +23 -0
  98. package/dist/runtime/components/DashboardNavbar.vue +33 -0
  99. package/dist/runtime/components/DashboardNavbar.vue.d.ts +23 -0
  100. package/dist/runtime/components/DashboardPanel.d.vue.ts +22 -0
  101. package/dist/runtime/components/DashboardPanel.vue +26 -0
  102. package/dist/runtime/components/DashboardPanel.vue.d.ts +22 -0
  103. package/dist/runtime/components/DashboardResizeHandle.d.vue.ts +8 -0
  104. package/dist/runtime/components/DashboardResizeHandle.vue +19 -0
  105. package/dist/runtime/components/DashboardResizeHandle.vue.d.ts +8 -0
  106. package/dist/runtime/components/DashboardSidebar.d.vue.ts +40 -0
  107. package/dist/runtime/components/DashboardSidebar.vue +117 -0
  108. package/dist/runtime/components/DashboardSidebar.vue.d.ts +40 -0
  109. package/dist/runtime/components/DashboardSidebarToggle.d.vue.ts +21 -0
  110. package/dist/runtime/components/DashboardSidebarToggle.vue +42 -0
  111. package/dist/runtime/components/DashboardSidebarToggle.vue.d.ts +21 -0
  112. package/dist/runtime/components/DatePicker.d.vue.ts +165 -0
  113. package/dist/runtime/components/DatePicker.vue +796 -0
  114. package/dist/runtime/components/DatePicker.vue.d.ts +165 -0
  115. package/dist/runtime/components/Drawer.d.vue.ts +74 -0
  116. package/dist/runtime/components/Drawer.vue +157 -0
  117. package/dist/runtime/components/Drawer.vue.d.ts +74 -0
  118. package/dist/runtime/components/DrawerRenderer.d.vue.ts +3 -0
  119. package/dist/runtime/components/DrawerRenderer.vue +30 -0
  120. package/dist/runtime/components/DrawerRenderer.vue.d.ts +3 -0
  121. package/dist/runtime/components/Dropdown.d.vue.ts +35 -0
  122. package/dist/runtime/components/Dropdown.vue +51 -0
  123. package/dist/runtime/components/Dropdown.vue.d.ts +35 -0
  124. package/dist/runtime/components/FileTree.d.vue.ts +28 -0
  125. package/dist/runtime/components/FileTree.vue +68 -0
  126. package/dist/runtime/components/FileTree.vue.d.ts +28 -0
  127. package/dist/runtime/components/FileUpload.d.vue.ts +68 -0
  128. package/dist/runtime/components/FileUpload.vue +226 -0
  129. package/dist/runtime/components/FileUpload.vue.d.ts +68 -0
  130. package/dist/runtime/components/FormField.d.vue.ts +37 -0
  131. package/dist/runtime/components/FormField.vue +72 -0
  132. package/dist/runtime/components/FormField.vue.d.ts +37 -0
  133. package/dist/runtime/components/Header.d.vue.ts +20 -0
  134. package/dist/runtime/components/Header.vue +23 -0
  135. package/dist/runtime/components/Header.vue.d.ts +20 -0
  136. package/dist/runtime/components/Icon.d.vue.ts +14 -0
  137. package/dist/runtime/components/Icon.vue +18 -0
  138. package/dist/runtime/components/Icon.vue.d.ts +14 -0
  139. package/dist/runtime/components/Input.d.vue.ts +41 -0
  140. package/dist/runtime/components/Input.vue +86 -0
  141. package/dist/runtime/components/Input.vue.d.ts +41 -0
  142. package/dist/runtime/components/InputGroup.d.vue.ts +22 -0
  143. package/dist/runtime/components/InputGroup.vue +21 -0
  144. package/dist/runtime/components/InputGroup.vue.d.ts +22 -0
  145. package/dist/runtime/components/InputNumber.d.vue.ts +37 -0
  146. package/dist/runtime/components/InputNumber.vue +173 -0
  147. package/dist/runtime/components/InputNumber.vue.d.ts +37 -0
  148. package/dist/runtime/components/Kbd.d.vue.ts +24 -0
  149. package/dist/runtime/components/Kbd.vue +42 -0
  150. package/dist/runtime/components/Kbd.vue.d.ts +24 -0
  151. package/dist/runtime/components/Modal.d.vue.ts +72 -0
  152. package/dist/runtime/components/Modal.vue +178 -0
  153. package/dist/runtime/components/Modal.vue.d.ts +72 -0
  154. package/dist/runtime/components/ModalRenderer.d.vue.ts +3 -0
  155. package/dist/runtime/components/ModalRenderer.vue +25 -0
  156. package/dist/runtime/components/ModalRenderer.vue.d.ts +3 -0
  157. package/dist/runtime/components/NavigationMenu.d.vue.ts +108 -0
  158. package/dist/runtime/components/NavigationMenu.vue +166 -0
  159. package/dist/runtime/components/NavigationMenu.vue.d.ts +108 -0
  160. package/dist/runtime/components/NavigationMenuAccordionItem.d.vue.ts +23 -0
  161. package/dist/runtime/components/NavigationMenuAccordionItem.vue +106 -0
  162. package/dist/runtime/components/NavigationMenuAccordionItem.vue.d.ts +23 -0
  163. package/dist/runtime/components/NavigationMenuFlyoutList.d.vue.ts +19 -0
  164. package/dist/runtime/components/NavigationMenuFlyoutList.vue +44 -0
  165. package/dist/runtime/components/NavigationMenuFlyoutList.vue.d.ts +19 -0
  166. package/dist/runtime/components/NavigationMenuFlyoutTrigger.d.vue.ts +49 -0
  167. package/dist/runtime/components/NavigationMenuFlyoutTrigger.vue +116 -0
  168. package/dist/runtime/components/NavigationMenuFlyoutTrigger.vue.d.ts +49 -0
  169. package/dist/runtime/components/PageAside.d.vue.ts +20 -0
  170. package/dist/runtime/components/PageAside.vue +26 -0
  171. package/dist/runtime/components/PageAside.vue.d.ts +20 -0
  172. package/dist/runtime/components/PageHeader.d.vue.ts +24 -0
  173. package/dist/runtime/components/PageHeader.vue +30 -0
  174. package/dist/runtime/components/PageHeader.vue.d.ts +24 -0
  175. package/dist/runtime/components/Pagination.d.vue.ts +42 -0
  176. package/dist/runtime/components/Pagination.vue +113 -0
  177. package/dist/runtime/components/Pagination.vue.d.ts +42 -0
  178. package/dist/runtime/components/PinInput.d.vue.ts +40 -0
  179. package/dist/runtime/components/PinInput.vue +66 -0
  180. package/dist/runtime/components/PinInput.vue.d.ts +40 -0
  181. package/dist/runtime/components/Popover.d.vue.ts +52 -0
  182. package/dist/runtime/components/Popover.vue +77 -0
  183. package/dist/runtime/components/Popover.vue.d.ts +52 -0
  184. package/dist/runtime/components/Progress.d.vue.ts +32 -0
  185. package/dist/runtime/components/Progress.vue +76 -0
  186. package/dist/runtime/components/Progress.vue.d.ts +32 -0
  187. package/dist/runtime/components/ProseH1.d.vue.ts +18 -0
  188. package/dist/runtime/components/ProseH1.vue +21 -0
  189. package/dist/runtime/components/ProseH1.vue.d.ts +18 -0
  190. package/dist/runtime/components/ProseH2.d.vue.ts +18 -0
  191. package/dist/runtime/components/ProseH2.vue +21 -0
  192. package/dist/runtime/components/ProseH2.vue.d.ts +18 -0
  193. package/dist/runtime/components/ProseH3.d.vue.ts +18 -0
  194. package/dist/runtime/components/ProseH3.vue +21 -0
  195. package/dist/runtime/components/ProseH3.vue.d.ts +18 -0
  196. package/dist/runtime/components/ProseH4.d.vue.ts +18 -0
  197. package/dist/runtime/components/ProseH4.vue +21 -0
  198. package/dist/runtime/components/ProseH4.vue.d.ts +18 -0
  199. package/dist/runtime/components/ProseH5.d.vue.ts +18 -0
  200. package/dist/runtime/components/ProseH5.vue +21 -0
  201. package/dist/runtime/components/ProseH5.vue.d.ts +18 -0
  202. package/dist/runtime/components/ProseH6.d.vue.ts +18 -0
  203. package/dist/runtime/components/ProseH6.vue +21 -0
  204. package/dist/runtime/components/ProseH6.vue.d.ts +18 -0
  205. package/dist/runtime/components/ProsePre.d.vue.ts +20 -0
  206. package/dist/runtime/components/ProsePre.vue +50 -0
  207. package/dist/runtime/components/ProsePre.vue.d.ts +20 -0
  208. package/dist/runtime/components/RadioGroup.d.vue.ts +50 -0
  209. package/dist/runtime/components/RadioGroup.vue +82 -0
  210. package/dist/runtime/components/RadioGroup.vue.d.ts +50 -0
  211. package/dist/runtime/components/Rating.d.vue.ts +36 -0
  212. package/dist/runtime/components/Rating.vue +83 -0
  213. package/dist/runtime/components/Rating.vue.d.ts +36 -0
  214. package/dist/runtime/components/ReadMore.d.vue.ts +20 -0
  215. package/dist/runtime/components/ReadMore.vue +59 -0
  216. package/dist/runtime/components/ReadMore.vue.d.ts +20 -0
  217. package/dist/runtime/components/ScrollArea.d.vue.ts +19 -0
  218. package/dist/runtime/components/ScrollArea.vue +37 -0
  219. package/dist/runtime/components/ScrollArea.vue.d.ts +19 -0
  220. package/dist/runtime/components/Select.d.vue.ts +60 -0
  221. package/dist/runtime/components/Select.vue +40 -0
  222. package/dist/runtime/components/Select.vue.d.ts +60 -0
  223. package/dist/runtime/components/Separator.d.vue.ts +27 -0
  224. package/dist/runtime/components/Separator.vue +36 -0
  225. package/dist/runtime/components/Separator.vue.d.ts +27 -0
  226. package/dist/runtime/components/Skeleton.d.vue.ts +13 -0
  227. package/dist/runtime/components/Skeleton.vue +17 -0
  228. package/dist/runtime/components/Skeleton.vue.d.ts +13 -0
  229. package/dist/runtime/components/Slideover.d.vue.ts +65 -0
  230. package/dist/runtime/components/Slideover.vue +140 -0
  231. package/dist/runtime/components/Slideover.vue.d.ts +65 -0
  232. package/dist/runtime/components/SlideoverRenderer.d.vue.ts +3 -0
  233. package/dist/runtime/components/SlideoverRenderer.vue +27 -0
  234. package/dist/runtime/components/SlideoverRenderer.vue.d.ts +3 -0
  235. package/dist/runtime/components/Slider.d.vue.ts +60 -0
  236. package/dist/runtime/components/Slider.vue +186 -0
  237. package/dist/runtime/components/Slider.vue.d.ts +60 -0
  238. package/dist/runtime/components/Splitter.d.vue.ts +41 -0
  239. package/dist/runtime/components/Splitter.vue +31 -0
  240. package/dist/runtime/components/Splitter.vue.d.ts +41 -0
  241. package/dist/runtime/components/SplitterPanel.d.vue.ts +55 -0
  242. package/dist/runtime/components/SplitterPanel.vue +52 -0
  243. package/dist/runtime/components/SplitterPanel.vue.d.ts +55 -0
  244. package/dist/runtime/components/SplitterResizeHandle.d.vue.ts +14 -0
  245. package/dist/runtime/components/SplitterResizeHandle.vue +22 -0
  246. package/dist/runtime/components/SplitterResizeHandle.vue.d.ts +14 -0
  247. package/dist/runtime/components/Stepper.d.vue.ts +57 -0
  248. package/dist/runtime/components/Stepper.vue +101 -0
  249. package/dist/runtime/components/Stepper.vue.d.ts +57 -0
  250. package/dist/runtime/components/Switch.d.vue.ts +49 -0
  251. package/dist/runtime/components/Switch.vue +73 -0
  252. package/dist/runtime/components/Switch.vue.d.ts +49 -0
  253. package/dist/runtime/components/Table.d.vue.ts +83 -0
  254. package/dist/runtime/components/Table.vue +339 -0
  255. package/dist/runtime/components/Table.vue.d.ts +83 -0
  256. package/dist/runtime/components/Tabs.d.vue.ts +43 -0
  257. package/dist/runtime/components/Tabs.vue +60 -0
  258. package/dist/runtime/components/Tabs.vue.d.ts +43 -0
  259. package/dist/runtime/components/Textarea.d.vue.ts +45 -0
  260. package/dist/runtime/components/Textarea.vue +110 -0
  261. package/dist/runtime/components/Textarea.vue.d.ts +45 -0
  262. package/dist/runtime/components/Theme.d.vue.ts +19 -0
  263. package/dist/runtime/components/Theme.vue +18 -0
  264. package/dist/runtime/components/Theme.vue.d.ts +19 -0
  265. package/dist/runtime/components/Toast.d.vue.ts +8 -0
  266. package/dist/runtime/components/Toast.vue +58 -0
  267. package/dist/runtime/components/Toast.vue.d.ts +8 -0
  268. package/dist/runtime/components/Toggle.d.vue.ts +38 -0
  269. package/dist/runtime/components/Toggle.vue +44 -0
  270. package/dist/runtime/components/Toggle.vue.d.ts +38 -0
  271. package/dist/runtime/components/ToggleGroup.d.vue.ts +48 -0
  272. package/dist/runtime/components/ToggleGroup.vue +61 -0
  273. package/dist/runtime/components/ToggleGroup.vue.d.ts +48 -0
  274. package/dist/runtime/components/Tooltip.d.vue.ts +28 -0
  275. package/dist/runtime/components/Tooltip.vue +40 -0
  276. package/dist/runtime/components/Tooltip.vue.d.ts +28 -0
  277. package/dist/runtime/components/Tree.d.vue.ts +64 -0
  278. package/dist/runtime/components/Tree.vue +139 -0
  279. package/dist/runtime/components/Tree.vue.d.ts +64 -0
  280. package/dist/runtime/composables/use-combobox-select.d.ts +45 -0
  281. package/dist/runtime/composables/use-combobox-select.js +80 -0
  282. package/dist/runtime/composables/use-command-palette.d.ts +8 -0
  283. package/dist/runtime/composables/use-command-palette.js +14 -0
  284. package/dist/runtime/composables/use-drawer.d.ts +42 -0
  285. package/dist/runtime/composables/use-drawer.js +44 -0
  286. package/dist/runtime/composables/use-form-field.d.ts +10 -0
  287. package/dist/runtime/composables/use-form-field.js +8 -0
  288. package/dist/runtime/composables/use-icons.d.ts +10 -0
  289. package/dist/runtime/composables/use-icons.js +7 -0
  290. package/dist/runtime/composables/use-locale.d.ts +12 -0
  291. package/dist/runtime/composables/use-locale.js +6 -0
  292. package/dist/runtime/composables/use-media-query.d.ts +11 -0
  293. package/dist/runtime/composables/use-media-query.js +15 -0
  294. package/dist/runtime/composables/use-messages.d.ts +12 -0
  295. package/dist/runtime/composables/use-messages.js +7 -0
  296. package/dist/runtime/composables/use-modal.d.ts +32 -0
  297. package/dist/runtime/composables/use-modal.js +39 -0
  298. package/dist/runtime/composables/use-ripple.d.ts +15 -0
  299. package/dist/runtime/composables/use-ripple.js +6 -0
  300. package/dist/runtime/composables/use-slideover.d.ts +36 -0
  301. package/dist/runtime/composables/use-slideover.js +41 -0
  302. package/dist/runtime/composables/use-table.d.ts +63 -0
  303. package/dist/runtime/composables/use-table.js +142 -0
  304. package/dist/runtime/composables/use-toast.d.ts +15 -0
  305. package/dist/runtime/composables/use-toast.js +16 -0
  306. package/dist/runtime/directives/index.d.ts +1 -0
  307. package/dist/runtime/directives/index.js +1 -0
  308. package/dist/runtime/directives/ripple.d.ts +16 -0
  309. package/dist/runtime/directives/ripple.js +80 -0
  310. package/dist/runtime/internal/ColorPickerBody.d.vue.ts +26 -0
  311. package/dist/runtime/internal/ColorPickerBody.vue +111 -0
  312. package/dist/runtime/internal/ColorPickerBody.vue.d.ts +26 -0
  313. package/dist/runtime/internal/ComboboxSelectBase.d.vue.ts +122 -0
  314. package/dist/runtime/internal/ComboboxSelectBase.vue +590 -0
  315. package/dist/runtime/internal/ComboboxSelectBase.vue.d.ts +122 -0
  316. package/dist/runtime/internal/ComboboxSelectBody.d.vue.ts +71 -0
  317. package/dist/runtime/internal/ComboboxSelectBody.vue +146 -0
  318. package/dist/runtime/internal/ComboboxSelectBody.vue.d.ts +71 -0
  319. package/dist/runtime/internal/DatePickerCalendarBody.d.vue.ts +71 -0
  320. package/dist/runtime/internal/DatePickerCalendarBody.vue +215 -0
  321. package/dist/runtime/internal/DatePickerCalendarBody.vue.d.ts +71 -0
  322. package/dist/runtime/internal/DatePickerRangeCalendarBody.d.vue.ts +37 -0
  323. package/dist/runtime/internal/DatePickerRangeCalendarBody.vue +96 -0
  324. package/dist/runtime/internal/DatePickerRangeCalendarBody.vue.d.ts +37 -0
  325. package/dist/runtime/internal/DatePickerTimeBody.d.vue.ts +33 -0
  326. package/dist/runtime/internal/DatePickerTimeBody.vue +53 -0
  327. package/dist/runtime/internal/DatePickerTimeBody.vue.d.ts +33 -0
  328. package/dist/runtime/internal/TimeStepper.d.vue.ts +28 -0
  329. package/dist/runtime/internal/TimeStepper.vue +99 -0
  330. package/dist/runtime/internal/TimeStepper.vue.d.ts +28 -0
  331. package/dist/runtime/prose.css +1 -0
  332. package/dist/runtime/server/tsconfig.json +3 -0
  333. package/dist/runtime/theme/accordion.d.ts +131 -0
  334. package/dist/runtime/theme/accordion.js +60 -0
  335. package/dist/runtime/theme/alert-dialog.d.ts +50 -0
  336. package/dist/runtime/theme/alert-dialog.js +30 -0
  337. package/dist/runtime/theme/alert.d.ts +62 -0
  338. package/dist/runtime/theme/alert.js +52 -0
  339. package/dist/runtime/theme/avatar-group.d.ts +59 -0
  340. package/dist/runtime/theme/avatar-group.js +18 -0
  341. package/dist/runtime/theme/avatar.d.ts +206 -0
  342. package/dist/runtime/theme/avatar.js +67 -0
  343. package/dist/runtime/theme/badge.d.ts +140 -0
  344. package/dist/runtime/theme/badge.js +90 -0
  345. package/dist/runtime/theme/breadcrumb.d.ts +86 -0
  346. package/dist/runtime/theme/breadcrumb.js +22 -0
  347. package/dist/runtime/theme/button-group.d.ts +53 -0
  348. package/dist/runtime/theme/button-group.js +21 -0
  349. package/dist/runtime/theme/button.d.ts +155 -0
  350. package/dist/runtime/theme/button.js +99 -0
  351. package/dist/runtime/theme/callout.d.ts +74 -0
  352. package/dist/runtime/theme/callout.js +23 -0
  353. package/dist/runtime/theme/card-group.d.ts +44 -0
  354. package/dist/runtime/theme/card-group.js +19 -0
  355. package/dist/runtime/theme/card.d.ts +62 -0
  356. package/dist/runtime/theme/card.js +23 -0
  357. package/dist/runtime/theme/checkbox.d.ts +218 -0
  358. package/dist/runtime/theme/checkbox.js +113 -0
  359. package/dist/runtime/theme/chip.d.ts +155 -0
  360. package/dist/runtime/theme/chip.js +86 -0
  361. package/dist/runtime/theme/code-button.d.ts +32 -0
  362. package/dist/runtime/theme/code-button.js +7 -0
  363. package/dist/runtime/theme/code-tree.d.ts +50 -0
  364. package/dist/runtime/theme/code-tree.js +13 -0
  365. package/dist/runtime/theme/collapsible.d.ts +95 -0
  366. package/dist/runtime/theme/collapsible.js +46 -0
  367. package/dist/runtime/theme/color-picker.d.ts +152 -0
  368. package/dist/runtime/theme/color-picker.js +83 -0
  369. package/dist/runtime/theme/command-palette.d.ts +110 -0
  370. package/dist/runtime/theme/command-palette.js +23 -0
  371. package/dist/runtime/theme/container.d.ts +62 -0
  372. package/dist/runtime/theme/container.js +18 -0
  373. package/dist/runtime/theme/content-navigation.d.ts +47 -0
  374. package/dist/runtime/theme/content-navigation.js +38 -0
  375. package/dist/runtime/theme/content-surround.d.ts +53 -0
  376. package/dist/runtime/theme/content-surround.js +22 -0
  377. package/dist/runtime/theme/content-toc.d.ts +56 -0
  378. package/dist/runtime/theme/content-toc.js +41 -0
  379. package/dist/runtime/theme/context-menu.d.ts +38 -0
  380. package/dist/runtime/theme/context-menu.js +21 -0
  381. package/dist/runtime/theme/dashboard-group.d.ts +26 -0
  382. package/dist/runtime/theme/dashboard-group.js +9 -0
  383. package/dist/runtime/theme/dashboard-navbar.d.ts +44 -0
  384. package/dist/runtime/theme/dashboard-navbar.js +9 -0
  385. package/dist/runtime/theme/dashboard-panel.d.ts +26 -0
  386. package/dist/runtime/theme/dashboard-panel.js +6 -0
  387. package/dist/runtime/theme/dashboard-resize-handle.d.ts +26 -0
  388. package/dist/runtime/theme/dashboard-resize-handle.js +17 -0
  389. package/dist/runtime/theme/dashboard-sidebar.d.ts +50 -0
  390. package/dist/runtime/theme/dashboard-sidebar.js +40 -0
  391. package/dist/runtime/theme/date-picker.d.ts +119 -0
  392. package/dist/runtime/theme/date-picker.js +75 -0
  393. package/dist/runtime/theme/drawer.d.ts +95 -0
  394. package/dist/runtime/theme/drawer.js +57 -0
  395. package/dist/runtime/theme/dropdown.d.ts +41 -0
  396. package/dist/runtime/theme/dropdown.js +21 -0
  397. package/dist/runtime/theme/file-tree.d.ts +56 -0
  398. package/dist/runtime/theme/file-tree.js +33 -0
  399. package/dist/runtime/theme/file-upload.d.ts +233 -0
  400. package/dist/runtime/theme/file-upload.js +63 -0
  401. package/dist/runtime/theme/form-field.d.ts +95 -0
  402. package/dist/runtime/theme/form-field.js +37 -0
  403. package/dist/runtime/theme/header.d.ts +38 -0
  404. package/dist/runtime/theme/header.js +8 -0
  405. package/dist/runtime/theme/icon.d.ts +80 -0
  406. package/dist/runtime/theme/icon.js +26 -0
  407. package/dist/runtime/theme/input-group.d.ts +95 -0
  408. package/dist/runtime/theme/input-group.js +39 -0
  409. package/dist/runtime/theme/input-number.d.ts +164 -0
  410. package/dist/runtime/theme/input-number.js +76 -0
  411. package/dist/runtime/theme/input.d.ts +185 -0
  412. package/dist/runtime/theme/input.js +72 -0
  413. package/dist/runtime/theme/kbd.d.ts +44 -0
  414. package/dist/runtime/theme/kbd.js +16 -0
  415. package/dist/runtime/theme/modal.d.ts +74 -0
  416. package/dist/runtime/theme/modal.js +58 -0
  417. package/dist/runtime/theme/navigation-menu.d.ts +224 -0
  418. package/dist/runtime/theme/navigation-menu.js +232 -0
  419. package/dist/runtime/theme/page-aside.d.ts +44 -0
  420. package/dist/runtime/theme/page-aside.js +17 -0
  421. package/dist/runtime/theme/page-header.d.ts +38 -0
  422. package/dist/runtime/theme/page-header.js +8 -0
  423. package/dist/runtime/theme/pagination.d.ts +68 -0
  424. package/dist/runtime/theme/pagination.js +21 -0
  425. package/dist/runtime/theme/pin-input.d.ts +131 -0
  426. package/dist/runtime/theme/pin-input.js +40 -0
  427. package/dist/runtime/theme/popover.d.ts +32 -0
  428. package/dist/runtime/theme/popover.js +7 -0
  429. package/dist/runtime/theme/progress.d.ts +185 -0
  430. package/dist/runtime/theme/progress.js +54 -0
  431. package/dist/runtime/theme/prose.d.ts +92 -0
  432. package/dist/runtime/theme/prose.js +17 -0
  433. package/dist/runtime/theme/radio-group.d.ts +239 -0
  434. package/dist/runtime/theme/radio-group.js +134 -0
  435. package/dist/runtime/theme/rating.d.ts +167 -0
  436. package/dist/runtime/theme/rating.js +77 -0
  437. package/dist/runtime/theme/read-more.d.ts +38 -0
  438. package/dist/runtime/theme/read-more.js +21 -0
  439. package/dist/runtime/theme/scroll-area.d.ts +50 -0
  440. package/dist/runtime/theme/scroll-area.js +10 -0
  441. package/dist/runtime/theme/select.d.ts +176 -0
  442. package/dist/runtime/theme/select.js +74 -0
  443. package/dist/runtime/theme/separator.d.ts +158 -0
  444. package/dist/runtime/theme/separator.js +63 -0
  445. package/dist/runtime/theme/skeleton.d.ts +35 -0
  446. package/dist/runtime/theme/skeleton.js +27 -0
  447. package/dist/runtime/theme/slideover.d.ts +107 -0
  448. package/dist/runtime/theme/slideover.js +62 -0
  449. package/dist/runtime/theme/slider.d.ts +227 -0
  450. package/dist/runtime/theme/slider.js +73 -0
  451. package/dist/runtime/theme/splitter-panel.d.ts +26 -0
  452. package/dist/runtime/theme/splitter-panel.js +9 -0
  453. package/dist/runtime/theme/splitter-resize-handle.d.ts +44 -0
  454. package/dist/runtime/theme/splitter-resize-handle.js +18 -0
  455. package/dist/runtime/theme/splitter.d.ts +35 -0
  456. package/dist/runtime/theme/splitter.js +15 -0
  457. package/dist/runtime/theme/stepper.d.ts +221 -0
  458. package/dist/runtime/theme/stepper.js +106 -0
  459. package/dist/runtime/theme/switch.d.ts +206 -0
  460. package/dist/runtime/theme/switch.js +84 -0
  461. package/dist/runtime/theme/table.d.ts +176 -0
  462. package/dist/runtime/theme/table.js +59 -0
  463. package/dist/runtime/theme/tabs.d.ts +59 -0
  464. package/dist/runtime/theme/tabs.js +44 -0
  465. package/dist/runtime/theme/textarea.d.ts +212 -0
  466. package/dist/runtime/theme/textarea.js +56 -0
  467. package/dist/runtime/theme/toast.d.ts +80 -0
  468. package/dist/runtime/theme/toast.js +31 -0
  469. package/dist/runtime/theme/toggle-group.d.ts +110 -0
  470. package/dist/runtime/theme/toggle-group.js +48 -0
  471. package/dist/runtime/theme/toggle.d.ts +92 -0
  472. package/dist/runtime/theme/toggle.js +48 -0
  473. package/dist/runtime/theme/tooltip.d.ts +44 -0
  474. package/dist/runtime/theme/tooltip.js +14 -0
  475. package/dist/runtime/theme/tree.d.ts +80 -0
  476. package/dist/runtime/theme/tree.js +32 -0
  477. package/dist/runtime/theme.css +1 -0
  478. package/dist/runtime/types/app-config.d.ts +15 -0
  479. package/dist/runtime/types/index.d.ts +82 -0
  480. package/dist/runtime/types/index.js +2 -0
  481. package/dist/runtime/utils/format-bytes.d.ts +2 -0
  482. package/dist/runtime/utils/format-bytes.js +9 -0
  483. package/dist/runtime/utils/fuzzy-match.d.ts +12 -0
  484. package/dist/runtime/utils/fuzzy-match.js +21 -0
  485. package/dist/runtime/utils/icons.d.ts +38 -0
  486. package/dist/runtime/utils/icons.js +51 -0
  487. package/dist/runtime/utils/injection-keys.d.ts +69 -0
  488. package/dist/runtime/utils/injection-keys.js +3 -0
  489. package/dist/runtime/utils/messages.d.ts +70 -0
  490. package/dist/runtime/utils/messages.js +68 -0
  491. package/dist/runtime/utils/navigation-menu.d.ts +32 -0
  492. package/dist/runtime/utils/navigation-menu.js +5 -0
  493. package/dist/runtime/utils/table-columns.d.ts +30 -0
  494. package/dist/runtime/utils/table-columns.js +89 -0
  495. package/dist/runtime/utils/table-export.d.ts +12 -0
  496. package/dist/runtime/utils/table-export.js +29 -0
  497. package/dist/runtime/utils/ui.d.ts +124 -0
  498. package/dist/runtime/utils/ui.js +74 -0
  499. package/dist/types.d.mts +3 -0
  500. package/package.json +99 -0
@@ -0,0 +1,75 @@
1
+ import { tv } from "tailwind-variants";
2
+ export const datePickerTheme = tv({
3
+ slots: {
4
+ root: "relative inline-block",
5
+ // Same ring/bg/radius/hover/focus-within language as Input's own `base`
6
+ // (theme/input.ts) - this is an Input-look box wrapping real interactive
7
+ // children (segments + trigger button) rather than a single <input>, so
8
+ // the focus ring keys off :focus-within instead of :focus.
9
+ // not-focus-within: on the hover ring - see input-number.ts's own root
10
+ // slot for why (same fix, same reasoning: hovering while focused is
11
+ // unavoidable here, and would otherwise let the plain gray hover ring
12
+ // beat the primary focus-within ring).
13
+ field: "inline-flex w-full items-center gap-1 rounded-[var(--ui-radius-md)] bg-[var(--ui-bg)] ring-1 ring-inset ring-[var(--ui-border)] transition-[color,background-color,box-shadow] not-focus-within:hover:ring-[var(--ui-border-hover)] hover:bg-[var(--ui-bg-elevated)] focus-within:ring-2 focus-within:ring-[var(--ui-primary)] has-[[data-disabled]]:opacity-50 has-[[data-disabled]]:pointer-events-none",
14
+ // rounded-sm + tabular-nums keeps digit width stable as a segment's
15
+ // value changes; the segment itself is the contenteditable element
16
+ // Reka renders, so focus state is real :focus, not a data-attribute.
17
+ segment: "rounded-[var(--ui-radius-sm)] px-0.5 text-[var(--ui-text)] tabular-nums outline-none focus:bg-[var(--ui-primary)]/15 data-[reka-date-field-segment=literal]:px-0 data-[reka-date-field-segment=literal]:text-[var(--ui-text-muted)]",
18
+ // Between the two segment groups in range mode - a plain en dash, not an
19
+ // arrow glyph, so there's nothing directional to mirror under RTL.
20
+ separator: "px-0.5 text-[var(--ui-text-muted)]",
21
+ // Copied from theme/dropdown.ts's `content` - the more complete of this
22
+ // library's two floating-panel precedents (directional slide-in, not
23
+ // just fade/zoom).
24
+ content: "z-[var(--ui-z-dropdown)] rounded-[var(--ui-radius-md)] bg-[var(--ui-bg)] p-3 shadow-[var(--ui-shadow-md)] ring-1 ring-[var(--ui-border)] data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",
25
+ // The `mobileModal` path's own content wrapper - none of `content`'s
26
+ // own popover chrome (ring/shadow/rounded/animate-in/slide-in, all
27
+ // tied to a data-[side=] this never gets since it isn't Floating-UI
28
+ // positioned) applies here, since Modal's own card already provides
29
+ // that surface. `p-3` alone carries over - the calendar grid still
30
+ // wants the same breathing room it gets in the popover.
31
+ mobileContent: "p-3",
32
+ header: "mb-2 flex items-center justify-between gap-2",
33
+ heading: "text-sm font-medium text-[var(--ui-text)]",
34
+ // Wraps one <table> per visible month (numberOfMonths>1, e.g. range
35
+ // mode's default of 2) - without it, multiple month tables just stack
36
+ // vertically (block-level default), not side by side.
37
+ grids: "flex flex-col gap-4 sm:flex-row",
38
+ grid: "w-full border-collapse",
39
+ gridHead: "",
40
+ headCell: "size-8 text-xs font-medium text-[var(--ui-text-muted)]",
41
+ // The <td> wrapper - just spacing, not the day's own look (that's the
42
+ // nested Button inside it, styled directly in DatePicker.vue via a
43
+ // plain :ui override string, same as Pagination's page buttons - no
44
+ // separate theme slot for it, since Button already owns variant/size).
45
+ cell: "p-0.5 text-center",
46
+ // Month/year drill-down grids (view mode) - a fixed 3-column layout for
47
+ // both the 12-month and 12-year grids, reusing the same Button
48
+ // composition pattern as day cells.
49
+ viewGrid: "grid grid-cols-3 gap-1",
50
+ // Hour/minute granularity only - sits below the day grid, separated by
51
+ // a divider so it doesn't read as part of the grid itself.
52
+ timeSection: "mt-3 flex items-center justify-center gap-1.5 border-t border-[var(--ui-border)] pt-3",
53
+ arrow: "fill-[var(--ui-bg)] stroke-[var(--ui-border)] stroke-1"
54
+ },
55
+ variants: {
56
+ size: {
57
+ sm: { field: "h-8 px-2.5 text-sm" },
58
+ md: { field: "h-10 px-3 text-sm" },
59
+ lg: { field: "h-11 px-3.5 text-base" }
60
+ },
61
+ invalid: {
62
+ true: { field: "ring-[var(--ui-danger)] hover:ring-[var(--ui-danger)] focus-within:ring-[var(--ui-danger)]" }
63
+ },
64
+ // Range mode's day cells butt up against each other with no horizontal
65
+ // gap, so a highlighted run of days reads as one continuous connected
66
+ // bar instead of separate dashes - single-date mode keeps its own
67
+ // centered p-0.5 spacing untouched.
68
+ range: {
69
+ true: { cell: "p-0 py-0.5" }
70
+ }
71
+ },
72
+ defaultVariants: {
73
+ size: "md"
74
+ }
75
+ });
@@ -0,0 +1,95 @@
1
+ export declare const drawerTheme: import("tailwind-variants").TVReturnType<{
2
+ side: {
3
+ top: {
4
+ content: string;
5
+ };
6
+ bottom: {
7
+ content: string;
8
+ };
9
+ left: {
10
+ content: string;
11
+ };
12
+ right: {
13
+ content: string;
14
+ };
15
+ };
16
+ transition: {
17
+ true: {
18
+ overlay: string;
19
+ };
20
+ false: {};
21
+ };
22
+ }, {
23
+ overlay: string;
24
+ content: string;
25
+ handle: string;
26
+ header: string;
27
+ title: string;
28
+ description: string;
29
+ close: string;
30
+ body: string;
31
+ footer: string;
32
+ }, undefined, {
33
+ side: {
34
+ top: {
35
+ content: string;
36
+ };
37
+ bottom: {
38
+ content: string;
39
+ };
40
+ left: {
41
+ content: string;
42
+ };
43
+ right: {
44
+ content: string;
45
+ };
46
+ };
47
+ transition: {
48
+ true: {
49
+ overlay: string;
50
+ };
51
+ false: {};
52
+ };
53
+ }, {
54
+ overlay: string;
55
+ content: string;
56
+ handle: string;
57
+ header: string;
58
+ title: string;
59
+ description: string;
60
+ close: string;
61
+ body: string;
62
+ footer: string;
63
+ }, import("tailwind-variants").TVReturnTypeLike<{
64
+ side: {
65
+ top: {
66
+ content: string;
67
+ };
68
+ bottom: {
69
+ content: string;
70
+ };
71
+ left: {
72
+ content: string;
73
+ };
74
+ right: {
75
+ content: string;
76
+ };
77
+ };
78
+ transition: {
79
+ true: {
80
+ overlay: string;
81
+ };
82
+ false: {};
83
+ };
84
+ }, {
85
+ overlay: string;
86
+ content: string;
87
+ handle: string;
88
+ header: string;
89
+ title: string;
90
+ description: string;
91
+ close: string;
92
+ body: string;
93
+ footer: string;
94
+ }>>;
95
+ export type DrawerThemeSlots = keyof (typeof drawerTheme)['slots'];
@@ -0,0 +1,57 @@
1
+ import { tv } from "tailwind-variants";
2
+ export const drawerTheme = tv({
3
+ slots: {
4
+ overlay: "fixed inset-0 z-[var(--ui-z-modal-overlay)] bg-black/50",
5
+ content: "fixed z-[var(--ui-z-modal)] flex flex-col bg-[var(--ui-bg)] shadow-[var(--ui-shadow-lg)] focus:outline-none",
6
+ // A small rounded grip bar - purely visual, signals "draggable" the
7
+ // same way a real bottom sheet's handle does. Centered via the
8
+ // header's own flex row would fight the header's title/close layout,
9
+ // so it gets its own row above everything else instead.
10
+ handle: "mx-auto my-2 h-1.5 w-12 shrink-0 rounded-full bg-[var(--ui-border)]",
11
+ header: "flex items-start justify-between gap-4 p-4 sm:px-6",
12
+ title: "text-base font-semibold text-[var(--ui-text)]",
13
+ description: "mt-1 text-sm text-[var(--ui-text-muted)]",
14
+ close: "shrink-0 rounded-full",
15
+ body: "flex-1 overflow-y-auto p-4 sm:px-6",
16
+ footer: "flex items-center justify-end gap-2 p-4 sm:px-6"
17
+ },
18
+ variants: {
19
+ // Same reasoning as slideover.ts's own comment: no explicit h-full/
20
+ // w-full here for any side - inset-x-*/inset-y-* below supply both
21
+ // edges and let the browser derive the size implicitly.
22
+ //
23
+ // Unlike Slideover, every side always gets a rounded corner on its
24
+ // own inner edge (not conditional on a prop) - a drawer's own visual
25
+ // identity, distinct from Slideover's flush-by-default/optional-
26
+ // floating-inset treatment.
27
+ side: {
28
+ top: { content: "rounded-b-[var(--ui-radius-lg)]" },
29
+ bottom: { content: "rounded-t-[var(--ui-radius-lg)]" },
30
+ left: { content: "max-w-md rounded-e-[var(--ui-radius-lg)]" },
31
+ right: { content: "max-w-md rounded-s-[var(--ui-radius-lg)]" }
32
+ },
33
+ // See slideover.ts for why this lives entirely in the variant (and
34
+ // compoundVariants below), not the base slot strings - tailwind-merge
35
+ // doesn't recognize animate-in/animate-none as a conflicting pair.
36
+ transition: {
37
+ true: { overlay: "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0" },
38
+ false: {}
39
+ }
40
+ },
41
+ compoundVariants: [
42
+ { side: "top", class: { content: "inset-x-0 top-0 max-h-full" } },
43
+ { side: "bottom", class: { content: "inset-x-0 bottom-0 max-h-full" } },
44
+ { side: "left", class: { content: "inset-y-0 left-0 w-full" } },
45
+ { side: "right", class: { content: "inset-y-0 right-0 w-full" } },
46
+ { side: "top", transition: true, class: { content: "data-[state=open]:animate-in data-[state=open]:slide-in-from-top-full data-[state=closed]:animate-out data-[state=closed]:slide-out-to-top-full" } },
47
+ { side: "bottom", transition: true, class: { content: "data-[state=open]:animate-in data-[state=open]:slide-in-from-bottom-full data-[state=closed]:animate-out data-[state=closed]:slide-out-to-bottom-full" } },
48
+ { side: "left", transition: true, class: { content: "data-[state=open]:animate-in data-[state=open]:slide-in-from-left-full data-[state=closed]:animate-out data-[state=closed]:slide-out-to-left-full" } },
49
+ { side: "right", transition: true, class: { content: "data-[state=open]:animate-in data-[state=open]:slide-in-from-right-full data-[state=closed]:animate-out data-[state=closed]:slide-out-to-right-full" } }
50
+ ],
51
+ defaultVariants: {
52
+ // Bottom sheets are the classic drawer use case - unlike Slideover's
53
+ // own 'right' default.
54
+ side: "bottom",
55
+ transition: true
56
+ }
57
+ });
@@ -0,0 +1,41 @@
1
+ export declare const dropdownTheme: import("tailwind-variants").TVReturnType<{
2
+ destructive: {
3
+ true: {
4
+ item: string;
5
+ icon: string;
6
+ };
7
+ };
8
+ }, {
9
+ content: string;
10
+ item: string;
11
+ icon: string;
12
+ separator: string;
13
+ arrow: string;
14
+ }, undefined, {
15
+ destructive: {
16
+ true: {
17
+ item: string;
18
+ icon: string;
19
+ };
20
+ };
21
+ }, {
22
+ content: string;
23
+ item: string;
24
+ icon: string;
25
+ separator: string;
26
+ arrow: string;
27
+ }, import("tailwind-variants").TVReturnTypeLike<{
28
+ destructive: {
29
+ true: {
30
+ item: string;
31
+ icon: string;
32
+ };
33
+ };
34
+ }, {
35
+ content: string;
36
+ item: string;
37
+ icon: string;
38
+ separator: string;
39
+ arrow: string;
40
+ }>>;
41
+ export type DropdownThemeSlots = keyof (typeof dropdownTheme)['slots'];
@@ -0,0 +1,21 @@
1
+ import { tv } from "tailwind-variants";
2
+ export const dropdownTheme = tv({
3
+ slots: {
4
+ content: "z-[var(--ui-z-dropdown)] min-w-40 rounded-[var(--ui-radius-md)] bg-[var(--ui-bg)] p-1 shadow-[var(--ui-shadow-md)] ring-1 ring-[var(--ui-border)] data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",
5
+ item: "flex items-center gap-2 rounded-[var(--ui-radius-sm)] px-2 py-1.5 text-sm text-[var(--ui-text)] cursor-pointer select-none outline-none data-[highlighted]:bg-[var(--ui-bg-elevated)] data-[disabled]:opacity-50 data-[disabled]:pointer-events-none",
6
+ icon: "size-4 shrink-0 text-[var(--ui-text-muted)]",
7
+ separator: "-mx-1 my-1 h-px bg-[var(--ui-border)]",
8
+ arrow: "fill-[var(--ui-bg)] stroke-[var(--ui-border)] stroke-1"
9
+ },
10
+ variants: {
11
+ // For a delete/remove-style action - deliberately just this one flag
12
+ // rather than the full 7-color palette Badge/Chip expose, since a menu
13
+ // item realistically only ever needs this one special case.
14
+ destructive: {
15
+ true: {
16
+ item: "text-[var(--ui-danger)] data-[highlighted]:bg-[var(--ui-danger-soft)]",
17
+ icon: "text-[var(--ui-danger)]"
18
+ }
19
+ }
20
+ }
21
+ });
@@ -0,0 +1,56 @@
1
+ export declare const fileTreeTheme: import("tailwind-variants").TVReturnType<{
2
+ selected: {
3
+ true: {
4
+ row: string;
5
+ };
6
+ };
7
+ isNested: {
8
+ true: {
9
+ item: string;
10
+ };
11
+ };
12
+ }, {
13
+ root: string;
14
+ list: string;
15
+ item: string;
16
+ row: string;
17
+ icon: string;
18
+ label: string;
19
+ }, undefined, {
20
+ selected: {
21
+ true: {
22
+ row: string;
23
+ };
24
+ };
25
+ isNested: {
26
+ true: {
27
+ item: string;
28
+ };
29
+ };
30
+ }, {
31
+ root: string;
32
+ list: string;
33
+ item: string;
34
+ row: string;
35
+ icon: string;
36
+ label: string;
37
+ }, import("tailwind-variants").TVReturnTypeLike<{
38
+ selected: {
39
+ true: {
40
+ row: string;
41
+ };
42
+ };
43
+ isNested: {
44
+ true: {
45
+ item: string;
46
+ };
47
+ };
48
+ }, {
49
+ root: string;
50
+ list: string;
51
+ item: string;
52
+ row: string;
53
+ icon: string;
54
+ label: string;
55
+ }>>;
56
+ export type FileTreeThemeSlots = keyof (typeof fileTreeTheme)['slots'];
@@ -0,0 +1,33 @@
1
+ import { tv } from "tailwind-variants";
2
+ export const fileTreeTheme = tv({
3
+ slots: {
4
+ // The outer box - only the top-level call renders this (see
5
+ // FileTree.vue's own `isNested`); a recursive call for a directory's
6
+ // children renders `list` directly instead, no extra wrapping element.
7
+ root: "flex flex-col gap-0.5 rounded-[var(--ui-radius-md)] border border-[var(--ui-border)] bg-[var(--ui-bg)] p-2 font-mono text-sm",
8
+ // Real indentation, not a border/padding trick - each recursive level
9
+ // renders its own nested <FileTree>, so depth accumulates naturally
10
+ // via this same left padding stacking once per level. `ps-4` also
11
+ // reserves the gutter a nested row's own tree-connector rail (see
12
+ // the `isNested` variant below) reaches back into.
13
+ list: "flex flex-col gap-0.5 ps-4 font-mono text-sm ms-3",
14
+ item: "flex flex-col",
15
+ row: "flex w-full items-center gap-1.5 rounded-[var(--ui-radius-sm)] px-1.5 py-1 text-start text-[var(--ui-text-muted)] transition-colors hover:bg-[var(--ui-bg-elevated)] hover:text-[var(--ui-text)]",
16
+ icon: "size-4 shrink-0",
17
+ label: "truncate"
18
+ },
19
+ variants: {
20
+ selected: {
21
+ true: { row: "bg-[var(--ui-primary-soft)] text-[var(--ui-primary)] hover:bg-[var(--ui-primary-soft)] hover:text-[var(--ui-primary)]" }
22
+ },
23
+ // FileTree.vue recurses into itself for every directory's own
24
+ // children, reusing this exact same `item` slot at every depth -
25
+ // mirrors ContentNavigation's own `isNested` variant exactly (same
26
+ // reasoning: a root-level entry has no parent trunk to its left to
27
+ // branch off of, so the tree-connector rail - see theme.css's own
28
+ // `.selaras-nav-elbow` comment - only applies once nested).
29
+ isNested: {
30
+ true: { item: "selaras-nav-elbow selaras-nav-elbow--file-tree" }
31
+ }
32
+ }
33
+ });
@@ -0,0 +1,233 @@
1
+ export declare const fileUploadTheme: import("tailwind-variants").TVReturnType<{
2
+ size: {
3
+ sm: {
4
+ dropzone: string;
5
+ icon: string;
6
+ fileThumbnail: string;
7
+ fileIcon: string;
8
+ fileName: string;
9
+ fileSize: string;
10
+ };
11
+ md: {
12
+ dropzone: string;
13
+ icon: string;
14
+ fileThumbnail: string;
15
+ fileIcon: string;
16
+ fileName: string;
17
+ fileSize: string;
18
+ };
19
+ lg: {
20
+ dropzone: string;
21
+ icon: string;
22
+ fileThumbnail: string;
23
+ fileIcon: string;
24
+ fileName: string;
25
+ fileSize: string;
26
+ };
27
+ };
28
+ color: {
29
+ primary: {
30
+ icon: string;
31
+ dropzone: string;
32
+ };
33
+ neutral: {
34
+ icon: string;
35
+ dropzone: string;
36
+ };
37
+ secondary: {
38
+ icon: string;
39
+ dropzone: string;
40
+ };
41
+ success: {
42
+ icon: string;
43
+ dropzone: string;
44
+ };
45
+ danger: {
46
+ icon: string;
47
+ dropzone: string;
48
+ };
49
+ info: {
50
+ icon: string;
51
+ dropzone: string;
52
+ };
53
+ warning: {
54
+ icon: string;
55
+ dropzone: string;
56
+ };
57
+ };
58
+ invalid: {
59
+ true: {
60
+ dropzone: string;
61
+ };
62
+ };
63
+ }, {
64
+ root: string;
65
+ dropzone: string;
66
+ icon: string;
67
+ label: string;
68
+ description: string;
69
+ input: string;
70
+ fileList: string;
71
+ file: string;
72
+ fileThumbnail: string;
73
+ fileIcon: string;
74
+ fileInfo: string;
75
+ fileName: string;
76
+ fileSize: string;
77
+ fileRemove: string;
78
+ }, undefined, {
79
+ size: {
80
+ sm: {
81
+ dropzone: string;
82
+ icon: string;
83
+ fileThumbnail: string;
84
+ fileIcon: string;
85
+ fileName: string;
86
+ fileSize: string;
87
+ };
88
+ md: {
89
+ dropzone: string;
90
+ icon: string;
91
+ fileThumbnail: string;
92
+ fileIcon: string;
93
+ fileName: string;
94
+ fileSize: string;
95
+ };
96
+ lg: {
97
+ dropzone: string;
98
+ icon: string;
99
+ fileThumbnail: string;
100
+ fileIcon: string;
101
+ fileName: string;
102
+ fileSize: string;
103
+ };
104
+ };
105
+ color: {
106
+ primary: {
107
+ icon: string;
108
+ dropzone: string;
109
+ };
110
+ neutral: {
111
+ icon: string;
112
+ dropzone: string;
113
+ };
114
+ secondary: {
115
+ icon: string;
116
+ dropzone: string;
117
+ };
118
+ success: {
119
+ icon: string;
120
+ dropzone: string;
121
+ };
122
+ danger: {
123
+ icon: string;
124
+ dropzone: string;
125
+ };
126
+ info: {
127
+ icon: string;
128
+ dropzone: string;
129
+ };
130
+ warning: {
131
+ icon: string;
132
+ dropzone: string;
133
+ };
134
+ };
135
+ invalid: {
136
+ true: {
137
+ dropzone: string;
138
+ };
139
+ };
140
+ }, {
141
+ root: string;
142
+ dropzone: string;
143
+ icon: string;
144
+ label: string;
145
+ description: string;
146
+ input: string;
147
+ fileList: string;
148
+ file: string;
149
+ fileThumbnail: string;
150
+ fileIcon: string;
151
+ fileInfo: string;
152
+ fileName: string;
153
+ fileSize: string;
154
+ fileRemove: string;
155
+ }, import("tailwind-variants").TVReturnTypeLike<{
156
+ size: {
157
+ sm: {
158
+ dropzone: string;
159
+ icon: string;
160
+ fileThumbnail: string;
161
+ fileIcon: string;
162
+ fileName: string;
163
+ fileSize: string;
164
+ };
165
+ md: {
166
+ dropzone: string;
167
+ icon: string;
168
+ fileThumbnail: string;
169
+ fileIcon: string;
170
+ fileName: string;
171
+ fileSize: string;
172
+ };
173
+ lg: {
174
+ dropzone: string;
175
+ icon: string;
176
+ fileThumbnail: string;
177
+ fileIcon: string;
178
+ fileName: string;
179
+ fileSize: string;
180
+ };
181
+ };
182
+ color: {
183
+ primary: {
184
+ icon: string;
185
+ dropzone: string;
186
+ };
187
+ neutral: {
188
+ icon: string;
189
+ dropzone: string;
190
+ };
191
+ secondary: {
192
+ icon: string;
193
+ dropzone: string;
194
+ };
195
+ success: {
196
+ icon: string;
197
+ dropzone: string;
198
+ };
199
+ danger: {
200
+ icon: string;
201
+ dropzone: string;
202
+ };
203
+ info: {
204
+ icon: string;
205
+ dropzone: string;
206
+ };
207
+ warning: {
208
+ icon: string;
209
+ dropzone: string;
210
+ };
211
+ };
212
+ invalid: {
213
+ true: {
214
+ dropzone: string;
215
+ };
216
+ };
217
+ }, {
218
+ root: string;
219
+ dropzone: string;
220
+ icon: string;
221
+ label: string;
222
+ description: string;
223
+ input: string;
224
+ fileList: string;
225
+ file: string;
226
+ fileThumbnail: string;
227
+ fileIcon: string;
228
+ fileInfo: string;
229
+ fileName: string;
230
+ fileSize: string;
231
+ fileRemove: string;
232
+ }>>;
233
+ export type FileUploadThemeSlots = keyof (typeof fileUploadTheme)['slots'];
@@ -0,0 +1,63 @@
1
+ import { tv } from "tailwind-variants";
2
+ export const fileUploadTheme = tv({
3
+ slots: {
4
+ root: "flex w-full flex-col gap-3",
5
+ // The real drop target and click-to-browse trigger - a <button>,
6
+ // not a <div>, so keyboard focus/activation (Enter/Space) comes free
7
+ // instead of needing hand-rolled keydown handling. dragging (a
8
+ // component-set data attribute, not a native one) recolors it
9
+ // toward `color` - see the color variant below.
10
+ dropzone: "flex w-full flex-col items-center justify-center gap-2 rounded-[var(--ui-radius-md)] border-2 border-dashed border-[var(--ui-border)] p-6 text-center transition-colors hover:border-[var(--ui-border-hover)] hover:bg-[var(--ui-bg-elevated)] focus-visible:outline-none focus-visible:ring-2 disabled:opacity-50 disabled:pointer-events-none",
11
+ icon: "text-[var(--ui-text-muted)]",
12
+ label: "font-medium text-[var(--ui-text)]",
13
+ description: "text-[var(--ui-text-muted)]",
14
+ // Purely an implementation detail - visually hidden and (via
15
+ // tabindex="-1" in FileUpload.vue) not independently tab-reachable
16
+ // either.
17
+ // The dropzone <button> wrapping it is the real focusable, Enter/
18
+ // Space-activatable control (free native semantics); this input just
19
+ // gets programmatically .click()'d to open the OS file dialog.
20
+ input: "sr-only",
21
+ fileList: "flex w-full flex-col gap-2",
22
+ file: "flex items-center gap-3 rounded-[var(--ui-radius-md)] border border-[var(--ui-border)] p-2",
23
+ fileThumbnail: "size-8 shrink-0 rounded-[var(--ui-radius-sm)] object-cover",
24
+ fileIcon: "size-8 shrink-0 text-[var(--ui-text-muted)]",
25
+ fileInfo: "flex min-w-0 flex-1 flex-col",
26
+ fileName: "truncate text-[var(--ui-text)]",
27
+ fileSize: "text-[var(--ui-text-muted)]",
28
+ fileRemove: "shrink-0"
29
+ },
30
+ variants: {
31
+ size: {
32
+ sm: { dropzone: "p-4 text-xs", icon: "size-6", fileThumbnail: "size-7", fileIcon: "size-7", fileName: "text-xs", fileSize: "text-xs" },
33
+ md: { dropzone: "p-6 text-sm", icon: "size-8", fileThumbnail: "size-8", fileIcon: "size-8", fileName: "text-sm", fileSize: "text-xs" },
34
+ lg: { dropzone: "p-8 text-base", icon: "size-10", fileThumbnail: "size-10", fileIcon: "size-10", fileName: "text-base", fileSize: "text-sm" }
35
+ },
36
+ // Unlike Input/PinInput's own `color` (focus-ring only, resting
37
+ // stays neutral), FileUpload also tints the icon at rest - a
38
+ // dropzone has no "typing" affordance to make a focus-only color
39
+ // legible in practice, and a Color example that only ever shows 7
40
+ // identical-looking boxes until you interact with each one isn't
41
+ // actually demonstrating anything - confirmed as a real problem via
42
+ // direct user feedback, not just a style preference.
43
+ color: {
44
+ primary: { icon: "text-[var(--ui-primary)]", dropzone: "focus-visible:ring-[var(--ui-primary)] data-[dragging]:border-[var(--ui-primary)] data-[dragging]:bg-[var(--ui-primary-soft)]" },
45
+ neutral: { icon: "text-[var(--ui-bg-inverted)]", dropzone: "focus-visible:ring-[var(--ui-bg-inverted)] data-[dragging]:border-[var(--ui-bg-inverted)] data-[dragging]:bg-[var(--ui-bg-elevated)]" },
46
+ secondary: { icon: "text-[var(--ui-secondary)]", dropzone: "focus-visible:ring-[var(--ui-secondary)] data-[dragging]:border-[var(--ui-secondary)] data-[dragging]:bg-[var(--ui-secondary-soft)]" },
47
+ success: { icon: "text-[var(--ui-success)]", dropzone: "focus-visible:ring-[var(--ui-success)] data-[dragging]:border-[var(--ui-success)] data-[dragging]:bg-[var(--ui-success-soft)]" },
48
+ danger: { icon: "text-[var(--ui-danger)]", dropzone: "focus-visible:ring-[var(--ui-danger)] data-[dragging]:border-[var(--ui-danger)] data-[dragging]:bg-[var(--ui-danger-soft)]" },
49
+ info: { icon: "text-[var(--ui-info)]", dropzone: "focus-visible:ring-[var(--ui-info)] data-[dragging]:border-[var(--ui-info)] data-[dragging]:bg-[var(--ui-info-soft)]" },
50
+ warning: { icon: "text-[var(--ui-warning)]", dropzone: "focus-visible:ring-[var(--ui-warning)] data-[dragging]:border-[var(--ui-warning)] data-[dragging]:bg-[var(--ui-warning-soft)]" }
51
+ },
52
+ // Declared last (after color) so tailwind-merge lets its own border
53
+ // override win over color's - matches Input's own documented
54
+ // reasoning for this order.
55
+ invalid: {
56
+ true: { dropzone: "border-[var(--ui-danger)] focus-visible:ring-[var(--ui-danger)]" }
57
+ }
58
+ },
59
+ defaultVariants: {
60
+ size: "md",
61
+ color: "primary"
62
+ }
63
+ });