@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
|
@@ -87,6 +87,8 @@ export class StripePlanService<
|
|
|
87
87
|
planDto: StripeCreatePlanDto,
|
|
88
88
|
em?: EntityManager
|
|
89
89
|
): Promise<Dto['PlanMapper']> {
|
|
90
|
+
await this.mappers.CreatePlanMapper.validateCreate?.(planDto);
|
|
91
|
+
|
|
90
92
|
let stripePlan = await this.stripeClient.plans.create({
|
|
91
93
|
...planDto.stripeFields,
|
|
92
94
|
amount: planDto.price,
|
|
@@ -95,11 +97,16 @@ export class StripePlanService<
|
|
|
95
97
|
currency: planDto.currency as string
|
|
96
98
|
});
|
|
97
99
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
+
await this.mappers.CreatePlanMapper.validateProviderCreate?.(stripePlan);
|
|
101
|
+
|
|
102
|
+
// Retain the returned identity across the subsequent expanded read.
|
|
103
|
+
const createdId = stripePlan.id;
|
|
104
|
+
stripePlan = await this.stripeClient.plans.retrieve(createdId, {
|
|
100
105
|
expand: ['product']
|
|
101
106
|
});
|
|
102
107
|
|
|
108
|
+
await this.mappers.PlanMapper.validateProviderRead?.(createdId, stripePlan);
|
|
109
|
+
|
|
103
110
|
const plan = await this.basePlanService.createPlan(
|
|
104
111
|
{
|
|
105
112
|
...planDto,
|
|
@@ -121,6 +128,10 @@ export class StripePlanService<
|
|
|
121
128
|
const plan = await this.stripeClient.plans.retrieve(planEntity.externalId, {
|
|
122
129
|
expand: ['product']
|
|
123
130
|
});
|
|
131
|
+
await this.mappers.PlanMapper.validateProviderRead?.(
|
|
132
|
+
planEntity.externalId,
|
|
133
|
+
plan
|
|
134
|
+
);
|
|
124
135
|
planEntity.stripeFields = plan.product as Stripe.Product;
|
|
125
136
|
return planEntity;
|
|
126
137
|
}
|
|
@@ -129,6 +140,7 @@ export class StripePlanService<
|
|
|
129
140
|
planDto: StripeUpdatePlanDto,
|
|
130
141
|
em?: EntityManager
|
|
131
142
|
): Promise<Dto['PlanMapper']> {
|
|
143
|
+
await this.mappers.UpdatePlanMapper.validateUpdate?.(planDto);
|
|
132
144
|
const planEntity = await this.basePlanService.getPlan(
|
|
133
145
|
{
|
|
134
146
|
id: planDto.id
|
|
@@ -140,6 +152,16 @@ export class StripePlanService<
|
|
|
140
152
|
planEntity.externalId
|
|
141
153
|
);
|
|
142
154
|
|
|
155
|
+
await this.mappers.PlanMapper.validateProviderRead?.(
|
|
156
|
+
planEntity.externalId,
|
|
157
|
+
existingPlan
|
|
158
|
+
);
|
|
159
|
+
|
|
160
|
+
await this.mappers.UpdatePlanMapper.validateProviderUpdate?.(
|
|
161
|
+
planDto,
|
|
162
|
+
existingPlan
|
|
163
|
+
);
|
|
164
|
+
|
|
143
165
|
const existingProduct = existingPlan.product;
|
|
144
166
|
if (!existingProduct) {
|
|
145
167
|
throw new Error('Plan product not found');
|
|
@@ -162,15 +184,19 @@ export class StripePlanService<
|
|
|
162
184
|
product: productId
|
|
163
185
|
});
|
|
164
186
|
|
|
165
|
-
|
|
187
|
+
await this.mappers.CreatePlanMapper.validateProviderCreate?.(updatedPlan);
|
|
188
|
+
|
|
189
|
+
const createdId = updatedPlan.id;
|
|
190
|
+
updatedPlan = await this.stripeClient.plans.retrieve(createdId, {
|
|
166
191
|
expand: ['product']
|
|
167
192
|
});
|
|
168
193
|
|
|
194
|
+
await this.mappers.PlanMapper.validateProviderRead?.(createdId, updatedPlan);
|
|
195
|
+
|
|
169
196
|
const updatedPlanEntity = await this.basePlanService.updatePlan(
|
|
170
197
|
{
|
|
171
198
|
...planDto,
|
|
172
199
|
externalId: updatedPlan.id,
|
|
173
|
-
name: planDto.name,
|
|
174
200
|
billingProvider: 'stripe'
|
|
175
201
|
},
|
|
176
202
|
em,
|
|
@@ -210,6 +236,10 @@ export class StripePlanService<
|
|
|
210
236
|
expand: ['product']
|
|
211
237
|
}
|
|
212
238
|
);
|
|
239
|
+
await this.mappers.PlanMapper.validateProviderRead?.(
|
|
240
|
+
plan.externalId,
|
|
241
|
+
fetchedPlan
|
|
242
|
+
);
|
|
213
243
|
return fetchedPlan.product as Stripe.Product;
|
|
214
244
|
} catch {
|
|
215
245
|
return null;
|
|
@@ -88,6 +88,8 @@ export class StripeSubscriptionService<
|
|
|
88
88
|
subscriptionDto: StripeCreateSubscriptionDto<PartyType>,
|
|
89
89
|
em?: EntityManager
|
|
90
90
|
): Promise<Dto['SubscriptionMapper']> {
|
|
91
|
+
await this.mappers.CreateSubscriptionMapper.validateCreate?.(subscriptionDto);
|
|
92
|
+
|
|
91
93
|
const subscription = await this.stripeClient.subscriptions.create({
|
|
92
94
|
...subscriptionDto.stripeFields,
|
|
93
95
|
customer: subscriptionDto.partyId,
|
|
@@ -98,6 +100,8 @@ export class StripeSubscriptionService<
|
|
|
98
100
|
]
|
|
99
101
|
});
|
|
100
102
|
|
|
103
|
+
await this.mappers.CreateSubscriptionMapper.validateProviderCreate?.(subscription);
|
|
104
|
+
|
|
101
105
|
return await this.baseSubscriptionService.createSubscription(
|
|
102
106
|
{
|
|
103
107
|
...subscriptionDto,
|
|
@@ -121,6 +125,10 @@ export class StripeSubscriptionService<
|
|
|
121
125
|
const stripeSubscription = await this.stripeClient.subscriptions.retrieve(
|
|
122
126
|
subscriptionEntity.externalId
|
|
123
127
|
);
|
|
128
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
129
|
+
subscriptionEntity.externalId,
|
|
130
|
+
stripeSubscription
|
|
131
|
+
);
|
|
124
132
|
subscriptionEntity.stripeFields = stripeSubscription;
|
|
125
133
|
return subscriptionEntity;
|
|
126
134
|
}
|
|
@@ -137,6 +145,10 @@ export class StripeSubscriptionService<
|
|
|
137
145
|
const stripeSubscription = await this.stripeClient.subscriptions.retrieve(
|
|
138
146
|
subscriptionEntity.externalId
|
|
139
147
|
);
|
|
148
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
149
|
+
subscriptionEntity.externalId,
|
|
150
|
+
stripeSubscription
|
|
151
|
+
);
|
|
140
152
|
subscriptionEntity.stripeFields = stripeSubscription;
|
|
141
153
|
return subscriptionEntity;
|
|
142
154
|
}
|
|
@@ -153,6 +165,10 @@ export class StripeSubscriptionService<
|
|
|
153
165
|
const stripeSubscription = await this.stripeClient.subscriptions.retrieve(
|
|
154
166
|
subscriptionEntity.externalId
|
|
155
167
|
);
|
|
168
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
169
|
+
subscriptionEntity.externalId,
|
|
170
|
+
stripeSubscription
|
|
171
|
+
);
|
|
156
172
|
subscriptionEntity.stripeFields = stripeSubscription;
|
|
157
173
|
return subscriptionEntity;
|
|
158
174
|
}
|
|
@@ -172,11 +188,26 @@ export class StripeSubscriptionService<
|
|
|
172
188
|
throw new Error('Subscription not found');
|
|
173
189
|
}
|
|
174
190
|
|
|
191
|
+
await this.mappers.UpdateSubscriptionMapper.validateUpdate?.(
|
|
192
|
+
subscriptionDto,
|
|
193
|
+
subscriptionEntity
|
|
194
|
+
);
|
|
195
|
+
|
|
175
196
|
const existingStripeSubscription =
|
|
176
197
|
await this.stripeClient.subscriptions.retrieve(
|
|
177
198
|
subscriptionEntity.externalId
|
|
178
199
|
);
|
|
179
200
|
|
|
201
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
202
|
+
subscriptionEntity.externalId,
|
|
203
|
+
existingStripeSubscription
|
|
204
|
+
);
|
|
205
|
+
|
|
206
|
+
await this.mappers.UpdateSubscriptionMapper.validateProviderUpdate?.(
|
|
207
|
+
subscriptionDto,
|
|
208
|
+
existingStripeSubscription
|
|
209
|
+
);
|
|
210
|
+
|
|
180
211
|
const updatedSubscription = await this.stripeClient.subscriptions.update(
|
|
181
212
|
subscriptionEntity.externalId,
|
|
182
213
|
{
|
|
@@ -188,6 +219,11 @@ export class StripeSubscriptionService<
|
|
|
188
219
|
}
|
|
189
220
|
);
|
|
190
221
|
|
|
222
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
223
|
+
subscriptionEntity.externalId,
|
|
224
|
+
updatedSubscription
|
|
225
|
+
);
|
|
226
|
+
|
|
191
227
|
const updatedSubscriptionEntity =
|
|
192
228
|
await this.baseSubscriptionService.updateSubscription(
|
|
193
229
|
{
|
|
@@ -231,9 +267,14 @@ export class StripeSubscriptionService<
|
|
|
231
267
|
const stripeSubscriptions = await Promise.all(
|
|
232
268
|
subscriptions.map(async (subscription) => {
|
|
233
269
|
try {
|
|
234
|
-
|
|
270
|
+
const provider = await this.stripeClient.subscriptions.retrieve(
|
|
235
271
|
subscription.externalId
|
|
236
272
|
);
|
|
273
|
+
await this.mappers.SubscriptionMapper.validateProviderRead?.(
|
|
274
|
+
subscription.externalId,
|
|
275
|
+
provider
|
|
276
|
+
);
|
|
277
|
+
return provider;
|
|
237
278
|
} catch {
|
|
238
279
|
return null;
|
|
239
280
|
}
|
|
@@ -52,6 +52,15 @@ export type StripeWebhookEventShape = {
|
|
|
52
52
|
const isActiveStatus = (status: Stripe.Subscription.Status): boolean =>
|
|
53
53
|
status === 'active' || status === 'trialing';
|
|
54
54
|
|
|
55
|
+
// Stripe's created timestamp is Unix seconds. Keep our five-minute application
|
|
56
|
+
// expiry within four-digit RFC3339 years; this does not extend the provider URL.
|
|
57
|
+
const portalExpiry = (created: number): Date => {
|
|
58
|
+
if (!Number.isSafeInteger(created) || created < 0 || created > 253402300499) {
|
|
59
|
+
throw new Error('Billing webhook payload is invalid');
|
|
60
|
+
}
|
|
61
|
+
return new Date((created + 300) * 1000);
|
|
62
|
+
};
|
|
63
|
+
|
|
55
64
|
export class StripeWebhookService<
|
|
56
65
|
SchemaValidator extends AnySchemaValidator,
|
|
57
66
|
StatusEnum,
|
|
@@ -241,7 +250,7 @@ export class StripeWebhookService<
|
|
|
241
250
|
{
|
|
242
251
|
id: event.data.object.id,
|
|
243
252
|
customerId: event.data.object.customer,
|
|
244
|
-
expiresAt:
|
|
253
|
+
expiresAt: portalExpiry(event.data.object.created),
|
|
245
254
|
uri: event.data.object.url
|
|
246
255
|
}
|
|
247
256
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"billingPortal.service.d.ts","sourceRoot":"","sources":["../../services/billingPortal.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAE5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,4BAA4B,EAC7B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAElF,qBAAa,0BAA0B,CACrC,eAAe,SAAS,kBAAkB,EAC1C,QAAQ,SAAS,2BAA2B,EAC5C,GAAG,SAAS,uBAAuB,GAAG,uBAAuB,CAC7D,YAAW,oBAAoB,CAAC;IAChC,sBAAsB,EAAE,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzD,sBAAsB,EAAE,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzD,gBAAgB,EAAE,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC7C,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;IAqBE,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,SAAS,CAAC,EAAE,gBAAgB,CAAC;KAC9B;IAvBH,wBAAwB,EAAE,wBAAwB,CAChD,eAAe,EACf,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,KAAK,EAAE,QAAQ,CAAC;IACnC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;IACrF,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IACpD,OAAO,CAAC,QAAQ,CAAC,oCAAoC,CAAiB;IACtE,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,0BAA0B,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAEtE,YACE,YAAY,EAAE,MAAM,EACpB,EAAE,EAAE,aAAa,EACjB,KAAK,EAAE,QAAQ,EACf,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,EACjE,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,0BAA0B,CAAC,QAAQ,EAAE,GAAG,CAAC,EACzC,OAAO,CAAC,EAAE;QACjB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,SAAS,CAAC,EAAE,gBAAgB,CAAC;KAC9B,YAAA,EAoBF;IAEK,0BAA0B,CAC9B,gBAAgB,EAAE,4BAA4B,EAC9C,GAAG,IAAI,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"billingPortal.service.d.ts","sourceRoot":"","sources":["../../services/billingPortal.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,6 +33,14 @@ export declare class StripeCheckoutSessionService<SchemaValidator extends AnySch
|
|
|
33
33
|
} | undefined);
|
|
34
34
|
createCheckoutSession(checkoutSessionDto: StripeCreateCheckoutSessionDto<StatusEnum>, ...args: unknown[]): Promise<Dto['CheckoutSessionMapper']>;
|
|
35
35
|
getCheckoutSession(idDto: IdDto): Promise<Dto['CheckoutSessionMapper']>;
|
|
36
|
+
/**
|
|
37
|
+
* The Stripe id (`cs_...`) stored with a checkout session when it was
|
|
38
|
+
* created. Public ids are local; Stripe only knows its own id. The stored
|
|
39
|
+
* provider object's id wins; a record without one is still usable when its
|
|
40
|
+
* own id is a Stripe id. Anything else fails here rather than sending Stripe
|
|
41
|
+
* a local id.
|
|
42
|
+
*/
|
|
43
|
+
protected stripeCheckoutSessionId(id: string): Promise<string>;
|
|
36
44
|
expireCheckoutSession({ id }: IdDto): Promise<void>;
|
|
37
45
|
handleCheckoutSuccess({ id }: IdDto): Promise<void>;
|
|
38
46
|
handleCheckoutFailure({ id }: IdDto): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkoutSession.service.d.ts","sourceRoot":"","sources":["../../services/checkoutSession.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,0BAA0B,EAAE,MAAM,kDAAkD,CAAC;AAE9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,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,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAC5F,OAAO,EACL,yBAAyB,EACzB,8BAA8B,EAC/B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AAEpF,qBAAa,4BAA4B,CACvC,eAAe,SAAS,kBAAkB,EAC1C,UAAU,EACV,cAAc,SAAS,6BAA6B,EACpD,GAAG,SAAS,yBAAyB,CAAC,UAAU,CAAC,GAC/C,yBAAyB,CAAC,UAAU,CAAC,CACvC,YAAW,sBAAsB,CACjC,OAAO,iBAAiB,EACxB,OAAO,YAAY,EACnB,UAAU,EACV;IACE,wBAAwB,EAAE,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC7D,kBAAkB,EAAE,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACjD,KAAK,EAAE,KAAK,CAAC;CACd,CACF;IA2BG,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,SAAS,CAAC,EAAE,gBAAgB,CAAC;KAC9B;IA7BH,0BAA0B,EAAE,0BAA0B,CACpD,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,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,KAAK,EAAE,QAAQ,CAAC;IACnC,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,4BAA4B,CACtD,UAAU,EACV,cAAc,EACd,GAAG,CACJ,CAAC;IAEF,YACE,YAAY,EAAE,MAAM,EACpB,EAAE,EAAE,aAAa,EACjB,KAAK,EAAE,QAAQ,EACf,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,EACjE,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,4BAA4B,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,CAAC,EAC7D,OAAO,CAAC,EAAE;QACjB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,SAAS,CAAC,EAAE,gBAAgB,CAAC;KAC9B,YAAA,EAsBF;IAEK,qBAAqB,CACzB,kBAAkB,EAAE,8BAA8B,CAAC,UAAU,CAAC,EAC9D,GAAG,IAAI,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"checkoutSession.service.d.ts","sourceRoot":"","sources":["../../services/checkoutSession.service.ts"],"names":[],"mappings":"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"}
|