@elastic/charts 37.0.0 → 38.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/NOTICE.txt +21 -0
  3. package/dist/chart_types/goal_chart/layout/viewmodel/geoms.js +20 -10
  4. package/dist/chart_types/goal_chart/layout/viewmodel/geoms.js.map +1 -1
  5. package/dist/chart_types/goal_chart/layout/viewmodel/utils.d.ts +2 -0
  6. package/dist/chart_types/goal_chart/layout/viewmodel/utils.d.ts.map +1 -0
  7. package/dist/chart_types/goal_chart/layout/viewmodel/utils.js +37 -0
  8. package/dist/chart_types/goal_chart/layout/viewmodel/utils.js.map +1 -0
  9. package/dist/chart_types/goal_chart/state/selectors/scenegraph.js +5 -13
  10. package/dist/chart_types/goal_chart/state/selectors/scenegraph.js.map +1 -1
  11. package/dist/chart_types/heatmap/layout/viewmodel/viewmodel.js +5 -7
  12. package/dist/chart_types/heatmap/layout/viewmodel/viewmodel.js.map +1 -1
  13. package/dist/chart_types/heatmap/state/selectors/get_heatmap_config.js +1 -3
  14. package/dist/chart_types/heatmap/state/selectors/get_heatmap_config.js.map +1 -1
  15. package/dist/chart_types/heatmap/state/selectors/get_x_axis_right_overflow.js +10 -19
  16. package/dist/chart_types/heatmap/state/selectors/get_x_axis_right_overflow.js.map +1 -1
  17. package/dist/chart_types/heatmap/state/selectors/scenegraph.js +1 -1
  18. package/dist/chart_types/heatmap/state/selectors/scenegraph.js.map +1 -1
  19. package/dist/chart_types/partition_chart/layout/config.js +1 -1
  20. package/dist/chart_types/partition_chart/layout/config.js.map +1 -1
  21. package/dist/chart_types/partition_chart/layout/viewmodel/fill_text_layout.js +5 -4
  22. package/dist/chart_types/partition_chart/layout/viewmodel/fill_text_layout.js.map +1 -1
  23. package/dist/chart_types/partition_chart/layout/viewmodel/scenegraph.js +1 -1
  24. package/dist/chart_types/partition_chart/layout/viewmodel/scenegraph.js.map +1 -1
  25. package/dist/chart_types/partition_chart/state/chart_state.js +3 -3
  26. package/dist/chart_types/partition_chart/state/chart_state.js.map +1 -1
  27. package/dist/chart_types/partition_chart/state/selectors/get_cursor_pointer.d.ts +2 -0
  28. package/dist/chart_types/partition_chart/state/selectors/get_cursor_pointer.d.ts.map +1 -0
  29. package/dist/chart_types/partition_chart/state/selectors/get_cursor_pointer.js +14 -0
  30. package/dist/chart_types/partition_chart/state/selectors/get_cursor_pointer.js.map +1 -0
  31. package/dist/chart_types/wordcloud/state/selectors/scenegraph.js +1 -4
  32. package/dist/chart_types/wordcloud/state/selectors/scenegraph.js.map +1 -1
  33. package/dist/chart_types/xy_chart/annotations/line/dimensions.js +14 -13
  34. package/dist/chart_types/xy_chart/annotations/line/dimensions.js.map +1 -1
  35. package/dist/chart_types/xy_chart/annotations/rect/dimensions.js +11 -13
  36. package/dist/chart_types/xy_chart/annotations/rect/dimensions.js.map +1 -1
  37. package/dist/chart_types/xy_chart/annotations/utils.js +5 -7
  38. package/dist/chart_types/xy_chart/annotations/utils.js.map +1 -1
  39. package/dist/chart_types/xy_chart/axes/axes_sizes.js +80 -35
  40. package/dist/chart_types/xy_chart/axes/axes_sizes.js.map +1 -1
  41. package/dist/chart_types/xy_chart/axes/timeslip/chrono/cached_chrono.d.ts +2 -0
  42. package/dist/chart_types/xy_chart/axes/timeslip/chrono/cached_chrono.d.ts.map +1 -0
  43. package/dist/chart_types/xy_chart/axes/timeslip/chrono/cached_chrono.js +33 -0
  44. package/dist/chart_types/xy_chart/axes/timeslip/chrono/cached_chrono.js.map +1 -0
  45. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono.d.ts +2 -0
  46. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono.d.ts.map +1 -0
  47. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono.js +18 -0
  48. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono.js.map +1 -0
  49. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono_luxon/chrono_luxon.d.ts +2 -0
  50. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono_luxon/chrono_luxon.d.ts.map +1 -0
  51. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono_luxon/chrono_luxon.js +35 -0
  52. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono_luxon/chrono_luxon.js.map +1 -0
  53. package/dist/chart_types/xy_chart/axes/timeslip/rasters.d.ts +2 -0
  54. package/dist/chart_types/xy_chart/axes/timeslip/rasters.d.ts.map +1 -0
  55. package/dist/chart_types/xy_chart/axes/timeslip/rasters.js +708 -0
  56. package/dist/chart_types/xy_chart/axes/timeslip/rasters.js.map +1 -0
  57. package/dist/chart_types/xy_chart/crosshair/crosshair_utils.js +2 -2
  58. package/dist/chart_types/xy_chart/crosshair/crosshair_utils.js.map +1 -1
  59. package/dist/chart_types/xy_chart/domains/x_domain.js +3 -2
  60. package/dist/chart_types/xy_chart/domains/x_domain.js.map +1 -1
  61. package/dist/chart_types/xy_chart/legend/legend.js +10 -19
  62. package/dist/chart_types/xy_chart/legend/legend.js.map +1 -1
  63. package/dist/chart_types/xy_chart/renderer/canvas/axes/index.js +2 -2
  64. package/dist/chart_types/xy_chart/renderer/canvas/axes/index.js.map +1 -1
  65. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick.js +12 -4
  66. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick.js.map +1 -1
  67. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick_label.js +7 -4
  68. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick_label.js.map +1 -1
  69. package/dist/chart_types/xy_chart/renderer/canvas/panels/panels.js +2 -0
  70. package/dist/chart_types/xy_chart/renderer/canvas/panels/panels.js.map +1 -1
  71. package/dist/chart_types/xy_chart/renderer/canvas/panels/title.js +5 -3
  72. package/dist/chart_types/xy_chart/renderer/canvas/panels/title.js.map +1 -1
  73. package/dist/chart_types/xy_chart/renderer/canvas/xy_chart.js +2 -2
  74. package/dist/chart_types/xy_chart/renderer/canvas/xy_chart.js.map +1 -1
  75. package/dist/chart_types/xy_chart/rendering/area.js +11 -33
  76. package/dist/chart_types/xy_chart/rendering/area.js.map +1 -1
  77. package/dist/chart_types/xy_chart/rendering/bars.js +8 -9
  78. package/dist/chart_types/xy_chart/rendering/bars.js.map +1 -1
  79. package/dist/chart_types/xy_chart/rendering/line.js +4 -13
  80. package/dist/chart_types/xy_chart/rendering/line.js.map +1 -1
  81. package/dist/chart_types/xy_chart/rendering/point_style.js +2 -4
  82. package/dist/chart_types/xy_chart/rendering/point_style.js.map +1 -1
  83. package/dist/chart_types/xy_chart/rendering/points.js +9 -24
  84. package/dist/chart_types/xy_chart/rendering/points.js.map +1 -1
  85. package/dist/chart_types/xy_chart/rendering/utils.js +20 -31
  86. package/dist/chart_types/xy_chart/rendering/utils.js.map +1 -1
  87. package/dist/chart_types/xy_chart/specs/axis.d.ts +2 -2
  88. package/dist/chart_types/xy_chart/specs/axis.d.ts.map +1 -1
  89. package/dist/chart_types/xy_chart/specs/axis.js +3 -3
  90. package/dist/chart_types/xy_chart/specs/axis.js.map +1 -1
  91. package/dist/chart_types/xy_chart/state/selectors/compute_annotations.js +10 -12
  92. package/dist/chart_types/xy_chart/state/selectors/compute_annotations.js.map +1 -1
  93. package/dist/chart_types/xy_chart/state/selectors/compute_axes_geometries.js +5 -20
  94. package/dist/chart_types/xy_chart/state/selectors/compute_axes_geometries.js.map +1 -1
  95. package/dist/chart_types/xy_chart/state/selectors/compute_axis_ticks_dimensions.js +75 -40
  96. package/dist/chart_types/xy_chart/state/selectors/compute_axis_ticks_dimensions.js.map +1 -1
  97. package/dist/chart_types/xy_chart/state/selectors/compute_chart_dimensions.js +2 -4
  98. package/dist/chart_types/xy_chart/state/selectors/compute_chart_dimensions.js.map +1 -1
  99. package/dist/chart_types/xy_chart/state/selectors/compute_legend.js +1 -1
  100. package/dist/chart_types/xy_chart/state/selectors/compute_legend.js.map +1 -1
  101. package/dist/chart_types/xy_chart/state/selectors/compute_series_domains.js +2 -4
  102. package/dist/chart_types/xy_chart/state/selectors/compute_series_domains.js.map +1 -1
  103. package/dist/chart_types/xy_chart/state/selectors/compute_series_geometries.js +4 -4
  104. package/dist/chart_types/xy_chart/state/selectors/compute_series_geometries.js.map +1 -1
  105. package/dist/chart_types/xy_chart/state/selectors/get_axis_styles.js +4 -15
  106. package/dist/chart_types/xy_chart/state/selectors/get_axis_styles.js.map +1 -1
  107. package/dist/chart_types/xy_chart/state/selectors/get_brush_area.js +2 -3
  108. package/dist/chart_types/xy_chart/state/selectors/get_brush_area.js.map +1 -1
  109. package/dist/chart_types/xy_chart/state/selectors/get_chart_type_description.js +1 -2
  110. package/dist/chart_types/xy_chart/state/selectors/get_chart_type_description.js.map +1 -1
  111. package/dist/chart_types/xy_chart/state/selectors/get_cursor_band.js +6 -6
  112. package/dist/chart_types/xy_chart/state/selectors/get_cursor_band.js.map +1 -1
  113. package/dist/chart_types/xy_chart/state/selectors/get_debug_state.js +1 -1
  114. package/dist/chart_types/xy_chart/state/selectors/get_debug_state.js.map +1 -1
  115. package/dist/chart_types/xy_chart/state/selectors/get_elements_at_cursor_pos.js +1 -1
  116. package/dist/chart_types/xy_chart/state/selectors/get_elements_at_cursor_pos.js.map +1 -1
  117. package/dist/chart_types/xy_chart/state/selectors/get_grid_lines.js +2 -4
  118. package/dist/chart_types/xy_chart/state/selectors/get_grid_lines.js.map +1 -1
  119. package/dist/chart_types/xy_chart/state/selectors/get_projected_scaled_values.js +1 -1
  120. package/dist/chart_types/xy_chart/state/selectors/get_projected_scaled_values.js.map +1 -1
  121. package/dist/chart_types/xy_chart/state/selectors/get_series_color_map.js.map +1 -1
  122. package/dist/chart_types/xy_chart/state/selectors/get_specs.js +2 -1
  123. package/dist/chart_types/xy_chart/state/selectors/get_specs.js.map +1 -1
  124. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_position.js +2 -3
  125. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_position.js.map +1 -1
  126. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_snap.js +1 -4
  127. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_snap.js.map +1 -1
  128. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_values_highlighted_geoms.js +5 -7
  129. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_values_highlighted_geoms.js.map +1 -1
  130. package/dist/chart_types/xy_chart/state/selectors/is_brush_available.js +1 -6
  131. package/dist/chart_types/xy_chart/state/selectors/is_brush_available.js.map +1 -1
  132. package/dist/chart_types/xy_chart/state/selectors/is_brushing.js +1 -6
  133. package/dist/chart_types/xy_chart/state/selectors/is_brushing.js.map +1 -1
  134. package/dist/chart_types/xy_chart/state/selectors/is_tooltip_snap_enabled.js +1 -4
  135. package/dist/chart_types/xy_chart/state/selectors/is_tooltip_snap_enabled.js.map +1 -1
  136. package/dist/chart_types/xy_chart/state/selectors/is_tooltip_visible.js +2 -2
  137. package/dist/chart_types/xy_chart/state/selectors/on_brush_end_caller.js +10 -6
  138. package/dist/chart_types/xy_chart/state/selectors/on_brush_end_caller.js.map +1 -1
  139. package/dist/chart_types/xy_chart/state/selectors/on_click_caller.js +4 -5
  140. package/dist/chart_types/xy_chart/state/selectors/on_click_caller.js.map +1 -1
  141. package/dist/chart_types/xy_chart/state/selectors/on_element_out_caller.js +7 -12
  142. package/dist/chart_types/xy_chart/state/selectors/on_element_out_caller.js.map +1 -1
  143. package/dist/chart_types/xy_chart/state/selectors/on_element_over_caller.js +10 -16
  144. package/dist/chart_types/xy_chart/state/selectors/on_element_over_caller.js.map +1 -1
  145. package/dist/chart_types/xy_chart/state/selectors/on_pointer_move_caller.js +10 -33
  146. package/dist/chart_types/xy_chart/state/selectors/on_pointer_move_caller.js.map +1 -1
  147. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.d.ts +2 -0
  148. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.d.ts.map +1 -0
  149. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.js +297 -0
  150. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.js.map +1 -0
  151. package/dist/chart_types/xy_chart/state/utils/spec.js +5 -4
  152. package/dist/chart_types/xy_chart/state/utils/spec.js.map +1 -1
  153. package/dist/chart_types/xy_chart/state/utils/utils.js +32 -51
  154. package/dist/chart_types/xy_chart/state/utils/utils.js.map +1 -1
  155. package/dist/chart_types/xy_chart/tooltip/tooltip.js +3 -4
  156. package/dist/chart_types/xy_chart/tooltip/tooltip.js.map +1 -1
  157. package/dist/chart_types/xy_chart/utils/axis_utils.js +42 -131
  158. package/dist/chart_types/xy_chart/utils/axis_utils.js.map +1 -1
  159. package/dist/chart_types/xy_chart/utils/dimensions.js +27 -23
  160. package/dist/chart_types/xy_chart/utils/dimensions.js.map +1 -1
  161. package/dist/chart_types/xy_chart/utils/fill_series.js +3 -1
  162. package/dist/chart_types/xy_chart/utils/fill_series.js.map +1 -1
  163. package/dist/chart_types/xy_chart/utils/get_linear_ticks.d.ts +2 -0
  164. package/dist/chart_types/xy_chart/utils/get_linear_ticks.d.ts.map +1 -0
  165. package/dist/chart_types/xy_chart/utils/get_linear_ticks.js +99 -0
  166. package/dist/chart_types/xy_chart/utils/get_linear_ticks.js.map +1 -0
  167. package/dist/chart_types/xy_chart/utils/grid_lines.js +44 -29
  168. package/dist/chart_types/xy_chart/utils/grid_lines.js.map +1 -1
  169. package/dist/chart_types/xy_chart/utils/panel_utils.js +2 -3
  170. package/dist/chart_types/xy_chart/utils/panel_utils.js.map +1 -1
  171. package/dist/chart_types/xy_chart/utils/scales.js +1 -2
  172. package/dist/chart_types/xy_chart/utils/scales.js.map +1 -1
  173. package/dist/chart_types/xy_chart/utils/series.js +8 -12
  174. package/dist/chart_types/xy_chart/utils/series.js.map +1 -1
  175. package/dist/chart_types/xy_chart/utils/specs.d.ts +9 -3
  176. package/dist/chart_types/xy_chart/utils/specs.d.ts.map +1 -1
  177. package/dist/chart_types/xy_chart/utils/specs.js.map +1 -1
  178. package/dist/components/legend/legend.js.map +1 -1
  179. package/dist/components/legend/position_style.js +2 -2
  180. package/dist/components/legend/position_style.js.map +1 -1
  181. package/dist/components/legend/style_utils.js.map +1 -1
  182. package/dist/components/portal/tooltip_portal.js +1 -1
  183. package/dist/components/portal/tooltip_portal.js.map +1 -1
  184. package/dist/components/portal/utils.js +1 -1
  185. package/dist/components/portal/utils.js.map +1 -1
  186. package/dist/index.d.ts +2 -1
  187. package/dist/index.d.ts.map +1 -1
  188. package/dist/index.js +2 -3
  189. package/dist/index.js.map +1 -1
  190. package/dist/scales/constants.d.ts +4 -0
  191. package/dist/scales/constants.d.ts.map +1 -1
  192. package/dist/scales/constants.js +1 -0
  193. package/dist/scales/constants.js.map +1 -1
  194. package/dist/scales/index.d.ts +2 -2
  195. package/dist/scales/index.d.ts.map +1 -1
  196. package/dist/scales/index.js +1 -3
  197. package/dist/scales/index.js.map +1 -1
  198. package/dist/scales/scale_band.js +3 -16
  199. package/dist/scales/scale_band.js.map +1 -1
  200. package/dist/scales/scale_continuous.d.ts +1 -40
  201. package/dist/scales/scale_continuous.d.ts.map +1 -1
  202. package/dist/scales/scale_continuous.js +150 -225
  203. package/dist/scales/scale_continuous.js.map +1 -1
  204. package/dist/scales/types.d.ts +19 -1
  205. package/dist/scales/types.d.ts.map +1 -1
  206. package/dist/specs/constants.d.ts.map +1 -1
  207. package/dist/specs/constants.js +1 -1
  208. package/dist/specs/constants.js.map +1 -1
  209. package/dist/specs/settings.d.ts +4 -11
  210. package/dist/specs/settings.d.ts.map +1 -1
  211. package/dist/specs/settings.js +7 -14
  212. package/dist/specs/settings.js.map +1 -1
  213. package/dist/state/selectors/get_legend_size.js.map +1 -1
  214. package/dist/state/selectors/is_external_tooltip_visible.js +1 -1
  215. package/dist/state/selectors/is_external_tooltip_visible.js.map +1 -1
  216. package/dist/state/utils.js +3 -19
  217. package/dist/state/utils.js.map +1 -1
  218. package/dist/utils/bbox/canvas_text_bbox_calculator.js +0 -2
  219. package/dist/utils/bbox/canvas_text_bbox_calculator.js.map +1 -1
  220. package/dist/utils/common.d.ts.map +1 -1
  221. package/dist/utils/common.js +8 -34
  222. package/dist/utils/common.js.map +1 -1
  223. package/dist/utils/data/formatters.d.ts.map +1 -1
  224. package/dist/utils/data/formatters.js +3 -6
  225. package/dist/utils/data/formatters.js.map +1 -1
  226. package/dist/utils/series_sort.d.ts.map +1 -1
  227. package/dist/utils/series_sort.js +13 -21
  228. package/dist/utils/series_sort.js.map +1 -1
  229. package/dist/utils/themes/dark_theme.d.ts.map +1 -1
  230. package/dist/utils/themes/dark_theme.js +1 -0
  231. package/dist/utils/themes/dark_theme.js.map +1 -1
  232. package/dist/utils/themes/light_theme.d.ts.map +1 -1
  233. package/dist/utils/themes/light_theme.js +1 -0
  234. package/dist/utils/themes/light_theme.js.map +1 -1
  235. package/dist/utils/themes/merge_utils.d.ts +2 -2
  236. package/dist/utils/themes/merge_utils.d.ts.map +1 -1
  237. package/dist/utils/themes/merge_utils.js +3 -3
  238. package/dist/utils/themes/merge_utils.js.map +1 -1
  239. package/dist/utils/themes/theme.d.ts +1 -0
  240. package/dist/utils/themes/theme.d.ts.map +1 -1
  241. package/dist/utils/themes/theme.js.map +1 -1
  242. package/dist/utils/use_legend_action.d.ts +9 -0
  243. package/dist/utils/use_legend_action.d.ts.map +1 -0
  244. package/dist/utils/use_legend_action.js +15 -0
  245. package/dist/utils/use_legend_action.js.map +1 -0
  246. package/package.json +3 -2
  247. package/dist/chart_types/xy_chart/state/selectors/compute_grid_lines.d.ts +0 -2
  248. package/dist/chart_types/xy_chart/state/selectors/compute_grid_lines.d.ts.map +0 -1
  249. package/dist/chart_types/xy_chart/state/selectors/compute_grid_lines.js +0 -13
  250. package/dist/chart_types/xy_chart/state/selectors/compute_grid_lines.js.map +0 -1
  251. package/dist/chart_types/xy_chart/state/selectors/is_chart_animatable.d.ts +0 -2
  252. package/dist/chart_types/xy_chart/state/selectors/is_chart_animatable.d.ts.map +0 -1
  253. package/dist/chart_types/xy_chart/state/selectors/is_chart_animatable.js +0 -10
  254. package/dist/chart_types/xy_chart/state/selectors/is_chart_animatable.js.map +0 -1
@@ -0,0 +1,297 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __read = (this && this.__read) || function (o, n) {
14
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
15
+ if (!m) return o;
16
+ var i = m.call(o), r, ar = [], e;
17
+ try {
18
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
+ }
20
+ catch (error) { e = { error: error }; }
21
+ finally {
22
+ try {
23
+ if (r && !r.done && (m = i["return"])) m.call(i);
24
+ }
25
+ finally { if (e) throw e.error; }
26
+ }
27
+ return ar;
28
+ };
29
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
30
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
31
+ if (ar || !(i in from)) {
32
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
33
+ ar[i] = from[i];
34
+ }
35
+ }
36
+ return to.concat(ar || Array.prototype.slice.call(from));
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.getVisibleTickSetsSelector = exports.enableDuplicatedTicks = void 0;
40
+ var scales_1 = require("../../../../scales");
41
+ var constants_1 = require("../../../../scales/constants");
42
+ var create_selector_1 = require("../../../../state/create_selector");
43
+ var get_settings_specs_1 = require("../../../../state/selectors/get_settings_specs");
44
+ var canvas_text_bbox_calculator_1 = require("../../../../utils/bbox/canvas_text_bbox_calculator");
45
+ var rasters_1 = require("../../axes/timeslip/rasters");
46
+ var axis_type_utils_1 = require("../../utils/axis_type_utils");
47
+ var axis_utils_1 = require("../../utils/axis_utils");
48
+ var panel_1 = require("../../utils/panel");
49
+ var scales_2 = require("../../utils/scales");
50
+ var compute_axis_ticks_dimensions_1 = require("./compute_axis_ticks_dimensions");
51
+ var compute_series_domains_1 = require("./compute_series_domains");
52
+ var compute_small_multiple_scales_1 = require("./compute_small_multiple_scales");
53
+ var count_bars_in_cluster_1 = require("./count_bars_in_cluster");
54
+ var get_bar_paddings_1 = require("./get_bar_paddings");
55
+ var is_histogram_mode_enabled_1 = require("./is_histogram_mode_enabled");
56
+ var adaptiveTickCount = true;
57
+ var MAX_TIME_TICK_COUNT = 50;
58
+ var WIDTH_FUDGE = 1.05;
59
+ function axisMinMax(axisPosition, chartRotation, _a) {
60
+ var width = _a.width, height = _a.height;
61
+ var horizontal = (0, axis_type_utils_1.isHorizontalAxis)(axisPosition);
62
+ var flipped = horizontal
63
+ ? chartRotation === -90 || chartRotation === 180
64
+ : chartRotation === 90 || chartRotation === 180;
65
+ return horizontal ? [flipped ? width : 0, flipped ? 0 : width] : [flipped ? 0 : height, flipped ? height : 0];
66
+ }
67
+ function enableDuplicatedTicks(axisSpec, scale, ticks, offset, fallBackTickFormatter, tickFormatOptions, layer, detailedLayer) {
68
+ var _a, _b, _c;
69
+ if (detailedLayer === void 0) { detailedLayer = 0; }
70
+ var labelFormat = (_c = (_b = (_a = tickFormatOptions.labelFormat) !== null && _a !== void 0 ? _a : axisSpec.labelFormat) !== null && _b !== void 0 ? _b : axisSpec.tickFormat) !== null && _c !== void 0 ? _c : fallBackTickFormatter;
71
+ return ticks.map(function (value) {
72
+ var _a;
73
+ return ({
74
+ value: value,
75
+ label: ((_a = axisSpec.tickFormat) !== null && _a !== void 0 ? _a : fallBackTickFormatter)(value, tickFormatOptions),
76
+ axisTickLabel: labelFormat(value, tickFormatOptions),
77
+ position: (scale.scale(value) || 0) + offset,
78
+ layer: layer,
79
+ detailedLayer: detailedLayer,
80
+ });
81
+ });
82
+ }
83
+ exports.enableDuplicatedTicks = enableDuplicatedTicks;
84
+ function getVisibleTicks(axisSpec, labelBox, totalBarsInCluster, fallBackTickFormatter, rotationOffset, scale, enableHistogramMode, tickFormatOptions, layer, detailedLayer, ticks, isMultilayerTimeAxis) {
85
+ var _a, _b, _c;
86
+ if (isMultilayerTimeAxis === void 0) { isMultilayerTimeAxis = false; }
87
+ var isSingleValueScale = scale.domain[0] === scale.domain[1];
88
+ var makeRaster = enableHistogramMode && scale.bandwidth > 0 && !isMultilayerTimeAxis;
89
+ var ultimateTick = ticks[ticks.length - 1];
90
+ var penultimateTick = ticks[ticks.length - 2];
91
+ if (makeRaster && !isSingleValueScale && typeof penultimateTick === 'number' && typeof ultimateTick === 'number') {
92
+ var computedTickDistance = ultimateTick - penultimateTick;
93
+ var numTicks = scale.minInterval / (computedTickDistance || scale.minInterval);
94
+ for (var i = 1; i <= numTicks; i++)
95
+ ticks.push(i * computedTickDistance + ultimateTick);
96
+ }
97
+ var shift = totalBarsInCluster > 0 ? totalBarsInCluster : 1;
98
+ var band = scale.bandwidth / (1 - scale.barsPadding);
99
+ var halfPadding = (band - scale.bandwidth) / 2;
100
+ var offset = (enableHistogramMode ? -halfPadding : (scale.bandwidth * shift) / 2) + (scale.isSingleValue() ? 0 : rotationOffset);
101
+ var tickFormatter = (_a = axisSpec.tickFormat) !== null && _a !== void 0 ? _a : fallBackTickFormatter;
102
+ var labelFormatter = (_c = (_b = tickFormatOptions.labelFormat) !== null && _b !== void 0 ? _b : axisSpec.labelFormat) !== null && _c !== void 0 ? _c : tickFormatter;
103
+ var firstTickValue = ticks[0];
104
+ var allTicks = makeRaster && isSingleValueScale && typeof firstTickValue === 'number'
105
+ ? [
106
+ {
107
+ value: firstTickValue,
108
+ label: tickFormatter(firstTickValue, tickFormatOptions),
109
+ axisTickLabel: labelFormatter(firstTickValue, tickFormatOptions),
110
+ position: (scale.scale(firstTickValue) || 0) + offset,
111
+ layer: undefined,
112
+ detailedLayer: 0,
113
+ },
114
+ {
115
+ value: firstTickValue + scale.minInterval,
116
+ label: tickFormatter(firstTickValue + scale.minInterval, tickFormatOptions),
117
+ axisTickLabel: labelFormatter(firstTickValue + scale.minInterval, tickFormatOptions),
118
+ position: scale.bandwidth + halfPadding * 2,
119
+ layer: undefined,
120
+ detailedLayer: 0,
121
+ },
122
+ ]
123
+ : enableDuplicatedTicks(axisSpec, scale, ticks, offset, fallBackTickFormatter, tickFormatOptions, layer, detailedLayer);
124
+ var showOverlappingTicks = axisSpec.showOverlappingTicks, showOverlappingLabels = axisSpec.showOverlappingLabels, position = axisSpec.position;
125
+ var requiredSpace = (0, axis_type_utils_1.isVerticalAxis)(position) ? labelBox.maxLabelBboxHeight / 2 : labelBox.maxLabelBboxWidth / 2;
126
+ return showOverlappingLabels || isMultilayerTimeAxis
127
+ ? allTicks
128
+ : __spreadArray([], __read(allTicks), false).sort(function (a, b) { return a.position - b.position; })
129
+ .reduce(function (prev, tick) {
130
+ var tickLabelFits = tick.position >= prev.occupiedSpace + requiredSpace;
131
+ if (tickLabelFits || showOverlappingTicks) {
132
+ prev.visibleTicks.push(tickLabelFits ? tick : __assign(__assign({}, tick), { axisTickLabel: '' }));
133
+ if (tickLabelFits)
134
+ prev.occupiedSpace = tick.position + requiredSpace;
135
+ }
136
+ else if (adaptiveTickCount && !tickLabelFits && !showOverlappingTicks) {
137
+ prev.visibleTicks.push(__assign(__assign({}, tick), { axisTickLabel: '' }));
138
+ }
139
+ return prev;
140
+ }, { visibleTicks: [], occupiedSpace: -Infinity }).visibleTicks;
141
+ }
142
+ function getVisibleTickSet(scale, labelBox, _a, axisSpec, _b, groupCount, histogramMode, fallBackTickFormatter, layer, detailedLayer, ticks, labelFormat, isMultilayerTimeAxis) {
143
+ var chartRotation = _a.rotation;
144
+ var timeZone = _b.xDomain.timeZone;
145
+ if (isMultilayerTimeAxis === void 0) { isMultilayerTimeAxis = false; }
146
+ var vertical = (0, axis_type_utils_1.isVerticalAxis)(axisSpec.position);
147
+ var tickFormatter = vertical ? fallBackTickFormatter : axis_utils_1.defaultTickFormatter;
148
+ var somehowRotated = (vertical && chartRotation === -90) || (!vertical && chartRotation === 180);
149
+ var rotationOffset = histogramMode && somehowRotated ? scale.step : 0;
150
+ var tickFormatOptions = labelFormat ? { labelFormat: labelFormat, timeZone: timeZone } : { timeZone: timeZone };
151
+ return getVisibleTicks(axisSpec, labelBox, groupCount, tickFormatter, rotationOffset, scale, histogramMode, tickFormatOptions, layer, detailedLayer, ticks, isMultilayerTimeAxis);
152
+ }
153
+ exports.getVisibleTickSetsSelector = (0, create_selector_1.createCustomCachedSelector)([
154
+ get_settings_specs_1.getSettingsSpecSelector,
155
+ compute_axis_ticks_dimensions_1.getJoinedVisibleAxesData,
156
+ compute_series_domains_1.computeSeriesDomainsSelector,
157
+ compute_small_multiple_scales_1.computeSmallMultipleScalesSelector,
158
+ count_bars_in_cluster_1.countBarsInClusterSelector,
159
+ is_histogram_mode_enabled_1.isHistogramModeEnabledSelector,
160
+ compute_axis_ticks_dimensions_1.getFallBackTickFormatter,
161
+ get_bar_paddings_1.getBarPaddingsSelector,
162
+ ], getVisibleTickSets);
163
+ var notTooDense = function (domainFrom, domainTo, binWidth, cartesianWidth) { return function (raster) {
164
+ var domainInSeconds = domainTo - domainFrom;
165
+ var pixelsPerSecond = cartesianWidth / domainInSeconds;
166
+ return (pixelsPerSecond > raster.minimumPixelsPerSecond &&
167
+ raster.approxWidthInMs * WIDTH_FUDGE >= binWidth &&
168
+ (domainInSeconds * 1000) / MAX_TIME_TICK_COUNT <= raster.approxWidthInMs);
169
+ }; };
170
+ function getVisibleTickSets(_a, joinedAxesData, _b, smScales, totalGroupsCount, enableHistogramMode, fallBackTickFormatter, barsPadding) {
171
+ var chartRotation = _a.rotation;
172
+ var xDomain = _b.xDomain, yDomains = _b.yDomains;
173
+ return (0, canvas_text_bbox_calculator_1.withTextMeasure)(function (textMeasure) {
174
+ var panel = (0, panel_1.getPanelSize)(smScales);
175
+ return __spreadArray([], __read(joinedAxesData), false).reduce(function (acc, _a) {
176
+ var _b;
177
+ var _c = __read(_a, 2), axisId = _c[0], _d = _c[1], axisSpec = _d.axisSpec, axesStyle = _d.axesStyle, gridLine = _d.gridLine, tickFormatter = _d.tickFormatter;
178
+ var groupId = axisSpec.groupId, integersOnly = axisSpec.integersOnly, position = axisSpec.position, timeAxisLayerCount = axisSpec.timeAxisLayerCount;
179
+ var isX = (0, axis_utils_1.isXDomain)(position, chartRotation);
180
+ var yDomain = yDomains.find(function (yd) { return yd.groupId === groupId; });
181
+ var domain = isX ? xDomain : yDomain;
182
+ var range = axisMinMax(axisSpec.position, chartRotation, panel);
183
+ var maxTickCount = (_b = domain === null || domain === void 0 ? void 0 : domain.desiredTickCount) !== null && _b !== void 0 ? _b : 0;
184
+ var isMultilayerTimeAxis = (domain === null || domain === void 0 ? void 0 : domain.type) === constants_1.ScaleType.Time && timeAxisLayerCount > 0;
185
+ var getMeasuredTicks = function (scale, ticks, layer, detailedLayer, labelFormat) {
186
+ var labelBox = (0, compute_axis_ticks_dimensions_1.getLabelBox)(axesStyle, ticks, labelFormat || tickFormatter, textMeasure, axisSpec, gridLine);
187
+ return {
188
+ ticks: getVisibleTickSet(scale, labelBox, { rotation: chartRotation }, axisSpec, { xDomain: xDomain }, totalGroupsCount, enableHistogramMode, fallBackTickFormatter, layer, detailedLayer, ticks, labelFormat, isMultilayerTimeAxis),
189
+ labelBox: labelBox,
190
+ scale: scale,
191
+ };
192
+ };
193
+ var getScale = function (desiredTickCount) {
194
+ return isX
195
+ ? (0, scales_2.computeXScale)({
196
+ xDomain: __assign(__assign({}, xDomain), { desiredTickCount: desiredTickCount }),
197
+ totalBarsInCluster: totalGroupsCount,
198
+ range: range,
199
+ barsPadding: barsPadding,
200
+ enableHistogramMode: enableHistogramMode,
201
+ integersOnly: integersOnly,
202
+ })
203
+ : yDomain && new scales_1.ScaleContinuous(__assign(__assign({}, yDomain), { range: range }), __assign(__assign({}, yDomain), { desiredTickCount: desiredTickCount, integersOnly: integersOnly }));
204
+ };
205
+ var fillLayerTimeslip = function (layer, detailedLayer, timeTicks, labelFormat) {
206
+ var scale = getScale(100);
207
+ if (!scale)
208
+ throw new Error('Scale generation for the multilayer axis failed');
209
+ return {
210
+ entry: getMeasuredTicks(scale, timeTicks, layer, detailedLayer, labelFormat),
211
+ fallbackAskedTickCount: NaN,
212
+ };
213
+ };
214
+ var fillLayer = function (maxTickCountForLayer) {
215
+ var _a;
216
+ var fallbackAskedTickCount = 2;
217
+ var fallbackReceivedTickCount = Infinity;
218
+ if (adaptiveTickCount) {
219
+ var previousActualTickCount = NaN;
220
+ for (var triedTickCount = maxTickCountForLayer; triedTickCount >= 1; triedTickCount--) {
221
+ var scale_1 = getScale(triedTickCount);
222
+ var actualTickCount = (_a = scale_1 === null || scale_1 === void 0 ? void 0 : scale_1.ticks().length) !== null && _a !== void 0 ? _a : 0;
223
+ if (!scale_1 || actualTickCount === previousActualTickCount || actualTickCount < 2)
224
+ continue;
225
+ var raster = getMeasuredTicks(scale_1, scale_1.ticks(), undefined, 0);
226
+ var nonZeroLengthTicks = raster.ticks.filter(function (tick) { return tick.axisTickLabel.length > 0; });
227
+ var uniqueLabels = new Set(raster.ticks.map(function (tick) { return tick.axisTickLabel; }));
228
+ var areLabelsUnique = raster.ticks.length === uniqueLabels.size;
229
+ var areAdjacentTimeLabelsUnique = scale_1.type === constants_1.ScaleType.Time &&
230
+ !axisSpec.showDuplicatedTicks &&
231
+ (areLabelsUnique ||
232
+ raster.ticks.every(function (d, i, a) { return i === 0 || d.axisTickLabel !== a[i - 1].axisTickLabel; }));
233
+ var atLeastTwoTicks = uniqueLabels.size >= 2;
234
+ var allTicksFit = !uniqueLabels.has('');
235
+ var compliant = axisSpec &&
236
+ (scale_1.type === constants_1.ScaleType.Time || atLeastTwoTicks) &&
237
+ (scale_1.type === constants_1.ScaleType.Log || allTicksFit) &&
238
+ ((scale_1.type === constants_1.ScaleType.Time && (axisSpec.showDuplicatedTicks || areAdjacentTimeLabelsUnique)) ||
239
+ (scale_1.type === constants_1.ScaleType.Log
240
+ ? new Set(nonZeroLengthTicks.map(function (tick) { return tick.axisTickLabel; })).size === nonZeroLengthTicks.length
241
+ : areLabelsUnique));
242
+ previousActualTickCount = actualTickCount;
243
+ if (raster && compliant) {
244
+ return {
245
+ entry: __assign(__assign({}, raster), { ticks: scale_1.type === constants_1.ScaleType.Log ? raster.ticks : nonZeroLengthTicks }),
246
+ fallbackAskedTickCount: fallbackAskedTickCount,
247
+ };
248
+ }
249
+ else if (atLeastTwoTicks && uniqueLabels.size <= fallbackReceivedTickCount) {
250
+ fallbackReceivedTickCount = uniqueLabels.size;
251
+ fallbackAskedTickCount = triedTickCount;
252
+ }
253
+ }
254
+ }
255
+ return { fallbackAskedTickCount: fallbackAskedTickCount };
256
+ };
257
+ if (isMultilayerTimeAxis) {
258
+ var rasterSelector = (0, rasters_1.rasters)({ minimumTickPixelDistance: 24, locale: 'en-US' }, xDomain.timeZone);
259
+ var domainValues = domain.domain;
260
+ var domainFromS_1 = Number((domain && domainValues[0]) || NaN) / 1000;
261
+ var extendByOneBin = isX && xDomain.isBandScale && enableHistogramMode;
262
+ var binWidth = xDomain.minInterval;
263
+ var domainExtension = extendByOneBin ? binWidth : 0;
264
+ var domainToS_1 = (((domain && Number(domainValues[domainValues.length - 1])) || NaN) + domainExtension) / 1000;
265
+ var layers = rasterSelector(notTooDense(domainFromS_1, domainToS_1, binWidth, Math.abs(range[1] - range[0])));
266
+ var layerIndex_1 = 0;
267
+ return acc.set(axisId, layers.reduce(function (combinedEntry, l, detailedLayerIndex) {
268
+ if (layerIndex_1 >= timeAxisLayerCount)
269
+ return combinedEntry;
270
+ var entry = fillLayerTimeslip(layerIndex_1, detailedLayerIndex, __spreadArray([], __read(l.binStarts(domainFromS_1, domainToS_1)), false).filter(function (b) { return b.nextTimePointSec > domainFromS_1 && b.timePointSec < domainToS_1; })
271
+ .map(function (b) { return 1000 * Math.max(domainFromS_1, b.timePointSec); }), !l.labeled
272
+ ? function () { return ''; }
273
+ : layerIndex_1 === timeAxisLayerCount - 1
274
+ ? l.detailedLabelFormat
275
+ : l.minorTickLabelFormat).entry;
276
+ if (l.labeled)
277
+ layerIndex_1++;
278
+ var minLabelGap = 4;
279
+ var lastTick = entry.ticks[entry.ticks.length - 1];
280
+ if (lastTick && lastTick.position + entry.labelBox.maxLabelBboxWidth > range[1]) {
281
+ lastTick.axisTickLabel = '';
282
+ }
283
+ return __assign(__assign(__assign({}, entry), combinedEntry), { ticks: (combinedEntry.ticks || []).concat(entry.ticks.filter(function (tick, i, a) {
284
+ return i > 0 || !a[1] || a[1].position - tick.position >= entry.labelBox.maxLabelBboxWidth + minLabelGap;
285
+ })) });
286
+ }, { ticks: [] }));
287
+ }
288
+ var _e = fillLayer(maxTickCount), fallbackAskedTickCount = _e.fallbackAskedTickCount, entry = _e.entry;
289
+ if (entry)
290
+ return acc.set(axisId, entry);
291
+ var scale = getScale(adaptiveTickCount ? fallbackAskedTickCount : maxTickCount);
292
+ var lastResortCandidate = scale && getMeasuredTicks(scale, scale.ticks(), undefined, 0);
293
+ return lastResortCandidate ? acc.set(axisId, lastResortCandidate) : acc;
294
+ }, new Map());
295
+ });
296
+ }
297
+ //# sourceMappingURL=visible_ticks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visible_ticks.js","sourceRoot":"","sources":["../../../../../src/chart_types/xy_chart/state/selectors/visible_ticks.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,17 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getSpecDomainGroupId = exports.getAxesSpecForSpecId = exports.getSpecsById = void 0;
4
4
  var specs_1 = require("../../../../specs");
5
- var axis_type_utils_1 = require("../../utils/axis_type_utils");
5
+ var axis_utils_1 = require("../../utils/axis_utils");
6
6
  function getSpecsById(specs, id) {
7
7
  return specs.find(function (spec) { return spec.id === id; });
8
8
  }
9
9
  exports.getSpecsById = getSpecsById;
10
- function getAxesSpecForSpecId(axesSpecs, groupId) {
10
+ function getAxesSpecForSpecId(axesSpecs, groupId, chartRotation) {
11
+ if (chartRotation === void 0) { chartRotation = 0; }
11
12
  return axesSpecs.reduce(function (result, spec) {
12
- if (spec.groupId === groupId && (0, axis_type_utils_1.isHorizontalAxis)(spec.position))
13
+ if (spec.groupId === groupId && (0, axis_utils_1.isXDomain)(spec.position, chartRotation))
13
14
  result.xAxis = spec;
14
- if (spec.groupId === groupId && (0, axis_type_utils_1.isVerticalAxis)(spec.position))
15
+ else if (spec.groupId === groupId && !(0, axis_utils_1.isXDomain)(spec.position, chartRotation))
15
16
  result.yAxis = spec;
16
17
  return result;
17
18
  }, {});
@@ -1 +1 @@
1
- {"version":3,"file":"spec.js","sourceRoot":"","sources":["../../../../../src/chart_types/xy_chart/state/utils/spec.ts"],"names":[],"mappings":";;;AAQA,2CAA6E;AAE7E,+DAA+E;AAI/E,SAAgB,YAAY,CAAiB,KAAU,EAAE,EAAU;IACjE,OAAO,KAAK,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,EAAE,KAAK,EAAE,EAAd,CAAc,CAAC,CAAC;AAC9C,CAAC;AAFD,oCAEC;AAGD,SAAgB,oBAAoB,CAAC,SAAqB,EAAE,OAAgB;IAC1E,OAAO,SAAS,CAAC,MAAM,CAAyC,UAAC,MAAM,EAAE,IAAI;QAC3E,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,IAAA,kCAAgB,EAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QACrF,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,IAAA,gCAAc,EAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QACnF,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAND,oDAMC;AAGD,SAAgB,oBAAoB,CAAC,IAAqB;IACxD,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IACD,OAAO,OAAO,IAAI,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,yBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;AAC1G,CAAC;AALD,oDAKC"}
1
+ {"version":3,"file":"spec.js","sourceRoot":"","sources":["../../../../../src/chart_types/xy_chart/state/utils/spec.ts"],"names":[],"mappings":";;;AAQA,2CAA6E;AAG7E,qDAAmD;AAInD,SAAgB,YAAY,CAAiB,KAAU,EAAE,EAAU;IACjE,OAAO,KAAK,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,EAAE,KAAK,EAAE,EAAd,CAAc,CAAC,CAAC;AAC9C,CAAC;AAFD,oCAEC;AAGD,SAAgB,oBAAoB,CAAC,SAAqB,EAAE,OAAgB,EAAE,aAA2B;IAA3B,8BAAA,EAAA,iBAA2B;IACvG,OAAO,SAAS,CAAC,MAAM,CAAyC,UAAC,MAAM,EAAE,IAAI;QAC3E,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,IAAA,sBAAS,EAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC;YAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;aACxF,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC;YAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QACnG,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAND,oDAMC;AAGD,SAAgB,oBAAoB,CAAC,IAAqB;IACxD,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IACD,OAAO,OAAO,IAAI,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,yBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;AAC1G,CAAC;AALD,oDAKC"}
@@ -58,7 +58,6 @@ var area_1 = require("../../rendering/area");
58
58
  var bars_1 = require("../../rendering/bars");
59
59
  var bubble_1 = require("../../rendering/bubble");
60
60
  var line_1 = require("../../rendering/line");
61
- var axis_utils_1 = require("../../utils/axis_utils");
62
61
  var default_series_sort_fn_1 = require("../../utils/default_series_sort_fn");
63
62
  var fill_series_1 = require("../../utils/fill_series");
64
63
  var group_data_series_1 = require("../../utils/group_data_series");
@@ -102,13 +101,14 @@ function getCustomSeriesColors(dataSeries) {
102
101
  return updatedCustomSeriesColors;
103
102
  }
104
103
  exports.getCustomSeriesColors = getCustomSeriesColors;
105
- function computeSeriesDomains(seriesSpecs, scaleConfigs, deselectedDataSeries, orderOrdinalBinsBy, smallMultiples, sortSeriesBy) {
104
+ function computeSeriesDomains(seriesSpecs, scaleConfigs, deselectedDataSeries, settingsSpec, smallMultiples) {
106
105
  var _a, _b, _c, _d;
107
106
  if (deselectedDataSeries === void 0) { deselectedDataSeries = []; }
107
+ var orderOrdinalBinsBy = settingsSpec === null || settingsSpec === void 0 ? void 0 : settingsSpec.orderOrdinalBinsBy;
108
108
  var _e = (0, series_1.getDataSeriesFromSpecs)(seriesSpecs, deselectedDataSeries, orderOrdinalBinsBy, smallMultiples), dataSeries = _e.dataSeries, xValues = _e.xValues, fallbackScale = _e.fallbackScale, smHValues = _e.smHValues, smVValues = _e.smVValues;
109
109
  var xDomain = (0, x_domain_1.mergeXDomain)(scaleConfigs.x, xValues, fallbackScale);
110
110
  var filledDataSeries = (0, fill_series_1.fillSeries)(dataSeries, xValues, xDomain.type);
111
- var seriesSortFn = (0, series_sort_1.getRenderingCompareFn)(sortSeriesBy, function (a, b) {
111
+ var seriesSortFn = (0, series_sort_1.getRenderingCompareFn)(function (a, b) {
112
112
  return (0, default_series_sort_fn_1.defaultXYSeriesSort)(a, b);
113
113
  });
114
114
  var formattedDataSeries = (0, series_1.getFormattedDataSeries)(seriesSpecs, filledDataSeries, xValues, xDomain.type).sort(seriesSortFn);
@@ -126,8 +126,9 @@ function computeSeriesDomains(seriesSpecs, scaleConfigs, deselectedDataSeries, o
126
126
  };
127
127
  }
128
128
  exports.computeSeriesDomains = computeSeriesDomains;
129
- function computeSeriesGeometries(seriesSpecs, _a, seriesColorMap, chartTheme, chartRotation, axesSpecs, smallMultiplesScales, enableHistogramMode) {
129
+ function computeSeriesGeometries(seriesSpecs, _a, seriesColorMap, chartTheme, _b, axesSpecs, smallMultiplesScales, enableHistogramMode, fallbackTickFormatter) {
130
130
  var xDomain = _a.xDomain, yDomains = _a.yDomains, nonFilteredDataSeries = _a.formattedDataSeries;
131
+ var chartRotation = _b.rotation;
131
132
  var chartColors = chartTheme.colors;
132
133
  var formattedDataSeries = nonFilteredDataSeries.filter(function (_a) {
133
134
  var isFiltered = _a.isFiltered;
@@ -149,7 +150,7 @@ function computeSeriesGeometries(seriesSpecs, _a, seriesColorMap, chartTheme, ch
149
150
  yDomains: yDomains,
150
151
  range: [(0, common_2.isHorizontalRotation)(chartRotation) ? vertical.bandwidth : horizontal.bandwidth, 0],
151
152
  });
152
- var computedGeoms = renderGeometries(formattedDataSeries, xDomain, yScales, vertical, horizontal, barIndexByPanel, seriesSpecs, seriesColorMap, chartColors.defaultVizColor, axesSpecs, chartTheme, enableHistogramMode, chartRotation);
153
+ var computedGeoms = renderGeometries(formattedDataSeries, xDomain, yScales, vertical, horizontal, barIndexByPanel, seriesSpecs, seriesColorMap, chartColors.defaultVizColor, axesSpecs, chartTheme, enableHistogramMode, chartRotation, fallbackTickFormatter);
153
154
  var totalBarsInCluster = Object.values(barIndexByPanel).reduce(function (acc, curr) { return Math.max(acc, curr.length); }, 0);
154
155
  var xScale = (0, scales_1.computeXScale)({
155
156
  xDomain: xDomain,
@@ -158,35 +159,26 @@ function computeSeriesGeometries(seriesSpecs, _a, seriesColorMap, chartTheme, ch
158
159
  barsPadding: enableHistogramMode ? chartTheme.scales.histogramPadding : chartTheme.scales.barsPadding,
159
160
  enableHistogramMode: enableHistogramMode,
160
161
  });
161
- return __assign({ scales: {
162
- xScale: xScale,
163
- yScales: yScales,
164
- } }, computedGeoms);
162
+ return __assign({ scales: { xScale: xScale, yScales: yScales } }, computedGeoms);
165
163
  }
166
164
  exports.computeSeriesGeometries = computeSeriesGeometries;
167
165
  function setBarSeriesAccessors(isHistogramMode, seriesSpecs) {
168
166
  var e_1, _a;
169
- if (!isHistogramMode) {
170
- return;
171
- }
172
- try {
173
- for (var seriesSpecs_1 = __values(seriesSpecs), seriesSpecs_1_1 = seriesSpecs_1.next(); !seriesSpecs_1_1.done; seriesSpecs_1_1 = seriesSpecs_1.next()) {
174
- var _b = __read(seriesSpecs_1_1.value, 2), spec = _b[1];
175
- if ((0, specs_1.isBarSeriesSpec)(spec)) {
176
- var stackAccessors = spec.stackAccessors ? __spreadArray([], __read(spec.stackAccessors), false) : spec.yAccessors;
177
- if (spec.splitSeriesAccessors) {
178
- stackAccessors = __spreadArray(__spreadArray([], __read(stackAccessors), false), __read(spec.splitSeriesAccessors), false);
179
- }
180
- spec.stackAccessors = stackAccessors;
167
+ if (isHistogramMode) {
168
+ try {
169
+ for (var seriesSpecs_1 = __values(seriesSpecs), seriesSpecs_1_1 = seriesSpecs_1.next(); !seriesSpecs_1_1.done; seriesSpecs_1_1 = seriesSpecs_1.next()) {
170
+ var _b = __read(seriesSpecs_1_1.value, 2), spec = _b[1];
171
+ if ((0, specs_1.isBarSeriesSpec)(spec))
172
+ spec.stackAccessors = __spreadArray(__spreadArray([], __read((spec.stackAccessors || spec.yAccessors)), false), __read((spec.splitSeriesAccessors || [])), false);
181
173
  }
182
174
  }
183
- }
184
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
185
- finally {
186
- try {
187
- if (seriesSpecs_1_1 && !seriesSpecs_1_1.done && (_a = seriesSpecs_1.return)) _a.call(seriesSpecs_1);
175
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
176
+ finally {
177
+ try {
178
+ if (seriesSpecs_1_1 && !seriesSpecs_1_1.done && (_a = seriesSpecs_1.return)) _a.call(seriesSpecs_1);
179
+ }
180
+ finally { if (e_1) throw e_1.error; }
188
181
  }
189
- finally { if (e_1) throw e_1.error; }
190
182
  }
191
183
  }
192
184
  exports.setBarSeriesAccessors = setBarSeriesAccessors;
@@ -213,8 +205,8 @@ function computeXScaleOffset(xScale, enableHistogramMode, histogramModeAlignment
213
205
  }
214
206
  }
215
207
  exports.computeXScaleOffset = computeXScaleOffset;
216
- function renderGeometries(dataSeries, xDomain, yScales, smVScale, smHScale, barIndexOrderPerPanel, seriesSpecs, seriesColorsMap, defaultColor, axesSpecs, chartTheme, enableHistogramMode, chartRotation) {
217
- var _a, _b, _c, _d, _e;
208
+ function renderGeometries(dataSeries, xDomain, yScales, smVScale, smHScale, barIndexOrderPerPanel, seriesSpecs, seriesColorsMap, defaultColor, axesSpecs, chartTheme, enableHistogramMode, chartRotation, fallBackTickFormatter) {
209
+ var _a, _b, _c;
218
210
  var len = dataSeries.length;
219
211
  var i;
220
212
  var points = [];
@@ -227,10 +219,6 @@ function renderGeometries(dataSeries, xDomain, yScales, smVScale, smHScale, barI
227
219
  var seriesType = _a.seriesType;
228
220
  return seriesType;
229
221
  }) && seriesSpecs.length > 1;
230
- var fallBackTickFormatter = (_b = (_a = seriesSpecs.find(function (_a) {
231
- var tickFormat = _a.tickFormat;
232
- return tickFormat;
233
- })) === null || _a === void 0 ? void 0 : _a.tickFormat) !== null && _b !== void 0 ? _b : axis_utils_1.defaultTickFormatter;
234
222
  var geometriesCounts = {
235
223
  points: 0,
236
224
  bars: 0,
@@ -256,7 +244,7 @@ function renderGeometries(dataSeries, xDomain, yScales, smVScale, smHScale, barI
256
244
  var barIndexOrder = barIndexOrderPerPanel[barPanelKey];
257
245
  var xScale = (0, scales_1.computeXScale)({
258
246
  xDomain: xDomain,
259
- totalBarsInCluster: (_c = barIndexOrder === null || barIndexOrder === void 0 ? void 0 : barIndexOrder.length) !== null && _c !== void 0 ? _c : 0,
247
+ totalBarsInCluster: (_a = barIndexOrder === null || barIndexOrder === void 0 ? void 0 : barIndexOrder.length) !== null && _a !== void 0 ? _a : 0,
260
248
  range: [0, (0, common_2.isHorizontalRotation)(chartRotation) ? smHScale.bandwidth : smVScale.bandwidth],
261
249
  barsPadding: barsPadding,
262
250
  enableHistogramMode: enableHistogramMode,
@@ -277,30 +265,23 @@ function renderGeometries(dataSeries, xDomain, yScales, smVScale, smHScale, barI
277
265
  }, ds.groupId);
278
266
  var color = seriesColorsMap.get(dataSeriesKey) || defaultColor;
279
267
  if ((0, specs_1.isBarSeriesSpec)(spec)) {
280
- var key = getBarIndexKey(ds, enableHistogramMode);
281
- var shift = barIndexOrder.indexOf(key);
282
- if (shift === -1) {
268
+ var shift = barIndexOrder.indexOf(getBarIndexKey(ds, enableHistogramMode));
269
+ if (shift === -1)
283
270
  continue;
284
- }
285
- var barSeriesStyle = (0, common_1.mergePartial)(chartTheme.barSeriesStyle, spec.barSeriesStyle, {
286
- mergeOptionalPartialValues: true,
287
- });
288
- var yAxis = (0, spec_1.getAxesSpecForSpecId)(axesSpecs, spec.groupId).yAxis;
289
- var valueFormatter = (_d = yAxis === null || yAxis === void 0 ? void 0 : yAxis.tickFormat) !== null && _d !== void 0 ? _d : fallBackTickFormatter;
271
+ var barSeriesStyle = (0, common_1.mergePartial)(chartTheme.barSeriesStyle, spec.barSeriesStyle);
272
+ var yAxis = (0, spec_1.getAxesSpecForSpecId)(axesSpecs, spec.groupId, chartRotation).yAxis;
273
+ var valueFormatter = (_b = yAxis === null || yAxis === void 0 ? void 0 : yAxis.tickFormat) !== null && _b !== void 0 ? _b : fallBackTickFormatter;
290
274
  var displayValueSettings = spec.displayValueSettings
291
275
  ? __assign({ valueFormatter: valueFormatter }, spec.displayValueSettings) : undefined;
292
- var renderedBars = (0, bars_1.renderBars)(shift, ds, xScale, yScale, panel, chartRotation, (_e = spec.minBarHeight) !== null && _e !== void 0 ? _e : 0, color, barSeriesStyle, displayValueSettings, spec.styleAccessor, stackMode);
276
+ var renderedBars = (0, bars_1.renderBars)(shift, ds, xScale, yScale, panel, chartRotation, (_c = spec.minBarHeight) !== null && _c !== void 0 ? _c : 0, color, barSeriesStyle, displayValueSettings, spec.styleAccessor, stackMode);
293
277
  geometriesIndex.merge(renderedBars.indexedGeometryMap);
294
- bars.push({
295
- panel: panel,
296
- value: renderedBars.barGeometries,
297
- });
278
+ bars.push({ panel: panel, value: renderedBars.barGeometries });
298
279
  geometriesCounts.bars += renderedBars.barGeometries.length;
299
280
  }
300
281
  else if ((0, specs_1.isBubbleSeriesSpec)(spec)) {
301
282
  var bubbleShift = barIndexOrder && barIndexOrder.length > 0 ? barIndexOrder.length : 1;
302
283
  var bubbleSeriesStyle = spec.bubbleSeriesStyle
303
- ? (0, common_1.mergePartial)(chartTheme.bubbleSeriesStyle, spec.bubbleSeriesStyle, { mergeOptionalPartialValues: true })
284
+ ? (0, common_1.mergePartial)(chartTheme.bubbleSeriesStyle, spec.bubbleSeriesStyle)
304
285
  : chartTheme.bubbleSeriesStyle;
305
286
  var xScaleOffset = computeXScaleOffset(xScale, enableHistogramMode);
306
287
  var renderedBubbles = (0, bubble_1.renderBubble)((xScale.bandwidth * bubbleShift) / 2, ds, xScale, yScale, color, panel, (0, specs_1.isBandedSpec)(spec.y0Accessors), xScaleOffset, bubbleSeriesStyle, {
@@ -318,7 +299,7 @@ function renderGeometries(dataSeries, xDomain, yScales, smVScale, smHScale, barI
318
299
  else if ((0, specs_1.isLineSeriesSpec)(spec)) {
319
300
  var lineShift = barIndexOrder && barIndexOrder.length > 0 ? barIndexOrder.length : 1;
320
301
  var lineSeriesStyle = spec.lineSeriesStyle
321
- ? (0, common_1.mergePartial)(chartTheme.lineSeriesStyle, spec.lineSeriesStyle, { mergeOptionalPartialValues: true })
302
+ ? (0, common_1.mergePartial)(chartTheme.lineSeriesStyle, spec.lineSeriesStyle)
322
303
  : chartTheme.lineSeriesStyle;
323
304
  var xScaleOffset = computeXScaleOffset(xScale, enableHistogramMode, spec.histogramModeAlignment);
324
305
  var renderedLines = (0, line_1.renderLine)((xScale.bandwidth * lineShift) / 2, ds, xScale, yScale, panel, color, spec.curve || curves_1.CurveType.LINEAR, (0, specs_1.isBandedSpec)(spec.y0Accessors), xScaleOffset, lineSeriesStyle, {
@@ -336,7 +317,7 @@ function renderGeometries(dataSeries, xDomain, yScales, smVScale, smHScale, barI
336
317
  else if ((0, specs_1.isAreaSeriesSpec)(spec)) {
337
318
  var areaShift = barIndexOrder && barIndexOrder.length > 0 ? barIndexOrder.length : 1;
338
319
  var areaSeriesStyle = spec.areaSeriesStyle
339
- ? (0, common_1.mergePartial)(chartTheme.areaSeriesStyle, spec.areaSeriesStyle, { mergeOptionalPartialValues: true })
320
+ ? (0, common_1.mergePartial)(chartTheme.areaSeriesStyle, spec.areaSeriesStyle)
340
321
  : chartTheme.areaSeriesStyle;
341
322
  var xScaleOffset = computeXScaleOffset(xScale, enableHistogramMode, spec.histogramModeAlignment);
342
323
  var renderedAreas = (0, area_1.renderArea)((xScale.bandwidth * areaShift) / 2, ds, xScale, yScale, panel, color, spec.curve || curves_1.CurveType.LINEAR, (0, specs_1.isBandedSpec)(spec.y0Accessors), xScaleOffset, areaSeriesStyle, {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/chart_types/xy_chart/state/utils/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/chart_types/xy_chart/state/utils/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,0DAAyE;AAIzE,mDAAiF;AACjF,mDAAqD;AAWrD,6DAAsE;AAGtE,mDAAsD;AACtD,mDAAqE;AACrE,6CAAkD;AAClD,6CAAkD;AAClD,iDAAsD;AACtD,6CAAkD;AAClD,6EAAyE;AACzE,uDAAqD;AACrD,mEAAwD;AACxD,yEAAsE;AACtE,6CAAmE;AACnE,6CAA8G;AAC9G,2CAY2B;AAI3B,mCAAgD;AAChD,+BAAkF;AAQlF,SAAgB,qBAAqB,CAAC,UAAwB;IAC5D,IAAM,yBAAyB,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC9D,IAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE3C,UAAU,CAAC,OAAO,CAAC,UAAC,EAAE;QACZ,IAAA,IAAI,GAAa,EAAE,KAAf,EAAE,MAAM,GAAK,EAAE,OAAP,CAAQ;QAC5B,IAAM,aAAa,GAAG;YACpB,MAAM,EAAE,EAAE,CAAC,MAAM;YACjB,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,cAAc,EAAE,EAAE,CAAC,cAAc;YACjC,uBAAuB,EAAE,SAAS;YAClC,yBAAyB,EAAE,SAAS;SACrC,CAAC;QACF,IAAM,SAAS,GAAG,IAAA,qBAAY,EAAC,aAAa,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QAE1D,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACxB,OAAO;SACR;QAED,IAAI,KAA+B,CAAC;QAEpC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE;YACxB,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;gBAElC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;aACpB;iBAAM;gBACL,IAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC1C,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC7F,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;aACnC;SACF;QAED,IAAI,KAAK,EAAE;YACT,yBAAyB,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;SACjD;IACH,CAAC,CAAC,CAAC;IACH,OAAO,yBAAyB,CAAC;AACnC,CAAC;AArCD,sDAqCC;AAMD,SAAgB,oBAAoB,CAClC,WAA8B,EAC9B,YAA0B,EAC1B,oBAA6C,EAC7C,YAAuD,EACvD,cAAsC;;IAFtC,qCAAA,EAAA,yBAA6C;IAI7C,IAAM,kBAAkB,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,kBAAkB,CAAC;IACtD,IAAA,KAA+D,IAAA,+BAAsB,EACzF,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,CACf,EALO,UAAU,gBAAA,EAAE,OAAO,aAAA,EAAE,aAAa,mBAAA,EAAE,SAAS,eAAA,EAAE,SAAS,eAK/D,CAAC;IAEF,IAAM,OAAO,GAAG,IAAA,uBAAY,EAAC,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAGrE,IAAM,gBAAgB,GAAG,IAAA,wBAAU,EAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvE,IAAM,YAAY,GAAG,IAAA,mCAAqB,EAAC,UAAC,CAAmB,EAAE,CAAmB;QAClF,OAAO,IAAA,4CAAmB,EAAC,CAAe,EAAE,CAAe,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAM,mBAAmB,GAAG,IAAA,+BAAsB,EAAC,WAAW,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAC3G,YAAY,CACb,CAAC;IAGF,IAAM,QAAQ,GAAG,IAAA,uBAAY,EAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAGnE,IAAM,mBAAmB,GAAG,MAAA,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU,0CAAE,IAAI,mCAAI,qBAAS,CAAC,SAAS,CAAC;IACpF,IAAM,SAAS,GAAG,yBAAI,SAAS,UAAE,IAAI,CAAC,IAAA,0BAAc,EAAC,mBAAmB,CAAC,CAAC,CAAC;IAE3E,IAAM,iBAAiB,GAAG,MAAA,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,QAAQ,0CAAE,IAAI,mCAAI,qBAAS,CAAC,SAAS,CAAC;IAChF,IAAM,SAAS,GAAG,yBAAI,SAAS,UAAE,IAAI,CAAC,IAAA,0BAAc,EAAC,iBAAiB,CAAC,CAAC,CAAC;IAEzE,OAAO;QACL,OAAO,SAAA;QACP,QAAQ,UAAA;QACR,SAAS,WAAA;QACT,SAAS,WAAA;QACT,mBAAmB,qBAAA;KACpB,CAAC;AACJ,CAAC;AA7CD,oDA6CC;AAGD,SAAgB,uBAAuB,CACrC,WAA8B,EAC9B,EAAuF,EACvF,cAAqC,EACrC,UAAiB,EACjB,EAA2D,EAC3D,SAAqB,EACrB,oBAAyC,EACzC,mBAA4B,EAC5B,qBAAoC;QAPlC,OAAO,aAAA,EAAE,QAAQ,cAAA,EAAuB,qBAAqB,yBAAA;QAGnD,aAAa,cAAA;IAMzB,IAAM,WAAW,GAAgB,UAAU,CAAC,MAAM,CAAC;IACnD,IAAM,mBAAmB,GAAG,qBAAqB,CAAC,MAAM,CAAC,UAAC,EAAc;YAAZ,UAAU,gBAAA;QAAO,OAAA,CAAC,UAAU;IAAX,CAAW,CAAC,CAAC;IAC1F,IAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAC,EAAQ;YAAN,IAAI,UAAA;QAAO,OAAA,IAAA,uBAAe,EAAC,IAAI,CAAC;IAArB,CAAqB,CAAC,CAAC;IAEtF,IAAM,wBAAwB,GAAG,IAAA,2BAAO,EACtC,aAAa,EACb,CAAC,yBAAyB,EAAE,2BAA2B,CAAC,EACxD,KAAK,CACN,CAAC;IAEF,IAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,MAAM,CAA2B,UAAC,GAAG,EAAE,QAAQ;QAC3G,IAAM,SAAS,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAM,uBAAuB,GAAG,IAAA,2BAAO,EAAC,SAAS,EAAE,UAAC,CAAC,IAAK,OAAA,cAAc,CAAC,CAAC,EAAE,mBAAmB,CAAC,EAAtC,CAAsC,EAAE,KAAK,CAAC,CAAC;QACzG,GAAG,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACrD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEC,IAAA,UAAU,GAAe,oBAAoB,WAAnC,EAAE,QAAQ,GAAK,oBAAoB,SAAzB,CAA0B;IAEtD,IAAM,OAAO,GAAG,IAAA,uBAAc,EAAC;QAC7B,QAAQ,UAAA;QACR,KAAK,EAAE,CAAC,IAAA,6BAAoB,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;KAC5F,CAAC,CAAC;IAEH,IAAM,aAAa,GAAG,gBAAgB,CACpC,mBAAmB,EACnB,OAAO,EACP,OAAO,EACP,QAAQ,EACR,UAAU,EACV,eAAe,EACf,WAAW,EACX,cAAc,EACd,WAAW,CAAC,eAAe,EAC3B,SAAS,EACT,UAAU,EACV,mBAAmB,EACnB,aAAa,EACb,qBAAqB,CACtB,CAAC;IAEF,IAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,UAAC,GAAG,EAAE,IAAI,IAAK,OAAA,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,EAA1B,CAA0B,EAAE,CAAC,CAAC,CAAC;IAE/G,IAAM,MAAM,GAAG,IAAA,sBAAa,EAAC;QAC3B,OAAO,SAAA;QACP,kBAAkB,oBAAA;QAClB,KAAK,EAAE,CAAC,CAAC,EAAE,IAAA,6BAAoB,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC3F,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW;QACrG,mBAAmB,qBAAA;KACpB,CAAC,CAAC;IAEH,kBAAS,MAAM,EAAE,EAAE,MAAM,QAAA,EAAE,OAAO,SAAA,EAAE,IAAK,aAAa,EAAG;AAC3D,CAAC;AA/DD,0DA+DC;AAGD,SAAgB,qBAAqB,CAAC,eAAwB,EAAE,WAAyC;;IACvG,IAAI,eAAe,EAAE;;YACnB,KAAuB,IAAA,gBAAA,SAAA,WAAW,CAAA,wCAAA,iEAAE;gBAAzB,IAAA,KAAA,gCAAQ,EAAL,IAAI,QAAA;gBAChB,IAAI,IAAA,uBAAe,EAAC,IAAI,CAAC;oBACvB,IAAI,CAAC,cAAc,0CAAO,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAK,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,SAAC,CAAC;aAC7G;;;;;;;;;KACF;AACH,CAAC;AAPD,sDAOC;AAGD,SAAgB,sBAAsB,CAAC,WAA8B;IACnE,OAAO,WAAW,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAA,uBAAe,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,mBAAmB,EAAjD,CAAiD,CAAC,CAAC;AACvF,CAAC;AAFD,wDAEC;AAGD,SAAgB,mBAAmB,CACjC,MAA8B,EAC9B,mBAA4B,EAC5B,sBAA8E;IAA9E,uCAAA,EAAA,yBAAiD,+BAAuB,CAAC,KAAK;IAE9E,IAAI,CAAC,mBAAmB,EAAE;QACxB,OAAO,CAAC,CAAC;KACV;IAEO,IAAA,SAAS,GAAkB,MAAM,UAAxB,EAAE,WAAW,GAAK,MAAM,YAAX,CAAY;IAC1C,IAAM,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;IAC3C,IAAM,WAAW,GAAG,CAAC,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAE3C,IAAM,oBAAoB,GAAG,SAAS,GAAG,CAAC,GAAG,WAAW,CAAC;IAEzD,QAAQ,sBAAsB,EAAE;QAC9B,KAAK,+BAAuB,CAAC,MAAM;YACjC,OAAO,CAAC,CAAC;QACX,KAAK,+BAAuB,CAAC,GAAG;YAC9B,OAAO,CAAC,oBAAoB,CAAC;QAC/B;YACE,OAAO,oBAAoB,CAAC;KAC/B;AACH,CAAC;AAvBD,kDAuBC;AAED,SAAS,gBAAgB,CACvB,UAAwB,EACxB,OAAgB,EAChB,OAAoC,EACpC,QAAgC,EAChC,QAAgC,EAChC,qBAA+C,EAC/C,WAA8B,EAC9B,eAAsC,EACtC,YAAoB,EACpB,SAAqB,EACrB,UAAiB,EACjB,mBAA4B,EAC5B,aAAuB,EACvB,qBAAoC;;IAEpC,IAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC;IAC9B,IAAI,CAAC,CAAC;IACN,IAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,IAAM,IAAI,GAAmC,EAAE,CAAC;IAChD,IAAM,KAAK,GAAkC,EAAE,CAAC;IAChD,IAAM,KAAK,GAAkC,EAAE,CAAC;IAChD,IAAM,OAAO,GAAoC,EAAE,CAAC;IACpD,IAAM,eAAe,GAAG,IAAI,yCAAkB,EAAE,CAAC;IACjD,IAAM,YAAY,GAAG,IAAA,sBAAa,EAAC,WAAW,EAAE,UAAC,EAAc;YAAZ,UAAU,gBAAA;QAAO,OAAA,UAAU;IAAV,CAAU,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1G,IAAM,gBAAgB,GAAqB;QACzC,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;QACR,WAAW,EAAE,CAAC;QACd,KAAK,EAAE,CAAC;QACR,UAAU,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;QACV,YAAY,EAAE,CAAC;KAChB,CAAC;IACF,IAAM,WAAW,GAAG,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC;IAE7G,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;QACxB,IAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACzB,IAAM,IAAI,GAAG,IAAA,mBAAY,EAAkB,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QACnE,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,SAAS;SACV;QAED,IAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAA,2BAAoB,EAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,EAAE;YACX,SAAS;SACV;QAED,IAAM,WAAW,GAAG,CAAC,EAAE,CAAC,uBAAuB,EAAE,EAAE,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzF,IAAM,aAAa,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAEzD,IAAM,MAAM,GAAG,IAAA,sBAAa,EAAC;YAC3B,OAAO,SAAA;YACP,kBAAkB,EAAE,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,mCAAI,CAAC;YAC9C,KAAK,EAAE,CAAC,CAAC,EAAE,IAAA,6BAAoB,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;YACzF,WAAW,aAAA;YACX,mBAAmB,qBAAA;SACpB,CAAC,CAAC;QAEK,IAAA,SAAS,GAAK,EAAE,UAAP,CAAQ;QAEzB,IAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAClE,IAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAM,KAAK,GAAe;YACxB,KAAK,EAAE,QAAQ,CAAC,SAAS;YACzB,MAAM,EAAE,QAAQ,CAAC,SAAS;YAC1B,GAAG,EAAE,MAAM;YACX,IAAI,EAAE,OAAO;SACd,CAAC;QACF,IAAM,aAAa,GAAG,IAAA,qBAAY,EAChC;YACE,MAAM,EAAE,EAAE,CAAC,MAAM;YACjB,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,cAAc,EAAE,EAAE,CAAC,cAAc;SAClC,EACD,EAAE,CAAC,OAAO,CACX,CAAC;QAEF,IAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,YAAY,CAAC;QAEjE,IAAI,IAAA,uBAAe,EAAC,IAAI,CAAC,EAAE;YACzB,IAAM,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC;YAE7E,IAAI,KAAK,KAAK,CAAC,CAAC;gBAAE,SAAS;YAE3B,IAAM,cAAc,GAAG,IAAA,qBAAY,EAAC,UAAU,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAC5E,IAAA,KAAK,GAAK,IAAA,2BAAoB,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,MAAjE,CAAkE;YAC/E,IAAM,cAAc,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,UAAU,mCAAI,qBAAqB,CAAC;YAElE,IAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB;gBACpD,CAAC,YAAG,cAAc,gBAAA,IAAK,IAAI,CAAC,oBAAoB,EAChD,CAAC,CAAC,SAAS,CAAC;YAEd,IAAM,YAAY,GAAG,IAAA,iBAAU,EAC7B,KAAK,EACL,EAAE,EACF,MAAM,EACN,MAAM,EACN,KAAK,EACL,aAAa,EACb,MAAA,IAAI,CAAC,YAAY,mCAAI,CAAC,EACtB,KAAK,EACL,cAAc,EACd,oBAAoB,EACpB,IAAI,CAAC,aAAa,EAClB,SAAS,CACV,CAAC;YACF,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,OAAA,EAAE,KAAK,EAAE,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC;YACxD,gBAAgB,CAAC,IAAI,IAAI,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC;SAC5D;aAAM,IAAI,IAAA,0BAAkB,EAAC,IAAI,CAAC,EAAE;YACnC,IAAM,WAAW,GAAG,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACzF,IAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB;gBAC9C,CAAC,CAAC,IAAA,qBAAY,EAAC,UAAU,CAAC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAAC;gBACpE,CAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC;YACjC,IAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;YACtE,IAAM,eAAe,GAAG,IAAA,qBAAY,EAClC,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,EACpC,EAAE,EACF,MAAM,EACN,MAAM,EACN,KAAK,EACL,KAAK,EACL,IAAA,oBAAY,EAAC,IAAI,CAAC,WAAW,CAAC,EAC9B,YAAY,EACZ,iBAAiB,EACjB;gBACE,OAAO,EAAE,IAAI,CAAC,gBAAgB,KAAK,SAAS;gBAC5C,KAAK,EAAE,UAAU,CAAC,aAAa;aAChC,EACD,YAAY,EACZ,IAAI,CAAC,kBAAkB,CACxB,CAAC;YACF,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,OAAA;gBACL,KAAK,EAAE,eAAe,CAAC,cAAc;aACtC,CAAC,CAAC;YACH,gBAAgB,CAAC,YAAY,IAAI,eAAe,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;YAC9E,gBAAgB,CAAC,OAAO,IAAI,CAAC,CAAC;SAC/B;aAAM,IAAI,IAAA,wBAAgB,EAAC,IAAI,CAAC,EAAE;YACjC,IAAM,SAAS,GAAG,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACvF,IAAM,eAAe,GAAG,IAAI,CAAC,eAAe;gBAC1C,CAAC,CAAC,IAAA,qBAAY,EAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC;gBAChE,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC;YAE/B,IAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAEnG,IAAM,aAAa,GAAG,IAAA,iBAAU,EAE9B,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,EAClC,EAAE,EACF,MAAM,EACN,MAAM,EACN,KAAK,EACL,KAAK,EACL,IAAI,CAAC,KAAK,IAAI,kBAAS,CAAC,MAAM,EAC9B,IAAA,oBAAY,EAAC,IAAI,CAAC,WAAW,CAAC,EAC9B,YAAY,EACZ,eAAe,EACf;gBACE,OAAO,EAAE,IAAI,CAAC,gBAAgB,KAAK,SAAS,IAAI,eAAe,CAAC,KAAK,CAAC,OAAO;gBAC7E,KAAK,EAAE,UAAU,CAAC,aAAa;aAChC,EACD,IAAI,CAAC,kBAAkB,EACvB,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAC7B,CAAC;YAEF,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC;gBACT,KAAK,OAAA;gBACL,KAAK,EAAE,aAAa,CAAC,YAAY;aAClC,CAAC,CAAC;YACH,gBAAgB,CAAC,UAAU,IAAI,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;YACxE,gBAAgB,CAAC,KAAK,IAAI,CAAC,CAAC;SAC7B;aAAM,IAAI,IAAA,wBAAgB,EAAC,IAAI,CAAC,EAAE;YACjC,IAAM,SAAS,GAAG,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACvF,IAAM,eAAe,GAAG,IAAI,CAAC,eAAe;gBAC1C,CAAC,CAAC,IAAA,qBAAY,EAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC;gBAChE,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC;YAC/B,IAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;YACnG,IAAM,aAAa,GAAG,IAAA,iBAAU,EAE9B,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,EAClC,EAAE,EACF,MAAM,EACN,MAAM,EACN,KAAK,EACL,KAAK,EACL,IAAI,CAAC,KAAK,IAAI,kBAAS,CAAC,MAAM,EAC9B,IAAA,oBAAY,EAAC,IAAI,CAAC,WAAW,CAAC,EAC9B,YAAY,EACZ,eAAe,EACf;gBACE,OAAO,EAAE,IAAI,CAAC,gBAAgB,KAAK,SAAS,IAAI,eAAe,CAAC,KAAK,CAAC,OAAO;gBAC7E,KAAK,EAAE,UAAU,CAAC,aAAa;aAChC,EACD,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAC5D,IAAI,CAAC,kBAAkB,EACvB,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAC7B,CAAC;YACF,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC;gBACT,KAAK,OAAA;gBACL,KAAK,EAAE,aAAa,CAAC,YAAY;aAClC,CAAC,CAAC;YACH,gBAAgB,CAAC,WAAW,IAAI,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;YACzE,gBAAgB,CAAC,KAAK,IAAI,CAAC,CAAC;SAC7B;KACF;IAED,OAAO;QACL,UAAU,EAAE;YACV,MAAM,QAAA;YACN,IAAI,MAAA;YACJ,KAAK,OAAA;YACL,KAAK,OAAA;YACL,OAAO,SAAA;SACR;QACD,eAAe,iBAAA;QACf,gBAAgB,kBAAA;KACjB,CAAC;AACJ,CAAC;AAGD,SAAgB,qBAAqB,CAAC,EAAuB,EAAE,aAAuB;QAA9C,KAAK,WAAA,EAAE,MAAM,YAAA;IACnD,OAAO;QACL,CAAC,EAAE,aAAa,KAAK,EAAE,IAAI,aAAa,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC,EAAE,aAAa,KAAK,CAAC,EAAE,IAAI,aAAa,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,EAAE,aAAa;KACtB,CAAC;AACJ,CAAC;AAND,sDAMC;AAED,SAAS,kBAAkB,CAAC,GAAqB;IAC/C,OAAO,OAAO,CAAC,GAAG,IAAI,CAAE,GAAiB,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,WAAG,CAAC,IAAI,CAAC,CAAC;AACvE,CAAC;AAGD,SAAgB,cAAc,CAC5B,EAAgE,EAChE,oBAA6B;QAD3B,IAAI,UAAA,EAAE,MAAM,YAAA,EAAE,OAAO,aAAA,EAAE,SAAS,eAAA,EAAE,cAAc,oBAAA;IAGlD,IAAM,SAAS,GAAG,IAAA,wBAAa,EAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAC5D,IAAI,SAAS,EAAE;QACb,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC/C;IAED,OAAO,6BAAC,OAAO,EAAE,MAAM,UAAK,cAAc,CAAC,MAAM,EAAE,YAAE,SAAS,UAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AAChF,CAAC;AAVD,wCAUC"}