From ca2a8afa3d3993458a52bba62fd199825b94fc81 Mon Sep 17 00:00:00 2001 From: Nevo David Date: Fri, 23 May 2025 20:07:50 +0700 Subject: [PATCH] feat: compression --- apps/frontend/src/app/(app)/layout.tsx | 1 + .../src/components/media/new.uploader.tsx | 17 ++++++++++------- .../src/helpers/variable.context.tsx | 2 ++ 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/apps/frontend/src/app/(app)/layout.tsx b/apps/frontend/src/app/(app)/layout.tsx index 091e70d2..e40404b0 100644 --- a/apps/frontend/src/app/(app)/layout.tsx +++ b/apps/frontend/src/app/(app)/layout.tsx @@ -48,6 +48,7 @@ export default async function AppLayout({ children }: { children: ReactNode }) { telegramBotName={process.env.TELEGRAM_BOT_NAME!} neynarClientId={process.env.NEYNAR_CLIENT_ID!} isSecured={!process.env.NOT_SECURED} + disableImageCompression={!!process.env.DISABLE_IMAGE_COMPRESSION} > diff --git a/apps/frontend/src/components/media/new.uploader.tsx b/apps/frontend/src/components/media/new.uploader.tsx index ee6b09b9..c8deda50 100644 --- a/apps/frontend/src/components/media/new.uploader.tsx +++ b/apps/frontend/src/components/media/new.uploader.tsx @@ -63,7 +63,8 @@ export function useUppyUploader(props: { onUploadSuccess: (result: UploadResult) => void; allowedFileTypes: string; }) { - const { storageProvider, backendUrl } = useVariables(); + const { storageProvider, backendUrl, disableImageCompression } = + useVariables(); const { onUploadSuccess, allowedFileTypes } = props; const fetch = useFetch(); @@ -83,12 +84,14 @@ export function useUppyUploader(props: { backendUrl ); uppy2.use(plugin, options); - uppy2.use(Compressor, { - convertTypes: ['image/jpeg'], - maxWidth: 1000, - maxHeight: 1000, - quality: 1, - }); + if (!disableImageCompression) { + uppy2.use(Compressor, { + convertTypes: ['image/jpeg'], + maxWidth: 1000, + maxHeight: 1000, + quality: 1, + }); + } // Set additional metadata when a file is added uppy2.on('file-added', (file) => { uppy2.setFileMeta(file.id, { diff --git a/libraries/react-shared-libraries/src/helpers/variable.context.tsx b/libraries/react-shared-libraries/src/helpers/variable.context.tsx index a6716c2e..7edfdcc2 100644 --- a/libraries/react-shared-libraries/src/helpers/variable.context.tsx +++ b/libraries/react-shared-libraries/src/helpers/variable.context.tsx @@ -18,6 +18,7 @@ interface VariableContextInterface { telegramBotName: string; neynarClientId: string; isSecured: boolean; + disableImageCompression: boolean; tolt: string; } const VariableContext = createContext({ @@ -36,6 +37,7 @@ const VariableContext = createContext({ telegramBotName: '', facebookPixel: '', neynarClientId: '', + disableImageCompression: false, tolt: '', } as VariableContextInterface);