pdf-preview.tsx 951 B

123456789101112131415161718192021
  1. import PdfPreviewPane from './pdf-preview-pane'
  2. import { memo } from 'react'
  3. import withErrorBoundary from '../../../infrastructure/error-boundary'
  4. import PdfPreviewErrorBoundaryFallback from './pdf-preview-error-boundary-fallback'
  5. import { useLayoutContext } from '../../../shared/context/layout-context'
  6. import { VisualPreview } from './visual-preview'
  7. import { useEditorViewContext } from '@/features/ide-react/context/editor-view-context'
  8. import { useFeatureFlag } from '@/shared/context/split-test-context'
  9. function PdfPreview() {
  10. const { detachRole } = useLayoutContext()
  11. const { view } = useEditorViewContext()
  12. const visualPreviewEnabled = useFeatureFlag('visual-preview')
  13. if (detachRole === 'detacher') return null
  14. if (visualPreviewEnabled && view) return <VisualPreview view={view} />
  15. return <PdfPreviewPane />
  16. }
  17. export default withErrorBoundary(memo(PdfPreview), () => (
  18. <PdfPreviewErrorBoundaryFallback type="preview" />
  19. ))