singularity-components 0.1.195 → 0.1.196

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/dist/components/blocks/badges/category-badge.d.ts +11 -0
  2. package/dist/components/blocks/badges/category-badge.js +34 -0
  3. package/dist/components/blocks/badges/category-badge.js.map +1 -0
  4. package/dist/components/blocks/cards/blogpost-card.d.ts +3 -1
  5. package/dist/components/blocks/cards/blogpost-card.js +9 -4
  6. package/dist/components/blocks/cards/blogpost-card.js.map +1 -1
  7. package/dist/components/blocks/directory/author-card.d.ts +10 -0
  8. package/dist/components/blocks/directory/author-card.js +50 -0
  9. package/dist/components/blocks/directory/author-card.js.map +1 -0
  10. package/dist/components/blocks/directory/category-card.d.ts +10 -0
  11. package/dist/components/blocks/directory/category-card.js +26 -0
  12. package/dist/components/blocks/directory/category-card.js.map +1 -0
  13. package/dist/components/blocks/extras/extras-hub-card.d.ts +16 -0
  14. package/dist/components/blocks/extras/extras-hub-card.js +21 -0
  15. package/dist/components/blocks/extras/extras-hub-card.js.map +1 -0
  16. package/dist/components/blocks/gallery/image-gallery.d.ts +14 -0
  17. package/dist/components/blocks/gallery/image-gallery.js +211 -0
  18. package/dist/components/blocks/gallery/image-gallery.js.map +1 -0
  19. package/dist/components/blocks/index.d.ts +11 -0
  20. package/dist/components/blocks/index.js +10 -0
  21. package/dist/components/blocks/index.js.map +1 -1
  22. package/dist/components/blocks/loading/loading-skeletons.d.ts +15 -0
  23. package/dist/components/blocks/loading/loading-skeletons.js +78 -0
  24. package/dist/components/blocks/loading/loading-skeletons.js.map +1 -0
  25. package/dist/components/blocks/marketing/page-hero.d.ts +13 -0
  26. package/dist/components/blocks/marketing/page-hero.js +37 -0
  27. package/dist/components/blocks/marketing/page-hero.js.map +1 -0
  28. package/dist/components/blocks/marketing/stats-grid.d.ts +16 -0
  29. package/dist/components/blocks/marketing/stats-grid.js +30 -0
  30. package/dist/components/blocks/marketing/stats-grid.js.map +1 -0
  31. package/dist/components/blocks/marketing/timeline.d.ts +17 -0
  32. package/dist/components/blocks/marketing/timeline.js +45 -0
  33. package/dist/components/blocks/marketing/timeline.js.map +1 -0
  34. package/dist/components/blocks/marketing/values-grid.d.ts +16 -0
  35. package/dist/components/blocks/marketing/values-grid.js +29 -0
  36. package/dist/components/blocks/marketing/values-grid.js.map +1 -0
  37. package/dist/components/index.d.ts +28 -1
  38. package/dist/components/pages/about/about-page.d.ts +5 -0
  39. package/dist/components/pages/about/about-page.js +161 -0
  40. package/dist/components/pages/about/about-page.js.map +1 -0
  41. package/dist/components/pages/admin/admin-page.js +4 -1
  42. package/dist/components/pages/admin/admin-page.js.map +1 -1
  43. package/dist/components/pages/author/author-page.d.ts +8 -0
  44. package/dist/components/pages/author/author-page.js +107 -0
  45. package/dist/components/pages/author/author-page.js.map +1 -0
  46. package/dist/components/pages/authors/authors-page.d.ts +5 -0
  47. package/dist/components/pages/authors/authors-page.js +25 -0
  48. package/dist/components/pages/authors/authors-page.js.map +1 -0
  49. package/dist/components/pages/blogpost/blogpost.d.ts +4 -1
  50. package/dist/components/pages/blogpost/blogpost.js +38 -18
  51. package/dist/components/pages/blogpost/blogpost.js.map +1 -1
  52. package/dist/components/pages/categories/categories-page.d.ts +5 -0
  53. package/dist/components/pages/categories/categories-page.js +33 -0
  54. package/dist/components/pages/categories/categories-page.js.map +1 -0
  55. package/dist/components/pages/category/category-page.js +3 -1
  56. package/dist/components/pages/category/category-page.js.map +1 -1
  57. package/dist/components/pages/contact/contact-page.d.ts +5 -0
  58. package/dist/components/pages/contact/contact-page.js +173 -0
  59. package/dist/components/pages/contact/contact-page.js.map +1 -0
  60. package/dist/components/pages/content-blocks/content-blocks-page.d.ts +5 -0
  61. package/dist/components/pages/content-blocks/content-blocks-page.js +86 -0
  62. package/dist/components/pages/content-blocks/content-blocks-page.js.map +1 -0
  63. package/dist/components/pages/extras/extras-hub-page.d.ts +10 -0
  64. package/dist/components/pages/extras/extras-hub-page.js +110 -0
  65. package/dist/components/pages/extras/extras-hub-page.js.map +1 -0
  66. package/dist/components/pages/index.d.ts +14 -0
  67. package/dist/components/pages/index.js +12 -0
  68. package/dist/components/pages/index.js.map +1 -1
  69. package/dist/components/pages/membership/membership-page.d.ts +5 -0
  70. package/dist/components/pages/membership/membership-page.js +131 -0
  71. package/dist/components/pages/membership/membership-page.js.map +1 -0
  72. package/dist/components/pages/mosaic/mosaic-page.d.ts +5 -0
  73. package/dist/components/pages/mosaic/mosaic-page.js +81 -0
  74. package/dist/components/pages/mosaic/mosaic-page.js.map +1 -0
  75. package/dist/components/pages/newsletter/newsletter-page.d.ts +5 -0
  76. package/dist/components/pages/newsletter/newsletter-page.js +148 -0
  77. package/dist/components/pages/newsletter/newsletter-page.js.map +1 -0
  78. package/dist/components/pages/resources/resources-page.d.ts +5 -0
  79. package/dist/components/pages/resources/resources-page.js +24 -0
  80. package/dist/components/pages/resources/resources-page.js.map +1 -0
  81. package/dist/components/pages/startpage/startpage.js +6 -4
  82. package/dist/components/pages/startpage/startpage.js.map +1 -1
  83. package/dist/components/primitives/accordion/accordion.js +14 -16
  84. package/dist/components/primitives/accordion/accordion.js.map +1 -1
  85. package/dist/components/primitives/badge/badge.js +1 -1
  86. package/dist/components/primitives/badge/badge.js.map +1 -1
  87. package/dist/components/primitives/buttons/button.d.ts +2 -2
  88. package/dist/components/primitives/buttons/icon-button.d.ts +1 -1
  89. package/dist/components/primitives/collapsible/collapsible.js +4 -1
  90. package/dist/components/primitives/collapsible/collapsible.js.map +1 -1
  91. package/dist/components/primitives/dropdown-menu/dropdown-menu.js +6 -1
  92. package/dist/components/primitives/dropdown-menu/dropdown-menu.js.map +1 -1
  93. package/dist/components/primitives/forms/checkbox.js +1 -1
  94. package/dist/components/primitives/forms/checkbox.js.map +1 -1
  95. package/dist/components/primitives/forms/field.d.ts +4 -2
  96. package/dist/components/primitives/forms/field.js +4 -2
  97. package/dist/components/primitives/forms/field.js.map +1 -1
  98. package/dist/components/primitives/forms/form-control.d.ts +28 -0
  99. package/dist/components/primitives/forms/form-control.js +40 -0
  100. package/dist/components/primitives/forms/form-control.js.map +1 -0
  101. package/dist/components/primitives/forms/form.d.ts +12 -0
  102. package/dist/components/primitives/forms/form.js +30 -0
  103. package/dist/components/primitives/forms/form.js.map +1 -0
  104. package/dist/components/primitives/forms/select.js +12 -12
  105. package/dist/components/primitives/forms/select.js.map +1 -1
  106. package/dist/components/primitives/icon/icon.d.ts +3 -2
  107. package/dist/components/primitives/icon/icon.js +2 -1
  108. package/dist/components/primitives/icon/icon.js.map +1 -1
  109. package/dist/components/primitives/index.d.ts +4 -0
  110. package/dist/components/primitives/index.js +3 -0
  111. package/dist/components/primitives/index.js.map +1 -1
  112. package/dist/components/primitives/layout/layout.d.ts +1 -1
  113. package/dist/components/primitives/link/link.d.ts +2 -2
  114. package/dist/components/primitives/sheet/sheet.js +1 -1
  115. package/dist/components/primitives/sheet/sheet.js.map +1 -1
  116. package/dist/components/primitives/stack/stack.d.ts +2 -2
  117. package/dist/components/primitives/text/internal/text-element.d.ts +8 -2
  118. package/dist/components/primitives/text/internal/text-element.js +3 -0
  119. package/dist/components/primitives/text/internal/text-element.js.map +1 -1
  120. package/dist/components/primitives/text/text-code.d.ts +1 -1
  121. package/dist/components/templates/index.d.ts +1 -0
  122. package/dist/components/templates/index.js +1 -0
  123. package/dist/components/templates/index.js.map +1 -1
  124. package/dist/components/templates/loading-screen/loading-screen.d.ts +10 -0
  125. package/dist/components/templates/loading-screen/loading-screen.js +39 -0
  126. package/dist/components/templates/loading-screen/loading-screen.js.map +1 -0
  127. package/dist/css/variables.css +2 -0
  128. package/dist/css/variables.css.map +1 -1
  129. package/dist/data/posts.d.ts +5 -0
  130. package/dist/data/posts.js +37 -4
  131. package/dist/data/posts.js.map +1 -1
  132. package/dist/index.d.ts +28 -1
  133. package/dist/lib/forms/field-props.d.ts +60 -0
  134. package/dist/lib/forms/field-props.js +60 -0
  135. package/dist/lib/forms/field-props.js.map +1 -0
  136. package/dist/lib/forms/index.d.ts +11 -0
  137. package/dist/lib/forms/index.js +3 -0
  138. package/dist/lib/forms/index.js.map +1 -0
  139. package/dist/lib/forms/tanstack-field.d.ts +56 -0
  140. package/dist/lib/forms/tanstack-field.js +114 -0
  141. package/dist/lib/forms/tanstack-field.js.map +1 -0
  142. package/dist/lib/index.d.ts +11 -0
  143. package/dist/lib/index.js +1 -0
  144. package/dist/lib/index.js.map +1 -1
  145. package/dist/main.css +396 -87
  146. package/dist/main.css.map +1 -1
  147. package/package.json +14 -2
@@ -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/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
+ {"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?: "link" | "default" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined;
25
- size?: "sm" | "xs" | "md" | "lg" | null | undefined;
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?: "link" | "default" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined;
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("sg:flex sg:cursor-pointer sg:items-center", className),
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\", className)}\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,GAAG,6CAA6C,SAAS;AAAA,MACnE,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":[]}
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-[state=checked]:bg-primary sg:data-[state=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",
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-[state=checked]:bg-primary sg:data-[state=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":[]}
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?: "vertical" | "horizontal" | "responsive" | null | undefined;
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>): React$1.JSX.Element;
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-destructive",
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-destructive", className),
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-destructive\",\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 ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof fieldVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"field\"\n data-orientation={orientation}\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-destructive\", 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":";AASI,cA8IA,YA9IA;AAPJ,SAAS,eAAe;AACxB,SAAS,WAA8B;AACvC,SAAS,UAAU;AACnB,SAAS,OAAO,iBAAiB;AAEjC,SAAS,SAAS,EAAE,WAAW,GAAG,MAAM,GAAqC;AAC3E,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;AAAA,EACnB;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,GAAsE;AACpE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,gBAAc;AAAA,MACd,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,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,MAAM,gBAAgB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,aAAa;AAAA,QACX,UAAU;AAAA,QACV,YACE;AAAA,QACF,YACE;AAAA,MACJ;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,aAAa;AAAA,IACf;AAAA,EACF;AACF;AAEA,SAAS,MAAM;AAAA,EACb;AAAA,EACA,cAAc;AAAA,EACd,GAAG;AACL,GAAqE;AACnE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,aAAU;AAAA,MACV,oBAAkB;AAAA,MAClB,WAAW,GAAG,cAAc,EAAE,YAAY,CAAC,GAAG,SAAS;AAAA,MACtD,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,aAAa,EAAE,WAAW,GAAG,MAAM,GAAgC;AAC1E,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,WAAW;AAAA,EAClB;AAAA,EACA,GAAG;AACL,GAAuC;AACrC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACC,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,EAAE,WAAW,GAAG,MAAM,GAA8B;AAC5E,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,eAAe;AAAA,EACtB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAEG;AACD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,gBAAc,CAAC,CAAC;AAAA,MAChB,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,4BAAC,aAAU,WAAU,qCAAoC;AAAA,QACxD,YACC;AAAA,UAAC;AAAA;AAAA,YACC,WAAU;AAAA,YACV,aAAU;AAAA,YAET;AAAA;AAAA,QACH;AAAA;AAAA;AAAA,EAEJ;AAEJ;AAEA,SAAS,WAAW;AAAA,EAClB;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAEG;AACD,QAAM,UAAU,QAAQ,MAAM;AAC5B,QAAI,UAAU;AACZ,aAAO;AAAA,IACT;AAEA,QAAI,CAAC,QAAQ,QAAQ;AACnB,aAAO;AAAA,IACT;AAEA,UAAM,eAAe;AAAA,MACnB,GAAG,IAAI,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,SAAS,KAAK,CAAC,CAAC,EAAE,OAAO;AAAA,IACpE;AAEA,QAAI,cAAc,UAAU,GAAG;AAC7B,aAAO,aAAa,CAAC,GAAG;AAAA,IAC1B;AAEA,WACE,oBAAC,QAAG,WAAU,qDACX,uBAAa;AAAA,MACZ,CAAC,OAAO,UACN,OAAO,WAAW,oBAAC,QAAgB,gBAAM,WAAd,KAAsB;AAAA,IACrD,GACF;AAAA,EAEJ,GAAG,CAAC,UAAU,MAAM,CAAC;AAErB,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,aAAU;AAAA,MACV,WAAW,GAAG,iDAAiD,SAAS;AAAA,MACvE,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ;","names":[]}
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 consistent vertical spacing.
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 consistent vertical spacing.\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":[]}
@@ -19,7 +19,7 @@ function SelectTrigger({
19
19
  "data-slot": "select-trigger",
20
20
  "data-size": size,
21
21
  className: cn(
22
- "sg:flex sg:h-10 sg:w-full sg:items-center sg:justify-between sg:rounded-md sg:border sg:border-input sg:bg-background sg:px-3 sg:py-2 sg:text-sm sg:ring-offset-background sg:placeholder:text-muted-foreground sg:focus:outline-none sg:focus:ring-2 sg:focus:ring-ring sg:focus:ring-offset-2 sg:disabled:cursor-not-allowed sg:disabled:opacity-50 sg:[&>span]:line-clamp-1",
22
+ "sg:flex sg:h-10 sg:w-full sg:items-center sg:justify-between sg:rounded-md sg:border sg:border-input sg:bg-background sg:px-3 sg:py-2 sg:text-sm sg:ring-offset-background sg:placeholder:text-muted-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 sg:[&>span]:line-clamp-1",
23
23
  className
24
24
  ),
25
25
  ...props,
@@ -36,9 +36,9 @@ function SelectContent({
36
36
  children,
37
37
  side = "bottom",
38
38
  sideOffset = 4,
39
- align = "center",
39
+ align = "start",
40
40
  alignOffset = 0,
41
- alignItemWithTrigger = true,
41
+ alignItemWithTrigger = false,
42
42
  ...props
43
43
  }) {
44
44
  return /* @__PURE__ */ jsx(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsx(
@@ -56,13 +56,13 @@ function SelectContent({
56
56
  "data-slot": "select-content",
57
57
  "data-align-trigger": alignItemWithTrigger,
58
58
  className: cn(
59
- "sg: sg: sg:relative sg:isolate sg:z-50 sg:max-h-(--available-height) sg:w-(--anchor-width) sg:min-w-36 sg:origin-(--transform-origin) sg:overflow-x-hidden sg:overflow-y-auto sg:rounded-2xl sg:bg-popover sg:text-popover-foreground sg:shadow-2xl sg:ring-1 sg:ring-foreground/5 sg:duration-100 sg:data-[align-trigger=true]:animate-none sg:data-[side=bottom]:slide-in-from-top-2 sg:data-[side=inline-end]:slide-in-from-left-2 sg:data-[side=inline-start]:slide-in-from-right-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 sg:data-open:animate-in sg:data-open:fade-in-0 sg:data-open:zoom-in-95 sg:data-closed:animate-out sg:data-closed:fade-out-0 sg:data-closed:zoom-out-95",
59
+ "sg:relative sg:isolate sg:z-50 sg:w-(--anchor-width) sg:min-w-36 sg:origin-(--transform-origin) sg:overflow-hidden sg:rounded-md sg:border sg:border-border sg:bg-popover sg:p-1 sg:text-popover-foreground sg:shadow-md sg:duration-100 sg:data-[align-trigger=true]:animate-none sg:data-[side=bottom]:slide-in-from-top-2 sg:data-[side=inline-end]:slide-in-from-left-2 sg:data-[side=inline-start]:slide-in-from-right-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 sg:data-open:animate-in sg:data-open:fade-in-0 sg:data-open:zoom-in-95 sg:data-closed:animate-out sg:data-closed:fade-out-0 sg:data-closed:zoom-out-95",
60
60
  className
61
61
  ),
62
62
  ...props,
63
63
  children: [
64
64
  /* @__PURE__ */ jsx(SelectScrollUpButton, {}),
65
- /* @__PURE__ */ jsx(SelectPrimitive.List, { children }),
65
+ /* @__PURE__ */ jsx(SelectPrimitive.List, { className: "sg:max-h-(--available-height) sg:scroll-py-1 sg:overflow-y-auto sg:overflow-x-hidden", children }),
66
66
  /* @__PURE__ */ jsx(SelectScrollDownButton, {})
67
67
  ]
68
68
  }
@@ -79,7 +79,7 @@ function SelectLabel({
79
79
  {
80
80
  "data-slot": "select-label",
81
81
  className: cn(
82
- "sg:py-1.5 sg:pl-8 sg:pr-2 sg:text-md sg:font-semibold",
82
+ "sg:px-2 sg:py-1.5 sg:text-xs sg:font-semibold sg:text-muted-foreground",
83
83
  className
84
84
  ),
85
85
  ...props
@@ -96,7 +96,7 @@ function SelectItem({
96
96
  {
97
97
  "data-slot": "select-item",
98
98
  className: cn(
99
- "sg:relative sg:flex sg:w-full 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:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground",
99
+ "sg:relative sg:flex sg:w-full 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:scroll-my-0.5 sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:data-highlighted:bg-accent sg:data-highlighted:text-accent-foreground sg:data-selected:font-medium sg:focus-visible:ring-2 sg:focus-visible:ring-inset sg:focus-visible:ring-ring sg:focus-visible:ring-offset-0",
100
100
  className
101
101
  ),
102
102
  ...props,
@@ -115,7 +115,7 @@ function SelectSeparator({
115
115
  SelectPrimitive.Separator,
116
116
  {
117
117
  "data-slot": "select-separator",
118
- className: cn("sg:-mx-1 sg:my-1 sg:h-px sg:bg-muted", className),
118
+ className: cn("sg:-mx-1 sg:my-1 sg:h-px sg:bg-border", className),
119
119
  ...props
120
120
  }
121
121
  );
@@ -129,11 +129,11 @@ function SelectScrollUpButton({
129
129
  {
130
130
  "data-slot": "select-scroll-up-button",
131
131
  className: cn(
132
- "sg:flex sg:cursor-default sg:items-center sg:justify-center sg:py-1",
132
+ "sg:z-1 sg:flex sg:cursor-default sg:items-center sg:justify-center sg:rounded-sm sg:bg-popover sg:py-1 sg:text-muted-foreground 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",
133
133
  className
134
134
  ),
135
135
  ...props,
136
- children: /* @__PURE__ */ jsx(Icon, { icon: "ChevronUp" })
136
+ children: /* @__PURE__ */ jsx(Icon, { icon: "ChevronUp", className: "sg:size-4" })
137
137
  }
138
138
  );
139
139
  }
@@ -146,11 +146,11 @@ function SelectScrollDownButton({
146
146
  {
147
147
  "data-slot": "select-scroll-down-button",
148
148
  className: cn(
149
- "sg:flex sg:cursor-default sg:items-center sg:justify-center sg:py-1",
149
+ "sg:z-1 sg:flex sg:cursor-default sg:items-center sg:justify-center sg:rounded-sm sg:bg-popover sg:py-1 sg:text-muted-foreground 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",
150
150
  className
151
151
  ),
152
152
  ...props,
153
- children: /* @__PURE__ */ jsx(Icon, { icon: "ChevronDown" })
153
+ children: /* @__PURE__ */ jsx(Icon, { icon: "ChevronDown", className: "sg:size-4" })
154
154
  }
155
155
  );
156
156
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/primitives/forms/select.tsx"],"sourcesContent":["\"use client\";\r\nimport * as React from \"react\";\r\nimport { Select as SelectPrimitive } from \"@base-ui/react\";\r\nimport { cn } from \"../../../utils/index\";\r\nimport { Icon } from \"../icon/icon\";\r\n\r\nconst Select = SelectPrimitive.Root;\r\nconst SelectGroup = SelectPrimitive.Group;\r\nconst SelectValue = SelectPrimitive.Value;\r\n\r\nfunction SelectTrigger({\r\n className,\r\n size = \"default\",\r\n children,\r\n ...props\r\n}: SelectPrimitive.Trigger.Props & {\r\n size?: \"sm\" | \"default\";\r\n}) {\r\n return (\r\n <SelectPrimitive.Trigger\r\n data-slot=\"select-trigger\"\r\n data-size={size}\r\n className={cn(\r\n \"sg:flex sg:h-10 sg:w-full sg:items-center sg:justify-between sg:rounded-md sg:border sg:border-input sg:bg-background sg:px-3 sg:py-2 sg:text-sm sg:ring-offset-background sg:placeholder:text-muted-foreground sg:focus:outline-none sg:focus:ring-2 sg:focus:ring-ring sg:focus:ring-offset-2 sg:disabled:cursor-not-allowed sg:disabled:opacity-50 sg:[&>span]:line-clamp-1\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <SelectPrimitive.Icon render={<Icon icon=\"ChevronDown\" />} />\r\n </SelectPrimitive.Trigger>\r\n );\r\n}\r\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName;\r\n\r\nfunction SelectContent({\r\n className,\r\n children,\r\n side = \"bottom\",\r\n sideOffset = 4,\r\n align = \"center\",\r\n alignOffset = 0,\r\n alignItemWithTrigger = true,\r\n ...props\r\n}: SelectPrimitive.Popup.Props &\r\n Pick<\r\n SelectPrimitive.Positioner.Props,\r\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\" | \"alignItemWithTrigger\"\r\n >) {\r\n return (\r\n <SelectPrimitive.Portal>\r\n <SelectPrimitive.Positioner\r\n side={side}\r\n sideOffset={sideOffset}\r\n align={align}\r\n alignOffset={alignOffset}\r\n alignItemWithTrigger={alignItemWithTrigger}\r\n className=\"sg:isolate sg:z-50\"\r\n >\r\n <SelectPrimitive.Popup\r\n data-slot=\"select-content\"\r\n data-align-trigger={alignItemWithTrigger}\r\n className={cn(\r\n \"sg: sg: sg:relative sg:isolate sg:z-50 sg:max-h-(--available-height) sg:w-(--anchor-width) sg:min-w-36 sg:origin-(--transform-origin) sg:overflow-x-hidden sg:overflow-y-auto sg:rounded-2xl sg:bg-popover sg:text-popover-foreground sg:shadow-2xl sg:ring-1 sg:ring-foreground/5 sg:duration-100 sg:data-[align-trigger=true]:animate-none sg:data-[side=bottom]:slide-in-from-top-2 sg:data-[side=inline-end]:slide-in-from-left-2 sg:data-[side=inline-start]:slide-in-from-right-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 sg:data-open:animate-in sg:data-open:fade-in-0 sg:data-open:zoom-in-95 sg:data-closed:animate-out sg:data-closed:fade-out-0 sg:data-closed:zoom-out-95\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <SelectScrollUpButton />\r\n <SelectPrimitive.List>{children}</SelectPrimitive.List>\r\n <SelectScrollDownButton />\r\n </SelectPrimitive.Popup>\r\n </SelectPrimitive.Positioner>\r\n </SelectPrimitive.Portal>\r\n );\r\n}\r\n\r\nfunction SelectLabel({\r\n className,\r\n ...props\r\n}: SelectPrimitive.GroupLabel.Props) {\r\n return (\r\n <SelectPrimitive.GroupLabel\r\n data-slot=\"select-label\"\r\n className={cn(\r\n \"sg:py-1.5 sg:pl-8 sg:pr-2 sg:text-md sg:font-semibold\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction SelectItem({\r\n className,\r\n children,\r\n ...props\r\n}: SelectPrimitive.Item.Props) {\r\n return (\r\n <SelectPrimitive.Item\r\n data-slot=\"select-item\"\r\n className={cn(\r\n \"sg:relative sg:flex sg:w-full 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:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:focus:bg-accent sg:focus:text-accent-foreground\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\r\n\r\n <span className=\"sg:absolute sg:left-2 sg:flex sg:h-3.5 sg:w-3.5 sg:items-center sg:justify-center\">\r\n <SelectPrimitive.ItemIndicator>\r\n <Icon icon=\"Check\" />\r\n </SelectPrimitive.ItemIndicator>\r\n </span>\r\n </SelectPrimitive.Item>\r\n );\r\n}\r\n\r\nfunction SelectSeparator({\r\n className,\r\n ...props\r\n}: SelectPrimitive.Separator.Props) {\r\n return (\r\n <SelectPrimitive.Separator\r\n data-slot=\"select-separator\"\r\n className={cn(\"sg:-mx-1 sg:my-1 sg:h-px sg:bg-muted\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction SelectScrollUpButton({\r\n className,\r\n ...props\r\n}: React.ComponentProps<typeof SelectPrimitive.ScrollUpArrow>) {\r\n return (\r\n <SelectPrimitive.ScrollUpArrow\r\n data-slot=\"select-scroll-up-button\"\r\n className={cn(\r\n \"sg:flex sg:cursor-default sg:items-center sg:justify-center sg:py-1\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <Icon icon=\"ChevronUp\" />\r\n </SelectPrimitive.ScrollUpArrow>\r\n );\r\n}\r\n\r\nfunction SelectScrollDownButton({\r\n className,\r\n ...props\r\n}: React.ComponentProps<typeof SelectPrimitive.ScrollDownArrow>) {\r\n return (\r\n <SelectPrimitive.ScrollDownArrow\r\n data-slot=\"select-scroll-down-button\"\r\n className={cn(\r\n \"sg:flex sg:cursor-default sg:items-center sg:justify-center sg:py-1\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <Icon icon=\"ChevronDown\" />\r\n </SelectPrimitive.ScrollDownArrow>\r\n );\r\n}\r\n\r\nexport {\r\n Select,\r\n SelectContent,\r\n SelectGroup,\r\n SelectItem,\r\n SelectLabel,\r\n SelectScrollDownButton,\r\n SelectScrollUpButton,\r\n SelectSeparator,\r\n SelectTrigger,\r\n SelectValue,\r\n};\r\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/primitives/forms/select.tsx"],"sourcesContent":["\"use client\";\r\nimport * as React from \"react\";\r\nimport { Select as SelectPrimitive } from \"@base-ui/react\";\r\nimport { cn } from \"../../../utils/index\";\r\nimport { Icon } from \"../icon/icon\";\r\n\r\nconst Select = SelectPrimitive.Root;\r\nconst SelectGroup = SelectPrimitive.Group;\r\nconst SelectValue = SelectPrimitive.Value;\r\n\r\nfunction SelectTrigger({\r\n className,\r\n size = \"default\",\r\n children,\r\n ...props\r\n}: SelectPrimitive.Trigger.Props & {\r\n size?: \"sm\" | \"default\";\r\n}) {\r\n return (\r\n <SelectPrimitive.Trigger\r\n data-slot=\"select-trigger\"\r\n data-size={size}\r\n className={cn(\r\n \"sg:flex sg:h-10 sg:w-full sg:items-center sg:justify-between sg:rounded-md sg:border sg:border-input sg:bg-background sg:px-3 sg:py-2 sg:text-sm sg:ring-offset-background sg:placeholder:text-muted-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 sg:[&>span]:line-clamp-1\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <SelectPrimitive.Icon render={<Icon icon=\"ChevronDown\" />} />\r\n </SelectPrimitive.Trigger>\r\n );\r\n}\r\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName;\r\n\r\nfunction SelectContent({\r\n className,\r\n children,\r\n side = \"bottom\",\r\n sideOffset = 4,\r\n align = \"start\",\r\n alignOffset = 0,\r\n alignItemWithTrigger = false,\r\n ...props\r\n}: SelectPrimitive.Popup.Props &\r\n Pick<\r\n SelectPrimitive.Positioner.Props,\r\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\" | \"alignItemWithTrigger\"\r\n >) {\r\n return (\r\n <SelectPrimitive.Portal>\r\n <SelectPrimitive.Positioner\r\n side={side}\r\n sideOffset={sideOffset}\r\n align={align}\r\n alignOffset={alignOffset}\r\n alignItemWithTrigger={alignItemWithTrigger}\r\n className=\"sg:isolate sg:z-50\"\r\n >\r\n <SelectPrimitive.Popup\r\n data-slot=\"select-content\"\r\n data-align-trigger={alignItemWithTrigger}\r\n className={cn(\r\n \"sg:relative sg:isolate sg:z-50 sg:w-(--anchor-width) sg:min-w-36 sg:origin-(--transform-origin) sg:overflow-hidden sg:rounded-md sg:border sg:border-border sg:bg-popover sg:p-1 sg:text-popover-foreground sg:shadow-md sg:duration-100 sg:data-[align-trigger=true]:animate-none sg:data-[side=bottom]:slide-in-from-top-2 sg:data-[side=inline-end]:slide-in-from-left-2 sg:data-[side=inline-start]:slide-in-from-right-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 sg:data-open:animate-in sg:data-open:fade-in-0 sg:data-open:zoom-in-95 sg:data-closed:animate-out sg:data-closed:fade-out-0 sg:data-closed:zoom-out-95\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <SelectScrollUpButton />\r\n <SelectPrimitive.List className=\"sg:max-h-(--available-height) sg:scroll-py-1 sg:overflow-y-auto sg:overflow-x-hidden\">\r\n {children}\r\n </SelectPrimitive.List>\r\n <SelectScrollDownButton />\r\n </SelectPrimitive.Popup>\r\n </SelectPrimitive.Positioner>\r\n </SelectPrimitive.Portal>\r\n );\r\n}\r\n\r\nfunction SelectLabel({\r\n className,\r\n ...props\r\n}: SelectPrimitive.GroupLabel.Props) {\r\n return (\r\n <SelectPrimitive.GroupLabel\r\n data-slot=\"select-label\"\r\n className={cn(\r\n \"sg:px-2 sg:py-1.5 sg:text-xs sg:font-semibold sg:text-muted-foreground\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction SelectItem({\r\n className,\r\n children,\r\n ...props\r\n}: SelectPrimitive.Item.Props) {\r\n return (\r\n <SelectPrimitive.Item\r\n data-slot=\"select-item\"\r\n className={cn(\r\n \"sg:relative sg:flex sg:w-full 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:scroll-my-0.5 sg:data-disabled:pointer-events-none sg:data-disabled:opacity-50 sg:data-highlighted:bg-accent sg:data-highlighted:text-accent-foreground sg:data-selected:font-medium sg:focus-visible:ring-2 sg:focus-visible:ring-inset sg:focus-visible:ring-ring sg:focus-visible:ring-offset-0\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\r\n\r\n <span className=\"sg:absolute sg:left-2 sg:flex sg:h-3.5 sg:w-3.5 sg:items-center sg:justify-center\">\r\n <SelectPrimitive.ItemIndicator>\r\n <Icon icon=\"Check\" />\r\n </SelectPrimitive.ItemIndicator>\r\n </span>\r\n </SelectPrimitive.Item>\r\n );\r\n}\r\n\r\nfunction SelectSeparator({\r\n className,\r\n ...props\r\n}: SelectPrimitive.Separator.Props) {\r\n return (\r\n <SelectPrimitive.Separator\r\n data-slot=\"select-separator\"\r\n className={cn(\"sg:-mx-1 sg:my-1 sg:h-px sg:bg-border\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nfunction SelectScrollUpButton({\r\n className,\r\n ...props\r\n}: React.ComponentProps<typeof SelectPrimitive.ScrollUpArrow>) {\r\n return (\r\n <SelectPrimitive.ScrollUpArrow\r\n data-slot=\"select-scroll-up-button\"\r\n className={cn(\r\n \"sg:z-1 sg:flex sg:cursor-default sg:items-center sg:justify-center sg:rounded-sm sg:bg-popover sg:py-1 sg:text-muted-foreground 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\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <Icon icon=\"ChevronUp\" className=\"sg:size-4\" />\r\n </SelectPrimitive.ScrollUpArrow>\r\n );\r\n}\r\n\r\nfunction SelectScrollDownButton({\r\n className,\r\n ...props\r\n}: React.ComponentProps<typeof SelectPrimitive.ScrollDownArrow>) {\r\n return (\r\n <SelectPrimitive.ScrollDownArrow\r\n data-slot=\"select-scroll-down-button\"\r\n className={cn(\r\n \"sg:z-1 sg:flex sg:cursor-default sg:items-center sg:justify-center sg:rounded-sm sg:bg-popover sg:py-1 sg:text-muted-foreground 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\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <Icon icon=\"ChevronDown\" className=\"sg:size-4\" />\r\n </SelectPrimitive.ScrollDownArrow>\r\n );\r\n}\r\n\r\nexport {\r\n Select,\r\n SelectContent,\r\n SelectGroup,\r\n SelectItem,\r\n SelectLabel,\r\n SelectScrollDownButton,\r\n SelectScrollUpButton,\r\n SelectSeparator,\r\n SelectTrigger,\r\n SelectValue,\r\n};\r\n"],"mappings":"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","names":[]}