diff --git a/biome.json b/biome.json index 7e38d335..fee30179 100644 --- a/biome.json +++ b/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.1.2/schema.json", + "$schema": "https://biomejs.dev/schemas/2.1.3/schema.json", "vcs": { "enabled": true, "clientKind": "git", diff --git a/package.json b/package.json index 0fdeafb0..5d2ec210 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "json-stable-stringify-without-jsonify": "^1.0.1", "jszip": "^3.10.1", "moment": "^2.30.1", - "mqtt": "^5.11.0", + "mqtt": "^5.13.3", "object-assign-deep": "^0.4.0", "rimraf": "^6.0.1", "semver": "^7.7.1", @@ -69,19 +69,19 @@ "zigbee2mqtt-windfront": "^1.5.2" }, "devDependencies": { - "@biomejs/biome": "^2.0.5", + "@biomejs/biome": "^2.1.3", "@codspeed/vitest-plugin": "^4.0.1", "@types/finalhandler": "^1.2.3", "@types/humanize-duration": "^3.27.4", "@types/js-yaml": "^4.0.9", - "@types/node": "^24.0.3", + "@types/node": "^24.1.0", "@types/object-assign-deep": "^0.4.3", "@types/readable-stream": "4.0.21", "@types/serve-static": "^1.15.7", "@types/ws": "8.18.1", "@vitest/coverage-v8": "^3.1.1", "tmp": "^0.2.3", - "typescript": "^5.8.3", + "typescript": "^5.9.2", "vitest": "^3.1.1" }, "pnpm": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4e9740cf..03e40225 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -45,7 +45,7 @@ importers: specifier: ^2.30.1 version: 2.30.1 mqtt: - specifier: ^5.11.0 + specifier: ^5.13.3 version: 5.13.3 object-assign-deep: specifier: ^0.4.0 @@ -88,11 +88,11 @@ importers: version: 1.5.2 devDependencies: '@biomejs/biome': - specifier: ^2.0.5 - version: 2.1.2 + specifier: ^2.1.3 + version: 2.1.3 '@codspeed/vitest-plugin': specifier: ^4.0.1 - version: 4.0.1(vite@6.3.5(@types/node@24.0.15))(vitest@3.2.4(@types/node@24.0.15)) + version: 4.0.1(vite@6.3.5(@types/node@24.1.0))(vitest@3.2.4(@types/node@24.1.0)) '@types/finalhandler': specifier: ^1.2.3 version: 1.2.4 @@ -103,8 +103,8 @@ importers: specifier: ^4.0.9 version: 4.0.9 '@types/node': - specifier: ^24.0.3 - version: 24.0.15 + specifier: ^24.1.0 + version: 24.1.0 '@types/object-assign-deep': specifier: ^0.4.3 version: 0.4.3 @@ -119,16 +119,16 @@ importers: version: 8.18.1 '@vitest/coverage-v8': specifier: ^3.1.1 - version: 3.2.4(vitest@3.2.4(@types/node@24.0.15)) + version: 3.2.4(vitest@3.2.4(@types/node@24.1.0)) tmp: specifier: ^0.2.3 version: 0.2.3 typescript: - specifier: ^5.8.3 - version: 5.8.3 + specifier: ^5.9.2 + version: 5.9.2 vitest: specifier: ^3.1.1 - version: 3.2.4(@types/node@24.0.15) + version: 3.2.4(@types/node@24.1.0) optionalDependencies: unix-dgram: specifier: ^2.0.6 @@ -153,8 +153,8 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - '@babel/runtime@7.27.6': - resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} + '@babel/runtime@7.28.2': + resolution: {integrity: sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA==} engines: {node: '>=6.9.0'} '@babel/types@7.27.6': @@ -165,55 +165,55 @@ packages: resolution: {integrity: sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==} engines: {node: '>=18'} - '@biomejs/biome@2.1.2': - resolution: {integrity: sha512-yq8ZZuKuBVDgAS76LWCfFKHSYIAgqkxVB3mGVVpOe2vSkUTs7xG46zXZeNPRNVjiJuw0SZ3+J2rXiYx0RUpfGg==} + '@biomejs/biome@2.1.3': + resolution: {integrity: sha512-KE/tegvJIxTkl7gJbGWSgun7G6X/n2M6C35COT6ctYrAy7SiPyNvi6JtoQERVK/VRbttZfgGq96j2bFmhmnH4w==} engines: {node: '>=14.21.3'} hasBin: true - '@biomejs/cli-darwin-arm64@2.1.2': - resolution: {integrity: sha512-leFAks64PEIjc7MY/cLjE8u5OcfBKkcDB0szxsWUB4aDfemBep1WVKt0qrEyqZBOW8LPHzrFMyDl3FhuuA0E7g==} + '@biomejs/cli-darwin-arm64@2.1.3': + resolution: {integrity: sha512-LFLkSWRoSGS1wVUD/BE6Nlt2dSn0ulH3XImzg2O/36BoToJHKXjSxzPEMAqT9QvwVtk7/9AQhZpTneERU9qaXA==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [darwin] - '@biomejs/cli-darwin-x64@2.1.2': - resolution: {integrity: sha512-Nmmv7wRX5Nj7lGmz0FjnWdflJg4zii8Ivruas6PBKzw5SJX/q+Zh2RfnO+bBnuKLXpj8kiI2x2X12otpH6a32A==} + '@biomejs/cli-darwin-x64@2.1.3': + resolution: {integrity: sha512-Q/4OTw8P9No9QeowyxswcWdm0n2MsdCwWcc5NcKQQvzwPjwuPdf8dpPPf4r+x0RWKBtl1FLiAUtJvBlri6DnYw==} engines: {node: '>=14.21.3'} cpu: [x64] os: [darwin] - '@biomejs/cli-linux-arm64-musl@2.1.2': - resolution: {integrity: sha512-qgHvafhjH7Oca114FdOScmIKf1DlXT1LqbOrrbR30kQDLFPEOpBG0uzx6MhmsrmhGiCFCr2obDamu+czk+X0HQ==} + '@biomejs/cli-linux-arm64-musl@2.1.3': + resolution: {integrity: sha512-KXouFSBnoxAWZYDQrnNRzZBbt5s9UJkIm40hdvSL9mBxSSoxRFQJbtg1hP3aa8A2SnXyQHxQfpiVeJlczZt76w==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-arm64@2.1.2': - resolution: {integrity: sha512-NWNy2Diocav61HZiv2enTQykbPP/KrA/baS7JsLSojC7Xxh2nl9IczuvE5UID7+ksRy2e7yH7klm/WkA72G1dw==} + '@biomejs/cli-linux-arm64@2.1.3': + resolution: {integrity: sha512-2hS6LgylRqMFmAZCOFwYrf77QMdUwJp49oe8PX/O8+P2yKZMSpyQTf3Eo5ewnsMFUEmYbPOskafdV1ds1MZMJA==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-x64-musl@2.1.2': - resolution: {integrity: sha512-xlB3mU14ZUa3wzLtXfmk2IMOGL+S0aHFhSix/nssWS/2XlD27q+S6f0dlQ8WOCbYoXcuz8BCM7rCn2lxdTrlQA==} + '@biomejs/cli-linux-x64-musl@2.1.3': + resolution: {integrity: sha512-KaLAxnROouzIWtl6a0Y88r/4hW5oDUJTIqQorOTVQITaKQsKjZX4XCUmHIhdEk8zMnaiLZzRTAwk1yIAl+mIew==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-linux-x64@2.1.2': - resolution: {integrity: sha512-Km/UYeVowygTjpX6sGBzlizjakLoMQkxWbruVZSNE6osuSI63i4uCeIL+6q2AJlD3dxoiBJX70dn1enjQnQqwA==} + '@biomejs/cli-linux-x64@2.1.3': + resolution: {integrity: sha512-NxlSCBhLvQtWGagEztfAZ4WcE1AkMTntZV65ZvR+J9jp06+EtOYEBPQndA70ZGhHbEDG57bR6uNvqkd1WrEYVA==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-win32-arm64@2.1.2': - resolution: {integrity: sha512-G8KWZli5ASOXA3yUQgx+M4pZRv3ND16h77UsdunUL17uYpcL/UC7RkWTdkfvMQvogVsAuz5JUcBDjgZHXxlKoA==} + '@biomejs/cli-win32-arm64@2.1.3': + resolution: {integrity: sha512-V9CUZCtWH4u0YwyCYbQ3W5F4ZGPWp2C2TYcsiWFNNyRfmOW1j/TY/jAurl33SaRjgZPO5UUhGyr9m6BN9t84NQ==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [win32] - '@biomejs/cli-win32-x64@2.1.2': - resolution: {integrity: sha512-9zajnk59PMpjBkty3bK2IrjUsUHvqe9HWwyAWQBjGLE7MIBjbX2vwv1XPEhmO2RRuGoTkVx3WCanHrjAytICLA==} + '@biomejs/cli-win32-x64@2.1.3': + resolution: {integrity: sha512-dxy599q6lgp8ANPpR8sDMscwdp9oOumEsVXuVCVT9N2vAho8uYXlCz53JhxX6LtJOXaE73qzgkGQ7QqvFlMC0g==} engines: {node: '>=14.21.3'} cpu: [x64] os: [win32] @@ -561,8 +561,8 @@ packages: '@types/mime@1.3.5': resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - '@types/node@24.0.15': - resolution: {integrity: sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==} + '@types/node@24.1.0': + resolution: {integrity: sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==} '@types/object-assign-deep@0.4.3': resolution: {integrity: sha512-d9Gxaj5j1hzrxJ61EFEg13B4g4FgrT/DYtcDWFXPehR8DF2SUZbVMFtZIs8exkVRiqrqBpdTc/lUUZjncsPpMw==} @@ -674,8 +674,8 @@ packages: bindings@1.5.0: resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} - bl@6.1.0: - resolution: {integrity: sha512-ClDyJGQkc8ZtzdAAbAwBmhMSpwN/sC9HA8jxdYm6nVUbCfZbe2mgza4qh7AuEYyEPB/c4Kznf9s66bnsKMQDjw==} + bl@6.1.1: + resolution: {integrity: sha512-yYc8UIHrd1ZTLgNBIE7JjMzUPZH+dec3q7nWkrSHEbtvkQ3h6WKC63W9K5jthcL5EXFyMuWYq+2pq5WMSIgFHw==} bonjour-service@1.3.0: resolution: {integrity: sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==} @@ -1449,8 +1449,8 @@ packages: typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - typescript@5.8.3: - resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + typescript@5.9.2: + resolution: {integrity: sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==} engines: {node: '>=14.17'} hasBin: true @@ -1627,7 +1627,7 @@ snapshots: dependencies: '@babel/types': 7.27.6 - '@babel/runtime@7.27.6': {} + '@babel/runtime@7.28.2': {} '@babel/types@7.27.6': dependencies: @@ -1636,39 +1636,39 @@ snapshots: '@bcoe/v8-coverage@1.0.2': {} - '@biomejs/biome@2.1.2': + '@biomejs/biome@2.1.3': optionalDependencies: - '@biomejs/cli-darwin-arm64': 2.1.2 - '@biomejs/cli-darwin-x64': 2.1.2 - '@biomejs/cli-linux-arm64': 2.1.2 - '@biomejs/cli-linux-arm64-musl': 2.1.2 - '@biomejs/cli-linux-x64': 2.1.2 - '@biomejs/cli-linux-x64-musl': 2.1.2 - '@biomejs/cli-win32-arm64': 2.1.2 - '@biomejs/cli-win32-x64': 2.1.2 + '@biomejs/cli-darwin-arm64': 2.1.3 + '@biomejs/cli-darwin-x64': 2.1.3 + '@biomejs/cli-linux-arm64': 2.1.3 + '@biomejs/cli-linux-arm64-musl': 2.1.3 + '@biomejs/cli-linux-x64': 2.1.3 + '@biomejs/cli-linux-x64-musl': 2.1.3 + '@biomejs/cli-win32-arm64': 2.1.3 + '@biomejs/cli-win32-x64': 2.1.3 - '@biomejs/cli-darwin-arm64@2.1.2': + '@biomejs/cli-darwin-arm64@2.1.3': optional: true - '@biomejs/cli-darwin-x64@2.1.2': + '@biomejs/cli-darwin-x64@2.1.3': optional: true - '@biomejs/cli-linux-arm64-musl@2.1.2': + '@biomejs/cli-linux-arm64-musl@2.1.3': optional: true - '@biomejs/cli-linux-arm64@2.1.2': + '@biomejs/cli-linux-arm64@2.1.3': optional: true - '@biomejs/cli-linux-x64-musl@2.1.2': + '@biomejs/cli-linux-x64-musl@2.1.3': optional: true - '@biomejs/cli-linux-x64@2.1.2': + '@biomejs/cli-linux-x64@2.1.3': optional: true - '@biomejs/cli-win32-arm64@2.1.2': + '@biomejs/cli-win32-arm64@2.1.3': optional: true - '@biomejs/cli-win32-x64@2.1.2': + '@biomejs/cli-win32-x64@2.1.3': optional: true '@codspeed/core@4.0.1': @@ -1680,11 +1680,11 @@ snapshots: transitivePeerDependencies: - debug - '@codspeed/vitest-plugin@4.0.1(vite@6.3.5(@types/node@24.0.15))(vitest@3.2.4(@types/node@24.0.15))': + '@codspeed/vitest-plugin@4.0.1(vite@6.3.5(@types/node@24.1.0))(vitest@3.2.4(@types/node@24.1.0))': dependencies: '@codspeed/core': 4.0.1 - vite: 6.3.5(@types/node@24.0.15) - vitest: 3.2.4(@types/node@24.0.15) + vite: 6.3.5(@types/node@24.1.0) + vitest: 3.2.4(@types/node@24.1.0) transitivePeerDependencies: - debug @@ -1899,7 +1899,7 @@ snapshots: '@types/finalhandler@1.2.4': dependencies: - '@types/node': 24.0.15 + '@types/node': 24.1.0 '@types/http-errors@2.0.5': {} @@ -1909,7 +1909,7 @@ snapshots: '@types/mime@1.3.5': {} - '@types/node@24.0.15': + '@types/node@24.1.0': dependencies: undici-types: 7.8.0 @@ -1917,26 +1917,26 @@ snapshots: '@types/readable-stream@4.0.21': dependencies: - '@types/node': 24.0.15 + '@types/node': 24.1.0 '@types/send@0.17.5': dependencies: '@types/mime': 1.3.5 - '@types/node': 24.0.15 + '@types/node': 24.1.0 '@types/serve-static@1.15.8': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 24.0.15 + '@types/node': 24.1.0 '@types/send': 0.17.5 '@types/triple-beam@1.3.5': {} '@types/ws@8.18.1': dependencies: - '@types/node': 24.0.15 + '@types/node': 24.1.0 - '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/node@24.0.15))': + '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/node@24.1.0))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 @@ -1951,7 +1951,7 @@ snapshots: std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/node@24.0.15) + vitest: 3.2.4(@types/node@24.1.0) transitivePeerDependencies: - supports-color @@ -1963,13 +1963,13 @@ snapshots: chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.4(vite@6.3.5(@types/node@24.0.15))': + '@vitest/mocker@3.2.4(vite@6.3.5(@types/node@24.1.0))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: - vite: 6.3.5(@types/node@24.0.15) + vite: 6.3.5(@types/node@24.1.0) '@vitest/pretty-format@3.2.4': dependencies: @@ -2051,7 +2051,7 @@ snapshots: file-uri-to-path: 1.0.0 optional: true - bl@6.1.0: + bl@6.1.1: dependencies: '@types/readable-stream': 4.0.21 buffer: 6.0.3 @@ -2254,7 +2254,7 @@ snapshots: fast-unique-numbers@8.0.13: dependencies: - '@babel/runtime': 7.27.6 + '@babel/runtime': 7.28.2 tslib: 2.8.1 fast-uri@3.0.6: {} @@ -2522,7 +2522,7 @@ snapshots: mqtt-packet@9.0.2: dependencies: - bl: 6.1.0 + bl: 6.1.1 debug: 4.4.1 process-nextick-args: 2.0.1 transitivePeerDependencies: @@ -2849,7 +2849,7 @@ snapshots: typedarray@0.0.6: {} - typescript@5.8.3: {} + typescript@5.9.2: {} undici-types@7.8.0: {} @@ -2861,13 +2861,13 @@ snapshots: util-deprecate@1.0.2: {} - vite-node@3.2.4(@types/node@24.0.15): + vite-node@3.2.4(@types/node@24.1.0): dependencies: cac: 6.7.14 debug: 4.4.1 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 6.3.5(@types/node@24.0.15) + vite: 6.3.5(@types/node@24.1.0) transitivePeerDependencies: - '@types/node' - jiti @@ -2882,7 +2882,7 @@ snapshots: - tsx - yaml - vite@6.3.5(@types/node@24.0.15): + vite@6.3.5(@types/node@24.1.0): dependencies: esbuild: 0.25.5 fdir: 6.4.6(picomatch@4.0.2) @@ -2891,14 +2891,14 @@ snapshots: rollup: 4.44.0 tinyglobby: 0.2.14 optionalDependencies: - '@types/node': 24.0.15 + '@types/node': 24.1.0 fsevents: 2.3.3 - vitest@3.2.4(@types/node@24.0.15): + vitest@3.2.4(@types/node@24.1.0): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@6.3.5(@types/node@24.0.15)) + '@vitest/mocker': 3.2.4(vite@6.3.5(@types/node@24.1.0)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 @@ -2916,11 +2916,11 @@ snapshots: tinyglobby: 0.2.14 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 6.3.5(@types/node@24.0.15) - vite-node: 3.2.4(@types/node@24.0.15) + vite: 6.3.5(@types/node@24.1.0) + vite-node: 3.2.4(@types/node@24.1.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 24.0.15 + '@types/node': 24.1.0 transitivePeerDependencies: - jiti - less @@ -2975,19 +2975,19 @@ snapshots: worker-timers-broker@6.1.8: dependencies: - '@babel/runtime': 7.27.6 + '@babel/runtime': 7.28.2 fast-unique-numbers: 8.0.13 tslib: 2.8.1 worker-timers-worker: 7.0.71 worker-timers-worker@7.0.71: dependencies: - '@babel/runtime': 7.27.6 + '@babel/runtime': 7.28.2 tslib: 2.8.1 worker-timers@7.1.8: dependencies: - '@babel/runtime': 7.27.6 + '@babel/runtime': 7.28.2 tslib: 2.8.1 worker-timers-broker: 6.1.8 worker-timers-worker: 7.0.71