@vibes.diy/api-svc 2.6.9 → 2.6.10
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-msg-evento.js +2 -2
- package/app-msg-evento.js.map +1 -1
- package/chat-msg-evento.d.ts +1 -3615
- package/chat-msg-evento.js +2 -2
- package/chat-msg-evento.js.map +1 -1
- package/evento-handler-manifest.d.ts +10 -4266
- package/evento-handler-manifest.js +68 -61
- package/evento-handler-manifest.js.map +1 -1
- package/package.json +12 -14
- package/public/open-chat.js +6 -0
- package/public/open-chat.js.map +1 -1
- package/public/prompt-chat-section.js +6 -0
- package/public/prompt-chat-section.js.map +1 -1
- package/shard-gate.d.ts +5 -0
- package/shard-gate.js +65 -0
- package/shard-gate.js.map +1 -0
- package/shared-msg-evento.js +2 -2
- package/shared-msg-evento.js.map +1 -1
- package/vibes-msg-evento.js +2 -2
- package/vibes-msg-evento.js.map +1 -1
package/shard-gate.js
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { EventoResult, Option, Result } from "@adviser/cement";
|
|
2
|
+
import { openVibe, shardsForReq } from "@vibes.diy/api-types";
|
|
3
|
+
export function shardIdentityError(id, ownerHandle, appSlug) {
|
|
4
|
+
const expected = openVibe(ownerHandle, appSlug);
|
|
5
|
+
if (expected === id.shardId)
|
|
6
|
+
return Option.None();
|
|
7
|
+
return Option.Some({
|
|
8
|
+
type: "vibes.diy.res-error",
|
|
9
|
+
error: {
|
|
10
|
+
message: `request for ${expected} arrived on shard ${id.shardId}`,
|
|
11
|
+
code: "wrong-shard",
|
|
12
|
+
},
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function vibeKeyedReq(req) {
|
|
16
|
+
if (typeof req !== "object" || req === null)
|
|
17
|
+
return undefined;
|
|
18
|
+
const r = req;
|
|
19
|
+
if (typeof r.ownerHandle === "string" && typeof r.appSlug === "string") {
|
|
20
|
+
return { ownerHandle: r.ownerHandle, appSlug: r.appSlug };
|
|
21
|
+
}
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
export function gated(reqType, handler) {
|
|
25
|
+
return {
|
|
26
|
+
...handler,
|
|
27
|
+
handle: async (ctx) => {
|
|
28
|
+
const id = ctx.ctx.get("shardIdentity");
|
|
29
|
+
if (id === undefined) {
|
|
30
|
+
return handler.handle(ctx);
|
|
31
|
+
}
|
|
32
|
+
const validated = ctx.validated;
|
|
33
|
+
const req = validated?.payload ?? {};
|
|
34
|
+
const allowed = shardsForReq(reqType, req);
|
|
35
|
+
if (!allowed.includes(id.kind)) {
|
|
36
|
+
await ctx.send.send(ctx, {
|
|
37
|
+
type: "vibes.diy.res-error",
|
|
38
|
+
error: {
|
|
39
|
+
message: `${reqType} not allowed on shard kind ${id.kind}`,
|
|
40
|
+
code: "wrong-shard-kind",
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
return Result.Ok(EventoResult.Continue);
|
|
44
|
+
}
|
|
45
|
+
if (id.kind === "vibe") {
|
|
46
|
+
const keyed = vibeKeyedReq(req);
|
|
47
|
+
if (keyed !== undefined) {
|
|
48
|
+
const oErr = shardIdentityError(id, keyed.ownerHandle, keyed.appSlug);
|
|
49
|
+
if (oErr.IsSome()) {
|
|
50
|
+
await ctx.send.send(ctx, oErr.unwrap());
|
|
51
|
+
return Result.Ok(EventoResult.Continue);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return handler.handle(ctx);
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export function assertChatShardIdentity(ctx, ownerHandle, appSlug) {
|
|
60
|
+
const id = ctx.ctx.get("shardIdentity");
|
|
61
|
+
if (id === undefined || id.kind !== "vibe")
|
|
62
|
+
return Option.None();
|
|
63
|
+
return shardIdentityError(id, ownerHandle, appSlug);
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=shard-gate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shard-gate.js","sourceRoot":"","sources":["../jsr/shard-gate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAoB,MAAM,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAqC,MAAM,sBAAsB,CAAC;AAcjG,MAAM,UAAU,kBAAkB,CAAC,EAAiB,EAAE,WAAmB,EAAE,OAAe;IAGxF,MAAM,QAAQ,GAAW,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACxD,IAAI,QAAQ,KAAK,EAAE,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IAClD,OAAO,MAAM,CAAC,IAAI,CAAC;QACjB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE;YACL,OAAO,EAAE,eAAe,QAAQ,qBAAqB,EAAE,CAAC,OAAO,EAAE;YACjE,IAAI,EAAE,aAAa;SACpB;KACiB,CAAC,CAAC;AACxB,CAAC;AAUD,SAAS,YAAY,CAAC,GAAY;IAChC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAYD,MAAM,UAAU,KAAK,CAAC,OAAe,EAAE,OAAsB;IAC3D,OAAO;QACL,GAAG,OAAO;QACV,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAgB,eAAe,CAAC,CAAC;YACvD,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;gBAErB,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;YACD,MAAM,SAAS,GAAG,GAAG,CAAC,SAA8C,CAAC;YACrE,MAAM,GAAG,GAAI,SAAS,EAAE,OAAyC,IAAI,EAAE,CAAC;YACxE,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/B,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;oBACvB,IAAI,EAAE,qBAAqB;oBAC3B,KAAK,EAAE;wBACL,OAAO,EAAE,GAAG,OAAO,8BAA8B,EAAE,CAAC,IAAI,EAAE;wBAC1D,IAAI,EAAE,kBAAkB;qBACzB;iBACiB,CAAC,CAAC;gBACtB,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC1C,CAAC;YAKD,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACvB,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;gBAChC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,MAAM,IAAI,GAAG,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;oBACtE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;wBAClB,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;wBACxC,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;oBAC1C,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;KACF,CAAC;AACJ,CAAC;AAWD,MAAM,UAAU,uBAAuB,CACrC,GAAsC,EACtC,WAAmB,EACnB,OAAe;IAEf,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAgB,eAAe,CAAC,CAAC;IACvD,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACjE,OAAO,kBAAkB,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC"}
|
package/shared-msg-evento.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Lazy, Evento, EventoResult, EventoType, Result } from "@adviser/cement";
|
|
2
2
|
import { W3CWebSocketEventEventoEnDecoder } from "@vibes.diy/api-pkg";
|
|
3
|
-
import {
|
|
3
|
+
import { handlersForShard } from "./evento-handler-manifest.js";
|
|
4
4
|
export const sharedMsgEvento = Lazy(() => {
|
|
5
5
|
const evento = new Evento(new W3CWebSocketEventEventoEnDecoder());
|
|
6
|
-
evento.push(...
|
|
6
|
+
evento.push(...handlersForShard("shared"), {
|
|
7
7
|
type: EventoType.WildCard,
|
|
8
8
|
hash: "shared-not-msg-implemented-handler",
|
|
9
9
|
handle: async (ctx) => {
|
package/shared-msg-evento.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-msg-evento.js","sourceRoot":"","sources":["../jsr/shared-msg-evento.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"shared-msg-evento.js","sourceRoot":"","sources":["../jsr/shared-msg-evento.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAKhE,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE;IACvC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,gCAAgC,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,IAAI,CACT,GAAG,gBAAgB,CAAC,QAAQ,CAAC,EAC7B;QACE,IAAI,EAAE,UAAU,CAAC,QAAQ;QACzB,IAAI,EAAE,oCAAoC;QAC1C,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvB,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,OAAO,EAAE,oBAAoB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE;aACrD,CAAC,CAAC;YACtB,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;KACF,EACD;QACE,IAAI,EAAE,UAAU,CAAC,KAAK;QACtB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,GAAG,CAAC,KAAK,EAAG,GAAG,CAAC,KAA6B,EAAE,KAAK,CAAC,CAAC;YACrG,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvB,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,uBAAuB,EAAE,EAAE;aACvE,CAAC,CAAC;YACtB,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;KACF,CACF,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC,CAAC"}
|
package/vibes-msg-evento.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Lazy, Evento, EventoResult, EventoType, Result } from "@adviser/cement";
|
|
2
2
|
import { W3CWebSocketEventEventoEnDecoder } from "@vibes.diy/api-pkg";
|
|
3
|
-
import {
|
|
3
|
+
import { handlerManifest } from "./evento-handler-manifest.js";
|
|
4
4
|
export const vibesMsgEvento = Lazy(() => {
|
|
5
5
|
const evento = new Evento(new W3CWebSocketEventEventoEnDecoder());
|
|
6
|
-
evento.push(...
|
|
6
|
+
evento.push(...handlerManifest.map((e) => e.handler), {
|
|
7
7
|
type: EventoType.WildCard,
|
|
8
8
|
hash: "not-msg-implemented-handler",
|
|
9
9
|
handle: async (ctx) => {
|
package/vibes-msg-evento.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vibes-msg-evento.js","sourceRoot":"","sources":["../jsr/vibes-msg-evento.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vibes-msg-evento.js","sourceRoot":"","sources":["../jsr/vibes-msg-evento.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAI/D,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE;IACtC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,gCAAgC,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,IAAI,CACT,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EACxC;QACE,IAAI,EAAE,UAAU,CAAC,QAAQ;QACzB,IAAI,EAAE,6BAA6B;QACnC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvB,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,OAAO,EAAE,oBAAoB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE;aACrD,CAAC,CAAC;YACtB,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;KACF,EACD;QACE,IAAI,EAAE,UAAU,CAAC,KAAK;QACtB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,GAAG,CAAC,KAAK,EAAG,GAAG,CAAC,KAA6B,EAAE,KAAK,CAAC,CAAC;YACpG,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvB,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,uBAAuB,EAAE,EAAE;aACvE,CAAC,CAAC;YACtB,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;KACF,CACF,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC,CAAC"}
|