@tenphi/tasty 3.0.1 → 3.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -16
- package/dist/{babel-HlEpSZrj.d.ts → babel-R2qT7yLN.d.ts} +2 -2
- package/dist/{collector-D14DcZx9.js → collector-BpkjNQDo.js} +3 -3
- package/dist/{collector-D14DcZx9.js.map → collector-BpkjNQDo.js.map} +1 -1
- package/dist/{collector-BPzZezAG.d.ts → collector-D8o4Wdq-.d.ts} +2 -2
- package/dist/{config-CCcE_tqx.js → config-DOCuTykY.js} +260 -107
- package/dist/config-DOCuTykY.js.map +1 -0
- package/dist/{config-D2INrjr_.d.ts → config-De8L9NWM.d.ts} +2 -2
- package/dist/core/index.d.ts +4 -4
- package/dist/core/index.js +5 -5
- package/dist/{core-B5d0IPi2.js → core-p6iTbQnn.js} +7 -7
- package/dist/core-p6iTbQnn.js.map +1 -0
- package/dist/{css-writer-B5DBoxhf.js → css-writer-BHjTF0YN.js} +3 -3
- package/dist/{css-writer-B5DBoxhf.js.map → css-writer-BHjTF0YN.js.map} +1 -1
- package/dist/{format-rules-BbKDjsfO.js → format-rules-Cb0YIjyS.js} +2 -2
- package/dist/{format-rules-BbKDjsfO.js.map → format-rules-Cb0YIjyS.js.map} +1 -1
- package/dist/{hydrate-CwALW3J9.js → hydrate-xnaB3SDm.js} +2 -2
- package/dist/{hydrate-CwALW3J9.js.map → hydrate-xnaB3SDm.js.map} +1 -1
- package/dist/{index-BAAbdfRs.d.ts → index-DzGxoeyN.d.ts} +5 -5
- package/dist/{index-l_NdJSUS.d.ts → index-KUYya3x7.d.ts} +11 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.js +6 -6
- package/dist/{keyframes-B8M1FmtE.js → keyframes-DiXjNoBZ.js} +2 -2
- package/dist/{keyframes-B8M1FmtE.js.map → keyframes-DiXjNoBZ.js.map} +1 -1
- package/dist/{merge-styles--1zOSFlS.js → merge-styles-B0lMso5W.js} +2 -2
- package/dist/{merge-styles--1zOSFlS.js.map → merge-styles-B0lMso5W.js.map} +1 -1
- package/dist/{merge-styles-NEvqayL_.d.ts → merge-styles-DLm4wdnb.d.ts} +2 -2
- package/dist/{resolve-recipes-Caix5NnH.js → resolve-recipes-C9nAuwgR.js} +3 -3
- package/dist/{resolve-recipes-Caix5NnH.js.map → resolve-recipes-C9nAuwgR.js.map} +1 -1
- package/dist/ssr/astro-client.js +1 -1
- package/dist/ssr/astro.js +3 -3
- package/dist/ssr/index.d.ts +1 -1
- package/dist/ssr/index.js +3 -3
- package/dist/ssr/next.d.ts +1 -1
- package/dist/ssr/next.js +4 -4
- package/dist/static/index.d.ts +2 -2
- package/dist/static/index.js +1 -1
- package/dist/zero/babel.d.ts +1 -1
- package/dist/zero/babel.js +4 -4
- package/dist/zero/index.d.ts +1 -1
- package/dist/zero/index.js +1 -1
- package/dist/zero/next.d.ts +1 -1
- package/docs/ai-agents.md +3 -0
- package/docs/configuration.md +1 -0
- package/package.json +14 -10
- package/dist/config-CCcE_tqx.js.map +0 -1
- package/dist/core-B5d0IPi2.js.map +0 -1
|
@@ -1,3 +1,115 @@
|
|
|
1
|
+
//#region src/parser/const.ts
|
|
2
|
+
const VALUE_KEYWORDS = new Set([
|
|
3
|
+
"auto",
|
|
4
|
+
"max-content",
|
|
5
|
+
"min-content",
|
|
6
|
+
"fit-content",
|
|
7
|
+
"stretch",
|
|
8
|
+
"initial",
|
|
9
|
+
"inherit",
|
|
10
|
+
"revert",
|
|
11
|
+
"unset",
|
|
12
|
+
"revert-layer"
|
|
13
|
+
]);
|
|
14
|
+
const CSS_WIDE_KEYWORDS = new Set([
|
|
15
|
+
"initial",
|
|
16
|
+
"inherit",
|
|
17
|
+
"revert",
|
|
18
|
+
"unset",
|
|
19
|
+
"revert-layer"
|
|
20
|
+
]);
|
|
21
|
+
const COLOR_FUNCS = new Set([
|
|
22
|
+
"rgb",
|
|
23
|
+
"rgba",
|
|
24
|
+
"hsl",
|
|
25
|
+
"hsla",
|
|
26
|
+
"hwb",
|
|
27
|
+
"lab",
|
|
28
|
+
"lch",
|
|
29
|
+
"oklab",
|
|
30
|
+
"oklch",
|
|
31
|
+
"color",
|
|
32
|
+
"device-cmyk",
|
|
33
|
+
"gray",
|
|
34
|
+
"color-mix",
|
|
35
|
+
"color-contrast"
|
|
36
|
+
]);
|
|
37
|
+
const RE_UNIT_NUM = /^[+-]?(?:\d*\.\d+|\d+)([a-z][a-z0-9]*)$/;
|
|
38
|
+
const RE_NUMBER = /^[+-]?(?:\d*\.\d+|\d+)$/;
|
|
39
|
+
const RE_HEX = /^(?:[0-9a-f]{3,4}|[0-9a-f]{6}(?:[0-9a-f]{2})?)$/;
|
|
40
|
+
const RE_RAW_UNIT = /^([+-]?(?:\d*\.\d+|\d+))([a-z%]+)$/;
|
|
41
|
+
const CANONICAL_FUNC_CASE = new Map([
|
|
42
|
+
["translatex", "translateX"],
|
|
43
|
+
["translatey", "translateY"],
|
|
44
|
+
["translatez", "translateZ"],
|
|
45
|
+
["scalex", "scaleX"],
|
|
46
|
+
["scaley", "scaleY"],
|
|
47
|
+
["scalez", "scaleZ"],
|
|
48
|
+
["rotatex", "rotateX"],
|
|
49
|
+
["rotatey", "rotateY"],
|
|
50
|
+
["rotatez", "rotateZ"],
|
|
51
|
+
["skewx", "skewX"],
|
|
52
|
+
["skewy", "skewY"]
|
|
53
|
+
]);
|
|
54
|
+
function canonicalFuncName(lowered) {
|
|
55
|
+
return CANONICAL_FUNC_CASE.get(lowered) ?? lowered;
|
|
56
|
+
}
|
|
57
|
+
//#endregion
|
|
58
|
+
//#region src/utils/string.ts
|
|
59
|
+
function toSnakeCase(str) {
|
|
60
|
+
return str.replace(/[A-Z]/g, (s) => `-${s.toLowerCase()}`);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Normalize a DSL identifier to the CSS custom-property name it emits.
|
|
64
|
+
*
|
|
65
|
+
* CSS custom-property names are case-sensitive, so `$myVar` has to keep its
|
|
66
|
+
* inner case to reference `--myVar`. A leading capital is the one exception:
|
|
67
|
+
* `$Foo` is not a supported way to name a property, so the first character is
|
|
68
|
+
* folded rather than kebab-cased (`--foo`, not `---foo`) and every later
|
|
69
|
+
* character is left alone.
|
|
70
|
+
*
|
|
71
|
+
* Every place that turns a `$name` / `#name` identifier into a CSS name goes
|
|
72
|
+
* through this, so authoring a token and referencing it always agree.
|
|
73
|
+
*/
|
|
74
|
+
function normalizeDslName(name) {
|
|
75
|
+
if (!name) return name;
|
|
76
|
+
const first = name[0];
|
|
77
|
+
const lower = first.toLowerCase();
|
|
78
|
+
return lower === first ? name : lower + name.slice(1);
|
|
79
|
+
}
|
|
80
|
+
/** A DSL identifier: `$name`, `$$name`, `#name` or `##name`. */
|
|
81
|
+
const RE_DSL_IDENTIFIER = /(\$\$?|##?)([a-zA-Z_][a-zA-Z0-9_-]*)/g;
|
|
82
|
+
/**
|
|
83
|
+
* Case-fold a DSL string for parsing, preserving the case of custom-property
|
|
84
|
+
* names.
|
|
85
|
+
*
|
|
86
|
+
* Everything the parser matches on — keywords, units, modifiers, function names,
|
|
87
|
+
* color-token names — is compared lowercase, so the whole string used to be
|
|
88
|
+
* lowercased up front. That also folded custom-property names, which are
|
|
89
|
+
* case-sensitive in CSS: `$myVar` referenced `var(--myvar)` while the token
|
|
90
|
+
* definition emitted `--myVar`, so the two could never meet.
|
|
91
|
+
*
|
|
92
|
+
* Identifier bodies now keep their case (their first character still folds, see
|
|
93
|
+
* {@link normalizeDslName}); everything else is lowercased exactly as before.
|
|
94
|
+
* Hex literals are excluded — `#FF0000` is a color, not a name, and must fold to
|
|
95
|
+
* match {@link RE_HEX}.
|
|
96
|
+
*/
|
|
97
|
+
function foldDslCase(src) {
|
|
98
|
+
const folded = src.toLowerCase();
|
|
99
|
+
if (folded === src || !src.includes("$") && !src.includes("#")) return folded;
|
|
100
|
+
RE_DSL_IDENTIFIER.lastIndex = 0;
|
|
101
|
+
let out = "";
|
|
102
|
+
let last = 0;
|
|
103
|
+
let match;
|
|
104
|
+
while (match = RE_DSL_IDENTIFIER.exec(src)) {
|
|
105
|
+
const [whole, prefix, body] = match;
|
|
106
|
+
out += src.slice(last, match.index).toLowerCase();
|
|
107
|
+
out += prefix + (prefix[0] === "#" && RE_HEX.test(body.toLowerCase()) ? body.toLowerCase() : normalizeDslName(body));
|
|
108
|
+
last = match.index + whole.length;
|
|
109
|
+
}
|
|
110
|
+
return out + src.slice(last).toLowerCase();
|
|
111
|
+
}
|
|
112
|
+
//#endregion
|
|
1
113
|
//#region src/parser/lru.ts
|
|
2
114
|
var Lru = class {
|
|
3
115
|
limit;
|
|
@@ -1203,63 +1315,6 @@ function getComponentPropertySyntax() {
|
|
|
1203
1315
|
}
|
|
1204
1316
|
}
|
|
1205
1317
|
//#endregion
|
|
1206
|
-
//#region src/parser/const.ts
|
|
1207
|
-
const VALUE_KEYWORDS = new Set([
|
|
1208
|
-
"auto",
|
|
1209
|
-
"max-content",
|
|
1210
|
-
"min-content",
|
|
1211
|
-
"fit-content",
|
|
1212
|
-
"stretch",
|
|
1213
|
-
"initial",
|
|
1214
|
-
"inherit",
|
|
1215
|
-
"revert",
|
|
1216
|
-
"unset",
|
|
1217
|
-
"revert-layer"
|
|
1218
|
-
]);
|
|
1219
|
-
const CSS_WIDE_KEYWORDS = new Set([
|
|
1220
|
-
"initial",
|
|
1221
|
-
"inherit",
|
|
1222
|
-
"revert",
|
|
1223
|
-
"unset",
|
|
1224
|
-
"revert-layer"
|
|
1225
|
-
]);
|
|
1226
|
-
const COLOR_FUNCS = new Set([
|
|
1227
|
-
"rgb",
|
|
1228
|
-
"rgba",
|
|
1229
|
-
"hsl",
|
|
1230
|
-
"hsla",
|
|
1231
|
-
"hwb",
|
|
1232
|
-
"lab",
|
|
1233
|
-
"lch",
|
|
1234
|
-
"oklab",
|
|
1235
|
-
"oklch",
|
|
1236
|
-
"color",
|
|
1237
|
-
"device-cmyk",
|
|
1238
|
-
"gray",
|
|
1239
|
-
"color-mix",
|
|
1240
|
-
"color-contrast"
|
|
1241
|
-
]);
|
|
1242
|
-
const RE_UNIT_NUM = /^[+-]?(?:\d*\.\d+|\d+)([a-z][a-z0-9]*)$/;
|
|
1243
|
-
const RE_NUMBER = /^[+-]?(?:\d*\.\d+|\d+)$/;
|
|
1244
|
-
const RE_HEX = /^(?:[0-9a-f]{3,4}|[0-9a-f]{6}(?:[0-9a-f]{2})?)$/;
|
|
1245
|
-
const RE_RAW_UNIT = /^([+-]?(?:\d*\.\d+|\d+))([a-z%]+)$/;
|
|
1246
|
-
const CANONICAL_FUNC_CASE = new Map([
|
|
1247
|
-
["translatex", "translateX"],
|
|
1248
|
-
["translatey", "translateY"],
|
|
1249
|
-
["translatez", "translateZ"],
|
|
1250
|
-
["scalex", "scaleX"],
|
|
1251
|
-
["scaley", "scaleY"],
|
|
1252
|
-
["scalez", "scaleZ"],
|
|
1253
|
-
["rotatex", "rotateX"],
|
|
1254
|
-
["rotatey", "rotateY"],
|
|
1255
|
-
["rotatez", "rotateZ"],
|
|
1256
|
-
["skewx", "skewX"],
|
|
1257
|
-
["skewy", "skewY"]
|
|
1258
|
-
]);
|
|
1259
|
-
function canonicalFuncName(lowered) {
|
|
1260
|
-
return CANONICAL_FUNC_CASE.get(lowered) ?? lowered;
|
|
1261
|
-
}
|
|
1262
|
-
//#endregion
|
|
1263
1318
|
//#region src/parser/types.ts
|
|
1264
1319
|
const makeEmptyPart = () => ({
|
|
1265
1320
|
mods: [],
|
|
@@ -1414,17 +1469,19 @@ function classify(raw, opts, recurse) {
|
|
|
1414
1469
|
if (token[0] === "$" || token[0] === "#") {
|
|
1415
1470
|
const predefinedTokens = getGlobalPredefinedTokens();
|
|
1416
1471
|
if (predefinedTokens) {
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
|
|
1472
|
+
const lookupKey = token.toLowerCase();
|
|
1473
|
+
if (lookupKey in predefinedTokens) {
|
|
1474
|
+
const tokenValue = predefinedTokens[lookupKey];
|
|
1475
|
+
return classify(foldDslCase(tokenValue), opts, recurse);
|
|
1420
1476
|
}
|
|
1421
1477
|
if (token[0] === "#") {
|
|
1422
1478
|
const alphaMatch = token.match(/^(#[a-z0-9-]+)\.(\$[a-z_][a-z0-9-_]*|[0-9]+)$/i);
|
|
1423
1479
|
if (alphaMatch) {
|
|
1424
1480
|
const [, baseToken, rawAlpha] = alphaMatch;
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1481
|
+
const baseKey = baseToken.toLowerCase();
|
|
1482
|
+
if (baseKey in predefinedTokens) {
|
|
1483
|
+
const resolvedValue = predefinedTokens[baseKey];
|
|
1484
|
+
if (resolvedValue.startsWith("#")) return classify(`${foldDslCase(resolvedValue)}.${rawAlpha}`, opts, recurse);
|
|
1428
1485
|
const funcMatch = resolvedValue.match(/^([a-z][a-z0-9-]*)\((.+)\)$/i);
|
|
1429
1486
|
if (funcMatch) {
|
|
1430
1487
|
const [, funcName, args] = funcMatch;
|
|
@@ -1493,7 +1550,7 @@ function classify(raw, opts, recurse) {
|
|
|
1493
1550
|
}
|
|
1494
1551
|
}
|
|
1495
1552
|
}
|
|
1496
|
-
if (token.match(/^var\(--([a-
|
|
1553
|
+
if (token.match(/^var\(--([a-zA-Z0-9-]+)-color\)$/)) return {
|
|
1497
1554
|
bucket: 0,
|
|
1498
1555
|
processed: token
|
|
1499
1556
|
};
|
|
@@ -1502,12 +1559,12 @@ function classify(raw, opts, recurse) {
|
|
|
1502
1559
|
processed: token
|
|
1503
1560
|
};
|
|
1504
1561
|
if (token[0] === "$") {
|
|
1505
|
-
const identMatch = token.match(/^\$([a-z_][a-
|
|
1562
|
+
const identMatch = token.match(/^\$([a-z_][a-zA-Z0-9-_]*)$/);
|
|
1506
1563
|
if (identMatch) {
|
|
1507
1564
|
const name = identMatch[1];
|
|
1508
1565
|
const processed = `var(--${name})`;
|
|
1509
1566
|
return {
|
|
1510
|
-
bucket: name.endsWith("-color") ?
|
|
1567
|
+
bucket: name.endsWith("-color") ? 3 : 1,
|
|
1511
1568
|
processed
|
|
1512
1569
|
};
|
|
1513
1570
|
}
|
|
@@ -1570,12 +1627,12 @@ function classify(raw, opts, recurse) {
|
|
|
1570
1627
|
}
|
|
1571
1628
|
}
|
|
1572
1629
|
if (token.startsWith("(") && token.endsWith(")")) {
|
|
1573
|
-
const match = token.slice(1, -1).match(/^\$([a-z_][a-
|
|
1630
|
+
const match = token.slice(1, -1).match(/^\$([a-z_][a-zA-Z0-9-_]*)\s*,\s*(.*)$/);
|
|
1574
1631
|
if (match) {
|
|
1575
1632
|
const [, name, fallback] = match;
|
|
1576
1633
|
const processedFallback = recurse(fallback).output;
|
|
1577
1634
|
return {
|
|
1578
|
-
bucket: name.endsWith("-color") ?
|
|
1635
|
+
bucket: name.endsWith("-color") ? 3 : 1,
|
|
1579
1636
|
processed: `var(--${name}, ${processedFallback})`
|
|
1580
1637
|
};
|
|
1581
1638
|
}
|
|
@@ -1712,7 +1769,7 @@ var StyleParser = class {
|
|
|
1712
1769
|
const key = String(src);
|
|
1713
1770
|
const hit = this.cache.get(key);
|
|
1714
1771
|
if (hit) return hit;
|
|
1715
|
-
const stripped = src.replace(/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g, "")
|
|
1772
|
+
const stripped = foldDslCase(src.replace(/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g, ""));
|
|
1716
1773
|
const groups = [];
|
|
1717
1774
|
let currentGroup = makeEmptyDetails();
|
|
1718
1775
|
let currentPart = makeEmptyPart();
|
|
@@ -1739,6 +1796,10 @@ var StyleParser = class {
|
|
|
1739
1796
|
case 2:
|
|
1740
1797
|
currentPart.mods.push(processed);
|
|
1741
1798
|
break;
|
|
1799
|
+
case 3:
|
|
1800
|
+
currentPart.colors.push(processed);
|
|
1801
|
+
currentPart.values.push(processed);
|
|
1802
|
+
break;
|
|
1742
1803
|
}
|
|
1743
1804
|
currentPart.all.push(processed);
|
|
1744
1805
|
};
|
|
@@ -2161,6 +2222,28 @@ function parseStyle(value) {
|
|
|
2161
2222
|
else str = "";
|
|
2162
2223
|
return getOrCreateParser().process(str);
|
|
2163
2224
|
}
|
|
2225
|
+
/** A `$`-prefixed custom-property reference — the only DSL syntax that starts with `$`. */
|
|
2226
|
+
const RE_CUSTOM_PROPERTY_REF = /\$[a-zA-Z_$]/;
|
|
2227
|
+
/**
|
|
2228
|
+
* Substitute custom-property references (`$ident` → `var(--ident)`) inside a
|
|
2229
|
+
* value a handler would otherwise emit to CSS verbatim.
|
|
2230
|
+
*
|
|
2231
|
+
* Handlers for keyword-valued properties (`display`, `align`, `text-transform`,
|
|
2232
|
+
* `overflow`, …) pass their input straight through, since there are no units or
|
|
2233
|
+
* color tokens to resolve. That leaked the raw DSL into the stylesheet:
|
|
2234
|
+
* `display: '$my-display'` emitted `display: $my-display`, which the browser
|
|
2235
|
+
* drops as invalid. The same applies to color props whose value the parser could
|
|
2236
|
+
* not classify as a color — `$ident` is a color only when the name ends with
|
|
2237
|
+
* `-color`, so `fill: '$my-fill'` fell back to the unparsed input.
|
|
2238
|
+
*
|
|
2239
|
+
* Values without a `$` skip the parser entirely, so pass-through behaviour (and
|
|
2240
|
+
* the parser's case folding) is unchanged for every value that was already
|
|
2241
|
+
* valid CSS.
|
|
2242
|
+
*/
|
|
2243
|
+
function resolveCustomProperties(value) {
|
|
2244
|
+
if (!RE_CUSTOM_PROPERTY_REF.test(value)) return value;
|
|
2245
|
+
return parseStyle(value).output || value;
|
|
2246
|
+
}
|
|
2164
2247
|
/**
|
|
2165
2248
|
* Parse color. Find it value, name and opacity.
|
|
2166
2249
|
* Optimized to avoid heavy parseStyle calls for simple color patterns.
|
|
@@ -3259,8 +3342,59 @@ function extractCSSWideKeyword(group) {
|
|
|
3259
3342
|
if (group.values.length !== 1 || group.colors.length > 0) return null;
|
|
3260
3343
|
return CSS_WIDE_KEYWORDS.has(group.values[0]) ? group.values[0] : null;
|
|
3261
3344
|
}
|
|
3345
|
+
/** A resolved custom-property reference, i.e. `var(--name)` or `var(--name, …)`. */
|
|
3346
|
+
const RE_VAR_REFERENCE = /^var\(/;
|
|
3347
|
+
/**
|
|
3348
|
+
* Assign custom-property references to the style and color slots of a
|
|
3349
|
+
* `<line-width> <line-style> <line-color>` shorthand (`border`, `outline`).
|
|
3350
|
+
*
|
|
3351
|
+
* The parser cannot type a reference, so it buckets `$name` as a plain value and
|
|
3352
|
+
* the handler has to place it. A reference fills the first slot still free, in
|
|
3353
|
+
* shorthand order: the width takes `values[0]`, then the style, then the color.
|
|
3354
|
+
* The style would otherwise arrive as a keyword (`solid`, `dashed`, …) that a
|
|
3355
|
+
* reference has no way to match, and the color as `#name` — the `$name-color`
|
|
3356
|
+
* form the parser buckets as a color exists to reference a raw CSS custom
|
|
3357
|
+
* property, not as the way colors are written, so a reference should not reach
|
|
3358
|
+
* for the color slot until the style slot is taken.
|
|
3359
|
+
*
|
|
3360
|
+
* Lengths are left alone: a second length is not valid in these shorthands, and
|
|
3361
|
+
* promoting one would emit an invalid declaration instead of ignoring an extra
|
|
3362
|
+
* value. Callers supply their own slot defaults.
|
|
3363
|
+
*/
|
|
3364
|
+
function assignLineSlots(values, styleKeyword, colorToken) {
|
|
3365
|
+
if (styleKeyword && colorToken) return {
|
|
3366
|
+
style: styleKeyword,
|
|
3367
|
+
color: colorToken
|
|
3368
|
+
};
|
|
3369
|
+
const spare = values.slice(1).filter((value) => RE_VAR_REFERENCE.test(value) && value !== colorToken);
|
|
3370
|
+
return {
|
|
3371
|
+
style: styleKeyword || spare.shift(),
|
|
3372
|
+
color: colorToken || spare.shift()
|
|
3373
|
+
};
|
|
3374
|
+
}
|
|
3262
3375
|
/** Warning keys already emitted, so each distinct offending value warns once. */
|
|
3263
3376
|
const emittedWarnings$2 = /* @__PURE__ */ new Set();
|
|
3377
|
+
/** A resolved custom-property reference anywhere in a token. */
|
|
3378
|
+
const RE_HAS_VAR_REFERENCE = /var\(/;
|
|
3379
|
+
/**
|
|
3380
|
+
* Reject a custom-property reference used where a *token name* is expected.
|
|
3381
|
+
*
|
|
3382
|
+
* `preset` and `transition` take the name of a design token (`t3`, `fill`) and
|
|
3383
|
+
* interpolate it into a CSS custom property — `var(--t3-font-size)`. A reference
|
|
3384
|
+
* substituted into that position builds `var(--var(--x)-font-size)`, which is not
|
|
3385
|
+
* a valid custom-property name, so the browser drops the declaration and the
|
|
3386
|
+
* style silently does nothing. The DSL has no way to indirect a token name
|
|
3387
|
+
* through a custom property: the name is needed at build time, and a reference
|
|
3388
|
+
* only resolves in the browser.
|
|
3389
|
+
*
|
|
3390
|
+
* Returns true (warning once per value in dev) so the caller can fall back
|
|
3391
|
+
* instead of emitting a declaration that cannot work.
|
|
3392
|
+
*/
|
|
3393
|
+
function isTokenNameReference(property, name) {
|
|
3394
|
+
if (!RE_HAS_VAR_REFERENCE.test(name)) return false;
|
|
3395
|
+
warnOnceDev(`token-name-reference:${property}:${name}`, `${property}="${name}": a custom property cannot name a token. The name is interpolated into a CSS custom property at build time, so a reference would build an unusable name. It is ignored.`);
|
|
3396
|
+
return true;
|
|
3397
|
+
}
|
|
3264
3398
|
/**
|
|
3265
3399
|
* Emit a style-level warning at most once per `key`. No-op outside dev mode.
|
|
3266
3400
|
*
|
|
@@ -3314,13 +3448,13 @@ function warnExtraGroupValues(property, input, maxValues) {
|
|
|
3314
3448
|
function processGroup$1(group) {
|
|
3315
3449
|
const { values, mods, colors } = group;
|
|
3316
3450
|
const directions = filterMods(mods, DIRECTIONS);
|
|
3317
|
-
const
|
|
3451
|
+
const slots = assignLineSlots(values, filterMods(mods, BORDER_STYLES)[0], colors?.[0]);
|
|
3318
3452
|
return {
|
|
3319
3453
|
directions,
|
|
3320
3454
|
borderValue: {
|
|
3321
3455
|
width: values[0] || "var(--border-width)",
|
|
3322
|
-
style:
|
|
3323
|
-
color:
|
|
3456
|
+
style: slots.style || "solid",
|
|
3457
|
+
color: slots.color || "var(--border-color, currentColor)"
|
|
3324
3458
|
}
|
|
3325
3459
|
};
|
|
3326
3460
|
}
|
|
@@ -3419,11 +3553,6 @@ function borderStyle({ border }) {
|
|
|
3419
3553
|
}
|
|
3420
3554
|
borderStyle.__lookupStyles = ["border"];
|
|
3421
3555
|
//#endregion
|
|
3422
|
-
//#region src/utils/string.ts
|
|
3423
|
-
function toSnakeCase(str) {
|
|
3424
|
-
return str.replace(/[A-Z]/g, (s) => `-${s.toLowerCase()}`);
|
|
3425
|
-
}
|
|
3426
|
-
//#endregion
|
|
3427
3556
|
//#region src/styles/createStyle.ts
|
|
3428
3557
|
const CACHE = {};
|
|
3429
3558
|
/**
|
|
@@ -3453,16 +3582,18 @@ function createStyle(styleName, cssStyle, converter) {
|
|
|
3453
3582
|
if (styleValue == null || styleValue === false) return null;
|
|
3454
3583
|
let finalCssStyle;
|
|
3455
3584
|
const isColorToken = !cssStyle && typeof styleName === "string" && styleName.startsWith("#");
|
|
3456
|
-
if (isColorToken) finalCssStyle = `--${
|
|
3457
|
-
else
|
|
3585
|
+
if (isColorToken) finalCssStyle = `--${normalizeDslName(styleName.slice(1))}-color`;
|
|
3586
|
+
else if (!cssStyle && styleName[0] === "$") finalCssStyle = `--${normalizeDslName(styleName.slice(1))}`;
|
|
3587
|
+
else finalCssStyle = cssStyle || toSnakeCase(styleName);
|
|
3458
3588
|
if (isColorToken) {
|
|
3459
3589
|
const normalized = normalizeColorTokenValue(styleValue);
|
|
3460
3590
|
if (normalized === null) return null;
|
|
3461
3591
|
styleValue = normalized;
|
|
3462
3592
|
}
|
|
3463
|
-
if (converter
|
|
3464
|
-
|
|
3465
|
-
if (
|
|
3593
|
+
if (converter) {
|
|
3594
|
+
const converted = converter(styleValue);
|
|
3595
|
+
if (converted) styleValue = converted;
|
|
3596
|
+
else if (typeof styleValue !== "string") return null;
|
|
3466
3597
|
}
|
|
3467
3598
|
if (typeof styleValue === "string" && finalCssStyle.startsWith("--") && finalCssStyle.endsWith("-color")) {
|
|
3468
3599
|
styleValue = styleValue.trim();
|
|
@@ -3502,6 +3633,7 @@ function colorStyle({ color }) {
|
|
|
3502
3633
|
if (!color) return null;
|
|
3503
3634
|
if (color === true) color = "currentColor";
|
|
3504
3635
|
if (typeof color === "string" && (color.startsWith("#") || color.startsWith("(#"))) color = parseColor(color).color || color;
|
|
3636
|
+
else if (typeof color === "string") color = resolveCustomProperties(color);
|
|
3505
3637
|
const match = color.match(/var\(--(.+?)-color/);
|
|
3506
3638
|
let name = "";
|
|
3507
3639
|
if (match) name = match[1];
|
|
@@ -3567,14 +3699,15 @@ function processTextOverflow(textOverflow, whiteSpace) {
|
|
|
3567
3699
|
*/
|
|
3568
3700
|
function displayStyle({ display, hide, textOverflow, overflow, whiteSpace }) {
|
|
3569
3701
|
const result = {};
|
|
3702
|
+
const whiteSpaceValue = whiteSpace ? resolveCustomProperties(whiteSpace) : whiteSpace;
|
|
3570
3703
|
if (textOverflow != null && textOverflow !== false) {
|
|
3571
|
-
const textResult = processTextOverflow(textOverflow,
|
|
3704
|
+
const textResult = processTextOverflow(textOverflow, whiteSpaceValue);
|
|
3572
3705
|
if (textResult) Object.assign(result, textResult);
|
|
3573
3706
|
}
|
|
3574
|
-
if (overflow && !result["overflow"]) result["overflow"] = overflow;
|
|
3575
|
-
if (
|
|
3707
|
+
if (overflow && !result["overflow"]) result["overflow"] = resolveCustomProperties(overflow);
|
|
3708
|
+
if (whiteSpaceValue && !result["white-space"]) result["white-space"] = whiteSpaceValue;
|
|
3576
3709
|
if (hide) result["display"] = "none";
|
|
3577
|
-
else if (!result["display"] && display) result["display"] = display;
|
|
3710
|
+
else if (!result["display"] && display) result["display"] = resolveCustomProperties(display);
|
|
3578
3711
|
if (Object.keys(result).length === 0) return null;
|
|
3579
3712
|
return result;
|
|
3580
3713
|
}
|
|
@@ -3655,7 +3788,7 @@ function fillStyle({ fill, backgroundColor, image, backgroundImage, backgroundPo
|
|
|
3655
3788
|
const parsed = parseStyle(colorValue);
|
|
3656
3789
|
const firstColor = parsed.groups[0]?.colors[0];
|
|
3657
3790
|
const secondColor = parsed.groups[0]?.colors[1];
|
|
3658
|
-
result["background-color"] = firstColor || colorValue;
|
|
3791
|
+
result["background-color"] = firstColor || resolveCustomProperties(colorValue);
|
|
3659
3792
|
if (secondColor) result["--tasty-second-fill-color"] = secondColor;
|
|
3660
3793
|
}
|
|
3661
3794
|
const gradientLayer = result["--tasty-second-fill-color"] ? "linear-gradient(var(--tasty-second-fill-color), var(--tasty-second-fill-color))" : null;
|
|
@@ -3666,10 +3799,10 @@ function fillStyle({ fill, backgroundColor, image, backgroundImage, backgroundPo
|
|
|
3666
3799
|
} else if (gradientLayer) result["background-image"] = gradientLayer;
|
|
3667
3800
|
if (backgroundPosition) result["background-position"] = parseStyle(backgroundPosition).output || backgroundPosition;
|
|
3668
3801
|
if (backgroundSize) result["background-size"] = parseStyle(backgroundSize).output || backgroundSize;
|
|
3669
|
-
if (backgroundRepeat) result["background-repeat"] = backgroundRepeat;
|
|
3670
|
-
if (backgroundAttachment) result["background-attachment"] = backgroundAttachment;
|
|
3671
|
-
if (backgroundOrigin) result["background-origin"] = backgroundOrigin;
|
|
3672
|
-
if (backgroundClip) result["background-clip"] = backgroundClip;
|
|
3802
|
+
if (backgroundRepeat) result["background-repeat"] = resolveCustomProperties(backgroundRepeat);
|
|
3803
|
+
if (backgroundAttachment) result["background-attachment"] = resolveCustomProperties(backgroundAttachment);
|
|
3804
|
+
if (backgroundOrigin) result["background-origin"] = resolveCustomProperties(backgroundOrigin);
|
|
3805
|
+
if (backgroundClip) result["background-clip"] = resolveCustomProperties(backgroundClip);
|
|
3673
3806
|
if (Object.keys(result).length === 0) return null;
|
|
3674
3807
|
return result;
|
|
3675
3808
|
}
|
|
@@ -3688,7 +3821,7 @@ fillStyle.__lookupStyles = [
|
|
|
3688
3821
|
];
|
|
3689
3822
|
function svgFillStyle({ svgFill }) {
|
|
3690
3823
|
if (!svgFill) return null;
|
|
3691
|
-
svgFill = parseStyle(svgFill).groups[0]?.colors[0] || svgFill;
|
|
3824
|
+
svgFill = parseStyle(svgFill).groups[0]?.colors[0] || resolveCustomProperties(svgFill);
|
|
3692
3825
|
return { fill: svgFill };
|
|
3693
3826
|
}
|
|
3694
3827
|
svgFillStyle.__lookupStyles = ["svgFill"];
|
|
@@ -3698,7 +3831,7 @@ function flowStyle({ display = "block", flow }) {
|
|
|
3698
3831
|
let style;
|
|
3699
3832
|
if (display.includes("grid")) style = "grid-auto-flow";
|
|
3700
3833
|
else if (display.includes("flex")) style = "flex-flow";
|
|
3701
|
-
return style ? { [style]: flow } : null;
|
|
3834
|
+
return style && flow ? { [style]: resolveCustomProperties(flow) } : null;
|
|
3702
3835
|
}
|
|
3703
3836
|
flowStyle.__lookupStyles = ["display", "flow"];
|
|
3704
3837
|
//#endregion
|
|
@@ -4083,17 +4216,18 @@ function outlineStyle({ outline, outlineOffset }) {
|
|
|
4083
4216
|
};
|
|
4084
4217
|
const offsetPart = parts[1];
|
|
4085
4218
|
const typeMods = filterMods(outlinePart.mods, BORDER_STYLES);
|
|
4219
|
+
const slots = assignLineSlots(outlinePart.values, typeMods[0], outlinePart.colors[0]);
|
|
4086
4220
|
result["outline"] = [
|
|
4087
4221
|
outlinePart.values[0] || "var(--outline-width)",
|
|
4088
|
-
|
|
4089
|
-
|
|
4222
|
+
slots.style || "solid",
|
|
4223
|
+
slots.color || "var(--outline-color)"
|
|
4090
4224
|
].join(" ");
|
|
4091
4225
|
if (offsetPart?.values[0]) result["outline-offset"] = offsetPart.values[0];
|
|
4092
4226
|
}
|
|
4093
4227
|
}
|
|
4094
4228
|
if (outlineOffset != null && !result["outline-offset"]) {
|
|
4095
4229
|
const offsetValue = typeof outlineOffset === "number" ? `${outlineOffset}px` : outlineOffset;
|
|
4096
|
-
result["outline-offset"] = parseStyle(offsetValue).groups[0]?.values[0] || offsetValue;
|
|
4230
|
+
result["outline-offset"] = parseStyle(offsetValue).groups[0]?.values[0] || resolveCustomProperties(offsetValue);
|
|
4097
4231
|
}
|
|
4098
4232
|
if (Object.keys(result).length === 0) return null;
|
|
4099
4233
|
return result;
|
|
@@ -4132,7 +4266,7 @@ paddingStyle.__lookupStyles = [
|
|
|
4132
4266
|
function str(val) {
|
|
4133
4267
|
if (val == null || val === false || val === "") return null;
|
|
4134
4268
|
if (val === true) return "center";
|
|
4135
|
-
return String(val);
|
|
4269
|
+
return resolveCustomProperties(String(val));
|
|
4136
4270
|
}
|
|
4137
4271
|
/**
|
|
4138
4272
|
* Unified placement handler replacing align, justify, and place.
|
|
@@ -4214,7 +4348,7 @@ const PRESET_MODIFIERS = new Set([
|
|
|
4214
4348
|
function toCSS(value, isNumeric) {
|
|
4215
4349
|
if (value == null) return null;
|
|
4216
4350
|
if (typeof value === "number") return isNumeric ? `${value}px` : String(value);
|
|
4217
|
-
return parseStyle(String(value)).groups[0]?.values[0] || String(value);
|
|
4351
|
+
return parseStyle(String(value)).groups[0]?.values[0] || resolveCustomProperties(String(value));
|
|
4218
4352
|
}
|
|
4219
4353
|
function setCSSValue(styles, styleName, presetName, { varOnly, cssOnly } = {}) {
|
|
4220
4354
|
const value = (() => {
|
|
@@ -4236,11 +4370,11 @@ function setCSSValue(styles, styleName, presetName, { varOnly, cssOnly } = {}) {
|
|
|
4236
4370
|
* - `fontFamily="Arial"` → Arial (direct, no fallback)
|
|
4237
4371
|
*/
|
|
4238
4372
|
function resolveFontFamily(font, fontFamily) {
|
|
4239
|
-
if (fontFamily) return fontFamily;
|
|
4373
|
+
if (fontFamily) return resolveCustomProperties(fontFamily);
|
|
4240
4374
|
if (font == null || font === false) return null;
|
|
4241
4375
|
if (font === "monospace") return "var(--font-mono, var(--font-mono-fallback))";
|
|
4242
4376
|
if (font === true) return "var(--font-sans, var(--font-sans-fallback))";
|
|
4243
|
-
return `${font}, var(--font-sans, var(--font-sans-fallback))`;
|
|
4377
|
+
return `${resolveCustomProperties(font)}, var(--font-sans, var(--font-sans-fallback))`;
|
|
4244
4378
|
}
|
|
4245
4379
|
/**
|
|
4246
4380
|
* Handles typography preset and individual font properties.
|
|
@@ -4274,7 +4408,7 @@ function presetStyle({ preset, fontSize, lineHeight, textTransform, letterSpacin
|
|
|
4274
4408
|
const nameTokens = namePart?.all ?? [];
|
|
4275
4409
|
const isModOnly = nameTokens.length > 0 && nameTokens.every((t) => PRESET_MODIFIERS.has(t));
|
|
4276
4410
|
const nameToken = namePart?.mods[0] ?? namePart?.values[0] ?? "";
|
|
4277
|
-
const name = isModOnly ? "inherit" : nameToken || "inherit";
|
|
4411
|
+
const name = isModOnly || isTokenNameReference("preset", nameToken) ? "inherit" : nameToken || "inherit";
|
|
4278
4412
|
const modTokens = isModOnly ? nameTokens : modPart?.all ?? [];
|
|
4279
4413
|
const activeMods = /* @__PURE__ */ new Set();
|
|
4280
4414
|
for (const tok of modTokens) if (PRESET_MODIFIERS.has(tok)) activeMods.add(tok);
|
|
@@ -4312,7 +4446,7 @@ function presetStyle({ preset, fontSize, lineHeight, textTransform, letterSpacin
|
|
|
4312
4446
|
if (fontStyle != null) if (fontStyle === true) styles["font-style"] = "italic";
|
|
4313
4447
|
else if (typeof fontStyle === "string" && CSS_WIDE_KEYWORDS.has(fontStyle)) styles["font-style"] = fontStyle;
|
|
4314
4448
|
else styles["font-style"] = fontStyle ? "italic" : "normal";
|
|
4315
|
-
if (textTransform) styles["text-transform"] = textTransform;
|
|
4449
|
+
if (textTransform) styles["text-transform"] = resolveCustomProperties(textTransform);
|
|
4316
4450
|
const fontFamily_ = resolveFontFamily(font, fontFamily);
|
|
4317
4451
|
if (fontFamily_) styles["font-family"] = fontFamily_;
|
|
4318
4452
|
if (Object.keys(styles).length === 0) return null;
|
|
@@ -4647,6 +4781,7 @@ function transitionStyle({ transition }) {
|
|
|
4647
4781
|
const map = {};
|
|
4648
4782
|
transitions.forEach((transition) => {
|
|
4649
4783
|
const name = transition[0];
|
|
4784
|
+
if (isTokenNameReference("transition", name)) return;
|
|
4650
4785
|
let timing;
|
|
4651
4786
|
let easing;
|
|
4652
4787
|
let delay;
|
|
@@ -4667,6 +4802,7 @@ function transitionStyle({ transition }) {
|
|
|
4667
4802
|
];
|
|
4668
4803
|
});
|
|
4669
4804
|
});
|
|
4805
|
+
if (Object.keys(map).length === 0) return null;
|
|
4670
4806
|
return { transition: Object.entries(map).map(([style, [name, easing, timing, delay]]) => {
|
|
4671
4807
|
let value = `${style} ${timing || getTiming(name)}`;
|
|
4672
4808
|
if (easing || delay) value += ` ${easing || DEFAULT_EASING}`;
|
|
@@ -4703,11 +4839,28 @@ const devMode$2 = isDevEnv();
|
|
|
4703
4839
|
function inDevMode() {
|
|
4704
4840
|
return isDevEnv();
|
|
4705
4841
|
}
|
|
4842
|
+
/**
|
|
4843
|
+
* Read a grid track count, or `undefined` when the value isn't one.
|
|
4844
|
+
*
|
|
4845
|
+
* Plain digit strings count: every value inside a state map arrives as a
|
|
4846
|
+
* string, so `gridColumns: { '': '2', '@media(w < 600px)': '1' }` would
|
|
4847
|
+
* otherwise emit `grid-template-columns: 2` — invalid CSS that browsers drop
|
|
4848
|
+
* silently.
|
|
4849
|
+
*
|
|
4850
|
+
* Zero and negatives yield `undefined`. Zero already produced an empty value,
|
|
4851
|
+
* and a negative number used to throw inside `String.repeat`.
|
|
4852
|
+
*/
|
|
4853
|
+
function trackCount(val) {
|
|
4854
|
+
const count = typeof val === "number" ? val : typeof val === "string" && /^\d+$/.test(val.trim()) ? Number(val.trim()) : NaN;
|
|
4855
|
+
return Number.isFinite(count) && count >= 1 ? Math.floor(count) : void 0;
|
|
4856
|
+
}
|
|
4706
4857
|
const columnsConverter = (val) => {
|
|
4707
|
-
|
|
4858
|
+
const count = trackCount(val);
|
|
4859
|
+
return count === void 0 ? void 0 : "minmax(1px, 1fr) ".repeat(count).trim();
|
|
4708
4860
|
};
|
|
4709
4861
|
const rowsConverter = (val) => {
|
|
4710
|
-
|
|
4862
|
+
const count = trackCount(val);
|
|
4863
|
+
return count === void 0 ? void 0 : "auto ".repeat(count).trim();
|
|
4711
4864
|
};
|
|
4712
4865
|
const STYLE_HANDLER_MAP$1 = {};
|
|
4713
4866
|
let initialHandlerMapSnapshot = null;
|
|
@@ -4754,7 +4907,7 @@ function predefine() {
|
|
|
4754
4907
|
defineStyleAlias("gridRows", "grid-template-rows", rowsConverter);
|
|
4755
4908
|
defineStyleAlias("gridTemplate", "grid-template", (val) => {
|
|
4756
4909
|
if (typeof val !== "string") return;
|
|
4757
|
-
return val.split("/").map((s, i) => (i ? columnsConverter : rowsConverter)(s)).join("/");
|
|
4910
|
+
return val.split("/").map((s, i) => (i ? columnsConverter : rowsConverter)(s) ?? s).join("/");
|
|
4758
4911
|
});
|
|
4759
4912
|
[
|
|
4760
4913
|
displayStyle,
|
|
@@ -12157,6 +12310,6 @@ function resetConfig() {
|
|
|
12157
12310
|
delete storage[GLOBAL_INJECTOR_KEY];
|
|
12158
12311
|
}
|
|
12159
12312
|
//#endregion
|
|
12160
|
-
export { SheetManager as $, getNamedColorHex as $t, FLOW_STYLES as A, registerFunctionPolyfill as At, createStateParserContext as B, stringifyStyles as Bt, BASE_STYLES as C, LAYOUT_CHUNK_STYLES as Ct, COLOR_STYLES as D, formatFunctionRule as Dt, BLOCK_STYLES as E, extractLocalFunctions as Et, hasPipelineCacheEntry as F, getGlobalParser as Ft, StyleInjector as G, createColorFunc as Gt, extractPredefinedStateRefs as H, okhstPlugin as Ht, isSelector as I, getGlobalPredefinedTokens as It, hasLocalCounterStyle as J, colorInitialValueToComponents as Jt, extractLocalCounterStyle as K, isDevEnv as Kt, renderStyles as L, normalizeColorTokenValue as Lt, OUTER_STYLES as M, CUSTOM_UNITS as Mt, POSITION_STYLES as N, DIRECTIONS as Nt, CONTAINER_STYLES as O, hasLocalFunctions as Ot, TEXT_STYLES as P, filterMods as Pt, hasLocalFontFace as Q, getComponentPropertySyntax as Qt, parseStateKey as R, parseColor as Rt, baseStylePropsRegistry as S, FONT_CHUNK_STYLES as St, BLOCK_OUTER_STYLES as T, STYLE_TO_CHUNK as Tt, getGlobalPredefinedStates as U, okhslFunction as Ut, extractLocalPredefinedStates as V, okhstFunction as Vt, setGlobalPredefinedStates as W, okhslPlugin as Wt, fontFaceContentHash as X, getColorSpaceFunc as Xt, extractLocalFontFace as Y, getColorSpaceComponents as Yt, formatFontFaceRule as Z, getColorSpaceSuffix as Zt, isFunctionsPolyfillEnabled as _, propHandlerRegistry as _t, getGlobalCounterStyles as a, Lru as an, DEFAULT_NAME_PREFIX as at, resetConfig as b, DIMENSION_CHUNK_STYLES as bt, getGlobalInjector as c, makeCounterStyleName as ct, getGlobalStyles as d, validateNamePrefix as dt, getRgbValuesFromRgbaString as en, STYLE_HANDLER_MAP as et, getNamePrefix as f, hashString as ft, isConfigLocked as g, parsePropertyToken as gt, hasStylesGenerated as h, hasLocalProperties as ht, getGlobalConfigTokens as i, resolveFunctionColor as in, PropertyTypeResolver as it, INNER_STYLES as j, registerLocalFunctionPolyfills as jt, DIMENSION_STYLES as k, parseFunctionName as kt, getGlobalKeyframes as l, makeKeyframeName as lt, hasGlobalRecipes as m, getEffectiveDefinition as mt, getConfig as n, hslToRgbValues as nn, styleHandlers as nt, getGlobalFontFaces as o, DEFAULT_ZERO_NAME_PREFIX as ot, hasGlobalKeyframes as p, extractLocalProperties as pt, formatCounterStyleRule as q, StyleParser as qt, getEffectiveProperties as r, strToRgb as rn, createStyle as rt, getGlobalFunctions as s, makeClassName as st, configure as t, hexToRgb as tn, defineHandler as tt, getGlobalRecipes as u, tastyClassRegex as ut, isTestEnvironment as v, APPEARANCE_CHUNK_STYLES as vt, BLOCK_INNER_STYLES as w, POSITION_CHUNK_STYLES as wt, generateTypographyTokens as x, DISPLAY_CHUNK_STYLES as xt, markStylesGenerated as y, CHUNK_NAMES as yt, camelToKebab as z, parseStyle as zt };
|
|
12313
|
+
export { SheetManager as $, getNamedColorHex as $t, FLOW_STYLES as A, registerFunctionPolyfill as At, createStateParserContext as B, stringifyStyles as Bt, BASE_STYLES as C, LAYOUT_CHUNK_STYLES as Ct, COLOR_STYLES as D, formatFunctionRule as Dt, BLOCK_STYLES as E, extractLocalFunctions as Et, hasPipelineCacheEntry as F, getGlobalParser as Ft, StyleInjector as G, createColorFunc as Gt, extractPredefinedStateRefs as H, okhstPlugin as Ht, isSelector as I, getGlobalPredefinedTokens as It, hasLocalCounterStyle as J, colorInitialValueToComponents as Jt, extractLocalCounterStyle as K, isDevEnv as Kt, renderStyles as L, normalizeColorTokenValue as Lt, OUTER_STYLES as M, CUSTOM_UNITS as Mt, POSITION_STYLES as N, DIRECTIONS as Nt, CONTAINER_STYLES as O, hasLocalFunctions as Ot, TEXT_STYLES as P, filterMods as Pt, hasLocalFontFace as Q, getComponentPropertySyntax as Qt, parseStateKey as R, parseColor as Rt, baseStylePropsRegistry as S, FONT_CHUNK_STYLES as St, BLOCK_OUTER_STYLES as T, STYLE_TO_CHUNK as Tt, getGlobalPredefinedStates as U, okhslFunction as Ut, extractLocalPredefinedStates as V, okhstFunction as Vt, setGlobalPredefinedStates as W, okhslPlugin as Wt, fontFaceContentHash as X, getColorSpaceFunc as Xt, extractLocalFontFace as Y, getColorSpaceComponents as Yt, formatFontFaceRule as Z, getColorSpaceSuffix as Zt, isFunctionsPolyfillEnabled as _, propHandlerRegistry as _t, getGlobalCounterStyles as a, Lru as an, DEFAULT_NAME_PREFIX as at, resetConfig as b, DIMENSION_CHUNK_STYLES as bt, getGlobalInjector as c, makeCounterStyleName as ct, getGlobalStyles as d, validateNamePrefix as dt, getRgbValuesFromRgbaString as en, STYLE_HANDLER_MAP as et, getNamePrefix as f, hashString as ft, isConfigLocked as g, parsePropertyToken as gt, hasStylesGenerated as h, hasLocalProperties as ht, getGlobalConfigTokens as i, resolveFunctionColor as in, PropertyTypeResolver as it, INNER_STYLES as j, registerLocalFunctionPolyfills as jt, DIMENSION_STYLES as k, parseFunctionName as kt, getGlobalKeyframes as l, makeKeyframeName as lt, hasGlobalRecipes as m, getEffectiveDefinition as mt, getConfig as n, hslToRgbValues as nn, styleHandlers as nt, getGlobalFontFaces as o, normalizeDslName as on, DEFAULT_ZERO_NAME_PREFIX as ot, hasGlobalKeyframes as p, extractLocalProperties as pt, formatCounterStyleRule as q, StyleParser as qt, getEffectiveProperties as r, strToRgb as rn, createStyle as rt, getGlobalFunctions as s, makeClassName as st, configure as t, hexToRgb as tn, defineHandler as tt, getGlobalRecipes as u, tastyClassRegex as ut, isTestEnvironment as v, APPEARANCE_CHUNK_STYLES as vt, BLOCK_INNER_STYLES as w, POSITION_CHUNK_STYLES as wt, generateTypographyTokens as x, DISPLAY_CHUNK_STYLES as xt, markStylesGenerated as y, CHUNK_NAMES as yt, camelToKebab as z, parseStyle as zt };
|
|
12161
12314
|
|
|
12162
|
-
//# sourceMappingURL=config-
|
|
12315
|
+
//# sourceMappingURL=config-DOCuTykY.js.map
|