app.useGlobalInterceptors(
new FormdataInterceptor({
customFileName(context, originalFileName) {
return `${Date.now()}-${originalFileName}`;
},
fileSaver: new DefaultFileSaver({
prefixDirectory: "./storage/public",
customDirectory(context, originalDirectory) {
return originalDirectory;
},
}),
})
)
import { IsLocale, IsNotEmpty, IsString } from "class-validator";
import {
FileData,
HasMimeType,
IsFileData,
MaxFileSize,
MimeType,
MinFileSize,
} from "nestjs-formdata-interceptor";
export class CreateLanguageDto {
@IsString()
name: string;
@IsLocale()
locale: string;
@IsFileData()
@IsNotEmpty()
@HasMimeType([MimeType["image/jpeg"], MimeType["image/png"], MimeType["image/jpg"]])
@MaxFileSize(5 * 1024 * 1024)
// single file
icon: FileData;
}
TypeError: Cannot read properties of undefined (reading 'endsWith')
at <anonymous> (/usr/src/app/node_modules/nestjs-formdata-interceptor/src/validators/hasMimeType.decorator.ts:45:23)
at Array.some (<anonymous>)
at HasMimeTypeConstraint.matchesWildcard (/usr/src/app/node_modules/nestjs-formdata-interceptor/src/validators/hasMimeType.decorator.ts:44:21)
at HasMimeTypeConstraint.validate (/usr/src/app/node_modules/nestjs-formdata-interceptor/src/validators/hasMimeType.decorator.ts:33:19)
at <anonymous> (/usr/src/app/node_modules/src/validation/ValidationExecutor.ts:271:68)
at Array.forEach (<anonymous>)
at <anonymous> (/usr/src/app/node_modules/src/validation/ValidationExecutor.ts:253:82)
at Array.forEach (<anonymous>)
at ValidationExecutor.customValidations (/usr/src/app/node_modules/src/validation/ValidationExecutor.ts:252:15)
at ValidationExecutor.performValidations (/usr/src/app/node_modules/src/validation/ValidationExecutor.ts:212:10)
[Nest] 1109 - 12/30/2024, 10:10:57 AM ERROR [ExceptionsFilter] TypeError: Cannot read properties of undefined (reading 'endsWith')