Use proper Vite syntax

This commit is contained in:
2025-10-02 18:24:11 +03:00
Unverified
parent a24270b37a
commit 2995bc96ac
2 changed files with 4 additions and 45 deletions
@@ -2,6 +2,7 @@ import { API_BASE_URL } from "../core/config";
import { isElectron } from "../electron/electron";
import { websocket } from "../core/websocket";
import type { NewMessageWebSocketMessage, WebSocketMessage } from "../core/types";
import serviceWorker from "../service-worker/service-worker.ts?worker&url";
export interface PushSubscriptionData {
endpoint: string;
@@ -152,7 +153,7 @@ export async function initialize(): Promise<boolean> {
}
try {
registration = await navigator.serviceWorker.register("/assets/serviceWorker.js");
registration = await navigator.serviceWorker.register(serviceWorker, { type: "module" });
console.log("Service Worker registered successfully");
const permission = await Notification.requestPermission();
+2 -44
View File
@@ -5,8 +5,6 @@ import electron from "vite-plugin-electron/simple";
import react from "@vitejs/plugin-react";
import { resolve } from "path";
const serviceWorkerPath = resolve(__dirname, "src/service-worker/service-worker.ts");
const plugins: PluginOption[] = [
react(),
createHtmlPlugin({
@@ -20,31 +18,7 @@ const plugins: PluginOption[] = [
minifyCSS: true,
minifyJS: true
}
}),
{
name: 'service-worker-redirect',
configureServer(server) {
server.middlewares.use(async (req, res, next) => {
if (req.url === '/assets/serviceWorker.js') {
try {
const traspiled = await server.transformRequest(serviceWorkerPath);
res.writeHead(200, {
'Content-Type': "application/javascript"
});
res.end(traspiled!.code);
} catch (e) {
try {
res.writeHead(500);
res.end();
} catch (e) {}
}
} else {
next();
}
});
}
}
})
]
if (process.env.VITE_ELECTRON) {
@@ -107,22 +81,6 @@ export default defineConfig({
cssMinify: true,
assetsInlineLimit: 0,
outDir: process.env.VITE_ELECTRON ? "build/electron/dist" : "build/normal/dist",
chunkSizeWarningLimit: 1024,
rollupOptions: {
input: {
main: resolve(__dirname, "index.html"),
serviceWorker: serviceWorkerPath
},
output: {
entryFileNames: (chunkInfo) => {
// Проверяем имя чанка
if (chunkInfo.name === 'serviceWorker') {
return 'assets/serviceWorker.js'; // Указываем фиксированное имя для этого скрипта
}
// Для остальных файлов используем стандартное именование с хэшем
return 'assets/[name]-[hash].js';
}
}
}
chunkSizeWarningLimit: 1024
}
});