ixia-ui-react 2.0.0 → 2.1.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.
- package/dist/alert-dialog/index.js +1 -1
- package/dist/bento-box/index.js +1 -1
- package/dist/bento-box/index.js.map +1 -1
- package/dist/button/index.d.ts +1 -1
- package/dist/button/index.js +1 -1
- package/dist/{button-BpUC-R1J.js → button-DXQvyQyj.js} +7 -5
- package/dist/button-DXQvyQyj.js.map +1 -0
- package/dist/button-group/index.d.ts +1 -1
- package/dist/button-group/index.js +1 -1
- package/dist/button-group-BiSk3iIf.js +269 -0
- package/dist/button-group-BiSk3iIf.js.map +1 -0
- package/dist/button-group-context-CScS9Ntz.js +7 -0
- package/dist/button-group-context-CScS9Ntz.js.map +1 -0
- package/dist/calendar/index.js +1 -1
- package/dist/code-block/index.d.ts +5 -2
- package/dist/code-block/index.js +9 -24
- package/dist/code-block/index.js.map +1 -1
- package/dist/collapsible/index.d.ts +1 -1
- package/dist/collapsible/index.js +1 -1
- package/dist/{collapsible-BVqrh0Q0.js → collapsible-C3OPWY9l.js} +2 -2
- package/dist/{collapsible-BVqrh0Q0.js.map → collapsible-C3OPWY9l.js.map} +1 -1
- package/dist/color-picker/index.js +1 -1
- package/dist/combobox/index.js +1 -1
- package/dist/copy-button/index.d.ts +2 -0
- package/dist/copy-button/index.js +1 -0
- package/dist/copy-button-BAG-P44v.js +28 -0
- package/dist/copy-button-BAG-P44v.js.map +1 -0
- package/dist/dialog/index.js +1 -1
- package/dist/dropzone/index.d.ts +1 -1
- package/dist/dropzone/index.js +1 -1
- package/dist/field/index.js +1 -1
- package/dist/{field-DTL7eA5y.js → field-DkMfrmdj.js} +2 -2
- package/dist/{field-DTL7eA5y.js.map → field-DkMfrmdj.js.map} +1 -1
- package/dist/form/index.d.ts +1 -1
- package/dist/form/index.js +2 -2
- package/dist/{form-BxMg796f.js → form-V2VqHn0D.js} +3 -3
- package/dist/{form-BxMg796f.js.map → form-V2VqHn0D.js.map} +1 -1
- package/dist/{index-DfNHJF0t.d.ts → index-B0Qz4Egw.d.ts} +2 -2
- package/dist/{index-B3MK1QYh.d.ts → index-CpNMNewO.d.ts} +3 -3
- package/dist/index-DVMheqs_.d.ts +9 -0
- package/dist/{index-N2CBSUDu.d.ts → index-DXDObRKO.d.ts} +2 -2
- package/dist/index-uaJUy56Z.d.ts +4 -0
- package/dist/input/index.js +1 -1
- package/dist/{input-Laj6dwtK.js → input-Czt30vp7.js} +2 -2
- package/dist/{input-Laj6dwtK.js.map → input-Czt30vp7.js.map} +1 -1
- package/dist/layer-tree/index.d.ts +1 -1
- package/dist/layer-tree/index.js +1 -1
- package/dist/map/google/index.d.ts +2 -2
- package/dist/map/google/index.js +2 -2
- package/dist/map/index.d.ts +2 -2
- package/dist/map/index.js +2 -2
- package/dist/number-field/index.js +1 -1
- package/dist/popover/index.d.ts +1 -1
- package/dist/popover/index.js +1 -1
- package/dist/{popover-B1s4xXrX.js → popover-0WDxRi-s.js} +2 -2
- package/dist/{popover-B1s4xXrX.js.map → popover-0WDxRi-s.js.map} +1 -1
- package/dist/sidebar/index.d.ts +2 -2
- package/dist/sidebar/index.js +4 -4
- package/dist/sidebar/index.js.map +1 -1
- package/dist/slider-group/index.js +1 -1
- package/dist/table/index.d.ts +1 -1
- package/dist/table/index.js +4 -4
- package/dist/toast/index.js +1 -1
- package/package.json +1 -1
- package/dist/button-BpUC-R1J.js.map +0 -1
- package/dist/button-group-7azbqlcO.js +0 -269
- package/dist/button-group-7azbqlcO.js.map +0 -1
- package/dist/index-bVyqfhJS.d.ts +0 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as cn } from "../cn-BDi0DfT5.js";
|
|
2
|
-
import { t as Button$1 } from "../button-
|
|
2
|
+
import { t as Button$1 } from "../button-DXQvyQyj.js";
|
|
3
3
|
import { cva } from "class-variance-authority";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { isValidElement } from "react";
|
package/dist/bento-box/index.js
CHANGED
|
@@ -28,7 +28,7 @@ const bentoBoxVariants = cva("group/box flex size-full min-h-0 flex-col overflow
|
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
// src/components/bento-box/bento-box.tsx
|
|
31
|
-
function BentoBox$1({ elevation, fill, size, className, ref, ...props }) {
|
|
31
|
+
function BentoBox$1({ elevation, fill, size = "medium", className, ref, ...props }) {
|
|
32
32
|
return /* @__PURE__ */ jsx("div", {
|
|
33
33
|
"data-size": size,
|
|
34
34
|
className: cn(bentoBoxVariants({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["BentoBox","BentoBoxRoot"],"sources":["../../src/components/bento-box/bento-box.types.ts","../../src/components/bento-box/bento-box.tsx","../../src/components/bento-box/bento-box-action.tsx","../../src/components/bento-box/bento-box-content.tsx","../../src/components/bento-box/bento-box-description.tsx","../../src/components/bento-box/bento-box-footer.tsx","../../src/components/bento-box/bento-box-header.tsx","../../src/components/bento-box/bento-box-title.tsx","../../src/components/bento-box/index.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\nimport type { VariantProps } from 'class-variance-authority'\n\nconst bentoBoxVariants = cva(\n 'group/box flex size-full min-h-0 flex-col overflow-hidden border border-border bg-surface',\n {\n defaultVariants: {\n elevation: 'medium',\n fill: false,\n size: 'medium',\n },\n variants: {\n elevation: {\n high: 'shadow-sm',\n low: 'shadow-2xs',\n medium: 'shadow-xs',\n none: '',\n veryHigh: 'shadow-md',\n },\n fill: {\n false: '',\n true: 'p-0!',\n },\n size: {\n large: 'gap-md rounded-3xl p-lg',\n medium: 'gap-sm rounded-2xl p-md',\n small: 'gap-xs rounded-xl p-sm',\n },\n },\n },\n)\n\ntype BentoBoxProps = React.ComponentProps<'div'> & VariantProps<typeof bentoBoxVariants>\ntype BentoBoxHeaderProps = React.ComponentProps<'div'>\ntype BentoBoxTitleProps = React.ComponentProps<'span'>\ntype BentoBoxContentProps = React.ComponentProps<'div'>\ntype BentoBoxDescriptionProps = React.ComponentProps<'span'>\ntype BentoBoxActionProps = React.ComponentProps<'div'>\ntype BentoBoxFooterProps = React.ComponentProps<'div'>\n\nexport type {\n BentoBoxProps,\n BentoBoxHeaderProps,\n BentoBoxTitleProps,\n BentoBoxContentProps,\n BentoBoxDescriptionProps,\n BentoBoxActionProps,\n BentoBoxFooterProps,\n}\nexport { bentoBoxVariants }\n","import { cn } from '@/utils/cn'\n\nimport { bentoBoxVariants } from './bento-box.types'\nimport type { BentoBoxProps } from './bento-box.types'\n\nexport function BentoBox({
|
|
1
|
+
{"version":3,"file":"index.js","names":["BentoBox","BentoBoxRoot"],"sources":["../../src/components/bento-box/bento-box.types.ts","../../src/components/bento-box/bento-box.tsx","../../src/components/bento-box/bento-box-action.tsx","../../src/components/bento-box/bento-box-content.tsx","../../src/components/bento-box/bento-box-description.tsx","../../src/components/bento-box/bento-box-footer.tsx","../../src/components/bento-box/bento-box-header.tsx","../../src/components/bento-box/bento-box-title.tsx","../../src/components/bento-box/index.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\nimport type { VariantProps } from 'class-variance-authority'\n\nconst bentoBoxVariants = cva(\n 'group/box flex size-full min-h-0 flex-col overflow-hidden border border-border bg-surface',\n {\n defaultVariants: {\n elevation: 'medium',\n fill: false,\n size: 'medium',\n },\n variants: {\n elevation: {\n high: 'shadow-sm',\n low: 'shadow-2xs',\n medium: 'shadow-xs',\n none: '',\n veryHigh: 'shadow-md',\n },\n fill: {\n false: '',\n true: 'p-0!',\n },\n size: {\n large: 'gap-md rounded-3xl p-lg',\n medium: 'gap-sm rounded-2xl p-md',\n small: 'gap-xs rounded-xl p-sm',\n },\n },\n },\n)\n\ntype BentoBoxProps = React.ComponentProps<'div'> & VariantProps<typeof bentoBoxVariants>\ntype BentoBoxHeaderProps = React.ComponentProps<'div'>\ntype BentoBoxTitleProps = React.ComponentProps<'span'>\ntype BentoBoxContentProps = React.ComponentProps<'div'>\ntype BentoBoxDescriptionProps = React.ComponentProps<'span'>\ntype BentoBoxActionProps = React.ComponentProps<'div'>\ntype BentoBoxFooterProps = React.ComponentProps<'div'>\n\nexport type {\n BentoBoxProps,\n BentoBoxHeaderProps,\n BentoBoxTitleProps,\n BentoBoxContentProps,\n BentoBoxDescriptionProps,\n BentoBoxActionProps,\n BentoBoxFooterProps,\n}\nexport { bentoBoxVariants }\n","import { cn } from '@/utils/cn'\n\nimport { bentoBoxVariants } from './bento-box.types'\nimport type { BentoBoxProps } from './bento-box.types'\n\nexport function BentoBox({\n elevation,\n fill,\n size = 'medium',\n className,\n ref,\n ...props\n}: BentoBoxProps) {\n return (\n <div\n data-size={size}\n className={cn(bentoBoxVariants({ className, elevation, fill, size }))}\n ref={ref}\n {...props}\n />\n )\n}\n","import { cn } from '@/utils/cn'\n\nimport type { BentoBoxActionProps } from './bento-box.types'\n\nexport function BentoBoxAction({ className, ref, ...props }: BentoBoxActionProps) {\n return (\n <div\n className={cn(\n 'col-start-2 row-span-2 row-start-1 self-start justify-self-end pl-lg',\n className,\n )}\n ref={ref}\n {...props}\n />\n )\n}\n","import { cn } from '@/utils/cn'\n\nimport type { BentoBoxContentProps } from './bento-box.types'\n\nexport function BentoBoxContent({ className, ref, ...props }: BentoBoxContentProps) {\n return (\n <div className={cn('flex min-h-0 flex-1 flex-col gap-3xs', className)} ref={ref} {...props} />\n )\n}\n","import { cn } from '@/utils/cn'\n\nimport type { BentoBoxDescriptionProps } from './bento-box.types'\n\nexport function BentoBoxDescription({ className, ref, ...props }: BentoBoxDescriptionProps) {\n return (\n <span\n className={cn(\n 'text-on-surface-variant group-data-[size=large]/box:style-text-prose-0 group-data-[size=medium]/box:style-text-prose--1 group-data-[size=small]/box:style-text-prose--2',\n className,\n )}\n ref={ref}\n {...props}\n />\n )\n}\n","import { cn } from '@/utils/cn'\n\nimport type { BentoBoxFooterProps } from './bento-box.types'\n\nexport function BentoBoxFooter({ className, ref, ...props }: BentoBoxFooterProps) {\n return (\n <div\n className={cn(\n 'mt-auto flex flex-wrap items-center justify-start gap-sm not-first:group-data-[size=large]/box:gap-lg not-first:group-data-[size=medium]/box:gap-md group-data-[size=small]/box:gap-sm',\n className,\n )}\n ref={ref}\n {...props}\n />\n )\n}\n","import { cn } from '@/utils/cn'\n\nimport type { BentoBoxHeaderProps } from './bento-box.types'\n\nexport function BentoBoxHeader({ className, ref, ...props }: BentoBoxHeaderProps) {\n return (\n <div\n className={cn(\n 'group/box-header grid auto-rows-min items-start space-y-2xs group-data-[size=large]/box:gap-0 group-data-[size=medium]/box:gap-0 group-data-[size=small]/box:gap-0',\n className,\n )}\n ref={ref}\n {...props}\n />\n )\n}\n","import { cn } from '@/utils/cn'\n\nimport type { BentoBoxTitleProps } from './bento-box.types'\n\nexport function BentoBoxTitle({ className, ref, ...props }: BentoBoxTitleProps) {\n return (\n <span\n className={cn(\n 'group-data-[size=large]/box:style-text-strong-1 not-first:group-data-[size=large]/box:pt-xs group-data-[size=medium]/box:style-text-strong-0 not-first:group-data-[size=medium]/box:pt-2xs group-data-[size=small]/box:style-text-strong--1 not-first:group-data-[size=small]/box:pt-3xs',\n className,\n )}\n ref={ref}\n {...props}\n />\n )\n}\n","import { BentoBox as BentoBoxRoot } from './bento-box'\nimport { BentoBoxAction } from './bento-box-action'\nimport { BentoBoxContent } from './bento-box-content'\nimport { BentoBoxDescription } from './bento-box-description'\nimport { BentoBoxFooter } from './bento-box-footer'\nimport { BentoBoxHeader } from './bento-box-header'\nimport { BentoBoxTitle } from './bento-box-title'\n\nconst BentoBox = Object.assign(BentoBoxRoot, {\n Action: BentoBoxAction,\n Content: BentoBoxContent,\n Description: BentoBoxDescription,\n Footer: BentoBoxFooter,\n Header: BentoBoxHeader,\n Title: BentoBoxTitle,\n})\n\nexport type {\n BentoBoxActionProps,\n BentoBoxContentProps,\n BentoBoxDescriptionProps,\n BentoBoxFooterProps,\n BentoBoxHeaderProps,\n BentoBoxProps,\n BentoBoxTitleProps,\n} from './bento-box.types'\n\nexport { BentoBoxAction } from './bento-box-action'\nexport { BentoBoxContent } from './bento-box-content'\nexport { BentoBoxDescription } from './bento-box-description'\nexport { BentoBoxFooter } from './bento-box-footer'\nexport { BentoBoxHeader } from './bento-box-header'\nexport { BentoBoxTitle } from './bento-box-title'\n\nexport { BentoBox }\n"],"mappings":";;;;AAGA,MAAM,mBAAmB,IACvB,6FACA;CACE,iBAAiB;EACf,WAAW;EACX,MAAM;EACN,MAAM;CACR;CACA,UAAU;EACR,WAAW;GACT,MAAM;GACN,KAAK;GACL,QAAQ;GACR,MAAM;GACN,UAAU;EACZ;EACA,MAAM;GACJ,OAAO;GACP,MAAM;EACR;EACA,MAAM;GACJ,OAAO;GACP,QAAQ;GACR,OAAO;EACT;CACF;AACF,CACF;;ACzBA,SAAgBA,WAAS,EACvB,WACA,MACA,OAAO,UACP,WACA,KACA,GAAG,SACa;CAChB,OACE,oBAAC,OAAD;EACE,aAAW;EACX,WAAW,GAAG,iBAAiB;GAAE;GAAW;GAAW;GAAM;EAAK,CAAC,CAAC;EAC/D;EACL,GAAI;CACL,CAAA;AAEL;;ACjBA,SAAgB,eAAe,EAAE,WAAW,KAAK,GAAG,SAA8B;CAChF,OACE,oBAAC,OAAD;EACE,WAAW,GACT,wEACA,SACF;EACK;EACL,GAAI;CACL,CAAA;AAEL;;ACXA,SAAgB,gBAAgB,EAAE,WAAW,KAAK,GAAG,SAA+B;CAClF,OACE,oBAAC,OAAD;EAAK,WAAW,GAAG,wCAAwC,SAAS;EAAQ;EAAK,GAAI;CAAQ,CAAA;AAEjG;;ACJA,SAAgB,oBAAoB,EAAE,WAAW,KAAK,GAAG,SAAmC;CAC1F,OACE,oBAAC,QAAD;EACE,WAAW,GACT,2KACA,SACF;EACK;EACL,GAAI;CACL,CAAA;AAEL;;ACXA,SAAgB,eAAe,EAAE,WAAW,KAAK,GAAG,SAA8B;CAChF,OACE,oBAAC,OAAD;EACE,WAAW,GACT,0LACA,SACF;EACK;EACL,GAAI;CACL,CAAA;AAEL;;ACXA,SAAgB,eAAe,EAAE,WAAW,KAAK,GAAG,SAA8B;CAChF,OACE,oBAAC,OAAD;EACE,WAAW,GACT,sKACA,SACF;EACK;EACL,GAAI;CACL,CAAA;AAEL;;ACXA,SAAgB,cAAc,EAAE,WAAW,KAAK,GAAG,SAA6B;CAC9E,OACE,oBAAC,QAAD;EACE,WAAW,GACT,4RACA,SACF;EACK;EACL,GAAI;CACL,CAAA;AAEL;;ACPA,MAAM,WAAW,OAAO,OAAOC,YAAc;CAC3C,QAAQ;CACR,SAAS;CACT,aAAa;CACb,QAAQ;CACR,QAAQ;CACR,OAAO;AACT,CAAC"}
|
package/dist/button/index.d.ts
CHANGED
package/dist/button/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as Button } from "../button-
|
|
1
|
+
export { t as Button } from "../button-DXQvyQyj.js";
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { t as cn } from "./cn-BDi0DfT5.js";
|
|
2
2
|
import { t as hasSingleElementChild } from "./has-single-element-child-DLGI0Dh2.js";
|
|
3
3
|
import { t as trimTextChildren } from "./trim-text-children-CQRFg2fL.js";
|
|
4
|
+
import { n as useButtonGroupContext } from "./button-group-context-CScS9Ntz.js";
|
|
4
5
|
import { cva } from "class-variance-authority";
|
|
5
6
|
import { jsx } from "react/jsx-runtime";
|
|
6
7
|
import { Button } from "@base-ui/react";
|
|
7
8
|
// src/components/button/button.types.ts
|
|
8
|
-
const buttonVariants = cva("inline-flex cursor-pointer items-center justify-center rounded-full whitespace-nowrap transition-all select-none disabled:pointer-events-none disabled:opacity-50", {
|
|
9
|
+
const buttonVariants = cva("inline-flex cursor-pointer items-center justify-center rounded-full whitespace-nowrap transition-all select-none disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50", {
|
|
9
10
|
compoundVariants: [
|
|
10
11
|
{
|
|
11
12
|
className: "bg-brand-default text-brand-on-default hover:bg-brand-muted",
|
|
@@ -286,22 +287,23 @@ const buttonVariants = cva("inline-flex cursor-pointer items-center justify-cent
|
|
|
286
287
|
}
|
|
287
288
|
});
|
|
288
289
|
// src/components/button/button.tsx
|
|
289
|
-
function Button$1(
|
|
290
|
+
function Button$1(buttonProps) {
|
|
291
|
+
const group = useButtonGroupContext(), { size = group?.size, tone = group?.tone, variant = group?.variant, className, children, ...props } = buttonProps;
|
|
290
292
|
let iconOnly = void 0;
|
|
291
293
|
if (hasSingleElementChild(children)) iconOnly = "";
|
|
292
294
|
return /* @__PURE__ */ jsx(Button, {
|
|
295
|
+
"data-slot": "button",
|
|
293
296
|
"data-icon-only": iconOnly,
|
|
294
297
|
"data-size": size,
|
|
295
298
|
className: cn(buttonVariants({
|
|
296
|
-
className,
|
|
297
299
|
size,
|
|
298
300
|
tone,
|
|
299
301
|
variant
|
|
300
|
-
})),
|
|
302
|
+
}), group && "border-0 shadow-none", group && variant === "elevated" && "not-active:hover:shadow-none active:scale-100", group && variant === "elevated" && tone === "neutral" && "not-active:hover:text-neutral-on-container active:bg-surface", className),
|
|
301
303
|
...props,
|
|
302
304
|
children: trimTextChildren(children)
|
|
303
305
|
});
|
|
304
306
|
}
|
|
305
307
|
export { buttonVariants as n, Button$1 as t };
|
|
306
308
|
|
|
307
|
-
//# sourceMappingURL=button-
|
|
309
|
+
//# sourceMappingURL=button-DXQvyQyj.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-DXQvyQyj.js","names":["Button","BaseButton"],"sources":["../src/components/button/button.types.ts","../src/components/button/button.tsx"],"sourcesContent":["import type { Button as BaseButton } from '@base-ui/react'\nimport { cva } from 'class-variance-authority'\nimport type { VariantProps } from 'class-variance-authority'\n\nexport const buttonVariants = cva(\n 'inline-flex cursor-pointer items-center justify-center rounded-full whitespace-nowrap transition-all select-none disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50',\n {\n compoundVariants: [\n {\n className: 'bg-brand-default text-brand-on-default hover:bg-brand-muted',\n tone: 'brand',\n variant: 'fill',\n },\n {\n className: 'bg-accent-default text-accent-on-default hover:bg-accent-muted',\n tone: 'accent',\n variant: 'fill',\n },\n {\n className: 'bg-neutral-default text-neutral-on-default hover:bg-neutral-muted',\n tone: 'neutral',\n variant: 'fill',\n },\n {\n className: 'bg-error-default text-error-on-default hover:bg-error-muted',\n tone: 'error',\n variant: 'fill',\n },\n {\n className: 'bg-info-default text-info-on-default hover:bg-info-muted',\n tone: 'info',\n variant: 'fill',\n },\n {\n className: 'bg-success-default text-success-on-default hover:bg-success-muted',\n tone: 'success',\n variant: 'fill',\n },\n {\n className: 'bg-warning-default text-warning-on-default hover:bg-warning-muted',\n tone: 'warning',\n variant: 'fill',\n },\n {\n className: 'bg-brand-container text-brand-on-container hover:bg-brand-container-high',\n tone: 'brand',\n variant: 'secondary',\n },\n {\n className: 'bg-accent-container text-accent-on-container hover:bg-accent-container-high',\n tone: 'accent',\n variant: 'secondary',\n },\n {\n className: 'bg-neutral-container text-neutral-on-container hover:bg-neutral-container-high',\n tone: 'neutral',\n variant: 'secondary',\n },\n {\n className: 'bg-error-container text-error-on-container hover:bg-error-container-high',\n tone: 'error',\n variant: 'secondary',\n },\n {\n className: 'bg-info-container text-info-on-container hover:bg-info-container-high',\n tone: 'info',\n variant: 'secondary',\n },\n {\n className: 'bg-success-container text-success-on-container hover:bg-success-container-high',\n tone: 'success',\n variant: 'secondary',\n },\n {\n className: 'bg-warning-container text-warning-on-container hover:bg-warning-container-high',\n tone: 'warning',\n variant: 'secondary',\n },\n {\n className:\n 'border-brand-border text-brand-default hover:bg-brand-container hover:text-brand-on-container',\n tone: 'brand',\n variant: 'outline',\n },\n {\n className:\n 'border-accent-border text-accent-default hover:bg-accent-container hover:text-accent-on-container',\n tone: 'accent',\n variant: 'outline',\n },\n {\n className:\n 'border-neutral-border text-neutral-default hover:bg-neutral-container hover:text-neutral-on-container',\n tone: 'neutral',\n variant: 'outline',\n },\n {\n className:\n 'border-error-border text-error-default hover:bg-error-container hover:text-error-on-container',\n tone: 'error',\n variant: 'outline',\n },\n {\n className:\n 'border-info-border text-info-default hover:bg-info-container hover:text-info-on-container',\n tone: 'info',\n variant: 'outline',\n },\n {\n className:\n 'border-success-border text-success-default hover:bg-success-container hover:text-success-on-container',\n tone: 'success',\n variant: 'outline',\n },\n {\n className:\n 'border-warning-border text-warning-default hover:bg-warning-container hover:text-warning-on-container',\n tone: 'warning',\n variant: 'outline',\n },\n {\n className: 'text-brand-default hover:bg-brand-container hover:text-brand-on-container',\n tone: 'brand',\n variant: 'ghost',\n },\n {\n className: 'text-accent-default hover:bg-accent-container hover:text-accent-on-container',\n tone: 'accent',\n variant: 'ghost',\n },\n {\n className:\n 'text-neutral-default hover:bg-neutral-container hover:text-neutral-on-container',\n tone: 'neutral',\n variant: 'ghost',\n },\n {\n className: 'text-error-default hover:bg-error-container hover:text-error-on-container',\n tone: 'error',\n variant: 'ghost',\n },\n {\n className: 'text-info-default hover:bg-info-container hover:text-info-on-container',\n tone: 'info',\n variant: 'ghost',\n },\n {\n className:\n 'text-success-default hover:bg-success-container hover:text-success-on-container',\n tone: 'success',\n variant: 'ghost',\n },\n {\n className:\n 'text-warning-default hover:bg-warning-container hover:text-warning-on-container',\n tone: 'warning',\n variant: 'ghost',\n },\n {\n className:\n 'border-brand-border bg-brand-container text-brand-on-container hover:border-brand-border-strong hover:bg-brand-container-high',\n tone: 'brand',\n variant: 'soft',\n },\n {\n className:\n 'border-accent-border bg-accent-container text-accent-on-container hover:border-accent-border-strong hover:bg-accent-container-high',\n tone: 'accent',\n variant: 'soft',\n },\n {\n className:\n 'border-neutral-border bg-neutral-container text-neutral-on-container hover:border-neutral-border-strong hover:bg-neutral-container-high',\n tone: 'neutral',\n variant: 'soft',\n },\n {\n className:\n 'border-error-border bg-error-container text-error-on-container hover:border-error-border-strong hover:bg-error-container-high',\n tone: 'error',\n variant: 'soft',\n },\n {\n className:\n 'border-info-border bg-info-container text-info-on-container hover:border-info-border-strong hover:bg-info-container-high',\n tone: 'info',\n variant: 'soft',\n },\n {\n className:\n 'border-success-border bg-success-container text-success-on-container hover:border-success-border-strong hover:bg-success-container-high',\n tone: 'success',\n variant: 'soft',\n },\n {\n className:\n 'border-warning-border bg-warning-container text-warning-on-container hover:border-warning-border-strong hover:bg-warning-container-high',\n tone: 'warning',\n variant: 'soft',\n },\n {\n className:\n 'bg-brand-container text-brand-on-container not-active:hover:bg-brand-container-high',\n tone: 'brand',\n variant: 'elevated',\n },\n {\n className:\n 'bg-accent-container text-accent-on-container not-active:hover:bg-accent-container-high',\n tone: 'accent',\n variant: 'elevated',\n },\n {\n className: 'bg-surface-2 text-on-surface not-active:hover:bg-surface-3',\n tone: 'neutral',\n variant: 'elevated',\n },\n {\n className:\n 'bg-error-container text-error-on-container not-active:hover:bg-error-container-high',\n tone: 'error',\n variant: 'elevated',\n },\n {\n className:\n 'bg-info-container text-info-on-container not-active:hover:bg-info-container-high',\n tone: 'info',\n variant: 'elevated',\n },\n {\n className:\n 'bg-success-container text-success-on-container not-active:hover:bg-success-container-high',\n tone: 'success',\n variant: 'elevated',\n },\n {\n className:\n 'bg-warning-container text-warning-on-container not-active:hover:bg-warning-container-high',\n tone: 'warning',\n variant: 'elevated',\n },\n {\n className:\n 'text-brand-default hover:decoration-brand-default [&>svg]:text-brand-default/50 hover:[&>svg]:text-brand-default',\n tone: 'brand',\n variant: 'link',\n },\n {\n className:\n 'text-accent-default hover:decoration-accent-default [&>svg]:text-accent-default/50 hover:[&>svg]:text-accent-default',\n tone: 'accent',\n variant: 'link',\n },\n {\n className:\n 'text-neutral-default hover:decoration-neutral-default [&>svg]:text-neutral-default/50 hover:[&>svg]:text-neutral-default',\n tone: 'neutral',\n variant: 'link',\n },\n {\n className:\n 'text-error-default hover:decoration-error-default [&>svg]:text-error-default/50 hover:[&>svg]:text-error-default',\n tone: 'error',\n variant: 'link',\n },\n {\n className:\n 'text-info-default hover:decoration-info-default [&>svg]:text-info-default/50 hover:[&>svg]:text-info-default',\n tone: 'info',\n variant: 'link',\n },\n {\n className:\n 'text-success-default hover:decoration-success-default [&>svg]:text-success-default/50 hover:[&>svg]:text-success-default',\n tone: 'success',\n variant: 'link',\n },\n {\n className:\n 'text-warning-default hover:decoration-warning-default [&>svg]:text-warning-default/50 hover:[&>svg]:text-warning-default',\n tone: 'warning',\n variant: 'link',\n },\n ],\n defaultVariants: {\n size: 'medium',\n tone: 'brand',\n variant: 'fill',\n },\n variants: {\n size: {\n extraSmall:\n 'h-md gap-3xs px-2xs font-body text-xs leading-none font-medium [&:where([data-icon-only]:has(>svg:only-child))]:size-md [&:where([data-icon-only]:has(>svg:only-child))]:p-0 [&>svg]:size-xs',\n large:\n 'h-2xl min-w-2xl gap-xs px-md font-body text-lg leading-none font-medium [&:where([data-icon-only]:has(>svg:only-child))]:size-2xl [&:where([data-icon-only]:has(>svg:only-child))]:p-0 [&>svg]:size-lg',\n medium:\n 'h-xl min-w-xl gap-2xs px-sm font-body text-base leading-none font-medium [&:where([data-icon-only]:has(>svg:only-child))]:size-xl [&:where([data-icon-only]:has(>svg:only-child))]:p-0 [&>svg]:size-md',\n small:\n 'h-lg min-w-lg gap-3xs px-xs font-body text-sm leading-none font-medium [&:where([data-icon-only]:has(>svg:only-child))]:size-lg [&:where([data-icon-only]:has(>svg:only-child))]:p-0 [&>svg]:size-sm',\n },\n tone: {\n accent: '',\n brand: '',\n error: '',\n info: '',\n neutral: '',\n success: '',\n warning: '',\n },\n variant: {\n elevated: 'shadow-xs not-active:hover:shadow-md',\n fill: 'active:scale-95',\n ghost: 'active:scale-95',\n link: 'size-fit! p-0! underline decoration-transparent underline-offset-2 [&>svg]:transition-colors',\n outline: 'border active:scale-95',\n secondary: 'active:scale-95',\n soft: 'border active:scale-95',\n },\n },\n },\n)\n\nexport type ButtonProps = React.ComponentProps<typeof BaseButton> &\n VariantProps<typeof buttonVariants>\n","import { Button as BaseButton } from '@base-ui/react'\n\nimport { cn } from '@/utils/cn'\nimport { hasSingleElementChild } from '@/utils/has-single-element-child'\nimport { trimTextChildren } from '@/utils/trim-text-children'\n\nimport { useButtonGroupContext } from '../button-group/button-group-context'\nimport { buttonVariants } from './button.types'\nimport type { ButtonProps } from './button.types'\n\nexport function Button(buttonProps: ButtonProps) {\n const group = useButtonGroupContext(),\n {\n size = group?.size,\n tone = group?.tone,\n variant = group?.variant,\n className,\n children,\n ...props\n } = buttonProps\n\n let iconOnly: '' | undefined = undefined\n\n if (hasSingleElementChild(children)) {\n iconOnly = ''\n }\n\n return (\n <BaseButton\n data-slot=\"button\"\n data-icon-only={iconOnly}\n data-size={size}\n className={cn(\n buttonVariants({ size, tone, variant }),\n group && 'border-0 shadow-none',\n group && variant === 'elevated' && 'not-active:hover:shadow-none active:scale-100',\n group &&\n variant === 'elevated' &&\n tone === 'neutral' &&\n 'not-active:hover:text-neutral-on-container active:bg-surface',\n className,\n )}\n {...props}\n >\n {trimTextChildren(children)}\n </BaseButton>\n )\n}\n"],"mappings":";;;;;;;;AAIA,MAAa,iBAAiB,IAC5B,gOACA;CACE,kBAAkB;EAChB;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;EACA;GACE,WACE;GACF,MAAM;GACN,SAAS;EACX;CACF;CACA,iBAAiB;EACf,MAAM;EACN,MAAM;EACN,SAAS;CACX;CACA,UAAU;EACR,MAAM;GACJ,YACE;GACF,OACE;GACF,QACE;GACF,OACE;EACJ;EACA,MAAM;GACJ,QAAQ;GACR,OAAO;GACP,OAAO;GACP,MAAM;GACN,SAAS;GACT,SAAS;GACT,SAAS;EACX;EACA,SAAS;GACP,UAAU;GACV,MAAM;GACN,OAAO;GACP,MAAM;GACN,SAAS;GACT,WAAW;GACX,MAAM;EACR;CACF;AACF,CACF;;ACtTA,SAAgBA,SAAO,aAA0B;CAC/C,MAAM,QAAQ,sBAAsB,GAClC,EACE,OAAO,OAAO,MACd,OAAO,OAAO,MACd,UAAU,OAAO,SACjB,WACA,UACA,GAAG,UACD;CAEN,IAAI,WAA2B,KAAA;CAE/B,IAAI,sBAAsB,QAAQ,GAChC,WAAW;CAGb,OACE,oBAACC,QAAD;EACE,aAAU;EACV,kBAAgB;EAChB,aAAW;EACX,WAAW,GACT,eAAe;GAAE;GAAM;GAAM;EAAQ,CAAC,GACtC,SAAS,wBACT,SAAS,YAAY,cAAc,iDACnC,SACE,YAAY,cACZ,SAAS,aACT,gEACF,SACF;EACA,GAAI;EAEH,UAAA,iBAAiB,QAAQ;CAChB,CAAA;AAEhB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as ButtonGroupProps, t as ButtonGroup } from "../index-
|
|
1
|
+
import { n as ButtonGroupProps, t as ButtonGroup } from "../index-CpNMNewO.js";
|
|
2
2
|
export { ButtonGroup, type ButtonGroupProps };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as ButtonGroup } from "../button-group-
|
|
1
|
+
export { t as ButtonGroup } from "../button-group-BiSk3iIf.js";
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
import { t as cn } from "./cn-BDi0DfT5.js";
|
|
2
|
+
import { t as ButtonGroupContext } from "./button-group-context-CScS9Ntz.js";
|
|
3
|
+
import { cva } from "class-variance-authority";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
// src/components/button-group/button-group.types.ts
|
|
6
|
+
const buttonGroupVariants = cva("inline-flex cursor-pointer items-center justify-center overflow-hidden rounded-full whitespace-nowrap transition-all select-none disabled:pointer-events-none disabled:opacity-50 [&>:where([data-slot=button],button)]:rounded-none", {
|
|
7
|
+
compoundVariants: [
|
|
8
|
+
{
|
|
9
|
+
className: "bg-brand-default text-brand-on-default",
|
|
10
|
+
tone: "brand",
|
|
11
|
+
variant: "fill"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
className: "bg-accent-default text-accent-on-default",
|
|
15
|
+
tone: "accent",
|
|
16
|
+
variant: "fill"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
className: "bg-neutral-default text-neutral-on-default",
|
|
20
|
+
tone: "neutral",
|
|
21
|
+
variant: "fill"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
className: "bg-error-default text-error-on-default",
|
|
25
|
+
tone: "error",
|
|
26
|
+
variant: "fill"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
className: "bg-info-default text-info-on-default",
|
|
30
|
+
tone: "info",
|
|
31
|
+
variant: "fill"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
className: "bg-success-default text-success-on-default",
|
|
35
|
+
tone: "success",
|
|
36
|
+
variant: "fill"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
className: "bg-warning-default text-warning-on-default",
|
|
40
|
+
tone: "warning",
|
|
41
|
+
variant: "fill"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
className: "bg-brand-container text-brand-on-container",
|
|
45
|
+
tone: "brand",
|
|
46
|
+
variant: "secondary"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
className: "bg-accent-container text-accent-on-container",
|
|
50
|
+
tone: "accent",
|
|
51
|
+
variant: "secondary"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
className: "bg-neutral-container text-neutral-on-container",
|
|
55
|
+
tone: "neutral",
|
|
56
|
+
variant: "secondary"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
className: "bg-error-container text-error-on-container",
|
|
60
|
+
tone: "error",
|
|
61
|
+
variant: "secondary"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
className: "bg-info-container text-info-on-container",
|
|
65
|
+
tone: "info",
|
|
66
|
+
variant: "secondary"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
className: "bg-success-container text-success-on-container",
|
|
70
|
+
tone: "success",
|
|
71
|
+
variant: "secondary"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
className: "bg-warning-container text-warning-on-container",
|
|
75
|
+
tone: "warning",
|
|
76
|
+
variant: "secondary"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
className: "border-brand-border text-brand-default",
|
|
80
|
+
tone: "brand",
|
|
81
|
+
variant: "outline"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
className: "border-accent-border text-accent-default",
|
|
85
|
+
tone: "accent",
|
|
86
|
+
variant: "outline"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
className: "border-neutral-border text-neutral-default",
|
|
90
|
+
tone: "neutral",
|
|
91
|
+
variant: "outline"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
className: "border-error-border text-error-default",
|
|
95
|
+
tone: "error",
|
|
96
|
+
variant: "outline"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
className: "border-info-border text-info-default",
|
|
100
|
+
tone: "info",
|
|
101
|
+
variant: "outline"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
className: "border-success-border text-success-default",
|
|
105
|
+
tone: "success",
|
|
106
|
+
variant: "outline"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
className: "border-warning-border text-warning-default",
|
|
110
|
+
tone: "warning",
|
|
111
|
+
variant: "outline"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
className: "text-brand-default",
|
|
115
|
+
tone: "brand",
|
|
116
|
+
variant: "ghost"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
className: "text-accent-default",
|
|
120
|
+
tone: "accent",
|
|
121
|
+
variant: "ghost"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
className: "text-neutral-default",
|
|
125
|
+
tone: "neutral",
|
|
126
|
+
variant: "ghost"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
className: "text-error-default",
|
|
130
|
+
tone: "error",
|
|
131
|
+
variant: "ghost"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
className: "text-info-default",
|
|
135
|
+
tone: "info",
|
|
136
|
+
variant: "ghost"
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
className: "text-success-default",
|
|
140
|
+
tone: "success",
|
|
141
|
+
variant: "ghost"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
className: "text-warning-default",
|
|
145
|
+
tone: "warning",
|
|
146
|
+
variant: "ghost"
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
className: "border-brand-border bg-brand-container text-brand-on-container",
|
|
150
|
+
tone: "brand",
|
|
151
|
+
variant: "soft"
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
className: "border-accent-border bg-accent-container text-accent-on-container",
|
|
155
|
+
tone: "accent",
|
|
156
|
+
variant: "soft"
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
className: "border-neutral-border bg-neutral-container text-neutral-on-container",
|
|
160
|
+
tone: "neutral",
|
|
161
|
+
variant: "soft"
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
className: "border-error-border bg-error-container text-error-on-container",
|
|
165
|
+
tone: "error",
|
|
166
|
+
variant: "soft"
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
className: "border-info-border bg-info-container text-info-on-container",
|
|
170
|
+
tone: "info",
|
|
171
|
+
variant: "soft"
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
className: "border-success-border bg-success-container text-success-on-container",
|
|
175
|
+
tone: "success",
|
|
176
|
+
variant: "soft"
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
className: "border-warning-border bg-warning-container text-warning-on-container",
|
|
180
|
+
tone: "warning",
|
|
181
|
+
variant: "soft"
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
className: "bg-brand-container text-brand-on-container",
|
|
185
|
+
tone: "brand",
|
|
186
|
+
variant: "elevated"
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
className: "bg-accent-container text-accent-on-container",
|
|
190
|
+
tone: "accent",
|
|
191
|
+
variant: "elevated"
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
className: "bg-surface-2 text-on-surface",
|
|
195
|
+
tone: "neutral",
|
|
196
|
+
variant: "elevated"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
className: "bg-error-container text-error-on-container",
|
|
200
|
+
tone: "error",
|
|
201
|
+
variant: "elevated"
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
className: "bg-info-container text-info-on-container",
|
|
205
|
+
tone: "info",
|
|
206
|
+
variant: "elevated"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
className: "bg-success-container text-success-on-container",
|
|
210
|
+
tone: "success",
|
|
211
|
+
variant: "elevated"
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
className: "bg-warning-container text-warning-on-container",
|
|
215
|
+
tone: "warning",
|
|
216
|
+
variant: "elevated"
|
|
217
|
+
}
|
|
218
|
+
],
|
|
219
|
+
defaultVariants: {
|
|
220
|
+
orientation: "horizontal",
|
|
221
|
+
tone: "brand",
|
|
222
|
+
variant: "fill"
|
|
223
|
+
},
|
|
224
|
+
variants: {
|
|
225
|
+
orientation: {
|
|
226
|
+
horizontal: "[&>*+*]:relative [&>*+*]:before:absolute [&>*+*]:before:top-1/2 [&>*+*]:before:left-0 [&>*+*]:before:h-1/2 [&>*+*]:before:w-px [&>*+*]:before:-translate-y-1/2 [&>*+*]:before:content-[\"\"]",
|
|
227
|
+
vertical: "flex-col [&>*+*]:relative [&>*+*]:before:absolute [&>*+*]:before:top-0 [&>*+*]:before:left-1/2 [&>*+*]:before:h-px [&>*+*]:before:w-1/2 [&>*+*]:before:-translate-x-1/2 [&>*+*]:before:content-[\"\"]"
|
|
228
|
+
},
|
|
229
|
+
tone: {
|
|
230
|
+
accent: "[&>*+*]:before:bg-accent-border",
|
|
231
|
+
brand: "[&>*+*]:before:bg-brand-border",
|
|
232
|
+
error: "[&>*+*]:before:bg-error-border",
|
|
233
|
+
info: "[&>*+*]:before:bg-info-border",
|
|
234
|
+
neutral: "[&>*+*]:before:bg-neutral-border",
|
|
235
|
+
success: "[&>*+*]:before:bg-success-border",
|
|
236
|
+
warning: ""
|
|
237
|
+
},
|
|
238
|
+
variant: {
|
|
239
|
+
elevated: "shadow-xs",
|
|
240
|
+
fill: "",
|
|
241
|
+
ghost: "",
|
|
242
|
+
outline: "border",
|
|
243
|
+
secondary: "",
|
|
244
|
+
soft: "border"
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
// src/components/button-group/button-group.tsx
|
|
249
|
+
function ButtonGroup({ size = "medium", variant = "fill", tone = "brand", orientation, className, ref, ...props }) {
|
|
250
|
+
return /* @__PURE__ */ jsx(ButtonGroupContext, {
|
|
251
|
+
value: {
|
|
252
|
+
size,
|
|
253
|
+
tone,
|
|
254
|
+
variant
|
|
255
|
+
},
|
|
256
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
257
|
+
className: cn(buttonGroupVariants({
|
|
258
|
+
orientation,
|
|
259
|
+
tone,
|
|
260
|
+
variant
|
|
261
|
+
}), className),
|
|
262
|
+
ref,
|
|
263
|
+
...props
|
|
264
|
+
})
|
|
265
|
+
});
|
|
266
|
+
}
|
|
267
|
+
export { ButtonGroup as t };
|
|
268
|
+
|
|
269
|
+
//# sourceMappingURL=button-group-BiSk3iIf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-group-BiSk3iIf.js","names":[],"sources":["../src/components/button-group/button-group.types.ts","../src/components/button-group/button-group.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority'\nimport type { VariantProps } from 'class-variance-authority'\n\nimport type { ButtonProps } from '../button/button.types'\n\nexport const buttonGroupVariants = cva(\n 'inline-flex cursor-pointer items-center justify-center overflow-hidden rounded-full whitespace-nowrap transition-all select-none disabled:pointer-events-none disabled:opacity-50 [&>:where([data-slot=button],button)]:rounded-none',\n {\n compoundVariants: [\n {\n className: 'bg-brand-default text-brand-on-default',\n tone: 'brand',\n variant: 'fill',\n },\n {\n className: 'bg-accent-default text-accent-on-default',\n tone: 'accent',\n variant: 'fill',\n },\n {\n className: 'bg-neutral-default text-neutral-on-default',\n tone: 'neutral',\n variant: 'fill',\n },\n {\n className: 'bg-error-default text-error-on-default',\n tone: 'error',\n variant: 'fill',\n },\n {\n className: 'bg-info-default text-info-on-default',\n tone: 'info',\n variant: 'fill',\n },\n {\n className: 'bg-success-default text-success-on-default',\n tone: 'success',\n variant: 'fill',\n },\n {\n className: 'bg-warning-default text-warning-on-default',\n tone: 'warning',\n variant: 'fill',\n },\n {\n className: 'bg-brand-container text-brand-on-container',\n tone: 'brand',\n variant: 'secondary',\n },\n {\n className: 'bg-accent-container text-accent-on-container',\n tone: 'accent',\n variant: 'secondary',\n },\n {\n className: 'bg-neutral-container text-neutral-on-container',\n tone: 'neutral',\n variant: 'secondary',\n },\n {\n className: 'bg-error-container text-error-on-container',\n tone: 'error',\n variant: 'secondary',\n },\n {\n className: 'bg-info-container text-info-on-container',\n tone: 'info',\n variant: 'secondary',\n },\n {\n className: 'bg-success-container text-success-on-container',\n tone: 'success',\n variant: 'secondary',\n },\n {\n className: 'bg-warning-container text-warning-on-container',\n tone: 'warning',\n variant: 'secondary',\n },\n {\n className: 'border-brand-border text-brand-default',\n tone: 'brand',\n variant: 'outline',\n },\n {\n className: 'border-accent-border text-accent-default',\n tone: 'accent',\n variant: 'outline',\n },\n {\n className: 'border-neutral-border text-neutral-default',\n tone: 'neutral',\n variant: 'outline',\n },\n {\n className: 'border-error-border text-error-default',\n tone: 'error',\n variant: 'outline',\n },\n {\n className: 'border-info-border text-info-default',\n tone: 'info',\n variant: 'outline',\n },\n {\n className: 'border-success-border text-success-default',\n tone: 'success',\n variant: 'outline',\n },\n {\n className: 'border-warning-border text-warning-default',\n tone: 'warning',\n variant: 'outline',\n },\n {\n className: 'text-brand-default',\n tone: 'brand',\n variant: 'ghost',\n },\n {\n className: 'text-accent-default',\n tone: 'accent',\n variant: 'ghost',\n },\n {\n className: 'text-neutral-default',\n tone: 'neutral',\n variant: 'ghost',\n },\n {\n className: 'text-error-default',\n tone: 'error',\n variant: 'ghost',\n },\n {\n className: 'text-info-default',\n tone: 'info',\n variant: 'ghost',\n },\n {\n className: 'text-success-default',\n tone: 'success',\n variant: 'ghost',\n },\n {\n className: 'text-warning-default',\n tone: 'warning',\n variant: 'ghost',\n },\n {\n className: 'border-brand-border bg-brand-container text-brand-on-container',\n tone: 'brand',\n variant: 'soft',\n },\n {\n className: 'border-accent-border bg-accent-container text-accent-on-container',\n tone: 'accent',\n variant: 'soft',\n },\n {\n className: 'border-neutral-border bg-neutral-container text-neutral-on-container',\n tone: 'neutral',\n variant: 'soft',\n },\n {\n className: 'border-error-border bg-error-container text-error-on-container',\n tone: 'error',\n variant: 'soft',\n },\n {\n className: 'border-info-border bg-info-container text-info-on-container',\n tone: 'info',\n variant: 'soft',\n },\n {\n className: 'border-success-border bg-success-container text-success-on-container',\n tone: 'success',\n variant: 'soft',\n },\n {\n className: 'border-warning-border bg-warning-container text-warning-on-container',\n tone: 'warning',\n variant: 'soft',\n },\n {\n className: 'bg-brand-container text-brand-on-container',\n tone: 'brand',\n variant: 'elevated',\n },\n {\n className: 'bg-accent-container text-accent-on-container',\n tone: 'accent',\n variant: 'elevated',\n },\n {\n className: 'bg-surface-2 text-on-surface',\n tone: 'neutral',\n variant: 'elevated',\n },\n {\n className: 'bg-error-container text-error-on-container',\n tone: 'error',\n variant: 'elevated',\n },\n {\n className: 'bg-info-container text-info-on-container',\n tone: 'info',\n variant: 'elevated',\n },\n {\n className: 'bg-success-container text-success-on-container',\n tone: 'success',\n variant: 'elevated',\n },\n {\n className: 'bg-warning-container text-warning-on-container',\n tone: 'warning',\n variant: 'elevated',\n },\n ],\n defaultVariants: {\n orientation: 'horizontal',\n tone: 'brand',\n variant: 'fill',\n },\n variants: {\n orientation: {\n horizontal:\n '[&>*+*]:relative [&>*+*]:before:absolute [&>*+*]:before:top-1/2 [&>*+*]:before:left-0 [&>*+*]:before:h-1/2 [&>*+*]:before:w-px [&>*+*]:before:-translate-y-1/2 [&>*+*]:before:content-[\"\"]',\n vertical:\n 'flex-col [&>*+*]:relative [&>*+*]:before:absolute [&>*+*]:before:top-0 [&>*+*]:before:left-1/2 [&>*+*]:before:h-px [&>*+*]:before:w-1/2 [&>*+*]:before:-translate-x-1/2 [&>*+*]:before:content-[\"\"]',\n },\n tone: {\n accent: '[&>*+*]:before:bg-accent-border',\n brand: '[&>*+*]:before:bg-brand-border',\n error: '[&>*+*]:before:bg-error-border',\n info: '[&>*+*]:before:bg-info-border',\n neutral: '[&>*+*]:before:bg-neutral-border',\n success: '[&>*+*]:before:bg-success-border',\n warning: '',\n },\n variant: {\n elevated: 'shadow-xs',\n fill: '',\n ghost: '',\n outline: 'border',\n secondary: '',\n soft: 'border',\n },\n },\n },\n)\n\nexport type ButtonGroupProps = React.ComponentProps<'div'> &\n VariantProps<typeof buttonGroupVariants> &\n Pick<ButtonProps, 'size'>\n","import { cn } from '@/utils/cn'\n\nimport { ButtonGroupContext } from './button-group-context'\nimport { buttonGroupVariants } from './button-group.types'\nimport type { ButtonGroupProps } from './button-group.types'\n\nexport function ButtonGroup({\n size = 'medium',\n variant = 'fill',\n tone = 'brand',\n orientation,\n className,\n ref,\n ...props\n}: ButtonGroupProps) {\n return (\n <ButtonGroupContext value={{ size, tone, variant }}>\n <div\n className={cn(buttonGroupVariants({ orientation, tone, variant }), className)}\n ref={ref}\n {...props}\n />\n </ButtonGroupContext>\n )\n}\n"],"mappings":";;;;;AAKA,MAAa,sBAAsB,IACjC,wOACA;CACE,kBAAkB;EAChB;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;EACA;GACE,WAAW;GACX,MAAM;GACN,SAAS;EACX;CACF;CACA,iBAAiB;EACf,aAAa;EACb,MAAM;EACN,SAAS;CACX;CACA,UAAU;EACR,aAAa;GACX,YACE;GACF,UACE;EACJ;EACA,MAAM;GACJ,QAAQ;GACR,OAAO;GACP,OAAO;GACP,MAAM;GACN,SAAS;GACT,SAAS;GACT,SAAS;EACX;EACA,SAAS;GACP,UAAU;GACV,MAAM;GACN,OAAO;GACP,SAAS;GACT,WAAW;GACX,MAAM;EACR;CACF;AACF,CACF;;ACrPA,SAAgB,YAAY,EAC1B,OAAO,UACP,UAAU,QACV,OAAO,SACP,aACA,WACA,KACA,GAAG,SACgB;CACnB,OACE,oBAAC,oBAAD;EAAoB,OAAO;GAAE;GAAM;GAAM;EAAQ;EAC/C,UAAA,oBAAC,OAAD;GACE,WAAW,GAAG,oBAAoB;IAAE;IAAa;IAAM;GAAQ,CAAC,GAAG,SAAS;GACvE;GACL,GAAI;EACL,CAAA;CACiB,CAAA;AAExB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
// src/components/button-group/button-group-context.ts
|
|
3
|
+
const ButtonGroupContext = createContext(void 0);
|
|
4
|
+
const useButtonGroupContext = () => useContext(ButtonGroupContext);
|
|
5
|
+
export { useButtonGroupContext as n, ButtonGroupContext as t };
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=button-group-context-CScS9Ntz.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-group-context-CScS9Ntz.js","names":[],"sources":["../src/components/button-group/button-group-context.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\n\nimport type { ButtonGroupProps } from './button-group.types'\n\ntype ButtonGroupContextValue = Pick<ButtonGroupProps, 'size' | 'tone' | 'variant'>\n\nconst ButtonGroupContext = createContext<ButtonGroupContextValue | undefined>(undefined),\n useButtonGroupContext = () => useContext(ButtonGroupContext)\n\nexport { ButtonGroupContext, useButtonGroupContext }\n"],"mappings":";;AAMA,MAAM,qBAAqB,cAAmD,KAAA,CAAS;AACrF,MAAA,8BAA8B,WAAW,kBAAkB"}
|
package/dist/calendar/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as cn } from "../cn-BDi0DfT5.js";
|
|
2
2
|
import { t as formatDate } from "../utils-BI2x7nW5.js";
|
|
3
3
|
import { n as Icon } from "../icon-D3JWfCa2.js";
|
|
4
|
-
import { n as buttonVariants, t as Button } from "../button-
|
|
4
|
+
import { n as buttonVariants, t as Button } from "../button-DXQvyQyj.js";
|
|
5
5
|
import { a as SelectPopup, c as SelectIcon, i as SelectTitle, n as SelectValue, o as SelectList, r as SelectTrigger, s as SelectItem, t as Select } from "../select-DncJXYim.js";
|
|
6
6
|
import { cva } from "class-variance-authority";
|
|
7
7
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { t as CopyButton } from "../index-DVMheqs_.js";
|
|
1
2
|
import { r as SelectTrigger } from "../index-CIDOd4Z8.js";
|
|
2
3
|
import { t as Tabs } from "../index-DyQYoAUf.js";
|
|
3
4
|
import React$1 from "react";
|
|
@@ -19,7 +20,9 @@ interface CodeBlockValue {
|
|
|
19
20
|
icon?: React.ReactNode;
|
|
20
21
|
}
|
|
21
22
|
type CodeBlockTabsProps = React.ComponentProps<typeof Tabs>;
|
|
22
|
-
type CodeBlockCopyProps = React.ComponentProps<'
|
|
23
|
+
type CodeBlockCopyProps = Omit<React.ComponentProps<typeof CopyButton>, 'children' | 'content'> & {
|
|
24
|
+
children?: React.ReactNode;
|
|
25
|
+
};
|
|
23
26
|
type CodeBlockNameProps = React.ComponentProps<'div'>;
|
|
24
27
|
type CodeBlockSelectProps = React.ComponentProps<typeof SelectTrigger>;
|
|
25
28
|
type CodeBlockHeaderGroupProps = React.ComponentProps<'div'>;
|
|
@@ -28,7 +31,7 @@ type CodeBlockActionsProps = React.ComponentProps<'div'>;
|
|
|
28
31
|
type CodeBlockWindowProps = React.ComponentProps<'div'>;
|
|
29
32
|
declare function CodeBlock$1({ items, defaultValue, className, ref, ...props }: CodeBlockProps): React$1.JSX.Element;
|
|
30
33
|
export declare function CodeBlockActions({ className, ref, ...props }: CodeBlockActionsProps): import("react").JSX.Element;
|
|
31
|
-
export declare function CodeBlockCopy({ className, children, disabled, ref, ...props }: CodeBlockCopyProps):
|
|
34
|
+
export declare function CodeBlockCopy({ className, children, disabled, ref, ...props }: CodeBlockCopyProps): import("react").JSX.Element;
|
|
32
35
|
export declare function CodeBlockDownload({ className, children, disabled, ref, ...props }: CodeBlockDownloadProps): React$1.JSX.Element;
|
|
33
36
|
type CodeBlockHeaderProps = React.ComponentProps<'div'>;
|
|
34
37
|
export declare function CodeBlockHeader({ className, ref, ...props }: CodeBlockHeaderProps): import("react").JSX.Element;
|
package/dist/code-block/index.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { t as cn } from "../cn-BDi0DfT5.js";
|
|
2
2
|
import { n as Icon } from "../icon-D3JWfCa2.js";
|
|
3
3
|
import { t as trimTextChildren } from "../trim-text-children-CQRFg2fL.js";
|
|
4
|
-
import { t as Button } from "../button-
|
|
4
|
+
import { t as Button } from "../button-DXQvyQyj.js";
|
|
5
5
|
import { a as SelectPopup, c as SelectIcon, i as SelectTitle, n as SelectValue, o as SelectList, r as SelectTrigger, s as SelectItem, t as Select } from "../select-DncJXYim.js";
|
|
6
|
+
import { t as CopyButton } from "../copy-button-BAG-P44v.js";
|
|
6
7
|
import { i as TabsList, n as TabsTab, t as Tabs } from "../tabs-DTC7coap.js";
|
|
7
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
8
9
|
import React from "react";
|
|
9
10
|
// src/components/code-block/code-block.tsx
|
|
10
11
|
const CodeBlockContext = React.createContext(void 0);
|
|
@@ -37,39 +38,23 @@ function CodeBlockActions({ className, ref, ...props }) {
|
|
|
37
38
|
});
|
|
38
39
|
}
|
|
39
40
|
// src/components/code-block/code-block-copy.tsx
|
|
40
|
-
const COPY_TIMEOUT = 2e3;
|
|
41
41
|
const COPY_STATUS_ICON = {
|
|
42
|
-
false: /* @__PURE__ */ jsx(Icon, {
|
|
43
|
-
|
|
44
|
-
className: "animate-in zoom-in"
|
|
45
|
-
}),
|
|
46
|
-
true: /* @__PURE__ */ jsx(Icon, {
|
|
47
|
-
name: "selected",
|
|
48
|
-
className: "animate-in zoom-in"
|
|
49
|
-
})
|
|
42
|
+
false: /* @__PURE__ */ jsx(Icon, { name: "copy" }),
|
|
43
|
+
true: /* @__PURE__ */ jsx(Icon, { name: "selected" })
|
|
50
44
|
};
|
|
51
45
|
function CodeBlockCopy({ className, children, disabled, ref, ...props }) {
|
|
52
|
-
const { currentValue } = useCodeBlock(), { code } = currentValue
|
|
53
|
-
|
|
54
|
-
if (code === void 0) throw new Error("No source code available to copy");
|
|
55
|
-
await navigator.clipboard.writeText(code);
|
|
56
|
-
setCopied(true);
|
|
57
|
-
setTimeout(() => setCopied(false), COPY_TIMEOUT);
|
|
58
|
-
} catch (error) {
|
|
59
|
-
console.error("Failed to copy text:", error);
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
return /* @__PURE__ */ jsxs(Button, {
|
|
46
|
+
const { currentValue } = useCodeBlock(), { code } = currentValue;
|
|
47
|
+
return /* @__PURE__ */ jsx(CopyButton, {
|
|
63
48
|
"aria-label": "Copy code",
|
|
64
49
|
className: cn("", className),
|
|
65
|
-
onClick: handleClick,
|
|
66
50
|
ref,
|
|
67
51
|
size: "medium",
|
|
68
52
|
tone: "neutral",
|
|
69
53
|
variant: "ghost",
|
|
70
54
|
...props,
|
|
55
|
+
content: code ?? "",
|
|
71
56
|
disabled: disabled || code === void 0,
|
|
72
|
-
children: [children, COPY_STATUS_ICON[`${copied}`]]
|
|
57
|
+
children: (copied) => /* @__PURE__ */ jsxs(Fragment, { children: [children, COPY_STATUS_ICON[`${copied}`]] })
|
|
73
58
|
});
|
|
74
59
|
}
|
|
75
60
|
// src/components/code-block/code-block-download.tsx
|