UNPKG

5.22 kBJavaScriptView Raw
1"use strict";
2'use client';
3
4var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6Object.defineProperty(exports, "__esModule", {
7 value: true
8});
9exports.default = void 0;
10var React = _interopRequireWildcard(require("react"));
11var _propTypes = _interopRequireDefault(require("prop-types"));
12var _clsx = _interopRequireDefault(require("clsx"));
13var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
14var _colorManipulator = require("@mui/system/colorManipulator");
15var _zeroStyled = require("../zero-styled");
16var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
17var _DefaultPropsProvider = require("../DefaultPropsProvider");
18var _Paper = _interopRequireDefault(require("../Paper"));
19var _snackbarContentClasses = require("./snackbarContentClasses");
20var _jsxRuntime = require("react/jsx-runtime");
21const useUtilityClasses = ownerState => {
22 const {
23 classes
24 } = ownerState;
25 const slots = {
26 root: ['root'],
27 action: ['action'],
28 message: ['message']
29 };
30 return (0, _composeClasses.default)(slots, _snackbarContentClasses.getSnackbarContentUtilityClass, classes);
31};
32const SnackbarContentRoot = (0, _zeroStyled.styled)(_Paper.default, {
33 name: 'MuiSnackbarContent',
34 slot: 'Root',
35 overridesResolver: (props, styles) => styles.root
36})((0, _memoTheme.default)(({
37 theme
38}) => {
39 const emphasis = theme.palette.mode === 'light' ? 0.8 : 0.98;
40 const backgroundColor = (0, _colorManipulator.emphasize)(theme.palette.background.default, emphasis);
41 return {
42 ...theme.typography.body2,
43 color: theme.vars ? theme.vars.palette.SnackbarContent.color : theme.palette.getContrastText(backgroundColor),
44 backgroundColor: theme.vars ? theme.vars.palette.SnackbarContent.bg : backgroundColor,
45 display: 'flex',
46 alignItems: 'center',
47 flexWrap: 'wrap',
48 padding: '6px 16px',
49 borderRadius: (theme.vars || theme).shape.borderRadius,
50 flexGrow: 1,
51 [theme.breakpoints.up('sm')]: {
52 flexGrow: 'initial',
53 minWidth: 288
54 }
55 };
56}));
57const SnackbarContentMessage = (0, _zeroStyled.styled)('div', {
58 name: 'MuiSnackbarContent',
59 slot: 'Message',
60 overridesResolver: (props, styles) => styles.message
61})({
62 padding: '8px 0'
63});
64const SnackbarContentAction = (0, _zeroStyled.styled)('div', {
65 name: 'MuiSnackbarContent',
66 slot: 'Action',
67 overridesResolver: (props, styles) => styles.action
68})({
69 display: 'flex',
70 alignItems: 'center',
71 marginLeft: 'auto',
72 paddingLeft: 16,
73 marginRight: -8
74});
75const SnackbarContent = /*#__PURE__*/React.forwardRef(function SnackbarContent(inProps, ref) {
76 const props = (0, _DefaultPropsProvider.useDefaultProps)({
77 props: inProps,
78 name: 'MuiSnackbarContent'
79 });
80 const {
81 action,
82 className,
83 message,
84 role = 'alert',
85 ...other
86 } = props;
87 const ownerState = props;
88 const classes = useUtilityClasses(ownerState);
89 return /*#__PURE__*/(0, _jsxRuntime.jsxs)(SnackbarContentRoot, {
90 role: role,
91 square: true,
92 elevation: 6,
93 className: (0, _clsx.default)(classes.root, className),
94 ownerState: ownerState,
95 ref: ref,
96 ...other,
97 children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(SnackbarContentMessage, {
98 className: classes.message,
99 ownerState: ownerState,
100 children: message
101 }), action ? /*#__PURE__*/(0, _jsxRuntime.jsx)(SnackbarContentAction, {
102 className: classes.action,
103 ownerState: ownerState,
104 children: action
105 }) : null]
106 });
107});
108process.env.NODE_ENV !== "production" ? SnackbarContent.propTypes /* remove-proptypes */ = {
109 // ┌────────────────────────────── Warning ──────────────────────────────┐
110 // │ These PropTypes are generated from the TypeScript type definitions. │
111 // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
112 // └─────────────────────────────────────────────────────────────────────┘
113 /**
114 * The action to display. It renders after the message, at the end of the snackbar.
115 */
116 action: _propTypes.default.node,
117 /**
118 * Override or extend the styles applied to the component.
119 */
120 classes: _propTypes.default.object,
121 /**
122 * @ignore
123 */
124 className: _propTypes.default.string,
125 /**
126 * The message to display.
127 */
128 message: _propTypes.default.node,
129 /**
130 * The ARIA role attribute of the element.
131 * @default 'alert'
132 */
133 role: _propTypes.default /* @typescript-to-proptypes-ignore */.string,
134 /**
135 * The system prop that allows defining system overrides as well as additional CSS styles.
136 */
137 sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object])
138} : void 0;
139var _default = exports.default = SnackbarContent;
\No newline at end of file