@qrvey/utils 1.5.0-9 → 1.5.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 (292) hide show
  1. package/README.md +1 -1
  2. package/dist/charts/adapters/endpointData.js +27 -25
  3. package/dist/charts/adapters/endpointDataGet.js +15 -16
  4. package/dist/cjs/charts/adapters/endpointData.js +27 -25
  5. package/dist/cjs/charts/adapters/endpointDataGet.js +15 -16
  6. package/dist/cjs/column_format/helpers/columnTypeByChart.js +1 -2
  7. package/dist/cjs/column_format/helpers/defineTableChartFormat.js +3 -3
  8. package/dist/cjs/column_format/helpers/defineXYChartFormat.js +10 -17
  9. package/dist/cjs/columns/constants/COLUMN.js +1 -1
  10. package/dist/cjs/columns/constants/COLUMN_PROPERTY.js +2 -2
  11. package/dist/cjs/columns/helpers/getDatasetColumn.d.ts +9 -1
  12. package/dist/cjs/columns/helpers/getDatasetColumn.js +31 -4
  13. package/dist/cjs/columns/helpers/getDatasetColumnByDatasets.d.ts +6 -5
  14. package/dist/cjs/columns/helpers/getDatasetColumnByDatasets.js +22 -8
  15. package/dist/cjs/columns/helpers/getModelColumn.d.ts +4 -4
  16. package/dist/cjs/columns/helpers/getModelColumn.js +9 -19
  17. package/dist/cjs/columns/helpers/isComplexColumn.d.ts +5 -0
  18. package/dist/cjs/columns/helpers/isComplexColumn.js +5 -0
  19. package/dist/cjs/columns/helpers/isDateColumn.d.ts +5 -0
  20. package/dist/cjs/columns/helpers/isDateColumn.js +8 -1
  21. package/dist/cjs/columns/helpers/isNumericalColumn.d.ts +5 -0
  22. package/dist/cjs/columns/helpers/isNumericalColumn.js +7 -1
  23. package/dist/cjs/dates/adapters/dateToHms.d.ts +1 -1
  24. package/dist/cjs/dates/adapters/dateToHms.js +6 -8
  25. package/dist/cjs/dates/adapters/dateToMdyDate.js +6 -9
  26. package/dist/cjs/dates/adapters/dateToMonthYear.js +6 -4
  27. package/dist/cjs/dates/adapters/dateToQuarterYear.d.ts +2 -2
  28. package/dist/cjs/dates/adapters/dateToQuarterYear.js +8 -6
  29. package/dist/cjs/dates/adapters/dateToWeekYear.js +5 -3
  30. package/dist/cjs/dates/adapters/dateToYear.d.ts +1 -1
  31. package/dist/cjs/dates/adapters/dateToYear.js +6 -4
  32. package/dist/cjs/dates/adapters/weekYearToDate.js +1 -6
  33. package/dist/cjs/dates/constants/DATE_DISTINCT_PROPERTY.js +1 -1
  34. package/dist/cjs/dates/constants/DATE_FORMAT.js +7 -7
  35. package/dist/cjs/dates/constants/DATE_FORMATS.d.ts +1 -0
  36. package/dist/cjs/dates/constants/DATE_FORMATS.js +22 -0
  37. package/dist/cjs/dates/constants/DATE_GROUPING_ALL_PROPERTIES.d.ts +1 -0
  38. package/dist/cjs/dates/constants/DATE_GROUPING_ALL_PROPERTIES.js +9 -0
  39. package/dist/cjs/dates/constants/DATE_REGULAR_EXPRESSIONS.d.ts +1 -0
  40. package/dist/cjs/dates/constants/DATE_REGULAR_EXPRESSIONS.js +23 -0
  41. package/dist/cjs/dates/constants/DATE_REGULAR_EXPRESSION_ARRAY_BY_FORMAT.d.ts +3 -0
  42. package/dist/cjs/dates/constants/DATE_REGULAR_EXPRESSION_ARRAY_BY_FORMAT.js +40 -0
  43. package/dist/cjs/dates/constants/index.d.ts +4 -0
  44. package/dist/cjs/dates/constants/index.js +4 -0
  45. package/dist/cjs/dates/helpers/{includeDateTokens.d.ts → areIncludedDateTokens.d.ts} +1 -1
  46. package/dist/cjs/dates/helpers/{includeDateTokens.js → areIncludedDateTokens.js} +5 -4
  47. package/dist/cjs/dates/helpers/getDateFormatRegularExpressionInArray.d.ts +2 -2
  48. package/dist/cjs/dates/helpers/getDateFormatRegularExpressionInArray.js +9 -42
  49. package/dist/{dates/range → cjs/dates/helpers}/getDateRange.d.ts +3 -3
  50. package/dist/cjs/dates/{range → helpers}/getDateRange.js +73 -69
  51. package/dist/cjs/dates/helpers/getFormattedDateByFormat.d.ts +1 -0
  52. package/dist/cjs/dates/helpers/getFormattedDateByFormat.js +17 -17
  53. package/dist/cjs/dates/helpers/getSeparatorByDateFormat.d.ts +1 -1
  54. package/dist/cjs/dates/helpers/getSeparatorByDateFormat.js +1 -1
  55. package/dist/cjs/dates/helpers/getWeek.d.ts +6 -4
  56. package/dist/cjs/dates/helpers/getWeek.js +6 -3
  57. package/dist/cjs/dates/helpers/index.d.ts +4 -1
  58. package/dist/cjs/dates/helpers/index.js +4 -1
  59. package/dist/cjs/dates/helpers/isValidPotentialDate.d.ts +6 -0
  60. package/dist/cjs/dates/helpers/isValidPotentialDate.js +18 -0
  61. package/dist/cjs/dates/index.d.ts +0 -1
  62. package/dist/cjs/dates/index.js +0 -1
  63. package/dist/cjs/dates/relative/constants/RELATIVE_UNIT_INFO_LIST.js +5 -5
  64. package/dist/cjs/filters/adapters/FDToFlatUI.js +4 -4
  65. package/dist/cjs/filters/adapters/FDToUI.js +3 -3
  66. package/dist/cjs/filters/adapters/UIToFD.js +3 -3
  67. package/dist/cjs/filters/adapters/UIToFlatUI.js +3 -3
  68. package/dist/cjs/filters/adapters/UIToOldLogic.js +6 -6
  69. package/dist/cjs/filters/adapters/adaptFilterData.js +7 -7
  70. package/dist/cjs/filters/adapters/flatUIToFD.js +24 -24
  71. package/dist/cjs/filters/adapters/flatUIToOldLogic.js +42 -49
  72. package/dist/cjs/filters/adapters/flatUIToUI.js +29 -29
  73. package/dist/cjs/filters/adapters/index.d.ts +0 -1
  74. package/dist/cjs/filters/adapters/index.js +0 -1
  75. package/dist/cjs/filters/adapters/logicToFlatUI.js +6 -8
  76. package/dist/cjs/filters/constants/common/FILTER_TOKENS_STRUCTURE_TYPE.d.ts +2 -1
  77. package/dist/cjs/filters/constants/common/FILTER_TOKENS_STRUCTURE_TYPE.js +1 -0
  78. package/dist/cjs/filters/helpers/OLD_getAggFilters.js +5 -4
  79. package/dist/cjs/filters/helpers/backend/buildExpression.js +1 -1
  80. package/dist/cjs/filters/helpers/backend/buildFilters.js +6 -16
  81. package/dist/cjs/filters/helpers/backend/getBackendValidator.js +1 -1
  82. package/dist/cjs/filters/helpers/backend/getBackendValues.js +1 -3
  83. package/dist/cjs/filters/helpers/backend/getLogicByDatasets.js +2 -2
  84. package/dist/cjs/filters/helpers/backend/getLogicByDatasetsColumns.js +2 -2
  85. package/dist/cjs/filters/helpers/backend/getLogicByScopes.js +2 -2
  86. package/dist/cjs/filters/helpers/backend/getLogicByScopesHierarchy.js +0 -2
  87. package/dist/cjs/filters/helpers/common/excludeFiltersByAggregateColumn.js +3 -3
  88. package/dist/cjs/filters/helpers/common/excludeFiltersByParams.js +7 -9
  89. package/dist/cjs/filters/helpers/common/excludeFiltersByScopes.js +3 -3
  90. package/dist/cjs/filters/helpers/common/getFilterLabel.js +1 -1
  91. package/dist/cjs/filters/helpers/common/getFiltersByAggregateColumn.js +3 -3
  92. package/dist/cjs/filters/helpers/common/getFiltersByParams.js +15 -17
  93. package/dist/cjs/filters/helpers/common/getFiltersByScopes.js +3 -3
  94. package/dist/cjs/filters/helpers/common/getFiltersByScopesIds.js +4 -4
  95. package/dist/cjs/filters/helpers/common/getFiltersByVisibility.js +4 -4
  96. package/dist/cjs/filters/helpers/common/mergeFilters.js +23 -19
  97. package/dist/cjs/filters/helpers/common/mergeValues.js +2 -2
  98. package/dist/cjs/filters/helpers/filtersTokensToString.js +4 -1
  99. package/dist/cjs/filters/helpers/getAggFiltersFromFilterData.js +2 -2
  100. package/dist/cjs/filters/helpers/getTokensFromFilters.js +17 -3
  101. package/dist/cjs/filters/helpers/ui/excludeUIFiltersByAggregate.js +2 -2
  102. package/dist/cjs/filters/helpers/ui/excludeUIFlatFiltersByScopes.js +2 -2
  103. package/dist/cjs/filters/helpers/ui/getUIFlatFilterByParams.js +3 -3
  104. package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByParams.js +2 -2
  105. package/dist/cjs/filters/helpers/ui/getUIFlatFiltersByScopes.js +2 -2
  106. package/dist/cjs/filters/helpers/ui/getUIValues.js +9 -11
  107. package/dist/cjs/filters/helpers/ui/transformFilterValues.js +1 -3
  108. package/dist/cjs/filters/services/Filters.api.d.ts +4 -4
  109. package/dist/cjs/filters/services/Filters.api.js +7 -7
  110. package/dist/cjs/filters/services/UChartApi.d.ts +11 -11
  111. package/dist/cjs/filters/services/UChartApi.js +176 -185
  112. package/dist/cjs/filters/services/UChartPaginationApi.d.ts +13 -13
  113. package/dist/cjs/filters/services/UChartPaginationApi.js +198 -212
  114. package/dist/cjs/format/duration/addDurationFormat.d.ts +1 -1
  115. package/dist/cjs/format/duration/addDurationFormat.js +2 -2
  116. package/dist/cjs/format/duration/durationFormatter.d.ts +1 -1
  117. package/dist/cjs/format/duration/durationFormatter.js +7 -6
  118. package/dist/cjs/format/format.js +38 -33
  119. package/dist/cjs/format/localization.js +1 -2
  120. package/dist/cjs/general/mix/importScripts.js +8 -14
  121. package/dist/cjs/general/mix/randomId.js +11 -10
  122. package/dist/cjs/general/object/get.js +4 -4
  123. package/dist/cjs/general/object/getAttribute.js +1 -1
  124. package/dist/cjs/general/object/mapValues.js +2 -2
  125. package/dist/cjs/general/object/mergeDeep.js +6 -4
  126. package/dist/cjs/general/object/serialize.js +3 -3
  127. package/dist/cjs/general/string/padLeadingZeros.js +2 -2
  128. package/dist/cjs/globalization/helpers/getI18nDateGroupLabel.js +13 -10
  129. package/dist/cjs/globalization/helpers/getReverseI18nGroupLabel.js +12 -9
  130. package/dist/cjs/globalization/interfaces/II18nResource.d.ts +1 -1
  131. package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderAxisStyle.d.ts +9 -0
  132. package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderDurationParts.d.ts +1 -0
  133. package/dist/cjs/globalization/interfaces/common/II18nCommon.d.ts +2 -0
  134. package/dist/cjs/globalization/interfaces/filters/II18nTokenBox.d.ts +1 -0
  135. package/dist/cjs/globalization/labels/I18N_DEFAULT.js +1 -1
  136. package/dist/cjs/globalization/labels/chart_builder/I18N_CHART_BUILDER.js +1 -0
  137. package/dist/cjs/globalization/labels/chart_builder/I18N_CHART_BUILDER_STYLE_OPTIONS.js +13 -4
  138. package/dist/cjs/globalization/labels/common/I18N_COMMON.js +4 -0
  139. package/dist/cjs/qrvey/helpers/getLookupAnswers.js +4 -6
  140. package/dist/cjs/qrvey/helpers/getValueWithSuffixes.js +1 -1
  141. package/dist/cjs/services/adapters/index.d.ts +2 -1
  142. package/dist/cjs/services/adapters/index.js +2 -1
  143. package/dist/cjs/services/api/getAllDatasets.api.js +6 -8
  144. package/dist/cjs/services/helpers/Request.js +5 -4
  145. package/dist/column_format/helpers/columnTypeByChart.js +1 -2
  146. package/dist/column_format/helpers/defineTableChartFormat.js +4 -4
  147. package/dist/column_format/helpers/defineXYChartFormat.js +10 -17
  148. package/dist/columns/constants/COLUMN.js +1 -1
  149. package/dist/columns/constants/COLUMN_PROPERTY.js +2 -2
  150. package/dist/columns/helpers/getDatasetColumn.d.ts +9 -1
  151. package/dist/columns/helpers/getDatasetColumn.js +31 -4
  152. package/dist/columns/helpers/getDatasetColumnByDatasets.d.ts +6 -5
  153. package/dist/columns/helpers/getDatasetColumnByDatasets.js +22 -8
  154. package/dist/columns/helpers/getModelColumn.d.ts +4 -4
  155. package/dist/columns/helpers/getModelColumn.js +9 -19
  156. package/dist/columns/helpers/isComplexColumn.d.ts +5 -0
  157. package/dist/columns/helpers/isComplexColumn.js +5 -0
  158. package/dist/columns/helpers/isDateColumn.d.ts +5 -0
  159. package/dist/columns/helpers/isDateColumn.js +8 -1
  160. package/dist/columns/helpers/isNumericalColumn.d.ts +5 -0
  161. package/dist/columns/helpers/isNumericalColumn.js +7 -1
  162. package/dist/dates/adapters/dateToHms.d.ts +1 -1
  163. package/dist/dates/adapters/dateToHms.js +6 -8
  164. package/dist/dates/adapters/dateToMdyDate.js +6 -9
  165. package/dist/dates/adapters/dateToMonthYear.js +6 -4
  166. package/dist/dates/adapters/dateToQuarterYear.d.ts +2 -2
  167. package/dist/dates/adapters/dateToQuarterYear.js +8 -6
  168. package/dist/dates/adapters/dateToWeekYear.js +5 -3
  169. package/dist/dates/adapters/dateToYear.d.ts +1 -1
  170. package/dist/dates/adapters/dateToYear.js +6 -4
  171. package/dist/dates/adapters/weekYearToDate.js +1 -6
  172. package/dist/dates/constants/DATE_DISTINCT_PROPERTY.js +1 -1
  173. package/dist/dates/constants/DATE_FORMAT.js +7 -7
  174. package/dist/dates/constants/DATE_FORMATS.d.ts +1 -0
  175. package/dist/dates/constants/DATE_FORMATS.js +19 -0
  176. package/dist/dates/constants/DATE_GROUPING_ALL_PROPERTIES.d.ts +1 -0
  177. package/dist/dates/constants/DATE_GROUPING_ALL_PROPERTIES.js +6 -0
  178. package/dist/dates/constants/DATE_REGULAR_EXPRESSIONS.d.ts +1 -0
  179. package/dist/dates/constants/DATE_REGULAR_EXPRESSIONS.js +20 -0
  180. package/dist/dates/constants/DATE_REGULAR_EXPRESSION_ARRAY_BY_FORMAT.d.ts +3 -0
  181. package/dist/dates/constants/DATE_REGULAR_EXPRESSION_ARRAY_BY_FORMAT.js +37 -0
  182. package/dist/dates/constants/index.d.ts +4 -0
  183. package/dist/dates/constants/index.js +4 -0
  184. package/dist/dates/helpers/{includeDateTokens.d.ts → areIncludedDateTokens.d.ts} +1 -1
  185. package/dist/dates/helpers/{includeDateTokens.js → areIncludedDateTokens.js} +3 -2
  186. package/dist/dates/helpers/getDateFormatRegularExpressionInArray.d.ts +2 -2
  187. package/dist/dates/helpers/getDateFormatRegularExpressionInArray.js +9 -42
  188. package/dist/{cjs/dates/range → dates/helpers}/getDateRange.d.ts +3 -3
  189. package/dist/dates/{range → helpers}/getDateRange.js +73 -69
  190. package/dist/dates/helpers/getFormattedDateByFormat.d.ts +1 -0
  191. package/dist/dates/helpers/getFormattedDateByFormat.js +17 -17
  192. package/dist/dates/helpers/getSeparatorByDateFormat.d.ts +1 -1
  193. package/dist/dates/helpers/getSeparatorByDateFormat.js +1 -1
  194. package/dist/dates/helpers/getWeek.d.ts +6 -4
  195. package/dist/dates/helpers/getWeek.js +6 -3
  196. package/dist/dates/helpers/index.d.ts +4 -1
  197. package/dist/dates/helpers/index.js +4 -1
  198. package/dist/dates/helpers/isValidPotentialDate.d.ts +6 -0
  199. package/dist/dates/helpers/isValidPotentialDate.js +14 -0
  200. package/dist/dates/index.d.ts +0 -1
  201. package/dist/dates/index.js +0 -1
  202. package/dist/dates/relative/constants/RELATIVE_UNIT_INFO_LIST.js +5 -5
  203. package/dist/filters/adapters/FDToFlatUI.js +4 -4
  204. package/dist/filters/adapters/FDToUI.js +3 -3
  205. package/dist/filters/adapters/UIToFD.js +3 -3
  206. package/dist/filters/adapters/UIToFlatUI.js +3 -3
  207. package/dist/filters/adapters/UIToOldLogic.js +6 -6
  208. package/dist/filters/adapters/adaptFilterData.js +7 -7
  209. package/dist/filters/adapters/flatUIToFD.js +24 -24
  210. package/dist/filters/adapters/flatUIToOldLogic.js +42 -49
  211. package/dist/filters/adapters/flatUIToUI.js +29 -29
  212. package/dist/filters/adapters/index.d.ts +0 -1
  213. package/dist/filters/adapters/index.js +0 -1
  214. package/dist/filters/adapters/logicToFlatUI.js +6 -8
  215. package/dist/filters/constants/common/FILTER_TOKENS_STRUCTURE_TYPE.d.ts +2 -1
  216. package/dist/filters/constants/common/FILTER_TOKENS_STRUCTURE_TYPE.js +1 -0
  217. package/dist/filters/helpers/OLD_getAggFilters.js +5 -4
  218. package/dist/filters/helpers/backend/buildExpression.js +1 -1
  219. package/dist/filters/helpers/backend/buildFilters.js +6 -16
  220. package/dist/filters/helpers/backend/getBackendValidator.js +1 -1
  221. package/dist/filters/helpers/backend/getBackendValues.js +1 -3
  222. package/dist/filters/helpers/backend/getLogicByDatasets.js +2 -2
  223. package/dist/filters/helpers/backend/getLogicByDatasetsColumns.js +2 -2
  224. package/dist/filters/helpers/backend/getLogicByScopes.js +2 -2
  225. package/dist/filters/helpers/backend/getLogicByScopesHierarchy.js +0 -2
  226. package/dist/filters/helpers/common/excludeFiltersByAggregateColumn.js +3 -3
  227. package/dist/filters/helpers/common/excludeFiltersByParams.js +7 -9
  228. package/dist/filters/helpers/common/excludeFiltersByScopes.js +3 -3
  229. package/dist/filters/helpers/common/getFilterLabel.js +1 -1
  230. package/dist/filters/helpers/common/getFiltersByAggregateColumn.js +3 -3
  231. package/dist/filters/helpers/common/getFiltersByParams.js +15 -17
  232. package/dist/filters/helpers/common/getFiltersByScopes.js +3 -3
  233. package/dist/filters/helpers/common/getFiltersByScopesIds.js +4 -4
  234. package/dist/filters/helpers/common/getFiltersByVisibility.js +4 -4
  235. package/dist/filters/helpers/common/mergeFilters.js +23 -19
  236. package/dist/filters/helpers/common/mergeValues.js +2 -2
  237. package/dist/filters/helpers/filtersTokensToString.js +4 -1
  238. package/dist/filters/helpers/getAggFiltersFromFilterData.js +2 -2
  239. package/dist/filters/helpers/getTokensFromFilters.js +17 -3
  240. package/dist/filters/helpers/ui/excludeUIFiltersByAggregate.js +2 -2
  241. package/dist/filters/helpers/ui/excludeUIFlatFiltersByScopes.js +2 -2
  242. package/dist/filters/helpers/ui/getUIFlatFilterByParams.js +3 -3
  243. package/dist/filters/helpers/ui/getUIFlatFiltersByParams.js +2 -2
  244. package/dist/filters/helpers/ui/getUIFlatFiltersByScopes.js +2 -2
  245. package/dist/filters/helpers/ui/getUIValues.js +9 -11
  246. package/dist/filters/helpers/ui/transformFilterValues.js +1 -3
  247. package/dist/filters/services/Filters.api.d.ts +4 -4
  248. package/dist/filters/services/Filters.api.js +7 -7
  249. package/dist/filters/services/UChartApi.d.ts +11 -11
  250. package/dist/filters/services/UChartApi.js +176 -185
  251. package/dist/filters/services/UChartPaginationApi.d.ts +13 -13
  252. package/dist/filters/services/UChartPaginationApi.js +198 -212
  253. package/dist/format/duration/addDurationFormat.d.ts +1 -1
  254. package/dist/format/duration/addDurationFormat.js +2 -2
  255. package/dist/format/duration/durationFormatter.d.ts +1 -1
  256. package/dist/format/duration/durationFormatter.js +7 -6
  257. package/dist/format/format.js +38 -33
  258. package/dist/format/localization.js +1 -2
  259. package/dist/general/mix/importScripts.js +8 -14
  260. package/dist/general/mix/randomId.js +11 -10
  261. package/dist/general/object/get.js +4 -4
  262. package/dist/general/object/getAttribute.js +1 -1
  263. package/dist/general/object/mapValues.js +2 -2
  264. package/dist/general/object/mergeDeep.js +6 -4
  265. package/dist/general/object/serialize.js +3 -3
  266. package/dist/general/string/padLeadingZeros.js +2 -2
  267. package/dist/globalization/helpers/getI18nDateGroupLabel.js +13 -10
  268. package/dist/globalization/helpers/getReverseI18nGroupLabel.js +12 -9
  269. package/dist/globalization/interfaces/II18nResource.d.ts +1 -1
  270. package/dist/globalization/interfaces/chart_builder/II18nChartBuilderAxisStyle.d.ts +9 -0
  271. package/dist/globalization/interfaces/chart_builder/II18nChartBuilderDurationParts.d.ts +1 -0
  272. package/dist/globalization/interfaces/common/II18nCommon.d.ts +2 -0
  273. package/dist/globalization/interfaces/filters/II18nTokenBox.d.ts +1 -0
  274. package/dist/globalization/labels/I18N_DEFAULT.js +2 -2
  275. package/dist/globalization/labels/chart_builder/I18N_CHART_BUILDER.js +1 -0
  276. package/dist/globalization/labels/chart_builder/I18N_CHART_BUILDER_STYLE_OPTIONS.js +13 -4
  277. package/dist/globalization/labels/common/I18N_COMMON.js +4 -0
  278. package/dist/qrvey/helpers/getLookupAnswers.js +4 -6
  279. package/dist/qrvey/helpers/getValueWithSuffixes.js +1 -1
  280. package/dist/services/adapters/index.d.ts +2 -1
  281. package/dist/services/adapters/index.js +2 -1
  282. package/dist/services/api/getAllDatasets.api.js +6 -8
  283. package/dist/services/helpers/Request.js +5 -4
  284. package/package.json +5 -5
  285. package/dist/cjs/dates/range/index.d.ts +0 -1
  286. package/dist/cjs/dates/range/index.js +0 -17
  287. package/dist/cjs/filters/adapters/transformFilters.d.ts +0 -60
  288. package/dist/cjs/filters/adapters/transformFilters.js +0 -427
  289. package/dist/dates/range/index.d.ts +0 -1
  290. package/dist/dates/range/index.js +0 -1
  291. package/dist/filters/adapters/transformFilters.d.ts +0 -60
  292. package/dist/filters/adapters/transformFilters.js +0 -423
@@ -23,9 +23,7 @@ class UChartPaginationApi {
23
23
  * Gets afterKey object
24
24
  * @returns the afterKey object
25
25
  */
26
- this.getAfterKey = () => {
27
- return this.afterKey;
28
- };
26
+ this.getAfterKey = () => this.afterKey;
29
27
  /**
30
28
  * Gets a promise with a resulting data
31
29
  * @param config the config
@@ -37,183 +35,14 @@ class UChartPaginationApi {
37
35
  this.getChartResult = (config, uFilter, filterLogic = [], chartSettings, resetApi = false) => {
38
36
  this.refineAfterkey(uFilter, resetApi);
39
37
  this.setProps(uFilter);
40
- const requestBody = this._getPreviewRequestBody(uFilter, filterLogic, chartSettings, this.afterKey);
38
+ const requestBody = UChartPaginationApi._getPreviewRequestBody(uFilter, filterLogic, chartSettings, this.afterKey);
41
39
  const customChartApi = new Charts_api_1.default(Object.assign(Object.assign({}, config), { qrvey_id: (0, isEmpty_1.isEmpty)(uFilter.column.aggregate)
42
40
  ? uFilter.column.qrveyid
43
41
  : chartSettings === null || chartSettings === void 0 ? void 0 : chartSettings.qrveyid }));
44
42
  return customChartApi
45
43
  .getResultsPagination(requestBody, false)
46
- .then((response) => {
47
- return this._getDataFromResponse(response, uFilter);
48
- })
49
- .catch((_) => {
50
- return { data: [], total: 0 };
51
- });
52
- };
53
- /**
54
- * Gets request body structure
55
- * @param {IFUFlattenedFilter} uFilter The filter object
56
- * @param {IFBLogic[]} filterLogic Additional filter logic to apply in the preview
57
- * @param {IFUChartSettings} chartSettings The settings of the chart. For Aggregate Columns.
58
- * @returns the request body structure
59
- */
60
- this._getPreviewRequestBody = (uFilter, filterLogic = [], chartSettings, afterKey) => {
61
- const searchLogic = this._getSearchLogic(uFilter);
62
- const filterCharts = this._getFilterCharts(uFilter, searchLogic, chartSettings);
63
- const dimensions = !filterCharts[0]
64
- ? this._getDimensionsBody(uFilter)
65
- : this._getDimensionsBodyAdapter(filterCharts[0].dimensions);
66
- const summaries = !filterCharts[0]
67
- ? this._getSummariesBody(uFilter)
68
- : filterCharts[0].summaries;
69
- const maxDataPoints = this._getMaxDataPoints(uFilter.column, chartSettings);
70
- const filters = [
71
- ...filterLogic,
72
- ...(!filterCharts[0] ? (searchLogic === null || searchLogic === void 0 ? void 0 : searchLogic.logic) || [] : []),
73
- ];
74
- return { dimensions, summaries, maxDataPoints, afterKey, logic: filters };
75
- };
76
- /**
77
- * Gets dimension body structure
78
- * @param uFilter The filter Builder filter
79
- * @returns the dimension body structure
80
- */
81
- this._getDimensionsBody = (uFilter) => {
82
- const { column, validator } = uFilter;
83
- let dimensions;
84
- if (!(0, isRangeValidator_1.isRangeValidator)(validator)) {
85
- dimensions = [
86
- {
87
- questionid: column.id,
88
- type: column.type,
89
- formulaType: column.type === COLUMN_1.COLUMN.FORMULA ? column.formulaType : undefined,
90
- sort: this._getSortOption(column),
91
- },
92
- ];
93
- dimensions = this._refineBodies([...dimensions], uFilter);
94
- }
95
- return dimensions;
96
- };
97
- /**
98
- * Get a dimension body structure foor pagination endpoint
99
- * @param dimensions
100
- * @returns the dimension body structure
101
- */
102
- this._getDimensionsBodyAdapter = (dimensions = []) => {
103
- return dimensions.map((dimension) => ({
104
- questionid: dimension.questionid,
105
- type: dimension.type,
106
- formulaType: dimension.type === COLUMN_1.COLUMN.FORMULA ? dimension.formulaType : undefined,
107
- groupType: dimension.groupType,
108
- groupValue: dimension.groupValue,
109
- sort: {
110
- by: (0, get_1._get)(dimension, "sortOption.sortBy", "VALUE"),
111
- direction: (0, get_1._get)(dimension, "sortOption.sortDirection", "DESC"),
112
- },
113
- }));
114
- };
115
- /**
116
- * Gets max data point number
117
- * @param column The column to filter
118
- * @param chartSettings The settings of the chart. For Aggregate Columns.
119
- * @returns max data point number
120
- */
121
- this._getMaxDataPoints = (column, chartSettings) => {
122
- return !(0, isDateColumn_1.isDateColumn)(column) && !(0, isEmpty_1.isEmpty)(column.aggregate)
123
- ? (0, get_1._get)(chartSettings, "maxDataPoints.option", 1000)
124
- : 1000;
125
- };
126
- /**
127
- * Gets sort option structure
128
- * @param column The column to filter
129
- * @returns sort option structure
130
- */
131
- this._getSortOption = (column) => {
132
- let by = "CATEGORY";
133
- let direction = (0, isNumericalColumn_1.isNumericalColumn)(column) ? "DESC" : "ASC";
134
- if (!(0, isEmpty_1.isEmpty)(column.sorting)) {
135
- by = (0, get_1._get)(column.sorting, "sortBy");
136
- direction = (0, get_1._get)(column.sorting, "order");
137
- if (by == null)
138
- by = "VALUE";
139
- if (direction == null)
140
- direction = "DESC";
141
- }
142
- return { by, direction };
143
- };
144
- /**
145
- * Gets summaries body structure
146
- * @param uFilter The filter Builder filter
147
- * @returns summaries body structure
148
- */
149
- this._getSummariesBody = (uFilter) => {
150
- const { column, validator } = uFilter;
151
- const summary = {
152
- aggregate: (0, get_1._get)(column, "aggregate.label", AGGREGATE_1.AGGREGATE.COUNT),
153
- questionid: column.id,
154
- property: !(0, isDateColumn_1.isDateColumn)(uFilter.column) ? uFilter.property : undefined,
155
- type: column.type,
156
- };
157
- let summaries = [summary];
158
- if ((0, isNumericalColumn_1.isNumericalColumn)(column) || (0, isRangeValidator_1.isRangeValidator)(validator)) {
159
- summaries = [
160
- Object.assign(Object.assign({}, summary), { aggregate: AGGREGATE_1.AGGREGATE.MIN }),
161
- Object.assign(Object.assign({}, summary), { aggregate: AGGREGATE_1.AGGREGATE.MAX }),
162
- ];
163
- }
164
- return summaries;
165
- };
166
- /**
167
- * Refines the body structure
168
- * @param bodies The body structure
169
- * @param uFilter The filter Builder filter
170
- * @returns the body structure
171
- */
172
- this._refineBodies = (bodies, uFilter) => {
173
- const _bodies = (0, cloneDeep_1.cloneDeep)(bodies);
174
- if (uFilter.property != null) {
175
- _bodies.forEach((body) => {
176
- if ((0, isDateColumn_1.isDateColumn)(uFilter.column)) {
177
- body["groupType"] = "DATE";
178
- body["groupValue"] = uFilter.property.toUpperCase();
179
- }
180
- else {
181
- body["property"] = uFilter.property;
182
- }
183
- });
184
- }
185
- return _bodies;
186
- };
187
- /**
188
- * Gets the validation type for the preview request
189
- * @param column The column to filter
190
- * @param vaildator Validator Type
191
- * @returns the validator type for the preview request
192
- */
193
- this._getValidationType = (column, validator) => {
194
- if ((0, isDateColumn_1.isDateColumn)(column) ||
195
- column.type === COLUMN_1.COLUMN.BUCKET ||
196
- (0, isNumericalColumn_1.isNumericalColumn)(column)) {
197
- return FILTER_VALIDATOR_1.FILTER_VALIDATOR.EQUALS;
198
- }
199
- else {
200
- if ([
201
- FILTER_VALIDATOR_1.FILTER_VALIDATOR.NOT_CONTAIN,
202
- FILTER_VALIDATOR_1.FILTER_VALIDATOR.EQUALS,
203
- FILTER_VALIDATOR_1.FILTER_VALIDATOR.NOT_EQUAL,
204
- ].includes(validator)) {
205
- return FILTER_VALIDATOR_1.FILTER_VALIDATOR.CONTAINS;
206
- }
207
- else if (validator === FILTER_VALIDATOR_1.FILTER_VALIDATOR.NOT_END_WITH) {
208
- return FILTER_VALIDATOR_1.FILTER_VALIDATOR.ENDS_WITH;
209
- }
210
- else if (validator === FILTER_VALIDATOR_1.FILTER_VALIDATOR.NOT_START_WITH) {
211
- return FILTER_VALIDATOR_1.FILTER_VALIDATOR.STARTS_WITH;
212
- }
213
- else {
214
- return validator;
215
- }
216
- }
44
+ .then((response) => this._getDataFromResponse(response, uFilter))
45
+ .catch((_) => ({ data: [], total: 0 }));
217
46
  };
218
47
  /**
219
48
  * Gets the Data from preview Response
@@ -224,32 +53,19 @@ class UChartPaginationApi {
224
53
  this._getDataFromResponse = (response, uFilter) => {
225
54
  var _a;
226
55
  const data = { data: [], total: 0 };
227
- if (!this.isResultPaginationEmpty(response)) {
56
+ if (!UChartPaginationApi.isResultPaginationEmpty(response)) {
228
57
  const records = (0, get_1._get)(response, "data");
229
58
  data.data = (0, isEmpty_1.isEmpty)(uFilter.column.aggregate)
230
59
  ? records.map((record) => ({
231
60
  value: record.key.toString(),
232
61
  }))
233
- : this._getResponseSummaries(records);
62
+ : UChartPaginationApi._getResponseSummaries(records);
234
63
  data.data = (0, getUniqueArray_1.getUniqueArray)(data.data, "value");
235
64
  data.total = (_a = (0, get_1._get)(response, "totalGroups", 0)) !== null && _a !== void 0 ? _a : 0;
236
65
  this.setAfterKey((0, get_1._get)(response, "afterKey"));
237
66
  }
238
67
  return data;
239
68
  };
240
- /**
241
- * Gets summaries from preview response
242
- * @param records The data from preview response
243
- * @param values The values from the preview response
244
- * @returns the sumaries
245
- */
246
- this._getResponseSummaries = (records, values = []) => {
247
- records.forEach((record) => {
248
- const value = record.summaries[0].toString();
249
- value && values.push({ value });
250
- });
251
- return values;
252
- };
253
69
  /**
254
70
  * Refines the afterKey object
255
71
  * @param props
@@ -258,7 +74,7 @@ class UChartPaginationApi {
258
74
  if (forceSet ||
259
75
  (0, get_1._get)(uFilter, "values[0].value", "") !==
260
76
  (0, get_1._get)(this.uFilter, "values[0].value", "") ||
261
- !this.areColumnsEquals(uFilter.column, (0, get_1._get)(this.uFilter, "column")) ||
77
+ !UChartPaginationApi.areColumnsEquals(uFilter.column, (0, get_1._get)(this.uFilter, "column")) ||
262
78
  uFilter.validator !== this.uFilter.validator ||
263
79
  uFilter.property !== this.uFilter.property ||
264
80
  uFilter.extras.scope !== this.uFilter.extras.scope)
@@ -278,35 +94,17 @@ class UChartPaginationApi {
278
94
  this.setProps = (uFilter) => {
279
95
  this.uFilter = (0, cloneDeep_1.cloneDeep)(uFilter);
280
96
  };
281
- /**
282
- * Checks if two filter columns are the same.
283
- * @param column1
284
- * @param column2
285
- * @returns True: Columns are equal; False: Columns are not equal
286
- */
287
- this.areColumnsEquals = (column1, column2) => {
288
- if ((0, isEmpty_1.isEmpty)(column1) || (0, isEmpty_1.isEmpty)(column2))
289
- return false;
290
- return (column1.id === column2.id &&
291
- column1.qrveyid === column2.qrveyid &&
292
- column1.property === column2.property &&
293
- column1.aggregate === column2.aggregate);
294
- };
295
- this.isResultPaginationEmpty = (resultObject) => {
296
- const result = (0, get_1._get)(resultObject, "data");
297
- return (0, isEmpty_1.isEmpty)(result);
298
- };
299
97
  }
300
98
  /**
301
99
  * Gets the filter object structure for the searching text
302
100
  * @param {IFUFlattenedFilter} uFilter The filter object
303
101
  * @returns the filter object structure
304
102
  */
305
- _getSearchLogic(uFilter) {
103
+ static _getSearchLogic(uFilter) {
306
104
  let searchLogic;
307
105
  if (!(0, isEmpty_1.isEmpty)(uFilter.values)) {
308
106
  searchLogic = (0, flatUIToOldLogic_1.flatUIToOldLogic)([
309
- Object.assign(Object.assign({}, uFilter), { validator: this._getValidationType(uFilter.column, uFilter.validator), column: Object.assign({}, uFilter.column) }),
107
+ Object.assign(Object.assign({}, uFilter), { validator: UChartPaginationApi._getValidationType(uFilter.column, uFilter.validator), column: Object.assign({}, uFilter.column) }),
310
108
  ]);
311
109
  }
312
110
  return searchLogic;
@@ -318,7 +116,7 @@ class UChartPaginationApi {
318
116
  * @param {IFUChartSettings} chartSettings The settings of the chart. For Aggregate Columns.
319
117
  * @returns the filters from the chart settings
320
118
  */
321
- _getFilterCharts(uFilter, searchLogic, chartSettings) {
119
+ static _getFilterCharts(uFilter, searchLogic, chartSettings) {
322
120
  let filterCharts = [];
323
121
  const haveAggFilters = ((chartSettings === null || chartSettings === void 0 ? void 0 : chartSettings.aggregateColumns) || []).length &&
324
122
  ((chartSettings === null || chartSettings === void 0 ? void 0 : chartSettings.chart) || []).length;
@@ -338,3 +136,191 @@ class UChartPaginationApi {
338
136
  }
339
137
  }
340
138
  exports.default = UChartPaginationApi;
139
+ /**
140
+ * Gets request body structure
141
+ * @param {IFUFlattenedFilter} uFilter The filter object
142
+ * @param {IFBLogic[]} filterLogic Additional filter logic to apply in the preview
143
+ * @param {IFUChartSettings} chartSettings The settings of the chart. For Aggregate Columns.
144
+ * @returns the request body structure
145
+ */
146
+ UChartPaginationApi._getPreviewRequestBody = (uFilter, filterLogic = [], chartSettings, afterKey) => {
147
+ const searchLogic = UChartPaginationApi._getSearchLogic(uFilter);
148
+ const filterCharts = UChartPaginationApi._getFilterCharts(uFilter, searchLogic, chartSettings);
149
+ const dimensions = !filterCharts[0]
150
+ ? UChartPaginationApi._getDimensionsBody(uFilter)
151
+ : UChartPaginationApi._getDimensionsBodyAdapter(filterCharts[0].dimensions);
152
+ const summaries = !filterCharts[0]
153
+ ? UChartPaginationApi._getSummariesBody(uFilter)
154
+ : filterCharts[0].summaries;
155
+ const maxDataPoints = UChartPaginationApi._getMaxDataPoints(uFilter.column, chartSettings);
156
+ const filters = [
157
+ ...filterLogic,
158
+ ...(!filterCharts[0] ? (searchLogic === null || searchLogic === void 0 ? void 0 : searchLogic.logic) || [] : []),
159
+ ];
160
+ return { dimensions, summaries, maxDataPoints, afterKey, logic: filters };
161
+ };
162
+ /**
163
+ * Gets dimension body structure
164
+ * @param uFilter The filter Builder filter
165
+ * @returns the dimension body structure
166
+ */
167
+ UChartPaginationApi._getDimensionsBody = (uFilter) => {
168
+ const { column, validator } = uFilter;
169
+ let dimensions;
170
+ if (!(0, isRangeValidator_1.isRangeValidator)(validator)) {
171
+ dimensions = [
172
+ {
173
+ questionid: column.id,
174
+ type: column.type,
175
+ formulaType: column.type === COLUMN_1.COLUMN.FORMULA ? column.formulaType : undefined,
176
+ sort: UChartPaginationApi._getSortOption(column),
177
+ },
178
+ ];
179
+ dimensions = UChartPaginationApi._refineBodies([...dimensions], uFilter);
180
+ }
181
+ return dimensions;
182
+ };
183
+ /**
184
+ * Get a dimension body structure foor pagination endpoint
185
+ * @param dimensions
186
+ * @returns the dimension body structure
187
+ */
188
+ UChartPaginationApi._getDimensionsBodyAdapter = (dimensions = []) => dimensions.map((dimension) => ({
189
+ questionid: dimension.questionid,
190
+ type: dimension.type,
191
+ formulaType: dimension.type === COLUMN_1.COLUMN.FORMULA ? dimension.formulaType : undefined,
192
+ groupType: dimension.groupType,
193
+ groupValue: dimension.groupValue,
194
+ sort: {
195
+ by: (0, get_1._get)(dimension, "sortOption.sortBy", "VALUE"),
196
+ direction: (0, get_1._get)(dimension, "sortOption.sortDirection", "DESC"),
197
+ },
198
+ }));
199
+ /**
200
+ * Gets max data point number
201
+ * @param column The column to filter
202
+ * @param chartSettings The settings of the chart. For Aggregate Columns.
203
+ * @returns max data point number
204
+ */
205
+ UChartPaginationApi._getMaxDataPoints = (column, chartSettings) => !(0, isDateColumn_1.isDateColumn)(column) && !(0, isEmpty_1.isEmpty)(column.aggregate)
206
+ ? (0, get_1._get)(chartSettings, "maxDataPoints.option", 1000)
207
+ : 1000;
208
+ /**
209
+ * Gets sort option structure
210
+ * @param column The column to filter
211
+ * @returns sort option structure
212
+ */
213
+ UChartPaginationApi._getSortOption = (column) => {
214
+ let by = "CATEGORY";
215
+ let direction = (0, isNumericalColumn_1.isNumericalColumn)(column) ? "DESC" : "ASC";
216
+ if (!(0, isEmpty_1.isEmpty)(column.sorting)) {
217
+ by = (0, get_1._get)(column.sorting, "sortBy");
218
+ direction = (0, get_1._get)(column.sorting, "order");
219
+ if (by == null)
220
+ by = "VALUE";
221
+ if (direction == null)
222
+ direction = "DESC";
223
+ }
224
+ return { by, direction };
225
+ };
226
+ /**
227
+ * Gets summaries body structure
228
+ * @param uFilter The filter Builder filter
229
+ * @returns summaries body structure
230
+ */
231
+ UChartPaginationApi._getSummariesBody = (uFilter) => {
232
+ const { column, validator } = uFilter;
233
+ const summary = {
234
+ aggregate: (0, get_1._get)(column, "aggregate.label", AGGREGATE_1.AGGREGATE.COUNT),
235
+ questionid: column.id,
236
+ property: !(0, isDateColumn_1.isDateColumn)(uFilter.column) ? uFilter.property : undefined,
237
+ type: column.type,
238
+ };
239
+ let summaries = [summary];
240
+ if ((0, isNumericalColumn_1.isNumericalColumn)(column) || (0, isRangeValidator_1.isRangeValidator)(validator)) {
241
+ summaries = [
242
+ Object.assign(Object.assign({}, summary), { aggregate: AGGREGATE_1.AGGREGATE.MIN }),
243
+ Object.assign(Object.assign({}, summary), { aggregate: AGGREGATE_1.AGGREGATE.MAX }),
244
+ ];
245
+ }
246
+ return summaries;
247
+ };
248
+ /**
249
+ * Refines the body structure
250
+ * @param bodies The body structure
251
+ * @param uFilter The filter Builder filter
252
+ * @returns the body structure
253
+ */
254
+ UChartPaginationApi._refineBodies = (bodies, uFilter) => {
255
+ const _bodies = (0, cloneDeep_1.cloneDeep)(bodies);
256
+ if (uFilter.property != null) {
257
+ _bodies.forEach((body) => {
258
+ if ((0, isDateColumn_1.isDateColumn)(uFilter.column)) {
259
+ body.groupType = "DATE";
260
+ body.groupValue = uFilter.property.toUpperCase();
261
+ }
262
+ else {
263
+ body.property = uFilter.property;
264
+ }
265
+ });
266
+ }
267
+ return _bodies;
268
+ };
269
+ /**
270
+ * Gets the validation type for the preview request
271
+ * @param column The column to filter
272
+ * @param vaildator Validator Type
273
+ * @returns the validator type for the preview request
274
+ */
275
+ UChartPaginationApi._getValidationType = (column, validator) => {
276
+ if ((0, isDateColumn_1.isDateColumn)(column) ||
277
+ column.type === COLUMN_1.COLUMN.BUCKET ||
278
+ (0, isNumericalColumn_1.isNumericalColumn)(column)) {
279
+ return FILTER_VALIDATOR_1.FILTER_VALIDATOR.EQUALS;
280
+ }
281
+ if ([
282
+ FILTER_VALIDATOR_1.FILTER_VALIDATOR.NOT_CONTAIN,
283
+ FILTER_VALIDATOR_1.FILTER_VALIDATOR.EQUALS,
284
+ FILTER_VALIDATOR_1.FILTER_VALIDATOR.NOT_EQUAL,
285
+ ].includes(validator)) {
286
+ return FILTER_VALIDATOR_1.FILTER_VALIDATOR.CONTAINS;
287
+ }
288
+ else if (validator === FILTER_VALIDATOR_1.FILTER_VALIDATOR.NOT_END_WITH) {
289
+ return FILTER_VALIDATOR_1.FILTER_VALIDATOR.ENDS_WITH;
290
+ }
291
+ else if (validator === FILTER_VALIDATOR_1.FILTER_VALIDATOR.NOT_START_WITH) {
292
+ return FILTER_VALIDATOR_1.FILTER_VALIDATOR.STARTS_WITH;
293
+ }
294
+ return validator;
295
+ };
296
+ /**
297
+ * Gets summaries from preview response
298
+ * @param records The data from preview response
299
+ * @param values The values from the preview response
300
+ * @returns the sumaries
301
+ */
302
+ UChartPaginationApi._getResponseSummaries = (records, values = []) => {
303
+ records.forEach((record) => {
304
+ const value = record.summaries[0].toString();
305
+ value && values.push({ value });
306
+ });
307
+ return values;
308
+ };
309
+ /**
310
+ * Checks if two filter columns are the same.
311
+ * @param column1
312
+ * @param column2
313
+ * @returns True: Columns are equal; False: Columns are not equal
314
+ */
315
+ UChartPaginationApi.areColumnsEquals = (column1, column2) => {
316
+ if ((0, isEmpty_1.isEmpty)(column1) || (0, isEmpty_1.isEmpty)(column2))
317
+ return false;
318
+ return (column1.id === column2.id &&
319
+ column1.qrveyid === column2.qrveyid &&
320
+ column1.property === column2.property &&
321
+ column1.aggregate === column2.aggregate);
322
+ };
323
+ UChartPaginationApi.isResultPaginationEmpty = (resultObject) => {
324
+ const result = (0, get_1._get)(resultObject, "data");
325
+ return (0, isEmpty_1.isEmpty)(result);
326
+ };
@@ -1,4 +1,4 @@
1
- /**[TODO: The decimals dots are not working correctly, we need to reviewing (fractionDigits)]
1
+ /** [TODO: The decimals dots are not working correctly, we need to reviewing (fractionDigits)]
2
2
  * "Convert a number of seconds to a human readable string."
3
3
  *
4
4
  * `addDurationFormat` is a function that takes a number, a format, an optional locale, and an optional
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addDurationFormat = void 0;
4
4
  const durationFormatter_1 = require("./durationFormatter");
5
- /**[TODO: The decimals dots are not working correctly, we need to reviewing (fractionDigits)]
5
+ /** [TODO: The decimals dots are not working correctly, we need to reviewing (fractionDigits)]
6
6
  * "Convert a number of seconds to a human readable string."
7
7
  *
8
8
  * `addDurationFormat` is a function that takes a number, a format, an optional locale, and an optional
@@ -17,7 +17,7 @@ const durationFormatter_1 = require("./durationFormatter");
17
17
  function addDurationFormat(number, format, locale, fractionDigits) {
18
18
  return new durationFormatter_1.DurationFormatter({
19
19
  template: format,
20
- options: { locale: locale, fractionDigits: fractionDigits },
20
+ options: { locale, fractionDigits },
21
21
  }).format(number);
22
22
  }
23
23
  exports.addDurationFormat = addDurationFormat;
@@ -49,7 +49,7 @@ export declare class DurationFormatter {
49
49
  * @returns The template string with all instances of H replaced with h and all instances of D
50
50
  * replaced with d.
51
51
  */
52
- private matchFormatsReplace;
52
+ private static matchFormatsReplace;
53
53
  /**
54
54
  * It sets the numberFactor to the value of the duration part that matches the unit.
55
55
  */
@@ -76,7 +76,7 @@ class DurationFormatter {
76
76
  * @param {string} template - The format template string.
77
77
  */
78
78
  setParts(template) {
79
- this.template = this.matchFormatsReplace(template);
79
+ this.template = DurationFormatter.matchFormatsReplace(template);
80
80
  this.parts = this.parseFormatTemplate(template);
81
81
  }
82
82
  /**
@@ -85,7 +85,7 @@ class DurationFormatter {
85
85
  * @returns The template string with all instances of H replaced with h and all instances of D
86
86
  * replaced with d.
87
87
  */
88
- matchFormatsReplace(template) {
88
+ static matchFormatsReplace(template) {
89
89
  return (0, isEmpty_1.isEmpty)(template) ? template : template.replace(/H/g, "h");
90
90
  }
91
91
  /**
@@ -127,15 +127,16 @@ class DurationFormatter {
127
127
  return undefined;
128
128
  if ((0, isEmpty_1.isEmpty)(number))
129
129
  return "";
130
- number *= this.numberFactor;
130
+ let _number = number;
131
+ _number *= this.numberFactor;
131
132
  const durationParts = this.parts.reduce((store, part) => {
132
- store[part.symbol] = Math.floor(number / part.ms);
133
- number %= part.ms;
133
+ store[part.symbol] = Math.floor(_number / part.ms);
134
+ _number %= part.ms;
134
135
  return store;
135
136
  }, {});
136
137
  if ((0, isEmpty_1.isEmpty)(this.template))
137
138
  return this.valueFormatter
138
- .format(number)
139
+ .format(_number)
139
140
  .padStart(this.parts.length, "0");
140
141
  return this.template.replace(definition_1.PARTS_REGEX, (match, $1) => {
141
142
  return $1 || this.formatValue(durationParts, match);