You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
11 KiB
21 lines
11 KiB
// All material copyright Esri, All Rights Reserved, unless otherwise specified. |
|
// See https://js.arcgis.com/4.30/esri/copyright.txt for details. |
|
//>>built |
|
define("exports ./componentsUtils ./dom ./floating-ui ./guid ./openCloseComponent ./FloatingArrow".split(" "),function(k,d,l,e,u,m,v){function p(a){const {referenceElement:b}=a;return("string"===typeof b?l.queryElementRoots(a,{id:b}):b)||null}function q(){"undefined"!==typeof customElements&&["calcite-tooltip"].forEach(a=>{switch(a){case "calcite-tooltip":customElements.get(a)||customElements.define(a,r)}})}class w{constructor(){this.registeredElements=new WeakMap;this.registeredShadowRootCounts= |
|
new WeakMap;this.activeTooltip=this.clickedTooltip=this.hoveredTooltip=this.hoverCloseTimeout=this.hoverOpenTimeout=null;this.registeredElementCount=0;this.queryTooltip=a=>{const {registeredElements:b}=this;a=a.find(c=>b.has(c));return b.get(a)};this.keyDownHandler=a=>{if("Escape"===a.key&&!a.defaultPrevented){var {activeTooltip:b}=this;b?.open&&(this.clearHoverTimeout(),this.closeActiveTooltip(),b=p(b),b instanceof Element&&b.contains(a.target)&&a.preventDefault())}};this.pointerMoveHandler=a=>{var b= |
|
a.composedPath();({activeTooltip:a}=this);a?.open&&b.includes(a)?this.clearHoverTimeout():(this.hoveredTooltip=b=this.queryTooltip(b),this.isClosableClickedTooltip(b)||(this.clickedTooltip=null,b?this.openHoveredTooltip(b):a&&this.closeHoveredTooltip()))};this.clickHandler=a=>{this.clickedTooltip=a=this.queryTooltip(a.composedPath());a?.closeOnClick&&(this.toggleTooltip(a,!1),this.clearHoverTimeout())};this.focusInHandler=a=>{this.queryFocusedTooltip(a,!0)};this.focusOutHandler=a=>{this.queryFocusedTooltip(a, |
|
!1)};this.openHoveredTooltip=a=>{this.hoverOpenTimeout=window.setTimeout(()=>{null!==this.hoverOpenTimeout&&(this.clearHoverCloseTimeout(),this.activeTooltip!==this.hoveredTooltip&&(this.closeActiveTooltip(),a===this.hoveredTooltip&&this.toggleTooltip(a,!0)))},this.activeTooltip?0:300)};this.closeHoveredTooltip=()=>{this.hoverCloseTimeout=window.setTimeout(()=>{null!==this.hoverCloseTimeout&&this.closeActiveTooltip()},500)}}registerElement(a,b){this.registeredElementCount++;this.registeredElements.set(a, |
|
b);(a=this.getReferenceElShadowRootNode(a))&&this.registerShadowRoot(a);1===this.registeredElementCount&&this.addListeners()}unregisterElement(a){const b=this.getReferenceElShadowRootNode(a);b&&this.unregisterShadowRoot(b);this.registeredElements.delete(a)&&this.registeredElementCount--;0===this.registeredElementCount&&this.removeListeners()}addShadowListeners(a){a.addEventListener("focusin",this.focusInHandler,{capture:!0});a.addEventListener("focusout",this.focusOutHandler,{capture:!0})}removeShadowListeners(a){a.removeEventListener("focusin", |
|
this.focusInHandler,{capture:!0});a.removeEventListener("focusout",this.focusOutHandler,{capture:!0})}addListeners(){window.addEventListener("keydown",this.keyDownHandler,{capture:!0});window.addEventListener("pointermove",this.pointerMoveHandler,{capture:!0});window.addEventListener("click",this.clickHandler,{capture:!0});window.addEventListener("focusin",this.focusInHandler,{capture:!0});window.addEventListener("focusout",this.focusOutHandler,{capture:!0})}removeListeners(){window.removeEventListener("keydown", |
|
this.keyDownHandler,{capture:!0});window.removeEventListener("pointermove",this.pointerMoveHandler,{capture:!0});window.removeEventListener("click",this.clickHandler,{capture:!0});window.removeEventListener("focusin",this.focusInHandler,{capture:!0});window.removeEventListener("focusout",this.focusOutHandler,{capture:!0})}clearHoverOpenTimeout(){window.clearTimeout(this.hoverOpenTimeout);this.hoverOpenTimeout=null}clearHoverCloseTimeout(){window.clearTimeout(this.hoverCloseTimeout);this.hoverCloseTimeout= |
|
null}clearHoverTimeout(){this.clearHoverOpenTimeout();this.clearHoverCloseTimeout()}closeActiveTooltip(){const {activeTooltip:a}=this;a?.open&&this.toggleTooltip(a,!1)}toggleFocusedTooltip(a,b){this.closeActiveTooltip();b&&this.clearHoverTimeout();this.toggleTooltip(a,b)}toggleTooltip(a,b){this.activeTooltip=(a.open=b)?a:null}queryFocusedTooltip(a,b){(a=this.queryTooltip(a.composedPath()))&&!this.isClosableClickedTooltip(a)&&this.toggleFocusedTooltip(a,b)}isClosableClickedTooltip(a){return a?.closeOnClick&& |
|
a===this.clickedTooltip}registerShadowRoot(a){const {registeredShadowRootCounts:b}=this,c=(b.get(a)??0)+1;1===c&&this.addShadowListeners(a);b.set(a,c)}unregisterShadowRoot(a){const {registeredShadowRootCounts:b}=this,c=b.get(a)-1;0===c&&this.removeShadowListeners(a);b.set(a,c)}getReferenceElShadowRootNode(a){return a instanceof Element?l.getShadowRootNode(a):null}}const t=new w,r=d.proxyCustomElement(class extends d.H{constructor(){super();this.__registerHost();this.__attachShadow();this.calciteTooltipBeforeClose= |
|
d.createEvent(this,"calciteTooltipBeforeClose",6);this.calciteTooltipClose=d.createEvent(this,"calciteTooltipClose",6);this.calciteTooltipBeforeOpen=d.createEvent(this,"calciteTooltipBeforeOpen",6);this.calciteTooltipOpen=d.createEvent(this,"calciteTooltipOpen",6);this.guid=`calcite-tooltip-${u.guid()}`;this.hasLoaded=!1;this.openTransitionProp="opacity";this.setTransitionEl=a=>{this.transitionEl=a};this.setUpReferenceElement=(a=!0)=>{this.removeReferences();this.effectiveReferenceElement=p(this.el); |
|
e.connectFloatingUI(this,this.effectiveReferenceElement,this.el);const {el:b,referenceElement:c,effectiveReferenceElement:f}=this;a&&c&&!f&&console.warn(`${b.tagName}: reference-element id "${c}" was not found.`,{el:b});this.addReferences()};this.getId=()=>this.el.id||this.guid;this.addReferences=()=>{const {effectiveReferenceElement:a}=this;if(a){var b=this.getId();"setAttribute"in a&&a.setAttribute("aria-describedby",b);t.registerElement(a,this.el)}};this.removeReferences=()=>{const {effectiveReferenceElement:a}= |
|
this;a&&("removeAttribute"in a&&a.removeAttribute("aria-describedby"),t.unregisterElement(a))};this.closeOnClick=!1;this.label=void 0;this.offsetDistance=e.defaultOffsetDistance;this.offsetSkidding=0;this.open=!1;this.overlayPositioning="absolute";this.placement="auto";this.effectiveReferenceElement=this.referenceElement=void 0;this.floatingLayout="vertical"}offsetDistanceOffsetHandler(){this.reposition(!0)}offsetSkiddingHandler(){this.reposition(!0)}openHandler(){m.onToggleOpenCloseComponent(this); |
|
this.reposition(!0)}overlayPositioningHandler(){this.reposition(!0)}placementHandler(){this.reposition(!0)}referenceElementHandler(){this.setUpReferenceElement()}connectedCallback(){this.setUpReferenceElement(!0);if(this.open)m.onToggleOpenCloseComponent(this)}async componentWillLoad(){if(this.open)m.onToggleOpenCloseComponent(this)}componentDidLoad(){this.referenceElement&&!this.effectiveReferenceElement&&this.setUpReferenceElement();this.hasLoaded=!0}disconnectedCallback(){this.removeReferences(); |
|
e.disconnectFloatingUI(this,this.effectiveReferenceElement,this.el)}async reposition(a=!1){const {el:b,effectiveReferenceElement:c,placement:f,overlayPositioning:g,offsetDistance:h,offsetSkidding:n,arrowEl:x}=this;return e.reposition(this,{floatingEl:b,referenceEl:c,overlayPositioning:g,placement:f,offsetDistance:h,offsetSkidding:n,arrowEl:x,type:"tooltip"},a)}onBeforeOpen(){this.calciteTooltipBeforeOpen.emit()}onOpen(){this.calciteTooltipOpen.emit()}onBeforeClose(){this.calciteTooltipBeforeClose.emit()}onClose(){this.calciteTooltipClose.emit()}render(){const {effectiveReferenceElement:a, |
|
label:b,open:c,floatingLayout:f}=this,g=a&&c,h=!g;return d.h(d.Host,{key:"d999ea5dc4f62136edbafbe02217aa45e7dfacef","aria-hidden":l.toAriaBoolean(h),"aria-label":b,"aria-live":"polite","calcite-hydrated-hidden":h,id:this.getId(),role:"tooltip"},d.h("div",{key:"60ab1a7b1176940f208031084255642e6443305d",class:{[e.FloatingCSS.animation]:!0,[e.FloatingCSS.animationActive]:g},ref:this.setTransitionEl},d.h(v.FloatingArrow,{key:"fc23703424cfa9fed95c284096874c6f4a308441",floatingLayout:f,ref:n=>this.arrowEl= |
|
n}),d.h("div",{key:"99850fe365391921c1ab4183686038ffd1ce33ea",class:"container"},d.h("slot",{key:"6d8d5323d91366470ee7bc4012e1c4af2af41371"}))))}get el(){return this}static get watchers(){return{offsetDistance:["offsetDistanceOffsetHandler"],offsetSkidding:["offsetSkiddingHandler"],open:["openHandler"],overlayPositioning:["overlayPositioningHandler"],placement:["placementHandler"],referenceElement:["referenceElementHandler"]}}static get style(){return":host{--calcite-floating-ui-z-index:var(--calcite-tooltip-z-index, var(--calcite-z-index-tooltip));display:block;position:absolute;z-index:var(--calcite-floating-ui-z-index)}.calcite-floating-ui-anim{position:relative;transition:var(--calcite-floating-ui-transition);transition-property:transform, visibility, opacity;opacity:0;box-shadow:0 0 16px 0 rgba(0, 0, 0, 0.16);z-index:var(--calcite-z-index);border-radius:0.25rem}:host([data-placement^\x3dbottom]) .calcite-floating-ui-anim{transform:translateY(-5px)}:host([data-placement^\x3dtop]) .calcite-floating-ui-anim{transform:translateY(5px)}:host([data-placement^\x3dleft]) .calcite-floating-ui-anim{transform:translateX(5px)}:host([data-placement^\x3dright]) .calcite-floating-ui-anim{transform:translateX(-5px)}:host([data-placement]) .calcite-floating-ui-anim--active{opacity:1;transform:translate(0)}:host([calcite-hydrated-hidden]){visibility:hidden !important;pointer-events:none}.calcite-floating-ui-arrow{pointer-events:none;position:absolute;z-index:calc(var(--calcite-z-index) * -1);fill:var(--calcite-color-foreground-1)}.calcite-floating-ui-arrow__stroke{stroke:var(--calcite-color-border-3)}.container{position:relative;overflow:hidden;border-radius:0.25rem;padding-block:0.75rem;padding-inline:1rem;font-size:var(--calcite-font-size--2);line-height:1.375;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-text-1);max-inline-size:20rem;max-block-size:20rem;text-align:start}.calcite-floating-ui-anim{border-radius:0.25rem;border-width:1px;border-style:solid;border-color:var(--calcite-color-border-3);background-color:var(--calcite-color-foreground-1)}.arrow::before{outline:1px solid var(--calcite-color-border-3)}:host([hidden]){display:none}[hidden]{display:none}"}}, |
|
[1,"calcite-tooltip",{closeOnClick:[516,"close-on-click"],label:[1],offsetDistance:[514,"offset-distance"],offsetSkidding:[514,"offset-skidding"],open:[516],overlayPositioning:[513,"overlay-positioning"],placement:[513],referenceElement:[1,"reference-element"],effectiveReferenceElement:[32],floatingLayout:[32],reposition:[64]},void 0,{offsetDistance:["offsetDistanceOffsetHandler"],offsetSkidding:["offsetSkiddingHandler"],open:["openHandler"],overlayPositioning:["overlayPositioningHandler"],placement:["placementHandler"], |
|
referenceElement:["referenceElementHandler"]}]);q();k.CalciteTooltip=r;k.defineCustomElement=q;Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})}); |