minishouyin/node_modules/antd/lib/watermark/context.js

33 lines
1.1 KiB
JavaScript
Raw Normal View History

2025-11-12 11:35:57 +08:00
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
exports.usePanelRef = usePanelRef;
var React = _interopRequireWildcard(require("react"));
var _useEvent = _interopRequireDefault(require("rc-util/lib/hooks/useEvent"));
function voidFunc() {}
const WatermarkContext = /*#__PURE__*/React.createContext({
add: voidFunc,
remove: voidFunc
});
function usePanelRef(panelSelector) {
const watermark = React.useContext(WatermarkContext);
const panelEleRef = React.useRef(null);
const panelRef = (0, _useEvent.default)(ele => {
if (ele) {
const innerContentEle = panelSelector ? ele.querySelector(panelSelector) : ele;
if (innerContentEle) {
watermark.add(innerContentEle);
panelEleRef.current = innerContentEle;
}
} else {
watermark.remove(panelEleRef.current);
}
});
return panelRef;
}
var _default = exports.default = WatermarkContext;