UNPKG

@wgoo/cli

Version:

Wgoo Cli 是一个 React 组件库构建工具,通过 Wgoo Cli 可以快速搭建一套功能完备的 React 组件库。

51 lines (40 loc) 1.16 kB
const { join } = require('path'); const { camelize, pascalize, getComponents, smartOutputFile, normalizePath, } = require('../common'); const { SRC_DIR, getPackageJson } = require('../common/constant'); function genImports(components, options) { return components .map((name) => { let path = join(SRC_DIR, name); if (options.pathResolver) { path = options.pathResolver(path); } return `import ${name.startsWith('$') ? camelize(name) : pascalize(name)} from '${normalizePath(path)}';`; }) .join('\n'); } function genExports(names) { return names.map((name) => `${name}`).join(',\n '); } function genPackageEntry(options) { const names = getComponents(); const version = process.env.PACKAGE_VERSION || getPackageJson().version; const components = names.map(name => name.startsWith('$') ? camelize(name) : camelize(pascalize(name))); const content = `${genImports(names, options)} const version = '${version}'; export { version, ${genExports(components)} }; export default { version }; `; smartOutputFile(options.outputPath, content); } module.exports = { genPackageEntry };