pdf-preview-pane.js 926 B

12345678910111213141516171819202122232425262728293031323334
  1. import { memo, Suspense } from 'react'
  2. import PdfLogsViewer from './pdf-logs-viewer'
  3. import PdfViewer from './pdf-viewer'
  4. import LoadingSpinner from '../../../shared/components/loading-spinner'
  5. import PdfHybridPreviewToolbar from './pdf-preview-hybrid-toolbar'
  6. import PdfPreviewToolbar from './pdf-preview-toolbar'
  7. const newPreviewToolbar = new URLSearchParams(window.location.search).has(
  8. 'new_preview_toolbar'
  9. )
  10. function PdfPreviewPane() {
  11. return (
  12. <div className="pdf full-size">
  13. {newPreviewToolbar ? <PdfPreviewToolbar /> : <PdfHybridPreviewToolbar />}
  14. <Suspense fallback={<LoadingPreview />}>
  15. <div className="pdf-viewer">
  16. <PdfViewer />
  17. </div>
  18. </Suspense>
  19. <PdfLogsViewer />
  20. </div>
  21. )
  22. }
  23. function LoadingPreview() {
  24. return (
  25. <div className="pdf-loading-spinner-container">
  26. <LoadingSpinner />
  27. </div>
  28. )
  29. }
  30. export default memo(PdfPreviewPane)