@wordpress/upload-media
Version:
Core media upload logic.
41 lines (38 loc) • 1.26 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.validateMimeTypeForUser = validateMimeTypeForUser;
var _i18n = require("@wordpress/i18n");
var _uploadError = require("./upload-error");
var _getMimeTypesArray = require("./get-mime-types-array");
/**
* WordPress dependencies
*/
/**
* Internal dependencies
*/
/**
* Verifies if the user is allowed to upload this mime type.
*
* @param file File object.
* @param wpAllowedMimeTypes List of allowed mime types and file extensions.
*/
function validateMimeTypeForUser(file, wpAllowedMimeTypes) {
// Allowed types for the current WP_User.
const allowedMimeTypesForUser = (0, _getMimeTypesArray.getMimeTypesArray)(wpAllowedMimeTypes);
if (!allowedMimeTypesForUser) {
return;
}
const isAllowedMimeTypeForUser = allowedMimeTypesForUser.includes(file.type);
if (file.type && !isAllowedMimeTypeForUser) {
throw new _uploadError.UploadError({
code: 'MIME_TYPE_NOT_ALLOWED_FOR_USER',
message: (0, _i18n.sprintf)(
// translators: %s: file name.
(0, _i18n.__)('%s: Sorry, you are not allowed to upload this file type.'), file.name),
file
});
}
}
//# sourceMappingURL=validate-mime-type-for-user.js.map
;