@unchainedshop/api 2.9.4 → 2.10.1

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.
Files changed (63) hide show
  1. package/lib/loaders/index.js +15 -13
  2. package/lib/loaders/index.js.map +1 -1
  3. package/lib/resolvers/mutations/orders/addCartDiscount.js +5 -2
  4. package/lib/resolvers/mutations/orders/addCartDiscount.js.map +1 -1
  5. package/lib/resolvers/mutations/orders/addCartProduct.js +3 -1
  6. package/lib/resolvers/mutations/orders/addCartProduct.js.map +1 -1
  7. package/lib/resolvers/mutations/orders/addCartQuotation.js +3 -1
  8. package/lib/resolvers/mutations/orders/addCartQuotation.js.map +1 -1
  9. package/lib/resolvers/mutations/orders/addMultipleCartProducts.js +3 -1
  10. package/lib/resolvers/mutations/orders/addMultipleCartProducts.js.map +1 -1
  11. package/lib/resolvers/mutations/orders/checkoutCart.d.ts +0 -1
  12. package/lib/resolvers/mutations/orders/checkoutCart.js +5 -4
  13. package/lib/resolvers/mutations/orders/checkoutCart.js.map +1 -1
  14. package/lib/resolvers/mutations/orders/confirmOrder.d.ts +0 -1
  15. package/lib/resolvers/mutations/orders/confirmOrder.js +1 -1
  16. package/lib/resolvers/mutations/orders/confirmOrder.js.map +1 -1
  17. package/lib/resolvers/mutations/orders/createCart.js +1 -1
  18. package/lib/resolvers/mutations/orders/createCart.js.map +1 -1
  19. package/lib/resolvers/mutations/orders/emptyCart.js +7 -4
  20. package/lib/resolvers/mutations/orders/emptyCart.js.map +1 -1
  21. package/lib/resolvers/mutations/orders/rejectOrder.d.ts +0 -1
  22. package/lib/resolvers/mutations/orders/rejectOrder.js +1 -1
  23. package/lib/resolvers/mutations/orders/rejectOrder.js.map +1 -1
  24. package/lib/resolvers/mutations/orders/signPaymentProviderForCheckout.js +7 -3
  25. package/lib/resolvers/mutations/orders/signPaymentProviderForCheckout.js.map +1 -1
  26. package/lib/resolvers/mutations/orders/updateCart.js +4 -2
  27. package/lib/resolvers/mutations/orders/updateCart.js.map +1 -1
  28. package/lib/resolvers/mutations/orders/updateOrderDeliveryPickUp.js +1 -4
  29. package/lib/resolvers/mutations/orders/updateOrderDeliveryPickUp.js.map +1 -1
  30. package/lib/resolvers/mutations/orders/updateOrderDeliveryShipping.js +1 -4
  31. package/lib/resolvers/mutations/orders/updateOrderDeliveryShipping.js.map +1 -1
  32. package/lib/resolvers/mutations/orders/updateOrderPaymentCard.js +1 -4
  33. package/lib/resolvers/mutations/orders/updateOrderPaymentCard.js.map +1 -1
  34. package/lib/resolvers/mutations/orders/updateOrderPaymentGeneric.js +1 -4
  35. package/lib/resolvers/mutations/orders/updateOrderPaymentGeneric.js.map +1 -1
  36. package/lib/resolvers/mutations/orders/updateOrderPaymentInvoice.js +1 -4
  37. package/lib/resolvers/mutations/orders/updateOrderPaymentInvoice.js.map +1 -1
  38. package/lib/resolvers/mutations/utils/getOrderCart.js +3 -8
  39. package/lib/resolvers/mutations/utils/getOrderCart.js.map +1 -1
  40. package/lib/resolvers/type/user-types.js +7 -3
  41. package/lib/resolvers/type/user-types.js.map +1 -1
  42. package/lib/schema/mutation.js +3 -3
  43. package/package.json +8 -8
  44. package/src/loaders/index.ts +240 -202
  45. package/src/resolvers/mutations/orders/addCartDiscount.ts +5 -2
  46. package/src/resolvers/mutations/orders/addCartProduct.ts +8 -1
  47. package/src/resolvers/mutations/orders/addCartQuotation.ts +3 -0
  48. package/src/resolvers/mutations/orders/addMultipleCartProducts.ts +6 -1
  49. package/src/resolvers/mutations/orders/checkoutCart.ts +5 -5
  50. package/src/resolvers/mutations/orders/confirmOrder.ts +1 -2
  51. package/src/resolvers/mutations/orders/createCart.ts +2 -2
  52. package/src/resolvers/mutations/orders/emptyCart.ts +7 -4
  53. package/src/resolvers/mutations/orders/rejectOrder.ts +1 -2
  54. package/src/resolvers/mutations/orders/signPaymentProviderForCheckout.ts +6 -2
  55. package/src/resolvers/mutations/orders/updateCart.ts +3 -2
  56. package/src/resolvers/mutations/orders/updateOrderDeliveryPickUp.ts +1 -5
  57. package/src/resolvers/mutations/orders/updateOrderDeliveryShipping.ts +1 -5
  58. package/src/resolvers/mutations/orders/updateOrderPaymentCard.ts +1 -5
  59. package/src/resolvers/mutations/orders/updateOrderPaymentGeneric.ts +1 -5
  60. package/src/resolvers/mutations/orders/updateOrderPaymentInvoice.ts +1 -5
  61. package/src/resolvers/mutations/utils/getOrderCart.ts +6 -8
  62. package/src/resolvers/type/user-types.ts +7 -3
  63. package/src/schema/mutation.ts +3 -3
@@ -1,18 +1,13 @@
1
- import { OrderNotFoundError, OrderWrongStatusError } from '../../../errors.js';
1
+ import { OrderNotFoundError } from '../../../errors.js';
2
2
  export const getOrderCart = async (params, context) => {
3
- const { countryContext, modules, services } = context;
3
+ const { modules, services } = context;
4
4
  const { orderId, user } = params;
5
5
  if (orderId) {
6
6
  const order = await modules.orders.findOrder({ orderId });
7
7
  if (!order)
8
8
  throw new OrderNotFoundError({ orderId });
9
- if (!modules.orders.isCart(order))
10
- throw new OrderWrongStatusError({ status: order.status });
11
9
  return order;
12
10
  }
13
- const cart = await modules.orders.cart({ countryContext }, user);
14
- if (cart)
15
- return cart;
16
- return services.orders.createUserCart({ user, countryCode: context.countryContext }, context);
11
+ return services.orders.nextUserCart({ user, countryCode: context.countryContext, forceCartCreation: true }, context);
17
12
  };
18
13
  //# sourceMappingURL=getOrderCart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getOrderCart.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/utils/getOrderCart.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE/E,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,MAAwC,EAAE,OAAgB,EAAE,EAAE;IAC/F,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IACtD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAEjC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAEtD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,qBAAqB,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7F,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,EAAE,IAAI,CAAC,CAAC;IACjE,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAEtB,OAAO,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,CAAC;AAChG,CAAC,CAAC"}
1
+ {"version":3,"file":"getOrderCart.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/utils/getOrderCart.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,MAAwC,EAAE,OAAgB,EAAE,EAAE;IAC/F,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IACtC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAEjC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,QAAQ,CAAC,MAAM,CAAC,YAAY,CACjC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,cAAc,EAAE,iBAAiB,EAAE,IAAI,EAAE,EACtE,OAAO,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -58,17 +58,21 @@ export const User = {
58
58
  async cart(user, params, context) {
59
59
  const { modules, countryContext } = context;
60
60
  await checkAction(context, viewUserOrders, [user, params]);
61
- return modules.orders.cart({ countryContext, orderNumber: params.orderNumber }, user);
61
+ return modules.orders.cart({
62
+ countryContext: countryContext || user.lastLogin?.countryCode,
63
+ orderNumber: params.orderNumber,
64
+ userId: user._id,
65
+ });
62
66
  },
63
67
  async tokens(user, params, context) {
64
68
  await checkAction(context, viewUserPrivateInfos, [user, params]);
65
69
  return context.modules.warehousing.findTokensForUser(user);
66
70
  },
67
- country: async (user, params, context) => {
71
+ async country(user, params, context) {
68
72
  await checkAction(context, viewUserPrivateInfos, [user, params]);
69
73
  return context.services.users.getUserCountry(user, context);
70
74
  },
71
- enrollments: async (user, params, context) => {
75
+ async enrollments(user, params, context) {
72
76
  await checkAction(context, viewUserEnrollments, [user, params]);
73
77
  return context.modules.enrollments.findEnrollments({
74
78
  ...(params || {}),
@@ -1 +1 @@
1
- {"version":3,"file":"user-types.js","sourceRoot":"","sources":["../../../src/resolvers/type/user-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-types.js","sourceRoot":"","sources":["../../../src/resolvers/type/user-types.ts"],"names":[],"mappings":"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"}
@@ -193,7 +193,7 @@ export default [
193
193
  Process the checkout (automatically charge & deliver if possible), the cart will get
194
194
  transformed to an ordinary order if everything goes well.
195
195
  """
196
- checkoutCart(orderId: ID, orderContext: JSON, paymentContext: JSON, deliveryContext: JSON): Order!
196
+ checkoutCart(orderId: ID, paymentContext: JSON, deliveryContext: JSON): Order!
197
197
 
198
198
  """
199
199
  Change the quantity or configuration of an item in an open order.align-baselineAll
@@ -304,12 +304,12 @@ export default [
304
304
  """
305
305
  Manually confirm an order which is in progress
306
306
  """
307
- confirmOrder(orderId: ID!, orderContext: JSON, paymentContext: JSON, deliveryContext: JSON): Order!
307
+ confirmOrder(orderId: ID!, paymentContext: JSON, deliveryContext: JSON): Order!
308
308
 
309
309
  """
310
310
  Manually reject an order which is in progress
311
311
  """
312
- rejectOrder(orderId: ID!, orderContext: JSON, paymentContext: JSON, deliveryContext: JSON): Order!
312
+ rejectOrder(orderId: ID!, paymentContext: JSON, deliveryContext: JSON): Order!
313
313
 
314
314
  """
315
315
  Manually mark an unpaid/partially paid order as fully paid
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unchainedshop/api",
3
- "version": "2.9.4",
3
+ "version": "2.10.1",
4
4
  "main": "lib/api-index.js",
5
5
  "exports": {
6
6
  ".": "./lib/api-index.js",
@@ -48,11 +48,11 @@
48
48
  },
49
49
  "dependencies": {
50
50
  "@metamask/eth-sig-util": "^7.0.2",
51
- "@unchainedshop/core": "^2.9.4",
52
- "@unchainedshop/events": "^2.9.4",
53
- "@unchainedshop/logger": "^2.9.4",
54
- "@unchainedshop/roles": "^2.9.4",
55
- "@unchainedshop/utils": "^2.9.4",
51
+ "@unchainedshop/core": "^2.10.1",
52
+ "@unchainedshop/events": "^2.10.1",
53
+ "@unchainedshop/logger": "^2.10.1",
54
+ "@unchainedshop/roles": "^2.10.1",
55
+ "@unchainedshop/utils": "^2.10.1",
56
56
  "accounting": "0.4.1",
57
57
  "dataloader": "^2.2.2",
58
58
  "graphql-scalars": "^1.23.0",
@@ -64,8 +64,8 @@
64
64
  "devDependencies": {
65
65
  "@types/graphql-upload": "^16.0.7",
66
66
  "@types/locale": "^0.1.4",
67
- "@types/node": "^20.12.13",
68
- "@unchainedshop/types": "^2.9.4",
67
+ "@types/node": "^20.14.1",
68
+ "@unchainedshop/types": "^2.10.1",
69
69
  "express": "^4.19.2",
70
70
  "jest": "^29.7.0",
71
71
  "ts-jest": "^29.1.4",
@@ -38,236 +38,274 @@ const loaders = async (
38
38
  unchainedAPI: UnchainedCore,
39
39
  ): Promise<UnchainedLoaders['loaders']> => {
40
40
  return {
41
- assortmentLoader: new DataLoader(async (queries) => {
42
- const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
43
-
44
- const assortments = await unchainedAPI.modules.assortments.findAssortments({
45
- assortmentIds,
46
- includeInactive: true,
47
- includeLeaves: true,
48
- });
49
-
50
- return queries.map(({ assortmentId }) => {
51
- return assortments.find((assortment) => {
52
- if (assortment._id !== assortmentId) return false;
53
- return true;
54
- });
55
- });
56
- }),
41
+ assortmentLoader: new DataLoader(
42
+ async (queries) => {
43
+ const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
57
44
 
58
- assortmentTextLoader: new DataLoader(async (queries) => {
59
- const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
45
+ const assortments = await unchainedAPI.modules.assortments.findAssortments({
46
+ assortmentIds,
47
+ includeInactive: true,
48
+ includeLeaves: true,
49
+ });
60
50
 
61
- const texts = await unchainedAPI.modules.assortments.texts.findTexts(
62
- { assortmentId: { $in: assortmentIds } },
63
- {
64
- sort: {
65
- assortmentId: 1,
51
+ return queries.map(({ assortmentId }) => {
52
+ return assortments.find((assortment) => {
53
+ if (assortment._id !== assortmentId) return false;
54
+ return true;
55
+ });
56
+ });
57
+ },
58
+ { batchScheduleFn: (cb) => setImmediate(cb) },
59
+ ),
60
+
61
+ assortmentTextLoader: new DataLoader(
62
+ async (queries) => {
63
+ const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
64
+
65
+ const texts = await unchainedAPI.modules.assortments.texts.findTexts(
66
+ { assortmentId: { $in: assortmentIds } },
67
+ {
68
+ sort: {
69
+ assortmentId: 1,
70
+ },
66
71
  },
67
- },
68
- );
69
-
70
- const filterFn =
71
- ({ assortmentId }) =>
72
- (text) =>
73
- text.assortmentId === assortmentId;
74
-
75
- return getFilteredQueries({ queries, texts, filterFn });
76
- }),
77
-
78
- assortmentMediaTextLoader: new DataLoader(async (queries) => {
79
- const assortmentMediaIds = [...new Set(queries.map((q) => q.assortmentMediaId).filter(Boolean))];
80
-
81
- const texts = await unchainedAPI.modules.assortments.media.texts.findMediaTexts(
82
- { assortmentMediaId: { $in: assortmentMediaIds } },
83
- {
84
- sort: {
85
- assortmentMediaId: 1,
72
+ );
73
+
74
+ const filterFn =
75
+ ({ assortmentId }) =>
76
+ (text) =>
77
+ text.assortmentId === assortmentId;
78
+
79
+ return getFilteredQueries({ queries, texts, filterFn });
80
+ },
81
+ { batchScheduleFn: (cb) => setImmediate(cb) },
82
+ ),
83
+
84
+ assortmentMediaTextLoader: new DataLoader(
85
+ async (queries) => {
86
+ const assortmentMediaIds = [...new Set(queries.map((q) => q.assortmentMediaId).filter(Boolean))];
87
+
88
+ const texts = await unchainedAPI.modules.assortments.media.texts.findMediaTexts(
89
+ { assortmentMediaId: { $in: assortmentMediaIds } },
90
+ {
91
+ sort: {
92
+ assortmentMediaId: 1,
93
+ },
86
94
  },
87
- },
88
- );
95
+ );
89
96
 
90
- const filterFn =
91
- ({ assortmentMediaId }) =>
92
- (text) =>
93
- text.assortmentMediaId === assortmentMediaId;
97
+ const filterFn =
98
+ ({ assortmentMediaId }) =>
99
+ (text) =>
100
+ text.assortmentMediaId === assortmentMediaId;
94
101
 
95
- return getFilteredQueries({ queries, texts, filterFn });
96
- }),
102
+ return getFilteredQueries({ queries, texts, filterFn });
103
+ },
104
+ { batchScheduleFn: (cb) => setImmediate(cb) },
105
+ ),
97
106
 
98
- assortmentLinkLoader: new DataLoader(async (queries) => {
99
- const parentAssortmentIds = [...new Set(queries.map((q) => q.parentAssortmentId).filter(Boolean))];
107
+ assortmentLinkLoader: new DataLoader(
108
+ async (queries) => {
109
+ const parentAssortmentIds = [
110
+ ...new Set(queries.map((q) => q.parentAssortmentId).filter(Boolean)),
111
+ ];
100
112
 
101
- const links = await unchainedAPI.modules.assortments.links.findLinks({
102
- parentAssortmentIds,
103
- });
113
+ const links = await unchainedAPI.modules.assortments.links.findLinks({
114
+ parentAssortmentIds,
115
+ });
104
116
 
105
- return queries.map(({ parentAssortmentId, childAssortmentId }) => {
106
- return links.find((link) => {
107
- if (link.parentAssortmentId !== parentAssortmentId) return false;
108
- if (childAssortmentId && link.childAssortmentId !== childAssortmentId) return false;
109
- return true;
117
+ return queries.map(({ parentAssortmentId, childAssortmentId }) => {
118
+ return links.find((link) => {
119
+ if (link.parentAssortmentId !== parentAssortmentId) return false;
120
+ if (childAssortmentId && link.childAssortmentId !== childAssortmentId) return false;
121
+ return true;
122
+ });
110
123
  });
111
- });
112
- }),
113
-
114
- assortmentLinksLoader: new DataLoader(async (queries) => {
115
- const parentAssortmentIds = [
116
- ...new Set(queries.flatMap((q) => q.parentAssortmentId).filter(Boolean)),
117
- ];
118
- const assortmentIds = [...new Set(queries.flatMap((q) => q.assortmentId).filter(Boolean))];
119
-
120
- const linksByParentAssortmentId =
121
- parentAssortmentIds?.length &&
122
- (await unchainedAPI.modules.assortments.links.findLinks({
123
- parentAssortmentIds,
124
- }));
125
- const linksByAssortmentId =
126
- assortmentIds?.length &&
127
- (await unchainedAPI.modules.assortments.links.findLinks({
128
- assortmentIds,
129
- }));
130
-
131
- return queries.map(({ parentAssortmentId, assortmentId }) => {
132
- if (parentAssortmentId) {
133
- return linksByParentAssortmentId.filter(
134
- (link) => link.parentAssortmentId === parentAssortmentId,
135
- );
136
- }
137
- if (assortmentId) {
138
- return linksByAssortmentId.filter(
139
- (link) =>
140
- link.parentAssortmentId === assortmentId || link.childAssortmentId === assortmentId,
141
- );
142
- }
143
- return [];
144
- });
145
- }),
146
-
147
- assortmentProductLoader: new DataLoader(async (queries) => {
148
- const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
149
-
150
- const assortmentProducts = await unchainedAPI.modules.assortments.products.findProducts({
151
- assortmentIds,
152
- });
153
-
154
- return queries.map(({ assortmentId, productId }) => {
155
- return assortmentProducts.find((assortmentProduct) => {
156
- if (assortmentProduct.assortmentId !== assortmentId) return false;
157
- if (assortmentProduct.productId !== productId) return false;
158
- return true;
124
+ },
125
+ { batchScheduleFn: (cb) => setImmediate(cb) },
126
+ ),
127
+
128
+ assortmentLinksLoader: new DataLoader(
129
+ async (queries) => {
130
+ const parentAssortmentIds = [
131
+ ...new Set(queries.flatMap((q) => q.parentAssortmentId).filter(Boolean)),
132
+ ];
133
+ const assortmentIds = [...new Set(queries.flatMap((q) => q.assortmentId).filter(Boolean))];
134
+
135
+ const linksByParentAssortmentId =
136
+ parentAssortmentIds?.length &&
137
+ (await unchainedAPI.modules.assortments.links.findLinks({
138
+ parentAssortmentIds,
139
+ }));
140
+ const linksByAssortmentId =
141
+ assortmentIds?.length &&
142
+ (await unchainedAPI.modules.assortments.links.findLinks({
143
+ assortmentIds,
144
+ }));
145
+
146
+ return queries.map(({ parentAssortmentId, assortmentId }) => {
147
+ if (parentAssortmentId) {
148
+ return linksByParentAssortmentId.filter(
149
+ (link) => link.parentAssortmentId === parentAssortmentId,
150
+ );
151
+ }
152
+ if (assortmentId) {
153
+ return linksByAssortmentId.filter(
154
+ (link) =>
155
+ link.parentAssortmentId === assortmentId || link.childAssortmentId === assortmentId,
156
+ );
157
+ }
158
+ return [];
159
159
  });
160
- });
161
- }),
160
+ },
161
+ { batchScheduleFn: (cb) => setImmediate(cb) },
162
+ ),
162
163
 
163
- filterLoader: new DataLoader(async (queries) => {
164
- const filterIds = [...new Set(queries.map((q) => q.filterId).filter(Boolean))];
164
+ assortmentProductLoader: new DataLoader(
165
+ async (queries) => {
166
+ const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
165
167
 
166
- const filters = await unchainedAPI.modules.filters.findFilters({
167
- filterIds,
168
- includeInactive: true,
169
- });
168
+ const assortmentProducts = await unchainedAPI.modules.assortments.products.findProducts({
169
+ assortmentIds,
170
+ });
170
171
 
171
- return queries.map(({ filterId }) => {
172
- return filters.find((product) => {
173
- if (product._id !== filterId) return false;
174
- return true;
172
+ return queries.map(({ assortmentId, productId }) => {
173
+ return assortmentProducts.find((assortmentProduct) => {
174
+ if (assortmentProduct.assortmentId !== assortmentId) return false;
175
+ if (assortmentProduct.productId !== productId) return false;
176
+ return true;
177
+ });
175
178
  });
176
- });
177
- }),
179
+ },
180
+ { batchScheduleFn: (cb) => setImmediate(cb) },
181
+ ),
178
182
 
179
- filterTextLoader: new DataLoader(async (queries) => {
180
- const filterIds = [...new Set(queries.map((q) => q.filterId).filter(Boolean))];
183
+ filterLoader: new DataLoader(
184
+ async (queries) => {
185
+ const filterIds = [...new Set(queries.map((q) => q.filterId).filter(Boolean))];
181
186
 
182
- const texts = await unchainedAPI.modules.filters.texts.findTexts(
183
- { filterId: { $in: filterIds } },
184
- {
185
- sort: {
186
- filterId: 1,
187
- },
188
- },
189
- );
190
-
191
- const filterFn =
192
- ({ filterId, filterOptionValue }) =>
193
- (text) =>
194
- text.filterId === filterId && text.filterOptionValue === filterOptionValue;
195
-
196
- return getFilteredQueries({ queries, texts, filterFn });
197
- }),
198
-
199
- productLoader: new DataLoader(async (queries) => {
200
- const productIds = [...new Set(queries.map((q) => q.productId).filter(Boolean))]; // you don't need lodash, _.unique my ass
201
-
202
- const products = await unchainedAPI.modules.products.findProducts({
203
- productIds,
204
- productSelector: {
205
- status: { $in: [null, ProductStatus.ACTIVE, ProductStatus.DELETED] },
206
- },
207
- });
208
-
209
- return queries.map(({ productId }) => {
210
- return products.find((product) => {
211
- if (product._id !== productId) return false;
212
- return true;
187
+ const filters = await unchainedAPI.modules.filters.findFilters({
188
+ filterIds,
189
+ includeInactive: true,
213
190
  });
214
- });
215
- }),
216
-
217
- productTextLoader: new DataLoader(async (queries) => {
218
- const productIds = [...new Set(queries.map((q) => q.productId).filter(Boolean))];
219
191
 
220
- const texts = await unchainedAPI.modules.products.texts.findTexts(
221
- { productId: { $in: productIds } },
222
- {
223
- sort: {
224
- productId: 1,
192
+ return queries.map(({ filterId }) => {
193
+ return filters.find((product) => {
194
+ if (product._id !== filterId) return false;
195
+ return true;
196
+ });
197
+ });
198
+ },
199
+ { batchScheduleFn: (cb) => setImmediate(cb) },
200
+ ),
201
+
202
+ filterTextLoader: new DataLoader(
203
+ async (queries) => {
204
+ const filterIds = [...new Set(queries.map((q) => q.filterId).filter(Boolean))];
205
+
206
+ const texts = await unchainedAPI.modules.filters.texts.findTexts(
207
+ { filterId: { $in: filterIds } },
208
+ {
209
+ sort: {
210
+ filterId: 1,
211
+ },
225
212
  },
226
- },
227
- );
228
-
229
- const filterFn =
230
- ({ productId }) =>
231
- (text) =>
232
- text.productId === productId;
233
-
234
- return getFilteredQueries({ queries, texts, filterFn });
235
- }),
236
-
237
- productMediaTextLoader: new DataLoader(async (queries) => {
238
- const productMediaIds = [...new Set(queries.map((q) => q.productMediaId).filter(Boolean))];
213
+ );
214
+
215
+ const filterFn =
216
+ ({ filterId, filterOptionValue }) =>
217
+ (text) =>
218
+ text.filterId === filterId && text.filterOptionValue === filterOptionValue;
219
+
220
+ return getFilteredQueries({ queries, texts, filterFn });
221
+ },
222
+ { batchScheduleFn: (cb) => setImmediate(cb) },
223
+ ),
224
+
225
+ productLoader: new DataLoader(
226
+ async (queries) => {
227
+ const productIds = [...new Set(queries.map((q) => q.productId).filter(Boolean))]; // you don't need lodash, _.unique my ass
228
+
229
+ const products = await unchainedAPI.modules.products.findProducts({
230
+ productIds,
231
+ productSelector: {
232
+ status: { $in: [null, ProductStatus.ACTIVE, ProductStatus.DELETED] },
233
+ },
234
+ });
239
235
 
240
- const texts = await unchainedAPI.modules.products.media.texts.findMediaTexts(
241
- { productMediaId: { $in: productMediaIds } },
242
- {
243
- sort: {
244
- productMediaId: 1,
236
+ return queries.map(({ productId }) => {
237
+ return products.find((product) => {
238
+ if (product._id !== productId) return false;
239
+ return true;
240
+ });
241
+ });
242
+ },
243
+ { batchScheduleFn: (cb) => setImmediate(cb) },
244
+ ),
245
+
246
+ productTextLoader: new DataLoader(
247
+ async (queries) => {
248
+ const productIds = [...new Set(queries.map((q) => q.productId).filter(Boolean))];
249
+
250
+ const texts = await unchainedAPI.modules.products.texts.findTexts(
251
+ { productId: { $in: productIds } },
252
+ {
253
+ sort: {
254
+ productId: 1,
255
+ },
256
+ },
257
+ );
258
+
259
+ const filterFn =
260
+ ({ productId }) =>
261
+ (text) =>
262
+ text.productId === productId;
263
+
264
+ return getFilteredQueries({ queries, texts, filterFn });
265
+ },
266
+ { batchScheduleFn: (cb) => setImmediate(cb) },
267
+ ),
268
+
269
+ productMediaTextLoader: new DataLoader(
270
+ async (queries) => {
271
+ const productMediaIds = [...new Set(queries.map((q) => q.productMediaId).filter(Boolean))];
272
+
273
+ const texts = await unchainedAPI.modules.products.media.texts.findMediaTexts(
274
+ { productMediaId: { $in: productMediaIds } },
275
+ {
276
+ sort: {
277
+ productMediaId: 1,
278
+ },
245
279
  },
246
- },
247
- );
280
+ );
248
281
 
249
- const filterFn =
250
- ({ productMediaId }) =>
251
- (text) =>
252
- text.productMediaId === productMediaId;
282
+ const filterFn =
283
+ ({ productMediaId }) =>
284
+ (text) =>
285
+ text.productMediaId === productMediaId;
253
286
 
254
- return getFilteredQueries({ queries, texts, filterFn });
255
- }),
287
+ return getFilteredQueries({ queries, texts, filterFn });
288
+ },
289
+ { batchScheduleFn: (cb) => setImmediate(cb) },
290
+ ),
256
291
 
257
- fileLoader: new DataLoader(async (queries) => {
258
- const fileIds = [...new Set(queries.map((q) => q.fileId).filter(Boolean))]; // you don't need lodash, _.unique my ass
292
+ fileLoader: new DataLoader(
293
+ async (queries) => {
294
+ const fileIds = [...new Set(queries.map((q) => q.fileId).filter(Boolean))]; // you don't need lodash, _.unique my ass
259
295
 
260
- const files = await unchainedAPI.modules.files.findFiles({
261
- _id: { $in: fileIds },
262
- });
296
+ const files = await unchainedAPI.modules.files.findFiles({
297
+ _id: { $in: fileIds },
298
+ });
263
299
 
264
- return queries.map(({ fileId }) => {
265
- return files.find((file) => {
266
- if (file._id !== fileId) return false;
267
- return true;
300
+ return queries.map(({ fileId }) => {
301
+ return files.find((file) => {
302
+ if (file._id !== fileId) return false;
303
+ return true;
304
+ });
268
305
  });
269
- });
270
- }),
306
+ },
307
+ { batchScheduleFn: (cb) => setImmediate(cb) },
308
+ ),
271
309
  };
272
310
  };
273
311
 
@@ -1,6 +1,7 @@
1
1
  import { Context, Root } from '@unchainedshop/types/api.js';
2
2
  import { log } from '@unchainedshop/logger';
3
3
  import { getOrderCart } from '../utils/getOrderCart.js';
4
+ import { OrderWrongStatusError } from '../../../errors.js';
4
5
 
5
6
  export default async function addCartDiscount(
6
7
  root: Root,
@@ -11,7 +12,9 @@ export default async function addCartDiscount(
11
12
 
12
13
  log(`mutation addCartDiscount ${code} ${orderId}`, { userId, orderId });
13
14
 
14
- const cart = await getOrderCart({ orderId, user }, context);
15
+ const order = await getOrderCart({ orderId, user }, context);
15
16
 
16
- return modules.orders.discounts.createManualOrderDiscount({ order: cart, code }, context);
17
+ if (!modules.orders.isCart(order)) throw new OrderWrongStatusError({ status: order.status });
18
+
19
+ return modules.orders.discounts.createManualOrderDiscount({ order, code }, context);
17
20
  }