@tamagui/tailwind 3.0.0-beta.807.1 → 3.0.0-beta.881.1

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.
@@ -30,6 +30,7 @@ module.exports = __toCommonJS(candidate_exports);
30
30
  var import_constants = require("@tamagui/constants");
31
31
  var import_internal_runtime = require("@tamagui/core/internal-runtime");
32
32
  var import_runtime = require("@tamagui/style-grammar/runtime");
33
+ var import_candidate = require("@tamagui/style-grammar/tooling/candidate");
33
34
  const styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();
34
35
  function getStyleGrammarConfig(config) {
35
36
  const cached = styleGrammarConfigCache.get(config);
@@ -67,30 +68,30 @@ function tailwindSizingValue(prop, value) {
67
68
  function borderDimValue(raw) {
68
69
  let inner = raw;
69
70
  if (raw.length > 1 && raw[0] === "[" && raw[raw.length - 1] === "]") {
70
- inner = (0, import_runtime.decodeArbitrary)(raw.slice(1, -1));
71
+ inner = (0, import_candidate.decodeArbitrary)(raw.slice(1, -1));
71
72
  }
72
73
  const px = /^(-?\d*\.?\d+)px$/.exec(inner);
73
74
  if (px) return Number.parseFloat(px[1]);
74
75
  if (/^-?\d*\.?\d+$/.test(inner)) return Number(inner);
75
76
  return inner;
76
77
  }
77
- function expandBorderCandidate(parsed, value) {
78
+ function expansionProps(parsed) {
78
79
  const prefix = parsed.prefix;
79
80
  if (!prefix) return null;
81
+ if (prefix === "size") return import_runtime.sizeUtilityProps;
82
+ if (prefix === "inset-x" || prefix === "inset-y") {
83
+ return import_runtime.insetAxisProps[prefix.slice("inset-".length)];
84
+ }
80
85
  if (prefix.startsWith("rounded-")) {
81
86
  const props = import_runtime.radiusCornerProps[prefix.slice("rounded-".length)];
82
87
  if (!props || props.length === 1) return null;
83
- const out2 = {};
84
- for (const p of props) out2[p] = value;
85
- return out2;
88
+ return props;
86
89
  }
87
90
  const m = /^border-([trblxy])$/.exec(prefix);
88
91
  if (!m) return null;
89
92
  const sides = import_runtime.borderSideSuffix[m[1]];
90
93
  const suffix = parsed.entry?.prop.endsWith("Width") ? "Width" : "Color";
91
- const out = {};
92
- for (const side of sides) out[`border${side}${suffix}`] = value;
93
- return out;
94
+ return sides.map((side) => `border${side}${suffix}`);
94
95
  }
95
96
  function tailwindClassToFlatProp(parsed) {
96
97
  if (parsed.kind !== "dynamic" || !parsed.entry || parsed.rawValue === void 0) {
@@ -115,7 +116,7 @@ function tailwindClassToFlatProp(parsed) {
115
116
  if (prop === "fontFamily") {
116
117
  let famValue;
117
118
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
118
- famValue = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
119
+ famValue = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
119
120
  } else {
120
121
  const generic = {
121
122
  sans: "sans-serif",
@@ -132,7 +133,7 @@ function tailwindClassToFlatProp(parsed) {
132
133
  if (prop === "fontSize") {
133
134
  let fsValue;
134
135
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
135
- fsValue = arbitraryValue((0, import_runtime.decodeArbitrary)(value.slice(1, -1)));
136
+ fsValue = arbitraryValue((0, import_candidate.decodeArbitrary)(value.slice(1, -1)));
136
137
  } else {
137
138
  fsValue = value;
138
139
  }
@@ -144,7 +145,7 @@ function tailwindClassToFlatProp(parsed) {
144
145
  if (prop === "lineHeight") {
145
146
  let lhValue;
146
147
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
147
- const inner = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
148
+ const inner = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
148
149
  lhValue = /^-?\d*\.?\d+px$/.test(inner) ? Number.parseFloat(inner) : inner;
149
150
  } else {
150
151
  lhValue = value;
@@ -157,7 +158,7 @@ function tailwindClassToFlatProp(parsed) {
157
158
  if (prop === "letterSpacing") {
158
159
  let lsValue;
159
160
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
160
- lsValue = arbitraryValue((0, import_runtime.decodeArbitrary)(value.slice(1, -1)));
161
+ lsValue = arbitraryValue((0, import_candidate.decodeArbitrary)(value.slice(1, -1)));
161
162
  } else {
162
163
  lsValue = value;
163
164
  }
@@ -169,11 +170,11 @@ function tailwindClassToFlatProp(parsed) {
169
170
  if (prop === "boxShadow" && value[0] === "[" && value[value.length - 1] === "]") {
170
171
  return {
171
172
  key: "boxShadow",
172
- value: (0, import_runtime.decodeArbitrary)(value.slice(1, -1))
173
+ value: (0, import_candidate.decodeArbitrary)(value.slice(1, -1))
173
174
  };
174
175
  }
175
176
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
176
- const inner = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
177
+ const inner = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
177
178
  if (inner === "") return null;
178
179
  return {
179
180
  key: prop,
@@ -277,7 +278,7 @@ function computeClassPlan(cls, grammarConfig) {
277
278
  preserveRawClass: import_constants.isWeb
278
279
  };
279
280
  }
280
- const classification = (0, import_runtime.classifyCandidate)(cls, grammarConfig);
281
+ const classification = (0, import_candidate.classifyCandidate)(cls, grammarConfig);
281
282
  if (classification.kind === "passthrough") {
282
283
  return import_constants.isWeb ? "raw" : null;
283
284
  }
@@ -292,18 +293,26 @@ function computeClassPlan(cls, grammarConfig) {
292
293
  }
293
294
  return entries;
294
295
  }
296
+ const expandedProps = expansionProps(parsed);
297
+ if (expandedProps) {
298
+ const entries = [];
299
+ for (const prop of expandedProps) {
300
+ const flatProp2 = tailwindClassToFlatProp({
301
+ ...parsed,
302
+ entry: parsed.entry ? {
303
+ ...parsed.entry,
304
+ prop
305
+ } : parsed.entry
306
+ });
307
+ if (!flatProp2) return "raw";
308
+ const entry = createPlanEntry(flatProp2.key, flatProp2.value, parsed.modifiers);
309
+ if (!entry) return "raw";
310
+ entries.push(entry);
311
+ }
312
+ return entries;
313
+ }
295
314
  const flatProp = tailwindClassToFlatProp(parsed);
296
315
  if (flatProp) {
297
- const expanded = expandBorderCandidate(parsed, flatProp.value);
298
- if (expanded) {
299
- const entries = [];
300
- for (const p in expanded) {
301
- const entry2 = createPlanEntry(p, expanded[p], parsed.modifiers);
302
- if (!entry2) return "raw";
303
- entries.push(entry2);
304
- }
305
- return entries;
306
- }
307
316
  const entry = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);
308
317
  return entry ? [entry] : "raw";
309
318
  }
@@ -32,6 +32,7 @@ module.exports = __toCommonJS(candidate_exports);
32
32
  var import_constants = require("@tamagui/constants");
33
33
  var import_internal_runtime = require("@tamagui/core/internal-runtime");
34
34
  var import_runtime = require("@tamagui/style-grammar/runtime");
35
+ var import_candidate = require("@tamagui/style-grammar/tooling/candidate");
35
36
  function _type_of(obj) {
36
37
  "@swc/helpers - typeof";
37
38
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
@@ -74,69 +75,33 @@ function tailwindSizingValue(prop, value) {
74
75
  function borderDimValue(raw) {
75
76
  var inner = raw;
76
77
  if (raw.length > 1 && raw[0] === "[" && raw[raw.length - 1] === "]") {
77
- inner = (0, import_runtime.decodeArbitrary)(raw.slice(1, -1));
78
+ inner = (0, import_candidate.decodeArbitrary)(raw.slice(1, -1));
78
79
  }
79
80
  var px = /^(-?\d*\.?\d+)px$/.exec(inner);
80
81
  if (px) return Number.parseFloat(px[1]);
81
82
  if (/^-?\d*\.?\d+$/.test(inner)) return Number(inner);
82
83
  return inner;
83
84
  }
84
- function expandBorderCandidate(parsed, value) {
85
+ function expansionProps(parsed) {
85
86
  var _parsed_entry;
86
87
  var prefix = parsed.prefix;
87
88
  if (!prefix) return null;
89
+ if (prefix === "size") return import_runtime.sizeUtilityProps;
90
+ if (prefix === "inset-x" || prefix === "inset-y") {
91
+ return import_runtime.insetAxisProps[prefix.slice("inset-".length)];
92
+ }
88
93
  if (prefix.startsWith("rounded-")) {
89
94
  var props = import_runtime.radiusCornerProps[prefix.slice("rounded-".length)];
90
95
  if (!props || props.length === 1) return null;
91
- var out = {};
92
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
93
- try {
94
- for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
95
- var p = _step.value;
96
- out[p] = value;
97
- }
98
- } catch (err) {
99
- _didIteratorError = true;
100
- _iteratorError = err;
101
- } finally {
102
- try {
103
- if (!_iteratorNormalCompletion && _iterator.return != null) {
104
- _iterator.return();
105
- }
106
- } finally {
107
- if (_didIteratorError) {
108
- throw _iteratorError;
109
- }
110
- }
111
- }
112
- return out;
96
+ return props;
113
97
  }
114
98
  var m = /^border-([trblxy])$/.exec(prefix);
115
99
  if (!m) return null;
116
100
  var sides = import_runtime.borderSideSuffix[m[1]];
117
101
  var suffix = ((_parsed_entry = parsed.entry) === null || _parsed_entry === void 0 ? void 0 : _parsed_entry.prop.endsWith("Width")) ? "Width" : "Color";
118
- var out1 = {};
119
- var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;
120
- try {
121
- for (var _iterator1 = sides[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
122
- var side = _step1.value;
123
- out1[`border${side}${suffix}`] = value;
124
- }
125
- } catch (err) {
126
- _didIteratorError1 = true;
127
- _iteratorError1 = err;
128
- } finally {
129
- try {
130
- if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
131
- _iterator1.return();
132
- }
133
- } finally {
134
- if (_didIteratorError1) {
135
- throw _iteratorError1;
136
- }
137
- }
138
- }
139
- return out1;
102
+ return sides.map(function(side) {
103
+ return `border${side}${suffix}`;
104
+ });
140
105
  }
141
106
  function tailwindClassToFlatProp(parsed) {
142
107
  var _parsed_prefix;
@@ -162,7 +127,7 @@ function tailwindClassToFlatProp(parsed) {
162
127
  if (prop === "fontFamily") {
163
128
  var famValue;
164
129
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
165
- famValue = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
130
+ famValue = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
166
131
  } else {
167
132
  var generic = {
168
133
  sans: "sans-serif",
@@ -179,7 +144,7 @@ function tailwindClassToFlatProp(parsed) {
179
144
  if (prop === "fontSize") {
180
145
  var fsValue;
181
146
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
182
- fsValue = arbitraryValue((0, import_runtime.decodeArbitrary)(value.slice(1, -1)));
147
+ fsValue = arbitraryValue((0, import_candidate.decodeArbitrary)(value.slice(1, -1)));
183
148
  } else {
184
149
  fsValue = value;
185
150
  }
@@ -191,7 +156,7 @@ function tailwindClassToFlatProp(parsed) {
191
156
  if (prop === "lineHeight") {
192
157
  var lhValue;
193
158
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
194
- var inner = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
159
+ var inner = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
195
160
  lhValue = /^-?\d*\.?\d+px$/.test(inner) ? Number.parseFloat(inner) : inner;
196
161
  } else {
197
162
  lhValue = value;
@@ -204,7 +169,7 @@ function tailwindClassToFlatProp(parsed) {
204
169
  if (prop === "letterSpacing") {
205
170
  var lsValue;
206
171
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
207
- lsValue = arbitraryValue((0, import_runtime.decodeArbitrary)(value.slice(1, -1)));
172
+ lsValue = arbitraryValue((0, import_candidate.decodeArbitrary)(value.slice(1, -1)));
208
173
  } else {
209
174
  lsValue = value;
210
175
  }
@@ -216,11 +181,11 @@ function tailwindClassToFlatProp(parsed) {
216
181
  if (prop === "boxShadow" && value[0] === "[" && value[value.length - 1] === "]") {
217
182
  return {
218
183
  key: "boxShadow",
219
- value: (0, import_runtime.decodeArbitrary)(value.slice(1, -1))
184
+ value: (0, import_candidate.decodeArbitrary)(value.slice(1, -1))
220
185
  };
221
186
  }
222
187
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
223
- var inner1 = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
188
+ var inner1 = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
224
189
  if (inner1 === "") return null;
225
190
  return {
226
191
  key: prop,
@@ -324,7 +289,7 @@ function computeClassPlan(cls, grammarConfig) {
324
289
  preserveRawClass: import_constants.isWeb
325
290
  };
326
291
  }
327
- var classification = (0, import_runtime.classifyCandidate)(cls, grammarConfig);
292
+ var classification = (0, import_candidate.classifyCandidate)(cls, grammarConfig);
328
293
  if (classification.kind === "passthrough") {
329
294
  return import_constants.isWeb ? "raw" : null;
330
295
  }
@@ -339,19 +304,44 @@ function computeClassPlan(cls, grammarConfig) {
339
304
  }
340
305
  return entries1;
341
306
  }
342
- var flatProp = tailwindClassToFlatProp(parsed);
343
- if (flatProp) {
344
- var expanded = expandBorderCandidate(parsed, flatProp.value);
345
- if (expanded) {
346
- var entries2 = [];
347
- for (var p1 in expanded) {
348
- var entry1 = createPlanEntry(p1, expanded[p1], parsed.modifiers);
307
+ var expandedProps = expansionProps(parsed);
308
+ if (expandedProps) {
309
+ var entries2 = [];
310
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
311
+ try {
312
+ for (var _iterator = expandedProps[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
313
+ var prop = _step.value;
314
+ var flatProp = tailwindClassToFlatProp({
315
+ ...parsed,
316
+ entry: parsed.entry ? {
317
+ ...parsed.entry,
318
+ prop
319
+ } : parsed.entry
320
+ });
321
+ if (!flatProp) return "raw";
322
+ var entry1 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);
349
323
  if (!entry1) return "raw";
350
324
  entries2.push(entry1);
351
325
  }
352
- return entries2;
326
+ } catch (err) {
327
+ _didIteratorError = true;
328
+ _iteratorError = err;
329
+ } finally {
330
+ try {
331
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
332
+ _iterator.return();
333
+ }
334
+ } finally {
335
+ if (_didIteratorError) {
336
+ throw _iteratorError;
337
+ }
338
+ }
353
339
  }
354
- var entry2 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);
340
+ return entries2;
341
+ }
342
+ var flatProp1 = tailwindClassToFlatProp(parsed);
343
+ if (flatProp1) {
344
+ var entry2 = createPlanEntry(flatProp1.key, flatProp1.value, parsed.modifiers);
355
345
  return entry2 ? [entry2] : "raw";
356
346
  }
357
347
  return "raw";
@@ -32,6 +32,7 @@ module.exports = __toCommonJS(candidate_exports);
32
32
  var import_constants = require("@tamagui/constants");
33
33
  var import_internal_runtime = require("@tamagui/core/internal-runtime");
34
34
  var import_runtime = require("@tamagui/style-grammar/runtime");
35
+ var import_candidate = require("@tamagui/style-grammar/tooling/candidate");
35
36
  function _type_of(obj) {
36
37
  "@swc/helpers - typeof";
37
38
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
@@ -74,69 +75,33 @@ function tailwindSizingValue(prop, value) {
74
75
  function borderDimValue(raw) {
75
76
  var inner = raw;
76
77
  if (raw.length > 1 && raw[0] === "[" && raw[raw.length - 1] === "]") {
77
- inner = (0, import_runtime.decodeArbitrary)(raw.slice(1, -1));
78
+ inner = (0, import_candidate.decodeArbitrary)(raw.slice(1, -1));
78
79
  }
79
80
  var px = /^(-?\d*\.?\d+)px$/.exec(inner);
80
81
  if (px) return Number.parseFloat(px[1]);
81
82
  if (/^-?\d*\.?\d+$/.test(inner)) return Number(inner);
82
83
  return inner;
83
84
  }
84
- function expandBorderCandidate(parsed, value) {
85
+ function expansionProps(parsed) {
85
86
  var _parsed_entry;
86
87
  var prefix = parsed.prefix;
87
88
  if (!prefix) return null;
89
+ if (prefix === "size") return import_runtime.sizeUtilityProps;
90
+ if (prefix === "inset-x" || prefix === "inset-y") {
91
+ return import_runtime.insetAxisProps[prefix.slice("inset-".length)];
92
+ }
88
93
  if (prefix.startsWith("rounded-")) {
89
94
  var props = import_runtime.radiusCornerProps[prefix.slice("rounded-".length)];
90
95
  if (!props || props.length === 1) return null;
91
- var out = {};
92
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
93
- try {
94
- for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
95
- var p = _step.value;
96
- out[p] = value;
97
- }
98
- } catch (err) {
99
- _didIteratorError = true;
100
- _iteratorError = err;
101
- } finally {
102
- try {
103
- if (!_iteratorNormalCompletion && _iterator.return != null) {
104
- _iterator.return();
105
- }
106
- } finally {
107
- if (_didIteratorError) {
108
- throw _iteratorError;
109
- }
110
- }
111
- }
112
- return out;
96
+ return props;
113
97
  }
114
98
  var m = /^border-([trblxy])$/.exec(prefix);
115
99
  if (!m) return null;
116
100
  var sides = import_runtime.borderSideSuffix[m[1]];
117
101
  var suffix = ((_parsed_entry = parsed.entry) === null || _parsed_entry === void 0 ? void 0 : _parsed_entry.prop.endsWith("Width")) ? "Width" : "Color";
118
- var out1 = {};
119
- var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;
120
- try {
121
- for (var _iterator1 = sides[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
122
- var side = _step1.value;
123
- out1[`border${side}${suffix}`] = value;
124
- }
125
- } catch (err) {
126
- _didIteratorError1 = true;
127
- _iteratorError1 = err;
128
- } finally {
129
- try {
130
- if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
131
- _iterator1.return();
132
- }
133
- } finally {
134
- if (_didIteratorError1) {
135
- throw _iteratorError1;
136
- }
137
- }
138
- }
139
- return out1;
102
+ return sides.map(function(side) {
103
+ return `border${side}${suffix}`;
104
+ });
140
105
  }
141
106
  function tailwindClassToFlatProp(parsed) {
142
107
  var _parsed_prefix;
@@ -162,7 +127,7 @@ function tailwindClassToFlatProp(parsed) {
162
127
  if (prop === "fontFamily") {
163
128
  var famValue;
164
129
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
165
- famValue = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
130
+ famValue = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
166
131
  } else {
167
132
  var generic = {
168
133
  sans: "sans-serif",
@@ -179,7 +144,7 @@ function tailwindClassToFlatProp(parsed) {
179
144
  if (prop === "fontSize") {
180
145
  var fsValue;
181
146
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
182
- fsValue = arbitraryValue((0, import_runtime.decodeArbitrary)(value.slice(1, -1)));
147
+ fsValue = arbitraryValue((0, import_candidate.decodeArbitrary)(value.slice(1, -1)));
183
148
  } else {
184
149
  fsValue = value;
185
150
  }
@@ -191,7 +156,7 @@ function tailwindClassToFlatProp(parsed) {
191
156
  if (prop === "lineHeight") {
192
157
  var lhValue;
193
158
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
194
- var inner = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
159
+ var inner = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
195
160
  lhValue = /^-?\d*\.?\d+px$/.test(inner) ? Number.parseFloat(inner) : inner;
196
161
  } else {
197
162
  lhValue = value;
@@ -204,7 +169,7 @@ function tailwindClassToFlatProp(parsed) {
204
169
  if (prop === "letterSpacing") {
205
170
  var lsValue;
206
171
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
207
- lsValue = arbitraryValue((0, import_runtime.decodeArbitrary)(value.slice(1, -1)));
172
+ lsValue = arbitraryValue((0, import_candidate.decodeArbitrary)(value.slice(1, -1)));
208
173
  } else {
209
174
  lsValue = value;
210
175
  }
@@ -216,11 +181,11 @@ function tailwindClassToFlatProp(parsed) {
216
181
  if (prop === "boxShadow" && value[0] === "[" && value[value.length - 1] === "]") {
217
182
  return {
218
183
  key: "boxShadow",
219
- value: (0, import_runtime.decodeArbitrary)(value.slice(1, -1))
184
+ value: (0, import_candidate.decodeArbitrary)(value.slice(1, -1))
220
185
  };
221
186
  }
222
187
  if (value.length > 2 && value[0] === "[" && value[value.length - 1] === "]") {
223
- var inner1 = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));
188
+ var inner1 = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));
224
189
  if (inner1 === "") return null;
225
190
  return {
226
191
  key: prop,
@@ -324,7 +289,7 @@ function computeClassPlan(cls, grammarConfig) {
324
289
  preserveRawClass: import_constants.isWeb
325
290
  };
326
291
  }
327
- var classification = (0, import_runtime.classifyCandidate)(cls, grammarConfig);
292
+ var classification = (0, import_candidate.classifyCandidate)(cls, grammarConfig);
328
293
  if (classification.kind === "passthrough") {
329
294
  return import_constants.isWeb ? "raw" : null;
330
295
  }
@@ -339,19 +304,44 @@ function computeClassPlan(cls, grammarConfig) {
339
304
  }
340
305
  return entries1;
341
306
  }
342
- var flatProp = tailwindClassToFlatProp(parsed);
343
- if (flatProp) {
344
- var expanded = expandBorderCandidate(parsed, flatProp.value);
345
- if (expanded) {
346
- var entries2 = [];
347
- for (var p1 in expanded) {
348
- var entry1 = createPlanEntry(p1, expanded[p1], parsed.modifiers);
307
+ var expandedProps = expansionProps(parsed);
308
+ if (expandedProps) {
309
+ var entries2 = [];
310
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
311
+ try {
312
+ for (var _iterator = expandedProps[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
313
+ var prop = _step.value;
314
+ var flatProp = tailwindClassToFlatProp({
315
+ ...parsed,
316
+ entry: parsed.entry ? {
317
+ ...parsed.entry,
318
+ prop
319
+ } : parsed.entry
320
+ });
321
+ if (!flatProp) return "raw";
322
+ var entry1 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);
349
323
  if (!entry1) return "raw";
350
324
  entries2.push(entry1);
351
325
  }
352
- return entries2;
326
+ } catch (err) {
327
+ _didIteratorError = true;
328
+ _iteratorError = err;
329
+ } finally {
330
+ try {
331
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
332
+ _iterator.return();
333
+ }
334
+ } finally {
335
+ if (_didIteratorError) {
336
+ throw _iteratorError;
337
+ }
338
+ }
353
339
  }
354
- var entry2 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);
340
+ return entries2;
341
+ }
342
+ var flatProp1 = tailwindClassToFlatProp(parsed);
343
+ if (flatProp1) {
344
+ var entry2 = createPlanEntry(flatProp1.key, flatProp1.value, parsed.modifiers);
355
345
  return entry2 ? [entry2] : "raw";
356
346
  }
357
347
  return "raw";
@@ -1 +1 @@
1
- {"version":3,"file":"candidate.native.js","names":[],"sources":["cjs/candidate.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar candidate_exports = {};\n__export(candidate_exports, {\n getStyleGrammarConfig: () => getStyleGrammarConfig,\n getTailwindClassPlan: () => getTailwindClassPlan,\n isTokenValueProp: () => isTokenValueProp,\n resolveTailwindClassName: () => resolveTailwindClassName,\n setInAuthoredOrder: () => setInAuthoredOrder\n});\nmodule.exports = __toCommonJS(candidate_exports);\nvar import_constants = require(\"@tamagui/constants\");\nvar import_internal_runtime = require(\"@tamagui/core/internal-runtime\");\nvar import_runtime = require(\"@tamagui/style-grammar/runtime\");\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();\nfunction getStyleGrammarConfig(config) {\n var _config_configRevisionSymbol;\n var cached = styleGrammarConfigCache.get(config);\n var revision = ((_config_configRevisionSymbol = config[import_runtime.configRevisionSymbol]) === null || _config_configRevisionSymbol === void 0 ? void 0 : _config_configRevisionSymbol.revision) || 0;\n if (cached && cached.revision === revision) return cached.value;\n var view = (0, import_runtime.createGrammarConfigView)(config);\n styleGrammarConfigCache.set(config, {\n revision,\n value: view\n });\n return view;\n}\nfunction isTokenValueProp(prop) {\n return (0, import_runtime.getTokenCategory)(prop) !== null;\n}\nfunction arbitraryValue(inner) {\n var px = /^(-?\\d*\\.?\\d+)px$/.exec(inner);\n if (px) return Number(px[1]);\n if (/^-?\\d*\\.?\\d+$/.test(inner)) return Number(inner);\n return inner;\n}\nfunction tailwindSizingValue(prop, value) {\n if (value === \"full\") return \"100%\";\n if (value === \"auto\") return \"auto\";\n if (value === \"screen\") return /[Hh]eight/.test(prop) ? \"100vh\" : \"100vw\";\n if (value === \"min\") return \"min-content\";\n if (value === \"max\") return \"max-content\";\n if (value === \"fit\") return \"fit-content\";\n var frac = /^(\\d+)\\/(\\d+)$/.exec(value);\n if (frac && Number(frac[2]) !== 0) {\n return `${Number(frac[1]) / Number(frac[2]) * 100}%`;\n }\n return null;\n}\nfunction borderDimValue(raw) {\n var inner = raw;\n if (raw.length > 1 && raw[0] === \"[\" && raw[raw.length - 1] === \"]\") {\n inner = (0, import_runtime.decodeArbitrary)(raw.slice(1, -1));\n }\n var px = /^(-?\\d*\\.?\\d+)px$/.exec(inner);\n if (px) return Number.parseFloat(px[1]);\n if (/^-?\\d*\\.?\\d+$/.test(inner)) return Number(inner);\n return inner;\n}\nfunction expandBorderCandidate(parsed, value) {\n var _parsed_entry;\n var prefix = parsed.prefix;\n if (!prefix) return null;\n if (prefix.startsWith(\"rounded-\")) {\n var props = import_runtime.radiusCornerProps[prefix.slice(\"rounded-\".length)];\n if (!props || props.length === 1) return null;\n var out = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var p = _step.value;\n out[p] = value;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return out;\n }\n var m = /^border-([trblxy])$/.exec(prefix);\n if (!m) return null;\n var sides = import_runtime.borderSideSuffix[m[1]];\n var suffix = ((_parsed_entry = parsed.entry) === null || _parsed_entry === void 0 ? void 0 : _parsed_entry.prop.endsWith(\"Width\")) ? \"Width\" : \"Color\";\n var out1 = {};\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = sides[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var side = _step1.value;\n out1[`border${side}${suffix}`] = value;\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n return out1;\n}\nfunction tailwindClassToFlatProp(parsed) {\n var _parsed_prefix;\n if (parsed.kind !== \"dynamic\" || !parsed.entry || parsed.rawValue === void 0) {\n return null;\n }\n var prop = parsed.entry.prop;\n var category = parsed.entry.tokenCategory;\n var value = parsed.rawValue;\n if (prop.endsWith(\"Width\") && ((_parsed_prefix = parsed.prefix) === null || _parsed_prefix === void 0 ? void 0 : _parsed_prefix.startsWith(\"border\"))) {\n if (parsed.valueKind === \"token\") {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n } else if (parsed.valueKind === \"arbitrary\") {\n value = borderDimValue(value);\n } else {\n return null;\n }\n return {\n key: prop,\n value\n };\n }\n if (prop === \"fontFamily\") {\n var famValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n famValue = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));\n } else {\n var generic = {\n sans: \"sans-serif\",\n serif: \"serif\",\n mono: \"monospace\"\n };\n famValue = parsed.valueKind === \"token\" ? value : generic[value] || value;\n }\n return {\n key: \"fontFamily\",\n value: famValue\n };\n }\n if (prop === \"fontSize\") {\n var fsValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n fsValue = arbitraryValue((0, import_runtime.decodeArbitrary)(value.slice(1, -1)));\n } else {\n fsValue = value;\n }\n return {\n key: \"fontSize\",\n value: fsValue\n };\n }\n if (prop === \"lineHeight\") {\n var lhValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n var inner = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));\n lhValue = /^-?\\d*\\.?\\d+px$/.test(inner) ? Number.parseFloat(inner) : inner;\n } else {\n lhValue = value;\n }\n return {\n key: \"lineHeight\",\n value: lhValue\n };\n }\n if (prop === \"letterSpacing\") {\n var lsValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n lsValue = arbitraryValue((0, import_runtime.decodeArbitrary)(value.slice(1, -1)));\n } else {\n lsValue = value;\n }\n return {\n key: \"letterSpacing\",\n value: lsValue\n };\n }\n if (prop === \"boxShadow\" && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n return {\n key: \"boxShadow\",\n value: (0, import_runtime.decodeArbitrary)(value.slice(1, -1))\n };\n }\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n var inner1 = (0, import_runtime.decodeArbitrary)(value.slice(1, -1));\n if (inner1 === \"\") return null;\n return {\n key: prop,\n value: arbitraryValue(inner1)\n };\n }\n if (category === \"size\" && parsed.valueKind !== \"token\") {\n var sized = tailwindSizingValue(prop, value);\n if (sized != null) {\n return {\n key: prop,\n value: sized\n };\n }\n }\n var opacitySuffix = \"\";\n if (category === \"color\" && typeof value === \"string\") {\n var suffix = (0, import_runtime.splitColorOpacitySuffix)(value);\n if (suffix.kind === \"invalid\") {\n return {\n key: prop,\n value\n };\n }\n if (suffix.kind === \"valid\") {\n opacitySuffix = value.slice(suffix.name.length);\n value = suffix.name;\n }\n }\n if (import_runtime.percentUtilityProps.has(prop) && /^\\d+$/.test(value)) {\n value = Number(value) / 100;\n } else if (/^\\d+(\\.\\d+)?$/.test(value)) {\n if (category === \"zIndex\" && parsed.valueKind === \"convenience\") {\n value = Number(value);\n } else if (category) {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n } else {\n value = Number(value);\n }\n } else if (typeof value === \"string\") {\n if (category && !((category === \"space\" || category === \"size\" || category === \"radius\") && (0, import_runtime.getSafeAreaEdge)(value))) {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n }\n }\n if (opacitySuffix && typeof value === \"string\") {\n value = `${value}${opacitySuffix}`;\n }\n if (parsed.negative && !category) {\n if (typeof value === \"number\") value = -value;\n else if (typeof value === \"string\" && value[0] !== \"-\") value = `-${value}`;\n }\n return {\n key: prop,\n value\n };\n}\nvar classPlanCache = /* @__PURE__ */ new WeakMap();\nfunction getClassPlanCache(grammarConfig) {\n var cache = classPlanCache.get(grammarConfig);\n if (!cache) {\n cache = /* @__PURE__ */ new Map();\n classPlanCache.set(grammarConfig, cache);\n }\n return cache;\n}\nfunction createPlanEntry(property, value, modifiers) {\n if (modifiers.length === 0) return [\n property,\n value\n ];\n var payload = (0, import_internal_runtime.plainValueToPayload)(value, property);\n if (payload === null) return null;\n var condition = \"\";\n for (var index = 0; index < modifiers.length; index++) {\n if (index) condition += \":\";\n condition += modifiers[index];\n }\n return [\n property,\n payload,\n condition,\n modifiers\n ];\n}\nfunction computeClassPlan(cls, grammarConfig) {\n var groupMarker = /^group(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (groupMarker) {\n return {\n entries: [\n [\n \"group\",\n groupMarker[1] || true\n ]\n ],\n preserveRawClass: import_constants.isWeb\n };\n }\n var containerMarker = /^@container(-size)?(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (containerMarker) {\n var isSize = containerMarker[1] !== void 0;\n var name = containerMarker[2];\n var entries = [];\n entries.push([\n \"container\",\n name || true\n ]);\n if (isSize) {\n entries.push([\n \"containerType\",\n \"size\"\n ]);\n }\n return {\n entries,\n preserveRawClass: import_constants.isWeb\n };\n }\n var classification = (0, import_runtime.classifyCandidate)(cls, grammarConfig);\n if (classification.kind === \"passthrough\") {\n return import_constants.isWeb ? \"raw\" : null;\n }\n var parsed = classification.parsed;\n var util = parsed.kind === \"utility\" ? parsed.properties : null;\n if (util) {\n var entries1 = [];\n for (var p in util) {\n var entry = createPlanEntry(p, util[p], parsed.modifiers);\n if (!entry) return \"raw\";\n entries1.push(entry);\n }\n return entries1;\n }\n var flatProp = tailwindClassToFlatProp(parsed);\n if (flatProp) {\n var expanded = expandBorderCandidate(parsed, flatProp.value);\n if (expanded) {\n var entries2 = [];\n for (var p1 in expanded) {\n var entry1 = createPlanEntry(p1, expanded[p1], parsed.modifiers);\n if (!entry1) return \"raw\";\n entries2.push(entry1);\n }\n return entries2;\n }\n var entry2 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);\n return entry2 ? [\n entry2\n ] : \"raw\";\n }\n return \"raw\";\n}\nfunction getTailwindClassPlan(candidate, config) {\n var grammarConfig = getStyleGrammarConfig(config);\n var plans = getClassPlanCache(grammarConfig);\n var plan = plans.get(candidate);\n if (plan === void 0) {\n plan = computeClassPlan(candidate, grammarConfig);\n plans.set(candidate, plan);\n }\n return plan;\n}\nfunction resolveTailwindClassName(className, config) {\n var result = {};\n var rawClassName = \"\";\n var start = 0;\n for (var index = 0; index <= className.length; index++) {\n if (index !== className.length && className.charCodeAt(index) > 32) continue;\n if (start === index) {\n start = index + 1;\n continue;\n }\n var candidate = className.slice(start, index);\n var plan = getTailwindClassPlan(candidate, config);\n if (plan === \"raw\") {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n } else if (plan) {\n var parentPlan = plan;\n if (!Array.isArray(plan) && parentPlan.preserveRawClass) {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n }\n var entries = Array.isArray(plan) ? plan : parentPlan.entries;\n for (var entryIndex = 0; entryIndex < entries.length; entryIndex++) {\n var [key, value, condition] = entries[entryIndex];\n var previous = result[key];\n var next = value;\n if (condition !== void 0) {\n next = previous && (typeof previous === \"undefined\" ? \"undefined\" : _type_of(previous)) === \"object\" && !Array.isArray(previous) ? {\n ...previous,\n [condition]: value\n } : previous === void 0 ? {\n [condition]: value\n } : {\n default: previous,\n [condition]: value\n };\n } else if (previous && (typeof previous === \"undefined\" ? \"undefined\" : _type_of(previous)) === \"object\" && !Array.isArray(previous)) {\n next = {\n ...previous,\n default: value\n };\n }\n setInAuthoredOrder(result, key, next);\n }\n }\n start = index + 1;\n }\n if (rawClassName) result.className = rawClassName;\n return result;\n}\nfunction setInAuthoredOrder(target, key, value) {\n if (key in target) delete target[key];\n target[key] = value;\n}\n//# sourceMappingURL=candidate.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"candidate.native.js","names":[],"sources":["cjs/candidate.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar candidate_exports = {};\n__export(candidate_exports, {\n getStyleGrammarConfig: () => getStyleGrammarConfig,\n getTailwindClassPlan: () => getTailwindClassPlan,\n isTokenValueProp: () => isTokenValueProp,\n resolveTailwindClassName: () => resolveTailwindClassName,\n setInAuthoredOrder: () => setInAuthoredOrder\n});\nmodule.exports = __toCommonJS(candidate_exports);\nvar import_constants = require(\"@tamagui/constants\");\nvar import_internal_runtime = require(\"@tamagui/core/internal-runtime\");\nvar import_runtime = require(\"@tamagui/style-grammar/runtime\");\nvar import_candidate = require(\"@tamagui/style-grammar/tooling/candidate\");\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();\nfunction getStyleGrammarConfig(config) {\n var _config_configRevisionSymbol;\n var cached = styleGrammarConfigCache.get(config);\n var revision = ((_config_configRevisionSymbol = config[import_runtime.configRevisionSymbol]) === null || _config_configRevisionSymbol === void 0 ? void 0 : _config_configRevisionSymbol.revision) || 0;\n if (cached && cached.revision === revision) return cached.value;\n var view = (0, import_runtime.createGrammarConfigView)(config);\n styleGrammarConfigCache.set(config, {\n revision,\n value: view\n });\n return view;\n}\nfunction isTokenValueProp(prop) {\n return (0, import_runtime.getTokenCategory)(prop) !== null;\n}\nfunction arbitraryValue(inner) {\n var px = /^(-?\\d*\\.?\\d+)px$/.exec(inner);\n if (px) return Number(px[1]);\n if (/^-?\\d*\\.?\\d+$/.test(inner)) return Number(inner);\n return inner;\n}\nfunction tailwindSizingValue(prop, value) {\n if (value === \"full\") return \"100%\";\n if (value === \"auto\") return \"auto\";\n if (value === \"screen\") return /[Hh]eight/.test(prop) ? \"100vh\" : \"100vw\";\n if (value === \"min\") return \"min-content\";\n if (value === \"max\") return \"max-content\";\n if (value === \"fit\") return \"fit-content\";\n var frac = /^(\\d+)\\/(\\d+)$/.exec(value);\n if (frac && Number(frac[2]) !== 0) {\n return `${Number(frac[1]) / Number(frac[2]) * 100}%`;\n }\n return null;\n}\nfunction borderDimValue(raw) {\n var inner = raw;\n if (raw.length > 1 && raw[0] === \"[\" && raw[raw.length - 1] === \"]\") {\n inner = (0, import_candidate.decodeArbitrary)(raw.slice(1, -1));\n }\n var px = /^(-?\\d*\\.?\\d+)px$/.exec(inner);\n if (px) return Number.parseFloat(px[1]);\n if (/^-?\\d*\\.?\\d+$/.test(inner)) return Number(inner);\n return inner;\n}\nfunction expansionProps(parsed) {\n var _parsed_entry;\n var prefix = parsed.prefix;\n if (!prefix) return null;\n if (prefix === \"size\") return import_runtime.sizeUtilityProps;\n if (prefix === \"inset-x\" || prefix === \"inset-y\") {\n return import_runtime.insetAxisProps[prefix.slice(\"inset-\".length)];\n }\n if (prefix.startsWith(\"rounded-\")) {\n var props = import_runtime.radiusCornerProps[prefix.slice(\"rounded-\".length)];\n if (!props || props.length === 1) return null;\n return props;\n }\n var m = /^border-([trblxy])$/.exec(prefix);\n if (!m) return null;\n var sides = import_runtime.borderSideSuffix[m[1]];\n var suffix = ((_parsed_entry = parsed.entry) === null || _parsed_entry === void 0 ? void 0 : _parsed_entry.prop.endsWith(\"Width\")) ? \"Width\" : \"Color\";\n return sides.map(function(side) {\n return `border${side}${suffix}`;\n });\n}\nfunction tailwindClassToFlatProp(parsed) {\n var _parsed_prefix;\n if (parsed.kind !== \"dynamic\" || !parsed.entry || parsed.rawValue === void 0) {\n return null;\n }\n var prop = parsed.entry.prop;\n var category = parsed.entry.tokenCategory;\n var value = parsed.rawValue;\n if (prop.endsWith(\"Width\") && ((_parsed_prefix = parsed.prefix) === null || _parsed_prefix === void 0 ? void 0 : _parsed_prefix.startsWith(\"border\"))) {\n if (parsed.valueKind === \"token\") {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n } else if (parsed.valueKind === \"arbitrary\") {\n value = borderDimValue(value);\n } else {\n return null;\n }\n return {\n key: prop,\n value\n };\n }\n if (prop === \"fontFamily\") {\n var famValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n famValue = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));\n } else {\n var generic = {\n sans: \"sans-serif\",\n serif: \"serif\",\n mono: \"monospace\"\n };\n famValue = parsed.valueKind === \"token\" ? value : generic[value] || value;\n }\n return {\n key: \"fontFamily\",\n value: famValue\n };\n }\n if (prop === \"fontSize\") {\n var fsValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n fsValue = arbitraryValue((0, import_candidate.decodeArbitrary)(value.slice(1, -1)));\n } else {\n fsValue = value;\n }\n return {\n key: \"fontSize\",\n value: fsValue\n };\n }\n if (prop === \"lineHeight\") {\n var lhValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n var inner = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));\n lhValue = /^-?\\d*\\.?\\d+px$/.test(inner) ? Number.parseFloat(inner) : inner;\n } else {\n lhValue = value;\n }\n return {\n key: \"lineHeight\",\n value: lhValue\n };\n }\n if (prop === \"letterSpacing\") {\n var lsValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n lsValue = arbitraryValue((0, import_candidate.decodeArbitrary)(value.slice(1, -1)));\n } else {\n lsValue = value;\n }\n return {\n key: \"letterSpacing\",\n value: lsValue\n };\n }\n if (prop === \"boxShadow\" && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n return {\n key: \"boxShadow\",\n value: (0, import_candidate.decodeArbitrary)(value.slice(1, -1))\n };\n }\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n var inner1 = (0, import_candidate.decodeArbitrary)(value.slice(1, -1));\n if (inner1 === \"\") return null;\n return {\n key: prop,\n value: arbitraryValue(inner1)\n };\n }\n if (category === \"size\" && parsed.valueKind !== \"token\") {\n var sized = tailwindSizingValue(prop, value);\n if (sized != null) {\n return {\n key: prop,\n value: sized\n };\n }\n }\n var opacitySuffix = \"\";\n if (category === \"color\" && typeof value === \"string\") {\n var suffix = (0, import_runtime.splitColorOpacitySuffix)(value);\n if (suffix.kind === \"invalid\") {\n return {\n key: prop,\n value\n };\n }\n if (suffix.kind === \"valid\") {\n opacitySuffix = value.slice(suffix.name.length);\n value = suffix.name;\n }\n }\n if (import_runtime.percentUtilityProps.has(prop) && /^\\d+$/.test(value)) {\n value = Number(value) / 100;\n } else if (/^\\d+(\\.\\d+)?$/.test(value)) {\n if (category === \"zIndex\" && parsed.valueKind === \"convenience\") {\n value = Number(value);\n } else if (category) {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n } else {\n value = Number(value);\n }\n } else if (typeof value === \"string\") {\n if (category && !((category === \"space\" || category === \"size\" || category === \"radius\") && (0, import_runtime.getSafeAreaEdge)(value))) {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n }\n }\n if (opacitySuffix && typeof value === \"string\") {\n value = `${value}${opacitySuffix}`;\n }\n if (parsed.negative && !category) {\n if (typeof value === \"number\") value = -value;\n else if (typeof value === \"string\" && value[0] !== \"-\") value = `-${value}`;\n }\n return {\n key: prop,\n value\n };\n}\nvar classPlanCache = /* @__PURE__ */ new WeakMap();\nfunction getClassPlanCache(grammarConfig) {\n var cache = classPlanCache.get(grammarConfig);\n if (!cache) {\n cache = /* @__PURE__ */ new Map();\n classPlanCache.set(grammarConfig, cache);\n }\n return cache;\n}\nfunction createPlanEntry(property, value, modifiers) {\n if (modifiers.length === 0) return [\n property,\n value\n ];\n var payload = (0, import_internal_runtime.plainValueToPayload)(value, property);\n if (payload === null) return null;\n var condition = \"\";\n for (var index = 0; index < modifiers.length; index++) {\n if (index) condition += \":\";\n condition += modifiers[index];\n }\n return [\n property,\n payload,\n condition,\n modifiers\n ];\n}\nfunction computeClassPlan(cls, grammarConfig) {\n var groupMarker = /^group(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (groupMarker) {\n return {\n entries: [\n [\n \"group\",\n groupMarker[1] || true\n ]\n ],\n preserveRawClass: import_constants.isWeb\n };\n }\n var containerMarker = /^@container(-size)?(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (containerMarker) {\n var isSize = containerMarker[1] !== void 0;\n var name = containerMarker[2];\n var entries = [];\n entries.push([\n \"container\",\n name || true\n ]);\n if (isSize) {\n entries.push([\n \"containerType\",\n \"size\"\n ]);\n }\n return {\n entries,\n preserveRawClass: import_constants.isWeb\n };\n }\n var classification = (0, import_candidate.classifyCandidate)(cls, grammarConfig);\n if (classification.kind === \"passthrough\") {\n return import_constants.isWeb ? \"raw\" : null;\n }\n var parsed = classification.parsed;\n var util = parsed.kind === \"utility\" ? parsed.properties : null;\n if (util) {\n var entries1 = [];\n for (var p in util) {\n var entry = createPlanEntry(p, util[p], parsed.modifiers);\n if (!entry) return \"raw\";\n entries1.push(entry);\n }\n return entries1;\n }\n var expandedProps = expansionProps(parsed);\n if (expandedProps) {\n var entries2 = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = expandedProps[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var prop = _step.value;\n var flatProp = tailwindClassToFlatProp({\n ...parsed,\n entry: parsed.entry ? {\n ...parsed.entry,\n prop\n } : parsed.entry\n });\n if (!flatProp) return \"raw\";\n var entry1 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);\n if (!entry1) return \"raw\";\n entries2.push(entry1);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return entries2;\n }\n var flatProp1 = tailwindClassToFlatProp(parsed);\n if (flatProp1) {\n var entry2 = createPlanEntry(flatProp1.key, flatProp1.value, parsed.modifiers);\n return entry2 ? [\n entry2\n ] : \"raw\";\n }\n return \"raw\";\n}\nfunction getTailwindClassPlan(candidate, config) {\n var grammarConfig = getStyleGrammarConfig(config);\n var plans = getClassPlanCache(grammarConfig);\n var plan = plans.get(candidate);\n if (plan === void 0) {\n plan = computeClassPlan(candidate, grammarConfig);\n plans.set(candidate, plan);\n }\n return plan;\n}\nfunction resolveTailwindClassName(className, config) {\n var result = {};\n var rawClassName = \"\";\n var start = 0;\n for (var index = 0; index <= className.length; index++) {\n if (index !== className.length && className.charCodeAt(index) > 32) continue;\n if (start === index) {\n start = index + 1;\n continue;\n }\n var candidate = className.slice(start, index);\n var plan = getTailwindClassPlan(candidate, config);\n if (plan === \"raw\") {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n } else if (plan) {\n var parentPlan = plan;\n if (!Array.isArray(plan) && parentPlan.preserveRawClass) {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n }\n var entries = Array.isArray(plan) ? plan : parentPlan.entries;\n for (var entryIndex = 0; entryIndex < entries.length; entryIndex++) {\n var [key, value, condition] = entries[entryIndex];\n var previous = result[key];\n var next = value;\n if (condition !== void 0) {\n next = previous && (typeof previous === \"undefined\" ? \"undefined\" : _type_of(previous)) === \"object\" && !Array.isArray(previous) ? {\n ...previous,\n [condition]: value\n } : previous === void 0 ? {\n [condition]: value\n } : {\n default: previous,\n [condition]: value\n };\n } else if (previous && (typeof previous === \"undefined\" ? \"undefined\" : _type_of(previous)) === \"object\" && !Array.isArray(previous)) {\n next = {\n ...previous,\n default: value\n };\n }\n setInAuthoredOrder(result, key, next);\n }\n }\n start = index + 1;\n }\n if (rawClassName) result.className = rawClassName;\n return result;\n}\nfunction setInAuthoredOrder(target, key, value) {\n if (key in target) delete target[key];\n target[key] = value;\n}\n//# sourceMappingURL=candidate.js.map\n"],"mappings":"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"}