@rimelight/ui 0.0.32 → 0.0.33

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 (383) hide show
  1. package/README.md +157 -30
  2. package/package.json +105 -108
  3. package/src/components/TableOfContents.astro +44 -43
  4. package/src/components/astro/RLA3dHover.astro +22 -18
  5. package/src/components/astro/RLAAlert.astro +93 -62
  6. package/src/components/astro/RLAApp.astro +22 -18
  7. package/src/components/astro/RLAAspectRatio.astro +27 -23
  8. package/src/components/astro/RLAAudio.astro +22 -18
  9. package/src/components/astro/RLAAvatar.astro +68 -56
  10. package/src/components/astro/RLAAvatarGroup.astro +23 -19
  11. package/src/components/astro/RLABadge.astro +34 -33
  12. package/src/components/astro/RLABanner.astro +22 -18
  13. package/src/components/astro/RLABlogPost.astro +7 -0
  14. package/src/components/astro/RLABlogPosts.astro +9 -0
  15. package/src/components/astro/RLABreadcrumb.astro +48 -44
  16. package/src/components/astro/RLABrowserMockup.astro +22 -18
  17. package/src/components/astro/RLAButton.astro +51 -2
  18. package/src/components/astro/RLACalendar.astro +22 -18
  19. package/src/components/astro/RLACard.astro +78 -74
  20. package/src/components/astro/RLACarousel.astro +75 -71
  21. package/src/components/astro/RLAChangelog.astro +22 -18
  22. package/src/components/astro/RLAChat.astro +22 -18
  23. package/src/components/astro/RLAChatMessage.astro +22 -18
  24. package/src/components/astro/RLAChatMessages.astro +22 -18
  25. package/src/components/astro/RLAChatPalette.astro +22 -18
  26. package/src/components/astro/RLAChatPrompt.astro +22 -18
  27. package/src/components/astro/RLAChatPromptSubmit.astro +22 -18
  28. package/src/components/astro/RLAChatReasoning.astro +22 -18
  29. package/src/components/astro/RLAChatShimmer.astro +22 -18
  30. package/src/components/astro/RLAChatTool.astro +22 -18
  31. package/src/components/astro/RLAChip.astro +51 -20
  32. package/src/components/astro/RLAColorPicker.astro +22 -18
  33. package/src/components/astro/RLACommandPalette.astro +22 -18
  34. package/src/components/astro/RLACompare.astro +22 -18
  35. package/src/components/astro/RLAConfirm.astro +117 -86
  36. package/src/components/astro/RLAContainer.astro +22 -18
  37. package/src/components/astro/RLAContextMenu.astro +22 -18
  38. package/src/components/astro/RLADashboardGroup.astro +22 -18
  39. package/src/components/astro/RLADashboardNavbar.astro +22 -18
  40. package/src/components/astro/RLADashboardPanel.astro +22 -18
  41. package/src/components/astro/RLADashboardResizeHandle.astro +22 -18
  42. package/src/components/astro/RLADashboardSearch.astro +22 -18
  43. package/src/components/astro/RLADashboardSearchButton.astro +22 -18
  44. package/src/components/astro/RLADashboardSidebar.astro +22 -18
  45. package/src/components/astro/RLADashboardSidebarCollapse.astro +22 -18
  46. package/src/components/astro/RLADashboardSidebarToggle.astro +22 -18
  47. package/src/components/astro/RLADashboardToolbar.astro +22 -18
  48. package/src/components/astro/RLADock.astro +22 -18
  49. package/src/{plugins/starlightAddons/components/Gamepad.astro → components/astro/RLADocsGamepad.astro} +178 -180
  50. package/src/{plugins/starlightAddons/components/Keyboard.astro → components/astro/RLADocsKeyboard.astro} +1 -3
  51. package/src/{plugins/starlightAddons/PackageManagers.astro → components/astro/RLADocsPackageManagers.astro} +28 -14
  52. package/src/components/astro/RLADrawer.astro +78 -74
  53. package/src/components/astro/RLAEditor.astro +22 -18
  54. package/src/components/astro/RLAEmpty.astro +22 -18
  55. package/src/components/astro/RLAError.astro +22 -18
  56. package/src/components/astro/RLAFieldset.astro +22 -18
  57. package/src/components/astro/RLAFloatingAction.astro +22 -18
  58. package/src/components/astro/RLAFooter.astro +39 -35
  59. package/src/components/astro/RLAForm.astro +23 -19
  60. package/src/components/astro/RLAGallery.astro +22 -18
  61. package/src/components/astro/RLAGrid.astro +39 -0
  62. package/src/components/astro/RLAHead.astro +25 -9
  63. package/src/components/astro/RLAHeader.astro +59 -107
  64. package/src/components/astro/RLAHoverCard.astro +35 -31
  65. package/src/components/astro/RLAIcon.astro +31 -27
  66. package/src/components/astro/RLAImage.astro +209 -19
  67. package/src/components/astro/RLAInputDate.astro +22 -18
  68. package/src/components/astro/RLAInputNumber.astro +22 -18
  69. package/src/components/astro/RLAInputTags.astro +22 -18
  70. package/src/components/astro/RLAInputTime.astro +22 -18
  71. package/src/components/astro/RLAKbd.astro +32 -22
  72. package/src/components/astro/RLAKnob.astro +22 -18
  73. package/src/components/astro/RLALabel.astro +27 -23
  74. package/src/components/astro/RLALink.astro +22 -18
  75. package/src/components/astro/RLALinkGroup.astro +37 -18
  76. package/src/components/astro/RLAListbox.astro +22 -18
  77. package/src/components/astro/RLALocaleSelector.astro +5 -1
  78. package/src/components/astro/RLALogo.astro +90 -56
  79. package/src/components/astro/RLAMain.astro +8 -2
  80. package/src/components/astro/RLAMarquee.astro +36 -32
  81. package/src/components/astro/RLAMegamenu.astro +22 -18
  82. package/src/components/astro/RLAMeter.astro +22 -18
  83. package/src/components/astro/RLAModal.astro +99 -95
  84. package/src/components/astro/RLANavigationMenu.astro +137 -136
  85. package/src/components/astro/RLAPage.astro +22 -18
  86. package/src/components/astro/RLAPageAside.astro +22 -18
  87. package/src/components/astro/RLAPageBody.astro +22 -18
  88. package/src/components/astro/RLAPageHeader.astro +22 -18
  89. package/src/components/astro/RLAPageSection.astro +5 -1
  90. package/src/components/astro/RLAPagination.astro +98 -94
  91. package/src/components/astro/RLAPassword.astro +22 -18
  92. package/src/components/astro/RLAPhoneMockup.astro +22 -18
  93. package/src/components/astro/RLAPinInput.astro +23 -0
  94. package/src/components/astro/RLAPlaceholder.astro +45 -41
  95. package/src/components/astro/RLAPopover.astro +35 -31
  96. package/src/components/astro/RLAPost.astro +65 -19
  97. package/src/components/astro/RLAPosts.astro +23 -0
  98. package/src/components/astro/RLAPricingPlan.astro +22 -18
  99. package/src/components/astro/RLAPricingTable.astro +22 -18
  100. package/src/components/astro/RLAProse.astro +22 -18
  101. package/src/components/astro/RLAQrCode.astro +22 -18
  102. package/src/components/astro/RLARadioGroup.astro +22 -18
  103. package/src/components/astro/RLARating.astro +22 -18
  104. package/src/components/astro/RLASeparator.astro +78 -27
  105. package/src/components/astro/RLASidebar.astro +212 -135
  106. package/src/components/astro/RLASkeleton.astro +24 -20
  107. package/src/components/astro/RLASlideover.astro +76 -72
  108. package/src/components/astro/RLASpeedDial.astro +22 -18
  109. package/src/components/astro/RLASpoiler.astro +22 -18
  110. package/src/components/astro/RLAStepper.astro +22 -18
  111. package/src/components/astro/RLASteps.astro +71 -0
  112. package/src/components/astro/RLAStickySurface.astro +31 -27
  113. package/src/components/astro/RLATableOfContents.astro +22 -18
  114. package/src/components/astro/RLATabs.astro +133 -92
  115. package/src/components/astro/RLAThemeSelector.astro +5 -1
  116. package/src/components/astro/RLATimeline.astro +22 -18
  117. package/src/components/astro/RLATooltip.astro +35 -31
  118. package/src/components/astro/RLATour.astro +22 -18
  119. package/src/components/astro/RLATree.astro +22 -18
  120. package/src/components/astro/RLAUser.astro +22 -18
  121. package/src/components/astro/RLAVideo.astro +200 -196
  122. package/src/components/astro/RLAWatermark.astro +22 -18
  123. package/src/components/astro/RLAWindowMockup.astro +22 -18
  124. package/src/components/vue/RLVCheckbox.vue +68 -0
  125. package/src/components/vue/RLVForm.vue +44 -0
  126. package/src/components/vue/RLVFormField.vue +58 -0
  127. package/src/components/vue/RLVInput.vue +93 -0
  128. package/src/components/vue/RLVPost.vue +63 -0
  129. package/src/components/vue/RLVPosts.vue +21 -0
  130. package/src/components/vue/RLVSection.vue +5 -4
  131. package/src/components/vue/RLVToast.vue +68 -0
  132. package/src/components/vue/RLVToaster.vue +29 -0
  133. package/src/composables/index.ts +3 -1
  134. package/src/composables/useHeaderStore.ts +14 -0
  135. package/src/composables/useScrollToTop.ts +62 -62
  136. package/src/composables/useToast.ts +42 -0
  137. package/src/env.d.ts +0 -13
  138. package/src/integrations/ui.ts +40 -49
  139. package/src/plugins/index.ts +2 -5
  140. package/src/plugins/starlightDocsApi/index.ts +272 -265
  141. package/src/presets/defaults.ts +297 -285
  142. package/src/presets/index.ts +208 -108
  143. package/src/styles/index.css +160 -162
  144. package/src/themes/3d-hover.theme.ts +13 -10
  145. package/src/themes/accordion.theme.ts +13 -10
  146. package/src/themes/alert.theme.ts +125 -56
  147. package/src/themes/app.theme.ts +13 -10
  148. package/src/themes/aspect-ratio.theme.ts +10 -8
  149. package/src/themes/audio.theme.ts +13 -10
  150. package/src/themes/avatar-group.theme.ts +9 -7
  151. package/src/themes/avatar.theme.ts +84 -28
  152. package/src/themes/badge.theme.ts +163 -66
  153. package/src/themes/banner.theme.ts +13 -10
  154. package/src/themes/breadcrumb.theme.ts +14 -12
  155. package/src/themes/browser-mockup.theme.ts +13 -10
  156. package/src/themes/button.theme.ts +73 -66
  157. package/src/themes/calendar.theme.ts +13 -10
  158. package/src/themes/card.theme.ts +42 -34
  159. package/src/themes/carousel.theme.ts +30 -28
  160. package/src/themes/changelog.theme.ts +13 -10
  161. package/src/themes/chart.theme.ts +22 -21
  162. package/src/themes/chat-message.theme.ts +13 -10
  163. package/src/themes/chat-messages.theme.ts +13 -10
  164. package/src/themes/chat-palette.theme.ts +13 -10
  165. package/src/themes/chat-prompt-submit.theme.ts +13 -10
  166. package/src/themes/chat-prompt.theme.ts +13 -10
  167. package/src/themes/chat-reasoning.theme.ts +13 -10
  168. package/src/themes/chat-shimmer.theme.ts +13 -10
  169. package/src/themes/chat-tool.theme.ts +13 -10
  170. package/src/themes/chat.theme.ts +13 -10
  171. package/src/themes/checkbox.theme.ts +50 -48
  172. package/src/themes/chip.theme.ts +74 -16
  173. package/src/themes/color-picker.theme.ts +13 -10
  174. package/src/themes/command-palette.theme.ts +13 -10
  175. package/src/themes/compare.theme.ts +13 -10
  176. package/src/themes/confirm.theme.ts +48 -33
  177. package/src/themes/container.theme.ts +13 -10
  178. package/src/themes/context-menu.theme.ts +13 -10
  179. package/src/themes/dashboard-group.theme.ts +13 -10
  180. package/src/themes/dashboard-navbar.theme.ts +13 -10
  181. package/src/themes/dashboard-panel.theme.ts +13 -10
  182. package/src/themes/dashboard-resize-handle.theme.ts +13 -10
  183. package/src/themes/dashboard-search-button.theme.ts +13 -10
  184. package/src/themes/dashboard-search.theme.ts +13 -10
  185. package/src/themes/dashboard-sidebar-collapse.theme.ts +13 -10
  186. package/src/themes/dashboard-sidebar-toggle.theme.ts +13 -10
  187. package/src/themes/dashboard-sidebar.theme.ts +13 -10
  188. package/src/themes/dashboard-toolbar.theme.ts +13 -10
  189. package/src/themes/dock.theme.ts +13 -10
  190. package/src/themes/drawer.theme.ts +61 -44
  191. package/src/themes/dropdown-menu.theme.ts +29 -27
  192. package/src/themes/editor.theme.ts +13 -10
  193. package/src/themes/empty.theme.ts +13 -10
  194. package/src/themes/error.theme.ts +13 -10
  195. package/src/themes/field-group.theme.ts +24 -23
  196. package/src/themes/fieldset.theme.ts +13 -10
  197. package/src/themes/floating-action.theme.ts +13 -10
  198. package/src/themes/footer.theme.ts +30 -27
  199. package/src/themes/form.theme.ts +13 -10
  200. package/src/themes/gallery.theme.ts +13 -10
  201. package/src/themes/head.theme.ts +13 -10
  202. package/src/themes/header.theme.ts +46 -43
  203. package/src/themes/hover-card.theme.ts +25 -23
  204. package/src/themes/icon.theme.ts +23 -20
  205. package/src/themes/image.theme.ts +19 -10
  206. package/src/themes/input-date.theme.ts +13 -10
  207. package/src/themes/input-menu.theme.ts +35 -28
  208. package/src/themes/input-number.theme.ts +13 -10
  209. package/src/themes/input-tags.theme.ts +13 -10
  210. package/src/themes/input-time.theme.ts +13 -10
  211. package/src/themes/input.theme.ts +42 -41
  212. package/src/themes/kbd.theme.ts +89 -24
  213. package/src/themes/knob.theme.ts +13 -10
  214. package/src/themes/label.theme.ts +18 -16
  215. package/src/themes/link-group.theme.ts +32 -10
  216. package/src/themes/link.theme.ts +13 -10
  217. package/src/themes/listbox.theme.ts +13 -10
  218. package/src/themes/locale-selector.theme.ts +40 -41
  219. package/src/themes/logo.theme.ts +13 -10
  220. package/src/themes/main.theme.ts +7 -6
  221. package/src/themes/marquee.theme.ts +24 -22
  222. package/src/themes/megamenu.theme.ts +13 -10
  223. package/src/themes/meter.theme.ts +13 -10
  224. package/src/themes/modal.theme.ts +44 -32
  225. package/src/themes/navigation-menu.theme.ts +27 -19
  226. package/src/themes/page-aside.theme.ts +13 -10
  227. package/src/themes/page-body.theme.ts +13 -10
  228. package/src/themes/page-header.theme.ts +13 -10
  229. package/src/themes/page-section.theme.ts +187 -186
  230. package/src/themes/page.theme.ts +13 -10
  231. package/src/themes/pagination.theme.ts +24 -22
  232. package/src/themes/password.theme.ts +13 -10
  233. package/src/themes/phone-mockup.theme.ts +13 -10
  234. package/src/themes/pin-input.theme.ts +14 -0
  235. package/src/themes/placeholder.theme.ts +15 -12
  236. package/src/themes/popover.theme.ts +26 -24
  237. package/src/themes/post.theme.ts +33 -10
  238. package/src/themes/posts.theme.ts +13 -0
  239. package/src/themes/pricing-plan.theme.ts +13 -10
  240. package/src/themes/pricing-table.theme.ts +13 -10
  241. package/src/themes/progress.theme.ts +38 -37
  242. package/src/themes/prose.theme.ts +13 -10
  243. package/src/themes/qr-code.theme.ts +13 -10
  244. package/src/themes/quote.theme.ts +13 -10
  245. package/src/themes/radio-group.theme.ts +13 -10
  246. package/src/themes/rating.theme.ts +13 -10
  247. package/src/themes/scroll-area.theme.ts +26 -24
  248. package/src/themes/scroll-to-top.theme.ts +52 -50
  249. package/src/themes/select.theme.ts +29 -27
  250. package/src/themes/separator.theme.ts +147 -19
  251. package/src/themes/sidebar.theme.ts +38 -33
  252. package/src/themes/skeleton.theme.ts +21 -20
  253. package/src/themes/slideover.theme.ts +53 -37
  254. package/src/themes/slider.theme.ts +36 -34
  255. package/src/themes/speed-dial.theme.ts +13 -10
  256. package/src/themes/spinner.theme.ts +34 -35
  257. package/src/themes/splitter.theme.ts +23 -22
  258. package/src/themes/spoiler.theme.ts +13 -10
  259. package/src/themes/stepper.theme.ts +13 -10
  260. package/src/themes/sticky-surface.theme.ts +9 -7
  261. package/src/themes/switch.theme.ts +67 -65
  262. package/src/themes/table-of-contents.theme.ts +48 -10
  263. package/src/themes/tabs.theme.ts +52 -44
  264. package/src/themes/textarea.theme.ts +27 -26
  265. package/src/themes/theme-selector.theme.ts +9 -10
  266. package/src/themes/timeline.theme.ts +13 -10
  267. package/src/themes/toast.theme.ts +31 -25
  268. package/src/themes/tooltip.theme.ts +28 -27
  269. package/src/themes/tour.theme.ts +13 -10
  270. package/src/themes/tree.theme.ts +13 -10
  271. package/src/themes/user.theme.ts +13 -10
  272. package/src/themes/video.theme.ts +17 -14
  273. package/src/themes/watermark.theme.ts +13 -10
  274. package/src/themes/window-mockup.theme.ts +13 -10
  275. package/src/types/components/3d-hover.ts +11 -11
  276. package/src/types/components/app.ts +11 -11
  277. package/src/types/components/audio.ts +11 -11
  278. package/src/types/components/avatar-group.ts +9 -10
  279. package/src/types/components/avatar.ts +60 -35
  280. package/src/types/components/banner.ts +11 -11
  281. package/src/types/components/browser-mockup.ts +11 -11
  282. package/src/types/components/button.ts +81 -77
  283. package/src/types/components/calendar.ts +11 -11
  284. package/src/types/components/changelog.ts +11 -11
  285. package/src/types/components/chat-message.ts +11 -11
  286. package/src/types/components/chat-messages.ts +11 -11
  287. package/src/types/components/chat-palette.ts +11 -11
  288. package/src/types/components/chat-prompt-submit.ts +11 -11
  289. package/src/types/components/chat-prompt.ts +11 -11
  290. package/src/types/components/chat-reasoning.ts +11 -11
  291. package/src/types/components/chat-shimmer.ts +11 -11
  292. package/src/types/components/chat-tool.ts +11 -11
  293. package/src/types/components/chat.ts +11 -11
  294. package/src/types/components/chip.ts +17 -17
  295. package/src/types/components/color-picker.ts +11 -11
  296. package/src/types/components/command-palette.ts +11 -11
  297. package/src/types/components/compare.ts +11 -11
  298. package/src/types/components/container.ts +17 -11
  299. package/src/types/components/context-menu.ts +11 -11
  300. package/src/types/components/dashboard-group.ts +11 -11
  301. package/src/types/components/dashboard-navbar.ts +11 -11
  302. package/src/types/components/dashboard-panel.ts +11 -11
  303. package/src/types/components/dashboard-resize-handle.ts +11 -11
  304. package/src/types/components/dashboard-search-button.ts +11 -11
  305. package/src/types/components/dashboard-search.ts +11 -11
  306. package/src/types/components/dashboard-sidebar-collapse.ts +11 -11
  307. package/src/types/components/dashboard-sidebar-toggle.ts +11 -11
  308. package/src/types/components/dashboard-sidebar.ts +11 -11
  309. package/src/types/components/dashboard-toolbar.ts +11 -11
  310. package/src/types/components/dock.ts +11 -11
  311. package/src/types/components/editor.ts +11 -11
  312. package/src/types/components/empty.ts +11 -11
  313. package/src/types/components/error.ts +11 -11
  314. package/src/types/components/fieldset.ts +11 -11
  315. package/src/types/components/floating-action.ts +11 -11
  316. package/src/types/components/form.ts +19 -11
  317. package/src/types/components/gallery.ts +11 -11
  318. package/src/types/components/icon.ts +19 -20
  319. package/src/types/components/image.ts +27 -10
  320. package/src/types/components/index.ts +2 -1
  321. package/src/types/components/input-date.ts +11 -11
  322. package/src/types/components/input-menu.ts +43 -44
  323. package/src/types/components/input-number.ts +11 -11
  324. package/src/types/components/input-pin.ts +35 -11
  325. package/src/types/components/input-tags.ts +11 -11
  326. package/src/types/components/input-time.ts +11 -11
  327. package/src/types/components/knob.ts +11 -11
  328. package/src/types/components/link-group.ts +23 -11
  329. package/src/types/components/listbox.ts +11 -11
  330. package/src/types/components/locale-selector.ts +28 -28
  331. package/src/types/components/logo.ts +31 -27
  332. package/src/types/components/main.ts +15 -15
  333. package/src/types/components/megamenu.ts +11 -11
  334. package/src/types/components/meter.ts +11 -11
  335. package/src/types/components/modal.ts +39 -40
  336. package/src/types/components/navigation-menu.ts +54 -54
  337. package/src/types/components/page-aside.ts +11 -11
  338. package/src/types/components/page-body.ts +11 -11
  339. package/src/types/components/page-header.ts +11 -11
  340. package/src/types/components/page.ts +11 -11
  341. package/src/types/components/password.ts +11 -11
  342. package/src/types/components/phone-mockup.ts +5 -5
  343. package/src/types/components/pin-input.ts +11 -0
  344. package/src/types/components/popover.ts +23 -24
  345. package/src/types/components/post.ts +35 -11
  346. package/src/types/components/posts.ts +11 -0
  347. package/src/types/components/pricing-plan.ts +11 -11
  348. package/src/types/components/pricing-table.ts +11 -11
  349. package/src/types/components/progress.ts +33 -34
  350. package/src/types/components/prose.ts +11 -11
  351. package/src/types/components/qr-code.ts +11 -11
  352. package/src/types/components/radio-group.ts +11 -11
  353. package/src/types/components/rating.ts +11 -11
  354. package/src/types/components/scroll-area.ts +23 -24
  355. package/src/types/components/separator.ts +19 -20
  356. package/src/types/components/sidebar.ts +72 -37
  357. package/src/types/components/slideover.ts +31 -32
  358. package/src/types/components/speed-dial.ts +11 -11
  359. package/src/types/components/spinner.ts +25 -26
  360. package/src/types/components/splitter.ts +19 -20
  361. package/src/types/components/spoiler.ts +11 -11
  362. package/src/types/components/stepper.ts +11 -11
  363. package/src/types/components/sticky-surface.ts +19 -20
  364. package/src/types/components/switch.ts +41 -42
  365. package/src/types/components/table-of-contents.ts +17 -11
  366. package/src/types/components/theme-selector.ts +13 -13
  367. package/src/types/components/timeline.ts +11 -11
  368. package/src/types/components/tooltip.ts +23 -24
  369. package/src/types/components/tour.ts +11 -11
  370. package/src/types/components/tree.ts +11 -11
  371. package/src/types/components/user.ts +11 -11
  372. package/src/types/components/watermark.ts +11 -11
  373. package/src/types/components/window-mockup.ts +11 -11
  374. package/src/utils/docs.ts +189 -0
  375. package/src/utils/headerStack.ts +95 -88
  376. package/src/utils/index.ts +5 -4
  377. package/src/components/astro/RLAInputPin.astro +0 -19
  378. package/src/integrations/vue-entrypoint.ts +0 -6
  379. package/src/nuxt.ts +0 -125
  380. package/src/plugins/starlightAddons/PageTitle.astro +0 -113
  381. package/src/plugins/starlightAddons/index.ts +0 -58
  382. package/src/plugins/starlightAddons/starlight.d.ts +0 -6
  383. package/src/themes/input-pin.theme.ts +0 -10
@@ -1,43 +1,46 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export default defineTheme({
4
- slots: ["root", "content", "container", "left", "center", "right"],
5
- base: {
6
- root: "w-full",
7
- content: "w-full",
8
- container:
9
- "flex flex-row items-center justify-between gap-4xs h-16 md:h-18 px-4 md:px-6 lg:px-8",
10
- left: "flex flex-none items-center justify-start",
11
- center: "flex items-center justify-center",
12
- right: "flex flex-none items-center justify-end"
13
- },
14
- variants: {
15
- contain: {
16
- true: {
17
- container: "mx-auto max-w-7xl"
18
- },
19
- false: {
20
- container: "max-w-none"
21
- }
22
- },
23
- sticky: {
24
- true: {
25
- root: "sticky top-0 inset-x-0 z-50"
26
- },
27
- false: {
28
- root: "relative"
29
- }
30
- },
31
- fixed: {
32
- true: {
33
- root: "fixed left-0 right-0 transition-[top,opacity] duration-200 ease-in-out"
34
- },
35
- false: {}
36
- }
37
- },
38
- defaultVariants: {
39
- contain: true,
40
- sticky: true,
41
- fixed: false
42
- }
43
- })
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createHeaderTheme = () =>
4
+ defineTheme({
5
+ slots: ["root", "content", "container", "left", "center", "right"],
6
+ base: {
7
+ root: "w-full",
8
+ content: "w-full",
9
+ container:
10
+ "flex flex-row items-center justify-between gap-4xs h-16 md:h-18 px-4 md:px-6 lg:px-8",
11
+ left: "flex flex-none items-center justify-start",
12
+ center: "flex items-center justify-center",
13
+ right: "flex flex-none items-center justify-end"
14
+ },
15
+ variants: {
16
+ contain: {
17
+ true: {
18
+ container: "mx-auto max-w-7xl"
19
+ },
20
+ false: {
21
+ container: "max-w-none"
22
+ }
23
+ },
24
+ sticky: {
25
+ true: {
26
+ root: "sticky top-0 inset-x-0 z-50"
27
+ },
28
+ false: {
29
+ root: ""
30
+ }
31
+ },
32
+ fixed: {
33
+ true: {
34
+ root: "fixed left-0 right-0 transition-[top,opacity] duration-200 ease-in-out"
35
+ },
36
+ false: {}
37
+ }
38
+ },
39
+ defaultVariants: {
40
+ contain: true,
41
+ sticky: true,
42
+ fixed: false
43
+ }
44
+ })
45
+
46
+ export default createHeaderTheme()
@@ -1,27 +1,29 @@
1
+ import { defaultColors } from "../presets/defaults"
1
2
  import { defineTheme } from "../utils/defineTheme"
2
3
 
3
- export const hoverCardTheme = defineTheme({
4
- slots: ["root", "trigger", "content"],
5
- base: {
6
- root: "relative inline-block group/hover-card",
7
- trigger: "",
8
- content: [
9
- "absolute z-50 w-80 rounded-lg border border-border bg-card p-4 text-card-foreground shadow-md outline-none",
10
- "transition-all duration-200 invisible opacity-0 scale-95 origin-center pointer-events-none",
11
- "group-hover/hover-card:visible group-hover/hover-card:opacity-100 group-hover/hover-card:scale-100 group-hover/hover-card:pointer-events-auto"
12
- ]
13
- },
14
- variants: {
15
- placement: {
16
- top: { content: "bottom-full left-1/2 -translate-x-1/2 mb-2" },
17
- bottom: { content: "top-full left-1/2 -translate-x-1/2 mt-2" },
18
- left: { content: "right-full top-1/2 -translate-y-1/2 mr-2" },
19
- right: { content: "left-full top-1/2 -translate-y-1/2 ml-2" }
4
+ export const createHoverCardTheme = (colors: string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: ["root", "trigger", "content"],
7
+ base: {
8
+ root: "relative inline-block group/hover-card",
9
+ trigger: "",
10
+ content: [
11
+ "absolute z-50 w-80 rounded-lg border border-border bg-card p-4 text-card-foreground shadow-md outline-none",
12
+ "transition-all duration-200 invisible opacity-0 scale-95 origin-center pointer-events-none",
13
+ "group-hover/hover-card:visible group-hover/hover-card:opacity-100 group-hover/hover-card:scale-100 group-hover/hover-card:pointer-events-auto"
14
+ ]
15
+ },
16
+ variants: {
17
+ placement: {
18
+ top: { content: "bottom-full left-1/2 -translate-x-1/2 mb-2" },
19
+ bottom: { content: "top-full left-1/2 -translate-x-1/2 mt-2" },
20
+ left: { content: "right-full top-1/2 -translate-y-1/2 mr-2" },
21
+ right: { content: "left-full top-1/2 -translate-y-1/2 ml-2" }
22
+ }
23
+ },
24
+ defaultVariants: {
25
+ placement: "bottom"
20
26
  }
21
- },
22
- defaultVariants: {
23
- placement: "bottom"
24
- }
25
- })
27
+ })
26
28
 
27
- export default hoverCardTheme
29
+ export default createHoverCardTheme()
@@ -1,20 +1,23 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export default defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: ["inline-block", "align-middle"]
7
- },
8
- variants: {
9
- size: {
10
- xs: { root: ["h-3", "w-3"] },
11
- sm: { root: ["h-4", "w-4"] },
12
- md: { root: ["h-5", "w-5"] },
13
- lg: { root: ["h-6", "w-6"] },
14
- xl: { root: ["h-8", "w-8"] }
15
- }
16
- },
17
- defaultVariants: {
18
- size: "md"
19
- }
20
- })
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createIconTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ["inline-block", "align-middle"]
8
+ },
9
+ variants: {
10
+ size: {
11
+ xs: { root: ["h-3", "w-3"] },
12
+ sm: { root: ["h-4", "w-4"] },
13
+ md: { root: ["h-5", "w-5"] },
14
+ lg: { root: ["h-6", "w-6"] },
15
+ xl: { root: ["h-8", "w-8"] }
16
+ }
17
+ },
18
+ defaultVariants: {
19
+ size: "md"
20
+ }
21
+ })
22
+
23
+ export default createIconTheme()
@@ -1,10 +1,19 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export default defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: ""
7
- },
8
- variants: {},
9
- defaultVariants: {}
10
- })
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createImageTheme = () =>
4
+ defineTheme({
5
+ slots: ["root", "trigger", "dialog", "image", "fileInfo", "download", "closeButton"],
6
+ base: {
7
+ root: "relative inline-block group/image",
8
+ trigger: "cursor-pointer overflow-hidden rounded-lg block hover:scale-[1.02] active:scale-95 transition-transform duration-300",
9
+ dialog: "backdrop:bg-black/60 max-w-[98vw] sm:max-w-[95vw] w-fit max-h-[90vh] rounded-xl p-0 overflow-hidden border-0 m-auto",
10
+ image: "object-contain max-w-full max-h-[65vh] rounded-lg",
11
+ fileInfo: "flex items-center justify-between gap-xl px-4 pb-4 shrink-0",
12
+ download: "inline-flex items-center justify-center rounded-md font-medium transition-colors outline-none h-9 px-4 py-2 text-sm gap-2 text-primary-500 hover:bg-primary-500/10 active:bg-primary-500/10",
13
+ closeButton: "inline-flex items-center justify-center size-8 rounded-full bg-background/80 hover:bg-accent text-muted-foreground hover:text-foreground transition-colors"
14
+ },
15
+ variants: {},
16
+ defaultVariants: {}
17
+ })
18
+
19
+ export default createImageTheme()
@@ -1,10 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export default defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: ""
7
- },
8
- variants: {},
9
- defaultVariants: {}
10
- })
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createInputDateTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createInputDateTheme()
@@ -1,28 +1,35 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createInputMenuTheme = () =>
4
- defineTheme({
5
- slots: ["root", "label", "trigger", "input", "content", "item", "itemText", "itemIcon"],
6
- base: {
7
- root: "relative w-full flex flex-col gap-1.5",
8
- label: "text-sm font-medium text-foreground",
9
- trigger: "flex h-9 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm shadow-sm transition-all focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
10
- input: "flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-all placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
11
- content: "absolute z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md transition-all w-full mt-1 max-h-60 overflow-y-auto",
12
- item: "relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 px-2 text-sm outline-none hover:bg-accent hover:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
13
- itemText: "truncate",
14
- itemIcon: "ml-auto size-4"
15
- },
16
- variants: {
17
- size: {
18
- sm: { trigger: "h-8 px-2 text-xs", input: "h-8 text-xs", item: "py-1 px-1.5 text-xs" },
19
- md: { trigger: "h-9 px-3 text-sm", input: "h-9 text-sm", item: "py-1.5 px-2 text-sm" },
20
- lg: { trigger: "h-10 px-4 text-base", input: "h-10 text-base", item: "py-2 px-2.5 text-base" }
21
- }
22
- },
23
- defaultVariants: {
24
- size: "md"
25
- }
26
- })
27
-
28
- export default createInputMenuTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createInputMenuTheme = () =>
4
+ defineTheme({
5
+ slots: ["root", "label", "trigger", "input", "content", "item", "itemText", "itemIcon"],
6
+ base: {
7
+ root: "relative w-full flex flex-col gap-1.5",
8
+ label: "text-sm font-medium text-foreground",
9
+ trigger:
10
+ "flex h-9 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm shadow-sm transition-all focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
11
+ input:
12
+ "flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-all placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
13
+ content:
14
+ "absolute z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md transition-all w-full mt-1 max-h-60 overflow-y-auto",
15
+ item: "relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 px-2 text-sm outline-none hover:bg-accent hover:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
16
+ itemText: "truncate",
17
+ itemIcon: "ml-auto size-4"
18
+ },
19
+ variants: {
20
+ size: {
21
+ sm: { trigger: "h-8 px-2 text-xs", input: "h-8 text-xs", item: "py-1 px-1.5 text-xs" },
22
+ md: { trigger: "h-9 px-3 text-sm", input: "h-9 text-sm", item: "py-1.5 px-2 text-sm" },
23
+ lg: {
24
+ trigger: "h-10 px-4 text-base",
25
+ input: "h-10 text-base",
26
+ item: "py-2 px-2.5 text-base"
27
+ }
28
+ }
29
+ },
30
+ defaultVariants: {
31
+ size: "md"
32
+ }
33
+ })
34
+
35
+ export default createInputMenuTheme()
@@ -1,10 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export default defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: ""
7
- },
8
- variants: {},
9
- defaultVariants: {}
10
- })
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createInputNumberTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createInputNumberTheme()
@@ -1,10 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export default defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: ""
7
- },
8
- variants: {},
9
- defaultVariants: {}
10
- })
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createInputTagsTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createInputTagsTheme()
@@ -1,10 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export default defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: ""
7
- },
8
- variants: {},
9
- defaultVariants: {}
10
- })
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createInputTimeTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createInputTimeTheme()
@@ -1,41 +1,42 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const createInputTheme = () =>
4
- defineTheme({
5
- slots: ["root", "input", "leading", "trailing"],
6
- base: {
7
- root: "relative flex items-center w-full rounded-md border border-input bg-background shadow-sm focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2",
8
- input: "w-full bg-transparent px-3 py-1.5 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",
9
- leading: "absolute left-3 flex items-center justify-center text-muted-foreground",
10
- trailing: "absolute right-3 flex items-center justify-center text-muted-foreground"
11
- },
12
- variants: {
13
- size: {
14
- sm: { input: "py-1 text-xs", leading: "left-2.5", trailing: "right-2.5" },
15
- md: { input: "py-1.5 text-sm", leading: "left-3", trailing: "right-3" },
16
- lg: { input: "py-2 text-base", leading: "left-3.5", trailing: "right-3.5" }
17
- },
18
- hasLeading: {
19
- true: { input: "pl-9" }
20
- },
21
- hasTrailing: {
22
- true: { input: "pr-9" }
23
- },
24
- error: {
25
- true: { root: "border-error-500 focus-within:ring-error-500/50" }
26
- },
27
- theme: {
28
- flat: { root: "rl-flat" },
29
- light: { root: "rl-light" },
30
- dark: { root: "rl-dark" }
31
- }
32
- },
33
- defaultVariants: {
34
- size: "md",
35
- hasLeading: false,
36
- hasTrailing: false,
37
- error: false
38
- }
39
- })
40
-
41
- export default createInputTheme()
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createInputTheme = () =>
4
+ defineTheme({
5
+ slots: ["root", "input", "leading", "trailing"],
6
+ base: {
7
+ root: "relative flex items-center w-full rounded-md border border-input bg-background shadow-sm focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2",
8
+ input:
9
+ "w-full bg-transparent px-3 py-1.5 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",
10
+ leading: "absolute left-3 flex items-center justify-center text-muted-foreground",
11
+ trailing: "absolute right-3 flex items-center justify-center text-muted-foreground"
12
+ },
13
+ variants: {
14
+ size: {
15
+ sm: { input: "py-1 text-xs", leading: "left-2.5", trailing: "right-2.5" },
16
+ md: { input: "py-1.5 text-sm", leading: "left-3", trailing: "right-3" },
17
+ lg: { input: "py-2 text-base", leading: "left-3.5", trailing: "right-3.5" }
18
+ },
19
+ hasLeading: {
20
+ true: { input: "pl-9" }
21
+ },
22
+ hasTrailing: {
23
+ true: { input: "pr-9" }
24
+ },
25
+ error: {
26
+ true: { root: "border-error-500 focus-within:ring-error-500/50" }
27
+ },
28
+ theme: {
29
+ flat: { root: "rl-flat" },
30
+ light: { root: "rl-light" },
31
+ dark: { root: "rl-dark" }
32
+ }
33
+ },
34
+ defaultVariants: {
35
+ size: "md",
36
+ hasLeading: false,
37
+ hasTrailing: false,
38
+ error: false
39
+ }
40
+ })
41
+
42
+ export default createInputTheme()
@@ -1,24 +1,89 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export const kbdTheme = defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: [
7
- "inline-flex items-center justify-center font-sans font-medium select-none pointer-events-none rounded border border-border bg-muted",
8
- "shadow-[0_1px_0px_0px_rgba(0,0,0,0.1)] dark:shadow-[0_1px_0px_0px_rgba(255,255,255,0.05)]",
9
- "text-muted-foreground"
10
- ]
11
- },
12
- variants: {
13
- size: {
14
- sm: { root: "h-5 min-w-[20px] px-1 text-3xs" },
15
- md: { root: "h-6 min-w-[24px] px-1.5 text-2xs" },
16
- lg: { root: "h-7 min-w-[28px] px-2 text-xs" }
17
- }
18
- },
19
- defaultVariants: {
20
- size: "md"
21
- }
22
- })
23
-
24
- export default kbdTheme
1
+ import { defaultColors } from "../presets/defaults"
2
+ import { defineTheme } from "../utils/defineTheme"
3
+
4
+ export const createKbdTheme = (colors: string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: ["root"],
7
+ base: {
8
+ root: "inline-flex items-center justify-center px-1 rounded-sm font-medium font-sans uppercase"
9
+ },
10
+ variants: {
11
+ color: {
12
+ ...Object.fromEntries(colors.map((color) => [color, { root: "" }])),
13
+ neutral: { root: "" }
14
+ },
15
+ variant: {
16
+ solid: { root: "" },
17
+ outline: { root: "" },
18
+ soft: { root: "" },
19
+ subtle: { root: "" }
20
+ },
21
+ size: {
22
+ sm: { root: "h-4 min-w-[16px] text-[10px]" },
23
+ md: { root: "h-5 min-w-[20px] text-[11px]" },
24
+ lg: { root: "h-6 min-w-[24px] text-[12px]" }
25
+ },
26
+ theme: {
27
+ flat: { root: "rl-flat" },
28
+ light: { root: "rl-light" },
29
+ dark: { root: "rl-dark" }
30
+ }
31
+ },
32
+ compoundVariants: [
33
+ ...colors.map((color) => ({
34
+ variant: "solid" as const,
35
+ color,
36
+ classNames: {
37
+ root: "rl-color-" + color + " bg-[var(--rl-bg)] text-white"
38
+ }
39
+ })),
40
+ ...colors.map((color) => ({
41
+ variant: "outline" as const,
42
+ color,
43
+ classNames: {
44
+ root: "rl-color-" + color + " ring ring-inset ring-[var(--rl-border)]/50 text-[var(--rl-text)]"
45
+ }
46
+ })),
47
+ ...colors.map((color) => ({
48
+ variant: "soft" as const,
49
+ color,
50
+ classNames: {
51
+ root: "rl-color-" + color + " text-[var(--rl-text)] bg-[var(--rl-bg)]/10"
52
+ }
53
+ })),
54
+ ...colors.map((color) => ({
55
+ variant: "subtle" as const,
56
+ color,
57
+ classNames: {
58
+ root: "rl-color-" + color + " text-[var(--rl-text)] ring ring-inset ring-[var(--rl-border)]/25 bg-[var(--rl-bg)]/10"
59
+ }
60
+ })),
61
+ {
62
+ color: "neutral",
63
+ variant: "solid",
64
+ classNames: { root: "text-inverted bg-inverted" }
65
+ },
66
+ {
67
+ color: "neutral",
68
+ variant: "outline",
69
+ classNames: { root: "ring ring-inset ring-accented text-default bg-default" }
70
+ },
71
+ {
72
+ color: "neutral",
73
+ variant: "soft",
74
+ classNames: { root: "text-default bg-elevated" }
75
+ },
76
+ {
77
+ color: "neutral",
78
+ variant: "subtle",
79
+ classNames: { root: "ring ring-inset ring-accented text-default bg-elevated" }
80
+ }
81
+ ],
82
+ defaultVariants: {
83
+ variant: "outline",
84
+ color: "neutral",
85
+ size: "md"
86
+ }
87
+ })
88
+
89
+ export default createKbdTheme()
@@ -1,10 +1,13 @@
1
- import { defineTheme } from "../utils/defineTheme"
2
-
3
- export default defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: ""
7
- },
8
- variants: {},
9
- defaultVariants: {}
10
- })
1
+ import { defineTheme } from "../utils/defineTheme"
2
+
3
+ export const createKnobTheme = () =>
4
+ defineTheme({
5
+ slots: ["root"],
6
+ base: {
7
+ root: ""
8
+ },
9
+ variants: {},
10
+ defaultVariants: {}
11
+ })
12
+
13
+ export default createKnobTheme()
@@ -1,20 +1,22 @@
1
+ import { defaultColors } from "../presets/defaults"
1
2
  import { defineTheme } from "../utils/defineTheme"
2
3
 
3
- export const labelTheme = defineTheme({
4
- slots: ["root"],
5
- base: {
6
- root: "font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
7
- },
8
- variants: {
9
- size: {
10
- sm: { root: "text-xs" },
11
- md: { root: "text-sm" },
12
- lg: { root: "text-base" }
4
+ export const createLabelTheme = (colors: string[] = defaultColors) =>
5
+ defineTheme({
6
+ slots: ["root"],
7
+ base: {
8
+ root: "font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
9
+ },
10
+ variants: {
11
+ size: {
12
+ sm: { root: "text-xs" },
13
+ md: { root: "text-sm" },
14
+ lg: { root: "text-base" }
15
+ }
16
+ },
17
+ defaultVariants: {
18
+ size: "md"
13
19
  }
14
- },
15
- defaultVariants: {
16
- size: "md"
17
- }
18
- })
20
+ })
19
21
 
20
- export default labelTheme
22
+ export default createLabelTheme()