123456 |
- var __awaiter=this&&this.__awaiter||function(e,t,i,a){function n(e){return e instanceof i?e:new i((function(t){t(e)}))}return new(i||(i=Promise))((function(i,r){function o(e){try{c(a.next(e))}catch(e){r(e)}}function s(e){try{c(a["throw"](e))}catch(e){r(e)}}function c(e){e.done?i(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var i={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},a,n,r,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(o){if(a)throw new TypeError("Generator is already executing.");while(i)try{if(a=1,n&&(r=o[0]&2?n["return"]:o[0]?n["throw"]||((r=n["return"])&&r.call(n),0):n.next)&&!(r=r.call(n,o[1])).done)return r;if(n=0,r)o=[o[0]&2,r.value];switch(o[0]){case 0:case 1:r=o;break;case 4:i.label++;return{value:o[1],done:false};case 5:i.label++;n=o[1];o=[0];continue;case 7:o=i.ops.pop();i.trys.pop();continue;default:if(!(r=i.trys,r=r.length>0&&r[r.length-1])&&(o[0]===6||o[0]===2)){i=0;continue}if(o[0]===3&&(!r||o[1]>r[0]&&o[1]<r[3])){i.label=o[1];break}if(o[0]===6&&i.label<r[1]){i.label=r[1];r=o;break}if(r&&i.label<r[2]){i.label=r[2];i.ops.push(o);break}if(r[2])i.ops.pop();i.trys.pop();continue}o=t.call(e,i)}catch(e){o=[6,e];n=0}finally{a=r=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};
- /*!
- * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
- * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
- * v1.0.0-beta.82
- */import{r as registerInstance,h,H as Host,g as getElement}from"./index-8ece2564.js";import{g as guid}from"./guid-b4461004.js";import{a as defaultOffsetDistance,u as updatePopper,c as createPopper,C as CSS$1}from"./popper-0fd1fd89.js";import{q as queryElementRoots,t as toAriaBoolean}from"./dom-da697a3f.js";var CSS={container:"container",arrow:"arrow"};var TOOLTIP_DELAY_MS=500;var ARIA_DESCRIBED_BY="aria-describedby";var TooltipManager$1=function(){function e(){var e=this;this.registeredElements=new WeakMap;this.hoverTimeouts=new WeakMap;this.registeredElementCount=0;this.queryTooltip=function(t){var i=e.registeredElements;var a=t.find((function(e){return i.has(e)}));return i.get(a)};this.keyDownHandler=function(t){if(t.key==="Escape"){var i=e.activeTooltipEl;if(i){e.clearHoverTimeout(i);e.toggleTooltip(i,false)}}};this.mouseEnterShow=function(t){e.hoverEvent(t,true)};this.mouseLeaveHide=function(t){e.hoverEvent(t,false)};this.clickHandler=function(t){e.clickedTooltip=e.queryTooltip(t.composedPath())};this.focusShow=function(t){e.focusEvent(t,true)};this.blurHide=function(t){e.focusEvent(t,false)};this.hoverToggle=function(t,i){var a=e.hoverTimeouts;a.delete(t);if(i){e.closeExistingTooltip()}e.toggleTooltip(t,i)}}e.prototype.registerElement=function(e,t){this.registeredElementCount++;this.registeredElements.set(e,t);if(this.registeredElementCount===1){this.addListeners()}};e.prototype.unregisterElement=function(e){if(this.registeredElements.delete(e)){this.registeredElementCount--}if(this.registeredElementCount===0){this.removeListeners()}};e.prototype.addListeners=function(){document.addEventListener("keydown",this.keyDownHandler);document.addEventListener("mouseover",this.mouseEnterShow,{capture:true});document.addEventListener("mouseout",this.mouseLeaveHide,{capture:true});document.addEventListener("pointerdown",this.clickHandler,{capture:true});document.addEventListener("focusin",this.focusShow),{capture:true};document.addEventListener("focusout",this.blurHide,{capture:true})};e.prototype.removeListeners=function(){document.removeEventListener("keydown",this.keyDownHandler);document.removeEventListener("mouseover",this.mouseEnterShow,{capture:true});document.removeEventListener("mouseout",this.mouseLeaveHide,{capture:true});document.removeEventListener("pointerdown",this.clickHandler,{capture:true});document.removeEventListener("focusin",this.focusShow,{capture:true});document.removeEventListener("focusout",this.blurHide,{capture:true})};e.prototype.clearHoverTimeout=function(e){var t=this.hoverTimeouts;if(t.has(e)){window.clearTimeout(t.get(e));t.delete(e)}};e.prototype.closeExistingTooltip=function(){var e=this.activeTooltipEl;if(e){this.toggleTooltip(e,false)}};e.prototype.focusTooltip=function(e,t){this.closeExistingTooltip();if(t){this.clearHoverTimeout(e)}this.toggleTooltip(e,t)};e.prototype.toggleTooltip=function(e,t){e.open=t;if(t){this.activeTooltipEl=e}};e.prototype.hoverTooltip=function(e,t){var i=this;this.clearHoverTimeout(e);var a=this.hoverTimeouts;var n=window.setTimeout((function(){return i.hoverToggle(e,t)}),TOOLTIP_DELAY_MS);a.set(e,n)};e.prototype.activeTooltipHover=function(e){var t=this,i=t.activeTooltipEl,a=t.hoverTimeouts;var n=e.type;if(!i){return}if(n==="mouseover"&&e.composedPath().includes(i)){this.clearHoverTimeout(i)}else if(n==="mouseout"&&!a.has(i)){this.hoverTooltip(i,false)}};e.prototype.hoverEvent=function(e,t){var i=this.queryTooltip(e.composedPath());this.activeTooltipHover(e);if(!i){return}this.hoverTooltip(i,t)};e.prototype.focusEvent=function(e,t){var i=this.queryTooltip(e.composedPath());if(!i||i===this.clickedTooltip){this.clickedTooltip=null;return}this.focusTooltip(i,t)};return e}();var tooltipCss='@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{display:block;position:absolute;z-index:999;-webkit-transform:scale(0);transform:scale(0)}.calcite-popper-anim{position:relative;z-index:1;-webkit-transition:var(--calcite-popper-transition);transition:var(--calcite-popper-transition);visibility:hidden;-webkit-transition-property:visibility, opacity, -webkit-transform;transition-property:visibility, opacity, -webkit-transform;transition-property:transform, visibility, opacity;transition-property:transform, visibility, opacity, -webkit-transform;opacity:0;-webkit-box-shadow:0 0 16px 0 rgba(0, 0, 0, 0.16);box-shadow:0 0 16px 0 rgba(0, 0, 0, 0.16);border-radius:0.25rem}:host([data-popper-placement^=bottom]) .calcite-popper-anim{-webkit-transform:translateY(-5px);transform:translateY(-5px)}:host([data-popper-placement^=top]) .calcite-popper-anim{-webkit-transform:translateY(5px);transform:translateY(5px)}:host([data-popper-placement^=left]) .calcite-popper-anim{-webkit-transform:translateX(5px);transform:translateX(5px)}:host([data-popper-placement^=right]) .calcite-popper-anim{-webkit-transform:translateX(-5px);transform:translateX(-5px)}:host([data-popper-placement]) .calcite-popper-anim--active{opacity:1;visibility:visible;-webkit-transform:translate(0);transform:translate(0)}:host([data-popper-placement][data-popper-reference-hidden]){pointer-events:none;opacity:0}.arrow,.arrow::before{position:absolute;width:8px;height:8px;z-index:-1}.arrow::before{content:"";--tw-shadow:0 4px 8px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04);--tw-shadow-colored:0 4px 8px -1px var(--tw-shadow-color), 0 2px 4px -1px var(--tw-shadow-color);-webkit-box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);-webkit-transform:rotate(45deg);transform:rotate(45deg);background:var(--calcite-ui-foreground-1)}:host([data-popper-placement^=top]) .arrow{bottom:-4px}:host([data-popper-placement^=bottom]) .arrow{top:-4px}:host([data-popper-placement^=left]) .arrow{right:-4px}:host([data-popper-placement^=right]) .arrow{left:-4px}.container{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:start;justify-content:flex-start;overflow:hidden;border-radius:0.25rem;background-color:var(--calcite-ui-foreground-1);padding-top:0.75rem;padding-bottom:0.75rem;padding-left:1rem;padding-right:1rem;font-size:var(--calcite-font-size--2);line-height:1.375;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-ui-text-1);max-width:20rem;max-height:20rem}.calcite-popper-anim{border-radius:0.25rem;border-width:1px;border-style:solid;border-color:var(--calcite-ui-border-3);background-color:var(--calcite-ui-foreground-1)}.arrow::before{outline:1px solid var(--calcite-ui-border-3)}';var manager=new TooltipManager$1;var Tooltip=function(){function e(e){var t=this;registerInstance(this,e);this.offsetDistance=defaultOffsetDistance;this.offsetSkidding=0;this.open=false;this.overlayPositioning="absolute";this.placement="auto";this.guid="calcite-tooltip-".concat(guid());this.setUpReferenceElement=function(){t.removeReferences();t.effectiveReferenceElement=t.getReferenceElement();var e=t,i=e.el,a=e.referenceElement,n=e.effectiveReferenceElement;if(a&&!n){console.warn("".concat(i.tagName,': reference-element id "').concat(a,'" was not found.'),{el:i})}t.addReferences();t.createPopper()};this.getId=function(){return t.el.id||t.guid};this.addReferences=function(){var e=t.effectiveReferenceElement;if(!e){return}var i=t.getId();e.setAttribute(ARIA_DESCRIBED_BY,i);manager.registerElement(e,t.el)};this.removeReferences=function(){var e=t.effectiveReferenceElement;if(!e){return}e.removeAttribute(ARIA_DESCRIBED_BY);manager.unregisterElement(e)}}e.prototype.offsetDistanceOffsetHandler=function(){this.reposition()};e.prototype.offsetSkiddingHandler=function(){this.reposition()};e.prototype.openHandler=function(){this.reposition()};e.prototype.placementHandler=function(){this.reposition()};e.prototype.referenceElementHandler=function(){this.setUpReferenceElement()};e.prototype.componentWillLoad=function(){this.setUpReferenceElement()};e.prototype.componentDidLoad=function(){this.reposition()};e.prototype.disconnectedCallback=function(){this.removeReferences();this.destroyPopper()};e.prototype.reposition=function(){return __awaiter(this,void 0,void 0,(function(){var e,t,i,a,n,r;return __generator(this,(function(o){switch(o.label){case 0:e=this,t=e.popper,i=e.el,a=e.placement;n=this.getModifiers();if(!t)return[3,2];return[4,updatePopper({el:i,modifiers:n,placement:a,popper:t})];case 1:r=o.sent();return[3,3];case 2:r=this.createPopper();o.label=3;case 3:r;return[2]}}))}))};e.prototype.getReferenceElement=function(){var e=this,t=e.referenceElement,i=e.el;return(typeof t==="string"?queryElementRoots(i,{id:t}):t)||null};e.prototype.getModifiers=function(){var e=this,t=e.arrowEl,i=e.offsetDistance,a=e.offsetSkidding;var n={name:"arrow",enabled:true,options:{element:t}};var r={name:"offset",enabled:true,options:{offset:[a,i]}};var o={name:"eventListeners",enabled:this.open};return[n,r,o]};e.prototype.createPopper=function(){this.destroyPopper();var e=this,t=e.el,i=e.placement,a=e.effectiveReferenceElement,n=e.overlayPositioning;var r=this.getModifiers();this.popper=createPopper({el:t,modifiers:r,placement:i,overlayPositioning:n,referenceEl:a})};e.prototype.destroyPopper=function(){var e=this.popper;if(e){e.destroy()}this.popper=null};e.prototype.render=function(){var e;var t=this;var i=this,a=i.effectiveReferenceElement,n=i.label,r=i.open;var o=a&&r;var s=!o;return h(Host,{"aria-hidden":toAriaBoolean(s),"aria-label":n,"calcite-hydrated-hidden":s,id:this.getId(),role:"tooltip"},h("div",{class:(e={},e[CSS$1.animation]=true,e[CSS$1.animationActive]=o,e)},h("div",{class:CSS.arrow,ref:function(e){return t.arrowEl=e}}),h("div",{class:CSS.container},h("slot",null))))};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{offsetDistance:["offsetDistanceOffsetHandler"],offsetSkidding:["offsetSkiddingHandler"],open:["openHandler"],placement:["placementHandler"],referenceElement:["referenceElementHandler"]}},enumerable:false,configurable:true});return e}();Tooltip.style=tooltipCss;var tooltipManagerCss="@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{position:relative;display:block}";var TooltipManager=function(){function e(e){registerInstance(this,e);this.selector="[data-calcite-tooltip-reference]"}e.prototype.render=function(){return h("slot",null)};return e}();TooltipManager.style=tooltipManagerCss;export{Tooltip as calcite_tooltip,TooltipManager as calcite_tooltip_manager};
|