From 432de61e55cbb74c14d293be7aac6b8e24a6b4f1 Mon Sep 17 00:00:00 2001 From: Neretin Artem Date: Tue, 5 Mar 2024 13:56:46 +0500 Subject: [PATCH] fix(plasma-tokens-*): Add `new` directory for for new tokens --- packages/plasma-tokens-b2b/.gitignore | 1 + packages/plasma-tokens-b2b/generate.ts | 24 ++++++++++++++++++++++-- packages/plasma-tokens-b2b/package.json | 3 ++- packages/plasma-tokens-b2c/.gitignore | 1 + packages/plasma-tokens-b2c/generate.ts | 24 ++++++++++++++++++++++-- packages/plasma-tokens-b2c/package.json | 3 ++- packages/plasma-tokens-web/.gitignore | 1 + packages/plasma-tokens-web/generate.ts | 24 ++++++++++++++++++++++-- packages/plasma-tokens-web/package.json | 3 ++- 9 files changed, 75 insertions(+), 9 deletions(-) diff --git a/packages/plasma-tokens-b2b/.gitignore b/packages/plasma-tokens-b2b/.gitignore index 8acdc88d79..dbcaf68292 100644 --- a/packages/plasma-tokens-b2b/.gitignore +++ b/packages/plasma-tokens-b2b/.gitignore @@ -1,4 +1,5 @@ /colors +/new /es /src /typo diff --git a/packages/plasma-tokens-b2b/generate.ts b/packages/plasma-tokens-b2b/generate.ts index bc1663c4cb..c0b95b7e00 100644 --- a/packages/plasma-tokens-b2b/generate.ts +++ b/packages/plasma-tokens-b2b/generate.ts @@ -13,6 +13,7 @@ import { generateTypoSystem, generateThemeJSON, generateThemeFromData, + generateTokenSet, } from '@salutejs/plasma-tokens-utils'; import type { TypoSystem } from '@salutejs/plasma-tokens-utils'; @@ -21,6 +22,7 @@ import type { TypographyTypes } from './data'; const OUT_DIR = 'src'; const COLORS_DIR = path.join(OUT_DIR, 'colors'); +const NEW_DIR = path.join(OUT_DIR, 'new'); const THEMES_DIR = path.join(OUT_DIR, 'themes'); const THEMES_VALUES_DIR = path.join(OUT_DIR, 'themesValues'); const TYPOGRAPHY_DIR = path.join(OUT_DIR, 'typography'); @@ -37,9 +39,27 @@ fs.existsSync(OUT_DIR) || fs.mkdirSync(OUT_DIR); // Генерация цветов writeGeneratedToFS(COLORS_DIR, [ // Файл с токенами CSS-Variables (с дефолтными значениями) - { file: 'index.ts', content: generateTokens({ ...colorThemes.light, ...fallbackThemeLight }, 'css', 'colors') }, + { + file: 'index.ts', + content: generateTokens(colorThemes.light, 'css', 'colors'), + }, // Файл с токенами (JS-переменными) для инъекции значения напрямую - { file: 'values.ts', content: generateTokens({ ...colorThemes.light, ...fallbackThemeLight }) }, + { file: 'values.ts', content: generateTokens(colorThemes.light) }, +]); + +// Генерация новых цветов +writeGeneratedToFS(NEW_DIR, [ + // Файл с токенами CSS-Variables (с дефолтными значениями) + { + file: 'index.ts', + content: generateTokenSet({ + tokens: fallbackThemeLight, + type: 'css', + mode: 'color', + }), + }, + // Файл с токенами (JS-переменными) для инъекции значения напрямую + { file: 'values.ts', content: generateTokens(fallbackThemeLight) }, ]); // Генерация и запись файлов тем для создания глобальных стилей diff --git a/packages/plasma-tokens-b2b/package.json b/packages/plasma-tokens-b2b/package.json index f5fddb575d..b6b427e492 100644 --- a/packages/plasma-tokens-b2b/package.json +++ b/packages/plasma-tokens-b2b/package.json @@ -20,7 +20,7 @@ }, "scripts": { "prepare": "npm run build", - "prebuild": "rm -rf ./colors ./es ./src ./themes ./themesValues ./typo ./typography ./typographyValues ./index.* ./theme.json", + "prebuild": "rm -rf ./colors ./new ./es ./src ./themes ./themesValues ./typo ./typography ./typographyValues ./index.* ./theme.json", "build": "npm run build:ds && npm run build:tokens", "prebuild:tokens": "npm run generate", "build:tokens": "npm run build:cjs && npm run build:esm", @@ -36,6 +36,7 @@ }, "files": [ "colors", + "new", "es", "themes", "themesValues", diff --git a/packages/plasma-tokens-b2c/.gitignore b/packages/plasma-tokens-b2c/.gitignore index 8acdc88d79..dbcaf68292 100644 --- a/packages/plasma-tokens-b2c/.gitignore +++ b/packages/plasma-tokens-b2c/.gitignore @@ -1,4 +1,5 @@ /colors +/new /es /src /typo diff --git a/packages/plasma-tokens-b2c/generate.ts b/packages/plasma-tokens-b2c/generate.ts index bc1663c4cb..c0b95b7e00 100644 --- a/packages/plasma-tokens-b2c/generate.ts +++ b/packages/plasma-tokens-b2c/generate.ts @@ -13,6 +13,7 @@ import { generateTypoSystem, generateThemeJSON, generateThemeFromData, + generateTokenSet, } from '@salutejs/plasma-tokens-utils'; import type { TypoSystem } from '@salutejs/plasma-tokens-utils'; @@ -21,6 +22,7 @@ import type { TypographyTypes } from './data'; const OUT_DIR = 'src'; const COLORS_DIR = path.join(OUT_DIR, 'colors'); +const NEW_DIR = path.join(OUT_DIR, 'new'); const THEMES_DIR = path.join(OUT_DIR, 'themes'); const THEMES_VALUES_DIR = path.join(OUT_DIR, 'themesValues'); const TYPOGRAPHY_DIR = path.join(OUT_DIR, 'typography'); @@ -37,9 +39,27 @@ fs.existsSync(OUT_DIR) || fs.mkdirSync(OUT_DIR); // Генерация цветов writeGeneratedToFS(COLORS_DIR, [ // Файл с токенами CSS-Variables (с дефолтными значениями) - { file: 'index.ts', content: generateTokens({ ...colorThemes.light, ...fallbackThemeLight }, 'css', 'colors') }, + { + file: 'index.ts', + content: generateTokens(colorThemes.light, 'css', 'colors'), + }, // Файл с токенами (JS-переменными) для инъекции значения напрямую - { file: 'values.ts', content: generateTokens({ ...colorThemes.light, ...fallbackThemeLight }) }, + { file: 'values.ts', content: generateTokens(colorThemes.light) }, +]); + +// Генерация новых цветов +writeGeneratedToFS(NEW_DIR, [ + // Файл с токенами CSS-Variables (с дефолтными значениями) + { + file: 'index.ts', + content: generateTokenSet({ + tokens: fallbackThemeLight, + type: 'css', + mode: 'color', + }), + }, + // Файл с токенами (JS-переменными) для инъекции значения напрямую + { file: 'values.ts', content: generateTokens(fallbackThemeLight) }, ]); // Генерация и запись файлов тем для создания глобальных стилей diff --git a/packages/plasma-tokens-b2c/package.json b/packages/plasma-tokens-b2c/package.json index 04bd505f79..aeb40075cf 100644 --- a/packages/plasma-tokens-b2c/package.json +++ b/packages/plasma-tokens-b2c/package.json @@ -20,7 +20,7 @@ }, "scripts": { "prepare": "npm run build", - "prebuild": "rm -rf ./colors ./es ./src ./themes ./themesValues ./typo ./typography ./typographyValues ./index.* ./theme.json", + "prebuild": "rm -rf ./colors ./new ./es ./src ./themes ./themesValues ./typo ./typography ./typographyValues ./index.* ./theme.json", "build": "npm run build:ds && npm run build:tokens", "prebuild:tokens": "npm run generate", "build:tokens": "npm run build:cjs && npm run build:esm", @@ -36,6 +36,7 @@ }, "files": [ "colors", + "new", "es", "themes", "themesValues", diff --git a/packages/plasma-tokens-web/.gitignore b/packages/plasma-tokens-web/.gitignore index 8acdc88d79..dbcaf68292 100644 --- a/packages/plasma-tokens-web/.gitignore +++ b/packages/plasma-tokens-web/.gitignore @@ -1,4 +1,5 @@ /colors +/new /es /src /typo diff --git a/packages/plasma-tokens-web/generate.ts b/packages/plasma-tokens-web/generate.ts index 7f897341f2..0e3ac52ac9 100644 --- a/packages/plasma-tokens-web/generate.ts +++ b/packages/plasma-tokens-web/generate.ts @@ -13,6 +13,7 @@ import { generateTypoSystem, generateThemeJSON, generateThemeFromData, + generateTokenSet, } from '@salutejs/plasma-tokens-utils'; import type { TypoSystem } from '@salutejs/plasma-tokens-utils'; @@ -21,6 +22,7 @@ import type { TypographyTypes } from './data'; const OUT_DIR = 'src'; const COLORS_DIR = path.join(OUT_DIR, 'colors'); +const NEW_DIR = path.join(OUT_DIR, 'new'); const THEMES_DIR = path.join(OUT_DIR, 'themes'); const THEMES_VALUES_DIR = path.join(OUT_DIR, 'themesValues'); const TYPOGRAPHY_DIR = path.join(OUT_DIR, 'typography'); @@ -37,9 +39,27 @@ fs.existsSync(OUT_DIR) || fs.mkdirSync(OUT_DIR); // Генерация цветов writeGeneratedToFS(COLORS_DIR, [ // Файл с токенами CSS-Variables (с дефолтными значениями) - { file: 'index.ts', content: generateTokens({ ...colorThemes.light, ...fallbackThemeLight }, 'css', 'colors') }, + { + file: 'index.ts', + content: generateTokens(colorThemes.light, 'css', 'colors'), + }, // Файл с токенами (JS-переменными) для инъекции значения напрямую - { file: 'values.ts', content: generateTokens({ ...colorThemes.light, ...fallbackThemeLight }) }, + { file: 'values.ts', content: generateTokens(colorThemes.light) }, +]); + +// Генерация новых цветов +writeGeneratedToFS(NEW_DIR, [ + // Файл с токенами CSS-Variables (с дефолтными значениями) + { + file: 'index.ts', + content: generateTokenSet({ + tokens: fallbackThemeLight, + type: 'css', + mode: 'color', + }), + }, + // Файл с токенами (JS-переменными) для инъекции значения напрямую + { file: 'values.ts', content: generateTokens(fallbackThemeLight) }, ]); // Генерация и запись файлов тем для создания глобальных стилей diff --git a/packages/plasma-tokens-web/package.json b/packages/plasma-tokens-web/package.json index 16b4343fd4..ee1dc23046 100644 --- a/packages/plasma-tokens-web/package.json +++ b/packages/plasma-tokens-web/package.json @@ -20,7 +20,7 @@ }, "scripts": { "prepare": "npm run build", - "prebuild": "rm -rf ./colors ./es ./src ./themes ./themesValues ./typo ./typography ./typographyValues ./index.* ./theme.json", + "prebuild": "rm -rf ./colors ./new ./es ./src ./themes ./themesValues ./typo ./typography ./typographyValues ./index.* ./theme.json", "build": "npm run build:ds && npm run build:tokens", "prebuild:tokens": "npm run generate", "build:tokens": "npm run build:cjs && npm run build:esm", @@ -36,6 +36,7 @@ }, "files": [ "colors", + "new", "es", "themes", "themesValues",