mirror of
https://github.com/fergalmoran/onearmy-community-platform.git
synced 2025-12-22 09:37:54 +00:00
fix: remove image compression from uploads
This commit is contained in:
@@ -78,7 +78,6 @@
|
|||||||
"@uppy/core": "^2.1.4",
|
"@uppy/core": "^2.1.4",
|
||||||
"@uppy/dashboard": "^2.1.3",
|
"@uppy/dashboard": "^2.1.3",
|
||||||
"@uppy/react": "^2.1.2",
|
"@uppy/react": "^2.1.2",
|
||||||
"browser-image-compression": "^1.0.15",
|
|
||||||
"countries-list": "^2.6.1",
|
"countries-list": "^2.6.1",
|
||||||
"date-fns": "^1.30.1",
|
"date-fns": "^1.30.1",
|
||||||
"debounce": "^1.2.0",
|
"debounce": "^1.2.0",
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
import React, { useEffect, useState } from 'react'
|
import { useEffect, useState } from 'react'
|
||||||
import imageCompression from 'browser-image-compression'
|
|
||||||
import { Flex } from 'theme-ui'
|
import { Flex } from 'theme-ui'
|
||||||
|
|
||||||
import type { IConvertedFileMeta } from 'src/types'
|
import type { IConvertedFileMeta } from 'src/types'
|
||||||
@@ -10,17 +9,10 @@ interface IProps {
|
|||||||
onImgClicked: (meta: IConvertedFileMeta) => void
|
onImgClicked: (meta: IConvertedFileMeta) => void
|
||||||
}
|
}
|
||||||
interface IState {
|
interface IState {
|
||||||
compressionOptions: Parameters<typeof imageCompression>[1]
|
|
||||||
convertedFile?: IConvertedFileMeta
|
convertedFile?: IConvertedFileMeta
|
||||||
openLightbox?: boolean
|
openLightbox?: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
const imageSizes = {
|
|
||||||
low: 640,
|
|
||||||
normal: 1280,
|
|
||||||
high: 1920,
|
|
||||||
}
|
|
||||||
|
|
||||||
const _generateFileMeta = (c: File) => {
|
const _generateFileMeta = (c: File) => {
|
||||||
const meta: IConvertedFileMeta = {
|
const meta: IConvertedFileMeta = {
|
||||||
name: addTimestampToFileName(c.name),
|
name: addTimestampToFileName(c.name),
|
||||||
@@ -32,12 +24,7 @@ const _generateFileMeta = (c: File) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const ImageConverter = (props: IProps) => {
|
export const ImageConverter = (props: IProps) => {
|
||||||
const [state, setState] = useState<IState>({
|
const [state, setState] = useState<IState>({})
|
||||||
compressionOptions: {
|
|
||||||
maxWidthOrHeight: imageSizes.normal,
|
|
||||||
initialQuality: 0.75,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
const { convertedFile } = state
|
const { convertedFile } = state
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@@ -51,11 +38,8 @@ export const ImageConverter = (props: IProps) => {
|
|||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
const compressFiles = async (file: File) => {
|
const compressFiles = async (file: File) => {
|
||||||
const { compressionOptions } = state
|
|
||||||
|
|
||||||
// by default compress takes an array and gives back an array. We only want to handle a single image
|
// by default compress takes an array and gives back an array. We only want to handle a single image
|
||||||
const conversion: File = await imageCompression(file, compressionOptions)
|
const convertedMeta = _generateFileMeta(file)
|
||||||
const convertedMeta = _generateFileMeta(conversion)
|
|
||||||
setState((state) => ({
|
setState((state) => ({
|
||||||
...state,
|
...state,
|
||||||
convertedFile: convertedMeta,
|
convertedFile: convertedMeta,
|
||||||
|
|||||||
13
yarn.lock
13
yarn.lock
@@ -14363,16 +14363,6 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"browser-image-compression@npm:^1.0.15":
|
|
||||||
version: 1.0.17
|
|
||||||
resolution: "browser-image-compression@npm:1.0.17"
|
|
||||||
dependencies:
|
|
||||||
core-js: ^3.16.1
|
|
||||||
uzip: 0.20201231.0
|
|
||||||
checksum: 200d6731486d45aebc96f3251aca19d269a9b8d7721e1a1eb31f573c03415a070ac936dd108a6e698ff2252a001ffa3bcf80f3c30b6b9bdde425bd684640bab4
|
|
||||||
languageName: node
|
|
||||||
linkType: hard
|
|
||||||
|
|
||||||
"browser-process-hrtime@npm:^1.0.0":
|
"browser-process-hrtime@npm:^1.0.0":
|
||||||
version: 1.0.0
|
version: 1.0.0
|
||||||
resolution: "browser-process-hrtime@npm:1.0.0"
|
resolution: "browser-process-hrtime@npm:1.0.0"
|
||||||
@@ -15896,7 +15886,7 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"core-js@npm:^3.16.1, core-js@npm:^3.19.2, core-js@npm:^3.23.3":
|
"core-js@npm:^3.19.2, core-js@npm:^3.23.3":
|
||||||
version: 3.28.0
|
version: 3.28.0
|
||||||
resolution: "core-js@npm:3.28.0"
|
resolution: "core-js@npm:3.28.0"
|
||||||
checksum: 3155fd0ec16d0089106b145e9595280a4ea4bde0d7ff26aa14364cd4f1c203baf6620c3025acd284f363d08b9f21104101692766ca9a36ffeee7307bdf3e1881
|
checksum: 3155fd0ec16d0089106b145e9595280a4ea4bde0d7ff26aa14364cd4f1c203baf6620c3025acd284f363d08b9f21104101692766ca9a36ffeee7307bdf3e1881
|
||||||
@@ -28040,7 +28030,6 @@ __metadata:
|
|||||||
"@uppy/dashboard": ^2.1.3
|
"@uppy/dashboard": ^2.1.3
|
||||||
"@uppy/react": ^2.1.2
|
"@uppy/react": ^2.1.2
|
||||||
all-contributors-cli: ^6.20.0
|
all-contributors-cli: ^6.20.0
|
||||||
browser-image-compression: ^1.0.15
|
|
||||||
buffer: ^6.0.3
|
buffer: ^6.0.3
|
||||||
chai-subset: ^1.6.0
|
chai-subset: ^1.6.0
|
||||||
commitizen: ^4.2.4
|
commitizen: ^4.2.4
|
||||||
|
|||||||
Reference in New Issue
Block a user