@redsift/charts 11.5.0 → 11.6.0-muiv5-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_virtual/_rollupPluginBabelHelpers.js +93 -0
- package/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
- package/components/Arc/Arc.d.ts +6 -0
- package/components/Arc/Arc.js +74 -0
- package/components/Arc/Arc.js.map +1 -0
- package/components/Arc/styles.d.ts +17 -0
- package/components/Arc/styles.js +49 -0
- package/components/Arc/styles.js.map +1 -0
- package/components/Arc/types.d.ts +20 -0
- package/components/Arcs/Arcs.d.ts +6 -0
- package/components/Arcs/Arcs.js +90 -0
- package/components/Arcs/Arcs.js.map +1 -0
- package/components/Arcs/styles.d.ts +9 -0
- package/components/Arcs/styles.js +9 -0
- package/components/Arcs/styles.js.map +1 -0
- package/components/Arcs/types.d.ts +17 -0
- package/components/Axis/Axis.d.ts +7 -0
- package/components/Axis/Axis.js +211 -0
- package/components/Axis/Axis.js.map +1 -0
- package/components/Axis/computeTicks.js +117 -0
- package/components/Axis/computeTicks.js.map +1 -0
- package/components/Axis/styles.d.ts +14 -0
- package/components/Axis/styles.js +51 -0
- package/components/Axis/styles.js.map +1 -0
- package/components/Axis/types.d.ts +89 -0
- package/components/Axis/types.js +24 -0
- package/components/Axis/types.js.map +1 -0
- package/components/Bar/Bar.d.ts +6 -0
- package/components/Bar/Bar.js +95 -0
- package/components/Bar/Bar.js.map +1 -0
- package/components/Bar/styles.d.ts +16 -0
- package/components/Bar/styles.js +66 -0
- package/components/Bar/styles.js.map +1 -0
- package/components/Bar/types.d.ts +46 -0
- package/components/Bar/types.js +18 -0
- package/components/Bar/types.js.map +1 -0
- package/components/BarChart/BarChart.d.ts +29 -0
- package/components/BarChart/BarChart.js +141 -0
- package/components/BarChart/BarChart.js.map +1 -0
- package/components/BarChart/BarChartBars.js +168 -0
- package/components/BarChart/BarChartBars.js.map +1 -0
- package/components/BarChart/BarChartSection.js +139 -0
- package/components/BarChart/BarChartSection.js.map +1 -0
- package/components/BarChart/EmptyBarChart.js +57 -0
- package/components/BarChart/EmptyBarChart.js.map +1 -0
- package/components/BarChart/LoadingBarChart.js +18 -0
- package/components/BarChart/LoadingBarChart.js.map +1 -0
- package/components/BarChart/RenderedLinearBarChart.js +549 -0
- package/components/BarChart/RenderedLinearBarChart.js.map +1 -0
- package/components/BarChart/RenderedOrdinalBarChart.js +236 -0
- package/components/BarChart/RenderedOrdinalBarChart.js.map +1 -0
- package/components/BarChart/context.js +13 -0
- package/components/BarChart/context.js.map +1 -0
- package/components/BarChart/intl/en-US.json.js +17 -0
- package/components/BarChart/intl/en-US.json.js.map +1 -0
- package/components/BarChart/intl/fr-FR.json.js +17 -0
- package/components/BarChart/intl/fr-FR.json.js.map +1 -0
- package/components/BarChart/intl/index.js +10 -0
- package/components/BarChart/intl/index.js.map +1 -0
- package/components/BarChart/styles.d.ts +19 -0
- package/components/BarChart/styles.js +71 -0
- package/components/BarChart/styles.js.map +1 -0
- package/components/BarChart/types.d.ts +177 -0
- package/components/BarChart/types.js +17 -0
- package/components/BarChart/types.js.map +1 -0
- package/components/BarChart/utils.js +69 -0
- package/components/BarChart/utils.js.map +1 -0
- package/components/ChartContainer/ChartContainer.d.ts +9 -0
- package/components/ChartContainer/ChartContainer.js +167 -0
- package/components/ChartContainer/ChartContainer.js.map +1 -0
- package/components/ChartContainer/context.js +6 -0
- package/components/ChartContainer/context.js.map +1 -0
- package/components/ChartContainer/intl/en-US.json.js +14 -0
- package/components/ChartContainer/intl/en-US.json.js.map +1 -0
- package/components/ChartContainer/intl/fr-FR.json.js +14 -0
- package/components/ChartContainer/intl/fr-FR.json.js.map +1 -0
- package/components/ChartContainer/intl/index.js +10 -0
- package/components/ChartContainer/intl/index.js.map +1 -0
- package/components/ChartContainer/styles.d.ts +17 -0
- package/components/ChartContainer/styles.js +76 -0
- package/components/ChartContainer/styles.js.map +1 -0
- package/components/ChartContainer/types.d.ts +48 -0
- package/components/DataPoint/DataPoint.d.ts +6 -0
- package/components/DataPoint/DataPoint.js +104 -0
- package/components/DataPoint/DataPoint.js.map +1 -0
- package/components/DataPoint/styles.d.ts +12 -0
- package/components/DataPoint/styles.js +10 -0
- package/components/DataPoint/styles.js.map +1 -0
- package/components/DataPoint/types.d.ts +60 -0
- package/components/Dot/Dot.d.ts +6 -0
- package/components/Dot/Dot.js +55 -0
- package/components/Dot/Dot.js.map +1 -0
- package/components/Dot/styles.d.ts +16 -0
- package/components/Dot/styles.js +49 -0
- package/components/Dot/styles.js.map +1 -0
- package/components/Dot/types.d.ts +30 -0
- package/components/Dot/types.js +14 -0
- package/components/Dot/types.js.map +1 -0
- package/components/Legend/Legend.d.ts +6 -0
- package/components/Legend/Legend.js +73 -0
- package/components/Legend/Legend.js.map +1 -0
- package/components/Legend/styles.d.ts +11 -0
- package/components/Legend/styles.js +15 -0
- package/components/Legend/styles.js.map +1 -0
- package/components/Legend/types.d.ts +44 -0
- package/components/LegendItem/LegendItem.js +96 -0
- package/components/LegendItem/LegendItem.js.map +1 -0
- package/components/LegendItem/styles.js +63 -0
- package/components/LegendItem/styles.js.map +1 -0
- package/components/LegendItem/types.d.ts +20 -0
- package/components/Line/Line.d.ts +6 -0
- package/components/Line/Line.js +55 -0
- package/components/Line/Line.js.map +1 -0
- package/components/Line/styles.d.ts +9 -0
- package/components/Line/styles.js +9 -0
- package/components/Line/styles.js.map +1 -0
- package/components/Line/types.d.ts +21 -0
- package/components/LineChart/EmptyLineChart.js +58 -0
- package/components/LineChart/EmptyLineChart.js.map +1 -0
- package/components/LineChart/LineChart.d.ts +6 -0
- package/components/LineChart/LineChart.js +96 -0
- package/components/LineChart/LineChart.js.map +1 -0
- package/components/LineChart/LoadingLineChart.js +18 -0
- package/components/LineChart/LoadingLineChart.js.map +1 -0
- package/components/LineChart/RenderedLineChart.js +372 -0
- package/components/LineChart/RenderedLineChart.js.map +1 -0
- package/components/LineChart/intl/en-US.json.js +17 -0
- package/components/LineChart/intl/en-US.json.js.map +1 -0
- package/components/LineChart/intl/fr-FR.json.js +17 -0
- package/components/LineChart/intl/fr-FR.json.js.map +1 -0
- package/components/LineChart/intl/index.js +10 -0
- package/components/LineChart/intl/index.js.map +1 -0
- package/components/LineChart/styles.d.ts +17 -0
- package/components/LineChart/styles.js +53 -0
- package/components/LineChart/styles.js.map +1 -0
- package/components/LineChart/types.d.ts +90 -0
- package/components/LineChart/types.js +17 -0
- package/components/LineChart/types.js.map +1 -0
- package/components/LineChart/utils.js +67 -0
- package/components/LineChart/utils.js.map +1 -0
- package/components/PieChart/EmptyPieChart.js +85 -0
- package/components/PieChart/EmptyPieChart.js.map +1 -0
- package/components/PieChart/LoadingPieChart.js +18 -0
- package/components/PieChart/LoadingPieChart.js.map +1 -0
- package/components/PieChart/PieChart.d.ts +6 -0
- package/components/PieChart/PieChart.js +98 -0
- package/components/PieChart/PieChart.js.map +1 -0
- package/components/PieChart/RenderedPieChart.js +198 -0
- package/components/PieChart/RenderedPieChart.js.map +1 -0
- package/components/PieChart/intl/en-US.json.js +9 -0
- package/components/PieChart/intl/en-US.json.js.map +1 -0
- package/components/PieChart/intl/fr-FR.json.js +9 -0
- package/components/PieChart/intl/fr-FR.json.js.map +1 -0
- package/components/PieChart/intl/index.js +10 -0
- package/components/PieChart/intl/index.js.map +1 -0
- package/components/PieChart/styles.d.ts +24 -0
- package/components/PieChart/styles.js +168 -0
- package/components/PieChart/styles.js.map +1 -0
- package/components/PieChart/types.d.ts +115 -0
- package/components/PieChart/types.js +27 -0
- package/components/PieChart/types.js.map +1 -0
- package/components/PieChart/utils.js +37 -0
- package/components/PieChart/utils.js.map +1 -0
- package/components/ScatterPlot/EmptyScatterPlot.js +58 -0
- package/components/ScatterPlot/EmptyScatterPlot.js.map +1 -0
- package/components/ScatterPlot/LoadingScatterPlot.js +18 -0
- package/components/ScatterPlot/LoadingScatterPlot.js.map +1 -0
- package/components/ScatterPlot/RenderedScatterPlot.js +352 -0
- package/components/ScatterPlot/RenderedScatterPlot.js.map +1 -0
- package/components/ScatterPlot/ScatterPlot.d.ts +6 -0
- package/components/ScatterPlot/ScatterPlot.js +105 -0
- package/components/ScatterPlot/ScatterPlot.js.map +1 -0
- package/components/ScatterPlot/intl/en-US.json.js +12 -0
- package/components/ScatterPlot/intl/en-US.json.js.map +1 -0
- package/components/ScatterPlot/intl/fr-FR.json.js +17 -0
- package/components/ScatterPlot/intl/fr-FR.json.js.map +1 -0
- package/components/ScatterPlot/intl/index.js +10 -0
- package/components/ScatterPlot/intl/index.js.map +1 -0
- package/components/ScatterPlot/styles.d.ts +17 -0
- package/components/ScatterPlot/styles.js +53 -0
- package/components/ScatterPlot/styles.js.map +1 -0
- package/components/ScatterPlot/types.d.ts +109 -0
- package/components/ScatterPlot/types.js +24 -0
- package/components/ScatterPlot/types.js.map +1 -0
- package/components/ScatterPlot/utils.js +70 -0
- package/components/ScatterPlot/utils.js.map +1 -0
- package/config.js +15 -0
- package/config.js.map +1 -0
- package/design-system/src/react-aria/react-aria/i18n/useMessageFormatter.d.ts +5 -0
- package/hooks/useBrush.d.ts +17 -0
- package/hooks/useBrush.js +48 -0
- package/hooks/useBrush.js.map +1 -0
- package/hooks/useColor.d.ts +18 -0
- package/hooks/useColor.js +20 -0
- package/hooks/useColor.js.map +1 -0
- package/hooks/useFormatCategoricalData.d.ts +26 -0
- package/hooks/useFormatCategoricalData.js +57 -0
- package/hooks/useFormatCategoricalData.js.map +1 -0
- package/hooks/useZoom.d.ts +26 -0
- package/hooks/useZoom.js +39 -0
- package/hooks/useZoom.js.map +1 -0
- package/index.d.ts +51 -1277
- package/index.js +42 -5118
- package/index.js.map +1 -1
- package/package.json +4 -4
- package/scheme.d.ts +32 -0
- package/scheme.js +47 -0
- package/scheme.js.map +1 -0
- package/types/axis.d.ts +48 -0
- package/types/data.d.ts +72 -0
- package/types/legend.d.ts +30 -0
- package/types/legend.js +21 -0
- package/types/legend.js.map +1 -0
- package/types/scale.d.ts +48 -0
- package/types/size.d.ts +20 -0
- package/types/size.js +8 -0
- package/types/size.js.map +1 -0
- package/types/theme.d.ts +23 -0
- package/types/theme.js +13 -0
- package/types/theme.js.map +1 -0
- package/utils/index.d.ts +11 -0
- package/utils/index.js +44 -0
- package/utils/index.js.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BarChartBars.js","sources":["../../../src/components/BarChart/BarChartBars.tsx"],"sourcesContent":["import React, { forwardRef, RefObject } from 'react';\n\nimport { Comp, Flexbox, Text } from '@redsift/design-system';\n\nimport { BarChartBarsProps, ComputedBarProps } from './types';\nimport { StyledBarChartBars } from './styles';\nimport { useBarChartContext } from './context';\nimport { BarDatum } from '../../types';\nimport { Bar, BarOrientation } from '../Bar';\n\nconst COMPONENT_NAME = 'BarChartBars';\nconst CLASSNAME = 'redsift-bars';\n\nexport const BarChartBars: Comp<BarChartBarsProps, SVGGElement> = forwardRef((props, ref) => {\n const { category = 'default', ...forwardedProps } = props;\n\n const {\n barProps,\n barRole,\n bars,\n barWidth,\n cache,\n categories,\n colorScale,\n direction,\n disableAnimations,\n format,\n gap,\n getBarAnchorProps,\n hasCategory,\n id,\n isBarSelected,\n labelDecorator,\n onBarClick,\n scaleX,\n scaleY,\n tooltipVariant,\n tooltipDecorator,\n xScaleType,\n } = useBarChartContext();\n\n const filteredBarChartBars = bars.filter((bar) => bar.category === category && bar.value > 0);\n const categoryIndex = categories.indexOf(category);\n const categoryLength = categories.length;\n\n return (\n <StyledBarChartBars\n key={`${id}-series-${category}`}\n aria-hidden=\"false\"\n role=\"region\"\n {...(hasCategory\n ? {\n 'aria-label': format('series-legend', {\n category,\n categoryIndex: categoryIndex + 1,\n categoryLength,\n barLength: filteredBarChartBars.length,\n }),\n }\n : {})}\n {...forwardedProps}\n ref={ref as RefObject<SVGGElement>}\n >\n {filteredBarChartBars.map((bar, index: number) => {\n const to = {\n data: bar,\n category,\n };\n const from = cache.current ? { data: cache.current[index] } : undefined;\n\n const groupedBars = bars.filter((b) => {\n return xScaleType === 'Date' || xScaleType === 'dateString'\n ? (b.key as Date).getTime() === (bar.key as Date).getTime()\n : b.key === bar.key;\n });\n\n return (\n <Bar\n color={colorScale?.(to.data.category)!}\n data={to as BarDatum}\n dataset={bars}\n groupedData={groupedBars}\n disableAnimations={disableAnimations}\n gap={gap}\n id={`id${id}__bar-${categoryIndex}.${index}`}\n index={index}\n isSelected={Boolean(isBarSelected!(to as BarDatum))}\n key={`bar _${categoryIndex}.${index}`}\n labelDecorator={labelDecorator}\n maxHeight={scaleY(bar.cumulativeValue - bar.value)}\n anchorProps={getBarAnchorProps ? getBarAnchorProps(to) : undefined}\n onClick={onBarClick}\n orientation={BarOrientation.vertical}\n direction={direction}\n previousData={from! as BarDatum}\n scale={scaleY}\n scalePosition={scaleX}\n tooltipVariant={tooltipVariant}\n tooltipDecorator={tooltipDecorator}\n {...barProps}\n width={barProps?.width && typeof barProps.width === 'number' ? barProps.width : barWidth}\n height={undefined}\n role={barRole}\n />\n );\n })}\n </StyledBarChartBars>\n );\n});\n\nBarChartBars.className = CLASSNAME;\nBarChartBars.displayName = COMPONENT_NAME;\n\nexport const BarChartGroupedTooltip: React.FC<{\n dateFormatter: (date: Date) => string;\n categories: string[];\n categoryDecorator?: (category: string) => string;\n categoryColor: (category: string) => string;\n datum: BarDatum;\n groupedData: ComputedBarProps[] | undefined;\n}> = ({ dateFormatter, categories, categoryDecorator, categoryColor, datum, groupedData }) => (\n <Flexbox flexDirection=\"column\" margin=\"16px\" gap=\"0\">\n <Flexbox flexDirection=\"row\" gap=\"8px\">\n <Text fontWeight=\"400\" fontSize=\"14px\">\n Date:\n </Text>\n <Text fontWeight=\"700\" fontSize=\"14px\">\n {dateFormatter(datum.data.key as Date)}\n </Text>\n </Flexbox>\n <div style={{ width: '100%', height: '1px', backgroundColor: '#858585', margin: '8px 0' }} />\n <Flexbox flexDirection=\"row\" gap=\"8px\">\n <Text fontWeight=\"400\" fontSize=\"14px\">\n Total:\n </Text>\n <Text fontWeight=\"600\" fontSize=\"14px\">\n {groupedData?.reduce((acc, d) => acc + d.value, 0)}\n </Text>\n </Flexbox>\n <Flexbox flexDirection=\"column\" marginTop=\"4px\" gap=\"8px\">\n {categories.map((category) => {\n const value = groupedData?.find((d) => d.category === category)?.value;\n const color = categoryColor(category);\n return value ? (\n <Flexbox key={category} alignItems=\"center\" gap=\"8px\">\n <div style={{ width: '16px', height: '16px', backgroundColor: color }} />\n <Text fontWeight=\"400\" fontSize=\"14px\" lineHeight=\"18px\">\n {categoryDecorator ? categoryDecorator(category) : category}\n </Text>\n <Text fontWeight=\"600\" fontSize=\"14px\" lineHeight=\"18px\">\n {value}\n </Text>\n </Flexbox>\n ) : null;\n })}\n </Flexbox>\n </Flexbox>\n);\n"],"names":["COMPONENT_NAME","CLASSNAME","BarChartBars","forwardRef","props","ref","category","forwardedProps","_objectWithoutProperties","_excluded","barProps","barRole","bars","barWidth","cache","categories","colorScale","direction","disableAnimations","format","gap","getBarAnchorProps","hasCategory","id","isBarSelected","labelDecorator","onBarClick","scaleX","scaleY","tooltipVariant","tooltipDecorator","xScaleType","useBarChartContext","filteredBarChartBars","filter","bar","value","categoryIndex","indexOf","categoryLength","length","React","createElement","StyledBarChartBars","_extends","key","role","barLength","map","index","to","data","from","current","undefined","groupedBars","b","getTime","Bar","color","dataset","groupedData","isSelected","Boolean","maxHeight","cumulativeValue","anchorProps","onClick","orientation","BarOrientation","vertical","previousData","scale","scalePosition","width","height","className","displayName","BarChartGroupedTooltip","_ref","dateFormatter","categoryDecorator","categoryColor","datum","Flexbox","flexDirection","margin","Text","fontWeight","fontSize","style","backgroundColor","reduce","acc","d","marginTop","_groupedData$find","find","alignItems","lineHeight"],"mappings":"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"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, objectSpread2 as _objectSpread2, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default, { forwardRef, useMemo } from 'react';
|
|
3
|
+
import classNames from 'classnames';
|
|
4
|
+
import { RedsiftColorGreenD1, RedsiftColorRedD1, RedsiftColorNeutralBlack, useTheme, isComponent } from '@redsift/design-system';
|
|
5
|
+
import { StyledBarChartSection } from './styles.js';
|
|
6
|
+
import { useBarChartContext, BarChartContext } from './context.js';
|
|
7
|
+
import { getAxisType } from '../Axis/Axis.js';
|
|
8
|
+
|
|
9
|
+
const _excluded = ["className", "from", "to", "color", "title", "titlePosition", "scaleX", "scaleY", "children", "direction"];
|
|
10
|
+
const COMPONENT_NAME = 'BarChartSection';
|
|
11
|
+
const CLASSNAME = 'redsift-barchart-section';
|
|
12
|
+
const BarChartSection = /*#__PURE__*/forwardRef((props, ref) => {
|
|
13
|
+
const {
|
|
14
|
+
className,
|
|
15
|
+
from = 0,
|
|
16
|
+
to = 1,
|
|
17
|
+
color,
|
|
18
|
+
title,
|
|
19
|
+
titlePosition = 'center',
|
|
20
|
+
scaleX,
|
|
21
|
+
scaleY,
|
|
22
|
+
children: propsChildren,
|
|
23
|
+
direction
|
|
24
|
+
} = props,
|
|
25
|
+
forwardedProps = _objectWithoutProperties(props, _excluded);
|
|
26
|
+
const {
|
|
27
|
+
textColor,
|
|
28
|
+
backgroundColor
|
|
29
|
+
} = useMemo(() => {
|
|
30
|
+
if (color === 'green') {
|
|
31
|
+
return {
|
|
32
|
+
textColor: RedsiftColorGreenD1,
|
|
33
|
+
backgroundColor: '#F7FBF9'
|
|
34
|
+
};
|
|
35
|
+
} else if (color === 'red') {
|
|
36
|
+
return {
|
|
37
|
+
textColor: RedsiftColorRedD1,
|
|
38
|
+
backgroundColor: '#FFF7F7'
|
|
39
|
+
};
|
|
40
|
+
} else if (color === undefined) {
|
|
41
|
+
return {
|
|
42
|
+
textColor: RedsiftColorNeutralBlack,
|
|
43
|
+
backgroundColor: undefined
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
return color;
|
|
47
|
+
}, [color]);
|
|
48
|
+
const theme = useTheme();
|
|
49
|
+
const context = useBarChartContext();
|
|
50
|
+
const {
|
|
51
|
+
chartHeight,
|
|
52
|
+
chartWidth,
|
|
53
|
+
margins,
|
|
54
|
+
disableAnimations,
|
|
55
|
+
xAxisTickValues,
|
|
56
|
+
xAxisTickPadding,
|
|
57
|
+
xAxisTickRotation,
|
|
58
|
+
xAxisTickSize,
|
|
59
|
+
xAxisTickFormat,
|
|
60
|
+
xAxisTickRemodelling,
|
|
61
|
+
xAxisVariant,
|
|
62
|
+
yAxisTickValues,
|
|
63
|
+
yAxisTickPadding,
|
|
64
|
+
yAxisTickRotation,
|
|
65
|
+
yAxisTickSize,
|
|
66
|
+
yAxisTickFormat,
|
|
67
|
+
yAxisTickRemodelling,
|
|
68
|
+
yAxisVariant
|
|
69
|
+
} = context;
|
|
70
|
+
const sectionHeight = Math.max(0, Math.min(1, to - from)) * chartHeight;
|
|
71
|
+
const sectionY = Math.max(0, Math.min(1, from)) * chartHeight;
|
|
72
|
+
const titleX = titlePosition === 'center' ? chartWidth / 2 : titlePosition === 'right' ? chartWidth - 10 : 10;
|
|
73
|
+
const titleAnchor = titlePosition === 'center' ? 'middle' : titlePosition === 'right' ? 'end' : 'start';
|
|
74
|
+
const children = useMemo(() => {
|
|
75
|
+
const renderedChildren = [];
|
|
76
|
+
React__default.Children.forEach(propsChildren, child => {
|
|
77
|
+
if (! /*#__PURE__*/React__default.isValidElement(child)) return;
|
|
78
|
+
const isX = getAxisType(child.props.position) === 'x';
|
|
79
|
+
let enhancedChild = child;
|
|
80
|
+
if (isComponent('Axis')(child)) {
|
|
81
|
+
var _ref;
|
|
82
|
+
enhancedChild = /*#__PURE__*/React__default.cloneElement(child, _objectSpread2({
|
|
83
|
+
key: child.key || `axis-${child.props.position}`,
|
|
84
|
+
chartWidth,
|
|
85
|
+
chartHeight,
|
|
86
|
+
sectionHeight,
|
|
87
|
+
scale: isX ? scaleX : scaleY,
|
|
88
|
+
x: child.props.position === 'right' ? chartWidth : 0,
|
|
89
|
+
y: child.props.position === 'bottom' ? sectionHeight : child.props.position === 'top' ? 0 : sectionHeight,
|
|
90
|
+
disableAnimations,
|
|
91
|
+
length: isX ? chartWidth : sectionHeight,
|
|
92
|
+
tickValues: (_ref = isX ? xAxisTickValues : yAxisTickValues) !== null && _ref !== void 0 ? _ref : 8,
|
|
93
|
+
tickPadding: isX ? xAxisTickPadding : yAxisTickPadding,
|
|
94
|
+
tickRotation: isX ? xAxisTickRotation : yAxisTickRotation,
|
|
95
|
+
tickSize: isX ? xAxisTickSize : yAxisTickSize,
|
|
96
|
+
tickFormat: isX ? xAxisTickFormat : yAxisTickFormat,
|
|
97
|
+
tickRemodelling: isX ? xAxisTickRemodelling : yAxisTickRemodelling,
|
|
98
|
+
variant: isX ? xAxisVariant : yAxisVariant,
|
|
99
|
+
textColor: isX ? undefined : color,
|
|
100
|
+
tickToColor: (_, index) => index !== 0
|
|
101
|
+
}, child.props));
|
|
102
|
+
}
|
|
103
|
+
renderedChildren.push(enhancedChild);
|
|
104
|
+
});
|
|
105
|
+
return renderedChildren;
|
|
106
|
+
}, [propsChildren]);
|
|
107
|
+
return /*#__PURE__*/React__default.createElement(BarChartContext.Provider, {
|
|
108
|
+
value: _objectSpread2(_objectSpread2({}, context), {}, {
|
|
109
|
+
scaleX: scaleX,
|
|
110
|
+
scaleY: scaleY,
|
|
111
|
+
direction,
|
|
112
|
+
sectionHeight
|
|
113
|
+
})
|
|
114
|
+
}, /*#__PURE__*/React__default.createElement(StyledBarChartSection, _extends({}, forwardedProps, {
|
|
115
|
+
className: classNames(BarChartSection.className, className),
|
|
116
|
+
transform: `translate(${margins.left},${(margins.top || 0) + sectionY})`,
|
|
117
|
+
ref: ref,
|
|
118
|
+
$theme: theme,
|
|
119
|
+
$textColor: textColor
|
|
120
|
+
}), backgroundColor ? /*#__PURE__*/React__default.createElement("rect", {
|
|
121
|
+
x: 0,
|
|
122
|
+
y: 0,
|
|
123
|
+
width: chartWidth,
|
|
124
|
+
height: sectionHeight,
|
|
125
|
+
fill: backgroundColor
|
|
126
|
+
}) : null, title && /*#__PURE__*/React__default.createElement("text", {
|
|
127
|
+
className: "title colored",
|
|
128
|
+
x: titleX,
|
|
129
|
+
y: direction === 'up' ? 8 : direction === 'down' ? sectionHeight - 8 : sectionHeight / 2,
|
|
130
|
+
textAnchor: titleAnchor,
|
|
131
|
+
fontSize: 12,
|
|
132
|
+
dominantBaseline: direction === 'up' ? 'hanging' : direction === 'down' ? 'auto' : 'middle'
|
|
133
|
+
}, title), children));
|
|
134
|
+
});
|
|
135
|
+
BarChartSection.className = CLASSNAME;
|
|
136
|
+
BarChartSection.displayName = COMPONENT_NAME;
|
|
137
|
+
|
|
138
|
+
export { BarChartSection };
|
|
139
|
+
//# sourceMappingURL=BarChartSection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BarChartSection.js","sources":["../../../src/components/BarChart/BarChartSection.tsx"],"sourcesContent":["import React, { forwardRef, RefObject, useMemo } from 'react';\nimport classNames from 'classnames';\n\nimport {\n Comp,\n isComponent,\n RedsiftColorGreenD1,\n RedsiftColorNeutralBlack,\n RedsiftColorRedD1,\n useTheme,\n} from '@redsift/design-system';\n\nimport { BarChartSectionProps } from './types';\nimport { StyledBarChartSection } from './styles';\nimport { BarChartContext, useBarChartContext } from './context';\nimport { getAxisType } from '../Axis';\n\nconst COMPONENT_NAME = 'BarChartSection';\nconst CLASSNAME = 'redsift-barchart-section';\n\nexport const BarChartSection: Comp<BarChartSectionProps, SVGGElement> = forwardRef((props, ref) => {\n const {\n className,\n from = 0,\n to = 1,\n color,\n title,\n titlePosition = 'center',\n scaleX,\n scaleY,\n children: propsChildren,\n direction,\n ...forwardedProps\n } = props;\n\n const { textColor, backgroundColor } = useMemo(() => {\n if (color === 'green') {\n return {\n textColor: RedsiftColorGreenD1,\n backgroundColor: '#F7FBF9',\n };\n } else if (color === 'red') {\n return {\n textColor: RedsiftColorRedD1,\n backgroundColor: '#FFF7F7',\n };\n } else if (color === undefined) {\n return {\n textColor: RedsiftColorNeutralBlack,\n backgroundColor: undefined,\n };\n }\n return color;\n }, [color]);\n\n const theme = useTheme();\n\n const context = useBarChartContext();\n const {\n chartHeight,\n chartWidth,\n margins,\n disableAnimations,\n xAxisTickValues,\n xAxisTickPadding,\n xAxisTickRotation,\n xAxisTickSize,\n xAxisTickFormat,\n xAxisTickRemodelling,\n xAxisVariant,\n yAxisTickValues,\n yAxisTickPadding,\n yAxisTickRotation,\n yAxisTickSize,\n yAxisTickFormat,\n yAxisTickRemodelling,\n yAxisVariant,\n } = context;\n\n const sectionHeight = Math.max(0, Math.min(1, to - from)) * chartHeight;\n const sectionY = Math.max(0, Math.min(1, from)) * chartHeight;\n\n const titleX = titlePosition === 'center' ? chartWidth / 2 : titlePosition === 'right' ? chartWidth - 10 : 10;\n\n const titleAnchor = titlePosition === 'center' ? 'middle' : titlePosition === 'right' ? 'end' : 'start';\n\n const children = useMemo(() => {\n const renderedChildren: React.ReactElement[] = [];\n\n React.Children.forEach(propsChildren, (child) => {\n if (!React.isValidElement(child)) return;\n const isX = getAxisType(child.props.position) === 'x';\n\n let enhancedChild = child;\n\n if (isComponent('Axis')(child)) {\n enhancedChild = React.cloneElement(child, {\n key: child.key || `axis-${child.props.position}`,\n chartWidth,\n chartHeight,\n sectionHeight,\n scale: isX ? scaleX : scaleY,\n x: child.props.position === 'right' ? chartWidth : 0,\n y: child.props.position === 'bottom' ? sectionHeight : child.props.position === 'top' ? 0 : sectionHeight,\n disableAnimations,\n length: isX ? chartWidth : sectionHeight,\n tickValues: (isX ? xAxisTickValues : yAxisTickValues) ?? 8,\n tickPadding: isX ? xAxisTickPadding : yAxisTickPadding,\n tickRotation: isX ? xAxisTickRotation : yAxisTickRotation,\n tickSize: isX ? xAxisTickSize : yAxisTickSize,\n tickFormat: isX ? xAxisTickFormat : yAxisTickFormat,\n tickRemodelling: isX ? xAxisTickRemodelling : yAxisTickRemodelling,\n variant: isX ? xAxisVariant : yAxisVariant,\n textColor: isX ? undefined : color,\n tickToColor: (_: never, index: number) => index !== 0,\n ...child.props,\n });\n }\n\n renderedChildren.push(enhancedChild);\n });\n\n return renderedChildren;\n }, [propsChildren]);\n\n return (\n <BarChartContext.Provider\n value={{\n ...context,\n scaleX: scaleX!,\n scaleY: scaleY!,\n direction,\n sectionHeight,\n }}\n >\n <StyledBarChartSection\n {...forwardedProps}\n className={classNames(BarChartSection.className, className)}\n transform={`translate(${margins.left},${(margins.top || 0) + sectionY})`}\n ref={ref as RefObject<SVGGElement>}\n $theme={theme}\n $textColor={textColor}\n >\n {backgroundColor ? <rect x={0} y={0} width={chartWidth} height={sectionHeight} fill={backgroundColor} /> : null}\n {title && (\n <text\n className=\"title colored\"\n x={titleX}\n y={direction === 'up' ? 8 : direction === 'down' ? sectionHeight - 8 : sectionHeight / 2}\n textAnchor={titleAnchor}\n fontSize={12}\n dominantBaseline={direction === 'up' ? 'hanging' : direction === 'down' ? 'auto' : 'middle'}\n >\n {title}\n </text>\n )}\n {children}\n </StyledBarChartSection>\n </BarChartContext.Provider>\n );\n});\n\nBarChartSection.className = CLASSNAME;\nBarChartSection.displayName = COMPONENT_NAME;\n"],"names":["COMPONENT_NAME","CLASSNAME","BarChartSection","forwardRef","props","ref","className","from","to","color","title","titlePosition","scaleX","scaleY","children","propsChildren","direction","forwardedProps","_objectWithoutProperties","_excluded","textColor","backgroundColor","useMemo","RedsiftColorGreenD1","RedsiftColorRedD1","undefined","RedsiftColorNeutralBlack","theme","useTheme","context","useBarChartContext","chartHeight","chartWidth","margins","disableAnimations","xAxisTickValues","xAxisTickPadding","xAxisTickRotation","xAxisTickSize","xAxisTickFormat","xAxisTickRemodelling","xAxisVariant","yAxisTickValues","yAxisTickPadding","yAxisTickRotation","yAxisTickSize","yAxisTickFormat","yAxisTickRemodelling","yAxisVariant","sectionHeight","Math","max","min","sectionY","titleX","titleAnchor","renderedChildren","React","Children","forEach","child","isValidElement","isX","getAxisType","position","enhancedChild","isComponent","_ref","cloneElement","_objectSpread","key","scale","x","y","length","tickValues","tickPadding","tickRotation","tickSize","tickFormat","tickRemodelling","variant","tickToColor","_","index","push","createElement","BarChartContext","Provider","value","StyledBarChartSection","_extends","classNames","transform","left","top","$theme","$textColor","width","height","fill","textAnchor","fontSize","dominantBaseline","displayName"],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default, { forwardRef, useRef } from 'react';
|
|
3
|
+
import { scaleLinear } from 'd3';
|
|
4
|
+
import { StyledBarChart, StyledBarChartEmptyText } from './styles.js';
|
|
5
|
+
import { sizeToDimension } from './utils.js';
|
|
6
|
+
import { useTheme } from '@redsift/design-system';
|
|
7
|
+
import { Axis } from '../Axis/Axis.js';
|
|
8
|
+
|
|
9
|
+
const _excluded = ["className", "emptyComponent", "size", "localeText"];
|
|
10
|
+
const EmptyBarChart = /*#__PURE__*/forwardRef((props, ref) => {
|
|
11
|
+
const {
|
|
12
|
+
className,
|
|
13
|
+
emptyComponent,
|
|
14
|
+
size,
|
|
15
|
+
localeText
|
|
16
|
+
} = props,
|
|
17
|
+
forwardedProps = _objectWithoutProperties(props, _excluded);
|
|
18
|
+
const theme = useTheme();
|
|
19
|
+
const chartDimensions = sizeToDimension(size);
|
|
20
|
+
const width = chartDimensions.width;
|
|
21
|
+
const height = chartDimensions.height;
|
|
22
|
+
const margins = {
|
|
23
|
+
top: 16,
|
|
24
|
+
left: 16,
|
|
25
|
+
right: 16,
|
|
26
|
+
bottom: 32
|
|
27
|
+
};
|
|
28
|
+
const chartHeight = height - margins.top - margins.bottom;
|
|
29
|
+
const chartWidth = width - margins.left - margins.right;
|
|
30
|
+
const scaleRef = useRef();
|
|
31
|
+
if (!scaleRef.current) {
|
|
32
|
+
scaleRef.current = scaleLinear().domain([]).range([0, chartWidth]);
|
|
33
|
+
}
|
|
34
|
+
return /*#__PURE__*/React__default.createElement(StyledBarChart, _extends({}, forwardedProps, {
|
|
35
|
+
className: className,
|
|
36
|
+
ref: ref
|
|
37
|
+
}), emptyComponent !== null && emptyComponent !== void 0 ? emptyComponent : /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(StyledBarChartEmptyText, {
|
|
38
|
+
$maxWidth: width,
|
|
39
|
+
$textSize: chartDimensions.fontSize / 2,
|
|
40
|
+
$theme: theme
|
|
41
|
+
}, /*#__PURE__*/React__default.createElement("span", null, localeText === null || localeText === void 0 ? void 0 : localeText.emptyChartText)), /*#__PURE__*/React__default.createElement("svg", {
|
|
42
|
+
width: width,
|
|
43
|
+
height: height
|
|
44
|
+
}, /*#__PURE__*/React__default.createElement("g", {
|
|
45
|
+
transform: `translate(${margins.left},${margins.top})`
|
|
46
|
+
}, /*#__PURE__*/React__default.createElement(Axis, {
|
|
47
|
+
position: "bottom",
|
|
48
|
+
length: chartWidth,
|
|
49
|
+
scale: scaleRef.current,
|
|
50
|
+
x: 0,
|
|
51
|
+
y: chartHeight,
|
|
52
|
+
tickValues: 4
|
|
53
|
+
})))));
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
export { EmptyBarChart };
|
|
57
|
+
//# sourceMappingURL=EmptyBarChart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmptyBarChart.js","sources":["../../../src/components/BarChart/EmptyBarChart.tsx"],"sourcesContent":["import React, { forwardRef, RefObject, useRef } from 'react';\nimport { scaleLinear as d3scaleLinear, ScaleLinear as d3ScaleLinear } from 'd3';\n\nimport { AnyScale } from '../../types';\nimport { BarChartProps } from './types';\nimport { StyledBarChart, StyledBarChartEmptyText } from './styles';\nimport { Axis } from '../Axis';\nimport { sizeToDimension } from './utils';\nimport { useTheme } from '@redsift/design-system';\n\nexport const EmptyBarChart = forwardRef<HTMLDivElement, BarChartProps>((props, ref) => {\n const { className, emptyComponent, size, localeText, ...forwardedProps } = props;\n const theme = useTheme();\n\n const chartDimensions = sizeToDimension(size!);\n const width = chartDimensions.width;\n const height = chartDimensions.height;\n const margins = { top: 16, left: 16, right: 16, bottom: 32 };\n const chartHeight = height - margins.top - margins.bottom;\n const chartWidth = width - margins.left - margins.right;\n\n const scaleRef = useRef<d3ScaleLinear<number, number>>();\n if (!scaleRef.current) {\n scaleRef.current = d3scaleLinear().domain([]).range([0, chartWidth]);\n }\n\n return (\n <StyledBarChart {...forwardedProps} className={className} ref={ref as RefObject<HTMLDivElement>}>\n {emptyComponent ?? (\n <>\n <StyledBarChartEmptyText $maxWidth={width} $textSize={chartDimensions.fontSize / 2} $theme={theme}>\n <span>{localeText?.emptyChartText}</span>\n </StyledBarChartEmptyText>\n <svg width={width} height={height}>\n <g transform={`translate(${margins.left},${margins.top})`}>\n <Axis\n position=\"bottom\"\n length={chartWidth}\n scale={scaleRef.current as AnyScale}\n x={0}\n y={chartHeight}\n tickValues={4}\n />\n </g>\n </svg>\n </>\n )}\n </StyledBarChart>\n );\n});\n"],"names":["EmptyBarChart","forwardRef","props","ref","className","emptyComponent","size","localeText","forwardedProps","_objectWithoutProperties","_excluded","theme","useTheme","chartDimensions","sizeToDimension","width","height","margins","top","left","right","bottom","chartHeight","chartWidth","scaleRef","useRef","current","d3scaleLinear","domain","range","React","createElement","StyledBarChart","_extends","Fragment","StyledBarChartEmptyText","$maxWidth","$textSize","fontSize","$theme","emptyChartText","transform","Axis","position","length","scale","x","y","tickValues"],"mappings":";;;;;;;;;AAUO,MAAMA,aAAa,gBAAGC,UAAU,CAAgC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACrF,MAAM;MAAEC,SAAS;MAAEC,cAAc;MAAEC,IAAI;AAAEC,MAAAA,UAAAA;AAA8B,KAAC,GAAGL,KAAK;AAAxBM,IAAAA,cAAc,GAAAC,wBAAA,CAAKP,KAAK,EAAAQ,SAAA,CAAA,CAAA;AAChF,EAAA,MAAMC,KAAK,GAAGC,QAAQ,EAAE,CAAA;AAExB,EAAA,MAAMC,eAAe,GAAGC,eAAe,CAACR,IAAK,CAAC,CAAA;AAC9C,EAAA,MAAMS,KAAK,GAAGF,eAAe,CAACE,KAAK,CAAA;AACnC,EAAA,MAAMC,MAAM,GAAGH,eAAe,CAACG,MAAM,CAAA;AACrC,EAAA,MAAMC,OAAO,GAAG;AAAEC,IAAAA,GAAG,EAAE,EAAE;AAAEC,IAAAA,IAAI,EAAE,EAAE;AAAEC,IAAAA,KAAK,EAAE,EAAE;AAAEC,IAAAA,MAAM,EAAE,EAAA;GAAI,CAAA;EAC5D,MAAMC,WAAW,GAAGN,MAAM,GAAGC,OAAO,CAACC,GAAG,GAAGD,OAAO,CAACI,MAAM,CAAA;EACzD,MAAME,UAAU,GAAGR,KAAK,GAAGE,OAAO,CAACE,IAAI,GAAGF,OAAO,CAACG,KAAK,CAAA;AAEvD,EAAA,MAAMI,QAAQ,GAAGC,MAAM,EAAiC,CAAA;AACxD,EAAA,IAAI,CAACD,QAAQ,CAACE,OAAO,EAAE;AACrBF,IAAAA,QAAQ,CAACE,OAAO,GAAGC,WAAa,EAAE,CAACC,MAAM,CAAC,EAAE,CAAC,CAACC,KAAK,CAAC,CAAC,CAAC,EAAEN,UAAU,CAAC,CAAC,CAAA;AACtE,GAAA;EAEA,oBACEO,cAAA,CAAAC,aAAA,CAACC,cAAc,EAAAC,QAAA,KAAKzB,cAAc,EAAA;AAAEJ,IAAAA,SAAS,EAAEA,SAAU;AAACD,IAAAA,GAAG,EAAEA,GAAAA;AAAiC,GAAA,CAAA,EAC7FE,cAAc,KAAdA,IAAAA,IAAAA,cAAc,cAAdA,cAAc,gBACbyB,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAI,QAAA,EAAA,IAAA,eACEJ,cAAA,CAAAC,aAAA,CAACI,uBAAuB,EAAA;AAACC,IAAAA,SAAS,EAAErB,KAAM;AAACsB,IAAAA,SAAS,EAAExB,eAAe,CAACyB,QAAQ,GAAG,CAAE;AAACC,IAAAA,MAAM,EAAE5B,KAAAA;AAAM,GAAA,eAChGmB,cAAA,CAAAC,aAAA,CAAOxB,MAAAA,EAAAA,IAAAA,EAAAA,UAAU,aAAVA,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAVA,UAAU,CAAEiC,cAAqB,CACjB,CAAC,eAC1BV,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKhB,IAAAA,KAAK,EAAEA,KAAM;AAACC,IAAAA,MAAM,EAAEA,MAAAA;GACzBc,eAAAA,cAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;IAAGU,SAAS,EAAG,aAAYxB,OAAO,CAACE,IAAK,CAAGF,CAAAA,EAAAA,OAAO,CAACC,GAAI,CAAA,CAAA,CAAA;AAAG,GAAA,eACxDY,cAAA,CAAAC,aAAA,CAACW,IAAI,EAAA;AACHC,IAAAA,QAAQ,EAAC,QAAQ;AACjBC,IAAAA,MAAM,EAAErB,UAAW;IACnBsB,KAAK,EAAErB,QAAQ,CAACE,OAAoB;AACpCoB,IAAAA,CAAC,EAAE,CAAE;AACLC,IAAAA,CAAC,EAAEzB,WAAY;AACf0B,IAAAA,UAAU,EAAE,CAAA;AAAE,GACf,CACA,CACA,CACL,CAEU,CAAC,CAAA;AAErB,CAAC;;;;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default, { forwardRef } from 'react';
|
|
3
|
+
import { StyledBarChart } from './styles.js';
|
|
4
|
+
|
|
5
|
+
const _excluded = ["className"];
|
|
6
|
+
const LoadingBarChart = /*#__PURE__*/forwardRef((props, ref) => {
|
|
7
|
+
const {
|
|
8
|
+
className
|
|
9
|
+
} = props,
|
|
10
|
+
forwardedProps = _objectWithoutProperties(props, _excluded);
|
|
11
|
+
return /*#__PURE__*/React__default.createElement(StyledBarChart, _extends({}, forwardedProps, {
|
|
12
|
+
className: className,
|
|
13
|
+
ref: ref
|
|
14
|
+
}), "Loading...");
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
export { LoadingBarChart };
|
|
18
|
+
//# sourceMappingURL=LoadingBarChart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LoadingBarChart.js","sources":["../../../src/components/BarChart/LoadingBarChart.tsx"],"sourcesContent":["import React, { forwardRef, RefObject } from 'react';\n\nimport { BarChartProps } from './types';\nimport { StyledBarChart } from './styles';\n\nexport const LoadingBarChart = forwardRef<HTMLDivElement, BarChartProps>(\n (props, ref) => {\n const { className, ...forwardedProps } = props;\n\n return (\n <StyledBarChart\n {...forwardedProps}\n className={className}\n ref={ref as RefObject<HTMLDivElement>}\n >\n Loading...\n </StyledBarChart>\n );\n }\n);\n"],"names":["LoadingBarChart","forwardRef","props","ref","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","StyledBarChart","_extends"],"mappings":";;;;;AAKO,MAAMA,eAAe,gBAAGC,UAAU,CACvC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACd,MAAM;AAAEC,MAAAA,SAAAA;AAA6B,KAAC,GAAGF,KAAK;AAAxBG,IAAAA,cAAc,GAAAC,wBAAA,CAAKJ,KAAK,EAAAK,SAAA,CAAA,CAAA;EAE9C,oBACEC,cAAA,CAAAC,aAAA,CAACC,cAAc,EAAAC,QAAA,KACTN,cAAc,EAAA;AAClBD,IAAAA,SAAS,EAAEA,SAAU;AACrBD,IAAAA,GAAG,EAAEA,GAAAA;AAAiC,GAAA,CAAA,EACvC,YAEe,CAAC,CAAA;AAErB,CACF;;;;"}
|