/
dedaMazai
/
TestServer
Обзор
Документация
Войти
/
dedaMazai
/
TestServer
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
scripts/createSlice/templates/createModel.js
46 строк
2 KB
Andrey Chipizubov
fix
23 апр 2023, 17:32
23 апр 2023, 17:32
cc424e9
Код
Авторство
О чём код?
const fs = require('fs/promises'); const resolveRoot = require('../resolveRoot'); const reduxSliceTemplate = require('./reduxSliceTemplate'); const schemaTypeTemplate = require('./schemaTypeTemplate'); module.exports = async (layer, sliceName) => { const resolveModelPath = (...segments) => resolveRoot('src', layer, sliceName, 'model', ...segments); const createModelStructure = async () => { try { await fs.mkdir(resolveModelPath()); await fs.mkdir(resolveModelPath('types')); await fs.mkdir(resolveModelPath('slices')); await fs.mkdir(resolveModelPath('selectors')); await fs.mkdir(resolveModelPath('services')); } catch (e) { console.log(`Не удалось создать model сегмент для слайса ${sliceName}`, e); } }; const createReduxSlice = async () => { try { await fs.writeFile( resolveModelPath('slices', `${sliceName}Slice.ts`), reduxSliceTemplate(sliceName), ); } catch (e) { console.log('Не удалось создать редакс слайс', e); } }; const createSchemaType = async () => { try { await fs.writeFile( resolveModelPath('types', `${sliceName}Schema.ts`), schemaTypeTemplate(sliceName), ); } catch (e) { console.log('Не удалось создать тип схемы стейта', e); } }; await createModelStructure(); await createReduxSlice(); await createSchemaType(); };