2023-10-02 05:35:02 -04:00
|
|
|
import { GenericErrorBoundaryFallback } from '@/shared/components/generic-error-boundary-fallback'
|
|
|
|
import withErrorBoundary from '@/infrastructure/error-boundary'
|
|
|
|
import IdePage from '@/features/ide-react/components/layout/ide-page'
|
2023-10-16 07:10:43 -04:00
|
|
|
import { ReactContextRoot } from '@/features/ide-react/context/react-context-root'
|
|
|
|
import { Loading } from '@/features/ide-react/components/loading'
|
|
|
|
import getMeta from '@/utils/meta'
|
2023-10-02 05:35:02 -04:00
|
|
|
|
|
|
|
function IdeRoot() {
|
|
|
|
// Check that we haven't inadvertently loaded Angular
|
|
|
|
// TODO: Remove this before rolling out this component to any users
|
|
|
|
if (typeof window.angular !== 'undefined') {
|
|
|
|
throw new Error('Angular detected. This page must not load Angular.')
|
|
|
|
}
|
|
|
|
|
2023-10-16 07:10:43 -04:00
|
|
|
const loadingText = getMeta('ol-loadingText')
|
2023-10-02 05:35:02 -04:00
|
|
|
|
2023-10-16 07:10:43 -04:00
|
|
|
return (
|
|
|
|
<ReactContextRoot>
|
|
|
|
<Loading loadingText={loadingText}>
|
|
|
|
<IdePage />
|
|
|
|
</Loading>
|
|
|
|
</ReactContextRoot>
|
|
|
|
)
|
2023-10-02 05:35:02 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
export default withErrorBoundary(IdeRoot, GenericErrorBoundaryFallback)
|