@lilaquadrat/studio 9.11.1 → 9.12.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.
|
@@ -11,7 +11,7 @@ export declare class CartService {
|
|
|
11
11
|
attributes?: {
|
|
12
12
|
[key: string]: string;
|
|
13
13
|
} | undefined;
|
|
14
|
-
state?: "closed" | "open" | "checkout" | undefined;
|
|
14
|
+
state?: "closed" | "open" | "checkout" | "finished" | undefined;
|
|
15
15
|
payment?: ObjectId | undefined;
|
|
16
16
|
items?: CartItem[] | undefined;
|
|
17
17
|
modified?: Date | undefined;
|
|
@@ -19,6 +19,7 @@ export declare class CartService {
|
|
|
19
19
|
_id?: ObjectId | undefined;
|
|
20
20
|
}>;
|
|
21
21
|
getOpenCart(id: ObjectId, options: Required<UserAppWithOptions>): Promise<import("mongodb").WithId<Cart>>;
|
|
22
|
+
getFinishedCart(id: ObjectId, options: Required<UserAppWithOptions>): Promise<import("bson").Document>;
|
|
22
23
|
getCheckoutUrl(id: ObjectId, options: Required<UserAppWithOptions>): Promise<{
|
|
23
24
|
checkoutUrl: string | null;
|
|
24
25
|
}>;
|
|
@@ -18,7 +18,7 @@ class CartService {
|
|
|
18
18
|
return this.model.db.findOne({ _id: id, company: options.company, project: options.project });
|
|
19
19
|
}
|
|
20
20
|
addPayment(id, payment, options) {
|
|
21
|
-
return this.model.db.updateOne({ _id: id, company: options.company, project: options.project }, { $set: { payment, modified: new Date(), state: '
|
|
21
|
+
return this.model.db.updateOne({ _id: id, company: options.company, project: options.project }, { $set: { payment, modified: new Date(), state: 'finished' } });
|
|
22
22
|
}
|
|
23
23
|
async create(attributes, options) {
|
|
24
24
|
const insertCart = {
|
|
@@ -92,6 +92,35 @@ class CartService {
|
|
|
92
92
|
cart.items = cartItems;
|
|
93
93
|
return cart;
|
|
94
94
|
}
|
|
95
|
+
async getFinishedCart(id, options) {
|
|
96
|
+
const pipeline = [
|
|
97
|
+
{
|
|
98
|
+
$match: { _id: id, state: 'finished', company: options.company, project: options.project },
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
$lookup: {
|
|
102
|
+
from: 'payments',
|
|
103
|
+
let: { paymentId: '$payment' },
|
|
104
|
+
pipeline: [
|
|
105
|
+
{ $match: { $expr: { $eq: ['$_id', '$$paymentId'] } } },
|
|
106
|
+
{ $project: { additionalData: 1, state: 1 } },
|
|
107
|
+
],
|
|
108
|
+
as: 'payment',
|
|
109
|
+
},
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
$unwind: {
|
|
113
|
+
path: '$payment',
|
|
114
|
+
preserveNullAndEmptyArrays: true,
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
];
|
|
118
|
+
const carts = await this.model.db.aggregate(pipeline).toArray();
|
|
119
|
+
const cart = carts[0];
|
|
120
|
+
if (!cart)
|
|
121
|
+
throw new Error('CART_NOT_FOUND');
|
|
122
|
+
return cart;
|
|
123
|
+
}
|
|
95
124
|
async getCheckoutUrl(id, options) {
|
|
96
125
|
const stripeProvider = await paymentProviders_service_1.default.byType('stripe', options.company, options.project);
|
|
97
126
|
if (!stripeProvider)
|
|
@@ -118,6 +147,15 @@ class CartService {
|
|
|
118
147
|
}
|
|
119
148
|
const stripe = new stripe_1.default(stripeProvider.token);
|
|
120
149
|
await this.model.db.updateOne({ _id: id }, { $set: { state: 'checkout' } });
|
|
150
|
+
/**
|
|
151
|
+
* if the cart has a successUrl, we add the cartId to the query string
|
|
152
|
+
* to show the proper success page with invoice
|
|
153
|
+
*/
|
|
154
|
+
if (cart.attributes?.successUrl) {
|
|
155
|
+
const url = new URL(cart.attributes.successUrl);
|
|
156
|
+
url.searchParams.set('cartId', cart._id.toString());
|
|
157
|
+
cart.attributes.successUrl = url.toString();
|
|
158
|
+
}
|
|
121
159
|
const session = await stripe.checkout.sessions.create({
|
|
122
160
|
mode: 'payment',
|
|
123
161
|
billing_address_collection: 'required',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cart.service.js","sourceRoot":"","sources":["../../../../src/services/cart.service.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"cart.service.js","sourceRoot":"","sources":["../../../../src/services/cart.service.ts"],"names":[],"mappings":"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"}
|