singularity-components 0.1.194 → 0.1.196

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 (203) hide show
  1. package/dist/components/blocks/badges/category-badge.d.ts +11 -0
  2. package/dist/components/blocks/badges/category-badge.js +34 -0
  3. package/dist/components/blocks/badges/category-badge.js.map +1 -0
  4. package/dist/components/blocks/cards/blogpost-card.d.ts +4 -2
  5. package/dist/components/blocks/cards/blogpost-card.js +9 -4
  6. package/dist/components/blocks/cards/blogpost-card.js.map +1 -1
  7. package/dist/components/blocks/cards/card.d.ts +7 -8
  8. package/dist/components/blocks/directory/author-card.d.ts +10 -0
  9. package/dist/components/blocks/directory/author-card.js +50 -0
  10. package/dist/components/blocks/directory/author-card.js.map +1 -0
  11. package/dist/components/blocks/directory/category-card.d.ts +10 -0
  12. package/dist/components/blocks/directory/category-card.js +26 -0
  13. package/dist/components/blocks/directory/category-card.js.map +1 -0
  14. package/dist/components/blocks/empty-state/EmptyState.d.ts +2 -2
  15. package/dist/components/blocks/extras/extras-hub-card.d.ts +16 -0
  16. package/dist/components/blocks/extras/extras-hub-card.js +21 -0
  17. package/dist/components/blocks/extras/extras-hub-card.js.map +1 -0
  18. package/dist/components/blocks/gallery/image-gallery.d.ts +14 -0
  19. package/dist/components/blocks/gallery/image-gallery.js +211 -0
  20. package/dist/components/blocks/gallery/image-gallery.js.map +1 -0
  21. package/dist/components/blocks/index.d.ts +12 -1
  22. package/dist/components/blocks/index.js +11 -0
  23. package/dist/components/blocks/index.js.map +1 -1
  24. package/dist/components/blocks/loading/loading-skeletons.d.ts +15 -0
  25. package/dist/components/blocks/loading/loading-skeletons.js +78 -0
  26. package/dist/components/blocks/loading/loading-skeletons.js.map +1 -0
  27. package/dist/components/blocks/login/login.d.ts +78 -0
  28. package/dist/components/blocks/login/login.js +95 -0
  29. package/dist/components/blocks/login/login.js.map +1 -0
  30. package/dist/components/blocks/marketing/page-hero.d.ts +13 -0
  31. package/dist/components/blocks/marketing/page-hero.js +37 -0
  32. package/dist/components/blocks/marketing/page-hero.js.map +1 -0
  33. package/dist/components/blocks/marketing/stats-grid.d.ts +16 -0
  34. package/dist/components/blocks/marketing/stats-grid.js +30 -0
  35. package/dist/components/blocks/marketing/stats-grid.js.map +1 -0
  36. package/dist/components/blocks/marketing/timeline.d.ts +17 -0
  37. package/dist/components/blocks/marketing/timeline.js +45 -0
  38. package/dist/components/blocks/marketing/timeline.js.map +1 -0
  39. package/dist/components/blocks/marketing/values-grid.d.ts +16 -0
  40. package/dist/components/blocks/marketing/values-grid.js +29 -0
  41. package/dist/components/blocks/marketing/values-grid.js.map +1 -0
  42. package/dist/components/blocks/post-list/post-filters.d.ts +2 -2
  43. package/dist/components/blocks/post-list/post-list-with-filters.d.ts +2 -2
  44. package/dist/components/index.d.ts +30 -3
  45. package/dist/components/pages/about/about-page.d.ts +5 -0
  46. package/dist/components/pages/about/about-page.js +161 -0
  47. package/dist/components/pages/about/about-page.js.map +1 -0
  48. package/dist/components/pages/admin/admin-page.d.ts +2 -2
  49. package/dist/components/pages/admin/admin-page.js +4 -1
  50. package/dist/components/pages/admin/admin-page.js.map +1 -1
  51. package/dist/components/pages/author/author-page.d.ts +8 -0
  52. package/dist/components/pages/author/author-page.js +107 -0
  53. package/dist/components/pages/author/author-page.js.map +1 -0
  54. package/dist/components/pages/authors/authors-page.d.ts +5 -0
  55. package/dist/components/pages/authors/authors-page.js +25 -0
  56. package/dist/components/pages/authors/authors-page.js.map +1 -0
  57. package/dist/components/pages/blogpost/blogpost.d.ts +5 -2
  58. package/dist/components/pages/blogpost/blogpost.js +38 -18
  59. package/dist/components/pages/blogpost/blogpost.js.map +1 -1
  60. package/dist/components/pages/categories/categories-page.d.ts +5 -0
  61. package/dist/components/pages/categories/categories-page.js +33 -0
  62. package/dist/components/pages/categories/categories-page.js.map +1 -0
  63. package/dist/components/pages/category/category-page.d.ts +2 -2
  64. package/dist/components/pages/category/category-page.js +3 -1
  65. package/dist/components/pages/category/category-page.js.map +1 -1
  66. package/dist/components/pages/chat/chat-page.d.ts +2 -2
  67. package/dist/components/pages/contact/contact-page.d.ts +5 -0
  68. package/dist/components/pages/contact/contact-page.js +173 -0
  69. package/dist/components/pages/contact/contact-page.js.map +1 -0
  70. package/dist/components/pages/content-blocks/content-blocks-page.d.ts +5 -0
  71. package/dist/components/pages/content-blocks/content-blocks-page.js +86 -0
  72. package/dist/components/pages/content-blocks/content-blocks-page.js.map +1 -0
  73. package/dist/components/pages/extras/extras-hub-page.d.ts +10 -0
  74. package/dist/components/pages/extras/extras-hub-page.js +110 -0
  75. package/dist/components/pages/extras/extras-hub-page.js.map +1 -0
  76. package/dist/components/pages/index.d.ts +15 -1
  77. package/dist/components/pages/index.js +12 -0
  78. package/dist/components/pages/index.js.map +1 -1
  79. package/dist/components/pages/login/login-page.d.ts +2 -2
  80. package/dist/components/pages/login/login-page.js +19 -69
  81. package/dist/components/pages/login/login-page.js.map +1 -1
  82. package/dist/components/pages/maintenance/maintenance-page.d.ts +2 -2
  83. package/dist/components/pages/membership/membership-page.d.ts +5 -0
  84. package/dist/components/pages/membership/membership-page.js +131 -0
  85. package/dist/components/pages/membership/membership-page.js.map +1 -0
  86. package/dist/components/pages/mosaic/mosaic-page.d.ts +5 -0
  87. package/dist/components/pages/mosaic/mosaic-page.js +81 -0
  88. package/dist/components/pages/mosaic/mosaic-page.js.map +1 -0
  89. package/dist/components/pages/newsletter/newsletter-page.d.ts +5 -0
  90. package/dist/components/pages/newsletter/newsletter-page.js +148 -0
  91. package/dist/components/pages/newsletter/newsletter-page.js.map +1 -0
  92. package/dist/components/pages/not-found/not-found.d.ts +2 -2
  93. package/dist/components/pages/privacy/privacy-page.d.ts +2 -2
  94. package/dist/components/pages/resources/resources-page.d.ts +5 -0
  95. package/dist/components/pages/resources/resources-page.js +24 -0
  96. package/dist/components/pages/resources/resources-page.js.map +1 -0
  97. package/dist/components/pages/search/search-page.d.ts +2 -2
  98. package/dist/components/pages/startpage/startpage.d.ts +2 -2
  99. package/dist/components/pages/startpage/startpage.js +6 -4
  100. package/dist/components/pages/startpage/startpage.js.map +1 -1
  101. package/dist/components/pages/terms/terms-page.d.ts +2 -2
  102. package/dist/components/primitives/accordion/accordion.d.ts +5 -5
  103. package/dist/components/primitives/accordion/accordion.js +14 -16
  104. package/dist/components/primitives/accordion/accordion.js.map +1 -1
  105. package/dist/components/primitives/alert/alert.d.ts +4 -5
  106. package/dist/components/primitives/avatar/avatar.d.ts +6 -7
  107. package/dist/components/primitives/badge/badge.js +1 -1
  108. package/dist/components/primitives/badge/badge.js.map +1 -1
  109. package/dist/components/primitives/badge/badges.d.ts +1 -2
  110. package/dist/components/primitives/buttons/button.d.ts +4 -4
  111. package/dist/components/primitives/buttons/icon-button.d.ts +3 -3
  112. package/dist/components/primitives/buttons/link-button.d.ts +2 -3
  113. package/dist/components/primitives/collapsible/collapsible.d.ts +3 -4
  114. package/dist/components/primitives/collapsible/collapsible.js +4 -1
  115. package/dist/components/primitives/collapsible/collapsible.js.map +1 -1
  116. package/dist/components/primitives/dropdown-menu/dropdown-menu.d.ts +1 -2
  117. package/dist/components/primitives/dropdown-menu/dropdown-menu.js +6 -1
  118. package/dist/components/primitives/dropdown-menu/dropdown-menu.js.map +1 -1
  119. package/dist/components/primitives/forms/checkbox.d.ts +2 -2
  120. package/dist/components/primitives/forms/checkbox.js +1 -1
  121. package/dist/components/primitives/forms/checkbox.js.map +1 -1
  122. package/dist/components/primitives/forms/field.d.ts +14 -13
  123. package/dist/components/primitives/forms/field.js +4 -2
  124. package/dist/components/primitives/forms/field.js.map +1 -1
  125. package/dist/components/primitives/forms/form-control.d.ts +28 -0
  126. package/dist/components/primitives/forms/form-control.js +40 -0
  127. package/dist/components/primitives/forms/form-control.js.map +1 -0
  128. package/dist/components/primitives/forms/form.d.ts +12 -0
  129. package/dist/components/primitives/forms/form.js +30 -0
  130. package/dist/components/primitives/forms/form.js.map +1 -0
  131. package/dist/components/primitives/forms/input.d.ts +1 -2
  132. package/dist/components/primitives/forms/select.d.ts +7 -8
  133. package/dist/components/primitives/forms/select.js +12 -12
  134. package/dist/components/primitives/forms/select.js.map +1 -1
  135. package/dist/components/primitives/forms/textarea.d.ts +1 -2
  136. package/dist/components/primitives/icon/icon.d.ts +4 -4
  137. package/dist/components/primitives/icon/icon.js +2 -1
  138. package/dist/components/primitives/icon/icon.js.map +1 -1
  139. package/dist/components/primitives/index.d.ts +6 -3
  140. package/dist/components/primitives/index.js +3 -0
  141. package/dist/components/primitives/index.js.map +1 -1
  142. package/dist/components/primitives/label/label.d.ts +1 -2
  143. package/dist/components/primitives/layout/layout.d.ts +5 -4
  144. package/dist/components/primitives/layout/layout.js.map +1 -1
  145. package/dist/components/primitives/link/link.d.ts +4 -5
  146. package/dist/components/primitives/separator/separator.d.ts +2 -2
  147. package/dist/components/primitives/sheet/sheet.d.ts +2 -3
  148. package/dist/components/primitives/sheet/sheet.js +1 -1
  149. package/dist/components/primitives/sheet/sheet.js.map +1 -1
  150. package/dist/components/primitives/skeleton/skeleton.d.ts +2 -2
  151. package/dist/components/primitives/sonner/sonner.d.ts +2 -2
  152. package/dist/components/primitives/spinner/spinner.d.ts +2 -2
  153. package/dist/components/primitives/stack/stack.d.ts +47 -3
  154. package/dist/components/primitives/stack/stack.js +44 -42
  155. package/dist/components/primitives/stack/stack.js.map +1 -1
  156. package/dist/components/primitives/text/heading.d.ts +2 -3
  157. package/dist/components/primitives/text/internal/text-element.d.ts +9 -4
  158. package/dist/components/primitives/text/internal/text-element.js +3 -0
  159. package/dist/components/primitives/text/internal/text-element.js.map +1 -1
  160. package/dist/components/primitives/text/text-code.d.ts +3 -3
  161. package/dist/components/primitives/text/text-div.d.ts +2 -3
  162. package/dist/components/primitives/text/text-span.d.ts +2 -3
  163. package/dist/components/primitives/text/text-time.d.ts +2 -3
  164. package/dist/components/primitives/text/text.d.ts +2 -3
  165. package/dist/components/primitives/ui-image/ui-image.d.ts +2 -3
  166. package/dist/components/primitives/ui-link/ui-link.d.ts +2 -3
  167. package/dist/components/providers/SingularityContext.d.ts +0 -1
  168. package/dist/components/providers/auth-provider.d.ts +2 -2
  169. package/dist/components/providers/index.d.ts +0 -1
  170. package/dist/components/providers/theme-provider.d.ts +1 -2
  171. package/dist/components/templates/container/container.d.ts +4 -5
  172. package/dist/components/templates/footer/footer.d.ts +2 -2
  173. package/dist/components/templates/form/form.d.ts +2 -2
  174. package/dist/components/templates/hero/hero.d.ts +2 -2
  175. package/dist/components/templates/index.d.ts +1 -1
  176. package/dist/components/templates/index.js +1 -0
  177. package/dist/components/templates/index.js.map +1 -1
  178. package/dist/components/templates/loading-screen/loading-screen.d.ts +10 -0
  179. package/dist/components/templates/loading-screen/loading-screen.js +39 -0
  180. package/dist/components/templates/loading-screen/loading-screen.js.map +1 -0
  181. package/dist/components/templates/navigation/header.d.ts +1 -2
  182. package/dist/components/templates/navigation/index.d.ts +0 -1
  183. package/dist/css/variables.css +2 -0
  184. package/dist/css/variables.css.map +1 -1
  185. package/dist/data/posts.d.ts +5 -0
  186. package/dist/data/posts.js +37 -4
  187. package/dist/data/posts.js.map +1 -1
  188. package/dist/index.d.ts +30 -3
  189. package/dist/lib/forms/field-props.d.ts +60 -0
  190. package/dist/lib/forms/field-props.js +60 -0
  191. package/dist/lib/forms/field-props.js.map +1 -0
  192. package/dist/lib/forms/index.d.ts +11 -0
  193. package/dist/lib/forms/index.js +3 -0
  194. package/dist/lib/forms/index.js.map +1 -0
  195. package/dist/lib/forms/tanstack-field.d.ts +56 -0
  196. package/dist/lib/forms/tanstack-field.js +114 -0
  197. package/dist/lib/forms/tanstack-field.js.map +1 -0
  198. package/dist/lib/index.d.ts +11 -0
  199. package/dist/lib/index.js +1 -0
  200. package/dist/lib/index.js.map +1 -1
  201. package/dist/main.css +442 -117
  202. package/dist/main.css.map +1 -1
  203. package/package.json +64 -39
@@ -3,49 +3,50 @@ import { Slot } from "@radix-ui/react-slot";
3
3
  import { cva } from "class-variance-authority";
4
4
  import * as React from "react";
5
5
  import { cn } from "../../../utils/index.js";
6
- const stackVariants = cva("sg:flex sg:flex-col", {
7
- variants: {
8
- gap: {
9
- 0: "",
10
- 1: "sg:gap-1",
11
- 2: "sg:gap-2",
12
- 3: "sg:gap-3",
13
- 4: "sg:gap-4",
14
- 5: "sg:gap-5",
15
- 6: "sg:gap-6",
16
- 7: "sg:gap-7",
17
- 8: "sg:gap-8",
18
- 9: "sg:gap-9",
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"
47
- }
6
+ const stackVariantOptions = {
7
+ gap: {
8
+ 0: "",
9
+ 1: "sg:gap-1",
10
+ 2: "sg:gap-2",
11
+ 3: "sg:gap-3",
12
+ 4: "sg:gap-4",
13
+ 5: "sg:gap-5",
14
+ 6: "sg:gap-6",
15
+ 7: "sg:gap-7",
16
+ 8: "sg:gap-8",
17
+ 9: "sg:gap-9",
18
+ 10: "sg:gap-10",
19
+ 11: "sg:gap-11",
20
+ 12: "sg:gap-12",
21
+ 13: "sg:gap-13",
22
+ 14: "sg:gap-14",
23
+ 15: "sg:gap-15",
24
+ 16: "sg:gap-16"
25
+ },
26
+ direction: {
27
+ column: "sg:flex-col",
28
+ row: "sg:flex-row"
29
+ },
30
+ wrap: {
31
+ default: "",
32
+ wrap: "sg:flex-wrap",
33
+ nowrap: "sg:flex-nowrap"
34
+ },
35
+ alignItems: {
36
+ default: "",
37
+ start: "sg:items-start",
38
+ center: "sg:items-center",
39
+ end: "sg:items-end"
48
40
  },
41
+ justifyContent: {
42
+ default: "",
43
+ start: "sg:justify-start",
44
+ center: "sg:justify-center",
45
+ end: "sg:justify-end"
46
+ }
47
+ };
48
+ const stackVariants = cva("sg:flex sg:flex-col", {
49
+ variants: stackVariantOptions,
49
50
  defaultVariants: {
50
51
  gap: 0,
51
52
  direction: "column",
@@ -80,6 +81,7 @@ const Stack = React.forwardRef(
80
81
  Stack.displayName = "Stack";
81
82
  export {
82
83
  Stack,
84
+ stackVariantOptions,
83
85
  stackVariants
84
86
  };
85
87
  //# sourceMappingURL=stack.js.map
@@ -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/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":[]}
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 stackVariantOptions = {\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\r\nconst stackVariants = cva(\"sg:flex sg:flex-col\", {\r\n variants: stackVariantOptions,\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 /** Merge props onto the child via Radix Slot instead of rendering a wrapper div. */\r\n asChild?: boolean;\r\n}\r\n\r\n/** Flex stack with tokenized `gap`, `direction`, and alignment variants. Prefer `gap` over margin on children. */\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, stackVariantOptions, stackVariants };\r\n"],"mappings":"AAkFM;AAlFN,SAAS,YAAY;AACrB,SAAS,WAA8B;AACvC,YAAY,WAAW;AACvB,SAAS,UAAU;AAEnB,MAAM,sBAAsB;AAAA,EAC1B,KAAK;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,EACN;AAAA,EACA,WAAW;AAAA,IACT,QAAQ;AAAA,IACR,KAAK;AAAA,EACP;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,MAAM;AAAA,IACN,QAAQ;AAAA,EACV;AAAA,EACA,YAAY;AAAA,IACV,SAAS;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,KAAK;AAAA,EACP;AAAA,EACA,gBAAgB;AAAA,IACd,SAAS;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,KAAK;AAAA,EACP;AACF;AAEA,MAAM,gBAAgB,IAAI,uBAAuB;AAAA,EAC/C,UAAU;AAAA,EACV,iBAAiB;AAAA,IACf,KAAK;AAAA,IACL,WAAW;AAAA,IACX,MAAM;AAAA,EACR;AACF,CAAC;AAWD,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":[]}
@@ -1,8 +1,7 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React$1 from 'react';
2
2
  import * as class_variance_authority_types from 'class-variance-authority/types';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
  import { textElementVariantsProps } from './internal/text-element.js';
5
- import 'react';
6
5
 
7
6
  declare const headingVariants: {
8
7
  variant: {
@@ -21,6 +20,6 @@ interface HeadingProps extends React.HTMLAttributes<HTMLHeadingElement>, Variant
21
20
  as?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
22
21
  foreground?: VariantProps<typeof textElementVariantsProps>["foreground"];
23
22
  }
24
- declare const Heading: ({ children, as, variant, foreground, className, ...props }: HeadingProps) => react_jsx_runtime.JSX.Element;
23
+ declare const Heading: ({ children, as, variant, foreground, className, ...props }: HeadingProps) => React$1.JSX.Element;
25
24
 
26
25
  export { Heading, type HeadingProps, headingVariants, headingVariantsProps };
@@ -1,4 +1,3 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
1
  import * as class_variance_authority_types from 'class-variance-authority/types';
3
2
  import React__default from 'react';
4
3
  import { VariantProps } from 'class-variance-authority';
@@ -16,6 +15,9 @@ declare const textElementForeground: {
16
15
  "accent-foreground": string;
17
16
  card: string;
18
17
  "card-foreground": string;
18
+ destructive: string;
19
+ "destructive-foreground": string;
20
+ error: string;
19
21
  "primary-light-to-dark": string;
20
22
  "primary-dark-to-light": string;
21
23
  "multi-color": string;
@@ -58,6 +60,9 @@ declare const textElementVariants: {
58
60
  "accent-foreground": string;
59
61
  card: string;
60
62
  "card-foreground": string;
63
+ destructive: string;
64
+ "destructive-foreground": string;
65
+ error: string;
61
66
  "primary-light-to-dark": string;
62
67
  "primary-dark-to-light": string;
63
68
  "multi-color": string;
@@ -70,13 +75,13 @@ declare const textElementVariants: {
70
75
  };
71
76
  };
72
77
  declare const textElementVariantsProps: (props?: ({
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;
78
+ size?: "base" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | null | undefined;
79
+ foreground?: "default" | "secondary" | "destructive" | "foreground" | "primary" | "primary-foreground" | "secondary-foreground" | "muted" | "muted-foreground" | "accent" | "accent-foreground" | "card" | "card-foreground" | "destructive-foreground" | "error" | "primary-light-to-dark" | "primary-dark-to-light" | "multi-color" | null | undefined;
75
80
  fontweight?: "bold" | "normal" | "medium" | "semibold" | null | undefined;
76
81
  } & class_variance_authority_types.ClassProp) | undefined) => string;
77
82
  interface TextElementProps extends React__default.HTMLAttributes<HTMLElement>, VariantProps<typeof textElementVariantsProps> {
78
83
  as?: "p" | "div" | "span" | "time" | "code";
79
84
  }
80
- declare const TextElement: ({ as, children, size, foreground, fontweight, className, ...props }: TextElementProps) => react_jsx_runtime.JSX.Element;
85
+ declare const TextElement: ({ as, children, size, foreground, fontweight, className, ...props }: TextElementProps) => React__default.JSX.Element;
81
86
 
82
87
  export { TextElement, type TextElementProps, textElementForeground, textElementSize, textElementVariants, textElementVariantsProps };
@@ -15,6 +15,9 @@ const textElementForeground = {
15
15
  "accent-foreground": "sg:text-accent-foreground",
16
16
  card: "sg:text-card",
17
17
  "card-foreground": "sg:text-card-foreground",
18
+ destructive: "sg:text-destructive",
19
+ "destructive-foreground": "sg:text-destructive-foreground",
20
+ error: "sg:text-error",
18
21
  "primary-light-to-dark": "sg:bg-gradient-to-r sg:from-primary-light sg:to-primary-dark sg:bg-clip-text sg:text-transparent",
19
22
  "primary-dark-to-light": "sg:bg-gradient-to-r sg:from-primary-dark sg:to-primary-light sg:bg-clip-text sg:text-transparent",
20
23
  "multi-color": "sg:bg-gradient-to-r sg:from-primary sg:via-destructive sg:to-primary-dark sg:bg-clip-text sg:text-transparent"
@@ -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/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":[]}
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 destructive: \"sg:text-destructive\",\r\n \"destructive-foreground\": \"sg:text-destructive-foreground\",\r\n error: \"sg:text-error\",\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":"AAgFI;AAhFJ,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,EACnB,aAAa;AAAA,EACb,0BAA0B;AAAA,EAC1B,OAAO;AAAA,EAEP,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":[]}
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React$1 from 'react';
2
2
  import * as class_variance_authority_types from 'class-variance-authority/types';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
 
@@ -17,10 +17,10 @@ declare const textCodeVariants: {
17
17
  };
18
18
  };
19
19
  declare const textCodeVariantsProps: (props?: ({
20
- size?: "base" | "sm" | "xs" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | null | undefined;
20
+ size?: "base" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | null | undefined;
21
21
  } & class_variance_authority_types.ClassProp) | undefined) => string;
22
22
  interface TextCodeProps extends React.HTMLAttributes<HTMLElement>, VariantProps<typeof textCodeVariantsProps> {
23
23
  }
24
- declare const TextCode: ({ children, size, className, ...props }: TextCodeProps) => react_jsx_runtime.JSX.Element;
24
+ declare const TextCode: ({ children, size, className, ...props }: TextCodeProps) => React$1.JSX.Element;
25
25
 
26
26
  export { TextCode, type TextCodeProps, textCodeVariants, textCodeVariantsProps };
@@ -1,10 +1,9 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
  import { OmitClassProperty } from '../../../lib/types.js';
3
3
  import { TextElementProps } from './internal/text-element.js';
4
4
  import 'class-variance-authority/types';
5
- import 'react';
6
5
  import 'class-variance-authority';
7
6
 
8
- declare const TextDiv: ({ children, size, foreground, fontweight, className, ...props }: OmitClassProperty<TextElementProps, "as">) => react_jsx_runtime.JSX.Element;
7
+ declare const TextDiv: ({ children, size, foreground, fontweight, className, ...props }: OmitClassProperty<TextElementProps, "as">) => React.JSX.Element;
9
8
 
10
9
  export { TextDiv };
@@ -1,10 +1,9 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
  import { OmitClassProperty } from '../../../lib/types.js';
3
3
  import { TextElementProps } from './internal/text-element.js';
4
4
  import 'class-variance-authority/types';
5
- import 'react';
6
5
  import 'class-variance-authority';
7
6
 
8
- declare const TextSpan: ({ children, size, foreground, fontweight, className, ...props }: OmitClassProperty<TextElementProps, "as">) => react_jsx_runtime.JSX.Element;
7
+ declare const TextSpan: ({ children, size, foreground, fontweight, className, ...props }: OmitClassProperty<TextElementProps, "as">) => React.JSX.Element;
9
8
 
10
9
  export { TextSpan };
@@ -1,10 +1,9 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
  import { TextElementProps } from './internal/text-element.js';
3
3
  import { OmitClassProperty } from '../../../lib/types.js';
4
4
  import 'class-variance-authority/types';
5
- import 'react';
6
5
  import 'class-variance-authority';
7
6
 
8
- declare const TextTime: ({ children, size, foreground, fontweight, className, ...props }: OmitClassProperty<TextElementProps, "as">) => react_jsx_runtime.JSX.Element;
7
+ declare const TextTime: ({ children, size, foreground, fontweight, className, ...props }: OmitClassProperty<TextElementProps, "as">) => React.JSX.Element;
9
8
 
10
9
  export { TextTime };
@@ -1,8 +1,7 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
  import * as class_variance_authority_types from 'class-variance-authority/types';
3
3
  import { OmitClassProperty } from '../../../lib/types.js';
4
4
  import { TextElementProps } from './internal/text-element.js';
5
- import 'react';
6
5
  import 'class-variance-authority';
7
6
 
8
7
  declare const textVariants: {
@@ -11,6 +10,6 @@ declare const textVariants: {
11
10
  declare const textVariantsProps: (props?: ({
12
11
  variant?: null | undefined;
13
12
  } & class_variance_authority_types.ClassProp) | undefined) => string;
14
- declare const Text: ({ children, size, foreground, fontweight, className, ...props }: OmitClassProperty<TextElementProps, "as">) => react_jsx_runtime.JSX.Element;
13
+ declare const Text: ({ children, size, foreground, fontweight, className, ...props }: OmitClassProperty<TextElementProps, "as">) => React.JSX.Element;
15
14
 
16
15
  export { Text, textVariants, textVariantsProps };
@@ -1,10 +1,9 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
  import { BaseImageProps } from '../../providers/ImageContext.js';
3
- import 'react';
4
3
 
5
4
  type Props = {
6
5
  showServerSideDefaultImageComponent?: boolean;
7
6
  } & BaseImageProps;
8
- declare function UiImage({ showServerSideDefaultImageComponent, ...props }: Props): react_jsx_runtime.JSX.Element;
7
+ declare function UiImage({ showServerSideDefaultImageComponent, ...props }: Props): React.JSX.Element;
9
8
 
10
9
  export { UiImage };
@@ -1,8 +1,7 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
  import { BaseLinkProps } from '../../providers/LinkContext.js';
3
- import 'react';
4
3
 
5
4
  type Props = BaseLinkProps;
6
- declare const UiLink: ({ ...props }: Props) => react_jsx_runtime.JSX.Element;
5
+ declare const UiLink: ({ ...props }: Props) => React.JSX.Element;
7
6
 
8
7
  export { UiLink };
@@ -2,7 +2,6 @@ import React__default, { ReactNode } from 'react';
2
2
  import { ImageComponentType } from './ImageContext.js';
3
3
  import { LinkComponentType } from './LinkContext.js';
4
4
  import { Theme } from './theme-provider.js';
5
- import 'react/jsx-runtime';
6
5
 
7
6
  interface SingularityProviderProps {
8
7
  ImageComponent?: ImageComponentType;
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
  import { ReactNode } from 'react';
3
3
 
4
4
  interface AuthContextType {
@@ -9,7 +9,7 @@ interface AuthContextType {
9
9
  }
10
10
  declare function AuthProvider({ children }: {
11
11
  children: ReactNode;
12
- }): react_jsx_runtime.JSX.Element;
12
+ }): React.JSX.Element;
13
13
  declare const useAuth: () => AuthContextType;
14
14
 
15
15
  export { AuthProvider, useAuth };
@@ -4,4 +4,3 @@ export { SingularityProvider } from './SingularityContext.js';
4
4
  export { AuthProvider, useAuth } from './auth-provider.js';
5
5
  export { Theme, ThemeProvider, ThemeProviderProps, ThemeProviderState, useTheme } from './theme-provider.js';
6
6
  import 'react';
7
- import 'react/jsx-runtime';
@@ -1,4 +1,3 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
1
  import * as React from 'react';
3
2
 
4
3
  type Theme = "dark" | "light" | "system";
@@ -18,7 +17,7 @@ type ThemeProviderState = {
18
17
  * Supports "light", "dark", and "system" modes.
19
18
  * Default is "system" with a fallback to "dark".
20
19
  */
21
- declare function ThemeProvider({ children, defaultTheme, ...props }: ThemeProviderProps): react_jsx_runtime.JSX.Element;
20
+ declare function ThemeProvider({ children, defaultTheme, ...props }: ThemeProviderProps): React.JSX.Element;
22
21
  /**
23
22
  * Hook to access the current theme and setTheme function.
24
23
  */
@@ -1,4 +1,3 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
1
  import * as React from 'react';
3
2
  import { PropsWithChildren } from 'react';
4
3
 
@@ -6,11 +5,11 @@ type Prop = {
6
5
  children?: React.ReactNode;
7
6
  as?: "body" | "div";
8
7
  } & React.HTMLAttributes<HTMLElement>;
9
- declare function Container({ children, as: Component, className, ...rest }: PropsWithChildren<Prop>): react_jsx_runtime.JSX.Element;
8
+ declare function Container({ children, as: Component, className, ...rest }: PropsWithChildren<Prop>): React.JSX.Element;
10
9
  declare namespace Container {
11
- var Header: ({ children, as: Component, ...props }: ChildProp) => react_jsx_runtime.JSX.Element;
12
- var Content: ({ children, as: Component, ...props }: ChildProp) => react_jsx_runtime.JSX.Element;
13
- var Footer: ({ children, as: Component, ...props }: ChildProp) => react_jsx_runtime.JSX.Element;
10
+ var Header: ({ children, as: Component, ...props }: ChildProp) => React.JSX.Element;
11
+ var Content: ({ children, as: Component, ...props }: ChildProp) => React.JSX.Element;
12
+ var Footer: ({ children, as: Component, ...props }: ChildProp) => React.JSX.Element;
14
13
  }
15
14
  type ChildProp = {
16
15
  children?: React.ReactNode;
@@ -1,5 +1,5 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
 
3
- declare function Footer(): react_jsx_runtime.JSX.Element;
3
+ declare function Footer(): React.JSX.Element;
4
4
 
5
5
  export { Footer };
@@ -1,5 +1,5 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
2
 
3
- declare function Form(): react_jsx_runtime.JSX.Element;
3
+ declare function Form(): React.JSX.Element;
4
4
 
5
5
  export { Form as default };
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React$1 from 'react';
2
2
 
3
3
  interface HeroProps {
4
4
  title?: React.ReactNode;
@@ -13,6 +13,6 @@ interface HeroProps {
13
13
  href: string;
14
14
  };
15
15
  }
16
- declare function Hero({ title, titleAccent, description, primaryCTA, secondaryCTA, }: HeroProps): react_jsx_runtime.JSX.Element;
16
+ declare function Hero({ title, titleAccent, description, primaryCTA, secondaryCTA, }: HeroProps): React$1.JSX.Element;
17
17
 
18
18
  export { Hero as default };
@@ -1,5 +1,5 @@
1
1
  export { Container } from './container/container.js';
2
2
  export { Footer } from './footer/footer.js';
3
+ export { LoadingScreen } from './loading-screen/loading-screen.js';
3
4
  export { Header, HeaderProps, NavLink } from './navigation/header.js';
4
- import 'react/jsx-runtime';
5
5
  import 'react';
@@ -1,5 +1,6 @@
1
1
  export * from "./container/container.js";
2
2
  export * from "./footer/footer.js";
3
3
  export * from "./hero/hero.js";
4
+ export * from "./loading-screen/loading-screen.js";
4
5
  export * from "./navigation/index.js";
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/templates/index.ts"],"sourcesContent":["/**\n * Templates index\n *\n * Please keep exports sorted alphabetically by path!\n */\n\nexport * from \"./container/container\";\nexport * from \"./footer/footer\";\nexport * from \"./hero/hero\";\nexport * from \"./navigation/index\";\n"],"mappings":"AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/components/templates/index.ts"],"sourcesContent":["/**\n * Templates index\n *\n * Please keep exports sorted alphabetically by path!\n */\n\nexport * from \"./container/container\";\nexport * from \"./footer/footer\";\nexport * from \"./hero/hero\";\nexport * from \"./loading-screen/loading-screen\";\nexport * from \"./navigation/index\";\n"],"mappings":"AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+
3
+ type Props = {
4
+ brand?: string;
5
+ message?: string;
6
+ };
7
+ /** Full-screen branded loading overlay. */
8
+ declare function LoadingScreen({ brand, message, }: Props): React.JSX.Element;
9
+
10
+ export { LoadingScreen };
@@ -0,0 +1,39 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { motion } from "framer-motion";
4
+ import { Heading, Text } from "../../primitives/index.js";
5
+ function LoadingScreen({
6
+ brand = "filion.",
7
+ message = "Loading\u2026"
8
+ }) {
9
+ const [name, accent] = brand.includes(".") ? [brand.replace(".", ""), "."] : [brand, ""];
10
+ return /* @__PURE__ */ jsx("div", { className: "sg:fixed sg:inset-0 sg:z-[100] sg:flex sg:flex-col sg:items-center sg:justify-center sg:bg-background", children: /* @__PURE__ */ jsxs(
11
+ motion.div,
12
+ {
13
+ initial: { opacity: 0, scale: 0.9 },
14
+ animate: { opacity: 1, scale: 1 },
15
+ transition: { duration: 0.3 },
16
+ className: "sg:text-center",
17
+ children: [
18
+ /* @__PURE__ */ jsxs(Heading, { variant: "h3", className: "sg:text-primary", children: [
19
+ name,
20
+ accent && /* @__PURE__ */ jsx("span", { className: "sg:text-secondary", children: accent })
21
+ ] }),
22
+ /* @__PURE__ */ jsx("div", { className: "sg:mt-6 sg:flex sg:items-center sg:justify-center sg:gap-1.5", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx(
23
+ motion.div,
24
+ {
25
+ className: "sg:h-2 sg:w-2 sg:rounded-full sg:bg-primary",
26
+ animate: { opacity: [0.3, 1, 0.3], scale: [0.8, 1.2, 0.8] },
27
+ transition: { duration: 1, repeat: Infinity, delay: i * 0.2 }
28
+ },
29
+ i
30
+ )) }),
31
+ /* @__PURE__ */ jsx(Text, { size: "sm", foreground: "muted-foreground", className: "sg:mt-4", children: message })
32
+ ]
33
+ }
34
+ ) });
35
+ }
36
+ export {
37
+ LoadingScreen
38
+ };
39
+ //# sourceMappingURL=loading-screen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/templates/loading-screen/loading-screen.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { motion } from \"framer-motion\";\r\nimport { Heading, Text } from \"../../primitives/index\";\r\n\r\ntype Props = {\r\n\tbrand?: string;\r\n\tmessage?: string;\r\n};\r\n\r\n/** Full-screen branded loading overlay. */\r\nexport function LoadingScreen({\r\n\tbrand = \"filion.\",\r\n\tmessage = \"Loading…\",\r\n}: Props) {\r\n\tconst [name, accent] = brand.includes(\".\")\r\n\t\t? [brand.replace(\".\", \"\"), \".\"]\r\n\t\t: [brand, \"\"];\r\n\r\n\treturn (\r\n\t\t<div className=\"sg:fixed sg:inset-0 sg:z-[100] sg:flex sg:flex-col sg:items-center sg:justify-center sg:bg-background\">\r\n\t\t\t<motion.div\r\n\t\t\t\tinitial={{ opacity: 0, scale: 0.9 }}\r\n\t\t\t\tanimate={{ opacity: 1, scale: 1 }}\r\n\t\t\t\ttransition={{ duration: 0.3 }}\r\n\t\t\t\tclassName=\"sg:text-center\"\r\n\t\t\t>\r\n\t\t\t\t<Heading variant=\"h3\" className=\"sg:text-primary\">\r\n\t\t\t\t\t{name}\r\n\t\t\t\t\t{accent && (\r\n\t\t\t\t\t\t<span className=\"sg:text-secondary\">{accent}</span>\r\n\t\t\t\t\t)}\r\n\t\t\t\t</Heading>\r\n\t\t\t\t<div className=\"sg:mt-6 sg:flex sg:items-center sg:justify-center sg:gap-1.5\">\r\n\t\t\t\t\t{[0, 1, 2].map((i) => (\r\n\t\t\t\t\t\t<motion.div\r\n\t\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\t\tclassName=\"sg:h-2 sg:w-2 sg:rounded-full sg:bg-primary\"\r\n\t\t\t\t\t\t\tanimate={{ opacity: [0.3, 1, 0.3], scale: [0.8, 1.2, 0.8] }}\r\n\t\t\t\t\t\t\ttransition={{ duration: 1, repeat: Infinity, delay: i * 0.2 }}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t))}\r\n\t\t\t\t</div>\r\n\t\t\t\t<Text size=\"sm\" foreground=\"muted-foreground\" className=\"sg:mt-4\">\r\n\t\t\t\t\t{message}\r\n\t\t\t\t</Text>\r\n\t\t\t</motion.div>\r\n\t\t</div>\r\n\t);\r\n}\r\n"],"mappings":";AA2BI,SAGE,KAHF;AAzBJ,SAAS,cAAc;AACvB,SAAS,SAAS,YAAY;AAQvB,SAAS,cAAc;AAAA,EAC7B,QAAQ;AAAA,EACR,UAAU;AACX,GAAU;AACT,QAAM,CAAC,MAAM,MAAM,IAAI,MAAM,SAAS,GAAG,IACtC,CAAC,MAAM,QAAQ,KAAK,EAAE,GAAG,GAAG,IAC5B,CAAC,OAAO,EAAE;AAEb,SACC,oBAAC,SAAI,WAAU,yGACd;AAAA,IAAC,OAAO;AAAA,IAAP;AAAA,MACA,SAAS,EAAE,SAAS,GAAG,OAAO,IAAI;AAAA,MAClC,SAAS,EAAE,SAAS,GAAG,OAAO,EAAE;AAAA,MAChC,YAAY,EAAE,UAAU,IAAI;AAAA,MAC5B,WAAU;AAAA,MAEV;AAAA,6BAAC,WAAQ,SAAQ,MAAK,WAAU,mBAC9B;AAAA;AAAA,UACA,UACA,oBAAC,UAAK,WAAU,qBAAqB,kBAAO;AAAA,WAE9C;AAAA,QACA,oBAAC,SAAI,WAAU,gEACb,WAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,MACf;AAAA,UAAC,OAAO;AAAA,UAAP;AAAA,YAEA,WAAU;AAAA,YACV,SAAS,EAAE,SAAS,CAAC,KAAK,GAAG,GAAG,GAAG,OAAO,CAAC,KAAK,KAAK,GAAG,EAAE;AAAA,YAC1D,YAAY,EAAE,UAAU,GAAG,QAAQ,UAAU,OAAO,IAAI,IAAI;AAAA;AAAA,UAHvD;AAAA,QAIN,CACA,GACF;AAAA,QACA,oBAAC,QAAK,MAAK,MAAK,YAAW,oBAAmB,WAAU,WACtD,mBACF;AAAA;AAAA;AAAA,EACD,GACD;AAEF;","names":[]}
@@ -1,4 +1,3 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
1
  import * as React from 'react';
3
2
 
4
3
  interface NavLink {
@@ -14,6 +13,6 @@ interface HeaderProps {
14
13
  loginLabel?: string;
15
14
  extrasLabel?: string;
16
15
  }
17
- declare function Header({ navLinks, extrasLinks, logo, currentPath, loginPath, loginLabel, extrasLabel, }: HeaderProps): react_jsx_runtime.JSX.Element;
16
+ declare function Header({ navLinks, extrasLinks, logo, currentPath, loginPath, loginLabel, extrasLabel, }: HeaderProps): React.JSX.Element;
18
17
 
19
18
  export { Header, type HeaderProps, type NavLink };
@@ -1,3 +1,2 @@
1
1
  export { Header, HeaderProps, NavLink } from './header.js';
2
- import 'react/jsx-runtime';
3
2
  import 'react';
@@ -35,6 +35,7 @@
35
35
  --sg-accent-foreground: var(--sg-charcoal);
36
36
  --sg-destructive: var(--sg-crimson);
37
37
  --sg-destructive-foreground: var(--sg-cream);
38
+ --sg-error: var(--sg-crimson);
38
39
  --sg-border: var(--sg-silver);
39
40
  --sg-input: var(--sg-silver);
40
41
  --sg-ring: var(--sg-terracotta);
@@ -65,6 +66,7 @@
65
66
  --sg-accent-foreground: var(--sg-cloud);
66
67
  --sg-destructive: var(--sg-crimson-light);
67
68
  --sg-destructive-foreground: var(--sg-cream);
69
+ --sg-error: var(--sg-crimson-light);
68
70
  --sg-border: var(--sg-slate);
69
71
  --sg-input: var(--sg-slate);
70
72
  --sg-ring: var(--sg-terracotta-light);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/css/variables.css"],"sourcesContent":[":root {\n /* Neutrals */\n --sg-black: oklch(0.25 0 0);\n --sg-charcoal: oklch(0.35 0.01 60);\n --sg-ash: oklch(0.44 0 0);\n --sg-silver: oklch(0.78 0.01 60);\n --sg-fog: oklch(0.92 0.005 240);\n --sg-cream: oklch(0.97 0.01 80);\n --sg-white: oklch(0.99 0.005 80);\n --sg-pure-white: oklch(1 0 0);\n\n /* Brand colors */\n --sg-terracotta: oklch(0.52 0.15 35);\n --sg-terracotta-light: oklch(0.65 0.16 35);\n --sg-amber: oklch(0.72 0.15 75);\n --sg-amber-dark: oklch(0.45 0.08 75);\n --sg-sand: oklch(0.93 0.03 80);\n\n /* Feedback */\n --sg-crimson: oklch(0.55 0.22 25);\n --sg-crimson-light: oklch(0.6 0.2 25);\n\n /* Dark mode neutrals */\n --sg-night: oklch(0.22 0.01 60);\n --sg-onyx: oklch(0.28 0 0);\n --sg-slate: oklch(0.43 0 0);\n --sg-dove: oklch(0.82 0.01 60);\n --sg-cloud: oklch(0.88 0.01 60);\n\n /* ── Semantic mapping – Light mode ── */\n --sg-background: var(--sg-cream);\n --sg-foreground: var(--sg-black);\n\n --sg-card: var(--sg-pure-white);\n --sg-card-foreground: var(--sg-black);\n\n --sg-popover: var(--sg-pure-white);\n --sg-popover-foreground: var(--sg-black);\n\n --sg-primary: var(--sg-terracotta);\n --sg-primary-foreground: var(--sg-cream);\n\n --sg-secondary: var(--sg-amber);\n --sg-secondary-foreground: var(--sg-black);\n\n --sg-muted: var(--sg-fog);\n --sg-muted-foreground: var(--sg-ash);\n\n --sg-accent: var(--sg-sand);\n --sg-accent-foreground: var(--sg-charcoal);\n\n --sg-destructive: var(--sg-crimson);\n --sg-destructive-foreground: var(--sg-cream);\n\n --sg-border: var(--sg-silver);\n --sg-input: var(--sg-silver);\n --sg-ring: var(--sg-terracotta);\n\n --sg-radius: 0.5rem;\n\n --sg-sidebar-background: var(--sg-cream);\n --sg-sidebar-foreground: var(--sg-black);\n --sg-sidebar-primary: var(--sg-terracotta);\n --sg-sidebar-primary-foreground: var(--sg-cream);\n --sg-sidebar-accent: var(--sg-fog);\n --sg-sidebar-accent-foreground: var(--sg-charcoal);\n --sg-sidebar-border: var(--sg-silver);\n --sg-sidebar-ring: var(--sg-terracotta);\n}\n\n.dark {\n --sg-background: var(--sg-charcoal);\n --sg-foreground: var(--sg-cloud);\n\n --sg-card: var(--sg-night);\n --sg-card-foreground: var(--sg-cloud);\n\n --sg-popover: var(--sg-night);\n --sg-popover-foreground: var(--sg-cloud);\n\n --sg-primary: var(--sg-terracotta-light);\n --sg-primary-foreground: var(--sg-night);\n\n --sg-secondary: var(--sg-amber);\n --sg-secondary-foreground: var(--sg-night);\n\n --sg-muted: var(--sg-slate);\n --sg-muted-foreground: var(--sg-dove);\n\n --sg-accent: var(--sg-onyx);\n --sg-accent-foreground: var(--sg-cloud);\n\n --sg-destructive: var(--sg-crimson-light);\n --sg-destructive-foreground: var(--sg-cream);\n\n --sg-border: var(--sg-slate);\n --sg-input: var(--sg-slate);\n --sg-ring: var(--sg-terracotta-light);\n\n --sg-sidebar-background: var(--sg-night);\n --sg-sidebar-foreground: var(--sg-cloud);\n --sg-sidebar-primary: var(--sg-terracotta-light);\n --sg-sidebar-primary-foreground: var(--sg-night);\n --sg-sidebar-accent: var(--sg-onyx);\n --sg-sidebar-accent-foreground: var(--sg-cloud);\n --sg-sidebar-border: var(--sg-slate);\n --sg-sidebar-ring: var(--sg-terracotta-light);\n}\n"],"mappings":"AAAA;AAEE,cAAY,MAAM,KAAK,EAAE;AACzB,iBAAe,MAAM,KAAK,KAAK;AAC/B,YAAU,MAAM,KAAK,EAAE;AACvB,eAAa,MAAM,KAAK,KAAK;AAC7B,YAAU,MAAM,KAAK,MAAM;AAC3B,cAAY,MAAM,KAAK,KAAK;AAC5B,cAAY,MAAM,KAAK,MAAM;AAC7B,mBAAiB,MAAM,EAAE,EAAE;AAG3B,mBAAiB,MAAM,KAAK,KAAK;AACjC,yBAAuB,MAAM,KAAK,KAAK;AACvC,cAAY,MAAM,KAAK,KAAK;AAC5B,mBAAiB,MAAM,KAAK,KAAK;AACjC,aAAW,MAAM,KAAK,KAAK;AAG3B,gBAAc,MAAM,KAAK,KAAK;AAC9B,sBAAoB,MAAM,IAAI,IAAI;AAGlC,cAAY,MAAM,KAAK,KAAK;AAC5B,aAAW,MAAM,KAAK,EAAE;AACxB,cAAY,MAAM,KAAK,EAAE;AACzB,aAAW,MAAM,KAAK,KAAK;AAC3B,cAAY,MAAM,KAAK,KAAK;AAG5B,mBAAiB,IAAI;AACrB,mBAAiB,IAAI;AAErB,aAAW,IAAI;AACf,wBAAsB,IAAI;AAE1B,gBAAc,IAAI;AAClB,2BAAyB,IAAI;AAE7B,gBAAc,IAAI;AAClB,2BAAyB,IAAI;AAE7B,kBAAgB,IAAI;AACpB,6BAA2B,IAAI;AAE/B,cAAY,IAAI;AAChB,yBAAuB,IAAI;AAE3B,eAAa,IAAI;AACjB,0BAAwB,IAAI;AAE5B,oBAAkB,IAAI;AACtB,+BAA6B,IAAI;AAEjC,eAAa,IAAI;AACjB,cAAY,IAAI;AAChB,aAAW,IAAI;AAEf,eAAa;AAEb,2BAAyB,IAAI;AAC7B,2BAAyB,IAAI;AAC7B,wBAAsB,IAAI;AAC1B,mCAAiC,IAAI;AACrC,uBAAqB,IAAI;AACzB,kCAAgC,IAAI;AACpC,uBAAqB,IAAI;AACzB,qBAAmB,IAAI;AACzB;AAEA,CAAC;AACC,mBAAiB,IAAI;AACrB,mBAAiB,IAAI;AAErB,aAAW,IAAI;AACf,wBAAsB,IAAI;AAE1B,gBAAc,IAAI;AAClB,2BAAyB,IAAI;AAE7B,gBAAc,IAAI;AAClB,2BAAyB,IAAI;AAE7B,kBAAgB,IAAI;AACpB,6BAA2B,IAAI;AAE/B,cAAY,IAAI;AAChB,yBAAuB,IAAI;AAE3B,eAAa,IAAI;AACjB,0BAAwB,IAAI;AAE5B,oBAAkB,IAAI;AACtB,+BAA6B,IAAI;AAEjC,eAAa,IAAI;AACjB,cAAY,IAAI;AAChB,aAAW,IAAI;AAEf,2BAAyB,IAAI;AAC7B,2BAAyB,IAAI;AAC7B,wBAAsB,IAAI;AAC1B,mCAAiC,IAAI;AACrC,uBAAqB,IAAI;AACzB,kCAAgC,IAAI;AACpC,uBAAqB,IAAI;AACzB,qBAAmB,IAAI;AACzB;","names":[]}
1
+ {"version":3,"sources":["../../src/css/variables.css"],"sourcesContent":[":root {\n /* Neutrals */\n --sg-black: oklch(0.25 0 0);\n --sg-charcoal: oklch(0.35 0.01 60);\n --sg-ash: oklch(0.44 0 0);\n --sg-silver: oklch(0.78 0.01 60);\n --sg-fog: oklch(0.92 0.005 240);\n --sg-cream: oklch(0.97 0.01 80);\n --sg-white: oklch(0.99 0.005 80);\n --sg-pure-white: oklch(1 0 0);\n\n /* Brand colors */\n --sg-terracotta: oklch(0.52 0.15 35);\n --sg-terracotta-light: oklch(0.65 0.16 35);\n --sg-amber: oklch(0.72 0.15 75);\n --sg-amber-dark: oklch(0.45 0.08 75);\n --sg-sand: oklch(0.93 0.03 80);\n\n /* Feedback */\n --sg-crimson: oklch(0.55 0.22 25);\n --sg-crimson-light: oklch(0.6 0.2 25);\n\n /* Dark mode neutrals */\n --sg-night: oklch(0.22 0.01 60);\n --sg-onyx: oklch(0.28 0 0);\n --sg-slate: oklch(0.43 0 0);\n --sg-dove: oklch(0.82 0.01 60);\n --sg-cloud: oklch(0.88 0.01 60);\n\n /* ── Semantic mapping – Light mode ── */\n --sg-background: var(--sg-cream);\n --sg-foreground: var(--sg-black);\n\n --sg-card: var(--sg-pure-white);\n --sg-card-foreground: var(--sg-black);\n\n --sg-popover: var(--sg-pure-white);\n --sg-popover-foreground: var(--sg-black);\n\n --sg-primary: var(--sg-terracotta);\n --sg-primary-foreground: var(--sg-cream);\n\n --sg-secondary: var(--sg-amber);\n --sg-secondary-foreground: var(--sg-black);\n\n --sg-muted: var(--sg-fog);\n --sg-muted-foreground: var(--sg-ash);\n\n --sg-accent: var(--sg-sand);\n --sg-accent-foreground: var(--sg-charcoal);\n\n --sg-destructive: var(--sg-crimson);\n --sg-destructive-foreground: var(--sg-cream);\n --sg-error: var(--sg-crimson);\n\n --sg-border: var(--sg-silver);\n --sg-input: var(--sg-silver);\n --sg-ring: var(--sg-terracotta);\n\n --sg-radius: 0.5rem;\n\n --sg-sidebar-background: var(--sg-cream);\n --sg-sidebar-foreground: var(--sg-black);\n --sg-sidebar-primary: var(--sg-terracotta);\n --sg-sidebar-primary-foreground: var(--sg-cream);\n --sg-sidebar-accent: var(--sg-fog);\n --sg-sidebar-accent-foreground: var(--sg-charcoal);\n --sg-sidebar-border: var(--sg-silver);\n --sg-sidebar-ring: var(--sg-terracotta);\n}\n\n.dark {\n --sg-background: var(--sg-charcoal);\n --sg-foreground: var(--sg-cloud);\n\n --sg-card: var(--sg-night);\n --sg-card-foreground: var(--sg-cloud);\n\n --sg-popover: var(--sg-night);\n --sg-popover-foreground: var(--sg-cloud);\n\n --sg-primary: var(--sg-terracotta-light);\n --sg-primary-foreground: var(--sg-night);\n\n --sg-secondary: var(--sg-amber);\n --sg-secondary-foreground: var(--sg-night);\n\n --sg-muted: var(--sg-slate);\n --sg-muted-foreground: var(--sg-dove);\n\n --sg-accent: var(--sg-onyx);\n --sg-accent-foreground: var(--sg-cloud);\n\n --sg-destructive: var(--sg-crimson-light);\n --sg-destructive-foreground: var(--sg-cream);\n --sg-error: var(--sg-crimson-light);\n\n --sg-border: var(--sg-slate);\n --sg-input: var(--sg-slate);\n --sg-ring: var(--sg-terracotta-light);\n\n --sg-sidebar-background: var(--sg-night);\n --sg-sidebar-foreground: var(--sg-cloud);\n --sg-sidebar-primary: var(--sg-terracotta-light);\n --sg-sidebar-primary-foreground: var(--sg-night);\n --sg-sidebar-accent: var(--sg-onyx);\n --sg-sidebar-accent-foreground: var(--sg-cloud);\n --sg-sidebar-border: var(--sg-slate);\n --sg-sidebar-ring: var(--sg-terracotta-light);\n}\n"],"mappings":"AAAA;AAEE,cAAY,MAAM,KAAK,EAAE;AACzB,iBAAe,MAAM,KAAK,KAAK;AAC/B,YAAU,MAAM,KAAK,EAAE;AACvB,eAAa,MAAM,KAAK,KAAK;AAC7B,YAAU,MAAM,KAAK,MAAM;AAC3B,cAAY,MAAM,KAAK,KAAK;AAC5B,cAAY,MAAM,KAAK,MAAM;AAC7B,mBAAiB,MAAM,EAAE,EAAE;AAG3B,mBAAiB,MAAM,KAAK,KAAK;AACjC,yBAAuB,MAAM,KAAK,KAAK;AACvC,cAAY,MAAM,KAAK,KAAK;AAC5B,mBAAiB,MAAM,KAAK,KAAK;AACjC,aAAW,MAAM,KAAK,KAAK;AAG3B,gBAAc,MAAM,KAAK,KAAK;AAC9B,sBAAoB,MAAM,IAAI,IAAI;AAGlC,cAAY,MAAM,KAAK,KAAK;AAC5B,aAAW,MAAM,KAAK,EAAE;AACxB,cAAY,MAAM,KAAK,EAAE;AACzB,aAAW,MAAM,KAAK,KAAK;AAC3B,cAAY,MAAM,KAAK,KAAK;AAG5B,mBAAiB,IAAI;AACrB,mBAAiB,IAAI;AAErB,aAAW,IAAI;AACf,wBAAsB,IAAI;AAE1B,gBAAc,IAAI;AAClB,2BAAyB,IAAI;AAE7B,gBAAc,IAAI;AAClB,2BAAyB,IAAI;AAE7B,kBAAgB,IAAI;AACpB,6BAA2B,IAAI;AAE/B,cAAY,IAAI;AAChB,yBAAuB,IAAI;AAE3B,eAAa,IAAI;AACjB,0BAAwB,IAAI;AAE5B,oBAAkB,IAAI;AACtB,+BAA6B,IAAI;AACjC,cAAY,IAAI;AAEhB,eAAa,IAAI;AACjB,cAAY,IAAI;AAChB,aAAW,IAAI;AAEf,eAAa;AAEb,2BAAyB,IAAI;AAC7B,2BAAyB,IAAI;AAC7B,wBAAsB,IAAI;AAC1B,mCAAiC,IAAI;AACrC,uBAAqB,IAAI;AACzB,kCAAgC,IAAI;AACpC,uBAAqB,IAAI;AACzB,qBAAmB,IAAI;AACzB;AAEA,CAAC;AACC,mBAAiB,IAAI;AACrB,mBAAiB,IAAI;AAErB,aAAW,IAAI;AACf,wBAAsB,IAAI;AAE1B,gBAAc,IAAI;AAClB,2BAAyB,IAAI;AAE7B,gBAAc,IAAI;AAClB,2BAAyB,IAAI;AAE7B,kBAAgB,IAAI;AACpB,6BAA2B,IAAI;AAE/B,cAAY,IAAI;AAChB,yBAAuB,IAAI;AAE3B,eAAa,IAAI;AACjB,0BAAwB,IAAI;AAE5B,oBAAkB,IAAI;AACtB,+BAA6B,IAAI;AACjC,cAAY,IAAI;AAEhB,eAAa,IAAI;AACjB,cAAY,IAAI;AAChB,aAAW,IAAI;AAEf,2BAAyB,IAAI;AAC7B,2BAAyB,IAAI;AAC7B,wBAAsB,IAAI;AAC1B,mCAAiC,IAAI;AACrC,uBAAqB,IAAI;AACzB,kCAAgC,IAAI;AACpC,uBAAqB,IAAI;AACzB,qBAAmB,IAAI;AACzB;","names":[]}
@@ -1,5 +1,6 @@
1
1
  interface BlogPost {
2
2
  id: number;
3
+ slug: string;
3
4
  title: string;
4
5
  excerpt: string;
5
6
  content: string;
@@ -9,6 +10,10 @@ interface BlogPost {
9
10
  author: string;
10
11
  featured?: boolean;
11
12
  categories: string[];
13
+ gallery?: {
14
+ src: string;
15
+ alt?: string;
16
+ }[];
12
17
  }
13
18
  interface Comment {
14
19
  id: string;