@qrvey/utils 1.2.10-0 → 1.2.10-3

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 (186) hide show
  1. package/README.md +1 -5850
  2. package/dist/cjs/charts/constants/index.js +5 -1
  3. package/dist/cjs/charts/helpers/index.js +5 -1
  4. package/dist/cjs/charts/index.js +5 -1
  5. package/dist/cjs/charts/interfaces/index.js +5 -1
  6. package/dist/cjs/columns/constants/index.js +5 -1
  7. package/dist/cjs/columns/helpers/getModelColumn.js +1 -1
  8. package/dist/cjs/columns/helpers/index.js +5 -1
  9. package/dist/cjs/columns/index.js +5 -1
  10. package/dist/cjs/columns/interfaces/index.js +5 -1
  11. package/dist/cjs/constants/index.js +5 -1
  12. package/dist/cjs/dates/adapters/index.js +5 -1
  13. package/dist/cjs/dates/constants/index.js +5 -1
  14. package/dist/cjs/dates/helpers/index.js +5 -1
  15. package/dist/cjs/dates/index.js +5 -1
  16. package/dist/cjs/dates/interfaces/index.js +5 -1
  17. package/dist/cjs/dates/range/index.js +5 -1
  18. package/dist/cjs/dates/relative/constants/index.js +5 -1
  19. package/dist/cjs/dates/relative/constants/ui/index.js +5 -1
  20. package/dist/cjs/dates/relative/helpers/dayjs-module.js +5 -1
  21. package/dist/cjs/dates/relative/helpers/index.js +5 -1
  22. package/dist/cjs/dates/relative/index.js +5 -1
  23. package/dist/cjs/dates/relative/interfaces/index.js +5 -1
  24. package/dist/cjs/dates/relative/interfaces/ui/index.js +5 -1
  25. package/dist/cjs/filters/adapters/UIToFD.js +2 -1
  26. package/dist/cjs/filters/adapters/adaptDateGroupingProperty.d.ts +2 -2
  27. package/dist/cjs/filters/adapters/adaptDateGroupingProperty.js +2 -2
  28. package/dist/cjs/filters/adapters/index.js +5 -1
  29. package/dist/cjs/filters/classes/index.js +5 -1
  30. package/dist/cjs/filters/constants/backend/index.js +5 -1
  31. package/dist/cjs/filters/constants/builder/index.js +5 -1
  32. package/dist/cjs/filters/constants/common/index.js +5 -1
  33. package/dist/cjs/filters/constants/index.js +5 -1
  34. package/dist/cjs/filters/constants/panel/index.js +5 -1
  35. package/dist/cjs/filters/helpers/applyHierarchyForAggFilters.d.ts +3 -3
  36. package/dist/cjs/filters/helpers/applyHierarchyForAggFilters.js +3 -3
  37. package/dist/cjs/filters/helpers/backend/getAggFiltersBySummaryIndex.d.ts +5 -3
  38. package/dist/cjs/filters/helpers/backend/getAggFiltersBySummaryIndex.js +5 -3
  39. package/dist/cjs/filters/helpers/backend/getBackendValues.js +3 -1
  40. package/dist/cjs/filters/helpers/backend/index.js +5 -1
  41. package/dist/cjs/filters/helpers/builder/index.js +5 -1
  42. package/dist/cjs/filters/helpers/common/getMergeFiltersSettings.js +4 -3
  43. package/dist/cjs/filters/helpers/common/index.js +5 -1
  44. package/dist/cjs/filters/helpers/common/mergeFilters.d.ts +1 -1
  45. package/dist/cjs/filters/helpers/common/mergeFilters.js +25 -9
  46. package/dist/cjs/filters/helpers/getAggFiltersFromFilterData.d.ts +5 -4
  47. package/dist/cjs/filters/helpers/getAggFiltersFromFilterData.js +5 -5
  48. package/dist/cjs/filters/helpers/index.js +5 -1
  49. package/dist/cjs/filters/helpers/ui/getUIValues.d.ts +4 -5
  50. package/dist/cjs/filters/helpers/ui/getUIValues.js +4 -5
  51. package/dist/cjs/filters/helpers/ui/index.js +5 -1
  52. package/dist/cjs/filters/index.js +5 -1
  53. package/dist/cjs/filters/interfaces/backend/index.js +5 -1
  54. package/dist/cjs/filters/interfaces/builder/index.js +5 -1
  55. package/dist/cjs/filters/interfaces/common/index.js +5 -1
  56. package/dist/cjs/filters/interfaces/functions/IFFiltersMergeFilters.d.ts +1 -0
  57. package/dist/cjs/filters/interfaces/functions/index.js +5 -1
  58. package/dist/cjs/filters/interfaces/index.js +5 -1
  59. package/dist/cjs/filters/interfaces/panel/index.js +5 -1
  60. package/dist/cjs/filters/interfaces/ui/index.js +5 -1
  61. package/dist/cjs/filters/services/index.js +5 -1
  62. package/dist/cjs/format/index.js +5 -1
  63. package/dist/cjs/format/localization.js +4 -3
  64. package/dist/cjs/formulas/constants/index.js +5 -1
  65. package/dist/cjs/formulas/index.js +5 -1
  66. package/dist/cjs/formulas/interfaces/index.js +5 -1
  67. package/dist/cjs/general/array/index.js +5 -1
  68. package/dist/cjs/general/function/index.js +5 -1
  69. package/dist/cjs/general/index.js +5 -1
  70. package/dist/cjs/general/mix/index.js +5 -1
  71. package/dist/cjs/general/object/get.d.ts +0 -20
  72. package/dist/cjs/general/object/get.js +0 -20
  73. package/dist/cjs/general/object/index.js +5 -1
  74. package/dist/cjs/general/string/index.js +5 -1
  75. package/dist/cjs/globalization/helpers/index.js +5 -1
  76. package/dist/cjs/globalization/index.js +5 -1
  77. package/dist/cjs/globalization/interfaces/bucket_builder/index.js +5 -1
  78. package/dist/cjs/globalization/interfaces/calendar/index.js +5 -1
  79. package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderConditionalFormatting.d.ts +2 -0
  80. package/dist/cjs/globalization/interfaces/chart_builder/index.js +5 -1
  81. package/dist/cjs/globalization/interfaces/columns/index.js +5 -1
  82. package/dist/cjs/globalization/interfaces/common/index.js +5 -1
  83. package/dist/cjs/globalization/interfaces/cross_tabs/index.js +5 -1
  84. package/dist/cjs/globalization/interfaces/dashboard/index.js +5 -1
  85. package/dist/cjs/globalization/interfaces/filters/index.js +5 -1
  86. package/dist/cjs/globalization/interfaces/formula_builder/index.js +5 -1
  87. package/dist/cjs/globalization/interfaces/index.js +5 -1
  88. package/dist/cjs/globalization/interfaces/panel/index.js +5 -1
  89. package/dist/cjs/globalization/interfaces/style_themes/index.js +5 -1
  90. package/dist/cjs/globalization/interfaces/table_charts/index.js +5 -1
  91. package/dist/cjs/globalization/labels/bucket_builder/index.js +5 -1
  92. package/dist/cjs/globalization/labels/calendar/index.js +5 -1
  93. package/dist/cjs/globalization/labels/chart_builder/I18N_CHART_BUILDER_FORMAT_OPTIONS.js +2 -0
  94. package/dist/cjs/globalization/labels/chart_builder/index.js +5 -1
  95. package/dist/cjs/globalization/labels/columns/index.js +5 -1
  96. package/dist/cjs/globalization/labels/common/index.js +5 -1
  97. package/dist/cjs/globalization/labels/cross_tabs/index.js +5 -1
  98. package/dist/cjs/globalization/labels/dashboard/index.js +5 -1
  99. package/dist/cjs/globalization/labels/filters/index.js +5 -1
  100. package/dist/cjs/globalization/labels/formula_builder/index.js +5 -1
  101. package/dist/cjs/globalization/labels/index.js +5 -1
  102. package/dist/cjs/globalization/labels/panel/index.js +5 -1
  103. package/dist/cjs/globalization/labels/style_themes/index.js +5 -1
  104. package/dist/cjs/globalization/labels/table_charts/index.js +5 -1
  105. package/dist/cjs/globalization/service/index.js +5 -1
  106. package/dist/cjs/index.js +5 -1
  107. package/dist/cjs/interfaces/format/index.js +5 -1
  108. package/dist/cjs/interfaces/general/index.d.ts +0 -1
  109. package/dist/cjs/interfaces/general/index.js +5 -2
  110. package/dist/cjs/interfaces/index.js +5 -1
  111. package/dist/cjs/qrvey/constants/index.js +5 -1
  112. package/dist/cjs/qrvey/helpers/getLookupAnswers.js +1 -2
  113. package/dist/cjs/qrvey/helpers/index.js +5 -1
  114. package/dist/cjs/qrvey/index.js +5 -1
  115. package/dist/cjs/qrvey/interfaces/index.js +5 -1
  116. package/dist/cjs/services/adapters/index.js +5 -1
  117. package/dist/cjs/services/api/getAllDatasets.api.d.ts +2 -2
  118. package/dist/cjs/services/api/getDatasetColumns.api.d.ts +2 -2
  119. package/dist/cjs/services/api/getDatasetsByIds.api.d.ts +2 -2
  120. package/dist/cjs/services/api/index.js +5 -1
  121. package/dist/cjs/services/constants/index.js +5 -1
  122. package/dist/cjs/services/helpers/index.js +5 -1
  123. package/dist/cjs/services/index.js +5 -1
  124. package/dist/cjs/services/interfaces/index.js +5 -1
  125. package/dist/cjs/stencil/decorators/index.js +5 -1
  126. package/dist/cjs/stencil/index.js +5 -1
  127. package/dist/cjs/stencil/util/index.js +5 -1
  128. package/dist/cjs/tokens/index.js +5 -1
  129. package/dist/cjs/typescript/decorators/index.js +5 -1
  130. package/dist/cjs/typescript/index.js +5 -1
  131. package/dist/columns/helpers/getModelColumn.js +1 -1
  132. package/dist/filters/adapters/UIToFD.js +2 -1
  133. package/dist/filters/adapters/adaptDateGroupingProperty.d.ts +2 -2
  134. package/dist/filters/adapters/adaptDateGroupingProperty.js +2 -2
  135. package/dist/filters/helpers/applyHierarchyForAggFilters.d.ts +3 -3
  136. package/dist/filters/helpers/applyHierarchyForAggFilters.js +3 -3
  137. package/dist/filters/helpers/backend/getAggFiltersBySummaryIndex.d.ts +5 -3
  138. package/dist/filters/helpers/backend/getAggFiltersBySummaryIndex.js +5 -3
  139. package/dist/filters/helpers/backend/getBackendValues.js +3 -1
  140. package/dist/filters/helpers/common/getMergeFiltersSettings.js +4 -3
  141. package/dist/filters/helpers/common/mergeFilters.d.ts +1 -1
  142. package/dist/filters/helpers/common/mergeFilters.js +25 -9
  143. package/dist/filters/helpers/getAggFiltersFromFilterData.d.ts +5 -4
  144. package/dist/filters/helpers/getAggFiltersFromFilterData.js +5 -5
  145. package/dist/filters/helpers/ui/getUIValues.d.ts +4 -5
  146. package/dist/filters/helpers/ui/getUIValues.js +4 -5
  147. package/dist/filters/interfaces/functions/IFFiltersMergeFilters.d.ts +1 -0
  148. package/dist/format/localization.js +4 -3
  149. package/dist/general/object/get.d.ts +0 -20
  150. package/dist/general/object/get.js +0 -20
  151. package/dist/globalization/interfaces/chart_builder/II18nChartBuilderConditionalFormatting.d.ts +2 -0
  152. package/dist/globalization/labels/chart_builder/I18N_CHART_BUILDER_FORMAT_OPTIONS.js +2 -0
  153. package/dist/interfaces/general/index.d.ts +0 -1
  154. package/dist/interfaces/general/index.js +0 -1
  155. package/dist/qrvey/helpers/getLookupAnswers.js +1 -2
  156. package/dist/services/api/getAllDatasets.api.d.ts +2 -2
  157. package/dist/services/api/getDatasetColumns.api.d.ts +2 -2
  158. package/dist/services/api/getDatasetsByIds.api.d.ts +2 -2
  159. package/jsdoc.config.json +14 -0
  160. package/package.json +13 -11
  161. package/prepareToPublish.js +2 -1
  162. package/publishing.js +180 -0
  163. package/src/columns/helpers/getModelColumn.ts +1 -1
  164. package/src/filters/adapters/UIToFD.ts +2 -1
  165. package/src/filters/adapters/adaptDateGroupingProperty.ts +2 -2
  166. package/src/filters/helpers/applyHierarchyForAggFilters.ts +3 -3
  167. package/src/filters/helpers/backend/getAggFiltersBySummaryIndex.ts +5 -3
  168. package/src/filters/helpers/backend/getBackendValues.ts +3 -1
  169. package/src/filters/helpers/common/getMergeFiltersSettings.ts +1 -0
  170. package/src/filters/helpers/common/mergeFilters.ts +34 -9
  171. package/src/filters/helpers/getAggFiltersFromFilterData.ts +5 -5
  172. package/src/filters/helpers/ui/getUIValues.ts +4 -5
  173. package/src/filters/interfaces/functions/IFFiltersMergeFilters.ts +1 -0
  174. package/src/format/localization.ts +2 -1
  175. package/src/general/object/get.ts +0 -22
  176. package/src/globalization/interfaces/chart_builder/II18nChartBuilderConditionalFormatting.ts +2 -0
  177. package/src/globalization/labels/chart_builder/I18N_CHART_BUILDER_FORMAT_OPTIONS.ts +2 -0
  178. package/src/interfaces/general/index.ts +0 -1
  179. package/src/services/api/getAllDatasets.api.ts +2 -2
  180. package/src/services/api/getDatasetColumns.api.ts +2 -2
  181. package/src/services/api/getDatasetsByIds.api.ts +2 -2
  182. package/dist/cjs/interfaces/general/IGeneralWidgetConfig.d.ts +0 -12
  183. package/dist/cjs/interfaces/general/IGeneralWidgetConfig.js +0 -2
  184. package/dist/interfaces/general/IGeneralWidgetConfig.d.ts +0 -12
  185. package/dist/interfaces/general/IGeneralWidgetConfig.js +0 -1
  186. package/src/interfaces/general/IGeneralWidgetConfig.ts +0 -12
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -21,6 +21,6 @@ export function getModelColumn(column, model) {
21
21
  * @returns the question data array from model object
22
22
  */
23
23
  function getQuestionData(model) {
24
- debugger;
24
+ // debugger
25
25
  return _get(model, 'questions.data', []);
26
26
  }
@@ -20,9 +20,10 @@ export function UIToFD(uFilterData) {
20
20
  }
21
21
  /**
22
22
  * Builds the Fitler Data structure from UI filter data
23
+ * @private
23
24
  * @param uFilterData The UI filter Data object
24
25
  * @param version the version of the structure
25
- * @returns
26
+ * @returns a Filter Data structure
26
27
  */
27
28
  function UI21ToFD(uFilterData, version) {
28
29
  return {
@@ -2,7 +2,7 @@ import { IFProperty } from "../interfaces/IFProperty";
2
2
  /**
3
3
  * [TODO: For 2022, eliminate this adapter]
4
4
  * Get the new property base on the old date grouping properties
5
- * @param property
6
- * @returns
5
+ * @param property the property to be adapted
6
+ * @returns a adapted property
7
7
  */
8
8
  export declare function adaptDateGroupingProperty(property: IFProperty | any): IFProperty;
@@ -3,8 +3,8 @@ import { DATE_DISTINCT_TIME_PROPERTY } from "../../dates/constants/DATE_DISTINCT
3
3
  /**
4
4
  * [TODO: For 2022, eliminate this adapter]
5
5
  * Get the new property base on the old date grouping properties
6
- * @param property
7
- * @returns
6
+ * @param property the property to be adapted
7
+ * @returns a adapted property
8
8
  */
9
9
  export function adaptDateGroupingProperty(property) {
10
10
  return property === 'p&quarter' ? DATE_DISTINCT_PROPERTY.YEAR_QUARTER :
@@ -4,8 +4,8 @@ import { IFUChartSettings } from "../interfaces/ui/IFUChartSettings";
4
4
  /**
5
5
  * [TODO: Make a proper description for this function]
6
6
  * @param chartSettings Chart Settings for the Filter Builder
7
- * @param scopes
8
- * @param currentScope
9
- * @returns
7
+ * @param scopes the pair id/label scopes
8
+ * @param currentScope the scope to be validated
9
+ * @returns the chart settings
10
10
  */
11
11
  export declare function applyHierarchyForAggFilters(chartSettings: IFUChartSettings, scopes?: IFSScopeID[], currentScope?: IFScope): IFUChartSettings;
@@ -5,9 +5,9 @@ import { getScopesByHierarchy } from "./getScopesByHierarchy";
5
5
  /**
6
6
  * [TODO: Make a proper description for this function]
7
7
  * @param chartSettings Chart Settings for the Filter Builder
8
- * @param scopes
9
- * @param currentScope
10
- * @returns
8
+ * @param scopes the pair id/label scopes
9
+ * @param currentScope the scope to be validated
10
+ * @returns the chart settings
11
11
  */
12
12
  export function applyHierarchyForAggFilters(chartSettings, scopes = [], currentScope = FILTER_SCOPE.GLOBAL) {
13
13
  if (isEmpty(chartSettings))
@@ -1,8 +1,10 @@
1
1
  import { IFBFilterAggregate } from "../../interfaces/backend/IFBFilterAggregate";
2
2
  /**
3
+ * @todo Make a proper description for this function
3
4
  *
4
- * @param aggFilters
5
- * @param summaryIndex
6
- * @returns
5
+ * Gets the aggFilters structure by an index
6
+ * @param aggFilters The aggFilter Structure
7
+ * @param summaryIndex an index
8
+ * @returns a new aggFilters structure
7
9
  */
8
10
  export declare function getAggFiltersBySummaryIndex(aggFilters: IFBFilterAggregate, summaryIndex: number): IFBFilterAggregate;
@@ -1,9 +1,11 @@
1
1
  import { filterNestedTree } from "../../../general/array/filterNestedTree";
2
2
  /**
3
+ * @todo Make a proper description for this function
3
4
  *
4
- * @param aggFilters
5
- * @param summaryIndex
6
- * @returns
5
+ * Gets the aggFilters structure by an index
6
+ * @param aggFilters The aggFilter Structure
7
+ * @param summaryIndex an index
8
+ * @returns a new aggFilters structure
7
9
  */
8
10
  export function getAggFiltersBySummaryIndex(aggFilters, summaryIndex) {
9
11
  if (!aggFilters)
@@ -64,9 +64,10 @@ export function getBackendValues(filter) {
64
64
  }
65
65
  /**
66
66
  * Gets the expression values. Depending on the column type
67
+ * @private
67
68
  * @param values a collection of filter values
68
69
  * @param filter The filter structure
69
- * @returns
70
+ * @returns Expression values
70
71
  */
71
72
  function getResultValues(values, filter) {
72
73
  return (values || []).map((value) => {
@@ -82,6 +83,7 @@ function getResultValues(values, filter) {
82
83
  }
83
84
  /**
84
85
  * Gets the Ranking values.
86
+ * @private
85
87
  * @param values a collection of filter values in the ranking structure
86
88
  * @param rankingGroupIndex determine the value by this index to build and return it
87
89
  * @returns Expression values for ranking
@@ -4,9 +4,10 @@
4
4
  * @returns a new MergeFilters settings object.
5
5
  */
6
6
  export function getMergeFiltersSettings(settings) {
7
- var _a, _b;
7
+ var _a, _b, _c;
8
8
  return {
9
- overwriteValues: (_a = settings === null || settings === void 0 ? void 0 : settings.overwriteValues) !== null && _a !== void 0 ? _a : false,
10
- setGroupedColumnOperator: (_b = settings === null || settings === void 0 ? void 0 : settings.setGroupedColumnOperator) !== null && _b !== void 0 ? _b : true
9
+ overwriteFilterProps: (_a = settings === null || settings === void 0 ? void 0 : settings.overwriteFilterProps) !== null && _a !== void 0 ? _a : true,
10
+ overwriteValues: (_b = settings === null || settings === void 0 ? void 0 : settings.overwriteValues) !== null && _b !== void 0 ? _b : false,
11
+ setGroupedColumnOperator: (_c = settings === null || settings === void 0 ? void 0 : settings.setGroupedColumnOperator) !== null && _c !== void 0 ? _c : true
11
12
  };
12
13
  }
@@ -5,7 +5,7 @@ import { IFUData } from "../../interfaces/ui/IFUData";
5
5
  * Merge filter data structures in a new one. The first Filter Data passed in the argument has the priority
6
6
  * @param filterData1 The target filter data
7
7
  * @param filterData2 the filter data to be merged
8
- * @param overwriteValues Flag to overwrite or not the filter values
8
+ * @param settings configuration of the mergeFilter
9
9
  * @returns a new filter data structure
10
10
  */
11
11
  export declare function mergeFilters(filterData1: IFSData | IFUData, filterData2: IFSData | IFUData, settings?: IFFiltersMergeFilters): IFSData | IFUData;
@@ -1,6 +1,7 @@
1
1
  import { isEmpty } from "../../../general/mix/isEmpty";
2
2
  import { cloneDeep } from "../../../general/object/cloneDeep";
3
3
  import { FILTER_GROUPED_COLUMN_OPERATOR } from "../../constants/common/FILTER_GROUPED_COLUMN_OPERATOR";
4
+ import { getFilterid } from "./getFilterid";
4
5
  import { getMergeFiltersSettings } from "./getMergeFiltersSettings";
5
6
  import { isInValidator } from "./isInValidator";
6
7
  import { isNullValidator } from "./isNullValidator";
@@ -13,7 +14,7 @@ import { resolveScopeConditions } from "./resolveScopeConditions";
13
14
  * Merge filter data structures in a new one. The first Filter Data passed in the argument has the priority
14
15
  * @param filterData1 The target filter data
15
16
  * @param filterData2 the filter data to be merged
16
- * @param overwriteValues Flag to overwrite or not the filter values
17
+ * @param settings configuration of the mergeFilter
17
18
  * @returns a new filter data structure
18
19
  */
19
20
  export function mergeFilters(filterData1, filterData2, settings) {
@@ -38,7 +39,7 @@ export function mergeFilters(filterData1, filterData2, settings) {
38
39
  * Gets a new scope structure array by merging two scope structures
39
40
  * @param scopes1 the target scope structure
40
41
  * @param scopes2 the scope to be merged
41
- * @param overwriteValues Flag to overwrite or not the filter values
42
+ * @param settings configuration of the mergeFilter
42
43
  * @returns a new scope structure array
43
44
  */
44
45
  function mergeScopes(scopes1 = [], scopes2 = [], settings) {
@@ -59,7 +60,7 @@ function mergeScopes(scopes1 = [], scopes2 = [], settings) {
59
60
  * Gets a new dataset structure array by merging two dataset structures
60
61
  * @param datasets1 the target dataset structure
61
62
  * @param datasets2 the dataset to be merged
62
- * @param overwriteValues Flag to overwrite or not the filter values
63
+ * @param settings configuration of the mergeFilter
63
64
  * @returns a new dataset structure array
64
65
  */
65
66
  function mergeDatasets(datasets1 = [], datasets2 = [], settings) {
@@ -80,19 +81,21 @@ function mergeDatasets(datasets1 = [], datasets2 = [], settings) {
80
81
  * Gets a new filter structure array by merging two filter structures
81
82
  * @param filters1 the target filter structure
82
83
  * @param filters2 the filter to be merged
83
- * @param overwriteValues Flag to overwrite or not the filter values
84
+ * @param settings configuration of the mergeFilter
84
85
  * @returns a new filter structure array
85
86
  */
86
87
  function mergeFilterss(filters1 = [], filters2 = [], settings) {
87
88
  let newFilters = filters1.reduce((filters, filter1) => {
88
89
  const filter2Index = filters2.findIndex(filter2 => resolveFilterConditions(filter2, { column: filter1.column, dateSection: filter1.dateSection, panelid: filter1.extras.panelid, property: filter1.property, validator: filter1.validator }));
89
90
  if (filter2Index > -1) {
90
- filter1 = Object.assign(Object.assign({}, filter1), { values: mergeValues(filter1, filters2[filter2Index], settings.overwriteValues) });
91
+ filter1 = Object.assign(Object.assign({}, filter1), { values: mergeValues(filter1, filters2[filter2Index], settings) });
92
+ filter1 = mergeFilterProps(filter1, filters2[filter2Index], settings);
91
93
  filters2.splice(filter2Index, 1);
92
94
  }
93
95
  else {
94
96
  filter1 = Object.assign(Object.assign({}, filter1), { operator: settings.setGroupedColumnOperator ? FILTER_GROUPED_COLUMN_OPERATOR : filter1.operator });
95
97
  }
98
+ filter1.filterid = getFilterid(filter1);
96
99
  filters.push(filter1);
97
100
  return filters;
98
101
  }, []);
@@ -100,20 +103,33 @@ function mergeFilterss(filters1 = [], filters2 = [], settings) {
100
103
  newFilters = newFilters.concat(filters2);
101
104
  return newFilters;
102
105
  }
106
+ /**
107
+ * Gets a new filter structure when the setting is configured
108
+ * @param filter1 the target filter structure
109
+ * @param filter2 the filter to be used to merge the values
110
+ * @param settings configuration of the mergeFilter
111
+ * @returns a new filter structure with overwritted props
112
+ */
113
+ function mergeFilterProps(filter1, filter2, settings) {
114
+ if (settings.overwriteFilterProps) {
115
+ filter1 = Object.assign(Object.assign({}, filter1), { extras: filter2.extras, enabled: filter2.enabled || filter1.enabled, filterid: filter2.filterid, lookupDisplayIndex: filter2.lookupDisplayIndex, nullValues: filter2.nullValues, selectAll: filter2.selectAll });
116
+ }
117
+ return filter1;
118
+ }
103
119
  /**
104
120
  * Gets a new value structure array by merging two value structures
105
121
  * @param filter1 the target filter structure
106
122
  * @param filter2 the filter to be used to merge the values
107
- * @param overwrite Flag to overwrite or not the filter values
123
+ * @param settings configuration of the mergeFilter
108
124
  * @returns a new value structure array
109
125
  */
110
- function mergeValues(filter1, filter2, overwrite = false) {
126
+ function mergeValues(filter1, filter2, settings) {
111
127
  if (isEmpty(filter1) && isEmpty(filter2))
112
128
  return [];
113
129
  let newValues = [];
114
130
  let filter1Values = filter1.values || [];
115
- const filter2Values = filter1.values || [];
116
- if (!overwrite) {
131
+ const filter2Values = filter2.values || [];
132
+ if (!settings.overwriteValues) {
117
133
  if (isInValidator(filter1.validator)) {
118
134
  newValues = filter2Values.reduce((values, value2) => {
119
135
  const value1Index = filter1Values.findIndex(value1 => value2.anchor === value1.anchor && value2.cursor === value1.cursor && value2.includeCurrent === value1.includeCurrent && value2.isCalendarDate === value1.isCalendarDate && value2.number === value1.number && value2.unit === value1.unit);
@@ -1,9 +1,10 @@
1
1
  import { IFBFilterAggregate } from "../interfaces/backend/IFBFilterAggregate";
2
2
  import { IFSData } from "../interfaces/common/IFSData";
3
3
  /**
4
- *
5
- * @param logics
6
- * @param summaries
7
- * @returns
4
+ * @todo FIX AGGREGATE FILTERS
5
+ * @private
6
+ * @param filterData
7
+ * @param _summaries
8
+ * @returns the aggFilters structure
8
9
  */
9
10
  export declare function getAggFiltersFromFilterData(filterData: IFSData, _summaries: any[]): IFBFilterAggregate;
@@ -1,12 +1,12 @@
1
1
  import { isEmpty } from "../../general/mix/isEmpty";
2
2
  import { getFiltersByAggregateColumn } from "./common/getFiltersByAggregateColumn";
3
3
  /**
4
- *
5
- * @param logics
6
- * @param summaries
7
- * @returns
4
+ * @todo FIX AGGREGATE FILTERS
5
+ * @private
6
+ * @param filterData
7
+ * @param _summaries
8
+ * @returns the aggFilters structure
8
9
  */
9
- // [TODO: FILTERS - FIX AGGREGATE FILTERS]
10
10
  export function getAggFiltersFromFilterData(filterData, _summaries) {
11
11
  filterData = Object.assign({}, getFiltersByAggregateColumn(filterData));
12
12
  if (isEmpty(filterData))
@@ -2,10 +2,9 @@ import { IFSFilter } from "../../interfaces/common/IFSFilter";
2
2
  import { IFUValue } from "../../interfaces/ui/IFUValue";
3
3
  import { IFUUIValueSettings } from "../../interfaces/ui/IFUUIValueSettings";
4
4
  /**
5
- *
6
- * @param filter
7
- * @param addEnableds
8
- * @param rankingGroupIndex
9
- * @returns
5
+ * Gets the UI Values generated depending on the validator
6
+ * @param filter the filter structure
7
+ * @param settings a settings for this function
8
+ * @returns the UI Values
10
9
  */
11
10
  export declare function getUIValues(filter: IFSFilter, settings?: IFUUIValueSettings): IFUValue[];
@@ -7,11 +7,10 @@ import { flattenDeep } from "../../../general/array/flattenDeep";
7
7
  import { RELATIVE_CURSOR_INFO } from "../../../dates/relative/constants/RELATIVE_CURSOR_INFO";
8
8
  import { getI18nDateGroupLabel } from "../../../globalization/helpers/getI18nDateGroupLabel";
9
9
  /**
10
- *
11
- * @param filter
12
- * @param addEnableds
13
- * @param rankingGroupIndex
14
- * @returns
10
+ * Gets the UI Values generated depending on the validator
11
+ * @param filter the filter structure
12
+ * @param settings a settings for this function
13
+ * @returns the UI Values
15
14
  */
16
15
  export function getUIValues(filter, settings) {
17
16
  var _a;
@@ -2,6 +2,7 @@
2
2
  * Structure for MergeFilters property settings
3
3
  */
4
4
  export interface IFFiltersMergeFilters {
5
+ overwriteFilterProps?: boolean;
5
6
  overwriteValues?: boolean;
6
7
  setGroupedColumnOperator?: boolean;
7
8
  }
@@ -10,10 +10,10 @@ export const getLang = (locale) => {
10
10
  return { lang: locale === "browser" ? window.navigator.language : locale };
11
11
  };
12
12
  export const chooseLang = (config) => {
13
- var _a, _b;
13
+ var _a;
14
14
  const lang = (((_a = config === null || config === void 0 ? void 0 : config.i18n) === null || _a === void 0 ? void 0 : _a.lang) ||
15
15
  config.lang);
16
- return ((_b = lang) === null || _b === void 0 ? void 0 : _b.lang) || lang || LANG_DEFAULT;
16
+ return (lang === null || lang === void 0 ? void 0 : lang.lang) || lang || LANG_DEFAULT;
17
17
  };
18
18
  export const formatWithLocale = (value, outputFormat, config = {}) => {
19
19
  switch (outputFormat.type) {
@@ -26,7 +26,8 @@ export const formatWithLocale = (value, outputFormat, config = {}) => {
26
26
  };
27
27
  function formatLocaleDate(value, outputFormat, config) {
28
28
  const { lang = LANG_DEFAULT, options } = config;
29
- const dateParam = new Date(value);
29
+ const dateValue = value === null || value === void 0 ? void 0 : value.replace('.000Z', '');
30
+ const dateParam = new Date(dateValue);
30
31
  let langOpts = options;
31
32
  if (outputFormat === null || outputFormat === void 0 ? void 0 : outputFormat.originalFormat) {
32
33
  const { format } = outputFormat.originalFormat;
@@ -27,23 +27,3 @@
27
27
  * @returns the resolved value.
28
28
  */
29
29
  export declare function _get<T = any>(baseObject: T, path: string | string[], defaultValue?: any): any;
30
- /**
31
- *
32
- * /**
33
- * Like lodash _.get.
34
- * Gets the value at path of object. If the resolved value is undefined, the defaultValue is returned in its place.
35
- * @param baseObject The object to query
36
- * @param path The path of the property to get.
37
- * @param defaultValue The value returned for undefined resolved values.
38
- * @returns the resolved value.
39
- export function get(baseObject: any, path: string, defaultValue?: any): any {
40
- function fn() {
41
- try {
42
- const value = eval(`this.${path}`.replace('.[', '['));
43
- return typeof value !== 'undefined' ? value : defaultValue;
44
- } catch (e) { return defaultValue; }
45
- }
46
- return fn.apply(baseObject, null);
47
- }
48
-
49
- */
@@ -41,23 +41,3 @@ function validateToReturnDefaultValue(baseObject, path) {
41
41
  path == null ||
42
42
  (typeof path !== 'string' && !Array.isArray(path));
43
43
  }
44
- /**
45
- *
46
- * /**
47
- * Like lodash _.get.
48
- * Gets the value at path of object. If the resolved value is undefined, the defaultValue is returned in its place.
49
- * @param baseObject The object to query
50
- * @param path The path of the property to get.
51
- * @param defaultValue The value returned for undefined resolved values.
52
- * @returns the resolved value.
53
- export function get(baseObject: any, path: string, defaultValue?: any): any {
54
- function fn() {
55
- try {
56
- const value = eval(`this.${path}`.replace('.[', '['));
57
- return typeof value !== 'undefined' ? value : defaultValue;
58
- } catch (e) { return defaultValue; }
59
- }
60
- return fn.apply(baseObject, null);
61
- }
62
-
63
- */
@@ -18,4 +18,6 @@ export interface II18nChartBuilderConditionalFormatting {
18
18
  value: string;
19
19
  type_value: string;
20
20
  remove: string;
21
+ apply_to: string;
22
+ entire_row: string;
21
23
  }
@@ -26,5 +26,7 @@ export const I18N_CHART_BUILDER_FORMAT_OPTIONS = {
26
26
  value: 'Value',
27
27
  type_value: 'Type Value',
28
28
  remove: 'Remove',
29
+ apply_to: 'Apply to',
30
+ entire_row: 'Entire Row'
29
31
  }
30
32
  };
@@ -1,3 +1,2 @@
1
1
  export * from './IGeneralInfo';
2
- export * from './IGeneralWidgetConfig';
3
2
  export * from './IWidgetConfig';
@@ -1,3 +1,2 @@
1
1
  export * from './IGeneralInfo';
2
- export * from './IGeneralWidgetConfig';
3
2
  export * from './IWidgetConfig';
@@ -1,9 +1,8 @@
1
1
  import { COLUMN_PROPERTY } from "../../columns/constants/COLUMN_PROPERTY";
2
2
  export function getLookupAnswers(column, property, display) {
3
- var _a, _b;
4
3
  if (property === COLUMN_PROPERTY.LOOKUP_VALUE) {
5
4
  const valueItem = column.lookupValue || column.answers[0];
6
- return (((_a = valueItem) === null || _a === void 0 ? void 0 : _a.valueInfo) || ((_b = valueItem) === null || _b === void 0 ? void 0 : _b.answer) || []).map(_value => (Object.assign(Object.assign({}, _value), { answerid: valueItem.answerid })));
5
+ return ((valueItem === null || valueItem === void 0 ? void 0 : valueItem.valueInfo) || (valueItem === null || valueItem === void 0 ? void 0 : valueItem.answer) || []).map(_value => (Object.assign(Object.assign({}, _value), { answerid: valueItem.answerid })));
7
6
  }
8
7
  else {
9
8
  const answerItem = column.answers[display];
@@ -1,4 +1,4 @@
1
- import { IGeneralWidgetConfig } from "../../interfaces/general/IGeneralWidgetConfig";
1
+ import { IWidgetConfig } from "../../interfaces/general/IWidgetConfig";
2
2
  import { IDataset } from "../../qrvey/interfaces/IDataset";
3
3
  /**
4
4
  * Get a dataset list from a collection of Qrvey IDs
@@ -10,4 +10,4 @@ import { IDataset } from "../../qrvey/interfaces/IDataset";
10
10
  * @param qrveyids Collection of Qrvey IDs for returning a set of available datasets
11
11
  * @returns a promise that if it is resolved displays a collection of dataset info.
12
12
  */
13
- export declare function getAllDatasets(config: IGeneralWidgetConfig, qrveyids?: string[]): Promise<IDataset[]>;
13
+ export declare function getAllDatasets(config: IWidgetConfig, qrveyids?: string[]): Promise<IDataset[]>;
@@ -1,8 +1,8 @@
1
- import { IGeneralWidgetConfig } from '../../interfaces/general/IGeneralWidgetConfig';
2
1
  import { IDataset } from '../../qrvey/interfaces/IDataset';
2
+ import { IWidgetConfig } from '../../interfaces/general/IWidgetConfig';
3
3
  /**
4
4
  * Get a dataset by Qrvey ID
5
5
  * @param qrveyid The Qrvey ID
6
6
  * @returns a promise
7
7
  */
8
- export declare function getDatasetColumns(config: IGeneralWidgetConfig, qrveyid?: string): Promise<IDataset[]>;
8
+ export declare function getDatasetColumns(config: IWidgetConfig, qrveyid?: string): Promise<IDataset[]>;
@@ -1,8 +1,8 @@
1
- import { IGeneralWidgetConfig } from '../../interfaces/general/IGeneralWidgetConfig';
2
1
  import { IDataset } from '../../qrvey/interfaces/IDataset';
2
+ import { IWidgetConfig } from '../../interfaces/general/IWidgetConfig';
3
3
  /**
4
4
  * Get a dataset by Qrvey ID
5
5
  * @param qrveyid The Qrvey ID
6
6
  * @returns a promise
7
7
  */
8
- export declare function getDatasetsByIds(config: IGeneralWidgetConfig, qrveyids?: string[]): Promise<IDataset[]>;
8
+ export declare function getDatasetsByIds(config: IWidgetConfig, qrveyids?: string[]): Promise<IDataset[]>;
@@ -0,0 +1,14 @@
1
+ {
2
+ "plugins": ["plugins/markdown"],
3
+ "source": {
4
+ "include": ["./dist"],
5
+ "exclude": ["./node_modules", "./src"],
6
+ "includePattern": "./dist/.+\\.js",
7
+ "excludePattern": "./dist/cjs/.+\\.js"
8
+ },
9
+ "opts": {
10
+ "package": "./package.json",
11
+ "readme": "./README.md",
12
+ "recurse": true
13
+ }
14
+ }
package/package.json CHANGED
@@ -1,13 +1,15 @@
1
1
  {
2
2
  "name": "@qrvey/utils",
3
- "version": "1.2.10-0",
3
+ "version": "1.2.10-3",
4
4
  "description": "Helper, Utils for all Qrvey Projects",
5
5
  "homepage": "https://bitbucket.org/qrvey/qrvey_utils/wiki/Home",
6
6
  "main": "dist/index.js",
7
7
  "scripts": {
8
8
  "build": "tsc && tsc -m commonjs --outDir dist/cjs",
9
+ "docs": "./node_modules/.bin/jsdoc -c ./jsdoc.config.json",
9
10
  "publishing": "node prepareToPublish.js && np",
10
11
  "publishing-prerelease": "node prepareToPublish.js && np --any-branch --tag=$npm_config_tag",
12
+ "publishing-v2": "node publishing.js --np-new-version=$npm_config_np_new_version --np-any-branch=$npm_config_np_any_branch --np-tag=$npm_config_np_tag",
11
13
  "test": "jest test",
12
14
  "test:watch": "jest --watch test",
13
15
  "lint": "eslint src --quiet --exit-on-fatal-error --ext .ts,.js",
@@ -16,20 +18,20 @@
16
18
  "author": "Qrvey Inc",
17
19
  "license": "MIT",
18
20
  "devDependencies": {
19
- "@types/jest": "27.0.2",
21
+ "@types/jest": "27.4.1",
20
22
  "doxdox": "3.0.0",
21
- "jest": "27.2.5",
23
+ "jest": "27.5.1",
22
24
  "np": "7.6.0",
23
- "ts-jest": "27.0.5",
24
- "typedoc": "0.22.5",
25
- "typescript": "4.4.4",
26
- "@typescript-eslint/eslint-plugin": "5.3.0",
27
- "@typescript-eslint/parser": "5.3.0",
28
- "eslint": "8.1.0"
25
+ "ts-jest": "27.1.3",
26
+ "typedoc": "0.22.13",
27
+ "typescript": "4.6.2",
28
+ "@typescript-eslint/eslint-plugin": "5.15.0",
29
+ "@typescript-eslint/parser": "5.15.0",
30
+ "eslint": "8.11.0"
29
31
  },
30
32
  "dependencies": {
31
33
  "d3": "6.3.1",
32
- "dayjs": "1.10.7",
33
- "i18next": "21.4.0"
34
+ "dayjs": "1.11.0",
35
+ "i18next": "21.6.14"
34
36
  }
35
37
  }
@@ -38,9 +38,10 @@ function init() {
38
38
  await execute("rm -f package-lock.json && rm -f -R node_modules/ && rm -f -R dist/", "-> Cleaning project...");
39
39
  await execute("npm install", "-> Installing Dependencies...");
40
40
  await execute("npm run build", "-> Generating Build...");
41
- await execute("doxdox 'dist/**/*.js' --layout markdown --output readme.md --ignore 'dist/cjs/**/*.js'", "-> Generating Docs...");
41
+ await execute("doxdox 'dist/**/*.js' --layout markdown --output README.md --ignore 'dist/cjs/**/*.js'", "-> Generating Docs...");
42
42
  changeDocsVersion(oldVersion, newVersion);
43
43
  await execute(`git add README.md && git commit -m "📝 docs: Updated docs for ${version}"`, "-> Commit Docs changes...");
44
+ await execute(`git checkout README.md`);
44
45
  console.log('-> Ready to Publish!');
45
46
  console.log('-> Please login to npm');
46
47