UNPKG

@captive/plop-config

Version:
40 lines (39 loc) 1.44 kB
import * as Variables from './template/variables.js'; import * as Component from './template/Component.tsx.template.js'; import * as Test from './template/Component.spec.template.js'; import * as Index from './template/index.template.js'; import { componentNamePrompt } from '../../prompt/index.js'; export const reactComponentGenerator = (options) => ({ name: 'react-component', generator: { prompts: [ { name: Variables.componentName, ...componentNamePrompt, }, ], actions: () => [ { path: `${options.componentPath}/{{ ${Variables.componentName} }}/{{ ${Variables.componentName} }}.tsx`, data: { ...options, }, template: Component.template, type: 'add', }, { path: `${options.componentPath}/{{ ${Variables.componentName} }}/{{ ${Variables.componentName} }}.spec.ts`, template: Test.template, type: 'add', data: { importTest: options.test === 'vitest' ? 'vitest' : '@jest/globals', }, }, { path: `${options.componentPath}/{{ ${Variables.componentName} }}/index.ts`, template: Index.template, type: 'add', }, ], }, });