/
dedaMazai
/
TestServer
Обзор
Документация
Войти
/
dedaMazai
/
TestServer
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
scripts/createSlice/templates/createUI.js
42 строки
2 KB
Andrey Chipizubov
fix
23 апр 2023, 17:32
23 апр 2023, 17:32
cc424e9
Код
Авторство
О чём код?
const fs = require('fs/promises'); const resolveRoot = require('../resolveRoot'); const firstCharUpperCase = require('../firstCharUpperCase'); const componentTemplate = require('./componentTemplate'); const storyTemplate = require('./storyTemplate'); const styleTemplate = require('./styleTemplate'); module.exports = async (layer, sliceName) => { const resolveUIPath = (...segments) => resolveRoot('src', layer, sliceName, 'ui', ...segments); const createUIDir = async () => { try { await fs.mkdir(resolveUIPath()); } catch (e) { console.log('Не удалось создать UI директорию'); } }; const createComponent = async () => { try { const componentName = firstCharUpperCase(sliceName); await fs.mkdir(resolveUIPath(componentName)); await fs.writeFile( resolveUIPath(componentName, `${componentName}.tsx`), componentTemplate(componentName), ); await fs.writeFile( resolveUIPath(componentName, `${componentName}.stories.tsx`), storyTemplate(layer, componentName), ); await fs.writeFile( resolveUIPath(componentName, `${componentName}.module.scss`), styleTemplate(componentName), ); } catch (e) { console.log('Не удалось создать компонент'); } }; await createUIDir(); await createComponent(); };