@alphabite/medusa-wishlist 0.5.10 โ†’ 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.
@@ -25,7 +25,11 @@ async function GET(req, res) {
25
25
  id,
26
26
  },
27
27
  ...req.queryConfig,
28
- fields: [...utils_2.defaultFields, ...(req.queryConfig?.fields || []), ...(options?.wishlistFields || [])],
28
+ fields: [
29
+ ...utils_2.defaultFields,
30
+ ...(req.queryConfig?.fields || []),
31
+ ...(options?.wishlistFields || []),
32
+ ],
29
33
  });
30
34
  const wishlist = data?.[0];
31
35
  if (!wishlist) {
@@ -37,7 +41,11 @@ async function GET(req, res) {
37
41
  const { data: items, metadata: items_metadata } = await query.graph({
38
42
  entity: "wishlist_item",
39
43
  filters: { wishlist_id: wishlist.id },
40
- fields: [...utils_2.defaultItemsFields, ...(options?.wishlistItemsFields || []), ...(items_fields || [])],
44
+ fields: [
45
+ ...utils_2.defaultItemsFields,
46
+ ...(options?.wishlistItemsFields || []),
47
+ ...(items_fields || []),
48
+ ],
41
49
  pagination: {
42
50
  take: options?.includeWishlistItemsTake || 5,
43
51
  skip: 0,
@@ -97,10 +105,14 @@ async function GET(req, res) {
97
105
  },
98
106
  };
99
107
  });
100
- return res.status(200).json({ ...wishlist, items_count: items_metadata?.count, items: enrichedItems });
108
+ return res.status(200).json({
109
+ ...wishlist,
110
+ items_count: items_metadata?.count,
111
+ items: enrichedItems,
112
+ });
101
113
  }
102
114
  catch (error) {
103
- logger.error("Error fetching wishlists:", error);
115
+ logger.error("Error fetching wishlists:", error instanceof Error ? error : new Error(String(error)));
104
116
  return res.status(500).end();
105
117
  }
106
118
  }
@@ -117,7 +129,7 @@ async function PUT(req, res) {
117
129
  return res.status(200).json(updated_wishlist);
118
130
  }
119
131
  catch (error) {
120
- logger.error("Update wishlists failed:", error);
132
+ logger.error("Update wishlists failed:", error instanceof Error ? error : new Error(String(error)));
121
133
  return res.status(500).end();
122
134
  }
123
135
  }
@@ -132,8 +144,8 @@ async function DELETE(req, res) {
132
144
  });
133
145
  }
134
146
  catch (error) {
135
- logger.error("Wishlist deleting failed.", error);
147
+ logger.error("Wishlist deleting failed.", error instanceof Error ? error : new Error(String(error)));
136
148
  return res.status(500).end();
137
149
  }
138
150
  }
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBaUJBLGtCQTZIQztBQUVELGtCQXVCQztBQU9ELHdCQWtCQztBQS9MRCxxREFLbUM7QUFJbkMsMkRBQStEO0FBRS9ELG1EQUE0RTtBQUk1RSxpREFBaUQ7QUFDMUMsS0FBSyxVQUFVLEdBQUcsQ0FBQyxHQUEyRCxFQUFFLEdBQTZCO0lBQ2xILE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTNDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQzFCLE1BQU0sV0FBVyxHQUFHLEdBQUcsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO0lBQ2hELE1BQU0sRUFBRSxZQUFZLEVBQUUsd0JBQXdCLEVBQUUsdUJBQXVCLEVBQUUsR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDO0lBRS9GLE1BQU0sZUFBZSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUF3QiwwQkFBZSxDQUFDLENBQUM7SUFDbEYsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQztJQUV6QyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEQsTUFBTSxJQUFJLG1CQUFXLENBQUMsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLGlDQUFpQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxL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
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3dpc2hsaXN0cy9baWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBd0JBLGtCQTZKQztBQUVELGtCQTJCQztBQU9ELHdCQXlCQztBQTdPRCxxREFLbUM7QUFJbkMsMkRBQStEO0FBRS9ELG1EQUE0RTtBQU81RSxpREFBaUQ7QUFDMUMsS0FBSyxVQUFVLEdBQUcsQ0FDdkIsR0FBMkQsRUFDM0QsR0FBNkI7SUFFN0IsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFM0MsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDMUIsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUM7SUFDaEQsTUFBTSxFQUFFLFlBQVksRUFBRSx3QkFBd0IsRUFBRSx1QkFBdUIsRUFBRSxHQUN2RSxHQUFHLENBQUMsY0FBYyxDQUFDO0lBRXJCLE1BQU0sZUFBZSxHQUNuQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBd0IsMEJBQWUsQ0FBQyxDQUFDO0lBQzVELE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUM7SUFFekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2hELE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLGlDQUFpQyxDQUNsQyxDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLEtBQUss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
@@ -5,12 +5,27 @@ const migrations_1 = require("@mikro-orm/migrations");
5
5
  class Migration20260415155648 extends migrations_1.Migration {
6
6
  async up() {
7
7
  this.addSql(`alter table if exists "wishlist_item" add column if not exists "product_id" text;`);
8
- this.addSql(`
9
- UPDATE "wishlist_item" wi
10
- SET "product_id" = pv.product_id
11
- FROM "product_variant" pv
12
- WHERE wi.product_variant_id = pv.id
13
- AND wi.product_id IS NULL;
8
+ // Backfill product_id from the variant's product. Guarded against fresh
9
+ // databases where the product module's migrations haven't created
10
+ // product_variant yet โ€” Medusa runs each module's migrations independently
11
+ // with no cross-module ordering guarantee. On a fresh install wishlist_item
12
+ // is empty so the UPDATE would touch zero rows even if the table existed,
13
+ // but Postgres parses the FROM clause before execution and errors on
14
+ // missing relations. The IF EXISTS guard skips cleanly in that case.
15
+ this.addSql(`
16
+ DO $$
17
+ BEGIN
18
+ IF EXISTS (
19
+ SELECT FROM information_schema.tables
20
+ WHERE table_name = 'product_variant'
21
+ ) THEN
22
+ UPDATE "wishlist_item" wi
23
+ SET "product_id" = pv.product_id
24
+ FROM "product_variant" pv
25
+ WHERE wi.product_variant_id = pv.id
26
+ AND wi.product_id IS NULL;
27
+ END IF;
28
+ END $$;
14
29
  `);
15
30
  this.addSql(`update "wishlist_item" set "product_id" = 'orphaned_product' where "product_id" is null;`);
16
31
  this.addSql(`alter table if exists "wishlist_item" alter column "product_id" set not null;`);
@@ -20,4 +35,4 @@ class Migration20260415155648 extends migrations_1.Migration {
20
35
  }
21
36
  }
22
37
  exports.Migration20260415155648 = Migration20260415155648;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNjA0MTUxNTU2NDguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy93aXNobGlzdC9taWdyYXRpb25zL01pZ3JhdGlvbjIwMjYwNDE1MTU1NjQ4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFrRDtBQUVsRCxNQUFhLHVCQUF3QixTQUFRLHNCQUFTO0lBQzNDLEtBQUssQ0FBQyxFQUFFO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FDVCxtRkFBbUYsQ0FDcEYsQ0FBQztRQUVGLElBQUksQ0FBQyxNQUFNLENBQUM7Ozs7OztLQU1YLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQ1QsMEZBQTBGLENBQzNGLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTSxDQUNULCtFQUErRSxDQUNoRixDQUFDO0lBQ0osQ0FBQztJQUVRLEtBQUssQ0FBQyxJQUFJO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQ1QsMkVBQTJFLENBQzVFLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUE1QkQsMERBNEJDIn0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNjA0MTUxNTU2NDguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy93aXNobGlzdC9taWdyYXRpb25zL01pZ3JhdGlvbjIwMjYwNDE1MTU1NjQ4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFrRDtBQUVsRCxNQUFhLHVCQUF3QixTQUFRLHNCQUFTO0lBQzNDLEtBQUssQ0FBQyxFQUFFO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FDVCxtRkFBbUYsQ0FDcEYsQ0FBQztRQUVGLHdFQUF3RTtRQUN4RSxrRUFBa0U7UUFDbEUsMkVBQTJFO1FBQzNFLDRFQUE0RTtRQUM1RSwwRUFBMEU7UUFDMUUscUVBQXFFO1FBQ3JFLHFFQUFxRTtRQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7OztLQWNYLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQ1QsMEZBQTBGLENBQzNGLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTSxDQUNULCtFQUErRSxDQUNoRixDQUFDO0lBQ0osQ0FBQztJQUVRLEtBQUssQ0FBQyxJQUFJO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQ1QsMkVBQTJFLENBQzVFLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUEzQ0QsMERBMkNDIn0=
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 | Plugin Version | Install Command |
17
- |------------------|----------------|----------------------------------------------|
18
- | `2.13.*` and above | `latest` | `npm install @alphabite/medusa-wishlist` |
19
- | Below `2.13.0` | `0.5.7` | `npm install @alphabite/medusa-wishlist@0.5.7` |
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.13.* and above)
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: '@alphabite/medusa-wishlist',
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 | Type | Default | Description |
92
- |---------------------------|------------|---------|--------------------------------------------------------------------------|
93
- | `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 |
94
- | `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 |
95
- | `includeWishlistItems` | `boolean` | `false` | Automatically populate wishlist items in `GET /store/wishlists` |
96
- | `includeWishlistItemsTake` | `number` | `5` | Limit number of items if `includeWishlistItems` is true |
97
- | `allowGuestWishlist` | `boolean` | `false` | Enables wishlist creation & usage without authentication (cookie-based) |
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 | Auth | Description |
106
- |--------|--------------------------------------------|----------------|-----------------------------------------|
107
- | GET | `/store/wishlists` | โœ… | List wishlists for the current customer |
108
- | POST | `/store/wishlists` | โž– (optional) | Create a new wishlist |
109
- | GET | `/store/wishlists/:id` | โž– (optional) | Retrieve a wishlist by ID |
110
- | PUT | `/store/wishlists/:id` | โœ… | Update wishlist metadata |
111
- | DELETE | `/store/wishlists/:id` | โœ… | Delete a wishlist |
112
- | POST | `/store/wishlists/:id/transfer` | โœ… | Transfer guest wishlist to logged-in user |
113
- | GET | `/store/wishlists/:id/items` | โž– (optional) | Get items in a wishlist |
114
- | POST | `/store/wishlists/:id/add-item` | โž– (optional) | Add an item to the wishlist |
115
- | DELETE | `/store/wishlists/:id/items/:item_id` | โž– (optional) | Remove an item from the wishlist |
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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alphabite/medusa-wishlist",
3
- "version": "0.5.10",
3
+ "version": "0.5.11",
4
4
  "description": "Alphabite's Medusa Wishlist Plugin",
5
5
  "author": "Alphabite (https://alphabite.io)",
6
6
  "license": "MIT",