@vibes.diy/api-svc 4.5.5 → 5.2.2

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 (187) hide show
  1. package/autumn.config.d.ts +4 -2
  2. package/autumn.config.js +12 -7
  3. package/autumn.config.js.map +1 -1
  4. package/billing.d.ts +77 -1
  5. package/billing.js +264 -3
  6. package/billing.js.map +1 -1
  7. package/cf-serve.d.ts +4 -1
  8. package/cf-serve.js +23 -0
  9. package/cf-serve.js.map +1 -1
  10. package/create-handler.d.ts +9 -1
  11. package/create-handler.js +5 -0
  12. package/create-handler.js.map +1 -1
  13. package/evento-handler-manifest.js +36 -0
  14. package/evento-handler-manifest.js.map +1 -1
  15. package/index.d.ts +17 -0
  16. package/index.js +17 -0
  17. package/index.js.map +1 -1
  18. package/intern/backend-db-callback.js +56 -0
  19. package/intern/backend-db-callback.js.map +1 -1
  20. package/intern/backend-egress.d.ts +1 -1
  21. package/intern/backend-egress.js +74 -22
  22. package/intern/backend-egress.js.map +1 -1
  23. package/intern/backend-policy-version.d.ts +1 -1
  24. package/intern/backend-policy-version.js +1 -1
  25. package/intern/components/vibe-page.js +5 -1
  26. package/intern/components/vibe-page.js.map +1 -1
  27. package/intern/delete-access-gate.d.ts +4 -0
  28. package/intern/delete-access-gate.js +46 -5
  29. package/intern/delete-access-gate.js.map +1 -1
  30. package/intern/egress-platform-list.d.ts +1 -0
  31. package/intern/egress-platform-list.js +4 -0
  32. package/intern/egress-platform-list.js.map +1 -1
  33. package/intern/emit-notification.d.ts +21 -0
  34. package/intern/emit-notification.js +43 -0
  35. package/intern/emit-notification.js.map +1 -0
  36. package/intern/ensure-app-metadata.js +4 -0
  37. package/intern/ensure-app-metadata.js.map +1 -1
  38. package/intern/ensure-chat-id.js +13 -2
  39. package/intern/ensure-chat-id.js.map +1 -1
  40. package/intern/ensure-slug-binding.js +20 -2
  41. package/intern/ensure-slug-binding.js.map +1 -1
  42. package/intern/notify-comment-posted.d.ts +8 -0
  43. package/intern/notify-comment-posted.js +24 -0
  44. package/intern/notify-comment-posted.js.map +1 -0
  45. package/intern/notify-dm-received.d.ts +9 -0
  46. package/intern/notify-dm-received.js +25 -0
  47. package/intern/notify-dm-received.js.map +1 -0
  48. package/intern/notify-member-joined.d.ts +11 -0
  49. package/intern/notify-member-joined.js +16 -0
  50. package/intern/notify-member-joined.js.map +1 -0
  51. package/intern/notify-remix-clone.d.ts +6 -0
  52. package/intern/notify-remix-clone.js +21 -0
  53. package/intern/notify-remix-clone.js.map +1 -0
  54. package/intern/notify-remix.d.ts +8 -0
  55. package/intern/notify-remix.js +23 -0
  56. package/intern/notify-remix.js.map +1 -0
  57. package/intern/notify-request-grant.d.ts +9 -0
  58. package/intern/notify-request-grant.js +18 -0
  59. package/intern/notify-request-grant.js.map +1 -0
  60. package/intern/notify-social-edge.d.ts +9 -0
  61. package/intern/notify-social-edge.js +45 -0
  62. package/intern/notify-social-edge.js.map +1 -0
  63. package/intern/notify-vibe-published.d.ts +7 -0
  64. package/intern/notify-vibe-published.js +22 -0
  65. package/intern/notify-vibe-published.js.map +1 -0
  66. package/intern/pre-allocate.d.ts +1 -0
  67. package/intern/pre-allocate.js +1 -0
  68. package/intern/pre-allocate.js.map +1 -1
  69. package/intern/process-access-bindings.js +12 -2
  70. package/intern/process-access-bindings.js.map +1 -1
  71. package/intern/put-access-gate.js +25 -3
  72. package/intern/put-access-gate.js.map +1 -1
  73. package/intern/read-anonymous-seed-docs.js +1 -1
  74. package/intern/read-anonymous-seed-docs.js.map +1 -1
  75. package/intern/recovery.d.ts +7 -1
  76. package/intern/recovery.js +5 -5
  77. package/intern/recovery.js.map +1 -1
  78. package/intern/render-vibe.js +7 -3
  79. package/intern/render-vibe.js.map +1 -1
  80. package/intern/slot-assembler.d.ts +2 -0
  81. package/intern/slot-assembler.js +9 -3
  82. package/intern/slot-assembler.js.map +1 -1
  83. package/intern/vibe-curation-decision.d.ts +18 -0
  84. package/intern/vibe-curation-decision.js +46 -0
  85. package/intern/vibe-curation-decision.js.map +1 -0
  86. package/intern/write-apps.js +9 -2
  87. package/intern/write-apps.js.map +1 -1
  88. package/package.json +16 -15
  89. package/public/access-function.js +4 -1
  90. package/public/access-function.js.map +1 -1
  91. package/public/access-helpers.js +5 -0
  92. package/public/access-helpers.js.map +1 -1
  93. package/public/app-documents-broadcast.d.ts +8 -0
  94. package/public/app-documents-broadcast.js +15 -0
  95. package/public/app-documents-broadcast.js.map +1 -1
  96. package/public/app-documents-grant-delta.js +3 -2
  97. package/public/app-documents-grant-delta.js.map +1 -1
  98. package/public/app-documents-read-eventos.js +72 -13
  99. package/public/app-documents-read-eventos.js.map +1 -1
  100. package/public/app-documents-write-eventos.js +28 -11
  101. package/public/app-documents-write-eventos.js.map +1 -1
  102. package/public/app-settings-sql-upsert.js +4 -1
  103. package/public/app-settings-sql-upsert.js.map +1 -1
  104. package/public/audience-arms-store.d.ts +21 -0
  105. package/public/audience-arms-store.js +110 -0
  106. package/public/audience-arms-store.js.map +1 -0
  107. package/public/audience-channels.d.ts +14 -0
  108. package/public/audience-channels.js +71 -0
  109. package/public/audience-channels.js.map +1 -0
  110. package/public/audience-derived-trigger.d.ts +15 -0
  111. package/public/audience-derived-trigger.js +45 -0
  112. package/public/audience-derived-trigger.js.map +1 -0
  113. package/public/audience-key-patch.d.ts +16 -0
  114. package/public/audience-key-patch.js +38 -0
  115. package/public/audience-key-patch.js.map +1 -0
  116. package/public/billing-msg.d.ts +5 -0
  117. package/public/billing-msg.js +143 -0
  118. package/public/billing-msg.js.map +1 -0
  119. package/public/channel-read-filter.js +4 -2
  120. package/public/channel-read-filter.js.map +1 -1
  121. package/public/curated-new-vibes.d.ts +5 -0
  122. package/public/curated-new-vibes.js +64 -0
  123. package/public/curated-new-vibes.js.map +1 -0
  124. package/public/developer-grants-flow.d.ts +5 -0
  125. package/public/developer-grants-flow.js +218 -0
  126. package/public/developer-grants-flow.js.map +1 -0
  127. package/public/developer-grants.d.ts +12 -0
  128. package/public/developer-grants.js +40 -0
  129. package/public/developer-grants.js.map +1 -0
  130. package/public/email-unsubscribe.d.ts +7 -0
  131. package/public/email-unsubscribe.js +41 -0
  132. package/public/email-unsubscribe.js.map +1 -0
  133. package/public/ensure-app-settings.js +69 -3
  134. package/public/ensure-app-settings.js.map +1 -1
  135. package/public/ensure-user-settings.js +9 -1
  136. package/public/ensure-user-settings.js.map +1 -1
  137. package/public/fork-app.js +24 -1
  138. package/public/fork-app.js.map +1 -1
  139. package/public/grant-reduce.d.ts +4 -2
  140. package/public/grant-reduce.js +11 -3
  141. package/public/grant-reduce.js.map +1 -1
  142. package/public/home-feed-common.d.ts +18 -0
  143. package/public/home-feed-common.js +46 -0
  144. package/public/home-feed-common.js.map +1 -0
  145. package/public/home-leaderboard.d.ts +5 -0
  146. package/public/home-leaderboard.js +64 -0
  147. package/public/home-leaderboard.js.map +1 -0
  148. package/public/image-gen.js +9 -0
  149. package/public/image-gen.js.map +1 -1
  150. package/public/invite-unsubscribe.d.ts +3 -0
  151. package/public/invite-unsubscribe.js +31 -0
  152. package/public/invite-unsubscribe.js.map +1 -0
  153. package/public/list-notifications.d.ts +4 -0
  154. package/public/list-notifications.js +157 -0
  155. package/public/list-notifications.js.map +1 -0
  156. package/public/related-vibes.d.ts +3 -0
  157. package/public/related-vibes.js +134 -0
  158. package/public/related-vibes.js.map +1 -0
  159. package/public/serv-entry-point.js +2 -2
  160. package/public/serv-entry-point.js.map +1 -1
  161. package/public/social-flow.d.ts +21 -0
  162. package/public/social-flow.js +765 -0
  163. package/public/social-flow.js.map +1 -0
  164. package/public/social-invite-flow.d.ts +3 -0
  165. package/public/social-invite-flow.js +73 -0
  166. package/public/social-invite-flow.js.map +1 -0
  167. package/public/social-invite-signup-match.d.ts +6 -0
  168. package/public/social-invite-signup-match.js +38 -0
  169. package/public/social-invite-signup-match.js.map +1 -0
  170. package/public/social-invite-store.d.ts +70 -0
  171. package/public/social-invite-store.js +172 -0
  172. package/public/social-invite-store.js.map +1 -0
  173. package/public/social-store.d.ts +109 -0
  174. package/public/social-store.js +469 -0
  175. package/public/social-store.js.map +1 -0
  176. package/public/who-am-i.js +5 -3
  177. package/public/who-am-i.js.map +1 -1
  178. package/svc-ws-send-provider.d.ts +2 -0
  179. package/svc-ws-send-provider.js +2 -0
  180. package/svc-ws-send-provider.js.map +1 -1
  181. package/types.d.ts +20 -1
  182. package/types.js.map +1 -1
  183. package/usage-report/README.md +1 -0
  184. package/usage-report/billing-reconcile-util.d.ts +7 -5
  185. package/usage-report/billing-reconcile-util.js +32 -17
  186. package/usage-report/billing-reconcile-util.js.map +1 -1
  187. package/usage-report/vibe-usage.py +171 -0
@@ -0,0 +1,41 @@
1
+ import { isUserSettingNotifications, parseArrayWarning, userSettingItem, verifyUnsubscribeToken, } from "@vibes.diy/api-types";
2
+ import { cfDrizzle, createVibesApiTables, toDBFlavour } from "@vibes.diy/api-sql";
3
+ import { eq } from "drizzle-orm/sql/expressions";
4
+ function htmlPage(title, body, status) {
5
+ return new Response(`<!doctype html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><title>${title}</title></head>` +
6
+ `<body style="font-family: system-ui, sans-serif; max-width: 32rem; margin: 4rem auto; padding: 0 1rem;"><h1 style="font-size:1.4rem">${title}</h1><p>${body}</p></body></html>`, { status, headers: { "Content-Type": "text/html; charset=utf-8" } });
7
+ }
8
+ export async function handleEmailUnsubscribe(request, env, sqlOverride) {
9
+ const secret = env.EMAIL_UNSUBSCRIBE_SECRET;
10
+ if (!secret) {
11
+ return htmlPage("Not available", "Email unsubscribe is not configured on this environment.", 503);
12
+ }
13
+ const url = new URL(request.url);
14
+ const userId = url.searchParams.get("u") ?? "";
15
+ const token = url.searchParams.get("t") ?? "";
16
+ if (!(await verifyUnsubscribeToken(userId, token, secret))) {
17
+ return htmlPage("Invalid link", "This unsubscribe link is invalid or was truncated. You can also turn the digest off in Settings → Notifications.", 400);
18
+ }
19
+ const { db, tables } = sqlOverride ?? {
20
+ db: cfDrizzle(env, env.DB).db,
21
+ tables: createVibesApiTables(toDBFlavour(env.DB_FLAVOUR)),
22
+ };
23
+ const row = await db
24
+ .select()
25
+ .from(tables.userSettings)
26
+ .where(eq(tables.userSettings.userId, userId))
27
+ .limit(1)
28
+ .then((r) => r[0]);
29
+ const now = new Date().toISOString();
30
+ const { filtered: settings } = parseArrayWarning(row?.settings ?? [], userSettingItem);
31
+ const prefs = settings.find(isUserSettingNotifications) ?? { type: "notifications" };
32
+ const next = [...settings.filter((s) => s.type !== "notifications"), { ...prefs, emailDigest: false }];
33
+ if (row) {
34
+ await db.update(tables.userSettings).set({ settings: next, updated: now }).where(eq(tables.userSettings.userId, userId));
35
+ }
36
+ else {
37
+ await db.insert(tables.userSettings).values({ userId, settings: next, updated: now, created: now });
38
+ }
39
+ return htmlPage("You're unsubscribed", 'You will no longer receive the weekly vibes digest email. You can turn it back on any time in <a href="/settings">Settings → Notifications</a>.', 200);
40
+ }
41
+ //# sourceMappingURL=email-unsubscribe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-unsubscribe.js","sourceRoot":"","sources":["../../jsr/public/email-unsubscribe.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Result, Option, EventoResult, exception2Result } from "@adviser/cement";
2
- import { ActiveEntry, parseArrayWarning, isActiveCachedSuggestion, isActiveDbAcl, isActiveEnv, isActiveIconDescription, isActiveModelSettingRuntime, isActiveModelSettingCodegen, isActiveModelSettingImg, isActiveColorTheme, isActiveSkills, isActiveTheme, isReqEnsureAppSettingsColorTheme, isReqEnsureAppSettingsIconDescription, isReqEnsureAppSettingsIconRegen, isReqEnsureAppSettingsImg, isReqEnsureAppSettingsSkills, isReqEnsureAppSettingsTheme, isActiveTitle, isEnablePublicAccess, isEnableRequest, isReqEnsureAppSettings, isReqEnsureAppSettingsRuntime, isReqEnsureAppSettingsCodegen, isReqEnsureAppSettingsCachedSuggestion, isReqEnsureAppSettingsCachedSuggestionBless, isReqEnsureAppSettingsDbAcl, isReqEnsureAppSettingsDbAclRemove, isReqEnsureAppSettingsEnv, isReqEnsureAppSettingsSecretSet, isReqEnsureAppSettingsSecretRemove, isReqEnsureAppSettingsTitle, isReqPublicAccess, isReqRequest, } from "@vibes.diy/api-types";
2
+ import { ActiveEntry, parseArrayWarning, isActiveCachedSuggestion, isActiveDbAcl, isActiveEnv, isActiveIconDescription, isActiveModelSettingRuntime, isActiveModelSettingCodegen, isActiveModelSettingImg, isActiveColorTheme, isActivePrivacySensitive, isActiveSkills, isActiveTheme, isReqEnsureAppSettingsColorTheme, isReqEnsureAppSettingsIconDescription, isReqEnsureAppSettingsIconRegen, isReqEnsureAppSettingsImg, isReqEnsureAppSettingsPrivacySensitive, isReqEnsureAppSettingsSkills, isReqEnsureAppSettingsTheme, isActiveTitle, isEnablePublicAccess, isEnableRequest, isReqEnsureAppSettings, isReqEnsureAppSettingsRuntime, isReqEnsureAppSettingsCodegen, isReqEnsureAppSettingsCachedSuggestion, isReqEnsureAppSettingsCachedSuggestionBless, isReqEnsureAppSettingsDbAcl, isReqEnsureAppSettingsDbAclRemove, isReqEnsureAppSettingsEnv, isReqEnsureAppSettingsSecretSet, isReqEnsureAppSettingsSecretRemove, isReqEnsureAppSettingsTitle, isReqEnsureAppSettingsRecommendedAdd, isReqEnsureAppSettingsRecommendedRemove, isReqEnsureAppSettingsRecommendedMask, isActiveRecommendedCurated, isActiveRecommendedMasked, RECOMMENDED_CURATED_CAP, RECOMMENDED_MASKED_CAP, isReqPublicAccess, isReqRequest, } from "@vibes.diy/api-types";
3
3
  import { ensureLogger } from "@vibes.diy/identity";
4
4
  import { unwrapMsgBase } from "../unwrap-msg-base.js";
5
5
  import { optAuth } from "../check-auth.js";
@@ -54,6 +54,12 @@ export async function ensureAppSettings(vctx, req, userId) {
54
54
  const now = new Date().toISOString();
55
55
  const isOwner = !!userId && userId === record?.UserSlugBindings.userId;
56
56
  const isAdminBless = !!userId && !!record && !isOwner && isReqEnsureAppSettingsCachedSuggestionBless(req) && adminUserIdSet(vctx).has(userId);
57
+ const isAdminPrivacySensitiveLower = !!userId &&
58
+ !!record &&
59
+ !isOwner &&
60
+ isReqEnsureAppSettingsPrivacySensitive(req) &&
61
+ req.privacySensitive === false &&
62
+ adminUserIdSet(vctx).has(userId);
57
63
  if ((isReqEnsureAppSettingsSecretSet(req) || isReqEnsureAppSettingsSecretRemove(req)) && !isOwner) {
58
64
  return Result.Ok({
59
65
  type: "vibes.diy.res-ensure-app-settings",
@@ -68,7 +74,7 @@ export async function ensureAppSettings(vctx, req, userId) {
68
74
  created: now,
69
75
  });
70
76
  }
71
- if (!userId || (!isOwner && !isAdminBless)) {
77
+ if (userId === undefined || (isOwner === false && isAdminBless === false && isAdminPrivacySensitiveLower === false)) {
72
78
  if (!record) {
73
79
  return Result.Ok({
74
80
  type: "vibes.diy.res-ensure-app-settings",
@@ -126,7 +132,12 @@ export async function ensureAppSettings(vctx, req, userId) {
126
132
  created: record.AppSettings.created,
127
133
  };
128
134
  if (approverUserId !== ownerUserId) {
129
- [res.settings, res.error] = await applyCachedSuggestionBless(vctx, req, res, settings, approverUserId, ownerUserId, now);
135
+ if (isReqEnsureAppSettingsPrivacySensitive(req)) {
136
+ [res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActivePrivacySensitive, () => ({ type: "active.privacy-sensitive", sensitive: false }));
137
+ }
138
+ else {
139
+ [res.settings, res.error] = await applyCachedSuggestionBless(vctx, req, res, settings, approverUserId, ownerUserId, now);
140
+ }
130
141
  return Result.Ok(await withModelDefaults(vctx, res, { redactApiKeys: true }));
131
142
  }
132
143
  if (isReqEnsureAppSettingsSecretSet(req) || isReqEnsureAppSettingsSecretRemove(req)) {
@@ -204,6 +215,15 @@ export async function ensureAppSettings(vctx, req, userId) {
204
215
  [res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActiveColorTheme, () => ({ type: "active.colorTheme", colorTheme }));
205
216
  }
206
217
  break;
218
+ case isReqEnsureAppSettingsPrivacySensitive(req): {
219
+ const currentlySensitive = settings.find(isActivePrivacySensitive)?.sensitive === true;
220
+ if (req.privacySensitive === false && currentlySensitive && !adminUserIdSet(vctx).has(approverUserId)) {
221
+ res.error = "privacy-sensitive:owner-lower-forbidden";
222
+ break;
223
+ }
224
+ [res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActivePrivacySensitive, () => ({ type: "active.privacy-sensitive", sensitive: req.privacySensitive }));
225
+ break;
226
+ }
207
227
  case isReqEnsureAppSettingsRuntime(req):
208
228
  if (req.runtime === null) {
209
229
  [res.settings, res.error] = await sqlRemove(vctx, res, settings, isActiveModelSettingRuntime);
@@ -271,6 +291,52 @@ export async function ensureAppSettings(vctx, req, userId) {
271
291
  case isReqEnsureAppSettingsCachedSuggestionBless(req):
272
292
  [res.settings, res.error] = await applyCachedSuggestionBless(vctx, req, res, settings, approverUserId, ownerUserId, now);
273
293
  break;
294
+ case isReqEnsureAppSettingsRecommendedAdd(req): {
295
+ const target = req.recommendedAdd;
296
+ const prevCurated = settings.find(isActiveRecommendedCurated)?.items ?? [];
297
+ if (prevCurated.length >= RECOMMENDED_CURATED_CAP) {
298
+ res.error = "recommended-curated:cap-exceeded";
299
+ break;
300
+ }
301
+ const targetRow = await vctx.sql.db
302
+ .select({ appSlug: vctx.sql.tables.appSlugBinding.appSlug })
303
+ .from(vctx.sql.tables.appSlugBinding)
304
+ .where(and(eq(vctx.sql.tables.appSlugBinding.ownerHandle, target.ownerHandle), eq(vctx.sql.tables.appSlugBinding.appSlug, target.appSlug)))
305
+ .limit(1);
306
+ if (targetRow.length === 0) {
307
+ res.error = "recommended-curated:target-not-found";
308
+ break;
309
+ }
310
+ const mintedId = `rc-${vctx.sthis.nextId(8).str}`;
311
+ [res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActiveRecommendedCurated, (prev) => ({
312
+ type: "active.recommended-curated",
313
+ items: [{ id: mintedId, ownerHandle: target.ownerHandle, appSlug: target.appSlug }, ...(prev.items ?? [])],
314
+ }));
315
+ break;
316
+ }
317
+ case isReqEnsureAppSettingsRecommendedRemove(req): {
318
+ const removeId = req.recommendedRemove.id;
319
+ [res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActiveRecommendedCurated, (prev) => ({
320
+ type: "active.recommended-curated",
321
+ items: (prev.items ?? []).filter((i) => i.id !== removeId),
322
+ }));
323
+ break;
324
+ }
325
+ case isReqEnsureAppSettingsRecommendedMask(req): {
326
+ const m = req.recommendedMask;
327
+ const prevMasked = settings.find(isActiveRecommendedMasked)?.items ?? [];
328
+ const without = prevMasked.filter((i) => !(i.ownerHandle === m.ownerHandle && i.appSlug === m.appSlug));
329
+ if (m.op === "mask" && without.length >= RECOMMENDED_MASKED_CAP) {
330
+ res.error = "recommended-masked:cap-exceeded";
331
+ break;
332
+ }
333
+ const nextMasked = m.op === "mask" ? [...without, { ownerHandle: m.ownerHandle, appSlug: m.appSlug }] : without;
334
+ [res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActiveRecommendedMasked, () => ({
335
+ type: "active.recommended-masked",
336
+ items: nextMasked,
337
+ }));
338
+ break;
339
+ }
274
340
  case isReqEnsureAppSettingsDbAcl(req):
275
341
  [res.settings, res.error] = await sqlUpsert(vctx, res, settings, (e) => isActiveDbAcl(e) && e.dbName === req.dbAcl.dbName, () => ({
276
342
  type: "active.db-acl",
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-app-settings.js","sourceRoot":"","sources":["../../jsr/public/ensure-app-settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ensure-app-settings.js","sourceRoot":"","sources":["../../jsr/public/ensure-app-settings.ts"],"names":[],"mappings":"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"}
@@ -28,8 +28,16 @@ export async function ensureUserSettings(vctx, req) {
28
28
  if (settingsArrayWarning.length > 0) {
29
29
  ensureLogger(vctx.sthis, "ensureUserSettings").Warn().Any({ parseErrors: settingsArrayWarning }).Msg("skip");
30
30
  }
31
- const requested = req.settings.filter((item) => item.type !== "egressStatus");
31
+ const requested = req.settings.filter((item) => item.type !== "egressStatus" && item.type !== "contactEmail");
32
32
  const settingsSet = new Map([...settingsArray, ...requested].map((item) => [item.type, item]));
33
+ const claimsEmail = req._auth.verifiedAuth.claims.params?.email;
34
+ if (claimsEmail) {
35
+ const existingContact = settingsSet.get("contactEmail");
36
+ const priorEmail = existingContact && existingContact.type === "contactEmail" ? existingContact.email : undefined;
37
+ if (priorEmail !== claimsEmail) {
38
+ settingsSet.set("contactEmail", { type: "contactEmail", email: claimsEmail, updatedAt: now });
39
+ }
40
+ }
33
41
  const { filtered: settings, warning: settingsWarning } = parseArrayWarning(Array.from(settingsSet.values()), userSettingItem);
34
42
  if (settingsWarning.length > 0) {
35
43
  ensureLogger(vctx.sthis, "ensureUserSettings").Warn().Any({ parseErrors: settingsWarning }).Msg("skip");
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-user-settings.js","sourceRoot":"","sources":["../../jsr/public/ensure-user-settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ensure-user-settings.js","sourceRoot":"","sources":["../../jsr/public/ensure-user-settings.ts"],"names":[],"mappings":"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"}
@@ -162,7 +162,16 @@ export async function forkApp(vctx, req, userId, claims) {
162
162
  if (rApp.isErr())
163
163
  return Result.Err(`Failed to ensure appSlug: ${rApp.Err().message}`);
164
164
  const destAppSlug = rApp.Ok().appSlug;
165
- const destMeta = [...srcMeta.filter((m) => m.type !== "remix-of"), { type: "remix-of", srcFsId: src.fsId }];
165
+ const destMeta = [
166
+ ...srcMeta.filter((m) => m.type !== "remix-of"),
167
+ {
168
+ type: "remix-of",
169
+ srcFsId: src.fsId,
170
+ srcUserId: src.userId,
171
+ srcOwnerHandle: src.ownerHandle,
172
+ srcAppSlug: src.appSlug,
173
+ },
174
+ ];
166
175
  const destMode = skipChat ? "production" : "dev";
167
176
  const rIns = await exception2Result(() => vctx.sql.db.insert(vctx.sql.tables.apps).values({
168
177
  appSlug: destAppSlug,
@@ -267,6 +276,20 @@ export async function forkApp(vctx, req, userId, claims) {
267
276
  }, userId);
268
277
  if (rPubSet.isErr())
269
278
  return Result.Err(`Failed to disable clone public access: ${rPubSet.Err().message}`);
279
+ const rNotify = await exception2Result(() => vctx.postQueue({
280
+ payload: {
281
+ type: "vibes.diy.evt-remix-clone-notify",
282
+ ownerHandle: destUserSlug,
283
+ appSlug: destAppSlug,
284
+ },
285
+ tid: "queue-event",
286
+ src: "forkApp",
287
+ dst: "vibes-service",
288
+ ttl: 1,
289
+ }));
290
+ if (rNotify.isErr()) {
291
+ vctx.logger.Warn().Err(rNotify).Msg("enqueue evt-remix-clone-notify (clone path) failed");
292
+ }
270
293
  }
271
294
  return Result.Ok({
272
295
  type: "vibes.diy.res-fork-app",
@@ -1 +1 @@
1
- {"version":3,"file":"fork-app.js","sourceRoot":"","sources":["../../jsr/public/fork-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fork-app.js","sourceRoot":"","sources":["../../jsr/public/fork-app.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export declare class GrantReduce {
18
18
  get isHydrated(): boolean;
19
19
  markHydrated(): void;
20
20
  setSeed(contribution: DocContribution | undefined): void;
21
+ cloneSeedFrom(other: GrantReduce): void;
21
22
  addDoc(docId: string, contribution: DocContribution): void;
22
23
  removeDoc(docId: string): void;
23
24
  resolveEffectiveChannels(userHandle: string): Set<string>;
@@ -26,5 +27,6 @@ export declare class GrantReduce {
26
27
  private unionContribution;
27
28
  }
28
29
  export declare const RESERVED_OWNER_ROLE = "owner";
29
- export declare function seedOwnerGrants(reduce: GrantReduce, ownerHandle: string | undefined): void;
30
- export declare function newSeededReduce(ownerHandle: string | undefined): GrantReduce;
30
+ export declare const RESERVED_DEV_ROLE = "~dev";
31
+ export declare function seedOwnerGrants(reduce: GrantReduce, ownerHandle: string | undefined, devHandles?: readonly string[]): void;
32
+ export declare function newSeededReduce(ownerHandle: string | undefined, devHandles?: readonly string[]): GrantReduce;
@@ -1,10 +1,13 @@
1
1
  function hasContent(c) {
2
2
  return c.members.size > 0 || c.grantRoles.size > 0 || c.grantUsers.size > 0 || c.grantPublic.size > 0;
3
3
  }
4
+ const RESERVED_ROLE_PREFIX = "~";
4
5
  export function extractContribution(desc) {
5
6
  const members = new Map();
6
7
  if (desc.members) {
7
8
  for (const [role, users] of Object.entries(desc.members)) {
9
+ if (role.trim().startsWith(RESERVED_ROLE_PREFIX))
10
+ continue;
8
11
  members.set(role, new Set(users));
9
12
  }
10
13
  }
@@ -41,6 +44,9 @@ export class GrantReduce {
41
44
  this.seedContribution = contribution && hasContent(contribution) ? contribution : undefined;
42
45
  this.rebuild();
43
46
  }
47
+ cloneSeedFrom(other) {
48
+ this.setSeed(other.seedContribution);
49
+ }
44
50
  addDoc(docId, contribution) {
45
51
  if (!hasContent(contribution)) {
46
52
  if (this.docContributions.has(docId)) {
@@ -136,11 +142,13 @@ export class GrantReduce {
136
142
  }
137
143
  }
138
144
  export const RESERVED_OWNER_ROLE = "owner";
139
- export function seedOwnerGrants(reduce, ownerHandle) {
145
+ export const RESERVED_DEV_ROLE = "~dev";
146
+ export function seedOwnerGrants(reduce, ownerHandle, devHandles = []) {
140
147
  if (!ownerHandle)
141
148
  return;
142
149
  const members = new Map();
143
150
  members.set(RESERVED_OWNER_ROLE, new Set([ownerHandle]));
151
+ members.set(RESERVED_DEV_ROLE, new Set([ownerHandle, ...devHandles]));
144
152
  reduce.setSeed({
145
153
  members,
146
154
  grantRoles: new Map(),
@@ -148,9 +156,9 @@ export function seedOwnerGrants(reduce, ownerHandle) {
148
156
  grantPublic: new Set(),
149
157
  });
150
158
  }
151
- export function newSeededReduce(ownerHandle) {
159
+ export function newSeededReduce(ownerHandle, devHandles = []) {
152
160
  const reduce = new GrantReduce();
153
- seedOwnerGrants(reduce, ownerHandle);
161
+ seedOwnerGrants(reduce, ownerHandle, devHandles);
154
162
  return reduce;
155
163
  }
156
164
  //# sourceMappingURL=grant-reduce.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grant-reduce.js","sourceRoot":"","sources":["../../jsr/public/grant-reduce.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grant-reduce.js","sourceRoot":"","sources":["../../jsr/public/grant-reduce.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { VibesApiSQLCtx } from "../types.js";
2
+ export declare const HOME_FEED_DEFAULT_LIMIT = 12;
3
+ export declare const HOME_FEED_MAX_LIMIT = 50;
4
+ export declare const HOME_FEED_SCAN_FACTOR = 3;
5
+ export declare function clampHomeFeedLimit(raw: number | undefined): number;
6
+ export interface VibeDisplayInfo {
7
+ readonly title?: string;
8
+ readonly icon?: {
9
+ cid: string;
10
+ mime: string;
11
+ };
12
+ readonly worldReadable: boolean;
13
+ }
14
+ export declare function titleIconKey(ownerHandle: string, appSlug: string): string;
15
+ export declare function loadVibeDisplayInfo(vctx: VibesApiSQLCtx, pairs: readonly {
16
+ ownerHandle: string;
17
+ appSlug: string;
18
+ }[]): Promise<Map<string, VibeDisplayInfo>>;
@@ -0,0 +1,46 @@
1
+ import { isActiveIcon, isActiveTitle } from "@vibes.diy/api-types";
2
+ import { and, eq, or } from "drizzle-orm/sql/expressions";
3
+ import { deriveIsWorldReadable } from "../intern/get-vibe-route-hints.js";
4
+ export const HOME_FEED_DEFAULT_LIMIT = 12;
5
+ export const HOME_FEED_MAX_LIMIT = 50;
6
+ export const HOME_FEED_SCAN_FACTOR = 3;
7
+ export function clampHomeFeedLimit(raw) {
8
+ if (raw === undefined || !Number.isFinite(raw))
9
+ return HOME_FEED_DEFAULT_LIMIT;
10
+ const i = Math.floor(raw);
11
+ if (i < 1)
12
+ return 1;
13
+ if (i > HOME_FEED_MAX_LIMIT)
14
+ return HOME_FEED_MAX_LIMIT;
15
+ return i;
16
+ }
17
+ export function titleIconKey(ownerHandle, appSlug) {
18
+ return `${ownerHandle}\x00${appSlug}`;
19
+ }
20
+ export async function loadVibeDisplayInfo(vctx, pairs) {
21
+ const out = new Map();
22
+ if (pairs.length === 0)
23
+ return out;
24
+ const settings = vctx.sql.tables.appSettings;
25
+ const usb = vctx.sql.tables.handleBinding;
26
+ const pairPred = or(...pairs.map((p) => and(eq(settings.ownerHandle, p.ownerHandle), eq(settings.appSlug, p.appSlug))));
27
+ const rows = await vctx.sql.db
28
+ .select({ ownerHandle: settings.ownerHandle, appSlug: settings.appSlug, settings: settings.settings })
29
+ .from(settings)
30
+ .innerJoin(usb, and(eq(usb.handle, settings.ownerHandle), eq(usb.userId, settings.userId)))
31
+ .where(pairPred);
32
+ for (const row of rows) {
33
+ const entries = row.settings ?? [];
34
+ const titleEntry = entries.find(isActiveTitle);
35
+ const iconEntry = entries.find(isActiveIcon);
36
+ const head = iconEntry?.versions.find((v) => v.cid === iconEntry.currentCid);
37
+ const icon = head && head.cid.length > 0 ? { cid: head.cid, mime: head.mime } : undefined;
38
+ out.set(titleIconKey(row.ownerHandle, row.appSlug), {
39
+ ...(titleEntry ? { title: titleEntry.title } : {}),
40
+ ...(icon ? { icon } : {}),
41
+ worldReadable: deriveIsWorldReadable(row.settings),
42
+ });
43
+ }
44
+ return out;
45
+ }
46
+ //# sourceMappingURL=home-feed-common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"home-feed-common.js","sourceRoot":"","sources":["../../jsr/public/home-feed-common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAI1E,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAKtC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAGvC,MAAM,UAAU,kBAAkB,CAAC,GAAuB;IACxD,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,uBAAuB,CAAC;IAC/E,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACpB,IAAI,CAAC,GAAG,mBAAmB;QAAE,OAAO,mBAAmB,CAAC;IACxD,OAAO,CAAC,CAAC;AACX,CAAC;AAYD,MAAM,UAAU,YAAY,CAAC,WAAmB,EAAE,OAAe;IAC/D,OAAO,GAAG,WAAW,OAAO,OAAO,EAAE,CAAC;AACxC,CAAC;AAeD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAoB,EAAE,KAA0D;IACxH,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC/C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC;IAC1C,MAAM,QAAQ,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACxH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE;SAC3B,MAAM,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;SACrG,IAAI,CAAC,QAAQ,CAAC;SACd,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;SAC1F,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAI,GAAG,CAAC,QAAiC,IAAI,EAAE,CAAC;QAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,UAAU,CAAC,CAAC;QAC7E,MAAM,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1F,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE;YAClD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,aAAa,EAAE,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC;SACnD,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { EventoHandler } from "@adviser/cement";
2
+ import { MsgBase, ReqHomeLeaderboard, ResHomeLeaderboard, VibesDiyError, W3CWebSocketEvent } from "@vibes.diy/api-types";
3
+ import { VibesApiSQLCtx } from "../types.js";
4
+ export declare function computeHomeLeaderboard(vctx: VibesApiSQLCtx, limit: number): Promise<ResHomeLeaderboard>;
5
+ export declare const homeLeaderboardEvento: EventoHandler<W3CWebSocketEvent, MsgBase<ReqHomeLeaderboard>, ResHomeLeaderboard | VibesDiyError>;