@mui/x-charts
Version:
The community edition of MUI X Charts components.
39 lines • 2.38 kB
TypeScript
import { type ChartDrawingArea } from "../../../../hooks/useDrawingArea.js";
import { type AllSeriesType } from "../../../../models/seriesType/index.js";
import { type ChartSeriesType, type DatasetType } from "../../../../models/seriesType/config.js";
import { type ChartSeriesConfig } from "../../models/seriesConfig/index.js";
import { type DefaultizedSeriesGroups, type ProcessedSeries, type SeriesLayout } from "./useChartSeries.types.js";
import type { IsItemVisibleFunction } from "../../featurePlugins/useChartVisibilityManager/index.js";
/**
* This method groups series by type and adds defaultized values such as the ids and colors.
* It does NOT apply the series processors - that happens in a selector.
* @param series The array of series provided by the developer
* @param colors The color palette used to defaultize series colors
* @returns An object structuring all the series by type with default values.
*/
export declare const defaultizeSeries: <TSeriesType extends ChartSeriesType>({
series,
colors,
seriesConfig
}: {
series: Readonly<AllSeriesType<TSeriesType>[]>;
colors: readonly string[];
seriesConfig: ChartSeriesConfig<TSeriesType>;
}) => DefaultizedSeriesGroups<TSeriesType>;
/**
* Applies series processors to the defaultized series groups.
* This should be called in a selector to compute processed series on-demand.
* @param defaultizedSeries The defaultized series groups
* @param seriesConfig The series configuration
* @param dataset The optional dataset
* @returns Processed series with all transformations applied
*/
export declare const applySeriesProcessors: <TSeriesType extends ChartSeriesType>(defaultizedSeries: DefaultizedSeriesGroups<TSeriesType>, seriesConfig: ChartSeriesConfig<TSeriesType>, dataset?: Readonly<DatasetType>, isItemVisible?: IsItemVisibleFunction) => ProcessedSeries<TSeriesType>;
/**
* Applies series processors with drawing area to series if defined.
* @param processedSeries The processed series groups
* @param seriesConfig The series configuration
* @param drawingArea The drawing area
* @returns Processed series with all transformations applied
*/
export declare const applySeriesLayout: <TSeriesType extends ChartSeriesType>(processedSeries: ProcessedSeries<TSeriesType>, seriesConfig: ChartSeriesConfig<TSeriesType>, drawingArea: ChartDrawingArea) => SeriesLayout<TSeriesType>;