From 858f74ad8a5f54a70a285f4b277440fe8f5d1a7a Mon Sep 17 00:00:00 2001 From: Rahul Kumar Date: Sun, 12 Apr 2026 15:45:06 +0530 Subject: [PATCH 1/4] added dockfile and docker-compose.yml --- mesher/client/Dockerfile | 36 ++++++++++++++++++++++++++++++++ mesher/client/README.md | 12 +++++++++++ mesher/client/docker-compose.yml | 30 ++++++++++++++++++++++++++ 3 files changed, 78 insertions(+) create mode 100644 mesher/client/Dockerfile create mode 100644 mesher/client/docker-compose.yml diff --git a/mesher/client/Dockerfile b/mesher/client/Dockerfile new file mode 100644 index 00000000..73493af5 --- /dev/null +++ b/mesher/client/Dockerfile @@ -0,0 +1,36 @@ +FROM node:20-bookworm-slim AS base + +WORKDIR /app +ENV NEXT_TELEMETRY_DISABLED=1 + +FROM base AS deps + +COPY package.json package-lock.json ./ +RUN npm ci + +FROM deps AS dev + +COPY . . +EXPOSE 3000 +CMD ["npm", "run", "dev", "--", "--hostname", "0.0.0.0"] + +FROM deps AS builder + +COPY . . +RUN npm run build + +FROM base AS production + +WORKDIR /app +ENV NODE_ENV=production +ENV NEXT_TELEMETRY_DISABLED=1 + +# copy standalone output +COPY --from=builder /app/.next/standalone ./ +COPY --from=builder /app/.next/static ./.next/static +COPY --from=builder /app/public ./public 2>/dev/null || true + +EXPOSE 3000 +USER node + +CMD ["node", "server.js"] \ No newline at end of file diff --git a/mesher/client/README.md b/mesher/client/README.md index a935333c..1e2bd7df 100644 --- a/mesher/client/README.md +++ b/mesher/client/README.md @@ -11,6 +11,18 @@ hyperpush-mono/ mesher/ client/ ``` +## Docker Compose + +Use the following Docker Compose commands for development and production: + +```bash +# Development +docker compose up dev + +# Production (build and run in detached mode) +docker compose up prod --build -d +``` + ## Maintainer workflow diff --git a/mesher/client/docker-compose.yml b/mesher/client/docker-compose.yml new file mode 100644 index 00000000..5ab8b9bb --- /dev/null +++ b/mesher/client/docker-compose.yml @@ -0,0 +1,30 @@ +services: + dev: + build: + context: . + target: dev + container_name: Client-dev + volumes: + - .:/app + - /app/node_modules + - /app/.next + ports: + - "3000:3000" + command: npm run dev -- --hostname 0.0.0.0 + restart: unless-stopped + + prod: + build: + context: . + target: production + container_name: Client-prod + ports: + - "3000:3000" + restart: unless-stopped + + builder: + build: + context: . + target: builder + container_name: Client-builder + command: npm run build \ No newline at end of file From ee5543e4454ba06cabe9aa2a6f1fa662df3247d1 Mon Sep 17 00:00:00 2001 From: Rahul Kumar Date: Sun, 12 Apr 2026 16:19:06 +0530 Subject: [PATCH 2/4] fixed --- mesher/client/.dockerignore | 16 ++++++++++++++++ mesher/client/Dockerfile | 20 +++++++++++--------- mesher/client/docker-compose.yml | 2 +- 3 files changed, 28 insertions(+), 10 deletions(-) create mode 100644 mesher/client/.dockerignore diff --git a/mesher/client/.dockerignore b/mesher/client/.dockerignore new file mode 100644 index 00000000..66972b3f --- /dev/null +++ b/mesher/client/.dockerignore @@ -0,0 +1,16 @@ +# Dependency and build output directories +node_modules +.next +dist +coverage + +# Test and tooling artifacts +test-results +playwright-report + +# VCS and local config +.git +.gitignore +*.log +.env +.env.* diff --git a/mesher/client/Dockerfile b/mesher/client/Dockerfile index 73493af5..c1b2670c 100644 --- a/mesher/client/Dockerfile +++ b/mesher/client/Dockerfile @@ -1,4 +1,4 @@ -FROM node:20-bookworm-slim AS base +FROM node:22-bookworm-slim AS base WORKDIR /app ENV NEXT_TELEMETRY_DISABLED=1 @@ -6,31 +6,33 @@ ENV NEXT_TELEMETRY_DISABLED=1 FROM base AS deps COPY package.json package-lock.json ./ -RUN npm ci +RUN npm install FROM deps AS dev COPY . . EXPOSE 3000 -CMD ["npm", "run", "dev", "--", "--hostname", "0.0.0.0"] +CMD ["npm", "run", "dev", "--", "--host", "0.0.0.0"] FROM deps AS builder COPY . . RUN npm run build -FROM base AS production +FROM deps AS production WORKDIR /app ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 -# copy standalone output -COPY --from=builder /app/.next/standalone ./ -COPY --from=builder /app/.next/static ./.next/static -COPY --from=builder /app/public ./public 2>/dev/null || true +# copy TanStack Start runtime output +COPY --from=builder /app/dist ./dist +COPY --from=builder /app/server.mjs ./server.mjs +COPY --from=builder /app/mesher-backend-origin.mjs ./mesher-backend-origin.mjs +COPY --from=builder /app/public ./public +RUN npm prune --omit=dev EXPOSE 3000 USER node -CMD ["node", "server.js"] \ No newline at end of file +CMD ["node", "server.mjs"] \ No newline at end of file diff --git a/mesher/client/docker-compose.yml b/mesher/client/docker-compose.yml index 5ab8b9bb..4efeb9b1 100644 --- a/mesher/client/docker-compose.yml +++ b/mesher/client/docker-compose.yml @@ -10,7 +10,7 @@ services: - /app/.next ports: - "3000:3000" - command: npm run dev -- --hostname 0.0.0.0 + command: npm run dev -- --host 0.0.0.0 restart: unless-stopped prod: From 695e75f280e177c54f208be50a8e7f4a4b64ecf2 Mon Sep 17 00:00:00 2001 From: Rahul Kumar Date: Sun, 12 Apr 2026 16:31:16 +0530 Subject: [PATCH 3/4] fixed dependencies issues --- mesher/client/package-lock.json | 226 ++++++++++++++------------------ 1 file changed, 97 insertions(+), 129 deletions(-) diff --git a/mesher/client/package-lock.json b/mesher/client/package-lock.json index 7d8b2444..51a233fa 100644 --- a/mesher/client/package-lock.json +++ b/mesher/client/package-lock.json @@ -143,15 +143,6 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/@babel/generator": { "version": "7.29.1", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", @@ -184,15 +175,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/@babel/helper-globals": { "version": "7.28.0", "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", @@ -3225,14 +3207,14 @@ } }, "node_modules/@tanstack/react-router": { - "version": "1.168.13", - "resolved": "https://registry.npmjs.org/@tanstack/react-router/-/react-router-1.168.13.tgz", - "integrity": "sha512-rvrL1bK/bOjjfDyAKKFvkVXeo8IZZmwfy9DwJaMlj7lCmpWl4Qban2/d+EirlHPcwHDNq5OkS5jhcBiZ+24RJw==", + "version": "1.168.18", + "resolved": "https://registry.npmjs.org/@tanstack/react-router/-/react-router-1.168.18.tgz", + "integrity": "sha512-RmBptS3/qtkGhvG/u41JWOgxz1FIWybBz7iBTgLUIoFkqOj6NE4XlhUOsP2fabxACtbZdJnpvCWcJFWpWGIngw==", "license": "MIT", "dependencies": { "@tanstack/history": "1.161.6", "@tanstack/react-store": "^0.9.3", - "@tanstack/router-core": "1.168.9", + "@tanstack/router-core": "1.168.14", "isbot": "^5.1.22" }, "engines": { @@ -3248,19 +3230,19 @@ } }, "node_modules/@tanstack/react-start": { - "version": "1.167.23", - "resolved": "https://registry.npmjs.org/@tanstack/react-start/-/react-start-1.167.23.tgz", - "integrity": "sha512-ghGcVABDILglKGNMD5WRCnr2IRtr2SSRhnFEsVEF3PN4DXS2Rbj0JVrYurKdtQk8LO0jP7g8UACQ0jvNBrSw8A==", + "version": "1.167.32", + "resolved": "https://registry.npmjs.org/@tanstack/react-start/-/react-start-1.167.32.tgz", + "integrity": "sha512-y/f6ALbDKslMwb6O/Epzt8cl2C+oBWEcjiWtfNIziIaAX6vyCnRSgwRtZ6lNGTmEOzRZK3dSnAHkZQdYBtEiJg==", "license": "MIT", "dependencies": { - "@tanstack/react-router": "1.168.13", - "@tanstack/react-start-client": "1.166.29", - "@tanstack/react-start-rsc": "0.0.3", - "@tanstack/react-start-server": "1.166.29", + "@tanstack/react-router": "1.168.18", + "@tanstack/react-start-client": "1.166.35", + "@tanstack/react-start-rsc": "0.0.12", + "@tanstack/react-start-server": "1.166.36", "@tanstack/router-utils": "^1.161.6", - "@tanstack/start-client-core": "1.167.10", - "@tanstack/start-plugin-core": "1.167.20", - "@tanstack/start-server-core": "1.167.11", + "@tanstack/start-client-core": "1.167.16", + "@tanstack/start-plugin-core": "1.167.29", + "@tanstack/start-server-core": "1.167.18", "pathe": "^2.0.3" }, "bin": { @@ -3285,14 +3267,14 @@ } }, "node_modules/@tanstack/react-start-client": { - "version": "1.166.29", - "resolved": "https://registry.npmjs.org/@tanstack/react-start-client/-/react-start-client-1.166.29.tgz", - "integrity": "sha512-fIH1Qk2ZMz8ze+GY4PWI29d8b+MX6qOSZgTZTA+mz+9CbxEv8rPxLTTBAHIwECWTyKmY7aE3QQJpG4WPAPI5oA==", + "version": "1.166.35", + "resolved": "https://registry.npmjs.org/@tanstack/react-start-client/-/react-start-client-1.166.35.tgz", + "integrity": "sha512-FFlYKUMLeFK53eh258RtmK/sT3ZJW4/LAHhjElGYZEhl6PeUSheZ8J+xw1Fn5t02nYixuj4CyCuLpzq/2XUVgQ==", "license": "MIT", "dependencies": { - "@tanstack/react-router": "1.168.13", - "@tanstack/router-core": "1.168.9", - "@tanstack/start-client-core": "1.167.10" + "@tanstack/react-router": "1.168.18", + "@tanstack/router-core": "1.168.14", + "@tanstack/start-client-core": "1.167.16" }, "engines": { "node": ">=22.12.0" @@ -3307,20 +3289,20 @@ } }, "node_modules/@tanstack/react-start-rsc": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/@tanstack/react-start-rsc/-/react-start-rsc-0.0.3.tgz", - "integrity": "sha512-s8EfU7IsKbSMRagBS1C6lYVXo8E0S+UiD1ViK91XlI93lfXwWXHaEmBW9GYy7bMBBPMoa2N1RYAbji7nh4F5Ig==", + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@tanstack/react-start-rsc/-/react-start-rsc-0.0.12.tgz", + "integrity": "sha512-P2fmYmDBeXyO+9rxUdgvWfa5YD+3RFm+G4z6msEUM0F9QL0RdK8OJW70pkTO4Q1BGf5R9PgGoeQ+yRWMXyCQ/A==", "license": "MIT", "dependencies": { - "@tanstack/react-router": "1.168.13", - "@tanstack/react-start-server": "1.166.29", - "@tanstack/router-core": "1.168.9", + "@tanstack/react-router": "1.168.18", + "@tanstack/react-start-server": "1.166.36", + "@tanstack/router-core": "1.168.14", "@tanstack/router-utils": "1.161.6", - "@tanstack/start-client-core": "1.167.10", + "@tanstack/start-client-core": "1.167.16", "@tanstack/start-fn-stubs": "1.161.6", - "@tanstack/start-plugin-core": "1.167.20", - "@tanstack/start-server-core": "1.167.11", - "@tanstack/start-storage-context": "1.166.23", + "@tanstack/start-plugin-core": "1.167.29", + "@tanstack/start-server-core": "1.167.18", + "@tanstack/start-storage-context": "1.166.28", "pathe": "^2.0.3" }, "engines": { @@ -3342,16 +3324,16 @@ } }, "node_modules/@tanstack/react-start-server": { - "version": "1.166.29", - "resolved": "https://registry.npmjs.org/@tanstack/react-start-server/-/react-start-server-1.166.29.tgz", - "integrity": "sha512-6rfVChLTUk2QxF+1isfOolBibjwX6lyFZrbd8Ex4WudzUMlzPHia9YIcEQeLq/7l3nTNpoYerwZDhdzBGX2/uQ==", + "version": "1.166.36", + "resolved": "https://registry.npmjs.org/@tanstack/react-start-server/-/react-start-server-1.166.36.tgz", + "integrity": "sha512-auebdZYZE7Hnmg0HEUZfgBbhTyJ8cYJq0nUGVVrCpArtvR07V16QDEB0AAeH80TKnBY1Kfb4S9uk7nC5Do8Cmw==", "license": "MIT", "dependencies": { "@tanstack/history": "1.161.6", - "@tanstack/react-router": "1.168.13", - "@tanstack/router-core": "1.168.9", - "@tanstack/start-client-core": "1.167.10", - "@tanstack/start-server-core": "1.167.10" + "@tanstack/react-router": "1.168.18", + "@tanstack/router-core": "1.168.14", + "@tanstack/start-client-core": "1.167.16", + "@tanstack/start-server-core": "1.167.18" }, "engines": { "node": ">=22.12.0" @@ -3365,30 +3347,6 @@ "react-dom": ">=18.0.0 || >=19.0.0" } }, - "node_modules/@tanstack/react-start-server/node_modules/@tanstack/start-server-core": { - "version": "1.167.10", - "resolved": "https://registry.npmjs.org/@tanstack/start-server-core/-/start-server-core-1.167.10.tgz", - "integrity": "sha512-3joWaHF2n9ldyJGqNNFzDi95h9r6VcNwhjESBP9gMBHl6jGhqtn7P17V60S+6GrpF32N41WUwBPNWfEBIEXtVg==", - "license": "MIT", - "dependencies": { - "@tanstack/history": "1.161.6", - "@tanstack/router-core": "1.168.9", - "@tanstack/start-client-core": "1.167.10", - "@tanstack/start-storage-context": "1.166.23", - "h3-v2": "npm:h3@2.0.1-rc.16", - "seroval": "^1.4.2" - }, - "bin": { - "intent": "bin/intent.js" - }, - "engines": { - "node": ">=22.12.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, "node_modules/@tanstack/react-store": { "version": "0.9.3", "resolved": "https://registry.npmjs.org/@tanstack/react-store/-/react-store-0.9.3.tgz", @@ -3408,15 +3366,15 @@ } }, "node_modules/@tanstack/router-core": { - "version": "1.168.9", - "resolved": "https://registry.npmjs.org/@tanstack/router-core/-/router-core-1.168.9.tgz", - "integrity": "sha512-18oeEwEDyXOIuO1VBP9ACaK7tYHZUjynGDCoUh/5c/BNhia9vCJCp9O0LfhZXOorDc/PmLSgvmweFhVmIxF10g==", + "version": "1.168.14", + "resolved": "https://registry.npmjs.org/@tanstack/router-core/-/router-core-1.168.14.tgz", + "integrity": "sha512-UhCJtjNrd5wcTmhgB2HyUP0+Rj1M7BD4dS11YsF9x6VC2KH/eqxzs/vK+nN5f+cOhPOLZdmLkWMW+WGmacZ8HA==", "license": "MIT", "dependencies": { "@tanstack/history": "1.161.6", - "cookie-es": "^2.0.0", - "seroval": "^1.4.2", - "seroval-plugins": "^1.4.2" + "cookie-es": "^3.0.0", + "seroval": "^1.5.0", + "seroval-plugins": "^1.5.0" }, "bin": { "intent": "bin/intent.js" @@ -3430,12 +3388,12 @@ } }, "node_modules/@tanstack/router-generator": { - "version": "1.166.24", - "resolved": "https://registry.npmjs.org/@tanstack/router-generator/-/router-generator-1.166.24.tgz", - "integrity": "sha512-vdaGKwuH+r+DPe6R1mjk+TDDmDH6NTG7QqwxHqGEvOH4aGf9sPjhmRKNJZqQr8cPIbfp6u5lXyZ1TeDcSNMVEA==", + "version": "1.166.29", + "resolved": "https://registry.npmjs.org/@tanstack/router-generator/-/router-generator-1.166.29.tgz", + "integrity": "sha512-X/9/4z4tcPyiQfm1kGm9vzEpJboNbfpg/p+QoI5KyaWtqZgF00nyq5dUQKXwacwZBEgHCzUaWCM9etRFCNnXrg==", "license": "MIT", "dependencies": { - "@tanstack/router-core": "1.168.9", + "@tanstack/router-core": "1.168.14", "@tanstack/router-utils": "1.161.6", "@tanstack/virtual-file-routes": "1.161.7", "prettier": "^3.5.0", @@ -3453,9 +3411,9 @@ } }, "node_modules/@tanstack/router-plugin": { - "version": "1.167.12", - "resolved": "https://registry.npmjs.org/@tanstack/router-plugin/-/router-plugin-1.167.12.tgz", - "integrity": "sha512-StEHcctCuFI5taSjO+lhR/yQ+EK63BdyYa+ne6FoNQPB3MMrOUrz2ZVnbqILRLkh2b+p2EfBKt65sgAKdKygPQ==", + "version": "1.167.18", + "resolved": "https://registry.npmjs.org/@tanstack/router-plugin/-/router-plugin-1.167.18.tgz", + "integrity": "sha512-LkQYEv9rXWSXJ9BKVmaZz27lZij5UDBJscGY3HHK+IenFlakqqiozKBZKlSMl8/WUGZ2JTAecBzAAOCRE9Vm9Q==", "license": "MIT", "dependencies": { "@babel/core": "^7.28.5", @@ -3464,8 +3422,8 @@ "@babel/template": "^7.27.2", "@babel/traverse": "^7.28.5", "@babel/types": "^7.28.5", - "@tanstack/router-core": "1.168.9", - "@tanstack/router-generator": "1.166.24", + "@tanstack/router-core": "1.168.14", + "@tanstack/router-generator": "1.166.29", "@tanstack/router-utils": "1.161.6", "@tanstack/virtual-file-routes": "1.161.7", "chokidar": "^3.6.0", @@ -3484,8 +3442,8 @@ }, "peerDependencies": { "@rsbuild/core": ">=1.0.2", - "@tanstack/react-router": "^1.168.10", - "vite": ">=5.0.0 || >=6.0.0 || >=7.0.0", + "@tanstack/react-router": "^1.168.18", + "vite": ">=5.0.0 || >=6.0.0 || >=7.0.0 || >=8.0.0", "vite-plugin-solid": "^2.11.10", "webpack": ">=5.92.0" }, @@ -3532,15 +3490,15 @@ } }, "node_modules/@tanstack/start-client-core": { - "version": "1.167.10", - "resolved": "https://registry.npmjs.org/@tanstack/start-client-core/-/start-client-core-1.167.10.tgz", - "integrity": "sha512-govGp/nYIFLg3C5otKAgpoih4cg6mdvPGfog0H1pUgSvqD7w525q25YNZNYLWwEbq2o8VqfSrFOr/6IW6DhisQ==", + "version": "1.167.16", + "resolved": "https://registry.npmjs.org/@tanstack/start-client-core/-/start-client-core-1.167.16.tgz", + "integrity": "sha512-ftQ+f5SB2gLqU24QeofmbkfXiSSPS/VlLRdNC6DmshUIrDp8SQFb8gP/7hbkORs7jx4YULGA4z2xQrz/RmC+Kg==", "license": "MIT", "dependencies": { - "@tanstack/router-core": "1.168.9", + "@tanstack/router-core": "1.168.14", "@tanstack/start-fn-stubs": "1.161.6", - "@tanstack/start-storage-context": "1.166.23", - "seroval": "^1.4.2" + "@tanstack/start-storage-context": "1.166.28", + "seroval": "^1.5.0" }, "bin": { "intent": "bin/intent.js" @@ -3567,25 +3525,26 @@ } }, "node_modules/@tanstack/start-plugin-core": { - "version": "1.167.20", - "resolved": "https://registry.npmjs.org/@tanstack/start-plugin-core/-/start-plugin-core-1.167.20.tgz", - "integrity": "sha512-O/ENM81zdyrXLCDlv7e3wxrsPe9v5UJd9dqxHQq17m7344G9l0ZczkfNhpwq40YiZ926D1bdlsOeDpUL9XvkDw==", + "version": "1.167.29", + "resolved": "https://registry.npmjs.org/@tanstack/start-plugin-core/-/start-plugin-core-1.167.29.tgz", + "integrity": "sha512-thH2Gg3N3oFxUo9K0FBDLUj93Z50SGZtjn78PIHgx9RV5fYjqeMrwTgNRG4x1M92RiCWT5SXWJccHJrxLTA+RQ==", "license": "MIT", "dependencies": { "@babel/code-frame": "7.27.1", "@babel/core": "^7.28.5", "@babel/types": "^7.28.5", "@rolldown/pluginutils": "1.0.0-beta.40", - "@tanstack/router-core": "1.168.9", - "@tanstack/router-generator": "1.166.24", - "@tanstack/router-plugin": "1.167.12", + "@tanstack/router-core": "1.168.14", + "@tanstack/router-generator": "1.166.29", + "@tanstack/router-plugin": "1.167.18", "@tanstack/router-utils": "1.161.6", - "@tanstack/start-client-core": "1.167.10", - "@tanstack/start-server-core": "1.167.11", + "@tanstack/start-client-core": "1.167.16", + "@tanstack/start-server-core": "1.167.18", "cheerio": "^1.0.0", "exsolve": "^1.0.7", "pathe": "^2.0.3", "picomatch": "^4.0.3", + "seroval": "^1.5.0", "source-map": "^0.7.6", "srvx": "^0.11.9", "tinyglobby": "^0.2.15", @@ -3620,16 +3579,16 @@ } }, "node_modules/@tanstack/start-server-core": { - "version": "1.167.11", - "resolved": "https://registry.npmjs.org/@tanstack/start-server-core/-/start-server-core-1.167.11.tgz", - "integrity": "sha512-MHz9iKhiJY0i0tF7kIUMZuOikU2EkO9/uOC1wKG3aSBsHi3EUTkfWcbcYUvHhuNgqrvsYKfjlo5qQ7NbSCWw9A==", + "version": "1.167.18", + "resolved": "https://registry.npmjs.org/@tanstack/start-server-core/-/start-server-core-1.167.18.tgz", + "integrity": "sha512-JiV0Eqyj5SfEjGZrm/u3nBICeLZRQyeYNI7ine4PjTh0TVL7IklfN5Xfka+p80a/DuUvpHWqKvE4s3tdFZyc1A==", "license": "MIT", "dependencies": { "@tanstack/history": "1.161.6", - "@tanstack/router-core": "1.168.9", - "@tanstack/start-client-core": "1.167.10", - "@tanstack/start-storage-context": "1.166.23", - "h3-v2": "npm:h3@2.0.1-rc.16", + "@tanstack/router-core": "1.168.14", + "@tanstack/start-client-core": "1.167.16", + "@tanstack/start-storage-context": "1.166.28", + "h3-v2": "npm:h3@2.0.1-rc.20", "seroval": "^1.5.0" }, "bin": { @@ -3644,12 +3603,12 @@ } }, "node_modules/@tanstack/start-storage-context": { - "version": "1.166.23", - "resolved": "https://registry.npmjs.org/@tanstack/start-storage-context/-/start-storage-context-1.166.23.tgz", - "integrity": "sha512-3vEdiYRMx+r+Q7Xqxj3YmADPIpMm7fkKxDa8ITwodGXiw+SBJCGkpBXGUWjOXyXkIyqGHKM5UrReTcVUTkmaug==", + "version": "1.166.28", + "resolved": "https://registry.npmjs.org/@tanstack/start-storage-context/-/start-storage-context-1.166.28.tgz", + "integrity": "sha512-CUQMd6YtJ7hejKXDqT1R4N5gQ9PYyxUCv/ERNJ6/c/8ohNuhMPlOGSFVvqy2BLYNTFSj9GWjahMazeQpQomPgw==", "license": "MIT", "dependencies": { - "@tanstack/router-core": "1.168.9" + "@tanstack/router-core": "1.168.14" }, "engines": { "node": ">=22.12.0" @@ -4197,9 +4156,9 @@ "license": "MIT" }, "node_modules/cookie-es": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-2.0.1.tgz", - "integrity": "sha512-aVf4A4hI2w70LnF7GG+7xDQUkliwiXWXFvTjkip4+b64ygDQ2sJPRSKFDHbxn8o0xu9QzPkMuuiWIXyFSE2slA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-3.1.1.tgz", + "integrity": "sha512-UaXxwISYJPTr9hwQxMFYZ7kNhSXboMXP+Z3TRX6f1/NyaGPfuNUZOWP1pUEb75B2HjfklIYLVRfWiFZJyC6Npg==", "license": "MIT" }, "node_modules/crossws": { @@ -4848,13 +4807,13 @@ }, "node_modules/h3-v2": { "name": "h3", - "version": "2.0.1-rc.16", - "resolved": "https://registry.npmjs.org/h3/-/h3-2.0.1-rc.16.tgz", - "integrity": "sha512-h+pjvyujdo9way8qj6FUbhaQcHlR8FEq65EhTX9ViT5pK8aLj68uFl4hBkF+hsTJAH+H1END2Yv6hTIsabGfag==", + "version": "2.0.1-rc.20", + "resolved": "https://registry.npmjs.org/h3/-/h3-2.0.1-rc.20.tgz", + "integrity": "sha512-28ljodXuUp0fZovdiSRq4G9OgrxCztrJe5VdYzXAB7ueRvI7pIUqLU14Xi3XqdYJ/khXjfpUOOD2EQa6CmBgsg==", "license": "MIT", "dependencies": { - "rou3": "^0.8.0", - "srvx": "^0.11.9" + "rou3": "^0.8.1", + "srvx": "^0.11.13" }, "bin": { "h3": "bin/h3.mjs" @@ -6109,6 +6068,15 @@ "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", "license": "MIT" }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/seroval": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/seroval/-/seroval-1.5.2.tgz", From 591eb861ce4bbaab4dc9275eae499409c99f5d4b Mon Sep 17 00:00:00 2001 From: Rahul Kumar Date: Sun, 12 Apr 2026 16:40:24 +0530 Subject: [PATCH 4/4] sync issue --- mesher/client/package-lock.json | 216 +++++++++++++++++++++++--------- mesher/client/package.json | 5 +- 2 files changed, 164 insertions(+), 57 deletions(-) diff --git a/mesher/client/package-lock.json b/mesher/client/package-lock.json index 51a233fa..10b09bce 100644 --- a/mesher/client/package-lock.json +++ b/mesher/client/package-lock.json @@ -42,12 +42,14 @@ "@tanstack/react-start": "^1.167.23", "@vercel/analytics": "1.6.1", "autoprefixer": "^10.4.20", + "chokidar": "^5.0.0", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "1.1.1", "date-fns": "4.1.0", "embla-carousel-react": "8.6.0", "input-otp": "1.4.2", + "lru-cache": "^11.3.3", "lucide-react": "^0.564.0", "next-themes": "^0.4.6", "nitro": "^3.0.260311-beta", @@ -56,6 +58,7 @@ "react-dom": "^19", "react-hook-form": "^7.54.1", "react-resizable-panels": "^2.1.7", + "readdirp": "^5.0.0", "recharts": "2.15.0", "sonner": "^1.7.1", "tailwind-merge": "^3.3.1", @@ -175,6 +178,15 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, "node_modules/@babel/helper-globals": { "version": "7.28.0", "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", @@ -3130,6 +3142,70 @@ "node": ">=14.0.0" } }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/core": { + "version": "1.8.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/runtime": { + "version": "1.8.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1", + "@tybys/wasm-util": "^0.10.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/tslib": { + "version": "2.8.1", + "dev": true, + "inBundle": true, + "license": "0BSD", + "optional": true + }, "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.2.2.tgz", @@ -3465,6 +3541,54 @@ } } }, + "node_modules/@tanstack/router-plugin/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/@tanstack/router-plugin/node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@tanstack/router-plugin/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, "node_modules/@tanstack/router-utils": { "version": "1.161.6", "resolved": "https://registry.npmjs.org/@tanstack/router-utils/-/router-utils-1.161.6.tgz", @@ -3943,9 +4067,9 @@ } }, "node_modules/baseline-browser-mapping": { - "version": "2.10.14", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.14.tgz", - "integrity": "sha512-fOVLPAsFTsQfuCkvahZkzq6nf8KvGWanlYoTh0SVA0A/PIUxQGU2AOZAoD95n2gFLVDW/jP6sbGLny95nmEuHA==", + "version": "2.10.18", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.18.tgz", + "integrity": "sha512-VSnGQAOLtP5mib/DPyg2/t+Tlv65NTBz83BJBJvmLVHHuKJVaDOBvJJykiT5TR++em5nfAySPccDZDa4oSrn8A==", "license": "Apache-2.0", "bin": { "baseline-browser-mapping": "dist/cli.cjs" @@ -4018,9 +4142,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001785", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001785.tgz", - "integrity": "sha512-blhOL/WNR+Km1RI/LCVAvA73xplXA7ZbjzI4YkMK9pa6T/P3F2GxjNpEkyw5repTw9IvkyrjyHpwjnhZ5FOvYQ==", + "version": "1.0.30001787", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001787.tgz", + "integrity": "sha512-mNcrMN9KeI68u7muanUpEejSLghOKlVhRqS/Za2IeyGllJ9I9otGpR9g3nsw7n4W378TE/LyIteA0+/FOZm4Kg==", "funding": [ { "type": "opencollective", @@ -4080,27 +4204,18 @@ } }, "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", "license": "MIT", "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "readdirp": "^5.0.0" }, "engines": { - "node": ">= 8.10.0" + "node": ">= 20.19.0" }, "funding": { "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" } }, "node_modules/class-variance-authority": { @@ -4493,9 +4608,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.331", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.331.tgz", - "integrity": "sha512-IbxXrsTlD3hRodkLnbxAPP4OuJYdWCeM3IOdT+CpcMoIwIoDfCmRpEtSPfwBXxVkg9xmBeY7Lz2Eo2TDn/HC3Q==", + "version": "1.5.335", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.335.tgz", + "integrity": "sha512-q9n5T4BR4Xwa2cwbrwcsDJtHD/enpQ5S1xF1IAtdqf5AAgqDFmR/aakqH3ChFdqd/QXJhS3rnnXFtexU7rax6Q==", "license": "ISC" }, "node_modules/embla-carousel": { @@ -5275,12 +5390,12 @@ } }, "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "license": "ISC", - "dependencies": { - "yallist": "^3.0.2" + "version": "11.3.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.3.tgz", + "integrity": "sha512-JvNw9Y81y33E+BEYPr0U7omo+U9AySnsMsEiXgwT6yqd31VQWTLNQqmT4ou5eqPFUrTfIDFta2wKhB1hyohtAQ==", + "license": "BlueOak-1.0.0", + "engines": { + "node": "20 || >=22" } }, "node_modules/lucide-react": { @@ -5682,9 +5797,9 @@ } }, "node_modules/postcss": { - "version": "8.5.8", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.8.tgz", - "integrity": "sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==", + "version": "8.5.9", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.9.tgz", + "integrity": "sha512-7a70Nsot+EMX9fFU3064K/kdHWZqGVY+BADLyXc8Dfv+mTLLVl6JzJpPaCZ2kQL9gIJvKXSLMHhqdRRjwQeFtw==", "funding": [ { "type": "opencollective", @@ -5748,9 +5863,9 @@ "license": "MIT" }, "node_modules/react": { - "version": "19.2.4", - "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", - "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", + "version": "19.2.5", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.5.tgz", + "integrity": "sha512-llUJLzz1zTUBrskt2pwZgLq59AemifIftw4aB7JxOqf1HY2FDaGDxgwpAPVzHU1kdWabH7FauP4i1oEeer2WCA==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -5778,15 +5893,15 @@ } }, "node_modules/react-dom": { - "version": "19.2.4", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", - "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", + "version": "19.2.5", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.5.tgz", + "integrity": "sha512-J5bAZz+DXMMwW/wV3xzKke59Af6CHY7G4uYLN1OvBcKEsWOs4pQExj86BBKamxl/Ik5bx9whOrvBlSDfWzgSag==", "license": "MIT", "dependencies": { "scheduler": "^0.27.0" }, "peerDependencies": { - "react": "^19.2.4" + "react": "^19.2.5" } }, "node_modules/react-hook-form": { @@ -5922,27 +6037,16 @@ } }, "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz", + "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==", "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/readdirp/node_modules/picomatch": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", - "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", - "license": "MIT", - "engines": { - "node": ">=8.6" + "node": ">= 20.19.0" }, "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/recast": { diff --git a/mesher/client/package.json b/mesher/client/package.json index 78f3e3dd..65c89d10 100644 --- a/mesher/client/package.json +++ b/mesher/client/package.json @@ -47,12 +47,14 @@ "@tanstack/react-start": "^1.167.23", "@vercel/analytics": "1.6.1", "autoprefixer": "^10.4.20", + "chokidar": "^5.0.0", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "1.1.1", "date-fns": "4.1.0", "embla-carousel-react": "8.6.0", "input-otp": "1.4.2", + "lru-cache": "^11.3.3", "lucide-react": "^0.564.0", "next-themes": "^0.4.6", "nitro": "^3.0.260311-beta", @@ -61,6 +63,7 @@ "react-dom": "^19", "react-hook-form": "^7.54.1", "react-resizable-panels": "^2.1.7", + "readdirp": "^5.0.0", "recharts": "2.15.0", "sonner": "^1.7.1", "tailwind-merge": "^3.3.1", @@ -68,9 +71,9 @@ "zod": "^3.24.1" }, "devDependencies": { + "@playwright/test": "^1.54.2", "@tailwindcss/postcss": "^4.2.0", "@tailwindcss/vite": "4.2.2", - "@playwright/test": "^1.54.2", "@types/node": "^22", "@types/react": "^19", "@types/react-dom": "^19",