@mongez/gnz
Version:
Generator Z, the next generation of scaffolding tools.
34 lines (30 loc) • 1.05 kB
JavaScript
import'os';import {format}from'../../../utils/prettifier.js';async function gnWarlockRestful(options) {
//
const { className, model: modelName, modelPath, repository: repositoryName, repositoryPath, exportName: objectName, } = options;
const imports = [
'import { Restful, type RouteResource, v } from "@warlock.js/core";',
`import { type ${modelName} } from "${modelPath}";`,
`import { ${repositoryName} } from "${repositoryPath}";`,
];
const content = `
${imports.join("\n")}
class ${className} extends Restful<${modelName}> implements RouteResource {
/**
* {@inheritDoc}
*/
protected repository = ${repositoryName};
/**
* {@inheritDoc}
*/
public validation: RouteResource["validation"] = {
all: {
schema: v.object({
// add your validation rules here
}),
},
};
}
export const ${objectName} = new ${className}();
`;
return await format.typescript(content);
}export{gnWarlockRestful};//# sourceMappingURL=template.js.map