+
+ {{ t('page.quest.upload_title') }}
+
+ {{ t('page.quest.upload_compress') }}
+
+
+ {{ (uploadProgress * 100).toFixed(0) + '%' }}
+
+
URL.createObjectURL(file);
+
+export async function compressImage(file: File) {
+ return new Promise((resolve, reject) => {
+ if (!file) {
+ reject();
+ return;
+ }
+ new Compressor(file, {
+ quality: 0.8,
+ error(error) {
+ console.error(error);
+ reject(error);
+ },
+ success(result) {
+ resolve(result);
+ }
+ });
+ }).catch(() => file);
+}