@unchainedshop/core 4.3.2 → 4.3.3

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.
@@ -2,7 +2,7 @@ import { Assortment } from '@unchainedshop/core-assortments';
2
2
  import { mongodb } from '@unchainedshop/mongodb';
3
3
  import { IBaseAdapter } from '@unchainedshop/utils';
4
4
  import { Product } from '@unchainedshop/core-products';
5
- import { Filter, SearchQuery } from '@unchainedshop/core-filters';
5
+ import { Filter, SearchConfiguration, SearchQuery } from '@unchainedshop/core-filters';
6
6
  import { Modules } from '../modules.js';
7
7
  export interface FilterInputText {
8
8
  locale: string;
@@ -13,35 +13,31 @@ export interface FilterContext {
13
13
  filter?: Filter;
14
14
  searchQuery: SearchQuery;
15
15
  }
16
+ export interface SearchAssortmentsOptions extends SearchConfiguration {
17
+ assortmentSelector: mongodb.Filter<Assortment>;
18
+ }
19
+ export interface SearchProductsOptions extends SearchConfiguration {
20
+ productSelector: mongodb.Filter<Product>;
21
+ }
22
+ export interface TransformOptions {
23
+ key?: string;
24
+ value?: any;
25
+ userId?: string;
26
+ locale?: Intl.Locale;
27
+ }
16
28
  export interface FilterAdapterActions {
17
29
  aggregateProductIds: (params: {
18
30
  productIds: string[];
19
31
  }) => string[];
20
32
  searchAssortments: (params: {
21
33
  assortmentIds?: string[];
22
- }, options: {
23
- filterSelector: mongodb.Filter<Filter>;
24
- assortmentSelector: mongodb.Filter<Assortment>;
25
- sortStage: mongodb.FindOptions['sort'];
26
- locale: Intl.Locale;
27
- }) => Promise<string[] | undefined>;
34
+ }, options: SearchAssortmentsOptions) => Promise<string[] | undefined>;
28
35
  searchProducts: (params: {
29
36
  productIds?: string[];
30
- }, options: {
31
- filterSelector: mongodb.Filter<Filter>;
32
- productSelector: mongodb.Filter<Product>;
33
- sortStage: mongodb.FindOptions['sort'];
34
- locale: Intl.Locale;
35
- }) => Promise<string[] | undefined>;
36
- transformFilterSelector: (query: mongodb.Filter<Filter>, options?: any) => Promise<mongodb.Filter<Filter>>;
37
- transformProductSelector: (query: mongodb.Filter<Product>, options?: {
38
- key?: string;
39
- value?: any;
40
- }) => Promise<mongodb.Filter<Product>>;
41
- transformSortStage: (sort: mongodb.FindOptions['sort'], options?: {
42
- key: string;
43
- value?: any;
44
- }) => Promise<mongodb.FindOptions['sort']>;
37
+ }, options: SearchProductsOptions) => Promise<string[] | undefined>;
38
+ transformFilterSelector: (query: mongodb.Filter<Filter>, options?: TransformOptions) => Promise<mongodb.Filter<Filter>>;
39
+ transformProductSelector: (query: mongodb.Filter<Product>, options?: TransformOptions) => Promise<mongodb.Filter<Product>>;
40
+ transformSortStage: (sort: mongodb.FindOptions['sort'], options?: TransformOptions) => Promise<mongodb.FindOptions['sort']>;
45
41
  }
46
42
  export type IFilterAdapter = IBaseAdapter & {
47
43
  orderIndex: number;
@@ -1 +1 @@
1
- {"version":3,"file":"FilterAdapter.d.ts","sourceRoot":"","sources":["../../src/directors/FilterAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FilterAdapter.d.ts","sourceRoot":"","sources":["../../src/directors/FilterAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAe,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACvF,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,KAAK,MAAM,EAAE,CAAC;IAEpE,iBAAiB,EAAE,CACjB,MAAM,EAAE;QACN,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,EACD,OAAO,EAAE,wBAAwB,KAC9B,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAEnC,cAAc,EAAE,CACd,MAAM,EAAE;QACN,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB,EACD,OAAO,EAAE,qBAAqB,KAC3B,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAEnC,uBAAuB,EAAE,CACvB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAC7B,OAAO,CAAC,EAAE,gBAAgB,KACvB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACrC,wBAAwB,EAAE,CACxB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,gBAAgB,KACvB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACtC,kBAAkB,EAAE,CAClB,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EACjC,OAAO,CAAC,EAAE,gBAAgB,KACvB,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;CAC3C;AAED,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG;IAC1C,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,CAAC,MAAM,EAAE,aAAa,GAAG;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,oBAAoB,CAAC;CACjF,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,CAmC3E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FilterAdapter.js","sourceRoot":"","sources":["../../src/directors/FilterAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,sBAAsB,CAAC;AA+DjE,MAAM,CAAC,MAAM,aAAa,GAAsD;IAC9E,GAAG,WAAW;IACd,UAAU,EAAE,CAAC;IAEb,OAAO,EAAE,GAAG,EAAE;QACZ,OAAO;YACL,oFAAoF;YACpF,mBAAmB,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;gBACtC,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,cAAc,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;gBACvC,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,iBAAiB,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;gBAC7C,OAAO,aAAa,CAAC;YACvB,CAAC;YAED,kBAAkB,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;gBACtC,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,+EAA+E;YAC/E,yGAAyG;YACzG,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;gBAC/C,OAAO,YAAY,CAAC;YACtB,CAAC;YAED,6EAA6E;YAC7E,uBAAuB,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;gBAC9C,OAAO,YAAY,CAAC;YACtB,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"FilterAdapter.js","sourceRoot":"","sources":["../../src/directors/FilterAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,sBAAsB,CAAC;AAoEjE,MAAM,CAAC,MAAM,aAAa,GAAsD;IAC9E,GAAG,WAAW;IACd,UAAU,EAAE,CAAC;IAEb,OAAO,EAAE,GAAG,EAAE;QACZ,OAAO;YACL,oFAAoF;YACpF,mBAAmB,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;gBACtC,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,cAAc,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;gBACvC,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,iBAAiB,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;gBAC7C,OAAO,aAAa,CAAC;YACvB,CAAC;YAED,kBAAkB,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;gBACtC,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,+EAA+E;YAC/E,yGAAyG;YACzG,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;gBAC/C,OAAO,YAAY,CAAC;YACtB,CAAC;YAED,6EAA6E;YAC7E,uBAAuB,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;gBAC9C,OAAO,YAAY,CAAC;YACtB,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -46,9 +46,9 @@ export const FilterDirector = {
46
46
  return adapter.transformSortStage(await lastSortStage, options);
47
47
  }, defaultStage);
48
48
  },
49
- transformFilterSelector: async (defaultSelector) => {
49
+ transformFilterSelector: async (defaultSelector, options) => {
50
50
  return reduceAdapters(async (lastSelector, adapter) => {
51
- return adapter.transformFilterSelector(await lastSelector);
51
+ return adapter.transformFilterSelector(await lastSelector, options);
52
52
  }, defaultSelector);
53
53
  },
54
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FilterDirector.js","sourceRoot":"","sources":["../../src/directors/FilterDirector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FilterDirector.js","sourceRoot":"","sources":["../../src/directors/FilterDirector.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import { SearchQuery } from '@unchainedshop/core-filters';
2
2
  import { Modules } from '../modules.js';
3
- export declare function loadFiltersService(this: Modules, searchQuery: SearchQuery, { productIds, forceLiveCollection }: {
3
+ export declare function loadFiltersService(this: Modules, searchQuery: SearchQuery, options: {
4
4
  productIds: string[];
5
- forceLiveCollection: boolean;
5
+ forceLiveCollection?: boolean;
6
+ locale?: Intl.Locale;
7
+ userId?: string;
6
8
  }): Promise<{
7
9
  forceLiveCollection: boolean;
8
10
  searchQuery: SearchQuery;
@@ -1 +1 @@
1
- {"version":3,"file":"loadFilters.d.ts","sourceRoot":"","sources":["../../src/services/loadFilters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAyB,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,WAAW,EACxB,EAAE,UAAU,EAAE,mBAAmB,EAAE,EAAE;IAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,mBAAmB,EAAE,OAAO,CAAA;CAAE;;;;;;;KA4C5F"}
1
+ {"version":3,"file":"loadFilters.d.ts","sourceRoot":"","sources":["../../src/services/loadFilters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAyB,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE;IACP,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;;;;;;;KA+CF"}
@@ -1,8 +1,8 @@
1
1
  import { defaultFilterSelector } from '@unchainedshop/core-filters';
2
2
  import { FilterDirector } from '../directors/FilterDirector.js';
3
- export async function loadFiltersService(searchQuery, { productIds, forceLiveCollection }) {
3
+ export async function loadFiltersService(searchQuery, options) {
4
4
  const filterActions = await FilterDirector.actions({ searchQuery }, { modules: this });
5
- const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery));
5
+ const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery), options);
6
6
  if (!filterSelector)
7
7
  return [];
8
8
  const otherFilters = await this.filters.findFilters({
@@ -19,12 +19,12 @@ export async function loadFiltersService(searchQuery, { productIds, forceLiveCol
19
19
  return Promise.all(sortedFilters.map(async (filter) => {
20
20
  const { examinedProductIdSet, filteredByOtherFiltersSet, filteredByThisFilterSet } = await FilterDirector.filterFacets(filter, {
21
21
  searchQuery,
22
- forceLiveCollection,
23
- allProductIds: productIds,
22
+ forceLiveCollection: !!options.forceLiveCollection,
23
+ allProductIds: options.productIds,
24
24
  otherFilters: sortedFilters,
25
25
  }, { modules: this });
26
26
  return {
27
- forceLiveCollection,
27
+ forceLiveCollection: !!options.forceLiveCollection,
28
28
  searchQuery,
29
29
  filter,
30
30
  examinedProductIdSet,
@@ -1 +1 @@
1
- {"version":3,"file":"loadFilters.js","sourceRoot":"","sources":["../../src/services/loadFilters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEjF,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAEtC,WAAwB,EACxB,EAAE,UAAU,EAAE,mBAAmB,EAA0D;IAE3F,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACvF,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,uBAAuB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;IAEvG,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;IAE/B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAClD,GAAG,cAAc;QACjB,KAAK,EAAE,CAAC;QACR,eAAe,EAAE,IAAI;KACtB,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAI,cAAc,EAAE,GAAW,EAAE,GAAG,IAAI,EAAE,CAAC;IACnE,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC1D,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzD,OAAO,SAAS,GAAG,UAAU,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,GAAG,CAChB,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACjC,MAAM,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,GAChF,MAAM,cAAc,CAAC,YAAY,CAC/B,MAAM,EACN;YACE,WAAW;YACX,mBAAmB;YACnB,aAAa,EAAE,UAAU;YACzB,YAAY,EAAE,aAAa;SAC5B,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;QAEJ,OAAO;YACL,mBAAmB;YACnB,WAAW;YACX,MAAM;YACN,oBAAoB;YACpB,yBAAyB;YACzB,uBAAuB;SACxB,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"loadFilters.js","sourceRoot":"","sources":["../../src/services/loadFilters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEjF,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAEtC,WAAwB,EACxB,OAKC;IAED,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACvF,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,uBAAuB,CAChE,qBAAqB,CAAC,WAAW,CAAC,EAClC,OAAO,CACR,CAAC;IAEF,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;IAE/B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAClD,GAAG,cAAc;QACjB,KAAK,EAAE,CAAC;QACR,eAAe,EAAE,IAAI;KACtB,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAI,cAAc,EAAE,GAAW,EAAE,GAAG,IAAI,EAAE,CAAC;IACnE,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC1D,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzD,OAAO,SAAS,GAAG,UAAU,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,GAAG,CAChB,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACjC,MAAM,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,GAChF,MAAM,cAAc,CAAC,YAAY,CAC/B,MAAM,EACN;YACE,WAAW;YACX,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB;YAClD,aAAa,EAAE,OAAO,CAAC,UAAU;YACjC,YAAY,EAAE,aAAa;SAC5B,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;QAEJ,OAAO;YACL,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB;YAClD,WAAW;YACX,MAAM;YACN,oBAAoB;YACpB,yBAAyB;YACzB,uBAAuB;SACxB,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -1,20 +1,17 @@
1
- import { Assortment } from '@unchainedshop/core-assortments';
2
- import { SearchConfiguration, SearchQuery } from '@unchainedshop/core-filters';
3
- import { mongodb } from '@unchainedshop/mongodb';
1
+ import { SearchQuery } from '@unchainedshop/core-filters';
4
2
  import { Modules } from '../modules.js';
5
- export interface SearchAssortmentConfiguration extends SearchConfiguration {
6
- assortmentSelector: mongodb.Filter<Assortment>;
7
- }
8
- export declare function searchAssortmentsService(this: Modules, searchQuery: SearchQuery, { forceLiveCollection, locale }: {
3
+ import { SearchAssortmentsOptions } from '../directors/index.js';
4
+ export declare function searchAssortmentsService(this: Modules, searchQuery: SearchQuery, options: {
9
5
  forceLiveCollection?: boolean;
10
6
  locale: Intl.Locale;
7
+ userId?: string;
11
8
  }): Promise<{
12
- searchConfiguration: SearchAssortmentConfiguration;
9
+ searchConfiguration: SearchAssortmentsOptions;
13
10
  totalAssortmentIds: string[];
14
11
  assortmentsCount: () => Promise<number>;
15
12
  assortments: ({ offset, limit }: {
16
13
  offset: any;
17
14
  limit: any;
18
- }) => Promise<Assortment[]>;
15
+ }) => Promise<import("@unchainedshop/core-assortments").Assortment[]>;
19
16
  }>;
20
17
  //# sourceMappingURL=searchAssortments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"searchAssortments.d.ts","sourceRoot":"","sources":["../../src/services/searchAssortments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAIL,mBAAmB,EACnB,WAAW,EACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,MAAM,WAAW,6BAA8B,SAAQ,mBAAmB;IACxE,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;CAChD;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,WAAW,EACxB,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE;IAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAA;CAAE;;;;;;;;GAyCxF"}
1
+ {"version":3,"file":"searchAssortments.d.ts","sourceRoot":"","sources":["../../src/services/searchAssortments.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,WAAW,EACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAkB,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEjF,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE;IAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;;;GA4CjF"}
@@ -1,17 +1,17 @@
1
1
  import { defaultAssortmentSelector, defaultFilterSelector, defaultSortStage, } from '@unchainedshop/core-filters';
2
2
  import { FilterDirector } from '../directors/index.js';
3
- export async function searchAssortmentsService(searchQuery, { forceLiveCollection, locale }) {
3
+ export async function searchAssortmentsService(searchQuery, options) {
4
4
  const filterActions = await FilterDirector.actions({ searchQuery }, { modules: this });
5
- const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery));
5
+ const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery), options);
6
6
  const assortmentSelector = defaultAssortmentSelector(searchQuery);
7
- const sortStage = await filterActions.transformSortStage(defaultSortStage(searchQuery));
7
+ const sortStage = await filterActions.transformSortStage(defaultSortStage(searchQuery), options);
8
8
  const searchConfiguration = {
9
9
  searchQuery,
10
10
  filterSelector,
11
11
  assortmentSelector,
12
12
  sortStage,
13
- forceLiveCollection: !!forceLiveCollection,
14
- locale,
13
+ ...options,
14
+ forceLiveCollection: !!options.forceLiveCollection,
15
15
  };
16
16
  const assortmentIds = await searchQuery.assortmentIds;
17
17
  const totalAssortmentIds = (await filterActions.searchAssortments({ assortmentIds }, searchConfiguration)) ||
@@ -1 +1 @@
1
- {"version":3,"file":"searchAssortments.js","sourceRoot":"","sources":["../../src/services/searchAssortments.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,GAGjB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAKvD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAE5C,WAAwB,EACxB,EAAE,mBAAmB,EAAE,MAAM,EAA0D;IAEvF,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvF,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,uBAAuB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;IACvG,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC;IAExF,MAAM,mBAAmB,GAAkC;QACzD,WAAW;QACX,cAAc;QACd,kBAAkB;QAClB,SAAS;QACT,mBAAmB,EAAE,CAAC,CAAC,mBAAmB;QAC1C,MAAM;KACP,CAAC;IAEF,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC;IAEtD,MAAM,kBAAkB,GACtB,CAAC,MAAM,aAAa,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,EAAE,mBAAmB,CAAC,CAAC;QAC/E,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,eAAe,EAAE,WAAW,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IAE/F,OAAO;QACL,mBAAmB;QACnB,kBAAkB;QAElB,gBAAgB,EAAE,KAAK,IAAI,EAAE,CAC3B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YACrB,kBAAkB;YAClB,aAAa,EAAE,kBAAkB;SAClC,CAAC;QACJ,WAAW,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,uBAAuB,CAAC;YAC9C,KAAK;YACL,MAAM;YACN,aAAa,EAAE,kBAAkB;YACjC,kBAAkB;YAClB,IAAI,EAAE,SAAS;SAChB,CAAC;KACL,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"searchAssortments.js","sourceRoot":"","sources":["../../src/services/searchAssortments.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,GAEjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,cAAc,EAA4B,MAAM,uBAAuB,CAAC;AAEjF,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAE5C,WAAwB,EACxB,OAAgF;IAEhF,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvF,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,uBAAuB,CAChE,qBAAqB,CAAC,WAAW,CAAC,EAClC,OAAO,CACR,CAAC;IACF,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;IAEjG,MAAM,mBAAmB,GAA6B;QACpD,WAAW;QACX,cAAc;QACd,kBAAkB;QAClB,SAAS;QACT,GAAG,OAAO;QACV,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB;KACnD,CAAC;IAEF,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC;IAEtD,MAAM,kBAAkB,GACtB,CAAC,MAAM,aAAa,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,EAAE,mBAAmB,CAAC,CAAC;QAC/E,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,eAAe,EAAE,WAAW,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IAE/F,OAAO;QACL,mBAAmB;QACnB,kBAAkB;QAElB,gBAAgB,EAAE,KAAK,IAAI,EAAE,CAC3B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YACrB,kBAAkB;YAClB,aAAa,EAAE,kBAAkB;SAClC,CAAC;QACJ,WAAW,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,uBAAuB,CAAC;YAC9C,KAAK;YACL,MAAM;YACN,aAAa,EAAE,kBAAkB;YACjC,kBAAkB;YAClB,IAAI,EAAE,SAAS;SAChB,CAAC;KACL,CAAC;AACJ,CAAC"}
@@ -1,15 +1,12 @@
1
- import { SearchConfiguration, SearchQuery } from '@unchainedshop/core-filters';
2
- import { Product } from '@unchainedshop/core-products';
3
- import { mongodb } from '@unchainedshop/mongodb';
1
+ import { SearchQuery } from '@unchainedshop/core-filters';
4
2
  import { Modules } from '../modules.js';
5
- export interface SearchProductConfiguration extends SearchConfiguration {
6
- productSelector: mongodb.Filter<Product>;
7
- }
8
- export declare function searchProductsService(this: Modules, searchQuery: SearchQuery, { forceLiveCollection, locale }: {
3
+ import { SearchProductsOptions } from '../directors/index.js';
4
+ export declare function searchProductsService(this: Modules, searchQuery: SearchQuery, options: {
9
5
  forceLiveCollection?: boolean;
10
6
  locale: Intl.Locale;
7
+ userId?: string;
11
8
  }): Promise<{
12
- searchConfiguration: SearchProductConfiguration;
9
+ searchConfiguration: SearchProductsOptions;
13
10
  totalProductIds: string[];
14
11
  aggregatedTotalProductIds: string[];
15
12
  aggregatedFilteredProductIds: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"searchProducts.d.ts","sourceRoot":"","sources":["../../src/services/searchProducts.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,mBAAmB,EACnB,WAAW,EACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,MAAM,WAAW,0BAA2B,SAAQ,mBAAmB;IACrE,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CAC1C;AAED,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,WAAW,EACxB,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE;IAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAA;CAAE;;;;;GAuDxF"}
1
+ {"version":3,"file":"searchProducts.d.ts","sourceRoot":"","sources":["../../src/services/searchProducts.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,WAAW,EACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAkB,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE;IAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GA0DjF"}
@@ -1,17 +1,17 @@
1
1
  import { defaultFilterSelector, defaultProductSelector, defaultSortStage, } from '@unchainedshop/core-filters';
2
2
  import { FilterDirector } from '../directors/index.js';
3
- export async function searchProductsService(searchQuery, { forceLiveCollection, locale }) {
3
+ export async function searchProductsService(searchQuery, options) {
4
4
  const filterActions = await FilterDirector.actions({ searchQuery }, { modules: this });
5
- const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery));
6
- const productSelector = await filterActions.transformProductSelector(defaultProductSelector(searchQuery, { modules: this }), {});
7
- const sortStage = await filterActions.transformSortStage(defaultSortStage(searchQuery));
5
+ const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery), options);
6
+ const productSelector = await filterActions.transformProductSelector(defaultProductSelector(searchQuery, { modules: this }), options);
7
+ const sortStage = await filterActions.transformSortStage(defaultSortStage(searchQuery), options);
8
8
  const searchConfiguration = {
9
9
  searchQuery,
10
10
  filterSelector,
11
11
  productSelector,
12
12
  sortStage,
13
- forceLiveCollection: !!forceLiveCollection,
14
- locale,
13
+ ...options,
14
+ forceLiveCollection: !!options.forceLiveCollection,
15
15
  };
16
16
  if (searchQuery.productIds?.length === 0) {
17
17
  // Restricted to an empty array of products
@@ -1 +1 @@
1
- {"version":3,"file":"searchProducts.js","sourceRoot":"","sources":["../../src/services/searchProducts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,GAGjB,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAKvD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAEzC,WAAwB,EACxB,EAAE,mBAAmB,EAAE,MAAM,EAA0D;IAEvF,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvF,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,uBAAuB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;IACvG,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,wBAAwB,CAClE,sBAAsB,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EACtD,EAAE,CACH,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC;IAExF,MAAM,mBAAmB,GAA+B;QACtD,WAAW;QACX,cAAc;QACd,eAAe;QACf,SAAS;QACT,mBAAmB,EAAE,CAAC,CAAC,mBAAmB;QAC1C,MAAM;KACP,CAAC;IAEF,IAAI,WAAW,CAAC,UAAU,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,2CAA2C;QAC3C,sCAAsC;QACtC,OAAO;YACL,mBAAmB;YACnB,yBAAyB,EAAE,EAAE;YAC7B,4BAA4B,EAAE,EAAE;YAChC,eAAe,EAAE,EAAE;SACpB,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GACnB,CAAC,MAAM,aAAa,CAAC,cAAc,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACtE,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,WAAW,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IAEvF,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,oBAAoB,CAClE,eAAe,EACf,mBAAmB,EACnB,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;IAEF,MAAM,yBAAyB,GAAG,aAAa,CAAC,mBAAmB,CAAC;QAClE,UAAU,EAAE,eAAe;KAC5B,CAAC,CAAC;IAEH,MAAM,4BAA4B,GAAG,aAAa,CAAC,mBAAmB,CAAC;QACrE,UAAU,EAAE,kBAAkB;KAC/B,CAAC,CAAC;IAEH,OAAO;QACL,mBAAmB;QACnB,eAAe;QACf,yBAAyB;QACzB,4BAA4B;KAC7B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"searchProducts.js","sourceRoot":"","sources":["../../src/services/searchProducts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,GAEjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,cAAc,EAAyB,MAAM,uBAAuB,CAAC;AAE9E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAEzC,WAAwB,EACxB,OAAgF;IAEhF,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvF,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,uBAAuB,CAChE,qBAAqB,CAAC,WAAW,CAAC,EAClC,OAAO,CACR,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,wBAAwB,CAClE,sBAAsB,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EACtD,OAAO,CACR,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;IAEjG,MAAM,mBAAmB,GAA0B;QACjD,WAAW;QACX,cAAc;QACd,eAAe;QACf,SAAS;QACT,GAAG,OAAO;QACV,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB;KACnD,CAAC;IAEF,IAAI,WAAW,CAAC,UAAU,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,2CAA2C;QAC3C,sCAAsC;QACtC,OAAO;YACL,mBAAmB;YACnB,yBAAyB,EAAE,EAAE;YAC7B,4BAA4B,EAAE,EAAE;YAChC,eAAe,EAAE,EAAE;SACpB,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GACnB,CAAC,MAAM,aAAa,CAAC,cAAc,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACtE,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,WAAW,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IAEvF,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,oBAAoB,CAClE,eAAe,EACf,mBAAmB,EACnB,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;IAEF,MAAM,yBAAyB,GAAG,aAAa,CAAC,mBAAmB,CAAC;QAClE,UAAU,EAAE,eAAe;KAC5B,CAAC,CAAC;IAEH,MAAM,4BAA4B,GAAG,aAAa,CAAC,mBAAmB,CAAC;QACrE,UAAU,EAAE,kBAAkB;KAC/B,CAAC,CAAC;IAEH,OAAO;QACL,mBAAmB;QACnB,eAAe;QACf,yBAAyB;QACzB,4BAA4B;KAC7B,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unchainedshop/core",
3
- "version": "4.3.2",
3
+ "version": "4.3.3",
4
4
  "main": "lib/core-index.js",
5
5
  "types": "lib/core-index.d.ts",
6
6
  "type": "module",
@@ -2,7 +2,7 @@ import { Assortment } from '@unchainedshop/core-assortments';
2
2
  import { mongodb } from '@unchainedshop/mongodb';
3
3
  import { BaseAdapter, IBaseAdapter } from '@unchainedshop/utils';
4
4
  import { Product } from '@unchainedshop/core-products';
5
- import { Filter, SearchQuery } from '@unchainedshop/core-filters';
5
+ import { Filter, SearchConfiguration, SearchQuery } from '@unchainedshop/core-filters';
6
6
  import { Modules } from '../modules.js';
7
7
 
8
8
  export interface FilterInputText {
@@ -16,6 +16,21 @@ export interface FilterContext {
16
16
  searchQuery: SearchQuery;
17
17
  }
18
18
 
19
+ export interface SearchAssortmentsOptions extends SearchConfiguration {
20
+ assortmentSelector: mongodb.Filter<Assortment>;
21
+ }
22
+
23
+ export interface SearchProductsOptions extends SearchConfiguration {
24
+ productSelector: mongodb.Filter<Product>;
25
+ }
26
+
27
+ export interface TransformOptions {
28
+ key?: string;
29
+ value?: any;
30
+ userId?: string;
31
+ locale?: Intl.Locale;
32
+ }
33
+
19
34
  export interface FilterAdapterActions {
20
35
  aggregateProductIds: (params: { productIds: string[] }) => string[];
21
36
 
@@ -23,37 +38,27 @@ export interface FilterAdapterActions {
23
38
  params: {
24
39
  assortmentIds?: string[];
25
40
  },
26
- options: {
27
- filterSelector: mongodb.Filter<Filter>;
28
- assortmentSelector: mongodb.Filter<Assortment>;
29
- sortStage: mongodb.FindOptions['sort'];
30
- locale: Intl.Locale;
31
- },
41
+ options: SearchAssortmentsOptions,
32
42
  ) => Promise<string[] | undefined>;
33
43
 
34
44
  searchProducts: (
35
45
  params: {
36
46
  productIds?: string[];
37
47
  },
38
- options: {
39
- filterSelector: mongodb.Filter<Filter>;
40
- productSelector: mongodb.Filter<Product>;
41
- sortStage: mongodb.FindOptions['sort'];
42
- locale: Intl.Locale;
43
- },
48
+ options: SearchProductsOptions,
44
49
  ) => Promise<string[] | undefined>;
45
50
 
46
51
  transformFilterSelector: (
47
52
  query: mongodb.Filter<Filter>,
48
- options?: any,
53
+ options?: TransformOptions,
49
54
  ) => Promise<mongodb.Filter<Filter>>;
50
55
  transformProductSelector: (
51
56
  query: mongodb.Filter<Product>,
52
- options?: { key?: string; value?: any },
57
+ options?: TransformOptions,
53
58
  ) => Promise<mongodb.Filter<Product>>;
54
59
  transformSortStage: (
55
60
  sort: mongodb.FindOptions['sort'],
56
- options?: { key: string; value?: any },
61
+ options?: TransformOptions,
57
62
  ) => Promise<mongodb.FindOptions['sort']>;
58
63
  }
59
64
 
@@ -121,9 +121,9 @@ export const FilterDirector: IFilterDirector = {
121
121
  }, defaultStage);
122
122
  },
123
123
 
124
- transformFilterSelector: async (defaultSelector) => {
124
+ transformFilterSelector: async (defaultSelector, options) => {
125
125
  return reduceAdapters<mongodb.Filter<Filter>>(async (lastSelector, adapter) => {
126
- return adapter.transformFilterSelector(await lastSelector);
126
+ return adapter.transformFilterSelector(await lastSelector, options);
127
127
  }, defaultSelector);
128
128
  },
129
129
  };
@@ -5,10 +5,18 @@ import { FilterDirector } from '../directors/FilterDirector.js';
5
5
  export async function loadFiltersService(
6
6
  this: Modules,
7
7
  searchQuery: SearchQuery,
8
- { productIds, forceLiveCollection }: { productIds: string[]; forceLiveCollection: boolean },
8
+ options: {
9
+ productIds: string[];
10
+ forceLiveCollection?: boolean;
11
+ locale?: Intl.Locale;
12
+ userId?: string;
13
+ },
9
14
  ) {
10
15
  const filterActions = await FilterDirector.actions({ searchQuery }, { modules: this });
11
- const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery));
16
+ const filterSelector = await filterActions.transformFilterSelector(
17
+ defaultFilterSelector(searchQuery),
18
+ options,
19
+ );
12
20
 
13
21
  if (!filterSelector) return [];
14
22
 
@@ -32,15 +40,15 @@ export async function loadFiltersService(
32
40
  filter,
33
41
  {
34
42
  searchQuery,
35
- forceLiveCollection,
36
- allProductIds: productIds,
43
+ forceLiveCollection: !!options.forceLiveCollection,
44
+ allProductIds: options.productIds,
37
45
  otherFilters: sortedFilters,
38
46
  },
39
47
  { modules: this },
40
48
  );
41
49
 
42
50
  return {
43
- forceLiveCollection,
51
+ forceLiveCollection: !!options.forceLiveCollection,
44
52
  searchQuery,
45
53
  filter,
46
54
  examinedProductIdSet,
@@ -1,36 +1,33 @@
1
- import { Assortment } from '@unchainedshop/core-assortments';
2
1
  import {
3
2
  defaultAssortmentSelector,
4
3
  defaultFilterSelector,
5
4
  defaultSortStage,
6
- SearchConfiguration,
7
5
  SearchQuery,
8
6
  } from '@unchainedshop/core-filters';
9
- import { mongodb } from '@unchainedshop/mongodb';
10
7
  import { Modules } from '../modules.js';
11
- import { FilterDirector } from '../directors/index.js';
12
- export interface SearchAssortmentConfiguration extends SearchConfiguration {
13
- assortmentSelector: mongodb.Filter<Assortment>;
14
- }
8
+ import { FilterDirector, SearchAssortmentsOptions } from '../directors/index.js';
15
9
 
16
10
  export async function searchAssortmentsService(
17
11
  this: Modules,
18
12
  searchQuery: SearchQuery,
19
- { forceLiveCollection, locale }: { forceLiveCollection?: boolean; locale: Intl.Locale },
13
+ options: { forceLiveCollection?: boolean; locale: Intl.Locale; userId?: string },
20
14
  ) {
21
15
  const filterActions = await FilterDirector.actions({ searchQuery }, { modules: this });
22
16
 
23
- const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery));
17
+ const filterSelector = await filterActions.transformFilterSelector(
18
+ defaultFilterSelector(searchQuery),
19
+ options,
20
+ );
24
21
  const assortmentSelector = defaultAssortmentSelector(searchQuery);
25
- const sortStage = await filterActions.transformSortStage(defaultSortStage(searchQuery));
22
+ const sortStage = await filterActions.transformSortStage(defaultSortStage(searchQuery), options);
26
23
 
27
- const searchConfiguration: SearchAssortmentConfiguration = {
24
+ const searchConfiguration: SearchAssortmentsOptions = {
28
25
  searchQuery,
29
26
  filterSelector,
30
27
  assortmentSelector,
31
28
  sortStage,
32
- forceLiveCollection: !!forceLiveCollection,
33
- locale,
29
+ ...options,
30
+ forceLiveCollection: !!options.forceLiveCollection,
34
31
  };
35
32
 
36
33
  const assortmentIds = await searchQuery.assortmentIds;
@@ -2,38 +2,35 @@ import {
2
2
  defaultFilterSelector,
3
3
  defaultProductSelector,
4
4
  defaultSortStage,
5
- SearchConfiguration,
6
5
  SearchQuery,
7
6
  } from '@unchainedshop/core-filters';
8
- import { Product } from '@unchainedshop/core-products';
9
- import { mongodb } from '@unchainedshop/mongodb';
10
7
  import { Modules } from '../modules.js';
11
- import { FilterDirector } from '../directors/index.js';
12
- export interface SearchProductConfiguration extends SearchConfiguration {
13
- productSelector: mongodb.Filter<Product>;
14
- }
8
+ import { FilterDirector, SearchProductsOptions } from '../directors/index.js';
15
9
 
16
10
  export async function searchProductsService(
17
11
  this: Modules,
18
12
  searchQuery: SearchQuery,
19
- { forceLiveCollection, locale }: { forceLiveCollection?: boolean; locale: Intl.Locale },
13
+ options: { forceLiveCollection?: boolean; locale: Intl.Locale; userId?: string },
20
14
  ) {
21
15
  const filterActions = await FilterDirector.actions({ searchQuery }, { modules: this });
22
16
 
23
- const filterSelector = await filterActions.transformFilterSelector(defaultFilterSelector(searchQuery));
17
+ const filterSelector = await filterActions.transformFilterSelector(
18
+ defaultFilterSelector(searchQuery),
19
+ options,
20
+ );
24
21
  const productSelector = await filterActions.transformProductSelector(
25
22
  defaultProductSelector(searchQuery, { modules: this }),
26
- {},
23
+ options,
27
24
  );
28
- const sortStage = await filterActions.transformSortStage(defaultSortStage(searchQuery));
25
+ const sortStage = await filterActions.transformSortStage(defaultSortStage(searchQuery), options);
29
26
 
30
- const searchConfiguration: SearchProductConfiguration = {
27
+ const searchConfiguration: SearchProductsOptions = {
31
28
  searchQuery,
32
29
  filterSelector,
33
30
  productSelector,
34
31
  sortStage,
35
- forceLiveCollection: !!forceLiveCollection,
36
- locale,
32
+ ...options,
33
+ forceLiveCollection: !!options.forceLiveCollection,
37
34
  };
38
35
 
39
36
  if (searchQuery.productIds?.length === 0) {