commerce-toolkit 0.1.1 → 0.2.0

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 (152) hide show
  1. package/dist/category-card-link-BqMAG9Op.js +211 -0
  2. package/dist/category-card-link-BqMAG9Op.js.map +1 -0
  3. package/dist/category-card-link-BwSFHFcd.cjs +2 -0
  4. package/dist/category-card-link-BwSFHFcd.cjs.map +1 -0
  5. package/dist/category-card.cjs +1 -1
  6. package/dist/category-card.cjs.map +1 -1
  7. package/dist/category-card.js +23 -218
  8. package/dist/category-card.js.map +1 -1
  9. package/dist/checkbox-indicator-GNoyS6OL.cjs +2 -0
  10. package/dist/checkbox-indicator-GNoyS6OL.cjs.map +1 -0
  11. package/dist/checkbox-indicator-os50dewx.js +18 -0
  12. package/dist/checkbox-indicator-os50dewx.js.map +1 -0
  13. package/dist/{checkbox-indicator-Cfw9uH_b.js → checkbox-root-B9W2Y8rY.js} +74 -85
  14. package/dist/checkbox-root-B9W2Y8rY.js.map +1 -0
  15. package/dist/checkbox-root-g9HcYZCP.cjs +2 -0
  16. package/dist/checkbox-root-g9HcYZCP.cjs.map +1 -0
  17. package/dist/checkbox.cjs +1 -1
  18. package/dist/checkbox.js +5 -4
  19. package/dist/checkbox.js.map +1 -1
  20. package/dist/compare-card-specs-empty-BMLUSqQL.js +281 -0
  21. package/dist/compare-card-specs-empty-BMLUSqQL.js.map +1 -0
  22. package/dist/compare-card-specs-empty-ar5CneZv.cjs +2 -0
  23. package/dist/compare-card-specs-empty-ar5CneZv.cjs.map +1 -0
  24. package/dist/compare-card.cjs +2 -0
  25. package/dist/compare-card.cjs.map +1 -0
  26. package/dist/compare-card.js +65 -0
  27. package/dist/compare-card.js.map +1 -0
  28. package/dist/components/accordion/index.d.ts.map +1 -1
  29. package/dist/components/alert/index.d.ts.map +1 -1
  30. package/dist/components/banner/index.d.ts.map +1 -1
  31. package/dist/components/blog-post-card/index.d.ts.map +1 -1
  32. package/dist/components/card/index.d.ts.map +1 -1
  33. package/dist/components/carousel/index.d.ts.map +1 -1
  34. package/dist/components/checkbox/index.d.ts.map +1 -1
  35. package/dist/components/chip/index.d.ts.map +1 -1
  36. package/dist/components/compare-card/compare-card.d.ts +45 -0
  37. package/dist/components/compare-card/compare-card.d.ts.map +1 -0
  38. package/dist/components/compare-card/index.d.ts +3 -0
  39. package/dist/components/compare-card/index.d.ts.map +1 -0
  40. package/dist/components/compare-card/primitives/compare-card-description-content.d.ts +4 -0
  41. package/dist/components/compare-card/primitives/compare-card-description-content.d.ts.map +1 -0
  42. package/dist/components/compare-card/primitives/compare-card-description-empty.d.ts +4 -0
  43. package/dist/components/compare-card/primitives/compare-card-description-empty.d.ts.map +1 -0
  44. package/dist/components/compare-card/primitives/compare-card-description-label.d.ts +4 -0
  45. package/dist/components/compare-card/primitives/compare-card-description-label.d.ts.map +1 -0
  46. package/dist/components/compare-card/primitives/compare-card-description.d.ts +4 -0
  47. package/dist/components/compare-card/primitives/compare-card-description.d.ts.map +1 -0
  48. package/dist/components/compare-card/primitives/compare-card-form-input.d.ts +4 -0
  49. package/dist/components/compare-card/primitives/compare-card-form-input.d.ts.map +1 -0
  50. package/dist/components/compare-card/primitives/compare-card-form.d.ts +4 -0
  51. package/dist/components/compare-card/primitives/compare-card-form.d.ts.map +1 -0
  52. package/dist/components/compare-card/primitives/compare-card-link.d.ts +5 -0
  53. package/dist/components/compare-card/primitives/compare-card-link.d.ts.map +1 -0
  54. package/dist/components/compare-card/primitives/compare-card-product.d.ts +4 -0
  55. package/dist/components/compare-card/primitives/compare-card-product.d.ts.map +1 -0
  56. package/dist/components/compare-card/primitives/compare-card-rating-empty.d.ts +4 -0
  57. package/dist/components/compare-card/primitives/compare-card-rating-empty.d.ts.map +1 -0
  58. package/dist/components/compare-card/primitives/compare-card-rating-label.d.ts +4 -0
  59. package/dist/components/compare-card/primitives/compare-card-rating-label.d.ts.map +1 -0
  60. package/dist/components/compare-card/primitives/compare-card-rating.d.ts +4 -0
  61. package/dist/components/compare-card/primitives/compare-card-rating.d.ts.map +1 -0
  62. package/dist/components/compare-card/primitives/compare-card-root.d.ts +4 -0
  63. package/dist/components/compare-card/primitives/compare-card-root.d.ts.map +1 -0
  64. package/dist/components/compare-card/primitives/compare-card-skeleton.d.ts +4 -0
  65. package/dist/components/compare-card/primitives/compare-card-skeleton.d.ts.map +1 -0
  66. package/dist/components/compare-card/primitives/compare-card-specs-definition.d.ts +4 -0
  67. package/dist/components/compare-card/primitives/compare-card-specs-definition.d.ts.map +1 -0
  68. package/dist/components/compare-card/primitives/compare-card-specs-empty.d.ts +4 -0
  69. package/dist/components/compare-card/primitives/compare-card-specs-empty.d.ts.map +1 -0
  70. package/dist/components/compare-card/primitives/compare-card-specs-label.d.ts +4 -0
  71. package/dist/components/compare-card/primitives/compare-card-specs-label.d.ts.map +1 -0
  72. package/dist/components/compare-card/primitives/compare-card-specs-list.d.ts +4 -0
  73. package/dist/components/compare-card/primitives/compare-card-specs-list.d.ts.map +1 -0
  74. package/dist/components/compare-card/primitives/compare-card-specs-term.d.ts +4 -0
  75. package/dist/components/compare-card/primitives/compare-card-specs-term.d.ts.map +1 -0
  76. package/dist/components/compare-card/primitives/compare-card-specs.d.ts +4 -0
  77. package/dist/components/compare-card/primitives/compare-card-specs.d.ts.map +1 -0
  78. package/dist/components/compare-card/primitives.d.ts +20 -0
  79. package/dist/components/compare-card/primitives.d.ts.map +1 -0
  80. package/dist/components/compare-drawer/index.d.ts.map +1 -1
  81. package/dist/components/cursor-pagination/index.d.ts +1 -1
  82. package/dist/components/cursor-pagination/index.d.ts.map +1 -1
  83. package/dist/components/dropdown-menu/index.d.ts.map +1 -1
  84. package/dist/components/favorite/index.d.ts.map +1 -1
  85. package/dist/components/icon/index.d.ts.map +1 -1
  86. package/dist/components/label/index.d.ts.map +1 -1
  87. package/dist/components/logo/index.d.ts.map +1 -1
  88. package/dist/components/modal/index.d.ts.map +1 -1
  89. package/dist/components/offset-pagination/index.d.ts +1 -1
  90. package/dist/components/offset-pagination/index.d.ts.map +1 -1
  91. package/dist/components/price/index.d.ts.map +1 -1
  92. package/dist/components/product-card/index.d.ts.map +1 -1
  93. package/dist/components/rating/index.d.ts.map +1 -1
  94. package/dist/components/reveal/index.d.ts.map +1 -1
  95. package/dist/components/scroll-area/index.d.ts.map +1 -1
  96. package/dist/components/skeleton/index.d.ts.map +1 -1
  97. package/dist/components/tabs/index.d.ts.map +1 -1
  98. package/dist/index.cjs +10 -5
  99. package/dist/index.cjs.map +1 -1
  100. package/dist/index.d.ts +26 -19
  101. package/dist/index.d.ts.map +1 -1
  102. package/dist/index.js +1274 -1132
  103. package/dist/index.js.map +1 -1
  104. package/dist/lib/index.d.ts.map +1 -1
  105. package/dist/offset-pagination-ellipsis-DWDhFCgW.js +79 -0
  106. package/dist/offset-pagination-ellipsis-DWDhFCgW.js.map +1 -0
  107. package/dist/offset-pagination-ellipsis-MCFHXB-5.cjs +2 -0
  108. package/dist/offset-pagination-ellipsis-MCFHXB-5.cjs.map +1 -0
  109. package/dist/offset-pagination.cjs +1 -1
  110. package/dist/offset-pagination.cjs.map +1 -1
  111. package/dist/offset-pagination.js +6 -76
  112. package/dist/offset-pagination.js.map +1 -1
  113. package/dist/product-card-label-CJmC9ICf.js +312 -0
  114. package/dist/product-card-label-CJmC9ICf.js.map +1 -0
  115. package/dist/product-card-label-D43AXtRL.cjs +2 -0
  116. package/dist/product-card-label-D43AXtRL.cjs.map +1 -0
  117. package/dist/product-card-root-4Xz4-pdL.js +43 -0
  118. package/dist/product-card-root-4Xz4-pdL.js.map +1 -0
  119. package/dist/product-card-root-BMTVhhFp.cjs +2 -0
  120. package/dist/product-card-root-BMTVhhFp.cjs.map +1 -0
  121. package/dist/product-card-skeleton-CCQkDMNl.cjs +2 -0
  122. package/dist/product-card-skeleton-CCQkDMNl.cjs.map +1 -0
  123. package/dist/product-card-skeleton-Dkqf-bfA.js +34 -0
  124. package/dist/product-card-skeleton-Dkqf-bfA.js.map +1 -0
  125. package/dist/product-card.cjs +1 -1
  126. package/dist/product-card.cjs.map +1 -1
  127. package/dist/product-card.js +25 -326
  128. package/dist/product-card.js.map +1 -1
  129. package/dist/side-panel-close-Bjcn4BEE.cjs +2 -0
  130. package/dist/side-panel-close-Bjcn4BEE.cjs.map +1 -0
  131. package/dist/side-panel-close-DVJwOxdM.js +86 -0
  132. package/dist/side-panel-close-DVJwOxdM.js.map +1 -0
  133. package/dist/side-panel.cjs +1 -1
  134. package/dist/side-panel.cjs.map +1 -1
  135. package/dist/side-panel.js +9 -82
  136. package/dist/side-panel.js.map +1 -1
  137. package/package.json +11 -1
  138. package/dist/arrow-up-right-Cfau6CiE.cjs +0 -7
  139. package/dist/arrow-up-right-Cfau6CiE.cjs.map +0 -1
  140. package/dist/arrow-up-right-D7smpXBs.js +0 -16
  141. package/dist/arrow-up-right-D7smpXBs.js.map +0 -1
  142. package/dist/checkbox-indicator-BgXRGvAh.cjs +0 -2
  143. package/dist/checkbox-indicator-BgXRGvAh.cjs.map +0 -1
  144. package/dist/checkbox-indicator-Cfw9uH_b.js.map +0 -1
  145. package/dist/price-BwaeTmkR.js +0 -53
  146. package/dist/price-BwaeTmkR.js.map +0 -1
  147. package/dist/price-CdK2ye4P.cjs +0 -2
  148. package/dist/price-CdK2ye4P.cjs.map +0 -1
  149. package/dist/primitives--2McVg9Z.js +0 -15
  150. package/dist/primitives--2McVg9Z.js.map +0 -1
  151. package/dist/primitives-DmqzDKi2.cjs +0 -2
  152. package/dist/primitives-DmqzDKi2.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"category-card.js","sources":["../src/components/category-card/primitives/category-card-root.tsx","../src/components/category-card/primitives/category-card-icon.tsx","../src/components/category-card/primitives/category-card-thumbnail.tsx","../src/components/category-card/primitives/category-card-image.tsx","../src/components/category-card/primitives/category-card-fallback.tsx","../src/components/category-card/primitives/category-card-overlay.tsx","../src/components/category-card/primitives/category-card-title.tsx","../src/components/category-card/primitives/category-card-link.tsx","../src/components/category-card/primitives/category-card-skeleton.tsx"],"sourcesContent":["'use client';\n\nimport { createContext, use, useMemo } from 'react';\nimport type { ComponentProps, ElementType } from 'react';\n\nimport { cn } from '@/lib';\n\ninterface CategoryCardContext {\n textColorScheme: 'light' | 'dark';\n iconColorScheme: 'light' | 'dark';\n aspectRatio: '5:6' | '3:4' | '1:1';\n textSize: 'small' | 'medium' | 'large' | 'x-large';\n showOverlay: boolean;\n}\n\nexport const CategoryCardContext = createContext<CategoryCardContext | undefined>(undefined);\n\nexport type CategoryCardRootProps<E extends ElementType = 'article'> = Omit<\n ComponentProps<E>,\n 'as'\n> & {\n as?: E;\n textColorScheme?: 'light' | 'dark';\n iconColorScheme?: 'light' | 'dark';\n aspectRatio?: '5:6' | '3:4' | '1:1';\n textSize?: 'small' | 'medium' | 'large' | 'x-large';\n showOverlay?: boolean;\n};\n\nexport function CategoryCardRoot<T extends ElementType = 'article'>({\n className,\n children,\n as,\n textColorScheme = 'light',\n iconColorScheme = 'light',\n aspectRatio = '5:6',\n textSize = 'small',\n showOverlay = true,\n ...props\n}: CategoryCardRootProps<T>) {\n const CategoryCardRootElement = as ?? 'article';\n\n const contextValues = useMemo(\n () => ({\n textColorScheme,\n iconColorScheme,\n aspectRatio,\n textSize,\n showOverlay,\n }),\n [textColorScheme, iconColorScheme, aspectRatio, textSize, showOverlay],\n );\n\n return (\n <CategoryCardContext.Provider value={contextValues}>\n <CategoryCardRootElement\n className={cn(\n 'group relative flex w-full max-w-md cursor-pointer flex-col gap-2 rounded-[var(--category-card-border-radius,1rem)] font-[var(--category-card-font-family,var(--font-family-body))] @container',\n {\n small: 'gap-2',\n medium: 'gap-3',\n large: 'gap-4',\n 'x-large': 'gap-5',\n }[textSize],\n className,\n )}\n data-slot=\"category-card-root\"\n {...props}\n >\n {children}\n </CategoryCardRootElement>\n </CategoryCardContext.Provider>\n );\n}\n\nexport function useCategoryCard() {\n const context = use(CategoryCardContext);\n\n if (context === undefined) {\n throw new Error('useCategoryCard must be used within a CategoryCardRoot');\n }\n\n return context;\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { useCategoryCard } from '@/components/category-card';\nimport { cn } from '@/lib';\n\nexport type CategoryCardIconProps = ComponentProps<typeof Slot>;\n\nexport function CategoryCardIcon({ className, children, ...props }: CategoryCardIconProps) {\n const { iconColorScheme } = useCategoryCard();\n\n return (\n <Slot\n className={cn(\n 'absolute right-5 top-5 z-10 transition-transform duration-700 ease-out group-hover:-translate-y-1.5 group-hover:translate-x-1.5',\n {\n light: 'text-[var(--category-card-light-icon,hsl(var(--foreground)))]',\n dark: 'text-[var(--category-card-dark-icon,hsl(var(--background)))]',\n }[iconColorScheme],\n className,\n )}\n data-slot=\"category-card-icon\"\n {...props}\n >\n {children}\n </Slot>\n );\n}\n","'use client';\n\nimport type { ComponentProps } from 'react';\n\nimport { useCategoryCard } from '@/components/category-card';\nimport { cn } from '@/lib';\n\nexport type CategoryCardThumbnailProps = ComponentProps<'div'>;\n\nexport function CategoryCardThumbnail({\n className,\n children,\n ...props\n}: CategoryCardThumbnailProps) {\n const { textColorScheme, aspectRatio } = useCategoryCard();\n\n return (\n <div\n className={cn(\n 'relative overflow-hidden rounded-[inherit] group-focus:ring-[var(--category-card-focus,hsl(var(--primary)))] group-focus-visible:ring-2',\n {\n light: 'bg-[var(--category-card-light-background,hsl(var(--contrast-100)))]',\n dark: 'bg-[var(--category-card-dark-background,hsl(var(--contrast-500)))]',\n }[textColorScheme],\n {\n '5:6': 'aspect-[5/6]',\n '3:4': 'aspect-[3/4]',\n '1:1': 'aspect-square',\n }[aspectRatio],\n className,\n )}\n data-slot=\"category-card-thumbnail\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { useCategoryCard } from '@/components/category-card';\nimport { cn } from '@/lib';\n\nexport type CategoryCardImageProps = ComponentProps<'img'> & {\n asChild?: boolean;\n};\n\nexport function CategoryCardImage({\n className,\n children,\n asChild = false,\n ...props\n}: CategoryCardImageProps) {\n const { textColorScheme } = useCategoryCard();\n\n const Component = asChild ? Slot : 'img';\n\n return (\n <Component\n className={cn(\n 'h-full w-full scale-100 select-none object-cover transition-transform duration-500 ease-out group-hover:scale-110',\n {\n light: 'bg-[var(--category-card-light-background,hsl(var(--contrast-100)))]',\n dark: 'bg-[var(--category-card-dark-background,hsl(var(--contrast-500)))]',\n }[textColorScheme],\n className,\n )}\n data-slot=\"category-card-image\"\n {...props}\n />\n );\n}\n","'use client';\n\nimport type { ComponentProps } from 'react';\n\nimport { useCategoryCard } from '@/components/category-card';\nimport { cn } from '@/lib';\n\nexport type CategoryCardFallbackProps = ComponentProps<'div'>;\n\nexport function CategoryCardFallback({ className, children, ...props }: CategoryCardFallbackProps) {\n const { textColorScheme } = useCategoryCard();\n\n return (\n <div\n className={cn(\n 'break-words p-4 text-4xl font-bold leading-none tracking-tight transition-transform duration-500 ease-out group-hover:scale-105',\n {\n light: '[color:color-mix(in_oklab,hsl(var(--foreground))_30%,transparent)]',\n dark: '[color:color-mix(in_oklab,hsl(var(--background))_30%,transparent)]',\n }[textColorScheme],\n className,\n )}\n data-slot=\"category-card-fallback\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","'use client';\n\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nimport { useCategoryCard } from '../primitives';\n\nexport type CategoryCardOverlayProps = ComponentProps<'div'>;\n\nexport function CategoryCardOverlay({ children, className, ...props }: CategoryCardOverlayProps) {\n const { showOverlay } = useCategoryCard();\n\n return (\n <div\n className={cn(\n 'absolute inset-0 flex items-end p-6 @xs:p-8',\n showOverlay &&\n 'bg-gradient-to-b from-foreground/0 from-50% via-foreground/0 via-50% to-foreground/50 to-100%',\n className,\n )}\n data-slot=\"category-card-overlay\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","'use client';\n\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nimport { useCategoryCard } from '../primitives';\n\nexport type CategoryCardTitleProps = ComponentProps<'h3'>;\n\nexport function CategoryCardTitle({ children, className, ...props }: CategoryCardTitleProps) {\n const { textSize, textColorScheme } = useCategoryCard();\n\n return (\n <h3\n className={cn(\n 'font-medium leading-tight',\n {\n small: 'text-lg tracking-normal @xs:text-xl',\n medium: 'text-xl tracking-normal @xs:text-2xl',\n large: 'text-2xl tracking-tight @xs:text-3xl',\n 'x-large': 'text-3xl tracking-tight @xs:text-4xl',\n }[textSize],\n {\n light: 'text-[var(--category-card-light-text,hsl(var(--foreground)))]',\n dark: 'text-[var(--category-card-dark-text,hsl(var(--background)))]',\n }[textColorScheme],\n className,\n )}\n data-slot=\"category-card-title\"\n {...props}\n >\n {children}\n </h3>\n );\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { useCategoryCard } from '@/components/category-card';\nimport { cn } from '@/lib';\n\nexport interface CategoryCardLinkProps extends ComponentProps<'a'> {\n asChild?: boolean;\n}\n\nexport function CategoryCardLink({ asChild = false, className, ...props }: CategoryCardLinkProps) {\n const { textColorScheme } = useCategoryCard();\n\n const Component = asChild ? Slot : 'a';\n\n return (\n <Component\n className={cn(\n 'absolute inset-0 rounded-[var(--category-card-border-radius,1rem)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--category-card-focus,hsl(var(--primary)))] focus-visible:ring-offset-4',\n {\n light: 'ring-offset-[var(--category-card-light-offset,hsl(var(--background)))]',\n dark: 'ring-offset-[var(--category-card-dark-offset,hsl(var(--foreground)))]',\n }[textColorScheme],\n className,\n )}\n data-slot=\"category-card-link\"\n {...props}\n />\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport * as SkeletonPrimitive from '@/components/skeleton';\nimport { cn } from '@/lib';\n\nimport { useCategoryCard } from '../primitives';\n\nexport type CategoryCardSkeletonProps = ComponentProps<'div'>;\n\nexport function CategoryCardSkeleton({ className, ...props }: CategoryCardSkeletonProps) {\n const { aspectRatio } = useCategoryCard();\n\n return (\n <div className={cn('@container', className)} {...props} data-slot=\"category-card-skeleton\">\n <SkeletonPrimitive.Box\n className={cn(\n 'rounded-[var(--category-card-border-radius,1rem)]',\n {\n '5:6': 'aspect-[5/6]',\n '3:4': 'aspect-[3/4]',\n '1:1': 'aspect-square',\n }[aspectRatio],\n )}\n />\n <div className=\"mt-3\">\n <SkeletonPrimitive.Text characterCount={10} className=\"rounded text-lg\" />\n </div>\n </div>\n );\n}\n"],"names":["CategoryCardContext","createContext","CategoryCardRoot","className","children","as","textColorScheme","iconColorScheme","aspectRatio","textSize","showOverlay","props","CategoryCardRootElement","contextValues","useMemo","jsx","cn","useCategoryCard","context","use","CategoryCardIcon","Slot","CategoryCardThumbnail","CategoryCardImage","asChild","CategoryCardFallback","CategoryCardOverlay","CategoryCardTitle","CategoryCardLink","CategoryCardSkeleton","jsxs","SkeletonPrimitive.Box","SkeletonPrimitive.Text"],"mappings":"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"}
1
+ {"version":3,"file":"category-card.js","sources":["../src/components/category-card/primitives/category-card-skeleton.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport * as SkeletonPrimitive from '@/components/skeleton';\nimport { cn } from '@/lib';\n\nimport { useCategoryCard } from '../primitives';\n\nexport type CategoryCardSkeletonProps = ComponentProps<'div'>;\n\nexport function CategoryCardSkeleton({ className, ...props }: CategoryCardSkeletonProps) {\n const { aspectRatio } = useCategoryCard();\n\n return (\n <div className={cn('@container', className)} {...props} data-slot=\"category-card-skeleton\">\n <SkeletonPrimitive.Box\n className={cn(\n 'rounded-[var(--category-card-border-radius,1rem)]',\n {\n '5:6': 'aspect-[5/6]',\n '3:4': 'aspect-[3/4]',\n '1:1': 'aspect-square',\n }[aspectRatio],\n )}\n />\n <div className=\"mt-3\">\n <SkeletonPrimitive.Text characterCount={10} className=\"rounded text-lg\" />\n </div>\n </div>\n );\n}\n"],"names":["CategoryCardSkeleton","className","props","aspectRatio","useCategoryCard","jsxs","cn","jsx","SkeletonPrimitive.Box","SkeletonPrimitive.Text"],"mappings":";;;;;;AASO,SAASA,EAAqB,EAAE,WAAAC,GAAW,GAAGC,KAAoC;AACvF,QAAM,EAAE,aAAAC,EAAA,IAAgBC,EAAA;AAExB,SACE,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAG,cAAcL,CAAS,GAAI,GAAGC,GAAO,aAAU,0BAChE,UAAA;AAAA,IAAA,gBAAAK;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,WAAWF;AAAA,UACT;AAAA,UACA;AAAA,YACE,OAAO;AAAA,YACP,OAAO;AAAA,YACP,OAAO;AAAA,UAAA,EACPH,CAAW;AAAA,QAAA;AAAA,MACf;AAAA,IAAA;AAAA,IAEF,gBAAAI,EAAC,OAAA,EAAI,WAAU,QACb,UAAA,gBAAAA,EAACE,GAAA,EAAuB,gBAAgB,IAAI,WAAU,kBAAA,CAAkB,EAAA,CAC1E;AAAA,EAAA,GACF;AAEJ;"}
@@ -0,0 +1,2 @@
1
+ "use strict";const e=require("react/jsx-runtime"),r=require("./checkbox-root-g9HcYZCP.cjs"),i=require("./utils-LBH114_M.cjs");function n({className:c,children:o,...t}){return e.jsx(r.CheckboxIndicator,{className:i.cn(c),"data-slot":"checkbox-indicator",...t,children:o})}exports.CheckboxIndicator=n;
2
+ //# sourceMappingURL=checkbox-indicator-GNoyS6OL.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-indicator-GNoyS6OL.cjs","sources":["../src/components/checkbox/primitives/checkbox-indicator.tsx"],"sourcesContent":["'use client';\n\nimport * as CheckboxPrimitive from '@radix-ui/react-checkbox';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nexport type CheckboxIndicatorProps = ComponentProps<typeof CheckboxPrimitive.Indicator>;\n\nexport function CheckboxIndicator({ className, children, ...props }: CheckboxIndicatorProps) {\n return (\n <CheckboxPrimitive.Indicator\n className={cn(className)}\n data-slot=\"checkbox-indicator\"\n {...props}\n >\n {children}\n </CheckboxPrimitive.Indicator>\n );\n}\n"],"names":["CheckboxIndicator","className","children","props","jsx","CheckboxPrimitive.Indicator","cn"],"mappings":"8HASO,SAASA,EAAkB,CAAE,UAAAC,EAAW,SAAAC,EAAU,GAAGC,GAAiC,CAC3F,OACEC,EAAAA,IAACC,EAAAA,kBAAA,CACC,UAAWC,EAAAA,GAAGL,CAAS,EACvB,YAAU,qBACT,GAAGE,EAEH,SAAAD,CAAA,CAAA,CAGP"}
@@ -0,0 +1,18 @@
1
+ import { jsx as c } from "react/jsx-runtime";
2
+ import { a as t } from "./checkbox-root-B9W2Y8rY.js";
3
+ import { c as i } from "./utils-BOGlfttm.js";
4
+ function e({ className: o, children: r, ...a }) {
5
+ return /* @__PURE__ */ c(
6
+ t,
7
+ {
8
+ className: i(o),
9
+ "data-slot": "checkbox-indicator",
10
+ ...a,
11
+ children: r
12
+ }
13
+ );
14
+ }
15
+ export {
16
+ e as C
17
+ };
18
+ //# sourceMappingURL=checkbox-indicator-os50dewx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-indicator-os50dewx.js","sources":["../src/components/checkbox/primitives/checkbox-indicator.tsx"],"sourcesContent":["'use client';\n\nimport * as CheckboxPrimitive from '@radix-ui/react-checkbox';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nexport type CheckboxIndicatorProps = ComponentProps<typeof CheckboxPrimitive.Indicator>;\n\nexport function CheckboxIndicator({ className, children, ...props }: CheckboxIndicatorProps) {\n return (\n <CheckboxPrimitive.Indicator\n className={cn(className)}\n data-slot=\"checkbox-indicator\"\n {...props}\n >\n {children}\n </CheckboxPrimitive.Indicator>\n );\n}\n"],"names":["CheckboxIndicator","className","children","props","jsx","CheckboxPrimitive.Indicator","cn"],"mappings":";;;AASO,SAASA,EAAkB,EAAE,WAAAC,GAAW,UAAAC,GAAU,GAAGC,KAAiC;AAC3F,SACE,gBAAAC;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,WAAWC,EAAGL,CAAS;AAAA,MACvB,aAAU;AAAA,MACT,GAAGE;AAAA,MAEH,UAAAD;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -1,19 +1,19 @@
1
- import { jsx as i, jsxs as z, Fragment as G } from "react/jsx-runtime";
1
+ import { jsx as u, jsxs as H, Fragment as z } from "react/jsx-runtime";
2
2
  import * as n from "react";
3
- import { createContext as K, useMemo as U, use as X } from "react";
4
- import { c as R } from "./utils-BOGlfttm.js";
3
+ import { createContext as G, useMemo as K, use as U } from "react";
5
4
  import { u as S } from "./index-DLcqcWxM.js";
6
- import { c as V, P as $ } from "./index-Df-2-3xv.js";
5
+ import { c as X, P as V } from "./index-Df-2-3xv.js";
7
6
  import { c as N } from "./index-B695uy69.js";
8
7
  import { u as J } from "./index-Cn_ZXVPF.js";
9
8
  import { u as Q } from "./index-B_420jYs.js";
10
9
  import { P as y } from "./index-BzgbBl8b.js";
10
+ import { c as _ } from "./utils-BOGlfttm.js";
11
11
  function W(e) {
12
12
  const t = n.useRef({ value: e, previous: e });
13
13
  return n.useMemo(() => (t.current.value !== e && (t.current.previous = t.current.value, t.current.value = e), t.current.previous), [e]);
14
14
  }
15
- var P = "Checkbox", [Y] = V(P), [Z, I] = Y(P);
16
- function ee(e) {
15
+ var R = "Checkbox", [Y] = X(R), [Z, I] = Y(R);
16
+ function $(e) {
17
17
  const {
18
18
  __scopeCheckbox: t,
19
19
  checked: o,
@@ -22,41 +22,41 @@ function ee(e) {
22
22
  disabled: r,
23
23
  form: l,
24
24
  name: k,
25
- onCheckedChange: h,
25
+ onCheckedChange: i,
26
26
  required: f,
27
- value: x = "on",
27
+ value: p = "on",
28
28
  // @ts-expect-error
29
- internal_do_not_use_render: u
29
+ internal_do_not_use_render: h
30
30
  } = e, [b, g] = J({
31
31
  prop: o,
32
32
  defaultProp: a ?? !1,
33
- onChange: h,
34
- caller: P
35
- }), [p, m] = n.useState(null), [C, c] = n.useState(null), d = n.useRef(!1), E = p ? !!l || !!p.closest("form") : (
33
+ onChange: i,
34
+ caller: R
35
+ }), [x, m] = n.useState(null), [C, c] = n.useState(null), d = n.useRef(!1), P = x ? !!l || !!x.closest("form") : (
36
36
  // We set this to true by default so that events bubble to forms without JS (SSR)
37
37
  !0
38
- ), _ = {
38
+ ), E = {
39
39
  checked: b,
40
40
  disabled: r,
41
41
  setChecked: g,
42
- control: p,
42
+ control: x,
43
43
  setControl: m,
44
44
  name: k,
45
45
  form: l,
46
- value: x,
46
+ value: p,
47
47
  hasConsumerStoppedPropagationRef: d,
48
48
  required: f,
49
49
  defaultChecked: v(a) ? !1 : a,
50
- isFormControl: E,
50
+ isFormControl: P,
51
51
  bubbleInput: C,
52
52
  setBubbleInput: c
53
53
  };
54
- return /* @__PURE__ */ i(
54
+ return /* @__PURE__ */ u(
55
55
  Z,
56
56
  {
57
57
  scope: t,
58
- ..._,
59
- children: re(u) ? u(_) : s
58
+ ...E,
59
+ children: re(h) ? h(E) : s
60
60
  }
61
61
  );
62
62
  }
@@ -66,28 +66,28 @@ var B = "CheckboxTrigger", M = n.forwardRef(
66
66
  control: r,
67
67
  value: l,
68
68
  disabled: k,
69
- checked: h,
69
+ checked: i,
70
70
  required: f,
71
- setControl: x,
72
- setChecked: u,
71
+ setControl: p,
72
+ setChecked: h,
73
73
  hasConsumerStoppedPropagationRef: b,
74
74
  isFormControl: g,
75
- bubbleInput: p
76
- } = I(B, e), m = S(a, x), C = n.useRef(h);
75
+ bubbleInput: x
76
+ } = I(B, e), m = S(a, p), C = n.useRef(i);
77
77
  return n.useEffect(() => {
78
78
  const c = r?.form;
79
79
  if (c) {
80
- const d = () => u(C.current);
80
+ const d = () => h(C.current);
81
81
  return c.addEventListener("reset", d), () => c.removeEventListener("reset", d);
82
82
  }
83
- }, [r, u]), /* @__PURE__ */ i(
83
+ }, [r, h]), /* @__PURE__ */ u(
84
84
  y.button,
85
85
  {
86
86
  type: "button",
87
87
  role: "checkbox",
88
- "aria-checked": v(h) ? "mixed" : h,
88
+ "aria-checked": v(i) ? "mixed" : i,
89
89
  "aria-required": f,
90
- "data-state": F(h),
90
+ "data-state": D(i),
91
91
  "data-disabled": k ? "" : void 0,
92
92
  disabled: k,
93
93
  value: l,
@@ -97,7 +97,7 @@ var B = "CheckboxTrigger", M = n.forwardRef(
97
97
  c.key === "Enter" && c.preventDefault();
98
98
  }),
99
99
  onClick: N(o, (c) => {
100
- u((d) => v(d) ? !0 : !d), p && g && (b.current = c.isPropagationStopped(), b.current || c.stopPropagation());
100
+ h((d) => v(d) ? !0 : !d), x && g && (b.current = c.isPropagationStopped(), b.current || c.stopPropagation());
101
101
  })
102
102
  }
103
103
  );
@@ -113,13 +113,13 @@ var T = n.forwardRef(
113
113
  defaultChecked: r,
114
114
  required: l,
115
115
  disabled: k,
116
- value: h,
116
+ value: i,
117
117
  onCheckedChange: f,
118
- form: x,
119
- ...u
118
+ form: p,
119
+ ...h
120
120
  } = e;
121
- return /* @__PURE__ */ i(
122
- ee,
121
+ return /* @__PURE__ */ u(
122
+ $,
123
123
  {
124
124
  __scopeCheckbox: o,
125
125
  checked: a,
@@ -128,19 +128,19 @@ var T = n.forwardRef(
128
128
  required: l,
129
129
  onCheckedChange: f,
130
130
  name: s,
131
- form: x,
132
- value: h,
133
- internal_do_not_use_render: ({ isFormControl: b }) => /* @__PURE__ */ z(G, { children: [
134
- /* @__PURE__ */ i(
131
+ form: p,
132
+ value: i,
133
+ internal_do_not_use_render: ({ isFormControl: b }) => /* @__PURE__ */ H(z, { children: [
134
+ /* @__PURE__ */ u(
135
135
  M,
136
136
  {
137
- ...u,
137
+ ...h,
138
138
  ref: t,
139
139
  __scopeCheckbox: o
140
140
  }
141
141
  ),
142
- b && /* @__PURE__ */ i(
143
- D,
142
+ b && /* @__PURE__ */ u(
143
+ j,
144
144
  {
145
145
  __scopeCheckbox: o
146
146
  }
@@ -150,18 +150,18 @@ var T = n.forwardRef(
150
150
  );
151
151
  }
152
152
  );
153
- T.displayName = P;
154
- var q = "CheckboxIndicator", A = n.forwardRef(
153
+ T.displayName = R;
154
+ var q = "CheckboxIndicator", ee = n.forwardRef(
155
155
  (e, t) => {
156
156
  const { __scopeCheckbox: o, forceMount: s, ...a } = e, r = I(q, o);
157
- return /* @__PURE__ */ i(
158
- $,
157
+ return /* @__PURE__ */ u(
158
+ V,
159
159
  {
160
160
  present: s || v(r.checked) || r.checked === !0,
161
- children: /* @__PURE__ */ i(
161
+ children: /* @__PURE__ */ u(
162
162
  y.span,
163
163
  {
164
- "data-state": F(r.checked),
164
+ "data-state": D(r.checked),
165
165
  "data-disabled": r.disabled ? "" : void 0,
166
166
  ...a,
167
167
  ref: t,
@@ -172,8 +172,8 @@ var q = "CheckboxIndicator", A = n.forwardRef(
172
172
  );
173
173
  }
174
174
  );
175
- A.displayName = q;
176
- var j = "CheckboxBubbleInput", D = n.forwardRef(
175
+ ee.displayName = q;
176
+ var A = "CheckboxBubbleInput", j = n.forwardRef(
177
177
  ({ __scopeCheckbox: e, ...t }, o) => {
178
178
  const {
179
179
  control: s,
@@ -181,40 +181,40 @@ var j = "CheckboxBubbleInput", D = n.forwardRef(
181
181
  checked: r,
182
182
  defaultChecked: l,
183
183
  required: k,
184
- disabled: h,
184
+ disabled: i,
185
185
  name: f,
186
- value: x,
187
- form: u,
186
+ value: p,
187
+ form: h,
188
188
  bubbleInput: b,
189
189
  setBubbleInput: g
190
- } = I(j, e), p = S(o, g), m = W(r), C = Q(s);
190
+ } = I(A, e), x = S(o, g), m = W(r), C = Q(s);
191
191
  n.useEffect(() => {
192
192
  const d = b;
193
193
  if (!d) return;
194
- const E = window.HTMLInputElement.prototype, w = Object.getOwnPropertyDescriptor(
195
- E,
194
+ const P = window.HTMLInputElement.prototype, w = Object.getOwnPropertyDescriptor(
195
+ P,
196
196
  "checked"
197
- ).set, O = !a.current;
197
+ ).set, L = !a.current;
198
198
  if (m !== r && w) {
199
- const H = new Event("click", { bubbles: O });
200
- d.indeterminate = v(r), w.call(d, v(r) ? !1 : r), d.dispatchEvent(H);
199
+ const O = new Event("click", { bubbles: L });
200
+ d.indeterminate = v(r), w.call(d, v(r) ? !1 : r), d.dispatchEvent(O);
201
201
  }
202
202
  }, [b, m, r, a]);
203
203
  const c = n.useRef(v(r) ? !1 : r);
204
- return /* @__PURE__ */ i(
204
+ return /* @__PURE__ */ u(
205
205
  y.input,
206
206
  {
207
207
  type: "checkbox",
208
208
  "aria-hidden": !0,
209
209
  defaultChecked: l ?? c.current,
210
210
  required: k,
211
- disabled: h,
211
+ disabled: i,
212
212
  name: f,
213
- value: x,
214
- form: u,
213
+ value: p,
214
+ form: h,
215
215
  ...t,
216
216
  tabIndex: -1,
217
- ref: p,
217
+ ref: x,
218
218
  style: {
219
219
  ...t.style,
220
220
  ...C,
@@ -231,36 +231,36 @@ var j = "CheckboxBubbleInput", D = n.forwardRef(
231
231
  );
232
232
  }
233
233
  );
234
- D.displayName = j;
234
+ j.displayName = A;
235
235
  function re(e) {
236
236
  return typeof e == "function";
237
237
  }
238
238
  function v(e) {
239
239
  return e === "indeterminate";
240
240
  }
241
- function F(e) {
241
+ function D(e) {
242
242
  return v(e) ? "indeterminate" : e ? "checked" : "unchecked";
243
243
  }
244
- const L = K(void 0);
244
+ const F = G(void 0);
245
245
  function ue({
246
246
  children: e,
247
247
  className: t,
248
248
  colorScheme: o = "light",
249
249
  ...s
250
250
  }) {
251
- const a = U(
251
+ const a = K(
252
252
  () => ({
253
253
  colorScheme: o
254
254
  }),
255
255
  [o]
256
256
  );
257
- return /* @__PURE__ */ i(L.Provider, { value: a, children: /* @__PURE__ */ i(
257
+ return /* @__PURE__ */ u(F.Provider, { value: a, children: /* @__PURE__ */ u(
258
258
  T,
259
259
  {
260
- className: R(
260
+ className: _(
261
261
  "peer flex h-5 w-5 items-center justify-center rounded-md border transition-colors duration-150 focus-visible:outline-0 focus-visible:ring-2 focus-visible:ring-[var(--checkbox-focus,hsl(var(--primary)))] disabled:cursor-not-allowed",
262
262
  {
263
- light: R(
263
+ light: _(
264
264
  // Disabled states
265
265
  "disabled:border-[var(--checkbox-light-disabled-border,hsl(var(--contrast-200)))] disabled:bg-[var(--checkbox-light-disabled-background,hsl(var(--contrast-100)))] disabled:text-[var(--checkbox-light-disabled-icon,hsl(var(--contrast-300)))]",
266
266
  // Normal states
@@ -270,7 +270,7 @@ function ue({
270
270
  // Invalid states
271
271
  "aria-invalid:border-[var(--checkbox-light-error,hsl(var(--error)))]"
272
272
  ),
273
- dark: R(
273
+ dark: _(
274
274
  // Disabled states
275
275
  "disabled:border-[var(--checkbox-dark-disabled-border,hsl(var(--contrast-200)))] disabled:bg-[var(--checkbox-dark-disabled-background,hsl(var(--contrast-100)))] disabled:text-[var(--checkbox-dark-disabled-icon,hsl(var(--contrast-300)))]",
276
276
  // Normal states
@@ -289,25 +289,14 @@ function ue({
289
289
  ) });
290
290
  }
291
291
  function be() {
292
- const e = X(L);
292
+ const e = U(F);
293
293
  if (e === void 0)
294
294
  throw new Error("useCheckbox must be used within an CheckboxRoot");
295
295
  return e;
296
296
  }
297
- function le({ className: e, children: t, ...o }) {
298
- return /* @__PURE__ */ i(
299
- A,
300
- {
301
- className: R(e),
302
- "data-slot": "checkbox-indicator",
303
- ...o,
304
- children: t
305
- }
306
- );
307
- }
308
297
  export {
309
298
  ue as C,
310
- le as a,
299
+ ee as a,
311
300
  be as u
312
301
  };
313
- //# sourceMappingURL=checkbox-indicator-Cfw9uH_b.js.map
302
+ //# sourceMappingURL=checkbox-root-B9W2Y8rY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-root-B9W2Y8rY.js","sources":["../node_modules/.pnpm/@radix-ui+react-use-previous@1.1.1_@types+react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-previous/dist/index.mjs","../node_modules/.pnpm/@radix-ui+react-checkbox@1.3.3_@types+react-dom@19.2.2_@types+react@19.2.2__@types+react@19.2_pia3geztaxdtc7a3vc4d2dm3y4/node_modules/@radix-ui/react-checkbox/dist/index.mjs","../src/components/checkbox/primitives/checkbox-root.tsx"],"sourcesContent":["// packages/react/use-previous/src/use-previous.tsx\nimport * as React from \"react\";\nfunction usePrevious(value) {\n const ref = React.useRef({ value, previous: value });\n return React.useMemo(() => {\n if (ref.current.value !== value) {\n ref.current.previous = ref.current.value;\n ref.current.value = value;\n }\n return ref.current.previous;\n }, [value]);\n}\nexport {\n usePrevious\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/checkbox.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar CHECKBOX_NAME = \"Checkbox\";\nvar [createCheckboxContext, createCheckboxScope] = createContextScope(CHECKBOX_NAME);\nvar [CheckboxProviderImpl, useCheckboxContext] = createCheckboxContext(CHECKBOX_NAME);\nfunction CheckboxProvider(props) {\n const {\n __scopeCheckbox,\n checked: checkedProp,\n children,\n defaultChecked,\n disabled,\n form,\n name,\n onCheckedChange,\n required,\n value = \"on\",\n // @ts-expect-error\n internal_do_not_use_render\n } = props;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: CHECKBOX_NAME\n });\n const [control, setControl] = React.useState(null);\n const [bubbleInput, setBubbleInput] = React.useState(null);\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = control ? !!form || !!control.closest(\"form\") : (\n // We set this to true by default so that events bubble to forms without JS (SSR)\n true\n );\n const context = {\n checked,\n disabled,\n setChecked,\n control,\n setControl,\n name,\n form,\n value,\n hasConsumerStoppedPropagationRef,\n required,\n defaultChecked: isIndeterminate(defaultChecked) ? false : defaultChecked,\n isFormControl,\n bubbleInput,\n setBubbleInput\n };\n return /* @__PURE__ */ jsx(\n CheckboxProviderImpl,\n {\n scope: __scopeCheckbox,\n ...context,\n children: isFunction(internal_do_not_use_render) ? internal_do_not_use_render(context) : children\n }\n );\n}\nvar TRIGGER_NAME = \"CheckboxTrigger\";\nvar CheckboxTrigger = React.forwardRef(\n ({ __scopeCheckbox, onKeyDown, onClick, ...checkboxProps }, forwardedRef) => {\n const {\n control,\n value,\n disabled,\n checked,\n required,\n setControl,\n setChecked,\n hasConsumerStoppedPropagationRef,\n isFormControl,\n bubbleInput\n } = useCheckboxContext(TRIGGER_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setControl);\n const initialCheckedStateRef = React.useRef(checked);\n React.useEffect(() => {\n const form = control?.form;\n if (form) {\n const reset = () => setChecked(initialCheckedStateRef.current);\n form.addEventListener(\"reset\", reset);\n return () => form.removeEventListener(\"reset\", reset);\n }\n }, [control, setChecked]);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"checkbox\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...checkboxProps,\n ref: composedRefs,\n onKeyDown: composeEventHandlers(onKeyDown, (event) => {\n if (event.key === \"Enter\") event.preventDefault();\n }),\n onClick: composeEventHandlers(onClick, (event) => {\n setChecked((prevChecked) => isIndeterminate(prevChecked) ? true : !prevChecked);\n if (bubbleInput && isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n );\n }\n);\nCheckboxTrigger.displayName = TRIGGER_NAME;\nvar Checkbox = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCheckbox,\n name,\n checked,\n defaultChecked,\n required,\n disabled,\n value,\n onCheckedChange,\n form,\n ...checkboxProps\n } = props;\n return /* @__PURE__ */ jsx(\n CheckboxProvider,\n {\n __scopeCheckbox,\n checked,\n defaultChecked,\n disabled,\n required,\n onCheckedChange,\n name,\n form,\n value,\n internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n CheckboxTrigger,\n {\n ...checkboxProps,\n ref: forwardedRef,\n __scopeCheckbox\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n CheckboxBubbleInput,\n {\n __scopeCheckbox\n }\n )\n ] })\n }\n );\n }\n);\nCheckbox.displayName = CHECKBOX_NAME;\nvar INDICATOR_NAME = \"CheckboxIndicator\";\nvar CheckboxIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCheckbox, forceMount, ...indicatorProps } = props;\n const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);\n return /* @__PURE__ */ jsx(\n Presence,\n {\n present: forceMount || isIndeterminate(context.checked) || context.checked === true,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...indicatorProps,\n ref: forwardedRef,\n style: { pointerEvents: \"none\", ...props.style }\n }\n )\n }\n );\n }\n);\nCheckboxIndicator.displayName = INDICATOR_NAME;\nvar BUBBLE_INPUT_NAME = \"CheckboxBubbleInput\";\nvar CheckboxBubbleInput = React.forwardRef(\n ({ __scopeCheckbox, ...props }, forwardedRef) => {\n const {\n control,\n hasConsumerStoppedPropagationRef,\n checked,\n defaultChecked,\n required,\n disabled,\n name,\n value,\n form,\n bubbleInput,\n setBubbleInput\n } = useCheckboxContext(BUBBLE_INPUT_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = bubbleInput;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n const bubbles = !hasConsumerStoppedPropagationRef.current;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n input.indeterminate = isIndeterminate(checked);\n setChecked.call(input, isIndeterminate(checked) ? false : checked);\n input.dispatchEvent(event);\n }\n }, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);\n const defaultCheckedRef = React.useRef(isIndeterminate(checked) ? false : checked);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: defaultChecked ?? defaultCheckedRef.current,\n required,\n disabled,\n name,\n value,\n form,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0,\n // We transform because the input is absolutely positioned but we have\n // rendered it **after** the button. This pulls it back to sit on top\n // of the button.\n transform: \"translateX(-100%)\"\n }\n }\n );\n }\n);\nCheckboxBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nexport {\n Checkbox,\n CheckboxIndicator,\n CheckboxIndicator as Indicator,\n Checkbox as Root,\n createCheckboxScope,\n CheckboxBubbleInput as unstable_BubbleInput,\n CheckboxBubbleInput as unstable_CheckboxBubbleInput,\n CheckboxProvider as unstable_CheckboxProvider,\n CheckboxTrigger as unstable_CheckboxTrigger,\n CheckboxProvider as unstable_Provider,\n CheckboxTrigger as unstable_Trigger\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as CheckboxPrimitive from '@radix-ui/react-checkbox';\nimport { createContext, use, useMemo } from 'react';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib/utils';\n\ninterface CheckboxContext {\n colorScheme: 'light' | 'dark';\n}\n\nexport const CheckboxContext = createContext<CheckboxContext | undefined>(undefined);\n\nexport type CheckboxRootProps = ComponentProps<typeof CheckboxPrimitive.Root> & {\n colorScheme?: 'light' | 'dark';\n};\n\nexport function CheckboxRoot({\n children,\n className,\n colorScheme = 'light',\n ...props\n}: CheckboxRootProps) {\n const contextValues = useMemo(\n () => ({\n colorScheme,\n }),\n [colorScheme],\n );\n\n return (\n <CheckboxContext.Provider value={contextValues}>\n <CheckboxPrimitive.Root\n className={cn(\n 'peer flex h-5 w-5 items-center justify-center rounded-md border transition-colors duration-150 focus-visible:outline-0 focus-visible:ring-2 focus-visible:ring-[var(--checkbox-focus,hsl(var(--primary)))] disabled:cursor-not-allowed',\n {\n light: cn(\n // Disabled states\n 'disabled:border-[var(--checkbox-light-disabled-border,hsl(var(--contrast-200)))] disabled:bg-[var(--checkbox-light-disabled-background,hsl(var(--contrast-100)))] disabled:text-[var(--checkbox-light-disabled-icon,hsl(var(--contrast-300)))]',\n // Normal states\n 'enabled:data-[state=checked]:border-[var(--checkbox-light-checked-border,hsl(var(--foreground)))] enabled:data-[state=unchecked]:border-[var(--checkbox-light-unchecked-border,hsl(var(--contrast-200)))] enabled:data-[state=checked]:bg-[var(--checkbox-light-checked-background,hsl(var(--foreground)))] enabled:data-[state=unchecked]:bg-[var(--checkbox-light-unchecked-background,hsl(var(--background)))] enabled:data-[state=checked]:text-[var(--checkbox-light-checked-text,hsl(var(--background)))] enabled:data-[state=unchecked]:text-[var(--checkbox-light-unchecked-text,hsl(var(--foreground)))]',\n // Hover states (only apply when checkbox is enabled)\n 'enabled:data-[state=checked]:hover:border-[var(--checkbox-light-checked-border-hover,hsl(var(--foreground)))] enabled:data-[state=unchecked]:hover:border-[var(--checkbox-light-unchecked-border-hover,hsl(var(--contrast-300)))]',\n // Invalid states\n 'aria-invalid:border-[var(--checkbox-light-error,hsl(var(--error)))]',\n ),\n dark: cn(\n // Disabled states\n 'disabled:border-[var(--checkbox-dark-disabled-border,hsl(var(--contrast-200)))] disabled:bg-[var(--checkbox-dark-disabled-background,hsl(var(--contrast-100)))] disabled:text-[var(--checkbox-dark-disabled-icon,hsl(var(--contrast-300)))]',\n // Normal states\n 'enabled:data-[state=checked]:border-[var(--checkbox-dark-checked-border,hsl(var(--background)))] enabled:data-[state=unchecked]:border-[var(--checkbox-dark-unchecked-border,hsl(var(--contrast-400)))] enabled:data-[state=checked]:bg-[var(--checkbox-dark-checked-background,hsl(var(--foreground)))] enabled:data-[state=unchecked]:bg-[var(--checkbox-dark-unchecked-background,hsl(var(--foreground)))] enabled:data-[state=checked]:text-[var(--checkbox-dark-checked-text,hsl(var(--background)))] enabled:data-[state=unchecked]:text-[var(--checkbox-dark-unchecked-text,hsl(var(--background)))]',\n // Hover states (only apply when checkbox is enabled)\n 'enabled:data-[state=checked]:hover:border-[var(--checkbox-dark-checked-border-hover,hsl(var(--background)))] enabled:data-[state=unchecked]:hover:border-[var(--checkbox-dark-unchecked-border-hover,hsl(var(--contrast-300)))]',\n // Invalid states\n 'aria-invalid:border-[var(--checkbox-dark-error,hsl(var(--error)))]',\n ),\n }[colorScheme],\n )}\n data-slot=\"checkbox-root\"\n {...props}\n >\n {children}\n </CheckboxPrimitive.Root>\n </CheckboxContext.Provider>\n );\n}\n\nexport function useCheckbox() {\n const context = use(CheckboxContext);\n\n if (context === undefined) {\n throw new Error('useCheckbox must be used within an CheckboxRoot');\n }\n\n return context;\n}\n"],"names":["usePrevious","value","ref","React","CHECKBOX_NAME","createCheckboxContext","createContextScope","CheckboxProviderImpl","useCheckboxContext","CheckboxProvider","props","__scopeCheckbox","checkedProp","children","defaultChecked","disabled","form","name","onCheckedChange","required","internal_do_not_use_render","checked","setChecked","useControllableState","control","setControl","bubbleInput","setBubbleInput","hasConsumerStoppedPropagationRef","isFormControl","context","isIndeterminate","jsx","isFunction","TRIGGER_NAME","CheckboxTrigger","onKeyDown","onClick","checkboxProps","forwardedRef","composedRefs","useComposedRefs","initialCheckedStateRef","reset","Primitive","getState","composeEventHandlers","event","prevChecked","Checkbox","jsxs","Fragment","CheckboxBubbleInput","INDICATOR_NAME","CheckboxIndicator","forceMount","indicatorProps","Presence","BUBBLE_INPUT_NAME","controlSize","useSize","input","inputProto","bubbles","defaultCheckedRef","CheckboxContext","createContext","CheckboxRoot","className","colorScheme","contextValues","useMemo","CheckboxPrimitive.Root","cn","useCheckbox","use"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -0,0 +1,2 @@
1
+ "use strict";const i=require("react/jsx-runtime"),R=require("react"),N=require("./index-_XxjJPRD.cjs"),S=require("./index-CnXYiTkW.cjs"),q=require("./index-BqyOu62e.cjs"),G=require("./index-BwVkw1mh.cjs"),K=require("./index-6tKkLrHE.cjs"),j=require("./index-Bw7_huW8.cjs"),E=require("./utils-LBH114_M.cjs");function U(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const c=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,c.get?c:{enumerable:!0,get:()=>e[t]})}}return r.default=e,Object.freeze(r)}const d=U(R);function X(e){const r=d.useRef({value:e,previous:e});return d.useMemo(()=>(r.current.value!==e&&(r.current.previous=r.current.value,r.current.value=e),r.current.previous),[e])}var P="Checkbox",[V]=S.createContextScope(P),[J,I]=V(P);function Q(e){const{__scopeCheckbox:r,checked:t,children:c,defaultChecked:a,disabled:o,form:b,name:k,onCheckedChange:u,required:x,value:f="on",internal_do_not_use_render:h}=e,[l,C]=G.useControllableState({prop:t,defaultProp:a??!1,onChange:u,caller:P}),[p,g]=d.useState(null),[m,n]=d.useState(null),s=d.useRef(!1),_=p?!!b||!!p.closest("form"):!0,y={checked:l,disabled:o,setChecked:C,control:p,setControl:g,name:k,form:b,value:f,hasConsumerStoppedPropagationRef:s,required:x,defaultChecked:v(a)?!1:a,isFormControl:_,bubbleInput:m,setBubbleInput:n};return i.jsx(J,{scope:r,...y,children:W(h)?h(y):c})}var M="CheckboxTrigger",O=d.forwardRef(({__scopeCheckbox:e,onKeyDown:r,onClick:t,...c},a)=>{const{control:o,value:b,disabled:k,checked:u,required:x,setControl:f,setChecked:h,hasConsumerStoppedPropagationRef:l,isFormControl:C,bubbleInput:p}=I(M,e),g=N.useComposedRefs(a,f),m=d.useRef(u);return d.useEffect(()=>{const n=o?.form;if(n){const s=()=>h(m.current);return n.addEventListener("reset",s),()=>n.removeEventListener("reset",s)}},[o,h]),i.jsx(j.Primitive.button,{type:"button",role:"checkbox","aria-checked":v(u)?"mixed":u,"aria-required":x,"data-state":F(u),"data-disabled":k?"":void 0,disabled:k,value:b,...c,ref:g,onKeyDown:q.composeEventHandlers(r,n=>{n.key==="Enter"&&n.preventDefault()}),onClick:q.composeEventHandlers(t,n=>{h(s=>v(s)?!0:!s),p&&C&&(l.current=n.isPropagationStopped(),l.current||n.stopPropagation())})})});O.displayName=M;var B=d.forwardRef((e,r)=>{const{__scopeCheckbox:t,name:c,checked:a,defaultChecked:o,required:b,disabled:k,value:u,onCheckedChange:x,form:f,...h}=e;return i.jsx(Q,{__scopeCheckbox:t,checked:a,defaultChecked:o,disabled:k,required:b,onCheckedChange:x,name:c,form:f,value:u,internal_do_not_use_render:({isFormControl:l})=>i.jsxs(i.Fragment,{children:[i.jsx(O,{...h,ref:r,__scopeCheckbox:t}),l&&i.jsx($,{__scopeCheckbox:t})]})})});B.displayName=P;var T="CheckboxIndicator",D=d.forwardRef((e,r)=>{const{__scopeCheckbox:t,forceMount:c,...a}=e,o=I(T,t);return i.jsx(S.Presence,{present:c||v(o.checked)||o.checked===!0,children:i.jsx(j.Primitive.span,{"data-state":F(o.checked),"data-disabled":o.disabled?"":void 0,...a,ref:r,style:{pointerEvents:"none",...e.style}})})});D.displayName=T;var A="CheckboxBubbleInput",$=d.forwardRef(({__scopeCheckbox:e,...r},t)=>{const{control:c,hasConsumerStoppedPropagationRef:a,checked:o,defaultChecked:b,required:k,disabled:u,name:x,value:f,form:h,bubbleInput:l,setBubbleInput:C}=I(A,e),p=N.useComposedRefs(t,C),g=X(o),m=K.useSize(c);d.useEffect(()=>{const s=l;if(!s)return;const _=window.HTMLInputElement.prototype,w=Object.getOwnPropertyDescriptor(_,"checked").set,L=!a.current;if(g!==o&&w){const z=new Event("click",{bubbles:L});s.indeterminate=v(o),w.call(s,v(o)?!1:o),s.dispatchEvent(z)}},[l,g,o,a]);const n=d.useRef(v(o)?!1:o);return i.jsx(j.Primitive.input,{type:"checkbox","aria-hidden":!0,defaultChecked:b??n.current,required:k,disabled:u,name:x,value:f,form:h,...r,tabIndex:-1,ref:p,style:{...r.style,...m,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});$.displayName=A;function W(e){return typeof e=="function"}function v(e){return e==="indeterminate"}function F(e){return v(e)?"indeterminate":e?"checked":"unchecked"}const H=R.createContext(void 0);function Y({children:e,className:r,colorScheme:t="light",...c}){const a=R.useMemo(()=>({colorScheme:t}),[t]);return i.jsx(H.Provider,{value:a,children:i.jsx(B,{className:E.cn("peer flex h-5 w-5 items-center justify-center rounded-md border transition-colors duration-150 focus-visible:outline-0 focus-visible:ring-2 focus-visible:ring-[var(--checkbox-focus,hsl(var(--primary)))] disabled:cursor-not-allowed",{light:E.cn("disabled:border-[var(--checkbox-light-disabled-border,hsl(var(--contrast-200)))] disabled:bg-[var(--checkbox-light-disabled-background,hsl(var(--contrast-100)))] disabled:text-[var(--checkbox-light-disabled-icon,hsl(var(--contrast-300)))]","enabled:data-[state=checked]:border-[var(--checkbox-light-checked-border,hsl(var(--foreground)))] enabled:data-[state=unchecked]:border-[var(--checkbox-light-unchecked-border,hsl(var(--contrast-200)))] enabled:data-[state=checked]:bg-[var(--checkbox-light-checked-background,hsl(var(--foreground)))] enabled:data-[state=unchecked]:bg-[var(--checkbox-light-unchecked-background,hsl(var(--background)))] enabled:data-[state=checked]:text-[var(--checkbox-light-checked-text,hsl(var(--background)))] enabled:data-[state=unchecked]:text-[var(--checkbox-light-unchecked-text,hsl(var(--foreground)))]","enabled:data-[state=checked]:hover:border-[var(--checkbox-light-checked-border-hover,hsl(var(--foreground)))] enabled:data-[state=unchecked]:hover:border-[var(--checkbox-light-unchecked-border-hover,hsl(var(--contrast-300)))]","aria-invalid:border-[var(--checkbox-light-error,hsl(var(--error)))]"),dark:E.cn("disabled:border-[var(--checkbox-dark-disabled-border,hsl(var(--contrast-200)))] disabled:bg-[var(--checkbox-dark-disabled-background,hsl(var(--contrast-100)))] disabled:text-[var(--checkbox-dark-disabled-icon,hsl(var(--contrast-300)))]","enabled:data-[state=checked]:border-[var(--checkbox-dark-checked-border,hsl(var(--background)))] enabled:data-[state=unchecked]:border-[var(--checkbox-dark-unchecked-border,hsl(var(--contrast-400)))] enabled:data-[state=checked]:bg-[var(--checkbox-dark-checked-background,hsl(var(--foreground)))] enabled:data-[state=unchecked]:bg-[var(--checkbox-dark-unchecked-background,hsl(var(--foreground)))] enabled:data-[state=checked]:text-[var(--checkbox-dark-checked-text,hsl(var(--background)))] enabled:data-[state=unchecked]:text-[var(--checkbox-dark-unchecked-text,hsl(var(--background)))]","enabled:data-[state=checked]:hover:border-[var(--checkbox-dark-checked-border-hover,hsl(var(--background)))] enabled:data-[state=unchecked]:hover:border-[var(--checkbox-dark-unchecked-border-hover,hsl(var(--contrast-300)))]","aria-invalid:border-[var(--checkbox-dark-error,hsl(var(--error)))]")}[t]),"data-slot":"checkbox-root",...c,children:e})})}function Z(){const e=R.use(H);if(e===void 0)throw new Error("useCheckbox must be used within an CheckboxRoot");return e}exports.CheckboxIndicator=D;exports.CheckboxRoot=Y;exports.useCheckbox=Z;
2
+ //# sourceMappingURL=checkbox-root-g9HcYZCP.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-root-g9HcYZCP.cjs","sources":["../node_modules/.pnpm/@radix-ui+react-use-previous@1.1.1_@types+react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-previous/dist/index.mjs","../node_modules/.pnpm/@radix-ui+react-checkbox@1.3.3_@types+react-dom@19.2.2_@types+react@19.2.2__@types+react@19.2_pia3geztaxdtc7a3vc4d2dm3y4/node_modules/@radix-ui/react-checkbox/dist/index.mjs","../src/components/checkbox/primitives/checkbox-root.tsx"],"sourcesContent":["// packages/react/use-previous/src/use-previous.tsx\nimport * as React from \"react\";\nfunction usePrevious(value) {\n const ref = React.useRef({ value, previous: value });\n return React.useMemo(() => {\n if (ref.current.value !== value) {\n ref.current.previous = ref.current.value;\n ref.current.value = value;\n }\n return ref.current.previous;\n }, [value]);\n}\nexport {\n usePrevious\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/checkbox.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar CHECKBOX_NAME = \"Checkbox\";\nvar [createCheckboxContext, createCheckboxScope] = createContextScope(CHECKBOX_NAME);\nvar [CheckboxProviderImpl, useCheckboxContext] = createCheckboxContext(CHECKBOX_NAME);\nfunction CheckboxProvider(props) {\n const {\n __scopeCheckbox,\n checked: checkedProp,\n children,\n defaultChecked,\n disabled,\n form,\n name,\n onCheckedChange,\n required,\n value = \"on\",\n // @ts-expect-error\n internal_do_not_use_render\n } = props;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: CHECKBOX_NAME\n });\n const [control, setControl] = React.useState(null);\n const [bubbleInput, setBubbleInput] = React.useState(null);\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = control ? !!form || !!control.closest(\"form\") : (\n // We set this to true by default so that events bubble to forms without JS (SSR)\n true\n );\n const context = {\n checked,\n disabled,\n setChecked,\n control,\n setControl,\n name,\n form,\n value,\n hasConsumerStoppedPropagationRef,\n required,\n defaultChecked: isIndeterminate(defaultChecked) ? false : defaultChecked,\n isFormControl,\n bubbleInput,\n setBubbleInput\n };\n return /* @__PURE__ */ jsx(\n CheckboxProviderImpl,\n {\n scope: __scopeCheckbox,\n ...context,\n children: isFunction(internal_do_not_use_render) ? internal_do_not_use_render(context) : children\n }\n );\n}\nvar TRIGGER_NAME = \"CheckboxTrigger\";\nvar CheckboxTrigger = React.forwardRef(\n ({ __scopeCheckbox, onKeyDown, onClick, ...checkboxProps }, forwardedRef) => {\n const {\n control,\n value,\n disabled,\n checked,\n required,\n setControl,\n setChecked,\n hasConsumerStoppedPropagationRef,\n isFormControl,\n bubbleInput\n } = useCheckboxContext(TRIGGER_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setControl);\n const initialCheckedStateRef = React.useRef(checked);\n React.useEffect(() => {\n const form = control?.form;\n if (form) {\n const reset = () => setChecked(initialCheckedStateRef.current);\n form.addEventListener(\"reset\", reset);\n return () => form.removeEventListener(\"reset\", reset);\n }\n }, [control, setChecked]);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"checkbox\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...checkboxProps,\n ref: composedRefs,\n onKeyDown: composeEventHandlers(onKeyDown, (event) => {\n if (event.key === \"Enter\") event.preventDefault();\n }),\n onClick: composeEventHandlers(onClick, (event) => {\n setChecked((prevChecked) => isIndeterminate(prevChecked) ? true : !prevChecked);\n if (bubbleInput && isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n );\n }\n);\nCheckboxTrigger.displayName = TRIGGER_NAME;\nvar Checkbox = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCheckbox,\n name,\n checked,\n defaultChecked,\n required,\n disabled,\n value,\n onCheckedChange,\n form,\n ...checkboxProps\n } = props;\n return /* @__PURE__ */ jsx(\n CheckboxProvider,\n {\n __scopeCheckbox,\n checked,\n defaultChecked,\n disabled,\n required,\n onCheckedChange,\n name,\n form,\n value,\n internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n CheckboxTrigger,\n {\n ...checkboxProps,\n ref: forwardedRef,\n __scopeCheckbox\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n CheckboxBubbleInput,\n {\n __scopeCheckbox\n }\n )\n ] })\n }\n );\n }\n);\nCheckbox.displayName = CHECKBOX_NAME;\nvar INDICATOR_NAME = \"CheckboxIndicator\";\nvar CheckboxIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCheckbox, forceMount, ...indicatorProps } = props;\n const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);\n return /* @__PURE__ */ jsx(\n Presence,\n {\n present: forceMount || isIndeterminate(context.checked) || context.checked === true,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...indicatorProps,\n ref: forwardedRef,\n style: { pointerEvents: \"none\", ...props.style }\n }\n )\n }\n );\n }\n);\nCheckboxIndicator.displayName = INDICATOR_NAME;\nvar BUBBLE_INPUT_NAME = \"CheckboxBubbleInput\";\nvar CheckboxBubbleInput = React.forwardRef(\n ({ __scopeCheckbox, ...props }, forwardedRef) => {\n const {\n control,\n hasConsumerStoppedPropagationRef,\n checked,\n defaultChecked,\n required,\n disabled,\n name,\n value,\n form,\n bubbleInput,\n setBubbleInput\n } = useCheckboxContext(BUBBLE_INPUT_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = bubbleInput;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n const bubbles = !hasConsumerStoppedPropagationRef.current;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n input.indeterminate = isIndeterminate(checked);\n setChecked.call(input, isIndeterminate(checked) ? false : checked);\n input.dispatchEvent(event);\n }\n }, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);\n const defaultCheckedRef = React.useRef(isIndeterminate(checked) ? false : checked);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: defaultChecked ?? defaultCheckedRef.current,\n required,\n disabled,\n name,\n value,\n form,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0,\n // We transform because the input is absolutely positioned but we have\n // rendered it **after** the button. This pulls it back to sit on top\n // of the button.\n transform: \"translateX(-100%)\"\n }\n }\n );\n }\n);\nCheckboxBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nexport {\n Checkbox,\n CheckboxIndicator,\n CheckboxIndicator as Indicator,\n Checkbox as Root,\n createCheckboxScope,\n CheckboxBubbleInput as unstable_BubbleInput,\n CheckboxBubbleInput as unstable_CheckboxBubbleInput,\n CheckboxProvider as unstable_CheckboxProvider,\n CheckboxTrigger as unstable_CheckboxTrigger,\n CheckboxProvider as unstable_Provider,\n CheckboxTrigger as unstable_Trigger\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as CheckboxPrimitive from '@radix-ui/react-checkbox';\nimport { createContext, use, useMemo } from 'react';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib/utils';\n\ninterface CheckboxContext {\n colorScheme: 'light' | 'dark';\n}\n\nexport const CheckboxContext = createContext<CheckboxContext | undefined>(undefined);\n\nexport type CheckboxRootProps = ComponentProps<typeof CheckboxPrimitive.Root> & {\n colorScheme?: 'light' | 'dark';\n};\n\nexport function CheckboxRoot({\n children,\n className,\n colorScheme = 'light',\n ...props\n}: CheckboxRootProps) {\n const contextValues = useMemo(\n () => ({\n colorScheme,\n }),\n [colorScheme],\n );\n\n return (\n <CheckboxContext.Provider value={contextValues}>\n <CheckboxPrimitive.Root\n className={cn(\n 'peer flex h-5 w-5 items-center justify-center rounded-md border transition-colors duration-150 focus-visible:outline-0 focus-visible:ring-2 focus-visible:ring-[var(--checkbox-focus,hsl(var(--primary)))] disabled:cursor-not-allowed',\n {\n light: cn(\n // Disabled states\n 'disabled:border-[var(--checkbox-light-disabled-border,hsl(var(--contrast-200)))] disabled:bg-[var(--checkbox-light-disabled-background,hsl(var(--contrast-100)))] disabled:text-[var(--checkbox-light-disabled-icon,hsl(var(--contrast-300)))]',\n // Normal states\n 'enabled:data-[state=checked]:border-[var(--checkbox-light-checked-border,hsl(var(--foreground)))] enabled:data-[state=unchecked]:border-[var(--checkbox-light-unchecked-border,hsl(var(--contrast-200)))] enabled:data-[state=checked]:bg-[var(--checkbox-light-checked-background,hsl(var(--foreground)))] enabled:data-[state=unchecked]:bg-[var(--checkbox-light-unchecked-background,hsl(var(--background)))] enabled:data-[state=checked]:text-[var(--checkbox-light-checked-text,hsl(var(--background)))] enabled:data-[state=unchecked]:text-[var(--checkbox-light-unchecked-text,hsl(var(--foreground)))]',\n // Hover states (only apply when checkbox is enabled)\n 'enabled:data-[state=checked]:hover:border-[var(--checkbox-light-checked-border-hover,hsl(var(--foreground)))] enabled:data-[state=unchecked]:hover:border-[var(--checkbox-light-unchecked-border-hover,hsl(var(--contrast-300)))]',\n // Invalid states\n 'aria-invalid:border-[var(--checkbox-light-error,hsl(var(--error)))]',\n ),\n dark: cn(\n // Disabled states\n 'disabled:border-[var(--checkbox-dark-disabled-border,hsl(var(--contrast-200)))] disabled:bg-[var(--checkbox-dark-disabled-background,hsl(var(--contrast-100)))] disabled:text-[var(--checkbox-dark-disabled-icon,hsl(var(--contrast-300)))]',\n // Normal states\n 'enabled:data-[state=checked]:border-[var(--checkbox-dark-checked-border,hsl(var(--background)))] enabled:data-[state=unchecked]:border-[var(--checkbox-dark-unchecked-border,hsl(var(--contrast-400)))] enabled:data-[state=checked]:bg-[var(--checkbox-dark-checked-background,hsl(var(--foreground)))] enabled:data-[state=unchecked]:bg-[var(--checkbox-dark-unchecked-background,hsl(var(--foreground)))] enabled:data-[state=checked]:text-[var(--checkbox-dark-checked-text,hsl(var(--background)))] enabled:data-[state=unchecked]:text-[var(--checkbox-dark-unchecked-text,hsl(var(--background)))]',\n // Hover states (only apply when checkbox is enabled)\n 'enabled:data-[state=checked]:hover:border-[var(--checkbox-dark-checked-border-hover,hsl(var(--background)))] enabled:data-[state=unchecked]:hover:border-[var(--checkbox-dark-unchecked-border-hover,hsl(var(--contrast-300)))]',\n // Invalid states\n 'aria-invalid:border-[var(--checkbox-dark-error,hsl(var(--error)))]',\n ),\n }[colorScheme],\n )}\n data-slot=\"checkbox-root\"\n {...props}\n >\n {children}\n </CheckboxPrimitive.Root>\n </CheckboxContext.Provider>\n );\n}\n\nexport function useCheckbox() {\n const context = use(CheckboxContext);\n\n if (context === undefined) {\n throw new Error('useCheckbox must be used within an CheckboxRoot');\n }\n\n return context;\n}\n"],"names":["usePrevious","value","ref","React","CHECKBOX_NAME","createCheckboxContext","createContextScope","CheckboxProviderImpl","useCheckboxContext","CheckboxProvider","props","__scopeCheckbox","checkedProp","children","defaultChecked","disabled","form","name","onCheckedChange","required","internal_do_not_use_render","checked","setChecked","useControllableState","control","setControl","bubbleInput","setBubbleInput","hasConsumerStoppedPropagationRef","isFormControl","context","isIndeterminate","jsx","isFunction","TRIGGER_NAME","CheckboxTrigger","onKeyDown","onClick","checkboxProps","forwardedRef","composedRefs","useComposedRefs","initialCheckedStateRef","reset","Primitive","getState","composeEventHandlers","event","prevChecked","Checkbox","jsxs","Fragment","CheckboxBubbleInput","INDICATOR_NAME","CheckboxIndicator","forceMount","indicatorProps","Presence","BUBBLE_INPUT_NAME","controlSize","useSize","input","inputProto","bubbles","defaultCheckedRef","CheckboxContext","createContext","CheckboxRoot","className","colorScheme","contextValues","useMemo","CheckboxPrimitive.Root","cn","useCheckbox","use"],"mappings":"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","x_google_ignoreList":[0,1]}
package/dist/checkbox.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./checkbox-indicator-BgXRGvAh.cjs");exports.Indicator=o.CheckboxIndicator;exports.Root=o.CheckboxRoot;exports.useCheckbox=o.useCheckbox;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./checkbox-root-g9HcYZCP.cjs"),e=require("./checkbox-indicator-GNoyS6OL.cjs");exports.Root=o.CheckboxRoot;exports.useCheckbox=o.useCheckbox;exports.Indicator=e.CheckboxIndicator;
2
2
  //# sourceMappingURL=checkbox.cjs.map
package/dist/checkbox.js CHANGED
@@ -1,7 +1,8 @@
1
- import { a as s, C as e, u as r } from "./checkbox-indicator-Cfw9uH_b.js";
1
+ import { C as a, u as e } from "./checkbox-root-B9W2Y8rY.js";
2
+ import { C as t } from "./checkbox-indicator-os50dewx.js";
2
3
  export {
3
- s as Indicator,
4
- e as Root,
5
- r as useCheckbox
4
+ t as Indicator,
5
+ a as Root,
6
+ e as useCheckbox
6
7
  };
7
8
  //# sourceMappingURL=checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"checkbox.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}