UNPKG

@arolariu/components

Version:

A collection of reusable components for React applications, built as ESM & CJS modules with tree shake, minify and bundler optimizations enabled, for the lowest bundle size (import cost)! 😍

1 lines 3.14 kB
{"version":3,"file":"components\\ui\\toggle-group.cjs","sources":["webpack://@arolariu/components/./src/components/ui/toggle-group.tsx"],"sourcesContent":["\n\nimport * as React from \"react\";\nimport * as ToggleGroupPrimitive from \"@radix-ui/react-toggle-group\";\nimport { type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\nimport { toggleVariants } from \"@/components/ui/toggle\";\n\nconst ToggleGroupContext = React.createContext<\n VariantProps<typeof toggleVariants>\n>({\n size: \"default\",\n variant: \"default\",\n});\n\nfunction ToggleGroup({\n className,\n variant,\n size,\n children,\n ...props\n}: React.ComponentProps<typeof ToggleGroupPrimitive.Root> &\n VariantProps<typeof toggleVariants>) {\n return (\n <ToggleGroupPrimitive.Root\n data-slot=\"toggle-group\"\n data-variant={variant}\n data-size={size}\n className={cn(\n \"group/toggle-group flex w-fit items-center rounded-md data-[variant=outline]:shadow-xs\",\n className\n )}\n {...props}\n >\n <ToggleGroupContext.Provider value={{ variant, size }}>\n {children}\n </ToggleGroupContext.Provider>\n </ToggleGroupPrimitive.Root>\n );\n}\n\nfunction ToggleGroupItem({\n className,\n children,\n variant,\n size,\n ...props\n}: React.ComponentProps<typeof ToggleGroupPrimitive.Item> &\n VariantProps<typeof toggleVariants>) {\n const context = React.useContext(ToggleGroupContext);\n\n return (\n <ToggleGroupPrimitive.Item\n data-slot=\"toggle-group-item\"\n data-variant={context.variant || variant}\n data-size={context.size || size}\n className={cn(\n toggleVariants({\n variant: context.variant || variant,\n size: context.size || size,\n }),\n \"min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l\",\n className\n )}\n {...props}\n >\n {children}\n </ToggleGroupPrimitive.Item>\n );\n}\n\nexport { ToggleGroup, ToggleGroupItem };\n"],"names":["ToggleGroupContext","React","ToggleGroup","className","variant","size","children","props","ToggleGroupPrimitive","cn","ToggleGroupItem","context","toggleVariants"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,MAAMA,qBAAqB,WAArBA,GAAqBC,+BAAAA,aAAmB,CAE5C;IACA,MAAM;IACN,SAAS;AACX;AAEA,SAASC,YAAY,EACnBC,SAAS,EACTC,OAAO,EACPC,IAAI,EACJC,QAAQ,EACR,GAAGC,OAEgC;IACnC,OACE,WADF,GACE,qCAACC,mCAAAA,IAAyB;QACxB,aAAU;QACV,gBAAcJ;QACd,aAAWC;QACX,WAAWI,IAAAA,0BAAAA,EAAAA,EACT,0FACAN;QAED,GAAGI,KAAK;kBAET,mDAACP,mBAAmB,QAAQ;YAAC,OAAO;gBAAEI;gBAASC;YAAK;sBACjDC;;;AAIT;AAEA,SAASI,gBAAgB,EACvBP,SAAS,EACTG,QAAQ,EACRF,OAAO,EACPC,IAAI,EACJ,GAAGE,OAEgC;IACnC,MAAMI,UAAUV,+BAAAA,UAAgB,CAACD;IAEjC,OACE,WADF,GACE,qCAACQ,mCAAAA,IAAyB;QACxB,aAAU;QACV,gBAAcG,QAAQ,OAAO,IAAIP;QACjC,aAAWO,QAAQ,IAAI,IAAIN;QAC3B,WAAWI,IAAAA,0BAAAA,EAAAA,EACTG,IAAAA,oCAAAA,cAAAA,EAAe;YACb,SAASD,QAAQ,OAAO,IAAIP;YAC5B,MAAMO,QAAQ,IAAI,IAAIN;QACxB,IACA,+LACAF;QAED,GAAGI,KAAK;kBAERD;;AAGP"}