@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
@@ -1,77 +1,27 @@
1
1
  import { IFormulaType } from "@qrvey/utils";
2
2
  import { IFilterScope } from "./filter-scopes.resources";
3
3
  import { IFilter } from "./filters.resources";
4
- /**
5
- * Structure for the visual filters
6
- */
7
4
  export interface IFilterVisual {
8
- /**
9
- * The collection of scopes
10
- */
11
5
  scopes: IFilterVisualScope[];
12
6
  }
13
7
  interface IFilterVisualGeneral {
14
- /**
15
- * Flag to collapse
16
- */
17
8
  collapsed: boolean;
18
9
  }
19
- /**
20
- * Structure for the visual filter scopes
21
- */
22
10
  export interface IFilterVisualScope extends IFilterVisualGeneral {
23
- /**
24
- * An alias for this scope
25
- */
26
11
  label?: string;
27
- /**
28
- * Collection of datasets for this scope
29
- */
30
12
  datasets: IFilterVisualDataset[];
31
- /**
32
- * The Scope type
33
- */
34
13
  scope: IFilterScope;
35
- /**
36
- * The scope ID
37
- */
38
14
  id?: string;
39
15
  }
40
- /**
41
- * Structure for the visual filter datasets
42
- */
43
16
  export interface IFilterVisualDataset extends IFilterVisualGeneral {
44
- /**
45
- * Collection of filters for this dataset
46
- */
47
17
  filters: IFilterUI[];
48
- /**
49
- * Dataset ID
50
- */
51
18
  id: string;
52
- /**
53
- * Dataset Label
54
- */
55
19
  label: string;
56
20
  }
57
- /**
58
- * Structure for the visual filter items
59
- * Condenses all filter information including dataset and scopes
60
- */
61
21
  export interface IFilterUI extends IFilter {
62
- /**
63
- * The column Label
64
- */
65
22
  columnLabel: string;
66
- /**
67
- * Dataset Label
68
- */
69
23
  datasetLabel: string;
70
- /**
71
- * The Formula Type
72
- */
73
24
  formulaType?: IFormulaType;
74
25
  }
75
26
  export declare const DEFAULT_UI_FILTER: IFilterUI;
76
27
  export {};
77
- //# sourceMappingURL=filter-visual.resources.d.ts.map
@@ -11,148 +11,51 @@ export type IFilterType = FILTER_TYPE;
11
11
  export type IFilterTypeByValidator = {
12
12
  [key in IFilterValidator]: IFilterType;
13
13
  };
14
- /**
15
- * The filter structure
16
- */
17
14
  export interface IFilter {
18
- /**
19
- * The aggregate type for the column
20
- */
21
15
  aggregateType?: IAggregateType;
22
- /**
23
- * Flag to collapse the filter
24
- */
25
16
  collapsed: boolean;
26
- /**
27
- * The column ID
28
- */
29
17
  columnId: string;
30
- /**
31
- * The column Type
32
- */
33
18
  columnType: IColumnType;
34
- /**
35
- * Custom label for this filter
36
- */
37
19
  customLabel?: string;
38
- /**
39
- * Dataset ID
40
- */
41
20
  datasetId: string;
42
- /**
43
- * Flag to allow deleting filter
44
- */
45
21
  deletable: boolean;
46
- /**
47
- * Flag to display the filter.
48
- * Filters are applied anyway.
49
- */
50
22
  displayed: boolean;
51
- /**
52
- * Flag to allow editing filter
53
- */
54
23
  editable: boolean;
55
- /**
56
- * Flag to apply the filters
57
- */
58
24
  enabled: boolean;
59
- /**
60
- * Flag to allow enabling filter
61
- */
62
25
  enableable: boolean;
63
- /**
64
- * More information for this filter
65
- */
66
26
  extras?: Record<string, unknown>;
67
- /**
68
- * Optional property for the formula type
69
- */
70
- formulaType?: IFormulaType;
71
- /**
72
- * Index of the selected Lookup display.
73
- * It is mandatory for Lookup column type.
74
- */
75
27
  lookupDisplayIndex?: number;
76
- /**
77
- * Grouping types. Related property for some columns (Date group|Complex Data types)
78
- */
79
28
  grouping?: IFilterGrouping;
80
- /**
81
- * A custom icon for the filter
82
- */
83
29
  icon?: string;
84
- /**
85
- * A custom tooltip for the filter icon
86
- */
87
30
  iconTooltip?: string;
88
- /**
89
- * The Filter ID
90
- */
91
31
  id: string;
92
- /**
93
- * Related operator for this and the next filter. i.e: F1 AND F2
94
- */
95
32
  operator: IFilterOperator;
96
- /**
97
- * Flag to determine the complete selection of values
98
- */
99
33
  selectAll?: boolean;
100
- /**
101
- * The Scope type
102
- */
103
34
  scope: IFilterScope;
104
- /**
105
- * The scope ID
106
- */
107
35
  scopeId?: string;
108
- /**
109
- * Validation Type to operate the filter values
110
- */
111
36
  validator: IFilterValidator;
112
- /**
113
- * Collection of Values.
114
- * Depending on the selected validator it changes.
115
- * An activated Select All could recieve an empty or undefined values
116
- */
37
+ formulaType?: IFormulaType;
117
38
  values?: IFilterValue[];
118
39
  }
119
- /**
120
- * The structure for the filter version and its version
121
- */
122
40
  export interface IFilterVersion<TVersionNumber extends IFilterVersionNumber = IFilterVersionNumber> {
123
41
  version: TVersionNumber;
124
42
  filters?: IFilterVersionMap[TVersionNumber];
125
43
  settings?: IFilterPanelInteractiveTable;
126
44
  }
127
- /**
128
- * Type for the Filter version
129
- */
130
45
  export type IFilterVersionNumber = FILTER_VERSION_TYPE;
131
- /**
132
- * Enumeration for the Filter version types
133
- */
134
46
  export declare enum FILTER_VERSION_TYPE {
135
47
  LOGIC = "LOGIC",
136
48
  UI_2 = "UI_2",
137
49
  V3 = "V3",
138
50
  UI_3 = "UI_3"
139
51
  }
140
- /**
141
- * Mapping for the Filter version and its structure
142
- */
143
52
  interface IFilterVersionMap {
144
53
  [FILTER_VERSION_TYPE.LOGIC]: IFilterLogic[];
145
54
  [FILTER_VERSION_TYPE.UI_2]: IFUData;
146
55
  [FILTER_VERSION_TYPE.V3]: IFilter[];
147
56
  [FILTER_VERSION_TYPE.UI_3]: IFilterVisual;
148
57
  }
149
- /**
150
- * The Default Filter object
151
- */
152
58
  export declare const DEFAULT_FILTER: IFilter;
153
- /**
154
- * Enumeration for the filter type
155
- */
156
59
  export declare enum FILTER_TYPE {
157
60
  REGULAR = "REGULAR",
158
61
  RANGE = "RANGE",
@@ -160,9 +63,5 @@ export declare enum FILTER_TYPE {
160
63
  RANKING = "RANKING",
161
64
  NULL = "NULL"
162
65
  }
163
- /**
164
- *
165
- */
166
66
  export declare const FILTER_TYPE_BY_VALIDATOR: IFilterTypeByValidator;
167
67
  export {};
168
- //# sourceMappingURL=filters.resources.d.ts.map
@@ -2,9 +2,6 @@ import { COLUMN, } from "@qrvey/utils";
2
2
  import { FILTER_OPERATOR } from "./filter-operators.resources";
3
3
  import { FILTER_SCOPE } from "./filter-scopes.resources";
4
4
  import { FILTER_VALIDATOR, } from "./filter-validators.resources";
5
- /**
6
- * Enumeration for the Filter version types
7
- */
8
5
  export var FILTER_VERSION_TYPE;
9
6
  (function (FILTER_VERSION_TYPE) {
10
7
  FILTER_VERSION_TYPE["LOGIC"] = "LOGIC";
@@ -12,9 +9,6 @@ export var FILTER_VERSION_TYPE;
12
9
  FILTER_VERSION_TYPE["V3"] = "V3";
13
10
  FILTER_VERSION_TYPE["UI_3"] = "UI_3";
14
11
  })(FILTER_VERSION_TYPE || (FILTER_VERSION_TYPE = {}));
15
- /**
16
- * The Default Filter object
17
- */
18
12
  export const DEFAULT_FILTER = {
19
13
  aggregateType: undefined,
20
14
  collapsed: true,
@@ -40,9 +34,6 @@ export const DEFAULT_FILTER = {
40
34
  validator: FILTER_VALIDATOR.EQUALS,
41
35
  values: [],
42
36
  };
43
- /**
44
- * Enumeration for the filter type
45
- */
46
37
  export var FILTER_TYPE;
47
38
  (function (FILTER_TYPE) {
48
39
  FILTER_TYPE["REGULAR"] = "REGULAR";
@@ -51,9 +42,6 @@ export var FILTER_TYPE;
51
42
  FILTER_TYPE["RANKING"] = "RANKING";
52
43
  FILTER_TYPE["NULL"] = "NULL";
53
44
  })(FILTER_TYPE || (FILTER_TYPE = {}));
54
- /**
55
- *
56
- */
57
45
  export const FILTER_TYPE_BY_VALIDATOR = {
58
46
  [FILTER_VALIDATOR.AFTER]: FILTER_TYPE.RANGE,
59
47
  [FILTER_VALIDATOR.AFTER_ON]: FILTER_TYPE.RANGE,
@@ -6,6 +6,6 @@ export * from "./filter-panel.interfaces";
6
6
  export * from "./filter-scopes.resources";
7
7
  export * from "./filter-validators.resources";
8
8
  export * from "./filter-values.resources";
9
+ export * from "./filter-verbose.resources";
9
10
  export * from "./filter-visual.resources";
10
11
  export * from "./filters.resources";
11
- //# sourceMappingURL=index.d.ts.map
@@ -6,5 +6,6 @@ export * from "./filter-panel.interfaces";
6
6
  export * from "./filter-scopes.resources";
7
7
  export * from "./filter-validators.resources";
8
8
  export * from "./filter-values.resources";
9
+ export * from "./filter-verbose.resources";
9
10
  export * from "./filter-visual.resources";
10
11
  export * from "./filters.resources";
package/package.json CHANGED
@@ -1,62 +1,73 @@
1
1
  {
2
2
  "name": "@qrvey/filters",
3
- "version": "0.0.44",
3
+ "version": "0.1.0",
4
4
  "description": "Helpers and logic for Filtering Data in Qrvey app",
5
- "main": "dist/index.js",
5
+ "main": "dist/cjs/index.js",
6
+ "module": "dist/index.js",
6
7
  "engines": {
7
8
  "node": ">=20"
8
9
  },
9
10
  "exports": {
10
- "import": "./dist/index.js",
11
- "require": "./dist/cjs/index.js"
11
+ ".": {
12
+ "types": "./dist/index.d.ts",
13
+ "import": "./dist/index.js",
14
+ "require": "./dist/cjs/index.js",
15
+ "default": "./dist/index.js"
16
+ },
17
+ "./*": {
18
+ "types": "./dist/*.d.ts",
19
+ "import": "./dist/*.js",
20
+ "require": "./dist/cjs/*.js"
21
+ }
12
22
  },
13
23
  "devDependencies": {
14
- "@commitlint/cli": "19.3.0",
15
- "@commitlint/config-conventional": "19.2.2",
16
- "@types/jest": "29.5.12",
17
- "@typescript-eslint/eslint-plugin": "7.7.1",
18
- "@typescript-eslint/parser": "7.7.1",
19
24
  "auto-changelog": "2.4.0",
20
- "commitizen": "4.3.0",
21
- "eslint": "8.57.0",
22
- "eslint-config-prettier": "9.1.0",
23
- "eslint-import-resolver-typescript": "3.6.1",
24
- "eslint-plugin-import": "2.29.1",
25
- "eslint-plugin-jsdoc": "48.2.3",
26
- "eslint-plugin-prettier": "5.1.3",
27
- "eslint-plugin-sonarjs": "0.25.1",
28
- "husky": "9.0.11",
29
- "jest": "29.7.0",
30
- "jest-environment-jsdom": "29.7.0",
31
- "lint-staged": "15.2.2",
32
- "np": "10.1.0",
33
- "prettier": "3.2.5",
34
- "ts-jest": "29.1.2",
35
- "typescript": "5.4.5"
25
+ "@commitlint/cli": "20.5.0",
26
+ "@commitlint/config-conventional": "20.5.0",
27
+ "@eslint/compat": "2.0.5",
28
+ "@eslint/eslintrc": "3.3.5",
29
+ "@eslint/js": "10.0.1",
30
+ "@types/jest": "30.0.0",
31
+ "@typescript-eslint/eslint-plugin": "8.58.2",
32
+ "@typescript-eslint/parser": "8.58.2",
33
+ "eslint": "10.2.0",
34
+ "eslint-config-prettier": "10.1.8",
35
+ "eslint-import-resolver-typescript": "4.4.4",
36
+ "eslint-plugin-import-x": "4.16.2",
37
+ "eslint-plugin-jsdoc": "62.9.0",
38
+ "eslint-plugin-prettier": "5.5.5",
39
+ "eslint-plugin-tree-shaking": "1.12.2",
40
+ "husky": "9.1.7",
41
+ "jest": "30.3.0",
42
+ "jest-environment-jsdom": "30.3.0",
43
+ "lint-staged": "16.4.0",
44
+ "prettier": "3.8.2",
45
+ "ts-jest": "29.4.9",
46
+ "tsc-files": "1.1.4",
47
+ "typedoc": "0.28.19",
48
+ "typedoc-plugin-markdown": "4.11.0",
49
+ "typescript": "6.0.2"
36
50
  },
37
51
  "dependencies": {
38
- "@qrvey/utils": "1.16.1-6",
39
- "dayjs": "1.11.10"
52
+ "@qrvey/utils": "1.17.0-3",
53
+ "dayjs": "1.11.20",
54
+ "tslib": "2.8.1"
40
55
  },
41
56
  "scripts": {
42
- "build": "tsc --project tsconfig.json && tsc -m commonjs --outDir dist/cjs --moduleResolution node",
43
- "build.clean": "node ./scripts/clean-build",
44
- "commit": "cz",
45
- "lint": "eslint . --quiet --exit-on-fatal-error --ext .ts,.js",
46
- "lint.dev": "eslint . --debug --ext .ts,.tsx",
47
- "np": "np",
48
- "prepare": "husky install",
49
- "publishing": "node ./scripts/clean-build && np $npm_config_np_new_version --any-branch --tag=$npm_config_np_tag",
50
- "publishing.win": "node ./scripts/clean-build && np %npm_config_np_new_version% --any-branch --tag=%npm_config_np_tag%",
57
+ "build": "tsc --project tsconfig.build.json && tsc --project tsconfig.cjs.json",
58
+ "build.clean": "node ./scripts/install-repro && node ./scripts/clean-build",
59
+ "build.clean.all": "npm run install.clean.all && node ./scripts/clean-build",
60
+ "install.clean.all": "node ./scripts/clean-install",
61
+ "compodoc": "typedoc && node ./scripts/inject-readme-modules.js",
62
+ "compodoc.server": "typedoc --watch",
63
+ "lint": "eslint \"{src,tests}/**/*.ts\" --quiet --exit-on-fatal-error",
64
+ "lint.warnings": "eslint \"{src,tests}/**/*.ts\" --exit-on-fatal-error",
65
+ "lint.dev": "eslint \"{src,tests}/**/*.ts\" --debug",
66
+ "prepare": "husky",
51
67
  "test": "jest test --verbose",
52
68
  "test.coverage": "jest test --collect-coverage",
53
69
  "test.watch": "jest test --watch",
54
- "version": "auto-changelog -p && git add CHANGELOG.md"
55
- },
56
- "config": {
57
- "commitizen": {
58
- "path": "./node_modules/cz-conventional-changelog"
59
- }
70
+ "version": "npm run compodoc && node ./scripts/sync-readme-version.js && auto-changelog -p && git add CHANGELOG.md README.md"
60
71
  },
61
72
  "keywords": [
62
73
  "qrvey",
@@ -64,8 +75,12 @@
64
75
  ],
65
76
  "author": "Qrvey Inc",
66
77
  "license": "MIT",
67
- "types": "dist/index.d.ts",
68
78
  "publishConfig": {
69
79
  "access": "public"
70
- }
80
+ },
81
+ "files": [
82
+ "dist/**/*"
83
+ ],
84
+ "sideEffects": false,
85
+ "types": "dist/index.d.ts"
71
86
  }
package/.eslintignore DELETED
@@ -1,6 +0,0 @@
1
- node_modules
2
- dist
3
- **/*.js
4
- **/*.cjs
5
-
6
- src/typescript/DeepPartial.ts
package/.eslintrc.json DELETED
@@ -1,122 +0,0 @@
1
- {
2
- "root": true,
3
- "parser": "@typescript-eslint/parser",
4
- "parserOptions": {
5
- "project": "./tsconfig.eslint.json"
6
- },
7
- "plugins": ["import", "@typescript-eslint", "prettier", "sonarjs", "jsdoc"],
8
- "env": {
9
- "browser": true
10
- },
11
- "extends": [
12
- "eslint:recommended",
13
- "plugin:@typescript-eslint/recommended",
14
- "plugin:import/errors",
15
- "plugin:import/warnings",
16
- "plugin:import/typescript",
17
- "plugin:prettier/recommended",
18
- "plugin:sonarjs/recommended",
19
- "plugin:jsdoc/recommended-typescript"
20
- ],
21
- "rules": {
22
- "class-methods-use-this": "off",
23
- "default-param-last": "off",
24
- "dot-notation": "warn",
25
- "eqeqeq": ["error", "smart"],
26
- "no-array-constructor": "off",
27
- "no-else-return": "error",
28
- "no-empty-function": "off",
29
- "no-multi-assign": ["error", { "ignoreNonDeclaration": true }],
30
- "no-unneeded-ternary": "warn",
31
- "no-nested-ternary": "error",
32
- "no-new-func": "error",
33
- "no-new-object": "error",
34
- "no-new-wrappers": "error",
35
- "no-param-reassign": "error",
36
- "no-plusplus": ["error", { "allowForLoopAfterthoughts": true }],
37
- "no-shadow": "off",
38
- "no-unused-expressions": "off",
39
- "no-unused-vars": "off",
40
- "no-useless-constructor": "off",
41
- "no-useless-escape": "warn",
42
- "no-var": "error",
43
- "object-shorthand": "warn",
44
- "prefer-object-spread": "warn",
45
- "prefer-const": "error",
46
- "prefer-rest-params": "error",
47
- "prefer-spread": "warn",
48
- "prefer-template": "warn",
49
- "require-await": "off",
50
- "spaced-comment": "warn",
51
- "@typescript-eslint/default-param-last": ["error"],
52
- "@typescript-eslint/no-array-constructor": ["error"],
53
- "@typescript-eslint/no-explicit-any": "error",
54
- "@typescript-eslint/no-inferrable-types": "warn",
55
- "@typescript-eslint/no-shadow": "error",
56
- "@typescript-eslint/no-this-alias": [
57
- "error",
58
- { "allowedNames": ["self", "ctx"] }
59
- ],
60
- "@typescript-eslint/no-unused-expressions": [
61
- "error",
62
- { "allowShortCircuit": true, "allowTernary": true }
63
- ],
64
- "@typescript-eslint/no-unused-vars": [
65
- "error",
66
- { "argsIgnorePattern": "^_" }
67
- ],
68
- "@typescript-eslint/no-useless-constructor": ["error"],
69
- "@typescript-eslint/no-var-requires": ["error"],
70
- "@typescript-eslint/explicit-function-return-type": "warn",
71
-
72
- "import/namespace": [2, { "allowComputed": true }],
73
- "sort-imports": [
74
- "warn",
75
- {
76
- "ignoreCase": true,
77
- "ignoreDeclarationSort": true
78
- }
79
- ],
80
- "import/order": [
81
- "warn",
82
- {
83
- "groups": [["external", "builtin"], "internal", ["sibling"]],
84
- "pathGroups": [
85
- {
86
- "pattern": "stencil",
87
- "group": "external",
88
- "position": "before"
89
- },
90
- {
91
- "pattern": "@/components/**",
92
- "group": "internal"
93
- }
94
- ],
95
- "pathGroupsExcludedImportTypes": ["internal"],
96
- "newlines-between": "always",
97
- "alphabetize": {
98
- "order": "asc",
99
- "caseInsensitive": true
100
- }
101
- }
102
- ],
103
-
104
- "sonarjs/cognitive-complexity": ["warn"],
105
- "sonarjs/no-duplicate-string": ["warn"],
106
-
107
- "prettier/prettier": ["warn", { "endOfLine": "auto" }],
108
-
109
- "jsdoc/require-jsdoc": [
110
- "warn",
111
- {
112
- "require": {
113
- "ClassDeclaration": true,
114
- "ClassExpression": true,
115
- "FunctionDeclaration": true,
116
- "FunctionExpression": true,
117
- "MethodDefinition": true
118
- }
119
- }
120
- ]
121
- }
122
- }
package/.husky/pre-commit DELETED
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env sh
2
- . "$(dirname -- "$0")/_/husky.sh"
3
-
4
- npx --no-install lint-staged
package/.lintstagedrc DELETED
@@ -1,7 +0,0 @@
1
- {
2
- "*": "prettier --ignore-unknown --write",
3
- "*.ts": [
4
- "bash -c 'tsc --skipLibCheck --noEmit'",
5
- "eslint --quiet --exit-on-fatal-error --fix"
6
- ]
7
- }
package/.prettierignore DELETED
@@ -1,6 +0,0 @@
1
- .git
2
- .husky
3
- dist
4
- documentation
5
- node_modules
6
- README.md
package/.prettierrc.json DELETED
@@ -1 +0,0 @@
1
- {}