dynamic.tsx 675 B

123456789101112131415161718
  1. import type { JSX } from 'react';
  2. import { useLazyLoader } from '~/components/utils/use-lazy-loader';
  3. import { usePresentationModalStatus } from '~/states/ui/modal/page-presentation';
  4. type PagePresentationModalProps = Record<string, unknown>;
  5. export const PagePresentationModalLazyLoaded = (): JSX.Element => {
  6. const status = usePresentationModalStatus();
  7. const PagePresentationModal = useLazyLoader<PagePresentationModalProps>(
  8. 'page-presentation-modal',
  9. () => import('./PagePresentationModal').then(mod => ({ default: mod.PagePresentationModal })),
  10. status?.isOpened ?? false,
  11. );
  12. return PagePresentationModal ? <PagePresentationModal /> : <></>;
  13. };