UNPKG

@visactor/react-vchart

Version:

The react version of VChart 4.x

36 lines (32 loc) 1.66 kB
import React from "react"; import { REACT_TOOLTIP_ClASS_NAME } from "./constant"; import { createPortal } from "react-dom"; export const initCustomTooltip = (setTooltipNode, props, spec) => { let render; if ((null == spec ? void 0 : spec.tooltipRender) ? (render = spec.tooltipRender, delete spec.tooltipRender) : props.tooltipRender && (render = props.tooltipRender), render) { let reserve; return (null == spec ? void 0 : spec.reserveDefaultTooltip) ? (reserve = spec.reserveDefaultTooltip, delete spec.reserveDefaultTooltip) : reserve = props.reserveDefaultTooltip, Object.assign(Object.assign({}, spec), { updateElement: (el, actualTooltip, params) => { const {changePositionOnly: changePositionOnly} = params; if (!changePositionOnly) { if (!reserve) { el.style.width = "auto", el.style.height = "auto", el.style.minHeight = "auto", el.style.padding = "0px"; for (let i = 0; i < el.children.length; i++) { const childNode = el.children[i]; childNode.className !== REACT_TOOLTIP_ClASS_NAME && "none" !== childNode.style.display && (childNode.style.display = "none"); } } setTooltipNode(createPortal(React.createElement("div", { className: REACT_TOOLTIP_ClASS_NAME }, render(el, actualTooltip, params)), el)); } } }); } return spec; }; //# sourceMappingURL=util.js.map