|
@@ -1,62 +0,0 @@
|
|
|
-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
|
|
|
- }
|
|
|
-}
|