@darraghor/nest-backend-libs 5.7.4 → 6.0.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.
Files changed (142) hide show
  1. package/README.md +87 -36
  2. package/dist/cli/commands/WriteApiClientCommand.js +1 -2
  3. package/dist/cli/commands/WriteApiClientCommand.js.map +1 -1
  4. package/dist/database-sqlite/SqliteTypeOrmConfigurationProvider.js +5 -4
  5. package/dist/database-sqlite/SqliteTypeOrmConfigurationProvider.js.map +1 -1
  6. package/dist/exports/authorization.d.ts +14 -0
  7. package/dist/exports/authorization.js +12 -0
  8. package/dist/exports/authorization.js.map +1 -0
  9. package/dist/exports/core.d.ts +11 -0
  10. package/dist/exports/core.js +10 -0
  11. package/dist/exports/core.js.map +1 -0
  12. package/dist/exports/database.d.ts +5 -0
  13. package/dist/exports/database.js +6 -0
  14. package/dist/exports/database.js.map +1 -0
  15. package/dist/exports/email.d.ts +4 -0
  16. package/dist/exports/email.js +4 -0
  17. package/dist/exports/email.js.map +1 -0
  18. package/dist/exports/invitations.d.ts +6 -0
  19. package/dist/exports/invitations.js +6 -0
  20. package/dist/exports/invitations.js.map +1 -0
  21. package/dist/exports/organisations.d.ts +11 -0
  22. package/dist/exports/organisations.js +12 -0
  23. package/dist/exports/organisations.js.map +1 -0
  24. package/dist/exports/stripe-legacy.d.ts +6 -0
  25. package/dist/exports/stripe-legacy.js +7 -0
  26. package/dist/exports/stripe-legacy.js.map +1 -0
  27. package/dist/exports/stripe.d.ts +11 -0
  28. package/dist/exports/stripe.js +9 -0
  29. package/dist/exports/stripe.js.map +1 -0
  30. package/dist/exports/twitter.d.ts +5 -0
  31. package/dist/exports/twitter.js +5 -0
  32. package/dist/exports/twitter.js.map +1 -0
  33. package/dist/exports/users.d.ts +10 -0
  34. package/dist/exports/users.js +11 -0
  35. package/dist/exports/users.js.map +1 -0
  36. package/dist/index.d.ts +11 -0
  37. package/dist/index.js +11 -0
  38. package/dist/index.js.map +1 -1
  39. package/dist/organisation-subscriptions/entities/organisation-subscription.entity.js +2 -1
  40. package/dist/organisation-subscriptions/entities/organisation-subscription.entity.js.map +1 -1
  41. package/dist/stripe-client/StripeClientConfigurationService.js +1 -0
  42. package/dist/stripe-client/StripeClientConfigurationService.js.map +1 -1
  43. package/dist/stripe-client/StripeClientProvider.js +1 -1
  44. package/dist/stripe-client/StripeClientProvider.js.map +1 -1
  45. package/dist/stripe-client/controllers/stripe-checkout-controller.d.ts +1 -0
  46. package/dist/stripe-client/controllers/stripe-checkout-controller.js +1 -0
  47. package/dist/stripe-client/controllers/stripe-checkout-controller.js.map +1 -1
  48. package/dist/stripe-client/controllers/stripe-events-controller.js +1 -0
  49. package/dist/stripe-client/controllers/stripe-events-controller.js.map +1 -1
  50. package/dist/stripe-client/controllers/stripe-unauthenticated-checkout-controller.js +1 -0
  51. package/dist/stripe-client/controllers/stripe-unauthenticated-checkout-controller.js.map +1 -1
  52. package/dist/stripe-client/controllers/stripe-webhook-controller.js +1 -4
  53. package/dist/stripe-client/controllers/stripe-webhook-controller.js.map +1 -1
  54. package/dist/stripe-client/services/auth-stripe-checkout.service.js +1 -0
  55. package/dist/stripe-client/services/auth-stripe-checkout.service.js.map +1 -1
  56. package/dist/stripe-client/services/queued-payment-event.handler.d.ts +1 -0
  57. package/dist/stripe-client/services/queued-payment-event.handler.js +2 -0
  58. package/dist/stripe-client/services/queued-payment-event.handler.js.map +1 -1
  59. package/dist/stripe-client/services/stripe-checkout.service.d.ts +1 -0
  60. package/dist/stripe-client/services/stripe-checkout.service.js +2 -0
  61. package/dist/stripe-client/services/stripe-checkout.service.js.map +1 -1
  62. package/dist/stripe-client/stripe-account.module.d.ts +1 -0
  63. package/dist/stripe-client/stripe-account.module.js +2 -0
  64. package/dist/stripe-client/stripe-account.module.js.map +1 -1
  65. package/dist/stripe-client/stripe-account.options.d.ts +2 -0
  66. package/dist/stripe-client/stripe-account.options.js.map +1 -1
  67. package/dist/stripe-payments/controllers/secure-stripe-checkout.controller.d.ts +10 -0
  68. package/dist/stripe-payments/controllers/secure-stripe-checkout.controller.js +65 -0
  69. package/dist/stripe-payments/controllers/secure-stripe-checkout.controller.js.map +1 -0
  70. package/dist/stripe-payments/controllers/secure-stripe-events.controller.d.ts +9 -0
  71. package/dist/stripe-payments/controllers/secure-stripe-events.controller.js +65 -0
  72. package/dist/stripe-payments/controllers/secure-stripe-events.controller.js.map +1 -0
  73. package/dist/stripe-payments/controllers/secure-stripe-webhook.controller.d.ts +14 -0
  74. package/dist/stripe-payments/controllers/secure-stripe-webhook.controller.js +112 -0
  75. package/dist/stripe-payments/controllers/secure-stripe-webhook.controller.js.map +1 -0
  76. package/dist/stripe-payments/entities/stripe-checkout-attempt.entity.d.ts +15 -0
  77. package/dist/stripe-payments/entities/stripe-checkout-attempt.entity.js +88 -0
  78. package/dist/stripe-payments/entities/stripe-checkout-attempt.entity.js.map +1 -0
  79. package/dist/stripe-payments/entities/stripe-payment-event.entity.d.ts +16 -0
  80. package/dist/stripe-payments/entities/stripe-payment-event.entity.js +101 -0
  81. package/dist/stripe-payments/entities/stripe-payment-event.entity.js.map +1 -0
  82. package/dist/stripe-payments/entities/stripe-payment-state.entity.d.ts +9 -0
  83. package/dist/stripe-payments/entities/stripe-payment-state.entity.js +53 -0
  84. package/dist/stripe-payments/entities/stripe-payment-state.entity.js.map +1 -0
  85. package/dist/stripe-payments/models/secure-checkout.dto.d.ts +14 -0
  86. package/dist/stripe-payments/models/secure-checkout.dto.js +105 -0
  87. package/dist/stripe-payments/models/secure-checkout.dto.js.map +1 -0
  88. package/dist/stripe-payments/models/secure-payment-response.dto.d.ts +7 -0
  89. package/dist/stripe-payments/models/secure-payment-response.dto.js +30 -0
  90. package/dist/stripe-payments/models/secure-payment-response.dto.js.map +1 -0
  91. package/dist/stripe-payments/services/default-stripe-payments-entitlement-store.d.ts +12 -0
  92. package/dist/stripe-payments/services/default-stripe-payments-entitlement-store.js +49 -0
  93. package/dist/stripe-payments/services/default-stripe-payments-entitlement-store.js.map +1 -0
  94. package/dist/stripe-payments/services/secure-stripe-checkout.service.d.ts +24 -0
  95. package/dist/stripe-payments/services/secure-stripe-checkout.service.js +213 -0
  96. package/dist/stripe-payments/services/secure-stripe-checkout.service.js.map +1 -0
  97. package/dist/stripe-payments/services/secure-stripe-client.provider.d.ts +2 -0
  98. package/dist/stripe-payments/services/secure-stripe-client.provider.js +15 -0
  99. package/dist/stripe-payments/services/secure-stripe-client.provider.js.map +1 -0
  100. package/dist/stripe-payments/services/secure-stripe-product.service.d.ts +9 -0
  101. package/dist/stripe-payments/services/secure-stripe-product.service.js +54 -0
  102. package/dist/stripe-payments/services/secure-stripe-product.service.js.map +1 -0
  103. package/dist/stripe-payments/services/secure-stripe-webhook.service.d.ts +14 -0
  104. package/dist/stripe-payments/services/secure-stripe-webhook.service.js +58 -0
  105. package/dist/stripe-payments/services/secure-stripe-webhook.service.js.map +1 -0
  106. package/dist/stripe-payments/services/secure-subscription.service.d.ts +18 -0
  107. package/dist/stripe-payments/services/secure-subscription.service.js +217 -0
  108. package/dist/stripe-payments/services/secure-subscription.service.js.map +1 -0
  109. package/dist/stripe-payments/services/stripe-payment-event.processor.d.ts +15 -0
  110. package/dist/stripe-payments/services/stripe-payment-event.processor.js +78 -0
  111. package/dist/stripe-payments/services/stripe-payment-event.processor.js.map +1 -0
  112. package/dist/stripe-payments/services/stripe-payment-event.service.d.ts +20 -0
  113. package/dist/stripe-payments/services/stripe-payment-event.service.js +178 -0
  114. package/dist/stripe-payments/services/stripe-payment-event.service.js.map +1 -0
  115. package/dist/stripe-payments/services/stripe-payment-fulfillment.service.d.ts +31 -0
  116. package/dist/stripe-payments/services/stripe-payment-fulfillment.service.js +331 -0
  117. package/dist/stripe-payments/services/stripe-payment-fulfillment.service.js.map +1 -0
  118. package/dist/stripe-payments/services/stripe-payments-operations.service.d.ts +25 -0
  119. package/dist/stripe-payments/services/stripe-payments-operations.service.js +59 -0
  120. package/dist/stripe-payments/services/stripe-payments-operations.service.js.map +1 -0
  121. package/dist/stripe-payments/services/stripe-payments-telemetry.service.d.ts +7 -0
  122. package/dist/stripe-payments/services/stripe-payments-telemetry.service.js +40 -0
  123. package/dist/stripe-payments/services/stripe-payments-telemetry.service.js.map +1 -0
  124. package/dist/stripe-payments/stripe-payment.config.d.ts +19 -0
  125. package/dist/stripe-payments/stripe-payment.config.js +98 -0
  126. package/dist/stripe-payments/stripe-payment.config.js.map +1 -0
  127. package/dist/stripe-payments/stripe-payment.config.test.d.ts +1 -0
  128. package/dist/stripe-payments/stripe-payment.config.test.js +59 -0
  129. package/dist/stripe-payments/stripe-payment.config.test.js.map +1 -0
  130. package/dist/stripe-payments/stripe-payments.extensions.d.ts +69 -0
  131. package/dist/stripe-payments/stripe-payments.extensions.js +30 -0
  132. package/dist/stripe-payments/stripe-payments.extensions.js.map +1 -0
  133. package/dist/stripe-payments/stripe-payments.module.d.ts +12 -0
  134. package/dist/stripe-payments/stripe-payments.module.js +118 -0
  135. package/dist/stripe-payments/stripe-payments.module.js.map +1 -0
  136. package/dist/stripe-payments/stripe-payments.options.d.ts +21 -0
  137. package/dist/stripe-payments/stripe-payments.options.js +2 -0
  138. package/dist/stripe-payments/stripe-payments.options.js.map +1 -0
  139. package/dist/typeorm/entities.d.ts +15 -0
  140. package/dist/typeorm/entities.js +32 -0
  141. package/dist/typeorm/entities.js.map +1 -0
  142. package/package.json +85 -38
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secure-subscription.service.js","sourceRoot":"","sources":["../../../src/stripe-payments/services/secure-subscription.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { Job } from "bullmq";
2
+ import { WorkerHost } from "@nestjs/bullmq";
3
+ import Stripe from "stripe";
4
+ import { StripePaymentEventService } from "./stripe-payment-event.service.js";
5
+ import { StripePaymentFulfillmentService } from "./stripe-payment-fulfillment.service.js";
6
+ import { StripePaymentsTelemetryService } from "./stripe-payments-telemetry.service.js";
7
+ export declare class StripePaymentEventProcessor extends WorkerHost {
8
+ private readonly eventService;
9
+ private readonly fulfillmentService;
10
+ private readonly telemetry;
11
+ private readonly logger;
12
+ constructor(eventService: StripePaymentEventService, fulfillmentService: StripePaymentFulfillmentService, telemetry: StripePaymentsTelemetryService);
13
+ process(job: Job<Stripe.Event>): Promise<void>;
14
+ onFailed(job: Job<Stripe.Event> | undefined, error: Error): void;
15
+ }
@@ -0,0 +1,78 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var StripePaymentEventProcessor_1;
11
+ import { Injectable, Logger } from "@nestjs/common";
12
+ import { OnWorkerEvent, Processor, WorkerHost } from "@nestjs/bullmq";
13
+ import { StripePaymentEventService } from "./stripe-payment-event.service.js";
14
+ import { StripePaymentFulfillmentService } from "./stripe-payment-fulfillment.service.js";
15
+ import { StripePaymentsTelemetryService } from "./stripe-payments-telemetry.service.js";
16
+ let StripePaymentEventProcessor = StripePaymentEventProcessor_1 = class StripePaymentEventProcessor extends WorkerHost {
17
+ eventService;
18
+ fulfillmentService;
19
+ telemetry;
20
+ logger = new Logger(StripePaymentEventProcessor_1.name);
21
+ constructor(eventService, fulfillmentService, telemetry) {
22
+ super();
23
+ this.eventService = eventService;
24
+ this.fulfillmentService = fulfillmentService;
25
+ this.telemetry = telemetry;
26
+ }
27
+ async process(job) {
28
+ const event = job.data;
29
+ const isClaimed = await this.eventService.claim(event.id);
30
+ if (!isClaimed) {
31
+ if (await this.eventService.isProcessed(event.id)) {
32
+ return;
33
+ }
34
+ throw new Error(`Stripe event ${event.id} is currently claimed by another worker`);
35
+ }
36
+ try {
37
+ await this.fulfillmentService.process(event);
38
+ await this.eventService.markProcessed(event.id);
39
+ await this.telemetry.record({
40
+ name: "webhook.processed",
41
+ stripeEventId: event.id,
42
+ eventType: event.type,
43
+ });
44
+ }
45
+ catch (error) {
46
+ await this.eventService.markFailed(event.id, error);
47
+ await this.telemetry.record({
48
+ name: "webhook.failed",
49
+ stripeEventId: event.id,
50
+ eventType: event.type,
51
+ error: error instanceof Error ? error.message : String(error),
52
+ });
53
+ throw error;
54
+ }
55
+ }
56
+ onFailed(job, error) {
57
+ this.logger.error("Stripe payment queue job failed", {
58
+ jobId: job?.id,
59
+ eventId: job?.data.id,
60
+ error: error.message,
61
+ });
62
+ }
63
+ };
64
+ __decorate([
65
+ OnWorkerEvent("failed"),
66
+ __metadata("design:type", Function),
67
+ __metadata("design:paramtypes", [Object, Error]),
68
+ __metadata("design:returntype", void 0)
69
+ ], StripePaymentEventProcessor.prototype, "onFailed", null);
70
+ StripePaymentEventProcessor = StripePaymentEventProcessor_1 = __decorate([
71
+ Injectable(),
72
+ Processor("stripe-events"),
73
+ __metadata("design:paramtypes", [StripePaymentEventService,
74
+ StripePaymentFulfillmentService,
75
+ StripePaymentsTelemetryService])
76
+ ], StripePaymentEventProcessor);
77
+ export { StripePaymentEventProcessor };
78
+ //# sourceMappingURL=stripe-payment-event.processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripe-payment-event.processor.js","sourceRoot":"","sources":["../../../src/stripe-payments/services/stripe-payment-event.processor.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAC,UAAU,EAAE,MAAM,EAAC,MAAM,gBAAgB,CAAC;AAElD,OAAO,EAAC,aAAa,EAAE,SAAS,EAAE,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAC,yBAAyB,EAAC,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAC,+BAA+B,EAAC,MAAM,yCAAyC,CAAC;AACxF,OAAO,EAAC,8BAA8B,EAAC,MAAM,wCAAwC,CAAC;AAI/E,IAAM,2BAA2B,mCAAjC,MAAM,2BAA4B,SAAQ,UAAU;IAIlC;IACA;IACA;IALJ,MAAM,GAAG,IAAI,MAAM,CAAC,6BAA2B,CAAC,IAAI,CAAC,CAAC;IAEvE,YACqB,YAAuC,EACvC,kBAAmD,EACnD,SAAyC;QAE1D,KAAK,EAAE,CAAC;QAJS,iBAAY,GAAZ,YAAY,CAA2B;QACvC,uBAAkB,GAAlB,kBAAkB,CAAiC;QACnD,cAAS,GAAT,SAAS,CAAgC;IAG9D,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAsB;QAChC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC;QACvB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,IAAI,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBAChD,OAAO;YACX,CAAC;YACD,MAAM,IAAI,KAAK,CACX,gBAAgB,KAAK,CAAC,EAAE,yCAAyC,CACpE,CAAC;QACN,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;gBACxB,IAAI,EAAE,mBAAmB;gBACzB,aAAa,EAAE,KAAK,CAAC,EAAE;gBACvB,SAAS,EAAE,KAAK,CAAC,IAAI;aACxB,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACpD,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;gBACxB,IAAI,EAAE,gBAAgB;gBACtB,aAAa,EAAE,KAAK,CAAC,EAAE;gBACvB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAChE,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAGD,QAAQ,CAAC,GAAkC,EAAE,KAAY;QACrD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE;YACjD,KAAK,EAAE,GAAG,EAAE,EAAE;YACd,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE;YACrB,KAAK,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAPG;IADC,aAAa,CAAC,QAAQ,CAAC;;6CAC4B,KAAK;;2DAMxD;AAlDQ,2BAA2B;IAFvC,UAAU,EAAE;IACZ,SAAS,CAAC,eAAe,CAAC;qCAKY,yBAAyB;QACnB,+BAA+B;QACxC,8BAA8B;GANrD,2BAA2B,CAmDvC"}
@@ -0,0 +1,20 @@
1
+ import { Queue } from "bullmq";
2
+ import { Repository } from "typeorm";
3
+ import Stripe from "stripe";
4
+ import { StripeCheckoutEvent } from "../entities/stripe-payment-event.entity.js";
5
+ import { StripePaymentsTelemetryService } from "./stripe-payments-telemetry.service.js";
6
+ export declare class StripePaymentEventService {
7
+ private readonly eventRepository;
8
+ private readonly eventQueue;
9
+ private readonly telemetry;
10
+ private readonly logger;
11
+ constructor(eventRepository: Repository<StripeCheckoutEvent>, eventQueue: Queue, telemetry: StripePaymentsTelemetryService);
12
+ receive(event: Stripe.Event): Promise<void>;
13
+ claim(eventId: string): Promise<boolean>;
14
+ isProcessed(eventId: string): Promise<boolean>;
15
+ markProcessed(eventId: string): Promise<void>;
16
+ markFailed(eventId: string, error: unknown): Promise<void>;
17
+ list(take: number, skip: number): Promise<StripeCheckoutEvent[]>;
18
+ replay(eventId: string): Promise<void>;
19
+ private getBaseJobId;
20
+ }
@@ -0,0 +1,178 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ var StripePaymentEventService_1;
14
+ import { Injectable, Logger } from "@nestjs/common";
15
+ import { InjectRepository } from "@nestjs/typeorm";
16
+ import { Queue } from "bullmq";
17
+ import { InjectQueue } from "@nestjs/bullmq";
18
+ import { Repository } from "typeorm";
19
+ import { StripeCheckoutEvent } from "../entities/stripe-payment-event.entity.js";
20
+ import { StripePaymentsTelemetryService } from "./stripe-payments-telemetry.service.js";
21
+ function getObject(event) {
22
+ return event.data.object;
23
+ }
24
+ function getObjectId(event) {
25
+ const objectId = getObject(event).id;
26
+ return typeof objectId === "string" ? objectId : "unknown";
27
+ }
28
+ function getClientReferenceId(event) {
29
+ const clientReferenceId = getObject(event).client_reference_id;
30
+ return typeof clientReferenceId === "string"
31
+ ? clientReferenceId
32
+ : undefined;
33
+ }
34
+ let StripePaymentEventService = StripePaymentEventService_1 = class StripePaymentEventService {
35
+ eventRepository;
36
+ eventQueue;
37
+ telemetry;
38
+ logger = new Logger(StripePaymentEventService_1.name);
39
+ constructor(eventRepository, eventQueue, telemetry) {
40
+ this.eventRepository = eventRepository;
41
+ this.eventQueue = eventQueue;
42
+ this.telemetry = telemetry;
43
+ }
44
+ async receive(event) {
45
+ let paymentEvent = await this.eventRepository.findOne({
46
+ where: { stripeEventId: event.id },
47
+ });
48
+ if (!paymentEvent) {
49
+ paymentEvent = this.eventRepository.create({
50
+ stripeEventId: event.id,
51
+ stripeObjectId: getObjectId(event),
52
+ eventType: event.type,
53
+ clientReferenceId: getClientReferenceId(event),
54
+ stripeData: event,
55
+ status: "received",
56
+ processingAttempts: 0,
57
+ });
58
+ try {
59
+ paymentEvent = await this.eventRepository.save(paymentEvent);
60
+ }
61
+ catch (error) {
62
+ const code = error
63
+ .driverError?.code;
64
+ if (code !== "23505") {
65
+ throw error;
66
+ }
67
+ paymentEvent = await this.eventRepository.findOneOrFail({
68
+ where: { stripeEventId: event.id },
69
+ });
70
+ }
71
+ }
72
+ if (paymentEvent.status === "processed") {
73
+ return;
74
+ }
75
+ await this.telemetry.record({
76
+ name: "webhook.received",
77
+ stripeEventId: event.id,
78
+ eventType: event.type,
79
+ });
80
+ const existingJob = await this.eventQueue.getJob(this.getBaseJobId(event.id));
81
+ if (existingJob && !(await existingJob.isFailed())) {
82
+ return;
83
+ }
84
+ const jobId = existingJob
85
+ ? `${this.getBaseJobId(event.id)}:retry:${String(Date.now())}`
86
+ : this.getBaseJobId(event.id);
87
+ await this.eventQueue.add("stripe-event", event, {
88
+ jobId,
89
+ attempts: 8,
90
+ backoff: { type: "exponential", delay: 5_000 },
91
+ removeOnComplete: { age: 86_400, count: 10_000 },
92
+ removeOnFail: { age: 604_800, count: 10_000 },
93
+ });
94
+ }
95
+ async claim(eventId) {
96
+ const now = new Date();
97
+ const staleProcessingCutoff = new Date(now.getTime() - 5 * 60 * 1000);
98
+ const result = await this.eventRepository
99
+ .createQueryBuilder()
100
+ .update(StripeCheckoutEvent)
101
+ .set({
102
+ status: "processing",
103
+ processingStartedAt: now,
104
+ processingAttempts: () => '"processingAttempts" + 1',
105
+ })
106
+ .where('"stripeEventId" = :eventId', { eventId })
107
+ .andWhere('("status" IN (:...retryableStatuses) OR ("status" = :processingStatus AND "processingStartedAt" < :staleProcessingCutoff))', {
108
+ retryableStatuses: ["received", "failed"],
109
+ processingStatus: "processing",
110
+ staleProcessingCutoff,
111
+ })
112
+ .execute();
113
+ return (result.affected ?? 0) > 0;
114
+ }
115
+ async isProcessed(eventId) {
116
+ const paymentEvent = await this.eventRepository.findOne({
117
+ select: { status: true },
118
+ where: { stripeEventId: eventId },
119
+ });
120
+ return paymentEvent?.status === "processed";
121
+ }
122
+ async markProcessed(eventId) {
123
+ await this.eventRepository.update({ stripeEventId: eventId }, {
124
+ status: "processed",
125
+ processedAt: new Date(),
126
+ errorMessage: undefined,
127
+ });
128
+ }
129
+ async markFailed(eventId, error) {
130
+ const errorMessage = error instanceof Error ? error.message : String(error);
131
+ await this.eventRepository.update({ stripeEventId: eventId }, {
132
+ status: "failed",
133
+ errorMessage: errorMessage.slice(0, 2_000),
134
+ });
135
+ this.logger.error("Stripe payment event processing failed", {
136
+ eventId,
137
+ error: errorMessage,
138
+ });
139
+ }
140
+ async list(take, skip) {
141
+ return this.eventRepository.find({
142
+ take,
143
+ skip,
144
+ order: { createdDate: "DESC" },
145
+ });
146
+ }
147
+ async replay(eventId) {
148
+ const paymentEvent = await this.eventRepository.findOne({
149
+ where: { stripeEventId: eventId },
150
+ });
151
+ if (!paymentEvent) {
152
+ throw new Error("Stripe event not found");
153
+ }
154
+ paymentEvent.status = "received";
155
+ paymentEvent.errorMessage = undefined;
156
+ await this.eventRepository.save(paymentEvent);
157
+ await this.eventQueue.add("stripe-event", paymentEvent.stripeData, {
158
+ jobId: `${this.getBaseJobId(eventId)}:manual:${String(Date.now())}`,
159
+ attempts: 8,
160
+ backoff: { type: "exponential", delay: 5_000 },
161
+ removeOnComplete: { age: 86_400, count: 10_000 },
162
+ removeOnFail: { age: 604_800, count: 10_000 },
163
+ });
164
+ }
165
+ getBaseJobId(eventId) {
166
+ return `stripe-event:${eventId}`;
167
+ }
168
+ };
169
+ StripePaymentEventService = StripePaymentEventService_1 = __decorate([
170
+ Injectable(),
171
+ __param(0, InjectRepository(StripeCheckoutEvent)),
172
+ __param(1, InjectQueue("stripe-events")),
173
+ __metadata("design:paramtypes", [Repository,
174
+ Queue,
175
+ StripePaymentsTelemetryService])
176
+ ], StripePaymentEventService);
177
+ export { StripePaymentEventService };
178
+ //# sourceMappingURL=stripe-payment-event.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripe-payment-event.service.js","sourceRoot":"","sources":["../../../src/stripe-payments/services/stripe-payment-event.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import Stripe from "stripe";
2
+ import { Repository } from "typeorm";
3
+ import { StripeCheckoutAttempt } from "../entities/stripe-checkout-attempt.entity.js";
4
+ import { PaymentSessionService } from "../../payment-sessions/payment-session.service.js";
5
+ import { SecureStripeProductService } from "./secure-stripe-product.service.js";
6
+ import { StripePaymentsEntitlementStore } from "../stripe-payments.extensions.js";
7
+ export declare class StripePaymentFulfillmentService {
8
+ private readonly stripe;
9
+ private readonly attemptRepository;
10
+ private readonly paymentSessionService;
11
+ private readonly productService;
12
+ private readonly entitlementStore;
13
+ private readonly logger;
14
+ constructor(stripe: Stripe, attemptRepository: Repository<StripeCheckoutAttempt>, paymentSessionService: PaymentSessionService, productService: SecureStripeProductService, entitlementStore: StripePaymentsEntitlementStore);
15
+ process(event: Stripe.Event): Promise<void>;
16
+ private processCheckoutSession;
17
+ private markCheckoutAttemptFailed;
18
+ private processSubscriptionEvent;
19
+ private processInvoiceEvent;
20
+ private processRefundEvent;
21
+ private processDisputeEvent;
22
+ private revokeChargeEntitlement;
23
+ private saveSubscription;
24
+ private resolveOrganisationUuid;
25
+ private retrieveSubscription;
26
+ private getSubscriptionValidUntil;
27
+ private getSubscriptionId;
28
+ private getId;
29
+ private getClientReferenceId;
30
+ private eventCreatedAt;
31
+ }