@wenathlan/cobaia 2.0.166 → 2.0.167
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/.dockerignore +1 -1
- package/App.tsx +2 -31
- package/Dockerfile +157 -3
- package/biome.jsonc +3 -3
- package/build.gradle.kts +1 -1
- package/bun.lock +386 -330
- package/cobaia.csproj +2 -2
- package/cobaia.gemspec +2 -2
- package/cobaia.java +1 -1
- package/docker-compose.yml +58 -0
- package/docker.config +74 -0
- package/keywords.txt +1 -0
- package/monetization.ts +248 -0
- package/nginx.conf +106 -0
- package/package.json +68 -67
- package/pnpm-workspace.yaml +60 -38
- package/pom.xml +2 -2
- package/routerbase.ts +1 -0
- package/sol/apps/apps.tsx +1 -1
- package/sol/blog/blog.tsx +1 -1
- package/sol/home/home.tsx +1 -1
- package/sol/pricing/pricing.tsx +1 -1
- package/sol/shell/Shell.tsx +1 -1
- package/sol/support/support.tsx +1 -1
- package/sol/wingets/IntroFooter.tsx +1 -1
- package/sol/wingets/IntroPlans.tsx +1 -1
- package/sol/wingets/ShellAdsslot.tsx +1 -1
- package/sol/wingets/index.ts +1 -1
- package/tauri.conf.json +1 -1
- package/{tests → test}/adsconfig.test.ts +2 -2
- package/{tests → test}/checkoutlinks.test.ts +2 -2
- package/{tests → test}/entryflow.test.ts +2 -2
- package/{tests → test}/familyurl.test.ts +1 -1
- package/{tests → test}/posts.test.ts +2 -2
- package/{tests → test}/sandboxmodality.test.ts +1 -1
- package/vitest.config.ts +1 -1
- package/adsconfig.ts +0 -59
- package/checkoutlinks.ts +0 -80
- package/posts.ts +0 -54
- package/roster.ts +0 -29
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wenathlan/cobaia",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.167",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "cobaia is the monetization surface of the wenathlan family: the content site that carries the plans, the support rails and the honest advertisement slots while the family apps stay clean; the name is provisional until the owner picks the official one",
|
|
6
|
+
"license": "GPL-3.0-only",
|
|
6
7
|
"scripts": {
|
|
7
8
|
"dev": "vite --host",
|
|
8
9
|
"build": "vite build",
|
|
@@ -13,11 +14,11 @@
|
|
|
13
14
|
"test": "vitest run"
|
|
14
15
|
},
|
|
15
16
|
"dependencies": {
|
|
16
|
-
"@ai-sdk/openai": "^4.0.
|
|
17
|
-
"@ai-sdk/openai-compatible": "^3.0.
|
|
17
|
+
"@ai-sdk/openai": "^4.0.110",
|
|
18
|
+
"@ai-sdk/openai-compatible": "^3.0.86",
|
|
18
19
|
"@ai-sdk/provider-utils": "^5.0.75",
|
|
19
20
|
"@anthropic-ai/sdk": "^1.6.0",
|
|
20
|
-
"@biomejs/biome": "^2.6.
|
|
21
|
+
"@biomejs/biome": "^2.6.6",
|
|
21
22
|
"@capacitor/android": "^8.6.0",
|
|
22
23
|
"@capacitor/cli": "^8.6.0",
|
|
23
24
|
"@capacitor/core": "^8.6.0",
|
|
@@ -69,31 +70,31 @@
|
|
|
69
70
|
"@radix-ui/react-toggle-group": "^1.2.1",
|
|
70
71
|
"@radix-ui/react-tooltip": "^1.4.1",
|
|
71
72
|
"@reactuses/core": "^6.6.1",
|
|
72
|
-
"@tailwindcss/postcss": "^4.3.
|
|
73
|
+
"@tailwindcss/postcss": "^4.3.5",
|
|
73
74
|
"@tailwindcss/typography": "^0.5.20",
|
|
74
|
-
"@tailwindcss/vite": "^4.3.
|
|
75
|
-
"@tanstack/react-query": "^5.
|
|
75
|
+
"@tailwindcss/vite": "^4.3.5",
|
|
76
|
+
"@tanstack/react-query": "^5.107.1",
|
|
76
77
|
"@tanstack/react-table": "^9.3.1",
|
|
77
78
|
"@tsconfig/node26": "^26.0.1",
|
|
78
79
|
"@types/babel__core": "^7.20.5",
|
|
79
80
|
"@types/better-sqlite3": "^9.6.0",
|
|
80
81
|
"@types/chrome": "^0.3.7",
|
|
81
82
|
"@types/express": "^5.0.6",
|
|
82
|
-
"@types/google.maps": "^3.66.
|
|
83
|
+
"@types/google.maps": "^3.66.10",
|
|
83
84
|
"@types/node": "^26.6.6",
|
|
84
85
|
"@types/react": "^19.3.0",
|
|
85
86
|
"@types/react-dom": "^19.3.0",
|
|
86
87
|
"@types/three": "^0.187.0",
|
|
87
88
|
"@vitejs/plugin-react": "^6.2.1",
|
|
88
|
-
"@wenathlan/argan": "~2.0.
|
|
89
|
-
"@wenathlan/cadria": "~2.0.
|
|
90
|
-
"@wenathlan/debonair": "~2.0.
|
|
91
|
-
"@wenathlan/devthink": "~2.0.
|
|
92
|
-
"@wenathlan/getry": "~2.0.
|
|
93
|
-
"@wenathlan/saddle": "~2.0.
|
|
94
|
-
"@wenathlan/vault": "~2.0.
|
|
89
|
+
"@wenathlan/argan": "~2.0.166",
|
|
90
|
+
"@wenathlan/cadria": "~2.0.166",
|
|
91
|
+
"@wenathlan/debonair": "~2.0.166",
|
|
92
|
+
"@wenathlan/devthink": "~2.0.166",
|
|
93
|
+
"@wenathlan/getry": "~2.0.166",
|
|
94
|
+
"@wenathlan/saddle": "~2.0.166",
|
|
95
|
+
"@wenathlan/vault": "~2.0.166",
|
|
95
96
|
"add": "^2.0.9",
|
|
96
|
-
"ai": "^7.0.
|
|
97
|
+
"ai": "^7.0.164",
|
|
97
98
|
"autoprefixer": "^10.6.2",
|
|
98
99
|
"axios": "^1.21.0",
|
|
99
100
|
"baseline-browser-mapping": "^2.11.35",
|
|
@@ -119,7 +120,7 @@
|
|
|
119
120
|
"fast-check": "^4.10.2",
|
|
120
121
|
"fast-uri": "^4.2.3",
|
|
121
122
|
"follow-redirects": "^1.16.2",
|
|
122
|
-
"framer-motion": "^14.
|
|
123
|
+
"framer-motion": "^14.10.1",
|
|
123
124
|
"glob": "^14.0.4",
|
|
124
125
|
"gsap": "^3.15.1",
|
|
125
126
|
"hono": "^4.13.16",
|
|
@@ -128,16 +129,16 @@
|
|
|
128
129
|
"js-yaml": "^5.5.0",
|
|
129
130
|
"jsdom": "^31.0.0",
|
|
130
131
|
"katex": "^0.19.1",
|
|
131
|
-
"lucide-react": "^1.
|
|
132
|
+
"lucide-react": "^1.70.0",
|
|
132
133
|
"minimatch": "^11.0.5",
|
|
133
|
-
"motion": "^14.
|
|
134
|
+
"motion": "^14.10.1",
|
|
134
135
|
"mysql2": "^3.24.6",
|
|
135
136
|
"nanoid": "^6.0.2",
|
|
136
137
|
"next": "^16.4.5",
|
|
137
138
|
"next-auth": "^4.24.15",
|
|
138
139
|
"next-intl": "^4.14.9",
|
|
139
140
|
"next-themes": "^0.4.6",
|
|
140
|
-
"openai": "^7.
|
|
141
|
+
"openai": "^7.53.0",
|
|
141
142
|
"p-limit": "^7.3.3",
|
|
142
143
|
"p-retry": "^9.0.0",
|
|
143
144
|
"playwright": "^1.65.0",
|
|
@@ -153,7 +154,7 @@
|
|
|
153
154
|
"react-dom": "^19.3.1",
|
|
154
155
|
"react-hook-form": "^7.91.0",
|
|
155
156
|
"react-markdown": "^10.1.0",
|
|
156
|
-
"react-resizable-panels": "^4.
|
|
157
|
+
"react-resizable-panels": "^4.19.1",
|
|
157
158
|
"react-syntax-highlighter": "^16.1.2",
|
|
158
159
|
"recharts": "^3.10.1",
|
|
159
160
|
"request-ip": "^3.3.0",
|
|
@@ -164,7 +165,7 @@
|
|
|
164
165
|
"source-map-js": "^1.2.2",
|
|
165
166
|
"streamdown": "^2.7.1",
|
|
166
167
|
"tailwind-merge": "^3.7.0",
|
|
167
|
-
"tailwindcss": "^4.3.
|
|
168
|
+
"tailwindcss": "^4.3.5",
|
|
168
169
|
"tailwindcss-animate": "^1.0.7",
|
|
169
170
|
"three": "^0.187.0",
|
|
170
171
|
"ts-node": "^10.9.2",
|
|
@@ -184,14 +185,14 @@
|
|
|
184
185
|
"yaml": "^2.9.1",
|
|
185
186
|
"z-ai-web-dev-sdk": "^0.0.18",
|
|
186
187
|
"zod": "^4.6.7",
|
|
187
|
-
"zustand": "^5.0
|
|
188
|
+
"zustand": "^5.1.0"
|
|
188
189
|
},
|
|
189
190
|
"devDependencies": {
|
|
190
|
-
"@ai-sdk/openai": "^4.0.
|
|
191
|
-
"@ai-sdk/openai-compatible": "^3.0.
|
|
191
|
+
"@ai-sdk/openai": "^4.0.110",
|
|
192
|
+
"@ai-sdk/openai-compatible": "^3.0.86",
|
|
192
193
|
"@ai-sdk/provider-utils": "^5.0.75",
|
|
193
194
|
"@anthropic-ai/sdk": "^1.6.0",
|
|
194
|
-
"@biomejs/biome": "^2.6.
|
|
195
|
+
"@biomejs/biome": "^2.6.6",
|
|
195
196
|
"@capacitor/android": "^8.6.0",
|
|
196
197
|
"@capacitor/cli": "^8.6.0",
|
|
197
198
|
"@capacitor/core": "^8.6.0",
|
|
@@ -243,31 +244,31 @@
|
|
|
243
244
|
"@radix-ui/react-toggle-group": "^1.2.1",
|
|
244
245
|
"@radix-ui/react-tooltip": "^1.4.1",
|
|
245
246
|
"@reactuses/core": "^6.6.1",
|
|
246
|
-
"@tailwindcss/postcss": "^4.3.
|
|
247
|
+
"@tailwindcss/postcss": "^4.3.5",
|
|
247
248
|
"@tailwindcss/typography": "^0.5.20",
|
|
248
|
-
"@tailwindcss/vite": "^4.3.
|
|
249
|
-
"@tanstack/react-query": "^5.
|
|
249
|
+
"@tailwindcss/vite": "^4.3.5",
|
|
250
|
+
"@tanstack/react-query": "^5.107.1",
|
|
250
251
|
"@tanstack/react-table": "^9.3.1",
|
|
251
252
|
"@tsconfig/node26": "^26.0.1",
|
|
252
253
|
"@types/babel__core": "^7.20.5",
|
|
253
254
|
"@types/better-sqlite3": "^9.6.0",
|
|
254
255
|
"@types/chrome": "^0.3.7",
|
|
255
256
|
"@types/express": "^5.0.6",
|
|
256
|
-
"@types/google.maps": "^3.66.
|
|
257
|
+
"@types/google.maps": "^3.66.10",
|
|
257
258
|
"@types/node": "^26.6.6",
|
|
258
259
|
"@types/react": "^19.3.0",
|
|
259
260
|
"@types/react-dom": "^19.3.0",
|
|
260
261
|
"@types/three": "^0.187.0",
|
|
261
262
|
"@vitejs/plugin-react": "^6.2.1",
|
|
262
|
-
"@wenathlan/argan": "~2.0.
|
|
263
|
-
"@wenathlan/cadria": "~2.0.
|
|
264
|
-
"@wenathlan/debonair": "~2.0.
|
|
265
|
-
"@wenathlan/devthink": "~2.0.
|
|
266
|
-
"@wenathlan/getry": "~2.0.
|
|
267
|
-
"@wenathlan/saddle": "~2.0.
|
|
268
|
-
"@wenathlan/vault": "~2.0.
|
|
263
|
+
"@wenathlan/argan": "~2.0.166",
|
|
264
|
+
"@wenathlan/cadria": "~2.0.166",
|
|
265
|
+
"@wenathlan/debonair": "~2.0.166",
|
|
266
|
+
"@wenathlan/devthink": "~2.0.166",
|
|
267
|
+
"@wenathlan/getry": "~2.0.166",
|
|
268
|
+
"@wenathlan/saddle": "~2.0.166",
|
|
269
|
+
"@wenathlan/vault": "~2.0.166",
|
|
269
270
|
"add": "^2.0.9",
|
|
270
|
-
"ai": "^7.0.
|
|
271
|
+
"ai": "^7.0.164",
|
|
271
272
|
"autoprefixer": "^10.6.2",
|
|
272
273
|
"axios": "^1.21.0",
|
|
273
274
|
"baseline-browser-mapping": "^2.11.35",
|
|
@@ -293,7 +294,7 @@
|
|
|
293
294
|
"fast-check": "^4.10.2",
|
|
294
295
|
"fast-uri": "^4.2.3",
|
|
295
296
|
"follow-redirects": "^1.16.2",
|
|
296
|
-
"framer-motion": "^14.
|
|
297
|
+
"framer-motion": "^14.10.1",
|
|
297
298
|
"glob": "^14.0.4",
|
|
298
299
|
"gsap": "^3.15.1",
|
|
299
300
|
"hono": "^4.13.16",
|
|
@@ -302,16 +303,16 @@
|
|
|
302
303
|
"js-yaml": "^5.5.0",
|
|
303
304
|
"jsdom": "^31.0.0",
|
|
304
305
|
"katex": "^0.19.1",
|
|
305
|
-
"lucide-react": "^1.
|
|
306
|
+
"lucide-react": "^1.70.0",
|
|
306
307
|
"minimatch": "^11.0.5",
|
|
307
|
-
"motion": "^14.
|
|
308
|
+
"motion": "^14.10.1",
|
|
308
309
|
"mysql2": "^3.24.6",
|
|
309
310
|
"nanoid": "^6.0.2",
|
|
310
311
|
"next": "^16.4.5",
|
|
311
312
|
"next-auth": "^4.24.15",
|
|
312
313
|
"next-intl": "^4.14.9",
|
|
313
314
|
"next-themes": "^0.4.6",
|
|
314
|
-
"openai": "^7.
|
|
315
|
+
"openai": "^7.53.0",
|
|
315
316
|
"p-limit": "^7.3.3",
|
|
316
317
|
"p-retry": "^9.0.0",
|
|
317
318
|
"playwright": "^1.65.0",
|
|
@@ -327,7 +328,7 @@
|
|
|
327
328
|
"react-dom": "^19.3.1",
|
|
328
329
|
"react-hook-form": "^7.91.0",
|
|
329
330
|
"react-markdown": "^10.1.0",
|
|
330
|
-
"react-resizable-panels": "^4.
|
|
331
|
+
"react-resizable-panels": "^4.19.1",
|
|
331
332
|
"react-syntax-highlighter": "^16.1.2",
|
|
332
333
|
"recharts": "^3.10.1",
|
|
333
334
|
"request-ip": "^3.3.0",
|
|
@@ -338,7 +339,7 @@
|
|
|
338
339
|
"source-map-js": "^1.2.2",
|
|
339
340
|
"streamdown": "^2.7.1",
|
|
340
341
|
"tailwind-merge": "^3.7.0",
|
|
341
|
-
"tailwindcss": "^4.3.
|
|
342
|
+
"tailwindcss": "^4.3.5",
|
|
342
343
|
"tailwindcss-animate": "^1.0.7",
|
|
343
344
|
"three": "^0.187.0",
|
|
344
345
|
"ts-node": "^10.9.2",
|
|
@@ -358,14 +359,14 @@
|
|
|
358
359
|
"yaml": "^2.9.1",
|
|
359
360
|
"z-ai-web-dev-sdk": "^0.0.18",
|
|
360
361
|
"zod": "^4.6.7",
|
|
361
|
-
"zustand": "^5.0
|
|
362
|
+
"zustand": "^5.1.0"
|
|
362
363
|
},
|
|
363
364
|
"overrides": {
|
|
364
|
-
"@ai-sdk/openai": "^4.0.
|
|
365
|
-
"@ai-sdk/openai-compatible": "^3.0.
|
|
365
|
+
"@ai-sdk/openai": "^4.0.110",
|
|
366
|
+
"@ai-sdk/openai-compatible": "^3.0.86",
|
|
366
367
|
"@ai-sdk/provider-utils": "^5.0.75",
|
|
367
368
|
"@anthropic-ai/sdk": "^1.6.0",
|
|
368
|
-
"@biomejs/biome": "^2.6.
|
|
369
|
+
"@biomejs/biome": "^2.6.6",
|
|
369
370
|
"@capacitor/android": "^8.6.0",
|
|
370
371
|
"@capacitor/cli": "^8.6.0",
|
|
371
372
|
"@capacitor/core": "^8.6.0",
|
|
@@ -417,31 +418,31 @@
|
|
|
417
418
|
"@radix-ui/react-toggle-group": "^1.2.1",
|
|
418
419
|
"@radix-ui/react-tooltip": "^1.4.1",
|
|
419
420
|
"@reactuses/core": "^6.6.1",
|
|
420
|
-
"@tailwindcss/postcss": "^4.3.
|
|
421
|
+
"@tailwindcss/postcss": "^4.3.5",
|
|
421
422
|
"@tailwindcss/typography": "^0.5.20",
|
|
422
|
-
"@tailwindcss/vite": "^4.3.
|
|
423
|
-
"@tanstack/react-query": "^5.
|
|
423
|
+
"@tailwindcss/vite": "^4.3.5",
|
|
424
|
+
"@tanstack/react-query": "^5.107.1",
|
|
424
425
|
"@tanstack/react-table": "^9.3.1",
|
|
425
426
|
"@tsconfig/node26": "^26.0.1",
|
|
426
427
|
"@types/babel__core": "^7.20.5",
|
|
427
428
|
"@types/better-sqlite3": "^9.6.0",
|
|
428
429
|
"@types/chrome": "^0.3.7",
|
|
429
430
|
"@types/express": "^5.0.6",
|
|
430
|
-
"@types/google.maps": "^3.66.
|
|
431
|
+
"@types/google.maps": "^3.66.10",
|
|
431
432
|
"@types/node": "^26.6.6",
|
|
432
433
|
"@types/react": "^19.3.0",
|
|
433
434
|
"@types/react-dom": "^19.3.0",
|
|
434
435
|
"@types/three": "^0.187.0",
|
|
435
436
|
"@vitejs/plugin-react": "^6.2.1",
|
|
436
|
-
"@wenathlan/argan": "~2.0.
|
|
437
|
-
"@wenathlan/cadria": "~2.0.
|
|
438
|
-
"@wenathlan/debonair": "~2.0.
|
|
439
|
-
"@wenathlan/devthink": "~2.0.
|
|
440
|
-
"@wenathlan/getry": "~2.0.
|
|
441
|
-
"@wenathlan/saddle": "~2.0.
|
|
442
|
-
"@wenathlan/vault": "~2.0.
|
|
437
|
+
"@wenathlan/argan": "~2.0.166",
|
|
438
|
+
"@wenathlan/cadria": "~2.0.166",
|
|
439
|
+
"@wenathlan/debonair": "~2.0.166",
|
|
440
|
+
"@wenathlan/devthink": "~2.0.166",
|
|
441
|
+
"@wenathlan/getry": "~2.0.166",
|
|
442
|
+
"@wenathlan/saddle": "~2.0.166",
|
|
443
|
+
"@wenathlan/vault": "~2.0.166",
|
|
443
444
|
"add": "^2.0.9",
|
|
444
|
-
"ai": "^7.0.
|
|
445
|
+
"ai": "^7.0.164",
|
|
445
446
|
"autoprefixer": "^10.6.2",
|
|
446
447
|
"axios": "^1.21.0",
|
|
447
448
|
"baseline-browser-mapping": "^2.11.35",
|
|
@@ -467,7 +468,7 @@
|
|
|
467
468
|
"fast-check": "^4.10.2",
|
|
468
469
|
"fast-uri": "^4.2.3",
|
|
469
470
|
"follow-redirects": "^1.16.2",
|
|
470
|
-
"framer-motion": "^14.
|
|
471
|
+
"framer-motion": "^14.10.1",
|
|
471
472
|
"glob": "^14.0.4",
|
|
472
473
|
"gsap": "^3.15.1",
|
|
473
474
|
"hono": "^4.13.16",
|
|
@@ -476,16 +477,16 @@
|
|
|
476
477
|
"js-yaml": "^5.5.0",
|
|
477
478
|
"jsdom": "^31.0.0",
|
|
478
479
|
"katex": "^0.19.1",
|
|
479
|
-
"lucide-react": "^1.
|
|
480
|
+
"lucide-react": "^1.70.0",
|
|
480
481
|
"minimatch": "^11.0.5",
|
|
481
|
-
"motion": "^14.
|
|
482
|
+
"motion": "^14.10.1",
|
|
482
483
|
"mysql2": "^3.24.6",
|
|
483
484
|
"nanoid": "^6.0.2",
|
|
484
485
|
"next": "^16.4.5",
|
|
485
486
|
"next-auth": "^4.24.15",
|
|
486
487
|
"next-intl": "^4.14.9",
|
|
487
488
|
"next-themes": "^0.4.6",
|
|
488
|
-
"openai": "^7.
|
|
489
|
+
"openai": "^7.53.0",
|
|
489
490
|
"p-limit": "^7.3.3",
|
|
490
491
|
"p-retry": "^9.0.0",
|
|
491
492
|
"playwright": "^1.65.0",
|
|
@@ -501,7 +502,7 @@
|
|
|
501
502
|
"react-dom": "^19.3.1",
|
|
502
503
|
"react-hook-form": "^7.91.0",
|
|
503
504
|
"react-markdown": "^10.1.0",
|
|
504
|
-
"react-resizable-panels": "^4.
|
|
505
|
+
"react-resizable-panels": "^4.19.1",
|
|
505
506
|
"react-syntax-highlighter": "^16.1.2",
|
|
506
507
|
"recharts": "^3.10.1",
|
|
507
508
|
"request-ip": "^3.3.0",
|
|
@@ -512,7 +513,7 @@
|
|
|
512
513
|
"source-map-js": "^1.2.2",
|
|
513
514
|
"streamdown": "^2.7.1",
|
|
514
515
|
"tailwind-merge": "^3.7.0",
|
|
515
|
-
"tailwindcss": "^4.3.
|
|
516
|
+
"tailwindcss": "^4.3.5",
|
|
516
517
|
"tailwindcss-animate": "^1.0.7",
|
|
517
518
|
"three": "^0.187.0",
|
|
518
519
|
"ts-node": "^10.9.2",
|
|
@@ -532,7 +533,7 @@
|
|
|
532
533
|
"yaml": "^2.9.1",
|
|
533
534
|
"z-ai-web-dev-sdk": "^0.0.18",
|
|
534
535
|
"zod": "^4.6.7",
|
|
535
|
-
"zustand": "^5.0
|
|
536
|
+
"zustand": "^5.1.0",
|
|
536
537
|
"xcode": {
|
|
537
538
|
"uuid": "11.1.1"
|
|
538
539
|
}
|
package/pnpm-workspace.yaml
CHANGED
|
@@ -29,57 +29,79 @@ minimumReleaseAgeExclude:
|
|
|
29
29
|
- fast-uri@3.1.9
|
|
30
30
|
- follow-redirects@1.16.1
|
|
31
31
|
- zod@4.6.6
|
|
32
|
-
- '@biomejs/biome@2.6.3 || 2.6.4 || 2.6.5'
|
|
33
|
-
- '@biomejs/cli-android-arm64@2.6.3 || 2.6.4 || 2.6.5'
|
|
34
|
-
- '@biomejs/cli-android-x64@2.6.3 || 2.6.4 || 2.6.5'
|
|
35
|
-
- '@biomejs/cli-darwin-arm64@2.6.3 || 2.6.4 || 2.6.5'
|
|
36
|
-
- '@biomejs/cli-darwin-x64@2.6.3 || 2.6.4 || 2.6.5'
|
|
37
|
-
- '@biomejs/cli-linux-arm64-musl@2.6.3 || 2.6.4 || 2.6.5'
|
|
38
|
-
- '@biomejs/cli-linux-arm64@2.6.3 || 2.6.4 || 2.6.5'
|
|
39
|
-
- '@biomejs/cli-linux-x64-musl@2.6.3 || 2.6.4 || 2.6.5'
|
|
40
|
-
- '@biomejs/cli-linux-x64@2.6.3 || 2.6.4 || 2.6.5'
|
|
41
|
-
- '@biomejs/cli-win32-arm64@2.6.3 || 2.6.4 || 2.6.5'
|
|
42
|
-
- '@biomejs/cli-win32-x64@2.6.3 || 2.6.4 || 2.6.5'
|
|
32
|
+
- '@biomejs/biome@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
33
|
+
- '@biomejs/cli-android-arm64@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
34
|
+
- '@biomejs/cli-android-x64@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
35
|
+
- '@biomejs/cli-darwin-arm64@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
36
|
+
- '@biomejs/cli-darwin-x64@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
37
|
+
- '@biomejs/cli-linux-arm64-musl@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
38
|
+
- '@biomejs/cli-linux-arm64@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
39
|
+
- '@biomejs/cli-linux-x64-musl@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
40
|
+
- '@biomejs/cli-linux-x64@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
41
|
+
- '@biomejs/cli-win32-arm64@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
42
|
+
- '@biomejs/cli-win32-x64@2.6.3 || 2.6.4 || 2.6.5 || 2.6.6'
|
|
43
43
|
- '@types/node@26.6.6'
|
|
44
44
|
- '@capacitor/android@8.6.0'
|
|
45
45
|
- '@capacitor/cli@8.6.0'
|
|
46
46
|
- '@capacitor/core@8.6.0'
|
|
47
47
|
- '@capacitor/ios@8.6.0'
|
|
48
48
|
- '@opencode-ai/sdk@1.19.5'
|
|
49
|
-
- react-resizable-panels@4.15.1 || 4.15.2 || 4.15.3 || 4.16.0 || 4.16.1 || 4.17.0 || 4.18.0 || 4.18.1
|
|
50
|
-
- '@types/google.maps@3.66.9'
|
|
51
|
-
- lucide-react@1.64.0 || 1.65.0 || 1.66.0 || 1.67.0 || 1.68.0
|
|
49
|
+
- react-resizable-panels@4.15.1 || 4.15.2 || 4.15.3 || 4.16.0 || 4.16.1 || 4.17.0 || 4.18.0 || 4.18.1 || 4.19.0 || 4.19.1
|
|
50
|
+
- '@types/google.maps@3.66.9 || 3.66.10'
|
|
51
|
+
- lucide-react@1.64.0 || 1.65.0 || 1.66.0 || 1.67.0 || 1.68.0 || 1.69.0 || 1.70.0
|
|
52
|
+
- playwright@1.65.0
|
|
53
|
+
- playwright-core@1.65.0
|
|
54
|
+
- '@anthropic-ai/sdk@1.6.0'
|
|
55
|
+
- '@hookform/resolvers@7.0.3'
|
|
56
|
+
- '@tanstack/query-core@5.106.1 || 5.107.1'
|
|
57
|
+
- '@tanstack/react-query@5.106.1 || 5.107.1'
|
|
58
|
+
- openai@7.52.0 || 7.53.0
|
|
59
|
+
- '@wenathlan/argan@2.0.155 || 2.0.165 || 2.0.166'
|
|
60
|
+
- '@wenathlan/cadria@2.0.154 || 2.0.155 || 2.0.156 || 2.0.165 || 2.0.166 || 2.1.8'
|
|
61
|
+
- '@wenathlan/debonair@2.0.154 || 2.0.155 || 2.0.156 || 2.0.165 || 2.0.166 || 2.1.8'
|
|
62
|
+
- '@wenathlan/devthink@2.0.154 || 2.0.155 || 2.0.156 || 2.0.165 || 2.0.166 || 2.1.7'
|
|
63
|
+
- '@wenathlan/getry@2.0.154 || 2.0.155 || 2.0.156 || 2.0.165 || 2.0.166'
|
|
64
|
+
- '@wenathlan/saddle@2.0.154 || 2.0.155 || 2.0.156 || 2.0.165 || 2.0.166 || 2.1.8'
|
|
65
|
+
- '@wenathlan/vault@2.0.152 || 2.0.153 || 2.0.154 || 2.0.155 || 2.0.156 || 2.0.165 || 2.0.166 || 2.1.8'
|
|
66
|
+
- jsdom@31.0.0
|
|
67
|
+
- pnpm@12.18.0
|
|
68
|
+
- "@pnpm/exe.linux-x64@12.18.0"
|
|
52
69
|
- '@fluentui/react-icons@2.0.345'
|
|
53
|
-
- '@wenathlan/vault@2.0.152 || 2.0.153 || 2.0.154 || 2.0.155 || 2.0.156 || 2.1.8'
|
|
54
70
|
- hono@4.13.16
|
|
55
|
-
- '@
|
|
56
|
-
- '@
|
|
57
|
-
- '@
|
|
58
|
-
- '@tailwindcss/
|
|
59
|
-
- '@tailwindcss/oxide-
|
|
60
|
-
- '@tailwindcss/oxide-
|
|
61
|
-
- '@tailwindcss/oxide-
|
|
62
|
-
- '@tailwindcss/oxide-
|
|
63
|
-
- '@tailwindcss/oxide-linux-
|
|
64
|
-
- '@tailwindcss/oxide-linux-
|
|
65
|
-
- '@tailwindcss/oxide-
|
|
66
|
-
- '@tailwindcss/oxide-
|
|
67
|
-
- '@tailwindcss/oxide-
|
|
68
|
-
- '@tailwindcss/oxide
|
|
69
|
-
- '@tailwindcss/
|
|
70
|
-
- '@tailwindcss/
|
|
71
|
-
- '@tailwindcss/oxide@4.3.4'
|
|
72
|
-
- '@tailwindcss/postcss@4.3.4'
|
|
73
|
-
- '@tailwindcss/vite@4.3.4'
|
|
71
|
+
- '@tailwindcss/node@4.3.4 || 4.3.5'
|
|
72
|
+
- '@tailwindcss/oxide-android-arm64@4.3.4 || 4.3.5'
|
|
73
|
+
- '@tailwindcss/oxide-darwin-arm64@4.3.4 || 4.3.5'
|
|
74
|
+
- '@tailwindcss/oxide-darwin-x64@4.3.4 || 4.3.5'
|
|
75
|
+
- '@tailwindcss/oxide-freebsd-x64@4.3.4 || 4.3.5'
|
|
76
|
+
- '@tailwindcss/oxide-linux-arm-gnueabihf@4.3.4 || 4.3.5'
|
|
77
|
+
- '@tailwindcss/oxide-linux-arm64-gnu@4.3.4 || 4.3.5'
|
|
78
|
+
- '@tailwindcss/oxide-linux-arm64-musl@4.3.4 || 4.3.5'
|
|
79
|
+
- '@tailwindcss/oxide-linux-x64-gnu@4.3.4 || 4.3.5'
|
|
80
|
+
- '@tailwindcss/oxide-linux-x64-musl@4.3.4 || 4.3.5'
|
|
81
|
+
- '@tailwindcss/oxide-wasm32-wasi@4.3.4 || 4.3.5'
|
|
82
|
+
- '@tailwindcss/oxide-win32-arm64-msvc@4.3.4 || 4.3.5'
|
|
83
|
+
- '@tailwindcss/oxide-win32-x64-msvc@4.3.4 || 4.3.5'
|
|
84
|
+
- '@tailwindcss/oxide@4.3.4 || 4.3.5'
|
|
85
|
+
- '@tailwindcss/postcss@4.3.4 || 4.3.5'
|
|
86
|
+
- '@tailwindcss/vite@4.3.4 || 4.3.5'
|
|
74
87
|
- '@vitejs/plugin-react@6.2.1'
|
|
75
88
|
- '@vitest/mocker@5.1.0'
|
|
76
89
|
- '@vitest/spy@5.1.0'
|
|
77
|
-
- tailwindcss@4.3.4
|
|
90
|
+
- tailwindcss@4.3.4 || 4.3.5
|
|
78
91
|
- vitest@5.1.0
|
|
79
|
-
- '@wenathlan/saddle@2.0.154 || 2.0.155 || 2.0.156 || 2.1.8'
|
|
80
|
-
- '@wenathlan/devthink@2.0.154 || 2.0.155 || 2.0.156 || 2.1.7'
|
|
81
|
-
- '@wenathlan/argan@2.0.155'
|
|
82
92
|
- gsap@3.15.1
|
|
93
|
+
- '@wenathlan/cobaia@2.0.166'
|
|
94
|
+
- '@wenathlan/forge@2.0.166'
|
|
95
|
+
- '@wenathlan/foundry@2.0.166'
|
|
96
|
+
- '@wenathlan/stealthhead@2.0.166'
|
|
97
|
+
- framer-motion@14.10.1
|
|
98
|
+
- motion-dom@14.10.1
|
|
99
|
+
- motion@14.10.1
|
|
100
|
+
- zustand@5.1.0
|
|
101
|
+
- '@ai-sdk/gateway@4.0.137'
|
|
102
|
+
- '@ai-sdk/openai-compatible@3.0.86'
|
|
103
|
+
- '@ai-sdk/openai@4.0.110'
|
|
104
|
+
- ai@7.0.164
|
|
83
105
|
# the pnpm settings live here since pnpm 12 (the package.json pnpm field is
|
|
84
106
|
# no longer read, and onlyBuiltDependencies died in pnpm 11 — the map below
|
|
85
107
|
# is allowBuilds). THE 2.0.155 BUILDS GATE HEAL: the four-entry map froze
|
package/pom.xml
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
<scm><url>https://github.com/wenathlan/devthink</url><connection>scm:git:https://github.com/wenathlan/devthink.git</connection></scm>
|
|
13
13
|
<distributionManagement><repository><id>github</id><name>GitHub Packages</name><url>https://maven.pkg.github.com/wenathlan/devthink</url></repository></distributionManagement>
|
|
14
14
|
<properties>
|
|
15
|
-
<revision>2.0.
|
|
15
|
+
<revision>2.0.167</revision>
|
|
16
16
|
</properties>
|
|
17
17
|
<build>
|
|
18
18
|
<resources>
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
<includes>
|
|
22
22
|
<include>README.md</include>
|
|
23
23
|
<include>docs/**</include>
|
|
24
|
-
<include>
|
|
24
|
+
<include>test/**</include>
|
|
25
25
|
</includes>
|
|
26
26
|
</resource>
|
|
27
27
|
</resources>
|
package/routerbase.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { routerBase } from "../devthink/routerbase.ts";
|
package/sol/apps/apps.tsx
CHANGED
|
@@ -16,7 +16,7 @@ import type { CSSProperties } from "react";
|
|
|
16
16
|
import { useContent } from "../../content.ts";
|
|
17
17
|
import { familyurl } from "../../familyurl";
|
|
18
18
|
import { label, labelfill } from "../../labels";
|
|
19
|
-
import { roster } from "../../
|
|
19
|
+
import { roster } from "../../monetization.ts";
|
|
20
20
|
import { AdSlot } from "../wingets";
|
|
21
21
|
|
|
22
22
|
export function Apps() {
|
package/sol/blog/blog.tsx
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
import type { CSSProperties } from "react";
|
|
17
17
|
import { useContent } from "../../content.ts";
|
|
18
18
|
import { label, labelfill } from "../../labels";
|
|
19
|
-
import { type blogpost, postindex, postwords } from "../../
|
|
19
|
+
import { type blogpost, postindex, postwords } from "../../monetization";
|
|
20
20
|
import { AdSlot } from "../wingets";
|
|
21
21
|
|
|
22
22
|
/** the meta line of one post: the date and the honest word count. */
|
package/sol/home/home.tsx
CHANGED
|
@@ -21,7 +21,7 @@ import { Link } from "wouter";
|
|
|
21
21
|
import { useContent } from "../../content.ts";
|
|
22
22
|
import { familyurl } from "../../familyurl";
|
|
23
23
|
import { type LabelKey, label, labelfill } from "../../labels";
|
|
24
|
-
import { roster } from "../../
|
|
24
|
+
import { roster } from "../../monetization.ts";
|
|
25
25
|
import { AdSlot, BrandMark, EntryGate } from "../wingets";
|
|
26
26
|
|
|
27
27
|
/** the featured deploy units of the landing preview (the full directory
|
package/sol/pricing/pricing.tsx
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* are plain hrefs the visitor chooses to follow.
|
|
17
17
|
*/
|
|
18
18
|
import type { CSSProperties } from "react";
|
|
19
|
-
import { checkoutlinks, type checkoutplan, isconfigured } from "../../
|
|
19
|
+
import { checkoutlinks, type checkoutplan, isconfigured } from "../../monetization";
|
|
20
20
|
import { useContent } from "../../content.ts";
|
|
21
21
|
import { label, labelfill } from "../../labels";
|
|
22
22
|
|
package/sol/shell/Shell.tsx
CHANGED
|
@@ -26,7 +26,7 @@ import { Link, useLocation } from "wouter";
|
|
|
26
26
|
import { useContent } from "../../content.ts";
|
|
27
27
|
import { familyurl } from "../../familyurl";
|
|
28
28
|
import { type LabelKey, label } from "../../labels";
|
|
29
|
-
import { roster } from "../../
|
|
29
|
+
import { roster } from "../../monetization.ts";
|
|
30
30
|
import { BrandMark } from "../wingets";
|
|
31
31
|
|
|
32
32
|
/** the section links of the top bar, in reading order (home is the mark).
|
package/sol/support/support.tsx
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* nothing that asks for support ever sits beside an advertisement.
|
|
14
14
|
*/
|
|
15
15
|
import type { CSSProperties } from "react";
|
|
16
|
-
import { isconfigured, supportlinks } from "../../
|
|
16
|
+
import { isconfigured, supportlinks } from "../../monetization";
|
|
17
17
|
import { useContent } from "../../content.ts";
|
|
18
18
|
import { label } from "../../labels";
|
|
19
19
|
|
|
@@ -13,7 +13,7 @@ import type { CSSProperties } from "react";
|
|
|
13
13
|
import { useContent } from "../../content.ts";
|
|
14
14
|
import { familyurl } from "../../familyurl";
|
|
15
15
|
import { type LabelKey, label } from "../../labels";
|
|
16
|
-
import { roster } from "../../
|
|
16
|
+
import { roster } from "../../monetization.ts";
|
|
17
17
|
|
|
18
18
|
/** the site doors of the footer row, in reading order (the labels ride the
|
|
19
19
|
* shell foot keys — the same words the chrome's footer carries). */
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
|
|
16
16
|
import type { CSSProperties } from "react";
|
|
17
17
|
import { Link } from "wouter";
|
|
18
|
-
import { checkoutlinks, type checkoutplan, isconfigured } from "../../
|
|
18
|
+
import { checkoutlinks, type checkoutplan, isconfigured } from "../../monetization";
|
|
19
19
|
import { useContent } from "../../content.ts";
|
|
20
20
|
import { label, labelfill } from "../../labels";
|
|
21
21
|
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* automated traffic ever touches an ad surface.
|
|
16
16
|
*/
|
|
17
17
|
import type { CSSProperties } from "react";
|
|
18
|
-
import { ADS_EMPTY, ADS_LABEL, adsslotfor, adsslotlive } from "../../
|
|
18
|
+
import { ADS_EMPTY, ADS_LABEL, adsslotfor, adsslotlive } from "../../monetization.ts";
|
|
19
19
|
import { labelfill } from "../../labels";
|
|
20
20
|
|
|
21
21
|
type AdSlotProps = {
|
package/sol/wingets/index.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* lives exactly once (here) instead of repeating across every page —
|
|
6
6
|
* the components stay complete independent files beside this surface.
|
|
7
7
|
*/
|
|
8
|
-
export
|
|
8
|
+
export { type familymember, roster } from "../../monetization.ts";
|
|
9
9
|
export * from "./HomeEntrygate.tsx";
|
|
10
10
|
export { default as EntryGate } from "./HomeEntrygate.tsx";
|
|
11
11
|
export * from "./IntroFooter.tsx";
|
package/tauri.conf.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// # adsconfig.test — the honest ad slot registry of the family site.
|
|
2
|
-
// Run: pnpm vitest run
|
|
2
|
+
// Run: pnpm vitest run test/adsconfig.test.ts
|
|
3
3
|
// The suite watches the promise the ad slot makes: one reserved slot per
|
|
4
4
|
// content page (home, apps, blog), every slot id shipping EMPTY (no ad
|
|
5
5
|
// network script, no id, no key is ever committed — the loader enters after
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// aspect-ratio shapes the containers reserve so the page never shifts.
|
|
8
8
|
import assert from "node:assert/strict";
|
|
9
9
|
import { describe, expect, it } from "vitest";
|
|
10
|
-
import { ADS_EMPTY, ADS_LABEL, ADSSLOTS, adsslotfor, adsslotlive } from "../
|
|
10
|
+
import { ADS_EMPTY, ADS_LABEL, ADSSLOTS, adsslotfor, adsslotlive } from "../monetization.ts";
|
|
11
11
|
|
|
12
12
|
describe("the ad slot registry", () => {
|
|
13
13
|
it("reserves one slot per content page and nothing else", () => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// # checkoutlinks.test — the billing configuration of the family site.
|
|
2
|
-
// Run: pnpm vitest run
|
|
2
|
+
// Run: pnpm vitest run test/checkoutlinks.test.ts
|
|
3
3
|
// The suite watches the promise the pricing page makes: the three plans
|
|
4
4
|
// exist with the placeholder prices (US$0 / 5 / 19 a month), every checkout
|
|
5
5
|
// href ships EMPTY so the interface renders the honest empty state instead
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
// the billing table cites, so a card never renders a bare key.
|
|
11
11
|
import assert from "node:assert/strict";
|
|
12
12
|
import { describe, expect, it } from "vitest";
|
|
13
|
-
import { checkoutlinks, isconfigured, planbyid, supportlinks } from "../
|
|
13
|
+
import { checkoutlinks, isconfigured, planbyid, supportlinks } from "../monetization.ts";
|
|
14
14
|
import { LABEL_MANIFEST } from "../labels.ts";
|
|
15
15
|
|
|
16
16
|
describe("checkout links", () => {
|