move choice modal to upload

This commit is contained in:
Rushikesh Tote 2022-03-24 09:34:49 +05:30
parent 35c07784bb
commit 605a54cabd
2 changed files with 91 additions and 87 deletions

View file

@ -22,6 +22,7 @@ import { Collection } from 'types/collection';
import { SetLoading, SetFiles } from 'types/gallery'; import { SetLoading, SetFiles } from 'types/gallery';
import { FileUploadResults, UPLOAD_STAGES } from 'constants/upload'; import { FileUploadResults, UPLOAD_STAGES } from 'constants/upload';
import { ElectronFile, FileWithCollection } from 'types/upload'; import { ElectronFile, FileWithCollection } from 'types/upload';
import UploadTypeChoiceModal from './UploadTypeChoiceModal';
const FIRST_ALBUM_NAME = 'My First Album'; const FIRST_ALBUM_NAME = 'My First Album';
@ -41,6 +42,8 @@ interface Props {
isFirstUpload: boolean; isFirstUpload: boolean;
electronFiles: ElectronFile[]; electronFiles: ElectronFile[];
setElectronFiles: (files: ElectronFile[]) => void; setElectronFiles: (files: ElectronFile[]) => void;
showUploadTypeChoiceModal: boolean;
setShowUploadTypeChoiceModal: (open: boolean) => void;
} }
enum UPLOAD_STRATEGY { enum UPLOAD_STRATEGY {
@ -410,6 +413,13 @@ export default function Upload(props: Props) {
) )
} }
/> />
<UploadTypeChoiceModal
setElectronFiles={props.setElectronFiles}
showUploadTypeChoiceModal={props.showUploadTypeChoiceModal}
setShowUploadTypeChoiceModal={
props.setShowUploadTypeChoiceModal
}
/>
<UploadProgress <UploadProgress
now={percentComplete} now={percentComplete}
filenames={filenames} filenames={filenames}

View file

@ -1,3 +1,37 @@
import DeleteBtn from 'components/DeleteBtn';
import EnteSpinner from 'components/EnteSpinner';
import FixCreationTime, {
FixCreationTimeAttributes,
} from 'components/FixCreationTime';
import FullScreenDropZone from 'components/FullScreenDropZone';
import { LoadingOverlay } from 'components/LoadingOverlay';
import MessageDialog, { MessageAttributes } from 'components/MessageDialog';
import AlertBanner from 'components/pages/gallery/AlertBanner';
import CollectionNamer, {
CollectionNamerAttributes,
} from 'components/pages/gallery/CollectionNamer';
import Collections from 'components/pages/gallery/Collections';
import CollectionSelector, {
CollectionSelectorAttributes,
} from 'components/pages/gallery/CollectionSelector';
import PlanSelector from 'components/pages/gallery/PlanSelector';
import SelectedFileOptions from 'components/pages/gallery/SelectedFileOptions';
import Upload from 'components/pages/gallery/Upload';
import UploadButton from 'components/pages/gallery/UploadButton';
import PhotoFrame from 'components/PhotoFrame';
import SearchBar from 'components/SearchBar';
import Sidebar from 'components/Sidebar';
import ToastNotification from 'components/ToastNotification';
import {
ALL_SECTION,
ARCHIVE_SECTION,
CollectionType,
TRASH_SECTION,
} from 'constants/collection';
import { VISIBILITY_STATE } from 'constants/file';
import { PAGES } from 'constants/pages';
import { useRouter } from 'next/router';
import { AppContext } from 'pages/_app';
import React, { import React, {
createContext, createContext,
useContext, useContext,
@ -5,44 +39,53 @@ import React, {
useRef, useRef,
useState, useState,
} from 'react'; } from 'react';
import { useRouter } from 'next/router'; import { useDropzone } from 'react-dropzone';
import { clearKeys, getKey, SESSION_KEYS } from 'utils/storage/sessionStorage';
import {
getLocalFiles,
syncFiles,
updateMagicMetadata,
trashFiles,
deleteFromTrash,
} from 'services/fileService';
import styled from 'styled-components';
import LoadingBar from 'react-top-loading-bar'; import LoadingBar from 'react-top-loading-bar';
import billingService from 'services/billingService';
import { import {
syncCollections, createCollection,
getCollectionsAndTheirLatestFile, getCollectionsAndTheirLatestFile,
getFavItemIds, getFavItemIds,
getLocalCollections, getLocalCollections,
getNonEmptyCollections, getNonEmptyCollections,
createCollection, syncCollections,
} from 'services/collectionService'; } from 'services/collectionService';
import constants from 'utils/strings/constants';
import billingService from 'services/billingService';
import { checkSubscriptionPurchase } from 'utils/billing';
import FullScreenDropZone from 'components/FullScreenDropZone';
import Sidebar from 'components/Sidebar';
import { checkConnectivity } from 'utils/common';
import { import {
isFirstLogin, deleteFromTrash,
justSignedUp, getLocalFiles,
setIsFirstLogin, syncFiles,
setJustSignedUp, trashFiles,
} from 'utils/storage'; updateMagicMetadata,
} from 'services/fileService';
import {
clearLocalTrash,
emptyTrash,
getLocalTrash,
getTrashedFiles,
syncTrash,
} from 'services/trashService';
import { isTokenValid, logoutUser } from 'services/userService'; import { isTokenValid, logoutUser } from 'services/userService';
import MessageDialog, { MessageAttributes } from 'components/MessageDialog'; import styled from 'styled-components';
import { useDropzone } from 'react-dropzone'; import { Collection, CollectionAndItsLatestFile } from 'types/collection';
import EnteSpinner from 'components/EnteSpinner'; import { EnteFile } from 'types/file';
import { LoadingOverlay } from 'components/LoadingOverlay'; import {
import PhotoFrame from 'components/PhotoFrame'; GalleryContextType,
NotificationAttributes,
Search,
SelectedState,
} from 'types/gallery';
import { Trash } from 'types/trash';
import { ElectronFile } from 'types/upload';
import { checkSubscriptionPurchase } from 'utils/billing';
import {
COLLECTION_OPS_TYPE,
getSelectedCollection,
handleCollectionOps,
isFavoriteCollection,
isSharedCollection,
} from 'utils/collection';
import { checkConnectivity } from 'utils/common';
import { CustomError, ServerErrorCodes } from 'utils/error';
import { import {
changeFilesVisibility, changeFilesVisibility,
downloadFiles, downloadFiles,
@ -52,61 +95,15 @@ import {
sortFiles, sortFiles,
sortFilesIntoCollections, sortFilesIntoCollections,
} from 'utils/file'; } from 'utils/file';
import SearchBar from 'components/SearchBar';
import SelectedFileOptions from 'components/pages/gallery/SelectedFileOptions';
import CollectionSelector, {
CollectionSelectorAttributes,
} from 'components/pages/gallery/CollectionSelector';
import CollectionNamer, {
CollectionNamerAttributes,
} from 'components/pages/gallery/CollectionNamer';
import AlertBanner from 'components/pages/gallery/AlertBanner';
import UploadButton from 'components/pages/gallery/UploadButton';
import PlanSelector from 'components/pages/gallery/PlanSelector';
import Upload from 'components/pages/gallery/Upload';
import {
ALL_SECTION,
ARCHIVE_SECTION,
CollectionType,
TRASH_SECTION,
} from 'constants/collection';
import { AppContext } from 'pages/_app';
import { CustomError, ServerErrorCodes } from 'utils/error';
import { PAGES } from 'constants/pages';
import {
COLLECTION_OPS_TYPE,
isSharedCollection,
handleCollectionOps,
getSelectedCollection,
isFavoriteCollection,
} from 'utils/collection';
import { logError } from 'utils/sentry'; import { logError } from 'utils/sentry';
import { import {
clearLocalTrash, isFirstLogin,
emptyTrash, justSignedUp,
getLocalTrash, setIsFirstLogin,
getTrashedFiles, setJustSignedUp,
syncTrash, } from 'utils/storage';
} from 'services/trashService'; import { clearKeys, getKey, SESSION_KEYS } from 'utils/storage/sessionStorage';
import { Trash } from 'types/trash'; import constants from 'utils/strings/constants';
import DeleteBtn from 'components/DeleteBtn';
import FixCreationTime, {
FixCreationTimeAttributes,
} from 'components/FixCreationTime';
import { Collection, CollectionAndItsLatestFile } from 'types/collection';
import { EnteFile } from 'types/file';
import {
GalleryContextType,
SelectedState,
Search,
NotificationAttributes,
} from 'types/gallery';
import Collections from 'components/pages/gallery/Collections';
import { VISIBILITY_STATE } from 'constants/file';
import ToastNotification from 'components/ToastNotification';
import { ElectronFile } from 'types/upload';
import UploadTypeChoiceModal from 'components/pages/gallery/UploadTypeChoiceModal';
export const DeadCenter = styled.div` export const DeadCenter = styled.div`
flex: 1; flex: 1;
@ -672,6 +669,8 @@ export default function Gallery() {
isFirstUpload={collectionsAndTheirLatestFile?.length === 0} isFirstUpload={collectionsAndTheirLatestFile?.length === 0}
electronFiles={electronFiles} electronFiles={electronFiles}
setElectronFiles={setElectronFiles} setElectronFiles={setElectronFiles}
showUploadTypeChoiceModal={showUploadTypeChoiceModal}
setShowUploadTypeChoiceModal={setShowUploadTypeChoiceModal}
/> />
<Sidebar <Sidebar
collections={collections} collections={collections}
@ -683,11 +682,6 @@ export default function Gallery() {
openFileUploader={openFileUploader} openFileUploader={openFileUploader}
setShowUploadTypeChoiceModal={setShowUploadTypeChoiceModal} setShowUploadTypeChoiceModal={setShowUploadTypeChoiceModal}
/> />
<UploadTypeChoiceModal
setElectronFiles={setElectronFiles}
showUploadTypeChoiceModal={showUploadTypeChoiceModal}
setShowUploadTypeChoiceModal={setShowUploadTypeChoiceModal}
/>
<PhotoFrame <PhotoFrame
files={files} files={files}
setFiles={setFiles} setFiles={setFiles}