UNPKG

@mui/x-charts

Version:

The community edition of MUI X Charts components.

99 lines (98 loc) 3.71 kB
"use strict"; 'use client'; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.ChartsRadialGrid = ChartsRadialGrid; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var _propTypes = _interopRequireDefault(require("prop-types")); var _clsx = _interopRequireDefault(require("clsx")); var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses")); var _styles = require("@mui/material/styles"); var _chartsRadialGridClasses = require("./chartsRadialGridClasses"); var _styledComponents = require("./styledComponents"); var _ChartsRotationGrid = require("./ChartsRotationGrid"); var _ChartsRadiusGrid = require("./ChartsRadiusGrid"); var _useAxis = require("../hooks/useAxis"); var _jsxRuntime = require("react/jsx-runtime"); const _excluded = ["className", "rotation", "radius"]; const useUtilityClasses = ({ classes }) => { const slots = { root: ['root'], rotationLine: ['line', 'rotationLine'], radiusLine: ['line', 'radiusLine'] }; return (0, _composeClasses.default)(slots, _chartsRadialGridClasses.getChartsRadialGridUtilityClass, classes); }; /** * Demos: * * - [Radar](https://mui.com/x/react-charts/radar/) * * API: * * - [ChartsRadialGrid API](https://mui.com/x/api/charts/charts-radial-grid/) */ function ChartsRadialGrid(inProps) { const props = (0, _styles.useThemeProps)({ props: inProps, name: 'MuiChartsRadialGrid' }); const { className, rotation, radius } = props, other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded); const { rotationAxis, rotationAxisIds } = (0, _useAxis.useRotationAxes)(); const { radiusAxis, radiusAxisIds } = (0, _useAxis.useRadiusAxes)(); const classes = useUtilityClasses(props); const rotationAxisConfig = rotationAxis[rotationAxisIds[0]]; const radiusAxisConfig = radiusAxis[radiusAxisIds[0]]; const innerRadius = radiusAxisConfig?.scale.range()[0] ?? 0; const outerRadius = radiusAxisConfig?.scale.range()[1] ?? 0; const startAngle = rotationAxisConfig?.scale.range()[0] ?? 0; const endAngle = rotationAxisConfig?.scale.range()[1] ?? 0; return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styledComponents.GridRoot, (0, _extends2.default)({}, other, { className: (0, _clsx.default)(classes.root, className), children: [rotation && rotationAxisConfig && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsRotationGrid.ChartsRotationGrid, { axis: rotationAxisConfig, outerRadius: outerRadius, innerRadius: innerRadius, classes: classes }), radius && radiusAxisConfig && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsRadiusGrid.ChartsRadiusGrid, { axis: radiusAxisConfig, startAngle: startAngle, endAngle: endAngle, classes: classes })] })); } process.env.NODE_ENV !== "production" ? ChartsRadialGrid.propTypes = { // ----------------------------- Warning -------------------------------- // | These PropTypes are generated from the TypeScript type definitions | // | To update them edit the TypeScript types and run "pnpm proptypes" | // ---------------------------------------------------------------------- /** * Override or extend the styles applied to the component. */ classes: _propTypes.default.object, /** * Displays radius (concentric) grid. */ radius: _propTypes.default.bool, /** * Displays rotation (spoke) grid. */ rotation: _propTypes.default.bool } : void 0;