Jelajahi Sumber

fix: enable Drawio modal from the toolbar in editor

Shun Miyazawa 4 bulan lalu
induk
melakukan
13a8221f2b

+ 8 - 1
apps/app/src/client/components/PageEditor/DrawioModal/dynamic.tsx

@@ -1,17 +1,24 @@
 import type { JSX } from 'react';
 import type { JSX } from 'react';
 
 
+import { useDrawioModalForEditorStatus } from '@growi/editor/dist/states/modal/drawio-for-editor';
+
 import { useLazyLoader } from '~/components/utils/use-lazy-loader';
 import { useLazyLoader } from '~/components/utils/use-lazy-loader';
 import { useDrawioModalStatus } from '~/states/ui/modal/drawio';
 import { useDrawioModalStatus } from '~/states/ui/modal/drawio';
 
 
+
 type DrawioModalProps = Record<string, unknown>;
 type DrawioModalProps = Record<string, unknown>;
 
 
 export const DrawioModalLazyLoaded = (): JSX.Element => {
 export const DrawioModalLazyLoaded = (): JSX.Element => {
   const status = useDrawioModalStatus();
   const status = useDrawioModalStatus();
+  const statusForEditor = useDrawioModalForEditorStatus();
+
+  const isOpened = status?.isOpened ?? false;
+  const isOpenedInEditor = statusForEditor?.isOpened ?? false;
 
 
   const DrawioModal = useLazyLoader<DrawioModalProps>(
   const DrawioModal = useLazyLoader<DrawioModalProps>(
     'drawio-modal',
     'drawio-modal',
     () => import('./DrawioModal').then(mod => ({ default: mod.DrawioModal })),
     () => import('./DrawioModal').then(mod => ({ default: mod.DrawioModal })),
-    status?.isOpened ?? false,
+    isOpened || isOpenedInEditor,
   );
   );
 
 
   return DrawioModal ? <DrawioModal /> : <></>;
   return DrawioModal ? <DrawioModal /> : <></>;