text: const { notEmpty } = require('../utils.js');
  
  module.exports = {
    description: 'generate a view',
    prompts: [
      {
        type: 'input',
        name: 'name',
        message: 'view name please',
        validate: notEmpty('name')
      },
      {
        type: 'checkbox',
        name: 'blocks',
        message: 'Blocks:',
        choices: [
          {
            name: '<template>',
            value: 'template',
            checked: true
          },
          {
            name: '<script>',
            value: 'script',
            checked: true
          },
          {
            name: 'style',
            value: 'style',
            checked: true
          }
        ],
        validate(value) {
          if (
            value.indexOf('script') === -1 &&
            value.indexOf('template') === -1
          ) {
            return 'View require at least a <script> or <template> tag.';
          }
          return true;
        }
      }
    ],
    actions: data => {
      const name = '{{name}}';
      const actions = [
        {
          type: 'add',
          path: `src/views/${name}/index.vue`,
          templateFile: 'plop-templates/view/index.hbs',
          data: {
            name: name,
            template: data.blocks.includes('template'),
            script: data.blocks.includes('script'),
            style: data.blocks.includes('style')
          }
        }
      ];
  
      return actions;
    }
  };
  