@alphabite/medusa-wishlist 0.5.7 → 0.5.9
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/api/admin/products/[id]/wishlist/route.js +25 -0
- package/.medusa/server/{src/api → api}/middlewares.js +1 -1
- package/.medusa/server/api/store/wishlists/[id]/add-item/route.js +63 -0
- package/.medusa/server/{src/api → api}/store/wishlists/[id]/add-item/validators.js +2 -2
- package/.medusa/server/api/store/wishlists/[id]/items/[item_id]/route.js +38 -0
- package/.medusa/server/api/store/wishlists/[id]/items/route.js +49 -0
- package/.medusa/server/api/store/wishlists/[id]/route.js +139 -0
- package/.medusa/server/api/store/wishlists/[id]/share/route.js +27 -0
- package/.medusa/server/api/store/wishlists/[id]/transfer/route.js +19 -0
- package/.medusa/server/api/store/wishlists/[id]/validators.js +10 -0
- package/.medusa/server/api/store/wishlists/import/route.js +45 -0
- package/.medusa/server/{src/api → api}/store/wishlists/import/validators.js +2 -2
- package/.medusa/server/api/store/wishlists/route.js +74 -0
- package/.medusa/server/api/store/wishlists/total-items-count/route.js +29 -0
- package/.medusa/server/api/store/wishlists/total-items-count/validators.js +8 -0
- package/.medusa/server/{src/api → api}/store/wishlists/types.js +1 -1
- package/.medusa/server/{src/api → api}/store/wishlists/validators.js +2 -2
- package/.medusa/server/{src/index.js → index.js} +1 -1
- package/.medusa/server/{src/links → links}/wishlist-customer.js +1 -1
- package/.medusa/server/{src/links → links}/wishlist-product-variant.js +1 -1
- package/.medusa/server/{src/links → links}/wishlist-sales-channel.js +1 -1
- package/.medusa/server/{src/modules → modules}/wishlist/index.js +1 -1
- package/.medusa/server/{src/modules → modules}/wishlist/migrations/Migration20250616124134.js +1 -1
- package/.medusa/server/{src/modules → modules}/wishlist/migrations/Migration20250616131527.js +1 -1
- package/.medusa/server/modules/wishlist/migrations/Migration20260415155648.js +38 -0
- package/.medusa/server/{src/modules → modules}/wishlist/models/wishlist-item.js +1 -1
- package/.medusa/server/modules/wishlist/models/wishlist.js +20 -0
- package/.medusa/server/{src/modules → modules}/wishlist/service.js +1 -1
- package/.medusa/server/src/admin/index.js +3 -1
- package/.medusa/server/src/admin/index.mjs +3 -1
- package/.medusa/server/{src/types → types}/index.js +1 -1
- package/.medusa/server/{src/types → types}/types.js +1 -1
- package/.medusa/server/{src/utils → utils}/default-response.js +1 -1
- package/.medusa/server/utils/utils.js +23 -0
- package/.medusa/types/api/store/wishlists/[id]/add-item/validators.d.ts +1 -1
- package/.medusa/types/api/store/wishlists/[id]/validators.d.ts +7 -1
- package/.medusa/types/api/store/wishlists/import/validators.d.ts +1 -1
- package/.medusa/types/api/store/wishlists/total-items-count/validators.d.ts +1 -1
- package/.medusa/types/api/store/wishlists/validators.d.ts +4 -4
- package/.medusa/types/modules/wishlist/models/wishlist-item.d.ts +2 -0
- package/.medusa/types/modules/wishlist/models/wishlist.d.ts +2 -0
- package/README.md +25 -0
- package/package.json +14 -14
- package/.medusa/server/src/api/admin/products/[id]/wishlist/route.js +0 -25
- package/.medusa/server/src/api/store/wishlists/[id]/add-item/route.js +0 -63
- package/.medusa/server/src/api/store/wishlists/[id]/items/[item_id]/route.js +0 -38
- package/.medusa/server/src/api/store/wishlists/[id]/items/route.js +0 -49
- package/.medusa/server/src/api/store/wishlists/[id]/route.js +0 -85
- package/.medusa/server/src/api/store/wishlists/[id]/share/route.js +0 -27
- package/.medusa/server/src/api/store/wishlists/[id]/transfer/route.js +0 -19
- package/.medusa/server/src/api/store/wishlists/[id]/validators.js +0 -8
- package/.medusa/server/src/api/store/wishlists/import/route.js +0 -45
- package/.medusa/server/src/api/store/wishlists/route.js +0 -74
- package/.medusa/server/src/api/store/wishlists/total-items-count/route.js +0 -29
- package/.medusa/server/src/api/store/wishlists/total-items-count/validators.js +0 -8
- package/.medusa/server/src/modules/wishlist/migrations/Migration20260415155648.js +0 -14
- package/.medusa/server/src/modules/wishlist/models/wishlist.js +0 -20
- package/.medusa/server/src/utils/utils.js +0 -25
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GET = void 0;
|
|
4
|
-
const utils_1 = require("../../../../../utils/utils");
|
|
5
|
-
const wishlist_1 = require("../../../../../modules/wishlist");
|
|
6
|
-
const utils_2 = require("@medusajs/framework/utils");
|
|
7
|
-
const GET = async (req, res) => {
|
|
8
|
-
const logger = req.scope.resolve("logger");
|
|
9
|
-
const { id } = req.params;
|
|
10
|
-
const customer_id = req?.auth_context?.actor_id;
|
|
11
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
12
|
-
const options = wishlistService._options;
|
|
13
|
-
if (!options.allowGuestWishlist && !customer_id) {
|
|
14
|
-
throw new utils_2.MedusaError(utils_2.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
15
|
-
}
|
|
16
|
-
try {
|
|
17
|
-
const query = req.scope.resolve("query");
|
|
18
|
-
const { data: wishlist_items, metadata } = await query.graph({
|
|
19
|
-
entity: "wishlist_item",
|
|
20
|
-
filters: {
|
|
21
|
-
wishlist_id: id,
|
|
22
|
-
},
|
|
23
|
-
...req.queryConfig,
|
|
24
|
-
fields: [
|
|
25
|
-
...(req.queryConfig.fields || []),
|
|
26
|
-
...(options?.wishlistItemsFields || []),
|
|
27
|
-
],
|
|
28
|
-
});
|
|
29
|
-
if (wishlist_items.length > 0 &&
|
|
30
|
-
customer_id &&
|
|
31
|
-
wishlist_items[0].wishlist.customer_id !== customer_id) {
|
|
32
|
-
throw new utils_2.MedusaError(utils_2.MedusaError.Types.UNAUTHORIZED, "You are not authorized to access this wishlist items");
|
|
33
|
-
}
|
|
34
|
-
return res.status(200).json({
|
|
35
|
-
data: wishlist_items.length > 0
|
|
36
|
-
? wishlist_items.map(({ wishlist, ...wishlist_item }) => wishlist_item)
|
|
37
|
-
: [],
|
|
38
|
-
skip: metadata?.skip || 0,
|
|
39
|
-
take: metadata?.take || 5,
|
|
40
|
-
...(0, utils_1.getPagination)(metadata),
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
catch (error) {
|
|
44
|
-
logger.error(`Error fetching wishlist items:${JSON.stringify(error)}`);
|
|
45
|
-
return res.status(500).end();
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
exports.GET = GET;
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL2l0ZW1zL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLHNEQUEyRDtBQUUzRCw4REFBa0U7QUFDbEUscURBQXdEO0FBRWpELE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBK0IsRUFDL0IsR0FBa0QsRUFDbEQsRUFBRTtJQUNGLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTNDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQzFCLE1BQU0sV0FBVyxHQUFHLEdBQUcsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO0lBRWhELE1BQU0sZUFBZSxHQUNuQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBd0IsMEJBQWUsQ0FBQyxDQUFDO0lBQzVELE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUM7SUFFekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2hELE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLGlDQUFpQyxDQUNsQyxDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpDLE1BQU0sRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztZQUMzRCxNQUFNLEVBQUUsZUFBZTtZQUN2QixPQUFPLEVBQUU7Z0JBQ1AsV0FBVyxFQUFFLEVBQUU7YUFDaEI7WUFDRCxHQUFHLEdBQUcsQ0FBQyxXQUFXO1lBQ2xCLE1BQU0sRUFBRTtnQkFDTixHQUFHLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO2dCQUNqQyxHQUFHLENBQUMsT0FBTyxFQUFFLG1CQUFtQixJQUFJLEVBQUUsQ0FBQzthQUN4QztTQUNGLENBQUMsQ0FBQztRQUVILElBQ0UsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQ3pCLFdBQVc7WUFDWCxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsS0FBSyxXQUFXLEVBQ3RELENBQUM7WUFDRCxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QixzREFBc0QsQ0FDdkQsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzFCLElBQUksRUFDRixjQUFjLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQ3ZCLENBQUMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUNoQixDQUFDLEVBQUUsUUFBUSxFQUFFLEdBQUcsYUFBYSxFQUFFLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FDbEQ7Z0JBQ0gsQ0FBQyxDQUFDLEVBQUU7WUFDUixJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDO1lBQ3pCLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxJQUFJLENBQUM7WUFDekIsR0FBRyxJQUFBLHFCQUFhLEVBQUMsUUFBUSxDQUFDO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsTUFBTSxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFdkUsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9CLENBQUM7QUFDSCxDQUFDLENBQUM7QUE5RFcsUUFBQSxHQUFHLE9BOERkIn0=
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GET = GET;
|
|
4
|
-
exports.PUT = PUT;
|
|
5
|
-
exports.DELETE = DELETE;
|
|
6
|
-
const utils_1 = require("@medusajs/framework/utils");
|
|
7
|
-
const wishlist_1 = require("../../../../modules/wishlist");
|
|
8
|
-
const utils_2 = require("../../../../utils/utils");
|
|
9
|
-
//-----Retrieves a specific wishlist by ID-----//
|
|
10
|
-
async function GET(req, res) {
|
|
11
|
-
const logger = req.scope.resolve("logger");
|
|
12
|
-
const { id } = req.params;
|
|
13
|
-
const customer_id = req?.auth_context?.actor_id;
|
|
14
|
-
const { items_fields } = req.validatedQuery;
|
|
15
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
16
|
-
const options = wishlistService._options;
|
|
17
|
-
if (!options.allowGuestWishlist && !customer_id) {
|
|
18
|
-
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
19
|
-
}
|
|
20
|
-
try {
|
|
21
|
-
const query = req.scope.resolve("query");
|
|
22
|
-
const { data } = await query.graph({
|
|
23
|
-
entity: "wishlist",
|
|
24
|
-
filters: {
|
|
25
|
-
id,
|
|
26
|
-
},
|
|
27
|
-
...req.queryConfig,
|
|
28
|
-
fields: ["*", ...(options?.wishlistFields || [])],
|
|
29
|
-
});
|
|
30
|
-
const wishlist = data?.[0];
|
|
31
|
-
if (!wishlist) {
|
|
32
|
-
throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_FOUND, `Wishlist with ID ${id} not found`);
|
|
33
|
-
}
|
|
34
|
-
if (wishlist?.customer_id && wishlist?.customer_id !== customer_id) {
|
|
35
|
-
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "You are not authorized to access this wishlist");
|
|
36
|
-
}
|
|
37
|
-
const { data: items, metadata: items_metadata } = await query.graph({
|
|
38
|
-
entity: "wishlist_item",
|
|
39
|
-
filters: { wishlist_id: wishlist.id },
|
|
40
|
-
fields: [...utils_2.defaultItemsFields, ...(options?.wishlistItemsFields || []), ...(items_fields || [])],
|
|
41
|
-
pagination: {
|
|
42
|
-
take: options?.includeWishlistItemsTake || 5,
|
|
43
|
-
skip: 0,
|
|
44
|
-
},
|
|
45
|
-
});
|
|
46
|
-
return res.status(200).json({ ...wishlist, items_count: items_metadata?.count, items });
|
|
47
|
-
}
|
|
48
|
-
catch (error) {
|
|
49
|
-
logger.error("Error fetching wishlists:", error);
|
|
50
|
-
return res.status(500).end();
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
async function PUT(req, res) {
|
|
54
|
-
const logger = req.scope.resolve("logger");
|
|
55
|
-
const input = req.body;
|
|
56
|
-
const { id } = req.params;
|
|
57
|
-
try {
|
|
58
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
59
|
-
const updated_wishlist = await wishlistService.updateWishlists({
|
|
60
|
-
id,
|
|
61
|
-
...input,
|
|
62
|
-
});
|
|
63
|
-
return res.status(200).json(updated_wishlist);
|
|
64
|
-
}
|
|
65
|
-
catch (error) {
|
|
66
|
-
logger.error("Update wishlists failed:", error);
|
|
67
|
-
return res.status(500).end();
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
async function DELETE(req, res) {
|
|
71
|
-
const logger = req.scope.resolve("logger");
|
|
72
|
-
const { id } = req.params;
|
|
73
|
-
try {
|
|
74
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
75
|
-
await wishlistService.deleteWishlists({ id });
|
|
76
|
-
return res.status(200).json({
|
|
77
|
-
id,
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
catch (error) {
|
|
81
|
-
logger.error("Wishlist deleting failed.", error);
|
|
82
|
-
return res.status(500).end();
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBVUEsa0JBb0RDO0FBRUQsa0JBdUJDO0FBT0Qsd0JBa0JDO0FBL0dELHFEQUF3RDtBQUl4RCwyREFBK0Q7QUFFL0QsbURBQTZEO0FBRTdELGlEQUFpRDtBQUMxQyxLQUFLLFVBQVUsR0FBRyxDQUFDLEdBQTJELEVBQUUsR0FBNkI7SUFDbEgsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFM0MsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDMUIsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUM7SUFDaEQsTUFBTSxFQUFFLFlBQVksRUFBRSxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUM7SUFFNUMsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQXdCLDBCQUFlLENBQUMsQ0FBQztJQUNsRixNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDO0lBRXpDLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoRCxNQUFNLElBQUksbUJBQVcsQ0FBQyxtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsaUNBQWlDLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFekMsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNqQyxNQUFNLEVBQUUs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
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.POST = void 0;
|
|
4
|
-
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
-
const wishlist_1 = require("../../../../../modules/wishlist");
|
|
6
|
-
const POST = async (req, res) => {
|
|
7
|
-
const logger = req.scope.resolve("logger");
|
|
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
|
-
}
|
|
15
|
-
try {
|
|
16
|
-
const share_token = await wishlistService.createShareToken({ wishlist_id: id });
|
|
17
|
-
return res.status(200).json({
|
|
18
|
-
share_token,
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
catch (error) {
|
|
22
|
-
logger.error("Error creating wishlist share token:", error);
|
|
23
|
-
return res.status(500).end();
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
exports.POST = POST;
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL3NoYXJlL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHFEQUF3RDtBQUV4RCw4REFBa0U7QUFFM0QsTUFBTSxJQUFJLEdBQUcsS0FBSyxFQUFFLEdBQStCLEVBQUUsR0FBNEMsRUFBRSxFQUFFO0lBQzFHLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTNDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQzFCLE1BQU0sV0FBVyxHQUFHLEdBQUcsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO0lBRWhELE1BQU0sZUFBZSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUF3QiwwQkFBZSxDQUFDLENBQUM7SUFDbEYsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQztJQUV6QyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEQsTUFBTSxJQUFJLG1CQUFXLENBQUMsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLGlDQUFpQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE1BQU0sV0FBVyxHQUFHLE1BQU0sZUFBZSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFaEYsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUMxQixXQUFXO1NBQ1osQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLENBQUMsS0FBSyxDQUFDLHNDQUFzQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTVELE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMvQixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBeEJXLFFBQUEsSUFBSSxRQXdCZiJ9
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.POST = POST;
|
|
4
|
-
const wishlist_1 = require("../../../../../modules/wishlist");
|
|
5
|
-
async function POST(req, res) {
|
|
6
|
-
const logger = req.scope.resolve("logger");
|
|
7
|
-
const customer_id = req.auth_context.actor_id;
|
|
8
|
-
const { id } = req.params;
|
|
9
|
-
try {
|
|
10
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
11
|
-
await wishlistService.updateWishlists({ id, customer_id });
|
|
12
|
-
return res.status(200).json({ id });
|
|
13
|
-
}
|
|
14
|
-
catch (error) {
|
|
15
|
-
logger.error("Transfer wishlists failed:", error);
|
|
16
|
-
return res.status(500).end();
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL3RyYW5zZmVyL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBU0Esb0JBaUJDO0FBeEJELDhEQUFrRTtBQU8zRCxLQUFLLFVBQVUsSUFBSSxDQUFDLEdBQStCLEVBQUUsR0FBMkM7SUFDckcsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFM0MsTUFBTSxXQUFXLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFDOUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFFMUIsSUFBSSxDQUFDO1FBQ0gsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQXdCLDBCQUFlLENBQUMsQ0FBQztRQUVsRixNQUFNLGVBQWUsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUUzRCxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFbEQsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9CLENBQUM7QUFDSCxDQUFDIn0=
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RetrieveWishlistQuerySchema = void 0;
|
|
4
|
-
const zod_1 = require("zod");
|
|
5
|
-
exports.RetrieveWishlistQuerySchema = zod_1.z.object({
|
|
6
|
-
items_fields: zod_1.z.array(zod_1.z.string()).optional(),
|
|
7
|
-
});
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvc3RvcmUvd2lzaGxpc3RzL1tpZF0vdmFsaWRhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBd0I7QUFFWCxRQUFBLDJCQUEyQixHQUFHLE9BQUMsQ0FBQyxNQUFNLENBQUM7SUFDbEQsWUFBWSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQzdDLENBQUMsQ0FBQyJ9
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.POST = void 0;
|
|
4
|
-
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
-
const wishlist_1 = require("../../../../modules/wishlist");
|
|
6
|
-
const utils_2 = require("../../../../utils/utils");
|
|
7
|
-
const POST = async (req, res) => {
|
|
8
|
-
const logger = req.scope.resolve("logger");
|
|
9
|
-
const { share_token } = req.validatedBody;
|
|
10
|
-
const customer_id = req?.auth_context?.actor_id;
|
|
11
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
12
|
-
const options = wishlistService._options;
|
|
13
|
-
if (!options.allowGuestWishlist && !customer_id) {
|
|
14
|
-
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
15
|
-
}
|
|
16
|
-
let wishlist_id;
|
|
17
|
-
try {
|
|
18
|
-
const decodedToken = await wishlistService.validateToken(share_token);
|
|
19
|
-
wishlist_id = decodedToken?.wishlist_id;
|
|
20
|
-
}
|
|
21
|
-
catch (e) {
|
|
22
|
-
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "Invalid share token");
|
|
23
|
-
}
|
|
24
|
-
if (!wishlist_id) {
|
|
25
|
-
throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_FOUND, "Wishlist not found for the provided share token");
|
|
26
|
-
}
|
|
27
|
-
try {
|
|
28
|
-
const created_wishlist = await wishlistService.importWishlist({ id: wishlist_id, customer_id });
|
|
29
|
-
const query = req.scope.resolve("query");
|
|
30
|
-
const { data: wishlist_items } = await query.graph({
|
|
31
|
-
entity: "wishlist_item",
|
|
32
|
-
filters: {
|
|
33
|
-
wishlist_id: created_wishlist.id,
|
|
34
|
-
},
|
|
35
|
-
fields: [...utils_2.defaultItemsFields, ...(options?.wishlistItemsFields || [])],
|
|
36
|
-
});
|
|
37
|
-
return res.status(200).json({ ...created_wishlist, items: wishlist_items });
|
|
38
|
-
}
|
|
39
|
-
catch (error) {
|
|
40
|
-
logger.error("Error importing wishlist:", error);
|
|
41
|
-
return res.status(500).end();
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
exports.POST = POST;
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9pbXBvcnQvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EscURBQXdEO0FBRXhELDJEQUErRDtBQUUvRCxtREFBNkQ7QUFFdEQsTUFBTSxJQUFJLEdBQUcsS0FBSyxFQUFFLEdBQXdELEVBQUUsR0FBNkIsRUFBRSxFQUFFO0lBQ3BILE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTNDLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDO0lBQzFDLE1BQU0sV0FBVyxHQUFHLEdBQUcsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO0lBRWhELE1BQU0sZUFBZSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUF3QiwwQkFBZSxDQUFDLENBQUM7SUFDbEYsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQztJQUV6QyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEQsTUFBTSxJQUFJLG1CQUFXLENBQUMsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLGlDQUFpQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELElBQUksV0FBK0IsQ0FBQztJQUVwQyxJQUFJLENBQUM7UUFDSCxNQUFNLFlBQVksR0FBRyxNQUFNLGVBQWUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFdEUsV0FBVyxHQUFHLFlBQVksRUFBRSxXQUFXLENBQUM7SUFDMUMsQ0FBQztJQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDWCxNQUFNLElBQUksbUJBQVcsQ0FBQyxtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2pCLE1BQU0sSUFBSSxtQkFBVyxDQUFDLG1CQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxpREFBaUQsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFRCxJQUFJLENBQUM7UUFDSCxNQUFNLGdCQUFnQixHQUFHLE1BQU0sZUFBZSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUVoRyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6QyxNQUFNLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNqRCxNQUFNLEVBQUUsZUFBZTtZQUN2QixPQUFPLEVBQUU7Z0JBQ1AsV0FBVyxFQUFFLGdCQUFnQixDQUFDLEVBQUU7YUFDakM7WUFDRCxNQUFNLEVBQUUsQ0FBQyxHQUFHLDBCQUFrQixFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLElBQUksRUFBRSxDQUFDLENBQUM7U0FDekUsQ0FBQyxDQUFDO1FBRUgsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLENBQUMsS0FBSyxDQUFDLDJCQUEyQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRWpELE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMvQixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBOUNXLFFBQUEsSUFBSSxRQThDZiJ9
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GET = GET;
|
|
4
|
-
exports.POST = POST;
|
|
5
|
-
const wishlist_1 = require("../../../modules/wishlist");
|
|
6
|
-
const utils_1 = require("../../../utils/utils");
|
|
7
|
-
const utils_2 = require("@medusajs/framework/utils");
|
|
8
|
-
async function GET(req, res) {
|
|
9
|
-
const logger = req.scope.resolve("logger");
|
|
10
|
-
const customer_id = req.auth_context.actor_id;
|
|
11
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
12
|
-
const options = wishlistService._options;
|
|
13
|
-
const { items_fields } = req.validatedQuery;
|
|
14
|
-
try {
|
|
15
|
-
const query = req.scope.resolve("query");
|
|
16
|
-
const { data, metadata } = await query.graph({
|
|
17
|
-
entity: "wishlist",
|
|
18
|
-
filters: { customer_id },
|
|
19
|
-
...req.queryConfig,
|
|
20
|
-
fields: ["*", ...(options?.wishlistFields || []), ...req.queryConfig.fields],
|
|
21
|
-
});
|
|
22
|
-
const wishlists = options.includeWishlistItems
|
|
23
|
-
? await Promise.all(data.map(async (wishlist) => {
|
|
24
|
-
const { data: items, metadata } = await query.graph({
|
|
25
|
-
entity: "wishlist_item",
|
|
26
|
-
filters: { wishlist_id: wishlist.id },
|
|
27
|
-
fields: [...utils_1.defaultItemsFields, ...(items_fields || [])],
|
|
28
|
-
pagination: {
|
|
29
|
-
take: options?.includeWishlistItemsTake || 5,
|
|
30
|
-
skip: 0,
|
|
31
|
-
},
|
|
32
|
-
});
|
|
33
|
-
return {
|
|
34
|
-
...wishlist,
|
|
35
|
-
items: items.length > 0 ? items : [],
|
|
36
|
-
items_count: metadata?.count,
|
|
37
|
-
};
|
|
38
|
-
}))
|
|
39
|
-
: data;
|
|
40
|
-
return res.status(200).json({
|
|
41
|
-
data: wishlists,
|
|
42
|
-
take: metadata?.take || 5,
|
|
43
|
-
skip: metadata?.skip || 0,
|
|
44
|
-
...(0, utils_1.getPagination)(metadata),
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
catch (error) {
|
|
48
|
-
logger.error("Error fetching wishlists:", error);
|
|
49
|
-
return res.status(500).end();
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
//-----Create wishlists-----//
|
|
53
|
-
async function POST(req, res) {
|
|
54
|
-
const logger = req.scope.resolve("logger");
|
|
55
|
-
const customer_id = req?.auth_context?.actor_id;
|
|
56
|
-
const { ...input } = req.body;
|
|
57
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
58
|
-
const options = wishlistService._options;
|
|
59
|
-
if (!options.allowGuestWishlist && !customer_id) {
|
|
60
|
-
throw new utils_2.MedusaError(utils_2.MedusaError.Types.UNAUTHORIZED, "Guest wishlists are now allowed");
|
|
61
|
-
}
|
|
62
|
-
try {
|
|
63
|
-
const wishlist = await wishlistService.createWishlists({
|
|
64
|
-
...input,
|
|
65
|
-
...(customer_id && { customer_id }),
|
|
66
|
-
});
|
|
67
|
-
return res.status(201).json({ ...wishlist, items_count: 0, items: [] });
|
|
68
|
-
}
|
|
69
|
-
catch (error) {
|
|
70
|
-
logger.error("Error creating wishlist:", error);
|
|
71
|
-
return res.status(500).end();
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVFBLGtCQXNEQztBQUlELG9CQXlCQztBQXZGRCx3REFBNEQ7QUFDNUQsZ0RBQXlFO0FBQ3pFLHFEQUFvRTtBQUU3RCxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUF3RCxFQUN4RCxHQUE4QztJQUU5QyxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUUzQyxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUM5QyxNQUFNLGVBQWUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBd0IsMEJBQWUsQ0FBQyxDQUFDO0lBQ2xGLE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUM7SUFDekMsTUFBTSxFQUFFLFlBQVksRUFBRSxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUM7SUFFNUMsSUFBSSxDQUFDO1FBQ0gsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFekMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDM0MsTUFBTSxFQUFFLFVBQVU7WUFDbEIsT0FBTyxFQUFFLEVBQUUsV0FBVyxFQUFFO1lBQ3hCLEdBQUcsR0FBRyxDQUFDLFdBQVc7WUFDbEIsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsY0FBYyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7U0FDN0UsQ0FBQyxDQUFDO1FBRUgsTUFBTSxTQUFTLEdBQWUsT0FBTyxD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
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GET = GET;
|
|
4
|
-
const wishlist_1 = require("../../../../modules/wishlist");
|
|
5
|
-
async function GET(req, res) {
|
|
6
|
-
const logger = req.scope.resolve("logger");
|
|
7
|
-
const { wishlist_id } = req.validatedQuery;
|
|
8
|
-
const customer_id = req?.auth_context?.actor_id;
|
|
9
|
-
if (!wishlist_id && !customer_id) {
|
|
10
|
-
return res.status(200).json({
|
|
11
|
-
total_items_count: 0,
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
const wishlistService = req.scope.resolve(wishlist_1.WISHLIST_MODULE);
|
|
15
|
-
try {
|
|
16
|
-
const count = await wishlistService.totalItemsCount({
|
|
17
|
-
customer_id,
|
|
18
|
-
wishlist_id,
|
|
19
|
-
});
|
|
20
|
-
return res.status(200).json({
|
|
21
|
-
total_items_count: count,
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
catch (error) {
|
|
25
|
-
logger.error("Error fetching wishlists:", error);
|
|
26
|
-
return res.status(500).end();
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy90b3RhbC1pdGVtcy1jb3VudC9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVVBLGtCQWdDQztBQXhDRCwyREFBK0Q7QUFReEQsS0FBSyxVQUFVLEdBQUcsQ0FDdkIsR0FBMEQsRUFDMUQsR0FBMEM7SUFFMUMsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFM0MsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUM7SUFFM0MsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUM7SUFFaEQsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2pDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDMUIsaUJBQWlCLEVBQUUsQ0FBQztTQUNyQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQXdCLDBCQUFlLENBQUMsQ0FBQztJQUVsRixJQUFJLENBQUM7UUFDSCxNQUFNLEtBQUssR0FBRyxNQUFNLGVBQWUsQ0FBQyxlQUFlLENBQUM7WUFDbEQsV0FBVztZQUNYLFdBQVc7U0FDWixDQUFDLENBQUM7UUFFSCxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzFCLGlCQUFpQixFQUFFLEtBQUs7U0FDekIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLENBQUMsS0FBSyxDQUFDLDJCQUEyQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRWpELE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMvQixDQUFDO0FBQ0gsQ0FBQyJ9
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TotalItemsCountInputSchema = void 0;
|
|
4
|
-
const zod_1 = require("zod");
|
|
5
|
-
exports.TotalItemsCountInputSchema = zod_1.z.object({
|
|
6
|
-
wishlist_id: zod_1.z.string().optional(),
|
|
7
|
-
});
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvc3RvcmUvd2lzaGxpc3RzL3RvdGFsLWl0ZW1zLWNvdW50L3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQXdCO0FBRVgsUUFBQSwwQkFBMEIsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2pELFdBQVcsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0NBQ25DLENBQUMsQ0FBQyJ9
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Migration20260415155648 = void 0;
|
|
4
|
-
const migrations_1 = require("@mikro-orm/migrations");
|
|
5
|
-
class Migration20260415155648 extends migrations_1.Migration {
|
|
6
|
-
async up() {
|
|
7
|
-
this.addSql(`alter table if exists "wishlist_item" add column if not exists "product_id" text not null;`);
|
|
8
|
-
}
|
|
9
|
-
async down() {
|
|
10
|
-
this.addSql(`alter table if exists "wishlist_item" drop column if exists "product_id";`);
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
exports.Migration20260415155648 = Migration20260415155648;
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNjA0MTUxNTU2NDguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy93aXNobGlzdC9taWdyYXRpb25zL01pZ3JhdGlvbjIwMjYwNDE1MTU1NjQ4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFrRDtBQUVsRCxNQUFhLHVCQUF3QixTQUFRLHNCQUFTO0lBQzNDLEtBQUssQ0FBQyxFQUFFO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FDVCw0RkFBNEYsQ0FDN0YsQ0FBQztJQUNKLENBQUM7SUFFUSxLQUFLLENBQUMsSUFBSTtRQUNqQixJQUFJLENBQUMsTUFBTSxDQUNULDJFQUEyRSxDQUM1RSxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBWkQsMERBWUMifQ==
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Wishlist = void 0;
|
|
4
|
-
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
-
const wishlist_item_1 = require("./wishlist-item");
|
|
6
|
-
exports.Wishlist = utils_1.model
|
|
7
|
-
.define("wishlist", {
|
|
8
|
-
id: utils_1.model.id({ prefix: "wl" }).primaryKey(),
|
|
9
|
-
name: utils_1.model.text().nullable(),
|
|
10
|
-
customer_id: utils_1.model.text().nullable(),
|
|
11
|
-
sales_channel_id: utils_1.model.text(),
|
|
12
|
-
items: utils_1.model.hasMany(() => wishlist_item_1.WishlistItem),
|
|
13
|
-
})
|
|
14
|
-
.indexes([
|
|
15
|
-
{
|
|
16
|
-
on: ["customer_id", "sales_channel_id"],
|
|
17
|
-
where: { customer_id: { $ne: null } },
|
|
18
|
-
},
|
|
19
|
-
]);
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lzaGxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy93aXNobGlzdC9tb2RlbHMvd2lzaGxpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQWtEO0FBQ2xELG1EQUErQztBQUdsQyxRQUFBLFFBQVEsR0FBRyxhQUFLO0tBQzFCLE1BQU0sQ0FBQyxVQUFVLEVBQUU7SUFDbEIsRUFBRSxFQUFFLGFBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUU7SUFDM0MsSUFBSSxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDN0IsV0FBVyxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsZ0JBQWdCLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRTtJQUM5QixLQUFLLEVBQUUsYUFBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyw0QkFBWSxDQUFDO0NBQ3pDLENBQUM7S0FDRCxPQUFPLENBQUM7SUFDUDtRQUNFLEVBQUUsRUFBRSxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQztRQUN2QyxLQUFLLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7S0FDdEM7Q0FDRixDQUFDLENBQUMifQ==
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.defaultItemsFields = exports.getPagination = void 0;
|
|
4
|
-
const getPagination = (opts) => {
|
|
5
|
-
const { count = 0, take = 10, skip = 0 } = opts || {};
|
|
6
|
-
const totalPages = Math.max(Math.ceil(count / take), 1);
|
|
7
|
-
const currentPage = skip / take + 1;
|
|
8
|
-
const nextPage = Math.min(currentPage + 1, totalPages);
|
|
9
|
-
const prevPage = Math.max(currentPage - 1, 1);
|
|
10
|
-
return { count, nextPage, currentPage, prevPage, totalPages };
|
|
11
|
-
};
|
|
12
|
-
exports.getPagination = getPagination;
|
|
13
|
-
exports.defaultItemsFields = [
|
|
14
|
-
"id",
|
|
15
|
-
"product_id",
|
|
16
|
-
"wishlist_id",
|
|
17
|
-
"created_at",
|
|
18
|
-
"updated_at",
|
|
19
|
-
"deleted_at",
|
|
20
|
-
"product_variant.*",
|
|
21
|
-
"product_variant.prices.*",
|
|
22
|
-
"product_variant.calculated_price",
|
|
23
|
-
"product_variant.product.thumbnail",
|
|
24
|
-
];
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRU8sTUFBTSxhQUFhLEdBQUcsQ0FBQyxJQUEwQyxFQUFFLEVBQUU7SUFDMUUsTUFBTSxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsSUFBSSxHQUFHLEVBQUUsRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUV0RCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3hELE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxHQUFHLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFOUMsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQztBQUNoRSxDQUFDLENBQUM7QUFUVyxRQUFBLGFBQWEsaUJBU3hCO0FBRVcsUUFBQSxrQkFBa0IsR0FBRztJQUNoQyxJQUFJO0lBQ0osWUFBWTtJQUNaLGFBQWE7SUFDYixZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7SUFDWixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLGtDQUFrQztJQUNsQyxtQ0FBbUM7Q0FDcEMsQ0FBQyJ9
|