@unchainedshop/core-assortments 2.0.0-beta8 → 2.0.0-beta9
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/jest.config.js +9 -0
- package/lib/db/AssortmentMediaSchema.js +0 -2
- package/lib/db/AssortmentMediaSchema.js.map +1 -1
- package/lib/db/AssortmentsSchema.js +0 -5
- package/lib/db/AssortmentsSchema.js.map +1 -1
- package/lib/migrations/addMigrations.js +1 -1
- package/lib/migrations/addMigrations.js.map +1 -1
- package/lib/module/configureAssortmentFiltersModule.js +2 -5
- package/lib/module/configureAssortmentFiltersModule.js.map +1 -1
- package/lib/module/configureAssortmentLinksModule.js +15 -7
- package/lib/module/configureAssortmentLinksModule.js.map +1 -1
- package/lib/module/configureAssortmentMediaModule.js +8 -13
- package/lib/module/configureAssortmentMediaModule.js.map +1 -1
- package/lib/module/configureAssortmentProductsModule.js +3 -7
- package/lib/module/configureAssortmentProductsModule.js.map +1 -1
- package/lib/module/configureAssortmentTextsModule.js +12 -10
- package/lib/module/configureAssortmentTextsModule.js.map +1 -1
- package/lib/module/configureAssortmentsModule.d.ts +3 -1
- package/lib/module/configureAssortmentsModule.js +20 -16
- package/lib/module/configureAssortmentsModule.js.map +1 -1
- package/lib/utils/tree-zipper/zipTreeByDeepness.d.ts +8 -0
- package/lib/utils/tree-zipper/zipTreeByDeepness.js +5 -5
- package/lib/utils/tree-zipper/zipTreeByDeepness.js.map +1 -1
- package/package.json +11 -10
- package/src/db/AssortmentMediaSchema.js +0 -2
- package/src/db/AssortmentsSchema.js +0 -5
- package/src/migrations/addMigrations.ts +1 -1
- package/src/module/configureAssortmentFiltersModule.ts +2 -5
- package/src/module/configureAssortmentLinksModule.ts +15 -7
- package/src/module/configureAssortmentMediaModule.ts +14 -28
- package/src/module/configureAssortmentProductsModule.ts +3 -7
- package/src/module/configureAssortmentTextsModule.ts +11 -13
- package/src/module/configureAssortmentsModule.ts +43 -41
- package/src/utils/tree-zipper/zipTreeByDeepness.ts +5 -5
- package/tests/assortments-index.test.ts +153 -29
package/jest.config.js
CHANGED
|
@@ -7,7 +7,6 @@ export const AssortmentMediaSchema = new SimpleSchema({
|
|
|
7
7
|
tags: Array,
|
|
8
8
|
'tags.$': String,
|
|
9
9
|
meta: { type: Object, blackbox: true },
|
|
10
|
-
authorId: { type: String, required: true },
|
|
11
10
|
...Schemas.timestampFields,
|
|
12
11
|
}, { requiredByDefault: false });
|
|
13
12
|
export const AssortmentMediaTextsSchema = new SimpleSchema({
|
|
@@ -16,7 +15,6 @@ export const AssortmentMediaTextsSchema = new SimpleSchema({
|
|
|
16
15
|
required: true,
|
|
17
16
|
},
|
|
18
17
|
locale: String,
|
|
19
|
-
authorId: { type: String, required: true },
|
|
20
18
|
title: String,
|
|
21
19
|
subtitle: String,
|
|
22
20
|
...Schemas.timestampFields,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssortmentMediaSchema.js","sourceRoot":"","sources":["../../src/db/AssortmentMediaSchema.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,YAAY,CACnD;IACE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACzC,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC9C,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACzC,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACtC,
|
|
1
|
+
{"version":3,"file":"AssortmentMediaSchema.js","sourceRoot":"","sources":["../../src/db/AssortmentMediaSchema.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,YAAY,CACnD;IACE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACzC,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC9C,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACzC,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACtC,GAAG,OAAO,CAAC,eAAe;CAC3B,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,YAAY,CACxD;IACE,iBAAiB,EAAE;QACjB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;KACf;IACD,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,MAAM;IAChB,GAAG,OAAO,CAAC,eAAe;CAC3B,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Schemas } from '@unchainedshop/utils';
|
|
2
2
|
import SimpleSchema from 'simpl-schema';
|
|
3
3
|
export const AssortmentsSchema = new SimpleSchema({
|
|
4
|
-
authorId: { type: String, required: true },
|
|
5
4
|
isActive: Boolean,
|
|
6
5
|
isBase: Boolean,
|
|
7
6
|
isRoot: Boolean,
|
|
@@ -15,7 +14,6 @@ export const AssortmentsSchema = new SimpleSchema({
|
|
|
15
14
|
}, { requiredByDefault: false });
|
|
16
15
|
export const AssortmentTextsSchema = new SimpleSchema({
|
|
17
16
|
assortmentId: { type: String, required: true },
|
|
18
|
-
authorId: { type: String, required: true },
|
|
19
17
|
description: String,
|
|
20
18
|
locale: { type: String, required: true },
|
|
21
19
|
slug: String,
|
|
@@ -25,7 +23,6 @@ export const AssortmentTextsSchema = new SimpleSchema({
|
|
|
25
23
|
}, { requiredByDefault: false });
|
|
26
24
|
export const AssortmentProductsSchema = new SimpleSchema({
|
|
27
25
|
assortmentId: { type: String, required: true },
|
|
28
|
-
authorId: { type: String, required: true },
|
|
29
26
|
meta: { type: Object, blackbox: true },
|
|
30
27
|
productId: { type: String, required: true },
|
|
31
28
|
sortKey: { type: Number, required: true },
|
|
@@ -34,7 +31,6 @@ export const AssortmentProductsSchema = new SimpleSchema({
|
|
|
34
31
|
...Schemas.timestampFields,
|
|
35
32
|
}, { requiredByDefault: false });
|
|
36
33
|
export const AssortmentLinksSchema = new SimpleSchema({
|
|
37
|
-
authorId: { type: String, required: true },
|
|
38
34
|
childAssortmentId: { type: String, required: true },
|
|
39
35
|
meta: { type: Object, blackbox: true },
|
|
40
36
|
parentAssortmentId: { type: String, required: true },
|
|
@@ -45,7 +41,6 @@ export const AssortmentLinksSchema = new SimpleSchema({
|
|
|
45
41
|
}, { requiredByDefault: false });
|
|
46
42
|
export const AssortmentFiltersSchema = new SimpleSchema({
|
|
47
43
|
assortmentId: { type: String, required: true },
|
|
48
|
-
authorId: { type: String, required: true },
|
|
49
44
|
filterId: { type: String, required: true },
|
|
50
45
|
meta: { type: Object, blackbox: true },
|
|
51
46
|
sortKey: { type: Number, required: true },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssortmentsSchema.js","sourceRoot":"","sources":["../../src/db/AssortmentsSchema.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,YAAY,CAC/C;IACE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"AssortmentsSchema.js","sourceRoot":"","sources":["../../src/db/AssortmentsSchema.js"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@ export default function addMigrations(repository) {
|
|
|
24
24
|
name: 'Move _cachedProductIds cache to own collection in order to save a lot of bandwidth',
|
|
25
25
|
up: async () => {
|
|
26
26
|
const { Assortments, AssortmentProductIdCache } = await AssortmentsCollection(repository.db);
|
|
27
|
-
const assortments = await Assortments.find({ _cachedProductIds: { $exists: true } }, { projection: { _id: true, _cachedProductIds: true } }).toArray();
|
|
27
|
+
const assortments = await Assortments.find({ _cachedProductIds: { $exists: true }, deleted: null }, { projection: { _id: true, _cachedProductIds: true } }).toArray();
|
|
28
28
|
await Promise.all(assortments.map(async (assortment) => {
|
|
29
29
|
try {
|
|
30
30
|
// eslint-disable-next-line
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addMigrations.js","sourceRoot":"","sources":["../../src/migrations/addMigrations.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,sBAAsB,GAAG,KAAK,EAAE,UAA2B,EAAE,EAAE;IACnE,IAAI,IAAI,GAAG,UAAU,CAAC,yBAAyB,EAAE,CAAC;IAClD,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IACtE,gDAAgD;IAChD,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,MAAM,EAAE;QAC9B,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACjE,KAAK,IAAI,CAAC,CAAC;QACX,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;QAC3E,IAAI,KAAK,GAAG,GAAG,KAAK,CAAC,EAAE;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,GAAG,UAAU,CAAC,yBAAyB,EAAE,CAAC;YAC9C,KAAK,GAAG,CAAC,CAAC;SACX;KACF;IACD,IAAI,KAAK,GAAG,CAAC;QAAE,IAAI,CAAC,OAAO,EAAE,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,UAA0C;IAC9E,UAAU,EAAE,QAAQ,CAAC;QACnB,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,oFAAoF;QAC1F,EAAE,EAAE,KAAK,IAAI,EAAE;YACb,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,GAAG,MAAM,qBAAqB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC7F,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,IAAI,CACxC,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"addMigrations.js","sourceRoot":"","sources":["../../src/migrations/addMigrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ export const configureAssortmentFiltersModule = ({ AssortmentFilters, }) => {
|
|
|
22
22
|
}).map((filter) => filter.filterId);
|
|
23
23
|
return filters.toArray();
|
|
24
24
|
},
|
|
25
|
-
create: async (doc
|
|
25
|
+
create: async (doc) => {
|
|
26
26
|
const { _id, assortmentId, filterId, sortKey, ...rest } = doc;
|
|
27
27
|
const selector = {
|
|
28
28
|
...(_id ? generateDbFilterById(_id) : {}),
|
|
@@ -31,7 +31,6 @@ export const configureAssortmentFiltersModule = ({ AssortmentFilters, }) => {
|
|
|
31
31
|
};
|
|
32
32
|
const $set = {
|
|
33
33
|
updated: new Date(),
|
|
34
|
-
updatedBy: userId,
|
|
35
34
|
...rest,
|
|
36
35
|
};
|
|
37
36
|
const $setOnInsert = {
|
|
@@ -39,7 +38,6 @@ export const configureAssortmentFiltersModule = ({ AssortmentFilters, }) => {
|
|
|
39
38
|
filterId,
|
|
40
39
|
assortmentId,
|
|
41
40
|
created: new Date(),
|
|
42
|
-
createdBy: userId,
|
|
43
41
|
};
|
|
44
42
|
if (!doc.sortKey) {
|
|
45
43
|
// Get next sort key
|
|
@@ -85,13 +83,12 @@ export const configureAssortmentFiltersModule = ({ AssortmentFilters, }) => {
|
|
|
85
83
|
await AssortmentFilters.updateOne(selector, modifier);
|
|
86
84
|
return AssortmentFilters.findOne(selector, {});
|
|
87
85
|
},
|
|
88
|
-
updateManualOrder: async ({ sortKeys }
|
|
86
|
+
updateManualOrder: async ({ sortKeys }) => {
|
|
89
87
|
const changedAssortmentFilterIds = await Promise.all(sortKeys.map(async ({ assortmentFilterId, sortKey }) => {
|
|
90
88
|
await AssortmentFilters.updateOne(generateDbFilterById(assortmentFilterId), {
|
|
91
89
|
$set: {
|
|
92
90
|
sortKey: sortKey + 1,
|
|
93
91
|
updated: new Date(),
|
|
94
|
-
updatedBy: userId,
|
|
95
92
|
},
|
|
96
93
|
});
|
|
97
94
|
return assortmentFilterId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configureAssortmentFiltersModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentFiltersModule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAEhF,MAAM,wBAAwB,GAAG;IAC/B,uBAAuB;IACvB,0BAA0B;IAC1B,4BAA4B;CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,EAC/C,iBAAiB,GAGlB,EAAgC,EAAE;IACjC,cAAc,CAAC,wBAAwB,CAAC,CAAC;IAEzC,OAAO;QACL,UAAU,EAAE,KAAK,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE;YAC3C,OAAO,iBAAiB,CAAC,OAAO,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,WAAW,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,OAA+B,EAAE,EAAE;YACvE,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,EAAE,OAAO,CAAC,CAAC;YAClE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;QAED,aAAa,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CACpC,EAAE,YAAY,EAAE,EAChB;gBACE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;gBACpB,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;aAC5B,CACF,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAEnC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,GAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"configureAssortmentFiltersModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentFiltersModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { emit, registerEvents } from '@unchainedshop/events';
|
|
2
2
|
import { generateDbFilterById, generateDbObjectId } from '@unchainedshop/utils';
|
|
3
|
+
import { walkUpFromAssortment } from '../utils/breadcrumbs/build-paths';
|
|
4
|
+
import { resolveAssortmentLinkFromDatabase } from '../utils/breadcrumbs/resolveAssortmentLinkFromDatabase';
|
|
3
5
|
const ASSORTMENT_LINK_EVENTS = [
|
|
4
6
|
'ASSORTMENT_ADD_LINK',
|
|
5
7
|
'ASSORTMENT_REMOVE_LINK',
|
|
@@ -28,7 +30,7 @@ export const configureAssortmentLinksModule = ({ AssortmentLinks, invalidateCach
|
|
|
28
30
|
return links.toArray();
|
|
29
31
|
},
|
|
30
32
|
// Mutations
|
|
31
|
-
create: async (doc, options
|
|
33
|
+
create: async (doc, options) => {
|
|
32
34
|
const { _id: assortmentLinkId, parentAssortmentId, childAssortmentId, sortKey, ...rest } = doc;
|
|
33
35
|
const selector = {
|
|
34
36
|
...(assortmentLinkId ? generateDbFilterById(assortmentLinkId) : {}),
|
|
@@ -37,7 +39,6 @@ export const configureAssortmentLinksModule = ({ AssortmentLinks, invalidateCach
|
|
|
37
39
|
};
|
|
38
40
|
const $set = {
|
|
39
41
|
updated: new Date(),
|
|
40
|
-
updatedBy: userId,
|
|
41
42
|
...rest,
|
|
42
43
|
};
|
|
43
44
|
const $setOnInsert = {
|
|
@@ -45,8 +46,17 @@ export const configureAssortmentLinksModule = ({ AssortmentLinks, invalidateCach
|
|
|
45
46
|
parentAssortmentId,
|
|
46
47
|
childAssortmentId,
|
|
47
48
|
created: new Date(),
|
|
48
|
-
createdBy: userId,
|
|
49
49
|
};
|
|
50
|
+
const assortmentLinksPath = await walkUpFromAssortment({
|
|
51
|
+
resolveAssortmentLink: resolveAssortmentLinkFromDatabase(AssortmentLinks),
|
|
52
|
+
assortmentId: parentAssortmentId,
|
|
53
|
+
});
|
|
54
|
+
assortmentLinksPath
|
|
55
|
+
.flatMap(({ links }) => links)
|
|
56
|
+
.forEach(({ parentIds }) => {
|
|
57
|
+
if (parentIds.includes(childAssortmentId))
|
|
58
|
+
throw Error('CyclicGraphNotSupported');
|
|
59
|
+
});
|
|
50
60
|
if (!sortKey) {
|
|
51
61
|
// Get next sort key
|
|
52
62
|
const lastAssortmentLink = (await AssortmentLinks.findOne({ parentAssortmentId }, { sort: { sortKey: -1 } })) || { sortKey: 0 };
|
|
@@ -69,13 +79,12 @@ export const configureAssortmentLinksModule = ({ AssortmentLinks, invalidateCach
|
|
|
69
79
|
return assortmentLink;
|
|
70
80
|
},
|
|
71
81
|
// This action is specifically used for the bulk migration scripts in the platform package
|
|
72
|
-
update: async (assortmentLinkId, doc, options
|
|
82
|
+
update: async (assortmentLinkId, doc, options) => {
|
|
73
83
|
const selector = generateDbFilterById(assortmentLinkId);
|
|
74
84
|
const modifier = {
|
|
75
85
|
$set: {
|
|
76
86
|
...doc,
|
|
77
87
|
updated: new Date(),
|
|
78
|
-
updatedBy: userId,
|
|
79
88
|
},
|
|
80
89
|
};
|
|
81
90
|
await AssortmentLinks.updateOne(selector, modifier);
|
|
@@ -121,13 +130,12 @@ export const configureAssortmentLinksModule = ({ AssortmentLinks, invalidateCach
|
|
|
121
130
|
}
|
|
122
131
|
return deletionResult.deletedCount;
|
|
123
132
|
},
|
|
124
|
-
updateManualOrder: async ({ sortKeys }, options
|
|
133
|
+
updateManualOrder: async ({ sortKeys }, options) => {
|
|
125
134
|
const changedAssortmentLinkIds = await Promise.all(sortKeys.map(async ({ assortmentLinkId, sortKey }) => {
|
|
126
135
|
await AssortmentLinks.updateOne(generateDbFilterById(assortmentLinkId), {
|
|
127
136
|
$set: {
|
|
128
137
|
sortKey: sortKey + 1,
|
|
129
138
|
updated: new Date(),
|
|
130
|
-
updatedBy: userId,
|
|
131
139
|
},
|
|
132
140
|
});
|
|
133
141
|
return assortmentLinkId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configureAssortmentLinksModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentLinksModule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"configureAssortmentLinksModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentLinksModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,17 +11,17 @@ const ASSORTMENT_MEDIA_EVENTS = [
|
|
|
11
11
|
'ASSORTMENT_REORDER_MEDIA',
|
|
12
12
|
'ASSORTMENT_UPDATE_MEDIA_TEXT',
|
|
13
13
|
];
|
|
14
|
-
FileDirector.registerFileUploadCallback('assortment-media', async (file, { modules
|
|
14
|
+
FileDirector.registerFileUploadCallback('assortment-media', async (file, { modules }) => {
|
|
15
15
|
await modules.assortments.media.create({
|
|
16
16
|
assortmentId: file.meta.assortmentId,
|
|
17
17
|
mediaId: file._id,
|
|
18
|
-
}
|
|
18
|
+
});
|
|
19
19
|
});
|
|
20
20
|
export const configureAssortmentMediaModule = async ({ db, }) => {
|
|
21
21
|
registerEvents(ASSORTMENT_MEDIA_EVENTS);
|
|
22
22
|
const { AssortmentMedia, AssortmentMediaTexts } = await AssortmentMediaCollection(db);
|
|
23
23
|
const mutations = generateDbMutations(AssortmentMedia, AssortmentMediaSchema);
|
|
24
|
-
const upsertLocalizedText = async (assortmentMediaId, locale, text
|
|
24
|
+
const upsertLocalizedText = async (assortmentMediaId, locale, text) => {
|
|
25
25
|
const selector = {
|
|
26
26
|
assortmentMediaId,
|
|
27
27
|
locale,
|
|
@@ -29,14 +29,11 @@ export const configureAssortmentMediaModule = async ({ db, }) => {
|
|
|
29
29
|
await AssortmentMediaTexts.updateOne(selector, {
|
|
30
30
|
$set: {
|
|
31
31
|
updated: new Date(),
|
|
32
|
-
updatedBy: userId,
|
|
33
|
-
authorId: userId,
|
|
34
32
|
...text,
|
|
35
33
|
},
|
|
36
34
|
$setOnInsert: {
|
|
37
35
|
_id: generateDbObjectId(),
|
|
38
36
|
created: new Date(),
|
|
39
|
-
createdBy: userId,
|
|
40
37
|
assortmentMediaId,
|
|
41
38
|
locale,
|
|
42
39
|
},
|
|
@@ -64,7 +61,7 @@ export const configureAssortmentMediaModule = async ({ db, }) => {
|
|
|
64
61
|
return mediaList.toArray();
|
|
65
62
|
},
|
|
66
63
|
// Mutations
|
|
67
|
-
create: async (doc
|
|
64
|
+
create: async (doc) => {
|
|
68
65
|
let { sortKey } = doc;
|
|
69
66
|
if (!sortKey) {
|
|
70
67
|
// Get next sort key
|
|
@@ -77,10 +74,9 @@ export const configureAssortmentMediaModule = async ({ db, }) => {
|
|
|
77
74
|
}
|
|
78
75
|
const assortmentMediaId = await mutations.create({
|
|
79
76
|
tags: [],
|
|
80
|
-
authorId: userId,
|
|
81
77
|
...doc,
|
|
82
78
|
sortKey,
|
|
83
|
-
}
|
|
79
|
+
});
|
|
84
80
|
const assortmentMedia = await AssortmentMedia.findOne(generateDbFilterById(assortmentMediaId), {});
|
|
85
81
|
await emit('ASSORTMENT_ADD_MEDIA', {
|
|
86
82
|
assortmentMedia,
|
|
@@ -121,13 +117,12 @@ export const configureAssortmentMediaModule = async ({ db, }) => {
|
|
|
121
117
|
await AssortmentMedia.updateOne(selector, modifier);
|
|
122
118
|
return AssortmentMedia.findOne(selector, {});
|
|
123
119
|
},
|
|
124
|
-
updateManualOrder: async ({ sortKeys }
|
|
120
|
+
updateManualOrder: async ({ sortKeys }) => {
|
|
125
121
|
const changedAssortmentMediaIds = await Promise.all(sortKeys.map(async ({ assortmentMediaId, sortKey }) => {
|
|
126
122
|
await AssortmentMedia.updateOne(generateDbFilterById(assortmentMediaId), {
|
|
127
123
|
$set: {
|
|
128
124
|
sortKey: sortKey + 1,
|
|
129
125
|
updated: new Date(),
|
|
130
|
-
updatedBy: userId,
|
|
131
126
|
},
|
|
132
127
|
});
|
|
133
128
|
return assortmentMediaId;
|
|
@@ -152,8 +147,8 @@ export const configureAssortmentMediaModule = async ({ db, }) => {
|
|
|
152
147
|
return text;
|
|
153
148
|
},
|
|
154
149
|
// Mutations
|
|
155
|
-
updateMediaTexts: async (assortmentMediaId, texts
|
|
156
|
-
const mediaTexts = await Promise.all(texts.map(({ locale, ...text }) => upsertLocalizedText(assortmentMediaId, locale, text
|
|
150
|
+
updateMediaTexts: async (assortmentMediaId, texts) => {
|
|
151
|
+
const mediaTexts = await Promise.all(texts.map(({ locale, ...text }) => upsertLocalizedText(assortmentMediaId, locale, text)));
|
|
157
152
|
await emit('ASSORTMENT_UPDATE_MEDIA_TEXT', {
|
|
158
153
|
assortmentMediaId,
|
|
159
154
|
mediaTexts,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configureAssortmentMediaModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentMediaModule.ts"],"names":[],"mappings":"AAQA,OAAO,SAAS,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;AAE7B,MAAM,uBAAuB,GAAG;IAC9B,sBAAsB;IACtB,yBAAyB;IACzB,0BAA0B;IAC1B,8BAA8B;CAC/B,CAAC;AAEF,YAAY,CAAC,0BAA0B,CAAC,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"configureAssortmentMediaModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentMediaModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ export const configureAssortmentProductsModule = ({ AssortmentProducts, invalida
|
|
|
47
47
|
.map((product) => product.productId);
|
|
48
48
|
},
|
|
49
49
|
// Mutations
|
|
50
|
-
create: async (doc, options
|
|
50
|
+
create: async (doc, options) => {
|
|
51
51
|
const { _id, assortmentId, productId, sortKey, ...rest } = doc;
|
|
52
52
|
const selector = {
|
|
53
53
|
...(doc._id ? generateDbFilterById(doc._id) : {}),
|
|
@@ -56,7 +56,6 @@ export const configureAssortmentProductsModule = ({ AssortmentProducts, invalida
|
|
|
56
56
|
};
|
|
57
57
|
const $set = {
|
|
58
58
|
updated: new Date(),
|
|
59
|
-
updatedBy: userId,
|
|
60
59
|
...rest,
|
|
61
60
|
};
|
|
62
61
|
const $setOnInsert = {
|
|
@@ -64,7 +63,6 @@ export const configureAssortmentProductsModule = ({ AssortmentProducts, invalida
|
|
|
64
63
|
productId,
|
|
65
64
|
assortmentId,
|
|
66
65
|
created: new Date(),
|
|
67
|
-
createdBy: userId,
|
|
68
66
|
};
|
|
69
67
|
if (!sortKey) {
|
|
70
68
|
// Get next sort key
|
|
@@ -117,13 +115,12 @@ export const configureAssortmentProductsModule = ({ AssortmentProducts, invalida
|
|
|
117
115
|
return deletionResult.deletedCount;
|
|
118
116
|
},
|
|
119
117
|
// This action is specifically used for the bulk migration scripts in the platform package
|
|
120
|
-
update: async (assortmentProductId, doc, options
|
|
118
|
+
update: async (assortmentProductId, doc, options) => {
|
|
121
119
|
const selector = generateDbFilterById(assortmentProductId);
|
|
122
120
|
const modifier = {
|
|
123
121
|
$set: {
|
|
124
122
|
...doc,
|
|
125
123
|
updated: new Date(),
|
|
126
|
-
updatedBy: userId,
|
|
127
124
|
},
|
|
128
125
|
};
|
|
129
126
|
await AssortmentProducts.updateOne(selector, modifier);
|
|
@@ -133,13 +130,12 @@ export const configureAssortmentProductsModule = ({ AssortmentProducts, invalida
|
|
|
133
130
|
}
|
|
134
131
|
return assortmentProduct;
|
|
135
132
|
},
|
|
136
|
-
updateManualOrder: async ({ sortKeys }, options
|
|
133
|
+
updateManualOrder: async ({ sortKeys }, options) => {
|
|
137
134
|
const changedAssortmentProductIds = await Promise.all(sortKeys.map(async ({ assortmentProductId, sortKey }) => {
|
|
138
135
|
await AssortmentProducts.updateOne(generateDbFilterById(assortmentProductId), {
|
|
139
136
|
$set: {
|
|
140
137
|
sortKey: sortKey + 1,
|
|
141
138
|
updated: new Date(),
|
|
142
|
-
updatedBy: userId,
|
|
143
139
|
},
|
|
144
140
|
});
|
|
145
141
|
return assortmentProductId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configureAssortmentProductsModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentProductsModule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAEhF,MAAM,yBAAyB,GAAG;IAChC,wBAAwB;IACxB,2BAA2B;IAC3B,6BAA6B;CAC9B,CAAC;AAEF,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,EAChD,kBAAkB,EAClB,eAAe,GAIhB,EAAiC,EAAE;IAClC,cAAc,CAAC,yBAAyB,CAAC,CAAC;IAE1C,OAAO;QACL,UAAU;QACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE;YAC/C,MAAM,QAAQ,GAA8B,EAAE,SAAS,EAAE,CAAC;YAC1D,IAAI,IAAI,EAAE;gBACR,QAAQ,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;aAC/B;YACD,OAAO,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,CAAC;iBAC7E,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC;iBACvC,OAAO,EAAE,CAAC;QACf,CAAC;QAED,cAAc,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE;YAC/C,MAAM,QAAQ,GAA8B,EAAE,YAAY,EAAE,CAAC;YAC7D,IAAI,IAAI,EAAE;gBACR,QAAQ,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;aAC/B;YACD,OAAO,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC;iBAC1E,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC;iBACjC,OAAO,EAAE,CAAC;QACf,CAAC;QAED,WAAW,EAAE,KAAK,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE;YAC7C,OAAO,kBAAkB,CAAC,OAAO,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,YAAY,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE;YAChD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,EAAE,OAAO,CAAC,CAAC;YACpE,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;QAED,mBAAmB,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,EAAE;YAC1D,MAAM,QAAQ,GAAG;gBACf,YAAY,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE;aACrC,CAAC;YAEF,MAAM,kBAAkB,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACjE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;gBACpB,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;aAC7B,CAAC,CAAC,OAAO,EAAE,CAAC;YAEb,OAAO,kBAAkB;iBACtB,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC;iBACpD,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QAED,YAAY;QACZ,MAAM,EAAE,KAAK,EAAE,GAAsB,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"configureAssortmentProductsModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentProductsModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,7 @@ export const configureAssortmentTextsModule = ({ Assortments, AssortmentTexts, }
|
|
|
19
19
|
title: title || assortmentId,
|
|
20
20
|
});
|
|
21
21
|
};
|
|
22
|
-
const upsertLocalizedText = async (assortmentId, locale, text
|
|
22
|
+
const upsertLocalizedText = async (assortmentId, locale, text) => {
|
|
23
23
|
const { slug: textSlug, ...textFields } = text;
|
|
24
24
|
const slug = await makeSlug({
|
|
25
25
|
slug: textSlug,
|
|
@@ -29,14 +29,11 @@ export const configureAssortmentTextsModule = ({ Assortments, AssortmentTexts, }
|
|
|
29
29
|
const modifier = {
|
|
30
30
|
$set: {
|
|
31
31
|
updated: new Date(),
|
|
32
|
-
updatedBy: userId,
|
|
33
|
-
authorId: userId,
|
|
34
32
|
...textFields,
|
|
35
33
|
},
|
|
36
34
|
$setOnInsert: {
|
|
37
35
|
_id: generateDbObjectId(),
|
|
38
36
|
created: new Date(),
|
|
39
|
-
createdBy: userId,
|
|
40
37
|
locale,
|
|
41
38
|
},
|
|
42
39
|
};
|
|
@@ -55,7 +52,6 @@ export const configureAssortmentTextsModule = ({ Assortments, AssortmentTexts, }
|
|
|
55
52
|
await Assortments.updateOne(assortmentSelector, {
|
|
56
53
|
$set: {
|
|
57
54
|
updated: new Date(),
|
|
58
|
-
updatedBy: userId,
|
|
59
55
|
},
|
|
60
56
|
$addToSet: {
|
|
61
57
|
slugs: slug,
|
|
@@ -67,7 +63,6 @@ export const configureAssortmentTextsModule = ({ Assortments, AssortmentTexts, }
|
|
|
67
63
|
}, {
|
|
68
64
|
$set: {
|
|
69
65
|
updated: new Date(),
|
|
70
|
-
updatedBy: userId,
|
|
71
66
|
},
|
|
72
67
|
$pull: {
|
|
73
68
|
slugs: slug,
|
|
@@ -96,9 +91,9 @@ export const configureAssortmentTextsModule = ({ Assortments, AssortmentTexts, }
|
|
|
96
91
|
return assortmentIds.toArray();
|
|
97
92
|
},
|
|
98
93
|
// Mutations
|
|
99
|
-
updateTexts: async (assortmentId, texts
|
|
94
|
+
updateTexts: async (assortmentId, texts) => {
|
|
100
95
|
const assortmentTexts = Array.isArray(texts)
|
|
101
|
-
? await Promise.all(texts.map(async ({ locale, ...text }) => upsertLocalizedText(assortmentId, locale, text
|
|
96
|
+
? await Promise.all(texts.map(async ({ locale, ...text }) => upsertLocalizedText(assortmentId, locale, text)))
|
|
102
97
|
: [];
|
|
103
98
|
await emit('ASSORTMENT_UPDATE_TEXTS', {
|
|
104
99
|
assortmentId,
|
|
@@ -108,8 +103,15 @@ export const configureAssortmentTextsModule = ({ Assortments, AssortmentTexts, }
|
|
|
108
103
|
},
|
|
109
104
|
upsertLocalizedText,
|
|
110
105
|
makeSlug,
|
|
111
|
-
deleteMany: async ({ assortmentId }) => {
|
|
112
|
-
const
|
|
106
|
+
deleteMany: async ({ assortmentId, excludedAssortmentIds }) => {
|
|
107
|
+
const selector = {};
|
|
108
|
+
if (assortmentId) {
|
|
109
|
+
selector.assortmentId = assortmentId;
|
|
110
|
+
}
|
|
111
|
+
else if (excludedAssortmentIds) {
|
|
112
|
+
selector.assortmentId = { $nin: excludedAssortmentIds };
|
|
113
|
+
}
|
|
114
|
+
const deletedResult = await AssortmentTexts.deleteMany(selector);
|
|
113
115
|
return deletedResult.deletedCount;
|
|
114
116
|
},
|
|
115
117
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configureAssortmentTextsModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentTextsModule.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;AAE7B,MAAM,sBAAsB,GAAG,CAAC,yBAAyB,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,EAC7C,WAAW,EACX,eAAe,GAIhB,EAA8B,EAAE;IAC/B,cAAc,CAAC,sBAAsB,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE;QACvD,MAAM,iBAAiB,GAAG,KAAK,EAAE,gBAAwB,EAAE,EAAE;YAC3D,OAAO,CACL,CAAC,MAAM,eAAe,CAAC,cAAc,CACnC;gBACE,YAAY,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE;gBACnC,IAAI,EAAE,gBAAgB;aACvB,EACD,EAAE,KAAK,EAAE,CAAC,EAAE,CACb,CAAC,KAAK,CAAC,CACT,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,cAAc,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7F,OAAO,QAAQ,CAAC;YACd,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,KAAK,IAAI,YAAY;SAC7B,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAsD,KAAK,EAClF,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,
|
|
1
|
+
{"version":3,"file":"configureAssortmentTextsModule.js","sourceRoot":"","sources":["../../src/module/configureAssortmentTextsModule.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;AAE7B,MAAM,sBAAsB,GAAG,CAAC,yBAAyB,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,EAC7C,WAAW,EACX,eAAe,GAIhB,EAA8B,EAAE;IAC/B,cAAc,CAAC,sBAAsB,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE;QACvD,MAAM,iBAAiB,GAAG,KAAK,EAAE,gBAAwB,EAAE,EAAE;YAC3D,OAAO,CACL,CAAC,MAAM,eAAe,CAAC,cAAc,CACnC;gBACE,YAAY,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE;gBACnC,IAAI,EAAE,gBAAgB;aACvB,EACD,EAAE,KAAK,EAAE,CAAC,EAAE,CACb,CAAC,KAAK,CAAC,CACT,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,cAAc,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7F,OAAO,QAAQ,CAAC;YACd,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,KAAK,IAAI,YAAY;SAC7B,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAsD,KAAK,EAClF,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,EAAE;QACF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,GAAG,IAAI,CAAC;QAC/C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC;YAC1B,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,YAAY;SACb,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAQ;YACpB,IAAI,EAAE;gBACJ,OAAO,EAAE,IAAI,IAAI,EAAE;gBACnB,GAAG,UAAU;aACd;YACD,YAAY,EAAE;gBACZ,GAAG,EAAE,kBAAkB,EAAE;gBACzB,OAAO,EAAE,IAAI,IAAI,EAAE;gBACnB,MAAM;aACP;SACF,CAAC;QAEF,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;SAC3B;aAAM;YACL,QAAQ,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC;SACnC;QAED,MAAM,QAAQ,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QAE1C,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE;YACvE,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QAEH,IAAI,YAAY,CAAC,aAAa,GAAG,CAAC,IAAI,YAAY,CAAC,aAAa,GAAG,CAAC,EAAE;YACpE,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;YAC9D,MAAM,WAAW,CAAC,SAAS,CAAC,kBAAkB,EAAE;gBAC9C,IAAI,EAAE;oBACJ,OAAO,EAAE,IAAI,IAAI,EAAE;iBACpB;gBACD,SAAS,EAAE;oBACT,KAAK,EAAE,IAAI;iBACZ;aACF,CAAC,CAAC;YAEH,MAAM,WAAW,CAAC,UAAU,CAC1B;gBACE,GAAG,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE;gBAC1B,KAAK,EAAE,IAAI;aACZ,EACD;gBACE,IAAI,EAAE;oBACJ,OAAO,EAAE,IAAI,IAAI,EAAE;iBACpB;gBACD,KAAK,EAAE;oBACL,KAAK,EAAE,IAAI;iBACZ;aACF,CACF,CAAC;SACH;QAED,OAAO,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC;IAEF,OAAO;QACL,UAAU;QACV,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAEnD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;QAED,iBAAiB,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE;YACpD,MAAM,YAAY,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;YAExC,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAClC,eAAe,EACf,EAAE,YAAY,EAAE,EAChB,YAAY,CACb,CAAC;YAEF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,WAAW,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;YACpC,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CACxC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAClC;gBACE,UAAU,EAAE;oBACV,YAAY,EAAE,CAAC;iBAChB;aACF,CACF,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;YAE1C,OAAO,aAAa,CAAC,OAAO,EAAE,CAAC;QACjC,CAAC;QAED,YAAY;QACZ,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE;YACzC,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC1C,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAC1F;gBACH,CAAC,CAAC,EAAE,CAAC;YAEP,MAAM,IAAI,CAAC,yBAAyB,EAAE;gBACpC,YAAY;gBACZ,eAAe;aAChB,CAAC,CAAC;YAEH,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,mBAAmB;QACnB,QAAQ;QAER,UAAU,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,qBAAqB,EAAE,EAAE,EAAE;YAC5D,MAAM,QAAQ,GAA2B,EAAE,CAAC;YAC5C,IAAI,YAAY,EAAE;gBAChB,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC;aACtC;iBAAM,IAAI,qBAAqB,EAAE;gBAChC,QAAQ,CAAC,YAAY,GAAG,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;aACzD;YACD,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAEjE,OAAO,aAAa,CAAC,YAAY,CAAC;QACpC,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Query } from '@unchainedshop/types/common';
|
|
1
2
|
import { ModuleInput } from '@unchainedshop/types/core';
|
|
2
|
-
import { AssortmentsModule, AssortmentsSettingsOptions } from '@unchainedshop/types/assortments';
|
|
3
|
+
import { AssortmentsModule, AssortmentQuery, AssortmentsSettingsOptions } from '@unchainedshop/types/assortments';
|
|
4
|
+
export declare const buildFindSelector: ({ assortmentIds, assortmentSelector, slugs, tags, includeLeaves, includeInactive, queryString, }: AssortmentQuery) => Query;
|
|
3
5
|
export declare const configureAssortmentsModule: ({ db, migrationRepository, options: assortmentOptions, }: ModuleInput<AssortmentsSettingsOptions>) => Promise<AssortmentsModule>;
|