Skip to content

Commit

Permalink
generate service worker at different stages depending on mode
Browse files Browse the repository at this point in the history
  • Loading branch information
vursen committed Jan 23, 2025
1 parent a544568 commit 574ba0c
Showing 1 changed file with 17 additions and 9 deletions.
26 changes: 17 additions & 9 deletions flow-server/src/main/resources/vite.generated.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import {
PluginOption,
build,
UserConfigFn,
ResolvedConfig
InlineConfig
} from 'vite';
import { getManifest, type ManifestTransform } from 'workbox-build';

Expand Down Expand Up @@ -119,16 +119,13 @@ function injectManifestToSWPlugin(): rollup.Plugin {

function buildSWPlugin(opts: { devMode: boolean }): PluginOption {
const { devMode } = opts;
let viteConfig: ResolvedConfig;
let buildConfig: InlineConfig;

return {
name: 'vaadin:build-sw',
enforce: 'post',
async configResolved(resolvedConfig) {
viteConfig = resolvedConfig;
},
async closeBundle() {
await build({
async configResolved(viteConfig) {
buildConfig = {
base: viteConfig.base,
root: viteConfig.root,
mode: viteConfig.mode,
Expand All @@ -141,6 +138,7 @@ function buildSWPlugin(opts: { devMode: boolean }): PluginOption {
minify: viteConfig.build.minify,
outDir: viteConfig.build.outDir,
sourcemap: viteConfig.command === 'serve' || viteConfig.build.sourcemap,
emptyOutDir: false,
modulePreload: false,
lib: {
entry: settings.clientServiceWorkerSource,
Expand All @@ -152,15 +150,25 @@ function buildSWPlugin(opts: { devMode: boolean }): PluginOption {
},
rollupOptions: {
output: {
entryChunkNames: 'sw.js',
entryFileNames: 'sw.js',
},
},
},
plugins: [
!devMode && injectManifestToSWPlugin(),
!devMode && brotli()
]
});
};
},
async buildStart() {
if (devMode) {
await build(buildConfig);
}
},
async closeBundle() {
if (!devMode) {
await build(buildConfig);
}
},
};
}
Expand Down

0 comments on commit 574ba0c

Please sign in to comment.