diff --git a/gulpfile.mjs b/gulpfile.mjs index a204a3984..0e0a5a1ac 100644 --- a/gulpfile.mjs +++ b/gulpfile.mjs @@ -650,10 +650,12 @@ function createStandardFontBundle() { } function createWasmBundle() { - return gulp.src(["external/openjpeg/openjpeg.wasm"], { - base: "external/openjpeg", - encoding: false, - }); + return ordered([ + gulp.src(["external/openjpeg/*.wasm"], { + base: "external/openjpeg", + encoding: false, + }), + ]); } function checkFile(filePath) { @@ -2077,6 +2079,15 @@ gulp.task( ) ); +gulp.task("dev-wasm", function () { + const VIEWER_WASM_OUTPUT = "web/wasm/"; + + fs.rmSync(VIEWER_WASM_OUTPUT, { recursive: true, force: true }); + fs.mkdirSync(VIEWER_WASM_OUTPUT, { recursive: true }); + + return createWasmBundle().pipe(gulp.dest(VIEWER_WASM_OUTPUT)); +}); + gulp.task( "dev-sandbox", gulp.series( @@ -2112,6 +2123,13 @@ gulp.task( gulp.series("locale") ); }, + function watchWasm() { + gulp.watch( + "external/openjpeg/*", + { ignoreInitial: false }, + gulp.series("dev-wasm") + ); + }, function watchDevSandbox() { gulp.watch( [ diff --git a/web/.gitignore b/web/.gitignore index ae623f7cd..334d49db0 100644 --- a/web/.gitignore +++ b/web/.gitignore @@ -1,3 +1,3 @@ -locale.properties locale/ cmaps/ +wasm/ diff --git a/web/app_options.js b/web/app_options.js index a556e4d47..31e47c40f 100644 --- a/web/app_options.js +++ b/web/app_options.js @@ -434,12 +434,9 @@ const defaultOptions = { wasmUrl: { /** @type {string} */ value: - // eslint-disable-next-line no-nested-ternary - typeof PDFJSDev === "undefined" - ? "../external/openjpeg/" - : PDFJSDev.test("MOZCENTRAL") - ? "resource://pdf.js/web/wasm/" - : "../web/wasm/", + typeof PDFJSDev !== "undefined" && PDFJSDev.test("MOZCENTRAL") + ? "resource://pdf.js/web/wasm/" + : "../web/wasm/", kind: OptionKind.API, },