@wenathlan/cobaia 2.0.155 → 2.0.158
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.tsx +4 -4
- package/Dockerfile +4 -1
- package/biome.jsonc +3 -3
- package/bun.lock +147 -27
- package/cli.ts +114 -0
- package/cobaia.csproj +22 -0
- package/cobaia.gemspec +14 -0
- package/cobaia.java +16 -0
- package/content.ts +2 -2
- package/db.ts +2 -2
- package/docs/features.md +58 -0
- package/docs/monetization.md +61 -0
- package/index.html +1 -1
- package/package.json +21 -14
- package/pnpm-workspace.yaml +39 -20
- package/pnpmboot.package-lock.json +157 -0
- package/pnpmboot.package.json +6 -0
- package/pom.xml +29 -0
- package/{Sol → sol}/Sol.tsx +2 -2
- package/{Sol → sol}/apps/apps.tsx +1 -1
- package/{Sol → sol}/blog/blog.tsx +1 -1
- package/{Sol → sol}/home/home.tsx +2 -2
- package/{Sol → sol}/intro/intro.tsx +1 -1
- package/{Sol → sol}/legal/legal.tsx +1 -1
- package/{Sol → sol}/notfound/notfound.tsx +1 -1
- package/{Sol → sol}/pricing/pricing.tsx +1 -1
- package/{Sol → sol}/shell/Shell.tsx +1 -1
- package/{Sol → sol}/sol.css +7 -0
- package/{Sol → sol}/support/support.tsx +1 -1
- package/{Sol → sol}/wingets/index.ts +1 -1
- package/tests/sandboxmodality.test.ts +4 -4
- package/tsconfig.json +1 -1
- package/vite.config.ts +2 -2
- package/vitest.config.ts +2 -2
- package/docs/.gitkeep +0 -0
- /package/{Sol → sol}/wingets/IntroFooter.tsx +0 -0
- /package/{Sol → sol}/wingets/IntroPlans.tsx +0 -0
- /package/{Sol → sol}/wingets/IntroSplash.tsx +0 -0
- /package/{Sol → sol}/wingets/ShellAdsslot.tsx +0 -0
- /package/{Sol → sol}/wingets/ShellBrand.tsx +0 -0
package/App.tsx
CHANGED
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
* directly and every page is public; the intro (/intro) is the one bare
|
|
8
8
|
* presentation page the family grammar gives every app, mounted full-bleed
|
|
9
9
|
* under the family fullscreen law. The root manages the theme as a single
|
|
10
|
-
* file: it imports only the theme anchor (
|
|
11
|
-
* after the theme folder, beside
|
|
10
|
+
* file: it imports only the theme anchor (sol/Sol.tsx — the file named
|
|
11
|
+
* after the theme folder, beside sol/sol.css), the theme stylesheet and the
|
|
12
12
|
* root logics, wraps the anchor in the wouter router (the subpath the pages
|
|
13
13
|
* deploy owns answers through the declared base, the same mount grammar
|
|
14
14
|
* every sibling carries) and renders the theme into the root element —
|
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
*/
|
|
19
19
|
import { createRoot } from "react-dom/client";
|
|
20
20
|
import { Router as WouterRouter } from "wouter";
|
|
21
|
-
import Sol from "./
|
|
21
|
+
import Sol from "./sol/Sol";
|
|
22
22
|
import "@fontsource-variable/geist-mono";
|
|
23
23
|
import "@fontsource-variable/inter";
|
|
24
|
-
import "./
|
|
24
|
+
import "./sol/sol.css";
|
|
25
25
|
import { seedLabels } from "./labels";
|
|
26
26
|
|
|
27
27
|
// the copy law rides the boot: the seed refreshes the label store rows from
|
package/Dockerfile
CHANGED
|
@@ -14,8 +14,11 @@ ARG COBAIA_VERSION=2.0.134
|
|
|
14
14
|
|
|
15
15
|
WORKDIR /src
|
|
16
16
|
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
|
17
|
+
COPY pnpmboot.package.json /tmp/pnpmboot/package.json
|
|
18
|
+
COPY pnpmboot.package-lock.json /tmp/pnpmboot/package-lock.json
|
|
17
19
|
RUN apk add --no-cache python3 make g++ \
|
|
18
|
-
&& npm
|
|
20
|
+
&& npm ci --prefix /tmp/pnpmboot --no-fund --no-audit \
|
|
21
|
+
&& ln -sf /tmp/pnpmboot/node_modules/.bin/pnpm /usr/local/bin/pnpm \
|
|
19
22
|
&& pnpm install --frozen-lockfile
|
|
20
23
|
COPY . .
|
|
21
24
|
RUN pnpm build
|
package/biome.jsonc
CHANGED
package/bun.lock
CHANGED
|
@@ -15,18 +15,18 @@
|
|
|
15
15
|
"@libsql/client": "^0.18.0",
|
|
16
16
|
"@prisma/adapter-libsql": "^7.10.1",
|
|
17
17
|
"@prisma/client": "^7.10.1",
|
|
18
|
-
"@wenathlan/cadria": "
|
|
19
|
-
"@wenathlan/debonair": "
|
|
20
|
-
"@wenathlan/devthink": "
|
|
21
|
-
"@wenathlan/getry": "
|
|
22
|
-
"@wenathlan/saddle": "
|
|
23
|
-
"@wenathlan/vault": "
|
|
18
|
+
"@wenathlan/cadria": "~2.0.155",
|
|
19
|
+
"@wenathlan/debonair": "~2.0.155",
|
|
20
|
+
"@wenathlan/devthink": "~2.0.154",
|
|
21
|
+
"@wenathlan/getry": "~2.0.155",
|
|
22
|
+
"@wenathlan/saddle": "~2.0.155",
|
|
23
|
+
"@wenathlan/vault": "~2.0.155",
|
|
24
24
|
"better-sqlite3": "^13.0.3",
|
|
25
25
|
"drizzle-orm": "^0.45.4",
|
|
26
26
|
"gsap": "^3.15.0",
|
|
27
27
|
"hono": "^4.13.16",
|
|
28
28
|
"ink": "^7.1.1",
|
|
29
|
-
"lucide-react": "^1.
|
|
29
|
+
"lucide-react": "^1.68.0",
|
|
30
30
|
"motion": "^12.43.0",
|
|
31
31
|
"react": "^19.3.1",
|
|
32
32
|
"react-devtools-core": "^8.0.0",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"z-ai-web-dev-sdk": "^0.0.18",
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@biomejs/biome": "^2.6.
|
|
39
|
+
"@biomejs/biome": "^2.6.5",
|
|
40
40
|
"@capacitor/android": "^8.6.0",
|
|
41
41
|
"@capacitor/cli": "^8.6.0",
|
|
42
42
|
"@capacitor/core": "^8.6.0",
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
"hono": "^4.13.16",
|
|
106
106
|
"input-otp": "^1.5.0",
|
|
107
107
|
"jsdom": "26.1.0",
|
|
108
|
-
"lucide-react": "^1.
|
|
108
|
+
"lucide-react": "^1.68.0",
|
|
109
109
|
"mysql2": "^3.24.6",
|
|
110
110
|
"nanoid": "^6.0.2",
|
|
111
111
|
"next-themes": "^0.4.6",
|
|
@@ -172,27 +172,27 @@
|
|
|
172
172
|
|
|
173
173
|
"@balena/dockerignore": ["@balena/dockerignore@1.0.2", "", {}, "sha512-wMue2Sy4GAVTk6Ic4tJVcnfdau+gx2EnG7S+uAEe+TWJFqE4YoWN4/H8MSLj4eYJKxGg26lZwboEniNiNwZQ6Q=="],
|
|
174
174
|
|
|
175
|
-
"@biomejs/biome": ["@biomejs/biome@2.6.
|
|
175
|
+
"@biomejs/biome": ["@biomejs/biome@2.6.5", "", { "optionalDependencies": { "@biomejs/cli-android-arm64": "2.6.5", "@biomejs/cli-android-x64": "2.6.5", "@biomejs/cli-darwin-arm64": "2.6.5", "@biomejs/cli-darwin-x64": "2.6.5", "@biomejs/cli-linux-arm64": "2.6.5", "@biomejs/cli-linux-arm64-musl": "2.6.5", "@biomejs/cli-linux-x64": "2.6.5", "@biomejs/cli-linux-x64-musl": "2.6.5", "@biomejs/cli-win32-arm64": "2.6.5", "@biomejs/cli-win32-x64": "2.6.5" }, "bin": { "biome": "bin/biome" } }, "sha512-n0sp74QbSVEkWXlH659TKv4oJNylwAvDeZ8K8vt/PbcF1xneuNWe57z/G0Bxfh00cufhWXF6DiStLM8+jcLUpg=="],
|
|
176
176
|
|
|
177
|
-
"@biomejs/cli-android-arm64": ["@biomejs/cli-android-arm64@2.6.
|
|
177
|
+
"@biomejs/cli-android-arm64": ["@biomejs/cli-android-arm64@2.6.5", "", { "os": "android", "cpu": "arm64" }, "sha512-fkLzc1WRU7wRIUNmAm7cxILb4dd6eESz/VycWvVFKVn6tXx0gFQKdUbPnwT42xys8AEvIJQpFGcK00kURwqorg=="],
|
|
178
178
|
|
|
179
|
-
"@biomejs/cli-android-x64": ["@biomejs/cli-android-x64@2.6.
|
|
179
|
+
"@biomejs/cli-android-x64": ["@biomejs/cli-android-x64@2.6.5", "", { "os": "android", "cpu": "x64" }, "sha512-fkZ9dPnDAzAcaPtPCiwqtkub5C9FQK/oGCGaU9sq+DysTaq13pE9FxBIMcEZ3ydn8/FfcMdXi/DDzKDP+qyn2Q=="],
|
|
180
180
|
|
|
181
|
-
"@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.6.
|
|
181
|
+
"@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.6.5", "", { "os": "darwin", "cpu": "arm64" }, "sha512-bKd0EOREgnVjeZm4s9knQ+WdPOkWS3JHB+eWGHlx+Pq66bqQA1/KybwU0O+zuyAyXiphSCBcrLruZt3YtnJoaQ=="],
|
|
182
182
|
|
|
183
|
-
"@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.6.
|
|
183
|
+
"@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.6.5", "", { "os": "darwin", "cpu": "x64" }, "sha512-UkT9BECNOXSiW6SGddjyaRACy362Sc9n3vDaTFkccL0bC2gW7JzM16i4+JKPbEaDn1Sa+oETHV8KungnI/y40Q=="],
|
|
184
184
|
|
|
185
|
-
"@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.6.
|
|
185
|
+
"@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.6.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-H9cVMWBqW/lkFK9NHJdt0bpM2q7PacUDEjQoff9+m0dCV09H/jmBykfTCkbDthHf8+jCuWDJWiQFJ7bDkiGOcA=="],
|
|
186
186
|
|
|
187
|
-
"@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.6.
|
|
187
|
+
"@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.6.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-kfc3AePW1a0/d/gUpcIz95nf3Ce8YY2/xL0Fk3fLqAhKsotqUi6PN6BaVWss4p6ijWbiuacZ9NQ4NiQtpjbYpw=="],
|
|
188
188
|
|
|
189
|
-
"@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.6.
|
|
189
|
+
"@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.6.5", "", { "os": "linux", "cpu": "x64" }, "sha512-e6/WMSN/+FhH+ZOoBevps/euxFQmv6BXqYNuTn1+ITR6O4XYFjHF5PeVSNZnjkgSYmvhcDkfepSX5lXczMijGA=="],
|
|
190
190
|
|
|
191
|
-
"@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.6.
|
|
191
|
+
"@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.6.5", "", { "os": "linux", "cpu": "x64" }, "sha512-0mHVpLNt7/FugfZ2VPugUIEIiooWIyHGGJUqU9StxamBln9hz+maXRFIECU50jaf5/ZB93veGIViN5VKgw2AEA=="],
|
|
192
192
|
|
|
193
|
-
"@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.6.
|
|
193
|
+
"@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.6.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-uBbfpdR/cH5up1iRJFGAPP97xKMzrgMs685CSrY7NM+Q4Unw7chY0o3JulEvJdmU6c6hGQxwqotMq7DDH0DzxA=="],
|
|
194
194
|
|
|
195
|
-
"@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.6.
|
|
195
|
+
"@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.6.5", "", { "os": "win32", "cpu": "x64" }, "sha512-07LaCeN9vvmbAAMOMsUjMfL5UbsCDkvVeyMJIgwNRc0xYqhizBGkjVzx05LYEwCXl2AiHcdzqVPR4IOYAsI1QQ=="],
|
|
196
196
|
|
|
197
197
|
"@capacitor/android": ["@capacitor/android@8.6.0", "", { "peerDependencies": { "@capacitor/core": "^8.6.0" } }, "sha512-6IJS0TCfV/F/8+324CCwYd3xL6r+TH0W7zzaxYzPz9IV3YWCNvsZDuCCPHUIBC5iASb9od827ddSJ6rz+9Pu1Q=="],
|
|
198
198
|
|
|
@@ -892,17 +892,19 @@
|
|
|
892
892
|
|
|
893
893
|
"@webpack-cli/serve": ["@webpack-cli/serve@3.0.1", "", { "peerDependencies": { "webpack": "^5.82.0", "webpack-cli": "6.x.x", "webpack-dev-server": "*" }, "optionalPeers": ["webpack-dev-server"] }, "sha512-sbgw03xQaCLiT6gcY/6u3qBDn01CWw/nbaXl3gTdTFuJJ75Gffv3E3DBpgvY2fkkrdS1fpjaXNOmJlnbtKauKg=="],
|
|
894
894
|
|
|
895
|
-
"@wenathlan/
|
|
895
|
+
"@wenathlan/argan": ["@wenathlan/argan@2.0.155", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.0.154", "@wenathlan/debonair": "^2.0.154", "@wenathlan/devthink": "^2.0.154", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.0.154", "@wenathlan/vault": "^2.0.154", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-1eoYqAGTA+cnQjnmMsNQsUbnscx/wE+ug1fwVhKQenLnff6Vu/cfHgXPZMZPbBVuGci98+BQUBfYi909AouysQ=="],
|
|
896
896
|
|
|
897
|
-
"@wenathlan/
|
|
897
|
+
"@wenathlan/cadria": ["@wenathlan/cadria@2.0.155", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.0.154", "@wenathlan/debonair": "^2.0.154", "@wenathlan/devthink": "^2.0.154", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.0.154", "@wenathlan/vault": "^2.0.154", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-PMXtM+uj6O71HfkIbYpE5zGltnoJ9WFgXuspLRyv4Lsu8OUz0MoOlubWy7p8WVQk5BjJxkuvSdmPbhRVmE4NmQ=="],
|
|
898
898
|
|
|
899
|
-
"@wenathlan/
|
|
899
|
+
"@wenathlan/debonair": ["@wenathlan/debonair@2.0.155", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.0.154", "@wenathlan/debonair": "^2.0.154", "@wenathlan/devthink": "^2.0.154", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.0.154", "@wenathlan/vault": "^2.0.154", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-8mXNDdSYyaPXSe+19BDRCWTTlZP8v2s9A14qVuSBreCwTJVJu+0/1HRrGvz2gPeuHObMMH1Nuapk3s19kTp73g=="],
|
|
900
900
|
|
|
901
|
-
"@wenathlan/
|
|
901
|
+
"@wenathlan/devthink": ["@wenathlan/devthink@2.0.154", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/getry": "^2.0.152", "@wenathlan/saddle": "^2.1.6", "@wenathlan/vault": "^2.0.153", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.66.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "bin": { "devthink": "cli.js" } }, "sha512-5BgkAqMfeGvGPIqc1fIKrehbdL3rpOTDNVHghADTeMTmSK/1/DC/ppjw4iimZ8DlwGdvsp6PgP3njuTO/xJCPQ=="],
|
|
902
902
|
|
|
903
|
-
"@wenathlan/
|
|
903
|
+
"@wenathlan/getry": ["@wenathlan/getry@2.0.155", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.0.154", "@wenathlan/debonair": "^2.0.154", "@wenathlan/devthink": "^2.0.154", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.0.154", "@wenathlan/vault": "^2.0.154", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Vx66FaMCWP9FvkemqXIa0lkRA/NCJwtVxIK1fBybujGJUCY92wBaK63QauJM7Jzv/L9zXy2aedpuTjJSS1jydg=="],
|
|
904
904
|
|
|
905
|
-
"@wenathlan/
|
|
905
|
+
"@wenathlan/saddle": ["@wenathlan/saddle@2.0.155", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.0.154", "@wenathlan/debonair": "^2.0.154", "@wenathlan/devthink": "^2.0.154", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.0.154", "@wenathlan/vault": "^2.0.154", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "optionalDependencies": { "commander": "^15.0.0", "dockerode": "^5.0.1", "express": "^5.3.0" }, "peerDependencies": { "playwright": "^1.63.0" }, "optionalPeers": ["playwright"], "bin": { "saddle": "cli.ts" } }, "sha512-FvgqZh89DOASfAF1F/26aGhCbWMrzfvhkJrAvoT5UHGV7hjHm/Y3K/R6HToNCd4YgjN1oOGMW6WliX+0cPn4wA=="],
|
|
906
|
+
|
|
907
|
+
"@wenathlan/vault": ["@wenathlan/vault@2.0.155", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/argan": "^2.0.154", "@wenathlan/cadria": "^2.0.154", "@wenathlan/debonair": "^2.0.154", "@wenathlan/devthink": "^2.0.154", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.0.154", "@wenathlan/vault": "^2.0.154", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Hb0Hw/aHRXfGOLssnO3NdNVyv2Pf4FNy/vTxDBb6cCO2vqlXxU5iK+mVU7k7y0Msg6lTpMwSW62MmJ3bCsUb8A=="],
|
|
906
908
|
|
|
907
909
|
"@xmldom/xmldom": ["@xmldom/xmldom@0.9.12", "", {}, "sha512-5AXjrcMClTryPe9LgZrygpB1lj7s0S9E0+W+AHaVKAVyHanafK86iPSvG5xHVSp/jC+VH1UXu0TAEmY279xH7A=="],
|
|
908
910
|
|
|
@@ -1492,7 +1494,7 @@
|
|
|
1492
1494
|
|
|
1493
1495
|
"lru.min": ["lru.min@1.1.5", "", {}, "sha512-5J9ysMYUpYIg9RF2vJpy9SinEmSviFSe0GyPpCQ4L5QSkLAgeLXlTAOu2ZwWUU5m+0SBl6gUU1R1ZQB3aKypfA=="],
|
|
1494
1496
|
|
|
1495
|
-
"lucide-react": ["lucide-react@1.
|
|
1497
|
+
"lucide-react": ["lucide-react@1.68.0", "", { "peerDependencies": { "@types/react": "*", "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-9i7NKWm2QlOprMhcwkhBOlIt9zB7cp2GIyFY+oMue0EsprolUFxva5rkdBbyfs4k1eejpa0JRnRgVOGiart+Xg=="],
|
|
1496
1498
|
|
|
1497
1499
|
"magic-string": ["magic-string@1.4.3", "", { "dependencies": { "@jridgewell/sourcemap-codec": "1.6.0" } }, "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ=="],
|
|
1498
1500
|
|
|
@@ -2186,10 +2188,66 @@
|
|
|
2186
2188
|
|
|
2187
2189
|
"@visx/vendor/d3-array": ["d3-array@3.2.1", "", { "dependencies": { "internmap": "2.0.3" } }, "sha512-gUY/qeHq/yNqqoCKNq4vtpFLdoCdvyNpWoC/KNjhGbhDuQpAM9sIQQKkXSNpXa9h5KySs/gzm7R88WkUutgwWQ=="],
|
|
2188
2190
|
|
|
2191
|
+
"@wenathlan/argan/@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
2192
|
+
|
|
2193
|
+
"@wenathlan/argan/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2194
|
+
|
|
2195
|
+
"@wenathlan/argan/@wenathlan/debonair": ["@wenathlan/debonair@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-o35lj5DbxAwhwyuSqb1egCKbvZplDt6LTT6COtBmfdzxH7nO9R0pFGrkCtmK8twgAJ7FMzpEY5pycvigH82EEA=="],
|
|
2196
|
+
|
|
2197
|
+
"@wenathlan/argan/@wenathlan/saddle": ["@wenathlan/saddle@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "optionalDependencies": { "commander": "^15.0.0", "dockerode": "^5.0.1", "express": "^5.3.0" }, "peerDependencies": { "playwright": "^1.63.0" }, "optionalPeers": ["playwright"], "bin": { "saddle": "cli.ts" } }, "sha512-8E0eHNXgtjhxXbm5WO8iB/llufdZhitX44vUwjqgAbjU6MHjpMFB1uHa1Zpy1raSIK6t6ITsArY7V4/BuqaBBQ=="],
|
|
2198
|
+
|
|
2199
|
+
"@wenathlan/argan/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2200
|
+
|
|
2201
|
+
"@wenathlan/cadria/@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
2202
|
+
|
|
2203
|
+
"@wenathlan/cadria/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2204
|
+
|
|
2205
|
+
"@wenathlan/cadria/@wenathlan/debonair": ["@wenathlan/debonair@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-o35lj5DbxAwhwyuSqb1egCKbvZplDt6LTT6COtBmfdzxH7nO9R0pFGrkCtmK8twgAJ7FMzpEY5pycvigH82EEA=="],
|
|
2206
|
+
|
|
2207
|
+
"@wenathlan/cadria/@wenathlan/saddle": ["@wenathlan/saddle@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "optionalDependencies": { "commander": "^15.0.0", "dockerode": "^5.0.1", "express": "^5.3.0" }, "peerDependencies": { "playwright": "^1.63.0" }, "optionalPeers": ["playwright"], "bin": { "saddle": "cli.ts" } }, "sha512-8E0eHNXgtjhxXbm5WO8iB/llufdZhitX44vUwjqgAbjU6MHjpMFB1uHa1Zpy1raSIK6t6ITsArY7V4/BuqaBBQ=="],
|
|
2208
|
+
|
|
2209
|
+
"@wenathlan/cadria/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2210
|
+
|
|
2211
|
+
"@wenathlan/debonair/@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
2212
|
+
|
|
2213
|
+
"@wenathlan/debonair/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2214
|
+
|
|
2215
|
+
"@wenathlan/debonair/@wenathlan/debonair": ["@wenathlan/debonair@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-o35lj5DbxAwhwyuSqb1egCKbvZplDt6LTT6COtBmfdzxH7nO9R0pFGrkCtmK8twgAJ7FMzpEY5pycvigH82EEA=="],
|
|
2216
|
+
|
|
2217
|
+
"@wenathlan/debonair/@wenathlan/saddle": ["@wenathlan/saddle@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "optionalDependencies": { "commander": "^15.0.0", "dockerode": "^5.0.1", "express": "^5.3.0" }, "peerDependencies": { "playwright": "^1.63.0" }, "optionalPeers": ["playwright"], "bin": { "saddle": "cli.ts" } }, "sha512-8E0eHNXgtjhxXbm5WO8iB/llufdZhitX44vUwjqgAbjU6MHjpMFB1uHa1Zpy1raSIK6t6ITsArY7V4/BuqaBBQ=="],
|
|
2218
|
+
|
|
2219
|
+
"@wenathlan/debonair/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2220
|
+
|
|
2189
2221
|
"@wenathlan/devthink/@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
2190
2222
|
|
|
2223
|
+
"@wenathlan/devthink/@wenathlan/saddle": ["@wenathlan/saddle@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "optionalDependencies": { "commander": "^15.0.0", "dockerode": "^5.0.1", "express": "^5.3.0" }, "peerDependencies": { "playwright": "^1.63.0" }, "optionalPeers": ["playwright"], "bin": { "saddle": "cli.ts" } }, "sha512-8E0eHNXgtjhxXbm5WO8iB/llufdZhitX44vUwjqgAbjU6MHjpMFB1uHa1Zpy1raSIK6t6ITsArY7V4/BuqaBBQ=="],
|
|
2224
|
+
|
|
2225
|
+
"@wenathlan/devthink/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2226
|
+
|
|
2227
|
+
"@wenathlan/getry/@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
2228
|
+
|
|
2229
|
+
"@wenathlan/saddle/@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
2230
|
+
|
|
2231
|
+
"@wenathlan/saddle/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2232
|
+
|
|
2233
|
+
"@wenathlan/saddle/@wenathlan/debonair": ["@wenathlan/debonair@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-o35lj5DbxAwhwyuSqb1egCKbvZplDt6LTT6COtBmfdzxH7nO9R0pFGrkCtmK8twgAJ7FMzpEY5pycvigH82EEA=="],
|
|
2234
|
+
|
|
2235
|
+
"@wenathlan/saddle/@wenathlan/saddle": ["@wenathlan/saddle@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "optionalDependencies": { "commander": "^15.0.0", "dockerode": "^5.0.1", "express": "^5.3.0" }, "peerDependencies": { "playwright": "^1.63.0" }, "optionalPeers": ["playwright"], "bin": { "saddle": "cli.ts" } }, "sha512-8E0eHNXgtjhxXbm5WO8iB/llufdZhitX44vUwjqgAbjU6MHjpMFB1uHa1Zpy1raSIK6t6ITsArY7V4/BuqaBBQ=="],
|
|
2236
|
+
|
|
2237
|
+
"@wenathlan/saddle/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2238
|
+
|
|
2191
2239
|
"@wenathlan/saddle/commander": ["commander@15.0.0", "", {}, "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="],
|
|
2192
2240
|
|
|
2241
|
+
"@wenathlan/vault/@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
2242
|
+
|
|
2243
|
+
"@wenathlan/vault/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2244
|
+
|
|
2245
|
+
"@wenathlan/vault/@wenathlan/debonair": ["@wenathlan/debonair@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-o35lj5DbxAwhwyuSqb1egCKbvZplDt6LTT6COtBmfdzxH7nO9R0pFGrkCtmK8twgAJ7FMzpEY5pycvigH82EEA=="],
|
|
2246
|
+
|
|
2247
|
+
"@wenathlan/vault/@wenathlan/saddle": ["@wenathlan/saddle@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "optionalDependencies": { "commander": "^15.0.0", "dockerode": "^5.0.1", "express": "^5.3.0" }, "peerDependencies": { "playwright": "^1.63.0" }, "optionalPeers": ["playwright"], "bin": { "saddle": "cli.ts" } }, "sha512-8E0eHNXgtjhxXbm5WO8iB/llufdZhitX44vUwjqgAbjU6MHjpMFB1uHa1Zpy1raSIK6t6ITsArY7V4/BuqaBBQ=="],
|
|
2248
|
+
|
|
2249
|
+
"@wenathlan/vault/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2250
|
+
|
|
2193
2251
|
"c12/chokidar": ["chokidar@5.0.0", "", { "dependencies": { "readdirp": "5.1.1" } }, "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw=="],
|
|
2194
2252
|
|
|
2195
2253
|
"cliui/string-width": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="],
|
|
@@ -2284,6 +2342,68 @@
|
|
|
2284
2342
|
|
|
2285
2343
|
"@prisma/studio-core/@radix-ui/react-toggle/@radix-ui/react-use-controllable-state": ["@radix-ui/react-use-controllable-state@1.2.2", "", { "dependencies": { "@radix-ui/react-use-effect-event": "0.0.2", "@radix-ui/react-use-layout-effect": "1.1.1" }, "optionalDependencies": { "@types/react": "19.3.0" }, "peerDependencies": { "react": "19.3.0" } }, "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg=="],
|
|
2286
2344
|
|
|
2345
|
+
"@wenathlan/argan/@wenathlan/cadria/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2346
|
+
|
|
2347
|
+
"@wenathlan/argan/@wenathlan/debonair/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2348
|
+
|
|
2349
|
+
"@wenathlan/argan/@wenathlan/saddle/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2350
|
+
|
|
2351
|
+
"@wenathlan/argan/@wenathlan/saddle/commander": ["commander@15.0.0", "", {}, "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="],
|
|
2352
|
+
|
|
2353
|
+
"@wenathlan/argan/@wenathlan/vault/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2354
|
+
|
|
2355
|
+
"@wenathlan/cadria/@wenathlan/cadria/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2356
|
+
|
|
2357
|
+
"@wenathlan/cadria/@wenathlan/debonair/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2358
|
+
|
|
2359
|
+
"@wenathlan/cadria/@wenathlan/saddle/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2360
|
+
|
|
2361
|
+
"@wenathlan/cadria/@wenathlan/saddle/commander": ["commander@15.0.0", "", {}, "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="],
|
|
2362
|
+
|
|
2363
|
+
"@wenathlan/cadria/@wenathlan/vault/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2364
|
+
|
|
2365
|
+
"@wenathlan/debonair/@wenathlan/cadria/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2366
|
+
|
|
2367
|
+
"@wenathlan/debonair/@wenathlan/debonair/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2368
|
+
|
|
2369
|
+
"@wenathlan/debonair/@wenathlan/saddle/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2370
|
+
|
|
2371
|
+
"@wenathlan/debonair/@wenathlan/saddle/commander": ["commander@15.0.0", "", {}, "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="],
|
|
2372
|
+
|
|
2373
|
+
"@wenathlan/debonair/@wenathlan/vault/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2374
|
+
|
|
2375
|
+
"@wenathlan/devthink/@wenathlan/saddle/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2376
|
+
|
|
2377
|
+
"@wenathlan/devthink/@wenathlan/saddle/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2378
|
+
|
|
2379
|
+
"@wenathlan/devthink/@wenathlan/saddle/@wenathlan/debonair": ["@wenathlan/debonair@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-o35lj5DbxAwhwyuSqb1egCKbvZplDt6LTT6COtBmfdzxH7nO9R0pFGrkCtmK8twgAJ7FMzpEY5pycvigH82EEA=="],
|
|
2380
|
+
|
|
2381
|
+
"@wenathlan/devthink/@wenathlan/saddle/commander": ["commander@15.0.0", "", {}, "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="],
|
|
2382
|
+
|
|
2383
|
+
"@wenathlan/devthink/@wenathlan/vault/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2384
|
+
|
|
2385
|
+
"@wenathlan/devthink/@wenathlan/vault/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2386
|
+
|
|
2387
|
+
"@wenathlan/devthink/@wenathlan/vault/@wenathlan/debonair": ["@wenathlan/debonair@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-o35lj5DbxAwhwyuSqb1egCKbvZplDt6LTT6COtBmfdzxH7nO9R0pFGrkCtmK8twgAJ7FMzpEY5pycvigH82EEA=="],
|
|
2388
|
+
|
|
2389
|
+
"@wenathlan/saddle/@wenathlan/cadria/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2390
|
+
|
|
2391
|
+
"@wenathlan/saddle/@wenathlan/debonair/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2392
|
+
|
|
2393
|
+
"@wenathlan/saddle/@wenathlan/saddle/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2394
|
+
|
|
2395
|
+
"@wenathlan/saddle/@wenathlan/vault/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2396
|
+
|
|
2397
|
+
"@wenathlan/vault/@wenathlan/cadria/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2398
|
+
|
|
2399
|
+
"@wenathlan/vault/@wenathlan/debonair/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2400
|
+
|
|
2401
|
+
"@wenathlan/vault/@wenathlan/saddle/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2402
|
+
|
|
2403
|
+
"@wenathlan/vault/@wenathlan/saddle/commander": ["commander@15.0.0", "", {}, "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="],
|
|
2404
|
+
|
|
2405
|
+
"@wenathlan/vault/@wenathlan/vault/@hono/node-server": ["@hono/node-server@2.1.5", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q=="],
|
|
2406
|
+
|
|
2287
2407
|
"c12/chokidar/readdirp": ["readdirp@5.1.1", "", {}, "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA=="],
|
|
2288
2408
|
|
|
2289
2409
|
"cliui/string-width/is-fullwidth-code-point": ["is-fullwidth-code-point@3.0.0", "", {}, "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="],
|
package/cli.ts
ADDED
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* @file cli.ts — the cobaia binary seat of the clibin wave (PR13 — CLI
|
|
4
|
+
* binário mesmo design): the same Windows 11 chat console as the web and
|
|
5
|
+
* desktop surfaces, rendered inside the terminal as a subapp — the only
|
|
6
|
+
* difference is responsiveness / DPI (the 28px top rule becomes one line
|
|
7
|
+
* and the accent falls back to the ANSI 256 palette).
|
|
8
|
+
* @module cobaia/cli
|
|
9
|
+
* @family wave/clibin
|
|
10
|
+
* @law same design as web / desktop, difference only responsiveness / DPI
|
|
11
|
+
* @seat 2026 · rung 2.0.157 · hierarchical JSDoc, tokens/flags, no hardcoded
|
|
12
|
+
* data — the version is read from package.json at runtime and the engine
|
|
13
|
+
* one-liner is quoted from the app docs.
|
|
14
|
+
* @runtime node strips the types; the shebang hands the file to the runtime
|
|
15
|
+
* (the saddle law).
|
|
16
|
+
* @deps zero — node builtins only (readline/promises, process, fs/promises).
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import { createInterface } from "node:readline/promises";
|
|
20
|
+
import { argv, exit, stdin, stdout } from "node:process";
|
|
21
|
+
import { readFile } from "node:fs/promises";
|
|
22
|
+
|
|
23
|
+
/* ════════════════════════════════════════════════════════════════════ */
|
|
24
|
+
/* Section 1: the chrome tokens — the windows 11 palette folded to the DPI of the terminal (the accent #a3d7e6 lands on ansi 117, the focus #4cc2ff on 75, the hover red rgb(232,17,35) on 203; the 28px top rule becomes one line). */
|
|
25
|
+
/* ════════════════════════════════════════════════════════════════════ */
|
|
26
|
+
|
|
27
|
+
/** the chat accent of the prompt and the titlebar name. */
|
|
28
|
+
const ACCENT = "\x1b[38;5;117m" as const; // #a3d7e6
|
|
29
|
+
/** the focus ink of the active top rule. */
|
|
30
|
+
const FOCUS = "\x1b[38;5;75m" as const; // #4cc2ff
|
|
31
|
+
/** the hover red of the unknown-command rows. */
|
|
32
|
+
const HOVER = "\x1b[38;5;203m" as const; // rgb(232, 17, 35)
|
|
33
|
+
/** the dim ink of the description rows (the minimal text law). */
|
|
34
|
+
const INK = "\x1b[2m" as const;
|
|
35
|
+
/** the reset token that closes every colored run. */
|
|
36
|
+
const RESET = "\x1b[0m" as const;
|
|
37
|
+
/** the single glyph of the rules and the rails. */
|
|
38
|
+
const BAR = "─" as const;
|
|
39
|
+
|
|
40
|
+
/** the app name of this binary seat — the titlebar text. */
|
|
41
|
+
const APP = "cobaia" as const;
|
|
42
|
+
/** the engine ownership one-liner, quoted from the app docs. */
|
|
43
|
+
const ENGINE =
|
|
44
|
+
"owns no engine file — the content site is the monetization surface: static plans, support rails and honest ad slots, no backend no tracking (docs/features.md)" as const;
|
|
45
|
+
|
|
46
|
+
/** the titlebar bar: the app name on the left rail, the window controls on the right — the windows 11 chrome inside the terminal. */
|
|
47
|
+
function titlebar(): string {
|
|
48
|
+
return `${ACCENT}┌ ${APP} ─ cli${RESET} ${INK}${BAR.repeat(24)} ─ ❐ ✕${RESET}`;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/** the top rule: the 28px divider of the web surface folded to one terminal line. */
|
|
52
|
+
function toprule(): string {
|
|
53
|
+
return `${FOCUS}${BAR.repeat(3)} ${APP} ${BAR.repeat(3)}${RESET}`;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/* ════════════════════════════════════════════════════════════════════ */
|
|
57
|
+
/* Section 2: the runtime reads — no hardcoded data; the version comes from package.json at runtime. */
|
|
58
|
+
/* ════════════════════════════════════════════════════════════════════ */
|
|
59
|
+
|
|
60
|
+
/** reads the version of this seat from the sibling package.json — never a literal. */
|
|
61
|
+
async function readversion(): Promise<string> {
|
|
62
|
+
try {
|
|
63
|
+
const manifest = JSON.parse(await readFile(new URL("./package.json", import.meta.url), "utf8")) as { version?: string };
|
|
64
|
+
return manifest.version ?? "0.0.0";
|
|
65
|
+
} catch {
|
|
66
|
+
return "0.0.0";
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/* ════════════════════════════════════════════════════════════════════ */
|
|
71
|
+
/* Section 3: the chat console — the REPL with the ❯ prompt, the command dispatch and the same chat look as the web surface. */
|
|
72
|
+
/* ════════════════════════════════════════════════════════════════════ */
|
|
73
|
+
|
|
74
|
+
/** the command help of the console — minimal text law: title + description only. */
|
|
75
|
+
function help(): string[] {
|
|
76
|
+
return [
|
|
77
|
+
`${INK}commands${RESET}`,
|
|
78
|
+
` help ${INK}this list${RESET}`,
|
|
79
|
+
` version ${INK}the package version, read from package.json at runtime${RESET}`,
|
|
80
|
+
` engine ${INK}the engine ownership one-liner of the app${RESET}`,
|
|
81
|
+
` exit ${INK}close the console${RESET}`,
|
|
82
|
+
];
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/** runs the chat console: the titlebar, the top rule, the ❯ prompt and the dispatch (help, version, engine, exit); an eof on stdin closes the console the same way exit does. */
|
|
86
|
+
export async function main(): Promise<void> {
|
|
87
|
+
/* the version read happens before the interface exists, so a piped stdin never races the readline open (node buffers the pipe until the reader resumes it). */
|
|
88
|
+
const version = await readversion();
|
|
89
|
+
const rl = createInterface({ input: stdin, output: stdout });
|
|
90
|
+
let eof = false;
|
|
91
|
+
rl.on("close", () => { eof = true; });
|
|
92
|
+
console.log(titlebar());
|
|
93
|
+
console.log(toprule());
|
|
94
|
+
console.log(`${ACCENT}${APP}${RESET} ${INK}v${version}${RESET}`);
|
|
95
|
+
console.log(`${INK}the ${APP} console — same design as web / desktop, only the DPI differs. type help.${RESET}`);
|
|
96
|
+
rl.setPrompt(`${ACCENT}❯${RESET} `);
|
|
97
|
+
rl.prompt();
|
|
98
|
+
for await (const raw of rl) {
|
|
99
|
+
const line = raw.trim();
|
|
100
|
+
const command = line.length > 0 ? line.split(/\s+/)[0]!.toLowerCase() : "";
|
|
101
|
+
if (command === "exit") rl.close();
|
|
102
|
+
else if (command === "help") for (const row of help()) console.log(row);
|
|
103
|
+
else if (command === "version") console.log(`${ACCENT}${APP}${RESET} ${version}`);
|
|
104
|
+
else if (command === "engine") console.log(`${INK}${ENGINE}${RESET}`);
|
|
105
|
+
else if (command.length > 0) console.log(`${HOVER}✕${RESET} ${INK}unknown command: ${command} — type help${RESET}`);
|
|
106
|
+
if (command === "exit") break;
|
|
107
|
+
/* the prompt is cosmetic chrome: a piped stdin that already reached eof skips it, the buffered lines still answer. */
|
|
108
|
+
if (!eof) rl.prompt();
|
|
109
|
+
}
|
|
110
|
+
console.log(`${INK}${APP} console closed.${RESET}`);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/* the autorun guard (the saddle law): only a direct `node cli.ts` (or a bun run) boots the console here — an import stays quiet. */
|
|
114
|
+
if (import.meta.url === `file://${argv[1]}`) main().catch((error) => { console.error(error); exit(1); });
|