import{r as t,_ as K,t as U,N as W,i as o,R as r,O as X,k as Y,P as e,Q as Z,S as $}from"./index-DcKDDqO0.js";import{g as ee,e as ne}from"./getRTLPlacement-B9yMZb6p.js";var F=t.forwardRef(function(n,M){var j=n.children,v=n.animation,q=v===void 0?!0:v,L=n.className,_=n.container,b=n.content,h=n.delay,f=h===void 0?0:h,P=n.fallbackPlacements,A=P===void 0?["top","right","bottom","left"]:P,y=n.offset,B=y===void 0?[0,6]:y,k=n.onHide,w=n.onShow,T=n.placement,I=T===void 0?"top":T,d=n.popperConfig,C=n.trigger,i=C===void 0?["hover","focus"]:C,m=n.visible,Q=K(n,["children","animation","className","container","content","delay","fallbackPlacements","offset","onHide","onShow","placement","popperConfig","trigger","visible"]),a=t.useRef(null),s=t.useRef(null),V=U(M,a),E="tooltip".concat(t.useId()),R=t.useState(!1),l=R[0],N=R[1],S=t.useState(m),c=S[0],H=S[1],g=W(),z=g.initPopper,D=g.destroyPopper,G=g.updatePopper,O=typeof f=="number"?{show:f,hide:f}:f,x={modifiers:[{name:"arrow",options:{element:".tooltip-arrow"}},{name:"flip",options:{fallbackPlacements:A}},{name:"offset",options:{offset:B}}],placement:ee(I,s.current)},J=o(o({},x),typeof d=="function"?d(x):d);t.useEffect(function(){if(m){u();return}p()},[m]),t.useEffect(function(){if(l&&s.current&&a.current){z(s.current,a.current,J),setTimeout(function(){H(!0)},O.show);return}!l&&s.current&&a.current&&D()},[l]),t.useEffect(function(){!c&&s.current&&a.current&&ne(function(){N(!1)},a.current)},[c]);var u=function(){N(!0),w&&w()},p=function(){setTimeout(function(){H(!1),k&&k()},O.hide)};return t.useEffect(function(){G()},[b]),r.createElement(r.Fragment,null,r.cloneElement(j,o(o(o(o(o({},c&&{"aria-describedby":E}),{ref:s}),(i==="click"||i.includes("click"))&&{onClick:function(){return c?p():u()}}),(i==="focus"||i.includes("focus"))&&{onFocus:function(){return u()},onBlur:function(){return p()}}),(i==="hover"||i.includes("hover"))&&{onMouseEnter:function(){return u()},onMouseLeave:function(){return p()}})),r.createElement(X,{container:_,portal:!0},l&&r.createElement("div",o({className:Y("tooltip","bs-tooltip-auto",{fade:q,show:c},L),id:E,ref:V,role:"tooltip"},Q),r.createElement("div",{className:"tooltip-arrow"}),r.createElement("div",{className:"tooltip-inner"},b))))});F.propTypes={animation:e.bool,children:e.node,container:e.any,content:e.oneOfType([e.string,e.node]),delay:e.oneOfType([e.number,e.shape({show:e.number.isRequired,hide:e.number.isRequired})]),fallbackPlacements:$,offset:e.any,onHide:e.func,onShow:e.func,placement:e.oneOf(["auto","top","right","bottom","left"]),popperConfig:e.oneOfType([e.func,e.object]),trigger:Z,visible:e.bool};F.displayName="CTooltip";export{F as C};
|