source-editor.tsx 720 B

12345678910111213141516171819202122232425
  1. import { lazy, memo, Suspense } from 'react'
  2. import LoadingSpinner from '../../../shared/components/loading-spinner'
  3. import withErrorBoundary from '../../../infrastructure/error-boundary'
  4. import { ErrorBoundaryFallback } from '../../../shared/components/error-boundary-fallback'
  5. const CodeMirrorEditor = lazy(
  6. () =>
  7. import(/* webpackChunkName: "codemirror-editor" */ './codemirror-editor')
  8. )
  9. function SourceEditor() {
  10. return (
  11. <Suspense
  12. fallback={
  13. <div className="pdf-loading-spinner-container">
  14. <LoadingSpinner delay={500} />
  15. </div>
  16. }
  17. >
  18. <CodeMirrorEditor />
  19. </Suspense>
  20. )
  21. }
  22. export default withErrorBoundary(memo(SourceEditor), ErrorBoundaryFallback)