@forklaunch/implementation-billing-stripe 1.2.12 → 1.3.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.
- package/lib/domain/schemas/billingPortal.schema.d.ts +2 -2
- package/lib/domain/schemas/index.js +27 -14
- package/lib/domain/schemas/index.mjs +33 -14
- package/lib/domain/schemas/plan.schema.d.ts +2 -2
- package/lib/domain/schemas/typebox/billingPortal.schema.d.ts +2 -2
- package/lib/domain/schemas/typebox/checkoutSession.schema.d.ts +3 -3
- package/lib/domain/schemas/typebox/checkoutSession.schema.d.ts.map +1 -1
- package/lib/domain/schemas/typebox/paymentLink.schema.d.ts +2 -1
- package/lib/domain/schemas/typebox/paymentLink.schema.d.ts.map +1 -1
- package/lib/domain/schemas/typebox/plan.schema.d.ts +2 -2
- package/lib/domain/schemas/typebox/subscription.schema.d.ts +1 -1
- package/lib/domain/schemas/zod/billingPortal.schema.d.ts +2 -2
- package/lib/domain/schemas/zod/checkoutSession.schema.d.ts +3 -3
- package/lib/domain/schemas/zod/checkoutSession.schema.d.ts.map +1 -1
- package/lib/domain/schemas/zod/paymentLink.schema.d.ts.map +1 -1
- package/lib/domain/schemas/zod/plan.schema.d.ts +2 -2
- package/lib/domain/schemas/zod/subscription.schema.d.ts +1 -1
- package/lib/domain/schemas/zod/subscription.schema.d.ts.map +1 -1
- package/lib/domain/types/billingPortal.mapper.types.d.ts +8 -0
- package/lib/domain/types/billingPortal.mapper.types.d.ts.map +1 -1
- package/lib/domain/types/checkoutSession.mapper.types.d.ts +6 -0
- package/lib/domain/types/checkoutSession.mapper.types.d.ts.map +1 -1
- package/lib/domain/types/paymentLink.mapper.types.d.ts +20 -0
- package/lib/domain/types/paymentLink.mapper.types.d.ts.map +1 -1
- package/lib/domain/types/plan.mapper.types.d.ts +10 -0
- package/lib/domain/types/plan.mapper.types.d.ts.map +1 -1
- package/lib/domain/types/stripe.dto.types.d.ts +6 -8
- package/lib/domain/types/stripe.dto.types.d.ts.map +1 -1
- package/lib/domain/types/stripe.entity.types.d.ts.map +1 -1
- package/lib/domain/types/subscription.mapper.types.d.ts +15 -0
- package/lib/domain/types/subscription.mapper.types.d.ts.map +1 -1
- package/lib/eject/domain/schemas/billingPortal.schema.ts +1 -1
- package/lib/eject/domain/schemas/checkoutSession.schema.ts +5 -3
- package/lib/eject/domain/schemas/paymentLink.schema.ts +12 -1
- package/lib/eject/domain/schemas/plan.schema.ts +1 -1
- package/lib/eject/domain/schemas/subscription.schema.ts +2 -1
- package/lib/eject/domain/types/billingPortal.mapper.types.ts +17 -0
- package/lib/eject/domain/types/checkoutSession.mapper.types.ts +9 -0
- package/lib/eject/domain/types/paymentLink.mapper.types.ts +36 -0
- package/lib/eject/domain/types/plan.mapper.types.ts +16 -0
- package/lib/eject/domain/types/stripe.dto.types.ts +6 -8
- package/lib/eject/domain/types/stripe.entity.types.ts +0 -6
- package/lib/eject/domain/types/subscription.mapper.types.ts +21 -0
- package/lib/eject/services/billingPortal.service.ts +24 -0
- package/lib/eject/services/checkoutSession.service.ts +54 -9
- package/lib/eject/services/paymentLink.service.ts +149 -25
- package/lib/eject/services/plan.service.ts +34 -4
- package/lib/eject/services/subscription.service.ts +42 -1
- package/lib/eject/services/webhook.service.ts +10 -1
- package/lib/services/billingPortal.service.d.ts.map +1 -1
- package/lib/services/checkoutSession.service.d.ts +8 -0
- package/lib/services/checkoutSession.service.d.ts.map +1 -1
- package/lib/services/index.js +238 -25
- package/lib/services/index.mjs +238 -25
- package/lib/services/paymentLink.service.d.ts +12 -0
- package/lib/services/paymentLink.service.d.ts.map +1 -1
- package/lib/services/plan.service.d.ts.map +1 -1
- package/lib/services/subscription.service.d.ts.map +1 -1
- package/lib/services/webhook.service.d.ts.map +1 -1
- package/package.json +8 -8
package/lib/services/index.mjs
CHANGED
|
@@ -28,10 +28,12 @@ var StripeBillingPortalService = class {
|
|
|
28
28
|
billingPortalSessionExpiryDurationMs = 5 * 60 * 1e3;
|
|
29
29
|
mappers;
|
|
30
30
|
async createBillingPortalSession(billingPortalDto, ...args) {
|
|
31
|
+
await this.mappers.CreateBillingPortalMapper.validateCreate?.(billingPortalDto);
|
|
31
32
|
const session = await this.stripeClient.billingPortal.sessions.create({
|
|
32
33
|
...billingPortalDto.stripeFields,
|
|
33
34
|
customer: billingPortalDto.customerId
|
|
34
35
|
});
|
|
36
|
+
await this.mappers.CreateBillingPortalMapper.validateProviderCreate?.(session);
|
|
35
37
|
return await this.baseBillingPortalService.createBillingPortalSession(
|
|
36
38
|
{
|
|
37
39
|
...billingPortalDto,
|
|
@@ -56,10 +58,20 @@ var StripeBillingPortalService = class {
|
|
|
56
58
|
const existingSession = await this.baseBillingPortalService.getBillingPortalSession({
|
|
57
59
|
id: billingPortalDto.id
|
|
58
60
|
});
|
|
61
|
+
if (!this.options?.enableDatabaseBackup && this.mappers.UpdateBillingPortalMapper.toCachedDto && billingPortalDto.customerId !== void 0 && billingPortalDto.customerId !== existingSession.customerId) {
|
|
62
|
+
throw new Error("Cached session identity cannot change");
|
|
63
|
+
}
|
|
64
|
+
if (!this.options?.enableDatabaseBackup && this.mappers.UpdateBillingPortalMapper.toCachedDto && this.mappers.UpdateBillingPortalMapper.validateCachedUpdate) {
|
|
65
|
+
await this.mappers.UpdateBillingPortalMapper.validateCachedUpdate(
|
|
66
|
+
billingPortalDto,
|
|
67
|
+
existingSession
|
|
68
|
+
);
|
|
69
|
+
}
|
|
59
70
|
const session = await this.stripeClient.billingPortal.sessions.create({
|
|
60
71
|
...billingPortalDto.stripeFields,
|
|
61
72
|
customer: billingPortalDto.customerId || existingSession.customerId
|
|
62
73
|
});
|
|
74
|
+
await this.mappers.CreateBillingPortalMapper.validateProviderCreate?.(session);
|
|
63
75
|
return await this.baseBillingPortalService.updateBillingPortalSession(
|
|
64
76
|
{
|
|
65
77
|
...billingPortalDto,
|
|
@@ -106,6 +118,7 @@ var StripeCheckoutSessionService = class {
|
|
|
106
118
|
schemaValidator;
|
|
107
119
|
mappers;
|
|
108
120
|
async createCheckoutSession(checkoutSessionDto, ...args) {
|
|
121
|
+
await this.mappers.CreateCheckoutSessionMapper.validateCreate?.(checkoutSessionDto);
|
|
109
122
|
const session = await this.stripeClient.checkout.sessions.create({
|
|
110
123
|
...checkoutSessionDto.stripeFields,
|
|
111
124
|
mode: "subscription",
|
|
@@ -114,6 +127,7 @@ var StripeCheckoutSessionService = class {
|
|
|
114
127
|
success_url: checkoutSessionDto.successRedirectUri,
|
|
115
128
|
cancel_url: checkoutSessionDto.cancelRedirectUri
|
|
116
129
|
});
|
|
130
|
+
await this.mappers.CreateCheckoutSessionMapper.validateProviderCreate?.(session);
|
|
117
131
|
return await this.baseCheckoutSessionService.createCheckoutSession(
|
|
118
132
|
{
|
|
119
133
|
...checkoutSessionDto,
|
|
@@ -128,6 +142,17 @@ var StripeCheckoutSessionService = class {
|
|
|
128
142
|
);
|
|
129
143
|
}
|
|
130
144
|
async getCheckoutSession(idDto) {
|
|
145
|
+
const readCachedDto = this.mappers.CheckoutSessionMapper.readCachedDto;
|
|
146
|
+
if (readCachedDto) {
|
|
147
|
+
const existing = await this.baseCheckoutSessionService.getCheckoutSession(idDto);
|
|
148
|
+
if (existing.id !== idDto.id) {
|
|
149
|
+
throw new Error("Cached checkout identity does not match");
|
|
150
|
+
}
|
|
151
|
+
return readCachedDto(
|
|
152
|
+
existing,
|
|
153
|
+
(providerId) => this.stripeClient.checkout.sessions.retrieve(providerId)
|
|
154
|
+
);
|
|
155
|
+
}
|
|
131
156
|
const session = await this.stripeClient.checkout.sessions.retrieve(
|
|
132
157
|
idDto.id
|
|
133
158
|
);
|
|
@@ -135,33 +160,73 @@ var StripeCheckoutSessionService = class {
|
|
|
135
160
|
databaseCheckoutSession.stripeFields = session;
|
|
136
161
|
return databaseCheckoutSession;
|
|
137
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* The Stripe id (`cs_...`) stored with a checkout session when it was
|
|
165
|
+
* created. Public ids are local; Stripe only knows its own id. The stored
|
|
166
|
+
* provider object's id wins; a record without one is still usable when its
|
|
167
|
+
* own id is a Stripe id. Anything else fails here rather than sending Stripe
|
|
168
|
+
* a local id.
|
|
169
|
+
*/
|
|
170
|
+
async stripeCheckoutSessionId(id) {
|
|
171
|
+
const checkoutSession = await this.baseCheckoutSessionService.getCheckoutSession({ id });
|
|
172
|
+
const stored = checkoutSession?.stripeFields?.id;
|
|
173
|
+
const stripeId = stored === void 0 ? checkoutSession?.id : stored;
|
|
174
|
+
if (typeof stripeId !== "string" || !/^cs_[A-Za-z0-9_]+$/.test(stripeId)) {
|
|
175
|
+
throw new Error(
|
|
176
|
+
`Checkout session ${id} has no stored Stripe checkout session id`
|
|
177
|
+
);
|
|
178
|
+
}
|
|
179
|
+
return stripeId;
|
|
180
|
+
}
|
|
138
181
|
async expireCheckoutSession({ id }) {
|
|
139
|
-
await this.stripeClient.checkout.sessions.expire(
|
|
182
|
+
await this.stripeClient.checkout.sessions.expire(
|
|
183
|
+
await this.stripeCheckoutSessionId(id)
|
|
184
|
+
);
|
|
140
185
|
await this.baseCheckoutSessionService.expireCheckoutSession({ id });
|
|
141
186
|
}
|
|
142
187
|
async handleCheckoutSuccess({ id }) {
|
|
143
|
-
await this.stripeClient.checkout.sessions.update(
|
|
144
|
-
|
|
145
|
-
|
|
188
|
+
await this.stripeClient.checkout.sessions.update(
|
|
189
|
+
await this.stripeCheckoutSessionId(id),
|
|
190
|
+
{
|
|
191
|
+
metadata: {
|
|
192
|
+
status: "SUCCESS"
|
|
193
|
+
}
|
|
146
194
|
}
|
|
147
|
-
|
|
195
|
+
);
|
|
148
196
|
await this.baseCheckoutSessionService.handleCheckoutSuccess({ id });
|
|
149
197
|
}
|
|
150
198
|
async handleCheckoutFailure({ id }) {
|
|
151
|
-
await this.stripeClient.checkout.sessions.update(
|
|
152
|
-
|
|
153
|
-
|
|
199
|
+
await this.stripeClient.checkout.sessions.update(
|
|
200
|
+
await this.stripeCheckoutSessionId(id),
|
|
201
|
+
{
|
|
202
|
+
metadata: {
|
|
203
|
+
status: "FAILED"
|
|
204
|
+
}
|
|
154
205
|
}
|
|
155
|
-
|
|
206
|
+
);
|
|
156
207
|
await this.baseCheckoutSessionService.handleCheckoutFailure({ id });
|
|
157
208
|
}
|
|
158
209
|
};
|
|
159
210
|
|
|
160
211
|
// services/paymentLink.service.ts
|
|
161
212
|
import { BasePaymentLinkService } from "@forklaunch/implementation-billing-base/services";
|
|
213
|
+
function validatePaymentLinkCreateFields(value) {
|
|
214
|
+
if (!value || typeof value !== "object" || Array.isArray(value) || !Array.isArray(value.line_items) || !value.line_items.every(
|
|
215
|
+
(item) => item !== null && typeof item === "object" && !Array.isArray(item)
|
|
216
|
+
)) {
|
|
217
|
+
throw new Error(
|
|
218
|
+
"Payment link provider options require a line_items array of objects"
|
|
219
|
+
);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
162
222
|
var StripePaymentLinkService = class {
|
|
163
223
|
constructor(stripeClient, em, cache, openTelemetryCollector, schemaValidator, mappers, options) {
|
|
164
224
|
this.options = options;
|
|
225
|
+
const limit = options?.maxConfiguredListRecords === void 0 ? 100 : options.maxConfiguredListRecords;
|
|
226
|
+
if (!Number.isSafeInteger(limit) || limit < 1 || limit > 1e3) {
|
|
227
|
+
throw new Error("Invalid configured payment link list limit");
|
|
228
|
+
}
|
|
229
|
+
this.maxConfiguredListRecords = limit;
|
|
165
230
|
this.stripeClient = stripeClient;
|
|
166
231
|
this.em = em;
|
|
167
232
|
this.cache = cache;
|
|
@@ -179,6 +244,7 @@ var StripePaymentLinkService = class {
|
|
|
179
244
|
}
|
|
180
245
|
options;
|
|
181
246
|
basePaymentLinkService;
|
|
247
|
+
maxConfiguredListRecords;
|
|
182
248
|
stripeClient;
|
|
183
249
|
em;
|
|
184
250
|
cache;
|
|
@@ -186,11 +252,16 @@ var StripePaymentLinkService = class {
|
|
|
186
252
|
schemaValidator;
|
|
187
253
|
mappers;
|
|
188
254
|
async createPaymentLink(paymentLinkDto, ...args) {
|
|
255
|
+
await this.mappers.CreatePaymentLinkMapper.validateCreate?.(paymentLinkDto);
|
|
256
|
+
validatePaymentLinkCreateFields(paymentLinkDto.stripeFields);
|
|
189
257
|
const session = await this.stripeClient.paymentLinks.create({
|
|
190
258
|
...paymentLinkDto.stripeFields,
|
|
191
259
|
payment_method_types: paymentLinkDto.paymentMethods,
|
|
192
260
|
currency: paymentLinkDto.currency
|
|
193
261
|
});
|
|
262
|
+
await this.mappers.CreatePaymentLinkMapper.validateProviderCreate?.(
|
|
263
|
+
session
|
|
264
|
+
);
|
|
194
265
|
const paymentLink = await this.basePaymentLinkService.createPaymentLink(
|
|
195
266
|
{
|
|
196
267
|
...paymentLinkDto,
|
|
@@ -207,20 +278,55 @@ var StripePaymentLinkService = class {
|
|
|
207
278
|
paymentLink.stripeFields = session;
|
|
208
279
|
return paymentLink;
|
|
209
280
|
}
|
|
281
|
+
/**
|
|
282
|
+
* The Stripe id (`plink_...`) stored with a payment link when it was created.
|
|
283
|
+
* Public ids are local; Stripe only knows its own id. The stored provider
|
|
284
|
+
* object's id wins; a record without one is still usable when its own id is a
|
|
285
|
+
* Stripe id. Anything else fails here rather than sending Stripe a local id.
|
|
286
|
+
*/
|
|
287
|
+
stripePaymentLinkId(paymentLink, id) {
|
|
288
|
+
const stored = paymentLink?.stripeFields?.id;
|
|
289
|
+
const stripeId = stored === void 0 ? paymentLink?.id : stored;
|
|
290
|
+
if (typeof stripeId !== "string" || !/^plink_[A-Za-z0-9_]+$/.test(stripeId)) {
|
|
291
|
+
throw new Error(
|
|
292
|
+
`Payment link ${id} has no stored Stripe payment link id`
|
|
293
|
+
);
|
|
294
|
+
}
|
|
295
|
+
return stripeId;
|
|
296
|
+
}
|
|
210
297
|
async updatePaymentLink(paymentLinkDto, ...args) {
|
|
211
|
-
const
|
|
212
|
-
paymentLinkDto.id
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
298
|
+
const existing = await this.basePaymentLinkService.getPaymentLink({
|
|
299
|
+
id: paymentLinkDto.id
|
|
300
|
+
});
|
|
301
|
+
if (this.mappers.UpdatePaymentLinkMapper.validateCachedUpdate) {
|
|
302
|
+
await this.mappers.UpdatePaymentLinkMapper.validateCachedUpdate(
|
|
303
|
+
paymentLinkDto,
|
|
304
|
+
existing
|
|
305
|
+
);
|
|
306
|
+
}
|
|
307
|
+
const stripeId = this.stripePaymentLinkId(existing, paymentLinkDto.id);
|
|
308
|
+
const session = await this.stripeClient.paymentLinks.update(stripeId, {
|
|
309
|
+
...paymentLinkDto.stripeFields,
|
|
310
|
+
payment_method_types: paymentLinkDto.paymentMethods
|
|
311
|
+
});
|
|
312
|
+
if (session.id !== stripeId) {
|
|
313
|
+
throw new Error("Invalid Stripe billing response");
|
|
314
|
+
}
|
|
315
|
+
const toLocalUpdate = this.mappers.UpdatePaymentLinkMapper.toLocalUpdate;
|
|
316
|
+
if (toLocalUpdate) {
|
|
317
|
+
const patch = await toLocalUpdate(paymentLinkDto, session);
|
|
318
|
+
return this.basePaymentLinkService.updatePaymentLink(
|
|
319
|
+
patch,
|
|
320
|
+
this.em,
|
|
321
|
+
session,
|
|
322
|
+
...args
|
|
323
|
+
);
|
|
324
|
+
}
|
|
218
325
|
const paymentLink = await this.basePaymentLinkService.updatePaymentLink(
|
|
219
326
|
await this.mappers.PaymentLinkMapper.toDto(
|
|
220
327
|
await this.mappers.UpdatePaymentLinkMapper.toEntity(
|
|
221
328
|
{
|
|
222
329
|
...paymentLinkDto,
|
|
223
|
-
id: session.id,
|
|
224
330
|
amount: session.line_items?.data.reduce(
|
|
225
331
|
(total, item) => total + item.amount_total,
|
|
226
332
|
0
|
|
@@ -236,13 +342,28 @@ var StripePaymentLinkService = class {
|
|
|
236
342
|
return paymentLink;
|
|
237
343
|
}
|
|
238
344
|
async getPaymentLink({ id }) {
|
|
345
|
+
const readCachedDto = this.mappers.PaymentLinkMapper.readCachedDto;
|
|
346
|
+
if (readCachedDto) {
|
|
347
|
+
const existing = await this.basePaymentLinkService.getPaymentLink({ id });
|
|
348
|
+
if (existing.id !== id) {
|
|
349
|
+
throw new Error("Cached payment link identity does not match");
|
|
350
|
+
}
|
|
351
|
+
return readCachedDto(
|
|
352
|
+
existing,
|
|
353
|
+
(providerId) => this.stripeClient.paymentLinks.retrieve(providerId)
|
|
354
|
+
);
|
|
355
|
+
}
|
|
239
356
|
const stripePaymentLink = await this.stripeClient.paymentLinks.retrieve(id);
|
|
240
357
|
const databasePaymentLink = await this.basePaymentLinkService.getPaymentLink({ id });
|
|
241
358
|
databasePaymentLink.stripeFields = stripePaymentLink;
|
|
242
359
|
return databasePaymentLink;
|
|
243
360
|
}
|
|
244
361
|
async expirePaymentLink({ id }) {
|
|
245
|
-
|
|
362
|
+
const stripeId = this.stripePaymentLinkId(
|
|
363
|
+
await this.basePaymentLinkService.getPaymentLink({ id }),
|
|
364
|
+
id
|
|
365
|
+
);
|
|
366
|
+
await this.stripeClient.paymentLinks.update(stripeId, {
|
|
246
367
|
metadata: {
|
|
247
368
|
status: "EXPIRED"
|
|
248
369
|
}
|
|
@@ -250,7 +371,11 @@ var StripePaymentLinkService = class {
|
|
|
250
371
|
await this.basePaymentLinkService.expirePaymentLink({ id });
|
|
251
372
|
}
|
|
252
373
|
async handlePaymentSuccess({ id }) {
|
|
253
|
-
|
|
374
|
+
const stripeId = this.stripePaymentLinkId(
|
|
375
|
+
await this.basePaymentLinkService.getPaymentLink({ id }),
|
|
376
|
+
id
|
|
377
|
+
);
|
|
378
|
+
await this.stripeClient.paymentLinks.update(stripeId, {
|
|
254
379
|
metadata: {
|
|
255
380
|
status: "COMPLETED"
|
|
256
381
|
}
|
|
@@ -258,7 +383,11 @@ var StripePaymentLinkService = class {
|
|
|
258
383
|
await this.basePaymentLinkService.handlePaymentSuccess({ id });
|
|
259
384
|
}
|
|
260
385
|
async handlePaymentFailure({ id }) {
|
|
261
|
-
|
|
386
|
+
const stripeId = this.stripePaymentLinkId(
|
|
387
|
+
await this.basePaymentLinkService.getPaymentLink({ id }),
|
|
388
|
+
id
|
|
389
|
+
);
|
|
390
|
+
await this.stripeClient.paymentLinks.update(stripeId, {
|
|
262
391
|
metadata: {
|
|
263
392
|
status: "FAILED"
|
|
264
393
|
}
|
|
@@ -267,6 +396,26 @@ var StripePaymentLinkService = class {
|
|
|
267
396
|
}
|
|
268
397
|
async listPaymentLinks(idsDto) {
|
|
269
398
|
this.openTelemetryCollector.log("info", idsDto ?? "idsDto is undefined");
|
|
399
|
+
const { readCachedDto, validateCachedRead } = this.mappers.PaymentLinkMapper;
|
|
400
|
+
if (readCachedDto && validateCachedRead) {
|
|
401
|
+
const cached = await this.basePaymentLinkService.listPaymentLinks(
|
|
402
|
+
idsDto,
|
|
403
|
+
this.maxConfiguredListRecords
|
|
404
|
+
);
|
|
405
|
+
for (const value of cached) validateCachedRead(value);
|
|
406
|
+
const active = [];
|
|
407
|
+
for (const value of cached) {
|
|
408
|
+
const fresh = await readCachedDto(
|
|
409
|
+
value,
|
|
410
|
+
(providerId) => this.stripeClient.paymentLinks.retrieve(providerId)
|
|
411
|
+
);
|
|
412
|
+
if (typeof fresh.stripeFields.active !== "boolean") {
|
|
413
|
+
throw new Error("Invalid payment link active state");
|
|
414
|
+
}
|
|
415
|
+
if (fresh.stripeFields.active) active.push(fresh);
|
|
416
|
+
}
|
|
417
|
+
return active;
|
|
418
|
+
}
|
|
270
419
|
const stripePaymentLinks = await this.stripeClient.paymentLinks.list({
|
|
271
420
|
active: true
|
|
272
421
|
});
|
|
@@ -310,6 +459,7 @@ var StripePlanService = class {
|
|
|
310
459
|
schemaValidator;
|
|
311
460
|
mappers;
|
|
312
461
|
async createPlan(planDto, em) {
|
|
462
|
+
await this.mappers.CreatePlanMapper.validateCreate?.(planDto);
|
|
313
463
|
let stripePlan = await this.stripeClient.plans.create({
|
|
314
464
|
...planDto.stripeFields,
|
|
315
465
|
amount: planDto.price,
|
|
@@ -317,9 +467,12 @@ var StripePlanService = class {
|
|
|
317
467
|
product: planDto.name,
|
|
318
468
|
currency: planDto.currency
|
|
319
469
|
});
|
|
320
|
-
|
|
470
|
+
await this.mappers.CreatePlanMapper.validateProviderCreate?.(stripePlan);
|
|
471
|
+
const createdId = stripePlan.id;
|
|
472
|
+
stripePlan = await this.stripeClient.plans.retrieve(createdId, {
|
|
321
473
|
expand: ["product"]
|
|
322
474
|
});
|
|
475
|
+
await this.mappers.PlanMapper.validateProviderRead?.(createdId, stripePlan);
|
|
323
476
|
const plan = await this.basePlanService.createPlan(
|
|
324
477
|
{
|
|
325
478
|
...planDto,
|
|
@@ -339,10 +492,15 @@ var StripePlanService = class {
|
|
|
339
492
|
const plan = await this.stripeClient.plans.retrieve(planEntity.externalId, {
|
|
340
493
|
expand: ["product"]
|
|
341
494
|
});
|
|
495
|
+
await this.mappers.PlanMapper.validateProviderRead?.(
|
|
496
|
+
planEntity.externalId,
|
|
497
|
+
plan
|
|
498
|
+
);
|
|
342
499
|
planEntity.stripeFields = plan.product;
|
|
343
500
|
return planEntity;
|
|
344
501
|
}
|
|
345
502
|
async updatePlan(planDto, em) {
|
|
503
|
+
await this.mappers.UpdatePlanMapper.validateUpdate?.(planDto);
|
|
346
504
|
const planEntity = await this.basePlanService.getPlan(
|
|
347
505
|
{
|
|
348
506
|
id: planDto.id
|
|
@@ -352,6 +510,14 @@ var StripePlanService = class {
|
|
|
352
510
|
const existingPlan = await this.stripeClient.plans.retrieve(
|
|
353
511
|
planEntity.externalId
|
|
354
512
|
);
|
|
513
|
+
await this.mappers.PlanMapper.validateProviderRead?.(
|
|
514
|
+
planEntity.externalId,
|
|
515
|
+
existingPlan
|
|
516
|
+
);
|
|
517
|
+
await this.mappers.UpdatePlanMapper.validateProviderUpdate?.(
|
|
518
|
+
planDto,
|
|
519
|
+
existingPlan
|
|
520
|
+
);
|
|
355
521
|
const existingProduct = existingPlan.product;
|
|
356
522
|
if (!existingProduct) {
|
|
357
523
|
throw new Error("Plan product not found");
|
|
@@ -366,14 +532,16 @@ var StripePlanService = class {
|
|
|
366
532
|
amount: planDto.price ?? existingPlan.amount ?? void 0,
|
|
367
533
|
product: productId
|
|
368
534
|
});
|
|
369
|
-
|
|
535
|
+
await this.mappers.CreatePlanMapper.validateProviderCreate?.(updatedPlan);
|
|
536
|
+
const createdId = updatedPlan.id;
|
|
537
|
+
updatedPlan = await this.stripeClient.plans.retrieve(createdId, {
|
|
370
538
|
expand: ["product"]
|
|
371
539
|
});
|
|
540
|
+
await this.mappers.PlanMapper.validateProviderRead?.(createdId, updatedPlan);
|
|
372
541
|
const updatedPlanEntity = await this.basePlanService.updatePlan(
|
|
373
542
|
{
|
|
374
543
|
...planDto,
|
|
375
544
|
externalId: updatedPlan.id,
|
|
376
|
-
name: planDto.name,
|
|
377
545
|
billingProvider: "stripe"
|
|
378
546
|
},
|
|
379
547
|
em,
|
|
@@ -404,6 +572,10 @@ var StripePlanService = class {
|
|
|
404
572
|
expand: ["product"]
|
|
405
573
|
}
|
|
406
574
|
);
|
|
575
|
+
await this.mappers.PlanMapper.validateProviderRead?.(
|
|
576
|
+
plan.externalId,
|
|
577
|
+
fetchedPlan
|
|
578
|
+
);
|
|
407
579
|
return fetchedPlan.product;
|
|
408
580
|
} catch {
|
|
409
581
|
return null;
|
|
@@ -443,6 +615,7 @@ var StripeSubscriptionService = class {
|
|
|
443
615
|
schemaValidator;
|
|
444
616
|
mappers;
|
|
445
617
|
async createSubscription(subscriptionDto, em) {
|
|
618
|
+
await this.mappers.CreateSubscriptionMapper.validateCreate?.(subscriptionDto);
|
|
446
619
|
const subscription = await this.stripeClient.subscriptions.create({
|
|
447
620
|
...subscriptionDto.stripeFields,
|
|
448
621
|
customer: subscriptionDto.partyId,
|
|
@@ -452,6 +625,7 @@ var StripeSubscriptionService = class {
|
|
|
452
625
|
}
|
|
453
626
|
]
|
|
454
627
|
});
|
|
628
|
+
await this.mappers.CreateSubscriptionMapper.validateProviderCreate?.(subscription);
|
|
455
629
|
return await this.baseSubscriptionService.createSubscription(
|
|
456
630
|
{
|
|
457
631
|
...subscriptionDto,
|
|
@@ -470,6 +644,10 @@ var StripeSubscriptionService = class {
|
|
|
470
644
|
const stripeSubscription = await this.stripeClient.subscriptions.retrieve(
|
|
471
645
|
subscriptionEntity.externalId
|
|
472
646
|
);
|
|
647
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
648
|
+
subscriptionEntity.externalId,
|
|
649
|
+
stripeSubscription
|
|
650
|
+
);
|
|
473
651
|
subscriptionEntity.stripeFields = stripeSubscription;
|
|
474
652
|
return subscriptionEntity;
|
|
475
653
|
}
|
|
@@ -481,6 +659,10 @@ var StripeSubscriptionService = class {
|
|
|
481
659
|
const stripeSubscription = await this.stripeClient.subscriptions.retrieve(
|
|
482
660
|
subscriptionEntity.externalId
|
|
483
661
|
);
|
|
662
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
663
|
+
subscriptionEntity.externalId,
|
|
664
|
+
stripeSubscription
|
|
665
|
+
);
|
|
484
666
|
subscriptionEntity.stripeFields = stripeSubscription;
|
|
485
667
|
return subscriptionEntity;
|
|
486
668
|
}
|
|
@@ -492,6 +674,10 @@ var StripeSubscriptionService = class {
|
|
|
492
674
|
const stripeSubscription = await this.stripeClient.subscriptions.retrieve(
|
|
493
675
|
subscriptionEntity.externalId
|
|
494
676
|
);
|
|
677
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
678
|
+
subscriptionEntity.externalId,
|
|
679
|
+
stripeSubscription
|
|
680
|
+
);
|
|
495
681
|
subscriptionEntity.stripeFields = stripeSubscription;
|
|
496
682
|
return subscriptionEntity;
|
|
497
683
|
}
|
|
@@ -505,9 +691,21 @@ var StripeSubscriptionService = class {
|
|
|
505
691
|
if (!subscriptionEntity.externalId) {
|
|
506
692
|
throw new Error("Subscription not found");
|
|
507
693
|
}
|
|
694
|
+
await this.mappers.UpdateSubscriptionMapper.validateUpdate?.(
|
|
695
|
+
subscriptionDto,
|
|
696
|
+
subscriptionEntity
|
|
697
|
+
);
|
|
508
698
|
const existingStripeSubscription = await this.stripeClient.subscriptions.retrieve(
|
|
509
699
|
subscriptionEntity.externalId
|
|
510
700
|
);
|
|
701
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
702
|
+
subscriptionEntity.externalId,
|
|
703
|
+
existingStripeSubscription
|
|
704
|
+
);
|
|
705
|
+
await this.mappers.UpdateSubscriptionMapper.validateProviderUpdate?.(
|
|
706
|
+
subscriptionDto,
|
|
707
|
+
existingStripeSubscription
|
|
708
|
+
);
|
|
511
709
|
const updatedSubscription = await this.stripeClient.subscriptions.update(
|
|
512
710
|
subscriptionEntity.externalId,
|
|
513
711
|
{
|
|
@@ -518,6 +716,10 @@ var StripeSubscriptionService = class {
|
|
|
518
716
|
}))
|
|
519
717
|
}
|
|
520
718
|
);
|
|
719
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
720
|
+
subscriptionEntity.externalId,
|
|
721
|
+
updatedSubscription
|
|
722
|
+
);
|
|
521
723
|
const updatedSubscriptionEntity = await this.baseSubscriptionService.updateSubscription(
|
|
522
724
|
{
|
|
523
725
|
...subscriptionDto,
|
|
@@ -552,9 +754,14 @@ var StripeSubscriptionService = class {
|
|
|
552
754
|
const stripeSubscriptions = await Promise.all(
|
|
553
755
|
subscriptions.map(async (subscription) => {
|
|
554
756
|
try {
|
|
555
|
-
|
|
757
|
+
const provider = await this.stripeClient.subscriptions.retrieve(
|
|
556
758
|
subscription.externalId
|
|
557
759
|
);
|
|
760
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
761
|
+
subscription.externalId,
|
|
762
|
+
provider
|
|
763
|
+
);
|
|
764
|
+
return provider;
|
|
558
765
|
} catch {
|
|
559
766
|
return null;
|
|
560
767
|
}
|
|
@@ -596,6 +803,12 @@ var BillingProviderEnum = {
|
|
|
596
803
|
|
|
597
804
|
// services/webhook.service.ts
|
|
598
805
|
var isActiveStatus = (status) => status === "active" || status === "trialing";
|
|
806
|
+
var portalExpiry = (created) => {
|
|
807
|
+
if (!Number.isSafeInteger(created) || created < 0 || created > 253402300499) {
|
|
808
|
+
throw new Error("Billing webhook payload is invalid");
|
|
809
|
+
}
|
|
810
|
+
return new Date((created + 300) * 1e3);
|
|
811
|
+
};
|
|
599
812
|
var StripeWebhookService = class {
|
|
600
813
|
partyEnum;
|
|
601
814
|
webhookEventEntity;
|
|
@@ -691,7 +904,7 @@ var StripeWebhookService = class {
|
|
|
691
904
|
{
|
|
692
905
|
id: event.data.object.id,
|
|
693
906
|
customerId: event.data.object.customer,
|
|
694
|
-
expiresAt:
|
|
907
|
+
expiresAt: portalExpiry(event.data.object.created),
|
|
695
908
|
uri: event.data.object.url
|
|
696
909
|
}
|
|
697
910
|
);
|
|
@@ -19,9 +19,12 @@ export declare class StripePaymentLinkService<SchemaValidator extends AnySchemaV
|
|
|
19
19
|
}> {
|
|
20
20
|
readonly options?: {
|
|
21
21
|
enableDatabaseBackup?: boolean;
|
|
22
|
+
/** Trusted configured-cache list limit; defaults to 100, maximum 1000. */
|
|
23
|
+
maxConfiguredListRecords?: number;
|
|
22
24
|
telemetry?: TelemetryOptions;
|
|
23
25
|
} | undefined;
|
|
24
26
|
basePaymentLinkService: BasePaymentLinkService<SchemaValidator, PaymentMethodEnum, CurrencyEnum, StatusEnum, Entities, Dto>;
|
|
27
|
+
private readonly maxConfiguredListRecords;
|
|
25
28
|
protected readonly stripeClient: Stripe;
|
|
26
29
|
protected readonly em: EntityManager;
|
|
27
30
|
protected readonly cache: TtlCache;
|
|
@@ -30,9 +33,18 @@ export declare class StripePaymentLinkService<SchemaValidator extends AnySchemaV
|
|
|
30
33
|
protected readonly mappers: StripePaymentLinkMappers<StatusEnum, Entities, Dto>;
|
|
31
34
|
constructor(stripeClient: Stripe, em: EntityManager, cache: TtlCache, openTelemetryCollector: OpenTelemetryCollector<MetricsDefinition>, schemaValidator: SchemaValidator, mappers: StripePaymentLinkMappers<StatusEnum, Entities, Dto>, options?: {
|
|
32
35
|
enableDatabaseBackup?: boolean;
|
|
36
|
+
/** Trusted configured-cache list limit; defaults to 100, maximum 1000. */
|
|
37
|
+
maxConfiguredListRecords?: number;
|
|
33
38
|
telemetry?: TelemetryOptions;
|
|
34
39
|
} | undefined);
|
|
35
40
|
createPaymentLink(paymentLinkDto: StripeCreatePaymentLinkDto<StatusEnum>, ...args: unknown[]): Promise<Dto['PaymentLinkMapper']>;
|
|
41
|
+
/**
|
|
42
|
+
* The Stripe id (`plink_...`) stored with a payment link when it was created.
|
|
43
|
+
* Public ids are local; Stripe only knows its own id. The stored provider
|
|
44
|
+
* object's id wins; a record without one is still usable when its own id is a
|
|
45
|
+
* Stripe id. Anything else fails here rather than sending Stripe a local id.
|
|
46
|
+
*/
|
|
47
|
+
protected stripePaymentLinkId(paymentLink: Dto['PaymentLinkMapper'], id: string): string;
|
|
36
48
|
updatePaymentLink(paymentLinkDto: StripeUpdatePaymentLinkDto<StatusEnum>, ...args: unknown[]): Promise<Dto['PaymentLinkMapper']>;
|
|
37
49
|
getPaymentLink({ id }: IdDto): Promise<Dto['PaymentLinkMapper']>;
|
|
38
50
|
expirePaymentLink({ id }: IdDto): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paymentLink.service.d.ts","sourceRoot":"","sources":["../../services/paymentLink.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAE1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"paymentLink.service.d.ts","sourceRoot":"","sources":["../../services/paymentLink.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.service.d.ts","sourceRoot":"","sources":["../../services/plan.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AAEnF,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE,qBAAa,iBAAiB,CAC5B,eAAe,SAAS,kBAAkB,EAC1C,QAAQ,SAAS,kBAAkB,EACnC,GAAG,SAAS,cAAc,GAAG,cAAc,CAC3C,YAAW,WAAW,CACtB,OAAO,eAAe,EACtB,OAAO,YAAY,EACnB,OAAO,mBAAmB,EAC1B;IACE,aAAa,EAAE,mBAAmB,CAAC;IACnC,aAAa,EAAE,mBAAmB,CAAC;IACnC,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CACF;IAqBG,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B;IAvBH,eAAe,EAAE,eAAe,CAC9B,eAAe,EACf,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,QAAQ,EACR,GAAG,CACJ,CAAC;IACF,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAC;IACrC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;IACrF,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IACpD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAE7D,YACE,YAAY,EAAE,MAAM,EACpB,EAAE,EAAE,aAAa,EACjB,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,EACjE,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,EAChC,OAAO,CAAC,EAAE;QACjB,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,YAAA,EAoBF;IAEK,UAAU,CACd,OAAO,EAAE,mBAAmB,EAC5B,EAAE,CAAC,EAAE,aAAa,GACjB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"plan.service.d.ts","sourceRoot":"","sources":["../../services/plan.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscription.service.d.ts","sourceRoot":"","sources":["../../services/subscription.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAE3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAEtF,qBAAa,yBAAyB,CACpC,eAAe,SAAS,kBAAkB,EAC1C,SAAS,EACT,QAAQ,SAAS,0BAA0B,EAC3C,GAAG,SAAS,sBAAsB,CAAC,SAAS,CAAC,GAC3C,sBAAsB,CAAC,SAAS,CAAC,CACnC,YAAW,mBAAmB,CAC9B,SAAS,EACT,OAAO,mBAAmB,EAC1B;IACE,qBAAqB,EAAE,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAC9D,qBAAqB,EAAE,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAC9D,eAAe,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAClD,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CACF;IAwBG,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B;IA1BH,uBAAuB,EAAE,uBAAuB,CAC9C,eAAe,EACf,SAAS,EACT,mBAAmB,EACnB,QAAQ,EACR,GAAG,CACJ,CAAC;IACF,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAC;IACrC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;IACrF,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IACpD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CACnD,SAAS,EACT,QAAQ,EACR,GAAG,CACJ,CAAC;IAEF,YACE,YAAY,EAAE,MAAM,EACpB,EAAE,EAAE,aAAa,EACjB,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,EACjE,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,EACnD,OAAO,CAAC,EAAE;QACjB,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,YAAA,EAmBF;IAEK,kBAAkB,CACtB,eAAe,EAAE,2BAA2B,CAAC,SAAS,CAAC,EACvD,EAAE,CAAC,EAAE,aAAa,GACjB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"subscription.service.d.ts","sourceRoot":"","sources":["../../services/subscription.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook.service.d.ts","sourceRoot":"","sources":["../../services/webhook.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAc,MAAM,iBAAiB,CAAC;AAC5D,OAAO,MAAM,MAAM,QAAQ,CAAC;AAK5B,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,yBAAyB,EACzB,kBAAkB,EAClB,0BAA0B,EAC3B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAErE,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAEnE;;;;;;;;;;GAUG;AAEH;;;;;GAKG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;
|
|
1
|
+
{"version":3,"file":"webhook.service.d.ts","sourceRoot":"","sources":["../../services/webhook.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forklaunch/implementation-billing-stripe",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "Stripe implementation for forklaunch billing",
|
|
5
5
|
"homepage": "https://github.com/forklaunch/forklaunch-js#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -63,17 +63,17 @@
|
|
|
63
63
|
"lib/**"
|
|
64
64
|
],
|
|
65
65
|
"dependencies": {
|
|
66
|
-
"@forklaunch/common": "^1.2.
|
|
67
|
-
"@forklaunch/core": "^3.
|
|
68
|
-
"@forklaunch/
|
|
69
|
-
"@forklaunch/
|
|
66
|
+
"@forklaunch/common": "^1.2.32",
|
|
67
|
+
"@forklaunch/core": "^3.3.0",
|
|
68
|
+
"@forklaunch/implementation-billing-base": "^1.1.0",
|
|
69
|
+
"@forklaunch/interfaces-billing": "^1.0.40",
|
|
70
|
+
"@forklaunch/internal": "^1.2.35",
|
|
71
|
+
"@forklaunch/validator": "^1.3.0",
|
|
70
72
|
"@mikro-orm/core": "7.2.5",
|
|
71
73
|
"@sinclair/typebox": "^0.34.52",
|
|
72
74
|
"ajv": "^8.20.0",
|
|
73
75
|
"stripe": "^22.6.2",
|
|
74
|
-
"zod": "^4.6.7"
|
|
75
|
-
"@forklaunch/implementation-billing-base": "^1.0.42",
|
|
76
|
-
"@forklaunch/interfaces-billing": "^1.0.39"
|
|
76
|
+
"zod": "^4.6.7"
|
|
77
77
|
},
|
|
78
78
|
"devDependencies": {
|
|
79
79
|
"@mikro-orm/sqlite": "7.2.5",
|