Przeglądaj źródła

Revert "first"

This reverts commit 465263de2a5164f558d863a1dfb08b3aade610c9.
yuken 4 lat temu
rodzic
commit
f4f0cac2a7

+ 1 - 63
packages/app/src/components/CustomNavigation/CustomNav.jsx

@@ -1,20 +1,11 @@
 import React, {
 import React, {
   useEffect, useState, useRef, useMemo, useCallback,
   useEffect, useState, useRef, useMemo, useCallback,
 } from 'react';
 } from 'react';
-
 import PropTypes from 'prop-types';
 import PropTypes from 'prop-types';
 import {
 import {
   Nav, NavItem, NavLink,
   Nav, NavItem, NavLink,
 } from 'reactstrap';
 } from 'reactstrap';
 
 
-import { toastSuccess } from '~/client/util/apiNotification';
-import { useCurrentPagePath } from '~/stores/context';
-import { usePageDeleteModal } from '~/stores/modal';
-import { useSWRxDescendantsPageListForCurrrentPath, useSWRxPageInfoForList } from '~/stores/page';
-import { usePageTreeTermManager } from '~/stores/page-listing';
-
-import { isTrashPage } from '^/../core/src/utils/page-path-utils';
-
 
 
 function getBreakpointOneLevelLarger(breakpoint) {
 function getBreakpointOneLevelLarger(breakpoint) {
   switch (breakpoint) {
   switch (breakpoint) {
@@ -94,10 +85,6 @@ export const CustomNavTab = (props) => {
   const navContainer = useRef();
   const navContainer = useRef();
   const [sliderWidth, setSliderWidth] = useState(0);
   const [sliderWidth, setSliderWidth] = useState(0);
   const [sliderMarginLeft, setSliderMarginLeft] = useState(0);
   const [sliderMarginLeft, setSliderMarginLeft] = useState(0);
-  const { open: openDeleteModal } = usePageDeleteModal();
-  const { data: currentPath } = useCurrentPagePath();
-  const { data: pagingResult, mutate } = useSWRxDescendantsPageListForCurrrentPath();
-  const { advance: advancePt } = usePageTreeTermManager();
 
 
   const {
   const {
     activeTab, navTabMapping, onNavSelected, hideBorderBottom, breakpointToHideInactiveTabsDown,
     activeTab, navTabMapping, onNavSelected, hideBorderBottom, breakpointToHideInactiveTabsDown,
@@ -117,40 +104,6 @@ export const CustomNavTab = (props) => {
     }
     }
   }, [onNavSelected]);
   }, [onNavSelected]);
 
 
-  const pageIds = pagingResult?.items?.map(page => page._id);
-  const { injectTo } = useSWRxPageInfoForList(pageIds, true, true);
-
-  let pageWithMetas = [];
-
-  const convertToIDataWithMeta = (page) => {
-    return { data: page };
-  };
-
-  // initial data
-  if (pagingResult != null) {
-    // convert without meta at first
-    console.log(pagingResult);
-    const dataWithMetas = pagingResult.items.map(page => convertToIDataWithMeta(page));
-    // inject data for listing
-    pageWithMetas = injectTo(dataWithMetas);
-  }
-
-  const deonDeleteHandler = (...args) => {
-    // alert(pagingResult.items.length);
-    toastSuccess(args[2] ? 'あいうえお' : 'かきくけこ');
-
-    advancePt();
-
-    if (mutate != null) {
-      mutate(...args);
-    }
-  };
-
-  const allDeleteButtonClickHandler = () => {
-
-    openDeleteModal(pageWithMetas, { onDeleted: mutate });
-  };
-
   function registerNavLink(key, elm) {
   function registerNavLink(key, elm) {
     if (elm != null) {
     if (elm != null) {
       navTabRefs[key] = elm;
       navTabRefs[key] = elm;
@@ -194,12 +147,9 @@ export const CustomNavTab = (props) => {
     inactiveClassnames.push(`d-${breakpointOneLevelLarger}-block`);
     inactiveClassnames.push(`d-${breakpointOneLevelLarger}-block`);
   }
   }
 
 
-  // trash page flag
-  const isTrash = isTrashPage(currentPath);
-
   return (
   return (
     <div className="grw-custom-nav-tab">
     <div className="grw-custom-nav-tab">
-      <div ref={navContainer} className="d-flex justify-content-between">
+      <div ref={navContainer}>
         <Nav className="nav-title">
         <Nav className="nav-title">
           {Object.entries(navTabMapping).map(([key, value]) => {
           {Object.entries(navTabMapping).map(([key, value]) => {
 
 
@@ -219,18 +169,6 @@ export const CustomNavTab = (props) => {
             );
             );
           })}
           })}
         </Nav>
         </Nav>
-        { isTrash && (
-          <div className="d-flex align-items-center">
-            <button
-              type="button"
-              className="btn btn-outline-secondary rounded-pill text-danger d-flex align-items-center"
-              onClick={() => allDeleteButtonClickHandler()}
-            >
-              <i className="icon-fw icon-trash"></i>
-              <div>全て削除</div>
-            </button>
-          </div>
-        )}
       </div>
       </div>
       <hr className="my-0 grw-nav-slide-hr border-none" style={{ width: `${sliderWidth}%`, marginLeft: `${sliderMarginLeft}%` }} />
       <hr className="my-0 grw-nav-slide-hr border-none" style={{ width: `${sliderWidth}%`, marginLeft: `${sliderMarginLeft}%` }} />
       { !hideBorderBottom && <hr className="my-0 border-top-0 border-bottom" /> }
       { !hideBorderBottom && <hr className="my-0 border-top-0 border-bottom" /> }

+ 2 - 3
packages/app/src/components/DescendantsPageList.tsx

@@ -1,7 +1,5 @@
 import React, { useCallback, useState } from 'react';
 import React, { useCallback, useState } from 'react';
-
 import { useTranslation } from 'react-i18next';
 import { useTranslation } from 'react-i18next';
-
 import { toastSuccess } from '~/client/util/apiNotification';
 import { toastSuccess } from '~/client/util/apiNotification';
 import {
 import {
   IDataWithMeta,
   IDataWithMeta,
@@ -11,12 +9,13 @@ import {
 import { IPagingResult } from '~/interfaces/paging-result';
 import { IPagingResult } from '~/interfaces/paging-result';
 import { OnDeletedFunction, OnPutBackedFunction } from '~/interfaces/ui';
 import { OnDeletedFunction, OnPutBackedFunction } from '~/interfaces/ui';
 import { useIsGuestUser, useIsSharedUser, useIsTrashPage } from '~/stores/context';
 import { useIsGuestUser, useIsSharedUser, useIsTrashPage } from '~/stores/context';
+
 import {
 import {
   useSWRxDescendantsPageListForCurrrentPath, useSWRxPageInfoForList, useSWRxPageList, useDescendantsPageListForCurrentPathTermManager,
   useSWRxDescendantsPageListForCurrrentPath, useSWRxPageInfoForList, useSWRxPageList, useDescendantsPageListForCurrentPathTermManager,
 } from '~/stores/page';
 } from '~/stores/page';
 import { usePageTreeTermManager } from '~/stores/page-listing';
 import { usePageTreeTermManager } from '~/stores/page-listing';
-
 import { ForceHideMenuItems, MenuItemType } from './Common/Dropdown/PageItemControl';
 import { ForceHideMenuItems, MenuItemType } from './Common/Dropdown/PageItemControl';
+
 import PageList from './PageList/PageList';
 import PageList from './PageList/PageList';
 import PaginationWrapper from './PaginationWrapper';
 import PaginationWrapper from './PaginationWrapper';
 
 

+ 7 - 12
packages/app/src/components/PageDeleteModal.tsx

@@ -1,25 +1,22 @@
 import React, { useState, FC, useMemo } from 'react';
 import React, { useState, FC, useMemo } from 'react';
-
-import { useTranslation } from 'react-i18next';
 import {
 import {
   Modal, ModalHeader, ModalBody, ModalFooter,
   Modal, ModalHeader, ModalBody, ModalFooter,
 } from 'reactstrap';
 } from 'reactstrap';
+import { useTranslation } from 'react-i18next';
 
 
 import { apiPost } from '~/client/util/apiv1-client';
 import { apiPost } from '~/client/util/apiv1-client';
 import { apiv3Post } from '~/client/util/apiv3-client';
 import { apiv3Post } from '~/client/util/apiv3-client';
-import { HasObjectId } from '~/interfaces/has-object-id';
-import {
-  IDeleteSinglePageApiv1Result, IDeleteManyPageApiv3Result, IPageToDeleteWithMeta, IDataWithMeta, isIPageInfoForEntity, IPageInfoForEntity,
-} from '~/interfaces/page';
-import { useCurrentPagePath } from '~/stores/context';
 import { usePageDeleteModal } from '~/stores/modal';
 import { usePageDeleteModal } from '~/stores/modal';
-import { useSWRxPageInfoForList } from '~/stores/page';
 import loggerFactory from '~/utils/logger';
 import loggerFactory from '~/utils/logger';
 
 
+import {
+  IDeleteSinglePageApiv1Result, IDeleteManyPageApiv3Result, IPageToDeleteWithMeta, IDataWithMeta, isIPageInfoForEntity, IPageInfoForEntity,
+} from '~/interfaces/page';
+import { HasObjectId } from '~/interfaces/has-object-id';
 
 
 import ApiErrorMessageList from './PageManagement/ApiErrorMessageList';
 import ApiErrorMessageList from './PageManagement/ApiErrorMessageList';
-
 import { isTrashPage } from '^/../core/src/utils/page-path-utils';
 import { isTrashPage } from '^/../core/src/utils/page-path-utils';
+import { useSWRxPageInfoForList } from '~/stores/page';
 
 
 
 
 const logger = loggerFactory('growi:cli:PageDeleteModal');
 const logger = loggerFactory('growi:cli:PageDeleteModal');
@@ -42,7 +39,6 @@ const PageDeleteModal: FC = () => {
   const { t } = useTranslation();
   const { t } = useTranslation();
 
 
   const { data: deleteModalData, close: closeDeleteModal } = usePageDeleteModal();
   const { data: deleteModalData, close: closeDeleteModal } = usePageDeleteModal();
-  const { data: currentPath } = useCurrentPagePath();
 
 
   const isOpened = deleteModalData?.isOpened ?? false;
   const isOpened = deleteModalData?.isOpened ?? false;
 
 
@@ -123,8 +119,7 @@ const PageDeleteModal: FC = () => {
 
 
         const onDeleted = deleteModalData.opts?.onDeleted;
         const onDeleted = deleteModalData.opts?.onDeleted;
         if (onDeleted != null) {
         if (onDeleted != null) {
-          console.log('q');
-          onDeleted(currentPath != null ? currentPath : '', isRecursively, isCompletely);
+          onDeleted(data.paths, data.isRecursively, data.isCompletely);
         }
         }
 
 
         closeDeleteModal();
         closeDeleteModal();