@elliemae/ds-dataviz 3.9.0 → 3.10.0-next.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 (157) hide show
  1. package/dist/cjs/graphs/Chart/Chart.js +1 -4
  2. package/dist/cjs/graphs/Chart/Chart.js.map +2 -2
  3. package/dist/cjs/graphs/Chart/ChartContext.js +1 -4
  4. package/dist/cjs/graphs/Chart/ChartContext.js.map +2 -2
  5. package/dist/cjs/graphs/Chart/config/useChart.js +26 -22
  6. package/dist/cjs/graphs/Chart/config/useChart.js.map +2 -2
  7. package/dist/cjs/graphs/Chart/config/useGetters.js +90 -0
  8. package/dist/cjs/graphs/Chart/config/useGetters.js.map +7 -0
  9. package/dist/cjs/graphs/Chart/config/useInternalMargins.js +1 -1
  10. package/dist/cjs/graphs/Chart/config/useInternalMargins.js.map +1 -1
  11. package/dist/cjs/graphs/Chart/config/useKeyboardNavigation.js +42 -13
  12. package/dist/cjs/graphs/Chart/config/useKeyboardNavigation.js.map +2 -2
  13. package/dist/cjs/graphs/Chart/config/useScales.js +67 -41
  14. package/dist/cjs/graphs/Chart/config/useScales.js.map +2 -2
  15. package/dist/cjs/graphs/Chart/helpers/colorPallet.js +1 -1
  16. package/dist/cjs/graphs/Chart/helpers/colorPallet.js.map +1 -1
  17. package/dist/cjs/graphs/Chart/helpers/index.js +4 -4
  18. package/dist/cjs/graphs/Chart/helpers/index.js.map +2 -2
  19. package/dist/cjs/graphs/Chart/helpers/useUniqueData.js +124 -0
  20. package/dist/cjs/graphs/Chart/helpers/useUniqueData.js.map +7 -0
  21. package/dist/cjs/graphs/Chart/helpers/useVirtualizedSeries.js +42 -11
  22. package/dist/cjs/graphs/Chart/helpers/useVirtualizedSeries.js.map +2 -2
  23. package/dist/cjs/graphs/Chart/parts/Axis/Axes.js +13 -2
  24. package/dist/cjs/graphs/Chart/parts/Axis/Axes.js.map +2 -2
  25. package/dist/cjs/graphs/Chart/parts/Axis/AxisBottom.js +72 -23
  26. package/dist/cjs/graphs/Chart/parts/Axis/AxisBottom.js.map +2 -2
  27. package/dist/cjs/graphs/Chart/parts/Axis/AxisLeft.js +36 -16
  28. package/dist/cjs/graphs/Chart/parts/Axis/AxisLeft.js.map +2 -2
  29. package/dist/cjs/graphs/Chart/parts/Axis/AxisRight.js +10 -8
  30. package/dist/cjs/graphs/Chart/parts/Axis/AxisRight.js.map +2 -2
  31. package/dist/cjs/graphs/Chart/parts/ChartContainer.js +60 -60
  32. package/dist/cjs/graphs/Chart/parts/ChartContainer.js.map +2 -2
  33. package/dist/cjs/graphs/Chart/parts/ClipPaths.js +85 -0
  34. package/dist/cjs/graphs/Chart/parts/ClipPaths.js.map +7 -0
  35. package/dist/cjs/graphs/Chart/parts/Labels/BottomLabel.js +2 -2
  36. package/dist/cjs/graphs/Chart/parts/Labels/BottomLabel.js.map +2 -2
  37. package/dist/cjs/graphs/Chart/parts/Labels/LeftLabel.js +7 -14
  38. package/dist/cjs/graphs/Chart/parts/Labels/LeftLabel.js.map +2 -2
  39. package/dist/cjs/graphs/Chart/parts/Legend/BottomLegend.js +4 -4
  40. package/dist/cjs/graphs/Chart/parts/Legend/BottomLegend.js.map +2 -2
  41. package/dist/cjs/graphs/Chart/parts/Legend/LegendItem.js +1 -1
  42. package/dist/cjs/graphs/Chart/parts/Legend/LegendItem.js.map +2 -2
  43. package/dist/cjs/graphs/Chart/parts/Scrapper/ScrapperLine.js +6 -2
  44. package/dist/cjs/graphs/Chart/parts/Scrapper/ScrapperLine.js.map +2 -2
  45. package/dist/cjs/graphs/Chart/parts/Scrapper/VerticalScrapper.js +2 -77
  46. package/dist/cjs/graphs/Chart/parts/Scrapper/VerticalScrapper.js.map +2 -2
  47. package/dist/cjs/graphs/Chart/parts/Scrapper/VerticalScrapperLine.js +3 -3
  48. package/dist/cjs/graphs/Chart/parts/Scrapper/VerticalScrapperLine.js.map +3 -3
  49. package/dist/cjs/graphs/Chart/parts/Scroller/BlurMask.js +112 -0
  50. package/dist/cjs/graphs/Chart/parts/Scroller/BlurMask.js.map +7 -0
  51. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollBarX.js +4 -7
  52. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollBarX.js.map +2 -2
  53. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollBarY.js +114 -0
  54. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollBarY.js.map +7 -0
  55. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollableContainerX.js +14 -29
  56. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollableContainerX.js.map +2 -2
  57. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollableContainerY.js +84 -0
  58. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollableContainerY.js.map +7 -0
  59. package/dist/cjs/graphs/Chart/parts/SeriesFactory.js +4 -9
  60. package/dist/cjs/graphs/Chart/parts/SeriesFactory.js.map +2 -2
  61. package/dist/cjs/graphs/Chart/react-desc-prop-types.js.map +2 -2
  62. package/dist/cjs/graphs/Chart/series/Area.js +1 -3
  63. package/dist/cjs/graphs/Chart/series/Area.js.map +2 -2
  64. package/dist/cjs/graphs/Chart/series/Bars.js.map +2 -2
  65. package/dist/cjs/graphs/Chart/series/HorizontalBars.js +4 -24
  66. package/dist/cjs/graphs/Chart/series/HorizontalBars.js.map +2 -2
  67. package/dist/cjs/graphs/Chart/series/HorizontalStackedBars.js +2 -2
  68. package/dist/cjs/graphs/Chart/series/HorizontalStackedBars.js.map +2 -2
  69. package/dist/cjs/graphs/Chart/series/StackedBar.js +3 -2
  70. package/dist/cjs/graphs/Chart/series/StackedBar.js.map +2 -2
  71. package/dist/cjs/graphs/Chart/styles.js +12 -11
  72. package/dist/cjs/graphs/Chart/styles.js.map +2 -2
  73. package/dist/cjs/graphs/constants.js +6 -5
  74. package/dist/cjs/graphs/constants.js.map +2 -2
  75. package/dist/esm/graphs/Chart/Chart.js +1 -4
  76. package/dist/esm/graphs/Chart/Chart.js.map +2 -2
  77. package/dist/esm/graphs/Chart/ChartContext.js +1 -4
  78. package/dist/esm/graphs/Chart/ChartContext.js.map +2 -2
  79. package/dist/esm/graphs/Chart/config/useChart.js +27 -23
  80. package/dist/esm/graphs/Chart/config/useChart.js.map +2 -2
  81. package/dist/esm/graphs/Chart/config/useGetters.js +64 -0
  82. package/dist/esm/graphs/Chart/config/useGetters.js.map +7 -0
  83. package/dist/esm/graphs/Chart/config/useInternalMargins.js +1 -1
  84. package/dist/esm/graphs/Chart/config/useInternalMargins.js.map +1 -1
  85. package/dist/esm/graphs/Chart/config/useKeyboardNavigation.js +42 -13
  86. package/dist/esm/graphs/Chart/config/useKeyboardNavigation.js.map +2 -2
  87. package/dist/esm/graphs/Chart/config/useScales.js +67 -41
  88. package/dist/esm/graphs/Chart/config/useScales.js.map +2 -2
  89. package/dist/esm/graphs/Chart/helpers/colorPallet.js +1 -1
  90. package/dist/esm/graphs/Chart/helpers/colorPallet.js.map +1 -1
  91. package/dist/esm/graphs/Chart/helpers/index.js +4 -4
  92. package/dist/esm/graphs/Chart/helpers/index.js.map +2 -2
  93. package/dist/esm/graphs/Chart/helpers/useUniqueData.js +98 -0
  94. package/dist/esm/graphs/Chart/helpers/useUniqueData.js.map +7 -0
  95. package/dist/esm/graphs/Chart/helpers/useVirtualizedSeries.js +42 -11
  96. package/dist/esm/graphs/Chart/helpers/useVirtualizedSeries.js.map +2 -2
  97. package/dist/esm/graphs/Chart/parts/Axis/Axes.js +13 -2
  98. package/dist/esm/graphs/Chart/parts/Axis/Axes.js.map +2 -2
  99. package/dist/esm/graphs/Chart/parts/Axis/AxisBottom.js +72 -23
  100. package/dist/esm/graphs/Chart/parts/Axis/AxisBottom.js.map +2 -2
  101. package/dist/esm/graphs/Chart/parts/Axis/AxisLeft.js +36 -16
  102. package/dist/esm/graphs/Chart/parts/Axis/AxisLeft.js.map +2 -2
  103. package/dist/esm/graphs/Chart/parts/Axis/AxisRight.js +10 -8
  104. package/dist/esm/graphs/Chart/parts/Axis/AxisRight.js.map +2 -2
  105. package/dist/esm/graphs/Chart/parts/ChartContainer.js +60 -60
  106. package/dist/esm/graphs/Chart/parts/ChartContainer.js.map +2 -2
  107. package/dist/esm/graphs/Chart/parts/ClipPaths.js +59 -0
  108. package/dist/esm/graphs/Chart/parts/ClipPaths.js.map +7 -0
  109. package/dist/esm/graphs/Chart/parts/Labels/BottomLabel.js +2 -2
  110. package/dist/esm/graphs/Chart/parts/Labels/BottomLabel.js.map +2 -2
  111. package/dist/esm/graphs/Chart/parts/Labels/LeftLabel.js +8 -15
  112. package/dist/esm/graphs/Chart/parts/Labels/LeftLabel.js.map +2 -2
  113. package/dist/esm/graphs/Chart/parts/Legend/BottomLegend.js +5 -5
  114. package/dist/esm/graphs/Chart/parts/Legend/BottomLegend.js.map +2 -2
  115. package/dist/esm/graphs/Chart/parts/Legend/LegendItem.js +1 -1
  116. package/dist/esm/graphs/Chart/parts/Legend/LegendItem.js.map +2 -2
  117. package/dist/esm/graphs/Chart/parts/Scrapper/ScrapperLine.js +6 -2
  118. package/dist/esm/graphs/Chart/parts/Scrapper/ScrapperLine.js.map +2 -2
  119. package/dist/esm/graphs/Chart/parts/Scrapper/VerticalScrapper.js +3 -78
  120. package/dist/esm/graphs/Chart/parts/Scrapper/VerticalScrapper.js.map +2 -2
  121. package/dist/esm/graphs/Chart/parts/Scrapper/VerticalScrapperLine.js +3 -3
  122. package/dist/esm/graphs/Chart/parts/Scrapper/VerticalScrapperLine.js.map +3 -3
  123. package/dist/esm/graphs/Chart/parts/Scroller/BlurMask.js +86 -0
  124. package/dist/esm/graphs/Chart/parts/Scroller/BlurMask.js.map +7 -0
  125. package/dist/esm/graphs/Chart/parts/Scroller/ScrollBarX.js +4 -7
  126. package/dist/esm/graphs/Chart/parts/Scroller/ScrollBarX.js.map +2 -2
  127. package/dist/esm/graphs/Chart/parts/Scroller/ScrollBarY.js +88 -0
  128. package/dist/esm/graphs/Chart/parts/Scroller/ScrollBarY.js.map +7 -0
  129. package/dist/esm/graphs/Chart/parts/Scroller/ScrollableContainerX.js +14 -29
  130. package/dist/esm/graphs/Chart/parts/Scroller/ScrollableContainerX.js.map +2 -2
  131. package/dist/esm/graphs/Chart/parts/Scroller/ScrollableContainerY.js +58 -0
  132. package/dist/esm/graphs/Chart/parts/Scroller/ScrollableContainerY.js.map +7 -0
  133. package/dist/esm/graphs/Chart/parts/SeriesFactory.js +5 -10
  134. package/dist/esm/graphs/Chart/parts/SeriesFactory.js.map +2 -2
  135. package/dist/esm/graphs/Chart/react-desc-prop-types.js.map +2 -2
  136. package/dist/esm/graphs/Chart/series/Area.js +1 -3
  137. package/dist/esm/graphs/Chart/series/Area.js.map +2 -2
  138. package/dist/esm/graphs/Chart/series/Bars.js.map +2 -2
  139. package/dist/esm/graphs/Chart/series/HorizontalBars.js +4 -24
  140. package/dist/esm/graphs/Chart/series/HorizontalBars.js.map +2 -2
  141. package/dist/esm/graphs/Chart/series/HorizontalStackedBars.js +2 -2
  142. package/dist/esm/graphs/Chart/series/HorizontalStackedBars.js.map +2 -2
  143. package/dist/esm/graphs/Chart/series/StackedBar.js +3 -2
  144. package/dist/esm/graphs/Chart/series/StackedBar.js.map +2 -2
  145. package/dist/esm/graphs/Chart/styles.js +13 -12
  146. package/dist/esm/graphs/Chart/styles.js.map +2 -2
  147. package/dist/esm/graphs/constants.js +7 -6
  148. package/dist/esm/graphs/constants.js.map +2 -2
  149. package/package.json +8 -8
  150. package/dist/cjs/graphs/Chart/Pie.js +0 -49
  151. package/dist/cjs/graphs/Chart/Pie.js.map +0 -7
  152. package/dist/cjs/graphs/Chart/parts/ActivePoint.js +0 -83
  153. package/dist/cjs/graphs/Chart/parts/ActivePoint.js.map +0 -7
  154. package/dist/esm/graphs/Chart/Pie.js +0 -23
  155. package/dist/esm/graphs/Chart/Pie.js.map +0 -7
  156. package/dist/esm/graphs/Chart/parts/ActivePoint.js +0 -57
  157. package/dist/esm/graphs/Chart/parts/ActivePoint.js.map +0 -7
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var ScrollBarY_exports = {};
26
+ __export(ScrollBarY_exports, {
27
+ ScrollBarY: () => ScrollBarY
28
+ });
29
+ module.exports = __toCommonJS(ScrollBarY_exports);
30
+ var React = __toESM(require("react"));
31
+ var import_jsx_runtime = require("react/jsx-runtime");
32
+ var import_react = require("react");
33
+ var import_ChartContext = require("../../ChartContext");
34
+ const ScrollBarY = () => {
35
+ const {
36
+ setIsGrabbed,
37
+ setStartPosition,
38
+ innerWidth,
39
+ xScrollbarPosition,
40
+ activePoint,
41
+ setXScrollbarPosition,
42
+ innerHeight,
43
+ isGrabbed,
44
+ containerRatio,
45
+ setScrapperPosX,
46
+ setScrapperPosY,
47
+ isScrollbarVisible,
48
+ oldLastPosition
49
+ } = (0, import_react.useContext)(import_ChartContext.ChartContext);
50
+ const barHeight = (0, import_react.useMemo)(() => parseInt(innerHeight / containerRatio, 10), [containerRatio, innerHeight]);
51
+ const handleMouseDown = (0, import_react.useCallback)(
52
+ (e) => {
53
+ setScrapperPosX("");
54
+ setScrapperPosY("");
55
+ setIsGrabbed(true);
56
+ setStartPosition(e.clientY);
57
+ e.preventDefault();
58
+ },
59
+ [setIsGrabbed, setScrapperPosY, setScrapperPosX, setStartPosition]
60
+ );
61
+ const handleMouseEnter = (0, import_react.useCallback)(
62
+ (e) => {
63
+ setScrapperPosX("");
64
+ },
65
+ [setScrapperPosX]
66
+ );
67
+ const handleClickFullBar = (0, import_react.useCallback)(
68
+ (e) => {
69
+ let newPosition = 0;
70
+ const bar = e.target;
71
+ const bounds = bar.getBoundingClientRect();
72
+ const top = e.clientY - bounds.top;
73
+ if (top + barHeight / 2 > innerHeight) {
74
+ newPosition = innerHeight - barHeight;
75
+ } else if (top - barHeight / 2 > 0) {
76
+ newPosition = top - barHeight / 2;
77
+ }
78
+ setXScrollbarPosition(newPosition);
79
+ oldLastPosition.current = newPosition;
80
+ e.preventDefault();
81
+ },
82
+ [barHeight, innerHeight, oldLastPosition, setXScrollbarPosition]
83
+ );
84
+ const isBarVisible = (0, import_react.useMemo)(
85
+ () => (isScrollbarVisible || activePoint) && containerRatio > 1,
86
+ [activePoint, containerRatio, isScrollbarVisible]
87
+ );
88
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", {
89
+ className: "scrollbary",
90
+ transform: "translate(-6,0)",
91
+ style: { visibility: isBarVisible ? "visible" : "hidden" },
92
+ onMouseEnter: handleMouseEnter,
93
+ children: [
94
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("rect", {
95
+ style: { cursor: "pointer" },
96
+ width: "6",
97
+ height: innerHeight,
98
+ fill: "#ebecf0c5",
99
+ onClick: handleClickFullBar
100
+ }),
101
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", {
102
+ transform: `translate(0,${xScrollbarPosition})`,
103
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("rect", {
104
+ style: { cursor: isGrabbed ? "grabbing" : "grab" },
105
+ width: "6",
106
+ height: barHeight,
107
+ fill: "grey",
108
+ onMouseDown: handleMouseDown
109
+ })
110
+ })
111
+ ]
112
+ });
113
+ };
114
+ //# sourceMappingURL=ScrollBarY.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/graphs/Chart/parts/Scroller/ScrollBarY.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useCallback, useMemo } from 'react';\nimport { ChartContext } from '../../ChartContext';\n\nexport const ScrollBarY = () => {\n const {\n setIsGrabbed,\n setStartPosition,\n innerWidth,\n xScrollbarPosition,\n activePoint,\n setXScrollbarPosition,\n innerHeight,\n isGrabbed,\n containerRatio,\n setScrapperPosX,\n setScrapperPosY,\n isScrollbarVisible,\n oldLastPosition,\n } = useContext(ChartContext);\n\n const barHeight = useMemo(() => parseInt(innerHeight / containerRatio, 10), [containerRatio, innerHeight]);\n\n const handleMouseDown = useCallback(\n (e: React.MouseEvent) => {\n setScrapperPosX('');\n setScrapperPosY('');\n setIsGrabbed(true);\n setStartPosition(e.clientY);\n e.preventDefault();\n },\n [setIsGrabbed, setScrapperPosY, setScrapperPosX, setStartPosition],\n );\n\n const handleMouseEnter = useCallback(\n (e: React.MouseEvent) => {\n setScrapperPosX('');\n },\n [setScrapperPosX],\n );\n\n const handleClickFullBar = useCallback(\n (e: React.MouseEvent) => {\n let newPosition = 0;\n const bar = e.target;\n const bounds = bar.getBoundingClientRect();\n const top = e.clientY - bounds.top;\n if (top + barHeight / 2 > innerHeight) {\n newPosition = innerHeight - barHeight;\n } else if (top - barHeight / 2 > 0) {\n newPosition = top - barHeight / 2;\n }\n\n setXScrollbarPosition(newPosition);\n oldLastPosition.current = newPosition;\n e.preventDefault();\n },\n [barHeight, innerHeight, oldLastPosition, setXScrollbarPosition],\n );\n\n const isBarVisible = useMemo(\n () => (isScrollbarVisible || activePoint) && containerRatio > 1,\n [activePoint, containerRatio, isScrollbarVisible],\n );\n\n return (\n <g\n className=\"scrollbary\"\n transform=\"translate(-6,0)\"\n style={{ visibility: isBarVisible ? 'visible' : 'hidden' }}\n onMouseEnter={handleMouseEnter}\n >\n <rect\n style={{ cursor: 'pointer' }}\n width=\"6\"\n height={innerHeight}\n fill=\"#ebecf0c5\"\n onClick={handleClickFullBar}\n />\n <g transform={`translate(0,${xScrollbarPosition})`}>\n <rect\n style={{ cursor: isGrabbed ? 'grabbing' : 'grab' }}\n width=\"6\"\n height={barHeight}\n fill=\"grey\"\n onMouseDown={handleMouseDown}\n />\n </g>\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AAEA,mBAAwD;AACxD,0BAA6B;AAEtB,MAAM,aAAa,MAAM;AAC9B,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAE3B,QAAM,gBAAY,sBAAQ,MAAM,SAAS,cAAc,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,WAAW,CAAC;AAEzG,QAAM,sBAAkB;AAAA,IACtB,CAAC,MAAwB;AACvB,sBAAgB,EAAE;AAClB,sBAAgB,EAAE;AAClB,mBAAa,IAAI;AACjB,uBAAiB,EAAE,OAAO;AAC1B,QAAE,eAAe;AAAA,IACnB;AAAA,IACA,CAAC,cAAc,iBAAiB,iBAAiB,gBAAgB;AAAA,EACnE;AAEA,QAAM,uBAAmB;AAAA,IACvB,CAAC,MAAwB;AACvB,sBAAgB,EAAE;AAAA,IACpB;AAAA,IACA,CAAC,eAAe;AAAA,EAClB;AAEA,QAAM,yBAAqB;AAAA,IACzB,CAAC,MAAwB;AACvB,UAAI,cAAc;AAClB,YAAM,MAAM,EAAE;AACd,YAAM,SAAS,IAAI,sBAAsB;AACzC,YAAM,MAAM,EAAE,UAAU,OAAO;AAC/B,UAAI,MAAM,YAAY,IAAI,aAAa;AACrC,sBAAc,cAAc;AAAA,MAC9B,WAAW,MAAM,YAAY,IAAI,GAAG;AAClC,sBAAc,MAAM,YAAY;AAAA,MAClC;AAEA,4BAAsB,WAAW;AACjC,sBAAgB,UAAU;AAC1B,QAAE,eAAe;AAAA,IACnB;AAAA,IACA,CAAC,WAAW,aAAa,iBAAiB,qBAAqB;AAAA,EACjE;AAEA,QAAM,mBAAe;AAAA,IACnB,OAAO,sBAAsB,gBAAgB,iBAAiB;AAAA,IAC9D,CAAC,aAAa,gBAAgB,kBAAkB;AAAA,EAClD;AAEA,SACE,6CAAC;AAAA,IACC,WAAU;AAAA,IACV,WAAU;AAAA,IACV,OAAO,EAAE,YAAY,eAAe,YAAY,SAAS;AAAA,IACzD,cAAc;AAAA,IAEd;AAAA,kDAAC;AAAA,QACC,OAAO,EAAE,QAAQ,UAAU;AAAA,QAC3B,OAAM;AAAA,QACN,QAAQ;AAAA,QACR,MAAK;AAAA,QACL,SAAS;AAAA,OACX;AAAA,MACA,4CAAC;AAAA,QAAE,WAAW,eAAe;AAAA,QAC3B,sDAAC;AAAA,UACC,OAAO,EAAE,QAAQ,YAAY,aAAa,OAAO;AAAA,UACjD,OAAM;AAAA,UACN,QAAQ;AAAA,UACR,MAAK;AAAA,UACL,aAAa;AAAA,SACf;AAAA,OACF;AAAA;AAAA,GACF;AAEJ;",
6
+ "names": []
7
+ }
@@ -38,48 +38,33 @@ var import_Scrapper = require("../Scrapper/Scrapper");
38
38
  var import_VerticalScrapper = require("../Scrapper/VerticalScrapper");
39
39
  const ScrollableContainerX = () => {
40
40
  const {
41
- props: { scrapper, height },
41
+ props: { scrapper },
42
42
  xScrollbarPosition,
43
43
  containerRatio,
44
- innerHeight,
45
- innerWidth
44
+ chartId
46
45
  } = (0, import_react.useContext)(import_ChartContext.ChartContext);
47
46
  const Scrappers = (0, import_react.useMemo)(() => {
48
47
  if (scrapper?.type === "horizontal")
49
48
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Scrapper.Scrapper, {});
50
- else if (scrapper?.type === "vertical")
49
+ if (scrapper?.type === "vertical")
51
50
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VerticalScrapper.VerticalScrapper, {});
52
51
  return null;
53
52
  }, [scrapper?.type]);
54
53
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", {
55
54
  className: "scrollable-container-x",
56
- clipPath: "url(#myClip)",
57
55
  children: [
58
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", {
59
- transform: `translate(${-xScrollbarPosition * containerRatio},0)`,
60
- children: [
61
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_AxisBottom.AxisBottom, {}),
62
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_SeriesFactory.SeriesFactory, {}),
63
- Scrappers
64
- ]
65
- }),
66
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ScrollBarX.ScrollBarX, {}),
67
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("defs", {
68
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("clipPath", {
69
- id: "myClip",
70
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
71
- d: `M 0 -10
72
- H ${innerWidth}
73
- V ${innerHeight + 2}
74
- L ${innerWidth + 10} ${innerHeight + 2}
75
- L ${innerWidth + 10} ${height}
76
- L -10 ${height}
77
- L -10 ${innerHeight}
78
- L 0 ${innerHeight}
79
- L 0 -10`
80
- })
56
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", {
57
+ mask: `url(#mask-${chartId})`,
58
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", {
59
+ transform: `translate(${-xScrollbarPosition * containerRatio},0)`,
60
+ children: [
61
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_SeriesFactory.SeriesFactory, {}),
62
+ Scrappers,
63
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_AxisBottom.AxisBottom, {})
64
+ ]
81
65
  })
82
- })
66
+ }),
67
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ScrollBarX.ScrollBarX, {})
83
68
  ]
84
69
  });
85
70
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/graphs/Chart/parts/Scroller/ScrollableContainerX.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useMemo } from 'react';\nimport { ChartContext } from '../../ChartContext';\nimport { AxisBottom } from '../Axis/AxisBottom';\nimport { SeriesFactory } from '../SeriesFactory';\nimport { ScrollBarX } from './ScrollBarX';\nimport { Scrapper } from '../Scrapper/Scrapper';\nimport { VerticalScrapper } from '../Scrapper/VerticalScrapper';\nexport const ScrollableContainerX = () => {\n const {\n props: { scrapper, height },\n xScrollbarPosition,\n containerRatio,\n innerHeight,\n innerWidth,\n } = useContext(ChartContext);\n\n const Scrappers = useMemo(() => {\n if (scrapper?.type === 'horizontal') return <Scrapper />;\n else if (scrapper?.type === 'vertical') return <VerticalScrapper />;\n return null;\n }, [scrapper?.type]);\n\n return (\n <g className=\"scrollable-container-x\" clipPath=\"url(#myClip)\">\n <g transform={`translate(${-xScrollbarPosition * containerRatio},0)`}>\n <AxisBottom />\n <SeriesFactory />\n {Scrappers}\n </g>\n <ScrollBarX />\n\n <defs>\n <clipPath id=\"myClip\">\n <path\n d={`M 0 -10 \n H ${innerWidth} \n V ${innerHeight + 2} \n L ${innerWidth + 10} ${innerHeight + 2} \n L ${innerWidth + 10} ${height} \n L -10 ${height} \n L -10 ${innerHeight} \n L 0 ${innerHeight} \n L 0 -10`}\n />\n </clipPath>\n </defs>\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AAEA,mBAA2C;AAC3C,0BAA6B;AAC7B,wBAA2B;AAC3B,2BAA8B;AAC9B,wBAA2B;AAC3B,sBAAyB;AACzB,8BAAiC;AAC1B,MAAM,uBAAuB,MAAM;AACxC,QAAM;AAAA,IACJ,OAAO,EAAE,UAAU,OAAO;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAE3B,QAAM,gBAAY,sBAAQ,MAAM;AAC9B,QAAI,UAAU,SAAS;AAAc,aAAO,4CAAC,4BAAS;AAAA,aAC7C,UAAU,SAAS;AAAY,aAAO,4CAAC,4CAAiB;AACjE,WAAO;AAAA,EACT,GAAG,CAAC,UAAU,IAAI,CAAC;AAEnB,SACE,6CAAC;AAAA,IAAE,WAAU;AAAA,IAAyB,UAAS;AAAA,IAC7C;AAAA,mDAAC;AAAA,QAAE,WAAW,aAAa,CAAC,qBAAqB;AAAA,QAC/C;AAAA,sDAAC,gCAAW;AAAA,UACZ,4CAAC,sCAAc;AAAA,UACd;AAAA;AAAA,OACH;AAAA,MACA,4CAAC,gCAAW;AAAA,MAEZ,4CAAC;AAAA,QACC,sDAAC;AAAA,UAAS,IAAG;AAAA,UACX,sDAAC;AAAA,YACC,GAAG;AAAA,gBACC;AAAA,gBACA,cAAc;AAAA,gBACd,aAAa,OAAO,cAAc;AAAA,gBAClC,aAAa,OAAO;AAAA,oBAChB;AAAA,oBACA;AAAA,kBACF;AAAA;AAAA,WAER;AAAA,SACF;AAAA,OACF;AAAA;AAAA,GACF;AAEJ;",
4
+ "sourcesContent": ["/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useMemo } from 'react';\nimport { ChartContext } from '../../ChartContext';\nimport { AxisBottom } from '../Axis/AxisBottom';\nimport { SeriesFactory } from '../SeriesFactory';\nimport { ScrollBarX } from './ScrollBarX';\nimport { Scrapper } from '../Scrapper/Scrapper';\nimport { VerticalScrapper } from '../Scrapper/VerticalScrapper';\nexport const ScrollableContainerX = () => {\n const {\n props: { scrapper },\n xScrollbarPosition,\n containerRatio,\n chartId,\n } = useContext(ChartContext);\n\n const Scrappers = useMemo(() => {\n if (scrapper?.type === 'horizontal') return <Scrapper />;\n if (scrapper?.type === 'vertical') return <VerticalScrapper />;\n return null;\n }, [scrapper?.type]);\n\n return (\n <g className=\"scrollable-container-x\">\n <g mask={`url(#mask-${chartId})`}>\n <g transform={`translate(${-xScrollbarPosition * containerRatio},0)`}>\n <SeriesFactory />\n {Scrappers}\n <AxisBottom />\n </g>\n </g>\n <ScrollBarX />\n {/* <defs>\n <clipPath id={`scroll-clip-x-${chartId}`}>\n <path\n d={`M 0 -10 \n H ${innerWidth} \n V ${innerHeight + 2} \n L ${innerWidth + 10} ${innerHeight + 2} \n L ${innerWidth + 10} ${height} \n L -10 ${height} \n L -10 ${innerHeight} \n L 0 ${innerHeight} \n L 0 -10`}\n />\n </clipPath>\n </defs> */}\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AAEA,mBAA2C;AAC3C,0BAA6B;AAC7B,wBAA2B;AAC3B,2BAA8B;AAC9B,wBAA2B;AAC3B,sBAAyB;AACzB,8BAAiC;AAC1B,MAAM,uBAAuB,MAAM;AACxC,QAAM;AAAA,IACJ,OAAO,EAAE,SAAS;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAE3B,QAAM,gBAAY,sBAAQ,MAAM;AAC9B,QAAI,UAAU,SAAS;AAAc,aAAO,4CAAC,4BAAS;AACtD,QAAI,UAAU,SAAS;AAAY,aAAO,4CAAC,4CAAiB;AAC5D,WAAO;AAAA,EACT,GAAG,CAAC,UAAU,IAAI,CAAC;AAEnB,SACE,6CAAC;AAAA,IAAE,WAAU;AAAA,IACX;AAAA,kDAAC;AAAA,QAAE,MAAM,aAAa;AAAA,QACpB,uDAAC;AAAA,UAAE,WAAW,aAAa,CAAC,qBAAqB;AAAA,UAC/C;AAAA,wDAAC,sCAAc;AAAA,YACd;AAAA,YACD,4CAAC,gCAAW;AAAA;AAAA,SACd;AAAA,OACF;AAAA,MACA,4CAAC,gCAAW;AAAA;AAAA,GAgBd;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var ScrollableContainerY_exports = {};
26
+ __export(ScrollableContainerY_exports, {
27
+ ScrollableContainerY: () => ScrollableContainerY
28
+ });
29
+ module.exports = __toCommonJS(ScrollableContainerY_exports);
30
+ var React = __toESM(require("react"));
31
+ var import_jsx_runtime = require("react/jsx-runtime");
32
+ var import_react = require("react");
33
+ var import_ChartContext = require("../../ChartContext");
34
+ var import_SeriesFactory = require("../SeriesFactory");
35
+ var import_ScrollBarY = require("./ScrollBarY");
36
+ var import_Scrapper = require("../Scrapper/Scrapper");
37
+ var import_VerticalScrapper = require("../Scrapper/VerticalScrapper");
38
+ var import_AxisLeft = require("../Axis/AxisLeft");
39
+ const ScrollableContainerY = () => {
40
+ const {
41
+ props: { scrapper, height, width },
42
+ xScrollbarPosition,
43
+ containerRatio,
44
+ innerHeight,
45
+ innerWidth,
46
+ internalMargin,
47
+ chartId
48
+ } = (0, import_react.useContext)(import_ChartContext.ChartContext);
49
+ const Scrappers = (0, import_react.useMemo)(() => {
50
+ if (scrapper?.type === "horizontal")
51
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Scrapper.Scrapper, {});
52
+ else if (scrapper?.type === "vertical")
53
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VerticalScrapper.VerticalScrapper, {});
54
+ return null;
55
+ }, [scrapper?.type]);
56
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", {
57
+ className: "scrollable-container-x",
58
+ clipPath: `url(#scroll-clip-y-${chartId})`,
59
+ children: [
60
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", {
61
+ transform: `translate(0,${-xScrollbarPosition * containerRatio})`,
62
+ children: [
63
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_AxisLeft.AxisLeft, {}),
64
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_SeriesFactory.SeriesFactory, {}),
65
+ Scrappers
66
+ ]
67
+ }),
68
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ScrollBarY.ScrollBarY, {}),
69
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("defs", {
70
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("clipPath", {
71
+ id: `scroll-clip-y-${chartId}`,
72
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
73
+ d: `M ${-internalMargin.left} 0
74
+ H ${width}
75
+ V ${innerHeight - 1}
76
+ L ${-internalMargin.left} ${innerHeight - 1}
77
+ L ${-internalMargin.left} 0`
78
+ })
79
+ })
80
+ })
81
+ ]
82
+ });
83
+ };
84
+ //# sourceMappingURL=ScrollableContainerY.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/graphs/Chart/parts/Scroller/ScrollableContainerY.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useMemo } from 'react';\nimport { ChartContext } from '../../ChartContext';\nimport { SeriesFactory } from '../SeriesFactory';\nimport { ScrollBarY } from './ScrollBarY';\nimport { Scrapper } from '../Scrapper/Scrapper';\nimport { VerticalScrapper } from '../Scrapper/VerticalScrapper';\nimport { AxisLeft } from '../Axis/AxisLeft';\nexport const ScrollableContainerY = () => {\n const {\n props: { scrapper, height, width },\n xScrollbarPosition,\n containerRatio,\n innerHeight,\n innerWidth,\n internalMargin,\n chartId,\n } = useContext(ChartContext);\n\n const Scrappers = useMemo(() => {\n if (scrapper?.type === 'horizontal') return <Scrapper />;\n else if (scrapper?.type === 'vertical') return <VerticalScrapper />;\n return null;\n }, [scrapper?.type]);\n\n return (\n <g className=\"scrollable-container-x\" clipPath={`url(#scroll-clip-y-${chartId})`}>\n <g transform={`translate(0,${-xScrollbarPosition * containerRatio})`}>\n <AxisLeft />\n <SeriesFactory />\n {Scrappers}\n </g>\n <ScrollBarY />\n\n <defs>\n <clipPath id={`scroll-clip-y-${chartId}`}>\n <path\n d={`M ${-internalMargin.left} 0 \n H ${width} \n V ${innerHeight - 1} \n L ${-internalMargin.left} ${innerHeight - 1}\n L ${-internalMargin.left} 0`}\n />\n </clipPath>\n </defs>\n </g>\n );\n};\n\n// L ${innerWidth + 10} ${innerHeight + 2}\n// L ${innerWidth + 10} ${height}\n// L -10 ${height}\n// L -10 ${innerHeight}\n// L 0 ${innerHeight}\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AAEA,mBAA2C;AAC3C,0BAA6B;AAC7B,2BAA8B;AAC9B,wBAA2B;AAC3B,sBAAyB;AACzB,8BAAiC;AACjC,sBAAyB;AAClB,MAAM,uBAAuB,MAAM;AACxC,QAAM;AAAA,IACJ,OAAO,EAAE,UAAU,QAAQ,MAAM;AAAA,IACjC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAE3B,QAAM,gBAAY,sBAAQ,MAAM;AAC9B,QAAI,UAAU,SAAS;AAAc,aAAO,4CAAC,4BAAS;AAAA,aAC7C,UAAU,SAAS;AAAY,aAAO,4CAAC,4CAAiB;AACjE,WAAO;AAAA,EACT,GAAG,CAAC,UAAU,IAAI,CAAC;AAEnB,SACE,6CAAC;AAAA,IAAE,WAAU;AAAA,IAAyB,UAAU,sBAAsB;AAAA,IACpE;AAAA,mDAAC;AAAA,QAAE,WAAW,eAAe,CAAC,qBAAqB;AAAA,QACjD;AAAA,sDAAC,4BAAS;AAAA,UACV,4CAAC,sCAAc;AAAA,UACd;AAAA;AAAA,OACH;AAAA,MACA,4CAAC,gCAAW;AAAA,MAEZ,4CAAC;AAAA,QACC,sDAAC;AAAA,UAAS,IAAI,iBAAiB;AAAA,UAC7B,sDAAC;AAAA,YACC,GAAG,KAAK,CAAC,eAAe;AAAA,gBACpB;AAAA,gBACA,cAAc;AAAA,gBACd,CAAC,eAAe,QAAQ,cAAc;AAAA,gBACtC,CAAC,eAAe;AAAA,WACtB;AAAA,SACF;AAAA,OACF;AAAA;AAAA,GACF;AAEJ;",
6
+ "names": []
7
+ }
@@ -36,13 +36,8 @@ var import_helpers = require("../helpers");
36
36
  var import_useVirtualizedSeries = require("../helpers/useVirtualizedSeries");
37
37
  const SeriesFactory = () => {
38
38
  const {
39
- props: { xAxis, groups, types },
40
- xScrollbarPosition,
41
- innerWidth,
42
- xScale,
43
- containerRatio,
44
- isHorizontal,
45
- currentData: data
39
+ props: { groups, types },
40
+ isHorizontal
46
41
  } = (0, import_react.useContext)(import_ChartContext.ChartContext);
47
42
  const virtualizedSeries = (0, import_useVirtualizedSeries.useVirtualizedSeries)();
48
43
  return (0, import_react.useMemo)(
@@ -88,10 +83,10 @@ const SeriesFactory = () => {
88
83
  ...serieProps
89
84
  });
90
85
  }
91
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {});
86
+ return null;
92
87
  })
93
88
  }),
94
- [containerRatio, data, groups, innerWidth, isHorizontal, types, xAxis.cols, xScale, xScrollbarPosition]
89
+ [groups, isHorizontal, types, virtualizedSeries]
95
90
  );
96
91
  };
97
92
  //# sourceMappingURL=SeriesFactory.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/graphs/Chart/parts/SeriesFactory.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable complexity */\n/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useMemo } from 'react';\nimport { ChartContext } from '../ChartContext';\nimport { Line, Points, Bars, StackedBar, Area, HorizontalBars, HorizontalStackedBars } from '../series';\nimport { getStackedIndex } from '../helpers';\nimport { useVirtualizedSeries } from '../helpers/useVirtualizedSeries';\n\nexport const SeriesFactory = () => {\n const {\n props: { xAxis, groups, types },\n xScrollbarPosition,\n innerWidth,\n xScale,\n containerRatio,\n isHorizontal,\n currentData: data,\n } = useContext(ChartContext);\n\n const virtualizedSeries = useVirtualizedSeries();\n\n return useMemo(\n () => (\n <g className=\"content\">\n {\n virtualizedSeries.map((serie) => {\n const serieProps = {\n key: serie.key,\n serie,\n };\n if (serie.type === 'bar' && groups && getStackedIndex(groups, serie.name) > -1 && isHorizontal) {\n return <HorizontalStackedBars {...serieProps} />;\n }\n if (serie.type === 'bar' && groups && getStackedIndex(groups, serie.name) > -1) {\n return <StackedBar {...serieProps} />;\n }\n if (serie.type === 'bar' && isHorizontal) {\n return <HorizontalBars {...serieProps} />;\n }\n if (serie.type === 'bar') {\n return <Bars {...serieProps} />;\n }\n if ((types === 'scatter' && !serie.type) || serie.type === 'point') {\n return <Points {...serieProps} />;\n }\n if (serie.type === 'line') {\n return <Line {...serieProps} />;\n }\n if (serie.type === 'area') {\n return <Area {...serieProps} />;\n }\n return <></>;\n }) as JSX.Element[]\n }\n </g>\n ),\n [containerRatio, data, groups, innerWidth, isHorizontal, types, xAxis.cols, xScale, xScrollbarPosition],\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AAGA,mBAA2C;AAC3C,0BAA6B;AAC7B,oBAA4F;AAC5F,qBAAgC;AAChC,kCAAqC;AAE9B,MAAM,gBAAgB,MAAM;AACjC,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO,QAAQ,MAAM;AAAA,IAC9B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAa;AAAA,EACf,QAAI,yBAAW,gCAAY;AAE3B,QAAM,wBAAoB,kDAAqB;AAE/C,aAAO;AAAA,IACL,MACE,4CAAC;AAAA,MAAE,WAAU;AAAA,MAET,4BAAkB,IAAI,CAAC,UAAU;AAC/B,cAAM,aAAa;AAAA,UACjB,KAAK,MAAM;AAAA,UACX;AAAA,QACF;AACA,YAAI,MAAM,SAAS,SAAS,cAAU,gCAAgB,QAAQ,MAAM,IAAI,IAAI,MAAM,cAAc;AAC9F,iBAAO,4CAAC;AAAA,YAAuB,GAAG;AAAA,WAAY;AAAA,QAChD;AACA,YAAI,MAAM,SAAS,SAAS,cAAU,gCAAgB,QAAQ,MAAM,IAAI,IAAI,IAAI;AAC9E,iBAAO,4CAAC;AAAA,YAAY,GAAG;AAAA,WAAY;AAAA,QACrC;AACA,YAAI,MAAM,SAAS,SAAS,cAAc;AACxC,iBAAO,4CAAC;AAAA,YAAgB,GAAG;AAAA,WAAY;AAAA,QACzC;AACA,YAAI,MAAM,SAAS,OAAO;AACxB,iBAAO,4CAAC;AAAA,YAAM,GAAG;AAAA,WAAY;AAAA,QAC/B;AACA,YAAK,UAAU,aAAa,CAAC,MAAM,QAAS,MAAM,SAAS,SAAS;AAClE,iBAAO,4CAAC;AAAA,YAAQ,GAAG;AAAA,WAAY;AAAA,QACjC;AACA,YAAI,MAAM,SAAS,QAAQ;AACzB,iBAAO,4CAAC;AAAA,YAAM,GAAG;AAAA,WAAY;AAAA,QAC/B;AACA,YAAI,MAAM,SAAS,QAAQ;AACzB,iBAAO,4CAAC;AAAA,YAAM,GAAG;AAAA,WAAY;AAAA,QAC/B;AACA,eAAO,2EAAE;AAAA,MACX,CAAC;AAAA,KAEL;AAAA,IAEF,CAAC,gBAAgB,MAAM,QAAQ,YAAY,cAAc,OAAO,MAAM,MAAM,QAAQ,kBAAkB;AAAA,EACxG;AACF;",
4
+ "sourcesContent": ["/* eslint-disable complexity */\n/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useMemo } from 'react';\nimport { ChartContext } from '../ChartContext';\nimport { Line, Points, Bars, StackedBar, Area, HorizontalBars, HorizontalStackedBars } from '../series';\nimport { getStackedIndex } from '../helpers';\nimport { useVirtualizedSeries } from '../helpers/useVirtualizedSeries';\n\nexport const SeriesFactory = () => {\n const {\n props: { groups, types },\n isHorizontal,\n } = useContext(ChartContext);\n\n const virtualizedSeries = useVirtualizedSeries();\n return useMemo(\n () => (\n <g className=\"content\">\n {/* <g className=\"content\"> */}\n {virtualizedSeries.map((serie) => {\n const serieProps = {\n key: serie.key,\n serie,\n };\n if (serie.type === 'bar' && groups && getStackedIndex(groups, serie.name) > -1 && isHorizontal) {\n return <HorizontalStackedBars {...serieProps} />;\n }\n if (serie.type === 'bar' && groups && getStackedIndex(groups, serie.name) > -1) {\n return <StackedBar {...serieProps} />;\n }\n if (serie.type === 'bar' && isHorizontal) {\n return <HorizontalBars {...serieProps} />;\n }\n if (serie.type === 'bar') {\n return <Bars {...serieProps} />;\n }\n if ((types === 'scatter' && !serie.type) || serie.type === 'point') {\n return <Points {...serieProps} />;\n }\n if (serie.type === 'line') {\n return <Line {...serieProps} />;\n }\n if (serie.type === 'area') {\n return <Area {...serieProps} />;\n }\n return null;\n })}\n </g>\n ),\n [groups, isHorizontal, types, virtualizedSeries],\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AAGA,mBAA2C;AAC3C,0BAA6B;AAC7B,oBAA4F;AAC5F,qBAAgC;AAChC,kCAAqC;AAE9B,MAAM,gBAAgB,MAAM;AACjC,QAAM;AAAA,IACJ,OAAO,EAAE,QAAQ,MAAM;AAAA,IACvB;AAAA,EACF,QAAI,yBAAW,gCAAY;AAE3B,QAAM,wBAAoB,kDAAqB;AAC/C,aAAO;AAAA,IACL,MACE,4CAAC;AAAA,MAAE,WAAU;AAAA,MAEV,4BAAkB,IAAI,CAAC,UAAU;AAChC,cAAM,aAAa;AAAA,UACjB,KAAK,MAAM;AAAA,UACX;AAAA,QACF;AACA,YAAI,MAAM,SAAS,SAAS,cAAU,gCAAgB,QAAQ,MAAM,IAAI,IAAI,MAAM,cAAc;AAC9F,iBAAO,4CAAC;AAAA,YAAuB,GAAG;AAAA,WAAY;AAAA,QAChD;AACA,YAAI,MAAM,SAAS,SAAS,cAAU,gCAAgB,QAAQ,MAAM,IAAI,IAAI,IAAI;AAC9E,iBAAO,4CAAC;AAAA,YAAY,GAAG;AAAA,WAAY;AAAA,QACrC;AACA,YAAI,MAAM,SAAS,SAAS,cAAc;AACxC,iBAAO,4CAAC;AAAA,YAAgB,GAAG;AAAA,WAAY;AAAA,QACzC;AACA,YAAI,MAAM,SAAS,OAAO;AACxB,iBAAO,4CAAC;AAAA,YAAM,GAAG;AAAA,WAAY;AAAA,QAC/B;AACA,YAAK,UAAU,aAAa,CAAC,MAAM,QAAS,MAAM,SAAS,SAAS;AAClE,iBAAO,4CAAC;AAAA,YAAQ,GAAG;AAAA,WAAY;AAAA,QACjC;AACA,YAAI,MAAM,SAAS,QAAQ;AACzB,iBAAO,4CAAC;AAAA,YAAM,GAAG;AAAA,WAAY;AAAA,QAC/B;AACA,YAAI,MAAM,SAAS,QAAQ;AACzB,iBAAO,4CAAC;AAAA,YAAM,GAAG;AAAA,WAAY;AAAA,QAC/B;AACA,eAAO;AAAA,MACT,CAAC;AAAA,KACH;AAAA,IAEF,CAAC,QAAQ,cAAc,OAAO,iBAAiB;AAAA,EACjD;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/graphs/Chart/react-desc-prop-types.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import { globalAttributesPropTypes, PropTypes } from '@elliemae/ds-utilities';\n\nexport declare namespace DSChartT {\n export type SerieTypeT = 'line' | 'bar' | 'stackedBar' | 'spline';\n export type AxisTypeT = 'log' | 'band' | 'time' | 'linear';\n\n export interface SeriesT {\n name: string;\n data: Array<number | null | { x: number; y: number }>;\n type: SerieTypeT;\n scale?: string;\n color: string;\n // line\n dashStyle: string;\n pointRadius: number;\n }\n\n export interface AxisT {\n showGrid: boolean;\n color: string;\n type: AxisTypeT;\n cols?: number[] | string[] | Date[];\n domainPadding: number;\n hideAxis: boolean;\n beginAtZero?: boolean;\n tickValues: number[] | string[] | Date[];\n tickFormat: () => void | string;\n tickCount: number;\n overwriteTicks: boolean;\n }\n\n export interface InternalData {\n key: string;\n group: string;\n type: DSChartT.SerieTypeT;\n scale?: string;\n color: string;\n values: {\n key: string;\n value: number;\n position: number;\n serie: string;\n }[];\n }\n\n export interface OptionalProps {\n y2Axis?: AxisT;\n groups?: string[][];\n types?: 'scatter';\n }\n\n export interface DefaultProps {}\n\n export interface RequiredProps {\n series: SeriesT[];\n height: number;\n width: number;\n yAxis: AxisT;\n xAxis: AxisT;\n }\n\n export interface Props extends OptionalProps, DefaultProps, RequiredProps {}\n}\n\nexport const defaultProps: DSChartT.DefaultProps = {};\n\nexport const propTypes = {\n ...globalAttributesPropTypes,\n height: PropTypes.number.isRequired.description('height').defaultValue(''),\n width: PropTypes.number.isRequired.description('height').defaultValue(''),\n margin: PropTypes.shape({\n top: PropTypes.number,\n bottom: PropTypes.number,\n left: PropTypes.number,\n right: PropTypes.number,\n })\n .isRequired.description('margin')\n .defaultValue(''),\n series: PropTypes.arrayOf(PropTypes.object).description('yValue').defaultValue(''),\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,0BAAqD;AAgE9C,MAAM,eAAsC,CAAC;AAE7C,MAAM,YAAY;AAAA,EACvB,GAAG;AAAA,EACH,QAAQ,8BAAU,OAAO,WAAW,YAAY,QAAQ,EAAE,aAAa,EAAE;AAAA,EACzE,OAAO,8BAAU,OAAO,WAAW,YAAY,QAAQ,EAAE,aAAa,EAAE;AAAA,EACxE,QAAQ,8BAAU,MAAM;AAAA,IACtB,KAAK,8BAAU;AAAA,IACf,QAAQ,8BAAU;AAAA,IAClB,MAAM,8BAAU;AAAA,IAChB,OAAO,8BAAU;AAAA,EACnB,CAAC,EACE,WAAW,YAAY,QAAQ,EAC/B,aAAa,EAAE;AAAA,EAClB,QAAQ,8BAAU,QAAQ,8BAAU,MAAM,EAAE,YAAY,QAAQ,EAAE,aAAa,EAAE;AACnF;",
4
+ "sourcesContent": ["import { globalAttributesPropTypes, PropTypes } from '@elliemae/ds-utilities';\nimport { Series, ScaleLinear, ScaleBand } from 'd3';\nexport declare namespace DSChartT {\n export type SerieTypeT = 'line' | 'bar' | 'area' | 'point';\n export type AxisTypeT = 'log' | 'band' | 'time' | 'linear';\n\n export type LinearScale = ScaleLinear<number, number, never>;\n export type BandScale = ScaleBand<string>;\n\n export type Scales = LinearScale | BandScale;\n export interface SeriesT {\n name: string;\n data: Array<number | null | { x: number; y: number }>;\n type: SerieTypeT;\n scale?: string;\n color?: string;\n // line\n dashStyle?: string;\n pointRadius?: number;\n }\n\n export interface ScrapperT {\n type: 'horizontal' | 'vertical';\n color: string;\n tooltipPreference: string;\n }\n\n export interface SerieComponentT {\n serie: InternalSerie;\n }\n\n export interface AxisTickT {\n tickValues: number[] | Date[];\n tickFormat: () => void | string;\n tickCount: number;\n tickRotation: number;\n overwriteTicks: boolean;\n color: string;\n }\n\n export interface AxisT {\n showGrid: boolean;\n color: string;\n label: string;\n type: AxisTypeT;\n cols?: string[];\n domainPadding: number;\n hideAxis: boolean;\n beginAtZero?: boolean;\n advanced: {\n pointSpacing: {\n type: 'string';\n value: number;\n };\n };\n tick: AxisTickT;\n }\n\n export interface InternalDatum {\n key: string;\n value: number | { x: number; y: number };\n position: number;\n serie: string;\n }\n\n export interface InternalSerie {\n key: string;\n data: InternalDatum[];\n name: string;\n type: DSChartT.SerieTypeT;\n scale?: string | undefined;\n color?: string;\n dashStyle?: string;\n pointRadius?: number;\n }\n\n export type InternalData = InternalSerie[];\n\n export interface OptionalProps {\n y2Axis?: AxisT;\n groups?: string[][];\n types?: 'scatter';\n scrapper: ScrapperT;\n }\n\n export interface DefaultProps {}\n\n export interface RequiredProps {\n series: SeriesT[];\n height: number;\n width: number;\n yAxis: AxisT;\n xAxis: AxisT;\n }\n\n export interface Props extends OptionalProps, DefaultProps, RequiredProps {}\n\n export type StackedSeriesByGroupT = Series<\n {\n [key: string]: number;\n },\n string\n >[][];\n}\n\nexport const defaultProps: DSChartT.DefaultProps = {};\n\nexport const propTypes = {\n ...globalAttributesPropTypes,\n height: PropTypes.number.isRequired.description('height').defaultValue(''),\n width: PropTypes.number.isRequired.description('height').defaultValue(''),\n margin: PropTypes.shape({\n top: PropTypes.number,\n bottom: PropTypes.number,\n left: PropTypes.number,\n right: PropTypes.number,\n })\n .isRequired.description('margin')\n .defaultValue(''),\n series: PropTypes.arrayOf(PropTypes.object).description('yValue').defaultValue(''),\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,0BAAqD;AAyG9C,MAAM,eAAsC,CAAC;AAE7C,MAAM,YAAY;AAAA,EACvB,GAAG;AAAA,EACH,QAAQ,8BAAU,OAAO,WAAW,YAAY,QAAQ,EAAE,aAAa,EAAE;AAAA,EACzE,OAAO,8BAAU,OAAO,WAAW,YAAY,QAAQ,EAAE,aAAa,EAAE;AAAA,EACxE,QAAQ,8BAAU,MAAM;AAAA,IACtB,KAAK,8BAAU;AAAA,IACf,QAAQ,8BAAU;AAAA,IAClB,MAAM,8BAAU;AAAA,IAChB,OAAO,8BAAU;AAAA,EACnB,CAAC,EACE,WAAW,YAAY,QAAQ,EAC/B,aAAa,EAAE;AAAA,EAClB,QAAQ,8BAAU,QAAQ,8BAAU,MAAM,EAAE,YAAY,QAAQ,EAAE,aAAa,EAAE;AACnF;",
6
6
  "names": []
7
7
  }
@@ -58,7 +58,7 @@ const Area = ({ serie }) => {
58
58
  if (serieWithStackedValues) {
59
59
  return (0, import_d3.area)().x((_, i) => {
60
60
  return xScale(typeof serie.data[i]?.value === "number" ? xAxis.cols[i] : serie.data[i]?.value?.x);
61
- }).y0(([y1]) => finalYScale(y1)).y1(([, y2]) => finalYScale(y2)).curve(curveStyle)(serieWithStackedValues);
61
+ }).y0(([y1, y2]) => finalYScale(y2)).y1(([y1, y2]) => finalYScale(y1)).curve(curveStyle)(serieWithStackedValues);
62
62
  }
63
63
  return (0, import_d3.area)().x((d) => xScale(d.value.x ?? xAxis?.cols?.[d.position] ?? d.position)).y0(innerHeight).y1((d) => finalYScale(d.value.y ?? d.value)).curve(curveStyle)(serie.data);
64
64
  }, [stackedData, serie, innerHeight, finalYScale, xScale, xAxis?.cols]);
@@ -75,8 +75,6 @@ const Area = ({ serie }) => {
75
75
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", {
76
76
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", {
77
77
  transform: `translate(${xTranslate}, 0)`,
78
- onMouseEnter: () => setActiveSerie(serie.key),
79
- onMouseLeave: () => setActiveSerie(""),
80
78
  children: [
81
79
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Points.Points, {
82
80
  serie
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/graphs/Chart/series/Area.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import React, { useContext, useMemo } from 'react';\nimport { area, line } from 'd3';\nimport { StyledArea } from '../styles';\nimport { ChartContext } from '../ChartContext';\nimport { getStackedData } from '../helpers';\nimport { Points } from './Points';\nimport { LINE, curveStyleMap } from '../../constants';\n\nexport const Area = ({ serie }) => {\n const {\n props: { xAxis },\n xScale,\n yScale,\n innerHeight,\n y2Scale,\n colorScale,\n activeSerie,\n stackedData,\n setActiveSerie,\n } = useContext(ChartContext);\n\n const finalYScale = serie.scale === 'y2' ? y2Scale : yScale;\n\n const curveStyle = useMemo(\n () => curveStyleMap[serie.curveStyle] ?? curveStyleMap[LINE.CURVE_STYLE.LINEAR],\n [curveStyleMap, serie.curveStyle],\n );\n const areaD3 = useMemo(() => {\n const serieWithStackedValues = getStackedData(stackedData, serie);\n if (serieWithStackedValues) {\n return area()\n .x((_, i) => {\n return xScale(typeof serie.data[i]?.value === 'number' ? xAxis.cols[i] : serie.data[i]?.value?.x);\n })\n .y0(([y1]) => finalYScale(y1))\n .y1(([, y2]) => finalYScale(y2))\n .curve(curveStyle)(serieWithStackedValues);\n }\n return area()\n .x((d) => xScale(d.value.x ?? xAxis?.cols?.[d.position] ?? d.position))\n .y0(innerHeight)\n .y1((d) => finalYScale(d.value.y ?? d.value))\n .curve(curveStyle)(serie.data);\n }, [stackedData, serie, innerHeight, finalYScale, xScale, xAxis?.cols]);\n\n const lineD3 = useMemo(() => {\n const serieWithStackedValues = getStackedData(stackedData, serie);\n if (serieWithStackedValues) {\n return (\n line()\n .x((_, i) => {\n return xScale(typeof serie.data[i]?.value === 'number' ? xAxis.cols[i] : serie.data[i]?.value?.x);\n })\n // .y0(([y1]) => finalYScale(y1))\n .y(([, y2]) => finalYScale(y2))\n .curve(curveStyle)(serieWithStackedValues)\n );\n }\n return (\n line()\n .x((d) => xScale(d.value.x ?? xAxis?.cols?.[d.position] ?? d.position))\n // .y0(innerHeight)\n .y((d) => finalYScale(d.value.y ?? d.value))\n .curve(curveStyle)(serie.data)\n );\n }, [stackedData, serie, curveStyle, xScale, xAxis.cols, finalYScale]);\n\n const xTranslate = (xScale?.bandwidth?.() ?? 0) / 2;\n\n return (\n <g>\n <g\n transform={`translate(${xTranslate}, 0)`}\n onMouseEnter={() => setActiveSerie(serie.key)}\n onMouseLeave={() => setActiveSerie('')}\n >\n <Points serie={serie} />\n <path d={lineD3} fill=\"none\" strokeWidth={2} stroke={colorScale(serie.name)} />\n <StyledArea d={areaD3} isActiveArea={activeSerie === serie.key} fill={colorScale(serie.name)} />\n </g>\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import React, { useContext, useMemo } from 'react';\nimport { area, line } from 'd3';\nimport { StyledArea } from '../styles';\nimport { ChartContext } from '../ChartContext';\nimport { getStackedData } from '../helpers';\nimport { Points } from './Points';\nimport { LINE, curveStyleMap } from '../../constants';\n\nexport const Area = ({ serie }) => {\n const {\n props: { xAxis },\n xScale,\n yScale,\n innerHeight,\n y2Scale,\n colorScale,\n activeSerie,\n stackedData,\n setActiveSerie,\n } = useContext(ChartContext);\n\n const finalYScale = serie.scale === 'y2' ? y2Scale : yScale;\n\n const curveStyle = useMemo(\n () => curveStyleMap[serie.curveStyle] ?? curveStyleMap[LINE.CURVE_STYLE.LINEAR],\n [curveStyleMap, serie.curveStyle],\n );\n const areaD3 = useMemo(() => {\n const serieWithStackedValues = getStackedData(stackedData, serie);\n if (serieWithStackedValues) {\n return area()\n .x((_, i) => {\n return xScale(typeof serie.data[i]?.value === 'number' ? xAxis.cols[i] : serie.data[i]?.value?.x);\n })\n .y0(([y1, y2]) => finalYScale(y2))\n .y1(([y1, y2]) => finalYScale(y1))\n .curve(curveStyle)(serieWithStackedValues);\n }\n return area()\n .x((d) => xScale(d.value.x ?? xAxis?.cols?.[d.position] ?? d.position))\n .y0(innerHeight)\n .y1((d) => finalYScale(d.value.y ?? d.value))\n .curve(curveStyle)(serie.data);\n }, [stackedData, serie, innerHeight, finalYScale, xScale, xAxis?.cols]);\n\n const lineD3 = useMemo(() => {\n const serieWithStackedValues = getStackedData(stackedData, serie);\n if (serieWithStackedValues) {\n return (\n line()\n .x((_, i) => {\n return xScale(typeof serie.data[i]?.value === 'number' ? xAxis.cols[i] : serie.data[i]?.value?.x);\n })\n // .y0(([y1]) => finalYScale(y1))\n .y(([, y2]) => finalYScale(y2))\n .curve(curveStyle)(serieWithStackedValues)\n );\n }\n return (\n line()\n .x((d) => xScale(d.value.x ?? xAxis?.cols?.[d.position] ?? d.position))\n // .y0(innerHeight)\n .y((d) => finalYScale(d.value.y ?? d.value))\n .curve(curveStyle)(serie.data)\n );\n }, [stackedData, serie, curveStyle, xScale, xAxis.cols, finalYScale]);\n\n const xTranslate = (xScale?.bandwidth?.() ?? 0) / 2;\n\n return (\n <g>\n <g transform={`translate(${xTranslate}, 0)`}>\n <Points serie={serie} />\n <path d={lineD3} fill=\"none\" strokeWidth={2} stroke={colorScale(serie.name)} />\n <StyledArea d={areaD3} isActiveArea={activeSerie === serie.key} fill={colorScale(serie.name)} />\n </g>\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/graphs/Chart/series/Bars.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable complexity */\nimport React, { useContext, useMemo } from 'react';\nimport { ScaleBand } from 'd3';\nimport { Rect } from './Rect';\nimport { ChartContext } from '../ChartContext';\nimport { DSChartT } from '../react-desc-prop-types';\nimport { FocusableRegion } from '../parts/FocusableRegion';\ninterface BarsT {\n serie: DSChartT.InternalData;\n}\nexport const Bars = ({ serie }: BarsT) => {\n const {\n props: { yAxis, TooltipRenderer },\n innerHeight,\n xScale,\n yScale,\n y2Scale,\n subGroupScale,\n colorScale,\n getXValue,\n getYValue,\n chartId,\n } = useContext(ChartContext);\n const finalYScale = serie.scale === 'y2' ? y2Scale : yScale;\n\n const negativeSize = innerHeight - finalYScale(0);\n const positiveSize = innerHeight - negativeSize;\n\n return (\n <g fill={colorScale(serie.name)} clipPath={`url(#rect-focus-ring-${chartId})`}>\n {serie.data.map((bar, i) => {\n const x = getXValue(bar);\n const y = getYValue(bar);\n\n const width = subGroupScale?.bandwidth();\n const height = y > 0 ? positiveSize - finalYScale(y) : finalYScale(y) - finalYScale(0);\n\n const transformX = subGroupScale(serie.name) + xScale(x);\n\n // @todo find a way to create bars with linear\n // scale here is something but conflict with bars like {x: 'Monday', y: 10}\n // const transformX = isHorizontal\n // ? 0\n // : subGroupScale(serie.name) + xScale(x) - (bar.value.x ? (width / 2) * subGroupScale.domain().length : 0);\n\n const transformY = y > 0 ? finalYScale(0) - height : finalYScale(0);\n\n return (\n <g id={`${serie.name}-rects`} key={bar.key} transform={`translate(${transformX},0)`}>\n <Rect\n name={serie.name}\n xValue={x}\n yValue={y}\n width={width}\n height={height}\n id={bar.key}\n y={transformY}\n isNegative={y < 0}\n />\n {/* {TooltipRenderer && (\n <FocusableRegion\n transform={`scale(1,-1) translate(0,${-height})`}\n y={-transformY}\n id={bar.key}\n width={width}\n height={height}\n content={<TooltipRenderer data={[{ name: serie.name, yValue: y, xValue: x }]} />}\n />\n )} */}\n </g>\n );\n })}\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,mBAA2C;AAE3C,kBAAqB;AACrB,0BAA6B;AAMtB,MAAM,OAAO,CAAC,EAAE,MAAM,MAAa;AACxC,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO,gBAAgB;AAAA,IAChC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,UAAU;AAErD,QAAM,eAAe,cAAc,YAAY,CAAC;AAChD,QAAM,eAAe,cAAc;AAEnC,SACE,4CAAC;AAAA,IAAE,MAAM,WAAW,MAAM,IAAI;AAAA,IAAG,UAAU,wBAAwB;AAAA,IAChE,gBAAM,KAAK,IAAI,CAAC,KAAK,MAAM;AAC1B,YAAM,IAAI,UAAU,GAAG;AACvB,YAAM,IAAI,UAAU,GAAG;AAEvB,YAAM,QAAQ,eAAe,UAAU;AACvC,YAAM,SAAS,IAAI,IAAI,eAAe,YAAY,CAAC,IAAI,YAAY,CAAC,IAAI,YAAY,CAAC;AAErF,YAAM,aAAa,cAAc,MAAM,IAAI,IAAI,OAAO,CAAC;AAQvD,YAAM,aAAa,IAAI,IAAI,YAAY,CAAC,IAAI,SAAS,YAAY,CAAC;AAElE,aACE,4CAAC;AAAA,QAAE,IAAI,GAAG,MAAM;AAAA,QAA4B,WAAW,aAAa;AAAA,QAClE,sDAAC;AAAA,UACC,MAAM,MAAM;AAAA,UACZ,QAAQ;AAAA,UACR,QAAQ;AAAA,UACR;AAAA,UACA;AAAA,UACA,IAAI,IAAI;AAAA,UACR,GAAG;AAAA,UACH,YAAY,IAAI;AAAA,SAClB;AAAA,SAViC,IAAI,GAqBvC;AAAA,IAEJ,CAAC;AAAA,GACH;AAEJ;",
4
+ "sourcesContent": ["/* eslint-disable complexity */\nimport React, { useContext } from 'react';\nimport { ScaleBand } from 'd3';\nimport { Rect } from './Rect';\nimport { ChartContext } from '../ChartContext';\nimport { DSChartT } from '../react-desc-prop-types';\n\nexport const Bars = ({ serie }) => {\n const {\n props: { yAxis, TooltipRenderer },\n innerHeight,\n xScale,\n yScale,\n y2Scale,\n subGroupScale,\n colorScale,\n getXValue,\n getYValue,\n chartId,\n } = useContext(ChartContext);\n const finalYScale = serie.scale === 'y2' ? y2Scale : yScale;\n\n const negativeSize = innerHeight - finalYScale(0);\n const positiveSize = innerHeight - negativeSize;\n\n return (\n <g fill={colorScale(serie.name)} clipPath={`url(#rect-focus-ring-${chartId})`}>\n {serie.data.map((bar, i) => {\n const x = getXValue(bar);\n const y = getYValue(bar);\n\n const width = subGroupScale?.bandwidth();\n const height = y > 0 ? positiveSize - finalYScale(y) : finalYScale(y) - finalYScale(0);\n\n const transformX = subGroupScale(serie.name) + xScale(x);\n\n // @todo find a way to create bars with linear\n // scale here is something but conflict with bars like {x: 'Monday', y: 10}\n // const transformX = isHorizontal\n // ? 0\n // : subGroupScale(serie.name) + xScale(x) - (bar.value.x ? (width / 2) * subGroupScale.domain().length : 0);\n\n const transformY = y > 0 ? finalYScale(0) - height : finalYScale(0);\n\n return (\n <g id={`${serie.name}-rects`} key={bar.key} transform={`translate(${transformX},0)`}>\n <Rect\n name={serie.name}\n xValue={x}\n yValue={y}\n width={width}\n height={height}\n id={bar.key}\n y={transformY}\n isNegative={y < 0}\n />\n {/* {TooltipRenderer && (\n <FocusableRegion\n transform={`scale(1,-1) translate(0,${-height})`}\n y={-transformY}\n id={bar.key}\n width={width}\n height={height}\n content={<TooltipRenderer data={[{ name: serie.name, yValue: y, xValue: x }]} />}\n />\n )} */}\n </g>\n );\n })}\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,mBAAkC;AAElC,kBAAqB;AACrB,0BAA6B;AAGtB,MAAM,OAAO,CAAC,EAAE,MAAM,MAAM;AACjC,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO,gBAAgB;AAAA,IAChC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,UAAU;AAErD,QAAM,eAAe,cAAc,YAAY,CAAC;AAChD,QAAM,eAAe,cAAc;AAEnC,SACE,4CAAC;AAAA,IAAE,MAAM,WAAW,MAAM,IAAI;AAAA,IAAG,UAAU,wBAAwB;AAAA,IAChE,gBAAM,KAAK,IAAI,CAAC,KAAK,MAAM;AAC1B,YAAM,IAAI,UAAU,GAAG;AACvB,YAAM,IAAI,UAAU,GAAG;AAEvB,YAAM,QAAQ,eAAe,UAAU;AACvC,YAAM,SAAS,IAAI,IAAI,eAAe,YAAY,CAAC,IAAI,YAAY,CAAC,IAAI,YAAY,CAAC;AAErF,YAAM,aAAa,cAAc,MAAM,IAAI,IAAI,OAAO,CAAC;AAQvD,YAAM,aAAa,IAAI,IAAI,YAAY,CAAC,IAAI,SAAS,YAAY,CAAC;AAElE,aACE,4CAAC;AAAA,QAAE,IAAI,GAAG,MAAM;AAAA,QAA4B,WAAW,aAAa;AAAA,QAClE,sDAAC;AAAA,UACC,MAAM,MAAM;AAAA,UACZ,QAAQ;AAAA,UACR,QAAQ;AAAA,UACR;AAAA,UACA;AAAA,UACA,IAAI,IAAI;AAAA,UACR,GAAG;AAAA,UACH,YAAY,IAAI;AAAA,SAClB;AAAA,SAViC,IAAI,GAqBvC;AAAA,IAEJ,CAAC;AAAA,GACH;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -33,17 +33,7 @@ var import_react = require("react");
33
33
  var import_Rect = require("./Rect");
34
34
  var import_ChartContext = require("../ChartContext");
35
35
  const HorizontalBars = ({ serie }) => {
36
- const {
37
- props: { yAxis },
38
- xScale,
39
- yScale,
40
- y2Scale,
41
- subGroupScale,
42
- colorScale,
43
- getXValue,
44
- getYValue,
45
- chartId
46
- } = (0, import_react.useContext)(import_ChartContext.ChartContext);
36
+ const { xScale, yScale, y2Scale, subGroupScale, colorScale, getXValue, getYValue, chartId } = (0, import_react.useContext)(import_ChartContext.ChartContext);
47
37
  const finalYScale = serie.scale === "y2" ? y2Scale : yScale;
48
38
  return (0, import_react.useMemo)(
49
39
  () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", {
@@ -54,10 +44,11 @@ const HorizontalBars = ({ serie }) => {
54
44
  const y = getYValue(bar);
55
45
  const width = xScale(x);
56
46
  const height = subGroupScale?.bandwidth();
57
- const transformY = subGroupScale(serie.name) + finalYScale(yAxis?.cols?.[i] ?? i);
47
+ const transformY = subGroupScale(serie.name) + finalYScale(y);
58
48
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", {
59
49
  transform: `translate(0,${transformY})`,
60
50
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Rect.Rect, {
51
+ name: serie.name,
61
52
  width,
62
53
  height,
63
54
  id: bar.key,
@@ -68,18 +59,7 @@ const HorizontalBars = ({ serie }) => {
68
59
  }, bar.key);
69
60
  })
70
61
  }),
71
- [
72
- chartId,
73
- colorScale,
74
- finalYScale,
75
- getXValue,
76
- getYValue,
77
- serie.data,
78
- serie.name,
79
- subGroupScale,
80
- xScale,
81
- yAxis?.cols
82
- ]
62
+ [chartId, colorScale, finalYScale, getXValue, getYValue, serie.data, serie.name, subGroupScale, xScale]
83
63
  );
84
64
  };
85
65
  //# sourceMappingURL=HorizontalBars.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/graphs/Chart/series/HorizontalBars.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable complexity */\nimport React, { useContext, useMemo } from 'react';\nimport { Rect } from './Rect';\nimport { ChartContext } from '../ChartContext';\nimport { DSChartT } from '../react-desc-prop-types';\ninterface BarsT {\n serie: DSChartT.InternalData;\n}\nexport const HorizontalBars = ({ serie }: BarsT) => {\n const {\n props: { yAxis },\n xScale,\n yScale,\n y2Scale,\n subGroupScale,\n colorScale,\n getXValue,\n getYValue,\n chartId,\n } = useContext(ChartContext);\n const finalYScale = serie.scale === 'y2' ? y2Scale : yScale;\n\n return useMemo(\n () => (\n <g fill={colorScale(serie.name)} clipPath={`url(#rect-focus-ring-${chartId})`}>\n {serie.data.map((bar, i) => {\n const x = getXValue(bar);\n const y = getYValue(bar);\n\n const width = xScale(x);\n const height = subGroupScale?.bandwidth();\n\n const transformY = subGroupScale(serie.name) + finalYScale(yAxis?.cols?.[i] ?? i);\n\n return (\n <g key={bar.key} transform={`translate(0,${transformY})`}>\n <Rect width={width} height={height} id={bar.key} x={0} xValue={x} yValue={y} />\n </g>\n );\n })}\n </g>\n ),\n [\n chartId,\n colorScale,\n finalYScale,\n getXValue,\n getYValue,\n serie.data,\n serie.name,\n subGroupScale,\n xScale,\n yAxis?.cols,\n ],\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,mBAA2C;AAC3C,kBAAqB;AACrB,0BAA6B;AAKtB,MAAM,iBAAiB,CAAC,EAAE,MAAM,MAAa;AAClD,QAAM;AAAA,IACJ,OAAO,EAAE,MAAM;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,UAAU;AAErD,aAAO;AAAA,IACL,MACE,4CAAC;AAAA,MAAE,MAAM,WAAW,MAAM,IAAI;AAAA,MAAG,UAAU,wBAAwB;AAAA,MAChE,gBAAM,KAAK,IAAI,CAAC,KAAK,MAAM;AAC1B,cAAM,IAAI,UAAU,GAAG;AACvB,cAAM,IAAI,UAAU,GAAG;AAEvB,cAAM,QAAQ,OAAO,CAAC;AACtB,cAAM,SAAS,eAAe,UAAU;AAExC,cAAM,aAAa,cAAc,MAAM,IAAI,IAAI,YAAY,OAAO,OAAO,MAAM,CAAC;AAEhF,eACE,4CAAC;AAAA,UAAgB,WAAW,eAAe;AAAA,UACzC,sDAAC;AAAA,YAAK;AAAA,YAAc;AAAA,YAAgB,IAAI,IAAI;AAAA,YAAK,GAAG;AAAA,YAAG,QAAQ;AAAA,YAAG,QAAQ;AAAA,WAAG;AAAA,WADvE,IAAI,GAEZ;AAAA,MAEJ,CAAC;AAAA,KACH;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA;AAAA,MACA,OAAO;AAAA,IACT;AAAA,EACF;AACF;",
4
+ "sourcesContent": ["/* eslint-disable complexity */\nimport React, { useContext, useMemo } from 'react';\nimport { Rect } from './Rect';\nimport { ChartContext } from '../ChartContext';\nimport { DSChartT } from '../react-desc-prop-types';\n\nexport const HorizontalBars = ({ serie }: DSChartT.SerieComponentT) => {\n const { xScale, yScale, y2Scale, subGroupScale, colorScale, getXValue, getYValue, chartId } =\n useContext(ChartContext);\n const finalYScale = serie.scale === 'y2' ? y2Scale : yScale;\n\n return useMemo(\n () => (\n <g fill={colorScale(serie.name)} clipPath={`url(#rect-focus-ring-${chartId})`}>\n {serie.data.map((bar, i) => {\n const x = getXValue(bar);\n const y = getYValue(bar);\n\n const width = xScale(x);\n const height = subGroupScale?.bandwidth();\n\n const transformY = subGroupScale(serie.name) + finalYScale(y);\n\n return (\n <g key={bar.key} transform={`translate(0,${transformY})`}>\n <Rect name={serie.name} width={width} height={height} id={bar.key} x={0} xValue={x} yValue={y} />\n </g>\n );\n })}\n </g>\n ),\n [chartId, colorScale, finalYScale, getXValue, getYValue, serie.data, serie.name, subGroupScale, xScale],\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,mBAA2C;AAC3C,kBAAqB;AACrB,0BAA6B;AAGtB,MAAM,iBAAiB,CAAC,EAAE,MAAM,MAAgC;AACrE,QAAM,EAAE,QAAQ,QAAQ,SAAS,eAAe,YAAY,WAAW,WAAW,QAAQ,QACxF,yBAAW,gCAAY;AACzB,QAAM,cAAc,MAAM,UAAU,OAAO,UAAU;AAErD,aAAO;AAAA,IACL,MACE,4CAAC;AAAA,MAAE,MAAM,WAAW,MAAM,IAAI;AAAA,MAAG,UAAU,wBAAwB;AAAA,MAChE,gBAAM,KAAK,IAAI,CAAC,KAAK,MAAM;AAC1B,cAAM,IAAI,UAAU,GAAG;AACvB,cAAM,IAAI,UAAU,GAAG;AAEvB,cAAM,QAAQ,OAAO,CAAC;AACtB,cAAM,SAAS,eAAe,UAAU;AAExC,cAAM,aAAa,cAAc,MAAM,IAAI,IAAI,YAAY,CAAC;AAE5D,eACE,4CAAC;AAAA,UAAgB,WAAW,eAAe;AAAA,UACzC,sDAAC;AAAA,YAAK,MAAM,MAAM;AAAA,YAAM;AAAA,YAAc;AAAA,YAAgB,IAAI,IAAI;AAAA,YAAK,GAAG;AAAA,YAAG,QAAQ;AAAA,YAAG,QAAQ;AAAA,WAAG;AAAA,WADzF,IAAI,GAEZ;AAAA,MAEJ,CAAC;AAAA,KACH;AAAA,IAEF,CAAC,SAAS,YAAY,aAAa,WAAW,WAAW,MAAM,MAAM,MAAM,MAAM,eAAe,MAAM;AAAA,EACxG;AACF;",
6
6
  "names": []
7
7
  }
@@ -35,7 +35,7 @@ var import_ChartContext = require("../ChartContext");
35
35
  var import_helpers = require("../helpers");
36
36
  const HorizontalStackedBars = ({ serie }) => {
37
37
  const {
38
- props: { yAxis, groups },
38
+ props: { groups },
39
39
  xScale,
40
40
  yScale,
41
41
  stackedData,
@@ -54,7 +54,7 @@ const HorizontalStackedBars = ({ serie }) => {
54
54
  const width = xScale(sequence[1]) - xScale(sequence[0]) - (!isFloorStack ? 1 : 0);
55
55
  const height = subGroupScale?.bandwidth();
56
56
  const transformX = xScale(sequence[0]) + (!isFloorStack ? 1 : 0);
57
- const transformY = subGroupScale(`stacked-data-${stackIndex}`) + yScale(yAxis?.cols?.[i]);
57
+ const transformY = subGroupScale(`stacked-data-${stackIndex}`) + yScale(yValue);
58
58
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", {
59
59
  clipPath: `url(#rect-focus-ring-${chartId})`,
60
60
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/graphs/Chart/series/HorizontalStackedBars.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable complexity */\nimport React, { useContext } from 'react';\n\nimport { Rect } from './Rect';\nimport { ChartContext } from '../ChartContext';\nimport { getStackedData, getStackedIndex } from '../helpers';\n\nexport const HorizontalStackedBars = ({ serie }) => {\n const {\n props: { yAxis, groups },\n xScale,\n yScale,\n stackedData,\n subGroupScale,\n colorScale,\n chartId,\n getYValue,\n } = useContext(ChartContext);\n\n const serieWithStackedValues = getStackedData(stackedData, serie);\n const stackIndex = getStackedIndex(groups, serie.name);\n return (\n <g>\n {serieWithStackedValues.map((sequence, i) => {\n const isFloorStack = sequence[0] === 0;\n const xValue = sequence[1] - sequence[0];\n const yValue = getYValue(serie.data[i]);\n\n const width = xScale(sequence[1]) - xScale(sequence[0]) - (!isFloorStack ? 1 : 0);\n\n const height = subGroupScale?.bandwidth();\n\n const transformX = xScale(sequence[0]) + (!isFloorStack ? 1 : 0);\n const transformY = subGroupScale(`stacked-data-${stackIndex}`) + yScale(yAxis?.cols?.[i]);\n\n return (\n <g key={serie.data[i].key} clipPath={`url(#rect-focus-ring-${chartId})`}>\n <g fill={colorScale(serie.name)} transform={`translate(0, ${transformY})`}>\n <Rect\n width={width}\n height={height}\n x={transformX}\n xValue={xValue}\n yValue={yValue}\n id={serie.data[i].key}\n name={serie.name}\n />\n </g>\n </g>\n );\n })}\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,mBAAkC;AAElC,kBAAqB;AACrB,0BAA6B;AAC7B,qBAAgD;AAEzC,MAAM,wBAAwB,CAAC,EAAE,MAAM,MAAM;AAClD,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO,OAAO;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAE3B,QAAM,6BAAyB,+BAAe,aAAa,KAAK;AAChE,QAAM,iBAAa,gCAAgB,QAAQ,MAAM,IAAI;AACrD,SACE,4CAAC;AAAA,IACE,iCAAuB,IAAI,CAAC,UAAU,MAAM;AAC3C,YAAM,eAAe,SAAS,OAAO;AACrC,YAAM,SAAS,SAAS,KAAK,SAAS;AACtC,YAAM,SAAS,UAAU,MAAM,KAAK,EAAE;AAEtC,YAAM,QAAQ,OAAO,SAAS,EAAE,IAAI,OAAO,SAAS,EAAE,KAAK,CAAC,eAAe,IAAI;AAE/E,YAAM,SAAS,eAAe,UAAU;AAExC,YAAM,aAAa,OAAO,SAAS,EAAE,KAAK,CAAC,eAAe,IAAI;AAC9D,YAAM,aAAa,cAAc,gBAAgB,YAAY,IAAI,OAAO,OAAO,OAAO,EAAE;AAExF,aACE,4CAAC;AAAA,QAA0B,UAAU,wBAAwB;AAAA,QAC3D,sDAAC;AAAA,UAAE,MAAM,WAAW,MAAM,IAAI;AAAA,UAAG,WAAW,gBAAgB;AAAA,UAC1D,sDAAC;AAAA,YACC;AAAA,YACA;AAAA,YACA,GAAG;AAAA,YACH;AAAA,YACA;AAAA,YACA,IAAI,MAAM,KAAK,GAAG;AAAA,YAClB,MAAM,MAAM;AAAA,WACd;AAAA,SACF;AAAA,SAXM,MAAM,KAAK,GAAG,GAYtB;AAAA,IAEJ,CAAC;AAAA,GACH;AAEJ;",
4
+ "sourcesContent": ["/* eslint-disable complexity */\nimport React, { useContext } from 'react';\n\nimport { Rect } from './Rect';\nimport { ChartContext } from '../ChartContext';\nimport { getStackedData, getStackedIndex } from '../helpers';\nimport { DSChartT } from '../react-desc-prop-types';\n\nexport const HorizontalStackedBars = ({ serie }: DSChartT.SerieComponentT) => {\n const {\n props: { groups },\n xScale,\n yScale,\n stackedData,\n subGroupScale,\n colorScale,\n chartId,\n getYValue,\n } = useContext(ChartContext);\n const serieWithStackedValues = getStackedData(stackedData, serie);\n const stackIndex = getStackedIndex(groups, serie.name);\n return (\n <g>\n {serieWithStackedValues.map((sequence, i) => {\n const isFloorStack = sequence[0] === 0;\n const xValue = sequence[1] - sequence[0];\n const yValue = getYValue(serie.data[i]);\n\n const width = xScale(sequence[1]) - xScale(sequence[0]) - (!isFloorStack ? 1 : 0);\n\n const height = subGroupScale?.bandwidth();\n\n const transformX = xScale(sequence[0]) + (!isFloorStack ? 1 : 0);\n const transformY = subGroupScale(`stacked-data-${stackIndex}`) + yScale(yValue);\n\n return (\n <g key={serie.data[i].key} clipPath={`url(#rect-focus-ring-${chartId})`}>\n <g fill={colorScale(serie.name)} transform={`translate(0, ${transformY})`}>\n <Rect\n width={width}\n height={height}\n x={transformX}\n xValue={xValue}\n yValue={yValue}\n id={serie.data[i].key}\n name={serie.name}\n />\n </g>\n </g>\n );\n })}\n </g>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,mBAAkC;AAElC,kBAAqB;AACrB,0BAA6B;AAC7B,qBAAgD;AAGzC,MAAM,wBAAwB,CAAC,EAAE,MAAM,MAAgC;AAC5E,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO;AAAA,IAChB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gCAAY;AAC3B,QAAM,6BAAyB,+BAAe,aAAa,KAAK;AAChE,QAAM,iBAAa,gCAAgB,QAAQ,MAAM,IAAI;AACrD,SACE,4CAAC;AAAA,IACE,iCAAuB,IAAI,CAAC,UAAU,MAAM;AAC3C,YAAM,eAAe,SAAS,OAAO;AACrC,YAAM,SAAS,SAAS,KAAK,SAAS;AACtC,YAAM,SAAS,UAAU,MAAM,KAAK,EAAE;AAEtC,YAAM,QAAQ,OAAO,SAAS,EAAE,IAAI,OAAO,SAAS,EAAE,KAAK,CAAC,eAAe,IAAI;AAE/E,YAAM,SAAS,eAAe,UAAU;AAExC,YAAM,aAAa,OAAO,SAAS,EAAE,KAAK,CAAC,eAAe,IAAI;AAC9D,YAAM,aAAa,cAAc,gBAAgB,YAAY,IAAI,OAAO,MAAM;AAE9E,aACE,4CAAC;AAAA,QAA0B,UAAU,wBAAwB;AAAA,QAC3D,sDAAC;AAAA,UAAE,MAAM,WAAW,MAAM,IAAI;AAAA,UAAG,WAAW,gBAAgB;AAAA,UAC1D,sDAAC;AAAA,YACC;AAAA,YACA;AAAA,YACA,GAAG;AAAA,YACH;AAAA,YACA;AAAA,YACA,IAAI,MAAM,KAAK,GAAG;AAAA,YAClB,MAAM,MAAM;AAAA,WACd;AAAA,SACF;AAAA,SAXM,MAAM,KAAK,GAAG,GAYtB;AAAA,IAEJ,CAAC;AAAA,GACH;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -48,9 +48,10 @@ const StackedBar = ({ serie }) => {
48
48
  const stackIndex = (0, import_helpers.getStackedIndex)(groups, serie.name);
49
49
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", {
50
50
  clipPath: `url(#rect-focus-ring-${chartId})`,
51
- children: serieWithStackedValues.map((sequence, i) => {
51
+ children: serie.data.map((bar, i) => {
52
+ const sequence = serieWithStackedValues[bar.position];
52
53
  const isFloorStack = sequence[0] === 0;
53
- const xValue = getXValue(serie.data[i]);
54
+ const xValue = getXValue(bar);
54
55
  const yValue = sequence[0] - sequence[1];
55
56
  const width = subGroupScale?.bandwidth();
56
57
  const height = yScale(sequence[0]) - yScale(sequence[1]) - (!isFloorStack ? 1 : 0);