@unchainedshop/api 2.10.0 → 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.
- package/lib/loaders/index.js +15 -13
- package/lib/loaders/index.js.map +1 -1
- package/package.json +8 -8
- package/src/loaders/index.ts +240 -202
package/lib/loaders/index.js
CHANGED
|
@@ -40,7 +40,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
40
40
|
return true;
|
|
41
41
|
});
|
|
42
42
|
});
|
|
43
|
-
}),
|
|
43
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
44
44
|
assortmentTextLoader: new DataLoader(async (queries) => {
|
|
45
45
|
const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
|
|
46
46
|
const texts = await unchainedAPI.modules.assortments.texts.findTexts({ assortmentId: { $in: assortmentIds } }, {
|
|
@@ -50,7 +50,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
50
50
|
});
|
|
51
51
|
const filterFn = ({ assortmentId }) => (text) => text.assortmentId === assortmentId;
|
|
52
52
|
return getFilteredQueries({ queries, texts, filterFn });
|
|
53
|
-
}),
|
|
53
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
54
54
|
assortmentMediaTextLoader: new DataLoader(async (queries) => {
|
|
55
55
|
const assortmentMediaIds = [...new Set(queries.map((q) => q.assortmentMediaId).filter(Boolean))];
|
|
56
56
|
const texts = await unchainedAPI.modules.assortments.media.texts.findMediaTexts({ assortmentMediaId: { $in: assortmentMediaIds } }, {
|
|
@@ -60,9 +60,11 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
60
60
|
});
|
|
61
61
|
const filterFn = ({ assortmentMediaId }) => (text) => text.assortmentMediaId === assortmentMediaId;
|
|
62
62
|
return getFilteredQueries({ queries, texts, filterFn });
|
|
63
|
-
}),
|
|
63
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
64
64
|
assortmentLinkLoader: new DataLoader(async (queries) => {
|
|
65
|
-
const parentAssortmentIds = [
|
|
65
|
+
const parentAssortmentIds = [
|
|
66
|
+
...new Set(queries.map((q) => q.parentAssortmentId).filter(Boolean)),
|
|
67
|
+
];
|
|
66
68
|
const links = await unchainedAPI.modules.assortments.links.findLinks({
|
|
67
69
|
parentAssortmentIds,
|
|
68
70
|
});
|
|
@@ -75,7 +77,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
75
77
|
return true;
|
|
76
78
|
});
|
|
77
79
|
});
|
|
78
|
-
}),
|
|
80
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
79
81
|
assortmentLinksLoader: new DataLoader(async (queries) => {
|
|
80
82
|
const parentAssortmentIds = [
|
|
81
83
|
...new Set(queries.flatMap((q) => q.parentAssortmentId).filter(Boolean)),
|
|
@@ -98,7 +100,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
98
100
|
}
|
|
99
101
|
return [];
|
|
100
102
|
});
|
|
101
|
-
}),
|
|
103
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
102
104
|
assortmentProductLoader: new DataLoader(async (queries) => {
|
|
103
105
|
const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
|
|
104
106
|
const assortmentProducts = await unchainedAPI.modules.assortments.products.findProducts({
|
|
@@ -113,7 +115,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
113
115
|
return true;
|
|
114
116
|
});
|
|
115
117
|
});
|
|
116
|
-
}),
|
|
118
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
117
119
|
filterLoader: new DataLoader(async (queries) => {
|
|
118
120
|
const filterIds = [...new Set(queries.map((q) => q.filterId).filter(Boolean))];
|
|
119
121
|
const filters = await unchainedAPI.modules.filters.findFilters({
|
|
@@ -127,7 +129,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
127
129
|
return true;
|
|
128
130
|
});
|
|
129
131
|
});
|
|
130
|
-
}),
|
|
132
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
131
133
|
filterTextLoader: new DataLoader(async (queries) => {
|
|
132
134
|
const filterIds = [...new Set(queries.map((q) => q.filterId).filter(Boolean))];
|
|
133
135
|
const texts = await unchainedAPI.modules.filters.texts.findTexts({ filterId: { $in: filterIds } }, {
|
|
@@ -137,7 +139,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
137
139
|
});
|
|
138
140
|
const filterFn = ({ filterId, filterOptionValue }) => (text) => text.filterId === filterId && text.filterOptionValue === filterOptionValue;
|
|
139
141
|
return getFilteredQueries({ queries, texts, filterFn });
|
|
140
|
-
}),
|
|
142
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
141
143
|
productLoader: new DataLoader(async (queries) => {
|
|
142
144
|
const productIds = [...new Set(queries.map((q) => q.productId).filter(Boolean))]; // you don't need lodash, _.unique my ass
|
|
143
145
|
const products = await unchainedAPI.modules.products.findProducts({
|
|
@@ -153,7 +155,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
153
155
|
return true;
|
|
154
156
|
});
|
|
155
157
|
});
|
|
156
|
-
}),
|
|
158
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
157
159
|
productTextLoader: new DataLoader(async (queries) => {
|
|
158
160
|
const productIds = [...new Set(queries.map((q) => q.productId).filter(Boolean))];
|
|
159
161
|
const texts = await unchainedAPI.modules.products.texts.findTexts({ productId: { $in: productIds } }, {
|
|
@@ -163,7 +165,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
163
165
|
});
|
|
164
166
|
const filterFn = ({ productId }) => (text) => text.productId === productId;
|
|
165
167
|
return getFilteredQueries({ queries, texts, filterFn });
|
|
166
|
-
}),
|
|
168
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
167
169
|
productMediaTextLoader: new DataLoader(async (queries) => {
|
|
168
170
|
const productMediaIds = [...new Set(queries.map((q) => q.productMediaId).filter(Boolean))];
|
|
169
171
|
const texts = await unchainedAPI.modules.products.media.texts.findMediaTexts({ productMediaId: { $in: productMediaIds } }, {
|
|
@@ -173,7 +175,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
173
175
|
});
|
|
174
176
|
const filterFn = ({ productMediaId }) => (text) => text.productMediaId === productMediaId;
|
|
175
177
|
return getFilteredQueries({ queries, texts, filterFn });
|
|
176
|
-
}),
|
|
178
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
177
179
|
fileLoader: new DataLoader(async (queries) => {
|
|
178
180
|
const fileIds = [...new Set(queries.map((q) => q.fileId).filter(Boolean))]; // you don't need lodash, _.unique my ass
|
|
179
181
|
const files = await unchainedAPI.modules.files.findFiles({
|
|
@@ -186,7 +188,7 @@ const loaders = async (req, res, unchainedAPI) => {
|
|
|
186
188
|
return true;
|
|
187
189
|
});
|
|
188
190
|
});
|
|
189
|
-
}),
|
|
191
|
+
}, { batchScheduleFn: (cb) => setImmediate(cb) }),
|
|
190
192
|
};
|
|
191
193
|
};
|
|
192
194
|
export default loaders;
|
package/lib/loaders/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/loaders/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/loaders/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unchainedshop/api",
|
|
3
|
-
"version": "2.10.
|
|
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.10.
|
|
52
|
-
"@unchainedshop/events": "^2.10.
|
|
53
|
-
"@unchainedshop/logger": "^2.10.
|
|
54
|
-
"@unchainedshop/roles": "^2.10.
|
|
55
|
-
"@unchainedshop/utils": "^2.10.
|
|
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.
|
|
68
|
-
"@unchainedshop/types": "^2.10.
|
|
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",
|
package/src/loaders/index.ts
CHANGED
|
@@ -38,236 +38,274 @@ const loaders = async (
|
|
|
38
38
|
unchainedAPI: UnchainedCore,
|
|
39
39
|
): Promise<UnchainedLoaders['loaders']> => {
|
|
40
40
|
return {
|
|
41
|
-
assortmentLoader: new DataLoader(
|
|
42
|
-
|
|
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
|
-
|
|
59
|
-
|
|
45
|
+
const assortments = await unchainedAPI.modules.assortments.findAssortments({
|
|
46
|
+
assortmentIds,
|
|
47
|
+
includeInactive: true,
|
|
48
|
+
includeLeaves: true,
|
|
49
|
+
});
|
|
60
50
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
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
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
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
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
97
|
+
const filterFn =
|
|
98
|
+
({ assortmentMediaId }) =>
|
|
99
|
+
(text) =>
|
|
100
|
+
text.assortmentMediaId === assortmentMediaId;
|
|
94
101
|
|
|
95
|
-
|
|
96
|
-
|
|
102
|
+
return getFilteredQueries({ queries, texts, filterFn });
|
|
103
|
+
},
|
|
104
|
+
{ batchScheduleFn: (cb) => setImmediate(cb) },
|
|
105
|
+
),
|
|
97
106
|
|
|
98
|
-
assortmentLinkLoader: new DataLoader(
|
|
99
|
-
|
|
107
|
+
assortmentLinkLoader: new DataLoader(
|
|
108
|
+
async (queries) => {
|
|
109
|
+
const parentAssortmentIds = [
|
|
110
|
+
...new Set(queries.map((q) => q.parentAssortmentId).filter(Boolean)),
|
|
111
|
+
];
|
|
100
112
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
113
|
+
const links = await unchainedAPI.modules.assortments.links.findLinks({
|
|
114
|
+
parentAssortmentIds,
|
|
115
|
+
});
|
|
104
116
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
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
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
parentAssortmentIds
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
assortmentIds
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
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
|
-
|
|
164
|
-
|
|
164
|
+
assortmentProductLoader: new DataLoader(
|
|
165
|
+
async (queries) => {
|
|
166
|
+
const assortmentIds = [...new Set(queries.map((q) => q.assortmentId).filter(Boolean))];
|
|
165
167
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
});
|
|
168
|
+
const assortmentProducts = await unchainedAPI.modules.assortments.products.findProducts({
|
|
169
|
+
assortmentIds,
|
|
170
|
+
});
|
|
170
171
|
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
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
|
-
|
|
180
|
-
|
|
183
|
+
filterLoader: new DataLoader(
|
|
184
|
+
async (queries) => {
|
|
185
|
+
const filterIds = [...new Set(queries.map((q) => q.filterId).filter(Boolean))];
|
|
181
186
|
|
|
182
|
-
|
|
183
|
-
|
|
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
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
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
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
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
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
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
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
282
|
+
const filterFn =
|
|
283
|
+
({ productMediaId }) =>
|
|
284
|
+
(text) =>
|
|
285
|
+
text.productMediaId === productMediaId;
|
|
253
286
|
|
|
254
|
-
|
|
255
|
-
|
|
287
|
+
return getFilteredQueries({ queries, texts, filterFn });
|
|
288
|
+
},
|
|
289
|
+
{ batchScheduleFn: (cb) => setImmediate(cb) },
|
|
290
|
+
),
|
|
256
291
|
|
|
257
|
-
fileLoader: new DataLoader(
|
|
258
|
-
|
|
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
|
-
|
|
261
|
-
|
|
262
|
-
|
|
296
|
+
const files = await unchainedAPI.modules.files.findFiles({
|
|
297
|
+
_id: { $in: fileIds },
|
|
298
|
+
});
|
|
263
299
|
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
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
|
|