Skip to content

Commit 315c20f

Browse files
committed
fix(core): avoid side effects (#8245)
1 parent 22e1f9c commit 315c20f

File tree

49 files changed

+169
-148
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+169
-148
lines changed

packages/frontend/apps/electron/renderer/app.tsx

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
import '@affine/component/theme/global.css';
2-
import '@affine/component/theme/theme.css';
3-
41
import { AffineContext } from '@affine/component/context';
52
import { GlobalLoading } from '@affine/component/global-loading';
63
import { AppFallback } from '@affine/core/components/affine/app-container';

packages/frontend/apps/electron/renderer/index.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import './setup';
2-
import './global.css';
32

43
import { appConfigProxy } from '@affine/core/components/hooks/use-app-config-storage';
54
import { apis, appInfo, events } from '@affine/electron-api';

packages/frontend/apps/electron/renderer/setup.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
import { setupBlocksuite, setupElectron } from '@affine/core/bootstrap';
1+
import '@affine/component/theme';
2+
import './global.css';
3+
4+
import { setupElectron } from '@affine/core/bootstrap';
25

36
setupElectron();
4-
setupBlocksuite();
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import { ThemeProvider } from '@affine/component/theme-provider';
2+
import { ShellAppFallback } from '@affine/core/components/affine/app-container';
3+
import { useAppSettingHelper } from '@affine/core/components/hooks/affine/use-app-setting-helper';
4+
import {
5+
AppTabsHeader,
6+
configureAppTabsHeaderModule,
7+
} from '@affine/core/modules/app-tabs-header';
8+
import { configureElectronStateStorageImpls } from '@affine/core/modules/storage';
9+
import { SplitViewFallback } from '@affine/core/modules/workbench/view/split-view/split-view';
10+
import {
11+
configureGlobalStorageModule,
12+
Framework,
13+
FrameworkRoot,
14+
} from '@toeverything/infra';
15+
16+
import * as styles from './app.css';
17+
18+
const framework = new Framework();
19+
configureGlobalStorageModule(framework);
20+
configureElectronStateStorageImpls(framework);
21+
configureAppTabsHeaderModule(framework);
22+
const frameworkProvider = framework.provider();
23+
24+
export function App() {
25+
const { appSettings } = useAppSettingHelper();
26+
const translucent =
27+
BUILD_CONFIG.isElectron &&
28+
environment.isMacOs &&
29+
appSettings.enableBlurBackground;
30+
return (
31+
<FrameworkRoot framework={frameworkProvider}>
32+
<ThemeProvider>
33+
<div className={styles.root} data-translucent={translucent}>
34+
<AppTabsHeader mode="shell" className={styles.appTabsHeader} />
35+
<ShellAppFallback className={styles.fallbackRoot}>
36+
<SplitViewFallback className={styles.splitViewFallback} />
37+
</ShellAppFallback>
38+
</div>
39+
</ThemeProvider>
40+
</FrameworkRoot>
41+
);
42+
}

packages/frontend/apps/electron/renderer/shell/index.tsx

Lines changed: 5 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,17 @@
1-
import '@affine/component/theme/global.css';
2-
import '@affine/component/theme/theme.css';
3-
import '../global.css';
41
import './setup';
52

6-
import { ThemeProvider } from '@affine/component/theme-provider';
7-
import { configureAppTabsHeaderModule } from '@affine/core/modules/app-tabs-header';
8-
import { configureElectronStateStorageImpls } from '@affine/core/modules/storage';
93
import { apis, events } from '@affine/electron-api';
104
import { createI18n, setUpLanguage } from '@affine/i18n';
11-
import {
12-
configureGlobalStorageModule,
13-
Framework,
14-
FrameworkRoot,
15-
} from '@toeverything/infra';
165
import { StrictMode } from 'react';
176
import { createRoot } from 'react-dom/client';
187

19-
import { ShellRoot } from './shell';
8+
import { App } from './app';
209

21-
const framework = new Framework();
22-
configureGlobalStorageModule(framework);
23-
configureElectronStateStorageImpls(framework);
24-
configureAppTabsHeaderModule(framework);
25-
const frameworkProvider = framework.provider();
26-
27-
async function loadLanguage() {
10+
function loadLanguage() {
2811
const i18n = createI18n();
2912
document.documentElement.lang = i18n.language;
3013

31-
await setUpLanguage(i18n);
14+
setUpLanguage(i18n).catch(console.error);
3215
}
3316

3417
async function main() {
@@ -48,7 +31,7 @@ async function main() {
4831
events?.ui.onFullScreen(handleFullscreen);
4932
events?.ui.onTabShellViewActiveChange(handleActive);
5033

51-
await loadLanguage();
34+
loadLanguage();
5235
mountApp();
5336
}
5437

@@ -59,11 +42,7 @@ function mountApp() {
5942
}
6043
createRoot(root).render(
6144
<StrictMode>
62-
<FrameworkRoot framework={frameworkProvider}>
63-
<ThemeProvider>
64-
<ShellRoot />
65-
</ThemeProvider>
66-
</FrameworkRoot>
45+
<App />
6746
</StrictMode>
6847
);
6948
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
import '@affine/component/theme';
2+
import '../global.css';
3+
14
import { setupElectron } from '@affine/core/bootstrap';
25

36
setupElectron();

packages/frontend/apps/electron/renderer/shell/shell.tsx

Lines changed: 0 additions & 22 deletions
This file was deleted.

packages/frontend/apps/mobile/src/app.tsx

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
import '@affine/component/theme/global.css';
2-
import '@affine/component/theme/theme.css';
3-
import '@affine/core/mobile/styles/mobile.css';
4-
51
import { AffineContext } from '@affine/component/context';
62
import { AppFallback } from '@affine/core/components/affine/app-container';
73
import { Telemetry } from '@affine/core/components/telemetry';

packages/frontend/apps/mobile/src/setup.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
import { setupBlocksuite, setupBrowser } from '@affine/core/bootstrap';
1+
import '@affine/component/theme';
2+
import '@affine/core/mobile/styles/mobile.css';
3+
4+
import { setupBrowser } from '@affine/core/bootstrap';
25

36
await setupBrowser();
4-
setupBlocksuite();

0 commit comments

Comments
 (0)