UNPKG

@ebay/ui-core-react

Version:

Skin components build off React

2 lines (1 loc) 1.73 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("../tslib.es6-C4EgNkz1.js"),t=require("react"),c=require("../utils-C9NL3q0j.js"),o=require("../use-tooltip-mcJqLqOg.js");require("classnames");require("../icon-C-bWGO-9.js");require("../array.polyfill.flat-5BAolFdk.js");const T=()=>null,E=()=>null,_=s=>{var{className:y,pointer:d,overlayStyle:b,noHover:l,onFocus:h=()=>{},onBlur:O=()=>{},onMouseEnter:f=()=>{},onMouseLeave:m=()=>{},onExpand:v,onCollapse:C,children:r}=s,M=S.__rest(s,["className","pointer","overlayStyle","noHover","onFocus","onBlur","onMouseEnter","onMouseLeave","onExpand","onCollapse","children"]);const{isExpanded:R,expandTooltip:i,collapseTooltip:a}=o.useTooltip({onCollapse:C,onExpand:v}),n=t.useRef(null),F=e=>{f(e),l||(clearTimeout(n.current),i())},I=e=>{m(e),l||(clearTimeout(n.current),n.current=setTimeout(()=>{a()},300))},L=e=>{h(e),i()},N=e=>{O(e),a()},p=c.findComponent(r,T),u=c.findComponent(r,E);if(!u)throw new Error("EbayTooltip: Please use a EbayTooltipHost that defines the host of the tooltip");if(!p)throw new Error("EbayTooltip: Please use a EbayTooltipContent that defines the content of the tooltip");return t.createElement(o.Tooltip,Object.assign({},M,{className:y,type:"tooltip",isExpanded:R,onFocus:L,onBlur:N,onMouseEnter:F,onMouseLeave:I}),t.createElement(o.TooltipHost,Object.assign({},u.props)),t.createElement(o.TooltipContent,Object.assign({},p.props,{type:"tooltip",style:b,pointer:d})))};exports.DEFAULT_POINTER_DIRECTION=o.DEFAULT_POINTER_DIRECTION;exports.POINTER_STYLES=o.POINTER_STYLES;exports.Tooltip=o.Tooltip;exports.TooltipFooter=o.TooltipFooter;exports.EbayTooltip=_;exports.EbayTooltipContent=T;exports.EbayTooltipHost=E;