@vibes.diy/vibe-srv-sandbox 2.0.3 → 2.0.6

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/README.md CHANGED
@@ -19,6 +19,12 @@ Create beautiful, interactive mini apps with zero setup. Your creations are auto
19
19
  - Install with `pnpm i`
20
20
  - Run `pnpm dev`
21
21
 
22
+ ## Community
23
+
24
+ We are committed to providing a welcoming and inclusive environment for all contributors. Please review our [Code of Conduct](CODE_OF_CONDUCT.md) before participating.
25
+
26
+ Interested in contributing? Check out our [Contributing Guide](CONTRIBUTING.md) to get started.
27
+
22
28
  ## Your Work is Always Safe
23
29
 
24
30
  Every app you create is automatically saved, so you can:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/vibe-srv-sandbox",
3
- "version": "2.0.3",
3
+ "version": "2.0.6",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "scripts": {
@@ -11,15 +11,15 @@
11
11
  "@fireproof/core-protocols-dashboard": "~0.24.19",
12
12
  "@fireproof/core-types-protocols-cloud": "~0.24.19",
13
13
  "@fireproof/core-types-protocols-dashboard": "~0.24.19",
14
- "@vibes.diy/api-types": "2.0.3",
15
- "@vibes.diy/base": "2.0.3",
16
- "@vibes.diy/call-ai-v2": "2.0.3",
17
- "@vibes.diy/prompts": "2.0.3",
18
- "@vibes.diy/vibe-types": "2.0.3",
14
+ "@vibes.diy/api-types": "2.0.6",
15
+ "@vibes.diy/base": "2.0.6",
16
+ "@vibes.diy/call-ai-v2": "2.0.6",
17
+ "@vibes.diy/prompts": "2.0.6",
18
+ "@vibes.diy/vibe-types": "2.0.6",
19
19
  "arktype": "~2.2.0",
20
20
  "react": "~19.2.5",
21
21
  "react-dom": "~19.2.5",
22
- "use-fireproof": "~0.24.16"
22
+ "use-fireproof": "~0.24.19"
23
23
  },
24
24
  "repository": {
25
25
  "type": "git",
package/srv-sandbox.d.ts CHANGED
@@ -31,6 +31,7 @@ export declare function getCodeBlock(stream: ReadableStream<unknown>): Promise<{
31
31
  promptReq: PromptReq;
32
32
  codeEnd: CodeEndMsg;
33
33
  }>;
34
+ export declare function getImageUrls(stream: ReadableStream<unknown>): Promise<string[]>;
34
35
  export declare class vibesDiySrvSandbox implements Disposable {
35
36
  readonly evento: Evento;
36
37
  readonly shareableDBs: LRUMap<string, ShareableDBInfo>;
@@ -38,7 +39,10 @@ export declare class vibesDiySrvSandbox implements Disposable {
38
39
  type: "vibe.evt.runtime.ready";
39
40
  deps: string[];
40
41
  }], unknown, unknown>;
42
+ private iframeSource;
43
+ private iframeOrigin;
41
44
  readonly handleMessage: (event: MessageEvent) => void;
45
+ forwardDocChangedToIframe(appSlug: string, docId: string): void;
42
46
  readonly removeEventListeners: typeof window.removeEventListener;
43
47
  readonly args: VibesDiySrvSandboxArgs;
44
48
  constructor(args: VibesDiySrvSandboxArgs);
package/srv-sandbox.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Evento, Lazy, Result, Option, EventoResult, LRUMap, processStream, Future, OnFunc, } from "@adviser/cement";
2
- import { isReqVibeRegisterFPDb, isReqCallAI, isReqFetchCloudToken, isEvtRuntimeReady, } from "@vibes.diy/vibe-types";
3
- import { isPromptReq, isResFPCloudTokenGrant, isSectionEvent, } from "@vibes.diy/api-types";
4
- import { isCodeBegin, isCodeEnd, isCodeLine } from "@vibes.diy/call-ai-v2";
2
+ import { isReqVibeRegisterFPDb, isReqCallAI, isReqFetchCloudToken, isEvtRuntimeReady, isReqImgVibes, isReqPutDoc, isReqGetDoc, isReqQueryDocs, isReqDeleteDoc, isReqSubscribeDocs, } from "@vibes.diy/vibe-types";
3
+ import { isPromptBlockEnd, isPromptReq, isResFPCloudTokenGrant, isSectionEvent, } from "@vibes.diy/api-types";
4
+ import { isBlockImage, isCodeBegin, isCodeEnd, isCodeLine } from "@vibes.diy/call-ai-v2";
5
5
  import { buildSchemaSystemMessage } from "@vibes.diy/prompts";
6
6
  export class MessageEventEventoEnDecoder {
7
7
  async encode(me) {
@@ -250,24 +250,313 @@ function vibeCallAI(sandbox) {
250
250
  },
251
251
  };
252
252
  }
253
+ export function getImageUrls(stream) {
254
+ const urls = [];
255
+ const done = new Future();
256
+ processStream(stream, (msg) => {
257
+ const msgType = msg.type;
258
+ if (isSectionEvent(msg)) {
259
+ for (const block of msg.blocks) {
260
+ console.log("[vibeImgVibes] block:", block.type, "isImage:", isBlockImage(block));
261
+ if (isBlockImage(block)) {
262
+ console.log("[vibeImgVibes] got image URL, length:", block.url?.length);
263
+ urls.push(block.url);
264
+ }
265
+ if (isPromptBlockEnd(block)) {
266
+ console.log("[vibeImgVibes] prompt.block-end, resolving with", urls.length, "urls");
267
+ done.resolve(urls);
268
+ }
269
+ }
270
+ }
271
+ else {
272
+ console.log("[vibeImgVibes] non-section msg:", msgType);
273
+ }
274
+ });
275
+ return done.asPromise();
276
+ }
277
+ function vibeImageGen(sandbox) {
278
+ const { vibeDiyApi } = sandbox.args;
279
+ return {
280
+ hash: "vibe.imgVibes",
281
+ validate: (ctx) => {
282
+ const { request: req } = ctx;
283
+ if (isReqImgVibes(req?.data)) {
284
+ return Promise.resolve(Result.Ok(Option.Some(req.data)));
285
+ }
286
+ return Promise.resolve(Result.Ok(Option.None()));
287
+ },
288
+ handle: async (ctx) => {
289
+ await vibeDiyApi
290
+ .openChat({ userSlug: ctx.validated.userSlug, appSlug: ctx.validated.appSlug, mode: "img" })
291
+ .then(async (rChat) => {
292
+ if (rChat.isErr()) {
293
+ return ctx.send.send(ctx, {
294
+ tid: ctx.validated.tid,
295
+ type: "vibe.res.imgVibes",
296
+ status: "error",
297
+ message: rChat.Err().message,
298
+ });
299
+ }
300
+ getImageUrls(rChat.Ok().sectionStream)
301
+ .then((imageUrls) => {
302
+ ctx.send.send(ctx, {
303
+ tid: ctx.validated.tid,
304
+ type: "vibe.res.imgVibes",
305
+ status: "ok",
306
+ imageUrls,
307
+ });
308
+ })
309
+ .catch((err) => {
310
+ ctx.send.send(ctx, {
311
+ tid: ctx.validated.tid,
312
+ type: "vibe.res.imgVibes",
313
+ status: "error",
314
+ message: err?.message ?? String(err),
315
+ });
316
+ });
317
+ const rPrompt = await rChat
318
+ .Ok()
319
+ .prompt({ messages: [{ role: "user", content: [{ type: "text", text: ctx.validated.prompt }] }] }, ctx.validated.inputImageBase64 ? { inputImageBase64: ctx.validated.inputImageBase64 } : undefined);
320
+ if (rPrompt.isErr()) {
321
+ return ctx.send.send(ctx, {
322
+ tid: ctx.validated.tid,
323
+ type: "vibe.res.imgVibes",
324
+ status: "error",
325
+ message: rPrompt.Err().message,
326
+ });
327
+ }
328
+ });
329
+ return Result.Ok(EventoResult.Stop);
330
+ },
331
+ };
332
+ }
333
+ function vibePutDoc(sandbox) {
334
+ const { vibeDiyApi } = sandbox.args;
335
+ return {
336
+ hash: "vibe.putDoc",
337
+ validate: (ctx) => {
338
+ const { request: req } = ctx;
339
+ if (isReqPutDoc(req?.data)) {
340
+ return Promise.resolve(Result.Ok(Option.Some(req.data)));
341
+ }
342
+ return Promise.resolve(Result.Ok(Option.None()));
343
+ },
344
+ handle: async (ctx) => {
345
+ const rRes = await vibeDiyApi.putDoc({
346
+ appSlug: ctx.validated.appSlug,
347
+ dbName: ctx.validated.dbName,
348
+ doc: ctx.validated.doc,
349
+ docId: ctx.validated.docId,
350
+ });
351
+ if (rRes.isErr()) {
352
+ await ctx.send.send(ctx, {
353
+ tid: ctx.validated.tid,
354
+ type: "vibes.diy.res-put-doc",
355
+ status: "error",
356
+ message: rRes.Err().message,
357
+ });
358
+ }
359
+ else {
360
+ const res = rRes.Ok();
361
+ await ctx.send.send(ctx, {
362
+ tid: ctx.validated.tid,
363
+ type: "vibes.diy.res-put-doc",
364
+ status: "ok",
365
+ id: res.id,
366
+ });
367
+ }
368
+ return Result.Ok(EventoResult.Stop);
369
+ },
370
+ };
371
+ }
372
+ function vibeGetDoc(sandbox) {
373
+ const { vibeDiyApi } = sandbox.args;
374
+ return {
375
+ hash: "vibe.getDoc",
376
+ validate: (ctx) => {
377
+ const { request: req } = ctx;
378
+ if (isReqGetDoc(req?.data)) {
379
+ return Promise.resolve(Result.Ok(Option.Some(req.data)));
380
+ }
381
+ return Promise.resolve(Result.Ok(Option.None()));
382
+ },
383
+ handle: async (ctx) => {
384
+ const rRes = await vibeDiyApi.getDoc({
385
+ appSlug: ctx.validated.appSlug,
386
+ dbName: ctx.validated.dbName,
387
+ docId: ctx.validated.docId,
388
+ });
389
+ if (rRes.isErr()) {
390
+ await ctx.send.send(ctx, {
391
+ tid: ctx.validated.tid,
392
+ type: "vibes.diy.res-get-doc",
393
+ status: "error",
394
+ message: rRes.Err().message,
395
+ });
396
+ }
397
+ else {
398
+ const res = rRes.Ok();
399
+ await ctx.send.send(ctx, {
400
+ ...res,
401
+ tid: ctx.validated.tid,
402
+ type: "vibes.diy.res-get-doc",
403
+ });
404
+ }
405
+ return Result.Ok(EventoResult.Stop);
406
+ },
407
+ };
408
+ }
409
+ function vibeQueryDocs(sandbox) {
410
+ const { vibeDiyApi } = sandbox.args;
411
+ return {
412
+ hash: "vibe.queryDocs",
413
+ validate: (ctx) => {
414
+ const { request: req } = ctx;
415
+ if (isReqQueryDocs(req?.data)) {
416
+ return Promise.resolve(Result.Ok(Option.Some(req.data)));
417
+ }
418
+ return Promise.resolve(Result.Ok(Option.None()));
419
+ },
420
+ handle: async (ctx) => {
421
+ const rRes = await vibeDiyApi.queryDocs({
422
+ appSlug: ctx.validated.appSlug,
423
+ dbName: ctx.validated.dbName,
424
+ });
425
+ if (rRes.isErr()) {
426
+ await ctx.send.send(ctx, {
427
+ tid: ctx.validated.tid,
428
+ type: "vibes.diy.res-query-docs",
429
+ status: "error",
430
+ message: rRes.Err().message,
431
+ });
432
+ }
433
+ else {
434
+ const res = rRes.Ok();
435
+ await ctx.send.send(ctx, {
436
+ ...res,
437
+ tid: ctx.validated.tid,
438
+ type: "vibes.diy.res-query-docs",
439
+ });
440
+ }
441
+ return Result.Ok(EventoResult.Stop);
442
+ },
443
+ };
444
+ }
445
+ function vibeDeleteDoc(sandbox) {
446
+ const { vibeDiyApi } = sandbox.args;
447
+ return {
448
+ hash: "vibe.deleteDoc",
449
+ validate: (ctx) => {
450
+ const { request: req } = ctx;
451
+ if (isReqDeleteDoc(req?.data)) {
452
+ return Promise.resolve(Result.Ok(Option.Some(req.data)));
453
+ }
454
+ return Promise.resolve(Result.Ok(Option.None()));
455
+ },
456
+ handle: async (ctx) => {
457
+ const rRes = await vibeDiyApi.deleteDoc({
458
+ appSlug: ctx.validated.appSlug,
459
+ dbName: ctx.validated.dbName,
460
+ docId: ctx.validated.docId,
461
+ });
462
+ if (rRes.isErr()) {
463
+ await ctx.send.send(ctx, {
464
+ tid: ctx.validated.tid,
465
+ type: "vibes.diy.res-delete-doc",
466
+ status: "error",
467
+ message: rRes.Err().message,
468
+ });
469
+ }
470
+ else {
471
+ const res = rRes.Ok();
472
+ await ctx.send.send(ctx, {
473
+ ...res,
474
+ tid: ctx.validated.tid,
475
+ type: "vibes.diy.res-delete-doc",
476
+ });
477
+ }
478
+ return Result.Ok(EventoResult.Stop);
479
+ },
480
+ };
481
+ }
482
+ function vibeSubscribeDocs(sandbox) {
483
+ const { vibeDiyApi } = sandbox.args;
484
+ return {
485
+ hash: "vibe.subscribeDocs",
486
+ validate: (ctx) => {
487
+ const { request: req } = ctx;
488
+ if (isReqSubscribeDocs(req?.data)) {
489
+ return Promise.resolve(Result.Ok(Option.Some(req.data)));
490
+ }
491
+ return Promise.resolve(Result.Ok(Option.None()));
492
+ },
493
+ handle: async (ctx) => {
494
+ const rRes = await vibeDiyApi.subscribeDocs({
495
+ appSlug: ctx.validated.appSlug,
496
+ dbName: ctx.validated.dbName,
497
+ });
498
+ if (rRes.isErr()) {
499
+ await ctx.send.send(ctx, {
500
+ tid: ctx.validated.tid,
501
+ type: "vibes.diy.res-subscribe-docs",
502
+ status: "error",
503
+ message: rRes.Err().message,
504
+ });
505
+ }
506
+ else {
507
+ await ctx.send.send(ctx, {
508
+ ...rRes.Ok(),
509
+ tid: ctx.validated.tid,
510
+ type: "vibes.diy.res-subscribe-docs",
511
+ });
512
+ }
513
+ return Result.Ok(EventoResult.Stop);
514
+ },
515
+ };
516
+ }
253
517
  export class vibesDiySrvSandbox {
254
518
  evento;
255
519
  shareableDBs = new LRUMap();
256
520
  onRuntimeReady = OnFunc();
521
+ iframeSource;
522
+ iframeOrigin;
257
523
  handleMessage = (event) => {
524
+ if (!this.iframeSource && event.source) {
525
+ this.iframeSource = event.source;
526
+ this.iframeOrigin = event.origin;
527
+ }
258
528
  this.evento.trigger({
259
529
  request: event,
260
530
  send: new PostMsgSendProvider(window, event),
261
531
  });
262
532
  };
533
+ forwardDocChangedToIframe(appSlug, docId) {
534
+ if (this.iframeSource && this.iframeOrigin) {
535
+ this.iframeSource.postMessage({ type: "vibes.diy.evt-doc-changed", appSlug, docId }, this.iframeOrigin);
536
+ }
537
+ }
263
538
  removeEventListeners;
264
539
  args;
265
540
  constructor(args) {
266
541
  this.args = args;
267
542
  this.evento = new Evento(new MessageEventEventoEnDecoder());
268
- this.evento.push(...[vibeRuntimeReady(this), vibeRegisterFPDB(this), vibeCallAI(this), vibeFetchCloudToken(this)]);
543
+ this.evento.push(...[
544
+ vibeRuntimeReady(this),
545
+ vibeRegisterFPDB(this),
546
+ vibeCallAI(this),
547
+ vibeImageGen(this),
548
+ vibeFetchCloudToken(this),
549
+ vibePutDoc(this),
550
+ vibeGetDoc(this),
551
+ vibeQueryDocs(this),
552
+ vibeDeleteDoc(this),
553
+ vibeSubscribeDocs(this),
554
+ ]);
269
555
  this.args.eventListeners.addEventListener("message", this.handleMessage);
270
556
  this.removeEventListeners = this.args.eventListeners.removeEventListener;
557
+ this.args.vibeDiyApi.onDocChanged((appSlug, docId) => {
558
+ this.forwardDocChangedToIframe(appSlug, docId);
559
+ });
271
560
  }
272
561
  [Symbol.dispose]() {
273
562
  this.removeEventListeners("message", this.handleMessage);
@@ -1 +1 @@
1
- {"version":3,"file":"srv-sandbox.js","sourceRoot":"","sources":["../jsr/srv-sandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"srv-sandbox.js","sourceRoot":"","sources":["../jsr/srv-sandbox.ts"],"names":[],"mappings":"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"}