### What Introduces an additional `mimeType` validation based on the actual file data to ensure the uploaded file matches the allowed `mimeTypes` defined in the upload config. ### Why? The current validation relies on the file extension, which can be easily manipulated. For example, if only PDFs are allowed, a JPEG renamed to `image.pdf` would bypass the check and be accepted. This change prevents such cases by verifying the true MIME type. ### How? Performs a secondary validation using the file’s binary data (buffer), providing a more reliable MIME type check. Fixes #12905
40 lines
2.1 KiB
TypeScript
40 lines
2.1 KiB
TypeScript
export const usersSlug = 'users'
|
|
export const mediaSlug = 'media'
|
|
export const relationSlug = 'relation'
|
|
export const audioSlug = 'audio'
|
|
export const enlargeSlug = 'enlarge'
|
|
export const withoutEnlargeSlug = 'without-enlarge'
|
|
export const focalNoSizesSlug = 'focal-no-sizes'
|
|
export const focalOnlySlug = 'focal-only'
|
|
export const imageSizesOnlySlug = 'image-sizes-only'
|
|
export const reduceSlug = 'reduce'
|
|
export const relationPreviewSlug = 'relation-preview'
|
|
export const mediaWithRelationPreviewSlug = 'media-with-relation-preview'
|
|
export const mediaWithoutRelationPreviewSlug = 'media-without-relation-preview'
|
|
export const mediaWithoutCacheTagsSlug = 'media-without-cache-tags'
|
|
export const adminUploadControlSlug = 'admin-upload-control'
|
|
export const adminThumbnailFunctionSlug = 'admin-thumbnail-function'
|
|
export const adminThumbnailWithSearchQueries = 'admin-thumbnail-with-search-queries'
|
|
export const adminThumbnailSizeSlug = 'admin-thumbnail-size'
|
|
export const unstoredMediaSlug = 'unstored-media'
|
|
export const versionSlug = 'versions'
|
|
export const animatedTypeMedia = 'animated-type-media'
|
|
export const customUploadFieldSlug = 'custom-upload-field'
|
|
export const hideFileInputOnCreateSlug = 'hide-file-input-on-create'
|
|
export const withMetadataSlug = 'with-meta-data'
|
|
export const withoutMetadataSlug = 'without-meta-data'
|
|
export const withOnlyJPEGMetadataSlug = 'with-only-jpeg-meta-data'
|
|
export const customFileNameMediaSlug = 'custom-file-name-media'
|
|
export const allowListMediaSlug = 'allow-list-media'
|
|
export const restrictFileTypesSlug = 'restrict-file-types'
|
|
export const noRestrictFileTypesSlug = 'no-restrict-file-types'
|
|
export const noRestrictFileMimeTypesSlug = 'no-restrict-file-mime-types'
|
|
export const skipSafeFetchMediaSlug = 'skip-safe-fetch-media'
|
|
export const skipAllowListSafeFetchMediaSlug = 'skip-allow-list-safe-fetch-media'
|
|
export const listViewPreviewSlug = 'list-view-preview'
|
|
export const threeDimensionalSlug = 'three-dimensional'
|
|
export const constructorOptionsSlug = 'constructor-options'
|
|
export const bulkUploadsSlug = 'bulk-uploads'
|
|
|
|
export const fileMimeTypeSlug = 'file-mime-type'
|