From 5689943927c1aabab54e637496a334e7510b23da Mon Sep 17 00:00:00 2001 From: horsefacts <109845214+horsefacts@users.noreply.github.com> Date: Sun, 1 Nov 2026 12:14:08 -0500 Subject: [PATCH] fix(deps): upgrade dependencies --- config/patches/image-size@2.0.2.patch | 488 --------------------- package.json | 2 +- pnpm-lock.yaml | 584 ++++++++++---------------- pnpm-workspace.yaml | 36 +- src/lib/dependencyPatches.test.ts | 13 +- 5 files changed, 246 insertions(+), 877 deletions(-) delete mode 100644 config/patches/image-size@2.0.2.patch diff --git a/config/patches/image-size@2.0.2.patch b/config/patches/image-size@2.0.2.patch deleted file mode 100644 index 7c8da12..0000000 --- a/config/patches/image-size@2.0.2.patch +++ /dev/null @@ -1,488 +0,0 @@ -diff --git a/dist/detector.cjs b/dist/detector.cjs -index 0898608dbeca36722dfd795341b1c3c1448f58aa..7f646b64f29d81be4f996653f22da2745f61d37a 100644 ---- a/dist/detector.cjs -+++ b/dist/detector.cjs -@@ -28,9 +28,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -250,7 +251,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize = getImageSize2(imageHeader[0]); - images.push(imageSize); - imageOffset += imageHeader[1]; -diff --git a/dist/detector.mjs b/dist/detector.mjs -index 67afcab02d627f95e98c938499e07a934b832a26..7bd6738bcc4689b7d31d3ea2517858fc52cfae9d 100644 ---- a/dist/detector.mjs -+++ b/dist/detector.mjs -@@ -26,9 +26,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -248,7 +249,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize = getImageSize2(imageHeader[0]); - images.push(imageSize); - imageOffset += imageHeader[1]; -diff --git a/dist/fromFile.cjs b/dist/fromFile.cjs -index c226d3dac07f235db456c774b26cca88f655e1af..38e77e5ba2449bc25badd1b05e4e0ba6507b187b 100644 ---- a/dist/fromFile.cjs -+++ b/dist/fromFile.cjs -@@ -54,9 +54,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -276,7 +277,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize2 = getImageSize2(imageHeader[0]); - images.push(imageSize2); - imageOffset += imageHeader[1]; -diff --git a/dist/fromFile.mjs b/dist/fromFile.mjs -index 4a3c44432982397204f7a9d04fc66ef65a8e7ba4..dfb3a59feca30b642f8015723eb6de1905bc4b1f 100644 ---- a/dist/fromFile.mjs -+++ b/dist/fromFile.mjs -@@ -31,9 +31,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -253,7 +254,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize2 = getImageSize2(imageHeader[0]); - images.push(imageSize2); - imageOffset += imageHeader[1]; -diff --git a/dist/index.cjs b/dist/index.cjs -index bde0210eb131db06ccca30a5c466c7252a03af50..f51bc432cd46d36f713593d6be5d3de7db875187 100644 ---- a/dist/index.cjs -+++ b/dist/index.cjs -@@ -30,9 +30,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -252,7 +253,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize2 = getImageSize2(imageHeader[0]); - images.push(imageSize2); - imageOffset += imageHeader[1]; -diff --git a/dist/index.mjs b/dist/index.mjs -index 22c17afad4e406eba013fff7858366cb5f8e3ba4..e3c72403e5e638ce1da8f07f60028de133c0d94f 100644 ---- a/dist/index.mjs -+++ b/dist/index.mjs -@@ -26,9 +26,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -248,7 +249,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize2 = getImageSize2(imageHeader[0]); - images.push(imageSize2); - imageOffset += imageHeader[1]; -diff --git a/dist/lookup.cjs b/dist/lookup.cjs -index 9731ad8bb0949f8fdf9297851bdb312e91282f01..a762abdb6e4052524956d8e19a4e45ca08a2c4b5 100644 ---- a/dist/lookup.cjs -+++ b/dist/lookup.cjs -@@ -28,9 +28,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -250,7 +251,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize2 = getImageSize2(imageHeader[0]); - images.push(imageSize2); - imageOffset += imageHeader[1]; -diff --git a/dist/lookup.mjs b/dist/lookup.mjs -index f787d1c8408d7b681fec8617595d058f66959869..9c5c7d975a2ba556fd2474e90336adb3196e1608 100644 ---- a/dist/lookup.mjs -+++ b/dist/lookup.mjs -@@ -26,9 +26,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -248,7 +249,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize2 = getImageSize2(imageHeader[0]); - images.push(imageSize2); - imageOffset += imageHeader[1]; -diff --git a/dist/types/heif.cjs b/dist/types/heif.cjs -index 1f490788ea654ea9896060a5c0253d81e348af92..5b93ffe947a1ddcd9d1582960ab8642c46f4ebb0 100644 ---- a/dist/types/heif.cjs -+++ b/dist/types/heif.cjs -@@ -6,9 +6,10 @@ var toUTF8String = (input, start = 0, end = input.length) => decoder.decode(inpu - var getView = (input, offset) => new DataView(input.buffer, input.byteOffset + offset); - var readUInt32BE = (input, offset = 0) => getView(input, offset).getUint32(0, false); - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -diff --git a/dist/types/heif.mjs b/dist/types/heif.mjs -index 01330919e01b3c034a96a7b4b1dbf5a7f658bb2d..dcc7a742045c02a2c4dedc92cd1685250f6b771d 100644 ---- a/dist/types/heif.mjs -+++ b/dist/types/heif.mjs -@@ -4,9 +4,10 @@ var toUTF8String = (input, start = 0, end = input.length) => decoder.decode(inpu - var getView = (input, offset) => new DataView(input.buffer, input.byteOffset + offset); - var readUInt32BE = (input, offset = 0) => getView(input, offset).getUint32(0, false); - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -diff --git a/dist/types/icns.cjs b/dist/types/icns.cjs -index 32c8d370dcf80a10f14a6deebfdbe04d3c70585c..2a0596b78a441c0f327f33f4084d374bce8106d2 100644 ---- a/dist/types/icns.cjs -+++ b/dist/types/icns.cjs -@@ -71,7 +71,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize = getImageSize(imageHeader[0]); - images.push(imageSize); - imageOffset += imageHeader[1]; -diff --git a/dist/types/icns.mjs b/dist/types/icns.mjs -index 8710027bc5890a79d05a7fdb87de3018e556729e..e9a24b50ecd405acf7c44be95cb1b13fe38ddf50 100644 ---- a/dist/types/icns.mjs -+++ b/dist/types/icns.mjs -@@ -69,7 +69,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize = getImageSize(imageHeader[0]); - images.push(imageSize); - imageOffset += imageHeader[1]; -diff --git a/dist/types/index.cjs b/dist/types/index.cjs -index 6949cd134db7ab59dae7b804b36c7bacb4e387cf..9dde7e31e4da2708a29b381c3b5edc0971248cbc 100644 ---- a/dist/types/index.cjs -+++ b/dist/types/index.cjs -@@ -28,9 +28,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -250,7 +251,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize = getImageSize2(imageHeader[0]); - images.push(imageSize); - imageOffset += imageHeader[1]; -diff --git a/dist/types/index.mjs b/dist/types/index.mjs -index b026dda4aa16c6077a76e4b3cfe3f54fe1d6d1d0..01325ad0003a36a00e50ec61cb7f9f3aac8e9fa0 100644 ---- a/dist/types/index.mjs -+++ b/dist/types/index.mjs -@@ -26,9 +26,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -@@ -248,7 +249,12 @@ var ICNS = { - let imageOffset = SIZE_HEADER2; - const images = []; - while (imageOffset < fileLength && imageOffset < inputLength) { -+ const remaining = Math.min(fileLength, inputLength) - imageOffset; -+ if (remaining < SIZE_HEADER) throw new TypeError("Invalid ICNS entry header"); - const imageHeader = readImageHeader(input, imageOffset); -+ if (imageHeader[1] < SIZE_HEADER || imageHeader[1] > remaining) { -+ throw new TypeError("Invalid ICNS entry length"); -+ } - const imageSize = getImageSize2(imageHeader[0]); - images.push(imageSize); - imageOffset += imageHeader[1]; -diff --git a/dist/types/jp2.cjs b/dist/types/jp2.cjs -index cdd7c884efeb940b99f69a8f1d6ed361a1979211..56086fc708e956514f9ade5ee9735e09e1c3a7f4 100644 ---- a/dist/types/jp2.cjs -+++ b/dist/types/jp2.cjs -@@ -6,9 +6,10 @@ var toUTF8String = (input, start = 0, end = input.length) => decoder.decode(inpu - var getView = (input, offset) => new DataView(input.buffer, input.byteOffset + offset); - var readUInt32BE = (input, offset = 0) => getView(input, offset).getUint32(0, false); - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -diff --git a/dist/types/jp2.mjs b/dist/types/jp2.mjs -index 63a537635b4f91250431a53225d4521ed60cf67d..1d8e7c68e144ee0586751104cfed79b5fe71737e 100644 ---- a/dist/types/jp2.mjs -+++ b/dist/types/jp2.mjs -@@ -4,9 +4,10 @@ var toUTF8String = (input, start = 0, end = input.length) => decoder.decode(inpu - var getView = (input, offset) => new DataView(input.buffer, input.byteOffset + offset); - var readUInt32BE = (input, offset = 0) => getView(input, offset).getUint32(0, false); - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -diff --git a/dist/types/jxl.cjs b/dist/types/jxl.cjs -index a12095be85c7a8fd25763895a47c46b4292ebd9c..2b2e70534ad9163782d3c1d3731d8664efe21e03 100644 ---- a/dist/types/jxl.cjs -+++ b/dist/types/jxl.cjs -@@ -47,9 +47,10 @@ var toHexString = (input, start = 0, end = input.length) => input.slice(start, e - var getView = (input, offset) => new DataView(input.buffer, input.byteOffset + offset); - var readUInt32BE = (input, offset = 0) => getView(input, offset).getUint32(0, false); - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -diff --git a/dist/types/jxl.mjs b/dist/types/jxl.mjs -index 49b0c4cac6abb366378e5feed745f16981b441c0..475e602ba8e82708f8841716ac1db07f060993e4 100644 ---- a/dist/types/jxl.mjs -+++ b/dist/types/jxl.mjs -@@ -45,9 +45,10 @@ var toHexString = (input, start = 0, end = input.length) => input.slice(start, e - var getView = (input, offset) => new DataView(input.buffer, input.byteOffset + offset); - var readUInt32BE = (input, offset = 0) => getView(input, offset).getUint32(0, false); - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -diff --git a/dist/types/utils.cjs b/dist/types/utils.cjs -index 23d52e4cbf271e667feb2d7f040c07f69678d3aa..4a4e323c5c740c8b4a98ab972bcf268f4b1768fa 100644 ---- a/dist/types/utils.cjs -+++ b/dist/types/utils.cjs -@@ -28,9 +28,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, -diff --git a/dist/types/utils.mjs b/dist/types/utils.mjs -index 3f09dceb036e40be8538dbb5588d88c951339158..5a3b0f08ce459b7f08916177299f8591f1d7d49d 100644 ---- a/dist/types/utils.mjs -+++ b/dist/types/utils.mjs -@@ -26,9 +26,10 @@ function readUInt(input, bits, offset = 0, isBigEndian = false) { - return methods[methodName](input, offset); - } - function readBox(input, offset) { -- if (input.length - offset < 4) return; -- const boxSize = readUInt32BE(input, offset); -- if (input.length - offset < boxSize) return; -+ if (input.length - offset < 8) return; -+ const declaredSize = readUInt32BE(input, offset); -+ const boxSize = declaredSize === 0 ? input.length - offset : declaredSize; -+ if (boxSize < 8 || input.length - offset < boxSize) return; - return { - name: toUTF8String(input, 4 + offset, 8 + offset), - offset, diff --git a/package.json b/package.json index 3299de7..138bb95 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "tapimo": "0.5.2", "viem": "^2.55.10", "wagmi": "^3.6.14", - "zod": "4.4.3" + "zod": "4.6.6" }, "devDependencies": { "@cloudflare/vite-plugin": "1.37.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 26151ac..8a795be 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,49 +17,54 @@ overrides: '@vue/shared': 3.5.42 vue: 3.5.42 proxy-addr: 2.0.8 - seroval: 1.6.9 + seroval: 1.6.12 source-map-js: 1.2.2 tinypool: 2.1.2 '@babel/core': 7.29.7 '@grpc/grpc-js': 1.14.5 axios: 1.20.0 - '@hono/node-server@<2.0.5': 2.0.10 + '@hono/node-server@<2.1.3': 2.1.3 baseline-browser-mapping: 2.11.21 browserslist: 4.28.9 caniuse-lite: 1.0.30001810 electron-to-chromium: 1.5.425 node-releases: 2.0.55 + body-parser: 2.4.0 brace-expansion: 5.0.12 esbuild: 0.28.1 - fast-uri: 3.1.8 - follow-redirects: 1.16.1 + fast-uri: 3.1.9 + follow-redirects: 1.16.2 form-data: 4.0.6 - ip-address: 10.7.1 + image-size: 2.0.3 + ip-address: 10.7.4 launch-editor: 2.14.2 nanoid@<3.3.18: 3.3.18 nanoid@>=4.0.0 <5.1.16: 5.1.16 postcss: 8.5.23 protobufjs: 7.6.5 + qs: 6.16.2 shell-quote: 1.11.0 sharp: 0.35.5 tar: 7.5.21 tmp: 0.2.7 - remark-mdx-frontmatter>toml: 4.2.0 - undici: 7.29.1 + remark-mdx-frontmatter>toml: 5.0.1 + archiver-utils>glob: 14.0.2 + readdir-glob>minimatch: 11.0.3 + undici: 7.30.1 uuid: 11.1.1 vite: npm:@voidzero-dev/vite-plus-core@1.3.0 vite-plus: 1.3.0 vitest: 5.0.5 ws: 8.21.0 + zod: 4.6.6 -packageExtensionsChecksum: sha256-U0DwpEnvfYjmnQEnh0nRblZm6XTP3vjYvyChD/BaC3M= +packageExtensionsChecksum: sha256-suNdHsg4HyLvhuLapYRWKkFJJiiBgitUopRlVl+C9VI= patchedDependencies: '@chat-adapter/slack@4.27.0': f129c43965d79b15a626b2f5e493aee5ae9b5638ff12257bd4cf6cecb048d1dd '@slack/web-api@7.15.2': 09052f9ad85fec8b14d0ab6e99277d4e7350f869955462df99337b9956fb0861 '@tanstack/react-start@1.169.2': 71969f5056dbcf6fdf50d11d11816e96be30c1976be25a2cba793c3738726087 emulate@0.5.0: b2fb51af97ea1d50b418f6a8216cf9423b584f2f690e7d2beec2f6e10e5ca234 - image-size@2.0.2: b2539bd5b3c5327ab322c926063ccef0439f86e222b3ca342993e7de2cd39af2 prool@0.2.4: 242ad315de9eb06e5a654896de221f947e3f0f5f318b55d898191bfad0a9530f importers: @@ -77,7 +82,7 @@ importers: version: 1.2.1 '@hono/zod-validator': specifier: ^0.8.0 - version: 0.8.0(hono@4.13.13)(zod@4.4.3) + version: 0.8.0(hono@4.13.13)(zod@4.6.6) '@tanstack/react-query': specifier: ^5.100.10 version: 5.100.10(react@19.2.5) @@ -92,7 +97,7 @@ importers: version: 1.168.46(@tanstack/react-router@1.170.44(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4))(esbuild@0.28.1)(rollup@4.62.2) accounts: specifier: ^0.15.2 - version: 0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3))(wagmi@3.6.14) + version: 0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6))(wagmi@3.6.14) chat: specifier: 4.27.0 version: 4.27.0 @@ -107,7 +112,7 @@ importers: version: 5.1.16 ox: specifier: 0.14.20 - version: 0.14.20(typescript@6.0.3)(zod@4.4.3) + version: 0.14.20(typescript@6.0.3)(zod@4.6.6) react: specifier: 19.2.5 version: 19.2.5 @@ -116,16 +121,16 @@ importers: version: 19.2.5(react@19.2.5) tapimo: specifier: 0.5.2 - version: 0.5.2(e49d296c651e14dc90170aab9b136842) + version: 0.5.2(c1458eeeaf225851985db699c3faa73c) viem: specifier: ^2.55.10 - version: 2.55.10(typescript@6.0.3)(zod@4.4.3) + version: 2.55.10(typescript@6.0.3)(zod@4.6.6) wagmi: specifier: ^3.6.14 - version: 3.6.14(@tanstack/query-core@5.100.10)(@tanstack/react-query@5.100.10(react@19.2.5))(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) + version: 3.6.14(@tanstack/query-core@5.100.10)(@tanstack/react-query@5.100.10(react@19.2.5))(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) zod: - specifier: 4.4.3 - version: 4.4.3 + specifier: 4.6.6 + version: 4.6.6 devDependencies: '@cloudflare/vite-plugin': specifier: 1.37.0 @@ -732,8 +737,8 @@ packages: peerDependencies: vue: 3.5.42 - '@hono/node-server@2.0.10': - resolution: {integrity: sha512-ZcnNVhKTmyDJeg0UlnZjvM73JBsTAuhrH/J4fjwGOw59PwOW51r4J+p6CsKZWXdKSme4MFqU62CZMOsdDrU4CA==} + '@hono/node-server@2.1.3': + resolution: {integrity: sha512-TA//nWMqPhbfdfneACk6t5a9eqbS9lABEPyKn0/xZTah3H3U2XaVg85rJFl0/Fyit0I552YDHgXGVSf3GwqbUw==} engines: {node: '>=20'} peerDependencies: hono: ^4 @@ -748,7 +753,7 @@ packages: resolution: {integrity: sha512-5uS4S1/LKtZQYvD4BtpPUFkOv8d1wNxHHrChm26buMiEYc1FrHWvDUaKVBwkiVtvSExHSpLGDvcnpI2Copyj9w==} peerDependencies: hono: '>=4.10.0' - zod: ^3.25.0 || ^4.0.0 + zod: 4.6.6 '@iconify-json/lucide@1.2.117': resolution: {integrity: sha512-7isYKJKWRZ8NfLNSY8pIYmRWiMBkopL4/X22gZfFmePFhc7az0hQ5biqBLG6vdDEvMctFu2suZB3yQ29RL+8tA==} @@ -971,14 +976,13 @@ packages: '@internationalized/number@3.6.7': resolution: {integrity: sha512-3ji1fcrT+FPAK86UqEhB/psHixYo6niWPJtt7+qRaYFynt/BaJG8GhAPimtWUpEiVSTq8ZM8L5psMxGquiB/Vg==} - '@isaacs/cliui@8.0.2': - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} - '@isaacs/fs-minipass@4.0.1': resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==} engines: {node: '>=18.0.0'} + '@isaacs/nonrecursive-glob-match@1.0.3': + resolution: {integrity: sha512-SI7kyKHq4XXDRozw+r9GlRZkia1ZkFrpLW98r2IC2Bpr8YkFGE3fvjzmxCG0x78A++69HmDNrDvSMYBZmHGpKA==} + '@jridgewell/gen-mapping@0.3.13': resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} @@ -1056,7 +1060,7 @@ packages: engines: {node: '>=18'} peerDependencies: '@cfworker/json-schema': ^4.1.1 - zod: ^3.25 || ^4.0 + zod: 4.6.6 peerDependenciesMeta: '@cfworker/json-schema': optional: true @@ -1405,10 +1409,6 @@ packages: '@phosphor-icons/core@2.1.1': resolution: {integrity: sha512-v4ARvrip4qBCImOE5rmPUylOEK4iiED9ZyKjcvzuezqMaiRASCHKcRIuvvxL/twvLpkfnEODCOJp5dM4eZilxQ==} - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - '@playwright/test@1.59.1': resolution: {integrity: sha512-PG6q63nQg5c9rIi4/Z5lR5IVF7yU5MqmKaPOe0HSc0O2cX1fPi96sUQu5j7eo4gKCkB2AnNGoWt7y4/Xx3Kcqg==} engines: {node: '>=18'} @@ -1840,7 +1840,7 @@ packages: sury: ^10.0.0 typebox: ^1.0.17 valibot: ^1.1.0 - zod: ^3.25.0 || ^4.0.0 + zod: 4.6.6 zod-to-json-schema: ^3.24.5 peerDependenciesMeta: '@valibot/to-json-schema': @@ -1871,7 +1871,7 @@ packages: sury: ^10.0.0 typebox: ^1.0.0 valibot: ^1.1.0 - zod: ^3.25.0 || ^4.0.0 + zod: 4.6.6 zod-openapi: ^4 peerDependenciesMeta: arktype: @@ -2973,7 +2973,7 @@ packages: resolution: {integrity: sha512-Ofer5QUnuUdTFsBRwARMoWKOH1ND5ehwYhJ3OJ/BQO+StkwQjHw0XyVh4vDttzHB7QOFhPHa/o413PJ82gU/Tg==} peerDependencies: typescript: '>=5.0.4' - zod: ^3.22.0 || ^4.0.0 + zod: 4.6.6 peerDependenciesMeta: typescript: optional: true @@ -2984,7 +2984,7 @@ packages: resolution: {integrity: sha512-fk6Te+bojIFrMvMZrnOO+SxCB+RUksTGOzq/60ZRvs1L+BVzvi2bqt9L3W/17ZLdZsyM1FuYf65P5nlmoiH1Bg==} peerDependencies: typescript: '>=5.0.4' - zod: ^3.22.0 || ^4.0.0 + zod: 4.6.6 peerDependenciesMeta: typescript: optional: true @@ -3074,10 +3074,6 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.2.2: - resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} - engines: {node: '>=12'} - ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} @@ -3086,10 +3082,6 @@ packages: resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} engines: {node: '>=10'} - ansi-styles@6.2.3: - resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} - engines: {node: '>=12'} - ansis@4.4.0: resolution: {integrity: sha512-9k3v7xcHwgdO/DruxGIg4HtjvlAZlcnsX/mzqUb1t3NkYnl9kK2UJ+Gq0io+vQf7iT//BD/HB/NBkUR1LWxoeA==} engines: {node: '>=14'} @@ -3221,8 +3213,8 @@ packages: blake3-wasm@2.1.5: resolution: {integrity: sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==} - body-parser@2.3.0: - resolution: {integrity: sha512-2cGmJupaNgg+QUwVLAucDuWuoMZ6EX9iHDRswZ5lsNYEmwPaRknMPCLZz07yTzVq/83p4o/wzbDZbBrTvGGTIw==} + body-parser@2.4.0: + resolution: {integrity: sha512-Ifk1KcLrxaGt1occQagQNFNNOqRt1LFuehEnHHzB8Z6cRgIxRU1TBaiIsUiCdA+gy5PL7Y1IX31DNKkRmxtXjQ==} engines: {node: '>=18'} brace-expansion@5.0.12: @@ -3387,6 +3379,10 @@ packages: resolution: {integrity: sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ==} engines: {node: '>=18'} + content-type@2.1.0: + resolution: {integrity: sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==} + engines: {node: '>=18'} + convert-hrtime@5.0.0: resolution: {integrity: sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==} engines: {node: '>=12'} @@ -3532,9 +3528,6 @@ packages: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} @@ -3544,9 +3537,6 @@ packages: emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - emulate@0.5.0: resolution: {integrity: sha512-2LrOE8sqa1ITQ1aRR3kZhAhOCNz8hu+Kea9oBKdG/jEK6I/RYlMgHbsvQmbTTtr+nx6+fOOWkL6wqvfLeF5vuA==} hasBin: true @@ -3745,8 +3735,8 @@ packages: fast-string-width@3.0.2: resolution: {integrity: sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==} - fast-uri@3.1.8: - resolution: {integrity: sha512-GZMtZUTNRpOVIECoXwLNZS5xUGE+mVNbTB8h/7Rwh2TFWcBQiPzTgyZi05BF9UMZKkLJv8XBRJTlU7zg8+ZfMg==} + fast-uri@3.1.9: + resolution: {integrity: sha512-hS/0Wt3Ya043oKXs0sIxrMpKQITXhMLIrVAKKXi4gozGC9v7YRWVnXIZzjNPTO02M9BdxLCWqK1yRXgNziVyJQ==} fast-wrap-ansi@0.2.0: resolution: {integrity: sha512-rLV8JHxTyhVmFYhBJuMujcrHqOT2cnO5Zxj37qROj23CP39GXubJRBUFF0z8KFK77Uc0SukZUf7JZhsVEQ6n8w==} @@ -3789,8 +3779,8 @@ packages: focus-trap@7.8.0: resolution: {integrity: sha512-/yNdlIkpWbM0ptxno3ONTuf+2g318kh2ez3KSeZN5dZ8YC6AAmgeWz+GasYYiBJPFaYcSAPeu4GfhUaChzIJXA==} - follow-redirects@1.16.1: - resolution: {integrity: sha512-FNvFGzoMLWmE6Yj9spb/zjd7yiNCHiAW9/Tg9CXrQ8wuu32HtlJOwWO11OJafl5FfY3DxTdQ0vj42zU1kvv5jg==} + follow-redirects@1.16.2: + resolution: {integrity: sha512-/kVP2U8z596Ia0gwFrwyIeo74ta5aVmSeU1FfAUMAmcEP5EP7zydmag3SLiN64NaRKef3lxsq7i/g7ltJQDGow==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -3798,10 +3788,6 @@ packages: debug: optional: true - foreground-child@3.3.1: - resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} - engines: {node: '>=14'} - form-data@4.0.6: resolution: {integrity: sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==} engines: {node: '>= 6'} @@ -3876,10 +3862,9 @@ packages: github-slugger@2.0.0: resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} - glob@10.5.0: - resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==} - deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me - hasBin: true + glob@14.0.2: + resolution: {integrity: sha512-vfMgTR2djMHPUchsJMLpZlYQvtjVL+mHpEr5wPpoCbQs2vr/FBNK+3Gnl9Ara1DSs4Aeg4eG9HiADb5/rkY/ZA==} + engines: {node: 18 || 20 || >=22} gopd@1.2.0: resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} @@ -4036,9 +4021,9 @@ packages: ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - image-size@2.0.2: - resolution: {integrity: sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w==} - engines: {node: '>=16.x'} + image-size@2.0.3: + resolution: {integrity: sha512-9BJAtVCBth+76NwqnEfWr3PiRnYhbquk6K/USuQ1GQajz5NgLzO7tNsnoNjHfO7LuftgkBf+CCH6j28hjMbIYQ==} + engines: {node: '>=18'} hasBin: true import-fresh@3.3.1: @@ -4063,8 +4048,8 @@ packages: resolution: {integrity: sha512-fn4bQ0Xq8FTej09YC/jqKZwtijpvARlRp6wxL5WTA6yPe2YWSJ5RJh7Nm79rK2qB0wr6iDQzH60XGq5V/7u8YQ==} deprecated: The Intersection Observer polyfill is no longer needed and can safely be removed. Intersection Observer has been Baseline since 2019. - ip-address@10.7.1: - resolution: {integrity: sha512-4OUAqU9Z1i3vCnS05hzGiFnEMDpQ+62pAD/MVQOp83fYyNC8GleCqaS0QikQBmcWCrKFiUs/B8ztRRiYOAXuCA==} + ip-address@10.7.4: + resolution: {integrity: sha512-DWBMKyeM25D70nrIiTkgQth59/G+naKOTep6huF9j+GmeK3DMD60Zvxg5d5qQnz+38AHgou6ean2LECX+lrKDg==} engines: {node: '>= 12'} ipaddr.js@1.9.1: @@ -4146,9 +4131,6 @@ packages: peerDependencies: ws: 8.21.0 - jackspeak@3.4.3: - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jiti@2.7.0: resolution: {integrity: sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==} hasBin: true @@ -4391,8 +4373,9 @@ packages: lowlight@3.3.0: resolution: {integrity: sha512-0JNhgFoPvP6U6lE/UdVsSq99tn6DhjjpAj5MxG49ewd2mOBVtwWYIT8ClyABhq198aXXODMU6Ox8DrGy/CpTZQ==} - lru-cache@10.4.3: - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + lru-cache@11.5.3: + resolution: {integrity: sha512-U4N8FgzmWxc8k1VH8Kr6lQg18U7Fjvby6wXHVRX/ZZ7IwWbRMgrRbP0Wrb5q5NVinryp4SQampHKdvtecItxUg==} + engines: {node: 20 || >=22} lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -4624,13 +4607,9 @@ packages: resolution: {integrity: sha512-Cjrs+vHHQ7krLO4HYELYpYBJBuMhcnNZD/Z5z/UcQSnFqWSQY3DhtTCFalXgI1/yO1iK+YrRKK8EYkumrEopxg==} engines: {node: '>=22.0.0'} - minimatch@5.1.9: - resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} - engines: {node: '>=10'} - - minimatch@9.0.9: - resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==} - engines: {node: '>=16 || 14 >=14.17'} + minimatch@11.0.3: + resolution: {integrity: sha512-iny/40PEGkNJQ5/Pv6z3nm6FbRAby32GeZRjCUJk2WnNDbgPSTcdI+DDvLqsgBdD4cD5sMtMheqPPnehCCa8Nw==} + engines: {node: 18 || 20 || >=22} minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -5024,9 +5003,6 @@ packages: resolution: {integrity: sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg==} engines: {node: '>=14.16'} - package-json-from-dist@1.0.1: - resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - package-manager-detector@1.6.0: resolution: {integrity: sha512-61A5ThoTiDG/C8s8UMZwSorAGwMJ0ERVGj2OjoW5pAalsNOg15+iQiPzrLJ4jhZ1HJzmC2PIHT2oEiH3R5fzNA==} @@ -5060,9 +5036,9 @@ packages: resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} engines: {node: '>=12'} - path-scurry@1.11.1: - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} - engines: {node: '>=16 || 14 >=14.18'} + path-scurry@3.0.0: + resolution: {integrity: sha512-1pTbQqH1wIwMi/eleQ5leFTTCkzFsPcgXNjwOA8YGGW/W4/kHT3dssE7Z6NH+zuqNLOzOB0uaD61yl7cAcVhgg==} + engines: {node: 18 || 20 || >=22} path-to-regexp@6.3.0: resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} @@ -5239,8 +5215,8 @@ packages: pump@3.0.4: resolution: {integrity: sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==} - qs@6.16.0: - resolution: {integrity: sha512-h6fhOIaRrID2CbEY2fqs+7t+UXZo+MLAnU5gRIq85uFtdiUPCdsApMlHhXogKVM4HM2DVbIjGNTTYH2OcmP1vA==} + qs@6.16.2: + resolution: {integrity: sha512-VYdnB5S7/0IeXzBacUtwNAaM6d7Y/PgYnNC7bJCI6meqA/OgnsQbZMtVW8Dt2D1PHgbHGtYmhSoEIgvt7xZ2ZA==} engines: {node: '>=0.6'} quansync@0.2.11: @@ -5452,10 +5428,10 @@ packages: resolution: {integrity: sha512-N7mWAMydj89EnYTHtRpS3LBrAz3J9O6oVrqpuXuvlAHfAUG8WEKqtbAd7SBiJNY5NfCAFhSdyAh7wI4Shjqy4g==} engines: {node: '>=10'} peerDependencies: - seroval: 1.6.9 + seroval: 1.6.12 - seroval@1.6.9: - resolution: {integrity: sha512-UeEzHwAK+yl0YLbsvROV1t5yMYEwZZ0CfKYxDvUgS2fO9Vxdf8djqVIB+OuVpuawRNPqw68LE1Du/GMsW2ZPqA==} + seroval@1.6.12: + resolution: {integrity: sha512-CqbIVfk/7GL3ITwZI55lcPbpQbjHZ2DD5cUj4iH7E9YsCfHNJV1mx7yNp86Z84w5IpmkZZS/2s5vPOWmVWSdQg==} engines: {node: '>=10'} serve-static@2.2.1: @@ -5586,10 +5562,6 @@ packages: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - string_decoder@1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} @@ -5607,10 +5579,6 @@ packages: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} - strip-ansi@7.2.0: - resolution: {integrity: sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==} - engines: {node: '>=12'} - strip-final-newline@4.0.0: resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==} engines: {node: '>=18'} @@ -5774,8 +5742,8 @@ packages: tokenx@1.3.0: resolution: {integrity: sha512-NLdXTEZkKiO0gZuLtMoZKjCXTREXeZZt8nnnNeyoXtNZAfG/GKGSbQtLU5STspc0rMSwcA+UJfWZkbNU01iKmQ==} - toml@4.2.0: - resolution: {integrity: sha512-TvAJjbHZlYmI323+srtqHQFyJsoWy6mI09ppkuj9+iRsqsVKG9fvTcOP7FHF2UCb0QSYtjEavffrKzdd0XgClg==} + toml@5.0.1: + resolution: {integrity: sha512-EqYNA/YvUNndrA2B3O2ojzLQoTQrBxeZ9UIjQwk8t10oe6n7dwclBwd9IdZQTOKwe6vWX+AXtl6IntXRbepdxQ==} engines: {node: '>=20'} totalist@3.0.1: @@ -5852,8 +5820,8 @@ packages: undici-types@7.18.2: resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} - undici@7.29.1: - resolution: {integrity: sha512-RYONW2MeafgYlkVOKYKkA/Ag7BmXqgIWCa8t1m0JcxrQg9pI9lEqRhAOruOBCbAohOa/gkCF+iPi9hrgvTzu6Q==} + undici@7.30.1: + resolution: {integrity: sha512-03KrMbjIFDWQR5RNPrSw3bd1r12JpyFQl9/yxjUbJtqkjmllqC5lFjZh6ujeuJCKr8EOQvRW872Oy/az+nLYxg==} engines: {node: '>=20.18.1'} unenv@2.0.0-rc.24: @@ -6264,10 +6232,6 @@ packages: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -6340,13 +6304,10 @@ packages: zod-to-json-schema@3.25.2: resolution: {integrity: sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA==} peerDependencies: - zod: ^3.25.28 || ^4 - - zod@4.4.3: - resolution: {integrity: sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==} + zod: 4.6.6 - zod@4.6.5: - resolution: {integrity: sha512-v5l/aFXZQeai4awLbOpSoHecE9UiMrnfx75tEXLjNonXVARxQ5mOeipTjROUchszUNCqnE+hqAMujRsRHsut2Q==} + zod@4.6.6: + resolution: {integrity: sha512-4UmzQUF5fxvfcYHlbjBmejU+w+hbDnWFx4aS8kBx7nPBHcO2SqPbpAG8snbdg+Xse4pRefR98hgjFgIMCI/UhA==} zustand@5.0.0: resolution: {integrity: sha512-LE+VcmbartOPM+auOjCCLQOsQ05zUTp8RkgwRzefUk+2jISdMMFnxvyTjA4YNWr5ZGXYbVsEMZosttuxUBkojQ==} @@ -6619,10 +6580,10 @@ snapshots: cjs-module-lexer: 1.2.3 esbuild: 0.28.1 miniflare: 5.20261012.0-beta(@types/node@22.19.17) - undici: 7.29.1 + undici: 7.30.1 vitest: 5.0.5(@types/node@22.19.17)(@vitest/browser-preview@5.0.5)(@vitest/ui@5.0.5(vitest@5.0.5))(@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4))(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3)) wrangler: 4.151.0(@types/node@22.19.17) - zod: 4.6.5 + zod: 4.6.6 transitivePeerDependencies: - '@cloudflare/workers-types' - '@types/node' @@ -6945,7 +6906,7 @@ snapshots: '@tanstack/vue-virtual': 3.13.32(vue@3.5.42(typescript@6.0.3)) vue: 3.5.42(typescript@6.0.3) - '@hono/node-server@2.0.10(hono@4.13.13)': + '@hono/node-server@2.1.3(hono@4.13.13)': dependencies: hono: 4.13.13 @@ -6954,10 +6915,10 @@ snapshots: '@standard-schema/spec': 1.1.0 hono: 4.13.13 - '@hono/zod-validator@0.8.0(hono@4.13.13)(zod@4.4.3)': + '@hono/zod-validator@0.8.0(hono@4.13.13)(zod@4.6.6)': dependencies: hono: 4.13.13 - zod: 4.4.3 + zod: 4.6.6 '@iconify-json/lucide@1.2.117': dependencies: @@ -7125,19 +7086,12 @@ snapshots: dependencies: '@swc/helpers': 0.5.23 - '@isaacs/cliui@8.0.2': - dependencies: - string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 - strip-ansi: 7.2.0 - strip-ansi-cjs: strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 - '@isaacs/fs-minipass@4.0.1': dependencies: minipass: 7.1.3 + '@isaacs/nonrecursive-glob-match@1.0.3': {} + '@jridgewell/gen-mapping@0.3.13': dependencies: '@jridgewell/sourcemap-codec': 1.5.5 @@ -7266,9 +7220,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3)': + '@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6)': dependencies: - '@hono/node-server': 2.0.10(hono@4.13.13) + '@hono/node-server': 2.1.3(hono@4.13.13) ajv: 8.20.0 ajv-formats: 3.0.1(ajv@8.20.0) content-type: 1.0.5 @@ -7283,8 +7237,8 @@ snapshots: json-schema-typed: 8.0.2 pkce-challenge: 5.0.1 raw-body: 3.0.2 - zod: 4.4.3 - zod-to-json-schema: 3.25.2(zod@4.4.3) + zod: 4.6.6 + zod-to-json-schema: 3.25.2(zod@4.6.6) optionalDependencies: '@cfworker/json-schema': 4.1.1 transitivePeerDependencies: @@ -7292,7 +7246,7 @@ snapshots: '@modelcontextprotocol/server@2.0.0-alpha.4': dependencies: - zod: 4.4.3 + zod: 4.6.6 '@mswjs/interceptors@0.41.8': dependencies: @@ -7483,9 +7437,6 @@ snapshots: '@phosphor-icons/core@2.1.1': {} - '@pkgjs/parseargs@0.11.0': - optional: true - '@playwright/test@1.59.1': dependencies: playwright: 1.59.1 @@ -7660,7 +7611,7 @@ snapshots: set-cookie-parser: 3.1.0 vue: 3.5.42(typescript@6.0.3) yaml: 2.8.4 - zod: 4.4.3 + zod: 4.6.6 transitivePeerDependencies: - '@vue/composition-api' - async-validator @@ -7855,14 +7806,14 @@ snapshots: '@scalar/helpers': 0.8.2 nanoid: 5.1.16 type-fest: 5.6.0 - zod: 4.4.3 + zod: 4.6.6 '@scalar/types@0.16.3': dependencies: '@scalar/helpers': 0.9.1 nanoid: 5.1.16 type-fest: 5.6.0 - zod: 4.4.3 + zod: 4.6.6 '@scalar/use-codemirror@0.14.13(typescript@6.0.3)': dependencies: @@ -8056,22 +8007,22 @@ snapshots: '@speed-highlight/core@1.2.15': {} - '@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3)': + '@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6)': dependencies: '@standard-schema/spec': 1.1.0 '@types/json-schema': 7.0.15 quansync: 0.2.11 optionalDependencies: - zod: 4.4.3 - zod-to-json-schema: 3.25.2(zod@4.4.3) + zod: 4.6.6 + zod-to-json-schema: 3.25.2(zod@4.6.6) - '@standard-community/standard-openapi@0.2.9(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3))(@standard-schema/spec@1.1.0)(openapi-types@12.1.3)(zod@4.4.3)': + '@standard-community/standard-openapi@0.2.9(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6))(@standard-schema/spec@1.1.0)(openapi-types@12.1.3)(zod@4.6.6)': dependencies: - '@standard-community/standard-json': 0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3) + '@standard-community/standard-json': 0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6) '@standard-schema/spec': 1.1.0 openapi-types: 12.1.3 optionalDependencies: - zod: 4.4.3 + zod: 4.6.6 '@standard-schema/spec@1.0.0': {} @@ -8466,8 +8417,8 @@ snapshots: dependencies: '@tanstack/history': 1.162.5 cookie-es: 3.1.1 - seroval: 1.6.9 - seroval-plugins: 1.6.8(seroval@1.6.9) + seroval: 1.6.12 + seroval-plugins: 1.6.8(seroval@1.6.12) '@tanstack/router-generator@1.167.44': dependencies: @@ -8478,7 +8429,7 @@ snapshots: jiti: 2.7.0 magic-string: 0.30.21 prettier: 3.9.10 - zod: 4.6.5 + zod: 4.6.6 transitivePeerDependencies: - supports-color @@ -8492,7 +8443,7 @@ snapshots: '@tanstack/router-utils': 1.162.4 chokidar: 5.0.0 unplugin: 3.4.0(@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4))(esbuild@0.28.1)(rollup@4.62.2) - zod: 4.6.5 + zod: 4.6.6 optionalDependencies: '@tanstack/react-router': 1.170.44(react-dom@19.2.5(react@19.2.5))(react@19.2.5) vite: '@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4)' @@ -8524,7 +8475,7 @@ snapshots: '@tanstack/router-core': 1.171.37 '@tanstack/start-fn-stubs': 1.162.0 '@tanstack/start-storage-context': 1.167.39 - seroval: 1.6.9 + seroval: 1.6.12 '@tanstack/start-fn-stubs@1.162.0': {} @@ -8543,14 +8494,14 @@ snapshots: lightningcss: 1.33.0 pathe: 2.0.3 picomatch: 4.0.7 - seroval: 1.6.9 + seroval: 1.6.12 source-map: 0.7.6 srvx: 1.0.5 tinyglobby: 0.2.17 ufo: 1.6.4 vitefu: 1.1.3(@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4)) xmlbuilder2: 4.0.3 - zod: 4.6.5 + zod: 4.6.6 optionalDependencies: vite: '@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4)' transitivePeerDependencies: @@ -8574,7 +8525,7 @@ snapshots: '@tanstack/start-storage-context': 1.167.39 cookie-es: 3.1.1 fetchdts: 0.2.0 - seroval: 1.6.9 + seroval: 1.6.12 '@tanstack/start-storage-context@1.167.39': dependencies: @@ -9010,23 +8961,23 @@ snapshots: dependencies: vue: 3.5.42(typescript@6.0.3) - '@wagmi/connectors@8.0.13(@wagmi/core@3.4.11)(accounts@0.15.2)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.4.3))': + '@wagmi/connectors@8.0.13(@wagmi/core@3.4.11)(accounts@0.15.2)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.6.6))': dependencies: - '@wagmi/core': 3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) - viem: 2.55.10(typescript@6.0.3)(zod@4.4.3) + '@wagmi/core': 3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) + viem: 2.55.10(typescript@6.0.3)(zod@4.6.6) optionalDependencies: - accounts: 0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3))(wagmi@3.6.14) + accounts: 0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6))(wagmi@3.6.14) typescript: 6.0.3 - '@wagmi/core@3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3))': + '@wagmi/core@3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6))': dependencies: eventemitter3: 5.0.1 mipd: 0.0.7(typescript@6.0.3) - viem: 2.55.10(typescript@6.0.3)(zod@4.4.3) + viem: 2.55.10(typescript@6.0.3)(zod@4.6.6) zustand: 5.0.0(@types/react@19.2.14)(react@19.2.5)(use-sync-external-store@1.4.0(react@19.2.5)) optionalDependencies: '@tanstack/query-core': 5.100.10 - accounts: 0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3))(wagmi@3.6.14) + accounts: 0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6))(wagmi@3.6.14) typescript: 6.0.3 transitivePeerDependencies: - '@types/react' @@ -9074,25 +9025,15 @@ snapshots: '@yuku-toolchain/types@0.19.0': {} - abitype@1.2.3(typescript@6.0.3)(zod@4.4.3): - optionalDependencies: - typescript: 6.0.3 - zod: 4.4.3 - - abitype@1.2.3(typescript@6.0.3)(zod@4.6.5): + abitype@1.2.3(typescript@6.0.3)(zod@4.6.6): optionalDependencies: typescript: 6.0.3 - zod: 4.6.5 + zod: 4.6.6 - abitype@1.3.0(typescript@6.0.3)(zod@4.4.3): + abitype@1.3.0(typescript@6.0.3)(zod@4.6.6): optionalDependencies: typescript: 6.0.3 - zod: 4.4.3 - - abitype@1.3.0(typescript@6.0.3)(zod@4.6.5): - optionalDependencies: - typescript: 6.0.3 - zod: 4.6.5 + zod: 4.6.6 abort-controller@3.0.0: dependencies: @@ -9103,23 +9044,23 @@ snapshots: mime-types: 3.0.2 negotiator: 1.0.0 - accounts@0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.54.6(typescript@6.0.3)(zod@4.6.5))(wagmi@3.6.14): + accounts@0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.54.6(typescript@6.0.3)(zod@4.6.6))(wagmi@3.6.14): dependencies: hono: 4.13.13 idb-keyval: 6.2.2 jose: 6.2.3 mipd: 0.0.7(typescript@6.0.3) - mppx: 0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.54.6(typescript@6.0.3)(zod@4.6.5)) - ox: 0.14.33(typescript@6.0.3)(zod@4.6.5) + mppx: 0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.54.6(typescript@6.0.3)(zod@4.6.6)) + ox: 0.14.33(typescript@6.0.3)(zod@4.6.6) wata: 0.4.0(react@19.2.5)(typescript@6.0.3) - webauthx: 0.1.2(typescript@6.0.3)(zod@4.6.5) - zod: 4.6.5 + webauthx: 0.1.2(typescript@6.0.3)(zod@4.6.6) + zod: 4.6.6 zustand: 5.0.13(@types/react@19.2.14)(react@19.2.5)(use-sync-external-store@1.4.0(react@19.2.5)) optionalDependencies: - '@wagmi/core': 3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) + '@wagmi/core': 3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) react: 19.2.5 - viem: 2.54.6(typescript@6.0.3)(zod@4.6.5) - wagmi: 3.6.14(@tanstack/query-core@5.100.10)(@tanstack/react-query@5.100.10(react@19.2.5))(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) + viem: 2.54.6(typescript@6.0.3)(zod@4.6.6) + wagmi: 3.6.14(@tanstack/query-core@5.100.10)(@tanstack/react-query@5.100.10(react@19.2.5))(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) transitivePeerDependencies: - '@modelcontextprotocol/sdk' - '@types/react' @@ -9130,23 +9071,23 @@ snapshots: - typescript - use-sync-external-store - accounts@0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3))(wagmi@3.6.14): + accounts@0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6))(wagmi@3.6.14): dependencies: hono: 4.13.13 idb-keyval: 6.2.2 jose: 6.2.3 mipd: 0.0.7(typescript@6.0.3) - mppx: 0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) - ox: 0.14.33(typescript@6.0.3)(zod@4.6.5) + mppx: 0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) + ox: 0.14.33(typescript@6.0.3)(zod@4.6.6) wata: 0.4.0(react@19.2.5)(typescript@6.0.3) - webauthx: 0.1.2(typescript@6.0.3)(zod@4.6.5) - zod: 4.6.5 + webauthx: 0.1.2(typescript@6.0.3)(zod@4.6.6) + zod: 4.6.6 zustand: 5.0.13(@types/react@19.2.14)(react@19.2.5)(use-sync-external-store@1.4.0(react@19.2.5)) optionalDependencies: - '@wagmi/core': 3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) + '@wagmi/core': 3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) react: 19.2.5 - viem: 2.55.10(typescript@6.0.3)(zod@4.4.3) - wagmi: 3.6.14(@tanstack/query-core@5.100.10)(@tanstack/react-query@5.100.10(react@19.2.5))(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) + viem: 2.55.10(typescript@6.0.3)(zod@4.6.6) + wagmi: 3.6.14(@tanstack/query-core@5.100.10)(@tanstack/react-query@5.100.10(react@19.2.5))(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) transitivePeerDependencies: - '@modelcontextprotocol/sdk' - '@types/react' @@ -9180,7 +9121,7 @@ snapshots: ajv@8.20.0: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.1.8 + fast-uri: 3.1.9 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 @@ -9188,23 +9129,19 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.2.2: {} - ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 ansi-styles@5.2.0: {} - ansi-styles@6.2.3: {} - ansis@4.4.0: {} any-promise@1.3.0: {} archiver-utils@5.0.2: dependencies: - glob: 10.5.0 + glob: 14.0.2 graceful-fs: 4.2.11 is-stream: 2.0.1 lazystream: 1.0.1 @@ -9252,7 +9189,7 @@ snapshots: axios@1.20.0: dependencies: - follow-redirects: 1.16.1 + follow-redirects: 1.16.2 form-data: 4.0.6 https-proxy-agent: 5.0.1 proxy-from-env: 2.1.0 @@ -9332,15 +9269,15 @@ snapshots: blake3-wasm@2.1.5: {} - body-parser@2.3.0: + body-parser@2.4.0: dependencies: bytes: 3.1.2 - content-type: 2.0.0 + content-type: 2.1.0 debug: 4.4.3 http-errors: 2.0.1 iconv-lite: 0.7.3 on-finished: 2.4.1 - qs: 6.16.0 + qs: 6.16.2 raw-body: 3.0.2 type-is: 2.1.0 transitivePeerDependencies: @@ -9485,6 +9422,8 @@ snapshots: content-type@2.0.0: {} + content-type@2.1.0: {} + convert-hrtime@5.0.0: {} convert-source-map@2.0.0: {} @@ -9617,19 +9556,15 @@ snapshots: es-errors: 1.3.0 gopd: 1.2.0 - eastasianwidth@0.2.0: {} - ee-first@1.1.1: {} electron-to-chromium@1.5.425: {} emoji-regex@8.0.0: {} - emoji-regex@9.2.2: {} - emulate@0.5.0(patch_hash=b2fb51af97ea1d50b418f6a8216cf9423b584f2f690e7d2beec2f6e10e5ca234)(hono@4.13.13): dependencies: - '@hono/node-server': 2.0.10(hono@4.13.13) + '@hono/node-server': 2.1.3(hono@4.13.13) commander: 14.0.3 picocolors: 1.1.1 yaml: 2.8.4 @@ -9845,12 +9780,12 @@ snapshots: express-rate-limit@8.5.2(express@5.2.1): dependencies: express: 5.2.1 - ip-address: 10.7.1 + ip-address: 10.7.4 express@5.2.1: dependencies: accepts: 2.0.0 - body-parser: 2.3.0 + body-parser: 2.4.0 content-disposition: 1.1.0 content-type: 1.0.5 cookie: 0.7.2 @@ -9869,7 +9804,7 @@ snapshots: once: 1.4.0 parseurl: 1.3.3 proxy-addr: 2.0.8 - qs: 6.16.0 + qs: 6.16.2 range-parser: 1.3.0 router: 2.2.0 send: 1.2.1 @@ -9898,7 +9833,7 @@ snapshots: dependencies: fast-string-truncated-width: 3.0.3 - fast-uri@3.1.8: {} + fast-uri@3.1.9: {} fast-wrap-ansi@0.2.0: dependencies: @@ -9941,12 +9876,7 @@ snapshots: dependencies: tabbable: 6.5.0 - follow-redirects@1.16.1: {} - - foreground-child@3.3.1: - dependencies: - cross-spawn: 7.0.6 - signal-exit: 4.1.0 + follow-redirects@1.16.2: {} form-data@4.0.6: dependencies: @@ -10011,14 +9941,11 @@ snapshots: github-slugger@2.0.0: {} - glob@10.5.0: + glob@14.0.2: dependencies: - foreground-child: 3.3.1 - jackspeak: 3.4.3 - minimatch: 9.0.9 + minimatch: 11.0.3 minipass: 7.1.3 - package-json-from-dist: 1.0.1 - path-scurry: 1.11.1 + path-scurry: 3.0.0 gopd@1.2.0: {} @@ -10228,10 +10155,10 @@ snapshots: highlight.js@11.11.1: {} - hono-openapi@1.3.1(@hono/standard-validator@0.2.3(@standard-schema/spec@1.1.0)(hono@4.13.13))(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3))(@standard-community/standard-openapi@0.2.9(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3))(@standard-schema/spec@1.1.0)(openapi-types@12.1.3)(zod@4.4.3))(@types/json-schema@7.0.15)(hono@4.13.13)(openapi-types@12.1.3): + hono-openapi@1.3.1(@hono/standard-validator@0.2.3(@standard-schema/spec@1.1.0)(hono@4.13.13))(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6))(@standard-community/standard-openapi@0.2.9(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6))(@standard-schema/spec@1.1.0)(openapi-types@12.1.3)(zod@4.6.6))(@types/json-schema@7.0.15)(hono@4.13.13)(openapi-types@12.1.3): dependencies: - '@standard-community/standard-json': 0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3) - '@standard-community/standard-openapi': 0.2.9(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3))(@standard-schema/spec@1.1.0)(openapi-types@12.1.3)(zod@4.4.3) + '@standard-community/standard-json': 0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6) + '@standard-community/standard-openapi': 0.2.9(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6))(@standard-schema/spec@1.1.0)(openapi-types@12.1.3)(zod@4.6.6) '@types/json-schema': 7.0.15 openapi-types: 12.1.3 optionalDependencies: @@ -10257,7 +10184,7 @@ snapshots: http-proxy@1.18.1: dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.16.1 + follow-redirects: 1.16.2 requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -10283,7 +10210,7 @@ snapshots: ieee754@1.2.1: {} - image-size@2.0.2(patch_hash=b2539bd5b3c5327ab322c926063ccef0439f86e222b3ca342993e7de2cd39af2): {} + image-size@2.0.3: {} import-fresh@3.3.1: dependencies: @@ -10298,7 +10225,7 @@ snapshots: '@toon-format/toon': 2.3.1 tokenx: 1.3.0 yaml: 2.8.4 - zod: 4.4.3 + zod: 4.6.6 inherits@2.0.4: {} @@ -10308,7 +10235,7 @@ snapshots: intersection-observer@0.10.0: {} - ip-address@10.7.1: {} + ip-address@10.7.4: {} ipaddr.js@1.9.1: {} @@ -10362,12 +10289,6 @@ snapshots: dependencies: ws: 8.21.0 - jackspeak@3.4.3: - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - jiti@2.7.0: {} jose@6.2.3: {} @@ -10541,7 +10462,7 @@ snapshots: devlop: 1.1.0 highlight.js: 11.11.1 - lru-cache@10.4.3: {} + lru-cache@11.5.3: {} lru-cache@5.1.1: dependencies: @@ -11060,7 +10981,7 @@ snapshots: dependencies: '@cspotcode/source-map-support': 0.8.1 sharp: 0.35.5(@types/node@22.19.17) - undici: 7.29.1 + undici: 7.30.1 workerd: 1.20260511.1 ws: 8.21.0 youch: 4.1.0-beta.10 @@ -11073,7 +10994,7 @@ snapshots: dependencies: '@cspotcode/source-map-support': 0.8.1 sharp: 0.35.5(@types/node@22.19.17) - undici: 7.29.1 + undici: 7.30.1 workerd: 1.20261012.1 ws: 8.21.0 youch: 4.1.0-beta.10 @@ -11082,12 +11003,9 @@ snapshots: - bufferutil - utf-8-validate - minimatch@5.1.9: - dependencies: - brace-expansion: 5.0.12 - - minimatch@9.0.9: + minimatch@11.0.3: dependencies: + '@isaacs/nonrecursive-glob-match': 1.0.3 brace-expansion: 5.0.12 minimist@1.2.8: {} @@ -11117,31 +11035,31 @@ snapshots: pkg-types: 1.3.1 ufo: 1.6.4 - mppx@0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.54.6(typescript@6.0.3)(zod@4.6.5)): + mppx@0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.54.6(typescript@6.0.3)(zod@4.6.6)): dependencies: '@stripe/stripe-js': 9.9.0 eventsource-parser: 3.1.0 incur: 0.4.19 - ox: 0.14.30(typescript@6.0.3)(zod@4.4.3) - viem: 2.54.6(typescript@6.0.3)(zod@4.6.5) - zod: 4.4.3 + ox: 0.14.30(typescript@6.0.3)(zod@4.6.6) + viem: 2.54.6(typescript@6.0.3)(zod@4.6.6) + zod: 4.6.6 optionalDependencies: - '@modelcontextprotocol/sdk': 1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3) + '@modelcontextprotocol/sdk': 1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6) express: 5.2.1 hono: 4.13.13 transitivePeerDependencies: - typescript - mppx@0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)): + mppx@0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)): dependencies: '@stripe/stripe-js': 9.9.0 eventsource-parser: 3.1.0 incur: 0.4.19 - ox: 0.14.30(typescript@6.0.3)(zod@4.4.3) - viem: 2.55.10(typescript@6.0.3)(zod@4.4.3) - zod: 4.4.3 + ox: 0.14.30(typescript@6.0.3)(zod@4.6.6) + viem: 2.55.10(typescript@6.0.3)(zod@4.6.6) + zod: 4.6.6 optionalDependencies: - '@modelcontextprotocol/sdk': 1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3) + '@modelcontextprotocol/sdk': 1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6) express: 5.2.1 hono: 4.13.13 transitivePeerDependencies: @@ -11254,7 +11172,7 @@ snapshots: outvariant@1.4.3: {} - ox@0.14.20(typescript@6.0.3)(zod@4.4.3): + ox@0.14.20(typescript@6.0.3)(zod@4.6.6): dependencies: '@adraffy/ens-normalize': 1.11.1 '@noble/ciphers': 1.3.0 @@ -11262,14 +11180,14 @@ snapshots: '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.2.3(typescript@6.0.3)(zod@4.4.3) + abitype: 1.2.3(typescript@6.0.3)(zod@4.6.6) eventemitter3: 5.0.1 optionalDependencies: typescript: 6.0.3 transitivePeerDependencies: - zod - ox@0.14.20(typescript@6.0.3)(zod@4.6.5): + ox@0.14.30(typescript@6.0.3)(zod@4.6.6): dependencies: '@adraffy/ens-normalize': 1.11.1 '@noble/ciphers': 1.3.0 @@ -11277,14 +11195,14 @@ snapshots: '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.2.3(typescript@6.0.3)(zod@4.6.5) + abitype: 1.3.0(typescript@6.0.3)(zod@4.6.6) eventemitter3: 5.0.1 optionalDependencies: typescript: 6.0.3 transitivePeerDependencies: - zod - ox@0.14.30(typescript@6.0.3)(zod@4.4.3): + ox@0.14.33(typescript@6.0.3)(zod@4.6.6): dependencies: '@adraffy/ens-normalize': 1.11.1 '@noble/ciphers': 1.3.0 @@ -11292,52 +11210,7 @@ snapshots: '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.3.0(typescript@6.0.3)(zod@4.4.3) - eventemitter3: 5.0.1 - optionalDependencies: - typescript: 6.0.3 - transitivePeerDependencies: - - zod - - ox@0.14.30(typescript@6.0.3)(zod@4.6.5): - dependencies: - '@adraffy/ens-normalize': 1.11.1 - '@noble/ciphers': 1.3.0 - '@noble/curves': 1.9.1 - '@noble/hashes': 1.8.0 - '@scure/bip32': 1.7.0 - '@scure/bip39': 1.6.0 - abitype: 1.3.0(typescript@6.0.3)(zod@4.6.5) - eventemitter3: 5.0.1 - optionalDependencies: - typescript: 6.0.3 - transitivePeerDependencies: - - zod - - ox@0.14.33(typescript@6.0.3)(zod@4.4.3): - dependencies: - '@adraffy/ens-normalize': 1.11.1 - '@noble/ciphers': 1.3.0 - '@noble/curves': 1.9.1 - '@noble/hashes': 1.8.0 - '@scure/bip32': 1.7.0 - '@scure/bip39': 1.6.0 - abitype: 1.2.3(typescript@6.0.3)(zod@4.4.3) - eventemitter3: 5.0.1 - optionalDependencies: - typescript: 6.0.3 - transitivePeerDependencies: - - zod - - ox@0.14.33(typescript@6.0.3)(zod@4.6.5): - dependencies: - '@adraffy/ens-normalize': 1.11.1 - '@noble/ciphers': 1.3.0 - '@noble/curves': 1.9.1 - '@noble/hashes': 1.8.0 - '@scure/bip32': 1.7.0 - '@scure/bip39': 1.6.0 - abitype: 1.2.3(typescript@6.0.3)(zod@4.6.5) + abitype: 1.2.3(typescript@6.0.3)(zod@4.6.6) eventemitter3: 5.0.1 optionalDependencies: typescript: 6.0.3 @@ -11424,8 +11297,6 @@ snapshots: p-timeout@6.1.4: {} - package-json-from-dist@1.0.1: {} - package-manager-detector@1.6.0: {} parent-module@1.0.1: @@ -11461,9 +11332,9 @@ snapshots: path-key@4.0.0: {} - path-scurry@1.11.1: + path-scurry@3.0.0: dependencies: - lru-cache: 10.4.3 + lru-cache: 11.5.3 minipass: 7.1.3 path-to-regexp@6.3.0: {} @@ -11644,7 +11515,7 @@ snapshots: end-of-stream: 1.4.5 once: 1.4.0 - qs@6.16.0: + qs@6.16.2: dependencies: es-define-property: 1.0.1 side-channel: 1.1.1 @@ -11727,7 +11598,7 @@ snapshots: readdir-glob@1.1.3: dependencies: - minimatch: 5.1.9 + minimatch: 11.0.3 readdirp@5.1.1: {} @@ -11865,7 +11736,7 @@ snapshots: dependencies: '@types/mdast': 4.0.4 estree-util-value-to-estree: 3.5.0 - toml: 4.2.0 + toml: 5.0.1 unified: 11.0.5 unist-util-mdx-define: 1.1.2 yaml: 2.8.4 @@ -11991,11 +11862,11 @@ snapshots: transitivePeerDependencies: - supports-color - seroval-plugins@1.6.8(seroval@1.6.9): + seroval-plugins@1.6.8(seroval@1.6.12): dependencies: - seroval: 1.6.9 + seroval: 1.6.12 - seroval@1.6.9: {} + seroval@1.6.12: {} serve-static@2.2.1: dependencies: @@ -12170,12 +12041,6 @@ snapshots: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - string-width@5.1.2: - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.2.0 - string_decoder@1.1.1: dependencies: safe-buffer: 5.1.2 @@ -12200,10 +12065,6 @@ snapshots: dependencies: ansi-regex: 5.0.1 - strip-ansi@7.2.0: - dependencies: - ansi-regex: 6.2.2 - strip-final-newline@4.0.0: {} strip-json-comments@2.0.1: {} @@ -12214,7 +12075,7 @@ snapshots: stripe@19.3.0(@types/node@22.19.17): dependencies: - qs: 6.16.0 + qs: 6.16.2 optionalDependencies: '@types/node': 22.19.17 @@ -12264,25 +12125,25 @@ snapshots: tapable@2.3.3: {} - tapimo@0.5.2(e49d296c651e14dc90170aab9b136842): + tapimo@0.5.2(c1458eeeaf225851985db699c3faa73c): dependencies: - '@hono/node-server': 2.0.10(hono@4.13.13) + '@hono/node-server': 2.1.3(hono@4.13.13) '@hono/standard-validator': 0.2.3(@standard-schema/spec@1.1.0)(hono@4.13.13) - accounts: 0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.54.6(typescript@6.0.3)(zod@4.6.5))(wagmi@3.6.14) + accounts: 0.15.2(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(@types/react@19.2.14)(@wagmi/core@3.4.11)(express@5.2.1)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.54.6(typescript@6.0.3)(zod@4.6.6))(wagmi@3.6.14) hono: 4.13.13 - hono-openapi: 1.3.1(@hono/standard-validator@0.2.3(@standard-schema/spec@1.1.0)(hono@4.13.13))(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3))(@standard-community/standard-openapi@0.2.9(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.4.3))(zod@4.4.3))(@standard-schema/spec@1.1.0)(openapi-types@12.1.3)(zod@4.4.3))(@types/json-schema@7.0.15)(hono@4.13.13)(openapi-types@12.1.3) + hono-openapi: 1.3.1(@hono/standard-validator@0.2.3(@standard-schema/spec@1.1.0)(hono@4.13.13))(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6))(@standard-community/standard-openapi@0.2.9(@standard-community/standard-json@0.3.5(@standard-schema/spec@1.1.0)(@types/json-schema@7.0.15)(quansync@0.2.11)(zod-to-json-schema@3.25.2(zod@4.6.6))(zod@4.6.6))(@standard-schema/spec@1.1.0)(openapi-types@12.1.3)(zod@4.6.6))(@types/json-schema@7.0.15)(hono@4.13.13)(openapi-types@12.1.3) incur: 0.4.19 jose: 6.2.3 kysely: 0.29.3 - mppx: 0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.54.6(typescript@6.0.3)(zod@4.6.5)) + mppx: 0.8.9(@modelcontextprotocol/sdk@1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6))(express@5.2.1)(hono@4.13.13)(typescript@6.0.3)(viem@2.54.6(typescript@6.0.3)(zod@4.6.6)) nanoid: 5.1.16 - ox: 0.14.30(typescript@6.0.3)(zod@4.6.5) + ox: 0.14.30(typescript@6.0.3)(zod@4.6.6) pg: 8.22.0 stripe: 19.3.0(@types/node@22.19.17) tidx.ts: 0.1.2(typescript@6.0.3) - viem: 2.54.6(typescript@6.0.3)(zod@4.6.5) + viem: 2.54.6(typescript@6.0.3)(zod@4.6.6) vocs: 2.5.3(@cfworker/json-schema@4.1.1)(@tanstack/react-router@1.170.44(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@19.2.14)(@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4))(@vue/compiler-sfc@3.5.42)(axios@1.20.0)(change-case@5.4.4)(esbuild@0.28.1)(idb-keyval@6.2.2)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(rollup@4.62.2)(typescript@6.0.3) - zod: 4.6.5 + zod: 4.6.6 transitivePeerDependencies: - '@cfworker/json-schema' - '@date-fns/tz' @@ -12422,7 +12283,7 @@ snapshots: ssh-remote-port-forward: 1.0.4 tar-fs: 3.1.2 tmp: 0.2.7 - undici: 7.29.1 + undici: 7.30.1 transitivePeerDependencies: - bare-abort-controller - bare-buffer @@ -12445,11 +12306,11 @@ snapshots: tidx.ts@0.1.2(typescript@6.0.3): dependencies: - abitype: 1.3.0(typescript@6.0.3)(zod@4.4.3) + abitype: 1.3.0(typescript@6.0.3)(zod@4.6.6) kysely: 0.28.17 mitt: 3.0.1 - ox: 0.14.30(typescript@6.0.3)(zod@4.4.3) - zod: 4.4.3 + ox: 0.14.30(typescript@6.0.3)(zod@4.6.6) + zod: 4.6.6 transitivePeerDependencies: - typescript @@ -12491,7 +12352,7 @@ snapshots: tokenx@1.3.0: {} - toml@4.2.0: {} + toml@5.0.1: {} totalist@3.0.1: {} @@ -12555,7 +12416,7 @@ snapshots: undici-types@7.18.2: {} - undici@7.29.1: {} + undici@7.30.1: {} unenv@2.0.0-rc.24: dependencies: @@ -12761,15 +12622,15 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - viem@2.54.6(typescript@6.0.3)(zod@4.6.5): + viem@2.54.6(typescript@6.0.3)(zod@4.6.6): dependencies: '@noble/curves': 1.9.1 '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.2.3(typescript@6.0.3)(zod@4.6.5) + abitype: 1.2.3(typescript@6.0.3)(zod@4.6.6) isows: 1.0.7(ws@8.21.0) - ox: 0.14.30(typescript@6.0.3)(zod@4.6.5) + ox: 0.14.30(typescript@6.0.3)(zod@4.6.6) ws: 8.21.0 optionalDependencies: typescript: 6.0.3 @@ -12778,15 +12639,15 @@ snapshots: - utf-8-validate - zod - viem@2.55.10(typescript@6.0.3)(zod@4.4.3): + viem@2.55.10(typescript@6.0.3)(zod@4.6.6): dependencies: '@noble/curves': 1.9.1 '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.2.3(typescript@6.0.3)(zod@4.4.3) + abitype: 1.2.3(typescript@6.0.3)(zod@4.6.6) isows: 1.0.7(ws@8.21.0) - ox: 0.14.33(typescript@6.0.3)(zod@4.4.3) + ox: 0.14.33(typescript@6.0.3)(zod@4.6.6) ws: 8.21.0 optionalDependencies: typescript: 6.0.3 @@ -12893,7 +12754,7 @@ snapshots: dependencies: '@base-ui/react': 1.4.1(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) '@codesandbox/sandpack-react': 2.20.0(react-dom@19.2.5(react@19.2.5))(react@19.2.5) - '@hono/node-server': 2.0.10(hono@4.13.13) + '@hono/node-server': 2.1.3(hono@4.13.13) '@iconify-json/lucide': 1.2.117 '@iconify-json/simple-icons': 1.2.90 '@iconify-json/vscode-icons': 1.2.67 @@ -12902,7 +12763,7 @@ snapshots: '@mdx-js/mdx': 3.1.1 '@mdx-js/react': 3.1.1(@types/react@19.2.14)(react@19.2.5) '@mdx-js/rollup': 3.1.1(rollup@4.62.2) - '@modelcontextprotocol/sdk': 1.32.1(@cfworker/json-schema@4.1.1)(zod@4.4.3) + '@modelcontextprotocol/sdk': 1.32.1(@cfworker/json-schema@4.1.1)(zod@4.6.6) '@remix-run/node-fetch-server': 0.13.3 '@scalar/api-client': 3.13.6(axios@1.20.0)(change-case@5.4.4)(idb-keyval@6.2.2)(tailwindcss@4.3.3)(typescript@6.0.3) '@scalar/openapi-parser': 0.28.9 @@ -12929,7 +12790,7 @@ snapshots: extend: 3.0.2 github-slugger: 2.0.0 hono: 4.13.13 - image-size: 2.0.2(patch_hash=b2539bd5b3c5327ab322c926063ccef0439f86e222b3ca342993e7de2cd39af2) + image-size: 2.0.3 lz-string: 1.5.0 magic-string: 0.30.21 mdast-util-from-markdown: 2.0.3 @@ -12970,7 +12831,7 @@ snapshots: vite-plugin-arraybuffer: 0.1.4 vite-plugin-wasm: 3.6.0(@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4)) yaml: 2.8.4 - zod: 4.4.3 + zod: 4.6.6 optionalDependencies: vite: '@voidzero-dev/vite-plus-core@1.3.0(@types/node@22.19.17)(@typescript/native-preview@7.0.0-dev.20260505.1)(@vitest/ui@5.0.5)(esbuild@0.28.1)(jiti@2.7.0)(msw@2.13.6(@types/node@22.19.17)(typescript@6.0.3))(playwright@1.59.1)(tsx@4.23.1)(typescript@6.0.3)(yaml@2.8.4)' transitivePeerDependencies: @@ -13034,14 +12895,14 @@ snapshots: w3c-keyname@2.2.8: {} - wagmi@3.6.14(@tanstack/query-core@5.100.10)(@tanstack/react-query@5.100.10(react@19.2.5))(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)): + wagmi@3.6.14(@tanstack/query-core@5.100.10)(@tanstack/react-query@5.100.10(react@19.2.5))(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)): dependencies: '@tanstack/react-query': 5.100.10(react@19.2.5) - '@wagmi/connectors': 8.0.13(@wagmi/core@3.4.11)(accounts@0.15.2)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) - '@wagmi/core': 3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.4.3)) + '@wagmi/connectors': 8.0.13(@wagmi/core@3.4.11)(accounts@0.15.2)(typescript@6.0.3)(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) + '@wagmi/core': 3.4.11(@tanstack/query-core@5.100.10)(@types/react@19.2.14)(accounts@0.15.2)(react@19.2.5)(typescript@6.0.3)(use-sync-external-store@1.4.0(react@19.2.5))(viem@2.55.10(typescript@6.0.3)(zod@4.6.6)) react: 19.2.5 use-sync-external-store: 1.4.0(react@19.2.5) - viem: 2.55.10(typescript@6.0.3)(zod@4.4.3) + viem: 2.55.10(typescript@6.0.3)(zod@4.6.6) optionalDependencies: typescript: 6.0.3 transitivePeerDependencies: @@ -13059,12 +12920,12 @@ snapshots: wata@0.4.0(react@19.2.5)(typescript@6.0.3): dependencies: - '@hono/node-server': 2.0.10(hono@4.13.13) + '@hono/node-server': 2.1.3(hono@4.13.13) '@noble/ciphers': 2.2.0 '@noble/hashes': 2.2.0 hono: 4.13.13 - ox: 0.14.20(typescript@6.0.3)(zod@4.4.3) - zod: 4.4.3 + ox: 0.14.20(typescript@6.0.3)(zod@4.6.6) + zod: 4.6.6 optionalDependencies: react: 19.2.5 transitivePeerDependencies: @@ -13074,9 +12935,9 @@ snapshots: web-worker@1.5.0: {} - webauthx@0.1.2(typescript@6.0.3)(zod@4.6.5): + webauthx@0.1.2(typescript@6.0.3)(zod@4.6.6): dependencies: - ox: 0.14.20(typescript@6.0.3)(zod@4.6.5) + ox: 0.14.20(typescript@6.0.3)(zod@4.6.6) transitivePeerDependencies: - typescript - zod @@ -13145,12 +13006,6 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 - wrap-ansi@8.1.0: - dependencies: - ansi-styles: 6.2.3 - string-width: 5.1.2 - strip-ansi: 7.2.0 - wrappy@1.0.2: {} ws@8.21.0: {} @@ -13227,13 +13082,11 @@ snapshots: compress-commons: 6.0.2 readable-stream: 4.7.0 - zod-to-json-schema@3.25.2(zod@4.4.3): + zod-to-json-schema@3.25.2(zod@4.6.6): dependencies: - zod: 4.4.3 - - zod@4.4.3: {} + zod: 4.6.6 - zod@4.6.5: {} + zod@4.6.6: {} zustand@5.0.0(@types/react@19.2.14)(react@19.2.5)(use-sync-external-store@1.4.0(react@19.2.5)): optionalDependencies: @@ -13276,4 +13129,3 @@ time: typescript@6.0.3: '2026-04-16T23:38:27.905Z' unplugin-auto-import@21.0.0: '2026-01-14T23:43:49.409Z' unplugin-icons@23.0.1: '2026-01-14T10:53:22.330Z' - zod@4.4.3: '2026-05-04T07:06:40.819Z' diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 57b7661..4e8ddec 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -18,12 +18,6 @@ allowBuilds: workerd@1.20260511.1: true workerd@1.20261006.1: true workerd@1.20261012.1: true -auditConfig: - ignoreGhsas: - # Fixed locally by config/patches/image-size@2.0.2.patch; no upstream release yet. - # Keep these version-based audit exceptions only while that patch is applied. - - GHSA-5p2g-fcmc-qvqq - - GHSA-w3rx-r6r6-pgpr blockExoticSubdeps: true catalog: # Vite+ dependency aliases. @@ -47,14 +41,11 @@ minimumReleaseAgeExclude: - protobufjs@7.6.5 - form-data@4.0.6 - launch-editor@2.14.2 - - ip-address@10.7.1 - nanoid@3.3.18 - nanoid@5.1.16 - postcss@8.5.23 - brace-expansion@5.0.12 - - fast-uri@3.1.8 - tar@7.5.21 - - undici@7.29.1 - ws@8.21.0 minimumReleaseAgeStrict: true overrides: @@ -70,47 +61,55 @@ overrides: '@vue/shared': 3.5.42 vue: 3.5.42 proxy-addr: 2.0.8 - seroval: 1.6.9 + seroval: 1.6.12 source-map-js: 1.2.2 tinypool: 2.1.2 '@babel/core': 7.29.7 '@grpc/grpc-js': 1.14.5 axios: 1.20.0 - '@hono/node-server@<2.0.5': 2.0.10 + '@hono/node-server@<2.1.3': 2.1.3 # Keep browser compatibility data on established releases for CI's package-age policy. baseline-browser-mapping: 2.11.21 browserslist: 4.28.9 caniuse-lite: 1.0.30001810 electron-to-chromium: 1.5.425 node-releases: 2.0.55 + body-parser: 2.4.0 brace-expansion: 5.0.12 esbuild: 0.28.1 - fast-uri: 3.1.8 - follow-redirects: 1.16.1 + fast-uri: 3.1.9 + follow-redirects: 1.16.2 form-data: 4.0.6 - ip-address: 10.7.1 + image-size: 2.0.3 + ip-address: 10.7.4 launch-editor: 2.14.2 nanoid@<3.3.18: 3.3.18 'nanoid@>=4.0.0 <5.1.16': 5.1.16 postcss: 8.5.23 protobufjs: 7.6.5 + qs: 6.16.2 shell-quote: 1.11.0 # Miniflare pins an older sharp; keep the patched release until it upgrades. sharp: 0.35.5 tar: 7.5.21 tmp: 0.2.7 - # remark-mdx-frontmatter still requires toml ^3.0.0; both advisories need 4.2.0. - 'remark-mdx-frontmatter>toml': 4.2.0 - undici: 7.29.1 + # remark-mdx-frontmatter still requires toml ^3.0.0; advisories need 5.0.1. + 'remark-mdx-frontmatter>toml': 5.0.1 + # archiver 7 (testcontainers, dev only) still pins glob ^10 and readdir-glob's minimatch ^5; + # GHSA-3g3m-2fjr-6pw4 needs glob 14.0.2 and GHSA-g3hv-75wg-m249 minimatch 11.0.1. Both keep the APIs archiver uses (glob.sync, Minimatch). + 'archiver-utils>glob': 14.0.2 + 'readdir-glob>minimatch': 11.0.3 + undici: 7.30.1 uuid: 11.1.1 vite: 'catalog:' vite-plus: 1.3.0 vitest: 'catalog:' ws: 8.21.0 + zod: 4.6.6 packageExtensions: '@cloudflare/vitest-plugin@*': dependencies: - undici: 7.29.1 + undici: 7.30.1 '@svgr/core@*': dependencies: '@svgr/plugin-jsx': 8.1.0 @@ -127,7 +126,6 @@ patchedDependencies: # Related: https://github.com/cloudflare/workers-sdk/issues/11100 '@tanstack/react-start@1.169.2': config/patches/@tanstack__react-start@1.169.2.patch emulate@0.5.0: config/patches/emulate@0.5.0.patch - image-size@2.0.2: config/patches/image-size@2.0.2.patch prool@0.2.4: config/patches/prool@0.2.4.patch peerDependencyRules: allowAny: diff --git a/src/lib/dependencyPatches.test.ts b/src/lib/dependencyPatches.test.ts index 2d992a9..451b56d 100644 --- a/src/lib/dependencyPatches.test.ts +++ b/src/lib/dependencyPatches.test.ts @@ -2,13 +2,13 @@ import { createRequire } from 'node:module' import { pathToFileURL } from 'node:url' import { expect, test } from 'vitest' -// Resolve the patched transitive dependencies actually used by tapimo's docs stack. +// Resolve the upgraded transitive dependencies actually used by tapimo's docs stack. const require = createRequire(import.meta.url) const tapimoRequire = createRequire(require.resolve('tapimo/client')) const vocsRequire = createRequire(tapimoRequire.resolve('vocs')) -test.each(['cjs', 'mjs'])('image-size %s preserves supported image metadata', async (extension) => { - const path = vocsRequire.resolve('image-size').replace(/\.cjs$/, `.${extension}`) +test.each(['cjs', 'esm'])('image-size %s preserves supported image metadata', async (format) => { + const path = vocsRequire.resolve('image-size').replace('/dist/cjs/', `/dist/${format}/`) const { imageSize } = (await import(pathToFileURL(path).href)) as { imageSize: (input: Uint8Array) => { height: number; width: number } } @@ -45,6 +45,13 @@ test.each(['cjs', 'mjs'])('image-size %s preserves supported image metadata', as expect( imageSize(Buffer.concat([header, box('jxlp', Buffer.concat([Buffer.alloc(4), codestream]))])), ).toMatchObject({ height: 1, width: 1 }) + + // A zero-length ICNS entry looped forever before 2.0.3 (GHSA-w3rx-r6r6-pgpr). + const zeroIcns = Buffer.alloc(24) + zeroIcns.write('icns') + zeroIcns.writeUInt32BE(zeroIcns.length, 4) + zeroIcns.write('icp4', 8) + expect(() => imageSize(zeroIcns)).toThrow() }) test('the TOML upgrade preserves frontmatter values', () => {