react-tooltip
Version:
react tooltip component
9 lines (8 loc) • 23.3 kB
JavaScript
/*
* React Tooltip
* {@link https://github.com/ReactTooltip/react-tooltip}
* @copyright ReactTooltip Team
* @license MIT
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("@floating-ui/dom"),require("classnames")):"function"==typeof define&&define.amd?define(["exports","react","@floating-ui/dom","classnames"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).ReactTooltip={},e.React,e.FloatingUIDOM,e.classNames)}(this,(function(e,t,o,l){"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=r(t),s=r(l);const i="react-tooltip-core-styles",c="react-tooltip-base-styles",a={core:!1,base:!1};function u({css:e,id:t=c,type:o="base",ref:l}){var r,n;if(!e||"undefined"==typeof document||a[o])return;if("core"===o&&"undefined"!=typeof process&&(null===(r=null===process||void 0===process?void 0:process.env)||void 0===r?void 0:r.REACT_TOOLTIP_DISABLE_CORE_STYLES))return;if("base"!==o&&"undefined"!=typeof process&&(null===(n=null===process||void 0===process?void 0:process.env)||void 0===n?void 0:n.REACT_TOOLTIP_DISABLE_BASE_STYLES))return;"core"===o&&(t=i),l||(l={});const{insertAt:s}=l;if(document.getElementById(t))return;const u=document.head||document.getElementsByTagName("head")[0],d=document.createElement("style");d.id=t,d.type="text/css","top"===s&&u.firstChild?u.insertBefore(d,u.firstChild):u.appendChild(d),d.styleSheet?d.styleSheet.cssText=e:d.appendChild(document.createTextNode(e)),a[o]=!0}const d=async({elementReference:e=null,tooltipReference:t=null,tooltipArrowReference:l=null,place:r="top",offset:n=10,strategy:s="absolute",middlewares:i=[o.offset(Number(n)),o.flip({fallbackAxisSideDirection:"start"}),o.shift({padding:5})],border:c,arrowSize:a=8})=>{if(!e)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};if(null===t)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};const u=i;return l?(u.push(o.arrow({element:l,padding:5})),o.computePosition(e,t,{placement:r,strategy:s,middleware:u}).then((({x:e,y:t,placement:o,middlewareData:l})=>{var r,n;const s={left:`${e}px`,top:`${t}px`,border:c},{x:i,y:u}=null!==(r=l.arrow)&&void 0!==r?r:{x:0,y:0},d=null!==(n={top:"bottom",right:"left",bottom:"top",left:"right"}[o.split("-")[0]])&&void 0!==n?n:"bottom",p=c&&{borderBottom:c,borderRight:c};let f=0;if(c){const e=`${c}`.match(/(\d+)px/);f=(null==e?void 0:e[1])?Number(e[1]):1}return{tooltipStyles:s,tooltipArrowStyles:{left:null!=i?`${i}px`:"",top:null!=u?`${u}px`:"",right:"",bottom:"",...p,[d]:`-${a/2+f}px`},place:o}}))):o.computePosition(e,t,{placement:"bottom",strategy:s,middleware:u}).then((({x:e,y:t,placement:o})=>({tooltipStyles:{left:`${e}px`,top:`${t}px`},tooltipArrowStyles:{},place:o})))},p=(e,t)=>!("CSS"in window&&"supports"in window.CSS)||window.CSS.supports(e,t),f=(e,t,o)=>{let l=null;const r=function(...r){const n=()=>{l=null,o||e.apply(this,r)};o&&!l&&(e.apply(this,r),l=setTimeout(n,t)),o||(l&&clearTimeout(l),l=setTimeout(n,t))};return r.cancel=()=>{l&&(clearTimeout(l),l=null)},r},v=e=>null!==e&&!Array.isArray(e)&&"object"==typeof e,m=(e,t)=>{if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(((e,o)=>m(e,t[o])));if(Array.isArray(e)!==Array.isArray(t))return!1;if(!v(e)||!v(t))return e===t;const o=Object.keys(e),l=Object.keys(t);return o.length===l.length&&o.every((o=>m(e[o],t[o])))},y=e=>{if(!(e instanceof HTMLElement||e instanceof SVGElement))return!1;const t=getComputedStyle(e);return["overflow","overflow-x","overflow-y"].some((e=>{const o=t.getPropertyValue(e);return"auto"===o||"scroll"===o}))},h=e=>{if(!e)return null;let t=e.parentElement;for(;t;){if(y(t))return t;t=t.parentElement}return document.scrollingElement||document.documentElement},w="undefined"!=typeof window?t.useLayoutEffect:t.useEffect,b=e=>{e.current&&(clearTimeout(e.current),e.current=null)},S="DEFAULT_TOOLTIP_ID",E={anchorRefs:new Set,activeAnchor:{current:null},attach:()=>{},detach:()=>{},setActiveAnchor:()=>{}},g={getTooltipData:()=>E},A=t.createContext(g);function _(e=S){return t.useContext(A).getTooltipData(e)}var O={tooltip:"core-styles-module_tooltip__3vRRp",fixed:"core-styles-module_fixed__pcSol",arrow:"core-styles-module_arrow__cvMwQ",noArrow:"core-styles-module_noArrow__xock6",clickable:"core-styles-module_clickable__ZuTTB",show:"core-styles-module_show__Nt9eE",closing:"core-styles-module_closing__sGnxF"},T={tooltip:"styles-module_tooltip__mnnfp",arrow:"styles-module_arrow__K0L3T",dark:"styles-module_dark__xNqje",light:"styles-module_light__Z6W-X",success:"styles-module_success__A2AKt",warning:"styles-module_warning__SCK0X",error:"styles-module_error__JvumD",info:"styles-module_info__BWdHW"};const R=({forwardRef:e,id:l,className:r,classNameArrow:i,variant:c="dark",anchorId:a,anchorSelect:u,place:p="top",offset:v=10,events:y=["hover"],openOnClick:S=!1,positionStrategy:E="absolute",middlewares:g,wrapper:A,delayShow:R=0,delayHide:k=0,float:C=!1,hidden:L=!1,noArrow:x=!1,clickable:N=!1,closeOnEsc:$=!1,closeOnScroll:j=!1,closeOnResize:I=!1,openEvents:z,closeEvents:B,globalCloseEvents:D,imperativeModeOnly:q,style:M,position:H,afterShow:P,afterHide:W,disableTooltip:F,content:U,contentWrapperRef:V,isOpen:K,defaultIsOpen:X=!1,setIsOpen:Y,previousActiveAnchor:G,activeAnchor:Z,setActiveAnchor:J,border:Q,opacity:ee,arrowColor:te,arrowSize:oe=8,role:le="tooltip"})=>{var re;const ne=t.useRef(null),se=t.useRef(null),ie=t.useRef(null),ce=t.useRef(null),ae=t.useRef(null),[ue,de]=t.useState({tooltipStyles:{},tooltipArrowStyles:{},place:p}),[pe,fe]=t.useState(!1),[ve,me]=t.useState(!1),[ye,he]=t.useState(null),we=t.useRef(!1),be=t.useRef(null),{anchorRefs:Se,setActiveAnchor:Ee}=_(l),ge=t.useRef(!1),[Ae,_e]=t.useState([]),Oe=t.useRef(!1),Te=S||y.includes("click"),Re=Te||(null==z?void 0:z.click)||(null==z?void 0:z.dblclick)||(null==z?void 0:z.mousedown),ke=z?{...z}:{mouseover:!0,focus:!0,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1};!z&&Te&&Object.assign(ke,{mouseenter:!1,focus:!1,mouseover:!1,click:!0});const Ce=B?{...B}:{mouseout:!0,blur:!0,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1};!B&&Te&&Object.assign(Ce,{mouseleave:!1,blur:!1,mouseout:!1});const Le=D?{...D}:{escape:$||!1,scroll:j||!1,resize:I||!1,clickOutsideAnchor:Re||!1};q&&(Object.assign(ke,{mouseover:!1,focus:!1,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1}),Object.assign(Ce,{mouseout:!1,blur:!1,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1}),Object.assign(Le,{escape:!1,scroll:!1,resize:!1,clickOutsideAnchor:!1})),w((()=>(Oe.current=!0,()=>{Oe.current=!1})),[]);const xe=e=>{Oe.current&&(e&&me(!0),setTimeout((()=>{Oe.current&&(null==Y||Y(e),void 0===K&&fe(e))}),10))};t.useEffect((()=>{if(l){if(pe){t(G);const o=e(Z),r=[...new Set([...o,l])].filter(Boolean).join(" ");null==Z||Z.setAttribute("aria-describedby",r)}else t(Z);return()=>{t(Z),t(G)}}function e(e){var t;return(null===(t=null==e?void 0:e.getAttribute("aria-describedby"))||void 0===t?void 0:t.split(" "))||[]}function t(t){const o=e(t).filter((e=>e!==l));o.length?null==t||t.setAttribute("aria-describedby",o.join(" ")):null==t||t.removeAttribute("aria-describedby")}}),[Z,pe,l,G]),t.useEffect((()=>{if(void 0===K)return()=>null;K&&me(!0);const e=setTimeout((()=>{fe(K)}),10);return()=>{clearTimeout(e)}}),[K]),t.useEffect((()=>{if(pe!==we.current)if(b(ae),we.current=pe,pe)null==P||P();else{const e=(e=>{const t=e.match(/^([\d.]+)(ms|s)$/);if(!t)return 0;const[,o,l]=t;return Number(o)*("ms"===l?1:1e3)})(getComputedStyle(document.body).getPropertyValue("--rt-transition-show-delay"));ae.current=setTimeout((()=>{me(!1),he(null),null==W||W()}),e+25)}}),[pe]);const Ne=e=>{de((t=>m(t,e)?t:e))},$e=(e=R)=>{b(ie),ve?xe(!0):ie.current=setTimeout((()=>{xe(!0)}),e)},je=(e=k)=>{b(ce),ce.current=setTimeout((()=>{ge.current||xe(!1)}),e)},Ie=e=>{var t;if(!e)return;const o=null!==(t=e.currentTarget)&&void 0!==t?t:e.target;if(!(null==o?void 0:o.isConnected))return J(null),void Ee({current:null});R?$e():xe(!0),J(o),Ee({current:o}),b(ce)},ze=()=>{N?je(k||100):k?je():xe(!1),b(ie)},Be=({x:e,y:t})=>{var o;const l={getBoundingClientRect:()=>({x:e,y:t,width:0,height:0,top:t,left:e,right:e,bottom:t})};d({place:null!==(o=null==ye?void 0:ye.place)&&void 0!==o?o:p,offset:v,elementReference:l,tooltipReference:ne.current,tooltipArrowReference:se.current,strategy:E,middlewares:g,border:Q,arrowSize:oe}).then((e=>{Ne(e)}))},De=e=>{if(!e)return;const t=e,o={x:t.clientX,y:t.clientY};Be(o),be.current=o},qe=e=>{var t;if(!pe)return;const o=e.target;if(!o.isConnected)return;if(null===(t=ne.current)||void 0===t?void 0:t.contains(o))return;[document.querySelector(`[id='${a}']`),...Ae].some((e=>null==e?void 0:e.contains(o)))||(xe(!1),b(ie))},Me=f(Ie,50,!0),He=f(ze,50,!0),Pe=e=>{He.cancel(),Me(e)},We=()=>{Me.cancel(),He()},Fe=t.useCallback((()=>{var e,t;const o=null!==(e=null==ye?void 0:ye.position)&&void 0!==e?e:H;o?Be(o):C?be.current&&Be(be.current):(null==Z?void 0:Z.isConnected)&&d({place:null!==(t=null==ye?void 0:ye.place)&&void 0!==t?t:p,offset:v,elementReference:Z,tooltipReference:ne.current,tooltipArrowReference:se.current,strategy:E,middlewares:g,border:Q,arrowSize:oe}).then((e=>{Oe.current&&Ne(e)}))}),[pe,Z,U,M,p,null==ye?void 0:ye.place,v,E,H,null==ye?void 0:ye.position,C,oe]);t.useEffect((()=>{var e,t;const l=new Set(Se);Ae.forEach((e=>{(null==F?void 0:F(e))||l.add({current:e})}));const r=document.querySelector(`[id='${a}']`);r&&!(null==F?void 0:F(r))&&l.add({current:r});const n=()=>{xe(!1)},s=h(Z),i=h(ne.current);Le.scroll&&(window.addEventListener("scroll",n),null==s||s.addEventListener("scroll",n),null==i||i.addEventListener("scroll",n));let c=null;Le.resize?window.addEventListener("resize",n):Z&&ne.current&&(c=o.autoUpdate(Z,ne.current,Fe,{ancestorResize:!0,elementResize:!0,layoutShift:!0}));const u=e=>{"Escape"===e.key&&xe(!1)};Le.escape&&window.addEventListener("keydown",u),Le.clickOutsideAnchor&&window.addEventListener("click",qe);const d=[],p=e=>Boolean((null==e?void 0:e.target)&&(null==Z?void 0:Z.contains(e.target))),f=e=>{pe&&p(e)||Ie(e)},v=e=>{pe&&p(e)&&ze()},m=["mouseover","mouseout","mouseenter","mouseleave","focus","blur"],y=["click","dblclick","mousedown","mouseup"];Object.entries(ke).forEach((([e,t])=>{t&&(m.includes(e)?d.push({event:e,listener:Pe}):y.includes(e)&&d.push({event:e,listener:f}))})),Object.entries(Ce).forEach((([e,t])=>{t&&(m.includes(e)?d.push({event:e,listener:We}):y.includes(e)&&d.push({event:e,listener:v}))})),C&&d.push({event:"pointermove",listener:De});const w=()=>{ge.current=!0},b=()=>{ge.current=!1,ze()},S=N&&(Ce.mouseout||Ce.mouseleave);return S&&(null===(e=ne.current)||void 0===e||e.addEventListener("mouseover",w),null===(t=ne.current)||void 0===t||t.addEventListener("mouseout",b)),d.forEach((({event:e,listener:t})=>{l.forEach((o=>{var l;null===(l=o.current)||void 0===l||l.addEventListener(e,t)}))})),()=>{var e,t;Le.scroll&&(window.removeEventListener("scroll",n),null==s||s.removeEventListener("scroll",n),null==i||i.removeEventListener("scroll",n)),Le.resize?window.removeEventListener("resize",n):null==c||c(),Le.clickOutsideAnchor&&window.removeEventListener("click",qe),Le.escape&&window.removeEventListener("keydown",u),S&&(null===(e=ne.current)||void 0===e||e.removeEventListener("mouseover",w),null===(t=ne.current)||void 0===t||t.removeEventListener("mouseout",b)),d.forEach((({event:e,listener:t})=>{l.forEach((o=>{var l;null===(l=o.current)||void 0===l||l.removeEventListener(e,t)}))}))}}),[Z,Fe,ve,Se,Ae,z,B,D,Te,R,k]),t.useEffect((()=>{var e,t;let o=null!==(t=null!==(e=null==ye?void 0:ye.anchorSelect)&&void 0!==e?e:u)&&void 0!==t?t:"";!o&&l&&(o=`[data-tooltip-id='${l.replace(/'/g,"\\'")}']`);const r=new MutationObserver((e=>{const t=[],r=[];e.forEach((e=>{if("attributes"===e.type&&"data-tooltip-id"===e.attributeName){e.target.getAttribute("data-tooltip-id")===l?t.push(e.target):e.oldValue===l&&r.push(e.target)}if("childList"===e.type){if(Z){const t=[...e.removedNodes].filter((e=>1===e.nodeType));if(o)try{r.push(...t.filter((e=>e.matches(o)))),r.push(...t.flatMap((e=>[...e.querySelectorAll(o)])))}catch(e){}t.some((e=>{var t;return!!(null===(t=null==e?void 0:e.contains)||void 0===t?void 0:t.call(e,Z))&&(me(!1),xe(!1),J(null),b(ie),b(ce),!0)}))}if(o)try{const l=[...e.addedNodes].filter((e=>1===e.nodeType));t.push(...l.filter((e=>e.matches(o)))),t.push(...l.flatMap((e=>[...e.querySelectorAll(o)])))}catch(e){}}})),(t.length||r.length)&&_e((e=>[...e.filter((e=>!r.includes(e))),...t]))}));return r.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-tooltip-id"],attributeOldValue:!0}),()=>{r.disconnect()}}),[l,u,null==ye?void 0:ye.anchorSelect,Z]),t.useEffect((()=>{Fe()}),[Fe]),t.useEffect((()=>{if(!(null==V?void 0:V.current))return()=>null;const e=new ResizeObserver((()=>{setTimeout((()=>Fe()))}));return e.observe(V.current),()=>{e.disconnect()}}),[U,null==V?void 0:V.current]),t.useEffect((()=>{var e;const t=document.querySelector(`[id='${a}']`),o=[...Ae,t];Z&&o.includes(Z)||J(null!==(e=Ae[0])&&void 0!==e?e:t)}),[a,Ae,Z]),t.useEffect((()=>(X&&xe(!0),()=>{b(ie),b(ce)})),[]),t.useEffect((()=>{var e;let t=null!==(e=null==ye?void 0:ye.anchorSelect)&&void 0!==e?e:u;if(!t&&l&&(t=`[data-tooltip-id='${l.replace(/'/g,"\\'")}']`),t)try{const e=Array.from(document.querySelectorAll(t));_e(e)}catch(e){_e([])}}),[l,u,null==ye?void 0:ye.anchorSelect]),t.useEffect((()=>{ie.current&&(b(ie),$e(R))}),[R]);const Ue=null!==(re=null==ye?void 0:ye.content)&&void 0!==re?re:U,Ve=pe&&Object.keys(ue.tooltipStyles).length>0;return t.useImperativeHandle(e,(()=>({open:e=>{if(null==e?void 0:e.anchorSelect)try{document.querySelector(e.anchorSelect)}catch(t){return void console.warn(`[react-tooltip] "${e.anchorSelect}" is not a valid CSS selector`)}he(null!=e?e:null),(null==e?void 0:e.delay)?$e(e.delay):xe(!0)},close:e=>{(null==e?void 0:e.delay)?je(e.delay):xe(!1)},activeAnchor:Z,place:ue.place,isOpen:Boolean(ve&&!L&&Ue&&Ve)}))),ve&&!L&&Ue?n.default.createElement(A,{id:l,role:le,className:s.default("react-tooltip",O.tooltip,T.tooltip,T[c],r,`react-tooltip__place-${ue.place}`,O[Ve?"show":"closing"],Ve?"react-tooltip__show":"react-tooltip__closing","fixed"===E&&O.fixed,N&&O.clickable),onTransitionEnd:e=>{b(ae),pe||"opacity"!==e.propertyName||(me(!1),he(null),null==W||W())},style:{...M,...ue.tooltipStyles,opacity:void 0!==ee&&Ve?ee:void 0},ref:ne},Ue,n.default.createElement(A,{className:s.default("react-tooltip-arrow",O.arrow,T.arrow,i,x&&O.noArrow),style:{...ue.tooltipArrowStyles,background:te?`linear-gradient(to right bottom, transparent 50%, ${te} 50%)`:void 0,"--rt-arrow-size":`${oe}px`},ref:se})):null},k=({content:e})=>n.default.createElement("span",{dangerouslySetInnerHTML:{__html:e}}),C=n.default.forwardRef((({id:e,anchorId:o,anchorSelect:l,content:r,html:i,render:c,className:a,classNameArrow:u,variant:d="dark",place:f="top",offset:v=10,wrapper:m="div",children:y=null,events:h=["hover"],openOnClick:w=!1,positionStrategy:b="absolute",middlewares:S,delayShow:E=0,delayHide:g=0,float:A=!1,hidden:O=!1,noArrow:T=!1,clickable:C=!1,closeOnEsc:L=!1,closeOnScroll:x=!1,closeOnResize:N=!1,openEvents:$,closeEvents:j,globalCloseEvents:I,imperativeModeOnly:z=!1,style:B,position:D,isOpen:q,defaultIsOpen:M=!1,disableStyleInjection:H=!1,border:P,opacity:W,arrowColor:F,arrowSize:U,setIsOpen:V,afterShow:K,afterHide:X,disableTooltip:Y,role:G="tooltip"},Z)=>{const[J,Q]=t.useState(r),[ee,te]=t.useState(i),[oe,le]=t.useState(f),[re,ne]=t.useState(d),[se,ie]=t.useState(v),[ce,ae]=t.useState(E),[ue,de]=t.useState(g),[pe,fe]=t.useState(A),[ve,me]=t.useState(O),[ye,he]=t.useState(m),[we,be]=t.useState(h),[Se,Ee]=t.useState(b),[ge,Ae]=t.useState(null),[_e,Oe]=t.useState(null),Te=t.useRef(null),Re=t.useRef(H),{anchorRefs:ke,activeAnchor:Ce}=_(e),Le=e=>null==e?void 0:e.getAttributeNames().reduce(((t,o)=>{var l;if(o.startsWith("data-tooltip-")){t[o.replace(/^data-tooltip-/,"")]=null!==(l=null==e?void 0:e.getAttribute(o))&&void 0!==l?l:null}return t}),{}),xe=e=>{const t={place:e=>{var t;le(null!==(t=e)&&void 0!==t?t:f)},content:e=>{Q(null!=e?e:r)},html:e=>{te(null!=e?e:i)},variant:e=>{var t;ne(null!==(t=e)&&void 0!==t?t:d)},offset:e=>{ie(null===e?v:Number(e))},wrapper:e=>{var t;he(null!==(t=e)&&void 0!==t?t:m)},events:e=>{const t=null==e?void 0:e.split(" ");be(null!=t?t:h)},"position-strategy":e=>{var t;Ee(null!==(t=e)&&void 0!==t?t:b)},"delay-show":e=>{ae(null===e?E:Number(e))},"delay-hide":e=>{de(null===e?g:Number(e))},float:e=>{fe(null===e?A:"true"===e)},hidden:e=>{me(null===e?O:"true"===e)},"class-name":e=>{Ae(e)}};Object.values(t).forEach((e=>e(null))),Object.entries(e).forEach((([e,o])=>{var l;null===(l=t[e])||void 0===l||l.call(t,o)}))};t.useEffect((()=>{Q(r)}),[r]),t.useEffect((()=>{te(i)}),[i]),t.useEffect((()=>{le(f)}),[f]),t.useEffect((()=>{ne(d)}),[d]),t.useEffect((()=>{ie(v)}),[v]),t.useEffect((()=>{ae(E)}),[E]),t.useEffect((()=>{de(g)}),[g]),t.useEffect((()=>{fe(A)}),[A]),t.useEffect((()=>{me(O)}),[O]),t.useEffect((()=>{Ee(b)}),[b]),t.useEffect((()=>{Re.current!==H&&console.warn("[react-tooltip] Do not change `disableStyleInjection` dynamically.")}),[H]),t.useEffect((()=>{"undefined"!=typeof window&&window.dispatchEvent(new CustomEvent("react-tooltip-inject-styles",{detail:{disableCore:"core"===H,disableBase:H}}))}),[]),t.useEffect((()=>{var t;const r=new Set(ke);let n=l;if(!n&&e&&(n=`[data-tooltip-id='${e.replace(/'/g,"\\'")}']`),n)try{document.querySelectorAll(n).forEach((e=>{r.add({current:e})}))}catch(e){console.warn(`[react-tooltip] "${n}" is not a valid CSS selector`)}const s=document.querySelector(`[id='${o}']`);if(s&&r.add({current:s}),!r.size)return()=>null;const i=null!==(t=null!=_e?_e:s)&&void 0!==t?t:Ce.current,c=new MutationObserver((e=>{e.forEach((e=>{var t;if(!i||"attributes"!==e.type||!(null===(t=e.attributeName)||void 0===t?void 0:t.startsWith("data-tooltip-")))return;const o=Le(i);xe(o)}))})),a={attributes:!0,childList:!1,subtree:!1};if(i){const e=Le(i);xe(e),c.observe(i,a)}return()=>{c.disconnect()}}),[ke,Ce,_e,o,l]),t.useEffect((()=>{(null==B?void 0:B.border)&&console.warn("[react-tooltip] Do not set `style.border`. Use `border` prop instead."),P&&!p("border",`${P}`)&&console.warn(`[react-tooltip] "${P}" is not a valid \`border\`.`),(null==B?void 0:B.opacity)&&console.warn("[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead."),W&&!p("opacity",`${W}`)&&console.warn(`[react-tooltip] "${W}" is not a valid \`opacity\`.`)}),[]);let Ne=y;const $e=t.useRef(null);if(c){const e=c({content:(null==_e?void 0:_e.getAttribute("data-tooltip-content"))||J||null,activeAnchor:_e});Ne=e?n.default.createElement("div",{ref:$e,className:"react-tooltip-content-wrapper"},e):null}else J&&(Ne=J);ee&&(Ne=n.default.createElement(k,{content:ee}));const je={forwardRef:Z,id:e,anchorId:o,anchorSelect:l,className:s.default(a,ge),classNameArrow:u,content:Ne,contentWrapperRef:$e,place:oe,variant:re,offset:se,wrapper:ye,events:we,openOnClick:w,positionStrategy:Se,middlewares:S,delayShow:ce,delayHide:ue,float:pe,hidden:ve,noArrow:T,clickable:C,closeOnEsc:L,closeOnScroll:x,closeOnResize:N,openEvents:$,closeEvents:j,globalCloseEvents:I,imperativeModeOnly:z,style:B,position:D,isOpen:q,defaultIsOpen:M,border:P,opacity:W,arrowColor:F,arrowSize:U,setIsOpen:V,afterShow:K,afterHide:X,disableTooltip:Y,activeAnchor:_e,previousActiveAnchor:Te.current,setActiveAnchor:e=>{Oe((t=>((null==e?void 0:e.isSameNode(t))||(Te.current=t),e)))},role:G};return n.default.createElement(R,{...je})}));"undefined"!=typeof window&&window.addEventListener("react-tooltip-inject-styles",(e=>{e.detail.disableCore||u({css:`:root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9;--rt-transition-show-delay:0.15s;--rt-transition-closing-delay:0.15s;--rt-arrow-size:8px}.core-styles-module_tooltip__3vRRp{position:absolute;top:0;left:0;pointer-events:none;opacity:0;will-change:opacity}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{position:absolute;background:inherit;z-index:-1}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay)ease-out}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay)ease-in}`,type:"core"}),e.detail.disableBase||u({css:`
.styles-module_tooltip__mnnfp{padding:8px 16px;border-radius:3px;font-size:90%;width:max-content}.styles-module_arrow__K0L3T{width:var(--rt-arrow-size);height:var(--rt-arrow-size)}[class*='react-tooltip__place-top']>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*='react-tooltip__place-right']>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*='react-tooltip__place-bottom']>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*='react-tooltip__place-left']>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}`,type:"base"})})),e.Tooltip=C,e.TooltipProvider=({children:e})=>{const[o,l]=t.useState({[S]:new Set}),[r,s]=t.useState({[S]:{current:null}}),i=(e,...t)=>{l((o=>{var l;const r=null!==(l=o[e])&&void 0!==l?l:new Set;return t.forEach((e=>r.add(e))),{...o,[e]:new Set(r)}}))},c=(e,...t)=>{l((o=>{const l=o[e];return l?(t.forEach((e=>l.delete(e))),{...o}):o}))},a=t.useCallback(((e=S)=>{var t,l;return{anchorRefs:null!==(t=o[e])&&void 0!==t?t:new Set,activeAnchor:null!==(l=r[e])&&void 0!==l?l:{current:null},attach:(...t)=>i(e,...t),detach:(...t)=>c(e,...t),setActiveAnchor:t=>((e,t)=>{s((o=>{var l;return(null===(l=o[e])||void 0===l?void 0:l.current)===t.current?o:{...o,[e]:t}}))})(e,t)}}),[o,r,i,c]),u=t.useMemo((()=>({getTooltipData:a})),[a]);return n.default.createElement(A.Provider,{value:u},e)},e.TooltipWrapper=({tooltipId:e,children:o,className:l,place:r,content:i,html:c,variant:a,offset:u,wrapper:d,events:p,positionStrategy:f,delayShow:v,delayHide:m})=>{const{attach:y,detach:h}=_(e),w=t.useRef(null);return t.useEffect((()=>(y(w),()=>{h(w)})),[]),n.default.createElement("span",{ref:w,className:s.default("react-tooltip-wrapper",l),"data-tooltip-place":r,"data-tooltip-content":i,"data-tooltip-html":c,"data-tooltip-variant":a,"data-tooltip-offset":u,"data-tooltip-wrapper":d,"data-tooltip-events":p,"data-tooltip-position-strategy":f,"data-tooltip-delay-show":v,"data-tooltip-delay-hide":m},o)},e.removeStyle=function({type:e="base",id:t=c}={}){if(!a[e])return;"core"===e&&(t=i);const o=document.getElementById(t);"style"===(null==o?void 0:o.tagName)?null==o||o.remove():console.warn(`[react-tooltip] Failed to remove 'style' element with id '${t}'. Call \`injectStyle()\` first`),a[e]=!1},Object.defineProperty(e,"__esModule",{value:!0})}));