@salutejs/core-themes 0.12.0-canary.1274.9714331676.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 (113) hide show
  1. package/LICENSE.txt +21 -0
  2. package/README.md +3 -0
  3. package/build/cjs/creators/createColorTokens.d.ts +5 -0
  4. package/build/cjs/creators/createColorTokens.js +50 -0
  5. package/build/cjs/creators/createColorTokens.js.map +1 -0
  6. package/build/cjs/creators/createGradientTokens.d.ts +5 -0
  7. package/build/cjs/creators/createGradientTokens.js +47 -0
  8. package/build/cjs/creators/createGradientTokens.js.map +1 -0
  9. package/build/cjs/creators/createShadowTokens.d.ts +5 -0
  10. package/build/cjs/creators/createShadowTokens.js +45 -0
  11. package/build/cjs/creators/createShadowTokens.js.map +1 -0
  12. package/build/cjs/creators/createShapeTokens.d.ts +5 -0
  13. package/build/cjs/creators/createShapeTokens.js +45 -0
  14. package/build/cjs/creators/createShapeTokens.js.map +1 -0
  15. package/build/cjs/creators/createTypographyTokens.d.ts +15 -0
  16. package/build/cjs/creators/createTypographyTokens.js +128 -0
  17. package/build/cjs/creators/createTypographyTokens.js.map +1 -0
  18. package/build/cjs/creators/index.d.ts +5 -0
  19. package/build/cjs/creators/index.js +14 -0
  20. package/build/cjs/creators/index.js.map +1 -0
  21. package/build/cjs/generate.d.ts +2 -0
  22. package/build/cjs/generate.js +127 -0
  23. package/build/cjs/generate.js.map +1 -0
  24. package/build/cjs/generators/generateCSSModuleThemes.d.ts +2 -0
  25. package/build/cjs/generators/generateCSSModuleThemes.js +38 -0
  26. package/build/cjs/generators/generateCSSModuleThemes.js.map +1 -0
  27. package/build/cjs/generators/generateCSSThemes.d.ts +2 -0
  28. package/build/cjs/generators/generateCSSThemes.js +33 -0
  29. package/build/cjs/generators/generateCSSThemes.js.map +1 -0
  30. package/build/cjs/generators/generateDefaultTokens.d.ts +2 -0
  31. package/build/cjs/generators/generateDefaultTokens.js +22 -0
  32. package/build/cjs/generators/generateDefaultTokens.js.map +1 -0
  33. package/build/cjs/generators/generateRootIndex.d.ts +1 -0
  34. package/build/cjs/generators/generateRootIndex.js +16 -0
  35. package/build/cjs/generators/generateRootIndex.js.map +1 -0
  36. package/build/cjs/generators/generateThemes.d.ts +2 -0
  37. package/build/cjs/generators/generateThemes.js +35 -0
  38. package/build/cjs/generators/generateThemes.js.map +1 -0
  39. package/build/cjs/generators/generateTokens.d.ts +2 -0
  40. package/build/cjs/generators/generateTokens.js +25 -0
  41. package/build/cjs/generators/generateTokens.js.map +1 -0
  42. package/build/cjs/generators/index.d.ts +6 -0
  43. package/build/cjs/generators/index.js +16 -0
  44. package/build/cjs/generators/index.js.map +1 -0
  45. package/build/cjs/index.d.ts +1 -0
  46. package/build/cjs/index.js +6 -0
  47. package/build/cjs/index.js.map +1 -0
  48. package/build/cjs/types/constants.d.ts +15 -0
  49. package/build/cjs/types/constants.js +19 -0
  50. package/build/cjs/types/constants.js.map +1 -0
  51. package/build/cjs/types/index.d.ts +2 -0
  52. package/build/cjs/types/index.js +15 -0
  53. package/build/cjs/types/index.js.map +1 -0
  54. package/build/cjs/types/theme.d.ts +48 -0
  55. package/build/cjs/types/theme.js +3 -0
  56. package/build/cjs/types/theme.js.map +1 -0
  57. package/build/cjs/utils/index.d.ts +3 -0
  58. package/build/cjs/utils/index.js +16 -0
  59. package/build/cjs/utils/index.js.map +1 -0
  60. package/build/cjs/utils/meta.d.ts +2 -0
  61. package/build/cjs/utils/meta.js +29 -0
  62. package/build/cjs/utils/meta.js.map +1 -0
  63. package/build/cjs/utils/other.d.ts +1 -0
  64. package/build/cjs/utils/other.js +8 -0
  65. package/build/cjs/utils/other.js.map +1 -0
  66. package/build/cjs/utils/theme.d.ts +7 -0
  67. package/build/cjs/utils/theme.js +164 -0
  68. package/build/cjs/utils/theme.js.map +1 -0
  69. package/build/esm/creators/createColorTokens.js +46 -0
  70. package/build/esm/creators/createColorTokens.js.map +1 -0
  71. package/build/esm/creators/createGradientTokens.js +43 -0
  72. package/build/esm/creators/createGradientTokens.js.map +1 -0
  73. package/build/esm/creators/createShadowTokens.js +41 -0
  74. package/build/esm/creators/createShadowTokens.js.map +1 -0
  75. package/build/esm/creators/createShapeTokens.js +41 -0
  76. package/build/esm/creators/createShapeTokens.js.map +1 -0
  77. package/build/esm/creators/createTypographyTokens.js +124 -0
  78. package/build/esm/creators/createTypographyTokens.js.map +1 -0
  79. package/build/esm/creators/index.js +6 -0
  80. package/build/esm/creators/index.js.map +1 -0
  81. package/build/esm/generate.js +120 -0
  82. package/build/esm/generate.js.map +1 -0
  83. package/build/esm/generators/generateCSSModuleThemes.js +31 -0
  84. package/build/esm/generators/generateCSSModuleThemes.js.map +1 -0
  85. package/build/esm/generators/generateCSSThemes.js +26 -0
  86. package/build/esm/generators/generateCSSThemes.js.map +1 -0
  87. package/build/esm/generators/generateDefaultTokens.js +15 -0
  88. package/build/esm/generators/generateDefaultTokens.js.map +1 -0
  89. package/build/esm/generators/generateRootIndex.js +9 -0
  90. package/build/esm/generators/generateRootIndex.js.map +1 -0
  91. package/build/esm/generators/generateThemes.js +28 -0
  92. package/build/esm/generators/generateThemes.js.map +1 -0
  93. package/build/esm/generators/generateTokens.js +18 -0
  94. package/build/esm/generators/generateTokens.js.map +1 -0
  95. package/build/esm/generators/index.js +7 -0
  96. package/build/esm/generators/index.js.map +1 -0
  97. package/build/esm/index.js +2 -0
  98. package/build/esm/index.js.map +1 -0
  99. package/build/esm/types/constants.js +16 -0
  100. package/build/esm/types/constants.js.map +1 -0
  101. package/build/esm/types/index.js +3 -0
  102. package/build/esm/types/index.js.map +1 -0
  103. package/build/esm/types/theme.js +2 -0
  104. package/build/esm/types/theme.js.map +1 -0
  105. package/build/esm/utils/index.js +4 -0
  106. package/build/esm/utils/index.js.map +1 -0
  107. package/build/esm/utils/meta.js +25 -0
  108. package/build/esm/utils/meta.js.map +1 -0
  109. package/build/esm/utils/other.js +4 -0
  110. package/build/esm/utils/other.js.map +1 -0
  111. package/build/esm/utils/theme.js +155 -0
  112. package/build/esm/utils/theme.js.map +1 -0
  113. package/package.json +38 -0
package/LICENSE.txt ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) Salute Devices
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # Core themes
2
+
3
+ Пакет, реализующий методы позволяющие генерировать темы для web-платформы, на основе json-тем, лежащих в [данном репозитории](https://github.com/salute-developers/theme-converter/tree/main/themes).
@@ -0,0 +1,5 @@
1
+ import { TokenType } from '../types';
2
+ export declare const createColorTokens: (color: any, tokens?: TokenType[] | undefined, isJS?: boolean) => {
3
+ dark: string;
4
+ light: string;
5
+ };
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createColorTokens = void 0;
4
+ var plasma_tokens_utils_1 = require("@salutejs/plasma-tokens-utils");
5
+ var utils_1 = require("../utils");
6
+ var baseColor = " color: var(--text-primary);\n background-color: var(--background-primary);";
7
+ var getJSVariable = function (tokenName, description, value) {
8
+ var JSTokenName = utils_1.kebabToCamel(tokenName.replace('-', ''));
9
+ var variable = value ? "var(" + tokenName + ", " + value + ")" : "var(" + tokenName + ")";
10
+ return "/** " + description + " */\nexport const " + JSTokenName + " = '" + variable + "';\n";
11
+ };
12
+ var getCSSVariable = function (tokenName, value) {
13
+ return " " + tokenName + ": " + value + ";";
14
+ };
15
+ var getColor = function (color, tokens, mode, isJS) {
16
+ if (isJS === void 0) { isJS = false; }
17
+ return tokens
18
+ .filter(function (token) { return token.tags[0] === mode; })
19
+ .map(function (token) {
20
+ var _a = token.name.split('.'), category = _a[1], subcategory = _a[2], name = _a[3];
21
+ var tokenName = [subcategory === 'default' ? '-' : "--" + subcategory, category, name].join('-');
22
+ var value = color === null || color === void 0 ? void 0 : color[token.name];
23
+ if (!value) {
24
+ return getJSVariable(tokenName, token.description, value);
25
+ }
26
+ var restoredValue = plasma_tokens_utils_1.getRestoredColorFromPalette(value, -1);
27
+ if (isJS) {
28
+ return getJSVariable(tokenName, token.description, restoredValue);
29
+ }
30
+ return getCSSVariable(tokenName, restoredValue);
31
+ })
32
+ .join('\n');
33
+ };
34
+ var createColorTokens = function (color, tokens, isJS) {
35
+ if (isJS === void 0) { isJS = false; }
36
+ if (!(tokens === null || tokens === void 0 ? void 0 : tokens.length)) {
37
+ return {
38
+ dark: '',
39
+ light: '',
40
+ };
41
+ }
42
+ var darkColor = "" + getColor(color, tokens, 'dark', isJS) + (isJS ? '' : "\n" + baseColor);
43
+ var lightColor = "" + getColor(color, tokens, 'light', isJS) + (isJS ? '' : "\n" + baseColor);
44
+ return {
45
+ dark: darkColor,
46
+ light: lightColor,
47
+ };
48
+ };
49
+ exports.createColorTokens = createColorTokens;
50
+ //# sourceMappingURL=createColorTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createColorTokens.js","sourceRoot":"","sources":["../../../src/creators/createColorTokens.ts"],"names":[],"mappings":";;;AAAA,qEAA4E;AAG5E,kCAAwC;AAExC,IAAM,SAAS,GAAG,+EAC6B,CAAC;AAEhD,IAAM,aAAa,GAAG,UAAC,SAAiB,EAAE,WAAoB,EAAE,KAAc;IAC1E,IAAM,WAAW,GAAG,oBAAY,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC7D,IAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,SAAO,SAAS,UAAK,KAAK,MAAG,CAAC,CAAC,CAAC,SAAO,SAAS,MAAG,CAAC;IAE7E,OAAO,SAAO,WAAW,0BAAqB,WAAW,YAAO,QAAQ,SAAM,CAAC;AACnF,CAAC,CAAC;AAEF,IAAM,cAAc,GAAG,UAAC,SAAiB,EAAE,KAAa;IACpD,OAAO,OAAK,SAAS,UAAK,KAAK,MAAG,CAAC;AACvC,CAAC,CAAC;AAEF,IAAM,QAAQ,GAAG,UAAC,KAAU,EAAE,MAAmB,EAAE,IAAe,EAAE,IAAY;IAAZ,qBAAA,EAAA,YAAY;IAC5E,OAAA,MAAM;SACD,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAtB,CAAsB,CAAC;SACzC,GAAG,CAAC,UAAC,KAAK;QACD,IAAA,KAAkC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAApD,QAAQ,QAAA,EAAE,WAAW,QAAA,EAAE,IAAI,QAAyB,CAAC;QAC9D,IAAM,SAAS,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAK,WAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnG,IAAM,KAAK,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAElC,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;SAC7D;QAED,IAAM,aAAa,GAAG,iDAA2B,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;QAE7D,IAAI,IAAI,EAAE;YACN,OAAO,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;SACrE;QAED,OAAO,cAAc,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACpD,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC;AAnBf,CAmBe,CAAC;AAEb,IAAM,iBAAiB,GAAG,UAAC,KAAU,EAAE,MAAyB,EAAE,IAAY;IAAZ,qBAAA,EAAA,YAAY;IACjF,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAA,EAAE;QACjB,OAAO;YACH,IAAI,EAAE,EAAE;YACR,KAAK,EAAE,EAAE;SACZ,CAAC;KACL;IAED,IAAM,SAAS,GAAG,KAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,IAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAK,SAAW,CAAE,CAAC;IAC5F,IAAM,UAAU,GAAG,KAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,IAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAK,SAAW,CAAE,CAAC;IAE9F,OAAO;QACH,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,UAAU;KACpB,CAAC;AACN,CAAC,CAAC;AAfW,QAAA,iBAAiB,qBAe5B"}
@@ -0,0 +1,5 @@
1
+ import { TokenType } from '../types';
2
+ export declare const createGradientTokens: (gradient: any, tokens?: TokenType[] | undefined, isJS?: boolean) => {
3
+ dark: string;
4
+ light: string;
5
+ };
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createGradientTokens = void 0;
4
+ var utils_1 = require("../utils");
5
+ var getJSVariable = function (tokenName, description, value) {
6
+ var JSTokenName = utils_1.kebabToCamel(tokenName.replace('-', ''));
7
+ var variable = value ? "var(" + tokenName + ", " + value + ")" : "var(" + tokenName + ")";
8
+ return "/** " + description + " */\nexport const " + JSTokenName + " = '" + variable + "';\n";
9
+ };
10
+ var getCSSVariable = function (tokenName, value) {
11
+ return " " + tokenName + ": " + value + ";";
12
+ };
13
+ var getGradient = function (gradient, tokens, mode, isJS) {
14
+ if (isJS === void 0) { isJS = false; }
15
+ return tokens
16
+ .filter(function (token) { return token.tags[0] === mode; })
17
+ .map(function (token) {
18
+ var _a = token.name.split('.'), category = _a[1], subcategory = _a[2], name = _a[3];
19
+ var tokenName = [subcategory === 'default' ? '-' : "--" + subcategory, category, name].join('-');
20
+ var value = gradient === null || gradient === void 0 ? void 0 : gradient[token.name];
21
+ if (!value) {
22
+ return getJSVariable(tokenName, token.description);
23
+ }
24
+ if (isJS) {
25
+ return getJSVariable(tokenName, token.description, value);
26
+ }
27
+ return getCSSVariable(tokenName, value);
28
+ })
29
+ .join('\n');
30
+ };
31
+ var createGradientTokens = function (gradient, tokens, isJS) {
32
+ if (isJS === void 0) { isJS = false; }
33
+ if (!(tokens === null || tokens === void 0 ? void 0 : tokens.length)) {
34
+ return {
35
+ dark: '',
36
+ light: '',
37
+ };
38
+ }
39
+ var darkGradient = getGradient(gradient, tokens, 'dark', isJS);
40
+ var lightGradient = getGradient(gradient, tokens, 'light', isJS);
41
+ return {
42
+ dark: darkGradient,
43
+ light: lightGradient,
44
+ };
45
+ };
46
+ exports.createGradientTokens = createGradientTokens;
47
+ //# sourceMappingURL=createGradientTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createGradientTokens.js","sourceRoot":"","sources":["../../../src/creators/createGradientTokens.ts"],"names":[],"mappings":";;;AACA,kCAAwC;AAExC,IAAM,aAAa,GAAG,UAAC,SAAiB,EAAE,WAAoB,EAAE,KAAc;IAC1E,IAAM,WAAW,GAAG,oBAAY,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC7D,IAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,SAAO,SAAS,UAAK,KAAK,MAAG,CAAC,CAAC,CAAC,SAAO,SAAS,MAAG,CAAC;IAE7E,OAAO,SAAO,WAAW,0BAAqB,WAAW,YAAO,QAAQ,SAAM,CAAC;AACnF,CAAC,CAAC;AAEF,IAAM,cAAc,GAAG,UAAC,SAAiB,EAAE,KAAa;IACpD,OAAO,OAAK,SAAS,UAAK,KAAK,MAAG,CAAC;AACvC,CAAC,CAAC;AAEF,IAAM,WAAW,GAAG,UAAC,QAAa,EAAE,MAAmB,EAAE,IAAe,EAAE,IAAY;IAAZ,qBAAA,EAAA,YAAY;IAClF,OAAA,MAAM;SACD,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAtB,CAAsB,CAAC;SACzC,GAAG,CAAC,UAAC,KAAK;QACD,IAAA,KAAkC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAApD,QAAQ,QAAA,EAAE,WAAW,QAAA,EAAE,IAAI,QAAyB,CAAC;QAC9D,IAAM,SAAS,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAK,WAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnG,IAAM,KAAK,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAErC,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;SACtD;QAED,IAAI,IAAI,EAAE;YACN,OAAO,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;SAC7D;QAED,OAAO,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC;AAjBf,CAiBe,CAAC;AAEb,IAAM,oBAAoB,GAAG,UAAC,QAAa,EAAE,MAAyB,EAAE,IAAY;IAAZ,qBAAA,EAAA,YAAY;IACvF,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAA,EAAE;QACjB,OAAO;YACH,IAAI,EAAE,EAAE;YACR,KAAK,EAAE,EAAE;SACZ,CAAC;KACL;IAED,IAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACjE,IAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAEnE,OAAO;QACH,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,aAAa;KACvB,CAAC;AACN,CAAC,CAAC;AAfW,QAAA,oBAAoB,wBAe/B"}
@@ -0,0 +1,5 @@
1
+ import { TokenType } from '../types';
2
+ export declare const createShadowTokens: (shadow: any, tokens?: TokenType[] | undefined, isJS?: boolean) => {
3
+ dark: string;
4
+ light: string;
5
+ };
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createShadowTokens = void 0;
4
+ var utils_1 = require("../utils");
5
+ var getJSVariable = function (tokenName, description, value) {
6
+ var JSTokenName = utils_1.kebabToCamel("shadow-" + tokenName);
7
+ var variable = value ? "var(--shadow-" + tokenName + ", " + value + ")" : "var(--shadow-" + tokenName + ")";
8
+ return "/** " + description + " */\nexport const " + JSTokenName + " = '" + variable + "';\n";
9
+ };
10
+ var getCSSVariable = function (tokenName, value) {
11
+ return " --shadow-" + tokenName + ": " + value.join(', ') + ";";
12
+ };
13
+ var getShadow = function (shadow, tokens, direction, isJS) {
14
+ if (isJS === void 0) { isJS = false; }
15
+ return tokens
16
+ .filter(function (token) { return token.tags[0] === direction; })
17
+ .map(function (token) {
18
+ var tokenName = token.name.split('.').join('-');
19
+ var value = shadow === null || shadow === void 0 ? void 0 : shadow[token.name];
20
+ if (!value) {
21
+ return getJSVariable(tokenName, token.description);
22
+ }
23
+ if (isJS) {
24
+ return getJSVariable(tokenName, token.description, value);
25
+ }
26
+ return getCSSVariable(tokenName, value);
27
+ })
28
+ .join('\n');
29
+ };
30
+ var createShadowTokens = function (shadow, tokens, isJS) {
31
+ if (isJS === void 0) { isJS = false; }
32
+ if (!(tokens === null || tokens === void 0 ? void 0 : tokens.length)) {
33
+ return {
34
+ dark: '',
35
+ light: '',
36
+ };
37
+ }
38
+ var shadows = getShadow(shadow, tokens, 'down', isJS) + "\n" + getShadow(shadow, tokens, 'up', isJS);
39
+ return {
40
+ dark: shadows,
41
+ light: shadows,
42
+ };
43
+ };
44
+ exports.createShadowTokens = createShadowTokens;
45
+ //# sourceMappingURL=createShadowTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createShadowTokens.js","sourceRoot":"","sources":["../../../src/creators/createShadowTokens.ts"],"names":[],"mappings":";;;AACA,kCAAwC;AAExC,IAAM,aAAa,GAAG,UAAC,SAAiB,EAAE,WAAoB,EAAE,KAAc;IAC1E,IAAM,WAAW,GAAG,oBAAY,CAAC,YAAU,SAAW,CAAC,CAAC;IACxD,IAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,kBAAgB,SAAS,UAAK,KAAK,MAAG,CAAC,CAAC,CAAC,kBAAgB,SAAS,MAAG,CAAC;IAE/F,OAAO,SAAO,WAAW,0BAAqB,WAAW,YAAO,QAAQ,SAAM,CAAC;AACnF,CAAC,CAAC;AAEF,IAAM,cAAc,GAAG,UAAC,SAAiB,EAAE,KAAe;IACtD,OAAO,gBAAc,SAAS,UAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAG,CAAC;AAC3D,CAAC,CAAC;AAEF,IAAM,SAAS,GAAG,UAAC,MAAW,EAAE,MAAmB,EAAE,SAAwB,EAAE,IAAY;IAAZ,qBAAA,EAAA,YAAY;IACvF,OAAA,MAAM;SACD,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAA3B,CAA2B,CAAC;SAC9C,GAAG,CAAC,UAAC,KAAK;QACP,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,IAAM,KAAK,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;SACtD;QAED,IAAI,IAAI,EAAE;YACN,OAAO,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;SAC7D;QAED,OAAO,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC;AAhBf,CAgBe,CAAC;AAEb,IAAM,kBAAkB,GAAG,UAAC,MAAW,EAAE,MAAyB,EAAE,IAAY;IAAZ,qBAAA,EAAA,YAAY;IACnF,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAA,EAAE;QACjB,OAAO;YACH,IAAI,EAAE,EAAE;YACR,KAAK,EAAE,EAAE;SACZ,CAAC;KACL;IAED,IAAM,OAAO,GAAM,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,UAAK,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAG,CAAC;IAEvG,OAAO;QACH,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;KACjB,CAAC;AACN,CAAC,CAAC;AAdW,QAAA,kBAAkB,sBAc7B"}
@@ -0,0 +1,5 @@
1
+ import { TokenType } from '../types';
2
+ export declare const createShapeTokens: (shape: any, tokens?: TokenType[] | undefined, isJS?: boolean) => {
3
+ dark: string;
4
+ light: string;
5
+ };
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createShapeTokens = void 0;
4
+ var utils_1 = require("../utils");
5
+ var getJSVariable = function (tokenName, description, value) {
6
+ var JSTokenName = utils_1.kebabToCamel("border-radius-" + tokenName);
7
+ var variable = value ? "var(--border-radius-" + tokenName + ", " + value + ")" : "var(--border-radius-" + tokenName + ")";
8
+ return "/** " + description + " */\nexport const " + JSTokenName + " = '" + variable + "';\n";
9
+ };
10
+ var getCSSVariable = function (tokenName, value) {
11
+ return " --border-radius-" + tokenName + ": " + value + ";";
12
+ };
13
+ var getShape = function (shape, tokens, kind, isJS) {
14
+ if (isJS === void 0) { isJS = false; }
15
+ return tokens
16
+ .filter(function (token) { return token.tags[0] === kind; })
17
+ .map(function (token) {
18
+ var _a = token.name.split('.'), size = _a[1];
19
+ var value = shape === null || shape === void 0 ? void 0 : shape[token.name];
20
+ if (!value) {
21
+ return getJSVariable(size, token.description);
22
+ }
23
+ if (isJS) {
24
+ return getJSVariable(size, token.description, value);
25
+ }
26
+ return getCSSVariable(size, value);
27
+ })
28
+ .join('\n');
29
+ };
30
+ var createShapeTokens = function (shape, tokens, isJS) {
31
+ if (isJS === void 0) { isJS = false; }
32
+ if (!(tokens === null || tokens === void 0 ? void 0 : tokens.length)) {
33
+ return {
34
+ dark: '',
35
+ light: '',
36
+ };
37
+ }
38
+ var roundShape = getShape(shape, tokens, 'round', isJS);
39
+ return {
40
+ dark: roundShape,
41
+ light: roundShape,
42
+ };
43
+ };
44
+ exports.createShapeTokens = createShapeTokens;
45
+ //# sourceMappingURL=createShapeTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createShapeTokens.js","sourceRoot":"","sources":["../../../src/creators/createShapeTokens.ts"],"names":[],"mappings":";;;AACA,kCAAwC;AAExC,IAAM,aAAa,GAAG,UAAC,SAAiB,EAAE,WAAoB,EAAE,KAAc;IAC1E,IAAM,WAAW,GAAG,oBAAY,CAAC,mBAAiB,SAAW,CAAC,CAAC;IAC/D,IAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,yBAAuB,SAAS,UAAK,KAAK,MAAG,CAAC,CAAC,CAAC,yBAAuB,SAAS,MAAG,CAAC;IAE7G,OAAO,SAAO,WAAW,0BAAqB,WAAW,YAAO,QAAQ,SAAM,CAAC;AACnF,CAAC,CAAC;AAEF,IAAM,cAAc,GAAG,UAAC,SAAiB,EAAE,KAAa;IACpD,OAAO,uBAAqB,SAAS,UAAK,KAAK,MAAG,CAAC;AACvD,CAAC,CAAC;AAEF,IAAM,QAAQ,GAAG,UAAC,KAAU,EAAE,MAAmB,EAAE,IAAa,EAAE,IAAY;IAAZ,qBAAA,EAAA,YAAY;IAC1E,OAAA,MAAM;SACD,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAtB,CAAsB,CAAC;SACzC,GAAG,CAAC,UAAC,KAAK;QACD,IAAA,KAAW,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAA7B,IAAI,QAAyB,CAAC;QACvC,IAAM,KAAK,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAElC,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;SACjD;QAED,IAAI,IAAI,EAAE;YACN,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;SACxD;QAED,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC;AAhBf,CAgBe,CAAC;AAEb,IAAM,iBAAiB,GAAG,UAAC,KAAU,EAAE,MAAyB,EAAE,IAAY;IAAZ,qBAAA,EAAA,YAAY;IACjF,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAA,EAAE;QACjB,OAAO;YACH,IAAI,EAAE,EAAE;YACR,KAAK,EAAE,EAAE;SACZ,CAAC;KACL;IAED,IAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAE1D,OAAO;QACH,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KACpB,CAAC;AACN,CAAC,CAAC;AAdW,QAAA,iBAAiB,qBAc5B"}
@@ -0,0 +1,15 @@
1
+ import { TokenType } from '../types';
2
+ export declare const createTypographyTokens: (typography: any, fontFamily: any, tokens?: TokenType[] | undefined, isJS?: boolean) => {
3
+ dark: {
4
+ root: string;
5
+ screenS: string;
6
+ screenM: string;
7
+ screenL: string;
8
+ };
9
+ light: {
10
+ root: string;
11
+ screenS: string;
12
+ screenM: string;
13
+ screenL: string;
14
+ };
15
+ };
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __spreadArray = (this && this.__spreadArray) || function (to, from) {
14
+ for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
15
+ to[j] = from[i];
16
+ return to;
17
+ };
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.createTypographyTokens = void 0;
20
+ var utils_1 = require("../utils");
21
+ var fontMap = {
22
+ display: 'var(--plasma-typo-display-font-family)',
23
+ body: 'var(--plasma-typo-body-font-family)',
24
+ header: 'var(--plasma-typo-header-font-family)',
25
+ text: 'var(--plasma-typo-text-font-family)',
26
+ };
27
+ var formattedTokenName = function (nameParts) {
28
+ var nameMap = {
29
+ display: 'dspl',
30
+ text: 'text',
31
+ body: 'body',
32
+ };
33
+ var tokenName = __spreadArray([], nameParts);
34
+ tokenName[0] = nameMap[tokenName[0]];
35
+ tokenName[2] = tokenName[2] === 'bold' ? 'bold' : '';
36
+ return tokenName.filter(Boolean).join('-');
37
+ };
38
+ var geBaseFonts = function (display, body, header, text) { return " font-size: 16px;\n --plasma-typo-overflow-wrap: break-word;\n --plasma-typo-hyphens: auto;\n --plasma-typo-display-font-family: '" + display + "', sans-serif;\n --plasma-typo-body-font-family: '" + body + "', sans-serif;\n --plasma-typo-header-font-family: '" + header + "', sans-serif;\n --plasma-typo-text-font-family: '" + text + "', sans-serif;"; };
39
+ var getTypographyBase = function (typography, fontFamily, tokens, size) {
40
+ var fonts = tokens
41
+ .filter(function (token) { return token.tags[0] === size; })
42
+ .reduce(function (acc, token) {
43
+ var _a;
44
+ var _b = token.name.split('.'), rest = _b.slice(1);
45
+ var kind = rest[0];
46
+ var value = typography === null || typography === void 0 ? void 0 : typography[token.name];
47
+ if (acc[kind] || !value) {
48
+ return acc;
49
+ }
50
+ var fontFamilyRef = fontFamily === null || fontFamily === void 0 ? void 0 : fontFamily[value.fontFamilyRef.split('.')[1]].name;
51
+ return __assign((_a = {}, _a[kind] = fontFamilyRef, _a), acc);
52
+ }, {});
53
+ return geBaseFonts(fonts.display, fonts.body, fonts.header, fonts.text);
54
+ };
55
+ var getTypographyRoot = function (typography, tokens, size) {
56
+ return tokens
57
+ .filter(function (token) { return token.tags[0] === size; })
58
+ .map(function (token) {
59
+ var _a = token.name.split('.'), rest = _a.slice(1);
60
+ var tokenName = formattedTokenName(rest);
61
+ var value = typography === null || typography === void 0 ? void 0 : typography[token.name];
62
+ if (!value) {
63
+ return '';
64
+ }
65
+ var fontFamily = fontMap[value.fontFamilyRef.split('.')[1]];
66
+ var letterSpacing = value.letterSpacing, fontStyle = value.fontStyle;
67
+ return " --plasma-typo-" + tokenName + "-font-family: " + fontFamily + ";\n --plasma-typo-" + tokenName + "-letter-spacing: " + letterSpacing + ";\n --plasma-typo-" + tokenName + "-font-style: " + fontStyle + ";";
68
+ })
69
+ .join('\n');
70
+ };
71
+ var getJSVariable = function (tokenName, description) {
72
+ // INFO: Приведение размера Xs+ в верхний регистр для сохранения обратной совместимости
73
+ var JSTokenName = utils_1.kebabToCamel(tokenName).replace(/(Xx*s)/gm, function (_, group) { return group.toUpperCase(); });
74
+ return "/** " + description + " */\nexport const " + JSTokenName + " = {\n fontFamily: 'var(--plasma-typo-" + tokenName + "-font-family)',\n fontSize: 'var(--plasma-typo-" + tokenName + "-font-size)',\n fontStyle: 'var(--plasma-typo-" + tokenName + "-font-style)',\n fontWeight: 'var(--plasma-typo-" + tokenName + "-font-weight)',\n letterSpacing: 'var(--plasma-typo-" + tokenName + "-letter-spacing)',\n lineHeight: 'var(--plasma-typo-" + tokenName + "-line-height)',\n};\n";
75
+ };
76
+ var getCSSVariable = function (tokenName, value) {
77
+ return " --plasma-typo-" + tokenName + "-font-size: " + value.fontSize + ";\n --plasma-typo-" + tokenName + "-font-weight: " + value.fontWeight + ";\n --plasma-typo-" + tokenName + "-line-height: " + value.lineHeight + ";";
78
+ };
79
+ var getResponsiveTypography = function (typography, tokens, size, isJS) {
80
+ if (isJS === void 0) { isJS = false; }
81
+ return tokens
82
+ .filter(function (token) { return token.tags[0] === size; })
83
+ .map(function (token) {
84
+ var _a = token.name.split('.'), rest = _a.slice(1);
85
+ var tokenName = formattedTokenName(rest);
86
+ var value = typography === null || typography === void 0 ? void 0 : typography[token.name];
87
+ if (isJS || !value) {
88
+ return getJSVariable(tokenName, token.description);
89
+ }
90
+ return getCSSVariable(tokenName, value);
91
+ })
92
+ .join('\n');
93
+ };
94
+ var createTypographyTokens = function (typography, fontFamily, tokens, isJS) {
95
+ if (isJS === void 0) { isJS = false; }
96
+ if (!(tokens === null || tokens === void 0 ? void 0 : tokens.length)) {
97
+ return {
98
+ dark: {
99
+ root: '',
100
+ screenS: '',
101
+ screenM: '',
102
+ screenL: '',
103
+ },
104
+ light: {
105
+ root: '',
106
+ screenS: '',
107
+ screenM: '',
108
+ screenL: '',
109
+ },
110
+ };
111
+ }
112
+ var rootTypography = getTypographyBase(typography, fontFamily, tokens, 'screen-s') + "\n" + getTypographyRoot(typography, tokens, 'screen-s');
113
+ var screenSTypography = getResponsiveTypography(typography, tokens, 'screen-s', isJS);
114
+ var screenMTypography = getResponsiveTypography(typography, tokens, 'screen-m', isJS);
115
+ var screenLTypography = getResponsiveTypography(typography, tokens, 'screen-l', isJS);
116
+ var data = {
117
+ root: rootTypography,
118
+ screenS: screenSTypography,
119
+ screenM: screenMTypography,
120
+ screenL: screenLTypography,
121
+ };
122
+ return {
123
+ dark: data,
124
+ light: data,
125
+ };
126
+ };
127
+ exports.createTypographyTokens = createTypographyTokens;
128
+ //# sourceMappingURL=createTypographyTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTypographyTokens.js","sourceRoot":"","sources":["../../../src/creators/createTypographyTokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { createColorTokens } from './createColorTokens';
2
+ export { createGradientTokens } from './createGradientTokens';
3
+ export { createShadowTokens } from './createShadowTokens';
4
+ export { createShapeTokens } from './createShapeTokens';
5
+ export { createTypographyTokens } from './createTypographyTokens';
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createTypographyTokens = exports.createShapeTokens = exports.createShadowTokens = exports.createGradientTokens = exports.createColorTokens = void 0;
4
+ var createColorTokens_1 = require("./createColorTokens");
5
+ Object.defineProperty(exports, "createColorTokens", { enumerable: true, get: function () { return createColorTokens_1.createColorTokens; } });
6
+ var createGradientTokens_1 = require("./createGradientTokens");
7
+ Object.defineProperty(exports, "createGradientTokens", { enumerable: true, get: function () { return createGradientTokens_1.createGradientTokens; } });
8
+ var createShadowTokens_1 = require("./createShadowTokens");
9
+ Object.defineProperty(exports, "createShadowTokens", { enumerable: true, get: function () { return createShadowTokens_1.createShadowTokens; } });
10
+ var createShapeTokens_1 = require("./createShapeTokens");
11
+ Object.defineProperty(exports, "createShapeTokens", { enumerable: true, get: function () { return createShapeTokens_1.createShapeTokens; } });
12
+ var createTypographyTokens_1 = require("./createTypographyTokens");
13
+ Object.defineProperty(exports, "createTypographyTokens", { enumerable: true, get: function () { return createTypographyTokens_1.createTypographyTokens; } });
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/creators/index.ts"],"names":[],"mappings":";;;AAAA,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA;AAC3B,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,mEAAkE;AAAzD,gIAAA,sBAAsB,OAAA"}
@@ -0,0 +1,2 @@
1
+ import { ThemeRequest } from './types';
2
+ export declare const generate: (themes: ThemeRequest[]) => Promise<void>;
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.generate = void 0;
43
+ var fs_1 = __importDefault(require("fs"));
44
+ var creators_1 = require("./creators");
45
+ var generators_1 = require("./generators");
46
+ var utils_1 = require("./utils");
47
+ var generate = function (themes) { return __awaiter(void 0, void 0, void 0, function () {
48
+ var themeDir, isJS, _i, themes_1, theme, themeSource, meta, variations, metaGrouped, colorCSSVariables, colorJSVariables, gradientCSSVariables, gradientJSVariables, shapeCSSVariables, shapeJSVariables, shadowCSSVariables, shadowJSVariables, typographyCSSVariables, typographyJSVariables, cssVariables, themeDefault, metaGroupedDefault, colorDefaultJSVariables, gradientDefaultJSVariables, shapeDefaultJSVariables, shadowDefaultJSVariables, typographyDefaultJSVariables;
49
+ return __generator(this, function (_a) {
50
+ switch (_a.label) {
51
+ case 0:
52
+ themeDir = 'src';
53
+ fs_1.default.existsSync(themeDir) || fs_1.default.mkdirSync(themeDir);
54
+ isJS = true;
55
+ _i = 0, themes_1 = themes;
56
+ _a.label = 1;
57
+ case 1:
58
+ if (!(_i < themes_1.length)) return [3 /*break*/, 4];
59
+ theme = themes_1[_i];
60
+ return [4 /*yield*/, utils_1.readTheme(theme.name, theme.version)];
61
+ case 2:
62
+ themeSource = _a.sent();
63
+ meta = themeSource.meta, variations = themeSource.variations;
64
+ metaGrouped = utils_1.getMetaGrouped(themeSource.meta);
65
+ colorCSSVariables = creators_1.createColorTokens(variations.color, metaGrouped.color);
66
+ colorJSVariables = creators_1.createColorTokens(variations.color, metaGrouped.color, isJS);
67
+ gradientCSSVariables = creators_1.createGradientTokens(variations.gradient, metaGrouped.gradient);
68
+ gradientJSVariables = creators_1.createGradientTokens(variations.gradient, metaGrouped.gradient, isJS);
69
+ shapeCSSVariables = creators_1.createShapeTokens(variations.shape, metaGrouped.shape);
70
+ shapeJSVariables = creators_1.createShapeTokens(variations.shape, metaGrouped.shape, isJS);
71
+ shadowCSSVariables = creators_1.createShadowTokens(variations.shadow, metaGrouped.shadow);
72
+ shadowJSVariables = creators_1.createShadowTokens(variations.shadow, metaGrouped.shadow, isJS);
73
+ typographyCSSVariables = creators_1.createTypographyTokens(variations.typography, variations.fontFamily, metaGrouped.typography);
74
+ typographyJSVariables = creators_1.createTypographyTokens(variations.typography, variations.fontFamily, metaGrouped.typography, true);
75
+ cssVariables = {
76
+ dark: {
77
+ colorTokens: colorCSSVariables.dark,
78
+ gradientTokens: gradientCSSVariables.dark,
79
+ shadowTokens: shadowCSSVariables.dark,
80
+ shapeTokens: shapeCSSVariables.dark,
81
+ typographyTokens: typographyCSSVariables.dark,
82
+ },
83
+ light: {
84
+ colorTokens: colorCSSVariables.light,
85
+ gradientTokens: gradientCSSVariables.light,
86
+ shadowTokens: shadowCSSVariables.light,
87
+ shapeTokens: shapeCSSVariables.light,
88
+ typographyTokens: typographyCSSVariables.light,
89
+ },
90
+ };
91
+ generators_1.generateThemes(themeDir, meta.name, cssVariables);
92
+ generators_1.generateCSSThemes(themeDir, meta.name, cssVariables);
93
+ generators_1.generateCSSModuleThemes(themeDir, meta.name, cssVariables);
94
+ generators_1.generateTokens(themeDir, meta.name, {
95
+ colorTokens: colorJSVariables.dark,
96
+ gradientTokens: gradientJSVariables.dark,
97
+ shadowTokens: shadowJSVariables.dark,
98
+ shapeTokens: shapeJSVariables.dark,
99
+ typographyTokens: typographyJSVariables.dark,
100
+ });
101
+ _a.label = 3;
102
+ case 3:
103
+ _i++;
104
+ return [3 /*break*/, 1];
105
+ case 4: return [4 /*yield*/, utils_1.readTheme('default', 'latest')];
106
+ case 5:
107
+ themeDefault = _a.sent();
108
+ metaGroupedDefault = utils_1.getMetaGrouped(themeDefault.meta);
109
+ colorDefaultJSVariables = creators_1.createColorTokens(undefined, metaGroupedDefault.color, isJS).dark;
110
+ gradientDefaultJSVariables = creators_1.createGradientTokens(undefined, metaGroupedDefault.gradient, isJS).dark;
111
+ shapeDefaultJSVariables = creators_1.createShapeTokens(undefined, metaGroupedDefault.shape, isJS).dark;
112
+ shadowDefaultJSVariables = creators_1.createShadowTokens(undefined, metaGroupedDefault.shadow, isJS).dark;
113
+ typographyDefaultJSVariables = creators_1.createTypographyTokens(undefined, undefined, metaGroupedDefault.typography, true).dark;
114
+ generators_1.generateDefaultTokens(themeDir, {
115
+ colorTokens: colorDefaultJSVariables,
116
+ gradientTokens: gradientDefaultJSVariables,
117
+ shadowTokens: shadowDefaultJSVariables,
118
+ shapeTokens: shapeDefaultJSVariables,
119
+ typographyTokens: typographyDefaultJSVariables,
120
+ });
121
+ generators_1.generateRootIndex(themeDir);
122
+ return [2 /*return*/];
123
+ }
124
+ });
125
+ }); };
126
+ exports.generate = generate;
127
+ //# sourceMappingURL=generate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/generate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { ThemeContent } from '../types';
2
+ export declare const generateCSSModuleThemes: (srcDir: string, themeName: string, themeContent: ThemeContent) => void;