@wix/design-system
Version:
@wix/design-system
83 lines • 2.83 kB
TypeScript
import React from 'react';
import PropTypes from 'prop-types';
import { ScaleBand, ScaleLinear } from 'd3-scale';
import { Selection } from 'd3-selection';
import { StackedBarChartItem, StackedBarChartProps } from './StackedBarChart.types';
type StackedBarChartState = {
data: {
sum: number;
label: string;
values: number[];
}[];
x: ScaleBand<string>;
y: ScaleLinear<number, number, never>;
yAxis?: unknown;
width?: number;
svg?: Selection<SVGSVGElement, unknown, any, undefined>;
};
declare class StackedBarChart extends React.PureComponent<StackedBarChartProps, StackedBarChartState> {
chart: React.RefObject<SVGSVGElement>;
data: never[];
colors: any[];
newBrandingColors: any[];
margin: {
top: number;
right: number;
bottom: number;
left: number;
gap: number;
barWidth: number;
} & {
top: number;
left: number;
bottom: number;
right: number;
};
height: number;
chartHeight: number;
static displayName: string;
static defaultProps: {
data: never[];
width: number;
height: number;
margin: {
top: number;
right: number;
bottom: number;
left: number;
gap: number;
barWidth: number;
};
tooltipCommonProps: {};
yAxisTickFormat: (n: number | {
valueOf(): number;
}) => string;
};
static propTypes: {
dataHook: PropTypes.Requireable<string>;
className: PropTypes.Requireable<string>;
data: PropTypes.Requireable<(PropTypes.InferProps<{
label: PropTypes.Requireable<PropTypes.ReactNodeLike>;
values: PropTypes.Requireable<(number | null | undefined)[]>;
}> | null | undefined)[]>;
tooltipTemplate: PropTypes.Requireable<(...args: any[]) => any>;
tooltipCommonProps: PropTypes.Requireable<PropTypes.InferProps<any>>;
height: PropTypes.Requireable<number>;
width: PropTypes.Requireable<number>;
margin: PropTypes.Requireable<PropTypes.InferProps<{
right: PropTypes.Requireable<number>;
left: PropTypes.Requireable<number>;
bottom: PropTypes.Requireable<number>;
top: PropTypes.Requireable<number>;
}>>;
yAxisTickFormat: PropTypes.Requireable<(...args: any[]) => any>;
};
constructor(props: StackedBarChartProps);
_getAmountOfBarsCanRender: (data?: StackedBarChartItem[]) => StackedBarChartItem[];
_update: () => void;
componentDidMount(): void;
componentDidUpdate(prevProps: StackedBarChartProps): boolean;
render(): React.JSX.Element;
}
export default StackedBarChart;
//# sourceMappingURL=StackedBarChart.d.ts.map