@nestjs/common
Version:
Nest - modern, fast, powerful node.js web framework (@common)
28 lines (27 loc) • 818 B
JavaScript
import { FileTypeValidator, } from './file-type.validator.js';
import { MaxFileSizeValidator, } from './max-file-size.validator.js';
import { ParseFilePipe } from './parse-file.pipe.js';
/**
* @publicApi
*/
export class ParseFilePipeBuilder {
validators = [];
addMaxSizeValidator(options) {
return this.addValidator(new MaxFileSizeValidator(options));
}
addFileTypeValidator(options) {
return this.addValidator(new FileTypeValidator(options));
}
addValidator(validator) {
this.validators.push(validator);
return this;
}
build(additionalOptions) {
const parseFilePipe = new ParseFilePipe({
...additionalOptions,
validators: this.validators,
});
this.validators = [];
return parseFilePipe;
}
}