UNPKG

@aprilnea/nest-file-fastify

Version:

fastify-multipart decorators for Nest.js

27 lines 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FilesInterceptor = void 0; const rxjs_1 = require("rxjs"); const common_1 = require("@nestjs/common"); const request_1 = require("../multipart/request"); const options_1 = require("../multipart/options"); const multiple_files_1 = require("../multipart/handlers/multiple-files"); function FilesInterceptor(fieldname, maxCount = 1, options) { class MixinInterceptor { constructor() { this.options = (0, options_1.transformUploadOptions)(options); } async intercept(context, next) { const ctx = context.switchToHttp(); const req = (0, request_1.getMultipartRequest)(ctx); const { body, files, remove } = await (0, multiple_files_1.handleMultipartMultipleFiles)(req, fieldname, maxCount, this.options); req.body = body; req.storageFiles = files; return next.handle().pipe((0, rxjs_1.tap)(remove)); } } const Interceptor = (0, common_1.mixin)(MixinInterceptor); return Interceptor; } exports.FilesInterceptor = FilesInterceptor; //# sourceMappingURL=files-interceptor.js.map