easy-component-generator
Version:
    • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getFiles = void 0;
const Templates_1 = require("../Templates");
const getFiles = (type, name, needStorybook = false) => {
const baseFiles = ['UI', 'Component', 'Block'].includes(type)
? [
{ name: `${name}.tsx`, content: (0, Templates_1.getComponentTemplate)(name) },
{ name: `${name}Types.ts`, content: (0, Templates_1.getPropsTemplate)(name) },
{ name: 'index.ts', content: `export * from './${name}';\n` },
]
: type === 'Type' ? [
{ name: `${name.replace(/(Types?)$/, '')}Type.ts`, content: (0, Templates_1.getTypesTemplate)(name) },
{ name: 'index.ts', content: `export * from './${name.replace(/(Types?)$/, '')}Type';\n` }
] : type === 'Hook' ? [
{ name: `${name.startsWith('use') || name.startsWith('Use') ? name : 'use' + name}.ts`, content: (0, Templates_1.getHookTemplate)(name) },
{ name: 'index.ts', content: `export * from './${name.startsWith('use') || name.startsWith('Use') ? name : 'use' + name}';\n` }
] : [
{ name: `${name}.ts`, content: (0, Templates_1.getFileTemplate)(name) },
{ name: 'index.ts', content: `export * from './${name}';\n` }
];
if (needStorybook && ['UI', 'Component', 'Block'].includes(type)) {
baseFiles.push({
name: `${name}.stories.tsx`,
content: (0, Templates_1.getStorybookTemplate)(name)
});
}
return baseFiles;
};
exports.getFiles = getFiles;