/
sdds
/
plasma
Обзор
Документация
Войти
/
sdds
/
plasma
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
dev
.github/get-lerna-scope.js
38 строк
2 KB
Neretin Artem
feat(core-themes): Rename `data-themes` to `core-themes`
04 июл 2024, 17:03
04 июл 2024, 17:03
bd72854
Код
Авторство
О чём код?
const META = require('./meta'); module.exports = () => { const { PACKAGE, PROCESSED_DATA } = process.env; // INFO: результат команды `lerna la --since` - список пакетов в которых были изменения // или они связаны в графе зависимостей lerna const processedData = JSON.parse(PROCESSED_DATA); // INFO: Список пакетов которые нужно поставить если они есть в списке processedData const packageScope = META[PACKAGE].scope || []; const packageTheme = META[PACKAGE].themes; // INFO: Список обязательных пакетов без которых не будет работать сборка // INFO: Например для корректной сборки storybook в `plasma-asdk` нужно ставить plasma-core // INFO: Это workaround - временно позволяет обойти ошибки в инфре const requiredDeps = META[PACKAGE].required || []; // INFO: Пакет с документацией, например `plasma-web-docs` или `sdds-serv-docs` const packageDocs = `${PACKAGE}-docs`; const computedScope = processedData.filter((dep) => [...packageScope, packageDocs].includes(dep)); const scope = new Set([...computedScope, ...requiredDeps, PACKAGE]); if (scope.has(packageDocs)) { scope.add('plasma-docs-ui'); } if (scope.has(packageTheme)) { scope.add('core-themes'); scope.add('plasma-typo'); } const scopeList = Array.from(scope); return scopeList.length === 1 ? `@salutejs/${scopeList[0]}` : `@salutejs/{${scopeList.join(',')}}`; };