1 | "use strict";
|
2 | 'use client';
|
3 |
|
4 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
5 | var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
6 | Object.defineProperty(exports, "__esModule", {
|
7 | value: true
|
8 | });
|
9 | exports.default = void 0;
|
10 | var React = _interopRequireWildcard(require("react"));
|
11 | var _propTypes = _interopRequireDefault(require("prop-types"));
|
12 | var _RadioButtonUnchecked = _interopRequireDefault(require("../internal/svg-icons/RadioButtonUnchecked"));
|
13 | var _RadioButtonChecked = _interopRequireDefault(require("../internal/svg-icons/RadioButtonChecked"));
|
14 | var _rootShouldForwardProp = _interopRequireDefault(require("../styles/rootShouldForwardProp"));
|
15 | var _zeroStyled = require("../zero-styled");
|
16 | var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
|
17 | var _jsxRuntime = require("react/jsx-runtime");
|
18 | const RadioButtonIconRoot = (0, _zeroStyled.styled)('span', {
|
19 | shouldForwardProp: _rootShouldForwardProp.default
|
20 | })({
|
21 | position: 'relative',
|
22 | display: 'flex'
|
23 | });
|
24 | const RadioButtonIconBackground = (0, _zeroStyled.styled)(_RadioButtonUnchecked.default)({
|
25 |
|
26 | transform: 'scale(1)'
|
27 | });
|
28 | const RadioButtonIconDot = (0, _zeroStyled.styled)(_RadioButtonChecked.default)((0, _memoTheme.default)(({
|
29 | theme
|
30 | }) => ({
|
31 | left: 0,
|
32 | position: 'absolute',
|
33 | transform: 'scale(0)',
|
34 | transition: theme.transitions.create('transform', {
|
35 | easing: theme.transitions.easing.easeIn,
|
36 | duration: theme.transitions.duration.shortest
|
37 | }),
|
38 | variants: [{
|
39 | props: {
|
40 | checked: true
|
41 | },
|
42 | style: {
|
43 | transform: 'scale(1)',
|
44 | transition: theme.transitions.create('transform', {
|
45 | easing: theme.transitions.easing.easeOut,
|
46 | duration: theme.transitions.duration.shortest
|
47 | })
|
48 | }
|
49 | }]
|
50 | })));
|
51 |
|
52 |
|
53 |
|
54 |
|
55 | function RadioButtonIcon(props) {
|
56 | const {
|
57 | checked = false,
|
58 | classes = {},
|
59 | fontSize
|
60 | } = props;
|
61 | const ownerState = {
|
62 | ...props,
|
63 | checked
|
64 | };
|
65 | return (0, _jsxRuntime.jsxs)(RadioButtonIconRoot, {
|
66 | className: classes.root,
|
67 | ownerState: ownerState,
|
68 | children: [(0, _jsxRuntime.jsx)(RadioButtonIconBackground, {
|
69 | fontSize: fontSize,
|
70 | className: classes.background,
|
71 | ownerState: ownerState
|
72 | }), (0, _jsxRuntime.jsx)(RadioButtonIconDot, {
|
73 | fontSize: fontSize,
|
74 | className: classes.dot,
|
75 | ownerState: ownerState
|
76 | })]
|
77 | });
|
78 | }
|
79 | process.env.NODE_ENV !== "production" ? RadioButtonIcon.propTypes = {
|
80 | |
81 |
|
82 |
|
83 | checked: _propTypes.default.bool,
|
84 | |
85 |
|
86 |
|
87 | classes: _propTypes.default.object,
|
88 | |
89 |
|
90 |
|
91 |
|
92 | fontSize: _propTypes.default.oneOf(['small', 'medium'])
|
93 | } : void 0;
|
94 | var _default = exports.default = RadioButtonIcon; |
\ | No newline at end of file |