@accelint/design-toolkit 3.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/components/accordion/styles.d.ts +1 -1
  2. package/dist/components/avatar/styles.d.ts +1 -1
  3. package/dist/components/badge/styles.d.ts +1 -1
  4. package/dist/components/button/styles.d.ts +3 -3
  5. package/dist/components/checkbox/styles.d.ts +1 -1
  6. package/dist/components/chip/styles.d.ts +4 -4
  7. package/dist/components/color-picker/styles.d.ts +1 -1
  8. package/dist/components/combobox-field/styles.d.ts +3 -3
  9. package/dist/components/date-field/index.d.ts +1 -3
  10. package/dist/components/date-field/index.js +1 -1
  11. package/dist/components/date-field/index.js.map +1 -1
  12. package/dist/components/date-field/styles.d.ts +41 -51
  13. package/dist/components/date-field/styles.js +1 -1
  14. package/dist/components/date-field/styles.js.map +1 -1
  15. package/dist/components/date-field/types.d.ts +12 -15
  16. package/dist/components/details-list/styles.d.ts +1 -1
  17. package/dist/components/dialog/index.d.ts +28 -38
  18. package/dist/components/dialog/index.js +1 -1
  19. package/dist/components/dialog/index.js.map +1 -1
  20. package/dist/components/dialog/styles.d.ts +60 -0
  21. package/dist/components/dialog/styles.js +2 -0
  22. package/dist/components/dialog/styles.js.map +1 -0
  23. package/dist/components/dialog/types.d.ts +14 -0
  24. package/dist/components/dialog/types.js +2 -0
  25. package/dist/components/dialog/types.js.map +1 -0
  26. package/dist/components/hero/styles.d.ts +1 -1
  27. package/dist/components/hotkey/styles.d.ts +1 -1
  28. package/dist/components/icon/styles.d.ts +1 -1
  29. package/dist/components/input/styles.d.ts +1 -1
  30. package/dist/components/label/styles.d.ts +1 -1
  31. package/dist/components/menu/styles.d.ts +1 -1
  32. package/dist/components/options/styles.d.ts +3 -3
  33. package/dist/components/options/types.d.ts +1 -1
  34. package/dist/components/popover/styles.d.ts +1 -1
  35. package/dist/components/radio/styles.d.ts +1 -1
  36. package/dist/components/search-field/styles.d.ts +1 -1
  37. package/dist/components/select-field/styles.d.ts +4 -4
  38. package/dist/components/skeleton/styles.d.ts +1 -1
  39. package/dist/components/slider/index.d.ts +4 -43
  40. package/dist/components/slider/index.js +1 -1
  41. package/dist/components/slider/index.js.map +1 -1
  42. package/dist/components/slider/styles.d.ts +84 -0
  43. package/dist/components/slider/styles.js +2 -0
  44. package/dist/components/slider/styles.js.map +1 -0
  45. package/dist/components/slider/types.d.ts +22 -0
  46. package/dist/components/slider/types.js +2 -0
  47. package/dist/components/slider/types.js.map +1 -0
  48. package/dist/components/switch/styles.d.ts +1 -1
  49. package/dist/components/text-area-field/styles.d.ts +4 -4
  50. package/dist/components/text-field/styles.d.ts +4 -4
  51. package/dist/components/tooltip/index.js +1 -1
  52. package/dist/components/tooltip/index.js.map +1 -1
  53. package/dist/components/tooltip/styles.d.ts +1 -1
  54. package/dist/index.css +3 -3
  55. package/dist/index.d.ts +9 -5
  56. package/dist/index.js +1 -1
  57. package/dist/lib/utils.d.ts +15 -5
  58. package/dist/lib/utils.js +1 -1
  59. package/dist/lib/utils.js.map +1 -1
  60. package/dist/metafile-esm.json +1 -1
  61. package/dist/styles.css +503 -141
  62. package/dist/tokens/index.js.map +1 -1
  63. package/dist/tokens/themes.css +12 -0
  64. package/dist/tokens/tokens.css +12 -0
  65. package/dist/variants/variants.css +13 -0
  66. package/package.json +14 -7
@@ -4,9 +4,9 @@ import * as tailwind_merge from 'tailwind-merge';
4
4
  declare const TextAreaStyles: tailwind_variants.TVReturnType<{
5
5
  [key: string]: {
6
6
  [key: string]: tailwind_merge.ClassNameValue | {
7
+ description?: tailwind_merge.ClassNameValue;
7
8
  input?: tailwind_merge.ClassNameValue;
8
9
  label?: tailwind_merge.ClassNameValue;
9
- description?: tailwind_merge.ClassNameValue;
10
10
  field?: tailwind_merge.ClassNameValue;
11
11
  error?: tailwind_merge.ClassNameValue;
12
12
  };
@@ -14,9 +14,9 @@ declare const TextAreaStyles: tailwind_variants.TVReturnType<{
14
14
  } | {
15
15
  [x: string]: {
16
16
  [x: string]: tailwind_merge.ClassNameValue | {
17
+ description?: tailwind_merge.ClassNameValue;
17
18
  input?: tailwind_merge.ClassNameValue;
18
19
  label?: tailwind_merge.ClassNameValue;
19
- description?: tailwind_merge.ClassNameValue;
20
20
  field?: tailwind_merge.ClassNameValue;
21
21
  error?: tailwind_merge.ClassNameValue;
22
22
  };
@@ -30,9 +30,9 @@ declare const TextAreaStyles: tailwind_variants.TVReturnType<{
30
30
  }, undefined, {
31
31
  [key: string]: {
32
32
  [key: string]: tailwind_merge.ClassNameValue | {
33
+ description?: tailwind_merge.ClassNameValue;
33
34
  input?: tailwind_merge.ClassNameValue;
34
35
  label?: tailwind_merge.ClassNameValue;
35
- description?: tailwind_merge.ClassNameValue;
36
36
  field?: tailwind_merge.ClassNameValue;
37
37
  error?: tailwind_merge.ClassNameValue;
38
38
  };
@@ -49,6 +49,6 @@ declare const TextAreaStyles: tailwind_variants.TVReturnType<{
49
49
  input: string[];
50
50
  description: string[];
51
51
  error: string;
52
- }, undefined, unknown, unknown, undefined>>;
52
+ }, undefined, unknown, unknown>>;
53
53
 
54
54
  export { TextAreaStyles };
@@ -4,9 +4,9 @@ import * as tailwind_merge from 'tailwind-merge';
4
4
  declare const TextFieldStyles: tailwind_variants.TVReturnType<{
5
5
  [key: string]: {
6
6
  [key: string]: tailwind_merge.ClassNameValue | {
7
+ description?: tailwind_merge.ClassNameValue;
7
8
  input?: tailwind_merge.ClassNameValue;
8
9
  label?: tailwind_merge.ClassNameValue;
9
- description?: tailwind_merge.ClassNameValue;
10
10
  field?: tailwind_merge.ClassNameValue;
11
11
  error?: tailwind_merge.ClassNameValue;
12
12
  };
@@ -14,9 +14,9 @@ declare const TextFieldStyles: tailwind_variants.TVReturnType<{
14
14
  } | {
15
15
  [x: string]: {
16
16
  [x: string]: tailwind_merge.ClassNameValue | {
17
+ description?: tailwind_merge.ClassNameValue;
17
18
  input?: tailwind_merge.ClassNameValue;
18
19
  label?: tailwind_merge.ClassNameValue;
19
- description?: tailwind_merge.ClassNameValue;
20
20
  field?: tailwind_merge.ClassNameValue;
21
21
  error?: tailwind_merge.ClassNameValue;
22
22
  };
@@ -30,9 +30,9 @@ declare const TextFieldStyles: tailwind_variants.TVReturnType<{
30
30
  }, undefined, {
31
31
  [key: string]: {
32
32
  [key: string]: tailwind_merge.ClassNameValue | {
33
+ description?: tailwind_merge.ClassNameValue;
33
34
  input?: tailwind_merge.ClassNameValue;
34
35
  label?: tailwind_merge.ClassNameValue;
35
- description?: tailwind_merge.ClassNameValue;
36
36
  field?: tailwind_merge.ClassNameValue;
37
37
  error?: tailwind_merge.ClassNameValue;
38
38
  };
@@ -49,6 +49,6 @@ declare const TextFieldStyles: tailwind_variants.TVReturnType<{
49
49
  input: string;
50
50
  description: string[];
51
51
  error: string;
52
- }, undefined, unknown, unknown, undefined>>;
52
+ }, undefined, unknown, unknown>>;
53
53
 
54
54
  export { TextFieldStyles };
@@ -1,2 +1,2 @@
1
- import {jsx}from'react/jsx-runtime';import {createContext}from'react';import'client-only';import {containsExactChildren}from'./../../lib/react.js';import {useContextProps,TooltipTrigger,Focusable,Tooltip,composeRenderProps}from'react-aria-components';import {TooltipStyles}from'./styles.js';const x=createContext(null);function r({ref:t,...o}){[o,t]=useContextProps(o,t??null,x);const{children:i,...e}=o;return containsExactChildren({children:i,componentName:r.displayName,restrictions:[[p,{min:1,max:1}],[l,{min:1,max:1}]]}),jsx(TooltipTrigger,{...e,children:i})}r.displayName="Tooltip";function p({children:t,...o}){return jsx(Focusable,{...o,children:t})}p.displayName="Tooltip.Trigger";function l({children:t,className:o,offset:i=5,placement:e="bottom",...T}){return jsx(Tooltip,{...T,className:composeRenderProps(o,s=>TooltipStyles({className:s})),offset:i,placement:e,children:t})}l.displayName="Tooltip.Body",r.Trigger=p,r.Body=l;export{r as Tooltip,x as TooltipContext};//# sourceMappingURL=index.js.map
1
+ import {jsx}from'react/jsx-runtime';import {createContext}from'react';import'client-only';import {containsExactChildren}from'./../../lib/react.js';import {useContextProps,TooltipTrigger,Focusable,Tooltip,composeRenderProps}from'react-aria-components';import {TooltipStyles}from'./styles.js';const x=createContext(null);function r({ref:t,...o}){[o,t]=useContextProps(o,t??null,x);const{children:i,delay:e=250,...p}=o;return containsExactChildren({children:i,componentName:r.displayName,restrictions:[[l,{min:1,max:1}],[n,{min:1,max:1}]]}),jsx(TooltipTrigger,{...p,delay:e,children:i})}r.displayName="Tooltip";function l({children:t,...o}){return jsx(Focusable,{...o,children:t})}l.displayName="Tooltip.Trigger";function n({children:t,className:o,offset:i=5,placement:e="bottom",...p}){return jsx(Tooltip,{...p,className:composeRenderProps(o,a=>TooltipStyles({className:a})),offset:i,placement:e,children:t})}n.displayName="Tooltip.Body",r.Trigger=l,r.Body=n;export{r as Tooltip,x as TooltipContext};//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/tooltip/index.tsx"],"names":["props","useContextProps","ref","TooltipContext","d","rest","m","Tooltip","jsx","AriaTooltipTrigger","n","g","children","u","TooltipTrigger","className","placement","c","y","f","offset","TooltipBody"],"mappings":"6TA2E0B,WAAc,CAAiB,CACvD,CAACA,GAAU,CAAA,CAAIC,CAAAA,GAAuBC,CAAAA,CAAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAMC,CAAc,CAAAC,eAEjE,CAAA,CAAA,CAAA,CAAA,EAAQ,IAAA,CAAA,CAAA,CAAA,CAAA,KAAU,CAAGC,QAErB,CAAA,CAAA,CAAA,GAAsB,CACpB,CAAA,CAAA,CAAA,CAAA,OACAC,qBAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAeC,aAAQ,CACvB,CAAA,CAAA,WAAc,CACZ,cAAgC,CAAE,CAAC,EACnC,GAAc,CAAE,CAAA,CAAA,GAAK,CAAG,IAAK,CAAE,CAAC,CAClC,CACF,GAEOC,CAAAA,CAACC,IAAoB,CAAA,CAAGJ,EAAO,CAAA,CAAA,CAAA,CAAAK,GAAA,CAAAC,cAAA,CAAA,CAAAC,GACxC,CACAL,SAAQ,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,+BAEc,CAAA,CAAA,CAAGP,QACrC,CAAA,CAAA,CAAOQ,IAAC,CAAW,CAAA,CAAA,OAAWE,GAAA,CAAAG,SAAA,CAAA,CAAAD,GAChC,CACAE,SAAe,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,WAAA,CAAA,2BAI3B,CAAA,CAAA,CAAA,QAAAC,CACA,CAAA,CAAA,SACA,CAAA,CAAA,CAAA,MAAA,CAAAC,EAAY,CAAA,CAAA,SACZ,CAAGhB,CACL,CAAA,QACE,CACEQ,IAAC,CACE,CAAA,CAAA,OACDE,GAAA,CAAAO,OAAA,CAAA,CAAA,GAA8BF,EAAYA,SACxB,CAAAG,kBAAA,CAAA,CAAA,CAAA,CAAA,EAAUC,aAAC,CAC7B,UACQC,CACR,WAAWJ,CAEV,CAAA,CAAA,SACH,CAEJ,CACAK,SAAY,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,WAAA,CAAA,eAGlB,CAAA,CAAA,OAAOA,CAAAA,CAAAA,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';\nimport { createContext } from 'react';\nimport 'client-only';\nimport { containsExactChildren } from '@/lib/react';\nimport {\n Tooltip as AriaTooltip,\n TooltipTrigger as AriaTooltipTrigger,\n type ContextValue,\n Focusable,\n composeRenderProps,\n useContextProps,\n} from 'react-aria-components';\nimport { TooltipStyles } from './styles';\nimport type {\n TooltipBodyProps,\n TooltipProps,\n TooltipTriggerProps,\n} from './types';\n\nexport const TooltipContext =\n createContext<ContextValue<TooltipProps, HTMLDivElement>>(null);\n\n/**\n * Tooltip - A contextual popup component for providing additional information\n *\n * Displays helpful information when users hover over or focus on an element.\n * Provides accessible tooltip functionality with proper positioning, keyboard\n * navigation, and screen reader support for enhanced user experience.\n *\n * @example\n * // Basic tooltip\n * <Tooltip>\n * <Tooltip.Trigger>\n * <Button>Hover me</Button>\n * </Tooltip.Trigger>\n * <Tooltip.Body>\n * This is helpful information\n * </Tooltip.Body>\n * </Tooltip>\n *\n * @example\n * // Tooltip with custom positioning\n * <Tooltip>\n * <Tooltip.Trigger>\n * <Button>Hover for info</Button>\n * </Tooltip.Trigger>\n * <Tooltip.Body placement=\"top\" offset={10}>\n * Positioned above with custom offset\n * </Tooltip.Body>\n * </Tooltip>\n *\n * @example\n * // Icon with tooltip\n * <Tooltip>\n * <Tooltip.Trigger>\n * <Button variant=\"icon\">\n * <Icon><Info /></Icon>\n * </Button>\n * </Tooltip.Trigger>\n * <Tooltip.Body>\n * Additional context for this action\n * </Tooltip.Body>\n * </Tooltip>\n */\nexport function Tooltip({ ref, ...props }: TooltipProps) {\n [props, ref] = useContextProps(props, ref ?? null, TooltipContext);\n\n const { children, ...rest } = props;\n\n containsExactChildren({\n children,\n componentName: Tooltip.displayName,\n restrictions: [\n [TooltipTrigger, { min: 1, max: 1 }],\n [TooltipBody, { min: 1, max: 1 }],\n ],\n });\n\n return <AriaTooltipTrigger {...rest}>{children}</AriaTooltipTrigger>;\n}\nTooltip.displayName = 'Tooltip';\n\nfunction TooltipTrigger({ children, ...props }: TooltipTriggerProps) {\n return <Focusable {...props}>{children}</Focusable>;\n}\nTooltipTrigger.displayName = 'Tooltip.Trigger';\n\nfunction TooltipBody({\n children,\n className,\n offset = 5,\n placement = 'bottom',\n ...props\n}: TooltipBodyProps) {\n return (\n <AriaTooltip\n {...props}\n className={composeRenderProps(className, (className) =>\n TooltipStyles({ className }),\n )}\n offset={offset}\n placement={placement}\n >\n {children}\n </AriaTooltip>\n );\n}\nTooltipBody.displayName = 'Tooltip.Body';\n\nTooltip.Trigger = TooltipTrigger;\nTooltip.Body = TooltipBody;\n"]}
1
+ {"version":3,"sources":["../../../src/components/tooltip/index.tsx"],"names":["s","props","useContextProps","ref","TooltipContext","m","Tooltip","jsx","AriaTooltipTrigger","rest","T","delay","Focusable","children","TooltipTrigger","className","placement","c","d","f","offset","TooltipBody"],"mappings":"mSA2EO,MAAA,CAAA,CAAAA,aAAA,CAAA,IAAmB,EAAA,UAA+B,CACvD,CAACC,GAAU,EAAIC,CAAAA,GAAuBC,GAAO,CAAA,CAAA,CAAA,CAAA,CAAMC,CAAc,gBAEjE,CAAA,CAAA,CAAA,CAAA,EAAQ,aAAU,CAAA,QAAQ,CAAK,CAAA,CAAA,KAAYH,CAE3C,SAAsB,CACpB,CAAA,CAAA,CAAA,CAAA,OACAI,kCAAeC,aAAQ,CACvB,aAAc,CACZ,YAA2B,CAAA,CAAK,CAAE,CAAC,CAAA,CACnC,GAAc,CAAE,CAAA,CAAA,IAAQ,CAAA,CAAA,CAAA,CAAK,CAAE,CAAC,CAClC,CACF,GAGEC,EAACC,CAAAA,KAAuBC,CAAAA,CAAM,CAAA,CAAA,CAAA,CAAAC,GAAA,CAAOC,eAClC,CAAA,GAAA,CAAA,CAAA,KACH,CAEJ,CACAL,CAAAA,aAAsB,CAAA,CAAA,WAEtB,CAAA,SAA0B,CAAA,SAAU,CAAA,CAAA,CAAGL,WAC9BM,GAACK,CAAA,CAAW,CAAA,CAAA,sBAAWC,GAChC,CACAC,CAAAA,QAAe,CAAA,CAAA,CAAA,CAAA,CAAc,+BAG3B,CAAA,SACA,CAAA,CAAA,CAAA,QAAAC,CACA,WACA,UAAAC,CAAAA,CAAY,CAAA,CAAA,UACTf,CACL,CAAA,QACE,CACEM,IAAC,CACE,CAAA,CAAA,OACDG,GAAA,CAAAO,OAAA,CAAA,CAAA,GAA8BF,EAAYA,SACxB,CAAAG,kBAAA,CAAA,CAAA,CAAA,CAAA,EAAUC,aAAC,CAC7B,UACQC,CACR,WAAWJ,CAEV,CAAA,CAAA,SACH,CAEJ,CACAK,SAAY,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,WAAA,CAAA,eAGlB,CAAA,CAAA,OAAOA,CAAAA,CAAAA,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';\nimport { createContext } from 'react';\nimport 'client-only';\nimport { containsExactChildren } from '@/lib/react';\nimport {\n Tooltip as AriaTooltip,\n TooltipTrigger as AriaTooltipTrigger,\n type ContextValue,\n Focusable,\n composeRenderProps,\n useContextProps,\n} from 'react-aria-components';\nimport { TooltipStyles } from './styles';\nimport type {\n TooltipBodyProps,\n TooltipProps,\n TooltipTriggerProps,\n} from './types';\n\nexport const TooltipContext =\n createContext<ContextValue<TooltipProps, HTMLDivElement>>(null);\n\n/**\n * Tooltip - A contextual popup component for providing additional information\n *\n * Displays helpful information when users hover over or focus on an element.\n * Provides accessible tooltip functionality with proper positioning, keyboard\n * navigation, and screen reader support for enhanced user experience.\n *\n * @example\n * // Basic tooltip\n * <Tooltip>\n * <Tooltip.Trigger>\n * <Button>Hover me</Button>\n * </Tooltip.Trigger>\n * <Tooltip.Body>\n * This is helpful information\n * </Tooltip.Body>\n * </Tooltip>\n *\n * @example\n * // Tooltip with custom positioning\n * <Tooltip>\n * <Tooltip.Trigger>\n * <Button>Hover for info</Button>\n * </Tooltip.Trigger>\n * <Tooltip.Body placement=\"top\" offset={10}>\n * Positioned above with custom offset\n * </Tooltip.Body>\n * </Tooltip>\n *\n * @example\n * // Icon with tooltip\n * <Tooltip>\n * <Tooltip.Trigger>\n * <Button variant=\"icon\">\n * <Icon><Info /></Icon>\n * </Button>\n * </Tooltip.Trigger>\n * <Tooltip.Body>\n * Additional context for this action\n * </Tooltip.Body>\n * </Tooltip>\n */\nexport function Tooltip({ ref, ...props }: TooltipProps) {\n [props, ref] = useContextProps(props, ref ?? null, TooltipContext);\n\n const { children, delay = 250, ...rest } = props;\n\n containsExactChildren({\n children,\n componentName: Tooltip.displayName,\n restrictions: [\n [TooltipTrigger, { min: 1, max: 1 }],\n [TooltipBody, { min: 1, max: 1 }],\n ],\n });\n\n return (\n <AriaTooltipTrigger {...rest} delay={delay}>\n {children}\n </AriaTooltipTrigger>\n );\n}\nTooltip.displayName = 'Tooltip';\n\nfunction TooltipTrigger({ children, ...props }: TooltipTriggerProps) {\n return <Focusable {...props}>{children}</Focusable>;\n}\nTooltipTrigger.displayName = 'Tooltip.Trigger';\n\nfunction TooltipBody({\n children,\n className,\n offset = 5,\n placement = 'bottom',\n ...props\n}: TooltipBodyProps) {\n return (\n <AriaTooltip\n {...props}\n className={composeRenderProps(className, (className) =>\n TooltipStyles({ className }),\n )}\n offset={offset}\n placement={placement}\n >\n {children}\n </AriaTooltip>\n );\n}\nTooltipBody.displayName = 'Tooltip.Body';\n\nTooltip.Trigger = TooltipTrigger;\nTooltip.Body = TooltipBody;\n"]}
@@ -1,5 +1,5 @@
1
1
  import * as tailwind_variants from 'tailwind-variants';
2
2
 
3
- declare const TooltipStyles: tailwind_variants.TVReturnType<{} | {} | {}, undefined, "fg-default-light flex max-w-[160px] items-center justify-center break-words rounded-small bg-surface-overlay px-s py-xs text-center text-body-xs shadow-elevation-overlay", {} | {}, undefined, tailwind_variants.TVReturnType<unknown, undefined, "fg-default-light flex max-w-[160px] items-center justify-center break-words rounded-small bg-surface-overlay px-s py-xs text-center text-body-xs shadow-elevation-overlay", unknown, unknown, undefined>>;
3
+ declare const TooltipStyles: tailwind_variants.TVReturnType<{} | {} | {}, undefined, "fg-default-light flex max-w-[160px] items-center justify-center break-words rounded-small bg-surface-overlay px-s py-xs text-center text-body-xs shadow-elevation-overlay", {} | {}, undefined, tailwind_variants.TVReturnType<unknown, undefined, "fg-default-light flex max-w-[160px] items-center justify-center break-words rounded-small bg-surface-overlay px-s py-xs text-center text-body-xs shadow-elevation-overlay", unknown, unknown>>;
4
4
 
5
5
  export { TooltipStyles };
package/dist/index.css CHANGED
@@ -182,16 +182,16 @@ body {
182
182
  /*
183
183
  * Scrollbars
184
184
  */
185
- *::-webkit-scrollbar {
185
+ ::-webkit-scrollbar {
186
186
  width: var(--spacing-l);
187
187
  height: var(--spacing-l);
188
188
  }
189
189
 
190
- *::-webkit-scrollbar-track {
190
+ ::-webkit-scrollbar-track {
191
191
  background: var(--color-interactive);
192
192
  }
193
193
 
194
- *::-webkit-scrollbar-thumb{
194
+ ::-webkit-scrollbar-thumb{
195
195
  background-color: var(--color-interactive-hover-light);
196
196
  border-radius: var(--radius-large);
197
197
  border: 5px solid transparent;
package/dist/index.d.ts CHANGED
@@ -29,12 +29,14 @@ export { ComboBoxField, ComboBoxFieldContext } from './components/combobox-field
29
29
  export { ComboBoxStyles } from './components/combobox-field/styles.js';
30
30
  export { ComboBoxFieldProps } from './components/combobox-field/types.js';
31
31
  export { DateField } from './components/date-field/index.js';
32
- export { DateFieldStyles, DateFieldStylesDefault } from './components/date-field/styles.js';
33
- export { DateFieldProps, DateInputProps } from './components/date-field/types.js';
32
+ export { DateFieldStyles, DateFieldStylesDefaults } from './components/date-field/styles.js';
33
+ export { DateFieldProps } from './components/date-field/types.js';
34
34
  export { DetailsList, DetailsListContext } from './components/details-list/index.js';
35
35
  export { DetailsListStyles, DetailsListStylesDefaults } from './components/details-list/styles.js';
36
36
  export { DetailsListLabelProps, DetailsListProps, DetailsListValueProps } from './components/details-list/types.js';
37
- export { Dialog, DialogProps } from './components/dialog/index.js';
37
+ export { Dialog, DialogContext } from './components/dialog/index.js';
38
+ export { DialogStyles } from './components/dialog/styles.js';
39
+ export { DialogProps } from './components/dialog/types.js';
38
40
  export { DrawerEventNamespace, DrawerEventTypes } from './components/drawer/events.js';
39
41
  export { Drawer, DrawerContext, DrawerEventHandlers } from './components/drawer/index.js';
40
42
  export { DrawerMenuStyles, DrawerMenuStylesDefaults, DrawerStyles, DrawerTitleStyles, DrawerTitleStylesDefaults } from './components/drawer/styles.js';
@@ -77,7 +79,9 @@ export { SelectFieldProps } from './components/select-field/types.js';
77
79
  export { Skeleton } from './components/skeleton/index.js';
78
80
  export { SkeletonStyles, SkeletonStylesDefaults } from './components/skeleton/styles.js';
79
81
  export { SkeletonProps, SkeletonStyleVariants } from './components/skeleton/types.js';
80
- export { RangeSlider, RangeSliderProps, Slider, SliderProps } from './components/slider/index.js';
82
+ export { Slider } from './components/slider/index.js';
83
+ export { SliderStyles } from './components/slider/styles.js';
84
+ export { SliderProps } from './components/slider/types.js';
81
85
  export { Switch, SwitchContext } from './components/switch/index.js';
82
86
  export { SwitchStyles } from './components/switch/styles.js';
83
87
  export { SwitchProps } from './components/switch/types.js';
@@ -96,7 +100,7 @@ export { ViewStack, ViewStackContext, ViewStackEventHandlers } from './component
96
100
  export { ViewStackBackEvent, ViewStackClearEvent, ViewStackContextValue, ViewStackEvent, ViewStackProps, ViewStackPushEvent, ViewStackResetEvent, ViewStackTriggerProps, ViewStackViewProps } from './components/view-stack/types.js';
97
101
  export { containsExactChildren, expectsIconWrapper } from './lib/react.js';
98
102
  export { AriaAttributes, AriaAttributesWithRef, ChildrenRenderProps, ClassNameRenderProps, ProviderProps, RenderProps, RenderPropsChildren, RenderPropsClassName, RenderPropsStyle, SlottedValue, StylePropRenderProps, StyleRenderProps } from './lib/types.js';
99
- export { cn, isSlottedContextValue, tv, twMerge } from './lib/utils.js';
103
+ export { cn, isSlottedContextValue, mergeVariants, tv, twMerge } from './lib/utils.js';
100
104
  export { RGBAColor, colorAdvisory, colorAdvisoryBold, colorAdvisoryHover, colorAdvisorySubtle, colorClassificationConfidential, colorClassificationCui, colorClassificationMissing, colorClassificationSecret, colorClassificationTopSecret, colorClassificationTsSci, colorClassificationUnclass, colorCritical, colorCriticalBold, colorCriticalHover, colorCriticalSubtle, colorDefaultDark, colorDefaultLight, colorDisabled, colorHighlight, colorHighlightBold, colorHighlightHover, colorHighlightSubtle, colorInfo, colorInfoBold, colorInfoHover, colorInfoSubtle, colorInteractive, colorInteractiveDefault, colorInteractiveDisabled, colorInteractiveHover, colorInteractiveHoverDark, colorInteractiveHoverLight, colorInverseDark, colorInverseLight, colorNormal, colorNormalBold, colorNormalHover, colorNormalSubtle, colorSerious, colorSeriousBold, colorSeriousHover, colorSeriousSubtle, colorStaticDark, colorStaticLight, colorSurfaceDefault, colorSurfaceOverlay, colorSurfaceRaised, colorTransparentDark, colorTransparentLight, fontDisplay, fontPrimary, iconSizeL, iconSizeM, iconSizeS, iconSizeXs, radiusLarge, radiusMedium, radiusNone, radiusRound, radiusSmall, shadowElevationDefault, shadowElevationOverlay, shadowElevationRaised, spacing0, spacingL, spacingM, spacingNone, spacingOversized, spacingS, spacingXl, spacingXs, spacingXxl, spacingXxs, typographyBodyLHeight, typographyBodyLSize, typographyBodyLSpacing, typographyBodyMHeight, typographyBodyMSize, typographyBodyMSpacing, typographyBodySHeight, typographyBodySSize, typographyBodySSpacing, typographyBodyXsHeight, typographyBodyXsSize, typographyBodyXsSpacing, typographyBodyXxsHeight, typographyBodyXxsSize, typographyBodyXxsSpacing, typographyButtonLHeight, typographyButtonLSize, typographyButtonLSpacing, typographyButtonMHeight, typographyButtonMSize, typographyButtonMSpacing, typographyButtonSHeight, typographyButtonSSize, typographyButtonSSpacing, typographyButtonXsHeight, typographyButtonXsSize, typographyButtonXsSpacing, typographyHeaderLHeight, typographyHeaderLSize, typographyHeaderLSpacing, typographyHeaderMHeight, typographyHeaderMSize, typographyHeaderMSpacing, typographyHeaderSHeight, typographyHeaderSSize, typographyHeaderSSpacing, typographyHeaderXlHeight, typographyHeaderXlSize, typographyHeaderXlSpacing, typographyHeaderXsHeight, typographyHeaderXsSize, typographyHeaderXsSpacing, typographyHeaderXxlHeight, typographyHeaderXxlSize, typographyHeaderXxlSpacing } from './tokens/index.js';
101
105
  import 'react/jsx-runtime';
102
106
  import 'react';
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export{Accordion,AccordionContext}from'./components/accordion/index.js';export{AccordionStyles,AccordionStylesDefaults}from'./components/accordion/styles.js';export{Avatar,AvatarContext}from'./components/avatar/index.js';export{AvatarStyles}from'./components/avatar/styles.js';export{Badge,BadgeContext}from'./components/badge/index.js';export{BadgeStyles,BadgeStylesDefaults}from'./components/badge/styles.js';export{Button,ButtonContext,LinkButton,LinkButtonContext,ToggleButton,ToggleButtonContext}from'./components/button/index.js';export{ButtonStyles,ButtonStylesDefaults,LinkButtonStyles,ToggleButtonStyles}from'./components/button/styles.js';export{Checkbox,CheckboxContext,CheckboxGroupContext}from'./components/checkbox/index.js';export{CheckboxStyles}from'./components/checkbox/styles.js';export{Chip,ChipContext}from'./components/chip/index.js';export{BaseChipStyles,ChipStyles,ChipStylesDefaults,DeletableChipStyles,SelectableChipStyles}from'./components/chip/styles.js';export{ClassificationBadge,ClassificationBadgeContext}from'./components/classification-badge/index.js';export{ClassificationBadgeStyles,ClassificationBadgeStylesDefaults}from'./components/classification-badge/styles.js';export{ClassificationBanner,ClassificationBannerContext}from'./components/classification-banner/index.js';export{ClassificationBannerStyles,ClassificationBannerStylesDefaults}from'./components/classification-banner/styles.js';export{ColorPicker}from'./components/color-picker/index.js';export{ColorPickerStyles}from'./components/color-picker/styles.js';export{ComboBoxField,ComboBoxFieldContext}from'./components/combobox-field/index.js';export{ComboBoxStyles}from'./components/combobox-field/styles.js';export{DateField}from'./components/date-field/index.js';export{DateFieldStyles,DateFieldStylesDefault}from'./components/date-field/styles.js';export{DetailsList,DetailsListContext}from'./components/details-list/index.js';export{DetailsListStyles,DetailsListStylesDefaults}from'./components/details-list/styles.js';export{Dialog}from'./components/dialog/index.js';export{DrawerEventNamespace,DrawerEventTypes}from'./components/drawer/events.js';export{Drawer,DrawerContext,DrawerEventHandlers}from'./components/drawer/index.js';export{DrawerMenuStyles,DrawerMenuStylesDefaults,DrawerStyles,DrawerTitleStyles,DrawerTitleStylesDefaults}from'./components/drawer/styles.js';export{Hero,HeroContext}from'./components/hero/index.js';export{HeroStyles}from'./components/hero/styles.js';export{Hotkey,HotkeyContext}from'./components/hotkey/index.js';export{HotkeyStyles,HotkeyStylesDefaults}from'./components/hotkey/styles.js';export{Icon,IconContext}from'./components/icon/index.js';export{IconStyles}from'./components/icon/styles.js';export{Input,InputContext}from'./components/input/index.js';export{InputStyles,InputStylesDefaults}from'./components/input/styles.js';export{Label,LabelContext}from'./components/label/index.js';export{LabelStyles}from'./components/label/styles.js';export{Menu,MenuContext}from'./components/menu/index.js';export{MenuStyles,MenuStylesDefaults}from'./components/menu/styles.js';export{Options,OptionsContext}from'./components/options/index.js';export{OptionsStyles}from'./components/options/styles.js';export{Popover}from'./components/popover/index.js';export{PopoverStyles}from'./components/popover/styles.js';export{QueryBuilder}from'./components/query-builder/index.js';export{Radio,RadioContext}from'./components/radio/index.js';export{RadioStyles}from'./components/radio/styles.js';export{SearchField,SearchFieldContext}from'./components/search-field/index.js';export{SearchFieldStyles,SearchFieldStylesDefaults}from'./components/search-field/styles.js';export{SelectField,SelectFieldContext}from'./components/select-field/index.js';export{SelectFieldStyles}from'./components/select-field/styles.js';export{Skeleton}from'./components/skeleton/index.js';export{SkeletonStyles,SkeletonStylesDefaults}from'./components/skeleton/styles.js';export{RangeSlider,Slider}from'./components/slider/index.js';export{Switch,SwitchContext}from'./components/switch/index.js';export{SwitchStyles}from'./components/switch/styles.js';export{Tabs}from'./components/tabs/index.js';export{TextAreaField,TextAreaFieldContext}from'./components/text-area-field/index.js';export{TextAreaStyles}from'./components/text-area-field/styles.js';export{TextField,TextFieldContext}from'./components/text-field/index.js';export{TextFieldStyles}from'./components/text-field/styles.js';export{Tooltip,TooltipContext}from'./components/tooltip/index.js';export{TooltipStyles}from'./components/tooltip/styles.js';export{ViewStackEventNamespace,ViewStackEventTypes}from'./components/view-stack/events.js';export{ViewStack,ViewStackContext,ViewStackEventHandlers}from'./components/view-stack/index.js';export{containsExactChildren,expectsIconWrapper}from'./lib/react.js';export{cn,isSlottedContextValue,tv,twMerge}from'./lib/utils.js';export{colorAdvisory,colorAdvisoryBold,colorAdvisoryHover,colorAdvisorySubtle,colorClassificationConfidential,colorClassificationCui,colorClassificationMissing,colorClassificationSecret,colorClassificationTopSecret,colorClassificationTsSci,colorClassificationUnclass,colorCritical,colorCriticalBold,colorCriticalHover,colorCriticalSubtle,colorDefaultDark,colorDefaultLight,colorDisabled,colorHighlight,colorHighlightBold,colorHighlightHover,colorHighlightSubtle,colorInfo,colorInfoBold,colorInfoHover,colorInfoSubtle,colorInteractive,colorInteractiveDefault,colorInteractiveDisabled,colorInteractiveHover,colorInteractiveHoverDark,colorInteractiveHoverLight,colorInverseDark,colorInverseLight,colorNormal,colorNormalBold,colorNormalHover,colorNormalSubtle,colorSerious,colorSeriousBold,colorSeriousHover,colorSeriousSubtle,colorStaticDark,colorStaticLight,colorSurfaceDefault,colorSurfaceOverlay,colorSurfaceRaised,colorTransparentDark,colorTransparentLight,fontDisplay,fontPrimary,iconSizeL,iconSizeM,iconSizeS,iconSizeXs,radiusLarge,radiusMedium,radiusNone,radiusRound,radiusSmall,shadowElevationDefault,shadowElevationOverlay,shadowElevationRaised,spacing0,spacingL,spacingM,spacingNone,spacingOversized,spacingS,spacingXl,spacingXs,spacingXxl,spacingXxs,typographyBodyLHeight,typographyBodyLSize,typographyBodyLSpacing,typographyBodyMHeight,typographyBodyMSize,typographyBodyMSpacing,typographyBodySHeight,typographyBodySSize,typographyBodySSpacing,typographyBodyXsHeight,typographyBodyXsSize,typographyBodyXsSpacing,typographyBodyXxsHeight,typographyBodyXxsSize,typographyBodyXxsSpacing,typographyButtonLHeight,typographyButtonLSize,typographyButtonLSpacing,typographyButtonMHeight,typographyButtonMSize,typographyButtonMSpacing,typographyButtonSHeight,typographyButtonSSize,typographyButtonSSpacing,typographyButtonXsHeight,typographyButtonXsSize,typographyButtonXsSpacing,typographyHeaderLHeight,typographyHeaderLSize,typographyHeaderLSpacing,typographyHeaderMHeight,typographyHeaderMSize,typographyHeaderMSpacing,typographyHeaderSHeight,typographyHeaderSSize,typographyHeaderSSpacing,typographyHeaderXlHeight,typographyHeaderXlSize,typographyHeaderXlSpacing,typographyHeaderXsHeight,typographyHeaderXsSize,typographyHeaderXsSpacing,typographyHeaderXxlHeight,typographyHeaderXxlSize,typographyHeaderXxlSpacing}from'./tokens/index.js';//# sourceMappingURL=index.js.map
1
+ export{Accordion,AccordionContext}from'./components/accordion/index.js';export{AccordionStyles,AccordionStylesDefaults}from'./components/accordion/styles.js';export{Avatar,AvatarContext}from'./components/avatar/index.js';export{AvatarStyles}from'./components/avatar/styles.js';export{Badge,BadgeContext}from'./components/badge/index.js';export{BadgeStyles,BadgeStylesDefaults}from'./components/badge/styles.js';export{Button,ButtonContext,LinkButton,LinkButtonContext,ToggleButton,ToggleButtonContext}from'./components/button/index.js';export{ButtonStyles,ButtonStylesDefaults,LinkButtonStyles,ToggleButtonStyles}from'./components/button/styles.js';export{Checkbox,CheckboxContext,CheckboxGroupContext}from'./components/checkbox/index.js';export{CheckboxStyles}from'./components/checkbox/styles.js';export{Chip,ChipContext}from'./components/chip/index.js';export{BaseChipStyles,ChipStyles,ChipStylesDefaults,DeletableChipStyles,SelectableChipStyles}from'./components/chip/styles.js';export{ClassificationBadge,ClassificationBadgeContext}from'./components/classification-badge/index.js';export{ClassificationBadgeStyles,ClassificationBadgeStylesDefaults}from'./components/classification-badge/styles.js';export{ClassificationBanner,ClassificationBannerContext}from'./components/classification-banner/index.js';export{ClassificationBannerStyles,ClassificationBannerStylesDefaults}from'./components/classification-banner/styles.js';export{ColorPicker}from'./components/color-picker/index.js';export{ColorPickerStyles}from'./components/color-picker/styles.js';export{ComboBoxField,ComboBoxFieldContext}from'./components/combobox-field/index.js';export{ComboBoxStyles}from'./components/combobox-field/styles.js';export{DateField}from'./components/date-field/index.js';export{DateFieldStyles,DateFieldStylesDefaults}from'./components/date-field/styles.js';export{DetailsList,DetailsListContext}from'./components/details-list/index.js';export{DetailsListStyles,DetailsListStylesDefaults}from'./components/details-list/styles.js';export{Dialog,DialogContext}from'./components/dialog/index.js';export{DialogStyles}from'./components/dialog/styles.js';export{DrawerEventNamespace,DrawerEventTypes}from'./components/drawer/events.js';export{Drawer,DrawerContext,DrawerEventHandlers}from'./components/drawer/index.js';export{DrawerMenuStyles,DrawerMenuStylesDefaults,DrawerStyles,DrawerTitleStyles,DrawerTitleStylesDefaults}from'./components/drawer/styles.js';export{Hero,HeroContext}from'./components/hero/index.js';export{HeroStyles}from'./components/hero/styles.js';export{Hotkey,HotkeyContext}from'./components/hotkey/index.js';export{HotkeyStyles,HotkeyStylesDefaults}from'./components/hotkey/styles.js';export{Icon,IconContext}from'./components/icon/index.js';export{IconStyles}from'./components/icon/styles.js';export{Input,InputContext}from'./components/input/index.js';export{InputStyles,InputStylesDefaults}from'./components/input/styles.js';export{Label,LabelContext}from'./components/label/index.js';export{LabelStyles}from'./components/label/styles.js';export{Menu,MenuContext}from'./components/menu/index.js';export{MenuStyles,MenuStylesDefaults}from'./components/menu/styles.js';export{Options,OptionsContext}from'./components/options/index.js';export{OptionsStyles}from'./components/options/styles.js';export{Popover}from'./components/popover/index.js';export{PopoverStyles}from'./components/popover/styles.js';export{QueryBuilder}from'./components/query-builder/index.js';export{Radio,RadioContext}from'./components/radio/index.js';export{RadioStyles}from'./components/radio/styles.js';export{SearchField,SearchFieldContext}from'./components/search-field/index.js';export{SearchFieldStyles,SearchFieldStylesDefaults}from'./components/search-field/styles.js';export{SelectField,SelectFieldContext}from'./components/select-field/index.js';export{SelectFieldStyles}from'./components/select-field/styles.js';export{Skeleton}from'./components/skeleton/index.js';export{SkeletonStyles,SkeletonStylesDefaults}from'./components/skeleton/styles.js';export{Slider}from'./components/slider/index.js';export{SliderStyles}from'./components/slider/styles.js';export{Switch,SwitchContext}from'./components/switch/index.js';export{SwitchStyles}from'./components/switch/styles.js';export{Tabs}from'./components/tabs/index.js';export{TextAreaField,TextAreaFieldContext}from'./components/text-area-field/index.js';export{TextAreaStyles}from'./components/text-area-field/styles.js';export{TextField,TextFieldContext}from'./components/text-field/index.js';export{TextFieldStyles}from'./components/text-field/styles.js';export{Tooltip,TooltipContext}from'./components/tooltip/index.js';export{TooltipStyles}from'./components/tooltip/styles.js';export{ViewStackEventNamespace,ViewStackEventTypes}from'./components/view-stack/events.js';export{ViewStack,ViewStackContext,ViewStackEventHandlers}from'./components/view-stack/index.js';export{containsExactChildren,expectsIconWrapper}from'./lib/react.js';export{cn,isSlottedContextValue,mergeVariants,tv,twMerge}from'./lib/utils.js';export{colorAdvisory,colorAdvisoryBold,colorAdvisoryHover,colorAdvisorySubtle,colorClassificationConfidential,colorClassificationCui,colorClassificationMissing,colorClassificationSecret,colorClassificationTopSecret,colorClassificationTsSci,colorClassificationUnclass,colorCritical,colorCriticalBold,colorCriticalHover,colorCriticalSubtle,colorDefaultDark,colorDefaultLight,colorDisabled,colorHighlight,colorHighlightBold,colorHighlightHover,colorHighlightSubtle,colorInfo,colorInfoBold,colorInfoHover,colorInfoSubtle,colorInteractive,colorInteractiveDefault,colorInteractiveDisabled,colorInteractiveHover,colorInteractiveHoverDark,colorInteractiveHoverLight,colorInverseDark,colorInverseLight,colorNormal,colorNormalBold,colorNormalHover,colorNormalSubtle,colorSerious,colorSeriousBold,colorSeriousHover,colorSeriousSubtle,colorStaticDark,colorStaticLight,colorSurfaceDefault,colorSurfaceOverlay,colorSurfaceRaised,colorTransparentDark,colorTransparentLight,fontDisplay,fontPrimary,iconSizeL,iconSizeM,iconSizeS,iconSizeXs,radiusLarge,radiusMedium,radiusNone,radiusRound,radiusSmall,shadowElevationDefault,shadowElevationOverlay,shadowElevationRaised,spacing0,spacingL,spacingM,spacingNone,spacingOversized,spacingS,spacingXl,spacingXs,spacingXxl,spacingXxs,typographyBodyLHeight,typographyBodyLSize,typographyBodyLSpacing,typographyBodyMHeight,typographyBodyMSize,typographyBodyMSpacing,typographyBodySHeight,typographyBodySSize,typographyBodySSpacing,typographyBodyXsHeight,typographyBodyXsSize,typographyBodyXsSpacing,typographyBodyXxsHeight,typographyBodyXxsSize,typographyBodyXxsSpacing,typographyButtonLHeight,typographyButtonLSize,typographyButtonLSpacing,typographyButtonMHeight,typographyButtonMSize,typographyButtonMSpacing,typographyButtonSHeight,typographyButtonSSize,typographyButtonSSpacing,typographyButtonXsHeight,typographyButtonXsSize,typographyButtonXsSpacing,typographyHeaderLHeight,typographyHeaderLSize,typographyHeaderLSpacing,typographyHeaderMHeight,typographyHeaderMSize,typographyHeaderMSpacing,typographyHeaderSHeight,typographyHeaderSSize,typographyHeaderSSpacing,typographyHeaderXlHeight,typographyHeaderXlSize,typographyHeaderXlSpacing,typographyHeaderXsHeight,typographyHeaderXsSize,typographyHeaderXsSpacing,typographyHeaderXxlHeight,typographyHeaderXxlSize,typographyHeaderXxlSpacing}from'./tokens/index.js';//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
@@ -1,12 +1,22 @@
1
- import * as tailwind_variants from 'tailwind-variants';
2
- import * as tailwind_merge from 'tailwind-merge';
3
1
  import { ClassValue } from 'clsx';
4
2
  import { ForwardedRef } from 'react';
5
3
  import { ContextValue } from 'react-aria-components';
4
+ import { ClassNameValue } from 'tailwind-merge';
5
+ import { TVVariants, TVCompoundVariants, TVDefaultVariants, TVReturnType, TVCompoundSlots } from 'tailwind-variants';
6
6
 
7
- declare const twMerge: (...classLists: tailwind_merge.ClassNameValue[]) => string;
7
+ declare const twMerge: (...classLists: ClassNameValue[]) => string;
8
8
  declare function cn(...inputs: ClassValue[]): string;
9
- declare const tv: tailwind_variants.CreateTV;
9
+ declare function mergeVariants(className: string): string;
10
+ type TVSlots = Record<string, ClassNameValue> | undefined;
11
+ declare function tv<V extends TVVariants<S, B, EV>, CV extends TVCompoundVariants<V, S, B, EV, ES>, DV extends TVDefaultVariants<V, S, EV, ES>, B extends ClassNameValue = undefined, S extends TVSlots = undefined, E extends TVReturnType = TVReturnType<V, S, B, EV extends undefined ? object : EV, ES extends undefined ? object : ES>, EV extends TVVariants<ES, B, E['variants'], ES> = E['variants'], ES extends TVSlots = E['slots'] extends TVSlots ? E['slots'] : undefined>(options: {
12
+ extend?: E;
13
+ base?: B;
14
+ slots?: S;
15
+ variants?: V;
16
+ compoundVariants?: CV;
17
+ compoundSlots?: TVCompoundSlots<V, S, B>;
18
+ defaultVariants?: DV;
19
+ }): TVReturnType<V, S, B, EV, ES, E>;
10
20
  type WithRef<T, E> = T & {
11
21
  ref?: ForwardedRef<E>;
12
22
  };
@@ -18,4 +28,4 @@ interface SlottedValue<T> {
18
28
  */
19
29
  declare function isSlottedContextValue<T, E>(context: ContextValue<T, E>): context is SlottedValue<WithRef<T, E>>;
20
30
 
21
- export { cn, isSlottedContextValue, tv, twMerge };
31
+ export { cn, isSlottedContextValue, mergeVariants, tv, twMerge };
package/dist/lib/utils.js CHANGED
@@ -1,2 +1,2 @@
1
- import {clsx}from'clsx';import {extendTailwindMerge,validators}from'tailwind-merge';import {createTV}from'tailwind-variants';const r=extendTailwindMerge({extend:{classGroups:{icon:[{icon:["",validators.isAny]}],fg:[{fg:["",validators.isAny]}]},conflictingClassGroups:{fg:["icon","text-color"]},theme:{color:["current","surface-default","surface-raised","surface-overlay","transparent-dark","transparent-light","interactive-default","interactive-hover-light","interactive-hover-dark","interactive-disabled","static-light","static-dark","interactive","interactive-hover","highlight-bold","highlight-hover","highlight-subtle","info-bold","info-hover","info-subtle","advisory-bold","advisory-hover","advisory-subtle","normal-bold","normal-hover","normal-subtle","serious-bold","serious-hover","serious-subtle","critical-bold","critical-hover","critical-subtle","default-light","default-dark","inverse-dark","inverse-light","disabled","highlight","info","advisory","normal","serious","critical","classification-missing","classification-unclass","classification-cui","classification-confidential","classification-secret","classification-top-secret"],font:["primary","display"],text:["header-xxl","header-xl","header-l","header-m","header-s","header-xs","body-xl","body-l","body-m","body-s","body-xs","body-xxs","button-xl","button-l","button-m","button-s","button-xs"],radius:["none","small","medium","large","round"],shadow:["elevation-default","elevation-overlay","elevation-raised"],spacing:["none","0","xxs","xs","s","m","l","xl","xxl","oversized"]}}});function d(...e){return r(clsx(e))}const c=createTV({twMergeConfig:{extend:{classGroups:{icon:[{icon:["",validators.isAny]}],fg:[{fg:["",validators.isAny]}]},conflictingClassGroups:{fg:["icon","text-color"]},theme:{color:["current","surface-default","surface-raised","surface-overlay","transparent-dark","transparent-light","interactive-default","interactive-hover-light","interactive-hover-dark","interactive-disabled","static-light","static-dark","interactive","interactive-hover","highlight-bold","highlight-hover","highlight-subtle","info-bold","info-hover","info-subtle","advisory-bold","advisory-hover","advisory-subtle","normal-bold","normal-hover","normal-subtle","serious-bold","serious-hover","serious-subtle","critical-bold","critical-hover","critical-subtle","default-light","default-dark","inverse-dark","inverse-light","disabled","highlight","info","advisory","normal","serious","critical","classification-missing","classification-unclass","classification-cui","classification-confidential","classification-secret","classification-top-secret"],font:["primary","display"],text:["header-xxl","header-xl","header-l","header-m","header-s","header-xs","body-xl","body-l","body-m","body-s","body-xs","body-xxs","button-xl","button-l","button-m","button-s","button-xs"],radius:["none","small","medium","large","round"],shadow:["elevation-default","elevation-overlay","elevation-raised"],spacing:["none","0","xxs","xs","s","m","l","xl","xxl","oversized"]}}}});function u(e){return !!e&&"slots"in e}export{d as cn,u as isSlottedContextValue,c as tv,r as twMerge};//# sourceMappingURL=utils.js.map
1
+ import {clsx}from'clsx';import {validators,extendTailwindMerge}from'tailwind-merge';import {createTV}from'tailwind-variants';const a={classGroups:{icon:[{icon:["",validators.isAny]}],fg:[{fg:["",validators.isAny]}]},conflictingClassGroups:{fg:["icon","text-color"]},theme:{color:["current","surface-default","surface-raised","surface-overlay","transparent-dark","transparent-light","interactive-default","interactive-hover-light","interactive-hover-dark","interactive-disabled","static-light","static-dark","interactive","interactive-hover","highlight-bold","highlight-hover","highlight-subtle","info-bold","info-hover","info-subtle","advisory-bold","advisory-hover","advisory-subtle","normal-bold","normal-hover","normal-subtle","serious-bold","serious-hover","serious-subtle","critical-bold","critical-hover","critical-subtle","default-light","default-dark","inverse-dark","inverse-light","disabled","highlight","info","advisory","normal","serious","critical","classification-missing","classification-unclass","classification-cui","classification-confidential","classification-secret","classification-top-secret"],font:["primary","display"],text:["header-xxl","header-xl","header-l","header-m","header-s","header-xs","body-xl","body-l","body-m","body-s","body-xs","body-xxs","button-xl","button-l","button-m","button-s","button-xs"],radius:["none","small","medium","large","round"],shadow:["elevation-default","elevation-overlay","elevation-raised"],spacing:["none","0","xxs","xs","s","m","l","xl","xxl","oversized"]}},l=extendTailwindMerge({extend:a});function g(...s){return l(clsx(s))}const h=/((?:[^:]*:)+)([^:]+)/;function d(s){if(!s)return "";const e={};for(const t of s.split(" ")){const[,o,n]=h.exec(t)??["","BASE",t];e[o]=e[o]??[],e[o].push(n);}const r=[];for(const t of Object.keys(e))e[t]=l(e[t]).split(" ");for(const t of Object.keys(e))t==="BASE"?r.push(e[t]):r.push(e[t]?.map(o=>`${t}${o}`));return r.flat().join(" ")}const E=createTV({twMergeConfig:a});function T(s){const e=E(s);return Object.assign(t=>{const o=e(t);return typeof o=="string"?d(o):Object.entries(o).reduce((n,[c,u])=>(n[c]=V=>d(u(V)),n),{})},e)}function b(s){return !!s&&"slots"in s}export{g as cn,b as isSlottedContextValue,d as mergeVariants,T as tv,l as twMerge};//# sourceMappingURL=utils.js.map
2
2
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/lib/utils.ts"],"names":["twMerge","extendTailwindMerge","validators","cn","inputs","clsx","tv","createTV","isSlottedContextValue","context"],"mappings":"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","file":"utils.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 { type ClassValue, clsx } from 'clsx';\nimport type { ForwardedRef } from 'react';\nimport type { ContextValue } from 'react-aria-components';\nimport { extendTailwindMerge, validators } from 'tailwind-merge';\nimport { createTV } from 'tailwind-variants';\n\ntype AdditionalClassGroupIds = 'icon' | 'icon-size' | 'fg';\n\nexport const twMerge = extendTailwindMerge<AdditionalClassGroupIds>({\n extend: {\n classGroups: {\n icon: [{ icon: ['', validators.isAny] }],\n fg: [{ fg: ['', validators.isAny] }],\n },\n conflictingClassGroups: {\n fg: ['icon', 'text-color'],\n },\n theme: {\n color: [\n 'current',\n 'surface-default',\n 'surface-raised',\n 'surface-overlay',\n 'transparent-dark',\n 'transparent-light',\n 'interactive-default',\n 'interactive-hover-light',\n 'interactive-hover-dark',\n 'interactive-disabled',\n 'static-light',\n 'static-dark',\n 'interactive',\n 'interactive-hover',\n 'highlight-bold',\n 'highlight-hover',\n 'highlight-subtle',\n 'info-bold',\n 'info-hover',\n 'info-subtle',\n 'advisory-bold',\n 'advisory-hover',\n 'advisory-subtle',\n 'normal-bold',\n 'normal-hover',\n 'normal-subtle',\n 'serious-bold',\n 'serious-hover',\n 'serious-subtle',\n 'critical-bold',\n 'critical-hover',\n 'critical-subtle',\n 'default-light',\n 'default-dark',\n 'inverse-dark',\n 'inverse-light',\n 'disabled',\n 'highlight',\n 'info',\n 'advisory',\n 'normal',\n 'serious',\n 'critical',\n 'classification-missing',\n 'classification-unclass',\n 'classification-cui',\n 'classification-confidential',\n 'classification-secret',\n 'classification-top-secret',\n ],\n font: ['primary', 'display'],\n text: [\n 'header-xxl',\n 'header-xl',\n 'header-l',\n 'header-m',\n 'header-s',\n 'header-xs',\n 'body-xl',\n 'body-l',\n 'body-m',\n 'body-s',\n 'body-xs',\n 'body-xxs',\n 'button-xl',\n 'button-l',\n 'button-m',\n 'button-s',\n 'button-xs',\n ],\n radius: ['none', 'small', 'medium', 'large', 'round'],\n shadow: ['elevation-default', 'elevation-overlay', 'elevation-raised'],\n spacing: [\n 'none',\n '0',\n 'xxs',\n 'xs',\n 's',\n 'm',\n 'l',\n 'xl',\n 'xxl',\n 'oversized',\n ],\n },\n },\n});\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport const tv = createTV({\n twMergeConfig: {\n extend: {\n classGroups: {\n icon: [{ icon: ['', validators.isAny] }],\n fg: [{ fg: ['', validators.isAny] }],\n },\n conflictingClassGroups: {\n fg: ['icon', 'text-color'],\n },\n theme: {\n color: [\n 'current',\n 'surface-default',\n 'surface-raised',\n 'surface-overlay',\n 'transparent-dark',\n 'transparent-light',\n 'interactive-default',\n 'interactive-hover-light',\n 'interactive-hover-dark',\n 'interactive-disabled',\n 'static-light',\n 'static-dark',\n 'interactive',\n 'interactive-hover',\n 'highlight-bold',\n 'highlight-hover',\n 'highlight-subtle',\n 'info-bold',\n 'info-hover',\n 'info-subtle',\n 'advisory-bold',\n 'advisory-hover',\n 'advisory-subtle',\n 'normal-bold',\n 'normal-hover',\n 'normal-subtle',\n 'serious-bold',\n 'serious-hover',\n 'serious-subtle',\n 'critical-bold',\n 'critical-hover',\n 'critical-subtle',\n 'default-light',\n 'default-dark',\n 'inverse-dark',\n 'inverse-light',\n 'disabled',\n 'highlight',\n 'info',\n 'advisory',\n 'normal',\n 'serious',\n 'critical',\n 'classification-missing',\n 'classification-unclass',\n 'classification-cui',\n 'classification-confidential',\n 'classification-secret',\n 'classification-top-secret',\n ],\n font: ['primary', 'display'],\n text: [\n 'header-xxl',\n 'header-xl',\n 'header-l',\n 'header-m',\n 'header-s',\n 'header-xs',\n 'body-xl',\n 'body-l',\n 'body-m',\n 'body-s',\n 'body-xs',\n 'body-xxs',\n 'button-xl',\n 'button-l',\n 'button-m',\n 'button-s',\n 'button-xs',\n ],\n radius: ['none', 'small', 'medium', 'large', 'round'],\n shadow: ['elevation-default', 'elevation-overlay', 'elevation-raised'],\n spacing: [\n 'none',\n '0',\n 'xxs',\n 'xs',\n 's',\n 'm',\n 'l',\n 'xl',\n 'xxl',\n 'oversized',\n ],\n },\n },\n },\n});\n\n// Types copied from RAC due to not being exported\ntype WithRef<T, E> = T & {\n ref?: ForwardedRef<E>;\n};\n\ninterface SlottedValue<T> {\n slots?: Record<string | symbol, T>;\n}\n\n/**\n * A helper to narrow the type of Context Value\n */\nexport function isSlottedContextValue<T, E>(\n context: ContextValue<T, E>,\n): context is SlottedValue<WithRef<T, E>> {\n return !!context && 'slots' in context;\n}\n"]}
1
+ {"version":3,"sources":["../../src/lib/utils.ts"],"names":["twMergeConfig","validators","twMerge","extendTailwindMerge","cn","inputs","clsx","PREFIX_REGEX","mergeVariants","className","prefixMap","cls","prefix","finalClassNames","key","s","_tv","createTV","tv","options","configuredStateMachine","props","classNamesOrSlots","acc","slot","callback","slotProps","isSlottedContextValue","context"],"mappings":"6HAgCA,MAAMA,EAAgB,CACpB,WAAA,CAAa,CACX,IAAA,CAAM,CAAC,CAAE,IAAA,CAAM,CAAC,EAAA,CAAIC,UAAAA,CAAW,KAAK,CAAE,CAAC,EACvC,EAAA,CAAI,CAAC,CAAE,EAAA,CAAI,CAAC,GAAIA,UAAAA,CAAW,KAAK,CAAE,CAAC,CACrC,EACA,sBAAA,CAAwB,CACtB,EAAA,CAAI,CAAC,OAAQ,YAAY,CAC3B,EACA,KAAA,CAAO,CACL,MAAO,CACL,SAAA,CACA,iBAAA,CACA,gBAAA,CACA,kBACA,kBAAA,CACA,mBAAA,CACA,sBACA,yBAAA,CACA,wBAAA,CACA,uBACA,cAAA,CACA,aAAA,CACA,aAAA,CACA,mBAAA,CACA,iBACA,iBAAA,CACA,kBAAA,CACA,YACA,YAAA,CACA,aAAA,CACA,gBACA,gBAAA,CACA,iBAAA,CACA,cACA,cAAA,CACA,eAAA,CACA,eACA,eAAA,CACA,gBAAA,CACA,gBACA,gBAAA,CACA,iBAAA,CACA,gBACA,cAAA,CACA,cAAA,CACA,eAAA,CACA,UAAA,CACA,YACA,MAAA,CACA,UAAA,CACA,SACA,SAAA,CACA,UAAA,CACA,yBACA,wBAAA,CACA,oBAAA,CACA,6BAAA,CACA,uBAAA,CACA,2BACF,CAAA,CACA,IAAA,CAAM,CAAC,SAAA,CAAW,SAAS,EAC3B,IAAA,CAAM,CACJ,YAAA,CACA,WAAA,CACA,WACA,UAAA,CACA,UAAA,CACA,YACA,SAAA,CACA,QAAA,CACA,SACA,QAAA,CACA,SAAA,CACA,WACA,WAAA,CACA,UAAA,CACA,WACA,UAAA,CACA,WACF,EACA,MAAA,CAAQ,CAAC,OAAQ,OAAA,CAAS,QAAA,CAAU,OAAA,CAAS,OAAO,EACpD,MAAA,CAAQ,CAAC,oBAAqB,mBAAA,CAAqB,kBAAkB,EACrE,OAAA,CAAS,CACP,MAAA,CACA,GAAA,CACA,MACA,IAAA,CACA,GAAA,CACA,IACA,GAAA,CACA,IAAA,CACA,MACA,WACF,CACF,CACF,CAAA,CAEaC,EAAUC,mBAAAA,CAA6C,CAClE,OAAQH,CACV,CAAC,EAEM,SAASI,CAAAA,CAAAA,GAAMC,EAAsB,CAC1C,OAAOH,EAAQI,IAAAA,CAAKD,CAAM,CAAC,CAC7B,CAEA,MAAME,CAAAA,CAAe,sBAAA,CAEd,SAASC,CAAAA,CAAcC,EAAmB,CAC/C,GAAI,CAACA,CAAAA,CACH,OAAO,GAIT,MAAMC,CAAAA,CAAsC,EAAC,CAE7C,UAAWC,CAAAA,IAAOF,CAAAA,CAAU,MAAM,GAAG,CAAA,CAAG,CACtC,KAAM,EAAGG,CAAAA,CAAQH,CAAS,CAAA,CAAIF,CAAAA,CAAa,KAAKI,CAAG,CAAA,EAAK,CAAC,EAAA,CAAI,MAAA,CAAQA,CAAG,CAAA,CAExED,CAAAA,CAAUE,CAAM,CAAA,CAAIF,CAAAA,CAAUE,CAAM,CAAA,EAAK,GAEzCF,CAAAA,CAAUE,CAAM,CAAA,CAAE,IAAA,CAAKH,CAAS,EAClC,CAEA,MAAMI,CAAAA,CAAkB,GAExB,IAAA,MAAWC,CAAAA,IAAO,MAAA,CAAO,IAAA,CAAKJ,CAAS,CAAA,CACrCA,CAAAA,CAAUI,CAAG,CAAA,CAAIZ,CAAAA,CAAQQ,EAAUI,CAAG,CAAC,CAAA,CAAE,KAAA,CAAM,GAAG,CAAA,CAGpD,IAAA,MAAWF,KAAU,MAAA,CAAO,IAAA,CAAKF,CAAS,CAAA,CACpCE,CAAAA,GAAW,OACbC,CAAAA,CAAgB,IAAA,CAAKH,EAAUE,CAAM,CAAC,EAEtCC,CAAAA,CAAgB,IAAA,CAAKH,EAAUE,CAAM,CAAA,EAAG,GAAA,CAAKG,CAAAA,EAAM,GAAGH,CAAM,CAAA,EAAGG,CAAC,CAAA,CAAE,CAAC,EAIvE,OAAOF,CAAAA,CAAgB,IAAA,EAAK,CAAE,KAAK,GAAG,CACxC,CAEA,MAAMG,CAAAA,CAAMC,SAAS,CACnB,aAAA,CAAAjB,CACF,CAAC,EAKM,SAASkB,CAAAA,CAsBdC,EAQmC,CACnC,MAAMC,EAAyBJ,CAAAA,CAAgCG,CAAO,EAwBtE,OAAO,MAAA,CAAO,OAvBgBE,CAAAA,EAAU,CACtC,MAAMC,CAAAA,CAAoBF,CAAAA,CAAuBC,CAAK,CAAA,CAEtD,OAAO,OAAOC,CAAAA,EAAsB,SAChCd,CAAAA,CAAcc,CAAiB,EAC/B,MAAA,CAAO,OAAA,CACLA,CAIF,CAAA,CAAE,MAAA,CACA,CACEC,CAAAA,CACA,CAACC,CAAAA,CAAMC,CAAQ,KAEfF,CAAAA,CAAIC,CAAI,EAAKE,CAAAA,EAAclB,CAAAA,CAAciB,CAAAA,CAASC,CAAS,CAAC,CAAA,CAErDH,CAAAA,CAAAA,CAET,EACF,CACN,EAE0CH,CAAsB,CAClE,CAcO,SAASO,CAAAA,CACdC,EACwC,CACxC,OAAO,CAAC,CAACA,CAAAA,EAAW,UAAWA,CACjC","file":"utils.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 { type ClassValue, clsx } from 'clsx';\nimport type { ForwardedRef } from 'react';\nimport type { ContextValue } from 'react-aria-components';\nimport {\n type ClassNameValue,\n extendTailwindMerge,\n validators,\n} from 'tailwind-merge';\nimport {\n type TVCompoundSlots,\n type TVCompoundVariants,\n type TVDefaultVariants,\n type TVProps,\n type TVReturnType,\n type TVVariants,\n createTV,\n} from 'tailwind-variants';\n\ntype AdditionalClassGroupIds = 'icon' | 'icon-size' | 'fg';\n\nconst twMergeConfig = {\n classGroups: {\n icon: [{ icon: ['', validators.isAny] }],\n fg: [{ fg: ['', validators.isAny] }],\n },\n conflictingClassGroups: {\n fg: ['icon', 'text-color'],\n },\n theme: {\n color: [\n 'current',\n 'surface-default',\n 'surface-raised',\n 'surface-overlay',\n 'transparent-dark',\n 'transparent-light',\n 'interactive-default',\n 'interactive-hover-light',\n 'interactive-hover-dark',\n 'interactive-disabled',\n 'static-light',\n 'static-dark',\n 'interactive',\n 'interactive-hover',\n 'highlight-bold',\n 'highlight-hover',\n 'highlight-subtle',\n 'info-bold',\n 'info-hover',\n 'info-subtle',\n 'advisory-bold',\n 'advisory-hover',\n 'advisory-subtle',\n 'normal-bold',\n 'normal-hover',\n 'normal-subtle',\n 'serious-bold',\n 'serious-hover',\n 'serious-subtle',\n 'critical-bold',\n 'critical-hover',\n 'critical-subtle',\n 'default-light',\n 'default-dark',\n 'inverse-dark',\n 'inverse-light',\n 'disabled',\n 'highlight',\n 'info',\n 'advisory',\n 'normal',\n 'serious',\n 'critical',\n 'classification-missing',\n 'classification-unclass',\n 'classification-cui',\n 'classification-confidential',\n 'classification-secret',\n 'classification-top-secret',\n ],\n font: ['primary', 'display'],\n text: [\n 'header-xxl',\n 'header-xl',\n 'header-l',\n 'header-m',\n 'header-s',\n 'header-xs',\n 'body-xl',\n 'body-l',\n 'body-m',\n 'body-s',\n 'body-xs',\n 'body-xxs',\n 'button-xl',\n 'button-l',\n 'button-m',\n 'button-s',\n 'button-xs',\n ],\n radius: ['none', 'small', 'medium', 'large', 'round'],\n shadow: ['elevation-default', 'elevation-overlay', 'elevation-raised'],\n spacing: [\n 'none',\n '0',\n 'xxs',\n 'xs',\n 's',\n 'm',\n 'l',\n 'xl',\n 'xxl',\n 'oversized',\n ],\n },\n} as const; // TODO: satisfies ?\n\nexport const twMerge = extendTailwindMerge<AdditionalClassGroupIds>({\n extend: twMergeConfig,\n});\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nconst PREFIX_REGEX = /((?:[^:]*:)+)([^:]+)/;\n\nexport function mergeVariants(className: string) {\n if (!className) {\n return '';\n }\n\n // First build up a map of all prefixes.\n const prefixMap: Record<string, string[]> = {};\n\n for (const cls of className.split(' ')) {\n const [, prefix, className] = PREFIX_REGEX.exec(cls) ?? ['', 'BASE', cls];\n\n prefixMap[prefix] = prefixMap[prefix] ?? [];\n\n prefixMap[prefix].push(className);\n }\n\n const finalClassNames = [];\n\n for (const key of Object.keys(prefixMap)) {\n prefixMap[key] = twMerge(prefixMap[key]).split(' ');\n }\n\n for (const prefix of Object.keys(prefixMap)) {\n if (prefix === 'BASE') {\n finalClassNames.push(prefixMap[prefix]);\n } else {\n finalClassNames.push(prefixMap[prefix]?.map((s) => `${prefix}${s}`));\n }\n }\n\n return finalClassNames.flat().join(' ');\n}\n\nconst _tv = createTV({\n twMergeConfig,\n});\n\n// Copied from Tailwind Variants due to not being exported\ntype TVSlots = Record<string, ClassNameValue> | undefined;\n\nexport function tv<\n V extends TVVariants<S, B, EV>,\n // biome-ignore lint/style/useNamingConvention: Keeping consistent with OG implementation within TV\n CV extends TVCompoundVariants<V, S, B, EV, ES>,\n // biome-ignore lint/style/useNamingConvention: Keeping consistent with OG implementation within TV\n DV extends TVDefaultVariants<V, S, EV, ES>,\n B extends ClassNameValue = undefined,\n S extends TVSlots = undefined,\n // @ts-expect-error\n E extends TVReturnType = TVReturnType<\n V,\n S,\n B,\n // @ts-expect-error Keeping consistent with OG implementation within TV\n EV extends undefined ? object : EV,\n // @ts-expect-error Keeping consistent with OG implementation within TV\n ES extends undefined ? object : ES\n >,\n // biome-ignore lint/style/useNamingConvention: Keeping consistent with OG implementation within TV\n EV extends TVVariants<ES, B, E['variants'], ES> = E['variants'],\n // biome-ignore lint/style/useNamingConvention: Keeping consistent with OG implementation within TV\n ES extends TVSlots = E['slots'] extends TVSlots ? E['slots'] : undefined,\n>(options: {\n extend?: E;\n base?: B;\n slots?: S;\n variants?: V;\n compoundVariants?: CV;\n compoundSlots?: TVCompoundSlots<V, S, B>;\n defaultVariants?: DV;\n}): TVReturnType<V, S, B, EV, ES, E> {\n const configuredStateMachine = _tv<V, CV, DV, B, S, E, EV, ES>(options);\n const wrappedStateMachine = ((props) => {\n const classNamesOrSlots = configuredStateMachine(props);\n\n return typeof classNamesOrSlots === 'string'\n ? mergeVariants(classNamesOrSlots)\n : Object.entries(\n classNamesOrSlots as Record<\n string,\n (slotProps?: TVProps<V, S, EV, ES>) => string\n >,\n ).reduce(\n (\n acc: Record<string, (slotProps?: TVProps<V, S, EV, ES>) => string>,\n [slot, callback],\n ) => {\n acc[slot] = (slotProps) => mergeVariants(callback(slotProps));\n\n return acc;\n },\n {},\n );\n }) as TVReturnType<V, S, B, EV, ES, E>;\n\n return Object.assign(wrappedStateMachine, configuredStateMachine);\n}\n\n// Types copied from RAC due to not being exported\ntype WithRef<T, E> = T & {\n ref?: ForwardedRef<E>;\n};\n\ninterface SlottedValue<T> {\n slots?: Record<string | symbol, T>;\n}\n\n/**\n * A helper to narrow the type of Context Value\n */\nexport function isSlottedContextValue<T, E>(\n context: ContextValue<T, E>,\n): context is SlottedValue<WithRef<T, E>> {\n return !!context && 'slots' in context;\n}\n"]}