1- import React , { useState , useEffect , useRef , useMemo } from 'react' ;
2- import { createRoot } from 'react-dom/client' ;
3- import { IReporterService , localize , getDebugLogger } from '@opensumi/ide-core-common' ;
41import { REPORT_NAME , RuntimeConfig } from '@codeblitzjs/ide-sumi-core' ;
5- import { createApp } from './createApp' ;
2+ import { getDebugLogger , IReporterService , localize } from '@opensumi/ide-core-common' ;
3+ import React , { useEffect , useMemo , useRef , useState } from 'react' ;
4+ import { createRoot } from 'react-dom/client' ;
5+ import { useConstant } from '../core/hooks' ;
66import { Root } from '../core/Root' ;
7- import { RootProps , LandingProps } from '../core/types' ;
8- import {
9- setSingleInjector ,
10- singleInjector ,
11- useConstant ,
12- isRendered ,
13- setRendered ,
14- setSingleApp ,
15- singleApp ,
16- } from '../core/hooks' ;
17- import { IConfig , IAppInstance } from './types' ;
187import styles from '../core/style.module.less' ;
19- import { IAppRenderer } from '@opensumi/ide-core-browser' ;
8+ import { LandingProps , RootProps } from '../core/types' ;
9+ import { createApp } from './createApp' ;
10+ import { IAppInstance , IConfig } from './types' ;
2011
2112export interface IAppRendererProps extends IConfig {
2213 onLoad ?( app : IAppInstance ) : void ;
@@ -30,15 +21,15 @@ export const renderApp = (domElement: HTMLElement, props: IAppRendererProps) =>
3021 const className = opts . runtimeConfig . hideEditorTab ? styles [ 'hide-editor-tab' ] : '' ;
3122 const root = createRoot ( domElement ) ;
3223
33- root . render ( < Root status = " loading" theme = { themeType } Landing = { Landing } className = { className } /> ) ;
24+ root . render ( < Root status = ' loading' theme = { themeType } Landing = { Landing } className = { className } /> ) ;
3425
3526 app
3627 . start ( ( Children ) => {
3728 return new Promise ( ( resolve ) => {
3829 root . render (
39- < Root status = " success" theme = { themeType } className = { className } >
30+ < Root status = ' success' theme = { themeType } className = { className } >
4031 < Children />
41- </ Root >
32+ </ Root > ,
4233 ) ;
4334 } ) ;
4435 } )
@@ -47,13 +38,13 @@ export const renderApp = (domElement: HTMLElement, props: IAppRendererProps) =>
4738 } )
4839 . catch ( ( err : Error ) => {
4940 root . render (
50- < Root status = " error" error = { err ?. message || localize ( 'error.unknown' ) } theme = { themeType } />
41+ < Root status = ' error' error = { err ?. message || localize ( 'error.unknown' ) } theme = { themeType } /> ,
5142 ) ;
5243
5344 ( app . injector . get ( IReporterService ) as IReporterService ) . point (
5445 REPORT_NAME . ALEX_APP_START_ERROR ,
5546 err ?. message ,
56- { error : err }
47+ { error : err } ,
5748 ) ;
5849 getDebugLogger ( ) . error ( err ) ;
5950 setTimeout ( ( ) => {
@@ -99,7 +90,7 @@ export const AppRenderer: React.FC<IAppRendererProps> = ({ onLoad, Landing, ...o
9990 err ?. message ,
10091 {
10192 error : err ,
102- }
93+ } ,
10394 ) ;
10495 getDebugLogger ( ) . error ( err ) ;
10596 setTimeout ( ( ) => {
@@ -114,7 +105,7 @@ export const AppRenderer: React.FC<IAppRendererProps> = ({ onLoad, Landing, ...o
114105
115106 const rootClassName = useMemo (
116107 ( ) => ( opts . runtimeConfig . hideEditorTab ? styles [ 'hide-editor-tab' ] : '' ) ,
117- [ opts . runtimeConfig . hideEditorTab ]
108+ [ opts . runtimeConfig . hideEditorTab ] ,
118109 ) ;
119110
120111 return (
0 commit comments