tera-system-ui 0.1.64 → 0.1.67

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 (361) hide show
  1. package/dist/COMPONENT_API.md +2 -539
  2. package/dist/components/accordion/Accordion.d.ts +24 -0
  3. package/dist/components/accordion/Accordion.js +4 -0
  4. package/dist/components/accordion/components/Accordion.svelte +2 -8
  5. package/dist/components/accordion/components/AccordionContent.svelte +5 -12
  6. package/dist/components/accordion/components/AccordionItem.svelte +3 -9
  7. package/dist/components/accordion/components/AccordionTrigger.svelte +5 -15
  8. package/dist/components/ai/ChatBubble.svelte +35 -0
  9. package/dist/components/ai/ChatBubble.svelte.d.ts +12 -0
  10. package/dist/components/ai/PromptInput.svelte +58 -0
  11. package/dist/components/ai/PromptInput.svelte.d.ts +13 -0
  12. package/dist/components/ai/StreamText.svelte +41 -0
  13. package/dist/components/ai/StreamText.svelte.d.ts +11 -0
  14. package/dist/components/ai/SuggestionChips.svelte +34 -0
  15. package/dist/components/ai/SuggestionChips.svelte.d.ts +10 -0
  16. package/dist/components/ai/ThinkingLoader.svelte +34 -0
  17. package/dist/components/ai/ThinkingLoader.svelte.d.ts +11 -0
  18. package/dist/components/ai/index.d.ts +5 -0
  19. package/dist/components/ai/index.js +5 -0
  20. package/dist/components/alert/Alert.svelte +47 -0
  21. package/dist/components/alert/Alert.svelte.d.ts +15 -0
  22. package/dist/components/alert/index.d.ts +1 -0
  23. package/dist/components/alert/index.js +1 -0
  24. package/dist/components/avatar/Avatar.svelte +9 -25
  25. package/dist/components/badge/Badge.d.ts +52 -0
  26. package/dist/components/badge/Badge.js +22 -0
  27. package/dist/components/badge/Badge.svelte +22 -0
  28. package/dist/components/badge/Badge.svelte.d.ts +4 -0
  29. package/dist/components/badge/index.d.ts +2 -0
  30. package/dist/components/badge/index.js +1 -0
  31. package/dist/components/brand-logo/BrandLogo.svelte +12 -10
  32. package/dist/components/button/Button.d.ts +2 -2
  33. package/dist/components/button/Button.js +12 -12
  34. package/dist/components/button/Button.svelte +7 -34
  35. package/dist/components/card/Card.d.ts +68 -0
  36. package/dist/components/card/Card.js +28 -0
  37. package/dist/components/card/Card.svelte +33 -0
  38. package/dist/components/card/Card.svelte.d.ts +4 -0
  39. package/dist/components/card/index.d.ts +2 -0
  40. package/dist/components/card/index.js +1 -0
  41. package/dist/components/checkbox/Checkbox.d.ts +25 -4
  42. package/dist/components/checkbox/Checkbox.js +4 -0
  43. package/dist/components/checkbox/Checkbox.svelte +13 -16
  44. package/dist/components/checkbox/Checkbox.svelte.d.ts +2 -2
  45. package/dist/components/combobox/Combobox.d.ts +45 -9
  46. package/dist/components/combobox/Combobox.js +5 -7
  47. package/dist/components/combobox/Combobox.svelte +226 -8
  48. package/dist/components/combobox/Combobox.svelte.d.ts +2 -2
  49. package/dist/components/combobox/index.d.ts +1 -1
  50. package/dist/components/command/components/command-empty.svelte +3 -8
  51. package/dist/components/command/components/command-group.svelte +3 -13
  52. package/dist/components/command/components/command-input.svelte +5 -13
  53. package/dist/components/command/components/command-item.svelte +3 -9
  54. package/dist/components/command/components/command-link-item.svelte +3 -8
  55. package/dist/components/command/components/command-list.svelte +3 -8
  56. package/dist/components/command/components/command-separator.svelte +3 -8
  57. package/dist/components/command/components/command-shortcut.svelte +2 -10
  58. package/dist/components/command/components/command.svelte +29 -42
  59. package/dist/components/date-range-picker/DateRangePicker.svelte +490 -0
  60. package/dist/components/date-range-picker/DateRangePicker.svelte.d.ts +4 -0
  61. package/dist/components/date-range-picker/DateRangePicker.types.d.ts +38 -0
  62. package/dist/components/date-range-picker/DateRangePicker.types.js +1 -0
  63. package/dist/components/date-range-picker/index.d.ts +2 -0
  64. package/dist/components/date-range-picker/index.js +1 -0
  65. package/dist/components/dialog/Dialog.d.ts +43 -121
  66. package/dist/components/dialog/Dialog.js +1 -39
  67. package/dist/components/dialog/Dialog.svelte +103 -113
  68. package/dist/components/dialog/Dialog.svelte.d.ts +1 -2
  69. package/dist/components/dialog/dialog.scss +21 -24
  70. package/dist/components/drawer/Drawer.svelte +63 -0
  71. package/dist/components/drawer/Drawer.svelte.d.ts +16 -0
  72. package/dist/components/drawer/index.d.ts +1 -0
  73. package/dist/components/drawer/index.js +1 -0
  74. package/dist/components/dropdown-menu/DropdownMenu.d.ts +51 -24
  75. package/dist/components/dropdown-menu/DropdownMenu.js +1 -15
  76. package/dist/components/dropdown-menu/components/DropdownMenu.svelte +36 -34
  77. package/dist/components/dropdown-menu/components/DropdownMenu.svelte.d.ts +1 -1
  78. package/dist/components/dropdown-menu/components/DropdownMenuGroup.svelte +8 -12
  79. package/dist/components/dropdown-menu/components/DropdownMenuGroup.svelte.d.ts +2 -4
  80. package/dist/components/dropdown-menu/components/DropdownMenuHeader.svelte +11 -12
  81. package/dist/components/dropdown-menu/components/DropdownMenuHeader.svelte.d.ts +2 -4
  82. package/dist/components/dropdown-menu/components/DropdownMenuItem.svelte +27 -30
  83. package/dist/components/dropdown-menu/components/DropdownMenuItem.svelte.d.ts +1 -1
  84. package/dist/components/dropdown-menu/components/DropdownMenuSeparator.svelte +9 -11
  85. package/dist/components/dropdown-menu/components/DropdownMenuSeparator.svelte.d.ts +2 -4
  86. package/dist/components/fonts/TeraFontMono.svelte +4 -4
  87. package/dist/components/fonts/TeraFontMono.svelte.d.ts +1 -0
  88. package/dist/components/fonts/TeraFontSansSerif.svelte +4 -4
  89. package/dist/components/fonts/TeraFontSansSerif.svelte.d.ts +1 -1
  90. package/dist/components/header/Header.svelte +6 -9
  91. package/dist/components/header/header.scss +1 -1
  92. package/dist/components/icons/IconArrowBigRightFilled.svelte +3 -7
  93. package/dist/components/icons/IconBook.svelte +3 -6
  94. package/dist/components/icons/IconBookmarkPlus.svelte +3 -6
  95. package/dist/components/icons/IconCalculator.svelte +3 -6
  96. package/dist/components/icons/IconCheck.svelte +3 -6
  97. package/dist/components/icons/IconChevronDown.svelte +3 -6
  98. package/dist/components/icons/IconCoin.svelte +3 -6
  99. package/dist/components/icons/IconCoinConvert.svelte +2 -5
  100. package/dist/components/icons/IconCopy.svelte +3 -6
  101. package/dist/components/icons/IconCopyCheckFilled.svelte +3 -6
  102. package/dist/components/icons/IconHamburger.svelte +3 -6
  103. package/dist/components/icons/IconLanguage.svelte +3 -6
  104. package/dist/components/icons/IconLoader2.svelte +3 -6
  105. package/dist/components/icons/IconLogout.svelte +3 -6
  106. package/dist/components/icons/IconMoon.svelte +3 -6
  107. package/dist/components/icons/IconPointFilled.svelte +3 -6
  108. package/dist/components/icons/IconSearch.svelte +3 -6
  109. package/dist/components/icons/IconSettings.svelte +3 -6
  110. package/dist/components/icons/IconSun.svelte +3 -6
  111. package/dist/components/icons/IconSwitchHorizontal.svelte +3 -6
  112. package/dist/components/icons/IconSwitchVertical.svelte +3 -6
  113. package/dist/components/icons/IconTransform.svelte +3 -6
  114. package/dist/components/icons/IconX.svelte +3 -6
  115. package/dist/components/input/Input.d.ts +2 -2
  116. package/dist/components/input/Input.js +10 -10
  117. package/dist/components/input/Input.svelte +10 -26
  118. package/dist/components/label/Label.d.ts +2 -2
  119. package/dist/components/label/Label.js +2 -2
  120. package/dist/components/label/Label.svelte +4 -12
  121. package/dist/components/language-picker-button/LanguagePickerButton.svelte +23 -42
  122. package/dist/components/light-dark-toggle/LightDarkToggle.svelte +21 -26
  123. package/dist/components/marketing/FeatureCard.svelte +37 -0
  124. package/dist/components/marketing/FeatureCard.svelte.d.ts +13 -0
  125. package/dist/components/marketing/PricingCard.svelte +48 -0
  126. package/dist/components/marketing/PricingCard.svelte.d.ts +15 -0
  127. package/dist/components/marketing/StatBlock.svelte +14 -0
  128. package/dist/components/marketing/StatBlock.svelte.d.ts +10 -0
  129. package/dist/components/marketing/TestimonialCard.svelte +24 -0
  130. package/dist/components/marketing/TestimonialCard.svelte.d.ts +12 -0
  131. package/dist/components/marketing/index.d.ts +4 -0
  132. package/dist/components/marketing/index.js +4 -0
  133. package/dist/components/popover/Popover.d.ts +32 -13
  134. package/dist/components/popover/Popover.js +1 -7
  135. package/dist/components/popover/Popover.svelte +40 -158
  136. package/dist/components/popover/Popover.svelte.d.ts +2 -2
  137. package/dist/components/popover-responsive/PopoverResponsive.d.ts +18 -7
  138. package/dist/components/popover-responsive/PopoverResponsive.js +1 -7
  139. package/dist/components/popover-responsive/PopoverResponsive.svelte +25 -87
  140. package/dist/components/popover-responsive/PopoverResponsive.svelte.d.ts +2 -11
  141. package/dist/components/select/Select.d.ts +60 -23
  142. package/dist/components/select/Select.js +14 -35
  143. package/dist/components/select/Select.svelte +157 -28
  144. package/dist/components/select/Select.svelte.d.ts +2 -3
  145. package/dist/components/select/index.d.ts +1 -1
  146. package/dist/components/side-navigation/SideNavigation.svelte +73 -96
  147. package/dist/components/side-navigation/SideNavigationItem.svelte +2 -2
  148. package/dist/components/side-navigation/SideNavigationLayout.svelte +3 -5
  149. package/dist/components/side-navigation/sidenav.scss +17 -13
  150. package/dist/components/skeleton/Skeleton.svelte +48 -0
  151. package/dist/components/skeleton/Skeleton.svelte.d.ts +12 -0
  152. package/dist/components/skeleton/index.d.ts +1 -0
  153. package/dist/components/skeleton/index.js +1 -0
  154. package/dist/components/slider/Slider.d.ts +25 -15
  155. package/dist/components/slider/Slider.js +1 -7
  156. package/dist/components/slider/Slider.svelte +38 -164
  157. package/dist/components/slider/Slider.svelte.d.ts +1 -1
  158. package/dist/components/spinner/Spinner.svelte +39 -0
  159. package/dist/components/spinner/Spinner.svelte.d.ts +10 -0
  160. package/dist/components/spinner/index.d.ts +1 -0
  161. package/dist/components/spinner/index.js +1 -0
  162. package/dist/components/star-rating/StarRating.svelte +33 -49
  163. package/dist/components/switch/Switch.d.ts +19 -4
  164. package/dist/components/switch/Switch.js +4 -0
  165. package/dist/components/switch/Switch.svelte +13 -17
  166. package/dist/components/switch/Switch.svelte.d.ts +2 -2
  167. package/dist/components/table/Table.svelte +68 -0
  168. package/dist/components/table/Table.svelte.d.ts +40 -0
  169. package/dist/components/table/index.d.ts +1 -0
  170. package/dist/components/table/index.js +1 -0
  171. package/dist/components/tabs/Tabs.svelte.d.ts +45 -16
  172. package/dist/components/tabs/Tabs.svelte.js +8 -18
  173. package/dist/components/tabs/components/Tabs.svelte +27 -33
  174. package/dist/components/tabs/components/Tabs.svelte.d.ts +1 -1
  175. package/dist/components/tabs/components/TabsContent.svelte +13 -36
  176. package/dist/components/tabs/components/TabsContent.svelte.d.ts +2 -5
  177. package/dist/components/tabs/components/TabsItem.svelte +43 -32
  178. package/dist/components/tabs/components/TabsItem.svelte.d.ts +2 -5
  179. package/dist/components/tabs/components/TabsList.svelte +90 -58
  180. package/dist/components/tabs/components/TabsList.svelte.d.ts +2 -4
  181. package/dist/components/tera-ui-context/TeraUiContext.svelte +13 -26
  182. package/dist/components/text-area/TextArea.d.ts +2 -2
  183. package/dist/components/text-area/TextArea.js +9 -9
  184. package/dist/components/text-area/TextArea.svelte +41 -65
  185. package/dist/components/toast/ToastContainer.svelte +50 -0
  186. package/dist/components/toast/ToastContainer.svelte.d.ts +18 -0
  187. package/dist/components/toast/index.d.ts +3 -0
  188. package/dist/components/toast/index.js +2 -0
  189. package/dist/components/toast/toast.svelte.d.ts +22 -0
  190. package/dist/components/toast/toast.svelte.js +18 -0
  191. package/dist/components/tooltip/Tooltip.d.ts +23 -0
  192. package/dist/components/tooltip/Tooltip.js +1 -0
  193. package/dist/components/tooltip/Tooltip.svelte +30 -0
  194. package/dist/components/tooltip/Tooltip.svelte.d.ts +4 -0
  195. package/dist/components/tooltip/index.d.ts +2 -0
  196. package/dist/components/tooltip/index.js +1 -0
  197. package/dist/components/user-avatar-with-menu/UserAvatarWithMenu.svelte +48 -69
  198. package/dist/index.d.ts +19 -2
  199. package/dist/index.js +12 -0
  200. package/dist/llms/accordion.md +90 -0
  201. package/dist/llms/ai.md +110 -0
  202. package/dist/llms/alert.md +29 -0
  203. package/dist/llms/avatar.md +34 -0
  204. package/dist/llms/badge.md +31 -0
  205. package/dist/llms/brand-logo.md +30 -0
  206. package/dist/llms/button.md +37 -0
  207. package/dist/llms/card.md +32 -0
  208. package/dist/llms/checkbox.md +35 -0
  209. package/dist/llms/colors.md +161 -0
  210. package/dist/llms/combobox.md +40 -0
  211. package/dist/llms/command.md +7 -0
  212. package/dist/llms/date-range-picker.md +36 -0
  213. package/dist/llms/dialog.md +45 -0
  214. package/dist/llms/drawer.md +30 -0
  215. package/dist/llms/dropdown-menu.md +112 -0
  216. package/dist/llms/fonts.md +7 -0
  217. package/dist/llms/header.md +26 -0
  218. package/dist/llms/icons.md +43 -0
  219. package/dist/llms/index.md +65 -0
  220. package/dist/llms/input.md +37 -0
  221. package/dist/llms/label.md +30 -0
  222. package/dist/llms/language-picker-button.md +30 -0
  223. package/dist/llms/light-dark-toggle.md +26 -0
  224. package/dist/llms/marketing.md +95 -0
  225. package/dist/llms/popover-responsive.md +32 -0
  226. package/dist/llms/popover.md +40 -0
  227. package/dist/llms/select.md +44 -0
  228. package/dist/llms/side-navigation.md +30 -0
  229. package/dist/llms/skeleton.md +28 -0
  230. package/dist/llms/slider.md +36 -0
  231. package/dist/llms/spinner.md +25 -0
  232. package/dist/llms/star-rating.md +31 -0
  233. package/dist/llms/switch.md +33 -0
  234. package/dist/llms/table.md +30 -0
  235. package/dist/llms/tabs.md +92 -0
  236. package/dist/llms/tera-ui-context.md +30 -0
  237. package/dist/llms/text-area.md +39 -0
  238. package/dist/llms/toast.md +7 -0
  239. package/dist/llms/tooltip.md +32 -0
  240. package/dist/llms/user-avatar-with-menu.md +28 -0
  241. package/dist/paraglide/README.md +72 -3
  242. package/dist/paraglide/messages/_index.d.ts +105 -7
  243. package/dist/paraglide/messages/_index.js +437 -7
  244. package/dist/paraglide/messages/ar.d.ts +23 -0
  245. package/dist/paraglide/messages/ar.js +38 -0
  246. package/dist/paraglide/messages/bg.d.ts +23 -0
  247. package/dist/paraglide/messages/bg.js +38 -0
  248. package/dist/paraglide/messages/bn.d.ts +23 -0
  249. package/dist/paraglide/messages/bn.js +38 -0
  250. package/dist/paraglide/messages/ca.d.ts +23 -0
  251. package/dist/paraglide/messages/ca.js +38 -0
  252. package/dist/paraglide/messages/cs.d.ts +23 -0
  253. package/dist/paraglide/messages/cs.js +38 -0
  254. package/dist/paraglide/messages/da.d.ts +23 -0
  255. package/dist/paraglide/messages/da.js +38 -0
  256. package/dist/paraglide/messages/de.d.ts +23 -0
  257. package/dist/paraglide/messages/de.js +38 -0
  258. package/dist/paraglide/messages/el.d.ts +23 -0
  259. package/dist/paraglide/messages/el.js +38 -0
  260. package/dist/paraglide/messages/en.d.ts +23 -0
  261. package/dist/paraglide/messages/en.js +38 -0
  262. package/dist/paraglide/messages/es.d.ts +23 -0
  263. package/dist/paraglide/messages/es.js +38 -0
  264. package/dist/paraglide/messages/fi.d.ts +23 -0
  265. package/dist/paraglide/messages/fi.js +38 -0
  266. package/dist/paraglide/messages/fr.d.ts +23 -0
  267. package/dist/paraglide/messages/fr.js +38 -0
  268. package/dist/paraglide/messages/he.d.ts +23 -0
  269. package/dist/paraglide/messages/he.js +38 -0
  270. package/dist/paraglide/messages/hi.d.ts +23 -0
  271. package/dist/paraglide/messages/hi.js +38 -0
  272. package/dist/paraglide/messages/hu.d.ts +23 -0
  273. package/dist/paraglide/messages/hu.js +38 -0
  274. package/dist/paraglide/messages/id.d.ts +23 -0
  275. package/dist/paraglide/messages/id.js +38 -0
  276. package/dist/paraglide/messages/it.d.ts +23 -0
  277. package/dist/paraglide/messages/it.js +38 -0
  278. package/dist/paraglide/messages/ja.d.ts +23 -0
  279. package/dist/paraglide/messages/ja.js +38 -0
  280. package/dist/paraglide/messages/ko.d.ts +23 -0
  281. package/dist/paraglide/messages/ko.js +38 -0
  282. package/dist/paraglide/messages/lt.d.ts +23 -0
  283. package/dist/paraglide/messages/lt.js +38 -0
  284. package/dist/paraglide/messages/lv.d.ts +23 -0
  285. package/dist/paraglide/messages/lv.js +38 -0
  286. package/dist/paraglide/messages/ms.d.ts +23 -0
  287. package/dist/paraglide/messages/ms.js +38 -0
  288. package/dist/paraglide/messages/nl.d.ts +23 -0
  289. package/dist/paraglide/messages/nl.js +38 -0
  290. package/dist/paraglide/messages/no.d.ts +23 -0
  291. package/dist/paraglide/messages/no.js +38 -0
  292. package/dist/paraglide/messages/pl.d.ts +23 -0
  293. package/dist/paraglide/messages/pl.js +38 -0
  294. package/dist/paraglide/messages/pt.d.ts +23 -0
  295. package/dist/paraglide/messages/pt.js +38 -0
  296. package/dist/paraglide/messages/ro.d.ts +23 -0
  297. package/dist/paraglide/messages/ro.js +38 -0
  298. package/dist/paraglide/messages/ru.d.ts +23 -0
  299. package/dist/paraglide/messages/ru.js +38 -0
  300. package/dist/paraglide/messages/sk.d.ts +23 -0
  301. package/dist/paraglide/messages/sk.js +38 -0
  302. package/dist/paraglide/messages/sl.d.ts +23 -0
  303. package/dist/paraglide/messages/sl.js +38 -0
  304. package/dist/paraglide/messages/sq.d.ts +23 -0
  305. package/dist/paraglide/messages/sq.js +38 -0
  306. package/dist/paraglide/messages/sr.d.ts +23 -0
  307. package/dist/paraglide/messages/sr.js +38 -0
  308. package/dist/paraglide/messages/sv.d.ts +23 -0
  309. package/dist/paraglide/messages/sv.js +38 -0
  310. package/dist/paraglide/messages/sw.d.ts +23 -0
  311. package/dist/paraglide/messages/sw.js +38 -0
  312. package/dist/paraglide/messages/ta.d.ts +23 -0
  313. package/dist/paraglide/messages/ta.js +38 -0
  314. package/dist/paraglide/messages/te.d.ts +23 -0
  315. package/dist/paraglide/messages/te.js +38 -0
  316. package/dist/paraglide/messages/th.d.ts +23 -0
  317. package/dist/paraglide/messages/th.js +38 -0
  318. package/dist/paraglide/messages/tl.d.ts +23 -0
  319. package/dist/paraglide/messages/tl.js +38 -0
  320. package/dist/paraglide/messages/tr.d.ts +23 -0
  321. package/dist/paraglide/messages/tr.js +38 -0
  322. package/dist/paraglide/messages/uk.d.ts +23 -0
  323. package/dist/paraglide/messages/uk.js +38 -0
  324. package/dist/paraglide/messages/vi.d.ts +23 -0
  325. package/dist/paraglide/messages/vi.js +38 -0
  326. package/dist/paraglide/messages/zh-CN.d.ts +23 -0
  327. package/dist/paraglide/messages/zh-CN.js +38 -0
  328. package/dist/paraglide/messages/zh-TW.d.ts +23 -0
  329. package/dist/paraglide/messages/zh-TW.js +38 -0
  330. package/dist/paraglide/registry.d.ts +13 -0
  331. package/dist/paraglide/registry.js +15 -0
  332. package/dist/paraglide/runtime.d.ts +243 -126
  333. package/dist/paraglide/runtime.js +473 -148
  334. package/dist/paraglide/server.d.ts +13 -20
  335. package/dist/paraglide/server.js +92 -40
  336. package/dist/stories/ComponentOverview.stories.svelte +533 -0
  337. package/dist/stories/ComponentOverview.stories.svelte.d.ts +6 -0
  338. package/dist/themes/tera-ui-base.css +664 -470
  339. package/dist/themes/theme-ai.css +100 -0
  340. package/dist/themes/theme-marketing.css +91 -0
  341. package/dist/themes/theme-professional.css +41 -0
  342. package/package.json +35 -29
  343. package/dist/paraglide/messages/text_account_settings.d.ts +0 -4
  344. package/dist/paraglide/messages/text_account_settings.js +0 -239
  345. package/dist/paraglide/messages/text_calces_documentation.d.ts +0 -4
  346. package/dist/paraglide/messages/text_calces_documentation.js +0 -239
  347. package/dist/paraglide/messages/text_calces_scientific_calculator.d.ts +0 -4
  348. package/dist/paraglide/messages/text_calces_scientific_calculator.js +0 -239
  349. package/dist/paraglide/messages/text_currency_converter.d.ts +0 -4
  350. package/dist/paraglide/messages/text_currency_converter.js +0 -239
  351. package/dist/paraglide/messages/text_logout.d.ts +0 -4
  352. package/dist/paraglide/messages/text_logout.js +0 -239
  353. package/dist/paraglide/messages/text_select_language.d.ts +0 -4
  354. package/dist/paraglide/messages/text_select_language.js +0 -239
  355. package/dist/paraglide/messages/text_unit_converter.d.ts +0 -4
  356. package/dist/paraglide/messages/text_unit_converter.js +0 -239
  357. package/dist/tera-i18n/projects/tera-system-ui/project.inlang/.meta.json +0 -3
  358. package/dist/tera-i18n/projects/tera-system-ui/project.inlang/README.md +0 -103
  359. package/dist/tera-i18n/projects/tera-system-ui/project.inlang/project_id +0 -1
  360. package/dist/themes/tw-preset.cjs +0 -160
  361. package/dist/themes/tw-preset.d.cts +0 -157
@@ -1,28 +1,157 @@
1
- <script lang="ts">
2
- import './select.scss'
3
-
4
- import {type SelectProps, styles} from "./Select";
5
-
6
- let {
7
- children,
8
- variant = 'outlined',
9
- disabled,
10
- size = 'md',
11
- status,
12
- class: className,
13
- value = $bindable(),
14
- ref = $bindable(),
15
- ...props
16
- }: SelectProps = $props();
17
-
18
- </script>
19
-
20
- <select
21
- bind:this={ref}
22
- bind:value
23
- class={styles({ variant, disabled, size, status, className })}
24
- {disabled}
25
- {...props}
26
- >
27
- {@render children?.()}
28
- </select>
1
+ <script lang="ts">import { Select as SelectPrimitive } from 'bits-ui';
2
+ import { triggerStyles } from './Select.js';
3
+ import { IconCheck, IconChevronDown } from '../icons/index.js';
4
+ import IconChevronsUp from '@tabler/icons-svelte/icons/chevrons-up';
5
+ import IconChevronsDown from '@tabler/icons-svelte/icons/chevrons-down';
6
+ let { type = 'single', options = [], groups, value = $bindable(), placeholder = 'Select…', variant, size, disabled, status, loop, allowDeselect, required, name, class: className, onchange, } = $props();
7
+ // All options flat — used for label lookup in multiple mode
8
+ const allOptions = $derived(groups ? groups.flatMap(g => g.options) : options);
9
+ // Single mode: selected label
10
+ const selectedLabel = $derived.by(() => {
11
+ const v = value;
12
+ if (typeof v !== 'string' || !v)
13
+ return '';
14
+ return allOptions.find(o => o.value === v)?.label ?? v;
15
+ });
16
+ // Multiple mode: selected chips
17
+ const selectedChips = $derived(Array.isArray(value)
18
+ ? value.map(v => ({ value: v, label: allOptions.find(o => o.value === v)?.label ?? v }))
19
+ : []);
20
+ const triggerClass = $derived(triggerStyles({ variant, size, disabled, status, className }));
21
+ const minHeight = "21rem";
22
+ </script>
23
+
24
+ {#snippet itemList()}
25
+ <SelectPrimitive.Viewport class="p-2 flex-1 min-h-0 overflow-y-auto">
26
+ {#if groups && groups.length > 0}
27
+ {#each groups as group (group.label)}
28
+ <SelectPrimitive.Group>
29
+ <SelectPrimitive.GroupHeading
30
+ class="px-2 py-1.5 text-xs font-semibold text-text-tertiary uppercase tracking-wide"
31
+ >
32
+ {group.label}
33
+ </SelectPrimitive.GroupHeading>
34
+ {#each group.options as option (option.value)}
35
+ {@render renderItem(option)}
36
+ {/each}
37
+ </SelectPrimitive.Group>
38
+ {/each}
39
+ {:else}
40
+ {#each options as option (option.value)}
41
+ {@render renderItem(option)}
42
+ {/each}
43
+ {/if}
44
+ </SelectPrimitive.Viewport>
45
+ {/snippet}
46
+
47
+ {#if type === 'multiple'}
48
+ <SelectPrimitive.Root
49
+ type="multiple"
50
+ bind:value={value as string[] | undefined}
51
+ onValueChange={(v) => onchange?.(v)}
52
+ {disabled}
53
+ {loop}
54
+ {required}
55
+ {name}
56
+ >
57
+ <!--
58
+ Multiple-mode trigger: chip tags displayed in the button, individual × spans
59
+ are non-interactive (no onclick) to avoid button-in-button nesting.
60
+ Managing selection is done exclusively through the dropdown items.
61
+ -->
62
+ <SelectPrimitive.Trigger class={triggerStyles({ variant, size, disabled, status, className: `h-auto min-h-9 flex-wrap py-1.5 ${className ?? ''}` })}>
63
+ {#if selectedChips.length > 0}
64
+ {#each selectedChips as chip (chip.value)}
65
+ <!-- Plain span tag — no interactive elements inside <button> -->
66
+ <span class="inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs bg-interactive-subtle text-interactive-text border border-interactive-border">
67
+ {chip.label}
68
+ <!-- Use span with role for the remove hint; actual removal happens via re-clicking in dropdown -->
69
+ <!-- <span class="flex items-center opacity-60" aria-hidden="true"><IconX class="size-3" /></span>-->
70
+ </span>
71
+ {/each}
72
+ {:else}
73
+ <span class="text-text-tertiary flex-1">{placeholder}</span>
74
+ {/if}
75
+ <IconChevronDown class="size-4 shrink-0 text-text-tertiary ml-auto transition-transform ease-ui duration-150 data-[state=open]:rotate-180" />
76
+ </SelectPrimitive.Trigger>
77
+
78
+ <SelectPrimitive.Portal>
79
+ <SelectPrimitive.Content
80
+ sideOffset={4}
81
+ class="z-50 min-w-[var(--bits-select-anchor-width)] flex flex-col overflow-hidden
82
+ bg-surface rounded-container border border-border-default shadow-lg
83
+ animate-in fade-in zoom-in-95 duration-150
84
+ data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95"
85
+ style="max-height: min({minHeight}, var(--bits-select-content-available-height))"
86
+ >
87
+ <SelectPrimitive.ScrollUpButton class="flex w-full items-center justify-center pt-1 text-text-tertiary cursor-default hover:text-text-primary transition-colors">
88
+ <IconChevronsUp class="size-3.5" />
89
+ </SelectPrimitive.ScrollUpButton>
90
+ {@render itemList()}
91
+ <SelectPrimitive.ScrollDownButton class="flex w-full items-center justify-center pb-1 text-text-tertiary cursor-default hover:text-text-primary transition-colors">
92
+ <IconChevronsDown class="size-3.5" />
93
+ </SelectPrimitive.ScrollDownButton>
94
+ </SelectPrimitive.Content>
95
+ </SelectPrimitive.Portal>
96
+ </SelectPrimitive.Root>
97
+
98
+ {:else}
99
+ <SelectPrimitive.Root
100
+ type="single"
101
+ bind:value={value as string | undefined}
102
+ onValueChange={(v) => onchange?.(v)}
103
+ {disabled}
104
+ {loop}
105
+ {allowDeselect}
106
+ {required}
107
+ {name}
108
+ >
109
+ <SelectPrimitive.Trigger class={triggerClass}>
110
+ <span class={!value ? 'text-text-tertiary' : 'text-text-primary'}>
111
+ {value ? selectedLabel : placeholder}
112
+ </span>
113
+ <IconChevronDown
114
+ class="size-4 shrink-0 text-text-tertiary transition-transform ease-ui duration-150 data-[state=open]:rotate-180"
115
+ />
116
+ </SelectPrimitive.Trigger>
117
+
118
+ <SelectPrimitive.Portal>
119
+ <SelectPrimitive.Content
120
+ sideOffset={6}
121
+ class="z-50 min-w-[var(--bits-select-anchor-width)] flex flex-col overflow-hidden
122
+ bg-surface rounded-container border border-border-default shadow-lg
123
+ animate-in fade-in zoom-in-95 duration-150
124
+ data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95"
125
+ style="max-height: min({minHeight}, var(--bits-select-content-available-height))"
126
+ >
127
+ <SelectPrimitive.ScrollUpButton class="flex w-full items-center justify-center pt-1 text-text-tertiary cursor-default hover:text-text-primary transition-colors">
128
+ <IconChevronsUp class="size-3.5" />
129
+ </SelectPrimitive.ScrollUpButton>
130
+ {@render itemList()}
131
+ <SelectPrimitive.ScrollDownButton class="flex w-full items-center justify-center pb-1 text-text-tertiary cursor-default hover:text-text-primary transition-colors">
132
+ <IconChevronsDown class="size-3.5" />
133
+ </SelectPrimitive.ScrollDownButton>
134
+ </SelectPrimitive.Content>
135
+ </SelectPrimitive.Portal>
136
+ </SelectPrimitive.Root>
137
+ {/if}
138
+
139
+ {#snippet renderItem(option: { value: string; label: string; disabled?: boolean })}
140
+ <SelectPrimitive.Item
141
+ value={option.value}
142
+ label={option.label}
143
+ disabled={option.disabled}
144
+ class="relative flex w-full cursor-pointer select-none items-center rounded px-2 py-2 text-sm text-text-primary outline-none
145
+ transition-colors ease-ui duration-100
146
+ data-[highlighted]:bg-surface-hover
147
+ data-[selected]:font-medium data-[selected]:text-interactive
148
+ data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50"
149
+ >
150
+ {#snippet children({selected})}
151
+ <span class="flex-1">{option.label}</span>
152
+ {#if selected}
153
+ <IconCheck class="size-4 text-interactive shrink-0"/>
154
+ {/if}
155
+ {/snippet}
156
+ </SelectPrimitive.Item>
157
+ {/snippet}
@@ -1,5 +1,4 @@
1
- import './select.scss';
2
- import { type SelectProps } from "./Select";
3
- declare const Select: import("svelte").Component<SelectProps, {}, "value" | "ref">;
1
+ import { type SelectProps } from './Select.js';
2
+ declare const Select: import("svelte").Component<SelectProps, {}, "value">;
4
3
  type Select = ReturnType<typeof Select>;
5
4
  export default Select;
@@ -1,2 +1,2 @@
1
1
  export { default as Select } from './Select.svelte';
2
- export type { SelectProps } from './Select';
2
+ export type { SelectProps, SelectOption } from './Select.js';
@@ -1,98 +1,75 @@
1
- <script lang="ts">
2
- import {
3
- SCREEN_BREAK_POINTS,
4
- mainLayout,
5
- setSideNavState,
6
- type SideNavigationProps,
7
- toggleSideNavigation, getSideNavState, type SideNavigationItem
8
- } from "./SideNavigation";
9
- import {clickOutside} from "../../actions/clickOutside"
10
- import {Button} from "../button";
11
- import {IconCoinConvert, IconHamburger} from "../icons";
12
- import {BrandLogo} from "../brand-logo";
13
- import SideNavItem from "./SideNavigationItem.svelte";
14
- import IconBook from "../icons/IconBook.svelte";
15
- import IconTransform from "../icons/IconTransform.svelte";
16
- import IconCalculator from "../icons/IconCalculator.svelte";
17
- import {m} from '../../paraglide/messages.js'
18
-
19
- import {getGlobalContext} from "../tera-ui-context/global-context";
20
- import {
21
- SupportedLanguage as CalculatorSupportedLanguage
22
- } from "../../tera-i18n/projects/tera-calculator/supported-language";
23
- import {
24
- SupportedLanguage as ConverterSupportedLanguage
25
- } from "../../tera-i18n/projects/tera-converter/supported-language";
26
-
27
- let {children, sideNavHref, language, items, bottomChildren, ...props}: SideNavigationProps = $props();
28
-
29
-
30
- function handleClickOutside() {
31
- let screenWidth = Math.max(document.documentElement.clientWidth || 0, window.innerWidth || 0)
32
- if (screenWidth < SCREEN_BREAK_POINTS.md) {
33
- setSideNavState(undefined)
34
- } else if (screenWidth >= SCREEN_BREAK_POINTS.md && screenWidth < SCREEN_BREAK_POINTS.xl) {
35
- setSideNavState(undefined)
36
- } else if (screenWidth >= SCREEN_BREAK_POINTS.xl) {
37
-
38
- }
39
- }
40
-
41
- function handleHover(isHover: boolean) {
42
- let temporaryExpand = isHover ? true : undefined
43
-
44
- if (temporaryExpand) {
45
- mainLayout()?.setAttribute('data-side-nav-temporary-expand', temporaryExpand.toString())
46
- } else {
47
- mainLayout()?.removeAttribute('data-side-nav-temporary-expand')
48
- }
49
- }
50
-
51
- let globalContext = getGlobalContext()
52
-
53
- sideNavHref = sideNavHref || globalContext?.sideNavHref
54
- language = language || globalContext?.language
55
-
56
- let langPath = (language === 'en' || !language) ? '' : `/${language}`
57
-
58
- let langForCalculator = (language && CalculatorSupportedLanguage.includes(language)) ? language : 'en'
59
- let langPathForCalculator = (langForCalculator === 'en' || !langForCalculator) ? '' : `/${langForCalculator}`
60
-
61
- let langForConverter = (language && ConverterSupportedLanguage.includes(language)) ? language : 'en'
62
- let langPathForConverter = (langForConverter === 'en' || !langForConverter) ? '' : `/${langForConverter}`
63
-
64
- const NAV_ITEM: SideNavigationItem[] = items ?? [
65
- {
66
- href: `/calculator${langPathForCalculator}`,
67
- exactHref: '/calculator',
68
- icon: IconCalculator,
69
- title: m.text_calces_scientific_calculator(),
70
- },
71
- {
72
- href: `/convert${langPathForConverter}`,
73
- exactHref: '/convert',
74
- icon: IconTransform,
75
- title: m.text_unit_converter(),
76
- },
77
- {
78
- href: `/convert${langPathForConverter}/currency`,
79
- exactHref: '/convert/currency',
80
- icon: IconCoinConvert,
81
- title: m.text_currency_converter(),
82
- },
83
- {
84
- href: '/docs/calculator-usages/calces',
85
- icon: IconBook,
86
- title: m.text_calces_documentation(),
87
- },
88
- ]
89
-
90
- let selectedIndex = (() => {
91
- return NAV_ITEM.findIndex((item, index) => {
92
- return (item.exactHref ?? item.href) === sideNavHref;
93
- })
94
- })();
95
-
1
+ <script lang="ts">import { SCREEN_BREAK_POINTS, mainLayout, setSideNavState, toggleSideNavigation, getSideNavState } from "./SideNavigation";
2
+ import { clickOutside } from "../../actions/clickOutside";
3
+ import { Button } from "../button";
4
+ import { IconCoinConvert, IconHamburger } from "../icons";
5
+ import { BrandLogo } from "../brand-logo";
6
+ import SideNavItem from "./SideNavigationItem.svelte";
7
+ import IconBook from "../icons/IconBook.svelte";
8
+ import IconTransform from "../icons/IconTransform.svelte";
9
+ import IconCalculator from "../icons/IconCalculator.svelte";
10
+ import { m } from '../../paraglide/messages.js';
11
+ import { getGlobalContext } from "../tera-ui-context/global-context";
12
+ import { SupportedLanguage as CalculatorSupportedLanguage } from "../../tera-i18n/projects/tera-calculator/supported-language";
13
+ import { SupportedLanguage as ConverterSupportedLanguage } from "../../tera-i18n/projects/tera-converter/supported-language";
14
+ let { children, sideNavHref, language, items, bottomChildren, ...props } = $props();
15
+ function handleClickOutside() {
16
+ let screenWidth = Math.max(document.documentElement.clientWidth || 0, window.innerWidth || 0);
17
+ if (screenWidth < SCREEN_BREAK_POINTS.md) {
18
+ setSideNavState(undefined);
19
+ }
20
+ else if (screenWidth >= SCREEN_BREAK_POINTS.md && screenWidth < SCREEN_BREAK_POINTS.xl) {
21
+ setSideNavState(undefined);
22
+ }
23
+ else if (screenWidth >= SCREEN_BREAK_POINTS.xl) {
24
+ }
25
+ }
26
+ function handleHover(isHover) {
27
+ let temporaryExpand = isHover ? true : undefined;
28
+ if (temporaryExpand) {
29
+ mainLayout()?.setAttribute('data-side-nav-temporary-expand', temporaryExpand.toString());
30
+ }
31
+ else {
32
+ mainLayout()?.removeAttribute('data-side-nav-temporary-expand');
33
+ }
34
+ }
35
+ let globalContext = getGlobalContext();
36
+ const resolvedSideNavHref = $derived(sideNavHref || globalContext?.sideNavHref);
37
+ const resolvedLanguage = $derived(language || globalContext?.language || 'en');
38
+ const langPath = $derived((resolvedLanguage === 'en') ? '' : `/${resolvedLanguage}`);
39
+ const langForCalculator = $derived((resolvedLanguage && CalculatorSupportedLanguage.includes(resolvedLanguage)) ? resolvedLanguage : 'en');
40
+ const langPathForCalculator = $derived((langForCalculator === 'en') ? '' : `/${langForCalculator}`);
41
+ const langForConverter = $derived((resolvedLanguage && ConverterSupportedLanguage.includes(resolvedLanguage)) ? resolvedLanguage : 'en');
42
+ const langPathForConverter = $derived((langForConverter === 'en') ? '' : `/${langForConverter}`);
43
+ const NAV_ITEM = $derived(items ?? [
44
+ {
45
+ href: `/calculator${langPathForCalculator}`,
46
+ exactHref: '/calculator',
47
+ icon: IconCalculator,
48
+ title: m.text_calces_scientific_calculator(),
49
+ },
50
+ {
51
+ href: `/convert${langPathForConverter}`,
52
+ exactHref: '/convert',
53
+ icon: IconTransform,
54
+ title: m.text_unit_converter(),
55
+ },
56
+ {
57
+ href: `/convert${langPathForConverter}/currency`,
58
+ exactHref: '/convert/currency',
59
+ icon: IconCoinConvert,
60
+ title: m.text_currency_converter(),
61
+ },
62
+ {
63
+ href: '/docs/calculator-usages/calces',
64
+ icon: IconBook,
65
+ title: m.text_calces_documentation(),
66
+ },
67
+ ]);
68
+ let selectedIndex = (() => {
69
+ return NAV_ITEM.findIndex((item) => {
70
+ return (item.exactHref ?? item.href) === resolvedSideNavHref;
71
+ });
72
+ })();
96
73
  </script>
97
74
 
98
75
  <nav class="side-nav_main-side-bar grid grid-rows-[auto_1fr_auto]"
@@ -118,7 +95,7 @@
118
95
  handleHover(false)
119
96
  }}
120
97
  >
121
- {#each NAV_ITEM as item, index}
98
+ {#each NAV_ITEM as item, index (item.href)}
122
99
  <SideNavItem href={item.href} class={selectedIndex === index ? 'selected' : ''}>
123
100
  {#snippet icon()}
124
101
  <item.icon/>
@@ -1,5 +1,5 @@
1
- <script lang="ts">
2
- const {class: className, href, children, icon} = $props()
1
+ <script lang="ts">"use strict";
2
+ const { class: className, href, children, icon } = $props();
3
3
  </script>
4
4
 
5
5
  <li class="{className + ' side-nav_item'}">
@@ -1,8 +1,6 @@
1
- <script lang="ts">
2
- import {SideNavigation} from "./";
3
- import './sidenav.scss'
4
-
5
- let {children, language, items, bottomChildren} = $props()
1
+ <script lang="ts">import { SideNavigation } from "./";
2
+ import './sidenav.scss';
3
+ let { children, language, items, bottomChildren } = $props();
6
4
  </script>
7
5
 
8
6
  <main
@@ -85,7 +85,7 @@
85
85
  }
86
86
  }
87
87
 
88
- @media (min-width: theme(--breakpoint-md)) {
88
+ @media (min-width: 48rem) {
89
89
  :root {
90
90
  --sidebar-main-margin-left: 3rem;
91
91
  --sidebar-border-width: 1px;
@@ -93,7 +93,7 @@
93
93
  }
94
94
  }
95
95
 
96
- @media (min-width: theme(--breakpoint-xl)) {
96
+ @media (min-width: 80rem) {
97
97
  :root {
98
98
  --sidebar-main-margin-left: var(--sidebar-width);
99
99
  --sidebar-width: 16.5rem;
@@ -121,6 +121,8 @@
121
121
 
122
122
  .side-nav_item {
123
123
  color: var(--color-neutral-token-13);
124
+ position: relative;
125
+ transition: background-color 150ms var(--ease-ui);
124
126
 
125
127
  a {
126
128
  display: flex;
@@ -139,23 +141,25 @@
139
141
  }
140
142
  }
141
143
 
142
- &.selected a {
143
- color: var(--color-neutral-token-1);
144
- }
145
-
144
+ /* Active item: 3px left accent bar */
146
145
  &.selected {
147
- a::after {
146
+ a {
147
+ color: var(--color-text-primary);
148
+ }
149
+
150
+ &::before {
148
151
  content: '';
149
152
  position: absolute;
150
- inset-inline: 0.25rem;
151
- inset-block: 0.2rem;
152
- background: var(--color-neutral-token-11);
153
- border-radius: var(--radius-sm);
154
- z-index: 0;
153
+ left: 0;
154
+ top: 0.25rem;
155
+ bottom: 0.25rem;
156
+ width: 3px;
157
+ background: var(--color-interactive);
158
+ border-radius: 0 2px 2px 0;
155
159
  }
156
160
  }
157
161
 
158
162
  &:hover {
159
- background-color: var(--color-neutral-token-3);
163
+ background-color: var(--color-surface-hover);
160
164
  }
161
165
  }
@@ -0,0 +1,48 @@
1
+ <script lang="ts">"use strict";
2
+ let { variant = 'line', width, height, lines = 1, animate = true, class: className = '', } = $props();
3
+ </script>
4
+
5
+ <div
6
+ aria-label="Loading..."
7
+ aria-busy="true"
8
+ class={className}
9
+ >
10
+ {#if variant === 'circle'}
11
+ <div
12
+ class="rounded-full {animate ? 'skeleton-shimmer' : 'bg-surface-hover'}"
13
+ style="width:{width ?? '48px'};height:{height ?? width ?? '48px'}"
14
+ ></div>
15
+ {:else if variant === 'rect'}
16
+ <div
17
+ class="rounded {animate ? 'skeleton-shimmer' : 'bg-surface-hover'}"
18
+ style="width:{width ?? '100%'};height:{height ?? '120px'}"
19
+ ></div>
20
+ {:else}
21
+ <div class="flex flex-col gap-2" style="width:{width ?? '100%'}">
22
+ {#each Array(lines) as _, i (i)}
23
+ <div
24
+ class="h-3 rounded-full {animate ? 'skeleton-shimmer' : 'bg-surface-hover'}"
25
+ style={i === lines - 1 && lines > 1 ? 'width:70%' : 'width:100%'}
26
+ ></div>
27
+ {/each}
28
+ </div>
29
+ {/if}
30
+ </div>
31
+
32
+ <style>
33
+ .skeleton-shimmer {
34
+ background: linear-gradient(
35
+ 90deg,
36
+ var(--color-surface-hover) 25%,
37
+ var(--color-surface-sunken) 50%,
38
+ var(--color-surface-hover) 75%
39
+ );
40
+ background-size: 200% 100%;
41
+ animation: shimmer 1.5s infinite;
42
+ }
43
+
44
+ @keyframes shimmer {
45
+ 0% { background-position: 200% 0; }
46
+ 100% { background-position: -200% 0; }
47
+ }
48
+ </style>
@@ -0,0 +1,12 @@
1
+ type SkeletonVariant = 'line' | 'circle' | 'rect';
2
+ type $$ComponentProps = {
3
+ variant?: SkeletonVariant;
4
+ width?: string;
5
+ height?: string;
6
+ lines?: number;
7
+ animate?: boolean;
8
+ class?: string;
9
+ };
10
+ declare const Skeleton: import("svelte").Component<$$ComponentProps, {}, "">;
11
+ type Skeleton = ReturnType<typeof Skeleton>;
12
+ export default Skeleton;
@@ -0,0 +1 @@
1
+ export { default as Skeleton } from './Skeleton.svelte';
@@ -0,0 +1 @@
1
+ export { default as Skeleton } from './Skeleton.svelte';
@@ -1,18 +1,28 @@
1
- import { type VariantProps } from "tailwind-variants";
2
- import type { Snippet } from "svelte";
3
- import type { HTMLAttributes } from "svelte/elements";
4
- export declare const styles: import("tailwind-variants").TVReturnType<{}, undefined, "", {}, undefined, import("tailwind-variants").TVReturnType<{}, undefined, "", unknown, unknown, undefined>>;
5
- type SliderVariants = VariantProps<typeof styles>;
6
- export interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onchange'>, SliderVariants {
7
- children?: Snippet;
1
+ export interface SliderProps {
2
+ /** Additional CSS classes for the root element. */
8
3
  class?: string;
9
- min: number;
10
- max: number;
11
- step: number;
12
- value: number;
13
- showTicks?: boolean;
4
+ /** Minimum value of the slider range. */
5
+ min?: number;
6
+ /** Maximum value of the slider range. */
7
+ max?: number;
8
+ /** Step interval between selectable values. */
9
+ step?: number;
10
+ /** Current value. Bindable. */
11
+ value?: number;
12
+ /** Prevents all interaction and dims the control. */
13
+ disabled?: boolean;
14
+ /**
15
+ * Layout orientation of the slider track and thumb.
16
+ * When 'vertical', the parent must have an explicit height.
17
+ */
18
+ orientation?: 'horizontal' | 'vertical';
19
+ /** Fires continuously as the thumb moves during drag. */
14
20
  onchange?: (value: number) => void;
15
- ref?: HTMLDivElement | null;
21
+ /**
22
+ * Fires once when the user finishes dragging and releases the thumb.
23
+ * Prefer this over `onchange` when the handler triggers expensive work.
24
+ */
25
+ onValueCommit?: (value: number) => void;
26
+ /** Bindable reference to the root span element. */
27
+ ref?: HTMLElement | null;
16
28
  }
17
- export type SliderContextProps = {};
18
- export {};
@@ -1,7 +1 @@
1
- import { tv } from "tailwind-variants";
2
- export const styles = tv({
3
- base: '',
4
- variants: {},
5
- compoundVariants: [],
6
- defaultVariants: {},
7
- });
1
+ export {};