@vibes.diy/api-svc 2.0.9 → 2.2.0

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.
Files changed (44) hide show
  1. package/cf-serve.d.ts +5 -0
  2. package/cf-serve.js +31 -0
  3. package/cf-serve.js.map +1 -1
  4. package/create-handler.d.ts +7 -0
  5. package/create-handler.js +3 -0
  6. package/create-handler.js.map +1 -1
  7. package/intern/components/vibe-page.js +11 -2
  8. package/intern/components/vibe-page.js.map +1 -1
  9. package/intern/render-db-explorer.d.ts +8 -1
  10. package/intern/render-db-explorer.js +2 -1
  11. package/intern/render-db-explorer.js.map +1 -1
  12. package/intern/render-vibe.js +17 -6
  13. package/intern/render-vibe.js.map +1 -1
  14. package/intern/resend-prev-msg.js +0 -1
  15. package/intern/resend-prev-msg.js.map +1 -1
  16. package/intern/write-apps.js +0 -1
  17. package/intern/write-apps.js.map +1 -1
  18. package/models.json +165 -37
  19. package/npm-package-version.js +0 -2
  20. package/npm-package-version.js.map +1 -1
  21. package/package.json +10 -10
  22. package/public/app-documents.d.ts +2 -1
  23. package/public/app-documents.js +54 -35
  24. package/public/app-documents.js.map +1 -1
  25. package/public/ensure-app-settings.js +1 -1
  26. package/public/ensure-app-settings.js.map +1 -1
  27. package/public/get-app-by-fsid.js +0 -10
  28. package/public/get-app-by-fsid.js.map +1 -1
  29. package/public/list-models.d.ts +1 -0
  30. package/public/list-models.js +1 -6
  31. package/public/list-models.js.map +1 -1
  32. package/public/prompt-chat-section.js +56 -8
  33. package/public/prompt-chat-section.js.map +1 -1
  34. package/public/serv-entry-point.js +29 -1
  35. package/public/serv-entry-point.js.map +1 -1
  36. package/types.d.ts +7 -0
  37. package/types.js.map +1 -1
  38. package/usage-report/inspect-db-report-template.d.ts +12 -0
  39. package/usage-report/inspect-db-report-template.js +25 -1
  40. package/usage-report/inspect-db-report-template.js.map +1 -1
  41. package/usage-report/inspect-db-report.js +23 -0
  42. package/usage-report/inspect-db-report.js.map +1 -1
  43. package/vibes-msg-evento.js +2 -2
  44. package/vibes-msg-evento.js.map +1 -1
package/models.json CHANGED
@@ -4,189 +4,317 @@
4
4
  "name": "Claude Opus 4.6 Fast",
5
5
  "description": "Claude Opus 4.6 Fast is Anthropic's most capable model with faster output, ideal for complex coding and creative tasks",
6
6
  "featured": true,
7
- "preSelected": ["app"]
7
+ "preSelected": ["app"],
8
+ "supports": ["chat", "app"]
8
9
  },
9
10
  {
10
11
  "id": "anthropic/claude-opus-4.5",
11
12
  "name": "Claude Opus 4.5",
12
13
  "description": "Claude Opus 4.5 is Anthropic's most powerful model, offering the best performance for complex reasoning, coding, and creative tasks",
13
- "featured": true
14
+ "featured": true,
15
+ "supports": ["chat", "app"]
14
16
  },
15
17
  {
16
18
  "id": "anthropic/claude-sonnet-4.6",
17
19
  "name": "Claude Sonnet 4.6",
18
20
  "description": "Claude Sonnet 4.6 is Anthropic's most advanced Sonnet model to date, optimized for real-world agents and coding workflows",
19
21
  "featured": true,
20
- "preSelected": ["chat"]
22
+ "preSelected": ["chat"],
23
+ "supports": ["chat", "app"]
21
24
  },
22
25
  {
23
26
  "id": "x-ai/grok-4-fast",
24
27
  "name": "Grok 4 Fast (free)",
25
28
  "description": "Grok 4 Fast is xAI's latest multimodal model with SOTA cost-efficiency and a 2M token context window",
26
- "featured": true
29
+ "featured": true,
30
+ "supports": ["chat", "app"]
27
31
  },
28
32
  {
29
- "id": "google/gemini-3-pro-preview",
30
- "name": "Gemini 3 Pro",
31
- "description": "Gemini 3 Pro is Google's state-of-the-art AI model designed for advanced reasoning, coding, mathematics, and scientific tasks",
32
- "featured": true
33
+ "id": "google/gemini-3.1-pro-preview",
34
+ "name": "Gemini 3.1 Pro",
35
+ "description": "Gemini 3.1 Pro is Google's frontier reasoning model for software engineering and agentic tasks",
36
+ "featured": true,
37
+ "supports": ["chat", "app"]
33
38
  },
34
39
  {
35
40
  "id": "openai/gpt-5",
36
41
  "name": "GPT-5",
37
42
  "description": "GPT-5 is OpenAI's most advanced model, offering major improvements in reasoning, code quality, and user experience",
38
- "featured": true
43
+ "featured": true,
44
+ "supports": ["chat", "app"]
45
+ },
46
+ {
47
+ "id": "prodia/flux-2.klein.9b",
48
+ "name": "Prodia Flux 2 Klein 9B",
49
+ "description": "Prodia's hosted Flux 2 Klein 9B image generation model (default image backend)",
50
+ "featured": false,
51
+ "preSelected": ["img"],
52
+ "supports": ["img"]
39
53
  },
40
54
  {
41
55
  "id": "openai/gpt-5-image-mini",
42
56
  "name": "GPT-5 Image Mini",
43
57
  "description": "OpenAI's GPT-5 Image Mini model for fast image generation",
44
58
  "featured": false,
45
- "preSelected": ["img"]
59
+ "supports": ["img"]
46
60
  },
47
61
  {
48
62
  "id": "z-ai/glm-4.6",
49
63
  "name": "GLM 4.6",
50
64
  "description": "Compared with GLM-4.5, this generation brings several key improvements: Longer context window from 128K to 200K tokens",
51
- "featured": false
65
+ "featured": false,
66
+ "supports": ["chat", "app"]
52
67
  },
53
68
  {
54
69
  "id": "deepseek/deepseek-v3.2-exp",
55
70
  "name": "DeepSeek V3.2 Exp",
56
71
  "description": "DeepSeek-V3.2-Exp is an experimental large language model released by DeepSeek as an intermediate step between V3.1 and future architectures",
57
- "featured": false
72
+ "featured": false,
73
+ "supports": ["chat", "app"]
58
74
  },
59
75
  {
60
76
  "id": "qwen/qwen3-coder-plus",
61
77
  "name": "Qwen3 Coder Plus",
62
78
  "description": "Qwen3 Coder Plus is Alibaba's proprietary version of the Open Source Qwen3 Coder 480B A35B",
63
- "featured": false
79
+ "featured": false,
80
+ "supports": ["chat", "app"]
64
81
  },
65
82
  {
66
83
  "id": "x-ai/grok-code-fast-1",
67
84
  "name": "Grok Code Fast 1",
68
85
  "description": "Grok Code Fast 1 is a speedy and economical reasoning model that excels at agentic coding",
69
- "featured": true
86
+ "featured": true,
87
+ "supports": ["chat", "app"]
70
88
  },
71
89
  {
72
90
  "id": "google/gemini-2.5-flash",
73
91
  "name": "Gemini 2.5 Flash",
74
92
  "description": "Gemini 2.5 Flash is Google's state-of-the-art workhorse model, specifically designed for advanced reasoning, coding, mathematics, and scientific tasks",
75
- "featured": false
93
+ "featured": false,
94
+ "supports": ["chat", "app"]
76
95
  },
77
96
  {
78
97
  "id": "deepseek/deepseek-chat-v3.1",
79
98
  "name": "DeepSeek V3.1 (free)",
80
99
  "description": "DeepSeek-V3.1 is a large hybrid reasoning model (671B parameters, 37B active) that supports both thinking and non-thinking modes via prompt templates",
81
- "featured": false
100
+ "featured": false,
101
+ "supports": ["chat", "app"]
82
102
  },
83
103
  {
84
104
  "id": "google/gemini-2.0-flash-001",
85
105
  "name": "Gemini 2.0 Flash",
86
106
  "description": "Gemini Flash 2.0 offers a significantly faster time to first token (TTFT) compared to Gemini Flash 1.5, while maintaining quality on par with larger models like Gemini Pro 1.5",
87
- "featured": false
107
+ "featured": false,
108
+ "supports": ["chat", "app"]
88
109
  },
89
110
  {
90
111
  "id": "openai/gpt-4.1-mini",
91
112
  "name": "GPT-4.1 Mini",
92
113
  "description": "GPT-4.1 Mini is a mid-sized model delivering performance competitive with GPT-4o at substantially lower latency and cost",
93
- "featured": false
114
+ "featured": false,
115
+ "supports": ["chat", "app"]
94
116
  },
95
117
  {
96
118
  "id": "deepseek/deepseek-chat-v3-0324",
97
119
  "name": "DeepSeek V3 0324",
98
120
  "description": "DeepSeek V3, a 685B-parameter, mixture-of-experts model, is the latest iteration of the flagship chat model family from the DeepSeek team",
99
- "featured": false
121
+ "featured": false,
122
+ "supports": ["chat", "app"]
100
123
  },
101
124
  {
102
125
  "id": "google/gemini-2.5-flash-lite",
103
126
  "name": "Gemini 2.5 Flash Lite",
104
127
  "description": "Gemini 2.5 Flash-Lite is a lightweight reasoning model in the Gemini 2.5 family, optimized for ultra-low latency and cost efficiency",
105
- "featured": false
128
+ "featured": false,
129
+ "supports": ["chat", "app"]
106
130
  },
107
131
  {
108
132
  "id": "google/gemma-3-12b-it",
109
133
  "name": "Gemma 3 12B",
110
134
  "description": "Gemma 3 introduces multimodality, supporting vision-language input and text outputs",
111
- "featured": false
135
+ "featured": false,
136
+ "supports": ["chat", "app"]
112
137
  },
113
138
  {
114
139
  "id": "openai/gpt-oss-20b",
115
140
  "name": "gpt-oss-20b",
116
141
  "description": "gpt-oss-20b is an open-weight 21B parameter model released by OpenAI under the Apache 2.0 license",
117
- "featured": false
142
+ "featured": false,
143
+ "supports": ["chat", "app"]
118
144
  },
119
145
  {
120
146
  "id": "openai/gpt-4o-mini",
121
147
  "name": "GPT-4o-mini",
122
148
  "description": "GPT-4o mini is OpenAI's newest model after GPT-4 Omni, supporting both text and image inputs with text outputs",
123
- "featured": false
149
+ "featured": false,
150
+ "supports": ["chat", "app"]
124
151
  },
125
152
  {
126
153
  "id": "openai/gpt-oss-120b",
127
154
  "name": "gpt-oss-120b",
128
155
  "description": "gpt-oss-120b is an open-weight, 117B-parameter Mixture-of-Experts (MoE) language model from OpenAI designed for high-reasoning, agentic, and general-purpose production use cases",
129
- "featured": false
156
+ "featured": false,
157
+ "supports": ["chat", "app"]
130
158
  },
131
159
  {
132
160
  "id": "openai/gpt-5-mini",
133
161
  "name": "GPT-5 Mini",
134
162
  "description": "GPT-5 Mini is a compact version of GPT-5, designed to handle lighter-weight reasoning tasks",
135
- "featured": false
163
+ "featured": false,
164
+ "supports": ["chat", "app"]
136
165
  },
137
166
  {
138
167
  "id": "openai/gpt-5.4-mini",
139
168
  "name": "GPT-5.4 Mini",
140
169
  "description": "GPT-5.4 Mini is OpenAI's latest compact model optimized for fast, cost-efficient structured output",
141
170
  "featured": false,
142
- "featured": false
171
+ "supports": ["chat", "app"]
143
172
  },
144
173
  {
145
174
  "id": "z-ai/glm-4.5",
146
175
  "name": "GLM 4.5",
147
176
  "description": "GLM-4.5 is our latest flagship foundation model, purpose-built for agent-based applications",
148
- "featured": false
177
+ "featured": false,
178
+ "supports": ["chat", "app"]
149
179
  },
150
180
  {
151
181
  "id": "mistralai/mistral-nemo",
152
182
  "name": "Mistral Nemo",
153
183
  "description": "A 12B parameter model with a 128k token context length built by Mistral in collaboration with NVIDIA",
154
- "featured": false
184
+ "featured": false,
185
+ "supports": ["chat", "app"]
155
186
  },
156
187
  {
157
188
  "id": "qwen/qwen3-235b-a22b-2507",
158
189
  "name": "Qwen3 235B A22B Instruct 2507",
159
190
  "description": "Qwen3-235B-A22B-Instruct-2507 is a multilingual, instruction-tuned mixture-of-experts language model based on the Qwen3-235B architecture, with 22B active parameters per forward pass",
160
- "featured": false
191
+ "featured": false,
192
+ "supports": ["chat", "app"]
161
193
  },
162
194
  {
163
195
  "id": "qwen/qwen3-coder",
164
196
  "name": "Qwen3 Coder 480B A35B",
165
197
  "description": "Qwen3-Coder-480B-A35B-Instruct is a Mixture-of-Experts (MoE) code generation model developed by the Qwen team",
166
- "featured": false
198
+ "featured": false,
199
+ "supports": ["chat", "app"]
167
200
  },
168
201
  {
169
202
  "id": "openai/gpt-5-codex",
170
203
  "name": "GPT-5 Codex",
171
204
  "description": "GPT-5-Codex is a specialized version of GPT-5 optimized for software engineering and coding workflows",
172
- "featured": true
205
+ "featured": true,
206
+ "supports": ["chat", "app"]
173
207
  },
174
208
  {
175
209
  "id": "openai/gpt-4.1",
176
210
  "name": "GPT-4.1",
177
211
  "description": "GPT-4.1 is a flagship large language model optimized for advanced instruction following, real-world software engineering, and long-context reasoning",
178
- "featured": false
212
+ "featured": false,
213
+ "supports": ["chat", "app"]
179
214
  },
180
215
  {
181
216
  "id": "moonshotai/kimi-k2-0905",
182
217
  "name": "Kimi K2 0905",
183
218
  "description": "Kimi K2 0905 is the September update of Kimi K2 0711",
184
- "featured": true
219
+ "featured": true,
220
+ "supports": ["chat", "app"]
185
221
  },
186
222
  {
187
- "id": "google/gemini-2.5-flash-lite-preview-06-17",
188
- "name": "Gemini 2.5 Flash Lite Preview 06-17",
189
- "description": "Gemini 2.5 Flash-Lite is a lightweight reasoning model in the Gemini 2.5 family, optimized for ultra-low latency and cost efficiency",
190
- "featured": false
223
+ "id": "anthropic/claude-opus-4.7",
224
+ "name": "Claude Opus 4.7",
225
+ "description": "Claude Opus 4.7 is the next generation of Anthropic's Opus family, built for long-running, asynchronous agents",
226
+ "featured": true,
227
+ "supports": ["chat", "app"]
228
+ },
229
+ {
230
+ "id": "openai/gpt-5.4",
231
+ "name": "GPT-5.4",
232
+ "description": "GPT-5.4 is OpenAI's flagship model, building on GPT-5 with unified architecture and improved reasoning",
233
+ "featured": true,
234
+ "supports": ["chat", "app"]
235
+ },
236
+ {
237
+ "id": "openai/gpt-5.4-pro",
238
+ "name": "GPT-5.4 Pro",
239
+ "description": "GPT-5.4 Pro is OpenAI's most advanced model, building on GPT-5.4's unified architecture with enhanced reasoning capabilities",
240
+ "featured": false,
241
+ "supports": ["chat", "app"]
242
+ },
243
+ {
244
+ "id": "openai/gpt-5.5",
245
+ "name": "GPT-5.5",
246
+ "description": "GPT-5.5 is OpenAI's frontier model for complex professional workloads, with stronger reasoning, higher reliability, and a 1M+ token context window",
247
+ "featured": true,
248
+ "supports": ["chat", "app"]
249
+ },
250
+ {
251
+ "id": "x-ai/grok-4.20",
252
+ "name": "Grok 4.20",
253
+ "description": "Grok 4.20 is xAI's latest flagship model with industry-leading speed and agentic tool calling",
254
+ "featured": true,
255
+ "supports": ["chat", "app"]
256
+ },
257
+ {
258
+ "id": "z-ai/glm-5.1",
259
+ "name": "GLM 5.1",
260
+ "description": "GLM 5.1 delivers a major leap in coding capability, with significant gains in handling long-horizon tasks",
261
+ "featured": false,
262
+ "supports": ["chat", "app"]
263
+ },
264
+ {
265
+ "id": "moonshotai/kimi-k2.6",
266
+ "name": "Kimi K2.6",
267
+ "description": "Kimi K2.6 is MoonshotAI's next-generation multimodal model for long-horizon coding and multi-agent orchestration",
268
+ "featured": false,
269
+ "supports": ["chat", "app"]
270
+ },
271
+ {
272
+ "id": "deepseek/deepseek-v3.2",
273
+ "name": "DeepSeek V3.2",
274
+ "description": "DeepSeek V3.2 is the stable release of the V3.2 architecture, alongside the experimental variant",
275
+ "featured": false,
276
+ "supports": ["chat", "app"]
277
+ },
278
+ {
279
+ "id": "openai/gpt-5.3-codex",
280
+ "name": "GPT-5.3 Codex",
281
+ "description": "GPT-5.3 Codex is the newer specialized coding model in the GPT-5.3 family, optimized for software engineering workflows",
282
+ "featured": false,
283
+ "supports": ["chat", "app"]
284
+ },
285
+ {
286
+ "id": "openai/gpt-5.4-image-2",
287
+ "name": "GPT-5.4 Image 2",
288
+ "description": "GPT-5.4 Image 2 combines OpenAI's GPT-5.4 with state-of-the-art image generation, enabling multimodal workflows across reasoning, code, and visual output",
289
+ "featured": true,
290
+ "supports": ["img"]
291
+ },
292
+ {
293
+ "id": "google/gemini-3.1-flash-image-preview",
294
+ "name": "Nano Banana 2",
295
+ "description": "Google's latest image generation and editing model (Gemini 3.1 Flash Image Preview) delivering professional visual quality at fast speed",
296
+ "featured": true,
297
+ "supports": ["img"]
298
+ },
299
+ {
300
+ "id": "google/gemini-3-pro-image-preview",
301
+ "name": "Nano Banana Pro",
302
+ "description": "Google's Gemini 3 Pro Image Preview for highest-quality image generation and editing",
303
+ "featured": false,
304
+ "supports": ["img"]
305
+ },
306
+ {
307
+ "id": "openai/gpt-5-image",
308
+ "name": "GPT-5 Image",
309
+ "description": "OpenAI's GPT-5 Image model for high-quality image generation",
310
+ "featured": false,
311
+ "supports": ["img"]
312
+ },
313
+ {
314
+ "id": "google/gemini-2.5-flash-image",
315
+ "name": "Nano Banana",
316
+ "description": "Google's Gemini 2.5 Flash Image model for image generation and editing",
317
+ "featured": false,
318
+ "supports": ["img"]
191
319
  }
192
320
  ]
@@ -15,10 +15,8 @@ export function defaultFetchPkgVersion(iopts = {}) {
15
15
  .match(furl)
16
16
  .then((cachedRes) => {
17
17
  if (cachedRes) {
18
- console.log(`[defaultFetchPkgVersion] cache hit for ${furl}`);
19
18
  return Promise.resolve(cachedRes);
20
19
  }
21
- console.log(`[defaultFetchPkgVersion] cache miss for ${furl}, fetching...`);
22
20
  return opts.fetch(furl);
23
21
  })
24
22
  .then((res) => {
@@ -1 +1 @@
1
- {"version":3,"file":"npm-package-version.js","sourceRoot":"","sources":["../jsr/npm-package-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAe5C,MAAM,UAAU,sBAAsB,CACpC,KAAK,GAAkC,EAAE;IAEzC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC,QAAQ,CAAC;IACxB,CAAC;IACD,MAAM,IAAI,GAAsB;QAC9B,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,4BAA4B;QACxD,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,SAAS;QACzC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KAC9D,CAAC;IAEF,OAAO,KAAK,EAAE,GAAW,EAAE,UAAmB,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;QAE5D,OAAO,IAAI,CAAC,KAAK;aACd,KAAK,CAAC,IAAI,CAAC;aACX,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;YAClB,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,0CAA0C,IAAI,EAAE,CAAC,CAAC;gBAC9D,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACpC,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,2CAA2C,IAAI,eAAe,CAAC,CAAC;YAC5E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACZ,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACpB,OAAO,MAAM,CAAC,GAAG,CAAC,+BAA+B,GAAG,gBAAgB,UAAU,KAAK,GAAG,EAAE,MAAM,IAAI,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;YACvH,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;aAC/D,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"npm-package-version.js","sourceRoot":"","sources":["../jsr/npm-package-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAe5C,MAAM,UAAU,sBAAsB,CACpC,KAAK,GAAkC,EAAE;IAEzC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC,QAAQ,CAAC;IACxB,CAAC;IACD,MAAM,IAAI,GAAsB;QAC9B,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,4BAA4B;QACxD,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,SAAS;QACzC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KAC9D,CAAC;IAEF,OAAO,KAAK,EAAE,GAAW,EAAE,UAAmB,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;QAE5D,OAAO,IAAI,CAAC,KAAK;aACd,KAAK,CAAC,IAAI,CAAC;aACX,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;YAClB,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACpC,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACZ,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACpB,OAAO,MAAM,CAAC,GAAG,CAAC,+BAA+B,GAAG,gBAAgB,UAAU,KAAK,GAAG,EAAE,MAAM,IAAI,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;YACvH,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;aAC/D,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/api-svc",
3
- "version": "2.0.9",
3
+ "version": "2.2.0",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "scripts": {
@@ -25,17 +25,17 @@
25
25
  "@libsql/client": "~0.17.2",
26
26
  "@neondatabase/serverless": "~1.0.2",
27
27
  "@noble/hashes": "~2.0.1",
28
- "@vibes.diy/api-impl": "2.0.9",
29
- "@vibes.diy/api-pkg": "2.0.9",
30
- "@vibes.diy/api-sql": "2.0.9",
31
- "@vibes.diy/api-types": "2.0.9",
32
- "@vibes.diy/call-ai-v2": "2.0.9",
33
- "@vibes.diy/prompts": "2.0.9",
34
- "@vibes.diy/use-vibes-base": "2.0.9",
35
- "@vibes.diy/vibe-db-explorer": "2.0.9",
28
+ "@vibes.diy/api-impl": "2.2.0",
29
+ "@vibes.diy/api-pkg": "2.2.0",
30
+ "@vibes.diy/api-sql": "2.2.0",
31
+ "@vibes.diy/api-types": "2.2.0",
32
+ "@vibes.diy/call-ai-v2": "2.2.0",
33
+ "@vibes.diy/prompts": "2.2.0",
34
+ "@vibes.diy/use-vibes-base": "2.2.0",
35
+ "@vibes.diy/vibe-db-explorer": "2.2.0",
36
36
  "acorn": "~8.16.0",
37
37
  "arktype": "~2.2.0",
38
- "call-ai": "2.0.9",
38
+ "call-ai": "2.2.0",
39
39
  "cookie": "~1.1.1",
40
40
  "drizzle-orm": "~0.45.2",
41
41
  "jose": "~6.2.2",
@@ -1,7 +1,8 @@
1
1
  import { EventoHandler } from "@adviser/cement";
2
- import { MsgBase, ReqPutDoc, ResPutDoc, ReqGetDoc, ResGetDoc, ResGetDocNotFound, ReqQueryDocs, ResQueryDocs, ReqDeleteDoc, ResDeleteDoc, ReqSubscribeDocs, ResSubscribeDocs, VibesDiyError, W3CWebSocketEvent } from "@vibes.diy/api-types";
2
+ import { MsgBase, ReqPutDoc, ResPutDoc, ReqGetDoc, ResGetDoc, ResGetDocNotFound, ReqQueryDocs, ResQueryDocs, ReqDeleteDoc, ResDeleteDoc, ReqSubscribeDocs, ResSubscribeDocs, ReqListDbNames, ResListDbNames, VibesDiyError, W3CWebSocketEvent } from "@vibes.diy/api-types";
3
3
  export declare const putDocEvento: EventoHandler<W3CWebSocketEvent, MsgBase<ReqPutDoc>, ResPutDoc | VibesDiyError>;
4
4
  export declare const getDocEvento: EventoHandler<W3CWebSocketEvent, MsgBase<ReqGetDoc>, ResGetDoc | ResGetDocNotFound | VibesDiyError>;
5
5
  export declare const queryDocsEvento: EventoHandler<W3CWebSocketEvent, MsgBase<ReqQueryDocs>, ResQueryDocs | VibesDiyError>;
6
6
  export declare const deleteDocEvento: EventoHandler<W3CWebSocketEvent, MsgBase<ReqDeleteDoc>, ResDeleteDoc | VibesDiyError>;
7
7
  export declare const subscribeDocsEvento: EventoHandler<W3CWebSocketEvent, MsgBase<ReqSubscribeDocs>, ResSubscribeDocs | VibesDiyError>;
8
+ export declare const listDbNamesEvento: EventoHandler<W3CWebSocketEvent, MsgBase<ReqListDbNames>, ResListDbNames | VibesDiyError>;
@@ -1,9 +1,9 @@
1
- import { Result, Option, EventoResult, exception2Result } from "@adviser/cement";
2
- import { reqPutDoc, reqGetDoc, reqQueryDocs, reqDeleteDoc, reqSubscribeDocs, isResHasAccessInviteAccepted, isResHasAccessRequestApproved, } from "@vibes.diy/api-types";
1
+ import { Result, Option, EventoResult } from "@adviser/cement";
2
+ import { reqPutDoc, reqGetDoc, reqQueryDocs, reqDeleteDoc, reqSubscribeDocs, reqListDbNames, isResHasAccessInviteAccepted, isResHasAccessRequestApproved, } from "@vibes.diy/api-types";
3
3
  import { unwrapMsgBase } from "../unwrap-msg-base.js";
4
4
  import { checkAuth, optAuth } from "../check-auth.js";
5
- import { eq, and } from "drizzle-orm";
6
- import { sql, max } from "drizzle-orm/sql";
5
+ import { eq, and, sql } from "drizzle-orm";
6
+ import { max } from "drizzle-orm/sql";
7
7
  import { type } from "arktype";
8
8
  import { hasAccessInvite } from "./invite-flow.js";
9
9
  import { hasAccessRequest } from "./request-flow.js";
@@ -96,18 +96,10 @@ export const putDocEvento = {
96
96
  deleted: 0,
97
97
  created: now,
98
98
  });
99
- const evt = { type: "vibes.diy.evt-doc-changed", userSlug: req.userSlug, appSlug: req.appSlug, docId };
100
- const subscriptionKey = `${req.userSlug}/${req.appSlug}`;
101
- for (const conn of vctx.connections) {
102
- if (!conn.subscribedAppSlugs.has(subscriptionKey))
103
- continue;
104
- exception2Result(() => conn.ws.send(conn.ende.uint8ify({
105
- tid: crypto.randomUUID(),
106
- src: "vibes.diy.api",
107
- dst: "vibes.diy.client",
108
- ttl: 10,
109
- payload: evt,
110
- })));
99
+ if (vctx.notifyDocChanged) {
100
+ vctx
101
+ .notifyDocChanged({ userSlug: req.userSlug, appSlug: req.appSlug, docId })
102
+ .catch((e) => console.error("DocNotify error:", e));
111
103
  }
112
104
  await ctx.send.send(ctx, {
113
105
  type: "vibes.diy.res-put-doc",
@@ -197,13 +189,13 @@ export const queryDocsEvento = {
197
189
  .select()
198
190
  .from(t)
199
191
  .where(and(eq(t.userSlug, req.userSlug), eq(t.appSlug, req.appSlug), eq(t.dbName, req.dbName)))
200
- .orderBy(sql `${t.docId}, ${t.seq} desc`);
201
- const seen = new Set();
202
- const docs = [];
192
+ .orderBy(sql `${t.docId}, ${t.seq}`);
193
+ const latest = new Map();
203
194
  for (const row of rows) {
204
- if (seen.has(row.docId))
205
- continue;
206
- seen.add(row.docId);
195
+ latest.set(row.docId, row);
196
+ }
197
+ const docs = [];
198
+ for (const row of latest.values()) {
207
199
  if (row.deleted === 1)
208
200
  continue;
209
201
  docs.push({
@@ -257,18 +249,10 @@ export const deleteDocEvento = {
257
249
  deleted: 1,
258
250
  created: now,
259
251
  });
260
- const evt = { type: "vibes.diy.evt-doc-changed", userSlug: req.userSlug, appSlug: req.appSlug, docId: req.docId };
261
- const subscriptionKey = `${req.userSlug}/${req.appSlug}`;
262
- for (const conn of vctx.connections) {
263
- if (!conn.subscribedAppSlugs.has(subscriptionKey))
264
- continue;
265
- exception2Result(() => conn.ws.send(conn.ende.uint8ify({
266
- tid: crypto.randomUUID(),
267
- src: "vibes.diy.api",
268
- dst: "vibes.diy.client",
269
- ttl: 10,
270
- payload: evt,
271
- })));
252
+ if (vctx.notifyDocChanged) {
253
+ vctx
254
+ .notifyDocChanged({ userSlug: req.userSlug, appSlug: req.appSlug, docId: req.docId })
255
+ .catch((e) => console.error("DocNotify error:", e));
272
256
  }
273
257
  await ctx.send.send(ctx, {
274
258
  type: "vibes.diy.res-delete-doc",
@@ -304,7 +288,11 @@ export const subscribeDocsEvento = {
304
288
  }
305
289
  }
306
290
  const wsSend = clientWsSend(ctx);
307
- wsSend.subscribedAppSlugs.add(`${req.userSlug}/${req.appSlug}`);
291
+ const subscriptionKey = `${req.userSlug}/${req.appSlug}`;
292
+ wsSend.subscribedAppSlugs.add(subscriptionKey);
293
+ if (vctx.registerDocSubscription) {
294
+ vctx.registerDocSubscription(subscriptionKey).catch((e) => console.error("DocNotify error:", e));
295
+ }
308
296
  await ctx.send.send(ctx, {
309
297
  type: "vibes.diy.res-subscribe-docs",
310
298
  status: "ok",
@@ -312,4 +300,35 @@ export const subscribeDocsEvento = {
312
300
  return Result.Ok(EventoResult.Continue);
313
301
  }),
314
302
  };
303
+ export const listDbNamesEvento = {
304
+ hash: "list-db-names",
305
+ validate: unwrapMsgBase(async (msg) => {
306
+ const ret = reqListDbNames(msg.payload);
307
+ if (ret instanceof type.errors) {
308
+ return Result.Ok(Option.None());
309
+ }
310
+ return Result.Ok(Option.Some({ ...msg, payload: ret }));
311
+ }),
312
+ handle: checkAuth(async (ctx) => {
313
+ const req = ctx.validated.payload;
314
+ const vctx = ctx.ctx.getOrThrow("vibesApiCtx");
315
+ const userId = req._auth.verifiedAuth.claims.userId;
316
+ const access = await checkDocAccess(vctx, userId, req.appSlug, req.userSlug);
317
+ if (access !== "owner") {
318
+ await ctx.send.send(ctx, { type: "vibes.diy.res-error", error: { message: "Access denied" } });
319
+ return Result.Ok(EventoResult.Continue);
320
+ }
321
+ const t = vctx.sql.tables.appDocuments;
322
+ const rows = await vctx.sql.db
323
+ .selectDistinct({ dbName: t.dbName })
324
+ .from(t)
325
+ .where(and(eq(t.userSlug, req.userSlug), eq(t.appSlug, req.appSlug)));
326
+ await ctx.send.send(ctx, {
327
+ type: "vibes.diy.res-list-db-names",
328
+ status: "ok",
329
+ dbNames: rows.map((r) => r.dbName),
330
+ });
331
+ return Result.Ok(EventoResult.Continue);
332
+ }),
333
+ };
315
334
  //# sourceMappingURL=app-documents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-documents.js","sourceRoot":"","sources":["../../jsr/public/app-documents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-documents.js","sourceRoot":"","sources":["../../jsr/public/app-documents.ts"],"names":[],"mappings":"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"}
@@ -64,7 +64,7 @@ export async function ensureAppSettings(vctx, req, userId) {
64
64
  .select()
65
65
  .from(vctx.sql.tables.userSlugBinding)
66
66
  .innerJoin(vctx.sql.tables.appSlugBinding, eq(vctx.sql.tables.appSlugBinding.userSlug, vctx.sql.tables.userSlugBinding.userSlug))
67
- .leftJoin(vctx.sql.tables.appSettings, and(eq(vctx.sql.tables.appSettings.userSlug, vctx.sql.tables.userSlugBinding.userSlug), eq(vctx.sql.tables.appSettings.appSlug, req.appSlug)))
67
+ .leftJoin(vctx.sql.tables.appSettings, and(eq(vctx.sql.tables.appSettings.userId, vctx.sql.tables.userSlugBinding.userId), eq(vctx.sql.tables.appSettings.appSlug, req.appSlug), eq(vctx.sql.tables.appSettings.userSlug, vctx.sql.tables.userSlugBinding.userSlug)))
68
68
  .where(and(eq(vctx.sql.tables.appSlugBinding.userSlug, req.userSlug), eq(vctx.sql.tables.appSlugBinding.appSlug, req.appSlug)))
69
69
  .limit(1)
70
70
  .then((r) => r[0]));