@goliapkg/gds 1.5.1 → 1.6.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.
@@ -1 +1 @@
1
- {"version":3,"file":"avatar-l3SaMCmU.js","names":[],"sources":["../src/l3-atoms/avatar.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\nimport { glassClass } from '../utils/glass'\nimport type { VariantProps } from '../utils/types'\n\nconst avatarVariants = cva(\n 'relative inline-flex shrink-0 select-none items-center justify-center rounded-full font-medium',\n {\n defaultVariants: { size: 'default' },\n variants: {\n size: {\n default: 'h-8 w-8 text-xs',\n lg: 'h-10 w-10 text-sm',\n sm: 'h-6 w-6 text-[10px]',\n xs: 'h-5 w-5 text-[9px]',\n },\n },\n },\n)\n\nconst paletteColors = [\n 'bg-palette-0', 'bg-palette-1', 'bg-palette-2', 'bg-palette-3', 'bg-palette-4',\n 'bg-palette-5', 'bg-palette-6', 'bg-palette-7', 'bg-palette-8', 'bg-palette-9',\n]\n\nconst statusColors: Record<string, string> = {\n away: 'bg-warning',\n busy: 'bg-danger',\n offline: 'bg-fg-muted/30',\n online: 'bg-success',\n}\n\nconst statusSizeMap: Record<string, string> = {\n default: 'h-2.5 w-2.5',\n lg: 'h-3 w-3',\n sm: 'h-2 w-2',\n xs: 'h-1.5 w-1.5',\n}\n\nfunction getInitials(name: string): string {\n const parts = name.trim().split(/\\s+/)\n if (parts.length >= 2) return `${parts[0][0]}${parts[1][0]}`.toUpperCase()\n return name.slice(0, 2).toUpperCase()\n}\n\nfunction hashName(name: string): number {\n let hash = 0\n for (let i = 0; i < name.length; i++) {\n hash = (hash * 31 + name.charCodeAt(i)) | 0\n }\n return Math.abs(hash)\n}\n\ntype AvatarStatus = 'away' | 'busy' | 'offline' | 'online'\n\ntype AvatarProps = React.HTMLAttributes<HTMLSpanElement> &\n VariantProps<typeof avatarVariants> & {\n glass?: boolean\n loading?: boolean\n name?: string\n src?: string\n status?: AvatarStatus\n }\n\nexport const Avatar = forwardRef<HTMLSpanElement, AvatarProps>(\n function Avatar({ className, glass, loading, name, size = 'default', src, status, ...props }, ref) {\n const sizeKey = size ?? 'default'\n const colorIdx = name !== undefined ? hashName(name) % 10 : 0\n\n return (\n <span\n className={cx(\n avatarVariants({ size }),\n src === undefined && paletteColors[colorIdx],\n src === undefined && 'text-accent-fg',\n glassClass(glass),\n className,\n )}\n data-component=\"avatar\"\n ref={ref}\n {...props}\n >\n {loading === true ? (\n <span className=\"absolute inset-0 animate-pulse rounded-full bg-fg-muted/20\" />\n ) : src !== undefined ? (\n <img alt={name ?? ''} className=\"absolute inset-0 h-full w-full rounded-full object-cover\" src={src} />\n ) : (\n <span>{name !== undefined ? getInitials(name) : '?'}</span>\n )}\n {status !== undefined && (\n <span\n className={cx(\n 'absolute right-0 bottom-0 rounded-full ring-2 ring-bg',\n statusSizeMap[sizeKey],\n statusColors[status],\n )}\n />\n )}\n </span>\n )\n },\n)\n\ntype AvatarGroupProps = React.HTMLAttributes<HTMLDivElement> & {\n max?: number\n}\n\nexport const AvatarGroup = forwardRef<HTMLDivElement, AvatarGroupProps>(\n function AvatarGroup({ children, className, max, ...props }, ref) {\n const items = Array.isArray(children) ? children : [children]\n const visible = max !== undefined ? items.slice(0, max) : items\n const overflow = max !== undefined ? items.length - max : 0\n\n return (\n <div\n className={cx('flex -space-x-2', className)}\n data-component=\"avatar-group\"\n ref={ref}\n {...props}\n >\n {visible}\n {overflow > 0 && (\n <span className=\"inline-flex gds-sq items-center justify-center rounded-full bg-bg-tertiary gds-text-body font-medium text-fg-muted ring-2 ring-bg\">\n +{overflow}\n </span>\n )}\n </div>\n )\n },\n)\n\nexport { avatarVariants }\nexport type { AvatarGroupProps, AvatarProps, AvatarStatus }\n"],"mappings":";;;;;AAOA,IAAM,IAAiB,EACrB,kGACA;CACE,iBAAiB,EAAE,MAAM,WAAW;CACpC,UAAU,EACR,MAAM;EACJ,SAAS;EACT,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CACF,EAEK,IAAgB;CACpB;CAAgB;CAAgB;CAAgB;CAAgB;CAChE;CAAgB;CAAgB;CAAgB;CAAgB;CACjE,EAEK,IAAuC;CAC3C,MAAM;CACN,MAAM;CACN,SAAS;CACT,QAAQ;CACT,EAEK,IAAwC;CAC5C,SAAS;CACT,IAAI;CACJ,IAAI;CACJ,IAAI;CACL;AAED,SAAS,EAAY,GAAsB;CACzC,IAAM,IAAQ,EAAK,MAAM,CAAC,MAAM,MAAM;AAEtC,QADI,EAAM,UAAU,IAAU,GAAG,EAAM,GAAG,KAAK,EAAM,GAAG,KAAK,aAAa,GACnE,EAAK,MAAM,GAAG,EAAE,CAAC,aAAa;;AAGvC,SAAS,EAAS,GAAsB;CACtC,IAAI,IAAO;AACX,MAAK,IAAI,IAAI,GAAG,IAAI,EAAK,QAAQ,IAC/B,KAAQ,IAAO,KAAK,EAAK,WAAW,EAAE,GAAI;AAE5C,QAAO,KAAK,IAAI,EAAK;;AAcvB,IAAa,IAAS,EACpB,SAAgB,EAAE,cAAW,UAAO,YAAS,SAAM,UAAO,WAAW,QAAK,WAAQ,GAAG,KAAS,GAAK;CACjG,IAAM,IAAU,KAAQ,WAClB,IAAW,MAAS,KAAA,IAAkC,IAAtB,EAAS,EAAK,GAAG;AAEvD,QACE,kBAAC,QAAD;EACE,WAAW,EACT,EAAe,EAAE,SAAM,CAAC,EACxB,MAAQ,KAAA,KAAa,EAAc,IACnC,MAAQ,KAAA,KAAa,kBACrB,EAAW,EAAM,EACjB,EACD;EACD,kBAAe;EACV;EACL,GAAI;YAVN,CAYG,MAAY,KACX,kBAAC,QAAD,EAAM,WAAU,8DAA+D,CAAA,GAC7E,MAAQ,KAAA,IAGV,kBAAC,QAAD,EAAA,UAAO,MAAS,KAAA,IAAgC,MAApB,EAAY,EAAK,EAAc,CAAA,GAF3D,kBAAC,OAAD;GAAK,KAAK,KAAQ;GAAI,WAAU;GAAgE;GAAO,CAAA,EAIxG,MAAW,KAAA,KACV,kBAAC,QAAD,EACE,WAAW,EACT,yDACA,EAAc,IACd,EAAa,GACd,EACD,CAAA,CAEC;;EAGZ,EAMY,IAAc,EACzB,SAAqB,EAAE,aAAU,cAAW,QAAK,GAAG,KAAS,GAAK;CAChE,IAAM,IAAQ,MAAM,QAAQ,EAAS,GAAG,IAAW,CAAC,EAAS,EACvD,IAAU,MAAQ,KAAA,IAAkC,IAAtB,EAAM,MAAM,GAAG,EAAI,EACjD,IAAW,MAAQ,KAAA,IAAiC,IAArB,EAAM,SAAS;AAEpD,QACE,kBAAC,OAAD;EACE,WAAW,EAAG,mBAAmB,EAAU;EAC3C,kBAAe;EACV;EACL,GAAI;YAJN,CAMG,GACA,IAAW,KACV,kBAAC,QAAD;GAAM,WAAU;aAAhB,CAAoJ,KAChJ,EACG;KAEL;;EAGX"}
1
+ {"version":3,"file":"avatar-l3SaMCmU.js","names":[],"sources":["../src/l3-atoms/avatar.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\nimport { glassClass } from '../utils/glass'\nimport type { VariantProps } from '../utils/types'\n\nconst avatarVariants = cva(\n 'relative inline-flex shrink-0 select-none items-center justify-center rounded-full font-medium',\n {\n defaultVariants: { size: 'default' },\n variants: {\n size: {\n default: 'h-8 w-8 text-xs',\n lg: 'h-10 w-10 text-sm',\n sm: 'h-6 w-6 text-[10px]',\n xs: 'h-5 w-5 text-[9px]',\n },\n },\n },\n)\n\nconst paletteColors = [\n 'bg-palette-0', 'bg-palette-1', 'bg-palette-2', 'bg-palette-3', 'bg-palette-4',\n 'bg-palette-5', 'bg-palette-6', 'bg-palette-7', 'bg-palette-8', 'bg-palette-9',\n]\n\nconst statusColors: Record<string, string> = {\n away: 'bg-warning',\n busy: 'bg-danger',\n offline: 'bg-fg-muted/30',\n online: 'bg-success',\n}\n\nconst statusSizeMap: Record<string, string> = {\n default: 'h-2.5 w-2.5',\n lg: 'h-3 w-3',\n sm: 'h-2 w-2',\n xs: 'h-1.5 w-1.5',\n}\n\nfunction getInitials(name: string): string {\n const parts = name.trim().split(/\\s+/)\n if (parts.length >= 2) return `${parts[0][0]}${parts[1][0]}`.toUpperCase()\n return name.slice(0, 2).toUpperCase()\n}\n\nfunction hashName(name: string): number {\n let hash = 0\n for (let i = 0; i < name.length; i++) {\n hash = (hash * 31 + name.charCodeAt(i)) | 0\n }\n return Math.abs(hash)\n}\n\ntype AvatarStatus = 'away' | 'busy' | 'offline' | 'online'\n\ntype AvatarProps = React.HTMLAttributes<HTMLSpanElement> &\n VariantProps<typeof avatarVariants> & {\n /** Enable frosted glass translucency effect */\n glass?: boolean\n /** Show pulse skeleton placeholder */\n loading?: boolean\n /** Display name — used for initials and color hashing */\n name?: string\n /** Image URL; falls back to initials when absent */\n src?: string\n /** Presence indicator dot in bottom-right corner */\n status?: AvatarStatus\n }\n\nexport const Avatar = forwardRef<HTMLSpanElement, AvatarProps>(\n function Avatar({ className, glass, loading, name, size = 'default', src, status, ...props }, ref) {\n const sizeKey = size ?? 'default'\n const colorIdx = name !== undefined ? hashName(name) % 10 : 0\n\n return (\n <span\n className={cx(\n avatarVariants({ size }),\n src === undefined && paletteColors[colorIdx],\n src === undefined && 'text-accent-fg',\n glassClass(glass),\n className,\n )}\n data-component=\"avatar\"\n ref={ref}\n {...props}\n >\n {loading === true ? (\n <span className=\"absolute inset-0 animate-pulse rounded-full bg-fg-muted/20\" />\n ) : src !== undefined ? (\n <img alt={name ?? ''} className=\"absolute inset-0 h-full w-full rounded-full object-cover\" src={src} />\n ) : (\n <span>{name !== undefined ? getInitials(name) : '?'}</span>\n )}\n {status !== undefined && (\n <span\n className={cx(\n 'absolute right-0 bottom-0 rounded-full ring-2 ring-bg',\n statusSizeMap[sizeKey],\n statusColors[status],\n )}\n />\n )}\n </span>\n )\n },\n)\n\ntype AvatarGroupProps = React.HTMLAttributes<HTMLDivElement> & {\n max?: number\n}\n\nexport const AvatarGroup = forwardRef<HTMLDivElement, AvatarGroupProps>(\n function AvatarGroup({ children, className, max, ...props }, ref) {\n const items = Array.isArray(children) ? children : [children]\n const visible = max !== undefined ? items.slice(0, max) : items\n const overflow = max !== undefined ? items.length - max : 0\n\n return (\n <div\n className={cx('flex -space-x-2', className)}\n data-component=\"avatar-group\"\n ref={ref}\n {...props}\n >\n {visible}\n {overflow > 0 && (\n <span className=\"inline-flex gds-sq items-center justify-center rounded-full bg-bg-tertiary gds-text-body font-medium text-fg-muted ring-2 ring-bg\">\n +{overflow}\n </span>\n )}\n </div>\n )\n },\n)\n\nexport { avatarVariants }\nexport type { AvatarGroupProps, AvatarProps, AvatarStatus }\n"],"mappings":";;;;;AAOA,IAAM,IAAiB,EACrB,kGACA;CACE,iBAAiB,EAAE,MAAM,WAAW;CACpC,UAAU,EACR,MAAM;EACJ,SAAS;EACT,IAAI;EACJ,IAAI;EACJ,IAAI;EACL,EACF;CACF,CACF,EAEK,IAAgB;CACpB;CAAgB;CAAgB;CAAgB;CAAgB;CAChE;CAAgB;CAAgB;CAAgB;CAAgB;CACjE,EAEK,IAAuC;CAC3C,MAAM;CACN,MAAM;CACN,SAAS;CACT,QAAQ;CACT,EAEK,IAAwC;CAC5C,SAAS;CACT,IAAI;CACJ,IAAI;CACJ,IAAI;CACL;AAED,SAAS,EAAY,GAAsB;CACzC,IAAM,IAAQ,EAAK,MAAM,CAAC,MAAM,MAAM;AAEtC,QADI,EAAM,UAAU,IAAU,GAAG,EAAM,GAAG,KAAK,EAAM,GAAG,KAAK,aAAa,GACnE,EAAK,MAAM,GAAG,EAAE,CAAC,aAAa;;AAGvC,SAAS,EAAS,GAAsB;CACtC,IAAI,IAAO;AACX,MAAK,IAAI,IAAI,GAAG,IAAI,EAAK,QAAQ,IAC/B,KAAQ,IAAO,KAAK,EAAK,WAAW,EAAE,GAAI;AAE5C,QAAO,KAAK,IAAI,EAAK;;AAmBvB,IAAa,IAAS,EACpB,SAAgB,EAAE,cAAW,UAAO,YAAS,SAAM,UAAO,WAAW,QAAK,WAAQ,GAAG,KAAS,GAAK;CACjG,IAAM,IAAU,KAAQ,WAClB,IAAW,MAAS,KAAA,IAAkC,IAAtB,EAAS,EAAK,GAAG;AAEvD,QACE,kBAAC,QAAD;EACE,WAAW,EACT,EAAe,EAAE,SAAM,CAAC,EACxB,MAAQ,KAAA,KAAa,EAAc,IACnC,MAAQ,KAAA,KAAa,kBACrB,EAAW,EAAM,EACjB,EACD;EACD,kBAAe;EACV;EACL,GAAI;YAVN,CAYG,MAAY,KACX,kBAAC,QAAD,EAAM,WAAU,8DAA+D,CAAA,GAC7E,MAAQ,KAAA,IAGV,kBAAC,QAAD,EAAA,UAAO,MAAS,KAAA,IAAgC,MAApB,EAAY,EAAK,EAAc,CAAA,GAF3D,kBAAC,OAAD;GAAK,KAAK,KAAQ;GAAI,WAAU;GAAgE;GAAO,CAAA,EAIxG,MAAW,KAAA,KACV,kBAAC,QAAD,EACE,WAAW,EACT,yDACA,EAAc,IACd,EAAa,GACd,EACD,CAAA,CAEC;;EAGZ,EAMY,IAAc,EACzB,SAAqB,EAAE,aAAU,cAAW,QAAK,GAAG,KAAS,GAAK;CAChE,IAAM,IAAQ,MAAM,QAAQ,EAAS,GAAG,IAAW,CAAC,EAAS,EACvD,IAAU,MAAQ,KAAA,IAAkC,IAAtB,EAAM,MAAM,GAAG,EAAI,EACjD,IAAW,MAAQ,KAAA,IAAiC,IAArB,EAAM,SAAS;AAEpD,QACE,kBAAC,OAAD;EACE,WAAW,EAAG,mBAAmB,EAAU;EAC3C,kBAAe;EACV;EACL,GAAI;YAJN,CAMG,GACA,IAAW,KACV,kBAAC,QAAD;GAAM,WAAU;aAAhB,CAAoJ,KAChJ,EACG;KAEL;;EAGX"}
@@ -1 +1 @@
1
- {"version":3,"file":"button-avu-rQU4.js","names":[],"sources":["../node_modules/class-variance-authority/dist/index.mjs","../src/l2-primitives/button.tsx"],"sourcesContent":["/**\n * Copyright 2022 Joe Bell. All rights reserved.\n *\n * This file is licensed to you under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with the\n * License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR REPRESENTATIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations under\n * the License.\n */ import { clsx } from \"clsx\";\nconst falsyToString = (value)=>typeof value === \"boolean\" ? `${value}` : value === 0 ? \"0\" : value;\nexport const cx = clsx;\nexport const cva = (base, config)=>(props)=>{\n var _config_compoundVariants;\n if ((config === null || config === void 0 ? void 0 : config.variants) == null) return cx(base, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);\n const { variants, defaultVariants } = config;\n const getVariantClassNames = Object.keys(variants).map((variant)=>{\n const variantProp = props === null || props === void 0 ? void 0 : props[variant];\n const defaultVariantProp = defaultVariants === null || defaultVariants === void 0 ? void 0 : defaultVariants[variant];\n if (variantProp === null) return null;\n const variantKey = falsyToString(variantProp) || falsyToString(defaultVariantProp);\n return variants[variant][variantKey];\n });\n const propsWithoutUndefined = props && Object.entries(props).reduce((acc, param)=>{\n let [key, value] = param;\n if (value === undefined) {\n return acc;\n }\n acc[key] = value;\n return acc;\n }, {});\n const getCompoundVariantClassNames = config === null || config === void 0 ? void 0 : (_config_compoundVariants = config.compoundVariants) === null || _config_compoundVariants === void 0 ? void 0 : _config_compoundVariants.reduce((acc, param)=>{\n let { class: cvClass, className: cvClassName, ...compoundVariantOptions } = param;\n return Object.entries(compoundVariantOptions).every((param)=>{\n let [key, value] = param;\n return Array.isArray(value) ? value.includes({\n ...defaultVariants,\n ...propsWithoutUndefined\n }[key]) : ({\n ...defaultVariants,\n ...propsWithoutUndefined\n })[key] === value;\n }) ? [\n ...acc,\n cvClass,\n cvClassName\n ] : acc;\n }, []);\n return cx(base, getVariantClassNames, getCompoundVariantClassNames, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);\n };\n\n","import { cva } from 'class-variance-authority'\nimport type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\nimport { glassClass } from '../utils/glass'\nimport { motionClass } from '../utils/motion'\nimport type { VariantProps } from '../utils/types'\n\nconst buttonVariants = cva(\n 'inline-flex select-none items-center justify-center font-medium transition-colors ' +\n focusCls,\n {\n defaultVariants: {\n size: 'default',\n variant: 'primary',\n },\n variants: {\n size: {\n default: 'gds-h gds-gap-sm gds-radius-button gds-pad-x gds-text-body',\n lg: 'gds-h-lg gds-gap gds-radius-button gds-pad-x-lg gds-text-body',\n sm: 'gds-h-sm gds-gap-xs gds-radius-button gds-pad-x-sm gds-text-label',\n },\n variant: {\n danger: 'bg-danger text-accent-fg hover:bg-danger/90',\n ghost: 'bg-transparent text-fg-muted hover:bg-bg-tertiary hover:text-fg',\n primary: 'bg-accent text-accent-fg hover:bg-accent-hover',\n secondary: 'border border-border bg-transparent text-fg hover:bg-bg-tertiary',\n },\n },\n },\n)\n\ntype ButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> &\n VariantProps<typeof buttonVariants> & {\n fullWidth?: boolean\n glass?: boolean\n icon?: ReactNode\n iconRight?: ReactNode\n loading?: boolean\n motion?: string\n }\n\n// inline SVG spinner to avoid circular L2 dependency\nfunction InlineSpinner() {\n return (\n <svg className=\"h-3 w-3 animate-spin\" fill=\"none\" viewBox=\"0 0 24 24\">\n <circle\n className=\"opacity-25\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z\"\n fill=\"currentColor\"\n />\n </svg>\n )\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n function Button(\n {\n children,\n className,\n disabled,\n fullWidth,\n glass,\n icon,\n iconRight,\n loading,\n motion: m,\n size,\n variant,\n ...props\n },\n ref,\n ) {\n return (\n <button\n className={cx(\n buttonVariants({ size, variant }),\n (disabled === true || loading === true) && 'cursor-not-allowed opacity-50',\n fullWidth === true && 'w-full',\n glassClass(glass),\n glass === true && 'border border-white/10 bg-bg/60',\n motionClass(m),\n className,\n )}\n data-component=\"button\"\n data-variant={variant ?? 'primary'}\n disabled={disabled === true || loading === true}\n ref={ref}\n {...props}\n >\n {loading === true ? (\n <InlineSpinner />\n ) : icon !== undefined ? (\n <span className=\"gds-icon-child-sm\">{icon}</span>\n ) : null}\n {children}\n {iconRight !== undefined && (\n <span className=\"gds-icon-child-sm\">{iconRight}</span>\n )}\n </button>\n )\n },\n)\n\nexport { buttonVariants }\nexport type { ButtonProps }\n"],"x_google_ignoreList":[0],"mappings":";;;;;AAeA,IAAM,KAAiB,MAAQ,OAAO,KAAU,YAAY,GAAG,MAAU,MAAU,IAAI,MAAM,GAChF,IAAK,GACL,KAAO,GAAM,OAAU,MAAQ;AAEpC,KAAK,GAAuD,YAAa,KAAM,QAAO,EAAG,GAAM,GAAoD,OAAO,GAAoD,UAAU;CACxN,IAAM,EAAE,aAAU,uBAAoB,GAChC,IAAuB,OAAO,KAAK,EAAS,CAAC,KAAK,MAAU;EAC9D,IAAM,IAAc,IAAoD,IAClE,IAAqB,IAAkF;AAC7G,MAAI,MAAgB,KAAM,QAAO;EACjC,IAAM,IAAa,EAAc,EAAY,IAAI,EAAc,EAAmB;AAClF,SAAO,EAAS,GAAS;GAC3B,EACI,IAAwB,KAAS,OAAO,QAAQ,EAAM,CAAC,QAAQ,GAAK,MAAQ;EAC9E,IAAI,CAAC,GAAK,KAAS;AAKnB,SAJI,MAAU,KAAA,MAGd,EAAI,KAAO,IAFA;IAIZ,EAAE,CAAC;AAkBN,QAAO,EAAG,GAAM,GAjBqB,GAAmF,kBAAsG,QAAQ,GAAK,MAAQ;EAC/O,IAAI,EAAE,OAAO,GAAS,WAAW,GAAa,GAAG,MAA2B;AAC5E,SAAO,OAAO,QAAQ,EAAuB,CAAC,OAAO,MAAQ;GACzD,IAAI,CAAC,GAAK,KAAS;AACnB,UAAO,MAAM,QAAQ,EAAM,GAAG,EAAM,SAAS;IACzC,GAAG;IACH,GAAG;IACN,CAAC,GAAK,GAAI;IACP,GAAG;IACH,GAAG;IACN,CAAE,OAAS;IACd,GAAG;GACD,GAAG;GACH;GACA;GACH,GAAG;IACL,EAAE,CAAC,EAC8D,GAAoD,OAAO,GAAoD,UAAU;GC3C/L,IAAiB,EACrB,uFACE,GACF;CACE,iBAAiB;EACf,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,MAAM;GACJ,SAAS;GACT,IAAI;GACJ,IAAI;GACL;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,SAAS;GACT,WAAW;GACZ;EACF;CACF,CACF;AAaD,SAAS,IAAgB;AACvB,QACE,kBAAC,OAAD;EAAK,WAAU;EAAuB,MAAK;EAAO,SAAQ;YAA1D,CACE,kBAAC,UAAD;GACE,WAAU;GACV,IAAG;GACH,IAAG;GACH,GAAE;GACF,QAAO;GACP,aAAY;GACZ,CAAA,EACF,kBAAC,QAAD;GACE,WAAU;GACV,GAAE;GACF,MAAK;GACL,CAAA,CACE;;;AAIV,IAAa,IAAS,EACpB,SACE,EACE,aACA,cACA,aACA,cACA,UACA,SACA,cACA,YACA,QAAQ,GACR,SACA,YACA,GAAG,KAEL,GACA;AACA,QACE,kBAAC,UAAD;EACE,WAAW,EACT,EAAe;GAAE;GAAM;GAAS,CAAC,GAChC,MAAa,MAAQ,MAAY,OAAS,iCAC3C,MAAc,MAAQ,UACtB,EAAW,EAAM,EACjB,MAAU,MAAQ,mCAClB,EAAY,EAAE,EACd,EACD;EACD,kBAAe;EACf,gBAAc,KAAW;EACzB,UAAU,MAAa,MAAQ,MAAY;EACtC;EACL,GAAI;YAdN;GAgBG,MAAY,KACX,kBAAC,GAAD,EAAiB,CAAA,GACf,MAAS,KAAA,IAET,OADF,kBAAC,QAAD;IAAM,WAAU;cAAqB;IAAY,CAAA;GAElD;GACA,MAAc,KAAA,KACb,kBAAC,QAAD;IAAM,WAAU;cAAqB;IAAiB,CAAA;GAEjD;;EAGd"}
1
+ {"version":3,"file":"button-avu-rQU4.js","names":[],"sources":["../node_modules/class-variance-authority/dist/index.mjs","../src/l2-primitives/button.tsx"],"sourcesContent":["/**\n * Copyright 2022 Joe Bell. All rights reserved.\n *\n * This file is licensed to you under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with the\n * License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR REPRESENTATIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations under\n * the License.\n */ import { clsx } from \"clsx\";\nconst falsyToString = (value)=>typeof value === \"boolean\" ? `${value}` : value === 0 ? \"0\" : value;\nexport const cx = clsx;\nexport const cva = (base, config)=>(props)=>{\n var _config_compoundVariants;\n if ((config === null || config === void 0 ? void 0 : config.variants) == null) return cx(base, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);\n const { variants, defaultVariants } = config;\n const getVariantClassNames = Object.keys(variants).map((variant)=>{\n const variantProp = props === null || props === void 0 ? void 0 : props[variant];\n const defaultVariantProp = defaultVariants === null || defaultVariants === void 0 ? void 0 : defaultVariants[variant];\n if (variantProp === null) return null;\n const variantKey = falsyToString(variantProp) || falsyToString(defaultVariantProp);\n return variants[variant][variantKey];\n });\n const propsWithoutUndefined = props && Object.entries(props).reduce((acc, param)=>{\n let [key, value] = param;\n if (value === undefined) {\n return acc;\n }\n acc[key] = value;\n return acc;\n }, {});\n const getCompoundVariantClassNames = config === null || config === void 0 ? void 0 : (_config_compoundVariants = config.compoundVariants) === null || _config_compoundVariants === void 0 ? void 0 : _config_compoundVariants.reduce((acc, param)=>{\n let { class: cvClass, className: cvClassName, ...compoundVariantOptions } = param;\n return Object.entries(compoundVariantOptions).every((param)=>{\n let [key, value] = param;\n return Array.isArray(value) ? value.includes({\n ...defaultVariants,\n ...propsWithoutUndefined\n }[key]) : ({\n ...defaultVariants,\n ...propsWithoutUndefined\n })[key] === value;\n }) ? [\n ...acc,\n cvClass,\n cvClassName\n ] : acc;\n }, []);\n return cx(base, getVariantClassNames, getCompoundVariantClassNames, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);\n };\n\n","import { cva } from 'class-variance-authority'\nimport type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\nimport { glassClass } from '../utils/glass'\nimport { motionClass } from '../utils/motion'\nimport type { VariantProps } from '../utils/types'\n\nconst buttonVariants = cva(\n 'inline-flex select-none items-center justify-center font-medium transition-colors ' +\n focusCls,\n {\n defaultVariants: {\n size: 'default',\n variant: 'primary',\n },\n variants: {\n size: {\n default: 'gds-h gds-gap-sm gds-radius-button gds-pad-x gds-text-body',\n lg: 'gds-h-lg gds-gap gds-radius-button gds-pad-x-lg gds-text-body',\n sm: 'gds-h-sm gds-gap-xs gds-radius-button gds-pad-x-sm gds-text-label',\n },\n variant: {\n danger: 'bg-danger text-accent-fg hover:bg-danger/90',\n ghost: 'bg-transparent text-fg-muted hover:bg-bg-tertiary hover:text-fg',\n primary: 'bg-accent text-accent-fg hover:bg-accent-hover',\n secondary: 'border border-border bg-transparent text-fg hover:bg-bg-tertiary',\n },\n },\n },\n)\n\ntype ButtonSize = 'default' | 'lg' | 'sm'\ntype ButtonVariant = 'danger' | 'ghost' | 'primary' | 'secondary'\n\ntype ButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> &\n VariantProps<typeof buttonVariants> & {\n /** Visual style: primary, secondary, ghost, danger */\n variant?: 'danger' | 'ghost' | 'primary' | 'secondary'\n /** Height and text scale preset */\n size?: 'default' | 'lg' | 'sm'\n fullWidth?: boolean\n /** Enable frosted glass translucency effect */\n glass?: boolean\n /** Icon element rendered before children */\n icon?: ReactNode\n iconRight?: ReactNode\n /** Show spinner and disable interaction */\n loading?: boolean\n /** Animation preset name (e.g. 'fade', 'scale') */\n motion?: string\n }\n\n// inline SVG spinner to avoid circular L2 dependency\nfunction InlineSpinner() {\n return (\n <svg className=\"h-3 w-3 animate-spin\" fill=\"none\" viewBox=\"0 0 24 24\">\n <circle\n className=\"opacity-25\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z\"\n fill=\"currentColor\"\n />\n </svg>\n )\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n function Button(\n {\n children,\n className,\n disabled,\n fullWidth,\n glass,\n icon,\n iconRight,\n loading,\n motion: m,\n size,\n variant,\n ...props\n },\n ref,\n ) {\n return (\n <button\n className={cx(\n buttonVariants({ size, variant }),\n (disabled === true || loading === true) && 'cursor-not-allowed opacity-50',\n fullWidth === true && 'w-full',\n glassClass(glass),\n glass === true && 'border border-white/10 bg-bg/60',\n motionClass(m),\n className,\n )}\n data-component=\"button\"\n data-variant={variant ?? 'primary'}\n disabled={disabled === true || loading === true}\n ref={ref}\n {...props}\n >\n {loading === true ? (\n <InlineSpinner />\n ) : icon !== undefined ? (\n <span className=\"gds-icon-child-sm\">{icon}</span>\n ) : null}\n {children}\n {iconRight !== undefined && (\n <span className=\"gds-icon-child-sm\">{iconRight}</span>\n )}\n </button>\n )\n },\n)\n\nexport { buttonVariants }\nexport type { ButtonProps, ButtonSize, ButtonVariant }\n"],"x_google_ignoreList":[0],"mappings":";;;;;AAeA,IAAM,KAAiB,MAAQ,OAAO,KAAU,YAAY,GAAG,MAAU,MAAU,IAAI,MAAM,GAChF,IAAK,GACL,KAAO,GAAM,OAAU,MAAQ;AAEpC,KAAK,GAAuD,YAAa,KAAM,QAAO,EAAG,GAAM,GAAoD,OAAO,GAAoD,UAAU;CACxN,IAAM,EAAE,aAAU,uBAAoB,GAChC,IAAuB,OAAO,KAAK,EAAS,CAAC,KAAK,MAAU;EAC9D,IAAM,IAAc,IAAoD,IAClE,IAAqB,IAAkF;AAC7G,MAAI,MAAgB,KAAM,QAAO;EACjC,IAAM,IAAa,EAAc,EAAY,IAAI,EAAc,EAAmB;AAClF,SAAO,EAAS,GAAS;GAC3B,EACI,IAAwB,KAAS,OAAO,QAAQ,EAAM,CAAC,QAAQ,GAAK,MAAQ;EAC9E,IAAI,CAAC,GAAK,KAAS;AAKnB,SAJI,MAAU,KAAA,MAGd,EAAI,KAAO,IAFA;IAIZ,EAAE,CAAC;AAkBN,QAAO,EAAG,GAAM,GAjBqB,GAAmF,kBAAsG,QAAQ,GAAK,MAAQ;EAC/O,IAAI,EAAE,OAAO,GAAS,WAAW,GAAa,GAAG,MAA2B;AAC5E,SAAO,OAAO,QAAQ,EAAuB,CAAC,OAAO,MAAQ;GACzD,IAAI,CAAC,GAAK,KAAS;AACnB,UAAO,MAAM,QAAQ,EAAM,GAAG,EAAM,SAAS;IACzC,GAAG;IACH,GAAG;IACN,CAAC,GAAK,GAAI;IACP,GAAG;IACH,GAAG;IACN,CAAE,OAAS;IACd,GAAG;GACD,GAAG;GACH;GACA;GACH,GAAG;IACL,EAAE,CAAC,EAC8D,GAAoD,OAAO,GAAoD,UAAU;GC3C/L,IAAiB,EACrB,uFACE,GACF;CACE,iBAAiB;EACf,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,MAAM;GACJ,SAAS;GACT,IAAI;GACJ,IAAI;GACL;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,SAAS;GACT,WAAW;GACZ;EACF;CACF,CACF;AAwBD,SAAS,IAAgB;AACvB,QACE,kBAAC,OAAD;EAAK,WAAU;EAAuB,MAAK;EAAO,SAAQ;YAA1D,CACE,kBAAC,UAAD;GACE,WAAU;GACV,IAAG;GACH,IAAG;GACH,GAAE;GACF,QAAO;GACP,aAAY;GACZ,CAAA,EACF,kBAAC,QAAD;GACE,WAAU;GACV,GAAE;GACF,MAAK;GACL,CAAA,CACE;;;AAIV,IAAa,IAAS,EACpB,SACE,EACE,aACA,cACA,aACA,cACA,UACA,SACA,cACA,YACA,QAAQ,GACR,SACA,YACA,GAAG,KAEL,GACA;AACA,QACE,kBAAC,UAAD;EACE,WAAW,EACT,EAAe;GAAE;GAAM;GAAS,CAAC,GAChC,MAAa,MAAQ,MAAY,OAAS,iCAC3C,MAAc,MAAQ,UACtB,EAAW,EAAM,EACjB,MAAU,MAAQ,mCAClB,EAAY,EAAE,EACd,EACD;EACD,kBAAe;EACf,gBAAc,KAAW;EACzB,UAAU,MAAa,MAAQ,MAAY;EACtC;EACL,GAAI;YAdN;GAgBG,MAAY,KACX,kBAAC,GAAD,EAAiB,CAAA,GACf,MAAS,KAAA,IAET,OADF,kBAAC,QAAD;IAAM,WAAU;cAAqB;IAAY,CAAA;GAElD;GACA,MAAc,KAAA,KACb,kBAAC,QAAD;IAAM,WAAU;cAAqB;IAAiB,CAAA;GAEjD;;EAGd"}
@@ -4,25 +4,43 @@ declare const buttonVariants: (props?: ({
4
4
  size?: "sm" | "default" | "lg" | null | undefined;
5
5
  variant?: "danger" | "primary" | "ghost" | "secondary" | null | undefined;
6
6
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ type ButtonSize = 'default' | 'lg' | 'sm';
8
+ type ButtonVariant = 'danger' | 'ghost' | 'primary' | 'secondary';
7
9
  type ButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<typeof buttonVariants> & {
10
+ /** Visual style: primary, secondary, ghost, danger */
11
+ variant?: 'danger' | 'ghost' | 'primary' | 'secondary';
12
+ /** Height and text scale preset */
13
+ size?: 'default' | 'lg' | 'sm';
8
14
  fullWidth?: boolean;
15
+ /** Enable frosted glass translucency effect */
9
16
  glass?: boolean;
17
+ /** Icon element rendered before children */
10
18
  icon?: ReactNode;
11
19
  iconRight?: ReactNode;
20
+ /** Show spinner and disable interaction */
12
21
  loading?: boolean;
22
+ /** Animation preset name (e.g. 'fade', 'scale') */
13
23
  motion?: string;
14
24
  };
15
25
  export declare const Button: import("react").ForwardRefExoticComponent<import("react").ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<(props?: ({
16
26
  size?: "sm" | "default" | "lg" | null | undefined;
17
27
  variant?: "danger" | "primary" | "ghost" | "secondary" | null | undefined;
18
28
  } & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
29
+ /** Visual style: primary, secondary, ghost, danger */
30
+ variant?: "danger" | "ghost" | "primary" | "secondary";
31
+ /** Height and text scale preset */
32
+ size?: "default" | "lg" | "sm";
19
33
  fullWidth?: boolean;
34
+ /** Enable frosted glass translucency effect */
20
35
  glass?: boolean;
36
+ /** Icon element rendered before children */
21
37
  icon?: ReactNode;
22
38
  iconRight?: ReactNode;
39
+ /** Show spinner and disable interaction */
23
40
  loading?: boolean;
41
+ /** Animation preset name (e.g. 'fade', 'scale') */
24
42
  motion?: string;
25
43
  } & import("react").RefAttributes<HTMLButtonElement>>;
26
44
  export { buttonVariants };
27
- export type { ButtonProps };
45
+ export type { ButtonProps, ButtonSize, ButtonVariant };
28
46
  //# sourceMappingURL=button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/l2-primitives/button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,QAAA,MAAM,cAAc;;;8EAsBnB,CAAA;AAED,KAAK,WAAW,GAAG,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAC9D,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAuBH,eAAO,MAAM,MAAM;;;;gBA7BH,OAAO;YACX,OAAO;WACR,SAAS;gBACJ,SAAS;cACX,OAAO;aACR,MAAM;qDAuElB,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA;AACzB,YAAY,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/l2-primitives/button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,QAAA,MAAM,cAAc;;;8EAsBnB,CAAA;AAED,KAAK,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAAA;AACzC,KAAK,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAA;AAEjE,KAAK,WAAW,GAAG,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAC9D,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,sDAAsD;IACtD,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAA;IACtD,mCAAmC;IACnC,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI,CAAA;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,4CAA4C;IAC5C,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAuBH,eAAO,MAAM,MAAM;;;;IArCf,sDAAsD;cAC5C,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW;IACtD,mCAAmC;WAC5B,SAAS,GAAG,IAAI,GAAG,IAAI;gBAClB,OAAO;IACnB,+CAA+C;YACvC,OAAO;IACf,4CAA4C;WACrC,SAAS;gBACJ,SAAS;IACrB,2CAA2C;cACjC,OAAO;IACjB,mDAAmD;aAC1C,MAAM;qDAuElB,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA;AACzB,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,CAAA"}
@@ -6,7 +6,7 @@ export type { BadgeProps, BadgeVariant } from './badge';
6
6
  export { Badge, badgeVariants, paletteVariant } from './badge';
7
7
  export type { BadgeDotProps } from './badge-dot';
8
8
  export { BadgeDot } from './badge-dot';
9
- export type { ButtonProps } from './button';
9
+ export type { ButtonProps, ButtonSize, ButtonVariant } from './button';
10
10
  export { Button, buttonVariants } from './button';
11
11
  export type { ContainerProps } from './container';
12
12
  export { Container, containerVariants } from './container';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/l2-primitives/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/l2-primitives/index.ts"],"names":[],"mappings":"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"}
@@ -5,22 +5,42 @@ declare const inputVariants: (props?: ({
5
5
  inputSize?: "sm" | "default" | null | undefined;
6
6
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
7
  type InputProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'> & VariantProps<typeof inputVariants> & {
8
+ /** Height and text scale preset (named inputSize to avoid HTML conflict) */
9
+ inputSize?: 'default' | 'sm';
10
+ /** Show red border for validation error state */
11
+ error?: boolean;
12
+ /** Show clear button when input has value */
8
13
  clearable?: boolean;
14
+ /** Enable frosted glass translucency effect */
9
15
  glass?: boolean;
16
+ /** Icon element rendered on the left side */
10
17
  icon?: ReactNode;
18
+ /** Show spinner on the right side */
11
19
  loading?: boolean;
20
+ /** Callback when clear button is clicked */
12
21
  onClear?: () => void;
22
+ /** Icon element rendered on the right side */
13
23
  rightIcon?: ReactNode;
14
24
  };
15
25
  export declare const Input: import("react").ForwardRefExoticComponent<Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "size"> & VariantProps<(props?: ({
16
26
  error?: boolean | null | undefined;
17
27
  inputSize?: "sm" | "default" | null | undefined;
18
28
  } & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
29
+ /** Height and text scale preset (named inputSize to avoid HTML conflict) */
30
+ inputSize?: "default" | "sm";
31
+ /** Show red border for validation error state */
32
+ error?: boolean;
33
+ /** Show clear button when input has value */
19
34
  clearable?: boolean;
35
+ /** Enable frosted glass translucency effect */
20
36
  glass?: boolean;
37
+ /** Icon element rendered on the left side */
21
38
  icon?: ReactNode;
39
+ /** Show spinner on the right side */
22
40
  loading?: boolean;
41
+ /** Callback when clear button is clicked */
23
42
  onClear?: () => void;
43
+ /** Icon element rendered on the right side */
24
44
  rightIcon?: ReactNode;
25
45
  } & import("react").RefAttributes<HTMLInputElement>>;
26
46
  export { inputVariants };
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/l2-primitives/input.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,QAAA,MAAM,aAAa;;;8EAyBlB,CAAA;AAED,KAAK,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,GACzE,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG;IACnC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA;AAqBH,eAAO,MAAM,KAAK;;;;gBA3BF,OAAO;YACX,OAAO;WACR,SAAS;cACN,OAAO;cACP,MAAM,IAAI;gBACR,SAAS;oDA+FxB,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA;AACxB,YAAY,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/l2-primitives/input.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,QAAA,MAAM,aAAa;;;8EAyBlB,CAAA;AAED,KAAK,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,GACzE,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG;IACnC,4EAA4E;IAC5E,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAC5B,iDAAiD;IACjD,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,6CAA6C;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,6CAA6C;IAC7C,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA;AAqBH,eAAO,MAAM,KAAK;;;;IArCd,4EAA4E;gBAChE,SAAS,GAAG,IAAI;IAC5B,iDAAiD;YACzC,OAAO;IACf,6CAA6C;gBACjC,OAAO;IACnB,+CAA+C;YACvC,OAAO;IACf,6CAA6C;WACtC,SAAS;IAChB,qCAAqC;cAC3B,OAAO;IACjB,4CAA4C;cAClC,MAAM,IAAI;IACpB,8CAA8C;gBAClC,SAAS;oDA+FxB,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA;AACxB,YAAY,EAAE,UAAU,EAAE,CAAA"}
@@ -4,19 +4,29 @@ declare const avatarVariants: (props?: ({
4
4
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
5
  type AvatarStatus = 'away' | 'busy' | 'offline' | 'online';
6
6
  type AvatarProps = React.HTMLAttributes<HTMLSpanElement> & VariantProps<typeof avatarVariants> & {
7
+ /** Enable frosted glass translucency effect */
7
8
  glass?: boolean;
9
+ /** Show pulse skeleton placeholder */
8
10
  loading?: boolean;
11
+ /** Display name — used for initials and color hashing */
9
12
  name?: string;
13
+ /** Image URL; falls back to initials when absent */
10
14
  src?: string;
15
+ /** Presence indicator dot in bottom-right corner */
11
16
  status?: AvatarStatus;
12
17
  };
13
18
  export declare const Avatar: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLSpanElement> & VariantProps<(props?: ({
14
19
  size?: "xs" | "sm" | "default" | "lg" | null | undefined;
15
20
  } & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
21
+ /** Enable frosted glass translucency effect */
16
22
  glass?: boolean;
23
+ /** Show pulse skeleton placeholder */
17
24
  loading?: boolean;
25
+ /** Display name — used for initials and color hashing */
18
26
  name?: string;
27
+ /** Image URL; falls back to initials when absent */
19
28
  src?: string;
29
+ /** Presence indicator dot in bottom-right corner */
20
30
  status?: AvatarStatus;
21
31
  } & import("react").RefAttributes<HTMLSpanElement>>;
22
32
  type AvatarGroupProps = React.HTMLAttributes<HTMLDivElement> & {
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.d.ts","sourceRoot":"","sources":["../../src/l3-atoms/avatar.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,QAAA,MAAM,cAAc;;8EAanB,CAAA;AAmCD,KAAK,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAA;AAE1D,KAAK,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,GACtD,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,YAAY,CAAA;CACtB,CAAA;AAEH,eAAO,MAAM,MAAM;;;YAPP,OAAO;cACL,OAAO;WACV,MAAM;UACP,MAAM;aACH,YAAY;mDAwCxB,CAAA;AAED,KAAK,gBAAgB,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC7D,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,eAAO,MAAM,WAAW;UAHhB,MAAM;kDAyBb,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA;AACzB,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"avatar.d.ts","sourceRoot":"","sources":["../../src/l3-atoms/avatar.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,QAAA,MAAM,cAAc;;8EAanB,CAAA;AAmCD,KAAK,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAA;AAE1D,KAAK,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,GACtD,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,oDAAoD;IACpD,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,oDAAoD;IACpD,MAAM,CAAC,EAAE,YAAY,CAAA;CACtB,CAAA;AAEH,eAAO,MAAM,MAAM;;;IAZf,+CAA+C;YACvC,OAAO;IACf,sCAAsC;cAC5B,OAAO;IACjB,yDAAyD;WAClD,MAAM;IACb,oDAAoD;UAC9C,MAAM;IACZ,oDAAoD;aAC3C,YAAY;mDAwCxB,CAAA;AAED,KAAK,gBAAgB,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC7D,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,eAAO,MAAM,WAAW;UAHhB,MAAM;kDAyBb,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA;AACzB,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,CAAA"}
@@ -2,8 +2,11 @@ import type { ReactNode } from 'react';
2
2
  type CardPadding = 'default' | 'lg' | 'none' | 'sm';
3
3
  export type CardProps = {
4
4
  children: ReactNode;
5
+ /** Enable frosted glass translucency effect */
5
6
  glass?: boolean;
7
+ /** Inner padding preset */
6
8
  padding?: CardPadding;
9
+ /** Show pulse skeleton placeholder */
7
10
  loading?: boolean;
8
11
  className?: string;
9
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/card.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;AASnD,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,IAAI,sGA8BhB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,eAAe,2CAUpF;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,gBAAgB,2CAEpE;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,eAAe,2CAElE"}
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/card.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;AASnD,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,SAAS,CAAA;IACnB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,2BAA2B;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,IAAI,sGA8BhB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,eAAe,2CAUpF;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,gBAAgB,2CAEpE;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,eAAe,2CAElE"}
@@ -1,12 +1,18 @@
1
1
  import type { ReactNode } from 'react';
2
2
  type DialogWidth = 'default' | 'lg' | 'md' | 'sm' | 'xl';
3
3
  export type DialogProps = {
4
+ /** Whether the dialog is visible */
4
5
  open: boolean;
6
+ /** Called when backdrop click, escape key, or close button */
5
7
  onClose: () => void;
8
+ /** Header title text */
6
9
  title?: string;
10
+ /** Subtitle shown below the title */
7
11
  description?: string;
8
12
  children: ReactNode;
13
+ /** Enable frosted glass translucency effect */
9
14
  glass?: boolean;
15
+ /** Max-width preset for the dialog panel */
10
16
  width?: DialogWidth;
11
17
  className?: string;
12
18
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/dialog.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAStC,KAAK,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAUxD,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,MAAM,wGAoDlB,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,iBAAS,YAAY,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,2CAM/D;AAED,OAAO,EAAE,YAAY,EAAE,CAAA;AACvB,YAAY,EAAE,iBAAiB,EAAE,CAAA"}
1
+ {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/dialog.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAStC,KAAK,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAUxD,MAAM,MAAM,WAAW,GAAG;IACxB,oCAAoC;IACpC,IAAI,EAAE,OAAO,CAAA;IACb,8DAA8D;IAC9D,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,SAAS,CAAA;IACnB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,4CAA4C;IAC5C,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,MAAM,wGAoDlB,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,iBAAS,YAAY,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,2CAM/D;AAED,OAAO,EAAE,YAAY,EAAE,CAAA;AACvB,YAAY,EAAE,iBAAiB,EAAE,CAAA"}