UNPKG

@esri/calcite-components

Version:

Web Components for Esri's Calcite Design System.

1 lines • 25 kB
import{g as getElementDir}from"./dom-466af3c7.js";var top="top";var bottom="bottom";var right="right";var left="left";var auto="auto";var basePlacements=[top,bottom,right,left];var start="start";var end="end";var clippingParents="clippingParents";var viewport="viewport";var popper="popper";var reference="reference";var variationPlacements=basePlacements.reduce((function(e,t){return e.concat([t+"-"+start,t+"-"+end])}),[]);var placements=[].concat(basePlacements,[auto]).reduce((function(e,t){return e.concat([t,t+"-"+start,t+"-"+end])}),[]);var beforeRead="beforeRead";var read="read";var afterRead="afterRead";var beforeMain="beforeMain";var main="main";var afterMain="afterMain";var beforeWrite="beforeWrite";var write="write";var afterWrite="afterWrite";var modifierPhases=[beforeRead,read,afterRead,beforeMain,main,afterMain,beforeWrite,write,afterWrite];function getNodeName(e){return e?(e.nodeName||"").toLowerCase():null}function getWindow(e){if(e==null){return window}if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t?t.defaultView||window:window}return e}function isElement(e){var t=getWindow(e).Element;return e instanceof t||e instanceof Element}function isHTMLElement(e){var t=getWindow(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function isShadowRoot(e){if(typeof ShadowRoot==="undefined"){return false}var t=getWindow(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function applyStyles(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var r=t.styles[e]||{};var n=t.attributes[e]||{};var a=t.elements[e];if(!isHTMLElement(a)||!getNodeName(a)){return}Object.assign(a.style,r);Object.keys(n).forEach((function(e){var t=n[e];if(t===false){a.removeAttribute(e)}else{a.setAttribute(e,t===true?"":t)}}))}))}function effect$2(e){var t=e.state;var r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,r.popper);t.styles=r;if(t.elements.arrow){Object.assign(t.elements.arrow.style,r.arrow)}return function(){Object.keys(t.elements).forEach((function(e){var n=t.elements[e];var a=t.attributes[e]||{};var o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:r[e]);var i=o.reduce((function(e,t){e[t]="";return e}),{});if(!isHTMLElement(n)||!getNodeName(n)){return}Object.assign(n.style,i);Object.keys(a).forEach((function(e){n.removeAttribute(e)}))}))}}var applyStyles$1={name:"applyStyles",enabled:true,phase:"write",fn:applyStyles,effect:effect$2,requires:["computeStyles"]};function getBasePlacement(e){return e.split("-")[0]}function getBoundingClientRect(e){var t=e.getBoundingClientRect();return{width:t.width,height:t.height,top:t.top,right:t.right,bottom:t.bottom,left:t.left,x:t.left,y:t.top}}function getLayoutRect(e){var t=getBoundingClientRect(e);var r=e.offsetWidth;var n=e.offsetHeight;if(Math.abs(t.width-r)<=1){r=t.width}if(Math.abs(t.height-n)<=1){n=t.height}return{x:e.offsetLeft,y:e.offsetTop,width:r,height:n}}function contains(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t)){return true}else if(r&&isShadowRoot(r)){var n=t;do{if(n&&e.isSameNode(n)){return true}n=n.parentNode||n.host}while(n)}return false}function getComputedStyle(e){return getWindow(e).getComputedStyle(e)}function isTableElement(e){return["table","td","th"].indexOf(getNodeName(e))>=0}function getDocumentElement(e){return((isElement(e)?e.ownerDocument:e.document)||window.document).documentElement}function getParentNode(e){if(getNodeName(e)==="html"){return e}return e.assignedSlot||e.parentNode||(isShadowRoot(e)?e.host:null)||getDocumentElement(e)}function getTrueOffsetParent(e){if(!isHTMLElement(e)||getComputedStyle(e).position==="fixed"){return null}return e.offsetParent}function getContainingBlock(e){var t=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1;var r=navigator.userAgent.indexOf("Trident")!==-1;if(r&&isHTMLElement(e)){var n=getComputedStyle(e);if(n.position==="fixed"){return null}}var a=getParentNode(e);while(isHTMLElement(a)&&["html","body"].indexOf(getNodeName(a))<0){var o=getComputedStyle(a);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||t&&o.willChange==="filter"||t&&o.filter&&o.filter!=="none"){return a}else{a=a.parentNode}}return null}function getOffsetParent(e){var t=getWindow(e);var r=getTrueOffsetParent(e);while(r&&isTableElement(r)&&getComputedStyle(r).position==="static"){r=getTrueOffsetParent(r)}if(r&&(getNodeName(r)==="html"||getNodeName(r)==="body"&&getComputedStyle(r).position==="static")){return t}return r||getContainingBlock(e)||t}function getMainAxisFromPlacement(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}var max=Math.max;var min=Math.min;var round=Math.round;function within(e,t,r){return max(e,min(t,r))}function getFreshSideObject(){return{top:0,right:0,bottom:0,left:0}}function mergePaddingObject(e){return Object.assign({},getFreshSideObject(),e)}function expandToHashMap(e,t){return t.reduce((function(t,r){t[r]=e;return t}),{})}var toPaddingObject=function e(t,r){t=typeof t==="function"?t(Object.assign({},r.rects,{placement:r.placement})):t;return mergePaddingObject(typeof t!=="number"?t:expandToHashMap(t,basePlacements))};function arrow(e){var t;var r=e.state,n=e.name,a=e.options;var o=r.elements.arrow;var i=r.modifiersData.popperOffsets;var s=getBasePlacement(r.placement);var f=getMainAxisFromPlacement(s);var l=[left,right].indexOf(s)>=0;var c=l?"height":"width";if(!o||!i){return}var p=toPaddingObject(a.padding,r);var u=getLayoutRect(o);var d=f==="y"?top:left;var v=f==="y"?bottom:right;var m=r.rects.reference[c]+r.rects.reference[f]-i[f]-r.rects.popper[c];var g=i[f]-r.rects.reference[f];var h=getOffsetParent(o);var y=h?f==="y"?h.clientHeight||0:h.clientWidth||0:0;var b=m/2-g/2;var w=p[d];var O=y-u[c]-p[v];var P=y/2-u[c]/2+b;var x=within(w,P,O);var S=f;r.modifiersData[n]=(t={},t[S]=x,t.centerOffset=x-P,t)}function effect$1(e){var t=e.state,r=e.options;var n=r.element,a=n===void 0?"[data-popper-arrow]":n;if(a==null){return}if(typeof a==="string"){a=t.elements.popper.querySelector(a);if(!a){return}}if(!contains(t.elements.popper,a)){return}t.elements.arrow=a}var arrow$1={name:"arrow",enabled:true,phase:"main",fn:arrow,effect:effect$1,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};var unsetSides={top:"auto",right:"auto",bottom:"auto",left:"auto"};function roundOffsetsByDPR(e){var t=e.x,r=e.y;var n=window;var a=n.devicePixelRatio||1;return{x:round(round(t*a)/a)||0,y:round(round(r*a)/a)||0}}function mapToStyles(e){var t;var r=e.popper,n=e.popperRect,a=e.placement,o=e.offsets,i=e.position,s=e.gpuAcceleration,f=e.adaptive,l=e.roundOffsets;var c=l===true?roundOffsetsByDPR(o):typeof l==="function"?l(o):o,p=c.x,u=p===void 0?0:p,d=c.y,v=d===void 0?0:d;var m=o.hasOwnProperty("x");var g=o.hasOwnProperty("y");var h=left;var y=top;var b=window;if(f){var w=getOffsetParent(r);var O="clientHeight";var P="clientWidth";if(w===getWindow(r)){w=getDocumentElement(r);if(getComputedStyle(w).position!=="static"){O="scrollHeight";P="scrollWidth"}}w=w;if(a===top){y=bottom;v-=w[O]-n.height;v*=s?1:-1}if(a===left){h=right;u-=w[P]-n.width;u*=s?1:-1}}var x=Object.assign({position:i},f&&unsetSides);if(s){var S;return Object.assign({},x,(S={},S[y]=g?"0":"",S[h]=m?"0":"",S.transform=(b.devicePixelRatio||1)<2?"translate("+u+"px, "+v+"px)":"translate3d("+u+"px, "+v+"px, 0)",S))}return Object.assign({},x,(t={},t[y]=g?v+"px":"",t[h]=m?u+"px":"",t.transform="",t))}function computeStyles(e){var t=e.state,r=e.options;var n=r.gpuAcceleration,a=n===void 0?true:n,o=r.adaptive,i=o===void 0?true:o,s=r.roundOffsets,f=s===void 0?true:s;var l={placement:getBasePlacement(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:a};if(t.modifiersData.popperOffsets!=null){t.styles.popper=Object.assign({},t.styles.popper,mapToStyles(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:i,roundOffsets:f})))}if(t.modifiersData.arrow!=null){t.styles.arrow=Object.assign({},t.styles.arrow,mapToStyles(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:false,roundOffsets:f})))}t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var computeStyles$1={name:"computeStyles",enabled:true,phase:"beforeWrite",fn:computeStyles,data:{}};var passive={passive:true};function effect(e){var t=e.state,r=e.instance,n=e.options;var a=n.scroll,o=a===void 0?true:a,i=n.resize,s=i===void 0?true:i;var f=getWindow(t.elements.popper);var l=[].concat(t.scrollParents.reference,t.scrollParents.popper);if(o){l.forEach((function(e){e.addEventListener("scroll",r.update,passive)}))}if(s){f.addEventListener("resize",r.update,passive)}return function(){if(o){l.forEach((function(e){e.removeEventListener("scroll",r.update,passive)}))}if(s){f.removeEventListener("resize",r.update,passive)}}}var eventListeners={name:"eventListeners",enabled:true,phase:"write",fn:function e(){},effect:effect,data:{}};var hash$1={left:"right",right:"left",bottom:"top",top:"bottom"};function getOppositePlacement(e){return e.replace(/left|right|bottom|top/g,(function(e){return hash$1[e]}))}var hash={start:"end",end:"start"};function getOppositeVariationPlacement(e){return e.replace(/start|end/g,(function(e){return hash[e]}))}function getWindowScroll(e){var t=getWindow(e);var r=t.pageXOffset;var n=t.pageYOffset;return{scrollLeft:r,scrollTop:n}}function getWindowScrollBarX(e){return getBoundingClientRect(getDocumentElement(e)).left+getWindowScroll(e).scrollLeft}function getViewportRect(e){var t=getWindow(e);var r=getDocumentElement(e);var n=t.visualViewport;var a=r.clientWidth;var o=r.clientHeight;var i=0;var s=0;if(n){a=n.width;o=n.height;if(!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)){i=n.offsetLeft;s=n.offsetTop}}return{width:a,height:o,x:i+getWindowScrollBarX(e),y:s}}function getDocumentRect(e){var t;var r=getDocumentElement(e);var n=getWindowScroll(e);var a=(t=e.ownerDocument)==null?void 0:t.body;var o=max(r.scrollWidth,r.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0);var i=max(r.scrollHeight,r.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0);var s=-n.scrollLeft+getWindowScrollBarX(e);var f=-n.scrollTop;if(getComputedStyle(a||r).direction==="rtl"){s+=max(r.clientWidth,a?a.clientWidth:0)-o}return{width:o,height:i,x:s,y:f}}function isScrollParent(e){var t=getComputedStyle(e),r=t.overflow,n=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+a+n)}function getScrollParent(e){if(["html","body","#document"].indexOf(getNodeName(e))>=0){return e.ownerDocument.body}if(isHTMLElement(e)&&isScrollParent(e)){return e}return getScrollParent(getParentNode(e))}function listScrollParents(e,t){var r;if(t===void 0){t=[]}var n=getScrollParent(e);var a=n===((r=e.ownerDocument)==null?void 0:r.body);var o=getWindow(n);var i=a?[o].concat(o.visualViewport||[],isScrollParent(n)?n:[]):n;var s=t.concat(i);return a?s:s.concat(listScrollParents(getParentNode(i)))}function rectToClientRect(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function getInnerBoundingClientRect(e){var t=getBoundingClientRect(e);t.top=t.top+e.clientTop;t.left=t.left+e.clientLeft;t.bottom=t.top+e.clientHeight;t.right=t.left+e.clientWidth;t.width=e.clientWidth;t.height=e.clientHeight;t.x=t.left;t.y=t.top;return t}function getClientRectFromMixedType(e,t){return t===viewport?rectToClientRect(getViewportRect(e)):isHTMLElement(t)?getInnerBoundingClientRect(t):rectToClientRect(getDocumentRect(getDocumentElement(e)))}function getClippingParents(e){var t=listScrollParents(getParentNode(e));var r=["absolute","fixed"].indexOf(getComputedStyle(e).position)>=0;var n=r&&isHTMLElement(e)?getOffsetParent(e):e;if(!isElement(n)){return[]}return t.filter((function(e){return isElement(e)&&contains(e,n)&&getNodeName(e)!=="body"}))}function getClippingRect(e,t,r){var n=t==="clippingParents"?getClippingParents(e):[].concat(t);var a=[].concat(n,[r]);var o=a[0];var i=a.reduce((function(t,r){var n=getClientRectFromMixedType(e,r);t.top=max(n.top,t.top);t.right=min(n.right,t.right);t.bottom=min(n.bottom,t.bottom);t.left=max(n.left,t.left);return t}),getClientRectFromMixedType(e,o));i.width=i.right-i.left;i.height=i.bottom-i.top;i.x=i.left;i.y=i.top;return i}function getVariation(e){return e.split("-")[1]}function computeOffsets(e){var t=e.reference,r=e.element,n=e.placement;var a=n?getBasePlacement(n):null;var o=n?getVariation(n):null;var i=t.x+t.width/2-r.width/2;var s=t.y+t.height/2-r.height/2;var f;switch(a){case top:f={x:i,y:t.y-r.height};break;case bottom:f={x:i,y:t.y+t.height};break;case right:f={x:t.x+t.width,y:s};break;case left:f={x:t.x-r.width,y:s};break;default:f={x:t.x,y:t.y}}var l=a?getMainAxisFromPlacement(a):null;if(l!=null){var c=l==="y"?"height":"width";switch(o){case start:f[l]=f[l]-(t[c]/2-r[c]/2);break;case end:f[l]=f[l]+(t[c]/2-r[c]/2);break}}return f}function detectOverflow(e,t){if(t===void 0){t={}}var r=t,n=r.placement,a=n===void 0?e.placement:n,o=r.boundary,i=o===void 0?clippingParents:o,s=r.rootBoundary,f=s===void 0?viewport:s,l=r.elementContext,c=l===void 0?popper:l,p=r.altBoundary,u=p===void 0?false:p,d=r.padding,v=d===void 0?0:d;var m=mergePaddingObject(typeof v!=="number"?v:expandToHashMap(v,basePlacements));var g=c===popper?reference:popper;var h=e.elements.reference;var y=e.rects.popper;var b=e.elements[u?g:c];var w=getClippingRect(isElement(b)?b:b.contextElement||getDocumentElement(e.elements.popper),i,f);var O=getBoundingClientRect(h);var P=computeOffsets({reference:O,element:y,strategy:"absolute",placement:a});var x=rectToClientRect(Object.assign({},y,P));var S=c===popper?x:O;var E={top:w.top-S.top+m.top,bottom:S.bottom-w.bottom+m.bottom,left:w.left-S.left+m.left,right:S.right-w.right+m.right};var M=e.modifiersData.offset;if(c===popper&&M){var T=M[a];Object.keys(E).forEach((function(e){var t=[right,bottom].indexOf(e)>=0?1:-1;var r=[top,bottom].indexOf(e)>=0?"y":"x";E[e]+=T[r]*t}))}return E}function computeAutoPlacement(e,t){if(t===void 0){t={}}var r=t,n=r.placement,a=r.boundary,o=r.rootBoundary,i=r.padding,s=r.flipVariations,f=r.allowedAutoPlacements,l=f===void 0?placements:f;var c=getVariation(n);var p=c?s?variationPlacements:variationPlacements.filter((function(e){return getVariation(e)===c})):basePlacements;var u=p.filter((function(e){return l.indexOf(e)>=0}));if(u.length===0){u=p}var d=u.reduce((function(t,r){t[r]=detectOverflow(e,{placement:r,boundary:a,rootBoundary:o,padding:i})[getBasePlacement(r)];return t}),{});return Object.keys(d).sort((function(e,t){return d[e]-d[t]}))}function getExpandedFallbackPlacements(e){if(getBasePlacement(e)===auto){return[]}var t=getOppositePlacement(e);return[getOppositeVariationPlacement(e),t,getOppositeVariationPlacement(t)]}function flip(e){var t=e.state,r=e.options,n=e.name;if(t.modifiersData[n]._skip){return}var a=r.mainAxis,o=a===void 0?true:a,i=r.altAxis,s=i===void 0?true:i,f=r.fallbackPlacements,l=r.padding,c=r.boundary,p=r.rootBoundary,u=r.altBoundary,d=r.flipVariations,v=d===void 0?true:d,m=r.allowedAutoPlacements;var g=t.options.placement;var h=getBasePlacement(g);var y=h===g;var b=f||(y||!v?[getOppositePlacement(g)]:getExpandedFallbackPlacements(g));var w=[g].concat(b).reduce((function(e,r){return e.concat(getBasePlacement(r)===auto?computeAutoPlacement(t,{placement:r,boundary:c,rootBoundary:p,padding:l,flipVariations:v,allowedAutoPlacements:m}):r)}),[]);var O=t.rects.reference;var P=t.rects.popper;var x=new Map;var S=true;var E=w[0];for(var M=0;M<w.length;M++){var T=w[M];var R=getBasePlacement(T);var C=getVariation(T)===start;var D=[top,bottom].indexOf(R)>=0;var B=D?"width":"height";var L=detectOverflow(t,{placement:T,boundary:c,rootBoundary:p,altBoundary:u,padding:l});var j=D?C?right:left:C?bottom:top;if(O[B]>P[B]){j=getOppositePlacement(j)}var N=getOppositePlacement(j);var W=[];if(o){W.push(L[R]<=0)}if(s){W.push(L[j]<=0,L[N]<=0)}if(W.every((function(e){return e}))){E=T;S=false;break}x.set(T,W)}if(S){var A=v?3:1;var H=function e(t){var r=w.find((function(e){var r=x.get(e);if(r){return r.slice(0,t).every((function(e){return e}))}}));if(r){E=r;return"break"}};for(var k=A;k>0;k--){var $=H(k);if($==="break")break}}if(t.placement!==E){t.modifiersData[n]._skip=true;t.placement=E;t.reset=true}}var flip$1={name:"flip",enabled:true,phase:"main",fn:flip,requiresIfExists:["offset"],data:{_skip:false}};function getSideOffsets(e,t,r){if(r===void 0){r={x:0,y:0}}return{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}function isAnySideFullyClipped(e){return[top,right,bottom,left].some((function(t){return e[t]>=0}))}function hide(e){var t=e.state,r=e.name;var n=t.rects.reference;var a=t.rects.popper;var o=t.modifiersData.preventOverflow;var i=detectOverflow(t,{elementContext:"reference"});var s=detectOverflow(t,{altBoundary:true});var f=getSideOffsets(i,n);var l=getSideOffsets(s,a,o);var c=isAnySideFullyClipped(f);var p=isAnySideFullyClipped(l);t.modifiersData[r]={referenceClippingOffsets:f,popperEscapeOffsets:l,isReferenceHidden:c,hasPopperEscaped:p};t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":p})}var hide$1={name:"hide",enabled:true,phase:"main",requiresIfExists:["preventOverflow"],fn:hide};function distanceAndSkiddingToXY(e,t,r){var n=getBasePlacement(e);var a=[left,top].indexOf(n)>=0?-1:1;var o=typeof r==="function"?r(Object.assign({},t,{placement:e})):r,i=o[0],s=o[1];i=i||0;s=(s||0)*a;return[left,right].indexOf(n)>=0?{x:s,y:i}:{x:i,y:s}}function offset(e){var t=e.state,r=e.options,n=e.name;var a=r.offset,o=a===void 0?[0,0]:a;var i=placements.reduce((function(e,r){e[r]=distanceAndSkiddingToXY(r,t.rects,o);return e}),{});var s=i[t.placement],f=s.x,l=s.y;if(t.modifiersData.popperOffsets!=null){t.modifiersData.popperOffsets.x+=f;t.modifiersData.popperOffsets.y+=l}t.modifiersData[n]=i}var offset$1={name:"offset",enabled:true,phase:"main",requires:["popperOffsets"],fn:offset};function popperOffsets(e){var t=e.state,r=e.name;t.modifiersData[r]=computeOffsets({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}var popperOffsets$1={name:"popperOffsets",enabled:true,phase:"read",fn:popperOffsets,data:{}};function getAltAxis(e){return e==="x"?"y":"x"}function preventOverflow(e){var t=e.state,r=e.options,n=e.name;var a=r.mainAxis,o=a===void 0?true:a,i=r.altAxis,s=i===void 0?false:i,f=r.boundary,l=r.rootBoundary,c=r.altBoundary,p=r.padding,u=r.tether,d=u===void 0?true:u,v=r.tetherOffset,m=v===void 0?0:v;var g=detectOverflow(t,{boundary:f,rootBoundary:l,padding:p,altBoundary:c});var h=getBasePlacement(t.placement);var y=getVariation(t.placement);var b=!y;var w=getMainAxisFromPlacement(h);var O=getAltAxis(w);var P=t.modifiersData.popperOffsets;var x=t.rects.reference;var S=t.rects.popper;var E=typeof m==="function"?m(Object.assign({},t.rects,{placement:t.placement})):m;var M={x:0,y:0};if(!P){return}if(o||s){var T=w==="y"?top:left;var R=w==="y"?bottom:right;var C=w==="y"?"height":"width";var D=P[w];var B=P[w]+g[T];var L=P[w]-g[R];var j=d?-S[C]/2:0;var N=y===start?x[C]:S[C];var W=y===start?-S[C]:-x[C];var A=t.elements.arrow;var H=d&&A?getLayoutRect(A):{width:0,height:0};var k=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:getFreshSideObject();var $=k[T];var F=k[R];var V=within(0,x[C],H[C]);var q=b?x[C]/2-j-V-$-E:N-V-$-E;var I=b?-x[C]/2+j+V+F+E:W+V+F+E;var X=t.elements.arrow&&getOffsetParent(t.elements.arrow);var U=X?w==="y"?X.clientTop||0:X.clientLeft||0:0;var z=t.modifiersData.offset?t.modifiersData.offset[t.placement][w]:0;var _=P[w]+q-z-U;var Y=P[w]+I-z;if(o){var G=within(d?min(B,_):B,D,d?max(L,Y):L);P[w]=G;M[w]=G-D}if(s){var J=w==="x"?top:left;var K=w==="x"?bottom:right;var Q=P[O];var Z=Q+g[J];var ee=Q-g[K];var te=within(d?min(Z,_):Z,Q,d?max(ee,Y):ee);P[O]=te;M[O]=te-Q}}t.modifiersData[n]=M}var preventOverflow$1={name:"preventOverflow",enabled:true,phase:"main",fn:preventOverflow,requiresIfExists:["offset"]};function getHTMLElementScroll(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function getNodeScroll(e){if(e===getWindow(e)||!isHTMLElement(e)){return getWindowScroll(e)}else{return getHTMLElementScroll(e)}}function getCompositeRect(e,t,r){if(r===void 0){r=false}var n=getDocumentElement(t);var a=getBoundingClientRect(e);var o=isHTMLElement(t);var i={scrollLeft:0,scrollTop:0};var s={x:0,y:0};if(o||!o&&!r){if(getNodeName(t)!=="body"||isScrollParent(n)){i=getNodeScroll(t)}if(isHTMLElement(t)){s=getBoundingClientRect(t);s.x+=t.clientLeft;s.y+=t.clientTop}else if(n){s.x=getWindowScrollBarX(n)}}return{x:a.left+i.scrollLeft-s.x,y:a.top+i.scrollTop-s.y,width:a.width,height:a.height}}function order(e){var t=new Map;var r=new Set;var n=[];e.forEach((function(e){t.set(e.name,e)}));function a(e){r.add(e.name);var o=[].concat(e.requires||[],e.requiresIfExists||[]);o.forEach((function(e){if(!r.has(e)){var n=t.get(e);if(n){a(n)}}}));n.push(e)}e.forEach((function(e){if(!r.has(e.name)){a(e)}}));return n}function orderModifiers(e){var t=order(e);return modifierPhases.reduce((function(e,r){return e.concat(t.filter((function(e){return e.phase===r})))}),[])}function debounce(e){var t;return function(){if(!t){t=new Promise((function(r){Promise.resolve().then((function(){t=undefined;r(e())}))}))}return t}}function mergeByName(e){var t=e.reduce((function(e,t){var r=e[t.name];e[t.name]=r?Object.assign({},r,t,{options:Object.assign({},r.options,t.options),data:Object.assign({},r.data,t.data)}):t;return e}),{});return Object.keys(t).map((function(e){return t[e]}))}var DEFAULT_OPTIONS={placement:"bottom",modifiers:[],strategy:"absolute"};function areValidElements(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return!t.some((function(e){return!(e&&typeof e.getBoundingClientRect==="function")}))}function popperGenerator(e){if(e===void 0){e={}}var t=e,r=t.defaultModifiers,n=r===void 0?[]:r,a=t.defaultOptions,o=a===void 0?DEFAULT_OPTIONS:a;return function e(t,r,a){if(a===void 0){a=o}var i={placement:"bottom",orderedModifiers:[],options:Object.assign({},DEFAULT_OPTIONS,o),modifiersData:{},elements:{reference:t,popper:r},attributes:{},styles:{}};var s=[];var f=false;var l={state:i,setOptions:function e(a){p();i.options=Object.assign({},o,i.options,a);i.scrollParents={reference:isElement(t)?listScrollParents(t):t.contextElement?listScrollParents(t.contextElement):[],popper:listScrollParents(r)};var s=orderModifiers(mergeByName([].concat(n,i.options.modifiers)));i.orderedModifiers=s.filter((function(e){return e.enabled}));c();return l.update()},forceUpdate:function e(){if(f){return}var t=i.elements,r=t.reference,n=t.popper;if(!areValidElements(r,n)){return}i.rects={reference:getCompositeRect(r,getOffsetParent(n),i.options.strategy==="fixed"),popper:getLayoutRect(n)};i.reset=false;i.placement=i.options.placement;i.orderedModifiers.forEach((function(e){return i.modifiersData[e.name]=Object.assign({},e.data)}));for(var a=0;a<i.orderedModifiers.length;a++){if(i.reset===true){i.reset=false;a=-1;continue}var o=i.orderedModifiers[a],s=o.fn,c=o.options,p=c===void 0?{}:c,u=o.name;if(typeof s==="function"){i=s({state:i,options:p,name:u,instance:l})||i}}},update:debounce((function(){return new Promise((function(e){l.forceUpdate();e(i)}))})),destroy:function e(){p();f=true}};if(!areValidElements(t,r)){return l}l.setOptions(a).then((function(e){if(!f&&a.onFirstUpdate){a.onFirstUpdate(e)}}));function c(){i.orderedModifiers.forEach((function(e){var t=e.name,r=e.options,n=r===void 0?{}:r,a=e.effect;if(typeof a==="function"){var o=a({state:i,name:t,instance:l,options:n});var f=function e(){};s.push(o||f)}}))}function p(){s.forEach((function(e){return e()}));s=[]}return l}}var defaultModifiers=[eventListeners,popperOffsets$1,computeStyles$1,applyStyles$1,offset$1,flip$1,preventOverflow$1,arrow$1,hide$1];var createPopper$1=popperGenerator({defaultModifiers:defaultModifiers});var CSS={animation:"calcite-popper-anim",animationActive:"calcite-popper-anim--active"};function getPlacement(e,t){var r=["left","right"];var n=["start","end"];if(getElementDir(e)==="rtl"){r.reverse();n.reverse()}return t.replace(/-leading/gi,"-"+n[0]).replace(/-trailing/gi,"-"+n[1]).replace(/leading/gi,r[0]).replace(/trailing/gi,r[1])}function createPopper(e){var t=e.referenceEl,r=e.el,n=e.placement,a=e.overlayPositioning,o=a===void 0?"absolute":a,i=e.modifiers;if(!t){return null}return createPopper$1(t,r,{strategy:o,placement:getPlacement(r,n),modifiers:i})}function updatePopper(e){var t=e.el,r=e.modifiers,n=e.placement,a=e.popper;var o=getPlacement(t,n);a.setOptions({modifiers:r,placement:o})}function hypotenuse(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}var visiblePointerSize=4;var defaultOffsetDistance=Math.ceil(hypotenuse(visiblePointerSize,visiblePointerSize));export{CSS as C,createPopper as c,defaultOffsetDistance as d,updatePopper as u};