@epztickets/common 1.68.0 → 1.70.0

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.
@@ -15,6 +15,8 @@ export interface OrderCreatedEvent {
15
15
  noiseLevel?: number;
16
16
  timezone?: string;
17
17
  commissionRate?: number;
18
+ selfBooking?: boolean;
19
+ selfBookingFee?: number;
18
20
  expiresAt: Date;
19
21
  sellableUnit: {
20
22
  id: string;
@@ -32,7 +32,8 @@ export declare enum Subjects {
32
32
  ConnectDisconnectRequested = "events.user.connect-disconnect-requested",
33
33
  ConnectDisconnectApproved = "events.user.connect-disconnect-approved",
34
34
  ConnectDisconnectRejected = "events.user.connect-disconnect-rejected",
35
- UserSelfBookingRecorded = "events.user.self-booking-recorded"
35
+ UserSelfBookingRecorded = "events.user.self-booking-recorded",
36
+ UserSelfBookingTrialChanged = "events.user.self-booking-trial-changed"
36
37
  }
37
38
  export declare enum Streams {
38
39
  Events = "events",
@@ -70,6 +70,21 @@ var Subjects;
70
70
  // default ($1). Snapshotting at publish time means rate changes
71
71
  // never retroactively affect past bookings.
72
72
  Subjects["UserSelfBookingRecorded"] = "events.user.self-booking-recorded";
73
+ // Published by auth's set-trial-expiry admin route INSTEAD OF
74
+ // (well, IN ADDITION TO) UserUpdated. UserUpdated has a known
75
+ // architectural race: multiple services publish UserUpdated for
76
+ // the same user (auth on role/trial/commission changes, payments
77
+ // on Stripe account.updated webhooks, etc.), each stamping its
78
+ // own local version. Consumers can't tell which publisher
79
+ // produced a given event so they fall back to "newer version
80
+ // wins" — and an auth-side trial change at v6 gets silently
81
+ // ignored by replicas that have v11 cached from a recent
82
+ // Stripe webhook.
83
+ //
84
+ // This dedicated subject bypasses the race: it's published only
85
+ // by set-trial-expiry, and the dedicated listener in orders
86
+ // applies the trial change unconditionally. No version check.
87
+ Subjects["UserSelfBookingTrialChanged"] = "events.user.self-booking-trial-changed";
73
88
  })(Subjects || (exports.Subjects = Subjects = {}));
74
89
  var Streams;
75
90
  (function (Streams) {
@@ -0,0 +1,13 @@
1
+ import { Subjects } from "./subjects";
2
+ export interface UserSelfBookingTrialChangedEvent {
3
+ subject: Subjects.UserSelfBookingTrialChanged;
4
+ data: {
5
+ userId: string;
6
+ /** ISO timestamp ("set to this date") or "" (clear sentinel). */
7
+ selfBookingTrialExpiresAt: string;
8
+ /** Which admin made the change — for the audit trail. */
9
+ changedByAdminId: string;
10
+ /** When auth applied the change. */
11
+ changedAt: string;
12
+ };
13
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/build/index.d.ts CHANGED
@@ -50,6 +50,7 @@ export * from "./events/user-deletion-requested-event";
50
50
  export * from "./events/user-deletion-rejected-event";
51
51
  export * from "./events/user-email-verification-requested-event";
52
52
  export * from "./events/user-self-booking-recorded-event";
53
+ export * from "./events/user-self-booking-trial-changed-event";
53
54
  export * from "./events/connect-disconnect-requested-event";
54
55
  export * from "./events/connect-disconnect-approved-event";
55
56
  export * from "./events/connect-disconnect-rejected-event";
package/build/index.js CHANGED
@@ -70,6 +70,7 @@ __exportStar(require("./events/user-deletion-requested-event"), exports);
70
70
  __exportStar(require("./events/user-deletion-rejected-event"), exports);
71
71
  __exportStar(require("./events/user-email-verification-requested-event"), exports);
72
72
  __exportStar(require("./events/user-self-booking-recorded-event"), exports);
73
+ __exportStar(require("./events/user-self-booking-trial-changed-event"), exports);
73
74
  __exportStar(require("./events/connect-disconnect-requested-event"), exports);
74
75
  __exportStar(require("./events/connect-disconnect-approved-event"), exports);
75
76
  __exportStar(require("./events/connect-disconnect-rejected-event"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epztickets/common",
3
- "version": "1.68.0",
3
+ "version": "1.70.0",
4
4
  "main": "./build/index.js",
5
5
  "types": "./build/index.d.ts",
6
6
  "files": [