Просмотр исходного кода

Separate props

https://youtrack.weseek.co.jp/issue/GW-7840
- Separate props of BookmarkItem
Mudana-Grune 3 лет назад
Родитель
Сommit
6435031f40
1 измененных файлов с 13 добавлено и 7 удалено
  1. 13 7
      packages/app/src/components/Sidebar/Bookmarks.tsx

+ 13 - 7
packages/app/src/components/Sidebar/Bookmarks.tsx

@@ -20,11 +20,12 @@ import { MenuItemType, PageItemControl } from '../Common/Dropdown/PageItemContro
 
 type Props = {
   bookmarkedPage: IPageHasId,
-  onPageOperationSuccess: () => void
+  onUnbookmarked: () => void,
+  onRenamed: () => void
 }
 
 const BookmarkItem = (props: Props) => {
-  const { bookmarkedPage, onPageOperationSuccess } = props;
+  const { bookmarkedPage, onUnbookmarked, onRenamed } = props;
   const { t } = useTranslation();
   const [isRenameInputShown, setRenameInputShown] = useState(false);
   const dPagePath = new DevidedPagePath(bookmarkedPage.path, false, true);
@@ -34,8 +35,8 @@ const BookmarkItem = (props: Props) => {
 
   const bookmarkMenuItemClickHandler = useCallback(async() => {
     await unbookmark(bookmarkedPage._id);
-    onPageOperationSuccess();
-  }, [onPageOperationSuccess, bookmarkedPage]);
+    onUnbookmarked();
+  }, [onUnbookmarked, bookmarkedPage]);
 
   const renameMenuItemClickHandler = useCallback(() => {
     setRenameInputShown(true);
@@ -67,14 +68,14 @@ const BookmarkItem = (props: Props) => {
         revisionId: bookmarkedPage.revision,
         newPagePath,
       });
-      onPageOperationSuccess();
+      onRenamed();
       toastSuccess(t('renamed_pages', { path: bookmarkedPage.path }));
     }
     catch (err) {
       setRenameInputShown(true);
       toastError(err);
     }
-  }, [bookmarkedPage, onPageOperationSuccess, t]);
+  }, [bookmarkedPage, onRenamed, t]);
 
   return (
     <div className="d-flex justify-content-between" key={bookmarkedPage._id}>
@@ -135,7 +136,12 @@ const Bookmarks = () : JSX.Element => {
         <div className="grw-bookmarks-item-container">
           { currentUserBookmarksData?.map((currentUserBookmark) => {
             return (
-              <BookmarkItem key={currentUserBookmark._id} bookmarkedPage={currentUserBookmark} onPageOperationSuccess={mutateCurrentUserBookmarks} />
+              <BookmarkItem
+                key={currentUserBookmark._id}
+                bookmarkedPage={currentUserBookmark}
+                onUnbookmarked={mutateCurrentUserBookmarks}
+                onRenamed={mutateCurrentUserBookmarks}
+              />
             );
           })}
         </div>