mirror of
https://github.com/BetterSEQTA/BetterSEQTA-Plus.git
synced 2026-08-28 09:11:06 +00:00
fix: fix builds not lazy loadin
This commit is contained in:
+14
-11
@@ -1,7 +1,6 @@
|
|||||||
import "./index.css";
|
import "./index.css";
|
||||||
import Settings from "./pages/settings.svelte";
|
import Settings from "./pages/settings.svelte";
|
||||||
import IconFamily from "@/resources/fonts/IconFamily.woff";
|
import IconFamily from "@/resources/fonts/IconFamily.woff";
|
||||||
import browser from "webextension-polyfill";
|
|
||||||
import { resolveExtensionAssetUrl } from "@/lib/extensionAssetUrl";
|
import { resolveExtensionAssetUrl } from "@/lib/extensionAssetUrl";
|
||||||
import renderSvelte from "./main";
|
import renderSvelte from "./main";
|
||||||
import { initializeSettingsState } from "@/seqta/utils/listeners/SettingsState";
|
import { initializeSettingsState } from "@/seqta/utils/listeners/SettingsState";
|
||||||
@@ -24,14 +23,18 @@ function InjectCustomIcons() {
|
|||||||
|
|
||||||
const mountPoint = document.getElementById("app");
|
const mountPoint = document.getElementById("app");
|
||||||
if (!mountPoint) {
|
if (!mountPoint) {
|
||||||
console.error("Mount point #app not found");
|
// In production, Rollup may put this entry in a shared chunk that content
|
||||||
throw new Error("Mount point #app not found");
|
// scripts load via `import("@/interface/main")`. Only the settings page
|
||||||
|
// has `#app` — never throw on SEQTA tabs.
|
||||||
|
verboseInfo(
|
||||||
|
"[BetterSEQTA+] Settings bootstrap skipped (no #app — not the settings page)",
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
InjectCustomIcons();
|
||||||
|
|
||||||
|
void (async () => {
|
||||||
|
await initializeSettingsState();
|
||||||
|
initVerboseLogging();
|
||||||
|
renderSvelte(Settings, mountPoint, { standalone: true });
|
||||||
|
})();
|
||||||
}
|
}
|
||||||
|
|
||||||
InjectCustomIcons();
|
|
||||||
|
|
||||||
(async () => {
|
|
||||||
await initializeSettingsState();
|
|
||||||
initVerboseLogging();
|
|
||||||
renderSvelte(Settings, mountPoint, { standalone: true });
|
|
||||||
})();
|
|
||||||
|
|||||||
@@ -147,6 +147,18 @@ export default defineConfig(({ command, mode: viteMode }) => {
|
|||||||
},
|
},
|
||||||
output: {
|
output: {
|
||||||
assetFileNames: "assets/[name]-[hash][extname]",
|
assetFileNames: "assets/[name]-[hash][extname]",
|
||||||
|
manualChunks(id) {
|
||||||
|
const normalized = id.replace(/\\/g, "/");
|
||||||
|
// Keep the Svelte mount helper out of the settings entry chunk so
|
||||||
|
// content-script `import("@/interface/main")` does not execute
|
||||||
|
// settings-page bootstrap (which requires #app).
|
||||||
|
if (
|
||||||
|
normalized.endsWith("/interface/main.ts") ||
|
||||||
|
normalized.endsWith("/interface/main.js")
|
||||||
|
) {
|
||||||
|
return "interface-main";
|
||||||
|
}
|
||||||
|
},
|
||||||
},
|
},
|
||||||
onwarn(warning, warn) {
|
onwarn(warning, warn) {
|
||||||
if (warning.code === "FILE_NAME_CONFLICT") return;
|
if (warning.code === "FILE_NAME_CONFLICT") return;
|
||||||
|
|||||||
Reference in New Issue
Block a user