@tetacom/svg-charts 1.0.2 → 1.1.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 (265) hide show
  1. package/{dist/chart → chart}/base/series-base.component.d.ts +4 -1
  2. package/{dist/chart → chart}/chart/chart.component.d.ts +12 -9
  3. package/chart/chart-container/chart-container.component.d.ts +37 -0
  4. package/chart/chart-container/gridlines/gridlines.component.d.ts +14 -0
  5. package/{dist/chart/chart-container/plotband/plotband.component.d.ts → chart/chart-container/plotband/plot-band.component.d.ts} +11 -10
  6. package/{dist/chart → chart}/chart-container/plotline/plotline.component.d.ts +5 -5
  7. package/{dist/chart → chart}/chart-container/series/bar/bar-series.component.d.ts +0 -0
  8. package/{dist/chart → chart}/chart-container/series/line/line-series.component.d.ts +2 -2
  9. package/chart/chart-container/series/scatter-series/scatter-series.component.d.ts +28 -0
  10. package/{dist/chart → chart}/chart-container/series-host/series-host.component.d.ts +4 -1
  11. package/{dist/chart → chart}/chart-container/tooltip/tooltip.component.d.ts +6 -3
  12. package/chart/chart-container/x-axis/x-axis.component.d.ts +19 -0
  13. package/chart/chart-container/y-axis/y-axis.component.d.ts +20 -0
  14. package/{dist/chart → chart}/chart.module.d.ts +4 -3
  15. package/{dist/chart → chart}/core/axis/axis.d.ts +8 -3
  16. package/{dist/chart → chart}/core/axis/builders/axis-size-builder.d.ts +0 -0
  17. package/{dist/chart → chart}/core/axis/builders/extremes-builder.d.ts +0 -0
  18. package/{dist/chart → chart}/core/axis/builders/public-api.d.ts +0 -0
  19. package/{dist/chart → chart}/core/utils/generate-ticks.d.ts +0 -0
  20. package/{dist/chart → chart}/core/utils/get-text-width.d.ts +0 -0
  21. package/{dist/chart → chart}/core/utils/public-api.d.ts +0 -0
  22. package/chart/default/default-axis-config.d.ts +2 -0
  23. package/chart/default/default-chart-config.d.ts +2 -0
  24. package/chart/default/default-series-config.d.ts +3 -0
  25. package/{dist/chart → chart}/directives/brushable.directive.d.ts +2 -1
  26. package/{dist/chart → chart}/directives/zoomable.directive.d.ts +1 -3
  27. package/{dist/chart → chart}/legend/legend.component.d.ts +1 -3
  28. package/chart/model/axis-options.d.ts +19 -0
  29. package/{dist/chart → chart}/model/base-point.d.ts +1 -1
  30. package/{dist/chart → chart}/model/chart-bounds.d.ts +0 -0
  31. package/{dist/chart → chart}/model/enum/axis-orientation.d.ts +0 -0
  32. package/{dist/chart → chart}/model/enum/brush-type.d.ts +0 -0
  33. package/{dist/chart → chart}/model/enum/drag-point-type.d.ts +0 -0
  34. package/{dist/chart → chart}/model/enum/public-api.d.ts +1 -1
  35. package/chart/model/enum/scale-type.d.ts +8 -0
  36. package/{dist/chart → chart}/model/enum/series-type.d.ts +2 -1
  37. package/{dist/chart → chart}/model/enum/tooltip-tracking.d.ts +0 -0
  38. package/{dist/chart → chart}/model/enum/zoom-type.d.ts +0 -0
  39. package/chart/model/i-broadcast-message.d.ts +17 -0
  40. package/{dist/chart → chart}/model/i-builder.d.ts +0 -0
  41. package/{dist/chart → chart}/model/i-chart-config.d.ts +1 -0
  42. package/{dist/chart → chart}/model/i-chart-event.d.ts +0 -0
  43. package/{dist/chart → chart}/model/i-display-tooltip.d.ts +0 -0
  44. package/{dist/chart → chart}/model/i-point-move.d.ts +0 -0
  45. package/{dist/chart → chart}/model/marker-options.d.ts +0 -0
  46. package/{dist/chart/model/plotband.d.ts → chart/model/plot-band.d.ts} +7 -5
  47. package/{dist/chart/model/plotline.d.ts → chart/model/plot-line.d.ts} +3 -1
  48. package/{dist/chart → chart}/model/public-api.d.ts +2 -2
  49. package/{dist/chart → chart}/model/series.d.ts +0 -0
  50. package/{dist/chart → chart}/model/svg-attributes.d.ts +0 -0
  51. package/{dist/chart → chart}/model/tooltip-options.d.ts +0 -0
  52. package/{dist/chart → chart}/service/broadcast.service.d.ts +0 -0
  53. package/{dist/chart → chart}/service/brush.service.d.ts +2 -5
  54. package/{dist/chart → chart}/service/chart.service.d.ts +16 -17
  55. package/chart/service/scale.service.d.ts +19 -0
  56. package/{dist/chart → chart}/service/zoom.service.d.ts +6 -14
  57. package/esm2020/chart/base/series-base.component.mjs +32 -0
  58. package/esm2020/chart/chart/chart.component.mjs +71 -0
  59. package/esm2020/chart/chart-container/chart-container.component.mjs +133 -0
  60. package/esm2020/chart/chart-container/gridlines/gridlines.component.mjs +29 -0
  61. package/esm2020/chart/chart-container/plotband/plot-band.component.mjs +150 -0
  62. package/esm2020/chart/chart-container/plotline/plotline.component.mjs +76 -0
  63. package/esm2020/chart/chart-container/series/bar/bar-series.component.mjs +48 -0
  64. package/esm2020/chart/chart-container/series/line/line-series.component.mjs +152 -0
  65. package/esm2020/chart/chart-container/series/scatter-series/scatter-series.component.mjs +174 -0
  66. package/esm2020/chart/chart-container/series-host/series-host.component.mjs +68 -0
  67. package/esm2020/chart/chart-container/tooltip/tooltip.component.mjs +83 -0
  68. package/esm2020/chart/chart-container/x-axis/x-axis.component.mjs +53 -0
  69. package/esm2020/chart/chart-container/y-axis/y-axis.component.mjs +58 -0
  70. package/{dist/esm2020 → esm2020}/chart/chart.module.mjs +8 -5
  71. package/esm2020/chart/core/axis/axis.mjs +105 -0
  72. package/{dist/esm2020 → esm2020}/chart/core/axis/builders/axis-size-builder.mjs +0 -0
  73. package/esm2020/chart/core/axis/builders/extremes-builder.mjs +31 -0
  74. package/{dist/esm2020 → esm2020}/chart/core/axis/builders/public-api.mjs +0 -0
  75. package/{dist/esm2020 → esm2020}/chart/core/utils/generate-ticks.mjs +0 -0
  76. package/{dist/esm2020 → esm2020}/chart/core/utils/get-text-width.mjs +0 -0
  77. package/{dist/esm2020 → esm2020}/chart/core/utils/public-api.mjs +0 -0
  78. package/esm2020/chart/default/default-axis-config.mjs +9 -0
  79. package/esm2020/chart/default/default-chart-config.mjs +23 -0
  80. package/esm2020/chart/default/default-series-config.mjs +8 -0
  81. package/{dist/esm2020 → esm2020}/chart/directives/brushable.directive.mjs +5 -3
  82. package/esm2020/chart/directives/zoomable.directive.mjs +36 -0
  83. package/esm2020/chart/legend/legend.component.mjs +27 -0
  84. package/esm2020/chart/model/axis-options.mjs +2 -0
  85. package/{dist/esm2020 → esm2020}/chart/model/base-point.mjs +1 -1
  86. package/{dist/esm2020 → esm2020}/chart/model/chart-bounds.mjs +0 -0
  87. package/{dist/esm2020 → esm2020}/chart/model/enum/axis-orientation.mjs +0 -0
  88. package/{dist/esm2020 → esm2020}/chart/model/enum/brush-type.mjs +0 -0
  89. package/{dist/esm2020 → esm2020}/chart/model/enum/drag-point-type.mjs +0 -0
  90. package/{dist/esm2020 → esm2020}/chart/model/enum/public-api.mjs +2 -2
  91. package/esm2020/chart/model/enum/scale-type.mjs +10 -0
  92. package/{dist/esm2020 → esm2020}/chart/model/enum/series-type.mjs +2 -1
  93. package/{dist/esm2020 → esm2020}/chart/model/enum/tooltip-tracking.mjs +0 -0
  94. package/{dist/esm2020 → esm2020}/chart/model/enum/zoom-type.mjs +0 -0
  95. package/esm2020/chart/model/i-broadcast-message.mjs +2 -0
  96. package/{dist/esm2020 → esm2020}/chart/model/i-builder.mjs +0 -0
  97. package/{dist/esm2020 → esm2020}/chart/model/i-chart-config.mjs +1 -1
  98. package/{dist/esm2020 → esm2020}/chart/model/i-chart-event.mjs +0 -0
  99. package/{dist/esm2020 → esm2020}/chart/model/i-display-tooltip.mjs +0 -0
  100. package/{dist/esm2020 → esm2020}/chart/model/i-point-move.mjs +0 -0
  101. package/{dist/esm2020 → esm2020}/chart/model/marker-options.mjs +0 -0
  102. package/esm2020/chart/model/plot-band.mjs +17 -0
  103. package/esm2020/chart/model/plot-line.mjs +13 -0
  104. package/{dist/esm2020 → esm2020}/chart/model/public-api.mjs +3 -3
  105. package/{dist/esm2020 → esm2020}/chart/model/series.mjs +0 -0
  106. package/{dist/esm2020 → esm2020}/chart/model/svg-attributes.mjs +0 -0
  107. package/{dist/esm2020 → esm2020}/chart/model/tooltip-options.mjs +0 -0
  108. package/esm2020/chart/service/broadcast.service.mjs +23 -0
  109. package/esm2020/chart/service/brush.service.mjs +70 -0
  110. package/esm2020/chart/service/chart.service.mjs +95 -0
  111. package/esm2020/chart/service/scale.service.mjs +152 -0
  112. package/esm2020/chart/service/zoom.service.mjs +114 -0
  113. package/esm2020/public-api.mjs +9 -0
  114. package/{dist/esm2020 → esm2020}/tetacom-svg-charts.mjs +0 -0
  115. package/fesm2015/tetacom-svg-charts.mjs +1912 -0
  116. package/fesm2015/tetacom-svg-charts.mjs.map +1 -0
  117. package/fesm2020/tetacom-svg-charts.mjs +1887 -0
  118. package/fesm2020/tetacom-svg-charts.mjs.map +1 -0
  119. package/package.json +22 -2
  120. package/{dist/public-api.d.ts → public-api.d.ts} +0 -0
  121. package/{dist/tetacom-svg-charts.d.ts → tetacom-svg-charts.d.ts} +0 -0
  122. package/dist/README.md +0 -24
  123. package/dist/chart/chart-container/chart-container.component.d.ts +0 -42
  124. package/dist/chart/chart-container/gridlines/gridlines.component.d.ts +0 -23
  125. package/dist/chart/chart-container/x-axis/x-axis.component.d.ts +0 -23
  126. package/dist/chart/chart-container/y-axis/y-axis.component.d.ts +0 -24
  127. package/dist/chart/model/axis-options.d.ts +0 -17
  128. package/dist/chart/model/enum/axis-type.d.ts +0 -7
  129. package/dist/chart/model/i-broadcast-message.d.ts +0 -5
  130. package/dist/chart/service/axes.service.d.ts +0 -11
  131. package/dist/chart/service/scale.service.d.ts +0 -14
  132. package/dist/esm2020/chart/base/series-base.component.mjs +0 -34
  133. package/dist/esm2020/chart/chart/chart.component.mjs +0 -73
  134. package/dist/esm2020/chart/chart-container/chart-container.component.mjs +0 -151
  135. package/dist/esm2020/chart/chart-container/gridlines/gridlines.component.mjs +0 -41
  136. package/dist/esm2020/chart/chart-container/plotband/plotband.component.mjs +0 -139
  137. package/dist/esm2020/chart/chart-container/plotline/plotline.component.mjs +0 -79
  138. package/dist/esm2020/chart/chart-container/series/bar/bar-series.component.mjs +0 -48
  139. package/dist/esm2020/chart/chart-container/series/line/line-series.component.mjs +0 -148
  140. package/dist/esm2020/chart/chart-container/series-host/series-host.component.mjs +0 -59
  141. package/dist/esm2020/chart/chart-container/tooltip/tooltip.component.mjs +0 -81
  142. package/dist/esm2020/chart/chart-container/x-axis/x-axis.component.mjs +0 -56
  143. package/dist/esm2020/chart/chart-container/y-axis/y-axis.component.mjs +0 -63
  144. package/dist/esm2020/chart/core/axis/axis.mjs +0 -96
  145. package/dist/esm2020/chart/core/axis/builders/extremes-builder.mjs +0 -32
  146. package/dist/esm2020/chart/directives/zoomable.directive.mjs +0 -37
  147. package/dist/esm2020/chart/legend/legend.component.mjs +0 -30
  148. package/dist/esm2020/chart/model/axis-options.mjs +0 -2
  149. package/dist/esm2020/chart/model/enum/axis-type.mjs +0 -9
  150. package/dist/esm2020/chart/model/i-broadcast-message.mjs +0 -2
  151. package/dist/esm2020/chart/model/plotband.mjs +0 -16
  152. package/dist/esm2020/chart/model/plotline.mjs +0 -12
  153. package/dist/esm2020/chart/service/axes.service.mjs +0 -29
  154. package/dist/esm2020/chart/service/broadcast.service.mjs +0 -25
  155. package/dist/esm2020/chart/service/brush.service.mjs +0 -67
  156. package/dist/esm2020/chart/service/chart.service.mjs +0 -76
  157. package/dist/esm2020/chart/service/scale.service.mjs +0 -64
  158. package/dist/esm2020/chart/service/zoom.service.mjs +0 -117
  159. package/dist/esm2020/public-api.mjs +0 -8
  160. package/dist/fesm2015/tetacom-svg-charts.mjs +0 -1617
  161. package/dist/fesm2015/tetacom-svg-charts.mjs.map +0 -1
  162. package/dist/fesm2020/tetacom-svg-charts.mjs +0 -1603
  163. package/dist/fesm2020/tetacom-svg-charts.mjs.map +0 -1
  164. package/dist/package.json +0 -35
  165. package/karma.conf.js +0 -44
  166. package/ng-package.json +0 -7
  167. package/src/chart/Chart.stories.ts +0 -397
  168. package/src/chart/base/series-base.component.ts +0 -41
  169. package/src/chart/chart/chart.component.html +0 -5
  170. package/src/chart/chart/chart.component.scss +0 -6
  171. package/src/chart/chart/chart.component.spec.ts +0 -25
  172. package/src/chart/chart/chart.component.ts +0 -97
  173. package/src/chart/chart-container/chart-container.component.html +0 -78
  174. package/src/chart/chart-container/chart-container.component.scss +0 -15
  175. package/src/chart/chart-container/chart-container.component.spec.ts +0 -25
  176. package/src/chart/chart-container/chart-container.component.ts +0 -242
  177. package/src/chart/chart-container/gridlines/gridlines.component.html +0 -7
  178. package/src/chart/chart-container/gridlines/gridlines.component.scss +0 -8
  179. package/src/chart/chart-container/gridlines/gridlines.component.spec.ts +0 -25
  180. package/src/chart/chart-container/gridlines/gridlines.component.ts +0 -55
  181. package/src/chart/chart-container/plotband/plotband.component.html +0 -58
  182. package/src/chart/chart-container/plotband/plotband.component.scss +0 -13
  183. package/src/chart/chart-container/plotband/plotband.component.spec.ts +0 -25
  184. package/src/chart/chart-container/plotband/plotband.component.ts +0 -206
  185. package/src/chart/chart-container/plotline/plotline.component.html +0 -22
  186. package/src/chart/chart-container/plotline/plotline.component.scss +0 -6
  187. package/src/chart/chart-container/plotline/plotline.component.spec.ts +0 -25
  188. package/src/chart/chart-container/plotline/plotline.component.ts +0 -113
  189. package/src/chart/chart-container/series/bar/bar-series.component.html +0 -3
  190. package/src/chart/chart-container/series/bar/bar-series.component.scss +0 -0
  191. package/src/chart/chart-container/series/bar/bar-series.component.ts +0 -71
  192. package/src/chart/chart-container/series/line/line-series.component.html +0 -38
  193. package/src/chart/chart-container/series/line/line-series.component.scss +0 -9
  194. package/src/chart/chart-container/series/line/line-series.component.spec.ts +0 -25
  195. package/src/chart/chart-container/series/line/line-series.component.ts +0 -245
  196. package/src/chart/chart-container/series-host/series-host.component.ts +0 -80
  197. package/src/chart/chart-container/tooltip/tooltip.component.html +0 -14
  198. package/src/chart/chart-container/tooltip/tooltip.component.scss +0 -7
  199. package/src/chart/chart-container/tooltip/tooltip.component.spec.ts +0 -25
  200. package/src/chart/chart-container/tooltip/tooltip.component.ts +0 -134
  201. package/src/chart/chart-container/x-axis/x-axis.component.html +0 -1
  202. package/src/chart/chart-container/x-axis/x-axis.component.scss +0 -3
  203. package/src/chart/chart-container/x-axis/x-axis.component.spec.ts +0 -25
  204. package/src/chart/chart-container/x-axis/x-axis.component.ts +0 -80
  205. package/src/chart/chart-container/y-axis/y-axis.component.html +0 -4
  206. package/src/chart/chart-container/y-axis/y-axis.component.scss +0 -13
  207. package/src/chart/chart-container/y-axis/y-axis.component.spec.ts +0 -25
  208. package/src/chart/chart-container/y-axis/y-axis.component.ts +0 -90
  209. package/src/chart/chart.module.ts +0 -40
  210. package/src/chart/core/axis/axis.ts +0 -132
  211. package/src/chart/core/axis/builders/axis-size-builder.ts +0 -37
  212. package/src/chart/core/axis/builders/extremes-builder.ts +0 -45
  213. package/src/chart/core/axis/builders/public-api.ts +0 -2
  214. package/src/chart/core/utils/generate-ticks.ts +0 -14
  215. package/src/chart/core/utils/get-text-width.ts +0 -10
  216. package/src/chart/core/utils/public-api.ts +0 -2
  217. package/src/chart/default/default-chart-config.ts +0 -12
  218. package/src/chart/directives/brushable.directive.ts +0 -30
  219. package/src/chart/directives/zoomable.directive.ts +0 -31
  220. package/src/chart/legend/legend.component.html +0 -6
  221. package/src/chart/legend/legend.component.scss +0 -20
  222. package/src/chart/legend/legend.component.spec.ts +0 -25
  223. package/src/chart/legend/legend.component.ts +0 -35
  224. package/src/chart/model/axis-options.ts +0 -18
  225. package/src/chart/model/base-point.ts +0 -10
  226. package/src/chart/model/chart-bounds.ts +0 -18
  227. package/src/chart/model/enum/axis-orientation.ts +0 -4
  228. package/src/chart/model/enum/axis-type.ts +0 -7
  229. package/src/chart/model/enum/brush-type.ts +0 -5
  230. package/src/chart/model/enum/drag-point-type.ts +0 -5
  231. package/src/chart/model/enum/public-api.ts +0 -7
  232. package/src/chart/model/enum/series-type.ts +0 -4
  233. package/src/chart/model/enum/tooltip-tracking.ts +0 -4
  234. package/src/chart/model/enum/zoom-type.ts +0 -5
  235. package/src/chart/model/i-broadcast-message.ts +0 -5
  236. package/src/chart/model/i-builder.ts +0 -3
  237. package/src/chart/model/i-chart-config.ts +0 -33
  238. package/src/chart/model/i-chart-event.ts +0 -4
  239. package/src/chart/model/i-display-tooltip.ts +0 -7
  240. package/src/chart/model/i-drag-event.ts +0 -5
  241. package/src/chart/model/i-point-move.ts +0 -7
  242. package/src/chart/model/marker-options.ts +0 -8
  243. package/src/chart/model/plotband.ts +0 -45
  244. package/src/chart/model/plotline.ts +0 -29
  245. package/src/chart/model/public-api.ts +0 -14
  246. package/src/chart/model/series.ts +0 -18
  247. package/src/chart/model/svg-attributes.ts +0 -14
  248. package/src/chart/model/tooltip-options.ts +0 -37
  249. package/src/chart/service/axes.service.spec.ts +0 -16
  250. package/src/chart/service/axes.service.ts +0 -27
  251. package/src/chart/service/broadcast.service.spec.ts +0 -16
  252. package/src/chart/service/broadcast.service.ts +0 -24
  253. package/src/chart/service/brush.service.spec.ts +0 -16
  254. package/src/chart/service/brush.service.ts +0 -87
  255. package/src/chart/service/chart.service.spec.ts +0 -16
  256. package/src/chart/service/chart.service.ts +0 -100
  257. package/src/chart/service/scale.service.spec.ts +0 -16
  258. package/src/chart/service/scale.service.ts +0 -74
  259. package/src/chart/service/zoom.service.spec.ts +0 -16
  260. package/src/chart/service/zoom.service.ts +0 -153
  261. package/src/public-api.ts +0 -8
  262. package/src/test.ts +0 -27
  263. package/tsconfig.lib.json +0 -15
  264. package/tsconfig.lib.prod.json +0 -10
  265. package/tsconfig.spec.json +0 -17
@@ -1,63 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input, ViewChild, } from '@angular/core';
2
- import * as d3 from 'd3';
3
- import { merge, takeWhile, tap } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../service/scale.service";
6
- import * as i2 from "../../service/chart.service";
7
- import * as i3 from "../../service/zoom.service";
8
- export class YAxisComponent {
9
- constructor(scaleService, chartService, cdr, zoomService) {
10
- this.scaleService = scaleService;
11
- this.chartService = chartService;
12
- this.cdr = cdr;
13
- this.zoomService = zoomService;
14
- this._alive = true;
15
- merge(this.zoomService.zoomed, this.chartService.size)
16
- .pipe(takeWhile(() => this._alive), tap((_) => {
17
- this.draw();
18
- this.cdr.markForCheck();
19
- }))
20
- .subscribe();
21
- }
22
- ngOnInit() { }
23
- ngOnDestroy() {
24
- this._alive = false;
25
- }
26
- ngAfterViewInit() {
27
- this.draw();
28
- }
29
- getLabelTransform() {
30
- return `translate(${this.axis.options.opposite
31
- ? this.axis.selfSize - 24
32
- : -this.axis.selfSize + 24}, ${this.size.height / 2}) rotate(${this.axis.options.opposite ? '90' : '-90'})`;
33
- }
34
- draw() {
35
- const scale = this.scaleService.yScales.get(this.axis.index);
36
- const axis = this.axis.options.opposite
37
- ? d3
38
- .axisRight(scale)
39
- // .tickValues(this.axis.tickValues)
40
- .tickFormat(this.axis.options.tickFormat ?? this.axis.defaultFormatter())
41
- : d3
42
- .axisLeft(scale)
43
- // .tickValues(this.axis.tickValues)
44
- .tickFormat(this.axis.options.tickFormat ?? this.axis.defaultFormatter());
45
- d3.select(this.node.nativeElement)
46
- .call(axis)
47
- .call((_) => _.select('.domain').remove());
48
- }
49
- }
50
- YAxisComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: YAxisComponent, deps: [{ token: i1.ScaleService }, { token: i2.ChartService }, { token: i0.ChangeDetectorRef }, { token: i3.ZoomService }], target: i0.ɵɵFactoryTarget.Component });
51
- YAxisComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: YAxisComponent, selector: "[teta-y-axis]", inputs: { axis: "axis", size: "size" }, viewQueries: [{ propertyName: "node", first: true, predicate: ["svg"], descendants: true }], ngImport: i0, template: "<svg:g #svg></svg:g>\n<svg:g class=\"label-axis font-caption\" [attr.transform]=\"getLabelTransform()\">\n <text dy=\"-8px\" text-anchor=\"middle\" dominant-baseline=\"middle\">{{ axis.options.title }}</text>\n</svg:g>\n", styles: [":host{shape-rendering:crispEdges}::ng-deep .tick text{fill:var(--color-text-70)}::ng-deep .tick line{stroke:var(--color-text-20)}:host .label-axis{fill:var(--color-text-70)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: YAxisComponent, decorators: [{
53
- type: Component,
54
- args: [{ selector: '[teta-y-axis]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<svg:g #svg></svg:g>\n<svg:g class=\"label-axis font-caption\" [attr.transform]=\"getLabelTransform()\">\n <text dy=\"-8px\" text-anchor=\"middle\" dominant-baseline=\"middle\">{{ axis.options.title }}</text>\n</svg:g>\n", styles: [":host{shape-rendering:crispEdges}::ng-deep .tick text{fill:var(--color-text-70)}::ng-deep .tick line{stroke:var(--color-text-20)}:host .label-axis{fill:var(--color-text-70)}\n"] }]
55
- }], ctorParameters: function () { return [{ type: i1.ScaleService }, { type: i2.ChartService }, { type: i0.ChangeDetectorRef }, { type: i3.ZoomService }]; }, propDecorators: { axis: [{
56
- type: Input
57
- }], size: [{
58
- type: Input
59
- }], node: [{
60
- type: ViewChild,
61
- args: ['svg']
62
- }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieS1heGlzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jaGFydC9jaGFydC1jb250YWluZXIveS1heGlzL3ktYXhpcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvY2hhcnQvY2hhcnQtY29udGFpbmVyL3ktYXhpcy95LWF4aXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsS0FBSyxFQUdMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQztBQUl6QixPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBUTdDLE1BQU0sT0FBTyxjQUFjO0lBT3pCLFlBQ1UsWUFBMEIsRUFDMUIsWUFBMEIsRUFDMUIsR0FBc0IsRUFDdEIsV0FBd0I7UUFIeEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFOMUIsV0FBTSxHQUFHLElBQUksQ0FBQztRQVFwQixLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUM7YUFDbkQsSUFBSSxDQUNILFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQzVCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1IsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FDSDthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQztJQUVuQixXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxhQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVE7WUFDeEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUU7WUFDekIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFDNUIsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLFlBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUN0QyxHQUFHLENBQUM7SUFDTixDQUFDO0lBRU8sSUFBSTtRQUNWLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTdELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVE7WUFDckMsQ0FBQyxDQUFDLEVBQUU7aUJBQ0MsU0FBUyxDQUFDLEtBQUssQ0FBQztnQkFDakIsb0NBQW9DO2lCQUNuQyxVQUFVLENBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FDN0Q7WUFDTCxDQUFDLENBQUMsRUFBRTtpQkFDQyxRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUNoQixvQ0FBb0M7aUJBQ25DLFVBQVUsQ0FDVCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUM3RCxDQUFDO1FBRVIsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQzthQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ1YsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQzs7MkdBaEVVLGNBQWM7K0ZBQWQsY0FBYywwTEN4QjNCLCtOQUlBOzJGRG9CYSxjQUFjO2tCQU4xQixTQUFTOytCQUNFLGVBQWUsbUJBR1IsdUJBQXVCLENBQUMsTUFBTTt3TEFHdEMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDWSxJQUFJO3NCQUFyQixTQUFTO3VCQUFDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXhpcyB9IGZyb20gJy4uLy4uL2NvcmUvYXhpcy9heGlzJztcbmltcG9ydCAqIGFzIGQzIGZyb20gJ2QzJztcbmltcG9ydCB7IFNjYWxlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2Uvc2NhbGUuc2VydmljZSc7XG5pbXBvcnQgeyBDaGFydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2NoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgWm9vbVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3pvb20uc2VydmljZSc7XG5pbXBvcnQgeyBtZXJnZSwgdGFrZVdoaWxlLCB0YXAgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnW3RldGEteS1heGlzXScsXG4gIHRlbXBsYXRlVXJsOiAnLi95LWF4aXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi95LWF4aXMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFlBeGlzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBheGlzOiBBeGlzO1xuICBASW5wdXQoKSBzaXplOiBET01SZWN0O1xuICBAVmlld0NoaWxkKCdzdmcnKSBub2RlOiBFbGVtZW50UmVmO1xuXG4gIHByaXZhdGUgX2FsaXZlID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNjYWxlU2VydmljZTogU2NhbGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhcnRTZXJ2aWNlOiBDaGFydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgem9vbVNlcnZpY2U6IFpvb21TZXJ2aWNlXG4gICkge1xuICAgIG1lcmdlKHRoaXMuem9vbVNlcnZpY2Uuem9vbWVkLCB0aGlzLmNoYXJ0U2VydmljZS5zaXplKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSksXG4gICAgICAgIHRhcCgoXykgPT4ge1xuICAgICAgICAgIHRoaXMuZHJhdygpO1xuICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2FsaXZlID0gZmFsc2U7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5kcmF3KCk7XG4gIH1cblxuICBnZXRMYWJlbFRyYW5zZm9ybSgpIHtcbiAgICByZXR1cm4gYHRyYW5zbGF0ZSgke1xuICAgICAgdGhpcy5heGlzLm9wdGlvbnMub3Bwb3NpdGVcbiAgICAgICAgPyB0aGlzLmF4aXMuc2VsZlNpemUgLSAyNFxuICAgICAgICA6IC10aGlzLmF4aXMuc2VsZlNpemUgKyAyNFxuICAgIH0sICR7dGhpcy5zaXplLmhlaWdodCAvIDJ9KSByb3RhdGUoJHtcbiAgICAgIHRoaXMuYXhpcy5vcHRpb25zLm9wcG9zaXRlID8gJzkwJyA6ICctOTAnXG4gICAgfSlgO1xuICB9XG5cbiAgcHJpdmF0ZSBkcmF3KCkge1xuICAgIGNvbnN0IHNjYWxlID0gdGhpcy5zY2FsZVNlcnZpY2UueVNjYWxlcy5nZXQodGhpcy5heGlzLmluZGV4KTtcblxuICAgIGNvbnN0IGF4aXMgPSB0aGlzLmF4aXMub3B0aW9ucy5vcHBvc2l0ZVxuICAgICAgPyBkM1xuICAgICAgICAgIC5heGlzUmlnaHQoc2NhbGUpXG4gICAgICAgICAgLy8gLnRpY2tWYWx1ZXModGhpcy5heGlzLnRpY2tWYWx1ZXMpXG4gICAgICAgICAgLnRpY2tGb3JtYXQoXG4gICAgICAgICAgICB0aGlzLmF4aXMub3B0aW9ucy50aWNrRm9ybWF0ID8/IHRoaXMuYXhpcy5kZWZhdWx0Rm9ybWF0dGVyKClcbiAgICAgICAgICApXG4gICAgICA6IGQzXG4gICAgICAgICAgLmF4aXNMZWZ0KHNjYWxlKVxuICAgICAgICAgIC8vIC50aWNrVmFsdWVzKHRoaXMuYXhpcy50aWNrVmFsdWVzKVxuICAgICAgICAgIC50aWNrRm9ybWF0KFxuICAgICAgICAgICAgdGhpcy5heGlzLm9wdGlvbnMudGlja0Zvcm1hdCA/PyB0aGlzLmF4aXMuZGVmYXVsdEZvcm1hdHRlcigpXG4gICAgICAgICAgKTtcblxuICAgIGQzLnNlbGVjdCh0aGlzLm5vZGUubmF0aXZlRWxlbWVudClcbiAgICAgIC5jYWxsKGF4aXMpXG4gICAgICAuY2FsbCgoXykgPT4gXy5zZWxlY3QoJy5kb21haW4nKS5yZW1vdmUoKSk7XG4gIH1cbn1cbiIsIjxzdmc6ZyAjc3ZnPjwvc3ZnOmc+XG48c3ZnOmcgY2xhc3M9XCJsYWJlbC1heGlzIGZvbnQtY2FwdGlvblwiIFthdHRyLnRyYW5zZm9ybV09XCJnZXRMYWJlbFRyYW5zZm9ybSgpXCI+XG4gIDx0ZXh0IGR5PVwiLThweFwiIHRleHQtYW5jaG9yPVwibWlkZGxlXCIgZG9taW5hbnQtYmFzZWxpbmU9XCJtaWRkbGVcIj57eyBheGlzLm9wdGlvbnMudGl0bGUgfX08L3RleHQ+XG48L3N2ZzpnPlxuIl19
@@ -1,96 +0,0 @@
1
- import { AxisOrientation } from '../../model/enum/axis-orientation';
2
- import * as d3 from 'd3';
3
- import { AxisSizeBuilder, ExtremesBuilder } from './builders/public-api';
4
- import { AxisType } from '../../model/enum/axis-type';
5
- import { generateTicks } from '../utils/public-api';
6
- export class Axis {
7
- constructor(config) {
8
- this._extremes = [0, 0];
9
- this.defaultFormatters = new Map()
10
- .set(AxisType.number, d3.format(',.2f'))
11
- .set(AxisType.time, d3.timeFormat('%B %d, %Y'))
12
- .set(AxisType.log, d3.format(',.2f'));
13
- this.chartConfig = config;
14
- }
15
- /**
16
- * Factory for creating x,y axes
17
- * @param {AxisOrientation} orientation
18
- * Axis type
19
- * @param {IChartConfig} config
20
- * Chart config
21
- * @param {number} index
22
- * Index axis
23
- * @return {Axis}
24
- * New generated axis
25
- */
26
- static createAxis(orientation, config, index) {
27
- const axis = new Axis(config);
28
- axis.setLocate(orientation);
29
- axis.setIndex(index);
30
- axis.setExtremes();
31
- axis.setTicksValues();
32
- axis.setSelfSize();
33
- return axis;
34
- }
35
- /**
36
- *
37
- * @param {orientation} orientation
38
- * Set locate axis x or y
39
- */
40
- setLocate(orientation) {
41
- this._orientation = orientation;
42
- }
43
- /**
44
- *
45
- * @param {number | string} index
46
- * Index axis
47
- */
48
- setIndex(index) {
49
- this._index = index;
50
- }
51
- /**
52
- * @return {Array<Series<BasePoint>>}
53
- * Linked series
54
- */
55
- linkedSeries() {
56
- const linkedFilter = (serie) => serie[this._orientation === AxisOrientation.y ? 'yAxisIndex' : 'xAxisIndex'] === this._index;
57
- return this.chartConfig?.series.filter(linkedFilter);
58
- }
59
- setExtremes() {
60
- const builder = new ExtremesBuilder();
61
- this._extremes = builder.build(this);
62
- this._extremes = d3.nice(this._extremes[0], this._extremes[1], 10);
63
- }
64
- setSelfSize() {
65
- const builder = new AxisSizeBuilder();
66
- this._selfSize = builder.build(this);
67
- }
68
- setTicksValues() {
69
- const ticks = generateTicks(this._extremes);
70
- this._ticksValues = ticks;
71
- }
72
- get extremes() {
73
- return this._extremes;
74
- }
75
- get orientation() {
76
- return this._orientation;
77
- }
78
- get selfSize() {
79
- return this._selfSize;
80
- }
81
- get tickValues() {
82
- return this._ticksValues;
83
- }
84
- get index() {
85
- return this._index;
86
- }
87
- get options() {
88
- return this.orientation === AxisOrientation.x
89
- ? this.chartConfig.xAxis[this.index]
90
- : this.chartConfig.yAxis[this.index];
91
- }
92
- defaultFormatter() {
93
- return this.defaultFormatters.get(this.options.type);
94
- }
95
- }
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jaGFydC9jb3JlL2F4aXMvYXhpcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHcEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFFekIsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXBELE1BQU0sT0FBTyxJQUFJO0lBYWYsWUFBWSxNQUFvQjtRQVR4QixjQUFTLEdBQXFCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBSXJDLHNCQUFpQixHQUFHLElBQUksR0FBRyxFQUFpQjthQUNqRCxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3ZDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDOUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBR3RDLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO0lBQzVCLENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0ksTUFBTSxDQUFDLFVBQVUsQ0FDdEIsV0FBNEIsRUFDNUIsTUFBb0IsRUFDcEIsS0FBYTtRQUViLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVuQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssU0FBUyxDQUFDLFdBQTRCO1FBQzVDLElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssUUFBUSxDQUFDLEtBQXNCO1FBQ3JDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxZQUFZO1FBQ2pCLE1BQU0sWUFBWSxHQUFHLENBQUMsS0FBd0IsRUFBRSxFQUFFLENBQ2hELEtBQUssQ0FDSCxJQUFJLENBQUMsWUFBWSxLQUFLLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUN0RSxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUM7UUFFcEIsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFdBQVc7UUFDakIsTUFBTSxPQUFPLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckMsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRU8sV0FBVztRQUNqQixNQUFNLE9BQU8sR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU8sY0FBYztRQUNwQixNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLGVBQWUsQ0FBQyxDQUFDO1lBQzNDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQ2hhcnRDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbC9pLWNoYXJ0LWNvbmZpZyc7XG5pbXBvcnQgeyBBeGlzT3JpZW50YXRpb24gfSBmcm9tICcuLi8uLi9tb2RlbC9lbnVtL2F4aXMtb3JpZW50YXRpb24nO1xuaW1wb3J0IHsgU2VyaWVzIH0gZnJvbSAnLi4vLi4vbW9kZWwvc2VyaWVzJztcbmltcG9ydCB7IEJhc2VQb2ludCB9IGZyb20gJy4uLy4uL21vZGVsL2Jhc2UtcG9pbnQnO1xuaW1wb3J0ICogYXMgZDMgZnJvbSAnZDMnO1xuaW1wb3J0IHsgQXhpc09wdGlvbnMgfSBmcm9tICcuLi8uLi9tb2RlbC9heGlzLW9wdGlvbnMnO1xuaW1wb3J0IHsgQXhpc1NpemVCdWlsZGVyLCBFeHRyZW1lc0J1aWxkZXIgfSBmcm9tICcuL2J1aWxkZXJzL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQXhpc1R5cGUgfSBmcm9tICcuLi8uLi9tb2RlbC9lbnVtL2F4aXMtdHlwZSc7XG5cbmltcG9ydCB7IGdlbmVyYXRlVGlja3MgfSBmcm9tICcuLi91dGlscy9wdWJsaWMtYXBpJztcblxuZXhwb3J0IGNsYXNzIEF4aXMge1xuICBwcml2YXRlIGNoYXJ0Q29uZmlnOiBJQ2hhcnRDb25maWc7XG4gIHByaXZhdGUgX29yaWVudGF0aW9uOiBBeGlzT3JpZW50YXRpb247XG4gIHByaXZhdGUgX2luZGV4OiBudW1iZXIgfCBzdHJpbmc7XG4gIHByaXZhdGUgX2V4dHJlbWVzOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDBdO1xuICBwcml2YXRlIF9zZWxmU2l6ZTogbnVtYmVyO1xuICBwcml2YXRlIF90aWNrc1ZhbHVlczogbnVtYmVyW107XG5cbiAgcHJpdmF0ZSBkZWZhdWx0Rm9ybWF0dGVycyA9IG5ldyBNYXA8QXhpc1R5cGUsIGFueT4oKVxuICAgIC5zZXQoQXhpc1R5cGUubnVtYmVyLCBkMy5mb3JtYXQoJywuMmYnKSlcbiAgICAuc2V0KEF4aXNUeXBlLnRpbWUsIGQzLnRpbWVGb3JtYXQoJyVCICVkLCAlWScpKVxuICAgIC5zZXQoQXhpc1R5cGUubG9nLCBkMy5mb3JtYXQoJywuMmYnKSk7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBJQ2hhcnRDb25maWcpIHtcbiAgICB0aGlzLmNoYXJ0Q29uZmlnID0gY29uZmlnO1xuICB9XG5cbiAgLyoqXG4gICAqIEZhY3RvcnkgZm9yIGNyZWF0aW5nIHgseSBheGVzXG4gICAqIEBwYXJhbSB7QXhpc09yaWVudGF0aW9ufSBvcmllbnRhdGlvblxuICAgKiBBeGlzIHR5cGVcbiAgICogQHBhcmFtIHtJQ2hhcnRDb25maWd9IGNvbmZpZ1xuICAgKiBDaGFydCBjb25maWdcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4XG4gICAqIEluZGV4IGF4aXNcbiAgICogQHJldHVybiB7QXhpc31cbiAgICogTmV3IGdlbmVyYXRlZCBheGlzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNyZWF0ZUF4aXMoXG4gICAgb3JpZW50YXRpb246IEF4aXNPcmllbnRhdGlvbixcbiAgICBjb25maWc6IElDaGFydENvbmZpZyxcbiAgICBpbmRleDogbnVtYmVyXG4gICk6IEF4aXMge1xuICAgIGNvbnN0IGF4aXMgPSBuZXcgQXhpcyhjb25maWcpO1xuICAgIGF4aXMuc2V0TG9jYXRlKG9yaWVudGF0aW9uKTtcbiAgICBheGlzLnNldEluZGV4KGluZGV4KTtcbiAgICBheGlzLnNldEV4dHJlbWVzKCk7XG4gICAgYXhpcy5zZXRUaWNrc1ZhbHVlcygpO1xuICAgIGF4aXMuc2V0U2VsZlNpemUoKTtcblxuICAgIHJldHVybiBheGlzO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSB7b3JpZW50YXRpb259IG9yaWVudGF0aW9uXG4gICAqIFNldCBsb2NhdGUgYXhpcyB4IG9yIHlcbiAgICovXG4gIHByaXZhdGUgc2V0TG9jYXRlKG9yaWVudGF0aW9uOiBBeGlzT3JpZW50YXRpb24pOiB2b2lkIHtcbiAgICB0aGlzLl9vcmllbnRhdGlvbiA9IG9yaWVudGF0aW9uO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgc3RyaW5nfSBpbmRleFxuICAgKiBJbmRleCBheGlzXG4gICAqL1xuICBwcml2YXRlIHNldEluZGV4KGluZGV4OiBudW1iZXIgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9pbmRleCA9IGluZGV4O1xuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm4ge0FycmF5PFNlcmllczxCYXNlUG9pbnQ+Pn1cbiAgICogTGlua2VkIHNlcmllc1xuICAgKi9cbiAgcHVibGljIGxpbmtlZFNlcmllcygpOiBBcnJheTxTZXJpZXM8QmFzZVBvaW50Pj4ge1xuICAgIGNvbnN0IGxpbmtlZEZpbHRlciA9IChzZXJpZTogU2VyaWVzPEJhc2VQb2ludD4pID0+XG4gICAgICBzZXJpZVtcbiAgICAgICAgdGhpcy5fb3JpZW50YXRpb24gPT09IEF4aXNPcmllbnRhdGlvbi55ID8gJ3lBeGlzSW5kZXgnIDogJ3hBeGlzSW5kZXgnXG4gICAgICBdID09PSB0aGlzLl9pbmRleDtcblxuICAgIHJldHVybiB0aGlzLmNoYXJ0Q29uZmlnPy5zZXJpZXMuZmlsdGVyKGxpbmtlZEZpbHRlcik7XG4gIH1cblxuICBwcml2YXRlIHNldEV4dHJlbWVzKCk6IHZvaWQge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSBuZXcgRXh0cmVtZXNCdWlsZGVyKCk7XG4gICAgdGhpcy5fZXh0cmVtZXMgPSBidWlsZGVyLmJ1aWxkKHRoaXMpO1xuXG4gICAgdGhpcy5fZXh0cmVtZXMgPSBkMy5uaWNlKHRoaXMuX2V4dHJlbWVzWzBdLCB0aGlzLl9leHRyZW1lc1sxXSwgMTApO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRTZWxmU2l6ZSgpOiB2b2lkIHtcbiAgICBjb25zdCBidWlsZGVyID0gbmV3IEF4aXNTaXplQnVpbGRlcigpO1xuICAgIHRoaXMuX3NlbGZTaXplID0gYnVpbGRlci5idWlsZCh0aGlzKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0VGlja3NWYWx1ZXMoKTogdm9pZCB7XG4gICAgY29uc3QgdGlja3MgPSBnZW5lcmF0ZVRpY2tzKHRoaXMuX2V4dHJlbWVzKTtcbiAgICB0aGlzLl90aWNrc1ZhbHVlcyA9IHRpY2tzO1xuICB9XG5cbiAgZ2V0IGV4dHJlbWVzKCk6IEFycmF5PG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLl9leHRyZW1lcztcbiAgfVxuXG4gIGdldCBvcmllbnRhdGlvbigpOiBBeGlzT3JpZW50YXRpb24ge1xuICAgIHJldHVybiB0aGlzLl9vcmllbnRhdGlvbjtcbiAgfVxuXG4gIGdldCBzZWxmU2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zZWxmU2l6ZTtcbiAgfVxuXG4gIGdldCB0aWNrVmFsdWVzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fdGlja3NWYWx1ZXM7XG4gIH1cblxuICBnZXQgaW5kZXgoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2luZGV4O1xuICB9XG5cbiAgZ2V0IG9wdGlvbnMoKTogQXhpc09wdGlvbnMge1xuICAgIHJldHVybiB0aGlzLm9yaWVudGF0aW9uID09PSBBeGlzT3JpZW50YXRpb24ueFxuICAgICAgPyB0aGlzLmNoYXJ0Q29uZmlnLnhBeGlzW3RoaXMuaW5kZXhdXG4gICAgICA6IHRoaXMuY2hhcnRDb25maWcueUF4aXNbdGhpcy5pbmRleF07XG4gIH1cblxuICBwdWJsaWMgZGVmYXVsdEZvcm1hdHRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0Rm9ybWF0dGVycy5nZXQodGhpcy5vcHRpb25zLnR5cGUpO1xuICB9XG59XG4iXX0=
@@ -1,32 +0,0 @@
1
- import { AxisOrientation } from '../../../model/enum/axis-orientation';
2
- import * as d3 from 'd3';
3
- export class ExtremesBuilder {
4
- constructor() {
5
- this.extentAccessorMap = new Map()
6
- .set(AxisOrientation.x, (_) => _.x)
7
- .set(AxisOrientation.y, (_) => _.y);
8
- this.extremes = [0, 0];
9
- }
10
- build(settings) {
11
- const options = settings.options;
12
- const hasMin = options?.min != null;
13
- const hasMax = options?.max != null;
14
- if (!hasMin || !hasMax) {
15
- const linkedSeries = settings.linkedSeries();
16
- const data = linkedSeries.reduce((acc, current) => {
17
- return acc.concat(current.data);
18
- }, []);
19
- const accessor = this.extentAccessorMap.get(settings.orientation);
20
- // add negative axis!
21
- this.extremes = d3.extent(data, accessor);
22
- }
23
- if (hasMin) {
24
- this.extremes[0] = options?.min;
25
- }
26
- if (hasMax) {
27
- this.extremes[1] = options?.max;
28
- }
29
- return this.extremes;
30
- }
31
- }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmVtZXMtYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jaGFydC9jb3JlL2F4aXMvYnVpbGRlcnMvZXh0cmVtZXMtYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFdkUsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFFekIsTUFBTSxPQUFPLGVBQWU7SUFBNUI7UUFDVSxzQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFHaEM7YUFDQSxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNsQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTlCLGFBQVEsR0FBcUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUE2QjlDLENBQUM7SUEzQkMsS0FBSyxDQUFDLFFBQWM7UUFDbEIsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUVqQyxNQUFNLE1BQU0sR0FBRyxPQUFPLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQztRQUNwQyxNQUFNLE1BQU0sR0FBRyxPQUFPLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQztRQUVwQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3RCLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM3QyxNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBZ0IsRUFBRSxPQUFPLEVBQUUsRUFBRTtnQkFDN0QsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFUCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNsRSxxQkFBcUI7WUFFckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztTQUMzQztRQUVELElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLEVBQUUsR0FBRyxDQUFDO1NBQ2pDO1FBRUQsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sRUFBRSxHQUFHLENBQUM7U0FDakM7UUFDRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUJ1aWxkZXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9pLWJ1aWxkZXInO1xuaW1wb3J0IHsgQXhpcyB9IGZyb20gJy4uL2F4aXMnO1xuaW1wb3J0IHsgQmFzZVBvaW50IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvYmFzZS1wb2ludCc7XG5pbXBvcnQgeyBBeGlzT3JpZW50YXRpb24gfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9lbnVtL2F4aXMtb3JpZW50YXRpb24nO1xuXG5pbXBvcnQgKiBhcyBkMyBmcm9tICdkMyc7XG5cbmV4cG9ydCBjbGFzcyBFeHRyZW1lc0J1aWxkZXIgaW1wbGVtZW50cyBJQnVpbGRlcjxBeGlzLCBbbnVtYmVyLCBudW1iZXJdPiB7XG4gIHByaXZhdGUgZXh0ZW50QWNjZXNzb3JNYXAgPSBuZXcgTWFwPFxuICAgIEF4aXNPcmllbnRhdGlvbixcbiAgICAocG9pbnQ6IEJhc2VQb2ludCkgPT4gbnVtYmVyXG4gID4oKVxuICAgIC5zZXQoQXhpc09yaWVudGF0aW9uLngsIChfKSA9PiBfLngpXG4gICAgLnNldChBeGlzT3JpZW50YXRpb24ueSwgKF8pID0+IF8ueSk7XG5cbiAgcHJpdmF0ZSBleHRyZW1lczogW251bWJlciwgbnVtYmVyXSA9IFswLCAwXTtcblxuICBidWlsZChzZXR0aW5nczogQXhpcyk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBzZXR0aW5ncy5vcHRpb25zO1xuXG4gICAgY29uc3QgaGFzTWluID0gb3B0aW9ucz8ubWluICE9IG51bGw7XG4gICAgY29uc3QgaGFzTWF4ID0gb3B0aW9ucz8ubWF4ICE9IG51bGw7XG5cbiAgICBpZiAoIWhhc01pbiB8fCAhaGFzTWF4KSB7XG4gICAgICBjb25zdCBsaW5rZWRTZXJpZXMgPSBzZXR0aW5ncy5saW5rZWRTZXJpZXMoKTtcbiAgICAgIGNvbnN0IGRhdGEgPSBsaW5rZWRTZXJpZXMucmVkdWNlKChhY2M6IEJhc2VQb2ludFtdLCBjdXJyZW50KSA9PiB7XG4gICAgICAgIHJldHVybiBhY2MuY29uY2F0KGN1cnJlbnQuZGF0YSk7XG4gICAgICB9LCBbXSk7XG5cbiAgICAgIGNvbnN0IGFjY2Vzc29yID0gdGhpcy5leHRlbnRBY2Nlc3Nvck1hcC5nZXQoc2V0dGluZ3Mub3JpZW50YXRpb24pO1xuICAgICAgLy8gYWRkIG5lZ2F0aXZlIGF4aXMhXG5cbiAgICAgIHRoaXMuZXh0cmVtZXMgPSBkMy5leHRlbnQoZGF0YSwgYWNjZXNzb3IpO1xuICAgIH1cblxuICAgIGlmIChoYXNNaW4pIHtcbiAgICAgIHRoaXMuZXh0cmVtZXNbMF0gPSBvcHRpb25zPy5taW47XG4gICAgfVxuXG4gICAgaWYgKGhhc01heCkge1xuICAgICAgdGhpcy5leHRyZW1lc1sxXSA9IG9wdGlvbnM/Lm1heDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZXh0cmVtZXM7XG4gIH1cbn1cbiJdfQ==
@@ -1,37 +0,0 @@
1
- import { Directive, HostBinding, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../service/zoom.service";
4
- import * as i2 from "../service/chart.service";
5
- export class ZoomableDirective {
6
- constructor(element, svc, chartService) {
7
- this.element = element;
8
- this.svc = svc;
9
- this.chartService = chartService;
10
- this.zoomable = false;
11
- }
12
- ngOnInit() {
13
- if (this.config?.zoom?.enable || this.axis?.options?.zoom) {
14
- this.zoomable = true;
15
- this.svc.applyZoom(this.element, this.chartService.config, this.size);
16
- }
17
- }
18
- ngAfterViewInit() { }
19
- }
20
- ZoomableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: ZoomableDirective, deps: [{ token: i0.ElementRef }, { token: i1.ZoomService }, { token: i2.ChartService }], target: i0.ɵɵFactoryTarget.Directive });
21
- ZoomableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.1", type: ZoomableDirective, selector: "[tetaZoomable]", inputs: { config: "config", axis: "axis", size: "size" }, host: { properties: { "class.zoomable": "this.zoomable" } }, ngImport: i0 });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: ZoomableDirective, decorators: [{
23
- type: Directive,
24
- args: [{
25
- selector: '[tetaZoomable]',
26
- }]
27
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.ZoomService }, { type: i2.ChartService }]; }, propDecorators: { config: [{
28
- type: Input
29
- }], axis: [{
30
- type: Input
31
- }], size: [{
32
- type: Input
33
- }], zoomable: [{
34
- type: HostBinding,
35
- args: ['class.zoomable']
36
- }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiem9vbWFibGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NoYXJ0L2RpcmVjdGl2ZXMvem9vbWFibGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVMxRSxNQUFNLE9BQU8saUJBQWlCO0lBTzVCLFlBQ1UsT0FBbUIsRUFDbkIsR0FBZ0IsRUFDaEIsWUFBMEI7UUFGMUIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixRQUFHLEdBQUgsR0FBRyxDQUFhO1FBQ2hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBTEcsYUFBUSxHQUFHLEtBQUssQ0FBQztJQU1yRCxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtZQUN6RCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUVyQixJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN2RTtJQUNILENBQUM7SUFDRCxlQUFlLEtBQUksQ0FBQzs7OEdBcEJULGlCQUFpQjtrR0FBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBSDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0I7c0pBRVUsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRWlDLFFBQVE7c0JBQTlDLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFpvb21TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS96b29tLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2hhcnRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS9jaGFydC5zZXJ2aWNlJztcbmltcG9ydCB7IElDaGFydENvbmZpZyB9IGZyb20gJy4uL21vZGVsL2ktY2hhcnQtY29uZmlnJztcbmltcG9ydCB7IEF4aXMgfSBmcm9tICcuLi9jb3JlL2F4aXMvYXhpcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t0ZXRhWm9vbWFibGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgWm9vbWFibGVEaXJlY3RpdmUge1xuICBASW5wdXQoKSBjb25maWc/OiBJQ2hhcnRDb25maWc7XG4gIEBJbnB1dCgpIGF4aXM/OiBBeGlzO1xuICBASW5wdXQoKSBzaXplPzogRE9NUmVjdDtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnpvb21hYmxlJykgcHJpdmF0ZSB6b29tYWJsZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHN2YzogWm9vbVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjaGFydFNlcnZpY2U6IENoYXJ0U2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnPy56b29tPy5lbmFibGUgfHwgdGhpcy5heGlzPy5vcHRpb25zPy56b29tKSB7XG4gICAgICB0aGlzLnpvb21hYmxlID0gdHJ1ZTtcblxuICAgICAgdGhpcy5zdmMuYXBwbHlab29tKHRoaXMuZWxlbWVudCwgdGhpcy5jaGFydFNlcnZpY2UuY29uZmlnLCB0aGlzLnNpemUpO1xuICAgIH1cbiAgfVxuICBuZ0FmdGVyVmlld0luaXQoKSB7fVxufVxuIl19
@@ -1,30 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, HostBinding, Input, } from '@angular/core';
2
- import { SeriesType } from '../model/enum/series-type';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- export class LegendComponent {
6
- constructor() {
7
- this.sizeMapping = new Map()
8
- .set(SeriesType.line, 2)
9
- .set(SeriesType.bar, 12);
10
- this.classLegend = true;
11
- }
12
- ngOnInit() {
13
- this.series = this.series?.filter((_) => _.showInLegend !== false);
14
- }
15
- getHeight(serie) {
16
- return this.sizeMapping.get(serie.type);
17
- }
18
- }
19
- LegendComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: LegendComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
20
- LegendComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: LegendComponent, selector: "teta-legend", inputs: { series: "series" }, host: { properties: { "class.padding-bottom-4": "this.classLegend" } }, ngImport: i0, template: "<div *ngFor=\"let serie of series\">\n <div class=\"legend-item\">\n <div class=\"legend-icon-form\" [style.height.px]=\"getHeight(serie)\" [style.background-color]=\"serie.color\"></div>\n <div class=\"legend-label\">{{ serie.name }}</div>\n </div>\n</div>\n", styles: [":host{display:flex;grid-gap:8px;flex-wrap:wrap;align-items:center;justify-content:space-evenly}:host .legend-item{display:flex;align-items:center}:host .legend-icon-form{width:12px}:host .legend-label{margin-left:5px}\n"], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: LegendComponent, decorators: [{
22
- type: Component,
23
- args: [{ selector: 'teta-legend', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngFor=\"let serie of series\">\n <div class=\"legend-item\">\n <div class=\"legend-icon-form\" [style.height.px]=\"getHeight(serie)\" [style.background-color]=\"serie.color\"></div>\n <div class=\"legend-label\">{{ serie.name }}</div>\n </div>\n</div>\n", styles: [":host{display:flex;grid-gap:8px;flex-wrap:wrap;align-items:center;justify-content:space-evenly}:host .legend-item{display:flex;align-items:center}:host .legend-icon-form{width:12px}:host .legend-label{margin-left:5px}\n"] }]
24
- }], ctorParameters: function () { return []; }, propDecorators: { series: [{
25
- type: Input
26
- }], classLegend: [{
27
- type: HostBinding,
28
- args: ['class.padding-bottom-4']
29
- }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFdBQVcsRUFDWCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7QUFRdkQsTUFBTSxPQUFPLGVBQWU7SUFRMUI7UUFQUSxnQkFBVyxHQUFHLElBQUksR0FBRyxFQUFzQjthQUNoRCxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7YUFDdkIsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFHWSxnQkFBVyxHQUFHLElBQUksQ0FBQztJQUUzQyxDQUFDO0lBRWhCLFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBd0I7UUFDaEMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQzs7NEdBaEJVLGVBQWU7Z0dBQWYsZUFBZSx5SkNqQjVCLDZRQU1BOzJGRFdhLGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0UsYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNOzBFQU90QyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ2lDLFdBQVc7c0JBQWpELFdBQVc7dUJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2VyaWVzIH0gZnJvbSAnLi4vbW9kZWwvc2VyaWVzJztcbmltcG9ydCB7IEJhc2VQb2ludCB9IGZyb20gJy4uL21vZGVsL2Jhc2UtcG9pbnQnO1xuaW1wb3J0IHsgU2VyaWVzVHlwZSB9IGZyb20gJy4uL21vZGVsL2VudW0vc2VyaWVzLXR5cGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXRhLWxlZ2VuZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sZWdlbmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sZWdlbmQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIExlZ2VuZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgc2l6ZU1hcHBpbmcgPSBuZXcgTWFwPFNlcmllc1R5cGUsIG51bWJlcj4oKVxuICAgIC5zZXQoU2VyaWVzVHlwZS5saW5lLCAyKVxuICAgIC5zZXQoU2VyaWVzVHlwZS5iYXIsIDEyKTtcblxuICBASW5wdXQoKSBzZXJpZXM6IEFycmF5PFNlcmllczxCYXNlUG9pbnQ+PjtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5wYWRkaW5nLWJvdHRvbS00JykgY2xhc3NMZWdlbmQgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNlcmllcyA9IHRoaXMuc2VyaWVzPy5maWx0ZXIoKF8pID0+IF8uc2hvd0luTGVnZW5kICE9PSBmYWxzZSk7XG4gIH1cblxuICBnZXRIZWlnaHQoc2VyaWU6IFNlcmllczxCYXNlUG9pbnQ+KSB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZU1hcHBpbmcuZ2V0KHNlcmllLnR5cGUpO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0Zvcj1cImxldCBzZXJpZSBvZiBzZXJpZXNcIj5cbiAgPGRpdiBjbGFzcz1cImxlZ2VuZC1pdGVtXCI+XG4gICAgPGRpdiBjbGFzcz1cImxlZ2VuZC1pY29uLWZvcm1cIiBbc3R5bGUuaGVpZ2h0LnB4XT1cImdldEhlaWdodChzZXJpZSlcIiBbc3R5bGUuYmFja2dyb3VuZC1jb2xvcl09XCJzZXJpZS5jb2xvclwiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJsZWdlbmQtbGFiZWxcIj57eyBzZXJpZS5uYW1lIH19PC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpcy1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NoYXJ0L21vZGVsL2F4aXMtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXhpc1R5cGUgfSBmcm9tICcuL2VudW0vYXhpcy10eXBlJztcbmltcG9ydCB7IFBsb3RiYW5kIH0gZnJvbSAnLi9wbG90YmFuZCc7XG5pbXBvcnQgeyBQbG90TGluZSB9IGZyb20gJy4vcGxvdGxpbmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEF4aXNPcHRpb25zIHtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIG1pbj86IG51bWJlcjtcbiAgbWF4PzogbnVtYmVyO1xuICB2aXNpYmxlPzogYm9vbGVhbjtcbiAgdGlja0Zvcm1hdD86IChkOiBhbnkpID0+IHN0cmluZztcbiAgdHlwZT86IEF4aXNUeXBlO1xuICB6b29tPzogYm9vbGVhbjtcbiAgaW52ZXJ0ZWQ/OiBib29sZWFuO1xuICBuZWdhdGl2ZT86IGJvb2xlYW47XG4gIG9wcG9zaXRlPzogYm9vbGVhbjtcbiAgcGxvdGJhbmRzPzogUGxvdGJhbmRbXTtcbiAgcGxvdGxpbmVzPzogUGxvdExpbmVbXTtcbn1cbiJdfQ==
@@ -1,9 +0,0 @@
1
- export var AxisType;
2
- (function (AxisType) {
3
- AxisType[AxisType["number"] = 0] = "number";
4
- AxisType[AxisType["time"] = 1] = "time";
5
- AxisType[AxisType["category"] = 2] = "category";
6
- AxisType[AxisType["log"] = 3] = "log";
7
- AxisType[AxisType["pow"] = 4] = "pow";
8
- })(AxisType || (AxisType = {}));
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpcy10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NoYXJ0L21vZGVsL2VudW0vYXhpcy10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFFBTVg7QUFORCxXQUFZLFFBQVE7SUFDbEIsMkNBQU0sQ0FBQTtJQUNOLHVDQUFJLENBQUE7SUFDSiwrQ0FBUSxDQUFBO0lBQ1IscUNBQUcsQ0FBQTtJQUNILHFDQUFHLENBQUE7QUFDTCxDQUFDLEVBTlcsUUFBUSxLQUFSLFFBQVEsUUFNbkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBBeGlzVHlwZSB7XG4gIG51bWJlcixcbiAgdGltZSxcbiAgY2F0ZWdvcnksXG4gIGxvZyxcbiAgcG93LFxufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1icm9hZGNhc3QtbWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9tb2RlbC9pLWJyb2FkY2FzdC1tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElCcm9hZGNhc3RNZXNzYWdlIHtcbiAgY2hhbm5lbDogc3RyaW5nO1xuICBtZXNzYWdlOiBhbnk7XG4gIGRvbWFpbj86IG51bWJlcltdO1xufVxuIl19
@@ -1,16 +0,0 @@
1
- export class Plotband {
2
- constructor(options) {
3
- this.id = options?.id;
4
- this.from = options?.from;
5
- this.to = options?.to;
6
- this.label = options?.label;
7
- this.showGrabbers =
8
- options?.showGrabbers != null ? options.showGrabbers : true;
9
- this.draggable = options?.draggable != null ? options?.draggable : false;
10
- this.resizable = options?.resizable != null ? options?.resizable : true;
11
- this.min = options?.min;
12
- this.max = options?.max;
13
- this.style = options?.style;
14
- }
15
- }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxvdGJhbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2hhcnQvbW9kZWwvcGxvdGJhbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLFFBQVE7SUFlbkIsWUFBWSxPQWNYO1FBQ0MsSUFBSSxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxFQUFFLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLEVBQUUsS0FBSyxDQUFDO1FBQzVCLElBQUksQ0FBQyxZQUFZO1lBQ2YsT0FBTyxFQUFFLFlBQVksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUM5RCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDekUsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3hFLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxFQUFFLEdBQUcsQ0FBQztRQUN4QixJQUFJLENBQUMsR0FBRyxHQUFHLE9BQU8sRUFBRSxHQUFHLENBQUM7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLEVBQUUsS0FBSyxDQUFDO0lBQzlCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN2Z0F0dHJpYnV0ZXMgfSBmcm9tICcuL3N2Zy1hdHRyaWJ1dGVzJztcblxuZXhwb3J0IGNsYXNzIFBsb3RiYW5kIHtcbiAgaWQ6IG51bWJlciB8IHN0cmluZztcbiAgZnJvbTogbnVtYmVyO1xuICB0bzogbnVtYmVyO1xuICBsYWJlbD86IHN0cmluZztcbiAgc2hvd0dyYWJiZXJzPzogYm9vbGVhbjtcbiAgZHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgcmVzaXphYmxlPzogYm9vbGVhbjtcbiAgbWluPzogbnVtYmVyO1xuICBtYXg/OiBudW1iZXI7XG4gIHN0eWxlPzoge1xuICAgIHBsb3RiYW5kPzogU3ZnQXR0cmlidXRlcztcbiAgICBncmFiYmVycz86IFN2Z0F0dHJpYnV0ZXM7XG4gIH07XG5cbiAgY29uc3RydWN0b3Iob3B0aW9ucz86IHtcbiAgICBpZDogYW55O1xuICAgIGZyb206IG51bWJlcjtcbiAgICB0bzogbnVtYmVyO1xuICAgIGxhYmVsPzogc3RyaW5nO1xuICAgIHNob3dHcmFiYmVycz86IGJvb2xlYW47XG4gICAgZHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgICByZXNpemFibGU/OiBib29sZWFuO1xuICAgIG1pbj86IG51bWJlcjtcbiAgICBtYXg/OiBudW1iZXI7XG4gICAgc3R5bGU/OiB7XG4gICAgICBwbG90YmFuZD86IFN2Z0F0dHJpYnV0ZXM7XG4gICAgICBncmFiYmVycz86IFN2Z0F0dHJpYnV0ZXM7XG4gICAgfTtcbiAgfSkge1xuICAgIHRoaXMuaWQgPSBvcHRpb25zPy5pZDtcbiAgICB0aGlzLmZyb20gPSBvcHRpb25zPy5mcm9tO1xuICAgIHRoaXMudG8gPSBvcHRpb25zPy50bztcbiAgICB0aGlzLmxhYmVsID0gb3B0aW9ucz8ubGFiZWw7XG4gICAgdGhpcy5zaG93R3JhYmJlcnMgPVxuICAgICAgb3B0aW9ucz8uc2hvd0dyYWJiZXJzICE9IG51bGwgPyBvcHRpb25zLnNob3dHcmFiYmVycyA6IHRydWU7XG4gICAgdGhpcy5kcmFnZ2FibGUgPSBvcHRpb25zPy5kcmFnZ2FibGUgIT0gbnVsbCA/IG9wdGlvbnM/LmRyYWdnYWJsZSA6IGZhbHNlO1xuICAgIHRoaXMucmVzaXphYmxlID0gb3B0aW9ucz8ucmVzaXphYmxlICE9IG51bGwgPyBvcHRpb25zPy5yZXNpemFibGUgOiB0cnVlO1xuICAgIHRoaXMubWluID0gb3B0aW9ucz8ubWluO1xuICAgIHRoaXMubWF4ID0gb3B0aW9ucz8ubWF4O1xuICAgIHRoaXMuc3R5bGUgPSBvcHRpb25zPy5zdHlsZTtcbiAgfVxufVxuIl19
@@ -1,12 +0,0 @@
1
- export class PlotLine {
2
- constructor(options) {
3
- this.id = options?.id;
4
- this.value = options?.value;
5
- this.label = options?.label;
6
- this.min = options?.min;
7
- this.max = options?.max;
8
- this.draggable = options?.draggable;
9
- this.style = options?.style;
10
- }
11
- }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxvdGxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2hhcnQvbW9kZWwvcGxvdGxpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLFFBQVE7SUFTbkIsWUFBWSxPQVFYO1FBQ0MsSUFBSSxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxFQUFFLEtBQUssQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sRUFBRSxLQUFLLENBQUM7UUFDNUIsSUFBSSxDQUFDLEdBQUcsR0FBRyxPQUFPLEVBQUUsR0FBRyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxFQUFFLEdBQUcsQ0FBQztRQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLENBQUM7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLEVBQUUsS0FBSyxDQUFDO0lBQzlCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN2Z0F0dHJpYnV0ZXMgfSBmcm9tICcuL3N2Zy1hdHRyaWJ1dGVzJztcblxuZXhwb3J0IGNsYXNzIFBsb3RMaW5lIHtcbiAgaWQ/OiBudW1iZXIgfCBzdHJpbmc7XG4gIHZhbHVlOiBudW1iZXI7XG4gIGxhYmVsPzogc3RyaW5nO1xuICBtaW4/OiBudW1iZXI7XG4gIG1heD86IG51bWJlcjtcbiAgZHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgc3R5bGU/OiBTdmdBdHRyaWJ1dGVzO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM/OiB7XG4gICAgaWQ/OiBudW1iZXI7XG4gICAgdmFsdWU6IG51bWJlcjtcbiAgICBsYWJlbD86IHN0cmluZztcbiAgICBtaW4/OiBudW1iZXI7XG4gICAgbWF4PzogbnVtYmVyO1xuICAgIGRyYWdnYWJsZT86IGJvb2xlYW47XG4gICAgc3R5bGU/OiBTdmdBdHRyaWJ1dGVzO1xuICB9KSB7XG4gICAgdGhpcy5pZCA9IG9wdGlvbnM/LmlkO1xuICAgIHRoaXMudmFsdWUgPSBvcHRpb25zPy52YWx1ZTtcbiAgICB0aGlzLmxhYmVsID0gb3B0aW9ucz8ubGFiZWw7XG4gICAgdGhpcy5taW4gPSBvcHRpb25zPy5taW47XG4gICAgdGhpcy5tYXggPSBvcHRpb25zPy5tYXg7XG4gICAgdGhpcy5kcmFnZ2FibGUgPSBvcHRpb25zPy5kcmFnZ2FibGU7XG4gICAgdGhpcy5zdHlsZSA9IG9wdGlvbnM/LnN0eWxlO1xuICB9XG59XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { AxisOrientation } from '../model/enum/axis-orientation';
3
- import { Axis } from '../core/axis/axis';
4
- import * as i0 from "@angular/core";
5
- export class AxesService {
6
- constructor() {
7
- this.yAxis = new Map();
8
- this.xAxis = new Map();
9
- }
10
- init(config) {
11
- config?.yAxis.forEach((_, index) => {
12
- const axis = Axis.createAxis(AxisOrientation.y, config, index);
13
- this.yAxis.set(index, axis);
14
- });
15
- config?.xAxis.forEach((_, index) => {
16
- const axis = Axis.createAxis(AxisOrientation.x, config, index);
17
- this.xAxis.set(index, axis);
18
- });
19
- }
20
- }
21
- AxesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: AxesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
22
- AxesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: AxesService, providedIn: 'root' });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: AxesService, decorators: [{
24
- type: Injectable,
25
- args: [{
26
- providedIn: 'root',
27
- }]
28
- }], ctorParameters: function () { return []; } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NoYXJ0L3NlcnZpY2UvYXhlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFLekMsTUFBTSxPQUFPLFdBQVc7SUFJdEI7UUFITyxVQUFLLEdBQXNCLElBQUksR0FBRyxFQUFnQixDQUFDO1FBQ25ELFVBQUssR0FBc0IsSUFBSSxHQUFHLEVBQWdCLENBQUM7SUFFM0MsQ0FBQztJQUVoQixJQUFJLENBQUMsTUFBb0I7UUFDdkIsTUFBTSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDakMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztZQUUvRCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUNqQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBRS9ELElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O3dHQWpCVSxXQUFXOzRHQUFYLFdBQVcsY0FGVixNQUFNOzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUNoYXJ0Q29uZmlnIH0gZnJvbSAnLi4vbW9kZWwvaS1jaGFydC1jb25maWcnO1xuaW1wb3J0IHsgQXhpc09yaWVudGF0aW9uIH0gZnJvbSAnLi4vbW9kZWwvZW51bS9heGlzLW9yaWVudGF0aW9uJztcbmltcG9ydCB7IEF4aXMgfSBmcm9tICcuLi9jb3JlL2F4aXMvYXhpcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBeGVzU2VydmljZSB7XG4gIHB1YmxpYyB5QXhpczogTWFwPG51bWJlciwgQXhpcz4gPSBuZXcgTWFwPG51bWJlciwgQXhpcz4oKTtcbiAgcHVibGljIHhBeGlzOiBNYXA8bnVtYmVyLCBBeGlzPiA9IG5ldyBNYXA8bnVtYmVyLCBBeGlzPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBpbml0KGNvbmZpZzogSUNoYXJ0Q29uZmlnKSB7XG4gICAgY29uZmlnPy55QXhpcy5mb3JFYWNoKChfLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgYXhpcyA9IEF4aXMuY3JlYXRlQXhpcyhBeGlzT3JpZW50YXRpb24ueSwgY29uZmlnLCBpbmRleCk7XG5cbiAgICAgIHRoaXMueUF4aXMuc2V0KGluZGV4LCBheGlzKTtcbiAgICB9KTtcbiAgICBjb25maWc/LnhBeGlzLmZvckVhY2goKF8sIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBheGlzID0gQXhpcy5jcmVhdGVBeGlzKEF4aXNPcmllbnRhdGlvbi54LCBjb25maWcsIGluZGV4KTtcblxuICAgICAgdGhpcy54QXhpcy5zZXQoaW5kZXgsIGF4aXMpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,25 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { filter, Subject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export class BroadcastService {
5
- constructor() {
6
- this.emitter = new Subject();
7
- }
8
- broadcast(value) {
9
- this.emitter.next(value);
10
- }
11
- subscribeToChannel(channel) {
12
- return this.emitter
13
- .asObservable()
14
- .pipe(filter((msg) => channel && msg.channel === channel));
15
- }
16
- }
17
- BroadcastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: BroadcastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
18
- BroadcastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: BroadcastService, providedIn: 'root' });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: BroadcastService, decorators: [{
20
- type: Injectable,
21
- args: [{
22
- providedIn: 'root',
23
- }]
24
- }], ctorParameters: function () { return []; } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvYWRjYXN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2hhcnQvc2VydmljZS9icm9hZGNhc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxNQUFNLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUtuRCxNQUFNLE9BQU8sZ0JBQWdCO0lBRzNCO1FBQ0UsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBcUIsQ0FBQztJQUNsRCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQXdCO1FBQ2hDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFlO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLE9BQU87YUFDaEIsWUFBWSxFQUFFO2FBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDOzs2R0FmVSxnQkFBZ0I7aUhBQWhCLGdCQUFnQixjQUZmLE1BQU07MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElCcm9hZGNhc3RNZXNzYWdlIH0gZnJvbSAnLi4vbW9kZWwvaS1icm9hZGNhc3QtbWVzc2FnZSc7XG5pbXBvcnQgeyBmaWx0ZXIsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEJyb2FkY2FzdFNlcnZpY2Uge1xuICBwcml2YXRlIGVtaXR0ZXI6IFN1YmplY3Q8SUJyb2FkY2FzdE1lc3NhZ2U+O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZW1pdHRlciA9IG5ldyBTdWJqZWN0PElCcm9hZGNhc3RNZXNzYWdlPigpO1xuICB9XG5cbiAgYnJvYWRjYXN0KHZhbHVlOiBJQnJvYWRjYXN0TWVzc2FnZSkge1xuICAgIHRoaXMuZW1pdHRlci5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHN1YnNjcmliZVRvQ2hhbm5lbChjaGFubmVsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPElCcm9hZGNhc3RNZXNzYWdlPiB7XG4gICAgcmV0dXJuIHRoaXMuZW1pdHRlclxuICAgICAgLmFzT2JzZXJ2YWJsZSgpXG4gICAgICAucGlwZShmaWx0ZXIoKG1zZykgPT4gY2hhbm5lbCAmJiBtc2cuY2hhbm5lbCA9PT0gY2hhbm5lbCkpO1xuICB9XG59XG4iXX0=
@@ -1,67 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BrushType } from '../model/enum/brush-type';
3
- import * as d3 from 'd3';
4
- import { map } from 'rxjs';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "./broadcast.service";
7
- import * as i2 from "./scale.service";
8
- export class BrushService {
9
- constructor(broadcastService, scaleService) {
10
- this.broadcastService = broadcastService;
11
- this.scaleService = scaleService;
12
- this.brushMap = new Map()
13
- .set(BrushType.x, d3.brushX())
14
- .set(BrushType.y, d3.brushY());
15
- this.scaleMap = new Map()
16
- .set(BrushType.x, 'xScales')
17
- .set(BrushType.y, 'yScales');
18
- }
19
- applyBrush(svgElement, config, size) {
20
- this.broadcastSubscribtion?.unsubscribe();
21
- if (config.brush?.enable) {
22
- const s = this.scaleService[this.scaleMap.get(config?.brush?.type ?? BrushType.x)].get(config?.brush?.axisIndex ?? 0);
23
- const brush = this.brushMap.get(config?.brush?.type ?? BrushType.x);
24
- const container = d3.select(svgElement.nativeElement);
25
- const brushBehavior = brush.on('start brush end', (_) => {
26
- if (_.sourceEvent) {
27
- const [from, to] = _.selection;
28
- if (to - from < 5) {
29
- container.call(brush.move, [from, to]);
30
- return;
31
- }
32
- this.broadcastService.broadcast({
33
- channel: config?.zoom?.syncChannel,
34
- message: {
35
- ..._,
36
- selection: [s.invert(from), s.invert(to)],
37
- brushType: config?.brush?.type ?? BrushType.x,
38
- },
39
- });
40
- }
41
- });
42
- container.call(brushBehavior);
43
- setTimeout(() => {
44
- container.call(brush.move, s.domain().map(s), {});
45
- });
46
- this.broadcastSubscribtion = this.broadcastService
47
- .subscribeToChannel(config?.zoom?.syncChannel)
48
- .pipe(map((_) => {
49
- if (_.message?.transform) {
50
- const s = this.scaleService[this.scaleMap.get(config?.brush?.type ?? BrushType.x)].get(config?.brush?.axisIndex ?? 0);
51
- const domain = _.domain;
52
- container.call(brush.move, [s(domain[0]), s(domain[1])]);
53
- }
54
- }))
55
- .subscribe();
56
- }
57
- }
58
- }
59
- BrushService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: BrushService, deps: [{ token: i1.BroadcastService }, { token: i2.ScaleService }], target: i0.ɵɵFactoryTarget.Injectable });
60
- BrushService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: BrushService, providedIn: 'root' });
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: BrushService, decorators: [{
62
- type: Injectable,
63
- args: [{
64
- providedIn: 'root',
65
- }]
66
- }], ctorParameters: function () { return [{ type: i1.BroadcastService }, { type: i2.ScaleService }]; } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJ1c2guc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9zZXJ2aWNlL2JydXNoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDekIsT0FBTyxFQUFFLEdBQUcsRUFBZ0IsTUFBTSxNQUFNLENBQUM7Ozs7QUFRekMsTUFBTSxPQUFPLFlBQVk7SUFXdkIsWUFDVSxnQkFBa0MsRUFDbEMsWUFBMEI7UUFEMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQVY1QixhQUFRLEdBQUcsSUFBSSxHQUFHLEVBQW9DO2FBQzNELEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUM3QixHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUV6QixhQUFRLEdBQUcsSUFBSSxHQUFHLEVBQXFCO2FBQzVDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQzthQUMzQixHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUs1QixDQUFDO0lBRUosVUFBVSxDQUFDLFVBQXNCLEVBQUUsTUFBb0IsRUFBRSxJQUFhO1FBQ3BFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUUxQyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ3hCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FDdEQsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUM7WUFFckMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRXBFLE1BQU0sU0FBUyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBRXRELE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQzVCLGlCQUFpQixFQUNqQixDQUFDLENBQXVCLEVBQUUsRUFBRTtnQkFDMUIsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFO29CQUNqQixNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFxQixDQUFDO29CQUUzQyxJQUFJLEVBQUUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxFQUFFO3dCQUNqQixTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQzt3QkFDdkMsT0FBTztxQkFDUjtvQkFFRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDO3dCQUM5QixPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxXQUFXO3dCQUNsQyxPQUFPLEVBQUU7NEJBQ1AsR0FBRyxDQUFDOzRCQUNKLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQzs0QkFDekMsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxJQUFJLFNBQVMsQ0FBQyxDQUFDO3lCQUM5QztxQkFDRixDQUFDLENBQUM7aUJBQ0o7WUFDSCxDQUFDLENBQ0YsQ0FBQztZQUVGLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFFOUIsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNwRCxDQUFDLENBQUMsQ0FBQztZQUVILElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsZ0JBQWdCO2lCQUMvQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQztpQkFDN0MsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNSLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUU7b0JBQ3hCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FDdEQsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUM7b0JBRXJDLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7b0JBRXhCLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUMxRDtZQUNILENBQUMsQ0FBQyxDQUNIO2lCQUNBLFNBQVMsRUFBRSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQzs7eUdBMUVVLFlBQVk7NkdBQVosWUFBWSxjQUZYLE1BQU07MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcnVzaFR5cGUgfSBmcm9tICcuLi9tb2RlbC9lbnVtL2JydXNoLXR5cGUnO1xuaW1wb3J0ICogYXMgZDMgZnJvbSAnZDMnO1xuaW1wb3J0IHsgbWFwLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJyb2FkY2FzdFNlcnZpY2UgfSBmcm9tICcuL2Jyb2FkY2FzdC5zZXJ2aWNlJztcbmltcG9ydCB7IElDaGFydENvbmZpZyB9IGZyb20gJy4uL21vZGVsL2ktY2hhcnQtY29uZmlnJztcbmltcG9ydCB7IFNjYWxlU2VydmljZSB9IGZyb20gJy4vc2NhbGUuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBCcnVzaFNlcnZpY2Uge1xuICBicm9hZGNhc3RTdWJzY3JpYnRpb246IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIGJydXNoTWFwID0gbmV3IE1hcDxCcnVzaFR5cGUsIGQzLkJydXNoQmVoYXZpb3I8YW55Pj4oKVxuICAgIC5zZXQoQnJ1c2hUeXBlLngsIGQzLmJydXNoWCgpKVxuICAgIC5zZXQoQnJ1c2hUeXBlLnksIGQzLmJydXNoWSgpKTtcblxuICBwcml2YXRlIHNjYWxlTWFwID0gbmV3IE1hcDxCcnVzaFR5cGUsIHN0cmluZz4oKVxuICAgIC5zZXQoQnJ1c2hUeXBlLngsICd4U2NhbGVzJylcbiAgICAuc2V0KEJydXNoVHlwZS55LCAneVNjYWxlcycpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYnJvYWRjYXN0U2VydmljZTogQnJvYWRjYXN0U2VydmljZSxcbiAgICBwcml2YXRlIHNjYWxlU2VydmljZTogU2NhbGVTZXJ2aWNlXG4gICkge31cblxuICBhcHBseUJydXNoKHN2Z0VsZW1lbnQ6IEVsZW1lbnRSZWYsIGNvbmZpZzogSUNoYXJ0Q29uZmlnLCBzaXplOiBET01SZWN0KSB7XG4gICAgdGhpcy5icm9hZGNhc3RTdWJzY3JpYnRpb24/LnVuc3Vic2NyaWJlKCk7XG5cbiAgICBpZiAoY29uZmlnLmJydXNoPy5lbmFibGUpIHtcbiAgICAgIGNvbnN0IHMgPSB0aGlzLnNjYWxlU2VydmljZVtcbiAgICAgICAgdGhpcy5zY2FsZU1hcC5nZXQoY29uZmlnPy5icnVzaD8udHlwZSA/PyBCcnVzaFR5cGUueClcbiAgICAgIF0uZ2V0KGNvbmZpZz8uYnJ1c2g/LmF4aXNJbmRleCA/PyAwKTtcblxuICAgICAgY29uc3QgYnJ1c2ggPSB0aGlzLmJydXNoTWFwLmdldChjb25maWc/LmJydXNoPy50eXBlID8/IEJydXNoVHlwZS54KTtcblxuICAgICAgY29uc3QgY29udGFpbmVyID0gZDMuc2VsZWN0KHN2Z0VsZW1lbnQubmF0aXZlRWxlbWVudCk7XG5cbiAgICAgIGNvbnN0IGJydXNoQmVoYXZpb3IgPSBicnVzaC5vbihcbiAgICAgICAgJ3N0YXJ0IGJydXNoIGVuZCcsXG4gICAgICAgIChfOiBkMy5EM0JydXNoRXZlbnQ8YW55PikgPT4ge1xuICAgICAgICAgIGlmIChfLnNvdXJjZUV2ZW50KSB7XG4gICAgICAgICAgICBjb25zdCBbZnJvbSwgdG9dID0gXy5zZWxlY3Rpb24gYXMgbnVtYmVyW107XG5cbiAgICAgICAgICAgIGlmICh0byAtIGZyb20gPCA1KSB7XG4gICAgICAgICAgICAgIGNvbnRhaW5lci5jYWxsKGJydXNoLm1vdmUsIFtmcm9tLCB0b10pO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuYnJvYWRjYXN0U2VydmljZS5icm9hZGNhc3Qoe1xuICAgICAgICAgICAgICBjaGFubmVsOiBjb25maWc/Lnpvb20/LnN5bmNDaGFubmVsLFxuICAgICAgICAgICAgICBtZXNzYWdlOiB7XG4gICAgICAgICAgICAgICAgLi4uXyxcbiAgICAgICAgICAgICAgICBzZWxlY3Rpb246IFtzLmludmVydChmcm9tKSwgcy5pbnZlcnQodG8pXSxcbiAgICAgICAgICAgICAgICBicnVzaFR5cGU6IGNvbmZpZz8uYnJ1c2g/LnR5cGUgPz8gQnJ1c2hUeXBlLngsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG5cbiAgICAgIGNvbnRhaW5lci5jYWxsKGJydXNoQmVoYXZpb3IpO1xuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgY29udGFpbmVyLmNhbGwoYnJ1c2gubW92ZSwgcy5kb21haW4oKS5tYXAocyksIHt9KTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLmJyb2FkY2FzdFN1YnNjcmlidGlvbiA9IHRoaXMuYnJvYWRjYXN0U2VydmljZVxuICAgICAgICAuc3Vic2NyaWJlVG9DaGFubmVsKGNvbmZpZz8uem9vbT8uc3luY0NoYW5uZWwpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcCgoXykgPT4ge1xuICAgICAgICAgICAgaWYgKF8ubWVzc2FnZT8udHJhbnNmb3JtKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHMgPSB0aGlzLnNjYWxlU2VydmljZVtcbiAgICAgICAgICAgICAgICB0aGlzLnNjYWxlTWFwLmdldChjb25maWc/LmJydXNoPy50eXBlID8/IEJydXNoVHlwZS54KVxuICAgICAgICAgICAgICBdLmdldChjb25maWc/LmJydXNoPy5heGlzSW5kZXggPz8gMCk7XG5cbiAgICAgICAgICAgICAgY29uc3QgZG9tYWluID0gXy5kb21haW47XG5cbiAgICAgICAgICAgICAgY29udGFpbmVyLmNhbGwoYnJ1c2gubW92ZSwgW3MoZG9tYWluWzBdKSwgcyhkb21haW5bMV0pXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,76 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { map, Subject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./axes.service";
5
- import * as i2 from "./scale.service";
6
- export class ChartService {
7
- constructor(axesService, scaleService) {
8
- this.axesService = axesService;
9
- this.scaleService = scaleService;
10
- this.size$ = new Subject();
11
- this.pointerMove$ = new Subject();
12
- this.tooltips$ = new Subject();
13
- this.plotbandMove$ = new Subject();
14
- this.plotlineMove$ = new Subject();
15
- this.pointMove$ = new Subject();
16
- this.size = this.size$.asObservable();
17
- this.pointerMove = this.pointerMove$.asObservable();
18
- this.tooltips = this.tooltips$.asObservable();
19
- this.plotbandMove = this.plotbandMove$.asObservable();
20
- this.plotlineMove = this.plotlineMove$.asObservable();
21
- this.pointMove = this.pointMove$.asObservable();
22
- this.size
23
- .pipe(map((size) => {
24
- this.scaleService.createScales(size, this._config);
25
- }))
26
- .subscribe();
27
- }
28
- init(config) {
29
- this._config = config;
30
- if (config.inverted) {
31
- this._config.series = this._config?.series?.map((serie) => {
32
- return {
33
- ...serie,
34
- data: serie?.data?.map((point) => {
35
- return {
36
- ...point,
37
- x: point?.y,
38
- y: point?.x,
39
- };
40
- }),
41
- };
42
- });
43
- }
44
- this.axesService.init(this._config);
45
- }
46
- setSize(size) {
47
- this.size$.next(size);
48
- }
49
- setPointerMove(event) {
50
- this.pointerMove$.next({ event });
51
- }
52
- setTooltip(tooltip) {
53
- this.tooltips$.next(tooltip);
54
- }
55
- emitPlotband(event) {
56
- this.plotbandMove$.next(event);
57
- }
58
- emitPlotline(event) {
59
- this.plotlineMove$.next(event);
60
- }
61
- emitPoint(event) {
62
- this.pointMove$.next(event);
63
- }
64
- get config() {
65
- return this._config;
66
- }
67
- }
68
- ChartService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: ChartService, deps: [{ token: i1.AxesService }, { token: i2.ScaleService }], target: i0.ɵɵFactoryTarget.Injectable });
69
- ChartService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: ChartService, providedIn: 'root' });
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: ChartService, decorators: [{
71
- type: Injectable,
72
- args: [{
73
- providedIn: 'root',
74
- }]
75
- }], ctorParameters: function () { return [{ type: i1.AxesService }, { type: i2.ScaleService }]; } });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9zZXJ2aWNlL2NoYXJ0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsR0FBRyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQVdoRCxNQUFNLE9BQU8sWUFBWTtJQWlCdkIsWUFDVSxXQUF3QixFQUN4QixZQUEwQjtRQUQxQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQVg1QixVQUFLLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUMvQixpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFPLENBQUM7UUFDbEMsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFtQixDQUFDO1FBQzNDLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQXlCLENBQUM7UUFDckQsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBeUIsQ0FBQztRQUNyRCxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQTJCLENBQUM7UUFRMUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0RCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFaEQsSUFBSSxDQUFDLElBQUk7YUFDTixJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDWCxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVNLElBQUksQ0FBQyxNQUFvQjtRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUV0QixJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ3hELE9BQU87b0JBQ0wsR0FBRyxLQUFLO29CQUNSLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO3dCQUMvQixPQUFPOzRCQUNMLEdBQUcsS0FBSzs0QkFDUixDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7NEJBQ1gsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDO3lCQUNaLENBQUM7b0JBQ0osQ0FBQyxDQUFDO2lCQUNILENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxPQUFPLENBQUMsSUFBYTtRQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRU0sY0FBYyxDQUFDLEtBQVU7UUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxVQUFVLENBQUMsT0FBd0I7UUFDeEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUE0QjtRQUM5QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU0sWUFBWSxDQUFDLEtBQTRCO1FBQzlDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBOEI7UUFDN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDOzt5R0FwRlUsWUFBWTs2R0FBWixZQUFZLGNBRlgsTUFBTTsyRkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElDaGFydENvbmZpZyB9IGZyb20gJy4uL21vZGVsL2ktY2hhcnQtY29uZmlnJztcbmltcG9ydCB7IEF4ZXNTZXJ2aWNlIH0gZnJvbSAnLi9heGVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTY2FsZVNlcnZpY2UgfSBmcm9tICcuL3NjYWxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSUNoYXJ0RXZlbnQgfSBmcm9tICcuLi9tb2RlbC9pLWNoYXJ0LWV2ZW50JztcbmltcG9ydCB7IElEaXNwbGF5VG9vbHRpcCB9IGZyb20gJy4uL21vZGVsL2ktZGlzcGxheS10b29sdGlwJztcbmltcG9ydCB7IFBsb3RiYW5kIH0gZnJvbSAnLi4vbW9kZWwvcGxvdGJhbmQnO1xuaW1wb3J0IHsgUGxvdExpbmUgfSBmcm9tICcuLi9tb2RlbC9wbG90bGluZSc7XG5pbXBvcnQgeyBJUG9pbnRNb3ZlIH0gZnJvbSAnLi4vbW9kZWwvaS1wb2ludC1tb3ZlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0U2VydmljZSB7XG4gIHB1YmxpYyBzaXplOiBPYnNlcnZhYmxlPERPTVJlY3Q+O1xuICBwdWJsaWMgcG9pbnRlck1vdmU6IE9ic2VydmFibGU8YW55PjtcbiAgcHVibGljIHRvb2x0aXBzOiBPYnNlcnZhYmxlPElEaXNwbGF5VG9vbHRpcD47XG4gIHB1YmxpYyBwbG90YmFuZE1vdmU6IE9ic2VydmFibGU8SUNoYXJ0RXZlbnQ8UGxvdGJhbmQ+PjtcbiAgcHVibGljIHBsb3RsaW5lTW92ZTogT2JzZXJ2YWJsZTxJQ2hhcnRFdmVudDxQbG90TGluZT4+O1xuICBwdWJsaWMgcG9pbnRNb3ZlOiBPYnNlcnZhYmxlPElDaGFydEV2ZW50PElQb2ludE1vdmU+PjtcblxuICBwcml2YXRlIHNpemUkID0gbmV3IFN1YmplY3Q8RE9NUmVjdD4oKTtcbiAgcHJpdmF0ZSBwb2ludGVyTW92ZSQgPSBuZXcgU3ViamVjdDxhbnk+KCk7XG4gIHByaXZhdGUgdG9vbHRpcHMkID0gbmV3IFN1YmplY3Q8SURpc3BsYXlUb29sdGlwPigpO1xuICBwcml2YXRlIHBsb3RiYW5kTW92ZSQgPSBuZXcgU3ViamVjdDxJQ2hhcnRFdmVudDxQbG90YmFuZD4+KCk7XG4gIHByaXZhdGUgcGxvdGxpbmVNb3ZlJCA9IG5ldyBTdWJqZWN0PElDaGFydEV2ZW50PFBsb3RMaW5lPj4oKTtcbiAgcHJpdmF0ZSBwb2ludE1vdmUkID0gbmV3IFN1YmplY3Q8SUNoYXJ0RXZlbnQ8SVBvaW50TW92ZT4+KCk7XG5cbiAgcHJpdmF0ZSBfY29uZmlnOiBJQ2hhcnRDb25maWc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBheGVzU2VydmljZTogQXhlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBzY2FsZVNlcnZpY2U6IFNjYWxlU2VydmljZVxuICApIHtcbiAgICB0aGlzLnNpemUgPSB0aGlzLnNpemUkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIHRoaXMucG9pbnRlck1vdmUgPSB0aGlzLnBvaW50ZXJNb3ZlJC5hc09ic2VydmFibGUoKTtcbiAgICB0aGlzLnRvb2x0aXBzID0gdGhpcy50b29sdGlwcyQuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5wbG90YmFuZE1vdmUgPSB0aGlzLnBsb3RiYW5kTW92ZSQuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5wbG90bGluZU1vdmUgPSB0aGlzLnBsb3RsaW5lTW92ZSQuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5wb2ludE1vdmUgPSB0aGlzLnBvaW50TW92ZSQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgICB0aGlzLnNpemVcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHNpemUpID0+IHtcbiAgICAgICAgICB0aGlzLnNjYWxlU2VydmljZS5jcmVhdGVTY2FsZXMoc2l6ZSwgdGhpcy5fY29uZmlnKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0KGNvbmZpZzogSUNoYXJ0Q29uZmlnKSB7XG4gICAgdGhpcy5fY29uZmlnID0gY29uZmlnO1xuXG4gICAgaWYgKGNvbmZpZy5pbnZlcnRlZCkge1xuICAgICAgdGhpcy5fY29uZmlnLnNlcmllcyA9IHRoaXMuX2NvbmZpZz8uc2VyaWVzPy5tYXAoKHNlcmllKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uc2VyaWUsXG4gICAgICAgICAgZGF0YTogc2VyaWU/LmRhdGE/Lm1hcCgocG9pbnQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIC4uLnBvaW50LFxuICAgICAgICAgICAgICB4OiBwb2ludD8ueSxcbiAgICAgICAgICAgICAgeTogcG9pbnQ/LngsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0pLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5heGVzU2VydmljZS5pbml0KHRoaXMuX2NvbmZpZyk7XG4gIH1cblxuICBwdWJsaWMgc2V0U2l6ZShzaXplOiBET01SZWN0KSB7XG4gICAgdGhpcy5zaXplJC5uZXh0KHNpemUpO1xuICB9XG5cbiAgcHVibGljIHNldFBvaW50ZXJNb3ZlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnBvaW50ZXJNb3ZlJC5uZXh0KHsgZXZlbnQgfSk7XG4gIH1cblxuICBwdWJsaWMgc2V0VG9vbHRpcCh0b29sdGlwOiBJRGlzcGxheVRvb2x0aXApIHtcbiAgICB0aGlzLnRvb2x0aXBzJC5uZXh0KHRvb2x0aXApO1xuICB9XG5cbiAgcHVibGljIGVtaXRQbG90YmFuZChldmVudDogSUNoYXJ0RXZlbnQ8UGxvdGJhbmQ+KSB7XG4gICAgdGhpcy5wbG90YmFuZE1vdmUkLm5leHQoZXZlbnQpO1xuICB9XG5cbiAgcHVibGljIGVtaXRQbG90bGluZShldmVudDogSUNoYXJ0RXZlbnQ8UGxvdExpbmU+KSB7XG4gICAgdGhpcy5wbG90bGluZU1vdmUkLm5leHQoZXZlbnQpO1xuICB9XG5cbiAgcHVibGljIGVtaXRQb2ludChldmVudDogSUNoYXJ0RXZlbnQ8SVBvaW50TW92ZT4pIHtcbiAgICB0aGlzLnBvaW50TW92ZSQubmV4dChldmVudCk7XG4gIH1cblxuICBnZXQgY29uZmlnKCk6IElDaGFydENvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZztcbiAgfVxufVxuIl19