From 89f7cfa6440169728fc1759ec169ab453cb2c4e6 Mon Sep 17 00:00:00 2001 From: Vitaly Turovsky Date: Sun, 18 Aug 2024 14:39:02 +0300 Subject: [PATCH] feat: optimize build: load faster by 15% and do not duplicate three js import (tree-shake instead) --- rsbuild.config.ts | 12 +++++++----- src/index.ts | 3 +-- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/rsbuild.config.ts b/rsbuild.config.ts index bb5750f7..b467ebae 100644 --- a/rsbuild.config.ts +++ b/rsbuild.config.ts @@ -54,6 +54,7 @@ export default defineConfig({ crypto: './src/shims/crypto.js', dns: './src/shims/dns.js', yggdrasil: './src/shims/yggdrasilReplacement.ts', + 'three$': 'three/src/Three.js' }, entry: { index: './src/index.ts', @@ -182,9 +183,10 @@ export default defineConfig({ ] } }, - performance: { - // bundleAnalyze: { - // analyzerMode: 'json', - // }, - }, + // performance: { + // bundleAnalyze: { + // analyzerMode: 'json', + // reportFilename: 'report.json', + // }, + // }, }) diff --git a/src/index.ts b/src/index.ts index 39626d54..3d311faa 100644 --- a/src/index.ts +++ b/src/index.ts @@ -98,7 +98,6 @@ import { signInMessageState } from './react/SignInMessageProvider' import { updateAuthenticatedAccountData, updateLoadedServerData } from './react/ServersListProvider' import { versionToNumber } from 'prismarine-viewer/viewer/prepare/utils' import packetsPatcher from './packetsPatcher' -import blockstatesModels from 'mc-assets/dist/blockStatesModels.json' import { mainMenuState } from './react/MainMenuRenderApp' import { ItemsRenderer } from 'mc-assets/dist/itemsRenderer' import './mobileShim' @@ -410,7 +409,7 @@ async function connect (connectOptions: ConnectOptions) { throw err } } - viewer.world.blockstatesModels = blockstatesModels + viewer.world.blockstatesModels = await import('mc-assets/dist/blockStatesModels.json') viewer.setVersion(version, options.useVersionsTextures === 'latest' ? version : options.useVersionsTextures) }