@pallas-ui/style-context 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/dist/index.d.mts +28 -0
  2. package/dist/index.d.ts +28 -0
  3. package/dist/index.js +542 -0
  4. package/dist/index.mjs +521 -0
  5. package/package.json +30 -0
  6. package/styled-system/css/conditions.mjs +36 -0
  7. package/styled-system/css/css.d.ts +22 -0
  8. package/styled-system/css/css.mjs +45 -0
  9. package/styled-system/css/cva.d.ts +6 -0
  10. package/styled-system/css/cva.mjs +87 -0
  11. package/styled-system/css/cx.d.ts +5 -0
  12. package/styled-system/css/cx.mjs +15 -0
  13. package/styled-system/css/index.d.ts +5 -0
  14. package/styled-system/css/index.mjs +4 -0
  15. package/styled-system/css/sva.d.ts +4 -0
  16. package/styled-system/css/sva.mjs +41 -0
  17. package/styled-system/helpers.mjs +336 -0
  18. package/styled-system/jsx/aspect-ratio.d.ts +10 -0
  19. package/styled-system/jsx/aspect-ratio.mjs +14 -0
  20. package/styled-system/jsx/bleed.d.ts +10 -0
  21. package/styled-system/jsx/bleed.mjs +14 -0
  22. package/styled-system/jsx/box.d.ts +10 -0
  23. package/styled-system/jsx/box.mjs +14 -0
  24. package/styled-system/jsx/center.d.ts +10 -0
  25. package/styled-system/jsx/center.mjs +14 -0
  26. package/styled-system/jsx/circle.d.ts +10 -0
  27. package/styled-system/jsx/circle.mjs +14 -0
  28. package/styled-system/jsx/container.d.ts +10 -0
  29. package/styled-system/jsx/container.mjs +14 -0
  30. package/styled-system/jsx/cq.d.ts +10 -0
  31. package/styled-system/jsx/cq.mjs +14 -0
  32. package/styled-system/jsx/divider.d.ts +10 -0
  33. package/styled-system/jsx/divider.mjs +14 -0
  34. package/styled-system/jsx/factory-helper.mjs +22 -0
  35. package/styled-system/jsx/factory.d.ts +3 -0
  36. package/styled-system/jsx/factory.mjs +80 -0
  37. package/styled-system/jsx/flex.d.ts +10 -0
  38. package/styled-system/jsx/flex.mjs +14 -0
  39. package/styled-system/jsx/float.d.ts +10 -0
  40. package/styled-system/jsx/float.mjs +14 -0
  41. package/styled-system/jsx/grid-item.d.ts +10 -0
  42. package/styled-system/jsx/grid-item.mjs +14 -0
  43. package/styled-system/jsx/grid.d.ts +10 -0
  44. package/styled-system/jsx/grid.mjs +14 -0
  45. package/styled-system/jsx/hstack.d.ts +10 -0
  46. package/styled-system/jsx/hstack.mjs +14 -0
  47. package/styled-system/jsx/index.d.ts +24 -0
  48. package/styled-system/jsx/index.mjs +22 -0
  49. package/styled-system/jsx/is-valid-prop.d.ts +11 -0
  50. package/styled-system/jsx/is-valid-prop.mjs +17 -0
  51. package/styled-system/jsx/link-overlay.d.ts +10 -0
  52. package/styled-system/jsx/link-overlay.mjs +14 -0
  53. package/styled-system/jsx/spacer.d.ts +10 -0
  54. package/styled-system/jsx/spacer.mjs +14 -0
  55. package/styled-system/jsx/square.d.ts +10 -0
  56. package/styled-system/jsx/square.mjs +14 -0
  57. package/styled-system/jsx/stack.d.ts +10 -0
  58. package/styled-system/jsx/stack.mjs +14 -0
  59. package/styled-system/jsx/visually-hidden.d.ts +10 -0
  60. package/styled-system/jsx/visually-hidden.mjs +14 -0
  61. package/styled-system/jsx/vstack.d.ts +10 -0
  62. package/styled-system/jsx/vstack.mjs +14 -0
  63. package/styled-system/jsx/wrap.d.ts +10 -0
  64. package/styled-system/jsx/wrap.mjs +14 -0
  65. package/styled-system/patterns/aspect-ratio.d.ts +21 -0
  66. package/styled-system/patterns/aspect-ratio.mjs +38 -0
  67. package/styled-system/patterns/bleed.d.ts +22 -0
  68. package/styled-system/patterns/bleed.mjs +24 -0
  69. package/styled-system/patterns/box.d.ts +21 -0
  70. package/styled-system/patterns/box.mjs +15 -0
  71. package/styled-system/patterns/center.d.ts +21 -0
  72. package/styled-system/patterns/center.mjs +21 -0
  73. package/styled-system/patterns/circle.d.ts +21 -0
  74. package/styled-system/patterns/circle.mjs +25 -0
  75. package/styled-system/patterns/container.d.ts +21 -0
  76. package/styled-system/patterns/container.mjs +21 -0
  77. package/styled-system/patterns/cq.d.ts +22 -0
  78. package/styled-system/patterns/cq.mjs +21 -0
  79. package/styled-system/patterns/divider.d.ts +23 -0
  80. package/styled-system/patterns/divider.mjs +25 -0
  81. package/styled-system/patterns/flex.d.ts +27 -0
  82. package/styled-system/patterns/flex.mjs +26 -0
  83. package/styled-system/patterns/float.d.ts +24 -0
  84. package/styled-system/patterns/float.mjs +52 -0
  85. package/styled-system/patterns/grid-item.d.ts +26 -0
  86. package/styled-system/patterns/grid-item.mjs +25 -0
  87. package/styled-system/patterns/grid.d.ts +25 -0
  88. package/styled-system/patterns/grid.mjs +27 -0
  89. package/styled-system/patterns/hstack.d.ts +22 -0
  90. package/styled-system/patterns/hstack.mjs +24 -0
  91. package/styled-system/patterns/index.d.ts +21 -0
  92. package/styled-system/patterns/index.mjs +20 -0
  93. package/styled-system/patterns/link-overlay.d.ts +21 -0
  94. package/styled-system/patterns/link-overlay.mjs +24 -0
  95. package/styled-system/patterns/spacer.d.ts +21 -0
  96. package/styled-system/patterns/spacer.mjs +21 -0
  97. package/styled-system/patterns/square.d.ts +21 -0
  98. package/styled-system/patterns/square.mjs +24 -0
  99. package/styled-system/patterns/stack.d.ts +24 -0
  100. package/styled-system/patterns/stack.mjs +24 -0
  101. package/styled-system/patterns/visually-hidden.d.ts +21 -0
  102. package/styled-system/patterns/visually-hidden.mjs +18 -0
  103. package/styled-system/patterns/vstack.d.ts +22 -0
  104. package/styled-system/patterns/vstack.mjs +24 -0
  105. package/styled-system/patterns/wrap.d.ts +25 -0
  106. package/styled-system/patterns/wrap.mjs +25 -0
  107. package/styled-system/tokens/index.d.ts +9 -0
  108. package/styled-system/tokens/index.mjs +1892 -0
  109. package/styled-system/tokens/tokens.d.ts +60 -0
  110. package/styled-system/types/composition.d.ts +164 -0
  111. package/styled-system/types/conditions.d.ts +274 -0
  112. package/styled-system/types/csstype.d.ts +21298 -0
  113. package/styled-system/types/global.d.ts +20 -0
  114. package/styled-system/types/index.d.ts +8 -0
  115. package/styled-system/types/jsx.d.ts +52 -0
  116. package/styled-system/types/parts.d.ts +8 -0
  117. package/styled-system/types/pattern.d.ts +78 -0
  118. package/styled-system/types/prop-type.d.ts +240 -0
  119. package/styled-system/types/recipe.d.ts +181 -0
  120. package/styled-system/types/selectors.d.ts +59 -0
  121. package/styled-system/types/static-css.d.ts +56 -0
  122. package/styled-system/types/style-props.d.ts +7468 -0
  123. package/styled-system/types/system-types.d.ts +109 -0
@@ -0,0 +1,28 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ElementType, ForwardRefExoticComponent, PropsWithoutRef, RefAttributes } from 'react';
3
+
4
+ type Props = Record<string, unknown>;
5
+ type Recipe = {
6
+ (props?: Props): Props;
7
+ splitVariantProps: (props: Props) => [Props, Props];
8
+ };
9
+ type Slot<R extends Recipe> = keyof ReturnType<R>;
10
+ type Options = {
11
+ forwardProps?: string[];
12
+ };
13
+ declare const createStyleContext: <R extends Recipe>(recipe: R) => {
14
+ withRootProvider: <P extends {}>(Component: ElementType) => (props: P) => react_jsx_runtime.JSX.Element;
15
+ withProvider: <T, P extends {
16
+ className?: string | undefined;
17
+ }>(Component: ElementType, slot: Slot<R>, options?: Options) => ForwardRefExoticComponent<PropsWithoutRef<P> & RefAttributes<T>>;
18
+ withContext: <T, P_1 extends {
19
+ className?: string | undefined;
20
+ }>(Component: ElementType, slot: Slot<R>) => ForwardRefExoticComponent<PropsWithoutRef<P_1> & RefAttributes<T>>;
21
+ };
22
+ type Assign<T, U> = Omit<T, keyof U> & U;
23
+ type Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
24
+ type WithFixedClassName<T> = Omit<T, 'className'> & {
25
+ className?: string | undefined;
26
+ };
27
+
28
+ export { type Assign, type Optional, type Options, type Props, type Recipe, type Slot, type WithFixedClassName, createStyleContext };
@@ -0,0 +1,28 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ElementType, ForwardRefExoticComponent, PropsWithoutRef, RefAttributes } from 'react';
3
+
4
+ type Props = Record<string, unknown>;
5
+ type Recipe = {
6
+ (props?: Props): Props;
7
+ splitVariantProps: (props: Props) => [Props, Props];
8
+ };
9
+ type Slot<R extends Recipe> = keyof ReturnType<R>;
10
+ type Options = {
11
+ forwardProps?: string[];
12
+ };
13
+ declare const createStyleContext: <R extends Recipe>(recipe: R) => {
14
+ withRootProvider: <P extends {}>(Component: ElementType) => (props: P) => react_jsx_runtime.JSX.Element;
15
+ withProvider: <T, P extends {
16
+ className?: string | undefined;
17
+ }>(Component: ElementType, slot: Slot<R>, options?: Options) => ForwardRefExoticComponent<PropsWithoutRef<P> & RefAttributes<T>>;
18
+ withContext: <T, P_1 extends {
19
+ className?: string | undefined;
20
+ }>(Component: ElementType, slot: Slot<R>) => ForwardRefExoticComponent<PropsWithoutRef<P_1> & RefAttributes<T>>;
21
+ };
22
+ type Assign<T, U> = Omit<T, keyof U> & U;
23
+ type Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
24
+ type WithFixedClassName<T> = Omit<T, 'className'> & {
25
+ className?: string | undefined;
26
+ };
27
+
28
+ export { type Assign, type Optional, type Options, type Props, type Recipe, type Slot, type WithFixedClassName, createStyleContext };
package/dist/index.js ADDED
@@ -0,0 +1,542 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/index.tsx
21
+ var index_exports = {};
22
+ __export(index_exports, {
23
+ createStyleContext: () => createStyleContext
24
+ });
25
+ module.exports = __toCommonJS(index_exports);
26
+ var import_react2 = require("react");
27
+
28
+ // styled-system/helpers.mjs
29
+ function isObject(value) {
30
+ return typeof value === "object" && value != null && !Array.isArray(value);
31
+ }
32
+ var isObjectOrArray = (obj) => typeof obj === "object" && obj !== null;
33
+ function compact(value) {
34
+ return Object.fromEntries(Object.entries(value ?? {}).filter(([_, value2]) => value2 !== void 0));
35
+ }
36
+ var isBaseCondition = (v) => v === "base";
37
+ function filterBaseConditions(c) {
38
+ return c.slice().filter((v) => !isBaseCondition(v));
39
+ }
40
+ function toChar(code) {
41
+ return String.fromCharCode(code + (code > 25 ? 39 : 97));
42
+ }
43
+ function toName(code) {
44
+ let name = "";
45
+ let x;
46
+ for (x = Math.abs(code); x > 52; x = x / 52 | 0)
47
+ name = toChar(x % 52) + name;
48
+ return toChar(x % 52) + name;
49
+ }
50
+ function toPhash(h, x) {
51
+ let i = x.length;
52
+ while (i)
53
+ h = h * 33 ^ x.charCodeAt(--i);
54
+ return h;
55
+ }
56
+ function toHash(value) {
57
+ return toName(toPhash(5381, value) >>> 0);
58
+ }
59
+ var importantRegex = /\s*!(important)?/i;
60
+ function isImportant(value) {
61
+ return typeof value === "string" ? importantRegex.test(value) : false;
62
+ }
63
+ function withoutImportant(value) {
64
+ return typeof value === "string" ? value.replace(importantRegex, "").trim() : value;
65
+ }
66
+ function withoutSpace(str) {
67
+ return typeof str === "string" ? str.replaceAll(" ", "_") : str;
68
+ }
69
+ var memo = (fn) => {
70
+ const cache = /* @__PURE__ */ new Map();
71
+ const get = (...args) => {
72
+ const key = JSON.stringify(args);
73
+ if (cache.has(key)) {
74
+ return cache.get(key);
75
+ }
76
+ const result = fn(...args);
77
+ cache.set(key, result);
78
+ return result;
79
+ };
80
+ return get;
81
+ };
82
+ function mergeProps(...sources) {
83
+ return sources.reduce((prev, obj) => {
84
+ if (!obj)
85
+ return prev;
86
+ Object.keys(obj).forEach((key) => {
87
+ const prevValue = prev[key];
88
+ const value = obj[key];
89
+ if (isObject(prevValue) && isObject(value)) {
90
+ prev[key] = mergeProps(prevValue, value);
91
+ } else {
92
+ prev[key] = value;
93
+ }
94
+ });
95
+ return prev;
96
+ }, {});
97
+ }
98
+ var isNotNullish = (element) => element != null;
99
+ function walkObject(target, predicate, options = {}) {
100
+ const { stop, getKey } = options;
101
+ function inner(value, path = []) {
102
+ if (isObjectOrArray(value)) {
103
+ const result = {};
104
+ for (const [prop, child] of Object.entries(value)) {
105
+ const key = getKey?.(prop, child) ?? prop;
106
+ const childPath = [...path, key];
107
+ if (stop?.(value, childPath)) {
108
+ return predicate(value, path);
109
+ }
110
+ const next = inner(child, childPath);
111
+ if (isNotNullish(next)) {
112
+ result[key] = next;
113
+ }
114
+ }
115
+ return result;
116
+ }
117
+ return predicate(value, path);
118
+ }
119
+ return inner(target);
120
+ }
121
+ function toResponsiveObject(values, breakpoints) {
122
+ return values.reduce(
123
+ (acc, current, index) => {
124
+ const key = breakpoints[index];
125
+ if (current != null) {
126
+ acc[key] = current;
127
+ }
128
+ return acc;
129
+ },
130
+ {}
131
+ );
132
+ }
133
+ function normalizeStyleObject(styles, context2, shorthand = true) {
134
+ const { utility, conditions: conditions2 } = context2;
135
+ const { hasShorthand, resolveShorthand: resolveShorthand2 } = utility;
136
+ return walkObject(
137
+ styles,
138
+ (value) => {
139
+ return Array.isArray(value) ? toResponsiveObject(value, conditions2.breakpoints.keys) : value;
140
+ },
141
+ {
142
+ stop: (value) => Array.isArray(value),
143
+ getKey: shorthand ? (prop) => hasShorthand ? resolveShorthand2(prop) : prop : void 0
144
+ }
145
+ );
146
+ }
147
+ var fallbackCondition = {
148
+ shift: (v) => v,
149
+ finalize: (v) => v,
150
+ breakpoints: { keys: [] }
151
+ };
152
+ var sanitize = (value) => typeof value === "string" ? value.replaceAll(/[\n\s]+/g, " ") : value;
153
+ function createCss(context2) {
154
+ const { utility, hash, conditions: conds = fallbackCondition } = context2;
155
+ const formatClassName = (str) => [utility.prefix, str].filter(Boolean).join("-");
156
+ const hashFn = (conditions2, className) => {
157
+ let result;
158
+ if (hash) {
159
+ const baseArray = [...conds.finalize(conditions2), className];
160
+ result = formatClassName(utility.toHash(baseArray, toHash));
161
+ } else {
162
+ const baseArray = [...conds.finalize(conditions2), formatClassName(className)];
163
+ result = baseArray.join(":");
164
+ }
165
+ return result;
166
+ };
167
+ return memo(({ base, ...styles } = {}) => {
168
+ const styleObject = Object.assign(styles, base);
169
+ const normalizedObject = normalizeStyleObject(styleObject, context2);
170
+ const classNames = /* @__PURE__ */ new Set();
171
+ walkObject(normalizedObject, (value, paths) => {
172
+ if (value == null)
173
+ return;
174
+ const important = isImportant(value);
175
+ const [prop, ...allConditions] = conds.shift(paths);
176
+ const conditions2 = filterBaseConditions(allConditions);
177
+ const transformed = utility.transform(prop, withoutImportant(sanitize(value)));
178
+ let className = hashFn(conditions2, transformed.className);
179
+ if (important)
180
+ className = `${className}!`;
181
+ classNames.add(className);
182
+ });
183
+ return Array.from(classNames).join(" ");
184
+ });
185
+ }
186
+ function compactStyles(...styles) {
187
+ return styles.flat().filter((style) => isObject(style) && Object.keys(compact(style)).length > 0);
188
+ }
189
+ function createMergeCss(context2) {
190
+ function resolve(styles) {
191
+ const allStyles = compactStyles(...styles);
192
+ if (allStyles.length === 1)
193
+ return allStyles;
194
+ return allStyles.map((style) => normalizeStyleObject(style, context2));
195
+ }
196
+ function mergeCss2(...styles) {
197
+ return mergeProps(...resolve(styles));
198
+ }
199
+ function assignCss2(...styles) {
200
+ return Object.assign({}, ...resolve(styles));
201
+ }
202
+ return { mergeCss: memo(mergeCss2), assignCss: assignCss2 };
203
+ }
204
+ var wordRegex = /([A-Z])/g;
205
+ var msRegex = /^ms-/;
206
+ var hypenateProperty = memo((property) => {
207
+ if (property.startsWith("--"))
208
+ return property;
209
+ return property.replace(wordRegex, "-$1").replace(msRegex, "-ms-").toLowerCase();
210
+ });
211
+ var fns = ["min", "max", "clamp", "calc"];
212
+ var fnRegExp = new RegExp(`^(${fns.join("|")})\\(.*\\)`);
213
+ var lengthUnits = "cm,mm,Q,in,pc,pt,px,em,ex,ch,rem,lh,rlh,vw,vh,vmin,vmax,vb,vi,svw,svh,lvw,lvh,dvw,dvh,cqw,cqh,cqi,cqb,cqmin,cqmax,%";
214
+ var lengthUnitsPattern = `(?:${lengthUnits.split(",").join("|")})`;
215
+ var lengthRegExp = new RegExp(`^[+-]?[0-9]*.?[0-9]+(?:[eE][+-]?[0-9]+)?${lengthUnitsPattern}$`);
216
+ function splitProps(props, ...keys) {
217
+ const descriptors = Object.getOwnPropertyDescriptors(props);
218
+ const dKeys = Object.keys(descriptors);
219
+ const split = (k) => {
220
+ const clone = {};
221
+ for (let i = 0; i < k.length; i++) {
222
+ const key = k[i];
223
+ if (descriptors[key]) {
224
+ Object.defineProperty(clone, key, descriptors[key]);
225
+ delete descriptors[key];
226
+ }
227
+ }
228
+ return clone;
229
+ };
230
+ const fn = (key) => split(Array.isArray(key) ? key : dKeys.filter(key));
231
+ return keys.map(fn).concat(split(dKeys));
232
+ }
233
+ var uniq = (...items) => {
234
+ const set = items.reduce((acc, currItems) => {
235
+ if (currItems) {
236
+ currItems.forEach((item) => acc.add(item));
237
+ }
238
+ return acc;
239
+ }, /* @__PURE__ */ new Set([]));
240
+ return Array.from(set);
241
+ };
242
+ var htmlProps = ["htmlSize", "htmlTranslate", "htmlWidth", "htmlHeight"];
243
+ function convert(key) {
244
+ return htmlProps.includes(key) ? key.replace("html", "").toLowerCase() : key;
245
+ }
246
+ function normalizeHTMLProps(props) {
247
+ return Object.fromEntries(Object.entries(props).map(([key, value]) => [convert(key), value]));
248
+ }
249
+ normalizeHTMLProps.keys = htmlProps;
250
+
251
+ // styled-system/css/conditions.mjs
252
+ var conditionsStr = "_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_default,_optional,_open,_closed,_fullscreen,_loading,_currentPage,_currentStep,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_starting,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,2xl,2xlOnly,2xlDown,smToMd,smToLg,smToXl,smTo2xl,mdToLg,mdToXl,mdTo2xl,lgToXl,lgTo2xl,xlTo2xl,@/xs,@/sm,@/md,@/lg,@/xl,@/2xl,@/3xl,@/4xl,@/5xl,@/6xl,@/7xl,@/8xl,base";
253
+ var conditions = new Set(conditionsStr.split(","));
254
+ var conditionRegex = /^@|&|&$/;
255
+ function isCondition(value) {
256
+ return conditions.has(value) || conditionRegex.test(value);
257
+ }
258
+ var underscoreRegex = /^_/;
259
+ var conditionsSelectorRegex = /&|@/;
260
+ function finalizeConditions(paths) {
261
+ return paths.map((path) => {
262
+ if (conditions.has(path)) {
263
+ return path.replace(underscoreRegex, "");
264
+ }
265
+ if (conditionsSelectorRegex.test(path)) {
266
+ return `[${withoutSpace(path.trim())}]`;
267
+ }
268
+ return path;
269
+ });
270
+ }
271
+ function sortConditions(paths) {
272
+ return paths.sort((a, b) => {
273
+ const aa = isCondition(a);
274
+ const bb = isCondition(b);
275
+ if (aa && !bb) return 1;
276
+ if (!aa && bb) return -1;
277
+ return 0;
278
+ });
279
+ }
280
+
281
+ // styled-system/css/css.mjs
282
+ var utilities = "aspectRatio:asp,boxDecorationBreak:bx-db,zIndex:z,boxSizing:bx-s,objectPosition:obj-p,objectFit:obj-f,overscrollBehavior:ovs-b,overscrollBehaviorX:ovs-bx,overscrollBehaviorY:ovs-by,position:pos/1,top:top,left:left,inset:inset,insetInline:inset-x/insetX,insetBlock:inset-y/insetY,insetBlockEnd:inset-be,insetBlockStart:inset-bs,insetInlineEnd:inset-e/insetEnd/end,insetInlineStart:inset-s/insetStart/start,right:right,bottom:bottom,float:float,visibility:vis,display:d,hideFrom:hide,hideBelow:show,flexBasis:flex-b,flex:flex,flexDirection:flex-d/flexDir,flexGrow:flex-g,flexShrink:flex-sh,gridTemplateColumns:grid-tc,gridTemplateRows:grid-tr,gridColumn:grid-c,gridRow:grid-r,gridColumnStart:grid-cs,gridColumnEnd:grid-ce,gridAutoFlow:grid-af,gridAutoColumns:grid-ac,gridAutoRows:grid-ar,gap:gap,gridGap:grid-g,gridRowGap:grid-rg,gridColumnGap:grid-cg,rowGap:rg,columnGap:cg,justifyContent:jc,alignContent:ac,alignItems:ai,alignSelf:as,padding:p/1,paddingLeft:pl/1,paddingRight:pr/1,paddingTop:pt/1,paddingBottom:pb/1,paddingBlock:py/1/paddingY,paddingBlockEnd:pbe,paddingBlockStart:pbs,paddingInline:px/paddingX/1,paddingInlineEnd:pe/1/paddingEnd,paddingInlineStart:ps/1/paddingStart,marginLeft:ml/1,marginRight:mr/1,marginTop:mt/1,marginBottom:mb/1,margin:m/1,marginBlock:my/1/marginY,marginBlockEnd:mbe,marginBlockStart:mbs,marginInline:mx/1/marginX,marginInlineEnd:me/1/marginEnd,marginInlineStart:ms/1/marginStart,spaceX:sx,spaceY:sy,outlineWidth:ring-w/ringWidth,outlineColor:ring-c/ringColor,outline:ring/1,outlineOffset:ring-o/ringOffset,divideX:dvd-x,divideY:dvd-y,divideColor:dvd-c,divideStyle:dvd-s,width:w/1,inlineSize:w-is,minWidth:min-w/minW,minInlineSize:min-w-is,maxWidth:max-w/maxW,maxInlineSize:max-w-is,height:h/1,blockSize:h-bs,minHeight:min-h/minH,minBlockSize:min-h-bs,maxHeight:max-h/maxH,maxBlockSize:max-b,color:c,fontFamily:ff,fontSize:fs,fontSizeAdjust:fs-a,fontPalette:fp,fontKerning:fk,fontFeatureSettings:ff-s,fontWeight:fw,fontSmoothing:fsmt,fontVariant:fv,fontVariantAlternates:fv-alt,fontVariantCaps:fv-caps,fontVariationSettings:fv-s,fontVariantNumeric:fv-num,letterSpacing:ls,lineHeight:lh,textAlign:ta,textDecoration:td,textDecorationColor:td-c,textEmphasisColor:te-c,textDecorationStyle:td-s,textDecorationThickness:td-t,textUnderlineOffset:tu-o,textTransform:tt,textIndent:ti,textShadow:tsh,textShadowColor:tsh-c/textShadowColor,textOverflow:tov,verticalAlign:va,wordBreak:wb,textWrap:tw,truncate:trunc,lineClamp:lc,listStyleType:li-t,listStylePosition:li-pos,listStyleImage:li-img,listStyle:li-s,backgroundPosition:bg-p/bgPosition,backgroundPositionX:bg-p-x/bgPositionX,backgroundPositionY:bg-p-y/bgPositionY,backgroundAttachment:bg-a/bgAttachment,backgroundClip:bg-cp/bgClip,background:bg/1,backgroundColor:bg-c/bgColor,backgroundOrigin:bg-o/bgOrigin,backgroundImage:bg-i/bgImage,backgroundRepeat:bg-r/bgRepeat,backgroundBlendMode:bg-bm/bgBlendMode,backgroundSize:bg-s/bgSize,backgroundGradient:bg-grad/bgGradient,textGradient:txt-grad,gradientFromPosition:grad-from-pos,gradientToPosition:grad-to-pos,gradientFrom:grad-from,gradientTo:grad-to,gradientVia:grad-via,gradientViaPosition:grad-via-pos,borderRadius:bdr/rounded,borderTopLeftRadius:bdr-tl/roundedTopLeft,borderTopRightRadius:bdr-tr/roundedTopRight,borderBottomRightRadius:bdr-br/roundedBottomRight,borderBottomLeftRadius:bdr-bl/roundedBottomLeft,borderTopRadius:bdr-t/roundedTop,borderRightRadius:bdr-r/roundedRight,borderBottomRadius:bdr-b/roundedBottom,borderLeftRadius:bdr-l/roundedLeft,borderStartStartRadius:bdr-ss/roundedStartStart,borderStartEndRadius:bdr-se/roundedStartEnd,borderStartRadius:bdr-s/roundedStart,borderEndStartRadius:bdr-es/roundedEndStart,borderEndEndRadius:bdr-ee/roundedEndEnd,borderEndRadius:bdr-e/roundedEnd,border:bd,borderWidth:bd-w,borderTopWidth:bd-t-w,borderLeftWidth:bd-l-w,borderRightWidth:bd-r-w,borderBottomWidth:bd-b-w,borderColor:bd-c,borderInline:bd-x/borderX,borderInlineWidth:bd-x-w/borderXWidth,borderInlineColor:bd-x-c/borderXColor,borderBlock:bd-y/borderY,borderBlockWidth:bd-y-w/borderYWidth,borderBlockColor:bd-y-c/borderYColor,borderLeft:bd-l,borderLeftColor:bd-l-c,borderInlineStart:bd-s/borderStart,borderInlineStartWidth:bd-s-w/borderStartWidth,borderInlineStartColor:bd-s-c/borderStartColor,borderRight:bd-r,borderRightColor:bd-r-c,borderInlineEnd:bd-e/borderEnd,borderInlineEndWidth:bd-e-w/borderEndWidth,borderInlineEndColor:bd-e-c/borderEndColor,borderTop:bd-t,borderTopColor:bd-t-c,borderBottom:bd-b,borderBottomColor:bd-b-c,borderBlockEnd:bd-be,borderBlockEndColor:bd-be-c,borderBlockStart:bd-bs,borderBlockStartColor:bd-bs-c,opacity:op,boxShadow:bx-sh/shadow,boxShadowColor:bx-sh-c/shadowColor,mixBlendMode:mix-bm,filter:filter,brightness:brightness,contrast:contrast,grayscale:grayscale,hueRotate:hue-rotate,invert:invert,saturate:saturate,sepia:sepia,dropShadow:drop-shadow,blur:blur,backdropFilter:bkdp,backdropBlur:bkdp-blur,backdropBrightness:bkdp-brightness,backdropContrast:bkdp-contrast,backdropGrayscale:bkdp-grayscale,backdropHueRotate:bkdp-hue-rotate,backdropInvert:bkdp-invert,backdropOpacity:bkdp-opacity,backdropSaturate:bkdp-saturate,backdropSepia:bkdp-sepia,borderCollapse:bd-cl,borderSpacing:bd-sp,borderSpacingX:bd-sx,borderSpacingY:bd-sy,tableLayout:tbl,transitionTimingFunction:trs-tmf,transitionDelay:trs-dly,transitionDuration:trs-dur,transitionProperty:trs-prop,transition:trs,animation:anim,animationName:anim-n,animationTimingFunction:anim-tmf,animationDuration:anim-dur,animationDelay:anim-dly,animationPlayState:anim-ps,animationComposition:anim-comp,animationFillMode:anim-fm,animationDirection:anim-dir,animationIterationCount:anim-ic,animationRange:anim-r,animationState:anim-s,animationRangeStart:anim-rs,animationRangeEnd:anim-re,animationTimeline:anim-tl,transformOrigin:trf-o,transformBox:trf-b,transformStyle:trf-s,transform:trf,rotate:rotate,rotateX:rotate-x,rotateY:rotate-y,rotateZ:rotate-z,scale:scale,scaleX:scale-x,scaleY:scale-y,translate:translate,translateX:translate-x/x,translateY:translate-y/y,translateZ:translate-z/z,accentColor:ac-c,caretColor:ca-c,scrollBehavior:scr-bhv,scrollbar:scr-bar,scrollbarColor:scr-bar-c,scrollbarGutter:scr-bar-g,scrollbarWidth:scr-bar-w,scrollMargin:scr-m,scrollMarginLeft:scr-ml,scrollMarginRight:scr-mr,scrollMarginTop:scr-mt,scrollMarginBottom:scr-mb,scrollMarginBlock:scr-my/scrollMarginY,scrollMarginBlockEnd:scr-mbe,scrollMarginBlockStart:scr-mbt,scrollMarginInline:scr-mx/scrollMarginX,scrollMarginInlineEnd:scr-me,scrollMarginInlineStart:scr-ms,scrollPadding:scr-p,scrollPaddingBlock:scr-py/scrollPaddingY,scrollPaddingBlockStart:scr-pbs,scrollPaddingBlockEnd:scr-pbe,scrollPaddingInline:scr-px/scrollPaddingX,scrollPaddingInlineEnd:scr-pe,scrollPaddingInlineStart:scr-ps,scrollPaddingLeft:scr-pl,scrollPaddingRight:scr-pr,scrollPaddingTop:scr-pt,scrollPaddingBottom:scr-pb,scrollSnapAlign:scr-sa,scrollSnapStop:scrs-s,scrollSnapType:scrs-t,scrollSnapStrictness:scrs-strt,scrollSnapMargin:scrs-m,scrollSnapMarginTop:scrs-mt,scrollSnapMarginBottom:scrs-mb,scrollSnapMarginLeft:scrs-ml,scrollSnapMarginRight:scrs-mr,scrollSnapCoordinate:scrs-c,scrollSnapDestination:scrs-d,scrollSnapPointsX:scrs-px,scrollSnapPointsY:scrs-py,scrollSnapTypeX:scrs-tx,scrollSnapTypeY:scrs-ty,scrollTimeline:scrtl,scrollTimelineAxis:scrtl-a,scrollTimelineName:scrtl-n,touchAction:tch-a,userSelect:us,overflow:ov,overflowWrap:ov-wrap,overflowX:ov-x,overflowY:ov-y,overflowAnchor:ov-a,overflowBlock:ov-b,overflowInline:ov-i,overflowClipBox:ovcp-bx,overflowClipMargin:ovcp-m,overscrollBehaviorBlock:ovs-bb,overscrollBehaviorInline:ovs-bi,fill:fill,stroke:stk,strokeWidth:stk-w,strokeDasharray:stk-dsh,strokeDashoffset:stk-do,strokeLinecap:stk-lc,strokeLinejoin:stk-lj,strokeMiterlimit:stk-ml,strokeOpacity:stk-op,srOnly:sr,debug:debug,appearance:ap,backfaceVisibility:bfv,clipPath:cp-path,hyphens:hy,mask:msk,maskImage:msk-i,maskSize:msk-s,textSizeAdjust:txt-adj,container:cq,containerName:cq-n,containerType:cq-t,textStyle:textStyle";
283
+ var classNameByProp = /* @__PURE__ */ new Map();
284
+ var shorthands = /* @__PURE__ */ new Map();
285
+ utilities.split(",").forEach((utility) => {
286
+ const [prop, meta] = utility.split(":");
287
+ const [className, ...shorthandList] = meta.split("/");
288
+ classNameByProp.set(prop, className);
289
+ if (shorthandList.length) {
290
+ shorthandList.forEach((shorthand) => {
291
+ shorthands.set(shorthand === "1" ? className : shorthand, prop);
292
+ });
293
+ }
294
+ });
295
+ var resolveShorthand = (prop) => shorthands.get(prop) || prop;
296
+ var context = {
297
+ conditions: {
298
+ shift: sortConditions,
299
+ finalize: finalizeConditions,
300
+ breakpoints: { keys: ["base", "sm", "md", "lg", "xl", "2xl"] }
301
+ },
302
+ utility: {
303
+ transform: (prop, value) => {
304
+ const key = resolveShorthand(prop);
305
+ const propKey = classNameByProp.get(key) || hypenateProperty(key);
306
+ return { className: `${propKey}_${withoutSpace(value)}` };
307
+ },
308
+ hasShorthand: true,
309
+ toHash: (path, hashFn) => hashFn(path.join(":")),
310
+ resolveShorthand
311
+ }
312
+ };
313
+ var cssFn = createCss(context);
314
+ var css = (...styles) => cssFn(mergeCss(...styles));
315
+ css.raw = (...styles) => mergeCss(...styles);
316
+ var { mergeCss, assignCss } = createMergeCss(context);
317
+
318
+ // styled-system/css/cx.mjs
319
+ function cx() {
320
+ let str = "", i = 0, arg;
321
+ for (; i < arguments.length; ) {
322
+ if ((arg = arguments[i++]) && typeof arg === "string") {
323
+ str && (str += " ");
324
+ str += arg;
325
+ }
326
+ }
327
+ return str;
328
+ }
329
+
330
+ // styled-system/css/cva.mjs
331
+ var defaults = (conf) => ({
332
+ base: {},
333
+ variants: {},
334
+ defaultVariants: {},
335
+ compoundVariants: [],
336
+ ...conf
337
+ });
338
+ function cva(config) {
339
+ const { base, variants, defaultVariants, compoundVariants } = defaults(config);
340
+ const getVariantProps = (variants2) => ({ ...defaultVariants, ...compact(variants2) });
341
+ function resolve(props = {}) {
342
+ const computedVariants = getVariantProps(props);
343
+ let variantCss = { ...base };
344
+ for (const [key, value] of Object.entries(computedVariants)) {
345
+ if (variants[key]?.[value]) {
346
+ variantCss = mergeCss(variantCss, variants[key][value]);
347
+ }
348
+ }
349
+ const compoundVariantCss = getCompoundVariantCss(compoundVariants, computedVariants);
350
+ return mergeCss(variantCss, compoundVariantCss);
351
+ }
352
+ function merge(__cva) {
353
+ const override = defaults(__cva.config);
354
+ const variantKeys2 = uniq(__cva.variantKeys, Object.keys(variants));
355
+ return cva({
356
+ base: mergeCss(base, override.base),
357
+ variants: Object.fromEntries(
358
+ variantKeys2.map((key) => [key, mergeCss(variants[key], override.variants[key])])
359
+ ),
360
+ defaultVariants: mergeProps(defaultVariants, override.defaultVariants),
361
+ compoundVariants: [...compoundVariants, ...override.compoundVariants]
362
+ });
363
+ }
364
+ function cvaFn(props) {
365
+ return css(resolve(props));
366
+ }
367
+ const variantKeys = Object.keys(variants);
368
+ function splitVariantProps(props) {
369
+ return splitProps(props, variantKeys);
370
+ }
371
+ const variantMap = Object.fromEntries(Object.entries(variants).map(([key, value]) => [key, Object.keys(value)]));
372
+ return Object.assign(memo(cvaFn), {
373
+ __cva__: true,
374
+ variantMap,
375
+ variantKeys,
376
+ raw: resolve,
377
+ config,
378
+ merge,
379
+ splitVariantProps,
380
+ getVariantProps
381
+ });
382
+ }
383
+ function getCompoundVariantCss(compoundVariants, variantMap) {
384
+ let result = {};
385
+ compoundVariants.forEach((compoundVariant) => {
386
+ const isMatching = Object.entries(compoundVariant).every(([key, value]) => {
387
+ if (key === "css") return true;
388
+ const values = Array.isArray(value) ? value : [value];
389
+ return values.some((value2) => variantMap[key] === value2);
390
+ });
391
+ if (isMatching) {
392
+ result = mergeCss(result, compoundVariant.css);
393
+ }
394
+ });
395
+ return result;
396
+ }
397
+
398
+ // styled-system/jsx/factory.mjs
399
+ var import_react = require("react");
400
+
401
+ // styled-system/jsx/is-valid-prop.mjs
402
+ var userGeneratedStr = "css,pos,insetX,insetY,insetEnd,end,insetStart,start,flexDir,p,pl,pr,pt,pb,py,paddingY,paddingX,px,pe,paddingEnd,ps,paddingStart,ml,mr,mt,mb,m,my,marginY,mx,marginX,me,marginEnd,ms,marginStart,ringWidth,ringColor,ring,ringOffset,w,minW,maxW,h,minH,maxH,textShadowColor,bgPosition,bgPositionX,bgPositionY,bgAttachment,bgClip,bg,bgColor,bgOrigin,bgImage,bgRepeat,bgBlendMode,bgSize,bgGradient,rounded,roundedTopLeft,roundedTopRight,roundedBottomRight,roundedBottomLeft,roundedTop,roundedRight,roundedBottom,roundedLeft,roundedStartStart,roundedStartEnd,roundedStart,roundedEndStart,roundedEndEnd,roundedEnd,borderX,borderXWidth,borderXColor,borderY,borderYWidth,borderYColor,borderStart,borderStartWidth,borderStartColor,borderEnd,borderEndWidth,borderEndColor,shadow,shadowColor,x,y,z,scrollMarginY,scrollMarginX,scrollPaddingY,scrollPaddingX,aspectRatio,boxDecorationBreak,zIndex,boxSizing,objectPosition,objectFit,overscrollBehavior,overscrollBehaviorX,overscrollBehaviorY,position,top,left,inset,insetInline,insetBlock,insetBlockEnd,insetBlockStart,insetInlineEnd,insetInlineStart,right,bottom,float,visibility,display,hideFrom,hideBelow,flexBasis,flex,flexDirection,flexGrow,flexShrink,gridTemplateColumns,gridTemplateRows,gridColumn,gridRow,gridColumnStart,gridColumnEnd,gridAutoFlow,gridAutoColumns,gridAutoRows,gap,gridGap,gridRowGap,gridColumnGap,rowGap,columnGap,justifyContent,alignContent,alignItems,alignSelf,padding,paddingLeft,paddingRight,paddingTop,paddingBottom,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingInline,paddingInlineEnd,paddingInlineStart,marginLeft,marginRight,marginTop,marginBottom,margin,marginBlock,marginBlockEnd,marginBlockStart,marginInline,marginInlineEnd,marginInlineStart,spaceX,spaceY,outlineWidth,outlineColor,outline,outlineOffset,divideX,divideY,divideColor,divideStyle,width,inlineSize,minWidth,minInlineSize,maxWidth,maxInlineSize,height,blockSize,minHeight,minBlockSize,maxHeight,maxBlockSize,color,fontFamily,fontSize,fontSizeAdjust,fontPalette,fontKerning,fontFeatureSettings,fontWeight,fontSmoothing,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariationSettings,fontVariantNumeric,letterSpacing,lineHeight,textAlign,textDecoration,textDecorationColor,textEmphasisColor,textDecorationStyle,textDecorationThickness,textUnderlineOffset,textTransform,textIndent,textShadow,textOverflow,verticalAlign,wordBreak,textWrap,truncate,lineClamp,listStyleType,listStylePosition,listStyleImage,listStyle,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundAttachment,backgroundClip,background,backgroundColor,backgroundOrigin,backgroundImage,backgroundRepeat,backgroundBlendMode,backgroundSize,backgroundGradient,textGradient,gradientFromPosition,gradientToPosition,gradientFrom,gradientTo,gradientVia,gradientViaPosition,borderRadius,borderTopLeftRadius,borderTopRightRadius,borderBottomRightRadius,borderBottomLeftRadius,borderTopRadius,borderRightRadius,borderBottomRadius,borderLeftRadius,borderStartStartRadius,borderStartEndRadius,borderStartRadius,borderEndStartRadius,borderEndEndRadius,borderEndRadius,border,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,borderColor,borderInline,borderInlineWidth,borderInlineColor,borderBlock,borderBlockWidth,borderBlockColor,borderLeft,borderLeftColor,borderInlineStart,borderInlineStartWidth,borderInlineStartColor,borderRight,borderRightColor,borderInlineEnd,borderInlineEndWidth,borderInlineEndColor,borderTop,borderTopColor,borderBottom,borderBottomColor,borderBlockEnd,borderBlockEndColor,borderBlockStart,borderBlockStartColor,opacity,boxShadow,boxShadowColor,mixBlendMode,filter,brightness,contrast,grayscale,hueRotate,invert,saturate,sepia,dropShadow,blur,backdropFilter,backdropBlur,backdropBrightness,backdropContrast,backdropGrayscale,backdropHueRotate,backdropInvert,backdropOpacity,backdropSaturate,backdropSepia,borderCollapse,borderSpacing,borderSpacingX,borderSpacingY,tableLayout,transitionTimingFunction,transitionDelay,transitionDuration,transitionProperty,transition,animation,animationName,animationTimingFunction,animationDuration,animationDelay,animationPlayState,animationComposition,animationFillMode,animationDirection,animationIterationCount,animationRange,animationState,animationRangeStart,animationRangeEnd,animationTimeline,transformOrigin,transformBox,transformStyle,transform,rotate,rotateX,rotateY,rotateZ,scale,scaleX,scaleY,translate,translateX,translateY,translateZ,accentColor,caretColor,scrollBehavior,scrollbar,scrollbarColor,scrollbarGutter,scrollbarWidth,scrollMargin,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollMarginBottom,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollPadding,scrollPaddingBlock,scrollPaddingBlockStart,scrollPaddingBlockEnd,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollPaddingBottom,scrollSnapAlign,scrollSnapStop,scrollSnapType,scrollSnapStrictness,scrollSnapMargin,scrollSnapMarginTop,scrollSnapMarginBottom,scrollSnapMarginLeft,scrollSnapMarginRight,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,touchAction,userSelect,overflow,overflowWrap,overflowX,overflowY,overflowAnchor,overflowBlock,overflowInline,overflowClipBox,overflowClipMargin,overscrollBehaviorBlock,overscrollBehaviorInline,fill,stroke,strokeWidth,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,srOnly,debug,appearance,backfaceVisibility,clipPath,hyphens,mask,maskImage,maskSize,textSizeAdjust,container,containerName,containerType,colorPalette,_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_default,_optional,_open,_closed,_fullscreen,_loading,_currentPage,_currentStep,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_starting,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,2xl,2xlOnly,2xlDown,smToMd,smToLg,smToXl,smTo2xl,mdToLg,mdToXl,mdTo2xl,lgToXl,lgTo2xl,xlTo2xl,@/xs,@/sm,@/md,@/lg,@/xl,@/2xl,@/3xl,@/4xl,@/5xl,@/6xl,@/7xl,@/8xl,textStyle";
403
+ var userGenerated = userGeneratedStr.split(",");
404
+ var cssPropertiesStr = "WebkitAppearance,WebkitBorderBefore,WebkitBorderBeforeColor,WebkitBorderBeforeStyle,WebkitBorderBeforeWidth,WebkitBoxReflect,WebkitLineClamp,WebkitMask,WebkitMaskAttachment,WebkitMaskClip,WebkitMaskComposite,WebkitMaskImage,WebkitMaskOrigin,WebkitMaskPosition,WebkitMaskPositionX,WebkitMaskPositionY,WebkitMaskRepeat,WebkitMaskRepeatX,WebkitMaskRepeatY,WebkitMaskSize,WebkitOverflowScrolling,WebkitTapHighlightColor,WebkitTextFillColor,WebkitTextStroke,WebkitTextStrokeColor,WebkitTextStrokeWidth,WebkitTouchCallout,WebkitUserModify,accentColor,alignContent,alignItems,alignSelf,alignTracks,all,animation,animationComposition,animationDelay,animationDirection,animationDuration,animationFillMode,animationIterationCount,animationName,animationPlayState,animationRange,animationRangeEnd,animationRangeStart,animationTimingFunction,animationTimeline,appearance,aspectRatio,azimuth,backdropFilter,backfaceVisibility,background,backgroundAttachment,backgroundBlendMode,backgroundClip,backgroundColor,backgroundImage,backgroundOrigin,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundRepeat,backgroundSize,blockSize,border,borderBlock,borderBlockColor,borderBlockStyle,borderBlockWidth,borderBlockEnd,borderBlockEndColor,borderBlockEndStyle,borderBlockEndWidth,borderBlockStart,borderBlockStartColor,borderBlockStartStyle,borderBlockStartWidth,borderBottom,borderBottomColor,borderBottomLeftRadius,borderBottomRightRadius,borderBottomStyle,borderBottomWidth,borderCollapse,borderColor,borderEndEndRadius,borderEndStartRadius,borderImage,borderImageOutset,borderImageRepeat,borderImageSlice,borderImageSource,borderImageWidth,borderInline,borderInlineEnd,borderInlineColor,borderInlineStyle,borderInlineWidth,borderInlineEndColor,borderInlineEndStyle,borderInlineEndWidth,borderInlineStart,borderInlineStartColor,borderInlineStartStyle,borderInlineStartWidth,borderLeft,borderLeftColor,borderLeftStyle,borderLeftWidth,borderRadius,borderRight,borderRightColor,borderRightStyle,borderRightWidth,borderSpacing,borderStartEndRadius,borderStartStartRadius,borderStyle,borderTop,borderTopColor,borderTopLeftRadius,borderTopRightRadius,borderTopStyle,borderTopWidth,borderWidth,bottom,boxAlign,boxDecorationBreak,boxDirection,boxFlex,boxFlexGroup,boxLines,boxOrdinalGroup,boxOrient,boxPack,boxShadow,boxSizing,breakAfter,breakBefore,breakInside,captionSide,caret,caretColor,caretShape,clear,clip,clipPath,color,colorScheme,columnCount,columnFill,columnGap,columnRule,columnRuleColor,columnRuleStyle,columnRuleWidth,columnSpan,columnWidth,columns,contain,containIntrinsicSize,containIntrinsicBlockSize,containIntrinsicHeight,containIntrinsicInlineSize,containIntrinsicWidth,container,containerName,containerType,content,contentVisibility,counterIncrement,counterReset,counterSet,cursor,direction,display,emptyCells,filter,flex,flexBasis,flexDirection,flexFlow,flexGrow,flexShrink,flexWrap,float,font,fontFamily,fontFeatureSettings,fontKerning,fontLanguageOverride,fontOpticalSizing,fontPalette,fontVariationSettings,fontSize,fontSizeAdjust,fontSmooth,fontStretch,fontStyle,fontSynthesis,fontSynthesisPosition,fontSynthesisSmallCaps,fontSynthesisStyle,fontSynthesisWeight,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariantEastAsian,fontVariantEmoji,fontVariantLigatures,fontVariantNumeric,fontVariantPosition,fontWeight,forcedColorAdjust,gap,grid,gridArea,gridAutoColumns,gridAutoFlow,gridAutoRows,gridColumn,gridColumnEnd,gridColumnGap,gridColumnStart,gridGap,gridRow,gridRowEnd,gridRowGap,gridRowStart,gridTemplate,gridTemplateAreas,gridTemplateColumns,gridTemplateRows,hangingPunctuation,height,hyphenateCharacter,hyphenateLimitChars,hyphens,imageOrientation,imageRendering,imageResolution,imeMode,initialLetter,initialLetterAlign,inlineSize,inputSecurity,inset,insetBlock,insetBlockEnd,insetBlockStart,insetInline,insetInlineEnd,insetInlineStart,isolation,justifyContent,justifyItems,justifySelf,justifyTracks,left,letterSpacing,lineBreak,lineClamp,lineHeight,lineHeightStep,listStyle,listStyleImage,listStylePosition,listStyleType,margin,marginBlock,marginBlockEnd,marginBlockStart,marginBottom,marginInline,marginInlineEnd,marginInlineStart,marginLeft,marginRight,marginTop,marginTrim,mask,maskBorder,maskBorderMode,maskBorderOutset,maskBorderRepeat,maskBorderSlice,maskBorderSource,maskBorderWidth,maskClip,maskComposite,maskImage,maskMode,maskOrigin,maskPosition,maskRepeat,maskSize,maskType,masonryAutoFlow,mathDepth,mathShift,mathStyle,maxBlockSize,maxHeight,maxInlineSize,maxLines,maxWidth,minBlockSize,minHeight,minInlineSize,minWidth,mixBlendMode,objectFit,objectPosition,offset,offsetAnchor,offsetDistance,offsetPath,offsetPosition,offsetRotate,opacity,order,orphans,outline,outlineColor,outlineOffset,outlineStyle,outlineWidth,overflow,overflowAnchor,overflowBlock,overflowClipBox,overflowClipMargin,overflowInline,overflowWrap,overflowX,overflowY,overlay,overscrollBehavior,overscrollBehaviorBlock,overscrollBehaviorInline,overscrollBehaviorX,overscrollBehaviorY,padding,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingBottom,paddingInline,paddingInlineEnd,paddingInlineStart,paddingLeft,paddingRight,paddingTop,page,pageBreakAfter,pageBreakBefore,pageBreakInside,paintOrder,perspective,perspectiveOrigin,placeContent,placeItems,placeSelf,pointerEvents,position,printColorAdjust,quotes,resize,right,rotate,rowGap,rubyAlign,rubyMerge,rubyPosition,scale,scrollbarColor,scrollbarGutter,scrollbarWidth,scrollBehavior,scrollMargin,scrollMarginBlock,scrollMarginBlockStart,scrollMarginBlockEnd,scrollMarginBottom,scrollMarginInline,scrollMarginInlineStart,scrollMarginInlineEnd,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollPadding,scrollPaddingBlock,scrollPaddingBlockStart,scrollPaddingBlockEnd,scrollPaddingBottom,scrollPaddingInline,scrollPaddingInlineStart,scrollPaddingInlineEnd,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollSnapAlign,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapStop,scrollSnapType,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,shapeImageThreshold,shapeMargin,shapeOutside,tabSize,tableLayout,textAlign,textAlignLast,textCombineUpright,textDecoration,textDecorationColor,textDecorationLine,textDecorationSkip,textDecorationSkipInk,textDecorationStyle,textDecorationThickness,textEmphasis,textEmphasisColor,textEmphasisPosition,textEmphasisStyle,textIndent,textJustify,textOrientation,textOverflow,textRendering,textShadow,textSizeAdjust,textTransform,textUnderlineOffset,textUnderlinePosition,textWrap,timelineScope,top,touchAction,transform,transformBox,transformOrigin,transformStyle,transition,transitionBehavior,transitionDelay,transitionDuration,transitionProperty,transitionTimingFunction,translate,unicodeBidi,userSelect,verticalAlign,viewTimeline,viewTimelineAxis,viewTimelineInset,viewTimelineName,viewTransitionName,visibility,whiteSpace,whiteSpaceCollapse,widows,width,willChange,wordBreak,wordSpacing,wordWrap,writingMode,zIndex,zoom,alignmentBaseline,baselineShift,clipRule,colorInterpolation,colorRendering,dominantBaseline,fill,fillOpacity,fillRule,floodColor,floodOpacity,glyphOrientationVertical,lightingColor,marker,markerEnd,markerMid,markerStart,shapeRendering,stopColor,stopOpacity,stroke,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,strokeWidth,textAnchor,vectorEffect";
405
+ var allCssProperties = cssPropertiesStr.split(",").concat(userGenerated);
406
+ var properties = new Map(allCssProperties.map((prop) => [prop, true]));
407
+ var cssPropertySelectorRegex = /&|@/;
408
+ var isCssProperty = /* @__PURE__ */ memo((prop) => {
409
+ return properties.has(prop) || prop.startsWith("--") || cssPropertySelectorRegex.test(prop);
410
+ });
411
+
412
+ // styled-system/jsx/factory-helper.mjs
413
+ var defaultShouldForwardProp = (prop, variantKeys) => !variantKeys.includes(prop) && !isCssProperty(prop);
414
+ var composeShouldForwardProps = (tag, shouldForwardProp2) => tag.__shouldForwardProps__ && shouldForwardProp2 ? (propName) => tag.__shouldForwardProps__(propName) && shouldForwardProp2(propName) : shouldForwardProp2;
415
+ var composeCvaFn = (cvaA, cvaB) => {
416
+ if (cvaA && !cvaB) return cvaA;
417
+ if (!cvaA && cvaB) return cvaB;
418
+ if (cvaA.__cva__ && cvaB.__cva__ || cvaA.__recipe__ && cvaB.__recipe__) return cvaA.merge(cvaB);
419
+ const error = new TypeError("Cannot merge cva with recipe. Please use either cva or recipe.");
420
+ TypeError.captureStackTrace?.(error);
421
+ throw error;
422
+ };
423
+ var getDisplayName = (Component) => {
424
+ if (typeof Component === "string") return Component;
425
+ return Component?.displayName || Component?.name || "Component";
426
+ };
427
+
428
+ // styled-system/jsx/factory.mjs
429
+ function styledFn(Dynamic, configOrCva = {}, options = {}) {
430
+ const cvaFn = configOrCva.__cva__ || configOrCva.__recipe__ ? configOrCva : cva(configOrCva);
431
+ const forwardFn = options.shouldForwardProp || defaultShouldForwardProp;
432
+ const shouldForwardProp2 = (prop) => forwardFn(prop, cvaFn.variantKeys);
433
+ const defaultProps = Object.assign(
434
+ options.dataAttr && configOrCva.__name__ ? { "data-recipe": configOrCva.__name__ } : {},
435
+ options.defaultProps
436
+ );
437
+ const __cvaFn__ = composeCvaFn(Dynamic.__cva__, cvaFn);
438
+ const __shouldForwardProps__ = composeShouldForwardProps(Dynamic, shouldForwardProp2);
439
+ const __base__ = Dynamic.__base__ || Dynamic;
440
+ const StyledComponent = /* @__PURE__ */ (0, import_react.forwardRef)(function StyledComponent2(props, ref) {
441
+ const { as: Element = __base__, children, ...restProps } = props;
442
+ const combinedProps = (0, import_react.useMemo)(() => Object.assign({}, defaultProps, restProps), [restProps]);
443
+ const [htmlProps2, forwardedProps, variantProps, styleProps, elementProps] = (0, import_react.useMemo)(() => {
444
+ return splitProps(combinedProps, normalizeHTMLProps.keys, __shouldForwardProps__, __cvaFn__.variantKeys, isCssProperty);
445
+ }, [combinedProps]);
446
+ function recipeClass() {
447
+ const { css: cssStyles, ...propStyles } = styleProps;
448
+ const compoundVariantStyles = __cvaFn__.__getCompoundVariantCss__?.(variantProps);
449
+ return cx(__cvaFn__(variantProps, false), css(compoundVariantStyles, propStyles, cssStyles), combinedProps.className);
450
+ }
451
+ function cvaClass() {
452
+ const { css: cssStyles, ...propStyles } = styleProps;
453
+ const cvaStyles = __cvaFn__.raw(variantProps);
454
+ return cx(css(cvaStyles, propStyles, cssStyles), combinedProps.className);
455
+ }
456
+ const classes = configOrCva.__recipe__ ? recipeClass : cvaClass;
457
+ return (0, import_react.createElement)(Element, {
458
+ ref,
459
+ ...forwardedProps,
460
+ ...elementProps,
461
+ ...normalizeHTMLProps(htmlProps2),
462
+ className: classes()
463
+ }, combinedProps.children ?? children);
464
+ });
465
+ const name = getDisplayName(__base__);
466
+ StyledComponent.displayName = `styled.${name}`;
467
+ StyledComponent.__cva__ = __cvaFn__;
468
+ StyledComponent.__base__ = __base__;
469
+ StyledComponent.__shouldForwardProps__ = shouldForwardProp2;
470
+ return StyledComponent;
471
+ }
472
+ function createJsxFactory() {
473
+ const cache = /* @__PURE__ */ new Map();
474
+ return new Proxy(styledFn, {
475
+ apply(_, __, args) {
476
+ return styledFn(...args);
477
+ },
478
+ get(_, el) {
479
+ if (!cache.has(el)) {
480
+ cache.set(el, styledFn(el));
481
+ }
482
+ return cache.get(el);
483
+ }
484
+ });
485
+ }
486
+ var styled = /* @__PURE__ */ createJsxFactory();
487
+
488
+ // src/index.tsx
489
+ var import_jsx_runtime = require("react/jsx-runtime");
490
+ var shouldForwardProp = (prop, variantKeys, options = {}) => options.forwardProps?.includes(prop) || !variantKeys.includes(prop) && !isCssProperty(prop);
491
+ var createStyleContext = (recipe) => {
492
+ const StyleContext = (0, import_react2.createContext)(null);
493
+ const withRootProvider = (Component) => {
494
+ const StyledComponent = (props) => {
495
+ const [variantProps, otherProps] = recipe.splitVariantProps(props);
496
+ const slotStyles = recipe(variantProps);
497
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyleContext.Provider, { value: slotStyles, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...otherProps }) });
498
+ };
499
+ return StyledComponent;
500
+ };
501
+ const withProvider = (Component, slot, options) => {
502
+ const StyledComponent = styled(
503
+ Component,
504
+ {},
505
+ {
506
+ shouldForwardProp: (prop, variantKeys) => shouldForwardProp(prop, variantKeys, options)
507
+ }
508
+ );
509
+ const StyledSlotProvider = (0, import_react2.forwardRef)((props, ref) => {
510
+ const [variantProps, otherProps] = recipe.splitVariantProps(props);
511
+ const slotStyles = recipe(variantProps);
512
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyleContext.Provider, { value: slotStyles, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
513
+ StyledComponent,
514
+ {
515
+ ...otherProps,
516
+ ref,
517
+ className: cx(slotStyles?.[slot], props.className)
518
+ }
519
+ ) });
520
+ });
521
+ StyledSlotProvider.displayName = Component.displayName || Component.name;
522
+ return StyledSlotProvider;
523
+ };
524
+ const withContext = (Component, slot) => {
525
+ const StyledComponent = styled(Component);
526
+ const StyledSlotComponent = (0, import_react2.forwardRef)((props, ref) => {
527
+ const slotStyles = (0, import_react2.useContext)(StyleContext);
528
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledComponent, { ...props, ref, className: cx(slotStyles?.[slot], props.className) });
529
+ });
530
+ StyledSlotComponent.displayName = Component.displayName || Component.name;
531
+ return StyledSlotComponent;
532
+ };
533
+ return {
534
+ withRootProvider,
535
+ withProvider,
536
+ withContext
537
+ };
538
+ };
539
+ // Annotate the CommonJS export names for ESM import in node:
540
+ 0 && (module.exports = {
541
+ createStyleContext
542
+ });