@alphabite/medusa-wishlist 0.5.9 → 0.5.11
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/admin/products/[id]/wishlist/route.js +25 -0
- package/.medusa/server/{api → src/api}/middlewares.js +1 -1
- package/.medusa/server/src/api/store/wishlists/[id]/add-item/route.js +63 -0
- package/.medusa/server/{api → src/api}/store/wishlists/[id]/add-item/validators.js +1 -1
- package/.medusa/server/src/api/store/wishlists/[id]/items/[item_id]/route.js +38 -0
- package/.medusa/server/src/api/store/wishlists/[id]/items/route.js +49 -0
- package/.medusa/server/src/api/store/wishlists/[id]/route.js +151 -0
- package/.medusa/server/src/api/store/wishlists/[id]/share/route.js +27 -0
- package/.medusa/server/src/api/store/wishlists/[id]/transfer/route.js +19 -0
- package/.medusa/server/{api → src/api}/store/wishlists/[id]/validators.js +1 -1
- package/.medusa/server/src/api/store/wishlists/import/route.js +45 -0
- package/.medusa/server/{api → src/api}/store/wishlists/import/validators.js +1 -1
- package/.medusa/server/src/api/store/wishlists/route.js +74 -0
- package/.medusa/server/src/api/store/wishlists/total-items-count/route.js +29 -0
- package/.medusa/server/{api → src/api}/store/wishlists/total-items-count/validators.js +1 -1
- package/.medusa/server/{api → src/api}/store/wishlists/types.js +1 -1
- package/.medusa/server/{api → src/api}/store/wishlists/validators.js +1 -1
- package/.medusa/server/{index.js → src/index.js} +1 -1
- package/.medusa/server/{links → src/links}/wishlist-customer.js +1 -1
- package/.medusa/server/{links → src/links}/wishlist-product-variant.js +1 -1
- package/.medusa/server/{links → src/links}/wishlist-sales-channel.js +1 -1
- package/.medusa/server/{modules → src/modules}/wishlist/index.js +1 -1
- package/.medusa/server/{modules → src/modules}/wishlist/migrations/Migration20250616124134.js +1 -1
- package/.medusa/server/{modules → src/modules}/wishlist/migrations/Migration20250616131527.js +1 -1
- package/.medusa/server/{modules → src/modules}/wishlist/migrations/Migration20260415155648.js +1 -1
- package/.medusa/server/{modules → src/modules}/wishlist/models/wishlist-item.js +1 -1
- package/.medusa/server/src/modules/wishlist/models/wishlist.js +20 -0
- package/.medusa/server/{modules → src/modules}/wishlist/service.js +9 -9
- package/.medusa/server/{types → src/types}/index.js +1 -1
- package/.medusa/server/{types → src/types}/types.js +1 -1
- package/.medusa/server/{utils → src/utils}/default-response.js +1 -1
- package/.medusa/server/src/utils/utils.js +23 -0
- package/.medusa/types/api/store/wishlists/[id]/add-item/validators.d.ts +1 -5
- package/.medusa/types/api/store/wishlists/[id]/validators.d.ts +4 -12
- package/.medusa/types/api/store/wishlists/import/validators.d.ts +1 -5
- package/.medusa/types/api/store/wishlists/total-items-count/validators.d.ts +1 -5
- package/.medusa/types/api/store/wishlists/validators.d.ts +5 -20
- package/.medusa/types/modules/wishlist/service.d.ts +4 -18
- package/README.md +39 -32
- package/package.json +109 -109
- package/.medusa/server/api/admin/products/[id]/wishlist/route.js +0 -25
- package/.medusa/server/api/store/wishlists/[id]/add-item/route.js +0 -63
- package/.medusa/server/api/store/wishlists/[id]/items/[item_id]/route.js +0 -38
- package/.medusa/server/api/store/wishlists/[id]/items/route.js +0 -49
- package/.medusa/server/api/store/wishlists/[id]/route.js +0 -139
- package/.medusa/server/api/store/wishlists/[id]/share/route.js +0 -27
- package/.medusa/server/api/store/wishlists/[id]/transfer/route.js +0 -19
- package/.medusa/server/api/store/wishlists/import/route.js +0 -45
- package/.medusa/server/api/store/wishlists/route.js +0 -74
- package/.medusa/server/api/store/wishlists/total-items-count/route.js +0 -29
- package/.medusa/server/modules/wishlist/models/wishlist.js +0 -20
- package/.medusa/server/utils/utils.js +0 -23
|
@@ -13,4 +13,4 @@ exports.UpdateWishlistInputSchema = exports.CreateWishlistInputSchema.pick({
|
|
|
13
13
|
exports.ListWishlistsQuerySchema = zod_1.z.object({
|
|
14
14
|
items_fields: zod_1.z.array(zod_1.z.string()).optional(),
|
|
15
15
|
});
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvc3RvcmUvd2lzaGxpc3RzL3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaURBQTRDO0FBRS9CLFFBQUEseUJBQXlCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNoRCxJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUMzQixnQkFBZ0IsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFO0NBQzdCLENBQUMsQ0FBQztBQUlILGdEQUFnRDtBQUNuQyxRQUFBLHlCQUF5QixHQUFHLGlDQUF5QixDQUFDLElBQUksQ0FBQztJQUN0RSxJQUFJLEVBQUUsSUFBSTtDQUNYLENBQUMsQ0FBQztBQUlVLFFBQUEsd0JBQXdCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMvQyxZQUFZLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUU7Q0FDN0MsQ0FBQyxDQUFDIn0=
|
|
@@ -15,4 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./types"), exports);
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDBDQUF3QiJ9
|
|
@@ -12,4 +12,4 @@ exports.default = (0, utils_1.defineLink)({
|
|
|
12
12
|
}, customer_1.default.linkable.customer.id, {
|
|
13
13
|
readOnly: true,
|
|
14
14
|
});
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lzaGxpc3QtY3VzdG9tZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGlua3Mvd2lzaGxpc3QtY3VzdG9tZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxxREFBdUQ7QUFDdkQsbUVBQWlEO0FBQ2pELHlFQUF1RDtBQUV2RCxrQkFBZSxJQUFBLGtCQUFVLEVBQ3ZCO0lBQ0UsR0FBRyxrQkFBYyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRTtJQUN0QyxLQUFLLEVBQUUsYUFBYTtDQUNyQixFQUNELGtCQUFjLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQ25DO0lBQ0UsUUFBUSxFQUFFLElBQUk7Q0FDZixDQUNGLENBQUMifQ==
|
|
@@ -12,4 +12,4 @@ exports.default = (0, utils_1.defineLink)({
|
|
|
12
12
|
}, product_1.default.linkable.productVariant, {
|
|
13
13
|
readOnly: true,
|
|
14
14
|
});
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lzaGxpc3QtcHJvZHVjdC12YXJpYW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpbmtzL3dpc2hsaXN0LXByb2R1Y3QtdmFyaWFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHFEQUF1RDtBQUN2RCxtRUFBaUQ7QUFDakQsdUVBQXFEO0FBRXJELGtCQUFlLElBQUEsa0JBQVUsRUFDdkI7SUFDRSxHQUFHLGtCQUFjLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxFQUFFO0lBQzFDLEtBQUssRUFBRSxvQkFBb0I7Q0FDNUIsRUFDRCxpQkFBYSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQ3JDO0lBQ0UsUUFBUSxFQUFFLElBQUk7Q0FDZixDQUNGLENBQUMifQ==
|
|
@@ -12,4 +12,4 @@ exports.default = (0, utils_1.defineLink)({
|
|
|
12
12
|
}, sales_channel_1.default.linkable.salesChannel, {
|
|
13
13
|
readOnly: true,
|
|
14
14
|
});
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lzaGxpc3Qtc2FsZXMtY2hhbm5lbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saW5rcy93aXNobGlzdC1zYWxlcy1jaGFubmVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscURBQXVEO0FBQ3ZELG1FQUFpRDtBQUNqRCxtRkFBZ0U7QUFFaEUsa0JBQWUsSUFBQSxrQkFBVSxFQUN2QjtJQUNFLEdBQUcsa0JBQWMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUU7SUFDdEMsS0FBSyxFQUFFLGtCQUFrQjtDQUMxQixFQUNELHVCQUFrQixDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQ3hDO0lBQ0UsUUFBUSxFQUFFLElBQUk7Q0FDZixDQUNGLENBQUMifQ==
|
|
@@ -10,4 +10,4 @@ exports.WISHLIST_MODULE = "wishlist";
|
|
|
10
10
|
exports.default = (0, utils_1.Module)(exports.WISHLIST_MODULE, {
|
|
11
11
|
service: service_1.default,
|
|
12
12
|
});
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy93aXNobGlzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSx3REFBOEM7QUFDOUMscURBQW1EO0FBRXRDLFFBQUEsZUFBZSxHQUFHLFVBQVUsQ0FBQztBQUUxQyxrQkFBZSxJQUFBLGNBQU0sRUFBQyx1QkFBZSxFQUFFO0lBQ3JDLE9BQU8sRUFBRSxpQkFBcUI7Q0FDL0IsQ0FBQyxDQUFDIn0=
|
package/.medusa/server/{modules → src/modules}/wishlist/migrations/Migration20250616124134.js
RENAMED
|
@@ -22,4 +22,4 @@ class Migration20250616124134 extends migrations_1.Migration {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
exports.Migration20250616124134 = Migration20250616124134;
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTA2MTYxMjQxMzQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy93aXNobGlzdC9taWdyYXRpb25zL01pZ3JhdGlvbjIwMjUwNjE2MTI0MTM0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFrRDtBQUVsRCxNQUFhLHVCQUF3QixTQUFRLHNCQUFTO0lBRTNDLEtBQUssQ0FBQyxFQUFFO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyx3SEFBd0gsQ0FBQyxDQUFDO1FBQ3RJLElBQUksQ0FBQyxNQUFNLENBQUMsNEdBQTRHLENBQUMsQ0FBQztRQUMxSCxJQUFJLENBQUMsTUFBTSxDQUFDLDBUQUEwVCxDQUFDLENBQUM7UUFDeFUsSUFBSSxDQUFDLE1BQU0sQ0FBQywyR0FBMkcsQ0FBQyxDQUFDO1FBQ3pILElBQUksQ0FBQyxNQUFNLENBQUMsMExBQTBMLENBQUMsQ0FBQztRQUV4TSxJQUFJLENBQUMsTUFBTSxDQUFDLHdUQUF3VCxDQUFDLENBQUM7UUFDdFUsSUFBSSxDQUFDLE1BQU0sQ0FBQyx1SEFBdUgsQ0FBQyxDQUFDO1FBQ3JJLElBQUksQ0FBQyxNQUFNLENBQUMscUhBQXFILENBQUMsQ0FBQztRQUNuSSxJQUFJLENBQUMsTUFBTSxDQUFDLDRLQUE0SyxDQUFDLENBQUM7UUFFMUwsSUFBSSxDQUFDLE1BQU0sQ0FBQyxzS0FBc0ssQ0FBQyxDQUFDO0lBQ3RMLENBQUM7SUFFUSxLQUFLLENBQUMsSUFBSTtRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLHNHQUFzRyxDQUFDLENBQUM7UUFFcEgsSUFBSSxDQUFDLE1BQU0sQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxNQUFNLENBQUMsK0NBQStDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0NBRUY7QUF6QkQsMERBeUJDIn0=
|
package/.medusa/server/{modules → src/modules}/wishlist/migrations/Migration20250616131527.js
RENAMED
|
@@ -13,4 +13,4 @@ class Migration20250616131527 extends migrations_1.Migration {
|
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
exports.Migration20250616131527 = Migration20250616131527;
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTA2MTYxMzE1MjcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy93aXNobGlzdC9taWdyYXRpb25zL01pZ3JhdGlvbjIwMjUwNjE2MTMxNTI3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFrRDtBQUVsRCxNQUFhLHVCQUF3QixTQUFRLHNCQUFTO0lBRTNDLEtBQUssQ0FBQyxFQUFFO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQywwRUFBMEUsQ0FBQyxDQUFDO1FBRXhGLElBQUksQ0FBQyxNQUFNLENBQUMsNEtBQTRLLENBQUMsQ0FBQztJQUM1TCxDQUFDO0lBRVEsS0FBSyxDQUFDLElBQUk7UUFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxtRUFBbUUsQ0FBQyxDQUFDO1FBRWpGLElBQUksQ0FBQyxNQUFNLENBQUMsMExBQTBMLENBQUMsQ0FBQztJQUMxTSxDQUFDO0NBRUY7QUFkRCwwREFjQyJ9
|
package/.medusa/server/{modules → src/modules}/wishlist/migrations/Migration20260415155648.js
RENAMED
|
@@ -35,4 +35,4 @@ class Migration20260415155648 extends migrations_1.Migration {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
exports.Migration20260415155648 = Migration20260415155648;
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNjA0MTUxNTU2NDguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy93aXNobGlzdC9taWdyYXRpb25zL01pZ3JhdGlvbjIwMjYwNDE1MTU1NjQ4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFrRDtBQUVsRCxNQUFhLHVCQUF3QixTQUFRLHNCQUFTO0lBQzNDLEtBQUssQ0FBQyxFQUFFO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FDVCxtRkFBbUYsQ0FDcEYsQ0FBQztRQUVGLHdFQUF3RTtRQUN4RSxrRUFBa0U7UUFDbEUsMkVBQTJFO1FBQzNFLDRFQUE0RTtRQUM1RSwwRUFBMEU7UUFDMUUscUVBQXFFO1FBQ3JFLHFFQUFxRTtRQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7OztLQWNYLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQ1QsMEZBQTBGLENBQzNGLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTSxDQUNULCtFQUErRSxDQUNoRixDQUFDO0lBQ0osQ0FBQztJQUVRLEtBQUssQ0FBQyxJQUFJO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQ1QsMkVBQTJFLENBQzVFLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUEzQ0QsMERBMkNDIn0=
|
|
@@ -18,4 +18,4 @@ exports.WishlistItem = utils_1.model
|
|
|
18
18
|
unique: true,
|
|
19
19
|
},
|
|
20
20
|
]);
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lzaGxpc3QtaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3dpc2hsaXN0L21vZGVscy93aXNobGlzdC1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFEQUFrRDtBQUVsRCx5Q0FBc0M7QUFFekIsUUFBQSxZQUFZLEdBQUcsYUFBSztLQUM5QixNQUFNLENBQUMsZUFBZSxFQUFFO0lBQ3ZCLEVBQUUsRUFBRSxhQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFO0lBQzVDLGtCQUFrQixFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUU7SUFDaEMsVUFBVSxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUU7SUFDeEIsUUFBUSxFQUFFLGFBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQVEsRUFBRTtRQUN4QyxRQUFRLEVBQUUsT0FBTztLQUNsQixDQUFDO0NBQ0gsQ0FBQztLQUNELE9BQU8sQ0FBQztJQUNQO1FBQ0UsRUFBRSxFQUFFLENBQUMsb0JBQW9CLEVBQUUsYUFBYSxDQUFDO1FBQ3pDLE1BQU0sRUFBRSxJQUFJO0tBQ2I7Q0FDRixDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
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==
|
|
@@ -20,14 +20,14 @@ const wishlist_1 = require("./models/wishlist");
|
|
|
20
20
|
const wishlist_item_1 = require("./models/wishlist-item");
|
|
21
21
|
const utils_2 = require("@medusajs/framework/utils");
|
|
22
22
|
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
23
|
-
const zod_1 =
|
|
24
|
-
const optionsSchema = zod_1.
|
|
25
|
-
wishlistFields: zod_1.
|
|
26
|
-
wishlistItemsFields: zod_1.
|
|
27
|
-
includeWishlistItems: zod_1.
|
|
28
|
-
includeWishlistItemsTake: zod_1.
|
|
29
|
-
allowGuestWishlist: zod_1.
|
|
30
|
-
shareTokenSecret: zod_1.
|
|
23
|
+
const zod_1 = require("@medusajs/framework/zod");
|
|
24
|
+
const optionsSchema = zod_1.z.object({
|
|
25
|
+
wishlistFields: zod_1.z.array(zod_1.z.string()).optional(),
|
|
26
|
+
wishlistItemsFields: zod_1.z.array(zod_1.z.string()).optional(),
|
|
27
|
+
includeWishlistItems: zod_1.z.boolean().default(false),
|
|
28
|
+
includeWishlistItemsTake: zod_1.z.number().default(5),
|
|
29
|
+
allowGuestWishlist: zod_1.z.boolean().default(false),
|
|
30
|
+
shareTokenSecret: zod_1.z.string().default("default_secret"),
|
|
31
31
|
});
|
|
32
32
|
class WishlistModuleService extends (0, utils_1.MedusaService)({
|
|
33
33
|
Wishlist: wishlist_1.Wishlist,
|
|
@@ -106,4 +106,4 @@ __decorate([
|
|
|
106
106
|
__metadata("design:paramtypes", [Object, Object]),
|
|
107
107
|
__metadata("design:returntype", Promise)
|
|
108
108
|
], WishlistModuleService.prototype, "totalItemsCount", null);
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3dpc2hsaXN0L3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFJbUM7QUFDbkMsZ0RBQTZDO0FBQzdDLDBEQUFzRDtBQUN0RCxxREFBMEQ7QUFHMUQsZ0VBQStCO0FBQy9CLGlEQUE0QztBQTRDNUMsTUFBTSxhQUFhLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUM3QixjQUFjLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDOUMsbUJBQW1CLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDbkQsb0JBQW9CLEVBQUUsT0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDaEQsd0JBQXdCLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDL0Msa0JBQWtCLEVBQUUsT0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDOUMsZ0JBQWdCLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQztDQUN2RCxDQUFDLENBQUM7QUFJSCxNQUFxQixxQkFBc0IsU0FBUSxJQUFBLHFCQUFhLEVBQUM7SUFDL0QsUUFBUSxFQUFSLG1CQUFRO0lBQ1IsWUFBWSxFQUFaLDRCQUFZO0NBQ2IsQ0FBQztJQUdBLE1BQU0sQ0FBQyxlQUFlLENBQ3BCLFFBQTRDO1FBRTVDLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5Qix1REFBdUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FDOUUsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWSxFQUFFLEVBQUUsT0FBMkM7UUFDekQsS0FBSyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFHSyxBQUFOLEtBQUssQ0FBQywwQkFBMEIsQ0FDOUIsU0FBaUIsRUFDQSxVQUFrQyxFQUFFO1FBRXJELE9BQU8sQ0FDTCxDQUNFLE1BQU0sT0FBTyxDQUFDLE9BQU87WUFDbkIsRUFBRSxrQkFBa0IsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDO2FBQzFDLE1BQU0sQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsSUFBSSxDQUFDO2FBQ2hDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3ZDLE9BQU8sRUFBRSxDQUNiLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FDZixDQUFDO0lBQ0osQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLGVBQWUsQ0FDbkIsRUFDRSxXQUFXLEVBQ1gsV0FBVyxHQUNvQyxFQUNoQyxVQUFrQyxFQUFFO1FBRXJELE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyw0QkFBWSxFQUFFO1lBQ3RFLFFBQVEsRUFBRTtnQkFDUixHQUFHLENBQUMsV0FBVyxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUM7Z0JBQ25DLEdBQUcsQ0FBQyxXQUFXO29CQUNiLENBQUMsV0FBVyxJQUFJLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUM7YUFDMUQ7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLE1BQU0sQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEVBQ3JCLFdBQVcsR0FHWjtRQUNDLE1BQU0sVUFBVSxHQUFHLHNCQUFHLENBQUMsSUFBSSxDQUN6QixFQUFFLFdBQVcsRUFBRSxFQUNmLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQzlCLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUNwQixDQUFDO1FBRUYsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFhLENBQ2pCLFVBQWtCO1FBRWxCLE1BQU0sT0FBTyxHQUFHLHNCQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFdkUsT0FBTyxPQUFrQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYyxDQUFDLEVBQ25CLEVBQUUsRUFDRixXQUFXLEdBSVo7UUFDQyxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFM0UsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2QsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFDM0Isb0JBQW9CLEVBQUUsWUFBWSxDQUNuQyxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQztZQUM3QyxHQUFHLENBQUMsV0FBVyxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUM7WUFDbkMsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLGdCQUFnQjtZQUMzQyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUk7U0FDcEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLDBDQUEwQyxDQUMzQyxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDZixRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDaEMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7Z0JBQzlCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0I7Z0JBQzNDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtnQkFDM0IsV0FBVyxFQUFFLFdBQVcsQ0FBQyxFQUFFO2FBQzVCLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUNILENBQUM7UUFFRixPQUFPLEVBQUUsR0FBRyxXQUFXLEVBQUUsV0FBVyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUMzRSxDQUFDO0NBQ0Y7QUF6SEQsd0NBeUhDO0FBakdPO0lBREwsSUFBQSxxQkFBYSxHQUFFO0lBR2IsV0FBQSxJQUFBLHFCQUFhLEdBQUUsQ0FBQTs7Ozt1RUFXakI7QUFHSztJQURMLElBQUEscUJBQWEsR0FBRTtJQU1iLFdBQUEsSUFBQSxxQkFBYSxHQUFFLENBQUE7Ozs7NERBV2pCIn0=
|
|
@@ -15,4 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./types"), exports);
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDBDQUF3QiJ9
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHlwZXMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -11,4 +11,4 @@ exports.defaultResponse = {
|
|
|
11
11
|
nextPage: 1,
|
|
12
12
|
prevPage: 1,
|
|
13
13
|
};
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yZXNwb25zZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91dGlscy9kZWZhdWx0LXJlc3BvbnNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVhLFFBQUEsZUFBZSxHQUF5QjtJQUNuRCxJQUFJLEVBQUUsRUFBRTtJQUNSLEtBQUssRUFBRSxDQUFDO0lBQ1IsSUFBSSxFQUFFLENBQUM7SUFDUCxJQUFJLEVBQUUsQ0FBQztJQUNQLFVBQVUsRUFBRSxDQUFDO0lBQ2IsV0FBVyxFQUFFLENBQUM7SUFDZCxRQUFRLEVBQUUsQ0FBQztJQUNYLFFBQVEsRUFBRSxDQUFDO0NBQ1osQ0FBQyJ9
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.defaultItemsFields = exports.defaultFields = 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.defaultFields = ["id", "name", "customer_id", "sales_channel_id"];
|
|
14
|
+
exports.defaultItemsFields = [
|
|
15
|
+
"id",
|
|
16
|
+
"wishlist_id",
|
|
17
|
+
"product_variant.id",
|
|
18
|
+
"product_variant.title",
|
|
19
|
+
"product_variant.product.id",
|
|
20
|
+
"product_variant.product.handle",
|
|
21
|
+
"product_variant.product.thumbnail",
|
|
22
|
+
];
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRU8sTUFBTSxhQUFhLEdBQUcsQ0FBQyxJQUEwQyxFQUFFLEVBQUU7SUFDMUUsTUFBTSxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsSUFBSSxHQUFHLEVBQUUsRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUV0RCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3hELE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxHQUFHLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFOUMsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQztBQUNoRSxDQUFDLENBQUM7QUFUVyxRQUFBLGFBQWEsaUJBU3hCO0FBRVcsUUFBQSxhQUFhLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0FBRWxFLFFBQUEsa0JBQWtCLEdBQUc7SUFDaEMsSUFBSTtJQUNKLGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsdUJBQXVCO0lBQ3ZCLDRCQUE0QjtJQUM1QixnQ0FBZ0M7SUFDaEMsbUNBQW1DO0NBQ3BDLENBQUMifQ==
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import { z } from "@medusajs/framework/zod";
|
|
2
2
|
export declare const AddItemToWishlistInputSchema: z.ZodObject<{
|
|
3
3
|
product_variant_id: z.ZodString;
|
|
4
|
-
},
|
|
5
|
-
product_variant_id: string;
|
|
6
|
-
}, {
|
|
7
|
-
product_variant_id: string;
|
|
8
|
-
}>;
|
|
4
|
+
}, z.core.$strip>;
|
|
9
5
|
export type AddItemToWishlistInput = z.infer<typeof AddItemToWishlistInputSchema>;
|
|
@@ -1,15 +1,7 @@
|
|
|
1
1
|
import { z } from "@medusajs/framework/zod";
|
|
2
2
|
export declare const RetrieveWishlistQuerySchema: z.ZodObject<{
|
|
3
|
-
items_fields: z.ZodOptional<z.ZodArray<z.ZodString
|
|
4
|
-
include_inventory_count: z.ZodOptional<z.
|
|
5
|
-
include_calculated_price: z.ZodOptional<z.
|
|
6
|
-
},
|
|
7
|
-
items_fields?: string[] | undefined;
|
|
8
|
-
include_inventory_count?: boolean | undefined;
|
|
9
|
-
include_calculated_price?: boolean | undefined;
|
|
10
|
-
}, {
|
|
11
|
-
items_fields?: string[] | undefined;
|
|
12
|
-
include_inventory_count?: boolean | undefined;
|
|
13
|
-
include_calculated_price?: boolean | undefined;
|
|
14
|
-
}>;
|
|
3
|
+
items_fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
4
|
+
include_inventory_count: z.ZodOptional<z.ZodCoercedBoolean<unknown>>;
|
|
5
|
+
include_calculated_price: z.ZodOptional<z.ZodCoercedBoolean<unknown>>;
|
|
6
|
+
}, z.core.$strip>;
|
|
15
7
|
export type RetrieveWishlistQuery = z.infer<typeof RetrieveWishlistQuerySchema>;
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import { z } from "@medusajs/framework/zod";
|
|
2
2
|
export declare const ImportWishlistInputSchema: z.ZodObject<{
|
|
3
3
|
share_token: z.ZodString;
|
|
4
|
-
},
|
|
5
|
-
share_token: string;
|
|
6
|
-
}, {
|
|
7
|
-
share_token: string;
|
|
8
|
-
}>;
|
|
4
|
+
}, z.core.$strip>;
|
|
9
5
|
export type ImportWishlistInput = z.infer<typeof ImportWishlistInputSchema>;
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import { z } from "@medusajs/framework/zod";
|
|
2
2
|
export declare const TotalItemsCountInputSchema: z.ZodObject<{
|
|
3
3
|
wishlist_id: z.ZodOptional<z.ZodString>;
|
|
4
|
-
},
|
|
5
|
-
wishlist_id?: string | undefined;
|
|
6
|
-
}, {
|
|
7
|
-
wishlist_id?: string | undefined;
|
|
8
|
-
}>;
|
|
4
|
+
}, z.core.$strip>;
|
|
9
5
|
export type TotalItemsCountInput = z.infer<typeof TotalItemsCountInputSchema>;
|
|
@@ -2,28 +2,13 @@ import { z } from "@medusajs/framework/zod";
|
|
|
2
2
|
export declare const CreateWishlistInputSchema: z.ZodObject<{
|
|
3
3
|
name: z.ZodOptional<z.ZodString>;
|
|
4
4
|
sales_channel_id: z.ZodString;
|
|
5
|
-
},
|
|
6
|
-
sales_channel_id: string;
|
|
7
|
-
name?: string | undefined;
|
|
8
|
-
}, {
|
|
9
|
-
sales_channel_id: string;
|
|
10
|
-
name?: string | undefined;
|
|
11
|
-
}>;
|
|
5
|
+
}, z.core.$strip>;
|
|
12
6
|
export type CreateWishlistInput = z.infer<typeof CreateWishlistInputSchema>;
|
|
13
|
-
export declare const UpdateWishlistInputSchema: z.ZodObject<
|
|
7
|
+
export declare const UpdateWishlistInputSchema: z.ZodObject<{
|
|
14
8
|
name: z.ZodOptional<z.ZodString>;
|
|
15
|
-
|
|
16
|
-
}, "name">, "strip", z.ZodTypeAny, {
|
|
17
|
-
name?: string | undefined;
|
|
18
|
-
}, {
|
|
19
|
-
name?: string | undefined;
|
|
20
|
-
}>;
|
|
9
|
+
}, z.core.$strip>;
|
|
21
10
|
export type UpdateWishlistInput = z.infer<typeof UpdateWishlistInputSchema>;
|
|
22
11
|
export declare const ListWishlistsQuerySchema: z.ZodObject<{
|
|
23
|
-
items_fields: z.ZodOptional<z.ZodArray<z.ZodString
|
|
24
|
-
},
|
|
25
|
-
items_fields?: string[] | undefined;
|
|
26
|
-
}, {
|
|
27
|
-
items_fields?: string[] | undefined;
|
|
28
|
-
}>;
|
|
12
|
+
items_fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
13
|
+
}, z.core.$strip>;
|
|
29
14
|
export type ListWishlistsQuery = z.infer<typeof ListWishlistsQuerySchema>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Context } from "@medusajs/framework/types";
|
|
2
2
|
import { EntityManager } from "@mikro-orm/knex";
|
|
3
|
-
import z from "zod";
|
|
3
|
+
import { z } from "@medusajs/framework/zod";
|
|
4
4
|
import { Wishlist as WishlistType } from "../../api/store/wishlists/types";
|
|
5
5
|
/**
|
|
6
6
|
* Options for configuring the Alphabite Wishlist Plugin
|
|
@@ -38,27 +38,13 @@ export type AlphabiteWishlistPluginOptions = {
|
|
|
38
38
|
shareTokenSecret?: string;
|
|
39
39
|
};
|
|
40
40
|
declare const optionsSchema: z.ZodObject<{
|
|
41
|
-
wishlistFields: z.ZodOptional<z.ZodArray<z.ZodString
|
|
42
|
-
wishlistItemsFields: z.ZodOptional<z.ZodArray<z.ZodString
|
|
41
|
+
wishlistFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
42
|
+
wishlistItemsFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
43
43
|
includeWishlistItems: z.ZodDefault<z.ZodBoolean>;
|
|
44
44
|
includeWishlistItemsTake: z.ZodDefault<z.ZodNumber>;
|
|
45
45
|
allowGuestWishlist: z.ZodDefault<z.ZodBoolean>;
|
|
46
46
|
shareTokenSecret: z.ZodDefault<z.ZodString>;
|
|
47
|
-
},
|
|
48
|
-
includeWishlistItems: boolean;
|
|
49
|
-
includeWishlistItemsTake: number;
|
|
50
|
-
allowGuestWishlist: boolean;
|
|
51
|
-
shareTokenSecret: string;
|
|
52
|
-
wishlistFields?: string[] | undefined;
|
|
53
|
-
wishlistItemsFields?: string[] | undefined;
|
|
54
|
-
}, {
|
|
55
|
-
wishlistFields?: string[] | undefined;
|
|
56
|
-
wishlistItemsFields?: string[] | undefined;
|
|
57
|
-
includeWishlistItems?: boolean | undefined;
|
|
58
|
-
includeWishlistItemsTake?: number | undefined;
|
|
59
|
-
allowGuestWishlist?: boolean | undefined;
|
|
60
|
-
shareTokenSecret?: string | undefined;
|
|
61
|
-
}>;
|
|
47
|
+
}, z.core.$strip>;
|
|
62
48
|
export type AlphabiteWishlistPluginOptionsType = z.infer<typeof optionsSchema>;
|
|
63
49
|
declare const WishlistModuleService_base: import("@medusajs/framework/utils").MedusaServiceReturnType<import("@medusajs/framework/utils").ModelConfigurationsToConfigTemplate<{
|
|
64
50
|
readonly Wishlist: import("@medusajs/framework/utils").DmlEntity<import("@medusajs/framework/utils").DMLEntitySchemaBuilder<{
|
package/README.md
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
The **Alphabite Wishlist Plugin** is the most feature-complete wishlist system for [MedusaJS](https://medusajs.com). It supports both authenticated and guest users, multiple wishlists per user, and a full-featured SDK client for frontend integration.
|
|
4
4
|
|
|
5
5
|
This plugin ships with:
|
|
6
|
+
|
|
6
7
|
- 🔌 A fully typed JS SDK plugin
|
|
7
8
|
- 📭 A Postman collection
|
|
8
9
|
- ✅ Support for guest & authenticated customers
|
|
@@ -13,17 +14,24 @@ This plugin ships with:
|
|
|
13
14
|
|
|
14
15
|
Please install the plugin version that matches your Medusa version:
|
|
15
16
|
|
|
16
|
-
| Medusa Version
|
|
17
|
-
|
|
18
|
-
| `2.
|
|
19
|
-
|
|
|
17
|
+
| Medusa Version | Plugin Version | Install Command |
|
|
18
|
+
| ------------------ | -------------- | ---------------------------------------------- |
|
|
19
|
+
| `2.14.*` and above | `latest` | `npm install @alphabite/medusa-wishlist` |
|
|
20
|
+
| `2.13.*` | `0.5.8` | `npm install @alphabite/medusa-wishlist@0.5.8` |
|
|
21
|
+
| Below `2.13.0` | `0.5.7` | `npm install @alphabite/medusa-wishlist@0.5.7` |
|
|
20
22
|
|
|
21
|
-
### Installing the latest version (Medusa 2.
|
|
23
|
+
### Installing the latest version (Medusa 2.14.\* and above)
|
|
22
24
|
|
|
23
25
|
```bash
|
|
24
26
|
npm install @alphabite/medusa-wishlist
|
|
25
27
|
```
|
|
26
28
|
|
|
29
|
+
### Installing version 0.5.8 (Medusa 2.13.\*)
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
npm install @alphabite/medusa-wishlist@0.5.8
|
|
33
|
+
```
|
|
34
|
+
|
|
27
35
|
### Installing version 0.5.7 (Medusa versions below 2.13.0)
|
|
28
36
|
|
|
29
37
|
```bash
|
|
@@ -50,11 +58,11 @@ npm install @alphabite/medusa-wishlist@0.5.7
|
|
|
50
58
|
|
|
51
59
|
## ✨ Features
|
|
52
60
|
|
|
53
|
-
- ✅ Multiple wishlists per customer
|
|
54
|
-
- ✅ Add/remove items to/from any wishlist
|
|
55
|
-
- ✅ Guest wishlist supported + transfer when registered
|
|
56
|
-
- ✅ Fully typed Medusa JS SDK integration with our SDK client
|
|
57
|
-
- ✅ Pagination and filtering built-in
|
|
61
|
+
- ✅ Multiple wishlists per customer
|
|
62
|
+
- ✅ Add/remove items to/from any wishlist
|
|
63
|
+
- ✅ Guest wishlist supported + transfer when registered
|
|
64
|
+
- ✅ Fully typed Medusa JS SDK integration with our SDK client
|
|
65
|
+
- ✅ Pagination and filtering built-in
|
|
58
66
|
|
|
59
67
|
---
|
|
60
68
|
|
|
@@ -71,7 +79,7 @@ In your `medusa-config.js`, register the plugin:
|
|
|
71
79
|
```js
|
|
72
80
|
const plugins = [
|
|
73
81
|
{
|
|
74
|
-
resolve:
|
|
82
|
+
resolve: "@alphabite/medusa-wishlist",
|
|
75
83
|
options: {
|
|
76
84
|
// all are optional, read bellow about default values
|
|
77
85
|
wishlistFields: [],
|
|
@@ -81,20 +89,20 @@ const plugins = [
|
|
|
81
89
|
allowGuestWishlist: true,
|
|
82
90
|
},
|
|
83
91
|
},
|
|
84
|
-
]
|
|
92
|
+
];
|
|
85
93
|
```
|
|
86
94
|
|
|
87
95
|
---
|
|
88
96
|
|
|
89
97
|
## 🔧 Plugin Options
|
|
90
98
|
|
|
91
|
-
| Option
|
|
92
|
-
|
|
93
|
-
| `wishlistFields`
|
|
94
|
-
| `wishlistItemsFields`
|
|
95
|
-
| `includeWishlistItems`
|
|
96
|
-
| `includeWishlistItemsTake` | `number`
|
|
97
|
-
| `allowGuestWishlist`
|
|
99
|
+
| Option | Type | Default | Description |
|
|
100
|
+
| -------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
101
|
+
| `wishlistFields` | `string[]` | `["items.*", "items.product_variant.*", "items.product_variant.prices.*", "items.product_variant.product.thumbnail", "items.product_variant.product.id"]` | Selectively include Medusa product or product variant fields on wishlist list/retrieve endpoints that have wishlist items included |
|
|
102
|
+
| `wishlistItemsFields` | `string[]` | `["id", "product_id", "wishlist_id", "created_at", "wishlist.customer_id", "updated_at", "deleted_at", "product_variant.*", "product_variant.prices.*", "product_variant.calculated_price", "product_variant.product.thumbnail",]` | Selectively include Medusa product or product variant fields on wishlist items list/retrieve endpoints |
|
|
103
|
+
| `includeWishlistItems` | `boolean` | `false` | Automatically populate wishlist items in `GET /store/wishlists` |
|
|
104
|
+
| `includeWishlistItemsTake` | `number` | `5` | Limit number of items if `includeWishlistItems` is true |
|
|
105
|
+
| `allowGuestWishlist` | `boolean` | `false` | Enables wishlist creation & usage without authentication (cookie-based) |
|
|
98
106
|
|
|
99
107
|
---
|
|
100
108
|
|
|
@@ -102,17 +110,17 @@ const plugins = [
|
|
|
102
110
|
|
|
103
111
|
All endpoints are available under `/store/wishlists`.
|
|
104
112
|
|
|
105
|
-
| Method | Endpoint
|
|
106
|
-
|
|
107
|
-
| GET | `/store/wishlists`
|
|
108
|
-
| POST | `/store/wishlists`
|
|
109
|
-
| GET | `/store/wishlists/:id`
|
|
110
|
-
| PUT | `/store/wishlists/:id`
|
|
111
|
-
| DELETE | `/store/wishlists/:id`
|
|
112
|
-
| POST | `/store/wishlists/:id/transfer`
|
|
113
|
-
| GET | `/store/wishlists/:id/items`
|
|
114
|
-
| POST | `/store/wishlists/:id/add-item`
|
|
115
|
-
| DELETE | `/store/wishlists/:id/items/:item_id`
|
|
113
|
+
| Method | Endpoint | Auth | Description |
|
|
114
|
+
| ------ | ------------------------------------- | ------------- | ----------------------------------------- |
|
|
115
|
+
| GET | `/store/wishlists` | ✅ | List wishlists for the current customer |
|
|
116
|
+
| POST | `/store/wishlists` | ➖ (optional) | Create a new wishlist |
|
|
117
|
+
| GET | `/store/wishlists/:id` | ➖ (optional) | Retrieve a wishlist by ID |
|
|
118
|
+
| PUT | `/store/wishlists/:id` | ✅ | Update wishlist metadata |
|
|
119
|
+
| DELETE | `/store/wishlists/:id` | ✅ | Delete a wishlist |
|
|
120
|
+
| POST | `/store/wishlists/:id/transfer` | ✅ | Transfer guest wishlist to logged-in user |
|
|
121
|
+
| GET | `/store/wishlists/:id/items` | ➖ (optional) | Get items in a wishlist |
|
|
122
|
+
| POST | `/store/wishlists/:id/add-item` | ➖ (optional) | Add an item to the wishlist |
|
|
123
|
+
| DELETE | `/store/wishlists/:id/items/:item_id` | ➖ (optional) | Remove an item from the wishlist |
|
|
116
124
|
|
|
117
125
|
---
|
|
118
126
|
|
|
@@ -148,7 +156,6 @@ await sdk.alphabite.wishlist.addItem({
|
|
|
148
156
|
const { data } = await sdk.alphabite.wishlist.listItems({ id: 'wishlist_id' })
|
|
149
157
|
```
|
|
150
158
|
|
|
151
|
-
|
|
152
159
|
---
|
|
153
160
|
|
|
154
161
|
## 🧪 Guest Wishlist Flow
|
|
@@ -161,7 +168,7 @@ Guest wishlists work like guest carts:
|
|
|
161
168
|
4. When the user signs up or logs in, call the `transfer` endpoint to associate it:
|
|
162
169
|
|
|
163
170
|
```ts
|
|
164
|
-
await medusa.alphabite.wishlist.transfer({ id: wishlistId })
|
|
171
|
+
await medusa.alphabite.wishlist.transfer({ id: wishlistId });
|
|
165
172
|
```
|
|
166
173
|
|
|
167
174
|
After that, the cookie is no longer needed.
|