iPhone иногда сохраняет JPEG с расширением .HEIC. Библиотека heic2any
бросала ERR_USER вместо того, чтобы пропустить файл. Теперь при ошибке
"already browser readable" файл передаётся как есть с корректным расширением.
});
})
.catch(function (x) {
+ // Файл с расширением .HEIC, но внутри уже JPEG/PNG (iPhone)
+ // — пропускаем конвертацию, просто переименовываем
+ if (x.code === 1 && /already browser readable/i.test(x.message)) {
+ var ext = (x.message.match(/image\/(jpeg|png|webp)/i) || [null, 'jpeg'])[1];
+ return new File([file], file.name + "." + ext, {
+ type: "image/" + ext,
+ lastModified: new Date().getTime()
+ });
+ }
alert("Ошибка конвертации HEIC: " + file.name + ". " + x.code + " - " + x.message);
return null;
})