@unchainedshop/platform 2.0.0-beta5 → 2.0.0-beta7
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/bulk-importer/createBulkImporter.js +1 -1
- package/lib/bulk-importer/createBulkImporter.js.map +1 -1
- package/lib/bulk-importer/handlers/assortment/create.js +6 -3
- package/lib/bulk-importer/handlers/assortment/create.js.map +1 -1
- package/lib/bulk-importer/handlers/assortment/update.js +3 -5
- package/lib/bulk-importer/handlers/assortment/update.js.map +1 -1
- package/lib/bulk-importer/handlers/assortment/upsertAssortmentContent.js +0 -3
- package/lib/bulk-importer/handlers/assortment/upsertAssortmentContent.js.map +1 -1
- package/lib/bulk-importer/handlers/filter/create.js +7 -5
- package/lib/bulk-importer/handlers/filter/create.js.map +1 -1
- package/lib/bulk-importer/handlers/filter/update.js +12 -13
- package/lib/bulk-importer/handlers/filter/update.js.map +1 -1
- package/lib/bulk-importer/handlers/filter/upsertFilterContent.d.ts +2 -2
- package/lib/bulk-importer/handlers/filter/upsertFilterContent.js +2 -2
- package/lib/bulk-importer/handlers/filter/upsertFilterContent.js.map +1 -1
- package/lib/bulk-importer/handlers/filter/upsertFilterOptionContent.d.ts +2 -2
- package/lib/bulk-importer/handlers/filter/upsertFilterOptionContent.js +2 -2
- package/lib/bulk-importer/handlers/filter/upsertFilterOptionContent.js.map +1 -1
- package/lib/bulk-importer/handlers/product/create.js +3 -0
- package/lib/bulk-importer/handlers/product/create.js.map +1 -1
- package/lib/bulk-importer/handlers/product/update.js +3 -5
- package/lib/bulk-importer/handlers/product/update.js.map +1 -1
- package/lib/bulk-importer/handlers/product/upsertProductContent.js +0 -3
- package/lib/bulk-importer/handlers/product/upsertProductContent.js.map +1 -1
- package/lib/context/setAccessToken.d.ts +2 -2
- package/lib/context/setAccessToken.js.map +1 -1
- package/lib/startPlatform.js +1 -1
- package/lib/startPlatform.js.map +1 -1
- package/package.json +13 -13
- package/src/bulk-importer/createBulkImporter.ts +1 -1
- package/src/bulk-importer/handlers/assortment/create.ts +7 -3
- package/src/bulk-importer/handlers/assortment/update.ts +4 -7
- package/src/bulk-importer/handlers/assortment/upsertAssortmentContent.ts +0 -3
- package/src/bulk-importer/handlers/filter/create.ts +8 -5
- package/src/bulk-importer/handlers/filter/update.ts +18 -17
- package/src/bulk-importer/handlers/filter/upsertFilterContent.ts +5 -2
- package/src/bulk-importer/handlers/filter/upsertFilterOptionContent.ts +2 -2
- package/src/bulk-importer/handlers/product/create.ts +4 -0
- package/src/bulk-importer/handlers/product/update.ts +4 -6
- package/src/bulk-importer/handlers/product/upsertProductContent.ts +0 -3
- package/src/context/setAccessToken.ts +2 -2
- package/src/startPlatform.ts +1 -1
|
@@ -89,7 +89,7 @@ export const createBulkImporterFactory = (db, bulkImporterOptions) => {
|
|
|
89
89
|
invalidateCaches: async (unchainedAPI) => {
|
|
90
90
|
if (skipCacheInvalidation)
|
|
91
91
|
return;
|
|
92
|
-
await unchainedAPI.modules.assortments.invalidateCache({});
|
|
92
|
+
await unchainedAPI.modules.assortments.invalidateCache({}, { skipUpstreamTraversal: true });
|
|
93
93
|
await unchainedAPI.modules.filters.invalidateCache({}, unchainedAPI);
|
|
94
94
|
},
|
|
95
95
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createBulkImporter.js","sourceRoot":"","sources":["../../src/bulk-importer/createBulkImporter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"createBulkImporter.js","sourceRoot":"","sources":["../../src/bulk-importer/createBulkImporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,25 +25,28 @@ export default async function createAssortment(payload, { logger, authorId, crea
|
|
|
25
25
|
authorId,
|
|
26
26
|
}, userId);
|
|
27
27
|
}
|
|
28
|
+
if (!(await modules.assortments.assortmentExists({ assortmentId: _id }))) {
|
|
29
|
+
throw new Error(`Can't create assortment ${_id}, fields missing?`);
|
|
30
|
+
}
|
|
28
31
|
logger.debug('create localized content for assortment', specification.content);
|
|
29
32
|
await upsertAssortmentContent({
|
|
30
33
|
content: specification.content,
|
|
31
34
|
assortmentId: _id,
|
|
32
35
|
authorId,
|
|
33
36
|
}, unchainedAPI);
|
|
34
|
-
logger.debug('create
|
|
37
|
+
logger.debug('create assortment products', products);
|
|
35
38
|
await upsertAssortmentProducts({
|
|
36
39
|
products: products || [],
|
|
37
40
|
assortmentId: _id,
|
|
38
41
|
authorId,
|
|
39
42
|
}, unchainedAPI);
|
|
40
|
-
logger.debug('create assortment children',
|
|
43
|
+
logger.debug('create assortment children', children);
|
|
41
44
|
await upsertAssortmentChildren({
|
|
42
45
|
children: children || [],
|
|
43
46
|
assortmentId: _id,
|
|
44
47
|
authorId,
|
|
45
48
|
}, unchainedAPI);
|
|
46
|
-
logger.debug('create assortment filters',
|
|
49
|
+
logger.debug('create assortment filters', filters);
|
|
47
50
|
await upsertAssortmentFilters({
|
|
48
51
|
filters: filters || [],
|
|
49
52
|
assortmentId: _id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/assortment/create.ts"],"names":[],"mappings":"AACA,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AACrE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,gBAAgB,CAC5C,OAAY,EACZ,EAAE,MAAM,EAAE,QAAQ,EAAE,4BAA4B,EAAE,EAClD,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;IACzC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAC3E,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,GAAG,EAAE,CAAC,CAAC;IAErG,IAAI,CAAC,aAAa,CAAC,OAAO;QACxB,MAAM,IAAI,KAAK,CAAC,8DAA8D,GAAG,EAAE,CAAC,CAAC;IAEvF,aAAa,CAAC,IAAI,GAAG,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAEjE,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;IACxD,IAAI;QACF,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;KAC/E;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,4BAA4B;YAAE,MAAM,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE,aAAa,CAAC,CAAC;QAC7E,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,CAC9B,GAAG,EACH;YACE,GAAG,aAAa;YAChB,QAAQ;SACT,EACD,MAAM,CACP,CAAC;KACH;IAED,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/E,MAAM,uBAAuB,CAC3B;QACE,OAAO,EAAE,aAAa,CAAC,OAAO;QAC9B,YAAY,EAAE,GAAG;QACjB,QAAQ;KACT,EACD,YAAY,CACb,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/assortment/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,9 @@ import convertTagsToLowerCase from '../utils/convertTagsToLowerCase';
|
|
|
7
7
|
export default async function updateAssortment(payload, { logger, authorId }, unchainedAPI) {
|
|
8
8
|
const { modules, userId } = unchainedAPI;
|
|
9
9
|
const { media, specification, products, children, filters, _id } = payload;
|
|
10
|
+
if (!(await modules.assortments.assortmentExists({ assortmentId: _id }))) {
|
|
11
|
+
throw new Error(`Can't update non-existing assortment ${_id}`);
|
|
12
|
+
}
|
|
10
13
|
if (specification) {
|
|
11
14
|
logger.debug('update assortment object', specification);
|
|
12
15
|
specification.tags = convertTagsToLowerCase(specification?.tags);
|
|
@@ -20,11 +23,6 @@ export default async function updateAssortment(payload, { logger, authorId }, un
|
|
|
20
23
|
}, unchainedAPI);
|
|
21
24
|
}
|
|
22
25
|
}
|
|
23
|
-
if (products || children || filters || media) {
|
|
24
|
-
if (!(await modules.assortments.assortmentExists({ assortmentId: _id }))) {
|
|
25
|
-
throw new Error(`Can't update non-existing assortment ${_id}`);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
26
|
if (products) {
|
|
29
27
|
logger.debug('update product products', products);
|
|
30
28
|
await upsertAssortmentProducts({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/assortment/update.ts"],"names":[],"mappings":"AACA,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AAErE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,gBAAgB,CAC5C,OAAY,EACZ,EAAE,MAAM,EAAE,QAAQ,EAAE,EACpB,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;IACzC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAE3E,IAAI,aAAa,EAAE;QACjB,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;QAExD,aAAa,CAAC,IAAI,GAAG,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAEjE,MAAM,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,GAAG,aAAa,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/assortment/update.ts"],"names":[],"mappings":"AACA,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AAErE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,gBAAgB,CAC5C,OAAY,EACZ,EAAE,MAAM,EAAE,QAAQ,EAAE,EACpB,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;IACzC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAE3E,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;QACxE,MAAM,IAAI,KAAK,CAAC,wCAAwC,GAAG,EAAE,CAAC,CAAC;KAChE;IAED,IAAI,aAAa,EAAE;QACjB,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;QAExD,aAAa,CAAC,IAAI,GAAG,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAEjE,MAAM,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,GAAG,aAAa,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;QAC3F,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;YAChF,MAAM,uBAAuB,CAC3B;gBACE,OAAO,EAAE,aAAa,CAAC,OAAO;gBAC9B,YAAY,EAAE,GAAG;gBACjB,QAAQ;aACT,EACD,YAAY,CACb,CAAC;SACH;KACF;IAED,IAAI,QAAQ,EAAE;QACZ,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC;QAClD,MAAM,wBAAwB,CAC5B;YACE,QAAQ,EAAE,QAAQ,IAAI,EAAE;YACxB,YAAY,EAAE,GAAG;YACjB,QAAQ;SACT,EACD,YAAY,CACb,CAAC;KACH;IAED,IAAI,QAAQ,EAAE;QACZ,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAC;QACrD,MAAM,wBAAwB,CAC5B;YACE,QAAQ,EAAE,QAAQ,IAAI,EAAE;YACxB,YAAY,EAAE,GAAG;YACjB,QAAQ;SACT,EACD,YAAY,CACb,CAAC;KACH;IAED,IAAI,OAAO,EAAE;QACX,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,uBAAuB,CAC3B;YACE,OAAO,EAAE,OAAO,IAAI,EAAE;YACtB,YAAY,EAAE,GAAG;YACjB,QAAQ;SACT,EACD,YAAY,CACb,CAAC;KACH;IACD,IAAI,KAAK,EAAE;QACT,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAC/C,MAAM,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;KACtF;IAED,OAAO;QACL,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,QAAQ;QACnB,GAAG;QACH,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
export default async ({ assortmentId, content, authorId }, { modules, userId }) => {
|
|
2
|
-
const assortment = await modules.assortments.findAssortment({ assortmentId });
|
|
3
|
-
if (!assortment)
|
|
4
|
-
throw new Error(`Can't update content of non-existing assortment ${assortmentId}`);
|
|
5
2
|
await Promise.all(Object.entries(content).map(async ([locale, { authorId: tAuthorId, ...localizedData }]) => {
|
|
6
3
|
return modules.assortments.texts.upsertLocalizedText(assortmentId, locale, localizedData, tAuthorId || authorId || userId);
|
|
7
4
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upsertAssortmentContent.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/assortment/upsertAssortmentContent.ts"],"names":[],"mappings":"AAGA,eAAe,KAAK,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAW,EAAE,EAAE;IACzF,MAAM,
|
|
1
|
+
{"version":3,"file":"upsertAssortmentContent.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/assortment/upsertAssortmentContent.ts"],"names":[],"mappings":"AAGA,eAAe,KAAK,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAW,EAAE,EAAE;IACzF,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CACzB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,aAAa,EAAE,CAA2B,EAAE,EAAE;QACtF,OAAO,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,mBAAmB,CAClD,YAAY,EACZ,MAAM,EACN,aAAa,EACb,SAAS,IAAI,QAAQ,IAAI,MAAM,CAChC,CAAC;IACJ,CAAC,CACF,CACF,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -9,9 +9,8 @@ export default async function createFilter(payload, { logger, authorId, createSh
|
|
|
9
9
|
if (!content)
|
|
10
10
|
throw new Error(`Localizable content is required when creating new filter${_id}`);
|
|
11
11
|
logger.debug('create filter object', specification);
|
|
12
|
-
let filter;
|
|
13
12
|
try {
|
|
14
|
-
|
|
13
|
+
await unchainedAPI.modules.filters.create({
|
|
15
14
|
...filterData,
|
|
16
15
|
_id,
|
|
17
16
|
options: options?.map((option) => option.value) || [],
|
|
@@ -22,16 +21,19 @@ export default async function createFilter(payload, { logger, authorId, createSh
|
|
|
22
21
|
if (!createShouldUpsertIfIDExists)
|
|
23
22
|
throw e;
|
|
24
23
|
logger.debug('entity already exists, falling back to update', specification);
|
|
25
|
-
|
|
24
|
+
await modules.filters.update(_id, {
|
|
26
25
|
...filterData,
|
|
27
26
|
options: options?.map((option) => option.value) || [],
|
|
28
27
|
authorId,
|
|
29
28
|
}, unchainedAPI, { skipInvalidation: true }, unchainedAPI.userId);
|
|
30
29
|
}
|
|
30
|
+
if (!(await modules.filters.filterExists({ filterId: _id }))) {
|
|
31
|
+
throw new Error(`Can't upsert filter ${_id}`);
|
|
32
|
+
}
|
|
31
33
|
logger.debug('create localized content for filter', content);
|
|
32
|
-
await upsertFilterContent({ content,
|
|
34
|
+
await upsertFilterContent({ content, filterId: _id, authorId }, unchainedAPI);
|
|
33
35
|
logger.debug('create localized content for filter options', content);
|
|
34
|
-
await upsertFilterOptionContent({ options,
|
|
36
|
+
await upsertFilterOptionContent({ options, filterId: _id }, unchainedAPI);
|
|
35
37
|
return {
|
|
36
38
|
entity: 'FILTER',
|
|
37
39
|
operation: 'create',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/filter/create.ts"],"names":[],"mappings":"AACA,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,YAAY,CACxC,OAAY,EACZ,EAAE,MAAM,EAAE,QAAQ,EAAE,4BAA4B,EAAE,EAClD,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;IACjC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAEvC,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,GAAG,EAAE,CAAC,CAAC;IAEjG,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC;IAE1D,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,2DAA2D,GAAG,EAAE,CAAC,CAAC;IAEhG,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IACpD,IAAI
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/filter/create.ts"],"names":[],"mappings":"AACA,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,YAAY,CACxC,OAAY,EACZ,EAAE,MAAM,EAAE,QAAQ,EAAE,4BAA4B,EAAE,EAClD,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;IACjC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAEvC,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,GAAG,EAAE,CAAC,CAAC;IAEjG,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC;IAE1D,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,2DAA2D,GAAG,EAAE,CAAC,CAAC;IAEhG,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IACpD,IAAI;QACF,MAAM,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CACvC;YACE,GAAG,UAAU;YACb,GAAG;YACH,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;YACrD,QAAQ;SACT,EACD,YAAY,EACZ,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAC1B,YAAY,CAAC,MAAM,CACpB,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,4BAA4B;YAAE,MAAM,CAAC,CAAC;QAE3C,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE,aAAa,CAAC,CAAC;QAC7E,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAC1B,GAAG,EACH;YACE,GAAG,UAAU;YACb,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;YACrD,QAAQ;SACT,EACD,YAAY,EACZ,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAC1B,YAAY,CAAC,MAAM,CACpB,CAAC;KACH;IAED,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;QAC5D,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;KAC/C;IAED,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,mBAAmB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;IAE9E,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE,OAAO,CAAC,CAAC;IACrE,MAAM,yBAAyB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;IAE1E,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,QAAQ;QACnB,GAAG;QACH,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -3,26 +3,25 @@ import upsertFilterOptionContent from './upsertFilterOptionContent';
|
|
|
3
3
|
export default async function updateFilter(payload, { authorId, logger }, unchainedAPI) {
|
|
4
4
|
const { modules } = unchainedAPI;
|
|
5
5
|
const { specification, _id } = payload;
|
|
6
|
-
if (!
|
|
7
|
-
throw new Error('
|
|
8
|
-
|
|
6
|
+
if (!(await modules.filters.filterExists({ filterId: _id }))) {
|
|
7
|
+
throw new Error(`Can't update non-existing filter ${_id}`);
|
|
8
|
+
}
|
|
9
9
|
const { content, options, ...filterData } = specification;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
throw new Error(`Can't update non-existing filter ${_id}`);
|
|
10
|
+
if (specification) {
|
|
11
|
+
logger.debug('update filter object', specification);
|
|
12
|
+
await modules.filters.update(_id, {
|
|
13
|
+
...filterData,
|
|
14
|
+
options: options?.map((option) => option.value) || [],
|
|
15
|
+
authorId,
|
|
16
|
+
}, unchainedAPI, { skipInvalidation: true }, unchainedAPI.userId);
|
|
18
17
|
}
|
|
19
18
|
if (content) {
|
|
20
19
|
logger.debug('replace localized content for filter', content);
|
|
21
|
-
await upsertFilterContent({ content,
|
|
20
|
+
await upsertFilterContent({ content, filterId: _id, authorId }, unchainedAPI);
|
|
22
21
|
}
|
|
23
22
|
if (options) {
|
|
24
23
|
logger.debug('replace localized content for filter options', content);
|
|
25
|
-
await upsertFilterOptionContent({ options,
|
|
24
|
+
await upsertFilterOptionContent({ options, filterId: _id }, unchainedAPI);
|
|
26
25
|
}
|
|
27
26
|
return {
|
|
28
27
|
entity: 'FILTER',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/filter/update.ts"],"names":[],"mappings":"AACA,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,YAAY,CACxC,OAAY,EACZ,EAAE,QAAQ,EAAE,MAAM,EAAqC,EACvD,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;IACjC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAEvC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/filter/update.ts"],"names":[],"mappings":"AACA,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,YAAY,CACxC,OAAY,EACZ,EAAE,QAAQ,EAAE,MAAM,EAAqC,EACvD,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;IACjC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAEvC,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;QAC5D,MAAM,IAAI,KAAK,CAAC,oCAAoC,GAAG,EAAE,CAAC,CAAC;KAC5D;IAED,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC;IAE1D,IAAI,aAAa,EAAE;QACjB,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;QACpD,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAC1B,GAAG,EACH;YACE,GAAG,UAAU;YACb,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;YACrD,QAAQ;SACT,EACD,YAAY,EACZ,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAC1B,YAAY,CAAC,MAAM,CACpB,CAAC;KACH;IAED,IAAI,OAAO,EAAE;QACX,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,OAAO,CAAC,CAAC;QAC9D,MAAM,mBAAmB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;KAC/E;IAED,IAAI,OAAO,EAAE;QACX,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,yBAAyB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;KAC3E;IAED,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,QAAQ;QACnB,GAAG;QACH,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Context } from '@unchainedshop/types/api';
|
|
2
|
-
export default function upsertFilterContent({ content,
|
|
2
|
+
export default function upsertFilterContent({ content, filterId, authorId }: {
|
|
3
3
|
content: any;
|
|
4
|
-
|
|
4
|
+
filterId: any;
|
|
5
5
|
authorId: any;
|
|
6
6
|
}, unchainedAPI: Context): Promise<({
|
|
7
7
|
authorId: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export default async function upsertFilterContent({ content,
|
|
1
|
+
export default async function upsertFilterContent({ content, filterId, authorId }, unchainedAPI) {
|
|
2
2
|
return Promise.all(Object.entries(content).map(async ([locale, { authorId: tAuthorId, ...localizedData }]) => {
|
|
3
|
-
return unchainedAPI.modules.filters.texts.upsertLocalizedText({ filterId
|
|
3
|
+
return unchainedAPI.modules.filters.texts.upsertLocalizedText({ filterId }, locale, localizedData, tAuthorId || authorId || unchainedAPI.userId);
|
|
4
4
|
}));
|
|
5
5
|
}
|
|
6
6
|
//# sourceMappingURL=upsertFilterContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upsertFilterContent.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/filter/upsertFilterContent.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,mBAAmB,
|
|
1
|
+
{"version":3,"file":"upsertFilterContent.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/filter/upsertFilterContent.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,mBAAmB,CAC/C,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAC/B,YAAqB;IAErB,OAAO,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CACzB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,aAAa,EAAE,CAAuB,EAAE,EAAE;QAClF,OAAO,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAC3D,EAAE,QAAQ,EAAE,EACZ,MAAM,EACN,aAAa,EACb,SAAS,IAAI,QAAQ,IAAI,YAAY,CAAC,MAAM,CAC7C,CAAC;IACJ,CAAC,CACF,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Context } from '@unchainedshop/types/api';
|
|
2
|
-
export default function upsertFilterOptionContent({ options,
|
|
2
|
+
export default function upsertFilterOptionContent({ options, filterId }: {
|
|
3
3
|
options: any;
|
|
4
|
-
|
|
4
|
+
filterId: any;
|
|
5
5
|
}, unchainedAPI: Context): Promise<any[]>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export default async function upsertFilterOptionContent({ options,
|
|
1
|
+
export default async function upsertFilterOptionContent({ options, filterId }, unchainedAPI) {
|
|
2
2
|
return Promise.all((options || []).map(async ({ content: optionContent, value: optionValue }) => {
|
|
3
3
|
await Promise.all(Object.entries(optionContent).map(async ([locale, { authorId, ...localizedData }]) => {
|
|
4
|
-
return unchainedAPI.modules.filters.texts.upsertLocalizedText({ filterId
|
|
4
|
+
return unchainedAPI.modules.filters.texts.upsertLocalizedText({ filterId, filterOptionValue: optionValue }, locale, localizedData, authorId || unchainedAPI.userId);
|
|
5
5
|
}));
|
|
6
6
|
}));
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upsertFilterOptionContent.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/filter/upsertFilterOptionContent.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,yBAAyB,CAAC,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"upsertFilterOptionContent.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/filter/upsertFilterOptionContent.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,yBAAyB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,YAAqB;IAClG,OAAO,OAAO,CAAC,GAAG,CAChB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE;QAC3E,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,GAAG,CAC/B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,aAAa,EAAE,CAAuB,EAAE,EAAE;YACvE,OAAO,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAC3D,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAC5C,MAAM,EACN,aAAa,EACb,QAAQ,IAAI,YAAY,CAAC,MAAM,CAChC,CAAC;QACJ,CAAC,CACF,CACF,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -27,6 +27,9 @@ export default async function createProduct(payload, { logger, authorId, createS
|
|
|
27
27
|
authorId,
|
|
28
28
|
}, userId);
|
|
29
29
|
}
|
|
30
|
+
if (!(await modules.products.productExists({ productId: _id }))) {
|
|
31
|
+
throw new Error(`Can't create product ${_id}, fields missing?`);
|
|
32
|
+
}
|
|
30
33
|
logger.debug('create localized content for product', specification.content);
|
|
31
34
|
await upsertProductContent({
|
|
32
35
|
content: specification.content,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/product/create.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,wCAAwC,MAAM,4CAA4C,CAAC;AAElG,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CACzC,OAAY,EACZ,EAAE,MAAM,EAAE,QAAQ,EAAE,4BAA4B,EAAE,EAClD,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;IACzC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAE1D,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,GAAG,EAAE,CAAC,CAAC;IAElG,IAAI,CAAC,aAAa,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,GAAG,EAAE,CAAC,CAAC;IAEpG,MAAM,WAAW,GAAG,wCAAwC,CAAC,aAAa,CAAC,CAAC;IAC5E,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC;IACnD,IAAI;QACF,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAC3B;YACE,GAAG,WAAW;YACd,GAAG;YACH,QAAQ;SACT,EACD,MAAM,CACP,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,4BAA4B;YAAE,MAAM,CAAC,CAAC;QAE3C,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE,aAAa,CAAC,CAAC;QAC7E,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAC3B,GAAG,EACH;YACE,GAAG,WAAW;YACd,QAAQ;SACT,EACD,MAAM,CACP,CAAC;KACH;IAED,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC5E,MAAM,oBAAoB,CACxB;QACE,OAAO,EAAE,aAAa,CAAC,OAAO;QAC9B,SAAS,EAAE,GAAG;QACd,QAAQ;KACT,EACD,YAAY,CACb,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,gBAAgB,CACpB;QACE,UAAU,EAAE,UAAU,IAAI,EAAE;QAC5B,SAAS,EAAE,GAAG;QACd,QAAQ;KACT,EACD,YAAY,CACb,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;IAC5C,MAAM,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;IAElF,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,QAAQ;QACnB,GAAG;QACH,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/product/create.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,wCAAwC,MAAM,4CAA4C,CAAC;AAElG,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CACzC,OAAY,EACZ,EAAE,MAAM,EAAE,QAAQ,EAAE,4BAA4B,EAAE,EAClD,YAAqB;IAErB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;IACzC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAE1D,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,GAAG,EAAE,CAAC,CAAC;IAElG,IAAI,CAAC,aAAa,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,GAAG,EAAE,CAAC,CAAC;IAEpG,MAAM,WAAW,GAAG,wCAAwC,CAAC,aAAa,CAAC,CAAC;IAC5E,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC;IACnD,IAAI;QACF,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAC3B;YACE,GAAG,WAAW;YACd,GAAG;YACH,QAAQ;SACT,EACD,MAAM,CACP,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,4BAA4B;YAAE,MAAM,CAAC,CAAC;QAE3C,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE,aAAa,CAAC,CAAC;QAC7E,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAC3B,GAAG,EACH;YACE,GAAG,WAAW;YACd,QAAQ;SACT,EACD,MAAM,CACP,CAAC;KACH;IAED,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;QAC/D,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,mBAAmB,CAAC,CAAC;KACjE;IAED,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC5E,MAAM,oBAAoB,CACxB;QACE,OAAO,EAAE,aAAa,CAAC,OAAO;QAC9B,SAAS,EAAE,GAAG;QACd,QAAQ;KACT,EACD,YAAY,CACb,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,gBAAgB,CACpB;QACE,UAAU,EAAE,UAAU,IAAI,EAAE;QAC5B,SAAS,EAAE,GAAG;QACd,QAAQ;KACT,EACD,YAAY,CACb,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;IAC5C,MAAM,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;IAElF,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,QAAQ;QACnB,GAAG;QACH,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -5,6 +5,9 @@ import transformSpecificationToProductStructure from './transformSpecificationTo
|
|
|
5
5
|
export default async function createProduct(payload, { logger, authorId }, unchainedAPI) {
|
|
6
6
|
const { modules, userId } = unchainedAPI;
|
|
7
7
|
const { specification, media, variations, _id } = payload;
|
|
8
|
+
if (!(await modules.products.productExists({ productId: _id }))) {
|
|
9
|
+
throw new Error(`Can't update non-existing product ${_id}`);
|
|
10
|
+
}
|
|
8
11
|
if (specification) {
|
|
9
12
|
const productData = transformSpecificationToProductStructure(specification);
|
|
10
13
|
logger.debug('update product object', productData);
|
|
@@ -21,11 +24,6 @@ export default async function createProduct(payload, { logger, authorId }, uncha
|
|
|
21
24
|
}, unchainedAPI);
|
|
22
25
|
}
|
|
23
26
|
}
|
|
24
|
-
if (variations || media) {
|
|
25
|
-
if (!(await modules.products.productExists({ productId: _id }))) {
|
|
26
|
-
throw new Error(`Can't update non-existing product ${_id}`);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
27
|
if (variations) {
|
|
30
28
|
logger.debug('replace variations', variations);
|
|
31
29
|
await upsertVariations({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/product/update.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,wCAAwC,MAAM,4CAA4C,CAAC;AAElG,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CAAC,OAAY,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,YAAqB;IACnG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;IACzC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAE1D,IAAI,aAAa,EAAE;QACjB,MAAM,WAAW,GAAG,wCAAwC,CAAC,aAAa,CAAC,CAAC;QAC5E,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC;QACnD,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAC3B,GAAG,EACH;YACE,GAAG,WAAW;YACd,QAAQ;SACT,EACD,MAAM,CACP,CAAC;QAEF,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;YAC7E,MAAM,oBAAoB,CACxB;gBACE,OAAO,EAAE,aAAa,CAAC,OAAO;gBAC9B,SAAS,EAAE,GAAG;gBACd,QAAQ;aACT,EACD,YAAY,CACb,CAAC;SACH;KACF;IAED,IAAI,UAAU,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/product/update.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,wCAAwC,MAAM,4CAA4C,CAAC;AAElG,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CAAC,OAAY,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,YAAqB;IACnG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;IACzC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAE1D,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;QAC/D,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,EAAE,CAAC,CAAC;KAC7D;IAED,IAAI,aAAa,EAAE;QACjB,MAAM,WAAW,GAAG,wCAAwC,CAAC,aAAa,CAAC,CAAC;QAC5E,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC;QACnD,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAC3B,GAAG,EACH;YACE,GAAG,WAAW;YACd,QAAQ;SACT,EACD,MAAM,CACP,CAAC;QAEF,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;YAC7E,MAAM,oBAAoB,CACxB;gBACE,OAAO,EAAE,aAAa,CAAC,OAAO;gBAC9B,SAAS,EAAE,GAAG;gBACd,QAAQ;aACT,EACD,YAAY,CACb,CAAC;SACH;KACF;IAED,IAAI,UAAU,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;QAC/C,MAAM,gBAAgB,CACpB;YACE,UAAU,EAAE,UAAU,IAAI,EAAE;YAC5B,SAAS,EAAE,GAAG;YACd,QAAQ;SACT,EACD,YAAY,CACb,CAAC;KACH;IAED,IAAI,KAAK,EAAE;QACT,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC7C,MAAM,WAAW,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;KACtE;IAED,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,QAAQ;QACnB,GAAG;QACH,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
export default async function upsertProductContent({ productId, content, authorId }, { modules, userId }) {
|
|
2
|
-
const product = await modules.products.findProduct({ productId });
|
|
3
|
-
if (!product)
|
|
4
|
-
throw new Error(`Can't update content of non-existing product ${productId}`);
|
|
5
2
|
await Promise.all(Object.entries(content).map(async ([locale, { authorId: tAuthorId, ...localizedData }]) => {
|
|
6
3
|
return modules.products.texts.upsertLocalizedText(productId, locale, localizedData, tAuthorId || authorId || userId);
|
|
7
4
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upsertProductContent.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/product/upsertProductContent.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,oBAAoB,CAChD,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAChC,EAAE,OAAO,EAAE,MAAM,EAAW;IAE5B,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"upsertProductContent.js","sourceRoot":"","sources":["../../../../src/bulk-importer/handlers/product/upsertProductContent.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,oBAAoB,CAChD,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAChC,EAAE,OAAO,EAAE,MAAM,EAAW;IAE5B,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CACzB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,aAAa,EAAE,CAAwB,EAAE,EAAE;QACnF,OAAO,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAC/C,SAAS,EACT,MAAM,EACN,aAAa,EACb,SAAS,IAAI,QAAQ,IAAI,MAAM,CAChC,CAAC;IACJ,CAAC,CACF,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
declare const _default: (unchainedAPI:
|
|
1
|
+
import { UnchainedCore } from '@unchainedshop/types/core';
|
|
2
|
+
declare const _default: (unchainedAPI: UnchainedCore, username: string, secret: string) => Promise<void>;
|
|
3
3
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setAccessToken.js","sourceRoot":"","sources":["../../src/context/setAccessToken.ts"],"names":[],"mappings":"AAEA,eAAe,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"setAccessToken.js","sourceRoot":"","sources":["../../src/context/setAccessToken.ts"],"names":[],"mappings":"AAEA,eAAe,KAAK,EAAE,YAA2B,EAAE,QAAgB,EAAE,MAAc,EAAE,EAAE;IACrF,MAAM,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CACzC,EAAE,QAAQ,EAAE,EACZ;QACE,IAAI,EAAE;YACJ,gBAAgB,EAAE;gBAChB,MAAM;aACP;SACF;KACK,EACR,EAAE,CACH,CAAC;AACJ,CAAC,CAAC"}
|
package/lib/startPlatform.js
CHANGED
|
@@ -62,7 +62,7 @@ export const startPlatform = async ({ modules = {}, services = {}, typeDefs = []
|
|
|
62
62
|
...generateRoleActionTypeDefs(),
|
|
63
63
|
];
|
|
64
64
|
// Start the graphQL server
|
|
65
|
-
startAPIServer({
|
|
65
|
+
await startAPIServer({
|
|
66
66
|
unchainedAPI,
|
|
67
67
|
roles: configuredRoles,
|
|
68
68
|
typeDefs: [...generatedTypeDefs, ...typeDefs],
|
package/lib/startPlatform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startPlatform.js","sourceRoot":"","sources":["../src/startPlatform.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"startPlatform.js","sourceRoot":"","sources":["../src/startPlatform.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unchainedshop/platform",
|
|
3
|
-
"version": "2.0.0-
|
|
3
|
+
"version": "2.0.0-beta7",
|
|
4
4
|
"main": "lib/platform-index.js",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./lib/platform-index.js",
|
|
@@ -30,25 +30,25 @@
|
|
|
30
30
|
},
|
|
31
31
|
"homepage": "https://github.com/unchainedshop/unchained#readme",
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@unchainedshop/api": "^2.0.0-
|
|
34
|
-
"@unchainedshop/core": "^2.0.0-
|
|
35
|
-
"@unchainedshop/events": "^2.0.0-
|
|
36
|
-
"@unchainedshop/file-upload": "^2.0.0-
|
|
37
|
-
"@unchainedshop/logger": "^2.0.0-
|
|
38
|
-
"@unchainedshop/mongodb": "^2.0.0-
|
|
39
|
-
"@unchainedshop/plugins": "^2.0.0-
|
|
40
|
-
"@unchainedshop/roles": "^2.0.0-
|
|
41
|
-
"@unchainedshop/utils": "^2.0.0-
|
|
33
|
+
"@unchainedshop/api": "^2.0.0-beta7",
|
|
34
|
+
"@unchainedshop/core": "^2.0.0-beta7",
|
|
35
|
+
"@unchainedshop/events": "^2.0.0-beta7",
|
|
36
|
+
"@unchainedshop/file-upload": "^2.0.0-beta7",
|
|
37
|
+
"@unchainedshop/logger": "^2.0.0-beta7",
|
|
38
|
+
"@unchainedshop/mongodb": "^2.0.0-beta7",
|
|
39
|
+
"@unchainedshop/plugins": "^2.0.0-beta7",
|
|
40
|
+
"@unchainedshop/roles": "^2.0.0-beta7",
|
|
41
|
+
"@unchainedshop/utils": "^2.0.0-beta7",
|
|
42
42
|
"event-iterator": "^2.0.0",
|
|
43
43
|
"JSONStream": "^1.3.5",
|
|
44
44
|
"moniker": "0.1.2",
|
|
45
45
|
"open": "^8.4.0"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@types/node": "^
|
|
49
|
-
"@unchainedshop/types": "^2.0.0-
|
|
48
|
+
"@types/node": "^18.11.9",
|
|
49
|
+
"@unchainedshop/types": "^2.0.0-beta7",
|
|
50
50
|
"cross-env": "^7.0.3",
|
|
51
|
-
"jest": "^29.
|
|
51
|
+
"jest": "^29.3.1",
|
|
52
52
|
"ts-jest": "^29.0.3",
|
|
53
53
|
"typescript": "^4.8.4"
|
|
54
54
|
}
|
|
@@ -107,7 +107,7 @@ export const createBulkImporterFactory = (db, bulkImporterOptions: any): BulkImp
|
|
|
107
107
|
},
|
|
108
108
|
invalidateCaches: async (unchainedAPI: UnchainedCore) => {
|
|
109
109
|
if (skipCacheInvalidation) return;
|
|
110
|
-
await unchainedAPI.modules.assortments.invalidateCache({});
|
|
110
|
+
await unchainedAPI.modules.assortments.invalidateCache({}, { skipUpstreamTraversal: true });
|
|
111
111
|
await unchainedAPI.modules.filters.invalidateCache({}, unchainedAPI);
|
|
112
112
|
},
|
|
113
113
|
};
|
|
@@ -36,6 +36,10 @@ export default async function createAssortment(
|
|
|
36
36
|
);
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
+
if (!(await modules.assortments.assortmentExists({ assortmentId: _id }))) {
|
|
40
|
+
throw new Error(`Can't create assortment ${_id}, fields missing?`);
|
|
41
|
+
}
|
|
42
|
+
|
|
39
43
|
logger.debug('create localized content for assortment', specification.content);
|
|
40
44
|
await upsertAssortmentContent(
|
|
41
45
|
{
|
|
@@ -46,7 +50,7 @@ export default async function createAssortment(
|
|
|
46
50
|
unchainedAPI,
|
|
47
51
|
);
|
|
48
52
|
|
|
49
|
-
logger.debug('create
|
|
53
|
+
logger.debug('create assortment products', products);
|
|
50
54
|
await upsertAssortmentProducts(
|
|
51
55
|
{
|
|
52
56
|
products: products || [],
|
|
@@ -56,7 +60,7 @@ export default async function createAssortment(
|
|
|
56
60
|
unchainedAPI,
|
|
57
61
|
);
|
|
58
62
|
|
|
59
|
-
logger.debug('create assortment children',
|
|
63
|
+
logger.debug('create assortment children', children);
|
|
60
64
|
await upsertAssortmentChildren(
|
|
61
65
|
{
|
|
62
66
|
children: children || [],
|
|
@@ -66,7 +70,7 @@ export default async function createAssortment(
|
|
|
66
70
|
unchainedAPI,
|
|
67
71
|
);
|
|
68
72
|
|
|
69
|
-
logger.debug('create assortment filters',
|
|
73
|
+
logger.debug('create assortment filters', filters);
|
|
70
74
|
await upsertAssortmentFilters(
|
|
71
75
|
{
|
|
72
76
|
filters: filters || [],
|
|
@@ -14,13 +14,16 @@ export default async function updateAssortment(
|
|
|
14
14
|
const { modules, userId } = unchainedAPI;
|
|
15
15
|
const { media, specification, products, children, filters, _id } = payload;
|
|
16
16
|
|
|
17
|
+
if (!(await modules.assortments.assortmentExists({ assortmentId: _id }))) {
|
|
18
|
+
throw new Error(`Can't update non-existing assortment ${_id}`);
|
|
19
|
+
}
|
|
20
|
+
|
|
17
21
|
if (specification) {
|
|
18
22
|
logger.debug('update assortment object', specification);
|
|
19
23
|
|
|
20
24
|
specification.tags = convertTagsToLowerCase(specification?.tags);
|
|
21
25
|
|
|
22
26
|
await unchainedAPI.modules.assortments.update(_id, { ...specification, authorId }, userId);
|
|
23
|
-
|
|
24
27
|
if (specification.content) {
|
|
25
28
|
logger.debug('replace localized content for assortment', specification.content);
|
|
26
29
|
await upsertAssortmentContent(
|
|
@@ -34,12 +37,6 @@ export default async function updateAssortment(
|
|
|
34
37
|
}
|
|
35
38
|
}
|
|
36
39
|
|
|
37
|
-
if (products || children || filters || media) {
|
|
38
|
-
if (!(await modules.assortments.assortmentExists({ assortmentId: _id }))) {
|
|
39
|
-
throw new Error(`Can't update non-existing assortment ${_id}`);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
|
|
43
40
|
if (products) {
|
|
44
41
|
logger.debug('update product products', products);
|
|
45
42
|
await upsertAssortmentProducts(
|
|
@@ -2,9 +2,6 @@ import { Context } from '@unchainedshop/types/api';
|
|
|
2
2
|
import { AssortmentText } from '@unchainedshop/types/assortments';
|
|
3
3
|
|
|
4
4
|
export default async ({ assortmentId, content, authorId }, { modules, userId }: Context) => {
|
|
5
|
-
const assortment = await modules.assortments.findAssortment({ assortmentId });
|
|
6
|
-
if (!assortment) throw new Error(`Can't update content of non-existing assortment ${assortmentId}`);
|
|
7
|
-
|
|
8
5
|
await Promise.all(
|
|
9
6
|
Object.entries(content).map(
|
|
10
7
|
async ([locale, { authorId: tAuthorId, ...localizedData }]: [string, AssortmentText]) => {
|
|
@@ -17,9 +17,8 @@ export default async function createFilter(
|
|
|
17
17
|
if (!content) throw new Error(`Localizable content is required when creating new filter${_id}`);
|
|
18
18
|
|
|
19
19
|
logger.debug('create filter object', specification);
|
|
20
|
-
let filter;
|
|
21
20
|
try {
|
|
22
|
-
|
|
21
|
+
await unchainedAPI.modules.filters.create(
|
|
23
22
|
{
|
|
24
23
|
...filterData,
|
|
25
24
|
_id,
|
|
@@ -34,7 +33,7 @@ export default async function createFilter(
|
|
|
34
33
|
if (!createShouldUpsertIfIDExists) throw e;
|
|
35
34
|
|
|
36
35
|
logger.debug('entity already exists, falling back to update', specification);
|
|
37
|
-
|
|
36
|
+
await modules.filters.update(
|
|
38
37
|
_id,
|
|
39
38
|
{
|
|
40
39
|
...filterData,
|
|
@@ -47,11 +46,15 @@ export default async function createFilter(
|
|
|
47
46
|
);
|
|
48
47
|
}
|
|
49
48
|
|
|
49
|
+
if (!(await modules.filters.filterExists({ filterId: _id }))) {
|
|
50
|
+
throw new Error(`Can't upsert filter ${_id}`);
|
|
51
|
+
}
|
|
52
|
+
|
|
50
53
|
logger.debug('create localized content for filter', content);
|
|
51
|
-
await upsertFilterContent({ content,
|
|
54
|
+
await upsertFilterContent({ content, filterId: _id, authorId }, unchainedAPI);
|
|
52
55
|
|
|
53
56
|
logger.debug('create localized content for filter options', content);
|
|
54
|
-
await upsertFilterOptionContent({ options,
|
|
57
|
+
await upsertFilterOptionContent({ options, filterId: _id }, unchainedAPI);
|
|
55
58
|
|
|
56
59
|
return {
|
|
57
60
|
entity: 'FILTER',
|
|
@@ -10,34 +10,35 @@ export default async function updateFilter(
|
|
|
10
10
|
const { modules } = unchainedAPI;
|
|
11
11
|
const { specification, _id } = payload;
|
|
12
12
|
|
|
13
|
-
if (!
|
|
13
|
+
if (!(await modules.filters.filterExists({ filterId: _id }))) {
|
|
14
|
+
throw new Error(`Can't update non-existing filter ${_id}`);
|
|
15
|
+
}
|
|
14
16
|
|
|
15
|
-
logger.debug('update filter object', specification);
|
|
16
17
|
const { content, options, ...filterData } = specification;
|
|
17
|
-
const filter = await modules.filters.update(
|
|
18
|
-
_id,
|
|
19
|
-
{
|
|
20
|
-
...filterData,
|
|
21
|
-
options: options?.map((option) => option.value) || [],
|
|
22
|
-
authorId,
|
|
23
|
-
},
|
|
24
|
-
unchainedAPI,
|
|
25
|
-
{ skipInvalidation: true },
|
|
26
|
-
unchainedAPI.userId,
|
|
27
|
-
);
|
|
28
18
|
|
|
29
|
-
if (
|
|
30
|
-
|
|
19
|
+
if (specification) {
|
|
20
|
+
logger.debug('update filter object', specification);
|
|
21
|
+
await modules.filters.update(
|
|
22
|
+
_id,
|
|
23
|
+
{
|
|
24
|
+
...filterData,
|
|
25
|
+
options: options?.map((option) => option.value) || [],
|
|
26
|
+
authorId,
|
|
27
|
+
},
|
|
28
|
+
unchainedAPI,
|
|
29
|
+
{ skipInvalidation: true },
|
|
30
|
+
unchainedAPI.userId,
|
|
31
|
+
);
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
if (content) {
|
|
34
35
|
logger.debug('replace localized content for filter', content);
|
|
35
|
-
await upsertFilterContent({ content,
|
|
36
|
+
await upsertFilterContent({ content, filterId: _id, authorId }, unchainedAPI);
|
|
36
37
|
}
|
|
37
38
|
|
|
38
39
|
if (options) {
|
|
39
40
|
logger.debug('replace localized content for filter options', content);
|
|
40
|
-
await upsertFilterOptionContent({ options,
|
|
41
|
+
await upsertFilterOptionContent({ options, filterId: _id }, unchainedAPI);
|
|
41
42
|
}
|
|
42
43
|
|
|
43
44
|
return {
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { Context } from '@unchainedshop/types/api';
|
|
2
2
|
import { FilterText } from '@unchainedshop/types/filters';
|
|
3
3
|
|
|
4
|
-
export default async function upsertFilterContent(
|
|
4
|
+
export default async function upsertFilterContent(
|
|
5
|
+
{ content, filterId, authorId },
|
|
6
|
+
unchainedAPI: Context,
|
|
7
|
+
) {
|
|
5
8
|
return Promise.all(
|
|
6
9
|
Object.entries(content).map(
|
|
7
10
|
async ([locale, { authorId: tAuthorId, ...localizedData }]: [string, FilterText]) => {
|
|
8
11
|
return unchainedAPI.modules.filters.texts.upsertLocalizedText(
|
|
9
|
-
{ filterId
|
|
12
|
+
{ filterId },
|
|
10
13
|
locale,
|
|
11
14
|
localizedData,
|
|
12
15
|
tAuthorId || authorId || unchainedAPI.userId,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { Context } from '@unchainedshop/types/api';
|
|
2
2
|
import { FilterText } from '@unchainedshop/types/filters';
|
|
3
3
|
|
|
4
|
-
export default async function upsertFilterOptionContent({ options,
|
|
4
|
+
export default async function upsertFilterOptionContent({ options, filterId }, unchainedAPI: Context) {
|
|
5
5
|
return Promise.all(
|
|
6
6
|
(options || []).map(async ({ content: optionContent, value: optionValue }) => {
|
|
7
7
|
await Promise.all(
|
|
8
8
|
Object.entries(optionContent).map(
|
|
9
9
|
async ([locale, { authorId, ...localizedData }]: [string, FilterText]) => {
|
|
10
10
|
return unchainedAPI.modules.filters.texts.upsertLocalizedText(
|
|
11
|
-
{ filterId
|
|
11
|
+
{ filterId, filterOptionValue: optionValue },
|
|
12
12
|
locale,
|
|
13
13
|
localizedData,
|
|
14
14
|
authorId || unchainedAPI.userId,
|
|
@@ -41,6 +41,10 @@ export default async function createProduct(
|
|
|
41
41
|
);
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
+
if (!(await modules.products.productExists({ productId: _id }))) {
|
|
45
|
+
throw new Error(`Can't create product ${_id}, fields missing?`);
|
|
46
|
+
}
|
|
47
|
+
|
|
44
48
|
logger.debug('create localized content for product', specification.content);
|
|
45
49
|
await upsertProductContent(
|
|
46
50
|
{
|
|
@@ -8,6 +8,10 @@ export default async function createProduct(payload: any, { logger, authorId },
|
|
|
8
8
|
const { modules, userId } = unchainedAPI;
|
|
9
9
|
const { specification, media, variations, _id } = payload;
|
|
10
10
|
|
|
11
|
+
if (!(await modules.products.productExists({ productId: _id }))) {
|
|
12
|
+
throw new Error(`Can't update non-existing product ${_id}`);
|
|
13
|
+
}
|
|
14
|
+
|
|
11
15
|
if (specification) {
|
|
12
16
|
const productData = transformSpecificationToProductStructure(specification);
|
|
13
17
|
logger.debug('update product object', productData);
|
|
@@ -33,12 +37,6 @@ export default async function createProduct(payload: any, { logger, authorId },
|
|
|
33
37
|
}
|
|
34
38
|
}
|
|
35
39
|
|
|
36
|
-
if (variations || media) {
|
|
37
|
-
if (!(await modules.products.productExists({ productId: _id }))) {
|
|
38
|
-
throw new Error(`Can't update non-existing product ${_id}`);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
40
|
if (variations) {
|
|
43
41
|
logger.debug('replace variations', variations);
|
|
44
42
|
await upsertVariations(
|
|
@@ -5,9 +5,6 @@ export default async function upsertProductContent(
|
|
|
5
5
|
{ productId, content, authorId },
|
|
6
6
|
{ modules, userId }: Context,
|
|
7
7
|
) {
|
|
8
|
-
const product = await modules.products.findProduct({ productId });
|
|
9
|
-
if (!product) throw new Error(`Can't update content of non-existing product ${productId}`);
|
|
10
|
-
|
|
11
8
|
await Promise.all(
|
|
12
9
|
Object.entries(content).map(
|
|
13
10
|
async ([locale, { authorId: tAuthorId, ...localizedData }]: [string, ProductText]) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UnchainedCore } from '@unchainedshop/types/core';
|
|
2
2
|
|
|
3
|
-
export default async (unchainedAPI:
|
|
3
|
+
export default async (unchainedAPI: UnchainedCore, username: string, secret: string) => {
|
|
4
4
|
await unchainedAPI.modules.users.updateUser(
|
|
5
5
|
{ username },
|
|
6
6
|
{
|
package/src/startPlatform.ts
CHANGED