@vibes.diy/api-impl 2.4.3 → 2.4.4

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.
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,73 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { W3CWebSocketEventEventoEnDecoder } from "@vibes.diy/api-pkg";
3
+ import { isResReportCampaignHealth, msgBase } from "@vibes.diy/api-types";
4
+ import { type } from "arktype";
5
+ const SAMPLE_PAYLOAD = {
6
+ type: "vibes.diy.res-report-campaign-health",
7
+ generatedAt: "2026-05-27T19:59:54.786Z",
8
+ dateLabel: "last 7 days",
9
+ ranked: [
10
+ {
11
+ campaign_name: "vibes-diy-block-party-2026-05-25",
12
+ campaign_id: "6998073570752",
13
+ impressions: "9233",
14
+ clicks: "151",
15
+ spend: "23.27",
16
+ ctr: "1.635438",
17
+ cpc: "0.154106",
18
+ reach: "9103",
19
+ actions: [
20
+ { action_type: "link_click", value: "151" },
21
+ { action_type: "landing_page_view", value: "140" },
22
+ ],
23
+ date_start: "2026-05-20",
24
+ date_stop: "2026-05-26",
25
+ },
26
+ ],
27
+ anomalies: {
28
+ duplicateNames: [],
29
+ budgetOutliers: [],
30
+ zeroSpend: [],
31
+ lowLpvRatio: [],
32
+ pixel: { lastFired: "2026-05-25T15:39:51-0700", counts: {} },
33
+ },
34
+ };
35
+ const SAMPLE_MSG = {
36
+ tid: "z2r4P1pXg1hCSWP4jQ",
37
+ src: "vibes.diy.client.z2oW2n5wAv",
38
+ dst: "wss://vibes.diy/api?shard=reports",
39
+ ttl: 10,
40
+ payload: SAMPLE_PAYLOAD,
41
+ };
42
+ describe("campaign-health client decode pipeline", () => {
43
+ it("isResReportCampaignHealth accepts payload with date_start/date_stop", () => {
44
+ expect(isResReportCampaignHealth(SAMPLE_PAYLOAD)).toBe(true);
45
+ });
46
+ it("msgBase accepts the full message envelope", () => {
47
+ const result = msgBase(SAMPLE_MSG);
48
+ expect(result instanceof type.errors).toBe(false);
49
+ });
50
+ it("encode returns the parsed message from a Blob", async () => {
51
+ const encoder = new W3CWebSocketEventEventoEnDecoder();
52
+ const blob = new Blob([new TextEncoder().encode(JSON.stringify(SAMPLE_MSG))]);
53
+ const result = await encoder.encode({ type: "MessageEvent", event: { data: blob } });
54
+ expect(result.isOk()).toBe(true);
55
+ const decoded = result.Ok();
56
+ expect(decoded.tid).toBe(SAMPLE_MSG.tid);
57
+ expect(decoded.payload.type).toBe("vibes.diy.res-report-campaign-health");
58
+ });
59
+ it("validate logic resolves: tid match + resMatch", async () => {
60
+ const encoder = new W3CWebSocketEventEventoEnDecoder();
61
+ const blob = new Blob([new TextEncoder().encode(JSON.stringify(SAMPLE_MSG))]);
62
+ const encodeResult = await encoder.encode({ type: "MessageEvent", event: { data: blob } });
63
+ expect(encodeResult.isOk()).toBe(true);
64
+ const decoded = encodeResult.Ok();
65
+ const msg = msgBase(decoded);
66
+ expect(msg instanceof type.errors).toBe(false);
67
+ if (msg instanceof type.errors)
68
+ return;
69
+ expect(msg.tid).toBe(SAMPLE_MSG.tid);
70
+ expect(isResReportCampaignHealth(msg.payload)).toBe(true);
71
+ });
72
+ });
73
+ //# sourceMappingURL=campaign-health-decode.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"campaign-health-decode.test.js","sourceRoot":"","sources":["../jsr/campaign-health-decode.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import { type Result } from "@adviser/cement";
2
- import { type ResPutDoc, type ResGetDoc, type ResGetDocNotFound, type ResQueryDocs, type ResDeleteDoc, type ResSubscribeDocs, type VibesDiyError } from "@vibes.diy/api-types";
1
+ import { Result } from "@adviser/cement";
2
+ import { type ResPutDoc, type ResGetDoc, type ResGetDocNotFound, type ResQueryDocs, type ResDeleteDoc, type ResSubscribeDocs, type VibesDiyError, type QueryFilter } from "@vibes.diy/api-types";
3
+ import { type DbAcl, type ResSetDbAcl } from "@vibes.diy/vibe-types";
3
4
  import type { VibesDiyApi } from "./index.js";
4
5
  export declare class FireflyApiAdapter {
5
6
  readonly svc: {
@@ -18,9 +19,10 @@ export declare class FireflyApiAdapter {
18
19
  resolveUserSlug(): Promise<string>;
19
20
  putDoc(doc: Record<string, unknown>, docId?: string, dbName?: string): Promise<Result<ResPutDoc, VibesDiyError>>;
20
21
  getDoc(docId: string, dbName?: string): Promise<Result<ResGetDoc | ResGetDocNotFound, VibesDiyError>>;
21
- queryDocs(dbName?: string): Promise<Result<ResQueryDocs, VibesDiyError>>;
22
+ queryDocs(dbName?: string, filter?: QueryFilter): Promise<Result<ResQueryDocs, VibesDiyError>>;
22
23
  deleteDoc(docId: string, dbName?: string): Promise<Result<ResDeleteDoc, VibesDiyError>>;
23
24
  subscribeDocs(dbName?: string): Promise<Result<ResSubscribeDocs, VibesDiyError>>;
25
+ setDbAcl(_dbName: string, _acl: DbAcl): Promise<Result<ResSetDbAcl>>;
24
26
  putAsset(_blob: Blob, _mimeType?: string): Promise<Result<unknown>>;
25
27
  onMsg(fn: (event: {
26
28
  data: unknown;
@@ -1,4 +1,4 @@
1
- import { ResolveOnce } from "@adviser/cement";
1
+ import { ResolveOnce, Result } from "@adviser/cement";
2
2
  import { isUserSettingDefaultUserSlug, } from "@vibes.diy/api-types";
3
3
  export class FireflyApiAdapter {
4
4
  svc;
@@ -51,12 +51,13 @@ export class FireflyApiAdapter {
51
51
  docId,
52
52
  });
53
53
  }
54
- async queryDocs(dbName = "default") {
54
+ async queryDocs(dbName = "default", filter) {
55
55
  const userSlug = await this.resolveUserSlug();
56
56
  return this.api.queryDocs({
57
57
  appSlug: this.svc.vibeApp.appSlug,
58
58
  userSlug,
59
59
  dbName,
60
+ ...(filter !== undefined ? { filter } : {}),
60
61
  });
61
62
  }
62
63
  async deleteDoc(docId, dbName = "default") {
@@ -76,6 +77,9 @@ export class FireflyApiAdapter {
76
77
  dbName,
77
78
  });
78
79
  }
80
+ async setDbAcl(_dbName, _acl) {
81
+ return Result.Err("setDbAcl not supported in standalone fireproof adapter");
82
+ }
79
83
  async putAsset(_blob, _mimeType) {
80
84
  throw new Error("file uploads not supported in standalone fireproof — coming in a future release");
81
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"firefly-api-adapter.js","sourceRoot":"","sources":["../jsr/firefly-api-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"firefly-api-adapter.js","sourceRoot":"","sources":["../jsr/firefly-api-adapter.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,26 @@ describe("FireflyApiAdapter", () => {
87
87
  await adapter.queryDocs("todos");
88
88
  expect(queryDocs).toHaveBeenCalledWith({ appSlug: "my-app", userSlug: "alice", dbName: "todos" });
89
89
  });
90
+ it("queryDocs passes filter hint to VibesDiyApi.queryDocs when provided", async () => {
91
+ const queryDocs = vi.fn(async () => Result.Ok({ type: "vibes.diy.res-query-docs", status: "ok", docs: [] }));
92
+ const api = fakeVibesDiyApi({ queryDocs });
93
+ const adapter = new FireflyApiAdapter(api, "my-app");
94
+ const filter = { field: "status", key: "active" };
95
+ await adapter.queryDocs("todos", filter);
96
+ expect(queryDocs).toHaveBeenCalledWith({
97
+ appSlug: "my-app",
98
+ userSlug: "alice",
99
+ dbName: "todos",
100
+ filter,
101
+ });
102
+ });
103
+ it("queryDocs omits filter key when filter is undefined", async () => {
104
+ const queryDocs = vi.fn(async () => Result.Ok({ type: "vibes.diy.res-query-docs", status: "ok", docs: [] }));
105
+ const api = fakeVibesDiyApi({ queryDocs });
106
+ const adapter = new FireflyApiAdapter(api, "my-app");
107
+ await adapter.queryDocs("todos");
108
+ expect(queryDocs).toHaveBeenCalledWith({ appSlug: "my-app", userSlug: "alice", dbName: "todos" });
109
+ });
90
110
  it("deleteDoc routes through VibesDiyApi.deleteDoc", async () => {
91
111
  const deleteDoc = vi.fn(async () => Result.Ok({ type: "vibes.diy.res-delete-doc", status: "ok", id: "doc-1" }));
92
112
  const api = fakeVibesDiyApi({ deleteDoc });
@@ -1 +1 @@
1
- {"version":3,"file":"firefly-api-adapter.test.js","sourceRoot":"","sources":["../jsr/firefly-api-adapter.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"firefly-api-adapter.test.js","sourceRoot":"","sources":["../jsr/firefly-api-adapter.test.ts"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { MsgBase, MsgBaseCfg, ReqEnsureAppSlug, ResEnsureAppSlug, ResultVibesDiy, VibesDiyError, MsgBox, ReqOpenChat, ReqListUserSlugAppSlug, ResListUserSlugAppSlug, ReqListRecentVibes, ResListRecentVibes, ReqPinRecentVibe, ResPinRecentVibe, ReqGetChatDetails, ResGetChatDetails, ReqGetAppByFsId, ResGetAppByFsId, VibesDiyApiIface, OptionalAuth, Req, LLMChat, ReqEnsureUserSettings, ResEnsureUserSettings, ReqListApplicationChats, ResListApplicationChats, ReqEnsureAppSettings, ResEnsureAppSettings, ReqSetModeFs, ResSetModeFs, ReqForkApp, ResForkApp, ReqFPCloudToken, ResFPCloudToken, ReqCreateInvite, ResCreateInvite, ReqRevokeInvite, ResRevokeInvite, ReqRedeemInvite, ResRedeemInviteOK, ReqHasAccessInvite, ResHasAccessInvite, ReqInviteSetRole, ResInviteSetRole, ReqListInviteGrants, ResListInviteGrants, ReqListRequestGrants, ResListRequestGrants, ReqSubscribeRequestGrants, ResSubscribeRequestGrants, ReqRequestAccess, ReqApproveRequest, ResApproveRequest, ReqRequestSetRole, ResRequestSetRole, ReqRevokeRequest, ResRevokeRequest, ReqHasAccessRequest, ResHasAccessRequest, ResRequestAccess, ReqListUserSlugBindings, ResListUserSlugBindings, ReqCreateUserSlugBinding, ResCreateUserSlugBinding, ReqDeleteUserSlugBinding, ResDeleteUserSlugBinding, ReqPutDoc, ResPutDoc, ReqGetDoc, ResGetDoc, ResGetDocNotFound, ReqQueryDocs, ResQueryDocs, ReqDeleteDoc, ResDeleteDoc, ReqSubscribeDocs, ResSubscribeDocs, ReqListDbNames, ResListDbNames, ReqListMembers, ResListMembers, ReqListMemberships, ResListMemberships, ReqAssetUploadGrant, ReqReportGrowthMemberships, ResReportGrowthMemberships, ReqReportGrowthVibesWithData, ResReportGrowthVibesWithData, ReqReportActiveMembers, ResReportActiveMembers, ReqReportTopVibesByMembers, ResReportTopVibesByMembers, ReqReportAttributionReferrers, ResReportAttributionReferrers, ReqReportCampaignHealth, ResReportCampaignHealth, ResAssetUploadGrant, EvtRequestGrant } from "@vibes.diy/api-types";
1
+ import { MsgBase, MsgBaseCfg, ReqEnsureAppSlug, ResEnsureAppSlug, ResultVibesDiy, VibesDiyError, MsgBox, ReqOpenChat, ReqListUserSlugAppSlug, ResListUserSlugAppSlug, ReqListRecentVibes, ResListRecentVibes, ReqPinRecentVibe, ResPinRecentVibe, ReqGetChatDetails, ResGetChatDetails, ReqGetAppByFsId, ResGetAppByFsId, VibesDiyApiIface, OptionalAuth, Req, LLMChat, ReqEnsureUserSettings, ResEnsureUserSettings, ReqListApplicationChats, ResListApplicationChats, ReqEnsureAppSettings, ResEnsureAppSettings, ReqSetModeFs, ResSetModeFs, ReqForkApp, ResForkApp, ReqFPCloudToken, ResFPCloudToken, ReqCreateInvite, ResCreateInvite, ReqRevokeInvite, ResRevokeInvite, ReqRedeemInvite, ResRedeemInviteOK, ReqHasAccessInvite, ResHasAccessInvite, ReqInviteSetRole, ResInviteSetRole, ReqListInviteGrants, ResListInviteGrants, ReqListRequestGrants, ResListRequestGrants, ReqSubscribeRequestGrants, ResSubscribeRequestGrants, ReqRequestAccess, ReqApproveRequest, ResApproveRequest, ReqRequestSetRole, ResRequestSetRole, ReqRevokeRequest, ResRevokeRequest, ReqHasAccessRequest, ResHasAccessRequest, ResRequestAccess, ReqListUserSlugBindings, ResListUserSlugBindings, ReqCreateUserSlugBinding, ResCreateUserSlugBinding, ReqDeleteUserSlugBinding, ResDeleteUserSlugBinding, ReqPutDoc, ResPutDoc, ReqGetDoc, ResGetDoc, ResGetDocNotFound, ReqQueryDocs, ResQueryDocs, ReqDeleteDoc, ResDeleteDoc, ReqSubscribeDocs, ResSubscribeDocs, ReqListDbNames, ResListDbNames, ReqListDmThreads, ResListDmThreads, ReqMarkDmRead, ResMarkDmRead, ReqListMembers, ResListMembers, ReqListMemberships, ResListMemberships, ReqAssetUploadGrant, ReqReportGrowthMemberships, ResReportGrowthMemberships, ReqReportGrowthVibesWithData, ResReportGrowthVibesWithData, ReqReportActiveMembers, ResReportActiveMembers, ReqReportTopVibesByMembers, ResReportTopVibesByMembers, ReqReportAttributionReferrers, ResReportAttributionReferrers, ReqReportCampaignHealth, ResReportCampaignHealth, ReqReportCampaignAdPreviews, ResReportCampaignAdPreviews, ResAssetUploadGrant, EvtRequestGrant, EvtUserNotification, ResSubscribeUserNotifications } from "@vibes.diy/api-types";
2
2
  import { Result } from "@adviser/cement";
3
3
  import { ClerkClaim, SuperThis } from "@fireproof/core-types-base";
4
4
  import { VibeDiyApiConnection } from "./api-connection.js";
@@ -42,6 +42,9 @@ export declare class VibesDiyApi implements VibesDiyApiIface<{
42
42
  private readonly requestGrantListeners;
43
43
  private readonly requestGrantDetachers;
44
44
  private readonly requestGrantSubscriptions;
45
+ private readonly userNotificationListeners;
46
+ private readonly userNotificationDetachers;
47
+ private userNotificationSubscribed;
45
48
  private currentConnection;
46
49
  private reconnectTimer;
47
50
  private closed;
@@ -109,6 +112,8 @@ export declare class VibesDiyApi implements VibesDiyApiIface<{
109
112
  deleteDoc(req: Req<ReqDeleteDoc>): Promise<Result<ResDeleteDoc, VibesDiyError>>;
110
113
  subscribeDocs(req: Req<ReqSubscribeDocs>): Promise<Result<ResSubscribeDocs, VibesDiyError>>;
111
114
  listDbNames(req: Req<ReqListDbNames>): Promise<Result<ResListDbNames, VibesDiyError>>;
115
+ listDmThreads(req: Req<ReqListDmThreads>): Promise<Result<ResListDmThreads, VibesDiyError>>;
116
+ markDmRead(req: Req<ReqMarkDmRead>): Promise<Result<ResMarkDmRead, VibesDiyError>>;
112
117
  listMembers(req: Req<ReqListMembers>): Promise<Result<ResListMembers, VibesDiyError>>;
113
118
  listMemberships(req: Req<ReqListMemberships>): Promise<Result<ResListMemberships, VibesDiyError>>;
114
119
  whoAmI(req: Req<ReqVibeWhoAmI>): Promise<Result<ResVibeWhoAmI, VibesDiyError>>;
@@ -119,10 +124,16 @@ export declare class VibesDiyApi implements VibesDiyApiIface<{
119
124
  reportTopVibesByMembers(req: Req<ReqReportTopVibesByMembers>): Promise<Result<ResReportTopVibesByMembers, VibesDiyError>>;
120
125
  reportAttributionReferrers(req: Req<ReqReportAttributionReferrers>): Promise<Result<ResReportAttributionReferrers, VibesDiyError>>;
121
126
  reportCampaignHealth(req: Req<ReqReportCampaignHealth>): Promise<Result<ResReportCampaignHealth, VibesDiyError>>;
127
+ reportCampaignAdPreviews(req: Req<ReqReportCampaignAdPreviews>): Promise<Result<ResReportCampaignAdPreviews, VibesDiyError>>;
122
128
  private attachDocChangedToConnection;
123
129
  onDocChanged(fn: (userSlug: string, appSlug: string, dbName: string, docId: string) => void): () => void;
124
130
  private attachRequestGrantToConnection;
125
131
  onRequestGrant(fn: (evt: EvtRequestGrant) => void): () => void;
132
+ private attachUserNotificationToConnection;
133
+ subscribeUserNotifications(req: Req<{
134
+ auth?: unknown;
135
+ }>): Promise<Result<ResSubscribeUserNotifications, VibesDiyError>>;
136
+ onUserNotification(fn: (evt: EvtUserNotification) => void): () => void;
126
137
  get _testInternals(): {
127
138
  docSubscriptions: readonly {
128
139
  userSlug: string;
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { msgBase, resError, isResError, mkResError, sectionEvent, isResEnsureAppSlug, isResOpenChat, isResPromptChatSection, isResListUserSlugAppSlug, isResListRecentVibes, isResPinRecentVibe, isResGetChatDetails, isResGetAppByFsId, isResEnsureUserSettings, isResListApplicationChats, isResEnsureAppSettings, isResSetModeFs, isResForkApp, isResFPCloudToken, isResCreateInvite, isResRevokeInvite, isResRedeemInvite, isResHasAccessInvite, isResInviteSetRole, isResListInviteGrants, isResListRequestGrants, isResSubscribeRequestGrants, isResApproveRequest, isResRequestSetRole, isResRevokeRequest, isResRequestAccessFlow, isResHasAccessRequestFlow, isResListUserSlugBindings, isResCreateUserSlugBinding, isResDeleteUserSlugBinding, isResListModels, isPromptLLMStyle, isResPutDoc, isResGetDoc, isResGetDocNotFound, isResQueryDocs, isResDeleteDoc, isResSubscribeDocs, isResListDbNames, isResListMembers, isResListMemberships, isResReportGrowthMemberships, isResReportGrowthVibesWithData, isResReportActiveMembers, isResReportTopVibesByMembers, isResReportAttributionReferrers, isResReportCampaignHealth, isResAssetUploadGrant, isEvtDocChanged, isEvtRequestGrant, isFSUpdate, vibeFile, } from "@vibes.diy/api-types";
1
+ import { msgBase, resError, isResError, mkResError, sectionEvent, isResEnsureAppSlug, isResOpenChat, isResPromptChatSection, isResListUserSlugAppSlug, isResListRecentVibes, isResPinRecentVibe, isResGetChatDetails, isResGetAppByFsId, isResEnsureUserSettings, isResListApplicationChats, isResEnsureAppSettings, isResSetModeFs, isResForkApp, isResFPCloudToken, isResCreateInvite, isResRevokeInvite, isResRedeemInvite, isResHasAccessInvite, isResInviteSetRole, isResListInviteGrants, isResListRequestGrants, isResSubscribeRequestGrants, isResApproveRequest, isResRequestSetRole, isResRevokeRequest, isResRequestAccessFlow, isResHasAccessRequestFlow, isResListUserSlugBindings, isResCreateUserSlugBinding, isResDeleteUserSlugBinding, isResListModels, isPromptLLMStyle, isResPutDoc, isResGetDoc, isResGetDocNotFound, isResQueryDocs, isResDeleteDoc, isResSubscribeDocs, isResListDbNames, isResListDmThreads, isResMarkDmRead, isResListMembers, isResListMemberships, isResReportGrowthMemberships, isResReportGrowthVibesWithData, isResReportActiveMembers, isResReportTopVibesByMembers, isResReportAttributionReferrers, isResReportCampaignHealth, isResReportCampaignAdPreviews, isResAssetUploadGrant, isEvtDocChanged, isEvtRequestGrant, isEvtUserNotification, isResSubscribeUserNotifications, isFSUpdate, vibeFile, } from "@vibes.diy/api-types";
2
2
  import { Evento, Future, JSONEnDecoderSingleton, Result, Option, EventoResult, Lazy, BuildURI, } from "@adviser/cement";
3
3
  import { ensureSuperThis } from "@fireproof/core-runtime";
4
4
  import { W3CWebSocketEventEventoEnDecoder } from "@vibes.diy/api-pkg";
@@ -15,6 +15,9 @@ export class VibesDiyApi {
15
15
  requestGrantListeners = [];
16
16
  requestGrantDetachers = new Map();
17
17
  requestGrantSubscriptions = [];
18
+ userNotificationListeners = [];
19
+ userNotificationDetachers = new Map();
20
+ userNotificationSubscribed = false;
18
21
  currentConnection;
19
22
  reconnectTimer;
20
23
  closed = false;
@@ -83,6 +86,15 @@ export class VibesDiyApi {
83
86
  this.subscribeRequestGrants(sub).catch((_e) => {
84
87
  });
85
88
  }
89
+ for (const fn of this.userNotificationListeners) {
90
+ this.userNotificationDetachers.get(fn)?.();
91
+ const detach = this.attachUserNotificationToConnection(conn, fn);
92
+ this.userNotificationDetachers.set(fn, detach);
93
+ }
94
+ if (this.userNotificationSubscribed) {
95
+ void this.subscribeUserNotifications({}).catch((_e) => {
96
+ });
97
+ }
86
98
  conn.onClose(() => {
87
99
  if (this.currentConnection === conn) {
88
100
  this.currentConnection = undefined;
@@ -141,9 +153,24 @@ export class VibesDiyApi {
141
153
  if (msg instanceof type.errors) {
142
154
  return Result.Ok(Option.None());
143
155
  }
144
- if (msg.tid === tid && (msgParam.resMatch(msg.payload) || isResError(msg.payload))) {
156
+ const tidMatch = msg.tid === tid;
157
+ if (!tidMatch) {
158
+ return Result.Ok(Option.None());
159
+ }
160
+ const resMatch = msgParam.resMatch(msg.payload);
161
+ const isErr = isResError(msg.payload);
162
+ if (resMatch || isErr) {
145
163
  return Result.Ok(Option.Some(trigger.enRequest));
146
164
  }
165
+ if (!resMatch && !isErr) {
166
+ const payloadType = msg.payload?.type;
167
+ if (typeof payloadType === "string" &&
168
+ payloadType.startsWith("vibes.diy.res-") &&
169
+ payloadType !== "vibes.diy.res-progress") {
170
+ waitForResponse.resolve(Result.Err(mkResError(`Response schema mismatch for ${payloadType}`, "response-schema-error")));
171
+ return Result.Ok(Option.None());
172
+ }
173
+ }
147
174
  return Result.Ok(Option.None());
148
175
  },
149
176
  handle: async (trigger) => {
@@ -168,18 +195,29 @@ export class VibesDiyApi {
168
195
  resetIdleTimer();
169
196
  const unreg = conn.onMessage((event) => {
170
197
  resetIdleTimer();
171
- evento.trigger({
198
+ const triggerPromise = evento.trigger({
172
199
  request: event,
173
200
  send: (async (_ctx, data) => {
174
201
  const res = await this.send(data, { tid });
175
202
  return res;
176
203
  }),
177
204
  });
205
+ Promise.resolve(triggerPromise).catch((err) => {
206
+ console.error("[request:onMessage] evento.trigger threw:", err);
207
+ });
208
+ });
209
+ const unregClose = conn.onClose(() => {
210
+ waitForResponse.resolve(Result.Err(mkResError("WebSocket closed before response (server disconnected)", "websocket-closed")));
211
+ });
212
+ const unregError = conn.onError(() => {
213
+ waitForResponse.resolve(Result.Err(mkResError("WebSocket error before response received", "websocket-error")));
178
214
  });
179
215
  const cleanup = () => {
180
216
  if (timer !== undefined)
181
217
  clearTimeout(timer);
182
218
  unreg();
219
+ unregClose();
220
+ unregError();
183
221
  };
184
222
  const rReq = await this.send(req, { tid });
185
223
  if (rReq.isErr()) {
@@ -346,6 +384,12 @@ export class VibesDiyApi {
346
384
  listDbNames(req) {
347
385
  return this.request({ ...req, type: "vibes.diy.req-list-db-names" }, { resMatch: isResListDbNames });
348
386
  }
387
+ listDmThreads(req) {
388
+ return this.request({ ...req, type: "vibes.diy.req-list-dm-threads" }, { resMatch: isResListDmThreads });
389
+ }
390
+ markDmRead(req) {
391
+ return this.request({ ...req, type: "vibes.diy.req-mark-dm-read" }, { resMatch: isResMarkDmRead });
392
+ }
349
393
  listMembers(req) {
350
394
  return this.request({ ...req, type: "vibes.diy.req-list-members" }, { resMatch: isResListMembers });
351
395
  }
@@ -376,6 +420,9 @@ export class VibesDiyApi {
376
420
  reportCampaignHealth(req) {
377
421
  return this.request({ ...req, type: "vibes.diy.req-report-campaign-health" }, { resMatch: isResReportCampaignHealth });
378
422
  }
423
+ reportCampaignAdPreviews(req) {
424
+ return this.request({ ...req, type: "vibes.diy.req-report-campaign-ad-previews" }, { resMatch: isResReportCampaignAdPreviews });
425
+ }
379
426
  attachDocChangedToConnection(conn, fn) {
380
427
  const unsub = conn.onMessage((wsEvent) => {
381
428
  if (wsEvent.type !== "MessageEvent")
@@ -462,6 +509,56 @@ export class VibesDiyApi {
462
509
  detach?.();
463
510
  };
464
511
  }
512
+ attachUserNotificationToConnection(conn, fn) {
513
+ const unsub = conn.onMessage((wsEvent) => {
514
+ if (wsEvent.type !== "MessageEvent")
515
+ return;
516
+ const raw = wsEvent.event.data;
517
+ const textPromise = raw instanceof Blob
518
+ ? raw.text()
519
+ : Promise.resolve(typeof raw === "string" ? raw : new TextDecoder().decode(raw));
520
+ textPromise
521
+ .then((text) => {
522
+ const parsed = JSON.parse(text);
523
+ const msg = msgBase(parsed);
524
+ if (!(msg instanceof type.errors) && isEvtUserNotification(msg.payload)) {
525
+ fn(msg.payload);
526
+ }
527
+ })
528
+ .catch((_e) => {
529
+ });
530
+ });
531
+ return () => {
532
+ unsub();
533
+ };
534
+ }
535
+ async subscribeUserNotifications(req) {
536
+ const result = await this.request({ ...req, type: "vibes.diy.req-subscribe-user-notifications" }, { resMatch: isResSubscribeUserNotifications });
537
+ if (result.isOk()) {
538
+ this.userNotificationSubscribed = true;
539
+ }
540
+ return result;
541
+ }
542
+ onUserNotification(fn) {
543
+ this.userNotificationListeners.push(fn);
544
+ const conn = this.currentConnection;
545
+ if (conn) {
546
+ const detach = this.attachUserNotificationToConnection(conn, fn);
547
+ this.userNotificationDetachers.set(fn, detach);
548
+ }
549
+ else {
550
+ this.getReadyConnection().catch((_e) => {
551
+ });
552
+ }
553
+ return () => {
554
+ const idx = this.userNotificationListeners.indexOf(fn);
555
+ if (idx >= 0)
556
+ this.userNotificationListeners.splice(idx, 1);
557
+ const detach = this.userNotificationDetachers.get(fn);
558
+ this.userNotificationDetachers.delete(fn);
559
+ detach?.();
560
+ };
561
+ }
465
562
  get _testInternals() {
466
563
  return {
467
564
  docSubscriptions: this.docSubscriptions,
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/api-impl",
3
- "version": "2.4.3",
3
+ "version": "2.4.4",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "scripts": {
@@ -12,10 +12,10 @@
12
12
  "@fireproof/core-runtime": "~0.24.19",
13
13
  "@fireproof/core-types-base": "~0.24.19",
14
14
  "@fireproof/core-types-protocols-dashboard": "~0.24.19",
15
- "@vibes.diy/api-pkg": "2.4.3",
16
- "@vibes.diy/api-types": "2.4.3",
17
- "@vibes.diy/call-ai-v2": "2.4.3",
18
- "@vibes.diy/vibe-types": "2.4.3",
15
+ "@vibes.diy/api-pkg": "2.4.4",
16
+ "@vibes.diy/api-types": "2.4.4",
17
+ "@vibes.diy/call-ai-v2": "2.4.4",
18
+ "@vibes.diy/vibe-types": "2.4.4",
19
19
  "arktype": "~2.2.0",
20
20
  "ws": "~8.20.0"
21
21
  },
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,74 @@
1
+ import { describe, expect, it, vi } from "vitest";
2
+ import { OnFunc, Result } from "@adviser/cement";
3
+ import { VibesDiyApi } from "./index.js";
4
+ function createMockConnection() {
5
+ const onMessage = OnFunc();
6
+ const onClose = OnFunc();
7
+ const onError = OnFunc();
8
+ const connection = {
9
+ ctx: {},
10
+ onMessage,
11
+ onClose,
12
+ onError,
13
+ send: () => Result.Ok(undefined),
14
+ close: async () => undefined,
15
+ };
16
+ const emitMessage = (message) => {
17
+ const payload = new Blob([new TextEncoder().encode(JSON.stringify(message))]);
18
+ const evt = {
19
+ type: "MessageEvent",
20
+ event: { data: payload },
21
+ };
22
+ onMessage.invoke(evt);
23
+ };
24
+ return { connection, emitMessage };
25
+ }
26
+ function createApi(connection) {
27
+ class TestVibesDiyApi extends VibesDiyApi {
28
+ async getReadyConnection() {
29
+ return connection;
30
+ }
31
+ }
32
+ const getToken = async () => Result.Ok({});
33
+ return new TestVibesDiyApi({
34
+ apiUrl: "http://localhost:9999/api",
35
+ getToken,
36
+ timeoutMs: 2000,
37
+ });
38
+ }
39
+ describe("VibesDiyApi.request", () => {
40
+ it("does not run resMatch for messages with a non-matching tid", async () => {
41
+ const { connection, emitMessage } = createMockConnection();
42
+ const api = createApi(connection);
43
+ const tid = "target-tid";
44
+ const resMatch = vi.fn(() => false);
45
+ const requestPromise = api.request({}, { tid, resMatch });
46
+ emitMessage({
47
+ tid: "other-tid",
48
+ src: "vibes.diy.server",
49
+ dst: "vibes.diy.client.test",
50
+ ttl: 10,
51
+ payload: {
52
+ type: "vibes.diy.res-error",
53
+ error: { message: "ignore", code: "ignore" },
54
+ },
55
+ });
56
+ await new Promise((resolve) => setTimeout(resolve, 0));
57
+ expect(resMatch).not.toHaveBeenCalled();
58
+ emitMessage({
59
+ tid,
60
+ src: "vibes.diy.server",
61
+ dst: "vibes.diy.client.test",
62
+ ttl: 10,
63
+ payload: {
64
+ type: "vibes.diy.res-error",
65
+ error: { message: "expected", code: "expected" },
66
+ },
67
+ });
68
+ const result = await requestPromise;
69
+ expect(result.isErr()).toBe(true);
70
+ expect(result.Err()).toMatchObject({ error: { code: "expected" } });
71
+ expect(resMatch).toHaveBeenCalledTimes(1);
72
+ });
73
+ });
74
+ //# sourceMappingURL=request-validation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-validation.test.js","sourceRoot":"","sources":["../jsr/request-validation.test.ts"],"names":[],"mappings":"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"}