@elastic/charts 37.0.0 → 38.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/CHANGELOG.md +51 -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/wordcloud/state/selectors/scenegraph.js +1 -4
  26. package/dist/chart_types/wordcloud/state/selectors/scenegraph.js.map +1 -1
  27. package/dist/chart_types/xy_chart/annotations/line/dimensions.js +14 -13
  28. package/dist/chart_types/xy_chart/annotations/line/dimensions.js.map +1 -1
  29. package/dist/chart_types/xy_chart/annotations/rect/dimensions.js +11 -13
  30. package/dist/chart_types/xy_chart/annotations/rect/dimensions.js.map +1 -1
  31. package/dist/chart_types/xy_chart/annotations/utils.js +5 -7
  32. package/dist/chart_types/xy_chart/annotations/utils.js.map +1 -1
  33. package/dist/chart_types/xy_chart/axes/axes_sizes.js +80 -35
  34. package/dist/chart_types/xy_chart/axes/axes_sizes.js.map +1 -1
  35. package/dist/chart_types/xy_chart/crosshair/crosshair_utils.js +2 -2
  36. package/dist/chart_types/xy_chart/crosshair/crosshair_utils.js.map +1 -1
  37. package/dist/chart_types/xy_chart/domains/x_domain.js +1 -1
  38. package/dist/chart_types/xy_chart/domains/x_domain.js.map +1 -1
  39. package/dist/chart_types/xy_chart/legend/legend.js +10 -19
  40. package/dist/chart_types/xy_chart/legend/legend.js.map +1 -1
  41. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick_label.js +1 -1
  42. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick_label.js.map +1 -1
  43. package/dist/chart_types/xy_chart/renderer/canvas/panels/title.js +4 -2
  44. package/dist/chart_types/xy_chart/renderer/canvas/panels/title.js.map +1 -1
  45. package/dist/chart_types/xy_chart/renderer/canvas/renderers.js +2 -2
  46. package/dist/chart_types/xy_chart/renderer/canvas/renderers.js.map +1 -1
  47. package/dist/chart_types/xy_chart/renderer/canvas/xy_chart.js +2 -2
  48. package/dist/chart_types/xy_chart/renderer/canvas/xy_chart.js.map +1 -1
  49. package/dist/chart_types/xy_chart/renderer/dom/cursor_band.d.ts +2 -0
  50. package/dist/chart_types/xy_chart/renderer/dom/cursor_band.d.ts.map +1 -0
  51. package/dist/chart_types/xy_chart/renderer/dom/cursor_band.js +87 -0
  52. package/dist/chart_types/xy_chart/renderer/dom/cursor_band.js.map +1 -0
  53. package/dist/chart_types/xy_chart/renderer/dom/cursor_crossline.d.ts +2 -0
  54. package/dist/chart_types/xy_chart/renderer/dom/cursor_crossline.d.ts.map +1 -0
  55. package/dist/chart_types/xy_chart/renderer/dom/{crosshair.js → cursor_crossline.js} +11 -37
  56. package/dist/chart_types/xy_chart/renderer/dom/cursor_crossline.js.map +1 -0
  57. package/dist/chart_types/xy_chart/renderer/dom/cursor_line.d.ts +2 -0
  58. package/dist/chart_types/xy_chart/renderer/dom/cursor_line.d.ts.map +1 -0
  59. package/dist/chart_types/xy_chart/renderer/dom/cursor_line.js +89 -0
  60. package/dist/chart_types/xy_chart/renderer/dom/cursor_line.js.map +1 -0
  61. package/dist/chart_types/xy_chart/rendering/area.js +11 -33
  62. package/dist/chart_types/xy_chart/rendering/area.js.map +1 -1
  63. package/dist/chart_types/xy_chart/rendering/bars.js +8 -9
  64. package/dist/chart_types/xy_chart/rendering/bars.js.map +1 -1
  65. package/dist/chart_types/xy_chart/rendering/line.js +4 -13
  66. package/dist/chart_types/xy_chart/rendering/line.js.map +1 -1
  67. package/dist/chart_types/xy_chart/rendering/point_style.js +2 -4
  68. package/dist/chart_types/xy_chart/rendering/point_style.js.map +1 -1
  69. package/dist/chart_types/xy_chart/rendering/points.js +9 -24
  70. package/dist/chart_types/xy_chart/rendering/points.js.map +1 -1
  71. package/dist/chart_types/xy_chart/rendering/utils.js +20 -31
  72. package/dist/chart_types/xy_chart/rendering/utils.js.map +1 -1
  73. package/dist/chart_types/xy_chart/specs/axis.d.ts +2 -2
  74. package/dist/chart_types/xy_chart/specs/axis.d.ts.map +1 -1
  75. package/dist/chart_types/xy_chart/specs/axis.js +2 -3
  76. package/dist/chart_types/xy_chart/specs/axis.js.map +1 -1
  77. package/dist/chart_types/xy_chart/state/chart_state.js +6 -2
  78. package/dist/chart_types/xy_chart/state/chart_state.js.map +1 -1
  79. package/dist/chart_types/xy_chart/state/selectors/compute_annotations.js +10 -12
  80. package/dist/chart_types/xy_chart/state/selectors/compute_annotations.js.map +1 -1
  81. package/dist/chart_types/xy_chart/state/selectors/compute_axes_geometries.js +5 -20
  82. package/dist/chart_types/xy_chart/state/selectors/compute_axes_geometries.js.map +1 -1
  83. package/dist/chart_types/xy_chart/state/selectors/compute_axis_ticks_dimensions.js +75 -40
  84. package/dist/chart_types/xy_chart/state/selectors/compute_axis_ticks_dimensions.js.map +1 -1
  85. package/dist/chart_types/xy_chart/state/selectors/compute_chart_dimensions.js +2 -4
  86. package/dist/chart_types/xy_chart/state/selectors/compute_chart_dimensions.js.map +1 -1
  87. package/dist/chart_types/xy_chart/state/selectors/compute_legend.js +1 -1
  88. package/dist/chart_types/xy_chart/state/selectors/compute_legend.js.map +1 -1
  89. package/dist/chart_types/xy_chart/state/selectors/compute_series_domains.js +2 -4
  90. package/dist/chart_types/xy_chart/state/selectors/compute_series_domains.js.map +1 -1
  91. package/dist/chart_types/xy_chart/state/selectors/compute_series_geometries.js +4 -4
  92. package/dist/chart_types/xy_chart/state/selectors/compute_series_geometries.js.map +1 -1
  93. package/dist/chart_types/xy_chart/state/selectors/get_axis_styles.js +4 -15
  94. package/dist/chart_types/xy_chart/state/selectors/get_axis_styles.js.map +1 -1
  95. package/dist/chart_types/xy_chart/state/selectors/get_brush_area.js +2 -3
  96. package/dist/chart_types/xy_chart/state/selectors/get_brush_area.js.map +1 -1
  97. package/dist/chart_types/xy_chart/state/selectors/get_chart_type_description.js +1 -2
  98. package/dist/chart_types/xy_chart/state/selectors/get_chart_type_description.js.map +1 -1
  99. package/dist/chart_types/xy_chart/state/selectors/get_cursor_band.js +6 -6
  100. package/dist/chart_types/xy_chart/state/selectors/get_cursor_band.js.map +1 -1
  101. package/dist/chart_types/xy_chart/state/selectors/get_debug_state.js +1 -1
  102. package/dist/chart_types/xy_chart/state/selectors/get_debug_state.js.map +1 -1
  103. package/dist/chart_types/xy_chart/state/selectors/get_elements_at_cursor_pos.js +1 -1
  104. package/dist/chart_types/xy_chart/state/selectors/get_elements_at_cursor_pos.js.map +1 -1
  105. package/dist/chart_types/xy_chart/state/selectors/get_grid_lines.js +2 -4
  106. package/dist/chart_types/xy_chart/state/selectors/get_grid_lines.js.map +1 -1
  107. package/dist/chart_types/xy_chart/state/selectors/get_projected_scaled_values.js +1 -1
  108. package/dist/chart_types/xy_chart/state/selectors/get_projected_scaled_values.js.map +1 -1
  109. package/dist/chart_types/xy_chart/state/selectors/get_series_color_map.js.map +1 -1
  110. package/dist/chart_types/xy_chart/state/selectors/get_specs.js +2 -1
  111. package/dist/chart_types/xy_chart/state/selectors/get_specs.js.map +1 -1
  112. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_position.js +2 -3
  113. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_position.js.map +1 -1
  114. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_snap.js +1 -4
  115. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_snap.js.map +1 -1
  116. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_values_highlighted_geoms.js +5 -7
  117. package/dist/chart_types/xy_chart/state/selectors/get_tooltip_values_highlighted_geoms.js.map +1 -1
  118. package/dist/chart_types/xy_chart/state/selectors/is_brush_available.js +1 -6
  119. package/dist/chart_types/xy_chart/state/selectors/is_brush_available.js.map +1 -1
  120. package/dist/chart_types/xy_chart/state/selectors/is_brushing.js +1 -6
  121. package/dist/chart_types/xy_chart/state/selectors/is_brushing.js.map +1 -1
  122. package/dist/chart_types/xy_chart/state/selectors/is_tooltip_snap_enabled.js +1 -4
  123. package/dist/chart_types/xy_chart/state/selectors/is_tooltip_snap_enabled.js.map +1 -1
  124. package/dist/chart_types/xy_chart/state/selectors/is_tooltip_visible.js +2 -2
  125. package/dist/chart_types/xy_chart/state/selectors/on_brush_end_caller.js +10 -6
  126. package/dist/chart_types/xy_chart/state/selectors/on_brush_end_caller.js.map +1 -1
  127. package/dist/chart_types/xy_chart/state/selectors/on_click_caller.js +4 -5
  128. package/dist/chart_types/xy_chart/state/selectors/on_click_caller.js.map +1 -1
  129. package/dist/chart_types/xy_chart/state/selectors/on_element_out_caller.js +7 -12
  130. package/dist/chart_types/xy_chart/state/selectors/on_element_out_caller.js.map +1 -1
  131. package/dist/chart_types/xy_chart/state/selectors/on_element_over_caller.js +10 -16
  132. package/dist/chart_types/xy_chart/state/selectors/on_element_over_caller.js.map +1 -1
  133. package/dist/chart_types/xy_chart/state/selectors/on_pointer_move_caller.js +10 -33
  134. package/dist/chart_types/xy_chart/state/selectors/on_pointer_move_caller.js.map +1 -1
  135. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.d.ts +2 -0
  136. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.d.ts.map +1 -0
  137. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.js +223 -0
  138. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.js.map +1 -0
  139. package/dist/chart_types/xy_chart/state/utils/spec.js +5 -4
  140. package/dist/chart_types/xy_chart/state/utils/spec.js.map +1 -1
  141. package/dist/chart_types/xy_chart/state/utils/utils.js +32 -51
  142. package/dist/chart_types/xy_chart/state/utils/utils.js.map +1 -1
  143. package/dist/chart_types/xy_chart/tooltip/tooltip.js +3 -4
  144. package/dist/chart_types/xy_chart/tooltip/tooltip.js.map +1 -1
  145. package/dist/chart_types/xy_chart/utils/axis_utils.js +43 -130
  146. package/dist/chart_types/xy_chart/utils/axis_utils.js.map +1 -1
  147. package/dist/chart_types/xy_chart/utils/dimensions.js +27 -23
  148. package/dist/chart_types/xy_chart/utils/dimensions.js.map +1 -1
  149. package/dist/chart_types/xy_chart/utils/fill_series.js +3 -1
  150. package/dist/chart_types/xy_chart/utils/fill_series.js.map +1 -1
  151. package/dist/chart_types/xy_chart/utils/get_linear_ticks.d.ts +2 -0
  152. package/dist/chart_types/xy_chart/utils/get_linear_ticks.d.ts.map +1 -0
  153. package/dist/chart_types/xy_chart/utils/get_linear_ticks.js +99 -0
  154. package/dist/chart_types/xy_chart/utils/get_linear_ticks.js.map +1 -0
  155. package/dist/chart_types/xy_chart/utils/grid_lines.js +3 -4
  156. package/dist/chart_types/xy_chart/utils/grid_lines.js.map +1 -1
  157. package/dist/chart_types/xy_chart/utils/panel_utils.js +2 -3
  158. package/dist/chart_types/xy_chart/utils/panel_utils.js.map +1 -1
  159. package/dist/chart_types/xy_chart/utils/scales.js +1 -2
  160. package/dist/chart_types/xy_chart/utils/scales.js.map +1 -1
  161. package/dist/chart_types/xy_chart/utils/series.js +8 -12
  162. package/dist/chart_types/xy_chart/utils/series.js.map +1 -1
  163. package/dist/chart_types/xy_chart/utils/specs.d.ts +2 -3
  164. package/dist/chart_types/xy_chart/utils/specs.d.ts.map +1 -1
  165. package/dist/chart_types/xy_chart/utils/specs.js.map +1 -1
  166. package/dist/components/legend/legend.js.map +1 -1
  167. package/dist/components/legend/position_style.js +2 -2
  168. package/dist/components/legend/position_style.js.map +1 -1
  169. package/dist/components/legend/style_utils.js.map +1 -1
  170. package/dist/components/portal/tooltip_portal.js +1 -1
  171. package/dist/components/portal/tooltip_portal.js.map +1 -1
  172. package/dist/components/portal/utils.js +1 -1
  173. package/dist/components/portal/utils.js.map +1 -1
  174. package/dist/index.d.ts +1 -1
  175. package/dist/index.d.ts.map +1 -1
  176. package/dist/index.js +1 -3
  177. package/dist/index.js.map +1 -1
  178. package/dist/scales/constants.d.ts +4 -0
  179. package/dist/scales/constants.d.ts.map +1 -1
  180. package/dist/scales/constants.js +1 -0
  181. package/dist/scales/constants.js.map +1 -1
  182. package/dist/scales/index.d.ts +2 -2
  183. package/dist/scales/index.d.ts.map +1 -1
  184. package/dist/scales/index.js +1 -3
  185. package/dist/scales/index.js.map +1 -1
  186. package/dist/scales/scale_band.js +3 -16
  187. package/dist/scales/scale_band.js.map +1 -1
  188. package/dist/scales/scale_continuous.d.ts +1 -40
  189. package/dist/scales/scale_continuous.d.ts.map +1 -1
  190. package/dist/scales/scale_continuous.js +150 -225
  191. package/dist/scales/scale_continuous.js.map +1 -1
  192. package/dist/scales/types.d.ts +19 -1
  193. package/dist/scales/types.d.ts.map +1 -1
  194. package/dist/specs/constants.d.ts.map +1 -1
  195. package/dist/specs/constants.js +1 -1
  196. package/dist/specs/constants.js.map +1 -1
  197. package/dist/specs/settings.d.ts +4 -11
  198. package/dist/specs/settings.d.ts.map +1 -1
  199. package/dist/specs/settings.js +7 -14
  200. package/dist/specs/settings.js.map +1 -1
  201. package/dist/state/selectors/get_chart_theme.js +4 -4
  202. package/dist/state/selectors/get_chart_theme.js.map +1 -1
  203. package/dist/state/selectors/get_legend_size.js.map +1 -1
  204. package/dist/state/selectors/is_external_tooltip_visible.js +1 -1
  205. package/dist/state/selectors/is_external_tooltip_visible.js.map +1 -1
  206. package/dist/state/utils.js +3 -19
  207. package/dist/state/utils.js.map +1 -1
  208. package/dist/theme.scss +24 -3
  209. package/dist/theme_dark.css +1 -1
  210. package/dist/theme_light.css +1 -1
  211. package/dist/theme_only_dark.css +1 -1
  212. package/dist/theme_only_light.css +1 -1
  213. package/dist/utils/bbox/canvas_text_bbox_calculator.js +0 -2
  214. package/dist/utils/bbox/canvas_text_bbox_calculator.js.map +1 -1
  215. package/dist/utils/common.d.ts.map +1 -1
  216. package/dist/utils/common.js +17 -42
  217. package/dist/utils/common.js.map +1 -1
  218. package/dist/utils/data/formatters.d.ts.map +1 -1
  219. package/dist/utils/data/formatters.js +3 -6
  220. package/dist/utils/data/formatters.js.map +1 -1
  221. package/dist/utils/series_sort.d.ts.map +1 -1
  222. package/dist/utils/series_sort.js +13 -21
  223. package/dist/utils/series_sort.js.map +1 -1
  224. package/dist/utils/themes/merge_utils.d.ts +3 -2
  225. package/dist/utils/themes/merge_utils.d.ts.map +1 -1
  226. package/dist/utils/themes/merge_utils.js +3 -3
  227. package/dist/utils/themes/merge_utils.js.map +1 -1
  228. package/package.json +1 -1
  229. package/dist/chart_types/xy_chart/renderer/dom/crosshair.d.ts +0 -2
  230. package/dist/chart_types/xy_chart/renderer/dom/crosshair.d.ts.map +0 -1
  231. package/dist/chart_types/xy_chart/renderer/dom/crosshair.js.map +0 -1
  232. package/dist/chart_types/xy_chart/state/selectors/compute_grid_lines.d.ts +0 -2
  233. package/dist/chart_types/xy_chart/state/selectors/compute_grid_lines.d.ts.map +0 -1
  234. package/dist/chart_types/xy_chart/state/selectors/compute_grid_lines.js +0 -13
  235. package/dist/chart_types/xy_chart/state/selectors/compute_grid_lines.js.map +0 -1
  236. package/dist/chart_types/xy_chart/state/selectors/is_chart_animatable.d.ts +0 -2
  237. package/dist/chart_types/xy_chart/state/selectors/is_chart_animatable.d.ts.map +0 -1
  238. package/dist/chart_types/xy_chart/state/selectors/is_chart_animatable.js +0 -10
  239. package/dist/chart_types/xy_chart/state/selectors/is_chart_animatable.js.map +0 -1
@@ -15,11 +15,12 @@ var __read = (this && this.__read) || function (o, n) {
15
15
  }
16
16
  return ar;
17
17
  };
18
- var _a, _b;
18
+ var _a;
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.getDomainPolarity = exports.ScaleContinuous = exports.logBaseMap = exports.LogBase = exports.limitLogScaleDomain = void 0;
20
+ exports.limitLogScaleDomain = exports.ScaleContinuous = void 0;
21
21
  var d3_array_1 = require("d3-array");
22
22
  var d3_scale_1 = require("d3-scale");
23
+ var get_linear_ticks_1 = require("../chart_types/xy_chart/utils/get_linear_ticks");
23
24
  var screenspace_marker_scale_compressor_1 = require("../solvers/screenspace_marker_scale_compressor");
24
25
  var common_1 = require("../utils/common");
25
26
  var date_time_1 = require("../utils/data/date_time");
@@ -30,94 +31,6 @@ var SCALES = (_a = {},
30
31
  _a[constants_1.ScaleType.Sqrt] = d3_scale_1.scaleSqrt,
31
32
  _a[constants_1.ScaleType.Time] = d3_scale_1.scaleUtc,
32
33
  _a);
33
- var isUnitRange = function (_a) {
34
- var _b = __read(_a, 2), r1 = _b[0], r2 = _b[1];
35
- return r1 === 0 && r2 === 1;
36
- };
37
- function limitLogScaleDomain(_a, logMinLimit) {
38
- var _b = __read(_a, 2), min = _b[0], max = _b[1];
39
- var absLimit = logMinLimit !== undefined ? Math.abs(logMinLimit) : undefined;
40
- if (absLimit !== undefined && absLimit > 0) {
41
- if (min > 0 && min < absLimit) {
42
- if (max > absLimit) {
43
- return [absLimit, max];
44
- }
45
- return [absLimit, absLimit];
46
- }
47
- if (max < 0 && max > -absLimit) {
48
- if (min < -absLimit) {
49
- return [min, -absLimit];
50
- }
51
- return [-absLimit, -absLimit];
52
- }
53
- }
54
- var fallbackLimit = absLimit || constants_1.LOG_MIN_ABS_DOMAIN;
55
- if (min === 0) {
56
- if (max > 0) {
57
- return [fallbackLimit, max];
58
- }
59
- if (max < 0) {
60
- return [-fallbackLimit, max];
61
- }
62
- return [fallbackLimit, fallbackLimit];
63
- }
64
- if (max === 0) {
65
- if (min > 0) {
66
- return [min, fallbackLimit];
67
- }
68
- if (min < 0) {
69
- return [min, -fallbackLimit];
70
- }
71
- return [fallbackLimit, fallbackLimit];
72
- }
73
- if (min < 0 && max > 0) {
74
- var isD0Min = Math.abs(max) - Math.abs(min) >= 0;
75
- if (isD0Min) {
76
- return [fallbackLimit, max];
77
- }
78
- return [min, -fallbackLimit];
79
- }
80
- if (min > 0 && max < 0) {
81
- var isD0Max = Math.abs(min) - Math.abs(max) >= 0;
82
- if (isD0Max) {
83
- return [min, fallbackLimit];
84
- }
85
- return [-fallbackLimit, max];
86
- }
87
- return [min, max];
88
- }
89
- exports.limitLogScaleDomain = limitLogScaleDomain;
90
- function getPixelPaddedDomain(chartHeight, domain, desiredPixelPadding, constrainDomainPadding, intercept) {
91
- if (intercept === void 0) { intercept = 0; }
92
- var inverted = domain[1] < domain[0];
93
- var orderedDomain = inverted ? domain.slice().reverse() : domain;
94
- var scaleMultiplier = (0, screenspace_marker_scale_compressor_1.screenspaceMarkerScaleCompressor)(orderedDomain, [2 * desiredPixelPadding, 2 * desiredPixelPadding], chartHeight).scaleMultiplier;
95
- var paddedDomainLo = orderedDomain[0] - desiredPixelPadding / scaleMultiplier;
96
- var paddedDomainHigh = orderedDomain[1] + desiredPixelPadding / scaleMultiplier;
97
- if (constrainDomainPadding) {
98
- if (paddedDomainLo < intercept && orderedDomain[0] >= intercept) {
99
- var scaleMultiplier_1 = (0, screenspace_marker_scale_compressor_1.screenspaceMarkerScaleCompressor)([intercept, orderedDomain[1]], [0, 2 * desiredPixelPadding], chartHeight).scaleMultiplier;
100
- paddedDomainLo = intercept;
101
- paddedDomainHigh = orderedDomain[1] + desiredPixelPadding / scaleMultiplier_1;
102
- }
103
- else if (paddedDomainHigh > 0 && orderedDomain[1] <= 0) {
104
- var scaleMultiplier_2 = (0, screenspace_marker_scale_compressor_1.screenspaceMarkerScaleCompressor)([orderedDomain[0], intercept], [2 * desiredPixelPadding, 0], chartHeight).scaleMultiplier;
105
- paddedDomainLo = orderedDomain[0] - desiredPixelPadding / scaleMultiplier_2;
106
- paddedDomainHigh = intercept;
107
- }
108
- }
109
- return inverted ? [paddedDomainHigh, paddedDomainLo] : [paddedDomainLo, paddedDomainHigh];
110
- }
111
- exports.LogBase = Object.freeze({
112
- Common: 'common',
113
- Binary: 'binary',
114
- Natural: 'natural',
115
- });
116
- exports.logBaseMap = (_b = {},
117
- _b[exports.LogBase.Common] = 10,
118
- _b[exports.LogBase.Binary] = 2,
119
- _b[exports.LogBase.Natural] = Math.E,
120
- _b);
121
34
  var defaultScaleOptions = {
122
35
  bandwidth: 0,
123
36
  minInterval: 0,
@@ -129,140 +42,110 @@ var defaultScaleOptions = {
129
42
  desiredTickCount: 10,
130
43
  isSingleValueHistogram: false,
131
44
  integersOnly: false,
132
- logBase: exports.LogBase.Common,
45
+ logBase: 10,
46
+ logMinLimit: NaN,
47
+ linearBase: 10,
48
+ };
49
+ var isUnitRange = function (_a) {
50
+ var _b = __read(_a, 2), r1 = _b[0], r2 = _b[1];
51
+ return r1 === 0 && r2 === 1;
133
52
  };
134
53
  var ScaleContinuous = (function () {
135
54
  function ScaleContinuous(_a, options) {
136
- var _this = this;
137
- var _b = _a.type, type = _b === void 0 ? constants_1.ScaleType.Linear : _b, _c = _a.domain, domain = _c === void 0 ? [0, 1] : _c, _d = _a.range, range = _d === void 0 ? [0, 1] : _d, _e = _a.nice, nice = _e === void 0 ? false : _e;
138
- var _f = (0, common_1.mergePartial)(defaultScaleOptions, options, { mergeOptionalPartialValues: true }), bandwidth = _f.bandwidth, minInterval = _f.minInterval, timeZone = _f.timeZone, totalBarsInCluster = _f.totalBarsInCluster, barsPadding = _f.barsPadding, desiredTickCount = _f.desiredTickCount, isSingleValueHistogram = _f.isSingleValueHistogram, integersOnly = _f.integersOnly, logBase = _f.logBase, logMinLimit = _f.logMinLimit, domainPixelPadding = _f.domainPixelPadding, constrainDomainPadding = _f.constrainDomainPadding;
139
- this.d3Scale = SCALES[type]();
140
- if (type === constants_1.ScaleType.Log) {
141
- this.d3Scale.base(exports.logBaseMap[logBase]);
142
- this.domain = limitLogScaleDomain(domain, logMinLimit);
143
- }
144
- else {
145
- this.domain = domain;
146
- }
147
- this.d3Scale.domain(this.domain);
148
- if (nice && type !== constants_1.ScaleType.Time) {
149
- this.d3Scale.domain(this.domain).nice(desiredTickCount);
150
- this.domain = this.d3Scale.domain();
151
- }
152
- var safeBarPadding = (0, common_1.clamp)(barsPadding, 0, 1);
153
- this.barsPadding = safeBarPadding;
154
- this.bandwidth = bandwidth * (1 - safeBarPadding);
155
- this.bandwidthPadding = bandwidth * safeBarPadding;
156
- this.d3Scale.range(range);
157
- this.step = this.bandwidth + this.barsPadding + this.bandwidthPadding;
55
+ var _b = _a.type, scaleType = _b === void 0 ? constants_1.ScaleType.Linear : _b, inputDomain = _a.domain, range = _a.range, _c = _a.nice, nice = _c === void 0 ? false : _c;
56
+ var isBinary = scaleType === constants_1.ScaleType.LinearBinary;
57
+ var type = isBinary ? constants_1.ScaleType.Linear : scaleType;
58
+ var scaleOptions = (0, common_1.mergePartial)(defaultScaleOptions, options);
59
+ var min = inputDomain.reduce(function (p, n) { return Math.min(p, n); }, Infinity);
60
+ var max = inputDomain.reduce(function (p, n) { return Math.max(p, n); }, -Infinity);
61
+ var properLogScale = type === constants_1.ScaleType.Log && min < max;
62
+ var dataDomain = properLogScale ? limitLogScaleDomain([min, max], scaleOptions.logMinLimit) : inputDomain;
63
+ var barsPadding = (0, common_1.clamp)(scaleOptions.barsPadding, 0, 1);
64
+ var isNice = nice && type !== constants_1.ScaleType.Time;
65
+ var totalRange = Math.abs(range[1] - range[0]);
66
+ var pixelPadFits = 0 < scaleOptions.domainPixelPadding && scaleOptions.domainPixelPadding * 2 < totalRange;
67
+ var isPixelPadded = pixelPadFits && type !== constants_1.ScaleType.Time && !isUnitRange(range);
68
+ var minInterval = Math.abs(scaleOptions.minInterval);
69
+ var bandwidth = scaleOptions.bandwidth * (1 - barsPadding);
70
+ var bandwidthPadding = scaleOptions.bandwidth * barsPadding;
71
+ this.barsPadding = barsPadding;
72
+ this.bandwidth = bandwidth;
73
+ this.bandwidthPadding = bandwidthPadding;
158
74
  this.type = type;
159
75
  this.range = range;
76
+ this.linearBase = isBinary ? 2 : scaleOptions.linearBase;
160
77
  this.minInterval = minInterval;
161
- this.isInverted = this.domain[0] > this.domain[1];
162
- this.timeZone = timeZone;
163
- this.totalBarsInCluster = totalBarsInCluster;
164
- this.isSingleValueHistogram = isSingleValueHistogram;
165
- var _g = __read(this.range, 2), r1 = _g[0], r2 = _g[1];
166
- var totalRange = Math.abs(r1 - r2);
167
- if (type !== constants_1.ScaleType.Time && domainPixelPadding && !isUnitRange(range) && domainPixelPadding * 2 < totalRange) {
168
- var newDomain = getPixelPaddedDomain(totalRange, this.domain, domainPixelPadding, constrainDomainPadding);
169
- if (nice) {
170
- this.d3Scale.domain(newDomain).nice(desiredTickCount);
171
- this.domain = this.d3Scale.domain();
172
- }
173
- else {
174
- this.domain = newDomain;
175
- this.d3Scale.domain(newDomain);
176
- }
177
- }
178
- if (type === constants_1.ScaleType.Time) {
179
- var startDomain = (0, date_time_1.getMomentWithTz)(this.domain[0], this.timeZone);
180
- var endDomain = (0, date_time_1.getMomentWithTz)(this.domain[1], this.timeZone);
181
- var offset_1 = startDomain.utcOffset();
182
- var shiftedDomainMin = startDomain.add(offset_1, 'minutes').valueOf();
183
- var shiftedDomainMax = endDomain.add(offset_1, 'minutes').valueOf();
184
- var tzShiftedScale = (0, d3_scale_1.scaleUtc)().domain([shiftedDomainMin, shiftedDomainMax]);
185
- var rawTicks = tzShiftedScale.ticks(desiredTickCount);
186
- var timePerTick = (shiftedDomainMax - shiftedDomainMin) / rawTicks.length;
187
- var hasHourTicks_1 = timePerTick < 1000 * 60 * 60 * 12;
188
- this.tickValues = rawTicks.map(function (d) {
189
- var currentDateTime = (0, date_time_1.getMomentWithTz)(d, _this.timeZone);
190
- var currentOffset = hasHourTicks_1 ? offset_1 : currentDateTime.utcOffset();
191
- return currentDateTime.subtract(currentOffset, 'minutes').valueOf();
192
- });
193
- }
194
- else {
195
- if (minInterval > 0 && bandwidth > 0) {
196
- var intervalCount = Math.floor((this.domain[1] - this.domain[0]) / this.minInterval);
197
- this.tickValues = new Array(intervalCount + 1).fill(0).map(function (_, i) { return _this.domain[0] + i * _this.minInterval; });
78
+ this.step = bandwidth + barsPadding + bandwidthPadding;
79
+ this.timeZone = scaleOptions.timeZone;
80
+ this.isInverted = dataDomain[0] > dataDomain[1];
81
+ this.totalBarsInCluster = scaleOptions.totalBarsInCluster;
82
+ this.isSingleValueHistogram = scaleOptions.isSingleValueHistogram;
83
+ var d3Scale = SCALES[type]();
84
+ d3Scale.domain(dataDomain);
85
+ d3Scale.range(range);
86
+ if (properLogScale)
87
+ d3Scale.base(scaleOptions.logBase);
88
+ if (isNice) {
89
+ if (type === constants_1.ScaleType.Linear) {
90
+ (0, get_linear_ticks_1.getNiceLinearTicks)(d3Scale, scaleOptions.desiredTickCount, this.linearBase);
198
91
  }
199
92
  else {
200
- this.tickValues = this.getTicks(desiredTickCount, integersOnly);
93
+ d3Scale
94
+ .domain(dataDomain)
95
+ .nice(scaleOptions.desiredTickCount);
201
96
  }
202
97
  }
98
+ var niceDomain = isNice ? d3Scale.domain() : dataDomain;
99
+ var paddedDomain = isPixelPadded
100
+ ? getPixelPaddedDomain(totalRange, niceDomain, scaleOptions.domainPixelPadding, scaleOptions.constrainDomainPadding)
101
+ : niceDomain;
102
+ d3Scale.domain(paddedDomain);
103
+ if (isPixelPadded && isNice)
104
+ d3Scale.nice(scaleOptions.desiredTickCount);
105
+ var nicePaddedDomain = isPixelPadded && isNice ? d3Scale.domain() : paddedDomain;
106
+ this.tickValues =
107
+ type === constants_1.ScaleType.Time
108
+ ? getTimeTicks(scaleOptions.desiredTickCount, scaleOptions.timeZone, nicePaddedDomain)
109
+ : scaleOptions.minInterval <= 0 || scaleOptions.bandwidth <= 0
110
+ ? this.type === constants_1.ScaleType.Linear
111
+ ? (0, get_linear_ticks_1.getLinearTicks)(nicePaddedDomain[0], nicePaddedDomain[nicePaddedDomain.length - 1], scaleOptions.desiredTickCount, this.linearBase)
112
+ : d3Scale.ticks(scaleOptions.desiredTickCount)
113
+ : new Array(Math.floor((nicePaddedDomain[1] - nicePaddedDomain[0]) / minInterval) + 1)
114
+ .fill(0)
115
+ .map(function (_, i) { return nicePaddedDomain[0] + i * minInterval; });
116
+ this.domain = nicePaddedDomain;
117
+ this.project = function (d) { return d3Scale(d); };
118
+ this.inverseProject = function (d) { return d3Scale.invert(d); };
203
119
  }
204
- ScaleContinuous.prototype.getScaledValue = function (value) {
205
- if (typeof value !== 'number' || isNaN(value)) {
206
- return null;
207
- }
208
- var scaledValue = this.d3Scale(value);
209
- return isNaN(scaledValue) ? null : scaledValue;
210
- };
211
- ScaleContinuous.prototype.getTicks = function (ticks, integersOnly) {
212
- return integersOnly
213
- ? this.d3Scale
214
- .ticks(ticks)
215
- .filter(function (item) { return typeof item === 'number' && item % 1 === 0; })
216
- .map(function (item) { return parseInt(item.toFixed(0), 10); })
217
- : this.d3Scale.ticks(ticks);
218
- };
219
- ScaleContinuous.prototype.scaleOrThrow = function (value) {
220
- var scaleValue = this.scale(value);
221
- if (scaleValue === null) {
222
- throw new Error("Unable to scale value: " + scaleValue + ")");
223
- }
224
- return scaleValue;
225
- };
226
120
  ScaleContinuous.prototype.scale = function (value) {
227
- var scaledValue = this.getScaledValue(value);
228
- return scaledValue === null ? null : scaledValue + (this.bandwidthPadding / 2) * this.totalBarsInCluster;
121
+ return typeof value === 'number'
122
+ ? this.project(value) + (this.bandwidthPadding / 2) * this.totalBarsInCluster
123
+ : NaN;
229
124
  };
230
125
  ScaleContinuous.prototype.pureScale = function (value) {
231
- if (this.bandwidth === 0) {
232
- return this.getScaledValue(value);
233
- }
234
- if (typeof value !== 'number' || isNaN(value)) {
235
- return null;
236
- }
237
- return this.getScaledValue(value + this.minInterval / 2);
126
+ return typeof value === 'number' ? this.project(this.bandwidth === 0 ? value : value + this.minInterval / 2) : NaN;
238
127
  };
239
128
  ScaleContinuous.prototype.ticks = function () {
240
129
  return this.tickValues;
241
130
  };
242
131
  ScaleContinuous.prototype.invert = function (value) {
243
- var invertedValue = this.d3Scale.invert(value);
244
- if (this.type === constants_1.ScaleType.Time) {
245
- invertedValue = (0, date_time_1.getMomentWithTz)(invertedValue, this.timeZone).valueOf();
246
- }
247
- return invertedValue;
132
+ var invertedValue = this.inverseProject(value);
133
+ return this.type === constants_1.ScaleType.Time
134
+ ? (0, date_time_1.getMomentWithTz)(invertedValue, this.timeZone).valueOf()
135
+ : Number(invertedValue);
248
136
  };
249
137
  ScaleContinuous.prototype.invertWithStep = function (value, data) {
250
138
  if (data.length === 0) {
251
- return { value: NaN, withinBandwidth: false };
139
+ return { withinBandwidth: false, value: NaN };
252
140
  }
253
141
  var invertedValue = this.invert(value);
254
142
  var bisectValue = this.bandwidth === 0 ? invertedValue + this.minInterval / 2 : invertedValue;
255
143
  var leftIndex = (0, d3_array_1.bisectLeft)(data, bisectValue);
256
144
  if (leftIndex === 0) {
257
- if (invertedValue < data[0]) {
258
- return {
259
- value: data[0] - this.minInterval * Math.ceil((data[0] - invertedValue) / this.minInterval),
260
- withinBandwidth: false,
261
- };
262
- }
145
+ var withinBandwidth_1 = invertedValue >= data[0];
263
146
  return {
264
- value: data[0],
265
- withinBandwidth: true,
147
+ withinBandwidth: withinBandwidth_1,
148
+ value: data[0] + (withinBandwidth_1 ? 0 : -this.minInterval * Math.ceil((data[0] - invertedValue) / this.minInterval)),
266
149
  };
267
150
  }
268
151
  var currentValue = data[leftIndex - 1];
@@ -271,48 +154,90 @@ var ScaleContinuous = (function () {
271
154
  var nextDiff = Math.abs(nextValue - invertedValue);
272
155
  var prevDiff = Math.abs(invertedValue - currentValue);
273
156
  return {
274
- value: nextDiff <= prevDiff ? nextValue : currentValue,
275
- withinBandwidth: true,
276
- };
277
- }
278
- if (invertedValue - currentValue <= this.minInterval) {
279
- return {
280
- value: currentValue,
281
157
  withinBandwidth: true,
158
+ value: nextDiff <= prevDiff ? nextValue : currentValue,
282
159
  };
283
160
  }
161
+ var withinBandwidth = invertedValue - currentValue <= this.minInterval;
284
162
  return {
285
- value: currentValue + this.minInterval * Math.floor((invertedValue - currentValue) / this.minInterval),
286
- withinBandwidth: false,
163
+ withinBandwidth: withinBandwidth,
164
+ value: currentValue +
165
+ (withinBandwidth ? 0 : this.minInterval * Math.floor((invertedValue - currentValue) / this.minInterval)),
287
166
  };
288
167
  };
289
168
  ScaleContinuous.prototype.isSingleValue = function () {
290
- if (this.isSingleValueHistogram) {
291
- return true;
292
- }
293
- if (this.domain.length < 2) {
294
- return true;
295
- }
296
- var min = this.domain[0];
297
- var max = this.domain[this.domain.length - 1];
298
- return max === min;
169
+ return this.isSingleValueHistogram || isDegenerateDomain(this.domain);
299
170
  };
300
171
  ScaleContinuous.prototype.isValueInDomain = function (value) {
301
- return value >= this.domain[0] && value <= this.domain[1];
172
+ return this.domain[0] <= value && value <= this.domain[1];
302
173
  };
303
174
  ScaleContinuous.prototype.handleDomainPadding = function () { };
304
175
  return ScaleContinuous;
305
176
  }());
306
177
  exports.ScaleContinuous = ScaleContinuous;
307
- function getDomainPolarity(domain) {
308
- var _a = __read(domain, 2), min = _a[0], max = _a[1];
309
- if (min >= 0 && max >= 0) {
310
- return 1;
311
- }
312
- if (min <= 0 && max <= 0) {
313
- return -1;
314
- }
315
- return 0;
178
+ function getTimeTicks(desiredTickCount, timeZone, domain) {
179
+ var startDomain = (0, date_time_1.getMomentWithTz)(domain[0], timeZone);
180
+ var endDomain = (0, date_time_1.getMomentWithTz)(domain[1], timeZone);
181
+ var offset = startDomain.utcOffset();
182
+ var shiftedDomainMin = startDomain.add(offset, 'minutes').valueOf();
183
+ var shiftedDomainMax = endDomain.add(offset, 'minutes').valueOf();
184
+ var tzShiftedScale = (0, d3_scale_1.scaleUtc)().domain([shiftedDomainMin, shiftedDomainMax]);
185
+ var rawTicks = tzShiftedScale.ticks(desiredTickCount);
186
+ var timePerTick = (shiftedDomainMax - shiftedDomainMin) / rawTicks.length;
187
+ var hasHourTicks = timePerTick < 1000 * 60 * 60 * 12;
188
+ return rawTicks.map(function (d) {
189
+ var currentDateTime = (0, date_time_1.getMomentWithTz)(d, timeZone);
190
+ var currentOffset = hasHourTicks ? offset : currentDateTime.utcOffset();
191
+ return currentDateTime.subtract(currentOffset, 'minutes').valueOf();
192
+ });
193
+ }
194
+ function isDegenerateDomain(domain) {
195
+ return domain.every(function (v) { return v === domain[0]; });
196
+ }
197
+ function limitLogScaleDomain(_a, logMinLimit) {
198
+ var _b = __read(_a, 2), min = _b[0], max = _b[1];
199
+ var absLimit = Math.abs(logMinLimit);
200
+ var fallback = absLimit || constants_1.LOG_MIN_ABS_DOMAIN;
201
+ if (absLimit > 0 && min > 0 && min < absLimit)
202
+ return max > absLimit ? [absLimit, max] : [absLimit, absLimit];
203
+ if (absLimit > 0 && max < 0 && max > -absLimit)
204
+ return min < -absLimit ? [min, -absLimit] : [-absLimit, -absLimit];
205
+ if (min === 0)
206
+ return max > 0 ? [fallback, max] : max < 0 ? [-fallback, max] : [fallback, fallback];
207
+ if (max === 0)
208
+ return min > 0 ? [min, fallback] : min < 0 ? [min, -fallback] : [fallback, fallback];
209
+ if (min < 0 && max > 0)
210
+ return Math.abs(max) >= Math.abs(min) ? [fallback, max] : [min, -fallback];
211
+ if (min > 0 && max < 0)
212
+ return Math.abs(min) >= Math.abs(max) ? [min, fallback] : [-fallback, max];
213
+ return [min, max];
214
+ }
215
+ exports.limitLogScaleDomain = limitLogScaleDomain;
216
+ function getPixelPaddedDomain(chartHeight, domain, desiredPixelPadding, constrainDomainPadding, intercept) {
217
+ if (intercept === void 0) { intercept = 0; }
218
+ var inverted = domain[1] < domain[0];
219
+ var orderedDomain = inverted ? [domain[1], domain[0]] : domain;
220
+ var scaleMultiplier = (0, screenspace_marker_scale_compressor_1.screenspaceMarkerScaleCompressor)(orderedDomain, [2 * desiredPixelPadding, 2 * desiredPixelPadding], chartHeight).scaleMultiplier;
221
+ var baselinePaddedDomainLo = orderedDomain[0] - desiredPixelPadding / scaleMultiplier;
222
+ var baselinePaddedDomainHigh = orderedDomain[1] + desiredPixelPadding / scaleMultiplier;
223
+ var crossBelow = constrainDomainPadding && baselinePaddedDomainLo < intercept && orderedDomain[0] >= intercept;
224
+ var crossAbove = constrainDomainPadding && baselinePaddedDomainHigh > 0 && orderedDomain[1] <= 0;
225
+ var paddedDomainLo = crossBelow
226
+ ? intercept
227
+ : crossAbove
228
+ ? orderedDomain[0] -
229
+ desiredPixelPadding /
230
+ (0, screenspace_marker_scale_compressor_1.screenspaceMarkerScaleCompressor)([orderedDomain[0], intercept], [2 * desiredPixelPadding, 0], chartHeight)
231
+ .scaleMultiplier
232
+ : baselinePaddedDomainLo;
233
+ var paddedDomainHigh = crossBelow
234
+ ? orderedDomain[1] +
235
+ desiredPixelPadding /
236
+ (0, screenspace_marker_scale_compressor_1.screenspaceMarkerScaleCompressor)([intercept, orderedDomain[1]], [0, 2 * desiredPixelPadding], chartHeight)
237
+ .scaleMultiplier
238
+ : crossAbove
239
+ ? intercept
240
+ : baselinePaddedDomainHigh;
241
+ return inverted ? [paddedDomainHigh, paddedDomainLo] : [paddedDomainLo, paddedDomainHigh];
316
242
  }
317
- exports.getDomainPolarity = getDomainPolarity;
318
243
  //# sourceMappingURL=scale_continuous.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scale_continuous.js","sourceRoot":"","sources":["../../src/scales/scale_continuous.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scale_continuous.js","sourceRoot":"","sources":["../../src/scales/scale_continuous.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,20 @@
1
- export {};
1
+ /**
2
+ * Options specific to log scales
3
+ * @public
4
+ */
5
+ export interface LogScaleOptions {
6
+ /**
7
+ * Min value to render on log scale
8
+ *
9
+ * Defaults to min value of domain, or LOG_MIN_ABS_DOMAIN if mixed polarity
10
+ */
11
+ logMinLimit?: number;
12
+ /**
13
+ * Base for log scale
14
+ *
15
+ * @defaultValue 10
16
+ * (i.e. log base 10)
17
+ */
18
+ logBase?: number;
19
+ }
2
20
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/scales/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/scales/types.ts"],"names":[],"mappings":"AAqCA;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/specs/constants.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAMxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,cAAc;AACd,eAAO,MAAM,QAAQ;;;;;;;EAOnB,CAAC;AACH,cAAc;AACd,oBAAY,QAAQ,GAAG,OAAO,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD;;;GAGG;AACH,eAAO,MAAM,MAAM;IACjB;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AACH,cAAc;AACd,oBAAY,MAAM,GAAG,OAAO,CAAC,OAAO,MAAM,CAAC,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,SAAS;IACpB;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AACH,cAAc;AACd,oBAAY,SAAS,GAAG,OAAO,CAAC,OAAO,SAAS,CAAC,CAAC;AAElD,cAAc;AACd,eAAO,MAAM,gBAAgB;;;EAG3B,CAAC;AACH,cAAc;AACd,oBAAY,gBAAgB,GAAG,OAAO,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE;;;GAGG;AACH,eAAO,MAAM,WAAW;IACtB,yCAAyC;;IAEzC,sCAAsC;;IAEtC,mCAAmC;;IAEnC,yBAAyB;;EAEzB,CAAC;AACH;;;GAGG;AACH,oBAAY,WAAW,GAAG,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC;AAEtD,cAAc;AACd,eAAO,MAAM,SAAS;;;;EAIpB,CAAC;AACH,cAAc;AACd,oBAAY,SAAS,GAAG,OAAO,CAAC,OAAO,SAAS,CAAC,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;EAI/B,CAAC;AACH,cAAc;AACd,oBAAY,oBAAoB,GAAG,OAAO,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;EAQzB,CAAC;AACH,cAAc;AACd,oBAAY,cAAc,GAAG,OAAO,CAAC,OAAO,cAAc,CAAC,CAAC;AAC5D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,YAA6B,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAuBzC,cAAc;AACd,eAAO,MAAM,qBAAqB,EAAE,YAsBnC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/specs/constants.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAMxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,cAAc;AACd,eAAO,MAAM,QAAQ;;;;;;;EAOnB,CAAC;AACH,cAAc;AACd,oBAAY,QAAQ,GAAG,OAAO,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD;;;GAGG;AACH,eAAO,MAAM,MAAM;IACjB;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AACH,cAAc;AACd,oBAAY,MAAM,GAAG,OAAO,CAAC,OAAO,MAAM,CAAC,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,SAAS;IACpB;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AACH,cAAc;AACd,oBAAY,SAAS,GAAG,OAAO,CAAC,OAAO,SAAS,CAAC,CAAC;AAElD,cAAc;AACd,eAAO,MAAM,gBAAgB;;;EAG3B,CAAC;AACH,cAAc;AACd,oBAAY,gBAAgB,GAAG,OAAO,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE;;;GAGG;AACH,eAAO,MAAM,WAAW;IACtB,yCAAyC;;IAEzC,sCAAsC;;IAEtC,mCAAmC;;IAEnC,yBAAyB;;EAEzB,CAAC;AACH;;;GAGG;AACH,oBAAY,WAAW,GAAG,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC;AAEtD,cAAc;AACd,eAAO,MAAM,SAAS;;;;EAIpB,CAAC;AACH,cAAc;AACd,oBAAY,SAAS,GAAG,OAAO,CAAC,OAAO,SAAS,CAAC,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;EAI/B,CAAC;AACH,cAAc;AACd,oBAAY,oBAAoB,GAAG,OAAO,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;EAQzB,CAAC;AACH,cAAc;AACd,oBAAY,cAAc,GAAG,OAAO,CAAC,OAAO,cAAc,CAAC,CAAC;AAC5D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,YAA6B,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAuBzC,cAAc;AACd,eAAO,MAAM,qBAAqB,EAAE,YAuBnC,CAAC"}
@@ -78,5 +78,5 @@ exports.DEFAULT_SETTINGS_SPEC = __assign({ id: '__global__settings___', chartTyp
78
78
  tooltip: {
79
79
  visible: false,
80
80
  },
81
- }, baseTheme: light_theme_1.LIGHT_THEME, brushAxis: exports.BrushAxis.X, minBrushDelta: 2, ariaUseDefaultSummary: true, ariaLabelHeadingLevel: 'p' }, exports.DEFAULT_LEGEND_CONFIG);
81
+ }, baseTheme: light_theme_1.LIGHT_THEME, brushAxis: exports.BrushAxis.X, minBrushDelta: 2, ariaUseDefaultSummary: true, ariaLabelHeadingLevel: 'p', allowBrushingLastHistogramBin: true }, exports.DEFAULT_LEGEND_CONFIG);
82
82
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/specs/constants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAUA,8CAA2C;AAC3C,iDAA+E;AAC/E,0CAA2C;AAC3C,2DAA0D;AAI7C,QAAA,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,QAAiB;IACzB,IAAI,EAAE,MAAe;IACrB,UAAU,EAAE,YAAqB;IACjC,QAAQ,EAAE,UAAmB;IAC7B,UAAU,EAAE,aAAsB;IAClC,cAAc,EAAE,iBAA0B;CAC3C,CAAC,CAAC;AAQU,QAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAIlC,GAAG,EAAE,KAAc;IAInB,IAAI,EAAE,MAAe;CACtB,CAAC,CAAC;AAQU,QAAA,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;IAIrC,SAAS,EAAE,WAAoB;IAI/B,UAAU,EAAE,YAAqB;CAClC,CAAC,CAAC;AAKU,QAAA,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,MAAe;IACrB,GAAG,EAAE,KAAc;CACpB,CAAC,CAAC;AAQU,QAAA,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IAEvC,cAAc,EAAE,UAAmB;IAEnC,UAAU,EAAE,OAAgB;IAE5B,MAAM,EAAE,QAAiB;IAEzB,IAAI,EAAE,MAAe;CACtB,CAAC,CAAC;AAQU,QAAA,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,CAAC,EAAE,GAAY;IACf,CAAC,EAAE,GAAY;IACf,IAAI,EAAE,MAAe;CACtB,CAAC,CAAC;AAQU,QAAA,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,CAAC,EAAE,GAAY;IACf,CAAC,EAAE,GAAY;IACf,IAAI,EAAE,MAAe;CACtB,CAAC,CAAC;AAQU,QAAA,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,GAAG,EAAE,eAAG;IACR,MAAM,EAAE,kBAAM;IACd,MAAM,EAAE,kBAAM;IACd,IAAI,EAAE,gBAAI;IACV,KAAK,EAAE,iBAAK;IACZ,MAAM,EAAE,kBAAM;IACd,aAAa,EAAE,eAAwB;CACxC,CAAC,CAAC;AAQU,QAAA,oBAAoB,GAAG,mBAAW,CAAC,cAAc,CAAC;AAOlD,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAM5B,QAAA,qBAAqB,GAAG;IACnC,UAAU,EAAE,KAAK;IACjB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,QAAQ;IACxB,cAAc,EAAE,iBAAQ,CAAC,KAAK;CAC/B,CAAC;AAMW,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,4BAAoB;IAC1B,IAAI,EAAE,4BAAoB;IAC1B,cAAc,EAAE,KAAK;CACtB,CAAC;AAGW,QAAA,qBAAqB,cAChC,EAAE,EAAE,uBAAuB,EAC3B,SAAS,EAAE,uBAAS,CAAC,MAAM,EAC3B,QAAQ,EAAE,gBAAQ,CAAC,QAAQ,EAC3B,SAAS,EAAE,QAAiB,EAC5B,QAAQ,EAAE,CAAU,EACpB,WAAW,EAAE,IAAI,EACjB,cAAc,EAAE,EAAE,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,8BAAsB,EAC/B,oBAAoB,EAAE,4BAAoB,CAAC,CAAC,EAC5C,qBAAqB,EAAE;QACrB,OAAO,EAAE;YACP,OAAO,EAAE,KAAK;SACf;KACF,EACD,SAAS,EAAE,yBAAW,EACtB,SAAS,EAAE,iBAAS,CAAC,CAAC,EACtB,aAAa,EAAE,CAAC,EAChB,qBAAqB,EAAE,IAAI,EAC3B,qBAAqB,EAAE,GAAG,IACvB,6BAAqB,EACxB"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/specs/constants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAUA,8CAA2C;AAC3C,iDAA+E;AAC/E,0CAA2C;AAC3C,2DAA0D;AAI7C,QAAA,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,QAAiB;IACzB,IAAI,EAAE,MAAe;IACrB,UAAU,EAAE,YAAqB;IACjC,QAAQ,EAAE,UAAmB;IAC7B,UAAU,EAAE,aAAsB;IAClC,cAAc,EAAE,iBAA0B;CAC3C,CAAC,CAAC;AAQU,QAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAIlC,GAAG,EAAE,KAAc;IAInB,IAAI,EAAE,MAAe;CACtB,CAAC,CAAC;AAQU,QAAA,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;IAIrC,SAAS,EAAE,WAAoB;IAI/B,UAAU,EAAE,YAAqB;CAClC,CAAC,CAAC;AAKU,QAAA,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,MAAe;IACrB,GAAG,EAAE,KAAc;CACpB,CAAC,CAAC;AAQU,QAAA,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IAEvC,cAAc,EAAE,UAAmB;IAEnC,UAAU,EAAE,OAAgB;IAE5B,MAAM,EAAE,QAAiB;IAEzB,IAAI,EAAE,MAAe;CACtB,CAAC,CAAC;AAQU,QAAA,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,CAAC,EAAE,GAAY;IACf,CAAC,EAAE,GAAY;IACf,IAAI,EAAE,MAAe;CACtB,CAAC,CAAC;AAQU,QAAA,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,CAAC,EAAE,GAAY;IACf,CAAC,EAAE,GAAY;IACf,IAAI,EAAE,MAAe;CACtB,CAAC,CAAC;AAQU,QAAA,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,GAAG,EAAE,eAAG;IACR,MAAM,EAAE,kBAAM;IACd,MAAM,EAAE,kBAAM;IACd,IAAI,EAAE,gBAAI;IACV,KAAK,EAAE,iBAAK;IACZ,MAAM,EAAE,kBAAM;IACd,aAAa,EAAE,eAAwB;CACxC,CAAC,CAAC;AAQU,QAAA,oBAAoB,GAAG,mBAAW,CAAC,cAAc,CAAC;AAOlD,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAM5B,QAAA,qBAAqB,GAAG;IACnC,UAAU,EAAE,KAAK;IACjB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,QAAQ;IACxB,cAAc,EAAE,iBAAQ,CAAC,KAAK;CAC/B,CAAC;AAMW,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,4BAAoB;IAC1B,IAAI,EAAE,4BAAoB;IAC1B,cAAc,EAAE,KAAK;CACtB,CAAC;AAGW,QAAA,qBAAqB,cAChC,EAAE,EAAE,uBAAuB,EAC3B,SAAS,EAAE,uBAAS,CAAC,MAAM,EAC3B,QAAQ,EAAE,gBAAQ,CAAC,QAAQ,EAC3B,SAAS,EAAE,QAAiB,EAC5B,QAAQ,EAAE,CAAU,EACpB,WAAW,EAAE,IAAI,EACjB,cAAc,EAAE,EAAE,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,8BAAsB,EAC/B,oBAAoB,EAAE,4BAAoB,CAAC,CAAC,EAC5C,qBAAqB,EAAE;QACrB,OAAO,EAAE;YACP,OAAO,EAAE,KAAK;SACf;KACF,EACD,SAAS,EAAE,yBAAW,EACtB,SAAS,EAAE,iBAAS,CAAC,CAAC,EACtB,aAAa,EAAE,CAAC,EAChB,qBAAqB,EAAE,IAAI,EAC3B,qBAAqB,EAAE,GAAG,EAC1B,6BAA6B,EAAE,IAAI,IAChC,6BAAqB,EACxB"}
@@ -525,27 +525,20 @@ export interface SettingsSpec extends Spec, LegendSpec {
525
525
  roundHistogramBrushValues?: boolean;
526
526
  /**
527
527
  * Boolean to allow brushing on last bucket even when outside domain or limit to end of domain.
528
- *
528
+ * Should apply only for histogram charts
529
529
  * e.g.
530
530
  * A brush selection range of [1.23, 3.6] with a domain of [1, 2, 3]
531
531
  *
532
532
  * - when true returns [1.23, 3.6]
533
533
  * - when false returns [1.23, 3]
534
534
  *
535
- * @defaultValue false
535
+ * @defaultValue true
536
536
  */
537
- allowBrushingLastHistogramBucket?: boolean;
537
+ allowBrushingLastHistogramBin: boolean;
538
538
  /**
539
539
  * Orders ordinal x values
540
540
  */
541
541
  orderOrdinalBinsBy?: OrderBy;
542
- /**
543
- * A compare function or an object of compare functions to sort
544
- * series in different part of the chart like tooltip, legend and
545
- * the rendering order on the screen. To assign the same compare function.
546
- * @defaultValue the series are sorted in order of appearance in the chart configuration
547
- * @alpha
548
- */
549
542
  /**
550
543
  * Render component for no results UI
551
544
  */
@@ -619,7 +612,7 @@ export interface OrderBy {
619
612
  direction?: Direction;
620
613
  }
621
614
  /** @public */
622
- export declare type DefaultSettingsProps = 'id' | 'chartType' | 'specType' | 'rendering' | 'rotation' | 'resizeDebounce' | 'pointerUpdateDebounce' | 'pointerUpdateTrigger' | 'animateData' | 'debug' | 'tooltip' | 'theme' | 'brushAxis' | 'minBrushDelta' | 'externalPointerEvents' | 'showLegend' | 'showLegendExtra' | 'legendPosition' | 'legendMaxDepth' | 'ariaUseDefaultSummary' | 'ariaLabelHeadingLevel' | 'ariaTableCaption';
615
+ export declare type DefaultSettingsProps = 'id' | 'chartType' | 'specType' | 'rendering' | 'rotation' | 'resizeDebounce' | 'pointerUpdateDebounce' | 'pointerUpdateTrigger' | 'animateData' | 'debug' | 'tooltip' | 'theme' | 'brushAxis' | 'minBrushDelta' | 'externalPointerEvents' | 'showLegend' | 'showLegendExtra' | 'legendPosition' | 'legendMaxDepth' | 'ariaUseDefaultSummary' | 'ariaLabelHeadingLevel' | 'ariaTableCaption' | 'allowBrushingLastHistogramBin';
623
616
  /** @public */
624
617
  export declare type SettingsSpecProps = Partial<Omit<SettingsSpec, 'chartType' | 'specType' | 'id'>>;
625
618
  /** @public */