deps update: update webrecorder dependencies (#810)

- browsertrix-behaviors 0.8.1 for improved logging / new behavior
functions
- wabac.js 2.22.9
- RWP 2.3.4 for QA
- update ReplayServer to support 'range: -x' requests used in latest RWP/wabac.js
This commit is contained in:
Ilya Kreymer 2025-04-01 22:11:56 -07:00 committed by GitHub
parent fd41b32100
commit 91f8fadc5f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 25 additions and 22 deletions

View file

@ -39,7 +39,7 @@ ADD config/ /app/
ADD html/ /app/html/
ARG RWP_VERSION=2.2.5
ARG RWP_VERSION=2.3.4
ADD https://cdn.jsdelivr.net/npm/replaywebpage@${RWP_VERSION}/ui.js /app/html/rwp/
ADD https://cdn.jsdelivr.net/npm/replaywebpage@${RWP_VERSION}/sw.js /app/html/rwp/
ADD https://cdn.jsdelivr.net/npm/replaywebpage@${RWP_VERSION}/adblock/adblock.gz /app/html/rwp/adblock.gz

View file

@ -17,8 +17,8 @@
},
"dependencies": {
"@novnc/novnc": "1.4.0",
"@webrecorder/wabac": "^2.20.8",
"browsertrix-behaviors": "0.8.0",
"@webrecorder/wabac": "^2.22.9",
"browsertrix-behaviors": "^0.8.1",
"client-zip": "^2.4.5",
"css-selector-parser": "^3.0.5",
"fetch-socks": "^1.3.0",

View file

@ -129,7 +129,7 @@ export class ReplayServer {
getRespOptsForRequest(request: IncomingMessage, total: number) {
const range = request.headers["range"] || "";
const array = range.match(/bytes=(\d+)-(\d*)/);
const array = range.match(/bytes=(\d+)?-(\d*)/);
let contentRange = undefined;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
@ -137,16 +137,19 @@ export class ReplayServer {
if (array) {
opts.start = parseInt(array[1]);
opts.end = parseInt(array[2]);
if (isNaN(opts.end)) {
opts.end = undefined;
// negative value, subtract from end
if (isNaN(opts.start) && !isNaN(opts.end)) {
opts.start = total - opts.end;
opts.end = total - 1;
} else if (isNaN(opts.end)) {
opts.end = total - 1;
}
const end = opts.end || total - 1;
contentRange = `bytes ${opts.start}-${end}/${total}`;
contentRange = `bytes ${opts.start}-${opts.end}/${total}`;
return {
status: 206,
opts,
contentRange,
contentLength: end - opts.start + 1,
contentLength: opts.end - opts.start + 1,
};
}
return { status: 200, opts, contentRange, contentLength: total };

View file

@ -1009,16 +1009,16 @@
resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406"
integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==
"@webrecorder/wabac@^2.20.8":
version "2.20.8"
resolved "https://registry.yarnpkg.com/@webrecorder/wabac/-/wabac-2.20.8.tgz#37dd14f4cf821f36ecdf5719d5f334bb3445290e"
integrity sha512-P6FxC17ZgPfwfp3HbdI9hkzMnqD5I3kBF0cMnue6m8wBVMCzcVGp9x43wT+pcq0zOv6ATGObxcmjJKCsDUus7A==
"@webrecorder/wabac@^2.22.9":
version "2.22.9"
resolved "https://registry.yarnpkg.com/@webrecorder/wabac/-/wabac-2.22.9.tgz#c48fae9bc10015789999e87e68d14d52ad99515f"
integrity sha512-FsOP9TAZtS1kFAcBMv4yTwcj0VvE2Ke25gDnxlZ/WQIDjZsjWaEK0ZRlY645Simi40byFQ2dry44X3dwtKWhEA==
dependencies:
"@peculiar/asn1-ecc" "^2.3.4"
"@peculiar/asn1-schema" "^2.3.3"
"@peculiar/x509" "^1.9.2"
"@types/js-levenshtein" "^1.1.3"
"@webrecorder/wombat" "^3.8.7"
"@webrecorder/wombat" "^3.8.8"
acorn "^8.10.0"
auto-js-ipfs "^2.1.1"
base64-js "^1.5.1"
@ -1039,10 +1039,10 @@
stream-browserify "^3.0.0"
warcio "^2.4.3"
"@webrecorder/wombat@^3.8.7":
version "3.8.7"
resolved "https://registry.yarnpkg.com/@webrecorder/wombat/-/wombat-3.8.7.tgz#51c7465c589e0020be064121127c7c10a38ec21f"
integrity sha512-bW5V7cBweTkTazOIN8oZZGwHLevsGNv1luY3t0RYdEZhs5BDpTmUHN33zEbrXDOiPUlY3N3I8+73VA+PuxihoQ==
"@webrecorder/wombat@^3.8.8":
version "3.8.8"
resolved "https://registry.yarnpkg.com/@webrecorder/wombat/-/wombat-3.8.8.tgz#aab4dd8eea6d6cb17bfefb7ee1802e7b45b11ed7"
integrity sha512-XkJOZAyHrdXNkAVoISQEh/NHzaBMekQZfWqes/k2vYkW6v9DmZ0wjP7Kf6MHCuajKX8uSH+caB2tv1kJgvnv3Q==
dependencies:
warcio "^2.4.0"
@ -1460,10 +1460,10 @@ browserslist@^4.24.0:
node-releases "^2.0.18"
update-browserslist-db "^1.1.1"
browsertrix-behaviors@0.8.0:
version "0.8.0"
resolved "https://registry.yarnpkg.com/browsertrix-behaviors/-/browsertrix-behaviors-0.8.0.tgz#2e84a323f065bb4281ddfe6e3a96efbf18fb9b3c"
integrity sha512-aakiuTBf0SuX8P48/dbWZYPJ6TMGdqLEO9+Z3QfUpu4viBI7xY1necuJlTOuW4963AR/5aZCaLjfMNF/lOvl9w==
browsertrix-behaviors@^0.8.1:
version "0.8.1"
resolved "https://registry.yarnpkg.com/browsertrix-behaviors/-/browsertrix-behaviors-0.8.1.tgz#21d2726d32ca23f94efd2c3e9a0b8b98c42482bb"
integrity sha512-bG5KA/9fF60slakycvbJZ4COo/nD9GKflNEhEk3yQQTy3C0ikRVOpueG9XfvAgq2r4Ji1NMY9pesJRpQqtHKXg==
dependencies:
query-selector-shadow-dom "^1.0.1"