Browse Source

fix load collection dialog

Signed-off-by: ryjiang <jiangruiyi@gmail.com>
ryjiang 1 year ago
parent
commit
1cdc4b9e1b

+ 2 - 4
client/src/pages/collections/Collections.tsx

@@ -145,7 +145,7 @@ const Collections = () => {
           params: {
           params: {
             component: (
             component: (
               <LoadCollectionDialog
               <LoadCollectionDialog
-                collection={selectedCollections[0].collection_name}
+                collection={selectedCollections[0]}
                 onLoad={async () => {
                 onLoad={async () => {
                   setSelectedCollections([]);
                   setSelectedCollections([]);
                 }}
                 }}
@@ -375,9 +375,7 @@ const Collections = () => {
                 params: {
                 params: {
                   component:
                   component:
                     v.status === LOADING_STATE.UNLOADED ? (
                     v.status === LOADING_STATE.UNLOADED ? (
-                      <LoadCollectionDialog
-                        collectionName={v.collection_name}
-                      />
+                      <LoadCollectionDialog collection={v} />
                     ) : (
                     ) : (
                       <ReleaseCollectionDialog collection={v} />
                       <ReleaseCollectionDialog collection={v} />
                     ),
                     ),

+ 9 - 5
client/src/pages/dialogs/LoadCollectionDialog.tsx

@@ -17,6 +17,7 @@ import { ITextfieldConfig } from '@/components/customInput/Types';
 import DialogTemplate from '@/components/customDialog/DialogTemplate';
 import DialogTemplate from '@/components/customDialog/DialogTemplate';
 import CustomToolTip from '@/components/customToolTip/CustomToolTip';
 import CustomToolTip from '@/components/customToolTip/CustomToolTip';
 import icons from '@/components/icons/Icons';
 import icons from '@/components/icons/Icons';
+import { CollectionObject } from '@server/types';
 
 
 const useStyles = makeStyles((theme: Theme) => ({
 const useStyles = makeStyles((theme: Theme) => ({
   desc: {
   desc: {
@@ -36,10 +37,13 @@ const useStyles = makeStyles((theme: Theme) => ({
   },
   },
 }));
 }));
 
 
-const LoadCollectionDialog = (props: any) => {
+const LoadCollectionDialog = (props: {
+  collection: CollectionObject;
+  onLoad?: (collection: CollectionObject) => void;
+}) => {
   const { loadCollection } = useContext(dataContext);
   const { loadCollection } = useContext(dataContext);
   const classes = useStyles();
   const classes = useStyles();
-  const { collectionName, onLoad } = props;
+  const { collection, onLoad } = props;
   const { t: dialogTrans } = useTranslation('dialog');
   const { t: dialogTrans } = useTranslation('dialog');
   const { t: collectionTrans } = useTranslation('collection');
   const { t: collectionTrans } = useTranslation('collection');
   const { t: successTrans } = useTranslation('success');
   const { t: successTrans } = useTranslation('success');
@@ -102,7 +106,7 @@ const LoadCollectionDialog = (props: any) => {
     }
     }
 
 
     // load collection request
     // load collection request
-    await loadCollection(collectionName, params);
+    await loadCollection(collection.collection_name, params);
 
 
     // show success message
     // show success message
     openSnackBar(
     openSnackBar(
@@ -113,7 +117,7 @@ const LoadCollectionDialog = (props: any) => {
 
 
     // callback
     // callback
     if (onLoad) {
     if (onLoad) {
-      await onLoad(collectionName);
+      await onLoad(collection);
     }
     }
     // close dialog
     // close dialog
     handleCloseDialog();
     handleCloseDialog();
@@ -175,7 +179,7 @@ const LoadCollectionDialog = (props: any) => {
   return (
   return (
     <DialogTemplate
     <DialogTemplate
       title={dialogTrans('loadTitle', {
       title={dialogTrans('loadTitle', {
-        type: collectionName,
+        type: collection.collection_name,
       })}
       })}
       handleClose={handleCloseDialog}
       handleClose={handleCloseDialog}
       children={
       children={

+ 2 - 6
client/src/pages/schema/Schema.tsx

@@ -266,13 +266,9 @@ const Schema = () => {
                   params: {
                   params: {
                     component:
                     component:
                       collection.status === LOADING_STATE.UNLOADED ? (
                       collection.status === LOADING_STATE.UNLOADED ? (
-                        <LoadCollectionDialog
-                          collectionName={collection.collection_name}
-                        />
+                        <LoadCollectionDialog collection={collection} />
                       ) : (
                       ) : (
-                        <ReleaseCollectionDialog
-                          collectionName={collection.collection_name}
-                        />
+                        <ReleaseCollectionDialog collection={collection} />
                       ),
                       ),
                   },
                   },
                 });
                 });