aboutsummaryrefslogtreecommitdiff
path: root/src/containers/PollCreation/useS3Preupload.ts
diff options
context:
space:
mode:
authoreug-vs <eug-vs@keemail.me>2020-08-22 14:16:36 +0300
committereug-vs <eug-vs@keemail.me>2020-08-22 14:16:36 +0300
commit66e1dfd1b726aa465969d0b7d028db8b0dfa1d0e (patch)
tree5ca16294d065cb03aad357f65f2995c842ab8df4 /src/containers/PollCreation/useS3Preupload.ts
parent668c9f4841e7118b98bb31d8e68640689be99830 (diff)
downloadwhich-ui-66e1dfd1b726aa465969d0b7d028db8b0dfa1d0e.tar.gz
fix: resolve eslint errors
Diffstat (limited to 'src/containers/PollCreation/useS3Preupload.ts')
-rw-r--r--src/containers/PollCreation/useS3Preupload.ts35
1 files changed, 12 insertions, 23 deletions
diff --git a/src/containers/PollCreation/useS3Preupload.ts b/src/containers/PollCreation/useS3Preupload.ts
index ef3a408..0e2a8c4 100644
--- a/src/containers/PollCreation/useS3Preupload.ts
+++ b/src/containers/PollCreation/useS3Preupload.ts
@@ -1,39 +1,28 @@
-import { useState, useCallback, useMemo } from 'react';
+import { useState, useCallback } from 'react';
import uploadFileToS3 from '../../utils/uploadFileToS3';
-
interface Hook {
- setValue: (value: File | string | undefined) => void;
- isReady: boolean;
+ file: File | string | undefined;
+ setFile: (value: File | string | undefined) => void;
resolve: () => Promise<string>;
progress: number;
}
export default (): Hook => {
- const [url, setUrl] = useState<string>();
- const [file, setFile] = useState<File>();
+ const [file, setFile] = useState<File | string>();
const [progress, setProgress] = useState<number>(0);
- const isReady = useMemo(() => Boolean(file || url), [file, url]);
-
- const setValue: Hook['setValue'] = useCallback(value => {
- if (value instanceof File) {
- setFile(value);
- setUrl(undefined);
- } else {
- setUrl(value);
- setFile(undefined);
- }
- }, [setUrl, setFile]);
-
const resolve = useCallback(async (quality?: number): Promise<string> => {
- if (file) return uploadFileToS3(file, quality, setProgress);
- return url || '';
- }, [file, url]);
+ // Indicate start
+ setProgress(0.01);
+
+ if (file instanceof File) return uploadFileToS3(file, quality, setProgress);
+ return file || '';
+ }, [file]);
return {
- setValue,
- isReady,
+ file,
+ setFile,
resolve,
progress
};