@elastic/charts 61.0.0 → 61.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. package/dist/chart_types/bullet_graph/chart_state.d.ts +2 -0
  2. package/dist/chart_types/bullet_graph/chart_state.d.ts.map +1 -0
  3. package/dist/chart_types/bullet_graph/chart_state.js +61 -0
  4. package/dist/chart_types/bullet_graph/chart_state.js.map +1 -0
  5. package/dist/chart_types/bullet_graph/renderer/canvas/bullet_graph.d.ts +2 -0
  6. package/dist/chart_types/bullet_graph/renderer/canvas/bullet_graph.d.ts.map +1 -0
  7. package/dist/chart_types/bullet_graph/renderer/canvas/bullet_graph.js +122 -0
  8. package/dist/chart_types/bullet_graph/renderer/canvas/bullet_graph.js.map +1 -0
  9. package/dist/chart_types/bullet_graph/renderer/canvas/constants.d.ts +2 -0
  10. package/dist/chart_types/bullet_graph/renderer/canvas/constants.d.ts.map +1 -0
  11. package/dist/chart_types/bullet_graph/renderer/canvas/constants.js +14 -0
  12. package/dist/chart_types/bullet_graph/renderer/canvas/constants.js.map +1 -0
  13. package/dist/chart_types/bullet_graph/renderer/canvas/index.d.ts +2 -0
  14. package/dist/chart_types/bullet_graph/renderer/canvas/index.d.ts.map +1 -0
  15. package/dist/chart_types/bullet_graph/renderer/canvas/index.js +169 -0
  16. package/dist/chart_types/bullet_graph/renderer/canvas/index.js.map +1 -0
  17. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/angular.d.ts +2 -0
  18. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/angular.d.ts.map +1 -0
  19. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/angular.js +94 -0
  20. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/angular.js.map +1 -0
  21. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/horizontal.d.ts +2 -0
  22. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/horizontal.d.ts.map +1 -0
  23. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/horizontal.js +62 -0
  24. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/horizontal.js.map +1 -0
  25. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/index.d.ts +4 -0
  26. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/index.d.ts.map +1 -0
  27. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/index.js +20 -0
  28. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/index.js.map +1 -0
  29. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/vertical.d.ts +2 -0
  30. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/vertical.d.ts.map +1 -0
  31. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/vertical.js +62 -0
  32. package/dist/chart_types/bullet_graph/renderer/canvas/sub_types/vertical.js.map +1 -0
  33. package/dist/chart_types/bullet_graph/selectors/can_display_chart_titles.d.ts +2 -0
  34. package/dist/chart_types/bullet_graph/selectors/can_display_chart_titles.d.ts.map +1 -0
  35. package/dist/chart_types/bullet_graph/selectors/can_display_chart_titles.js +10 -0
  36. package/dist/chart_types/bullet_graph/selectors/can_display_chart_titles.js.map +1 -0
  37. package/dist/chart_types/bullet_graph/selectors/get_active_value.d.ts +2 -0
  38. package/dist/chart_types/bullet_graph/selectors/get_active_value.d.ts.map +1 -0
  39. package/dist/chart_types/bullet_graph/selectors/get_active_value.js +119 -0
  40. package/dist/chart_types/bullet_graph/selectors/get_active_value.js.map +1 -0
  41. package/dist/chart_types/bullet_graph/selectors/get_active_values.d.ts +2 -0
  42. package/dist/chart_types/bullet_graph/selectors/get_active_values.d.ts.map +1 -0
  43. package/dist/chart_types/bullet_graph/selectors/get_active_values.js +25 -0
  44. package/dist/chart_types/bullet_graph/selectors/get_active_values.js.map +1 -0
  45. package/dist/chart_types/bullet_graph/selectors/get_bullet_spec.d.ts +2 -0
  46. package/dist/chart_types/bullet_graph/selectors/get_bullet_spec.d.ts.map +1 -0
  47. package/dist/chart_types/bullet_graph/selectors/get_bullet_spec.js +11 -0
  48. package/dist/chart_types/bullet_graph/selectors/get_bullet_spec.js.map +1 -0
  49. package/dist/chart_types/bullet_graph/selectors/get_chart_size.d.ts +2 -0
  50. package/dist/chart_types/bullet_graph/selectors/get_chart_size.d.ts.map +1 -0
  51. package/dist/chart_types/bullet_graph/selectors/get_chart_size.js +9 -0
  52. package/dist/chart_types/bullet_graph/selectors/get_chart_size.js.map +1 -0
  53. package/dist/chart_types/bullet_graph/selectors/get_layout.d.ts +2 -0
  54. package/dist/chart_types/bullet_graph/selectors/get_layout.d.ts.map +1 -0
  55. package/dist/chart_types/bullet_graph/selectors/get_layout.js +152 -0
  56. package/dist/chart_types/bullet_graph/selectors/get_layout.js.map +1 -0
  57. package/dist/chart_types/bullet_graph/selectors/get_panel_dimensions.d.ts +2 -0
  58. package/dist/chart_types/bullet_graph/selectors/get_panel_dimensions.d.ts.map +1 -0
  59. package/dist/chart_types/bullet_graph/selectors/get_panel_dimensions.js +135 -0
  60. package/dist/chart_types/bullet_graph/selectors/get_panel_dimensions.js.map +1 -0
  61. package/dist/chart_types/bullet_graph/selectors/get_tooltip_anchor.d.ts +2 -0
  62. package/dist/chart_types/bullet_graph/selectors/get_tooltip_anchor.d.ts.map +1 -0
  63. package/dist/chart_types/bullet_graph/selectors/get_tooltip_anchor.js +15 -0
  64. package/dist/chart_types/bullet_graph/selectors/get_tooltip_anchor.js.map +1 -0
  65. package/dist/chart_types/bullet_graph/selectors/get_tooltip_info.d.ts +2 -0
  66. package/dist/chart_types/bullet_graph/selectors/get_tooltip_info.d.ts.map +1 -0
  67. package/dist/chart_types/bullet_graph/selectors/get_tooltip_info.js +63 -0
  68. package/dist/chart_types/bullet_graph/selectors/get_tooltip_info.js.map +1 -0
  69. package/dist/chart_types/bullet_graph/selectors/has_chart_titles.d.ts +2 -0
  70. package/dist/chart_types/bullet_graph/selectors/has_chart_titles.d.ts.map +1 -0
  71. package/dist/chart_types/bullet_graph/selectors/has_chart_titles.js +10 -0
  72. package/dist/chart_types/bullet_graph/selectors/has_chart_titles.js.map +1 -0
  73. package/dist/chart_types/bullet_graph/selectors/is_tooltip_visible.d.ts +2 -0
  74. package/dist/chart_types/bullet_graph/selectors/is_tooltip_visible.d.ts.map +1 -0
  75. package/dist/chart_types/bullet_graph/selectors/is_tooltip_visible.js +17 -0
  76. package/dist/chart_types/bullet_graph/selectors/is_tooltip_visible.js.map +1 -0
  77. package/dist/chart_types/bullet_graph/spec.d.ts +76 -0
  78. package/dist/chart_types/bullet_graph/spec.d.ts.map +1 -0
  79. package/dist/chart_types/bullet_graph/spec.js +37 -0
  80. package/dist/chart_types/bullet_graph/spec.js.map +1 -0
  81. package/dist/chart_types/bullet_graph/theme.d.ts +18 -0
  82. package/dist/chart_types/bullet_graph/theme.d.ts.map +1 -0
  83. package/dist/chart_types/bullet_graph/theme.js +77 -0
  84. package/dist/chart_types/bullet_graph/theme.js.map +1 -0
  85. package/dist/chart_types/bullet_graph/utils/angular.d.ts +2 -0
  86. package/dist/chart_types/bullet_graph/utils/angular.d.ts.map +1 -0
  87. package/dist/chart_types/bullet_graph/utils/angular.js +52 -0
  88. package/dist/chart_types/bullet_graph/utils/angular.js.map +1 -0
  89. package/dist/chart_types/bullet_graph/utils/bounds.d.ts +43 -0
  90. package/dist/chart_types/bullet_graph/utils/bounds.d.ts.map +1 -0
  91. package/dist/chart_types/bullet_graph/utils/bounds.js +3 -0
  92. package/dist/chart_types/bullet_graph/utils/bounds.js.map +1 -0
  93. package/dist/chart_types/bullet_graph/utils/color.d.ts +57 -0
  94. package/dist/chart_types/bullet_graph/utils/color.d.ts.map +1 -0
  95. package/dist/chart_types/bullet_graph/utils/color.js +185 -0
  96. package/dist/chart_types/bullet_graph/utils/color.js.map +1 -0
  97. package/dist/chart_types/bullet_graph/utils/ticks.d.ts +2 -0
  98. package/dist/chart_types/bullet_graph/utils/ticks.d.ts.map +1 -0
  99. package/dist/chart_types/bullet_graph/utils/ticks.js +13 -0
  100. package/dist/chart_types/bullet_graph/utils/ticks.js.map +1 -0
  101. package/dist/chart_types/goal_chart/layout/viewmodel/utils.js +2 -2
  102. package/dist/chart_types/goal_chart/layout/viewmodel/utils.js.map +1 -1
  103. package/dist/chart_types/goal_chart/specs/index.d.ts +1 -0
  104. package/dist/chart_types/goal_chart/specs/index.d.ts.map +1 -1
  105. package/dist/chart_types/goal_chart/specs/index.js.map +1 -1
  106. package/dist/chart_types/heatmap/layout/viewmodel/scenegraph.js.map +1 -1
  107. package/dist/chart_types/heatmap/layout/viewmodel/viewmodel.d.ts.map +1 -1
  108. package/dist/chart_types/heatmap/layout/viewmodel/viewmodel.js.map +1 -1
  109. package/dist/chart_types/heatmap/renderer/canvas/connected_component.js.map +1 -1
  110. package/dist/chart_types/heatmap/renderer/canvas/utils.js.map +1 -1
  111. package/dist/chart_types/heatmap/scales/band_color_scale.js.map +1 -1
  112. package/dist/chart_types/heatmap/specs/heatmap.d.ts +1 -1
  113. package/dist/chart_types/heatmap/state/selectors/get_color_scale.js.map +1 -1
  114. package/dist/chart_types/heatmap/state/selectors/get_highlighted_legend_bands.js.map +1 -1
  115. package/dist/chart_types/index.d.ts +1 -0
  116. package/dist/chart_types/index.d.ts.map +1 -1
  117. package/dist/chart_types/index.js +1 -0
  118. package/dist/chart_types/index.js.map +1 -1
  119. package/dist/chart_types/metric/renderer/dom/index.js +10 -9
  120. package/dist/chart_types/metric/renderer/dom/index.js.map +1 -1
  121. package/dist/chart_types/metric/renderer/dom/metric.js +9 -7
  122. package/dist/chart_types/metric/renderer/dom/metric.js.map +1 -1
  123. package/dist/chart_types/metric/renderer/dom/progress.js +47 -17
  124. package/dist/chart_types/metric/renderer/dom/progress.js.map +1 -1
  125. package/dist/chart_types/metric/renderer/dom/text.js +2 -2
  126. package/dist/chart_types/metric/renderer/dom/text.js.map +1 -1
  127. package/dist/chart_types/metric/specs/index.d.ts +7 -2
  128. package/dist/chart_types/metric/specs/index.d.ts.map +1 -1
  129. package/dist/chart_types/metric/specs/index.js +7 -2
  130. package/dist/chart_types/metric/specs/index.js.map +1 -1
  131. package/dist/chart_types/specs.d.ts +2 -0
  132. package/dist/chart_types/specs.d.ts.map +1 -1
  133. package/dist/chart_types/specs.js +4 -1
  134. package/dist/chart_types/specs.js.map +1 -1
  135. package/dist/chart_types/xy_chart/renderer/canvas/lines.js +10 -1
  136. package/dist/chart_types/xy_chart/renderer/canvas/lines.js.map +1 -1
  137. package/dist/chart_types/xy_chart/renderer/canvas/utils/debug.js +15 -1
  138. package/dist/chart_types/xy_chart/renderer/canvas/utils/debug.js.map +1 -1
  139. package/dist/chart_types/xy_chart/specs/area_series.d.ts +2 -2
  140. package/dist/chart_types/xy_chart/specs/axis.d.ts +1 -1
  141. package/dist/chart_types/xy_chart/specs/bar_series.d.ts +2 -2
  142. package/dist/chart_types/xy_chart/specs/bubble_series.d.ts +2 -2
  143. package/dist/chart_types/xy_chart/specs/histogram_bar_series.d.ts +2 -2
  144. package/dist/chart_types/xy_chart/specs/line_annotation.d.ts +2 -2
  145. package/dist/chart_types/xy_chart/specs/line_series.d.ts +2 -2
  146. package/dist/chart_types/xy_chart/specs/rect_annotation.d.ts +1 -1
  147. package/dist/common/color_library_wrappers.js +2 -0
  148. package/dist/common/color_library_wrappers.js.map +1 -1
  149. package/dist/common/colors.d.ts.map +1 -1
  150. package/dist/common/colors.js.map +1 -1
  151. package/dist/common/fill_text_color.js +1 -9
  152. package/dist/common/fill_text_color.js.map +1 -1
  153. package/dist/components/grid/aligned_grid.d.ts +2 -0
  154. package/dist/components/grid/aligned_grid.d.ts.map +1 -0
  155. package/dist/components/grid/aligned_grid.js +44 -0
  156. package/dist/components/grid/aligned_grid.js.map +1 -0
  157. package/dist/components/icons/assets/down_arrow.d.ts +2 -0
  158. package/dist/components/icons/assets/down_arrow.d.ts.map +1 -0
  159. package/dist/components/icons/assets/down_arrow.js +13 -0
  160. package/dist/components/icons/assets/down_arrow.js.map +1 -0
  161. package/dist/components/icons/icon.js +2 -0
  162. package/dist/components/icons/icon.js.map +1 -1
  163. package/dist/index.d.ts +5 -3
  164. package/dist/index.d.ts.map +1 -1
  165. package/dist/index.js +4 -3
  166. package/dist/index.js.map +1 -1
  167. package/dist/renderers/canvas/index.js +2 -1
  168. package/dist/renderers/canvas/index.js.map +1 -1
  169. package/dist/specs/settings.d.ts +4 -4
  170. package/dist/specs/settings.d.ts.map +1 -1
  171. package/dist/state/chart_state.js +14 -12
  172. package/dist/state/chart_state.js.map +1 -1
  173. package/dist/state/selectors/get_active_pointer_position.js.map +1 -1
  174. package/dist/state/selectors/get_resolved_background_color.d.ts +2 -0
  175. package/dist/state/selectors/get_resolved_background_color.d.ts.map +1 -0
  176. package/dist/state/selectors/get_resolved_background_color.js +16 -0
  177. package/dist/state/selectors/get_resolved_background_color.js.map +1 -0
  178. package/dist/theme.scss +103 -5
  179. package/dist/theme_dark.css +1 -1
  180. package/dist/theme_dark.css.map +1 -1
  181. package/dist/theme_light.css +1 -1
  182. package/dist/theme_light.css.map +1 -1
  183. package/dist/theme_only_dark.css +1 -1
  184. package/dist/theme_only_dark.css.map +1 -1
  185. package/dist/theme_only_light.css +1 -1
  186. package/dist/theme_only_light.css.map +1 -1
  187. package/dist/utils/bbox/canvas_text_bbox_calculator.js +3 -2
  188. package/dist/utils/bbox/canvas_text_bbox_calculator.js.map +1 -1
  189. package/dist/utils/common.d.ts.map +1 -1
  190. package/dist/utils/common.js +16 -1
  191. package/dist/utils/common.js.map +1 -1
  192. package/dist/utils/domain.d.ts +2 -0
  193. package/dist/utils/domain.d.ts.map +1 -1
  194. package/dist/utils/domain.js.map +1 -1
  195. package/dist/utils/text/wrap.js +6 -2
  196. package/dist/utils/text/wrap.js.map +1 -1
  197. package/dist/utils/themes/base_colors.d.ts +6 -0
  198. package/dist/utils/themes/base_colors.d.ts.map +1 -0
  199. package/dist/utils/themes/base_colors.js +22 -0
  200. package/dist/utils/themes/base_colors.js.map +1 -0
  201. package/dist/utils/themes/dark_theme.d.ts +1 -3
  202. package/dist/utils/themes/dark_theme.d.ts.map +1 -1
  203. package/dist/utils/themes/dark_theme.js +27 -32
  204. package/dist/utils/themes/dark_theme.js.map +1 -1
  205. package/dist/utils/themes/legacy_dark_theme.d.ts.map +1 -1
  206. package/dist/utils/themes/legacy_dark_theme.js +3 -0
  207. package/dist/utils/themes/legacy_dark_theme.js.map +1 -1
  208. package/dist/utils/themes/legacy_light_theme.d.ts.map +1 -1
  209. package/dist/utils/themes/legacy_light_theme.js +3 -0
  210. package/dist/utils/themes/legacy_light_theme.js.map +1 -1
  211. package/dist/utils/themes/light_theme.d.ts +1 -3
  212. package/dist/utils/themes/light_theme.d.ts.map +1 -1
  213. package/dist/utils/themes/light_theme.js +25 -30
  214. package/dist/utils/themes/light_theme.js.map +1 -1
  215. package/dist/utils/themes/theme.d.ts +6 -0
  216. package/dist/utils/themes/theme.d.ts.map +1 -1
  217. package/dist/utils/themes/theme.js.map +1 -1
  218. package/package.json +2 -2
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=chart_state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart_state.d.ts","sourceRoot":"","sources":["../../../src/chart_types/bullet_graph/chart_state.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BulletGraphState = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const canvas_1 = require("./renderer/canvas");
9
+ const can_display_chart_titles_1 = require("./selectors/can_display_chart_titles");
10
+ const get_tooltip_anchor_1 = require("./selectors/get_tooltip_anchor");
11
+ const get_tooltip_info_1 = require("./selectors/get_tooltip_info");
12
+ const is_tooltip_visible_1 = require("./selectors/is_tooltip_visible");
13
+ const chart_types_1 = require("../../chart_types");
14
+ const constants_1 = require("../../common/constants");
15
+ const tooltip_1 = require("../../components/tooltip/tooltip");
16
+ const get_internal_is_intialized_1 = require("../../state/selectors/get_internal_is_intialized");
17
+ const EMPTY_MAP = new Map();
18
+ const EMPTY_LEGEND_LIST = [];
19
+ const EMPTY_LEGEND_ITEM_LIST = [];
20
+ class BulletGraphState {
21
+ constructor() {
22
+ this.chartType = chart_types_1.ChartType.BulletGraph;
23
+ this.getChartTypeDescription = () => 'Bullet Graph';
24
+ this.chartRenderer = (containerRef, forwardStageRef) => (react_1.default.createElement(react_1.default.Fragment, null,
25
+ react_1.default.createElement(canvas_1.BulletGraphRenderer, { forwardStageRef: forwardStageRef }),
26
+ react_1.default.createElement(tooltip_1.Tooltip, { getChartContainerRef: containerRef })));
27
+ this.isInitialized = () => get_internal_is_intialized_1.InitStatus.Initialized;
28
+ this.isBrushAvailable = () => false;
29
+ this.isBrushing = () => false;
30
+ this.isChartEmpty = () => false;
31
+ this.getLegendItems = () => EMPTY_LEGEND_LIST;
32
+ this.getLegendItemsLabels = () => EMPTY_LEGEND_ITEM_LIST;
33
+ this.getLegendExtraValues = () => EMPTY_MAP;
34
+ this.getPointerCursor = () => constants_1.DEFAULT_CSS_CURSOR;
35
+ this.eventCallbacks = () => { };
36
+ this.getProjectionContainerArea = () => ({ width: 0, height: 0, top: 0, left: 0 });
37
+ this.getMainProjectionArea = () => ({ width: 0, height: 0, top: 0, left: 0 });
38
+ this.getBrushArea = () => null;
39
+ this.getDebugState = () => ({});
40
+ }
41
+ isTooltipVisible(globalState) {
42
+ return (0, is_tooltip_visible_1.isTooltipVisible)(globalState);
43
+ }
44
+ getTooltipInfo(globalState) {
45
+ return (0, get_tooltip_info_1.getTooltipInfo)(globalState);
46
+ }
47
+ getTooltipAnchor(globalState) {
48
+ return (0, get_tooltip_anchor_1.getTooltipAnchor)(globalState);
49
+ }
50
+ getSmallMultiplesDomains() {
51
+ return {
52
+ smHDomain: [],
53
+ smVDomain: [],
54
+ };
55
+ }
56
+ canDisplayChartTitles(globalState) {
57
+ return (0, can_display_chart_titles_1.canDisplayChartTitles)(globalState);
58
+ }
59
+ }
60
+ exports.BulletGraphState = BulletGraphState;
61
+ //# sourceMappingURL=chart_state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart_state.js","sourceRoot":"","sources":["../../../src/chart_types/bullet_graph/chart_state.tsx"],"names":[],"mappings":";;;;;;AAQA,kDAAyC;AAEzC,8CAAwD;AACxD,mFAA6E;AAC7E,uEAAkE;AAClE,mEAA8D;AAC9D,uEAAkE;AAClE,mDAA8C;AAC9C,sDAA4D;AAE5D,8DAA2D;AAE3D,iGAA8E;AAG9E,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;AAC5B,MAAM,iBAAiB,GAAiB,EAAE,CAAC;AAC3C,MAAM,sBAAsB,GAAsB,EAAE,CAAC;AAGrD,MAAa,gBAAgB;IAA7B;QACE,cAAS,GAAG,uBAAS,CAAC,WAAW,CAAC;QAClC,4BAAuB,GAAG,GAAG,EAAE,CAAC,cAAc,CAAC;QAC/C,kBAAa,GAAG,CAAC,YAAyB,EAAE,eAA6C,EAAE,EAAE,CAAC,CAC5F;YACE,8BAAC,4BAAmB,IAAC,eAAe,EAAE,eAAe,GAAI;YACzD,8BAAC,iBAAO,IAAC,oBAAoB,EAAE,YAAY,GAAI,CAC9C,CACJ,CAAC;QAEF,kBAAa,GAAG,GAAG,EAAE,CAAC,uCAAU,CAAC,WAAW,CAAC;QAC7C,qBAAgB,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC;QAC/B,eAAU,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC;QACzB,iBAAY,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC;QAC3B,mBAAc,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAC;QACzC,yBAAoB,GAAG,GAAG,EAAE,CAAC,sBAAsB,CAAC;QACpD,yBAAoB,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC;QACvC,qBAAgB,GAAG,GAAG,EAAE,CAAC,8BAAkB,CAAC;QAa5C,mBAAc,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QAC1B,+BAA0B,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9E,0BAAqB,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACzE,iBAAY,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;QAC1B,kBAAa,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAW7B,CAAC;IA3BC,gBAAgB,CAAC,WAA6B;QAC5C,OAAO,IAAA,qCAAgB,EAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IAED,cAAc,CAAC,WAA6B;QAC1C,OAAO,IAAA,iCAAc,EAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAED,gBAAgB,CAAC,WAA6B;QAC5C,OAAO,IAAA,qCAAgB,EAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IAOD,wBAAwB;QACtB,OAAO;YACL,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,EAAE;SACd,CAAC;IACJ,CAAC;IAED,qBAAqB,CAAC,WAA6B;QACjD,OAAO,IAAA,gDAAqB,EAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;CACF;AA7CD,4CA6CC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=bullet_graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bullet_graph.d.ts","sourceRoot":"","sources":["../../../../../src/chart_types/bullet_graph/renderer/canvas/bullet_graph.ts"],"names":[],"mappings":""}
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.renderBulletGraph = void 0;
4
+ const sub_types_1 = require("./sub_types");
5
+ const colors_1 = require("../../../../common/colors");
6
+ const text_utils_1 = require("../../../../common/text_utils");
7
+ const canvas_1 = require("../../../../renderers/canvas");
8
+ const debug_1 = require("../../../xy_chart/renderer/canvas/utils/debug");
9
+ const spec_1 = require("../../spec");
10
+ const theme_1 = require("../../theme");
11
+ function renderBulletGraph(ctx, dpr, props) {
12
+ const { debug, style, dimensions, activeValues, spec, backgroundColor } = props;
13
+ (0, canvas_1.withContext)(ctx, (ctx) => {
14
+ ctx.scale(dpr, dpr);
15
+ (0, canvas_1.clearCanvas)(ctx, backgroundColor);
16
+ if (!spec || dimensions.shouldRenderMetric) {
17
+ return;
18
+ }
19
+ ctx.fillStyle = backgroundColor;
20
+ dimensions.rows.forEach((row, rowIndex) => row.forEach((bulletGraph, columnIndex) => {
21
+ if (!bulletGraph)
22
+ return;
23
+ const { panel, multiline } = bulletGraph;
24
+ (0, canvas_1.withContext)(ctx, (ctx) => {
25
+ var _a;
26
+ const verticalAlignment = dimensions.layoutAlignment[rowIndex];
27
+ const activeValue = (_a = activeValues === null || activeValues === void 0 ? void 0 : activeValues[rowIndex]) === null || _a === void 0 ? void 0 : _a[columnIndex];
28
+ if (debug) {
29
+ (0, debug_1.renderDebugRect)(ctx, panel);
30
+ }
31
+ ctx.translate(panel.x, panel.y);
32
+ ctx.strokeStyle = style.border;
33
+ if (row.length > 1 && columnIndex < row.length - 1) {
34
+ ctx.beginPath();
35
+ ctx.moveTo(panel.width, 0);
36
+ ctx.lineTo(panel.width, panel.height);
37
+ ctx.stroke();
38
+ }
39
+ if (dimensions.rows.length > 1 && columnIndex < dimensions.rows.length) {
40
+ ctx.beginPath();
41
+ ctx.moveTo(0, panel.height);
42
+ ctx.lineTo(panel.width, panel.height);
43
+ ctx.stroke();
44
+ }
45
+ ctx.translate(theme_1.HEADER_PADDING.left, theme_1.HEADER_PADDING.top);
46
+ ctx.textBaseline = 'alphabetic';
47
+ const MAX_TARGET_VALUE_ASCENT = (0, theme_1.getMaxTargetValueAssent)(bulletGraph.target);
48
+ const commonYBaseline = Math.max((0, theme_1.getTextAscentHeight)(theme_1.TITLE_FONT_SIZE, verticalAlignment.maxTitleRows, theme_1.TITLE_LINE_SPACING) +
49
+ (verticalAlignment.maxSubtitleRows > 0 ? theme_1.FONT_PADDING : 0) +
50
+ (0, theme_1.getTextAscentHeight)(theme_1.SUBTITLE_FONT_SIZE, verticalAlignment.maxSubtitleRows), verticalAlignment.multiline ? 0 : MAX_TARGET_VALUE_ASCENT);
51
+ ctx.fillStyle = props.style.textColor;
52
+ ctx.textAlign = 'start';
53
+ ctx.font = (0, text_utils_1.cssFontShorthand)(theme_1.TITLE_FONT, theme_1.TITLE_FONT_SIZE);
54
+ const titleYBaseline = commonYBaseline -
55
+ (0, theme_1.getTextAscentHeight)(theme_1.SUBTITLE_FONT_SIZE, verticalAlignment.maxSubtitleRows) -
56
+ (verticalAlignment.maxSubtitleRows > 0 ? theme_1.FONT_PADDING : 0);
57
+ bulletGraph.title
58
+ .slice()
59
+ .reverse()
60
+ .forEach((titleLine, lineIndex) => {
61
+ const y = titleYBaseline - lineIndex * ((0, theme_1.getTextAscentHeight)(theme_1.TITLE_FONT_SIZE) + theme_1.TITLE_LINE_SPACING);
62
+ ctx.fillText(titleLine, 0, y);
63
+ });
64
+ if (bulletGraph.subtitle) {
65
+ ctx.font = (0, text_utils_1.cssFontShorthand)(theme_1.SUBTITLE_FONT, theme_1.SUBTITLE_FONT_SIZE);
66
+ ctx.fillText(bulletGraph.subtitle, 0, commonYBaseline);
67
+ }
68
+ ctx.font = (0, text_utils_1.cssFontShorthand)(theme_1.VALUE_FONT, theme_1.VALUE_FONT_SIZE);
69
+ if (!multiline)
70
+ ctx.textAlign = 'end';
71
+ {
72
+ const y = commonYBaseline + (multiline ? MAX_TARGET_VALUE_ASCENT + theme_1.FONT_PADDING : 0);
73
+ const x = multiline ? 0 : bulletGraph.header.width - bulletGraph.targetWidth;
74
+ ctx.fillText(bulletGraph.value, x, y);
75
+ }
76
+ if (bulletGraph.target) {
77
+ ctx.font = (0, text_utils_1.cssFontShorthand)(theme_1.TARGET_FONT, theme_1.TARGET_FONT_SIZE);
78
+ if (!multiline)
79
+ ctx.textAlign = 'end';
80
+ const x = multiline ? bulletGraph.valueWidth : bulletGraph.header.width;
81
+ const y = commonYBaseline + (multiline ? MAX_TARGET_VALUE_ASCENT + theme_1.FONT_PADDING : 0);
82
+ ctx.fillText(bulletGraph.target, x, y);
83
+ }
84
+ ctx.translate(-theme_1.HEADER_PADDING.left, -theme_1.HEADER_PADDING.top);
85
+ const { graphArea } = bulletGraph;
86
+ if (spec.subtype !== spec_1.BulletGraphSubtype.horizontal) {
87
+ ctx.strokeStyle = style.border;
88
+ ctx.beginPath();
89
+ ctx.moveTo(theme_1.HEADER_PADDING.left, graphArea.origin.y);
90
+ ctx.lineTo(panel.width - theme_1.HEADER_PADDING.right, graphArea.origin.y);
91
+ ctx.stroke();
92
+ }
93
+ (0, canvas_1.withContext)(ctx, (ctx) => {
94
+ ctx.translate(graphArea.origin.x, graphArea.origin.y);
95
+ if (spec.subtype === spec_1.BulletGraphSubtype.horizontal) {
96
+ (0, sub_types_1.horizontalBullet)(ctx, bulletGraph, style, backgroundColor, activeValue);
97
+ }
98
+ else if (spec.subtype === spec_1.BulletGraphSubtype.vertical) {
99
+ (0, sub_types_1.verticalBullet)(ctx, bulletGraph, style, backgroundColor, activeValue);
100
+ }
101
+ else {
102
+ (0, sub_types_1.angularBullet)(ctx, bulletGraph, style, backgroundColor, spec, debug, activeValue);
103
+ }
104
+ });
105
+ if (debug) {
106
+ (0, canvas_1.withContext)(ctx, (ctx) => {
107
+ ctx.translate(graphArea.origin.x, graphArea.origin.y);
108
+ (0, debug_1.renderDebugRect)(ctx, {
109
+ ...graphArea.size,
110
+ x: 0,
111
+ y: 0,
112
+ }, 0, { color: colors_1.Colors.Transparent.rgba });
113
+ (0, debug_1.renderDebugPoint)(ctx, 0, 0);
114
+ (0, debug_1.renderDebugPoint)(ctx, graphArea.size.width / 2, graphArea.size.height / 2);
115
+ });
116
+ }
117
+ });
118
+ }));
119
+ });
120
+ }
121
+ exports.renderBulletGraph = renderBulletGraph;
122
+ //# sourceMappingURL=bullet_graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bullet_graph.js","sourceRoot":"","sources":["../../../../../src/chart_types/bullet_graph/renderer/canvas/bullet_graph.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/chart_types/bullet_graph/renderer/canvas/constants.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ANGULAR_TICK_INTERVAL = exports.TICK_INTERVAL = exports.HOVER_SLOP = exports.MAX_TICK_COUNT = exports.MIN_TICK_COUNT = exports.TICK_WIDTH = exports.BAR_SIZE = exports.BULLET_SIZE = exports.TARGET_STROKE_WIDTH = exports.TARGET_SIZE = void 0;
4
+ exports.TARGET_SIZE = 40;
5
+ exports.TARGET_STROKE_WIDTH = 3;
6
+ exports.BULLET_SIZE = 32;
7
+ exports.BAR_SIZE = 12;
8
+ exports.TICK_WIDTH = 1;
9
+ exports.MIN_TICK_COUNT = 3;
10
+ exports.MAX_TICK_COUNT = 8;
11
+ exports.HOVER_SLOP = 20;
12
+ exports.TICK_INTERVAL = 100;
13
+ exports.ANGULAR_TICK_INTERVAL = 120;
14
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/chart_types/bullet_graph/renderer/canvas/constants.ts"],"names":[],"mappings":";;;AASa,QAAA,WAAW,GAAG,EAAE,CAAC;AAGjB,QAAA,mBAAmB,GAAG,CAAC,CAAC;AAGxB,QAAA,WAAW,GAAG,EAAE,CAAC;AAGjB,QAAA,QAAQ,GAAG,EAAE,CAAC;AAGd,QAAA,UAAU,GAAG,CAAC,CAAC;AAGf,QAAA,cAAc,GAAG,CAAC,CAAC;AAGnB,QAAA,cAAc,GAAG,CAAC,CAAC;AAGnB,QAAA,UAAU,GAAG,EAAE,CAAC;AAGhB,QAAA,aAAa,GAAG,GAAG,CAAC;AAGpB,QAAA,qBAAqB,GAAG,GAAG,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/chart_types/bullet_graph/renderer/canvas/index.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,169 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BulletGraphRenderer = void 0;
7
+ const chroma_js_1 = __importDefault(require("chroma-js"));
8
+ const react_1 = __importDefault(require("react"));
9
+ const react_redux_1 = require("react-redux");
10
+ const redux_1 = require("redux");
11
+ const bullet_graph_1 = require("./bullet_graph");
12
+ const color_library_wrappers_1 = require("../../../../common/color_library_wrappers");
13
+ const colors_1 = require("../../../../common/colors");
14
+ const aligned_grid_1 = require("../../../../components/grid/aligned_grid");
15
+ const specs_1 = require("../../../../specs");
16
+ const chart_1 = require("../../../../state/actions/chart");
17
+ const get_accessibility_config_1 = require("../../../../state/selectors/get_accessibility_config");
18
+ const get_chart_theme_1 = require("../../../../state/selectors/get_chart_theme");
19
+ const get_internal_is_intialized_1 = require("../../../../state/selectors/get_internal_is_intialized");
20
+ const get_resolved_background_color_1 = require("../../../../state/selectors/get_resolved_background_color");
21
+ const get_settings_spec_1 = require("../../../../state/selectors/get_settings_spec");
22
+ const fast_deep_equal_1 = require("../../../../utils/fast_deep_equal");
23
+ const light_theme_1 = require("../../../../utils/themes/light_theme");
24
+ const metric_1 = require("../../../metric/renderer/dom/metric");
25
+ const get_active_values_1 = require("../../selectors/get_active_values");
26
+ const get_bullet_spec_1 = require("../../selectors/get_bullet_spec");
27
+ const get_chart_size_1 = require("../../selectors/get_chart_size");
28
+ const get_panel_dimensions_1 = require("../../selectors/get_panel_dimensions");
29
+ const has_chart_titles_1 = require("../../selectors/has_chart_titles");
30
+ const spec_1 = require("../../spec");
31
+ const theme_1 = require("../../theme");
32
+ class Component extends react_1.default.Component {
33
+ constructor(props) {
34
+ super(props);
35
+ this.ctx = null;
36
+ this.devicePixelRatio = window.devicePixelRatio;
37
+ }
38
+ componentDidMount() {
39
+ this.tryCanvasContext();
40
+ if (this.props.initialized) {
41
+ this.drawCanvas();
42
+ this.props.onChartRendered();
43
+ }
44
+ }
45
+ shouldComponentUpdate(nextProps) {
46
+ return !(0, fast_deep_equal_1.deepEqual)(this.props, nextProps);
47
+ }
48
+ componentDidUpdate() {
49
+ if (!this.ctx) {
50
+ this.tryCanvasContext();
51
+ }
52
+ if (this.props.initialized) {
53
+ this.drawCanvas();
54
+ this.props.onChartRendered();
55
+ }
56
+ }
57
+ tryCanvasContext() {
58
+ const canvas = this.props.forwardStageRef.current;
59
+ this.ctx = canvas && canvas.getContext('2d');
60
+ }
61
+ drawCanvas() {
62
+ if (this.ctx) {
63
+ (0, bullet_graph_1.renderBulletGraph)(this.ctx, this.devicePixelRatio, this.props);
64
+ }
65
+ }
66
+ render() {
67
+ const { initialized, size, forwardStageRef, a11y, dimensions, spec, style, backgroundColor, locale, contrastOptions, } = this.props;
68
+ if (!initialized || size.width === 0 || size.height === 0 || !spec) {
69
+ return null;
70
+ }
71
+ const valueLabels = (0, spec_1.mergeValueLabels)(spec.valueLabels);
72
+ return (react_1.default.createElement("figure", { "aria-labelledby": a11y.labelId, "aria-describedby": a11y.descriptionId, style: { width: '100%', height: '100%' } },
73
+ react_1.default.createElement("canvas", { ref: forwardStageRef, className: "echCanvasRenderer", width: size.width * this.devicePixelRatio, height: size.height * this.devicePixelRatio, style: size, role: "presentation" }),
74
+ dimensions.shouldRenderMetric && (react_1.default.createElement("div", { className: "echBulletAsMetric", style: { width: '100%', height: '100%' } },
75
+ react_1.default.createElement(aligned_grid_1.AlignedGrid, { data: spec.data, contentComponent: ({ datum, stats }) => {
76
+ var _a;
77
+ const colorScale = chroma_js_1.default
78
+ .scale(Array.isArray(this.props.colorBands) ? this.props.colorBands : this.props.style.colorBands)
79
+ .domain(datum.domain);
80
+ const bulletDatum = {
81
+ value: datum.value,
82
+ target: datum.target,
83
+ valueFormatter: datum.valueFormatter,
84
+ targetFormatter: datum.targetFormatter,
85
+ color: style.barBackground,
86
+ progressBarDirection: spec.subtype === spec_1.BulletGraphSubtype.vertical ? 'vertical' : 'horizontal',
87
+ title: datum.title,
88
+ subtitle: datum.subtitle,
89
+ domain: datum.domain,
90
+ niceDomain: datum.niceDomain,
91
+ valueLabels,
92
+ extra: datum.target ? (react_1.default.createElement("span", null,
93
+ valueLabels.target,
94
+ ":",
95
+ ' ',
96
+ react_1.default.createElement("strong", null, ((_a = datum.targetFormatter) !== null && _a !== void 0 ? _a : datum.valueFormatter)(datum.target)))) : undefined,
97
+ };
98
+ return (react_1.default.createElement(metric_1.Metric, { chartId: "XX", datum: bulletDatum, hasTitles: this.props.hasTitles, totalRows: stats.rows, totalColumns: stats.columns, columnIndex: stats.columnIndex, rowIndex: stats.rowIndex, style: {
99
+ barBackground: colorScale(datum.value).hex(),
100
+ emptyBackground: colors_1.Colors.Transparent.keyword,
101
+ border: 'gray',
102
+ minHeight: 0,
103
+ text: {
104
+ lightColor: 'white',
105
+ darkColor: 'black',
106
+ },
107
+ nonFiniteText: 'N/A',
108
+ }, locale: locale, backgroundColor: backgroundColor, contrastOptions: contrastOptions, panel: { width: size.width / stats.columns, height: size.height / stats.rows } }));
109
+ } }),
110
+ ");"))));
111
+ }
112
+ }
113
+ Component.displayName = 'BulletGraph';
114
+ const mapDispatchToProps = (dispatch) => (0, redux_1.bindActionCreators)({
115
+ onChartRendered: chart_1.onChartRendered,
116
+ }, dispatch);
117
+ const DEFAULT_PROPS = {
118
+ initialized: false,
119
+ debug: false,
120
+ chartId: '',
121
+ spec: undefined,
122
+ hasTitles: false,
123
+ size: {
124
+ width: 0,
125
+ height: 0,
126
+ },
127
+ a11y: get_accessibility_config_1.DEFAULT_A11Y_SETTINGS,
128
+ dimensions: {
129
+ rows: [],
130
+ panel: { height: 0, width: 0 },
131
+ layoutAlignment: [],
132
+ shouldRenderMetric: false,
133
+ },
134
+ activeValues: [],
135
+ style: theme_1.LIGHT_THEME_BULLET_STYLE,
136
+ backgroundColor: light_theme_1.LIGHT_THEME.background.color,
137
+ locale: specs_1.settingsBuildProps.defaults.locale,
138
+ colorBands: light_theme_1.LIGHT_THEME.bulletGraph.colorBands,
139
+ contrastOptions: {},
140
+ };
141
+ const mapStateToProps = (state) => {
142
+ if ((0, get_internal_is_intialized_1.getInternalIsInitializedSelector)(state) !== get_internal_is_intialized_1.InitStatus.Initialized) {
143
+ return DEFAULT_PROPS;
144
+ }
145
+ const { bulletGraph: style, metric: metricStyle } = (0, get_chart_theme_1.getChartThemeSelector)(state);
146
+ const { debug, onElementOver, locale } = (0, get_settings_spec_1.getSettingsSpecSelector)(state);
147
+ return {
148
+ initialized: true,
149
+ debug,
150
+ chartId: state.chartId,
151
+ hasTitles: (0, has_chart_titles_1.hasChartTitles)(state),
152
+ spec: (0, get_bullet_spec_1.getBulletSpec)(state),
153
+ size: (0, get_chart_size_1.getChartSize)(state),
154
+ a11y: (0, get_accessibility_config_1.getA11ySettingsSelector)(state),
155
+ dimensions: (0, get_panel_dimensions_1.getPanelDimensions)(state),
156
+ activeValues: (0, get_active_values_1.getActiveValues)(state),
157
+ style,
158
+ locale,
159
+ backgroundColor: (0, get_resolved_background_color_1.getResolvedBackgroundColorSelector)(state),
160
+ colorBands: style.colorBands,
161
+ onElementOver,
162
+ contrastOptions: {
163
+ lightColor: (0, color_library_wrappers_1.colorToRgba)(metricStyle.text.lightColor),
164
+ darkColor: (0, color_library_wrappers_1.colorToRgba)(metricStyle.text.darkColor),
165
+ },
166
+ };
167
+ };
168
+ exports.BulletGraphRenderer = (0, react_redux_1.connect)(mapStateToProps, mapDispatchToProps)(Component);
169
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/chart_types/bullet_graph/renderer/canvas/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=angular.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular.d.ts","sourceRoot":"","sources":["../../../../../../src/chart_types/bullet_graph/renderer/canvas/sub_types/angular.ts"],"names":[],"mappings":""}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.angularBullet = void 0;
4
+ const text_utils_1 = require("../../../../../common/text_utils");
5
+ const canvas_text_bbox_calculator_1 = require("../../../../../utils/bbox/canvas_text_bbox_calculator");
6
+ const common_1 = require("../../../../../utils/common");
7
+ const lines_1 = require("../../../../xy_chart/renderer/canvas/lines");
8
+ const debug_1 = require("../../../../xy_chart/renderer/canvas/utils/debug");
9
+ const theme_1 = require("../../../theme");
10
+ const angular_1 = require("../../../utils/angular");
11
+ const constants_1 = require("../constants");
12
+ function angularBullet(ctx, dimensions, style, backgroundColor, spec, debug, activeValue) {
13
+ const { datum, graphArea, scale, ticks, colorBands } = dimensions;
14
+ const { radius } = (0, angular_1.getAngledChartSizing)(graphArea.size, spec.subtype);
15
+ const [startAngle, endAngle] = scale.range();
16
+ const center = {
17
+ x: graphArea.center.x,
18
+ y: radius + constants_1.TARGET_SIZE / 2,
19
+ };
20
+ ctx.translate(theme_1.GRAPH_PADDING.left, theme_1.GRAPH_PADDING.top);
21
+ const [start, end] = scale.domain();
22
+ const counterClockwise = startAngle < endAngle && start > end;
23
+ const [min, max] = (0, common_1.sortNumbers)([start, end]);
24
+ const formatterColorTicks = ticks.map((v) => ({ value: v, formattedValue: datum.tickFormatter(v) }));
25
+ colorBands.forEach((band) => {
26
+ ctx.beginPath();
27
+ ctx.arc(center.x, center.y, radius, band.start, band.end, false);
28
+ ctx.lineWidth = constants_1.BULLET_SIZE;
29
+ ctx.strokeStyle = band.color;
30
+ ctx.stroke();
31
+ });
32
+ ctx.beginPath();
33
+ ctx.strokeStyle = backgroundColor;
34
+ ctx.lineWidth = constants_1.TICK_WIDTH;
35
+ formatterColorTicks
36
+ .filter((tick) => tick.value > min && tick.value < max)
37
+ .forEach((tick) => {
38
+ const bulletWidth = constants_1.BULLET_SIZE + 4;
39
+ (0, lines_1.drawPolarLine)(ctx, scale(tick.value), radius, bulletWidth, center);
40
+ });
41
+ ctx.stroke();
42
+ const confinedValue = (0, common_1.clamp)(datum.value, min, max);
43
+ const adjustedZero = (0, common_1.clamp)(0, min, max);
44
+ ctx.beginPath();
45
+ ctx.lineWidth = constants_1.BAR_SIZE;
46
+ ctx.strokeStyle = style.barBackground;
47
+ ctx.arc(center.x, center.y, radius, confinedValue > 0 ? scale(adjustedZero) : scale(confinedValue), confinedValue > 0 ? scale(confinedValue) : scale(adjustedZero), counterClockwise);
48
+ ctx.stroke();
49
+ if ((0, common_1.isFiniteNumber)(datum.target) && datum.target <= max && datum.target >= min) {
50
+ ctx.beginPath();
51
+ ctx.strokeStyle = style.barBackground;
52
+ ctx.lineWidth = constants_1.TARGET_STROKE_WIDTH;
53
+ (0, lines_1.drawPolarLine)(ctx, scale(datum.target), radius, constants_1.TARGET_SIZE, center);
54
+ ctx.stroke();
55
+ }
56
+ if ((0, common_1.isBetween)(min, max, true)(0)) {
57
+ ctx.beginPath();
58
+ ctx.strokeStyle = style.barBackground;
59
+ ctx.lineWidth = constants_1.TICK_WIDTH;
60
+ (0, lines_1.drawPolarLine)(ctx, scale(0), radius, constants_1.BULLET_SIZE, center);
61
+ ctx.stroke();
62
+ }
63
+ const measure = (0, canvas_text_bbox_calculator_1.measureText)(ctx);
64
+ const maxTickWidth = formatterColorTicks.reduce((acc, t) => {
65
+ const { width } = measure(t.formattedValue, theme_1.TICK_FONT, theme_1.TICK_FONT_SIZE);
66
+ return Math.max(acc, width);
67
+ }, 0);
68
+ ctx.fillStyle = style.textColor;
69
+ ctx.textBaseline = 'middle';
70
+ ctx.font = (0, text_utils_1.cssFontShorthand)(theme_1.TICK_FONT, theme_1.TICK_FONT_SIZE);
71
+ formatterColorTicks
72
+ .filter((tick) => tick.value >= min && tick.value <= max)
73
+ .forEach((tick) => {
74
+ ctx.textAlign = 'center';
75
+ const textPadding = style.angularTickLabelPadding + maxTickWidth / 2;
76
+ const start = scale(tick.value);
77
+ const y1 = Math.sin(start) * (radius - constants_1.BULLET_SIZE / 2 - textPadding);
78
+ const x1 = Math.cos(start) * (radius - constants_1.BULLET_SIZE / 2 - textPadding);
79
+ ctx.fillText(tick.formattedValue, center.x + x1, center.y + y1);
80
+ });
81
+ if (activeValue) {
82
+ ctx.beginPath();
83
+ ctx.strokeStyle = style.barBackground;
84
+ ctx.lineWidth = constants_1.TARGET_STROKE_WIDTH;
85
+ (0, lines_1.drawPolarLine)(ctx, activeValue.value, radius, constants_1.TARGET_SIZE, center);
86
+ ctx.stroke();
87
+ }
88
+ ctx.beginPath();
89
+ if (debug) {
90
+ (0, debug_1.renderDebugPoint)(ctx, center.x, center.y);
91
+ }
92
+ }
93
+ exports.angularBullet = angularBullet;
94
+ //# sourceMappingURL=angular.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular.js","sourceRoot":"","sources":["../../../../../../src/chart_types/bullet_graph/renderer/canvas/sub_types/angular.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=horizontal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"horizontal.d.ts","sourceRoot":"","sources":["../../../../../../src/chart_types/bullet_graph/renderer/canvas/sub_types/horizontal.ts"],"names":[],"mappings":""}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.horizontalBullet = void 0;
4
+ const text_utils_1 = require("../../../../../common/text_utils");
5
+ const canvas_text_bbox_calculator_1 = require("../../../../../utils/bbox/canvas_text_bbox_calculator");
6
+ const common_1 = require("../../../../../utils/common");
7
+ const theme_1 = require("../../../theme");
8
+ const constants_1 = require("../constants");
9
+ function horizontalBullet(ctx, dimensions, style, backgroundColor, activeValue) {
10
+ ctx.translate(theme_1.GRAPH_PADDING.left, 0);
11
+ const { datum, colorBands, ticks, scale } = dimensions;
12
+ const [start, end] = scale.domain();
13
+ const [min, max] = (0, common_1.sortNumbers)([start, end]);
14
+ const verticalAlignment = constants_1.TARGET_SIZE / 2;
15
+ colorBands.forEach((band) => {
16
+ ctx.fillStyle = band.color;
17
+ ctx.fillRect(band.start, verticalAlignment - constants_1.BULLET_SIZE / 2, band.size, constants_1.BULLET_SIZE);
18
+ });
19
+ ctx.beginPath();
20
+ ctx.strokeStyle = backgroundColor;
21
+ ctx.lineWidth = constants_1.TICK_WIDTH;
22
+ ticks
23
+ .filter((tick) => tick > min && tick < max)
24
+ .forEach((tick) => {
25
+ ctx.moveTo(scale(tick), verticalAlignment - constants_1.BULLET_SIZE / 2);
26
+ ctx.lineTo(scale(tick), verticalAlignment + constants_1.BULLET_SIZE / 2);
27
+ });
28
+ ctx.stroke();
29
+ const confinedValue = (0, common_1.clamp)(datum.value, min, max);
30
+ const adjustedZero = (0, common_1.clamp)(0, min, max);
31
+ ctx.fillStyle = style.barBackground;
32
+ ctx.fillRect(datum.value > 0 ? scale(adjustedZero) : scale(confinedValue), verticalAlignment - constants_1.BAR_SIZE / 2, confinedValue > 0 ? scale(confinedValue) - scale(adjustedZero) : scale(adjustedZero) - scale(confinedValue), constants_1.BAR_SIZE);
33
+ if ((0, common_1.isFiniteNumber)(datum.target) && datum.target <= max && datum.target >= min) {
34
+ ctx.fillRect(scale(datum.target) - constants_1.TARGET_STROKE_WIDTH / 2, verticalAlignment - constants_1.TARGET_SIZE / 2, constants_1.TARGET_STROKE_WIDTH, constants_1.TARGET_SIZE);
35
+ }
36
+ if ((0, common_1.isBetween)(min, max, true)(0)) {
37
+ ctx.fillRect(scale(0) - constants_1.TICK_WIDTH / 2, verticalAlignment - constants_1.BULLET_SIZE / 2, constants_1.TICK_WIDTH, constants_1.BULLET_SIZE);
38
+ }
39
+ if (activeValue && (datum.syncCursor || !activeValue.external)) {
40
+ ctx.fillRect(activeValue.value - constants_1.TARGET_STROKE_WIDTH / 2, verticalAlignment - constants_1.TARGET_SIZE / 2, constants_1.TARGET_STROKE_WIDTH, constants_1.TARGET_SIZE);
41
+ }
42
+ ctx.fillStyle = style.textColor;
43
+ ctx.textBaseline = 'top';
44
+ ctx.font = (0, text_utils_1.cssFontShorthand)(theme_1.TICK_FONT, theme_1.TICK_FONT_SIZE);
45
+ ticks
46
+ .filter((tick) => tick >= min && tick <= max)
47
+ .forEach((tick, i) => {
48
+ var _a;
49
+ const labelText = datum.tickFormatter(tick);
50
+ if (i === ticks.length - 1) {
51
+ const availableWidth = Math.abs((start > end ? min : max) - ((_a = ticks.at(i)) !== null && _a !== void 0 ? _a : NaN));
52
+ const { width: labelWidth } = (0, canvas_text_bbox_calculator_1.measureText)(ctx)(labelText, theme_1.TICK_FONT, theme_1.TICK_FONT_SIZE);
53
+ ctx.textAlign = labelWidth >= Math.abs(scale(availableWidth) - scale(0)) ? 'end' : 'start';
54
+ }
55
+ else {
56
+ ctx.textAlign = 'start';
57
+ }
58
+ ctx.fillText(labelText, scale(tick), verticalAlignment + constants_1.TARGET_SIZE / 2);
59
+ });
60
+ }
61
+ exports.horizontalBullet = horizontalBullet;
62
+ //# sourceMappingURL=horizontal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"horizontal.js","sourceRoot":"","sources":["../../../../../../src/chart_types/bullet_graph/renderer/canvas/sub_types/horizontal.ts"],"names":[],"mappings":"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"}