@vibes.diy/api-svc 4.5.4 → 5.0.1

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 (74) 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/evento-handler-manifest.js +11 -0
  8. package/evento-handler-manifest.js.map +1 -1
  9. package/index.d.ts +9 -0
  10. package/index.js +9 -0
  11. package/index.js.map +1 -1
  12. package/intern/components/vibe-page.js +5 -1
  13. package/intern/components/vibe-page.js.map +1 -1
  14. package/intern/emit-notification.d.ts +20 -0
  15. package/intern/emit-notification.js +42 -0
  16. package/intern/emit-notification.js.map +1 -0
  17. package/intern/notify-comment-posted.d.ts +8 -0
  18. package/intern/notify-comment-posted.js +24 -0
  19. package/intern/notify-comment-posted.js.map +1 -0
  20. package/intern/notify-dm-received.d.ts +9 -0
  21. package/intern/notify-dm-received.js +25 -0
  22. package/intern/notify-dm-received.js.map +1 -0
  23. package/intern/notify-member-joined.d.ts +11 -0
  24. package/intern/notify-member-joined.js +16 -0
  25. package/intern/notify-member-joined.js.map +1 -0
  26. package/intern/notify-remix-clone.d.ts +6 -0
  27. package/intern/notify-remix-clone.js +21 -0
  28. package/intern/notify-remix-clone.js.map +1 -0
  29. package/intern/notify-remix.d.ts +8 -0
  30. package/intern/notify-remix.js +23 -0
  31. package/intern/notify-remix.js.map +1 -0
  32. package/intern/notify-request-grant.d.ts +9 -0
  33. package/intern/notify-request-grant.js +18 -0
  34. package/intern/notify-request-grant.js.map +1 -0
  35. package/intern/notify-vibe-published.d.ts +7 -0
  36. package/intern/notify-vibe-published.js +22 -0
  37. package/intern/notify-vibe-published.js.map +1 -0
  38. package/intern/vibe-curation-decision.d.ts +18 -0
  39. package/intern/vibe-curation-decision.js +46 -0
  40. package/intern/vibe-curation-decision.js.map +1 -0
  41. package/package.json +11 -11
  42. package/public/access-helpers.js +5 -1
  43. package/public/access-helpers.js.map +1 -1
  44. package/public/app-documents-read-eventos.js +1 -1
  45. package/public/app-documents-read-eventos.js.map +1 -1
  46. package/public/app-documents-write-eventos.js +4 -3
  47. package/public/app-documents-write-eventos.js.map +1 -1
  48. package/public/billing-msg.d.ts +5 -0
  49. package/public/billing-msg.js +143 -0
  50. package/public/billing-msg.js.map +1 -0
  51. package/public/curated-new-vibes.d.ts +3 -0
  52. package/public/curated-new-vibes.js +64 -0
  53. package/public/curated-new-vibes.js.map +1 -0
  54. package/public/email-unsubscribe.d.ts +7 -0
  55. package/public/email-unsubscribe.js +41 -0
  56. package/public/email-unsubscribe.js.map +1 -0
  57. package/public/ensure-user-settings.js +9 -1
  58. package/public/ensure-user-settings.js.map +1 -1
  59. package/public/fork-app.js +24 -1
  60. package/public/fork-app.js.map +1 -1
  61. package/public/home-feed-common.d.ts +18 -0
  62. package/public/home-feed-common.js +46 -0
  63. package/public/home-feed-common.js.map +1 -0
  64. package/public/home-leaderboard.d.ts +3 -0
  65. package/public/home-leaderboard.js +64 -0
  66. package/public/home-leaderboard.js.map +1 -0
  67. package/public/image-gen.js +9 -0
  68. package/public/image-gen.js.map +1 -1
  69. package/public/list-notifications.d.ts +4 -0
  70. package/public/list-notifications.js +157 -0
  71. package/public/list-notifications.js.map +1 -0
  72. package/usage-report/billing-reconcile-util.d.ts +7 -5
  73. package/usage-report/billing-reconcile-util.js +32 -17
  74. package/usage-report/billing-reconcile-util.js.map +1 -1
@@ -12,7 +12,7 @@ interface AutumnItem {
12
12
  };
13
13
  price?: {
14
14
  amount: number;
15
- billingMethod: "usage_based";
15
+ billingMethod: "prepaid";
16
16
  billingUnits: number;
17
17
  };
18
18
  }
@@ -20,6 +20,7 @@ interface AutumnPlan {
20
20
  id: string;
21
21
  name: string;
22
22
  autoEnable?: boolean;
23
+ addOn?: boolean;
23
24
  price?: {
24
25
  amount: number;
25
26
  interval: "month";
@@ -28,5 +29,6 @@ interface AutumnPlan {
28
29
  }
29
30
  export declare const aiCredits: AutumnFeature;
30
31
  export declare const free: AutumnPlan;
31
- export declare const pro: AutumnPlan;
32
+ export declare const plus: AutumnPlan;
33
+ export declare const credits: AutumnPlan;
32
34
  export {};
package/autumn.config.js CHANGED
@@ -8,18 +8,23 @@ export const free = {
8
8
  id: "free",
9
9
  name: "Free",
10
10
  autoEnable: true,
11
- items: [{ featureId: aiCredits.id, included: 250, reset: { interval: "month" } }],
11
+ items: [{ featureId: aiCredits.id, included: 500, reset: { interval: "month" } }],
12
12
  };
13
- export const pro = {
14
- id: "pro",
15
- name: "Vibes Pro",
13
+ export const plus = {
14
+ id: "plus",
15
+ name: "Vibes Plus",
16
16
  price: { amount: 5, interval: "month" },
17
+ items: [{ featureId: aiCredits.id, included: 1000, reset: { interval: "month" } }],
18
+ };
19
+ export const credits = {
20
+ id: "credits",
21
+ name: "AI Credits Top-Up",
22
+ addOn: true,
17
23
  items: [
18
24
  {
19
25
  featureId: aiCredits.id,
20
- included: 1000,
21
- reset: { interval: "month" },
22
- price: { amount: 0.02, billingMethod: "usage_based", billingUnits: 1 },
26
+ included: 0,
27
+ price: { amount: 5, billingMethod: "prepaid", billingUnits: 500 },
23
28
  },
24
29
  ],
25
30
  };
@@ -1 +1 @@
1
- {"version":3,"file":"autumn.config.js","sourceRoot":"","sources":["../jsr/autumn.config.ts"],"names":[],"mappings":"AAkCA,MAAM,CAAC,MAAM,SAAS,GAAkB;IACtC,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAe;IAC9B,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,IAAI;IAChB,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC;CAClF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAe;IAC7B,EAAE,EAAE,KAAK;IACT,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE;IACvC,KAAK,EAAE;QACL;YACE,SAAS,EAAE,SAAS,CAAC,EAAE;YACvB,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;YAC5B,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,EAAE;SACvE;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"autumn.config.js","sourceRoot":"","sources":["../jsr/autumn.config.ts"],"names":[],"mappings":"AAqDA,MAAM,CAAC,MAAM,SAAS,GAAkB;IACtC,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAe;IAC9B,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,IAAI;IAChB,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC;CAClF,CAAC;AAGF,MAAM,CAAC,MAAM,IAAI,GAAe;IAC9B,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE;IAIvC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC;CACnF,CAAC;AAMF,MAAM,CAAC,MAAM,OAAO,GAAe;IACjC,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,mBAAmB;IACzB,KAAK,EAAE,IAAI;IACX,KAAK,EAAE;QACL;YACE,SAAS,EAAE,SAAS,CAAC,EAAE;YACvB,QAAQ,EAAE,CAAC;YACX,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,EAAE;SAClE;KACF;CACF,CAAC"}
package/billing.d.ts CHANGED
@@ -1,5 +1,21 @@
1
1
  import { Logger, Result } from "@adviser/cement";
2
2
  export declare const AI_CREDITS_FEATURE_ID = "ai_credits";
3
+ export declare const DISPLAY_CREDITS_PER_CENT = 2;
4
+ export declare const PLUS_PLAN_ID = "plus";
5
+ export declare const CREDITS_PLAN_ID = "credits";
6
+ export declare const FREE_INCLUDED_CREDITS = 500;
7
+ export declare const PLUS_INCLUDED_CREDITS = 1000;
8
+ export declare const CREDITS_PER_TOPUP_UNIT = 500;
9
+ export declare const MAX_TOPUP_UNITS = 20;
10
+ export declare const AUTO_REFILL_THRESHOLDS: readonly [100, 200, 500];
11
+ export declare const AUTO_REFILL_RELOADS_USD: readonly [5, 10, 25];
12
+ export declare const AUTO_REFILL_DEFAULTS: {
13
+ readonly enabled: false;
14
+ readonly threshold: 200;
15
+ readonly reloadUsd: 5;
16
+ readonly capUsd: 25;
17
+ };
18
+ export declare function autoRefillCapChoicesUsd(reloadUsd: number): number[];
3
19
  export declare function costCentsFromUsage(usage: {
4
20
  readonly given: readonly object[];
5
21
  readonly calculated: {
@@ -15,14 +31,74 @@ export interface BillingTrackArgs {
15
31
  }
16
32
  export interface BillingCheckResult {
17
33
  readonly allowed: boolean;
18
- readonly remainingCents?: number;
34
+ readonly remainingCredits?: number;
19
35
  }
36
+ export interface BillingCustomerData {
37
+ readonly name?: string;
38
+ readonly email?: string;
39
+ }
40
+ export interface BillingAutoRefillState {
41
+ readonly enabled: boolean;
42
+ readonly threshold: number;
43
+ readonly reloadUsd: number;
44
+ readonly capUsd: number;
45
+ }
46
+ export interface BillingCustomerSummary {
47
+ readonly enabled: boolean;
48
+ readonly plan?: "free" | "plus";
49
+ readonly remaining?: number;
50
+ readonly grantRemaining?: number;
51
+ readonly grantIncluded?: number;
52
+ readonly grantResetsAt?: number;
53
+ readonly purchasedRemaining?: number;
54
+ readonly autoRefill?: BillingAutoRefillState;
55
+ }
56
+ export interface BillingCheckoutArgs {
57
+ readonly userId: string;
58
+ readonly kind: "subscribe-plus" | "top-up";
59
+ readonly units?: number;
60
+ readonly successUrl: string;
61
+ readonly customerData?: BillingCustomerData;
62
+ }
63
+ export type BillingCheckoutResult = {
64
+ readonly status: "ok";
65
+ readonly checkoutUrl: string;
66
+ } | {
67
+ readonly status: "membership-required";
68
+ };
69
+ export type BillingConfigResult = {
70
+ readonly status: "ok";
71
+ readonly autoRefill: BillingAutoRefillState;
72
+ } | {
73
+ readonly status: "membership-required";
74
+ } | {
75
+ readonly status: "no-saved-card";
76
+ };
77
+ export interface BillingConfigArgs {
78
+ readonly userId: string;
79
+ readonly autoRefill: BillingAutoRefillState;
80
+ readonly customerData?: BillingCustomerData;
81
+ }
82
+ export declare function isAllowedSuccessUrl(raw: string): boolean;
83
+ export interface AutoRefillWire {
84
+ readonly enabled: boolean;
85
+ readonly threshold: number;
86
+ readonly quantityCredits: number;
87
+ readonly limit: number;
88
+ }
89
+ export declare function parseAutoRefillConfig(cfg: BillingAutoRefillState): Result<AutoRefillWire>;
20
90
  export interface BillingIf {
21
91
  readonly enforceEnabled: boolean;
22
92
  trackUsage(args: BillingTrackArgs): Promise<Result<void>>;
23
93
  checkCredits(args: {
24
94
  readonly userId: string;
25
95
  }): Promise<Result<BillingCheckResult>>;
96
+ customerSummary(args: {
97
+ readonly userId: string;
98
+ readonly customerData?: BillingCustomerData;
99
+ }): Promise<Result<BillingCustomerSummary>>;
100
+ createCheckout(args: BillingCheckoutArgs): Promise<Result<BillingCheckoutResult>>;
101
+ setAutoRefill(args: BillingConfigArgs): Promise<Result<BillingConfigResult>>;
26
102
  }
27
103
  export declare function disabledBilling(): BillingIf;
28
104
  export declare function defaultBilling(opts: {
package/billing.js CHANGED
@@ -1,5 +1,20 @@
1
- import { exception2Result, Result } from "@adviser/cement";
1
+ import { exception2Result, Result, URI } from "@adviser/cement";
2
2
  export const AI_CREDITS_FEATURE_ID = "ai_credits";
3
+ export const DISPLAY_CREDITS_PER_CENT = 2;
4
+ export const PLUS_PLAN_ID = "plus";
5
+ export const CREDITS_PLAN_ID = "credits";
6
+ export const FREE_INCLUDED_CREDITS = 500;
7
+ export const PLUS_INCLUDED_CREDITS = 1000;
8
+ export const CREDITS_PER_TOPUP_UNIT = 500;
9
+ const USD_PER_TOPUP_UNIT = 5;
10
+ export const MAX_TOPUP_UNITS = 20;
11
+ export const AUTO_REFILL_THRESHOLDS = [100, 200, 500];
12
+ export const AUTO_REFILL_RELOADS_USD = [5, 10, 25];
13
+ export const AUTO_REFILL_DEFAULTS = { enabled: false, threshold: 200, reloadUsd: 5, capUsd: 25 };
14
+ const AUTO_REFILL_CAP_MENU_USD = [10, 25, 50, 100];
15
+ export function autoRefillCapChoicesUsd(reloadUsd) {
16
+ return AUTO_REFILL_CAP_MENU_USD.filter((cap) => cap % reloadUsd === 0).slice(0, 3);
17
+ }
3
18
  const FALLBACK_USD_PER_MTOK = 5;
4
19
  export function costCentsFromUsage(usage) {
5
20
  let usd = 0;
@@ -16,14 +31,130 @@ export function costCentsFromUsage(usage) {
16
31
  }
17
32
  return Math.max(0, Math.round(usd * 100));
18
33
  }
34
+ export function isAllowedSuccessUrl(raw) {
35
+ const r = exception2Result(() => {
36
+ const uri = URI.from(raw);
37
+ return { protocol: uri.protocol, hostname: uri.hostname };
38
+ });
39
+ if (r.isErr()) {
40
+ return false;
41
+ }
42
+ const { protocol, hostname } = r.Ok();
43
+ const isLocalhost = hostname === "localhost" || hostname.endsWith(".localhost") || hostname.endsWith(".localhost.vibesdiy.net");
44
+ if (protocol !== "https:" && (protocol !== "http:" || isLocalhost === false)) {
45
+ return false;
46
+ }
47
+ return (isLocalhost ||
48
+ hostname === "vibes.diy" ||
49
+ hostname.endsWith(".vibes.diy") ||
50
+ hostname === "vibesdiy.net" ||
51
+ hostname.endsWith(".vibesdiy.net") ||
52
+ hostname === "vibespreview.dev" ||
53
+ hostname.endsWith(".vibespreview.dev") ||
54
+ hostname.endsWith(".jchris.workers.dev"));
55
+ }
56
+ export function parseAutoRefillConfig(cfg) {
57
+ if (AUTO_REFILL_THRESHOLDS.some((t) => t === cfg.threshold) === false) {
58
+ return Result.Err(`auto-refill threshold must be one of ${AUTO_REFILL_THRESHOLDS.join("/")}`);
59
+ }
60
+ if (AUTO_REFILL_RELOADS_USD.some((rl) => rl === cfg.reloadUsd) === false) {
61
+ return Result.Err(`auto-refill reload must be one of $${AUTO_REFILL_RELOADS_USD.join("/$")}`);
62
+ }
63
+ if (Number.isInteger(cfg.capUsd) === false || cfg.capUsd <= 0 || cfg.capUsd % cfg.reloadUsd !== 0) {
64
+ return Result.Err(`auto-refill cap must be a positive multiple of the $${cfg.reloadUsd} reload`);
65
+ }
66
+ return Result.Ok({
67
+ enabled: cfg.enabled,
68
+ threshold: cfg.threshold,
69
+ quantityCredits: (cfg.reloadUsd / USD_PER_TOPUP_UNIT) * CREDITS_PER_TOPUP_UNIT,
70
+ limit: cfg.capUsd / cfg.reloadUsd,
71
+ });
72
+ }
19
73
  export function disabledBilling() {
20
74
  return {
21
75
  enforceEnabled: false,
22
76
  trackUsage: () => Promise.resolve(Result.Ok(undefined)),
23
77
  checkCredits: () => Promise.resolve(Result.Ok({ allowed: true })),
78
+ customerSummary: () => Promise.resolve(Result.Ok({ enabled: false })),
79
+ createCheckout: () => Promise.resolve(Result.Err("billing is not enabled in this environment")),
80
+ setAutoRefill: () => Promise.resolve(Result.Err("billing is not enabled in this environment")),
24
81
  };
25
82
  }
26
83
  const AUTUMN_API_BASE = "https://api.useautumn.com/v1";
84
+ function parseBalancesJson(json) {
85
+ const balance = json.balance;
86
+ const remaining = balance !== undefined && balance !== null && typeof balance.remaining === "number" ? balance.remaining : undefined;
87
+ const breakdown = balance !== undefined && balance !== null && Array.isArray(balance.breakdown)
88
+ ? balance.breakdown
89
+ : [];
90
+ const resetOf = (e) => {
91
+ const reset = e.reset;
92
+ return reset !== undefined && reset !== null ? reset : undefined;
93
+ };
94
+ const intervalOf = (e) => {
95
+ if (typeof e.interval === "string")
96
+ return e.interval;
97
+ const reset = resetOf(e);
98
+ if (reset !== undefined && typeof reset.interval === "string")
99
+ return reset.interval;
100
+ return "one_off";
101
+ };
102
+ const isPurchased = (e) => {
103
+ if (e.plan_id === CREDITS_PLAN_ID)
104
+ return true;
105
+ const interval = intervalOf(e);
106
+ return interval === "one_off" || interval === "lifetime";
107
+ };
108
+ let grantRemaining = 0;
109
+ let purchasedRemaining = 0;
110
+ let grantResetsAt;
111
+ for (const e of breakdown) {
112
+ const rem = typeof e.remaining === "number" ? e.remaining : 0;
113
+ if (isPurchased(e)) {
114
+ purchasedRemaining += rem;
115
+ continue;
116
+ }
117
+ grantRemaining += rem;
118
+ const reset = resetOf(e);
119
+ if (reset !== undefined &&
120
+ typeof reset.resets_at === "number" &&
121
+ (grantResetsAt === undefined || reset.resets_at < grantResetsAt)) {
122
+ grantResetsAt = reset.resets_at;
123
+ }
124
+ }
125
+ const plan = breakdown.some((e) => e.plan_id === PLUS_PLAN_ID) ? "plus" : "free";
126
+ return {
127
+ ...(remaining !== undefined ? { remaining } : {}),
128
+ plan,
129
+ grantRemaining,
130
+ ...(grantResetsAt !== undefined ? { grantResetsAt } : {}),
131
+ purchasedRemaining,
132
+ hasBreakdown: breakdown.length > 0,
133
+ };
134
+ }
135
+ function parseAutoRefillJson(json) {
136
+ const controls = json.billing_controls;
137
+ const topups = controls !== undefined && controls !== null && Array.isArray(controls.auto_topups) ? controls.auto_topups : [];
138
+ const mine = topups.find((t) => t.feature_id === AI_CREDITS_FEATURE_ID);
139
+ if (mine === undefined || typeof mine.quantity !== "number" || mine.quantity <= 0) {
140
+ return AUTO_REFILL_DEFAULTS;
141
+ }
142
+ const reloadUsd = (mine.quantity / CREDITS_PER_TOPUP_UNIT) * USD_PER_TOPUP_UNIT;
143
+ const purchaseLimit = mine.purchase_limit;
144
+ const limit = purchaseLimit !== undefined && purchaseLimit !== null && typeof purchaseLimit.limit === "number"
145
+ ? purchaseLimit.limit
146
+ : undefined;
147
+ return {
148
+ enabled: mine.enabled === true,
149
+ threshold: typeof mine.threshold === "number" ? mine.threshold : AUTO_REFILL_DEFAULTS.threshold,
150
+ reloadUsd,
151
+ capUsd: limit !== undefined ? limit * reloadUsd : AUTO_REFILL_DEFAULTS.capUsd,
152
+ };
153
+ }
154
+ function hasSavedCard(json) {
155
+ const pm = json.payment_method;
156
+ return pm !== undefined && pm !== null;
157
+ }
27
158
  export function defaultBilling(opts) {
28
159
  const secretKey = opts.secretKey;
29
160
  if (secretKey === undefined || secretKey === "" || opts.track !== "on") {
@@ -58,13 +189,20 @@ export function defaultBilling(opts) {
58
189
  }
59
190
  return post(path, body);
60
191
  }
192
+ const getOrCreate = (userId, customerData, expand) => post("/customers.get_or_create", {
193
+ customer_id: userId,
194
+ ...(customerData?.name !== undefined && customerData.name !== "" ? { name: customerData.name } : {}),
195
+ ...(customerData?.email !== undefined && customerData.email !== "" ? { email: customerData.email } : {}),
196
+ ...(expand !== undefined ? { expand } : {}),
197
+ });
198
+ const checkBalances = (userId) => post("/balances.check", { customer_id: userId, feature_id: AI_CREDITS_FEATURE_ID });
61
199
  return {
62
200
  enforceEnabled: opts.enforce === "on",
63
201
  async trackUsage({ userId, costCents, promptId, model, mode }) {
64
202
  const r = await postWithCustomerRetry("/balances.track", {
65
203
  customer_id: userId,
66
204
  feature_id: AI_CREDITS_FEATURE_ID,
67
- value: costCents,
205
+ value: costCents * DISPLAY_CREDITS_PER_CENT,
68
206
  idempotency_key: promptId,
69
207
  properties: {
70
208
  ...(model !== undefined && model !== "" ? { model } : {}),
@@ -93,7 +231,130 @@ export function defaultBilling(opts) {
93
231
  }
94
232
  const balance = json.balance;
95
233
  const remaining = balance !== undefined && balance !== null && typeof balance.remaining === "number" ? balance.remaining : undefined;
96
- return Result.Ok({ allowed: json.allowed === true, ...(remaining !== undefined ? { remainingCents: remaining } : {}) });
234
+ return Result.Ok({ allowed: json.allowed === true, ...(remaining !== undefined ? { remainingCredits: remaining } : {}) });
235
+ },
236
+ async customerSummary({ userId, customerData }) {
237
+ const rCustomer = await getOrCreate(userId, customerData, ["payment_method", "billing_controls.auto_topups.purchase_limit"]);
238
+ if (rCustomer.isErr()) {
239
+ return Result.Err(rCustomer);
240
+ }
241
+ if (rCustomer.Ok().status >= 400) {
242
+ return Result.Err(`autumn get_or_create failed: ${rCustomer.Ok().status} ${JSON.stringify(rCustomer.Ok().json)}`);
243
+ }
244
+ const rCheck = await checkBalances(userId);
245
+ if (rCheck.isErr()) {
246
+ return Result.Err(rCheck);
247
+ }
248
+ if (rCheck.Ok().status >= 400) {
249
+ return Result.Err(`autumn balances failed: ${rCheck.Ok().status} ${JSON.stringify(rCheck.Ok().json)}`);
250
+ }
251
+ const parsed = parseBalancesJson(rCheck.Ok().json);
252
+ return Result.Ok({
253
+ enabled: true,
254
+ plan: parsed.plan,
255
+ ...(parsed.remaining !== undefined ? { remaining: parsed.remaining } : {}),
256
+ ...(parsed.hasBreakdown ? { grantRemaining: parsed.grantRemaining, purchasedRemaining: parsed.purchasedRemaining } : {}),
257
+ grantIncluded: parsed.plan === "plus" ? PLUS_INCLUDED_CREDITS : FREE_INCLUDED_CREDITS,
258
+ ...(parsed.grantResetsAt !== undefined ? { grantResetsAt: parsed.grantResetsAt } : {}),
259
+ autoRefill: parseAutoRefillJson(rCustomer.Ok().json),
260
+ });
261
+ },
262
+ async createCheckout({ userId, kind, units, successUrl, customerData }) {
263
+ if (isAllowedSuccessUrl(successUrl) === false) {
264
+ return Result.Err(`successUrl not allowed: ${successUrl}`);
265
+ }
266
+ const rCustomer = await getOrCreate(userId, customerData);
267
+ if (rCustomer.isErr()) {
268
+ return Result.Err(rCustomer);
269
+ }
270
+ let body;
271
+ if (kind === "subscribe-plus") {
272
+ body = { customer_id: userId, plan_id: PLUS_PLAN_ID, success_url: successUrl };
273
+ }
274
+ else {
275
+ const rCheck = await checkBalances(userId);
276
+ if (rCheck.isErr()) {
277
+ return Result.Err(rCheck);
278
+ }
279
+ if (rCheck.Ok().status >= 400) {
280
+ return Result.Err(`autumn balances failed: ${rCheck.Ok().status} ${JSON.stringify(rCheck.Ok().json)}`);
281
+ }
282
+ if (parseBalancesJson(rCheck.Ok().json).plan !== "plus") {
283
+ return Result.Ok({ status: "membership-required" });
284
+ }
285
+ const nUnits = Math.min(Math.max(Math.floor(units ?? 1), 1), MAX_TOPUP_UNITS);
286
+ body = {
287
+ customer_id: userId,
288
+ plan_id: CREDITS_PLAN_ID,
289
+ feature_quantities: [{ feature_id: AI_CREDITS_FEATURE_ID, quantity: nUnits * CREDITS_PER_TOPUP_UNIT }],
290
+ success_url: successUrl,
291
+ };
292
+ }
293
+ const r = await post("/billing.attach", body);
294
+ if (r.isErr()) {
295
+ return Result.Err(r);
296
+ }
297
+ const { status, json } = r.Ok();
298
+ if (status >= 400) {
299
+ return Result.Err(`autumn attach failed: ${status} ${JSON.stringify(json)}`);
300
+ }
301
+ const url = typeof json.checkout_url === "string"
302
+ ? json.checkout_url
303
+ : typeof json.payment_url === "string"
304
+ ? json.payment_url
305
+ : undefined;
306
+ if (url === undefined || url === "") {
307
+ return Result.Err(`autumn attach returned no checkout url: ${JSON.stringify(json)}`);
308
+ }
309
+ return Result.Ok({ status: "ok", checkoutUrl: url });
310
+ },
311
+ async setAutoRefill({ userId, autoRefill, customerData }) {
312
+ const rWire = parseAutoRefillConfig(autoRefill);
313
+ if (rWire.isErr()) {
314
+ return Result.Err(rWire);
315
+ }
316
+ const rCustomer = await getOrCreate(userId, customerData, ["payment_method"]);
317
+ if (rCustomer.isErr()) {
318
+ return Result.Err(rCustomer);
319
+ }
320
+ if (rCustomer.Ok().status >= 400) {
321
+ return Result.Err(`autumn get_or_create failed: ${rCustomer.Ok().status} ${JSON.stringify(rCustomer.Ok().json)}`);
322
+ }
323
+ const rCheck = await checkBalances(userId);
324
+ if (rCheck.isErr()) {
325
+ return Result.Err(rCheck);
326
+ }
327
+ if (rCheck.Ok().status >= 400) {
328
+ return Result.Err(`autumn balances failed: ${rCheck.Ok().status} ${JSON.stringify(rCheck.Ok().json)}`);
329
+ }
330
+ if (parseBalancesJson(rCheck.Ok().json).plan !== "plus") {
331
+ return Result.Ok({ status: "membership-required" });
332
+ }
333
+ if (autoRefill.enabled === true && hasSavedCard(rCustomer.Ok().json) === false) {
334
+ return Result.Ok({ status: "no-saved-card" });
335
+ }
336
+ const wire = rWire.Ok();
337
+ const r = await post("/customers.update", {
338
+ customer_id: userId,
339
+ billing_controls: {
340
+ auto_topups: [
341
+ {
342
+ feature_id: AI_CREDITS_FEATURE_ID,
343
+ enabled: wire.enabled,
344
+ threshold: wire.threshold,
345
+ quantity: wire.quantityCredits,
346
+ purchase_limit: { interval: "month", limit: wire.limit },
347
+ },
348
+ ],
349
+ },
350
+ });
351
+ if (r.isErr()) {
352
+ return Result.Err(r);
353
+ }
354
+ if (r.Ok().status >= 400) {
355
+ return Result.Err(`autumn customers.update failed: ${r.Ok().status} ${JSON.stringify(r.Ok().json)}`);
356
+ }
357
+ return Result.Ok({ status: "ok", autoRefill });
97
358
  },
98
359
  };
99
360
  }
package/billing.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"billing.js","sourceRoot":"","sources":["../jsr/billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../jsr/billing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAU,MAAM,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAOxE,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC;AASlD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAG1C,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC;AAGzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAG1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAKlC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU,CAAC;AAC/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAU,CAAC;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAW,CAAC;AAG1G,MAAM,wBAAwB,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAU,CAAC;AAC5D,MAAM,UAAU,uBAAuB,CAAC,SAAiB;IACvD,OAAO,wBAAwB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACrF,CAAC;AAMD,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEhC,MAAM,UAAU,kBAAkB,CAAC,KAGlC;IACC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAG5B,MAAM,IAAI,GAAI,CAA6B,CAAC,IAAI,CAAC;QAIjD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;YACnE,GAAG,IAAI,IAAI,CAAC;YACZ,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACtB,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,qBAAqB,CAAC;IAC5E,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC;AAC5C,CAAC;AA8ED,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAG7C,MAAM,CAAC,GAAG,gBAAgB,CAAC,GAAG,EAAE;QAC9B,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAChI,IAAI,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,WAAW,KAAK,KAAK,CAAC,EAAE,CAAC;QAC7E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,WAAW;QACX,QAAQ,KAAK,WAAW;QACxB,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC;QAC/B,QAAQ,KAAK,cAAc;QAC3B,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC;QAClC,QAAQ,KAAK,kBAAkB;QAC/B,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QACtC,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACzC,CAAC;AACJ,CAAC;AAgBD,MAAM,UAAU,qBAAqB,CAAC,GAA2B;IAC/D,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK,EAAE,CAAC;QACtE,OAAO,MAAM,CAAC,GAAG,CAAC,wCAAwC,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChG,CAAC;IACD,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK,EAAE,CAAC;QACzE,OAAO,MAAM,CAAC,GAAG,CAAC,sCAAsC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChG,CAAC;IACD,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;QAClG,OAAO,MAAM,CAAC,GAAG,CAAC,uDAAuD,GAAG,CAAC,SAAS,SAAS,CAAC,CAAC;IACnG,CAAC;IACD,OAAO,MAAM,CAAC,EAAE,CAAC;QACf,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,eAAe,EAAE,CAAC,GAAG,CAAC,SAAS,GAAG,kBAAkB,CAAC,GAAG,sBAAsB;QAC9E,KAAK,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,SAAS;KAClC,CAAC,CAAC;AACL,CAAC;AAuBD,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,cAAc,EAAE,KAAK;QACrB,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACvD,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAEjE,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,cAAc,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAwB,4CAA4C,CAAC,CAAC;QACtH,aAAa,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAsB,4CAA4C,CAAC,CAAC;KACpH,CAAC;AACJ,CAAC;AAED,MAAM,eAAe,GAAG,8BAA8B,CAAC;AAmBvD,SAAS,iBAAiB,CAAC,IAA6B;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAqD,CAAC;IAC3E,MAAM,SAAS,GACb,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACrH,MAAM,SAAS,GACb,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;QAC3E,CAAC,CAAE,OAAO,CAAC,SAAuC;QAClD,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,OAAO,GAAG,CAAC,CAA0B,EAAuC,EAAE;QAClF,MAAM,KAAK,GAAG,CAAC,CAAC,KAAmD,CAAC;QACpE,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,CAAC,CAAC;IAOF,MAAM,UAAU,GAAG,CAAC,CAA0B,EAAU,EAAE;QACxD,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC,QAAQ,CAAC;QACtD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC,QAAQ,CAAC;QACrF,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,CAA0B,EAAW,EAAE;QAC1D,IAAI,CAAC,CAAC,OAAO,KAAK,eAAe;YAAE,OAAO,IAAI,CAAC;QAC/C,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC/B,OAAO,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,UAAU,CAAC;IAC3D,CAAC,CAAC;IACF,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,aAAiC,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,kBAAkB,IAAI,GAAG,CAAC;YAC1B,SAAS;QACX,CAAC;QACD,cAAc,IAAI,GAAG,CAAC;QACtB,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,IACE,KAAK,KAAK,SAAS;YACnB,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;YACnC,CAAC,aAAa,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,aAAa,CAAC,EAChE,CAAC;YACD,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,YAAY,CAAC,CAAC,CAAC,CAAE,MAAgB,CAAC,CAAC,CAAE,MAAgB,CAAC;IACvG,OAAO;QACL,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,IAAI;QACJ,cAAc;QACd,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,kBAAkB;QAClB,YAAY,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC;KACnC,CAAC;AACJ,CAAC;AAKD,SAAS,mBAAmB,CAAC,IAA6B;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAA8D,CAAC;IACrF,MAAM,MAAM,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9H,MAAM,IAAI,GAAI,MAAoC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,qBAAqB,CAAC,CAAC;IACvG,IAAI,IAAI,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC;QAClF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,sBAAsB,CAAC,GAAG,kBAAkB,CAAC;IAChF,MAAM,aAAa,GAAG,IAAI,CAAC,cAA4D,CAAC;IACxF,MAAM,KAAK,GACT,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,IAAI,IAAI,OAAO,aAAa,CAAC,KAAK,KAAK,QAAQ;QAC9F,CAAC,CAAC,aAAa,CAAC,KAAK;QACrB,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI;QAC9B,SAAS,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,SAAS;QAC/F,SAAS;QACT,MAAM,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM;KAC9E,CAAC;AACJ,CAAC;AAQD,SAAS,YAAY,CAAC,IAA6B;IACjD,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC;IAC/B,OAAO,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAO9B;IACC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACvE,OAAO,eAAe,EAAE,CAAC;IAC3B,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC;IAGhD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,KAAwB,EAAE,IAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAErG,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,IAA6B,EAA8B,EAAE,CACvF,gBAAgB,CAAC,KAAK,IAAI,EAAE;QAC1B,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,OAAO,GAAG,IAAI,EAAE,EAAE;YAC7C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,SAAS,EAAE;gBACpC,eAAe,EAAE,OAAO;aACzB;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAA4B,CAAC;QAC7E,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEL,SAAS,kBAAkB,CAAC,CAAY;QACtC,OAAO,CAAC,CAAC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAClF,CAAC;IAMD,KAAK,UAAU,qBAAqB,CAAC,IAAY,EAAE,IAA6B,EAAE,MAAc;QAC9F,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC;YAC9D,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,0BAA0B,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;QAChF,IAAI,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;YACpB,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1B,CAAC;IAKD,MAAM,WAAW,GAAG,CAClB,MAAc,EACd,YAAkC,EAClC,MAA0B,EACE,EAAE,CAC9B,IAAI,CAAC,0BAA0B,EAAE;QAC/B,WAAW,EAAE,MAAM;QACnB,GAAG,CAAC,YAAY,EAAE,IAAI,KAAK,SAAS,IAAI,YAAY,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,GAAG,CAAC,YAAY,EAAE,KAAK,KAAK,SAAS,IAAI,YAAY,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxG,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEL,MAAM,aAAa,GAAG,CAAC,MAAc,EAA8B,EAAE,CACnE,IAAI,CAAC,iBAAiB,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAEtF,OAAO;QACL,cAAc,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI;QACrC,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAoB;YAC7E,MAAM,CAAC,GAAG,MAAM,qBAAqB,CACnC,iBAAiB,EACjB;gBACE,WAAW,EAAE,MAAM;gBACnB,UAAU,EAAE,qBAAqB;gBAGjC,KAAK,EAAE,SAAS,GAAG,wBAAwB;gBAE3C,eAAe,EAAE,QAAQ;gBACzB,UAAU,EAAE;oBACV,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzD,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACvD;aACF,EACD,MAAM,CACP,CAAC;YACF,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBACd,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YAID,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,CAAC;gBAC/F,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBACzB,OAAO,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5F,CAAC;YACD,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QAC9B,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,EAA+B;YACxD,MAAM,CAAC,GAAG,MAAM,qBAAqB,CAAC,iBAAiB,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,qBAAqB,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7H,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBACd,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;gBAClB,OAAO,MAAM,CAAC,GAAG,CAAC,wBAAwB,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9E,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAqD,CAAC;YAC3E,MAAM,SAAS,GACb,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YACrH,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5H,CAAC;QACD,KAAK,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE;YAC5C,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,6CAA6C,CAAC,CAAC,CAAC;YAC7H,IAAI,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;gBACtB,OAAO,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;YACD,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBACjC,OAAO,MAAM,CAAC,GAAG,CAAC,gCAAgC,SAAS,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpH,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;YAC3C,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;gBACnB,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBAC9B,OAAO,MAAM,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzG,CAAC;YACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC,EAAE,CAAC;gBACf,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1E,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxH,aAAa,EAAE,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,qBAAqB;gBACrF,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtF,UAAU,EAAE,mBAAmB,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;aACrD,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE;YACpE,IAAI,mBAAmB,CAAC,UAAU,CAAC,KAAK,KAAK,EAAE,CAAC;gBAC9C,OAAO,MAAM,CAAC,GAAG,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YAC1D,IAAI,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;gBACtB,OAAO,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;YACD,IAAI,IAA6B,CAAC;YAClC,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAC9B,IAAI,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YACjF,CAAC;iBAAM,CAAC;gBAMN,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3C,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;oBACnB,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC;gBACD,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;oBAC9B,OAAO,MAAM,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACzG,CAAC;gBACD,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBACxD,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;gBACtD,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;gBAC9E,IAAI,GAAG;oBACL,WAAW,EAAE,MAAM;oBACnB,OAAO,EAAE,eAAe;oBAIxB,kBAAkB,EAAE,CAAC,EAAE,UAAU,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,GAAG,sBAAsB,EAAE,CAAC;oBACtG,WAAW,EAAE,UAAU;iBACxB,CAAC;YACJ,CAAC;YAGD,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YAC9C,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBACd,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;gBAClB,OAAO,MAAM,CAAC,GAAG,CAAC,yBAAyB,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/E,CAAC;YAGD,MAAM,GAAG,GACP,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ;gBACnC,CAAC,CAAC,IAAI,CAAC,YAAY;gBACnB,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;oBACpC,CAAC,CAAC,IAAI,CAAC,WAAW;oBAClB,CAAC,CAAC,SAAS,CAAC;YAClB,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;gBACpC,OAAO,MAAM,CAAC,GAAG,CAAC,2CAA2C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,KAAK,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE;YACtD,MAAM,KAAK,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAChD,IAAI,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;gBAClB,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC9E,IAAI,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;gBACtB,OAAO,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;YACD,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBACjC,OAAO,MAAM,CAAC,GAAG,CAAC,gCAAgC,SAAS,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpH,CAAC;YAID,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;YAC3C,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;gBACnB,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBAC9B,OAAO,MAAM,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzG,CAAC;YACD,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACxD,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;YACtD,CAAC;YAED,IAAI,UAAU,CAAC,OAAO,KAAK,IAAI,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;gBAC/E,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YAChD,CAAC;YACD,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE;gBACxC,WAAW,EAAE,MAAM;gBACnB,gBAAgB,EAAE;oBAChB,WAAW,EAAE;wBACX;4BACE,UAAU,EAAE,qBAAqB;4BACjC,OAAO,EAAE,IAAI,CAAC,OAAO;4BACrB,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,QAAQ,EAAE,IAAI,CAAC,eAAe;4BAI9B,cAAc,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;yBACzD;qBACF;iBACF;aACF,CAAC,CAAC;YACH,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBACd,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBACzB,OAAO,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvG,CAAC;YACD,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QACjD,CAAC;KACF,CAAC;AACJ,CAAC;AAUD,MAAM,CAAC,MAAM,iBAAiB,GAA2B;IACvD,iBAAiB,EAAE,CAAC;CACrB,CAAC;AAIF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAE3C,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC;AAC9D,CAAC"}
@@ -24,6 +24,7 @@ import { setModeFsIdEvento } from "./public/set-mode-fsid.js";
24
24
  import { forkAppEvento } from "./public/fork-app.js";
25
25
  import { publishAppEvento } from "./public/publish-app.js";
26
26
  import { listVersionsEvento } from "./public/list-versions.js";
27
+ import { listNotificationsEvento, markNotificationsReadEvento } from "./public/list-notifications.js";
27
28
  import { getCertFromCsrEvento } from "./public/get-cert-from-csr.js";
28
29
  import { createInviteEvento, revokeInviteEvento, redeemInviteEvento, hasAccessInviteEvento, inviteSetRoleEvento, listInviteGrantsEvento, } from "./public/invite-flow.js";
29
30
  import { listHandleBindingsEvento, createHandleBindingEvento, deleteHandleBindingEvento } from "./public/user-slug-bindings.js";
@@ -32,6 +33,7 @@ import { listModelsEvento } from "./public/list-models.js";
32
33
  import { putDocEvento, broadcastEphemeralEvento, getDocEvento, queryDocsEvento, deleteDocEvento, subscribeDocsEvento, subscribeViewerGrantsEvento, listDbNamesEvento, listDmThreadsEvento, markDmReadEvento, } from "./public/app-documents.js";
33
34
  import { listMembersEvento } from "./public/list-members.js";
34
35
  import { listMembershipsEvento } from "./public/list-memberships.js";
36
+ import { billingCustomerEvento, billingCheckoutEvento, billingConfigEvento } from "./public/billing-msg.js";
35
37
  import { whoAmIEvento } from "./public/who-am-i.js";
36
38
  import { accessFnSourceEvento } from "./public/access-fn-source.js";
37
39
  import { lookupHandlesEvento } from "./public/lookup-handles.js";
@@ -46,6 +48,8 @@ import { reportTopVibesByMembersEvento } from "./public/report-top-vibes-by-memb
46
48
  import { reportAttributionReferrersEvento } from "./public/report-attribution-referrers.js";
47
49
  import { reportCampaignHealthEvento } from "./public/report-campaign-health.js";
48
50
  import { reportCampaignAdPreviewsEvento } from "./public/report-campaign-ad-previews.js";
51
+ import { homeLeaderboardEvento } from "./public/home-leaderboard.js";
52
+ import { curatedNewVibesEvento } from "./public/curated-new-vibes.js";
49
53
  function entry(reqType, handler) {
50
54
  return { reqType, handler };
51
55
  }
@@ -75,12 +79,17 @@ export const handlerManifest = [
75
79
  entry("vibes.diy.req-subscribe-request-grants", subscribeRequestGrantsEvento),
76
80
  entry("vibes.diy.req-list-members", listMembersEvento),
77
81
  entry("vibes.diy.req-list-memberships", listMembershipsEvento),
82
+ entry("vibes.diy.req-billing-customer", billingCustomerEvento),
83
+ entry("vibes.diy.req-billing-checkout", billingCheckoutEvento),
84
+ entry("vibes.diy.req-billing-config", billingConfigEvento),
78
85
  entry("vibe.req.whoAmI", whoAmIEvento),
79
86
  entry("vibe.req.accessFnSource", accessFnSourceEvento),
80
87
  entry("vibe.req.lookupHandles", lookupHandlesEvento),
81
88
  entry("vibes.diy.req-subscribe-user-notifications", subscribeUserNotificationsEvento),
82
89
  entry("vibes.diy.req-register-push-token", registerPushTokenEvento),
83
90
  entry("vibes.diy.req-deregister-push-token", deregisterPushTokenEvento),
91
+ entry("vibes.diy.req-list-notifications", listNotificationsEvento),
92
+ entry("vibes.diy.req-mark-notifications-read", markNotificationsReadEvento),
84
93
  entry("vibes.diy.req-list-dm-threads", listDmThreadsEvento),
85
94
  entry("vibes.diy.req-asset-upload-grant", assetUploadGrantEvento),
86
95
  entry("vibes.diy.req-list-user-slug-bindings", listHandleBindingsEvento),
@@ -94,6 +103,8 @@ export const handlerManifest = [
94
103
  entry("vibes.diy.req-report-attribution-referrers", reportAttributionReferrersEvento),
95
104
  entry("vibes.diy.req-report-campaign-health", reportCampaignHealthEvento),
96
105
  entry("vibes.diy.req-report-campaign-ad-previews", reportCampaignAdPreviewsEvento),
106
+ entry("vibes.diy.req-home-leaderboard", homeLeaderboardEvento),
107
+ entry("vibes.diy.req-curated-new-vibes", curatedNewVibesEvento),
97
108
  entry("vibes.diy.req-get-chat-details", getChatDetailsEvento),
98
109
  entry("vibes.diy.req-get-chat-response", getChatResponseEvento),
99
110
  entry("vibes.diy.req-get-vibe-chips", getVibeChipsEvento),
@@ -1 +1 @@
1
- {"version":3,"file":"evento-handler-manifest.js","sourceRoot":"","sources":["../jsr/evento-handler-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evento-handler-manifest.js","sourceRoot":"","sources":["../jsr/evento-handler-manifest.ts"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -18,11 +18,20 @@ export { buildSeedSectionBlocks } from "./intern/seed-chat-section.js";
18
18
  export * from "./noop-cache.js";
19
19
  export * from "./intern/chat-persist-gate.js";
20
20
  export * from "./intern/ensure-slug-binding.js";
21
+ export * from "./intern/emit-notification.js";
22
+ export * from "./intern/notify-remix.js";
23
+ export * from "./intern/notify-remix-clone.js";
24
+ export * from "./intern/notify-vibe-published.js";
25
+ export * from "./intern/notify-comment-posted.js";
26
+ export * from "./intern/notify-request-grant.js";
27
+ export * from "./intern/notify-member-joined.js";
28
+ export * from "./intern/notify-dm-received.js";
21
29
  export * from "./intern/recovery.js";
22
30
  export * from "./asset-grant.js";
23
31
  export * from "./asset-session.js";
24
32
  export * from "./public/store-and-audit-asset.js";
25
33
  export * from "./public/handle-settings.js";
34
+ export * from "./public/email-unsubscribe.js";
26
35
  export * from "./public/ensure-handle-avatar.js";
27
36
  export * from "./public/convert-image-evt.js";
28
37
  export * from "./public/access-function.js";
package/index.js CHANGED
@@ -18,11 +18,20 @@ export { buildSeedSectionBlocks } from "./intern/seed-chat-section.js";
18
18
  export * from "./noop-cache.js";
19
19
  export * from "./intern/chat-persist-gate.js";
20
20
  export * from "./intern/ensure-slug-binding.js";
21
+ export * from "./intern/emit-notification.js";
22
+ export * from "./intern/notify-remix.js";
23
+ export * from "./intern/notify-remix-clone.js";
24
+ export * from "./intern/notify-vibe-published.js";
25
+ export * from "./intern/notify-comment-posted.js";
26
+ export * from "./intern/notify-request-grant.js";
27
+ export * from "./intern/notify-member-joined.js";
28
+ export * from "./intern/notify-dm-received.js";
21
29
  export * from "./intern/recovery.js";
22
30
  export * from "./asset-grant.js";
23
31
  export * from "./asset-session.js";
24
32
  export * from "./public/store-and-audit-asset.js";
25
33
  export * from "./public/handle-settings.js";
34
+ export * from "./public/email-unsubscribe.js";
26
35
  export * from "./public/ensure-handle-avatar.js";
27
36
  export * from "./public/convert-image-evt.js";
28
37
  export * from "./public/access-function.js";