@sxl-studio/token-transformer 1.0.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/README.en.md +77 -608
  2. package/README.md +77 -685
  3. package/config/sxl-transform.config.yaml +120 -0
  4. package/dist/cli.d.ts +1 -1
  5. package/dist/cli.js +411 -141
  6. package/dist/cli.js.map +1 -1
  7. package/dist/config/loader.d.ts +6 -0
  8. package/dist/config/loader.js +160 -0
  9. package/dist/config/loader.js.map +1 -0
  10. package/dist/config/schema.d.ts +847 -0
  11. package/dist/config/schema.js +123 -0
  12. package/dist/config/schema.js.map +1 -0
  13. package/dist/core/color-modifiers.d.ts +31 -0
  14. package/dist/core/color-modifiers.js +289 -0
  15. package/dist/core/color-modifiers.js.map +1 -0
  16. package/dist/core/color-parser.d.ts +24 -0
  17. package/dist/core/color-parser.js +281 -0
  18. package/dist/core/color-parser.js.map +1 -0
  19. package/dist/core/debug-report.d.ts +11 -0
  20. package/dist/core/debug-report.js +161 -0
  21. package/dist/core/debug-report.js.map +1 -0
  22. package/dist/core/incremental.d.ts +18 -0
  23. package/dist/core/incremental.js +105 -0
  24. package/dist/core/incremental.js.map +1 -0
  25. package/dist/core/math.d.ts +3 -0
  26. package/dist/core/math.js +261 -0
  27. package/dist/core/math.js.map +1 -0
  28. package/dist/core/parser.d.ts +4 -3
  29. package/dist/core/parser.js +68 -172
  30. package/dist/core/parser.js.map +1 -1
  31. package/dist/core/resolver.d.ts +26 -0
  32. package/dist/core/resolver.js +431 -0
  33. package/dist/core/resolver.js.map +1 -0
  34. package/dist/core/token-loader.d.ts +11 -0
  35. package/dist/core/token-loader.js +380 -0
  36. package/dist/core/token-loader.js.map +1 -0
  37. package/dist/core/token-parser.d.ts +9 -0
  38. package/dist/core/token-parser.js +138 -0
  39. package/dist/core/token-parser.js.map +1 -0
  40. package/dist/core/token-types.d.ts +7 -0
  41. package/dist/core/token-types.js +132 -0
  42. package/dist/core/token-types.js.map +1 -0
  43. package/dist/core/types.d.ts +154 -63
  44. package/dist/core/writer.d.ts +18 -5
  45. package/dist/core/writer.js +545 -91
  46. package/dist/core/writer.js.map +1 -1
  47. package/dist/emit/css.d.ts +2 -0
  48. package/dist/emit/css.js +538 -0
  49. package/dist/emit/css.js.map +1 -0
  50. package/dist/emit/kotlin.d.ts +2 -0
  51. package/dist/emit/kotlin.js +406 -0
  52. package/dist/emit/kotlin.js.map +1 -0
  53. package/dist/emit/shared.d.ts +13 -0
  54. package/dist/emit/shared.js +127 -0
  55. package/dist/emit/shared.js.map +1 -0
  56. package/dist/emit/swift.d.ts +2 -0
  57. package/dist/emit/swift.js +432 -0
  58. package/dist/emit/swift.js.map +1 -0
  59. package/dist/emit/typography.d.ts +17 -0
  60. package/dist/emit/typography.js +132 -0
  61. package/dist/emit/typography.js.map +1 -0
  62. package/dist/emit/xml.d.ts +2 -0
  63. package/dist/emit/xml.js +311 -0
  64. package/dist/emit/xml.js.map +1 -0
  65. package/dist/index.d.ts +15 -6
  66. package/dist/index.js +13 -5
  67. package/dist/index.js.map +1 -1
  68. package/dist/transformers/css.d.ts +1 -1
  69. package/dist/transformers/css.js +13 -482
  70. package/dist/transformers/css.js.map +1 -1
  71. package/dist/transformers/kotlin.d.ts +2 -2
  72. package/dist/transformers/kotlin.js +14 -442
  73. package/dist/transformers/kotlin.js.map +1 -1
  74. package/dist/transformers/swiftui.d.ts +2 -2
  75. package/dist/transformers/swiftui.js +14 -433
  76. package/dist/transformers/swiftui.js.map +1 -1
  77. package/dist/utils/color.d.ts +7 -5
  78. package/dist/utils/color.js +90 -86
  79. package/dist/utils/color.js.map +1 -1
  80. package/dist/utils/dimension.d.ts +8 -5
  81. package/dist/utils/dimension.js +54 -52
  82. package/dist/utils/dimension.js.map +1 -1
  83. package/dist/utils/naming.d.ts +10 -12
  84. package/dist/utils/naming.js +102 -44
  85. package/dist/utils/naming.js.map +1 -1
  86. package/package.json +30 -10
  87. package/config.example.json +0 -45
  88. package/dist/core/loader.d.ts +0 -8
  89. package/dist/core/loader.js +0 -105
  90. package/dist/core/loader.js.map +0 -1
  91. package/dist/transformers/vue3.d.ts +0 -28
  92. package/dist/transformers/vue3.js +0 -534
  93. package/dist/transformers/vue3.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/core/writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/core/writer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { EmitResult, EmitterInput } from "../core/types.js";
2
+ export declare function emitCss(input: EmitterInput): EmitResult;
@@ -0,0 +1,538 @@
1
+ import { normalizeTokenTypeKey } from "../core/token-types.js";
2
+ import { parseColor, rgbaToCss } from "../utils/color.js";
3
+ import { toCssDimension } from "../utils/dimension.js";
4
+ import { cssVarName } from "../utils/naming.js";
5
+ import { buildNamedTokens } from "./shared.js";
6
+ import { formatCssTypographyMetric, normalizeTextCase, normalizeVerticalTrimFromTypography, textCaseToCss, textDecorationToCss, toTypographyObject, } from "./typography.js";
7
+ export function emitCss(input) {
8
+ const diagnostics = [];
9
+ const named = buildNamedTokens(input.tokens, {
10
+ platform: "css",
11
+ prefix: input.prefix,
12
+ strategy: input.collisions,
13
+ diagnostics,
14
+ outputId: input.outputId,
15
+ });
16
+ const declarations = [];
17
+ for (const entry of named) {
18
+ const tokenDecls = formatCssToken(entry.token, entry.name, input, diagnostics);
19
+ declarations.push(...tokenDecls);
20
+ }
21
+ const lines = [":root {"];
22
+ for (const declaration of declarations) {
23
+ if (input.showDescriptions && declaration.comment) {
24
+ lines.push(` /* ${declaration.comment} */`);
25
+ }
26
+ lines.push(` ${declaration.name}: ${declaration.value};`);
27
+ }
28
+ lines.push("}");
29
+ return {
30
+ content: `${lines.join("\n")}\n`,
31
+ diagnostics,
32
+ };
33
+ }
34
+ function formatCssToken(token, name, input, diagnostics) {
35
+ const normalizedType = normalizeTokenTypeKey(token.type);
36
+ const resolved = token.resolvedValue ?? token.value;
37
+ const withComment = (decls) => {
38
+ if (!input.showDescriptions || !token.description)
39
+ return decls;
40
+ if (decls.length === 0)
41
+ return decls;
42
+ decls[0].comment = token.description;
43
+ return decls;
44
+ };
45
+ if (!input.resolveAliases && token.isAlias && token.aliasPath && !token.extensions?.["figma.modify"]) {
46
+ return withComment([{ name, value: `var(${cssVarName(token.aliasPath, input.prefix)})` }]);
47
+ }
48
+ switch (normalizedType) {
49
+ case "color": {
50
+ const value = formatColor(token.value, resolved, input.resolveAliases, input.prefix);
51
+ if (!value) {
52
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, "Invalid color token value"));
53
+ return [];
54
+ }
55
+ return withComment([{ name, value }]);
56
+ }
57
+ case "dimension":
58
+ case "sizing":
59
+ case "spacing":
60
+ case "borderRadius":
61
+ case "borderWidth":
62
+ case "fontSize":
63
+ case "lineHeight":
64
+ case "letterSpacing":
65
+ case "paragraphSpacing":
66
+ case "paragraphIndent":
67
+ return withComment([{ name, value: toCssDimension(resolved) }]);
68
+ case "opacity":
69
+ case "number":
70
+ return withComment([{ name, value: stringifyNumber(resolved) }]);
71
+ case "fontFamily":
72
+ return withComment([{ name, value: quoteIfNeeded(String(resolved)) }]);
73
+ case "fontWeight":
74
+ return withComment([{ name, value: normalizeFontWeight(resolved) }]);
75
+ case "fontStyle":
76
+ return withComment([{ name, value: String(resolved) }]);
77
+ case "textCase":
78
+ return withComment([{ name, value: normalizeTextCaseToken(resolved) }]);
79
+ case "textDecoration":
80
+ return withComment([{ name, value: textDecorationToCss(resolved) }]);
81
+ case "boolean":
82
+ return withComment([{ name, value: String(Boolean(resolved)) }]);
83
+ case "text":
84
+ return withComment([{ name, value: quoteString(String(resolved)) }]);
85
+ case "typography": {
86
+ const values = formatTypography(token.value, resolved, name, input.resolveAliases, input.prefix, input.remBase ?? 16);
87
+ if (values.length === 0) {
88
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, "Invalid typography token value"));
89
+ return [];
90
+ }
91
+ return withComment(values);
92
+ }
93
+ case "shadow": {
94
+ const value = formatShadow(token.value, resolved, input.resolveAliases, input.prefix);
95
+ if (!value) {
96
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, "Invalid shadow token value"));
97
+ return [];
98
+ }
99
+ return withComment([{ name, value }]);
100
+ }
101
+ case "border": {
102
+ const value = formatBorder(token.value, resolved, input.resolveAliases, input.prefix);
103
+ if (!value) {
104
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, "Invalid border token value"));
105
+ return [];
106
+ }
107
+ return withComment([{ name, value }]);
108
+ }
109
+ case "fill": {
110
+ const value = formatFill(token.value, resolved, input.resolveAliases, input.prefix);
111
+ if (!value) {
112
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, "Invalid fill token value"));
113
+ return [];
114
+ }
115
+ return withComment([{ name, value }]);
116
+ }
117
+ case "gradient": {
118
+ const value = formatGradient(token.value, resolved, input.resolveAliases, input.prefix);
119
+ if (!value) {
120
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, "Invalid gradient token value"));
121
+ return [];
122
+ }
123
+ return withComment([{ name, value }]);
124
+ }
125
+ case "effects":
126
+ case "blur":
127
+ case "backdrop-blur":
128
+ case "glass": {
129
+ const values = formatEffects(token, name, input);
130
+ if (values.length === 0) {
131
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, "Invalid effects token value"));
132
+ }
133
+ return withComment(values);
134
+ }
135
+ case "duration": {
136
+ const value = formatDuration(resolved);
137
+ return withComment([{ name, value }]);
138
+ }
139
+ case "cubicBezier": {
140
+ const value = formatCubicBezier(resolved);
141
+ return withComment([{ name, value }]);
142
+ }
143
+ case "strokeStyle": {
144
+ const value = typeof resolved === "string" ? resolved : null;
145
+ if (!value) {
146
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, "Invalid strokeStyle token value"));
147
+ return [];
148
+ }
149
+ return withComment([{ name, value }]);
150
+ }
151
+ default:
152
+ diagnostics.push(buildUnsupportedDiagnostic(token, input.outputId, `Unsupported token type "${normalizedType}" for CSS`));
153
+ return [];
154
+ }
155
+ }
156
+ function formatColor(raw, resolved, resolveAliases, prefix) {
157
+ if (!resolveAliases && typeof raw === "string") {
158
+ const alias = extractAlias(raw);
159
+ if (alias)
160
+ return `var(${cssVarName(alias, prefix)})`;
161
+ }
162
+ const parsed = parseColor(resolved);
163
+ if (!parsed)
164
+ return null;
165
+ return rgbaToCss(parsed);
166
+ }
167
+ function formatTypography(raw, resolved, baseName, resolveAliases, prefix, remBase) {
168
+ const rawObj = toTypographyObject(raw);
169
+ const resolvedObj = toTypographyObject(resolved);
170
+ if (!resolvedObj)
171
+ return [];
172
+ const family = resolveField(rawObj?.fontFamily, resolvedObj.fontFamily, resolveAliases, prefix, (value) => quoteIfNeeded(String(value)));
173
+ const weight = resolveField(rawObj?.fontWeight, resolvedObj.fontWeight, resolveAliases, prefix, normalizeFontWeight);
174
+ const size = resolveField(rawObj?.fontSize, resolvedObj.fontSize, resolveAliases, prefix, (value) => formatCssTypographyMetric(value, remBase));
175
+ const lineHeight = resolveField(rawObj?.lineHeight, resolvedObj.lineHeight, resolveAliases, prefix, (value) => formatCssTypographyMetric(value, remBase));
176
+ if (!family || !weight || !size || !lineHeight)
177
+ return [];
178
+ const declarations = [
179
+ { name: baseName, value: `${weight} ${size}/${lineHeight} ${family}` },
180
+ { name: `${baseName}-font-family`, value: family },
181
+ { name: `${baseName}-font-weight`, value: weight },
182
+ { name: `${baseName}-font-size`, value: size },
183
+ { name: `${baseName}-line-height`, value: lineHeight },
184
+ ];
185
+ const letterSpacing = resolveField(rawObj?.letterSpacing, resolvedObj.letterSpacing, resolveAliases, prefix, (value) => formatCssTypographyMetric(value, remBase));
186
+ if (letterSpacing) {
187
+ declarations.push({ name: `${baseName}-letter-spacing`, value: letterSpacing });
188
+ }
189
+ const textCaseRaw = resolveField(rawObj?.textCase, resolvedObj.textCase, resolveAliases, prefix, (value) => String(value));
190
+ if (textCaseRaw) {
191
+ if (!resolveAliases && /^var\(--/.test(textCaseRaw)) {
192
+ declarations.push({ name: `${baseName}-text-case`, value: textCaseRaw });
193
+ }
194
+ else {
195
+ const mapping = textCaseToCss(textCaseRaw);
196
+ declarations.push({ name: `${baseName}-text-transform`, value: mapping.textTransform });
197
+ declarations.push({ name: `${baseName}-font-variant-caps`, value: mapping.fontVariantCaps });
198
+ }
199
+ }
200
+ const textDecorationRaw = resolveField(rawObj?.textDecoration, resolvedObj.textDecoration, resolveAliases, prefix, (value) => String(value));
201
+ if (textDecorationRaw) {
202
+ if (!resolveAliases && /^var\(--/.test(textDecorationRaw)) {
203
+ declarations.push({ name: `${baseName}-text-decoration`, value: textDecorationRaw });
204
+ }
205
+ else {
206
+ declarations.push({ name: `${baseName}-text-decoration-line`, value: textDecorationToCss(textDecorationRaw) });
207
+ }
208
+ }
209
+ const trimRaw = resolveField(rawObj?.verticalTrim ?? rawObj?.leadingTrim, resolvedObj.verticalTrim ?? resolvedObj.leadingTrim, resolveAliases, prefix, (value) => String(value));
210
+ if (trimRaw) {
211
+ if (!resolveAliases && /^var\(--/.test(trimRaw)) {
212
+ declarations.push({ name: `${baseName}-leading-trim`, value: trimRaw });
213
+ }
214
+ else {
215
+ const trim = normalizeVerticalTrimFromTypography({ verticalTrim: trimRaw });
216
+ declarations.push({ name: `${baseName}-leading-trim`, value: trim });
217
+ }
218
+ }
219
+ return declarations;
220
+ }
221
+ function formatShadow(raw, resolved, resolveAliases, prefix) {
222
+ if (Array.isArray(raw)) {
223
+ const resolvedArray = Array.isArray(resolved) ? resolved : raw;
224
+ const layers = [];
225
+ for (let i = 0; i < raw.length; i += 1) {
226
+ const layer = formatShadowLayer(raw[i], resolvedArray[i], resolveAliases, prefix);
227
+ if (!layer)
228
+ return null;
229
+ layers.push(layer);
230
+ }
231
+ return layers.join(", ");
232
+ }
233
+ return formatShadowLayer(raw, resolved, resolveAliases, prefix);
234
+ }
235
+ function formatShadowLayer(raw, resolved, resolveAliases, prefix) {
236
+ const rawObj = toObject(raw);
237
+ const resolvedObj = toObject(resolved);
238
+ if (!resolvedObj)
239
+ return null;
240
+ const offsetX = resolveField(rawObj?.offsetX, resolvedObj.offsetX, resolveAliases, prefix, toCssDimension) ?? "0px";
241
+ const offsetY = resolveField(rawObj?.offsetY, resolvedObj.offsetY, resolveAliases, prefix, toCssDimension) ?? "0px";
242
+ const blur = resolveField(rawObj?.blur, resolvedObj.blur, resolveAliases, prefix, toCssDimension) ?? "0px";
243
+ const spread = resolveField(rawObj?.spread, resolvedObj.spread, resolveAliases, prefix, toCssDimension) ?? "0px";
244
+ const color = resolveField(rawObj?.color, resolvedObj.color, resolveAliases, prefix, (value) => {
245
+ const parsed = parseColor(value);
246
+ return parsed ? rgbaToCss(parsed) : null;
247
+ });
248
+ if (!color)
249
+ return null;
250
+ const type = String(resolvedObj.type ?? rawObj?.type ?? "dropShadow");
251
+ const inset = type === "innerShadow" ? "inset " : "";
252
+ return `${inset}${offsetX} ${offsetY} ${blur} ${spread} ${color}`;
253
+ }
254
+ function formatBorder(raw, resolved, resolveAliases, prefix) {
255
+ const rawObj = toObject(raw);
256
+ const resolvedObj = toObject(resolved);
257
+ if (!resolvedObj)
258
+ return null;
259
+ const width = resolveField(rawObj?.width, resolvedObj.width, resolveAliases, prefix, toCssDimension);
260
+ const style = resolveField(rawObj?.style, resolvedObj.style, resolveAliases, prefix, (value) => String(value));
261
+ const color = resolveField(rawObj?.color, resolvedObj.color, resolveAliases, prefix, (value) => {
262
+ const parsed = parseColor(value);
263
+ return parsed ? rgbaToCss(parsed) : null;
264
+ });
265
+ if (!width || !style || !color)
266
+ return null;
267
+ return `${width} ${style} ${color}`;
268
+ }
269
+ function formatFill(raw, resolved, resolveAliases, prefix) {
270
+ if (typeof raw === "string") {
271
+ return formatColor(raw, resolved, resolveAliases, prefix);
272
+ }
273
+ if (Array.isArray(raw)) {
274
+ const resolvedArray = Array.isArray(resolved) ? resolved : raw;
275
+ const layers = [];
276
+ for (let i = 0; i < raw.length; i += 1) {
277
+ const layer = formatFillLayer(raw[i], resolvedArray[i], resolveAliases, prefix);
278
+ if (!layer)
279
+ return null;
280
+ layers.push(layer);
281
+ }
282
+ return layers.join(", ");
283
+ }
284
+ return formatFillLayer(raw, resolved, resolveAliases, prefix);
285
+ }
286
+ function formatFillLayer(raw, resolved, resolveAliases, prefix) {
287
+ if (typeof raw === "string") {
288
+ return formatColor(raw, resolved ?? raw, resolveAliases, prefix);
289
+ }
290
+ const rawObj = toObject(raw);
291
+ const resolvedObj = toObject(resolved);
292
+ if (!rawObj || !resolvedObj)
293
+ return null;
294
+ if (rawObj.type === "solid" || resolvedObj.type === "solid") {
295
+ return resolveField(rawObj.color, resolvedObj.color, resolveAliases, prefix, (value) => {
296
+ const parsed = parseColor(value);
297
+ return parsed ? rgbaToCss(parsed) : null;
298
+ });
299
+ }
300
+ if (rawObj.type === "gradient" || resolvedObj.type === "gradient") {
301
+ return formatGradient(rawObj.gradient, resolvedObj.gradient, resolveAliases, prefix);
302
+ }
303
+ if (rawObj.type === "image" || resolvedObj.type === "image") {
304
+ const imageUrl = String(resolvedObj.imageUrl ?? rawObj.imageUrl ?? "");
305
+ if (!imageUrl)
306
+ return null;
307
+ return `url(${imageUrl})`;
308
+ }
309
+ if (resolvedObj.color !== undefined) {
310
+ const parsed = parseColor(resolvedObj.color);
311
+ if (!parsed)
312
+ return null;
313
+ return rgbaToCss(parsed);
314
+ }
315
+ return null;
316
+ }
317
+ function formatGradient(raw, resolved, resolveAliases, prefix) {
318
+ const rawObj = toObject(raw);
319
+ const resolvedObj = toObject(resolved);
320
+ if (!resolvedObj)
321
+ return null;
322
+ const type = String(resolvedObj.type ?? rawObj?.type ?? "linear");
323
+ const rawStops = Array.isArray(rawObj?.stops) ? rawObj.stops : Array.isArray(resolvedObj.stops) ? resolvedObj.stops : [];
324
+ const resolvedStops = Array.isArray(resolvedObj.stops) ? resolvedObj.stops : rawStops;
325
+ if (rawStops.length === 0)
326
+ return null;
327
+ const stops = [];
328
+ for (let i = 0; i < rawStops.length; i += 1) {
329
+ const stopRaw = toObject(rawStops[i]);
330
+ const stopResolved = toObject(resolvedStops[i]);
331
+ if (!stopResolved)
332
+ return null;
333
+ const color = resolveField(stopRaw?.color, stopResolved.color, resolveAliases, prefix, (value) => {
334
+ const parsed = parseColor(value);
335
+ return parsed ? rgbaToCss(parsed) : null;
336
+ });
337
+ if (!color)
338
+ return null;
339
+ const positionRaw = stopRaw?.position;
340
+ const positionResolved = stopResolved.position;
341
+ const position = typeof positionResolved === "number"
342
+ ? ` ${Math.round(positionResolved * 10000) / 100}%`
343
+ : typeof positionRaw === "number"
344
+ ? ` ${Math.round(positionRaw * 10000) / 100}%`
345
+ : "";
346
+ stops.push(`${color}${position}`);
347
+ }
348
+ const stopList = stops.join(", ");
349
+ if (type === "radial")
350
+ return `radial-gradient(${stopList})`;
351
+ if (type === "angular" || type === "diamond" || type === "conic")
352
+ return `conic-gradient(${stopList})`;
353
+ const angle = typeof resolvedObj.angle === "number" ? `${resolvedObj.angle}deg, ` : "";
354
+ return `linear-gradient(${angle}${stopList})`;
355
+ }
356
+ function formatEffects(token, baseName, input) {
357
+ const normalizedType = normalizeTokenTypeKey(token.type);
358
+ if (normalizedType === "blur") {
359
+ const value = formatBlurValue(token.value, token.resolvedValue ?? token.value, input.resolveAliases, input.prefix);
360
+ return value ? [{ name: baseName, value }] : [];
361
+ }
362
+ if (normalizedType === "backdrop-blur") {
363
+ const value = formatBlurValue(token.value, token.resolvedValue ?? token.value, input.resolveAliases, input.prefix);
364
+ return value ? [{ name: baseName, value }] : [];
365
+ }
366
+ const sourceValue = token.resolvedValue ?? token.value;
367
+ const effects = Array.isArray(sourceValue) ? sourceValue : [sourceValue];
368
+ const shadows = [];
369
+ const filters = [];
370
+ const backdropFilters = [];
371
+ for (const effect of effects) {
372
+ const obj = toObject(effect);
373
+ if (!obj)
374
+ continue;
375
+ const type = String(obj.type ?? "dropShadow");
376
+ if (type === "dropShadow" || type === "innerShadow") {
377
+ const shadow = formatShadowLayer(effect, effect, input.resolveAliases, input.prefix);
378
+ if (shadow)
379
+ shadows.push(shadow);
380
+ continue;
381
+ }
382
+ if (type === "layerBlur") {
383
+ const blurValue = obj.radius ?? obj.blur;
384
+ filters.push(`blur(${toCssDimension(blurValue)})`);
385
+ continue;
386
+ }
387
+ if (type === "backgroundBlur") {
388
+ const blurValue = obj.radius ?? obj.blur;
389
+ backdropFilters.push(`blur(${toCssDimension(blurValue)})`);
390
+ continue;
391
+ }
392
+ }
393
+ const declarations = [];
394
+ if (!input.splitEffects) {
395
+ if (shadows.length > 0) {
396
+ declarations.push({ name: baseName, value: shadows.join(", ") });
397
+ }
398
+ return declarations;
399
+ }
400
+ if (shadows.length > 0)
401
+ declarations.push({ name: baseName, value: shadows.join(", ") });
402
+ if (filters.length > 0)
403
+ declarations.push({ name: `${baseName}-blur`, value: filters.join(" ") });
404
+ if (backdropFilters.length > 0)
405
+ declarations.push({ name: `${baseName}-backdrop-blur`, value: backdropFilters.join(" ") });
406
+ return declarations;
407
+ }
408
+ function formatBlurValue(raw, resolved, resolveAliases, prefix) {
409
+ const rawObj = toObject(raw);
410
+ const resolvedObj = toObject(resolved);
411
+ const radiusValue = resolvedObj?.blur ?? resolvedObj?.radius ?? rawObj?.blur ?? rawObj?.radius ?? resolved;
412
+ const radius = resolveField(rawObj?.blur ?? rawObj?.radius, radiusValue, resolveAliases, prefix, toCssDimension);
413
+ if (!radius)
414
+ return null;
415
+ return `blur(${radius})`;
416
+ }
417
+ function formatDuration(value) {
418
+ if (typeof value === "number") {
419
+ if (value > 10)
420
+ return `${Math.round(value)}ms`;
421
+ return `${Math.round(value * 1000)}ms`;
422
+ }
423
+ if (typeof value === "string") {
424
+ const trimmed = value.trim().toLowerCase();
425
+ if (trimmed.endsWith("ms") || trimmed.endsWith("s"))
426
+ return trimmed;
427
+ const parsed = Number.parseFloat(trimmed);
428
+ if (Number.isFinite(parsed)) {
429
+ if (parsed > 10)
430
+ return `${Math.round(parsed)}ms`;
431
+ return `${Math.round(parsed * 1000)}ms`;
432
+ }
433
+ }
434
+ return "200ms";
435
+ }
436
+ function formatCubicBezier(value) {
437
+ if (Array.isArray(value) && value.length === 4) {
438
+ const [x1, y1, x2, y2] = value;
439
+ return `cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})`;
440
+ }
441
+ if (typeof value === "string" && value.trim()) {
442
+ return value.trim();
443
+ }
444
+ return "cubic-bezier(0.4, 0, 0.2, 1)";
445
+ }
446
+ function resolveField(rawValue, resolvedValue, resolveAliases, prefix, formatter) {
447
+ if (!resolveAliases && typeof rawValue === "string") {
448
+ const alias = extractAlias(rawValue);
449
+ if (alias)
450
+ return `var(${cssVarName(alias, prefix)})`;
451
+ }
452
+ return formatter(resolvedValue);
453
+ }
454
+ function extractAlias(value) {
455
+ const trimmed = value.trim();
456
+ if (!/^\{[^{}]+\}$/.test(trimmed))
457
+ return null;
458
+ return trimmed.slice(1, -1);
459
+ }
460
+ function toObject(value) {
461
+ if (typeof value === "object" && value !== null && !Array.isArray(value)) {
462
+ return value;
463
+ }
464
+ return null;
465
+ }
466
+ function quoteString(value) {
467
+ return `"${value.replace(/\\/g, "\\\\").replace(/"/g, '\\"')}"`;
468
+ }
469
+ function quoteIfNeeded(value) {
470
+ const trimmed = value.trim();
471
+ if (!trimmed)
472
+ return "\"\"";
473
+ if (/^(["']).*\1$/.test(trimmed))
474
+ return trimmed;
475
+ if (/^[a-zA-Z0-9\-_ ]+$/.test(trimmed))
476
+ return `"${trimmed}"`;
477
+ return trimmed;
478
+ }
479
+ function normalizeTextCaseToken(value) {
480
+ const normalized = normalizeTextCase(value);
481
+ if (normalized === "upper")
482
+ return "uppercase";
483
+ if (normalized === "lower")
484
+ return "lowercase";
485
+ if (normalized === "title")
486
+ return "capitalize";
487
+ if (normalized === "small-caps")
488
+ return "small-caps";
489
+ if (normalized === "small-caps-forced")
490
+ return "small-caps-forced";
491
+ return "none";
492
+ }
493
+ function normalizeFontWeight(value) {
494
+ const raw = String(value).trim().toLowerCase().replace(/\s+/g, "");
495
+ const map = {
496
+ thin: "100",
497
+ hairline: "100",
498
+ ultralight: "100",
499
+ extralight: "200",
500
+ light: "300",
501
+ regular: "400",
502
+ normal: "400",
503
+ medium: "500",
504
+ semibold: "600",
505
+ "semi-bold": "600",
506
+ demibold: "600",
507
+ bold: "700",
508
+ extrabold: "800",
509
+ "extra-bold": "800",
510
+ black: "900",
511
+ heavy: "900",
512
+ };
513
+ if (map[raw])
514
+ return map[raw];
515
+ if (/^\d+$/.test(raw))
516
+ return raw;
517
+ return "400";
518
+ }
519
+ function stringifyNumber(value) {
520
+ if (typeof value === "number") {
521
+ if (Number.isInteger(value))
522
+ return String(value);
523
+ return value.toFixed(4).replace(/\.0+$/, "").replace(/(\.\d*?)0+$/, "$1");
524
+ }
525
+ if (typeof value === "string")
526
+ return value;
527
+ return "0";
528
+ }
529
+ function buildUnsupportedDiagnostic(token, outputId, message) {
530
+ return {
531
+ level: "warn",
532
+ code: "CSS_UNSUPPORTED_TOKEN",
533
+ message,
534
+ tokenPath: token.path,
535
+ outputId,
536
+ };
537
+ }
538
+ //# sourceMappingURL=css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css.js","sourceRoot":"","sources":["../../src/emit/css.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { EmitResult, EmitterInput } from "../core/types.js";
2
+ export declare function emitKotlin(input: EmitterInput): EmitResult;