2 declare(strict_types = 1);
36 'allowedMimeTypes' => [
null,
'Allowed mime types (using */* IANA media types)',
'array',
true]
52 $mimeType = $resource->getOriginalResource()->getMimeType();
53 $fileExtension = $resource->getOriginalResource()->getExtension();
54 } elseif ($resource instanceof
File) {
55 $mimeType = $resource->getMimeType();
56 $fileExtension = $resource->getExtension();
58 $mimeType = $resource->getMimeType();
59 $fileExtension = $resource->getExtension();
63 'validation.error.1471708997',
71 $allowedMimeTypes = $this->options[
'allowedMimeTypes'];
72 if (!in_array($mimeType, $allowedMimeTypes,
true)) {
75 'validation.error.1471708998',
87 $assumedMimesTypeOfFileExtension = (
new MimeTypeDetector())->getMimeTypesForFileExtension($fileExtension);
88 if (empty(array_intersect($allowedMimeTypes, $assumedMimesTypeOfFileExtension))) {
91 'validation.error.1613126216',
109 if (!is_array($this->options[
'allowedMimeTypes']) || $this->options[
'allowedMimeTypes'] === []) {