diff --git a/.github/workflows/update-embedpdf-snippet.yml b/.github/workflows/update-bentopdf-viewer.yml similarity index 62% rename from .github/workflows/update-embedpdf-snippet.yml rename to .github/workflows/update-bentopdf-viewer.yml index 9e91d4bb..f7bf4206 100644 --- a/.github/workflows/update-embedpdf-snippet.yml +++ b/.github/workflows/update-bentopdf-viewer.yml @@ -1,4 +1,4 @@ -name: Update EmbedPDF Snippet +name: Update BentoPDF Viewer on: workflow_dispatch: @@ -17,17 +17,17 @@ jobs: - name: Read current upstream version marker id: current-version run: | - if [ -f vendor/embedpdf/.upstream-version ]; then - CUR=$(cat vendor/embedpdf/.upstream-version) + if [ -f vendor/bentopdf-viewer/.upstream-version ]; then + CUR=$(cat vendor/bentopdf-viewer/.upstream-version) else CUR="" fi echo "version=$CUR" >> "$GITHUB_OUTPUT" - - name: Read latest upstream version (@embedpdf/core) + - name: Read latest commit from our viewer fork (v2 branch) id: upstream-version run: | - LATEST=$(npm view @embedpdf/core version) + LATEST=$(git ls-remote https://github.com/alam00000/bentopdf-pdfium-viewer refs/heads/v2 | cut -c1-12) echo "version=$LATEST" >> "$GITHUB_OUTPUT" - name: Should update? @@ -48,12 +48,12 @@ jobs: - name: Prepare workspace if: steps.gate.outputs.run == 'true' run: | - mkdir -p vendor/embedpdf + mkdir -p vendor/bentopdf-viewer npm config set cache ./\.npm-cache - - name: Clone upstream embed-pdf-viewer + - name: Clone our viewer fork if: steps.gate.outputs.run == 'true' - run: git clone --depth 1 --branch main https://github.com/embedpdf/embed-pdf-viewer ./_upstream/embed-pdf-viewer + run: git clone --depth 1 --branch v2 https://github.com/alam00000/bentopdf-pdfium-viewer ./_fork/bentopdf-pdfium-viewer - name: Setup Node if: steps.gate.outputs.run == 'true' @@ -64,55 +64,57 @@ jobs: - name: Install upstream deps if: steps.gate.outputs.run == 'true' - working-directory: ./_upstream/embed-pdf-viewer + working-directory: ./_fork/bentopdf-pdfium-viewer run: pnpm install --no-frozen-lockfile - name: Build snippet if: steps.gate.outputs.run == 'true' - working-directory: ./_upstream/embed-pdf-viewer + working-directory: ./_fork/bentopdf-pdfium-viewer run: pnpm run build:snippet - name: Pack snippet tarball if: steps.gate.outputs.run == 'true' - working-directory: ./_upstream/embed-pdf-viewer + working-directory: ./_fork/bentopdf-pdfium-viewer run: | - npm pack ./viewers/snippet --pack-destination ../../vendor/embedpdf - ls -l ../../vendor/embedpdf + npm pack ./viewers/snippet --pack-destination ../../vendor/bentopdf-viewer + ls -l ../../vendor/bentopdf-viewer - name: Sanitize tarball (rename pkg and pin deps) if: steps.gate.outputs.run == 'true' env: UPSTREAM_VERSION: ${{ steps.upstream-version.outputs.version }} run: | - TARBALL=$(ls vendor/embedpdf/*.tgz | sort | tail -n1) + TARBALL=$(ls vendor/bentopdf-viewer/*.tgz | sort | tail -n1) TMP=$(mktemp -d) tar -xzf "$TARBALL" -C "$TMP" PKG="$TMP/package/package.json" PKG="$PKG" node - <<'NODE' const fs = require("fs"); const path = process.env.PKG; - const ver = process.env.UPSTREAM_VERSION || "1.4.1"; const pkg = JSON.parse(fs.readFileSync(path, "utf8")); - pkg.name = "embedpdf-snippet"; + pkg.name = "bentopdf-viewer"; pkg.dependencies = pkg.dependencies || {}; + // The rollup bundle inlines every @embedpdf/* package, so these + // declared deps would only pull unused copies from upstream npm. for (const k of Object.keys(pkg.dependencies)) { - if (k.startsWith("@embedpdf/")) pkg.dependencies[k] = `^${ver}`; + if (k.startsWith("@embedpdf/")) delete pkg.dependencies[k]; if (k === "preact") pkg.dependencies[k] = "^10.17.0"; } fs.writeFileSync(path, JSON.stringify(pkg, null, 2) + "\n"); NODE - NEW=vendor/embedpdf/embedpdf-snippet-${UPSTREAM_VERSION}.tgz + PKG_VERSION=$(node -p "require('./$TMP/package/package.json').version" 2>/dev/null || node -p "require('$TMP/package/package.json').version") + NEW=vendor/bentopdf-viewer/bentopdf-viewer-${PKG_VERSION}.tgz tar -czf "$NEW" -C "$TMP" package # Remove any older snippet tarballs, keep only the new one - find vendor/embedpdf -maxdepth 1 -name 'embedpdf-snippet-*.tgz' ! -name "$(basename "$NEW")" -delete + find vendor/bentopdf-viewer -maxdepth 1 -name 'bentopdf-viewer-*.tgz' ! -name "$(basename "$NEW")" -delete rm -rf "$TMP" - ls -l vendor/embedpdf + ls -l vendor/bentopdf-viewer - name: Update package.json dependency path if: steps.gate.outputs.run == 'true' run: | - TARBALL=$(ls vendor/embedpdf/embedpdf-snippet-*.tgz | sort | tail -n1) - node -e "const fs=require('fs');const pkg=require('./package.json');const tar=process.argv[1];pkg.dependencies['embedpdf-snippet']='file:'+tar;fs.writeFileSync('package.json',JSON.stringify(pkg,null,2)+'\n');" "$TARBALL" + TARBALL=$(ls vendor/bentopdf-viewer/bentopdf-viewer-*.tgz | sort | tail -n1) + node -e "const fs=require('fs');const pkg=require('./package.json');const tar=process.argv[1];pkg.dependencies['bentopdf-viewer']='file:'+tar;fs.writeFileSync('package.json',JSON.stringify(pkg,null,2)+'\n');" "$TARBALL" - name: Refresh lockfile if: steps.gate.outputs.run == 'true' @@ -121,7 +123,7 @@ jobs: - name: Write upstream version marker if: steps.gate.outputs.run == 'true' run: | - echo "${{ steps.upstream-version.outputs.version }}" > vendor/embedpdf/.upstream-version + echo "${{ steps.upstream-version.outputs.version }}" > vendor/bentopdf-viewer/.upstream-version - name: Cleanup upstream clone if: steps.gate.outputs.run == 'true' @@ -131,11 +133,11 @@ jobs: if: steps.gate.outputs.run == 'true' uses: peter-evans/create-pull-request@v6 with: - commit-message: "build(deps): bump embedpdf-snippet from ${{ steps.current-version.outputs.version }} to ${{ steps.upstream-version.outputs.version }}" - title: "build(deps): bump embedpdf-snippet from ${{ steps.current-version.outputs.version }} to ${{ steps.upstream-version.outputs.version }}" + commit-message: "build(deps): bump bentopdf-viewer from ${{ steps.current-version.outputs.version }} to ${{ steps.upstream-version.outputs.version }}" + title: "build(deps): bump bentopdf-viewer from ${{ steps.current-version.outputs.version }} to ${{ steps.upstream-version.outputs.version }}" body: | - Build snippet from upstream embed-pdf-viewer via `npm run build:snippet` - - Pack tarball into `vendor/embedpdf/` and point dependency to it + - Pack tarball into `vendor/bentopdf-viewer/` and point dependency to it - Refresh package-lock.json - branch: chore/update-embedpdf-snippet + branch: chore/update-bentopdf-viewer delete-branch: true diff --git a/package-lock.json b/package-lock.json index bf04e701..567f45a5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "bento-pdf", - "version": "2.8.6", + "version": "2.8.7", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "bento-pdf", - "version": "2.8.6", + "version": "2.8.7", "license": "AGPL-3.0-only", "dependencies": { "@fontsource/cedarville-cursive": "^5.2.7", @@ -27,12 +27,12 @@ "@types/node-forge": "^1.3.14", "@types/papaparse": "^5.5.2", "archiver": "^7.0.1", + "bentopdf-viewer": "file:vendor/bentopdf-viewer/bentopdf-viewer-2.9.1.tgz", "blob-stream": "^0.1.3", "bwip-js": "^4.8.0", "cropperjs": "^1.6.2", "diff": "^8.0.3", "dompurify": "^3.4.12", - "embedpdf-snippet": "file:vendor/embedpdf/embedpdf-snippet-2.9.1.tgz", "fast-xml-parser": "^5.7.1", "heic2any": "^0.0.4", "highlight.js": "^11.11.1", @@ -448,6 +448,7 @@ "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -457,6 +458,7 @@ "version": "7.28.5", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -466,6 +468,7 @@ "version": "7.29.2", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.29.0" @@ -490,6 +493,7 @@ "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -725,564 +729,6 @@ } } }, - "node_modules/@embedpdf/core": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/core/-/core-2.9.1.tgz", - "integrity": "sha512-DlFV2o+tv9S+j4TeBVkRaIjjE9o3Tq3+hvJNoIOFtl87cR77UVQqEIRqOf61yk85Y+T2LfmnVPWjNcMuiKUh8w==", - "license": "MIT", - "dependencies": { - "@embedpdf/engines": "2.9.1", - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/engines": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/engines/-/engines-2.9.1.tgz", - "integrity": "sha512-zyUdKgM2BZVzkqkbIMiTPAKIdH4M3bRV91P1nXUJUU94AmL9DrDrMkf2Nv6+S0bxGt19OpqDlclGSRZ8txhbGw==", - "license": "MIT", - "dependencies": { - "@embedpdf/fonts-arabic": "1.0.0", - "@embedpdf/fonts-hebrew": "1.0.0", - "@embedpdf/fonts-jp": "1.0.0", - "@embedpdf/fonts-kr": "1.0.0", - "@embedpdf/fonts-latin": "1.0.0", - "@embedpdf/fonts-sc": "1.0.0", - "@embedpdf/fonts-tc": "1.0.0", - "@embedpdf/models": "2.9.1", - "@embedpdf/pdfium": "2.9.1" - }, - "peerDependencies": { - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/fonts-arabic": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@embedpdf/fonts-arabic/-/fonts-arabic-1.0.0.tgz", - "integrity": "sha512-SnGvQb+LwPZQO2WjjvlmXrJZolJUfLYbLZQSaYUw1vrQyMyJKT4LewvJGG+hZ+Yz2fz7OMIQ+4Gc98mGODZtOg==", - "license": "OFL-1.1" - }, - "node_modules/@embedpdf/fonts-hebrew": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@embedpdf/fonts-hebrew/-/fonts-hebrew-1.0.0.tgz", - "integrity": "sha512-5HVAKGL7VqPeTxxADDrSqAFBxfmAXdP8fIqrPwJIKkqdK2643bOer8CqnnpO3/nPoFhkzxhttWMB9BGiqSW62w==", - "license": "OFL-1.1" - }, - "node_modules/@embedpdf/fonts-jp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@embedpdf/fonts-jp/-/fonts-jp-1.0.0.tgz", - "integrity": "sha512-BY2tv/mcICUUKf+M/bizf3RU65PMqKClJ/e5o9mgMibxyML0OQvEDwYMRPODQkKgJKXCO3ScHmVvcmXp6kt+fA==", - "license": "OFL-1.1" - }, - "node_modules/@embedpdf/fonts-kr": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@embedpdf/fonts-kr/-/fonts-kr-1.0.0.tgz", - "integrity": "sha512-bh88HXSvOBS581kgmihWY7Ijp9hBsvlmXogFG5LSNx9UBAobRcakZiFMGieRBc06hUSkpo7WhjaFM/z/SfQ8dQ==", - "license": "OFL-1.1" - }, - "node_modules/@embedpdf/fonts-latin": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@embedpdf/fonts-latin/-/fonts-latin-1.0.0.tgz", - "integrity": "sha512-LLYysdr8O6sRNzhmW3PbF3AeA8xnqvOi4XLFfIfNlW5uEZ+qsJdcfd78Q78sFJMhlaOAYFMziMMsnOzmx463rA==", - "license": "OFL-1.1" - }, - "node_modules/@embedpdf/fonts-sc": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@embedpdf/fonts-sc/-/fonts-sc-1.0.0.tgz", - "integrity": "sha512-ETXl7XCwaQLSSvMO3EUDwMNqtL64kX2LlFxarTRi/NsIGGOIxUurGfKtrkmtnKHrWy1jAJSt6oxK2uJhvdvQIw==", - "license": "OFL-1.1" - }, - "node_modules/@embedpdf/fonts-tc": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@embedpdf/fonts-tc/-/fonts-tc-1.0.0.tgz", - "integrity": "sha512-rGZJbVD6DYS5BbXdpEMnWkpVF0Knar+bsiyb2o3+YRx7O8eyFubEBQUSUInirQk69HA6fc3GhYCg7TyC/oD76Q==", - "license": "OFL-1.1" - }, - "node_modules/@embedpdf/models": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/models/-/models-2.9.1.tgz", - "integrity": "sha512-hUKj30D+a9dDOQlbqbrpjaECDPIcw/526Vo/s+eqJBY8zDNUkZ6meX+aVUrKg8+ApBm2dcEdVo3ff7KgNRhUGw==", - "license": "MIT" - }, - "node_modules/@embedpdf/pdfium": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/pdfium/-/pdfium-2.9.1.tgz", - "integrity": "sha512-GUu1rDF3XP8X7UpQNnOCvc/jAX/Tw0NoUpOF0aEksVZ6CoujBxtu84P3kWAxcJl6cicyIJq1GAp9szHBSYrTrQ==", - "license": "MIT" - }, - "node_modules/@embedpdf/plugin-annotation": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-annotation/-/plugin-annotation-2.9.1.tgz", - "integrity": "sha512-aNtXjI3NUwz7kdmWsQIWzuS1QdZmuHXGCc+Kwl9u5O0PAgoj74OLsgoNEcFzz9m1rljyq3WPVnLczO6ByiifpQ==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1", - "@embedpdf/utils": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-history": "2.9.1", - "@embedpdf/plugin-interaction-manager": "2.9.1", - "@embedpdf/plugin-selection": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-attachment": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-attachment/-/plugin-attachment-2.9.1.tgz", - "integrity": "sha512-7fPPHLWHZE9SXZRPnibo6o/AkuiknJQckdNgO16g9EdbPbO6IDNg/8e8pyjK4Knc+ckyyF4gnJ1lemWswSELUw==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-bookmark": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-bookmark/-/plugin-bookmark-2.9.1.tgz", - "integrity": "sha512-5qgz4yBFEi6h1cogvn9q9CBObGdNLVfkX809kVNPHuRIYsghEieqYkdoh1BNwdP/bm9+D7a6pcXZrVvbXs5e5w==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-capture": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-capture/-/plugin-capture-2.9.1.tgz", - "integrity": "sha512-bIix6Z69ADBzJ7ZJ3MkU2I+rZkR/f6Sk0NwjLvYzF+C0aWTptBuU442/gydBGJpSjExhENeVrzMpgUhuijQ6sA==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-interaction-manager": "2.9.1", - "@embedpdf/plugin-render": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-commands": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-commands/-/plugin-commands-2.9.1.tgz", - "integrity": "sha512-sj74w52U05l5xO/5XZTyrALMBZbp5noWOdFK9d6p25onRq2Vc6Etw1PBtjWuI5I9VH5ICVivt0c0OB/0zb8Ipg==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-document-manager": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-document-manager/-/plugin-document-manager-2.9.1.tgz", - "integrity": "sha512-TrqkZvPIQxcWikL9Fmm8/qAJvI+uG7ahPXuyGyyF0JxkrrHCkUMCL8SPJN/fntcPnLJRIi3/K/xR5Qnt/L0aAg==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-export": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-export/-/plugin-export-2.9.1.tgz", - "integrity": "sha512-oYl8H0km1m75SYz17mVwxm9ljZvW0yBV8sTcyCa7YhnqE7yxtczu7jw3BrU3KW4Sua9mr9izhs3AixvWkTASQg==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-fullscreen": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-fullscreen/-/plugin-fullscreen-2.9.1.tgz", - "integrity": "sha512-1afbocRTpvzdXdh7X2hhKvGTKWIfvHz/waf5wKDUPlOM4Bpi6a4/x+MWPq2SwtTo/74iRDULprcc2dTVf4IK0Q==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-history": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-history/-/plugin-history-2.9.1.tgz", - "integrity": "sha512-3AcvSTT7fmqe1ve/FvR3lJ5q7t5JYmnnAg8LKc9ATsDjS9J5b0WE03Omz9a8/sL19iKq8xeR1+W28phgvlcKNw==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-i18n": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-i18n/-/plugin-i18n-2.9.1.tgz", - "integrity": "sha512-0B2dEamhKQRv1n36skMQAf/1qicf/0tVQD8A++6o9/af2xUFdqqC8yCCW0EJCe2GJRbITWQr6vIAU7VilisBuQ==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-interaction-manager": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-interaction-manager/-/plugin-interaction-manager-2.9.1.tgz", - "integrity": "sha512-/wpdStr1NeyMCvAEMVSCPC0a3zaMd+TSK4u8INsIo3b1RoFfb9iTlBB+qW/aaxvZJ/C7MChQ7cLX6VSKXK/6JQ==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-pan": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-pan/-/plugin-pan-2.9.1.tgz", - "integrity": "sha512-LH5fp/2xKWuEYb5cc5jNWdXkhgOL+8TEf4oLcgao6hK33aV1xry+HAg5ATy+OPpIJItCwjU/Lk7Mc7uibYcFlA==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-interaction-manager": "2.9.1", - "@embedpdf/plugin-viewport": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-print": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-print/-/plugin-print-2.9.1.tgz", - "integrity": "sha512-brTn0R8AVyAfpm0SYxz/8bg0e373n4KaeIgw5E51DSrczVr3zIgqYGSvXFbfbv57ZUp63Hb93sVorP1et2AeUw==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=18.0.0", - "react-dom": ">=18.0.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-redaction": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-redaction/-/plugin-redaction-2.9.1.tgz", - "integrity": "sha512-2R81U4ex/JU4IAJ0+G3eIMOwpq80HnAIZ2sI5yMhkDbz+ZZE/sdAP4JKTOFIbhTkwk7DmC222yW34dQJoX4tRQ==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1", - "@embedpdf/utils": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-annotation": "2.9.1", - "@embedpdf/plugin-history": "2.9.1", - "@embedpdf/plugin-interaction-manager": "2.9.1", - "@embedpdf/plugin-selection": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-render": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-render/-/plugin-render-2.9.1.tgz", - "integrity": "sha512-mtfu6uDxlz3+j0xPXfKyvuu8iCFjapPkbnx8vGQ0z2PBNAMm+05hsNIzxJSGMP2VCFo09SOz2zCs7ch9J6NeNg==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-rotate": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-rotate/-/plugin-rotate-2.9.1.tgz", - "integrity": "sha512-OgfMI2IsSPHKs4A0DGpmHpxuhoBcZjvw+tz+CXGBi6ILL6oS7z5wXhoMZfRgCgkvjII8RnmjBvmLeahoSaepAA==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-scroll": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-scroll/-/plugin-scroll-2.9.1.tgz", - "integrity": "sha512-+U3PSIUuNlIOTXzRhnPBP+Rx20sFOd3OPiowyI2EP/Kx/j5R/amgL/t2rjrpw9gjXEMEGsli9Fn4UqnVgMrPaQ==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-viewport": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-search": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-search/-/plugin-search-2.9.1.tgz", - "integrity": "sha512-NefZgXPfj1MW8i5bYEfuphpXXAODutJTtwCHpLff1YwPw6liuBug9G1lDKSpNddvp+7aSkTcXV5LYNhcPxb1vg==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-selection": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-selection/-/plugin-selection-2.9.1.tgz", - "integrity": "sha512-dVLjiLGnZDo0xO7lZulLGl3cJ/mO7BcA3PGO2uMdhqSWK4tAF/DrakvwXdD581VBwXD/C25EJhxiNa2L7mU4wg==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1", - "@embedpdf/utils": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-interaction-manager": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-spread": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-spread/-/plugin-spread-2.9.1.tgz", - "integrity": "sha512-s9J4tvoucNac8pUAHVhv3PWDWMZJyK0ikaG78VdGwh4G2iMo5HW1LKDJkJ29l1TjAuxhIoKihpfQbLgUgi7JHA==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-thumbnail": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-thumbnail/-/plugin-thumbnail-2.9.1.tgz", - "integrity": "sha512-TAEUkVxvvB5kh2VVGf9RMuJFq++CQgWpKJ62ed2GhB9WvVKP5gBYj7G5ff90TLCrAV8iXZL9ENKcHgGKxrZrYw==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-render": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-tiling": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-tiling/-/plugin-tiling-2.9.1.tgz", - "integrity": "sha512-UQ/gr/Rdzj7sMsgvtuClw6Jq25fMr+OEdW4tQmg2bV/MqpKptpOEUZ5Aiay4M03X3cgoxhS8UvobRMnjlpYljA==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-render": "2.9.1", - "@embedpdf/plugin-scroll": "2.9.1", - "@embedpdf/plugin-viewport": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-ui": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-ui/-/plugin-ui-2.9.1.tgz", - "integrity": "sha512-nub5aaf0Ntxq9U5yRUMA496etUkI/AbADba6xE7oJ7u4gyTcEndY19pnIwm/eRYcHCU09d7QWcn3bjtIX3PP2g==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-render": "2.9.1", - "@embedpdf/plugin-scroll": "2.9.1", - "@embedpdf/plugin-viewport": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-viewport": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-viewport/-/plugin-viewport-2.9.1.tgz", - "integrity": "sha512-bVhBuZHTppKV+OB5lBLqXQv+5oW1A7kAIc5UzsImBwl6NpwH+2PdVkelfrF37yEqnEF/mdxobriWSP0aOVl93w==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/plugin-zoom": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/plugin-zoom/-/plugin-zoom-2.9.1.tgz", - "integrity": "sha512-FVOYj+AKTc2aCPrZHOrgbiYNTfBmiwVpFCedmqeGLYOIYTIeGzwJlyIHLU0PmIC/nuHcu1ZFwh0tH23fWAfVCQ==", - "license": "MIT", - "dependencies": { - "@embedpdf/models": "2.9.1" - }, - "peerDependencies": { - "@embedpdf/core": "2.9.1", - "@embedpdf/plugin-scroll": "2.9.1", - "@embedpdf/plugin-viewport": "2.9.1", - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, - "node_modules/@embedpdf/utils": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@embedpdf/utils/-/utils-2.9.1.tgz", - "integrity": "sha512-IKe/k5DruzpuyGJBIoLEL9AKJ9rEBDLgi1eSCWQPyYkuLWTJg4rBzyGh57eS4S4K4dzQrlJ3Z9zGAW1mgbY2Jw==", - "license": "MIT", - "peerDependencies": { - "preact": "^10.26.4", - "react": ">=16.8.0", - "react-dom": ">=16.8.0", - "svelte": ">=5 <6", - "vue": ">=3.2.0" - } - }, "node_modules/@emnapi/core": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.11.1.tgz", @@ -2871,16 +2317,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@sveltejs/acorn-typescript": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@sveltejs/acorn-typescript/-/acorn-typescript-1.0.9.tgz", - "integrity": "sha512-lVJX6qEgs/4DOcRTpo56tmKzVPtoWAaVbL4hfO7t7NVwl9AAXzQR6cihesW1BmNMPl+bK6dreu2sOKBP2Q9CIA==", - "license": "MIT", - "peer": true, - "peerDependencies": { - "acorn": "^8.9.0" - } - }, "node_modules/@swc/helpers": { "version": "0.5.19", "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.19.tgz", @@ -3547,6 +2983,7 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, "license": "MIT" }, "node_modules/@types/geojson": { @@ -3852,6 +3289,7 @@ "version": "8.57.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.57.1.tgz", "integrity": "sha512-S29BOBPJSFUiblEl6RzPPjJt6w25A6XsBqRVDt53tA/tlL8q7ceQNZHTjPeONt/3S7KRI4quk+yP9jK2WjBiPQ==", + "dev": true, "license": "MIT", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -4131,6 +3569,7 @@ "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.30.tgz", "integrity": "sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw==", + "dev": true, "license": "MIT", "dependencies": { "@babel/parser": "^7.29.0", @@ -4144,6 +3583,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=0.12" @@ -4156,12 +3596,14 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, "license": "MIT" }, "node_modules/@vue/compiler-dom": { "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.30.tgz", "integrity": "sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g==", + "dev": true, "license": "MIT", "dependencies": { "@vue/compiler-core": "3.5.30", @@ -4172,6 +3614,7 @@ "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.30.tgz", "integrity": "sha512-LqmFPDn89dtU9vI3wHJnwaV6GfTRD87AjWpTWpyrdVOObVtjIuSeZr181z5C4PmVx/V3j2p+0f7edFKGRMpQ5A==", + "dev": true, "license": "MIT", "dependencies": { "@babel/parser": "^7.29.0", @@ -4189,12 +3632,14 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, "license": "MIT" }, "node_modules/@vue/compiler-ssr": { "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.30.tgz", "integrity": "sha512-NsYK6OMTnx109PSL2IAyf62JP6EUdk4Dmj6AkWcJGBvN0dQoMYtVekAmdqgTtWQgEJo+Okstbf/1p7qZr5H+bA==", + "dev": true, "license": "MIT", "dependencies": { "@vue/compiler-dom": "3.5.30", @@ -4241,6 +3686,7 @@ "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.30.tgz", "integrity": "sha512-179YNgKATuwj9gB+66snskRDOitDiuOZqkYia7mHKJaidOMo/WJxHKF8DuGc4V4XbYTJANlfEKb0yxTQotnx4Q==", + "dev": true, "license": "MIT", "dependencies": { "@vue/shared": "3.5.30" @@ -4250,6 +3696,7 @@ "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.30.tgz", "integrity": "sha512-e0Z+8PQsUTdwV8TtEsLzUM7SzC7lQwYKePydb7K2ZnmS6jjND+WJXkmmfh/swYzRyfP1EY3fpdesyYoymCzYfg==", + "dev": true, "license": "MIT", "dependencies": { "@vue/reactivity": "3.5.30", @@ -4260,6 +3707,7 @@ "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.30.tgz", "integrity": "sha512-2UIGakjU4WSQ0T4iwDEW0W7vQj6n7AFn7taqZ9Cvm0Q/RA2FFOziLESrDL4GmtI1wV3jXg5nMoJSYO66egDUBw==", + "dev": true, "license": "MIT", "dependencies": { "@vue/reactivity": "3.5.30", @@ -4272,6 +3720,7 @@ "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.30.tgz", "integrity": "sha512-v+R34icapydRwbZRD0sXwtHqrQJv38JuMB4JxbOxd8NEpGLny7cncMp53W9UH/zo4j8eDHjQ1dEJXwzFQknjtQ==", + "dev": true, "license": "MIT", "dependencies": { "@vue/compiler-ssr": "3.5.30", @@ -4285,6 +3734,7 @@ "version": "3.5.30", "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.30.tgz", "integrity": "sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ==", + "dev": true, "license": "MIT" }, "node_modules/@vueuse/core": { @@ -4679,16 +4129,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/axobject-query": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", - "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/b4a": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.8.0.tgz", @@ -4829,6 +4269,16 @@ ], "license": "MIT" }, + "node_modules/bentopdf-viewer": { + "version": "2.9.1", + "resolved": "file:vendor/bentopdf-viewer/bentopdf-viewer-2.9.1.tgz", + "integrity": "sha512-sfzgEpggMof2srTALARXtDJ0ZCzyEIClPsl8J0O4oHBWfuuT0LWvDMWAHaWuBXXIHa307RfboeK3ORy1cJO9Hw==", + "license": "MIT", + "dependencies": { + "preact": "^10.17.0", + "tailwind-merge": "^3.4.0" + } + }, "node_modules/bidi-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/bidi-js/-/bidi-js-1.0.3.tgz", @@ -5390,16 +4840,6 @@ "node": ">=0.8" } }, - "node_modules/clsx": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -5715,6 +5155,7 @@ "version": "3.2.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "dev": true, "license": "MIT" }, "node_modules/cytoscape": { @@ -6352,13 +5793,6 @@ "node": ">=8" } }, - "node_modules/devalue": { - "version": "5.8.1", - "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.8.1.tgz", - "integrity": "sha512-4CXDYRBGqN+57wVJkuXBYmpAVUSg3L6JAQa/DFqm238G73E1wuyc/JhGQJzN7vUf/CMphYau2zXbfWzDR5aTEw==", - "license": "MIT", - "peer": true - }, "node_modules/devlop": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", @@ -6480,45 +5914,6 @@ "dev": true, "license": "MIT" }, - "node_modules/embedpdf-snippet": { - "version": "2.9.1", - "resolved": "file:vendor/embedpdf/embedpdf-snippet-2.9.1.tgz", - "integrity": "sha512-DDKkXVTHmrxbbp3FN19xu7SZCOo8clcZnlwiTb6ovHq2s3nO8SKtE74xIPfYTHXPl/eKpNCQygCc44FnYqyNpQ==", - "license": "MIT", - "dependencies": { - "@embedpdf/core": "^2.9.1", - "@embedpdf/engines": "^2.9.1", - "@embedpdf/models": "^2.9.1", - "@embedpdf/pdfium": "^2.9.1", - "@embedpdf/plugin-annotation": "^2.9.1", - "@embedpdf/plugin-attachment": "^2.9.1", - "@embedpdf/plugin-bookmark": "^2.9.1", - "@embedpdf/plugin-capture": "^2.9.1", - "@embedpdf/plugin-commands": "^2.9.1", - "@embedpdf/plugin-document-manager": "^2.9.1", - "@embedpdf/plugin-export": "^2.9.1", - "@embedpdf/plugin-fullscreen": "^2.9.1", - "@embedpdf/plugin-history": "^2.9.1", - "@embedpdf/plugin-i18n": "^2.9.1", - "@embedpdf/plugin-interaction-manager": "^2.9.1", - "@embedpdf/plugin-pan": "^2.9.1", - "@embedpdf/plugin-print": "^2.9.1", - "@embedpdf/plugin-redaction": "^2.9.1", - "@embedpdf/plugin-render": "^2.9.1", - "@embedpdf/plugin-rotate": "^2.9.1", - "@embedpdf/plugin-scroll": "^2.9.1", - "@embedpdf/plugin-search": "^2.9.1", - "@embedpdf/plugin-selection": "^2.9.1", - "@embedpdf/plugin-spread": "^2.9.1", - "@embedpdf/plugin-thumbnail": "^2.9.1", - "@embedpdf/plugin-tiling": "^2.9.1", - "@embedpdf/plugin-ui": "^2.9.1", - "@embedpdf/plugin-viewport": "^2.9.1", - "@embedpdf/plugin-zoom": "^2.9.1", - "preact": "^10.17.0", - "tailwind-merge": "^3.4.0" - } - }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", @@ -6763,13 +6158,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/esm-env": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.2.2.tgz", - "integrity": "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==", - "license": "MIT", - "peer": true - }, "node_modules/espree": { "version": "11.2.0", "resolved": "https://registry.npmjs.org/espree/-/espree-11.2.0.tgz", @@ -6801,17 +6189,6 @@ "node": ">=0.10" } }, - "node_modules/esrap": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/esrap/-/esrap-2.2.4.tgz", - "integrity": "sha512-suICpxAmZ9A8bzJjEl/+rLJiDKC0X4gYWUxT6URAWBLvlXmtbZd5ySMu/N2ZGEtMCAmflUDPSehrP9BQcsGcSg==", - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15", - "@typescript-eslint/types": "^8.2.0" - } - }, "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", @@ -7919,16 +7296,6 @@ "dev": true, "license": "MIT" }, - "node_modules/is-reference": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.3.tgz", - "integrity": "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==", - "license": "MIT", - "peer": true, - "dependencies": { - "@types/estree": "^1.0.6" - } - }, "node_modules/is-regex": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", @@ -8092,6 +7459,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, "license": "MIT" }, "node_modules/jsdom": { @@ -8776,13 +8144,6 @@ "@types/trusted-types": "^2.0.2" } }, - "node_modules/locate-character": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz", - "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==", - "license": "MIT", - "peer": true - }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -8908,7 +8269,9 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, "license": "MIT", + "optional": true, "peer": true, "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" @@ -10305,7 +9668,9 @@ "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "dev": true, "license": "MIT", + "optional": true, "peer": true, "dependencies": { "loose-envify": "^1.1.0" @@ -10318,7 +9683,9 @@ "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "dev": true, "license": "MIT", + "optional": true, "peer": true, "dependencies": { "loose-envify": "^1.1.0", @@ -10835,7 +10202,9 @@ "version": "0.23.2", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "dev": true, "license": "MIT", + "optional": true, "peer": true, "dependencies": { "loose-envify": "^1.1.0" @@ -11419,44 +10788,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/svelte": { - "version": "5.55.7", - "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.55.7.tgz", - "integrity": "sha512-ymI5ykLPwIHW839E053FQbI1G+jnRFJEw3Kv5Y4njixVWywQBx+NUFpkkKyk5LIb36Fg9DVXSYpqiGekLD0hyw==", - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/remapping": "^2.3.4", - "@jridgewell/sourcemap-codec": "^1.5.0", - "@sveltejs/acorn-typescript": "^1.0.5", - "@types/estree": "^1.0.5", - "@types/trusted-types": "^2.0.7", - "acorn": "^8.12.1", - "aria-query": "5.3.1", - "axobject-query": "^4.1.0", - "clsx": "^2.1.1", - "devalue": "^5.8.1", - "esm-env": "^1.2.1", - "esrap": "^2.2.4", - "is-reference": "^3.0.3", - "locate-character": "^3.0.0", - "magic-string": "^0.30.11", - "zimmerframe": "^1.1.2" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/svelte/node_modules/aria-query": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.1.tgz", - "integrity": "sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==", - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/svg-pathdata": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", @@ -13511,6 +12842,7 @@ "version": "3.5.30", "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.30.tgz", "integrity": "sha512-hTHLc6VNZyzzEH/l7PFGjpcTvUgiaPK5mdLkbjrTeWSRcEfxFrv56g/XckIYlE9ckuobsdwqd5mk2g1sBkMewg==", + "dev": true, "license": "MIT", "dependencies": { "@vue/compiler-dom": "3.5.30", @@ -13860,13 +13192,6 @@ "pdf-lib": "1.17.1" } }, - "node_modules/zimmerframe": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/zimmerframe/-/zimmerframe-1.1.4.tgz", - "integrity": "sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==", - "license": "MIT", - "peer": true - }, "node_modules/zip-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-6.0.1.tgz", diff --git a/package.json b/package.json index af7a7966..ad3a7803 100644 --- a/package.json +++ b/package.json @@ -95,7 +95,7 @@ "cropperjs": "^1.6.2", "diff": "^8.0.3", "dompurify": "^3.4.12", - "embedpdf-snippet": "file:vendor/embedpdf/embedpdf-snippet-2.9.1.tgz", + "bentopdf-viewer": "file:vendor/bentopdf-viewer/bentopdf-viewer-2.9.1.tgz", "fast-xml-parser": "^5.7.1", "heic2any": "^0.0.4", "highlight.js": "^11.11.1", diff --git a/src/js/logic/edit-pdf-page.ts b/src/js/logic/edit-pdf-page.ts index 3ce15122..d0a62ab0 100644 --- a/src/js/logic/edit-pdf-page.ts +++ b/src/js/logic/edit-pdf-page.ts @@ -7,11 +7,11 @@ import { batchDecryptIfNeeded } from '../utils/password-prompt.js'; import { getEditorDisabledCategories } from '../utils/disabled-tools.js'; const embedPdfWasmUrl = new URL( - 'embedpdf-snippet/dist/pdfium.wasm', + 'bentopdf-viewer/dist/pdfium.wasm', import.meta.url ).href; -import type { EmbedPdfContainer } from 'embedpdf-snippet'; +import type { EmbedPdfContainer } from 'bentopdf-viewer'; import type { DocManagerPlugin } from '@/types'; let viewerInstance: EmbedPdfContainer | null = null; @@ -135,7 +135,7 @@ async function handleFiles(files: FileList) { pdfContainer.textContent = ''; pdfWrapper.classList.remove('hidden'); - const { default: EmbedPDF } = await import('embedpdf-snippet'); + const { default: EmbedPDF } = await import('bentopdf-viewer'); const disabledCategories = getEditorDisabledCategories(); viewerInstance = EmbedPDF.init({ disabledCategories, diff --git a/vendor/embedpdf/.upstream-version b/vendor/bentopdf-viewer/.upstream-version similarity index 100% rename from vendor/embedpdf/.upstream-version rename to vendor/bentopdf-viewer/.upstream-version diff --git a/vendor/embedpdf/embedpdf-snippet-2.9.1.tgz b/vendor/embedpdf/embedpdf-snippet-2.9.1.tgz deleted file mode 100644 index 88d8a804..00000000 Binary files a/vendor/embedpdf/embedpdf-snippet-2.9.1.tgz and /dev/null differ diff --git a/vite.config.ts b/vite.config.ts index 26570fd9..637f63d3 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -511,7 +511,7 @@ export default defineConfig(() => { const staticCopyTargets = [ { - src: 'node_modules/embedpdf-snippet/dist/pdfium.wasm', + src: 'node_modules/bentopdf-viewer/dist/pdfium.wasm', dest: 'embedpdf', }, ];