UNPKG

csmall-theme

Version:

自用资源,不负责对外的使用解答

51 lines (45 loc) 1.33 kB
const fs = require('fs'); const path = require('path'); module.exports = function(root){ const themeFile = path.resolve(root, './src/env_config/themes.js'); const config = { exists: false, default: '', defaultItem: { path: 'default', key: '' }, keys: [], list: [], getItemByKey(key){ let find = null; this.list.map(item => { if(item.key === key){ find = item; } }); return find; } }; if(fs.existsSync(themeFile)){ const themes = require(themeFile); if(themes.list && themes.list.length){ config.exists = true; if(themes.default){ config.default = themes.default; }else{ config.default = themes.list[0].key; } themes.list.forEach((v) => { config.keys.push(v.key); }); config.list = themes.list; config.defaultItem = config.getItemByKey(config.default); if(config.defaultItem === null){ console.warn('Themes default key: ' + config.default + ' ill!'); process.exit(); } } } return config; };