Files
crowd-funder-for-time-pwa/vite.config.web.mts

30 lines
873 B
TypeScript

import { defineConfig, mergeConfig } from "vite";
import { VitePWA } from "vite-plugin-pwa";
import { createBuildConfig } from "./vite.config.common.mts";
import { loadPwaConfig } from "./vite.config.common-utils.mts";
import { BuildPlatform } from "./src/interfaces/build.ts";
export default defineConfig(async () => {
const baseConfig = await createBuildConfig(BuildPlatform.Web);
const pwaConfig = await loadPwaConfig();
return mergeConfig(baseConfig, {
plugins: [
VitePWA({
registerType: 'autoUpdate',
manifest: pwaConfig.manifest,
devOptions: {
enabled: false
},
workbox: {
cleanupOutdatedCaches: true,
skipWaiting: true,
clientsClaim: true,
sourcemap: true,
maximumFileSizeToCacheInBytes: 10 * 1024 * 1024 // 10MB
}
})
]
});
});