@discourser/design-system 0.9.2 → 0.9.3

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/index.cjs CHANGED
@@ -8,7 +8,7 @@ var jsx = require('styled-system/jsx');
8
8
  var recipes = require('styled-system/recipes');
9
9
  var react = require('@ark-ui/react');
10
10
  var jsxRuntime = require('react/jsx-runtime');
11
- var field = require('@ark-ui/react/field');
11
+ var field$1 = require('@ark-ui/react/field');
12
12
  var portal = require('@ark-ui/react/portal');
13
13
  var toast = require('@ark-ui/react/toast');
14
14
  var dialog = require('@ark-ui/react/dialog');
@@ -24,6 +24,7 @@ var progress = require('@ark-ui/react/progress');
24
24
  var popover = require('@ark-ui/react/popover');
25
25
  var tooltip = require('@ark-ui/react/tooltip');
26
26
  var clsx = require('clsx');
27
+ var anatomy = require('@ark-ui/react/anatomy');
27
28
 
28
29
  var __defProp = Object.defineProperty;
29
30
  var __export = (target, all) => {
@@ -48,7 +49,7 @@ var Spinner = jsx.styled(factory.ark.span, recipes.spinner);
48
49
  var Span = jsx.styled("span");
49
50
  var Loader = react$1.forwardRef(function Loader2(props, ref) {
50
51
  const {
51
- spinner: spinner2 = /* @__PURE__ */ jsxRuntime.jsx(Spinner, { size: "inherit", borderWidth: "0.125em", color: "inherit" }),
52
+ spinner: spinner3 = /* @__PURE__ */ jsxRuntime.jsx(Spinner, { size: "inherit", borderWidth: "0.125em", color: "inherit" }),
52
53
  spinnerPlacement = "start",
53
54
  children,
54
55
  text,
@@ -58,14 +59,14 @@ var Loader = react$1.forwardRef(function Loader2(props, ref) {
58
59
  if (!visible) return children;
59
60
  if (text) {
60
61
  return /* @__PURE__ */ jsxRuntime.jsxs(Span, { ref, display: "contents", ...rest, children: [
61
- spinnerPlacement === "start" && spinner2,
62
+ spinnerPlacement === "start" && spinner3,
62
63
  text,
63
- spinnerPlacement === "end" && spinner2
64
+ spinnerPlacement === "end" && spinner3
64
65
  ] });
65
66
  }
66
- if (spinner2) {
67
+ if (spinner3) {
67
68
  return /* @__PURE__ */ jsxRuntime.jsxs(Span, { ref, display: "contents", ...rest, children: [
68
- /* @__PURE__ */ jsxRuntime.jsx(AbsoluteCenter, { display: "inline-flex", children: spinner2 }),
69
+ /* @__PURE__ */ jsxRuntime.jsx(AbsoluteCenter, { display: "inline-flex", children: spinner3 }),
69
70
  /* @__PURE__ */ jsxRuntime.jsx(Span, { visibility: "hidden", display: "contents", children })
70
71
  ] });
71
72
  }
@@ -83,7 +84,7 @@ var Button = react$1.forwardRef(
83
84
  loading,
84
85
  loadingText,
85
86
  children,
86
- spinner: spinner2,
87
+ spinner: spinner3,
87
88
  spinnerPlacement,
88
89
  colorPalette = "primary",
89
90
  className,
@@ -103,7 +104,7 @@ var Button = react$1.forwardRef(
103
104
  children: !props.asChild && loading ? /* @__PURE__ */ jsxRuntime.jsx(
104
105
  Loader,
105
106
  {
106
- spinner: spinner2,
107
+ spinner: spinner3,
107
108
  text: loadingText,
108
109
  spinnerPlacement,
109
110
  children
@@ -133,7 +134,7 @@ var IconButton = react$1.forwardRef(
133
134
  return /* @__PURE__ */ jsxRuntime.jsx(Button, { px: "0", py: "0", ref, ...props });
134
135
  }
135
136
  );
136
- var Input = jsx.styled(field.Field.Input, recipes.input);
137
+ var Input = jsx.styled(field$1.Field.Input, recipes.input);
137
138
  var InputAddon = jsx.styled(factory.ark.div, recipes.inputAddon);
138
139
  var { withProvider, withContext } = jsx.createStyleContext(recipes.inputGroup);
139
140
  var Root = withProvider(factory.ark.div, "root");
@@ -152,7 +153,7 @@ var InputGroup2 = Object.assign(InputGroupRoot, {
152
153
  Root,
153
154
  Element
154
155
  });
155
- var Textarea = jsx.styled(field.Field.Textarea, recipes.textarea);
156
+ var Textarea = jsx.styled(field$1.Field.Textarea, recipes.textarea);
156
157
  var Heading = jsx.styled("h2", recipes.heading);
157
158
  var BaseBadge = jsx.styled(factory.ark.div, recipes.badge);
158
159
  var Badge = react$1.forwardRef(
@@ -212,10 +213,10 @@ var iconMap = {
212
213
  error: CircleXIcon
213
214
  };
214
215
  var Indicator = react$1.forwardRef(function ToastIndicator(props, ref) {
215
- const toast2 = toast.useToastContext();
216
- const StatusIcon = iconMap[toast2.type];
216
+ const toast3 = toast.useToastContext();
217
+ const StatusIcon = iconMap[toast3.type];
217
218
  if (!StatusIcon) return null;
218
- return /* @__PURE__ */ jsxRuntime.jsx(Icon, { ref, "data-type": toast2.type, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(StatusIcon, {}) });
219
+ return /* @__PURE__ */ jsxRuntime.jsx(Icon, { ref, "data-type": toast3.type, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(StatusIcon, {}) });
219
220
  });
220
221
  var toaster = toast.createToaster({
221
222
  placement: "bottom-end",
@@ -224,16 +225,16 @@ var toaster = toast.createToaster({
224
225
  max: 5
225
226
  });
226
227
  var Toaster = () => {
227
- return /* @__PURE__ */ jsxRuntime.jsx(portal.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(StyledToaster, { toaster, insetInline: { mdDown: "4" }, children: (toast2) => /* @__PURE__ */ jsxRuntime.jsxs(Root2, { children: [
228
- toast2.type === "loading" ? /* @__PURE__ */ jsxRuntime.jsx(Spinner, { color: "colorPalette.plain.fg" }) : /* @__PURE__ */ jsxRuntime.jsx(Indicator, {}),
228
+ return /* @__PURE__ */ jsxRuntime.jsx(portal.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(StyledToaster, { toaster, insetInline: { mdDown: "4" }, children: (toast3) => /* @__PURE__ */ jsxRuntime.jsxs(Root2, { children: [
229
+ toast3.type === "loading" ? /* @__PURE__ */ jsxRuntime.jsx(Spinner, { color: "colorPalette.plain.fg" }) : /* @__PURE__ */ jsxRuntime.jsx(Indicator, {}),
229
230
  /* @__PURE__ */ jsxRuntime.jsxs(jsx.Stack, { gap: "3", alignItems: "start", children: [
230
231
  /* @__PURE__ */ jsxRuntime.jsxs(jsx.Stack, { gap: "1", children: [
231
- toast2.title && /* @__PURE__ */ jsxRuntime.jsx(Title, { children: toast2.title }),
232
- toast2.description && /* @__PURE__ */ jsxRuntime.jsx(Description, { children: toast2.description })
232
+ toast3.title && /* @__PURE__ */ jsxRuntime.jsx(Title, { children: toast3.title }),
233
+ toast3.description && /* @__PURE__ */ jsxRuntime.jsx(Description, { children: toast3.description })
233
234
  ] }),
234
- toast2.action && /* @__PURE__ */ jsxRuntime.jsx(ActionTrigger, { children: toast2.action.label })
235
+ toast3.action && /* @__PURE__ */ jsxRuntime.jsx(ActionTrigger, { children: toast3.action.label })
235
236
  ] }),
236
- toast2.closable && /* @__PURE__ */ jsxRuntime.jsx(CloseTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(CloseButton, { size: "sm" }) })
237
+ toast3.closable && /* @__PURE__ */ jsxRuntime.jsx(CloseTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(CloseButton, { size: "sm" }) })
237
238
  ] }) }) });
238
239
  };
239
240
 
@@ -625,8 +626,8 @@ var Marks = react$1.forwardRef(function Marks2(props, ref) {
625
626
  }) });
626
627
  });
627
628
  var Thumbs = (props) => {
628
- const slider2 = slider.useSliderContext();
629
- return slider2.value.map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(Thumb2, { index, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(HiddenInput3, {}) }, index));
629
+ const slider3 = slider.useSliderContext();
630
+ return slider3.value.map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(Thumb2, { index, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(HiddenInput3, {}) }, index));
630
631
  };
631
632
 
632
633
  // src/components/Avatar.tsx
@@ -800,6 +801,21 @@ function defineRecipe(config) {
800
801
  function defineSlotRecipe(config) {
801
802
  return config;
802
803
  }
804
+ function createProxy() {
805
+ const identity = (v) => v;
806
+ return new Proxy(identity, {
807
+ get() {
808
+ return identity;
809
+ }
810
+ });
811
+ }
812
+ var defineSemanticTokens = /* @__PURE__ */ createProxy();
813
+ function defineTextStyles(definition) {
814
+ return definition;
815
+ }
816
+ function defineLayerStyles(definition) {
817
+ return definition;
818
+ }
803
819
 
804
820
  // src/recipes/button.recipe.ts
805
821
  var buttonRecipe = defineRecipe({
@@ -1873,6 +1889,3004 @@ function cn(...inputs) {
1873
1889
  return clsx.clsx(inputs);
1874
1890
  }
1875
1891
 
1892
+ // src/preset/colors/m3-primary.ts
1893
+ var m3 = material3Language.colors.primary;
1894
+ var primary = defineSemanticTokens.colors({
1895
+ // Base scale mapping M3 tonal to Radix
1896
+ "1": { value: { base: m3[99], _dark: m3[10] } },
1897
+ "2": { value: { base: m3[95], _dark: m3[20] } },
1898
+ "3": { value: { base: m3[90], _dark: m3[30] } },
1899
+ "4": { value: { base: m3[80], _dark: m3[30] } },
1900
+ "5": { value: { base: m3[70], _dark: m3[40] } },
1901
+ "6": { value: { base: m3[60], _dark: m3[40] } },
1902
+ "7": { value: { base: m3[50], _dark: m3[50] } },
1903
+ "8": { value: { base: m3[40], _dark: m3[60] } },
1904
+ "9": { value: { base: m3[40], _dark: m3[80] } },
1905
+ // Primary action color
1906
+ "10": { value: { base: m3[30], _dark: m3[70] } },
1907
+ // Hover state
1908
+ "11": { value: { base: m3[30], _dark: m3[90] } },
1909
+ // Low-contrast text
1910
+ "12": { value: { base: m3[10], _dark: m3[95] } },
1911
+ // High-contrast text
1912
+ // Alpha variants (for overlays/transparency)
1913
+ a1: { value: { base: `${m3[40]}08`, _dark: `${m3[80]}08` } },
1914
+ a2: { value: { base: `${m3[40]}10`, _dark: `${m3[80]}10` } },
1915
+ a3: { value: { base: `${m3[40]}18`, _dark: `${m3[80]}18` } },
1916
+ a4: { value: { base: `${m3[40]}24`, _dark: `${m3[80]}24` } },
1917
+ a5: { value: { base: `${m3[40]}32`, _dark: `${m3[80]}32` } },
1918
+ a6: { value: { base: `${m3[40]}48`, _dark: `${m3[80]}48` } },
1919
+ a7: { value: { base: `${m3[40]}64`, _dark: `${m3[80]}64` } },
1920
+ a8: { value: { base: `${m3[40]}80`, _dark: `${m3[80]}80` } },
1921
+ a9: { value: { base: `${m3[40]}96`, _dark: `${m3[80]}96` } },
1922
+ a10: { value: { base: `${m3[40]}AA`, _dark: `${m3[80]}AA` } },
1923
+ a11: { value: { base: `${m3[40]}CC`, _dark: `${m3[80]}CC` } },
1924
+ a12: { value: { base: `${m3[40]}EE`, _dark: `${m3[80]}EE` } },
1925
+ // Semantic variants (Park UI component styling)
1926
+ solid: {
1927
+ bg: {
1928
+ DEFAULT: { value: { base: "{colors.primary.9}", _dark: "{colors.primary.9}" } },
1929
+ hover: { value: { base: "{colors.primary.10}", _dark: "{colors.primary.10}" } }
1930
+ },
1931
+ fg: {
1932
+ DEFAULT: { value: { base: "{colors.white}", _dark: "{colors.primary.1}" } }
1933
+ }
1934
+ },
1935
+ subtle: {
1936
+ bg: {
1937
+ DEFAULT: { value: { base: "{colors.primary.a3}", _dark: "{colors.primary.a3}" } },
1938
+ hover: { value: { base: "{colors.primary.a4}", _dark: "{colors.primary.a4}" } },
1939
+ active: { value: { base: "{colors.primary.a5}", _dark: "{colors.primary.a5}" } }
1940
+ },
1941
+ fg: {
1942
+ DEFAULT: { value: { base: "{colors.primary.a11}", _dark: "{colors.primary.a11}" } }
1943
+ }
1944
+ },
1945
+ surface: {
1946
+ bg: {
1947
+ DEFAULT: { value: { base: "{colors.primary.a2}", _dark: "{colors.primary.a2}" } },
1948
+ active: { value: { base: "{colors.primary.a3}", _dark: "{colors.primary.a3}" } }
1949
+ },
1950
+ border: {
1951
+ DEFAULT: { value: { base: "{colors.primary.a6}", _dark: "{colors.primary.a6}" } },
1952
+ hover: { value: { base: "{colors.primary.a7}", _dark: "{colors.primary.a7}" } }
1953
+ },
1954
+ fg: {
1955
+ DEFAULT: { value: { base: "{colors.primary.a11}", _dark: "{colors.primary.a11}" } }
1956
+ }
1957
+ },
1958
+ outline: {
1959
+ bg: {
1960
+ hover: { value: { base: "{colors.primary.a2}", _dark: "{colors.primary.a2}" } },
1961
+ active: { value: { base: "{colors.primary.a3}", _dark: "{colors.primary.a3}" } }
1962
+ },
1963
+ border: {
1964
+ DEFAULT: { value: { base: "{colors.primary.a7}", _dark: "{colors.primary.a7}" } }
1965
+ },
1966
+ fg: {
1967
+ DEFAULT: { value: { base: "{colors.primary.a11}", _dark: "{colors.primary.a11}" } }
1968
+ }
1969
+ },
1970
+ plain: {
1971
+ bg: {
1972
+ hover: { value: { base: "{colors.primary.a3}", _dark: "{colors.primary.a3}" } },
1973
+ active: { value: { base: "{colors.primary.a4}", _dark: "{colors.primary.a4}" } }
1974
+ },
1975
+ fg: {
1976
+ DEFAULT: { value: { base: "{colors.primary.a11}", _dark: "{colors.primary.a11}" } }
1977
+ }
1978
+ }
1979
+ });
1980
+
1981
+ // src/preset/colors/m3-neutral.ts
1982
+ var m32 = material3Language.colors.neutral;
1983
+ var neutral = defineSemanticTokens.colors({
1984
+ "1": { value: { base: m32[99], _dark: m32[10] } },
1985
+ "2": { value: { base: m32[95], _dark: m32[20] } },
1986
+ "3": { value: { base: m32[90], _dark: m32[20] } },
1987
+ "4": { value: { base: m32[80], _dark: m32[30] } },
1988
+ "5": { value: { base: m32[70], _dark: m32[30] } },
1989
+ "6": { value: { base: m32[60], _dark: m32[40] } },
1990
+ "7": { value: { base: m32[50], _dark: m32[50] } },
1991
+ "8": { value: { base: m32[40], _dark: m32[60] } },
1992
+ "9": { value: { base: m32[40], _dark: m32[60] } },
1993
+ "10": { value: { base: m32[30], _dark: m32[70] } },
1994
+ "11": { value: { base: m32[30], _dark: m32[80] } },
1995
+ "12": { value: { base: m32[10], _dark: m32[90] } },
1996
+ // Alpha variants
1997
+ a1: { value: { base: "#00000003", _dark: "#ffffff05" } },
1998
+ a2: { value: { base: "#00000006", _dark: "#ffffff09" } },
1999
+ a3: { value: { base: "#0000000f", _dark: "#ffffff12" } },
2000
+ a4: { value: { base: "#00000017", _dark: "#ffffff1b" } },
2001
+ a5: { value: { base: "#0000001f", _dark: "#ffffff22" } },
2002
+ a6: { value: { base: "#00000026", _dark: "#ffffff2c" } },
2003
+ a7: { value: { base: "#00000031", _dark: "#ffffff3b" } },
2004
+ a8: { value: { base: "#00000044", _dark: "#ffffff55" } },
2005
+ a9: { value: { base: "#00000072", _dark: "#ffffff64" } },
2006
+ a10: { value: { base: "#0000007c", _dark: "#ffffff72" } },
2007
+ a11: { value: { base: "#0000009b", _dark: "#ffffffaf" } },
2008
+ a12: { value: { base: "#000000df", _dark: "#ffffffed" } },
2009
+ // Semantic variants
2010
+ solid: {
2011
+ bg: {
2012
+ DEFAULT: { value: { base: "{colors.black}", _dark: "{colors.white}" } },
2013
+ hover: { value: { base: "{colors.neutral.12}", _dark: "{colors.neutral.12}" } }
2014
+ },
2015
+ fg: {
2016
+ DEFAULT: { value: { base: "{colors.white}", _dark: "{colors.black}" } }
2017
+ }
2018
+ },
2019
+ subtle: {
2020
+ bg: {
2021
+ DEFAULT: { value: { base: "{colors.neutral.a3}", _dark: "{colors.neutral.a3}" } },
2022
+ hover: { value: { base: "{colors.neutral.a4}", _dark: "{colors.neutral.a4}" } },
2023
+ active: { value: { base: "{colors.neutral.a5}", _dark: "{colors.neutral.a5}" } }
2024
+ },
2025
+ fg: {
2026
+ DEFAULT: { value: { base: "{colors.neutral.12}", _dark: "{colors.neutral.12}" } }
2027
+ }
2028
+ },
2029
+ surface: {
2030
+ bg: {
2031
+ DEFAULT: { value: { base: "{colors.white}", _dark: "{colors.neutral.1}" } },
2032
+ hover: { value: { base: "{colors.neutral.2}", _dark: "{colors.neutral.2}" } },
2033
+ active: { value: { base: "{colors.neutral.3}", _dark: "{colors.neutral.3}" } }
2034
+ },
2035
+ border: {
2036
+ DEFAULT: { value: { base: "{colors.neutral.6}", _dark: "{colors.neutral.6}" } },
2037
+ hover: { value: { base: "{colors.neutral.7}", _dark: "{colors.neutral.7}" } }
2038
+ },
2039
+ fg: {
2040
+ DEFAULT: { value: { base: "{colors.neutral.12}", _dark: "{colors.neutral.12}" } }
2041
+ }
2042
+ },
2043
+ outline: {
2044
+ bg: {
2045
+ hover: { value: { base: "{colors.neutral.a2}", _dark: "{colors.neutral.a2}" } },
2046
+ active: { value: { base: "{colors.neutral.a3}", _dark: "{colors.neutral.a3}" } }
2047
+ },
2048
+ border: {
2049
+ DEFAULT: { value: { base: "{colors.neutral.6}", _dark: "{colors.neutral.6}" } }
2050
+ },
2051
+ fg: {
2052
+ DEFAULT: { value: { base: "{colors.neutral.12}", _dark: "{colors.neutral.12}" } }
2053
+ }
2054
+ },
2055
+ plain: {
2056
+ bg: {
2057
+ hover: { value: { base: "{colors.neutral.a3}", _dark: "{colors.neutral.a3}" } },
2058
+ active: { value: { base: "{colors.neutral.a4}", _dark: "{colors.neutral.a4}" } }
2059
+ },
2060
+ fg: {
2061
+ DEFAULT: { value: { base: "{colors.neutral.12}", _dark: "{colors.neutral.12}" } }
2062
+ }
2063
+ }
2064
+ });
2065
+
2066
+ // src/preset/colors/m3-error.ts
2067
+ var m33 = material3Language.colors.error;
2068
+ var error = defineSemanticTokens.colors({
2069
+ "1": { value: { base: m33[99], _dark: m33[10] } },
2070
+ "2": { value: { base: m33[95], _dark: m33[20] } },
2071
+ "3": { value: { base: m33[90], _dark: m33[30] } },
2072
+ "4": { value: { base: m33[80], _dark: m33[30] } },
2073
+ "5": { value: { base: m33[70], _dark: m33[40] } },
2074
+ "6": { value: { base: m33[60], _dark: m33[40] } },
2075
+ "7": { value: { base: m33[50], _dark: m33[50] } },
2076
+ "8": { value: { base: m33[40], _dark: m33[60] } },
2077
+ "9": { value: { base: m33[40], _dark: m33[80] } },
2078
+ "10": { value: { base: m33[30], _dark: m33[70] } },
2079
+ "11": { value: { base: m33[30], _dark: m33[90] } },
2080
+ "12": { value: { base: m33[10], _dark: m33[95] } },
2081
+ // Alpha variants
2082
+ a1: { value: { base: `${m33[40]}08`, _dark: `${m33[80]}08` } },
2083
+ a2: { value: { base: `${m33[40]}10`, _dark: `${m33[80]}10` } },
2084
+ a3: { value: { base: `${m33[40]}18`, _dark: `${m33[80]}18` } },
2085
+ a4: { value: { base: `${m33[40]}24`, _dark: `${m33[80]}24` } },
2086
+ a5: { value: { base: `${m33[40]}32`, _dark: `${m33[80]}32` } },
2087
+ a6: { value: { base: `${m33[40]}48`, _dark: `${m33[80]}48` } },
2088
+ a7: { value: { base: `${m33[40]}64`, _dark: `${m33[80]}64` } },
2089
+ a8: { value: { base: `${m33[40]}80`, _dark: `${m33[80]}80` } },
2090
+ a9: { value: { base: `${m33[40]}96`, _dark: `${m33[80]}96` } },
2091
+ a10: { value: { base: `${m33[40]}AA`, _dark: `${m33[80]}AA` } },
2092
+ a11: { value: { base: `${m33[40]}CC`, _dark: `${m33[80]}CC` } },
2093
+ a12: { value: { base: `${m33[40]}EE`, _dark: `${m33[80]}EE` } },
2094
+ // Semantic variants
2095
+ solid: {
2096
+ bg: {
2097
+ DEFAULT: { value: { base: "{colors.error.9}", _dark: "{colors.error.9}" } },
2098
+ hover: { value: { base: "{colors.error.10}", _dark: "{colors.error.10}" } }
2099
+ },
2100
+ fg: { DEFAULT: { value: { base: "white", _dark: "white" } } }
2101
+ },
2102
+ subtle: {
2103
+ bg: {
2104
+ DEFAULT: { value: { base: "{colors.error.a3}", _dark: "{colors.error.a3}" } },
2105
+ hover: { value: { base: "{colors.error.a4}", _dark: "{colors.error.a4}" } },
2106
+ active: { value: { base: "{colors.error.a5}", _dark: "{colors.error.a5}" } }
2107
+ },
2108
+ fg: { DEFAULT: { value: { base: "{colors.error.a11}", _dark: "{colors.error.a11}" } } }
2109
+ },
2110
+ surface: {
2111
+ bg: {
2112
+ DEFAULT: { value: { base: "{colors.error.a2}", _dark: "{colors.error.a2}" } },
2113
+ active: { value: { base: "{colors.error.a3}", _dark: "{colors.error.a3}" } }
2114
+ },
2115
+ border: {
2116
+ DEFAULT: { value: { base: "{colors.error.a6}", _dark: "{colors.error.a6}" } },
2117
+ hover: { value: { base: "{colors.error.a7}", _dark: "{colors.error.a7}" } }
2118
+ },
2119
+ fg: { DEFAULT: { value: { base: "{colors.error.a11}", _dark: "{colors.error.a11}" } } }
2120
+ },
2121
+ outline: {
2122
+ bg: {
2123
+ hover: { value: { base: "{colors.error.a2}", _dark: "{colors.error.a2}" } },
2124
+ active: { value: { base: "{colors.error.a3}", _dark: "{colors.error.a3}" } }
2125
+ },
2126
+ border: { DEFAULT: { value: { base: "{colors.error.a7}", _dark: "{colors.error.a7}" } } },
2127
+ fg: { DEFAULT: { value: { base: "{colors.error.a11}", _dark: "{colors.error.a11}" } } }
2128
+ },
2129
+ plain: {
2130
+ bg: {
2131
+ hover: { value: { base: "{colors.error.a3}", _dark: "{colors.error.a3}" } },
2132
+ active: { value: { base: "{colors.error.a4}", _dark: "{colors.error.a4}" } }
2133
+ },
2134
+ fg: { DEFAULT: { value: { base: "{colors.error.a11}", _dark: "{colors.error.a11}" } } }
2135
+ }
2136
+ });
2137
+
2138
+ // src/preset/colors/index.ts
2139
+ var colors = {
2140
+ primary,
2141
+ neutral,
2142
+ error,
2143
+ // Alias gray to neutral (Park UI expects this)
2144
+ gray: neutral,
2145
+ // Map red to error for Park UI compatibility
2146
+ red: error
2147
+ };
2148
+
2149
+ // src/preset/semantic-tokens.ts
2150
+ var semantic = material3Language.semantic;
2151
+ var semanticDark = material3Language.semanticDark;
2152
+ var m3SemanticTokens = defineSemanticTokens.colors({
2153
+ // M3 Surface System
2154
+ surface: {
2155
+ DEFAULT: { value: { base: semantic.surface, _dark: semanticDark.surface } },
2156
+ dim: { value: { base: semantic.surfaceContainerLow, _dark: semanticDark.surfaceContainerLow } },
2157
+ bright: { value: { base: semantic.surfaceContainerHigh, _dark: semanticDark.surfaceContainerHigh } },
2158
+ container: {
2159
+ DEFAULT: { value: { base: semantic.surfaceContainer, _dark: semanticDark.surfaceContainer } },
2160
+ low: { value: { base: semantic.surfaceContainerLow, _dark: semanticDark.surfaceContainerLow } },
2161
+ lowest: { value: { base: semantic.surfaceContainerLowest, _dark: semanticDark.surfaceContainerLowest } },
2162
+ high: { value: { base: semantic.surfaceContainerHigh, _dark: semanticDark.surfaceContainerHigh } },
2163
+ highest: { value: { base: semantic.surfaceContainerHighest, _dark: semanticDark.surfaceContainerHighest } }
2164
+ }
2165
+ },
2166
+ onSurface: {
2167
+ DEFAULT: { value: { base: semantic.onSurface, _dark: semanticDark.onSurface } },
2168
+ variant: { value: { base: semantic.onSurfaceVariant, _dark: semanticDark.onSurfaceVariant } }
2169
+ },
2170
+ // M3 Primary tokens (for explicit M3 usage)
2171
+ m3Primary: {
2172
+ DEFAULT: { value: { base: semantic.primary, _dark: semanticDark.primary } },
2173
+ container: { value: { base: semantic.primaryContainer, _dark: semanticDark.primaryContainer } }
2174
+ },
2175
+ onM3Primary: {
2176
+ DEFAULT: { value: { base: semantic.onPrimary, _dark: semanticDark.onPrimary } },
2177
+ container: { value: { base: semantic.onPrimaryContainer, _dark: semanticDark.onPrimaryContainer } }
2178
+ },
2179
+ // M3 Secondary
2180
+ secondary: {
2181
+ DEFAULT: { value: { base: semantic.secondary, _dark: semanticDark.secondary } },
2182
+ container: { value: { base: semantic.secondaryContainer, _dark: semanticDark.secondaryContainer } }
2183
+ },
2184
+ onSecondary: {
2185
+ DEFAULT: { value: { base: semantic.onSecondary, _dark: semanticDark.onSecondary } },
2186
+ container: { value: { base: semantic.onSecondaryContainer, _dark: semanticDark.onSecondaryContainer } }
2187
+ },
2188
+ // M3 Tertiary
2189
+ tertiary: {
2190
+ DEFAULT: { value: { base: semantic.tertiary, _dark: semanticDark.tertiary } },
2191
+ container: { value: { base: semantic.tertiaryContainer, _dark: semanticDark.tertiaryContainer } }
2192
+ },
2193
+ onTertiary: {
2194
+ DEFAULT: { value: { base: semantic.onTertiary, _dark: semanticDark.onTertiary } },
2195
+ container: { value: { base: semantic.onTertiaryContainer, _dark: semanticDark.onTertiaryContainer } }
2196
+ },
2197
+ // M3 Outline
2198
+ outline: {
2199
+ DEFAULT: { value: { base: semantic.outline, _dark: semanticDark.outline } },
2200
+ variant: { value: { base: semantic.outlineVariant, _dark: semanticDark.outlineVariant } }
2201
+ },
2202
+ // M3 Inverse
2203
+ inverseSurface: { value: { base: semantic.inverseSurface, _dark: semanticDark.inverseSurface } },
2204
+ inverseOnSurface: { value: { base: semantic.inverseOnSurface, _dark: semanticDark.inverseOnSurface } },
2205
+ inversePrimary: { value: { base: semantic.inversePrimary, _dark: semanticDark.inversePrimary } },
2206
+ // Scrim/Shadow
2207
+ scrim: { value: { base: semantic.scrim, _dark: semanticDark.scrim } }
2208
+ });
2209
+
2210
+ // src/preset/recipes/button.ts
2211
+ var button2 = defineRecipe({
2212
+ className: "button",
2213
+ jsx: ["Button", "IconButton", "CloseButton", "ButtonGroup"],
2214
+ base: {
2215
+ alignItems: "center",
2216
+ appearance: "none",
2217
+ borderRadius: "l2",
2218
+ cursor: "pointer",
2219
+ display: "inline-flex",
2220
+ flexShrink: "0",
2221
+ fontWeight: "semibold",
2222
+ gap: "2",
2223
+ isolation: "isolate",
2224
+ justifyContent: "center",
2225
+ outline: "0",
2226
+ position: "relative",
2227
+ transition: "colors",
2228
+ transitionProperty: "background-color, border-color, color, box-shadow",
2229
+ userSelect: "none",
2230
+ verticalAlign: "middle",
2231
+ whiteSpace: "nowrap",
2232
+ _icon: {
2233
+ flexShrink: "0"
2234
+ },
2235
+ _disabled: {
2236
+ layerStyle: "disabled"
2237
+ },
2238
+ focusVisibleRing: "outside"
2239
+ },
2240
+ defaultVariants: {
2241
+ variant: "solid",
2242
+ size: "md"
2243
+ },
2244
+ variants: {
2245
+ variant: {
2246
+ solid: {
2247
+ bg: "colorPalette.solid.bg",
2248
+ color: "colorPalette.solid.fg",
2249
+ _hover: {
2250
+ bg: "colorPalette.solid.bg.hover"
2251
+ }
2252
+ },
2253
+ surface: {
2254
+ bg: "colorPalette.surface.bg",
2255
+ borderWidth: "1px",
2256
+ borderColor: "colorPalette.surface.border",
2257
+ color: "colorPalette.surface.fg",
2258
+ _hover: {
2259
+ borderColor: "colorPalette.surface.border.hover"
2260
+ },
2261
+ _active: {
2262
+ bg: "colorPalette.surface.bg.active"
2263
+ },
2264
+ _on: {
2265
+ bg: "colorPalette.surface.bg.active"
2266
+ }
2267
+ },
2268
+ subtle: {
2269
+ bg: "colorPalette.subtle.bg",
2270
+ color: "colorPalette.subtle.fg",
2271
+ _hover: {
2272
+ bg: "colorPalette.subtle.bg.hover"
2273
+ },
2274
+ _active: {
2275
+ bg: "colorPalette.subtle.bg.active"
2276
+ },
2277
+ _on: {
2278
+ bg: "colorPalette.subtle.bg.active"
2279
+ }
2280
+ },
2281
+ outline: {
2282
+ borderWidth: "1px",
2283
+ borderColor: "colorPalette.outline.border",
2284
+ color: "colorPalette.outline.fg",
2285
+ _hover: {
2286
+ bg: "colorPalette.outline.bg.hover"
2287
+ },
2288
+ _active: {
2289
+ bg: "colorPalette.outline.bg.active"
2290
+ },
2291
+ _on: {
2292
+ bg: "colorPalette.outline.bg.active"
2293
+ }
2294
+ },
2295
+ plain: {
2296
+ color: "colorPalette.plain.fg",
2297
+ _hover: {
2298
+ bg: "colorPalette.plain.bg.hover"
2299
+ },
2300
+ _active: {
2301
+ bg: "colorPalette.plain.bg.active"
2302
+ },
2303
+ _on: {
2304
+ bg: "colorPalette.plain.bg.active"
2305
+ }
2306
+ }
2307
+ },
2308
+ size: {
2309
+ "2xs": { h: "6", minW: "6", textStyle: "xs", px: "2", _icon: { boxSize: "3.5" } },
2310
+ xs: { h: "8", minW: "8", textStyle: "sm", px: "2.5", _icon: { boxSize: "4" } },
2311
+ sm: { h: "9", minW: "9", textStyle: "sm", px: "3", _icon: { boxSize: "4" } },
2312
+ md: { h: "10", minW: "10", textStyle: "sm", px: "3.5", _icon: { boxSize: "5" } },
2313
+ lg: { h: "11", minW: "11", textStyle: "md", px: "4", _icon: { boxSize: "5" } },
2314
+ xl: { h: "12", minW: "12", textStyle: "md", px: "4.5", _icon: { boxSize: "5.5" } },
2315
+ "2xl": { h: "16", minW: "16", textStyle: "xl", px: "6", _icon: { boxSize: "6" } }
2316
+ }
2317
+ }
2318
+ });
2319
+
2320
+ // src/preset/recipes/input.ts
2321
+ var input2 = {
2322
+ className: "input",
2323
+ jsx: ["Input", "Field.Input"],
2324
+ base: {
2325
+ appearance: "none",
2326
+ borderRadius: "l2",
2327
+ height: "var(--input-height)",
2328
+ minHeight: "var(--input-height)",
2329
+ minW: "var(--input-height)",
2330
+ outline: "0",
2331
+ position: "relative",
2332
+ textAlign: "start",
2333
+ transition: "colors",
2334
+ width: "100%",
2335
+ _disabled: {
2336
+ layerStyle: "disabled"
2337
+ }
2338
+ },
2339
+ defaultVariants: {
2340
+ size: "md",
2341
+ variant: "outline"
2342
+ },
2343
+ variants: {
2344
+ variant: {
2345
+ outline: {
2346
+ borderWidth: "1px",
2347
+ borderColor: "neutral.outline.border",
2348
+ focusVisibleRing: "inside",
2349
+ _invalid: {
2350
+ focusRingColor: "error",
2351
+ borderColor: "error"
2352
+ }
2353
+ },
2354
+ surface: {
2355
+ bg: "neutral.surface.bg",
2356
+ borderWidth: "1px",
2357
+ borderColor: "neutral.surface.border",
2358
+ focusVisibleRing: "inside",
2359
+ _invalid: {
2360
+ focusRingColor: "error",
2361
+ borderColor: "error"
2362
+ }
2363
+ },
2364
+ subtle: {
2365
+ borderWidth: "1px",
2366
+ borderColor: "transparent",
2367
+ bg: "neutral.subtle.bg",
2368
+ color: "neutral.subtle.fg",
2369
+ focusVisibleRing: "inside",
2370
+ _invalid: {
2371
+ focusRingColor: "error",
2372
+ borderColor: "error"
2373
+ }
2374
+ },
2375
+ flushed: {
2376
+ borderBottomWidth: "1px",
2377
+ borderBottomColor: "neutral.outline.border",
2378
+ borderRadius: "0",
2379
+ color: "fg.default",
2380
+ px: "0",
2381
+ _invalid: {
2382
+ borderColor: "error"
2383
+ },
2384
+ _focus: {
2385
+ borderColor: "colorPalette.solid.bg",
2386
+ boxShadowColor: "colorPalette.solid.bg",
2387
+ boxShadow: "0 1px 0 0 var(--shadow-color)",
2388
+ _invalid: {
2389
+ borderColor: "error",
2390
+ boxShadowColor: "error"
2391
+ }
2392
+ }
2393
+ }
2394
+ },
2395
+ size: {
2396
+ "2xs": { textStyle: "xs", px: "1.5", "--input-height": "sizes.7" },
2397
+ xs: { textStyle: "sm", px: "2", "--input-height": "sizes.8" },
2398
+ sm: { textStyle: "sm", px: "2.5", "--input-height": "sizes.9" },
2399
+ md: { textStyle: "md", px: "3", "--input-height": "sizes.10" },
2400
+ lg: { textStyle: "md", px: "3.5", "--input-height": "sizes.11" },
2401
+ xl: { textStyle: "lg", px: "4", "--input-height": "sizes.12" },
2402
+ "2xl": { textStyle: "3xl", px: "4.5", "--input-height": "sizes.16" }
2403
+ }
2404
+ }
2405
+ };
2406
+
2407
+ // src/preset/recipes/input-addon.ts
2408
+ var inputAddon2 = defineRecipe({
2409
+ className: "input-addon",
2410
+ base: {
2411
+ alignItems: "center",
2412
+ alignSelf: "stretch",
2413
+ borderRadius: "l2",
2414
+ color: "fg.muted",
2415
+ display: "flex",
2416
+ flex: "0 0 auto",
2417
+ whiteSpace: "nowrap",
2418
+ width: "auto"
2419
+ },
2420
+ defaultVariants: {
2421
+ size: "md",
2422
+ variant: "outline"
2423
+ },
2424
+ variants: {
2425
+ variant: {
2426
+ outline: {
2427
+ borderWidth: "thin",
2428
+ borderColor: "neutral.outline.border"
2429
+ },
2430
+ surface: {
2431
+ bg: "neutral.surface.bg",
2432
+ borderWidth: "thin",
2433
+ borderColor: "neutral.surface.border"
2434
+ },
2435
+ subtle: {
2436
+ bg: "neutral.subtle.bg"
2437
+ }
2438
+ },
2439
+ size: {
2440
+ xs: { textStyle: "sm", px: "2", _icon: { boxSize: "4" } },
2441
+ sm: { textStyle: "sm", px: "2.5", _icon: { boxSize: "4.5" } },
2442
+ md: { textStyle: "md", px: "3", _icon: { boxSize: "5" } },
2443
+ lg: { textStyle: "md", px: "3.5", _icon: { boxSize: "5" } },
2444
+ xl: { textStyle: "lg", px: "4", _icon: { boxSize: "5.5" } }
2445
+ }
2446
+ }
2447
+ });
2448
+
2449
+ // src/preset/recipes/input-group.ts
2450
+ var inputGroup2 = defineSlotRecipe({
2451
+ className: "input-group",
2452
+ slots: ["root", "element"],
2453
+ base: {
2454
+ root: {
2455
+ position: "relative",
2456
+ width: "full"
2457
+ },
2458
+ element: {
2459
+ alignItems: "center",
2460
+ color: "fg.muted",
2461
+ display: "flex",
2462
+ height: "full",
2463
+ justifyContent: "center",
2464
+ position: "absolute",
2465
+ zIndex: "2",
2466
+ _icon: {
2467
+ color: "fg.subtle"
2468
+ }
2469
+ }
2470
+ },
2471
+ defaultVariants: {
2472
+ size: "md"
2473
+ },
2474
+ variants: {
2475
+ size: {
2476
+ xs: {
2477
+ element: { minW: "8", _icon: { boxSize: "4" } },
2478
+ root: {
2479
+ "& > input:not(:first-child)": { ps: "7!" },
2480
+ "& > input:not(:last-child)": { pe: "7!" }
2481
+ }
2482
+ },
2483
+ sm: {
2484
+ root: {
2485
+ "& > input:not(:first-child)": { ps: "8!" },
2486
+ "& > input:not(:last-child)": { pe: "8!" }
2487
+ },
2488
+ element: { minW: "9", _icon: { boxSize: "4.5" } }
2489
+ },
2490
+ md: {
2491
+ root: {
2492
+ "& > input:not(:first-child)": { ps: "9!" },
2493
+ "& > input:not(:last-child)": { pe: "9!" }
2494
+ },
2495
+ element: { minW: "10", _icon: { boxSize: "5" } }
2496
+ },
2497
+ lg: {
2498
+ root: {
2499
+ "& > input:not(:first-child)": { ps: "10!" },
2500
+ "& > input:not(:last-child)": { pe: "10!" }
2501
+ },
2502
+ element: { minW: "11", _icon: { boxSize: "5" } }
2503
+ },
2504
+ xl: {
2505
+ root: {
2506
+ "& > input:not(:first-child)": { ps: "11!" },
2507
+ "& > input:not(:last-child)": { pe: "11!" }
2508
+ },
2509
+ element: { minW: "11", _icon: { boxSize: "5.5" } }
2510
+ }
2511
+ }
2512
+ }
2513
+ });
2514
+ var field = defineSlotRecipe({
2515
+ className: "field",
2516
+ slots: anatomy.fieldAnatomy.keys(),
2517
+ base: {
2518
+ root: {
2519
+ display: "flex",
2520
+ flexDirection: "column",
2521
+ gap: "1.5"
2522
+ },
2523
+ label: {
2524
+ alignItems: "center",
2525
+ color: "fg.default",
2526
+ display: "flex",
2527
+ gap: "0.5",
2528
+ textAlign: "start",
2529
+ userSelect: "none",
2530
+ textStyle: "label",
2531
+ _disabled: {
2532
+ layerStyle: "disabled"
2533
+ }
2534
+ },
2535
+ requiredIndicator: {
2536
+ color: "colorPalette.solid"
2537
+ },
2538
+ helperText: {
2539
+ color: "fg.muted",
2540
+ textStyle: "sm",
2541
+ _disabled: {
2542
+ layerStyle: "disabled"
2543
+ }
2544
+ },
2545
+ errorText: {
2546
+ color: "error",
2547
+ textStyle: "sm"
2548
+ }
2549
+ }
2550
+ });
2551
+
2552
+ // src/preset/recipes/group.ts
2553
+ var group2 = defineRecipe({
2554
+ className: "group",
2555
+ base: {
2556
+ display: "inline-flex",
2557
+ position: "relative",
2558
+ gap: "2",
2559
+ "& > *": {
2560
+ _focusVisible: {
2561
+ zIndex: 1
2562
+ }
2563
+ }
2564
+ },
2565
+ defaultVariants: {
2566
+ orientation: "horizontal"
2567
+ },
2568
+ variants: {
2569
+ orientation: {
2570
+ horizontal: {
2571
+ flexDirection: "row"
2572
+ },
2573
+ vertical: {
2574
+ flexDirection: "column"
2575
+ }
2576
+ },
2577
+ attached: {
2578
+ true: {
2579
+ gap: "0"
2580
+ }
2581
+ },
2582
+ grow: {
2583
+ true: {
2584
+ display: "flex",
2585
+ "& > *": {
2586
+ flex: 1
2587
+ }
2588
+ }
2589
+ }
2590
+ },
2591
+ compoundVariants: [
2592
+ {
2593
+ orientation: "horizontal",
2594
+ attached: true,
2595
+ css: {
2596
+ "& > *:first-child": {
2597
+ borderEndRadius: "0",
2598
+ marginEnd: "-1px"
2599
+ },
2600
+ "& > *:last-child": {
2601
+ borderStartRadius: "0"
2602
+ },
2603
+ "& > *:not(:first-child):not(:last-child)": {
2604
+ borderRadius: "0",
2605
+ marginEnd: "-1px"
2606
+ }
2607
+ }
2608
+ },
2609
+ {
2610
+ orientation: "vertical",
2611
+ attached: true,
2612
+ css: {
2613
+ "& > *:first-child": {
2614
+ borderBottomRadius: "0",
2615
+ marginBottom: "-1px"
2616
+ },
2617
+ "& > *:last-child": {
2618
+ borderTopRadius: "0"
2619
+ },
2620
+ "& > *:not(:first-child):not(:last-child)": {
2621
+ borderRadius: "0",
2622
+ marginBottom: "-1px"
2623
+ }
2624
+ }
2625
+ }
2626
+ ]
2627
+ });
2628
+
2629
+ // src/preset/recipes/spinner.ts
2630
+ var spinner2 = defineRecipe({
2631
+ className: "spinner",
2632
+ base: {
2633
+ "--spinner-track-color": "transparent",
2634
+ animation: "spin",
2635
+ animationDuration: "slowest",
2636
+ borderBottomColor: "var(--spinner-track-color)",
2637
+ borderColor: "currentColor",
2638
+ borderInlineStartColor: "var(--spinner-track-color)",
2639
+ borderRadius: "full",
2640
+ borderStyle: "solid",
2641
+ borderWidth: "medium",
2642
+ display: "inline-block",
2643
+ height: "var(--spinner-size)",
2644
+ width: "var(--spinner-size)"
2645
+ },
2646
+ defaultVariants: {
2647
+ size: "md"
2648
+ },
2649
+ variants: {
2650
+ size: {
2651
+ inherit: { "--spinner-size": "1em" },
2652
+ xs: { "--spinner-size": "sizes.3" },
2653
+ sm: { "--spinner-size": "sizes.4" },
2654
+ md: { "--spinner-size": "sizes.5" },
2655
+ lg: { "--spinner-size": "sizes.6" },
2656
+ xl: { "--spinner-size": "sizes.7" },
2657
+ "2xl": { "--spinner-size": "sizes.8" }
2658
+ }
2659
+ }
2660
+ });
2661
+
2662
+ // src/preset/recipes/absolute-center.ts
2663
+ var absoluteCenter2 = defineRecipe({
2664
+ className: "absolute-center",
2665
+ base: {
2666
+ position: "absolute",
2667
+ display: "flex",
2668
+ alignItems: "center",
2669
+ justifyContent: "center"
2670
+ },
2671
+ defaultVariants: {
2672
+ axis: "both"
2673
+ },
2674
+ variants: {
2675
+ axis: {
2676
+ horizontal: {
2677
+ insetStart: "50%",
2678
+ translate: "-50%",
2679
+ _rtl: {
2680
+ translate: "50%"
2681
+ }
2682
+ },
2683
+ vertical: {
2684
+ top: "50%",
2685
+ translate: "0 -50%"
2686
+ },
2687
+ both: {
2688
+ insetStart: "50%",
2689
+ top: "50%",
2690
+ translate: "-50% -50%",
2691
+ _rtl: {
2692
+ translate: "50% -50%"
2693
+ }
2694
+ }
2695
+ }
2696
+ }
2697
+ });
2698
+
2699
+ // src/preset/recipes/card.ts
2700
+ var card2 = defineSlotRecipe({
2701
+ className: "card",
2702
+ slots: ["root", "header", "body", "footer", "title", "description"],
2703
+ base: {
2704
+ root: {
2705
+ borderRadius: "l3",
2706
+ display: "flex",
2707
+ flexDirection: "column",
2708
+ overflow: "hidden",
2709
+ position: "relative"
2710
+ },
2711
+ header: {
2712
+ display: "flex",
2713
+ flexDirection: "column",
2714
+ gap: "1",
2715
+ p: "6"
2716
+ },
2717
+ body: {
2718
+ display: "flex",
2719
+ flex: "1",
2720
+ flexDirection: "column",
2721
+ pb: "6",
2722
+ px: "6"
2723
+ },
2724
+ footer: {
2725
+ display: "flex",
2726
+ justifyContent: "flex-end",
2727
+ gap: "3",
2728
+ pb: "6",
2729
+ pt: "2",
2730
+ px: "6"
2731
+ },
2732
+ title: {
2733
+ textStyle: "lg",
2734
+ fontWeight: "semibold"
2735
+ },
2736
+ description: {
2737
+ color: "fg.muted",
2738
+ textStyle: "sm"
2739
+ }
2740
+ },
2741
+ defaultVariants: {
2742
+ variant: "outline"
2743
+ },
2744
+ variants: {
2745
+ variant: {
2746
+ elevated: {
2747
+ root: {
2748
+ bg: "neutral.surface.bg",
2749
+ boxShadow: "lg"
2750
+ }
2751
+ },
2752
+ outline: {
2753
+ root: {
2754
+ bg: "neutral.surface.bg",
2755
+ borderWidth: "1px",
2756
+ borderColor: "border.default"
2757
+ }
2758
+ },
2759
+ subtle: {
2760
+ root: {
2761
+ bg: "neutral.subtle.bg"
2762
+ }
2763
+ }
2764
+ }
2765
+ }
2766
+ });
2767
+ var accordion2 = defineSlotRecipe({
2768
+ className: "accordion",
2769
+ slots: anatomy.accordionAnatomy.extendWith("itemBody").keys(),
2770
+ base: {
2771
+ root: {
2772
+ width: "full",
2773
+ "--accordion-radius": "radii.l2"
2774
+ },
2775
+ item: {
2776
+ overflowAnchor: "none"
2777
+ },
2778
+ itemTrigger: {
2779
+ alignItems: "center",
2780
+ borderRadius: "var(--accordion-radius)",
2781
+ color: "fg.default",
2782
+ cursor: "pointer",
2783
+ display: "flex",
2784
+ fontWeight: "semibold",
2785
+ gap: "3",
2786
+ justifyContent: "space-between",
2787
+ textAlign: "start",
2788
+ textStyle: "lg",
2789
+ width: "full",
2790
+ _focusVisible: {
2791
+ outlineWidth: "medium",
2792
+ outlineStyle: "solid",
2793
+ outlineColor: "colorPalette.focusRing"
2794
+ },
2795
+ _disabled: {
2796
+ layerStyle: "disabled"
2797
+ }
2798
+ },
2799
+ itemIndicator: {
2800
+ transition: "rotate 0.2s",
2801
+ transformOrigin: "center",
2802
+ color: "fg.subtle",
2803
+ _open: {
2804
+ rotate: "180deg"
2805
+ },
2806
+ _icon: {
2807
+ width: "1.2em",
2808
+ height: "1.2em"
2809
+ }
2810
+ },
2811
+ itemBody: {
2812
+ pb: "calc(var(--accordion-padding-y) * 2)",
2813
+ color: "fg.muted"
2814
+ },
2815
+ itemContent: {
2816
+ overflow: "hidden",
2817
+ borderRadius: "var(--accordion-radius)",
2818
+ _open: {
2819
+ animationName: "expand-height, fade-in",
2820
+ animationDuration: "normal"
2821
+ },
2822
+ _closed: {
2823
+ animationName: "collapse-height, fade-out",
2824
+ animationDuration: "normal",
2825
+ display: "none"
2826
+ }
2827
+ }
2828
+ },
2829
+ defaultVariants: {
2830
+ size: "md",
2831
+ variant: "outline"
2832
+ },
2833
+ variants: {
2834
+ variant: {
2835
+ outline: {
2836
+ item: {
2837
+ borderBottomWidth: "1px"
2838
+ }
2839
+ },
2840
+ plain: {}
2841
+ },
2842
+ size: {
2843
+ md: {
2844
+ root: {
2845
+ "--accordion-padding-x": "spacing.4",
2846
+ "--accordion-padding-y": "spacing.3"
2847
+ },
2848
+ itemTrigger: {
2849
+ textStyle: "md",
2850
+ py: "var(--accordion-padding-y)"
2851
+ }
2852
+ }
2853
+ }
2854
+ }
2855
+ });
2856
+ var drawer2 = defineSlotRecipe({
2857
+ className: "drawer",
2858
+ slots: anatomy.dialogAnatomy.extendWith("header", "body", "footer").keys(),
2859
+ base: {
2860
+ backdrop: {
2861
+ background: "black.a7",
2862
+ position: "fixed",
2863
+ insetInlineStart: "0",
2864
+ top: "0",
2865
+ width: "100vw",
2866
+ height: "100dvh",
2867
+ zIndex: "overlay",
2868
+ _open: {
2869
+ animationName: "fade-in",
2870
+ animationTimingFunction: "emphasized-in",
2871
+ animationDuration: "slow"
2872
+ },
2873
+ _closed: {
2874
+ animationName: "fade-out",
2875
+ animationTimingFunction: "emphasized-out",
2876
+ animationDuration: "normal"
2877
+ }
2878
+ },
2879
+ positioner: {
2880
+ display: "flex",
2881
+ width: "100vw",
2882
+ height: "100dvh",
2883
+ position: "fixed",
2884
+ insetInlineStart: "0",
2885
+ top: "0",
2886
+ zIndex: "modal",
2887
+ overscrollBehaviorY: "none"
2888
+ },
2889
+ content: {
2890
+ display: "flex",
2891
+ flexDirection: "column",
2892
+ position: "relative",
2893
+ width: "100%",
2894
+ outline: 0,
2895
+ zIndex: "modal",
2896
+ maxH: "100dvh",
2897
+ color: "inherit",
2898
+ bg: "gray.surface.bg",
2899
+ boxShadow: "lg",
2900
+ _open: {
2901
+ animationDuration: "slowest",
2902
+ animationTimingFunction: "cubic-bezier(0.05, 0.7, 0.1, 1.0)"
2903
+ },
2904
+ _closed: {
2905
+ animationDuration: "normal",
2906
+ animationTimingFunction: "cubic-bezier(0.3, 0.0, 0.8, 0.15)",
2907
+ display: "none"
2908
+ }
2909
+ },
2910
+ header: {
2911
+ display: "flex",
2912
+ flexDirection: "column",
2913
+ gap: "1",
2914
+ pt: { base: "4", md: "6" },
2915
+ pb: "4",
2916
+ px: { base: "4", md: "6" },
2917
+ flex: "0"
2918
+ },
2919
+ body: {
2920
+ display: "flex",
2921
+ flexDirection: "column",
2922
+ alignItems: "flex-start",
2923
+ flex: "1",
2924
+ overflow: "auto",
2925
+ p: { base: "4", md: "6" }
2926
+ },
2927
+ footer: {
2928
+ display: "flex",
2929
+ alignItems: "center",
2930
+ justifyContent: "flex-end",
2931
+ flex: "0",
2932
+ gap: "3",
2933
+ py: "4",
2934
+ px: { base: "4", md: "6" }
2935
+ },
2936
+ title: {
2937
+ color: "fg.default",
2938
+ fontWeight: "semibold",
2939
+ textStyle: "xl"
2940
+ },
2941
+ description: {
2942
+ color: "fg.muted",
2943
+ textStyle: "sm"
2944
+ },
2945
+ closeTrigger: {
2946
+ pos: "absolute",
2947
+ top: "3",
2948
+ insetEnd: "3"
2949
+ }
2950
+ },
2951
+ defaultVariants: {
2952
+ placement: "end",
2953
+ size: "sm"
2954
+ },
2955
+ variants: {
2956
+ size: {
2957
+ xs: {
2958
+ content: {
2959
+ maxW: "xs"
2960
+ }
2961
+ },
2962
+ sm: {
2963
+ content: {
2964
+ maxW: "sm"
2965
+ }
2966
+ },
2967
+ md: {
2968
+ content: {
2969
+ maxW: "md"
2970
+ }
2971
+ },
2972
+ lg: {
2973
+ content: {
2974
+ maxW: "lg"
2975
+ }
2976
+ },
2977
+ xl: {
2978
+ content: {
2979
+ maxW: "xl"
2980
+ }
2981
+ },
2982
+ full: {
2983
+ content: {
2984
+ maxW: "100vw",
2985
+ h: "100dvh"
2986
+ }
2987
+ }
2988
+ },
2989
+ placement: {
2990
+ start: {
2991
+ positioner: {
2992
+ justifyContent: "flex-start",
2993
+ alignItems: "stretch"
2994
+ },
2995
+ content: {
2996
+ _open: {
2997
+ animationName: {
2998
+ base: "slide-from-left-full, fade-in",
2999
+ _rtl: "slide-from-right-full, fade-in"
3000
+ }
3001
+ },
3002
+ _closed: {
3003
+ animationName: {
3004
+ base: "slide-to-left-full, fade-out",
3005
+ _rtl: "slide-to-right-full, fade-out"
3006
+ }
3007
+ }
3008
+ }
3009
+ },
3010
+ end: {
3011
+ positioner: {
3012
+ justifyContent: "flex-end",
3013
+ alignItems: "stretch"
3014
+ },
3015
+ content: {
3016
+ _open: {
3017
+ animationName: {
3018
+ base: "slide-from-right-full, fade-in",
3019
+ _rtl: "slide-from-left-full, fade-in"
3020
+ }
3021
+ },
3022
+ _closed: {
3023
+ animationName: {
3024
+ base: "slide-to-right-full, fade-out",
3025
+ _rtl: "slide-to-left-full, fade-out"
3026
+ }
3027
+ }
3028
+ }
3029
+ },
3030
+ top: {
3031
+ positioner: {
3032
+ justifyContent: "stretch",
3033
+ alignItems: "flex-start"
3034
+ },
3035
+ content: {
3036
+ maxW: "100%",
3037
+ _open: { animationName: "slide-from-top-full, fade-in" },
3038
+ _closed: { animationName: "slide-to-top-full, fade-out" }
3039
+ }
3040
+ },
3041
+ bottom: {
3042
+ positioner: {
3043
+ justifyContent: "stretch",
3044
+ alignItems: "flex-end"
3045
+ },
3046
+ content: {
3047
+ maxW: "100%",
3048
+ _open: { animationName: "slide-from-bottom-full, fade-in" },
3049
+ _closed: { animationName: "slide-to-bottom-full, fade-out" }
3050
+ }
3051
+ }
3052
+ }
3053
+ }
3054
+ });
3055
+ var tabs2 = defineSlotRecipe({
3056
+ slots: anatomy.tabsAnatomy.keys(),
3057
+ className: "tabs",
3058
+ base: {
3059
+ root: {
3060
+ position: "relative",
3061
+ display: "flex",
3062
+ alignItems: "start",
3063
+ _horizontal: {
3064
+ flexDirection: "column",
3065
+ gap: "2"
3066
+ },
3067
+ _vertical: {
3068
+ flexDirection: "row",
3069
+ gap: "4"
3070
+ }
3071
+ },
3072
+ list: {
3073
+ display: "flex",
3074
+ position: "relative",
3075
+ isolation: "isolate",
3076
+ _horizontal: {
3077
+ flexDirection: "row"
3078
+ },
3079
+ _vertical: {
3080
+ flexDirection: "column"
3081
+ }
3082
+ },
3083
+ trigger: {
3084
+ alignItems: "center",
3085
+ cursor: "pointer",
3086
+ display: "flex",
3087
+ fontWeight: "semibold",
3088
+ outline: "0",
3089
+ position: "relative",
3090
+ _focusVisible: {
3091
+ zIndex: 1,
3092
+ focusVisibleRing: "outside"
3093
+ },
3094
+ _disabled: {
3095
+ layerStyle: "disabled"
3096
+ }
3097
+ },
3098
+ content: {
3099
+ focusVisibleRing: "inside",
3100
+ _horizontal: {
3101
+ width: "100%"
3102
+ },
3103
+ _vertical: {
3104
+ height: "100%"
3105
+ }
3106
+ },
3107
+ indicator: {
3108
+ width: "var(--width)",
3109
+ height: "var(--height)",
3110
+ zIndex: -1
3111
+ }
3112
+ },
3113
+ variants: {
3114
+ size: {
3115
+ xs: {
3116
+ list: { gap: "1" },
3117
+ trigger: { h: "8", minW: "8", textStyle: "xs", px: "3", gap: "2" }
3118
+ },
3119
+ sm: {
3120
+ list: { gap: "1" },
3121
+ trigger: { h: "9", minW: "9", textStyle: "sm", px: "3.5", gap: "2" }
3122
+ },
3123
+ md: {
3124
+ list: { gap: "1" },
3125
+ trigger: { h: "10", minW: "10", textStyle: "sm", px: "4", gap: "2" }
3126
+ },
3127
+ lg: {
3128
+ list: { gap: "1" },
3129
+ trigger: { h: "11", minW: "11", textStyle: "md", px: "4.5", gap: "2" }
3130
+ }
3131
+ },
3132
+ variant: {
3133
+ line: {
3134
+ root: {
3135
+ alignItems: "stretch"
3136
+ },
3137
+ list: {
3138
+ _horizontal: {
3139
+ borderBottomWidth: "thin"
3140
+ },
3141
+ _vertical: {
3142
+ borderStartWidth: "thin"
3143
+ }
3144
+ },
3145
+ indicator: {
3146
+ background: "colorPalette.solid.bg",
3147
+ _horizontal: {
3148
+ bottom: "0",
3149
+ height: "xxs",
3150
+ transform: "translateY(1px)"
3151
+ },
3152
+ _vertical: {
3153
+ left: "0",
3154
+ width: "xxs",
3155
+ transform: "translateX(-1px)"
3156
+ }
3157
+ },
3158
+ trigger: {
3159
+ color: "fg.muted",
3160
+ _selected: {
3161
+ color: "colorPalette.plain.fg"
3162
+ }
3163
+ }
3164
+ },
3165
+ subtle: {
3166
+ trigger: {
3167
+ color: "fg.muted",
3168
+ _selected: {
3169
+ color: "colorPalette.subtle.fg"
3170
+ }
3171
+ },
3172
+ indicator: {
3173
+ bg: "colorPalette.subtle.bg",
3174
+ color: "colorPalette.subtle.fg",
3175
+ borderRadius: "l2"
3176
+ }
3177
+ },
3178
+ enclosed: {
3179
+ list: {
3180
+ bg: {
3181
+ _light: "gray.2",
3182
+ _dark: "gray.1"
3183
+ },
3184
+ boxShadow: "inset 0 0 0px 1px var(--shadow-color)",
3185
+ boxShadowColor: "border",
3186
+ borderRadius: "l3",
3187
+ p: "1"
3188
+ },
3189
+ trigger: {
3190
+ color: "fg.muted",
3191
+ _selected: {
3192
+ color: "colorPalette.surface.fg"
3193
+ }
3194
+ },
3195
+ indicator: {
3196
+ borderRadius: "l2",
3197
+ boxShadow: {
3198
+ _light: "xs",
3199
+ _dark: "none"
3200
+ },
3201
+ bg: {
3202
+ _light: "white",
3203
+ _dark: "gray.2"
3204
+ }
3205
+ }
3206
+ }
3207
+ },
3208
+ fitted: {
3209
+ true: {
3210
+ root: {
3211
+ alignItems: "stretch"
3212
+ },
3213
+ trigger: {
3214
+ flex: 1,
3215
+ textAlign: "center",
3216
+ justifyContent: "center"
3217
+ }
3218
+ }
3219
+ }
3220
+ },
3221
+ defaultVariants: {
3222
+ size: "md",
3223
+ variant: "line"
3224
+ }
3225
+ });
3226
+ var switchRecipe2 = defineSlotRecipe({
3227
+ className: "switchComponent",
3228
+ jsx: ["Switch", /Switch\.+/],
3229
+ slots: anatomy.switchAnatomy.extendWith("indicator").keys(),
3230
+ base: {
3231
+ root: {
3232
+ display: "inline-flex",
3233
+ alignItems: "center",
3234
+ position: "relative",
3235
+ verticalAlign: "middle",
3236
+ "--switch-diff": "calc(var(--switch-width) - var(--switch-height))",
3237
+ "--switch-x": {
3238
+ base: "var(--switch-diff)",
3239
+ _rtl: "calc(var(--switch-diff) * -1)"
3240
+ }
3241
+ },
3242
+ label: {
3243
+ fontWeight: "medium",
3244
+ userSelect: "none",
3245
+ lineHeight: "1"
3246
+ },
3247
+ indicator: {
3248
+ position: "absolute",
3249
+ height: "var(--switch-height)",
3250
+ width: "var(--switch-height)",
3251
+ fontSize: "var(--switch-indicator-font-size)",
3252
+ fontWeight: "medium",
3253
+ flexShrink: 0,
3254
+ userSelect: "none",
3255
+ display: "grid",
3256
+ placeContent: "center",
3257
+ transition: "inset-inline-start 0.12s ease",
3258
+ insetInlineStart: "calc(var(--switch-x) - {spacing.xxs})",
3259
+ _checked: {
3260
+ insetInlineStart: "xxs"
3261
+ }
3262
+ },
3263
+ control: {
3264
+ display: "inline-flex",
3265
+ gap: "sm",
3266
+ flexShrink: 0,
3267
+ justifyContent: "flex-start",
3268
+ cursor: "pointer",
3269
+ borderRadius: "full",
3270
+ position: "relative",
3271
+ width: "var(--switch-width)",
3272
+ height: "var(--switch-height)",
3273
+ transition: "backgrounds",
3274
+ focusVisibleRing: "outside",
3275
+ _disabled: {
3276
+ layerStyle: "disabled"
3277
+ }
3278
+ },
3279
+ thumb: {
3280
+ display: "flex",
3281
+ alignItems: "center",
3282
+ justifyContent: "center",
3283
+ flexShrink: 0,
3284
+ transitionProperty: "translate",
3285
+ transitionDuration: "fast",
3286
+ borderRadius: "inherit",
3287
+ _checked: {
3288
+ translate: "var(--switch-x) 0"
3289
+ }
3290
+ }
3291
+ },
3292
+ defaultVariants: {
3293
+ variant: "solid",
3294
+ size: "md"
3295
+ },
3296
+ variants: {
3297
+ variant: {
3298
+ solid: {
3299
+ control: {
3300
+ borderRadius: "full",
3301
+ bg: "neutral.subtle.bg",
3302
+ focusVisibleRing: "outside",
3303
+ _checked: {
3304
+ bg: "colorPalette.solid.bg"
3305
+ }
3306
+ },
3307
+ thumb: {
3308
+ bg: "white",
3309
+ _checked: {
3310
+ bg: "colorPalette.solid.fg"
3311
+ },
3312
+ width: "var(--switch-height)",
3313
+ height: "var(--switch-height)",
3314
+ scale: "0.8",
3315
+ boxShadow: "xs"
3316
+ }
3317
+ }
3318
+ },
3319
+ size: {
3320
+ xs: {
3321
+ root: {
3322
+ gap: "2",
3323
+ "--switch-width": "sizes.8",
3324
+ "--switch-height": "sizes.4",
3325
+ "--switch-indicator-font-size": "fontSizes.xs"
3326
+ },
3327
+ label: { fontSize: "sm" }
3328
+ },
3329
+ sm: {
3330
+ root: {
3331
+ gap: "2",
3332
+ "--switch-width": "sizes.9",
3333
+ "--switch-height": "sizes.4.5",
3334
+ "--switch-indicator-font-size": "fontSizes.xs"
3335
+ },
3336
+ label: { fontSize: "sm" }
3337
+ },
3338
+ md: {
3339
+ root: {
3340
+ gap: "3",
3341
+ "--switch-width": "sizes.10",
3342
+ "--switch-height": "sizes.5",
3343
+ "--switch-indicator-font-size": "fontSizes.sm"
3344
+ },
3345
+ label: { fontSize: "md" }
3346
+ },
3347
+ lg: {
3348
+ root: {
3349
+ gap: "3",
3350
+ "--switch-width": "sizes.11",
3351
+ "--switch-height": "sizes.5.5",
3352
+ "--switch-indicator-font-size": "fontSizes.md"
3353
+ },
3354
+ label: { fontSize: "lg" }
3355
+ }
3356
+ }
3357
+ }
3358
+ });
3359
+ var checkbox2 = defineSlotRecipe({
3360
+ slots: anatomy.checkboxAnatomy.keys(),
3361
+ className: "checkbox",
3362
+ base: {
3363
+ root: {
3364
+ display: "inline-flex",
3365
+ gap: "2",
3366
+ alignItems: "center",
3367
+ verticalAlign: "top",
3368
+ position: "relative",
3369
+ _disabled: {
3370
+ layerStyle: "disabled"
3371
+ }
3372
+ },
3373
+ control: {
3374
+ display: "inline-flex",
3375
+ alignItems: "center",
3376
+ justifyContent: "center",
3377
+ flexShrink: "0",
3378
+ borderWidth: "1px",
3379
+ borderColor: "border",
3380
+ borderRadius: "l1",
3381
+ cursor: "pointer",
3382
+ focusVisibleRing: "outside",
3383
+ bg: "canvas",
3384
+ _icon: {
3385
+ boxSize: "full"
3386
+ }
3387
+ },
3388
+ label: {
3389
+ fontWeight: "medium",
3390
+ userSelect: "none"
3391
+ }
3392
+ },
3393
+ variants: {
3394
+ size: {
3395
+ sm: {
3396
+ root: { gap: "2" },
3397
+ label: { textStyle: "sm" },
3398
+ control: { boxSize: "4.5", _icon: { boxSize: "3" } }
3399
+ },
3400
+ md: {
3401
+ root: { gap: "3" },
3402
+ label: { textStyle: "md" },
3403
+ control: { boxSize: "5", _icon: { boxSize: "3.5" } }
3404
+ },
3405
+ lg: {
3406
+ root: { gap: "3" },
3407
+ label: { textStyle: "lg" },
3408
+ control: { boxSize: "5.5", _icon: { boxSize: "4" } }
3409
+ }
3410
+ },
3411
+ variant: {
3412
+ solid: {
3413
+ control: {
3414
+ borderColor: "border",
3415
+ _checked: {
3416
+ bg: "colorPalette.solid.bg",
3417
+ borderColor: "colorPalette.solid.bg",
3418
+ color: "colorPalette.solid.fg"
3419
+ },
3420
+ _invalid: {
3421
+ background: "error"
3422
+ }
3423
+ }
3424
+ },
3425
+ surface: {
3426
+ control: {
3427
+ bg: "colorPalette.surface.bg",
3428
+ borderWidth: "1px",
3429
+ borderColor: "colorPalette.surface.border",
3430
+ color: "colorPalette.surface.fg"
3431
+ }
3432
+ },
3433
+ subtle: {
3434
+ control: {
3435
+ bg: "colorPalette.subtle.bg",
3436
+ color: "colorPalette.subtle.fg"
3437
+ }
3438
+ },
3439
+ outline: {
3440
+ control: {
3441
+ borderWidth: "1px",
3442
+ borderColor: "colorPalette.outline.border",
3443
+ color: "colorPalette.outline.fg",
3444
+ _checked: {
3445
+ borderColor: "colorPalette.solid.bg"
3446
+ }
3447
+ }
3448
+ },
3449
+ plain: {
3450
+ control: {
3451
+ color: "colorPalette.plain.fg"
3452
+ }
3453
+ }
3454
+ }
3455
+ },
3456
+ defaultVariants: {
3457
+ variant: "solid",
3458
+ size: "md"
3459
+ }
3460
+ });
3461
+ var radioGroup2 = defineSlotRecipe({
3462
+ className: "radio-group",
3463
+ slots: anatomy.radioGroupAnatomy.keys(),
3464
+ base: {
3465
+ root: {
3466
+ display: "flex",
3467
+ flexDirection: "column",
3468
+ gap: "3"
3469
+ },
3470
+ itemControl: {
3471
+ alignItems: "center",
3472
+ borderRadius: "full",
3473
+ display: "inline-flex",
3474
+ flexShrink: 0,
3475
+ justifyContent: "center",
3476
+ verticalAlign: "top",
3477
+ boxShadow: "inset 0 0 0 1px var(--shadow-color)",
3478
+ boxShadowColor: "gray.surface.border",
3479
+ _after: {
3480
+ content: '""',
3481
+ display: "block",
3482
+ borderRadius: "full",
3483
+ boxSize: "40%"
3484
+ },
3485
+ _focusVisible: {
3486
+ focusVisibleRing: "outside"
3487
+ },
3488
+ _checked: {
3489
+ bg: "colorPalette.solid.bg",
3490
+ color: "colorPalette.solid.fg",
3491
+ boxShadowColor: "colorPalette.solid.bg",
3492
+ _after: {
3493
+ background: "colorPalette.solid.fg"
3494
+ }
3495
+ }
3496
+ },
3497
+ item: {
3498
+ alignItems: "center",
3499
+ cursor: "pointer",
3500
+ display: "flex",
3501
+ _disabled: {
3502
+ layerStyle: "disabled"
3503
+ }
3504
+ },
3505
+ itemText: {
3506
+ fontWeight: "medium",
3507
+ userSelect: "none"
3508
+ },
3509
+ label: {
3510
+ fontWeight: "semibold",
3511
+ textStyle: "sm",
3512
+ mb: "1"
3513
+ }
3514
+ },
3515
+ defaultVariants: {
3516
+ variant: "solid",
3517
+ size: "md",
3518
+ orientation: "vertical"
3519
+ },
3520
+ variants: {
3521
+ variant: {
3522
+ solid: {
3523
+ itemControl: {}
3524
+ }
3525
+ },
3526
+ size: {
3527
+ sm: {
3528
+ item: { gap: "2" },
3529
+ itemControl: { boxSize: "4.5" },
3530
+ itemText: { textStyle: "sm" }
3531
+ },
3532
+ md: {
3533
+ item: { gap: "3" },
3534
+ itemControl: { boxSize: "5" },
3535
+ itemText: { textStyle: "md" }
3536
+ },
3537
+ lg: {
3538
+ item: { gap: "3" },
3539
+ itemControl: { boxSize: "5.5" },
3540
+ itemText: { textStyle: "lg" }
3541
+ }
3542
+ },
3543
+ orientation: {
3544
+ horizontal: {
3545
+ root: {
3546
+ flexDirection: "row"
3547
+ }
3548
+ },
3549
+ vertical: {
3550
+ root: {
3551
+ flexDirection: "column"
3552
+ }
3553
+ }
3554
+ }
3555
+ }
3556
+ });
3557
+ var select2 = defineSlotRecipe({
3558
+ className: "select",
3559
+ slots: anatomy.selectAnatomy.extendWith("indicatorGroup").keys(),
3560
+ base: {
3561
+ root: {
3562
+ display: "flex",
3563
+ flexDirection: "column",
3564
+ gap: "1.5",
3565
+ width: "full"
3566
+ },
3567
+ content: {
3568
+ background: "gray.surface.bg",
3569
+ borderRadius: "l2",
3570
+ boxShadow: "md",
3571
+ display: "flex",
3572
+ flexDirection: "column",
3573
+ maxH: "min(var(--available-height), {sizes.96})",
3574
+ minWidth: "max(var(--reference-width), {sizes.40})",
3575
+ outline: 0,
3576
+ overflowY: "auto",
3577
+ zIndex: "dropdown",
3578
+ _open: {
3579
+ animationStyle: "slide-fade-in",
3580
+ animationDuration: "slow"
3581
+ },
3582
+ _closed: {
3583
+ animationStyle: "slide-fade-out",
3584
+ animationDuration: "fastest"
3585
+ }
3586
+ },
3587
+ item: {
3588
+ alignItems: "center",
3589
+ borderRadius: "l1",
3590
+ cursor: "pointer",
3591
+ display: "flex",
3592
+ justifyContent: "space-between",
3593
+ userSelect: "none",
3594
+ _hover: {
3595
+ background: "gray.surface.bg.hover"
3596
+ },
3597
+ _highlighted: {
3598
+ background: "gray.surface.bg.hover"
3599
+ },
3600
+ _selected: {},
3601
+ _disabled: {
3602
+ layerStyle: "disabled"
3603
+ }
3604
+ },
3605
+ indicatorGroup: {
3606
+ display: "flex",
3607
+ alignItems: "center",
3608
+ gap: "1",
3609
+ pointerEvents: "none"
3610
+ },
3611
+ indicator: {
3612
+ display: "flex",
3613
+ alignItems: "center",
3614
+ justifyContent: "center",
3615
+ color: { base: "fg.subtle" }
3616
+ },
3617
+ itemGroupLabel: {
3618
+ alignItems: "flex-start",
3619
+ color: "fg.subtle",
3620
+ display: "flex",
3621
+ flexDirection: "column",
3622
+ fontWeight: "medium",
3623
+ gap: "1px",
3624
+ justifyContent: "center",
3625
+ _after: {
3626
+ content: '""',
3627
+ width: "100%",
3628
+ height: "1px",
3629
+ bg: "gray.4"
3630
+ }
3631
+ },
3632
+ itemIndicator: {
3633
+ color: "colorPalette.plain.fg"
3634
+ },
3635
+ label: {
3636
+ fontWeight: "medium",
3637
+ userSelect: "none",
3638
+ textStyle: "sm"
3639
+ },
3640
+ trigger: {
3641
+ alignItems: "center",
3642
+ borderRadius: "l2",
3643
+ cursor: "pointer",
3644
+ display: "flex",
3645
+ justifyContent: "space-between",
3646
+ minWidth: "0",
3647
+ outline: "0",
3648
+ textAlign: "start",
3649
+ transition: "common",
3650
+ userSelect: "none",
3651
+ width: "full",
3652
+ _placeholderShown: {
3653
+ color: "fg.subtle"
3654
+ },
3655
+ _disabled: {
3656
+ layerStyle: "disabled"
3657
+ }
3658
+ },
3659
+ valueText: {
3660
+ overflow: "hidden",
3661
+ textOverflow: "ellipsis",
3662
+ whiteSpace: "nowrap",
3663
+ color: "fg.default"
3664
+ }
3665
+ },
3666
+ defaultVariants: {
3667
+ size: "md",
3668
+ variant: "outline"
3669
+ },
3670
+ variants: {
3671
+ variant: {
3672
+ outline: {
3673
+ trigger: {
3674
+ borderWidth: "thin",
3675
+ borderColor: "gray.outline.border",
3676
+ focusVisibleRing: "inside"
3677
+ }
3678
+ },
3679
+ surface: {
3680
+ trigger: {
3681
+ bg: "gray.surface.bg",
3682
+ borderWidth: "thin",
3683
+ borderColor: "gray.surface.border",
3684
+ focusVisibleRing: "inside"
3685
+ }
3686
+ }
3687
+ },
3688
+ size: {
3689
+ xs: {
3690
+ content: { p: "1", gap: "0.5", textStyle: "sm" },
3691
+ item: { px: "1", minH: "8", gap: "2", _icon: { boxSize: "3.5" } },
3692
+ itemGroup: { gap: "0.5" },
3693
+ itemGroupLabel: { px: "1", height: "8" },
3694
+ trigger: { px: "2", h: "8", textStyle: "sm", gap: "2", _icon: { boxSize: "3.5" } }
3695
+ },
3696
+ sm: {
3697
+ content: { p: "1", gap: "0.5", textStyle: "sm" },
3698
+ item: { px: "1.5", minH: "9", gap: "2", _icon: { boxSize: "4" } },
3699
+ itemGroup: { gap: "0.5" },
3700
+ itemGroupLabel: { px: "1.5", height: "9" },
3701
+ trigger: { px: "2.5", h: "9", textStyle: "sm", gap: "2", _icon: { boxSize: "4" } }
3702
+ },
3703
+ md: {
3704
+ content: { p: "1", gap: "0.5", textStyle: "md" },
3705
+ item: { px: "2", minH: "10", gap: "2", _icon: { boxSize: "4" } },
3706
+ itemGroup: { gap: "0.5" },
3707
+ itemGroupLabel: { px: "2", height: "10" },
3708
+ trigger: { px: "3", h: "10", textStyle: "md", gap: "2", _icon: { boxSize: "4" } }
3709
+ },
3710
+ lg: {
3711
+ content: { p: "1", gap: "0.5", textStyle: "md" },
3712
+ item: { px: "2.5", minH: "11", gap: "2", _icon: { boxSize: "4.5" } },
3713
+ itemGroup: { gap: "0.5" },
3714
+ itemGroupLabel: { px: "2.5", height: "11" },
3715
+ trigger: { px: "3.5", h: "11", textStyle: "md", gap: "2", _icon: { boxSize: "4.5" } }
3716
+ },
3717
+ xl: {
3718
+ content: { p: "1", gap: "1", textStyle: "lg" },
3719
+ item: { px: "3", minH: "12", gap: "3", _icon: { boxSize: "5" } },
3720
+ itemGroup: { gap: "1" },
3721
+ itemGroupLabel: { px: "3", height: "12" },
3722
+ trigger: { px: "4", h: "12", textStyle: "lg", gap: "3", _icon: { boxSize: "5" } }
3723
+ }
3724
+ }
3725
+ }
3726
+ });
3727
+
3728
+ // src/preset/recipes/textarea.ts
3729
+ var textarea2 = defineRecipe({
3730
+ className: "textarea",
3731
+ base: {
3732
+ appearance: "none",
3733
+ borderRadius: "l2",
3734
+ minWidth: "0",
3735
+ outline: "0",
3736
+ position: "relative",
3737
+ transition: "colors",
3738
+ transitionProperty: "box-shadow, border-color",
3739
+ width: "100%",
3740
+ _disabled: {
3741
+ layerStyle: "disabled"
3742
+ }
3743
+ },
3744
+ defaultVariants: {
3745
+ size: "md",
3746
+ variant: "surface"
3747
+ },
3748
+ variants: {
3749
+ variant: {
3750
+ outline: {
3751
+ borderWidth: "thin",
3752
+ borderColor: "gray.outline.border",
3753
+ focusVisibleRing: "inside",
3754
+ _invalid: {
3755
+ borderColor: "error",
3756
+ focusRingColor: "error"
3757
+ }
3758
+ },
3759
+ surface: {
3760
+ bg: "gray.surface.bg",
3761
+ borderWidth: "thin",
3762
+ borderColor: "gray.surface.border",
3763
+ focusVisibleRing: "inside",
3764
+ _invalid: {
3765
+ borderColor: "error",
3766
+ focusRingColor: "error"
3767
+ }
3768
+ },
3769
+ subtle: {
3770
+ borderWidth: "thin",
3771
+ borderColor: "transparent",
3772
+ bg: "gray.subtle.bg",
3773
+ color: "gray.subtle.fg",
3774
+ focusVisibleRing: "inside",
3775
+ _invalid: {
3776
+ borderColor: "error",
3777
+ focusRingColor: "error"
3778
+ }
3779
+ },
3780
+ flushed: {
3781
+ borderBottomWidth: "thin",
3782
+ borderBottomColor: "gray.outline.border",
3783
+ borderRadius: "0",
3784
+ color: "fg.default",
3785
+ px: "0",
3786
+ _invalid: {
3787
+ borderColor: "error"
3788
+ },
3789
+ _focus: {
3790
+ borderColor: "colorPalette.solid.bg",
3791
+ boxShadowColor: "colorPalette.solid.bg",
3792
+ boxShadow: "0 1px 0 0 var(--shadow-color)",
3793
+ _invalid: {
3794
+ borderColor: "error",
3795
+ boxShadowColor: "error"
3796
+ }
3797
+ }
3798
+ }
3799
+ },
3800
+ size: {
3801
+ xs: { textStyle: "sm", px: "2", py: "sm", scrollPaddingBottom: "sm" },
3802
+ sm: { textStyle: "sm", px: "2.5", py: "sm", scrollPaddingBottom: "sm" },
3803
+ md: { textStyle: "md", px: "3", py: "sm", scrollPaddingBottom: "sm" },
3804
+ lg: { textStyle: "md", px: "3.5", py: "sm", scrollPaddingBottom: "sm" },
3805
+ xl: { textStyle: "lg", px: "4", py: "sm", scrollPaddingBottom: "sm" }
3806
+ }
3807
+ }
3808
+ });
3809
+ var slider2 = defineSlotRecipe({
3810
+ className: "slider",
3811
+ slots: anatomy.sliderAnatomy.extendWith("markerIndicator").keys(),
3812
+ base: {
3813
+ root: {
3814
+ display: "flex",
3815
+ flexDirection: "column",
3816
+ gap: "1",
3817
+ textStyle: "sm",
3818
+ position: "relative",
3819
+ isolation: "isolate",
3820
+ touchAction: "none",
3821
+ width: "full"
3822
+ },
3823
+ label: {
3824
+ fontWeight: "medium",
3825
+ textStyle: "sm"
3826
+ },
3827
+ control: {
3828
+ display: "inline-flex",
3829
+ alignItems: "center"
3830
+ },
3831
+ track: {
3832
+ overflow: "hidden",
3833
+ borderRadius: "full",
3834
+ flex: "1"
3835
+ },
3836
+ range: {
3837
+ width: "inherit",
3838
+ height: "inherit"
3839
+ },
3840
+ markerGroup: {
3841
+ position: "absolute!",
3842
+ zIndex: "1"
3843
+ },
3844
+ marker: {
3845
+ display: "flex",
3846
+ alignItems: "center",
3847
+ gap: "calc(var(--slider-thumb-size) / 2)",
3848
+ color: "fg.muted",
3849
+ textStyle: "xs"
3850
+ },
3851
+ markerIndicator: {
3852
+ width: "var(--slider-marker-size)",
3853
+ height: "var(--slider-marker-size)",
3854
+ borderRadius: "full",
3855
+ bg: "colorPalette.solid.fg"
3856
+ },
3857
+ thumb: {
3858
+ width: "var(--slider-thumb-size)",
3859
+ height: "var(--slider-thumb-size)",
3860
+ display: "flex",
3861
+ alignItems: "center",
3862
+ justifyContent: "center",
3863
+ outline: 0,
3864
+ zIndex: "2",
3865
+ borderRadius: "full",
3866
+ _focusVisible: {
3867
+ ring: "2px",
3868
+ ringColor: "colorPalette.solid",
3869
+ ringOffset: "2px",
3870
+ ringOffsetColor: "bg"
3871
+ }
3872
+ }
3873
+ },
3874
+ defaultVariants: {
3875
+ size: "md",
3876
+ variant: "outline",
3877
+ orientation: "horizontal"
3878
+ },
3879
+ variants: {
3880
+ size: {
3881
+ sm: {
3882
+ root: {
3883
+ "--slider-thumb-size": "sizes.5",
3884
+ "--slider-track-size": "sizes.2",
3885
+ "--slider-marker-center": "{spacing.sm}",
3886
+ "--slider-marker-size": "sizes.1",
3887
+ "--slider-marker-inset": "{spacing.xs}"
3888
+ }
3889
+ },
3890
+ md: {
3891
+ root: {
3892
+ "--slider-thumb-size": "sizes.5",
3893
+ "--slider-track-size": "sizes.2",
3894
+ "--slider-marker-center": "{spacing.sm}",
3895
+ "--slider-marker-size": "sizes.1",
3896
+ "--slider-marker-inset": "{spacing.xs}"
3897
+ }
3898
+ },
3899
+ lg: {
3900
+ root: {
3901
+ "--slider-thumb-size": "sizes.5",
3902
+ "--slider-track-size": "sizes.2",
3903
+ "--slider-marker-center": "{spacing.sm}",
3904
+ "--slider-marker-size": "sizes.1",
3905
+ "--slider-marker-inset": "{spacing.xs}"
3906
+ }
3907
+ }
3908
+ },
3909
+ variant: {
3910
+ outline: {
3911
+ thumb: {
3912
+ bg: "gray.surface.bg",
3913
+ borderWidth: "medium",
3914
+ borderColor: "colorPalette.solid.bg",
3915
+ boxShadow: "xs"
3916
+ },
3917
+ range: {
3918
+ bg: "colorPalette.solid.bg"
3919
+ },
3920
+ track: {
3921
+ bg: "border"
3922
+ }
3923
+ }
3924
+ },
3925
+ orientation: {
3926
+ vertical: {
3927
+ root: {
3928
+ display: "inline-flex"
3929
+ },
3930
+ control: {
3931
+ flexDirection: "column",
3932
+ height: "100%",
3933
+ minWidth: "var(--slider-thumb-size)",
3934
+ "&[data-has-mark-label]": {
3935
+ marginEnd: "4"
3936
+ }
3937
+ },
3938
+ track: {
3939
+ width: "var(--slider-track-size)"
3940
+ },
3941
+ thumb: {
3942
+ left: "50%",
3943
+ translate: "-50% 0"
3944
+ },
3945
+ markerGroup: {
3946
+ insetStart: "var(--slider-marker-center)",
3947
+ insetBlock: "var(--slider-marker-inset)"
3948
+ },
3949
+ marker: {
3950
+ flexDirection: "row"
3951
+ }
3952
+ },
3953
+ horizontal: {
3954
+ control: {
3955
+ flexDirection: "row",
3956
+ width: "100%",
3957
+ minHeight: "var(--slider-thumb-size)",
3958
+ "&[data-has-mark-label]": {
3959
+ marginBottom: "4"
3960
+ }
3961
+ },
3962
+ track: {
3963
+ height: "var(--slider-track-size)"
3964
+ },
3965
+ thumb: {
3966
+ top: "50%",
3967
+ translate: "0 -50%"
3968
+ },
3969
+ markerGroup: {
3970
+ top: "var(--slider-marker-center)",
3971
+ insetInline: "var(--slider-marker-inset)"
3972
+ },
3973
+ marker: {
3974
+ flexDirection: "column"
3975
+ }
3976
+ }
3977
+ }
3978
+ }
3979
+ });
3980
+ var avatar2 = defineSlotRecipe({
3981
+ className: "avatar",
3982
+ slots: anatomy.avatarAnatomy.keys(),
3983
+ base: {
3984
+ root: {
3985
+ display: "inline-flex",
3986
+ alignItems: "center",
3987
+ justifyContent: "center",
3988
+ fontWeight: "medium",
3989
+ position: "relative",
3990
+ verticalAlign: "top",
3991
+ flexShrink: "0",
3992
+ userSelect: "none",
3993
+ width: "var(--avatar-size)",
3994
+ height: "var(--avatar-size)",
3995
+ fontSize: "var(--avatar-font-size)",
3996
+ borderRadius: "var(--avatar-radius)"
3997
+ },
3998
+ fallback: {
3999
+ lineHeight: "1",
4000
+ textTransform: "uppercase",
4001
+ fontWeight: "medium",
4002
+ fontSize: "var(--avatar-font-size)",
4003
+ borderRadius: "var(--avatar-radius)"
4004
+ },
4005
+ image: {
4006
+ width: "100%",
4007
+ height: "100%",
4008
+ objectFit: "cover",
4009
+ borderRadius: "var(--avatar-radius)"
4010
+ }
4011
+ },
4012
+ defaultVariants: {
4013
+ size: "md",
4014
+ shape: "full",
4015
+ variant: "subtle"
4016
+ },
4017
+ variants: {
4018
+ size: {
4019
+ full: {
4020
+ root: {
4021
+ "--avatar-size": "100%",
4022
+ "--avatar-font-size": "100%"
4023
+ }
4024
+ },
4025
+ "2xs": {
4026
+ root: {
4027
+ "--avatar-font-size": "fontSizes.2xs",
4028
+ "--avatar-size": "sizes.6"
4029
+ },
4030
+ fallback: {
4031
+ _icon: { width: "3", height: "3" }
4032
+ }
4033
+ },
4034
+ xs: {
4035
+ root: {
4036
+ "--avatar-font-size": "fontSizes.xs",
4037
+ "--avatar-size": "sizes.8"
4038
+ },
4039
+ fallback: {
4040
+ _icon: { width: "4", height: "4" }
4041
+ }
4042
+ },
4043
+ sm: {
4044
+ root: {
4045
+ "--avatar-font-size": "fontSizes.sm",
4046
+ "--avatar-size": "sizes.9"
4047
+ },
4048
+ fallback: {
4049
+ _icon: { width: "4.5", height: "4.5" }
4050
+ }
4051
+ },
4052
+ md: {
4053
+ root: {
4054
+ "--avatar-font-size": "fontSizes.md",
4055
+ "--avatar-size": "sizes.10"
4056
+ },
4057
+ fallback: {
4058
+ _icon: { width: "5", height: "5" }
4059
+ }
4060
+ },
4061
+ lg: {
4062
+ root: {
4063
+ "--avatar-font-size": "fontSizes.md",
4064
+ "--avatar-size": "sizes.11"
4065
+ },
4066
+ fallback: {
4067
+ _icon: { width: "5.5", height: "5.5" }
4068
+ }
4069
+ },
4070
+ xl: {
4071
+ root: {
4072
+ "--avatar-font-size": "fontSizes.lg",
4073
+ "--avatar-size": "sizes.12"
4074
+ },
4075
+ fallback: {
4076
+ _icon: { width: "6", height: "6" }
4077
+ }
4078
+ },
4079
+ "2xl": {
4080
+ root: {
4081
+ "--avatar-font-size": "fontSizes.xl",
4082
+ "--avatar-size": "sizes.16"
4083
+ },
4084
+ fallback: {
4085
+ _icon: { width: "8", height: "8" }
4086
+ }
4087
+ }
4088
+ },
4089
+ variant: {
4090
+ solid: {
4091
+ root: {
4092
+ bg: "colorPalette.solid.bg",
4093
+ color: "colorPalette.solid.fg"
4094
+ }
4095
+ },
4096
+ surface: {
4097
+ root: {
4098
+ bg: "colorPalette.surface.bg",
4099
+ borderWidth: "1px",
4100
+ borderColor: "colorPalette.surface.border",
4101
+ color: "colorPalette.surface.fg"
4102
+ }
4103
+ },
4104
+ subtle: {
4105
+ root: {
4106
+ bg: "colorPalette.subtle.bg",
4107
+ color: "colorPalette.subtle.fg"
4108
+ }
4109
+ },
4110
+ outline: {
4111
+ root: {
4112
+ borderWidth: "1px",
4113
+ borderColor: "colorPalette.outline.border",
4114
+ color: "colorPalette.outline.fg"
4115
+ }
4116
+ }
4117
+ },
4118
+ shape: {
4119
+ square: {},
4120
+ rounded: {
4121
+ root: { "--avatar-radius": "radii.l3" }
4122
+ },
4123
+ full: {
4124
+ root: { "--avatar-radius": "radii.full" }
4125
+ }
4126
+ }
4127
+ }
4128
+ });
4129
+
4130
+ // src/preset/recipes/badge.ts
4131
+ var badge2 = defineRecipe({
4132
+ className: "badge",
4133
+ base: {
4134
+ display: "inline-flex",
4135
+ alignItems: "center",
4136
+ borderRadius: "l2",
4137
+ lineHeight: "1",
4138
+ fontWeight: "medium",
4139
+ fontVariantNumeric: "tabular-nums",
4140
+ whiteSpace: "nowrap",
4141
+ userSelect: "none"
4142
+ },
4143
+ defaultVariants: {
4144
+ variant: "subtle",
4145
+ size: "md"
4146
+ },
4147
+ variants: {
4148
+ variant: {
4149
+ solid: {
4150
+ bg: "colorPalette.solid.bg",
4151
+ color: "colorPalette.solid.fg"
4152
+ },
4153
+ surface: {
4154
+ bg: "colorPalette.surface.bg",
4155
+ borderWidth: "1px",
4156
+ borderColor: "colorPalette.surface.border",
4157
+ color: "colorPalette.surface.fg"
4158
+ },
4159
+ subtle: {
4160
+ bg: "colorPalette.subtle.bg",
4161
+ color: "colorPalette.subtle.fg"
4162
+ },
4163
+ outline: {
4164
+ borderWidth: "1px",
4165
+ borderColor: "colorPalette.outline.border",
4166
+ color: "colorPalette.outline.fg"
4167
+ }
4168
+ },
4169
+ size: {
4170
+ sm: { fontSize: "xs", px: "1.5", h: "4.5", gap: "0.5", _icon: { boxSize: "2.5" } },
4171
+ md: { fontSize: "xs", px: "2", h: "5", gap: "1", _icon: { boxSize: "3" } },
4172
+ lg: { fontSize: "xs", px: "2.5", h: "5.5", gap: "1", _icon: { boxSize: "3.5" } },
4173
+ xl: { fontSize: "sm", px: "2.5", h: "6", gap: "1.5", _icon: { boxSize: "4" } },
4174
+ "2xl": { fontSize: "md", px: "3", h: "7", gap: "1.5", _icon: { boxSize: "4.5" } }
4175
+ }
4176
+ }
4177
+ });
4178
+ var progress2 = defineSlotRecipe({
4179
+ slots: anatomy.progressAnatomy.keys(),
4180
+ className: "progress",
4181
+ base: {
4182
+ root: {
4183
+ textStyle: "sm",
4184
+ position: "relative"
4185
+ },
4186
+ track: {
4187
+ overflow: "hidden",
4188
+ position: "relative"
4189
+ },
4190
+ range: {
4191
+ display: "flex",
4192
+ alignItems: "center",
4193
+ justifyContent: "center",
4194
+ transitionProperty: "width, height",
4195
+ transitionDuration: "slow",
4196
+ height: "100%",
4197
+ bgColor: "var(--track-color)",
4198
+ _indeterminate: {
4199
+ "--animate-from-x": "-40%",
4200
+ "--animate-to-x": "100%",
4201
+ position: "absolute",
4202
+ willChange: "left",
4203
+ minWidth: "50%",
4204
+ animation: "position 1s ease infinite normal none running",
4205
+ backgroundImage: `linear-gradient(to right, transparent 0%, var(--track-color) 50%, transparent 100%)`
4206
+ }
4207
+ },
4208
+ label: {
4209
+ display: "inline-flex",
4210
+ fontWeight: "medium",
4211
+ alignItems: "center",
4212
+ gap: "1"
4213
+ },
4214
+ valueText: {
4215
+ textStyle: "xs",
4216
+ lineHeight: "1",
4217
+ fontWeight: "medium"
4218
+ }
4219
+ },
4220
+ variants: {
4221
+ variant: {
4222
+ solid: {
4223
+ track: {
4224
+ bgColor: "gray.subtle.bg"
4225
+ },
4226
+ range: {
4227
+ bgColor: "colorPalette.solid.bg",
4228
+ color: "colorPalette.solid.fg"
4229
+ }
4230
+ },
4231
+ subtle: {
4232
+ track: {
4233
+ bgColor: "colorPalette.subtle.bg.active"
4234
+ },
4235
+ range: {
4236
+ bgColor: "colorPalette.solid.bg",
4237
+ color: "colorPalette.solid.fg"
4238
+ }
4239
+ }
4240
+ },
4241
+ shape: {
4242
+ square: {},
4243
+ rounded: {
4244
+ track: {
4245
+ borderRadius: "l1"
4246
+ }
4247
+ },
4248
+ full: {
4249
+ track: {
4250
+ borderRadius: "full"
4251
+ }
4252
+ }
4253
+ },
4254
+ striped: {
4255
+ true: {
4256
+ range: {
4257
+ backgroundImage: `linear-gradient(45deg, var(--stripe-color) 25%, transparent 25%, transparent 50%, var(--stripe-color) 50%, var(--stripe-color) 75%, transparent 75%, transparent)`,
4258
+ backgroundSize: `var(--stripe-size) var(--stripe-size)`,
4259
+ "--stripe-size": "1rem",
4260
+ "--stripe-color": {
4261
+ _light: "rgba(255, 255, 255, 0.3)",
4262
+ _dark: "rgba(0, 0, 0, 0.3)"
4263
+ }
4264
+ }
4265
+ }
4266
+ },
4267
+ animated: {
4268
+ true: {
4269
+ range: {
4270
+ "--animate-from": "var(--stripe-size)",
4271
+ animation: "bg-position 1s linear infinite"
4272
+ }
4273
+ }
4274
+ },
4275
+ size: {
4276
+ xs: { track: { h: "1.5" } },
4277
+ sm: { track: { h: "2" } },
4278
+ md: { track: { h: "2.5" } },
4279
+ lg: { track: { h: "3" } },
4280
+ xl: { track: { h: "3.5" } }
4281
+ }
4282
+ },
4283
+ defaultVariants: {
4284
+ variant: "solid",
4285
+ size: "md",
4286
+ shape: "rounded"
4287
+ }
4288
+ });
4289
+
4290
+ // src/preset/recipes/skeleton.ts
4291
+ var skeleton2 = defineRecipe({
4292
+ className: "skeleton",
4293
+ jsx: ["Skeleton", "SkeletonCircle", "SkeletonText"],
4294
+ base: {},
4295
+ variants: {
4296
+ loading: {
4297
+ true: {
4298
+ borderRadius: "l2",
4299
+ boxShadow: "none",
4300
+ backgroundClip: "padding-box",
4301
+ cursor: "default",
4302
+ color: "transparent",
4303
+ pointerEvents: "none",
4304
+ userSelect: "none",
4305
+ flexShrink: "0",
4306
+ "&::before, &::after, *": {
4307
+ visibility: "hidden"
4308
+ }
4309
+ },
4310
+ false: {
4311
+ background: "unset",
4312
+ animation: "fade-in var(--fade-duration, 0.1s) ease-out !important"
4313
+ }
4314
+ },
4315
+ circle: {
4316
+ true: {
4317
+ display: "flex",
4318
+ alignItems: "center",
4319
+ justifyContent: "center",
4320
+ flex: "0 0 auto",
4321
+ borderRadius: "9999px"
4322
+ }
4323
+ },
4324
+ variant: {
4325
+ pulse: {
4326
+ background: "gray.subtle.bg.active",
4327
+ animation: "pulse",
4328
+ animationDuration: "var(--duration, 1.2s)"
4329
+ },
4330
+ shine: {
4331
+ "--animate-from": "200%",
4332
+ "--animate-to": "-200%",
4333
+ "--start-color": "colors.gray.subtle.bg",
4334
+ "--end-color": "colors.gray.subtle.bg.active",
4335
+ backgroundImage: "linear-gradient(270deg,var(--start-color),var(--end-color),var(--end-color),var(--start-color))",
4336
+ backgroundSize: "400% 100%",
4337
+ animation: "bg-position var(--duration, 5s) ease-in-out infinite"
4338
+ },
4339
+ none: {
4340
+ animation: "none"
4341
+ }
4342
+ }
4343
+ },
4344
+ defaultVariants: {
4345
+ variant: "pulse",
4346
+ loading: true
4347
+ }
4348
+ });
4349
+ var toast2 = defineSlotRecipe({
4350
+ className: "toast",
4351
+ slots: anatomy.toastAnatomy.keys(),
4352
+ base: {
4353
+ root: {
4354
+ alignItems: "start",
4355
+ background: "gray.surface.bg",
4356
+ borderRadius: "l3",
4357
+ boxShadow: "lg",
4358
+ display: "flex",
4359
+ gap: "4",
4360
+ height: "var(--height)",
4361
+ minWidth: "sm",
4362
+ opacity: "var(--opacity)",
4363
+ overflowWrap: "anywhere",
4364
+ p: "4",
4365
+ position: "relative",
4366
+ scale: "var(--scale)",
4367
+ transitionDuration: "slow",
4368
+ transitionProperty: "translate, scale, opacity, height",
4369
+ transitionTimingFunction: "default",
4370
+ translate: "var(--x) var(--y)",
4371
+ width: "full",
4372
+ willChange: "translate, opacity, scale",
4373
+ zIndex: "var(--z-index)"
4374
+ },
4375
+ title: {
4376
+ color: "fg.default",
4377
+ fontWeight: "medium",
4378
+ textStyle: "sm"
4379
+ },
4380
+ description: {
4381
+ color: "fg.muted",
4382
+ textStyle: "sm"
4383
+ },
4384
+ actionTrigger: {
4385
+ color: "colorPalette.plain.fg",
4386
+ cursor: "pointer",
4387
+ fontWeight: "semibold",
4388
+ textStyle: "sm"
4389
+ },
4390
+ closeTrigger: {
4391
+ position: "absolute",
4392
+ top: "2",
4393
+ insetEnd: "2"
4394
+ }
4395
+ }
4396
+ });
4397
+ var dialog2 = defineSlotRecipe({
4398
+ className: "dialog",
4399
+ slots: anatomy.dialogAnatomy.extendWith("header", "body", "footer").keys(),
4400
+ base: {
4401
+ backdrop: {
4402
+ background: "neutral.a7",
4403
+ height: "100dvh",
4404
+ left: "0",
4405
+ position: "fixed",
4406
+ top: "0",
4407
+ width: "100dvw",
4408
+ zIndex: "overlay",
4409
+ _open: {
4410
+ animationDuration: "normal"
4411
+ },
4412
+ _closed: {
4413
+ animationDuration: "fast"
4414
+ }
4415
+ },
4416
+ positioner: {
4417
+ display: "flex",
4418
+ height: "100dvh",
4419
+ justifyContent: "center",
4420
+ left: 0,
4421
+ overscrollBehaviorY: "none",
4422
+ position: "fixed",
4423
+ top: 0,
4424
+ width: "100dvw",
4425
+ zIndex: "modal"
4426
+ },
4427
+ title: {
4428
+ fontWeight: "semibold",
4429
+ textStyle: "lg"
4430
+ },
4431
+ description: {
4432
+ color: "fg.muted",
4433
+ textStyle: "sm"
4434
+ },
4435
+ closeTrigger: {},
4436
+ content: {
4437
+ bg: "neutral.surface.bg",
4438
+ borderRadius: "l3",
4439
+ boxShadow: "lg",
4440
+ display: "flex",
4441
+ flexDirection: "column",
4442
+ my: "auto",
4443
+ outline: 0,
4444
+ position: "relative",
4445
+ textStyle: "sm",
4446
+ width: "100%",
4447
+ zIndex: "modal",
4448
+ py: { base: "4", md: "6" },
4449
+ gap: { base: "4", md: "6" },
4450
+ _open: {
4451
+ animationDuration: "slowest"
4452
+ },
4453
+ _closed: {
4454
+ animationDuration: "normal",
4455
+ display: "none"
4456
+ }
4457
+ },
4458
+ header: {
4459
+ display: "flex",
4460
+ flexDirection: "column",
4461
+ gap: "0.5",
4462
+ px: { base: "4", md: "6" },
4463
+ flex: "0"
4464
+ },
4465
+ body: {
4466
+ display: "flex",
4467
+ flex: "1",
4468
+ flexDirection: "column",
4469
+ alignItems: "flex-start",
4470
+ px: { base: "4", md: "6" }
4471
+ },
4472
+ footer: {
4473
+ display: "flex",
4474
+ alignItems: "center",
4475
+ justifyContent: "flex-end",
4476
+ flex: "0",
4477
+ gap: "3",
4478
+ px: { base: "4", md: "6" }
4479
+ }
4480
+ },
4481
+ defaultVariants: {
4482
+ size: "md",
4483
+ scrollBehavior: "outside",
4484
+ placement: "center"
4485
+ },
4486
+ variants: {
4487
+ size: {
4488
+ xs: { content: { maxW: "xs" } },
4489
+ sm: { content: { maxW: "sm" } },
4490
+ md: { content: { maxW: "md" } },
4491
+ lg: { content: { maxW: "lg" } },
4492
+ xl: { content: { maxW: "xl" } },
4493
+ full: {
4494
+ content: {
4495
+ maxW: "100dvw",
4496
+ minH: "100dvh",
4497
+ borderRadius: "0"
4498
+ }
4499
+ }
4500
+ },
4501
+ placement: {
4502
+ center: {
4503
+ positioner: {
4504
+ alignItems: "center"
4505
+ },
4506
+ content: {
4507
+ mx: "auto"
4508
+ }
4509
+ },
4510
+ top: {
4511
+ positioner: {
4512
+ alignItems: "flex-start"
4513
+ },
4514
+ content: {
4515
+ mt: "16",
4516
+ mx: "auto"
4517
+ }
4518
+ },
4519
+ bottom: {
4520
+ positioner: {
4521
+ alignItems: "flex-end"
4522
+ },
4523
+ content: {
4524
+ mb: "16",
4525
+ mx: "auto"
4526
+ }
4527
+ }
4528
+ },
4529
+ scrollBehavior: {
4530
+ inside: {
4531
+ positioner: {
4532
+ overflow: "hidden"
4533
+ },
4534
+ content: {
4535
+ maxH: "calc(100% - 7.5rem)"
4536
+ },
4537
+ body: {
4538
+ overflow: "auto"
4539
+ }
4540
+ },
4541
+ outside: {
4542
+ positioner: {
4543
+ overflow: "auto",
4544
+ pointerEvents: "auto"
4545
+ }
4546
+ }
4547
+ }
4548
+ }
4549
+ });
4550
+ var popover2 = defineSlotRecipe({
4551
+ className: "popover",
4552
+ slots: anatomy.popoverAnatomy.extendWith("header", "body", "footer").keys(),
4553
+ base: {
4554
+ positioner: {
4555
+ position: "absolute",
4556
+ top: "0",
4557
+ left: "0",
4558
+ zIndex: "popover"
4559
+ },
4560
+ content: {
4561
+ "--popover-bg": "colors.gray.surface.bg",
4562
+ "--popover-padding": "spacing.md",
4563
+ background: "var(--popover-bg)",
4564
+ borderRadius: "l3",
4565
+ boxShadow: "lg",
4566
+ display: "flex",
4567
+ flexDirection: "column",
4568
+ maxHeight: "var(--available-height)",
4569
+ outline: "0",
4570
+ position: "relative",
4571
+ textStyle: "sm",
4572
+ transformOrigin: "var(--transform-origin)",
4573
+ width: "sm",
4574
+ zIndex: "calc(var(--z-index-popover) + var(--layer-index, 0))",
4575
+ _open: {
4576
+ animationStyle: "scale-fade-in",
4577
+ animationDuration: "fast"
4578
+ },
4579
+ _closed: {
4580
+ animationStyle: "scale-fade-out",
4581
+ animationDuration: "faster"
4582
+ }
4583
+ },
4584
+ title: {
4585
+ color: "fg.default",
4586
+ fontWeight: "medium",
4587
+ textStyle: "md"
4588
+ },
4589
+ description: {
4590
+ color: "fg.muted",
4591
+ textStyle: "sm"
4592
+ },
4593
+ closeTrigger: {
4594
+ position: "absolute",
4595
+ top: "1",
4596
+ right: "1"
4597
+ },
4598
+ header: {
4599
+ display: "flex",
4600
+ flexDirection: "column",
4601
+ p: "var(--popover-padding)"
4602
+ },
4603
+ body: { p: "var(--popover-padding)", display: "flex", flex: "1", flexDirection: "column" },
4604
+ footer: {
4605
+ display: "flex",
4606
+ alignItems: "center",
4607
+ justifyContent: "flex-end",
4608
+ gap: "3",
4609
+ paddingInline: "var(--popover-padding)",
4610
+ paddingBottom: "var(--popover-padding)"
4611
+ },
4612
+ arrow: {
4613
+ "--arrow-size": "sizes.3",
4614
+ "--arrow-background": "var(--popover-bg)"
4615
+ },
4616
+ arrowTip: {
4617
+ borderTopWidth: "thin",
4618
+ borderInlineStartWidth: "thin",
4619
+ borderColor: "var(--popover-bg)"
4620
+ }
4621
+ }
4622
+ });
4623
+ var tooltip2 = defineSlotRecipe({
4624
+ className: "tooltip",
4625
+ slots: anatomy.tooltipAnatomy.keys(),
4626
+ base: {
4627
+ content: {
4628
+ "--tooltip-bg": "colors.gray.solid.bg",
4629
+ bg: "var(--tooltip-bg)",
4630
+ color: "gray.solid.fg",
4631
+ borderRadius: "l2",
4632
+ boxShadow: "sm",
4633
+ fontWeight: "semibold",
4634
+ px: "2",
4635
+ py: "1.5",
4636
+ textStyle: "xs",
4637
+ maxWidth: "xs",
4638
+ _open: {
4639
+ animationStyle: "scale-fade-in",
4640
+ animationDuration: "fast"
4641
+ },
4642
+ _closed: {
4643
+ animationStyle: "scale-fade-out",
4644
+ animationDuration: "faster"
4645
+ }
4646
+ },
4647
+ arrow: {
4648
+ "--arrow-size": "sizes.2",
4649
+ "--arrow-background": "var(--tooltip-bg)"
4650
+ },
4651
+ arrowTip: {
4652
+ borderTopWidth: "thin",
4653
+ borderInlineStartWidth: "thin",
4654
+ borderColor: "var(--tooltip-bg)"
4655
+ }
4656
+ }
4657
+ });
4658
+
4659
+ // src/preset/recipes/heading.ts
4660
+ var heading2 = defineRecipe({
4661
+ className: "heading",
4662
+ base: {
4663
+ color: "fg.default"
4664
+ },
4665
+ defaultVariants: {
4666
+ size: "xl"
4667
+ },
4668
+ variants: {
4669
+ size: {
4670
+ xs: { textStyle: "labelLarge" },
4671
+ sm: { textStyle: "titleSmall" },
4672
+ md: { textStyle: "titleMedium" },
4673
+ lg: { textStyle: "titleLarge" },
4674
+ xl: { textStyle: "headlineSmall" },
4675
+ "2xl": { textStyle: "headlineMedium" },
4676
+ "3xl": { textStyle: "headlineLarge" },
4677
+ "4xl": { textStyle: "displaySmall" },
4678
+ "5xl": { textStyle: "displayMedium" },
4679
+ "6xl": { textStyle: "displayLarge" },
4680
+ "7xl": { textStyle: "displayLarge" }
4681
+ }
4682
+ }
4683
+ });
4684
+
4685
+ // src/preset/layer-styles.ts
4686
+ var layerStyles = defineLayerStyles({
4687
+ disabled: {
4688
+ value: {
4689
+ cursor: "not-allowed",
4690
+ opacity: "0.5"
4691
+ }
4692
+ }
4693
+ });
4694
+
4695
+ // src/preset/text-styles.ts
4696
+ var textStyles = defineTextStyles({
4697
+ xs: { value: { fontSize: "xs", lineHeight: "1.125rem" } },
4698
+ sm: { value: { fontSize: "sm", lineHeight: "1.25rem" } },
4699
+ md: { value: { fontSize: "md", lineHeight: "1.5rem" } },
4700
+ lg: { value: { fontSize: "lg", lineHeight: "1.75rem" } },
4701
+ xl: { value: { fontSize: "xl", lineHeight: "1.875rem" } },
4702
+ "2xl": { value: { fontSize: "2xl", lineHeight: "2rem" } },
4703
+ "3xl": { value: { fontSize: "3xl", lineHeight: "2.375rem" } },
4704
+ "4xl": { value: { fontSize: "4xl", lineHeight: "2.75rem", letterSpacing: "-0.02em" } },
4705
+ "5xl": { value: { fontSize: "5xl", lineHeight: "3.75rem", letterSpacing: "-0.02em" } },
4706
+ "6xl": { value: { fontSize: "6xl", lineHeight: "4.5rem", letterSpacing: "-0.02em" } },
4707
+ "7xl": { value: { fontSize: "7xl", lineHeight: "5.75rem", letterSpacing: "-0.02em" } },
4708
+ label: { value: { fontSize: "sm", lineHeight: "1.25rem", fontWeight: "medium" } }
4709
+ });
4710
+
4711
+ // src/preset/shadows.ts
4712
+ var shadows = defineSemanticTokens.shadows({
4713
+ xs: {
4714
+ value: {
4715
+ base: "0px 1px 2px {colors.neutral.a6}, 0px 0px 1px {colors.neutral.a7}",
4716
+ _dark: "0px 1px 1px {colors.neutral.a8}, 0px 0px 1px inset {colors.neutral.a8}"
4717
+ }
4718
+ },
4719
+ sm: {
4720
+ value: {
4721
+ base: "0px 2px 4px {colors.neutral.a4}, 0px 0px 1px {colors.neutral.a4}",
4722
+ _dark: "0px 2px 4px {colors.neutral.a8}, 0px 0px 1px inset {colors.neutral.a8}"
4723
+ }
4724
+ },
4725
+ md: {
4726
+ value: {
4727
+ base: "0px 4px 8px {colors.neutral.a4}, 0px 0px 1px {colors.neutral.a4}",
4728
+ _dark: "0px 4px 8px {colors.neutral.a8}, 0px 0px 1px inset {colors.neutral.a8}"
4729
+ }
4730
+ },
4731
+ lg: {
4732
+ value: {
4733
+ base: "0px 8px 16px {colors.neutral.a4}, 0px 0px 1px {colors.neutral.a4}",
4734
+ _dark: "0px 8px 16px {colors.neutral.a8}, 0px 0px 1px inset {colors.neutral.a8}"
4735
+ }
4736
+ },
4737
+ xl: {
4738
+ value: {
4739
+ base: "0px 16px 24px {colors.neutral.a4}, 0px 0px 1px {colors.neutral.a4}",
4740
+ _dark: "0px 16px 24px {colors.neutral.a8}, 0px 0px 1px inset {colors.neutral.a8}"
4741
+ }
4742
+ },
4743
+ "2xl": {
4744
+ value: {
4745
+ base: "0px 24px 40px {colors.neutral.a4}, 0px 0px 1px {colors.neutral.a4}",
4746
+ _dark: "0px 24px 40px {colors.neutral.a8}, 0px 0px 1px inset {colors.neutral.a8}"
4747
+ }
4748
+ },
4749
+ inset: {
4750
+ value: {
4751
+ base: "inset 8px 0 12px -8px {colors.neutral.a4}",
4752
+ _dark: "inset 8px 0 12px -8px {colors.neutral.a6}"
4753
+ }
4754
+ }
4755
+ });
4756
+
4757
+ // src/preset/index.ts
4758
+ var theme = transformToPandaTheme(material3Language);
4759
+ var discourserPandaPreset = {
4760
+ name: "discourser-design-system-preset",
4761
+ theme: {
4762
+ extend: {
4763
+ // Add M3 tokens to Panda preset (colors, fonts, spacing, etc.)
4764
+ tokens: {
4765
+ colors: theme.tokens.colors,
4766
+ fonts: theme.tokens.fonts,
4767
+ fontSizes: theme.tokens.fontSizes,
4768
+ lineHeights: theme.tokens.lineHeights,
4769
+ fontWeights: theme.tokens.fontWeights,
4770
+ letterSpacings: theme.tokens.letterSpacings,
4771
+ spacing: theme.tokens.spacing,
4772
+ radii: theme.tokens.radii,
4773
+ shadows: theme.tokens.shadows,
4774
+ durations: theme.tokens.durations,
4775
+ easings: theme.tokens.easings,
4776
+ borderWidths: theme.tokens.borderWidths
4777
+ },
4778
+ // Park UI layer styles for common UI patterns (disabled, etc.)
4779
+ layerStyles,
4780
+ // Combined text styles: M3 + Park UI
4781
+ textStyles: {
4782
+ ...theme.textStyles,
4783
+ ...textStyles
4784
+ },
4785
+ // Semantic tokens: M3 colors + Park UI aliases + shadows + radii
4786
+ semanticTokens: {
4787
+ colors: {
4788
+ // M3-to-Radix color bridges
4789
+ ...colors,
4790
+ // Park UI-style aliases for component compatibility
4791
+ fg: {
4792
+ default: {
4793
+ value: { base: "{colors.gray.12}", _dark: "{colors.gray.12}" }
4794
+ },
4795
+ muted: {
4796
+ value: { base: "{colors.gray.11}", _dark: "{colors.gray.11}" }
4797
+ },
4798
+ subtle: {
4799
+ value: { base: "{colors.gray.10}", _dark: "{colors.gray.10}" }
4800
+ }
4801
+ },
4802
+ canvas: {
4803
+ value: { base: "{colors.gray.1}", _dark: "{colors.gray.1}" }
4804
+ },
4805
+ border: {
4806
+ default: {
4807
+ value: { base: "{colors.gray.6}", _dark: "{colors.gray.6}" }
4808
+ },
4809
+ muted: {
4810
+ value: { base: "{colors.gray.4}", _dark: "{colors.gray.4}" }
4811
+ }
4812
+ },
4813
+ // M3 semantic tokens (surface, onSurface, etc.)
4814
+ ...m3SemanticTokens,
4815
+ // Base colors
4816
+ white: { value: "#FFFFFF" },
4817
+ black: { value: "#000000" }
4818
+ },
4819
+ // Park UI shadow tokens
4820
+ shadows,
4821
+ // Park UI radii tokens (l1, l2, l3 for consistent border radius)
4822
+ radii: {
4823
+ l1: { value: "0.125rem" },
4824
+ // 2px (xs)
4825
+ l2: { value: "0.375rem" },
4826
+ // 6px (sm)
4827
+ l3: { value: "0.5rem" }
4828
+ // 8px (md)
4829
+ }
4830
+ },
4831
+ // Recipes: Park UI components (simple recipes)
4832
+ recipes: {
4833
+ // Core
4834
+ button: button2,
4835
+ input: input2,
4836
+ inputAddon: inputAddon2,
4837
+ group: group2,
4838
+ spinner: spinner2,
4839
+ absoluteCenter: absoluteCenter2,
4840
+ // Typography
4841
+ heading: heading2,
4842
+ // Feedback & Status
4843
+ badge: badge2,
4844
+ skeleton: skeleton2,
4845
+ textarea: textarea2
4846
+ },
4847
+ slotRecipes: {
4848
+ // Core
4849
+ field,
4850
+ inputGroup: inputGroup2,
4851
+ // Layout & Containers
4852
+ card: card2,
4853
+ accordion: accordion2,
4854
+ drawer: drawer2,
4855
+ tabs: tabs2,
4856
+ // Form Elements
4857
+ switchComponent: switchRecipe2,
4858
+ checkbox: checkbox2,
4859
+ radioGroup: radioGroup2,
4860
+ select: select2,
4861
+ slider: slider2,
4862
+ // Feedback & Status
4863
+ avatar: avatar2,
4864
+ progress: progress2,
4865
+ toast: toast2,
4866
+ // Overlays
4867
+ dialog: dialog2,
4868
+ popover: popover2,
4869
+ tooltip: tooltip2
4870
+ }
4871
+ }
4872
+ },
4873
+ conditions: {
4874
+ light: "[data-theme=light] &, .light &",
4875
+ dark: "[data-theme=dark] &, .dark &"
4876
+ },
4877
+ globalCss: {
4878
+ html: {
4879
+ colorScheme: "light dark",
4880
+ bg: "canvas",
4881
+ color: "fg.default"
4882
+ },
4883
+ body: {
4884
+ fontFamily: "body",
4885
+ textStyle: "bodyMedium"
4886
+ }
4887
+ }
4888
+ };
4889
+
1876
4890
  exports.AbsoluteCenter = AbsoluteCenter_exports;
1877
4891
  exports.Accordion = Accordion_exports;
1878
4892
  exports.Avatar = Avatar_exports;
@@ -1908,6 +4922,7 @@ exports.buttonRecipe = buttonRecipe;
1908
4922
  exports.cardRecipe = cardRecipe;
1909
4923
  exports.cn = cn;
1910
4924
  exports.dialogRecipe = dialogRecipe;
4925
+ exports.discourserPandaPreset = discourserPandaPreset;
1911
4926
  exports.iconButtonRecipe = iconButtonRecipe;
1912
4927
  exports.inputRecipe = inputRecipe;
1913
4928
  exports.switchRecipe = switchRecipe;