UNPKG

@progress/kendo-react-charts

Version:

React Chart renders a wide range of high-quality data visualizations. KendoReact Charts package

9 lines (8 loc) 2.72 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("react"),O=require("react-dom"),C=require("@progress/kendo-react-common"),h=require("@progress/kendo-svg-icons"),y=require("@progress/kendo-react-intl"),u=require("./messages.js");function E(t){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(o,n,r.get?r:{enumerable:!0,get:()=>t[n]})}}return o.default=t,Object.freeze(o)}const e=E(I),R=E(O),S=t=>{const{appendTo:o,Content:n,dir:r,offset:l,event:{tooltipData:s,dataItem:T,nodeValue:x}}=t,f=e.useRef(null);e.useEffect(()=>{const a=f.current;if(!s||!a)return;const g={width:a.offsetWidth,height:a.offsetHeight},i={...s.popupOffset},p=s.popupAlign;i.left+=p.horizontal==="left"?l:-1*l,p.horizontal==="right"&&(i.left-=g.width),p.vertical==="bottom"?i.top-=g.height+l:i.top+=l,a.style.left=`${i.left}px`,a.style.top=`${i.top}px`,a.style.visibility=""},[s,l]);const d=e.createElement("div",{ref:f,style:{visibility:"hidden"},dir:r,className:"k-tooltip k-sankey-tooltip k-chart-tooltip k-chart-shared-tooltip"},e.createElement("div",{className:"k-tooltip-content"},e.createElement(n,{dir:r,dataItem:T,nodeValue:x})));return o?R.createPortal(d,o):d},b=3,q=`0 ${b}px`,k={display:"flex",alignItems:"center"},m=t=>e.createElement("div",{style:{width:15,height:15,backgroundColor:t.color,display:"inline-flex",marginLeft:b}}),c=t=>e.createElement("span",{style:{margin:q}},t.children),v=t=>y.useInternationalization().format(y.useLocalization().toLanguageString(u.tooltipUnitFormat,u.messages[u.tooltipUnitFormat]),[t||0]),w=t=>{const{color:o,label:n}=t.dataItem;return e.createElement("div",{style:k,className:"k-tooltip-content"},e.createElement(m,{color:o}),e.createElement(c,null,n.text),e.createElement(c,null,v(t.nodeValue)))},z=t=>{const{source:o,target:n,value:r}=t.dataItem,l=t.dir==="rtl"?h.arrowLeftIcon:h.arrowRightIcon;return e.createElement("div",{style:k},e.createElement(m,{color:o.color}),e.createElement(c,null,o.label.text),e.createElement(C.IconWrap,{icon:l,name:l.name}),e.createElement(m,{color:n.color}),e.createElement(c,null,n.label.text),e.createElement(c,null,v(r)))};exports.LinkTooltipContent=z;exports.NodeTooltipContent=w;exports.TooltipComponent=S;