@elliemae/ds-dataviz 3.36.0-rc.0 → 3.36.1-next.7

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 (153) hide show
  1. package/dist/cjs/graphs/Chart/SingleStackedBar/SingleStackedBar.js +2 -4
  2. package/dist/cjs/graphs/Chart/SingleStackedBar/SingleStackedBar.js.map +1 -1
  3. package/dist/cjs/graphs/Chart/SingleStackedBar/index.js +0 -1
  4. package/dist/cjs/graphs/Chart/SingleStackedBar/index.js.map +1 -1
  5. package/dist/cjs/graphs/Chart/SingleStackedBar/styles.js.map +1 -1
  6. package/dist/cjs/graphs/Chart/config/useChart.js.map +1 -1
  7. package/dist/cjs/graphs/Chart/config/useGetters.js +15 -30
  8. package/dist/cjs/graphs/Chart/config/useGetters.js.map +1 -1
  9. package/dist/cjs/graphs/Chart/config/useKeyboardNavigation.js +17 -34
  10. package/dist/cjs/graphs/Chart/config/useKeyboardNavigation.js.map +1 -1
  11. package/dist/cjs/graphs/Chart/config/useScales.js +11 -22
  12. package/dist/cjs/graphs/Chart/config/useScales.js.map +1 -1
  13. package/dist/cjs/graphs/Chart/config/useValidateProps.js.map +1 -1
  14. package/dist/cjs/graphs/Chart/helpers/index.js +5 -10
  15. package/dist/cjs/graphs/Chart/helpers/index.js.map +1 -1
  16. package/dist/cjs/graphs/Chart/helpers/useUniqueData.js +3 -6
  17. package/dist/cjs/graphs/Chart/helpers/useUniqueData.js.map +1 -1
  18. package/dist/cjs/graphs/Chart/helpers/useVirtualizedSeries.js +2 -4
  19. package/dist/cjs/graphs/Chart/helpers/useVirtualizedSeries.js.map +1 -1
  20. package/dist/cjs/graphs/Chart/parts/A11yRegion.js +1 -2
  21. package/dist/cjs/graphs/Chart/parts/A11yRegion.js.map +1 -1
  22. package/dist/cjs/graphs/Chart/parts/Axis/Axis.js +1 -2
  23. package/dist/cjs/graphs/Chart/parts/Axis/Axis.js.map +1 -1
  24. package/dist/cjs/graphs/Chart/parts/Axis/AxisBottom.js +6 -12
  25. package/dist/cjs/graphs/Chart/parts/Axis/AxisBottom.js.map +1 -1
  26. package/dist/cjs/graphs/Chart/parts/Axis/AxisLeft.js +5 -10
  27. package/dist/cjs/graphs/Chart/parts/Axis/AxisLeft.js.map +1 -1
  28. package/dist/cjs/graphs/Chart/parts/Axis/AxisRight.js +5 -10
  29. package/dist/cjs/graphs/Chart/parts/Axis/AxisRight.js.map +1 -1
  30. package/dist/cjs/graphs/Chart/parts/Axis/Tick.js.map +1 -1
  31. package/dist/cjs/graphs/Chart/parts/ChartContainer.js +6 -12
  32. package/dist/cjs/graphs/Chart/parts/ChartContainer.js.map +1 -1
  33. package/dist/cjs/graphs/Chart/parts/ClipPaths.js.map +1 -1
  34. package/dist/cjs/graphs/Chart/parts/Labels/Label.js.map +1 -1
  35. package/dist/cjs/graphs/Chart/parts/Legend/BottomLegend.js +1 -2
  36. package/dist/cjs/graphs/Chart/parts/Legend/BottomLegend.js.map +1 -1
  37. package/dist/cjs/graphs/Chart/parts/Legend/LeftLegend.js.map +1 -1
  38. package/dist/cjs/graphs/Chart/parts/Legend/Legend.js +4 -8
  39. package/dist/cjs/graphs/Chart/parts/Legend/Legend.js.map +1 -1
  40. package/dist/cjs/graphs/Chart/parts/Legend/LegendItem.js +3 -6
  41. package/dist/cjs/graphs/Chart/parts/Legend/LegendItem.js.map +1 -1
  42. package/dist/cjs/graphs/Chart/parts/Legend/RightLegend.js.map +1 -1
  43. package/dist/cjs/graphs/Chart/parts/Legend/TopLegend.js.map +1 -1
  44. package/dist/cjs/graphs/Chart/parts/Scrapper/Scrapper.js +1 -2
  45. package/dist/cjs/graphs/Chart/parts/Scrapper/Scrapper.js.map +1 -1
  46. package/dist/cjs/graphs/Chart/parts/Scrapper/ScrapperLine.js +1 -2
  47. package/dist/cjs/graphs/Chart/parts/Scrapper/ScrapperLine.js.map +1 -1
  48. package/dist/cjs/graphs/Chart/parts/Scrapper/VerticalScrapperLine.js +1 -2
  49. package/dist/cjs/graphs/Chart/parts/Scrapper/VerticalScrapperLine.js.map +1 -1
  50. package/dist/cjs/graphs/Chart/parts/Scroller/BlurMask.js +1 -2
  51. package/dist/cjs/graphs/Chart/parts/Scroller/BlurMask.js.map +1 -1
  52. package/dist/cjs/graphs/Chart/parts/Scroller/Controllers.js +2 -4
  53. package/dist/cjs/graphs/Chart/parts/Scroller/Controllers.js.map +1 -1
  54. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollBarX.js.map +1 -1
  55. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollBarY.js.map +1 -1
  56. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollableContainerX.js +7 -14
  57. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollableContainerX.js.map +1 -1
  58. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollableContainerY.js +2 -4
  59. package/dist/cjs/graphs/Chart/parts/Scroller/ScrollableContainerY.js.map +1 -1
  60. package/dist/cjs/graphs/Chart/parts/TrendHighlight.js +1 -2
  61. package/dist/cjs/graphs/Chart/parts/TrendHighlight.js.map +1 -1
  62. package/dist/cjs/graphs/Chart/scales/index.js +13 -26
  63. package/dist/cjs/graphs/Chart/scales/index.js.map +1 -1
  64. package/dist/cjs/graphs/Chart/series/Area.js.map +1 -1
  65. package/dist/cjs/graphs/Chart/series/Bars.js.map +1 -1
  66. package/dist/cjs/graphs/Chart/series/HorizontalBars.js.map +1 -1
  67. package/dist/cjs/graphs/Chart/series/HorizontalStackedBars.js.map +1 -1
  68. package/dist/cjs/graphs/Chart/series/Line.js +1 -2
  69. package/dist/cjs/graphs/Chart/series/Line.js.map +1 -1
  70. package/dist/cjs/graphs/Chart/series/Point.js +2 -4
  71. package/dist/cjs/graphs/Chart/series/Point.js.map +1 -1
  72. package/dist/cjs/graphs/Chart/series/Points.js.map +1 -1
  73. package/dist/cjs/graphs/Chart/series/Rect.js +5 -10
  74. package/dist/cjs/graphs/Chart/series/Rect.js.map +1 -1
  75. package/dist/cjs/graphs/Chart/series/StackedBar.js.map +1 -1
  76. package/dist/cjs/graphs/Chart/styles.js.map +1 -1
  77. package/dist/esm/graphs/Chart/SingleStackedBar/SingleStackedBar.js +2 -4
  78. package/dist/esm/graphs/Chart/SingleStackedBar/SingleStackedBar.js.map +1 -1
  79. package/dist/esm/graphs/Chart/SingleStackedBar/index.js +0 -1
  80. package/dist/esm/graphs/Chart/SingleStackedBar/index.js.map +1 -1
  81. package/dist/esm/graphs/Chart/SingleStackedBar/styles.js.map +1 -1
  82. package/dist/esm/graphs/Chart/config/useChart.js.map +1 -1
  83. package/dist/esm/graphs/Chart/config/useGetters.js +15 -30
  84. package/dist/esm/graphs/Chart/config/useGetters.js.map +1 -1
  85. package/dist/esm/graphs/Chart/config/useKeyboardNavigation.js +17 -34
  86. package/dist/esm/graphs/Chart/config/useKeyboardNavigation.js.map +1 -1
  87. package/dist/esm/graphs/Chart/config/useScales.js +11 -22
  88. package/dist/esm/graphs/Chart/config/useScales.js.map +1 -1
  89. package/dist/esm/graphs/Chart/config/useValidateProps.js.map +1 -1
  90. package/dist/esm/graphs/Chart/helpers/index.js +5 -10
  91. package/dist/esm/graphs/Chart/helpers/index.js.map +1 -1
  92. package/dist/esm/graphs/Chart/helpers/useUniqueData.js +3 -6
  93. package/dist/esm/graphs/Chart/helpers/useUniqueData.js.map +1 -1
  94. package/dist/esm/graphs/Chart/helpers/useVirtualizedSeries.js +2 -4
  95. package/dist/esm/graphs/Chart/helpers/useVirtualizedSeries.js.map +1 -1
  96. package/dist/esm/graphs/Chart/parts/A11yRegion.js +1 -2
  97. package/dist/esm/graphs/Chart/parts/A11yRegion.js.map +1 -1
  98. package/dist/esm/graphs/Chart/parts/Axis/Axis.js +1 -2
  99. package/dist/esm/graphs/Chart/parts/Axis/Axis.js.map +1 -1
  100. package/dist/esm/graphs/Chart/parts/Axis/AxisBottom.js +6 -12
  101. package/dist/esm/graphs/Chart/parts/Axis/AxisBottom.js.map +1 -1
  102. package/dist/esm/graphs/Chart/parts/Axis/AxisLeft.js +5 -10
  103. package/dist/esm/graphs/Chart/parts/Axis/AxisLeft.js.map +1 -1
  104. package/dist/esm/graphs/Chart/parts/Axis/AxisRight.js +5 -10
  105. package/dist/esm/graphs/Chart/parts/Axis/AxisRight.js.map +1 -1
  106. package/dist/esm/graphs/Chart/parts/Axis/Tick.js.map +1 -1
  107. package/dist/esm/graphs/Chart/parts/ChartContainer.js +6 -12
  108. package/dist/esm/graphs/Chart/parts/ChartContainer.js.map +1 -1
  109. package/dist/esm/graphs/Chart/parts/ClipPaths.js.map +1 -1
  110. package/dist/esm/graphs/Chart/parts/Labels/Label.js.map +1 -1
  111. package/dist/esm/graphs/Chart/parts/Legend/BottomLegend.js +1 -2
  112. package/dist/esm/graphs/Chart/parts/Legend/BottomLegend.js.map +1 -1
  113. package/dist/esm/graphs/Chart/parts/Legend/LeftLegend.js.map +1 -1
  114. package/dist/esm/graphs/Chart/parts/Legend/Legend.js +4 -8
  115. package/dist/esm/graphs/Chart/parts/Legend/Legend.js.map +1 -1
  116. package/dist/esm/graphs/Chart/parts/Legend/LegendItem.js +3 -6
  117. package/dist/esm/graphs/Chart/parts/Legend/LegendItem.js.map +1 -1
  118. package/dist/esm/graphs/Chart/parts/Legend/RightLegend.js.map +1 -1
  119. package/dist/esm/graphs/Chart/parts/Legend/TopLegend.js.map +1 -1
  120. package/dist/esm/graphs/Chart/parts/Scrapper/Scrapper.js +1 -2
  121. package/dist/esm/graphs/Chart/parts/Scrapper/Scrapper.js.map +1 -1
  122. package/dist/esm/graphs/Chart/parts/Scrapper/ScrapperLine.js +1 -2
  123. package/dist/esm/graphs/Chart/parts/Scrapper/ScrapperLine.js.map +1 -1
  124. package/dist/esm/graphs/Chart/parts/Scrapper/VerticalScrapperLine.js +1 -2
  125. package/dist/esm/graphs/Chart/parts/Scrapper/VerticalScrapperLine.js.map +1 -1
  126. package/dist/esm/graphs/Chart/parts/Scroller/BlurMask.js +1 -2
  127. package/dist/esm/graphs/Chart/parts/Scroller/BlurMask.js.map +1 -1
  128. package/dist/esm/graphs/Chart/parts/Scroller/Controllers.js +2 -4
  129. package/dist/esm/graphs/Chart/parts/Scroller/Controllers.js.map +1 -1
  130. package/dist/esm/graphs/Chart/parts/Scroller/ScrollBarX.js.map +1 -1
  131. package/dist/esm/graphs/Chart/parts/Scroller/ScrollBarY.js.map +1 -1
  132. package/dist/esm/graphs/Chart/parts/Scroller/ScrollableContainerX.js +7 -14
  133. package/dist/esm/graphs/Chart/parts/Scroller/ScrollableContainerX.js.map +1 -1
  134. package/dist/esm/graphs/Chart/parts/Scroller/ScrollableContainerY.js +2 -4
  135. package/dist/esm/graphs/Chart/parts/Scroller/ScrollableContainerY.js.map +1 -1
  136. package/dist/esm/graphs/Chart/parts/TrendHighlight.js +1 -2
  137. package/dist/esm/graphs/Chart/parts/TrendHighlight.js.map +1 -1
  138. package/dist/esm/graphs/Chart/scales/index.js +13 -26
  139. package/dist/esm/graphs/Chart/scales/index.js.map +1 -1
  140. package/dist/esm/graphs/Chart/series/Area.js.map +1 -1
  141. package/dist/esm/graphs/Chart/series/Bars.js.map +1 -1
  142. package/dist/esm/graphs/Chart/series/HorizontalBars.js.map +1 -1
  143. package/dist/esm/graphs/Chart/series/HorizontalStackedBars.js.map +1 -1
  144. package/dist/esm/graphs/Chart/series/Line.js +1 -2
  145. package/dist/esm/graphs/Chart/series/Line.js.map +1 -1
  146. package/dist/esm/graphs/Chart/series/Point.js +2 -4
  147. package/dist/esm/graphs/Chart/series/Point.js.map +1 -1
  148. package/dist/esm/graphs/Chart/series/Points.js.map +1 -1
  149. package/dist/esm/graphs/Chart/series/Rect.js +5 -10
  150. package/dist/esm/graphs/Chart/series/Rect.js.map +1 -1
  151. package/dist/esm/graphs/Chart/series/StackedBar.js.map +1 -1
  152. package/dist/esm/graphs/Chart/styles.js.map +1 -1
  153. package/package.json +7 -7
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/graphs/Chart/parts/Scroller/Controllers.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useCallback, useMemo } from 'react';\nimport { styled } from '@elliemae/ds-system';\nimport { ChartContext } from '../../ChartContext.js';\nimport { TOOLBAR } from '../../../constants.js';\n\nconst StyledResetter = styled('g')<{ isDisabled: boolean }>`\n cursor: ${({ isDisabled }) => (isDisabled ? 'not-allowed' : 'pointer')};\n opacity: ${({ isDisabled }) => (isDisabled ? '0.4' : '1')};\n &focus {\n outline: 2px solid blue;\n }\n`;\nexport const Controllers = () => {\n const {\n props: { xScroll },\n width,\n internalMargin,\n xScale,\n yScale,\n containerRef,\n containerRatio,\n setContainerRatio,\n lastScrollbarPosition,\n setToolbarRef,\n setXScrollbarPosition,\n } = useContext(ChartContext);\n\n const isDisabled = useMemo(() => containerRatio === 1, [containerRatio]);\n const handleOnClick = useCallback(() => {\n setContainerRatio(1);\n setXScrollbarPosition(0);\n lastScrollbarPosition.current = 0;\n }, [lastScrollbarPosition, setContainerRatio, setXScrollbarPosition]);\n\n const handleOnKeyDown: React.KeyboardEventHandler = useCallback(\n (e) => {\n e.stopPropagation();\n if (['Space', 'Enter'].includes(e.code)) {\n setContainerRatio(1);\n setXScrollbarPosition(0);\n lastScrollbarPosition.current = 0;\n containerRef?.focus();\n }\n\n if (e.code === 'Tab' && e.shiftKey) {\n e.preventDefault();\n containerRef?.focus();\n }\n },\n [containerRef, lastScrollbarPosition, setContainerRatio, setXScrollbarPosition],\n );\n\n // if is a bar chart we dont give controls\n if (xScale?.type === 'BAND' || yScale?.type === 'BAND') return null;\n\n if (!xScroll) return null;\n return (\n <StyledResetter\n onClick={handleOnClick}\n onKeyDown={handleOnKeyDown}\n transform={`translate(${width - TOOLBAR.RESET.WIDTH * 2},${internalMargin.top / 2 - TOOLBAR.RESET.HEIGHT / 2})`}\n strokeLinecap=\"round\"\n isDisabled={isDisabled}\n innerRef={setToolbarRef}\n role=\"button\"\n aria-label=\"Reset zoom in chart\"\n tabIndex={isDisabled ? -1 : 0}\n >\n <path\n d=\"M 2.875 7.75 A 5.625 5.625 0 1 1 4.5225 11.7275 L 8.2725 10.7275 L 6.5225 14.9775 L 4.5225 11.7275\n M 0 0 H 17 V 17 H 0 V 0 \"\n fill=\"#ffffff\"\n stroke=\"#000000\"\n strokeLinecap=\"round\"\n strokeWidth=\"1\"\n ></path>\n </StyledResetter>\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACsEjB;AApEN,SAAgB,YAAY,aAAa,eAAe;AACxD,SAAS,cAAc;AACvB,SAAS,oBAAoB;AAC7B,SAAS,eAAe;AAExB,MAAM,iBAAiB,OAAO,GAAG;AAAA,YACrB,CAAC,EAAE,WAAW,MAAO,aAAa,gBAAgB;AAAA,aACjD,CAAC,EAAE,WAAW,MAAO,aAAa,QAAQ;AAAA;AAAA;AAAA;AAAA;AAKhD,MAAM,cAAc,MAAM;AAC/B,QAAM;AAAA,IACJ,OAAO,EAAE,QAAQ;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,aAAa,QAAQ,MAAM,mBAAmB,GAAG,CAAC,cAAc,CAAC;AACvE,QAAM,gBAAgB,YAAY,MAAM;AACtC,sBAAkB,CAAC;AACnB,0BAAsB,CAAC;AACvB,0BAAsB,UAAU;AAAA,EAClC,GAAG,CAAC,uBAAuB,mBAAmB,qBAAqB,CAAC;AAEpE,QAAM,kBAA8C;AAAA,IAClD,CAAC,MAAM;AACL,QAAE,gBAAgB;AAClB,UAAI,CAAC,SAAS,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG;AACvC,0BAAkB,CAAC;AACnB,8BAAsB,CAAC;AACvB,8BAAsB,UAAU;AAChC,sBAAc,MAAM;AAAA,MACtB;AAEA,UAAI,EAAE,SAAS,SAAS,EAAE,UAAU;AAClC,UAAE,eAAe;AACjB,sBAAc,MAAM;AAAA,MACtB;AAAA,IACF;AAAA,IACA,CAAC,cAAc,uBAAuB,mBAAmB,qBAAqB;AAAA,EAChF;AAGA,MAAI,QAAQ,SAAS,UAAU,QAAQ,SAAS;AAAQ,WAAO;AAE/D,MAAI,CAAC;AAAS,WAAO;AACrB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,WAAW;AAAA,MACX,WAAW,aAAa,QAAQ,QAAQ,MAAM,QAAQ,KAAK,eAAe,MAAM,IAAI,QAAQ,MAAM,SAAS;AAAA,MAC3G,eAAc;AAAA,MACd;AAAA,MACA,UAAU;AAAA,MACV,MAAK;AAAA,MACL,cAAW;AAAA,MACX,UAAU,aAAa,KAAK;AAAA,MAE5B;AAAA,QAAC;AAAA;AAAA,UACC,GAAE;AAAA,UAEF,MAAK;AAAA,UACL,QAAO;AAAA,UACP,eAAc;AAAA,UACd,aAAY;AAAA;AAAA,MACb;AAAA;AAAA,EACH;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;ACsEjB;AApEN,SAAgB,YAAY,aAAa,eAAe;AACxD,SAAS,cAAc;AACvB,SAAS,oBAAoB;AAC7B,SAAS,eAAe;AAExB,MAAM,iBAAiB,OAAO,GAAG;AAAA,YACrB,CAAC,EAAE,WAAW,MAAO,aAAa,gBAAgB,SAAU;AAAA,aAC3D,CAAC,EAAE,WAAW,MAAO,aAAa,QAAQ,GAAI;AAAA;AAAA;AAAA;AAAA;AAKpD,MAAM,cAAc,MAAM;AAC/B,QAAM;AAAA,IACJ,OAAO,EAAE,QAAQ;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,aAAa,QAAQ,MAAM,mBAAmB,GAAG,CAAC,cAAc,CAAC;AACvE,QAAM,gBAAgB,YAAY,MAAM;AACtC,sBAAkB,CAAC;AACnB,0BAAsB,CAAC;AACvB,0BAAsB,UAAU;AAAA,EAClC,GAAG,CAAC,uBAAuB,mBAAmB,qBAAqB,CAAC;AAEpE,QAAM,kBAA8C;AAAA,IAClD,CAAC,MAAM;AACL,QAAE,gBAAgB;AAClB,UAAI,CAAC,SAAS,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG;AACvC,0BAAkB,CAAC;AACnB,8BAAsB,CAAC;AACvB,8BAAsB,UAAU;AAChC,sBAAc,MAAM;AAAA,MACtB;AAEA,UAAI,EAAE,SAAS,SAAS,EAAE,UAAU;AAClC,UAAE,eAAe;AACjB,sBAAc,MAAM;AAAA,MACtB;AAAA,IACF;AAAA,IACA,CAAC,cAAc,uBAAuB,mBAAmB,qBAAqB;AAAA,EAChF;AAGA,MAAI,QAAQ,SAAS,UAAU,QAAQ,SAAS,OAAQ,QAAO;AAE/D,MAAI,CAAC,QAAS,QAAO;AACrB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,WAAW;AAAA,MACX,WAAW,aAAa,QAAQ,QAAQ,MAAM,QAAQ,CAAC,IAAI,eAAe,MAAM,IAAI,QAAQ,MAAM,SAAS,CAAC;AAAA,MAC5G,eAAc;AAAA,MACd;AAAA,MACA,UAAU;AAAA,MACV,MAAK;AAAA,MACL,cAAW;AAAA,MACX,UAAU,aAAa,KAAK;AAAA,MAE5B;AAAA,QAAC;AAAA;AAAA,UACC,GAAE;AAAA,UAEF,MAAK;AAAA,UACL,QAAO;AAAA,UACP,eAAc;AAAA,UACd,aAAY;AAAA;AAAA,MACb;AAAA;AAAA,EACH;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/graphs/Chart/parts/Scroller/ScrollBarX.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useCallback, useMemo } from 'react';\nimport { ChartContext } from '../../ChartContext.js';\n\nexport const ScrollBarX = () => {\n const {\n setIsGrabbed,\n setStartPosition,\n innerWidth,\n xScrollbarPosition,\n activePoint,\n setXScrollbarPosition,\n innerHeight,\n isGrabbed,\n containerRatio,\n setScrapperPosX,\n isScrollbarVisible,\n lastScrollbarPosition,\n } = useContext(ChartContext);\n\n const barWidth = useMemo(() => innerWidth / containerRatio, [containerRatio, innerWidth]);\n\n const handleMouseDown = useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n setScrapperPosX(-1);\n setIsGrabbed(true);\n setStartPosition(e.clientX);\n e.preventDefault();\n },\n [setIsGrabbed, setScrapperPosX, setStartPosition],\n );\n\n const handleMouseEnter: React.MouseEventHandler = useCallback(() => {\n setScrapperPosX(-1);\n }, [setScrapperPosX]);\n\n const handleClickFullBar: React.MouseEventHandler = useCallback(\n (e) => {\n let newPosition = 0;\n const bar = e.target as SVGGElement;\n const bounds = bar.getBoundingClientRect();\n const left = e.clientX - bounds.left;\n if (left + barWidth / 2 > innerWidth) {\n newPosition = innerWidth - barWidth;\n } else if (left - barWidth / 2 > 0) {\n newPosition = left - barWidth / 2;\n }\n\n setXScrollbarPosition(newPosition);\n lastScrollbarPosition.current = newPosition;\n e.preventDefault();\n },\n [barWidth, innerWidth, lastScrollbarPosition, setXScrollbarPosition],\n );\n\n const isBarVisible = useMemo(\n () => (isScrollbarVisible || activePoint) && containerRatio > 1,\n [activePoint, containerRatio, isScrollbarVisible],\n );\n\n return (\n <g\n className=\"scrollbarx\"\n transform={`translate(0,${innerHeight})`}\n style={{ visibility: isBarVisible ? 'visible' : 'hidden' }}\n onMouseEnter={handleMouseEnter}\n >\n <rect style={{ cursor: 'pointer' }} width={innerWidth} height=\"6\" fill=\"#ebecf0c5\" onClick={handleClickFullBar} />\n <g transform={`translate(${xScrollbarPosition},0)`}>\n <rect\n style={{ cursor: isGrabbed ? 'grabbing' : 'grab' }}\n width={barWidth}\n height=\"6\"\n fill=\"grey\"\n onMouseDown={handleMouseDown}\n />\n </g>\n </g>\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;AC+DnB,SAME,KANF;AA7DJ,SAAgB,YAAY,aAAa,eAAe;AACxD,SAAS,oBAAoB;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,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,WAAW,QAAQ,MAAM,aAAa,gBAAgB,CAAC,gBAAgB,UAAU,CAAC;AAExF,QAAM,kBAAkB;AAAA,IACtB,CAAC,MAAwB;AACvB,QAAE,gBAAgB;AAClB,sBAAgB,EAAE;AAClB,mBAAa,IAAI;AACjB,uBAAiB,EAAE,OAAO;AAC1B,QAAE,eAAe;AAAA,IACnB;AAAA,IACA,CAAC,cAAc,iBAAiB,gBAAgB;AAAA,EAClD;AAEA,QAAM,mBAA4C,YAAY,MAAM;AAClE,oBAAgB,EAAE;AAAA,EACpB,GAAG,CAAC,eAAe,CAAC;AAEpB,QAAM,qBAA8C;AAAA,IAClD,CAAC,MAAM;AACL,UAAI,cAAc;AAClB,YAAM,MAAM,EAAE;AACd,YAAM,SAAS,IAAI,sBAAsB;AACzC,YAAM,OAAO,EAAE,UAAU,OAAO;AAChC,UAAI,OAAO,WAAW,IAAI,YAAY;AACpC,sBAAc,aAAa;AAAA,MAC7B,WAAW,OAAO,WAAW,IAAI,GAAG;AAClC,sBAAc,OAAO,WAAW;AAAA,MAClC;AAEA,4BAAsB,WAAW;AACjC,4BAAsB,UAAU;AAChC,QAAE,eAAe;AAAA,IACnB;AAAA,IACA,CAAC,UAAU,YAAY,uBAAuB,qBAAqB;AAAA,EACrE;AAEA,QAAM,eAAe;AAAA,IACnB,OAAO,sBAAsB,gBAAgB,iBAAiB;AAAA,IAC9D,CAAC,aAAa,gBAAgB,kBAAkB;AAAA,EAClD;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,WAAW,eAAe;AAAA,MAC1B,OAAO,EAAE,YAAY,eAAe,YAAY,SAAS;AAAA,MACzD,cAAc;AAAA,MAEd;AAAA,4BAAC,UAAK,OAAO,EAAE,QAAQ,UAAU,GAAG,OAAO,YAAY,QAAO,KAAI,MAAK,aAAY,SAAS,oBAAoB;AAAA,QAChH,oBAAC,OAAE,WAAW,aAAa,yBACzB;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,EAAE,QAAQ,YAAY,aAAa,OAAO;AAAA,YACjD,OAAO;AAAA,YACP,QAAO;AAAA,YACP,MAAK;AAAA,YACL,aAAa;AAAA;AAAA,QACf,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;AC+DnB,SAME,KANF;AA7DJ,SAAgB,YAAY,aAAa,eAAe;AACxD,SAAS,oBAAoB;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,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,WAAW,QAAQ,MAAM,aAAa,gBAAgB,CAAC,gBAAgB,UAAU,CAAC;AAExF,QAAM,kBAAkB;AAAA,IACtB,CAAC,MAAwB;AACvB,QAAE,gBAAgB;AAClB,sBAAgB,EAAE;AAClB,mBAAa,IAAI;AACjB,uBAAiB,EAAE,OAAO;AAC1B,QAAE,eAAe;AAAA,IACnB;AAAA,IACA,CAAC,cAAc,iBAAiB,gBAAgB;AAAA,EAClD;AAEA,QAAM,mBAA4C,YAAY,MAAM;AAClE,oBAAgB,EAAE;AAAA,EACpB,GAAG,CAAC,eAAe,CAAC;AAEpB,QAAM,qBAA8C;AAAA,IAClD,CAAC,MAAM;AACL,UAAI,cAAc;AAClB,YAAM,MAAM,EAAE;AACd,YAAM,SAAS,IAAI,sBAAsB;AACzC,YAAM,OAAO,EAAE,UAAU,OAAO;AAChC,UAAI,OAAO,WAAW,IAAI,YAAY;AACpC,sBAAc,aAAa;AAAA,MAC7B,WAAW,OAAO,WAAW,IAAI,GAAG;AAClC,sBAAc,OAAO,WAAW;AAAA,MAClC;AAEA,4BAAsB,WAAW;AACjC,4BAAsB,UAAU;AAChC,QAAE,eAAe;AAAA,IACnB;AAAA,IACA,CAAC,UAAU,YAAY,uBAAuB,qBAAqB;AAAA,EACrE;AAEA,QAAM,eAAe;AAAA,IACnB,OAAO,sBAAsB,gBAAgB,iBAAiB;AAAA,IAC9D,CAAC,aAAa,gBAAgB,kBAAkB;AAAA,EAClD;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,WAAW,eAAe,WAAW;AAAA,MACrC,OAAO,EAAE,YAAY,eAAe,YAAY,SAAS;AAAA,MACzD,cAAc;AAAA,MAEd;AAAA,4BAAC,UAAK,OAAO,EAAE,QAAQ,UAAU,GAAG,OAAO,YAAY,QAAO,KAAI,MAAK,aAAY,SAAS,oBAAoB;AAAA,QAChH,oBAAC,OAAE,WAAW,aAAa,kBAAkB,OAC3C;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,EAAE,QAAQ,YAAY,aAAa,OAAO;AAAA,YACjD,OAAO;AAAA,YACP,QAAO;AAAA,YACP,MAAK;AAAA,YACL,aAAa;AAAA;AAAA,QACf,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/graphs/Chart/parts/Scroller/ScrollBarY.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useCallback, useMemo } from 'react';\nimport { ChartContext } from '../../ChartContext.js';\n\nexport const ScrollBarY = () => {\n const {\n setIsGrabbed,\n setStartPosition,\n xScrollbarPosition,\n activePoint,\n setXScrollbarPosition,\n innerHeight,\n isGrabbed,\n containerRatio,\n setScrapperPosX,\n setScrapperPosY,\n isScrollbarVisible,\n lastScrollbarPosition,\n } = useContext(ChartContext);\n\n const barHeight = useMemo(() => Math.round(innerHeight / containerRatio), [containerRatio, innerHeight]);\n\n const handleMouseDown = useCallback(\n (e: React.MouseEvent) => {\n setScrapperPosX(-1);\n setScrapperPosY(-1);\n setIsGrabbed(true);\n setStartPosition(e.clientY);\n e.preventDefault();\n },\n [setIsGrabbed, setScrapperPosY, setScrapperPosX, setStartPosition],\n );\n\n const handleMouseEnter = useCallback(() => {\n setScrapperPosX(-1);\n }, [setScrapperPosX]);\n\n const handleClickFullBar = useCallback(\n (e: React.MouseEvent) => {\n let newPosition = 0;\n const bar = e.target as HTMLElement;\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 lastScrollbarPosition.current = newPosition;\n e.preventDefault();\n },\n [barHeight, innerHeight, lastScrollbarPosition, 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"],
5
- "mappings": "AAAA,YAAY,WAAW;AC+DnB,SAME,KANF;AA7DJ,SAAgB,YAAY,aAAa,eAAe;AACxD,SAAS,oBAAoB;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,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,YAAY,QAAQ,MAAM,KAAK,MAAM,cAAc,cAAc,GAAG,CAAC,gBAAgB,WAAW,CAAC;AAEvG,QAAM,kBAAkB;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,mBAAmB,YAAY,MAAM;AACzC,oBAAgB,EAAE;AAAA,EACpB,GAAG,CAAC,eAAe,CAAC;AAEpB,QAAM,qBAAqB;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,4BAAsB,UAAU;AAChC,QAAE,eAAe;AAAA,IACnB;AAAA,IACA,CAAC,WAAW,aAAa,uBAAuB,qBAAqB;AAAA,EACvE;AAEA,QAAM,eAAe;AAAA,IACnB,OAAO,sBAAsB,gBAAgB,iBAAiB;AAAA,IAC9D,CAAC,aAAa,gBAAgB,kBAAkB;AAAA,EAClD;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,WAAU;AAAA,MACV,OAAO,EAAE,YAAY,eAAe,YAAY,SAAS;AAAA,MACzD,cAAc;AAAA,MAEd;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,EAAE,QAAQ,UAAU;AAAA,YAC3B,OAAM;AAAA,YACN,QAAQ;AAAA,YACR,MAAK;AAAA,YACL,SAAS;AAAA;AAAA,QACX;AAAA,QACA,oBAAC,OAAE,WAAW,eAAe,uBAC3B;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,EAAE,QAAQ,YAAY,aAAa,OAAO;AAAA,YACjD,OAAM;AAAA,YACN,QAAQ;AAAA,YACR,MAAK;AAAA,YACL,aAAa;AAAA;AAAA,QACf,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;AC+DnB,SAME,KANF;AA7DJ,SAAgB,YAAY,aAAa,eAAe;AACxD,SAAS,oBAAoB;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,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,YAAY,QAAQ,MAAM,KAAK,MAAM,cAAc,cAAc,GAAG,CAAC,gBAAgB,WAAW,CAAC;AAEvG,QAAM,kBAAkB;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,mBAAmB,YAAY,MAAM;AACzC,oBAAgB,EAAE;AAAA,EACpB,GAAG,CAAC,eAAe,CAAC;AAEpB,QAAM,qBAAqB;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,4BAAsB,UAAU;AAChC,QAAE,eAAe;AAAA,IACnB;AAAA,IACA,CAAC,WAAW,aAAa,uBAAuB,qBAAqB;AAAA,EACvE;AAEA,QAAM,eAAe;AAAA,IACnB,OAAO,sBAAsB,gBAAgB,iBAAiB;AAAA,IAC9D,CAAC,aAAa,gBAAgB,kBAAkB;AAAA,EAClD;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,WAAU;AAAA,MACV,OAAO,EAAE,YAAY,eAAe,YAAY,SAAS;AAAA,MACzD,cAAc;AAAA,MAEd;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,EAAE,QAAQ,UAAU;AAAA,YAC3B,OAAM;AAAA,YACN,QAAQ;AAAA,YACR,MAAK;AAAA,YACL,SAAS;AAAA;AAAA,QACX;AAAA,QACA,oBAAC,OAAE,WAAW,eAAe,kBAAkB,KAC7C;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,EAAE,QAAQ,YAAY,aAAa,OAAO;AAAA,YACjD,OAAM;AAAA,YACN,QAAQ;AAAA,YACR,MAAK;AAAA,YACL,aAAa;AAAA;AAAA,QACf,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -34,10 +34,8 @@ const ScrollableContainerX = () => {
34
34
  [containerRef, internalMargin.left]
35
35
  );
36
36
  const Scrappers = useMemo(() => {
37
- if (scrapper && scrapper?.type === "horizontal")
38
- return /* @__PURE__ */ jsx(Scrapper, {});
39
- if (scrapper && scrapper?.type === "vertical")
40
- return /* @__PURE__ */ jsx(VerticalScrapper, {});
37
+ if (scrapper && scrapper?.type === "horizontal") return /* @__PURE__ */ jsx(Scrapper, {});
38
+ if (scrapper && scrapper?.type === "vertical") return /* @__PURE__ */ jsx(VerticalScrapper, {});
41
39
  return null;
42
40
  }, [scrapper]);
43
41
  const handleOnMouseDown = useCallback(
@@ -52,27 +50,22 @@ const ScrollableContainerX = () => {
52
50
  );
53
51
  const handleOnMouseMove = useCallback(
54
52
  ({ clientX }) => {
55
- if (isZooming)
56
- setMovingPosition(getRealClientX(clientX));
53
+ if (isZooming) setMovingPosition(getRealClientX(clientX));
57
54
  },
58
55
  [getRealClientX, isZooming, setMovingPosition]
59
56
  );
60
57
  const handleOnMouseUp = useCallback(
61
58
  (e) => {
62
- if (!isZooming)
63
- return;
59
+ if (!isZooming) return;
64
60
  setIsZooming(false);
65
61
  setMovingPosition(0);
66
62
  const endingPosition = getRealClientX(e.clientX);
67
63
  const diff = Math.abs(zoomStartingPosition - endingPosition);
68
- if (diff <= 0)
69
- return;
64
+ if (diff <= 0) return;
70
65
  const newRatio = innerWidth / (innerWidth * containerRatio / diff) < 40 ? innerWidth / 40 : innerWidth * containerRatio / diff;
71
66
  const newPosition = lastScrollbarPosition?.current + (zoomStartingPosition > endingPosition ? endingPosition : zoomStartingPosition) / containerRatio;
72
- if (newPosition > innerWidth - innerWidth / newRatio)
73
- setXScrollbarPosition(innerWidth - innerWidth / newRatio);
74
- else
75
- setXScrollbarPosition(newPosition);
67
+ if (newPosition > innerWidth - innerWidth / newRatio) setXScrollbarPosition(innerWidth - innerWidth / newRatio);
68
+ else setXScrollbarPosition(newPosition);
76
69
  setContainerRatio(newRatio);
77
70
  lastScrollbarPosition.current = newPosition;
78
71
  e.stopPropagation();
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/graphs/Chart/parts/Scroller/ScrollableContainerX.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useCallback, useMemo } from 'react';\nimport { ChartContext } from '../../ChartContext.js';\nimport { AxisBottom } from '../Axis/AxisBottom.js';\nimport { SeriesFactory } from '../SeriesFactory.js';\nimport { ScrollBarX } from './ScrollBarX.js';\nimport { Scrapper } from '../Scrapper/Scrapper.js';\nimport { VerticalScrapper } from '../Scrapper/VerticalScrapper.js';\nexport const ScrollableContainerX = () => {\n const {\n props: { scrapper },\n xScrollbarPosition,\n xScale,\n containerRatio,\n innerWidth,\n isGrabbed,\n containerRef,\n setXScrollbarPosition,\n setContainerRatio,\n lastScrollbarPosition,\n innerHeight,\n internalMargin,\n chartId,\n isZooming,\n setIsZooming,\n zoomStartingPosition,\n setZoomStartingPosition,\n movingPosition,\n setMovingPosition,\n } = useContext(ChartContext);\n\n const getRealClientX = useCallback(\n (clientX: number) => clientX - internalMargin.left - (containerRef?.getBoundingClientRect().left || 0),\n [containerRef, internalMargin.left],\n );\n\n const Scrappers = useMemo(() => {\n if (scrapper && scrapper?.type === 'horizontal') return <Scrapper />;\n if (scrapper && scrapper?.type === 'vertical') return <VerticalScrapper />;\n return null;\n }, [scrapper]);\n\n const handleOnMouseDown: React.MouseEventHandler = useCallback(\n ({ clientX }) => {\n if (!isGrabbed && xScale?.type !== 'BAND') {\n setIsZooming(true);\n setZoomStartingPosition(getRealClientX(clientX));\n setMovingPosition(0);\n }\n },\n [getRealClientX, isGrabbed, setIsZooming, setMovingPosition, setZoomStartingPosition, xScale?.type],\n );\n\n const handleOnMouseMove: React.MouseEventHandler = useCallback(\n ({ clientX }) => {\n if (isZooming) setMovingPosition(getRealClientX(clientX));\n },\n [getRealClientX, isZooming, setMovingPosition],\n );\n const handleOnMouseUp: React.MouseEventHandler = useCallback(\n (e) => {\n if (!isZooming) return;\n setIsZooming(false);\n setMovingPosition(0);\n const endingPosition = getRealClientX(e.clientX);\n\n const diff = Math.abs(zoomStartingPosition - endingPosition);\n if (diff <= 0) return;\n const newRatio =\n innerWidth / ((innerWidth * containerRatio) / diff) < 40\n ? innerWidth / 40\n : (innerWidth * containerRatio) / diff;\n const newPosition =\n lastScrollbarPosition?.current +\n (zoomStartingPosition > endingPosition ? endingPosition : zoomStartingPosition) / containerRatio;\n\n // if (newPosition < 0) setXScrollbarPosition(0);\n // if is bigger thant innerwidth possible we force the end\n if (newPosition > innerWidth - innerWidth / newRatio) setXScrollbarPosition(innerWidth - innerWidth / newRatio);\n else setXScrollbarPosition(newPosition);\n\n setContainerRatio(newRatio);\n lastScrollbarPosition.current = newPosition;\n e.stopPropagation();\n },\n [\n isZooming,\n setIsZooming,\n setMovingPosition,\n getRealClientX,\n zoomStartingPosition,\n innerWidth,\n containerRatio,\n lastScrollbarPosition,\n setXScrollbarPosition,\n setContainerRatio,\n ],\n );\n return (\n <g\n className=\"scrollable-container-x\"\n onMouseDown={handleOnMouseDown}\n onMouseMove={handleOnMouseMove}\n onMouseUp={handleOnMouseUp}\n >\n <g mask={`url(#mask-${chartId})`}>\n <g transform={`translate(${-xScrollbarPosition * containerRatio},0)`}>\n <AxisBottom />\n <SeriesFactory />\n {Scrappers}\n </g>\n {isZooming && movingPosition !== 0 ? (\n <rect\n x={movingPosition < zoomStartingPosition ? movingPosition : zoomStartingPosition}\n width={Math.abs(movingPosition - zoomStartingPosition)}\n height={innerHeight}\n fill=\"orange\"\n style={{ opacity: 0.2 }}\n />\n ) : null}\n </g>\n <ScrollBarX />\n </g>\n );\n};\n"],
5
- "mappings": "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",
5
+ "mappings": "AAAA,YAAY,WAAW;ACsCqC,cAqEpD,YArEoD;AApC5D,SAAgB,YAAY,aAAa,eAAe;AACxD,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAC3B,SAAS,gBAAgB;AACzB,SAAS,wBAAwB;AAC1B,MAAM,uBAAuB,MAAM;AACxC,QAAM;AAAA,IACJ,OAAO,EAAE,SAAS;AAAA,IAClB;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,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,iBAAiB;AAAA,IACrB,CAAC,YAAoB,UAAU,eAAe,QAAQ,cAAc,sBAAsB,EAAE,QAAQ;AAAA,IACpG,CAAC,cAAc,eAAe,IAAI;AAAA,EACpC;AAEA,QAAM,YAAY,QAAQ,MAAM;AAC9B,QAAI,YAAY,UAAU,SAAS,aAAc,QAAO,oBAAC,YAAS;AAClE,QAAI,YAAY,UAAU,SAAS,WAAY,QAAO,oBAAC,oBAAiB;AACxE,WAAO;AAAA,EACT,GAAG,CAAC,QAAQ,CAAC;AAEb,QAAM,oBAA6C;AAAA,IACjD,CAAC,EAAE,QAAQ,MAAM;AACf,UAAI,CAAC,aAAa,QAAQ,SAAS,QAAQ;AACzC,qBAAa,IAAI;AACjB,gCAAwB,eAAe,OAAO,CAAC;AAC/C,0BAAkB,CAAC;AAAA,MACrB;AAAA,IACF;AAAA,IACA,CAAC,gBAAgB,WAAW,cAAc,mBAAmB,yBAAyB,QAAQ,IAAI;AAAA,EACpG;AAEA,QAAM,oBAA6C;AAAA,IACjD,CAAC,EAAE,QAAQ,MAAM;AACf,UAAI,UAAW,mBAAkB,eAAe,OAAO,CAAC;AAAA,IAC1D;AAAA,IACA,CAAC,gBAAgB,WAAW,iBAAiB;AAAA,EAC/C;AACA,QAAM,kBAA2C;AAAA,IAC/C,CAAC,MAAM;AACL,UAAI,CAAC,UAAW;AAChB,mBAAa,KAAK;AAClB,wBAAkB,CAAC;AACnB,YAAM,iBAAiB,eAAe,EAAE,OAAO;AAE/C,YAAM,OAAO,KAAK,IAAI,uBAAuB,cAAc;AAC3D,UAAI,QAAQ,EAAG;AACf,YAAM,WACJ,cAAe,aAAa,iBAAkB,QAAQ,KAClD,aAAa,KACZ,aAAa,iBAAkB;AACtC,YAAM,cACJ,uBAAuB,WACtB,uBAAuB,iBAAiB,iBAAiB,wBAAwB;AAIpF,UAAI,cAAc,aAAa,aAAa,SAAU,uBAAsB,aAAa,aAAa,QAAQ;AAAA,UACzG,uBAAsB,WAAW;AAEtC,wBAAkB,QAAQ;AAC1B,4BAAsB,UAAU;AAChC,QAAE,gBAAgB;AAAA,IACpB;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,aAAa;AAAA,MACb,aAAa;AAAA,MACb,WAAW;AAAA,MAEX;AAAA,6BAAC,OAAE,MAAM,aAAa,OAAO,KAC3B;AAAA,+BAAC,OAAE,WAAW,aAAa,CAAC,qBAAqB,cAAc,OAC7D;AAAA,gCAAC,cAAW;AAAA,YACZ,oBAAC,iBAAc;AAAA,YACd;AAAA,aACH;AAAA,UACC,aAAa,mBAAmB,IAC/B;AAAA,YAAC;AAAA;AAAA,cACC,GAAG,iBAAiB,uBAAuB,iBAAiB;AAAA,cAC5D,OAAO,KAAK,IAAI,iBAAiB,oBAAoB;AAAA,cACrD,QAAQ;AAAA,cACR,MAAK;AAAA,cACL,OAAO,EAAE,SAAS,IAAI;AAAA;AAAA,UACxB,IACE;AAAA,WACN;AAAA,QACA,oBAAC,cAAW;AAAA;AAAA;AAAA,EACd;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -15,10 +15,8 @@ const ScrollableContainerY = () => {
15
15
  chartId
16
16
  } = useContext(ChartContext);
17
17
  const Scrappers = useMemo(() => {
18
- if (scrapper?.type === "horizontal")
19
- return /* @__PURE__ */ jsx(Scrapper, {});
20
- else if (scrapper?.type === "vertical")
21
- return /* @__PURE__ */ jsx(VerticalScrapper, {});
18
+ if (scrapper?.type === "horizontal") return /* @__PURE__ */ jsx(Scrapper, {});
19
+ else if (scrapper?.type === "vertical") return /* @__PURE__ */ jsx(VerticalScrapper, {});
22
20
  return null;
23
21
  }, [scrapper?.type]);
24
22
  return /* @__PURE__ */ jsxs("g", { className: "scrollable-container-y", children: [
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/graphs/Chart/parts/Scroller/ScrollableContainerY.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable arrow-body-style */\n/* eslint-disable indent */\nimport React, { useContext, useMemo } from 'react';\nimport { ChartContext } from '../../ChartContext.js';\nimport { SeriesFactory } from '../SeriesFactory.js';\nimport { ScrollBarY } from './ScrollBarY.js';\nimport { Scrapper } from '../Scrapper/Scrapper.js';\nimport { VerticalScrapper } from '../Scrapper/VerticalScrapper.js';\nimport { AxisLeft } from '../Axis/AxisLeft.js';\nexport const ScrollableContainerY = () => {\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 else if (scrapper?.type === 'vertical') return <VerticalScrapper />;\n return null;\n }, [scrapper?.type]);\n\n return (\n <g className=\"scrollable-container-y\">\n <g mask={`url(#mask-y-${chartId})`}>\n <g transform={`translate(0,${-xScrollbarPosition * containerRatio})`}>\n <SeriesFactory />\n {Scrappers}\n <AxisLeft />\n </g>\n </g>\n <ScrollBarY />\n </g>\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACkByB,cAQxC,YARwC;AAhBhD,SAAgB,YAAY,eAAe;AAC3C,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAC3B,SAAS,gBAAgB;AACzB,SAAS,wBAAwB;AACjC,SAAS,gBAAgB;AAClB,MAAM,uBAAuB,MAAM;AACxC,QAAM;AAAA,IACJ,OAAO,EAAE,SAAS;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,YAAY,QAAQ,MAAM;AAC9B,QAAI,UAAU,SAAS;AAAc,aAAO,oBAAC,YAAS;AAAA,aAC7C,UAAU,SAAS;AAAY,aAAO,oBAAC,oBAAiB;AACjE,WAAO;AAAA,EACT,GAAG,CAAC,UAAU,IAAI,CAAC;AAEnB,SACE,qBAAC,OAAE,WAAU,0BACX;AAAA,wBAAC,OAAE,MAAM,eAAe,YACtB,+BAAC,OAAE,WAAW,eAAe,CAAC,qBAAqB,mBACjD;AAAA,0BAAC,iBAAc;AAAA,MACd;AAAA,MACD,oBAAC,YAAS;AAAA,OACZ,GACF;AAAA,IACA,oBAAC,cAAW;AAAA,KACd;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;ACkByB,cAQxC,YARwC;AAhBhD,SAAgB,YAAY,eAAe;AAC3C,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAC3B,SAAS,gBAAgB;AACzB,SAAS,wBAAwB;AACjC,SAAS,gBAAgB;AAClB,MAAM,uBAAuB,MAAM;AACxC,QAAM;AAAA,IACJ,OAAO,EAAE,SAAS;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,YAAY,QAAQ,MAAM;AAC9B,QAAI,UAAU,SAAS,aAAc,QAAO,oBAAC,YAAS;AAAA,aAC7C,UAAU,SAAS,WAAY,QAAO,oBAAC,oBAAiB;AACjE,WAAO;AAAA,EACT,GAAG,CAAC,UAAU,IAAI,CAAC;AAEnB,SACE,qBAAC,OAAE,WAAU,0BACX;AAAA,wBAAC,OAAE,MAAM,eAAe,OAAO,KAC7B,+BAAC,OAAE,WAAW,eAAe,CAAC,qBAAqB,cAAc,KAC/D;AAAA,0BAAC,iBAAc;AAAA,MACd;AAAA,MACD,oBAAC,YAAS;AAAA,OACZ,GACF;AAAA,IACA,oBAAC,cAAW;AAAA,KACd;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -6,8 +6,7 @@ const TrendHighlight = ({ currentDatum }) => {
6
6
  const { currentData, getXScaleValue, getY2ScaleValue, getYScaleValue } = useContext(ChartContext);
7
7
  const prevPoint = currentData?.find((serie) => serie.name === currentDatum.serie && serie.type === "line")?.data?.find((datum) => datum.position === currentDatum.position - 1);
8
8
  const currentYScale = prevPoint?.scale === "y2" ? getY2ScaleValue : getYScaleValue;
9
- if (!prevPoint)
10
- return null;
9
+ if (!prevPoint) return null;
11
10
  const xCurrentPosition = getXScaleValue(currentDatum);
12
11
  const yCurrentPosition = currentYScale(currentDatum);
13
12
  const xPreviousPosition = getXScaleValue(prevPoint);
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/parts/TrendHighlight.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext } from 'react';\nimport { ChartContext } from '../ChartContext.js';\nimport { type DSChartT } from '../react-desc-prop-types.js';\ninterface TrendHighlightProps {\n currentDatum: DSChartT.InternalDatum;\n}\n\nexport const TrendHighlight: React.ComponentType<TrendHighlightProps> = ({ currentDatum }) => {\n const { currentData, getXScaleValue, getY2ScaleValue, getYScaleValue } = useContext(ChartContext);\n\n const prevPoint = currentData\n ?.find((serie) => serie.name === currentDatum.serie && serie.type === 'line')\n ?.data?.find((datum) => datum.position === currentDatum.position - 1);\n\n const currentYScale = prevPoint?.scale === 'y2' ? getY2ScaleValue : getYScaleValue;\n if (!prevPoint) return null;\n const xCurrentPosition = getXScaleValue(currentDatum);\n const yCurrentPosition = currentYScale(currentDatum);\n const xPreviousPosition = getXScaleValue(prevPoint);\n const yPreviousPosition = currentYScale(prevPoint);\n return (\n <line\n strokeWidth=\"4\"\n stroke={(yPreviousPosition ?? 0) > (yCurrentPosition ?? 0) ? 'green' : 'red'}\n x1={xPreviousPosition}\n x2={xCurrentPosition}\n y1={yPreviousPosition}\n y2={yCurrentPosition}\n />\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACqBnB;AArBJ,SAAgB,kBAAkB;AAClC,SAAS,oBAAoB;AAMtB,MAAM,iBAA2D,CAAC,EAAE,aAAa,MAAM;AAC5F,QAAM,EAAE,aAAa,gBAAgB,iBAAiB,eAAe,IAAI,WAAW,YAAY;AAEhG,QAAM,YAAY,aACd,KAAK,CAAC,UAAU,MAAM,SAAS,aAAa,SAAS,MAAM,SAAS,MAAM,GAC1E,MAAM,KAAK,CAAC,UAAU,MAAM,aAAa,aAAa,WAAW,CAAC;AAEtE,QAAM,gBAAgB,WAAW,UAAU,OAAO,kBAAkB;AACpE,MAAI,CAAC;AAAW,WAAO;AACvB,QAAM,mBAAmB,eAAe,YAAY;AACpD,QAAM,mBAAmB,cAAc,YAAY;AACnD,QAAM,oBAAoB,eAAe,SAAS;AAClD,QAAM,oBAAoB,cAAc,SAAS;AACjD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAY;AAAA,MACZ,SAAS,qBAAqB,MAAM,oBAAoB,KAAK,UAAU;AAAA,MACvE,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA;AAAA,EACN;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;ACqBnB;AArBJ,SAAgB,kBAAkB;AAClC,SAAS,oBAAoB;AAMtB,MAAM,iBAA2D,CAAC,EAAE,aAAa,MAAM;AAC5F,QAAM,EAAE,aAAa,gBAAgB,iBAAiB,eAAe,IAAI,WAAW,YAAY;AAEhG,QAAM,YAAY,aACd,KAAK,CAAC,UAAU,MAAM,SAAS,aAAa,SAAS,MAAM,SAAS,MAAM,GAC1E,MAAM,KAAK,CAAC,UAAU,MAAM,aAAa,aAAa,WAAW,CAAC;AAEtE,QAAM,gBAAgB,WAAW,UAAU,OAAO,kBAAkB;AACpE,MAAI,CAAC,UAAW,QAAO;AACvB,QAAM,mBAAmB,eAAe,YAAY;AACpD,QAAM,mBAAmB,cAAc,YAAY;AACnD,QAAM,oBAAoB,eAAe,SAAS;AAClD,QAAM,oBAAoB,cAAc,SAAS;AACjD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAY;AAAA,MACZ,SAAS,qBAAqB,MAAM,oBAAoB,KAAK,UAAU;AAAA,MACvE,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA;AAAA,EACN;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -37,16 +37,14 @@ class BandScale extends Scale {
37
37
  this.axisProps = axisProps;
38
38
  }
39
39
  get(value) {
40
- if (typeof value !== "string")
41
- return 0;
40
+ if (typeof value !== "string") return 0;
42
41
  return this.scale(value);
43
42
  }
44
43
  getTicks() {
45
44
  return this.scale.domain();
46
45
  }
47
46
  getTickFormatted(t) {
48
- if (typeof t !== "string")
49
- return t;
47
+ if (typeof t !== "string") return t;
50
48
  if (typeof this.axisProps?.tick?.tickFormat === "function") {
51
49
  return this.axisProps?.tick?.tickFormat(t);
52
50
  }
@@ -67,13 +65,11 @@ class LinearScale extends Scale {
67
65
  this.axisProps = axisProps;
68
66
  }
69
67
  get(value) {
70
- if (typeof value !== "number")
71
- return 0;
68
+ if (typeof value !== "number") return 0;
72
69
  return this.scale(value);
73
70
  }
74
71
  getTickFormatted(t) {
75
- if (typeof t !== "number")
76
- return t.toString();
72
+ if (typeof t !== "number") return t.toString();
77
73
  if (typeof this.axisProps?.tick?.tickFormat === "function") {
78
74
  return this.axisProps?.tick?.tickFormat(t);
79
75
  }
@@ -85,14 +81,11 @@ class LinearScale extends Scale {
85
81
  getTicks(dimension) {
86
82
  const ticks = this.scale.ticks?.(this.axisProps?.tick?.tickCount ?? Math.ceil(dimension / 80));
87
83
  if (this.axisProps?.tick?.tickValues) {
88
- if (this.axisProps?.tick?.overwriteTicks)
89
- return this.axisProps?.tick?.tickValues;
84
+ if (this.axisProps?.tick?.overwriteTicks) return this.axisProps?.tick?.tickValues;
90
85
  this.axisProps?.tick?.tickValues.forEach((t) => {
91
- if (typeof t !== "number")
92
- return;
86
+ if (typeof t !== "number") return;
93
87
  const isTickAlreadyPresent = ticks.find((tick) => tick === t);
94
- if (isTickAlreadyPresent)
95
- return;
88
+ if (isTickAlreadyPresent) return;
96
89
  ticks.push(t);
97
90
  });
98
91
  }
@@ -111,8 +104,7 @@ class LogScale extends LinearScale {
111
104
  this.axisProps = axisProps;
112
105
  }
113
106
  getTickFormatted(t) {
114
- if (typeof t !== "number")
115
- return t.toString();
107
+ if (typeof t !== "number") return t.toString();
116
108
  if (typeof this.axisProps?.tick?.tickFormat === "function") {
117
109
  return this.axisProps?.tick?.tickFormat(t);
118
110
  }
@@ -130,13 +122,11 @@ class TimeLinearScale extends Scale {
130
122
  this.axisProps = axisProps;
131
123
  }
132
124
  get(value) {
133
- if (typeof value !== "object")
134
- return 0;
125
+ if (typeof value !== "object") return 0;
135
126
  return this.scale(value);
136
127
  }
137
128
  getTickFormatted(t) {
138
- if (typeof t !== "object")
139
- return t.toString();
129
+ if (typeof t !== "object") return t.toString();
140
130
  if (typeof this.axisProps?.tick?.tickFormat === "function") {
141
131
  return this.axisProps?.tick?.tickFormat(t);
142
132
  }
@@ -151,17 +141,14 @@ class TimeLinearScale extends Scale {
151
141
  const ticks = this.scale.ticks?.(finalTickConfig);
152
142
  const ticksValues = this.axisProps?.tick?.tickValues;
153
143
  if (ticksValues) {
154
- if (this.axisProps?.tick?.overwriteTicks)
155
- return ticksValues;
144
+ if (this.axisProps?.tick?.overwriteTicks) return ticksValues;
156
145
  const newTicks = [];
157
146
  ticks.forEach((t) => {
158
- if (typeof t !== "object")
159
- return;
147
+ if (typeof t !== "object") return;
160
148
  const exists = ticksValues.some(
161
149
  (tickValue) => typeof tickValue === "object" && tickValue.getTime() === t.getTime()
162
150
  );
163
- if (!exists)
164
- newTicks.push(t);
151
+ if (!exists) newTicks.push(t);
165
152
  });
166
153
  return [...newTicks, ...ticksValues];
167
154
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/scales/index.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport type { ScaleBand, ScaleLinear, ScaleLogarithmic, ScaleTime } from 'd3';\nimport type { DSChartT } from '../react-desc-prop-types.js';\nimport { timeFormat, format, utcDay, utcMonth, utcWeek, utcYear } from 'd3';\n\nexport const AXIS_TYPE = {\n BAND: 'BAND',\n LINEAR: 'LINEAR',\n DATETIME: 'DATETIME',\n LOG: 'LOG',\n} as const;\n\nconst getInterval = (interval?: string) => {\n switch (interval) {\n case 'DAY':\n return utcDay;\n case 'MONTH':\n return utcMonth;\n case 'WEEK':\n return utcWeek;\n case 'YEAR':\n return utcYear;\n default:\n return null;\n }\n};\n\nexport class Scale {\n scale: ScaleBand<string> | ScaleLinear<number, number, never> | ScaleTime<number, number, never>;\n\n type: string;\n\n constructor(scale: ScaleBand<string> | ScaleLinear<number, number, never> | ScaleTime<number, number, never>) {\n this.type = '';\n this.scale = scale;\n }\n\n getBandwidth() {\n return 0;\n }\n}\nexport class BandScale extends Scale {\n type: keyof typeof AXIS_TYPE;\n\n scale: ScaleBand<string>;\n\n axisProps: DSChartT.AxisT;\n\n constructor(scale: ScaleBand<string>, axisProps: DSChartT.AxisT) {\n super(scale);\n this.scale = scale;\n this.type = 'BAND';\n this.axisProps = axisProps;\n }\n\n get(value: string) {\n if (typeof value !== 'string') return 0;\n return this.scale(value);\n }\n\n getTicks() {\n return this.scale.domain();\n }\n\n getTickFormatted(t: number | string | Date) {\n if (typeof t !== 'string') return t;\n if (typeof this.axisProps?.tick?.tickFormat === 'function') {\n return this.axisProps?.tick?.tickFormat(t);\n }\n return t;\n }\n\n getTicksScaled() {\n return this.scale.domain().map((d) => (this.get(d) ?? 0) + this.getBandwidth() / 2);\n }\n\n getBandwidth() {\n return this.scale.bandwidth();\n }\n}\n\nexport class LinearScale extends Scale {\n type: keyof typeof AXIS_TYPE;\n\n scale: ScaleLinear<number, number, never>;\n\n axisProps: DSChartT.AxisT;\n\n constructor(scale: ScaleLinear<number, number, never>, axisProps: DSChartT.AxisT) {\n super(scale);\n this.scale = scale;\n this.type = 'LINEAR';\n this.axisProps = axisProps;\n }\n\n get(value: number) {\n if (typeof value !== 'number') return 0;\n return this.scale(value);\n }\n\n getTickFormatted(t: number | string | Date) {\n if (typeof t !== 'number') return t.toString();\n if (typeof this.axisProps?.tick?.tickFormat === 'function') {\n return this.axisProps?.tick?.tickFormat(t);\n }\n if (typeof this.axisProps?.tick?.tickFormat === 'string') {\n return format(this.axisProps?.tick?.tickFormat)(t);\n }\n return t.toString();\n }\n\n getTicks(dimension: number) {\n const ticks = this.scale.ticks?.(this.axisProps?.tick?.tickCount ?? Math.ceil(dimension / 80));\n if (this.axisProps?.tick?.tickValues) {\n if (this.axisProps?.tick?.overwriteTicks) return this.axisProps?.tick?.tickValues;\n this.axisProps?.tick?.tickValues.forEach((t) => {\n if (typeof t !== 'number') return;\n const isTickAlreadyPresent = ticks.find((tick) => tick === t);\n if (isTickAlreadyPresent) return;\n ticks.push(t);\n });\n }\n return ticks;\n }\n\n getTicksScaled(dimension: number) {\n const ticks = this.getTicks(dimension);\n return ticks.map((t) => (typeof t === 'number' ? this.get(t) : 0));\n }\n}\n\nexport class LogScale extends LinearScale {\n type: keyof typeof AXIS_TYPE;\n\n scale: ScaleLogarithmic<number, number, never>;\n\n axisProps: DSChartT.AxisT;\n\n constructor(scale: ScaleLogarithmic<number, number, never>, axisProps: DSChartT.AxisT) {\n super(scale, axisProps);\n this.scale = scale;\n this.type = 'LOG';\n this.axisProps = axisProps;\n }\n\n getTickFormatted(t: number | string | Date) {\n if (typeof t !== 'number') return t.toString();\n if (typeof this.axisProps?.tick?.tickFormat === 'function') {\n return this.axisProps?.tick?.tickFormat(t);\n }\n if (typeof this.axisProps?.tick?.tickFormat === 'string') {\n return format(this.axisProps?.tick?.tickFormat)(t);\n }\n return format('~s')(t);\n }\n}\n\nexport class TimeLinearScale extends Scale {\n type: keyof typeof AXIS_TYPE;\n\n scale: ScaleTime<number, number, never>;\n\n axisProps: DSChartT.AxisT;\n\n constructor(scale: ScaleTime<number, number, never>, axisProps: DSChartT.AxisT) {\n super(scale);\n this.scale = scale;\n this.type = 'DATETIME';\n this.axisProps = axisProps;\n }\n\n get(value: Date) {\n if (typeof value !== 'object') return 0;\n return this.scale(value);\n }\n\n getTickFormatted(t: number | string | Date) {\n if (typeof t !== 'object') return t.toString();\n if (typeof this.axisProps?.tick?.tickFormat === 'function') {\n return this.axisProps?.tick?.tickFormat(t);\n }\n if (typeof this.axisProps?.tick?.tickFormat === 'string') {\n return timeFormat(this.axisProps?.tick?.tickFormat)(t);\n }\n return t.toString();\n }\n\n getTicks(dimension: number, intervalType?: string) {\n const interval = getInterval(intervalType);\n const finalTickConfig = interval || (this.axisProps?.tick?.tickCount ?? Math.ceil(dimension / 80));\n const ticks = this.scale.ticks?.(finalTickConfig as number);\n const ticksValues = this.axisProps?.tick?.tickValues;\n if (ticksValues) {\n if (this.axisProps?.tick?.overwriteTicks) return ticksValues;\n const newTicks = [] as Date[];\n ticks.forEach((t) => {\n if (typeof t !== 'object') return;\n const exists = ticksValues.some(\n (tickValue) => typeof tickValue === 'object' && tickValue.getTime() === t.getTime(),\n );\n if (!exists) newTicks.push(t);\n });\n return [...newTicks, ...ticksValues];\n }\n return ticks;\n }\n\n getTicksScaled(dimension: number, intervalType?: string) {\n const ticks = this.getTicks(dimension, intervalType);\n return ticks.map((t) => (typeof t === 'object' ? this.get(t) : 0));\n }\n}\n\nexport type ScaleT = BandScale | LinearScale | TimeLinearScale;\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/Area.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext, useMemo } from 'react';\nimport { area, line } from 'd3';\nimport { StyledArea } from '../styles.js';\nimport { ChartContext } from '../ChartContext.js';\nimport { getStackedData } from '../helpers/index.js';\nimport { Points } from './Points.js';\nimport { LINE, curveStyleMap } from '../../constants.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\n\nexport const Area: React.ComponentType<DSChartT.SerieComponentT> = ({ serie }) => {\n const { xScale, getXScaleValue, getY2ScaleValue, getYScaleValue, innerHeight, colorScale, stackedData } =\n useContext(ChartContext);\n\n const finalYScale = serie.scale === 'y2' ? getY2ScaleValue : getYScaleValue;\n\n const curveStyle = useMemo(() => curveStyleMap[serie.curveStyle ?? LINE.CURVE_STYLE.LINEAR], [serie.curveStyle]);\n const areaD3 = useMemo(() => {\n const serieWithStackedValues = getStackedData(stackedData, serie);\n if (serieWithStackedValues) {\n return area()\n .x((_, i) => getXScaleValue(serie.data[i]))\n .y0(([, y2]) => finalYScale(y2))\n .y1(([y1]) => finalYScale(y1))\n .curve(curveStyle)(serieWithStackedValues as [number, number][]);\n }\n return area()\n .x((_, i) => getXScaleValue(serie.data[i]))\n .y0(innerHeight)\n .y1((_, i) => getYScaleValue(serie.data[i]))\n .curve(curveStyle)(serie.data as unknown as [number, number][]);\n }, [stackedData, serie, innerHeight, curveStyle, getXScaleValue, finalYScale, getYScaleValue]);\n\n const lineD3 = useMemo(() => {\n const serieWithStackedValues = getStackedData(stackedData, serie);\n if (serieWithStackedValues) {\n return line()\n .x((_, i) => getXScaleValue(serie.data[i]))\n .y(([, y2]) => finalYScale(y2))\n .curve(curveStyle)(serieWithStackedValues as unknown as [number, number][]);\n }\n return line()\n .x((_, i) => getXScaleValue(serie.data[i]))\n .y((_, i) => getYScaleValue(serie.data[i]))\n .curve(curveStyle)(serie.data as unknown as [number, number][]);\n }, [stackedData, serie, curveStyle, getXScaleValue, finalYScale, getYScaleValue]);\n\n const xTranslate = (xScale?.getBandwidth() ?? 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) as string} />\n <StyledArea d={areaD3 ?? ''} fill={colorScale(serie.name) as string} />\n </g>\n </g>\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACkDjB,SACE,KADF;AAlDN,SAAgB,YAAY,eAAe;AAC3C,SAAS,MAAM,YAAY;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,oBAAoB;AAC7B,SAAS,sBAAsB;AAC/B,SAAS,cAAc;AACvB,SAAS,MAAM,qBAAqB;AAG7B,MAAM,OAAsD,CAAC,EAAE,MAAM,MAAM;AAChF,QAAM,EAAE,QAAQ,gBAAgB,iBAAiB,gBAAgB,aAAa,YAAY,YAAY,IACpG,WAAW,YAAY;AAEzB,QAAM,cAAc,MAAM,UAAU,OAAO,kBAAkB;AAE7D,QAAM,aAAa,QAAQ,MAAM,cAAc,MAAM,cAAc,KAAK,YAAY,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC;AAC/G,QAAM,SAAS,QAAQ,MAAM;AAC3B,UAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,QAAI,wBAAwB;AAC1B,aAAO,KAAK,EACT,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,YAAY,EAAE,CAAC,EAC9B,GAAG,CAAC,CAAC,EAAE,MAAM,YAAY,EAAE,CAAC,EAC5B,MAAM,UAAU,EAAE,sBAA4C;AAAA,IACnE;AACA,WAAO,KAAK,EACT,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,GAAG,WAAW,EACd,GAAG,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EAC1C,MAAM,UAAU,EAAE,MAAM,IAAqC;AAAA,EAClE,GAAG,CAAC,aAAa,OAAO,aAAa,YAAY,gBAAgB,aAAa,cAAc,CAAC;AAE7F,QAAM,SAAS,QAAQ,MAAM;AAC3B,UAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,QAAI,wBAAwB;AAC1B,aAAO,KAAK,EACT,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,YAAY,EAAE,CAAC,EAC7B,MAAM,UAAU,EAAE,sBAAuD;AAAA,IAC9E;AACA,WAAO,KAAK,EACT,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,MAAM,UAAU,EAAE,MAAM,IAAqC;AAAA,EAClE,GAAG,CAAC,aAAa,OAAO,YAAY,gBAAgB,aAAa,cAAc,CAAC;AAEhF,QAAM,cAAc,QAAQ,aAAa,KAAK,KAAK;AAEnD,SACE,oBAAC,OACC,+BAAC,OAAE,WAAW,aAAa,kBACzB;AAAA,wBAAC,UAAO,OAAc;AAAA,IACtB,oBAAC,UAAK,GAAG,UAAU,IAAI,MAAK,QAAO,aAAa,GAAG,QAAQ,WAAW,MAAM,IAAI,GAAa;AAAA,IAC7F,oBAAC,cAAW,GAAG,UAAU,IAAI,MAAM,WAAW,MAAM,IAAI,GAAa;AAAA,KACvE,GACF;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;ACkDjB,SACE,KADF;AAlDN,SAAgB,YAAY,eAAe;AAC3C,SAAS,MAAM,YAAY;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,oBAAoB;AAC7B,SAAS,sBAAsB;AAC/B,SAAS,cAAc;AACvB,SAAS,MAAM,qBAAqB;AAG7B,MAAM,OAAsD,CAAC,EAAE,MAAM,MAAM;AAChF,QAAM,EAAE,QAAQ,gBAAgB,iBAAiB,gBAAgB,aAAa,YAAY,YAAY,IACpG,WAAW,YAAY;AAEzB,QAAM,cAAc,MAAM,UAAU,OAAO,kBAAkB;AAE7D,QAAM,aAAa,QAAQ,MAAM,cAAc,MAAM,cAAc,KAAK,YAAY,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC;AAC/G,QAAM,SAAS,QAAQ,MAAM;AAC3B,UAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,QAAI,wBAAwB;AAC1B,aAAO,KAAK,EACT,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,YAAY,EAAE,CAAC,EAC9B,GAAG,CAAC,CAAC,EAAE,MAAM,YAAY,EAAE,CAAC,EAC5B,MAAM,UAAU,EAAE,sBAA4C;AAAA,IACnE;AACA,WAAO,KAAK,EACT,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,GAAG,WAAW,EACd,GAAG,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EAC1C,MAAM,UAAU,EAAE,MAAM,IAAqC;AAAA,EAClE,GAAG,CAAC,aAAa,OAAO,aAAa,YAAY,gBAAgB,aAAa,cAAc,CAAC;AAE7F,QAAM,SAAS,QAAQ,MAAM;AAC3B,UAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,QAAI,wBAAwB;AAC1B,aAAO,KAAK,EACT,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,YAAY,EAAE,CAAC,EAC7B,MAAM,UAAU,EAAE,sBAAuD;AAAA,IAC9E;AACA,WAAO,KAAK,EACT,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,MAAM,UAAU,EAAE,MAAM,IAAqC;AAAA,EAClE,GAAG,CAAC,aAAa,OAAO,YAAY,gBAAgB,aAAa,cAAc,CAAC;AAEhF,QAAM,cAAc,QAAQ,aAAa,KAAK,KAAK;AAEnD,SACE,oBAAC,OACC,+BAAC,OAAE,WAAW,aAAa,UAAU,QACnC;AAAA,wBAAC,UAAO,OAAc;AAAA,IACtB,oBAAC,UAAK,GAAG,UAAU,IAAI,MAAK,QAAO,aAAa,GAAG,QAAQ,WAAW,MAAM,IAAI,GAAa;AAAA,IAC7F,oBAAC,cAAW,GAAG,UAAU,IAAI,MAAM,WAAW,MAAM,IAAI,GAAa;AAAA,KACvE,GACF;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/Bars.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext } from 'react';\nimport { Rect } from './Rect.js';\nimport { ChartContext } from '../ChartContext.js';\nimport { A11yRegion } from '../parts/A11yRegion.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\n\nexport const Bars: React.ComponentType<DSChartT.SerieComponentT> = ({ serie }) => {\n const {\n innerHeight,\n xScale,\n getXScaleValue,\n getYScaleValue,\n getY2ScaleValue,\n subGroupScale,\n colorScale,\n getXValue,\n getYValue,\n chartId,\n } = useContext(ChartContext);\n const finalYScale = serie.scale === 'y2' ? getY2ScaleValue : getYScaleValue;\n\n const negativeSize = innerHeight - finalYScale(0);\n const positiveSize = innerHeight - negativeSize;\n\n return (\n <A11yRegion\n serieName={serie.name}\n clipPath={`url(#rect-focus-ring-${chartId})`}\n fill={colorScale(serie.name) as string}\n >\n {serie.data.map((bar) => {\n const x = getXValue(bar) as number;\n const y = getYValue(bar) as number;\n const xScaled = getXScaleValue(bar) ?? 0;\n const yScaled = finalYScale(bar) ?? 0;\n const width = subGroupScale?.bandwidth() ?? 0;\n const height = y > 0 ? positiveSize - yScaled : yScaled - finalYScale(0);\n const transformX =\n xScale?.type !== 'BAND' ? xScaled - width / 2 : ((subGroupScale && subGroupScale(serie.name)) ?? 0) + xScaled;\n\n const transformY = y > 0 ? finalYScale(0) - height : finalYScale(0);\n\n return (\n <g id={`${chartId}-${serie.name}-rects-${bar.key}`} 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 datum={bar}\n />\n </g>\n );\n })}\n </A11yRegion>\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;AC6CX;AA5CZ,SAAgB,kBAAkB;AAClC,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAGpB,MAAM,OAAsD,CAAC,EAAE,MAAM,MAAM;AAChF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,kBAAkB;AAE7D,QAAM,eAAe,cAAc,YAAY,CAAC;AAChD,QAAM,eAAe,cAAc;AAEnC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,MAAM;AAAA,MACjB,UAAU,wBAAwB;AAAA,MAClC,MAAM,WAAW,MAAM,IAAI;AAAA,MAE1B,gBAAM,KAAK,IAAI,CAAC,QAAQ;AACvB,cAAM,IAAI,UAAU,GAAG;AACvB,cAAM,IAAI,UAAU,GAAG;AACvB,cAAM,UAAU,eAAe,GAAG,KAAK;AACvC,cAAM,UAAU,YAAY,GAAG,KAAK;AACpC,cAAM,QAAQ,eAAe,UAAU,KAAK;AAC5C,cAAM,SAAS,IAAI,IAAI,eAAe,UAAU,UAAU,YAAY,CAAC;AACvE,cAAM,aACJ,QAAQ,SAAS,SAAS,UAAU,QAAQ,MAAM,iBAAiB,cAAc,MAAM,IAAI,MAAM,KAAK;AAExG,cAAM,aAAa,IAAI,IAAI,YAAY,CAAC,IAAI,SAAS,YAAY,CAAC;AAElE,eACE,oBAAC,OAAE,IAAI,GAAG,WAAW,MAAM,cAAc,IAAI,OAAqB,WAAW,aAAa,iBACxF;AAAA,UAAC;AAAA;AAAA,YACC,MAAM,MAAM;AAAA,YACZ,QAAQ;AAAA,YACR,QAAQ;AAAA,YACR;AAAA,YACA;AAAA,YACA,IAAI,IAAI;AAAA,YACR,GAAG;AAAA,YACH,YAAY,IAAI;AAAA,YAChB,OAAO;AAAA;AAAA,QACT,KAXuD,IAAI,GAY7D;AAAA,MAEJ,CAAC;AAAA;AAAA,EACH;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;AC6CX;AA5CZ,SAAgB,kBAAkB;AAClC,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAGpB,MAAM,OAAsD,CAAC,EAAE,MAAM,MAAM;AAChF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,kBAAkB;AAE7D,QAAM,eAAe,cAAc,YAAY,CAAC;AAChD,QAAM,eAAe,cAAc;AAEnC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,MAAM;AAAA,MACjB,UAAU,wBAAwB,OAAO;AAAA,MACzC,MAAM,WAAW,MAAM,IAAI;AAAA,MAE1B,gBAAM,KAAK,IAAI,CAAC,QAAQ;AACvB,cAAM,IAAI,UAAU,GAAG;AACvB,cAAM,IAAI,UAAU,GAAG;AACvB,cAAM,UAAU,eAAe,GAAG,KAAK;AACvC,cAAM,UAAU,YAAY,GAAG,KAAK;AACpC,cAAM,QAAQ,eAAe,UAAU,KAAK;AAC5C,cAAM,SAAS,IAAI,IAAI,eAAe,UAAU,UAAU,YAAY,CAAC;AACvE,cAAM,aACJ,QAAQ,SAAS,SAAS,UAAU,QAAQ,MAAM,iBAAiB,cAAc,MAAM,IAAI,MAAM,KAAK;AAExG,cAAM,aAAa,IAAI,IAAI,YAAY,CAAC,IAAI,SAAS,YAAY,CAAC;AAElE,eACE,oBAAC,OAAE,IAAI,GAAG,OAAO,IAAI,MAAM,IAAI,UAAU,IAAI,GAAG,IAAkB,WAAW,aAAa,UAAU,OAClG;AAAA,UAAC;AAAA;AAAA,YACC,MAAM,MAAM;AAAA,YACZ,QAAQ;AAAA,YACR,QAAQ;AAAA,YACR;AAAA,YACA;AAAA,YACA,IAAI,IAAI;AAAA,YACR,GAAG;AAAA,YACH,YAAY,IAAI;AAAA,YAChB,OAAO;AAAA;AAAA,QACT,KAXuD,IAAI,GAY7D;AAAA,MAEJ,CAAC;AAAA;AAAA,EACH;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/HorizontalBars.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useMemo } from 'react';\nimport { Rect } from './Rect.js';\nimport { ChartContext } from '../ChartContext.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\n\nexport const HorizontalBars = ({ serie }: DSChartT.SerieComponentT) => {\n const {\n innerWidth,\n subGroupScale,\n getYScaleValue,\n getY2ScaleValue,\n getXScaleValue,\n colorScale,\n getXValue,\n getYValue,\n chartId,\n } = useContext(ChartContext);\n const finalYScale = serie.scale === 'y2' ? getY2ScaleValue : getYScaleValue;\n const negativeSize = innerWidth - getXScaleValue(0);\n const positiveSize = innerWidth - negativeSize;\n\n return useMemo(\n () => (\n <g fill={colorScale(serie.name) as string} clipPath={`url(#rect-focus-ring-${chartId})`}>\n {serie.data.map((bar) => {\n const x = getXValue(bar) as number;\n const y = getYValue(bar) as number;\n const xScaled = getXScaleValue(bar) ?? 0;\n const width = x < 0 ? positiveSize - xScaled : xScaled - getXScaleValue(0);\n const height = subGroupScale?.bandwidth() ?? 0;\n const transformX = x < 0 ? getXScaleValue(0) - width : getXScaleValue(0);\n const transformY = ((subGroupScale && subGroupScale(serie.name)) ?? 0) + finalYScale(y);\n\n return (\n <g key={bar.key} transform={`translate(${transformX},${transformY})`}>\n <Rect\n datum={bar}\n name={serie.name}\n width={width}\n height={height}\n id={bar.key}\n x={0}\n xValue={x}\n yValue={y}\n />\n </g>\n );\n })}\n </g>\n ),\n [\n chartId,\n colorScale,\n finalYScale,\n getXScaleValue,\n getXValue,\n getYValue,\n positiveSize,\n serie.data,\n serie.name,\n subGroupScale,\n ],\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACoCT;AAnCd,SAAgB,YAAY,eAAe;AAC3C,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAGtB,MAAM,iBAAiB,CAAC,EAAE,MAAM,MAAgC;AACrE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,kBAAkB;AAC7D,QAAM,eAAe,aAAa,eAAe,CAAC;AAClD,QAAM,eAAe,aAAa;AAElC,SAAO;AAAA,IACL,MACE,oBAAC,OAAE,MAAM,WAAW,MAAM,IAAI,GAAa,UAAU,wBAAwB,YAC1E,gBAAM,KAAK,IAAI,CAAC,QAAQ;AACvB,YAAM,IAAI,UAAU,GAAG;AACvB,YAAM,IAAI,UAAU,GAAG;AACvB,YAAM,UAAU,eAAe,GAAG,KAAK;AACvC,YAAM,QAAQ,IAAI,IAAI,eAAe,UAAU,UAAU,eAAe,CAAC;AACzE,YAAM,SAAS,eAAe,UAAU,KAAK;AAC7C,YAAM,aAAa,IAAI,IAAI,eAAe,CAAC,IAAI,QAAQ,eAAe,CAAC;AACvE,YAAM,eAAe,iBAAiB,cAAc,MAAM,IAAI,MAAM,KAAK,YAAY,CAAC;AAEtF,aACE,oBAAC,OAAgB,WAAW,aAAa,cAAc,eACrD;AAAA,QAAC;AAAA;AAAA,UACC,OAAO;AAAA,UACP,MAAM,MAAM;AAAA,UACZ;AAAA,UACA;AAAA,UACA,IAAI,IAAI;AAAA,UACR,GAAG;AAAA,UACH,QAAQ;AAAA,UACR,QAAQ;AAAA;AAAA,MACV,KAVM,IAAI,GAWZ;AAAA,IAEJ,CAAC,GACH;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,IACF;AAAA,EACF;AACF;",
5
+ "mappings": "AAAA,YAAY,WAAW;ACoCT;AAnCd,SAAgB,YAAY,eAAe;AAC3C,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAGtB,MAAM,iBAAiB,CAAC,EAAE,MAAM,MAAgC;AACrE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,kBAAkB;AAC7D,QAAM,eAAe,aAAa,eAAe,CAAC;AAClD,QAAM,eAAe,aAAa;AAElC,SAAO;AAAA,IACL,MACE,oBAAC,OAAE,MAAM,WAAW,MAAM,IAAI,GAAa,UAAU,wBAAwB,OAAO,KACjF,gBAAM,KAAK,IAAI,CAAC,QAAQ;AACvB,YAAM,IAAI,UAAU,GAAG;AACvB,YAAM,IAAI,UAAU,GAAG;AACvB,YAAM,UAAU,eAAe,GAAG,KAAK;AACvC,YAAM,QAAQ,IAAI,IAAI,eAAe,UAAU,UAAU,eAAe,CAAC;AACzE,YAAM,SAAS,eAAe,UAAU,KAAK;AAC7C,YAAM,aAAa,IAAI,IAAI,eAAe,CAAC,IAAI,QAAQ,eAAe,CAAC;AACvE,YAAM,eAAe,iBAAiB,cAAc,MAAM,IAAI,MAAM,KAAK,YAAY,CAAC;AAEtF,aACE,oBAAC,OAAgB,WAAW,aAAa,UAAU,IAAI,UAAU,KAC/D;AAAA,QAAC;AAAA;AAAA,UACC,OAAO;AAAA,UACP,MAAM,MAAM;AAAA,UACZ;AAAA,UACA;AAAA,UACA,IAAI,IAAI;AAAA,UACR,GAAG;AAAA,UACH,QAAQ;AAAA,UACR,QAAQ;AAAA;AAAA,MACV,KAVM,IAAI,GAWZ;AAAA,IAEJ,CAAC,GACH;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,IACF;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/HorizontalStackedBars.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useMemo } from 'react';\nimport { Rect } from './Rect.js';\nimport { ChartContext } from '../ChartContext.js';\nimport { getStackedData, getStackedIndex } from '../helpers/index.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\n\nexport const HorizontalStackedBars = ({ serie }: DSChartT.SerieComponentT) => {\n const {\n props: { groups },\n yScale,\n stackedData,\n subGroupScale,\n colorScale,\n chartId,\n getXScaleValue,\n getYValue,\n } = useContext(ChartContext);\n const serieWithStackedValues = getStackedData(stackedData, serie);\n const stackIndex = getStackedIndex(groups, serie.name);\n\n return useMemo(\n () => (\n <g>\n {serie.data.map((bar, i) => {\n const sequence = serieWithStackedValues ? serieWithStackedValues[bar.position] : [0, 0];\n const sequence0 = getXScaleValue(sequence[0]);\n const sequence1 = getXScaleValue(sequence[1]);\n const isFloorStack = sequence[0] === 0;\n const xValue = sequence[1] - sequence[0];\n const yValue = getYValue(serie.data[i]) as number;\n\n const width = sequence1 - sequence0 - (!isFloorStack ? 2 : 0);\n\n const height = subGroupScale?.bandwidth() ?? 0;\n const transformX = sequence0 + (!isFloorStack ? 2 : 0);\n const transformY =\n (subGroupScale ? subGroupScale(`stacked-data-${stackIndex}`) ?? 0 : 0) +\n (yScale?.get(yValue as never) ?? 0);\n return (\n <g key={serie.data[i]?.key} clipPath={`url(#rect-focus-ring-${chartId})`}>\n <g fill={colorScale(serie.name) as string} 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 datum={serie.data[i]}\n />\n </g>\n </g>\n );\n })}\n </g>\n ),\n [\n chartId,\n colorScale,\n getXScaleValue,\n getYValue,\n serie.data,\n serie.name,\n serieWithStackedValues,\n stackIndex,\n subGroupScale,\n yScale,\n ],\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;AC0CP;AAzChB,SAAgB,YAAY,eAAe;AAC3C,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAC7B,SAAS,gBAAgB,uBAAuB;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,IAAI,WAAW,YAAY;AAC3B,QAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,QAAM,aAAa,gBAAgB,QAAQ,MAAM,IAAI;AAErD,SAAO;AAAA,IACL,MACE,oBAAC,OACE,gBAAM,KAAK,IAAI,CAAC,KAAK,MAAM;AAC1B,YAAM,WAAW,yBAAyB,uBAAuB,IAAI,QAAQ,IAAI,CAAC,GAAG,CAAC;AACtF,YAAM,YAAY,eAAe,SAAS,CAAC,CAAC;AAC5C,YAAM,YAAY,eAAe,SAAS,CAAC,CAAC;AAC5C,YAAM,eAAe,SAAS,CAAC,MAAM;AACrC,YAAM,SAAS,SAAS,CAAC,IAAI,SAAS,CAAC;AACvC,YAAM,SAAS,UAAU,MAAM,KAAK,CAAC,CAAC;AAEtC,YAAM,QAAQ,YAAY,aAAa,CAAC,eAAe,IAAI;AAE3D,YAAM,SAAS,eAAe,UAAU,KAAK;AAC7C,YAAM,aAAa,aAAa,CAAC,eAAe,IAAI;AACpD,YAAM,cACH,gBAAgB,cAAc,gBAAgB,YAAY,KAAK,IAAI,MACnE,QAAQ,IAAI,MAAe,KAAK;AACnC,aACE,oBAAC,OAA2B,UAAU,wBAAwB,YAC5D,8BAAC,OAAE,MAAM,WAAW,MAAM,IAAI,GAAa,WAAW,gBAAgB,eACpE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,GAAG;AAAA,UACH;AAAA,UACA;AAAA,UACA,IAAI,MAAM,KAAK,CAAC,GAAG;AAAA,UACnB,MAAM,MAAM;AAAA,UACZ,OAAO,MAAM,KAAK,CAAC;AAAA;AAAA,MACrB,GACF,KAZM,MAAM,KAAK,CAAC,GAAG,GAavB;AAAA,IAEJ,CAAC,GACH;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;",
5
+ "mappings": "AAAA,YAAY,WAAW;AC0CP;AAzChB,SAAgB,YAAY,eAAe;AAC3C,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAC7B,SAAS,gBAAgB,uBAAuB;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,IAAI,WAAW,YAAY;AAC3B,QAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,QAAM,aAAa,gBAAgB,QAAQ,MAAM,IAAI;AAErD,SAAO;AAAA,IACL,MACE,oBAAC,OACE,gBAAM,KAAK,IAAI,CAAC,KAAK,MAAM;AAC1B,YAAM,WAAW,yBAAyB,uBAAuB,IAAI,QAAQ,IAAI,CAAC,GAAG,CAAC;AACtF,YAAM,YAAY,eAAe,SAAS,CAAC,CAAC;AAC5C,YAAM,YAAY,eAAe,SAAS,CAAC,CAAC;AAC5C,YAAM,eAAe,SAAS,CAAC,MAAM;AACrC,YAAM,SAAS,SAAS,CAAC,IAAI,SAAS,CAAC;AACvC,YAAM,SAAS,UAAU,MAAM,KAAK,CAAC,CAAC;AAEtC,YAAM,QAAQ,YAAY,aAAa,CAAC,eAAe,IAAI;AAE3D,YAAM,SAAS,eAAe,UAAU,KAAK;AAC7C,YAAM,aAAa,aAAa,CAAC,eAAe,IAAI;AACpD,YAAM,cACH,gBAAgB,cAAc,gBAAgB,UAAU,EAAE,KAAK,IAAI,MACnE,QAAQ,IAAI,MAAe,KAAK;AACnC,aACE,oBAAC,OAA2B,UAAU,wBAAwB,OAAO,KACnE,8BAAC,OAAE,MAAM,WAAW,MAAM,IAAI,GAAa,WAAW,gBAAgB,UAAU,KAC9E;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,GAAG;AAAA,UACH;AAAA,UACA;AAAA,UACA,IAAI,MAAM,KAAK,CAAC,GAAG;AAAA,UACnB,MAAM,MAAM;AAAA,UACZ,OAAO,MAAM,KAAK,CAAC;AAAA;AAAA,MACrB,GACF,KAZM,MAAM,KAAK,CAAC,GAAG,GAavB;AAAA,IAEJ,CAAC,GACH;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -20,8 +20,7 @@ const Line = ({ serie }) => {
20
20
  [curveStyle, getXScaleValue, currentYScale, serie.data]
21
21
  );
22
22
  useEffect(() => {
23
- if (!ref.current)
24
- return;
23
+ if (!ref.current) return;
25
24
  const groupContent = select(ref?.current);
26
25
  groupContent.selectAll("*").remove();
27
26
  const path = groupContent.append("path").datum(serie.data).attr("fill", "none").attr("stroke", colorScale(serie.name)).attr("stroke-linejoin", "round").attr("stroke-width", 2).attr("d", lineD3);
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/Line.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext, useEffect, useMemo, useRef } from 'react';\nimport { line, select } from 'd3';\nimport { Points } from './Points.js';\nimport { ChartContext } from '../ChartContext.js';\nimport { LINE, curveStyleMap } from '../../constants.js';\nimport { DataVizDataTestIds } from '../DataTestIds.js';\nimport { A11yRegion } from '../parts/A11yRegion.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\n\ninterface LineSerieT {\n serie: DSChartT.InternalSerie;\n}\nexport const Line: React.ComponentType<LineSerieT> = ({ serie }) => {\n const { xScale, colorScale, getYScaleValue, getY2ScaleValue, getXScaleValue, getXValue, getYValue } =\n useContext(ChartContext);\n\n const ref = useRef<SVGGElement>(null);\n\n const curveStyle = useMemo(() => curveStyleMap[serie.curveStyle ?? LINE.CURVE_STYLE.LINEAR], [serie.curveStyle]);\n\n const currentYScale = useMemo(\n () => (serie.scale === 'y2' ? getY2ScaleValue : getYScaleValue),\n [getY2ScaleValue, getYScaleValue, serie.scale],\n );\n const lineD3 = useMemo(\n () =>\n line()\n .x((_, i) => getXScaleValue(serie.data[i]))\n .y((_, i) => currentYScale(serie.data[i]))\n .curve(curveStyle),\n [curveStyle, getXScaleValue, currentYScale, serie.data],\n ) as unknown as string;\n\n useEffect(() => {\n if (!ref.current) return;\n\n const groupContent = select(ref?.current);\n\n groupContent.selectAll('*').remove();\n const path = groupContent\n .append('path')\n .datum(serie.data)\n .attr('fill', 'none')\n .attr('stroke', colorScale(serie.name) as string)\n .attr('stroke-linejoin', 'round')\n .attr('stroke-width', 2)\n .attr('d', lineD3);\n\n if (serie.dashStyle)\n path.attr('stroke-dasharray', LINE.DASH_STYLE_VALUES[serie.dashStyle as keyof typeof LINE.DASH_STYLE_VALUES]);\n }, [colorScale, getXValue, getYValue, lineD3, serie, xScale]);\n\n // we need to center the points and lines when\n // using them in a band axis context\n const xTranslate = useMemo(() => (xScale?.getBandwidth?.() ?? 0) / 2, [xScale]);\n\n return (\n <A11yRegion serieName={serie.name} transform={`translate(${xTranslate}, 0)`}>\n <g ref={ref} data-testid={DataVizDataTestIds.LINE} />\n <Points serie={serie} />\n </A11yRegion>\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACyDnB,SACE,KADF;AAzDJ,SAAgB,YAAY,WAAW,SAAS,cAAc;AAC9D,SAAS,MAAM,cAAc;AAC7B,SAAS,cAAc;AACvB,SAAS,oBAAoB;AAC7B,SAAS,MAAM,qBAAqB;AACpC,SAAS,0BAA0B;AACnC,SAAS,kBAAkB;AAMpB,MAAM,OAAwC,CAAC,EAAE,MAAM,MAAM;AAClE,QAAM,EAAE,QAAQ,YAAY,gBAAgB,iBAAiB,gBAAgB,WAAW,UAAU,IAChG,WAAW,YAAY;AAEzB,QAAM,MAAM,OAAoB,IAAI;AAEpC,QAAM,aAAa,QAAQ,MAAM,cAAc,MAAM,cAAc,KAAK,YAAY,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC;AAE/G,QAAM,gBAAgB;AAAA,IACpB,MAAO,MAAM,UAAU,OAAO,kBAAkB;AAAA,IAChD,CAAC,iBAAiB,gBAAgB,MAAM,KAAK;AAAA,EAC/C;AACA,QAAM,SAAS;AAAA,IACb,MACE,KAAK,EACF,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,EAAE,CAAC,GAAG,MAAM,cAAc,MAAM,KAAK,CAAC,CAAC,CAAC,EACxC,MAAM,UAAU;AAAA,IACrB,CAAC,YAAY,gBAAgB,eAAe,MAAM,IAAI;AAAA,EACxD;AAEA,YAAU,MAAM;AACd,QAAI,CAAC,IAAI;AAAS;AAElB,UAAM,eAAe,OAAO,KAAK,OAAO;AAExC,iBAAa,UAAU,GAAG,EAAE,OAAO;AACnC,UAAM,OAAO,aACV,OAAO,MAAM,EACb,MAAM,MAAM,IAAI,EAChB,KAAK,QAAQ,MAAM,EACnB,KAAK,UAAU,WAAW,MAAM,IAAI,CAAW,EAC/C,KAAK,mBAAmB,OAAO,EAC/B,KAAK,gBAAgB,CAAC,EACtB,KAAK,KAAK,MAAM;AAEnB,QAAI,MAAM;AACR,WAAK,KAAK,oBAAoB,KAAK,kBAAkB,MAAM,SAAgD,CAAC;AAAA,EAChH,GAAG,CAAC,YAAY,WAAW,WAAW,QAAQ,OAAO,MAAM,CAAC;AAI5D,QAAM,aAAa,QAAQ,OAAO,QAAQ,eAAe,KAAK,KAAK,GAAG,CAAC,MAAM,CAAC;AAE9E,SACE,qBAAC,cAAW,WAAW,MAAM,MAAM,WAAW,aAAa,kBACzD;AAAA,wBAAC,OAAE,KAAU,eAAa,mBAAmB,MAAM;AAAA,IACnD,oBAAC,UAAO,OAAc;AAAA,KACxB;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;ACyDnB,SACE,KADF;AAzDJ,SAAgB,YAAY,WAAW,SAAS,cAAc;AAC9D,SAAS,MAAM,cAAc;AAC7B,SAAS,cAAc;AACvB,SAAS,oBAAoB;AAC7B,SAAS,MAAM,qBAAqB;AACpC,SAAS,0BAA0B;AACnC,SAAS,kBAAkB;AAMpB,MAAM,OAAwC,CAAC,EAAE,MAAM,MAAM;AAClE,QAAM,EAAE,QAAQ,YAAY,gBAAgB,iBAAiB,gBAAgB,WAAW,UAAU,IAChG,WAAW,YAAY;AAEzB,QAAM,MAAM,OAAoB,IAAI;AAEpC,QAAM,aAAa,QAAQ,MAAM,cAAc,MAAM,cAAc,KAAK,YAAY,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC;AAE/G,QAAM,gBAAgB;AAAA,IACpB,MAAO,MAAM,UAAU,OAAO,kBAAkB;AAAA,IAChD,CAAC,iBAAiB,gBAAgB,MAAM,KAAK;AAAA,EAC/C;AACA,QAAM,SAAS;AAAA,IACb,MACE,KAAK,EACF,EAAE,CAAC,GAAG,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,EACzC,EAAE,CAAC,GAAG,MAAM,cAAc,MAAM,KAAK,CAAC,CAAC,CAAC,EACxC,MAAM,UAAU;AAAA,IACrB,CAAC,YAAY,gBAAgB,eAAe,MAAM,IAAI;AAAA,EACxD;AAEA,YAAU,MAAM;AACd,QAAI,CAAC,IAAI,QAAS;AAElB,UAAM,eAAe,OAAO,KAAK,OAAO;AAExC,iBAAa,UAAU,GAAG,EAAE,OAAO;AACnC,UAAM,OAAO,aACV,OAAO,MAAM,EACb,MAAM,MAAM,IAAI,EAChB,KAAK,QAAQ,MAAM,EACnB,KAAK,UAAU,WAAW,MAAM,IAAI,CAAW,EAC/C,KAAK,mBAAmB,OAAO,EAC/B,KAAK,gBAAgB,CAAC,EACtB,KAAK,KAAK,MAAM;AAEnB,QAAI,MAAM;AACR,WAAK,KAAK,oBAAoB,KAAK,kBAAkB,MAAM,SAAgD,CAAC;AAAA,EAChH,GAAG,CAAC,YAAY,WAAW,WAAW,QAAQ,OAAO,MAAM,CAAC;AAI5D,QAAM,aAAa,QAAQ,OAAO,QAAQ,eAAe,KAAK,KAAK,GAAG,CAAC,MAAM,CAAC;AAE9E,SACE,qBAAC,cAAW,WAAW,MAAM,MAAM,WAAW,aAAa,UAAU,QACnE;AAAA,wBAAC,OAAE,KAAU,eAAa,mBAAmB,MAAM;AAAA,IACnD,oBAAC,UAAO,OAAc;AAAA,KACxB;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -120,12 +120,10 @@ const Point = ({
120
120
  yValueFormatted
121
121
  ]);
122
122
  const handleMouseEnter = useCallback(() => {
123
- if (!scrapper)
124
- setActivePoint(datum);
123
+ if (!scrapper) setActivePoint(datum);
125
124
  }, [datum, scrapper, setActivePoint]);
126
125
  const handleOnMouseLeave = useCallback(() => {
127
- if (!scrapper)
128
- setActivePoint(null);
126
+ if (!scrapper) setActivePoint(null);
129
127
  }, [scrapper, setActivePoint]);
130
128
  return /* @__PURE__ */ jsxs(Fragment, { children: [
131
129
  /* @__PURE__ */ jsxs(
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/Point.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useCallback, useMemo } from 'react';\nimport { ChartContext } from '../ChartContext.js';\nimport { FOCUS_RING, SCRAPPER, LINE } from '../../constants.js';\nimport { FocusableRegion } from '../parts/FocusableRegion.js';\nimport { TrendHighlight } from '../parts/TrendHighlight.js';\nimport { DataVizDataTestIds } from '../DataTestIds.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\ninterface PointProps {\n x: number;\n y: number;\n xValue: number;\n yValue: number;\n name: string;\n pointStyle: string;\n pointRadius: number;\n id: string;\n opacity: number;\n datum: DSChartT.InternalDatum;\n color: string;\n}\n\nexport const Point: React.ComponentType<PointProps> = ({\n x,\n y,\n xValue,\n yValue,\n name,\n pointStyle,\n pointRadius,\n id,\n opacity,\n datum,\n}) => {\n const {\n activePoint,\n scrapperPosY,\n scrapperPosX,\n getYValueFormatted,\n getXValueFormatted,\n setActivePoint,\n props: { scrapper, TooltipRenderer, withTrendHighlight, y2Axis, yAxis, xAxis },\n } = useContext(ChartContext);\n const finalYAxis = datum.scale === 'y2' ? y2Axis : yAxis;\n const yValueFormatted = getYValueFormatted(datum);\n const xValueFormatted = getXValueFormatted(datum);\n const isFocused = useMemo(() => {\n if (activePoint?.key === id) {\n return true;\n }\n if (scrapper?.type === SCRAPPER.TYPE_HORIZONTAL) {\n return y === scrapperPosY;\n }\n if (scrapper?.type === SCRAPPER.TYPE_VERTICAL) {\n return x === scrapperPosX;\n }\n return false;\n }, [activePoint, id, scrapper, y, scrapperPosY, x, scrapperPosX]);\n\n const point = useMemo(() => {\n const commonProps = {\n tabIndex: -1,\n ref: (_ref: SVGElement | null) => {\n if (isFocused) {\n _ref?.focus();\n }\n },\n 'aria-label': `${datum.serie} ${xAxis.label || ''} ${xValueFormatted} ${\n finalYAxis?.label || ''\n } ${yValueFormatted}`,\n role: 'img',\n };\n if (LINE.POINT_STYLE.DIAMOND === pointStyle) {\n const squareEdge = pointRadius * 2;\n\n return (\n <g transform=\"rotate(45)\">\n {isFocused ? (\n <rect\n x={-pointRadius - FOCUS_RING.STROKE_WIDTH}\n y={-pointRadius - FOCUS_RING.STROKE_WIDTH}\n width={squareEdge + FOCUS_RING.STROKE_WIDTH * 2}\n height={squareEdge + FOCUS_RING.STROKE_WIDTH * 2}\n fill=\"none\"\n stroke={FOCUS_RING.COLOR}\n strokeWidth={FOCUS_RING.STROKE_WIDTH}\n ></rect>\n ) : null}\n <rect {...commonProps} x={-pointRadius} y={-pointRadius} width={squareEdge} height={squareEdge}></rect>\n </g>\n );\n }\n if (LINE.POINT_STYLE.SQUARE === pointStyle) {\n const squareEdge = pointRadius * 2;\n\n return (\n <g>\n {isFocused ? (\n <rect\n x={-pointRadius - FOCUS_RING.STROKE_WIDTH}\n y={-pointRadius - FOCUS_RING.STROKE_WIDTH}\n width={squareEdge + FOCUS_RING.STROKE_WIDTH * 2}\n height={squareEdge + FOCUS_RING.STROKE_WIDTH * 2}\n fill=\"none\"\n stroke={FOCUS_RING.COLOR}\n strokeWidth={FOCUS_RING.STROKE_WIDTH}\n ></rect>\n ) : null}\n <rect {...commonProps} x={-pointRadius} y={-pointRadius} width={squareEdge} height={squareEdge}></rect>\n </g>\n );\n }\n\n return (\n <g>\n {isFocused ? (\n <g>\n <circle\n r={(pointRadius ?? LINE.DEFAULT_POINT_RADIUS) + FOCUS_RING.STROKE_WIDTH}\n fill=\"none\"\n stroke={FOCUS_RING.COLOR}\n strokeWidth={FOCUS_RING.STROKE_WIDTH}\n ></circle>\n </g>\n ) : null}\n <circle\n {...commonProps}\n r={pointRadius ?? (isFocused ? LINE.DEFAULT_POINT_RADIUS : 0)}\n opacity={opacity}\n ></circle>\n </g>\n );\n }, [\n datum.serie,\n finalYAxis?.label,\n isFocused,\n opacity,\n pointRadius,\n pointStyle,\n xAxis.label,\n xValueFormatted,\n yValueFormatted,\n ]);\n\n const handleMouseEnter = useCallback(() => {\n if (!scrapper) setActivePoint(datum);\n }, [datum, scrapper, setActivePoint]);\n\n const handleOnMouseLeave = useCallback(() => {\n if (!scrapper) setActivePoint(null);\n }, [scrapper, setActivePoint]);\n return (\n <>\n <g\n data-testid={DataVizDataTestIds.POINT}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n transform={`translate(${x},${y})`}\n >\n {point}\n {activePoint?.key === id && TooltipRenderer ? (\n <FocusableRegion\n id={id}\n width={(pointRadius ?? 3) * 4}\n height={(pointRadius ?? 3) * 4}\n style={{ transform: `translate(-${pointRadius ?? 3}px, -${pointRadius ?? 3}px)` }}\n content={<TooltipRenderer data={[{ name, yValue, xValue, datum }]} />}\n />\n ) : null}\n </g>\n {isFocused && withTrendHighlight ? <TrendHighlight currentDatum={datum} /> : null}\n </>\n );\n};\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/Points.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useMemo, useContext } from 'react';\nimport { Point } from './Point.js';\nimport { ChartContext } from '../ChartContext.js';\nimport { getStackedData } from '../helpers/index.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\n\nexport const Points: React.ComponentType<DSChartT.SerieComponentT> = ({ serie }) => {\n const {\n colorScale,\n getXValue,\n getYValue,\n getY2ScaleValue,\n getYScaleValue,\n getXScaleValue,\n stackedData,\n props: { types },\n } = useContext(ChartContext);\n const finalYScale = serie.scale === 'y2' ? getY2ScaleValue : getYScaleValue;\n\n const opacity = useMemo(() => (types === 'scatter' ? 0.8 : 1), [types]);\n return useMemo(\n () => (\n <g fill={colorScale(serie.name) as string}>\n {serie.data.map((point, i) => {\n const { pointRadius = 0, pointStyle = '' } = serie;\n // we need to recalculate the height with stacked data if is an AREA STACKED ELEMENT\n const serieWithStackedValues = getStackedData(stackedData, serie);\n const deltaY = serieWithStackedValues ? serieWithStackedValues[i][0] : 0;\n const x = getXValue(point) as number;\n const y = getYValue(point) as number;\n const xPosition = getXScaleValue(point) ?? 0;\n const yPosition = finalYScale(y + deltaY);\n return (\n <Point\n pointRadius={pointRadius}\n id={point.key}\n opacity={opacity}\n x={xPosition}\n y={yPosition}\n xValue={x}\n yValue={y}\n pointStyle={pointStyle}\n name={serie.name}\n datum={point}\n key={`${point.key}-p`}\n color={colorScale(serie.name) as string}\n />\n );\n })}\n </g>\n ),\n [colorScale, finalYScale, getXScaleValue, getXValue, getYValue, opacity, serie, stackedData],\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACkCX;AAjCZ,SAAgB,SAAS,kBAAkB;AAC3C,SAAS,aAAa;AACtB,SAAS,oBAAoB;AAC7B,SAAS,sBAAsB;AAGxB,MAAM,SAAwD,CAAC,EAAE,MAAM,MAAM;AAClF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO,EAAE,MAAM;AAAA,EACjB,IAAI,WAAW,YAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,kBAAkB;AAE7D,QAAM,UAAU,QAAQ,MAAO,UAAU,YAAY,MAAM,GAAI,CAAC,KAAK,CAAC;AACtE,SAAO;AAAA,IACL,MACE,oBAAC,OAAE,MAAM,WAAW,MAAM,IAAI,GAC3B,gBAAM,KAAK,IAAI,CAAC,OAAO,MAAM;AAC5B,YAAM,EAAE,cAAc,GAAG,aAAa,GAAG,IAAI;AAE7C,YAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,YAAM,SAAS,yBAAyB,uBAAuB,CAAC,EAAE,CAAC,IAAI;AACvE,YAAM,IAAI,UAAU,KAAK;AACzB,YAAM,IAAI,UAAU,KAAK;AACzB,YAAM,YAAY,eAAe,KAAK,KAAK;AAC3C,YAAM,YAAY,YAAY,IAAI,MAAM;AACxC,aACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,IAAI,MAAM;AAAA,UACV;AAAA,UACA,GAAG;AAAA,UACH,GAAG;AAAA,UACH,QAAQ;AAAA,UACR,QAAQ;AAAA,UACR;AAAA,UACA,MAAM,MAAM;AAAA,UACZ,OAAO;AAAA,UAEP,OAAO,WAAW,MAAM,IAAI;AAAA;AAAA,QADvB,GAAG,MAAM;AAAA,MAEhB;AAAA,IAEJ,CAAC,GACH;AAAA,IAEF,CAAC,YAAY,aAAa,gBAAgB,WAAW,WAAW,SAAS,OAAO,WAAW;AAAA,EAC7F;AACF;",
5
+ "mappings": "AAAA,YAAY,WAAW;ACkCX;AAjCZ,SAAgB,SAAS,kBAAkB;AAC3C,SAAS,aAAa;AACtB,SAAS,oBAAoB;AAC7B,SAAS,sBAAsB;AAGxB,MAAM,SAAwD,CAAC,EAAE,MAAM,MAAM;AAClF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO,EAAE,MAAM;AAAA,EACjB,IAAI,WAAW,YAAY;AAC3B,QAAM,cAAc,MAAM,UAAU,OAAO,kBAAkB;AAE7D,QAAM,UAAU,QAAQ,MAAO,UAAU,YAAY,MAAM,GAAI,CAAC,KAAK,CAAC;AACtE,SAAO;AAAA,IACL,MACE,oBAAC,OAAE,MAAM,WAAW,MAAM,IAAI,GAC3B,gBAAM,KAAK,IAAI,CAAC,OAAO,MAAM;AAC5B,YAAM,EAAE,cAAc,GAAG,aAAa,GAAG,IAAI;AAE7C,YAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,YAAM,SAAS,yBAAyB,uBAAuB,CAAC,EAAE,CAAC,IAAI;AACvE,YAAM,IAAI,UAAU,KAAK;AACzB,YAAM,IAAI,UAAU,KAAK;AACzB,YAAM,YAAY,eAAe,KAAK,KAAK;AAC3C,YAAM,YAAY,YAAY,IAAI,MAAM;AACxC,aACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,IAAI,MAAM;AAAA,UACV;AAAA,UACA,GAAG;AAAA,UACH,GAAG;AAAA,UACH,QAAQ;AAAA,UACR,QAAQ;AAAA,UACR;AAAA,UACA,MAAM,MAAM;AAAA,UACZ,OAAO;AAAA,UAEP,OAAO,WAAW,MAAM,IAAI;AAAA;AAAA,QADvB,GAAG,MAAM,GAAG;AAAA,MAEnB;AAAA,IAEJ,CAAC,GACH;AAAA,IAEF,CAAC,YAAY,aAAa,gBAAgB,WAAW,WAAW,SAAS,OAAO,WAAW;AAAA,EAC7F;AACF;",
6
6
  "names": []
7
7
  }
@@ -31,24 +31,19 @@ const Rect = ({
31
31
  const xValueFormatted = getXValueFormatted(datum);
32
32
  const isFocused = activePoint?.key === id;
33
33
  const clipPathSign = useMemo(() => {
34
- if (isHorizontal)
35
- return "";
36
- if (isNegative)
37
- return `url(#rects-negative-${chartId})`;
34
+ if (isHorizontal) return "";
35
+ if (isNegative) return `url(#rects-negative-${chartId})`;
38
36
  return `url(#rects-positive-${chartId})`;
39
37
  }, [chartId, isHorizontal, isNegative]);
40
38
  const transform = useMemo(() => {
41
- if (isHorizontal)
42
- return ``;
39
+ if (isHorizontal) return ``;
43
40
  return `scale(1,-1) translate(0,${-height})`;
44
41
  }, [height, isHorizontal]);
45
42
  const handleMouseEnter = useCallback(() => {
46
- if (!scrapper)
47
- setActivePoint(datum);
43
+ if (!scrapper) setActivePoint(datum);
48
44
  }, [datum, scrapper, setActivePoint]);
49
45
  const handleOnMouseLeave = useCallback(() => {
50
- if (!scrapper)
51
- setActivePoint(null);
46
+ if (!scrapper) setActivePoint(null);
52
47
  }, [scrapper, setActivePoint]);
53
48
  return useMemo(
54
49
  () => /* @__PURE__ */ jsx("g", { clipPath: clipPathSign, children: /* @__PURE__ */ jsxs(
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/Rect.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useMemo, useContext, useCallback } from 'react';\nimport { ChartContext } from '../ChartContext.js';\nimport { FOCUS_RING } from '../../constants.js';\nimport { FocusableRegion } from '../parts/FocusableRegion.js';\nimport { DataVizDataTestIds } from '../DataTestIds.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\ninterface RectProps {\n name: string;\n width: number;\n height: number;\n isNegative?: boolean;\n x?: number;\n y?: number;\n id: string;\n xValue: number;\n yValue: number;\n datum: DSChartT.InternalDatum;\n}\n\nexport const Rect: React.ComponentType<RectProps> = ({\n name,\n width,\n height,\n isNegative = false,\n x = 0,\n y = 0,\n id,\n xValue,\n yValue,\n datum,\n}) => {\n const {\n activePoint,\n chartId,\n isHorizontal,\n setActivePoint,\n getYValueFormatted,\n getXValueFormatted,\n props: { TooltipRenderer, scrapper, xAxis, yAxis, y2Axis },\n } = useContext(ChartContext);\n const finalYAxis = datum.scale === 'y2' ? y2Axis : yAxis;\n const yValueFormatted = getYValueFormatted(datum);\n const xValueFormatted = getXValueFormatted(datum);\n\n const isFocused = activePoint?.key === id;\n const clipPathSign = useMemo(() => {\n // @todo horizontal clip paths\n if (isHorizontal) return '';\n if (isNegative) return `url(#rects-negative-${chartId})`;\n return `url(#rects-positive-${chartId})`;\n }, [chartId, isHorizontal, isNegative]);\n\n const transform = useMemo(() => {\n if (isHorizontal) return ``;\n return `scale(1,-1) translate(0,${-height})`;\n }, [height, isHorizontal]);\n\n const handleMouseEnter = useCallback(() => {\n if (!scrapper) setActivePoint(datum);\n }, [datum, scrapper, setActivePoint]);\n\n const handleOnMouseLeave = useCallback(() => {\n if (!scrapper) setActivePoint(null);\n }, [scrapper, setActivePoint]);\n\n return useMemo(\n () => (\n <g clipPath={clipPathSign}>\n <g\n id={isFocused ? `data-focused-${chartId}` : ''}\n transform={transform}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n data-testid={DataVizDataTestIds.BAR}\n >\n {isFocused ? (\n <rect\n x={(isHorizontal ? x : 0) - FOCUS_RING.STROKE_WIDTH}\n y={(!isHorizontal ? -y : 0) - FOCUS_RING.STROKE_WIDTH}\n width={width + FOCUS_RING.OFFSET}\n height={height + FOCUS_RING.OFFSET}\n fill=\"none\"\n rx=\"1\"\n ry=\"1\"\n stroke={FOCUS_RING.COLOR}\n strokeWidth={FOCUS_RING.STROKE_WIDTH}\n ></rect>\n ) : null}\n <rect\n width={width}\n height={height}\n y={-y}\n x={x}\n aria-label={`${datum.serie} ${xAxis.label || ''} ${xValueFormatted} ${\n finalYAxis?.label || ''\n } ${yValueFormatted}`}\n role=\"img\"\n tabIndex={-1}\n ref={(_ref) => {\n if (isFocused) {\n _ref?.focus();\n }\n }}\n ></rect>\n {activePoint?.key === id && TooltipRenderer ? (\n <FocusableRegion\n id={id}\n y={y}\n x={x}\n width={width}\n height={height}\n transform={transform}\n content={<TooltipRenderer data={[{ name, yValue, xValue, datum }]} />}\n />\n ) : (\n ''\n )}\n </g>\n </g>\n ),\n [\n clipPathSign,\n isFocused,\n chartId,\n transform,\n handleMouseEnter,\n handleOnMouseLeave,\n isHorizontal,\n x,\n y,\n width,\n height,\n datum,\n xAxis.label,\n xValueFormatted,\n finalYAxis?.label,\n yValueFormatted,\n activePoint?.key,\n id,\n TooltipRenderer,\n name,\n yValue,\n xValue,\n ],\n );\n};\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/graphs/Chart/series/StackedBar.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext } from 'react';\nimport { Rect } from './Rect.js';\nimport { ChartContext } from '../ChartContext.js';\nimport { getStackedData, getStackedIndex } from '../helpers/index.js';\nimport type { DSChartT } from '../react-desc-prop-types.js';\n\nexport const StackedBar: React.ComponentType<DSChartT.SerieComponentT> = ({ serie }) => {\n const {\n props: { groups },\n xScale,\n yScale,\n stackedData,\n subGroupScale,\n colorScale,\n chartId,\n getXValue,\n getXScaleValue,\n } = useContext(ChartContext);\n\n const serieWithStackedValues = getStackedData(stackedData, serie);\n const stackIndex = getStackedIndex(groups, serie.name);\n return (\n <g clipPath={`url(#rect-focus-ring-${chartId})`}>\n {serie.data.map((bar, i) => {\n const sequence = serieWithStackedValues ? serieWithStackedValues[bar.position] : [0, 0];\n\n const isFloorStack = sequence[0] === 0;\n\n const xValue = getXValue(bar) as number;\n const xScaleValue = getXScaleValue(bar) ?? 0;\n const yValue = sequence[1] - sequence[0];\n const width = subGroupScale?.bandwidth() ?? 0;\n const height =\n (yScale?.get(sequence[0] as never) ?? 0) - (yScale?.get(sequence[1] as never) ?? 0) - (!isFloorStack ? 1 : 0);\n const transformY = (yScale?.get(sequence[1] as never) ?? 0) + (sequence[0] < 0 ? 2 : 0);\n\n const transformX =\n xScale?.type !== 'BAND'\n ? xScaleValue - width / 2\n : xScaleValue + (subGroupScale ? subGroupScale(`stacked-data-${stackIndex}`) ?? 0 : 0);\n return (\n <g key={serie.data[i].key} fill={colorScale(serie.name) as string} transform={`translate(${transformX},0)`}>\n <Rect\n width={width}\n height={height}\n xValue={xValue}\n yValue={yValue}\n y={transformY}\n id={serie.data[i].key}\n name={serie.name}\n datum={bar}\n />\n </g>\n );\n })}\n </g>\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;AC2CX;AA1CZ,SAAgB,kBAAkB;AAClC,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAC7B,SAAS,gBAAgB,uBAAuB;AAGzC,MAAM,aAA4D,CAAC,EAAE,MAAM,MAAM;AACtF,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO;AAAA,IAChB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,QAAM,aAAa,gBAAgB,QAAQ,MAAM,IAAI;AACrD,SACE,oBAAC,OAAE,UAAU,wBAAwB,YAClC,gBAAM,KAAK,IAAI,CAAC,KAAK,MAAM;AAC1B,UAAM,WAAW,yBAAyB,uBAAuB,IAAI,QAAQ,IAAI,CAAC,GAAG,CAAC;AAEtF,UAAM,eAAe,SAAS,CAAC,MAAM;AAErC,UAAM,SAAS,UAAU,GAAG;AAC5B,UAAM,cAAc,eAAe,GAAG,KAAK;AAC3C,UAAM,SAAS,SAAS,CAAC,IAAI,SAAS,CAAC;AACvC,UAAM,QAAQ,eAAe,UAAU,KAAK;AAC5C,UAAM,UACH,QAAQ,IAAI,SAAS,CAAC,CAAU,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,CAAU,KAAK,MAAM,CAAC,eAAe,IAAI;AAC7G,UAAM,cAAc,QAAQ,IAAI,SAAS,CAAC,CAAU,KAAK,MAAM,SAAS,CAAC,IAAI,IAAI,IAAI;AAErF,UAAM,aACJ,QAAQ,SAAS,SACb,cAAc,QAAQ,IACtB,eAAe,gBAAgB,cAAc,gBAAgB,YAAY,KAAK,IAAI;AACxF,WACE,oBAAC,OAA0B,MAAM,WAAW,MAAM,IAAI,GAAa,WAAW,aAAa,iBACzF;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,GAAG;AAAA,QACH,IAAI,MAAM,KAAK,CAAC,EAAE;AAAA,QAClB,MAAM,MAAM;AAAA,QACZ,OAAO;AAAA;AAAA,IACT,KAVM,MAAM,KAAK,CAAC,EAAE,GAWtB;AAAA,EAEJ,CAAC,GACH;AAEJ;",
5
+ "mappings": "AAAA,YAAY,WAAW;AC2CX;AA1CZ,SAAgB,kBAAkB;AAClC,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAC7B,SAAS,gBAAgB,uBAAuB;AAGzC,MAAM,aAA4D,CAAC,EAAE,MAAM,MAAM;AACtF,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO;AAAA,IAChB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,YAAY;AAE3B,QAAM,yBAAyB,eAAe,aAAa,KAAK;AAChE,QAAM,aAAa,gBAAgB,QAAQ,MAAM,IAAI;AACrD,SACE,oBAAC,OAAE,UAAU,wBAAwB,OAAO,KACzC,gBAAM,KAAK,IAAI,CAAC,KAAK,MAAM;AAC1B,UAAM,WAAW,yBAAyB,uBAAuB,IAAI,QAAQ,IAAI,CAAC,GAAG,CAAC;AAEtF,UAAM,eAAe,SAAS,CAAC,MAAM;AAErC,UAAM,SAAS,UAAU,GAAG;AAC5B,UAAM,cAAc,eAAe,GAAG,KAAK;AAC3C,UAAM,SAAS,SAAS,CAAC,IAAI,SAAS,CAAC;AACvC,UAAM,QAAQ,eAAe,UAAU,KAAK;AAC5C,UAAM,UACH,QAAQ,IAAI,SAAS,CAAC,CAAU,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,CAAU,KAAK,MAAM,CAAC,eAAe,IAAI;AAC7G,UAAM,cAAc,QAAQ,IAAI,SAAS,CAAC,CAAU,KAAK,MAAM,SAAS,CAAC,IAAI,IAAI,IAAI;AAErF,UAAM,aACJ,QAAQ,SAAS,SACb,cAAc,QAAQ,IACtB,eAAe,gBAAgB,cAAc,gBAAgB,UAAU,EAAE,KAAK,IAAI;AACxF,WACE,oBAAC,OAA0B,MAAM,WAAW,MAAM,IAAI,GAAa,WAAW,aAAa,UAAU,OACnG;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,GAAG;AAAA,QACH,IAAI,MAAM,KAAK,CAAC,EAAE;AAAA,QAClB,MAAM,MAAM;AAAA,QACZ,OAAO;AAAA;AAAA,IACT,KAVM,MAAM,KAAK,CAAC,EAAE,GAWtB;AAAA,EAEJ,CAAC,GACH;AAEJ;",
6
6
  "names": []
7
7
  }