UNPKG

reactizzen

Version:

Creates single react component folder structure with multiple flags, upgraded version of not maintained anymore create-react-folder-component library.

133 lines (130 loc) 3.54 kB
const config = require('./config'); const getOptions = () => [ { name: 'typescript', flags: '--typescript', description: 'Creates Typescript component and files', defaultValue: config.hasFlag('typescript'), }, { name: 'nocss', flags: '--nocss', description: 'No css file', defaultValue: config.hasFlag('nocss'), }, { name: 'stylesext', flags: '--stylesext', description: 'Adds Component.style.(js|ts) file', defaultValue: config.hasFlag('stylesext'), }, { name: 'graphql', flags: '--graphql', description: 'Adds Component.graphql file to component folder', defaultValue: config.hasFlag('graphql'), }, { name: 'notest', flags: '--notest', description: 'No test file', defaultValue: config.hasFlag('notest'), }, { name: 'cssmodules', flags: '--cssmodules', description: 'Creates css/less/scss file with .module extensions. Example component.module.css', defaultValue: config.hasFlag('cssmodules'), }, { name: 'cssstyles', flags: '--cssstyles', description: 'Creates css/less/scss file with .styles extensions. Example component.styles.css', defaultValue: config.hasFlag('cssstyles'), }, { name: 'reactnative', flags: '--reactnative', description: 'Creates React Native components', defaultValue: config.hasFlag('reactnative'), }, { name: 'createindex', flags: '--createindex', description: 'Creates index.js file for multple component imports', defaultValue: config.hasFlag('createindex'), }, { name: 'namedexports', flags: '-x, --namedexports', description: 'Creates files using named exports', defaultValue: config.hasFlag('namedexports'), }, { name: 'functional', flags: '-f, --functional', description: 'Creates React stateless functional component', defaultValue: config.hasFlag('functional'), }, { name: 'jsx', flags: '-j, --jsx', description: 'Creates the component file with .jsx extension', defaultValue: config.hasFlag('jsx'), }, { name: 'less', flags: '-l, --less', description: 'Adds .less file to component', defaultValue: config.hasFlag('less'), }, { name: 'scss', flags: '-s, --scss', description: 'Adds .scss file to component', defaultValue: config.hasFlag('scss'), }, { name: 'proptypes', flags: '-p, --proptypes', description: 'Adds prop-types to component', defaultValue: config.hasFlag('proptypes'), }, { name: 'uppercase', flags: '-u, --uppercase', description: 'Component files start on uppercase letter', defaultValue: config.hasFlag('uppercase'), }, { name: 'default', flags: '-d, --default', description: 'Uses a default configuration if available', defaultValue: config.hasFlag('default'), }, { name: 'stories', flags: '-sb, --stories', description: 'Add Story file to component', defaultValue: config.hasFlag('stories'), }, { name: 'nosemi', flags: '-ns, --nosemi', description: 'No semicolons', defaultValue: config.hasFlag('nosemi'), }, { name: 'singlequote', flags: '-sq, --singlequote', description: 'Formats output files with single quotes', defaultValue: config.hasFlag('singlequote'), }, { name: 'output', flags: '-o, --output <directory>', description: 'The root directory to create components in', defaultValue: config.getValue('output', ''), }, ]; module.exports = getOptions;