1 | "use strict";
|
2 |
|
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4 |
|
5 | Object.defineProperty(exports, "__esModule", {
|
6 | value: true
|
7 | });
|
8 | exports.default = void 0;
|
9 |
|
10 | var _react = _interopRequireDefault(require("react"));
|
11 |
|
12 | var _propTypes = _interopRequireDefault(require("prop-types"));
|
13 |
|
14 | var _utils = require("@material-ui/utils");
|
15 |
|
16 | var useEnhancedEffect = typeof window !== 'undefined' && process.env.NODE_ENV !== 'test' ? _react.default.useLayoutEffect : _react.default.useEffect;
|
17 |
|
18 |
|
19 |
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 |
|
26 |
|
27 | function NoSsr(props) {
|
28 | var children = props.children,
|
29 | _props$defer = props.defer,
|
30 | defer = _props$defer === void 0 ? false : _props$defer,
|
31 | _props$fallback = props.fallback,
|
32 | fallback = _props$fallback === void 0 ? null : _props$fallback;
|
33 |
|
34 | var _React$useState = _react.default.useState(false),
|
35 | mountedState = _React$useState[0],
|
36 | setMountedState = _React$useState[1];
|
37 |
|
38 | useEnhancedEffect(function () {
|
39 | if (!defer) {
|
40 | setMountedState(true);
|
41 | }
|
42 | }, [defer]);
|
43 |
|
44 | _react.default.useEffect(function () {
|
45 | if (defer) {
|
46 | setMountedState(true);
|
47 | }
|
48 | }, [defer]);
|
49 |
|
50 |
|
51 | return _react.default.createElement(_react.default.Fragment, null, mountedState ? children : fallback);
|
52 | }
|
53 |
|
54 | process.env.NODE_ENV !== "production" ? NoSsr.propTypes = {
|
55 | |
56 |
|
57 |
|
58 | children: _propTypes.default.node.isRequired,
|
59 |
|
60 | |
61 |
|
62 |
|
63 |
|
64 | defer: _propTypes.default.bool,
|
65 |
|
66 | |
67 |
|
68 |
|
69 | fallback: _propTypes.default.node
|
70 | } : void 0;
|
71 |
|
72 | if (process.env.NODE_ENV !== 'production') {
|
73 |
|
74 | NoSsr['propTypes' + ''] = (0, _utils.exactProp)(NoSsr.propTypes);
|
75 | }
|
76 |
|
77 | var _default = NoSsr;
|
78 | exports.default = _default; |
\ | No newline at end of file |