@dcupl/common 1.7.2 → 1.8.1

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 (144) hide show
  1. package/dist/common.js +1 -0
  2. package/dist/lib-esm/analytics.controller.js +2 -2
  3. package/dist/lib-esm/analytics.controller.js.map +1 -1
  4. package/dist/lib-esm/cache.controller.js +3 -3
  5. package/dist/lib-esm/cache.controller.js.map +1 -1
  6. package/dist/lib-esm/changeDetection.js +1 -1
  7. package/dist/lib-esm/changeDetection.js.map +1 -1
  8. package/dist/lib-esm/dependency-graph.d.ts +18 -0
  9. package/dist/lib-esm/dependency-graph.js +252 -0
  10. package/dist/lib-esm/dependency-graph.js.map +1 -0
  11. package/dist/lib-esm/getAggregation.js +54 -24
  12. package/dist/lib-esm/getAggregation.js.map +1 -1
  13. package/dist/lib-esm/getFacets.js +1 -1
  14. package/dist/lib-esm/getFacets.js.map +1 -1
  15. package/dist/lib-esm/index.d.ts +2 -0
  16. package/dist/lib-esm/index.js +2 -0
  17. package/dist/lib-esm/index.js.map +1 -1
  18. package/dist/lib-esm/indices.controller.js +2 -2
  19. package/dist/lib-esm/indices.controller.js.map +1 -1
  20. package/dist/lib-esm/object-hash.d.ts +1 -0
  21. package/dist/lib-esm/object-hash.js +33 -0
  22. package/dist/lib-esm/object-hash.js.map +1 -0
  23. package/dist/lib-esm/query-builder.js +1 -1
  24. package/dist/lib-esm/query-builder.js.map +1 -1
  25. package/dist/lib-esm/queryData.js +7 -2
  26. package/dist/lib-esm/queryData.js.map +1 -1
  27. package/dist/lib-esm/template-parser.d.ts +6 -0
  28. package/dist/lib-esm/template-parser.js +21 -0
  29. package/dist/lib-esm/template-parser.js.map +1 -0
  30. package/dist/lib-esm/types/workflow/workflow.types.d.ts +27 -1
  31. package/dist/tsconfig.tsbuildinfo +1 -1
  32. package/package.json +6 -8
  33. package/dist/lib-cjs/analytics.controller.d.ts +0 -85
  34. package/dist/lib-cjs/analytics.controller.js +0 -121
  35. package/dist/lib-cjs/analytics.controller.js.map +0 -1
  36. package/dist/lib-cjs/cache.controller.d.ts +0 -11
  37. package/dist/lib-cjs/cache.controller.js +0 -46
  38. package/dist/lib-cjs/cache.controller.js.map +0 -1
  39. package/dist/lib-cjs/changeDetection.d.ts +0 -40
  40. package/dist/lib-cjs/changeDetection.js +0 -148
  41. package/dist/lib-cjs/changeDetection.js.map +0 -1
  42. package/dist/lib-cjs/computeSuggestions.d.ts +0 -3
  43. package/dist/lib-cjs/computeSuggestions.js +0 -79
  44. package/dist/lib-cjs/computeSuggestions.js.map +0 -1
  45. package/dist/lib-cjs/getAggregation.d.ts +0 -3
  46. package/dist/lib-cjs/getAggregation.js +0 -249
  47. package/dist/lib-cjs/getAggregation.js.map +0 -1
  48. package/dist/lib-cjs/getFacets.d.ts +0 -3
  49. package/dist/lib-cjs/getFacets.js +0 -138
  50. package/dist/lib-cjs/getFacets.js.map +0 -1
  51. package/dist/lib-cjs/helper.d.ts +0 -10
  52. package/dist/lib-cjs/helper.js +0 -100
  53. package/dist/lib-cjs/helper.js.map +0 -1
  54. package/dist/lib-cjs/index.d.ts +0 -16
  55. package/dist/lib-cjs/index.js +0 -33
  56. package/dist/lib-cjs/index.js.map +0 -1
  57. package/dist/lib-cjs/indices.controller.d.ts +0 -13
  58. package/dist/lib-cjs/indices.controller.js +0 -171
  59. package/dist/lib-cjs/indices.controller.js.map +0 -1
  60. package/dist/lib-cjs/performance.d.ts +0 -7
  61. package/dist/lib-cjs/performance.js +0 -36
  62. package/dist/lib-cjs/performance.js.map +0 -1
  63. package/dist/lib-cjs/pivot.d.ts +0 -28
  64. package/dist/lib-cjs/pivot.js +0 -292
  65. package/dist/lib-cjs/pivot.js.map +0 -1
  66. package/dist/lib-cjs/property-parser.d.ts +0 -5
  67. package/dist/lib-cjs/property-parser.js +0 -115
  68. package/dist/lib-cjs/property-parser.js.map +0 -1
  69. package/dist/lib-cjs/query-builder.d.ts +0 -27
  70. package/dist/lib-cjs/query-builder.js +0 -252
  71. package/dist/lib-cjs/query-builder.js.map +0 -1
  72. package/dist/lib-cjs/query.helper.d.ts +0 -6
  73. package/dist/lib-cjs/query.helper.js +0 -180
  74. package/dist/lib-cjs/query.helper.js.map +0 -1
  75. package/dist/lib-cjs/queryData.d.ts +0 -18
  76. package/dist/lib-cjs/queryData.js +0 -462
  77. package/dist/lib-cjs/queryData.js.map +0 -1
  78. package/dist/lib-cjs/script.controller.d.ts +0 -14
  79. package/dist/lib-cjs/script.controller.js +0 -82
  80. package/dist/lib-cjs/script.controller.js.map +0 -1
  81. package/dist/lib-cjs/types/aggregation.types.d.ts +0 -48
  82. package/dist/lib-cjs/types/aggregation.types.js +0 -3
  83. package/dist/lib-cjs/types/aggregation.types.js.map +0 -1
  84. package/dist/lib-cjs/types/api/file.types.d.ts +0 -36
  85. package/dist/lib-cjs/types/api/file.types.js +0 -3
  86. package/dist/lib-cjs/types/api/file.types.js.map +0 -1
  87. package/dist/lib-cjs/types/app-loader.types.d.ts +0 -219
  88. package/dist/lib-cjs/types/app-loader.types.js +0 -3
  89. package/dist/lib-cjs/types/app-loader.types.js.map +0 -1
  90. package/dist/lib-cjs/types/data.types.d.ts +0 -21
  91. package/dist/lib-cjs/types/data.types.js +0 -3
  92. package/dist/lib-cjs/types/data.types.js.map +0 -1
  93. package/dist/lib-cjs/types/dcupl.types.d.ts +0 -121
  94. package/dist/lib-cjs/types/dcupl.types.js +0 -3
  95. package/dist/lib-cjs/types/dcupl.types.js.map +0 -1
  96. package/dist/lib-cjs/types/facets.types.d.ts +0 -19
  97. package/dist/lib-cjs/types/facets.types.js +0 -3
  98. package/dist/lib-cjs/types/facets.types.js.map +0 -1
  99. package/dist/lib-cjs/types/filter.types.d.ts +0 -121
  100. package/dist/lib-cjs/types/filter.types.js +0 -3
  101. package/dist/lib-cjs/types/filter.types.js.map +0 -1
  102. package/dist/lib-cjs/types/group-by.types.d.ts +0 -13
  103. package/dist/lib-cjs/types/group-by.types.js +0 -3
  104. package/dist/lib-cjs/types/group-by.types.js.map +0 -1
  105. package/dist/lib-cjs/types/index.d.ts +0 -20
  106. package/dist/lib-cjs/types/index.js +0 -37
  107. package/dist/lib-cjs/types/index.js.map +0 -1
  108. package/dist/lib-cjs/types/internal.types.d.ts +0 -5
  109. package/dist/lib-cjs/types/internal.types.js +0 -3
  110. package/dist/lib-cjs/types/internal.types.js.map +0 -1
  111. package/dist/lib-cjs/types/list.types.d.ts +0 -49
  112. package/dist/lib-cjs/types/list.types.js +0 -3
  113. package/dist/lib-cjs/types/list.types.js.map +0 -1
  114. package/dist/lib-cjs/types/model.types.d.ts +0 -358
  115. package/dist/lib-cjs/types/model.types.js +0 -19
  116. package/dist/lib-cjs/types/model.types.js.map +0 -1
  117. package/dist/lib-cjs/types/projection.types.d.ts +0 -20
  118. package/dist/lib-cjs/types/projection.types.js +0 -3
  119. package/dist/lib-cjs/types/projection.types.js.map +0 -1
  120. package/dist/lib-cjs/types/quality.types.d.ts +0 -72
  121. package/dist/lib-cjs/types/quality.types.js +0 -3
  122. package/dist/lib-cjs/types/quality.types.js.map +0 -1
  123. package/dist/lib-cjs/types/query.types.d.ts +0 -80
  124. package/dist/lib-cjs/types/query.types.js +0 -15
  125. package/dist/lib-cjs/types/query.types.js.map +0 -1
  126. package/dist/lib-cjs/types/rest-api/rest-api.types.d.ts +0 -118
  127. package/dist/lib-cjs/types/rest-api/rest-api.types.js +0 -3
  128. package/dist/lib-cjs/types/rest-api/rest-api.types.js.map +0 -1
  129. package/dist/lib-cjs/types/runner/runner.types.d.ts +0 -22
  130. package/dist/lib-cjs/types/runner/runner.types.js +0 -3
  131. package/dist/lib-cjs/types/runner/runner.types.js.map +0 -1
  132. package/dist/lib-cjs/types/section.types.d.ts +0 -16
  133. package/dist/lib-cjs/types/section.types.js +0 -3
  134. package/dist/lib-cjs/types/section.types.js.map +0 -1
  135. package/dist/lib-cjs/types/suggestion.types.d.ts +0 -28
  136. package/dist/lib-cjs/types/suggestion.types.js +0 -3
  137. package/dist/lib-cjs/types/suggestion.types.js.map +0 -1
  138. package/dist/lib-cjs/types/testing.types.d.ts +0 -68
  139. package/dist/lib-cjs/types/testing.types.js +0 -3
  140. package/dist/lib-cjs/types/testing.types.js.map +0 -1
  141. package/dist/lib-cjs/types/workflow/workflow.types.d.ts +0 -341
  142. package/dist/lib-cjs/types/workflow/workflow.types.js +0 -3
  143. package/dist/lib-cjs/types/workflow/workflow.types.js.map +0 -1
  144. package/dist/tsconfig-cjs.tsbuildinfo +0 -1
@@ -1,115 +0,0 @@
1
- "use strict";
2
- var __values = (this && this.__values) || function(o) {
3
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
- if (m) return m.call(o);
5
- if (o && typeof o.length === "number") return {
6
- next: function () {
7
- if (o && i >= o.length) o = void 0;
8
- return { value: o && o[i++], done: !o };
9
- }
10
- };
11
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
- };
13
- var __read = (this && this.__read) || function (o, n) {
14
- var m = typeof Symbol === "function" && o[Symbol.iterator];
15
- if (!m) return o;
16
- var i = m.call(o), r, ar = [], e;
17
- try {
18
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
- }
20
- catch (error) { e = { error: error }; }
21
- finally {
22
- try {
23
- if (r && !r.done && (m = i["return"])) m.call(i);
24
- }
25
- finally { if (e) throw e.error; }
26
- }
27
- return ar;
28
- };
29
- Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.getDcuplPropertyTypeForNativeType = exports.isFloat = exports.isInt = exports.getPropertiesForData = void 0;
31
- var date_fns_1 = require("date-fns");
32
- // returns a list of properties based on the input data
33
- var getPropertiesForData = function (data, deep) {
34
- var e_1, _a, e_2, _b;
35
- var properties = [];
36
- try {
37
- for (var data_1 = __values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) {
38
- var item = data_1_1.value;
39
- var _loop_1 = function (key, value) {
40
- var property = properties.find(function (p) { return p.key === key; });
41
- var type = (0, exports.getDcuplPropertyTypeForNativeType)(value);
42
- if (property) {
43
- if (property.type !== type) {
44
- property.type = 'any';
45
- }
46
- }
47
- else {
48
- var prop = {
49
- key: key,
50
- type: type,
51
- };
52
- properties.push(prop);
53
- }
54
- };
55
- try {
56
- for (var _c = (e_2 = void 0, __values(Object.entries(item))), _d = _c.next(); !_d.done; _d = _c.next()) {
57
- var _e = __read(_d.value, 2), key = _e[0], value = _e[1];
58
- _loop_1(key, value);
59
- }
60
- }
61
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
62
- finally {
63
- try {
64
- if (_d && !_d.done && (_b = _c.return)) _b.call(_c);
65
- }
66
- finally { if (e_2) throw e_2.error; }
67
- }
68
- if (!deep) {
69
- break;
70
- }
71
- }
72
- }
73
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
74
- finally {
75
- try {
76
- if (data_1_1 && !data_1_1.done && (_a = data_1.return)) _a.call(data_1);
77
- }
78
- finally { if (e_1) throw e_1.error; }
79
- }
80
- return properties;
81
- };
82
- exports.getPropertiesForData = getPropertiesForData;
83
- var isInt = function (n) {
84
- return Number(n) === n && n % 1 === 0;
85
- };
86
- exports.isInt = isInt;
87
- var isFloat = function (n) {
88
- return Number(n) === n && n % 1 !== 0;
89
- };
90
- exports.isFloat = isFloat;
91
- var getDcuplPropertyTypeForNativeType = function (value) {
92
- var type = typeof value;
93
- switch (type) {
94
- case 'string':
95
- return 'string';
96
- case 'number':
97
- if ((0, exports.isInt)(value)) {
98
- return 'int';
99
- }
100
- else if ((0, exports.isFloat)(value)) {
101
- return 'float';
102
- }
103
- else {
104
- return 'any';
105
- }
106
- case 'boolean':
107
- return 'boolean';
108
- case 'object':
109
- return (0, date_fns_1.isDate)(value) ? 'date' : 'json';
110
- default:
111
- return 'any';
112
- }
113
- };
114
- exports.getDcuplPropertyTypeForNativeType = getDcuplPropertyTypeForNativeType;
115
- //# sourceMappingURL=property-parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"property-parser.js","sourceRoot":"","sources":["../../src/property-parser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAkC;AAGlC,uDAAuD;AAChD,IAAM,oBAAoB,GAAG,UAAC,IAAW,EAAE,IAAa;;IAC7D,IAAM,UAAU,GAAe,EAAE,CAAC;;QAElC,KAAmB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE,CAAC;YAArB,IAAM,IAAI,iBAAA;oCACD,GAAG,EAAE,KAAK;gBACpB,IAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,KAAK,GAAG,EAAb,CAAa,CAAC,CAAC;gBACvD,IAAM,IAAI,GAAG,IAAA,yCAAiC,EAAC,KAAK,CAAC,CAAC;gBACtD,IAAI,QAAQ,EAAE,CAAC;oBACb,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;wBAC3B,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;oBACxB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAM,IAAI,GAAa;wBACrB,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,IAAI;qBACJ,CAAC;oBACT,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxB,CAAC;;;gBAbH,KAA2B,IAAA,oBAAA,SAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA,CAAA,gBAAA;oBAApC,IAAA,KAAA,mBAAY,EAAX,GAAG,QAAA,EAAE,KAAK,QAAA;4BAAV,GAAG,EAAE,KAAK;iBAcrB;;;;;;;;;YACD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM;YACR,CAAC;QACH,CAAC;;;;;;;;;IAED,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAzBW,QAAA,oBAAoB,wBAyB/B;AAEK,IAAM,KAAK,GAAG,UAAC,CAAM;IAC1B,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC;AAFW,QAAA,KAAK,SAEhB;AAEK,IAAM,OAAO,GAAG,UAAC,CAAM;IAC5B,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC;AAFW,QAAA,OAAO,WAElB;AAEK,IAAM,iCAAiC,GAAG,UAAC,KAAU;IAC1D,IAAM,IAAI,GAAG,OAAO,KAAK,CAAC;IAE1B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,QAAQ;YACX,IAAI,IAAA,aAAK,EAAC,KAAK,CAAC,EAAE,CAAC;gBACjB,OAAO,KAAK,CAAC;YACf,CAAC;iBAAM,IAAI,IAAA,eAAO,EAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,OAAO,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,OAAO,KAAK,CAAC;YACf,CAAC;QACH,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,IAAA,iBAAM,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QACzC;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AArBW,QAAA,iCAAiC,qCAqB5C"}
@@ -1,27 +0,0 @@
1
- import { DcuplGlobalQueryOptions, DcuplItemsOptions, DcuplQuery, DcuplQueryGroup } from './types';
2
- export declare class DcuplQueryBuilder {
3
- private _defaultQueryOptions;
4
- private _initOptions;
5
- private currentQuery;
6
- constructor();
7
- init(options: {
8
- modelKey: string;
9
- }): void;
10
- reset(): DcuplGlobalQueryOptions<any>;
11
- isQuery(query: Partial<DcuplQuery> | Partial<DcuplQueryGroup>): query is DcuplQuery;
12
- isQueryGroup(query: Partial<DcuplQuery> | Partial<DcuplQueryGroup>): query is DcuplQueryGroup;
13
- isRootQueryGroup(groupOrQuery: Partial<DcuplGlobalQueryOptions<any>> | Partial<DcuplQuery> | Partial<DcuplQueryGroup>): groupOrQuery is DcuplGlobalQueryOptions<any>;
14
- getQueryGroup(groupKey?: string): DcuplQueryGroup | undefined;
15
- getQuery(): DcuplGlobalQueryOptions<any>;
16
- hasQueryGroup(groupKey: string): boolean;
17
- has(options: {
18
- groupKey: string;
19
- queryKey?: string;
20
- }): boolean;
21
- applyOptions(options: DcuplItemsOptions<any>, mode?: 'set' | 'update'): DcuplGlobalQueryOptions<any>;
22
- applyQuery(queryToApply: DcuplGlobalQueryOptions<any> | DcuplQueryGroup | DcuplQuery | DcuplQuery[] | DcuplQueryGroup[], options?: {
23
- mode?: 'set' | 'add';
24
- }, relevantQuery?: DcuplGlobalQueryOptions<any>): DcuplGlobalQueryOptions<any>;
25
- removeAllQueries(): DcuplGlobalQueryOptions<any>;
26
- removeQuery(queryToRemove: Partial<DcuplQueryGroup | DcuplQuery>, relevantQuery?: DcuplGlobalQueryOptions<any>): DcuplGlobalQueryOptions<any>;
27
- }
@@ -1,252 +0,0 @@
1
- "use strict";
2
- var __values = (this && this.__values) || function(o) {
3
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
- if (m) return m.call(o);
5
- if (o && typeof o.length === "number") return {
6
- next: function () {
7
- if (o && i >= o.length) o = void 0;
8
- return { value: o && o[i++], done: !o };
9
- }
10
- };
11
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
- };
13
- var __read = (this && this.__read) || function (o, n) {
14
- var m = typeof Symbol === "function" && o[Symbol.iterator];
15
- if (!m) return o;
16
- var i = m.call(o), r, ar = [], e;
17
- try {
18
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
- }
20
- catch (error) { e = { error: error }; }
21
- finally {
22
- try {
23
- if (r && !r.done && (m = i["return"])) m.call(i);
24
- }
25
- finally { if (e) throw e.error; }
26
- }
27
- return ar;
28
- };
29
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
30
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
31
- if (ar || !(i in from)) {
32
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
33
- ar[i] = from[i];
34
- }
35
- }
36
- return to.concat(ar || Array.prototype.slice.call(from));
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.DcuplQueryBuilder = void 0;
40
- var lodash_1 = require("lodash");
41
- var DcuplQueryBuilder = /** @class */ (function () {
42
- function DcuplQueryBuilder() {
43
- this._defaultQueryOptions = {
44
- modelKey: '',
45
- groupKey: 'root',
46
- groupType: 'and',
47
- queries: [],
48
- };
49
- this.currentQuery = (0, lodash_1.cloneDeep)(this._defaultQueryOptions);
50
- }
51
- DcuplQueryBuilder.prototype.init = function (options) {
52
- this._initOptions = (0, lodash_1.cloneDeep)(options);
53
- this.currentQuery = (0, lodash_1.cloneDeep)(this._defaultQueryOptions);
54
- this.currentQuery.modelKey = options.modelKey;
55
- };
56
- DcuplQueryBuilder.prototype.reset = function () {
57
- this.init(this._initOptions);
58
- return this.getQuery();
59
- };
60
- DcuplQueryBuilder.prototype.isQuery = function (query) {
61
- return 'attribute' in query;
62
- };
63
- DcuplQueryBuilder.prototype.isQueryGroup = function (query) {
64
- return 'groupKey' in query;
65
- };
66
- DcuplQueryBuilder.prototype.isRootQueryGroup = function (groupOrQuery) {
67
- return this.isQueryGroup(groupOrQuery) && groupOrQuery.groupKey === 'root';
68
- };
69
- DcuplQueryBuilder.prototype.getQueryGroup = function (groupKey) {
70
- var _this = this;
71
- return this.currentQuery.queries.find(function (q) { return _this.isQueryGroup(q) && q.groupKey === groupKey; });
72
- };
73
- DcuplQueryBuilder.prototype.getQuery = function () {
74
- return (0, lodash_1.cloneDeep)(this.currentQuery);
75
- };
76
- DcuplQueryBuilder.prototype.hasQueryGroup = function (groupKey) {
77
- var _this = this;
78
- return this.currentQuery.queries.some(function (query) { return _this.isQueryGroup(query) && query.groupKey === groupKey; });
79
- };
80
- DcuplQueryBuilder.prototype.has = function (options) {
81
- var _this = this;
82
- if (options.groupKey && options.queryKey) {
83
- var group = this.getQueryGroup(options.groupKey);
84
- if (group) {
85
- return group.queries.some(function (q) { return _this.isQuery(q) && q.queryKey === options.queryKey; });
86
- }
87
- }
88
- else if (options.groupKey) {
89
- return this.hasQueryGroup(options.groupKey);
90
- }
91
- return false;
92
- };
93
- DcuplQueryBuilder.prototype.applyOptions = function (options, mode) {
94
- if (mode === void 0) { mode = 'update'; }
95
- if (mode === 'set') {
96
- this.currentQuery.count = options.count;
97
- this.currentQuery.start = options.start;
98
- this.currentQuery.sort = options.sort;
99
- this.currentQuery.projection = options.projection;
100
- }
101
- else {
102
- if (typeof (options === null || options === void 0 ? void 0 : options.sort) !== 'undefined') {
103
- this.currentQuery.sort = options.sort;
104
- }
105
- if (typeof (options === null || options === void 0 ? void 0 : options.count) !== 'undefined') {
106
- this.currentQuery.count = options.count;
107
- }
108
- if (typeof (options === null || options === void 0 ? void 0 : options.start) !== 'undefined') {
109
- this.currentQuery.start = options === null || options === void 0 ? void 0 : options.start;
110
- }
111
- if (typeof (options === null || options === void 0 ? void 0 : options.projection) !== 'undefined') {
112
- this.currentQuery.projection = options === null || options === void 0 ? void 0 : options.projection;
113
- }
114
- }
115
- return this.getQuery();
116
- };
117
- DcuplQueryBuilder.prototype.applyQuery = function (queryToApply, options, relevantQuery) {
118
- var e_1, _a;
119
- var _this = this;
120
- if (!relevantQuery)
121
- relevantQuery = this.currentQuery;
122
- if (Array.isArray(queryToApply)) {
123
- try {
124
- for (var queryToApply_1 = __values(queryToApply), queryToApply_1_1 = queryToApply_1.next(); !queryToApply_1_1.done; queryToApply_1_1 = queryToApply_1.next()) {
125
- var query = queryToApply_1_1.value;
126
- this.applyQuery(query, options, relevantQuery);
127
- }
128
- }
129
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
130
- finally {
131
- try {
132
- if (queryToApply_1_1 && !queryToApply_1_1.done && (_a = queryToApply_1.return)) _a.call(queryToApply_1);
133
- }
134
- finally { if (e_1) throw e_1.error; }
135
- }
136
- }
137
- else if (this.isRootQueryGroup(queryToApply)) {
138
- if (queryToApply.groupType)
139
- relevantQuery.groupType = queryToApply.groupType;
140
- // if (queryToApply.options) relevantQuery.options = queryToApply.options;
141
- if ((options === null || options === void 0 ? void 0 : options.mode) === 'set') {
142
- relevantQuery.queries = queryToApply.queries;
143
- }
144
- else {
145
- relevantQuery.queries = __spreadArray(__spreadArray([], __read(relevantQuery.queries), false), __read(queryToApply.queries), false);
146
- }
147
- this.applyOptions(queryToApply, 'set');
148
- }
149
- else if (this.isQuery(queryToApply)) {
150
- var idx = relevantQuery.queries.findIndex(function (query) { return _this.isQueryGroup(query) && query.groupKey === queryToApply.attribute; });
151
- if (idx > -1) {
152
- var queryGroup = relevantQuery.queries[idx];
153
- if ((options === null || options === void 0 ? void 0 : options.mode) === 'set') {
154
- queryGroup.queries = [queryToApply];
155
- }
156
- else {
157
- queryGroup.queries.push(queryToApply);
158
- }
159
- }
160
- else {
161
- relevantQuery.queries.push({
162
- groupKey: queryToApply.attribute,
163
- groupType: 'or',
164
- queries: [queryToApply],
165
- });
166
- }
167
- // handle query group
168
- }
169
- else if (this.isQueryGroup(queryToApply)) {
170
- var idx = relevantQuery.queries.findIndex(function (query) { return _this.isQueryGroup(query) && query.groupKey === queryToApply.groupKey; });
171
- if (idx > -1) {
172
- var queryGroup = relevantQuery.queries[idx];
173
- if (queryToApply.groupType)
174
- queryGroup.groupType = queryToApply.groupType;
175
- // if (queryToApply.options) queryGroup.options = queryToApply.options;
176
- if ((options === null || options === void 0 ? void 0 : options.mode) === 'set') {
177
- relevantQuery.queries[idx] = queryToApply;
178
- }
179
- else {
180
- queryGroup.queries = __spreadArray(__spreadArray([], __read(queryGroup.queries), false), __read(queryToApply.queries), false);
181
- }
182
- }
183
- else {
184
- relevantQuery.queries.push({
185
- groupKey: queryToApply.groupKey,
186
- groupType: queryToApply.groupType || 'or',
187
- queries: queryToApply.queries,
188
- // options: queryToApply.options,
189
- });
190
- }
191
- }
192
- return relevantQuery;
193
- };
194
- DcuplQueryBuilder.prototype.removeAllQueries = function () {
195
- this.currentQuery.queries = [];
196
- return this.getQuery();
197
- };
198
- DcuplQueryBuilder.prototype.removeQuery = function (queryToRemove, relevantQuery) {
199
- // handle default query
200
- var e_2, _a;
201
- var _this = this;
202
- if (!relevantQuery)
203
- relevantQuery = this.currentQuery;
204
- if (this.isQuery(queryToRemove)) {
205
- var idx = relevantQuery.queries.findIndex(function (query) { return _this.isQueryGroup(query) && query.groupKey === queryToRemove.attribute; });
206
- if (idx > -1) {
207
- var queryGroup = relevantQuery.queries[idx];
208
- var idxOfQueryToRemove = (0, lodash_1.findIndex)(queryGroup.queries, queryToRemove);
209
- if (idxOfQueryToRemove > -1) {
210
- queryGroup.queries.splice(idxOfQueryToRemove, 1);
211
- }
212
- if (queryGroup.queries.length === 0) {
213
- relevantQuery.queries.splice(idx, 1);
214
- }
215
- }
216
- }
217
- else if (this.isQueryGroup(queryToRemove)) {
218
- var idx = relevantQuery.queries.findIndex(function (query) { return _this.isQueryGroup(query) && query.groupKey === queryToRemove.groupKey; });
219
- if (idx > -1) {
220
- if (!queryToRemove.queries) {
221
- relevantQuery.queries.splice(idx, 1);
222
- }
223
- else {
224
- var queryGroup = relevantQuery.queries[idx];
225
- try {
226
- for (var _b = __values(queryToRemove.queries), _c = _b.next(); !_c.done; _c = _b.next()) {
227
- var q = _c.value;
228
- var idxOfQueryToRemove = (0, lodash_1.findIndex)(queryGroup.queries, q);
229
- if (idxOfQueryToRemove > -1) {
230
- queryGroup.queries.splice(idxOfQueryToRemove, 1);
231
- }
232
- }
233
- }
234
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
235
- finally {
236
- try {
237
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
238
- }
239
- finally { if (e_2) throw e_2.error; }
240
- }
241
- if (queryGroup.queries.length === 0) {
242
- relevantQuery.queries.splice(idx, 1);
243
- }
244
- }
245
- }
246
- }
247
- return relevantQuery;
248
- };
249
- return DcuplQueryBuilder;
250
- }());
251
- exports.DcuplQueryBuilder = DcuplQueryBuilder;
252
- //# sourceMappingURL=query-builder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"query-builder.js","sourceRoot":"","sources":["../../src/query-builder.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import { BooleanFilterItem, BooleanFilterOptions, DateFilterItem, DateFilterOptions, DcuplQueryGroup, DcuplQueryStatement, NumberFilterItem, NumberFilterOptions, ReferenceFilterItem, ReferenceFilterOptions, TextFilterItem, TextFilterOptions } from './types';
2
- export declare const generateTextQuery: (options: TextFilterOptions, filterItem?: TextFilterItem) => DcuplQueryGroup;
3
- export declare const generateBooleanQuery: (options: BooleanFilterOptions, filterItem?: BooleanFilterItem) => DcuplQueryGroup;
4
- export declare const generateNumberAndDateQuery: (options: NumberFilterOptions | DateFilterOptions, filterItem?: NumberFilterItem | DateFilterItem) => DcuplQueryGroup;
5
- export declare const generateReferenceQuery: (options: ReferenceFilterOptions, filterItem?: ReferenceFilterItem) => DcuplQueryGroup;
6
- export declare const isValidQueryStatement: (query: DcuplQueryStatement) => boolean;
@@ -1,180 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isValidQueryStatement = exports.generateReferenceQuery = exports.generateNumberAndDateQuery = exports.generateBooleanQuery = exports.generateTextQuery = void 0;
4
- var helper_1 = require("./helper");
5
- var generateTextQuery = function (options, filterItem) {
6
- var escapedText = (0, helper_1.escapeRegExp)(options.text || '');
7
- var attribute = (filterItem === null || filterItem === void 0 ? void 0 : filterItem.attributeKey) || options.filterKey;
8
- var query;
9
- var comparisonType = (filterItem === null || filterItem === void 0 ? void 0 : filterItem.comparisonType) || 'containsIgnoreCase';
10
- if (comparisonType === 'containsIgnoreCase') {
11
- query = {
12
- groupKey: options.filterKey,
13
- queries: [
14
- {
15
- queryKey: options.text,
16
- attribute: attribute,
17
- value: "/".concat(escapedText, "/"),
18
- operator: 'find',
19
- options: {
20
- transform: ['lowercase'],
21
- },
22
- },
23
- ],
24
- };
25
- }
26
- else if (comparisonType === 'containsIgnoreCaseAndWhitespace') {
27
- query = {
28
- groupKey: options.filterKey,
29
- queries: [
30
- {
31
- queryKey: options.text,
32
- attribute: attribute,
33
- value: "/".concat(escapedText, "/"),
34
- operator: 'find',
35
- options: {
36
- transform: ['removeWhitespace', 'lowercase'],
37
- },
38
- },
39
- ],
40
- };
41
- }
42
- else if (comparisonType === 'contains') {
43
- query = {
44
- groupKey: options.filterKey,
45
- queries: [
46
- {
47
- queryKey: options.text,
48
- attribute: attribute,
49
- value: "/".concat(escapedText, "/"),
50
- operator: 'find',
51
- },
52
- ],
53
- };
54
- }
55
- else if (comparisonType === 'equal') {
56
- query = {
57
- groupKey: options.filterKey,
58
- queries: [
59
- {
60
- queryKey: options.text,
61
- attribute: attribute,
62
- value: options.text,
63
- operator: 'eq',
64
- },
65
- ],
66
- };
67
- }
68
- else if (comparisonType === 'equalIgnoreCase') {
69
- query = {
70
- groupKey: options.filterKey,
71
- queries: [
72
- {
73
- queryKey: options.text,
74
- attribute: attribute,
75
- value: options.text,
76
- operator: 'eq',
77
- options: {
78
- transform: ['lowercase'],
79
- },
80
- },
81
- ],
82
- };
83
- }
84
- return query;
85
- };
86
- exports.generateTextQuery = generateTextQuery;
87
- var generateBooleanQuery = function (options, filterItem) {
88
- var attribute = (filterItem === null || filterItem === void 0 ? void 0 : filterItem.attributeKey) || options.filterKey;
89
- var query = {
90
- groupKey: options.filterKey,
91
- queries: [
92
- {
93
- queryKey: options.value,
94
- attribute: attribute,
95
- value: options.value,
96
- operator: 'eq',
97
- },
98
- ],
99
- };
100
- return query;
101
- };
102
- exports.generateBooleanQuery = generateBooleanQuery;
103
- var generateNumberAndDateQuery = function (options, filterItem) {
104
- var attribute = (filterItem === null || filterItem === void 0 ? void 0 : filterItem.attributeKey) || options.filterKey;
105
- var query = {
106
- groupKey: options.filterKey,
107
- queries: [],
108
- };
109
- if (typeof options.eq !== 'undefined') {
110
- query.groupType = 'or';
111
- if (Array.isArray(options.eq)) {
112
- options.eq.forEach(function (value) {
113
- query.queries.push({ attribute: attribute, value: value, operator: 'eq' });
114
- });
115
- }
116
- else {
117
- query.queries.push({ attribute: attribute, value: options.eq, operator: 'eq' });
118
- }
119
- }
120
- if (typeof options.ne !== 'undefined') {
121
- query.groupType = 'and';
122
- if (Array.isArray(options.ne)) {
123
- options.ne.forEach(function (value) {
124
- query.queries.push({ attribute: attribute, value: value, operator: 'eq', options: { invert: true } });
125
- });
126
- }
127
- else {
128
- query.queries.push({
129
- attribute: attribute,
130
- value: options.ne,
131
- operator: 'eq',
132
- options: { invert: true },
133
- });
134
- }
135
- }
136
- if (typeof options.gt !== 'undefined') {
137
- query.groupType = 'and';
138
- query.queries.push({ attribute: attribute, value: options.gt, operator: 'gt' });
139
- }
140
- if (typeof options.lt !== 'undefined') {
141
- query.groupType = 'and';
142
- query.queries.push({ attribute: attribute, value: options.lt, operator: 'lt' });
143
- }
144
- if (typeof options.gte !== 'undefined') {
145
- query.groupType = 'and';
146
- query.queries.push({ attribute: attribute, value: options.gte, operator: 'gte' });
147
- }
148
- if (typeof options.lte !== 'undefined') {
149
- query.groupType = 'and';
150
- query.queries.push({ attribute: attribute, value: options.lte, operator: 'lte' });
151
- }
152
- return query;
153
- };
154
- exports.generateNumberAndDateQuery = generateNumberAndDateQuery;
155
- var generateReferenceQuery = function (options, filterItem) {
156
- var attribute = (filterItem === null || filterItem === void 0 ? void 0 : filterItem.attributeKey) || options.filterKey;
157
- var query = {
158
- groupKey: options.filterKey,
159
- queries: [],
160
- };
161
- options.itemKeys.forEach(function (key) {
162
- query.queries.push({
163
- queryKey: key,
164
- attribute: attribute,
165
- value: { key: key },
166
- operator: 'eq',
167
- });
168
- });
169
- return query;
170
- };
171
- exports.generateReferenceQuery = generateReferenceQuery;
172
- var isValidQueryStatement = function (query) {
173
- if (typeof query.modelKey !== 'string')
174
- return false;
175
- if (!Array.isArray(query.queries))
176
- return false;
177
- return true;
178
- };
179
- exports.isValidQueryStatement = isValidQueryStatement;
180
- //# sourceMappingURL=query.helper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"query.helper.js","sourceRoot":"","sources":["../../src/query.helper.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { ListItem, DcuplQueryGroup, InverseIndexReferenceMap, DcuplQueryTransformOptions, CustomOperatorFn } from './types';
2
- import { ScriptController } from './script.controller';
3
- export declare class QueryManager {
4
- private scriptController;
5
- private registeredCustomOperator;
6
- private queryBuilder;
7
- constructor(scriptController: ScriptController);
8
- registerCustomOperator(operator: string, fn: CustomOperatorFn): void;
9
- transformValue(value: any, transformers: DcuplQueryTransformOptions[]): any;
10
- private evaluateQuery;
11
- private evaluateEqOperator;
12
- private equalRegexFn;
13
- queryFind(entryValue: any | any[], queryValue: any, arrayValueHandling: 'some' | 'every'): boolean;
14
- private validateQuery;
15
- private getEvaluatedQueryDataset;
16
- private evaluateQueryGroup;
17
- queryData<ListType extends ListItem = ListItem>(initialData: Map<string, ListType>, rootQuery: DcuplQueryGroup, earlyReturn: boolean, indexMap: InverseIndexReferenceMap): Map<string, ListType>;
18
- }