UNPKG

@mui/x-charts

Version:

The community edition of MUI X Charts components.

49 lines (45 loc) 2.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.selectorChartsDataset = exports.selectorChartSeriesState = exports.selectorChartSeriesProcessed = exports.selectorChartSeriesConfigGetter = exports.selectorChartDefaultizedSeries = void 0; var _store = require("@mui/x-internals/store"); var _processSeries = require("./processSeries"); var _useChartVisibilityManager = require("../../featurePlugins/useChartVisibilityManager"); var _useChartSeriesConfig = require("../useChartSeriesConfig/useChartSeriesConfig.selectors"); const selectorChartSeriesState = state => state.series; exports.selectorChartSeriesState = selectorChartSeriesState; const selectorChartDefaultizedSeries = exports.selectorChartDefaultizedSeries = (0, _store.createSelector)(selectorChartSeriesState, seriesState => seriesState.defaultizedSeries); /** * Get the dataset from the series state. * @returns {DatasetType | undefined} The dataset. */ const selectorChartsDataset = exports.selectorChartsDataset = (0, _store.createSelector)(selectorChartSeriesState, seriesState => seriesState.dataset); /** * Get the processed series after applying series processors. * This selector computes the processed series on-demand from the defaultized series. * @returns {ProcessedSeries} The processed series. */ const selectorChartSeriesProcessed = exports.selectorChartSeriesProcessed = (0, _store.createSelectorMemoized)(selectorChartDefaultizedSeries, _useChartSeriesConfig.selectorChartSeriesConfig, selectorChartsDataset, _useChartVisibilityManager.selectorIsItemVisibleGetter, function selectorChartSeriesProcessed(defaultizedSeries, seriesConfig, dataset, isItemVisible) { return (0, _processSeries.applySeriesProcessors)(defaultizedSeries, seriesConfig, dataset, isItemVisible); }); /** * Returns a function that returns the series configuration for a given series id. */ const selectorChartSeriesConfigGetter = exports.selectorChartSeriesConfigGetter = (0, _store.createSelectorMemoized)(_useChartSeriesConfig.selectorChartSeriesConfig, selectorChartSeriesProcessed, (seriesConfig, processedSeries) => { return function getSeriesConfigById(seriesId) { for (const type in processedSeries) { if (!Object.hasOwn(processedSeries, type)) { continue; } const seriesGroup = processedSeries[type]; if (seriesGroup?.series) { const item = seriesGroup.series[seriesId]; if (item) { return seriesConfig[type]; } } } return null; }; });