HEIC decoder: libheif-js 1.23.5, LGPL-3.0, unmodified upstream ES module. Includes libheif and libde265 1.0.15 (LGPL); no x264/x265 or HEVC encoder. License: COPYING (LGPL-3.0 + GPL-3.0 incorporated terms), LGPL-3.0.txt. Upstream package: https://registry.npmjs.org/libheif-js/-/libheif-js-1.23.5.tgz Build source: https://github.com/catdad-experiments/libheif-emscripten/tree/v1.23.5 libheif source: https://github.com/strukturag/libheif/tree/413e2a87e6a70b3eccc3a3adc5801179dd2d9e00 To obtain all corresponding sources, including libde265 and build scripts: git clone --branch v1.23.5 --recurse-submodules https://github.com/catdad-experiments/libheif-emscripten.git cd libheif-emscripten Follow .github/workflows/emscripten.yml (Emscripten 3.1.61, USE_WASM=1, USE_UNSAFE_EVAL=0). libheif/build-emscripten.sh obtains libde265 1.0.15 decoder sources. Source tarball: https://github.com/strukturag/libde265/releases/download/v1.0.15/libde265-1.0.15.tar.gz Wrapper source and original package build instructions: https://github.com/catdad-experiments/libheif-js/tree/d8ec4bc3bc5bf8055975577bccbbc7e1d7313c2d scripts/install.js, scripts/bundle.js (package version 1.23.5). Replacement: replace libheif-bundle.mjs at this same path with a compatible HeifDecoder ES module default factory. It is imported at runtime without integrity checks, bundling, or a signature requirement. The application allows reverse engineering for debugging modifications to this library. Removing this module disables only HEIC fallback; native HEIC decoding and other image/PDF formats remain usable. Users may replace this local response in browser developer tools (Local Overrides) without changing any application bundle.