@qrvey/filters 0.0.44 → 0.1.0

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 (279) hide show
  1. package/README.md +63 -1
  2. package/dist/cjs/classes/FilterAdapter.js +1 -80
  3. package/dist/cjs/classes/FilterBuilder.js +33 -251
  4. package/dist/cjs/classes/FilterManager.js +7 -64
  5. package/dist/cjs/classes/FilterResources.js +3 -116
  6. package/dist/cjs/classes/FilterSearcher.js +0 -77
  7. package/dist/cjs/classes/FilterValidation.js +0 -93
  8. package/dist/cjs/classes/FilterValues.js +0 -24
  9. package/dist/cjs/classes/index.js +8 -21
  10. package/dist/cjs/helpers/filter-adapt.helpers.js +3 -46
  11. package/dist/cjs/helpers/filter-adapt.legacy.helpers.js +6 -53
  12. package/dist/cjs/helpers/filter-adapt.logic.helpers.js +7 -128
  13. package/dist/cjs/helpers/filter-builder.helpers.js +1 -8
  14. package/dist/cjs/helpers/filter-settings.helpers.js +6 -41
  15. package/dist/cjs/helpers/filter-validators.helpers.js +15 -9
  16. package/dist/cjs/helpers/filter-verbose.helpers.js +211 -0
  17. package/dist/cjs/helpers/getAggregateFilters.js +11 -0
  18. package/dist/cjs/helpers/getFilterId.js +1 -17
  19. package/dist/cjs/helpers/getFilterType.js +1 -8
  20. package/dist/cjs/helpers/index.js +12 -20
  21. package/dist/cjs/helpers/isDateDistinctGrouping.js +15 -0
  22. package/dist/cjs/helpers/isRankingFilter.js +10 -0
  23. package/dist/cjs/helpers/resolveFilterConditions.js +2 -10
  24. package/dist/cjs/helpers/utils.helpers.js +2 -19
  25. package/dist/cjs/index.js +5 -18
  26. package/dist/cjs/models/index.js +4 -17
  27. package/dist/cjs/resources/filter-grouping.resources.js +0 -18
  28. package/dist/cjs/resources/filter-logic.resources.js +0 -3
  29. package/dist/cjs/resources/filter-scopes.resources.js +10 -27
  30. package/dist/cjs/resources/filter-validators.resources.js +0 -3
  31. package/dist/cjs/resources/filter-verbose.resources.js +13 -0
  32. package/dist/cjs/resources/filters.resources.js +0 -12
  33. package/dist/cjs/resources/index.js +12 -24
  34. package/dist/classes/FilterAdapter.d.ts +0 -80
  35. package/dist/classes/FilterAdapter.js +1 -80
  36. package/dist/classes/FilterBuilder.d.ts +2 -177
  37. package/dist/classes/FilterBuilder.js +33 -251
  38. package/dist/classes/FilterManager.d.ts +7 -62
  39. package/dist/classes/FilterManager.js +7 -64
  40. package/dist/classes/FilterResources.d.ts +1 -115
  41. package/dist/classes/FilterResources.js +3 -116
  42. package/dist/classes/FilterSearcher.d.ts +2 -77
  43. package/dist/classes/FilterSearcher.js +0 -77
  44. package/dist/classes/FilterValidation.d.ts +1 -47
  45. package/dist/classes/FilterValidation.js +0 -93
  46. package/dist/classes/FilterValues.d.ts +0 -25
  47. package/dist/classes/FilterValues.js +0 -24
  48. package/dist/classes/index.d.ts +0 -1
  49. package/dist/helpers/filter-adapt.helpers.d.ts +0 -15
  50. package/dist/helpers/filter-adapt.helpers.js +1 -43
  51. package/dist/helpers/filter-adapt.legacy.helpers.d.ts +0 -20
  52. package/dist/helpers/filter-adapt.legacy.helpers.js +3 -49
  53. package/dist/helpers/filter-adapt.logic.helpers.d.ts +0 -22
  54. package/dist/helpers/filter-adapt.logic.helpers.js +3 -123
  55. package/dist/helpers/filter-builder.helpers.d.ts +0 -7
  56. package/dist/helpers/filter-builder.helpers.js +0 -6
  57. package/dist/helpers/filter-settings.helpers.d.ts +0 -35
  58. package/dist/helpers/filter-settings.helpers.js +0 -34
  59. package/dist/helpers/filter-validators.helpers.d.ts +3 -6
  60. package/dist/helpers/filter-validators.helpers.js +11 -7
  61. package/dist/helpers/filter-verbose.helpers.d.ts +6 -0
  62. package/dist/helpers/filter-verbose.helpers.js +206 -0
  63. package/dist/helpers/getAggregateFilters.d.ts +3 -0
  64. package/dist/helpers/getAggregateFilters.js +7 -0
  65. package/dist/helpers/getFilterId.d.ts +0 -16
  66. package/dist/helpers/getFilterId.js +0 -15
  67. package/dist/helpers/getFilterType.d.ts +0 -7
  68. package/dist/helpers/getFilterType.js +0 -6
  69. package/dist/helpers/index.d.ts +5 -1
  70. package/dist/helpers/index.js +5 -0
  71. package/dist/helpers/isDateDistinctGrouping.d.ts +2 -0
  72. package/dist/helpers/isDateDistinctGrouping.js +12 -0
  73. package/dist/helpers/isRankingFilter.d.ts +2 -0
  74. package/dist/helpers/isRankingFilter.js +7 -0
  75. package/dist/helpers/resolveFilterConditions.d.ts +0 -8
  76. package/dist/helpers/resolveFilterConditions.js +1 -8
  77. package/dist/helpers/utils.helpers.d.ts +0 -17
  78. package/dist/helpers/utils.helpers.js +0 -16
  79. package/dist/index.d.ts +0 -1
  80. package/dist/models/filter-builder.models.d.ts +0 -156
  81. package/dist/models/filter-resources.models.d.ts +0 -53
  82. package/dist/models/filter-searcher.models.d.ts +5 -34
  83. package/dist/models/filter-validation.models.d.ts +0 -40
  84. package/dist/models/index.d.ts +0 -1
  85. package/dist/resources/filter-functions.resources.d.ts +0 -49
  86. package/dist/resources/filter-grouping.resources.d.ts +0 -7
  87. package/dist/resources/filter-grouping.resources.js +0 -18
  88. package/dist/resources/filter-logic.resources.d.ts +0 -79
  89. package/dist/resources/filter-logic.resources.js +0 -3
  90. package/dist/resources/filter-operators.resources.d.ts +0 -1
  91. package/dist/resources/filter-panel.interfaces.d.ts +0 -49
  92. package/dist/resources/filter-scopes.resources.d.ts +2 -25
  93. package/dist/resources/filter-scopes.resources.js +10 -27
  94. package/dist/resources/filter-validation.resources.d.ts +0 -1
  95. package/dist/resources/filter-validators.resources.d.ts +0 -1
  96. package/dist/resources/filter-validators.resources.js +0 -3
  97. package/dist/resources/filter-values.resources.d.ts +0 -13
  98. package/dist/resources/filter-verbose.resources.d.ts +23 -0
  99. package/dist/resources/filter-verbose.resources.js +10 -0
  100. package/dist/resources/filter-visual.resources.d.ts +0 -50
  101. package/dist/resources/filters.resources.d.ts +1 -102
  102. package/dist/resources/filters.resources.js +0 -12
  103. package/dist/resources/index.d.ts +1 -1
  104. package/dist/resources/index.js +1 -0
  105. package/package.json +59 -44
  106. package/.eslintignore +0 -6
  107. package/.eslintrc.json +0 -122
  108. package/.husky/pre-commit +0 -4
  109. package/.lintstagedrc +0 -7
  110. package/.prettierignore +0 -6
  111. package/.prettierrc.json +0 -1
  112. package/CHANGELOG.md +0 -268
  113. package/CODE_OF_CONDUCT.md +0 -132
  114. package/bitbucket-pipelines.yml +0 -92
  115. package/dist/cjs/classes/FilterAdapter.d.ts +0 -107
  116. package/dist/cjs/classes/FilterAdapter.d.ts.map +0 -1
  117. package/dist/cjs/classes/FilterBuilder.d.ts +0 -206
  118. package/dist/cjs/classes/FilterBuilder.d.ts.map +0 -1
  119. package/dist/cjs/classes/FilterManager.d.ts +0 -84
  120. package/dist/cjs/classes/FilterManager.d.ts.map +0 -1
  121. package/dist/cjs/classes/FilterResources.d.ts +0 -139
  122. package/dist/cjs/classes/FilterResources.d.ts.map +0 -1
  123. package/dist/cjs/classes/FilterSearcher.d.ts +0 -90
  124. package/dist/cjs/classes/FilterSearcher.d.ts.map +0 -1
  125. package/dist/cjs/classes/FilterValidation.d.ts +0 -58
  126. package/dist/cjs/classes/FilterValidation.d.ts.map +0 -1
  127. package/dist/cjs/classes/FilterValues.d.ts +0 -33
  128. package/dist/cjs/classes/FilterValues.d.ts.map +0 -1
  129. package/dist/cjs/classes/index.d.ts +0 -8
  130. package/dist/cjs/classes/index.d.ts.map +0 -1
  131. package/dist/cjs/helpers/filter-adapt.helpers.d.ts +0 -21
  132. package/dist/cjs/helpers/filter-adapt.helpers.d.ts.map +0 -1
  133. package/dist/cjs/helpers/filter-adapt.legacy.helpers.d.ts +0 -26
  134. package/dist/cjs/helpers/filter-adapt.legacy.helpers.d.ts.map +0 -1
  135. package/dist/cjs/helpers/filter-adapt.logic.helpers.d.ts +0 -29
  136. package/dist/cjs/helpers/filter-adapt.logic.helpers.d.ts.map +0 -1
  137. package/dist/cjs/helpers/filter-builder.helpers.d.ts +0 -11
  138. package/dist/cjs/helpers/filter-builder.helpers.d.ts.map +0 -1
  139. package/dist/cjs/helpers/filter-settings.helpers.d.ts +0 -42
  140. package/dist/cjs/helpers/filter-settings.helpers.d.ts.map +0 -1
  141. package/dist/cjs/helpers/filter-validators.helpers.d.ts +0 -8
  142. package/dist/cjs/helpers/filter-validators.helpers.d.ts.map +0 -1
  143. package/dist/cjs/helpers/getFilterId.d.ts +0 -18
  144. package/dist/cjs/helpers/getFilterId.d.ts.map +0 -1
  145. package/dist/cjs/helpers/getFilterType.d.ts +0 -11
  146. package/dist/cjs/helpers/getFilterType.d.ts.map +0 -1
  147. package/dist/cjs/helpers/index.d.ts +0 -7
  148. package/dist/cjs/helpers/index.d.ts.map +0 -1
  149. package/dist/cjs/helpers/resolveFilterConditions.d.ts +0 -11
  150. package/dist/cjs/helpers/resolveFilterConditions.d.ts.map +0 -1
  151. package/dist/cjs/helpers/utils.helpers.d.ts +0 -26
  152. package/dist/cjs/helpers/utils.helpers.d.ts.map +0 -1
  153. package/dist/cjs/index.d.ts +0 -5
  154. package/dist/cjs/index.d.ts.map +0 -1
  155. package/dist/cjs/models/filter-builder.models.d.ts +0 -203
  156. package/dist/cjs/models/filter-builder.models.d.ts.map +0 -1
  157. package/dist/cjs/models/filter-resources.models.d.ts +0 -71
  158. package/dist/cjs/models/filter-resources.models.d.ts.map +0 -1
  159. package/dist/cjs/models/filter-searcher.models.d.ts +0 -42
  160. package/dist/cjs/models/filter-searcher.models.d.ts.map +0 -1
  161. package/dist/cjs/models/filter-validation.models.d.ts +0 -59
  162. package/dist/cjs/models/filter-validation.models.d.ts.map +0 -1
  163. package/dist/cjs/models/index.d.ts +0 -4
  164. package/dist/cjs/models/index.d.ts.map +0 -1
  165. package/dist/cjs/resources/filter-functions.resources.d.ts +0 -94
  166. package/dist/cjs/resources/filter-functions.resources.d.ts.map +0 -1
  167. package/dist/cjs/resources/filter-grouping.resources.d.ts +0 -103
  168. package/dist/cjs/resources/filter-grouping.resources.d.ts.map +0 -1
  169. package/dist/cjs/resources/filter-logic.resources.d.ts +0 -135
  170. package/dist/cjs/resources/filter-logic.resources.d.ts.map +0 -1
  171. package/dist/cjs/resources/filter-operators.resources.d.ts +0 -16
  172. package/dist/cjs/resources/filter-operators.resources.d.ts.map +0 -1
  173. package/dist/cjs/resources/filter-panel.interfaces.d.ts +0 -80
  174. package/dist/cjs/resources/filter-panel.interfaces.d.ts.map +0 -1
  175. package/dist/cjs/resources/filter-scopes.resources.d.ts +0 -62
  176. package/dist/cjs/resources/filter-scopes.resources.d.ts.map +0 -1
  177. package/dist/cjs/resources/filter-validation.resources.d.ts +0 -20
  178. package/dist/cjs/resources/filter-validation.resources.d.ts.map +0 -1
  179. package/dist/cjs/resources/filter-validators.resources.d.ts +0 -80
  180. package/dist/cjs/resources/filter-validators.resources.d.ts.map +0 -1
  181. package/dist/cjs/resources/filter-values.resources.d.ts +0 -40
  182. package/dist/cjs/resources/filter-values.resources.d.ts.map +0 -1
  183. package/dist/cjs/resources/filter-visual.resources.d.ts +0 -77
  184. package/dist/cjs/resources/filter-visual.resources.d.ts.map +0 -1
  185. package/dist/cjs/resources/filters.resources.d.ts +0 -168
  186. package/dist/cjs/resources/filters.resources.d.ts.map +0 -1
  187. package/dist/cjs/resources/index.d.ts +0 -11
  188. package/dist/cjs/resources/index.d.ts.map +0 -1
  189. package/dist/classes/FilterAdapter.d.ts.map +0 -1
  190. package/dist/classes/FilterBuilder.d.ts.map +0 -1
  191. package/dist/classes/FilterManager.d.ts.map +0 -1
  192. package/dist/classes/FilterResources.d.ts.map +0 -1
  193. package/dist/classes/FilterSearcher.d.ts.map +0 -1
  194. package/dist/classes/FilterValidation.d.ts.map +0 -1
  195. package/dist/classes/FilterValues.d.ts.map +0 -1
  196. package/dist/classes/index.d.ts.map +0 -1
  197. package/dist/helpers/filter-adapt.helpers.d.ts.map +0 -1
  198. package/dist/helpers/filter-adapt.legacy.helpers.d.ts.map +0 -1
  199. package/dist/helpers/filter-adapt.logic.helpers.d.ts.map +0 -1
  200. package/dist/helpers/filter-builder.helpers.d.ts.map +0 -1
  201. package/dist/helpers/filter-settings.helpers.d.ts.map +0 -1
  202. package/dist/helpers/filter-validators.helpers.d.ts.map +0 -1
  203. package/dist/helpers/getFilterId.d.ts.map +0 -1
  204. package/dist/helpers/getFilterType.d.ts.map +0 -1
  205. package/dist/helpers/index.d.ts.map +0 -1
  206. package/dist/helpers/resolveFilterConditions.d.ts.map +0 -1
  207. package/dist/helpers/utils.helpers.d.ts.map +0 -1
  208. package/dist/index.d.ts.map +0 -1
  209. package/dist/models/filter-builder.models.d.ts.map +0 -1
  210. package/dist/models/filter-resources.models.d.ts.map +0 -1
  211. package/dist/models/filter-searcher.models.d.ts.map +0 -1
  212. package/dist/models/filter-validation.models.d.ts.map +0 -1
  213. package/dist/models/index.d.ts.map +0 -1
  214. package/dist/resources/filter-functions.resources.d.ts.map +0 -1
  215. package/dist/resources/filter-grouping.resources.d.ts.map +0 -1
  216. package/dist/resources/filter-logic.resources.d.ts.map +0 -1
  217. package/dist/resources/filter-operators.resources.d.ts.map +0 -1
  218. package/dist/resources/filter-panel.interfaces.d.ts.map +0 -1
  219. package/dist/resources/filter-scopes.resources.d.ts.map +0 -1
  220. package/dist/resources/filter-validation.resources.d.ts.map +0 -1
  221. package/dist/resources/filter-validators.resources.d.ts.map +0 -1
  222. package/dist/resources/filter-values.resources.d.ts.map +0 -1
  223. package/dist/resources/filter-visual.resources.d.ts.map +0 -1
  224. package/dist/resources/filters.resources.d.ts.map +0 -1
  225. package/dist/resources/index.d.ts.map +0 -1
  226. package/jest.config.js +0 -10
  227. package/jsdoc.config.json +0 -14
  228. package/scripts/clean-build/index.js +0 -62
  229. package/sonar-project.properties +0 -2
  230. package/src/classes/FilterAdapter.ts +0 -208
  231. package/src/classes/FilterBuilder.ts +0 -821
  232. package/src/classes/FilterManager.ts +0 -126
  233. package/src/classes/FilterResources.ts +0 -411
  234. package/src/classes/FilterSearcher.ts +0 -243
  235. package/src/classes/FilterValidation.ts +0 -221
  236. package/src/classes/FilterValues.ts +0 -89
  237. package/src/classes/index.ts +0 -7
  238. package/src/helpers/filter-adapt.helpers.ts +0 -204
  239. package/src/helpers/filter-adapt.legacy.helpers.ts +0 -298
  240. package/src/helpers/filter-adapt.logic.helpers.ts +0 -631
  241. package/src/helpers/filter-builder.helpers.ts +0 -28
  242. package/src/helpers/filter-settings.helpers.ts +0 -133
  243. package/src/helpers/filter-validators.helpers.ts +0 -15
  244. package/src/helpers/getFilterId.ts +0 -35
  245. package/src/helpers/getFilterType.ts +0 -23
  246. package/src/helpers/index.ts +0 -6
  247. package/src/helpers/resolveFilterConditions.ts +0 -29
  248. package/src/helpers/utils.helpers.ts +0 -37
  249. package/src/index.ts +0 -4
  250. package/src/models/filter-builder.models.ts +0 -256
  251. package/src/models/filter-resources.models.ts +0 -89
  252. package/src/models/filter-searcher.models.ts +0 -61
  253. package/src/models/filter-validation.models.ts +0 -71
  254. package/src/models/index.ts +0 -3
  255. package/src/resources/filter-functions.resources.ts +0 -132
  256. package/src/resources/filter-grouping.resources.ts +0 -531
  257. package/src/resources/filter-logic.resources.ts +0 -148
  258. package/src/resources/filter-operators.resources.ts +0 -40
  259. package/src/resources/filter-panel.interfaces.ts +0 -86
  260. package/src/resources/filter-scopes.resources.ts +0 -152
  261. package/src/resources/filter-validation.resources.ts +0 -90
  262. package/src/resources/filter-validators.resources.ts +0 -411
  263. package/src/resources/filter-values.resources.ts +0 -57
  264. package/src/resources/filter-visual.resources.ts +0 -86
  265. package/src/resources/filters.resources.ts +0 -232
  266. package/src/resources/index.ts +0 -10
  267. package/tests/classes/FilterAdapter.test.ts +0 -124
  268. package/tests/classes/FilterBuilder.test.ts +0 -903
  269. package/tests/classes/FilterResources.test.ts +0 -267
  270. package/tests/classes/FilterSearcher.test.ts +0 -188
  271. package/tests/classes/FilterValidation.test.ts +0 -54
  272. package/tests/helpers/getFilterId.test.ts +0 -121
  273. package/tests/mock/datasets.mock.ts +0 -61
  274. package/tests/mock/filters-adapter.mock.ts +0 -646
  275. package/tests/mock/filters-interactive-table.mock.ts +0 -59
  276. package/tests/mock/filters.mock.ts +0 -277
  277. package/tsconfig.doc.json +0 -4
  278. package/tsconfig.eslint.json +0 -4
  279. package/tsconfig.json +0 -113
@@ -0,0 +1,211 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getVerboseFilter = getVerboseFilter;
4
+ exports.getTokensFromFilters = getTokensFromFilters;
5
+ exports.filtersTokensToString = filtersTokensToString;
6
+ const utils_1 = require("@qrvey/utils");
7
+ const filter_adapt_helpers_1 = require("./filter-adapt.helpers");
8
+ const filter_validators_helpers_1 = require("./filter-validators.helpers");
9
+ const isRankingFilter_1 = require("./isRankingFilter");
10
+ const filter_grouping_resources_1 = require("../resources/filter-grouping.resources");
11
+ const filter_operators_resources_1 = require("../resources/filter-operators.resources");
12
+ const filter_scopes_resources_1 = require("../resources/filter-scopes.resources");
13
+ const filter_validators_resources_1 = require("../resources/filter-validators.resources");
14
+ const filter_verbose_resources_1 = require("../resources/filter-verbose.resources");
15
+ function getVerboseFilter(filters, datasets = [], settings) {
16
+ const tokens = getTokensFromFilters(filters, datasets, settings);
17
+ return filtersTokensToString(tokens);
18
+ }
19
+ function getTokensFromFilters(filters, datasets = [], settings = {}) {
20
+ const visual = (0, filter_adapt_helpers_1.filterToVisual)(filters, datasets);
21
+ if (!visual)
22
+ return [];
23
+ const t = buildTranslator(settings.translate);
24
+ const tokens = [];
25
+ for (const scope of visual.scopes) {
26
+ if (scope.datasets.length === 0)
27
+ continue;
28
+ if (settings.showScope) {
29
+ const scopeInfo = filter_scopes_resources_1.FILTER_SCOPE_INFO[scope.scope];
30
+ tokens.push({
31
+ token: `${t(`filter.scope_title.${scope.scope.toLowerCase()}`, scopeInfo?.label ?? scope.scope)}:`,
32
+ type: filter_verbose_resources_1.FILTER_TOKEN_TYPE.SCOPE,
33
+ });
34
+ }
35
+ let hasFiltersWithValues = false;
36
+ for (const dataset of scope.datasets) {
37
+ if (dataset.filters.length === 0)
38
+ continue;
39
+ if (settings.showDataset) {
40
+ tokens.push({
41
+ token: `${dataset.label}:`,
42
+ type: filter_verbose_resources_1.FILTER_TOKEN_TYPE.DATABASE_NAME,
43
+ });
44
+ }
45
+ for (let i = 0; i < dataset.filters.length; i++) {
46
+ const filter = dataset.filters[i];
47
+ if (!filter.enabled) {
48
+ if (tokens[tokens.length - 1]?.type ===
49
+ filter_verbose_resources_1.FILTER_TOKEN_TYPE.LOGICAL_OPERATOR) {
50
+ tokens.pop();
51
+ }
52
+ continue;
53
+ }
54
+ hasFiltersWithValues = true;
55
+ if (settings.showChart && filter.scope === filter_scopes_resources_1.FILTER_SCOPE.CHART) {
56
+ const chartLabel = filter.customLabel ?? "";
57
+ const existing = tokens.find((tok) => tok.token === `${chartLabel}:` && tok.id === filter.scopeId);
58
+ if (!existing) {
59
+ if (tokens[tokens.length - 1]?.type ===
60
+ filter_verbose_resources_1.FILTER_TOKEN_TYPE.LOGICAL_OPERATOR) {
61
+ tokens.pop();
62
+ }
63
+ tokens.push({
64
+ token: `${chartLabel}:`,
65
+ type: filter_verbose_resources_1.FILTER_TOKEN_TYPE.CHART_NAME,
66
+ id: filter.scopeId,
67
+ });
68
+ }
69
+ }
70
+ let columnLabel = filter.columnLabel || filter.columnId;
71
+ if (!(0, utils_1.isEmpty)(filter.aggregateType)) {
72
+ const aggLabel = t(`common.aggregate_labels.${filter.aggregateType.toLowerCase()}`, String(filter.aggregateType));
73
+ columnLabel += ` (${aggLabel})`;
74
+ }
75
+ tokens.push({
76
+ token: `${columnLabel}:`,
77
+ type: filter_verbose_resources_1.FILTER_TOKEN_TYPE.COLUMN_NAME,
78
+ });
79
+ const validatorInfo = filter_validators_resources_1.FILTER_VALIDATOR_INFO[filter.validator];
80
+ const validatorLabel = t(`filter.validators.${filter.validator.toLowerCase()}_label`, validatorInfo?.label ?? filter.validator);
81
+ const groupingLabel = !(0, utils_1.isEmpty)(filter.grouping)
82
+ ? (filter_grouping_resources_1.FILTER_GROUPING_INFO[filter.grouping]?.label ?? "")
83
+ : "";
84
+ tokens.push({
85
+ token: validatorLabel + (groupingLabel ? ` (${groupingLabel})` : ""),
86
+ type: filter_verbose_resources_1.FILTER_TOKEN_TYPE.VALIDATOR,
87
+ });
88
+ tokens.push({
89
+ token: buildValueLabel(filter, settings, t),
90
+ type: filter_verbose_resources_1.FILTER_TOKEN_TYPE.VALUE,
91
+ });
92
+ if (i < dataset.filters.length - 1) {
93
+ const opInfo = filter_operators_resources_1.FILTER_OPERATOR_INFO[filter.operator];
94
+ const opLabel = t(`filter.operators.${filter.operator.toLowerCase()}`, opInfo?.label ?? filter.operator);
95
+ tokens.push({
96
+ token: opLabel,
97
+ type: filter_verbose_resources_1.FILTER_TOKEN_TYPE.LOGICAL_OPERATOR,
98
+ });
99
+ }
100
+ }
101
+ if (!hasFiltersWithValues && settings.showDataset) {
102
+ tokens.pop();
103
+ }
104
+ }
105
+ if (!hasFiltersWithValues && settings.showScope) {
106
+ tokens.pop();
107
+ }
108
+ }
109
+ return tokens;
110
+ }
111
+ function filtersTokensToString(tokens) {
112
+ let str = "";
113
+ for (const token of tokens) {
114
+ if ([filter_verbose_resources_1.FILTER_TOKEN_TYPE.SCOPE, filter_verbose_resources_1.FILTER_TOKEN_TYPE.CHART_NAME].includes(token.type)) {
115
+ str += "\n";
116
+ }
117
+ str += `${token.token} `;
118
+ }
119
+ return str.trim();
120
+ }
121
+ function buildTranslator(translate) {
122
+ if (translate) {
123
+ return (key, fallback) => translate(key) || fallback;
124
+ }
125
+ return (_key, fallback) => fallback;
126
+ }
127
+ function buildValueLabel(filter, settings, t) {
128
+ const values = filter.values ?? [];
129
+ let labels;
130
+ if ((0, filter_validators_helpers_1.isNullValidator)(filter.validator)) {
131
+ const validatorInfo = filter_validators_resources_1.FILTER_VALIDATOR_INFO[filter.validator];
132
+ labels = [
133
+ t(`filter.validators.${filter.validator.toLowerCase()}_label`, validatorInfo?.label ?? filter.validator),
134
+ ];
135
+ }
136
+ else if ((0, filter_validators_helpers_1.isRangeValidator)(filter.validator)) {
137
+ labels = getRangeLabels(values, filter.validator, settings, t);
138
+ }
139
+ else if ((0, filter_validators_helpers_1.isInValidator)(filter.validator)) {
140
+ labels = getRelativeLabels(values, t);
141
+ }
142
+ else if ((0, isRankingFilter_1.isRankingFilter)(filter)) {
143
+ labels = getRankingLabels(values);
144
+ }
145
+ else {
146
+ labels = getRegularLabels(values);
147
+ }
148
+ const filtered = labels.filter((l) => !(0, utils_1.isEmpty)(l));
149
+ let result = filtered.join(", ");
150
+ if (filter.selectAll) {
151
+ result = (0, utils_1.isEmpty)(result)
152
+ ? t("filter_panel.card_all_selected", "All selected")
153
+ : `${t("filter_panel.card_all_except", "All except")} ${result}`;
154
+ }
155
+ else if ((0, utils_1.isEmpty)(result)) {
156
+ result = t("filter_panel.card_none_selected", "None selected");
157
+ }
158
+ return result;
159
+ }
160
+ function getRegularLabels(values) {
161
+ return values
162
+ .filter((v) => (v.displayed ?? true) && (v.enabled ?? true))
163
+ .map((v) => v.value ?? "");
164
+ }
165
+ function getRangeLabels(values, validator, settings, t) {
166
+ const sep = settings.rangeSeparator ?? t("filter.range_separator", "-");
167
+ return values
168
+ .filter((v) => (v.displayed ?? true) && (v.enabled ?? true))
169
+ .map((v) => {
170
+ switch (validator) {
171
+ case "AFTER":
172
+ case "AFTER_ON":
173
+ case "GREATER_THAN":
174
+ case "GREATER_THAN_EQUAL":
175
+ return v.min ?? "";
176
+ case "BEFORE":
177
+ case "BEFORE_ON":
178
+ case "LESS_THAN":
179
+ case "LESS_THAN_EQUAL":
180
+ return v.max ?? "";
181
+ default:
182
+ return `${v.min ?? ""} ${sep} ${v.max ?? ""}`;
183
+ }
184
+ });
185
+ }
186
+ function getRelativeLabels(values, t) {
187
+ return values
188
+ .filter((v) => (v.displayed ?? true) && (v.enabled ?? true))
189
+ .map((v) => {
190
+ const cursorInfo = utils_1.RELATIVE_CURSOR_INFO[v.cursor];
191
+ const cursorLabel = t(cursorInfo.i18nLabelPath, cursorInfo.label);
192
+ const isThis = v.cursor === utils_1.RELATIVE_CURSOR.THIS;
193
+ const number = !isThis && v.number != null && v.number > 1 ? `${v.number} ` : "";
194
+ const unit = t(`common.units.${v.unit}`, String(v.unit));
195
+ const pluralUnit = !isThis && v.number != null && v.number > 1 ? `${unit}s` : unit;
196
+ if (isThis) {
197
+ return `${cursorLabel} ${pluralUnit}`.trim();
198
+ }
199
+ const fromLabel = t("filter.relative_container.from_label", "from");
200
+ const anchorLabel = typeof v.anchor === "string" && !(0, utils_1.isEmpty)(v.anchor)
201
+ ? v.anchor
202
+ : t("filter.relative_container.current_date", "Current Date");
203
+ return `${cursorLabel} ${number}${pluralUnit} ${fromLabel} ${anchorLabel}`.trim();
204
+ });
205
+ }
206
+ function getRankingLabels(values) {
207
+ return values
208
+ .flat()
209
+ .filter((v) => (v.displayed ?? true) && (v.enabled ?? true))
210
+ .map((v) => `${v.value ?? ""} - ${v.position}`);
211
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAggregateFilters = getAggregateFilters;
4
+ exports.excludeAggregateFilters = excludeAggregateFilters;
5
+ const utils_1 = require("@qrvey/utils");
6
+ function getAggregateFilters(filters = []) {
7
+ return filters.filter((filter) => !(0, utils_1.isEmpty)(filter.aggregateType));
8
+ }
9
+ function excludeAggregateFilters(filters = []) {
10
+ return filters.filter((filter) => (0, utils_1.isEmpty)(filter.aggregateType));
11
+ }
@@ -1,22 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFilterId = void 0;
3
+ exports.getFilterId = getFilterId;
4
4
  const utils_1 = require("@qrvey/utils");
5
- /**
6
- * Get the Filter ID by the filter structure
7
- * The order of the epression ID is:
8
- * - Scope Type
9
- * - scope Id
10
- * - dataset Id
11
- * - column Id
12
- * - validator
13
- * - grouping
14
- * - Column Aggregate
15
- * - Optional Index
16
- * @param filter the filter structure
17
- * @param index an aditional number to add into the ID
18
- * @returns a text to identify the filter
19
- */
20
5
  function getFilterId(filter, index) {
21
6
  if ((0, utils_1.isEmpty)(filter) || !(0, utils_1.isObject)(filter))
22
7
  return "";
@@ -39,4 +24,3 @@ function getFilterId(filter, index) {
39
24
  filterId.push(index.toString());
40
25
  return filterId.length > 0 ? filterId.join("|") : "";
41
26
  }
42
- exports.getFilterId = getFilterId;
@@ -1,17 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFilterType = void 0;
3
+ exports.getFilterType = getFilterType;
4
4
  const utils_1 = require("@qrvey/utils");
5
5
  const filters_resources_1 = require("../resources/filters.resources");
6
- /**
7
- * Gets the filter type based on the column type and the validator
8
- * @param columnType the column type
9
- * @param validator the validator type
10
- * @returns the filter type
11
- */
12
6
  function getFilterType(columnType, validator) {
13
7
  if (columnType === utils_1.COLUMN.RANKING)
14
8
  return filters_resources_1.FILTER_TYPE.RANKING;
15
9
  return filters_resources_1.FILTER_TYPE_BY_VALIDATOR[validator];
16
10
  }
17
- exports.getFilterType = getFilterType;
@@ -1,22 +1,14 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
2
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./filter-adapt.helpers"), exports);
18
- __exportStar(require("./filter-settings.helpers"), exports);
19
- __exportStar(require("./getFilterId"), exports);
20
- __exportStar(require("./getFilterType"), exports);
21
- __exportStar(require("./resolveFilterConditions"), exports);
22
- __exportStar(require("./utils.helpers"), exports);
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./filter-adapt.helpers"), exports);
5
+ tslib_1.__exportStar(require("./filter-settings.helpers"), exports);
6
+ tslib_1.__exportStar(require("./filter-validators.helpers"), exports);
7
+ tslib_1.__exportStar(require("./filter-verbose.helpers"), exports);
8
+ tslib_1.__exportStar(require("./getAggregateFilters"), exports);
9
+ tslib_1.__exportStar(require("./getFilterId"), exports);
10
+ tslib_1.__exportStar(require("./getFilterType"), exports);
11
+ tslib_1.__exportStar(require("./isDateDistinctGrouping"), exports);
12
+ tslib_1.__exportStar(require("./isRankingFilter"), exports);
13
+ tslib_1.__exportStar(require("./resolveFilterConditions"), exports);
14
+ tslib_1.__exportStar(require("./utils.helpers"), exports);
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDateDistinctGrouping = isDateDistinctGrouping;
4
+ const filter_grouping_resources_1 = require("../resources/filter-grouping.resources");
5
+ const DATE_DISTINCT_GROUPINGS = [
6
+ filter_grouping_resources_1.FILTER_GROUPING.YEAR_QUARTER,
7
+ filter_grouping_resources_1.FILTER_GROUPING.YEAR_MONTH,
8
+ filter_grouping_resources_1.FILTER_GROUPING.MONTH_DAY,
9
+ filter_grouping_resources_1.FILTER_GROUPING.DAY_HOUR,
10
+ filter_grouping_resources_1.FILTER_GROUPING.HOUR_MINUTE,
11
+ filter_grouping_resources_1.FILTER_GROUPING.MINUTE_SECOND,
12
+ ];
13
+ function isDateDistinctGrouping(grouping) {
14
+ return DATE_DISTINCT_GROUPINGS.includes(grouping);
15
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isRankingFilter = isRankingFilter;
4
+ const utils_1 = require("@qrvey/utils");
5
+ const filter_validators_helpers_1 = require("./filter-validators.helpers");
6
+ function isRankingFilter(filter) {
7
+ return (filter.columnType === utils_1.COLUMN.RANKING &&
8
+ (0, utils_1.isEmpty)(filter.aggregateType) &&
9
+ !(0, filter_validators_helpers_1.isNullValidator)(filter.validator));
10
+ }
@@ -1,15 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveFilterConditions = void 0;
4
- /**
5
- * Resolves conditions to fullfill the match of the filter object
6
- * @param filter the filter object
7
- * @param params the params of the filter to resolve the condition
8
- * @param settings the filter param settings
9
- * @returns true: the conditions is fullfiled.
10
- */
3
+ exports.resolveFilterConditions = resolveFilterConditions;
11
4
  function resolveFilterConditions(filter, params, settings) {
12
- const paramKeys = Object.keys(params) || [];
5
+ const paramKeys = Object.keys(params);
13
6
  let condition = true;
14
7
  for (let i = 0; i < paramKeys.length; i++) {
15
8
  const paramKey = paramKeys[i];
@@ -22,4 +15,3 @@ function resolveFilterConditions(filter, params, settings) {
22
15
  }
23
16
  return condition;
24
17
  }
25
- exports.resolveFilterConditions = resolveFilterConditions;
@@ -1,30 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDatasetInfo = exports.getColumnInfo = void 0;
4
- /**
5
- * Gets the column info by ID
6
- * @param ids the ids to search the info
7
- * @param ids.columnId the column ID
8
- * @param ids.datasetId the dataset ID
9
- * @param datasets the collection of datasets
10
- * @returns the Column Info
11
- */
3
+ exports.getColumnInfo = getColumnInfo;
4
+ exports.getDatasetInfo = getDatasetInfo;
12
5
  function getColumnInfo(ids, datasets = []) {
13
6
  const datasetInfo = getDatasetInfo(ids, datasets);
14
7
  return datasetInfo?.options?.find((cInfo) => cInfo.id === ids.columnId && cInfo.qrveyid === ids.datasetId);
15
8
  }
16
- exports.getColumnInfo = getColumnInfo;
17
- /**
18
- * Gets the dataset info by ID
19
- * @param ids the ids to search the info
20
- * @param ids.columnId the column ID
21
- * @param ids.datasetId the dataset ID
22
- * @param datasets the collection of datasets
23
- * @returns the Dataset Info
24
- */
25
9
  function getDatasetInfo(ids, datasets = []) {
26
10
  if (ids == null || !Array.isArray(datasets))
27
11
  return;
28
12
  return datasets?.find((dInfo) => dInfo.qrveyid === ids.datasetId);
29
13
  }
30
- exports.getDatasetInfo = getDatasetInfo;
package/dist/cjs/index.js CHANGED
@@ -1,20 +1,7 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
2
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./classes"), exports);
18
- __exportStar(require("./helpers"), exports);
19
- __exportStar(require("./models"), exports);
20
- __exportStar(require("./resources"), exports);
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./classes"), exports);
5
+ tslib_1.__exportStar(require("./helpers"), exports);
6
+ tslib_1.__exportStar(require("./models"), exports);
7
+ tslib_1.__exportStar(require("./resources"), exports);
@@ -1,19 +1,6 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
2
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./filter-builder.models"), exports);
18
- __exportStar(require("./filter-resources.models"), exports);
19
- __exportStar(require("./filter-searcher.models"), exports);
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./filter-builder.models"), exports);
5
+ tslib_1.__exportStar(require("./filter-resources.models"), exports);
6
+ tslib_1.__exportStar(require("./filter-searcher.models"), exports);
@@ -7,25 +7,20 @@ var FILTER_GROUPING;
7
7
  (function (FILTER_GROUPING) {
8
8
  FILTER_GROUPING["LOOKUP_DISPLAY"] = "display";
9
9
  FILTER_GROUPING["LOOKUP_VALUE"] = "value";
10
- // ...DATE_GROUPING_PROPERTY,
11
10
  FILTER_GROUPING["DAY"] = "day";
12
11
  FILTER_GROUPING["MONTH"] = "month";
13
12
  FILTER_GROUPING["QUARTER"] = "quarter";
14
13
  FILTER_GROUPING["WEEK"] = "week";
15
14
  FILTER_GROUPING["YEAR"] = "year";
16
- // ...DATE_GROUPING_TIME_PROPERTY,
17
15
  FILTER_GROUPING["HOUR"] = "hour";
18
16
  FILTER_GROUPING["MINUTE"] = "minute";
19
17
  FILTER_GROUPING["SECOND"] = "second";
20
- // ...DATE_DISTINCT_PROPERTY,
21
18
  FILTER_GROUPING["YEAR_QUARTER"] = "quarter_only";
22
19
  FILTER_GROUPING["YEAR_MONTH"] = "month_only";
23
20
  FILTER_GROUPING["MONTH_DAY"] = "day_only";
24
- // ...DATE_DISTINCT_TIME_PROPERTY,
25
21
  FILTER_GROUPING["DAY_HOUR"] = "hour_only";
26
22
  FILTER_GROUPING["HOUR_MINUTE"] = "minute_only";
27
23
  FILTER_GROUPING["MINUTE_SECOND"] = "second_only";
28
- // ...COMPLEX_COLUMN_PROPERTY,
29
24
  FILTER_GROUPING["TEXTFIELD_WORDS"] = "words";
30
25
  FILTER_GROUPING["TEXTFIELD_KEYPHRASES"] = "keywords";
31
26
  FILTER_GROUPING["TEXTFIELD_SENTIMENTS"] = "sentiment";
@@ -35,7 +30,6 @@ var FILTER_GROUPING;
35
30
  FILTER_GROUPING["IMAGEUPLOAD_IMAGEWORDS"] = "analysis";
36
31
  FILTER_GROUPING["EXPRESSION_POSITIVE"] = "positive";
37
32
  FILTER_GROUPING["EXPRESSION_NEGATIVE"] = "negative";
38
- // ...COMPOUND_COLUMN_PROPERTY,
39
33
  FILTER_GROUPING["NAME_FIRST"] = "first_name";
40
34
  FILTER_GROUPING["NAME_LAST"] = "last_name";
41
35
  FILTER_GROUPING["ADDRESS_STREET"] = "street_address";
@@ -50,25 +44,20 @@ var FILTER_GROUPING_LABEL;
50
44
  (function (FILTER_GROUPING_LABEL) {
51
45
  FILTER_GROUPING_LABEL["LOOKUP_DISPLAY"] = "display";
52
46
  FILTER_GROUPING_LABEL["LOOKUP_VALUE"] = "value";
53
- // ...DATE_GROUPING_PROPERTY,
54
47
  FILTER_GROUPING_LABEL["DAY"] = "Full Date";
55
48
  FILTER_GROUPING_LABEL["MONTH"] = "Month, Year";
56
49
  FILTER_GROUPING_LABEL["QUARTER"] = "Quarter, Year";
57
50
  FILTER_GROUPING_LABEL["WEEK"] = "Week, Year";
58
51
  FILTER_GROUPING_LABEL["YEAR"] = "Year";
59
- // ...DATE_GROUPING_TIME_PROPERTY,
60
52
  FILTER_GROUPING_LABEL["HOUR"] = "Date, Hour";
61
53
  FILTER_GROUPING_LABEL["MINUTE"] = "Date, Minute";
62
54
  FILTER_GROUPING_LABEL["SECOND"] = "Date, Second";
63
- // ...DATE_DISTINCT_PROPERTY,
64
55
  FILTER_GROUPING_LABEL["YEAR_QUARTER"] = "Quarter";
65
56
  FILTER_GROUPING_LABEL["YEAR_MONTH"] = "Month";
66
57
  FILTER_GROUPING_LABEL["MONTH_DAY"] = "Day (Month)";
67
- // ...DATE_DISTINCT_TIME_PROPERTY,
68
58
  FILTER_GROUPING_LABEL["DAY_HOUR"] = "Hour";
69
59
  FILTER_GROUPING_LABEL["HOUR_MINUTE"] = "Minute";
70
60
  FILTER_GROUPING_LABEL["MINUTE_SECOND"] = "Second";
71
- // ...COMPLEX_COLUMN_PROPERTY,
72
61
  FILTER_GROUPING_LABEL["TEXTFIELD_WORDS"] = "Words";
73
62
  FILTER_GROUPING_LABEL["TEXTFIELD_KEYPHRASES"] = "Keyphrases";
74
63
  FILTER_GROUPING_LABEL["TEXTFIELD_SENTIMENTS"] = "Sentiments";
@@ -81,7 +70,6 @@ var FILTER_GROUPING_LABEL;
81
70
  FILTER_GROUPING_LABEL["IMAGEUPLOAD_IMAGECATEGORY"] = "Categories";
82
71
  FILTER_GROUPING_LABEL["EXPRESSION_POSITIVE"] = "Positive";
83
72
  FILTER_GROUPING_LABEL["EXPRESSION_NEGATIVE"] = "Negative";
84
- // ...COMPOUND_COLUMN_PROPERTY,
85
73
  FILTER_GROUPING_LABEL["NAME_FIRST"] = "First Name";
86
74
  FILTER_GROUPING_LABEL["NAME_LAST"] = "Last Name";
87
75
  FILTER_GROUPING_LABEL["ADDRESS_STREET"] = "Street";
@@ -336,9 +324,6 @@ exports.FILTER_GROUPING_INFO = {
336
324
  value: FILTER_GROUPING.USADDRESS_LINE_2,
337
325
  },
338
326
  };
339
- /**
340
- * List of columns allowed to set grouping filters
341
- */
342
327
  exports.FILTER_GROUPING_COLUMNS = [
343
328
  utils_1.COLUMN.DATE,
344
329
  utils_1.COLUMN.DATE_FORMULA,
@@ -352,9 +337,6 @@ exports.FILTER_GROUPING_COLUMNS = [
352
337
  utils_1.COLUMN.ADDRESS,
353
338
  utils_1.COLUMN.LOOKUP,
354
339
  ];
355
- /**
356
- * List of validator allowed to set grouping filters
357
- */
358
340
  exports.FILTER_GROUPING_VALIDATORS = [
359
341
  filter_validators_resources_1.FILTER_VALIDATOR.EQUALS,
360
342
  filter_validators_resources_1.FILTER_VALIDATOR.NOT_EQUAL,
@@ -1,9 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FILTER_LOGIC_VALIDATOR = void 0;
4
- /**
5
- * Enumartion of filter Logic validators
6
- */
7
4
  var FILTER_LOGIC_VALIDATOR;
8
5
  (function (FILTER_LOGIC_VALIDATOR) {
9
6
  FILTER_LOGIC_VALIDATOR["EQUALS"] = "EQUAL";
@@ -1,15 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FILTER_SCOPE_INFO_LIST = exports.FILTER_SCOPE_INFO = exports.FILTER_SCOPES = exports.FILTER_SCOPE_LABEL = exports.FILTER_SCOPE = void 0;
4
- /**
5
- * Enumeration of filter scope types
6
- */
7
4
  var FILTER_SCOPE;
8
5
  (function (FILTER_SCOPE) {
9
6
  FILTER_SCOPE["ADMIN"] = "ADMIN";
10
7
  FILTER_SCOPE["FLOW"] = "FLOW";
11
8
  FILTER_SCOPE["DATA"] = "DATA";
12
9
  FILTER_SCOPE["GLOBAL"] = "GLOBAL";
10
+ FILTER_SCOPE["VIEW_ONLY"] = "VIEW_ONLY";
13
11
  FILTER_SCOPE["PAGE"] = "PAGE";
14
12
  FILTER_SCOPE["TAB"] = "TAB";
15
13
  FILTER_SCOPE["CONTAINER"] = "CONTAINER";
@@ -17,15 +15,13 @@ var FILTER_SCOPE;
17
15
  FILTER_SCOPE["CHART"] = "CHART";
18
16
  FILTER_SCOPE["ACTION"] = "ACTION";
19
17
  })(FILTER_SCOPE || (exports.FILTER_SCOPE = FILTER_SCOPE = {}));
20
- /**
21
- * Enumeration of filter scope labels
22
- */
23
18
  var FILTER_SCOPE_LABEL;
24
19
  (function (FILTER_SCOPE_LABEL) {
25
20
  FILTER_SCOPE_LABEL["ADMIN"] = "Admin";
26
21
  FILTER_SCOPE_LABEL["FLOW"] = "Automation";
27
22
  FILTER_SCOPE_LABEL["DATA"] = "Data";
28
23
  FILTER_SCOPE_LABEL["GLOBAL"] = "Global";
24
+ FILTER_SCOPE_LABEL["VIEW_ONLY"] = "View Only";
29
25
  FILTER_SCOPE_LABEL["PAGE"] = "Dashboard";
30
26
  FILTER_SCOPE_LABEL["TAB"] = "Tab";
31
27
  FILTER_SCOPE_LABEL["CONTAINER"] = "Container";
@@ -33,14 +29,12 @@ var FILTER_SCOPE_LABEL;
33
29
  FILTER_SCOPE_LABEL["CHART"] = "Panel";
34
30
  FILTER_SCOPE_LABEL["ACTION"] = "Action";
35
31
  })(FILTER_SCOPE_LABEL || (exports.FILTER_SCOPE_LABEL = FILTER_SCOPE_LABEL = {}));
36
- /**
37
- * List of filter scope types
38
- */
39
32
  exports.FILTER_SCOPES = [
40
33
  FILTER_SCOPE.ADMIN,
41
34
  FILTER_SCOPE.FLOW,
42
35
  FILTER_SCOPE.DATA,
43
36
  FILTER_SCOPE.GLOBAL,
37
+ FILTER_SCOPE.VIEW_ONLY,
44
38
  FILTER_SCOPE.PAGE,
45
39
  FILTER_SCOPE.TAB,
46
40
  FILTER_SCOPE.CONTAINER,
@@ -48,9 +42,6 @@ exports.FILTER_SCOPES = [
48
42
  FILTER_SCOPE.CHART,
49
43
  FILTER_SCOPE.ACTION,
50
44
  ];
51
- /**
52
- * Filter scope information by Scope types
53
- */
54
45
  exports.FILTER_SCOPE_INFO = {
55
46
  [FILTER_SCOPE.ADMIN]: {
56
47
  displayed: true,
@@ -76,6 +67,12 @@ exports.FILTER_SCOPE_INFO = {
76
67
  label: FILTER_SCOPE_LABEL.GLOBAL,
77
68
  value: FILTER_SCOPE.GLOBAL,
78
69
  },
70
+ [FILTER_SCOPE.VIEW_ONLY]: {
71
+ displayed: true,
72
+ i18nLabelPath: "filter.scopes.view_only",
73
+ label: FILTER_SCOPE_LABEL.VIEW_ONLY,
74
+ value: FILTER_SCOPE.VIEW_ONLY,
75
+ },
79
76
  [FILTER_SCOPE.PAGE]: {
80
77
  displayed: true,
81
78
  i18nLabelPath: "filter.scopes.page",
@@ -113,18 +110,4 @@ exports.FILTER_SCOPE_INFO = {
113
110
  value: FILTER_SCOPE.ACTION,
114
111
  },
115
112
  };
116
- /**
117
- * List of filter scope information
118
- */
119
- exports.FILTER_SCOPE_INFO_LIST = [
120
- exports.FILTER_SCOPE_INFO.ADMIN,
121
- exports.FILTER_SCOPE_INFO.FLOW,
122
- exports.FILTER_SCOPE_INFO.DATA,
123
- exports.FILTER_SCOPE_INFO.GLOBAL,
124
- exports.FILTER_SCOPE_INFO.PAGE,
125
- exports.FILTER_SCOPE_INFO.TAB,
126
- exports.FILTER_SCOPE_INFO.CONTAINER,
127
- exports.FILTER_SCOPE_INFO.DEFAULT,
128
- exports.FILTER_SCOPE_INFO.CHART,
129
- exports.FILTER_SCOPE_INFO.ACTION,
130
- ];
113
+ exports.FILTER_SCOPE_INFO_LIST = exports.FILTER_SCOPES.map((scope) => exports.FILTER_SCOPE_INFO[scope]);
@@ -320,8 +320,6 @@ exports.FILTER_VALIDATORS_INFO_BY_COLUMN_TYPE = {
320
320
  [utils_1.COLUMN.TEXT_CATEGORY]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.TEXT,
321
321
  [utils_1.COLUMN.TEXT_LABEL]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.TEXT,
322
322
  [utils_1.COLUMN.TEXT_FORMULA]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.TEXT,
323
- // Special case, they are Equal/Null when groupings are FILETYPE
324
- // Special case, they are Numeric when groupings are FILESIZE
325
323
  [utils_1.COLUMN.IMAGEUPLOAD]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.TEXT,
326
324
  [utils_1.COLUMN.FILEUPLOAD]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.TEXT,
327
325
  [utils_1.COLUMN.DATE]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.DATE,
@@ -339,7 +337,6 @@ exports.FILTER_VALIDATORS_INFO_BY_COLUMN_TYPE = {
339
337
  [utils_1.COLUMN.YES_NO]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.EQUAL,
340
338
  [utils_1.COLUMN.PASSWORD]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.NULL,
341
339
  [utils_1.COLUMN.SIGNATURE]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.NULL,
342
- // Useless cases
343
340
  [utils_1.COLUMN.TIME]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.NULL,
344
341
  [utils_1.COLUMN.AGGREGATED_FORMULA]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.NULL,
345
342
  [utils_1.COLUMN.FORMULA]: exports.FILTER_VALIDATORS_INFO_BY_SECTION_TYPE.NULL,
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FILTER_TOKEN_TYPE = void 0;
4
+ var FILTER_TOKEN_TYPE;
5
+ (function (FILTER_TOKEN_TYPE) {
6
+ FILTER_TOKEN_TYPE["SCOPE"] = "SCOPE";
7
+ FILTER_TOKEN_TYPE["DATABASE_NAME"] = "DATABASE_NAME";
8
+ FILTER_TOKEN_TYPE["COLUMN_NAME"] = "COLUMN_NAME";
9
+ FILTER_TOKEN_TYPE["VALIDATOR"] = "VALIDATOR";
10
+ FILTER_TOKEN_TYPE["VALUE"] = "VALUE";
11
+ FILTER_TOKEN_TYPE["LOGICAL_OPERATOR"] = "LOGICAL_OPERATOR";
12
+ FILTER_TOKEN_TYPE["CHART_NAME"] = "CHART_NAME";
13
+ })(FILTER_TOKEN_TYPE || (exports.FILTER_TOKEN_TYPE = FILTER_TOKEN_TYPE = {}));