@unchainedshop/api 4.0.0-rc.19 → 4.0.0-rc.20
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/lib/api-index.js +1 -1
- package/lib/api-index.js.map +1 -1
- package/lib/resolvers/mutations/orders/addMultipleCartProducts.d.ts.map +1 -1
- package/lib/resolvers/mutations/orders/addMultipleCartProducts.js +3 -7
- package/lib/resolvers/mutations/orders/addMultipleCartProducts.js.map +1 -1
- package/package.json +6 -6
- package/src/api-index.ts +1 -1
- package/src/resolvers/mutations/orders/addMultipleCartProducts.ts +26 -33
package/lib/api-index.js
CHANGED
|
@@ -25,6 +25,7 @@ export const startAPIServer = async (options) => {
|
|
|
25
25
|
const additionalTypeDefs = 'typeDefs' in serverOptions ? serverOptions.typeDefs : [];
|
|
26
26
|
const additionalResolvers = 'resolvers' in serverOptions ? serverOptions.resolvers : [];
|
|
27
27
|
return createGraphQLServer({
|
|
28
|
+
...serverOptions,
|
|
28
29
|
typeDefs: [
|
|
29
30
|
...buildDefaultTypeDefs({
|
|
30
31
|
actions: Object.keys(actions),
|
|
@@ -32,7 +33,6 @@ export const startAPIServer = async (options) => {
|
|
|
32
33
|
...(additionalTypeDefs || []),
|
|
33
34
|
],
|
|
34
35
|
resolvers: [resolvers, ...(additionalResolvers || [])],
|
|
35
|
-
...serverOptions,
|
|
36
36
|
});
|
|
37
37
|
};
|
|
38
38
|
//# sourceMappingURL=api-index.js.map
|
package/lib/api-index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-index.js","sourceRoot":"","sources":["../src/api-index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAA6C,MAAM,0BAA0B,CAAC;AACrF,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,GAG1B,MAAM,cAAc,CAAC;AAEtB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,CAAC;AAEvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAS3C,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,OAA+B,EAAE,EAAE;IACtE,MAAM,EACJ,YAAY,EACZ,OAAO,EAAE,aAAa,EACtB,KAAK,EACL,aAAa,GAAG,EAAE,EAClB,GAAG,aAAa,EACjB,GAAG,OAAiC,CAAC;IAEtC,MAAM,eAAe,GAAG,qBAAqB,CAAC,YAAY,EAAE;QAC1D,KAAK;QACL,aAAa;KACd,CAAC,CAAC;IAEH,yBAAyB,CACvB,aAAa;QACX,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE;YACjB,OAAO,aAAa,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QACxD,CAAC;QACH,CAAC,CAAC,eAAe,CACpB,CAAC;IAEF,MAAM,kBAAkB,GAAG,UAAU,IAAI,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACrF,MAAM,mBAAmB,GAAG,WAAW,IAAI,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAExF,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE;YACR,GAAG,oBAAoB,CAAC;gBACtB,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;aAC9B,CAAC;YACF,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC;SAC9B;QACD,SAAS,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"api-index.js","sourceRoot":"","sources":["../src/api-index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAA6C,MAAM,0BAA0B,CAAC;AACrF,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,GAG1B,MAAM,cAAc,CAAC;AAEtB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,CAAC;AAEvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAS3C,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,OAA+B,EAAE,EAAE;IACtE,MAAM,EACJ,YAAY,EACZ,OAAO,EAAE,aAAa,EACtB,KAAK,EACL,aAAa,GAAG,EAAE,EAClB,GAAG,aAAa,EACjB,GAAG,OAAiC,CAAC;IAEtC,MAAM,eAAe,GAAG,qBAAqB,CAAC,YAAY,EAAE;QAC1D,KAAK;QACL,aAAa;KACd,CAAC,CAAC;IAEH,yBAAyB,CACvB,aAAa;QACX,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE;YACjB,OAAO,aAAa,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QACxD,CAAC;QACH,CAAC,CAAC,eAAe,CACpB,CAAC;IAEF,MAAM,kBAAkB,GAAG,UAAU,IAAI,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACrF,MAAM,mBAAmB,GAAG,WAAW,IAAI,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAExF,OAAO,mBAAmB,CAAC;QACzB,GAAG,aAAa;QAChB,QAAQ,EAAE;YACR,GAAG,oBAAoB,CAAC;gBACtB,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;aAC9B,CAAC;YACF,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC;SAC9B;QACD,SAAS,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;KACvD,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addMultipleCartProducts.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/orders/addMultipleCartProducts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAS9C,wBAA8B,uBAAuB,CACnD,IAAI,EAAE,KAAK,EACX,MAAM,EAAE;IACN,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAClD,EAAE,CAAC;CACL,EACD,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"addMultipleCartProducts.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/orders/addMultipleCartProducts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAS9C,wBAA8B,uBAAuB,CACnD,IAAI,EAAE,KAAK,EACX,MAAM,EAAE;IACN,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAClD,EAAE,CAAC;CACL,EACD,OAAO,EAAE,OAAO,uDA8DjB"}
|
|
@@ -27,9 +27,7 @@ export default async function addMultipleCartProducts(root, params, context) {
|
|
|
27
27
|
throw new OrderNotFoundError({ orderId });
|
|
28
28
|
if (!modules.orders.isCart(order))
|
|
29
29
|
throw new OrderWrongStatusError({ status: order.status });
|
|
30
|
-
|
|
31
|
-
await itemsWithProducts.reduce(async (positionsPromise, { originalProduct, quantity, configuration }) => {
|
|
32
|
-
const positions = await positionsPromise;
|
|
30
|
+
for (const { originalProduct, quantity, configuration } of itemsWithProducts) {
|
|
33
31
|
if (quantity < 1)
|
|
34
32
|
throw new OrderQuantityTooLowError({
|
|
35
33
|
quantity,
|
|
@@ -44,16 +42,14 @@ export default async function addMultipleCartProducts(root, params, context) {
|
|
|
44
42
|
configuration,
|
|
45
43
|
quantityDiff: quantity,
|
|
46
44
|
}, context);
|
|
47
|
-
|
|
45
|
+
await modules.orders.positions.addProductItem({
|
|
48
46
|
quantity,
|
|
49
47
|
configuration,
|
|
50
48
|
originalProductId: originalProduct._id,
|
|
51
49
|
productId: product._id,
|
|
52
50
|
orderId: order._id,
|
|
53
51
|
});
|
|
54
|
-
|
|
55
|
-
return positions;
|
|
56
|
-
}, Promise.resolve([]));
|
|
52
|
+
}
|
|
57
53
|
return services.orders.updateCalculation(order._id);
|
|
58
54
|
}
|
|
59
55
|
//# sourceMappingURL=addMultipleCartProducts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addMultipleCartProducts.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/orders/addMultipleCartProducts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,
|
|
1
|
+
{"version":3,"file":"addMultipleCartProducts.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/orders/addMultipleCartProducts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,uBAAuB,CACnD,IAAW,EACX,MAOC,EACD,OAAgB;IAEhB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACpD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAElC,GAAG,CAAC,oCAAoC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE;QAC/D,MAAM;QACN,OAAO;KACR,CAAC,CAAC;IAEH,kCAAkC;IAClC,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,GAAG,CACzC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;QACzC,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,eAAe;YAAE,MAAM,IAAI,oBAAoB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAEpE,OAAO;YACL,GAAG,IAAI;YACP,eAAe;SAChB,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC;QACjD,OAAO;QACP,IAAI,EAAE,IAAK;QACX,WAAW,EAAE,OAAO,CAAC,WAAW;KACjC,CAAC,CAAC;IACH,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IACtD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,qBAAqB,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAE7F,KAAK,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,iBAAiB,EAAE,CAAC;QAC7E,IAAI,QAAQ,GAAG,CAAC;YACd,MAAM,IAAI,wBAAwB,CAAC;gBACjC,QAAQ;gBACR,SAAS,EAAE,eAAe,CAAC,GAAG;aAC/B,CAAC,CAAC;QAEL,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC,eAAe,EAAE;YAC9E,aAAa;SACd,CAAC,CAAC;QAEH,MAAM,cAAc,CAAC,qBAAqB,CACxC;YACE,KAAK;YACL,OAAO;YACP,aAAa;YACb,YAAY,EAAE,QAAQ;SACvB,EACD,OAAO,CACR,CAAC;QAEF,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;YAC5C,QAAQ;YACR,aAAa;YACb,iBAAiB,EAAE,eAAe,CAAC,GAAG;YACtC,SAAS,EAAE,OAAO,CAAC,GAAG;YACtB,OAAO,EAAE,KAAK,CAAC,GAAG;SACnB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unchainedshop/api",
|
|
3
|
-
"version": "4.0.0-rc.
|
|
3
|
+
"version": "4.0.0-rc.20",
|
|
4
4
|
"main": "lib/api-index.js",
|
|
5
5
|
"types": "lib/api-index.d.ts",
|
|
6
6
|
"type": "module",
|
|
@@ -95,11 +95,11 @@
|
|
|
95
95
|
}
|
|
96
96
|
},
|
|
97
97
|
"dependencies": {
|
|
98
|
-
"@unchainedshop/core": "^4.0.0-rc.
|
|
99
|
-
"@unchainedshop/events": "^4.0.0-rc.
|
|
100
|
-
"@unchainedshop/logger": "^4.0.0-rc.
|
|
101
|
-
"@unchainedshop/roles": "^4.0.0-rc.
|
|
102
|
-
"@unchainedshop/utils": "^4.0.0-rc.
|
|
98
|
+
"@unchainedshop/core": "^4.0.0-rc.20",
|
|
99
|
+
"@unchainedshop/events": "^4.0.0-rc.20",
|
|
100
|
+
"@unchainedshop/logger": "^4.0.0-rc.20",
|
|
101
|
+
"@unchainedshop/roles": "^4.0.0-rc.20",
|
|
102
|
+
"@unchainedshop/utils": "^4.0.0-rc.20",
|
|
103
103
|
"file-type": "^21.0.0",
|
|
104
104
|
"dataloader": "^2.2.3",
|
|
105
105
|
"expiry-map": "^2.0.0",
|
package/src/api-index.ts
CHANGED
|
@@ -53,6 +53,7 @@ export const startAPIServer = async (options: UnchainedServerOptions) => {
|
|
|
53
53
|
const additionalResolvers = 'resolvers' in serverOptions ? serverOptions.resolvers : [];
|
|
54
54
|
|
|
55
55
|
return createGraphQLServer({
|
|
56
|
+
...serverOptions,
|
|
56
57
|
typeDefs: [
|
|
57
58
|
...buildDefaultTypeDefs({
|
|
58
59
|
actions: Object.keys(actions),
|
|
@@ -60,6 +61,5 @@ export const startAPIServer = async (options: UnchainedServerOptions) => {
|
|
|
60
61
|
...(additionalTypeDefs || []),
|
|
61
62
|
],
|
|
62
63
|
resolvers: [resolvers, ...(additionalResolvers || [])],
|
|
63
|
-
...serverOptions,
|
|
64
64
|
});
|
|
65
65
|
};
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
OrderWrongStatusError,
|
|
7
7
|
OrderNotFoundError,
|
|
8
8
|
} from '../../../errors.js';
|
|
9
|
-
import {
|
|
9
|
+
import { ordersSettings } from '@unchainedshop/core-orders';
|
|
10
10
|
|
|
11
11
|
export default async function addMultipleCartProducts(
|
|
12
12
|
root: never,
|
|
@@ -49,42 +49,35 @@ export default async function addMultipleCartProducts(
|
|
|
49
49
|
if (!order) throw new OrderNotFoundError({ orderId });
|
|
50
50
|
if (!modules.orders.isCart(order)) throw new OrderWrongStatusError({ status: order.status });
|
|
51
51
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
throw new OrderQuantityTooLowError({
|
|
58
|
-
quantity,
|
|
59
|
-
productId: originalProduct._id,
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
const product = await modules.products.resolveOrderableProduct(originalProduct, {
|
|
63
|
-
configuration,
|
|
52
|
+
for (const { originalProduct, quantity, configuration } of itemsWithProducts) {
|
|
53
|
+
if (quantity < 1)
|
|
54
|
+
throw new OrderQuantityTooLowError({
|
|
55
|
+
quantity,
|
|
56
|
+
productId: originalProduct._id,
|
|
64
57
|
});
|
|
65
58
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
product,
|
|
70
|
-
configuration,
|
|
71
|
-
quantityDiff: quantity,
|
|
72
|
-
},
|
|
73
|
-
context,
|
|
74
|
-
);
|
|
59
|
+
const product = await modules.products.resolveOrderableProduct(originalProduct, {
|
|
60
|
+
configuration,
|
|
61
|
+
});
|
|
75
62
|
|
|
76
|
-
|
|
77
|
-
|
|
63
|
+
await ordersSettings.validateOrderPosition(
|
|
64
|
+
{
|
|
65
|
+
order,
|
|
66
|
+
product,
|
|
78
67
|
configuration,
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
68
|
+
quantityDiff: quantity,
|
|
69
|
+
},
|
|
70
|
+
context,
|
|
71
|
+
);
|
|
72
|
+
|
|
73
|
+
await modules.orders.positions.addProductItem({
|
|
74
|
+
quantity,
|
|
75
|
+
configuration,
|
|
76
|
+
originalProductId: originalProduct._id,
|
|
77
|
+
productId: product._id,
|
|
78
|
+
orderId: order._id,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
88
81
|
|
|
89
82
|
return services.orders.updateCalculation(order._id);
|
|
90
83
|
}
|