@sps-woodland/tokens 7.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.
- package/README.md +128 -0
- package/config/config.js +89 -0
- package/config/config.js.map +1 -0
- package/config/formats/fontFace.js +73 -0
- package/config/formats/fontFace.js.map +1 -0
- package/config/formats/jsSimpleObject.js +59 -0
- package/config/formats/jsSimpleObject.js.map +1 -0
- package/config/formats/utility-class-builders/color.js +25 -0
- package/config/formats/utility-class-builders/color.js.map +1 -0
- package/config/formats/utility-class-builders/grid.js +31 -0
- package/config/formats/utility-class-builders/grid.js.map +1 -0
- package/config/formats/utility-class-builders/icon.js +26 -0
- package/config/formats/utility-class-builders/icon.js.map +1 -0
- package/config/formats/utility-class-builders/iconSize.js +15 -0
- package/config/formats/utility-class-builders/iconSize.js.map +1 -0
- package/config/formats/utility-class-builders/spacing.js +44 -0
- package/config/formats/utility-class-builders/spacing.js.map +1 -0
- package/config/formats/utility-class-builders/typeSize.js +30 -0
- package/config/formats/utility-class-builders/typeSize.js.map +1 -0
- package/config/formats/utility-class-builders/typeWeight.js +15 -0
- package/config/formats/utility-class-builders/typeWeight.js.map +1 -0
- package/config/formats/utilityClasses.js +91 -0
- package/config/formats/utilityClasses.js.map +1 -0
- package/config/formats/utils.js +19 -0
- package/config/formats/utils.js.map +1 -0
- package/config/formats/vanillaExtractSprinkleValues.js +86 -0
- package/config/formats/vanillaExtractSprinkleValues.js.map +1 -0
- package/config/transforms/attrFont.js +23 -0
- package/config/transforms/attrFont.js.map +1 -0
- package/config/transforms/attrGridColumns.js +20 -0
- package/config/transforms/attrGridColumns.js.map +1 -0
- package/config-src/config.js.map +1 -0
- package/config-src/config.ts +89 -0
- package/config-src/formats/fontFace.js.map +1 -0
- package/config-src/formats/fontFace.ts +68 -0
- package/config-src/formats/jsSimpleObject.js.map +1 -0
- package/config-src/formats/jsSimpleObject.ts +32 -0
- package/config-src/formats/utility-class-builders/UtilityClassBuilder.d.ts +7 -0
- package/config-src/formats/utility-class-builders/color.js.map +1 -0
- package/config-src/formats/utility-class-builders/color.ts +24 -0
- package/config-src/formats/utility-class-builders/grid.js.map +1 -0
- package/config-src/formats/utility-class-builders/grid.ts +30 -0
- package/config-src/formats/utility-class-builders/icon.js.map +1 -0
- package/config-src/formats/utility-class-builders/icon.ts +26 -0
- package/config-src/formats/utility-class-builders/iconSize.js.map +1 -0
- package/config-src/formats/utility-class-builders/iconSize.ts +13 -0
- package/config-src/formats/utility-class-builders/spacing.js.map +1 -0
- package/config-src/formats/utility-class-builders/spacing.ts +44 -0
- package/config-src/formats/utility-class-builders/typeSize.js.map +1 -0
- package/config-src/formats/utility-class-builders/typeSize.ts +30 -0
- package/config-src/formats/utility-class-builders/typeWeight.js.map +1 -0
- package/config-src/formats/utility-class-builders/typeWeight.ts +13 -0
- package/config-src/formats/utilityClasses.js.map +1 -0
- package/config-src/formats/utilityClasses.ts +77 -0
- package/config-src/formats/utils.js.map +1 -0
- package/config-src/formats/utils.ts +14 -0
- package/config-src/formats/vanillaExtractSprinkleValues.js.map +1 -0
- package/config-src/formats/vanillaExtractSprinkleValues.ts +73 -0
- package/config-src/transforms/attrFont.js.map +1 -0
- package/config-src/transforms/attrFont.ts +24 -0
- package/config-src/transforms/attrGridColumns.js.map +1 -0
- package/config-src/transforms/attrGridColumns.ts +15 -0
- package/config-src/tsconfig.json +22 -0
- package/lib/css/tokens.css +668 -0
- package/lib/css/utils.css +1318 -0
- package/lib/dictionary.d.ts +33847 -0
- package/lib/font.css +102 -0
- package/lib/index.cjs.js +1 -0
- package/lib/index.d.ts +8 -0
- package/lib/index.es.js +1611 -0
- package/lib/scss/tokens.scss +665 -0
- package/lib/scss/utils.scss +1318 -0
- package/lib/tokens.d.ts +1389 -0
- package/lib/types.d.ts +5 -0
- package/lib/utils/pxToRem.d.ts +5 -0
- package/lib/utils/rem.d.ts +7 -0
- package/lib/utils/transparentEquivalentColor.d.ts +29 -0
- package/lib/vanilla-extract/border.css.d.ts +37 -0
- package/lib/vanilla-extract/grid.css.d.ts +15 -0
- package/lib/vanilla-extract/properties/border.css.d.ts +1397 -0
- package/lib/vanilla-extract/properties/color.css.d.ts +464 -0
- package/lib/vanilla-extract/properties/conditions.d.ts +27 -0
- package/lib/vanilla-extract/properties/grid.css.d.ts +55 -0
- package/lib/vanilla-extract/properties/margin.css.d.ts +321 -0
- package/lib/vanilla-extract/properties/padding.css.d.ts +321 -0
- package/lib/vanilla-extract/properties/type.css.d.ts +80 -0
- package/lib/vanilla-extract/sprinkleValues.d.ts +1114 -0
- package/lib/vanilla-extract/sprinkles.css.d.ts +5267 -0
- package/lib/vanilla-extract/style.css +1 -0
- package/package.json +37 -0
- package/src/dictionary.ts +46007 -0
- package/src/index.ts +8 -0
- package/src/tokens.ts +785 -0
- package/src/types.ts +6 -0
- package/src/utils/pxToRem.ts +7 -0
- package/src/utils/rem.ts +27 -0
- package/src/utils/transparentEquivalentColor.ts +42 -0
- package/src/vanilla-extract/border.css.ts +46 -0
- package/src/vanilla-extract/grid.css.ts +49 -0
- package/src/vanilla-extract/properties/border.css.ts +33 -0
- package/src/vanilla-extract/properties/color.css.ts +16 -0
- package/src/vanilla-extract/properties/conditions.ts +14 -0
- package/src/vanilla-extract/properties/grid.css.ts +13 -0
- package/src/vanilla-extract/properties/margin.css.ts +40 -0
- package/src/vanilla-extract/properties/padding.css.ts +40 -0
- package/src/vanilla-extract/properties/type.css.ts +17 -0
- package/src/vanilla-extract/sprinkleValues.ts +605 -0
- package/src/vanilla-extract/sprinkles.css.ts +19 -0
- package/tsconfig.json +13 -0
- package/vite.config.js +21 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { UtilityClassBuilder } from "./UtilityClassBuilder";
|
|
2
|
+
|
|
3
|
+
export const typeSizeClasses: UtilityClassBuilder = {
|
|
4
|
+
appliesTo: (token) => token.attributes.category === "size"
|
|
5
|
+
&& token.attributes.type === "type",
|
|
6
|
+
build(token, dictionary) {
|
|
7
|
+
const [prefix, prop] = {
|
|
8
|
+
font: ["fs", "font-size"],
|
|
9
|
+
line: ["lh", "line-height"],
|
|
10
|
+
}[token.attributes.subitem];
|
|
11
|
+
|
|
12
|
+
let composite = "";
|
|
13
|
+
if (token.attributes.subitem === "font") {
|
|
14
|
+
const lhToken = dictionary.tokens.size.type[token.attributes.item].line;
|
|
15
|
+
composite = `
|
|
16
|
+
.type-${token.attributes.item} {
|
|
17
|
+
font-size: ${token.variableReference} !important;
|
|
18
|
+
line-height: ${lhToken.variableReference} !important;
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return `
|
|
24
|
+
.${prefix}-${token.attributes.item} {
|
|
25
|
+
${prop}: ${token.variableReference} !important;
|
|
26
|
+
}
|
|
27
|
+
${composite}
|
|
28
|
+
`;
|
|
29
|
+
},
|
|
30
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeWeight.js","sourceRoot":"","sources":["typeWeight.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAwB;IACpD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,KAAK,MAAM;WACrD,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ;IACvC,KAAK,CAAC,KAAK;QACT,OAAO;YACC,KAAK,CAAC,UAAU,CAAC,IAAI;uBACV,KAAK,CAAC,iBAAiB;;KAEzC,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { UtilityClassBuilder } from "./UtilityClassBuilder";
|
|
2
|
+
|
|
3
|
+
export const typeWeightClasses: UtilityClassBuilder = {
|
|
4
|
+
appliesTo: (token) => token.attributes.category === "type"
|
|
5
|
+
&& token.attributes.type === "weight",
|
|
6
|
+
build(token) {
|
|
7
|
+
return `
|
|
8
|
+
.fw-${token.attributes.item} {
|
|
9
|
+
font-weight: ${token.variableReference} !important;
|
|
10
|
+
}
|
|
11
|
+
`;
|
|
12
|
+
},
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utilityClasses.js","sourceRoot":"","sources":["utilityClasses.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wEAA+C;AAE/C,mDAAqC;AACrC,mCAA+B;AAE/B,0DAA8D;AAC9D,wDAA4D;AAC5D,wDAA4D;AAC5D,gEAAoE;AACpE,8DAAkE;AAClE,gEAAoE;AACpE,oEAAwE;AAGxE,MAAM,aAAa,GAA0B;IAC3C,oBAAY;IACZ,kBAAW;IACX,kBAAW;IACX,0BAAe;IACf,wBAAc;IACd,0BAAe;IACf,8BAAiB;CAClB,CAAC;AAEF,SAAS,iBAAiB,CAAC,OAAe,EAAE,MAAc;IACxD,QAAQ,MAAM,EAAE;QACd,KAAK,KAAK;YACR,OAAO,SAAS,OAAO,GAAG,CAAC;QAE7B,KAAK,MAAM;YACT,OAAO,IAAI,OAAO,EAAE,CAAC;QAEvB;YACE,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;KAChD;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,SAA6B,EAAE,MAAc;IAC1E,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE;QAC7B,KAAK,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;KACjE;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAuB,EAAE,UAAsB;IACnE,MAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,CAC1C,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CACtC,CAAC;IACF,IAAI,iBAAiB,EAAE;QACrB,OAAO,IAAA,YAAI,EAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;KACzD;IACD,oCAAoC;IACpC,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,0BAAe,CAAC,cAAc,CAAC;IAC7B,IAAI,EAAE,qBAAqB;IAC3B,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE;QAC5B,qBAAqB,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS;aACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;aAC/C,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,QAAQ,CAAC,MAAM,CAAC;QACnB,0BAAe,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC;QAClD,OAAO;KACV,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACxB,CAAC;CACF,CAAC,CAAC;AAEH,0BAAe,CAAC,cAAc,CAAC;IAC7B,IAAI,EAAE,sBAAsB;IAC5B,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE;QAC5B,qBAAqB,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS;aACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;aAC/C,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,QAAQ,CAAC,MAAM,CAAC;QACnB,0BAAe,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC;;QAElD,OAAO;KACV,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzB,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import StyleDictionary from "style-dictionary";
|
|
2
|
+
import type { Dictionary, TransformedToken } from "style-dictionary";
|
|
3
|
+
import * as prettier from "prettier";
|
|
4
|
+
import { trim } from "./utils";
|
|
5
|
+
|
|
6
|
+
import { colorClasses } from "./utility-class-builders/color";
|
|
7
|
+
import { gridClasses } from "./utility-class-builders/grid";
|
|
8
|
+
import { iconClasses } from "./utility-class-builders/icon";
|
|
9
|
+
import { iconSizeClasses } from "./utility-class-builders/iconSize";
|
|
10
|
+
import { spacingClasses } from "./utility-class-builders/spacing";
|
|
11
|
+
import { typeSizeClasses } from "./utility-class-builders/typeSize";
|
|
12
|
+
import { typeWeightClasses } from "./utility-class-builders/typeWeight";
|
|
13
|
+
import type { UtilityClassBuilder } from "./utility-class-builders/UtilityClassBuilder";
|
|
14
|
+
|
|
15
|
+
const classBuilders: UtilityClassBuilder[] = [
|
|
16
|
+
colorClasses,
|
|
17
|
+
gridClasses,
|
|
18
|
+
iconClasses,
|
|
19
|
+
iconSizeClasses,
|
|
20
|
+
spacingClasses,
|
|
21
|
+
typeSizeClasses,
|
|
22
|
+
typeWeightClasses,
|
|
23
|
+
];
|
|
24
|
+
|
|
25
|
+
function variableReference(varName: string, format: string): string {
|
|
26
|
+
switch (format) {
|
|
27
|
+
case "css":
|
|
28
|
+
return `var(--${varName})`;
|
|
29
|
+
|
|
30
|
+
case "scss":
|
|
31
|
+
return `$${varName}`;
|
|
32
|
+
|
|
33
|
+
default:
|
|
34
|
+
throw new Error(`Unknown format: ${format}`);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function addVariableReferences(allTokens: TransformedToken[], format: string): void {
|
|
39
|
+
for (const token of allTokens) {
|
|
40
|
+
token.variableReference = variableReference(token.name, format);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function buildClasses(token: TransformedToken, dictionary: Dictionary): string {
|
|
45
|
+
const applicableBuilder = classBuilders.find(
|
|
46
|
+
(builder) => builder.appliesTo(token)
|
|
47
|
+
);
|
|
48
|
+
if (applicableBuilder) {
|
|
49
|
+
return trim(applicableBuilder.build(token, dictionary));
|
|
50
|
+
}
|
|
51
|
+
// console.log("unhandled:", token);
|
|
52
|
+
return "";
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
["css", "scss"].forEach((lang) => {
|
|
56
|
+
StyleDictionary.registerFormat({
|
|
57
|
+
name: `${lang}/utility-classes`,
|
|
58
|
+
formatter({ file, dictionary }) {
|
|
59
|
+
addVariableReferences(dictionary.allTokens, lang);
|
|
60
|
+
|
|
61
|
+
const builtClasses = dictionary.allTokens
|
|
62
|
+
.map((token) => buildClasses(token, dictionary))
|
|
63
|
+
.join("\n");
|
|
64
|
+
|
|
65
|
+
const staticClasses = classBuilders
|
|
66
|
+
.map((builder) => builder.staticClasses)
|
|
67
|
+
.filter(Boolean)
|
|
68
|
+
.join("\n");
|
|
69
|
+
|
|
70
|
+
return prettier.format(`
|
|
71
|
+
${StyleDictionary.formatHelpers.fileHeader({ file })}
|
|
72
|
+
${builtClasses}
|
|
73
|
+
${staticClasses}
|
|
74
|
+
`, { parser: lang });
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":";;;AAAA,SAAgB,cAAc,CAAC,MAAW;IACxC,IAAI,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;QAClC,OAAO,MAAM,CAAC,KAAK,CAAC;KACrB;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;SACvB,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACnB,GAAG,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACvC,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC;AATD,wCASC;AAED,SAAgB,IAAI,CAAC,GAAW;IAC9B,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC;AAFD,oBAEC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export function simplifyTokens(tokens: any): any {
|
|
2
|
+
if (tokens.hasOwnProperty("value")) {
|
|
3
|
+
return tokens.value;
|
|
4
|
+
}
|
|
5
|
+
return Object.keys(tokens)
|
|
6
|
+
.reduce((acc, key) => {
|
|
7
|
+
acc[key] = simplifyTokens(tokens[key]);
|
|
8
|
+
return acc;
|
|
9
|
+
}, {});
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function trim(str: string): string {
|
|
13
|
+
return str.replace(/^\s+/gm, "").trim();
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vanillaExtractSprinkleValues.js","sourceRoot":"","sources":["vanillaExtractSprinkleValues.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wEAA+C;AAC/C,mDAAqC;AACrC,mCAAyC;AAEzC,0BAAe,CAAC,cAAc,CAAC;IAC7B,IAAI,EAAE,iCAAiC;IACvC,SAAS,CAAC,EAAE,UAAU,EAAE;QACtB,MAAM,KAIF,IAAA,sBAAc,EAAC,UAAU,CAAC,MAAM,CAAC,EAJ/B,EACJ,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,UAAU,OAEmB,EADhC,WAAW,cAHV,iBAIL,CAAoC,CAAC;QACtC,MAAM,EACJ,IAAI,EAAE,cAAc,KAElB,UAAU,EADT,eAAe,UAChB,UAAU,EAHR,QAGL,CAAa,CAAC;QAEf,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;aACpC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACnB,IAAI,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;gBACxC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE;oBAClD,GAAG,CAAC,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;iBACpD;aACF;iBAAM;gBACL,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;aAC7B;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QAET,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;aAC1C,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,iCACjB,GAAG,KACN,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,IAC/B,EAAE,EAAE,CAAC,CAAC;QAEV,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;aAC5C,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,iCACjB,GAAG,KACN,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,IAC/B,EAAE,EAAE,CAAC,CAAC;QAEV,MAAM,MAAM,mBACV,MAAM;YACN,SAAS;YACT,WAAW,IACR,WAAW,CACf,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE;YAC9C,IAAI,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;gBAC9B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;aAClD;iBAAM;gBACL,MAAM,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;aACpC;SACF;QAED,OAAO,QAAQ,CAAC,MAAM,CAAC;;;;;;oDAMyB,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;KAC9E,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAC/B,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import StyleDictionary from "style-dictionary";
|
|
2
|
+
import * as prettier from "prettier";
|
|
3
|
+
import { simplifyTokens } from "./utils";
|
|
4
|
+
|
|
5
|
+
StyleDictionary.registerFormat({
|
|
6
|
+
name: "vanilla-extract/sprinkle-values",
|
|
7
|
+
formatter({ dictionary }) {
|
|
8
|
+
const {
|
|
9
|
+
color: colorTokens,
|
|
10
|
+
size: sizeTokens,
|
|
11
|
+
...otherTokens
|
|
12
|
+
} = simplifyTokens(dictionary.tokens);
|
|
13
|
+
const {
|
|
14
|
+
type: typeSizeTokens,
|
|
15
|
+
spacing: spacingSizeTokens,
|
|
16
|
+
...otherSizeTokens
|
|
17
|
+
} = sizeTokens;
|
|
18
|
+
|
|
19
|
+
const colors = Object.keys(colorTokens)
|
|
20
|
+
.reduce((acc, key) => {
|
|
21
|
+
if (typeof colorTokens[key] === "object") {
|
|
22
|
+
for (const subkey of Object.keys(colorTokens[key])) {
|
|
23
|
+
acc[`${key}-${subkey}`] = colorTokens[key][subkey];
|
|
24
|
+
}
|
|
25
|
+
} else {
|
|
26
|
+
acc[key] = colorTokens[key];
|
|
27
|
+
}
|
|
28
|
+
return acc;
|
|
29
|
+
}, {});
|
|
30
|
+
|
|
31
|
+
const fontSizes = Object.keys(typeSizeTokens)
|
|
32
|
+
.reduce((acc, key) => ({
|
|
33
|
+
...acc,
|
|
34
|
+
[key]: typeSizeTokens[key].font,
|
|
35
|
+
}), {});
|
|
36
|
+
|
|
37
|
+
const lineHeights = Object.keys(typeSizeTokens)
|
|
38
|
+
.reduce((acc, key) => ({
|
|
39
|
+
...acc,
|
|
40
|
+
[key]: typeSizeTokens[key].line,
|
|
41
|
+
}), {});
|
|
42
|
+
|
|
43
|
+
const values = {
|
|
44
|
+
colors,
|
|
45
|
+
fontSizes,
|
|
46
|
+
lineHeights,
|
|
47
|
+
spacing: {
|
|
48
|
+
...spacingSizeTokens,
|
|
49
|
+
none: 0,
|
|
50
|
+
auto: "auto",
|
|
51
|
+
},
|
|
52
|
+
...otherTokens,
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
for (const key of Object.keys(otherSizeTokens)) {
|
|
56
|
+
// some need to be merged vs overwriting
|
|
57
|
+
if (values.hasOwnProperty(key)) {
|
|
58
|
+
Object.assign(values[key], otherSizeTokens[key]);
|
|
59
|
+
} else {
|
|
60
|
+
values[key] = otherSizeTokens[key];
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return prettier.format(`
|
|
65
|
+
/* eslint-disable */
|
|
66
|
+
/**
|
|
67
|
+
* GENERATED
|
|
68
|
+
* Do not edit directly
|
|
69
|
+
*/
|
|
70
|
+
export const sprinkleValues = Object.freeze(${JSON.stringify(values, null, 0)});
|
|
71
|
+
`, { parser: "typescript" });
|
|
72
|
+
},
|
|
73
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attrFont.js","sourceRoot":"","sources":["attrFont.ts"],"names":[],"mappings":";;;;;AAAA,wEAA+C;AAE/C,0BAAe,CAAC,iBAAiB,CAAC;IAChC,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,KAAK,OAAO;WACpD,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM;IACrC,WAAW,CAAC,KAAK;QACf,MAAM,CACJ,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,MAAM,EACN,KAAK,EACN,GAAG,KAAK,CAAC,IAAI,CAAC;QACf,OAAO;YACL,QAAQ;YACR,IAAI;YACJ,MAAM;YACN,MAAM;YACN,KAAK;SACN,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import StyleDictionary from "style-dictionary";
|
|
2
|
+
|
|
3
|
+
StyleDictionary.registerTransform({
|
|
4
|
+
name: "attribute/font",
|
|
5
|
+
type: "attribute",
|
|
6
|
+
matcher: (token) => token.attributes.category === "asset"
|
|
7
|
+
&& token.attributes.type === "font",
|
|
8
|
+
transformer(token) {
|
|
9
|
+
const [
|
|
10
|
+
category,
|
|
11
|
+
type,
|
|
12
|
+
family,
|
|
13
|
+
weight,
|
|
14
|
+
style,
|
|
15
|
+
] = token.path;
|
|
16
|
+
return {
|
|
17
|
+
category,
|
|
18
|
+
type,
|
|
19
|
+
family,
|
|
20
|
+
weight,
|
|
21
|
+
style,
|
|
22
|
+
};
|
|
23
|
+
},
|
|
24
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attrGridColumns.js","sourceRoot":"","sources":["attrGridColumns.ts"],"names":[],"mappings":";;;;;AAAA,wEAA+C;AAE/C,0BAAe,CAAC,iBAAiB,CAAC;IAChC,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,KAAK,MAAM;WACnD,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS;IACxC,WAAW,CAAC,KAAK;QACf,OAAO;YACL,QAAQ,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;iBAC7B,IAAI,CAAC,KAAK,CAAC;iBACX,IAAI,CAAC,GAAG,CAAC;SACb,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import StyleDictionary from "style-dictionary";
|
|
2
|
+
|
|
3
|
+
StyleDictionary.registerTransform({
|
|
4
|
+
name: "attribute/grid-columns",
|
|
5
|
+
type: "attribute",
|
|
6
|
+
matcher: (token) => token.attributes.category === "grid"
|
|
7
|
+
&& token.attributes.type === "columns",
|
|
8
|
+
transformer(token) {
|
|
9
|
+
return {
|
|
10
|
+
cssValue: new Array(token.value)
|
|
11
|
+
.fill("1fr")
|
|
12
|
+
.join(" "),
|
|
13
|
+
};
|
|
14
|
+
},
|
|
15
|
+
});
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compileOnSave": false,
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"outDir": "../config",
|
|
5
|
+
"sourceMap": true,
|
|
6
|
+
"declaration": false,
|
|
7
|
+
"downlevelIteration": true,
|
|
8
|
+
"moduleResolution": "node",
|
|
9
|
+
"resolveJsonModule": true,
|
|
10
|
+
"emitDecoratorMetadata": true,
|
|
11
|
+
"experimentalDecorators": true,
|
|
12
|
+
"esModuleInterop": true,
|
|
13
|
+
"target": "es6",
|
|
14
|
+
"typeRoots": ["node_modules/@types"],
|
|
15
|
+
"types": ["node"],
|
|
16
|
+
"lib": ["es6", "dom"],
|
|
17
|
+
"baseUrl": "./",
|
|
18
|
+
"module": "CommonJS",
|
|
19
|
+
"skipLibCheck": true
|
|
20
|
+
},
|
|
21
|
+
"exclude": []
|
|
22
|
+
}
|