fastify-multer
Version:
Fastify plugin for handling `multipart/form-data`.
38 lines (33 loc) • 1.03 kB
text/typescript
export interface ErrorMessages {
LIMIT_PART_COUNT: 'Too many parts'
LIMIT_FILE_SIZE: 'File too large'
LIMIT_FILE_COUNT: 'Too many files'
LIMIT_FIELD_KEY: 'Field name too long'
LIMIT_FIELD_VALUE: 'Field value too long'
LIMIT_FIELD_COUNT: 'Too many fields'
LIMIT_UNEXPECTED_FILE: 'Unexpected field'
}
const errorMessages: ErrorMessages = {
LIMIT_PART_COUNT: 'Too many parts',
LIMIT_FILE_SIZE: 'File too large',
LIMIT_FILE_COUNT: 'Too many files',
LIMIT_FIELD_KEY: 'Field name too long',
LIMIT_FIELD_VALUE: 'Field value too long',
LIMIT_FIELD_COUNT: 'Too many fields',
LIMIT_UNEXPECTED_FILE: 'Unexpected field',
}
class MulterError extends Error {
code: string
field: string | undefined = undefined
constructor(code: keyof ErrorMessages, field?: string) {
super()
this.name = this.constructor.name
this.message = errorMessages[code]
this.code = code
if (field) {
this.field = field
}
Error.captureStackTrace(this, this.constructor)
}
}
export default MulterError