Fix Docker and CI builds (#773)

* Fix Docker and CI builds

* Fix indentation

* Fix release

---------

Co-authored-by: philon- <philon-@users.noreply.github.com>
This commit is contained in:
Jeremy Gallant
2025-08-10 21:58:09 -04:00
committed by GitHub
co-authored by philon-
parent f04ec36faf
commit 2735c37fad
16 changed files with 342 additions and 234 deletions
+2 -3
View File
@@ -35,9 +35,8 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-pnpm- ${{ runner.os }}-pnpm-
# - name: Run tests - name: Run tests
# working-directory: packages/web run: pnpm run test
# run: deno task test
- name: Install Dependencies - name: Install Dependencies
working-directory: packages/web working-directory: packages/web
+3
View File
@@ -44,6 +44,9 @@ jobs:
- name: Check formatter - name: Check formatter
run: pnpm run check run: pnpm run check
- name: Run tests
run: pnpm run test
- name: Build Package - name: Build Package
working-directory: packages/web working-directory: packages/web
run: pnpm run build run: pnpm run build
+22 -17
View File
@@ -61,26 +61,31 @@ jobs:
- name: Publish packages to npm and JSR - name: Publish packages to npm and JSR
run: | run: |
for dir in packages/*; do for dir in packages/*; do
echo "Processing $dir" if [ "$dir" != "packages/web" ]; then
echo "Processing $dir"
cd $dir cd $dir
# Build and publish to npm if package.json exists # Build and publish to npm if package.json exists
if [ -f "package.json" ]; then if [ -f "package.json" ]; then
echo "Building and publishing $dir to npm..." echo "Building and publishing $dir to npm..."
pnpm run build:npm pnpm install
pnpm run publish:npm || echo "npm publish failed for $dir" pnpm run build:npm
pnpm run publish:npm || echo "npm publish failed for $dir"
fi
pnpm run prepare:jsr
# Publish to JSR if jsr.json exists
if [ -f "jsr.json" ]; then
echo "Publishing $dir to jsr..."
deno publish || echo "JSR publish failed for $dir"
fi
cd - > /dev/null
else
echo "Skipping $dir"
fi fi
pnpm run prepare:jsr
# Publish to JSR if jsr.json exists
if [ -f "jsr.json" ]; then
echo "Publishing $dir to jsr..."
deno publish || echo "JSR publish failed for $dir"
fi
cd - > /dev/null
done done
+18 -13
View File
@@ -13,31 +13,36 @@ jobs:
steps: steps:
- name: Checkout Code - name: Checkout Code
uses: actions/checkout@v4 uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Bun # --- Setup Node.js and pnpm ---
uses: oven-sh/setup-bun@v2 - name: Setup Node.js
uses: actions/setup-node@v4
with: with:
bun-version: latest node-version: 22
- name: Cache Bun Dependencies - name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: latest
# --- Cache pnpm Dependencies ---
- name: Cache pnpm Dependencies
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: | path: |
~/.bun/install/cache ~/.pnpm-store
packages/web/node_modules packages/web/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lockb') }} key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: | restore-keys: |
${{ runner.os }}-bun- ${{ runner.os }}-pnpm-
- name: Run Web App Tests - name: Install dependencies
working-directory: packages/web working-directory: packages/web
run: bun run test run: pnpm install
- name: Create Web App Release Archive - name: Create Web App Release Archive
working-directory: packages/web working-directory: packages/web
run: bun run package run: pnpm run package
- name: Upload Web App Archive - name: Upload Web App Archive
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
@@ -59,7 +64,7 @@ jobs:
uses: redhat-actions/buildah-build@v2 uses: redhat-actions/buildah-build@v2
with: with:
containerfiles: | containerfiles: |
./infra/Containerfile ./packages/web/infra/Containerfile
image: ghcr.io/${{ github.repository }} image: ghcr.io/${{ github.repository }}
tags: latest, ${{ github.event.release.tag_name }} tags: latest, ${{ github.event.release.tag_name }}
oci: true oci: true
+4 -2
View File
@@ -25,7 +25,8 @@
"check:fix": "biome check --write", "check:fix": "biome check --write",
"build:all": "pnpm run --filter '*' build", "build:all": "pnpm run --filter '*' build",
"clean:all": "pnpm run --filter '*' clean", "clean:all": "pnpm run --filter '*' clean",
"publish:packages": "pnpm run --filter 'packages/transport-* packages/core' build" "publish:packages": "pnpm run --filter 'packages/transport-* packages/core' build",
"test": "vitest"
}, },
"dependencies": { "dependencies": {
"@bufbuild/protobuf": "^2.6.1", "@bufbuild/protobuf": "^2.6.1",
@@ -37,6 +38,7 @@
"@types/node": "^22.16.4", "@types/node": "^22.16.4",
"biome": "^0.3.3", "biome": "^0.3.3",
"tsdown": "^0.13.4", "tsdown": "^0.13.4",
"typescript": "^5.8.3" "typescript": "^5.8.3",
"vitest": "^3.2.4"
} }
} }
+1 -1
View File
@@ -10,7 +10,7 @@
"types": "./dist/mod.d.mts", "types": "./dist/mod.d.mts",
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"tsdown": { "tsdown": {
"entry": ["mod.ts"], "entry": "mod.ts",
"dts": true, "dts": true,
"format": ["esm"], "format": ["esm"],
"splitting": false, "splitting": false,
+10
View File
@@ -10,6 +10,13 @@
"types": "./dist/mod.d.mts", "types": "./dist/mod.d.mts",
"files": ["dist/*", "mod.ts", "README.md", "../../LICENSE"], "files": ["dist/*", "mod.ts", "README.md", "../../LICENSE"],
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"tsdown": {
"entry": "mod.ts",
"dts": true,
"format": ["esm"],
"splitting": false,
"clean": true
},
"scripts": { "scripts": {
"preinstall": "npx only-allow pnpm", "preinstall": "npx only-allow pnpm",
"prepack": "cp ../../LICENSE ./LICENSE", "prepack": "cp ../../LICENSE ./LICENSE",
@@ -18,5 +25,8 @@
"publish:npm": "pnpm clean && pnpm build:npm && pnpm publish --access public", "publish:npm": "pnpm clean && pnpm build:npm && pnpm publish --access public",
"prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr", "prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr",
"publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check" "publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check"
},
"dependencies": {
"@meshtastic/core": "workspace:*"
} }
} }
+4 -1
View File
@@ -8,7 +8,7 @@
"types": "./dist/mod.d.mts", "types": "./dist/mod.d.mts",
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"tsdown": { "tsdown": {
"entry": ["mod.ts"], "entry": "mod.ts",
"dts": true, "dts": true,
"format": ["esm"], "format": ["esm"],
"splitting": false, "splitting": false,
@@ -28,5 +28,8 @@
"publish:npm": "pnpm clean && pnpm build:npm && pnpm publish --access public", "publish:npm": "pnpm clean && pnpm build:npm && pnpm publish --access public",
"prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr", "prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr",
"publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check" "publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check"
},
"dependencies": {
"@meshtastic/core": "workspace:*"
} }
} }
+4 -1
View File
@@ -11,7 +11,7 @@
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"tsdown": { "tsdown": {
"entry": ["mod.ts"], "entry": "mod.ts",
"dts": true, "dts": true,
"format": ["esm"], "format": ["esm"],
"splitting": false, "splitting": false,
@@ -31,5 +31,8 @@
"publish:npm": "pnpm clean && pnpm build:npm && pnpm publish --access public", "publish:npm": "pnpm clean && pnpm build:npm && pnpm publish --access public",
"prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr", "prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr",
"publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check" "publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check"
},
"dependencies": {
"@meshtastic/core": "workspace:*"
} }
} }
+10 -10
View File
@@ -1,17 +1,17 @@
{ {
"name": "@meshtastic/transport-web-bluetooth", "name": "@meshtastic/transport-web-bluetooth",
"version": "0.1.4", "version": "0.1.4",
"description": "A transport layer for Meshtastic applications using Web Bluetooth.", "description": "A transport layer for Meshtastic applications using Web Bluetooth.",
"exports": { "exports": {
".": "./mod.ts" ".": "./mod.ts"
}, },
"main": "./dist/mod.mjs", "main": "./dist/mod.mjs",
"module": "./dist/mod.mjs", "module": "./dist/mod.mjs",
"types": "./dist/mod.d.mts", "types": "./dist/mod.d.mts",
"files": ["dist/*", "mod.ts", "README.md", "../../LICENSE"], "files": ["dist/*", "mod.ts", "README.md", "../../LICENSE"],
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"tsdown": { "tsdown": {
"entry": ["mod.ts"], "entry": "mod.ts",
"dts": true, "dts": true,
"format": ["esm"], "format": ["esm"],
"splitting": false, "splitting": false,
@@ -26,8 +26,8 @@
"prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr", "prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr",
"publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check" "publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check"
}, },
"dependencies": { "dependencies": {
"@types/web-bluetooth": "npm:@types/web-bluetooth@^0.0.20" "@types/web-bluetooth": "npm:@types/web-bluetooth@^0.0.20",
} "@meshtastic/core": "workspace:*"
}
} }
+3 -2
View File
@@ -11,7 +11,7 @@
"files": ["dist/*", "mod.ts", "README.md", "../../LICENSE"], "files": ["dist/*", "mod.ts", "README.md", "../../LICENSE"],
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"tsdown": { "tsdown": {
"entry": ["mod.ts"], "entry": "mod.ts",
"dts": true, "dts": true,
"format": ["esm"], "format": ["esm"],
"splitting": false, "splitting": false,
@@ -27,6 +27,7 @@
"publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check" "publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check"
}, },
"dependencies": { "dependencies": {
"@types/w3c-web-serial": "npm:@types/w3c-web-serial@^1.0.7" "@types/w3c-web-serial": "npm:@types/w3c-web-serial@^1.0.7",
"@meshtastic/core": "workspace:*"
} }
} }
+3 -3
View File
@@ -1,12 +1,12 @@
FROM nginx:1.27-alpine FROM nginx:1.27-alpine
RUN rm -r /usr/share/nginx/html \ RUN rm -r /usr/share/nginx/html \
&& mkdir -p /usr/share/nginx/html \ && mkdir -p /usr/share/nginx/html \
&& mkdir -p /etc/nginx/conf.d && mkdir -p /etc/nginx/conf.d
WORKDIR /usr/share/nginx/html WORKDIR /usr/share/nginx/html
ADD dist . ADD ./dist .
COPY ./infra/default.conf /etc/nginx/conf.d/default.conf COPY ./infra/default.conf /etc/nginx/conf.d/default.conf
+3 -3
View File
@@ -29,9 +29,9 @@
"@bufbuild/protobuf": "^2.6.0", "@bufbuild/protobuf": "^2.6.0",
"@hookform/resolvers": "^5.1.1", "@hookform/resolvers": "^5.1.1",
"@meshtastic/core": "workspace:*", "@meshtastic/core": "workspace:*",
"@meshtastic/transport-http": "npm:@jsr/meshtastic__transport-http", "@meshtastic/transport-http": "workspace:*",
"@meshtastic/transport-web-bluetooth": "npm:@jsr/meshtastic__transport-web-bluetooth", "@meshtastic/transport-web-bluetooth": "workspace:*",
"@meshtastic/transport-web-serial": "npm:@jsr/meshtastic__transport-web-serial", "@meshtastic/transport-web-serial": "workspace:*",
"@noble/curves": "^1.9.2", "@noble/curves": "^1.9.2",
"@radix-ui/react-accordion": "^1.2.11", "@radix-ui/react-accordion": "^1.2.11",
"@radix-ui/react-checkbox": "^1.3.2", "@radix-ui/react-checkbox": "^1.3.2",
+13 -11
View File
@@ -1,21 +1,23 @@
import path from "node:path"; import path from "node:path";
import react from "@vitejs/plugin-react";
import { defineConfig } from "vitest/config";
import process from "node:process"; import process from "node:process";
import react from "@vitejs/plugin-react";
import { enableMapSet } from "immer"; import { enableMapSet } from "immer";
import { defineProject } from "vitest/config";
enableMapSet(); enableMapSet();
export default defineConfig({ export default defineProject({
plugins: [react()], plugins: [react()],
resolve: { resolve: {
alias: { alias: {
"@app": path.resolve(process.cwd(), "./src"), "@app": path.resolve(process.cwd(), "./packages/web/src"),
"@public": path.resolve(process.cwd(), "./public"), "@public": path.resolve(process.cwd(), "./packages/web/public"),
"@core": path.resolve(process.cwd(), "./src/core"), "@core": path.resolve(process.cwd(), "./packages/web/src/core"),
"@pages": path.resolve(process.cwd(), "./src/pages"), "@pages": path.resolve(process.cwd(), "./packages/web/src/pages"),
"@components": path.resolve(process.cwd(), "./src/components"), "@components": path.resolve(
"@layouts": path.resolve(process.cwd(), "./src/layouts"), process.cwd(),
"./packages/web/src/components",
),
"@layouts": path.resolve(process.cwd(), "./packages/web/src/layouts"),
}, },
}, },
test: { test: {
@@ -24,7 +26,7 @@ export default defineConfig({
mockReset: true, mockReset: true,
clearMocks: true, clearMocks: true,
restoreMocks: true, restoreMocks: true,
root: path.resolve(process.cwd(), "./src"), root: path.resolve(process.cwd(), "./packages/web/src"),
include: ["**/*.{test,spec}.{ts,tsx}"], include: ["**/*.{test,spec}.{ts,tsx}"],
setupFiles: ["./src/tests/setup.ts"], setupFiles: ["./src/tests/setup.ts"],
}, },
+235 -167
View File
@@ -23,16 +23,19 @@ importers:
devDependencies: devDependencies:
'@types/node': '@types/node':
specifier: ^22.16.4 specifier: ^22.16.4
version: 22.17.0 version: 22.17.1
biome: biome:
specifier: ^0.3.3 specifier: ^0.3.3
version: 0.3.3 version: 0.3.3
tsdown: tsdown:
specifier: ^0.13.4 specifier: ^0.13.4
version: 0.13.4(typescript@5.9.2) version: 0.13.5(typescript@5.9.2)
typescript: typescript:
specifier: ^5.8.3 specifier: ^5.8.3
version: 5.9.2 version: 5.9.2
vitest:
specifier: ^3.2.4
version: 3.2.4(@types/node@22.17.1)(happy-dom@18.0.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
packages/core: packages/core:
dependencies: dependencies:
@@ -40,20 +43,38 @@ importers:
specifier: npm:crc@^4.3.2 specifier: npm:crc@^4.3.2
version: 4.3.2 version: 4.3.2
packages/transport-deno: {} packages/transport-deno:
dependencies:
'@meshtastic/core':
specifier: workspace:*
version: link:../core
packages/transport-http: {} packages/transport-http:
dependencies:
'@meshtastic/core':
specifier: workspace:*
version: link:../core
packages/transport-node: {} packages/transport-node:
dependencies:
'@meshtastic/core':
specifier: workspace:*
version: link:../core
packages/transport-web-bluetooth: packages/transport-web-bluetooth:
dependencies: dependencies:
'@meshtastic/core':
specifier: workspace:*
version: link:../core
'@types/web-bluetooth': '@types/web-bluetooth':
specifier: npm:@types/web-bluetooth@^0.0.20 specifier: npm:@types/web-bluetooth@^0.0.20
version: 0.0.20 version: 0.0.20
packages/transport-web-serial: packages/transport-web-serial:
dependencies: dependencies:
'@meshtastic/core':
specifier: workspace:*
version: link:../core
'@types/w3c-web-serial': '@types/w3c-web-serial':
specifier: npm:@types/w3c-web-serial@^1.0.7 specifier: npm:@types/w3c-web-serial@^1.0.7
version: 1.0.8 version: 1.0.8
@@ -70,14 +91,14 @@ importers:
specifier: workspace:* specifier: workspace:*
version: link:../core version: link:../core
'@meshtastic/transport-http': '@meshtastic/transport-http':
specifier: npm:@jsr/meshtastic__transport-http specifier: workspace:*
version: '@jsr/meshtastic__transport-http@0.2.1' version: link:../transport-http
'@meshtastic/transport-web-bluetooth': '@meshtastic/transport-web-bluetooth':
specifier: npm:@jsr/meshtastic__transport-web-bluetooth specifier: workspace:*
version: '@jsr/meshtastic__transport-web-bluetooth@0.1.2' version: link:../transport-web-bluetooth
'@meshtastic/transport-web-serial': '@meshtastic/transport-web-serial':
specifier: npm:@jsr/meshtastic__transport-web-serial specifier: workspace:*
version: '@jsr/meshtastic__transport-web-serial@0.2.1' version: link:../transport-web-serial
'@noble/curves': '@noble/curves':
specifier: ^1.9.2 specifier: ^1.9.2
version: 1.9.6 version: 1.9.6
@@ -134,25 +155,25 @@ importers:
version: 1.2.3(@types/react-dom@19.1.7(@types/react@19.1.9))(@types/react@19.1.9)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) version: 1.2.3(@types/react-dom@19.1.7(@types/react@19.1.9))(@types/react@19.1.9)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
'@tailwindcss/vite': '@tailwindcss/vite':
specifier: ^4.1.11 specifier: ^4.1.11
version: 4.1.11(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)) version: 4.1.11(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))
'@tanstack/react-router': '@tanstack/react-router':
specifier: ^1.127.9 specifier: ^1.127.9
version: 1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1) version: 1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
'@tanstack/react-router-devtools': '@tanstack/react-router-devtools':
specifier: ^1.127.9 specifier: ^1.127.9
version: 1.130.13(@tanstack/react-router@1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.130.12)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3) version: 1.131.2(@tanstack/react-router@1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.131.2)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3)
'@tanstack/router-cli': '@tanstack/router-cli':
specifier: ^1.127.8 specifier: ^1.127.8
version: 1.130.16 version: 1.131.2
'@tanstack/router-devtools': '@tanstack/router-devtools':
specifier: ^1.127.9 specifier: ^1.127.9
version: 1.130.13(@tanstack/react-router@1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.130.12)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3) version: 1.131.2(@tanstack/react-router@1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.131.2)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3)
'@turf/turf': '@turf/turf':
specifier: ^7.2.0 specifier: ^7.2.0
version: 7.2.0 version: 7.2.0
'@types/node': '@types/node':
specifier: ^24.0.14 specifier: ^24.0.14
version: 24.2.0 version: 24.2.1
'@types/web-bluetooth': '@types/web-bluetooth':
specifier: ^0.0.21 specifier: ^0.0.21
version: 0.0.21 version: 0.0.21
@@ -221,13 +242,13 @@ importers:
version: 1.5.4 version: 1.5.4
vite: vite:
specifier: ^7.0.4 specifier: ^7.0.4
version: 7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) version: 7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
vite-plugin-html: vite-plugin-html:
specifier: ^3.2.2 specifier: ^3.2.2
version: 3.2.2(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)) version: 3.2.2(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))
zod: zod:
specifier: ^4.0.5 specifier: ^4.0.5
version: 4.0.15 version: 4.0.17
zustand: zustand:
specifier: 5.0.6 specifier: 5.0.6
version: 5.0.6(@types/react@19.1.9)(immer@10.1.1)(react@19.1.1)(use-sync-external-store@1.5.0(react@19.1.1)) version: 5.0.6(@types/react@19.1.9)(immer@10.1.1)(react@19.1.1)(use-sync-external-store@1.5.0(react@19.1.1))
@@ -237,7 +258,7 @@ importers:
version: 2.0.6 version: 2.0.6
'@tanstack/router-plugin': '@tanstack/router-plugin':
specifier: ^1.127.9 specifier: ^1.127.9
version: 1.130.16(@tanstack/react-router@1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)) version: 1.131.2(@tanstack/react-router@1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))
'@testing-library/jest-dom': '@testing-library/jest-dom':
specifier: ^6.6.3 specifier: ^6.6.3
version: 6.6.4 version: 6.6.4
@@ -249,7 +270,7 @@ importers:
version: 14.6.1(@testing-library/dom@10.4.1) version: 14.6.1(@testing-library/dom@10.4.1)
'@types/chrome': '@types/chrome':
specifier: ^0.1.0 specifier: ^0.1.0
version: 0.1.2 version: 0.1.3
'@types/js-cookie': '@types/js-cookie':
specifier: ^3.0.6 specifier: ^3.0.6
version: 3.0.6 version: 3.0.6
@@ -267,7 +288,7 @@ importers:
version: 1.0.8 version: 1.0.8
'@vitejs/plugin-react': '@vitejs/plugin-react':
specifier: ^4.6.0 specifier: ^4.6.0
version: 4.7.0(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)) version: 4.7.0(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))
autoprefixer: autoprefixer:
specifier: ^10.4.21 specifier: ^10.4.21
version: 10.4.21(postcss@8.5.6) version: 10.4.21(postcss@8.5.6)
@@ -300,7 +321,7 @@ importers:
version: 5.9.2 version: 5.9.2
vitest: vitest:
specifier: ^3.2.4 specifier: ^3.2.4
version: 3.2.4(@types/node@24.2.0)(happy-dom@18.0.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) version: 3.2.4(@types/node@24.2.1)(happy-dom@18.0.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
packages: packages:
@@ -733,21 +754,9 @@ packages:
'@jridgewell/trace-mapping@0.3.29': '@jridgewell/trace-mapping@0.3.29':
resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==} resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==}
'@jsr/meshtastic__core@2.6.6':
resolution: {integrity: sha512-f9c/HV6d7fGg+FtsnnC6DSomdGQ7Hr96JiT3epTUduwClYFdi/ftKEadfV55cMhCrp1QK9y6lkPG2S+X1AwN5Q==, tarball: https://npm.jsr.io/~/11/@jsr/meshtastic__core/2.6.6.tgz}
'@jsr/meshtastic__protobufs@2.7.0': '@jsr/meshtastic__protobufs@2.7.0':
resolution: {integrity: sha512-ndZhUyB/ADSyjJI+iSeSOoIKqNGZ2+ERVjfY0qnh4jgF740tFTwefC5mzZhOqDLbreGFYS79+429NtH5Ujdzdg==, tarball: https://npm.jsr.io/~/11/@jsr/meshtastic__protobufs/2.7.0.tgz} resolution: {integrity: sha512-ndZhUyB/ADSyjJI+iSeSOoIKqNGZ2+ERVjfY0qnh4jgF740tFTwefC5mzZhOqDLbreGFYS79+429NtH5Ujdzdg==, tarball: https://npm.jsr.io/~/11/@jsr/meshtastic__protobufs/2.7.0.tgz}
'@jsr/meshtastic__transport-http@0.2.1':
resolution: {integrity: sha512-lmQKr3aIINKvtGROU4HchmSVqbZSbkIHqajowRRC8IAjsnR0zNTyxz210QyY4pFUF9hpcW3GRjwq5h/VO2JuGg==, tarball: https://npm.jsr.io/~/11/@jsr/meshtastic__transport-http/0.2.1.tgz}
'@jsr/meshtastic__transport-web-bluetooth@0.1.2':
resolution: {integrity: sha512-Z+5pv9RXNgY0/crKExOH3pZ6LT0HIXFmnBL7NX5AO2knOFRn+4lmxQEhhmiTTlkUfqyEfAvbjuY5u4mq9TPTdQ==, tarball: https://npm.jsr.io/~/11/@jsr/meshtastic__transport-web-bluetooth/0.1.2.tgz}
'@jsr/meshtastic__transport-web-serial@0.2.1':
resolution: {integrity: sha512-yumjEGLkAuJYOC3aWKvZzbQqi/LnqaKfNpVCY7Ki7oLtAshNiZrBLiwiFhN7+ZR9FfMdJThyBMqREBDRRWTO1Q==, tarball: https://npm.jsr.io/~/11/@jsr/meshtastic__transport-web-serial/0.2.1.tgz}
'@mapbox/geojson-rewind@0.5.2': '@mapbox/geojson-rewind@0.5.2':
resolution: {integrity: sha512-tJaT+RbYGJYStt7wI3cq4Nl4SXxG8W7JDG5DMJu97V25RnbNg3QtQtf+KD+VLjNpWKYsRvXDNmNrBgEETr1ifA==} resolution: {integrity: sha512-tJaT+RbYGJYStt7wI3cq4Nl4SXxG8W7JDG5DMJu97V25RnbNg3QtQtf+KD+VLjNpWKYsRvXDNmNrBgEETr1ifA==}
hasBin: true hasBin: true
@@ -1598,20 +1607,20 @@ packages:
peerDependencies: peerDependencies:
vite: ^5.2.0 || ^6 || ^7 vite: ^5.2.0 || ^6 || ^7
'@tanstack/history@1.130.12': '@tanstack/history@1.131.2':
resolution: {integrity: sha512-2VO1nNFDWojgZ7Uqv/OJfH6LphZQ1kE6l8sI3YBgSPtj3qN6I/rsoTHW9rGjwiDO8sQoDRXod2hpH6HMs5NDsw==} resolution: {integrity: sha512-cs1WKawpXIe+vSTeiZUuSBy8JFjEuDgdMKZFRLKwQysKo8y2q6Q1HvS74Yw+m5IhOW1nTZooa6rlgdfXcgFAaw==}
engines: {node: '>=12'} engines: {node: '>=12'}
'@tanstack/react-router-devtools@1.130.13': '@tanstack/react-router-devtools@1.131.2':
resolution: {integrity: sha512-cY+jYxEP4/WNDgFFlI5/1u2U9zY9zHmJDoNxCF3NiaSgtAIVHdCKRGvfG6oRl6EposNGtn+JJhQkMkfAyoN9lQ==} resolution: {integrity: sha512-7bJxZadqjZrsdPOcKWp2+sc8cnARHzrgr/eduDJDA79Rbx7qEh8TgAY7xFqlhShCxA90/a9y4wastbs8AqnDcA==}
engines: {node: '>=12'} engines: {node: '>=12'}
peerDependencies: peerDependencies:
'@tanstack/react-router': ^1.130.12 '@tanstack/react-router': ^1.131.2
react: '>=18.0.0 || >=19.0.0' react: '>=18.0.0 || >=19.0.0'
react-dom: '>=18.0.0 || >=19.0.0' react-dom: '>=18.0.0 || >=19.0.0'
'@tanstack/react-router@1.130.12': '@tanstack/react-router@1.131.2':
resolution: {integrity: sha512-7BYgOpGc1vK8MH1LIFLLBudGpH46GQy+hewnP7dNQJ4KHmkwPHv958L1IMA9jU/rs5g1ZH5n1f33BAMOBXUMYQ==} resolution: {integrity: sha512-MGkCPA/7HJ9UWIV27CtKb5i3Sizxywx43/h+ifrEC+2guzQR8yBcI4ibwMmSpsuGqKOzkuvX63RU1SVeCwbg+g==}
engines: {node: '>=12'} engines: {node: '>=12'}
peerDependencies: peerDependencies:
react: '>=18.0.0 || >=19.0.0' react: '>=18.0.0 || >=19.0.0'
@@ -1623,20 +1632,20 @@ packages:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
'@tanstack/router-cli@1.130.16': '@tanstack/router-cli@1.131.2':
resolution: {integrity: sha512-uKw0wRxoaZWh36Re6VKA4IxB/wFPZSJdFIS90JfoFF7MwspQ7fwCN/50+mQQbNNzTyKIz8PNqCh405vbnFNZGQ==} resolution: {integrity: sha512-TXuhhRHktSI5VQMWI8RlfKumlMFaGUUyebGIEMgvFC9bvIZ0TTqcNHz4XF9XB0k/dpFZdZOVF/FstO82RxjsVQ==}
engines: {node: '>=12'} engines: {node: '>=12'}
hasBin: true hasBin: true
'@tanstack/router-core@1.130.12': '@tanstack/router-core@1.131.2':
resolution: {integrity: sha512-emq3cRU9Na1hnIToojzkfJcOZm/MG2bv9M+Kr/elUxEf83enGEwQXC1EKezTuwNgeJrOv8vPJdEhWM7IQodnHQ==} resolution: {integrity: sha512-ITnzlVk9iZTYNe/1FuLnDhpDTml1PfzUZk3V5He+NrXIcPGd2h3plZlv6NqZirNZMhCoiX52jfM1BOHGuy1ICA==}
engines: {node: '>=12'} engines: {node: '>=12'}
'@tanstack/router-devtools-core@1.130.13': '@tanstack/router-devtools-core@1.131.2':
resolution: {integrity: sha512-Fn8lwnc5zvyllaDQNY6qTSTtKZsEY4mlZlJVTmC2/vvY1susXUA0NQPmpBquJYQAHJGzqPX83h/yKb7hzBSH3g==} resolution: {integrity: sha512-j7++EKhxbB8JXFqbZH6fRdCge7pujqrFrBEDDpNX7ms3EY7MwAcqiYE4qqY9YsJhfAOjZWo+88KEzX9AB09twA==}
engines: {node: '>=12'} engines: {node: '>=12'}
peerDependencies: peerDependencies:
'@tanstack/router-core': ^1.130.12 '@tanstack/router-core': ^1.131.2
csstype: ^3.0.10 csstype: ^3.0.10
solid-js: '>=1.9.5' solid-js: '>=1.9.5'
tiny-invariant: ^1.3.3 tiny-invariant: ^1.3.3
@@ -1644,11 +1653,11 @@ packages:
csstype: csstype:
optional: true optional: true
'@tanstack/router-devtools@1.130.13': '@tanstack/router-devtools@1.131.2':
resolution: {integrity: sha512-Bcke0l4pOx+HXEF92DYLfhXqoWDSJ5+pFNDf4mxopc6Ulrnpdb+kDW44U/Mfri9NNIGMIuLLK4TAsx83aJ4XZg==} resolution: {integrity: sha512-zNXdJpIEd1UPz3chKeyaB/b2bVanzqNnFkW83UekMJiuaJByX/J6lDvn9gtLSBxgYZOnXdO4PAmpTs8Z+Be7Lw==}
engines: {node: '>=12'} engines: {node: '>=12'}
peerDependencies: peerDependencies:
'@tanstack/react-router': ^1.130.12 '@tanstack/react-router': ^1.131.2
csstype: ^3.0.10 csstype: ^3.0.10
react: '>=18.0.0 || >=19.0.0' react: '>=18.0.0 || >=19.0.0'
react-dom: '>=18.0.0 || >=19.0.0' react-dom: '>=18.0.0 || >=19.0.0'
@@ -1656,16 +1665,16 @@ packages:
csstype: csstype:
optional: true optional: true
'@tanstack/router-generator@1.130.16': '@tanstack/router-generator@1.131.2':
resolution: {integrity: sha512-m2meMPHEu0YRowCfhFkQGmZ2fMlCkp4Bda0nxuvWiyo13oClOMssjReGZiSsRWHoQaYdCJm3RjUhzG8bNZhV8A==} resolution: {integrity: sha512-A4IW5zmAV5NrRCf2UXONA47DLSEXPaIcPL3Bmi6MHmA8QaWkoJ7frTHv82QE8DmyIsv2Y7c0CfINy2K5KET0Tw==}
engines: {node: '>=12'} engines: {node: '>=12'}
'@tanstack/router-plugin@1.130.16': '@tanstack/router-plugin@1.131.2':
resolution: {integrity: sha512-Kpw+WmyAUQWdrM1hmweQOoUG8h6r2PI8qZRb+AOq9zARvH1z2xoKS67sdT6DYOMQLeZvZhWW8hfMX72+3G+LtA==} resolution: {integrity: sha512-+F/Orgn4Gi69WBn+aRmVezGbbk/Uk8viciSkdeQUpU2cWtMSR2EFU2xjFG06YCTX92jcZAYfSRQMpStncRXJQQ==}
engines: {node: '>=12'} engines: {node: '>=12'}
peerDependencies: peerDependencies:
'@rsbuild/core': '>=1.0.2' '@rsbuild/core': '>=1.0.2'
'@tanstack/react-router': ^1.130.12 '@tanstack/react-router': ^1.131.2
vite: '>=5.0.0 || >=6.0.0' vite: '>=5.0.0 || >=6.0.0'
vite-plugin-solid: ^2.11.2 vite-plugin-solid: ^2.11.2
webpack: '>=5.92.0' webpack: '>=5.92.0'
@@ -1681,15 +1690,15 @@ packages:
webpack: webpack:
optional: true optional: true
'@tanstack/router-utils@1.130.12': '@tanstack/router-utils@1.131.2':
resolution: {integrity: sha512-vyk7qduNrVrJWgUXHqRyZrFLOL9YJ/4ycN5PbJ2cLRBln01NkG/abKTHi32V31yMehxkxAO0EoicicvalnV0FA==} resolution: {integrity: sha512-sr3x0d2sx9YIJoVth0QnfEcAcl+39sQYaNQxThtHmRpyeFYNyM2TTH+Ud3TNEnI3bbzmLYEUD+7YqB987GzhDA==}
engines: {node: '>=12'} engines: {node: '>=12'}
'@tanstack/store@0.7.2': '@tanstack/store@0.7.2':
resolution: {integrity: sha512-RP80Z30BYiPX2Pyo0Nyw4s1SJFH2jyM6f9i3HfX4pA+gm5jsnYryscdq2aIQLnL4TaGuQMO+zXmN9nh1Qck+Pg==} resolution: {integrity: sha512-RP80Z30BYiPX2Pyo0Nyw4s1SJFH2jyM6f9i3HfX4pA+gm5jsnYryscdq2aIQLnL4TaGuQMO+zXmN9nh1Qck+Pg==}
'@tanstack/virtual-file-routes@1.129.7': '@tanstack/virtual-file-routes@1.131.2':
resolution: {integrity: sha512-a+MxoAXG+Sq94Jp67OtveKOp2vQq75AWdVI8DRt6w19B0NEqpfm784FTLbVp/qdR1wmxCOmKAvElGSIiBOx5OQ==} resolution: {integrity: sha512-VEEOxc4mvyu67O+Bl0APtYjwcNRcL9it9B4HKbNgcBTIOEalhk+ufBl4kiqc8WP1sx1+NAaiS+3CcJBhrqaSRg==}
engines: {node: '>=12'} engines: {node: '>=12'}
'@testing-library/dom@10.4.1': '@testing-library/dom@10.4.1':
@@ -2087,8 +2096,8 @@ packages:
'@types/chai@5.2.2': '@types/chai@5.2.2':
resolution: {integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==} resolution: {integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==}
'@types/chrome@0.1.2': '@types/chrome@0.1.3':
resolution: {integrity: sha512-XaWTqBwozHV/zLOIp04ucjgcXXPxD6Kdh8C6Np6XzO+NNRuFoBY8xFqQDTUW/bfZW8KibUxKmimY5+OPzWdlEA==} resolution: {integrity: sha512-KVOIHEKjDZXMg8c18Ir3kbLc+bb8JxZjNJv27Wen3F0I/eeTyrYm7tWOjGhoBjI9fFQfjsTSyFcENBo9Wbl5kw==}
'@types/d3-voronoi@1.1.12': '@types/d3-voronoi@1.1.12':
resolution: {integrity: sha512-DauBl25PKZZ0WVJr42a6CNvI6efsdzofl9sajqZr2Gf5Gu733WkDdUGiPkUHXiUvYGzNNlFQde2wdZdfQPG+yw==} resolution: {integrity: sha512-DauBl25PKZZ0WVJr42a6CNvI6efsdzofl9sajqZr2Gf5Gu733WkDdUGiPkUHXiUvYGzNNlFQde2wdZdfQPG+yw==}
@@ -2123,14 +2132,14 @@ packages:
'@types/mapbox__vector-tile@1.3.4': '@types/mapbox__vector-tile@1.3.4':
resolution: {integrity: sha512-bpd8dRn9pr6xKvuEBQup8pwQfD4VUyqO/2deGjfpe6AwC8YRlyEipvefyRJUSiCJTZuCb8Pl1ciVV5ekqJ96Bg==} resolution: {integrity: sha512-bpd8dRn9pr6xKvuEBQup8pwQfD4VUyqO/2deGjfpe6AwC8YRlyEipvefyRJUSiCJTZuCb8Pl1ciVV5ekqJ96Bg==}
'@types/node@20.19.9': '@types/node@20.19.10':
resolution: {integrity: sha512-cuVNgarYWZqxRJDQHEB58GEONhOK79QVR/qYx4S7kcUObQvUwvFnYxJuuHUKm2aieN9X3yZB4LZsuYNU1Qphsw==} resolution: {integrity: sha512-iAFpG6DokED3roLSP0K+ybeDdIX6Bc0Vd3mLW5uDqThPWtNos3E+EqOM11mPQHKzfWHqEBuLjIlsBQQ8CsISmQ==}
'@types/node@22.17.0': '@types/node@22.17.1':
resolution: {integrity: sha512-bbAKTCqX5aNVryi7qXVMi+OkB3w/OyblodicMbvE38blyAz7GxXf6XYhklokijuPwwVg9sDLKRxt0ZHXQwZVfQ==} resolution: {integrity: sha512-y3tBaz+rjspDTylNjAX37jEC3TETEFGNJL6uQDxwF9/8GLLIjW1rvVHlynyuUKMnMr1Roq8jOv3vkopBjC4/VA==}
'@types/node@24.2.0': '@types/node@24.2.1':
resolution: {integrity: sha512-3xyG3pMCq3oYCNg7/ZP+E1ooTaGB4cG8JWRsqqOYQdbWNY4zbaV0Ennrd7stjiJEFZCaybcIgpTjJWHRfBSIDw==} resolution: {integrity: sha512-DRh5K+ka5eJic8CjH7td8QpYEV6Zo10gfRkjHCO3weqZHWDtAaSTFtl4+VMqOJ4N5jcuhZ9/l+yy8rVgw7BQeQ==}
'@types/pbf@3.0.5': '@types/pbf@3.0.5':
resolution: {integrity: sha512-j3pOPiEcWZ34R6a6mN07mUkM4o4Lwf6hPNt8eilOeZhTFbxFXmKhvXl9Y28jotFPaI1bpPDJsbCprUoNke6OrA==} resolution: {integrity: sha512-j3pOPiEcWZ34R6a6mN07mUkM4o4Lwf6hPNt8eilOeZhTFbxFXmKhvXl9Y28jotFPaI1bpPDJsbCprUoNke6OrA==}
@@ -2358,8 +2367,8 @@ packages:
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'} engines: {node: '>=8'}
browserslist@4.25.1: browserslist@4.25.2:
resolution: {integrity: sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==} resolution: {integrity: sha512-0si2SJK3ooGzIawRu61ZdPCO1IncZwS8IzuX73sPZsXW6EQ/w/DAfPyKI8l1ETTCr2MnvqWitmlCUxgdul45jA==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true hasBin: true
@@ -2803,8 +2812,8 @@ packages:
getpass@0.1.7: getpass@0.1.7:
resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==} resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==}
gl-matrix@3.4.3: gl-matrix@3.4.4:
resolution: {integrity: sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==} resolution: {integrity: sha512-latSnyDNt/8zYUB6VIJ6PCh2jBjJX6gnDsoCZ7LyW7GkqrD51EWwa9qCoGixj8YqBtETQK/xY7OmpTF8xz1DdQ==}
glob-parent@5.1.2: glob-parent@5.1.2:
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
@@ -3831,8 +3840,8 @@ packages:
resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
hasBin: true hasBin: true
tsdown@0.13.4: tsdown@0.13.5:
resolution: {integrity: sha512-2uf0Xo170gmxwJEOgfb7V9y3k+Uq/dQJx4xfXYova7pqqTw9ZjxSvEeq7Y6l+Ys54GlBrRKvxKoEyNhuUcoCTg==} resolution: {integrity: sha512-lagBtBSdm1yWBFvAbg3+a2/x7eRNqsf5fv34doXXOGnxRIBlfzYCEVfK6cwOgkTNhORMhdWvaqtXZV3h2x1ojQ==}
engines: {node: '>=20.19.0'} engines: {node: '>=20.19.0'}
hasBin: true hasBin: true
peerDependencies: peerDependencies:
@@ -4105,8 +4114,8 @@ packages:
zod@3.25.76: zod@3.25.76:
resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
zod@4.0.15: zod@4.0.17:
resolution: {integrity: sha512-2IVHb9h4Mt6+UXkyMs0XbfICUh1eUrlJJAOupBHUhLRnKkruawyDddYRCs0Eizt900ntIMk9/4RksYl+FgSpcQ==} resolution: {integrity: sha512-1PHjlYRevNxxdy2JZ8JcNAw7rX8V9P1AKkP+x/xZfxB0K5FYfuV+Ug6P/6NVSR2jHQ+FzDDoDHS04nYUsOIyLQ==}
zone.js@0.8.29: zone.js@0.8.29:
resolution: {integrity: sha512-mla2acNCMkWXBD+c+yeUrBUrzOxYMNFdQ6FGfigGGtEVBPJx07BQeJekjt9DmH1FtZek4E9rE1eRR9qQpxACOQ==} resolution: {integrity: sha512-mla2acNCMkWXBD+c+yeUrBUrzOxYMNFdQ6FGfigGGtEVBPJx07BQeJekjt9DmH1FtZek4E9rE1eRR9qQpxACOQ==}
@@ -4194,7 +4203,7 @@ snapshots:
dependencies: dependencies:
'@babel/compat-data': 7.28.0 '@babel/compat-data': 7.28.0
'@babel/helper-validator-option': 7.27.1 '@babel/helper-validator-option': 7.27.1
browserslist: 4.25.1 browserslist: 4.25.2
lru-cache: 5.1.1 lru-cache: 5.1.1
semver: 6.3.1 semver: 6.3.1
@@ -4528,38 +4537,10 @@ snapshots:
'@jridgewell/resolve-uri': 3.1.2 '@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.4 '@jridgewell/sourcemap-codec': 1.5.4
'@jsr/meshtastic__core@2.6.6':
dependencies:
'@bufbuild/protobuf': 2.6.3
'@jsr/meshtastic__protobufs': 2.7.0
crc: 4.3.2
ste-simple-events: 3.0.11
tslog: 4.9.3
transitivePeerDependencies:
- buffer
'@jsr/meshtastic__protobufs@2.7.0': '@jsr/meshtastic__protobufs@2.7.0':
dependencies: dependencies:
'@bufbuild/protobuf': 2.6.3 '@bufbuild/protobuf': 2.6.3
'@jsr/meshtastic__transport-http@0.2.1':
dependencies:
'@jsr/meshtastic__core': 2.6.6
transitivePeerDependencies:
- buffer
'@jsr/meshtastic__transport-web-bluetooth@0.1.2':
dependencies:
'@jsr/meshtastic__core': 2.6.6
transitivePeerDependencies:
- buffer
'@jsr/meshtastic__transport-web-serial@0.2.1':
dependencies:
'@jsr/meshtastic__core': 2.6.6
transitivePeerDependencies:
- buffer
'@mapbox/geojson-rewind@0.5.2': '@mapbox/geojson-rewind@0.5.2':
dependencies: dependencies:
get-stream: 6.0.1 get-stream: 6.0.1
@@ -5359,19 +5340,19 @@ snapshots:
'@tailwindcss/oxide-win32-arm64-msvc': 4.1.11 '@tailwindcss/oxide-win32-arm64-msvc': 4.1.11
'@tailwindcss/oxide-win32-x64-msvc': 4.1.11 '@tailwindcss/oxide-win32-x64-msvc': 4.1.11
'@tailwindcss/vite@4.1.11(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))': '@tailwindcss/vite@4.1.11(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))':
dependencies: dependencies:
'@tailwindcss/node': 4.1.11 '@tailwindcss/node': 4.1.11
'@tailwindcss/oxide': 4.1.11 '@tailwindcss/oxide': 4.1.11
tailwindcss: 4.1.11 tailwindcss: 4.1.11
vite: 7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) vite: 7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
'@tanstack/history@1.130.12': {} '@tanstack/history@1.131.2': {}
'@tanstack/react-router-devtools@1.130.13(@tanstack/react-router@1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.130.12)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3)': '@tanstack/react-router-devtools@1.131.2(@tanstack/react-router@1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.131.2)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3)':
dependencies: dependencies:
'@tanstack/react-router': 1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1) '@tanstack/react-router': 1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
'@tanstack/router-devtools-core': 1.130.13(@tanstack/router-core@1.130.12)(csstype@3.1.3)(solid-js@1.9.8)(tiny-invariant@1.3.3) '@tanstack/router-devtools-core': 1.131.2(@tanstack/router-core@1.131.2)(csstype@3.1.3)(solid-js@1.9.8)(tiny-invariant@1.3.3)
react: 19.1.1 react: 19.1.1
react-dom: 19.1.1(react@19.1.1) react-dom: 19.1.1(react@19.1.1)
transitivePeerDependencies: transitivePeerDependencies:
@@ -5380,11 +5361,11 @@ snapshots:
- solid-js - solid-js
- tiny-invariant - tiny-invariant
'@tanstack/react-router@1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': '@tanstack/react-router@1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
dependencies: dependencies:
'@tanstack/history': 1.130.12 '@tanstack/history': 1.131.2
'@tanstack/react-store': 0.7.3(react-dom@19.1.1(react@19.1.1))(react@19.1.1) '@tanstack/react-store': 0.7.3(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
'@tanstack/router-core': 1.130.12 '@tanstack/router-core': 1.131.2
isbot: 5.1.29 isbot: 5.1.29
react: 19.1.1 react: 19.1.1
react-dom: 19.1.1(react@19.1.1) react-dom: 19.1.1(react@19.1.1)
@@ -5398,17 +5379,17 @@ snapshots:
react-dom: 19.1.1(react@19.1.1) react-dom: 19.1.1(react@19.1.1)
use-sync-external-store: 1.5.0(react@19.1.1) use-sync-external-store: 1.5.0(react@19.1.1)
'@tanstack/router-cli@1.130.16': '@tanstack/router-cli@1.131.2':
dependencies: dependencies:
'@tanstack/router-generator': 1.130.16 '@tanstack/router-generator': 1.131.2
chokidar: 3.6.0 chokidar: 3.6.0
yargs: 17.7.2 yargs: 17.7.2
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
'@tanstack/router-core@1.130.12': '@tanstack/router-core@1.131.2':
dependencies: dependencies:
'@tanstack/history': 1.130.12 '@tanstack/history': 1.131.2
'@tanstack/store': 0.7.2 '@tanstack/store': 0.7.2
cookie-es: 1.2.2 cookie-es: 1.2.2
seroval: 1.3.2 seroval: 1.3.2
@@ -5416,9 +5397,9 @@ snapshots:
tiny-invariant: 1.3.3 tiny-invariant: 1.3.3
tiny-warning: 1.0.3 tiny-warning: 1.0.3
'@tanstack/router-devtools-core@1.130.13(@tanstack/router-core@1.130.12)(csstype@3.1.3)(solid-js@1.9.8)(tiny-invariant@1.3.3)': '@tanstack/router-devtools-core@1.131.2(@tanstack/router-core@1.131.2)(csstype@3.1.3)(solid-js@1.9.8)(tiny-invariant@1.3.3)':
dependencies: dependencies:
'@tanstack/router-core': 1.130.12 '@tanstack/router-core': 1.131.2
clsx: 2.1.1 clsx: 2.1.1
goober: 2.1.16(csstype@3.1.3) goober: 2.1.16(csstype@3.1.3)
solid-js: 1.9.8 solid-js: 1.9.8
@@ -5426,10 +5407,10 @@ snapshots:
optionalDependencies: optionalDependencies:
csstype: 3.1.3 csstype: 3.1.3
'@tanstack/router-devtools@1.130.13(@tanstack/react-router@1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.130.12)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3)': '@tanstack/router-devtools@1.131.2(@tanstack/react-router@1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.131.2)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3)':
dependencies: dependencies:
'@tanstack/react-router': 1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1) '@tanstack/react-router': 1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
'@tanstack/react-router-devtools': 1.130.13(@tanstack/react-router@1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.130.12)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3) '@tanstack/react-router-devtools': 1.131.2(@tanstack/react-router@1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(@tanstack/router-core@1.131.2)(csstype@3.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(solid-js@1.9.8)(tiny-invariant@1.3.3)
clsx: 2.1.1 clsx: 2.1.1
goober: 2.1.16(csstype@3.1.3) goober: 2.1.16(csstype@3.1.3)
react: 19.1.1 react: 19.1.1
@@ -5441,11 +5422,11 @@ snapshots:
- solid-js - solid-js
- tiny-invariant - tiny-invariant
'@tanstack/router-generator@1.130.16': '@tanstack/router-generator@1.131.2':
dependencies: dependencies:
'@tanstack/router-core': 1.130.12 '@tanstack/router-core': 1.131.2
'@tanstack/router-utils': 1.130.12 '@tanstack/router-utils': 1.131.2
'@tanstack/virtual-file-routes': 1.129.7 '@tanstack/virtual-file-routes': 1.131.2
prettier: 3.6.2 prettier: 3.6.2
recast: 0.23.11 recast: 0.23.11
source-map: 0.7.6 source-map: 0.7.6
@@ -5454,7 +5435,7 @@ snapshots:
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
'@tanstack/router-plugin@1.130.16(@tanstack/react-router@1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))': '@tanstack/router-plugin@1.131.2(@tanstack/react-router@1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))':
dependencies: dependencies:
'@babel/core': 7.28.0 '@babel/core': 7.28.0
'@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.0) '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.0)
@@ -5462,21 +5443,21 @@ snapshots:
'@babel/template': 7.27.2 '@babel/template': 7.27.2
'@babel/traverse': 7.28.0 '@babel/traverse': 7.28.0
'@babel/types': 7.28.2 '@babel/types': 7.28.2
'@tanstack/router-core': 1.130.12 '@tanstack/router-core': 1.131.2
'@tanstack/router-generator': 1.130.16 '@tanstack/router-generator': 1.131.2
'@tanstack/router-utils': 1.130.12 '@tanstack/router-utils': 1.131.2
'@tanstack/virtual-file-routes': 1.129.7 '@tanstack/virtual-file-routes': 1.131.2
babel-dead-code-elimination: 1.0.10 babel-dead-code-elimination: 1.0.10
chokidar: 3.6.0 chokidar: 3.6.0
unplugin: 2.3.5 unplugin: 2.3.5
zod: 3.25.76 zod: 3.25.76
optionalDependencies: optionalDependencies:
'@tanstack/react-router': 1.130.12(react-dom@19.1.1(react@19.1.1))(react@19.1.1) '@tanstack/react-router': 1.131.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
vite: 7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) vite: 7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
'@tanstack/router-utils@1.130.12': '@tanstack/router-utils@1.131.2':
dependencies: dependencies:
'@babel/core': 7.28.0 '@babel/core': 7.28.0
'@babel/generator': 7.28.0 '@babel/generator': 7.28.0
@@ -5489,7 +5470,7 @@ snapshots:
'@tanstack/store@0.7.2': {} '@tanstack/store@0.7.2': {}
'@tanstack/virtual-file-routes@1.129.7': {} '@tanstack/virtual-file-routes@1.131.2': {}
'@testing-library/dom@10.4.1': '@testing-library/dom@10.4.1':
dependencies: dependencies:
@@ -6668,7 +6649,7 @@ snapshots:
dependencies: dependencies:
'@types/deep-eql': 4.0.2 '@types/deep-eql': 4.0.2
'@types/chrome@0.1.2': '@types/chrome@0.1.3':
dependencies: dependencies:
'@types/filesystem': 0.0.36 '@types/filesystem': 0.0.36
'@types/har-format': 1.2.16 '@types/har-format': 1.2.16
@@ -6703,15 +6684,15 @@ snapshots:
'@types/mapbox__point-geometry': 0.1.4 '@types/mapbox__point-geometry': 0.1.4
'@types/pbf': 3.0.5 '@types/pbf': 3.0.5
'@types/node@20.19.9': '@types/node@20.19.10':
dependencies: dependencies:
undici-types: 6.21.0 undici-types: 6.21.0
'@types/node@22.17.0': '@types/node@22.17.1':
dependencies: dependencies:
undici-types: 6.21.0 undici-types: 6.21.0
'@types/node@24.2.0': '@types/node@24.2.1':
dependencies: dependencies:
undici-types: 7.10.0 undici-types: 7.10.0
@@ -6752,7 +6733,7 @@ snapshots:
optionalDependencies: optionalDependencies:
maplibre-gl: 5.6.1 maplibre-gl: 5.6.1
'@vitejs/plugin-react@4.7.0(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))': '@vitejs/plugin-react@4.7.0(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))':
dependencies: dependencies:
'@babel/core': 7.28.0 '@babel/core': 7.28.0
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.0) '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.0)
@@ -6760,7 +6741,7 @@ snapshots:
'@rolldown/pluginutils': 1.0.0-beta.27 '@rolldown/pluginutils': 1.0.0-beta.27
'@types/babel__core': 7.20.5 '@types/babel__core': 7.20.5
react-refresh: 0.17.0 react-refresh: 0.17.0
vite: 7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) vite: 7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
@@ -6772,13 +6753,21 @@ snapshots:
chai: 5.2.1 chai: 5.2.1
tinyrainbow: 2.0.0 tinyrainbow: 2.0.0
'@vitest/mocker@3.2.4(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))': '@vitest/mocker@3.2.4(vite@7.1.1(@types/node@22.17.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))':
dependencies: dependencies:
'@vitest/spy': 3.2.4 '@vitest/spy': 3.2.4
estree-walker: 3.0.3 estree-walker: 3.0.3
magic-string: 0.30.17 magic-string: 0.30.17
optionalDependencies: optionalDependencies:
vite: 7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) vite: 7.1.1(@types/node@22.17.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
'@vitest/mocker@3.2.4(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))':
dependencies:
'@vitest/spy': 3.2.4
estree-walker: 3.0.3
magic-string: 0.30.17
optionalDependencies:
vite: 7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
'@vitest/pretty-format@3.2.4': '@vitest/pretty-format@3.2.4':
dependencies: dependencies:
@@ -6875,7 +6864,7 @@ snapshots:
autoprefixer@10.4.21(postcss@8.5.6): autoprefixer@10.4.21(postcss@8.5.6):
dependencies: dependencies:
browserslist: 4.25.1 browserslist: 4.25.2
caniuse-lite: 1.0.30001733 caniuse-lite: 1.0.30001733
fraction.js: 4.3.7 fraction.js: 4.3.7
normalize-range: 0.1.2 normalize-range: 0.1.2
@@ -6939,12 +6928,12 @@ snapshots:
dependencies: dependencies:
fill-range: 7.1.1 fill-range: 7.1.1
browserslist@4.25.1: browserslist@4.25.2:
dependencies: dependencies:
caniuse-lite: 1.0.30001733 caniuse-lite: 1.0.30001733
electron-to-chromium: 1.5.199 electron-to-chromium: 1.5.199
node-releases: 2.0.19 node-releases: 2.0.19
update-browserslist-db: 1.1.3(browserslist@4.25.1) update-browserslist-db: 1.1.3(browserslist@4.25.2)
buffer-from@1.1.2: {} buffer-from@1.1.2: {}
@@ -7375,7 +7364,7 @@ snapshots:
dependencies: dependencies:
assert-plus: 1.0.0 assert-plus: 1.0.0
gl-matrix@3.4.3: {} gl-matrix@3.4.4: {}
glob-parent@5.1.2: glob-parent@5.1.2:
dependencies: dependencies:
@@ -7410,7 +7399,7 @@ snapshots:
happy-dom@18.0.1: happy-dom@18.0.1:
dependencies: dependencies:
'@types/node': 20.19.9 '@types/node': 20.19.10
'@types/whatwg-mimetype': 3.0.2 '@types/whatwg-mimetype': 3.0.2
whatwg-mimetype: 3.0.0 whatwg-mimetype: 3.0.0
@@ -7695,7 +7684,7 @@ snapshots:
'@types/supercluster': 7.1.3 '@types/supercluster': 7.1.3
earcut: 3.0.2 earcut: 3.0.2
geojson-vt: 4.0.2 geojson-vt: 4.0.2
gl-matrix: 3.4.3 gl-matrix: 3.4.4
global-prefix: 4.0.0 global-prefix: 4.0.0
kdbush: 4.0.2 kdbush: 4.0.2
murmurhash-js: 1.0.0 murmurhash-js: 1.0.0
@@ -8389,7 +8378,7 @@ snapshots:
tree-kill@1.2.2: {} tree-kill@1.2.2: {}
tsdown@0.13.4(typescript@5.9.2): tsdown@0.13.5(typescript@5.9.2):
dependencies: dependencies:
ansis: 4.1.0 ansis: 4.1.0
cac: 6.7.14 cac: 6.7.14
@@ -8470,9 +8459,9 @@ snapshots:
untildify@3.0.3: {} untildify@3.0.3: {}
update-browserslist-db@1.1.3(browserslist@4.25.1): update-browserslist-db@1.1.3(browserslist@4.25.2):
dependencies: dependencies:
browserslist: 4.25.1 browserslist: 4.25.2
escalade: 3.2.0 escalade: 3.2.0
picocolors: 1.1.1 picocolors: 1.1.1
@@ -8513,13 +8502,13 @@ snapshots:
core-util-is: 1.0.2 core-util-is: 1.0.2
extsprintf: 1.3.0 extsprintf: 1.3.0
vite-node@3.2.4(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3): vite-node@3.2.4(@types/node@22.17.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3):
dependencies: dependencies:
cac: 6.7.14 cac: 6.7.14
debug: 4.4.1 debug: 4.4.1
es-module-lexer: 1.7.0 es-module-lexer: 1.7.0
pathe: 2.0.3 pathe: 2.0.3
vite: 7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) vite: 7.1.1(@types/node@22.17.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
transitivePeerDependencies: transitivePeerDependencies:
- '@types/node' - '@types/node'
- jiti - jiti
@@ -8534,7 +8523,28 @@ snapshots:
- tsx - tsx
- yaml - yaml
vite-plugin-html@3.2.2(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)): vite-node@3.2.4(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3):
dependencies:
cac: 6.7.14
debug: 4.4.1
es-module-lexer: 1.7.0
pathe: 2.0.3
vite: 7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
transitivePeerDependencies:
- '@types/node'
- jiti
- less
- lightningcss
- sass
- sass-embedded
- stylus
- sugarss
- supports-color
- terser
- tsx
- yaml
vite-plugin-html@3.2.2(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)):
dependencies: dependencies:
'@rollup/pluginutils': 4.2.1 '@rollup/pluginutils': 4.2.1
colorette: 2.0.20 colorette: 2.0.20
@@ -8548,9 +8558,9 @@ snapshots:
html-minifier-terser: 6.1.0 html-minifier-terser: 6.1.0
node-html-parser: 5.4.2 node-html-parser: 5.4.2
pathe: 0.2.0 pathe: 0.2.0
vite: 7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) vite: 7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3): vite@7.1.1(@types/node@22.17.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3):
dependencies: dependencies:
esbuild: 0.25.8 esbuild: 0.25.8
fdir: 6.4.6(picomatch@4.0.3) fdir: 6.4.6(picomatch@4.0.3)
@@ -8559,18 +8569,34 @@ snapshots:
rollup: 4.46.2 rollup: 4.46.2
tinyglobby: 0.2.14 tinyglobby: 0.2.14
optionalDependencies: optionalDependencies:
'@types/node': 24.2.0 '@types/node': 22.17.1
fsevents: 2.3.3 fsevents: 2.3.3
jiti: 2.5.1 jiti: 2.5.1
lightningcss: 1.30.1 lightningcss: 1.30.1
terser: 5.43.1 terser: 5.43.1
tsx: 4.20.3 tsx: 4.20.3
vitest@3.2.4(@types/node@24.2.0)(happy-dom@18.0.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3): vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3):
dependencies:
esbuild: 0.25.8
fdir: 6.4.6(picomatch@4.0.3)
picomatch: 4.0.3
postcss: 8.5.6
rollup: 4.46.2
tinyglobby: 0.2.14
optionalDependencies:
'@types/node': 24.2.1
fsevents: 2.3.3
jiti: 2.5.1
lightningcss: 1.30.1
terser: 5.43.1
tsx: 4.20.3
vitest@3.2.4(@types/node@22.17.1)(happy-dom@18.0.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3):
dependencies: dependencies:
'@types/chai': 5.2.2 '@types/chai': 5.2.2
'@vitest/expect': 3.2.4 '@vitest/expect': 3.2.4
'@vitest/mocker': 3.2.4(vite@7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)) '@vitest/mocker': 3.2.4(vite@7.1.1(@types/node@22.17.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))
'@vitest/pretty-format': 3.2.4 '@vitest/pretty-format': 3.2.4
'@vitest/runner': 3.2.4 '@vitest/runner': 3.2.4
'@vitest/snapshot': 3.2.4 '@vitest/snapshot': 3.2.4
@@ -8588,11 +8614,53 @@ snapshots:
tinyglobby: 0.2.14 tinyglobby: 0.2.14
tinypool: 1.1.1 tinypool: 1.1.1
tinyrainbow: 2.0.0 tinyrainbow: 2.0.0
vite: 7.1.1(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) vite: 7.1.1(@types/node@22.17.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
vite-node: 3.2.4(@types/node@24.2.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3) vite-node: 3.2.4(@types/node@22.17.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
why-is-node-running: 2.3.0 why-is-node-running: 2.3.0
optionalDependencies: optionalDependencies:
'@types/node': 24.2.0 '@types/node': 22.17.1
happy-dom: 18.0.1
transitivePeerDependencies:
- jiti
- less
- lightningcss
- msw
- sass
- sass-embedded
- stylus
- sugarss
- supports-color
- terser
- tsx
- yaml
vitest@3.2.4(@types/node@24.2.1)(happy-dom@18.0.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3):
dependencies:
'@types/chai': 5.2.2
'@vitest/expect': 3.2.4
'@vitest/mocker': 3.2.4(vite@7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3))
'@vitest/pretty-format': 3.2.4
'@vitest/runner': 3.2.4
'@vitest/snapshot': 3.2.4
'@vitest/spy': 3.2.4
'@vitest/utils': 3.2.4
chai: 5.2.1
debug: 4.4.1
expect-type: 1.2.2
magic-string: 0.30.17
pathe: 2.0.3
picomatch: 4.0.3
std-env: 3.9.0
tinybench: 2.9.0
tinyexec: 0.3.2
tinyglobby: 0.2.14
tinypool: 1.1.1
tinyrainbow: 2.0.0
vite: 7.1.1(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
vite-node: 3.2.4(@types/node@24.2.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(tsx@4.20.3)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/node': 24.2.1
happy-dom: 18.0.1 happy-dom: 18.0.1
transitivePeerDependencies: transitivePeerDependencies:
- jiti - jiti
@@ -8666,7 +8734,7 @@ snapshots:
zod@3.25.76: {} zod@3.25.76: {}
zod@4.0.15: {} zod@4.0.17: {}
zone.js@0.8.29: {} zone.js@0.8.29: {}
+7
View File
@@ -0,0 +1,7 @@
import { defineConfig } from "vitest/config";
export default defineConfig({
test: {
projects: ["packages/*"],
},
});