@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.
Files changed (110) hide show
  1. package/README.md +128 -0
  2. package/config/config.js +89 -0
  3. package/config/config.js.map +1 -0
  4. package/config/formats/fontFace.js +73 -0
  5. package/config/formats/fontFace.js.map +1 -0
  6. package/config/formats/jsSimpleObject.js +59 -0
  7. package/config/formats/jsSimpleObject.js.map +1 -0
  8. package/config/formats/utility-class-builders/color.js +25 -0
  9. package/config/formats/utility-class-builders/color.js.map +1 -0
  10. package/config/formats/utility-class-builders/grid.js +31 -0
  11. package/config/formats/utility-class-builders/grid.js.map +1 -0
  12. package/config/formats/utility-class-builders/icon.js +26 -0
  13. package/config/formats/utility-class-builders/icon.js.map +1 -0
  14. package/config/formats/utility-class-builders/iconSize.js +15 -0
  15. package/config/formats/utility-class-builders/iconSize.js.map +1 -0
  16. package/config/formats/utility-class-builders/spacing.js +44 -0
  17. package/config/formats/utility-class-builders/spacing.js.map +1 -0
  18. package/config/formats/utility-class-builders/typeSize.js +30 -0
  19. package/config/formats/utility-class-builders/typeSize.js.map +1 -0
  20. package/config/formats/utility-class-builders/typeWeight.js +15 -0
  21. package/config/formats/utility-class-builders/typeWeight.js.map +1 -0
  22. package/config/formats/utilityClasses.js +91 -0
  23. package/config/formats/utilityClasses.js.map +1 -0
  24. package/config/formats/utils.js +19 -0
  25. package/config/formats/utils.js.map +1 -0
  26. package/config/formats/vanillaExtractSprinkleValues.js +86 -0
  27. package/config/formats/vanillaExtractSprinkleValues.js.map +1 -0
  28. package/config/transforms/attrFont.js +23 -0
  29. package/config/transforms/attrFont.js.map +1 -0
  30. package/config/transforms/attrGridColumns.js +20 -0
  31. package/config/transforms/attrGridColumns.js.map +1 -0
  32. package/config-src/config.js.map +1 -0
  33. package/config-src/config.ts +89 -0
  34. package/config-src/formats/fontFace.js.map +1 -0
  35. package/config-src/formats/fontFace.ts +68 -0
  36. package/config-src/formats/jsSimpleObject.js.map +1 -0
  37. package/config-src/formats/jsSimpleObject.ts +32 -0
  38. package/config-src/formats/utility-class-builders/UtilityClassBuilder.d.ts +7 -0
  39. package/config-src/formats/utility-class-builders/color.js.map +1 -0
  40. package/config-src/formats/utility-class-builders/color.ts +24 -0
  41. package/config-src/formats/utility-class-builders/grid.js.map +1 -0
  42. package/config-src/formats/utility-class-builders/grid.ts +30 -0
  43. package/config-src/formats/utility-class-builders/icon.js.map +1 -0
  44. package/config-src/formats/utility-class-builders/icon.ts +26 -0
  45. package/config-src/formats/utility-class-builders/iconSize.js.map +1 -0
  46. package/config-src/formats/utility-class-builders/iconSize.ts +13 -0
  47. package/config-src/formats/utility-class-builders/spacing.js.map +1 -0
  48. package/config-src/formats/utility-class-builders/spacing.ts +44 -0
  49. package/config-src/formats/utility-class-builders/typeSize.js.map +1 -0
  50. package/config-src/formats/utility-class-builders/typeSize.ts +30 -0
  51. package/config-src/formats/utility-class-builders/typeWeight.js.map +1 -0
  52. package/config-src/formats/utility-class-builders/typeWeight.ts +13 -0
  53. package/config-src/formats/utilityClasses.js.map +1 -0
  54. package/config-src/formats/utilityClasses.ts +77 -0
  55. package/config-src/formats/utils.js.map +1 -0
  56. package/config-src/formats/utils.ts +14 -0
  57. package/config-src/formats/vanillaExtractSprinkleValues.js.map +1 -0
  58. package/config-src/formats/vanillaExtractSprinkleValues.ts +73 -0
  59. package/config-src/transforms/attrFont.js.map +1 -0
  60. package/config-src/transforms/attrFont.ts +24 -0
  61. package/config-src/transforms/attrGridColumns.js.map +1 -0
  62. package/config-src/transforms/attrGridColumns.ts +15 -0
  63. package/config-src/tsconfig.json +22 -0
  64. package/lib/css/tokens.css +668 -0
  65. package/lib/css/utils.css +1318 -0
  66. package/lib/dictionary.d.ts +33847 -0
  67. package/lib/font.css +102 -0
  68. package/lib/index.cjs.js +1 -0
  69. package/lib/index.d.ts +8 -0
  70. package/lib/index.es.js +1611 -0
  71. package/lib/scss/tokens.scss +665 -0
  72. package/lib/scss/utils.scss +1318 -0
  73. package/lib/tokens.d.ts +1389 -0
  74. package/lib/types.d.ts +5 -0
  75. package/lib/utils/pxToRem.d.ts +5 -0
  76. package/lib/utils/rem.d.ts +7 -0
  77. package/lib/utils/transparentEquivalentColor.d.ts +29 -0
  78. package/lib/vanilla-extract/border.css.d.ts +37 -0
  79. package/lib/vanilla-extract/grid.css.d.ts +15 -0
  80. package/lib/vanilla-extract/properties/border.css.d.ts +1397 -0
  81. package/lib/vanilla-extract/properties/color.css.d.ts +464 -0
  82. package/lib/vanilla-extract/properties/conditions.d.ts +27 -0
  83. package/lib/vanilla-extract/properties/grid.css.d.ts +55 -0
  84. package/lib/vanilla-extract/properties/margin.css.d.ts +321 -0
  85. package/lib/vanilla-extract/properties/padding.css.d.ts +321 -0
  86. package/lib/vanilla-extract/properties/type.css.d.ts +80 -0
  87. package/lib/vanilla-extract/sprinkleValues.d.ts +1114 -0
  88. package/lib/vanilla-extract/sprinkles.css.d.ts +5267 -0
  89. package/lib/vanilla-extract/style.css +1 -0
  90. package/package.json +37 -0
  91. package/src/dictionary.ts +46007 -0
  92. package/src/index.ts +8 -0
  93. package/src/tokens.ts +785 -0
  94. package/src/types.ts +6 -0
  95. package/src/utils/pxToRem.ts +7 -0
  96. package/src/utils/rem.ts +27 -0
  97. package/src/utils/transparentEquivalentColor.ts +42 -0
  98. package/src/vanilla-extract/border.css.ts +46 -0
  99. package/src/vanilla-extract/grid.css.ts +49 -0
  100. package/src/vanilla-extract/properties/border.css.ts +33 -0
  101. package/src/vanilla-extract/properties/color.css.ts +16 -0
  102. package/src/vanilla-extract/properties/conditions.ts +14 -0
  103. package/src/vanilla-extract/properties/grid.css.ts +13 -0
  104. package/src/vanilla-extract/properties/margin.css.ts +40 -0
  105. package/src/vanilla-extract/properties/padding.css.ts +40 -0
  106. package/src/vanilla-extract/properties/type.css.ts +17 -0
  107. package/src/vanilla-extract/sprinkleValues.ts +605 -0
  108. package/src/vanilla-extract/sprinkles.css.ts +19 -0
  109. package/tsconfig.json +13 -0
  110. 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
+ }