From 9d4b17b762ecda8c97e78784a802ba012a499b6f Mon Sep 17 00:00:00 2001 From: Daniel McCrystal Date: Thu, 7 Aug 2025 22:44:19 -0400 Subject: [PATCH] lets fuckin go --- package.json | 2 +- packages/client/index.html | 2 +- packages/client/package.json | 1 + packages/client/src/api.ts | 4 + packages/client/src/app.tsx | 38 ++-- packages/client/src/entry-client.tsx | 4 - packages/client/src/routes/index.tsx | 13 +- packages/client/src/{app.css => style.css} | 0 packages/server/README.md | 11 - .../20250805231347_init/migration.sql | 0 .../server/db}/migrations/migration_lock.toml | 0 {db => packages/server/db}/schema.prisma | 2 +- packages/server/package.json | 12 +- packages/server/prisma.config.ts | 6 + packages/server/src/api.ts | 6 + packages/server/src/index.ts | 11 + packages/server/tsconfig.json | 13 +- pnpm-lock.yaml | 195 ++++++++++++++++++ 18 files changed, 271 insertions(+), 49 deletions(-) create mode 100644 packages/client/src/api.ts delete mode 100644 packages/client/src/entry-client.tsx rename packages/client/src/{app.css => style.css} (100%) delete mode 100644 packages/server/README.md rename {db => packages/server/db}/migrations/20250805231347_init/migration.sql (100%) rename {db => packages/server/db}/migrations/migration_lock.toml (100%) rename {db => packages/server/db}/schema.prisma (93%) create mode 100644 packages/server/prisma.config.ts create mode 100644 packages/server/src/api.ts diff --git a/package.json b/package.json index 01a6dd0..8b3a916 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "type": "module", "version": "0.0.2", "scripts": { - "dev": "pnpm --parallel dev", + "dev": "pnpm --parallel dev", "build": "pnpm run -F client build", "start": "pnpm run -F server start" } diff --git a/packages/client/index.html b/packages/client/index.html index dcdb55e..ddaa58d 100644 --- a/packages/client/index.html +++ b/packages/client/index.html @@ -3,7 +3,7 @@ - +
diff --git a/packages/client/package.json b/packages/client/package.json index 60ca0bd..d75c2fd 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -8,6 +8,7 @@ }, "dependencies": { "@solidjs/router": "^0.15.3", + "hono": "^4.8.12", "solid-js": "^1.9.5" }, "devDependencies": { diff --git a/packages/client/src/api.ts b/packages/client/src/api.ts new file mode 100644 index 0000000..6b4efdf --- /dev/null +++ b/packages/client/src/api.ts @@ -0,0 +1,4 @@ +import { hc } from "hono/client"; +import { type ApiType } from "../../server/src/api"; + +export default hc("http://localhost:5001/api"); diff --git a/packages/client/src/app.tsx b/packages/client/src/app.tsx index ad91465..47515c0 100644 --- a/packages/client/src/app.tsx +++ b/packages/client/src/app.tsx @@ -1,7 +1,9 @@ -import "./app.css"; +import "./style.css"; import { Route, Router } from "@solidjs/router"; -import { Suspense } from "solid-js"; +import { lazy, Suspense } from "solid-js"; import pkg from "../package.json"; +import { render } from "solid-js/web"; +import Root from "./routes/index"; const Version = () => (
@@ -19,17 +21,21 @@ const Version = () => (
); -export default function App() { - return ( - ( - <> - {props.children} - - - )} - > - "tesingt"} /> - - ); -} +const App = () => ( + ( + <> + {props.children} + + + )} + > + import("./routes/index"))} /> + import("./routes/[game]/index"))} + /> + +); + +render(App, document.getElementById("app")!); diff --git a/packages/client/src/entry-client.tsx b/packages/client/src/entry-client.tsx deleted file mode 100644 index ec37a23..0000000 --- a/packages/client/src/entry-client.tsx +++ /dev/null @@ -1,4 +0,0 @@ -import App from "./app"; -import { render } from "solid-js/web"; - -render(App, document.getElementById("app")!); diff --git a/packages/client/src/routes/index.tsx b/packages/client/src/routes/index.tsx index 8ca09e1..ffe46ef 100644 --- a/packages/client/src/routes/index.tsx +++ b/packages/client/src/routes/index.tsx @@ -1,14 +1,19 @@ import { A } from "@solidjs/router"; -import { createResource, For } from "solid-js"; +import { createEffect, createResource, For } from "solid-js"; import * as Games from "../db/Games"; +import api from "../api"; export default () => { - const [games] = createResource(() => Games.queryAll()); + const [ping] = createResource(async () => + api.ping.$get().then(async (res) => await res.text()) + ); + return (
- + {ping()} + {/* {(game) => {game.name}} - + */}
); }; diff --git a/packages/client/src/app.css b/packages/client/src/style.css similarity index 100% rename from packages/client/src/app.css rename to packages/client/src/style.css diff --git a/packages/server/README.md b/packages/server/README.md deleted file mode 100644 index 6dd13e7..0000000 --- a/packages/server/README.md +++ /dev/null @@ -1,11 +0,0 @@ -To install dependencies: -```sh -bun install -``` - -To run: -```sh -bun run dev -``` - -open http://localhost:3000 diff --git a/db/migrations/20250805231347_init/migration.sql b/packages/server/db/migrations/20250805231347_init/migration.sql similarity index 100% rename from db/migrations/20250805231347_init/migration.sql rename to packages/server/db/migrations/20250805231347_init/migration.sql diff --git a/db/migrations/migration_lock.toml b/packages/server/db/migrations/migration_lock.toml similarity index 100% rename from db/migrations/migration_lock.toml rename to packages/server/db/migrations/migration_lock.toml diff --git a/db/schema.prisma b/packages/server/db/schema.prisma similarity index 93% rename from db/schema.prisma rename to packages/server/db/schema.prisma index 83f5350..a82568e 100644 --- a/db/schema.prisma +++ b/packages/server/db/schema.prisma @@ -4,7 +4,7 @@ generator client { datasource db { provider = "sqlite" - url = "file:./db/dev.db" + url = "file:./dev.db" } model Game { diff --git a/packages/server/package.json b/packages/server/package.json index b182e20..bdfd07c 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,18 +1,20 @@ { "name": "server", "scripts": { - "dev": "NODE_ENV=development bun run --hot --port 5001 src/index.ts", - "start": "NODE_ENV=production bun run --port 5001 src/index.ts", + "dev": "concurrently 'pnpm run devserver' 'pnpm run dbstudio'", + "devserver": "NODE_ENV=development bun run --hot --port 5001 src/index.ts", "dbstudio": "pnpm dlx prisma studio --browser none", "dbdeploy": "pnpm dlx prisma migrate deploy", - "dbsync": "concurrently 'pnpm dlx prisma generate' 'pnpm dlx prisma migrate dev'" + "dbsync": "concurrently 'pnpm dlx prisma generate' 'pnpm dlx prisma migrate dev'", + "start": "NODE_ENV=production bun run --port 5001 src/index.ts" }, "dependencies": { - "hono": "^4.8.12", - "@prisma/client": "6.13.0" + "@prisma/client": "6.13.0", + "hono": "^4.8.12" }, "devDependencies": { "@types/bun": "latest", + "concurrently": "^9.2.0", "prisma": "6.13.0" } } diff --git a/packages/server/prisma.config.ts b/packages/server/prisma.config.ts new file mode 100644 index 0000000..25b7c97 --- /dev/null +++ b/packages/server/prisma.config.ts @@ -0,0 +1,6 @@ +import path from "node:path"; +import { defineConfig } from "prisma/config"; + +export default defineConfig({ + schema: path.join("db", "schema.prisma"), +}); diff --git a/packages/server/src/api.ts b/packages/server/src/api.ts new file mode 100644 index 0000000..70dcf7c --- /dev/null +++ b/packages/server/src/api.ts @@ -0,0 +1,6 @@ +import { Hono } from "hono"; + +const api = new Hono().get("/ping", (c) => c.text("pong")); + +export default api; +export type ApiType = typeof api; diff --git a/packages/server/src/index.ts b/packages/server/src/index.ts index 241521a..e8f22cb 100644 --- a/packages/server/src/index.ts +++ b/packages/server/src/index.ts @@ -1,7 +1,15 @@ import { Hono } from "hono"; import { serveStatic } from "hono/bun"; +import api from "./api"; +import { cors } from "hono/cors"; const app = new Hono(); +app.use("*", async (c, next) => { + console.log(c.req.method, c.req.url); + await next(); + console.log(">>", c.res.status); +}); + const isDev = Bun.env.NODE_ENV === "development"; const isProd = Bun.env.NODE_ENV === "production"; @@ -13,4 +21,7 @@ isProd && }) ); +app.use("*", cors()); +app.route("/api", api); + export default app; diff --git a/packages/server/tsconfig.json b/packages/server/tsconfig.json index c442b33..1c6d852 100644 --- a/packages/server/tsconfig.json +++ b/packages/server/tsconfig.json @@ -1,7 +1,8 @@ { - "compilerOptions": { - "strict": true, - "jsx": "react-jsx", - "jsxImportSource": "hono/jsx" - } -} \ No newline at end of file + "compilerOptions": { + "strict": true, + "jsx": "react-jsx", + "jsxImportSource": "hono/jsx", + "esModuleInterop": true + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b1832a9..2188d57 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -13,6 +13,9 @@ importers: '@solidjs/router': specifier: ^0.15.3 version: 0.15.3(solid-js@1.9.8) + hono: + specifier: ^4.8.12 + version: 4.8.12 solid-js: specifier: ^1.9.5 version: 1.9.8 @@ -36,6 +39,9 @@ importers: '@types/bun': specifier: latest version: 1.2.19(@types/react@19.1.9) + concurrently: + specifier: ^9.2.0 + version: 9.2.0 prisma: specifier: 6.13.0 version: 6.13.0 @@ -461,6 +467,14 @@ packages: '@types/react@19.1.9': resolution: {integrity: sha512-WmdoynAX8Stew/36uTSVMcLJJ1KRh6L3IZRx1PZ7qJtBqT3dYTgyDTx8H1qoRghErydW7xw9mSJ3wS//tCRpFA==} + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + babel-plugin-jsx-dom-expressions@0.40.0: resolution: {integrity: sha512-oQwYIo4utC6J+mWweweinfFutlt1w4PKyiWGv8bdAKl/1K/de70lcQ3l61Xk3a+khPDz8YhkSvhOksqLuvVBuA==} peerDependencies: @@ -496,6 +510,10 @@ packages: caniuse-lite@1.0.30001731: resolution: {integrity: sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg==} + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + chokidar@4.0.3: resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} engines: {node: '>= 14.16.0'} @@ -503,6 +521,22 @@ packages: citty@0.1.6: resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==} + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + concurrently@9.2.0: + resolution: {integrity: sha512-IsB/fiXTupmagMW4MNp2lx2cdSN2FfZq78vF90LBB+zZHArbIQZjQtzXCiXnvTxCZSvXanTqFLWBjw2UkLx1SQ==} + engines: {node: '>=18'} + hasBin: true + confbox@0.2.2: resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==} @@ -545,6 +579,9 @@ packages: electron-to-chromium@1.5.198: resolution: {integrity: sha512-G5COfnp3w+ydVu80yprgWSfmfQaYRh9DOxfhAxstLyetKaLyl55QrNjx8C38Pc/C+RaDmb1M0Lk8wPEMQ+bGgQ==} + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + entities@6.0.1: resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==} engines: {node: '>=0.12'} @@ -586,10 +623,18 @@ packages: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + giget@2.0.0: resolution: {integrity: sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==} hasBin: true + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + hono@4.8.12: resolution: {integrity: sha512-MQSKk1Mg7b74k8l+A025LfysnLtXDKkE4pLaSsYRQC5iy85lgZnuyeQ1Wynair9mmECzoLu+FtJtqNZSoogBDQ==} engines: {node: '>=16.9.0'} @@ -605,6 +650,10 @@ packages: resolution: {integrity: sha512-XPdx9Dq4t9Qk1mTMbWONJqU7boCoumEH7fRET37HX5+khDUl3J2W6PdALxhILYlIYx2amlwYcRPp28p0tSiojg==} engines: {node: '>=18'} + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + is-what@4.1.16: resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==} engines: {node: '>=12.13'} @@ -626,6 +675,9 @@ packages: engines: {node: '>=6'} hasBin: true + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} @@ -717,11 +769,18 @@ packages: resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} engines: {node: '>= 14.18.0'} + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + rollup@4.46.2: resolution: {integrity: sha512-WMmLFI+Boh6xbop+OAGo9cQ3OgX9MIg7xOQjn+pTCwOkk+FNDAeAemXkJ3HzDJrVXleLOFVa1ipuc1AmEx1Dwg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rxjs@7.8.2: + resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} + semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -741,6 +800,10 @@ packages: resolution: {integrity: sha512-RbcPH1n5cfwKrru7v7+zrZvjLurgHhGyso3HTyGtRivGWgYjbOmGuivCQaORNELjNONoK35nj28EoWul9sb1zQ==} engines: {node: '>=10'} + shell-quote@1.8.3: + resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==} + engines: {node: '>= 0.4'} + solid-js@1.9.8: resolution: {integrity: sha512-zF9Whfqk+s8wWuyDKnE7ekl+dJburjdZq54O6X1k4XChA57uZ5FOauYAa0s4I44XkBOM3CZmPrZC0DGjH9fKjQ==} @@ -765,6 +828,22 @@ packages: spdx-license-ids@3.0.22: resolution: {integrity: sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ==} + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + tinyexec@1.0.1: resolution: {integrity: sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==} @@ -772,6 +851,13 @@ packages: resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} engines: {node: '>=12.0.0'} + tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + type-fest@4.41.0: resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} engines: {node: '>=16'} @@ -853,9 +939,25 @@ packages: vite: optional: true + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + snapshots: '@ampproject/remapping@2.3.0': @@ -1205,6 +1307,12 @@ snapshots: dependencies: csstype: 3.1.3 + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + babel-plugin-jsx-dom-expressions@0.40.0(@babel/core@7.28.0): dependencies: '@babel/core': 7.28.0 @@ -1251,6 +1359,11 @@ snapshots: caniuse-lite@1.0.30001731: {} + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + chokidar@4.0.3: dependencies: readdirp: 4.1.2 @@ -1259,6 +1372,28 @@ snapshots: dependencies: consola: 3.4.2 + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + concurrently@9.2.0: + dependencies: + chalk: 4.1.2 + lodash: 4.17.21 + rxjs: 7.8.2 + shell-quote: 1.8.3 + supports-color: 8.1.1 + tree-kill: 1.2.2 + yargs: 17.7.2 + confbox@0.2.2: {} consola@3.4.2: {} @@ -1286,6 +1421,8 @@ snapshots: electron-to-chromium@1.5.198: {} + emoji-regex@8.0.0: {} + entities@6.0.1: {} esbuild@0.25.8: @@ -1336,6 +1473,8 @@ snapshots: gensync@1.0.0-beta.2: {} + get-caller-file@2.0.5: {} + giget@2.0.0: dependencies: citty: 0.1.6 @@ -1345,6 +1484,8 @@ snapshots: nypm: 0.6.1 pathe: 2.0.3 + has-flag@4.0.0: {} + hono@4.8.12: {} hosted-git-info@7.0.2: @@ -1355,6 +1496,8 @@ snapshots: index-to-position@1.1.0: {} + is-fullwidth-code-point@3.0.0: {} + is-what@4.1.16: {} jiti@2.5.1: {} @@ -1365,6 +1508,8 @@ snapshots: json5@2.2.3: {} + lodash@4.17.21: {} + lru-cache@10.4.3: {} lru-cache@5.1.1: @@ -1459,6 +1604,8 @@ snapshots: readdirp@4.1.2: {} + require-directory@2.1.1: {} + rollup@4.46.2: dependencies: '@types/estree': 1.0.8 @@ -1485,6 +1632,10 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.46.2 fsevents: 2.3.3 + rxjs@7.8.2: + dependencies: + tslib: 2.8.1 + semver@6.3.1: {} semver@7.7.2: {} @@ -1495,6 +1646,8 @@ snapshots: seroval@1.3.2: {} + shell-quote@1.8.3: {} + solid-js@1.9.8: dependencies: csstype: 3.1.3 @@ -1526,6 +1679,24 @@ snapshots: spdx-license-ids@3.0.22: {} + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + tinyexec@1.0.1: {} tinyglobby@0.2.14: @@ -1533,6 +1704,10 @@ snapshots: fdir: 6.4.6(picomatch@4.0.3) picomatch: 4.0.3 + tree-kill@1.2.2: {} + + tslib@2.8.1: {} + type-fest@4.41.0: {} undici-types@7.10.0: {} @@ -1582,4 +1757,24 @@ snapshots: optionalDependencies: vite: 7.0.6(@types/node@24.2.0)(jiti@2.5.1) + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + y18n@5.0.8: {} + yallist@3.1.1: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1