@qrvey/utils 1.1.0-9 → 1.1.2-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 (444) hide show
  1. package/.eslintignore +5 -0
  2. package/.eslintrc.json +37 -0
  3. package/README.md +474 -285
  4. package/bitbucket-pipelines.yml +25 -0
  5. package/dist/cjs/constants/COLUMN.js +0 -1
  6. package/dist/cjs/constants/COLUMN_PROPERTY.d.ts +6 -0
  7. package/dist/cjs/constants/COLUMN_PROPERTY.js +0 -1
  8. package/dist/cjs/constants/COLUMN_PROPERTY_VALUE.js +4 -1
  9. package/dist/cjs/date/constants/DATE_DAY_HOURS.d.ts +1 -0
  10. package/dist/cjs/date/constants/DATE_DAY_HOURS.js +29 -0
  11. package/dist/cjs/date/constants/DATE_HOUR_MINUTES.d.ts +1 -0
  12. package/dist/cjs/date/constants/DATE_HOUR_MINUTES.js +65 -0
  13. package/dist/cjs/date/constants/DATE_MINUTE_SECONDS.d.ts +1 -0
  14. package/dist/cjs/date/constants/DATE_MINUTE_SECONDS.js +5 -0
  15. package/dist/cjs/date/constants/DATE_MONTH_DAYS.d.ts +1 -0
  16. package/dist/cjs/date/constants/DATE_MONTH_DAYS.js +36 -0
  17. package/dist/cjs/date/constants/DATE_PROPERTY.js +0 -1
  18. package/dist/cjs/date/constants/DATE_PROPERTY_VALUE.d.ts +8 -0
  19. package/dist/cjs/date/constants/DATE_PROPERTY_VALUE.js +17 -0
  20. package/dist/cjs/date/constants/DATE_P_PROPERTIES.d.ts +2 -0
  21. package/dist/cjs/date/constants/DATE_P_PROPERTIES.js +11 -0
  22. package/dist/cjs/date/constants/DATE_P_VALUES.d.ts +6 -0
  23. package/dist/cjs/date/constants/DATE_P_VALUES.js +8 -0
  24. package/dist/cjs/date/constants/DATE_TIME_P_VALUES.d.ts +6 -0
  25. package/dist/cjs/date/constants/DATE_TIME_P_VALUES.js +8 -0
  26. package/dist/cjs/date/constants/DATE_TIME_VALUES.js +1 -1
  27. package/dist/cjs/date/constants/DATE_WEEK_DAYS.d.ts +1 -0
  28. package/dist/cjs/date/constants/DATE_WEEK_DAYS.js +6 -0
  29. package/dist/cjs/date/constants/DATE_YEAR_DAYS.d.ts +1 -0
  30. package/dist/cjs/date/constants/DATE_YEAR_DAYS.js +370 -0
  31. package/dist/cjs/date/constants/DATE_YEAR_MONTHS.d.ts +1 -0
  32. package/dist/cjs/date/constants/DATE_YEAR_MONTHS.js +4 -0
  33. package/dist/cjs/date/constants/DATE_YEAR_QUARTERS.d.ts +1 -0
  34. package/dist/cjs/date/constants/DATE_YEAR_QUARTERS.js +4 -0
  35. package/dist/cjs/date/constants/index.d.ts +12 -0
  36. package/dist/cjs/date/constants/index.js +12 -0
  37. package/dist/cjs/date/range/getDateRange.js +26 -21
  38. package/dist/cjs/date/relative/Adapter.js +1 -1
  39. package/dist/cjs/date/relative/constants/DATE_FORMATS.d.ts +1 -1
  40. package/dist/cjs/date/relative/constants/DATE_FORMATS.js +3 -3
  41. package/dist/cjs/date/relative/helpers/formatStatement.js +6 -6
  42. package/dist/cjs/filters/adapters/FDToFlatUI.js +5 -12
  43. package/dist/cjs/filters/adapters/FDToUI.js +2 -3
  44. package/dist/cjs/filters/adapters/UIToFlatUI.js +5 -12
  45. package/dist/cjs/filters/adapters/UIToOldLogic.js +9 -1
  46. package/dist/cjs/filters/adapters/adaptFilterData.js +1 -1
  47. package/dist/cjs/filters/adapters/flatUIToFD.js +3 -7
  48. package/dist/cjs/filters/adapters/flatUIToOldLogic.js +41 -62
  49. package/dist/cjs/filters/adapters/flatUIToUI.js +2 -7
  50. package/dist/cjs/filters/adapters/logicToFlatUI.js +89 -74
  51. package/dist/cjs/filters/adapters/transformFilters.d.ts +1 -1
  52. package/dist/cjs/filters/adapters/transformFilters.js +18 -25
  53. package/dist/cjs/filters/constants/backend/FILTER_BACKEND_VALIDATOR.js +0 -1
  54. package/dist/cjs/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.d.ts +2 -0
  55. package/dist/cjs/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.js +4 -0
  56. package/dist/cjs/filters/constants/common/FILTER_OPERATOR.js +0 -1
  57. package/dist/cjs/filters/constants/common/FILTER_VALIDATOR.js +0 -1
  58. package/dist/cjs/filters/constants/common/index.d.ts +1 -0
  59. package/dist/cjs/filters/constants/common/index.js +1 -0
  60. package/dist/cjs/filters/helpers/backend/buildExpression.d.ts +6 -0
  61. package/dist/cjs/filters/helpers/backend/buildExpression.js +9 -2
  62. package/dist/cjs/filters/helpers/backend/getBackendGroupValue.js +2 -1
  63. package/dist/cjs/filters/helpers/backend/getBackendProperty.js +7 -2
  64. package/dist/cjs/filters/helpers/backend/getBackendValues.js +34 -18
  65. package/dist/cjs/filters/helpers/common/arePropertiesDateP.d.ts +8 -0
  66. package/dist/cjs/filters/helpers/common/arePropertiesDateP.js +16 -0
  67. package/dist/cjs/filters/helpers/common/getFilterColumnLabel.js +1 -1
  68. package/dist/cjs/filters/helpers/common/getFilterid.js +1 -1
  69. package/dist/cjs/filters/helpers/common/getFiltersByParams.js +5 -5
  70. package/dist/cjs/filters/helpers/common/getFiltersByVisibility.js +1 -1
  71. package/dist/cjs/filters/helpers/common/getMergeFiltersSettings.d.ts +7 -0
  72. package/dist/cjs/filters/helpers/common/getMergeFiltersSettings.js +16 -0
  73. package/dist/cjs/filters/helpers/common/getParamsToGetFilterSettings.d.ts +5 -0
  74. package/dist/cjs/filters/helpers/common/getParamsToGetFilterSettings.js +11 -1
  75. package/dist/cjs/filters/helpers/common/index.d.ts +2 -0
  76. package/dist/cjs/filters/helpers/common/index.js +2 -0
  77. package/dist/cjs/filters/helpers/common/mergeFilters.d.ts +2 -1
  78. package/dist/cjs/filters/helpers/common/mergeFilters.js +27 -10
  79. package/dist/cjs/filters/helpers/common/resolveDatasetConditions.js +1 -1
  80. package/dist/cjs/filters/helpers/common/resolveFilterConditions.js +2 -3
  81. package/dist/cjs/filters/helpers/common/resolveScopeConditions.js +1 -1
  82. package/dist/cjs/filters/helpers/getAggFiltersFromFilterData.d.ts +1 -1
  83. package/dist/cjs/filters/helpers/getAggFiltersFromFilterData.js +18 -19
  84. package/dist/cjs/filters/helpers/getScopesByHierarchy.js +2 -2
  85. package/dist/cjs/filters/helpers/ui/excludeUIFlatFiltersByScopes.d.ts +1 -1
  86. package/dist/cjs/filters/helpers/ui/excludeUIFlatFiltersByScopes.js +1 -1
  87. package/dist/cjs/filters/helpers/ui/getUIFlatFilterByParams.d.ts +1 -1
  88. package/dist/cjs/filters/helpers/ui/getUIFlatFilterByParams.js +1 -1
  89. package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByParams.d.ts +1 -1
  90. package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByParams.js +1 -1
  91. package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByScopes.d.ts +1 -1
  92. package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByScopes.js +1 -1
  93. package/dist/cjs/filters/helpers/ui/getUIValues.js +6 -5
  94. package/dist/cjs/filters/interfaces/OLD_IFilterDetail.d.ts +3 -0
  95. package/dist/cjs/filters/interfaces/common/IFSFilterExtras.d.ts +3 -0
  96. package/dist/cjs/filters/interfaces/common/IFSFilterExtrasInfo.d.ts +4 -0
  97. package/dist/cjs/filters/interfaces/common/IFSFilterExtrasInfo.js +2 -0
  98. package/dist/cjs/filters/interfaces/common/IFSMergeFiltersSettings.d.ts +7 -0
  99. package/dist/cjs/filters/interfaces/common/IFSMergeFiltersSettings.js +2 -0
  100. package/dist/cjs/filters/interfaces/common/IFSParamsToGetFilter.d.ts +2 -1
  101. package/dist/cjs/filters/interfaces/common/IFSParamsToGetFilterEnableds.d.ts +9 -0
  102. package/dist/cjs/filters/interfaces/common/IFSParamsToGetFilterEnableds.js +2 -0
  103. package/dist/cjs/filters/interfaces/common/IFSParamsToGetFilterSettings.d.ts +5 -0
  104. package/dist/cjs/filters/interfaces/common/index.d.ts +3 -0
  105. package/dist/cjs/filters/interfaces/common/index.js +3 -0
  106. package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelBodyScopeScope.d.ts +1 -0
  107. package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelHeader.d.ts +1 -0
  108. package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelSettings.d.ts +4 -0
  109. package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.d.ts +7 -0
  110. package/dist/cjs/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.js +2 -0
  111. package/dist/cjs/filters/interfaces/panel/index.d.ts +1 -0
  112. package/dist/cjs/filters/interfaces/panel/index.js +1 -0
  113. package/dist/cjs/format/definition.d.ts +3 -2
  114. package/dist/cjs/format/format.d.ts +1 -1
  115. package/dist/cjs/format/format.js +25 -26
  116. package/dist/cjs/general/array/delete.d.ts +4 -4
  117. package/dist/cjs/general/array/delete.js +8 -6
  118. package/dist/cjs/general/array/filterNestedTree.js +1 -1
  119. package/dist/cjs/general/array/flattenDeep.d.ts +1 -1
  120. package/dist/cjs/general/array/flattenDeep.js +4 -2
  121. package/dist/cjs/general/array/getFirstIndexFromArray.d.ts +1 -1
  122. package/dist/cjs/general/array/getFirstIndexFromArray.js +7 -5
  123. package/dist/cjs/general/array/getLastIndexFromArray.d.ts +1 -1
  124. package/dist/cjs/general/array/getLastIndexFromArray.js +6 -4
  125. package/dist/cjs/general/function/debounce.d.ts +1 -1
  126. package/dist/cjs/general/function/throttled.d.ts +1 -1
  127. package/dist/cjs/general/function/throttled.js +1 -1
  128. package/dist/cjs/general/mix/importScripts.d.ts +1 -1
  129. package/dist/cjs/general/mix/isEmpty.d.ts +5 -4
  130. package/dist/cjs/general/mix/isEmpty.js +12 -6
  131. package/dist/cjs/general/mix/randomId.d.ts +1 -1
  132. package/dist/cjs/general/mix/randomId.js +1 -2
  133. package/dist/cjs/general/mix/size.d.ts +1 -1
  134. package/dist/cjs/general/object/cloneDeep.d.ts +4 -4
  135. package/dist/cjs/general/object/cloneDeep.js +14 -6
  136. package/dist/cjs/general/object/get.d.ts +47 -15
  137. package/dist/cjs/general/object/get.js +61 -37
  138. package/dist/cjs/general/object/getAttribute.d.ts +1 -1
  139. package/dist/cjs/general/object/hasProperty.d.ts +1 -1
  140. package/dist/cjs/general/object/hasProperty.js +1 -1
  141. package/dist/cjs/general/object/index.d.ts +1 -0
  142. package/dist/cjs/general/object/index.js +1 -0
  143. package/dist/cjs/general/object/isObject.d.ts +6 -0
  144. package/dist/cjs/general/object/isObject.js +12 -0
  145. package/dist/cjs/general/object/mapValues.d.ts +1 -1
  146. package/dist/cjs/general/object/mapValues.js +0 -1
  147. package/dist/cjs/general/object/omit.js +1 -1
  148. package/dist/cjs/general/object/pick.js +0 -1
  149. package/dist/cjs/index.d.ts +2 -0
  150. package/dist/cjs/index.js +2 -0
  151. package/dist/cjs/qrvey/getColumnsLabel.js +4 -4
  152. package/dist/cjs/qrvey/index.d.ts +3 -0
  153. package/dist/cjs/qrvey/index.js +15 -0
  154. package/dist/cjs/tokens/index.d.ts +1 -0
  155. package/dist/cjs/tokens/index.js +13 -0
  156. package/dist/cjs/tokens/isTokenLabel.d.ts +6 -0
  157. package/dist/cjs/tokens/isTokenLabel.js +16 -0
  158. package/dist/constants/COLUMN.js +0 -1
  159. package/dist/constants/COLUMN_PROPERTY.d.ts +6 -0
  160. package/dist/constants/COLUMN_PROPERTY.js +0 -1
  161. package/dist/constants/COLUMN_PROPERTY_VALUE.js +4 -1
  162. package/dist/date/constants/DATE_DAY_HOURS.d.ts +1 -0
  163. package/dist/date/constants/DATE_DAY_HOURS.js +26 -0
  164. package/dist/date/constants/DATE_HOUR_MINUTES.d.ts +1 -0
  165. package/dist/date/constants/DATE_HOUR_MINUTES.js +62 -0
  166. package/dist/date/constants/DATE_MINUTE_SECONDS.d.ts +1 -0
  167. package/dist/date/constants/DATE_MINUTE_SECONDS.js +2 -0
  168. package/dist/date/constants/DATE_MONTH_DAYS.d.ts +1 -0
  169. package/dist/date/constants/DATE_MONTH_DAYS.js +33 -0
  170. package/dist/date/constants/DATE_PROPERTY.js +0 -1
  171. package/dist/date/constants/DATE_PROPERTY_VALUE.d.ts +8 -0
  172. package/dist/date/constants/DATE_PROPERTY_VALUE.js +14 -0
  173. package/dist/date/constants/DATE_P_PROPERTIES.d.ts +2 -0
  174. package/dist/date/constants/DATE_P_PROPERTIES.js +8 -0
  175. package/dist/date/constants/DATE_P_VALUES.d.ts +6 -0
  176. package/dist/date/constants/DATE_P_VALUES.js +5 -0
  177. package/dist/date/constants/DATE_TIME_P_VALUES.d.ts +6 -0
  178. package/dist/date/constants/DATE_TIME_P_VALUES.js +5 -0
  179. package/dist/date/constants/DATE_TIME_VALUES.js +1 -1
  180. package/dist/date/constants/DATE_WEEK_DAYS.d.ts +1 -0
  181. package/dist/date/constants/DATE_WEEK_DAYS.js +3 -0
  182. package/dist/date/constants/DATE_YEAR_DAYS.d.ts +1 -0
  183. package/dist/date/constants/DATE_YEAR_DAYS.js +367 -0
  184. package/dist/date/constants/DATE_YEAR_MONTHS.d.ts +1 -0
  185. package/dist/date/constants/DATE_YEAR_MONTHS.js +1 -0
  186. package/dist/date/constants/DATE_YEAR_QUARTERS.d.ts +1 -0
  187. package/dist/date/constants/DATE_YEAR_QUARTERS.js +1 -0
  188. package/dist/date/constants/index.d.ts +12 -0
  189. package/dist/date/constants/index.js +12 -0
  190. package/dist/date/range/getDateRange.js +26 -21
  191. package/dist/date/relative/Adapter.js +2 -2
  192. package/dist/date/relative/constants/DATE_FORMATS.d.ts +1 -1
  193. package/dist/date/relative/constants/DATE_FORMATS.js +3 -3
  194. package/dist/date/relative/helpers/formatStatement.js +7 -7
  195. package/dist/filters/adapters/FDToFlatUI.js +5 -12
  196. package/dist/filters/adapters/FDToUI.js +2 -3
  197. package/dist/filters/adapters/UIToFlatUI.js +5 -12
  198. package/dist/filters/adapters/UIToOldLogic.js +9 -1
  199. package/dist/filters/adapters/adaptFilterData.js +1 -1
  200. package/dist/filters/adapters/flatUIToFD.js +3 -7
  201. package/dist/filters/adapters/flatUIToOldLogic.js +42 -63
  202. package/dist/filters/adapters/flatUIToUI.js +3 -8
  203. package/dist/filters/adapters/logicToFlatUI.js +91 -76
  204. package/dist/filters/adapters/transformFilters.d.ts +1 -1
  205. package/dist/filters/adapters/transformFilters.js +19 -26
  206. package/dist/filters/constants/backend/FILTER_BACKEND_VALIDATOR.js +0 -1
  207. package/dist/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.d.ts +2 -0
  208. package/dist/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.js +1 -0
  209. package/dist/filters/constants/common/FILTER_OPERATOR.js +0 -1
  210. package/dist/filters/constants/common/FILTER_VALIDATOR.js +0 -1
  211. package/dist/filters/constants/common/index.d.ts +1 -0
  212. package/dist/filters/constants/common/index.js +1 -0
  213. package/dist/filters/helpers/backend/buildExpression.d.ts +6 -0
  214. package/dist/filters/helpers/backend/buildExpression.js +9 -2
  215. package/dist/filters/helpers/backend/getBackendGroupValue.js +2 -1
  216. package/dist/filters/helpers/backend/getBackendProperty.js +8 -3
  217. package/dist/filters/helpers/backend/getBackendValues.js +34 -18
  218. package/dist/filters/helpers/common/arePropertiesDateP.d.ts +8 -0
  219. package/dist/filters/helpers/common/arePropertiesDateP.js +12 -0
  220. package/dist/filters/helpers/common/getFilterColumnLabel.js +1 -1
  221. package/dist/filters/helpers/common/getFilterid.js +1 -1
  222. package/dist/filters/helpers/common/getFiltersByParams.js +6 -6
  223. package/dist/filters/helpers/common/getFiltersByVisibility.js +1 -1
  224. package/dist/filters/helpers/common/getMergeFiltersSettings.d.ts +7 -0
  225. package/dist/filters/helpers/common/getMergeFiltersSettings.js +12 -0
  226. package/dist/filters/helpers/common/getParamsToGetFilterSettings.d.ts +5 -0
  227. package/dist/filters/helpers/common/getParamsToGetFilterSettings.js +11 -1
  228. package/dist/filters/helpers/common/index.d.ts +2 -0
  229. package/dist/filters/helpers/common/index.js +2 -0
  230. package/dist/filters/helpers/common/mergeFilters.d.ts +2 -1
  231. package/dist/filters/helpers/common/mergeFilters.js +27 -10
  232. package/dist/filters/helpers/common/resolveDatasetConditions.js +1 -1
  233. package/dist/filters/helpers/common/resolveFilterConditions.js +2 -3
  234. package/dist/filters/helpers/common/resolveScopeConditions.js +1 -1
  235. package/dist/filters/helpers/getAggFiltersFromFilterData.d.ts +1 -1
  236. package/dist/filters/helpers/getAggFiltersFromFilterData.js +18 -19
  237. package/dist/filters/helpers/getScopesByHierarchy.js +2 -2
  238. package/dist/filters/helpers/ui/excludeUIFlatFiltersByScopes.d.ts +1 -1
  239. package/dist/filters/helpers/ui/excludeUIFlatFiltersByScopes.js +1 -1
  240. package/dist/filters/helpers/ui/getUIFlatFilterByParams.d.ts +1 -1
  241. package/dist/filters/helpers/ui/getUIFlatFilterByParams.js +1 -1
  242. package/dist/filters/helpers/ui/getUIFlatFiltersByParams.d.ts +1 -1
  243. package/dist/filters/helpers/ui/getUIFlatFiltersByParams.js +1 -1
  244. package/dist/filters/helpers/ui/getUIFlatFiltersByScopes.d.ts +1 -1
  245. package/dist/filters/helpers/ui/getUIFlatFiltersByScopes.js +1 -1
  246. package/dist/filters/helpers/ui/getUIValues.js +6 -5
  247. package/dist/filters/interfaces/OLD_IFilterDetail.d.ts +3 -0
  248. package/dist/filters/interfaces/common/IFSFilterExtras.d.ts +3 -0
  249. package/dist/filters/interfaces/common/IFSFilterExtrasInfo.d.ts +4 -0
  250. package/dist/filters/interfaces/common/IFSFilterExtrasInfo.js +1 -0
  251. package/dist/filters/interfaces/common/IFSMergeFiltersSettings.d.ts +7 -0
  252. package/dist/filters/interfaces/common/IFSMergeFiltersSettings.js +1 -0
  253. package/dist/filters/interfaces/common/IFSParamsToGetFilter.d.ts +2 -1
  254. package/dist/filters/interfaces/common/IFSParamsToGetFilterEnableds.d.ts +9 -0
  255. package/dist/filters/interfaces/common/IFSParamsToGetFilterEnableds.js +1 -0
  256. package/dist/filters/interfaces/common/IFSParamsToGetFilterSettings.d.ts +5 -0
  257. package/dist/filters/interfaces/common/index.d.ts +3 -0
  258. package/dist/filters/interfaces/common/index.js +3 -0
  259. package/dist/filters/interfaces/panel/IFPSettingsFilterPanelBodyScopeScope.d.ts +1 -0
  260. package/dist/filters/interfaces/panel/IFPSettingsFilterPanelHeader.d.ts +1 -0
  261. package/dist/filters/interfaces/panel/IFPSettingsFilterPanelSettings.d.ts +4 -0
  262. package/dist/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.d.ts +7 -0
  263. package/dist/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.js +1 -0
  264. package/dist/filters/interfaces/panel/index.d.ts +1 -0
  265. package/dist/filters/interfaces/panel/index.js +1 -0
  266. package/dist/format/definition.d.ts +3 -2
  267. package/dist/format/format.d.ts +1 -1
  268. package/dist/format/format.js +12 -13
  269. package/dist/general/array/delete.d.ts +4 -4
  270. package/dist/general/array/delete.js +8 -6
  271. package/dist/general/array/filterNestedTree.js +1 -1
  272. package/dist/general/array/flattenDeep.d.ts +1 -1
  273. package/dist/general/array/flattenDeep.js +4 -2
  274. package/dist/general/array/getFirstIndexFromArray.d.ts +1 -1
  275. package/dist/general/array/getFirstIndexFromArray.js +7 -5
  276. package/dist/general/array/getLastIndexFromArray.d.ts +1 -1
  277. package/dist/general/array/getLastIndexFromArray.js +6 -4
  278. package/dist/general/function/debounce.d.ts +1 -1
  279. package/dist/general/function/throttled.d.ts +1 -1
  280. package/dist/general/function/throttled.js +1 -1
  281. package/dist/general/mix/importScripts.d.ts +1 -1
  282. package/dist/general/mix/isEmpty.d.ts +5 -4
  283. package/dist/general/mix/isEmpty.js +12 -6
  284. package/dist/general/mix/randomId.d.ts +1 -1
  285. package/dist/general/mix/randomId.js +1 -2
  286. package/dist/general/mix/size.d.ts +1 -1
  287. package/dist/general/object/cloneDeep.d.ts +4 -4
  288. package/dist/general/object/cloneDeep.js +14 -6
  289. package/dist/general/object/get.d.ts +47 -15
  290. package/dist/general/object/get.js +59 -34
  291. package/dist/general/object/getAttribute.d.ts +1 -1
  292. package/dist/general/object/hasProperty.d.ts +1 -1
  293. package/dist/general/object/hasProperty.js +1 -1
  294. package/dist/general/object/index.d.ts +1 -0
  295. package/dist/general/object/index.js +1 -0
  296. package/dist/general/object/isObject.d.ts +6 -0
  297. package/dist/general/object/isObject.js +8 -0
  298. package/dist/general/object/mapValues.d.ts +1 -1
  299. package/dist/general/object/mapValues.js +0 -1
  300. package/dist/general/object/omit.js +1 -1
  301. package/dist/general/object/pick.js +0 -1
  302. package/dist/index.d.ts +2 -0
  303. package/dist/index.js +2 -0
  304. package/dist/qrvey/getColumnsLabel.js +5 -5
  305. package/dist/qrvey/index.d.ts +3 -0
  306. package/dist/qrvey/index.js +3 -0
  307. package/dist/tokens/index.d.ts +1 -0
  308. package/dist/tokens/index.js +1 -0
  309. package/dist/tokens/isTokenLabel.d.ts +6 -0
  310. package/dist/tokens/isTokenLabel.js +12 -0
  311. package/package.json +17 -10
  312. package/prepareToPublish.js +52 -0
  313. package/src/constants/COLUMN.ts +1 -1
  314. package/src/constants/COLUMN_PROPERTY.ts +13 -2
  315. package/src/constants/COLUMN_PROPERTY_VALUE.ts +6 -1
  316. package/src/date/constants/DATE_DAY_HOURS.ts +27 -0
  317. package/src/date/constants/DATE_HOUR_MINUTES.ts +63 -0
  318. package/src/date/constants/DATE_MINUTE_SECONDS.ts +3 -0
  319. package/src/date/constants/DATE_MONTH_DAYS.ts +34 -0
  320. package/src/date/constants/DATE_PROPERTY.ts +1 -1
  321. package/src/date/constants/DATE_PROPERTY_VALUE.ts +16 -0
  322. package/src/date/constants/DATE_P_PROPERTIES.ts +10 -0
  323. package/src/date/constants/DATE_P_VALUES.ts +7 -0
  324. package/src/date/constants/DATE_TIME_PROPERTIES.ts +0 -1
  325. package/src/date/constants/DATE_TIME_P_VALUES.ts +7 -0
  326. package/src/date/constants/DATE_TIME_VALUES.ts +1 -1
  327. package/src/date/constants/DATE_WEEK_DAYS.ts +4 -0
  328. package/src/date/constants/DATE_YEAR_DAYS.ts +368 -0
  329. package/src/date/constants/DATE_YEAR_MONTHS.ts +2 -0
  330. package/src/date/constants/DATE_YEAR_QUARTERS.ts +1 -0
  331. package/src/date/constants/index.ts +12 -0
  332. package/src/date/range/getDateRange.ts +46 -42
  333. package/src/date/relative/Adapter.ts +2 -2
  334. package/src/date/relative/constants/DATE_FORMATS.ts +3 -4
  335. package/src/date/relative/constants/RELATIVE_CURSOR_VALUE.ts +1 -1
  336. package/src/date/relative/helpers/formatStatement.ts +8 -8
  337. package/src/date/relative/index.ts +1 -1
  338. package/src/filters/adapters/FDToFlatUI.ts +7 -3
  339. package/src/filters/adapters/FDToUI.ts +5 -6
  340. package/src/filters/adapters/UIToFD.ts +1 -1
  341. package/src/filters/adapters/UIToFlatUI.ts +9 -5
  342. package/src/filters/adapters/UIToOldLogic.ts +11 -3
  343. package/src/filters/adapters/adaptFilterData.ts +1 -1
  344. package/src/filters/adapters/flatUIToFD.ts +5 -1
  345. package/src/filters/adapters/flatUIToOldLogic.ts +57 -71
  346. package/src/filters/adapters/flatUIToUI.ts +4 -1
  347. package/src/filters/adapters/logicToFlatUI.ts +101 -77
  348. package/src/filters/adapters/transformFilters.ts +22 -30
  349. package/src/filters/constants/backend/FILTER_BACKEND_VALIDATOR.ts +1 -1
  350. package/src/filters/constants/common/FILTER_GROUPED_COLUMN_OPERATOR.ts +3 -0
  351. package/src/filters/constants/common/FILTER_OPERATOR.ts +1 -1
  352. package/src/filters/constants/common/FILTER_VALIDATOR.ts +1 -1
  353. package/src/filters/constants/common/index.ts +1 -0
  354. package/src/filters/helpers/backend/buildExpression.ts +11 -3
  355. package/src/filters/helpers/backend/buildFilters.ts +2 -2
  356. package/src/filters/helpers/backend/getBackendGroupValue.ts +2 -1
  357. package/src/filters/helpers/backend/getBackendProperty.ts +6 -3
  358. package/src/filters/helpers/backend/getBackendValues.ts +27 -23
  359. package/src/filters/helpers/builder/getFilterBuilderGeneralConfig.ts +1 -1
  360. package/src/filters/helpers/common/areFiltersEquals.ts +1 -1
  361. package/src/filters/helpers/common/arePropertiesDateP.ts +14 -0
  362. package/src/filters/helpers/common/excludeFiltersByParams.ts +1 -1
  363. package/src/filters/helpers/common/getFilterColumnLabel.ts +1 -1
  364. package/src/filters/helpers/common/getFilterLabel.ts +1 -1
  365. package/src/filters/helpers/common/getFilterid.ts +1 -1
  366. package/src/filters/helpers/common/getFiltersByAggregateColumn.ts +1 -1
  367. package/src/filters/helpers/common/getFiltersByParams.ts +6 -7
  368. package/src/filters/helpers/common/getFiltersByVisibility.ts +1 -1
  369. package/src/filters/helpers/common/getMergeFiltersSettings.ts +13 -0
  370. package/src/filters/helpers/common/getParamsToGetFilterSettings.ts +11 -1
  371. package/src/filters/helpers/common/index.ts +2 -0
  372. package/src/filters/helpers/common/isInValidator.ts +1 -1
  373. package/src/filters/helpers/common/mergeFilters.ts +30 -17
  374. package/src/filters/helpers/common/resolveDatasetConditions.ts +1 -1
  375. package/src/filters/helpers/common/resolveFilterConditions.ts +2 -3
  376. package/src/filters/helpers/common/resolveScopeConditions.ts +1 -1
  377. package/src/filters/helpers/getAggFiltersFromFilterData.ts +20 -23
  378. package/src/filters/helpers/getAvailableScopesIDsByConfig.ts +1 -1
  379. package/src/filters/helpers/getScopesByHierarchy.ts +2 -2
  380. package/src/filters/helpers/ui/excludeUIFlatFiltersByScopes.ts +2 -2
  381. package/src/filters/helpers/ui/getUIFlatFilterByParams.ts +1 -1
  382. package/src/filters/helpers/ui/getUIFlatFiltersByParams.ts +1 -1
  383. package/src/filters/helpers/ui/getUIFlatFiltersByScopes.ts +1 -1
  384. package/src/filters/helpers/ui/getUIValues.ts +9 -9
  385. package/src/filters/helpers/ui/resolveUIFlatFiltersByParams.ts +1 -1
  386. package/src/filters/interfaces/OLD_IFilterDetail.ts +4 -0
  387. package/src/filters/interfaces/backend/IFBExpression.ts +1 -1
  388. package/src/filters/interfaces/common/IFSFilterExtras.ts +4 -0
  389. package/src/filters/interfaces/common/IFSFilterExtrasInfo.ts +5 -0
  390. package/src/filters/interfaces/common/IFSMergeFiltersSettings.ts +8 -0
  391. package/src/filters/interfaces/common/IFSParamsToGetFilter.ts +2 -1
  392. package/src/filters/interfaces/common/IFSParamsToGetFilterEnableds.ts +9 -0
  393. package/src/filters/interfaces/common/IFSParamsToGetFilterSettings.ts +5 -0
  394. package/src/filters/interfaces/common/index.ts +3 -0
  395. package/src/filters/interfaces/panel/IFPSettingsFilterPanelBodyScopeScope.ts +1 -0
  396. package/src/filters/interfaces/panel/IFPSettingsFilterPanelHeader.ts +1 -0
  397. package/src/filters/interfaces/panel/IFPSettingsFilterPanelSettings.ts +4 -0
  398. package/src/filters/interfaces/panel/IFPSettingsFilterPanelSettingsScope.ts +7 -0
  399. package/src/filters/interfaces/panel/IFilterPanelConfig.ts +0 -2
  400. package/src/filters/interfaces/panel/index.ts +1 -0
  401. package/src/filters/interfaces/ui/IFUFilterExtras.ts +1 -1
  402. package/src/format/definition.ts +7 -8
  403. package/src/format/format.ts +19 -22
  404. package/src/general/array/delete.ts +10 -6
  405. package/src/general/array/filterNestedTree.ts +1 -1
  406. package/src/general/array/flattenDeep.ts +3 -2
  407. package/src/general/array/getFirstIndexFromArray.ts +8 -6
  408. package/src/general/array/getLastIndexFromArray.ts +7 -5
  409. package/src/general/function/debounce.ts +2 -2
  410. package/src/general/function/throttled.ts +3 -3
  411. package/src/general/mix/importScripts.ts +1 -1
  412. package/src/general/mix/isEmpty.ts +12 -7
  413. package/src/general/mix/isNull.ts +2 -2
  414. package/src/general/mix/randomId.ts +2 -2
  415. package/src/general/mix/size.ts +1 -1
  416. package/src/general/object/cloneDeep.ts +15 -6
  417. package/src/general/object/get.ts +59 -31
  418. package/src/general/object/getAttribute.ts +1 -1
  419. package/src/general/object/hasProperty.ts +1 -1
  420. package/src/general/object/index.ts +3 -2
  421. package/src/general/object/isObject.ts +8 -0
  422. package/src/general/object/mapValues.ts +2 -2
  423. package/src/general/object/omit.ts +2 -2
  424. package/src/general/object/pick.ts +1 -1
  425. package/src/general/string/capitalize.ts +1 -1
  426. package/src/index.ts +3 -1
  427. package/src/qrvey/getColumnsLabel.ts +5 -5
  428. package/src/qrvey/index.ts +3 -0
  429. package/src/qrvey/isComplexColumn.ts +1 -1
  430. package/src/qrvey/isDateColumn.ts +1 -1
  431. package/src/stencil/decorators/Config.ts +2 -2
  432. package/src/tokens/index.ts +1 -0
  433. package/src/tokens/isTokenLabel.ts +13 -0
  434. package/src/typescript/decorators/Debounce.ts +2 -2
  435. package/src/typescript/decorators/Throttled.ts +2 -2
  436. package/test/format.test.js +97 -5
  437. package/test/general/array/delete.test.js +64 -0
  438. package/test/general/array/flattenDeep.test.js +44 -0
  439. package/test/general/array/getFirstIndexFromArray.test.js +56 -0
  440. package/test/general/array/getLastIndexFromArray.test.js +56 -0
  441. package/test/general/mix/isEmpty.test.js +144 -0
  442. package/test/general/object/cloneDeep.test.js +152 -0
  443. package/test/general/object/get.test.js +247 -0
  444. package/test/relative.test.js +24 -24
@@ -10,9 +10,9 @@ exports.getScopesByHierarchy = void 0;
10
10
  function getScopesByHierarchy(scopes = [], currentScope = "GLOBAL" /* GLOBAL */) {
11
11
  const scopeIndex = scopes.findIndex(s => s.label === currentScope);
12
12
  const chartScopeIndex = scopes.findIndex(s => s.label === "CHART" /* CHART */);
13
- return (scopeIndex !== -1)
13
+ return scopeIndex !== -1
14
14
  ? scopes.slice(0, scopeIndex)
15
- : (chartScopeIndex !== -1)
15
+ : chartScopeIndex !== -1
16
16
  ? scopes.slice(0, chartScopeIndex)
17
17
  : [];
18
18
  }
@@ -5,4 +5,4 @@ import { IFScope, IFUFlattenedFilter } from "../../interfaces";
5
5
  * @param scopes collection of scopes types
6
6
  * @returns The new array of UI Flattened filters
7
7
  */
8
- export declare function excludeUIFlatFiltersByScopes(uFilters: IFUFlattenedFilter[], scopes: IFScope[]): IFUFlattenedFilter[];
8
+ export declare function excludeUIFlatFiltersByScopes(uFilters?: IFUFlattenedFilter[], scopes?: IFScope[]): IFUFlattenedFilter[];
@@ -8,7 +8,7 @@ const general_1 = require("../../../general");
8
8
  * @param scopes collection of scopes types
9
9
  * @returns The new array of UI Flattened filters
10
10
  */
11
- function excludeUIFlatFiltersByScopes(uFilters = [], scopes) {
11
+ function excludeUIFlatFiltersByScopes(uFilters = [], scopes = []) {
12
12
  if (general_1.isEmpty(uFilters))
13
13
  return [];
14
14
  uFilters = general_1.cloneDeep(uFilters);
@@ -11,4 +11,4 @@ import { IFUFlattenedFilter, IFUParamsToGetFilter } from "../../interfaces";
11
11
  * - Property type
12
12
  * @returns The index of the uFilter array or the Filter object s
13
13
  */
14
- export declare function getUIFlatFilterByParams(uFilters: IFUFlattenedFilter[], params: IFUParamsToGetFilter, getIndex?: boolean): number | IFUFlattenedFilter;
14
+ export declare function getUIFlatFilterByParams(uFilters?: IFUFlattenedFilter[], params?: IFUParamsToGetFilter, getIndex?: boolean): number | IFUFlattenedFilter;
@@ -15,7 +15,7 @@ const resolveUIFlatFiltersByParams_1 = require("./resolveUIFlatFiltersByParams")
15
15
  * - Property type
16
16
  * @returns The index of the uFilter array or the Filter object s
17
17
  */
18
- function getUIFlatFilterByParams(uFilters = [], params, getIndex = false) {
18
+ function getUIFlatFilterByParams(uFilters = [], params = {}, getIndex = false) {
19
19
  if (general_1.isEmpty(params))
20
20
  return;
21
21
  uFilters = general_1.cloneDeep(uFilters);
@@ -12,4 +12,4 @@ import { IFUFlattenedFilter, IFUParamsToGetFilter } from "../../interfaces";
12
12
  * - Enabled flags
13
13
  * @returns The index of the uFilter array or the Filter object s
14
14
  */
15
- export declare function getUIFlatFiltersByParams(uFilters: IFUFlattenedFilter[], params: IFUParamsToGetFilter): IFUFlattenedFilter[];
15
+ export declare function getUIFlatFiltersByParams(uFilters?: IFUFlattenedFilter[], params?: IFUParamsToGetFilter): IFUFlattenedFilter[];
@@ -16,7 +16,7 @@ const resolveUIFlatFiltersByParams_1 = require("./resolveUIFlatFiltersByParams")
16
16
  * - Enabled flags
17
17
  * @returns The index of the uFilter array or the Filter object s
18
18
  */
19
- function getUIFlatFiltersByParams(uFilters = [], params) {
19
+ function getUIFlatFiltersByParams(uFilters = [], params = {}) {
20
20
  if (general_1.isEmpty(params))
21
21
  return;
22
22
  uFilters = general_1.cloneDeep(uFilters);
@@ -5,4 +5,4 @@ import { IFScope, IFUFlattenedFilter } from "../../interfaces";
5
5
  * @param scopes collection of scopes types
6
6
  * @returns The new array of UI Flattened filters
7
7
  */
8
- export declare function getUIFlatFiltersByScopes(uFilters: IFUFlattenedFilter[], scopes: IFScope[]): IFUFlattenedFilter[];
8
+ export declare function getUIFlatFiltersByScopes(uFilters?: IFUFlattenedFilter[], scopes?: IFScope[]): IFUFlattenedFilter[];
@@ -8,7 +8,7 @@ const general_1 = require("../../../general");
8
8
  * @param scopes collection of scopes types
9
9
  * @returns The new array of UI Flattened filters
10
10
  */
11
- function getUIFlatFiltersByScopes(uFilters = [], scopes) {
11
+ function getUIFlatFiltersByScopes(uFilters = [], scopes = []) {
12
12
  if (general_1.isEmpty(uFilters))
13
13
  return [];
14
14
  uFilters = general_1.cloneDeep(uFilters);
@@ -6,6 +6,7 @@ const date_1 = require("../../../date");
6
6
  const constants_2 = require("../../../constants");
7
7
  const general_1 = require("../../../general");
8
8
  function getUIValues(filter, addEnableds = false, rankingGroupIndex) {
9
+ var _a;
9
10
  switch (filter.validator) {
10
11
  case "AFTER" /* AFTER */:
11
12
  case "GREATER_THAN" /* GREATER_THAN */:
@@ -13,7 +14,7 @@ function getUIValues(filter, addEnableds = false, rankingGroupIndex) {
13
14
  case "GREATER_THAN_EQUAL" /* GREATER_THAN_EQUAL */:
14
15
  return filter.values.map(value => ({
15
16
  value: value.min,
16
- enabled: addEnableds ? (value.enabled != null ? value.enabled : true) : undefined,
17
+ enabled: addEnableds ? value.enabled != null ? value.enabled : true : undefined,
17
18
  }));
18
19
  case "BEFORE_ON" /* BEFORE_ON */:
19
20
  case "LESS_THAN_EQUAL" /* LESS_THAN_EQUAL */:
@@ -21,19 +22,19 @@ function getUIValues(filter, addEnableds = false, rankingGroupIndex) {
21
22
  case "LESS_THAN" /* LESS_THAN */:
22
23
  return filter.values.map(value => ({
23
24
  value: value.max,
24
- enabled: addEnableds ? (value.enabled != null ? value.enabled : true) : undefined,
25
+ enabled: addEnableds ? value.enabled != null ? value.enabled : true : undefined,
25
26
  }));
26
27
  case "BETWEEN_INCLUSIVE" /* BETWEEN_INCLUSIVE */:
27
28
  case "BETWEEN_EXCLUSIVE" /* BETWEEN_EXCLUSIVE */:
28
29
  return filter.values.map(value => ({
29
30
  value: `${value.min} - ${value.max}`,
30
- enabled: addEnableds ? (value.enabled != null ? value.enabled : true) : undefined,
31
+ enabled: addEnableds ? value.enabled != null ? value.enabled : true : undefined,
31
32
  }));
32
33
  case "IS_NULL" /* IS_NULL */:
33
34
  case "IS_NOT_NULL" /* IS_NOT_NULL */:
34
35
  return [{
35
36
  value: constants_1.FILTER_VALIDATOR_VALUE[filter.validator].label,
36
- enabled: addEnableds ? filter.enabled : undefined,
37
+ enabled: addEnableds ? (_a = filter.values[0]) === null || _a === void 0 ? void 0 : _a.enabled : undefined,
37
38
  }];
38
39
  case "IN" /* IN */:
39
40
  return filter.values.map(value => ({
@@ -47,7 +48,7 @@ function getUIValues(filter, addEnableds = false, rankingGroupIndex) {
47
48
  return (filter.values || []).map(val => ({
48
49
  imageUrl: val.imageUrl,
49
50
  value: val.value,
50
- enabled: addEnableds ? (val.enabled != null ? val.enabled : true) : undefined,
51
+ enabled: addEnableds ? val.enabled != null ? val.enabled : true : undefined,
51
52
  valueid: val.valueid,
52
53
  }));
53
54
  }
@@ -1,4 +1,5 @@
1
1
  import { IQrveyColumn } from "../../interfaces/Qrvey.Interface";
2
+ import { IFSFilterExtrasInfo } from "./common";
2
3
  import { IFDateSection } from "./IFDateSection";
3
4
  import { IFOperator } from "./IFOperator";
4
5
  import { IFProperty } from "./IFProperty";
@@ -22,6 +23,7 @@ export interface OLD_IFilterDetail {
22
23
  panelid?: string;
23
24
  panelName?: string;
24
25
  expressionid?: string;
26
+ info?: IFSFilterExtrasInfo;
25
27
  scope?: IFScope;
26
28
  scopeid?: string;
27
29
  scopeEnabled?: boolean;
@@ -34,4 +36,5 @@ export interface OLD_IFilterDetail {
34
36
  }[] | IFUValue[];
35
37
  section?: IFSection;
36
38
  groupValue?: IFProperty;
39
+ extras?: any;
37
40
  }
@@ -1,5 +1,6 @@
1
1
  import { IFScope } from "../IFScope";
2
2
  import { IFSection } from "../IFSection";
3
+ import { IFSFilterExtrasInfo } from "./IFSFilterExtrasInfo";
3
4
  /**
4
5
  * Structure for extra properties of the Filter.
5
6
  */
@@ -9,4 +10,6 @@ export interface IFSFilterExtras {
9
10
  scope: IFScope;
10
11
  scopeid?: string;
11
12
  section?: IFSection;
13
+ info?: IFSFilterExtrasInfo;
14
+ [x: string]: any;
12
15
  }
@@ -0,0 +1,4 @@
1
+ export interface IFSFilterExtrasInfo {
2
+ icon: string;
3
+ label: string;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Structure for MergeFilters property settings
3
+ */
4
+ export interface IFSMergeFiltersSettings {
5
+ overwriteValues?: boolean;
6
+ setGroupedColumnOperator?: boolean;
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -3,13 +3,14 @@ import { IFProperty } from "../IFProperty";
3
3
  import { IFScope } from "../IFScope";
4
4
  import { IFValidator } from "../IFValidator";
5
5
  import { IFSColumn } from "./IFSColumn";
6
+ import { IFSParamsToGetFilterEnableds } from "./IFSParamsToGetFilterEnableds";
6
7
  /**
7
8
  * Structure for filter properties
8
9
  */
9
10
  export interface IFSParamsToGetFilter {
10
11
  column?: IFSColumn;
11
12
  dateSection?: IFDateSection;
12
- enableds?: boolean;
13
+ enableds?: IFSParamsToGetFilterEnableds;
13
14
  linkid?: string;
14
15
  panelid?: string;
15
16
  property?: IFProperty;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Structure for filter structure enabled flags
3
+ */
4
+ export interface IFSParamsToGetFilterEnableds {
5
+ scopes?: boolean;
6
+ datasets?: boolean;
7
+ filters?: boolean;
8
+ values?: boolean;
9
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -12,4 +12,9 @@ export interface IFSParamsToGetFilterSettings {
12
12
  dataset?: boolean;
13
13
  filter?: boolean;
14
14
  };
15
+ filterEmptyArrays?: {
16
+ scope?: boolean;
17
+ dataset?: boolean;
18
+ filter?: boolean;
19
+ };
15
20
  }
@@ -19,7 +19,10 @@ export * from './IFSDataset';
19
19
  export * from './IFSDataStore';
20
20
  export * from './IFSFilter';
21
21
  export * from './IFSFilterExtras';
22
+ export * from './IFSFilterExtrasInfo';
23
+ export * from './IFSMergeFiltersSettings';
22
24
  export * from './IFSParamsToGetFilter';
25
+ export * from './IFSParamsToGetFilterEnableds';
23
26
  export * from './IFSParamsToGetFilterSettings';
24
27
  export * from './IFSScope';
25
28
  export * from './IFSScopeID';
@@ -31,7 +31,10 @@ __exportStar(require("./IFSDataset"), exports);
31
31
  __exportStar(require("./IFSDataStore"), exports);
32
32
  __exportStar(require("./IFSFilter"), exports);
33
33
  __exportStar(require("./IFSFilterExtras"), exports);
34
+ __exportStar(require("./IFSFilterExtrasInfo"), exports);
35
+ __exportStar(require("./IFSMergeFiltersSettings"), exports);
34
36
  __exportStar(require("./IFSParamsToGetFilter"), exports);
37
+ __exportStar(require("./IFSParamsToGetFilterEnableds"), exports);
35
38
  __exportStar(require("./IFSParamsToGetFilterSettings"), exports);
36
39
  __exportStar(require("./IFSScope"), exports);
37
40
  __exportStar(require("./IFSScopeID"), exports);
@@ -13,4 +13,5 @@ export interface IFPSettingsFilterPanelBodyScopeScope {
13
13
  readonly?: boolean;
14
14
  header?: IFPSettingsFilterPanelBodyScopeScopeHeader;
15
15
  body?: IFPSettingsFilterPanelBodyScopeScopeBody;
16
+ settingDisplayed?: boolean;
16
17
  }
@@ -7,5 +7,6 @@ export interface IFPSettingsFilterPanelHeader {
7
7
  readonly?: boolean;
8
8
  filterButtonDisplayed?: boolean;
9
9
  settingsButtonDisplayed?: boolean;
10
+ settingsReadonly?: boolean;
10
11
  menu?: IFPSettingsFilterPanelHeaderMenu;
11
12
  }
@@ -1,8 +1,12 @@
1
+ import { IFPSettingsFilterPanelSettingsScope } from "./IFPSettingsFilterPanelSettingsScope";
1
2
  import { IFPSettingsPanelView } from "./IFPSettingsPanelView";
2
3
  /**
3
4
  * Structure for the additional Filter Panel settings
4
5
  */
5
6
  export interface IFPSettingsFilterPanelSettings {
7
+ panelInPageViewShow?: boolean;
6
8
  panelInPageViewDisplayed?: boolean;
7
9
  panelDefaultView?: IFPSettingsPanelView;
10
+ panelDefaultViewShow?: boolean;
11
+ scopeSettings?: IFPSettingsFilterPanelSettingsScope;
8
12
  }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Scope Settings Structure
3
+ */
4
+ export interface IFPSettingsFilterPanelSettingsScope {
5
+ displayIconDisplayed: boolean;
6
+ displayColorModeDisplayed: boolean;
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -32,4 +32,5 @@ export * from './IFPSettingsFilterPanelBodyDatasetHeader';
32
32
  export * from './IFPSettingsFilterPanelBodyFilter';
33
33
  export * from './IFPSettingsFilterPanelBodyFilterMenu';
34
34
  export * from './IFPSettingsFilterPanelBodyOperator';
35
+ export * from './IFPSettingsFilterPanelSettingsScope';
35
36
  export * from './IFPSettingsPanelView';
@@ -44,4 +44,5 @@ __exportStar(require("./IFPSettingsFilterPanelBodyDatasetHeader"), exports);
44
44
  __exportStar(require("./IFPSettingsFilterPanelBodyFilter"), exports);
45
45
  __exportStar(require("./IFPSettingsFilterPanelBodyFilterMenu"), exports);
46
46
  __exportStar(require("./IFPSettingsFilterPanelBodyOperator"), exports);
47
+ __exportStar(require("./IFPSettingsFilterPanelSettingsScope"), exports);
47
48
  __exportStar(require("./IFPSettingsPanelView"), exports);
@@ -1,12 +1,13 @@
1
1
  import { COLUMN } from '../constants';
2
+ import { ChartType } from '../interfaces';
2
3
  export declare const textFields: string[];
3
4
  export declare const complexFields: string[];
4
5
  export declare const numericalFields: string[];
5
6
  export declare const QUESTION_FORMAT_SUPPORT: COLUMN[];
6
7
  export declare const DATEGROUP_FORMATTING_UNSUPPORT: string[];
7
8
  export declare const appliesFormatting: (columnType: any) => boolean;
8
- export declare const hasfileSizeProperty: (column?: any) => any;
9
+ export declare const hasfileSizeProperty: (column?: any) => boolean;
9
10
  export declare const isComplexColumn: (column?: any) => boolean;
10
11
  export declare const isNumericalColumn: (column?: any) => boolean;
11
- export declare function supportNumericFormatting(chartType: any): boolean;
12
+ export declare function supportNumericFormatting(chartType: ChartType): boolean;
12
13
  export declare const isTextColumn: (column: any) => boolean;
@@ -1,5 +1,5 @@
1
- export declare const isEmptyValue: (variable: any) => boolean;
2
1
  export declare function formatDate(dateString: any, format: any): any;
2
+ export declare function formatAbbreviated(num: any, decimals: any): any;
3
3
  /**
4
4
  * Set convert Bytes into MB
5
5
  * @param bytes type number
@@ -3,28 +3,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.defineFormat = exports.validateColumnType = exports.parseFormulaType = exports.formatValue = exports.formatFileSize = exports.formatDate = exports.isEmptyValue = void 0;
6
+ exports.defineFormat = exports.validateColumnType = exports.parseFormulaType = exports.formatValue = exports.formatFileSize = exports.formatAbbreviated = exports.formatDate = void 0;
7
7
  const d3_1 = require("d3");
8
8
  const dayjs_1 = __importDefault(require("dayjs"));
9
9
  const constants_1 = require("../constants");
10
- const get_1 = require("../general/object/get");
11
10
  const definition_1 = require("./definition");
12
11
  const advancedFormat_1 = __importDefault(require("dayjs/plugin/advancedFormat"));
12
+ const general_1 = require("../general");
13
13
  dayjs_1.default.extend(advancedFormat_1.default); // Add support to advanced formats https://day.js.org/docs/en/plugin/advanced-format
14
- const isEmptyValue = (variable) => {
15
- return variable === undefined || variable === null || variable === '';
16
- };
17
- exports.isEmptyValue = isEmptyValue;
18
14
  /**
19
15
  * Apply to the given date format to a date value
20
16
  * @param bytes type number
21
17
  */
22
18
  function isValidDateString(dateString = '') {
23
19
  return /^\d{2}\/\d{2}\/\d{4}/.test(dateString) // MM/DD/YYY OR DD/MM/YYYY
24
- || /^\d{4}\-\d{2}\-\d{2}/.test(dateString); // YYYY-MM-DD
20
+ || /^\d{4}-\d{2}-\d{2}/.test(dateString); // YYYY-MM-DD
25
21
  }
26
22
  function formatDate(dateString, format) {
27
- if (exports.isEmptyValue(dateString) || !isNaN(dateString) || format === 'Default')
23
+ if (general_1.isEmpty(dateString) || !isNaN(dateString) || format === 'Default')
28
24
  return dateString;
29
25
  if (!isValidDateString(dateString))
30
26
  return dateString;
@@ -38,9 +34,10 @@ function formatAbbreviated(num, decimals) {
38
34
  const exp = Math.floor(Math.log10(absValue));
39
35
  if (exp < 0 && exp >= -3)
40
36
  return decimals ? num.toFixed(decimals) : num;
41
- return d3_1.format((num > -100 && num < 100) ? '.s' : '.3s')(num);
37
+ return d3_1.format(num > -100 && num < 100 ? '' : '.3s')(num);
42
38
  }
43
- function formatNumber(num, outputFormat, config) {
39
+ exports.formatAbbreviated = formatAbbreviated;
40
+ function formatNumber(num, outputFormat, _config) {
44
41
  try {
45
42
  num = +(num || 0);
46
43
  }
@@ -49,7 +46,7 @@ function formatNumber(num, outputFormat, config) {
49
46
  }
50
47
  if (isNaN(num))
51
48
  num = 0;
52
- const num_decimals = !exports.isEmptyValue(outputFormat.decimals) && outputFormat.format !== 'Abbreviated' ? outputFormat.decimals : 0;
49
+ const num_decimals = !general_1.isEmpty(outputFormat.decimals) && outputFormat.format !== 'Abbreviated' ? outputFormat.decimals : 0;
53
50
  switch (outputFormat.format) {
54
51
  case 'Abbreviated':
55
52
  return formatAbbreviated(num, num_decimals);
@@ -57,7 +54,7 @@ function formatNumber(num, outputFormat, config) {
57
54
  case 'Decimal':
58
55
  return d3_1.format(`,.${num_decimals}f`)(num).replace(/\.(%*)$/, '$1');
59
56
  case 'Currency': {
60
- const currency = `${num < 0 ? '-' : ''} ${get_1._get(outputFormat, 'currency.label', '$')}`;
57
+ const currency = `${num < 0 ? '-' : ''} ${general_1._get(outputFormat, 'currency.label', '$')}`;
61
58
  const absNum = Math.abs(num);
62
59
  return currency + d3_1.format(`,.${num_decimals}f`)(absNum).replace(/\.(%*)$/, '$1');
63
60
  }
@@ -85,15 +82,16 @@ function formatFileSize(bytes) {
85
82
  }
86
83
  exports.formatFileSize = formatFileSize;
87
84
  const formatValue = (value, outputFormat = 'None', config) => {
88
- if (exports.isEmptyValue(value) || typeof value === 'object' && exports.isEmptyValue(value[0]))
85
+ if (general_1.isEmpty(value) || typeof value === 'object' && general_1.isEmpty(value[0]))
89
86
  return value;
90
87
  switch (outputFormat.type) {
91
88
  case 'DATE':
92
89
  case 'DATETIME':
93
90
  return formatDate(value, outputFormat.format);
94
- case 'NUMERIC':
91
+ case 'NUMERIC': {
95
92
  const parse = parseFloat(value);
96
93
  return isNaN(parse) ? value : formatNumber(parse, outputFormat, config);
94
+ }
97
95
  case 'IMAGEUPLOAD':
98
96
  case 'FILEUPLOAD':
99
97
  return formatFileSize(parseFloat(value));
@@ -125,19 +123,19 @@ const defineFormat = (column = {}, isSimpleTable = false, isCategoryDimension) =
125
123
  columnType = definition_1.isTextColumn(column) && ((column.outputFormat && column.outputFormat.type === 'NUMERIC') || (column.selectedFormat && column.selectedFormat.type === 'NUMERIC')) ? constants_1.COLUMN.NUMERIC : columnType;
126
124
  if (!definition_1.appliesFormatting(columnType) && (isSimpleTable || !isSimpleTable && column.isGroup))
127
125
  return 'None';
128
- const outputFormat = get_1._get(column, 'outputFormat.format');
129
- const selectedFormat = get_1._get(column, 'selectedFormat.format');
130
- const outputType = get_1._get(column, 'outputFormat.type');
131
- const selectType = get_1._get(column, 'selectedFormat.type');
132
- const isNumericDefault = (get_1._get(column, 'defaultFormat.format') === 'Default' || get_1._get(column, 'defaultFormat.format') === 'Numeric') && get_1._get(column, 'defaultFormat.type') === 'NUMERIC';
126
+ const outputFormat = general_1._get(column, 'outputFormat.format');
127
+ const selectedFormat = general_1._get(column, 'selectedFormat.format');
128
+ const outputType = general_1._get(column, 'outputFormat.type');
129
+ const selectType = general_1._get(column, 'selectedFormat.type');
130
+ const isNumericDefault = (general_1._get(column, 'defaultFormat.format') === 'Default' || general_1._get(column, 'defaultFormat.format') === 'Numeric') && general_1._get(column, 'defaultFormat.type') === 'NUMERIC';
133
131
  const isTable = isSimpleTable === true || (!isSimpleTable && (column.isGroup || column.groupAgg));
134
132
  const isNumericDefaultOutput = !isTable && (outputFormat === 'Default' || outputFormat === 'Numeric') && outputType === 'NUMERIC';
135
- const isNumericDefaultSelected = !isTable && (selectedFormat === 'Default' || selectedFormat === 'Numeric') && get_1._get(column, 'selectedFormat.type') === 'NUMERIC';
133
+ const isNumericDefaultSelected = !isTable && (selectedFormat === 'Default' || selectedFormat === 'Numeric') && general_1._get(column, 'selectedFormat.type') === 'NUMERIC';
136
134
  const defaultAbbreviated = {
137
135
  type: 'NUMERIC',
138
136
  format: 'Abbreviated'
139
137
  };
140
- const dateGroupLabel = get_1._get(column, 'dateGroup.label') || column.dateGroup;
138
+ const dateGroupLabel = general_1._get(column, 'dateGroup.label') || column.dateGroup;
141
139
  switch (columnType) {
142
140
  case constants_1.COLUMN.YES_NO:
143
141
  case constants_1.COLUMN.PHONE:
@@ -161,6 +159,7 @@ const defineFormat = (column = {}, isSimpleTable = false, isCategoryDimension) =
161
159
  return defaultAbbreviated;
162
160
  return column.selectedFormat;
163
161
  }
162
+ break;
164
163
  case constants_1.COLUMN.DATE:
165
164
  if ((!isTable && column.isSummary) || column.isXY) {
166
165
  if (isCategoryDimension && outputFormat !== 'Default')
@@ -174,15 +173,15 @@ const defineFormat = (column = {}, isSimpleTable = false, isCategoryDimension) =
174
173
  if ((isCategoryDimension || isTable) && selectType == 'NUMERIC' && dateGroupLabel && outputType === 'DATE')
175
174
  return column.outputFormat;
176
175
  if ((isCategoryDimension || isTable) && selectType == 'NUMERIC' && dateGroupLabel && outputType === 'NUMERIC')
177
- return get_1._get(column, 'defaultFormat');
178
- if (selectedFormat) {
176
+ return general_1._get(column, 'defaultFormat');
177
+ if (selectedFormat && selectedFormat != 'Default') {
179
178
  if (isNumericDefaultSelected)
180
179
  return defaultAbbreviated;
181
180
  return column.selectedFormat;
182
181
  }
183
182
  if (outputFormat) {
184
183
  if ((isCategoryDimension || isTable) && outputType !== 'DATE')
185
- return get_1._get(column, 'defaultFormat');
184
+ return general_1._get(column, 'defaultFormat');
186
185
  if (!isCategoryDimension && !isTable && outputType === 'DATE')
187
186
  return defaultAbbreviated;
188
187
  return column.outputFormat;
@@ -211,7 +210,7 @@ const defineFormat = (column = {}, isSimpleTable = false, isCategoryDimension) =
211
210
  if (isCategoryDimension === true) {
212
211
  if (isNumericDefault)
213
212
  return defaultAbbreviated;
214
- return get_1._get(column, 'defaultFormat');
213
+ return general_1._get(column, 'defaultFormat');
215
214
  }
216
215
  if (selectedFormat && selectedFormat != 'Default') {
217
216
  if (isNumericDefaultSelected)
@@ -283,7 +282,7 @@ const defineFormat = (column = {}, isSimpleTable = false, isCategoryDimension) =
283
282
  if (((column.selectedFormat &&
284
283
  column.selectedFormat.format !== "Default") ||
285
284
  (!isSimpleTable && column.isSummary)) &&
286
- get_1._get(column, "outputFormat.format"))
285
+ general_1._get(column, "outputFormat.format"))
287
286
  return column.outputFormat;
288
287
  break;
289
288
  default: