UNPKG

@ant-design/happy-work-theme

Version:
50 lines (48 loc) 1.76 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = HappyProvider; var _antd = require("antd"); var _useEvent = _interopRequireDefault(require("rc-util/lib/hooks/useEvent")); var React = _interopRequireWildcard(require("react")); var _DotEffect = _interopRequireDefault(require("./DotEffect")); var _unstableRender = require("./_utils/unstable-render"); function HappyProvider(props) { var children = props.children, disabled = props.disabled; var showEffect = (0, _useEvent.default)(function (target, info) { var token = info.token, hashId = info.hashId; // Create holder var holder = document.createElement('div'); holder.style.position = 'absolute'; holder.style.left = "0px"; holder.style.top = "0px"; document.body.appendChild(holder); var unmount = (0, _unstableRender.unstableRender)( /*#__PURE__*/React.createElement(_DotEffect.default, { target: target, token: token, hashId: hashId, onFinish: function onFinish() { unmount().then(function () { var _holder$parentElement; (_holder$parentElement = holder.parentElement) === null || _holder$parentElement === void 0 || _holder$parentElement.removeChild(holder); }); } }), holder); }); var waveConfig = React.useMemo(function () { if (disabled) { return {}; } return { showEffect: showEffect }; }, [disabled]); return /*#__PURE__*/React.createElement(_antd.ConfigProvider, { wave: waveConfig }, children); }