@baseplate-dev/core-generators
Version:
Core generators for Baseplate
36 lines • 1.5 kB
JavaScript
import { createGenerator, createGeneratorTask } from '@baseplate-dev/sync';
import { z } from 'zod';
import { typescriptFileProvider } from '../typescript/index.js';
import { NODE_TS_UTILS_GENERATED } from './generated/index.js';
const descriptorSchema = z.object({});
export const tsUtilsGenerator = createGenerator({
name: 'node/ts-utils',
generatorFileUrl: import.meta.url,
descriptorSchema,
buildTasks: () => ({
paths: NODE_TS_UTILS_GENERATED.paths.task,
imports: NODE_TS_UTILS_GENERATED.imports.task,
main: createGeneratorTask({
dependencies: {
typescriptFile: typescriptFileProvider,
paths: NODE_TS_UTILS_GENERATED.paths.provider,
},
run({ typescriptFile, paths }) {
return {
build: (builder) => {
for (const key of Object.keys(NODE_TS_UTILS_GENERATED.templates)) {
const template = NODE_TS_UTILS_GENERATED.templates[key];
typescriptFile.addLazyTemplateFile({
template,
destination: paths[key],
generatorInfo: builder.generatorInfo,
generatorPaths: paths,
});
}
},
};
},
}),
}),
});
//# sourceMappingURL=ts-utils.generator.js.map