singularity-components 0.1.140 → 0.1.193

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 (284) hide show
  1. package/README.md +36 -4
  2. package/dist/components/blocks/cards/blogpost-card.d.ts +13 -0
  3. package/dist/components/blocks/cards/blogpost-card.js +79 -0
  4. package/dist/components/blocks/cards/blogpost-card.js.map +1 -0
  5. package/dist/components/blocks/cards/card.d.ts +14 -0
  6. package/dist/components/blocks/cards/card.js +86 -0
  7. package/dist/components/blocks/cards/card.js.map +1 -0
  8. package/dist/components/blocks/empty-state/EmptyState.d.ts +15 -0
  9. package/dist/components/blocks/empty-state/EmptyState.js +36 -0
  10. package/dist/components/blocks/empty-state/EmptyState.js.map +1 -0
  11. package/dist/components/blocks/index.d.ts +5 -0
  12. package/dist/components/blocks/index.js +5 -0
  13. package/dist/components/blocks/index.js.map +1 -0
  14. package/dist/components/blocks/post-list/post-filters.d.ts +19 -0
  15. package/dist/components/blocks/post-list/post-filters.js +99 -0
  16. package/dist/components/blocks/post-list/post-filters.js.map +1 -0
  17. package/dist/components/blocks/post-list/post-list-with-filters.d.ts +19 -0
  18. package/dist/components/blocks/post-list/post-list-with-filters.js +439 -0
  19. package/dist/components/blocks/post-list/post-list-with-filters.js.map +1 -0
  20. package/dist/components/index.d.ts +43 -10
  21. package/dist/components/index.js +5 -3
  22. package/dist/components/index.js.map +1 -1
  23. package/dist/components/pages/admin/admin-page.d.ts +8 -0
  24. package/dist/components/pages/admin/admin-page.js +299 -0
  25. package/dist/components/pages/admin/admin-page.js.map +1 -0
  26. package/dist/components/pages/blogpost/blogpost.d.ts +5 -0
  27. package/dist/components/pages/blogpost/blogpost.js +440 -0
  28. package/dist/components/pages/blogpost/blogpost.js.map +1 -0
  29. package/dist/components/pages/category/category-page.d.ts +8 -0
  30. package/dist/components/pages/category/category-page.js +69 -0
  31. package/dist/components/pages/category/category-page.js.map +1 -0
  32. package/dist/components/pages/chat/chat-page.d.ts +5 -0
  33. package/dist/components/pages/chat/chat-page.js +209 -0
  34. package/dist/components/pages/chat/chat-page.js.map +1 -0
  35. package/dist/components/pages/index.d.ts +11 -0
  36. package/dist/components/pages/index.js +11 -0
  37. package/dist/components/pages/index.js.map +1 -0
  38. package/dist/components/pages/login/login-page.d.ts +19 -0
  39. package/dist/components/pages/login/login-page.js +108 -0
  40. package/dist/components/pages/login/login-page.js.map +1 -0
  41. package/dist/components/pages/maintenance/maintenance-page.d.ts +5 -0
  42. package/dist/components/pages/maintenance/maintenance-page.js +50 -0
  43. package/dist/components/pages/maintenance/maintenance-page.js.map +1 -0
  44. package/dist/components/pages/not-found/not-found.d.ts +10 -0
  45. package/dist/components/pages/not-found/not-found.js +64 -0
  46. package/dist/components/pages/not-found/not-found.js.map +1 -0
  47. package/dist/components/pages/privacy/privacy-page.d.ts +15 -0
  48. package/dist/components/pages/privacy/privacy-page.js +98 -0
  49. package/dist/components/pages/privacy/privacy-page.js.map +1 -0
  50. package/dist/components/pages/search/search-page.d.ts +5 -0
  51. package/dist/components/pages/search/search-page.js +18 -0
  52. package/dist/components/pages/search/search-page.js.map +1 -0
  53. package/dist/components/pages/startpage/startpage.d.ts +5 -0
  54. package/dist/components/pages/startpage/startpage.js +50 -0
  55. package/dist/components/pages/startpage/startpage.js.map +1 -0
  56. package/dist/components/pages/terms/terms-page.d.ts +15 -0
  57. package/dist/components/pages/terms/terms-page.js +98 -0
  58. package/dist/components/pages/terms/terms-page.js.map +1 -0
  59. package/dist/components/primitives/accordion/accordion.js +1 -1
  60. package/dist/components/primitives/accordion/accordion.js.map +1 -1
  61. package/dist/components/primitives/alert/alert.js +1 -1
  62. package/dist/components/primitives/alert/alert.js.map +1 -1
  63. package/dist/components/primitives/avatar/avatar.d.ts +14 -0
  64. package/dist/components/primitives/avatar/avatar.js +103 -0
  65. package/dist/components/primitives/avatar/avatar.js.map +1 -0
  66. package/dist/components/primitives/badge/badge.d.ts +12 -4
  67. package/dist/components/primitives/badge/badge.js +15 -15
  68. package/dist/components/primitives/badge/badge.js.map +1 -1
  69. package/dist/components/primitives/badge/badges.js +1 -1
  70. package/dist/components/primitives/badge/badges.js.map +1 -1
  71. package/dist/components/primitives/{button → buttons}/button.d.ts +15 -9
  72. package/dist/components/primitives/buttons/button.js +92 -0
  73. package/dist/components/primitives/buttons/button.js.map +1 -0
  74. package/dist/components/primitives/buttons/icon-button.d.ts +33 -0
  75. package/dist/components/primitives/buttons/icon-button.js +61 -0
  76. package/dist/components/primitives/buttons/icon-button.js.map +1 -0
  77. package/dist/components/primitives/buttons/link-button.d.ts +16 -0
  78. package/dist/components/primitives/buttons/link-button.js +35 -0
  79. package/dist/components/primitives/buttons/link-button.js.map +1 -0
  80. package/dist/components/primitives/collapsible/collapsible.d.ts +9 -0
  81. package/dist/components/primitives/collapsible/collapsible.js +53 -0
  82. package/dist/components/primitives/collapsible/collapsible.js.map +1 -0
  83. package/dist/components/primitives/dropdown-menu/dropdown-menu.d.ts +30 -0
  84. package/dist/components/primitives/dropdown-menu/dropdown-menu.js +164 -0
  85. package/dist/components/primitives/dropdown-menu/dropdown-menu.js.map +1 -0
  86. package/dist/components/primitives/forms/checkbox.d.ts +6 -0
  87. package/dist/components/primitives/forms/checkbox.js +30 -0
  88. package/dist/components/primitives/forms/checkbox.js.map +1 -0
  89. package/dist/components/primitives/forms/field.d.ts +29 -0
  90. package/dist/components/primitives/forms/field.js +218 -0
  91. package/dist/components/primitives/forms/field.js.map +1 -0
  92. package/dist/components/primitives/forms/input.d.ts +6 -0
  93. package/dist/components/primitives/forms/input.js +22 -0
  94. package/dist/components/primitives/forms/input.js.map +1 -0
  95. package/dist/components/primitives/forms/select.d.ts +22 -0
  96. package/dist/components/primitives/forms/select.js +169 -0
  97. package/dist/components/primitives/forms/select.js.map +1 -0
  98. package/dist/components/primitives/forms/textarea.d.ts +6 -0
  99. package/dist/components/primitives/forms/textarea.js +20 -0
  100. package/dist/components/primitives/forms/textarea.js.map +1 -0
  101. package/dist/components/primitives/icon/icon.d.ts +10 -3
  102. package/dist/components/primitives/icon/icon.js +15 -14
  103. package/dist/components/primitives/icon/icon.js.map +1 -1
  104. package/dist/components/primitives/index.d.ts +25 -7
  105. package/dist/components/primitives/index.js +31 -18
  106. package/dist/components/primitives/index.js.map +1 -1
  107. package/dist/components/primitives/label/label.d.ts +6 -0
  108. package/dist/components/primitives/label/label.js +22 -0
  109. package/dist/components/primitives/label/label.js.map +1 -0
  110. package/dist/components/primitives/layout/layout.d.ts +8 -4
  111. package/dist/components/primitives/layout/layout.js +35 -17
  112. package/dist/components/primitives/layout/layout.js.map +1 -1
  113. package/dist/components/primitives/link/link.d.ts +42 -0
  114. package/dist/components/primitives/link/link.js +83 -0
  115. package/dist/components/primitives/link/link.js.map +1 -0
  116. package/dist/components/primitives/separator/separator.js +1 -1
  117. package/dist/components/primitives/separator/separator.js.map +1 -1
  118. package/dist/components/primitives/sheet/sheet.d.ts +29 -0
  119. package/dist/components/primitives/sheet/sheet.js +117 -0
  120. package/dist/components/primitives/sheet/sheet.js.map +1 -0
  121. package/dist/components/primitives/skeleton/skeleton.js +1 -1
  122. package/dist/components/primitives/skeleton/skeleton.js.map +1 -1
  123. package/dist/components/primitives/sonner/sonner.d.ts +7 -0
  124. package/dist/components/primitives/sonner/sonner.js +42 -0
  125. package/dist/components/primitives/sonner/sonner.js.map +1 -0
  126. package/dist/components/primitives/sonner/use-toast.d.ts +24 -0
  127. package/dist/components/primitives/sonner/use-toast.js +21 -0
  128. package/dist/components/primitives/sonner/use-toast.js.map +1 -0
  129. package/dist/components/primitives/spinner/spinner.js +1 -1
  130. package/dist/components/primitives/spinner/spinner.js.map +1 -1
  131. package/dist/components/primitives/stack/stack.d.ts +5 -1
  132. package/dist/components/primitives/stack/stack.js +46 -5
  133. package/dist/components/primitives/stack/stack.js.map +1 -1
  134. package/dist/components/primitives/text/{text-heading.d.ts → heading.d.ts} +5 -5
  135. package/dist/components/primitives/text/heading.js +53 -0
  136. package/dist/components/primitives/text/heading.js.map +1 -0
  137. package/dist/components/primitives/text/internal/text-element.d.ts +30 -4
  138. package/dist/components/primitives/text/internal/text-element.js +24 -14
  139. package/dist/components/primitives/text/internal/text-element.js.map +1 -1
  140. package/dist/components/primitives/text/text-code.d.ts +26 -0
  141. package/dist/components/primitives/text/text-code.js +44 -0
  142. package/dist/components/primitives/text/text-code.js.map +1 -0
  143. package/dist/components/primitives/text/text-div.d.ts +1 -1
  144. package/dist/components/primitives/text/text-div.js +2 -2
  145. package/dist/components/primitives/text/text-div.js.map +1 -1
  146. package/dist/components/primitives/text/text-span.js +2 -2
  147. package/dist/components/primitives/text/text-span.js.map +1 -1
  148. package/dist/components/primitives/text/text-time.js +2 -2
  149. package/dist/components/primitives/text/text-time.js.map +1 -1
  150. package/dist/components/primitives/text/text.d.ts +16 -0
  151. package/dist/components/primitives/text/{text-paragraph.js → text.js} +16 -5
  152. package/dist/components/primitives/text/text.js.map +1 -0
  153. package/dist/components/primitives/{ui-image.d.ts → ui-image/ui-image.d.ts} +1 -1
  154. package/dist/components/primitives/{ui-image.js → ui-image/ui-image.js} +4 -7
  155. package/dist/components/primitives/ui-image/ui-image.js.map +1 -0
  156. package/dist/components/primitives/ui-link/ui-link.d.ts +8 -0
  157. package/dist/components/primitives/ui-link/ui-link.js +19 -0
  158. package/dist/components/primitives/ui-link/ui-link.js.map +1 -0
  159. package/dist/components/providers/LinkContext.d.ts +1 -1
  160. package/dist/components/providers/LinkContext.js +1 -1
  161. package/dist/components/providers/LinkContext.js.map +1 -1
  162. package/dist/components/providers/SingularityContext.d.ts +4 -1
  163. package/dist/components/providers/SingularityContext.js +7 -3
  164. package/dist/components/providers/SingularityContext.js.map +1 -1
  165. package/dist/components/providers/auth-provider.d.ts +15 -0
  166. package/dist/components/providers/auth-provider.js +30 -0
  167. package/dist/components/providers/auth-provider.js.map +1 -0
  168. package/dist/components/providers/index.d.ts +3 -0
  169. package/dist/components/providers/index.js +5 -3
  170. package/dist/components/providers/index.js.map +1 -1
  171. package/dist/components/providers/theme-provider.d.ts +27 -0
  172. package/dist/components/providers/theme-provider.js +75 -0
  173. package/dist/components/providers/theme-provider.js.map +1 -0
  174. package/dist/components/templates/container/container.d.ts +20 -0
  175. package/dist/components/templates/container/container.js +58 -0
  176. package/dist/components/templates/container/container.js.map +1 -0
  177. package/dist/components/templates/footer/footer.d.ts +5 -0
  178. package/dist/components/templates/footer/footer.js +12 -0
  179. package/dist/components/templates/footer/footer.js.map +1 -0
  180. package/dist/components/templates/form/form.d.ts +5 -0
  181. package/dist/components/templates/form/form.js +141 -0
  182. package/dist/components/templates/form/form.js.map +1 -0
  183. package/dist/components/templates/hero/hero.d.ts +18 -0
  184. package/dist/components/templates/hero/hero.js +301 -0
  185. package/dist/components/templates/hero/hero.js.map +1 -0
  186. package/dist/components/templates/index.d.ts +5 -0
  187. package/dist/components/templates/index.js +5 -0
  188. package/dist/components/templates/index.js.map +1 -0
  189. package/dist/components/templates/navigation/header.d.ts +19 -0
  190. package/dist/components/templates/navigation/header.js +222 -0
  191. package/dist/components/templates/navigation/header.js.map +1 -0
  192. package/dist/components/templates/navigation/index.d.ts +3 -0
  193. package/dist/components/templates/navigation/index.js +2 -0
  194. package/dist/components/templates/navigation/index.js.map +1 -0
  195. package/dist/css/variables.css +75 -73
  196. package/dist/css/variables.css.map +1 -1
  197. package/dist/data/authors.d.ts +12 -0
  198. package/dist/data/authors.js +33 -0
  199. package/dist/data/authors.js.map +1 -0
  200. package/dist/data/posts.d.ts +22 -0
  201. package/dist/data/posts.js +285 -0
  202. package/dist/data/posts.js.map +1 -0
  203. package/dist/index.d.ts +43 -10
  204. package/dist/index.js +1 -1
  205. package/dist/index.js.map +1 -1
  206. package/dist/lib/helpers/index.js +1 -1
  207. package/dist/lib/helpers/index.js.map +1 -1
  208. package/dist/lib/hooks/useIsClient.d.ts +3 -0
  209. package/dist/lib/hooks/useIsClient.js +14 -0
  210. package/dist/lib/hooks/useIsClient.js.map +1 -0
  211. package/dist/lib/index.d.ts +1 -0
  212. package/dist/lib/index.js +2 -1
  213. package/dist/lib/index.js.map +1 -1
  214. package/dist/lib/types.d.ts +4 -8
  215. package/dist/main.css +2026 -455
  216. package/dist/main.css.map +1 -1
  217. package/dist/{utils.js → utils/index.js} +1 -1
  218. package/dist/utils/index.js.map +1 -0
  219. package/dist/utils/index.test.js +37 -0
  220. package/dist/utils/index.test.js.map +1 -0
  221. package/package.json +80 -44
  222. package/dist/components/primitives/accordion/accordion.stories.d.ts +0 -15
  223. package/dist/components/primitives/accordion/accordion.stories.js +0 -60
  224. package/dist/components/primitives/accordion/accordion.stories.js.map +0 -1
  225. package/dist/components/primitives/alert/alert.stories.d.ts +0 -22
  226. package/dist/components/primitives/alert/alert.stories.js +0 -37
  227. package/dist/components/primitives/alert/alert.stories.js.map +0 -1
  228. package/dist/components/primitives/button/button.js +0 -56
  229. package/dist/components/primitives/button/button.js.map +0 -1
  230. package/dist/components/primitives/button/button.stories.d.ts +0 -34
  231. package/dist/components/primitives/button/button.stories.js +0 -74
  232. package/dist/components/primitives/button/button.stories.js.map +0 -1
  233. package/dist/components/primitives/button/button_with_icon_variant.js +0 -1
  234. package/dist/components/primitives/button/button_with_icon_variant.js.map +0 -1
  235. package/dist/components/primitives/icon/icon.stories.d.ts +0 -27
  236. package/dist/components/primitives/icon/icon.stories.js +0 -30
  237. package/dist/components/primitives/icon/icon.stories.js.map +0 -1
  238. package/dist/components/primitives/layout/layout.stories.d.ts +0 -32
  239. package/dist/components/primitives/layout/layout.stories.js +0 -72
  240. package/dist/components/primitives/layout/layout.stories.js.map +0 -1
  241. package/dist/components/primitives/separator/separator.stories.d.ts +0 -15
  242. package/dist/components/primitives/separator/separator.stories.js +0 -18
  243. package/dist/components/primitives/separator/separator.stories.js.map +0 -1
  244. package/dist/components/primitives/skeleton/skeleton.stories.d.ts +0 -13
  245. package/dist/components/primitives/skeleton/skeleton.stories.js +0 -16
  246. package/dist/components/primitives/skeleton/skeleton.stories.js.map +0 -1
  247. package/dist/components/primitives/spinner/spinner.stories.d.ts +0 -16
  248. package/dist/components/primitives/spinner/spinner.stories.js +0 -34
  249. package/dist/components/primitives/spinner/spinner.stories.js.map +0 -1
  250. package/dist/components/primitives/stack/stack.stories.d.ts +0 -13
  251. package/dist/components/primitives/stack/stack.stories.js +0 -26
  252. package/dist/components/primitives/stack/stack.stories.js.map +0 -1
  253. package/dist/components/primitives/text/text-div.stories.d.ts +0 -32
  254. package/dist/components/primitives/text/text-div.stories.js +0 -59
  255. package/dist/components/primitives/text/text-div.stories.js.map +0 -1
  256. package/dist/components/primitives/text/text-heading.js +0 -53
  257. package/dist/components/primitives/text/text-heading.js.map +0 -1
  258. package/dist/components/primitives/text/text-heading.stories.d.ts +0 -27
  259. package/dist/components/primitives/text/text-heading.stories.js +0 -47
  260. package/dist/components/primitives/text/text-heading.stories.js.map +0 -1
  261. package/dist/components/primitives/text/text-paragraph.d.ts +0 -10
  262. package/dist/components/primitives/text/text-paragraph.js.map +0 -1
  263. package/dist/components/primitives/text/text-span.stories.d.ts +0 -31
  264. package/dist/components/primitives/text/text-span.stories.js +0 -59
  265. package/dist/components/primitives/text/text-span.stories.js.map +0 -1
  266. package/dist/components/primitives/ui-image.js.map +0 -1
  267. package/dist/components/primitives/ui-link.d.ts +0 -6
  268. package/dist/components/primitives/ui-link.js +0 -22
  269. package/dist/components/primitives/ui-link.js.map +0 -1
  270. package/dist/components/units/cards/blog-card.d.ts +0 -19
  271. package/dist/components/units/cards/blog-card.js +0 -82
  272. package/dist/components/units/cards/blog-card.js.map +0 -1
  273. package/dist/components/units/cards/card.d.ts +0 -15
  274. package/dist/components/units/cards/card.js +0 -89
  275. package/dist/components/units/cards/card.js.map +0 -1
  276. package/dist/components/units/cards/cards.d.ts +0 -17
  277. package/dist/components/units/cards/cards.js +0 -37
  278. package/dist/components/units/cards/cards.js.map +0 -1
  279. package/dist/components/units/index.d.ts +0 -5
  280. package/dist/components/units/index.js +0 -4
  281. package/dist/components/units/index.js.map +0 -1
  282. package/dist/utils.js.map +0 -1
  283. /package/dist/{utils.d.ts → utils/index.d.ts} +0 -0
  284. /package/dist/{components/primitives/button/button_with_icon_variant.d.ts → utils/index.test.d.ts} +0 -0
@@ -0,0 +1,117 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import * as React from "react";
4
+ import * as SheetPrimitive from "@radix-ui/react-dialog";
5
+ import { cva } from "class-variance-authority";
6
+ import { icons } from "lucide-react";
7
+ import { cn } from "singularity-components/utils";
8
+ const Sheet = SheetPrimitive.Root;
9
+ const SheetTrigger = SheetPrimitive.Trigger;
10
+ const SheetClose = SheetPrimitive.Close;
11
+ const SheetPortal = SheetPrimitive.Portal;
12
+ const SheetOverlay = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
13
+ SheetPrimitive.Overlay,
14
+ {
15
+ className: cn(
16
+ "sg:fixed sg:inset-0 sg:z-50 sg:bg-black/80 sg:data-[state=open]:animate-in sg:data-[state=closed]:animate-out sg:data-[state=closed]:fade-out-0 sg:data-[state=open]:fade-in-0",
17
+ className
18
+ ),
19
+ ...props,
20
+ ref
21
+ }
22
+ ));
23
+ SheetOverlay.displayName = SheetPrimitive.Overlay.displayName;
24
+ const sheetVariants = cva(
25
+ "sg:fixed sg:z-50 sg:gap-4 sg:bg-background sg:p-6 sg:shadow-lg sg:transition sg:ease-in-out sg:data-[state=open]:animate-in sg:data-[state=closed]:animate-out sg:data-[state=closed]:duration-300 sg:data-[state=open]:duration-500",
26
+ {
27
+ variants: {
28
+ side: {
29
+ top: "sg:inset-x-0 sg:top-0 sg:border-b sg:data-[state=closed]:slide-out-to-top sg:data-[state=open]:slide-in-from-top",
30
+ bottom: "sg:inset-x-0 sg:bottom-0 sg:border-t sg:data-[state=closed]:slide-out-to-bottom sg:data-[state=open]:slide-in-from-bottom",
31
+ left: "sg:inset-y-0 sg:left-0 sg:h-full sg:w-3/4 sg:border-r sg:data-[state=closed]:slide-out-to-left sg:data-[state=open]:slide-in-from-left sg:sm:max-w-sm",
32
+ right: "sg:inset-y-0 sg:right-0 sg:h-full sg:w-3/4 sg:border-l sg:data-[state=closed]:slide-out-to-right sg:data-[state=open]:slide-in-from-right sg:sm:max-w-sm"
33
+ }
34
+ },
35
+ defaultVariants: {
36
+ side: "right"
37
+ }
38
+ }
39
+ );
40
+ const SheetContent = React.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(SheetPortal, { children: [
41
+ /* @__PURE__ */ jsx(SheetOverlay, {}),
42
+ /* @__PURE__ */ jsxs(
43
+ SheetPrimitive.Content,
44
+ {
45
+ ref,
46
+ className: cn(sheetVariants({ side }), className),
47
+ ...props,
48
+ children: [
49
+ /* @__PURE__ */ jsxs(SheetPrimitive.Close, { className: "sg:absolute sg:right-4 sg:top-4 sg:rounded-sm sg:opacity-70 sg:ring-offset-background sg:transition-opacity sg:hover:opacity-100 sg:focus:outline-none sg:focus:ring-2 sg:focus:ring-ring sg:focus:ring-offset-2 sg:disabled:pointer-events-none sg:data-[state=open]:bg-secondary", children: [
50
+ /* @__PURE__ */ jsx(icons.X, { className: "sg:h-4 sg:w-4" }),
51
+ /* @__PURE__ */ jsx("span", { className: "sg:sr-only", children: "Close" })
52
+ ] }),
53
+ children
54
+ ]
55
+ }
56
+ )
57
+ ] }));
58
+ SheetContent.displayName = SheetPrimitive.Content.displayName;
59
+ const SheetHeader = ({
60
+ className,
61
+ ...props
62
+ }) => /* @__PURE__ */ jsx(
63
+ "div",
64
+ {
65
+ className: cn(
66
+ "sg:flex sg:flex-col sg:space-y-2 sg:text-center sg:sm:text-left",
67
+ className
68
+ ),
69
+ ...props
70
+ }
71
+ );
72
+ SheetHeader.displayName = "SheetHeader";
73
+ const SheetFooter = ({
74
+ className,
75
+ ...props
76
+ }) => /* @__PURE__ */ jsx(
77
+ "div",
78
+ {
79
+ className: cn(
80
+ "sg:flex sg:flex-col-reverse sg:sm:flex-row sg:sm:justify-end sg:sm:space-x-2",
81
+ className
82
+ ),
83
+ ...props
84
+ }
85
+ );
86
+ SheetFooter.displayName = "SheetFooter";
87
+ const SheetTitle = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
88
+ SheetPrimitive.Title,
89
+ {
90
+ ref,
91
+ className: cn("sg:text-lg sg:font-semibold sg:text-foreground", className),
92
+ ...props
93
+ }
94
+ ));
95
+ SheetTitle.displayName = SheetPrimitive.Title.displayName;
96
+ const SheetDescription = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
97
+ SheetPrimitive.Description,
98
+ {
99
+ ref,
100
+ className: cn("sg:text-sm sg:text-muted-foreground", className),
101
+ ...props
102
+ }
103
+ ));
104
+ SheetDescription.displayName = SheetPrimitive.Description.displayName;
105
+ export {
106
+ Sheet,
107
+ SheetClose,
108
+ SheetContent,
109
+ SheetDescription,
110
+ SheetFooter,
111
+ SheetHeader,
112
+ SheetOverlay,
113
+ SheetPortal,
114
+ SheetTitle,
115
+ SheetTrigger
116
+ };
117
+ //# sourceMappingURL=sheet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/primitives/sheet/sheet.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as SheetPrimitive from \"@radix-ui/react-dialog\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { icons } from \"lucide-react\";\n\nimport { cn } from \"singularity-components/utils\";\n\nconst Sheet = SheetPrimitive.Root;\n\nconst SheetTrigger = SheetPrimitive.Trigger;\n\nconst SheetClose = SheetPrimitive.Close;\n\nconst SheetPortal = SheetPrimitive.Portal;\n\nconst SheetOverlay = React.forwardRef<\n React.ElementRef<typeof SheetPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof SheetPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <SheetPrimitive.Overlay\n className={cn(\n \"sg:fixed sg:inset-0 sg:z-50 sg:bg-black/80 sg:data-[state=open]:animate-in sg:data-[state=closed]:animate-out sg:data-[state=closed]:fade-out-0 sg:data-[state=open]:fade-in-0\",\n className,\n )}\n {...props}\n ref={ref}\n />\n));\nSheetOverlay.displayName = SheetPrimitive.Overlay.displayName;\n\nconst sheetVariants = cva(\n \"sg:fixed sg:z-50 sg:gap-4 sg:bg-background sg:p-6 sg:shadow-lg sg:transition sg:ease-in-out sg:data-[state=open]:animate-in sg:data-[state=closed]:animate-out sg:data-[state=closed]:duration-300 sg:data-[state=open]:duration-500\",\n {\n variants: {\n side: {\n top: \"sg:inset-x-0 sg:top-0 sg:border-b sg:data-[state=closed]:slide-out-to-top sg:data-[state=open]:slide-in-from-top\",\n bottom:\n \"sg:inset-x-0 sg:bottom-0 sg:border-t sg:data-[state=closed]:slide-out-to-bottom sg:data-[state=open]:slide-in-from-bottom\",\n left: \"sg:inset-y-0 sg:left-0 sg:h-full sg:w-3/4 sg:border-r sg:data-[state=closed]:slide-out-to-left sg:data-[state=open]:slide-in-from-left sg:sm:max-w-sm\",\n right:\n \"sg:inset-y-0 sg:right-0 sg:h-full sg:w-3/4 sg:border-l sg:data-[state=closed]:slide-out-to-right sg:data-[state=open]:slide-in-from-right sg:sm:max-w-sm\",\n },\n },\n defaultVariants: {\n side: \"right\",\n },\n },\n);\n\ninterface SheetContentProps\n extends\n React.ComponentPropsWithoutRef<typeof SheetPrimitive.Content>,\n VariantProps<typeof sheetVariants> {}\n\nconst SheetContent = React.forwardRef<\n React.ElementRef<typeof SheetPrimitive.Content>,\n SheetContentProps\n>(({ side = \"right\", className, children, ...props }, ref) => (\n <SheetPortal>\n <SheetOverlay />\n <SheetPrimitive.Content\n ref={ref}\n className={cn(sheetVariants({ side }), className)}\n {...props}\n >\n <SheetPrimitive.Close className=\"sg:absolute sg:right-4 sg:top-4 sg:rounded-sm sg:opacity-70 sg:ring-offset-background sg:transition-opacity sg:hover:opacity-100 sg:focus:outline-none sg:focus:ring-2 sg:focus:ring-ring sg:focus:ring-offset-2 sg:disabled:pointer-events-none sg:data-[state=open]:bg-secondary\">\n <icons.X className=\"sg:h-4 sg:w-4\" />\n <span className=\"sg:sr-only\">Close</span>\n </SheetPrimitive.Close>\n {children}\n </SheetPrimitive.Content>\n </SheetPortal>\n));\nSheetContent.displayName = SheetPrimitive.Content.displayName;\n\nconst SheetHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"sg:flex sg:flex-col sg:space-y-2 sg:text-center sg:sm:text-left\",\n className,\n )}\n {...props}\n />\n);\nSheetHeader.displayName = \"SheetHeader\";\n\nconst SheetFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"sg:flex sg:flex-col-reverse sg:sm:flex-row sg:sm:justify-end sg:sm:space-x-2\",\n className,\n )}\n {...props}\n />\n);\nSheetFooter.displayName = \"SheetFooter\";\n\nconst SheetTitle = React.forwardRef<\n React.ElementRef<typeof SheetPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof SheetPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <SheetPrimitive.Title\n ref={ref}\n className={cn(\"sg:text-lg sg:font-semibold sg:text-foreground\", className)}\n {...props}\n />\n));\nSheetTitle.displayName = SheetPrimitive.Title.displayName;\n\nconst SheetDescription = React.forwardRef<\n React.ElementRef<typeof SheetPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof SheetPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <SheetPrimitive.Description\n ref={ref}\n className={cn(\"sg:text-sm sg:text-muted-foreground\", className)}\n {...props}\n />\n));\nSheetDescription.displayName = SheetPrimitive.Description.displayName;\n\nexport {\n Sheet,\n SheetPortal,\n SheetOverlay,\n SheetTrigger,\n SheetClose,\n SheetContent,\n SheetHeader,\n SheetFooter,\n SheetTitle,\n SheetDescription,\n};\n"],"mappings":";AAqBE,cA8CI,YA9CJ;AAnBF,YAAY,WAAW;AACvB,YAAY,oBAAoB;AAChC,SAAS,WAA8B;AACvC,SAAS,aAAa;AAEtB,SAAS,UAAU;AAEnB,MAAM,QAAQ,eAAe;AAE7B,MAAM,eAAe,eAAe;AAEpC,MAAM,aAAa,eAAe;AAElC,MAAM,cAAc,eAAe;AAEnC,MAAM,eAAe,MAAM,WAGzB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC,eAAe;AAAA,EAAf;AAAA,IACC,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA,IACJ;AAAA;AACF,CACD;AACD,aAAa,cAAc,eAAe,QAAQ;AAElD,MAAM,gBAAgB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,KAAK;AAAA,QACL,QACE;AAAA,QACF,MAAM;AAAA,QACN,OACE;AAAA,MACJ;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAOA,MAAM,eAAe,MAAM,WAGzB,CAAC,EAAE,OAAO,SAAS,WAAW,UAAU,GAAG,MAAM,GAAG,QACpD,qBAAC,eACC;AAAA,sBAAC,gBAAa;AAAA,EACd;AAAA,IAAC,eAAe;AAAA,IAAf;AAAA,MACC;AAAA,MACA,WAAW,GAAG,cAAc,EAAE,KAAK,CAAC,GAAG,SAAS;AAAA,MAC/C,GAAG;AAAA,MAEJ;AAAA,6BAAC,eAAe,OAAf,EAAqB,WAAU,sRAC9B;AAAA,8BAAC,MAAM,GAAN,EAAQ,WAAU,iBAAgB;AAAA,UACnC,oBAAC,UAAK,WAAU,cAAa,mBAAK;AAAA,WACpC;AAAA,QACC;AAAA;AAAA;AAAA,EACH;AAAA,GACF,CACD;AACD,aAAa,cAAc,eAAe,QAAQ;AAElD,MAAM,cAAc,CAAC;AAAA,EACnB;AAAA,EACA,GAAG;AACL,MACE;AAAA,EAAC;AAAA;AAAA,IACC,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN;AAEF,YAAY,cAAc;AAE1B,MAAM,cAAc,CAAC;AAAA,EACnB;AAAA,EACA,GAAG;AACL,MACE;AAAA,EAAC;AAAA;AAAA,IACC,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN;AAEF,YAAY,cAAc;AAE1B,MAAM,aAAa,MAAM,WAGvB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC,eAAe;AAAA,EAAf;AAAA,IACC;AAAA,IACA,WAAW,GAAG,kDAAkD,SAAS;AAAA,IACxE,GAAG;AAAA;AACN,CACD;AACD,WAAW,cAAc,eAAe,MAAM;AAE9C,MAAM,mBAAmB,MAAM,WAG7B,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC,eAAe;AAAA,EAAf;AAAA,IACC;AAAA,IACA,WAAW,GAAG,uCAAuC,SAAS;AAAA,IAC7D,GAAG;AAAA;AACN,CACD;AACD,iBAAiB,cAAc,eAAe,YAAY;","names":[]}
@@ -1,5 +1,5 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { cn } from "../../../utils";
2
+ import { cn } from "../../../utils/index.js";
3
3
  function Skeleton({ className, ...props }) {
4
4
  return /* @__PURE__ */ jsx(
5
5
  "div",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/primitives/skeleton/skeleton.tsx"],"sourcesContent":["import { cn } from \"../../../utils\";\n\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"sg:bg-accent sg:animate-pulse sg:rounded-md\", className)}\n {...props}\n />\n );\n}\n\nexport { Skeleton };\n"],"mappings":"AAII;AAJJ,SAAS,UAAU;AAEnB,SAAS,SAAS,EAAE,WAAW,GAAG,MAAM,GAAgC;AACtE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,+CAA+C,SAAS;AAAA,MACrE,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/primitives/skeleton/skeleton.tsx"],"sourcesContent":["import { cn } from \"../../../utils/index\";\n\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"sg:bg-accent sg:animate-pulse sg:rounded-md\", className)}\n {...props}\n />\n );\n}\n\nexport { Skeleton };\n"],"mappings":"AAII;AAJJ,SAAS,UAAU;AAEnB,SAAS,SAAS,EAAE,WAAW,GAAG,MAAM,GAAgC;AACtE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,+CAA+C,SAAS;AAAA,MACrE,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ToasterProps } from 'sonner';
3
+ export { toast } from 'sonner';
4
+
5
+ declare const Toaster: ({ ...props }: ToasterProps) => react_jsx_runtime.JSX.Element;
6
+
7
+ export { Toaster };
@@ -0,0 +1,42 @@
1
+ "use client";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { Toaster as Sonner, toast } from "sonner";
4
+ import {
5
+ CircleCheckIcon,
6
+ InfoIcon,
7
+ TriangleAlertIcon,
8
+ OctagonXIcon,
9
+ Loader2Icon
10
+ } from "lucide-react";
11
+ import { useTheme } from "../../providers/theme-provider.js";
12
+ const Toaster = ({ ...props }) => {
13
+ const { theme } = useTheme();
14
+ return /* @__PURE__ */ jsx(
15
+ Sonner,
16
+ {
17
+ theme,
18
+ className: "sg:toaster sg:group",
19
+ icons: {
20
+ success: /* @__PURE__ */ jsx(CircleCheckIcon, { className: "sg:size-4" }),
21
+ info: /* @__PURE__ */ jsx(InfoIcon, { className: "sg:size-4" }),
22
+ warning: /* @__PURE__ */ jsx(TriangleAlertIcon, { className: "sg:size-4" }),
23
+ error: /* @__PURE__ */ jsx(OctagonXIcon, { className: "sg:size-4" }),
24
+ loading: /* @__PURE__ */ jsx(Loader2Icon, { className: "sg:size-4 sg:animate-spin" })
25
+ },
26
+ toastOptions: {
27
+ classNames: {
28
+ toast: "sg:group sg:toast sg:group-[.toaster]:bg-background sg:group-[.toaster]:text-foreground sg:group-[.toaster]:border-border sg:group-[.toaster]:shadow-lg",
29
+ description: "sg:group-[.toast]:text-muted-foreground",
30
+ actionButton: "sg:group-[.toast]:bg-primary sg:group-[.toast]:text-primary-foreground",
31
+ cancelButton: "sg:group-[.toast]:bg-muted sg:group-[.toast]:text-muted-foreground"
32
+ }
33
+ },
34
+ ...props
35
+ }
36
+ );
37
+ };
38
+ export {
39
+ Toaster,
40
+ toast
41
+ };
42
+ //# sourceMappingURL=sonner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/primitives/sonner/sonner.tsx"],"sourcesContent":["\"use client\";\nimport { Toaster as Sonner, toast, type ToasterProps } from \"sonner\";\nimport {\n CircleCheckIcon,\n InfoIcon,\n TriangleAlertIcon,\n OctagonXIcon,\n Loader2Icon,\n} from \"lucide-react\";\nimport { useTheme } from \"../../providers/theme-provider\";\n\nconst Toaster = ({ ...props }: ToasterProps) => {\n const { theme } = useTheme();\n\n return (\n <Sonner\n theme={theme}\n className=\"sg:toaster sg:group\"\n icons={{\n success: <CircleCheckIcon className=\"sg:size-4\" />,\n info: <InfoIcon className=\"sg:size-4\" />,\n warning: <TriangleAlertIcon className=\"sg:size-4\" />,\n error: <OctagonXIcon className=\"sg:size-4\" />,\n loading: <Loader2Icon className=\"sg:size-4 sg:animate-spin\" />,\n }}\n toastOptions={{\n classNames: {\n toast:\n \"sg:group sg:toast sg:group-[.toaster]:bg-background sg:group-[.toaster]:text-foreground sg:group-[.toaster]:border-border sg:group-[.toaster]:shadow-lg\",\n description: \"sg:group-[.toast]:text-muted-foreground\",\n actionButton:\n \"sg:group-[.toast]:bg-primary sg:group-[.toast]:text-primary-foreground\",\n cancelButton:\n \"sg:group-[.toast]:bg-muted sg:group-[.toast]:text-muted-foreground\",\n },\n }}\n {...props}\n />\n );\n};\n\nexport { Toaster, toast };\n"],"mappings":";AAmBiB;AAlBjB,SAAS,WAAW,QAAQ,aAAgC;AAC5D;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,gBAAgB;AAEzB,MAAM,UAAU,CAAC,EAAE,GAAG,MAAM,MAAoB;AAC9C,QAAM,EAAE,MAAM,IAAI,SAAS;AAE3B,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,WAAU;AAAA,MACV,OAAO;AAAA,QACL,SAAS,oBAAC,mBAAgB,WAAU,aAAY;AAAA,QAChD,MAAM,oBAAC,YAAS,WAAU,aAAY;AAAA,QACtC,SAAS,oBAAC,qBAAkB,WAAU,aAAY;AAAA,QAClD,OAAO,oBAAC,gBAAa,WAAU,aAAY;AAAA,QAC3C,SAAS,oBAAC,eAAY,WAAU,6BAA4B;AAAA,MAC9D;AAAA,MACA,cAAc;AAAA,QACZ,YAAY;AAAA,UACV,OACE;AAAA,UACF,aAAa;AAAA,UACb,cACE;AAAA,UACF,cACE;AAAA,QACJ;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
@@ -0,0 +1,24 @@
1
+ import { ExternalToast } from 'sonner';
2
+
3
+ type ToastId = string | number;
4
+ type Toast = {
5
+ (message: string, opts?: ExternalToast): ToastId;
6
+ message: (message: string, opts?: ExternalToast) => ToastId;
7
+ success: (message: string, opts?: ExternalToast) => ToastId;
8
+ error: (message: string, opts?: ExternalToast) => ToastId;
9
+ warning: (message: string, opts?: ExternalToast) => ToastId;
10
+ info: (message: string, opts?: ExternalToast) => ToastId;
11
+ promise: <T>(promise: Promise<T>, opts?: ExternalToast & {
12
+ loading?: string;
13
+ success?: string;
14
+ error?: string;
15
+ }) => ToastId;
16
+ dismiss: (id?: ToastId) => void;
17
+ };
18
+ declare const toast: Toast;
19
+ declare function useToast(): {
20
+ toast: Toast;
21
+ dismiss: (id?: ToastId) => void;
22
+ };
23
+
24
+ export { toast, useToast };
@@ -0,0 +1,21 @@
1
+ import { toast as sonnerToast } from "sonner";
2
+ const toastFn = (message, opts) => sonnerToast(message, opts);
3
+ toastFn.message = (message, opts) => sonnerToast(message, opts);
4
+ toastFn.success = (message, opts) => sonnerToast.success(message, opts);
5
+ toastFn.error = (message, opts) => sonnerToast.error(message, opts);
6
+ toastFn.warning = (message, opts) => sonnerToast.warning(message, opts);
7
+ toastFn.info = (message, opts) => sonnerToast.info(message, opts);
8
+ toastFn.promise = (promise, opts) => sonnerToast.promise(promise, opts);
9
+ toastFn.dismiss = (id) => sonnerToast.dismiss(id);
10
+ const toast = toastFn;
11
+ function useToast() {
12
+ return {
13
+ toast,
14
+ dismiss: (id) => sonnerToast.dismiss(id)
15
+ };
16
+ }
17
+ export {
18
+ toast,
19
+ useToast
20
+ };
21
+ //# sourceMappingURL=use-toast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/primitives/sonner/use-toast.ts"],"sourcesContent":["import { toast as sonnerToast, type ExternalToast } from \"sonner\";\n\ntype ToastId = string | number;\n\ntype Toast = {\n (message: string, opts?: ExternalToast): ToastId;\n message: (message: string, opts?: ExternalToast) => ToastId;\n success: (message: string, opts?: ExternalToast) => ToastId;\n error: (message: string, opts?: ExternalToast) => ToastId;\n warning: (message: string, opts?: ExternalToast) => ToastId;\n info: (message: string, opts?: ExternalToast) => ToastId;\n promise: <T>(\n promise: Promise<T>,\n opts?: ExternalToast & {\n loading?: string;\n success?: string;\n error?: string;\n },\n ) => ToastId;\n dismiss: (id?: ToastId) => void;\n};\n\nconst toastFn = (message: string, opts?: ExternalToast): ToastId =>\n sonnerToast(message, opts) as ToastId;\n\ntoastFn.message = (message: string, opts?: ExternalToast): ToastId =>\n sonnerToast(message, opts) as ToastId;\ntoastFn.success = (message: string, opts?: ExternalToast): ToastId =>\n sonnerToast.success(message, opts) as ToastId;\ntoastFn.error = (message: string, opts?: ExternalToast): ToastId =>\n sonnerToast.error(message, opts) as ToastId;\ntoastFn.warning = (message: string, opts?: ExternalToast): ToastId =>\n sonnerToast.warning(message, opts) as ToastId;\ntoastFn.info = (message: string, opts?: ExternalToast): ToastId =>\n sonnerToast.info(message, opts) as ToastId;\ntoastFn.promise = <T>(\n promise: Promise<T>,\n opts?: ExternalToast & {\n loading?: string;\n success?: string;\n error?: string;\n },\n): ToastId => sonnerToast.promise(promise, opts) as ToastId;\ntoastFn.dismiss = (id?: ToastId): string | number => sonnerToast.dismiss(id);\n\nexport const toast = toastFn as Toast;\n\nexport function useToast(): {\n toast: Toast;\n dismiss: (id?: ToastId) => void;\n} {\n return {\n toast,\n dismiss: (id?: ToastId): string | number => sonnerToast.dismiss(id),\n };\n}\n"],"mappings":"AAAA,SAAS,SAAS,mBAAuC;AAsBzD,MAAM,UAAU,CAAC,SAAiB,SAChC,YAAY,SAAS,IAAI;AAE3B,QAAQ,UAAU,CAAC,SAAiB,SAClC,YAAY,SAAS,IAAI;AAC3B,QAAQ,UAAU,CAAC,SAAiB,SAClC,YAAY,QAAQ,SAAS,IAAI;AACnC,QAAQ,QAAQ,CAAC,SAAiB,SAChC,YAAY,MAAM,SAAS,IAAI;AACjC,QAAQ,UAAU,CAAC,SAAiB,SAClC,YAAY,QAAQ,SAAS,IAAI;AACnC,QAAQ,OAAO,CAAC,SAAiB,SAC/B,YAAY,KAAK,SAAS,IAAI;AAChC,QAAQ,UAAU,CAChB,SACA,SAKY,YAAY,QAAQ,SAAS,IAAI;AAC/C,QAAQ,UAAU,CAAC,OAAkC,YAAY,QAAQ,EAAE;AAEpE,MAAM,QAAQ;AAEd,SAAS,WAGd;AACA,SAAO;AAAA,IACL;AAAA,IACA,SAAS,CAAC,OAAkC,YAAY,QAAQ,EAAE;AAAA,EACpE;AACF;","names":[]}
@@ -1,5 +1,5 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { cn } from "../../../utils";
2
+ import { cn } from "../../../utils/index.js";
3
3
  import { Loader2Icon } from "lucide-react";
4
4
  function Spinner({ className, ...props }) {
5
5
  return /* @__PURE__ */ jsx(
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/primitives/spinner/spinner.tsx"],"sourcesContent":["import { cn } from \"../../../utils\";\r\nimport { Loader2Icon } from \"lucide-react\";\r\n\r\n// TODO: Can be added to stuff, like button and badge. See https://ui.shadcn.com/docs/components/base/spinner\r\n\r\nfunction Spinner({ className, ...props }: React.ComponentProps<\"svg\">) {\r\n return (\r\n <Loader2Icon\r\n role=\"status\"\r\n aria-label=\"Loading\"\r\n className={cn(\"sg:size-4 sg:animate-spin\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport { Spinner };\r\n"],"mappings":"AAOI;AAPJ,SAAS,UAAU;AACnB,SAAS,mBAAmB;AAI5B,SAAS,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAgC;AACrE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,cAAW;AAAA,MACX,WAAW,GAAG,6BAA6B,SAAS;AAAA,MACnD,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/primitives/spinner/spinner.tsx"],"sourcesContent":["import { cn } from \"../../../utils/index\";\r\nimport { Loader2Icon } from \"lucide-react\";\r\n\r\n// TODO: Can be added to stuff, like button and badge. See https://ui.shadcn.com/docs/components/base/spinner\r\n\r\nfunction Spinner({ className, ...props }: React.ComponentProps<\"svg\">) {\r\n return (\r\n <Loader2Icon\r\n role=\"status\"\r\n aria-label=\"Loading\"\r\n className={cn(\"sg:size-4 sg:animate-spin\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport { Spinner };\r\n"],"mappings":"AAOI;AAPJ,SAAS,UAAU;AACnB,SAAS,mBAAmB;AAI5B,SAAS,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAgC;AACrE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,cAAW;AAAA,MACX,WAAW,GAAG,6BAA6B,SAAS;AAAA,MACnD,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
@@ -3,7 +3,11 @@ import { VariantProps } from 'class-variance-authority';
3
3
  import * as React from 'react';
4
4
 
5
5
  declare const stackVariants: (props?: ({
6
- gap?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | null | undefined;
6
+ gap?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | null | undefined;
7
+ direction?: "row" | "column" | null | undefined;
8
+ wrap?: "default" | "wrap" | "nowrap" | null | undefined;
9
+ alignItems?: "center" | "default" | "end" | "start" | null | undefined;
10
+ justifyContent?: "center" | "default" | "end" | "start" | null | undefined;
7
11
  } & class_variance_authority_types.ClassProp) | undefined) => string;
8
12
  interface StackProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof stackVariants> {
9
13
  asChild?: boolean;
@@ -2,7 +2,7 @@ import { jsx } from "react/jsx-runtime";
2
2
  import { Slot } from "@radix-ui/react-slot";
3
3
  import { cva } from "class-variance-authority";
4
4
  import * as React from "react";
5
- import { cn } from "../../../utils";
5
+ import { cn } from "../../../utils/index.js";
6
6
  const stackVariants = cva("sg:flex sg:flex-col", {
7
7
  variants: {
8
8
  gap: {
@@ -16,20 +16,61 @@ const stackVariants = cva("sg:flex sg:flex-col", {
16
16
  7: "sg:gap-7",
17
17
  8: "sg:gap-8",
18
18
  9: "sg:gap-9",
19
- 10: "sg:gap-10"
19
+ 10: "sg:gap-10",
20
+ 11: "sg:gap-11",
21
+ 12: "sg:gap-12",
22
+ 13: "sg:gap-13",
23
+ 14: "sg:gap-14",
24
+ 15: "sg:gap-15",
25
+ 16: "sg:gap-16"
26
+ },
27
+ direction: {
28
+ column: "sg:flex-col",
29
+ row: "sg:flex-row"
30
+ },
31
+ wrap: {
32
+ default: "",
33
+ wrap: "sg:flex-wrap",
34
+ nowrap: "sg:flex-nowrap"
35
+ },
36
+ alignItems: {
37
+ default: "",
38
+ start: "sg:items-start",
39
+ center: "sg:items-center",
40
+ end: "sg:items-end"
41
+ },
42
+ justifyContent: {
43
+ default: "",
44
+ start: "sg:justify-start",
45
+ center: "sg:justify-center",
46
+ end: "sg:justify-end"
20
47
  }
21
48
  },
22
49
  defaultVariants: {
23
- gap: 0
50
+ gap: 0,
51
+ direction: "column",
52
+ wrap: "default"
24
53
  }
25
54
  });
26
55
  const Stack = React.forwardRef(
27
- ({ className, gap, asChild = false, ...props }, ref) => {
56
+ ({
57
+ className,
58
+ gap,
59
+ direction,
60
+ wrap,
61
+ alignItems,
62
+ justifyContent,
63
+ asChild = false,
64
+ ...props
65
+ }, ref) => {
28
66
  const Comp = asChild ? Slot : "div";
29
67
  return /* @__PURE__ */ jsx(
30
68
  Comp,
31
69
  {
32
- className: cn(stackVariants({ gap }), className),
70
+ className: cn(
71
+ stackVariants({ gap, direction, wrap, alignItems, justifyContent }),
72
+ className
73
+ ),
33
74
  ref,
34
75
  ...props
35
76
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/primitives/stack/stack.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport * as React from \"react\";\r\nimport { cn } from \"../../../utils\";\r\n\r\nconst stackVariants = cva(\"sg:flex sg:flex-col\", {\r\n variants: {\r\n gap: {\r\n 0: \"\",\r\n 1: \"sg:gap-1\",\r\n 2: \"sg:gap-2\",\r\n 3: \"sg:gap-3\",\r\n 4: \"sg:gap-4\",\r\n 5: \"sg:gap-5\",\r\n 6: \"sg:gap-6\",\r\n 7: \"sg:gap-7\",\r\n 8: \"sg:gap-8\",\r\n 9: \"sg:gap-9\",\r\n 10: \"sg:gap-10\",\r\n },\r\n },\r\n defaultVariants: {\r\n gap: 0,\r\n },\r\n});\r\n\r\nexport interface StackProps\r\n extends\r\n React.HTMLAttributes<HTMLDivElement>,\r\n VariantProps<typeof stackVariants> {\r\n asChild?: boolean;\r\n}\r\n\r\nconst Stack = React.forwardRef<HTMLDivElement, StackProps>(\r\n ({ className, gap, asChild = false, ...props }, ref) => {\r\n const Comp = asChild ? Slot : \"div\";\r\n return (\r\n <Comp\r\n className={cn(stackVariants({ gap }), className)}\r\n ref={ref}\r\n {...props}\r\n />\r\n );\r\n },\r\n);\r\nStack.displayName = \"Stack\";\r\n\r\nexport { Stack, stackVariants };\r\n"],"mappings":"AAqCM;AArCN,SAAS,YAAY;AACrB,SAAS,WAA8B;AACvC,YAAY,WAAW;AACvB,SAAS,UAAU;AAEnB,MAAM,gBAAgB,IAAI,uBAAuB;AAAA,EAC/C,UAAU;AAAA,IACR,KAAK;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,IAAI;AAAA,IACN;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,KAAK;AAAA,EACP;AACF,CAAC;AASD,MAAM,QAAQ,MAAM;AAAA,EAClB,CAAC,EAAE,WAAW,KAAK,UAAU,OAAO,GAAG,MAAM,GAAG,QAAQ;AACtD,UAAM,OAAO,UAAU,OAAO;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,GAAG,cAAc,EAAE,IAAI,CAAC,GAAG,SAAS;AAAA,QAC/C;AAAA,QACC,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AACA,MAAM,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/primitives/stack/stack.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport * as React from \"react\";\r\nimport { cn } from \"../../../utils/index\";\r\n\r\nconst stackVariants = cva(\"sg:flex sg:flex-col\", {\r\n variants: {\r\n gap: {\r\n 0: \"\",\r\n 1: \"sg:gap-1\",\r\n 2: \"sg:gap-2\",\r\n 3: \"sg:gap-3\",\r\n 4: \"sg:gap-4\",\r\n 5: \"sg:gap-5\",\r\n 6: \"sg:gap-6\",\r\n 7: \"sg:gap-7\",\r\n 8: \"sg:gap-8\",\r\n 9: \"sg:gap-9\",\r\n 10: \"sg:gap-10\",\r\n 11: \"sg:gap-11\",\r\n 12: \"sg:gap-12\",\r\n 13: \"sg:gap-13\",\r\n 14: \"sg:gap-14\",\r\n 15: \"sg:gap-15\",\r\n 16: \"sg:gap-16\",\r\n },\r\n direction: {\r\n column: \"sg:flex-col\",\r\n row: \"sg:flex-row\",\r\n },\r\n wrap: {\r\n default: \"\",\r\n wrap: \"sg:flex-wrap\",\r\n nowrap: \"sg:flex-nowrap\",\r\n },\r\n alignItems: {\r\n default: \"\",\r\n start: \"sg:items-start\",\r\n center: \"sg:items-center\",\r\n end: \"sg:items-end\",\r\n },\r\n justifyContent: {\r\n default: \"\",\r\n start: \"sg:justify-start\",\r\n center: \"sg:justify-center\",\r\n end: \"sg:justify-end\",\r\n },\r\n },\r\n defaultVariants: {\r\n gap: 0,\r\n direction: \"column\",\r\n wrap: \"default\",\r\n },\r\n});\r\n\r\nexport interface StackProps\r\n extends\r\n React.HTMLAttributes<HTMLDivElement>,\r\n VariantProps<typeof stackVariants> {\r\n asChild?: boolean;\r\n}\r\n\r\nconst Stack = React.forwardRef<HTMLDivElement, StackProps>(\r\n (\r\n {\r\n className,\r\n gap,\r\n direction,\r\n wrap,\r\n alignItems,\r\n justifyContent,\r\n asChild = false,\r\n ...props\r\n },\r\n ref,\r\n ) => {\r\n const Comp = asChild ? Slot : \"div\";\r\n return (\r\n <Comp\r\n className={cn(\r\n stackVariants({ gap, direction, wrap, alignItems, justifyContent }),\r\n className,\r\n )}\r\n ref={ref}\r\n {...props}\r\n />\r\n );\r\n },\r\n);\r\nStack.displayName = \"Stack\";\r\n\r\nexport { Stack, stackVariants };\r\n"],"mappings":"AA8EM;AA9EN,SAAS,YAAY;AACrB,SAAS,WAA8B;AACvC,YAAY,WAAW;AACvB,SAAS,UAAU;AAEnB,MAAM,gBAAgB,IAAI,uBAAuB;AAAA,EAC/C,UAAU;AAAA,IACR,KAAK;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IACN;AAAA,IACA,WAAW;AAAA,MACT,QAAQ;AAAA,MACR,KAAK;AAAA,IACP;AAAA,IACA,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,MAAM;AAAA,MACN,QAAQ;AAAA,IACV;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,KAAK;AAAA,IACP;AAAA,IACA,gBAAgB;AAAA,MACd,SAAS;AAAA,MACT,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,KAAK;AAAA,IACP;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,KAAK;AAAA,IACL,WAAW;AAAA,IACX,MAAM;AAAA,EACR;AACF,CAAC;AASD,MAAM,QAAQ,MAAM;AAAA,EAClB,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV,GAAG;AAAA,EACL,GACA,QACG;AACH,UAAM,OAAO,UAAU,OAAO;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW;AAAA,UACT,cAAc,EAAE,KAAK,WAAW,MAAM,YAAY,eAAe,CAAC;AAAA,UAClE;AAAA,QACF;AAAA,QACA;AAAA,QACC,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AACA,MAAM,cAAc;","names":[]}
@@ -4,7 +4,7 @@ import { VariantProps } from 'class-variance-authority';
4
4
  import { textElementVariantsProps } from './internal/text-element.js';
5
5
  import 'react';
6
6
 
7
- declare const textHeadingVariants: {
7
+ declare const headingVariants: {
8
8
  variant: {
9
9
  h1: string;
10
10
  h2: string;
@@ -14,13 +14,13 @@ declare const textHeadingVariants: {
14
14
  h6: string;
15
15
  };
16
16
  };
17
- declare const textHeadingVariantsProps: (props?: ({
17
+ declare const headingVariantsProps: (props?: ({
18
18
  variant?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | null | undefined;
19
19
  } & class_variance_authority_types.ClassProp) | undefined) => string;
20
- interface TextHeadingProps extends React.HTMLAttributes<HTMLHeadingElement>, VariantProps<typeof textHeadingVariantsProps> {
20
+ interface HeadingProps extends React.HTMLAttributes<HTMLHeadingElement>, VariantProps<typeof headingVariantsProps> {
21
21
  as?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
22
22
  foreground?: VariantProps<typeof textElementVariantsProps>["foreground"];
23
23
  }
24
- declare const TextHeading: ({ children, as, variant, foreground, className, ...props }: TextHeadingProps) => react_jsx_runtime.JSX.Element;
24
+ declare const Heading: ({ children, as, variant, foreground, className, ...props }: HeadingProps) => react_jsx_runtime.JSX.Element;
25
25
 
26
- export { TextHeading, type TextHeadingProps, textHeadingVariants, textHeadingVariantsProps };
26
+ export { Heading, type HeadingProps, headingVariants, headingVariantsProps };
@@ -0,0 +1,53 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { cva } from "class-variance-authority";
3
+ import { textElementVariantsProps } from "./internal/text-element.js";
4
+ import { cn } from "../../../utils/index.js";
5
+ const headingVariants = {
6
+ variant: {
7
+ h1: "sg:text-4xl sg:md:text-5xl sg:font-bold sg:tracking-tight sg:leading-tight",
8
+ h2: "sg:text-3xl sg:md:text-4xl sg:font-semibold sg:tracking-tight sg:leading-snug",
9
+ h3: "sg:text-2xl sg:md:text-3xl sg:font-semibold sg:leading-snug",
10
+ h4: "sg:text-xl sg:md:text-2xl sg:font-medium sg:leading-normal",
11
+ h5: "sg:text-lg sg:md:text-xl sg:font-medium sg:leading-normal",
12
+ h6: "sg:text-md sg:md:text-lg sg:font-medium sg:leading-normal"
13
+ }
14
+ };
15
+ const headingVariantsProps = cva("sg:font-display", {
16
+ variants: headingVariants,
17
+ defaultVariants: {
18
+ variant: "h2"
19
+ }
20
+ });
21
+ const Heading = ({
22
+ children,
23
+ as,
24
+ variant,
25
+ foreground,
26
+ className,
27
+ ...props
28
+ }) => {
29
+ if (!as && variant) {
30
+ as = variant;
31
+ } else if (!as) {
32
+ as = "h2";
33
+ }
34
+ const Component = as;
35
+ return /* @__PURE__ */ jsx(
36
+ Component,
37
+ {
38
+ className: cn(
39
+ textElementVariantsProps({ foreground }),
40
+ headingVariantsProps({ variant }),
41
+ className
42
+ ),
43
+ ...props,
44
+ children
45
+ }
46
+ );
47
+ };
48
+ export {
49
+ Heading,
50
+ headingVariants,
51
+ headingVariantsProps
52
+ };
53
+ //# sourceMappingURL=heading.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/primitives/text/heading.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { textElementVariantsProps } from \"./internal/text-element\";\r\nimport { cn } from \"../../../utils/index\";\r\n\r\nexport const headingVariants = {\r\n variant: {\r\n h1: \"sg:text-4xl sg:md:text-5xl sg:font-bold sg:tracking-tight sg:leading-tight\",\r\n h2: \"sg:text-3xl sg:md:text-4xl sg:font-semibold sg:tracking-tight sg:leading-snug\",\r\n h3: \"sg:text-2xl sg:md:text-3xl sg:font-semibold sg:leading-snug\",\r\n h4: \"sg:text-xl sg:md:text-2xl sg:font-medium sg:leading-normal\",\r\n h5: \"sg:text-lg sg:md:text-xl sg:font-medium sg:leading-normal\",\r\n h6: \"sg:text-md sg:md:text-lg sg:font-medium sg:leading-normal\",\r\n },\r\n};\r\n\r\nexport const headingVariantsProps = cva(\"sg:font-display\", {\r\n variants: headingVariants,\r\n defaultVariants: {\r\n variant: \"h2\",\r\n },\r\n});\r\n\r\nexport interface HeadingProps\r\n extends\r\n React.HTMLAttributes<HTMLHeadingElement>,\r\n VariantProps<typeof headingVariantsProps> {\r\n as?: \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\r\n foreground?: VariantProps<typeof textElementVariantsProps>[\"foreground\"];\r\n}\r\n\r\nexport const Heading = ({\r\n children,\r\n as,\r\n variant,\r\n foreground,\r\n className,\r\n ...props\r\n}: HeadingProps) => {\r\n if (!as && variant) {\r\n as = variant;\r\n } else if (!as) {\r\n as = \"h2\";\r\n }\r\n const Component = as;\r\n\r\n return (\r\n <Component\r\n className={cn(\r\n textElementVariantsProps({ foreground }),\r\n headingVariantsProps({ variant }),\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </Component>\r\n );\r\n};\r\n"],"mappings":"AA8CI;AA9CJ,SAAS,WAA8B;AACvC,SAAS,gCAAgC;AACzC,SAAS,UAAU;AAEZ,MAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,EACN;AACF;AAEO,MAAM,uBAAuB,IAAI,mBAAmB;AAAA,EACzD,UAAU;AAAA,EACV,iBAAiB;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC;AAUM,MAAM,UAAU,CAAC;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAoB;AAClB,MAAI,CAAC,MAAM,SAAS;AAClB,SAAK;AAAA,EACP,WAAW,CAAC,IAAI;AACd,SAAK;AAAA,EACP;AACA,QAAM,YAAY;AAElB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT,yBAAyB,EAAE,WAAW,CAAC;AAAA,QACvC,qBAAqB,EAAE,QAAQ,CAAC;AAAA,QAChC;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ;","names":[]}
@@ -7,13 +7,31 @@ declare const textElementForeground: {
7
7
  default: string;
8
8
  foreground: string;
9
9
  primary: string;
10
+ "primary-foreground": string;
10
11
  secondary: string;
12
+ "secondary-foreground": string;
11
13
  muted: string;
14
+ "muted-foreground": string;
12
15
  accent: string;
16
+ "accent-foreground": string;
17
+ card: string;
18
+ "card-foreground": string;
13
19
  "primary-light-to-dark": string;
14
20
  "primary-dark-to-light": string;
15
21
  "multi-color": string;
16
22
  };
23
+ declare const textElementSize: {
24
+ xs: string;
25
+ sm: string;
26
+ md: string;
27
+ base: string;
28
+ lg: string;
29
+ xl: string;
30
+ "2xl": string;
31
+ "3xl": string;
32
+ "4xl": string;
33
+ "5xl": string;
34
+ };
17
35
  declare const textElementVariants: {
18
36
  size: {
19
37
  xs: string;
@@ -24,14 +42,22 @@ declare const textElementVariants: {
24
42
  xl: string;
25
43
  "2xl": string;
26
44
  "3xl": string;
45
+ "4xl": string;
46
+ "5xl": string;
27
47
  };
28
48
  foreground: {
29
49
  default: string;
30
50
  foreground: string;
31
51
  primary: string;
52
+ "primary-foreground": string;
32
53
  secondary: string;
54
+ "secondary-foreground": string;
33
55
  muted: string;
56
+ "muted-foreground": string;
34
57
  accent: string;
58
+ "accent-foreground": string;
59
+ card: string;
60
+ "card-foreground": string;
35
61
  "primary-light-to-dark": string;
36
62
  "primary-dark-to-light": string;
37
63
  "multi-color": string;
@@ -44,13 +70,13 @@ declare const textElementVariants: {
44
70
  };
45
71
  };
46
72
  declare const textElementVariantsProps: (props?: ({
47
- size?: "base" | "xs" | "sm" | "lg" | "md" | "xl" | "2xl" | "3xl" | null | undefined;
48
- foreground?: "default" | "secondary" | "foreground" | "primary" | "muted" | "accent" | "primary-light-to-dark" | "primary-dark-to-light" | "multi-color" | null | undefined;
73
+ size?: "base" | "sm" | "xs" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | null | undefined;
74
+ foreground?: "default" | "card" | "foreground" | "primary" | "primary-foreground" | "secondary" | "secondary-foreground" | "muted" | "muted-foreground" | "accent" | "accent-foreground" | "card-foreground" | "primary-light-to-dark" | "primary-dark-to-light" | "multi-color" | null | undefined;
49
75
  fontweight?: "bold" | "normal" | "medium" | "semibold" | null | undefined;
50
76
  } & class_variance_authority_types.ClassProp) | undefined) => string;
51
77
  interface TextElementProps extends React__default.HTMLAttributes<HTMLElement>, VariantProps<typeof textElementVariantsProps> {
52
- as?: "p" | "div" | "span" | "time";
78
+ as?: "p" | "div" | "span" | "time" | "code";
53
79
  }
54
80
  declare const TextElement: ({ as, children, size, foreground, fontweight, className, ...props }: TextElementProps) => react_jsx_runtime.JSX.Element;
55
81
 
56
- export { TextElement, type TextElementProps, textElementForeground, textElementVariants, textElementVariantsProps };
82
+ export { TextElement, type TextElementProps, textElementForeground, textElementSize, textElementVariants, textElementVariantsProps };
@@ -1,29 +1,38 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import React from "react";
3
3
  import { cva } from "class-variance-authority";
4
- import { cn } from "../../../../utils";
4
+ import { cn } from "../../../../utils/index.js";
5
5
  const textElementForeground = {
6
- default: "sg:text-foreground",
6
+ default: "",
7
7
  foreground: "sg:text-foreground",
8
8
  primary: "sg:text-primary",
9
+ "primary-foreground": "sg:text-primary-foreground",
9
10
  secondary: "sg:text-secondary",
10
- muted: "sg:text-muted-foreground",
11
- accent: "sg:text-accent-foreground",
11
+ "secondary-foreground": "sg:text-secondary-foreground",
12
+ muted: "sg:text-muted",
13
+ "muted-foreground": "sg:text-muted-foreground",
14
+ accent: "sg:text-accent",
15
+ "accent-foreground": "sg:text-accent-foreground",
16
+ card: "sg:text-card",
17
+ "card-foreground": "sg:text-card-foreground",
12
18
  "primary-light-to-dark": "sg:bg-gradient-to-r sg:from-primary-light sg:to-primary-dark sg:bg-clip-text sg:text-transparent",
13
19
  "primary-dark-to-light": "sg:bg-gradient-to-r sg:from-primary-dark sg:to-primary-light sg:bg-clip-text sg:text-transparent",
14
20
  "multi-color": "sg:bg-gradient-to-r sg:from-primary sg:via-destructive sg:to-primary-dark sg:bg-clip-text sg:text-transparent"
15
21
  };
22
+ const textElementSize = {
23
+ xs: "sg:text-xs",
24
+ sm: "sg:text-sm",
25
+ md: "sg:text-md",
26
+ base: "sg:text-base",
27
+ lg: "sg:text-lg",
28
+ xl: "sg:text-xl",
29
+ "2xl": "sg:text-2xl",
30
+ "3xl": "sg:text-3xl",
31
+ "4xl": "sg:text-4xl",
32
+ "5xl": "sg:text-5xl"
33
+ };
16
34
  const textElementVariants = {
17
- size: {
18
- xs: "sg:text-xs",
19
- sm: "sg:text-sm",
20
- md: "sg:text-md",
21
- base: "sg:text-base",
22
- lg: "sg:text-lg",
23
- xl: "sg:text-xl",
24
- "2xl": "sg:text-2xl",
25
- "3xl": "sg:text-3xl"
26
- },
35
+ size: textElementSize,
27
36
  foreground: textElementForeground,
28
37
  fontweight: {
29
38
  normal: "sg:font-normal",
@@ -69,6 +78,7 @@ const TextElement = ({
69
78
  export {
70
79
  TextElement,
71
80
  textElementForeground,
81
+ textElementSize,
72
82
  textElementVariants,
73
83
  textElementVariantsProps
74
84
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/primitives/text/internal/text-element.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../../utils\";\r\n\r\nexport const textElementForeground = {\r\n default: \"sg:text-foreground\",\r\n foreground: \"sg:text-foreground\",\r\n primary: \"sg:text-primary\",\r\n secondary: \"sg:text-secondary\",\r\n muted: \"sg:text-muted-foreground\",\r\n accent: \"sg:text-accent-foreground\",\r\n\r\n \"primary-light-to-dark\":\r\n \"sg:bg-gradient-to-r sg:from-primary-light sg:to-primary-dark sg:bg-clip-text sg:text-transparent\",\r\n \"primary-dark-to-light\":\r\n \"sg:bg-gradient-to-r sg:from-primary-dark sg:to-primary-light sg:bg-clip-text sg:text-transparent\",\r\n \"multi-color\":\r\n \"sg:bg-gradient-to-r sg:from-primary sg:via-destructive sg:to-primary-dark sg:bg-clip-text sg:text-transparent\",\r\n};\r\n\r\nexport const textElementVariants = {\r\n size: {\r\n xs: \"sg:text-xs\",\r\n sm: \"sg:text-sm\",\r\n md: \"sg:text-md\",\r\n base: \"sg:text-base\",\r\n lg: \"sg:text-lg\",\r\n xl: \"sg:text-xl\",\r\n \"2xl\": \"sg:text-2xl\",\r\n \"3xl\": \"sg:text-3xl\",\r\n },\r\n foreground: textElementForeground,\r\n fontweight: {\r\n normal: \"sg:font-normal\",\r\n medium: \"sg:font-medium\",\r\n semibold: \"sg:font-semibold\",\r\n bold: \"sg:font-bold\",\r\n },\r\n};\r\n\r\nexport const textElementVariantsProps = cva(\"\", {\r\n variants: textElementVariants,\r\n defaultVariants: {\r\n size: \"base\",\r\n foreground: \"default\",\r\n fontweight: \"normal\",\r\n },\r\n});\r\n\r\nexport interface TextElementProps\r\n extends\r\n React.HTMLAttributes<HTMLElement>,\r\n VariantProps<typeof textElementVariantsProps> {\r\n as?: \"p\" | \"div\" | \"span\" | \"time\";\r\n}\r\n\r\nexport const TextElement = ({\r\n as = \"div\",\r\n children,\r\n size,\r\n foreground,\r\n fontweight,\r\n className,\r\n ...props\r\n}: TextElementProps) => {\r\n const Component = as;\r\n return (\r\n <Component\r\n className={cn(\r\n textElementVariantsProps({\r\n size,\r\n foreground,\r\n fontweight,\r\n }),\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </Component>\r\n );\r\n};\r\n"],"mappings":"AAmEI;AAnEJ,OAAO,WAAW;AAClB,SAAS,WAA8B;AACvC,SAAS,UAAU;AAEZ,MAAM,wBAAwB;AAAA,EACnC,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,WAAW;AAAA,EACX,OAAO;AAAA,EACP,QAAQ;AAAA,EAER,yBACE;AAAA,EACF,yBACE;AAAA,EACF,eACE;AACJ;AAEO,MAAM,sBAAsB;AAAA,EACjC,MAAM;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,YAAY;AAAA,EACZ,YAAY;AAAA,IACV,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,EACR;AACF;AAEO,MAAM,2BAA2B,IAAI,IAAI;AAAA,EAC9C,UAAU;AAAA,EACV,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,YAAY;AAAA,EACd;AACF,CAAC;AASM,MAAM,cAAc,CAAC;AAAA,EAC1B,KAAK;AAAA,EACL;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAwB;AACtB,QAAM,YAAY;AAClB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT,yBAAyB;AAAA,UACvB;AAAA,UACA;AAAA,UACA;AAAA,QACF,CAAC;AAAA,QACD;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/components/primitives/text/internal/text-element.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../../utils/index\";\r\n\r\nexport const textElementForeground = {\r\n default: \"\",\r\n foreground: \"sg:text-foreground\",\r\n primary: \"sg:text-primary\",\r\n \"primary-foreground\": \"sg:text-primary-foreground\",\r\n secondary: \"sg:text-secondary\",\r\n \"secondary-foreground\": \"sg:text-secondary-foreground\",\r\n muted: \"sg:text-muted\",\r\n \"muted-foreground\": \"sg:text-muted-foreground\",\r\n accent: \"sg:text-accent\",\r\n \"accent-foreground\": \"sg:text-accent-foreground\",\r\n card: \"sg:text-card\",\r\n \"card-foreground\": \"sg:text-card-foreground\",\r\n\r\n \"primary-light-to-dark\":\r\n \"sg:bg-gradient-to-r sg:from-primary-light sg:to-primary-dark sg:bg-clip-text sg:text-transparent\",\r\n \"primary-dark-to-light\":\r\n \"sg:bg-gradient-to-r sg:from-primary-dark sg:to-primary-light sg:bg-clip-text sg:text-transparent\",\r\n \"multi-color\":\r\n \"sg:bg-gradient-to-r sg:from-primary sg:via-destructive sg:to-primary-dark sg:bg-clip-text sg:text-transparent\",\r\n};\r\n\r\nexport const textElementSize = {\r\n xs: \"sg:text-xs\",\r\n sm: \"sg:text-sm\",\r\n md: \"sg:text-md\",\r\n base: \"sg:text-base\",\r\n lg: \"sg:text-lg\",\r\n xl: \"sg:text-xl\",\r\n \"2xl\": \"sg:text-2xl\",\r\n \"3xl\": \"sg:text-3xl\",\r\n \"4xl\": \"sg:text-4xl\",\r\n \"5xl\": \"sg:text-5xl\",\r\n};\r\n\r\nexport const textElementVariants = {\r\n size: textElementSize,\r\n foreground: textElementForeground,\r\n fontweight: {\r\n normal: \"sg:font-normal\",\r\n medium: \"sg:font-medium\",\r\n semibold: \"sg:font-semibold\",\r\n bold: \"sg:font-bold\",\r\n },\r\n};\r\n\r\nexport const textElementVariantsProps = cva(\"\", {\r\n variants: textElementVariants,\r\n defaultVariants: {\r\n size: \"base\",\r\n foreground: \"default\",\r\n fontweight: \"normal\",\r\n },\r\n});\r\n\r\nexport interface TextElementProps\r\n extends\r\n React.HTMLAttributes<HTMLElement>,\r\n VariantProps<typeof textElementVariantsProps> {\r\n as?: \"p\" | \"div\" | \"span\" | \"time\" | \"code\";\r\n}\r\n\r\nexport const TextElement = ({\r\n as = \"div\",\r\n children,\r\n size,\r\n foreground,\r\n fontweight,\r\n className,\r\n ...props\r\n}: TextElementProps) => {\r\n const Component = as;\r\n return (\r\n <Component\r\n className={cn(\r\n textElementVariantsProps({\r\n size,\r\n foreground,\r\n fontweight,\r\n }),\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </Component>\r\n );\r\n};\r\n"],"mappings":"AA6EI;AA7EJ,OAAO,WAAW;AAClB,SAAS,WAA8B;AACvC,SAAS,UAAU;AAEZ,MAAM,wBAAwB;AAAA,EACnC,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,sBAAsB;AAAA,EACtB,WAAW;AAAA,EACX,wBAAwB;AAAA,EACxB,OAAO;AAAA,EACP,oBAAoB;AAAA,EACpB,QAAQ;AAAA,EACR,qBAAqB;AAAA,EACrB,MAAM;AAAA,EACN,mBAAmB;AAAA,EAEnB,yBACE;AAAA,EACF,yBACE;AAAA,EACF,eACE;AACJ;AAEO,MAAM,kBAAkB;AAAA,EAC7B,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAEO,MAAM,sBAAsB;AAAA,EACjC,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,YAAY;AAAA,IACV,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,EACR;AACF;AAEO,MAAM,2BAA2B,IAAI,IAAI;AAAA,EAC9C,UAAU;AAAA,EACV,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,YAAY;AAAA,EACd;AACF,CAAC;AASM,MAAM,cAAc,CAAC;AAAA,EAC1B,KAAK;AAAA,EACL;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAwB;AACtB,QAAM,YAAY;AAClB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT,yBAAyB;AAAA,UACvB;AAAA,UACA;AAAA,UACA;AAAA,QACF,CAAC;AAAA,QACD;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ;","names":[]}