فهرست منبع

move PageBulkExportSelectModal to features dir

Futa Arai 2 سال پیش
والد
کامیت
cf91314c60

+ 3 - 1
apps/app/src/components/Navbar/GrowiContextualSubNavigation.tsx

@@ -14,6 +14,7 @@ import { DropdownItem } from 'reactstrap';
 import { exportAsMarkdown, updateContentWidth, useUpdateStateAfterSave } from '~/client/services/page-operation';
 import { apiPost } from '~/client/util/apiv1-client';
 import { toastSuccess, toastError } from '~/client/util/toastr';
+import { usePageBulkExportSelectModal } from '~/features/page-bulk-export/client/stores/modal';
 import { OnDuplicatedFunction, OnRenamedFunction, OnDeletedFunction } from '~/interfaces/ui';
 import {
   useCurrentPathname,
@@ -22,7 +23,7 @@ import {
 import { usePageTagsForEditors } from '~/stores/editor';
 import {
   usePageAccessoriesModal, PageAccessoriesModalContents, IPageForPageDuplicateModal,
-  usePageDuplicateModal, usePageRenameModal, usePageDeleteModal, usePagePresentationModal, usePageBulkExportSelectModal,
+  usePageDuplicateModal, usePageRenameModal, usePageDeleteModal, usePagePresentationModal,
 } from '~/stores/modal';
 import {
   useSWRMUTxCurrentPage, useSWRxTagsInfo, useCurrentPageId, useIsNotFound, useTemplateTagData, useSWRxPageInfo,
@@ -33,6 +34,7 @@ import {
   useIsAbleToChangeEditorMode, useIsAbleToShowPageAuthors,
 } from '~/stores/ui';
 
+
 import CreateTemplateModal from '../CreateTemplateModal';
 import AttachmentIcon from '../Icons/AttachmentIcon';
 import HistoryIcon from '../Icons/HistoryIcon';

+ 1 - 1
apps/app/src/features/page-bulk-export/client/components/PageBulkExportSelectModal.tsx

@@ -2,7 +2,7 @@ import { useTranslation } from 'next-i18next';
 import { Modal, ModalHeader, ModalBody } from 'reactstrap';
 
 import { toastSuccess } from '~/client/util/toastr';
-import { usePageBulkExportSelectModal } from '~/stores/modal';
+import { usePageBulkExportSelectModal } from '~/features/page-bulk-export/client/stores/modal';
 
 const PageBulkExportSelectModal = (): JSX.Element => {
   const { t } = useTranslation();

+ 27 - 0
apps/app/src/features/page-bulk-export/client/stores/modal.tsx

@@ -0,0 +1,27 @@
+import { SWRResponse } from 'swr';
+
+import { useStaticSWR } from '../../../../stores/use-static-swr';
+
+type PageBulkExportSelectModalStatus = {
+  isOpened: boolean,
+}
+
+type PageBulkExportSelectModalUtils = {
+  open(): Promise<void>,
+  close(): Promise<void>,
+}
+
+export const usePageBulkExportSelectModal = (): SWRResponse<PageBulkExportSelectModalStatus, Error> & PageBulkExportSelectModalUtils => {
+  const initialStatus: PageBulkExportSelectModalStatus = { isOpened: false };
+  const swrResponse = useStaticSWR<PageBulkExportSelectModalStatus, Error>('pageBulkExportSelectModal', undefined, { fallbackData: initialStatus });
+
+  return {
+    ...swrResponse,
+    async open() {
+      await swrResponse.mutate({ isOpened: true });
+    },
+    async close() {
+      await swrResponse.mutate({ isOpened: false });
+    },
+  };
+};

+ 0 - 27
apps/app/src/stores/modal.tsx

@@ -393,33 +393,6 @@ export const usePageAccessoriesModal = (): SWRResponse<PageAccessoriesModalStatu
   });
 };
 
-/*
- * PageBulkExportSelectModal
- */
-type PageBulkExportSelectModalStatus = {
-  isOpened: boolean,
-}
-
-type PageBulkExportSelectModalUtils = {
-  open(): Promise<void>,
-  close(): Promise<void>,
-}
-
-export const usePageBulkExportSelectModal = (): SWRResponse<PageBulkExportSelectModalStatus, Error> & PageBulkExportSelectModalUtils => {
-  const initialStatus: PageBulkExportSelectModalStatus = { isOpened: false };
-  const swrResponse = useStaticSWR<PageBulkExportSelectModalStatus, Error>('pageBulkExportSelectModal', undefined, { fallbackData: initialStatus });
-
-  return {
-    ...swrResponse,
-    async open() {
-      await swrResponse.mutate({ isOpened: true });
-    },
-    async close() {
-      await swrResponse.mutate({ isOpened: false });
-    },
-  };
-};
-
 /*
  * UpdateUserGroupConfirmModal
  */

+ 10 - 0
apps/app/test/integration/service/external-user-group-sync.test.ts

@@ -193,11 +193,21 @@ describe('ExternalUserGroupSyncService.syncExternalUserGroups', () => {
   });
 
   afterEach(async() => {
+    const result = await await mongoose.model('Page').find();
+    console.log(result.map(r => r.path));
+
     await ExternalUserGroup.deleteMany();
     await ExternalUserGroupRelation.deleteMany();
     await mongoose.model('User')
       .deleteMany({ username: { $in: ['childGroupUser', 'parentGroupUser', 'grandParentGroupUser', 'previouslySyncedGroupUser'] } });
     await ExternalAccount.deleteMany({ accountId: { $in: ['childGroupUser', 'parentGroupUser', 'grandParentGroupUser', 'previouslySyncedGroupUser'] } });
+    // await mongoose.model('Page').deleteMany({
+    //   path: {
+    //     $in: [
+    //       '/user/childGroupUser', '/user/parentGroupUser', '/user/grandParentGroupUser', '/user/previouslySyncedGroupUser',
+    //     ],
+    //   },
+    // });
   });
 
   describe('When autoGenerateUserOnGroupSync is true', () => {