Files
wehub-resource-sync da10c3c2c3
Publish Any Commit / build (22) (push) Failing after 1s
Build Extension / build (push) Failing after 1s
chore: import upstream snapshot with attribution
2026-07-13 12:20:35 +08:00

34 lines
945 B
TypeScript

import * as esbuild from 'esbuild';
/**
* A hacky plugin to build the worker file (resolving all imports), and inline
* the javascript into a variable by replacing __WORKER_CODE__ string in bundle with the worker
* build output
*/
export const workerPlugin = {
name: 'worker-plugin',
setup(build) {
const workerResult = esbuild.buildSync({
entryPoints: ['src/new-outlines/offscreen-canvas.worker.ts'],
bundle: true,
write: false,
format: 'iife',
platform: 'browser',
minify: true,
});
const workerCode = workerResult.outputFiles[0].text;
build.onEnd((result) => {
if (!result.outputFiles) return;
for (const file of result.outputFiles) {
const newText = file.text.replace(
'var workerCode = "__WORKER_CODE__"',
`var workerCode = ${JSON.stringify(workerCode)}`,
);
file.contents = Buffer.from(newText);
}
});
},
};