From 15707f8344dc2434c62a1b786be0d2030d4cce65 Mon Sep 17 00:00:00 2001 From: Shailesh Pandit Date: Thu, 4 Nov 2021 17:25:49 +0530 Subject: [PATCH] WIP: hacks to ignore dom access from web worker --- src/services/downloadManager.ts | 8 ++--- .../machineLearning/machineLearningService.ts | 2 +- src/services/upload/thumbnailService.ts | 30 +++++++++---------- src/utils/strings/vernacularStrings.ts | 4 +-- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/services/downloadManager.ts b/src/services/downloadManager.ts index 77b8f656d..7ba53ca04 100644 --- a/src/services/downloadManager.ts +++ b/src/services/downloadManager.ts @@ -10,15 +10,15 @@ class DownloadManager { private fileObjectUrlPromise = new Map>(); private thumbnailObjectUrlPromise = new Map>(); - public async getPreview(file: File) { + public async getPreview(file: File, tokenOverride?: string) { try { - const token = getToken(); + const token = tokenOverride || getToken(); if (!token) { return null; } const thumbnailCache = await caches.open('thumbs'); const cacheResp: Response = await thumbnailCache.match( - file.id.toString() + '/' + file.id.toString() ); if (cacheResp) { return URL.createObjectURL(await cacheResp.blob()); @@ -47,7 +47,7 @@ class DownloadManager { const thumb = await this.getThumbnail(token, file); try { await thumbnailCache.put( - file.id.toString(), + '/' + file.id.toString(), new Response(new Blob([thumb])) ); } catch (e) { diff --git a/src/services/machineLearning/machineLearningService.ts b/src/services/machineLearning/machineLearningService.ts index 7e49ff6e1..1e2f34a10 100644 --- a/src/services/machineLearning/machineLearningService.ts +++ b/src/services/machineLearning/machineLearningService.ts @@ -75,7 +75,7 @@ class MlService { throw Error('Token needed by ml service to sync file'); } - const fileUrl = await DownloadManager.getPreview(file); + const fileUrl = await DownloadManager.getPreview(file, token); console.log('[MLService] Got thumbnail: ', file.id.toString(), fileUrl); const thumbFile = await fetch(fileUrl); diff --git a/src/services/upload/thumbnailService.ts b/src/services/upload/thumbnailService.ts index f73d177d1..6fe2675b6 100644 --- a/src/services/upload/thumbnailService.ts +++ b/src/services/upload/thumbnailService.ts @@ -2,7 +2,7 @@ import { FILE_TYPE } from 'services/fileService'; import { CustomError, errorWithContext } from 'utils/common/errorUtil'; import { logError } from 'utils/sentry'; import { BLACK_THUMBNAIL_BASE64 } from '../../../public/images/black-thumbnail-b64'; -import FFmpegService from 'services/ffmpegService'; +// import FFmpegService from 'services/ffmpegService'; import { convertToHumanReadable } from 'utils/billingUtil'; import { fileIsHEIC } from 'utils/file'; import { FileTypeInfo } from './readFileService'; @@ -34,20 +34,20 @@ export async function generateThumbnail( const isHEIC = fileIsHEIC(fileTypeInfo.exactType); canvas = await generateImageThumbnail(worker, file, isHEIC); } else { - try { - const thumb = await FFmpegService.generateThumbnail(file); - const dummyImageFile = new File([thumb], file.name); - canvas = await generateImageThumbnail( - worker, - dummyImageFile, - false - ); - } catch (e) { - logError(e, 'failed to generate thumbnail using ffmpeg', { - type: fileTypeInfo.exactType, - }); - canvas = await generateVideoThumbnail(file); - } + // try { + // const thumb = await FFmpegService.generateThumbnail(file); + // const dummyImageFile = new File([thumb], file.name); + // canvas = await generateImageThumbnail( + // worker, + // dummyImageFile, + // false + // ); + // } catch (e) { + // logError(e, 'failed to generate thumbnail using ffmpeg', { + // type: fileTypeInfo.exactType, + // }); + canvas = await generateVideoThumbnail(file); + // } } const thumbnailBlob = await thumbnailCanvasToBlob(canvas); thumbnail = await worker.getUint8ArrayView(thumbnailBlob); diff --git a/src/utils/strings/vernacularStrings.ts b/src/utils/strings/vernacularStrings.ts index f7cf8e31f..6257b8476 100644 --- a/src/utils/strings/vernacularStrings.ts +++ b/src/utils/strings/vernacularStrings.ts @@ -1,4 +1,4 @@ -import { runningInBrowser } from 'utils/common'; +// import { runningInBrowser } from 'utils/common'; import englishConstants from './englishConstants'; /** Enums of supported locale */ @@ -64,7 +64,7 @@ const globalConstants: VernacularConstants = { * @param localConstants */ export function getConstantValue(localConstants?: VernacularConstants) { - const searchParam = runningInBrowser() ? window.location.search : ''; + const searchParam = ''; const query = new URLSearchParams(searchParam); const currLocale = getLocale(query.get('lang'));