@progress/kendo-react-tooltip 14.4.1 → 14.5.0-develop.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/js/kendo-react-tooltip.js +1 -1
- package/package-metadata.mjs +2 -2
- package/package.json +4 -4
- package/tooltip/Tooltip.d.ts +2 -2
- package/tooltip/Tooltip.js +1 -1
- package/tooltip/Tooltip.mjs +28 -28
|
@@ -12,4 +12,4 @@
|
|
|
12
12
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
13
13
|
*-------------------------------------------------------------------------------------------
|
|
14
14
|
*/
|
|
15
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("react-dom"),require("prop-types"),require("@progress/kendo-react-common"),require("@progress/kendo-react-popup")):"function"==typeof define&&define.amd?define(["exports","react","react-dom","prop-types","@progress/kendo-react-common","@progress/kendo-react-popup"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactTooltip={},e.React,e.ReactDOM,e.PropTypes,e.KendoReactCommon,e.KendoReactPopup)}(this,function(e,t,o,n,r,l){"use strict";function a(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(o){if("default"!==o){var n=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,n.get?n:{enumerable:!0,get:function(){return e[o]}})}}),t.default=e,Object.freeze(t)}var i=a(t),c=a(o);const s=["k-tooltip-content","k-animation-container","k-tooltip","k-tooltip-title","k-tooltip k-tooltip-closable","k-icon k-i-close"],u=e=>{if(null===e)return!1;let t=e;for(;t;){if(null!==t&&t.classList&&t.classList.contains("k-tooltip"))return!0;t=null!==t.parentNode&&t.parentNode}return s.filter(t=>t===e.className).length>0},p={anchorElement:"pointer",openDelay:400,position:"auto",showCallout:!0,parentTitle:!1},d=i.forwardRef((e,t)=>{const{showOption:o,open:n,targetElement:r,onOpen:l,onClose:a,onPosition:c,children:s,...u}=e;let p=null;const d=void 0===(null==o?void 0:o.hover)||(null==o?void 0:o.hover),m=void 0!==(null==o?void 0:o.click)&&(null==o?void 0:o.click),h=void 0!==(null==o?void 0:o.focus)&&(null==o?void 0:o.focus),v=void 0!==(null==o?void 0:o.none)&&(null==o?void 0:o.none),g=(void 0!==(null==o?void 0:o.keys)?null==o?void 0:o.keys:[]).map(e=>"Space"===e?" ":e);return i.createElement("div",{onMouseOver:e=>{p&&!v&&d&&p.handleMouseOver(e)},onMouseOut:e=>{p&&!v&&d&&p.handleMouseOut(e)},onClick:e=>{p&&!v&&m&&p.handleTargetItemClick(e)},onFocus:e=>{p&&!v&&h&&p.handleMouseOver(e)},onKeyDown:e=>{(p&&!v&&g.length>0||p&&!v&&"Escape"===e.key)&&p.handleKeyDown(e,g)}},i.createElement(f,{ref:e=>{p=e,t&&("function"==typeof t?t(e):t.current=e)},open:n,targetElement:r,onOpen:l,onClose:a,onPosition:c,...u}),s)});d.displayName="KendoReactTooltipWrapper";const f=i.memo(i.forwardRef((e,t)=>{const{anchorElement:o=p.anchorElement,openDelay:n=p.openDelay,position:l=p.position,showCallout:a=p.showCallout,parentTitle:s=p.parentTitle,open:d,targetElement:f,content:m,filter:h,updateInterval:v,onOpen:g,onClose:y,onPosition:k,appendTo:b,className:E,style:w,id:C,tooltipClassName:O,tooltipStyle:T,setCalloutOnPositionAuto:N}=e,R=i.useContext(r.ZIndexContext),[x,P]=i.useState(null),[I,A]=i.useState(!1),[D,K]=i.useState(""),S=i.useRef(0),M=i.useRef(0),j=i.useRef(void 0),z=i.useRef(void 0),q=i.useRef(!1),H=i.useRef(D),L=i.useRef(x),F=i.useRef(I);i.useEffect(()=>{L.current=x,F.current=I,H.current=D},[x,I,D]);const B=void 0!==d,W=e=>{let t=e;for(;t;){if(null!==t.getAttribute("title")||t.titleExpando)return{title:t.getAttribute("title")||t.titleExpando,element:t};t=s&&t.parentElement||null}return{title:"",element:null}},Z=()=>{switch(l){case"bottom":return"k-callout k-callout-n";case"left":return"k-callout k-callout-e";case"right":return"k-callout k-callout-w";case"top":return"k-callout k-callout-s";default:return S.current<window.innerHeight/2?"k-callout k-callout-n":"k-callout k-callout-s"}},U=(e,t)=>{if(!t)return{left:0,top:0};const n=(e=>null!==e?e.getBoundingClientRect():document.body.getBoundingClientRect())(t),r=((e,t,o,n,r)=>{switch(r){case"bottom":case"top":return"pointer"===n?e-t/2:o.left-t/2+o.width/2;case"left":return"pointer"===n?e-t-10:o.left-t-10;case"right":return"pointer"===n?e+10:o.right+10;default:return"pointer"===n?e<window.screen.availWidth/2?e-10:e-t+10:e<window.screen.availWidth/2?o.left:o.right-t}})(M.current,e.offsetWidth,n,o,l),a=((e,t,o,n,r)=>{switch(r){case"bottom":return"pointer"===n?e+10:t.bottom+10;case"left":case"right":return"pointer"===n?e-o/2:t.top-o/2+t.height/2;case"top":return"pointer"===n?e-o-10:t.top-o-10;default:return"pointer"===n?e<window.innerHeight/2?e+10:e-o-10:e<window.innerHeight/2?t.bottom+10:t.top-o-10}})(S.current,n,e.offsetHeight,o,l);return{left:r,top:a}},V=e=>{r.dispatchEvent(y,e,void 0,void 0),P(null),A(!1),K("")},X=e=>{clearTimeout(j.current),clearInterval(z.current),e.target.hasChildNodes()&&e.target.childNodes.forEach(t=>{"title"===t.nodeName&&(e.target.titleExpando=t.innerHTML,t.remove())});const t=f||e.target,o=W(t),l=B?d:F.current;if(!o.title)return void(l&&V(e));o.element&&(o.element.titleExpando=o.title,o.element.title=""),q.current=!0;const a=()=>{P(t),A(!0),K(o.title),v&&(z.current=setInterval(()=>{const e=t;if(e)if(null===e.parentElement)V({target:e});else{const t=W(e);t.title&&t.title!==H.current&&K(t.title)}},v))};n?j.current=window.setTimeout(()=>{q.current&&a()},n):a(),H.current!==o.title&&r.dispatchEvent(g,e,void 0,void 0)},Y=e=>{const t=e.target;!(e=>!h||h(e))(t)||u(t)||t===L.current||X(e)},$=e=>{const t=L.current?L.current.ownerDocument:document,o=null==t?void 0:t.elementFromPoint(e.clientX,e.clientY);u(o)||d||(clearInterval(z.current),q.current=!1,V(e))},_=e=>L.current===e.nativeEvent.target,G=e=>{const t=_(e);(B?d:F.current)&&t?V(e):X(e)},J=(e,t)=>{const o=e.key;"Escape"===e.key?(e=>{const t=_(e);(B?d:F.current)&&t&&V(e)})(e):t.includes(o)&&Y(e)},Q=i.useCallback(e=>{S.current=e.clientY,M.current=e.clientX},[]);i.useEffect(()=>(document&&document.body.addEventListener("mousemove",Q),()=>{clearTimeout(j.current),clearInterval(z.current),document&&document.body.removeEventListener("mousemove",Q)}),[Q]),i.useEffect(()=>{if(d&&f){let e=f,t="",o=null;for(;e;){if(null!==e.getAttribute("title")||e.titleExpando){t=e.getAttribute("title")||e.titleExpando,o=e;break}e=s&&e.parentElement||null}t&&(o&&(o.titleExpando=t,o.title=""),P(f),A(!0),K(t))}else!1===d&&(P(null),A(!1),K(""))},[d,f,s]);const ee=i.useMemo(()=>({handleMouseOver:Y,handleMouseOut:$,handleTargetItemClick:G,handleKeyDown:J,props:e}),[e]);i.useImperativeHandle(t,()=>ee,[ee]);const te=R||100,oe=i.useCallback(e=>{if(!e)return;let t;if(k){const n={element:e,targetElement:x,mouseTop:S.current,mouseLeft:M.current,anchorElement:o,position:l,target:ee,syntheticEvent:null,nativeEvent:null};t=k(n)}else t=U(e,x);e.style.left=t.left+"px",e.style.top=t.top+"px"},[k,x,o,l,U,ee]),ne=i.useCallback(e=>{e&&(e.className=Z(),"auto"===l&&(M.current<window.screen.availWidth/2?e.style.left=N||"25%":e.style.left=N||"75%"))},[Z,l,N]);return!1===d?null:x&&D&&x.ownerDocument&&c.createPortal(i.createElement("div",{ref:oe,className:r.classNames("k-animation-container","k-animation-container-fixed","k-animation-container-shown",E),style:{zIndex:te,...w},tabIndex:0},i.createElement("div",{className:"k-child-animation-container"},i.createElement("div",{id:C,role:"tooltip",className:r.classNames("k-tooltip",O),style:{position:"relative",...T}},i.createElement("div",{className:"k-tooltip-content"},m&&i.createElement(m,{title:D,target:x})||D),a&&i.createElement("div",{ref:ne})))),b||x.ownerDocument.body)}));f.displayName="KendoReactTooltipCore";const m=i.forwardRef((e,t)=>e.children?i.createElement(d,{ref:t,...e}):i.createElement(f,{ref:t,...e}));m.displayName="KendoReactTooltip",m.propTypes={id:n.string,anchorElement:n.string,appendTo:n.any,position:n.oneOf(["auto","top","bottom","left","right"]),showCallout:n.bool,parentTitle:n.bool,content:n.any,open:n.bool,targetElement:n.any,filter:n.func,openDelay:n.number,updateInterval:n.number,onOpen:n.func,onClose:n.func,onPosition:n.func,className:n.string,style:n.object,tooltipClassName:n.string,tooltipStyle:n.object,setCalloutOnPositionAuto:n.string,showOption:n.shape({hover:n.bool,click:n.bool,focus:n.bool,none:n.bool,keys:n.arrayOf(n.string)}),children:n.node};const h=i.forwardRef((e,t)=>{const o=i.useRef(null),n=i.useRef(null),{alignment:l=v.alignment,orientation:a=v.orientation}=e;return i.useImperativeHandle(n,()=>({props:e,element:o.current})),i.useImperativeHandle(t,()=>n.current),i.createElement("div",{ref:o,className:r.classNames("k-popover-actions","k-actions",{[`k-actions-${l}`]:l,[`k-actions-${a}`]:a})},e.children)}),v={alignment:"stretched",orientation:"horizontal"};h.propTypes={alignment:n.oneOf(["start","center","end","stretched"]),orientation:n.oneOf(["horizontal","vertical"]),children:n.oneOfType([n.element,n.node])},h.displayName="KendoReactPopoverActionsBar";const g=e=>{if(e){const t=e.querySelectorAll(r.FOCUSABLE_ELEMENTS.join(", "));if(t.length)return t[0]}},y=e=>{const t=g(document.querySelector(".k-popover-inner")),o=(e=>{if(e){const t=e.querySelectorAll(r.FOCUSABLE_ELEMENTS.join(", "));if(t.length)return t[t.length-1]}})(document.querySelector(".k-popover-inner"));e.shiftKey&&e.target===t?(o&&o.focus(),e.preventDefault()):!e.shiftKey&&e.target===o&&(t&&t.focus(),e.preventDefault())},k={top:"k-callout-s",left:"k-callout-e",bottom:"k-callout-n",right:"k-callout-w"},b={top:"k-callout-n",left:"k-callout-w",bottom:"k-callout-s",right:"k-callout-e"},E={top:{vertical:"bottom",horizontal:"center"},left:{vertical:"center",horizontal:"right"},bottom:{vertical:"top",horizontal:"center"},right:{vertical:"center",horizontal:"left"}},w={top:{vertical:"top",horizontal:"center"},left:{vertical:"center",horizontal:"left"},bottom:{vertical:"bottom",horizontal:"center"},right:{vertical:"center",horizontal:"right"}},C=i.forwardRef((e,t)=>{const{autoFocus:o=!0,callout:n=O.callout,position:a=O.position,collision:c=O.collision,title:s,children:u,show:p,anchor:d,appendTo:f,offset:m,animate:v,positionMode:C,scale:T,popoverClass:N,className:R,id:x,style:P,contentStyle:I,onPosition:A,onClose:D,onOpen:K,onKeyDown:S}=e,[M,j]=i.useState(!1),z="top"===a||"bottom"===a,q=e.margin||{vertical:n&&z?15:0,horizontal:n&&!z?15:0},H=E[a],L=w[a],F=i.useContext(r.ZIndexContext),B=F?F+2e3:12e3,W=i.useRef(null);i.useImperativeHandle(W,()=>({props:e})),i.useImperativeHandle(t,()=>W.current);const Z=i.useCallback(e=>{if(setTimeout(()=>j(e.flipped)),A){const t={target:W.current,flipped:e.flipped,fitted:e.fitted};A.call(void 0,t)}},[A,j]),U=i.useCallback(()=>{if(o){const e=g(document.querySelector(".k-popover-inner"));e&&e.focus()}if(K){const e={target:W.current};K.call(void 0,e)}},[K]),V=i.useCallback(e=>{if(S&&"Escape"===e.key){const e={target:W.current,show:!1};S.call(void 0,e)}"Tab"===e.key&&y(e)},[S]),X=i.useCallback(e=>{if(D){const e={target:W.current};D.call(void 0,e)}e&&e.target&&e.target.props&&e.target.props.anchor&&e.target.props.anchor.focus()},[D]),Y={"k-popover":!0};Array.isArray(N)?N.forEach(e=>Y[e]=!0):"object"==typeof N?Object.keys(N).forEach(e=>{Y[e]=N[e]}):N&&(Y[N]=!0);const $=M?b[a]:k[a],_=i.useMemo(()=>i.createElement(i.Fragment,null,s&&i.createElement("div",{className:"k-popover-header"},s),i.createElement("div",{className:"k-popover-body",style:I},(e=>i.Children.toArray(e).filter(e=>e&&e.type!==h))(u)),(e=>i.Children.toArray(e).filter(e=>e&&e.type===h))(u)),[u,I,s]);return i.createElement(r.ZIndexContext.Provider,{value:B},i.createElement(l.Popup,{id:x,role:"tooltip",animate:v,collision:c,anchor:d,offset:m,margin:q,popupAlign:H,anchorAlign:L,appendTo:f,show:p,scale:T,positionMode:C,style:P,className:R,popupClass:Y,onOpen:U,onClose:X,onPosition:Z,onKeyDown:V},n&&a?i.createElement(i.Fragment,null,i.createElement("div",{className:r.classNames("k-popover-callout",$)}),i.createElement("div",{className:"k-popover-inner"},_)):_))}),O={callout:!0,position:"top",collision:{horizontal:"none",vertical:"none"}};C.propTypes={callout:n.bool,title:n.node,position:n.oneOf(["top","left","bottom","right"]),show:n.bool,animate:n.oneOfType([n.bool,n.shape({openDuration:n.number,closeDuration:n.number})]),anchor:function(e){const t=e.anchor;return t&&"number"!=typeof t.nodeType?new Error("Invalid prop `anchor` supplied to `Kendo React Popover`. Validation failed."):null},appendTo:function(e){const t=e.appendTo;return t&&"number"!=typeof t.nodeType?new Error("Invalid prop `appendTo` supplied to `Kendo React Popover`. Validation failed."):null},positionMode:n.oneOf(["fixed","absolute"]),scale:n.number,offset:n.shape({left:n.number,top:n.number}),children:n.oneOfType([n.element,n.node]),className:n.oneOfType([n.string,n.arrayOf(n.string),n.object]),id:n.string,popoverClass:n.oneOfType([n.string,n.arrayOf(n.string),n.object]),style:n.object,onClose:n.func,onPosition:n.func,onOpen:n.func},C.displayName="KendoReactPopover",e.Popover=C,e.PopoverActionsBar=h,e.Tooltip=m});
|
|
15
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("react-dom"),require("prop-types"),require("@progress/kendo-react-common"),require("@progress/kendo-react-popup")):"function"==typeof define&&define.amd?define(["exports","react","react-dom","prop-types","@progress/kendo-react-common","@progress/kendo-react-popup"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactTooltip={},e.React,e.ReactDOM,e.PropTypes,e.KendoReactCommon,e.KendoReactPopup)}(this,function(e,t,o,n,r,l){"use strict";function a(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(o){if("default"!==o){var n=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,n.get?n:{enumerable:!0,get:function(){return e[o]}})}}),t.default=e,Object.freeze(t)}var i=a(t),c=a(o);const s=["k-tooltip-content","k-animation-container","k-tooltip","k-tooltip-title","k-tooltip k-tooltip-closable","k-icon k-i-close"],u=e=>{if(null===e)return!1;let t=e;for(;t;){if(null!==t&&t.classList&&t.classList.contains("k-tooltip"))return!0;t=null!==t.parentNode&&t.parentNode}return s.filter(t=>t===e.className).length>0},p={anchorElement:"pointer",openDelay:400,position:"auto",showCallout:!0,parentTitle:!1},d=i.forwardRef((e,t)=>{const{showOption:o,open:n,targetElement:r,onOpen:l,onClose:a,onPosition:c,children:s,...u}=e;let p=null;const d=void 0===(null==o?void 0:o.hover)||(null==o?void 0:o.hover),m=void 0!==(null==o?void 0:o.click)&&(null==o?void 0:o.click),v=void 0!==(null==o?void 0:o.focus)&&(null==o?void 0:o.focus),h=void 0!==(null==o?void 0:o.none)&&(null==o?void 0:o.none),g=(void 0!==(null==o?void 0:o.keys)?null==o?void 0:o.keys:[]).map(e=>"Space"===e?" ":e);return i.createElement("div",{onMouseOver:e=>{p&&!h&&d&&p.handleMouseOver(e)},onMouseLeave:e=>{p&&!h&&d&&p.handleMouseLeave(e)},onClick:e=>{p&&!h&&m&&p.handleTargetItemClick(e)},onFocus:e=>{p&&!h&&v&&p.handleMouseOver(e)},onKeyDown:e=>{(p&&!h&&g.length>0||p&&!h&&"Escape"===e.key)&&p.handleKeyDown(e,g)}},i.createElement(f,{ref:e=>{p=e,t&&("function"==typeof t?t(e):t.current=e)},open:n,targetElement:r,onOpen:l,onClose:a,onPosition:c,...u}),s)});d.displayName="KendoReactTooltipWrapper";const f=i.memo(i.forwardRef((e,t)=>{const{anchorElement:o=p.anchorElement,openDelay:n=p.openDelay,position:l=p.position,showCallout:a=p.showCallout,parentTitle:s=p.parentTitle,open:d,targetElement:f,content:m,filter:v,updateInterval:h,onOpen:g,onClose:y,onPosition:k,appendTo:b,className:E,style:w,id:C,tooltipClassName:T,tooltipStyle:O,setCalloutOnPositionAuto:N}=e,R=i.useContext(r.ZIndexContext),[x,P]=i.useState(null),[I,A]=i.useState(!1),[D,K]=i.useState(""),S=i.useRef(0),M=i.useRef(0),j=i.useRef(void 0),z=i.useRef(void 0),L=i.useRef(!1),q=i.useRef(D),H=i.useRef(x),F=i.useRef(I);i.useEffect(()=>{H.current=x,F.current=I,q.current=D},[x,I,D]);const B=void 0!==d,W=e=>{let t=e;for(;t;){if(null!==t.getAttribute("title")||t.titleExpando)return{title:t.getAttribute("title")||t.titleExpando,element:t};t=s&&t.parentElement||null}return{title:"",element:null}},Z=()=>{switch(l){case"bottom":return"k-callout k-callout-n";case"left":return"k-callout k-callout-e";case"right":return"k-callout k-callout-w";case"top":return"k-callout k-callout-s";default:return S.current<window.innerHeight/2?"k-callout k-callout-n":"k-callout k-callout-s"}},U=(e,t)=>{if(!t)return{left:0,top:0};const n=(e=>null!==e?e.getBoundingClientRect():document.body.getBoundingClientRect())(t),r=((e,t,o,n,r)=>{switch(r){case"bottom":case"top":return"pointer"===n?e-t/2:o.left-t/2+o.width/2;case"left":return"pointer"===n?e-t-10:o.left-t-10;case"right":return"pointer"===n?e+10:o.right+10;default:return"pointer"===n?e<window.screen.availWidth/2?e-10:e-t+10:e<window.screen.availWidth/2?o.left:o.right-t}})(M.current,e.offsetWidth,n,o,l),a=((e,t,o,n,r)=>{switch(r){case"bottom":return"pointer"===n?e+10:t.bottom+10;case"left":case"right":return"pointer"===n?e-o/2:t.top-o/2+t.height/2;case"top":return"pointer"===n?e-o-10:t.top-o-10;default:return"pointer"===n?e<window.innerHeight/2?e+10:e-o-10:e<window.innerHeight/2?t.bottom+10:t.top-o-10}})(S.current,n,e.offsetHeight,o,l);return{left:r,top:a}},V=e=>{r.dispatchEvent(y,e,void 0,void 0),P(null),A(!1),K("")},X=e=>{clearTimeout(j.current),clearInterval(z.current),e.target.hasChildNodes()&&e.target.childNodes.forEach(t=>{"title"===t.nodeName&&(e.target.titleExpando=t.innerHTML,t.remove())});const t=f||e.target,o=W(t),l=B?d:F.current;if(!o.title)return void(l&&V(e));o.element&&(o.element.titleExpando=o.title,o.element.title=""),L.current=!0;const a=()=>{P(o.element||t),A(!0),K(o.title),h&&(z.current=setInterval(()=>{const e=t;if(e)if(null===e.parentElement)V({target:e});else{const t=W(e);t.title&&t.title!==q.current&&K(t.title)}},h))};n?j.current=window.setTimeout(()=>{L.current&&a()},n):a(),q.current!==o.title&&r.dispatchEvent(g,e,void 0,void 0)},Y=e=>{const t=e.target;!(e=>!v||v(e))(t)||u(t)||t===H.current||X(e)},$=e=>{const t=H.current?H.current.ownerDocument:document,o=null==t?void 0:t.elementFromPoint(e.clientX,e.clientY);u(o)||d||(clearInterval(z.current),L.current=!1,V(e))},_=e=>H.current===e.nativeEvent.target,G=e=>{const t=_(e);(B?d:F.current)&&t?V(e):X(e)},J=(e,t)=>{const o=e.key;"Escape"===e.key?(e=>{const t=_(e);(B?d:F.current)&&t&&V(e)})(e):t.includes(o)&&Y(e)},Q=i.useCallback(e=>{S.current=e.clientY,M.current=e.clientX},[]);i.useEffect(()=>(document&&document.body.addEventListener("mousemove",Q),()=>{clearTimeout(j.current),clearInterval(z.current),document&&document.body.removeEventListener("mousemove",Q)}),[Q]),i.useEffect(()=>{if(d&&f){let e=f,t="",o=null;for(;e;){if(null!==e.getAttribute("title")||e.titleExpando){t=e.getAttribute("title")||e.titleExpando,o=e;break}e=s&&e.parentElement||null}t&&(o&&(o.titleExpando=t,o.title=""),P(f),A(!0),K(t))}else!1===d&&(P(null),A(!1),K(""))},[d,f,s]);const ee=i.useMemo(()=>({handleMouseOver:Y,handleMouseLeave:$,handleTargetItemClick:G,handleKeyDown:J,props:e}),[e]);i.useImperativeHandle(t,()=>ee,[ee]);const te=R||100,oe=i.useCallback(e=>{if(!e)return;let t;if(k){const n={element:e,targetElement:x,mouseTop:S.current,mouseLeft:M.current,anchorElement:o,position:l,target:ee,syntheticEvent:null,nativeEvent:null};t=k(n)}else t=U(e,x);e.style.left=t.left+"px",e.style.top=t.top+"px"},[k,x,o,l,U,ee]),ne=i.useCallback(e=>{e&&(e.className=Z(),"auto"===l&&(M.current<window.screen.availWidth/2?e.style.left=N||"25%":e.style.left=N||"75%"))},[Z,l,N]);return!1===d?null:x&&D&&x.ownerDocument&&c.createPortal(i.createElement("div",{ref:oe,className:r.classNames("k-animation-container","k-animation-container-fixed","k-animation-container-shown",E),style:{zIndex:te,...w},tabIndex:0},i.createElement("div",{className:"k-child-animation-container"},i.createElement("div",{id:C,role:"tooltip",className:r.classNames("k-tooltip",T),style:{position:"relative",...O}},i.createElement("div",{className:"k-tooltip-content"},m&&i.createElement(m,{title:D,target:x})||D),a&&i.createElement("div",{ref:ne})))),b||x.ownerDocument.body)}));f.displayName="KendoReactTooltipCore";const m=i.forwardRef((e,t)=>e.children?i.createElement(d,{ref:t,...e}):i.createElement(f,{ref:t,...e}));m.displayName="KendoReactTooltip",m.propTypes={id:n.string,anchorElement:n.string,appendTo:n.any,position:n.oneOf(["auto","top","bottom","left","right"]),showCallout:n.bool,parentTitle:n.bool,content:n.any,open:n.bool,targetElement:n.any,filter:n.func,openDelay:n.number,updateInterval:n.number,onOpen:n.func,onClose:n.func,onPosition:n.func,className:n.string,style:n.object,tooltipClassName:n.string,tooltipStyle:n.object,setCalloutOnPositionAuto:n.string,showOption:n.shape({hover:n.bool,click:n.bool,focus:n.bool,none:n.bool,keys:n.arrayOf(n.string)}),children:n.node};const v=i.forwardRef((e,t)=>{const o=i.useRef(null),n=i.useRef(null),{alignment:l=h.alignment,orientation:a=h.orientation}=e;return i.useImperativeHandle(n,()=>({props:e,element:o.current})),i.useImperativeHandle(t,()=>n.current),i.createElement("div",{ref:o,className:r.classNames("k-popover-actions","k-actions",{[`k-actions-${l}`]:l,[`k-actions-${a}`]:a})},e.children)}),h={alignment:"stretched",orientation:"horizontal"};v.propTypes={alignment:n.oneOf(["start","center","end","stretched"]),orientation:n.oneOf(["horizontal","vertical"]),children:n.oneOfType([n.element,n.node])},v.displayName="KendoReactPopoverActionsBar";const g=e=>{if(e){const t=e.querySelectorAll(r.FOCUSABLE_ELEMENTS.join(", "));if(t.length)return t[0]}},y=e=>{const t=g(document.querySelector(".k-popover-inner")),o=(e=>{if(e){const t=e.querySelectorAll(r.FOCUSABLE_ELEMENTS.join(", "));if(t.length)return t[t.length-1]}})(document.querySelector(".k-popover-inner"));e.shiftKey&&e.target===t?(o&&o.focus(),e.preventDefault()):!e.shiftKey&&e.target===o&&(t&&t.focus(),e.preventDefault())},k={top:"k-callout-s",left:"k-callout-e",bottom:"k-callout-n",right:"k-callout-w"},b={top:"k-callout-n",left:"k-callout-w",bottom:"k-callout-s",right:"k-callout-e"},E={top:{vertical:"bottom",horizontal:"center"},left:{vertical:"center",horizontal:"right"},bottom:{vertical:"top",horizontal:"center"},right:{vertical:"center",horizontal:"left"}},w={top:{vertical:"top",horizontal:"center"},left:{vertical:"center",horizontal:"left"},bottom:{vertical:"bottom",horizontal:"center"},right:{vertical:"center",horizontal:"right"}},C=i.forwardRef((e,t)=>{const{autoFocus:o=!0,callout:n=T.callout,position:a=T.position,collision:c=T.collision,title:s,children:u,show:p,anchor:d,appendTo:f,offset:m,animate:h,positionMode:C,scale:O,popoverClass:N,className:R,id:x,style:P,contentStyle:I,onPosition:A,onClose:D,onOpen:K,onKeyDown:S}=e,[M,j]=i.useState(!1),z="top"===a||"bottom"===a,L=e.margin||{vertical:n&&z?15:0,horizontal:n&&!z?15:0},q=E[a],H=w[a],F=i.useContext(r.ZIndexContext),B=F?F+2e3:12e3,W=i.useRef(null);i.useImperativeHandle(W,()=>({props:e})),i.useImperativeHandle(t,()=>W.current);const Z=i.useCallback(e=>{if(setTimeout(()=>j(e.flipped)),A){const t={target:W.current,flipped:e.flipped,fitted:e.fitted};A.call(void 0,t)}},[A,j]),U=i.useCallback(()=>{if(o){const e=g(document.querySelector(".k-popover-inner"));e&&e.focus()}if(K){const e={target:W.current};K.call(void 0,e)}},[K]),V=i.useCallback(e=>{if(S&&"Escape"===e.key){const e={target:W.current,show:!1};S.call(void 0,e)}"Tab"===e.key&&y(e)},[S]),X=i.useCallback(e=>{if(D){const e={target:W.current};D.call(void 0,e)}e&&e.target&&e.target.props&&e.target.props.anchor&&e.target.props.anchor.focus()},[D]),Y={"k-popover":!0};Array.isArray(N)?N.forEach(e=>Y[e]=!0):"object"==typeof N?Object.keys(N).forEach(e=>{Y[e]=N[e]}):N&&(Y[N]=!0);const $=M?b[a]:k[a],_=i.useMemo(()=>i.createElement(i.Fragment,null,s&&i.createElement("div",{className:"k-popover-header"},s),i.createElement("div",{className:"k-popover-body",style:I},(e=>i.Children.toArray(e).filter(e=>e&&e.type!==v))(u)),(e=>i.Children.toArray(e).filter(e=>e&&e.type===v))(u)),[u,I,s]);return i.createElement(r.ZIndexContext.Provider,{value:B},i.createElement(l.Popup,{id:x,role:"tooltip",animate:h,collision:c,anchor:d,offset:m,margin:L,popupAlign:q,anchorAlign:H,appendTo:f,show:p,scale:O,positionMode:C,style:P,className:R,popupClass:Y,onOpen:U,onClose:X,onPosition:Z,onKeyDown:V},n&&a?i.createElement(i.Fragment,null,i.createElement("div",{className:r.classNames("k-popover-callout",$)}),i.createElement("div",{className:"k-popover-inner"},_)):_))}),T={callout:!0,position:"top",collision:{horizontal:"none",vertical:"none"}};C.propTypes={callout:n.bool,title:n.node,position:n.oneOf(["top","left","bottom","right"]),show:n.bool,animate:n.oneOfType([n.bool,n.shape({openDuration:n.number,closeDuration:n.number})]),anchor:function(e){const t=e.anchor;return t&&"number"!=typeof t.nodeType?new Error("Invalid prop `anchor` supplied to `Kendo React Popover`. Validation failed."):null},appendTo:function(e){const t=e.appendTo;return t&&"number"!=typeof t.nodeType?new Error("Invalid prop `appendTo` supplied to `Kendo React Popover`. Validation failed."):null},positionMode:n.oneOf(["fixed","absolute"]),scale:n.number,offset:n.shape({left:n.number,top:n.number}),children:n.oneOfType([n.element,n.node]),className:n.oneOfType([n.string,n.arrayOf(n.string),n.object]),id:n.string,popoverClass:n.oneOfType([n.string,n.arrayOf(n.string),n.object]),style:n.object,onClose:n.func,onPosition:n.func,onOpen:n.func},C.displayName="KendoReactPopover",e.Popover=C,e.PopoverActionsBar=v,e.Tooltip=m});
|
package/package-metadata.mjs
CHANGED
|
@@ -7,7 +7,7 @@ export const packageMetadata = Object.freeze({
|
|
|
7
7
|
productName: 'KendoReact',
|
|
8
8
|
productCode: 'KENDOUIREACT',
|
|
9
9
|
productCodes: ['KENDOUIREACT'],
|
|
10
|
-
publishDate:
|
|
11
|
-
version: '14.
|
|
10
|
+
publishDate: 1777918086,
|
|
11
|
+
version: '14.5.0-develop.2',
|
|
12
12
|
licensingDocsUrl: 'https://www.telerik.com/kendo-react-ui/components/my-license/'
|
|
13
13
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-react-tooltip",
|
|
3
|
-
"version": "14.
|
|
3
|
+
"version": "14.5.0-develop.2",
|
|
4
4
|
"description": "React Tooltips library represents popups with information that is related to a UI element. KendoReact Tooltips package",
|
|
5
5
|
"author": "Progress",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
"sideEffects": false,
|
|
27
27
|
"peerDependencies": {
|
|
28
28
|
"@progress/kendo-licensing": "^1.7.2",
|
|
29
|
-
"@progress/kendo-react-common": "14.
|
|
30
|
-
"@progress/kendo-react-popup": "14.
|
|
29
|
+
"@progress/kendo-react-common": "14.5.0-develop.2",
|
|
30
|
+
"@progress/kendo-react-popup": "14.5.0-develop.2",
|
|
31
31
|
"@progress/kendo-svg-icons": "^4.0.0",
|
|
32
32
|
"react": "^18.0.0 || ^19.0.0",
|
|
33
33
|
"react-dom": "^18.0.0 || ^19.0.0"
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"package": {
|
|
57
57
|
"productName": "KendoReact",
|
|
58
58
|
"productCode": "KENDOUIREACT",
|
|
59
|
-
"publishDate":
|
|
59
|
+
"publishDate": 1777918086,
|
|
60
60
|
"licensingDocsUrl": "https://www.telerik.com/kendo-react-ui/components/my-license/"
|
|
61
61
|
}
|
|
62
62
|
},
|
package/tooltip/Tooltip.d.ts
CHANGED
|
@@ -19,11 +19,11 @@ export interface TooltipHandle {
|
|
|
19
19
|
*/
|
|
20
20
|
handleMouseOver: (event: any) => void;
|
|
21
21
|
/**
|
|
22
|
-
* The method is used on the
|
|
22
|
+
* The method is used on the MouseLeave event to hide the Tooltip.
|
|
23
23
|
*
|
|
24
24
|
* @param event The mouse event object.
|
|
25
25
|
*/
|
|
26
|
-
|
|
26
|
+
handleMouseLeave: (event: any) => void;
|
|
27
27
|
/**
|
|
28
28
|
* Handles click events on the target element.
|
|
29
29
|
*/
|
package/tooltip/Tooltip.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Te=require("react"),
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Te=require("react"),ve=require("react-dom"),l=require("prop-types"),C=require("@progress/kendo-react-common"),h=require("./utils.js");function oe(i){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(i){for(const t in i)if(t!=="default"){const E=Object.getOwnPropertyDescriptor(i,t);Object.defineProperty(s,t,E.get?E:{enumerable:!0,get:()=>i[t]})}}return s.default=i,Object.freeze(s)}const o=oe(Te),ke=oe(ve),be=100,I={anchorElement:"pointer",openDelay:400,position:"auto",showCallout:!0,parentTitle:!1},le=o.forwardRef((i,s)=>{const{showOption:t,open:E,targetElement:m,onOpen:j,onClose:T,onPosition:u,children:g,...N}=i;let a=null;const v=(t==null?void 0:t.hover)!==void 0?t==null?void 0:t.hover:!0,A=(t==null?void 0:t.click)!==void 0?t==null?void 0:t.click:!1,_=(t==null?void 0:t.focus)!==void 0?t==null?void 0:t.focus:!1,f=(t==null?void 0:t.none)!==void 0?t==null?void 0:t.none:!1,x=((t==null?void 0:t.keys)!==void 0?t==null?void 0:t.keys:[]).map(c=>c==="Space"?" ":c);return o.createElement("div",{onMouseOver:c=>{a&&!f&&v&&a.handleMouseOver(c)},onMouseLeave:c=>{a&&!f&&v&&a.handleMouseLeave(c)},onClick:c=>{a&&!f&&A&&a.handleTargetItemClick(c)},onFocus:c=>{a&&!f&&_&&a.handleMouseOver(c)},onKeyDown:c=>{(a&&!f&&x.length>0||a&&!f&&c.key==="Escape")&&a.handleKeyDown(c,x)}},o.createElement(B,{ref:c=>{a=c,s&&(typeof s=="function"?s(c):s.current=c)},open:E,targetElement:m,onOpen:j,onClose:T,onPosition:u,...N}),g)});le.displayName="KendoReactTooltipWrapper";const B=o.memo(o.forwardRef((i,s)=>{const{anchorElement:t=I.anchorElement,openDelay:E=I.openDelay,position:m=I.position,showCallout:j=I.showCallout,parentTitle:T=I.parentTitle,open:u,targetElement:g,content:N,filter:a,updateInterval:v,onOpen:A,onClose:_,onPosition:f,appendTo:G,className:x,style:c,id:re,tooltipClassName:ce,tooltipStyle:ie,setCalloutOnPositionAuto:q}=i,ae=o.useContext(C.ZIndexContext),[d,D]=o.useState(null),[F,O]=o.useState(!1),[y,k]=o.useState(""),P=o.useRef(0),M=o.useRef(0),H=o.useRef(void 0),S=o.useRef(void 0),Z=o.useRef(!1),W=o.useRef(y),b=o.useRef(d),L=o.useRef(F);o.useEffect(()=>{b.current=d,L.current=F,W.current=y},[d,F,y]);const V=u!==void 0,J=e=>{let n=e;for(;n;){if(n.getAttribute("title")!==null||n.titleExpando)return{title:n.getAttribute("title")||n.titleExpando,element:n};n=T&&n.parentElement||null}return{title:"",element:null}},se=e=>!a||a(e),ue=()=>ae||be,Q=()=>{switch(m){case"bottom":return"k-callout k-callout-n";case"left":return"k-callout k-callout-e";case"right":return"k-callout k-callout-w";case"top":return"k-callout k-callout-s";default:return P.current<window.innerHeight/2?"k-callout k-callout-n":"k-callout k-callout-s"}},$=(e,n)=>{if(!n)return{left:0,top:0};const r=h.getDomRect(n),z=h.getLeftPosition(M.current,e.offsetWidth,r,t,m),K=h.getTopPosition(P.current,r,e.offsetHeight,t,m);return{left:z,top:K}},R=e=>{C.dispatchEvent(_,e,void 0,void 0),D(null),O(!1),k("")},ee=e=>{clearTimeout(H.current),clearInterval(S.current),e.target.hasChildNodes()&&e.target.childNodes.forEach(p=>{p.nodeName==="title"&&(e.target.titleExpando=p.innerHTML,p.remove())});const n=g||e.target,r=J(n),z=V?u:L.current;if(!r.title){z&&R(e);return}r.element&&(r.element.titleExpando=r.title,r.element.title=""),Z.current=!0;const K=()=>{D(r.element||n),O(!0),k(r.title),v&&(S.current=setInterval(()=>{const p=n;if(p)if(p.parentElement===null)R({target:p});else{const Y=J(p);Y.title&&Y.title!==W.current&&k(Y.title)}},v))};E?H.current=window.setTimeout(()=>{Z.current&&K()},E):K(),W.current!==r.title&&C.dispatchEvent(A,e,void 0,void 0)},te=e=>{const n=e.target;!se(n)||h.isTooltipElement(n)||n===b.current||ee(e)},fe=e=>{const n=b.current?b.current.ownerDocument:document,r=n==null?void 0:n.elementFromPoint(e.clientX,e.clientY);h.isTooltipElement(r)||u||(clearInterval(S.current),Z.current=!1,R(e))},ne=e=>b.current===e.nativeEvent.target,de=e=>{const n=ne(e);(V?u:L.current)&&n&&R(e)},me=e=>{const n=ne(e);if((V?u:L.current)&&n){R(e);return}ee(e)},pe=(e,n)=>{const r=e.key;e.key==="Escape"?de(e):n.includes(r)&&te(e)},X=o.useCallback(e=>{P.current=e.clientY,M.current=e.clientX},[]);o.useEffect(()=>(document&&document.body.addEventListener("mousemove",X),()=>{clearTimeout(H.current),clearInterval(S.current),document&&document.body.removeEventListener("mousemove",X)}),[X]),o.useEffect(()=>{if(u&&g){let e=g,n="",r=null;for(;e;){if(e.getAttribute("title")!==null||e.titleExpando){n=e.getAttribute("title")||e.titleExpando,r=e;break}e=T&&e.parentElement||null}n&&(r&&(r.titleExpando=n,r.title=""),D(g),O(!0),k(n))}else u===!1&&(D(null),O(!1),k(""))},[u,g,T]);const w=o.useMemo(()=>({handleMouseOver:te,handleMouseLeave:fe,handleTargetItemClick:me,handleKeyDown:pe,props:i}),[i]);o.useImperativeHandle(s,()=>w,[w]);const Ee=ue(),ge=o.useCallback(e=>{if(!e)return;let n;if(f){const r={element:e,targetElement:d,mouseTop:P.current,mouseLeft:M.current,anchorElement:t,position:m,target:w,syntheticEvent:null,nativeEvent:null};n=f(r)}else n=$(e,d);e.style.left=n.left+"px",e.style.top=n.top+"px"},[f,d,t,m,$,w]),ye=o.useCallback(e=>{e&&(e.className=Q(),m==="auto"&&(M.current<window.screen.availWidth/2?e.style.left=q||"25%":e.style.left=q||"75%"))},[Q,m,q]);return u===!1?null:d&&y&&d.ownerDocument&&ke.createPortal(o.createElement("div",{ref:ge,className:C.classNames("k-animation-container","k-animation-container-fixed","k-animation-container-shown",x),style:{zIndex:Ee,...c},tabIndex:0},o.createElement("div",{className:"k-child-animation-container"},o.createElement("div",{id:re,role:"tooltip",className:C.classNames("k-tooltip",ce),style:{position:"relative",...ie}},o.createElement("div",{className:"k-tooltip-content"},N&&o.createElement(N,{title:y,target:d})||y),j&&o.createElement("div",{ref:ye})))),G||d.ownerDocument.body)}));B.displayName="KendoReactTooltipCore";const U=o.forwardRef((i,s)=>i.children?o.createElement(le,{ref:s,...i}):o.createElement(B,{ref:s,...i}));U.displayName="KendoReactTooltip";U.propTypes={id:l.string,anchorElement:l.string,appendTo:l.any,position:l.oneOf(["auto","top","bottom","left","right"]),showCallout:l.bool,parentTitle:l.bool,content:l.any,open:l.bool,targetElement:l.any,filter:l.func,openDelay:l.number,updateInterval:l.number,onOpen:l.func,onClose:l.func,onPosition:l.func,className:l.string,style:l.object,tooltipClassName:l.string,tooltipStyle:l.object,setCalloutOnPositionAuto:l.string,showOption:l.shape({hover:l.bool,click:l.bool,focus:l.bool,none:l.bool,keys:l.arrayOf(l.string)}),children:l.node};exports.Tooltip=U;
|
package/tooltip/Tooltip.mjs
CHANGED
|
@@ -17,20 +17,20 @@ const Ie = 100, C = {
|
|
|
17
17
|
showCallout: !0,
|
|
18
18
|
parentTitle: !1
|
|
19
19
|
}, oe = o.forwardRef((f, m) => {
|
|
20
|
-
const { showOption: n, open: I, targetElement: d, onOpen:
|
|
20
|
+
const { showOption: n, open: I, targetElement: d, onOpen: w, onClose: y, onPosition: a, children: E, ...h } = f;
|
|
21
21
|
let c = null;
|
|
22
|
-
const T = (n == null ? void 0 : n.hover) !== void 0 ? n == null ? void 0 : n.hover : !0,
|
|
22
|
+
const T = (n == null ? void 0 : n.hover) !== void 0 ? n == null ? void 0 : n.hover : !0, A = (n == null ? void 0 : n.click) !== void 0 ? n == null ? void 0 : n.click : !1, S = (n == null ? void 0 : n.focus) !== void 0 ? n == null ? void 0 : n.focus : !1, s = (n == null ? void 0 : n.none) !== void 0 ? n == null ? void 0 : n.none : !1, R = ((n == null ? void 0 : n.keys) !== void 0 ? n == null ? void 0 : n.keys : []).map((i) => i === "Space" ? " " : i);
|
|
23
23
|
return /* @__PURE__ */ o.createElement(
|
|
24
24
|
"div",
|
|
25
25
|
{
|
|
26
26
|
onMouseOver: (i) => {
|
|
27
27
|
c && !s && T && c.handleMouseOver(i);
|
|
28
28
|
},
|
|
29
|
-
|
|
30
|
-
c && !s && T && c.
|
|
29
|
+
onMouseLeave: (i) => {
|
|
30
|
+
c && !s && T && c.handleMouseLeave(i);
|
|
31
31
|
},
|
|
32
32
|
onClick: (i) => {
|
|
33
|
-
c && !s &&
|
|
33
|
+
c && !s && A && c.handleTargetItemClick(i);
|
|
34
34
|
},
|
|
35
35
|
onFocus: (i) => {
|
|
36
36
|
c && !s && S && c.handleMouseOver(i);
|
|
@@ -47,7 +47,7 @@ const Ie = 100, C = {
|
|
|
47
47
|
},
|
|
48
48
|
open: I,
|
|
49
49
|
targetElement: d,
|
|
50
|
-
onOpen:
|
|
50
|
+
onOpen: w,
|
|
51
51
|
onClose: y,
|
|
52
52
|
onPosition: a,
|
|
53
53
|
...h
|
|
@@ -63,14 +63,14 @@ const z = o.memo(
|
|
|
63
63
|
anchorElement: n = C.anchorElement,
|
|
64
64
|
openDelay: I = C.openDelay,
|
|
65
65
|
position: d = C.position,
|
|
66
|
-
showCallout:
|
|
66
|
+
showCallout: w = C.showCallout,
|
|
67
67
|
parentTitle: y = C.parentTitle,
|
|
68
68
|
open: a,
|
|
69
69
|
targetElement: E,
|
|
70
70
|
content: h,
|
|
71
71
|
filter: c,
|
|
72
72
|
updateInterval: T,
|
|
73
|
-
onOpen:
|
|
73
|
+
onOpen: A,
|
|
74
74
|
onClose: S,
|
|
75
75
|
onPosition: s,
|
|
76
76
|
appendTo: B,
|
|
@@ -80,9 +80,9 @@ const z = o.memo(
|
|
|
80
80
|
tooltipClassName: ie,
|
|
81
81
|
tooltipStyle: ce,
|
|
82
82
|
setCalloutOnPositionAuto: F
|
|
83
|
-
} = f, ae = o.useContext(ke), [u, x] = o.useState(null), [H, N] = o.useState(!1), [g, k] = o.useState(""), D = o.useRef(0), P = o.useRef(0), Z = o.useRef(void 0),
|
|
83
|
+
} = f, ae = o.useContext(ke), [u, x] = o.useState(null), [H, N] = o.useState(!1), [g, k] = o.useState(""), D = o.useRef(0), P = o.useRef(0), Z = o.useRef(void 0), M = o.useRef(void 0), W = o.useRef(!1), V = o.useRef(g), v = o.useRef(u), L = o.useRef(H);
|
|
84
84
|
o.useEffect(() => {
|
|
85
|
-
v.current = u,
|
|
85
|
+
v.current = u, L.current = H, V.current = g;
|
|
86
86
|
}, [u, H, g]);
|
|
87
87
|
const X = a !== void 0, U = (e) => {
|
|
88
88
|
let t = e;
|
|
@@ -108,22 +108,22 @@ const z = o.memo(
|
|
|
108
108
|
}, G = (e, t) => {
|
|
109
109
|
if (!t)
|
|
110
110
|
return { left: 0, top: 0 };
|
|
111
|
-
const r = ve(t), Y = be(P.current, e.offsetWidth, r, n, d),
|
|
112
|
-
return { left: Y, top:
|
|
111
|
+
const r = ve(t), Y = be(P.current, e.offsetWidth, r, n, d), K = Ce(D.current, r, e.offsetHeight, n, d);
|
|
112
|
+
return { left: Y, top: K };
|
|
113
113
|
}, b = (e) => {
|
|
114
114
|
te(S, e, void 0, void 0), x(null), N(!1), k("");
|
|
115
115
|
}, J = (e) => {
|
|
116
|
-
clearTimeout(Z.current), clearInterval(
|
|
116
|
+
clearTimeout(Z.current), clearInterval(M.current), e.target.hasChildNodes() && e.target.childNodes.forEach((p) => {
|
|
117
117
|
p.nodeName === "title" && (e.target.titleExpando = p.innerHTML, p.remove());
|
|
118
118
|
});
|
|
119
|
-
const t = E || e.target, r = U(t), Y = X ? a :
|
|
119
|
+
const t = E || e.target, r = U(t), Y = X ? a : L.current;
|
|
120
120
|
if (!r.title) {
|
|
121
121
|
Y && b(e);
|
|
122
122
|
return;
|
|
123
123
|
}
|
|
124
124
|
r.element && (r.element.titleExpando = r.title, r.element.title = ""), W.current = !0;
|
|
125
|
-
const
|
|
126
|
-
x(t), N(!0), k(r.title), T && (
|
|
125
|
+
const K = () => {
|
|
126
|
+
x(r.element || t), N(!0), k(r.title), T && (M.current = setInterval(() => {
|
|
127
127
|
const p = t;
|
|
128
128
|
if (p)
|
|
129
129
|
if (p.parentElement === null)
|
|
@@ -135,20 +135,20 @@ const z = o.memo(
|
|
|
135
135
|
}, T));
|
|
136
136
|
};
|
|
137
137
|
I ? Z.current = window.setTimeout(() => {
|
|
138
|
-
W.current &&
|
|
139
|
-
}, I) :
|
|
138
|
+
W.current && K();
|
|
139
|
+
}, I) : K(), V.current !== r.title && te(A, e, void 0, void 0);
|
|
140
140
|
}, Q = (e) => {
|
|
141
141
|
const t = e.target;
|
|
142
142
|
!se(t) || ne(t) || t === v.current || J(e);
|
|
143
143
|
}, fe = (e) => {
|
|
144
144
|
const t = v.current ? v.current.ownerDocument : document, r = t == null ? void 0 : t.elementFromPoint(e.clientX, e.clientY);
|
|
145
|
-
ne(r) || a || (clearInterval(
|
|
145
|
+
ne(r) || a || (clearInterval(M.current), W.current = !1, b(e));
|
|
146
146
|
}, $ = (e) => v.current === e.nativeEvent.target, me = (e) => {
|
|
147
147
|
const t = $(e);
|
|
148
|
-
(X ? a :
|
|
148
|
+
(X ? a : L.current) && t && b(e);
|
|
149
149
|
}, de = (e) => {
|
|
150
150
|
const t = $(e);
|
|
151
|
-
if ((X ? a :
|
|
151
|
+
if ((X ? a : L.current) && t) {
|
|
152
152
|
b(e);
|
|
153
153
|
return;
|
|
154
154
|
}
|
|
@@ -160,7 +160,7 @@ const z = o.memo(
|
|
|
160
160
|
D.current = e.clientY, P.current = e.clientX;
|
|
161
161
|
}, []);
|
|
162
162
|
o.useEffect(() => (document && document.body.addEventListener("mousemove", j), () => {
|
|
163
|
-
clearTimeout(Z.current), clearInterval(
|
|
163
|
+
clearTimeout(Z.current), clearInterval(M.current), document && document.body.removeEventListener("mousemove", j);
|
|
164
164
|
}), [j]), o.useEffect(() => {
|
|
165
165
|
if (a && E) {
|
|
166
166
|
let e = E, t = "", r = null;
|
|
@@ -174,17 +174,17 @@ const z = o.memo(
|
|
|
174
174
|
t && (r && (r.titleExpando = t, r.title = ""), x(E), N(!0), k(t));
|
|
175
175
|
} else a === !1 && (x(null), N(!1), k(""));
|
|
176
176
|
}, [a, E, y]);
|
|
177
|
-
const
|
|
177
|
+
const O = o.useMemo(
|
|
178
178
|
() => ({
|
|
179
179
|
handleMouseOver: Q,
|
|
180
|
-
|
|
180
|
+
handleMouseLeave: fe,
|
|
181
181
|
handleTargetItemClick: de,
|
|
182
182
|
handleKeyDown: pe,
|
|
183
183
|
props: f
|
|
184
184
|
}),
|
|
185
185
|
[f]
|
|
186
186
|
);
|
|
187
|
-
o.useImperativeHandle(m, () =>
|
|
187
|
+
o.useImperativeHandle(m, () => O, [O]);
|
|
188
188
|
const Ee = ue(), ge = o.useCallback(
|
|
189
189
|
(e) => {
|
|
190
190
|
if (!e)
|
|
@@ -198,7 +198,7 @@ const z = o.memo(
|
|
|
198
198
|
mouseLeft: P.current,
|
|
199
199
|
anchorElement: n,
|
|
200
200
|
position: d,
|
|
201
|
-
target:
|
|
201
|
+
target: O,
|
|
202
202
|
syntheticEvent: null,
|
|
203
203
|
nativeEvent: null
|
|
204
204
|
};
|
|
@@ -207,7 +207,7 @@ const z = o.memo(
|
|
|
207
207
|
t = G(e, u);
|
|
208
208
|
e.style.left = t.left + "px", e.style.top = t.top + "px";
|
|
209
209
|
},
|
|
210
|
-
[s, u, n, d, G,
|
|
210
|
+
[s, u, n, d, G, O]
|
|
211
211
|
), ye = o.useCallback(
|
|
212
212
|
(e) => {
|
|
213
213
|
e && (e.className = q(), d === "auto" && (P.current < window.screen.availWidth / 2 ? e.style.left = F || "25%" : e.style.left = F || "75%"));
|
|
@@ -240,7 +240,7 @@ const z = o.memo(
|
|
|
240
240
|
style: { position: "relative", ...ce }
|
|
241
241
|
},
|
|
242
242
|
/* @__PURE__ */ o.createElement("div", { className: "k-tooltip-content" }, h && o.createElement(h, { title: g, target: u }) || g),
|
|
243
|
-
|
|
243
|
+
w && /* @__PURE__ */ o.createElement("div", { ref: ye })
|
|
244
244
|
))
|
|
245
245
|
),
|
|
246
246
|
B || u.ownerDocument.body
|