Ref fin
This commit is contained in:
@@ -30,12 +30,18 @@ import {
|
||||
import { useFormik } from "formik";
|
||||
import { t } from "i18next";
|
||||
import { GalleryContext } from "pages/gallery";
|
||||
import React, { useContext, useState } from "react";
|
||||
import React, { useContext, useEffect, useState } from "react";
|
||||
|
||||
type FixCreationTimeProps = ModalVisibilityProps & {
|
||||
/**
|
||||
* The {@link EnteFile}s whose creation time the user wishes to modify.
|
||||
*/
|
||||
files: EnteFile[];
|
||||
};
|
||||
|
||||
/**
|
||||
* A dialog allowing the user to modify the creation time of selected files.
|
||||
*/
|
||||
export const FixCreationTime: React.FC<FixCreationTimeProps> = ({
|
||||
open,
|
||||
onClose,
|
||||
@@ -46,6 +52,11 @@ export const FixCreationTime: React.FC<FixCreationTimeProps> = ({
|
||||
|
||||
const galleryContext = useContext(GalleryContext);
|
||||
|
||||
useEffect(() => {
|
||||
// Reset the step whenever the dialog is reopened.
|
||||
if (open) setStep(undefined);
|
||||
}, [open]);
|
||||
|
||||
const onSubmit = async (values: FormValues) => {
|
||||
setStep("running");
|
||||
const completedWithErrors = await updateFiles(
|
||||
|
||||
@@ -428,9 +428,6 @@ export default function Gallery() {
|
||||
useEffect(() => {
|
||||
collectionNamerAttributes && setCollectionNamerView(true);
|
||||
}, [collectionNamerAttributes]);
|
||||
useEffect(() => {
|
||||
fixCreationTimeAttributes && setFixCreationTimeView(true);
|
||||
}, [fixCreationTimeAttributes]);
|
||||
|
||||
useEffect(() => {
|
||||
if (typeof activeCollectionID === "undefined" || !router.isReady) {
|
||||
@@ -741,7 +738,10 @@ export default function Gallery() {
|
||||
() => dispatch({ type: "clearTempDeleted" }),
|
||||
(files) => dispatch({ type: "markTempHidden", files }),
|
||||
() => dispatch({ type: "clearTempHidden" }),
|
||||
setFixCreationTimeAttributes,
|
||||
(files) => {
|
||||
setFixCreationTimeFiles(files);
|
||||
showFixCreationTime();
|
||||
},
|
||||
setFilesDownloadProgressAttributesCreator,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -534,13 +534,7 @@ export const handleFileOps = async (
|
||||
clearTempDeleted: () => void,
|
||||
markTempHidden: (tempHiddenFiles: EnteFile[]) => void,
|
||||
clearTempHidden: () => void,
|
||||
setFixCreationTimeAttributes: (
|
||||
fixCreationTimeAttributes:
|
||||
| {
|
||||
files: EnteFile[];
|
||||
}
|
||||
| ((prev: { files: EnteFile[] }) => { files: EnteFile[] }),
|
||||
) => void,
|
||||
fixCreationTime: (files: EnteFile[]) => void,
|
||||
setFilesDownloadProgressAttributesCreator: SetFilesDownloadProgressAttributesCreator,
|
||||
) => {
|
||||
switch (ops) {
|
||||
@@ -583,7 +577,7 @@ export const handleFileOps = async (
|
||||
break;
|
||||
}
|
||||
case FILE_OPS_TYPE.FIX_TIME:
|
||||
fixTimeHelper(files, setFixCreationTimeAttributes);
|
||||
fixCreationTime(files);
|
||||
break;
|
||||
case FILE_OPS_TYPE.ARCHIVE:
|
||||
await changeFilesVisibility(files, ItemVisibility.archived);
|
||||
@@ -596,12 +590,3 @@ export const handleFileOps = async (
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
const fixTimeHelper = async (
|
||||
selectedFiles: EnteFile[],
|
||||
setFixCreationTimeAttributes: (fixCreationTimeAttributes: {
|
||||
files: EnteFile[];
|
||||
}) => void,
|
||||
) => {
|
||||
setFixCreationTimeAttributes({ files: selectedFiles });
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user