singularity-components 0.1.195 → 0.1.197
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/dist/components/blocks/badges/category-badge.d.ts +11 -0
- package/dist/components/blocks/badges/category-badge.js +34 -0
- package/dist/components/blocks/badges/category-badge.js.map +1 -0
- package/dist/components/blocks/cards/blogpost-card.d.ts +3 -1
- package/dist/components/blocks/cards/blogpost-card.js +10 -5
- package/dist/components/blocks/cards/blogpost-card.js.map +1 -1
- package/dist/components/blocks/directory/author-card.d.ts +10 -0
- package/dist/components/blocks/directory/author-card.js +50 -0
- package/dist/components/blocks/directory/author-card.js.map +1 -0
- package/dist/components/blocks/directory/category-card.d.ts +10 -0
- package/dist/components/blocks/directory/category-card.js +27 -0
- package/dist/components/blocks/directory/category-card.js.map +1 -0
- package/dist/components/blocks/extras/extras-hub-card.d.ts +16 -0
- package/dist/components/blocks/extras/extras-hub-card.js +22 -0
- package/dist/components/blocks/extras/extras-hub-card.js.map +1 -0
- package/dist/components/blocks/gallery/image-gallery.d.ts +14 -0
- package/dist/components/blocks/gallery/image-gallery.js +211 -0
- package/dist/components/blocks/gallery/image-gallery.js.map +1 -0
- package/dist/components/blocks/index.d.ts +11 -0
- package/dist/components/blocks/index.js +10 -0
- package/dist/components/blocks/index.js.map +1 -1
- package/dist/components/blocks/loading/loading-skeletons.d.ts +15 -0
- package/dist/components/blocks/loading/loading-skeletons.js +78 -0
- package/dist/components/blocks/loading/loading-skeletons.js.map +1 -0
- package/dist/components/blocks/login/login.js +76 -47
- package/dist/components/blocks/login/login.js.map +1 -1
- package/dist/components/blocks/marketing/page-hero.d.ts +13 -0
- package/dist/components/blocks/marketing/page-hero.js +37 -0
- package/dist/components/blocks/marketing/page-hero.js.map +1 -0
- package/dist/components/blocks/marketing/stats-grid.d.ts +16 -0
- package/dist/components/blocks/marketing/stats-grid.js +30 -0
- package/dist/components/blocks/marketing/stats-grid.js.map +1 -0
- package/dist/components/blocks/marketing/timeline.d.ts +17 -0
- package/dist/components/blocks/marketing/timeline.js +46 -0
- package/dist/components/blocks/marketing/timeline.js.map +1 -0
- package/dist/components/blocks/marketing/values-grid.d.ts +16 -0
- package/dist/components/blocks/marketing/values-grid.js +29 -0
- package/dist/components/blocks/marketing/values-grid.js.map +1 -0
- package/dist/components/blocks/post-list/post-list-with-filters.js +4 -4
- package/dist/components/blocks/post-list/post-list-with-filters.js.map +1 -1
- package/dist/components/index.d.ts +28 -1
- package/dist/components/pages/about/about-page.d.ts +5 -0
- package/dist/components/pages/about/about-page.js +161 -0
- package/dist/components/pages/about/about-page.js.map +1 -0
- package/dist/components/pages/admin/admin-page.js +160 -103
- package/dist/components/pages/admin/admin-page.js.map +1 -1
- package/dist/components/pages/author/author-page.d.ts +8 -0
- package/dist/components/pages/author/author-page.js +107 -0
- package/dist/components/pages/author/author-page.js.map +1 -0
- package/dist/components/pages/authors/authors-page.d.ts +5 -0
- package/dist/components/pages/authors/authors-page.js +25 -0
- package/dist/components/pages/authors/authors-page.js.map +1 -0
- package/dist/components/pages/blogpost/blogpost.d.ts +4 -1
- package/dist/components/pages/blogpost/blogpost.js +110 -62
- package/dist/components/pages/blogpost/blogpost.js.map +1 -1
- package/dist/components/pages/categories/categories-page.d.ts +5 -0
- package/dist/components/pages/categories/categories-page.js +33 -0
- package/dist/components/pages/categories/categories-page.js.map +1 -0
- package/dist/components/pages/category/category-page.js +4 -2
- package/dist/components/pages/category/category-page.js.map +1 -1
- package/dist/components/pages/chat/chat-page.js +4 -4
- package/dist/components/pages/chat/chat-page.js.map +1 -1
- package/dist/components/pages/contact/contact-page.d.ts +5 -0
- package/dist/components/pages/contact/contact-page.js +180 -0
- package/dist/components/pages/contact/contact-page.js.map +1 -0
- package/dist/components/pages/content-blocks/content-blocks-page.d.ts +5 -0
- package/dist/components/pages/content-blocks/content-blocks-page.js +87 -0
- package/dist/components/pages/content-blocks/content-blocks-page.js.map +1 -0
- package/dist/components/pages/extras/extras-hub-page.d.ts +10 -0
- package/dist/components/pages/extras/extras-hub-page.js +110 -0
- package/dist/components/pages/extras/extras-hub-page.js.map +1 -0
- package/dist/components/pages/index.d.ts +14 -0
- package/dist/components/pages/index.js +12 -0
- package/dist/components/pages/index.js.map +1 -1
- package/dist/components/pages/maintenance/maintenance-page.js +1 -1
- package/dist/components/pages/maintenance/maintenance-page.js.map +1 -1
- package/dist/components/pages/membership/membership-page.d.ts +5 -0
- package/dist/components/pages/membership/membership-page.js +131 -0
- package/dist/components/pages/membership/membership-page.js.map +1 -0
- package/dist/components/pages/mosaic/mosaic-page.d.ts +5 -0
- package/dist/components/pages/mosaic/mosaic-page.js +81 -0
- package/dist/components/pages/mosaic/mosaic-page.js.map +1 -0
- package/dist/components/pages/newsletter/newsletter-page.d.ts +5 -0
- package/dist/components/pages/newsletter/newsletter-page.js +165 -0
- package/dist/components/pages/newsletter/newsletter-page.js.map +1 -0
- package/dist/components/pages/not-found/not-found.js +2 -2
- package/dist/components/pages/not-found/not-found.js.map +1 -1
- package/dist/components/pages/privacy/privacy-page.js +2 -2
- package/dist/components/pages/privacy/privacy-page.js.map +1 -1
- package/dist/components/pages/resources/resources-page.d.ts +5 -0
- package/dist/components/pages/resources/resources-page.js +24 -0
- package/dist/components/pages/resources/resources-page.js.map +1 -0
- package/dist/components/pages/startpage/startpage.js +6 -4
- package/dist/components/pages/startpage/startpage.js.map +1 -1
- package/dist/components/pages/terms/terms-page.js +2 -2
- package/dist/components/pages/terms/terms-page.js.map +1 -1
- package/dist/components/primitives/accordion/accordion.js +14 -16
- package/dist/components/primitives/accordion/accordion.js.map +1 -1
- package/dist/components/primitives/badge/badge.js +1 -1
- package/dist/components/primitives/badge/badge.js.map +1 -1
- package/dist/components/primitives/buttons/button.d.ts +2 -2
- package/dist/components/primitives/buttons/icon-button.d.ts +1 -1
- package/dist/components/primitives/collapsible/collapsible.js +4 -1
- package/dist/components/primitives/collapsible/collapsible.js.map +1 -1
- package/dist/components/primitives/dropdown-menu/dropdown-menu.js +6 -1
- package/dist/components/primitives/dropdown-menu/dropdown-menu.js.map +1 -1
- package/dist/components/primitives/forms/checkbox.js +1 -1
- package/dist/components/primitives/forms/checkbox.js.map +1 -1
- package/dist/components/primitives/forms/field.d.ts +4 -2
- package/dist/components/primitives/forms/field.js +4 -2
- package/dist/components/primitives/forms/field.js.map +1 -1
- package/dist/components/primitives/forms/form-control.d.ts +28 -0
- package/dist/components/primitives/forms/form-control.js +40 -0
- package/dist/components/primitives/forms/form-control.js.map +1 -0
- package/dist/components/primitives/forms/form.d.ts +12 -0
- package/dist/components/primitives/forms/form.js +30 -0
- package/dist/components/primitives/forms/form.js.map +1 -0
- package/dist/components/primitives/forms/select.js +12 -12
- package/dist/components/primitives/forms/select.js.map +1 -1
- package/dist/components/primitives/icon/icon.d.ts +3 -2
- package/dist/components/primitives/icon/icon.js +2 -1
- package/dist/components/primitives/icon/icon.js.map +1 -1
- package/dist/components/primitives/index.d.ts +4 -0
- package/dist/components/primitives/index.js +3 -0
- package/dist/components/primitives/index.js.map +1 -1
- package/dist/components/primitives/layout/layout.d.ts +1 -1
- package/dist/components/primitives/link/link.d.ts +2 -2
- package/dist/components/primitives/sheet/sheet.js +1 -1
- package/dist/components/primitives/sheet/sheet.js.map +1 -1
- package/dist/components/primitives/stack/stack.d.ts +2 -2
- package/dist/components/primitives/text/internal/text-element.d.ts +8 -2
- package/dist/components/primitives/text/internal/text-element.js +3 -0
- package/dist/components/primitives/text/internal/text-element.js.map +1 -1
- package/dist/components/primitives/text/text-code.d.ts +1 -1
- package/dist/components/templates/form/form.d.ts +2 -2
- package/dist/components/templates/form/form.js +133 -87
- package/dist/components/templates/form/form.js.map +1 -1
- package/dist/components/templates/hero/hero.js +1 -0
- package/dist/components/templates/hero/hero.js.map +1 -1
- package/dist/components/templates/index.d.ts +1 -0
- package/dist/components/templates/index.js +1 -0
- package/dist/components/templates/index.js.map +1 -1
- package/dist/components/templates/loading-screen/loading-screen.d.ts +10 -0
- package/dist/components/templates/loading-screen/loading-screen.js +39 -0
- package/dist/components/templates/loading-screen/loading-screen.js.map +1 -0
- package/dist/css/variables.css +6 -3
- package/dist/css/variables.css.map +1 -1
- package/dist/data/posts.d.ts +5 -0
- package/dist/data/posts.js +41 -8
- package/dist/data/posts.js.map +1 -1
- package/dist/index.d.ts +28 -1
- package/dist/lib/forms/field-props.d.ts +60 -0
- package/dist/lib/forms/field-props.js +60 -0
- package/dist/lib/forms/field-props.js.map +1 -0
- package/dist/lib/forms/index.d.ts +11 -0
- package/dist/lib/forms/index.js +3 -0
- package/dist/lib/forms/index.js.map +1 -0
- package/dist/lib/forms/tanstack-field.d.ts +71 -0
- package/dist/lib/forms/tanstack-field.js +121 -0
- package/dist/lib/forms/tanstack-field.js.map +1 -0
- package/dist/lib/index.d.ts +11 -0
- package/dist/lib/index.js +1 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/main.css +393 -90
- package/dist/main.css.map +1 -1
- package/package.json +30 -23
|
@@ -1 +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\">
|
|
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\">Featured</Heading>\n <Text foreground=\"muted-foreground\" className=\"sg:mt-2\">\n Hand-picked stories we love.\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.filter((p) => p.featured).map((post) => (\n <BlogPostCard\n key={post.id}\n id={post.id}\n slug={post.slug}\n image={post.primaryImage}\n categories={post.categories}\n date={post.date}\n title={post.title}\n excerpt={post.excerpt}\n clickableCategories\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,sBAAQ;AAAA,YAC9B,oBAAC,QAAK,YAAW,oBAAmB,WAAU,WAAU,0CAExD;AAAA,aACF;AAAA,UACA,oBAAC,QAAK,IAAG,UAAS,SAAQ,cAAa,sBAEvC;AAAA,WACF;AAAA,QACA,oBAAC,SAAI,WAAU,gFACZ,gBAAM,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,SACpC;AAAA,UAAC;AAAA;AAAA,YAEC,IAAI,KAAK;AAAA,YACT,MAAM,KAAK;AAAA,YACX,OAAO,KAAK;AAAA,YACZ,YAAY,KAAK;AAAA,YACjB,MAAM,KAAK;AAAA,YACX,OAAO,KAAK;AAAA,YACZ,SAAS,KAAK;AAAA,YACd,qBAAmB;AAAA;AAAA,UARd,KAAK;AAAA,QASZ,CACD,GACH;AAAA,SACF,GACF;AAAA,OACF;AAAA,IACA,oBAAC,UAAU,QAAV,EACC,8BAAC,UAAO,GACV;AAAA,KACF;AAEJ;","names":[]}
|
|
@@ -44,9 +44,9 @@ const TermsPage = ({
|
|
|
44
44
|
return /* @__PURE__ */ jsxs(
|
|
45
45
|
motion.div,
|
|
46
46
|
{
|
|
47
|
-
initial: { opacity:
|
|
47
|
+
initial: { opacity: 1, y: 20 },
|
|
48
48
|
animate: { opacity: 1, y: 0 },
|
|
49
|
-
exit: { opacity:
|
|
49
|
+
exit: { opacity: 1, y: -20 },
|
|
50
50
|
transition: { duration: 0.3 },
|
|
51
51
|
className: "sg:w-full",
|
|
52
52
|
children: [
|
|
@@ -1 +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:
|
|
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: 1, y: 20 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 1, 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":[]}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { Accordion as AccordionPrimitive } from "@base-ui/react/accordion";
|
|
4
|
-
import { ChevronDownIcon, ChevronUpIcon } from "lucide-react";
|
|
5
4
|
import { cn } from "../../../utils/index.js";
|
|
5
|
+
import { Icon } from "../icon/icon.js";
|
|
6
6
|
function Accordion({ className, ...props }) {
|
|
7
7
|
return /* @__PURE__ */ jsx(
|
|
8
8
|
AccordionPrimitive.Root,
|
|
9
9
|
{
|
|
10
10
|
"data-slot": "accordion",
|
|
11
11
|
className: cn(
|
|
12
|
-
"sg:
|
|
12
|
+
"sg:flex sg:w-full sg:flex-col sg:rounded-lg sg:border sg:border-border sg:bg-card sg:text-card-foreground",
|
|
13
13
|
className
|
|
14
14
|
),
|
|
15
15
|
...props
|
|
@@ -21,7 +21,10 @@ function AccordionItem({ className, ...props }) {
|
|
|
21
21
|
AccordionPrimitive.Item,
|
|
22
22
|
{
|
|
23
23
|
"data-slot": "accordion-item",
|
|
24
|
-
className: cn(
|
|
24
|
+
className: cn(
|
|
25
|
+
"sg:not-last:border-b sg:not-last:border-border sg:data-open:bg-muted/40",
|
|
26
|
+
className
|
|
27
|
+
),
|
|
25
28
|
...props
|
|
26
29
|
}
|
|
27
30
|
);
|
|
@@ -31,29 +34,24 @@ function AccordionTrigger({
|
|
|
31
34
|
children,
|
|
32
35
|
...props
|
|
33
36
|
}) {
|
|
34
|
-
return /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "sg:flex", children: /* @__PURE__ */ jsxs(
|
|
37
|
+
return /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "sg:m-0 sg:flex sg:w-full", children: /* @__PURE__ */ jsxs(
|
|
35
38
|
AccordionPrimitive.Trigger,
|
|
36
39
|
{
|
|
37
40
|
"data-slot": "accordion-trigger",
|
|
38
41
|
className: cn(
|
|
39
|
-
"sg
|
|
42
|
+
"sg:group sg:relative sg:flex sg:w-full sg:flex-1 sg:items-center sg:justify-between sg:gap-4 sg:rounded-sm sg:p-4 sg:text-start sg:text-sm sg:font-medium sg:select-none sg:transition-colors sg:hover:not-data-disabled:bg-accent/50 sg:focus-visible:z-10 sg:focus-visible:outline-none sg:focus-visible:ring-2 sg:focus-visible:ring-inset sg:focus-visible:ring-ring sg:focus-visible:ring-offset-0 sg:disabled:pointer-events-none sg:disabled:opacity-50",
|
|
40
43
|
className
|
|
41
44
|
),
|
|
42
45
|
...props,
|
|
43
46
|
children: [
|
|
44
47
|
children,
|
|
45
48
|
/* @__PURE__ */ jsx(
|
|
46
|
-
|
|
47
|
-
{
|
|
48
|
-
"data-slot": "accordion-trigger-icon",
|
|
49
|
-
className: "sg:pointer-events-none sg:shrink-0 sg:group-aria-expanded/accordion-trigger:hidden"
|
|
50
|
-
}
|
|
51
|
-
),
|
|
52
|
-
/* @__PURE__ */ jsx(
|
|
53
|
-
ChevronUpIcon,
|
|
49
|
+
Icon,
|
|
54
50
|
{
|
|
51
|
+
icon: "ChevronDown",
|
|
52
|
+
size: "xs",
|
|
55
53
|
"data-slot": "accordion-trigger-icon",
|
|
56
|
-
className: "sg:pointer-events-none sg:
|
|
54
|
+
className: "sg:pointer-events-none sg:shrink-0 sg:text-muted-foreground sg:transition-transform sg:duration-200 sg:ease-out sg:group-data-panel-open:rotate-180"
|
|
57
55
|
}
|
|
58
56
|
)
|
|
59
57
|
]
|
|
@@ -69,13 +67,13 @@ function AccordionContent({
|
|
|
69
67
|
AccordionPrimitive.Panel,
|
|
70
68
|
{
|
|
71
69
|
"data-slot": "accordion-content",
|
|
72
|
-
className: "sg:
|
|
70
|
+
className: "sg:h-(--accordion-panel-height) sg:overflow-hidden sg:text-sm sg:transition-[height] sg:duration-150 sg:ease-out sg:data-ending-style:h-0 sg:data-starting-style:h-0",
|
|
73
71
|
...props,
|
|
74
72
|
children: /* @__PURE__ */ jsx(
|
|
75
73
|
"div",
|
|
76
74
|
{
|
|
77
75
|
className: cn(
|
|
78
|
-
"sg:
|
|
76
|
+
"sg:px-4 sg:pb-4 sg:text-muted-foreground sg:[&_a]:underline sg:[&_a]:underline-offset-3 sg:[&_a]:hover:text-foreground sg:[&_p:not(:last-child)]:mb-4",
|
|
79
77
|
className
|
|
80
78
|
),
|
|
81
79
|
children
|
|
@@ -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 {
|
|
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 { cn } from \"../../../utils/index\";\r\nimport { Icon } from \"../icon/icon\";\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:flex sg:w-full sg:flex-col sg:rounded-lg sg:border sg:border-border sg:bg-card sg:text-card-foreground\",\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(\r\n \"sg:not-last:border-b sg:not-last:border-border sg:data-open:bg-muted/40\",\r\n className,\r\n )}\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:m-0 sg:flex sg:w-full\">\r\n <AccordionPrimitive.Trigger\r\n data-slot=\"accordion-trigger\"\r\n className={cn(\r\n \"sg:group sg:relative sg:flex sg:w-full sg:flex-1 sg:items-center sg:justify-between sg:gap-4 sg:rounded-sm sg:p-4 sg:text-start sg:text-sm sg:font-medium sg:select-none sg:transition-colors sg:hover:not-data-disabled:bg-accent/50 sg:focus-visible:z-10 sg:focus-visible:outline-none sg:focus-visible:ring-2 sg:focus-visible:ring-inset sg:focus-visible:ring-ring sg:focus-visible:ring-offset-0 sg:disabled:pointer-events-none sg:disabled:opacity-50\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <Icon\r\n icon=\"ChevronDown\"\r\n size=\"xs\"\r\n data-slot=\"accordion-trigger-icon\"\r\n className=\"sg:pointer-events-none sg:shrink-0 sg:text-muted-foreground sg:transition-transform sg:duration-200 sg:ease-out sg:group-data-panel-open:rotate-180\"\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:h-(--accordion-panel-height) sg:overflow-hidden sg:text-sm sg:transition-[height] sg:duration-150 sg:ease-out sg:data-ending-style:h-0 sg:data-starting-style:h-0\"\r\n {...props}\r\n >\r\n <div\r\n className={cn(\r\n \"sg:px-4 sg:pb-4 sg:text-muted-foreground sg:[&_a]:underline sg:[&_a]:underline-offset-3 sg:[&_a]:hover:text-foreground 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,cA+BE,YA/BF;AANJ,SAAS,aAAa,0BAA0B;AAChD,SAAS,UAAU;AACnB,SAAS,YAAY;AAErB,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;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAqC;AACnC,SACE,oBAAC,mBAAmB,QAAnB,EAA0B,WAAU,4BACnC;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,MAAK;AAAA,YACL,MAAK;AAAA,YACL,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":[]}
|
|
@@ -11,7 +11,7 @@ const badgeVariants = {
|
|
|
11
11
|
}
|
|
12
12
|
};
|
|
13
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",
|
|
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-visible:outline-none sg:focus-visible:ring-2 sg:focus-visible:ring-ring sg:focus-visible:ring-offset-2",
|
|
15
15
|
{
|
|
16
16
|
variants: badgeVariants,
|
|
17
17
|
defaultVariants: {
|
|
@@ -1 +1 @@
|
|
|
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":[]}
|
|
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-visible:outline-none sg:focus-visible:ring-2 sg:focus-visible:ring-ring sg:focus-visible: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":[]}
|
|
@@ -21,8 +21,8 @@ declare const buttonVariants: {
|
|
|
21
21
|
};
|
|
22
22
|
};
|
|
23
23
|
declare const buttonVariantsProps: (props?: ({
|
|
24
|
-
variant?: "
|
|
25
|
-
size?: "
|
|
24
|
+
variant?: "default" | "secondary" | "destructive" | "outline" | "link" | "ghost" | null | undefined;
|
|
25
|
+
size?: "xs" | "sm" | "md" | "lg" | null | undefined;
|
|
26
26
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
27
27
|
type Props = Button$1.Props & VariantProps<typeof buttonVariantsProps> & {
|
|
28
28
|
loading?: boolean;
|
|
@@ -20,7 +20,7 @@ declare const buttonIconVariants: {
|
|
|
20
20
|
};
|
|
21
21
|
};
|
|
22
22
|
declare const iconButtonVariantsProps: (props?: ({
|
|
23
|
-
variant?: "
|
|
23
|
+
variant?: "default" | "secondary" | "destructive" | "outline" | "link" | "ghost" | null | undefined;
|
|
24
24
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
25
25
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
26
26
|
type Props = Button.Props & VariantProps<typeof iconButtonVariantsProps> & {
|
|
@@ -24,7 +24,10 @@ function CollapsibleTrigger({
|
|
|
24
24
|
CollapsiblePrimitive.CollapsibleTrigger,
|
|
25
25
|
{
|
|
26
26
|
"data-slot": "collapsible-trigger",
|
|
27
|
-
className: cn(
|
|
27
|
+
className: cn(
|
|
28
|
+
"sg:relative sg:flex sg:w-full sg:cursor-pointer sg:items-center sg:rounded-sm sg:outline-none sg:transition-colors sg:focus-visible:z-10 sg:focus-visible:ring-2 sg:focus-visible:ring-inset sg:focus-visible:ring-ring sg:focus-visible:ring-offset-0",
|
|
29
|
+
className
|
|
30
|
+
),
|
|
28
31
|
...props
|
|
29
32
|
}
|
|
30
33
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/primitives/collapsible/collapsible.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\nimport { cn } from \"singularity-components/utils\";\n\nfunction Collapsible({\n className,\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.Root>) {\n return (\n <CollapsiblePrimitive.Root\n data-slot=\"collapsible\"\n className={cn(\"\", className)}\n {...props}\n />\n );\n}\n\nfunction CollapsibleTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>) {\n return (\n <CollapsiblePrimitive.CollapsibleTrigger\n data-slot=\"collapsible-trigger\"\n className={cn(\"sg:flex sg:cursor-pointer sg:items-center\"
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/collapsible/collapsible.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\nimport { cn } from \"singularity-components/utils\";\n\nfunction Collapsible({\n className,\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.Root>) {\n return (\n <CollapsiblePrimitive.Root\n data-slot=\"collapsible\"\n className={cn(\"\", className)}\n {...props}\n />\n );\n}\n\nfunction CollapsibleTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>) {\n return (\n <CollapsiblePrimitive.CollapsibleTrigger\n data-slot=\"collapsible-trigger\"\n className={cn(\n \"sg:relative sg:flex sg:w-full sg:cursor-pointer sg:items-center sg:rounded-sm sg:outline-none sg:transition-colors sg:focus-visible:z-10 sg:focus-visible:ring-2 sg:focus-visible:ring-inset sg:focus-visible:ring-ring sg:focus-visible:ring-offset-0\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CollapsibleContent({\n className,\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>) {\n return (\n <CollapsiblePrimitive.CollapsibleContent\n data-slot=\"collapsible-content\"\n className={cn(\n \"sg:overflow-hidden sg:data-[state=open]:animate-accordion-down sg:data-[state=closed]:animate-accordion-up\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent };\n"],"mappings":";AAWI;AATJ,YAAY,WAAW;AACvB,YAAY,0BAA0B;AACtC,SAAS,UAAU;AAEnB,SAAS,YAAY;AAAA,EACnB;AAAA,EACA,GAAG;AACL,GAA2D;AACzD,SACE;AAAA,IAAC,qBAAqB;AAAA,IAArB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,IAAI,SAAS;AAAA,MAC1B,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,mBAAmB;AAAA,EAC1B;AAAA,EACA,GAAG;AACL,GAAyE;AACvE,SACE;AAAA,IAAC,qBAAqB;AAAA,IAArB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,mBAAmB;AAAA,EAC1B;AAAA,EACA,GAAG;AACL,GAAyE;AACvE,SACE;AAAA,IAAC,qBAAqB;AAAA,IAArB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
|
|
@@ -3,6 +3,7 @@ import * as React from "react";
|
|
|
3
3
|
import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
|
|
4
4
|
import { icons } from "lucide-react";
|
|
5
5
|
import { cn } from "../../../utils/index.js";
|
|
6
|
+
const menuItemFocusClasses = "sg:focus-visible:outline-none sg:focus-visible:ring-2 sg:focus-visible:ring-inset sg:focus-visible:ring-ring sg:focus-visible:ring-offset-0";
|
|
6
7
|
const DropdownMenu = DropdownMenuPrimitive.Root;
|
|
7
8
|
const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
|
|
8
9
|
const DropdownMenuGroup = DropdownMenuPrimitive.Group;
|
|
@@ -15,7 +16,8 @@ const DropdownMenuSubTrigger = React.forwardRef(({ className, inset, children, .
|
|
|
15
16
|
ref,
|
|
16
17
|
"data-slot": "dropdown-menu-sub-trigger",
|
|
17
18
|
className: cn(
|
|
18
|
-
"sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:px-2 sg:py-1.5 sg:text-sm sg:outline-none sg:data-[state=open]:bg-accent sg:focus:bg-accent",
|
|
19
|
+
"sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:px-2 sg:py-1.5 sg:text-sm sg:outline-none sg:data-[state=open]:bg-accent sg:focus:bg-accent sg:focus:text-accent-foreground",
|
|
20
|
+
menuItemFocusClasses,
|
|
19
21
|
inset && "sg:pl-8",
|
|
20
22
|
className
|
|
21
23
|
),
|
|
@@ -61,6 +63,7 @@ const DropdownMenuItem = React.forwardRef(({ className, inset, ...props }, ref)
|
|
|
61
63
|
"data-slot": "dropdown-menu-item",
|
|
62
64
|
className: cn(
|
|
63
65
|
"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:px-2 sg:py-1.5 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground",
|
|
66
|
+
menuItemFocusClasses,
|
|
64
67
|
inset && "sg:pl-8",
|
|
65
68
|
className
|
|
66
69
|
),
|
|
@@ -75,6 +78,7 @@ const DropdownMenuCheckboxItem = React.forwardRef(({ className, children, checke
|
|
|
75
78
|
"data-slot": "dropdown-menu-checkbox-item",
|
|
76
79
|
className: cn(
|
|
77
80
|
"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:py-1.5 sg:pl-8 sg:pr-2 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground",
|
|
81
|
+
menuItemFocusClasses,
|
|
78
82
|
className
|
|
79
83
|
),
|
|
80
84
|
checked,
|
|
@@ -93,6 +97,7 @@ const DropdownMenuRadioItem = React.forwardRef(({ className, children, ...props
|
|
|
93
97
|
"data-slot": "dropdown-menu-radio-item",
|
|
94
98
|
className: cn(
|
|
95
99
|
"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:py-1.5 sg:pl-8 sg:pr-2 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground",
|
|
100
|
+
menuItemFocusClasses,
|
|
96
101
|
className
|
|
97
102
|
),
|
|
98
103
|
...props,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/primitives/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\";\nimport { icons } from \"lucide-react\";\nimport { cn } from \"../../../utils/index\";\n\nconst DropdownMenu = DropdownMenuPrimitive.Root;\n\nconst DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;\n\nconst DropdownMenuGroup = DropdownMenuPrimitive.Group;\n\nconst DropdownMenuPortal = DropdownMenuPrimitive.Portal;\n\nconst DropdownMenuSub = DropdownMenuPrimitive.Sub;\n\nconst DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;\n\nconst DropdownMenuSubTrigger = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n }\n>(({ className, inset, children, ...props }, ref) => (\n <DropdownMenuPrimitive.SubTrigger\n ref={ref}\n data-slot=\"dropdown-menu-sub-trigger\"\n className={cn(\n \"sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:px-2 sg:py-1.5 sg:text-sm sg:outline-none sg:data-[state=open]:bg-accent sg:focus:bg-accent\",\n inset && \"sg:pl-8\",\n className,\n )}\n {...props}\n >\n {children}\n <icons.ChevronRight className=\"sg:ml-auto sg:h-4 sg:w-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n));\nDropdownMenuSubTrigger.displayName =\n DropdownMenuPrimitive.SubTrigger.displayName;\n\nconst DropdownMenuSubContent = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.SubContent\n ref={ref}\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n \"sg:z-50 sg:min-w-32 sg:overflow-hidden sg:rounded-md sg:border sg:bg-popover sg:p-1 sg:text-popover-foreground sg:shadow-lg sg:data-[state=open]:animate-in sg:data-[state=closed]:animate-out sg:data-[state=closed]:fade-out-0 sg:data-[state=open]:fade-in-0 sg:data-[state=closed]:zoom-out-95 sg:data-[state=open]:zoom-in-95 sg:data-[side=bottom]:slide-in-from-top-2 sg:data-[side=left]:slide-in-from-right-2 sg:data-[side=right]:slide-in-from-left-2 sg:data-[side=top]:slide-in-from-bottom-2\",\n className,\n )}\n {...props}\n />\n));\nDropdownMenuSubContent.displayName =\n DropdownMenuPrimitive.SubContent.displayName;\n\nconst DropdownMenuContent = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>\n>(({ className, sideOffset = 4, ...props }, ref) => (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n data-slot=\"dropdown-menu-content\"\n className={cn(\n \"sg:z-50 sg:min-w-32 sg:overflow-hidden sg:rounded-md sg:border sg:bg-popover sg:p-1 sg:text-popover-foreground sg:shadow-md sg:data-[state=open]:animate-in sg:data-[state=closed]:animate-out sg:data-[state=closed]:fade-out-0 sg:data-[state=open]:fade-in-0 sg:data-[state=closed]:zoom-out-95 sg:data-[state=open]:zoom-in-95 sg:data-[side=bottom]:slide-in-from-top-2 sg:data-[side=left]:slide-in-from-right-2 sg:data-[side=right]:slide-in-from-left-2 sg:data-[side=top]:slide-in-from-bottom-2\",\n className,\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n));\nDropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;\n\nconst DropdownMenuItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean;\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Item\n ref={ref}\n data-slot=\"dropdown-menu-item\"\n className={cn(\n \"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:px-2 sg:py-1.5 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground\",\n inset && \"sg:pl-8\",\n className,\n )}\n {...props}\n />\n));\nDropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;\n\nconst DropdownMenuCheckboxItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>\n>(({ className, children, checked, ...props }, ref) => (\n <DropdownMenuPrimitive.CheckboxItem\n ref={ref}\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n \"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:py-1.5 sg:pl-8 sg:pr-2 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"sg:absolute sg:left-2 sg:flex sg:h-3.5 sg:w-3.5 sg:items-center sg:justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <icons.Check className=\"sg:h-4 sg:w-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n));\nDropdownMenuCheckboxItem.displayName =\n DropdownMenuPrimitive.CheckboxItem.displayName;\n\nconst DropdownMenuRadioItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>\n>(({ className, children, ...props }, ref) => (\n <DropdownMenuPrimitive.RadioItem\n ref={ref}\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n \"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:py-1.5 sg:pl-8 sg:pr-2 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground\",\n className,\n )}\n {...props}\n >\n <span className=\"sg:absolute sg:left-2 sg:flex sg:h-3.5 sg:w-3.5 sg:items-center sg:justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <icons.Circle className=\"sg:h-2 sg:w-2 sg:fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n));\nDropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;\n\nconst DropdownMenuLabel = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean;\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Label\n ref={ref}\n data-slot=\"dropdown-menu-label\"\n className={cn(\n \"sg:px-2 sg:py-1.5 sg:text-sm sg:font-semibold\",\n inset && \"sg:pl-8\",\n className,\n )}\n {...props}\n />\n));\nDropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;\n\nconst DropdownMenuSeparator = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.Separator\n ref={ref}\n data-slot=\"dropdown-menu-separator\"\n className={cn(\"sg:-mx-1 sg:my-1 sg:h-px sg:bg-muted\", className)}\n {...props}\n />\n));\nDropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;\n\nconst DropdownMenuShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n \"sg:ml-auto sg:text-xs sg:tracking-widest sg:opacity-60\",\n className,\n )}\n {...props}\n />\n );\n};\nDropdownMenuShortcut.displayName = \"DropdownMenuShortcut\";\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuGroup,\n DropdownMenuPortal,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuRadioGroup,\n};\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\";\nimport { icons } from \"lucide-react\";\nimport { cn } from \"../../../utils/index\";\n\nconst menuItemFocusClasses =\n \"sg:focus-visible:outline-none sg:focus-visible:ring-2 sg:focus-visible:ring-inset sg:focus-visible:ring-ring sg:focus-visible:ring-offset-0\";\n\nconst DropdownMenu = DropdownMenuPrimitive.Root;\n\nconst DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;\n\nconst DropdownMenuGroup = DropdownMenuPrimitive.Group;\n\nconst DropdownMenuPortal = DropdownMenuPrimitive.Portal;\n\nconst DropdownMenuSub = DropdownMenuPrimitive.Sub;\n\nconst DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;\n\nconst DropdownMenuSubTrigger = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n }\n>(({ className, inset, children, ...props }, ref) => (\n <DropdownMenuPrimitive.SubTrigger\n ref={ref}\n data-slot=\"dropdown-menu-sub-trigger\"\n className={cn(\n \"sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:px-2 sg:py-1.5 sg:text-sm sg:outline-none sg:data-[state=open]:bg-accent sg:focus:bg-accent sg:focus:text-accent-foreground\",\n menuItemFocusClasses,\n inset && \"sg:pl-8\",\n className,\n )}\n {...props}\n >\n {children}\n <icons.ChevronRight className=\"sg:ml-auto sg:h-4 sg:w-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n));\nDropdownMenuSubTrigger.displayName =\n DropdownMenuPrimitive.SubTrigger.displayName;\n\nconst DropdownMenuSubContent = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.SubContent\n ref={ref}\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n \"sg:z-50 sg:min-w-32 sg:overflow-hidden sg:rounded-md sg:border sg:bg-popover sg:p-1 sg:text-popover-foreground sg:shadow-lg sg:data-[state=open]:animate-in sg:data-[state=closed]:animate-out sg:data-[state=closed]:fade-out-0 sg:data-[state=open]:fade-in-0 sg:data-[state=closed]:zoom-out-95 sg:data-[state=open]:zoom-in-95 sg:data-[side=bottom]:slide-in-from-top-2 sg:data-[side=left]:slide-in-from-right-2 sg:data-[side=right]:slide-in-from-left-2 sg:data-[side=top]:slide-in-from-bottom-2\",\n className,\n )}\n {...props}\n />\n));\nDropdownMenuSubContent.displayName =\n DropdownMenuPrimitive.SubContent.displayName;\n\nconst DropdownMenuContent = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>\n>(({ className, sideOffset = 4, ...props }, ref) => (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n data-slot=\"dropdown-menu-content\"\n className={cn(\n \"sg:z-50 sg:min-w-32 sg:overflow-hidden sg:rounded-md sg:border sg:bg-popover sg:p-1 sg:text-popover-foreground sg:shadow-md sg:data-[state=open]:animate-in sg:data-[state=closed]:animate-out sg:data-[state=closed]:fade-out-0 sg:data-[state=open]:fade-in-0 sg:data-[state=closed]:zoom-out-95 sg:data-[state=open]:zoom-in-95 sg:data-[side=bottom]:slide-in-from-top-2 sg:data-[side=left]:slide-in-from-right-2 sg:data-[side=right]:slide-in-from-left-2 sg:data-[side=top]:slide-in-from-bottom-2\",\n className,\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n));\nDropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;\n\nconst DropdownMenuItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean;\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Item\n ref={ref}\n data-slot=\"dropdown-menu-item\"\n className={cn(\n \"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:px-2 sg:py-1.5 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground\",\n menuItemFocusClasses,\n inset && \"sg:pl-8\",\n className,\n )}\n {...props}\n />\n));\nDropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;\n\nconst DropdownMenuCheckboxItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>\n>(({ className, children, checked, ...props }, ref) => (\n <DropdownMenuPrimitive.CheckboxItem\n ref={ref}\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n \"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:py-1.5 sg:pl-8 sg:pr-2 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground\",\n menuItemFocusClasses,\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"sg:absolute sg:left-2 sg:flex sg:h-3.5 sg:w-3.5 sg:items-center sg:justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <icons.Check className=\"sg:h-4 sg:w-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n));\nDropdownMenuCheckboxItem.displayName =\n DropdownMenuPrimitive.CheckboxItem.displayName;\n\nconst DropdownMenuRadioItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>\n>(({ className, children, ...props }, ref) => (\n <DropdownMenuPrimitive.RadioItem\n ref={ref}\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n \"sg:relative sg:flex sg:cursor-default sg:select-none sg:items-center sg:rounded-sm sg:py-1.5 sg:pl-8 sg:pr-2 sg:text-sm sg:outline-none sg:transition-colors sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground\",\n menuItemFocusClasses,\n className,\n )}\n {...props}\n >\n <span className=\"sg:absolute sg:left-2 sg:flex sg:h-3.5 sg:w-3.5 sg:items-center sg:justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <icons.Circle className=\"sg:h-2 sg:w-2 sg:fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n));\nDropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;\n\nconst DropdownMenuLabel = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean;\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Label\n ref={ref}\n data-slot=\"dropdown-menu-label\"\n className={cn(\n \"sg:px-2 sg:py-1.5 sg:text-sm sg:font-semibold\",\n inset && \"sg:pl-8\",\n className,\n )}\n {...props}\n />\n));\nDropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;\n\nconst DropdownMenuSeparator = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.Separator\n ref={ref}\n data-slot=\"dropdown-menu-separator\"\n className={cn(\"sg:-mx-1 sg:my-1 sg:h-px sg:bg-muted\", className)}\n {...props}\n />\n));\nDropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;\n\nconst DropdownMenuShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n \"sg:ml-auto sg:text-xs sg:tracking-widest sg:opacity-60\",\n className,\n )}\n {...props}\n />\n );\n};\nDropdownMenuShortcut.displayName = \"DropdownMenuShortcut\";\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuGroup,\n DropdownMenuPortal,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuRadioGroup,\n};\n"],"mappings":"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","names":[]}
|
|
@@ -9,7 +9,7 @@ function Checkbox({ className, ...props }) {
|
|
|
9
9
|
{
|
|
10
10
|
"data-slot": "checkbox",
|
|
11
11
|
className: cn(
|
|
12
|
-
"sg:peer sg:h-4 sg:w-4 sg:shrink-0 sg:rounded-sm sg:border sg:border-primary sg:ring-offset-background sg:data-
|
|
12
|
+
"sg:peer sg:h-4 sg:w-4 sg:shrink-0 sg:rounded-sm sg:border sg:border-primary sg:ring-offset-background sg:data-checked:bg-primary sg:data-checked:text-primary-foreground sg:focus-visible:outline-none sg:focus-visible:ring-2 sg:focus-visible:ring-ring sg:focus-visible:ring-offset-2 sg:disabled:cursor-not-allowed sg:disabled:opacity-50",
|
|
13
13
|
className
|
|
14
14
|
),
|
|
15
15
|
...props,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/primitives/forms/checkbox.tsx"],"sourcesContent":["\"use client\";\n\nimport { Checkbox as CheckboxPrimitive } from \"@base-ui/react\";\nimport { CheckIcon } from \"lucide-react\";\nimport { cn } from \"../../../utils/index\";\n\nfunction Checkbox({ className, ...props }: CheckboxPrimitive.Root.Props) {\n return (\n <CheckboxPrimitive.Root\n data-slot=\"checkbox\"\n className={cn(\n \"sg:peer sg:h-4 sg:w-4 sg:shrink-0 sg:rounded-sm sg:border sg:border-primary sg:ring-offset-background sg:data-
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/forms/checkbox.tsx"],"sourcesContent":["\"use client\";\n\nimport { Checkbox as CheckboxPrimitive } from \"@base-ui/react\";\nimport { CheckIcon } from \"lucide-react\";\nimport { cn } from \"../../../utils/index\";\n\nfunction Checkbox({ className, ...props }: CheckboxPrimitive.Root.Props) {\n return (\n <CheckboxPrimitive.Root\n data-slot=\"checkbox\"\n className={cn(\n \"sg:peer sg:h-4 sg:w-4 sg:shrink-0 sg:rounded-sm sg:border sg:border-primary sg:ring-offset-background sg:data-checked:bg-primary sg:data-checked:text-primary-foreground sg:focus-visible:outline-none sg:focus-visible:ring-2 sg:focus-visible:ring-ring sg:focus-visible:ring-offset-2 sg:disabled:cursor-not-allowed sg:disabled:opacity-50\",\n className,\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n data-slot=\"checkbox-indicator\"\n className=\"sg:flex sg:items-center sg:justify-center sg:text-current\"\n >\n <CheckIcon className=\"sg:h-4 sg:w-4\" />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n}\n\nexport { Checkbox };\n"],"mappings":";AAoBQ;AAlBR,SAAS,YAAY,yBAAyB;AAC9C,SAAS,iBAAiB;AAC1B,SAAS,UAAU;AAEnB,SAAS,SAAS,EAAE,WAAW,GAAG,MAAM,GAAiC;AACvE,SACE;AAAA,IAAC,kBAAkB;AAAA,IAAlB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,QAAC,kBAAkB;AAAA,QAAlB;AAAA,UACC,aAAU;AAAA,UACV,WAAU;AAAA,UAEV,8BAAC,aAAU,WAAU,iBAAgB;AAAA;AAAA,MACvC;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -9,9 +9,11 @@ declare function FieldLegend({ className, variant, ...props }: React.ComponentPr
|
|
|
9
9
|
}): React$1.JSX.Element;
|
|
10
10
|
declare function FieldGroup({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
11
11
|
declare const fieldVariants: (props?: ({
|
|
12
|
-
orientation?: "
|
|
12
|
+
orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
|
|
13
13
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
14
|
-
declare function Field({ className, orientation, ...props }: React.ComponentProps<"div"> & VariantProps<typeof fieldVariants>
|
|
14
|
+
declare function Field({ className, orientation, invalid, ...props }: React.ComponentProps<"div"> & VariantProps<typeof fieldVariants> & {
|
|
15
|
+
invalid?: boolean;
|
|
16
|
+
}): React$1.JSX.Element;
|
|
15
17
|
declare function FieldContent({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
16
18
|
declare function FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>): React$1.JSX.Element;
|
|
17
19
|
declare function FieldTitle({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
@@ -49,7 +49,7 @@ function FieldGroup({ className, ...props }) {
|
|
|
49
49
|
);
|
|
50
50
|
}
|
|
51
51
|
const fieldVariants = cva(
|
|
52
|
-
"sg:group/field sg:flex sg:w-full sg:gap-3 sg:data-[invalid=true]:text-
|
|
52
|
+
"sg:group/field sg:flex sg:w-full sg:gap-3 sg:data-[invalid=true]:text-error",
|
|
53
53
|
{
|
|
54
54
|
variants: {
|
|
55
55
|
orientation: {
|
|
@@ -66,6 +66,7 @@ const fieldVariants = cva(
|
|
|
66
66
|
function Field({
|
|
67
67
|
className,
|
|
68
68
|
orientation = "vertical",
|
|
69
|
+
invalid,
|
|
69
70
|
...props
|
|
70
71
|
}) {
|
|
71
72
|
return /* @__PURE__ */ jsx(
|
|
@@ -74,6 +75,7 @@ function Field({
|
|
|
74
75
|
role: "group",
|
|
75
76
|
"data-slot": "field",
|
|
76
77
|
"data-orientation": orientation,
|
|
78
|
+
"data-invalid": invalid ? true : void 0,
|
|
77
79
|
className: cn(fieldVariants({ orientation }), className),
|
|
78
80
|
...props
|
|
79
81
|
}
|
|
@@ -197,7 +199,7 @@ function FieldError({
|
|
|
197
199
|
{
|
|
198
200
|
role: "alert",
|
|
199
201
|
"data-slot": "field-error",
|
|
200
|
-
className: cn("sg:text-sm sg:font-normal sg:text-
|
|
202
|
+
className: cn("sg:text-sm sg:font-normal sg:text-error", className),
|
|
201
203
|
...props,
|
|
202
204
|
children: content
|
|
203
205
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/primitives/forms/field.tsx"],"sourcesContent":["\"use client\";\n\nimport { useMemo } from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils/index\";\nimport { Label, Separator } from \"../index\";\n\nfunction FieldSet({ className, ...props }: React.ComponentProps<\"fieldset\">) {\n return (\n <fieldset\n data-slot=\"field-set\"\n className={cn(\n \"sg:flex sg:flex-col sg:gap-6 sg:has-[>[data-slot=checkbox-group]]:gap-3 sg:has-[>[data-slot=radio-group]]:gap-3\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldLegend({\n className,\n variant = \"legend\",\n ...props\n}: React.ComponentProps<\"legend\"> & { variant?: \"legend\" | \"label\" }) {\n return (\n <legend\n data-slot=\"field-legend\"\n data-variant={variant}\n className={cn(\n \"sg:mb-3 sg:font-medium sg:data-[variant=label]:text-sm sg:data-[variant=legend]:text-base\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\n \"sg:group/field-group sg:@container/field-group sg:flex sg:w-full sg:flex-col sg:gap-7 sg:data-[slot=checkbox-group]:gap-3 sg:*:data-[slot=field-group]:gap-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nconst fieldVariants = cva(\n \"sg:group/field sg:flex sg:w-full sg:gap-3 sg:data-[invalid=true]:text-
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/forms/field.tsx"],"sourcesContent":["\"use client\";\n\nimport { useMemo } from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../../../utils/index\";\nimport { Label, Separator } from \"../index\";\n\nfunction FieldSet({ className, ...props }: React.ComponentProps<\"fieldset\">) {\n return (\n <fieldset\n data-slot=\"field-set\"\n className={cn(\n \"sg:flex sg:flex-col sg:gap-6 sg:has-[>[data-slot=checkbox-group]]:gap-3 sg:has-[>[data-slot=radio-group]]:gap-3\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldLegend({\n className,\n variant = \"legend\",\n ...props\n}: React.ComponentProps<\"legend\"> & { variant?: \"legend\" | \"label\" }) {\n return (\n <legend\n data-slot=\"field-legend\"\n data-variant={variant}\n className={cn(\n \"sg:mb-3 sg:font-medium sg:data-[variant=label]:text-sm sg:data-[variant=legend]:text-base\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\n \"sg:group/field-group sg:@container/field-group sg:flex sg:w-full sg:flex-col sg:gap-7 sg:data-[slot=checkbox-group]:gap-3 sg:*:data-[slot=field-group]:gap-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nconst fieldVariants = cva(\n \"sg:group/field sg:flex sg:w-full sg:gap-3 sg:data-[invalid=true]:text-error\",\n {\n variants: {\n orientation: {\n vertical: \"sg:flex-col sg:*:w-full sg:[&>.sr-only]:w-auto\",\n horizontal:\n \"sg:flex-row sg:items-center sg:has-[>[data-slot=field-content]]:items-start sg:*:data-[slot=field-label]:flex-auto sg:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px\",\n responsive:\n \"sg:flex-col sg:*:w-full sg:@md/field-group:flex-row sg:@md/field-group:items-center sg:@md/field-group:*:w-auto sg:@md/field-group:has-[>[data-slot=field-content]]:items-start sg:@md/field-group:*:data-[slot=field-label]:flex-auto sg:[&>.sr-only]:w-auto sg:@md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px\",\n },\n },\n defaultVariants: {\n orientation: \"vertical\",\n },\n },\n);\n\nfunction Field({\n className,\n orientation = \"vertical\",\n invalid,\n ...props\n}: React.ComponentProps<\"div\"> &\n VariantProps<typeof fieldVariants> & {\n invalid?: boolean;\n }) {\n return (\n <div\n role=\"group\"\n data-slot=\"field\"\n data-orientation={orientation}\n data-invalid={invalid ? true : undefined}\n className={cn(fieldVariants({ orientation }), className)}\n {...props}\n />\n );\n}\n\nfunction FieldContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"field-content\"\n className={cn(\n \"sg:group/field-content sg:flex sg:flex-1 sg:flex-col sg:gap-1 sg:leading-snug\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldLabel({\n className,\n ...props\n}: React.ComponentProps<typeof Label>) {\n return (\n <Label\n data-slot=\"field-label\"\n className={cn(\n \"sg:group/field-label sg:peer/field-label sg:flex sg:w-fit sg:gap-2 sg:leading-snug sg:group-data-[disabled=true]/field:opacity-50 sg:has-data-checked:border-primary/30 sg:has-data-checked:bg-primary/5 sg:has-[>[data-slot=field]]:rounded-xl sg:has-[>[data-slot=field]]:border sg:*:data-[slot=field]:p-4 sg:dark:has-data-checked:border-primary/20 sg:dark:has-data-checked:bg-primary/10\",\n \"sg:has-[>[data-slot=field]]:w-full sg:has-[>[data-slot=field]]:flex-col\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"field-label\"\n className={cn(\n \"sg:flex sg:w-fit sg:items-center sg:gap-2 sg:text-sm sg:leading-snug sg:font-medium sg:group-data-[disabled=true]/field:opacity-50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"field-description\"\n className={cn(\n \"sg:text-left sg:text-sm sg:leading-normal sg:font-normal sg:text-muted-foreground sg:group-has-data-horizontal/field:text-balance sg:[[data-variant=legend]+&]:-mt-1.5\",\n \"sg:last:mt-0 sg:nth-last-2:-mt-1\",\n \"sg:[&>a]:underline sg:[&>a]:underline-offset-4 sg:[&>a:hover]:text-primary\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction FieldSeparator({\n children,\n className,\n ...props\n}: React.ComponentProps<\"div\"> & {\n children?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"field-separator\"\n data-content={!!children}\n className={cn(\n \"sg:relative sg:-my-2 sg:h-5 sg:text-sm sg:group-data-[variant=outline]/field-group:-mb-2\",\n className,\n )}\n {...props}\n >\n <Separator className=\"sg:absolute sg:inset-0 sg:top-1/2\" />\n {children && (\n <span\n className=\"sg:relative sg:mx-auto sg:block sg:w-fit sg:bg-background sg:px-2 sg:text-muted-foreground\"\n data-slot=\"field-separator-content\"\n >\n {children}\n </span>\n )}\n </div>\n );\n}\n\nfunction FieldError({\n className,\n children,\n errors,\n ...props\n}: React.ComponentProps<\"div\"> & {\n errors?: Array<{ message?: string } | undefined>;\n}) {\n const content = useMemo(() => {\n if (children) {\n return children;\n }\n\n if (!errors?.length) {\n return null;\n }\n\n const uniqueErrors = [\n ...new Map(errors.map((error) => [error?.message, error])).values(),\n ];\n\n if (uniqueErrors?.length == 1) {\n return uniqueErrors[0]?.message;\n }\n\n return (\n <ul className=\"sg:ml-4 sg:flex sg:list-disc sg:flex-col sg:gap-1\">\n {uniqueErrors.map(\n (error, index) =>\n error?.message && <li key={index}>{error.message}</li>,\n )}\n </ul>\n );\n }, [children, errors]);\n\n if (!content) {\n return null;\n }\n\n return (\n <div\n role=\"alert\"\n data-slot=\"field-error\"\n className={cn(\"sg:text-sm sg:font-normal sg:text-error\", className)}\n {...props}\n >\n {content}\n </div>\n );\n}\n\nexport {\n Field,\n FieldLabel,\n FieldDescription,\n FieldError,\n FieldGroup,\n FieldLegend,\n FieldSeparator,\n FieldSet,\n FieldContent,\n FieldTitle,\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as React$1 from 'react';
|
|
2
|
+
import { FieldErrorLike } from '../../../lib/forms/field-props.js';
|
|
3
|
+
import { Field } from './field.js';
|
|
4
|
+
import 'class-variance-authority/types';
|
|
5
|
+
import 'class-variance-authority';
|
|
6
|
+
import '../label/label.js';
|
|
7
|
+
|
|
8
|
+
type FormControlProps = {
|
|
9
|
+
/**
|
|
10
|
+
* Stable id shared by the label and control. Generated when omitted.
|
|
11
|
+
*/
|
|
12
|
+
id?: string;
|
|
13
|
+
label?: React.ReactNode;
|
|
14
|
+
description?: React.ReactNode;
|
|
15
|
+
errors?: FieldErrorLike[];
|
|
16
|
+
invalid?: boolean;
|
|
17
|
+
orientation?: React.ComponentProps<typeof Field>["orientation"];
|
|
18
|
+
labelClassName?: string;
|
|
19
|
+
className?: string;
|
|
20
|
+
children: React.ReactNode | ((controlId: string) => React.ReactNode);
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Composes {@link Field}, label, description, and error messaging for a single control.
|
|
24
|
+
* Works with manual state or as the layout shell inside TanStack Form fields.
|
|
25
|
+
*/
|
|
26
|
+
declare function FormControl({ id, label, description, errors, invalid, orientation, labelClassName, className, children, }: FormControlProps): React$1.JSX.Element;
|
|
27
|
+
|
|
28
|
+
export { FormControl };
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useId } from "react";
|
|
4
|
+
import {
|
|
5
|
+
normalizeFieldErrors
|
|
6
|
+
} from "../../../lib/forms/field-props.js";
|
|
7
|
+
import {
|
|
8
|
+
Field,
|
|
9
|
+
FieldContent,
|
|
10
|
+
FieldDescription,
|
|
11
|
+
FieldError,
|
|
12
|
+
FieldLabel
|
|
13
|
+
} from "./field.js";
|
|
14
|
+
function FormControl({
|
|
15
|
+
id,
|
|
16
|
+
label,
|
|
17
|
+
description,
|
|
18
|
+
errors,
|
|
19
|
+
invalid,
|
|
20
|
+
orientation,
|
|
21
|
+
labelClassName,
|
|
22
|
+
className,
|
|
23
|
+
children
|
|
24
|
+
}) {
|
|
25
|
+
const generatedId = useId();
|
|
26
|
+
const controlId = id ?? generatedId;
|
|
27
|
+
const resolvedChildren = typeof children === "function" ? children(controlId) : children;
|
|
28
|
+
return /* @__PURE__ */ jsxs(Field, { orientation, invalid, className, children: [
|
|
29
|
+
label && /* @__PURE__ */ jsx(FieldLabel, { htmlFor: controlId, className: labelClassName, children: label }),
|
|
30
|
+
/* @__PURE__ */ jsxs(FieldContent, { children: [
|
|
31
|
+
resolvedChildren,
|
|
32
|
+
description && /* @__PURE__ */ jsx(FieldDescription, { children: description }),
|
|
33
|
+
/* @__PURE__ */ jsx(FieldError, { errors: normalizeFieldErrors(errors) })
|
|
34
|
+
] })
|
|
35
|
+
] });
|
|
36
|
+
}
|
|
37
|
+
export {
|
|
38
|
+
FormControl
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=form-control.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/forms/form-control.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { useId } from \"react\";\r\nimport {\r\n normalizeFieldErrors,\r\n type FieldErrorLike,\r\n} from \"../../../lib/forms/field-props\";\r\nimport {\r\n Field,\r\n FieldContent,\r\n FieldDescription,\r\n FieldError,\r\n FieldLabel,\r\n} from \"./field\";\r\n\r\ntype FormControlProps = {\r\n /**\r\n * Stable id shared by the label and control. Generated when omitted.\r\n */\r\n id?: string;\r\n label?: React.ReactNode;\r\n description?: React.ReactNode;\r\n errors?: FieldErrorLike[];\r\n invalid?: boolean;\r\n orientation?: React.ComponentProps<typeof Field>[\"orientation\"];\r\n labelClassName?: string;\r\n className?: string;\r\n children: React.ReactNode | ((controlId: string) => React.ReactNode);\r\n};\r\n\r\n/**\r\n * Composes {@link Field}, label, description, and error messaging for a single control.\r\n * Works with manual state or as the layout shell inside TanStack Form fields.\r\n */\r\nfunction FormControl({\r\n id,\r\n label,\r\n description,\r\n errors,\r\n invalid,\r\n orientation,\r\n labelClassName,\r\n className,\r\n children,\r\n}: FormControlProps) {\r\n const generatedId = useId();\r\n const controlId = id ?? generatedId;\r\n const resolvedChildren =\r\n typeof children === \"function\" ? children(controlId) : children;\r\n\r\n return (\r\n <Field orientation={orientation} invalid={invalid} className={className}>\r\n {label && (\r\n <FieldLabel htmlFor={controlId} className={labelClassName}>\r\n {label}\r\n </FieldLabel>\r\n )}\r\n <FieldContent>\r\n {resolvedChildren}\r\n {description && <FieldDescription>{description}</FieldDescription>}\r\n <FieldError errors={normalizeFieldErrors(errors)} />\r\n </FieldContent>\r\n </Field>\r\n );\r\n}\r\n\r\nexport { FormControl };\r\n"],"mappings":";AAqDQ,cAIF,YAJE;AAnDR,SAAS,aAAa;AACtB;AAAA,EACE;AAAA,OAEK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAqBP,SAAS,YAAY;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAqB;AACnB,QAAM,cAAc,MAAM;AAC1B,QAAM,YAAY,MAAM;AACxB,QAAM,mBACJ,OAAO,aAAa,aAAa,SAAS,SAAS,IAAI;AAEzD,SACE,qBAAC,SAAM,aAA0B,SAAkB,WAChD;AAAA,aACC,oBAAC,cAAW,SAAS,WAAW,WAAW,gBACxC,iBACH;AAAA,IAEF,qBAAC,gBACE;AAAA;AAAA,MACA,eAAe,oBAAC,oBAAkB,uBAAY;AAAA,MAC/C,oBAAC,cAAW,QAAQ,qBAAqB,MAAM,GAAG;AAAA,OACpD;AAAA,KACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React$1 from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Styled native form wrapper with default vertical spacing. Override via `className`.
|
|
5
|
+
*/
|
|
6
|
+
declare function Form({ className, ...props }: React.ComponentProps<"form">): React$1.JSX.Element;
|
|
7
|
+
/**
|
|
8
|
+
* Horizontal row for primary and secondary form actions.
|
|
9
|
+
*/
|
|
10
|
+
declare function FormActions({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
11
|
+
|
|
12
|
+
export { Form, FormActions };
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from "../../../utils/index.js";
|
|
3
|
+
function Form({ className, ...props }) {
|
|
4
|
+
return /* @__PURE__ */ jsx(
|
|
5
|
+
"form",
|
|
6
|
+
{
|
|
7
|
+
"data-slot": "form",
|
|
8
|
+
className: cn("sg:flex sg:w-full sg:flex-col sg:gap-6", className),
|
|
9
|
+
...props
|
|
10
|
+
}
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
function FormActions({ className, ...props }) {
|
|
14
|
+
return /* @__PURE__ */ jsx(
|
|
15
|
+
"div",
|
|
16
|
+
{
|
|
17
|
+
"data-slot": "form-actions",
|
|
18
|
+
className: cn(
|
|
19
|
+
"sg:flex sg:flex-wrap sg:items-center sg:gap-2",
|
|
20
|
+
className
|
|
21
|
+
),
|
|
22
|
+
...props
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
export {
|
|
27
|
+
Form,
|
|
28
|
+
FormActions
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/primitives/forms/form.tsx"],"sourcesContent":["import { cn } from \"../../../utils/index\";\r\n\r\n/**\r\n * Styled native form wrapper with default vertical spacing. Override via `className`.\r\n */\r\nfunction Form({ className, ...props }: React.ComponentProps<\"form\">) {\r\n return (\r\n <form\r\n data-slot=\"form\"\r\n className={cn(\"sg:flex sg:w-full sg:flex-col sg:gap-6\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\n/**\r\n * Horizontal row for primary and secondary form actions.\r\n */\r\nfunction FormActions({ className, ...props }: React.ComponentProps<\"div\">) {\r\n return (\r\n <div\r\n data-slot=\"form-actions\"\r\n className={cn(\r\n \"sg:flex sg:flex-wrap sg:items-center sg:gap-2\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport { Form, FormActions };\r\n"],"mappings":"AAOI;AAPJ,SAAS,UAAU;AAKnB,SAAS,KAAK,EAAE,WAAW,GAAG,MAAM,GAAiC;AACnE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,0CAA0C,SAAS;AAAA,MAChE,GAAG;AAAA;AAAA,EACN;AAEJ;AAKA,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;","names":[]}
|