| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 | const { notEmpty } = require('../utils.js')module.exports = {  description: 'generate store',  prompts: [{    type: 'input',    name: 'name',    message: 'store name please',    validate: notEmpty('name')  },  {    type: 'checkbox',    name: 'blocks',    message: 'Blocks:',    choices: [{      name: 'state',      value: 'state',      checked: true    },    {      name: 'mutations',      value: 'mutations',      checked: true    },    {      name: 'actions',      value: 'actions',      checked: true    }    ],    validate(value) {      if (!value.includes('state') || !value.includes('mutations')) {        return 'store require at least state and mutations'      }      return true    }  }  ],  actions(data) {    const name = '{{name}}'    const { blocks } = data    const options = ['state', 'mutations']    const joinFlag = `,  `    if (blocks.length === 3) {      options.push('actions')    }    const actions = [{      type: 'add',      path: `src/store/modules/${name}.js`,      templateFile: 'plop-templates/store/index.hbs',      data: {        options: options.join(joinFlag),        state: blocks.includes('state'),        mutations: blocks.includes('mutations'),        actions: blocks.includes('actions')      }    }]    return actions  }}
 |