@alphabite/medusa-wishlist 0.0.5 → 0.2.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/.medusa/server/src/api/middlewares.js +7 -6
- package/.medusa/server/src/api/store/wishlists/[id]/add-item/route.js +22 -3
- package/.medusa/server/src/api/store/wishlists/[id]/items/[item_id]/route.js +24 -4
- package/.medusa/server/src/api/store/wishlists/[id]/items/route.js +12 -6
- package/.medusa/server/src/api/store/wishlists/[id]/route.js +7 -4
- package/.medusa/server/src/api/store/wishlists/route.js +36 -6
- package/.medusa/server/src/modules/wishlist/service.js +14 -6
- package/package.json +1 -1
|
@@ -14,11 +14,11 @@ exports.default = (0, http_1.defineMiddlewares)({
|
|
|
14
14
|
(0, http_1.authenticate)("customer", ["bearer"]),
|
|
15
15
|
(0, http_1.validateAndTransformQuery)((0, validators_1.createFindParams)(), {
|
|
16
16
|
defaults: [
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
17
|
+
// "items.*",
|
|
18
|
+
// "items.product_variant.*",
|
|
19
|
+
// "items.product_variant.prices.*",
|
|
20
|
+
// "items.product_variant.product.thumbnail",
|
|
21
|
+
// "items.product_variant.product.id",
|
|
22
22
|
],
|
|
23
23
|
isList: true,
|
|
24
24
|
}),
|
|
@@ -92,6 +92,7 @@ exports.default = (0, http_1.defineMiddlewares)({
|
|
|
92
92
|
"product_id",
|
|
93
93
|
"wishlist_id",
|
|
94
94
|
"created_at",
|
|
95
|
+
"wishlist.customer_id",
|
|
95
96
|
"updated_at",
|
|
96
97
|
"deleted_at",
|
|
97
98
|
"product_variant.*",
|
|
@@ -143,4 +144,4 @@ exports.default = (0, http_1.defineMiddlewares)({
|
|
|
143
144
|
},
|
|
144
145
|
],
|
|
145
146
|
});
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBpL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbURBS2tDO0FBQ2xDLHNFQUF5RTtBQUN6RSw2REFHc0M7QUFDdEMsMkVBQTBGO0FBRTFGLGtCQUFlLElBQUEsd0JBQWlCLEVBQUM7SUFDL0IsTUFBTSxFQUFFO1FBQ04sMkJBQTJCO1FBQzNCO1lBQ0UsT0FBTyxFQUFFLGtCQUFrQjtZQUMzQixPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDaEIsV0FBVyxFQUFFO2dCQUNYLElBQUEsbUJBQVksRUFBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDcEMsSUFBQSxnQ0FBeUIsRUFBQyxJQUFBLDZCQUFnQixHQUFFLEVBQUU7b0JBQzVDLFFBQVEsRUFBRTtvQkFDUixhQUFhO29CQUNiLDZCQUE2QjtvQkFDN0Isb0NBQW9DO29CQUNwQyw2Q0FBNkM7b0JBQzdDLHNDQUFzQztxQkFDdkM7b0JBQ0QsTUFBTSxFQUFFLElBQUk7aUJBQ2IsQ0FBQzthQUNIO1NBQ0Y7UUFDRCw4QkFBOEI7UUFDOUI7WUFDRSxPQUFPLEVBQUUsc0JBQXNCO1lBQy9CLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNoQixXQUFXLEVBQUU7Z0JBQ1gsSUFBQSxtQkFBWSxFQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFO29CQUNuQyxpQkFBaUIsRUFBRSxJQUFJO29CQUN2QixvQkFBb0IsRUFBRSxJQUFJO2lCQUMzQixDQUFDO2dCQUNGLElBQUEsZ0NBQXlCLEVBQUMsSUFBQSw2QkFBZ0IsR0FBRSxFQUFFO29CQUM1QyxRQUFRLEVBQUU7d0JBQ1IsU0FBUzt3QkFDVCx5QkFBeUI7d0JBQ3pCLGdDQUFnQzt3QkFDaEMseUNBQXlDO3dCQUN6QyxrQ0FBa0M7cUJBQ25DO2lCQUNGLENBQUM7YUFDSDtTQUNGO1FBQ0Qs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
|
|
@@ -2,13 +2,32 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.POST = void 0;
|
|
4
4
|
const wishlist_1 = require("../../../../../modules/wishlist");
|
|
5
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
6
|
const POST = async (req, res) => {
|
|
6
7
|
const { product_variant_id } = req.body;
|
|
7
8
|
const { id } = req.params;
|
|
9
|
+
const customer_id = req?.auth_context?.actor_id;
|
|
10
|
+
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
11
|
+
const options = wishlistService._options;
|
|
12
|
+
if (!options.allowGuestWishlist && !customer_id) {
|
|
13
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
14
|
+
}
|
|
8
15
|
try {
|
|
9
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
10
16
|
const query = req.scope.resolve("query");
|
|
11
|
-
const
|
|
17
|
+
const { data: wishlist } = await query.graph({
|
|
18
|
+
entity: "wishlist",
|
|
19
|
+
filters: { id },
|
|
20
|
+
fields: ["id", "customer_id"],
|
|
21
|
+
});
|
|
22
|
+
if (wishlist[0]?.customer_id && !customer_id) {
|
|
23
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "You are not authorized to add items to this wishlist");
|
|
24
|
+
}
|
|
25
|
+
if (customer_id &&
|
|
26
|
+
wishlist[0]?.customer_id &&
|
|
27
|
+
wishlist[0]?.customer_id !== customer_id) {
|
|
28
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "You are not authorized to add items to this wishlist");
|
|
29
|
+
}
|
|
30
|
+
console.log("wishlist", wishlist);
|
|
12
31
|
const created_item = await wishlistService.createWishlistItems({
|
|
13
32
|
product_variant_id,
|
|
14
33
|
wishlist_id: id,
|
|
@@ -29,4 +48,4 @@ const POST = async (req, res) => {
|
|
|
29
48
|
}
|
|
30
49
|
};
|
|
31
50
|
exports.POST = POST;
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL2FkZC1pdGVtL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLDhEQUFrRTtBQUVsRSxxREFBd0Q7QUFFakQsTUFBTSxJQUFJLEdBQUcsS0FBSyxFQUN2QixHQUF1RCxFQUN2RCxHQUFpQyxFQUNqQyxFQUFFO0lBQ0YsTUFBTSxFQUFFLGtCQUFrQixFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztJQUN4QyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQztJQUMxQixNQUFNLFdBQVcsR0FBRyxHQUFHLEVBQUUsWUFBWSxFQUFFLFFBQVEsQ0FBQztJQUVoRCxNQUFNLGVBQWUsR0FDbkIsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQXdCLDBCQUFlLENBQUMsQ0FBQztJQUM1RCxNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDO0lBRXpDLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoRCxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QixpQ0FBaUMsQ0FDbEMsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLENBQUM7UUFDSCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6QyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztZQUMzQyxNQUFNLEVBQUUsVUFBVTtZQUNsQixPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDZixNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDO1NBQzlCLENBQUMsQ0FBQztRQUVILElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzdDLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLHNEQUFzRCxDQUN2RCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQ0UsV0FBVztZQUNYLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXO1lBQ3hCLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLEtBQUssV0FBVyxFQUN4QyxDQUFDO1lBQ0QsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsc0RBQXNELENBQ3ZELENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFFbEMsTUFBTSxZQUFZLEdBQUcsTUFBTSxlQUFlLENBQUMsbUJBQW1CLENBQUM7WUFDN0Qsa0JBQWtCO1lBQ2xCLFdBQVcsRUFBRSxFQUFFO1NBQ2hCLENBQUMsQ0FBQztRQUVILE1BQU0sRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDekQsTUFBTSxFQUFFLGVBQWU7WUFDdkIsT0FBTyxFQUFFO2dCQUNQLEVBQUUsRUFBRSxZQUFZLENBQUMsRUFBRTthQUNwQjtZQUNELEdBQUcsR0FBRyxDQUFDLFdBQVc7WUFDbEIsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3hFLENBQUMsQ0FBQztRQUVILE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFbEQsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9CLENBQUM7QUFDSCxDQUFDLENBQUM7QUFwRVcsUUFBQSxJQUFJLFFBb0VmIn0=
|
|
@@ -2,13 +2,33 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DELETE = void 0;
|
|
4
4
|
const wishlist_1 = require("../../../../../../modules/wishlist");
|
|
5
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
6
|
const DELETE = async (req, res) => {
|
|
6
|
-
const { item_id
|
|
7
|
+
const { item_id, id: wishlist_id } = req.params;
|
|
8
|
+
const customer_id = req?.auth_context?.actor_id;
|
|
7
9
|
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
10
|
+
const options = wishlistService._options;
|
|
11
|
+
if (!options.allowGuestWishlist && !customer_id) {
|
|
12
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
13
|
+
}
|
|
8
14
|
try {
|
|
15
|
+
const query = req.scope.resolve("query");
|
|
16
|
+
const { data: wishlist } = await query.graph({
|
|
17
|
+
entity: "wishlist",
|
|
18
|
+
filters: { id: wishlist_id },
|
|
19
|
+
fields: ["id", "customer_id"],
|
|
20
|
+
});
|
|
21
|
+
if (wishlist[0]?.customer_id && !customer_id) {
|
|
22
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "You are not authorized to remove items from this wishlist");
|
|
23
|
+
}
|
|
24
|
+
if (customer_id &&
|
|
25
|
+
wishlist[0]?.customer_id &&
|
|
26
|
+
wishlist[0]?.customer_id !== customer_id) {
|
|
27
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "You are not authorized to remove items from this wishlist");
|
|
28
|
+
}
|
|
9
29
|
//Remove item from wishlist
|
|
10
|
-
await wishlistService.deleteWishlistItems(
|
|
11
|
-
return res.status(200).json({ id });
|
|
30
|
+
await wishlistService.deleteWishlistItems(item_id);
|
|
31
|
+
return res.status(200).json({ id: item_id });
|
|
12
32
|
}
|
|
13
33
|
catch (error) {
|
|
14
34
|
console.log("Error fetching wishlists:", error);
|
|
@@ -16,4 +36,4 @@ const DELETE = async (req, res) => {
|
|
|
16
36
|
}
|
|
17
37
|
};
|
|
18
38
|
exports.DELETE = DELETE;
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL2l0ZW1zL1tpdGVtX2lkXS9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFNQSxpRUFBcUU7QUFDckUscURBQXdEO0FBT2pELE1BQU0sTUFBTSxHQUFHLEtBQUssRUFDekIsR0FBK0IsRUFDL0IsR0FBNkMsRUFDN0MsRUFBRTtJQUNGLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDaEQsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUM7SUFFaEQsTUFBTSxlQUFlLEdBQ25CLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUF3QiwwQkFBZSxDQUFDLENBQUM7SUFDNUQsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQztJQUV6QyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEQsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsaUNBQWlDLENBQ2xDLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFekMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDM0MsTUFBTSxFQUFFLFVBQVU7WUFDbEIsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRTtZQUM1QixNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDO1NBQzlCLENBQUMsQ0FBQztRQUVILElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzdDLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLDJEQUEyRCxDQUM1RCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQ0UsV0FBVztZQUNYLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXO1lBQ3hCLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLEtBQUssV0FBVyxFQUN4QyxDQUFDO1lBQ0QsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsMkRBQTJELENBQzVELENBQUM7UUFDSixDQUFDO1FBRUQsMkJBQTJCO1FBQzNCLE1BQU0sZUFBZSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRW5ELE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFaEQsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9CLENBQUM7QUFDSCxDQUFDLENBQUM7QUF0RFcsUUFBQSxNQUFNLFVBc0RqQiJ9
|
|
@@ -3,24 +3,30 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.GET = void 0;
|
|
4
4
|
const utils_1 = require("../../../../../utils/utils");
|
|
5
5
|
const wishlist_1 = require("../../../../../modules/wishlist");
|
|
6
|
+
const utils_2 = require("@medusajs/framework/utils");
|
|
6
7
|
const GET = async (req, res) => {
|
|
7
8
|
const { id } = req.params;
|
|
8
|
-
|
|
9
|
+
const customer_id = req?.auth_context?.actor_id;
|
|
10
|
+
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
11
|
+
const options = wishlistService._options;
|
|
12
|
+
if (!options.allowGuestWishlist && !customer_id) {
|
|
13
|
+
throw new utils_2.MedusaError(utils_2.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
14
|
+
}
|
|
9
15
|
try {
|
|
10
16
|
const query = req.scope.resolve("query");
|
|
11
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
12
|
-
const options = wishlistService._options;
|
|
13
17
|
const { data: wishlist_items, metadata } = await query.graph({
|
|
14
18
|
entity: "wishlist_item",
|
|
15
19
|
filters: {
|
|
16
20
|
wishlist_id: id,
|
|
17
|
-
// ...(customer_id && { customer_id }), //Items don't have customer_id, so this is commented out
|
|
18
21
|
},
|
|
19
22
|
...req.queryConfig,
|
|
20
23
|
fields: [...(req.queryConfig.fields || []), ...(options?.fields || [])],
|
|
21
24
|
});
|
|
25
|
+
if (customer_id && wishlist_items[0].wishlist.customer_id !== customer_id) {
|
|
26
|
+
throw new utils_2.MedusaError(utils_2.MedusaErrorTypes.UNAUTHORIZED, "You are not authorized to access this wishlist items");
|
|
27
|
+
}
|
|
22
28
|
return res.status(200).json({
|
|
23
|
-
data: wishlist_items,
|
|
29
|
+
data: wishlist_items.map(({ wishlist, ...wishlist_item }) => wishlist_item),
|
|
24
30
|
skip: metadata?.skip || 0,
|
|
25
31
|
take: metadata?.take || 5,
|
|
26
32
|
...(0, utils_1.getPagination)(metadata),
|
|
@@ -32,4 +38,4 @@ const GET = async (req, res) => {
|
|
|
32
38
|
}
|
|
33
39
|
};
|
|
34
40
|
exports.GET = GET;
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL2l0ZW1zL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLHNEQUEyRDtBQUUzRCw4REFBa0U7QUFDbEUscURBQTBFO0FBRW5FLE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBK0IsRUFDL0IsR0FBa0QsRUFDbEQsRUFBRTtJQUNGLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQzFCLE1BQU0sV0FBVyxHQUFHLEdBQUcsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO0lBRWhELE1BQU0sZUFBZSxHQUNuQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBd0IsMEJBQWUsQ0FBQyxDQUFDO0lBQzVELE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUM7SUFFekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2hELE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLGlDQUFpQyxDQUNsQyxDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpDLE1BQU0sRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztZQUMzRCxNQUFNLEVBQUUsZUFBZTtZQUN2QixPQUFPLEVBQUU7Z0JBQ1AsV0FBVyxFQUFFLEVBQUU7YUFDaEI7WUFDRCxHQUFHLEdBQUcsQ0FBQyxXQUFXO1lBQ2xCLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQztTQUN4RSxDQUFDLENBQUM7UUFFSCxJQUFJLFdBQVcsSUFBSSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUMxRSxNQUFNLElBQUksbUJBQVcsQ0FDbkIsd0JBQWdCLENBQUMsWUFBWSxFQUM3QixzREFBc0QsQ0FDdkQsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzFCLElBQUksRUFBRSxjQUFjLENBQUMsR0FBRyxDQUN0QixDQUFDLEVBQUUsUUFBUSxFQUFFLEdBQUcsYUFBYSxFQUFFLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FDbEQ7WUFDRCxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDO1lBQ3pCLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxJQUFJLENBQUM7WUFDekIsR0FBRyxJQUFBLHFCQUFhLEVBQUMsUUFBUyxDQUFDO1NBQzVCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQ0FBZ0MsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVyRCxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDL0IsQ0FBQztBQUNILENBQUMsQ0FBQztBQWxEVyxRQUFBLEdBQUcsT0FrRGQifQ==
|
|
@@ -9,10 +9,13 @@ const wishlist_1 = require("../../../../modules/wishlist");
|
|
|
9
9
|
async function GET(req, res) {
|
|
10
10
|
const { id } = req.params;
|
|
11
11
|
const customer_id = req?.auth_context?.actor_id;
|
|
12
|
+
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
13
|
+
const options = wishlistService._options;
|
|
14
|
+
if (!options.allowGuestWishlist && !customer_id) {
|
|
15
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
16
|
+
}
|
|
12
17
|
try {
|
|
13
18
|
const query = req.scope.resolve("query");
|
|
14
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
15
|
-
const options = wishlistService._options;
|
|
16
19
|
const { data } = await query.graph({
|
|
17
20
|
entity: "wishlist",
|
|
18
21
|
filters: {
|
|
@@ -59,7 +62,7 @@ async function DELETE(req, res) {
|
|
|
59
62
|
const { id } = req.params;
|
|
60
63
|
try {
|
|
61
64
|
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
62
|
-
await wishlistService.
|
|
65
|
+
await wishlistService.deleteWishlists({ id });
|
|
63
66
|
return res.status(200).json({
|
|
64
67
|
id,
|
|
65
68
|
});
|
|
@@ -69,4 +72,4 @@ async function DELETE(req, res) {
|
|
|
69
72
|
return res.status(500).end();
|
|
70
73
|
}
|
|
71
74
|
}
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBWUEsa0JBd0RDO0FBRUQsa0JBc0JDO0FBT0Qsd0JBb0JDO0FBbEhELHFEQUEwRTtBQUkxRSwyREFBK0Q7QUFFL0QsaURBQWlEO0FBQzFDLEtBQUssVUFBVSxHQUFHLENBQ3ZCLEdBQStCLEVBQy9CLEdBQTZCO0lBRTdCLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQzFCLE1BQU0sV0FBVyxHQUFHLEdBQUcsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO0lBRWhELE1BQU0sZUFBZSxHQUNuQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBd0IsMEJBQWUsQ0FBQyxDQUFDO0lBQzVELE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUM7SUFFekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2hELE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLGlDQUFpQyxDQUNsQyxDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDakMsTUFBTSxFQUFFLFVBQVU7WUFDbEIsT0FBTyxFQUFFO2dCQUNQLEVBQUU7YUFDSDtZQUNELEdBQUcsR0FBRyxDQUFDLFdBQVc7WUFDbEIsTUFBTSxFQUFFO2dCQUNOLEdBQUc7Z0JBQ0gsR0FBRyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMs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
|
|
@@ -4,25 +4,51 @@ exports.GET = GET;
|
|
|
4
4
|
exports.POST = POST;
|
|
5
5
|
const wishlist_1 = require("../../../modules/wishlist");
|
|
6
6
|
const utils_1 = require("../../../utils/utils");
|
|
7
|
+
const utils_2 = require("@medusajs/framework/utils");
|
|
7
8
|
async function GET(req, res) {
|
|
8
9
|
const customer_id = req.auth_context.actor_id;
|
|
10
|
+
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
11
|
+
const options = wishlistService._options;
|
|
9
12
|
try {
|
|
10
13
|
const query = req.scope.resolve("query");
|
|
11
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
12
|
-
const options = wishlistService._options;
|
|
13
14
|
const { data, metadata } = await query.graph({
|
|
14
15
|
entity: "wishlist",
|
|
15
16
|
filters: { customer_id },
|
|
16
17
|
...req.queryConfig,
|
|
17
18
|
fields: [
|
|
18
19
|
"*",
|
|
19
|
-
// ...(req.queryConfig.fields || []),
|
|
20
20
|
...(options?.fields || []),
|
|
21
21
|
...(options.includeWishlistItems ? req.queryConfig.fields : []),
|
|
22
22
|
],
|
|
23
23
|
});
|
|
24
|
+
const enriched_wishlist = await Promise.all(data.map(async (wishlist) => {
|
|
25
|
+
const { data: items } = await query.graph({
|
|
26
|
+
entity: "wishlist_item",
|
|
27
|
+
filters: { wishlist_id: wishlist.id },
|
|
28
|
+
fields: [
|
|
29
|
+
"id",
|
|
30
|
+
"product_id",
|
|
31
|
+
"wishlist_id",
|
|
32
|
+
"created_at",
|
|
33
|
+
"updated_at",
|
|
34
|
+
"deleted_at",
|
|
35
|
+
"product_variant.*",
|
|
36
|
+
"product_variant.prices.*",
|
|
37
|
+
"product_variant.calculated_price",
|
|
38
|
+
"product_variant.product.thumbnail",
|
|
39
|
+
],
|
|
40
|
+
pagination: {
|
|
41
|
+
take: options?.includeWishlistItemsTake || 5,
|
|
42
|
+
skip: 0,
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
return {
|
|
46
|
+
...wishlist,
|
|
47
|
+
items: items.length > 0 ? items : [],
|
|
48
|
+
};
|
|
49
|
+
}));
|
|
24
50
|
return res.status(200).json({
|
|
25
|
-
data,
|
|
51
|
+
data: enriched_wishlist,
|
|
26
52
|
take: metadata?.take || 5,
|
|
27
53
|
skip: metadata?.skip || 0,
|
|
28
54
|
...(0, utils_1.getPagination)(metadata),
|
|
@@ -37,8 +63,12 @@ async function GET(req, res) {
|
|
|
37
63
|
async function POST(req, res) {
|
|
38
64
|
const customer_id = req?.auth_context?.actor_id;
|
|
39
65
|
const { ...input } = req.body;
|
|
66
|
+
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
67
|
+
const options = wishlistService._options;
|
|
68
|
+
if (!options.allowGuestWishlist && !customer_id) {
|
|
69
|
+
throw new utils_2.MedusaError(utils_2.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
70
|
+
}
|
|
40
71
|
try {
|
|
41
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
42
72
|
const wishlist = await wishlistService.createWishlists({
|
|
43
73
|
...input,
|
|
44
74
|
...(customer_id && { customer_id }),
|
|
@@ -49,4 +79,4 @@ async function POST(req, res) {
|
|
|
49
79
|
return res.status(500).end();
|
|
50
80
|
}
|
|
51
81
|
}
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVdBLGtCQWdFQztBQUlELG9CQTRCQztBQXBHRCx3REFBNEQ7QUFDNUQsZ0RBQXFEO0FBQ3JELHFEQUF3RDtBQUVqRCxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUErQixFQUMvQixHQUE4QztJQUU5QyxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUM5QyxNQUFNLGVBQWUsR0FDbkIsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQXdCLDBCQUFlLENBQUMsQ0FBQztJQUM1RCxNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDO0lBRXpDLElBQUksQ0FBQztRQUNILE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQzNDLE1BQU0sRUFBRSxVQUFVO1lBQ2xCLE9BQU8sRUFBRSxFQUFFLFdBQVcsRUFBRTtZQUN4QixHQUFHLEdBQUcsQ0FBQyxXQUFXO1lBQ2xCLE1BQU0sRUFBRTtnQkFDTixHQUFHO2dCQUNILEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQztnQkFDMUIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzthQUNoRTtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0saUJBQWlCLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFB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
|
|
@@ -11,21 +11,29 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
15
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
16
|
+
};
|
|
14
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
18
|
const utils_1 = require("@medusajs/framework/utils");
|
|
16
19
|
const wishlist_1 = require("./models/wishlist");
|
|
17
20
|
const wishlist_item_1 = require("./models/wishlist-item");
|
|
18
21
|
const utils_2 = require("@medusajs/framework/utils");
|
|
22
|
+
const zod_1 = __importDefault(require("zod"));
|
|
23
|
+
const optionsSchema = zod_1.default.object({
|
|
24
|
+
fields: zod_1.default.array(zod_1.default.string()).optional(),
|
|
25
|
+
includeWishlistItems: zod_1.default.boolean().default(false),
|
|
26
|
+
includeWishlistItemsTake: zod_1.default.number().default(5),
|
|
27
|
+
allowGuestWishlist: zod_1.default.boolean().default(false),
|
|
28
|
+
});
|
|
19
29
|
class WishlistModuleService extends (0, utils_1.MedusaService)({
|
|
20
30
|
Wishlist: wishlist_1.Wishlist,
|
|
21
31
|
WishlistItem: wishlist_item_1.WishlistItem,
|
|
22
32
|
}) {
|
|
23
33
|
static validateOptions(_options) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Missing required options for DigitalOcean Storage");
|
|
28
|
-
}
|
|
34
|
+
const parsed = optionsSchema.safeParse(_options);
|
|
35
|
+
if (!parsed.success) {
|
|
36
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `Invalid options provided for WishlistModuleService: ${parsed.error.message}`);
|
|
29
37
|
}
|
|
30
38
|
}
|
|
31
39
|
constructor({}, options) {
|
|
@@ -90,4 +98,4 @@ __decorate([
|
|
|
90
98
|
__metadata("design:paramtypes", [String, String, Object]),
|
|
91
99
|
__metadata("design:returntype", Promise)
|
|
92
100
|
], WishlistModuleService.prototype, "getWishlistItemId", null);
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3dpc2hsaXN0L3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFJbUM7QUFDbkMsZ0RBQTZDO0FBQzdDLDBEQUFzRDtBQUN0RCxxREFBMEQ7QUFHMUQsOENBQW9CO0FBRXBCLE1BQU0sYUFBYSxHQUFHLGFBQUMsQ0FBQyxNQUFNLENBQUM7SUFDN0IsTUFBTSxFQUFFLGFBQUMsQ0FBQyxLQUFLLENBQUMsYUFBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ3RDLG9CQUFvQixFQUFFLGFBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQ2hELHdCQUF3QixFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQy9DLGtCQUFrQixFQUFFLGFBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO0NBQy9DLENBQUMsQ0FBQztBQUlILE1BQXFCLHFCQUFzQixTQUFRLElBQUEscUJBQWEsRUFBQztJQUMvRCxRQUFRLEVBQVIsbUJBQVE7SUFDUixZQUFZLEVBQVosNEJBQVk7Q0FDYixDQUFDO0lBR0EsTUFBTSxDQUFDLGVBQWUsQ0FDcEIsUUFBd0M7UUFFeEMsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLHVEQUF1RCxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUM5RSxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRCxZQUFZLEVBQUUs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
|