@rimelight/ui 0.0.42 → 0.0.43

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 (400) hide show
  1. package/README.md +4 -14
  2. package/package.json +20 -30
  3. package/src/components/3d-hover/3d-hover.theme.ts +9 -12
  4. package/src/components/3d-hover/RLA3dHover.astro +9 -20
  5. package/src/components/accordion/RLAAccordion.astro +5 -14
  6. package/src/components/accordion/accordion.theme.ts +34 -37
  7. package/src/components/app/RLAApp.astro +9 -20
  8. package/src/components/app/app.theme.ts +9 -12
  9. package/src/components/aspect-ratio/RLAAspectRatio.astro +19 -27
  10. package/src/components/aspect-ratio/aspect-ratio.theme.ts +8 -12
  11. package/src/components/audio/RLAAudio.astro +3 -14
  12. package/src/components/audio/audio.theme.ts +9 -12
  13. package/src/components/avatar/RLAAvatar.astro +9 -29
  14. package/src/components/avatar/avatar.theme.ts +66 -77
  15. package/src/components/avatar/avatar.ts +6 -11
  16. package/src/components/avatar-group/RLAAvatarGroup.astro +188 -23
  17. package/src/components/avatar-group/avatar-group.theme.ts +12 -11
  18. package/src/components/avatar-group/avatar-group.ts +41 -0
  19. package/src/components/badge/RLABadge.astro +23 -36
  20. package/src/components/badge/RLSBadge.tsx +41 -0
  21. package/src/components/badge/RLVBadge.vue +8 -16
  22. package/src/components/badge/badge.theme.ts +118 -160
  23. package/src/components/badge/badge.ts +2 -1
  24. package/src/components/banner/RLABanner.astro +88 -103
  25. package/src/components/banner/banner.theme.ts +40 -43
  26. package/src/components/breadcrumb/RLABreadcrumb.astro +241 -62
  27. package/src/components/breadcrumb/breadcrumb.theme.ts +12 -16
  28. package/src/components/breadcrumb/breadcrumb.ts +19 -0
  29. package/src/components/browser-mockup/RLABrowserMockup.astro +9 -20
  30. package/src/components/browser-mockup/browser-mockup.theme.ts +9 -12
  31. package/src/components/button/RLAButton.astro +10 -30
  32. package/src/components/button/RLSButton.tsx +169 -0
  33. package/src/components/button/RLVButton.vue +13 -26
  34. package/src/components/button/button.theme.ts +163 -220
  35. package/src/components/button/button.ts +1 -1
  36. package/src/components/calendar/RLACalendar.astro +9 -20
  37. package/src/components/calendar/calendar.theme.ts +9 -12
  38. package/src/components/callout/RLACallout.astro +5 -14
  39. package/src/components/callout/callout.theme.ts +59 -101
  40. package/src/components/callout/callout.ts +1 -1
  41. package/src/components/card/RLACard.astro +71 -77
  42. package/src/components/card/RLSCard.tsx +116 -0
  43. package/src/components/card/RLVCard.vue +6 -14
  44. package/src/components/card/card.theme.ts +41 -44
  45. package/src/components/carousel/RLACarousel.astro +43 -11
  46. package/src/components/carousel/carousel.theme.ts +28 -32
  47. package/src/components/chart/RLAChart.astro +5 -11
  48. package/src/components/chart/chart.theme.ts +18 -21
  49. package/src/components/chart/chart.ts +1 -1
  50. package/src/components/chat/RLAChat.astro +9 -20
  51. package/src/components/chat/chat.theme.ts +9 -12
  52. package/src/components/chat-message/RLAChatMessage.astro +9 -20
  53. package/src/components/chat-message/chat-message.theme.ts +9 -12
  54. package/src/components/chat-messages/RLAChatMessages.astro +9 -20
  55. package/src/components/chat-messages/chat-messages.theme.ts +9 -12
  56. package/src/components/chat-palette/RLAChatPalette.astro +9 -20
  57. package/src/components/chat-palette/chat-palette.theme.ts +9 -12
  58. package/src/components/chat-prompt/RLAChatPrompt.astro +9 -20
  59. package/src/components/chat-prompt/chat-prompt.theme.ts +9 -12
  60. package/src/components/chat-prompt-submit/RLAChatPromptSubmit.astro +9 -20
  61. package/src/components/chat-prompt-submit/chat-prompt-submit.theme.ts +9 -12
  62. package/src/components/chat-reasoning/RLAChatReasoning.astro +9 -20
  63. package/src/components/chat-reasoning/chat-reasoning.theme.ts +9 -12
  64. package/src/components/chat-shimmer/RLAChatShimmer.astro +9 -20
  65. package/src/components/chat-shimmer/chat-shimmer.theme.ts +9 -12
  66. package/src/components/chat-tool/RLAChatTool.astro +9 -20
  67. package/src/components/chat-tool/chat-tool.theme.ts +9 -12
  68. package/src/components/checkbox/RLACheckbox.astro +2 -17
  69. package/src/components/checkbox/RLSCheckbox.tsx +65 -0
  70. package/src/components/checkbox/checkbox.theme.ts +34 -45
  71. package/src/components/checkbox/checkbox.ts +1 -1
  72. package/src/components/chip/RLAChip.astro +32 -56
  73. package/src/components/chip/chip.theme.ts +66 -72
  74. package/src/components/chip/chip.ts +3 -1
  75. package/src/components/collapsible/RLACollapsible.astro +2 -12
  76. package/src/components/collapsible/collapsible.theme.ts +17 -20
  77. package/src/components/collapsible/collapsible.ts +1 -1
  78. package/src/components/color-area/RLAColorArea.astro +2 -13
  79. package/src/components/color-area/color-area.theme.ts +19 -31
  80. package/src/components/color-area/color-area.ts +1 -1
  81. package/src/components/color-field/RLAColorField.astro +3 -14
  82. package/src/components/color-field/color-field.theme.ts +18 -30
  83. package/src/components/color-field/color-field.ts +1 -1
  84. package/src/components/color-picker/RLAColorPicker.astro +9 -20
  85. package/src/components/color-picker/color-picker.theme.ts +9 -12
  86. package/src/components/color-slider/RLAColorSlider.astro +2 -13
  87. package/src/components/color-slider/color-slider.theme.ts +20 -32
  88. package/src/components/color-slider/color-slider.ts +1 -1
  89. package/src/components/command-palette/RLACommandPalette.astro +9 -20
  90. package/src/components/command-palette/command-palette.theme.ts +9 -12
  91. package/src/components/compare/RLACompare.astro +9 -20
  92. package/src/components/compare/compare.theme.ts +9 -12
  93. package/src/components/confirm/RLAConfirm.astro +114 -122
  94. package/src/components/confirm/confirm.theme.ts +40 -44
  95. package/src/components/confirm/confirm.ts +1 -0
  96. package/src/components/container/RLAContainer.astro +9 -20
  97. package/src/components/container/container.theme.ts +9 -12
  98. package/src/components/context-menu/RLAContextMenu.astro +9 -20
  99. package/src/components/context-menu/context-menu.theme.ts +9 -12
  100. package/src/components/dashboard-group/RLADashboardGroup.astro +17 -21
  101. package/src/components/dashboard-group/dashboard-group.theme.ts +9 -12
  102. package/src/components/dashboard-group/dashboard-group.ts +1 -6
  103. package/src/components/dashboard-navbar/RLADashboardNavbar.astro +61 -21
  104. package/src/components/dashboard-navbar/dashboard-navbar.theme.ts +26 -12
  105. package/src/components/dashboard-navbar/dashboard-navbar.ts +5 -6
  106. package/src/components/dashboard-panel/RLADashboardPanel.astro +25 -13
  107. package/src/components/dashboard-panel/dashboard-panel.theme.ts +22 -12
  108. package/src/components/dashboard-panel/dashboard-panel.ts +4 -6
  109. package/src/components/dashboard-resize-handle/RLADashboardResizeHandle.astro +21 -21
  110. package/src/components/dashboard-resize-handle/dashboard-resize-handle.theme.ts +9 -12
  111. package/src/components/dashboard-resize-handle/dashboard-resize-handle.ts +1 -6
  112. package/src/components/dashboard-search/RLADashboardSearch.astro +100 -21
  113. package/src/components/dashboard-search/dashboard-search.theme.ts +24 -11
  114. package/src/components/dashboard-search/dashboard-search.ts +2 -6
  115. package/src/components/dashboard-search-button/RLADashboardSearchButton.astro +45 -21
  116. package/src/components/dashboard-search-button/dashboard-search-button.theme.ts +20 -12
  117. package/src/components/dashboard-search-button/dashboard-search-button.ts +4 -6
  118. package/src/components/dashboard-sidebar/RLADashboardSidebar.astro +119 -21
  119. package/src/components/dashboard-sidebar/dashboard-sidebar.theme.ts +40 -11
  120. package/src/components/dashboard-sidebar/dashboard-sidebar.ts +8 -6
  121. package/src/components/dashboard-sidebar-collapse/RLADashboardSidebarCollapse.astro +24 -21
  122. package/src/components/dashboard-sidebar-collapse/dashboard-sidebar-collapse.theme.ts +16 -12
  123. package/src/components/dashboard-sidebar-collapse/dashboard-sidebar-collapse.ts +2 -6
  124. package/src/components/dashboard-sidebar-toggle/RLADashboardSidebarToggle.astro +23 -21
  125. package/src/components/dashboard-sidebar-toggle/dashboard-sidebar-toggle.theme.ts +16 -12
  126. package/src/components/dashboard-sidebar-toggle/dashboard-sidebar-toggle.ts +2 -6
  127. package/src/components/dashboard-toolbar/RLADashboardToolbar.astro +25 -21
  128. package/src/components/dashboard-toolbar/dashboard-toolbar.theme.ts +11 -12
  129. package/src/components/dashboard-toolbar/dashboard-toolbar.ts +1 -6
  130. package/src/components/dock/RLADock.astro +9 -20
  131. package/src/components/dock/dock.theme.ts +9 -12
  132. package/src/components/drawer/RLADrawer.astro +115 -126
  133. package/src/components/drawer/drawer.theme.ts +53 -57
  134. package/src/components/dropdown-menu/RLADropdownMenu.astro +180 -47
  135. package/src/components/dropdown-menu/RLSDropdownMenu.tsx +196 -0
  136. package/src/components/dropdown-menu/dropdown-menu.theme.ts +51 -27
  137. package/src/components/dropdown-menu/dropdown-menu.ts +47 -9
  138. package/src/components/editor/RLAEditor.astro +9 -20
  139. package/src/components/editor/blocks/AddBlockModal.vue +3 -3
  140. package/src/components/editor/blocks/Block.vue +4 -3
  141. package/src/components/editor/blocks/BlockEditor.vue +3 -3
  142. package/src/components/editor/blocks/BlockViewRenderer.vue +8 -2
  143. package/src/components/editor/blocks/editor/CalloutBlockEditor.vue +2 -2
  144. package/src/components/editor/blocks/editor/ParagraphBlockEditor.vue +1 -1
  145. package/src/components/editor/blocks/editor/SectionBlockEditor.vue +3 -3
  146. package/src/components/editor/blocks/renderer/CalloutBlockRenderer.vue +2 -3
  147. package/src/components/editor/blocks/renderer/SectionBlockRenderer.vue +2 -2
  148. package/src/components/editor/editor.theme.ts +9 -12
  149. package/src/components/empty/RLAEmpty.astro +86 -20
  150. package/src/components/empty/empty.theme.ts +79 -11
  151. package/src/components/empty/empty.ts +59 -2
  152. package/src/components/error/RLAError.astro +9 -20
  153. package/src/components/error/error.theme.ts +9 -12
  154. package/src/components/field-group/RLAFieldGroup.astro +2 -11
  155. package/src/components/field-group/field-group.theme.ts +18 -22
  156. package/src/components/fieldset/RLAFieldset.astro +9 -20
  157. package/src/components/fieldset/fieldset.theme.ts +9 -12
  158. package/src/components/file-upload/RLAFileUpload.astro +4 -13
  159. package/src/components/file-upload/file-upload.theme.ts +19 -22
  160. package/src/components/file-upload/file-upload.ts +1 -1
  161. package/src/components/floating-action/RLAFloatingAction.astro +9 -20
  162. package/src/components/floating-action/floating-action.theme.ts +9 -12
  163. package/src/components/footer/RLAFooter.astro +32 -38
  164. package/src/components/footer/footer.theme.ts +31 -26
  165. package/src/components/footer/footer.ts +4 -0
  166. package/src/components/form/RLAForm.astro +9 -20
  167. package/src/components/form/form.theme.ts +9 -12
  168. package/src/components/form-field/RLAFormField.astro +5 -12
  169. package/src/components/form-field/RLSFormField.tsx +71 -0
  170. package/src/components/form-field/RLVFormField.vue +5 -14
  171. package/src/components/form-field/form-field.theme.ts +19 -22
  172. package/src/components/form-field/form-field.ts +1 -0
  173. package/src/components/gallery/RLAGallery.astro +9 -20
  174. package/src/components/gallery/gallery.theme.ts +9 -12
  175. package/src/components/grid/RLAGrid.astro +2 -15
  176. package/src/components/grid/grid.theme.ts +31 -34
  177. package/src/components/head/UIHead.astro +298 -0
  178. package/src/components/head/head.theme.ts +9 -12
  179. package/src/components/header/HeaderLayer.astro +63 -0
  180. package/src/components/header/RLAHeader.astro +29 -48
  181. package/src/components/header/header.theme.ts +37 -40
  182. package/src/components/header/header.ts +4 -0
  183. package/src/{utils → components/header}/headerStack.ts +30 -22
  184. package/src/components/hover-card/RLAHoverCard.astro +24 -35
  185. package/src/components/hover-card/hover-card.theme.ts +23 -27
  186. package/src/components/icon/RLAIcon.astro +29 -36
  187. package/src/components/icon/RLSIcon.tsx +6 -7
  188. package/src/components/icon/RLVIcon.vue +5 -6
  189. package/src/components/icon/icon.theme.ts +18 -28
  190. package/src/components/icon/resolver.ts +15 -29
  191. package/src/components/image/RLAImage.astro +20 -23
  192. package/src/components/image/image.theme.ts +29 -32
  193. package/src/components/input/RLAInput.astro +6 -21
  194. package/src/components/input/RLSInput.tsx +101 -0
  195. package/src/components/input/RLVInput.vue +11 -20
  196. package/src/components/input/input.theme.ts +41 -44
  197. package/src/components/input/input.ts +1 -1
  198. package/src/components/input-date/RLAInputDate.astro +9 -20
  199. package/src/components/input-date/input-date.theme.ts +9 -12
  200. package/src/components/input-menu/RLAInputMenu.astro +2 -12
  201. package/src/components/input-menu/input-menu.theme.ts +29 -32
  202. package/src/components/input-menu/input-menu.ts +1 -1
  203. package/src/components/input-number/RLAInputNumber.astro +9 -20
  204. package/src/components/input-number/input-number.theme.ts +9 -12
  205. package/src/components/input-pin/RLAInputPin.astro +9 -22
  206. package/src/components/input-pin/input-pin.theme.ts +9 -13
  207. package/src/components/input-rating/RLAInputRating.astro +2 -23
  208. package/src/components/input-rating/input-rating.theme.ts +64 -76
  209. package/src/components/input-rating/input-rating.ts +1 -1
  210. package/src/components/input-tags/RLAInputTags.astro +174 -21
  211. package/src/components/input-tags/input-tags.theme.ts +37 -12
  212. package/src/components/input-tags/input-tags.ts +50 -0
  213. package/src/components/input-time/RLAInputTime.astro +9 -20
  214. package/src/components/input-time/input-time.theme.ts +9 -12
  215. package/src/components/kbd/RLAKbd.astro +17 -32
  216. package/src/components/kbd/kbd.theme.ts +49 -91
  217. package/src/components/kbd/kbd.ts +3 -0
  218. package/src/components/knob/RLAKnob.astro +9 -20
  219. package/src/components/knob/knob.theme.ts +9 -12
  220. package/src/components/label/RLALabel.astro +16 -27
  221. package/src/components/label/label.theme.ts +16 -20
  222. package/src/components/layout-grid/RLALayoutGrid.astro +5 -11
  223. package/src/components/layout-grid/layout-grid.theme.ts +12 -15
  224. package/src/components/link/RLALink.astro +6 -20
  225. package/src/components/link/RLSLink.tsx +8 -16
  226. package/src/components/link/RLVLink.vue +7 -16
  227. package/src/components/link/link.theme.ts +37 -37
  228. package/src/components/link/link.ts +5 -5
  229. package/src/components/link-group/RLALinkGroup.astro +7 -44
  230. package/src/components/link-group/link-group.theme.ts +21 -26
  231. package/src/components/link-group/link-group.ts +5 -16
  232. package/src/components/listbox/RLAListbox.astro +9 -20
  233. package/src/components/listbox/listbox.theme.ts +9 -12
  234. package/src/components/locale-selector/RLALocaleSelector.astro +13 -21
  235. package/src/components/locale-selector/locale-selector.theme.ts +49 -44
  236. package/src/components/locale-selector/locale-selector.ts +4 -0
  237. package/src/components/logo/RLALogo.astro +13 -26
  238. package/src/components/logo/logo.theme.ts +9 -12
  239. package/src/components/main/RLAMain.astro +31 -36
  240. package/src/components/main/main.theme.ts +9 -12
  241. package/src/components/marquee/RLAMarquee.astro +62 -43
  242. package/src/components/marquee/marquee.theme.ts +22 -26
  243. package/src/components/meter/RLAMeter.astro +9 -20
  244. package/src/components/meter/meter.theme.ts +9 -12
  245. package/src/components/modal/RLAModal.astro +70 -72
  246. package/src/components/modal/RLSModal.tsx +156 -0
  247. package/src/components/modal/RLVModal.vue +5 -6
  248. package/src/components/modal/modal.theme.ts +42 -46
  249. package/src/components/modal/modal.ts +1 -0
  250. package/src/components/navigation-menu/RLANavigationMenu.astro +7 -12
  251. package/src/components/navigation-menu/navigation-menu.theme.ts +36 -39
  252. package/src/components/navigation-menu/navigation-menu.ts +19 -18
  253. package/src/components/page/RLAPage.astro +9 -20
  254. package/src/components/page/page.theme.ts +9 -12
  255. package/src/components/page-aside/RLAPageAside.astro +9 -20
  256. package/src/components/page-aside/page-aside.theme.ts +9 -12
  257. package/src/components/page-body/RLAPageBody.astro +9 -20
  258. package/src/components/page-body/page-body.theme.ts +9 -12
  259. package/src/components/page-header/RLAPageHeader.astro +9 -20
  260. package/src/components/page-header/page-header.theme.ts +9 -12
  261. package/src/components/page-section/RLAPageSection.astro +11 -15
  262. package/src/components/page-section/page-section.theme.ts +193 -176
  263. package/src/components/pagination/RLAPagination.astro +91 -97
  264. package/src/components/pagination/pagination.theme.ts +22 -26
  265. package/src/components/password/RLAPassword.astro +9 -20
  266. package/src/components/password/password.theme.ts +9 -12
  267. package/src/components/phone-mockup/RLAPhoneMockup.astro +9 -20
  268. package/src/components/phone-mockup/phone-mockup.theme.ts +9 -12
  269. package/src/components/placeholder/RLAPlaceholder.astro +32 -43
  270. package/src/components/placeholder/placeholder.theme.ts +11 -14
  271. package/src/components/popover/RLAPopover.astro +205 -132
  272. package/src/components/popover/popover.theme.ts +23 -27
  273. package/src/components/post/RLAPost.astro +2 -10
  274. package/src/components/post/post.theme.ts +45 -48
  275. package/src/components/pricing-plan/RLAPricingPlan.astro +9 -20
  276. package/src/components/pricing-plan/pricing-plan.theme.ts +9 -12
  277. package/src/components/pricing-table/RLAPricingTable.astro +9 -20
  278. package/src/components/pricing-table/pricing-table.theme.ts +9 -12
  279. package/src/components/progress/RLAProgress.astro +2 -17
  280. package/src/components/progress/progress.theme.ts +22 -34
  281. package/src/components/progress/progress.ts +1 -1
  282. package/src/components/prose/RLAProse.astro +9 -20
  283. package/src/components/prose/prose.theme.ts +9 -12
  284. package/src/components/qr-code/RLAQrCode.astro +9 -20
  285. package/src/components/qr-code/qr-code.theme.ts +9 -12
  286. package/src/components/quote/quote.theme.ts +9 -12
  287. package/src/components/radio-group/RLARadioGroup.astro +9 -20
  288. package/src/components/radio-group/radio-group.theme.ts +9 -12
  289. package/src/components/rating/RLARating.astro +9 -20
  290. package/src/components/rating/rating.theme.ts +9 -12
  291. package/src/components/scroll-area/RLAScrollArea.astro +2 -10
  292. package/src/components/scroll-area/scroll-area.theme.ts +21 -24
  293. package/src/components/scroll-to-top/RLAScrollToTop.astro +67 -43
  294. package/src/components/scroll-to-top/RLVScrollToTop.vue +6 -10
  295. package/src/components/scroll-to-top/scroll-to-top.theme.ts +32 -46
  296. package/src/components/scroll-to-top/scroll-to-top.ts +1 -1
  297. package/src/{utils → components/scroll-to-top}/scroll.ts +19 -6
  298. package/src/components/search/RLASearch.astro +3 -9
  299. package/src/components/search/search.theme.ts +60 -63
  300. package/src/components/select/RLASelect.astro +514 -113
  301. package/src/components/select/RLSSelect.tsx +126 -0
  302. package/src/components/select/RLVSelect.vue +7 -15
  303. package/src/components/select/select.theme.ts +104 -25
  304. package/src/components/select/select.ts +58 -36
  305. package/src/components/separator/RLASeparator.astro +62 -83
  306. package/src/components/separator/separator.theme.ts +135 -138
  307. package/src/components/separator/separator.ts +4 -0
  308. package/src/components/shortcuts/RLAShortcuts.astro +3 -4
  309. package/src/components/sidebar/RLASidebar.astro +11 -21
  310. package/src/components/sidebar/sidebar.theme.ts +39 -42
  311. package/src/components/sidebar/sidebar.ts +2 -0
  312. package/src/components/skeleton/RLASkeleton.astro +13 -22
  313. package/src/components/skeleton/skeleton.theme.ts +16 -19
  314. package/src/components/slideover/RLASlideover.astro +2 -12
  315. package/src/components/slideover/slideover.theme.ts +51 -55
  316. package/src/components/slider/RLASlider.astro +2 -15
  317. package/src/components/slider/slider.theme.ts +20 -33
  318. package/src/components/slider/slider.ts +1 -1
  319. package/src/components/speed-dial/RLASpeedDial.astro +9 -20
  320. package/src/components/speed-dial/speed-dial.theme.ts +9 -12
  321. package/src/components/spinner/RLASpinner.astro +2 -17
  322. package/src/components/spinner/spinner.theme.ts +29 -30
  323. package/src/components/spinner/spinner.ts +1 -1
  324. package/src/components/splitter/RLASplitter.astro +3 -11
  325. package/src/components/splitter/splitter.theme.ts +18 -21
  326. package/src/components/spoiler/RLASpoiler.astro +9 -20
  327. package/src/components/spoiler/spoiler.theme.ts +9 -12
  328. package/src/components/stepper/RLAStepper.astro +300 -21
  329. package/src/components/stepper/stepper.theme.ts +214 -12
  330. package/src/components/stepper/stepper.ts +23 -6
  331. package/src/components/steps/RLASteps.astro +2 -8
  332. package/src/components/steps/steps.theme.ts +9 -12
  333. package/src/components/sticky-surface/RLAStickySurface.astro +67 -38
  334. package/src/components/sticky-surface/sticky-surface.theme.ts +7 -11
  335. package/src/components/sticky-surface/sticky-surface.ts +1 -0
  336. package/src/components/surround/RLASurround.astro +5 -5
  337. package/src/components/switch/RLASwitch.astro +2 -18
  338. package/src/components/switch/switch.theme.ts +50 -61
  339. package/src/components/switch/switch.ts +1 -1
  340. package/src/components/table/RLATable.astro +566 -50
  341. package/src/components/table/table.theme.ts +112 -31
  342. package/src/components/table/table.ts +207 -6
  343. package/src/components/table-of-contents/RLATableOfContents.astro +8 -13
  344. package/src/components/table-of-contents/table-of-contents.theme.ts +60 -63
  345. package/src/components/tabs/RLATabs.astro +195 -51
  346. package/src/components/tabs/tabs.theme.ts +81 -84
  347. package/src/components/tabs/tabs.ts +18 -1
  348. package/src/components/textarea/RLATextarea.astro +16 -13
  349. package/src/components/textarea/RLSTextarea.tsx +69 -0
  350. package/src/components/textarea/RLVTextarea.vue +8 -16
  351. package/src/components/textarea/textarea.theme.ts +21 -24
  352. package/src/components/textarea/textarea.ts +2 -1
  353. package/src/components/theme-selector/RLAThemeSelector.astro +5 -13
  354. package/src/components/theme-selector/theme-selector.theme.ts +11 -14
  355. package/src/components/timeline/RLATimeline.astro +24 -44
  356. package/src/components/timeline/timeline.theme.ts +302 -307
  357. package/src/components/toast/RLAToast.astro +44 -18
  358. package/src/components/toast/store.ts +97 -0
  359. package/src/components/toast/toast.theme.ts +31 -34
  360. package/src/components/toast/toast.ts +1 -1
  361. package/src/components/toaster/RLAToaster.astro +76 -6
  362. package/src/components/tooltip/RLATooltip.astro +136 -33
  363. package/src/components/tooltip/tooltip.theme.ts +23 -26
  364. package/src/components/tour/RLATour.astro +9 -20
  365. package/src/components/tour/tour.theme.ts +9 -12
  366. package/src/components/tree/RLATree.astro +9 -20
  367. package/src/components/tree/tree.theme.ts +9 -12
  368. package/src/components/user/RLAUser.astro +9 -20
  369. package/src/components/user/user.theme.ts +9 -12
  370. package/src/components/video/RLAVideo.astro +5 -10
  371. package/src/components/video/video.theme.ts +13 -16
  372. package/src/components/watermark/RLAWatermark.astro +9 -20
  373. package/src/components/watermark/watermark.theme.ts +9 -12
  374. package/src/components/window-mockup/RLAWindowMockup.astro +9 -20
  375. package/src/components/window-mockup/window-mockup.theme.ts +9 -12
  376. package/src/icons.ts +68 -0
  377. package/src/index.ts +31 -0
  378. package/src/preset.ts +146 -0
  379. package/src/resolver.ts +20 -0
  380. package/src/shortcuts.ts +172 -0
  381. package/src/types.ts +57 -0
  382. package/LICENSE +0 -21
  383. package/src/components/head/RLAHead.astro +0 -528
  384. package/src/config/color.config.ts +0 -300
  385. package/src/config/site.config.ts +0 -28
  386. package/src/config/ui.config.ts +0 -89
  387. package/src/env.d.ts +0 -23
  388. package/src/icons/defaults.ts +0 -44
  389. package/src/presets/index.ts +0 -577
  390. package/src/stores/toast.ts +0 -24
  391. package/src/themes.ts +0 -26
  392. package/src/types/component.ts +0 -28
  393. package/src/ui.ts +0 -159
  394. package/src/utils/defineTheme.ts +0 -5
  395. package/src/utils/merge.ts +0 -62
  396. package/src/utils/resolveClasses.ts +0 -39
  397. package/src/utils/resolveTheme.ts +0 -13
  398. package/src/utils/shortcuts.ts +0 -322
  399. package/src/utils/toast.ts +0 -36
  400. package/src/utils/useUi.ts +0 -33
@@ -1,12 +1,13 @@
1
1
  <script setup lang="ts">
2
- import { inject } from "vue"
2
+ import { inject, defineAsyncComponent } from "vue"
3
3
  import type { Block as BlockType } from "../types/blocks"
4
4
  import ParagraphBlockEditor from "./editor/ParagraphBlockEditor.vue"
5
- import SectionBlockEditor from "./editor/SectionBlockEditor.vue"
6
- import CalloutBlockEditor from "./editor/CalloutBlockEditor.vue"
7
5
  import ImageBlockEditor from "./editor/ImageBlockEditor.vue"
8
6
  import RLVButton from "../../button/RLVButton.vue"
9
7
 
8
+ const SectionBlockEditor = defineAsyncComponent(() => import("./editor/SectionBlockEditor.vue"))
9
+ const CalloutBlockEditor = defineAsyncComponent(() => import("./editor/CalloutBlockEditor.vue"))
10
+
10
11
  export interface BlockProps {
11
12
  block: BlockType
12
13
  index: number
@@ -1,9 +1,9 @@
1
1
  <script setup lang="ts">
2
2
  import { provide, ref, computed } from "vue"
3
3
  import type { Block } from "../types/blocks"
4
- import { useBlockEditor } from "./composables/useBlockEditor"
5
- import { type BlockDefinition } from "./utils/blocks"
6
- import { useI18n } from "./utils/editorHelpers"
4
+ import { useBlockEditor } from "../composables/useBlockEditor"
5
+ import { type BlockDefinition } from "../utils/blocks"
6
+ import { useI18n } from "../utils/editorHelpers"
7
7
  import { scv, cx } from "css-variants"
8
8
  import BlockEditRenderer from "./BlockEditRenderer.vue"
9
9
  import AddBlockModal from "./AddBlockModal.vue"
@@ -1,9 +1,15 @@
1
1
  <script setup lang="ts">
2
+ import { defineAsyncComponent } from "vue"
2
3
  import ParagraphBlockRenderer from "./renderer/ParagraphBlockRenderer.vue"
3
- import SectionBlockRenderer from "./renderer/SectionBlockRenderer.vue"
4
- import CalloutBlockRenderer from "./renderer/CalloutBlockRenderer.vue"
5
4
  import ImageBlockRenderer from "./renderer/ImageBlockRenderer.vue"
6
5
 
6
+ const SectionBlockRenderer = defineAsyncComponent(
7
+ () => import("./renderer/SectionBlockRenderer.vue")
8
+ )
9
+ const CalloutBlockRenderer = defineAsyncComponent(
10
+ () => import("./renderer/CalloutBlockRenderer.vue")
11
+ )
12
+
7
13
  export interface BlockViewRendererProps {
8
14
  blocks: any[]
9
15
  }
@@ -1,8 +1,8 @@
1
1
  <script setup lang="ts">
2
- import { computed, defineAsyncComponent } from "vue"
2
+ import { computed } from "vue"
3
3
  import type { CalloutBlockProps, CalloutVariant } from "../../types/blocks"
4
4
 
5
- const BlockEditRenderer = defineAsyncComponent(() => import("../BlockEditRenderer.vue"))
5
+ import BlockEditRenderer from "../BlockEditRenderer.vue"
6
6
 
7
7
  const props = defineProps<{ props: CalloutBlockProps; containerId?: string | null }>()
8
8
  const emit = defineEmits<{ "update:props": [value: CalloutBlockProps] }>()
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { computed } from "vue"
3
3
  import type { ParagraphBlockProps } from "../../types/blocks"
4
- import { richTextToHtml, parseHtmlToRichText } from "../utils/richTextHelpers"
4
+ import { richTextToHtml, parseHtmlToRichText } from "../../utils/richTextHelpers"
5
5
 
6
6
  const props = defineProps<{ props: ParagraphBlockProps }>()
7
7
  const emit = defineEmits<{ "update:props": [value: ParagraphBlockProps] }>()
@@ -1,11 +1,11 @@
1
1
  <script setup lang="ts">
2
- import { computed, defineAsyncComponent } from "vue"
2
+ import { computed } from "vue"
3
3
  import type { SectionBlockProps } from "../../types/blocks"
4
4
  import RLVInput from "../../../input/RLVInput.vue"
5
5
  import RLVButton from "../../../button/RLVButton.vue"
6
- import { useI18n } from "../utils/editorHelpers"
6
+ import { useI18n } from "../../utils/editorHelpers"
7
7
 
8
- const BlockEditRenderer = defineAsyncComponent(() => import("../BlockEditRenderer.vue"))
8
+ import BlockEditRenderer from "../BlockEditRenderer.vue"
9
9
 
10
10
  const props = defineProps<{ props: SectionBlockProps; containerId?: string | null }>()
11
11
  const emit = defineEmits<{ "update:props": [value: SectionBlockProps] }>()
@@ -1,7 +1,6 @@
1
1
  <script setup lang="ts">
2
- import { computed, defineAsyncComponent } from "vue"
3
-
4
- const BlockViewRenderer = defineAsyncComponent(() => import("../BlockViewRenderer.vue"))
2
+ import { computed } from "vue"
3
+ import BlockViewRenderer from "../BlockViewRenderer.vue"
5
4
 
6
5
  const props = defineProps<{ props: any }>()
7
6
 
@@ -1,9 +1,9 @@
1
1
  <script setup lang="ts">
2
- import { computed, defineAsyncComponent } from "vue"
2
+ import { computed } from "vue"
3
3
  import { useI18n } from "../../utils/editorHelpers"
4
4
  import { getLocalizedContent } from "../../utils/page"
5
5
 
6
- const BlockViewRenderer = defineAsyncComponent(() => import("../BlockViewRenderer.vue"))
6
+ import BlockViewRenderer from "../BlockViewRenderer.vue"
7
7
 
8
8
  const props = defineProps<{ props: any }>()
9
9
  const { locale } = useI18n()
@@ -1,13 +1,10 @@
1
- import { defineTheme } from "../../utils/defineTheme"
1
+ import { defineTheme } from "../../resolver"
2
2
 
3
- export const createEditorTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createEditorTheme()
3
+ export const editorTheme = defineTheme("editor", {
4
+ slots: ["root"],
5
+ base: {
6
+ root: ""
7
+ },
8
+ variants: {},
9
+ defaultVariants: {}
10
+ })
@@ -1,21 +1,87 @@
1
- ---
2
- import { scv } from "css-variants"
3
- import { useUi } from "../../utils/useUi"
4
- import { resolveClasses } from "../../utils/resolveClasses"
5
- import type { EmptyProps } from "./empty"
6
- import emptyTheme from "./empty.theme"
7
-
8
-
9
- const empty = scv(emptyTheme)
10
-
11
- const {
12
- ui: uiProp,
13
- class: className,
14
- ...rest
15
- } = Astro.props as EmptyProps
16
-
17
- const classes = resolveClasses(empty, {}, useUi("empty", uiProp), className);
18
- ---
19
- <div class={classes.root} data-slot="root" {...rest}>
20
- <slot />
1
+ ---
2
+ import type { EmptyProps } from "./empty"
3
+ import { emptyTheme } from "./empty.theme"
4
+ import RLAButton from "../button/RLAButton.astro"
5
+ import RLAAvatar from "../avatar/RLAAvatar.astro"
6
+ import RLAIcon from "../icon/RLAIcon.astro"
7
+
8
+
9
+ const {
10
+ icon,
11
+ avatar: avatarProp,
12
+ loading = false,
13
+ loadingIcon = "i-lucide-loader-circle",
14
+ title,
15
+ description,
16
+ actions = [],
17
+ variant = "outline",
18
+ size = "md",
19
+ ...rest
20
+ } = Astro.props as EmptyProps
21
+
22
+ const classes = emptyTheme(Astro.props)
23
+
24
+ const activeIcon = loading ? loadingIcon : icon
25
+ ---
26
+
27
+ <div class={classes.root} data-slot="root" {...rest}>
28
+ <slot name="header">
29
+ <div class={classes.header} data-slot="header">
30
+ <slot name="leading">
31
+ {activeIcon ? (
32
+ <div class={classes.avatar} data-slot="avatar">
33
+ <RLAIcon name={activeIcon} class={`size-full ${loading ? 'animate-spin' : ''}`} aria-hidden="true" />
34
+ </div>
35
+ ) : avatarProp ? (
36
+ <div class={classes.avatar} data-slot="avatar">
37
+ <RLAAvatar {...avatarProp} />
38
+ </div>
39
+ ) : null}
40
+ </slot>
41
+
42
+ {(title || Astro.slots.has("title")) && (
43
+ <div class={classes.title} data-slot="title">
44
+ <slot name="title">{title}</slot>
45
+ </div>
46
+ )}
47
+
48
+ {(description || Astro.slots.has("description")) && (
49
+ <div class={classes.description} data-slot="description">
50
+ <slot name="description">{description}</slot>
51
+ </div>
52
+ )}
53
+ </div>
54
+ </slot>
55
+
56
+ {(Astro.slots.has("body") || Astro.slots.has("default")) && (
57
+ <div class={classes.body} data-slot="body">
58
+ <slot name="body">
59
+ <slot />
60
+ </slot>
61
+ </div>
62
+ )}
63
+
64
+ {(actions.length > 0 || Astro.slots.has("actions")) && (
65
+ <div class={classes.actions} data-slot="actions">
66
+ <slot name="actions">
67
+ {actions.map((action) => (
68
+ <RLAButton
69
+ size={size === "xs" ? "xs" : size === "sm" ? "xs" : "sm"}
70
+ color={action.color || "primary"}
71
+ variant={action.variant || "solid"}
72
+ leadingIcon={action.icon}
73
+ {...action}
74
+ >
75
+ {action.label}
76
+ </RLAButton>
77
+ ))}
78
+ </slot>
79
+ </div>
80
+ )}
81
+
82
+ {Astro.slots.has("footer") && (
83
+ <div class={classes.footer} data-slot="footer">
84
+ <slot name="footer" />
85
+ </div>
86
+ )}
21
87
  </div>
@@ -1,13 +1,81 @@
1
- import { defineTheme } from "../../utils/defineTheme"
1
+ import { defineTheme } from "../../resolver"
2
2
 
3
- export const createEmptyTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
3
+ export const emptyTheme = defineTheme("empty", {
4
+ slots: ["root", "header", "avatar", "title", "description", "body", "actions", "footer"],
5
+ base: {
6
+ root: "relative flex flex-col items-center justify-center gap-4 rounded-lg p-4 sm:p-6 lg:p-8 min-w-0 text-center",
7
+ header: "flex flex-col items-center gap-2 max-w-sm text-center",
8
+ avatar: "shrink-0 mb-2 flex items-center justify-center",
9
+ title: "text-gray-100 font-medium text-pretty",
10
+ description: "text-gray-400 text-balance text-center text-sm",
11
+ body: "flex flex-col items-center gap-4 max-w-sm w-full",
12
+ actions: "flex flex-wrap justify-center gap-2 shrink-0 mt-1",
13
+ footer: "flex flex-col items-center gap-2 max-w-sm w-full"
14
+ },
15
+ variants: {
16
+ size: {
17
+ xs: {
18
+ root: "p-3 gap-2",
19
+ avatar: "size-8 text-base",
20
+ title: "text-sm font-semibold",
21
+ description: "text-xs"
22
+ },
23
+ sm: {
24
+ root: "p-4 gap-3",
25
+ avatar: "size-9 text-lg",
26
+ title: "text-sm font-semibold",
27
+ description: "text-xs"
28
+ },
29
+ md: {
30
+ root: "p-6 gap-4",
31
+ avatar: "size-10 text-xl",
32
+ title: "text-base font-semibold",
33
+ description: "text-sm"
34
+ },
35
+ lg: {
36
+ root: "p-8 gap-5",
37
+ avatar: "size-11 text-[22px]",
38
+ title: "text-base font-semibold",
39
+ description: "text-sm"
40
+ },
41
+ xl: {
42
+ root: "p-10 gap-6",
43
+ avatar: "size-12 text-2xl",
44
+ title: "text-lg font-bold",
45
+ description: "text-base"
46
+ }
8
47
  },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createEmptyTheme()
48
+ variant: {
49
+ solid: {
50
+ root: "bg-gray-900 border border-gray-800 text-gray-100",
51
+ title: "text-white",
52
+ description: "text-gray-400"
53
+ },
54
+ outline: {
55
+ root: "bg-gray-900/50 border border-gray-800/80 rounded-lg",
56
+ description: "text-gray-400"
57
+ },
58
+ soft: {
59
+ root: "bg-gray-800/40 border border-transparent",
60
+ description: "text-gray-400"
61
+ },
62
+ subtle: {
63
+ root: "bg-gray-800/30 border border-gray-700/50",
64
+ description: "text-gray-400"
65
+ },
66
+ naked: {
67
+ root: "bg-transparent border border-transparent p-0",
68
+ description: "text-gray-400"
69
+ }
70
+ },
71
+ loading: {
72
+ true: {
73
+ avatar: "[&>[data-slot=icon]]:animate-spin [&>i]:animate-spin"
74
+ }
75
+ }
76
+ },
77
+ defaultVariants: {
78
+ variant: "outline",
79
+ size: "md"
80
+ }
81
+ })
@@ -1,8 +1,65 @@
1
1
  export interface EmptyProps {
2
2
  /**
3
- * Slot-specific CSS class overrides.
3
+ * Element or tag to render as (default: "div")
4
4
  */
5
- ui?: any
5
+ as?: string
6
+ /**
7
+ * Icon displayed above the title.
8
+ */
9
+ icon?: string
10
+ /**
11
+ * Avatar properties object
12
+ */
13
+ avatar?: Record<string, any>
14
+ /**
15
+ * When true, the loading icon will be displayed.
16
+ */
17
+ loading?: boolean
18
+ /**
19
+ * The icon when the loading prop is true (default: "i-lucide-loader-circle")
20
+ */
21
+ loadingIcon?: string
22
+ /**
23
+ * Title text
24
+ */
25
+ title?: string
26
+ /**
27
+ * Description text
28
+ */
29
+ description?: string
30
+ /**
31
+ * Display a list of Button actions in the body.
32
+ */
33
+ actions?: Array<{
34
+ label: string
35
+ icon?: string
36
+ color?: string
37
+ variant?: string
38
+ href?: string
39
+ class?: string
40
+ [key: string]: any
41
+ }>
42
+ /**
43
+ * Variant styling: outline (default), solid, soft, subtle, naked
44
+ */
45
+ variant?: "outline" | "solid" | "soft" | "subtle" | "naked"
46
+ /**
47
+ * Size variant: md (default), xs, sm, lg, xl
48
+ */
49
+ size?: "xs" | "sm" | "md" | "lg" | "xl"
50
+ /**
51
+ * Slot-specific CSS class overrides
52
+ */
53
+ ui?: {
54
+ root?: string
55
+ header?: string
56
+ avatar?: string
57
+ title?: string
58
+ description?: string
59
+ body?: string
60
+ actions?: string
61
+ footer?: string
62
+ }
6
63
  /**
7
64
  * Additional CSS classes to apply to the root element.
8
65
  */
@@ -1,21 +1,10 @@
1
- ---
2
- import { scv } from "css-variants"
3
- import { useUi } from "../../utils/useUi"
4
- import { resolveClasses } from "../../utils/resolveClasses"
5
- import type { ErrorProps } from "./error"
6
- import errorTheme from "./error.theme"
7
-
8
-
9
- const error = scv(errorTheme)
10
-
11
- const {
12
- ui: uiProp,
13
- class: className,
14
- ...rest
15
- } = Astro.props as ErrorProps
16
-
17
- const classes = resolveClasses(error, {}, useUi("error", uiProp), className);
18
- ---
19
- <div class={classes.root} data-slot="root" {...rest}>
20
- <slot />
1
+ ---
2
+ import { errorTheme } from "./error.theme"
3
+
4
+
5
+
6
+ const classes = errorTheme(Astro.props)
7
+ ---
8
+ <div class={classes.root} data-slot="root" {...Astro.props}>
9
+ <slot />
21
10
  </div>
@@ -1,13 +1,10 @@
1
- import { defineTheme } from "../../utils/defineTheme"
1
+ import { defineTheme } from "../../resolver"
2
2
 
3
- export const createErrorTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createErrorTheme()
3
+ export const errorTheme = defineTheme("error", {
4
+ slots: ["root"],
5
+ base: {
6
+ root: ""
7
+ },
8
+ variants: {},
9
+ defaultVariants: {}
10
+ })
@@ -1,25 +1,16 @@
1
1
  ---
2
- import { scv } from "css-variants"
3
- import { useUi } from "../../utils/useUi"
4
- import { resolveClasses } from "../../utils/resolveClasses"
5
2
  import type { FieldGroupProps } from "./field-group"
6
- import fieldGroupTheme from "./field-group.theme"
3
+ import { fieldGroupTheme } from "./field-group.theme"
7
4
 
8
5
 
9
- const fieldGroup = scv(fieldGroupTheme)
10
6
 
11
7
  const {
12
8
  prepend,
13
9
  append,
14
- size = "md",
15
- ui: uiProp,
16
- class: className,
17
10
  ...rest
18
11
  } = Astro.props as FieldGroupProps
19
12
 
20
- const classes = resolveClasses(fieldGroup, {
21
- size
22
- }, useUi("fieldGroup", uiProp), className);
13
+ const classes = fieldGroupTheme(Astro.props);
23
14
  ---
24
15
  <div class={classes.root} data-slot="root" {...rest}>
25
16
  {prepend && (
@@ -1,24 +1,20 @@
1
- import { defineTheme } from "../../utils/defineTheme"
1
+ import { defineTheme } from "../../resolver"
2
2
 
3
- export const createFieldGroupTheme = () =>
4
- defineTheme({
5
- slots: ["root", "prepend", "append"],
6
- base: {
7
- root: "relative flex items-stretch w-full rounded-md border border-input bg-background shadow-sm focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2 overflow-hidden",
8
- prepend:
9
- "flex items-center bg-muted px-3 text-sm text-muted-foreground border-r border-input",
10
- append: "flex items-center bg-muted px-3 text-sm text-muted-foreground border-l border-input"
11
- },
12
- variants: {
13
- size: {
14
- sm: { prepend: "px-2 text-xs", append: "px-2 text-xs" },
15
- md: { prepend: "px-3 text-sm", append: "px-3 text-sm" },
16
- lg: { prepend: "px-4 text-base", append: "px-4 text-base" }
17
- }
18
- },
19
- defaultVariants: {
20
- size: "md"
3
+ export const fieldGroupTheme = defineTheme("field-group", {
4
+ slots: ["root", "prepend", "append"],
5
+ base: {
6
+ root: "relative flex items-stretch w-full rounded-md border border-default bg-default shadow-sm focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2 overflow-hidden",
7
+ prepend: "flex items-center bg-muted px-3 text-sm text-muted border-r border-default",
8
+ append: "flex items-center bg-muted px-3 text-sm text-muted border-l border-default"
9
+ },
10
+ variants: {
11
+ size: {
12
+ sm: { prepend: "px-2 text-xs", append: "px-2 text-xs" },
13
+ md: { prepend: "px-3 text-sm", append: "px-3 text-sm" },
14
+ lg: { prepend: "px-4 text-base", append: "px-4 text-base" }
21
15
  }
22
- })
23
-
24
- export default createFieldGroupTheme()
16
+ },
17
+ defaultVariants: {
18
+ size: "md"
19
+ }
20
+ })
@@ -1,21 +1,10 @@
1
- ---
2
- import { scv } from "css-variants"
3
- import { useUi } from "../../utils/useUi"
4
- import { resolveClasses } from "../../utils/resolveClasses"
5
- import type { FieldsetProps } from "./fieldset"
6
- import fieldsetTheme from "./fieldset.theme"
7
-
8
-
9
- const fieldset = scv(fieldsetTheme)
10
-
11
- const {
12
- ui: uiProp,
13
- class: className,
14
- ...rest
15
- } = Astro.props as FieldsetProps
16
-
17
- const classes = resolveClasses(fieldset, {}, useUi("fieldset", uiProp), className);
18
- ---
19
- <div class={classes.root} data-slot="root" {...rest}>
20
- <slot />
1
+ ---
2
+ import { fieldsetTheme } from "./fieldset.theme"
3
+
4
+
5
+
6
+ const classes = fieldsetTheme(Astro.props)
7
+ ---
8
+ <div class={classes.root} data-slot="root" {...Astro.props}>
9
+ <slot />
21
10
  </div>
@@ -1,13 +1,10 @@
1
- import { defineTheme } from "../../utils/defineTheme"
1
+ import { defineTheme } from "../../resolver"
2
2
 
3
- export const createFieldsetTheme = () =>
4
- defineTheme({
5
- slots: ["root"],
6
- base: {
7
- root: ""
8
- },
9
- variants: {},
10
- defaultVariants: {}
11
- })
12
-
13
- export default createFieldsetTheme()
3
+ export const fieldsetTheme = defineTheme("fieldset", {
4
+ slots: ["root"],
5
+ base: {
6
+ root: ""
7
+ },
8
+ variants: {},
9
+ defaultVariants: {}
10
+ })
@@ -1,13 +1,9 @@
1
1
  ---
2
- import { scv } from "css-variants"
3
- import { useUi } from "../../utils/useUi"
4
- import { resolveClasses } from "../../utils/resolveClasses"
5
2
  import type { FileUploadProps } from "./file-upload"
6
- import fileUploadTheme from "./file-upload.theme"
3
+ import { fileUploadTheme } from "./file-upload.theme"
7
4
  import RLAIcon from "../icon/RLAIcon.astro"
8
5
 
9
6
 
10
- const fileUpload = scv(fileUploadTheme)
11
7
 
12
8
  const {
13
9
  accept,
@@ -16,15 +12,10 @@ const {
16
12
  title = "Drop files here or click to upload",
17
13
  description = "Supports any file type",
18
14
  icon = "uploadCloud",
19
- color = "primary",
20
- ui: uiProp,
21
- class: className,
22
15
  ...rest
23
16
  } = Astro.props as FileUploadProps
24
17
 
25
- const classes = resolveClasses(fileUpload, {
26
- disabled
27
- }, useUi("fileUpload", uiProp), className)
18
+ const classes = fileUploadTheme(Astro.props)
28
19
 
29
20
  const inputId = `fileUpload-${Math.random().toString(36).slice(2, 9)}`
30
21
  ---
@@ -62,14 +53,14 @@ const inputId = `fileUpload-${Math.random().toString(36).slice(2, 9)}`
62
53
  <p class={classes.description} data-slot="description">{description}</p>
63
54
  )}
64
55
  {accept && (
65
- <p class="mt-1 text-[10px] text-muted-foreground/70">
56
+ <p class="mt-1 text-[10px] text-muted/70">
66
57
  Accepted: <span class="font-mono">{accept}</span>
67
58
  </p>
68
59
  )}
69
60
  </slot>
70
61
 
71
62
  <div
72
- class="mt-3 hidden text-xs text-muted-foreground"
63
+ class="mt-3 hidden text-xs text-muted"
73
64
  data-fileUpload-filelist
74
65
  aria-live="polite"
75
66
  />