@vibes.diy/api-queue 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.
@@ -16,7 +16,7 @@ export const evtAppSettingEvento = {
16
16
  handle: async (ctx) => {
17
17
  const _env = ctx.ctx.getOrThrow("queueCtx");
18
18
  const _payload = ctx.validated.payload;
19
- console.log("Handling evt-app-setting event with payload:", _payload);
19
+ console.info("Handling evt-app-setting event with payload:", _payload);
20
20
  return Result.Ok(EventoResult.Continue);
21
21
  },
22
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"evt-app-setting.js","sourceRoot":"","sources":["../../jsr/handlers/evt-app-setting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAoB,MAAM,EAAE,MAAM,EAAoB,MAAM,iBAAiB,CAAC;AAClH,OAAO,EAAiC,eAAe,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,MAAM,CAAC,MAAM,mBAAmB,GAAyD;IACvF,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,GAAG,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAA6B,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,GAA4D,EAAqC,EAAE;QAChH,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAQ,UAAU,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE,QAAQ,CAAC,CAAC;QAEtE,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"evt-app-setting.js","sourceRoot":"","sources":["../../jsr/handlers/evt-app-setting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAoB,MAAM,EAAE,MAAM,EAAoB,MAAM,iBAAiB,CAAC;AAClH,OAAO,EAAiC,eAAe,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,MAAM,CAAC,MAAM,mBAAmB,GAAyD;IACvF,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,GAAG,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAA6B,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,GAA4D,EAAqC,EAAE;QAChH,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAQ,UAAU,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAE,QAAQ,CAAC,CAAC;QAEvE,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACF,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { EventoResult, Option, Result } from "@adviser/cement";
2
2
  import { isEvtCommentPosted, msgBase } from "@vibes.diy/api-types";
3
3
  import { type } from "arktype";
4
+ import { eq } from "drizzle-orm/sql/expressions";
4
5
  import { buildCommentEmbed, postEmbed } from "../intern/post-to-discord.js";
5
6
  export const evtCommentPostedEvento = {
6
7
  hash: "evt-comment-posted",
@@ -18,6 +19,21 @@ export const evtCommentPostedEvento = {
18
19
  const qctx = ctx.ctx.getOrThrow("queueCtx");
19
20
  const payload = ctx.validated.payload;
20
21
  await postEmbed(qctx, buildCommentEmbed(qctx, payload));
22
+ const usb = qctx.sql.tables.userSlugBinding;
23
+ const ownerRow = await qctx.sql.db
24
+ .select({ userId: usb.userId })
25
+ .from(usb)
26
+ .where(eq(usb.userSlug, payload.userSlug))
27
+ .limit(1)
28
+ .then((r) => r[0] ?? null);
29
+ if (ownerRow?.userId) {
30
+ await qctx.notifyUser(ownerRow.userId, {
31
+ type: "vibes.diy.evt-user-notification",
32
+ notificationType: "comment-posted",
33
+ userSlug: payload.userSlug,
34
+ appSlug: payload.appSlug,
35
+ });
36
+ }
21
37
  return Result.Ok(EventoResult.Continue);
22
38
  },
23
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"evt-comment-posted.js","sourceRoot":"","sources":["../../jsr/handlers/evt-comment-posted.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAoB,MAAM,EAAE,MAAM,EAAoB,MAAM,iBAAiB,CAAC;AAClH,OAAO,EAA6B,kBAAkB,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAE5E,MAAM,CAAC,MAAM,sBAAsB,GAA4D;IAC7F,IAAI,EAAE,oBAAoB;IAC1B,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,GAAG,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAgC,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,GAA+D,EAAqC,EAAE;QACnH,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAW,UAAU,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;QACtC,MAAM,SAAS,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACxD,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"evt-comment-posted.js","sourceRoot":"","sources":["../../jsr/handlers/evt-comment-posted.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAoB,MAAM,EAAE,MAAM,EAAoB,MAAM,iBAAiB,CAAC;AAClH,OAAO,EAA6B,kBAAkB,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAE5E,MAAM,CAAC,MAAM,sBAAsB,GAA4D;IAC7F,IAAI,EAAE,oBAAoB;IAC1B,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,GAAG,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAgC,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,GAA+D,EAAqC,EAAE;QACnH,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAW,UAAU,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;QACtC,MAAM,SAAS,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAExD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE;aAC/B,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;aAC9B,IAAI,CAAC,GAAG,CAAC;aACT,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;aACzC,KAAK,CAAC,CAAC,CAAC;aACR,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAE7B,IAAI,QAAQ,EAAE,MAAM,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE;gBACrC,IAAI,EAAE,iCAAiC;gBACvC,gBAAgB,EAAE,gBAAgB;gBAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { EventoHandler } from "@adviser/cement";
2
+ import { EvtDmReceived, MsgBase } from "@vibes.diy/api-types";
3
+ export declare const evtDmReceivedEvento: EventoHandler<unknown, MsgBase<EvtDmReceived>, void>;
@@ -0,0 +1,24 @@
1
+ import { EventoResult, Option, Result } from "@adviser/cement";
2
+ import { isEvtDmReceived, msgBase } from "@vibes.diy/api-types";
3
+ import { type } from "arktype";
4
+ import { buildDmEmbed, postEmbed } from "../intern/post-to-discord.js";
5
+ export const evtDmReceivedEvento = {
6
+ hash: "evt-dm-received",
7
+ validate: async (ctx) => {
8
+ const msg = msgBase(ctx.enRequest);
9
+ if (msg instanceof type.errors) {
10
+ return Result.Ok(Option.None());
11
+ }
12
+ if (!isEvtDmReceived(msg.payload)) {
13
+ return Result.Ok(Option.None());
14
+ }
15
+ return Result.Ok(Option.Some(msg));
16
+ },
17
+ handle: async (ctx) => {
18
+ const qctx = ctx.ctx.getOrThrow("queueCtx");
19
+ const payload = ctx.validated.payload;
20
+ await postEmbed(qctx, buildDmEmbed(qctx, payload));
21
+ return Result.Ok(EventoResult.Continue);
22
+ },
23
+ };
24
+ //# sourceMappingURL=evt-dm-received.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evt-dm-received.js","sourceRoot":"","sources":["../../jsr/handlers/evt-dm-received.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAoB,MAAM,EAAE,MAAM,EAAoB,MAAM,iBAAiB,CAAC;AAClH,OAAO,EAA0B,eAAe,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEvE,MAAM,CAAC,MAAM,mBAAmB,GAAyD;IACvF,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,GAAG,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAA6B,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,GAA4D,EAAqC,EAAE;QAChH,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAW,UAAU,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;QACtC,MAAM,SAAS,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACnD,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACF,CAAC"}
@@ -18,7 +18,7 @@ export const evtInviteGrantEvento = {
18
18
  handle: async (ctx) => {
19
19
  const qctx = ctx.ctx.getOrThrow("queueCtx");
20
20
  const payload = ctx.validated.payload;
21
- console.log("Handling evt-invite-grant event with payload:", payload);
21
+ console.info("Handling evt-invite-grant event with payload:", payload);
22
22
  if (payload.op === "delete") {
23
23
  return Result.Ok(EventoResult.Continue);
24
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"evt-invite-grant.js","sourceRoot":"","sources":["../../jsr/handlers/evt-invite-grant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evt-invite-grant.js","sourceRoot":"","sources":["../../jsr/handlers/evt-invite-grant.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,21 @@ export const evtNewFsIdEvento = {
32
32
  .limit(1);
33
33
  const publishCount = rows[0]?.releaseSeq;
34
34
  await postEmbed(qctx, buildPublishEmbed(qctx, payload, publishCount));
35
+ const usb = qctx.sql.tables.userSlugBinding;
36
+ const ownerRow = await qctx.sql.db
37
+ .select({ userId: usb.userId })
38
+ .from(usb)
39
+ .where(eq(usb.userSlug, payload.userSlug))
40
+ .limit(1)
41
+ .then((r) => r[0] ?? null);
42
+ if (ownerRow?.userId) {
43
+ await qctx.notifyUser(ownerRow.userId, {
44
+ type: "vibes.diy.evt-user-notification",
45
+ notificationType: "vibe-published",
46
+ userSlug: payload.userSlug,
47
+ appSlug: payload.appSlug,
48
+ });
49
+ }
35
50
  }
36
51
  return Result.Ok(EventoResult.Continue);
37
52
  },
@@ -1 +1 @@
1
- {"version":3,"file":"evt-new-fs-id.js","sourceRoot":"","sources":["../../jsr/handlers/evt-new-fs-id.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evt-new-fs-id.js","sourceRoot":"","sources":["../../jsr/handlers/evt-new-fs-id.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,23 @@ export const evtRequestGrantEvento = {
24
24
  else if (payload.grant.state === "approved") {
25
25
  await postEmbed(qctx, buildRequestApprovedEmbed(qctx, payload, payload.grant.role));
26
26
  }
27
+ const requesterUserId = payload.grant.foreignUserId;
28
+ if (payload.grant.state === "approved") {
29
+ await qctx.notifyUser(requesterUserId, {
30
+ type: "vibes.diy.evt-user-notification",
31
+ notificationType: "request-approved",
32
+ userSlug: payload.grant.userSlug,
33
+ appSlug: payload.grant.appSlug,
34
+ });
35
+ }
36
+ if (payload.grant.state === "revoked") {
37
+ await qctx.notifyUser(requesterUserId, {
38
+ type: "vibes.diy.evt-user-notification",
39
+ notificationType: "request-revoked",
40
+ userSlug: payload.grant.userSlug,
41
+ appSlug: payload.grant.appSlug,
42
+ });
43
+ }
27
44
  if (!(payload.grant.foreignInfo.claims?.params.email && payload.grant.foreignInfo.givenEmail)) {
28
45
  return Result.Ok(EventoResult.Continue);
29
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"evt-request-grant.js","sourceRoot":"","sources":["../../jsr/handlers/evt-request-grant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evt-request-grant.js","sourceRoot":"","sources":["../../jsr/handlers/evt-request-grant.ts"],"names":[],"mappings":"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"}
package/icon-shotter.js CHANGED
@@ -55,7 +55,7 @@ export async function processIconGenEvent(qctx, evt) {
55
55
  if (rGen.isErr())
56
56
  return Result.Err(rGen);
57
57
  const { bytes, mime, model } = rGen.Ok();
58
- console.log(`Icon generated for ${evt.userSlug}/${evt.appSlug} via ${model}: ${bytes.byteLength} bytes (${mime})`);
58
+ console.info(`Icon generated for ${evt.userSlug}/${evt.appSlug} via ${model}: ${bytes.byteLength} bytes (${mime})`);
59
59
  const rStore = await storeIcon(qctx, {
60
60
  userSlug: evt.userSlug,
61
61
  appSlug: evt.appSlug,
@@ -1 +1 @@
1
- {"version":3,"file":"icon-shotter.js","sourceRoot":"","sources":["../jsr/icon-shotter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAc,YAAY,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,MAAM,UAAU,GAAG,wBAAwB,CAAC;AAC5C,MAAM,mBAAmB,GAAG,yBAAyB,CAAC;AAOtD,KAAK,UAAU,eAAe,CAAC,IAAc,EAAE,QAAgB,EAAE,OAAe;IAC9E,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CACvC,EAAE;SACC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;SACjD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;SACxB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;SAC9F,KAAK,CAAC,CAAC,CAAC;SACR,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrB,CAAC;IACF,IAAI,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACtB,IAAI,CAAC,GAAG;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACtC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;IAC1F,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/F,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7E,OAAO,MAAM,CAAC,EAAE,CAAC;QACf,WAAW,EAAE,SAAS,EAAE,WAAW;QACnC,iBAAiB,EAAE,IAAI,EAAE,aAAa;KACvC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAc,EAAE,GAAe;IACvE,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACvE,IAAI,OAAO,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;IAC5B,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,CAAC,WAAW;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,iBAAiB,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;QAC1E,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;IAClC,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC;QAC9B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,KAAK,EAAE,UAAU;QACjB,aAAa,EAAE,mBAAmB;QAClC,MAAM,EAAE,GAAG,CAAC,eAAe;QAC3B,SAAS,EAAE,GAAG,CAAC,mBAAmB;QAClC,WAAW,EAAE,GAAG,CAAC,YAAY;KAC9B,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,sBAAsB,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,OAAO,QAAQ,KAAK,KAAK,KAAK,CAAC,UAAU,WAAW,IAAI,GAAG,CAAC,CAAC;IACnH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE;QACnC,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,KAAK;QACL,IAAI;QACJ,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"icon-shotter.js","sourceRoot":"","sources":["../jsr/icon-shotter.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { Result } from "@adviser/cement";
2
- import { EvtCommentPosted, EvtInviteGrant, EvtNewFsId, EvtRequestGrant, Role } from "@vibes.diy/api-types";
2
+ import { EvtCommentPosted, EvtDmReceived, EvtInviteGrant, EvtNewFsId, EvtRequestGrant, Role } from "@vibes.diy/api-types";
3
3
  import { DiscordWebhookBody, QueueCtx } from "../queue-ctx.js";
4
4
  export declare function buildPublishEmbed(vctx: QueueCtx, payload: EvtNewFsId, publishCount?: number): DiscordWebhookBody;
5
5
  export declare function buildCommentEmbed(vctx: QueueCtx, payload: EvtCommentPosted): DiscordWebhookBody;
6
6
  export declare function buildInviteAcceptedEmbed(vctx: QueueCtx, payload: EvtInviteGrant): DiscordWebhookBody;
7
7
  export declare function buildRequestPendingEmbed(vctx: QueueCtx, payload: EvtRequestGrant): DiscordWebhookBody;
8
8
  export declare function buildRequestApprovedEmbed(vctx: QueueCtx, payload: EvtRequestGrant, role: Role): DiscordWebhookBody;
9
+ export declare function buildDmEmbed(vctx: QueueCtx, payload: EvtDmReceived): DiscordWebhookBody;
9
10
  export declare function postEmbed(vctx: QueueCtx, body: DiscordWebhookBody): Promise<Result<void>>;
@@ -99,6 +99,22 @@ export function buildRequestApprovedEmbed(vctx, payload, role) {
99
99
  ],
100
100
  };
101
101
  }
102
+ export function buildDmEmbed(vctx, payload) {
103
+ return {
104
+ content: `💬 New DM from **${payload.senderUserSlug}** → **${payload.recipientUserSlug}**`,
105
+ embeds: [
106
+ {
107
+ title: `${payload.senderUserSlug} → ${payload.recipientUserSlug}`,
108
+ color: DISCORD_EMBED_COLOR,
109
+ fields: [
110
+ { name: "From", value: payload.senderUserSlug, inline: true },
111
+ { name: "To", value: payload.recipientUserSlug, inline: true },
112
+ ...(payload.bodySnippet ? [{ name: "Preview", value: payload.bodySnippet, inline: false }] : []),
113
+ ],
114
+ },
115
+ ],
116
+ };
117
+ }
102
118
  export async function postEmbed(vctx, body) {
103
119
  const r = await vctx.postToDiscord(body);
104
120
  if (r.isErr()) {
@@ -1 +1 @@
1
- {"version":3,"file":"post-to-discord.js","sourceRoot":"","sources":["../../jsr/intern/post-to-discord.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post-to-discord.js","sourceRoot":"","sources":["../../jsr/intern/post-to-discord.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/api-queue",
3
- "version": "2.4.3",
3
+ "version": "2.4.4",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "scripts": {
@@ -15,10 +15,10 @@
15
15
  "@cloudflare/puppeteer": "~1.1.0",
16
16
  "@fireproof/core-runtime": "~0.24.19",
17
17
  "@fireproof/core-types-base": "~0.24.19",
18
- "@vibes.diy/api-pkg": "2.4.3",
19
- "@vibes.diy/api-sql": "2.4.3",
20
- "@vibes.diy/api-svc": "2.4.3",
21
- "@vibes.diy/api-types": "2.4.3",
18
+ "@vibes.diy/api-pkg": "2.4.4",
19
+ "@vibes.diy/api-sql": "2.4.4",
20
+ "@vibes.diy/api-svc": "2.4.4",
21
+ "@vibes.diy/api-types": "2.4.4",
22
22
  "arktype": "~2.2.0",
23
23
  "drizzle-orm": "~0.45.2"
24
24
  },
package/queue-ctx.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Result } from "@adviser/cement";
2
2
  import { RawEmailWithoutFrom, S3Api } from "@vibes.diy/api-types";
3
- import { D1Database, Fetcher, R2Bucket } from "@cloudflare/workers-types";
3
+ import { D1Database, DurableObjectNamespace, Fetcher, R2Bucket } from "@cloudflare/workers-types";
4
4
  import { cfDrizzle, CreateSQLPeerParams, VibesApiTables } from "@vibes.diy/api-sql";
5
5
  import { SuperThis } from "@fireproof/core-types-base";
6
6
  export interface QueueCtxParams {
@@ -9,6 +9,7 @@ export interface QueueCtxParams {
9
9
  BROWSER: Fetcher;
10
10
  D1: D1Database;
11
11
  FS_IDS_BUCKET?: R2Bucket;
12
+ USER_NOTIFY?: DurableObjectNamespace;
12
13
  };
13
14
  vibes: {
14
15
  env: {
@@ -59,4 +60,10 @@ export declare class QueueCtx {
59
60
  sendEmail(rm: RawEmailWithoutFrom): Promise<Result<{
60
61
  result: unknown;
61
62
  }>>;
63
+ notifyUser(userId: string, evt: {
64
+ type: "vibes.diy.evt-user-notification";
65
+ notificationType: string;
66
+ userSlug: string;
67
+ appSlug: string;
68
+ }): Promise<void>;
62
69
  }
package/queue-ctx.js CHANGED
@@ -27,7 +27,7 @@ export class QueueCtx {
27
27
  async postToDiscord(body) {
28
28
  const webhookUrl = this.params.vibes.env.DISCORD_WEBHOOK_URL;
29
29
  if (webhookUrl === undefined) {
30
- console.log("DISCORD_WEBHOOK_URL not set — skipping Discord notification");
30
+ console.warn("DISCORD_WEBHOOK_URL not set — skipping Discord notification");
31
31
  return Result.Ok();
32
32
  }
33
33
  const rRes = await exception2Result(() => fetch(webhookUrl, {
@@ -67,5 +67,28 @@ export class QueueCtx {
67
67
  const rJson = exception2Result(() => JSON.parse(jsonTxt));
68
68
  return Result.Ok({ result: rJson.isOk() ? rJson.Ok() : jsonTxt });
69
69
  }
70
+ async notifyUser(userId, evt) {
71
+ const ns = this.params.cf?.USER_NOTIFY;
72
+ if (!ns)
73
+ return;
74
+ try {
75
+ const id = ns.idFromName(userId);
76
+ const stub = ns.get(id);
77
+ await stub.fetch(new Request("https://internal/user-notify", {
78
+ method: "POST",
79
+ body: JSON.stringify({
80
+ action: "notify",
81
+ targetUserId: userId,
82
+ senderShardId: "queue",
83
+ senderConnId: "queue",
84
+ evt,
85
+ }),
86
+ headers: { "Content-Type": "application/json" },
87
+ }));
88
+ }
89
+ catch (e) {
90
+ console.error("[QueueCtx] notifyUser failed for userId:", userId.slice(0, 8), e);
91
+ }
92
+ }
70
93
  }
71
94
  //# sourceMappingURL=queue-ctx.js.map
package/queue-ctx.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"queue-ctx.js","sourceRoot":"","sources":["../jsr/queue-ctx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue-ctx.js","sourceRoot":"","sources":["../jsr/queue-ctx.ts"],"names":[],"mappings":"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"}
package/queue-evento.js CHANGED
@@ -5,10 +5,11 @@ import { evtIconGenEvento } from "./handlers/evt-icon-gen.js";
5
5
  import { evtInviteGrantEvento } from "./handlers/evt-invite-grant.js";
6
6
  import { evtRequestGrantEvento } from "./handlers/evt-request-grant.js";
7
7
  import { evtCommentPostedEvento } from "./handlers/evt-comment-posted.js";
8
+ import { evtDmReceivedEvento } from "./handlers/evt-dm-received.js";
8
9
  import { MsgBaseEventoEnDecoder } from "@vibes.diy/api-pkg";
9
10
  export const vibesQueueEvento = Lazy(() => {
10
11
  const evento = new Evento(new MsgBaseEventoEnDecoder());
11
- evento.push(evtNewFsIdEvento, evtAppSettingEvento, evtIconGenEvento, evtInviteGrantEvento, evtRequestGrantEvento, evtCommentPostedEvento, {
12
+ evento.push(evtNewFsIdEvento, evtAppSettingEvento, evtIconGenEvento, evtInviteGrantEvento, evtRequestGrantEvento, evtCommentPostedEvento, evtDmReceivedEvento, {
12
13
  type: EventoType.Error,
13
14
  hash: "queue-error-handler",
14
15
  handle: async (ctx) => {
@@ -1 +1 @@
1
- {"version":3,"file":"queue-evento.js","sourceRoot":"","sources":["../jsr/queue-evento.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE;IACxC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EAStB;QACE,IAAI,EAAE,UAAU,CAAC,KAAK;QACtB,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,KAAK,EAAG,GAAG,CAAC,KAA6B,EAAE,KAAK,CAAC,CAAC;YACtG,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;KACF,CACF,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"queue-evento.js","sourceRoot":"","sources":["../jsr/queue-evento.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE;IACxC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EASnB;QACE,IAAI,EAAE,UAAU,CAAC,KAAK;QACtB,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,KAAK,EAAG,GAAG,CAAC,KAA6B,EAAE,KAAK,CAAC,CAAC;YACtG,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;KACF,CACF,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC,CAAC"}
package/screen-shotter.js CHANGED
@@ -2,7 +2,7 @@ import puppeteer from "@cloudflare/puppeteer";
2
2
  import { exception2Result, Result } from "@adviser/cement";
3
3
  import { storeScreenshot } from "./intern/store-screenshot.js";
4
4
  export async function takeScreenshot(event, browserFetcher) {
5
- console.log(`Taking screenshot for ${event.vibeUrl} (fsId: ${event.fsId})`);
5
+ console.info(`Taking screenshot for ${event.vibeUrl} (fsId: ${event.fsId})`);
6
6
  const rBrowser = await exception2Result(() => puppeteer.launch(browserFetcher));
7
7
  if (rBrowser.isErr()) {
8
8
  return Result.Err(rBrowser.Err());
@@ -34,13 +34,13 @@ export async function processScreenShotEvent(qctx, evt) {
34
34
  return Result.Err(`Failed to take screenshot: ${rScreenshot.Err().message}`);
35
35
  }
36
36
  const screenshotData = new Uint8Array(rScreenshot.Ok());
37
- console.log(`Screenshot taken for ${evt.fsId}: ${screenshotData.byteLength} bytes`);
37
+ console.info(`Screenshot taken for ${evt.fsId}: ${screenshotData.byteLength} bytes`);
38
38
  const result = await storeScreenshot(qctx, evt.fsId, screenshotData);
39
39
  if (result.isErr()) {
40
40
  return Result.Err(`Failed to store screenshot: ${result.Err()}`);
41
41
  }
42
42
  const { assetUrl } = result.Ok();
43
- console.log(`Screenshot stored with assetId: ${assetUrl}`);
43
+ console.info(`Screenshot stored with assetId: ${assetUrl}`);
44
44
  return Result.Ok({ assetUrl });
45
45
  }
46
46
  //# sourceMappingURL=screen-shotter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"screen-shotter.js","sourceRoot":"","sources":["../jsr/screen-shotter.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAO/D,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAiB,EAAE,cAAuB;IAC7E,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,OAAO,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAE5E,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,cAAuB,CAAC,CAAC,CAAC;IACzF,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;QACrB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,EAAE,CAAC;IAC9B,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,KAAK,IAAI,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAErC,MAAM,IAAI,CAAC,WAAW,CAAC;YACrB,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,iBAAiB,EAAE,CAAC;SACrB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAC7B,SAAS,EAAE,cAAc;YACzB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,UAAU,CAAC;YACrB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;IACtB,OAAO,WAAW,CAAC;AACrB,CAAC;AAKD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,IAAc,EAAE,GAAe;IAC1E,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IACtE,IAAI,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;QACxB,OAAO,MAAM,CAAC,GAAG,CAAC,8BAA8B,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,cAAc,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;IAExD,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU,QAAQ,CAAC,CAAC;IAEpF,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAErE,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC,GAAG,CAAC,+BAA+B,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"screen-shotter.js","sourceRoot":"","sources":["../jsr/screen-shotter.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAO/D,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAiB,EAAE,cAAuB;IAC7E,OAAO,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,OAAO,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAE7E,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,cAAuB,CAAC,CAAC,CAAC;IACzF,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;QACrB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,EAAE,CAAC;IAC9B,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,KAAK,IAAI,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAErC,MAAM,IAAI,CAAC,WAAW,CAAC;YACrB,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,iBAAiB,EAAE,CAAC;SACrB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAC7B,SAAS,EAAE,cAAc;YACzB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,UAAU,CAAC;YACrB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;IACtB,OAAO,WAAW,CAAC;AACrB,CAAC;AAKD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,IAAc,EAAE,GAAe;IAC1E,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IACtE,IAAI,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;QACxB,OAAO,MAAM,CAAC,GAAG,CAAC,8BAA8B,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,cAAc,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;IAExD,OAAO,CAAC,IAAI,CAAC,wBAAwB,GAAG,CAAC,IAAI,KAAK,cAAc,CAAC,UAAU,QAAQ,CAAC,CAAC;IAErF,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAErE,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC,GAAG,CAAC,+BAA+B,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC;IACjC,OAAO,CAAC,IAAI,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;AACjC,CAAC"}
package/worker.js CHANGED
@@ -17,6 +17,7 @@ export default {
17
17
  BROWSER: env.BROWSER,
18
18
  D1: env.DB,
19
19
  FS_IDS_BUCKET: env.FS_IDS_BUCKET,
20
+ USER_NOTIFY: env.USER_NOTIFY,
20
21
  },
21
22
  vibes: {
22
23
  env: {
@@ -36,7 +37,7 @@ export default {
36
37
  const send = new NoopQueueSendProvider();
37
38
  const evento = vibesQueueEvento();
38
39
  for (const message of batch.messages) {
39
- console.log("message", message);
40
+ console.info("message", message);
40
41
  const rTrigger = await evento.trigger({ ctx, send, request: message.body });
41
42
  if (rTrigger.isErr()) {
42
43
  console.error("Failed to process queue message:", message.id, rTrigger.Err());
package/worker.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../jsr/worker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAwC,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,qBAAqB;IACzB,KAAK,CAAC,IAAI,CAAI,IAAiD,EAAE,KAAc;QAC7E,OAAO,MAAM,CAAC,EAAE,EAAE,CAAC;IACrB,CAAC;CACF;AAED,eAAe;IACb,KAAK,CAAC,KAAK,CAAC,KAAmB,EAAE,GAAU;QACzC,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC;YACxB,KAAK;YACL,EAAE,EAAE;gBACF,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,aAAa,EAAE,GAAG,CAAC,aAAa;aACjC;YACD,KAAK,EAAE;gBACL,GAAG,EAAE;oBACH,yBAAyB,EAAE,GAAG,CAAC,yBAAyB;oBACxD,cAAc,EAAE,GAAG,CAAC,cAAc;oBAClC,oBAAoB,EAAE,GAAG,CAAC,oBAAoB;oBAC9C,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;oBACvC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;oBACxC,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;oBAC5C,eAAe,EAAE,GAAG,CAAC,eAAe;oBACpC,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;oBAC5C,YAAY,EAAE,GAAG,CAAC,YAAY;iBAC/B;aACF;SACF,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,UAAU,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;QAElC,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5E,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC9E,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;CAC+B,CAAC"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../jsr/worker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAwC,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,qBAAqB;IACzB,KAAK,CAAC,IAAI,CAAI,IAAiD,EAAE,KAAc;QAC7E,OAAO,MAAM,CAAC,EAAE,EAAE,CAAC;IACrB,CAAC;CACF;AAED,eAAe;IACb,KAAK,CAAC,KAAK,CAAC,KAAmB,EAAE,GAAU;QACzC,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC;YACxB,KAAK;YACL,EAAE,EAAE;gBACF,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,WAAW,EAAE,GAAG,CAAC,WAAW;aAC7B;YACD,KAAK,EAAE;gBACL,GAAG,EAAE;oBACH,yBAAyB,EAAE,GAAG,CAAC,yBAAyB;oBACxD,cAAc,EAAE,GAAG,CAAC,cAAc;oBAClC,oBAAoB,EAAE,GAAG,CAAC,oBAAoB;oBAC9C,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;oBACvC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;oBACxC,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;oBAC5C,eAAe,EAAE,GAAG,CAAC,eAAe;oBACpC,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;oBAC5C,YAAY,EAAE,GAAG,CAAC,YAAY;iBAC/B;aACF;SACF,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,UAAU,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;QAElC,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5E,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC9E,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;CAC+B,CAAC"}