@rimelight/ui 0.0.33 → 0.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (389) hide show
  1. package/README.md +158 -157
  2. package/package.json +100 -105
  3. package/src/components/astro/RLAAccordion.astro +94 -18
  4. package/src/components/astro/RLAAspectRatio.astro +2 -2
  5. package/src/components/astro/RLAAvatar.astro +135 -68
  6. package/src/components/astro/RLABadge.astro +4 -2
  7. package/src/components/astro/RLABanner.astro +138 -23
  8. package/src/components/astro/RLABreadcrumb.astro +13 -0
  9. package/src/components/astro/RLAButton.astro +145 -139
  10. package/src/components/astro/RLACallout.astro +112 -0
  11. package/src/components/astro/RLACard.astro +6 -5
  12. package/src/components/astro/RLACarousel.astro +104 -75
  13. package/src/components/astro/RLAChart.astro +23 -35
  14. package/src/components/astro/RLAChip.astro +11 -5
  15. package/src/components/astro/RLACollapsible.astro +4 -1
  16. package/src/components/astro/RLAColorArea.astro +432 -0
  17. package/src/components/astro/RLAColorField.astro +300 -0
  18. package/src/components/astro/RLAColorSlider.astro +413 -0
  19. package/src/components/astro/RLAConfirm.astro +13 -11
  20. package/src/components/astro/RLACopyMarkdown.astro +78 -0
  21. package/src/components/astro/RLADate.astro +30 -0
  22. package/src/components/astro/RLADrawer.astro +50 -3
  23. package/src/components/astro/RLADropdownMenu.astro +78 -51
  24. package/src/components/astro/RLAFieldGroup.astro +4 -1
  25. package/src/components/astro/RLAFileUpload.astro +114 -100
  26. package/src/components/astro/RLAFooter.astro +2 -1
  27. package/src/components/astro/RLAFormField.astro +10 -6
  28. package/src/components/astro/RLAGrid.astro +31 -39
  29. package/src/components/astro/RLAHead.astro +528 -197
  30. package/src/components/astro/RLAHeader.astro +67 -59
  31. package/src/components/astro/RLAImage.astro +274 -209
  32. package/src/components/astro/RLAInput.astro +14 -9
  33. package/src/components/astro/RLAInputMenu.astro +119 -83
  34. package/src/components/astro/RLAKbd.astro +5 -5
  35. package/src/components/astro/RLALayoutGrid.astro +395 -0
  36. package/src/components/astro/RLALink.astro +44 -23
  37. package/src/components/astro/RLALinkGroup.astro +99 -37
  38. package/src/components/astro/RLALocaleSelector.astro +130 -113
  39. package/src/components/astro/RLALogo.astro +117 -90
  40. package/src/components/astro/RLAMain.astro +8 -3
  41. package/src/components/astro/RLAMarquee.astro +9 -2
  42. package/src/components/astro/RLAModal.astro +48 -18
  43. package/src/components/astro/RLANavigationMenu.astro +381 -137
  44. package/src/components/astro/{RLADocsPackageManagers.astro → RLAPackageManagers.astro} +81 -87
  45. package/src/components/astro/RLAPageSection.astro +4 -2
  46. package/src/components/astro/RLAPagination.astro +2 -4
  47. package/src/components/astro/RLAPopover.astro +4 -3
  48. package/src/components/astro/RLAPost.astro +11 -2
  49. package/src/components/astro/RLAProgress.astro +8 -2
  50. package/src/components/astro/RLAScrollArea.astro +4 -1
  51. package/src/components/astro/RLAScrollToTop.astro +200 -172
  52. package/src/components/astro/RLASearch.astro +282 -0
  53. package/src/components/astro/RLASelect.astro +101 -64
  54. package/src/components/astro/RLASeparator.astro +11 -6
  55. package/src/components/astro/RLAShare.astro +60 -0
  56. package/src/components/astro/RLAShortcuts.astro +429 -0
  57. package/src/components/astro/RLASidebar.astro +158 -212
  58. package/src/components/astro/RLASlideover.astro +99 -4
  59. package/src/components/astro/RLASlider.astro +14 -14
  60. package/src/components/astro/RLASplitter.astro +207 -142
  61. package/src/components/astro/RLASteps.astro +118 -71
  62. package/src/components/astro/RLAStickySurface.astro +9 -2
  63. package/src/components/astro/RLASurround.astro +39 -0
  64. package/src/components/astro/RLATable.astro +4 -1
  65. package/src/components/astro/RLATableOfContents.astro +109 -23
  66. package/src/components/astro/RLATabs.astro +147 -133
  67. package/src/components/astro/RLATextarea.astro +4 -1
  68. package/src/components/astro/RLAThemeSelector.astro +105 -76
  69. package/src/components/astro/RLAToast.astro +35 -21
  70. package/src/components/vue/RLVBanner.vue +230 -0
  71. package/src/components/vue/RLVButton.vue +3 -2
  72. package/src/components/vue/RLVCheckbox.vue +70 -68
  73. package/src/components/vue/RLVFooter.vue +3 -2
  74. package/src/components/vue/RLVForm.vue +44 -44
  75. package/src/components/vue/RLVFormField.vue +58 -58
  76. package/src/components/vue/RLVHeader.vue +3 -2
  77. package/src/components/vue/RLVIcon.vue +4 -2
  78. package/src/components/vue/RLVInput.vue +94 -93
  79. package/src/components/vue/RLVLogo.vue +25 -3
  80. package/src/components/vue/RLVPlaceholder.vue +3 -2
  81. package/src/components/vue/RLVPost.vue +69 -63
  82. package/src/components/vue/RLVPosts.vue +21 -21
  83. package/src/components/vue/RLVProgress.vue +60 -0
  84. package/src/components/vue/RLVScrollToTop.vue +65 -52
  85. package/src/components/vue/RLVSection.vue +14 -13
  86. package/src/components/vue/RLVToast.vue +81 -68
  87. package/src/components/vue/RLVToaster.vue +29 -29
  88. package/src/composables/index.ts +4 -3
  89. package/src/composables/useHeaderStore.ts +14 -14
  90. package/src/composables/useScrollToTop.ts +62 -62
  91. package/src/composables/useShortcuts.ts +11 -0
  92. package/src/composables/useToast.ts +43 -42
  93. package/src/config/index.ts +1 -0
  94. package/src/config/security.ts +227 -0
  95. package/src/config/site.config.ts +1 -0
  96. package/src/docs/components/ApiChangelog.astro +147 -0
  97. package/src/{plugins/starlightDocsApi → docs}/components/ApiEmits.astro +4 -4
  98. package/src/{plugins/starlightDocsApi → docs}/components/ApiProps.astro +4 -4
  99. package/src/{plugins/starlightDocsApi → docs}/components/ApiSlots.astro +4 -4
  100. package/src/docs/components/ApiTheme.astro +100 -0
  101. package/src/docs/extractAll.ts +94 -0
  102. package/src/docs/extractors/extractAstro.ts +69 -0
  103. package/src/docs/extractors/extractTheme.ts +56 -0
  104. package/src/{plugins/starlightDocsApi/extract-vue.ts → docs/extractors/extractVue.ts} +164 -15
  105. package/src/{plugins/starlightDocsApi → docs}/utils.ts +1 -2
  106. package/src/env.d.ts +0 -12
  107. package/src/integrations/ui.ts +215 -199
  108. package/src/middleware/security.ts +145 -29
  109. package/src/presets/defaults.ts +297 -297
  110. package/src/presets/index.ts +508 -637
  111. package/src/styles/index.css +158 -160
  112. package/src/themes/3d-hover.theme.ts +13 -13
  113. package/src/themes/accordion.theme.ts +39 -13
  114. package/src/themes/app.theme.ts +13 -13
  115. package/src/themes/aspect-ratio.theme.ts +1 -1
  116. package/src/themes/audio.theme.ts +13 -13
  117. package/src/themes/avatar-group.theme.ts +1 -1
  118. package/src/themes/avatar.theme.ts +84 -84
  119. package/src/themes/badge.theme.ts +168 -163
  120. package/src/themes/banner.theme.ts +49 -13
  121. package/src/themes/breadcrumb.theme.ts +1 -1
  122. package/src/themes/browser-mockup.theme.ts +13 -13
  123. package/src/themes/button.theme.ts +223 -202
  124. package/src/themes/calendar.theme.ts +13 -13
  125. package/src/themes/{alert.theme.ts → callout.theme.ts} +104 -125
  126. package/src/themes/card.theme.ts +50 -42
  127. package/src/themes/carousel.theme.ts +1 -1
  128. package/src/themes/chart.theme.ts +22 -22
  129. package/src/themes/chat-message.theme.ts +13 -13
  130. package/src/themes/chat-messages.theme.ts +13 -13
  131. package/src/themes/chat-palette.theme.ts +13 -13
  132. package/src/themes/chat-prompt-submit.theme.ts +13 -13
  133. package/src/themes/chat-prompt.theme.ts +13 -13
  134. package/src/themes/chat-reasoning.theme.ts +13 -13
  135. package/src/themes/chat-shimmer.theme.ts +13 -13
  136. package/src/themes/chat-tool.theme.ts +13 -13
  137. package/src/themes/chat.theme.ts +13 -13
  138. package/src/themes/checkbox.theme.ts +49 -50
  139. package/src/themes/chip.theme.ts +73 -74
  140. package/src/themes/color-area.theme.ts +33 -0
  141. package/src/themes/color-field.theme.ts +32 -0
  142. package/src/themes/color-picker.theme.ts +13 -13
  143. package/src/themes/color-slider.theme.ts +34 -0
  144. package/src/themes/command-palette.theme.ts +13 -13
  145. package/src/themes/compare.theme.ts +13 -13
  146. package/src/themes/confirm.theme.ts +48 -48
  147. package/src/themes/container.theme.ts +13 -13
  148. package/src/themes/context-menu.theme.ts +13 -13
  149. package/src/themes/dashboard-group.theme.ts +13 -13
  150. package/src/themes/dashboard-navbar.theme.ts +13 -13
  151. package/src/themes/dashboard-panel.theme.ts +13 -13
  152. package/src/themes/dashboard-resize-handle.theme.ts +13 -13
  153. package/src/themes/dashboard-search-button.theme.ts +13 -13
  154. package/src/themes/dashboard-search.theme.ts +13 -13
  155. package/src/themes/dashboard-sidebar-collapse.theme.ts +13 -13
  156. package/src/themes/dashboard-sidebar-toggle.theme.ts +13 -13
  157. package/src/themes/dashboard-sidebar.theme.ts +13 -13
  158. package/src/themes/dashboard-toolbar.theme.ts +13 -13
  159. package/src/themes/dock.theme.ts +13 -13
  160. package/src/themes/drawer.theme.ts +61 -61
  161. package/src/themes/dropdown-menu.theme.ts +29 -29
  162. package/src/themes/editor.theme.ts +13 -13
  163. package/src/themes/empty.theme.ts +13 -13
  164. package/src/themes/error.theme.ts +13 -13
  165. package/src/themes/field-group.theme.ts +24 -24
  166. package/src/themes/fieldset.theme.ts +13 -13
  167. package/src/themes/floating-action.theme.ts +13 -13
  168. package/src/themes/footer.theme.ts +30 -30
  169. package/src/themes/form.theme.ts +13 -13
  170. package/src/themes/gallery.theme.ts +13 -13
  171. package/src/themes/grid.theme.ts +38 -0
  172. package/src/themes/head.theme.ts +13 -13
  173. package/src/themes/header.theme.ts +46 -46
  174. package/src/themes/hover-card.theme.ts +1 -1
  175. package/src/themes/icon.theme.ts +23 -23
  176. package/src/themes/image.theme.ts +33 -19
  177. package/src/themes/input-date.theme.ts +13 -13
  178. package/src/themes/input-menu.theme.ts +35 -35
  179. package/src/themes/input-number.theme.ts +13 -13
  180. package/src/themes/input-tags.theme.ts +13 -13
  181. package/src/themes/input-time.theme.ts +13 -13
  182. package/src/themes/input.theme.ts +48 -42
  183. package/src/themes/kbd.theme.ts +94 -89
  184. package/src/themes/knob.theme.ts +13 -13
  185. package/src/themes/label.theme.ts +1 -1
  186. package/src/themes/layout-grid.theme.ts +16 -0
  187. package/src/themes/link-group.theme.ts +28 -32
  188. package/src/themes/link.theme.ts +13 -13
  189. package/src/themes/listbox.theme.ts +13 -13
  190. package/src/themes/locale-selector.theme.ts +49 -49
  191. package/src/themes/logo.theme.ts +13 -13
  192. package/src/themes/main.theme.ts +13 -13
  193. package/src/themes/marquee.theme.ts +1 -1
  194. package/src/themes/meter.theme.ts +13 -13
  195. package/src/themes/modal.theme.ts +1 -1
  196. package/src/themes/navigation-menu.theme.ts +44 -27
  197. package/src/themes/page-aside.theme.ts +13 -13
  198. package/src/themes/page-body.theme.ts +13 -13
  199. package/src/themes/page-header.theme.ts +13 -13
  200. package/src/themes/page-section.theme.ts +189 -187
  201. package/src/themes/page.theme.ts +13 -13
  202. package/src/themes/pagination.theme.ts +1 -1
  203. package/src/themes/password.theme.ts +13 -13
  204. package/src/themes/phone-mockup.theme.ts +13 -13
  205. package/src/themes/pin-input.theme.ts +1 -1
  206. package/src/themes/placeholder.theme.ts +15 -15
  207. package/src/themes/popover.theme.ts +1 -1
  208. package/src/themes/post.theme.ts +53 -33
  209. package/src/themes/pricing-plan.theme.ts +13 -13
  210. package/src/themes/pricing-table.theme.ts +13 -13
  211. package/src/themes/progress.theme.ts +37 -38
  212. package/src/themes/prose.theme.ts +13 -13
  213. package/src/themes/qr-code.theme.ts +13 -13
  214. package/src/themes/quote.theme.ts +13 -13
  215. package/src/themes/radio-group.theme.ts +13 -13
  216. package/src/themes/rating.theme.ts +13 -13
  217. package/src/themes/scroll-area.theme.ts +26 -26
  218. package/src/themes/scroll-to-top.theme.ts +51 -52
  219. package/src/themes/search.theme.ts +64 -0
  220. package/src/themes/select.theme.ts +29 -29
  221. package/src/themes/separator.theme.ts +147 -147
  222. package/src/themes/sidebar.theme.ts +38 -38
  223. package/src/themes/skeleton.theme.ts +21 -21
  224. package/src/themes/slideover.theme.ts +5 -5
  225. package/src/themes/slider.theme.ts +35 -36
  226. package/src/themes/speed-dial.theme.ts +13 -13
  227. package/src/themes/spinner.theme.ts +33 -34
  228. package/src/themes/splitter.theme.ts +23 -23
  229. package/src/themes/spoiler.theme.ts +13 -13
  230. package/src/themes/stepper.theme.ts +13 -13
  231. package/src/themes/{megamenu.theme.ts → steps.theme.ts} +13 -13
  232. package/src/themes/sticky-surface.theme.ts +1 -1
  233. package/src/themes/switch.theme.ts +66 -67
  234. package/src/themes/table-of-contents.theme.ts +67 -48
  235. package/src/themes/tabs.theme.ts +52 -52
  236. package/src/themes/textarea.theme.ts +27 -27
  237. package/src/themes/theme-selector.theme.ts +15 -15
  238. package/src/themes/timeline.theme.ts +18 -13
  239. package/src/themes/toast.theme.ts +31 -31
  240. package/src/themes/tooltip.theme.ts +28 -28
  241. package/src/themes/tour.theme.ts +13 -13
  242. package/src/themes/tree.theme.ts +13 -13
  243. package/src/themes/user.theme.ts +13 -13
  244. package/src/themes/video.theme.ts +17 -17
  245. package/src/themes/watermark.theme.ts +13 -13
  246. package/src/themes/window-mockup.theme.ts +13 -13
  247. package/src/types/components/3d-hover.ts +11 -11
  248. package/src/types/components/accordion.ts +35 -2
  249. package/src/types/components/app.ts +11 -11
  250. package/src/types/components/audio.ts +11 -11
  251. package/src/types/components/avatar-group.ts +11 -11
  252. package/src/types/components/avatar.ts +76 -60
  253. package/src/types/components/badge.ts +2 -2
  254. package/src/types/components/banner.ts +53 -11
  255. package/src/types/components/browser-mockup.ts +11 -11
  256. package/src/types/components/button.ts +73 -81
  257. package/src/types/components/calendar.ts +11 -11
  258. package/src/types/components/{alert.ts → callout.ts} +8 -8
  259. package/src/types/components/changelog.ts +11 -11
  260. package/src/types/components/chart.ts +2 -1
  261. package/src/types/components/chat-message.ts +11 -11
  262. package/src/types/components/chat-messages.ts +11 -11
  263. package/src/types/components/chat-palette.ts +11 -11
  264. package/src/types/components/chat-prompt-submit.ts +11 -11
  265. package/src/types/components/chat-prompt.ts +11 -11
  266. package/src/types/components/chat-reasoning.ts +11 -11
  267. package/src/types/components/chat-shimmer.ts +11 -11
  268. package/src/types/components/chat-tool.ts +11 -11
  269. package/src/types/components/chat.ts +11 -11
  270. package/src/types/components/checkbox.ts +2 -2
  271. package/src/types/components/chip.ts +17 -17
  272. package/src/types/components/collapsible.ts +2 -1
  273. package/src/types/components/color-area.ts +19 -0
  274. package/src/types/components/color-field.ts +21 -0
  275. package/src/types/components/color-picker.ts +11 -11
  276. package/src/types/components/color-slider.ts +20 -0
  277. package/src/types/components/command-palette.ts +11 -11
  278. package/src/types/components/compare.ts +11 -11
  279. package/src/types/components/container.ts +17 -17
  280. package/src/types/components/context-menu.ts +11 -11
  281. package/src/types/components/dashboard-group.ts +11 -11
  282. package/src/types/components/dashboard-navbar.ts +11 -11
  283. package/src/types/components/dashboard-panel.ts +11 -11
  284. package/src/types/components/dashboard-resize-handle.ts +11 -11
  285. package/src/types/components/dashboard-search-button.ts +11 -11
  286. package/src/types/components/dashboard-search.ts +11 -11
  287. package/src/types/components/dashboard-sidebar-collapse.ts +11 -11
  288. package/src/types/components/dashboard-sidebar-toggle.ts +11 -11
  289. package/src/types/components/dashboard-sidebar.ts +11 -11
  290. package/src/types/components/dashboard-toolbar.ts +11 -11
  291. package/src/types/components/dock.ts +11 -11
  292. package/src/types/components/dropdown-menu.ts +2 -1
  293. package/src/types/components/editor.ts +11 -11
  294. package/src/types/components/empty.ts +11 -11
  295. package/src/types/components/error.ts +11 -11
  296. package/src/types/components/fieldset.ts +11 -11
  297. package/src/types/components/file-upload.ts +2 -1
  298. package/src/types/components/floating-action.ts +11 -11
  299. package/src/types/components/form.ts +19 -19
  300. package/src/types/components/gallery.ts +11 -11
  301. package/src/types/components/grid.ts +23 -0
  302. package/src/types/components/icon.ts +19 -19
  303. package/src/types/components/image.ts +32 -28
  304. package/src/types/components/input-date.ts +11 -11
  305. package/src/types/components/input-menu.ts +44 -43
  306. package/src/types/components/input-number.ts +11 -11
  307. package/src/types/components/input-pin.ts +36 -35
  308. package/src/types/components/input-tags.ts +11 -11
  309. package/src/types/components/input-time.ts +11 -11
  310. package/src/types/components/input.ts +6 -2
  311. package/src/types/components/knob.ts +11 -11
  312. package/src/types/components/layout-grid.ts +145 -0
  313. package/src/types/components/link-group.ts +47 -23
  314. package/src/types/components/link.ts +19 -0
  315. package/src/types/components/listbox.ts +11 -11
  316. package/src/types/components/locale-selector.ts +33 -33
  317. package/src/types/components/logo.ts +32 -31
  318. package/src/types/components/main.ts +17 -17
  319. package/src/types/components/meter.ts +11 -11
  320. package/src/types/components/modal.ts +39 -39
  321. package/src/types/components/navigation-menu.ts +59 -54
  322. package/src/types/components/page-aside.ts +11 -11
  323. package/src/types/components/page-body.ts +11 -11
  324. package/src/types/components/page-header.ts +11 -11
  325. package/src/types/components/page.ts +11 -11
  326. package/src/types/components/password.ts +11 -11
  327. package/src/types/components/phone-mockup.ts +5 -5
  328. package/src/types/components/pin-input.ts +11 -11
  329. package/src/types/components/popover.ts +23 -23
  330. package/src/types/components/post.ts +47 -35
  331. package/src/types/components/pricing-plan.ts +11 -11
  332. package/src/types/components/pricing-table.ts +11 -11
  333. package/src/types/components/progress.ts +33 -33
  334. package/src/types/components/prose.ts +11 -11
  335. package/src/types/components/qr-code.ts +11 -11
  336. package/src/types/components/radio-group.ts +11 -11
  337. package/src/types/components/rating.ts +11 -11
  338. package/src/types/components/scroll-area.ts +23 -23
  339. package/src/types/components/scroll-to-top.ts +2 -2
  340. package/src/types/components/search.ts +29 -0
  341. package/src/types/components/select.ts +2 -1
  342. package/src/types/components/separator.ts +19 -19
  343. package/src/types/components/sidebar.ts +83 -72
  344. package/src/types/components/slideover.ts +31 -31
  345. package/src/types/components/slider.ts +2 -2
  346. package/src/types/components/speed-dial.ts +11 -11
  347. package/src/types/components/spinner.ts +25 -25
  348. package/src/types/components/splitter.ts +19 -19
  349. package/src/types/components/spoiler.ts +11 -11
  350. package/src/types/components/stepper.ts +11 -11
  351. package/src/types/components/{megamenu.ts → steps.ts} +17 -11
  352. package/src/types/components/sticky-surface.ts +19 -19
  353. package/src/types/components/switch.ts +41 -41
  354. package/src/types/components/table-of-contents.ts +39 -17
  355. package/src/types/components/tabs.ts +2 -1
  356. package/src/types/components/textarea.ts +2 -1
  357. package/src/types/components/theme-selector.ts +15 -15
  358. package/src/types/components/timeline.ts +11 -11
  359. package/src/types/components/toast.ts +6 -1
  360. package/src/types/components/tooltip.ts +23 -23
  361. package/src/types/components/tour.ts +11 -11
  362. package/src/types/components/tree.ts +11 -11
  363. package/src/types/components/user.ts +11 -11
  364. package/src/types/components/watermark.ts +11 -11
  365. package/src/types/components/window-mockup.ts +11 -11
  366. package/src/types/docs.ts +40 -0
  367. package/src/types/index.ts +151 -1
  368. package/src/types/theme.ts +11 -1
  369. package/src/utils/color.ts +165 -0
  370. package/src/utils/docs.ts +365 -189
  371. package/src/utils/headerStack.ts +115 -95
  372. package/src/utils/index.ts +7 -5
  373. package/src/utils/shortcuts.ts +322 -0
  374. package/src/components/TableOfContents.astro +0 -107
  375. package/src/components/astro/RLAAlert.astro +0 -93
  376. package/src/components/astro/RLABlogPost.astro +0 -7
  377. package/src/components/astro/RLABlogPosts.astro +0 -9
  378. package/src/components/astro/RLAChangelog.astro +0 -23
  379. package/src/components/astro/RLAMegamenu.astro +0 -23
  380. package/src/components/astro/RLAPosts.astro +0 -23
  381. package/src/plugins/index.ts +0 -2
  382. package/src/plugins/starlightDocsApi/components/ApiTheme.astro +0 -27
  383. package/src/plugins/starlightDocsApi/index.ts +0 -272
  384. package/src/styles/prism.css +0 -42
  385. package/src/themes/changelog.theme.ts +0 -13
  386. package/src/themes/posts.theme.ts +0 -13
  387. package/src/types/components/index.ts +0 -135
  388. package/src/types/components/posts.ts +0 -11
  389. /package/src/{plugins/starlightDocsApi → docs}/types.ts +0 -0
@@ -1,50 +1,49 @@
1
- import { defaultColors } from "../presets/defaults"
2
- import { defineTheme } from "../utils/defineTheme"
3
-
4
- export const createCheckboxTheme = (colors: string[] = defaultColors) =>
5
- defineTheme({
6
- slots: ["root", "input", "box", "indicator", "label"],
7
- base: {
8
- root: "inline-flex items-center gap-2 cursor-pointer select-none",
9
- input: "absolute opacity-0 size-0 pointer-events-none peer",
10
- box: [
11
- "size-4 shrink-0 rounded border border-border bg-background transition-all focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2",
12
- "peer-disabled:cursor-not-allowed peer-disabled:opacity-50"
13
- ],
14
- indicator:
15
- "flex items-center justify-center text-white scale-0 transition-transform duration-150",
16
- label: "text-sm text-foreground leading-none"
17
- },
18
- variants: {
19
- color: Object.fromEntries(
20
- colors.map((color) => [
21
- color,
22
- {
23
- root: "rl-color-" + color,
24
- box: `peer-checked:bg-[var(--rl-bg)] peer-checked:border-[var(--rl-border)] focus-within:ring-[var(--rl-ring)]/50`
25
- }
26
- ])
27
- ),
28
- size: {
29
- sm: { box: "size-3.5", label: "text-xs" },
30
- md: { box: "size-4", label: "text-sm" },
31
- lg: { box: "size-4.5", label: "text-base" }
32
- },
33
- checked: {
34
- true: { indicator: "scale-100" },
35
- false: { indicator: "scale-0" }
36
- },
37
- theme: {
38
- flat: { root: "rl-flat" },
39
- light: { root: "rl-light" },
40
- dark: { root: "rl-dark" }
41
- }
42
- },
43
- defaultVariants: {
44
- color: "primary",
45
- size: "md",
46
- checked: false
47
- }
48
- })
49
-
50
- export default createCheckboxTheme()
1
+ import { defaultColors } from "../presets/defaults"
2
+ import { defineTheme } from "../utils/defineTheme"
3
+
4
+ export const createCheckboxTheme = (colors: readonly string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: ["root", "input", "box", "indicator", "label"],
7
+ base: {
8
+ root: "inline-flex items-center gap-2 cursor-pointer select-none",
9
+ input: "absolute opacity-0 size-0 pointer-events-none peer",
10
+ box: [
11
+ "size-4 shrink-0 rounded border border-border bg-background transition-all focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2",
12
+ "peer-disabled:cursor-not-allowed peer-disabled:opacity-50"
13
+ ],
14
+ indicator:
15
+ "flex items-center justify-center text-white scale-0 transition-transform duration-150",
16
+ label: "text-sm text-foreground leading-none"
17
+ },
18
+ variants: {
19
+ color: Object.fromEntries(
20
+ colors.map((color) => [
21
+ color,
22
+ {
23
+ root: "rl-color-" + color,
24
+ box: `peer-checked:bg-[var(--rl-bg)] peer-checked:border-[var(--rl-border)] focus-within:ring-[var(--rl-ring)]/50`
25
+ }
26
+ ])
27
+ ),
28
+ size: {
29
+ sm: { box: "size-3.5", label: "text-xs" },
30
+ md: { box: "size-4", label: "text-sm" },
31
+ lg: { box: "size-4.5", label: "text-base" }
32
+ },
33
+ checked: {
34
+ true: { indicator: "scale-100" },
35
+ false: { indicator: "scale-0" }
36
+ },
37
+ theme: {
38
+ light: { root: "rl-light" },
39
+ dark: { root: "rl-dark" }
40
+ }
41
+ },
42
+ defaultVariants: {
43
+ color: "primary",
44
+ size: "md",
45
+ checked: false
46
+ }
47
+ })
48
+
49
+ export default createCheckboxTheme()
@@ -1,74 +1,73 @@
1
- import { defaultColors } from "../presets/defaults"
2
- import { defineTheme } from "../utils/defineTheme"
3
-
4
- export const createChipTheme = (colors: string[] = defaultColors) =>
5
- defineTheme({
6
- slots: ["root", "base"],
7
- base: {
8
- root: "relative inline-flex items-center justify-center shrink-0",
9
- base: "rounded-full ring ring-bg flex items-center justify-center text-inverted font-medium whitespace-nowrap"
10
- },
11
- variants: {
12
- color: {
13
- ...Object.fromEntries(colors.map((color) => [color, { base: `bg-${color}` }])),
14
- neutral: { base: "bg-inverted" }
15
- },
16
- size: {
17
- "3xs": { base: "h-[4px] min-w-[4px] text-[4px]" },
18
- "2xs": { base: "h-[5px] min-w-[5px] text-[5px]" },
19
- "xs": { base: "h-[6px] min-w-[6px] text-[6px]" },
20
- "sm": { base: "h-[7px] min-w-[7px] text-[7px]" },
21
- "md": { base: "h-[8px] min-w-[8px] text-[8px]" },
22
- "lg": { base: "h-[9px] min-w-[9px] text-[9px]" },
23
- "xl": { base: "h-[10px] min-w-[10px] text-[10px]" },
24
- "2xl": { base: "h-[11px] min-w-[11px] text-[11px]" },
25
- "3xl": { base: "h-[12px] min-w-[12px] text-[12px]" }
26
- },
27
- position: {
28
- "top-right": { base: "top-0 right-0" },
29
- "bottom-right": { base: "bottom-0 right-0" },
30
- "top-left": { base: "top-0 left-0" },
31
- "bottom-left": { base: "bottom-0 left-0" }
32
- },
33
- inset: {
34
- false: { base: "" }
35
- },
36
- standalone: {
37
- false: { base: "absolute" }
38
- },
39
- theme: {
40
- flat: { root: "rl-flat" },
41
- light: { root: "rl-light" },
42
- dark: { root: "rl-dark" }
43
- }
44
- },
45
- compoundVariants: [
46
- {
47
- position: "top-right",
48
- inset: false,
49
- classNames: { base: "-translate-y-1/2 translate-x-1/2 transform" }
50
- },
51
- {
52
- position: "bottom-right",
53
- inset: false,
54
- classNames: { base: "translate-y-1/2 translate-x-1/2 transform" }
55
- },
56
- {
57
- position: "top-left",
58
- inset: false,
59
- classNames: { base: "-translate-y-1/2 -translate-x-1/2 transform" }
60
- },
61
- {
62
- position: "bottom-left",
63
- inset: false,
64
- classNames: { base: "translate-y-1/2 -translate-x-1/2 transform" }
65
- }
66
- ],
67
- defaultVariants: {
68
- size: "md",
69
- color: "primary",
70
- position: "top-right"
71
- }
72
- })
73
-
74
- export default createChipTheme()
1
+ import { defaultColors } from "../presets/defaults"
2
+ import { defineTheme } from "../utils/defineTheme"
3
+
4
+ export const createChipTheme = (colors: readonly string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: ["root", "base"],
7
+ base: {
8
+ root: "relative inline-flex items-center justify-center shrink-0",
9
+ base: "rounded-full ring ring-bg flex items-center justify-center text-inverted font-medium whitespace-nowrap"
10
+ },
11
+ variants: {
12
+ color: {
13
+ ...Object.fromEntries(colors.map((color) => [color, { base: `bg-${color}` }])),
14
+ neutral: { base: "bg-inverted" }
15
+ } as Record<string, { base: string }>,
16
+ size: {
17
+ "3xs": { base: "h-[4px] min-w-[4px] text-[4px]" },
18
+ "2xs": { base: "h-[5px] min-w-[5px] text-[5px]" },
19
+ "xs": { base: "h-[6px] min-w-[6px] text-[6px]" },
20
+ "sm": { base: "h-[7px] min-w-[7px] text-[7px]" },
21
+ "md": { base: "h-[8px] min-w-[8px] text-[8px]" },
22
+ "lg": { base: "h-[9px] min-w-[9px] text-[9px]" },
23
+ "xl": { base: "h-[10px] min-w-[10px] text-[10px]" },
24
+ "2xl": { base: "h-[11px] min-w-[11px] text-[11px]" },
25
+ "3xl": { base: "h-[12px] min-w-[12px] text-[12px]" }
26
+ },
27
+ position: {
28
+ "top-right": { base: "top-0 right-0" },
29
+ "bottom-right": { base: "bottom-0 right-0" },
30
+ "top-left": { base: "top-0 left-0" },
31
+ "bottom-left": { base: "bottom-0 left-0" }
32
+ },
33
+ inset: {
34
+ false: { base: "" }
35
+ },
36
+ standalone: {
37
+ false: { base: "absolute" }
38
+ },
39
+ theme: {
40
+ light: { root: "rl-light" },
41
+ dark: { root: "rl-dark" }
42
+ }
43
+ },
44
+ compoundVariants: [
45
+ {
46
+ position: "top-right",
47
+ inset: false,
48
+ classNames: { base: "-translate-y-1/2 translate-x-1/2 transform" }
49
+ },
50
+ {
51
+ position: "bottom-right",
52
+ inset: false,
53
+ classNames: { base: "translate-y-1/2 translate-x-1/2 transform" }
54
+ },
55
+ {
56
+ position: "top-left",
57
+ inset: false,
58
+ classNames: { base: "-translate-y-1/2 -translate-x-1/2 transform" }
59
+ },
60
+ {
61
+ position: "bottom-left",
62
+ inset: false,
63
+ classNames: { base: "translate-y-1/2 -translate-x-1/2 transform" }
64
+ }
65
+ ],
66
+ defaultVariants: {
67
+ size: "md",
68
+ color: "primary",
69
+ position: "top-right"
70
+ }
71
+ })
72
+
73
+ export default createChipTheme()
@@ -0,0 +1,33 @@
1
+ import { defaultColors } from "../presets/defaults"
2
+ import { defineTheme } from "../utils/defineTheme"
3
+
4
+ export const createColorAreaTheme = (colors: readonly string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: ["root", "area", "thumb"],
7
+ base: {
8
+ root: "relative block touch-none select-none rounded-lg w-full aspect-square outline-none",
9
+ area: "relative w-full h-full rounded-lg cursor-crosshair bg-muted outline-none",
10
+ thumb:
11
+ "absolute block size-4 rounded-full border-2 border-white shadow-md -translate-x-1/2 -translate-y-1/2 cursor-grab active:cursor-grabbing focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"
12
+ },
13
+ variants: {
14
+ color: Object.fromEntries(
15
+ colors.map((color) => [
16
+ color,
17
+ {
18
+ root: "rl-color-" + color,
19
+ thumb: `focus-visible:ring-[var(--rl-ring)]/50`
20
+ }
21
+ ])
22
+ ),
23
+ theme: {
24
+ light: { root: "rl-light" },
25
+ dark: { root: "rl-dark" }
26
+ }
27
+ },
28
+ defaultVariants: {
29
+ color: "primary"
30
+ }
31
+ })
32
+
33
+ export default createColorAreaTheme()
@@ -0,0 +1,32 @@
1
+ import { defaultColors } from "../presets/defaults"
2
+ import { defineTheme } from "../utils/defineTheme"
3
+
4
+ export const createColorFieldTheme = (colors: readonly string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: ["root", "input"],
7
+ base: {
8
+ root: "relative flex items-center border border-border rounded-lg bg-background shadow-sm px-3 py-1.5 focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2",
9
+ input:
10
+ "w-full bg-transparent border-0 p-0 text-sm focus:outline-none focus:ring-0 text-foreground placeholder-muted-foreground"
11
+ },
12
+ variants: {
13
+ color: Object.fromEntries(
14
+ colors.map((color) => [
15
+ color,
16
+ {
17
+ root: "rl-color-" + color,
18
+ input: `focus:ring-0`
19
+ }
20
+ ])
21
+ ),
22
+ theme: {
23
+ light: { root: "rl-light" },
24
+ dark: { root: "rl-dark" }
25
+ }
26
+ },
27
+ defaultVariants: {
28
+ color: "primary"
29
+ }
30
+ })
31
+
32
+ export default createColorFieldTheme()
@@ -1,13 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createColorPickerTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createColorPickerTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createColorPickerTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createColorPickerTheme()
@@ -0,0 +1,34 @@
1
+ import { defaultColors } from "../presets/defaults"
2
+ import { defineTheme } from "../utils/defineTheme"
3
+
4
+ export const createColorSliderTheme = (colors: readonly string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: ["root", "track", "thumb"],
7
+ base: {
8
+ root: "relative flex w-full touch-none select-none items-center outline-none",
9
+ track:
10
+ "relative h-3 w-full grow rounded-full border border-border bg-muted cursor-pointer outline-none",
11
+ thumb:
12
+ "absolute block size-5 rounded-full border-2 border-white shadow-md cursor-grab active:cursor-grabbing focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"
13
+ },
14
+ variants: {
15
+ color: Object.fromEntries(
16
+ colors.map((color) => [
17
+ color,
18
+ {
19
+ root: "rl-color-" + color,
20
+ thumb: `focus-visible:ring-[var(--rl-ring)]/50`
21
+ }
22
+ ])
23
+ ),
24
+ theme: {
25
+ light: { root: "rl-light" },
26
+ dark: { root: "rl-dark" }
27
+ }
28
+ },
29
+ defaultVariants: {
30
+ color: "primary"
31
+ }
32
+ })
33
+
34
+ export default createColorSliderTheme()
@@ -1,13 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createCommandPaletteTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createCommandPaletteTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createCommandPaletteTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createCommandPaletteTheme()
@@ -1,13 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createCompareTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createCompareTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createCompareTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createCompareTheme()
@@ -1,48 +1,48 @@
1
- import { defaultColors } from "../presets/defaults"
2
- import { defineTheme } from "../utils/defineTheme"
3
-
4
- export const createConfirmTheme = (colors: string[] = defaultColors) =>
5
- defineTheme({
6
- slots: [
7
- "root",
8
- "trigger",
9
- "backdrop",
10
- "content",
11
- "header",
12
- "title",
13
- "description",
14
- "footer",
15
- "cancelButton",
16
- "actionButton"
17
- ],
18
- base: {
19
- root: "relative inline-block",
20
- trigger: "",
21
- backdrop: "fixed inset-0 z-50 bg-black/60 backdrop-blur-sm transition-all duration-300",
22
- content: [
23
- "fixed left-1/2 top-1/2 z-50 w-full max-w-md -translate-x-1/2 -translate-y-1/2 rounded-xl border border-border",
24
- "bg-background p-6 shadow-xl transition-all duration-300 outline-none",
25
- "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-1/2",
26
- "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-1/2"
27
- ],
28
- header: "flex flex-col gap-1.5 text-center sm:text-left mb-4",
29
- title: "text-lg font-semibold leading-none tracking-tight text-foreground",
30
- description: "text-sm text-muted-foreground leading-relaxed",
31
- footer: "flex flex-col-reverse sm:flex-row sm:justify-end gap-2 mt-6",
32
- cancelButton: "w-full sm:w-auto",
33
- actionButton: "w-full sm:w-auto"
34
- },
35
- variants: {
36
- variant: {
37
- default: { actionButton: "" },
38
- destructive: {
39
- actionButton: "bg-error-500 hover:bg-error-600 focus-visible:ring-error-500/50"
40
- }
41
- }
42
- },
43
- defaultVariants: {
44
- variant: "default"
45
- }
46
- })
47
-
48
- export default createConfirmTheme()
1
+ import { defaultColors } from "../presets/defaults"
2
+ import { defineTheme } from "../utils/defineTheme"
3
+
4
+ export const createConfirmTheme = (_colors: readonly string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: [
7
+ "root",
8
+ "trigger",
9
+ "backdrop",
10
+ "content",
11
+ "header",
12
+ "title",
13
+ "description",
14
+ "footer",
15
+ "cancelButton",
16
+ "actionButton"
17
+ ],
18
+ base: {
19
+ root: "relative inline-block",
20
+ trigger: "",
21
+ backdrop: "fixed inset-0 z-50 bg-black/60 backdrop-blur-sm transition-all duration-300",
22
+ content: [
23
+ "fixed left-1/2 top-1/2 z-50 w-full max-w-md -translate-x-1/2 -translate-y-1/2 rounded-xl border border-border",
24
+ "bg-background p-6 shadow-xl transition-all duration-300 outline-none",
25
+ "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-1/2",
26
+ "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-1/2"
27
+ ],
28
+ header: "flex flex-col gap-1.5 text-center sm:text-left mb-4",
29
+ title: "text-lg font-semibold leading-none tracking-tight text-foreground",
30
+ description: "text-sm text-muted-foreground leading-relaxed",
31
+ footer: "flex flex-col-reverse sm:flex-row sm:justify-end gap-2 mt-6",
32
+ cancelButton: "w-full sm:w-auto",
33
+ actionButton: "w-full sm:w-auto"
34
+ },
35
+ variants: {
36
+ variant: {
37
+ default: { actionButton: "" },
38
+ destructive: {
39
+ actionButton: "bg-error-500 hover:bg-error-600 focus-visible:ring-error-500/50"
40
+ }
41
+ }
42
+ },
43
+ defaultVariants: {
44
+ variant: "default"
45
+ }
46
+ })
47
+
48
+ export default createConfirmTheme()
@@ -1,13 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createContainerTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: "w-full max-w-(--rl-container) mx-auto px-4 sm:px-6 lg:px-8"
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createContainerTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createContainerTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: "w-full max-w-[var(--rl-container)] mx-auto px-xs sm:px-md md:px-xl lg:px-xl"
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createContainerTheme()
@@ -1,13 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createContextMenuTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createContextMenuTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createContextMenuTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createContextMenuTheme()
@@ -1,13 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createDashboardGroupTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createDashboardGroupTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createDashboardGroupTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createDashboardGroupTheme()
@@ -1,13 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createDashboardNavbarTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createDashboardNavbarTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createDashboardNavbarTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createDashboardNavbarTheme()