diff --git a/src/components/httprequestviewer/HTTPRequestViewer.tsx b/src/components/httprequestviewer/HTTPRequestViewer.tsx index bed1170..24bdb45 100644 --- a/src/components/httprequestviewer/HTTPRequestViewer.tsx +++ b/src/components/httprequestviewer/HTTPRequestViewer.tsx @@ -1,12 +1,49 @@ -import { useState, useMemo, useEffect } from 'react' +import { useState, useMemo, useEffect, lazy, Suspense } from 'react' import { useDatabaseTraceData } from '../../hooks/useDatabaseTraceData' import { getUrlParams, updateUrlWithTraceId } from '../../App' -import BabylonViewer from '../../BabylonViewer' -import BabylonTimelineViewer from '../../BabylonTimelineViewer' import RequestFilters from './RequestFilters' import RequestsTable from './RequestsTable' import styles from './HTTPRequestViewer.module.css' +// Lazy load 3D viewers to reduce main bundle size +const BabylonViewer = lazy(() => import('../../BabylonViewer')) +const BabylonTimelineViewer = lazy(() => import('../../BabylonTimelineViewer')) + +// Loading component for 3D viewers +const ThreeDViewerLoading = () => ( +