INNER CODE UNIT · TypeScript
autoValidateBody
rodyherrera/Quantum · packages/api/vite.config.ts:6
const autoValidateBody = (): Plugin => ({
name: 'quantum:auto-validate-body',
enforce: 'pre',
transform(code, id){
if(!/src\/modules\/[^/?]+\/controllers\/[^/?]+\.ts(\?.*)?$/.test(id)) return null;
if(!code.includes('@Body()')) return null;
let out = code.replace(
/@Body\(\)(\s+)(\w+):(\s*)(\w+)/g,
'@Body(typia.misc.createValidatePrune<$4>())$1$2:$3$4'
);
if(!/from 'typia'/.test(out)) out += "\nimport typia from 'typia';\n";
return { code: out, map: null };
}
});
export default defineConfig({
plugins: [