@redsift/charts 11.6.0-muiv5-alpha.10 → 11.6.0-muiv5-alpha.11

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 (244) hide show
  1. package/{_internal → _virtual/_internal}/_rollupPluginBabelHelpers.js +1 -1
  2. package/package.json +2 -2
  3. package/packages/charts/src/_internal/config.js +15 -0
  4. package/packages/charts/src/_internal/config.js.map +1 -0
  5. package/{_internal → packages/charts/src/_internal}/scheme.js +1 -1
  6. package/packages/charts/src/_internal/scheme.js.map +1 -0
  7. package/packages/charts/src/components/Arc/_internal/Arc.js +3 -0
  8. package/{_internal → packages/charts/src/components/Arc/_internal}/Arc.js.map +1 -1
  9. package/{_internal → packages/charts/src/components/Arc/_internal}/Arc2.js +8 -51
  10. package/packages/charts/src/components/Arc/_internal/Arc2.js.map +1 -0
  11. package/packages/charts/src/components/Arc/_internal/styles.js +49 -0
  12. package/packages/charts/src/components/Arc/_internal/styles.js.map +1 -0
  13. package/packages/charts/src/components/Arcs/_internal/Arcs.js +3 -0
  14. package/{_internal → packages/charts/src/components/Arcs/_internal}/Arcs.js.map +1 -1
  15. package/{_internal → packages/charts/src/components/Arcs/_internal}/Arcs2.js +7 -11
  16. package/packages/charts/src/components/Arcs/_internal/Arcs2.js.map +1 -0
  17. package/packages/charts/src/components/Arcs/_internal/styles.js +9 -0
  18. package/packages/charts/src/components/Arcs/_internal/styles.js.map +1 -0
  19. package/packages/charts/src/components/Axis/_internal/Axis.js +4 -0
  20. package/{_internal → packages/charts/src/components/Axis/_internal}/Axis.js.map +1 -1
  21. package/{_internal → packages/charts/src/components/Axis/_internal}/Axis2.js +9 -186
  22. package/packages/charts/src/components/Axis/_internal/Axis2.js.map +1 -0
  23. package/packages/charts/src/components/Axis/_internal/computeTicks.js +117 -0
  24. package/packages/charts/src/components/Axis/_internal/computeTicks.js.map +1 -0
  25. package/packages/charts/src/components/Axis/_internal/styles.js +51 -0
  26. package/packages/charts/src/components/Axis/_internal/styles.js.map +1 -0
  27. package/packages/charts/src/components/Axis/_internal/types.js +24 -0
  28. package/packages/charts/src/components/Axis/_internal/types.js.map +1 -0
  29. package/packages/charts/src/components/Bar/_internal/Bar.js +4 -0
  30. package/{_internal → packages/charts/src/components/Bar/_internal}/Bar.js.map +1 -1
  31. package/{_internal → packages/charts/src/components/Bar/_internal}/Bar2.js +9 -84
  32. package/packages/charts/src/components/Bar/_internal/Bar2.js.map +1 -0
  33. package/packages/charts/src/components/Bar/_internal/styles.js +66 -0
  34. package/packages/charts/src/components/Bar/_internal/styles.js.map +1 -0
  35. package/packages/charts/src/components/Bar/_internal/types.js +18 -0
  36. package/packages/charts/src/components/Bar/_internal/types.js.map +1 -0
  37. package/packages/charts/src/components/BarChart/_internal/BarChart.js +4 -0
  38. package/{_internal → packages/charts/src/components/BarChart/_internal}/BarChart.js.map +1 -1
  39. package/packages/charts/src/components/BarChart/_internal/BarChart2.js +141 -0
  40. package/packages/charts/src/components/BarChart/_internal/BarChart2.js.map +1 -0
  41. package/packages/charts/src/components/BarChart/_internal/BarChartBars.js +168 -0
  42. package/packages/charts/src/components/BarChart/_internal/BarChartBars.js.map +1 -0
  43. package/packages/charts/src/components/BarChart/_internal/BarChartSection.js +139 -0
  44. package/packages/charts/src/components/BarChart/_internal/BarChartSection.js.map +1 -0
  45. package/packages/charts/src/components/BarChart/_internal/EmptyBarChart.js +57 -0
  46. package/packages/charts/src/components/BarChart/_internal/EmptyBarChart.js.map +1 -0
  47. package/packages/charts/src/components/BarChart/_internal/LoadingBarChart.js +18 -0
  48. package/packages/charts/src/components/BarChart/_internal/LoadingBarChart.js.map +1 -0
  49. package/packages/charts/src/components/BarChart/_internal/RenderedLinearBarChart.js +549 -0
  50. package/packages/charts/src/components/BarChart/_internal/RenderedLinearBarChart.js.map +1 -0
  51. package/packages/charts/src/components/BarChart/_internal/RenderedOrdinalBarChart.js +236 -0
  52. package/packages/charts/src/components/BarChart/_internal/RenderedOrdinalBarChart.js.map +1 -0
  53. package/packages/charts/src/components/BarChart/_internal/context.js +13 -0
  54. package/packages/charts/src/components/BarChart/_internal/context.js.map +1 -0
  55. package/packages/charts/src/components/BarChart/_internal/styles.js +71 -0
  56. package/packages/charts/src/components/BarChart/_internal/styles.js.map +1 -0
  57. package/packages/charts/src/components/BarChart/_internal/types.js +17 -0
  58. package/packages/charts/src/components/BarChart/_internal/types.js.map +1 -0
  59. package/packages/charts/src/components/BarChart/_internal/utils.js +69 -0
  60. package/packages/charts/src/components/BarChart/_internal/utils.js.map +1 -0
  61. package/packages/charts/src/components/BarChart/intl/_internal/en-US.js +17 -0
  62. package/packages/charts/src/components/BarChart/intl/_internal/en-US.js.map +1 -0
  63. package/packages/charts/src/components/BarChart/intl/_internal/fr-FR.js +17 -0
  64. package/packages/charts/src/components/BarChart/intl/_internal/fr-FR.js.map +1 -0
  65. package/packages/charts/src/components/BarChart/intl/index.js +10 -0
  66. package/packages/charts/src/components/BarChart/intl/index.js.map +1 -0
  67. package/packages/charts/src/components/ChartContainer/_internal/ChartContainer.js +3 -0
  68. package/{_internal → packages/charts/src/components/ChartContainer/_internal}/ChartContainer.js.map +1 -1
  69. package/{_internal → packages/charts/src/components/ChartContainer/_internal}/ChartContainer2.js +5 -104
  70. package/packages/charts/src/components/ChartContainer/_internal/ChartContainer2.js.map +1 -0
  71. package/packages/charts/src/components/ChartContainer/_internal/context.js +6 -0
  72. package/packages/charts/src/components/ChartContainer/_internal/context.js.map +1 -0
  73. package/packages/charts/src/components/ChartContainer/_internal/styles.js +76 -0
  74. package/packages/charts/src/components/ChartContainer/_internal/styles.js.map +1 -0
  75. package/packages/charts/src/components/ChartContainer/intl/_internal/en-US.js +14 -0
  76. package/packages/charts/src/components/ChartContainer/intl/_internal/en-US.js.map +1 -0
  77. package/packages/charts/src/components/ChartContainer/intl/_internal/fr-FR.js +14 -0
  78. package/packages/charts/src/components/ChartContainer/intl/_internal/fr-FR.js.map +1 -0
  79. package/packages/charts/src/components/ChartContainer/intl/index.js +10 -0
  80. package/packages/charts/src/components/ChartContainer/intl/index.js.map +1 -0
  81. package/packages/charts/src/components/DataPoint/_internal/DataPoint.js +3 -0
  82. package/{_internal → packages/charts/src/components/DataPoint/_internal}/DataPoint.js.map +1 -1
  83. package/{_internal → packages/charts/src/components/DataPoint/_internal}/DataPoint2.js +4 -10
  84. package/packages/charts/src/components/DataPoint/_internal/DataPoint2.js.map +1 -0
  85. package/packages/charts/src/components/DataPoint/_internal/styles.js +10 -0
  86. package/packages/charts/src/components/DataPoint/_internal/styles.js.map +1 -0
  87. package/packages/charts/src/components/Dot/_internal/Dot.js +4 -0
  88. package/{_internal → packages/charts/src/components/Dot/_internal}/Dot.js.map +1 -1
  89. package/{_internal → packages/charts/src/components/Dot/_internal}/Dot2.js +5 -60
  90. package/packages/charts/src/components/Dot/_internal/Dot2.js.map +1 -0
  91. package/packages/charts/src/components/Dot/_internal/styles.js +49 -0
  92. package/packages/charts/src/components/Dot/_internal/styles.js.map +1 -0
  93. package/packages/charts/src/components/Dot/_internal/types.js +14 -0
  94. package/packages/charts/src/components/Dot/_internal/types.js.map +1 -0
  95. package/packages/charts/src/components/Legend/_internal/Legend.js +3 -0
  96. package/{_internal → packages/charts/src/components/Legend/_internal}/Legend.js.map +1 -1
  97. package/{_internal/Legend3.js → packages/charts/src/components/Legend/_internal/Legend2.js} +6 -17
  98. package/packages/charts/src/components/Legend/_internal/Legend2.js.map +1 -0
  99. package/packages/charts/src/components/Legend/_internal/styles.js +15 -0
  100. package/packages/charts/src/components/Legend/_internal/styles.js.map +1 -0
  101. package/packages/charts/src/components/LegendItem/_internal/LegendItem.js +3 -0
  102. package/{_internal → packages/charts/src/components/LegendItem/_internal}/LegendItem.js.map +1 -1
  103. package/{_internal → packages/charts/src/components/LegendItem/_internal}/LegendItem2.js +6 -63
  104. package/packages/charts/src/components/LegendItem/_internal/LegendItem2.js.map +1 -0
  105. package/packages/charts/src/components/LegendItem/_internal/styles.js +63 -0
  106. package/packages/charts/src/components/LegendItem/_internal/styles.js.map +1 -0
  107. package/packages/charts/src/components/Line/_internal/Line.js +3 -0
  108. package/{_internal → packages/charts/src/components/Line/_internal}/Line.js.map +1 -1
  109. package/{_internal → packages/charts/src/components/Line/_internal}/Line2.js +7 -11
  110. package/packages/charts/src/components/Line/_internal/Line2.js.map +1 -0
  111. package/packages/charts/src/components/Line/_internal/styles.js +9 -0
  112. package/packages/charts/src/components/Line/_internal/styles.js.map +1 -0
  113. package/packages/charts/src/components/LineChart/_internal/EmptyLineChart.js +58 -0
  114. package/packages/charts/src/components/LineChart/_internal/EmptyLineChart.js.map +1 -0
  115. package/packages/charts/src/components/LineChart/_internal/LineChart.js +4 -0
  116. package/{_internal → packages/charts/src/components/LineChart/_internal}/LineChart.js.map +1 -1
  117. package/packages/charts/src/components/LineChart/_internal/LineChart2.js +96 -0
  118. package/packages/charts/src/components/LineChart/_internal/LineChart2.js.map +1 -0
  119. package/packages/charts/src/components/LineChart/_internal/LoadingLineChart.js +18 -0
  120. package/packages/charts/src/components/LineChart/_internal/LoadingLineChart.js.map +1 -0
  121. package/{_internal/LineChart2.js → packages/charts/src/components/LineChart/_internal/RenderedLineChart.js} +20 -317
  122. package/packages/charts/src/components/LineChart/_internal/RenderedLineChart.js.map +1 -0
  123. package/packages/charts/src/components/LineChart/_internal/styles.js +53 -0
  124. package/packages/charts/src/components/LineChart/_internal/styles.js.map +1 -0
  125. package/packages/charts/src/components/LineChart/_internal/types.js +17 -0
  126. package/packages/charts/src/components/LineChart/_internal/types.js.map +1 -0
  127. package/packages/charts/src/components/LineChart/_internal/utils.js +67 -0
  128. package/packages/charts/src/components/LineChart/_internal/utils.js.map +1 -0
  129. package/packages/charts/src/components/LineChart/intl/_internal/en-US.js +17 -0
  130. package/packages/charts/src/components/LineChart/intl/_internal/en-US.js.map +1 -0
  131. package/packages/charts/src/components/LineChart/intl/_internal/fr-FR.js +17 -0
  132. package/packages/charts/src/components/LineChart/intl/_internal/fr-FR.js.map +1 -0
  133. package/packages/charts/src/components/LineChart/intl/index.js +10 -0
  134. package/packages/charts/src/components/LineChart/intl/index.js.map +1 -0
  135. package/packages/charts/src/components/PieChart/_internal/EmptyPieChart.js +85 -0
  136. package/packages/charts/src/components/PieChart/_internal/EmptyPieChart.js.map +1 -0
  137. package/packages/charts/src/components/PieChart/_internal/LoadingPieChart.js +18 -0
  138. package/packages/charts/src/components/PieChart/_internal/LoadingPieChart.js.map +1 -0
  139. package/packages/charts/src/components/PieChart/_internal/PieChart.js +4 -0
  140. package/{_internal → packages/charts/src/components/PieChart/_internal}/PieChart.js.map +1 -1
  141. package/packages/charts/src/components/PieChart/_internal/PieChart2.js +98 -0
  142. package/packages/charts/src/components/PieChart/_internal/PieChart2.js.map +1 -0
  143. package/packages/charts/src/components/PieChart/_internal/RenderedPieChart.js +198 -0
  144. package/packages/charts/src/components/PieChart/_internal/RenderedPieChart.js.map +1 -0
  145. package/packages/charts/src/components/PieChart/_internal/styles.js +168 -0
  146. package/packages/charts/src/components/PieChart/_internal/styles.js.map +1 -0
  147. package/packages/charts/src/components/PieChart/_internal/types.js +27 -0
  148. package/packages/charts/src/components/PieChart/_internal/types.js.map +1 -0
  149. package/packages/charts/src/components/PieChart/_internal/utils.js +37 -0
  150. package/packages/charts/src/components/PieChart/_internal/utils.js.map +1 -0
  151. package/packages/charts/src/components/PieChart/intl/_internal/en-US.js +9 -0
  152. package/packages/charts/src/components/PieChart/intl/_internal/en-US.js.map +1 -0
  153. package/packages/charts/src/components/PieChart/intl/_internal/fr-FR.js +9 -0
  154. package/packages/charts/src/components/PieChart/intl/_internal/fr-FR.js.map +1 -0
  155. package/packages/charts/src/components/PieChart/intl/index.js +10 -0
  156. package/packages/charts/src/components/PieChart/intl/index.js.map +1 -0
  157. package/packages/charts/src/components/ScatterPlot/_internal/EmptyScatterPlot.js +58 -0
  158. package/packages/charts/src/components/ScatterPlot/_internal/EmptyScatterPlot.js.map +1 -0
  159. package/packages/charts/src/components/ScatterPlot/_internal/LoadingScatterPlot.js +18 -0
  160. package/packages/charts/src/components/ScatterPlot/_internal/LoadingScatterPlot.js.map +1 -0
  161. package/packages/charts/src/components/ScatterPlot/_internal/RenderedScatterPlot.js +354 -0
  162. package/packages/charts/src/components/ScatterPlot/_internal/RenderedScatterPlot.js.map +1 -0
  163. package/packages/charts/src/components/ScatterPlot/_internal/ScatterPlot.js +4 -0
  164. package/{_internal → packages/charts/src/components/ScatterPlot/_internal}/ScatterPlot.js.map +1 -1
  165. package/packages/charts/src/components/ScatterPlot/_internal/ScatterPlot2.js +105 -0
  166. package/packages/charts/src/components/ScatterPlot/_internal/ScatterPlot2.js.map +1 -0
  167. package/packages/charts/src/components/ScatterPlot/_internal/styles.js +53 -0
  168. package/packages/charts/src/components/ScatterPlot/_internal/styles.js.map +1 -0
  169. package/packages/charts/src/components/ScatterPlot/_internal/types.js +24 -0
  170. package/packages/charts/src/components/ScatterPlot/_internal/types.js.map +1 -0
  171. package/packages/charts/src/components/ScatterPlot/_internal/utils.js +70 -0
  172. package/packages/charts/src/components/ScatterPlot/_internal/utils.js.map +1 -0
  173. package/packages/charts/src/components/ScatterPlot/intl/_internal/en-US.js +12 -0
  174. package/packages/charts/src/components/ScatterPlot/intl/_internal/en-US.js.map +1 -0
  175. package/packages/charts/src/components/ScatterPlot/intl/_internal/fr-FR.js +17 -0
  176. package/packages/charts/src/components/ScatterPlot/intl/_internal/fr-FR.js.map +1 -0
  177. package/packages/charts/src/components/ScatterPlot/intl/index.js +10 -0
  178. package/packages/charts/src/components/ScatterPlot/intl/index.js.map +1 -0
  179. package/packages/charts/src/hooks/_internal/useBrush.js +48 -0
  180. package/packages/charts/src/hooks/_internal/useBrush.js.map +1 -0
  181. package/packages/charts/src/hooks/_internal/useColor.js +20 -0
  182. package/packages/charts/src/hooks/_internal/useColor.js.map +1 -0
  183. package/{_internal → packages/charts/src/hooks/_internal}/useFormatCategoricalData.js +4 -3
  184. package/packages/charts/src/hooks/_internal/useFormatCategoricalData.js.map +1 -0
  185. package/packages/charts/src/hooks/_internal/useZoom.js +39 -0
  186. package/packages/charts/src/hooks/_internal/useZoom.js.map +1 -0
  187. package/packages/charts/src/index.js +43 -0
  188. package/packages/charts/src/index.js.map +1 -0
  189. package/{_internal/legend2.js → packages/charts/src/types/_internal/legend.js} +2 -2
  190. package/packages/charts/src/types/_internal/legend.js.map +1 -0
  191. package/packages/charts/src/types/_internal/size.js +8 -0
  192. package/packages/charts/src/types/_internal/size.js.map +1 -0
  193. package/packages/charts/src/types/_internal/theme.js +13 -0
  194. package/packages/charts/src/types/_internal/theme.js.map +1 -0
  195. package/{_internal/theme.js → packages/charts/src/utils/index.js} +2 -37
  196. package/packages/charts/src/utils/index.js.map +1 -0
  197. package/packages/icons/src/components/mdi/_internal/mdiChevronDown.js +4 -0
  198. package/packages/icons/src/components/mdi/_internal/mdiChevronDown.js.map +1 -0
  199. package/packages/icons/src/components/mdi/_internal/mdiChevronRight.js +4 -0
  200. package/packages/icons/src/components/mdi/_internal/mdiChevronRight.js.map +1 -0
  201. package/packages/icons/src/components/mdi/_internal/mdiMouse.js +4 -0
  202. package/packages/icons/src/components/mdi/_internal/mdiMouse.js.map +1 -0
  203. package/_internal/Arc.js +0 -2
  204. package/_internal/Arc2.js.map +0 -1
  205. package/_internal/Arcs.js +0 -2
  206. package/_internal/Arcs2.js.map +0 -1
  207. package/_internal/Axis.js +0 -2
  208. package/_internal/Axis2.js.map +0 -1
  209. package/_internal/Bar.js +0 -2
  210. package/_internal/Bar2.js.map +0 -1
  211. package/_internal/BarChart.js +0 -2
  212. package/_internal/BarChart2.js +0 -1419
  213. package/_internal/BarChart2.js.map +0 -1
  214. package/_internal/ChartContainer.js +0 -2
  215. package/_internal/ChartContainer2.js.map +0 -1
  216. package/_internal/DataPoint.js +0 -2
  217. package/_internal/DataPoint2.js.map +0 -1
  218. package/_internal/Dot.js +0 -2
  219. package/_internal/Dot2.js.map +0 -1
  220. package/_internal/Legend.js +0 -2
  221. package/_internal/Legend3.js.map +0 -1
  222. package/_internal/LegendItem.js +0 -2
  223. package/_internal/LegendItem2.js.map +0 -1
  224. package/_internal/Line.js +0 -2
  225. package/_internal/Line2.js.map +0 -1
  226. package/_internal/LineChart.js +0 -2
  227. package/_internal/LineChart2.js.map +0 -1
  228. package/_internal/PieChart.js +0 -2
  229. package/_internal/PieChart2.js +0 -605
  230. package/_internal/PieChart2.js.map +0 -1
  231. package/_internal/ScatterPlot.js +0 -2
  232. package/_internal/ScatterPlot2.js +0 -740
  233. package/_internal/ScatterPlot2.js.map +0 -1
  234. package/_internal/config.js +0 -13
  235. package/_internal/config.js.map +0 -1
  236. package/_internal/legend2.js.map +0 -1
  237. package/_internal/scheme.js.map +0 -1
  238. package/_internal/theme.js.map +0 -1
  239. package/_internal/useFormatCategoricalData.js.map +0 -1
  240. package/index.js +0 -18
  241. package/index.js.map +0 -1
  242. package/index2.js +0 -16
  243. package/index2.js.map +0 -1
  244. /package/{_internal → _virtual/_internal}/_rollupPluginBabelHelpers.js.map +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../../../../../../src/components/ScatterPlot/types.ts"],"sourcesContent":["import {\n ChartDimensions,\n ChartSize,\n ChartTheme,\n TooltipVariant,\n DotDatum,\n CoordinatesCategoryData,\n ChartAxesProps,\n MarginProps,\n Statistics,\n} from '../../types';\nimport { Theme, ValueOf } from '@redsift/design-system';\nimport { ChartContainerProps } from '../ChartContainer';\nimport { MutableRefObject, ReactElement, ReactNode } from 'react';\nimport { DotProps } from '../Dot';\nimport { ScaleLinear as d3ScaleLinear } from 'd3';\nimport { LegendProps } from '../Legend';\nimport { SortingMethod } from '../../utils';\nimport { AnchorProps } from '../DataPoint';\n\n/**\n * Component variant.\n */\nexport const ScatterPlotVariant = {\n default: 'default',\n gridded: 'gridded',\n} as const;\nexport type ScatterPlotVariant = ValueOf<typeof ScatterPlotVariant>;\n\n/**\n * Component's labels variant.\n */\nexport const ScatterPlotLegendVariant = {\n none: 'none',\n externalLabel: 'externalLabel',\n externalLabelValue: 'externalLabelValue',\n externalLabelPercent: 'externalLabelPercent',\n custom: 'custom',\n} as const;\nexport type ScatterPlotLegendVariant = ValueOf<typeof ScatterPlotLegendVariant>;\n\ninterface LocaleText {\n emptyChartText: string;\n}\n\nexport type ScatterPlotDimensions = ChartDimensions & {\n fontSize: number;\n};\n\n/**\n * Component props.\n */\nexport interface ScatterPlotProps extends ChartContainerProps, ChartAxesProps {\n /** Dataset to use to generate the chart. */\n data?: CoordinatesCategoryData;\n /** Method used to define the anchor props to use when the dot is a navigation link. */\n getDotAnchorProps?: (datum: DotDatum) => AnchorProps;\n /** Dot role. If an onClick is provided, the dots will have the role `button`. For a navigation link, please use `getDotAnchorProps` instead. */\n dotRole?: DotProps['role'];\n /** Component to use if the chart is empty (replacing the default one). */\n emptyComponent?: ReactNode;\n /** Whether the Control Keys panel is displayed or not. */\n hideControlKeyPanel?: boolean;\n /** Whether the scatter plot dots are selectable using brush or not. */\n isBrushable?: boolean;\n /** Method to determine whether a dot is selected or not. */\n isDotSelected?: (datum: DotDatum) => boolean | undefined;\n /** Method to override the data point labels. */\n labelDecorator?: (\n datum: DotDatum,\n props?: { index?: number; isSelected?: boolean; color?: string }\n ) => string | ReactElement;\n /** Method modifying what's displayed within the legend when the legendVariant is \"custom\". */\n legendDecorator?: (\n datum: DotDatum,\n props?: { index?: number; isSelected?: boolean; color?: string }\n ) => string | ReactElement;\n /** Define whether the labels should be displayed inside or outside the charts and if they should contain raw or percentage values. If set to \"custom\", use `legendDecorator` to customize it. */\n legendVariant?: ScatterPlotLegendVariant;\n /** Props to forward to the Legend block. Can be used to make the legend selectable. */\n legendProps?: Omit<LegendProps, 'data' | 'ref' | 'variant' | 'width'> & {\n extraLegendItems?: Statistics;\n };\n /** Labels and texts. */\n localeText?: LocaleText;\n /** Custom margins, used to give more space for axes labels and legend for instance. */\n margins?: MarginProps;\n /** Method called on brush. */\n onBrush?: (\n selection: [[number, number], [number, number]] | null,\n scaleX: d3ScaleLinear<number, number>,\n scaleY: d3ScaleLinear<number, number>\n ) => void;\n /** Method called on brush end. */\n onBrushEnd?: (\n selection: [[number, number], [number, number]] | null,\n scaleX?: d3ScaleLinear<number, number>,\n scaleY?: d3ScaleLinear<number, number>\n ) => void;\n /** Method to be called on a click on a dot. For a navigation link, please use `getDotAnchorProps` instead. */\n onDotClick?: (datum: DotDatum) => void;\n /** ScatterPlot size. */\n size?: ChartSize | ScatterPlotDimensions;\n /** Define how to sort categories. */\n sortingMethod?: SortingMethod;\n /** Reference to the SVG tag. */\n svgRef?: MutableRefObject<SVGSVGElement>;\n /** Color palette to use. You can choose among the list of available color palette or also choose to use the success/warning/danger theme for which you have to specify which key corresponds to which status. */\n colorTheme?: ChartTheme;\n /** Method modifying what's displayed within the tooltip when the tooltipVariant is \"custom\". */\n tooltipDecorator?: (\n data: DotDatum,\n props?: { index?: number; isSelected?: boolean; color?: string }\n ) => string | ReactElement;\n /** Tooltip variant. */\n tooltipVariant?: TooltipVariant;\n /** Variant. */\n variant?: ScatterPlotVariant;\n /** Theme. */\n theme?: Theme;\n}\n\nexport type StyledScatterPlotProps = ScatterPlotProps & {};\n"],"names":["ScatterPlotVariant","default","gridded","ScatterPlotLegendVariant","none","externalLabel","externalLabelValue","externalLabelPercent","custom"],"mappings":"AAoBA;AACA;AACA;AACO,MAAMA,kBAAkB,GAAG;AAChCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,OAAO,EAAE,SAAA;AACX,EAAU;AAGV;AACA;AACA;AACO,MAAMC,wBAAwB,GAAG;AACtCC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,aAAa,EAAE,eAAe;AAC9BC,EAAAA,kBAAkB,EAAE,oBAAoB;AACxCC,EAAAA,oBAAoB,EAAE,sBAAsB;AAC5CC,EAAAA,MAAM,EAAE,QAAA;AACV,EAAU;;AAWV;AACA;AACA;;;;"}
@@ -0,0 +1,70 @@
1
+ import { getSortingMethod } from '../../../utils/index.js';
2
+ import { ChartSize } from '../../../types/_internal/size.js';
3
+
4
+ const sizeToDimension = size => {
5
+ if (typeof size !== 'string') {
6
+ return size;
7
+ }
8
+ switch (size) {
9
+ case ChartSize.small:
10
+ return {
11
+ width: 600,
12
+ height: 300,
13
+ fontSize: 30
14
+ };
15
+ case ChartSize.medium:
16
+ default:
17
+ return {
18
+ width: 750,
19
+ height: 375,
20
+ fontSize: 34
21
+ };
22
+ case ChartSize.large:
23
+ return {
24
+ width: 900,
25
+ height: 450,
26
+ fontSize: 38
27
+ };
28
+ }
29
+ };
30
+ const BASE_NUMBER_OF_TICKS = 20;
31
+ const getClosestLineIndex = (value, scale) => {
32
+ const ticks = scale.ticks(BASE_NUMBER_OF_TICKS);
33
+ const delta = ticks[1] - ticks[0];
34
+ const index = Math.round(value / delta);
35
+ const roundValue = index * delta;
36
+ return [index, roundValue];
37
+ };
38
+ const group = (data, x, y) => {
39
+ const groupDict = {};
40
+ data.forEach(d => {
41
+ const [i, rx] = getClosestLineIndex(d.key[0], x);
42
+ const [j, ry] = getClosestLineIndex(d.key[1], y);
43
+ const key = `${i}_${j}_${d.key[2]}`;
44
+ if (!(key in groupDict)) {
45
+ groupDict[key] = {
46
+ category: d.key[2],
47
+ x: rx,
48
+ y: ry,
49
+ data: {
50
+ key: d.key,
51
+ value: 0
52
+ },
53
+ points: []
54
+ };
55
+ }
56
+ groupDict[key].points.push(d);
57
+ groupDict[key].data.value += 1;
58
+ });
59
+ return Object.values(groupDict);
60
+ };
61
+ const countBy = (arr, sortingMethod) => {
62
+ const counts = arr.reduce((prev, curr) => (prev[curr.key[2]] = ++prev[curr.key[2]] || 1, prev), {});
63
+ return Object.keys(counts).map(key => ({
64
+ key: key,
65
+ value: counts[key]
66
+ })).sort(getSortingMethod(sortingMethod));
67
+ };
68
+
69
+ export { BASE_NUMBER_OF_TICKS, countBy, getClosestLineIndex, group, sizeToDimension };
70
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../../../../../../../src/components/ScatterPlot/utils.ts"],"sourcesContent":["import { ScaleLinear as d3ScaleLinear } from 'd3';\n\nimport { CoordinatesCategoryData, CoordinatesCategoryDatum } from '../../types';\n\nimport { ChartSize } from '../../types';\nimport { ScatterPlotDimensions } from './types';\nimport { SortingMethod, getSortingMethod } from '../../utils';\n\nexport const sizeToDimension = (size: ChartSize | ScatterPlotDimensions): ScatterPlotDimensions => {\n if (typeof size !== 'string') {\n return size;\n }\n\n switch (size) {\n case ChartSize.small:\n return { width: 600, height: 300, fontSize: 30 };\n case ChartSize.medium:\n default:\n return { width: 750, height: 375, fontSize: 34 };\n case ChartSize.large:\n return { width: 900, height: 450, fontSize: 38 };\n }\n};\n\nexport const BASE_NUMBER_OF_TICKS = 20;\n\nexport const getClosestLineIndex = (value: number, scale: d3ScaleLinear<number, number, never>) => {\n const ticks = scale.ticks(BASE_NUMBER_OF_TICKS);\n const delta = ticks[1] - ticks[0];\n const index = Math.round(value / delta);\n const roundValue = index * delta;\n return [index, roundValue];\n};\n\nexport const group = (\n data: CoordinatesCategoryData,\n x: d3ScaleLinear<number, number, never>,\n y: d3ScaleLinear<number, number, never>\n) => {\n const groupDict: Record<\n string,\n {\n category: string;\n x: number;\n y: number;\n data: CoordinatesCategoryDatum;\n points: CoordinatesCategoryData;\n }\n > = {};\n\n data.forEach((d) => {\n const [i, rx] = getClosestLineIndex(d.key[0], x);\n const [j, ry] = getClosestLineIndex(d.key[1], y);\n\n const key = `${i}_${j}_${d.key[2]}`;\n if (!(key in groupDict)) {\n groupDict[key] = {\n category: d.key[2] as string,\n x: rx,\n y: ry,\n data: {\n key: d.key,\n value: 0,\n },\n points: [],\n };\n }\n\n groupDict[key].points.push(d);\n groupDict[key].data.value += 1;\n });\n\n return Object.values(groupDict);\n};\n\nexport const countBy = (arr: CoordinatesCategoryData, sortingMethod: SortingMethod) => {\n const counts = arr.reduce(\n (prev, curr) => ((prev[curr.key[2] as string] = ++(prev[curr.key[2] as string] as number) || 1), prev),\n {} as Record<string, number>\n );\n\n return Object.keys(counts)\n .map((key) => ({ key: key, value: counts[key] as number }))\n .sort(getSortingMethod(sortingMethod));\n};\n"],"names":["sizeToDimension","size","ChartSize","small","width","height","fontSize","medium","large","BASE_NUMBER_OF_TICKS","getClosestLineIndex","value","scale","ticks","delta","index","Math","round","roundValue","group","data","x","y","groupDict","forEach","d","i","rx","key","j","ry","category","points","push","Object","values","countBy","arr","sortingMethod","counts","reduce","prev","curr","keys","map","sort","getSortingMethod"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ var definition = "Linear Scatter Plot with {circleLength} circles.";
2
+ var enUS = {
3
+ "interactive-chart": "Interactive Scatter Plot",
4
+ "static-chart": "Static Scatter Plot",
5
+ definition: definition,
6
+ "definition-with-categories": "Linear Scatter Plot with {categoryLength} categories and {circleLength} circles.",
7
+ "x-axis-definition": "The chart has {numAxis, plural, =0 {0 X axis} =1 {1 X axis} other {# X axes}} displaying numbers from {start, number} to {end, number}.",
8
+ "y-axis-definition": "The chart has {numAxis, plural, =0 {0 Y axis} =1 {1 Y axis} other {# Y axes}} displaying numbers from {start, number} to {end, number}."
9
+ };
10
+
11
+ export { enUS as default, definition };
12
+ //# sourceMappingURL=en-US.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"en-US.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -0,0 +1,17 @@
1
+ var frFR = {
2
+ "interactive-chart": "Graphique en courbe interactif",
3
+ "static-chart": "Graphique en courbe statique",
4
+ "definition-linear": "Graphique en courbe contenant {circleLength} points répartis sur un axe linéraire.",
5
+ "definition-linear-with-categories": "Graphique en courbe contenant {categoryLength} courbes et {circleLength} points répartis sur un axe linéraire.",
6
+ "definition-ordinal": "Graphique en courbe contenant {circleLength} points.",
7
+ "x-axis-numbers-definition": "Le graphique a {numAxis, plural, =0 {0 axe X} =1 {1 axe X} other {# axes X}} affichant des nombres allant de {start, number} à {end, number}.",
8
+ "y-axis-numbers-definition": "Le graphique a {numAxis, plural, =0 {0 axe Y} =1 {1 axe Y} other {# axes Y}} affichant des nombres allant de {start, number} à {end, number}.",
9
+ "x-axis-dates-definition": "Le graphique a {numAxis, plural, =0 {0 axe X} =1 {1 axe X} other {# axes X}} affichant des dates allant de {start, date, ::yyyyMMdd} à {end, date, ::yyyyMMdd}.",
10
+ "y-axis-dates-definition": "Le graphique a {numAxis, plural, =0 {0 axe Y} =1 {1 axe Y} other {# axes Y}} affichant des dates allant de {start, date, ::yyyyMMdd} à {end, date, ::yyyyMMdd}.",
11
+ "x-axis-categories-definition": "Le graphique a {numAxis, plural, =0 {0 axe X} =1 {1 axe X} other {# axes X}} affichant des categories.",
12
+ "y-axis-categories-definition": "Le graphique a {numAxis, plural, =0 {0 axe Y} =1 {1 axe Y} other {# axes Y}} affichant des categories.",
13
+ "series-legend": "{category}, courbe {categoryIndex} sur {categoryLength} contenant {circleLength} points"
14
+ };
15
+
16
+ export { frFR as default };
17
+ //# sourceMappingURL=fr-FR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fr-FR.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,10 @@
1
+ import enUS from './_internal/en-US.js';
2
+ import frFR from './_internal/fr-FR.js';
3
+
4
+ var intlMessages = {
5
+ 'en-US': enUS,
6
+ 'fr-FR': frFR
7
+ };
8
+
9
+ export { intlMessages as default };
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/components/ScatterPlot/intl/index.ts"],"sourcesContent":["import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n"],"names":["enUS","frFR"],"mappings":";;;AAGA,mBAAe;AACb,EAAA,OAAO,EAAEA,IAAI;AACb,EAAA,OAAO,EAAEC,IAAAA;AACX,CAAC;;;;"}
@@ -0,0 +1,48 @@
1
+ import { useRef, useEffect } from 'react';
2
+ import { brush, select } from 'd3';
3
+
4
+ const getRoundedIntermediaryPoint = (selection, scaleX, scaleY) => {
5
+ if (!selection) {
6
+ return null;
7
+ }
8
+ const xTicks = scaleX.ticks(20);
9
+ const xDelta = xTicks[1] - xTicks[0];
10
+ const yTicks = scaleY.ticks(20);
11
+ const yDelta = yTicks[1] - yTicks[0];
12
+ return [[scaleX(Math.round(scaleX.invert(selection[0][0]) / xDelta) * xDelta - xDelta / 2), scaleY(Math.round(scaleY.invert(selection[0][1]) / yDelta) * yDelta - yDelta / 2)], [scaleX(Math.round(scaleX.invert(selection[1][0]) / xDelta) * xDelta - xDelta / 2), scaleY(Math.round(scaleY.invert(selection[1][1]) / yDelta) * yDelta - yDelta / 2)]];
13
+ };
14
+ const useBrush = _ref => {
15
+ let {
16
+ brushRef: propsBrushRef,
17
+ svgRef,
18
+ extent,
19
+ scaleX,
20
+ scaleY,
21
+ isBrushable,
22
+ isGridded,
23
+ onBrush,
24
+ onBrushEnd
25
+ } = _ref;
26
+ const brushRef = propsBrushRef || useRef();
27
+ useEffect(() => {
28
+ if (svgRef.current && isBrushable) {
29
+ brushRef.current = brush().extent(extent).keyModifiers(false).filter(event => event.shiftKey).on('brush', event => {
30
+ if (!event.sourceEvent || !brushRef.current || !svgRef.current) return;
31
+ if (isGridded) {
32
+ const selection = getRoundedIntermediaryPoint(event.selection, scaleX, scaleY);
33
+ select(svgRef.current).call(brushRef.current.move, selection);
34
+ onBrush === null || onBrush === void 0 ? void 0 : onBrush(selection, scaleX, scaleY);
35
+ } else {
36
+ onBrush === null || onBrush === void 0 ? void 0 : onBrush(event.selection, scaleX, scaleY);
37
+ }
38
+ }).on('end', event => {
39
+ if (!event.sourceEvent || !brushRef.current || !svgRef.current) return;
40
+ onBrushEnd === null || onBrushEnd === void 0 ? void 0 : onBrushEnd(event.selection, scaleX, scaleY);
41
+ });
42
+ select(svgRef.current).call(brushRef.current);
43
+ }
44
+ });
45
+ };
46
+
47
+ export { useBrush };
48
+ //# sourceMappingURL=useBrush.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useBrush.js","sources":["../../../../../../src/hooks/useBrush.tsx"],"sourcesContent":["import { MutableRefObject, useEffect, useRef } from 'react';\nimport {\n BrushBehavior as d3BrushBehavior,\n brush as d3brush,\n ScaleLinear as d3ScaleLinear,\n select as d3select,\n} from 'd3';\n\nexport interface UseBrushProps {\n brushRef: MutableRefObject<d3BrushBehavior<unknown> | undefined>;\n svgRef: MutableRefObject<SVGSVGElement | SVGGElement | undefined>;\n extent?: [[number, number], [number, number]];\n scaleX: d3ScaleLinear<number, number>;\n scaleY: d3ScaleLinear<number, number>;\n isBrushable?: boolean;\n isGridded?: boolean;\n onBrush?: (\n selection: [[number, number], [number, number]] | null,\n scaleX: d3ScaleLinear<number, number>,\n scaleY: d3ScaleLinear<number, number>\n ) => void;\n onBrushEnd?: (\n selection: [[number, number], [number, number]] | null,\n scaleX: d3ScaleLinear<number, number>,\n scaleY: d3ScaleLinear<number, number>\n ) => void;\n}\n\nconst getRoundedIntermediaryPoint = (\n selection: [[number, number], [number, number]],\n scaleX: d3ScaleLinear<number, number>,\n scaleY: d3ScaleLinear<number, number>\n) => {\n if (!selection) {\n return null;\n }\n\n const xTicks = scaleX.ticks(20);\n const xDelta = xTicks[1] - xTicks[0];\n const yTicks = scaleY.ticks(20);\n const yDelta = yTicks[1] - yTicks[0];\n\n return [\n [\n scaleX(\n Math.round(scaleX.invert(selection[0][0]) / xDelta) * xDelta -\n xDelta / 2\n ),\n scaleY(\n Math.round(scaleY.invert(selection[0][1]) / yDelta) * yDelta -\n yDelta / 2\n ),\n ],\n [\n scaleX(\n Math.round(scaleX.invert(selection[1][0]) / xDelta) * xDelta -\n xDelta / 2\n ),\n\n scaleY(\n Math.round(scaleY.invert(selection[1][1]) / yDelta) * yDelta -\n yDelta / 2\n ),\n ],\n ] as [[number, number], [number, number]];\n};\n\nexport const useBrush = ({\n brushRef: propsBrushRef,\n svgRef,\n extent,\n scaleX,\n scaleY,\n isBrushable,\n isGridded,\n onBrush,\n onBrushEnd,\n}: UseBrushProps) => {\n const brushRef = propsBrushRef || useRef<d3BrushBehavior<unknown>>();\n\n useEffect(() => {\n if (svgRef.current && isBrushable) {\n brushRef.current = d3brush()\n .extent(extent!)\n .keyModifiers(false)\n .filter((event) => event.shiftKey)\n .on('brush', (event) => {\n if (!event.sourceEvent || !brushRef.current || !svgRef.current)\n return;\n\n if (isGridded) {\n const selection = getRoundedIntermediaryPoint(\n event.selection,\n scaleX,\n scaleY\n );\n d3select(svgRef.current).call(\n brushRef.current.move as any,\n selection\n );\n onBrush?.(selection, scaleX, scaleY);\n } else {\n onBrush?.(event.selection, scaleX, scaleY);\n }\n })\n .on('end', (event) => {\n if (!event.sourceEvent || !brushRef.current || !svgRef.current)\n return;\n\n onBrushEnd?.(event.selection, scaleX, scaleY);\n });\n d3select(svgRef.current).call(brushRef.current as any);\n }\n });\n};\n"],"names":["getRoundedIntermediaryPoint","selection","scaleX","scaleY","xTicks","ticks","xDelta","yTicks","yDelta","Math","round","invert","useBrush","_ref","brushRef","propsBrushRef","svgRef","extent","isBrushable","isGridded","onBrush","onBrushEnd","useRef","useEffect","current","d3brush","keyModifiers","filter","event","shiftKey","on","sourceEvent","d3select","call","move"],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { useMemo } from 'react';
2
+ import { getColorScale } from '../../_internal/scheme.js';
3
+
4
+ const useColor = _ref => {
5
+ let {
6
+ data,
7
+ colorTheme,
8
+ category,
9
+ theme
10
+ } = _ref;
11
+ const colorScale = useMemo(() => getColorScale({
12
+ colorTheme,
13
+ domain: data.map(d => typeof category === 'string' ? d[category] : category(d)),
14
+ theme
15
+ }), [colorTheme]);
16
+ return colorScale;
17
+ };
18
+
19
+ export { useColor };
20
+ //# sourceMappingURL=useColor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useColor.js","sources":["../../../../../../src/hooks/useColor.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { ScaleOrdinal as d3ScaleOrdinal } from 'd3';\nimport { getColorScale } from '../scheme';\nimport { ChartTheme, JSONArray, JSONObject } from '../types';\nimport { Theme } from '@redsift/design-system';\n\nexport interface UseColorProps {\n /** Dataset to use to generate the chart. */\n data: JSONArray;\n /** Color palette to use. */\n colorTheme: ChartTheme;\n /** Name of the field that will be used to categorize the data. */\n category: string | ((d: JSONObject) => string);\n /** Theme */\n theme: Theme;\n}\n\nexport const useColor = ({ data, colorTheme, category, theme }: UseColorProps) => {\n const colorScale = useMemo<d3ScaleOrdinal<string, string>>(\n () =>\n getColorScale({\n colorTheme,\n domain: data.map((d) => (typeof category === 'string' ? (d[category] as string) : category(d))),\n theme,\n }),\n [colorTheme]\n );\n\n return colorScale;\n};\n"],"names":["useColor","_ref","data","colorTheme","category","theme","colorScale","useMemo","getColorScale","domain","map","d"],"mappings":";;;AAiBaA,MAAAA,QAAQ,GAAGC,IAAA,IAA0D;EAAA,IAAzD;IAAEC,IAAI;IAAEC,UAAU;IAAEC,QAAQ;AAAEC,IAAAA,KAAAA;AAAqB,GAAC,GAAAJ,IAAA,CAAA;AAC3E,EAAA,MAAMK,UAAU,GAAGC,OAAO,CACxB,MACEC,aAAa,CAAC;IACZL,UAAU;IACVM,MAAM,EAAEP,IAAI,CAACQ,GAAG,CAAEC,CAAC,IAAM,OAAOP,QAAQ,KAAK,QAAQ,GAAIO,CAAC,CAACP,QAAQ,CAAC,GAAcA,QAAQ,CAACO,CAAC,CAAE,CAAC;AAC/FN,IAAAA,KAAAA;AACF,GAAC,CAAC,EACJ,CAACF,UAAU,CACb,CAAC,CAAA;AAED,EAAA,OAAOG,UAAU,CAAA;AACnB;;;;"}
@@ -1,6 +1,7 @@
1
- import { b as _objectSpread2 } from './_rollupPluginBabelHelpers.js';
1
+ import { objectSpread2 as _objectSpread2 } from '../../../../../_virtual/_internal/_rollupPluginBabelHelpers.js';
2
2
  import { useMemo } from 'react';
3
- import { g as getSortingMethod, u as useColor } from './theme.js';
3
+ import { useColor } from './useColor.js';
4
+ import { getSortingMethod } from '../../utils/index.js';
4
5
 
5
6
  const useFormatCategoricalData = _ref => {
6
7
  let {
@@ -52,5 +53,5 @@ const useFormatCategoricalData = _ref => {
52
53
  };
53
54
  };
54
55
 
55
- export { useFormatCategoricalData as u };
56
+ export { useFormatCategoricalData };
56
57
  //# sourceMappingURL=useFormatCategoricalData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFormatCategoricalData.js","sources":["../../../../../../src/hooks/useFormatCategoricalData.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { CategoryData, ChartTheme } from '../types';\nimport { useColor } from './useColor';\nimport { SortingMethod, getSortingMethod } from '../utils';\nimport { Theme } from '@redsift/design-system';\n\nexport interface UseFormatCategoricalDataProps {\n /** Dataset to use to generate the chart, should be a list of objects containing a key and a value. */\n data: CategoryData;\n /** Color palette to use. */\n colorTheme: ChartTheme;\n /** Define how to sort categories. */\n sortingMethod: SortingMethod;\n /** Number of categories to use, the rest being put into a new category called \"Others\". */\n caping?: number;\n /** Whether a category should be displayed for categories that has been removed by the caping option. Optionaly, this prop can be used to change the label of this category. */\n others?: boolean | string;\n /** Theme */\n theme: Theme;\n}\n\nexport const useFormatCategoricalData = ({\n data,\n caping,\n sortingMethod,\n others,\n colorTheme,\n theme,\n}: UseFormatCategoricalDataProps) => {\n const computedData = useMemo(() => {\n let computedData;\n\n if (data === undefined || data === null) {\n return undefined;\n }\n\n computedData = [...data!].sort(getSortingMethod(sortingMethod));\n\n if (caping) {\n if (typeof others === 'boolean' && !others) {\n computedData = computedData.slice(0, caping);\n } else {\n computedData = computedData.reduce<CategoryData>((acc, curr, index) => {\n if (index < caping) {\n acc[index] = curr;\n } else if (index === caping) {\n acc[index] = {\n key: typeof others === 'string' ? others : 'Others',\n value: curr.value,\n };\n } else {\n acc[caping] = {\n ...acc[caping],\n value: acc[caping].value + curr.value,\n };\n }\n return acc;\n }, []);\n }\n }\n\n return computedData;\n }, [data, caping]);\n\n const colorScale = useColor({ data: computedData!, colorTheme, category: 'key', theme });\n\n return { data: computedData as CategoryData, colorScale };\n};\n"],"names":["useFormatCategoricalData","_ref","data","caping","sortingMethod","others","colorTheme","theme","computedData","useMemo","undefined","sort","getSortingMethod","slice","reduce","acc","curr","index","key","value","_objectSpread","colorScale","useColor","category"],"mappings":";;;;;AAqBaA,MAAAA,wBAAwB,GAAGC,IAAA,IAOH;EAAA,IAPI;IACvCC,IAAI;IACJC,MAAM;IACNC,aAAa;IACbC,MAAM;IACNC,UAAU;AACVC,IAAAA,KAAAA;AAC6B,GAAC,GAAAN,IAAA,CAAA;AAC9B,EAAA,MAAMO,YAAY,GAAGC,OAAO,CAAC,MAAM;AACjC,IAAA,IAAID,YAAY,CAAA;AAEhB,IAAA,IAAIN,IAAI,KAAKQ,SAAS,IAAIR,IAAI,KAAK,IAAI,EAAE;AACvC,MAAA,OAAOQ,SAAS,CAAA;AAClB,KAAA;AAEAF,IAAAA,YAAY,GAAG,CAAC,GAAGN,IAAK,CAAC,CAACS,IAAI,CAACC,gBAAgB,CAACR,aAAa,CAAC,CAAC,CAAA;AAE/D,IAAA,IAAID,MAAM,EAAE;AACV,MAAA,IAAI,OAAOE,MAAM,KAAK,SAAS,IAAI,CAACA,MAAM,EAAE;QAC1CG,YAAY,GAAGA,YAAY,CAACK,KAAK,CAAC,CAAC,EAAEV,MAAM,CAAC,CAAA;AAC9C,OAAC,MAAM;QACLK,YAAY,GAAGA,YAAY,CAACM,MAAM,CAAe,CAACC,GAAG,EAAEC,IAAI,EAAEC,KAAK,KAAK;UACrE,IAAIA,KAAK,GAAGd,MAAM,EAAE;AAClBY,YAAAA,GAAG,CAACE,KAAK,CAAC,GAAGD,IAAI,CAAA;AACnB,WAAC,MAAM,IAAIC,KAAK,KAAKd,MAAM,EAAE;YAC3BY,GAAG,CAACE,KAAK,CAAC,GAAG;cACXC,GAAG,EAAE,OAAOb,MAAM,KAAK,QAAQ,GAAGA,MAAM,GAAG,QAAQ;cACnDc,KAAK,EAAEH,IAAI,CAACG,KAAAA;aACb,CAAA;AACH,WAAC,MAAM;YACLJ,GAAG,CAACZ,MAAM,CAAC,GAAAiB,cAAA,CAAAA,cAAA,CACNL,EAAAA,EAAAA,GAAG,CAACZ,MAAM,CAAC,CAAA,EAAA,EAAA,EAAA;cACdgB,KAAK,EAAEJ,GAAG,CAACZ,MAAM,CAAC,CAACgB,KAAK,GAAGH,IAAI,CAACG,KAAAA;aACjC,CAAA,CAAA;AACH,WAAA;AACA,UAAA,OAAOJ,GAAG,CAAA;SACX,EAAE,EAAE,CAAC,CAAA;AACR,OAAA;AACF,KAAA;AAEA,IAAA,OAAOP,YAAY,CAAA;AACrB,GAAC,EAAE,CAACN,IAAI,EAAEC,MAAM,CAAC,CAAC,CAAA;EAElB,MAAMkB,UAAU,GAAGC,QAAQ,CAAC;AAAEpB,IAAAA,IAAI,EAAEM,YAAa;IAAEF,UAAU;AAAEiB,IAAAA,QAAQ,EAAE,KAAK;AAAEhB,IAAAA,KAAAA;AAAM,GAAC,CAAC,CAAA;EAExF,OAAO;AAAEL,IAAAA,IAAI,EAAEM,YAA4B;AAAEa,IAAAA,UAAAA;GAAY,CAAA;AAC3D;;;;"}
@@ -0,0 +1,39 @@
1
+ import { useRef, useState, useEffect } from 'react';
2
+ import { zoom, interpolateRound, select } from 'd3';
3
+
4
+ const useZoom = _ref => {
5
+ let {
6
+ svgRef,
7
+ scaleX,
8
+ scaleY,
9
+ defaultTransform = {
10
+ k: 1,
11
+ x: 0,
12
+ y: 0
13
+ },
14
+ size,
15
+ onZoom
16
+ } = _ref;
17
+ const zx = useRef(scaleX);
18
+ const zy = useRef(scaleY);
19
+ const [transform, setTransform] = useState(defaultTransform);
20
+ useEffect(() => {
21
+ if (svgRef.current) {
22
+ const zoom$1 = zoom().filter(event => !event.shiftKey).scaleExtent([1 / 2 ** 3, 2 ** 3]).on('zoom', event => {
23
+ onZoom === null || onZoom === void 0 ? void 0 : onZoom();
24
+ zx.current = event.transform.rescaleX(scaleX).interpolate(interpolateRound);
25
+ zy.current = event.transform.rescaleY(scaleY).interpolate(interpolateRound);
26
+ setTransform(event.transform);
27
+ });
28
+ select(svgRef.current).call(zoom$1);
29
+ }
30
+ }, [svgRef.current, size]);
31
+ return {
32
+ transform,
33
+ scaleX: zx.current,
34
+ scaleY: zy.current
35
+ };
36
+ };
37
+
38
+ export { useZoom };
39
+ //# sourceMappingURL=useZoom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useZoom.js","sources":["../../../../../../src/hooks/useZoom.tsx"],"sourcesContent":["import { MutableRefObject, useEffect, useRef, useState } from 'react';\nimport {\n zoom as d3zoom,\n interpolateRound as d3interpolateRound,\n ScaleLinear as d3ScaleLinear,\n select as d3select,\n} from 'd3';\n\nexport interface UseZoomProps {\n svgRef: MutableRefObject<SVGSVGElement | undefined>;\n scaleX: d3ScaleLinear<number, number>;\n scaleY: d3ScaleLinear<number, number>;\n defaultTransform?: { k: number; x: number; y: number };\n size?: any;\n onZoom?: () => void;\n}\n\nexport const useZoom = ({\n svgRef,\n scaleX,\n scaleY,\n defaultTransform = { k: 1, x: 0, y: 0 },\n size,\n onZoom,\n}: UseZoomProps) => {\n const zx = useRef<d3ScaleLinear<number, number>>(scaleX);\n const zy = useRef<d3ScaleLinear<number, number>>(scaleY);\n const [transform, setTransform] = useState(defaultTransform);\n\n useEffect(() => {\n if (svgRef.current) {\n const zoom = d3zoom()\n .filter((event) => !event.shiftKey)\n .scaleExtent([1 / 2 ** 3, 2 ** 3])\n .on('zoom', (event) => {\n onZoom?.();\n zx.current = event.transform\n .rescaleX(scaleX)\n .interpolate(d3interpolateRound);\n zy.current = event.transform\n .rescaleY(scaleY)\n .interpolate(d3interpolateRound);\n setTransform(event.transform);\n });\n d3select(svgRef.current).call(zoom as any);\n }\n }, [svgRef.current, size]);\n\n return { transform, scaleX: zx.current, scaleY: zy.current };\n};\n"],"names":["useZoom","_ref","svgRef","scaleX","scaleY","defaultTransform","k","x","y","size","onZoom","zx","useRef","zy","transform","setTransform","useState","useEffect","current","zoom","d3zoom","filter","event","shiftKey","scaleExtent","on","rescaleX","interpolate","d3interpolateRound","rescaleY","d3select","call"],"mappings":";;;AAiBaA,MAAAA,OAAO,GAAGC,IAAA,IAOH;EAAA,IAPI;IACtBC,MAAM;IACNC,MAAM;IACNC,MAAM;AACNC,IAAAA,gBAAgB,GAAG;AAAEC,MAAAA,CAAC,EAAE,CAAC;AAAEC,MAAAA,CAAC,EAAE,CAAC;AAAEC,MAAAA,CAAC,EAAE,CAAA;KAAG;IACvCC,IAAI;AACJC,IAAAA,MAAAA;AACY,GAAC,GAAAT,IAAA,CAAA;AACb,EAAA,MAAMU,EAAE,GAAGC,MAAM,CAAgCT,MAAM,CAAC,CAAA;AACxD,EAAA,MAAMU,EAAE,GAAGD,MAAM,CAAgCR,MAAM,CAAC,CAAA;EACxD,MAAM,CAACU,SAAS,EAAEC,YAAY,CAAC,GAAGC,QAAQ,CAACX,gBAAgB,CAAC,CAAA;AAE5DY,EAAAA,SAAS,CAAC,MAAM;IACd,IAAIf,MAAM,CAACgB,OAAO,EAAE;AAClB,MAAA,MAAMC,MAAI,GAAGC,IAAM,EAAE,CAClBC,MAAM,CAAEC,KAAK,IAAK,CAACA,KAAK,CAACC,QAAQ,CAAC,CAClCC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CACjCC,EAAE,CAAC,MAAM,EAAGH,KAAK,IAAK;AACrBZ,QAAAA,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,EAAI,CAAA;AACVC,QAAAA,EAAE,CAACO,OAAO,GAAGI,KAAK,CAACR,SAAS,CACzBY,QAAQ,CAACvB,MAAM,CAAC,CAChBwB,WAAW,CAACC,gBAAkB,CAAC,CAAA;AAClCf,QAAAA,EAAE,CAACK,OAAO,GAAGI,KAAK,CAACR,SAAS,CACzBe,QAAQ,CAACzB,MAAM,CAAC,CAChBuB,WAAW,CAACC,gBAAkB,CAAC,CAAA;AAClCb,QAAAA,YAAY,CAACO,KAAK,CAACR,SAAS,CAAC,CAAA;AAC/B,OAAC,CAAC,CAAA;MACJgB,MAAQ,CAAC5B,MAAM,CAACgB,OAAO,CAAC,CAACa,IAAI,CAACZ,MAAW,CAAC,CAAA;AAC5C,KAAA;GACD,EAAE,CAACjB,MAAM,CAACgB,OAAO,EAAET,IAAI,CAAC,CAAC,CAAA;EAE1B,OAAO;IAAEK,SAAS;IAAEX,MAAM,EAAEQ,EAAE,CAACO,OAAO;IAAEd,MAAM,EAAES,EAAE,CAACK,OAAAA;GAAS,CAAA;AAC9D;;;;"}
@@ -0,0 +1,43 @@
1
+ export { empty, getColorScale, monochrome, scheme, successDangerScheme } from './_internal/scheme.js';
2
+ export { getSortingMethod, isValidDate, mergeLegends } from './utils/index.js';
3
+ export { useBrush } from './hooks/_internal/useBrush.js';
4
+ export { useColor } from './hooks/_internal/useColor.js';
5
+ export { useFormatCategoricalData } from './hooks/_internal/useFormatCategoricalData.js';
6
+ export { useZoom } from './hooks/_internal/useZoom.js';
7
+ export { LabelVariant, LegendVariant, TooltipVariant } from './types/_internal/legend.js';
8
+ export { ChartSize } from './types/_internal/size.js';
9
+ export { ColorTheme } from './types/_internal/theme.js';
10
+ export { Arc } from './components/Arc/_internal/Arc2.js';
11
+ export { StyledArc } from './components/Arc/_internal/styles.js';
12
+ export { Arcs } from './components/Arcs/_internal/Arcs2.js';
13
+ export { StyledArcs } from './components/Arcs/_internal/styles.js';
14
+ export { Axis, getAxisType } from './components/Axis/_internal/Axis2.js';
15
+ export { AxisPosition, AxisVariant } from './components/Axis/_internal/types.js';
16
+ export { StyledAxis } from './components/Axis/_internal/styles.js';
17
+ export { Bar } from './components/Bar/_internal/Bar2.js';
18
+ export { BarDirection, BarOrientation } from './components/Bar/_internal/types.js';
19
+ export { StyledBar } from './components/Bar/_internal/styles.js';
20
+ export { BarChart, BaseBarChart } from './components/BarChart/_internal/BarChart2.js';
21
+ export { BarChartLegendVariant } from './components/BarChart/_internal/types.js';
22
+ export { StyledBarChart, StyledBarChartBars, StyledBarChartEmptyText, StyledBarChartSection } from './components/BarChart/_internal/styles.js';
23
+ export { ChartContainer, ChartContainerDescription, ChartContainerTitle } from './components/ChartContainer/_internal/ChartContainer2.js';
24
+ export { StyledChartContainer, StyledChartContainerCaption, StyledChartContainerTitle } from './components/ChartContainer/_internal/styles.js';
25
+ export { DataPoint } from './components/DataPoint/_internal/DataPoint2.js';
26
+ export { StyledDataPoint } from './components/DataPoint/_internal/styles.js';
27
+ export { Dot } from './components/Dot/_internal/Dot2.js';
28
+ export { DotVariant } from './components/Dot/_internal/types.js';
29
+ export { StyledDot } from './components/Dot/_internal/styles.js';
30
+ export { Legend } from './components/Legend/_internal/Legend2.js';
31
+ export { StyledLegend } from './components/Legend/_internal/styles.js';
32
+ export { Line } from './components/Line/_internal/Line2.js';
33
+ export { StyledLine } from './components/Line/_internal/styles.js';
34
+ export { LineChart } from './components/LineChart/_internal/LineChart2.js';
35
+ export { LineChartLegendVariant } from './components/LineChart/_internal/types.js';
36
+ export { StyledLineChart, StyledLineChartEmptyText } from './components/LineChart/_internal/styles.js';
37
+ export { PieChart } from './components/PieChart/_internal/PieChart2.js';
38
+ export { PieChartLegendVariant, PieChartVariant } from './components/PieChart/_internal/types.js';
39
+ export { StyledPieChart, StyledPieChartCenterText, StyledPieChartEmptyText } from './components/PieChart/_internal/styles.js';
40
+ export { ScatterPlot } from './components/ScatterPlot/_internal/ScatterPlot2.js';
41
+ export { ScatterPlotLegendVariant, ScatterPlotVariant } from './components/ScatterPlot/_internal/types.js';
42
+ export { StyledScatterPlot, StyledScatterPlotEmptyText } from './components/ScatterPlot/_internal/styles.js';
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -17,5 +17,5 @@ const LegendVariant = {
17
17
  };
18
18
  const LabelVariant = LegendVariant;
19
19
 
20
- export { LegendVariant as L, TooltipVariant as T, LabelVariant as a };
21
- //# sourceMappingURL=legend2.js.map
20
+ export { LabelVariant, LegendVariant, TooltipVariant };
21
+ //# sourceMappingURL=legend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legend.js","sources":["../../../../../../src/types/legend.ts"],"sourcesContent":["import { ValueOf } from '@redsift/design-system';\n\n/** TOOLTIP */\n\nexport const TooltipVariant = {\n none: 'none',\n label: 'label',\n value: 'value',\n percent: 'percent',\n custom: 'custom',\n};\nexport type TooltipVariant = ValueOf<typeof TooltipVariant>;\n\n/** LEGEND */\nexport const LegendVariant = {\n none: 'none',\n label: 'label',\n value: 'value',\n percent: 'percent',\n custom: 'custom',\n} as const;\nexport const LabelVariant = LegendVariant;\nexport type LegendVariant = ValueOf<typeof LegendVariant>;\nexport type LabelVariant = LegendVariant;\n"],"names":["TooltipVariant","none","label","value","percent","custom","LegendVariant","LabelVariant"],"mappings":"AAEA;;AAEO,MAAMA,cAAc,GAAG;AAC5BC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,MAAM,EAAE,QAAA;AACV,EAAC;AAGD;AACO,MAAMC,aAAa,GAAG;AAC3BL,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,MAAM,EAAE,QAAA;AACV,EAAU;AACH,MAAME,YAAY,GAAGD;;;;"}
@@ -0,0 +1,8 @@
1
+ const ChartSize = {
2
+ small: 'small',
3
+ medium: 'medium',
4
+ large: 'large'
5
+ };
6
+
7
+ export { ChartSize };
8
+ //# sourceMappingURL=size.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"size.js","sources":["../../../../../../src/types/size.ts"],"sourcesContent":["import { ValueOf } from '@redsift/design-system';\n\nexport type ChartDimensions = {\n width: number;\n height: number;\n};\n\nexport const ChartSize = {\n small: 'small',\n medium: 'medium',\n large: 'large',\n} as const;\nexport type ChartSize = ValueOf<typeof ChartSize>;\n\nexport type MarginProps = {\n top?: number;\n right?: number;\n bottom?: number;\n left?: number;\n};\n"],"names":["ChartSize","small","medium","large"],"mappings":"AAOO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,KAAK,EAAE,OAAA;AACT;;;;"}
@@ -0,0 +1,13 @@
1
+ const ColorTheme = {
2
+ default: 'default',
3
+ dark: 'dark',
4
+ darker: 'darker',
5
+ darkerer: 'darkerer',
6
+ light: 'light',
7
+ lighter: 'lighter',
8
+ lighterer: 'lighterer',
9
+ monochrome: 'monochrome'
10
+ };
11
+
12
+ export { ColorTheme };
13
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.js","sources":["../../../../../../src/types/theme.ts"],"sourcesContent":["import { ValueOf } from '@redsift/design-system';\n\nexport const ColorTheme = {\n default: 'default',\n dark: 'dark',\n darker: 'darker',\n darkerer: 'darkerer',\n light: 'light',\n lighter: 'lighter',\n lighterer: 'lighterer',\n monochrome: 'monochrome',\n} as const;\nexport type ColorTheme = ValueOf<typeof ColorTheme>;\n\nexport type SuccessDangerColorTheme = {\n success: string;\n warning: string;\n danger: string;\n neutral?: string;\n};\n\nexport type CustomColorTheme = Record<string, string>;\n\nexport type ChartTheme =\n | ColorTheme\n | SuccessDangerColorTheme\n | CustomColorTheme;\n"],"names":["ColorTheme","default","dark","darker","darkerer","light","lighter","lighterer","monochrome"],"mappings":"AAEO,MAAMA,UAAU,GAAG;AACxBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,SAAS,EAAE,WAAW;AACtBC,EAAAA,UAAU,EAAE,YAAA;AACd;;;;"}
@@ -1,21 +1,3 @@
1
- import { useMemo } from 'react';
2
- import { g as getColorScale } from './scheme.js';
3
-
4
- const useColor = _ref => {
5
- let {
6
- data,
7
- colorTheme,
8
- category,
9
- theme
10
- } = _ref;
11
- const colorScale = useMemo(() => getColorScale({
12
- colorTheme,
13
- domain: data.map(d => typeof category === 'string' ? d[category] : category(d)),
14
- theme
15
- }), [colorTheme]);
16
- return colorScale;
17
- };
18
-
19
1
  const getSortingMethod = sortingMethod => {
20
2
  if (sortingMethod === 'asc-key') {
21
3
  return (a, b) => a.key === b.key ? a.value > b.value ? -1 : 1 : a.key < b.key ? -1 : 1;
@@ -58,22 +40,5 @@ const mergeLegends = (arr1, arr2) => {
58
40
  });
59
41
  };
60
42
 
61
- const ChartSize = {
62
- small: 'small',
63
- medium: 'medium',
64
- large: 'large'
65
- };
66
-
67
- const ColorTheme = {
68
- default: 'default',
69
- dark: 'dark',
70
- darker: 'darker',
71
- darkerer: 'darkerer',
72
- light: 'light',
73
- lighter: 'lighter',
74
- lighterer: 'lighterer',
75
- monochrome: 'monochrome'
76
- };
77
-
78
- export { ChartSize as C, ColorTheme as a, getSortingMethod as g, isValidDate as i, mergeLegends as m, useColor as u };
79
- //# sourceMappingURL=theme.js.map
43
+ export { getSortingMethod, isValidDate, mergeLegends };
44
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/utils/index.ts"],"sourcesContent":["import { CategoryDatum, Statistics } from '../types';\n\nexport type SortingMethod =\n | 'none'\n | 'asc-key'\n | 'desc-key'\n | 'asc-value'\n | 'desc-value'\n | string[]\n | ((a: CategoryDatum, b: CategoryDatum) => 1 | -1);\n\nexport const getSortingMethod: (sortingMethod: SortingMethod) => (a: CategoryDatum, b: CategoryDatum) => 1 | -1 = (\n sortingMethod\n) => {\n if (sortingMethod === 'asc-key') {\n return (a: CategoryDatum, b: CategoryDatum) =>\n a.key === b.key ? (a.value > b.value ? -1 : 1) : a.key < b.key ? -1 : 1;\n } else if (sortingMethod === 'desc-key') {\n return (a: CategoryDatum, b: CategoryDatum) =>\n a.key === b.key ? (a.value > b.value ? 1 : -1) : a.key < b.key ? 1 : -1;\n } else if (sortingMethod === 'asc-value') {\n return (a: CategoryDatum, b: CategoryDatum) =>\n a.value === b.value ? (a.key > b.key ? -1 : 1) : a.value < b.value ? -1 : 1;\n } else if (sortingMethod === 'desc-value') {\n return (a: CategoryDatum, b: CategoryDatum) =>\n a.value === b.value ? (a.key > b.key ? 1 : -1) : a.value < b.value ? 1 : -1;\n } else if (typeof sortingMethod === 'function') {\n return sortingMethod;\n } else if (Array.isArray(sortingMethod)) {\n return (a: CategoryDatum, b: CategoryDatum) => {\n if (sortingMethod.indexOf(a.key) === -1) {\n return 1;\n }\n if (sortingMethod.indexOf(b.key) === -1) {\n return -1;\n }\n\n return sortingMethod.indexOf(a.key) === sortingMethod.indexOf(b.key)\n ? a.key > b.key\n ? 1\n : -1\n : sortingMethod.indexOf(a.key) < sortingMethod.indexOf(b.key)\n ? -1\n : 1;\n };\n }\n return () => 1;\n};\n\nexport const isValidDate = (value: string) => {\n const date = new Date(value);\n return !isNaN(date.getTime()) && date.toISOString().startsWith(value);\n};\n\nexport const mergeLegends = (arr1: Statistics, arr2: Statistics) => {\n const map = new Map();\n\n [...arr1, ...arr2].forEach((item) => {\n map.set(item.key, item.value);\n });\n\n return Array.from(map, ([key, value]) => ({ key, value }));\n};\n"],"names":["getSortingMethod","sortingMethod","a","b","key","value","Array","isArray","indexOf","isValidDate","date","Date","isNaN","getTime","toISOString","startsWith","mergeLegends","arr1","arr2","map","Map","forEach","item","set","from","_ref"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ const mdiChevronDown = 'M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z';
2
+
3
+ export { mdiChevronDown };
4
+ //# sourceMappingURL=mdiChevronDown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mdiChevronDown.js","sources":["../../../../../../../../icons/src/components/mdi/mdiChevronDown.ts"],"sourcesContent":["export const mdiChevronDown: string =\n 'M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z';\n"],"names":["mdiChevronDown"],"mappings":"AAAO,MAAMA,cAAsB,GACjC;;;;"}
@@ -0,0 +1,4 @@
1
+ const mdiChevronRight = 'M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z';
2
+
3
+ export { mdiChevronRight };
4
+ //# sourceMappingURL=mdiChevronRight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mdiChevronRight.js","sources":["../../../../../../../../icons/src/components/mdi/mdiChevronRight.ts"],"sourcesContent":["export const mdiChevronRight: string =\n 'M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z';\n"],"names":["mdiChevronRight"],"mappings":"AAAO,MAAMA,eAAuB,GAClC;;;;"}
@@ -0,0 +1,4 @@
1
+ const mdiMouse = 'M11,1.07C7.05,1.56 4,4.92 4,9H11M4,15A8,8 0 0,0 12,23A8,8 0 0,0 20,15V11H4M13,1.07V9H20C20,4.92 16.94,1.56 13,1.07Z';
2
+
3
+ export { mdiMouse };
4
+ //# sourceMappingURL=mdiMouse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mdiMouse.js","sources":["../../../../../../../../icons/src/components/mdi/mdiMouse.ts"],"sourcesContent":["export const mdiMouse: string =\n 'M11,1.07C7.05,1.56 4,4.92 4,9H11M4,15A8,8 0 0,0 12,23A8,8 0 0,0 20,15V11H4M13,1.07V9H20C20,4.92 16.94,1.56 13,1.07Z';\n"],"names":["mdiMouse"],"mappings":"AAAO,MAAMA,QAAgB,GAC3B;;;;"}
package/_internal/Arc.js DELETED
@@ -1,2 +0,0 @@
1
- export { A as Arc, S as StyledArc } from './Arc2.js';
2
- //# sourceMappingURL=Arc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Arc2.js","sources":["../../src/components/Arc/styles.ts","../../src/components/Arc/Arc.tsx"],"sourcesContent":["import styled, { css } from 'styled-components';\nimport { StyledArcProps } from './types';\nimport { DataPoint } from '../DataPoint';\nimport { Theme } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledArc = styled(DataPoint)<StyledArcProps>`\n ${({ $hasStroke, $theme }) =>\n $hasStroke\n ? css`\n path {\n stroke-width: 2px;\n stroke: var(--redsift-color-neutral-${$theme === Theme.light ? 'white' : 'x-dark-grey'});\n }\n `\n : ''}\n\n ${({ $clickable }) =>\n $clickable\n ? css`\n cursor: pointer;\n\n &:hover,\n &:focus,\n &.focused {\n opacity: 0.8;\n outline: none;\n }\n\n &:focus-visible,\n &.focused {\n path {\n stroke: var(--redsift-color-primary-n);\n stroke-width: 4px;\n paint-order: stroke;\n }\n }\n `\n : ''}}\n`;\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport { animated, useSpring } from '@react-spring/web';\nimport { interpolate as d3interpolate } from 'd3';\n\nimport { Comp, useTheme } from '@redsift/design-system';\n\nimport { ArcProps } from './types';\nimport { StyledArc } from './styles';\nimport { monochrome } from '../../scheme';\nimport { config } from '../../config';\n\nconst COMPONENT_NAME = 'Arc';\nconst CLASSNAME = 'redsift-arc';\n\nexport const Arc: Comp<ArcProps, SVGGElement> = forwardRef((props, ref) => {\n const { color = monochrome, data, isSelected: propsIsSelected, onClick, role } = props;\n\n const {\n className,\n createArc,\n disableAnimations,\n hasStroke,\n previousData = {\n data: {\n key: '',\n value: 0,\n },\n startAngle: 0,\n endAngle: 0,\n padAngle: 0,\n value: 0,\n index: 0,\n },\n ...forwardedProps\n } = props;\n\n const theme = useTheme();\n\n const interpolator = d3interpolate(previousData, data);\n\n const isSelectable = role === 'option';\n const isDeselected = isSelectable && propsIsSelected === false;\n\n const animatedProps = useSpring({\n ...config,\n to: async (next: (props?: object) => Promise<void>) => {\n await next({ t: 1 });\n },\n from: { t: 0 },\n });\n\n return (\n <StyledArc\n {...forwardedProps}\n ref={ref}\n className={classNames(Arc.className, className)}\n $clickable={Boolean(onClick)}\n $hasStroke={Boolean(hasStroke)}\n $theme={theme}\n tooltipProps={{ placement: 'client-point', offset: 12 }}\n >\n <animated.path\n d={\n config.immediate || disableAnimations\n ? (createArc(data) as unknown as string)\n : (animatedProps.t.to((t) => createArc(interpolator(t))) as unknown as string)\n }\n fill={isDeselected ? 'var(--redsift-color-neutral-light-grey)' : color}\n />\n </StyledArc>\n );\n});\nArc.className = CLASSNAME;\nArc.displayName = COMPONENT_NAME;\n"],"names":["StyledArc","styled","DataPoint","_ref","$hasStroke","$theme","css","Theme","light","_ref2","$clickable","COMPONENT_NAME","CLASSNAME","Arc","forwardRef","props","ref","color","monochrome","data","isSelected","propsIsSelected","onClick","role","className","createArc","disableAnimations","hasStroke","previousData","key","value","startAngle","endAngle","padAngle","index","forwardedProps","_objectWithoutProperties","_excluded","theme","useTheme","interpolator","d3interpolate","isSelectable","isDeselected","animatedProps","useSpring","_objectSpread","config","to","next","t","from","React","createElement","_extends","classNames","Boolean","tooltipProps","placement","offset","animated","path","d","immediate","fill","displayName"],"mappings":";;;;;;;;;;;AAKA;AACA;AACA;MACaA,SAAS,GAAGC,MAAM,CAACC,SAAS,CAAkB,CAAA;AAC3D,EAAA,EAAIC,IAAA,IAAA;EAAA,IAAC;IAAEC,UAAU;AAAEC,IAAAA,MAAAA;AAAO,GAAC,GAAAF,IAAA,CAAA;EAAA,OACvBC,UAAU,GACNE,GAAI,CAAA;AACZ;AACA;AACA,gDAAkDD,EAAAA,MAAM,KAAKE,KAAK,CAACC,KAAK,GAAG,OAAO,GAAG,aAAc,CAAA;AACnG;AACA,QAAA,CAAS,GACD,EAAE,CAAA;AAAA,CAAC,CAAA;AACX;AACA,EAAA,EAAIC,KAAA,IAAA;EAAA,IAAC;AAAEC,IAAAA,UAAAA;AAAW,GAAC,GAAAD,KAAA,CAAA;EAAA,OACfC,UAAU,GACNJ,GAAI,CAAA;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAA,CAAS,GACD,EAAE,CAAA;AAAA,CAAC,CAAA;AACX;;;AC7BA,MAAMK,cAAc,GAAG,KAAK,CAAA;AAC5B,MAAMC,SAAS,GAAG,aAAa,CAAA;AAExB,MAAMC,GAAgC,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACzE,MAAM;AAAEC,IAAAA,KAAK,GAAGC,UAAU;IAAEC,IAAI;AAAEC,IAAAA,UAAU,EAAEC,eAAe;IAAEC,OAAO;AAAEC,IAAAA,IAAAA;AAAK,GAAC,GAAGR,KAAK,CAAA;EAEtF,MAAM;MACJS,SAAS;MACTC,SAAS;MACTC,iBAAiB;MACjBC,SAAS;AACTC,MAAAA,YAAY,GAAG;AACbT,QAAAA,IAAI,EAAE;AACJU,UAAAA,GAAG,EAAE,EAAE;AACPC,UAAAA,KAAK,EAAE,CAAA;SACR;AACDC,QAAAA,UAAU,EAAE,CAAC;AACbC,QAAAA,QAAQ,EAAE,CAAC;AACXC,QAAAA,QAAQ,EAAE,CAAC;AACXH,QAAAA,KAAK,EAAE,CAAC;AACRI,QAAAA,KAAK,EAAE,CAAA;AACT,OAAA;AAEF,KAAC,GAAGnB,KAAK;AADJoB,IAAAA,cAAc,GAAAC,wBAAA,CACfrB,KAAK,EAAAsB,SAAA,CAAA,CAAA;AAET,EAAA,MAAMC,KAAK,GAAGC,QAAQ,EAAE,CAAA;AAExB,EAAA,MAAMC,YAAY,GAAGC,WAAa,CAACb,YAAY,EAAET,IAAI,CAAC,CAAA;AAEtD,EAAA,MAAMuB,YAAY,GAAGnB,IAAI,KAAK,QAAQ,CAAA;AACtC,EAAA,MAAMoB,YAAY,GAAGD,YAAY,IAAIrB,eAAe,KAAK,KAAK,CAAA;EAE9D,MAAMuB,aAAa,GAAGC,CAAS,CAAAC,cAAA,CAAAA,cAAA,KAC1BC,MAAM,CAAA,EAAA,EAAA,EAAA;IACTC,EAAE,EAAE,MAAOC,IAAuC,IAAK;AACrD,MAAA,MAAMA,IAAI,CAAC;AAAEC,QAAAA,CAAC,EAAE,CAAA;AAAE,OAAC,CAAC,CAAA;KACrB;AACDC,IAAAA,IAAI,EAAE;AAAED,MAAAA,CAAC,EAAE,CAAA;AAAE,KAAA;AAAC,GAAA,CACf,CAAC,CAAA;EAEF,oBACEE,cAAA,CAAAC,aAAA,CAACrD,SAAS,EAAAsD,QAAA,KACJnB,cAAc,EAAA;AAClBnB,IAAAA,GAAG,EAAEA,GAAI;IACTQ,SAAS,EAAE+B,UAAU,CAAC1C,GAAG,CAACW,SAAS,EAAEA,SAAS,CAAE;AAChDd,IAAAA,UAAU,EAAE8C,OAAO,CAAClC,OAAO,CAAE;AAC7BlB,IAAAA,UAAU,EAAEoD,OAAO,CAAC7B,SAAS,CAAE;AAC/BtB,IAAAA,MAAM,EAAEiC,KAAM;AACdmB,IAAAA,YAAY,EAAE;AAAEC,MAAAA,SAAS,EAAE,cAAc;AAAEC,MAAAA,MAAM,EAAE,EAAA;AAAG,KAAA;AAAE,GAAA,CAAA,eAExDP,cAAA,CAAAC,aAAA,CAACO,EAAQ,CAACC,IAAI,EAAA;IACZC,CAAC,EACCf,MAAM,CAACgB,SAAS,IAAIrC,iBAAiB,GAChCD,SAAS,CAACN,IAAI,CAAC,GACfyB,aAAa,CAACM,CAAC,CAACF,EAAE,CAAEE,CAAC,IAAKzB,SAAS,CAACe,YAAY,CAACU,CAAC,CAAC,CAAC,CAC1D;AACDc,IAAAA,IAAI,EAAErB,YAAY,GAAG,yCAAyC,GAAG1B,KAAAA;AAAM,GACxE,CACQ,CAAC,CAAA;AAEhB,CAAC,EAAC;AACFJ,GAAG,CAACW,SAAS,GAAGZ,SAAS,CAAA;AACzBC,GAAG,CAACoD,WAAW,GAAGtD,cAAc;;;;"}
package/_internal/Arcs.js DELETED
@@ -1,2 +0,0 @@
1
- export { A as Arcs, S as StyledArcs } from './Arcs2.js';
2
- //# sourceMappingURL=Arcs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Arcs2.js","sources":["../../src/components/Arcs/styles.ts","../../src/components/Arcs/Arcs.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { StyledArcsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledArcs = styled.g<StyledArcsProps>``;\n","import React, { RefObject, forwardRef } from 'react';\nimport classNames from 'classnames';\nimport { animated, useSpring } from '@react-spring/web';\nimport { interpolate as d3interpolate } from 'd3';\n\nimport { Comp, useId } from '@redsift/design-system';\n\nimport { ArcsProps } from './types';\nimport { StyledArcs } from './styles';\nimport { Arc } from '../Arc';\nimport { config } from '../../config';\n\nconst COMPONENT_NAME = 'Arcs';\nconst CLASSNAME = 'redsift-arcs';\n\nexport const Arcs: Comp<ArcsProps, SVGGElement> = forwardRef((props, ref) => {\n const {\n arcs,\n className,\n color,\n disableAnimations,\n hasLabels,\n hasStroke,\n id: propsId,\n labelDecorator,\n onClick,\n role,\n sliceProps,\n tooltipVariant,\n ...forwardedProps\n } = props;\n const [_id] = useId();\n const id = propsId ?? _id;\n\n const animatedProps = useSpring({\n ...config,\n to: async (next: (props?: object) => Promise<void>) => {\n await next({ t: 1 });\n },\n from: { t: 0 },\n });\n\n return (\n <StyledArcs\n {...forwardedProps}\n className={classNames(Arcs.className, className)}\n ref={ref as RefObject<SVGGElement>}\n >\n <g className=\"arc-group\">\n {arcs.map((arc, index) => {\n const arcIndex = arc.index ?? index;\n const arcId = arc.id ?? `id${id}__arc-${arcIndex}`;\n\n return (\n <Arc\n {...sliceProps}\n color={color}\n disableAnimations={disableAnimations}\n hasStroke={hasStroke}\n labelDecorator={labelDecorator}\n onClick={onClick}\n role={role}\n tooltipVariant={tooltipVariant}\n {...arc}\n key={arcId}\n id={arcId}\n index={arcIndex}\n />\n );\n })}\n </g>\n {hasLabels ? (\n <g className=\"arc-label-group\">\n {arcs\n .filter((arc) => {\n const value = arc.data.data.value;\n const percent = arc.data.data.percent;\n return percent ? value > 0 && percent >= 0.1 : value > 0;\n })\n .map((arc, index) => {\n const arcIndex = arc.index ?? index;\n const arcId = arc.id ?? `id${id}__arc-${arcIndex}`;\n const arcLabelDecorator = arc.labelDecorator ?? labelDecorator;\n const interpolator = d3interpolate(arc.from, arc.data);\n\n return (\n <animated.text\n alignmentBaseline=\"middle\"\n className={`arc-label _${index}`}\n key={`${arcId}-label`}\n textAnchor=\"middle\"\n transform={\n config.immediate || disableAnimations\n ? `translate(${arc.createArc.centroid(arc.data).map((n) => n.toFixed(4))})`\n : animatedProps.t.to(\n (t) => `translate(${arc.createArc.centroid(interpolator(t)).map((n) => n.toFixed(4))})`\n )\n }\n >\n {arcLabelDecorator ? arcLabelDecorator(arc.data) : arc.data.data.key}\n </animated.text>\n );\n })}\n </g>\n ) : null}\n </StyledArcs>\n );\n});\nArcs.className = CLASSNAME;\nArcs.displayName = COMPONENT_NAME;\n"],"names":["StyledArcs","styled","g","COMPONENT_NAME","CLASSNAME","Arcs","forwardRef","props","ref","arcs","className","color","disableAnimations","hasLabels","hasStroke","id","propsId","labelDecorator","onClick","role","sliceProps","tooltipVariant","forwardedProps","_objectWithoutProperties","_excluded","_id","useId","animatedProps","useSpring","_objectSpread","config","to","next","t","from","React","createElement","_extends","classNames","map","arc","index","_arc$index","_arc$id","arcIndex","arcId","Arc","key","filter","value","data","percent","_arc$index2","_arc$id2","_arc$labelDecorator","arcLabelDecorator","interpolator","d3interpolate","animated","text","alignmentBaseline","textAnchor","transform","immediate","createArc","centroid","n","toFixed","displayName"],"mappings":"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"}
package/_internal/Axis.js DELETED
@@ -1,2 +0,0 @@
1
- export { A as Axis, b as AxisPosition, a as AxisVariant, S as StyledAxis, g as getAxisType } from './Axis2.js';
2
- //# sourceMappingURL=Axis.js.map