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

refs #80335: Detach page control from page container
- Detach PutBackPageModal from PageContainer and AppContainer(, which provided by Unstated)

NEEDLEMAN3\tatsu 4 лет назад
Родитель
Сommit
6c4f9cf3da

+ 1 - 0
packages/app/src/components/Page/TrashPageAlert.jsx

@@ -92,6 +92,7 @@ const TrashPageAlert = (props) => {
         <PutbackPageModal
           isOpen={isPutbackPageModalShown}
           onClose={closePutbackPageModalHandler}
+          pageId={pageId}
           path={path}
         />
         <PageDeleteModal

+ 7 - 17
packages/app/src/components/PutbackPageModal.jsx

@@ -7,20 +7,15 @@ import {
 
 import { withTranslation } from 'react-i18next';
 
-import { withUnstatedContainers } from './UnstatedUtils';
-
-import AppContainer from '~/client/services/AppContainer';
-import PageContainer from '~/client/services/PageContainer';
+import { apiPost } from '~/client/util/apiv1-client';
 
 import ApiErrorMessageList from './PageManagement/ApiErrorMessageList';
 
 const PutBackPageModal = (props) => {
   const {
-    t, isOpen, onClose, appContainer, pageContainer, path,
+    t, isOpen, onClose, pageId, path,
   } = props;
 
-  const { pageId } = pageContainer.state;
-
   const [errs, setErrs] = useState(null);
 
   const [isPutbackRecursively, setIsPutbackRecursively] = useState(true);
@@ -34,11 +29,12 @@ const PutBackPageModal = (props) => {
 
     try {
       // control flag
+      // If is it not true, Request value must be `null`.
       const recursively = isPutbackRecursively ? true : null;
 
-      const response = await appContainer.apiPost('/pages.revertRemove', {
-        recursively,
+      const response = await apiPost('/pages.revertRemove', {
         page_id: pageId,
+        recursively,
       });
 
       const putbackPagePath = response.page.path;
@@ -90,21 +86,15 @@ const PutBackPageModal = (props) => {
 
 };
 
-/**
- * Wrapper component for using unstated
- */
-const PutBackPageModalWrapper = withUnstatedContainers(PutBackPageModal, [AppContainer, PageContainer]);
-
 PutBackPageModal.propTypes = {
   t: PropTypes.func.isRequired, //  i18next
-  appContainer: PropTypes.instanceOf(AppContainer).isRequired,
-  pageContainer: PropTypes.instanceOf(PageContainer).isRequired,
 
   isOpen: PropTypes.bool.isRequired,
   onClose: PropTypes.func.isRequired,
 
+  pageId: PropTypes.string.isRequired,
   path: PropTypes.string.isRequired,
 };
 
 
-export default withTranslation()(PutBackPageModalWrapper);
+export default withTranslation()(PutBackPageModal);