@dcupl/common 0.0.72 → 0.0.73

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.
@@ -1,2 +1,2 @@
1
1
  import { ListItem, FilterConstraint, FilterItemEntry, DcuplFilterOptions, InverseIndexValuesMap } from './types';
2
- export declare function getFacetEntries<ListType extends ListItem = ListItem>(modelData: Map<string, ListType>, remoteModelData: Map<string, ListType>, options: DcuplFilterOptions, constraints: FilterConstraint[], attributeKey: string, indexMap?: InverseIndexValuesMap): FilterItemEntry[];
2
+ export declare function getFacetEntries<ListType extends ListItem = ListItem>(modelData: Map<string, ListType>, remoteModelData: Map<string, ListType>, options: DcuplFilterOptions, constraints: FilterConstraint[], attributeKey: string, indexMap: InverseIndexValuesMap): FilterItemEntry[];
@@ -1,4 +1,29 @@
1
1
  "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
2
27
  var __values = (this && this.__values) || function(o) {
3
28
  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
29
  if (m) return m.call(o);
@@ -15,49 +40,56 @@ exports.getFacetEntries = void 0;
15
40
  var getFilteredData_1 = require("./getFilteredData");
16
41
  var helper_1 = require("./helper");
17
42
  function getFacetEntries(modelData, remoteModelData, options, constraints, attributeKey, indexMap) {
18
- var e_1, _a;
43
+ var e_1, _a, e_2, _b;
19
44
  var filterItemEntries = [];
20
45
  var constraintsExceptSameFilterKey = constraints.filter(function (c) { return c.filterKey !== attributeKey; });
21
46
  var currentFilteredData = (0, getFilteredData_1.getFilteredData)(modelData, constraintsExceptSameFilterKey, false);
22
- var _loop_1 = function (dataEntry) {
47
+ var validFacetKeys = new Set(__spreadArray([], __read(remoteModelData.keys()), false));
48
+ if (options.excludeUndefineds === false) {
49
+ try {
50
+ for (var _c = __values(indexMap.keys()), _d = _c.next(); !_d.done; _d = _c.next()) {
51
+ var key = _d.value;
52
+ validFacetKeys.add(key);
53
+ }
54
+ }
55
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
56
+ finally {
57
+ try {
58
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
59
+ }
60
+ finally { if (e_1) throw e_1.error; }
61
+ }
62
+ }
63
+ var _loop_1 = function (validFacetKey) {
64
+ var e_3, _g;
23
65
  var result = new Map();
24
- if (indexMap) {
25
- var keys = indexMap.get(dataEntry.key);
26
- if (keys) {
27
- if (options === null || options === void 0 ? void 0 : options.calculateFacets) {
28
- keys.forEach(function (key) {
29
- if (currentFilteredData.has(key)) {
30
- result.set(key, currentFilteredData.get(key));
31
- }
32
- });
33
- }
34
- else {
35
- var key = keys.find(function (k) { return currentFilteredData.has(k); });
36
- if (key) {
37
- result.set(key, currentFilteredData.get(key));
66
+ var indexedValueKeys = indexMap.get(validFacetKey) || [];
67
+ try {
68
+ for (var indexedValueKeys_1 = (e_3 = void 0, __values(indexedValueKeys)), indexedValueKeys_1_1 = indexedValueKeys_1.next(); !indexedValueKeys_1_1.done; indexedValueKeys_1_1 = indexedValueKeys_1.next()) {
69
+ var key = indexedValueKeys_1_1.value;
70
+ var value = currentFilteredData.get(key);
71
+ if (value) {
72
+ result.set(key, value);
73
+ if (!(options === null || options === void 0 ? void 0 : options.calculateFacets)) {
74
+ break;
38
75
  }
39
76
  }
40
77
  }
41
78
  }
42
- else {
43
- // Fallback if there is no indexMap
44
- var constraintToAdd = {
45
- uid: '',
46
- filterKey: attributeKey,
47
- attributeKey: attributeKey,
48
- type: 'referenceConstraint',
49
- value: dataEntry.key,
50
- calculateFacets: !!(options === null || options === void 0 ? void 0 : options.calculateFacets),
51
- };
52
- result = (0, getFilteredData_1.getFilteredData)(currentFilteredData, [constraintToAdd], !(options === null || options === void 0 ? void 0 : options.calculateFacets));
79
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
80
+ finally {
81
+ try {
82
+ if (indexedValueKeys_1_1 && !indexedValueKeys_1_1.done && (_g = indexedValueKeys_1.return)) _g.call(indexedValueKeys_1);
83
+ }
84
+ finally { if (e_3) throw e_3.error; }
53
85
  }
54
86
  var facetEntry = {
55
- key: String(dataEntry.key),
56
- value: dataEntry.key,
57
- selected: !!constraints.find(function (constraint) { return constraint.uid === (0, helper_1.getFilterEntryId)(attributeKey, dataEntry.key); }),
87
+ key: validFacetKey,
88
+ value: validFacetKey,
89
+ selected: !!constraints.find(function (constraint) { return constraint.uid === (0, helper_1.getFilterEntryId)(attributeKey, validFacetKey); }),
58
90
  enabled: result.size > 0,
59
91
  size: result.size,
60
- entry: dataEntry,
92
+ entry: remoteModelData.get(validFacetKey),
61
93
  resultKeys: Array.from(result.keys()),
62
94
  };
63
95
  if ((options === null || options === void 0 ? void 0 : options.excludeZeros) && facetEntry.size === 0) {
@@ -69,19 +101,19 @@ function getFacetEntries(modelData, remoteModelData, options, constraints, attri
69
101
  filterItemEntries.push(facetEntry);
70
102
  };
71
103
  try {
72
- for (var _b = __values(remoteModelData.values()), _c = _b.next(); !_c.done; _c = _b.next()) {
73
- var dataEntry = _c.value;
74
- var state_1 = _loop_1(dataEntry);
104
+ for (var _e = __values(validFacetKeys.values()), _f = _e.next(); !_f.done; _f = _e.next()) {
105
+ var validFacetKey = _f.value;
106
+ var state_1 = _loop_1(validFacetKey);
75
107
  if (typeof state_1 === "object")
76
108
  return state_1.value;
77
109
  }
78
110
  }
79
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
111
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
80
112
  finally {
81
113
  try {
82
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
114
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
83
115
  }
84
- finally { if (e_1) throw e_1.error; }
116
+ finally { if (e_2) throw e_2.error; }
85
117
  }
86
118
  return filterItemEntries;
87
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getFacetEntries.js","sourceRoot":"","sources":["../../src/getFacetEntries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getFacetEntries.js","sourceRoot":"","sources":["../../src/getFacetEntries.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,qDAAoD;AACpD,mCAA4C;AAE5C,SAAgB,eAAe,CAC7B,SAAgC,EAChC,eAAsC,EACtC,OAA2B,EAC3B,WAA+B,EAC/B,YAAoB,EACpB,QAA+B;;IAE/B,IAAM,iBAAiB,GAAsB,EAAE,CAAC;IAEhD,IAAM,8BAA8B,GAAG,WAAW,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,SAAS,KAAK,YAAY,EAA5B,CAA4B,CAAC,CAAC;IAE/F,IAAM,mBAAmB,GAAG,IAAA,iCAAe,EAAC,SAAS,EAAE,8BAA8B,EAAE,KAAK,CAAC,CAAC;IAE9F,IAAM,cAAc,GAAgB,IAAI,GAAG,0BAAK,eAAe,CAAC,IAAI,EAAE,UAAE,CAAC;IAEzE,IAAI,OAAO,CAAC,iBAAiB,KAAK,KAAK,EAAE;;YACvC,KAAkB,IAAA,KAAA,SAAA,QAAS,CAAC,IAAI,EAAE,CAAA,gBAAA,4BAAE;gBAA/B,IAAM,GAAG,WAAA;gBACZ,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACzB;;;;;;;;;KACF;4BAEU,aAAa;;QACtB,IAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;QAE3C,IAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;;YAE3D,KAAkB,IAAA,oCAAA,SAAA,gBAAgB,CAAA,CAAA,kDAAA,gFAAE;gBAA/B,IAAM,GAAG,6BAAA;gBACZ,IAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC3C,IAAI,KAAK,EAAE;oBACT,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBACvB,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe,CAAA,EAAE;wBAC7B,MAAM;qBACP;iBACF;aACF;;;;;;;;;QAED,IAAM,UAAU,GAAoB;YAClC,GAAG,EAAE,aAAa;YAClB,KAAK,EAAE,aAAa;YACpB,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,UAAU,IAAK,OAAA,UAAU,CAAC,GAAG,KAAK,IAAA,yBAAgB,EAAC,YAAY,EAAE,aAAa,CAAC,EAAhE,CAAgE,CAAC;YAC9G,OAAO,EAAE,MAAM,CAAC,IAAI,GAAG,CAAC;YACxB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,aAAa,CAAE;YAC1C,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;SACtC,CAAC;QAEF,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,KAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE;;SAEnD;QAED,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,KAAI,iBAAiB,CAAC,MAAM,MAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAA,EAAE;4BAC1D,iBAAiB;SACzB;QAED,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;;;QAjCrC,KAA4B,IAAA,KAAA,SAAA,cAAc,CAAC,MAAM,EAAE,CAAA,gBAAA;YAA9C,IAAM,aAAa,WAAA;kCAAb,aAAa;;;SAkCvB;;;;;;;;;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AA3DD,0CA2DC"}