@dcupl/common 0.0.81-beta.4 → 0.0.81-beta.6

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.
Files changed (51) hide show
  1. package/dist/lib-cjs/changeDetection.d.ts +7 -7
  2. package/dist/lib-cjs/changeDetection.js +29 -32
  3. package/dist/lib-cjs/changeDetection.js.map +1 -1
  4. package/dist/lib-cjs/getFacets.js +5 -5
  5. package/dist/lib-cjs/getFacets.js.map +1 -1
  6. package/dist/lib-cjs/helper.d.ts +1 -0
  7. package/dist/lib-cjs/helper.js +7 -1
  8. package/dist/lib-cjs/helper.js.map +1 -1
  9. package/dist/lib-cjs/query-builder.d.ts +10 -9
  10. package/dist/lib-cjs/query-builder.js +103 -92
  11. package/dist/lib-cjs/query-builder.js.map +1 -1
  12. package/dist/lib-cjs/queryData.js +14 -14
  13. package/dist/lib-cjs/queryData.js.map +1 -1
  14. package/dist/lib-cjs/tsconfig-cjs.tsbuildinfo +1 -1
  15. package/dist/lib-cjs/types/dcupl.types.d.ts +4 -67
  16. package/dist/lib-cjs/types/dcupl.types.js +0 -12
  17. package/dist/lib-cjs/types/dcupl.types.js.map +1 -1
  18. package/dist/lib-cjs/types/index.d.ts +1 -0
  19. package/dist/lib-cjs/types/index.js +1 -0
  20. package/dist/lib-cjs/types/index.js.map +1 -1
  21. package/dist/lib-cjs/types/list.types.d.ts +3 -4
  22. package/dist/lib-cjs/types/query.types.d.ts +70 -0
  23. package/dist/lib-cjs/types/query.types.js +15 -0
  24. package/dist/lib-cjs/types/query.types.js.map +1 -0
  25. package/dist/lib-cjs/types/selection.types.d.ts +1 -1
  26. package/dist/lib-esm/changeDetection.d.ts +7 -7
  27. package/dist/lib-esm/changeDetection.js +29 -32
  28. package/dist/lib-esm/changeDetection.js.map +1 -1
  29. package/dist/lib-esm/getFacets.js +6 -6
  30. package/dist/lib-esm/getFacets.js.map +1 -1
  31. package/dist/lib-esm/helper.d.ts +1 -0
  32. package/dist/lib-esm/helper.js +5 -0
  33. package/dist/lib-esm/helper.js.map +1 -1
  34. package/dist/lib-esm/query-builder.d.ts +10 -9
  35. package/dist/lib-esm/query-builder.js +102 -91
  36. package/dist/lib-esm/query-builder.js.map +1 -1
  37. package/dist/lib-esm/queryData.js +15 -15
  38. package/dist/lib-esm/queryData.js.map +1 -1
  39. package/dist/lib-esm/tsconfig.tsbuildinfo +1 -1
  40. package/dist/lib-esm/types/dcupl.types.d.ts +4 -67
  41. package/dist/lib-esm/types/dcupl.types.js +1 -11
  42. package/dist/lib-esm/types/dcupl.types.js.map +1 -1
  43. package/dist/lib-esm/types/index.d.ts +1 -0
  44. package/dist/lib-esm/types/index.js +1 -0
  45. package/dist/lib-esm/types/index.js.map +1 -1
  46. package/dist/lib-esm/types/list.types.d.ts +3 -4
  47. package/dist/lib-esm/types/query.types.d.ts +70 -0
  48. package/dist/lib-esm/types/query.types.js +12 -0
  49. package/dist/lib-esm/types/query.types.js.map +1 -0
  50. package/dist/lib-esm/types/selection.types.d.ts +1 -1
  51. package/package.json +2 -4
@@ -1,5 +1,5 @@
1
- import { FilterOptions } from './filter.types';
2
- import { DcuplItemOptions, DcuplItemsOptions } from './list.types';
1
+ import { DcuplUpdateMessage } from '../changeDetection';
2
+ import { DcuplItemsOptions } from './list.types';
3
3
  export type DcuplInitOptions = {
4
4
  config?: DcuplInitConfig;
5
5
  logs?: DcuplInitLoggingConfig;
@@ -41,69 +41,6 @@ export type DcuplResponse<T> = {
41
41
  metrics: DcuplMetrics;
42
42
  };
43
43
  export type DcuplGlobalItemsOptions<T> = DcuplItemsOptions<T> & {
44
- listKey: string;
44
+ modelKey: string;
45
45
  };
46
- export type DcuplGlobalItemOptions<T> = DcuplItemOptions<T> & {
47
- listKey: string;
48
- };
49
- export type DcuplGlobalQueryOptions<T> = DcuplItemsOptions<T> & {
50
- listKey: string;
51
- query: FilterOptions[];
52
- };
53
- export type DcuplQueryTransformOptions = 'lowercase' | 'trim' | 'removeWhitespace';
54
- type DcuplQueryOptions = {
55
- transform?: DcuplQueryTransformOptions[];
56
- /**
57
- * Invert possible for eq, typeof
58
- */
59
- invert?: boolean;
60
- };
61
- export declare const DcuplQueryOperatorsAsArray: readonly ["eq", "find", "gt", "gte", "lt", "lte", "typeof", "isTruthy", "size"];
62
- export type DcuplQueryOperator = (typeof DcuplQueryOperatorsAsArray)[number];
63
- export type DcuplQueryType = 'and' | 'or';
64
- type DcuplQueryBase = {
65
- /**
66
- * title, something.key someArray[0].key
67
- * */
68
- attribute: string;
69
- options?: DcuplQueryOptions;
70
- };
71
- type DcuplQueryEq = DcuplQueryBase & {
72
- operator: 'eq';
73
- /**
74
- * You may search for any value but
75
- * only values of type string and { key:string } may be used for indexed search
76
- */
77
- value: any;
78
- };
79
- type DcuplQueryFind = DcuplQueryBase & {
80
- operator: 'find';
81
- value: Record<string, unknown> | string;
82
- };
83
- type DcuplQueryNumbers = DcuplQueryBase & {
84
- operator: 'gt' | 'lt' | 'gte' | 'lte';
85
- value: string | number | Date;
86
- };
87
- type DcuplQueryTypeOf = DcuplQueryBase & {
88
- operator: 'typeof';
89
- value: string;
90
- };
91
- type DcuplQueryIsTruthy = DcuplQueryBase & {
92
- operator: 'isTruthy';
93
- value: boolean;
94
- };
95
- type DcuplQuerySize = DcuplQueryBase & {
96
- operator: 'size';
97
- value: number;
98
- };
99
- export type DcuplQuery = DcuplQueryEq | DcuplQueryNumbers | DcuplQueryTypeOf | DcuplQueryIsTruthy | DcuplQuerySize | DcuplQueryFind;
100
- export type DcuplQueryGroup<QueryType extends DcuplQuery | DcuplQueryGroup = DcuplQuery> = {
101
- queryType?: DcuplQueryType;
102
- queryKey?: string;
103
- query: Array<QueryType>;
104
- options?: DcuplQueryOptions;
105
- };
106
- export type DcuplGlobalQueryOptionsNew<T> = DcuplItemsOptions<T> & {
107
- listKey: string;
108
- } & DcuplQueryGroup<DcuplQueryGroup<DcuplQuery>>;
109
- export {};
46
+ export type CallbackFunction = (item: DcuplUpdateMessage) => void;
@@ -1,15 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DcuplQueryOperatorsAsArray = void 0;
4
- exports.DcuplQueryOperatorsAsArray = [
5
- 'eq',
6
- 'find',
7
- 'gt',
8
- 'gte',
9
- 'lt',
10
- 'lte',
11
- 'typeof',
12
- 'isTruthy',
13
- 'size',
14
- ];
15
3
  //# sourceMappingURL=dcupl.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dcupl.types.js","sourceRoot":"","sources":["../../../src/types/dcupl.types.ts"],"names":[],"mappings":";;;AAkEa,QAAA,0BAA0B,GAAG;IACxC,IAAI;IACJ,MAAM;IACN,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,KAAK;IACL,QAAQ;IACR,UAAU;IACV,MAAM;CACE,CAAC"}
1
+ {"version":3,"file":"dcupl.types.js","sourceRoot":"","sources":["../../../src/types/dcupl.types.ts"],"names":[],"mappings":""}
@@ -6,6 +6,7 @@ export * from './internal.types';
6
6
  export * from './list.types';
7
7
  export * from './model.types';
8
8
  export * from './projection.types';
9
+ export * from './query.types';
9
10
  export * from './selection.types';
10
11
  export * from './section.types';
11
12
  export * from './suggestion.types';
@@ -22,6 +22,7 @@ __exportStar(require("./internal.types"), exports);
22
22
  __exportStar(require("./list.types"), exports);
23
23
  __exportStar(require("./model.types"), exports);
24
24
  __exportStar(require("./projection.types"), exports);
25
+ __exportStar(require("./query.types"), exports);
25
26
  __exportStar(require("./selection.types"), exports);
26
27
  __exportStar(require("./section.types"), exports);
27
28
  __exportStar(require("./suggestion.types"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,gDAA8B;AAC9B,iDAA+B;AAC/B,iDAA+B;AAC/B,mDAAiC;AACjC,+CAA6B;AAC7B,gDAA8B;AAC9B,qDAAmC;AACnC,oDAAkC;AAClC,kDAAgC;AAChC,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,gDAA8B;AAC9B,iDAA+B;AAC/B,iDAA+B;AAC/B,mDAAiC;AACjC,+CAA6B;AAC7B,gDAA8B;AAC9B,qDAAmC;AACnC,gDAA8B;AAC9B,oDAAkC;AAClC,kDAAgC;AAChC,qDAAmC"}
@@ -1,4 +1,4 @@
1
- import { DcuplGlobalQueryOptionsNew } from './dcupl.types';
1
+ import { DcuplGlobalQueryOptionsNew } from './query.types';
2
2
  import { ViewDefinition, ModelAttribute } from './model.types';
3
3
  import { Projection, SortingProjection } from './projection.types';
4
4
  export type DcuplItemsOptions<T> = {
@@ -30,8 +30,8 @@ export type DcuplFiltersOptions = DcuplFilterOptions & {
30
30
  filterKeys?: string[];
31
31
  };
32
32
  export type DcuplListOptions<ModelNames extends string = string> = {
33
- listKey: ModelNames;
34
- name?: string;
33
+ modelKey: ModelNames;
34
+ key?: string;
35
35
  listItemKeys?: string[];
36
36
  empty?: boolean;
37
37
  };
@@ -54,7 +54,6 @@ export type ListMetadata = {
54
54
  initialSize: number;
55
55
  appliedQuery: DcuplGlobalQueryOptionsNew<any>;
56
56
  attributes: ModelAttribute[];
57
- itemOptions: DcuplItemsOptions<any>;
58
57
  views: ViewDefinition[];
59
58
  };
60
59
  export type ViewMetadata = {
@@ -0,0 +1,70 @@
1
+ import { Projection, SortingProjection } from './projection.types';
2
+ export type DcuplQueryTransformOptions = 'lowercase' | 'trim' | 'removeWhitespace';
3
+ type DcuplQueryOptions = {
4
+ transform?: DcuplQueryTransformOptions[];
5
+ /**
6
+ * Invert possible for eq, typeof
7
+ */
8
+ invert?: boolean;
9
+ };
10
+ export declare const DcuplQueryOperatorsAsArray: readonly ["eq", "find", "gt", "gte", "lt", "lte", "typeof", "isTruthy", "size"];
11
+ export type DcuplQueryOperator = (typeof DcuplQueryOperatorsAsArray)[number];
12
+ export type DcuplQueryType = 'and' | 'or';
13
+ type DcuplQueryBase = {
14
+ attribute: string;
15
+ options?: DcuplQueryOptions;
16
+ };
17
+ type DcuplQueryEq = DcuplQueryBase & {
18
+ operator: 'eq';
19
+ /**
20
+ * You may search for any value but
21
+ * only values of type string and { key:string } may be used for indexed search
22
+ */
23
+ value: any;
24
+ };
25
+ type DcuplQueryFind = DcuplQueryBase & {
26
+ operator: 'find';
27
+ value: Record<string, unknown> | string;
28
+ };
29
+ type DcuplQueryNumbers = DcuplQueryBase & {
30
+ operator: 'gt' | 'lt' | 'gte' | 'lte';
31
+ value: string | number | Date;
32
+ };
33
+ type DcuplQueryTypeOf = DcuplQueryBase & {
34
+ operator: 'typeof';
35
+ value: string;
36
+ };
37
+ type DcuplQueryIsTruthy = DcuplQueryBase & {
38
+ operator: 'isTruthy';
39
+ value: boolean;
40
+ };
41
+ type DcuplQuerySize = DcuplQueryBase & {
42
+ operator: 'size';
43
+ value: number;
44
+ };
45
+ export type DcuplQuery = DcuplQueryEq | DcuplQueryNumbers | DcuplQueryTypeOf | DcuplQueryIsTruthy | DcuplQuerySize | DcuplQueryFind;
46
+ export type DcuplQueryGroup<ChildQuery extends DcuplQuery | DcuplQueryGroup = any> = {
47
+ groupType?: DcuplQueryType;
48
+ groupKey?: string;
49
+ queries: Array<ChildQuery>;
50
+ options?: DcuplQueryOptions;
51
+ };
52
+ export type DcuplGlobalQueryOptionsNew<T> = DcuplGlobalQueryOptions<T>;
53
+ type DcuplItemOptions<T> = {
54
+ start?: number;
55
+ count?: number;
56
+ projection?: Projection<T>;
57
+ sort?: SortingProjection<T>;
58
+ };
59
+ export type DcuplGlobalQueryOptions<T> = {
60
+ modelKey: string;
61
+ } & DcuplItemOptions<T> & DcuplQueryGroup;
62
+ export type DcuplGlobalItemOptions<T> = {
63
+ modelKey: string;
64
+ itemKey: string;
65
+ } & DcuplItemOptions<T>;
66
+ export type DcuplListQueryOptions<T> = DcuplItemOptions<T> & DcuplQueryGroup;
67
+ export type DcuplListItemOptions<T> = DcuplItemOptions<T> & {
68
+ itemKey: string;
69
+ };
70
+ export {};
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DcuplQueryOperatorsAsArray = void 0;
4
+ exports.DcuplQueryOperatorsAsArray = [
5
+ 'eq',
6
+ 'find',
7
+ 'gt',
8
+ 'gte',
9
+ 'lt',
10
+ 'lte',
11
+ 'typeof',
12
+ 'isTruthy',
13
+ 'size',
14
+ ];
15
+ //# sourceMappingURL=query.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.types.js","sourceRoot":"","sources":["../../../src/types/query.types.ts"],"names":[],"mappings":";;;AAYa,QAAA,0BAA0B,GAAG;IACxC,IAAI;IACJ,MAAM;IACN,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,KAAK;IACL,QAAQ;IACR,UAAU;IACV,MAAM;CACE,CAAC"}
@@ -8,7 +8,7 @@ export type DcuplSelectionItem = {
8
8
  export type DcuplSelection = {
9
9
  uid?: string;
10
10
  selectionKey: string;
11
- listKey?: string;
11
+ modelKey?: string;
12
12
  items?: DcuplSelectionItem[];
13
13
  properties?: DcuplSelectionProperty;
14
14
  };
@@ -1,4 +1,4 @@
1
- import { Observable } from 'rxjs';
1
+ import { CallbackFunction } from './types';
2
2
  export type DcuplUpdateScope = 'all' | 'global' | 'list' | 'list$';
3
3
  export type DcuplUpdateTrigger = 'user' | 'loader';
4
4
  export type DcuplUpdateType = 'loader_fetch_finished' | 'file_loaded' | 'file_processed' | 'dcupl_initialized' | 'dcupl_updated_manually' | 'data_reprocessed_manually' | 'result_updated' | 'filter_applied' | 'global_triggered_update';
@@ -12,20 +12,20 @@ export type DcuplUpdateMessage = {
12
12
  title?: string;
13
13
  origin?: DcuplUpdateTrigger;
14
14
  duration?: number;
15
- listId?: string;
15
+ originCdRefKey?: string;
16
16
  modelKey?: string;
17
17
  cloneResult?: boolean;
18
18
  };
19
19
  export declare class ChangeDetector {
20
- protected listId: string;
20
+ key: string;
21
21
  protected parentCd: ChangeDetector | undefined;
22
- private update$;
23
- private sub;
22
+ private off;
23
+ private updateListener;
24
24
  constructor();
25
- _init(listId: string, parentCd?: ChangeDetector): void;
25
+ _init(cdRefKey: string, parentCd?: ChangeDetector): void;
26
26
  destroy(): void;
27
27
  trigger(msg: DcuplUpdateMessage): void;
28
- on$(): Observable<DcuplUpdateMessage>;
28
+ on(cb: CallbackFunction): () => void;
29
29
  }
30
30
  export declare const clone: (obj: any, shouldClone: boolean) => any;
31
31
  export declare const trigger: (msg: DcuplUpdateMessage) => any;
@@ -1,45 +1,41 @@
1
1
  import cloneDeep from 'lodash/cloneDeep';
2
- import { Subject } from 'rxjs';
3
- import { map } from 'rxjs/operators';
4
2
  import { perf } from './performance';
5
3
  var ChangeDetector = /** @class */ (function () {
6
4
  function ChangeDetector() {
7
- this.update$ = new Subject();
5
+ this.updateListener = new Set();
8
6
  }
9
- ChangeDetector.prototype._init = function (listId, parentCd) {
7
+ ChangeDetector.prototype._init = function (cdRefKey, parentCd) {
10
8
  var _this = this;
11
- this.listId = listId;
9
+ this.key = cdRefKey;
12
10
  this.parentCd = parentCd;
13
11
  if (this.parentCd) {
14
- this.sub = this.parentCd.on$().subscribe(function (msg) {
12
+ this.off = this.parentCd.on(function (msg) {
15
13
  var _a;
16
- if (msg.action === 'update' && msg.listId == ((_a = _this.parentCd) === null || _a === void 0 ? void 0 : _a.listId)) {
17
- _this.trigger({
18
- scope: 'list',
19
- action: 'update',
20
- title: 'global_triggered_update',
21
- type: 'global_triggered_update',
22
- });
14
+ if (msg.action === 'update' && msg.originCdRefKey === ((_a = _this.parentCd) === null || _a === void 0 ? void 0 : _a.key)) {
15
+ _this.trigger(msg);
23
16
  }
24
17
  });
25
18
  }
26
19
  };
27
20
  ChangeDetector.prototype.destroy = function () {
28
- if (this.sub) {
29
- this.sub.unsubscribe();
21
+ if (this.off) {
22
+ this.off();
30
23
  }
31
24
  };
32
25
  ChangeDetector.prototype.trigger = function (msg) {
33
- if (!msg.listId) {
34
- msg.listId = this.listId;
35
- }
36
- this.update$.next(msg);
37
- if (this.parentCd) {
38
- this.parentCd.trigger(msg);
26
+ if (!msg.originCdRefKey) {
27
+ msg.originCdRefKey = this.key;
39
28
  }
29
+ this.updateListener.forEach(function (cb) {
30
+ cb(msg);
31
+ });
40
32
  };
41
- ChangeDetector.prototype.on$ = function () {
42
- return this.update$.asObservable();
33
+ ChangeDetector.prototype.on = function (cb) {
34
+ var _this = this;
35
+ this.updateListener.add(cb);
36
+ return function () {
37
+ _this.updateListener.delete(cb);
38
+ };
43
39
  };
44
40
  return ChangeDetector;
45
41
  }());
@@ -66,10 +62,9 @@ export var trigger = function (msg) {
66
62
  }
67
63
  var cdRef = this.cdRef;
68
64
  var start = perf.now();
69
- var listId = this.listId;
70
65
  var modelKey = (_a = this.model) === null || _a === void 0 ? void 0 : _a.key;
71
- if (listId) {
72
- msg.listId = listId;
66
+ if (!msg.originCdRefKey && cdRef.key) {
67
+ msg.originCdRefKey = cdRef.key;
73
68
  }
74
69
  if (modelKey) {
75
70
  msg.modelKey = modelKey;
@@ -79,23 +74,25 @@ export var trigger = function (msg) {
79
74
  msg.method = _propertyKey;
80
75
  msg.args = args;
81
76
  if (result && 'pipe' in result) {
82
- result = result.pipe(map(function (value) {
83
- cdRef.trigger(msg);
84
- return clone(value, !!msg.cloneResult);
85
- }));
77
+ // result = (result as Observable<any>).pipe(
78
+ // map((value) => {
79
+ // cdRef?.trigger(msg);
80
+ // return clone(value, !!msg.cloneResult);
81
+ // }),
82
+ // );
86
83
  return result;
87
84
  }
88
85
  else if (result && 'then' in result) {
89
86
  return result.then(function (value) {
90
87
  var end = perf.now();
91
88
  msg.duration = end - start;
92
- cdRef.trigger(msg);
89
+ cdRef === null || cdRef === void 0 ? void 0 : cdRef.trigger(msg);
93
90
  return clone(value, !!msg.cloneResult);
94
91
  });
95
92
  }
96
93
  var end = perf.now();
97
94
  msg.duration = end - start;
98
- cdRef.trigger(msg);
95
+ cdRef === null || cdRef === void 0 ? void 0 : cdRef.trigger(msg);
99
96
  try {
100
97
  return clone(result, !!msg.cloneResult);
101
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"changeDetection.js","sourceRoot":"","sources":["../../src/changeDetection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"changeDetection.js","sourceRoot":"","sources":["../../src/changeDetection.ts"],"names":[],"mappings":"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"}
@@ -35,13 +35,13 @@ var __values = (this && this.__values) || function(o) {
35
35
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
36
36
  };
37
37
  import { queryData } from './queryData';
38
- import { QueryBuilder } from './query-builder';
38
+ import { DcuplQueryBuilder } from './query-builder';
39
39
  import { cloneDeep } from 'lodash';
40
- var queryBuilder = new QueryBuilder();
40
+ var queryBuilder = new DcuplQueryBuilder();
41
41
  export function getFacets(modelData, remoteModelData, options, query, attributeKey, modelIndexMap) {
42
42
  var e_1, _a, e_2, _b, e_3, _c;
43
43
  var filterItemEntries = [];
44
- var queryWithoutCurrentFilter = queryBuilder.removeQuery({ queryKey: attributeKey }, cloneDeep(query));
44
+ var queryWithoutCurrentFilter = queryBuilder.removeQuery({ groupKey: attributeKey }, cloneDeep(query));
45
45
  var currentFilteredData = queryData(modelData, queryWithoutCurrentFilter, false, modelIndexMap);
46
46
  var remoteModelDataKeys = remoteModelData ? __spreadArray([], __read(remoteModelData === null || remoteModelData === void 0 ? void 0 : remoteModelData.keys()), false) : [];
47
47
  var validFacetKeys = new Set(remoteModelDataKeys);
@@ -119,10 +119,10 @@ export function getFacets(modelData, remoteModelData, options, query, attributeK
119
119
  return filterItemEntries;
120
120
  }
121
121
  var isFilterItemEntrySelected = function (groupKey, facetKey, query) {
122
- var idx = query.query.findIndex(function (query) { return queryBuilder.isQueryGroup(query) && query.queryKey === groupKey; });
122
+ var idx = query.queries.findIndex(function (query) { return queryBuilder.isQueryGroup(query) && query.groupKey === groupKey; });
123
123
  if (idx > -1) {
124
- var queryGroup = query.query[idx];
125
- return !!queryGroup.query.find(function (query) {
124
+ var queryGroup = query.queries[idx];
125
+ return !!queryGroup.queries.find(function (query) {
126
126
  var _a;
127
127
  if (queryBuilder.isQuery(query)) {
128
128
  var key = ((_a = query.value) === null || _a === void 0 ? void 0 : _a.key) || query.value;
@@ -1 +1 @@
1
- {"version":3,"file":"getFacets.js","sourceRoot":"","sources":["../../src/getFacets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getFacets.js","sourceRoot":"","sources":["../../src/getFacets.ts"],"names":[],"mappings":"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"}
@@ -6,3 +6,4 @@ export declare const uniqBy: (arr: any[], predicate: string) => any[];
6
6
  export declare const groupBy: (arr: any[], criteria: any) => any;
7
7
  export declare function generateKey(length?: number): string;
8
8
  export declare const removeTrailingSlash: (str: string) => string;
9
+ export declare const escapeRegExp: (text: string) => string;
@@ -70,4 +70,9 @@ export function generateKey(length) {
70
70
  export var removeTrailingSlash = function (str) {
71
71
  return str.replace(/\/+$/, '');
72
72
  };
73
+ export var escapeRegExp = function (text) {
74
+ if (typeof text !== 'string')
75
+ return '';
76
+ return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
77
+ };
73
78
  //# sourceMappingURL=helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/helper.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,23 @@
1
1
  import { DcuplGlobalQueryOptionsNew, DcuplItemsOptions, DcuplQuery, DcuplQueryGroup } from './types';
2
- export declare class QueryBuilder {
2
+ export declare class DcuplQueryBuilder {
3
3
  private _defaultQueryOptions;
4
4
  private _initOptions;
5
- private queryOptions;
5
+ private currentQuery;
6
6
  constructor();
7
7
  init(options: {
8
- listKey: string;
8
+ modelKey: string;
9
9
  }): void;
10
- reset(): void;
10
+ reset(): DcuplGlobalQueryOptionsNew<any>;
11
11
  isQuery(query: Partial<DcuplQuery> | Partial<DcuplQueryGroup>): query is DcuplQuery;
12
12
  isQueryGroup(query: Partial<DcuplQuery> | Partial<DcuplQueryGroup>): query is DcuplQueryGroup;
13
- isRootQueryGroup(query: Partial<DcuplQuery> | Partial<DcuplQueryGroup>): query is DcuplGlobalQueryOptionsNew<any>;
14
- getQueryGroup(queryKey?: string): DcuplQueryGroup | undefined;
13
+ isRootQueryGroup(groupOrQuery: Partial<DcuplGlobalQueryOptionsNew<any>> | Partial<DcuplQuery> | Partial<DcuplQueryGroup>): groupOrQuery is DcuplGlobalQueryOptionsNew<any>;
14
+ getQueryGroup(groupKey?: string): DcuplQueryGroup | undefined;
15
15
  getQuery(): DcuplGlobalQueryOptionsNew<any>;
16
- hasQueryGroup(queryKey: string): boolean;
17
- applyItemOptions(options: DcuplItemsOptions<any>): DcuplGlobalQueryOptionsNew<any>;
18
- applyQuery(queryToApply: DcuplQueryGroup | DcuplQuery | DcuplQuery[] | DcuplQueryGroup[], options?: {
16
+ hasQueryGroup(groupKey: string): boolean;
17
+ applyOptions(options: DcuplItemsOptions<any>, mode?: 'set' | 'update'): DcuplGlobalQueryOptionsNew<any>;
18
+ applyQuery(queryToApply: DcuplGlobalQueryOptionsNew<any> | DcuplQueryGroup | DcuplQuery | DcuplQuery[] | DcuplQueryGroup[], options?: {
19
19
  mode?: 'set' | 'add';
20
20
  }, relevantQuery?: DcuplGlobalQueryOptionsNew<any>): DcuplGlobalQueryOptionsNew<any>;
21
+ removeAllQueries(): DcuplGlobalQueryOptionsNew<any>;
21
22
  removeQuery(queryToRemove: Partial<DcuplQueryGroup> | DcuplQuery, relevantQuery?: DcuplGlobalQueryOptionsNew<any>): DcuplGlobalQueryOptionsNew<any>;
22
23
  }