@unchainedshop/core-assortments 3.1.11 → 3.1.15

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.
@@ -0,0 +1,4 @@
1
+ import SimpleSchema from 'simpl-schema';
2
+ export declare const AssortmentMediaSchema: SimpleSchema;
3
+ export declare const AssortmentMediaTextsSchema: SimpleSchema;
4
+ //# sourceMappingURL=AssortmentMediaSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssortmentMediaSchema.d.ts","sourceRoot":"","sources":["../../src/db/AssortmentMediaSchema.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,eAAO,MAAM,qBAAqB,cAWjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,cAYtC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { Schemas } from '@unchainedshop/utils';
2
+ import SimpleSchema from 'simpl-schema';
3
+ export const AssortmentMediaSchema = new SimpleSchema({
4
+ mediaId: { type: String, required: true },
5
+ assortmentId: { type: String, required: true },
6
+ sortKey: { type: Number, required: true },
7
+ tags: Array,
8
+ 'tags.$': String,
9
+ meta: { type: Object, blackbox: true },
10
+ ...Schemas.timestampFields,
11
+ }, { requiredByDefault: false });
12
+ export const AssortmentMediaTextsSchema = new SimpleSchema({
13
+ assortmentMediaId: {
14
+ type: String,
15
+ required: true,
16
+ },
17
+ locale: String,
18
+ title: String,
19
+ subtitle: String,
20
+ ...Schemas.timestampFields,
21
+ }, { requiredByDefault: false });
22
+ //# sourceMappingURL=AssortmentMediaSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssortmentMediaSchema.js","sourceRoot":"","sources":["../../src/db/AssortmentMediaSchema.ts"],"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"}
@@ -0,0 +1,7 @@
1
+ import SimpleSchema from 'simpl-schema';
2
+ export declare const AssortmentsSchema: SimpleSchema;
3
+ export declare const AssortmentTextsSchema: SimpleSchema;
4
+ export declare const AssortmentProductsSchema: SimpleSchema;
5
+ export declare const AssortmentLinksSchema: SimpleSchema;
6
+ export declare const AssortmentFiltersSchema: SimpleSchema;
7
+ //# sourceMappingURL=AssortmentsSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssortmentsSchema.d.ts","sourceRoot":"","sources":["../../src/db/AssortmentsSchema.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,eAAO,MAAM,iBAAiB,cAc7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,cAWjC,CAAC;AAEF,eAAO,MAAM,wBAAwB,cAWpC,CAAC;AAEF,eAAO,MAAM,qBAAqB,cAWjC,CAAC;AAEF,eAAO,MAAM,uBAAuB,cAWnC,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { Schemas } from '@unchainedshop/utils';
2
+ import SimpleSchema from 'simpl-schema';
3
+ export const AssortmentsSchema = new SimpleSchema({
4
+ isActive: Boolean,
5
+ isBase: Boolean,
6
+ isRoot: Boolean,
7
+ meta: { type: Object, blackbox: true },
8
+ sequence: { type: Number, required: true },
9
+ slugs: Array,
10
+ 'slugs.$': String,
11
+ tags: Array,
12
+ 'tags.$': String,
13
+ ...Schemas.timestampFields,
14
+ }, { requiredByDefault: false });
15
+ export const AssortmentTextsSchema = new SimpleSchema({
16
+ assortmentId: { type: String, required: true },
17
+ description: String,
18
+ locale: { type: String, required: true },
19
+ slug: String,
20
+ subtitle: String,
21
+ title: String,
22
+ ...Schemas.timestampFields,
23
+ }, { requiredByDefault: false });
24
+ export const AssortmentProductsSchema = new SimpleSchema({
25
+ assortmentId: { type: String, required: true },
26
+ meta: { type: Object, blackbox: true },
27
+ productId: { type: String, required: true },
28
+ sortKey: { type: Number, required: true },
29
+ tags: Array,
30
+ 'tags.$': String,
31
+ ...Schemas.timestampFields,
32
+ }, { requiredByDefault: false });
33
+ export const AssortmentLinksSchema = new SimpleSchema({
34
+ childAssortmentId: { type: String, required: true },
35
+ meta: { type: Object, blackbox: true },
36
+ parentAssortmentId: { type: String, required: true },
37
+ sortKey: { type: Number, required: true },
38
+ tags: Array,
39
+ 'tags.$': String,
40
+ ...Schemas.timestampFields,
41
+ }, { requiredByDefault: false });
42
+ export const AssortmentFiltersSchema = new SimpleSchema({
43
+ assortmentId: { type: String, required: true },
44
+ filterId: { type: String, required: true },
45
+ meta: { type: Object, blackbox: true },
46
+ sortKey: { type: Number, required: true },
47
+ tags: Array,
48
+ 'tags.$': String,
49
+ ...Schemas.timestampFields,
50
+ }, { requiredByDefault: false });
51
+ //# sourceMappingURL=AssortmentsSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssortmentsSchema.js","sourceRoot":"","sources":["../../src/db/AssortmentsSchema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { AssortmentLink } from '@unchainedshop/types/assortments.js';
2
+ import { mongodb } from '@unchainedshop/mongodb';
3
+ export declare function resolveAssortmentLinkFromDatabase(AssortmentLinks: mongodb.Collection<AssortmentLink>, selector?: mongodb.Filter<AssortmentLink>): (assortmentId: string, childAssortmentId: string) => Promise<{
4
+ assortmentId: string;
5
+ childAssortmentId: string;
6
+ parentIds: string[];
7
+ }>;
8
+ //# sourceMappingURL=resolveAssortmentLinkFromDatabase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveAssortmentLinkFromDatabase.d.ts","sourceRoot":"","sources":["../../../src/utils/breadcrumbs/resolveAssortmentLinkFromDatabase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,wBAAgB,iCAAiC,CAC/C,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,EACnD,QAAQ,GAAE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAM,kBAEjB,MAAM,qBAAqB,MAAM;;;;GAiB9D"}
@@ -0,0 +1,15 @@
1
+ export function resolveAssortmentLinkFromDatabase(AssortmentLinks, selector = {}) {
2
+ return async (assortmentId, childAssortmentId) => {
3
+ const links = await AssortmentLinks.find({ childAssortmentId: assortmentId, ...selector }, {
4
+ projection: { _id: 1, childAssortmentId: 1, parentAssortmentId: 1 },
5
+ sort: { sortKey: 1, parentAssortmentId: 1 },
6
+ }).toArray();
7
+ const parentIds = links.map((link) => link.parentAssortmentId);
8
+ return {
9
+ assortmentId,
10
+ childAssortmentId,
11
+ parentIds,
12
+ };
13
+ };
14
+ }
15
+ //# sourceMappingURL=resolveAssortmentLinkFromDatabase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveAssortmentLinkFromDatabase.js","sourceRoot":"","sources":["../../../src/utils/breadcrumbs/resolveAssortmentLinkFromDatabase.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,iCAAiC,CAC/C,eAAmD,EACnD,WAA2C,EAAE;IAE7C,OAAO,KAAK,EAAE,YAAoB,EAAE,iBAAyB,EAAE,EAAE;QAC/D,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,IAAI,CACtC,EAAE,iBAAiB,EAAE,YAAY,EAAE,GAAG,QAAQ,EAAE,EAChD;YACE,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE;YACnE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE;SAC5C,CACF,CAAC,OAAO,EAAE,CAAC;QAEZ,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE/D,OAAO;YACL,YAAY;YACZ,iBAAiB;YACjB,SAAS;SACV,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { AssortmentProduct } from '@unchainedshop/types/assortments.js';
2
+ import { mongodb } from '@unchainedshop/mongodb';
3
+ export declare function resolveAssortmentProductFromDatabase(AssortmentProducts: mongodb.Collection<AssortmentProduct>, selector?: mongodb.Filter<AssortmentProduct>): (productId: string) => Promise<mongodb.WithId<AssortmentProduct>[]>;
4
+ //# sourceMappingURL=resolveAssortmentProductFromDatabase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveAssortmentProductFromDatabase.d.ts","sourceRoot":"","sources":["../../../src/utils/breadcrumbs/resolveAssortmentProductFromDatabase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,wBAAgB,oCAAoC,CAClD,kBAAkB,EAAE,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,EACzD,QAAQ,GAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAM,eAEvB,MAAM,kDAWhC"}
@@ -0,0 +1,10 @@
1
+ export function resolveAssortmentProductFromDatabase(AssortmentProducts, selector = {}) {
2
+ return async (productId) => {
3
+ const assortmentProducts = AssortmentProducts.find({ productId, ...selector }, {
4
+ projection: { _id: true, assortmentId: true, productId: true },
5
+ sort: { sortKey: 1, productId: 1 },
6
+ });
7
+ return assortmentProducts.toArray();
8
+ };
9
+ }
10
+ //# sourceMappingURL=resolveAssortmentProductFromDatabase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveAssortmentProductFromDatabase.js","sourceRoot":"","sources":["../../../src/utils/breadcrumbs/resolveAssortmentProductFromDatabase.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,oCAAoC,CAClD,kBAAyD,EACzD,WAA8C,EAAE;IAEhD,OAAO,KAAK,EAAE,SAAiB,EAAE,EAAE;QACjC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,IAAI,CAChD,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,EAC1B;YACE,UAAU,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE;YAC9D,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;SACnC,CACF,CAAC;QAEF,OAAO,kBAAkB,CAAC,OAAO,EAAE,CAAC;IACtC,CAAC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unchainedshop/core-assortments",
3
- "version": "3.1.11",
3
+ "version": "3.1.15",
4
4
  "main": "lib/assortments-index.js",
5
5
  "types": "lib/assortments-index.d.ts",
6
6
  "type": "module",
@@ -31,14 +31,14 @@
31
31
  },
32
32
  "homepage": "https://github.com/unchainedshop/unchained#readme",
33
33
  "dependencies": {
34
- "@unchainedshop/events": "^3.1.7",
35
- "@unchainedshop/file-upload": "^3.1.7",
36
- "@unchainedshop/logger": "^3.1.7",
37
- "@unchainedshop/utils": "^3.1.7"
34
+ "@unchainedshop/events": "^3.1.13",
35
+ "@unchainedshop/file-upload": "^3.1.13",
36
+ "@unchainedshop/logger": "^3.1.13",
37
+ "@unchainedshop/utils": "^3.1.13"
38
38
  },
39
39
  "devDependencies": {
40
- "@types/node": "^22.13.14",
41
- "tsx": "^4.19.3",
42
- "typescript": "^5.8.2"
40
+ "@types/node": "^24.0.4",
41
+ "tsx": "^4.20.3",
42
+ "typescript": "^5.8.3"
43
43
  }
44
44
  }