UNPKG

@mui/x-charts

Version:

The community edition of MUI X Charts components.

75 lines (71 loc) 2.88 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.useXAxisTicks = useXAxisTicks; exports.useYAxisTicks = useYAxisTicks; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _styles = require("@mui/material/styles"); var _useAxis = require("./useAxis"); var _useTicks = require("./useTicks"); var _utilities = require("../ChartsXAxis/utilities"); /** * Returns the ticks for the given X axis. Ticks outside the drawing area are not included. * The ticks returned from this hook are not grouped, i.e., they don't follow the `groups` prop of the axis. * @param axisId The id of the X axis. */ function useXAxisTicks(axisId) { const { xAxis: xAxes } = (0, _useAxis.useXAxes)(); const axis = xAxes[axisId]; // FIXME: `useAxisTicksProps` does this, but should we do it here? // eslint-disable-next-line mui/material-ui-name-matches-component-name const themedProps = (0, _styles.useThemeProps)({ props: axis, name: 'MuiChartsXAxis' }); const defaultizedProps = (0, _extends2.default)({}, _utilities.defaultProps, themedProps); return (0, _useTicks.useTicks)({ scale: axis.scale, tickNumber: axis.tickNumber, valueFormatter: defaultizedProps.valueFormatter, tickInterval: defaultizedProps.tickInterval, tickPlacement: defaultizedProps.tickPlacement, tickLabelPlacement: defaultizedProps.tickLabelPlacement, tickSpacing: defaultizedProps.tickSpacing, direction: 'x', ordinalTimeTicks: 'ordinalTimeTicks' in defaultizedProps ? defaultizedProps.ordinalTimeTicks : undefined }); } /** * Returns the ticks for the given Y axis. Ticks outside the drawing area are not included. * The ticks returned from this hook are not grouped, i.e., they don't follow the `groups` prop of the axis. * @param axisId The id of the Y axis. */ function useYAxisTicks(axisId) { const { yAxis: yAxes } = (0, _useAxis.useYAxes)(); const axis = yAxes[axisId]; // FIXME: `useAxisTicksProps` does this, but should we do it here? // eslint-disable-next-line mui/material-ui-name-matches-component-name const themedProps = (0, _styles.useThemeProps)({ props: axis, name: 'MuiChartsYAxis' }); const defaultizedProps = (0, _extends2.default)({}, _utilities.defaultProps, themedProps); return (0, _useTicks.useTicks)({ scale: axis.scale, tickNumber: axis.tickNumber, valueFormatter: defaultizedProps.valueFormatter, tickInterval: defaultizedProps.tickInterval, tickPlacement: defaultizedProps.tickPlacement, tickLabelPlacement: defaultizedProps.tickLabelPlacement, tickSpacing: defaultizedProps.tickSpacing, direction: 'y', // @ts-expect-error ordinalTimeTicks: defaultizedProps.ordinalTimeTicks }); }