@accelint/design-toolkit 5.1.0 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/accordion/styles.js +1 -1
- package/dist/components/accordion/styles.js.map +1 -1
- package/dist/components/breadcrumbs/index.d.ts +15 -0
- package/dist/components/breadcrumbs/index.js +4 -0
- package/dist/components/breadcrumbs/index.js.map +1 -0
- package/dist/components/breadcrumbs/styles.d.ts +48 -0
- package/dist/components/breadcrumbs/styles.js +2 -0
- package/dist/components/breadcrumbs/styles.js.map +1 -0
- package/dist/components/breadcrumbs/types.d.ts +20 -0
- package/dist/components/breadcrumbs/types.js +2 -0
- package/dist/components/breadcrumbs/types.js.map +1 -0
- package/dist/components/button/index.d.ts +2 -2
- package/dist/components/button/index.js +1 -1
- package/dist/components/button/index.js.map +1 -1
- package/dist/components/button/styles.d.ts +15 -15
- package/dist/components/button/styles.js +1 -1
- package/dist/components/button/styles.js.map +1 -1
- package/dist/components/button/types.d.ts +7 -5
- package/dist/components/color-picker/styles.d.ts +3 -3
- package/dist/components/divider/index.d.ts +32 -0
- package/dist/components/divider/index.js +4 -0
- package/dist/components/divider/index.js.map +1 -0
- package/dist/components/divider/styles.d.ts +5 -0
- package/dist/components/divider/styles.js +2 -0
- package/dist/components/divider/styles.js.map +1 -0
- package/dist/components/divider/types.d.ts +11 -0
- package/dist/components/divider/types.js +2 -0
- package/dist/components/divider/types.js.map +1 -0
- package/dist/components/drawer/index.d.ts +12 -2
- package/dist/components/drawer/index.js +1 -1
- package/dist/components/drawer/index.js.map +1 -1
- package/dist/components/drawer/styles.js +1 -1
- package/dist/components/drawer/styles.js.map +1 -1
- package/dist/components/drawer/types.d.ts +13 -7
- package/dist/components/input/styles.js +1 -1
- package/dist/components/input/styles.js.map +1 -1
- package/dist/components/menu/styles.js +1 -1
- package/dist/components/menu/styles.js.map +1 -1
- package/dist/components/search-field/styles.js +1 -1
- package/dist/components/search-field/styles.js.map +1 -1
- package/dist/components/select-field/types.d.ts +0 -1
- package/dist/components/sidenav/index.d.ts +1 -6
- package/dist/components/sidenav/index.js +1 -1
- package/dist/components/sidenav/index.js.map +1 -1
- package/dist/components/sidenav/styles.js +1 -1
- package/dist/components/sidenav/styles.js.map +1 -1
- package/dist/components/table/context.d.ts +11 -0
- package/dist/components/table/context.js +2 -0
- package/dist/components/table/context.js.map +1 -0
- package/dist/components/table/index.d.ts +27 -0
- package/dist/components/table/index.js +4 -0
- package/dist/components/table/index.js.map +1 -0
- package/dist/components/table/styles.d.ts +134 -0
- package/dist/components/table/styles.js +2 -0
- package/dist/components/table/styles.js.map +1 -0
- package/dist/components/table/table-body.d.ts +12 -0
- package/dist/components/table/table-body.js +2 -0
- package/dist/components/table/table-body.js.map +1 -0
- package/dist/components/table/table-cell.d.ts +12 -0
- package/dist/components/table/table-cell.js +2 -0
- package/dist/components/table/table-cell.js.map +1 -0
- package/dist/components/table/table-header-cell.d.ts +12 -0
- package/dist/components/table/table-header-cell.js +2 -0
- package/dist/components/table/table-header-cell.js.map +1 -0
- package/dist/components/table/table-header.d.ts +12 -0
- package/dist/components/table/table-header.js +2 -0
- package/dist/components/table/table-header.js.map +1 -0
- package/dist/components/table/table-row.d.ts +12 -0
- package/dist/components/table/table-row.js +2 -0
- package/dist/components/table/table-row.js.map +1 -0
- package/dist/components/table/types.d.ts +185 -0
- package/dist/components/table/types.js +2 -0
- package/dist/components/table/types.js.map +1 -0
- package/dist/components/time-field/index.d.ts +10 -0
- package/dist/components/time-field/index.js +4 -0
- package/dist/components/time-field/index.js.map +1 -0
- package/dist/components/time-field/styles.d.ts +69 -0
- package/dist/components/time-field/styles.js +2 -0
- package/dist/components/time-field/styles.js.map +1 -0
- package/dist/components/time-field/types.d.ts +23 -0
- package/dist/components/time-field/types.js +2 -0
- package/dist/components/time-field/types.js.map +1 -0
- package/dist/components/tree/index.js +1 -1
- package/dist/components/tree/index.js.map +1 -1
- package/dist/components/tree/styles.js +1 -1
- package/dist/components/tree/styles.js.map +1 -1
- package/dist/foundation/token-data.js +1 -1
- package/dist/foundation/token-data.js.map +1 -1
- package/dist/index.d.ts +20 -1
- package/dist/index.js +1 -1
- package/dist/metafile-esm.json +1 -1
- package/dist/styles.css +3038 -901
- package/dist/tokens/themes.css +56 -24
- package/dist/tokens/tokens.css +8 -8
- package/dist/tokens/tokens.d.ts +18 -0
- package/dist/tokens/tokens.js +1 -1
- package/dist/tokens/tokens.js.map +1 -1
- package/dist/tokens/types.d.ts +9 -0
- package/dist/variants/variants.css +3 -0
- package/package.json +9 -3
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {tv}from'./../../lib/utils.js';const o={variant:"cozy"},t=tv({slots:{group:"group/accordion-group flex w-full flex-col",accordion:"group/accordion flex w-full flex-col bg-transparent",header:["fg-primary-bold flex w-full items-center gap-s rounded-medium px-s py-xs outline-none","group-enabled/accordion:focus-visible-within:bg-interactive-muted-hover group-enabled/accordion:hover:bg-interactive-muted-hover","group-disabled/accordion:fg-disabled group-disabled/accordion:cursor-not-allowed"],heading:"grow",trigger:["flex w-full cursor-pointer items-center justify-start size-medium:px-0 disabled:cursor-not-allowed"],panel:"p-s"},variants:{variant:{cozy:{trigger:"gap-s text-header-m"},compact:{trigger:"gap-xs text-header-s"}}},defaultVariants:o});export{t as AccordionStyles,o as AccordionStylesDefaults};//# sourceMappingURL=styles.js.map
|
|
1
|
+
import {tv}from'./../../lib/utils.js';const o={variant:"cozy"},t=tv({slots:{group:"group/accordion-group flex w-full flex-col",accordion:"group/accordion flex w-full flex-col bg-transparent",header:["fg-primary-bold flex w-full items-center gap-s rounded-medium px-s py-xs outline-none","group-enabled/accordion:focus-visible-within:bg-interactive-muted-hover group-enabled/accordion:hover:bg-interactive-muted-hover","group-enabled/accordion:pressed:bg-interactive-muted-pressed","group-disabled/accordion:fg-disabled group-disabled/accordion:cursor-not-allowed","transition-color duration-[80ms]"],heading:"grow",trigger:["flex w-full cursor-pointer items-center justify-start size-medium:px-0 disabled:cursor-not-allowed"],panel:"p-s"},variants:{variant:{cozy:{trigger:"gap-s text-header-m"},compact:{trigger:"gap-xs text-header-s"}}},defaultVariants:o});export{t as AccordionStyles,o as AccordionStylesDefaults};//# sourceMappingURL=styles.js.map
|
|
2
2
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/accordion/styles.ts"],"names":["AccordionStyles","tv","e"],"mappings":"sCAeE,MAAA,CAAS,CAAA,CAAA,OAGEA,CAAkBC,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/accordion/styles.ts"],"names":["AccordionStyles","tv","e"],"mappings":"sCAeE,MAAA,CAAS,CAAA,CAAA,OAGEA,CAAkBC,SACtB,CACLC,EAAA,CAAA,CAAA,KAAO,CAAA,CAAA,KAAA,CAAA,4CACP,CAAW,SAAA,CAAA,qDAET,CAAA,MAAA,CAAA,CAAA,uFACA,CAAA,kIACA,CAAA,8DACA,CAAA,kFACA,CAAA,kCAEO,CAAA,CAAA,OACT,CAAA,MACE,CAAA,OAAA,CAAA,CAAA,2GAIJ,CAAA,KAAA,CAAU,CACR,QAAS,CACP,CAAA,OACE,CAAA,CAAA,IAAS,CAAA,CAAA,OAAA,CAAA,qBAEF,CACP,CAAA,OAAS,CAAA,CAAA,OAAA,CAAA,sBAIf,CAAA,CAAA,CAAA,CAAA,eACD,CAAA,CAAA,CAAA","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from '@/lib/utils';\n\nexport const AccordionStylesDefaults = {\n variant: 'cozy',\n} as const;\n\nexport const AccordionStyles = tv({\n slots: {\n group: 'group/accordion-group flex w-full flex-col',\n accordion: 'group/accordion flex w-full flex-col bg-transparent',\n header: [\n 'fg-primary-bold flex w-full items-center gap-s rounded-medium px-s py-xs outline-none',\n 'group-enabled/accordion:focus-visible-within:bg-interactive-muted-hover group-enabled/accordion:hover:bg-interactive-muted-hover',\n 'group-enabled/accordion:pressed:bg-interactive-muted-pressed',\n 'group-disabled/accordion:fg-disabled group-disabled/accordion:cursor-not-allowed',\n 'transition-color duration-[80ms]',\n ],\n heading: 'grow',\n trigger: [\n 'flex w-full cursor-pointer items-center justify-start size-medium:px-0 disabled:cursor-not-allowed',\n ],\n panel: 'p-s',\n },\n variants: {\n variant: {\n cozy: {\n trigger: 'gap-s text-header-m',\n },\n compact: {\n trigger: 'gap-xs text-header-s',\n },\n },\n },\n defaultVariants: AccordionStylesDefaults,\n});\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { BreadcrumbsProps, BreadcrumbProps } from 'react-aria-components';
|
|
3
|
+
import { BreadcrumbItemProps } from './types.js';
|
|
4
|
+
|
|
5
|
+
declare function Breadcrumbs({ children, className, }: BreadcrumbsProps<BreadcrumbProps>): react_jsx_runtime.JSX.Element;
|
|
6
|
+
declare namespace Breadcrumbs {
|
|
7
|
+
var displayName: string;
|
|
8
|
+
var Item: typeof BreadcrumbItem;
|
|
9
|
+
}
|
|
10
|
+
declare function BreadcrumbItem({ children, classNames, linkProps, ...rest }: BreadcrumbItemProps): react_jsx_runtime.JSX.Element;
|
|
11
|
+
declare namespace BreadcrumbItem {
|
|
12
|
+
var displayName: string;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export { Breadcrumbs };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import {jsx,jsxs,Fragment}from'react/jsx-runtime';import'client-only';import {ChevronRight}from'@accelint/icons';import {Breadcrumbs,Breadcrumb,composeRenderProps,Link}from'react-aria-components';import {containsExactChildren}from'./../../lib/react.js';import {Icon}from'../icon/index.js';import {BreadcrumbsStyles}from'./styles.js';const{list:y,item:I,link:N,separator:P}=BreadcrumbsStyles();function s({children:r,className:e}){return containsExactChildren({children:r,componentName:s.displayName,restrictions:[[c,{min:1}]]}),jsx(Breadcrumbs,{className:y({className:e}),children:r})}s.displayName="Breadcrumbs";function c({children:r,classNames:e,linkProps:a,...i}){return jsx(Breadcrumb,{...i,className:composeRenderProps(e?.item,t=>I({className:t})),children:composeRenderProps(a?null:r,t=>jsxs(Fragment,{children:[a?jsx(Link,{...a,className:composeRenderProps(e?.link,p=>N({className:p})),children:r}):t,jsx(Icon,{"aria-hidden":"true",className:P({className:e?.separator}),children:jsx(ChevronRight,{})})]}))})}c.displayName="Breadcrumbs.Item",s.Item=c;export{s as Breadcrumbs};//# sourceMappingURL=index.js.map
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/breadcrumbs/index.tsx"],"names":["separator","BreadcrumbsStyles","f","children","className","containsExactChildren","list","BreadcrumbItem","classNames","linkProps","rest","n","item","o","composeRenderProps","itemChildren","jsxs","Link","k","link","Icon","m","l","jsx","ChevronRight","u"],"mappings":"6UA4BoB,KAAM,CAAA,IAAA,CAAA,CAAA,CAAAA,IAAcC,CAAkB,EAEnD,IAAA,CAAA,CAAA,CAAA,SACL,CAAA,CAAA,CAAA,CAAAC,iBAAAC,EACA,UAAAC,CACF,CAAA,CAAsC,QACpCC,CAAAA,CAAsB,CACpB,SAAAF,CAAAA,CACA,yCAA2B,CAAA,CAAA,CAAA,2BACc,CAAC,qBAIdG,CAAK,CAAE,sBAAAF,CAAU,SAC1C,CAAA,CAAA,CAAAD,CAAAA,SAIK,CAAA,CAAA,CAAA,CAAA,CAAA,QAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,WAEjBI,CAAAA,aAEP,CAAA,SAAA,CAAAC,EACA,QAAA,CAAA,CAAAC,CAAAA,UAGA,CAAA,CAAA,CAAA,SAEK,CAAGC,EACJ,GAAA,CAAA,CAAA,CAAA,CAAA,UAA0C,CAAAC,UAAA,CAAA,CAAA,GAAOP,CAC/CQ,UAAO,CAAAC,kBAAA,CAAAT,CAAU,EACnB,IAEC,CAAA,CAAA,EAAA,CAAA,CAAA,CAAAU,SAAsCX,CAAAA,CAAWY,GAChDC,CAAAA,QACG,CAAAH,kBAAA,CAAA,CAAA,CAAA,KACEI,CAAAA,CAAA,CACE,EAAAC,IAAGT,CAAAA,QACJ,UAAWK,CAAAA,CAAmBN,CAAAA,CAAAA,GAAY,UAAOJ,CAC/Ce,CAAAA,SAAO,CAAAN,kBAAA,CAAAT,CAAU,EACnB,WAECD,SAKJiB,CAAA,CACC,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAAC,GAAA,CACZC,0BAAkCd,CAAAA,SAAY,CAAA,CAAU,CAAC,CAAA,SAEzD,CAAAe,GAACC,SAGN,EACH,CAEJ,QACe,CAAAH,GAAA,CAAAI,YAAA,CAAA,EAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,WAEjB,CAAA,kBAAOlB,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { ChevronRight } from '@accelint/icons';\nimport {\n Breadcrumbs as AriaBreadcrumbs,\n Breadcrumb,\n type BreadcrumbProps,\n type BreadcrumbsProps,\n composeRenderProps,\n Link,\n} from 'react-aria-components';\nimport { containsExactChildren } from '@/lib/react';\nimport { Icon } from '../icon';\nimport { BreadcrumbsStyles } from './styles';\nimport type { BreadcrumbItemProps } from './types';\n\nconst { list, item, link, separator } = BreadcrumbsStyles();\n\nexport function Breadcrumbs({\n children,\n className,\n}: BreadcrumbsProps<BreadcrumbProps>) {\n containsExactChildren({\n children,\n componentName: Breadcrumbs.displayName,\n restrictions: [[BreadcrumbItem, { min: 1 }]],\n });\n\n return (\n <AriaBreadcrumbs className={list({ className })}>\n {children}\n </AriaBreadcrumbs>\n );\n}\nBreadcrumbs.displayName = 'Breadcrumbs';\n\nfunction BreadcrumbItem({\n children,\n classNames,\n linkProps,\n ...rest\n}: BreadcrumbItemProps) {\n return (\n <Breadcrumb\n {...rest}\n className={composeRenderProps(classNames?.item, (className) =>\n item({ className }),\n )}\n >\n {composeRenderProps(linkProps ? null : children, (itemChildren) => (\n <>\n {linkProps ? (\n <Link\n {...linkProps}\n className={composeRenderProps(classNames?.link, (className) =>\n link({ className }),\n )}\n >\n {children}\n </Link>\n ) : (\n itemChildren\n )}\n <Icon\n aria-hidden='true'\n className={separator({ className: classNames?.separator })}\n >\n <ChevronRight />\n </Icon>\n </>\n ))}\n </Breadcrumb>\n );\n}\nBreadcrumbItem.displayName = 'Breadcrumbs.Item';\n\nBreadcrumbs.Item = BreadcrumbItem;\n"]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import * as tailwind_variants from 'tailwind-variants';
|
|
2
|
+
import * as tailwind_merge from 'tailwind-merge';
|
|
3
|
+
|
|
4
|
+
declare const BreadcrumbsStyles: tailwind_variants.TVReturnType<{
|
|
5
|
+
[key: string]: {
|
|
6
|
+
[key: string]: tailwind_merge.ClassNameValue | {
|
|
7
|
+
link?: tailwind_merge.ClassNameValue;
|
|
8
|
+
list?: tailwind_merge.ClassNameValue;
|
|
9
|
+
separator?: tailwind_merge.ClassNameValue;
|
|
10
|
+
item?: tailwind_merge.ClassNameValue;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
} | {
|
|
14
|
+
[x: string]: {
|
|
15
|
+
[x: string]: tailwind_merge.ClassNameValue | {
|
|
16
|
+
link?: tailwind_merge.ClassNameValue;
|
|
17
|
+
list?: tailwind_merge.ClassNameValue;
|
|
18
|
+
separator?: tailwind_merge.ClassNameValue;
|
|
19
|
+
item?: tailwind_merge.ClassNameValue;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
} | {}, {
|
|
23
|
+
list: string;
|
|
24
|
+
item: string;
|
|
25
|
+
link: string;
|
|
26
|
+
separator: string;
|
|
27
|
+
}, undefined, {
|
|
28
|
+
[key: string]: {
|
|
29
|
+
[key: string]: tailwind_merge.ClassNameValue | {
|
|
30
|
+
link?: tailwind_merge.ClassNameValue;
|
|
31
|
+
list?: tailwind_merge.ClassNameValue;
|
|
32
|
+
separator?: tailwind_merge.ClassNameValue;
|
|
33
|
+
item?: tailwind_merge.ClassNameValue;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
} | {}, {
|
|
37
|
+
list: string;
|
|
38
|
+
item: string;
|
|
39
|
+
link: string;
|
|
40
|
+
separator: string;
|
|
41
|
+
}, tailwind_variants.TVReturnType<unknown, {
|
|
42
|
+
list: string;
|
|
43
|
+
item: string;
|
|
44
|
+
link: string;
|
|
45
|
+
separator: string;
|
|
46
|
+
}, undefined, unknown, unknown>>;
|
|
47
|
+
|
|
48
|
+
export { BreadcrumbsStyles };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {tv}from'./../../lib/utils.js';const t=tv({slots:{list:"fg-primary-muted flex items-center gap-s",item:"group/breadcrumb flex items-center gap-s",link:"current:fg-accent-primary-bold hover:fg-primary-bold",separator:"group-current/breadcrumb:hidden"}});export{t as BreadcrumbsStyles};//# sourceMappingURL=styles.js.map
|
|
2
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/breadcrumbs/styles.ts"],"names":["r"],"mappings":"sCAeE,MAAA,CAAO,CACLA,EAAA,CAAA,CAAA,KAAM,CAAA,CAAA,IAAA,CAAA,0CACA,CAAA,IAAA,CAAA,sGAEN,CAAW,SAAA,CAAA,iCAEd,CAAA,CAAA","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from '@/lib/utils';\n\nexport const BreadcrumbsStyles = tv({\n slots: {\n list: 'fg-primary-muted flex items-center gap-s',\n item: 'group/breadcrumb flex items-center gap-s',\n link: 'current:fg-accent-primary-bold hover:fg-primary-bold',\n separator: 'group-current/breadcrumb:hidden',\n },\n});\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BreadcrumbProps, LinkProps } from 'react-aria-components';
|
|
2
|
+
|
|
3
|
+
type BreadcrumbItemProps = Omit<BreadcrumbProps, 'children' | 'className'> & ({
|
|
4
|
+
classNames?: {
|
|
5
|
+
item?: BreadcrumbProps['className'];
|
|
6
|
+
link?: LinkProps['className'];
|
|
7
|
+
separator?: string;
|
|
8
|
+
};
|
|
9
|
+
linkProps: Omit<LinkProps, 'className'>;
|
|
10
|
+
children?: LinkProps['children'];
|
|
11
|
+
} | {
|
|
12
|
+
classNames?: {
|
|
13
|
+
item?: BreadcrumbProps['className'];
|
|
14
|
+
separator?: string;
|
|
15
|
+
};
|
|
16
|
+
linkProps?: never;
|
|
17
|
+
children?: BreadcrumbProps['children'];
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
export type { BreadcrumbItemProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as react from 'react';
|
|
3
|
-
import { ContextValue } from 'react-aria-components';
|
|
4
3
|
import { ProviderProps } from '../../lib/types.js';
|
|
4
|
+
import { ContextValue } from 'react-aria-components';
|
|
5
5
|
import { ButtonProps, LinkButtonProps, ToggleButtonProps } from './types.js';
|
|
6
6
|
import 'tailwind-variants';
|
|
7
7
|
import './styles.js';
|
|
@@ -113,7 +113,7 @@ declare namespace ToggleButtonProvider {
|
|
|
113
113
|
*
|
|
114
114
|
* @example
|
|
115
115
|
* // Controlled toggle button with different variants
|
|
116
|
-
* <ToggleButton variant="
|
|
116
|
+
* <ToggleButton variant="flat" isSelected={isEnabled} onChange={setIsEnabled}>
|
|
117
117
|
* Enable Notifications
|
|
118
118
|
* </ToggleButton>
|
|
119
119
|
*
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import {jsx}from'react/jsx-runtime';import'client-only';import {createContext}from'react';import {useContextProps,Button,composeRenderProps,Link,ToggleButton}from'react-aria-components';import {Icon}from'../icon/index.js';import {ButtonStyles,LinkButtonStyles,ToggleButtonStyles}from'./styles.js';const
|
|
3
|
+
import {jsx}from'react/jsx-runtime';import'client-only';import {createContext}from'react';import {useContextProps,Button,composeRenderProps,Link,ToggleButton}from'react-aria-components';import {Icon}from'../icon/index.js';import {ButtonStyles,LinkButtonStyles,ToggleButtonStyles}from'./styles.js';const c=createContext(null);function p({children:t,...o}){return jsx(c.Provider,{value:o,children:t})}p.displayName="Button.Provider";function v({ref:t,...o}){[o,t]=useContextProps(o,t??null,c);const{children:r,className:i,color:u="mono-muted",size:n="medium",variant:l,...s}=o;return jsx(Icon.Provider,{size:n,children:jsx(Button,{...s,ref:t,className:composeRenderProps(i,a=>ButtonStyles({className:a,variant:l})),"data-color":u,"data-size":n,children:r})})}v.displayName="Button",v.Provider=p;const g=createContext(null);function x({children:t,...o}){return jsx(g.Provider,{value:o,children:t})}x.displayName="LinkButton.Provider";function T({ref:t,...o}){[o,t]=useContextProps(o,t??null,g);const{children:r,className:i,color:u="mono-muted",size:n="medium",variant:l,...s}=o;return jsx(Icon.Provider,{size:n,children:jsx(Link,{...s,ref:t,className:composeRenderProps(i,a=>LinkButtonStyles({className:a,variant:l})),"data-color":u,"data-size":n,children:r})})}T.displayName="LinkButton",T.Provider=x;const L=createContext(null);function y({children:t,...o}){return jsx(L.Provider,{value:o,children:t})}y.displayName="ToggleButton.Provider";function k({ref:t,...o}){[o,t]=useContextProps(o,t??null,L);const{children:r,className:i,color:u="mono-muted",size:n="medium",variant:l,...s}=o;return jsx(Icon.Provider,{size:n,children:jsx(ToggleButton,{...s,ref:t,className:composeRenderProps(i,a=>ToggleButtonStyles({className:a,variant:l})),"data-color":u,"data-size":n,children:r})})}k.displayName="ToggleButton",k.Provider=y;export{v as Button,c as ButtonContext,T as LinkButton,g as LinkButtonContext,k as ToggleButton,L as ToggleButtonContext};//# sourceMappingURL=index.js.map
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/button/index.tsx"],"names":["d","props","jsx","ButtonContext","e","ButtonProvider","useContextProps","ref","size","rest","Icon","c","AriaButton","f","composeRenderProps","className","P","color","LinkButtonProvider","LinkButtonContext","B","Link","N","LinkButton","ToggleButtonContext","ToggleButtonProvider","AriaToggleButton","C"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { createContext } from 'react';\nimport {\n Button as AriaButton,\n ToggleButton as AriaToggleButton,\n type ContextValue,\n composeRenderProps,\n Link,\n useContextProps,\n} from 'react-aria-components';\nimport { Icon } from '../icon';\nimport { ButtonStyles, LinkButtonStyles, ToggleButtonStyles } from './styles';\nimport type { ProviderProps } from '@/lib/types';\nimport type { ButtonProps, LinkButtonProps, ToggleButtonProps } from './types';\n\nexport const ButtonContext =\n createContext<ContextValue<ButtonProps, HTMLButtonElement>>(null);\n\nfunction ButtonProvider({ children, ...props }: ProviderProps<ButtonProps>) {\n return (\n <ButtonContext.Provider value={props}>{children}</ButtonContext.Provider>\n );\n}\nButtonProvider.displayName = 'Button.Provider';\n\n/**\n * Button - A versatile interactive button component with multiple variants\n *\n * Provides accessible button functionality with support for different visual styles,\n * sizes, and interactive states. Includes icon support and integrates with React Aria\n * for keyboard navigation and accessibility features.\n *\n * @example\n * // Basic button\n * <Button>Click me</Button>\n *\n * @example\n * // Primary button with different sizes\n * <Button variant=\"filled\" size=\"large\">Large Filled</Button>\n * <Button variant=\"outline\" size=\"small\">Small Outline</Button>\n *\n * @example\n * // Button with icon\n * <Button variant=\"flat\">\n * <Icon><Plus /></Icon>\n * Add Item\n * </Button>\n *\n * @example\n * // Icon-only button\n * <Button variant=\"icon\">\n * <Icon><Settings /></Icon>\n * </Button>\n *\n * @example\n * // Button with different colors\n * <Button color=\"critical\">Critical Button</Button>\n * <Button color=\"serious\">Delete</Button>\n */\nexport function Button({ ref, ...props }: ButtonProps) {\n [props, ref] = useContextProps(props, ref ?? null, ButtonContext);\n\n const {\n children,\n className,\n color = 'info',\n size = 'medium',\n variant,\n ...rest\n } = props;\n\n return (\n <Icon.Provider size={size}>\n <AriaButton\n {...rest}\n ref={ref}\n className={composeRenderProps(className, (className) =>\n ButtonStyles({\n className,\n variant,\n }),\n )}\n data-color={color}\n data-size={size}\n >\n {children}\n </AriaButton>\n </Icon.Provider>\n );\n}\nButton.displayName = 'Button';\nButton.Provider = ButtonProvider;\n\nexport const LinkButtonContext =\n createContext<ContextValue<LinkButtonProps, HTMLAnchorElement>>(null);\n\nfunction LinkButtonProvider({\n children,\n ...props\n}: ProviderProps<LinkButtonProps>) {\n return (\n <LinkButtonContext.Provider value={props}>\n {children}\n </LinkButtonContext.Provider>\n );\n}\nLinkButtonProvider.displayName = 'LinkButton.Provider';\n\n/**\n * LinkButton - A button component that renders as a link element\n *\n * Provides accessible link functionality with button-like styling and visual feedback.\n * Perfect for navigation actions that should look like buttons but behave as links.\n * Includes icon support and integrates with React Aria for keyboard navigation and accessibility.\n *\n * @example\n * // Basic link button\n * <LinkButton href=\"/dashboard\">Go to Dashboard</LinkButton>\n *\n * @example\n * // Link button with different variants and sizes\n * <LinkButton variant=\"filled\" size=\"large\" href=\"/create\">Create New</LinkButton>\n * <LinkButton variant=\"outline\" size=\"small\" href=\"/settings\">Settings</LinkButton>\n *\n * @example\n * // Link button with icon\n * <LinkButton variant=\"flat\" href=\"/profile\">\n * <Icon><User /></Icon>\n * View Profile\n * </LinkButton>\n *\n * @example\n * // Icon-only link button\n * <LinkButton variant=\"icon\" href=\"/help\">\n * <Icon><HelpCircle /></Icon>\n * </LinkButton>\n *\n * @example\n * // Link button with different colors\n * <LinkButton color=\"critical\" href=\"/delete\">Delete Account</LinkButton>\n * <LinkButton color=\"serious\" href=\"/reset\">Reset Data</LinkButton>\n */\nexport function LinkButton({ ref, ...props }: LinkButtonProps) {\n [props, ref] = useContextProps(props, ref ?? null, LinkButtonContext);\n\n const {\n children,\n className,\n color = 'info',\n size = 'medium',\n variant,\n ...rest\n } = props;\n\n return (\n <Icon.Provider size={size}>\n <Link\n {...rest}\n ref={ref}\n className={composeRenderProps(className, (className) =>\n LinkButtonStyles({\n className,\n variant,\n }),\n )}\n data-color={color}\n data-size={size}\n >\n {children}\n </Link>\n </Icon.Provider>\n );\n}\nLinkButton.displayName = 'LinkButton';\nLinkButton.Provider = LinkButtonProvider;\n\nexport const ToggleButtonContext =\n createContext<ContextValue<ToggleButtonProps, HTMLButtonElement>>(null);\n\nfunction ToggleButtonProvider({\n children,\n ...props\n}: ProviderProps<ToggleButtonProps>) {\n return (\n <ToggleButtonContext.Provider value={props}>\n {children}\n </ToggleButtonContext.Provider>\n );\n}\nToggleButtonProvider.displayName = 'ToggleButton.Provider';\n\n/**\n * ToggleButton - A button component that maintains pressed/unpressed state\n *\n * Provides accessible toggle functionality with visual feedback for the current state.\n * Perfect for features like favorites, bookmarks, switches, or any binary state controls.\n * Includes icon support and integrates with React Aria for keyboard navigation and accessibility.\n *\n * @example\n * // Basic toggle button\n * <ToggleButton>Toggle Feature</ToggleButton>\n *\n * @example\n * // Controlled toggle button with different variants\n * <ToggleButton variant=\"filled\" isSelected={isEnabled} onChange={setIsEnabled}>\n * Enable Notifications\n * </ToggleButton>\n *\n * @example\n * // Toggle button with icon and state\n * <ToggleButton variant=\"outline\" isSelected={isFavorite} onChange={setIsFavorite}>\n * <Icon><Heart /></Icon>\n * {isFavorite ? 'Favorite' : 'Add to Favorites'}\n * </ToggleButton>\n *\n * @example\n * // Icon-only toggle button\n * <ToggleButton variant=\"icon\" isSelected={isBookmarked} onChange={setIsBookmarked}>\n * <Icon><Bookmark /></Icon>\n * </ToggleButton>\n *\n * @example\n * // Toggle button with different colors and sizes\n * <ToggleButton color=\"critical\" size=\"small\" isSelected={isEnabled}>\n * Critical Toggle\n * </ToggleButton>\n */\nexport function ToggleButton({ ref, ...props }: ToggleButtonProps) {\n [props, ref] = useContextProps(props, ref ?? null, ToggleButtonContext);\n\n const {\n children,\n className,\n color = 'info',\n size = 'medium',\n variant,\n ...rest\n } = props;\n\n return (\n <Icon.Provider size={size}>\n <AriaToggleButton\n {...rest}\n ref={ref}\n className={composeRenderProps(className, (className) =>\n ToggleButtonStyles({\n className,\n variant,\n }),\n )}\n data-color={color}\n data-size={size}\n >\n {children}\n </AriaToggleButton>\n </Icon.Provider>\n );\n}\nToggleButton.displayName = 'ToggleButton';\nToggleButton.Provider = ToggleButtonProvider;\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/button/index.tsx"],"names":["d","props","jsx","ButtonContext","e","ButtonProvider","useContextProps","ref","rest","Icon","m","AriaButton","C","composeRenderProps","className","P","color","size","LinkButtonProvider","LinkButtonContext","B","Link","f","LinkButton","ToggleButtonContext","ToggleButtonProvider","AriaToggleButton","N"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport type { ProviderProps } from '@/lib/types';\nimport 'client-only';\nimport { createContext } from 'react';\nimport {\n Button as AriaButton,\n ToggleButton as AriaToggleButton,\n type ContextValue,\n composeRenderProps,\n Link,\n useContextProps,\n} from 'react-aria-components';\nimport { Icon } from '../icon';\nimport { ButtonStyles, LinkButtonStyles, ToggleButtonStyles } from './styles';\nimport type { ButtonProps, LinkButtonProps, ToggleButtonProps } from './types';\n\nexport const ButtonContext =\n createContext<ContextValue<ButtonProps, HTMLButtonElement>>(null);\n\nfunction ButtonProvider({ children, ...props }: ProviderProps<ButtonProps>) {\n return (\n <ButtonContext.Provider value={props}>{children}</ButtonContext.Provider>\n );\n}\nButtonProvider.displayName = 'Button.Provider';\n\n/**\n * Button - A versatile interactive button component with multiple variants\n *\n * Provides accessible button functionality with support for different visual styles,\n * sizes, and interactive states. Includes icon support and integrates with React Aria\n * for keyboard navigation and accessibility features.\n *\n * @example\n * // Basic button\n * <Button>Click me</Button>\n *\n * @example\n * // Primary button with different sizes\n * <Button variant=\"filled\" size=\"large\">Large Filled</Button>\n * <Button variant=\"outline\" size=\"small\">Small Outline</Button>\n *\n * @example\n * // Button with icon\n * <Button variant=\"flat\">\n * <Icon><Plus /></Icon>\n * Add Item\n * </Button>\n *\n * @example\n * // Icon-only button\n * <Button variant=\"icon\">\n * <Icon><Settings /></Icon>\n * </Button>\n *\n * @example\n * // Button with different colors\n * <Button color=\"critical\">Critical Button</Button>\n * <Button color=\"serious\">Delete</Button>\n */\nexport function Button({ ref, ...props }: ButtonProps) {\n [props, ref] = useContextProps(props, ref ?? null, ButtonContext);\n\n const {\n children,\n className,\n color = 'mono-muted',\n size = 'medium',\n variant,\n ...rest\n } = props;\n\n return (\n <Icon.Provider size={size}>\n <AriaButton\n {...rest}\n ref={ref}\n className={composeRenderProps(className, (className) =>\n ButtonStyles({\n className,\n variant,\n }),\n )}\n data-color={color}\n data-size={size}\n >\n {children}\n </AriaButton>\n </Icon.Provider>\n );\n}\nButton.displayName = 'Button';\nButton.Provider = ButtonProvider;\n\nexport const LinkButtonContext =\n createContext<ContextValue<LinkButtonProps, HTMLAnchorElement>>(null);\n\nfunction LinkButtonProvider({\n children,\n ...props\n}: ProviderProps<LinkButtonProps>) {\n return (\n <LinkButtonContext.Provider value={props}>\n {children}\n </LinkButtonContext.Provider>\n );\n}\nLinkButtonProvider.displayName = 'LinkButton.Provider';\n\n/**\n * LinkButton - A button component that renders as a link element\n *\n * Provides accessible link functionality with button-like styling and visual feedback.\n * Perfect for navigation actions that should look like buttons but behave as links.\n * Includes icon support and integrates with React Aria for keyboard navigation and accessibility.\n *\n * @example\n * // Basic link button\n * <LinkButton href=\"/dashboard\">Go to Dashboard</LinkButton>\n *\n * @example\n * // Link button with different variants and sizes\n * <LinkButton variant=\"filled\" size=\"large\" href=\"/create\">Create New</LinkButton>\n * <LinkButton variant=\"outline\" size=\"small\" href=\"/settings\">Settings</LinkButton>\n *\n * @example\n * // Link button with icon\n * <LinkButton variant=\"flat\" href=\"/profile\">\n * <Icon><User /></Icon>\n * View Profile\n * </LinkButton>\n *\n * @example\n * // Icon-only link button\n * <LinkButton variant=\"icon\" href=\"/help\">\n * <Icon><HelpCircle /></Icon>\n * </LinkButton>\n *\n * @example\n * // Link button with different colors\n * <LinkButton color=\"critical\" href=\"/delete\">Delete Account</LinkButton>\n * <LinkButton color=\"serious\" href=\"/reset\">Reset Data</LinkButton>\n */\nexport function LinkButton({ ref, ...props }: LinkButtonProps) {\n [props, ref] = useContextProps(props, ref ?? null, LinkButtonContext);\n\n const {\n children,\n className,\n color = 'mono-muted',\n size = 'medium',\n variant,\n ...rest\n } = props;\n\n return (\n <Icon.Provider size={size}>\n <Link\n {...rest}\n ref={ref}\n className={composeRenderProps(className, (className) =>\n LinkButtonStyles({\n className,\n variant,\n }),\n )}\n data-color={color}\n data-size={size}\n >\n {children}\n </Link>\n </Icon.Provider>\n );\n}\nLinkButton.displayName = 'LinkButton';\nLinkButton.Provider = LinkButtonProvider;\n\nexport const ToggleButtonContext =\n createContext<ContextValue<ToggleButtonProps, HTMLButtonElement>>(null);\n\nfunction ToggleButtonProvider({\n children,\n ...props\n}: ProviderProps<ToggleButtonProps>) {\n return (\n <ToggleButtonContext.Provider value={props}>\n {children}\n </ToggleButtonContext.Provider>\n );\n}\nToggleButtonProvider.displayName = 'ToggleButton.Provider';\n\n/**\n * ToggleButton - A button component that maintains pressed/unpressed state\n *\n * Provides accessible toggle functionality with visual feedback for the current state.\n * Perfect for features like favorites, bookmarks, switches, or any binary state controls.\n * Includes icon support and integrates with React Aria for keyboard navigation and accessibility.\n *\n * @example\n * // Basic toggle button\n * <ToggleButton>Toggle Feature</ToggleButton>\n *\n * @example\n * // Controlled toggle button with different variants\n * <ToggleButton variant=\"flat\" isSelected={isEnabled} onChange={setIsEnabled}>\n * Enable Notifications\n * </ToggleButton>\n *\n * @example\n * // Toggle button with icon and state\n * <ToggleButton variant=\"outline\" isSelected={isFavorite} onChange={setIsFavorite}>\n * <Icon><Heart /></Icon>\n * {isFavorite ? 'Favorite' : 'Add to Favorites'}\n * </ToggleButton>\n *\n * @example\n * // Icon-only toggle button\n * <ToggleButton variant=\"icon\" isSelected={isBookmarked} onChange={setIsBookmarked}>\n * <Icon><Bookmark /></Icon>\n * </ToggleButton>\n *\n * @example\n * // Toggle button with different colors and sizes\n * <ToggleButton color=\"critical\" size=\"small\" isSelected={isEnabled}>\n * Critical Toggle\n * </ToggleButton>\n */\nexport function ToggleButton({ ref, ...props }: ToggleButtonProps) {\n [props, ref] = useContextProps(props, ref ?? null, ToggleButtonContext);\n\n const {\n children,\n className,\n color = 'mono-muted',\n size = 'medium',\n variant,\n ...rest\n } = props;\n\n return (\n <Icon.Provider size={size}>\n <AriaToggleButton\n {...rest}\n ref={ref}\n className={composeRenderProps(className, (className) =>\n ToggleButtonStyles({\n className,\n variant,\n }),\n )}\n data-color={color}\n data-size={size}\n >\n {children}\n </AriaToggleButton>\n </Icon.Provider>\n );\n}\nToggleButton.displayName = 'ToggleButton';\nToggleButton.Provider = ToggleButtonProvider;\n"]}
|
|
@@ -2,7 +2,6 @@ import * as tailwind_variants from 'tailwind-variants';
|
|
|
2
2
|
import * as tailwind_merge from 'tailwind-merge';
|
|
3
3
|
|
|
4
4
|
declare const ButtonStylesDefaults: {
|
|
5
|
-
readonly color: "info";
|
|
6
5
|
readonly variant: "filled";
|
|
7
6
|
};
|
|
8
7
|
declare const ButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
@@ -17,7 +16,7 @@ declare const ButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
|
17
16
|
variant: {
|
|
18
17
|
filled: string[];
|
|
19
18
|
outline: string[];
|
|
20
|
-
flat: string;
|
|
19
|
+
flat: string[];
|
|
21
20
|
icon: string[];
|
|
22
21
|
floating: string[];
|
|
23
22
|
};
|
|
@@ -25,7 +24,7 @@ declare const ButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
|
25
24
|
variant: {
|
|
26
25
|
filled: string[];
|
|
27
26
|
outline: string[];
|
|
28
|
-
flat: string;
|
|
27
|
+
flat: string[];
|
|
29
28
|
icon: string[];
|
|
30
29
|
floating: string[];
|
|
31
30
|
};
|
|
@@ -33,7 +32,7 @@ declare const ButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
|
33
32
|
variant: {
|
|
34
33
|
filled: string[];
|
|
35
34
|
outline: string[];
|
|
36
|
-
flat: string;
|
|
35
|
+
flat: string[];
|
|
37
36
|
icon: string[];
|
|
38
37
|
floating: string[];
|
|
39
38
|
};
|
|
@@ -41,7 +40,7 @@ declare const ButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
|
41
40
|
variant: {
|
|
42
41
|
filled: string[];
|
|
43
42
|
outline: string[];
|
|
44
|
-
flat: string;
|
|
43
|
+
flat: string[];
|
|
45
44
|
icon: string[];
|
|
46
45
|
floating: string[];
|
|
47
46
|
};
|
|
@@ -58,7 +57,7 @@ declare const LinkButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
|
58
57
|
variant: {
|
|
59
58
|
filled: string[];
|
|
60
59
|
outline: string[];
|
|
61
|
-
flat: string;
|
|
60
|
+
flat: string[];
|
|
62
61
|
icon: string[];
|
|
63
62
|
floating: string[];
|
|
64
63
|
};
|
|
@@ -66,7 +65,7 @@ declare const LinkButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
|
66
65
|
variant: {
|
|
67
66
|
filled: string[];
|
|
68
67
|
outline: string[];
|
|
69
|
-
flat: string;
|
|
68
|
+
flat: string[];
|
|
70
69
|
icon: string[];
|
|
71
70
|
floating: string[];
|
|
72
71
|
};
|
|
@@ -74,7 +73,7 @@ declare const LinkButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
|
74
73
|
variant: {
|
|
75
74
|
filled: string[];
|
|
76
75
|
outline: string[];
|
|
77
|
-
flat: string;
|
|
76
|
+
flat: string[];
|
|
78
77
|
icon: string[];
|
|
79
78
|
floating: string[];
|
|
80
79
|
};
|
|
@@ -82,21 +81,22 @@ declare const LinkButtonStyles: tailwind_variants.TVReturnType<{} | {
|
|
|
82
81
|
variant: {
|
|
83
82
|
filled: string[];
|
|
84
83
|
outline: string[];
|
|
85
|
-
flat: string;
|
|
84
|
+
flat: string[];
|
|
86
85
|
icon: string[];
|
|
87
86
|
floating: string[];
|
|
88
87
|
};
|
|
89
88
|
}, undefined, string[], unknown, unknown>>>;
|
|
90
89
|
declare const ToggleButtonStyles: tailwind_variants.TVReturnType<{
|
|
91
90
|
variant: {
|
|
92
|
-
|
|
93
|
-
|
|
91
|
+
flat: string[];
|
|
92
|
+
outline: string[];
|
|
93
|
+
icon: string[];
|
|
94
94
|
};
|
|
95
95
|
}, undefined, string[], {
|
|
96
96
|
variant: {
|
|
97
97
|
filled: string[];
|
|
98
98
|
outline: string[];
|
|
99
|
-
flat: string;
|
|
99
|
+
flat: string[];
|
|
100
100
|
icon: string[];
|
|
101
101
|
floating: string[];
|
|
102
102
|
};
|
|
@@ -104,7 +104,7 @@ declare const ToggleButtonStyles: tailwind_variants.TVReturnType<{
|
|
|
104
104
|
variant: {
|
|
105
105
|
filled: string[];
|
|
106
106
|
outline: string[];
|
|
107
|
-
flat: string;
|
|
107
|
+
flat: string[];
|
|
108
108
|
icon: string[];
|
|
109
109
|
floating: string[];
|
|
110
110
|
};
|
|
@@ -112,7 +112,7 @@ declare const ToggleButtonStyles: tailwind_variants.TVReturnType<{
|
|
|
112
112
|
variant: {
|
|
113
113
|
filled: string[];
|
|
114
114
|
outline: string[];
|
|
115
|
-
flat: string;
|
|
115
|
+
flat: string[];
|
|
116
116
|
icon: string[];
|
|
117
117
|
floating: string[];
|
|
118
118
|
};
|
|
@@ -120,7 +120,7 @@ declare const ToggleButtonStyles: tailwind_variants.TVReturnType<{
|
|
|
120
120
|
variant: {
|
|
121
121
|
filled: string[];
|
|
122
122
|
outline: string[];
|
|
123
|
-
flat: string;
|
|
123
|
+
flat: string[];
|
|
124
124
|
icon: string[];
|
|
125
125
|
floating: string[];
|
|
126
126
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {tv}from'./../../lib/utils.js';const l={color:"info",variant:"filled"},o=tv({base:["group/button flex w-content cursor-pointer items-center justify-center rounded-medium outline outline-transparent","disabled:cursor-not-allowed","size-large:gap-xs size-large:px-m size-large:py-s size-large:text-button-l","size-medium:gap-xs size-medium:px-m size-medium:py-s size-medium:text-button-m","size-small:gap-xxs size-small:px-s size-small:py-xs size-small:text-button-s","size-xsmall:gap-xxs size-xsmall:px-s size-xsmall:py-xs size-xsmall:text-button-xs"],variants:{variant:{filled:["disabled:fg-disabled disabled:bg-interactive-disabled","enabled:color-info:fg-inverse-bold","enabled:color-info:bg-interactive-bold","enabled:hover:color-info:bg-interactive-bold-hover","enabled:focus-visible:color-info:bg-interactive-bold-hover","enabled:color-serious:fg-a11y-on-utility","enabled:color-serious:bg-serious-bold","enabled:hover:color-serious:bg-serious-hover","enabled:focus-visible:color-serious:bg-serious-hover","enabled:color-critical:fg-a11y-on-utility","enabled:color-critical:bg-critical-bold","enabled:hover:color-critical:bg-critical-hover","enabled:focus-visible:color-critical:bg-critical-hover"],outline:["disabled:fg-disabled disabled:outline-interactive-disabled","enabled:color-info:fg-primary-bold enabled:color-info:outline-interactive","enabled:hover:color-info:outline-interactive-hover","enabled:focus-visible:color-info:outline-interactive-hover","enabled:color-serious:fg-primary-bold enabled:color-serious:outline-serious-bold","enabled:hover:color-serious:outline-interactive-hover","enabled:focus-visible:color-serious:outline-interactive-hover","enabled:color-critical:fg-primary-bold enabled:color-critical:outline-critical-bold","enabled:hover:color-critical:outline-interactive-hover","enabled:focus-visible:color-critical:outline-interactive-hover"],flat:"disabled:fg-disabled disabled:bg-transparent",icon:["size-small:rounded-small size-xsmall:rounded-small size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs","disabled:fg-disabled disabled:bg-transparent"],floating:["rounded-full","size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs","disabled:fg-disabled disabled:bg-interactive-disabled disabled:outline-interactive-disabled","enabled:color-info:fg-info-bold enabled:color-info:bg-surface-default enabled:color-info:outline-interactive","enabled:hover:color-info:fg-info-hover enabled:hover:color-info:outline-interactive-hover","enabled:focus-visible:color-info:fg-info-hover enabled:focus-visible:color-info:outline-interactive-hover","enabled:color-serious:fg-serious-bold enabled:color-serious:bg-serious-muted enabled:color-serious:outline-serious-bold","enabled:hover:color-serious:fg-info-hover enabled:hover:color-serious:outline-interactive-hover","enabled:focus-visible:color-serious:fg-info-hover enabled:focus-visible:color-serious:outline-interactive-hover","enabled:color-critical:fg-critical-bold enabled:color-critical:bg-critical-muted enabled:color-critical:outline-critical-bold","enabled:hover:color-critical:fg-info-hover enabled:hover:color-critical:outline-interactive-hover","enabled:focus-visible:color-critical:fg-info-hover enabled:focus-visible:color-critical:outline-interactive-hover"]}},compoundVariants:[{variant:["flat","icon"],className:["enabled:color-info:fg-primary-bold","enabled:hover:color-info:bg-interactive-muted-hover","enabled:focus-visible:color-info:bg-interactive-muted-hover"]},{variant:["flat","icon"],className:["enabled:color-serious:fg-primary-bold","enabled:hover:color-serious:bg-serious-hover","enabled:focus-visible:color-serious:bg-serious-hover"]},{variant:["flat","icon"],className:["enabled:color-critical:fg-primary-bold","enabled:hover:color-critical:bg-critical-hover","enabled:focus-visible:color-critical:bg-critical-hover"]}],defaultVariants:l}),r=tv({extend:o}),a=tv({extend:o}),s=tv({extend:o,base:["enabled:selected:fg-accent-primary-bold","enabled:selected:hover:fg-accent-primary-bold","enabled:selected:focus-visible:fg-accent-primary-bold"],variants:{variant:{filled:["enabled:selected:color-info:bg-info-muted","enabled:selected:hover:color-info:bg-interactive-bold-hover","enabled:selected:focus-visible:color-info:bg-interactive-bold-hover","enabled:selected:color-serious:bg-serious-muted","enabled:selected:hover:color-serious:bg-serious-hover","enabled:selected:focus-visible:color-serious:bg-serious-hover","enabled:selected:color-critical:bg-critical-muted","enabled:selected:hover:color-critical:bg-critical-hover","enabled:selected:focus-visible:color-critical:bg-critical-hover"],floating:["enabled:selected:color-info:outline-accent-primary-bold","enabled:selected:hover:color-info:outline-interactive-hover","enabled:selected:focus-visible:color-info:outline-interactive-hover","enabled:selected:color-serious:outline-accent-primary-bold","enabled:selected:hover:color-serious:outline-interactive-hover","enabled:selected:focus-visible:color-serious:outline-interactive-hover","enabled:selected:color-critical:outline-accent-primary-bold","enabled:selected:hover:color-critical:outline-interactive-hover","enabled:selected:focus-visible:color-critical:outline-interactive-hover"]}}});export{r as ButtonStyles,l as ButtonStylesDefaults,a as LinkButtonStyles,s as ToggleButtonStyles};//# sourceMappingURL=styles.js.map
|
|
1
|
+
import {tv}from'./../../lib/utils.js';const l={variant:"filled"},o=tv({base:["group/button flex w-content cursor-pointer items-center justify-center rounded-medium outline outline-transparent","disabled:cursor-not-allowed","size-large:min-w-[96px] size-large:gap-xs size-large:px-l size-large:py-s size-large:text-button-l","size-medium:min-w-[68px] size-medium:gap-xs size-medium:px-m size-medium:py-xs size-medium:text-button-m","size-small:min-w-[54px] size-small:gap-xxs size-small:px-s size-small:py-xs size-small:text-button-s","size-xsmall:min-w-[41px] size-xsmall:gap-xxs size-xsmall:p-xs size-xsmall:text-button-xs","transition-colors duration-[80ms]"],variants:{variant:{filled:["disabled:fg-disabled disabled:bg-interactive-disabled","enabled:color-mono-muted:fg-primary-bold enabled:color-mono-muted:bg-interactive-muted","enabled:hover:color-mono-muted:bg-interactive-muted-hover","enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover","enabled:pressed:color-mono-muted:fg-primary-muted enabled:pressed:color-mono-muted:bg-interactive-muted-pressed","enabled:color-mono-bold:fg-inverse-bold enabled:color-mono-bold:bg-interactive-bold","enabled:hover:color-mono-bold:fg-disabled enabled:hover:color-mono-bold:bg-interactive-bold-hover","enabled:focus-visible:color-mono-bold:fg-disabled enabled:focus-visible:color-mono-bold:bg-interactive-bold-hover","enabled:pressed:color-mono-bold:fg-inverse-muted enabled:pressed:color-mono-bold:bg-interactive-bold-pressed","enabled:color-accent:fg-a11y-on-accent enabled:color-accent:bg-accent-primary-bold","enabled:hover:color-accent:bg-accent-primary-hover","enabled:focus-visible:color-accent:bg-accent-primary-hover","enabled:pressed:color-accent:fg-accent-primary-bold enabled:pressed:color-accent:bg-accent-primary-pressed","enabled:color-serious:fg-a11y-on-utility enabled:color-serious:bg-serious-bold","enabled:hover:color-serious:bg-serious-hover","enabled:focus-visible:color-serious:bg-serious-hover","enabled:pressed:color-serious:fg-serious-bold enabled:pressed:color-serious:bg-serious-pressed","enabled:color-critical:fg-a11y-on-utility enabled:color-critical:bg-critical-bold","enabled:hover:color-critical:bg-critical-hover","enabled:focus-visible:color-critical:bg-critical-hover","enabled:pressed:color-critical:fg-critical-bold enabled:pressed:color-critical:bg-critical-pressed"],outline:["disabled:fg-disabled disabled:outline-interactive-disabled","enabled:color-mono-muted:fg-primary-bold enabled:color-mono-muted:bg-transparent enabled:color-mono-muted:outline enabled:color-mono-muted:outline-interactive","enabled:hover:color-mono-muted:bg-interactive-muted-hover enabled:hover:color-mono-muted:outline-2 enabled:hover:color-mono-muted:outline-interactive-hover","enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover enabled:focus-visible:color-mono-muted:outline-2 enabled:focus-visible:color-mono-muted:outline-interactive-hover","enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed enabled:pressed:color-mono-muted:outline-2 enabled:pressed:color-mono-muted:outline-interactive-pressed","enabled:color-mono-bold:fg-primary-bold enabled:color-mono-bold:bg-transparent enabled:color-mono-bold:outline enabled:color-mono-bold:outline-mono-bold","enabled:hover:color-mono-bold:bg-interactive-muted-hover enabled:hover:color-mono-bold:outline-2 enabled:hover:color-mono-bold:outline-interactive-hover","enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover enabled:focus-visible:color-mono-bold:outline-2 enabled:focus-visible:color-mono-bold:outline-interactive-hover","enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed enabled:pressed:color-mono-bold:outline-2 enabled:pressed:color-mono-bold:outline-mono-bold-pressed","enabled:color-accent:fg-primary-bold enabled:color-accent:bg-transparent enabled:color-accent:outline enabled:color-accent:outline-accent-primary-bold","enabled:hover:color-accent:fg-a11y-on-accent enabled:hover:color-accent:bg-accent-primary-hover enabled:hover:color-accent:outline-2 enabled:hover:color-accent:outline-accent-primary-hover","enabled:focus-visible::color-accent:fg-a11y-on-accent enabled:focus-visible:color-accent:bg-accent-primary-hover enabled:focus-visible:color-accent:outline-2 enabled:focus-visible:color-accent:outline-accent-primary-hover","enabled:pressed:color-accent:fg-accent-primary-bold enabled:pressed:color-accent:bg-accent-primary-pressed enabled:pressed:color-accent:outline-2 enabled:pressed:color-accent:outline-accent-primary-pressed","enabled:color-serious:fg-primary-bold enabled:color-serious:bg-transparent enabled:color-serious:outline enabled:color-serious:outline-serious-bold","enabled:hover:color-serious:fg-a11y-on-accent enabled:hover:color-serious:bg-serious-hover enabled:hover:color-serious:outline-2 enabled:hover:color-serious:outline-serious-hover","enabled:focus-visible:color-serious:fg-a11y-on-accent enabled:focus-visible:color-serious:bg-serious-hover enabled:focus-visible:color-serious:outline-2 enabled:focus-visible:color-serious:outline-serious-hover","enabled:pressed:color-serious:fg-serious-bold enabled:pressed:color-serious:bg-serious-pressed enabled:pressed:color-serious:outline-2 enabled:pressed:color-serious:outline-serious-pressed","enabled:color-critical:fg-primary-bold enabled:color-critical:bg-transparent enabled:color-critical:outline enabled:color-critical:outline-critical-bold","enabled:hover:color-critical:fg-a11y-on-accent enabled:hover:color-critical:bg-critical-hover enabled:hover:color-critical:outline-2 enabled:hover:color-critical:outline-critical-hover","enabled:focus-visible:color-critical:fg-a11y-on-accent enabled:focus-visible:color-critical:bg-critical-hover enabled:focus-visible:color-critical:outline-2 enabled:focus-visible:color-critical:outline-critical-hover","enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-critical-pressed enabled:pressed:color-critical:outline-2 enabled:pressed:color-critical:outline-critical-pressed"],flat:["disabled:fg-disabled disabled:bg-transparent","enabled:color-mono-muted:fg-primary-muted","enabled:hover:color-mono-muted:bg-interactive-muted-hover","enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover","enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed","enabled:color-mono-bold:fg-primary-bold","enabled:hover:color-mono-bold:bg-interactive-muted-hover","enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover","enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed","enabled:color-accent:fg-accent-primary-bold","enabled:hover:color-accent:fg-a11y-on-accent enabled:hover:color-accent:bg-accent-primary-hover","enabled:focus-visible:color-accent:fg-a11y-on-accent enabled:focus-visible:color-accent:bg-accent-primary-hover","enabled:pressed:color-accent:fg-accent-primary-pressed enabled:pressed:color-accent:bg-accent-primary-pressed","enabled:color-serious:fg-serious-bold","enabled:hover:color-serious:fg-a11y-on-accent enabled:hover:color-serious:bg-serious-hover","enabled:focus-visible:color-serious:fg-a11y-on-accent enabled:focus-visible:color-serious:bg-serious-hover","enabled:pressed:color-serious:fg-serious-pressed enabled:pressed:color-serious:bg-serious-pressed","enabled:color-critical:fg-critical-bold","enabled:hover:color-critical:fg-a11y-on-accent enabled:hover:color-critical:bg-critical-hover","enabled:focus-visible:color-critical:fg-a11y-on-accent enabled:focus-visible:color-critical:bg-critical-hover","enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-critical-pressed"],icon:["size-small:rounded-small size-xsmall:rounded-small size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs","size-large:min-w-xxl size-large:max-w-xxl","size-medium:min-w-[28px] size-medium:max-w-[28px]","size-small:min-w-xl size-small:max-w-xl","size-xsmall:min-w-[20px] size-xsmall:max-w-[20px]","disabled:fg-disabled disabled:bg-transparent","enabled:color-mono-muted:fg-primary-muted","enabled:hover:color-mono-muted:bg-interactive-muted-hover","enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover","enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed","enabled:color-mono-bold:fg-primary-bold","enabled:hover:color-mono-bold:bg-interactive-muted-hover","enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover","enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed","enabled:color-accent:fg-accent-primary-bold","enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:bg-interactive-muted-hover","enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:bg-interactive-muted-hover","enabled:pressed:color-accent:fg-accent-primary-pressed enabled:pressed:color-accent:bg-interactive-muted-pressed","enabled:color-serious:fg-serious-bold","enabled:hover:color-serious:fg-serious-hover enabled:hover:color-serious:bg-interactive-muted-hover","enabled:focus-visible:color-serious:fg-serious-hover enabled:focus-visible:color-serious:bg-interactive-muted-hover","enabled:pressed:color-serious:fg-serious-pressed enabled:pressed:color-serious:bg-interactive-muted-pressed","enabled:color-critical:fg-critical-bold","enabled:hover:color-critical:fg-critical-hover enabled:hover:color-critical:bg-interactive-muted-hover","enabled:focus-visible:color-critical:fg-critical-hover enabled:focus-visible:color-critical:bg-interactive-muted-hover","enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-interactive-muted-pressed"],floating:["rounded-full","size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs","size-large:min-w-xxl size-large:max-w-xxl","size-medium:min-w-[28px] size-medium:max-w-[28px]","size-small:min-w-xl size-small:max-w-xl","size-xsmall:min-w-[20px] size-xsmall:max-w-[20px]","disabled:fg-disabled disabled:bg-interactive-disabled disabled:outline-interactive-disabled","enabled:color-mono-muted:fg-primary-muted enabled:color-mono-muted:bg-surface-default enabled:color-mono-muted:outline-interactive","enabled:hover:color-mono-muted:fg-primary-hover enabled:hover:color-mono-muted:outline-interactive-hover","enabled:focus-visible:color-mono-muted:fg-primary-hover enabled:focus-visible:color-mono-muted:outline-interactive-hover","enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed","enabled:color-mono-bold:fg-primary-bold enabled:color-mono-bold:bg-surface-default enabled:color-mono-bold:outline-interactive","enabled:hover:color-mono-bold:fg-primary-hover enabled:hover:color-mono-bold:outline-interactive-hover","enabled:focus-visible:color-mono-bold:fg-primary-hover enabled:focus-visible:color-mono-bold:outline-interactive-hover","enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed","enabled:color-accent:fg-accent-primary-bold enabled:color-accent:bg-accent-primary-bold enabled:color-accent:outline-accent-primary-bold","enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:outline-accent-primary-hover","enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:outline-accent-primary-hover","enabled:pressed:color-accent:fg-accent-primary-pressed enabled:pressed:color-accent:bg-interactive-muted-pressed enabled:pressed:color-accent:outline-accent-primary-pressed","enabled:color-serious:fg-serious-bold enabled:color-serious:bg-serious-muted enabled:color-serious:outline-serious-bold","enabled:hover:color-serious:fg-serious-hover enabled:hover:color-serious:outline-interactive-hover","enabled:focus-visible:color-serious:fg-serious-hover enabled:focus-visible:color-serious:outline-interactive-hover","enabled:pressed:color-serious:fg-serious-pressed enabled:pressed:color-serious:bg-interactive-muted-pressed enabled:pressed:color-serious:outline-serious-pressed","enabled:color-critical:fg-critical-bold enabled:color-critical:bg-critical-muted enabled:color-critical:outline-critical-bold","enabled:hover:color-critical:fg-critiical-hover enabled:hover:color-critical:outline-critical-hover","enabled:focus-visible:color-critical:fg-critiical-hover enabled:focus-visible:color-critical:outline-critical-hover","enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-interactive-muted-pressed enabled:pressed:color-critical:outline-critical-pressed"]}},defaultVariants:l}),c=tv({extend:o}),s=tv({extend:o}),d=tv({extend:o,base:["enabled:color-accent:fg-accent-primary-bold enabled:color-accent:bg-transparent","enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:bg-accent-primary-muted","enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:bg-accent-primary-muted","enabled:pressed:color-accent:fg-accent-primary-bold enabled:pressed:color-accent:bg-accent-primary-pressed"],variants:{variant:{flat:["disabled:fg-disabled disabled:bg-transparent","disabled:selected:fg-disabled disabled:selected:bg-interactive-disabled disabled:selected:outline-interactive-disabled","enabled:color-mono-muted:fg-primary-muted enabled:color-mono-muted:bg-transparent","enabled:hover:color-mono-muted:bg-interactive-muted-hover","enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover","enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed","enabled:selected:color-mono-muted:fg-primary-muted enabled:selected:color-mono-muted:bg-interactive-muted enabled:selected:color-mono-muted:outline enabled:selected:color-mono-muted:outline-interactive-hover","enabled:selected:hover:color-mono-muted:bg-interactive-muted-hover enabled:selected:hover:color-mono-muted:outline-2","enabled:selected:focus-visible:color-mono-muted:bg-interactive-muted-hover enabled:selected:focus-visible:color-mono-muted:outline-2","enabled:selected:pressed:color-mono-muted:fg-pressed enabled:selected:pressed:color-mono-muted:bg-interactive-muted-pressed enabled:selected:pressed:color-mono-muted:outline-2 enabled:selected:pressed:color-mono-muted:outline-interactive-pressed","enabled:color-mono-bold:fg-primary-bold","enabled:hover:color-mono-bold:bg-interactive-muted-hover","enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover","enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed","enabled:selected:color-mono-bold:fg-primary-bold enabled:selected:color-mono-bold:outline enabled:selected:color-mono-bold:outline-mono-bold","enabled:selected:hover:color-mono-bold:fg-hover enabled:selected:hover:color-mono-bold:bg-interactive-muted-hover enabled:selected:hover:color-mono-bold:outline-2 enabled:selected:hover:color-mono-bold:outline-mono-bold-hover","enabled:selected:focus-visible:color-mono-bold:bg-interactive-muted-hover enabled:selected:focus-visible:color-mono-bold:outline-2 enabled:selected:focus-visible:color-mono-bold:outline-mono-bold-hover","enabled:selected:pressed:color-mono-bold:fg-pressed enabled:selected:pressed:color-mono-bold:bg-interactive-muted-pressed enabled:selected:pressed:color-mono-bold:outline-2 enabled:selected:pressed:color-mono-bold:outline-interactive-pressed","enabled:color-accent:fg-primary-bold enabled:color-accent:bg-transparent","enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:bg-accent-primary-muted","enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:bg-accent-primary-muted","enabled:pressed:color-accent:fg-accent-primary-bold enabled:pressed:color-accent:bg-accent-primary-pressed","enabled:selected:color-accent:fg-a11y-on-accent enabled:selected:color-accent:bg-accent-primary-bold enabled:color-accent:outline enabled:selected:color-accent:outline-accent-primary-bold","enabled:selected:hover:color-accent:fg-a11y-on-accent enabled:selected:hover:color-accent:bg-accent-primary-hover enabled:selected:hover:color-accent:outline-2 enabled:selected:hover:color-accent:outline-accent-primary-hover","enabled:selected:focus-visible:color-accent:fg-a11y-on-accent enabled:selected:focus-visible:color-accent:bg-accent-primary-hover enabled:selected:focus-visible:color-accent:outline-2 enabled:selected:focus-visible:color-accent:outline-accent-primary-hover","enabled:selected:pressed:color-accent:fg-accent-primary-bold enabled:selected:pressed:color-accent:bg-accent-primary-pressed enabled:selected:pressed:color-accent:outline-2 enabled:selected:pressed:color-accent:outline-accent-primary-pressed","enabled:color-serious:fg-serious-bold enabled:color-serious:bg-transparent","enabled:hover:color-serious:fg-serious-hover enabled:hover:color-serious:bg-serious-bold","enabled:focus-visible:color-serious:fg-serious-hover enabled:focus-visible:color-serious:bg-serious-muted","enabled:pressed:color-serious:fg-serious-bold enabled:pressed:color-serious:bg-serious-pressed","enabled:selected:color-serious:fg-primary-bold enabled:selected:color-serious:bg-serious-muted enabled:selected:color-serious:outline enabled:selected:color-serious:outline-serious-bold","enabled:selected:hover:color-serious:fg-primary-bold enabled:selected:hover:color-serious:bg-serious-hover enabled:selected:hover:color-serious:outline-2 enabled:selected:hover:color-serious:outline-serious-hover","enabled:selected:focus-visible:color-serious:fg-primary-bold enabled:selected:focus-visible:color-serious:bg-serious-hover enabled:selected:focus-visible:color-serious:outline-2 enabled:selected:focus-visible:color-serious:outline-serious-hover","enabled:selected:pressed:color-serious:fg-serious-pressed enabled:selected:pressed:color-serious:bg-serious-pressed enabled:selected:pressed:color-serious:outline-2 enabled:selected:pressed:color-serious:outline-serious-pressed","enabled:color-critical:fg-critical-bold enabled:color-critical:bg-transparent","enabled:hover:color-critical:fg-critical-hover enabled:hover:color-critical:bg-critical-muted","enabled:focus-visible:color-critical:fg-critical-hover enabled:focus-visible:color-critical:bg-critical-muted","enabled:pressed:color-critical:fg-critical-bold enabled:pressed:color-critical:bg-critical-pressed","enabled:selected:color-critical:fg-primary-bold enabled:selected:color-critical:bg-critical-muted enabled:selected:color-critical:outline enabled:selected:color-critical:outline-critical-bold","enabled:selected:hover:color-critical:fg-a11y-on-accent enabled:selected:hover:color-critical:bg-critical-hover enabled:selected:hover:color-critical:outline-2","enabled:selected:focus-visible:color-critical:fg-a11y-on-accent enabled:selected:focus-visible:color-critical:bg-critical-hover enabled:selected:focus-visible:color-critical:outline-2","enabled:selected:pressed:color-critical:fg-critical-bold enabled:selected:pressed:color-critical:bg-critical-pressed enabled:selected:pressed:color-critical:outline-2 enabled:selected:pressed:color-critical:outline-critical-pressed"],outline:["disabled: disabled:fg-disabled outline-interactive-disabled disabled:bg-transparent","disabled:selected:fg-disabled disabled:selected:bg-interactive-disabled disabled:selected:outline-interactive-disabled","enabled:color-mono-muted:fg-primary-bold enabled:color-mono-muted:bg-transparent enabled:color-mono-muted:outline enabled:color-mono-muted:outline-interactive","enabled:hover:color-mono-muted:bg-interactive-muted-hover enabled:hover:color-mono-muted:outline-2 enabled:hover:color-mono-muted:outline-interactive-hover","enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover enabled:focus-visible:color-mono-muted:outline-2 enabled:focus-visible:color-mono-muted:outline-interactive-hover","enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed enabled:pressed:color-mono-muted:outline-2 enabled:pressed:color-mono-muted:outline-interactive-pressed","enabled:selected:color-mono-muted:fg-primary-muted enabled:selected:color-mono-muted:bg-interactive-muted enabled:selected:color-mono-muted:outline enabled:selected:color-mono-muted:outline-interactive-hover","enabled:selected:hover:color-mono-muted:fg-hover enabled:selected:hover:color-mono-muted:bg-interactive-muted-hover enabled:selected:hover:color-mono-muted:outline-2","enabled:selected:focus-visible:color-mono-muted:bg-interactive-muted-hover enabled:selected:focus-visible:color-mono-muted:outline-2","enabled:selected:pressed:color-mono-muted:fg-pressed enabled:selected:pressed:color-mono-muted:bg-interactive-muted-pressed enabled:selected:pressed:color-mono-muted:outline-2 enabled:selected:pressed:color-mono-muted:outline-interactive-pressed","enabled:color-mono-bold:fg-primary-bold enabled:color-mono-bold:bg-transparent enabled:color-mono-bold:outline enabled:color-mono-bold:outline-mono-bold","enabled:hover:color-mono-bold:bg-interactive-muted-hover enabled:hover:color-mono-bold:outline-2 enabled:hover:color-mono-bold:outline-mono-bold-hover","enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover enabled:focus-visible:color-mono-bold:outline-2 enabled:focus-visible:color-mono-bold:outline-mono-bold-hover","enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed","enabled:selected:color-mono-bold:fg-primary-bold enabled:selected:color-mono-bold:bg-interactive-muted-hover enabled:selected:color-mono-bold:outline enabled:selected:color-mono-bold:outline-mono-bold","enabled:selected:hover:color-mono-bold:fg-inverse-bold enabled:selected:hover:color-mono-bold:bg-interactive-bold-hover enabled:selected:hover:color-mono-bold:outline-2 enabled:selected:hover:color-mono-bold:outline-mono-bold-hover","enabled:selected:focus-visible:color-mono-bold:fg-inverse-bold enabled:selected:focus-visible:color-mono-bold:bg-interactive-muted-hover enabled:selected:focus-visible:color-mono-bold:outline-2 enabled:selected:focus-visible:color-mono-bold:outline-mono-bold-hover","enabled:selected:pressed:color-mono-bold:fg-pressed enabled:selected:pressed:color-mono-bold:bg-interactive-muted-pressed enabled:selected:pressed:color-mono-bold:outline-2 enabled:selected:pressed:color-mono-bold:outline-mono-bold-pressed","enabled:color-accent:fg-primary-bold enabled:color-accent:bg-transparent enabled:color-accent:outline enabled:color-accent:outline-mono-bold","enabled:hover:color-accent:fg-hover enabled:hover:color-accent:bg-accent-primary-muted enabled:hover:color-accent:outline-2 enabled:hover:color-accent:outline-accent-primary-hover","enabled:focus-visible:color-accent:fg-hover enabled:focus-visible:color-accent:bg-accent-primary-muted enabled:focus-visible:color-accent:outline-2 enabled:focus-visible:color-accent:outline-accent-primary-hover","enabled:pressed:color-accent:fg-pressed enabled:pressed:color-accent:bg-interactive-muted-pressed enabled:pressed:color-accent:outline-2 enabled:pressed:color-accent:outline-accent-primary-pressed","enabled:selected:color-accent:fg-primary-bold enabled:selected:color-accent:bg-accent-primary-muted enabled:color-accent:outline enabled:selected:color-accent:outline-accent-primary-bold","enabled:selected:hover:color-accent:fg-a11y-on-accent enabled:selected:hover:color-accent:bg-accent-primary-hover enabled:selected:hover:color-accent:outline-2 enabled:selected:hover:color-accent:outline-accent-primary-hover","enabled:selected:focus-visible:color-accent:fg-a11y-on-accent enabled:selected:focus-visible:color-accent:bg-accent-primary-hover enabled:selected:focus-visible:color-accent:outline-2 enabled:selected:focus-visible:color-accent:outline-accent-primary-hover","enabled:selected:pressed:color-accent:fg-accent-primary-pressed enabled:selected:pressed:color-accent:bg-accent-primary-pressed enabled:selected:pressed:color-accent:outline-2 enabled:selected:pressed:color-accent:outline-accent-primary-pressed","enabled:color-serious:fg-primary-bold enabled:color-serious:bg-transparent enabled:color-serious:outline enabled:color-serious:outline-serious-bold","enabled:hover:color-serious:fg-primary-bold enabled:hover:color-serious:bg-serious-bold enabled:hover:color-serious:outline-2 enabled:hover:color-serious:outline-serious-hover","enabled:focus-visible:color-serious:fg-primary-bold enabled:focus-visible:color-serious:bg-serious-muted enabled:focus-visible:color-serious:outline-2 enabled:focus-visible:color-serious:outline-serious-hover","enabled:pressed:color-serious:fg-serious-bold enabled:pressed:color-serious:bg-serious-pressed enabled:pressed:color-serious:outline-2 enabled:pressed:color-serious:outline-serious-pressed","enabled:selected:color-serious:fg-serious-bold enabled:selected:color-serious:bg-serious-muted enabled:selected:color-serious:outline-serious-muted","enabled:selected:hover:color-serious:fg-primary-bold enabled:selected:hover:color-serious:bg-serious-hover enabled:selected:hover:color-serious:outline-serious-hover","enabled:selected:focus-visible:color-serious:fg-primary-bold enabled:selected:focus-visible:color-serious:bg-serious-hover enabled:selected:focus-visible:color-serious:outline-serious-hover","enabled:selected:pressed:color-serious:fg-serious-pressed enabled:selected:pressed:color-serious:bg-serious-pressed enabled:selected:pressed:color-serious:outline-2 enabled:selected:pressed:color-serious:outline-serious-pressed","enabled:color-critical:fg-primary-bold enabled:color-critical:bg-transparent enabled:color-critical:outline enabled:color-critical:outline-critical-bold","enabled:hover:color-critical:fg-primary-bold enabled:hover:color-critical:bg-critical-bold enabled:hover:color-critical:outline-2 enabled:hover:color-critical:outline-critical-hover","enabled:focus-visible:color-critical:fg-primary-bold enabled:focus-visible:color-critical:bg-critical-muted enabled:focus-visible:color-critical:outline-2 enabled:focus-visible:color-critical:outline-critical-hover","enabled:pressed:color-critical:fg-critical-bold enabled:pressed:color-critical:bg-critical-pressed enabled:pressed:color-critical:outline-2 enabled:pressed:color-critical:outline-critical-pressed","enabled:selected:color-critical:fg-critical-bold enabled:selected:color-critical:bg-critical-muted enabled:selected:color-critical:outline-critical-muted","enabled:selected:hover:color-critical:fg-primary-bold enabled:selected:hover:color-critical:bg-critical-hover enabled:selected:hover:color-critical:outline-critical-hover","enabled:selected:focus-visible:color-critical:fg-primary-bold enabled:selected:focus-visible:color-critical:bg-critical-hover enabled:selected:focus-visible:color-critical:outline-critical-hover","enabled:selected:pressed:color-critical:fg-critical-pressed enabled:selected:pressed:color-critical:bg-critical-pressed enabled:selected:pressed:color-critical:outline-2 enabled:selected:pressed:color-critical:outline-critical-pressed"],icon:["size-small:rounded-small size-xsmall:rounded-small size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs","size-large:min-w-xxl size-large:max-w-xxl","size-medium:min-w-[28px] size-medium:max-w-[28px]","size-small:min-w-xl size-small:max-w-xl","size-xsmall:min-w-[20px] size-xsmall:max-w-[20px]","disabled:fg-disabled disabled:bg-transparent","disabled:selected:fg-disabled disabled:selected:bg-interactive-disabled","enabled:color-mono-muted:fg-primary-muted","enabled:hover:color-mono-muted:bg-interactive-muted-hover","enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover","enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed","enabled:selected:color-mono-muted:fg-primary-muted enabled:selected:color-mono-muted:bg-interactive-muted","enabled:selected:hover:color-mono-muted:fg-primary-bold enabled:selected:hover:color-mono-muted:bg-interactive-muted-hover","enabled:selected:focus-visible:color-mono-muted:fg-primary-bold enabled:selected:focus-visible:color-mono-muted:bg-interactive-muted-hover","enabled:selected:pressed:color-mono-muted:fg-pressed enabled:selected:pressed:color-mono-muted:bg-interactive-muted-pressed","enabled:color-mono-bold:fg-primary-bold","enabled:hover:color-mono-bold:bg-interactive-muted-hover","enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover","enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed","enabled:selected:color-mono-bold:fg-inverse-bold enabled:selected:color-mono-bold:bg-interactive-bold","enabled:selected:hover:color-mono-bold:fg-inverse-bold enabled:selected:hover:color-mono-bold:bg-interactive-bold-hover","enabled:selected:focus-visible:color-mono-bold:bg-interactive-bold-hover","enabled:selected:pressed:color-mono-bold:fg-pressed enabled:selected:pressed:color-mono-bold:bg-interactive-muted-pressed","enabled:color-accent:fg-primary-bold","enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:bg-accent-primary-muted","enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:bg-accent-primary-muted","enabled:pressed:color-accent:fg-accent-primary-pressed enabled:pressed:color-accent:bg-accent-primary-pressed","enabled:selected:color-accent:fg-accent-primary-hover enabled:selected:color-accent:bg-accent-primary-muted","enabled:selected:hover:color-accent:fg-a11y-on-accent enabled:selected:hover:color-accent:bg-accent-primary-hover","enabled:selected:focus-visible:color-accent:fg-a11y-on-accent enabled:selected:focus-visible:color-accent:bg-accent-primary-hover","enabled:selected:pressed:color-accent:fg-accent-primary-pressed enabled:selected:pressed:color-accent:bg-accent-primary-pressed","enabled:color-serious:fg-serious-bold","enabled:hover:color-serious:fg-serious-hover enabled:hover:color-serious:bg-serious-muted","enabled:focus-visible:color-serious:fg-serious-hover enabled:focus-visible:color-serious:bg-serious-muted","enabled:pressed:color-serious:fg-serious-pressed enabled:pressed:color-serious:bg-serious-pressed","enabled:selected:color-serious:fg-serious-bold enabled:selected:color-serious:bg-serious-muted","enabled:selected:hover:color-serious:fg-primary-bold enabled:selected:hover:color-serious:bg-serious-hover","enabled:selected:focus-visible:color-serious:fg-primary-bold enabled:selected:focus-visible:color-serious:bg-serious-hover","enabled:selected:pressed:color-serious:fg-serious-pressed enabled:selected:pressed:color-serious:bg-serious-pressed","enabled:color-critical:fg-critical-bold","enabled:hover:color-critical:fg-critical-hover enabled:hover:color-critical:bg-critical-muted","enabled:focus-visible:color-critical:fg-critical-hover enabled:focus-visible:color-critical:bg-critical-muted","enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-critical-pressed","enabled:selected:color-critical:fg-critical-bold enabled:selected:color-critical:bg-critical-muted","enabled:selected:hover:color-critical:fg-a11y-on-accent enabled:selected:hover:color-critical:bg-critical-hover","enabled:selected:focus-visible:color-critical:fg-a11y-on-accent enabled:selected:focus-visible:color-critical:bg-critical-hover","enabled:selected:pressed:color-critical:fg-critical-pressed enabled:selected:pressed:color-critical:bg-critical-pressed"]}}});export{c as ButtonStyles,l as ButtonStylesDefaults,s as LinkButtonStyles,d as ToggleButtonStyles};//# sourceMappingURL=styles.js.map
|
|
2
2
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/button/styles.ts"],"names":["BaseButtonStyles","e"],"mappings":"sCAeS,MAAA,CAAA,CAAA,CAAA,KACP,CAAA,cACF,CAEMA,QACJ,CAAA,CAAM,CACJ,CAAAC,EAAA,CAAA,CAAA,IAAA,CAAA,CAAA,mHACA,CAAA,0GAEA,CAAA,gFACA,CAAA,8EACA,CAAA,oFAEQ,CACR,QAAS,CACP,CAAA,OACE,iEAGA,CAAA,oCACA,CAAA,6FAEA,CAAA,4DAGA,CAAA,kFAEA,CAAA,8CACA,CAAA,kGAIA,CAAA,yCACA,CAAA,yGAGO,CACP,CAAA,OAAA,CAAA,CAAA,wIAIA,CAAA,oDACA,CAAA,+IAIA,CAAA,uDACA,CAAA,qJAIA,CAAA,wDACA,CAAA,gEAEI,CAAA,CAAA,IAAA,CAAA,8CAEJ,CAAA,IAAA,CAAA,CAAA,uKAGF,CAAU,CACR,QAAA,CAAA,CAAA,cACA,CAAA,qEACA,CAAA,6FAGA,CAAA,0MAEA,CAAA,2GAGA,CAAA,2NAEA,CAAA,iHAGA,CAAA,mOAEA,CAAA,mHAIN,CAAA,CAAA,CAAA,CAAA,gBAGI,CAAS,CAAC,CAAA,OAAQ,CAAA,CAAA,MAClB,CAAA,MAAA,CAAA,CAAW,SACT,CAAA,CAAA,oCACA,CAAA,mHAOF,CAAA,CAAS,CAAC,QAAQ,CAAA,CAAA,eACP,SACT,CAAA,CAAA,sFAEA,CAAA,sDAMF,CAAA,CAAS,CAAC,CAAA,OAAQ,CAAA,CAAA,MAClB,CAAA,MAAA,CAAA,CAAW,SACT,CAAA,CAAA,wCACA,CAAA,yGAKN,CAAA,CAAA,CAAA,CAAA,eAIA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQD,EACV,CAAC,CAAA,MAGC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQA,EACV,CAAC,CAAA,MAGC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQA,GACR,CAAA,wDAEE,CAAA,+CACA,CAAA,uDAEF,CAAU,CACR,QAAS,CACP,CAAA,OAEE,CAAA,CAAA,MAAA,CAAA,CAAA,2CACA,CAAA,mIAIA,CAAA,iDACA,CAAA,uHAIA,CAAA,mDACA,CAAA,2HAGF,CAAU,CAER,QAAA,CAAA,CAAA,yDACA,CAAA,mIAIA,CAAA,4DACA,CAAA,yIAIA,CAAA,6DACA,CAAA,2IAKP,CAAA,CAAA,CAAA,CAAA","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from '@/lib/utils';\n\nexport const ButtonStylesDefaults = {\n color: 'info',\n variant: 'filled',\n} as const;\n\nconst BaseButtonStyles = tv({\n base: [\n 'group/button flex w-content cursor-pointer items-center justify-center rounded-medium outline outline-transparent',\n 'disabled:cursor-not-allowed',\n 'size-large:gap-xs size-large:px-m size-large:py-s size-large:text-button-l',\n 'size-medium:gap-xs size-medium:px-m size-medium:py-s size-medium:text-button-m',\n 'size-small:gap-xxs size-small:px-s size-small:py-xs size-small:text-button-s',\n 'size-xsmall:gap-xxs size-xsmall:px-s size-xsmall:py-xs size-xsmall:text-button-xs',\n ],\n variants: {\n variant: {\n filled: [\n 'disabled:fg-disabled disabled:bg-interactive-disabled',\n\n // Info\n 'enabled:color-info:fg-inverse-bold',\n 'enabled:color-info:bg-interactive-bold',\n 'enabled:hover:color-info:bg-interactive-bold-hover',\n 'enabled:focus-visible:color-info:bg-interactive-bold-hover',\n\n // Serious\n 'enabled:color-serious:fg-a11y-on-utility',\n 'enabled:color-serious:bg-serious-bold',\n 'enabled:hover:color-serious:bg-serious-hover',\n 'enabled:focus-visible:color-serious:bg-serious-hover',\n\n // Critical\n 'enabled:color-critical:fg-a11y-on-utility',\n 'enabled:color-critical:bg-critical-bold',\n 'enabled:hover:color-critical:bg-critical-hover',\n 'enabled:focus-visible:color-critical:bg-critical-hover',\n ],\n outline: [\n 'disabled:fg-disabled disabled:outline-interactive-disabled',\n\n // Info\n 'enabled:color-info:fg-primary-bold enabled:color-info:outline-interactive',\n 'enabled:hover:color-info:outline-interactive-hover',\n 'enabled:focus-visible:color-info:outline-interactive-hover',\n\n // Serious\n 'enabled:color-serious:fg-primary-bold enabled:color-serious:outline-serious-bold',\n 'enabled:hover:color-serious:outline-interactive-hover',\n 'enabled:focus-visible:color-serious:outline-interactive-hover',\n\n // Critical\n 'enabled:color-critical:fg-primary-bold enabled:color-critical:outline-critical-bold',\n 'enabled:hover:color-critical:outline-interactive-hover',\n 'enabled:focus-visible:color-critical:outline-interactive-hover',\n ],\n flat: 'disabled:fg-disabled disabled:bg-transparent',\n icon: [\n 'size-small:rounded-small size-xsmall:rounded-small size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs',\n 'disabled:fg-disabled disabled:bg-transparent',\n ],\n floating: [\n 'rounded-full',\n 'size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs',\n 'disabled:fg-disabled disabled:bg-interactive-disabled disabled:outline-interactive-disabled',\n\n // Info\n 'enabled:color-info:fg-info-bold enabled:color-info:bg-surface-default enabled:color-info:outline-interactive',\n 'enabled:hover:color-info:fg-info-hover enabled:hover:color-info:outline-interactive-hover',\n 'enabled:focus-visible:color-info:fg-info-hover enabled:focus-visible:color-info:outline-interactive-hover',\n\n // Serious\n 'enabled:color-serious:fg-serious-bold enabled:color-serious:bg-serious-muted enabled:color-serious:outline-serious-bold',\n 'enabled:hover:color-serious:fg-info-hover enabled:hover:color-serious:outline-interactive-hover',\n 'enabled:focus-visible:color-serious:fg-info-hover enabled:focus-visible:color-serious:outline-interactive-hover',\n\n // Critical\n 'enabled:color-critical:fg-critical-bold enabled:color-critical:bg-critical-muted enabled:color-critical:outline-critical-bold',\n 'enabled:hover:color-critical:fg-info-hover enabled:hover:color-critical:outline-interactive-hover',\n 'enabled:focus-visible:color-critical:fg-info-hover enabled:focus-visible:color-critical:outline-interactive-hover',\n ],\n },\n },\n compoundVariants: [\n // Info\n {\n variant: ['flat', 'icon'],\n className: [\n 'enabled:color-info:fg-primary-bold',\n 'enabled:hover:color-info:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-info:bg-interactive-muted-hover',\n ],\n },\n\n // Serious\n {\n variant: ['flat', 'icon'],\n className: [\n 'enabled:color-serious:fg-primary-bold',\n 'enabled:hover:color-serious:bg-serious-hover',\n 'enabled:focus-visible:color-serious:bg-serious-hover',\n ],\n },\n\n // Critical\n {\n variant: ['flat', 'icon'],\n className: [\n 'enabled:color-critical:fg-primary-bold',\n 'enabled:hover:color-critical:bg-critical-hover',\n 'enabled:focus-visible:color-critical:bg-critical-hover',\n ],\n },\n ],\n defaultVariants: ButtonStylesDefaults,\n});\n\nexport const ButtonStyles = tv({\n extend: BaseButtonStyles,\n});\n\nexport const LinkButtonStyles = tv({\n extend: BaseButtonStyles,\n});\n\nexport const ToggleButtonStyles = tv({\n extend: BaseButtonStyles,\n base: [\n 'enabled:selected:fg-accent-primary-bold',\n 'enabled:selected:hover:fg-accent-primary-bold',\n 'enabled:selected:focus-visible:fg-accent-primary-bold',\n ],\n variants: {\n variant: {\n filled: [\n // Info\n 'enabled:selected:color-info:bg-info-muted',\n 'enabled:selected:hover:color-info:bg-interactive-bold-hover',\n 'enabled:selected:focus-visible:color-info:bg-interactive-bold-hover',\n\n // Serious\n 'enabled:selected:color-serious:bg-serious-muted',\n 'enabled:selected:hover:color-serious:bg-serious-hover',\n 'enabled:selected:focus-visible:color-serious:bg-serious-hover',\n\n // Critical\n 'enabled:selected:color-critical:bg-critical-muted',\n 'enabled:selected:hover:color-critical:bg-critical-hover',\n 'enabled:selected:focus-visible:color-critical:bg-critical-hover',\n ],\n floating: [\n // Info\n 'enabled:selected:color-info:outline-accent-primary-bold',\n 'enabled:selected:hover:color-info:outline-interactive-hover',\n 'enabled:selected:focus-visible:color-info:outline-interactive-hover',\n\n // Serious\n 'enabled:selected:color-serious:outline-accent-primary-bold',\n 'enabled:selected:hover:color-serious:outline-interactive-hover',\n 'enabled:selected:focus-visible:color-serious:outline-interactive-hover',\n\n // Critical\n 'enabled:selected:color-critical:outline-accent-primary-bold',\n 'enabled:selected:hover:color-critical:outline-interactive-hover',\n 'enabled:selected:focus-visible:color-critical:outline-interactive-hover',\n ],\n },\n },\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/button/styles.ts"],"names":["BaseButtonStyles","e"],"mappings":"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","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from '@/lib/utils';\n\nexport const ButtonStylesDefaults = {\n variant: 'filled',\n} as const;\n\nconst BaseButtonStyles = tv({\n base: [\n 'group/button flex w-content cursor-pointer items-center justify-center rounded-medium outline outline-transparent',\n 'disabled:cursor-not-allowed',\n 'size-large:min-w-[96px] size-large:gap-xs size-large:px-l size-large:py-s size-large:text-button-l',\n 'size-medium:min-w-[68px] size-medium:gap-xs size-medium:px-m size-medium:py-xs size-medium:text-button-m',\n 'size-small:min-w-[54px] size-small:gap-xxs size-small:px-s size-small:py-xs size-small:text-button-s',\n 'size-xsmall:min-w-[41px] size-xsmall:gap-xxs size-xsmall:p-xs size-xsmall:text-button-xs',\n 'transition-colors duration-[80ms]',\n ],\n variants: {\n variant: {\n filled: [\n 'disabled:fg-disabled disabled:bg-interactive-disabled',\n\n // Mono Muted\n 'enabled:color-mono-muted:fg-primary-bold enabled:color-mono-muted:bg-interactive-muted',\n 'enabled:hover:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-muted:fg-primary-muted enabled:pressed:color-mono-muted:bg-interactive-muted-pressed',\n\n // Mono Bold\n 'enabled:color-mono-bold:fg-inverse-bold enabled:color-mono-bold:bg-interactive-bold',\n 'enabled:hover:color-mono-bold:fg-disabled enabled:hover:color-mono-bold:bg-interactive-bold-hover',\n 'enabled:focus-visible:color-mono-bold:fg-disabled enabled:focus-visible:color-mono-bold:bg-interactive-bold-hover',\n 'enabled:pressed:color-mono-bold:fg-inverse-muted enabled:pressed:color-mono-bold:bg-interactive-bold-pressed',\n\n // Accent\n 'enabled:color-accent:fg-a11y-on-accent enabled:color-accent:bg-accent-primary-bold',\n 'enabled:hover:color-accent:bg-accent-primary-hover',\n 'enabled:focus-visible:color-accent:bg-accent-primary-hover',\n 'enabled:pressed:color-accent:fg-accent-primary-bold enabled:pressed:color-accent:bg-accent-primary-pressed',\n\n // Serious\n 'enabled:color-serious:fg-a11y-on-utility enabled:color-serious:bg-serious-bold',\n 'enabled:hover:color-serious:bg-serious-hover',\n 'enabled:focus-visible:color-serious:bg-serious-hover',\n 'enabled:pressed:color-serious:fg-serious-bold enabled:pressed:color-serious:bg-serious-pressed',\n\n // Critical\n 'enabled:color-critical:fg-a11y-on-utility enabled:color-critical:bg-critical-bold',\n 'enabled:hover:color-critical:bg-critical-hover',\n 'enabled:focus-visible:color-critical:bg-critical-hover',\n 'enabled:pressed:color-critical:fg-critical-bold enabled:pressed:color-critical:bg-critical-pressed',\n ],\n outline: [\n 'disabled:fg-disabled disabled:outline-interactive-disabled',\n\n // Mono Muted\n 'enabled:color-mono-muted:fg-primary-bold enabled:color-mono-muted:bg-transparent enabled:color-mono-muted:outline enabled:color-mono-muted:outline-interactive',\n 'enabled:hover:color-mono-muted:bg-interactive-muted-hover enabled:hover:color-mono-muted:outline-2 enabled:hover:color-mono-muted:outline-interactive-hover',\n 'enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover enabled:focus-visible:color-mono-muted:outline-2 enabled:focus-visible:color-mono-muted:outline-interactive-hover',\n 'enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed enabled:pressed:color-mono-muted:outline-2 enabled:pressed:color-mono-muted:outline-interactive-pressed',\n\n // Mono Bold\n 'enabled:color-mono-bold:fg-primary-bold enabled:color-mono-bold:bg-transparent enabled:color-mono-bold:outline enabled:color-mono-bold:outline-mono-bold',\n 'enabled:hover:color-mono-bold:bg-interactive-muted-hover enabled:hover:color-mono-bold:outline-2 enabled:hover:color-mono-bold:outline-interactive-hover',\n 'enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover enabled:focus-visible:color-mono-bold:outline-2 enabled:focus-visible:color-mono-bold:outline-interactive-hover',\n 'enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed enabled:pressed:color-mono-bold:outline-2 enabled:pressed:color-mono-bold:outline-mono-bold-pressed',\n\n // Accent\n 'enabled:color-accent:fg-primary-bold enabled:color-accent:bg-transparent enabled:color-accent:outline enabled:color-accent:outline-accent-primary-bold',\n 'enabled:hover:color-accent:fg-a11y-on-accent enabled:hover:color-accent:bg-accent-primary-hover enabled:hover:color-accent:outline-2 enabled:hover:color-accent:outline-accent-primary-hover',\n 'enabled:focus-visible::color-accent:fg-a11y-on-accent enabled:focus-visible:color-accent:bg-accent-primary-hover enabled:focus-visible:color-accent:outline-2 enabled:focus-visible:color-accent:outline-accent-primary-hover',\n 'enabled:pressed:color-accent:fg-accent-primary-bold enabled:pressed:color-accent:bg-accent-primary-pressed enabled:pressed:color-accent:outline-2 enabled:pressed:color-accent:outline-accent-primary-pressed',\n\n // Serious\n 'enabled:color-serious:fg-primary-bold enabled:color-serious:bg-transparent enabled:color-serious:outline enabled:color-serious:outline-serious-bold',\n 'enabled:hover:color-serious:fg-a11y-on-accent enabled:hover:color-serious:bg-serious-hover enabled:hover:color-serious:outline-2 enabled:hover:color-serious:outline-serious-hover',\n 'enabled:focus-visible:color-serious:fg-a11y-on-accent enabled:focus-visible:color-serious:bg-serious-hover enabled:focus-visible:color-serious:outline-2 enabled:focus-visible:color-serious:outline-serious-hover',\n 'enabled:pressed:color-serious:fg-serious-bold enabled:pressed:color-serious:bg-serious-pressed enabled:pressed:color-serious:outline-2 enabled:pressed:color-serious:outline-serious-pressed',\n\n // Critical\n 'enabled:color-critical:fg-primary-bold enabled:color-critical:bg-transparent enabled:color-critical:outline enabled:color-critical:outline-critical-bold',\n 'enabled:hover:color-critical:fg-a11y-on-accent enabled:hover:color-critical:bg-critical-hover enabled:hover:color-critical:outline-2 enabled:hover:color-critical:outline-critical-hover',\n 'enabled:focus-visible:color-critical:fg-a11y-on-accent enabled:focus-visible:color-critical:bg-critical-hover enabled:focus-visible:color-critical:outline-2 enabled:focus-visible:color-critical:outline-critical-hover',\n 'enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-critical-pressed enabled:pressed:color-critical:outline-2 enabled:pressed:color-critical:outline-critical-pressed',\n ],\n flat: [\n 'disabled:fg-disabled disabled:bg-transparent',\n\n // Mono Muted\n 'enabled:color-mono-muted:fg-primary-muted',\n 'enabled:hover:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed',\n\n // Mono Bold\n 'enabled:color-mono-bold:fg-primary-bold',\n 'enabled:hover:color-mono-bold:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed',\n\n // Accent\n 'enabled:color-accent:fg-accent-primary-bold',\n 'enabled:hover:color-accent:fg-a11y-on-accent enabled:hover:color-accent:bg-accent-primary-hover',\n 'enabled:focus-visible:color-accent:fg-a11y-on-accent enabled:focus-visible:color-accent:bg-accent-primary-hover',\n 'enabled:pressed:color-accent:fg-accent-primary-pressed enabled:pressed:color-accent:bg-accent-primary-pressed',\n\n // Serious\n 'enabled:color-serious:fg-serious-bold',\n 'enabled:hover:color-serious:fg-a11y-on-accent enabled:hover:color-serious:bg-serious-hover',\n 'enabled:focus-visible:color-serious:fg-a11y-on-accent enabled:focus-visible:color-serious:bg-serious-hover',\n 'enabled:pressed:color-serious:fg-serious-pressed enabled:pressed:color-serious:bg-serious-pressed',\n\n // Critical\n 'enabled:color-critical:fg-critical-bold',\n 'enabled:hover:color-critical:fg-a11y-on-accent enabled:hover:color-critical:bg-critical-hover',\n 'enabled:focus-visible:color-critical:fg-a11y-on-accent enabled:focus-visible:color-critical:bg-critical-hover',\n 'enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-critical-pressed',\n ],\n icon: [\n 'size-small:rounded-small size-xsmall:rounded-small size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs',\n 'size-large:min-w-xxl size-large:max-w-xxl',\n 'size-medium:min-w-[28px] size-medium:max-w-[28px]',\n 'size-small:min-w-xl size-small:max-w-xl',\n 'size-xsmall:min-w-[20px] size-xsmall:max-w-[20px]',\n 'disabled:fg-disabled disabled:bg-transparent',\n\n // Mono Muted\n 'enabled:color-mono-muted:fg-primary-muted',\n 'enabled:hover:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed',\n\n // Mono Bold\n 'enabled:color-mono-bold:fg-primary-bold',\n 'enabled:hover:color-mono-bold:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed',\n\n // Accent\n 'enabled:color-accent:fg-accent-primary-bold',\n 'enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:bg-interactive-muted-hover',\n 'enabled:pressed:color-accent:fg-accent-primary-pressed enabled:pressed:color-accent:bg-interactive-muted-pressed',\n\n // Serious\n 'enabled:color-serious:fg-serious-bold',\n 'enabled:hover:color-serious:fg-serious-hover enabled:hover:color-serious:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-serious:fg-serious-hover enabled:focus-visible:color-serious:bg-interactive-muted-hover',\n 'enabled:pressed:color-serious:fg-serious-pressed enabled:pressed:color-serious:bg-interactive-muted-pressed',\n\n // Critical\n 'enabled:color-critical:fg-critical-bold',\n 'enabled:hover:color-critical:fg-critical-hover enabled:hover:color-critical:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-critical:fg-critical-hover enabled:focus-visible:color-critical:bg-interactive-muted-hover',\n 'enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-interactive-muted-pressed',\n ],\n floating: [\n 'rounded-full',\n 'size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs',\n 'size-large:min-w-xxl size-large:max-w-xxl',\n 'size-medium:min-w-[28px] size-medium:max-w-[28px]',\n 'size-small:min-w-xl size-small:max-w-xl',\n 'size-xsmall:min-w-[20px] size-xsmall:max-w-[20px]',\n 'disabled:fg-disabled disabled:bg-interactive-disabled disabled:outline-interactive-disabled',\n\n // Mono Muted\n 'enabled:color-mono-muted:fg-primary-muted enabled:color-mono-muted:bg-surface-default enabled:color-mono-muted:outline-interactive',\n 'enabled:hover:color-mono-muted:fg-primary-hover enabled:hover:color-mono-muted:outline-interactive-hover',\n 'enabled:focus-visible:color-mono-muted:fg-primary-hover enabled:focus-visible:color-mono-muted:outline-interactive-hover',\n 'enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed',\n\n // Mono Bold\n 'enabled:color-mono-bold:fg-primary-bold enabled:color-mono-bold:bg-surface-default enabled:color-mono-bold:outline-interactive',\n 'enabled:hover:color-mono-bold:fg-primary-hover enabled:hover:color-mono-bold:outline-interactive-hover',\n 'enabled:focus-visible:color-mono-bold:fg-primary-hover enabled:focus-visible:color-mono-bold:outline-interactive-hover',\n 'enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed',\n\n // Accent\n 'enabled:color-accent:fg-accent-primary-bold enabled:color-accent:bg-accent-primary-bold enabled:color-accent:outline-accent-primary-bold',\n 'enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:outline-accent-primary-hover',\n 'enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:outline-accent-primary-hover',\n 'enabled:pressed:color-accent:fg-accent-primary-pressed enabled:pressed:color-accent:bg-interactive-muted-pressed enabled:pressed:color-accent:outline-accent-primary-pressed',\n\n // Serious\n 'enabled:color-serious:fg-serious-bold enabled:color-serious:bg-serious-muted enabled:color-serious:outline-serious-bold',\n 'enabled:hover:color-serious:fg-serious-hover enabled:hover:color-serious:outline-interactive-hover',\n 'enabled:focus-visible:color-serious:fg-serious-hover enabled:focus-visible:color-serious:outline-interactive-hover',\n 'enabled:pressed:color-serious:fg-serious-pressed enabled:pressed:color-serious:bg-interactive-muted-pressed enabled:pressed:color-serious:outline-serious-pressed',\n\n // Critical\n 'enabled:color-critical:fg-critical-bold enabled:color-critical:bg-critical-muted enabled:color-critical:outline-critical-bold',\n 'enabled:hover:color-critical:fg-critiical-hover enabled:hover:color-critical:outline-critical-hover',\n 'enabled:focus-visible:color-critical:fg-critiical-hover enabled:focus-visible:color-critical:outline-critical-hover',\n 'enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-interactive-muted-pressed enabled:pressed:color-critical:outline-critical-pressed',\n ],\n },\n },\n defaultVariants: ButtonStylesDefaults,\n});\n\nexport const ButtonStyles = tv({\n extend: BaseButtonStyles,\n});\n\nexport const LinkButtonStyles = tv({\n extend: BaseButtonStyles,\n});\n\nexport const ToggleButtonStyles = tv({\n extend: BaseButtonStyles,\n base: [\n 'enabled:color-accent:fg-accent-primary-bold enabled:color-accent:bg-transparent',\n 'enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:bg-accent-primary-muted',\n 'enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:bg-accent-primary-muted',\n 'enabled:pressed:color-accent:fg-accent-primary-bold enabled:pressed:color-accent:bg-accent-primary-pressed',\n ],\n variants: {\n variant: {\n flat: [\n 'disabled:fg-disabled disabled:bg-transparent',\n 'disabled:selected:fg-disabled disabled:selected:bg-interactive-disabled disabled:selected:outline-interactive-disabled',\n\n // Mono Muted\n 'enabled:color-mono-muted:fg-primary-muted enabled:color-mono-muted:bg-transparent',\n 'enabled:hover:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed',\n\n // Mono Muted - Selected\n 'enabled:selected:color-mono-muted:fg-primary-muted enabled:selected:color-mono-muted:bg-interactive-muted enabled:selected:color-mono-muted:outline enabled:selected:color-mono-muted:outline-interactive-hover',\n 'enabled:selected:hover:color-mono-muted:bg-interactive-muted-hover enabled:selected:hover:color-mono-muted:outline-2',\n 'enabled:selected:focus-visible:color-mono-muted:bg-interactive-muted-hover enabled:selected:focus-visible:color-mono-muted:outline-2',\n 'enabled:selected:pressed:color-mono-muted:fg-pressed enabled:selected:pressed:color-mono-muted:bg-interactive-muted-pressed enabled:selected:pressed:color-mono-muted:outline-2 enabled:selected:pressed:color-mono-muted:outline-interactive-pressed',\n\n // Mono Bold\n 'enabled:color-mono-bold:fg-primary-bold',\n 'enabled:hover:color-mono-bold:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed',\n\n // Mono Bold - Selected\n 'enabled:selected:color-mono-bold:fg-primary-bold enabled:selected:color-mono-bold:outline enabled:selected:color-mono-bold:outline-mono-bold',\n 'enabled:selected:hover:color-mono-bold:fg-hover enabled:selected:hover:color-mono-bold:bg-interactive-muted-hover enabled:selected:hover:color-mono-bold:outline-2 enabled:selected:hover:color-mono-bold:outline-mono-bold-hover',\n 'enabled:selected:focus-visible:color-mono-bold:bg-interactive-muted-hover enabled:selected:focus-visible:color-mono-bold:outline-2 enabled:selected:focus-visible:color-mono-bold:outline-mono-bold-hover',\n 'enabled:selected:pressed:color-mono-bold:fg-pressed enabled:selected:pressed:color-mono-bold:bg-interactive-muted-pressed enabled:selected:pressed:color-mono-bold:outline-2 enabled:selected:pressed:color-mono-bold:outline-interactive-pressed',\n\n // Accent\n 'enabled:color-accent:fg-primary-bold enabled:color-accent:bg-transparent',\n 'enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:bg-accent-primary-muted',\n 'enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:bg-accent-primary-muted',\n 'enabled:pressed:color-accent:fg-accent-primary-bold enabled:pressed:color-accent:bg-accent-primary-pressed',\n\n // Accent - Selected\n 'enabled:selected:color-accent:fg-a11y-on-accent enabled:selected:color-accent:bg-accent-primary-bold enabled:color-accent:outline enabled:selected:color-accent:outline-accent-primary-bold',\n 'enabled:selected:hover:color-accent:fg-a11y-on-accent enabled:selected:hover:color-accent:bg-accent-primary-hover enabled:selected:hover:color-accent:outline-2 enabled:selected:hover:color-accent:outline-accent-primary-hover',\n 'enabled:selected:focus-visible:color-accent:fg-a11y-on-accent enabled:selected:focus-visible:color-accent:bg-accent-primary-hover enabled:selected:focus-visible:color-accent:outline-2 enabled:selected:focus-visible:color-accent:outline-accent-primary-hover',\n 'enabled:selected:pressed:color-accent:fg-accent-primary-bold enabled:selected:pressed:color-accent:bg-accent-primary-pressed enabled:selected:pressed:color-accent:outline-2 enabled:selected:pressed:color-accent:outline-accent-primary-pressed',\n\n // Serious\n 'enabled:color-serious:fg-serious-bold enabled:color-serious:bg-transparent',\n 'enabled:hover:color-serious:fg-serious-hover enabled:hover:color-serious:bg-serious-bold',\n 'enabled:focus-visible:color-serious:fg-serious-hover enabled:focus-visible:color-serious:bg-serious-muted',\n 'enabled:pressed:color-serious:fg-serious-bold enabled:pressed:color-serious:bg-serious-pressed',\n\n // Serious - Selected\n 'enabled:selected:color-serious:fg-primary-bold enabled:selected:color-serious:bg-serious-muted enabled:selected:color-serious:outline enabled:selected:color-serious:outline-serious-bold',\n 'enabled:selected:hover:color-serious:fg-primary-bold enabled:selected:hover:color-serious:bg-serious-hover enabled:selected:hover:color-serious:outline-2 enabled:selected:hover:color-serious:outline-serious-hover',\n 'enabled:selected:focus-visible:color-serious:fg-primary-bold enabled:selected:focus-visible:color-serious:bg-serious-hover enabled:selected:focus-visible:color-serious:outline-2 enabled:selected:focus-visible:color-serious:outline-serious-hover',\n 'enabled:selected:pressed:color-serious:fg-serious-pressed enabled:selected:pressed:color-serious:bg-serious-pressed enabled:selected:pressed:color-serious:outline-2 enabled:selected:pressed:color-serious:outline-serious-pressed',\n\n // Critical\n 'enabled:color-critical:fg-critical-bold enabled:color-critical:bg-transparent',\n 'enabled:hover:color-critical:fg-critical-hover enabled:hover:color-critical:bg-critical-muted',\n 'enabled:focus-visible:color-critical:fg-critical-hover enabled:focus-visible:color-critical:bg-critical-muted',\n 'enabled:pressed:color-critical:fg-critical-bold enabled:pressed:color-critical:bg-critical-pressed',\n\n // Critical - Selected\n 'enabled:selected:color-critical:fg-primary-bold enabled:selected:color-critical:bg-critical-muted enabled:selected:color-critical:outline enabled:selected:color-critical:outline-critical-bold',\n 'enabled:selected:hover:color-critical:fg-a11y-on-accent enabled:selected:hover:color-critical:bg-critical-hover enabled:selected:hover:color-critical:outline-2',\n 'enabled:selected:focus-visible:color-critical:fg-a11y-on-accent enabled:selected:focus-visible:color-critical:bg-critical-hover enabled:selected:focus-visible:color-critical:outline-2',\n 'enabled:selected:pressed:color-critical:fg-critical-bold enabled:selected:pressed:color-critical:bg-critical-pressed enabled:selected:pressed:color-critical:outline-2 enabled:selected:pressed:color-critical:outline-critical-pressed',\n ],\n outline: [\n 'disabled: disabled:fg-disabled outline-interactive-disabled disabled:bg-transparent',\n 'disabled:selected:fg-disabled disabled:selected:bg-interactive-disabled disabled:selected:outline-interactive-disabled',\n\n // Mono Muted\n 'enabled:color-mono-muted:fg-primary-bold enabled:color-mono-muted:bg-transparent enabled:color-mono-muted:outline enabled:color-mono-muted:outline-interactive',\n 'enabled:hover:color-mono-muted:bg-interactive-muted-hover enabled:hover:color-mono-muted:outline-2 enabled:hover:color-mono-muted:outline-interactive-hover',\n 'enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover enabled:focus-visible:color-mono-muted:outline-2 enabled:focus-visible:color-mono-muted:outline-interactive-hover',\n 'enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed enabled:pressed:color-mono-muted:outline-2 enabled:pressed:color-mono-muted:outline-interactive-pressed',\n\n // Mono Muted - Selected\n 'enabled:selected:color-mono-muted:fg-primary-muted enabled:selected:color-mono-muted:bg-interactive-muted enabled:selected:color-mono-muted:outline enabled:selected:color-mono-muted:outline-interactive-hover',\n 'enabled:selected:hover:color-mono-muted:fg-hover enabled:selected:hover:color-mono-muted:bg-interactive-muted-hover enabled:selected:hover:color-mono-muted:outline-2',\n 'enabled:selected:focus-visible:color-mono-muted:bg-interactive-muted-hover enabled:selected:focus-visible:color-mono-muted:outline-2',\n 'enabled:selected:pressed:color-mono-muted:fg-pressed enabled:selected:pressed:color-mono-muted:bg-interactive-muted-pressed enabled:selected:pressed:color-mono-muted:outline-2 enabled:selected:pressed:color-mono-muted:outline-interactive-pressed',\n\n // Mono Bold\n 'enabled:color-mono-bold:fg-primary-bold enabled:color-mono-bold:bg-transparent enabled:color-mono-bold:outline enabled:color-mono-bold:outline-mono-bold',\n 'enabled:hover:color-mono-bold:bg-interactive-muted-hover enabled:hover:color-mono-bold:outline-2 enabled:hover:color-mono-bold:outline-mono-bold-hover',\n 'enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover enabled:focus-visible:color-mono-bold:outline-2 enabled:focus-visible:color-mono-bold:outline-mono-bold-hover',\n 'enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed',\n\n // Mono Bold - Selected\n 'enabled:selected:color-mono-bold:fg-primary-bold enabled:selected:color-mono-bold:bg-interactive-muted-hover enabled:selected:color-mono-bold:outline enabled:selected:color-mono-bold:outline-mono-bold',\n 'enabled:selected:hover:color-mono-bold:fg-inverse-bold enabled:selected:hover:color-mono-bold:bg-interactive-bold-hover enabled:selected:hover:color-mono-bold:outline-2 enabled:selected:hover:color-mono-bold:outline-mono-bold-hover',\n 'enabled:selected:focus-visible:color-mono-bold:fg-inverse-bold enabled:selected:focus-visible:color-mono-bold:bg-interactive-muted-hover enabled:selected:focus-visible:color-mono-bold:outline-2 enabled:selected:focus-visible:color-mono-bold:outline-mono-bold-hover',\n 'enabled:selected:pressed:color-mono-bold:fg-pressed enabled:selected:pressed:color-mono-bold:bg-interactive-muted-pressed enabled:selected:pressed:color-mono-bold:outline-2 enabled:selected:pressed:color-mono-bold:outline-mono-bold-pressed',\n\n // Accent\n 'enabled:color-accent:fg-primary-bold enabled:color-accent:bg-transparent enabled:color-accent:outline enabled:color-accent:outline-mono-bold',\n 'enabled:hover:color-accent:fg-hover enabled:hover:color-accent:bg-accent-primary-muted enabled:hover:color-accent:outline-2 enabled:hover:color-accent:outline-accent-primary-hover',\n 'enabled:focus-visible:color-accent:fg-hover enabled:focus-visible:color-accent:bg-accent-primary-muted enabled:focus-visible:color-accent:outline-2 enabled:focus-visible:color-accent:outline-accent-primary-hover',\n 'enabled:pressed:color-accent:fg-pressed enabled:pressed:color-accent:bg-interactive-muted-pressed enabled:pressed:color-accent:outline-2 enabled:pressed:color-accent:outline-accent-primary-pressed',\n\n // Accent - Selected\n 'enabled:selected:color-accent:fg-primary-bold enabled:selected:color-accent:bg-accent-primary-muted enabled:color-accent:outline enabled:selected:color-accent:outline-accent-primary-bold',\n 'enabled:selected:hover:color-accent:fg-a11y-on-accent enabled:selected:hover:color-accent:bg-accent-primary-hover enabled:selected:hover:color-accent:outline-2 enabled:selected:hover:color-accent:outline-accent-primary-hover',\n 'enabled:selected:focus-visible:color-accent:fg-a11y-on-accent enabled:selected:focus-visible:color-accent:bg-accent-primary-hover enabled:selected:focus-visible:color-accent:outline-2 enabled:selected:focus-visible:color-accent:outline-accent-primary-hover',\n 'enabled:selected:pressed:color-accent:fg-accent-primary-pressed enabled:selected:pressed:color-accent:bg-accent-primary-pressed enabled:selected:pressed:color-accent:outline-2 enabled:selected:pressed:color-accent:outline-accent-primary-pressed',\n\n // Serious\n 'enabled:color-serious:fg-primary-bold enabled:color-serious:bg-transparent enabled:color-serious:outline enabled:color-serious:outline-serious-bold',\n 'enabled:hover:color-serious:fg-primary-bold enabled:hover:color-serious:bg-serious-bold enabled:hover:color-serious:outline-2 enabled:hover:color-serious:outline-serious-hover',\n 'enabled:focus-visible:color-serious:fg-primary-bold enabled:focus-visible:color-serious:bg-serious-muted enabled:focus-visible:color-serious:outline-2 enabled:focus-visible:color-serious:outline-serious-hover',\n 'enabled:pressed:color-serious:fg-serious-bold enabled:pressed:color-serious:bg-serious-pressed enabled:pressed:color-serious:outline-2 enabled:pressed:color-serious:outline-serious-pressed',\n\n // Serious - Selected\n 'enabled:selected:color-serious:fg-serious-bold enabled:selected:color-serious:bg-serious-muted enabled:selected:color-serious:outline-serious-muted',\n 'enabled:selected:hover:color-serious:fg-primary-bold enabled:selected:hover:color-serious:bg-serious-hover enabled:selected:hover:color-serious:outline-serious-hover',\n 'enabled:selected:focus-visible:color-serious:fg-primary-bold enabled:selected:focus-visible:color-serious:bg-serious-hover enabled:selected:focus-visible:color-serious:outline-serious-hover',\n 'enabled:selected:pressed:color-serious:fg-serious-pressed enabled:selected:pressed:color-serious:bg-serious-pressed enabled:selected:pressed:color-serious:outline-2 enabled:selected:pressed:color-serious:outline-serious-pressed',\n\n // Critical\n 'enabled:color-critical:fg-primary-bold enabled:color-critical:bg-transparent enabled:color-critical:outline enabled:color-critical:outline-critical-bold',\n 'enabled:hover:color-critical:fg-primary-bold enabled:hover:color-critical:bg-critical-bold enabled:hover:color-critical:outline-2 enabled:hover:color-critical:outline-critical-hover',\n 'enabled:focus-visible:color-critical:fg-primary-bold enabled:focus-visible:color-critical:bg-critical-muted enabled:focus-visible:color-critical:outline-2 enabled:focus-visible:color-critical:outline-critical-hover',\n 'enabled:pressed:color-critical:fg-critical-bold enabled:pressed:color-critical:bg-critical-pressed enabled:pressed:color-critical:outline-2 enabled:pressed:color-critical:outline-critical-pressed',\n\n // Critical - Selected\n 'enabled:selected:color-critical:fg-critical-bold enabled:selected:color-critical:bg-critical-muted enabled:selected:color-critical:outline-critical-muted',\n 'enabled:selected:hover:color-critical:fg-primary-bold enabled:selected:hover:color-critical:bg-critical-hover enabled:selected:hover:color-critical:outline-critical-hover',\n 'enabled:selected:focus-visible:color-critical:fg-primary-bold enabled:selected:focus-visible:color-critical:bg-critical-hover enabled:selected:focus-visible:color-critical:outline-critical-hover',\n 'enabled:selected:pressed:color-critical:fg-critical-pressed enabled:selected:pressed:color-critical:bg-critical-pressed enabled:selected:pressed:color-critical:outline-2 enabled:selected:pressed:color-critical:outline-critical-pressed',\n ],\n icon: [\n 'size-small:rounded-small size-xsmall:rounded-small size-large:p-xs size-medium:p-xs size-small:p-xxs size-xsmall:p-xxs',\n 'size-large:min-w-xxl size-large:max-w-xxl',\n 'size-medium:min-w-[28px] size-medium:max-w-[28px]',\n 'size-small:min-w-xl size-small:max-w-xl',\n 'size-xsmall:min-w-[20px] size-xsmall:max-w-[20px]',\n\n // Disabled\n 'disabled:fg-disabled disabled:bg-transparent',\n\n // Disabled - Selected\n 'disabled:selected:fg-disabled disabled:selected:bg-interactive-disabled',\n\n // Mono Muted\n 'enabled:color-mono-muted:fg-primary-muted',\n 'enabled:hover:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-muted:fg-pressed enabled:pressed:color-mono-muted:bg-interactive-muted-pressed',\n\n // Mono Muted-Selected\n 'enabled:selected:color-mono-muted:fg-primary-muted enabled:selected:color-mono-muted:bg-interactive-muted',\n 'enabled:selected:hover:color-mono-muted:fg-primary-bold enabled:selected:hover:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:selected:focus-visible:color-mono-muted:fg-primary-bold enabled:selected:focus-visible:color-mono-muted:bg-interactive-muted-hover',\n 'enabled:selected:pressed:color-mono-muted:fg-pressed enabled:selected:pressed:color-mono-muted:bg-interactive-muted-pressed',\n\n // Mono Bold\n 'enabled:color-mono-bold:fg-primary-bold',\n 'enabled:hover:color-mono-bold:bg-interactive-muted-hover',\n 'enabled:focus-visible:color-mono-bold:bg-interactive-muted-hover',\n 'enabled:pressed:color-mono-bold:fg-pressed enabled:pressed:color-mono-bold:bg-interactive-muted-pressed',\n\n // Mono Bold - Selected\n 'enabled:selected:color-mono-bold:fg-inverse-bold enabled:selected:color-mono-bold:bg-interactive-bold',\n 'enabled:selected:hover:color-mono-bold:fg-inverse-bold enabled:selected:hover:color-mono-bold:bg-interactive-bold-hover',\n 'enabled:selected:focus-visible:color-mono-bold:bg-interactive-bold-hover',\n 'enabled:selected:pressed:color-mono-bold:fg-pressed enabled:selected:pressed:color-mono-bold:bg-interactive-muted-pressed',\n\n // Accent\n 'enabled:color-accent:fg-primary-bold',\n 'enabled:hover:color-accent:fg-accent-primary-hover enabled:hover:color-accent:bg-accent-primary-muted',\n 'enabled:focus-visible:color-accent:fg-accent-primary-hover enabled:focus-visible:color-accent:bg-accent-primary-muted',\n 'enabled:pressed:color-accent:fg-accent-primary-pressed enabled:pressed:color-accent:bg-accent-primary-pressed',\n\n // Accent - Selected\n 'enabled:selected:color-accent:fg-accent-primary-hover enabled:selected:color-accent:bg-accent-primary-muted',\n 'enabled:selected:hover:color-accent:fg-a11y-on-accent enabled:selected:hover:color-accent:bg-accent-primary-hover',\n 'enabled:selected:focus-visible:color-accent:fg-a11y-on-accent enabled:selected:focus-visible:color-accent:bg-accent-primary-hover',\n 'enabled:selected:pressed:color-accent:fg-accent-primary-pressed enabled:selected:pressed:color-accent:bg-accent-primary-pressed',\n\n // Serious\n 'enabled:color-serious:fg-serious-bold',\n 'enabled:hover:color-serious:fg-serious-hover enabled:hover:color-serious:bg-serious-muted',\n 'enabled:focus-visible:color-serious:fg-serious-hover enabled:focus-visible:color-serious:bg-serious-muted',\n 'enabled:pressed:color-serious:fg-serious-pressed enabled:pressed:color-serious:bg-serious-pressed',\n\n // Serious - Selected\n 'enabled:selected:color-serious:fg-serious-bold enabled:selected:color-serious:bg-serious-muted',\n 'enabled:selected:hover:color-serious:fg-primary-bold enabled:selected:hover:color-serious:bg-serious-hover',\n 'enabled:selected:focus-visible:color-serious:fg-primary-bold enabled:selected:focus-visible:color-serious:bg-serious-hover',\n 'enabled:selected:pressed:color-serious:fg-serious-pressed enabled:selected:pressed:color-serious:bg-serious-pressed',\n\n // Critical\n 'enabled:color-critical:fg-critical-bold',\n 'enabled:hover:color-critical:fg-critical-hover enabled:hover:color-critical:bg-critical-muted',\n 'enabled:focus-visible:color-critical:fg-critical-hover enabled:focus-visible:color-critical:bg-critical-muted',\n 'enabled:pressed:color-critical:fg-critical-pressed enabled:pressed:color-critical:bg-critical-pressed',\n\n // Critical - Selected\n 'enabled:selected:color-critical:fg-critical-bold enabled:selected:color-critical:bg-critical-muted',\n 'enabled:selected:hover:color-critical:fg-a11y-on-accent enabled:selected:hover:color-critical:bg-critical-hover',\n 'enabled:selected:focus-visible:color-critical:fg-a11y-on-accent enabled:selected:focus-visible:color-critical:bg-critical-hover',\n 'enabled:selected:pressed:color-critical:fg-critical-pressed enabled:selected:pressed:color-critical:bg-critical-pressed',\n ],\n },\n },\n});\n"]}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { ButtonProps as ButtonProps$1, LinkProps, ToggleButtonProps as ToggleButtonProps$1 } from 'react-aria-components';
|
|
2
2
|
import { VariantProps } from 'tailwind-variants';
|
|
3
3
|
import { AriaAttributesWithRef } from '../../lib/types.js';
|
|
4
|
-
import { ButtonStyles } from './styles.js';
|
|
4
|
+
import { ButtonStyles, ToggleButtonStyles } from './styles.js';
|
|
5
5
|
import 'react';
|
|
6
6
|
import 'tailwind-merge';
|
|
7
7
|
|
|
8
|
-
type
|
|
8
|
+
type ButtonVariantProps = {
|
|
9
9
|
size?: 'large' | 'medium' | 'small' | 'xsmall';
|
|
10
|
-
color?: '
|
|
10
|
+
color?: 'mono-muted' | 'mono-bold' | 'accent' | 'serious' | 'critical';
|
|
11
11
|
};
|
|
12
|
+
type ButtonStyleVariants = VariantProps<typeof ButtonStyles> & ButtonVariantProps;
|
|
13
|
+
type ToggleButtonStyleVariants = VariantProps<typeof ToggleButtonStyles> & ButtonVariantProps;
|
|
12
14
|
type ButtonProps = ButtonProps$1 & ButtonStyleVariants & AriaAttributesWithRef<HTMLButtonElement>;
|
|
13
15
|
type LinkButtonProps = LinkProps & ButtonStyleVariants & AriaAttributesWithRef<HTMLAnchorElement>;
|
|
14
|
-
type ToggleButtonProps = ToggleButtonProps$1 &
|
|
16
|
+
type ToggleButtonProps = ToggleButtonProps$1 & ToggleButtonStyleVariants & AriaAttributesWithRef<HTMLButtonElement>;
|
|
15
17
|
|
|
16
|
-
export type { ButtonProps, ButtonStyleVariants, LinkButtonProps, ToggleButtonProps };
|
|
18
|
+
export type { ButtonProps, ButtonStyleVariants, LinkButtonProps, ToggleButtonProps, ToggleButtonStyleVariants };
|