UNPKG

@visactor/react-vchart

Version:

The react version of VChart 4.x

37 lines (32 loc) 1.54 kB
"use strict"; var __importDefault = this && this.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { default: mod }; }; Object.defineProperty(exports, "__esModule", { value: !0 }), exports.createTooltip = void 0; const react_1 = __importDefault(require("react")), vutils_1 = require("@visactor/vutils"), vchart_1 = require("@visactor/vchart"), createTooltip = (componentName, specName, registers) => { registers && registers.length && vchart_1.VChart.useRegisters(registers); const ignoreKeys = [ "updateId", "componentId", "children" ], Comp = props => { const updateId = react_1.default.useRef(props.updateId); return props.updateId !== updateId.current && (updateId.current = props.updateId), null; }; return Comp.displayName = componentName, Comp.parseSpec = props => { const newTooltipSpec = (0, vutils_1.pickWithout)(props, ignoreKeys); return !props.tooltipRender && props.children && (newTooltipSpec.tooltipRender = (tooltipElement, actualTooltip, params) => react_1.default.Children.map(props.children, (child => (0, vutils_1.isObject)(child) ? react_1.default.cloneElement(child, { tooltipElement: tooltipElement, actualTooltip: actualTooltip, params: params }) : child))), { spec: newTooltipSpec, specName: specName, isSingle: !0 }; }, Comp; }; exports.createTooltip = createTooltip; //# sourceMappingURL=BaseTooltip.js.map