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.
- package/README.md +36 -4
- package/dist/components/blocks/cards/blogpost-card.d.ts +13 -0
- package/dist/components/blocks/cards/blogpost-card.js +79 -0
- package/dist/components/blocks/cards/blogpost-card.js.map +1 -0
- package/dist/components/blocks/cards/card.d.ts +14 -0
- package/dist/components/blocks/cards/card.js +86 -0
- package/dist/components/blocks/cards/card.js.map +1 -0
- package/dist/components/blocks/empty-state/EmptyState.d.ts +15 -0
- package/dist/components/blocks/empty-state/EmptyState.js +36 -0
- package/dist/components/blocks/empty-state/EmptyState.js.map +1 -0
- package/dist/components/blocks/index.d.ts +5 -0
- package/dist/components/blocks/index.js +5 -0
- package/dist/components/blocks/index.js.map +1 -0
- package/dist/components/blocks/post-list/post-filters.d.ts +19 -0
- package/dist/components/blocks/post-list/post-filters.js +99 -0
- package/dist/components/blocks/post-list/post-filters.js.map +1 -0
- package/dist/components/blocks/post-list/post-list-with-filters.d.ts +19 -0
- package/dist/components/blocks/post-list/post-list-with-filters.js +439 -0
- package/dist/components/blocks/post-list/post-list-with-filters.js.map +1 -0
- package/dist/components/index.d.ts +43 -10
- package/dist/components/index.js +5 -3
- package/dist/components/index.js.map +1 -1
- package/dist/components/pages/admin/admin-page.d.ts +8 -0
- package/dist/components/pages/admin/admin-page.js +299 -0
- package/dist/components/pages/admin/admin-page.js.map +1 -0
- package/dist/components/pages/blogpost/blogpost.d.ts +5 -0
- package/dist/components/pages/blogpost/blogpost.js +440 -0
- package/dist/components/pages/blogpost/blogpost.js.map +1 -0
- package/dist/components/pages/category/category-page.d.ts +8 -0
- package/dist/components/pages/category/category-page.js +69 -0
- package/dist/components/pages/category/category-page.js.map +1 -0
- package/dist/components/pages/chat/chat-page.d.ts +5 -0
- package/dist/components/pages/chat/chat-page.js +209 -0
- package/dist/components/pages/chat/chat-page.js.map +1 -0
- package/dist/components/pages/index.d.ts +11 -0
- package/dist/components/pages/index.js +11 -0
- package/dist/components/pages/index.js.map +1 -0
- package/dist/components/pages/login/login-page.d.ts +19 -0
- package/dist/components/pages/login/login-page.js +108 -0
- package/dist/components/pages/login/login-page.js.map +1 -0
- package/dist/components/pages/maintenance/maintenance-page.d.ts +5 -0
- package/dist/components/pages/maintenance/maintenance-page.js +50 -0
- package/dist/components/pages/maintenance/maintenance-page.js.map +1 -0
- package/dist/components/pages/not-found/not-found.d.ts +10 -0
- package/dist/components/pages/not-found/not-found.js +64 -0
- package/dist/components/pages/not-found/not-found.js.map +1 -0
- package/dist/components/pages/privacy/privacy-page.d.ts +15 -0
- package/dist/components/pages/privacy/privacy-page.js +98 -0
- package/dist/components/pages/privacy/privacy-page.js.map +1 -0
- package/dist/components/pages/search/search-page.d.ts +5 -0
- package/dist/components/pages/search/search-page.js +18 -0
- package/dist/components/pages/search/search-page.js.map +1 -0
- package/dist/components/pages/startpage/startpage.d.ts +5 -0
- package/dist/components/pages/startpage/startpage.js +50 -0
- package/dist/components/pages/startpage/startpage.js.map +1 -0
- package/dist/components/pages/terms/terms-page.d.ts +15 -0
- package/dist/components/pages/terms/terms-page.js +98 -0
- package/dist/components/pages/terms/terms-page.js.map +1 -0
- package/dist/components/primitives/accordion/accordion.js +1 -1
- package/dist/components/primitives/accordion/accordion.js.map +1 -1
- package/dist/components/primitives/alert/alert.js +1 -1
- package/dist/components/primitives/alert/alert.js.map +1 -1
- package/dist/components/primitives/avatar/avatar.d.ts +14 -0
- package/dist/components/primitives/avatar/avatar.js +103 -0
- package/dist/components/primitives/avatar/avatar.js.map +1 -0
- package/dist/components/primitives/badge/badge.d.ts +12 -4
- package/dist/components/primitives/badge/badge.js +15 -15
- package/dist/components/primitives/badge/badge.js.map +1 -1
- package/dist/components/primitives/badge/badges.js +1 -1
- package/dist/components/primitives/badge/badges.js.map +1 -1
- package/dist/components/primitives/{button → buttons}/button.d.ts +15 -9
- package/dist/components/primitives/buttons/button.js +92 -0
- package/dist/components/primitives/buttons/button.js.map +1 -0
- package/dist/components/primitives/buttons/icon-button.d.ts +33 -0
- package/dist/components/primitives/buttons/icon-button.js +61 -0
- package/dist/components/primitives/buttons/icon-button.js.map +1 -0
- package/dist/components/primitives/buttons/link-button.d.ts +16 -0
- package/dist/components/primitives/buttons/link-button.js +35 -0
- package/dist/components/primitives/buttons/link-button.js.map +1 -0
- package/dist/components/primitives/collapsible/collapsible.d.ts +9 -0
- package/dist/components/primitives/collapsible/collapsible.js +53 -0
- package/dist/components/primitives/collapsible/collapsible.js.map +1 -0
- package/dist/components/primitives/dropdown-menu/dropdown-menu.d.ts +30 -0
- package/dist/components/primitives/dropdown-menu/dropdown-menu.js +164 -0
- package/dist/components/primitives/dropdown-menu/dropdown-menu.js.map +1 -0
- package/dist/components/primitives/forms/checkbox.d.ts +6 -0
- package/dist/components/primitives/forms/checkbox.js +30 -0
- package/dist/components/primitives/forms/checkbox.js.map +1 -0
- package/dist/components/primitives/forms/field.d.ts +29 -0
- package/dist/components/primitives/forms/field.js +218 -0
- package/dist/components/primitives/forms/field.js.map +1 -0
- package/dist/components/primitives/forms/input.d.ts +6 -0
- package/dist/components/primitives/forms/input.js +22 -0
- package/dist/components/primitives/forms/input.js.map +1 -0
- package/dist/components/primitives/forms/select.d.ts +22 -0
- package/dist/components/primitives/forms/select.js +169 -0
- package/dist/components/primitives/forms/select.js.map +1 -0
- package/dist/components/primitives/forms/textarea.d.ts +6 -0
- package/dist/components/primitives/forms/textarea.js +20 -0
- package/dist/components/primitives/forms/textarea.js.map +1 -0
- package/dist/components/primitives/icon/icon.d.ts +10 -3
- package/dist/components/primitives/icon/icon.js +15 -14
- package/dist/components/primitives/icon/icon.js.map +1 -1
- package/dist/components/primitives/index.d.ts +25 -7
- package/dist/components/primitives/index.js +31 -18
- package/dist/components/primitives/index.js.map +1 -1
- package/dist/components/primitives/label/label.d.ts +6 -0
- package/dist/components/primitives/label/label.js +22 -0
- package/dist/components/primitives/label/label.js.map +1 -0
- package/dist/components/primitives/layout/layout.d.ts +8 -4
- package/dist/components/primitives/layout/layout.js +35 -17
- package/dist/components/primitives/layout/layout.js.map +1 -1
- package/dist/components/primitives/link/link.d.ts +42 -0
- package/dist/components/primitives/link/link.js +83 -0
- package/dist/components/primitives/link/link.js.map +1 -0
- package/dist/components/primitives/separator/separator.js +1 -1
- package/dist/components/primitives/separator/separator.js.map +1 -1
- package/dist/components/primitives/sheet/sheet.d.ts +29 -0
- package/dist/components/primitives/sheet/sheet.js +117 -0
- package/dist/components/primitives/sheet/sheet.js.map +1 -0
- package/dist/components/primitives/skeleton/skeleton.js +1 -1
- package/dist/components/primitives/skeleton/skeleton.js.map +1 -1
- package/dist/components/primitives/sonner/sonner.d.ts +7 -0
- package/dist/components/primitives/sonner/sonner.js +42 -0
- package/dist/components/primitives/sonner/sonner.js.map +1 -0
- package/dist/components/primitives/sonner/use-toast.d.ts +24 -0
- package/dist/components/primitives/sonner/use-toast.js +21 -0
- package/dist/components/primitives/sonner/use-toast.js.map +1 -0
- package/dist/components/primitives/spinner/spinner.js +1 -1
- package/dist/components/primitives/spinner/spinner.js.map +1 -1
- package/dist/components/primitives/stack/stack.d.ts +5 -1
- package/dist/components/primitives/stack/stack.js +46 -5
- package/dist/components/primitives/stack/stack.js.map +1 -1
- package/dist/components/primitives/text/{text-heading.d.ts → heading.d.ts} +5 -5
- package/dist/components/primitives/text/heading.js +53 -0
- package/dist/components/primitives/text/heading.js.map +1 -0
- package/dist/components/primitives/text/internal/text-element.d.ts +30 -4
- package/dist/components/primitives/text/internal/text-element.js +24 -14
- package/dist/components/primitives/text/internal/text-element.js.map +1 -1
- package/dist/components/primitives/text/text-code.d.ts +26 -0
- package/dist/components/primitives/text/text-code.js +44 -0
- package/dist/components/primitives/text/text-code.js.map +1 -0
- package/dist/components/primitives/text/text-div.d.ts +1 -1
- package/dist/components/primitives/text/text-div.js +2 -2
- package/dist/components/primitives/text/text-div.js.map +1 -1
- package/dist/components/primitives/text/text-span.js +2 -2
- package/dist/components/primitives/text/text-span.js.map +1 -1
- package/dist/components/primitives/text/text-time.js +2 -2
- package/dist/components/primitives/text/text-time.js.map +1 -1
- package/dist/components/primitives/text/text.d.ts +16 -0
- package/dist/components/primitives/text/{text-paragraph.js → text.js} +16 -5
- package/dist/components/primitives/text/text.js.map +1 -0
- package/dist/components/primitives/{ui-image.d.ts → ui-image/ui-image.d.ts} +1 -1
- package/dist/components/primitives/{ui-image.js → ui-image/ui-image.js} +4 -7
- package/dist/components/primitives/ui-image/ui-image.js.map +1 -0
- package/dist/components/primitives/ui-link/ui-link.d.ts +8 -0
- package/dist/components/primitives/ui-link/ui-link.js +19 -0
- package/dist/components/primitives/ui-link/ui-link.js.map +1 -0
- package/dist/components/providers/LinkContext.d.ts +1 -1
- package/dist/components/providers/LinkContext.js +1 -1
- package/dist/components/providers/LinkContext.js.map +1 -1
- package/dist/components/providers/SingularityContext.d.ts +4 -1
- package/dist/components/providers/SingularityContext.js +7 -3
- package/dist/components/providers/SingularityContext.js.map +1 -1
- package/dist/components/providers/auth-provider.d.ts +15 -0
- package/dist/components/providers/auth-provider.js +30 -0
- package/dist/components/providers/auth-provider.js.map +1 -0
- package/dist/components/providers/index.d.ts +3 -0
- package/dist/components/providers/index.js +5 -3
- package/dist/components/providers/index.js.map +1 -1
- package/dist/components/providers/theme-provider.d.ts +27 -0
- package/dist/components/providers/theme-provider.js +75 -0
- package/dist/components/providers/theme-provider.js.map +1 -0
- package/dist/components/templates/container/container.d.ts +20 -0
- package/dist/components/templates/container/container.js +58 -0
- package/dist/components/templates/container/container.js.map +1 -0
- package/dist/components/templates/footer/footer.d.ts +5 -0
- package/dist/components/templates/footer/footer.js +12 -0
- package/dist/components/templates/footer/footer.js.map +1 -0
- package/dist/components/templates/form/form.d.ts +5 -0
- package/dist/components/templates/form/form.js +141 -0
- package/dist/components/templates/form/form.js.map +1 -0
- package/dist/components/templates/hero/hero.d.ts +18 -0
- package/dist/components/templates/hero/hero.js +301 -0
- package/dist/components/templates/hero/hero.js.map +1 -0
- package/dist/components/templates/index.d.ts +5 -0
- package/dist/components/templates/index.js +5 -0
- package/dist/components/templates/index.js.map +1 -0
- package/dist/components/templates/navigation/header.d.ts +19 -0
- package/dist/components/templates/navigation/header.js +222 -0
- package/dist/components/templates/navigation/header.js.map +1 -0
- package/dist/components/templates/navigation/index.d.ts +3 -0
- package/dist/components/templates/navigation/index.js +2 -0
- package/dist/components/templates/navigation/index.js.map +1 -0
- package/dist/css/variables.css +75 -73
- package/dist/css/variables.css.map +1 -1
- package/dist/data/authors.d.ts +12 -0
- package/dist/data/authors.js +33 -0
- package/dist/data/authors.js.map +1 -0
- package/dist/data/posts.d.ts +22 -0
- package/dist/data/posts.js +285 -0
- package/dist/data/posts.js.map +1 -0
- package/dist/index.d.ts +43 -10
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/helpers/index.js +1 -1
- package/dist/lib/helpers/index.js.map +1 -1
- package/dist/lib/hooks/useIsClient.d.ts +3 -0
- package/dist/lib/hooks/useIsClient.js +14 -0
- package/dist/lib/hooks/useIsClient.js.map +1 -0
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.js +2 -1
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/types.d.ts +4 -8
- package/dist/main.css +2026 -455
- package/dist/main.css.map +1 -1
- package/dist/{utils.js → utils/index.js} +1 -1
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/index.test.js +37 -0
- package/dist/utils/index.test.js.map +1 -0
- package/package.json +80 -44
- package/dist/components/primitives/accordion/accordion.stories.d.ts +0 -15
- package/dist/components/primitives/accordion/accordion.stories.js +0 -60
- package/dist/components/primitives/accordion/accordion.stories.js.map +0 -1
- package/dist/components/primitives/alert/alert.stories.d.ts +0 -22
- package/dist/components/primitives/alert/alert.stories.js +0 -37
- package/dist/components/primitives/alert/alert.stories.js.map +0 -1
- package/dist/components/primitives/button/button.js +0 -56
- package/dist/components/primitives/button/button.js.map +0 -1
- package/dist/components/primitives/button/button.stories.d.ts +0 -34
- package/dist/components/primitives/button/button.stories.js +0 -74
- package/dist/components/primitives/button/button.stories.js.map +0 -1
- package/dist/components/primitives/button/button_with_icon_variant.js +0 -1
- package/dist/components/primitives/button/button_with_icon_variant.js.map +0 -1
- package/dist/components/primitives/icon/icon.stories.d.ts +0 -27
- package/dist/components/primitives/icon/icon.stories.js +0 -30
- package/dist/components/primitives/icon/icon.stories.js.map +0 -1
- package/dist/components/primitives/layout/layout.stories.d.ts +0 -32
- package/dist/components/primitives/layout/layout.stories.js +0 -72
- package/dist/components/primitives/layout/layout.stories.js.map +0 -1
- package/dist/components/primitives/separator/separator.stories.d.ts +0 -15
- package/dist/components/primitives/separator/separator.stories.js +0 -18
- package/dist/components/primitives/separator/separator.stories.js.map +0 -1
- package/dist/components/primitives/skeleton/skeleton.stories.d.ts +0 -13
- package/dist/components/primitives/skeleton/skeleton.stories.js +0 -16
- package/dist/components/primitives/skeleton/skeleton.stories.js.map +0 -1
- package/dist/components/primitives/spinner/spinner.stories.d.ts +0 -16
- package/dist/components/primitives/spinner/spinner.stories.js +0 -34
- package/dist/components/primitives/spinner/spinner.stories.js.map +0 -1
- package/dist/components/primitives/stack/stack.stories.d.ts +0 -13
- package/dist/components/primitives/stack/stack.stories.js +0 -26
- package/dist/components/primitives/stack/stack.stories.js.map +0 -1
- package/dist/components/primitives/text/text-div.stories.d.ts +0 -32
- package/dist/components/primitives/text/text-div.stories.js +0 -59
- package/dist/components/primitives/text/text-div.stories.js.map +0 -1
- package/dist/components/primitives/text/text-heading.js +0 -53
- package/dist/components/primitives/text/text-heading.js.map +0 -1
- package/dist/components/primitives/text/text-heading.stories.d.ts +0 -27
- package/dist/components/primitives/text/text-heading.stories.js +0 -47
- package/dist/components/primitives/text/text-heading.stories.js.map +0 -1
- package/dist/components/primitives/text/text-paragraph.d.ts +0 -10
- package/dist/components/primitives/text/text-paragraph.js.map +0 -1
- package/dist/components/primitives/text/text-span.stories.d.ts +0 -31
- package/dist/components/primitives/text/text-span.stories.js +0 -59
- package/dist/components/primitives/text/text-span.stories.js.map +0 -1
- package/dist/components/primitives/ui-image.js.map +0 -1
- package/dist/components/primitives/ui-link.d.ts +0 -6
- package/dist/components/primitives/ui-link.js +0 -22
- package/dist/components/primitives/ui-link.js.map +0 -1
- package/dist/components/units/cards/blog-card.d.ts +0 -19
- package/dist/components/units/cards/blog-card.js +0 -82
- package/dist/components/units/cards/blog-card.js.map +0 -1
- package/dist/components/units/cards/card.d.ts +0 -15
- package/dist/components/units/cards/card.js +0 -89
- package/dist/components/units/cards/card.js.map +0 -1
- package/dist/components/units/cards/cards.d.ts +0 -17
- package/dist/components/units/cards/cards.js +0 -37
- package/dist/components/units/cards/cards.js.map +0 -1
- package/dist/components/units/index.d.ts +0 -5
- package/dist/components/units/index.js +0 -4
- package/dist/components/units/index.js.map +0 -1
- package/dist/utils.js.map +0 -1
- /package/dist/{utils.d.ts → utils/index.d.ts} +0 -0
- /package/dist/{components/primitives/button/button_with_icon_variant.d.ts → utils/index.test.d.ts} +0 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { motion } from "framer-motion";
|
|
4
|
+
import {
|
|
5
|
+
Layout,
|
|
6
|
+
Separator,
|
|
7
|
+
Heading,
|
|
8
|
+
Text,
|
|
9
|
+
Icon,
|
|
10
|
+
Stack
|
|
11
|
+
} from "../../primitives/index.js";
|
|
12
|
+
const defaultSections = [
|
|
13
|
+
{
|
|
14
|
+
title: "Information We Collect",
|
|
15
|
+
content: "We collect minimal information to provide and improve our service. This may include your name and email address when you use our contact form, and standard analytics data such as browser type, device, and pages visited."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
title: "How We Use Your Information",
|
|
19
|
+
content: "Your information is used solely to respond to your inquiries, improve our content and user experience, and maintain the security of our website. We do not sell, trade, or rent your personal data to third parties."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
title: "Cookies & Analytics",
|
|
23
|
+
content: "We use cookies to remember your preferences (such as dark mode) and basic analytics to understand how our content is used. You can disable cookies in your browser settings at any time."
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
title: "Data Retention",
|
|
27
|
+
content: "We retain personal data only as long as necessary to fulfill the purposes outlined above. Contact form submissions are kept for up to 12 months before being deleted."
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
title: "Your Rights",
|
|
31
|
+
content: "You have the right to access, correct, or delete your personal data at any time. To make a request, please reach out via our contact page and we will respond within 30 days."
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
title: "Changes to This Policy",
|
|
35
|
+
content: "We may update this policy from time to time. Changes will be posted on this page with an updated effective date. Continued use of the site constitutes acceptance of the revised policy."
|
|
36
|
+
}
|
|
37
|
+
];
|
|
38
|
+
const PrivacyPage = ({
|
|
39
|
+
title = "Privacy Policy",
|
|
40
|
+
effectiveDate = "March 1, 2025",
|
|
41
|
+
introText = "At Storied, we take your privacy seriously. This policy outlines what data we collect, how we use it, and your rights as a visitor to our site.",
|
|
42
|
+
sections = defaultSections
|
|
43
|
+
}) => {
|
|
44
|
+
return /* @__PURE__ */ jsxs(
|
|
45
|
+
motion.div,
|
|
46
|
+
{
|
|
47
|
+
initial: { opacity: 0, y: 20 },
|
|
48
|
+
animate: { opacity: 1, y: 0 },
|
|
49
|
+
exit: { opacity: 0, y: -20 },
|
|
50
|
+
transition: { duration: 0.3 },
|
|
51
|
+
className: "sg:w-full",
|
|
52
|
+
children: [
|
|
53
|
+
/* @__PURE__ */ jsx(Layout, { type: "container", className: "sg:border-b sg:border-border", children: /* @__PURE__ */ jsxs(Layout.Col1, { className: "sg:py-16 sg:px-4 sg:text-center sg:mx-auto", children: [
|
|
54
|
+
/* @__PURE__ */ jsx(
|
|
55
|
+
Icon,
|
|
56
|
+
{
|
|
57
|
+
size: "lg",
|
|
58
|
+
color: "primary",
|
|
59
|
+
className: "sg:mx-auto sg:mb-4",
|
|
60
|
+
icon: "Shield"
|
|
61
|
+
}
|
|
62
|
+
),
|
|
63
|
+
/* @__PURE__ */ jsx(Heading, { variant: "h1", className: "sg:mb-3", children: title }),
|
|
64
|
+
/* @__PURE__ */ jsxs(Text, { foreground: "muted-foreground", children: [
|
|
65
|
+
"Effective ",
|
|
66
|
+
effectiveDate
|
|
67
|
+
] })
|
|
68
|
+
] }) }),
|
|
69
|
+
/* @__PURE__ */ jsx(Layout, { children: /* @__PURE__ */ jsxs(Layout.Col1, { className: "sg:py-16 sg:px-4", children: [
|
|
70
|
+
/* @__PURE__ */ jsx(
|
|
71
|
+
Text,
|
|
72
|
+
{
|
|
73
|
+
foreground: "muted-foreground",
|
|
74
|
+
className: "sg:leading-relaxed sg:mb-10",
|
|
75
|
+
children: introText
|
|
76
|
+
}
|
|
77
|
+
),
|
|
78
|
+
/* @__PURE__ */ jsx(Stack, { gap: 8, children: sections.map((s, i) => /* @__PURE__ */ jsxs("div", { children: [
|
|
79
|
+
/* @__PURE__ */ jsx(Heading, { variant: "h3", as: "h2", className: "sg:mb-2", children: s.title }),
|
|
80
|
+
/* @__PURE__ */ jsx(
|
|
81
|
+
Text,
|
|
82
|
+
{
|
|
83
|
+
foreground: "muted-foreground",
|
|
84
|
+
className: "sg:leading-relaxed",
|
|
85
|
+
children: s.content
|
|
86
|
+
}
|
|
87
|
+
),
|
|
88
|
+
i < sections.length - 1 && /* @__PURE__ */ jsx(Separator, { className: "sg:mt-8" })
|
|
89
|
+
] }, i)) })
|
|
90
|
+
] }) })
|
|
91
|
+
]
|
|
92
|
+
}
|
|
93
|
+
);
|
|
94
|
+
};
|
|
95
|
+
export {
|
|
96
|
+
PrivacyPage
|
|
97
|
+
};
|
|
98
|
+
//# sourceMappingURL=privacy-page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/pages/privacy/privacy-page.tsx"],"sourcesContent":["\"use client\";\nimport { motion } from \"framer-motion\";\nimport {\n Layout,\n Separator,\n Heading,\n Text,\n Icon,\n Stack,\n} from \"../../primitives/index\";\n\ninterface Section {\n title: string;\n content: string;\n}\n\ninterface PrivacyPageProps {\n title?: string;\n effectiveDate?: string;\n introText?: string;\n sections?: Section[];\n}\n\nconst defaultSections: Section[] = [\n {\n title: \"Information We Collect\",\n content:\n \"We collect minimal information to provide and improve our service. This may include your name and email address when you use our contact form, and standard analytics data such as browser type, device, and pages visited.\",\n },\n {\n title: \"How We Use Your Information\",\n content:\n \"Your information is used solely to respond to your inquiries, improve our content and user experience, and maintain the security of our website. We do not sell, trade, or rent your personal data to third parties.\",\n },\n {\n title: \"Cookies & Analytics\",\n content:\n \"We use cookies to remember your preferences (such as dark mode) and basic analytics to understand how our content is used. You can disable cookies in your browser settings at any time.\",\n },\n {\n title: \"Data Retention\",\n content:\n \"We retain personal data only as long as necessary to fulfill the purposes outlined above. Contact form submissions are kept for up to 12 months before being deleted.\",\n },\n {\n title: \"Your Rights\",\n content:\n \"You have the right to access, correct, or delete your personal data at any time. To make a request, please reach out via our contact page and we will respond within 30 days.\",\n },\n {\n title: \"Changes to This Policy\",\n content:\n \"We may update this policy from time to time. Changes will be posted on this page with an updated effective date. Continued use of the site constitutes acceptance of the revised policy.\",\n },\n];\n\nexport const PrivacyPage = ({\n title = \"Privacy Policy\",\n effectiveDate = \"March 1, 2025\",\n introText = \"At Storied, we take your privacy seriously. This policy outlines what data we collect, how we use it, and your rights as a visitor to our site.\",\n sections = defaultSections,\n}: PrivacyPageProps) => {\n return (\n <motion.div\n initial={{ opacity: 0, y: 20 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -20 }}\n transition={{ duration: 0.3 }}\n className=\"sg:w-full\"\n >\n <Layout type=\"container\" className=\"sg:border-b sg:border-border\">\n <Layout.Col1 className=\"sg:py-16 sg:px-4 sg:text-center sg:mx-auto\">\n <Icon\n size=\"lg\"\n color=\"primary\"\n className=\"sg:mx-auto sg:mb-4\"\n icon=\"Shield\"\n />\n <Heading variant=\"h1\" className=\"sg:mb-3\">\n {title}\n </Heading>\n <Text foreground=\"muted-foreground\">Effective {effectiveDate}</Text>\n </Layout.Col1>\n </Layout>\n <Layout>\n <Layout.Col1 className=\"sg:py-16 sg:px-4\">\n <Text\n foreground=\"muted-foreground\"\n className=\"sg:leading-relaxed sg:mb-10\"\n >\n {introText}\n </Text>\n <Stack gap={8}>\n {sections.map((s, i) => (\n <div key={i}>\n <Heading variant=\"h3\" as=\"h2\" className=\"sg:mb-2\">\n {s.title}\n </Heading>\n <Text\n foreground=\"muted-foreground\"\n className=\"sg:leading-relaxed\"\n >\n {s.content}\n </Text>\n {i < sections.length - 1 && <Separator className=\"sg:mt-8\" />}\n </div>\n ))}\n </Stack>\n </Layout.Col1>\n </Layout>\n </motion.div>\n );\n};\n"],"mappings":";AAwEU,cASA,YATA;AAvEV,SAAS,cAAc;AACvB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAcP,MAAM,kBAA6B;AAAA,EACjC;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AACF;AAEO,MAAM,cAAc,CAAC;AAAA,EAC1B,QAAQ;AAAA,EACR,gBAAgB;AAAA,EAChB,YAAY;AAAA,EACZ,WAAW;AACb,MAAwB;AACtB,SACE;AAAA,IAAC,OAAO;AAAA,IAAP;AAAA,MACC,SAAS,EAAE,SAAS,GAAG,GAAG,GAAG;AAAA,MAC7B,SAAS,EAAE,SAAS,GAAG,GAAG,EAAE;AAAA,MAC5B,MAAM,EAAE,SAAS,GAAG,GAAG,IAAI;AAAA,MAC3B,YAAY,EAAE,UAAU,IAAI;AAAA,MAC5B,WAAU;AAAA,MAEV;AAAA,4BAAC,UAAO,MAAK,aAAY,WAAU,gCACjC,+BAAC,OAAO,MAAP,EAAY,WAAU,8CACrB;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,OAAM;AAAA,cACN,WAAU;AAAA,cACV,MAAK;AAAA;AAAA,UACP;AAAA,UACA,oBAAC,WAAQ,SAAQ,MAAK,WAAU,WAC7B,iBACH;AAAA,UACA,qBAAC,QAAK,YAAW,oBAAmB;AAAA;AAAA,YAAW;AAAA,aAAc;AAAA,WAC/D,GACF;AAAA,QACA,oBAAC,UACC,+BAAC,OAAO,MAAP,EAAY,WAAU,oBACrB;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,YAAW;AAAA,cACX,WAAU;AAAA,cAET;AAAA;AAAA,UACH;AAAA,UACA,oBAAC,SAAM,KAAK,GACT,mBAAS,IAAI,CAAC,GAAG,MAChB,qBAAC,SACC;AAAA,gCAAC,WAAQ,SAAQ,MAAK,IAAG,MAAK,WAAU,WACrC,YAAE,OACL;AAAA,YACA;AAAA,cAAC;AAAA;AAAA,gBACC,YAAW;AAAA,gBACX,WAAU;AAAA,gBAET,YAAE;AAAA;AAAA,YACL;AAAA,YACC,IAAI,SAAS,SAAS,KAAK,oBAAC,aAAU,WAAU,WAAU;AAAA,eAVnD,CAWV,CACD,GACH;AAAA,WACF,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Layout, Heading, Text, Stack } from "../../primitives/index.js";
|
|
4
|
+
import { posts } from "../../../data/posts.js";
|
|
5
|
+
import { PostListWithFilters } from "../../blocks/post-list/post-list-with-filters.js";
|
|
6
|
+
function SearchPage() {
|
|
7
|
+
return /* @__PURE__ */ jsx(Layout, { type: "wide", className: "sg:py-16", as: "main", children: /* @__PURE__ */ jsxs(Layout.Col1, { hideDiv: true, children: [
|
|
8
|
+
/* @__PURE__ */ jsxs(Stack, { gap: 2, className: "sg:mb-10", children: [
|
|
9
|
+
/* @__PURE__ */ jsx(Heading, { variant: "h1", children: "All Posts" }),
|
|
10
|
+
/* @__PURE__ */ jsx(Text, { foreground: "muted-foreground", children: "Every story we've published, newest first." })
|
|
11
|
+
] }),
|
|
12
|
+
/* @__PURE__ */ jsx(PostListWithFilters, { posts, defaultLoadMode: "load-more" })
|
|
13
|
+
] }) });
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
SearchPage
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=search-page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/pages/search/search-page.tsx"],"sourcesContent":["\"use client\";\nimport { Layout, Heading, Text, Stack } from \"../../primitives/index\";\nimport { posts } from \"../../../data/posts\";\nimport { PostListWithFilters } from \"../../blocks/post-list/post-list-with-filters\";\n\nexport function SearchPage() {\n return (\n <Layout type=\"wide\" className=\"sg:py-16\" as=\"main\">\n <Layout.Col1 hideDiv>\n <Stack gap={2} className=\"sg:mb-10\">\n <Heading variant=\"h1\">All Posts</Heading>\n <Text foreground=\"muted-foreground\">\n Every story we've published, newest first.\n </Text>\n </Stack>\n\n <PostListWithFilters posts={posts} defaultLoadMode=\"load-more\" />\n </Layout.Col1>\n </Layout>\n );\n}\n"],"mappings":";AASQ,SACE,KADF;AARR,SAAS,QAAQ,SAAS,MAAM,aAAa;AAC7C,SAAS,aAAa;AACtB,SAAS,2BAA2B;AAE7B,SAAS,aAAa;AAC3B,SACE,oBAAC,UAAO,MAAK,QAAO,WAAU,YAAW,IAAG,QAC1C,+BAAC,OAAO,MAAP,EAAY,SAAO,MAClB;AAAA,yBAAC,SAAM,KAAK,GAAG,WAAU,YACvB;AAAA,0BAAC,WAAQ,SAAQ,MAAK,uBAAS;AAAA,MAC/B,oBAAC,QAAK,YAAW,oBAAmB,wDAEpC;AAAA,OACF;AAAA,IAEA,oBAAC,uBAAoB,OAAc,iBAAgB,aAAY;AAAA,KACjE,GACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Container } from "../../templates/container/container.js";
|
|
3
|
+
import Hero from "../../templates/hero/hero.js";
|
|
4
|
+
import { Layout, Link, Heading, Text } from "../../primitives/index.js";
|
|
5
|
+
import BlogPostCard from "../../blocks/cards/blogpost-card.js";
|
|
6
|
+
import { posts } from "../../../data/posts.js";
|
|
7
|
+
import { Footer } from "../../templates/footer/footer.js";
|
|
8
|
+
function StartPage() {
|
|
9
|
+
return /* @__PURE__ */ jsxs(Container, { children: [
|
|
10
|
+
/* @__PURE__ */ jsx(Container.Header, {}),
|
|
11
|
+
/* @__PURE__ */ jsxs(Container.Content, { children: [
|
|
12
|
+
/* @__PURE__ */ jsx(
|
|
13
|
+
Hero,
|
|
14
|
+
{
|
|
15
|
+
title: "Stories worth",
|
|
16
|
+
titleAccent: "savoring",
|
|
17
|
+
description: "A curated journal exploring design, culture, and the quiet art of living with intention.",
|
|
18
|
+
primaryCTA: { label: "Browse all posts", href: "#" },
|
|
19
|
+
secondaryCTA: { label: "Our design system", href: "#" }
|
|
20
|
+
}
|
|
21
|
+
),
|
|
22
|
+
/* @__PURE__ */ jsx(Layout, { as: "section", className: "sg:py-16", children: /* @__PURE__ */ jsxs(Layout.Col1, { hideDiv: true, children: [
|
|
23
|
+
/* @__PURE__ */ jsxs("div", { className: "sg:flex sg:items-end sg:justify-between sg:flex-wrap sg:mb-10", children: [
|
|
24
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
25
|
+
/* @__PURE__ */ jsx(Heading, { variant: "h2", children: "Latest Stories" }),
|
|
26
|
+
/* @__PURE__ */ jsx(Text, { foreground: "muted-foreground", className: "sg:mt-2", children: "Exploring design, culture, and the quiet art of living." })
|
|
27
|
+
] }),
|
|
28
|
+
/* @__PURE__ */ jsx(Link, { to: "/posts", iconEnd: "ArrowRight", children: "View all" })
|
|
29
|
+
] }),
|
|
30
|
+
/* @__PURE__ */ jsx("div", { className: "sg:grid sg:grid-cols-[repeat(auto-fit,minmax(min(230px,100%),1fr))] sg:gap-8", children: posts.slice(0, 3).map((post) => /* @__PURE__ */ jsx(
|
|
31
|
+
BlogPostCard,
|
|
32
|
+
{
|
|
33
|
+
id: post.id,
|
|
34
|
+
image: post.primaryImage,
|
|
35
|
+
categories: post.categories,
|
|
36
|
+
date: post.date,
|
|
37
|
+
title: post.title,
|
|
38
|
+
excerpt: post.excerpt
|
|
39
|
+
},
|
|
40
|
+
post.id
|
|
41
|
+
)) })
|
|
42
|
+
] }) })
|
|
43
|
+
] }),
|
|
44
|
+
/* @__PURE__ */ jsx(Container.Footer, { children: /* @__PURE__ */ jsx(Footer, {}) })
|
|
45
|
+
] });
|
|
46
|
+
}
|
|
47
|
+
export {
|
|
48
|
+
StartPage
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=startpage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/pages/startpage/startpage.tsx"],"sourcesContent":["import { Container } from \"../../templates/container/container\";\nimport Hero from \"../../templates/hero/hero\";\nimport { Layout, Link, Heading, Text } from \"../../primitives/index\";\nimport BlogPostCard from \"../../blocks/cards/blogpost-card\";\nimport { posts } from \"../../../data/posts\";\nimport { Footer } from \"../../templates/footer/footer\";\n\nfunction StartPage() {\n return (\n <Container>\n <Container.Header />\n <Container.Content>\n <Hero\n title=\"Stories worth\"\n titleAccent=\"savoring\"\n description=\"A curated journal exploring design, culture, and the quiet art of living with intention.\"\n primaryCTA={{ label: \"Browse all posts\", href: \"#\" }}\n secondaryCTA={{ label: \"Our design system\", href: \"#\" }}\n />\n <Layout as=\"section\" className=\"sg:py-16\">\n <Layout.Col1 hideDiv>\n <div className=\"sg:flex sg:items-end sg:justify-between sg:flex-wrap sg:mb-10\">\n <div>\n <Heading variant=\"h2\">Latest Stories</Heading>\n <Text foreground=\"muted-foreground\" className=\"sg:mt-2\">\n Exploring design, culture, and the quiet art of living.\n </Text>\n </div>\n <Link to=\"/posts\" iconEnd=\"ArrowRight\">\n View all\n </Link>\n </div>\n <div className=\"sg:grid sg:grid-cols-[repeat(auto-fit,minmax(min(230px,100%),1fr))] sg:gap-8\">\n {posts.slice(0, 3).map((post) => (\n <BlogPostCard\n key={post.id}\n id={post.id}\n image={post.primaryImage}\n categories={post.categories}\n date={post.date}\n title={post.title}\n excerpt={post.excerpt}\n />\n ))}\n </div>\n </Layout.Col1>\n </Layout>\n </Container.Content>\n <Container.Footer>\n <Footer />\n </Container.Footer>\n </Container>\n );\n}\n\nexport { StartPage };\n"],"mappings":"AAUM,cAYQ,YAZR;AAVN,SAAS,iBAAiB;AAC1B,OAAO,UAAU;AACjB,SAAS,QAAQ,MAAM,SAAS,YAAY;AAC5C,OAAO,kBAAkB;AACzB,SAAS,aAAa;AACtB,SAAS,cAAc;AAEvB,SAAS,YAAY;AACnB,SACE,qBAAC,aACC;AAAA,wBAAC,UAAU,QAAV,EAAiB;AAAA,IAClB,qBAAC,UAAU,SAAV,EACC;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,OAAM;AAAA,UACN,aAAY;AAAA,UACZ,aAAY;AAAA,UACZ,YAAY,EAAE,OAAO,oBAAoB,MAAM,IAAI;AAAA,UACnD,cAAc,EAAE,OAAO,qBAAqB,MAAM,IAAI;AAAA;AAAA,MACxD;AAAA,MACA,oBAAC,UAAO,IAAG,WAAU,WAAU,YAC7B,+BAAC,OAAO,MAAP,EAAY,SAAO,MAClB;AAAA,6BAAC,SAAI,WAAU,iEACb;AAAA,+BAAC,SACC;AAAA,gCAAC,WAAQ,SAAQ,MAAK,4BAAc;AAAA,YACpC,oBAAC,QAAK,YAAW,oBAAmB,WAAU,WAAU,qEAExD;AAAA,aACF;AAAA,UACA,oBAAC,QAAK,IAAG,UAAS,SAAQ,cAAa,sBAEvC;AAAA,WACF;AAAA,QACA,oBAAC,SAAI,WAAU,gFACZ,gBAAM,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,SACtB;AAAA,UAAC;AAAA;AAAA,YAEC,IAAI,KAAK;AAAA,YACT,OAAO,KAAK;AAAA,YACZ,YAAY,KAAK;AAAA,YACjB,MAAM,KAAK;AAAA,YACX,OAAO,KAAK;AAAA,YACZ,SAAS,KAAK;AAAA;AAAA,UANT,KAAK;AAAA,QAOZ,CACD,GACH;AAAA,SACF,GACF;AAAA,OACF;AAAA,IACA,oBAAC,UAAU,QAAV,EACC,8BAAC,UAAO,GACV;AAAA,KACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
|
|
3
|
+
interface Section {
|
|
4
|
+
title: string;
|
|
5
|
+
content: string;
|
|
6
|
+
}
|
|
7
|
+
interface TermsPageProps {
|
|
8
|
+
title?: string;
|
|
9
|
+
effectiveDate?: string;
|
|
10
|
+
introText?: string;
|
|
11
|
+
sections?: Section[];
|
|
12
|
+
}
|
|
13
|
+
declare const TermsPage: ({ title, effectiveDate, introText, sections, }: TermsPageProps) => react_jsx_runtime.JSX.Element;
|
|
14
|
+
|
|
15
|
+
export { TermsPage };
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { motion } from "framer-motion";
|
|
4
|
+
import {
|
|
5
|
+
Layout,
|
|
6
|
+
Separator,
|
|
7
|
+
Heading,
|
|
8
|
+
Text,
|
|
9
|
+
Icon,
|
|
10
|
+
Stack
|
|
11
|
+
} from "../../primitives/index.js";
|
|
12
|
+
const defaultSections = [
|
|
13
|
+
{
|
|
14
|
+
title: "Acceptance of Terms",
|
|
15
|
+
content: "By accessing and using Storied, you agree to be bound by these Terms of Service and all applicable laws and regulations. If you do not agree with any of these terms, please do not use our site."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
title: "Use of Content",
|
|
19
|
+
content: "All content published on Storied \u2014 including articles, images, and design elements \u2014 is protected by copyright. You may share links and short excerpts with proper attribution, but reproducing full articles without written permission is prohibited."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
title: "User Contributions",
|
|
23
|
+
content: "When submitting comments, messages, or other content through our site, you grant Storied a non-exclusive license to display and use that content in connection with our services. You are responsible for ensuring your contributions are lawful and respectful."
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
title: "Disclaimer",
|
|
27
|
+
content: "Content on Storied is provided for informational and inspirational purposes only. We make no warranties regarding the accuracy, completeness, or reliability of any content. Use of the site is at your own risk."
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
title: "Limitation of Liability",
|
|
31
|
+
content: "Storied and its contributors shall not be liable for any indirect, incidental, or consequential damages arising from the use of this website or reliance on its content."
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
title: "Modifications",
|
|
35
|
+
content: "We reserve the right to modify these terms at any time. Updated terms will be posted on this page. Continued use of the site after changes constitutes acceptance of the new terms."
|
|
36
|
+
}
|
|
37
|
+
];
|
|
38
|
+
const TermsPage = ({
|
|
39
|
+
title = "Terms of Service",
|
|
40
|
+
effectiveDate = "March 1, 2025",
|
|
41
|
+
introText = "Please read these terms carefully before using Storied. They govern your use of our website and content.",
|
|
42
|
+
sections = defaultSections
|
|
43
|
+
}) => {
|
|
44
|
+
return /* @__PURE__ */ jsxs(
|
|
45
|
+
motion.div,
|
|
46
|
+
{
|
|
47
|
+
initial: { opacity: 0, y: 20 },
|
|
48
|
+
animate: { opacity: 1, y: 0 },
|
|
49
|
+
exit: { opacity: 0, y: -20 },
|
|
50
|
+
transition: { duration: 0.3 },
|
|
51
|
+
className: "sg:w-full",
|
|
52
|
+
children: [
|
|
53
|
+
/* @__PURE__ */ jsx(Layout, { type: "container", className: "sg:border-b sg:border-border", children: /* @__PURE__ */ jsxs(Layout.Col1, { className: "sg:py-16 sg:px-4 sg:text-center sg:mx-auto", children: [
|
|
54
|
+
/* @__PURE__ */ jsx(
|
|
55
|
+
Icon,
|
|
56
|
+
{
|
|
57
|
+
size: "lg",
|
|
58
|
+
color: "primary",
|
|
59
|
+
className: "sg:mx-auto sg:mb-4",
|
|
60
|
+
icon: "FileText"
|
|
61
|
+
}
|
|
62
|
+
),
|
|
63
|
+
/* @__PURE__ */ jsx(Heading, { variant: "h1", className: "sg:mb-3", children: title }),
|
|
64
|
+
/* @__PURE__ */ jsxs(Text, { foreground: "muted-foreground", children: [
|
|
65
|
+
"Effective ",
|
|
66
|
+
effectiveDate
|
|
67
|
+
] })
|
|
68
|
+
] }) }),
|
|
69
|
+
/* @__PURE__ */ jsx(Layout, { children: /* @__PURE__ */ jsxs(Layout.Col1, { className: "sg:py-16 sg:px-4", children: [
|
|
70
|
+
/* @__PURE__ */ jsx(
|
|
71
|
+
Text,
|
|
72
|
+
{
|
|
73
|
+
foreground: "muted-foreground",
|
|
74
|
+
className: "sg:leading-relaxed sg:mb-10",
|
|
75
|
+
children: introText
|
|
76
|
+
}
|
|
77
|
+
),
|
|
78
|
+
/* @__PURE__ */ jsx(Stack, { gap: 8, children: sections.map((s, i) => /* @__PURE__ */ jsxs("div", { children: [
|
|
79
|
+
/* @__PURE__ */ jsx(Heading, { variant: "h3", as: "h2", className: "sg:mb-2", children: s.title }),
|
|
80
|
+
/* @__PURE__ */ jsx(
|
|
81
|
+
Text,
|
|
82
|
+
{
|
|
83
|
+
foreground: "muted-foreground",
|
|
84
|
+
className: "sg:leading-relaxed",
|
|
85
|
+
children: s.content
|
|
86
|
+
}
|
|
87
|
+
),
|
|
88
|
+
i < sections.length - 1 && /* @__PURE__ */ jsx(Separator, { className: "sg:mt-8" })
|
|
89
|
+
] }, i)) })
|
|
90
|
+
] }) })
|
|
91
|
+
]
|
|
92
|
+
}
|
|
93
|
+
);
|
|
94
|
+
};
|
|
95
|
+
export {
|
|
96
|
+
TermsPage
|
|
97
|
+
};
|
|
98
|
+
//# sourceMappingURL=terms-page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/pages/terms/terms-page.tsx"],"sourcesContent":["\"use client\";\nimport { motion } from \"framer-motion\";\nimport {\n Layout,\n Separator,\n Heading,\n Text,\n Icon,\n Stack,\n} from \"../../primitives/index\";\n\ninterface Section {\n title: string;\n content: string;\n}\n\ninterface TermsPageProps {\n title?: string;\n effectiveDate?: string;\n introText?: string;\n sections?: Section[];\n}\n\nconst defaultSections: Section[] = [\n {\n title: \"Acceptance of Terms\",\n content:\n \"By accessing and using Storied, you agree to be bound by these Terms of Service and all applicable laws and regulations. If you do not agree with any of these terms, please do not use our site.\",\n },\n {\n title: \"Use of Content\",\n content:\n \"All content published on Storied — including articles, images, and design elements — is protected by copyright. You may share links and short excerpts with proper attribution, but reproducing full articles without written permission is prohibited.\",\n },\n {\n title: \"User Contributions\",\n content:\n \"When submitting comments, messages, or other content through our site, you grant Storied a non-exclusive license to display and use that content in connection with our services. You are responsible for ensuring your contributions are lawful and respectful.\",\n },\n {\n title: \"Disclaimer\",\n content:\n \"Content on Storied is provided for informational and inspirational purposes only. We make no warranties regarding the accuracy, completeness, or reliability of any content. Use of the site is at your own risk.\",\n },\n {\n title: \"Limitation of Liability\",\n content:\n \"Storied and its contributors shall not be liable for any indirect, incidental, or consequential damages arising from the use of this website or reliance on its content.\",\n },\n {\n title: \"Modifications\",\n content:\n \"We reserve the right to modify these terms at any time. Updated terms will be posted on this page. Continued use of the site after changes constitutes acceptance of the new terms.\",\n },\n];\n\nexport const TermsPage = ({\n title = \"Terms of Service\",\n effectiveDate = \"March 1, 2025\",\n introText = \"Please read these terms carefully before using Storied. They govern your use of our website and content.\",\n sections = defaultSections,\n}: TermsPageProps) => {\n return (\n <motion.div\n initial={{ opacity: 0, y: 20 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -20 }}\n transition={{ duration: 0.3 }}\n className=\"sg:w-full\"\n >\n <Layout type=\"container\" className=\"sg:border-b sg:border-border\">\n <Layout.Col1 className=\"sg:py-16 sg:px-4 sg:text-center sg:mx-auto\">\n <Icon\n size=\"lg\"\n color=\"primary\"\n className=\"sg:mx-auto sg:mb-4\"\n icon=\"FileText\"\n />\n <Heading variant=\"h1\" className=\"sg:mb-3\">\n {title}\n </Heading>\n <Text foreground=\"muted-foreground\">Effective {effectiveDate}</Text>\n </Layout.Col1>\n </Layout>\n <Layout>\n <Layout.Col1 className=\"sg:py-16 sg:px-4\">\n <Text\n foreground=\"muted-foreground\"\n className=\"sg:leading-relaxed sg:mb-10\"\n >\n {introText}\n </Text>\n <Stack gap={8}>\n {sections.map((s, i) => (\n <div key={i}>\n <Heading variant=\"h3\" as=\"h2\" className=\"sg:mb-2\">\n {s.title}\n </Heading>\n <Text\n foreground=\"muted-foreground\"\n className=\"sg:leading-relaxed\"\n >\n {s.content}\n </Text>\n {i < sections.length - 1 && <Separator className=\"sg:mt-8\" />}\n </div>\n ))}\n </Stack>\n </Layout.Col1>\n </Layout>\n </motion.div>\n );\n};\n"],"mappings":";AAwEU,cASA,YATA;AAvEV,SAAS,cAAc;AACvB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAcP,MAAM,kBAA6B;AAAA,EACjC;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,SACE;AAAA,EACJ;AACF;AAEO,MAAM,YAAY,CAAC;AAAA,EACxB,QAAQ;AAAA,EACR,gBAAgB;AAAA,EAChB,YAAY;AAAA,EACZ,WAAW;AACb,MAAsB;AACpB,SACE;AAAA,IAAC,OAAO;AAAA,IAAP;AAAA,MACC,SAAS,EAAE,SAAS,GAAG,GAAG,GAAG;AAAA,MAC7B,SAAS,EAAE,SAAS,GAAG,GAAG,EAAE;AAAA,MAC5B,MAAM,EAAE,SAAS,GAAG,GAAG,IAAI;AAAA,MAC3B,YAAY,EAAE,UAAU,IAAI;AAAA,MAC5B,WAAU;AAAA,MAEV;AAAA,4BAAC,UAAO,MAAK,aAAY,WAAU,gCACjC,+BAAC,OAAO,MAAP,EAAY,WAAU,8CACrB;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,OAAM;AAAA,cACN,WAAU;AAAA,cACV,MAAK;AAAA;AAAA,UACP;AAAA,UACA,oBAAC,WAAQ,SAAQ,MAAK,WAAU,WAC7B,iBACH;AAAA,UACA,qBAAC,QAAK,YAAW,oBAAmB;AAAA;AAAA,YAAW;AAAA,aAAc;AAAA,WAC/D,GACF;AAAA,QACA,oBAAC,UACC,+BAAC,OAAO,MAAP,EAAY,WAAU,oBACrB;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,YAAW;AAAA,cACX,WAAU;AAAA,cAET;AAAA;AAAA,UACH;AAAA,UACA,oBAAC,SAAM,KAAK,GACT,mBAAS,IAAI,CAAC,GAAG,MAChB,qBAAC,SACC;AAAA,gCAAC,WAAQ,SAAQ,MAAK,IAAG,MAAK,WAAU,WACrC,YAAE,OACL;AAAA,YACA;AAAA,cAAC;AAAA;AAAA,gBACC,YAAW;AAAA,gBACX,WAAU;AAAA,gBAET,YAAE;AAAA;AAAA,YACL;AAAA,YACC,IAAI,SAAS,SAAS,KAAK,oBAAC,aAAU,WAAU,WAAU;AAAA,eAVnD,CAWV,CACD,GACH;AAAA,WACF,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { Accordion as AccordionPrimitive } from "@base-ui/react/accordion";
|
|
4
4
|
import { ChevronDownIcon, ChevronUpIcon } from "lucide-react";
|
|
5
|
-
import { cn } from "../../../utils";
|
|
5
|
+
import { cn } from "../../../utils/index.js";
|
|
6
6
|
function Accordion({ className, ...props }) {
|
|
7
7
|
return /* @__PURE__ */ jsx(
|
|
8
8
|
AccordionPrimitive.Root,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/primitives/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { Accordion as AccordionPrimitive } from \"@base-ui/react/accordion\";\r\nimport { ChevronDownIcon, ChevronUpIcon } from \"lucide-react\";\r\nimport { cn } from \"../../../utils\";\r\n\r\nfunction Accordion({ className, ...props }: AccordionPrimitive.Root.Props) {\r\n return (\r\n <AccordionPrimitive.Root\r\n data-slot=\"accordion\"\r\n className={cn(\r\n \"sg:overflow-hidden sg:rounded-2xl sg:border sg:flex sg:w-full sg:flex-col\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AccordionItem({ className, ...props }: AccordionPrimitive.Item.Props) {\r\n return (\r\n <AccordionPrimitive.Item\r\n data-slot=\"accordion-item\"\r\n className={cn(\"sg:data-open:bg-muted/50 sg:not-last:border-b\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AccordionTrigger({\r\n className,\r\n children,\r\n ...props\r\n}: AccordionPrimitive.Trigger.Props) {\r\n return (\r\n <AccordionPrimitive.Header className=\"sg:flex\">\r\n <AccordionPrimitive.Trigger\r\n data-slot=\"accordion-trigger\"\r\n className={cn(\r\n \"sg:**:data-[slot=accordion-trigger-icon]:text-muted-foreground sg:gap-6 sg:p-4 sg:text-start sg:text-sm sg:font-medium sg:hover:underline sg:**:data-[slot=accordion-trigger-icon]:ms-auto sg:**:data-[slot=accordion-trigger-icon]:size-4 sg:group/accordion-trigger sg:relative sg:flex sg:flex-1 sg:items-start sg:justify-between sg:border sg:border-transparent sg:transition-all sg:outline-none sg:disabled:pointer-events-none sg:disabled:opacity-50\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <ChevronDownIcon\r\n data-slot=\"accordion-trigger-icon\"\r\n className=\"sg:pointer-events-none sg:shrink-0 sg:group-aria-expanded/accordion-trigger:hidden\"\r\n />\r\n <ChevronUpIcon\r\n data-slot=\"accordion-trigger-icon\"\r\n className=\"sg:pointer-events-none sg:hidden sg:shrink-0 sg:group-aria-expanded/accordion-trigger:inline\"\r\n />\r\n </AccordionPrimitive.Trigger>\r\n </AccordionPrimitive.Header>\r\n );\r\n}\r\n\r\nfunction AccordionContent({\r\n className,\r\n children,\r\n ...props\r\n}: AccordionPrimitive.Panel.Props) {\r\n return (\r\n <AccordionPrimitive.Panel\r\n data-slot=\"accordion-content\"\r\n className=\"sg:data-open:animate-accordion-down sg:data-closed:animate-accordion-up sg:px-4 sg:text-sm sg:overflow-hidden\"\r\n {...props}\r\n >\r\n <div\r\n className={cn(\r\n \"sg:pt-0 sg:pb-4 sg:[&_a]:hover:text-foreground sg:h-(--accordion-panel-height) sg:data-ending-style:h-0 sg:data-starting-style:h-0 sg:[&_a]:underline sg:[&_a]:underline-offset-3 sg:[&_p:not(:last-child)]:mb-4\",\r\n className,\r\n )}\r\n >\r\n {children}\r\n </div>\r\n </AccordionPrimitive.Panel>\r\n );\r\n}\r\n\r\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\r\n"],"mappings":";AAQI,cA4BE,YA5BF;AANJ,SAAS,aAAa,0BAA0B;AAChD,SAAS,iBAAiB,qBAAqB;AAC/C,SAAS,UAAU;AAEnB,SAAS,UAAU,EAAE,WAAW,GAAG,MAAM,GAAkC;AACzE,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,GAAkC;AAC7E,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,iDAAiD,SAAS;AAAA,MACvE,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAqC;AACnC,SACE,oBAAC,mBAAmB,QAAnB,EAA0B,WAAU,WACnC;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,QACD;AAAA,UAAC;AAAA;AAAA,YACC,aAAU;AAAA,YACV,WAAU;AAAA;AAAA,QACZ;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,aAAU;AAAA,YACV,WAAU;AAAA;AAAA,QACZ;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAU;AAAA,MACT,GAAG;AAAA,MAEJ;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,UACF;AAAA,UAEC;AAAA;AAAA,MACH;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { Accordion as AccordionPrimitive } from \"@base-ui/react/accordion\";\r\nimport { ChevronDownIcon, ChevronUpIcon } from \"lucide-react\";\r\nimport { cn } from \"../../../utils/index\";\r\n\r\nfunction Accordion({ className, ...props }: AccordionPrimitive.Root.Props) {\r\n return (\r\n <AccordionPrimitive.Root\r\n data-slot=\"accordion\"\r\n className={cn(\r\n \"sg:overflow-hidden sg:rounded-2xl sg:border sg:flex sg:w-full sg:flex-col\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AccordionItem({ className, ...props }: AccordionPrimitive.Item.Props) {\r\n return (\r\n <AccordionPrimitive.Item\r\n data-slot=\"accordion-item\"\r\n className={cn(\"sg:data-open:bg-muted/50 sg:not-last:border-b\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AccordionTrigger({\r\n className,\r\n children,\r\n ...props\r\n}: AccordionPrimitive.Trigger.Props) {\r\n return (\r\n <AccordionPrimitive.Header className=\"sg:flex\">\r\n <AccordionPrimitive.Trigger\r\n data-slot=\"accordion-trigger\"\r\n className={cn(\r\n \"sg:**:data-[slot=accordion-trigger-icon]:text-muted-foreground sg:gap-6 sg:p-4 sg:text-start sg:text-sm sg:font-medium sg:hover:underline sg:**:data-[slot=accordion-trigger-icon]:ms-auto sg:**:data-[slot=accordion-trigger-icon]:size-4 sg:group/accordion-trigger sg:relative sg:flex sg:flex-1 sg:items-start sg:justify-between sg:border sg:border-transparent sg:transition-all sg:outline-none sg:disabled:pointer-events-none sg:disabled:opacity-50\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <ChevronDownIcon\r\n data-slot=\"accordion-trigger-icon\"\r\n className=\"sg:pointer-events-none sg:shrink-0 sg:group-aria-expanded/accordion-trigger:hidden\"\r\n />\r\n <ChevronUpIcon\r\n data-slot=\"accordion-trigger-icon\"\r\n className=\"sg:pointer-events-none sg:hidden sg:shrink-0 sg:group-aria-expanded/accordion-trigger:inline\"\r\n />\r\n </AccordionPrimitive.Trigger>\r\n </AccordionPrimitive.Header>\r\n );\r\n}\r\n\r\nfunction AccordionContent({\r\n className,\r\n children,\r\n ...props\r\n}: AccordionPrimitive.Panel.Props) {\r\n return (\r\n <AccordionPrimitive.Panel\r\n data-slot=\"accordion-content\"\r\n className=\"sg:data-open:animate-accordion-down sg:data-closed:animate-accordion-up sg:px-4 sg:text-sm sg:overflow-hidden\"\r\n {...props}\r\n >\r\n <div\r\n className={cn(\r\n \"sg:pt-0 sg:pb-4 sg:[&_a]:hover:text-foreground sg:h-(--accordion-panel-height) sg:data-ending-style:h-0 sg:data-starting-style:h-0 sg:[&_a]:underline sg:[&_a]:underline-offset-3 sg:[&_p:not(:last-child)]:mb-4\",\r\n className,\r\n )}\r\n >\r\n {children}\r\n </div>\r\n </AccordionPrimitive.Panel>\r\n );\r\n}\r\n\r\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\r\n"],"mappings":";AAQI,cA4BE,YA5BF;AANJ,SAAS,aAAa,0BAA0B;AAChD,SAAS,iBAAiB,qBAAqB;AAC/C,SAAS,UAAU;AAEnB,SAAS,UAAU,EAAE,WAAW,GAAG,MAAM,GAAkC;AACzE,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,GAAkC;AAC7E,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,iDAAiD,SAAS;AAAA,MACvE,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAqC;AACnC,SACE,oBAAC,mBAAmB,QAAnB,EAA0B,WAAU,WACnC;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,QACD;AAAA,UAAC;AAAA;AAAA,YACC,aAAU;AAAA,YACV,WAAU;AAAA;AAAA,QACZ;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,aAAU;AAAA,YACV,WAAU;AAAA;AAAA,QACZ;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAU;AAAA,MACT,GAAG;AAAA,MAEJ;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,UACF;AAAA,UAEC;AAAA;AAAA,MACH;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import * as 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 alertVariants = {
|
|
6
6
|
variant: {
|
|
7
7
|
default: "sg:bg-card sg:text-card-foreground",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/primitives/alert/alert.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils\";\r\n\r\nconst alertVariants = {\r\n variant: {\r\n default: \"sg:bg-card sg:text-card-foreground\",\r\n destructive:\r\n \"sg:text-destructive sg:bg-card sg:*:data-[slot=alert-description]:text-destructive/90 sg:*:[svg]:text-current\",\r\n },\r\n};\r\n\r\nconst alertVariantsProps = cva(\r\n \"sg:grid sg:gap-0.5 sg:rounded-lg sg:border sg:px-4 sg:py-3 sg:text-start sg:text-sm sg:has-data-[slot=alert-action]:relative sg:has-data-[slot=alert-action]:pe-18 sg:has-[>svg]:grid-cols-[auto_1fr] sg:has-[>svg]:gap-x-2.5 sg:*:[svg]:row-span-2 sg:*:[svg]:translate-y-0.5 sg:*:[svg]:text-current sg:*:[svg:not([class*=size-])]:size-4 sg:w-full sg:relative sg:group/alert\",\r\n {\r\n variants: alertVariants,\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n },\r\n);\r\n\r\nfunction Alert({\r\n className,\r\n variant,\r\n ...props\r\n}: React.ComponentProps<\"div\"> & VariantProps<typeof alertVariantsProps>) {\r\n return (\r\n <div\r\n data-slot=\"alert\"\r\n role=\"alert\"\r\n className={cn(alertVariantsProps({ variant }), className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"alert-title\"\r\n className={cn(\r\n \"sg:font-medium sg:group-has-[>svg]/alert:col-start-2 sg:[&_a]:hover:text-foreground sg:[&_a]:underline sg:[&_a]:underline-offset-3\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AlertDescription({\r\n className,\r\n ...props\r\n}: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"alert-description\"\r\n className={cn(\r\n \"sg:text-muted-foreground sg:text-sm sg:text-balance sg:md:text-pretty sg:[&_p:not(:last-child)]:mb-4 sg:[&_a]:hover:text-foreground sg:[&_a]:underline sg:[&_a]:underline-offset-3\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AlertAction({ className, ...props }: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"alert-action\"\r\n className={cn(\"sg:absolute sg:top-2.5 sg:end-3\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport { Alert, AlertTitle, AlertDescription, AlertAction, alertVariants };\r\n"],"mappings":"AA4BI;AA5BJ,YAAY,WAAW;AACvB,SAAS,WAA8B;AACvC,SAAS,UAAU;AAEnB,MAAM,gBAAgB;AAAA,EACpB,SAAS;AAAA,IACP,SAAS;AAAA,IACT,aACE;AAAA,EACJ;AACF;AAEA,MAAM,qBAAqB;AAAA,EACzB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,IACV,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF;AAEA,SAAS,MAAM;AAAA,EACb;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAA0E;AACxE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,MAAK;AAAA,MACL,WAAW,GAAG,mBAAmB,EAAE,QAAQ,CAAC,GAAG,SAAS;AAAA,MACvD,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,WAAW,EAAE,WAAW,GAAG,MAAM,GAAgC;AACxE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA,GAAG;AACL,GAAgC;AAC9B,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,MAAM,GAAgC;AACzE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,mCAAmC,SAAS;AAAA,MACzD,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/alert/alert.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { cn } from \"../../../utils/index\";\r\n\r\nconst alertVariants = {\r\n variant: {\r\n default: \"sg:bg-card sg:text-card-foreground\",\r\n destructive:\r\n \"sg:text-destructive sg:bg-card sg:*:data-[slot=alert-description]:text-destructive/90 sg:*:[svg]:text-current\",\r\n },\r\n};\r\n\r\nconst alertVariantsProps = cva(\r\n \"sg:grid sg:gap-0.5 sg:rounded-lg sg:border sg:px-4 sg:py-3 sg:text-start sg:text-sm sg:has-data-[slot=alert-action]:relative sg:has-data-[slot=alert-action]:pe-18 sg:has-[>svg]:grid-cols-[auto_1fr] sg:has-[>svg]:gap-x-2.5 sg:*:[svg]:row-span-2 sg:*:[svg]:translate-y-0.5 sg:*:[svg]:text-current sg:*:[svg:not([class*=size-])]:size-4 sg:w-full sg:relative sg:group/alert\",\r\n {\r\n variants: alertVariants,\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n },\r\n);\r\n\r\nfunction Alert({\r\n className,\r\n variant,\r\n ...props\r\n}: React.ComponentProps<\"div\"> & VariantProps<typeof alertVariantsProps>) {\r\n return (\r\n <div\r\n data-slot=\"alert\"\r\n role=\"alert\"\r\n className={cn(alertVariantsProps({ variant }), className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"alert-title\"\r\n className={cn(\r\n \"sg:font-medium sg:group-has-[>svg]/alert:col-start-2 sg:[&_a]:hover:text-foreground sg:[&_a]:underline sg:[&_a]:underline-offset-3\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AlertDescription({\r\n className,\r\n ...props\r\n}: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"alert-description\"\r\n className={cn(\r\n \"sg:text-muted-foreground sg:text-sm sg:text-balance sg:md:text-pretty sg:[&_p:not(:last-child)]:mb-4 sg:[&_a]:hover:text-foreground sg:[&_a]:underline sg:[&_a]:underline-offset-3\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction AlertAction({ className, ...props }: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"alert-action\"\r\n className={cn(\"sg:absolute sg:top-2.5 sg:end-3\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport { Alert, AlertTitle, AlertDescription, AlertAction, alertVariants };\r\n"],"mappings":"AA4BI;AA5BJ,YAAY,WAAW;AACvB,SAAS,WAA8B;AACvC,SAAS,UAAU;AAEnB,MAAM,gBAAgB;AAAA,EACpB,SAAS;AAAA,IACP,SAAS;AAAA,IACT,aACE;AAAA,EACJ;AACF;AAEA,MAAM,qBAAqB;AAAA,EACzB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,IACV,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF;AAEA,SAAS,MAAM;AAAA,EACb;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAA0E;AACxE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,MAAK;AAAA,MACL,WAAW,GAAG,mBAAmB,EAAE,QAAQ,CAAC,GAAG,SAAS;AAAA,MACvD,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,WAAW,EAAE,WAAW,GAAG,MAAM,GAAgC;AACxE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA,GAAG;AACL,GAAgC;AAC9B,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,MAAM,GAAgC;AACzE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,mCAAmC,SAAS;AAAA,MACzD,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Avatar as Avatar$1 } from '@base-ui/react';
|
|
4
|
+
|
|
5
|
+
declare function Avatar({ className, size, ...props }: Avatar$1.Root.Props & {
|
|
6
|
+
size?: "default" | "sm" | "lg";
|
|
7
|
+
}): react_jsx_runtime.JSX.Element;
|
|
8
|
+
declare function AvatarImage({ className, ...props }: Avatar$1.Image.Props): react_jsx_runtime.JSX.Element;
|
|
9
|
+
declare function AvatarFallback({ className, ...props }: Avatar$1.Fallback.Props): react_jsx_runtime.JSX.Element;
|
|
10
|
+
declare function AvatarBadge({ className, ...props }: React.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
|
|
11
|
+
declare function AvatarGroup({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
12
|
+
declare function AvatarGroupCount({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
13
|
+
|
|
14
|
+
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage };
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { Avatar as AvatarPrimitive } from "@base-ui/react";
|
|
5
|
+
import { cn } from "../../../utils/index.js";
|
|
6
|
+
function Avatar({
|
|
7
|
+
className,
|
|
8
|
+
size = "default",
|
|
9
|
+
...props
|
|
10
|
+
}) {
|
|
11
|
+
return /* @__PURE__ */ jsx(
|
|
12
|
+
AvatarPrimitive.Root,
|
|
13
|
+
{
|
|
14
|
+
"data-slot": "avatar",
|
|
15
|
+
"data-size": size,
|
|
16
|
+
className: cn(
|
|
17
|
+
"sg:relative sg:flex sg:h-10 sg:w-10 sg:shrink-0 sg:overflow-hidden sg:rounded-full",
|
|
18
|
+
className
|
|
19
|
+
),
|
|
20
|
+
...props
|
|
21
|
+
}
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
function AvatarImage({ className, ...props }) {
|
|
25
|
+
return /* @__PURE__ */ jsx(
|
|
26
|
+
AvatarPrimitive.Image,
|
|
27
|
+
{
|
|
28
|
+
"data-slot": "avatar-image",
|
|
29
|
+
className: cn("sg:aspect-square sg:h-full sg:w-full", className),
|
|
30
|
+
...props
|
|
31
|
+
}
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
function AvatarFallback({
|
|
35
|
+
className,
|
|
36
|
+
...props
|
|
37
|
+
}) {
|
|
38
|
+
return /* @__PURE__ */ jsx(
|
|
39
|
+
AvatarPrimitive.Fallback,
|
|
40
|
+
{
|
|
41
|
+
"data-slot": "avatar-fallback",
|
|
42
|
+
className: cn(
|
|
43
|
+
"sg:flex sg:h-full sg:w-full sg:items-center sg:justify-center sg:rounded-full sg:bg-muted",
|
|
44
|
+
className
|
|
45
|
+
),
|
|
46
|
+
...props
|
|
47
|
+
}
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
function AvatarBadge({ className, ...props }) {
|
|
51
|
+
return /* @__PURE__ */ jsx(
|
|
52
|
+
"span",
|
|
53
|
+
{
|
|
54
|
+
"data-slot": "avatar-badge",
|
|
55
|
+
className: cn(
|
|
56
|
+
"sg:absolute sg:right-0 sg:bottom-0 sg:z-10 sg:inline-flex sg:items-center sg:justify-center sg:rounded-full sg:bg-primary sg:text-primary-foreground sg:bg-blend-color sg:ring-2 sg:ring-background sg:select-none",
|
|
57
|
+
"sg:group-data-[size=sm]/avatar:size-2 sg:group-data-[size=sm]/avatar:[&>svg]:hidden",
|
|
58
|
+
"sg:group-data-[size=default]/avatar:size-2.5 sg:group-data-[size=default]/avatar:[&>svg]:size-2",
|
|
59
|
+
"sg:group-data-[size=lg]/avatar:size-3 sg:group-data-[size=lg]/avatar:[&>svg]:size-2",
|
|
60
|
+
className
|
|
61
|
+
),
|
|
62
|
+
...props
|
|
63
|
+
}
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
function AvatarGroup({ className, ...props }) {
|
|
67
|
+
return /* @__PURE__ */ jsx(
|
|
68
|
+
"div",
|
|
69
|
+
{
|
|
70
|
+
"data-slot": "avatar-group",
|
|
71
|
+
className: cn(
|
|
72
|
+
"sg:group/avatar-group sg:flex sg:-space-x-2 sg:*:data-[slot=avatar]:ring-2 sg:*:data-[slot=avatar]:ring-background",
|
|
73
|
+
className
|
|
74
|
+
),
|
|
75
|
+
...props
|
|
76
|
+
}
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
function AvatarGroupCount({
|
|
80
|
+
className,
|
|
81
|
+
...props
|
|
82
|
+
}) {
|
|
83
|
+
return /* @__PURE__ */ jsx(
|
|
84
|
+
"div",
|
|
85
|
+
{
|
|
86
|
+
"data-slot": "avatar-group-count",
|
|
87
|
+
className: cn(
|
|
88
|
+
"sg:relative sg:flex sg:size-8 sg:shrink-0 sg:items-center sg:justify-center sg:rounded-full sg:bg-muted sg:text-sm sg:text-muted-foreground sg:ring-2 sg:ring-background sg:group-has-data-[size=lg]/avatar-group:size-10 sg:group-has-data-[size=sm]/avatar-group:size-6 sg:[&>svg]:size-4 sg:group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 sg:group-has-data-[size=sm]/avatar-group:[&>svg]:size-3",
|
|
89
|
+
className
|
|
90
|
+
),
|
|
91
|
+
...props
|
|
92
|
+
}
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
export {
|
|
96
|
+
Avatar,
|
|
97
|
+
AvatarBadge,
|
|
98
|
+
AvatarFallback,
|
|
99
|
+
AvatarGroup,
|
|
100
|
+
AvatarGroupCount,
|
|
101
|
+
AvatarImage
|
|
102
|
+
};
|
|
103
|
+
//# sourceMappingURL=avatar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/avatar/avatar.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { Avatar as AvatarPrimitive } from \"@base-ui/react\";\nimport { cn } from \"../../../utils/index\";\n\nfunction Avatar({\n className,\n size = \"default\",\n ...props\n}: AvatarPrimitive.Root.Props & {\n size?: \"default\" | \"sm\" | \"lg\";\n}) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n data-size={size}\n className={cn(\n \"sg:relative sg:flex sg:h-10 sg:w-10 sg:shrink-0 sg:overflow-hidden sg:rounded-full\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarImage({ className, ...props }: AvatarPrimitive.Image.Props) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn(\"sg:aspect-square sg:h-full sg:w-full\", className)}\n {...props}\n />\n );\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: AvatarPrimitive.Fallback.Props) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n \"sg:flex sg:h-full sg:w-full sg:items-center sg:justify-center sg:rounded-full sg:bg-muted\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarBadge({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n \"sg:absolute sg:right-0 sg:bottom-0 sg:z-10 sg:inline-flex sg:items-center sg:justify-center sg:rounded-full sg:bg-primary sg:text-primary-foreground sg:bg-blend-color sg:ring-2 sg:ring-background sg:select-none\",\n \"sg:group-data-[size=sm]/avatar:size-2 sg:group-data-[size=sm]/avatar:[&>svg]:hidden\",\n \"sg:group-data-[size=default]/avatar:size-2.5 sg:group-data-[size=default]/avatar:[&>svg]:size-2\",\n \"sg:group-data-[size=lg]/avatar:size-3 sg:group-data-[size=lg]/avatar:[&>svg]:size-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n \"sg:group/avatar-group sg:flex sg:-space-x-2 sg:*:data-[slot=avatar]:ring-2 sg:*:data-[slot=avatar]:ring-background\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroupCount({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n \"sg:relative sg:flex sg:size-8 sg:shrink-0 sg:items-center sg:justify-center sg:rounded-full sg:bg-muted sg:text-sm sg:text-muted-foreground sg:ring-2 sg:ring-background sg:group-has-data-[size=lg]/avatar-group:size-10 sg:group-has-data-[size=sm]/avatar-group:size-6 sg:[&>svg]:size-4 sg:group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 sg:group-has-data-[size=sm]/avatar-group:[&>svg]:size-3\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Avatar,\n AvatarImage,\n AvatarFallback,\n AvatarGroup,\n AvatarGroupCount,\n AvatarBadge,\n};\n"],"mappings":";AAaI;AAZJ,YAAY,WAAW;AACvB,SAAS,UAAU,uBAAuB;AAC1C,SAAS,UAAU;AAEnB,SAAS,OAAO;AAAA,EACd;AAAA,EACA,OAAO;AAAA,EACP,GAAG;AACL,GAEG;AACD,SACE;AAAA,IAAC,gBAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,aAAW;AAAA,MACX,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,MAAM,GAAgC;AACzE,SACE;AAAA,IAAC,gBAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,wCAAwC,SAAS;AAAA,MAC9D,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,eAAe;AAAA,EACtB;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,SACE;AAAA,IAAC,gBAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,MAAM,GAAiC;AAC1E,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,MAAM,GAAgC;AACzE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA,GAAG;AACL,GAAgC;AAC9B,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
|
|
@@ -3,9 +3,17 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
|
|
|
3
3
|
import { useRender } from '@base-ui/react/use-render';
|
|
4
4
|
import { VariantProps } from 'class-variance-authority';
|
|
5
5
|
|
|
6
|
-
declare const badgeVariants:
|
|
7
|
-
variant
|
|
6
|
+
declare const badgeVariants: {
|
|
7
|
+
variant: {
|
|
8
|
+
default: string;
|
|
9
|
+
secondary: string;
|
|
10
|
+
destructive: string;
|
|
11
|
+
outline: string;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
declare const badgeVariantsProps: (props?: ({
|
|
15
|
+
variant?: "default" | "secondary" | "destructive" | "outline" | null | undefined;
|
|
8
16
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
|
-
declare function Badge({ className, variant, render, ...props }: useRender.ComponentProps<"span"> & VariantProps<typeof
|
|
17
|
+
declare function Badge({ className, variant, render, ...props }: useRender.ComponentProps<"span"> & VariantProps<typeof badgeVariantsProps>): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
|
|
10
18
|
|
|
11
|
-
export { Badge, badgeVariants };
|
|
19
|
+
export { Badge, badgeVariants, badgeVariantsProps };
|
|
@@ -1,20 +1,19 @@
|
|
|
1
|
-
import { cn } from "../../../utils";
|
|
1
|
+
import { cn } from "../../../utils/index.js";
|
|
2
2
|
import { mergeProps } from "@base-ui/react/merge-props";
|
|
3
3
|
import { useRender } from "@base-ui/react/use-render";
|
|
4
4
|
import { cva } from "class-variance-authority";
|
|
5
|
-
const badgeVariants =
|
|
6
|
-
|
|
5
|
+
const badgeVariants = {
|
|
6
|
+
variant: {
|
|
7
|
+
default: "sg:border-transparent sg:bg-primary sg:text-primary-foreground",
|
|
8
|
+
secondary: "sg:border-transparent sg:bg-secondary sg:text-secondary-foreground",
|
|
9
|
+
destructive: "sg:border-transparent sg:bg-destructive sg:text-destructive-foreground",
|
|
10
|
+
outline: ""
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
const badgeVariantsProps = cva(
|
|
14
|
+
"sg:inline-flex sg:items-center sg:rounded-full sg:border sg:px-2.5 sg:py-0.5 sg:text-xs sg:font-semibold sg:transition-colors sg:focus:outline-none sg:focus:ring-2 sg:focus:ring-ring sg:focus:ring-offset-2",
|
|
7
15
|
{
|
|
8
|
-
variants:
|
|
9
|
-
variant: {
|
|
10
|
-
default: "sg:bg-primary sg:text-primary-foreground sg:[a]:hover:bg-primary/80",
|
|
11
|
-
secondary: "sg:bg-secondary sg:text-secondary-foreground sg:[a]:hover:bg-secondary/80",
|
|
12
|
-
destructive: "sg:bg-destructive/10 sg:[a]:hover:bg-destructive/20 sg:focus-visible:ring-destructive/20 sg:dark:focus-visible:ring-destructive/40 sg:text-destructive sg:dark:bg-destructive/20",
|
|
13
|
-
outline: "sg:border-border sg:text-foreground sg:[a]:hover:bg-muted sg:[a]:hover:text-muted-foreground sg:bg-input/30",
|
|
14
|
-
ghost: "sg:hover:bg-muted sg:hover:text-muted-foreground sg:dark:hover:bg-muted/50",
|
|
15
|
-
link: "sg:text-primary sg:underline-offset-4 sg:hover:underline"
|
|
16
|
-
}
|
|
17
|
-
},
|
|
16
|
+
variants: badgeVariants,
|
|
18
17
|
defaultVariants: {
|
|
19
18
|
variant: "default"
|
|
20
19
|
}
|
|
@@ -30,7 +29,7 @@ function Badge({
|
|
|
30
29
|
defaultTagName: "span",
|
|
31
30
|
props: mergeProps(
|
|
32
31
|
{
|
|
33
|
-
className: cn(
|
|
32
|
+
className: cn(badgeVariantsProps({ className, variant }))
|
|
34
33
|
},
|
|
35
34
|
props
|
|
36
35
|
),
|
|
@@ -43,6 +42,7 @@ function Badge({
|
|
|
43
42
|
}
|
|
44
43
|
export {
|
|
45
44
|
Badge,
|
|
46
|
-
badgeVariants
|
|
45
|
+
badgeVariants,
|
|
46
|
+
badgeVariantsProps
|
|
47
47
|
};
|
|
48
48
|
//# sourceMappingURL=badge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/primitives/badge/badge.tsx"],"sourcesContent":["import { cn } from \"../../../utils\";\nimport { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nconst badgeVariants =
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/badge/badge.tsx"],"sourcesContent":["import { cn } from \"../../../utils/index\";\nimport { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nconst badgeVariants = {\n variant: {\n default: \"sg:border-transparent sg:bg-primary sg:text-primary-foreground\",\n secondary:\n \"sg:border-transparent sg:bg-secondary sg:text-secondary-foreground\",\n destructive:\n \"sg:border-transparent sg:bg-destructive sg:text-destructive-foreground\",\n outline: \"\",\n },\n};\n\nconst badgeVariantsProps = cva(\n \"sg:inline-flex sg:items-center sg:rounded-full sg:border sg:px-2.5 sg:py-0.5 sg:text-xs sg:font-semibold sg:transition-colors sg:focus:outline-none sg:focus:ring-2 sg:focus:ring-ring sg:focus:ring-offset-2\",\n {\n variants: badgeVariants,\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction Badge({\n className,\n variant = \"default\",\n render,\n ...props\n}: useRender.ComponentProps<\"span\"> & VariantProps<typeof badgeVariantsProps>) {\n return useRender({\n defaultTagName: \"span\",\n props: mergeProps<\"span\">(\n {\n className: cn(badgeVariantsProps({ className, variant })),\n },\n props,\n ),\n render,\n state: {\n slot: \"badge\",\n variant,\n },\n });\n}\n\nexport { Badge, badgeVariantsProps, badgeVariants };\n"],"mappings":"AAAA,SAAS,UAAU;AACnB,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAC1B,SAAS,WAA8B;AAEvC,MAAM,gBAAgB;AAAA,EACpB,SAAS;AAAA,IACP,SAAS;AAAA,IACT,WACE;AAAA,IACF,aACE;AAAA,IACF,SAAS;AAAA,EACX;AACF;AAEA,MAAM,qBAAqB;AAAA,EACzB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,IACV,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF;AAEA,SAAS,MAAM;AAAA,EACb;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA,GAAG;AACL,GAA+E;AAC7E,SAAO,UAAU;AAAA,IACf,gBAAgB;AAAA,IAChB,OAAO;AAAA,MACL;AAAA,QACE,WAAW,GAAG,mBAAmB,EAAE,WAAW,QAAQ,CAAC,CAAC;AAAA,MAC1D;AAAA,MACA;AAAA,IACF;AAAA,IACA;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,MACN;AAAA,IACF;AAAA,EACF,CAAC;AACH;","names":[]}
|