@qrvey/utils 1.16.0-2 → 1.16.0-21

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 (165) hide show
  1. package/dist/cache-managers/cache-model-manager.js +6 -1
  2. package/dist/charts/adapters/RequestAdapterMetric.d.ts +2 -1
  3. package/dist/charts/adapters/RequestAdapterMetric.js +22 -5
  4. package/dist/charts/adapters/convertChartObjectFromV2toV1.d.ts +2 -0
  5. package/dist/charts/adapters/convertChartObjectFromV2toV1.js +63 -0
  6. package/dist/charts/adapters/getPanelBodyByChart.d.ts +2 -0
  7. package/dist/charts/adapters/getPanelBodyByChart.js +289 -0
  8. package/dist/charts/adapters/index.d.ts +2 -0
  9. package/dist/charts/adapters/index.js +2 -0
  10. package/dist/charts/constants/AGGREGATE.d.ts +3 -1
  11. package/dist/charts/constants/AGGREGATE.js +2 -0
  12. package/dist/charts/constants/AGGREGATE_ABBREVIATION.d.ts +3 -1
  13. package/dist/charts/constants/AGGREGATE_ABBREVIATION.js +2 -0
  14. package/dist/charts/constants/AGGREGATE_INFO.js +16 -0
  15. package/dist/charts/constants/AGGREGATE_LABEL.d.ts +3 -1
  16. package/dist/charts/constants/AGGREGATE_LABEL.js +2 -0
  17. package/dist/charts/constants/CHART_OBJECT.d.ts +564 -0
  18. package/dist/charts/constants/CHART_OBJECT.js +53 -0
  19. package/dist/charts/constants/QUESTION_TYPES.d.ts +241 -0
  20. package/dist/charts/constants/QUESTION_TYPES.js +410 -0
  21. package/dist/charts/constants/TIME_PERIOD.d.ts +10 -0
  22. package/dist/charts/constants/TIME_PERIOD.js +25 -0
  23. package/dist/charts/constants/index.d.ts +3 -0
  24. package/dist/charts/constants/index.js +3 -0
  25. package/dist/charts/helpers/chartTypes.d.ts +24 -0
  26. package/dist/charts/helpers/chartTypes.js +118 -0
  27. package/dist/charts/helpers/defaultColumnBuilder.d.ts +56 -0
  28. package/dist/charts/helpers/defaultColumnBuilder.js +322 -0
  29. package/dist/charts/helpers/getChartDimensions.d.ts +2 -0
  30. package/dist/charts/helpers/getChartDimensions.js +263 -0
  31. package/dist/charts/helpers/index.d.ts +4 -0
  32. package/dist/charts/helpers/index.js +4 -0
  33. package/dist/charts/helpers/styleSettingsByChartType.d.ts +60 -0
  34. package/dist/charts/helpers/styleSettingsByChartType.js +532 -0
  35. package/dist/charts/interfaces/IChartV2.d.ts +537 -0
  36. package/dist/charts/interfaces/IChartV2.js +33 -0
  37. package/dist/charts/interfaces/IRequestAdapterMetric.d.ts +5 -2
  38. package/dist/charts/interfaces/index.d.ts +1 -0
  39. package/dist/charts/interfaces/index.js +1 -0
  40. package/dist/cjs/cache-managers/cache-model-manager.js +6 -1
  41. package/dist/cjs/charts/adapters/RequestAdapterMetric.d.ts +2 -1
  42. package/dist/cjs/charts/adapters/RequestAdapterMetric.js +24 -6
  43. package/dist/cjs/charts/adapters/convertChartObjectFromV2toV1.d.ts +2 -0
  44. package/dist/cjs/charts/adapters/convertChartObjectFromV2toV1.js +67 -0
  45. package/dist/cjs/charts/adapters/getPanelBodyByChart.d.ts +2 -0
  46. package/dist/cjs/charts/adapters/getPanelBodyByChart.js +294 -0
  47. package/dist/cjs/charts/adapters/index.d.ts +2 -0
  48. package/dist/cjs/charts/adapters/index.js +2 -0
  49. package/dist/cjs/charts/constants/AGGREGATE.d.ts +3 -1
  50. package/dist/cjs/charts/constants/AGGREGATE.js +2 -0
  51. package/dist/cjs/charts/constants/AGGREGATE_ABBREVIATION.d.ts +3 -1
  52. package/dist/cjs/charts/constants/AGGREGATE_ABBREVIATION.js +2 -0
  53. package/dist/cjs/charts/constants/AGGREGATE_INFO.js +16 -0
  54. package/dist/cjs/charts/constants/AGGREGATE_LABEL.d.ts +3 -1
  55. package/dist/cjs/charts/constants/AGGREGATE_LABEL.js +2 -0
  56. package/dist/cjs/charts/constants/CHART_OBJECT.d.ts +564 -0
  57. package/dist/cjs/charts/constants/CHART_OBJECT.js +56 -0
  58. package/dist/cjs/charts/constants/QUESTION_TYPES.d.ts +241 -0
  59. package/dist/cjs/charts/constants/QUESTION_TYPES.js +413 -0
  60. package/dist/cjs/charts/constants/TIME_PERIOD.d.ts +10 -0
  61. package/dist/cjs/charts/constants/TIME_PERIOD.js +28 -0
  62. package/dist/cjs/charts/constants/index.d.ts +3 -0
  63. package/dist/cjs/charts/constants/index.js +3 -0
  64. package/dist/cjs/charts/helpers/chartTypes.d.ts +24 -0
  65. package/dist/cjs/charts/helpers/chartTypes.js +138 -0
  66. package/dist/cjs/charts/helpers/defaultColumnBuilder.d.ts +56 -0
  67. package/dist/cjs/charts/helpers/defaultColumnBuilder.js +326 -0
  68. package/dist/cjs/charts/helpers/getChartDimensions.d.ts +2 -0
  69. package/dist/cjs/charts/helpers/getChartDimensions.js +267 -0
  70. package/dist/cjs/charts/helpers/index.d.ts +4 -0
  71. package/dist/cjs/charts/helpers/index.js +4 -0
  72. package/dist/cjs/charts/helpers/styleSettingsByChartType.d.ts +60 -0
  73. package/dist/cjs/charts/helpers/styleSettingsByChartType.js +541 -0
  74. package/dist/cjs/charts/interfaces/IChartV2.d.ts +537 -0
  75. package/dist/cjs/charts/interfaces/IChartV2.js +36 -0
  76. package/dist/cjs/charts/interfaces/IRequestAdapterMetric.d.ts +5 -2
  77. package/dist/cjs/charts/interfaces/index.d.ts +1 -0
  78. package/dist/cjs/charts/interfaces/index.js +1 -0
  79. package/dist/cjs/column_format/helpers/columnTypeByChart.js +3 -1
  80. package/dist/cjs/columns/interfaces/IColumn.d.ts +1 -0
  81. package/dist/cjs/columns/interfaces/IColunmCalculation.d.ts +5 -0
  82. package/dist/cjs/constants/Charts.Const.d.ts +2 -1
  83. package/dist/cjs/constants/Charts.Const.js +1 -0
  84. package/dist/cjs/elements/helpers/fixed.d.ts +12 -1
  85. package/dist/cjs/elements/helpers/fixed.js +33 -8
  86. package/dist/cjs/elements/helpers/gridStrategy.d.ts +13 -0
  87. package/dist/cjs/elements/helpers/gridStrategy.js +31 -3
  88. package/dist/cjs/elements/helpers/responsive.d.ts +11 -1
  89. package/dist/cjs/elements/helpers/responsive.js +31 -1
  90. package/dist/cjs/elements/utils/fixed.position.d.ts +1 -0
  91. package/dist/cjs/elements/utils/fixed.position.js +8 -1
  92. package/dist/cjs/filters/constants/common/FILTER_SCOPE.d.ts +1 -0
  93. package/dist/cjs/filters/constants/common/FILTER_SCOPE.js +1 -0
  94. package/dist/cjs/filters/constants/common/FILTER_SCOPES.js +1 -0
  95. package/dist/cjs/filters/constants/common/FILTER_SCOPE_INFO.js +8 -0
  96. package/dist/cjs/filters/constants/common/FILTER_SCOPE_LABEL.d.ts +1 -0
  97. package/dist/cjs/filters/constants/common/FILTER_SCOPE_LABEL.js +1 -0
  98. package/dist/cjs/filters/constants/settings/FILTER_SETTINGS_DEFAULT.js +29 -6
  99. package/dist/cjs/filters/helpers/common/excludeFiltersByDatasetsColumns.d.ts +10 -0
  100. package/dist/cjs/filters/helpers/common/excludeFiltersByDatasetsColumns.js +64 -0
  101. package/dist/cjs/filters/helpers/common/index.d.ts +1 -0
  102. package/dist/cjs/filters/helpers/common/index.js +1 -0
  103. package/dist/cjs/format/duration/durationFormatter.js +4 -1
  104. package/dist/cjs/formulas/constants/FORMULA.d.ts +1 -0
  105. package/dist/cjs/formulas/constants/FORMULA.js +2 -1
  106. package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderGeneralOptions.d.ts +4 -0
  107. package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderMessagesDefault.d.ts +1 -0
  108. package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderMessagesGeneral.d.ts +1 -0
  109. package/dist/cjs/globalization/interfaces/chart_builder/II18nChartBuilderStyleOptions.d.ts +4 -0
  110. package/dist/cjs/globalization/interfaces/dashboard/II18nDashboardAddChart.d.ts +1 -0
  111. package/dist/cjs/globalization/interfaces/filters/II18nFilterPanelScopeTitle.d.ts +1 -0
  112. package/dist/cjs/globalization/interfaces/filters/II18nFilterScopes.d.ts +1 -0
  113. package/dist/cjs/globalization/interfaces/formula_builder/II18nFormulaBuilderCreateModal.d.ts +2 -0
  114. package/dist/cjs/globalization/interfaces/formula_builder/II18nFormulaBuilderV2Functions.d.ts +7 -7
  115. package/dist/cjs/globalization/labels/chart_builder/I18N_CHART_BUILDER_GENERAL.js +2 -0
  116. package/dist/cjs/globalization/labels/chart_builder/I18N_CHART_BUILDER_GENERAL_OPTIONS.js +4 -0
  117. package/dist/cjs/globalization/labels/chart_builder/I18N_CHART_BUILDER_STYLE_OPTIONS.js +4 -0
  118. package/dist/cjs/globalization/labels/dashboard/I18N_DASHBOARD.js +1 -0
  119. package/dist/cjs/globalization/labels/filters/I18N_FILTER.js +1 -0
  120. package/dist/cjs/globalization/labels/filters/I18N_FILTER_SCOPE.js +1 -0
  121. package/dist/cjs/globalization/labels/formula_builder/I18N_FORMULA_BUILDER.js +16 -14
  122. package/dist/column_format/helpers/columnTypeByChart.js +4 -2
  123. package/dist/columns/interfaces/IColumn.d.ts +1 -0
  124. package/dist/columns/interfaces/IColunmCalculation.d.ts +5 -0
  125. package/dist/constants/Charts.Const.d.ts +2 -1
  126. package/dist/constants/Charts.Const.js +1 -0
  127. package/dist/elements/helpers/fixed.d.ts +12 -1
  128. package/dist/elements/helpers/fixed.js +30 -6
  129. package/dist/elements/helpers/gridStrategy.d.ts +13 -0
  130. package/dist/elements/helpers/gridStrategy.js +31 -4
  131. package/dist/elements/helpers/responsive.d.ts +11 -1
  132. package/dist/elements/helpers/responsive.js +29 -0
  133. package/dist/elements/utils/fixed.position.d.ts +1 -0
  134. package/dist/elements/utils/fixed.position.js +6 -0
  135. package/dist/filters/constants/common/FILTER_SCOPE.d.ts +1 -0
  136. package/dist/filters/constants/common/FILTER_SCOPE.js +1 -0
  137. package/dist/filters/constants/common/FILTER_SCOPES.js +1 -0
  138. package/dist/filters/constants/common/FILTER_SCOPE_INFO.js +8 -0
  139. package/dist/filters/constants/common/FILTER_SCOPE_LABEL.d.ts +1 -0
  140. package/dist/filters/constants/common/FILTER_SCOPE_LABEL.js +1 -0
  141. package/dist/filters/constants/settings/FILTER_SETTINGS_DEFAULT.js +29 -6
  142. package/dist/filters/helpers/common/excludeFiltersByDatasetsColumns.d.ts +10 -0
  143. package/dist/filters/helpers/common/excludeFiltersByDatasetsColumns.js +60 -0
  144. package/dist/filters/helpers/common/index.d.ts +1 -0
  145. package/dist/filters/helpers/common/index.js +1 -0
  146. package/dist/format/duration/durationFormatter.js +4 -1
  147. package/dist/formulas/constants/FORMULA.d.ts +1 -0
  148. package/dist/formulas/constants/FORMULA.js +1 -0
  149. package/dist/globalization/interfaces/chart_builder/II18nChartBuilderGeneralOptions.d.ts +4 -0
  150. package/dist/globalization/interfaces/chart_builder/II18nChartBuilderMessagesDefault.d.ts +1 -0
  151. package/dist/globalization/interfaces/chart_builder/II18nChartBuilderMessagesGeneral.d.ts +1 -0
  152. package/dist/globalization/interfaces/chart_builder/II18nChartBuilderStyleOptions.d.ts +4 -0
  153. package/dist/globalization/interfaces/dashboard/II18nDashboardAddChart.d.ts +1 -0
  154. package/dist/globalization/interfaces/filters/II18nFilterPanelScopeTitle.d.ts +1 -0
  155. package/dist/globalization/interfaces/filters/II18nFilterScopes.d.ts +1 -0
  156. package/dist/globalization/interfaces/formula_builder/II18nFormulaBuilderCreateModal.d.ts +2 -0
  157. package/dist/globalization/interfaces/formula_builder/II18nFormulaBuilderV2Functions.d.ts +7 -7
  158. package/dist/globalization/labels/chart_builder/I18N_CHART_BUILDER_GENERAL.js +2 -0
  159. package/dist/globalization/labels/chart_builder/I18N_CHART_BUILDER_GENERAL_OPTIONS.js +4 -0
  160. package/dist/globalization/labels/chart_builder/I18N_CHART_BUILDER_STYLE_OPTIONS.js +4 -0
  161. package/dist/globalization/labels/dashboard/I18N_DASHBOARD.js +1 -0
  162. package/dist/globalization/labels/filters/I18N_FILTER.js +1 -0
  163. package/dist/globalization/labels/filters/I18N_FILTER_SCOPE.js +1 -0
  164. package/dist/globalization/labels/formula_builder/I18N_FORMULA_BUILDER.js +16 -14
  165. package/package.json +3 -3
@@ -0,0 +1,541 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseGlobalSettingByType = exports.getSortBy = exports.parseMetricGlobal = exports.parseCrosstabChart = exports.parseTableChart = exports.parseStyleSettingByType = void 0;
4
+ const constants_1 = require("../../constants");
5
+ const general_1 = require("../../general");
6
+ const chartTypes_1 = require("./chartTypes");
7
+ const parseStyleSettingByType = (type, { stylesSettings, globalSettings, isGrouped }, optsCombo) => {
8
+ var _a, _b, _c, _d;
9
+ const { theme, color, thickness, line_style: style, line_type: straight, y_axis, data_labels, symbol_type: symbol, symbol_fill: fill, opacity, } = stylesSettings;
10
+ const y_axis_format = (0, general_1._get)(y_axis, "format.value") === "General"
11
+ ? "Default"
12
+ : (0, general_1._get)(y_axis, "format.value");
13
+ const pie_labels = (0, general_1._get)(data_labels, "pie_labels.format.value") === "General"
14
+ ? "Default"
15
+ : (0, general_1._get)(data_labels, "pie_labels.format.value");
16
+ const heat_map_labels = (0, general_1._get)(data_labels, "heat_map_labels.format.value") === "General"
17
+ ? "Default"
18
+ : (0, general_1._get)(data_labels, "heat_map_labels.format.value");
19
+ const format = {
20
+ y_axis: y_axis_format,
21
+ data_labels: type === constants_1.CHART_TYPE.PIE_CHART ? pie_labels : heat_map_labels,
22
+ };
23
+ return ({
24
+ [constants_1.CHART_TYPE.BAR_CHART]: {
25
+ color,
26
+ theme,
27
+ orientation: stylesSettings.orientation,
28
+ format,
29
+ },
30
+ [constants_1.CHART_TYPE.BAR_CHART_MS]: {
31
+ color,
32
+ theme,
33
+ orientation: "VERTICAL",
34
+ format,
35
+ },
36
+ [constants_1.CHART_TYPE.SYMBOL_CHART]: {
37
+ color,
38
+ theme,
39
+ fill,
40
+ symbol,
41
+ format,
42
+ },
43
+ [constants_1.CHART_TYPE.SYMBOL_CHART_MS]: {
44
+ color,
45
+ theme,
46
+ format,
47
+ fill,
48
+ symbol,
49
+ },
50
+ [constants_1.CHART_TYPE.LINE_CHART]: {
51
+ color,
52
+ theme,
53
+ thickness,
54
+ straight,
55
+ style,
56
+ format,
57
+ },
58
+ [constants_1.CHART_TYPE.LINE_CHART_MS]: {
59
+ color,
60
+ theme,
61
+ thickness,
62
+ straight,
63
+ style,
64
+ format,
65
+ },
66
+ [constants_1.CHART_TYPE.AREA_CHART]: {
67
+ color,
68
+ straight,
69
+ style,
70
+ format,
71
+ orientation: stylesSettings.orientation,
72
+ },
73
+ [constants_1.CHART_TYPE.SCATTER_CHART]: {
74
+ color,
75
+ straight,
76
+ style,
77
+ format,
78
+ orientation: stylesSettings.orientation,
79
+ },
80
+ [constants_1.CHART_TYPE.AREA_CHART_MS]: {
81
+ color,
82
+ straight,
83
+ style,
84
+ format,
85
+ orientation: stylesSettings.orientation,
86
+ },
87
+ [constants_1.CHART_TYPE.RADAR_CHART]: {
88
+ color,
89
+ theme,
90
+ thickness,
91
+ straight,
92
+ style,
93
+ format,
94
+ },
95
+ [constants_1.CHART_TYPE.COMBO_CHART]: {
96
+ custom_color: optsCombo.custom_color,
97
+ custom_theme: optsCombo.custom_theme,
98
+ match_colors: optsCombo.match_colors,
99
+ color_type: optsCombo.color_type,
100
+ color: [optsCombo.color],
101
+ theme: optsCombo.theme,
102
+ thickness: optsCombo.thickness,
103
+ straight: optsCombo.line_type,
104
+ style: optsCombo.line_style,
105
+ format: Object.assign(Object.assign({}, format), { y_axis: optsCombo.format || (0, general_1._get)(optsCombo, "y_axis.format.value") }),
106
+ symbol: optsCombo.symbol_type,
107
+ fill: optsCombo.symbol_fill,
108
+ axis_scale: (0, general_1._get)(optsCombo, "y_axis.scale"),
109
+ },
110
+ [constants_1.CHART_TYPE.HEATMAP_CHART]: {
111
+ orientation: "VERTICAL",
112
+ format,
113
+ },
114
+ [constants_1.CHART_TYPE.WORD_CLOUD]: {},
115
+ [constants_1.CHART_TYPE.PIE_CHART]: {
116
+ color,
117
+ theme,
118
+ format,
119
+ pielabel: ((_a = stylesSettings.data_labels) === null || _a === void 0 ? void 0 : _a.pie_labels)
120
+ ? (_b = stylesSettings.data_labels.pie_labels) === null || _b === void 0 ? void 0 : _b.position
121
+ : "outside",
122
+ donut: stylesSettings.pie_type === "donut",
123
+ data_labels: (_c = stylesSettings.data_labels) === null || _c === void 0 ? void 0 : _c.value,
124
+ percent_labels: stylesSettings.percent_labels,
125
+ visible_labels: (_d = stylesSettings.data_labels) === null || _d === void 0 ? void 0 : _d.visible,
126
+ },
127
+ [constants_1.CHART_TYPE.MINMAX_CHART]: {
128
+ color,
129
+ theme,
130
+ symbol,
131
+ fill,
132
+ thickness,
133
+ straight,
134
+ style,
135
+ orientation: stylesSettings.orientation,
136
+ format,
137
+ opacity,
138
+ },
139
+ [constants_1.CHART_TYPE.REFERENCE]: {
140
+ color,
141
+ theme,
142
+ fill: "None",
143
+ thickness,
144
+ style: "Solid",
145
+ opacity: 20,
146
+ },
147
+ [constants_1.CHART_TYPE.TREND]: {
148
+ color,
149
+ theme,
150
+ style: "Solid",
151
+ thickness,
152
+ },
153
+ [constants_1.CHART_TYPE.SMALL_MULTIPLES]: {
154
+ maxMultiplePanels: 4,
155
+ displayMultiplePanels: false,
156
+ displayBorder: false,
157
+ labels: { axis: true },
158
+ },
159
+ [constants_1.CHART_TYPE.BOXWHISKER_CHART]: {
160
+ thickness,
161
+ opacity: (100 - parseInt(opacity, 10)) / 10,
162
+ displaySymbol: (0, general_1._get)(stylesSettings, "outliers.value"),
163
+ symbol: (0, general_1._get)(stylesSettings, "outliers.symbol_type"),
164
+ fill: (0, general_1._get)(stylesSettings, "outliers.symbol_fill"),
165
+ orientation: stylesSettings.orientation,
166
+ },
167
+ [constants_1.CHART_TYPE.GEO_CHART]: {
168
+ baseMap: {
169
+ text: "Streets",
170
+ label: "mapbox://styles/mapbox/streets-v11",
171
+ },
172
+ symbol: "circle",
173
+ opacity: 5,
174
+ mapborder: true,
175
+ mapRegion: { text: "Default", label: "DEFAULT" },
176
+ },
177
+ [constants_1.CHART_TYPE.GEO_CHART_BUBBLE]: Object.assign({}, parseMaps(stylesSettings)),
178
+ [constants_1.CHART_TYPE.GEO_CHART_DOT]: Object.assign(Object.assign({}, parseMaps(stylesSettings)), { symbol, symbolfill: fill === "Filled" }),
179
+ [constants_1.CHART_TYPE.GEO_CHART_CHOROPLETH]: Object.assign({}, parseMaps(stylesSettings)),
180
+ [constants_1.CHART_TYPE.CROSSTAB_CHART]: {
181
+ format: (0, general_1._get)(stylesSettings, "format.value"),
182
+ groupedTotals: {
183
+ label: (0, general_1._get)(globalSettings, "crosstab_totals.value", false)
184
+ ? (0, general_1._get)(globalSettings, "crosstab_totals.option", "SHOW")
185
+ : "DONTSHOW",
186
+ },
187
+ groupedSubtotals: {
188
+ label: (0, general_1._get)(globalSettings, "crosstab_subtotals", false)
189
+ ? "SHOW"
190
+ : "DONTSHOW",
191
+ },
192
+ rowsMaxDataPoints: (0, general_1._get)(globalSettings, "max_rows.value", true),
193
+ columnsMaxDataPoints: (0, general_1._get)(globalSettings, "max_groups.value", true),
194
+ maxRowNumDataPoints: (0, general_1._get)(globalSettings, "max_rows.option", true),
195
+ maxColumnsNumDataPoints: (0, general_1._get)(globalSettings, "max_groups.option", true),
196
+ },
197
+ [constants_1.CHART_TYPE.TABLE_CHART]: {
198
+ sorting: (0, general_1._get)(globalSettings, "table_menu.sorting"),
199
+ value_view: (0, general_1._get)(globalSettings, "table_menu.value_view"),
200
+ totals: (0, general_1._get)(globalSettings, "table_menu.totals"),
201
+ filtering: (0, general_1._get)(globalSettings, "table_menu.filtering", true),
202
+ column_resizing: (0, general_1._get)(globalSettings, "table_menu.column_resizing", true),
203
+ column_arrangement: (0, general_1._get)(globalSettings, "table_menu.column_arrangement", true),
204
+ column_update: (0, general_1._get)(globalSettings, "table_menu.column_update", false),
205
+ change_aggregation: (0, general_1._get)(globalSettings, "table_menu.change_aggregation", false),
206
+ pagination: isGrouped
207
+ ? {
208
+ enabled: false,
209
+ recordsPage: 30,
210
+ }
211
+ : (0, general_1._get)(globalSettings, "table_menu.pagination"),
212
+ },
213
+ [constants_1.CHART_TYPE.EXPANDABLE_TABLE_CHART]: {
214
+ sorting: (0, general_1._get)(globalSettings, "table_menu.sorting"),
215
+ value_view: (0, general_1._get)(globalSettings, "table_menu.value_view"),
216
+ totals: (0, general_1._get)(globalSettings, "table_menu.totals"),
217
+ },
218
+ [constants_1.CHART_TYPE.INDICATOR_METRIC]: {
219
+ iconPosition: { label: (0, general_1._get)(stylesSettings, "indicator_position") },
220
+ },
221
+ [constants_1.CHART_TYPE.DIAL_METRIC]: {
222
+ color,
223
+ theme,
224
+ thresholdOpacity: opacity,
225
+ showComparison: (0, general_1._get)(stylesSettings, "metric_comparison.value"),
226
+ comparisonColor: (0, general_1._get)(stylesSettings, "metric_comparison.color"),
227
+ gaugeStyle: { label: (0, general_1._get)(stylesSettings, "gauge") },
228
+ circleSize: { label: (0, general_1._get)(stylesSettings, "dial_size") },
229
+ },
230
+ [constants_1.CHART_TYPE.BULLET_METRIC]: {
231
+ color,
232
+ theme,
233
+ thresholdOpacity: opacity,
234
+ targetLabel: (0, general_1._get)(stylesSettings, "bullet_target.label"),
235
+ targetColor: (0, general_1._get)(stylesSettings, "bullet_target.color"),
236
+ targetIndicator: (0, general_1._get)(stylesSettings, "bullet_target.indicator"),
237
+ targetValue: (0, general_1._get)(stylesSettings, "bullet_target.value"),
238
+ },
239
+ [constants_1.CHART_TYPE.FUNNEL_CHART]: Object.assign(Object.assign({}, stylesSettings), { orientation: stylesSettings.orientation }),
240
+ }[type] || {});
241
+ };
242
+ exports.parseStyleSettingByType = parseStyleSettingByType;
243
+ function parseMaps(stylesSettings) {
244
+ const { value, steps, min_value, max_value } = stylesSettings.custom_scale || {};
245
+ return {
246
+ baseMap: { label: (0, general_1._get)(stylesSettings, "base_map") },
247
+ mapRegion: { label: (0, general_1._get)(stylesSettings, "map_region") },
248
+ mapborder: (0, general_1._get)(stylesSettings, "map_borders"),
249
+ opacity: (0, general_1._get)(stylesSettings, "opacity", 10) / 10,
250
+ mapClustering: (0, general_1._get)(stylesSettings, "map_clustering"),
251
+ mapDataLabels: (0, general_1._get)(stylesSettings, "data_labels.value"),
252
+ color: {
253
+ values: (stylesSettings.theme || []).slice(0, 5),
254
+ },
255
+ custom: {
256
+ steps,
257
+ min: min_value,
258
+ max: max_value,
259
+ },
260
+ scale: {
261
+ type: value ? "Custom" : "Auto",
262
+ order: stylesSettings.reverse_color ? "Reverse" : "Default",
263
+ },
264
+ };
265
+ }
266
+ function parseLabels(type2, stylesSettings) {
267
+ var _a, _b, _c, _d, _e;
268
+ const noLabelCharts = [
269
+ constants_1.CHART_TYPE.CROSSTAB_CHART,
270
+ constants_1.CHART_TYPE.TABLE_CHART,
271
+ constants_1.CHART_TYPE.EXPANDABLE_TABLE_CHART,
272
+ constants_1.CHART_TYPE.INDICATOR_METRIC,
273
+ constants_1.CHART_TYPE.DIAL_METRIC,
274
+ constants_1.CHART_TYPE.BULLET_METRIC,
275
+ ];
276
+ if (noLabelCharts.includes(type2))
277
+ return false;
278
+ const { data_labels, x_axis, y_axis } = stylesSettings || {};
279
+ if (type2 === constants_1.CHART_TYPE.PIE_CHART)
280
+ return data_labels.value;
281
+ const labels = {
282
+ axis: {
283
+ x: {
284
+ enabled: x_axis.showAxisTitle,
285
+ fontColor: x_axis.fontColor,
286
+ fontSize: x_axis.fontSize,
287
+ fontType: x_axis.fontType,
288
+ fontWeight: x_axis.fontWeight,
289
+ },
290
+ y: {
291
+ enabled: y_axis.showAxisTitle,
292
+ fontColor: y_axis.fontColor,
293
+ fontSize: y_axis.fontSize,
294
+ fontType: y_axis.fontType,
295
+ fontWeight: y_axis.fontWeight,
296
+ },
297
+ pivot: {
298
+ enabled: (_a = stylesSettings === null || stylesSettings === void 0 ? void 0 : stylesSettings.pivot_axis) === null || _a === void 0 ? void 0 : _a.showAxisTitle,
299
+ fontColor: (_b = stylesSettings === null || stylesSettings === void 0 ? void 0 : stylesSettings.pivot_axis) === null || _b === void 0 ? void 0 : _b.fontColor,
300
+ fontSize: (_c = stylesSettings === null || stylesSettings === void 0 ? void 0 : stylesSettings.pivot_axis) === null || _c === void 0 ? void 0 : _c.fontSize,
301
+ fontType: (_d = stylesSettings === null || stylesSettings === void 0 ? void 0 : stylesSettings.pivot_axis) === null || _d === void 0 ? void 0 : _d.fontType,
302
+ fontWeight: (_e = stylesSettings === null || stylesSettings === void 0 ? void 0 : stylesSettings.pivot_axis) === null || _e === void 0 ? void 0 : _e.fontWeight,
303
+ },
304
+ },
305
+ value: {
306
+ x: {
307
+ enabled: x_axis.values,
308
+ rotation: x_axis.rotation,
309
+ customRotation: x_axis.customRotation,
310
+ customValue: x_axis.customValue,
311
+ fontColor: x_axis.fontColorValues,
312
+ fontSize: x_axis.fontSizeValues,
313
+ fontType: x_axis.fontTypeValues,
314
+ fontWeight: x_axis.fontWeightValues,
315
+ },
316
+ y: {
317
+ enabled: y_axis.values,
318
+ rotation: y_axis.rotation,
319
+ customRotation: y_axis.customRotation,
320
+ customValue: y_axis.customValue,
321
+ fontColor: y_axis.fontColorValues,
322
+ fontSize: y_axis.fontSizeValues,
323
+ fontType: y_axis.fontTypeValues,
324
+ fontWeight: y_axis.fontWeightValues,
325
+ },
326
+ },
327
+ data: {
328
+ enabled: data_labels.value,
329
+ border: (0, general_1._get)(stylesSettings, "data_labels.simple_labels.border", true),
330
+ },
331
+ scale: {
332
+ x: x_axis.scale,
333
+ y: y_axis.scale,
334
+ },
335
+ };
336
+ if (type2 === constants_1.CHART_TYPE.HEATMAP_CHART)
337
+ delete labels.data;
338
+ return labels;
339
+ }
340
+ function parseHeatMap(stylesSettings) {
341
+ return {
342
+ celltext: (0, general_1._get)(stylesSettings, "data_labels.value"),
343
+ color: {
344
+ values: (stylesSettings.theme || []).slice(0, 5),
345
+ },
346
+ custom: {
347
+ steps: (0, general_1._get)(stylesSettings, "custom_scale.steps"),
348
+ min: (0, general_1._get)(stylesSettings, "custom_scale.min_value"),
349
+ max: (0, general_1._get)(stylesSettings, "custom_scale.max_value"),
350
+ },
351
+ gap: Object.assign({}, stylesSettings.gaps),
352
+ yAxisRotation: (0, general_1._get)(stylesSettings, "y_axis.rotation"),
353
+ labelRotation: (0, general_1._get)(stylesSettings, "pivot_axis.rotation"),
354
+ scale: {
355
+ type: (0, general_1._get)(stylesSettings, "custom_scale.value") ? "Custom" : "Auto",
356
+ order: stylesSettings.reverse_color ? "Reverse" : "Default",
357
+ },
358
+ };
359
+ }
360
+ const parseTableChart = ({ stylesSettings, globalSettings }) => {
361
+ return {
362
+ size: globalSettings.size,
363
+ maxNumGroups: (0, general_1._get)(globalSettings, "max_groups.option"),
364
+ theme: {
365
+ name: "Theme 1",
366
+ values: stylesSettings.color,
367
+ },
368
+ maxNumRows: (0, general_1._get)(globalSettings, "max_rows.option"),
369
+ sort_by_column: (0, general_1._get)(globalSettings, "sort_by_column"),
370
+ sort_by_multi_columns: (0, general_1._get)(globalSettings, "sort_by_multi_columns"),
371
+ };
372
+ };
373
+ exports.parseTableChart = parseTableChart;
374
+ const parseCrosstabChart = ({ stylesSettings, globalSettings }) => {
375
+ return {
376
+ size: globalSettings.size,
377
+ theme: {
378
+ name: "Theme 1",
379
+ values: stylesSettings.color,
380
+ },
381
+ labels: (0, general_1._get)(globalSettings, "crosstab_labels.value"),
382
+ sortX: (0, general_1._get)(globalSettings, "crosstab_labels.option.sorting"),
383
+ };
384
+ };
385
+ exports.parseCrosstabChart = parseCrosstabChart;
386
+ const parseMetricGlobal = ({ globalSettings, stylesSettings }) => {
387
+ let format3 = (0, general_1._get)(stylesSettings, "format.value", "Default");
388
+ const templateFormat = (0, general_1._get)(stylesSettings, "format.template") ||
389
+ (0, general_1._get)(stylesSettings, "y_axis.format.template");
390
+ const customization = {
391
+ filtering: (0, general_1._get)(globalSettings, "table_menu.filtering", true),
392
+ download: (0, general_1.omit)((0, general_1._get)(globalSettings, "customization.download"), ["csv"]),
393
+ };
394
+ if ((0, general_1._get)(stylesSettings, "format.value", "") === "Numeric") {
395
+ format3 = "Decimal";
396
+ }
397
+ return {
398
+ numberFormat: format3,
399
+ templateFormat,
400
+ comparisonType: "CHANGE",
401
+ desctription: false,
402
+ animation: (0, general_1._get)(stylesSettings, "animation", {}),
403
+ indicator_font: (0, general_1._get)(stylesSettings, "indicator_font", {}),
404
+ indicator_symbol: (0, general_1._get)(stylesSettings, "indicator_symbol", {}),
405
+ comparison_font: (0, general_1._get)(stylesSettings, "comparison_font", {}),
406
+ decimals: (0, general_1._get)(stylesSettings, "format.decimals", 2),
407
+ currency: { label: (0, general_1._get)(stylesSettings, "format.currency", "$") },
408
+ fixedScale: {
409
+ min: (0, general_1._get)(globalSettings, "metric_scale.value", false)
410
+ ? (0, general_1._get)(globalSettings, "metric_scale.min_value")
411
+ : null,
412
+ max: (0, general_1._get)(globalSettings, "metric_scale.value", false)
413
+ ? (0, general_1._get)(globalSettings, "metric_scale.max_value")
414
+ : null,
415
+ },
416
+ customization,
417
+ };
418
+ };
419
+ exports.parseMetricGlobal = parseMetricGlobal;
420
+ const getSortBy = (type) => {
421
+ return [
422
+ constants_1.CHART_TYPE.AREA_CHART,
423
+ constants_1.CHART_TYPE.BAR_CHART,
424
+ constants_1.CHART_TYPE.LINE_CHART,
425
+ constants_1.CHART_TYPE.SYMBOL_CHART,
426
+ constants_1.CHART_TYPE.MINMAX_CHART,
427
+ constants_1.CHART_TYPE.COMBO_CHART,
428
+ constants_1.CHART_TYPE.BAR_CHART_MS,
429
+ constants_1.CHART_TYPE.LINE_CHART_MS,
430
+ constants_1.CHART_TYPE.RADAR_CHART,
431
+ constants_1.CHART_TYPE.SYMBOL_CHART_MS,
432
+ constants_1.CHART_TYPE.FUNNEL_CHART,
433
+ constants_1.CHART_TYPE.HEATMAP_CHART,
434
+ constants_1.CHART_TYPE.COMBINED_CHART,
435
+ constants_1.CHART_TYPE.AREA_CHART_MS,
436
+ ].includes(type)
437
+ ? "sort_by_column"
438
+ : "sort_by";
439
+ };
440
+ exports.getSortBy = getSortBy;
441
+ const getSortByType = (globalSettings, type2) => {
442
+ return ((0, general_1._get)(globalSettings, (0, exports.getSortBy)(type2)) ||
443
+ (0, general_1._get)(globalSettings, "sort_by") || {
444
+ type: "Value",
445
+ order: "Desc",
446
+ });
447
+ };
448
+ const parseGlobalSettingByType = (type2, { stylesSettings, globalSettings, dimensions }) => {
449
+ var _a, _b;
450
+ const theme = { values: stylesSettings.theme };
451
+ const typeCategory = (0, general_1._get)((_a = dimensions.categories) === null || _a === void 0 ? void 0 : _a[0], "type");
452
+ const typeValue = (0, general_1._get)((_b = dimensions.values) === null || _b === void 0 ? void 0 : _b[0], "type");
453
+ const trueTypeCategory = typeCategory || typeValue;
454
+ const base = {
455
+ color_type: (0, general_1._get)(stylesSettings, "color_type"),
456
+ match_colors: (0, general_1._get)(stylesSettings, "match_colors"),
457
+ custom_color: (0, general_1._get)(stylesSettings, "custom_color"),
458
+ custom_theme: (0, general_1._get)(stylesSettings, "custom_theme"),
459
+ theme,
460
+ size: globalSettings.size,
461
+ labels: parseLabels(type2, stylesSettings),
462
+ legends: globalSettings.legend ? globalSettings.legend !== "NONE" : false,
463
+ tooltips: (0, general_1._get)(globalSettings, "tooltips.value"),
464
+ custom_tooltips: (0, general_1._get)(globalSettings, "tooltips.advanced"),
465
+ scale: {
466
+ type: (0, general_1._get)(stylesSettings, "custom_scale.value") ? "Custom" : "Auto",
467
+ order: stylesSettings.reverse_color ? "Reverse" : "Default",
468
+ },
469
+ sortX: getSortByType(globalSettings, type2),
470
+ sortAggregation: globalSettings.aggregation_sort,
471
+ sortCalculation: globalSettings.table_calculation_sort,
472
+ calculation_direction: globalSettings.calculation_direction,
473
+ maxNumValuePoints: (0, general_1._get)(globalSettings, "max_value_point.option", 500),
474
+ maxNumDataPoints: (0, general_1._get)(globalSettings, "max_data_point.option"),
475
+ maxDataPoints: trueTypeCategory === "DATE"
476
+ ? false
477
+ : (0, general_1._get)(globalSettings, "max_data_point.value"),
478
+ average: globalSettings.average,
479
+ startDate: globalSettings.startDate,
480
+ endDate: globalSettings.endDate,
481
+ startTime: globalSettings.startTime,
482
+ endTime: globalSettings.endTime,
483
+ startNumeric: globalSettings.startNumeric,
484
+ endNumeric: globalSettings.endNumeric,
485
+ chartVersion: (0, general_1._get)(globalSettings, "chartVersion"),
486
+ };
487
+ const customization = {
488
+ filtering: (0, general_1._get)(globalSettings, "table_menu.filtering", true),
489
+ sorting: (0, general_1._get)(globalSettings, "table_menu.sorting", false),
490
+ fitPanel: (0, general_1._get)(globalSettings, "customization.fitPanel", true),
491
+ chartSelection: (0, general_1._get)(globalSettings, "customization.chartSelection", false),
492
+ download: (0, general_1._get)(globalSettings, "customization.download"),
493
+ columnReplacement: (0, general_1._get)(globalSettings, "customization.columnReplacement"),
494
+ columnAggregation: (0, general_1._get)(globalSettings, "customization.columnAggregation"),
495
+ dateGrouping: (0, general_1._get)(globalSettings, "customization.dateGrouping"),
496
+ };
497
+ const notXYCustomization = {
498
+ filtering: (0, general_1._get)(globalSettings, "table_menu.filtering", true),
499
+ download: (0, general_1._get)(globalSettings, "customization.download"),
500
+ };
501
+ const circularCustomization = Object.assign(Object.assign({}, notXYCustomization), { chartSelection: customization.chartSelection, sorting: customization.sorting, columnReplacement: (0, general_1._get)(globalSettings, "customization.columnReplacement"), columnAggregation: (0, general_1._get)(globalSettings, "customization.columnAggregation"), dateGrouping: (0, general_1._get)(globalSettings, "customization.dateGrouping") });
502
+ return ({
503
+ [constants_1.CHART_TYPE.BAR_CHART]: Object.assign(Object.assign({}, base), { hideShading: !stylesSettings.shadding, fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
504
+ [constants_1.CHART_TYPE.BAR_CHART_MS]: Object.assign(Object.assign({}, base), { hideShading: true, fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
505
+ [constants_1.CHART_TYPE.SYMBOL_CHART]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
506
+ [constants_1.CHART_TYPE.SYMBOL_CHART_MS]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
507
+ [constants_1.CHART_TYPE.LINE_CHART]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
508
+ [constants_1.CHART_TYPE.LINE_CHART_MS]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
509
+ [constants_1.CHART_TYPE.RADAR_CHART]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization: circularCustomization }),
510
+ [constants_1.CHART_TYPE.COMBO_CHART]: Object.assign(Object.assign({}, base), { hideShading: true, fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
511
+ [constants_1.CHART_TYPE.HEATMAP_CHART]: Object.assign(Object.assign(Object.assign({}, base), parseHeatMap(stylesSettings)), { customization: notXYCustomization }),
512
+ [constants_1.CHART_TYPE.WORD_CLOUD]: Object.assign(Object.assign({}, base), { customization: notXYCustomization }),
513
+ [constants_1.CHART_TYPE.MINMAX_CHART]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
514
+ [constants_1.CHART_TYPE.PIE_CHART]: Object.assign(Object.assign({}, base), { customization: circularCustomization }),
515
+ [constants_1.CHART_TYPE.REFERENCE]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false) }),
516
+ [constants_1.CHART_TYPE.TREND]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false) }),
517
+ [constants_1.CHART_TYPE.SCATTER_CHART]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
518
+ [constants_1.CHART_TYPE.SMALL_MULTIPLES]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false) }),
519
+ [constants_1.CHART_TYPE.BOXWHISKER_CHART]: Object.assign(Object.assign({}, base), { enableDataLabels: true, labelRotation: (0, general_1._get)(stylesSettings, "x_axis.rotation"), orientation: (0, general_1.capitalize)((stylesSettings.orientation || "").toString()), hasPivot: (0, chartTypes_1.hasDimension)(dimensions, constants_1.CHART_DIMENSION.PIVOT), customization: {
520
+ filtering: customization.filtering,
521
+ download: (0, general_1.omit)(customization.download, ["csvSummary"]),
522
+ } }),
523
+ [constants_1.CHART_TYPE.GEO_CHART_BUBBLE]: Object.assign(Object.assign({}, base), { theme: { values: [stylesSettings.color] }, customization: notXYCustomization }),
524
+ [constants_1.CHART_TYPE.GEO_CHART_DOT]: Object.assign(Object.assign({}, base), { theme: { values: [stylesSettings.color] }, legends: false, customization: notXYCustomization }),
525
+ [constants_1.CHART_TYPE.GEO_CHART_CHOROPLETH]: Object.assign(Object.assign({}, base), { theme: { values: [stylesSettings.color] }, customization: notXYCustomization }),
526
+ [constants_1.CHART_TYPE.GEO_CHART]: Object.assign(Object.assign({}, base), { customization: notXYCustomization }),
527
+ [constants_1.CHART_TYPE.CROSSTAB_CHART]: Object.assign(Object.assign({}, (0, exports.parseCrosstabChart)({ globalSettings, stylesSettings })), { customization: Object.assign(Object.assign({}, notXYCustomization), { sorting: customization.sorting }) }),
528
+ [constants_1.CHART_TYPE.TABLE_CHART]: Object.assign(Object.assign({}, (0, exports.parseTableChart)({ globalSettings, stylesSettings })), { customization: {
529
+ download: (0, general_1._get)(globalSettings, "customization.download"),
530
+ } }),
531
+ [constants_1.CHART_TYPE.EXPANDABLE_TABLE_CHART]: Object.assign(Object.assign({}, (0, exports.parseTableChart)({ globalSettings, stylesSettings })), { customization: notXYCustomization }),
532
+ [constants_1.CHART_TYPE.INDICATOR_METRIC]: Object.assign(Object.assign({}, (0, exports.parseMetricGlobal)({ globalSettings, stylesSettings })), { tooltips: base.tooltips, custom_tooltips: base.custom_tooltips }),
533
+ [constants_1.CHART_TYPE.DIAL_METRIC]: Object.assign(Object.assign({}, (0, exports.parseMetricGlobal)({ globalSettings, stylesSettings })), { legend: base.legends, tooltips: base.tooltips, custom_tooltips: base.custom_tooltips }),
534
+ [constants_1.CHART_TYPE.BULLET_METRIC]: Object.assign(Object.assign({}, (0, exports.parseMetricGlobal)({ globalSettings, stylesSettings })), { legend: base.legends, tooltips: base.tooltips, custom_tooltips: base.custom_tooltips }),
535
+ [constants_1.CHART_TYPE.FUNNEL_CHART]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization: notXYCustomization }),
536
+ [constants_1.CHART_TYPE.COMBINED_CHART]: Object.assign(Object.assign({}, base), { hideShading: true, fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
537
+ [constants_1.CHART_TYPE.AREA_CHART]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
538
+ [constants_1.CHART_TYPE.AREA_CHART_MS]: Object.assign(Object.assign({}, base), { fit_panel: (0, general_1._get)(globalSettings, "fit_panel", false), customization }),
539
+ }[type2] || {});
540
+ };
541
+ exports.parseGlobalSettingByType = parseGlobalSettingByType;