UNPKG

@mui/x-charts

Version:

The community edition of MUI X Charts components.

45 lines (44 loc) 2.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useSeriesOfType = exports.useAllSeriesOfType = exports.selectorSeriesOfType = exports.selectorAllSeriesOfType = void 0; var _warning = require("@mui/x-internals/warning"); var _store = require("@mui/x-internals/store"); var _useChartSeries = require("./plugins/corePlugins/useChartSeries/useChartSeries.selectors"); var _useStore = require("./store/useStore"); const selectorAllSeriesOfType = exports.selectorAllSeriesOfType = (0, _store.createSelector)(_useChartSeries.selectorChartSeriesProcessed, (processedSeries, seriesType) => processedSeries[seriesType]); const selectorSeriesOfType = exports.selectorSeriesOfType = (0, _store.createSelectorMemoized)(_useChartSeries.selectorChartSeriesProcessed, (processedSeries, seriesType, ids) => { if (ids === undefined || Array.isArray(ids) && ids.length === 0) { return processedSeries[seriesType]?.seriesOrder?.map(seriesId => processedSeries[seriesType]?.series[seriesId]) ?? []; } if (!Array.isArray(ids)) { return processedSeries[seriesType]?.series?.[ids]; } const result = []; const failedIds = []; for (const id of ids) { const series = processedSeries[seriesType]?.series?.[id]; if (series) { result.push(series); } else { failedIds.push(id); } } if (process.env.NODE_ENV !== 'production' && failedIds.length > 0) { const formattedIds = failedIds.map(v => JSON.stringify(v)).join(', '); const fnName = `use${seriesType.charAt(0).toUpperCase()}${seriesType.slice(1)}Series`; (0, _warning.warnOnce)([`MUI X Charts: The following ids provided to "${fnName}" could not be found: ${formattedIds}.`, `Make sure that they exist and their series are using the "${seriesType}" series type.`]); } return result; }); const useAllSeriesOfType = seriesType => { const store = (0, _useStore.useStore)(); return store.use(selectorAllSeriesOfType, seriesType); }; exports.useAllSeriesOfType = useAllSeriesOfType; const useSeriesOfType = (seriesType, seriesId) => { const store = (0, _useStore.useStore)(); return store.use(selectorSeriesOfType, seriesType, seriesId); }; exports.useSeriesOfType = useSeriesOfType;