@cas-smartdesign/popover 6.0.0 → 6.0.1

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/docs/doc.mjs CHANGED
@@ -55,11 +55,11 @@ container.appendChild(button);
55
55
  container.appendChild(popover);
56
56
  `,x=`modulepreload`,S=function(e,t){return new URL(e,t).href},C={},w=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=S(t,n),t in C)return;C[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:x,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},T=s({default:()=>E}),E={mainContent:v,description:y,initializer:{content:b,type:`typescript`,initialize:()=>w(()=>import(`./3_created_from_source.js`),[],import.meta.url)}},D=`bottom`,O=`right`,k=`left`,A=`auto`,j=[`top`,D,O,k],M=`start`,N=`clippingParents`,P=`viewport`,F=`popper`,I=`reference`,L=j.reduce(function(e,t){return e.concat([t+`-`+M,t+`-end`])},[]),R=[].concat(j,[A]).reduce(function(e,t){return e.concat([t,t+`-`+M,t+`-end`])},[]),z=[`beforeRead`,`read`,`afterRead`,`beforeMain`,`main`,`afterMain`,`beforeWrite`,`write`,`afterWrite`];function B(e){return e?(e.nodeName||``).toLowerCase():null}function V(e){if(e==null)return window;if(e.toString()!==`[object Window]`){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function H(e){return e instanceof V(e).Element||e instanceof Element}function U(e){return e instanceof V(e).HTMLElement||e instanceof HTMLElement}function ee(e){return typeof ShadowRoot>`u`?!1:e instanceof V(e).ShadowRoot||e instanceof ShadowRoot}function te(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},i=t.elements[e];!U(i)||!B(i)||(Object.assign(i.style,n),Object.keys(r).forEach(function(e){var t=r[e];t===!1?i.removeAttribute(e):i.setAttribute(e,t===!0?``:t)}))})}function ne(e){var t=e.state,n={popper:{position:t.options.strategy,left:`0`,top:`0`,margin:`0`},arrow:{position:`absolute`},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var r=t.elements[e],i=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce(function(e,t){return e[t]=``,e},{});!U(r)||!B(r)||(Object.assign(r.style,a),Object.keys(i).forEach(function(e){r.removeAttribute(e)}))})}}var re={name:`applyStyles`,enabled:!0,phase:`write`,fn:te,effect:ne,requires:[`computeStyles`]};function W(e){return e.split(`-`)[0]}var G=Math.max,ie=Math.min,ae=Math.round;function oe(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+`/`+e.version}).join(` `):navigator.userAgent}function se(){return!/^((?!chrome|android).)*safari/i.test(oe())}function K(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),i=1,a=1;t&&U(e)&&(i=e.offsetWidth>0&&ae(r.width)/e.offsetWidth||1,a=e.offsetHeight>0&&ae(r.height)/e.offsetHeight||1);var o=(H(e)?V(e):window).visualViewport,s=!se()&&n,c=(r.left+(s&&o?o.offsetLeft:0))/i,l=(r.top+(s&&o?o.offsetTop:0))/a,u=r.width/i,d=r.height/a;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c,x:c,y:l}}function ce(e){var t=K(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function le(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&ee(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function q(e){return V(e).getComputedStyle(e)}function ue(e){return[`table`,`td`,`th`].indexOf(B(e))>=0}function J(e){return((H(e)?e.ownerDocument:e.document)||window.document).documentElement}function de(e){return B(e)===`html`?e:e.assignedSlot||e.parentNode||(ee(e)?e.host:null)||J(e)}function Y(e){return!U(e)||q(e).position===`fixed`?null:e.offsetParent}function fe(e){var t=/firefox/i.test(oe());if(/Trident/i.test(oe())&&U(e)&&q(e).position===`fixed`)return null;var n=de(e);for(ee(n)&&(n=n.host);U(n)&&[`html`,`body`].indexOf(B(n))<0;){var r=q(n);if(r.transform!==`none`||r.perspective!==`none`||r.contain===`paint`||[`transform`,`perspective`].indexOf(r.willChange)!==-1||t&&r.willChange===`filter`||t&&r.filter&&r.filter!==`none`)return n;n=n.parentNode}return null}function X(e){for(var t=V(e),n=Y(e);n&&ue(n)&&q(n).position===`static`;)n=Y(n);return n&&(B(n)===`html`||B(n)===`body`&&q(n).position===`static`)?t:n||fe(e)||t}function pe(e){return[`top`,`bottom`].indexOf(e)>=0?`x`:`y`}function me(e,t,n){return G(e,ie(t,n))}function he(e,t,n){var r=me(e,t,n);return r>n?n:r}function ge(){return{top:0,right:0,bottom:0,left:0}}function _e(e){return Object.assign({},ge(),e)}function ve(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}var ye=function(e,t){return e=typeof e==`function`?e(Object.assign({},t.rects,{placement:t.placement})):e,_e(typeof e==`number`?ve(e,j):e)};function be(e){var t,n=e.state,r=e.name,i=e.options,a=n.elements.arrow,o=n.modifiersData.popperOffsets,s=W(n.placement),c=pe(s),l=[`left`,`right`].indexOf(s)>=0?`height`:`width`;if(!(!a||!o)){var u=ye(i.padding,n),d=ce(a),f=c===`y`?`top`:k,p=c===`y`?D:O,m=n.rects.reference[l]+n.rects.reference[c]-o[c]-n.rects.popper[l],h=o[c]-n.rects.reference[c],g=X(a),_=g?c===`y`?g.clientHeight||0:g.clientWidth||0:0,v=m/2-h/2,y=u[f],b=_-d[l]-u[p],x=_/2-d[l]/2+v,S=me(y,x,b),C=c;n.modifiersData[r]=(t={},t[C]=S,t.centerOffset=S-x,t)}}function xe(e){var t=e.state,n=e.options.element,r=n===void 0?`[data-popper-arrow]`:n;r!=null&&(typeof r==`string`&&(r=t.elements.popper.querySelector(r),!r)||le(t.elements.popper,r)&&(t.elements.arrow=r))}var Se={name:`arrow`,enabled:!0,phase:`main`,fn:be,effect:xe,requires:[`popperOffsets`],requiresIfExists:[`preventOverflow`]};function Ce(e){return e.split(`-`)[1]}var we={top:`auto`,right:`auto`,bottom:`auto`,left:`auto`};function Te(e,t){var n=e.x,r=e.y,i=t.devicePixelRatio||1;return{x:ae(n*i)/i||0,y:ae(r*i)/i||0}}function Ee(e){var t,n=e.popper,r=e.popperRect,i=e.placement,a=e.variation,o=e.offsets,s=e.position,c=e.gpuAcceleration,l=e.adaptive,u=e.roundOffsets,d=e.isFixed,f=o.x,p=f===void 0?0:f,m=o.y,h=m===void 0?0:m,g=typeof u==`function`?u({x:p,y:h}):{x:p,y:h};p=g.x,h=g.y;var _=o.hasOwnProperty(`x`),v=o.hasOwnProperty(`y`),y=k,b=`top`,x=window;if(l){var S=X(n),C=`clientHeight`,w=`clientWidth`;if(S===V(n)&&(S=J(n),q(S).position!==`static`&&s===`absolute`&&(C=`scrollHeight`,w=`scrollWidth`)),S=S,i===`top`||(i===`left`||i===`right`)&&a===`end`){b=D;var T=d&&S===x&&x.visualViewport?x.visualViewport.height:S[C];h-=T-r.height,h*=c?1:-1}if(i===`left`||(i===`top`||i===`bottom`)&&a===`end`){y=O;var E=d&&S===x&&x.visualViewport?x.visualViewport.width:S[w];p-=E-r.width,p*=c?1:-1}}var A=Object.assign({position:s},l&&we),j=u===!0?Te({x:p,y:h},V(n)):{x:p,y:h};if(p=j.x,h=j.y,c){var M;return Object.assign({},A,(M={},M[b]=v?`0`:``,M[y]=_?`0`:``,M.transform=(x.devicePixelRatio||1)<=1?`translate(`+p+`px, `+h+`px)`:`translate3d(`+p+`px, `+h+`px, 0)`,M))}return Object.assign({},A,(t={},t[b]=v?h+`px`:``,t[y]=_?p+`px`:``,t.transform=``,t))}function De(e){var t=e.state,n=e.options,r=n.gpuAcceleration,i=r===void 0?!0:r,a=n.adaptive,o=a===void 0?!0:a,s=n.roundOffsets,c=s===void 0?!0:s,l={placement:W(t.placement),variation:Ce(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy===`fixed`};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,Ee(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Ee(Object.assign({},l,{offsets:t.modifiersData.arrow,position:`absolute`,adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var Oe={name:`computeStyles`,enabled:!0,phase:`beforeWrite`,fn:De,data:{}},Z={passive:!0};function ke(e){var t=e.state,n=e.instance,r=e.options,i=r.scroll,a=i===void 0?!0:i,o=r.resize,s=o===void 0?!0:o,c=V(t.elements.popper),l=[].concat(t.scrollParents.reference,t.scrollParents.popper);return a&&l.forEach(function(e){e.addEventListener(`scroll`,n.update,Z)}),s&&c.addEventListener(`resize`,n.update,Z),function(){a&&l.forEach(function(e){e.removeEventListener(`scroll`,n.update,Z)}),s&&c.removeEventListener(`resize`,n.update,Z)}}var Ae={name:`eventListeners`,enabled:!0,phase:`write`,fn:function(){},effect:ke,data:{}},je={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Me(e){return e.replace(/left|right|bottom|top/g,function(e){return je[e]})}var Ne={start:`end`,end:`start`};function Pe(e){return e.replace(/start|end/g,function(e){return Ne[e]})}function Fe(e){var t=V(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Ie(e){return K(J(e)).left+Fe(e).scrollLeft}function Le(e,t){var n=V(e),r=J(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;var l=se();(l||!l&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:a,height:o,x:s+Ie(e),y:c}}function Re(e){var t=J(e),n=Fe(e),r=e.ownerDocument?.body,i=G(t.scrollWidth,t.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),a=G(t.scrollHeight,t.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),o=-n.scrollLeft+Ie(e),s=-n.scrollTop;return q(r||t).direction===`rtl`&&(o+=G(t.clientWidth,r?r.clientWidth:0)-i),{width:i,height:a,x:o,y:s}}function ze(e){var t=q(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)}function Be(e){return[`html`,`body`,`#document`].indexOf(B(e))>=0?e.ownerDocument.body:U(e)&&ze(e)?e:Be(de(e))}function Ve(e,t){t===void 0&&(t=[]);var n=Be(e),r=n===e.ownerDocument?.body,i=V(n),a=r?[i].concat(i.visualViewport||[],ze(n)?n:[]):n,o=t.concat(a);return r?o:o.concat(Ve(de(a)))}function He(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Ue(e,t){var n=K(e,!1,t===`fixed`);return n.top+=e.clientTop,n.left+=e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function We(e,t,n){return t===`viewport`?He(Le(e,n)):H(t)?Ue(t,n):He(Re(J(e)))}function Ge(e){var t=Ve(de(e)),n=[`absolute`,`fixed`].indexOf(q(e).position)>=0&&U(e)?X(e):e;return H(n)?t.filter(function(e){return H(e)&&le(e,n)&&B(e)!==`body`}):[]}function Ke(e,t,n,r){var i=t===`clippingParents`?Ge(e):[].concat(t),a=[].concat(i,[n]),o=a[0],s=a.reduce(function(t,n){var i=We(e,n,r);return t.top=G(i.top,t.top),t.right=ie(i.right,t.right),t.bottom=ie(i.bottom,t.bottom),t.left=G(i.left,t.left),t},We(e,o,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function qe(e){var t=e.reference,n=e.element,r=e.placement,i=r?W(r):null,a=r?Ce(r):null,o=t.x+t.width/2-n.width/2,s=t.y+t.height/2-n.height/2,c;switch(i){case`top`:c={x:o,y:t.y-n.height};break;case D:c={x:o,y:t.y+t.height};break;case O:c={x:t.x+t.width,y:s};break;case k:c={x:t.x-n.width,y:s};break;default:c={x:t.x,y:t.y}}var l=i?pe(i):null;if(l!=null){var u=l===`y`?`height`:`width`;switch(a){case M:c[l]=c[l]-(t[u]/2-n[u]/2);break;case`end`:c[l]=c[l]+(t[u]/2-n[u]/2);break;default:}}return c}function Je(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=r===void 0?e.placement:r,a=n.strategy,o=a===void 0?e.strategy:a,s=n.boundary,c=s===void 0?N:s,l=n.rootBoundary,u=l===void 0?P:l,d=n.elementContext,f=d===void 0?F:d,p=n.altBoundary,m=p===void 0?!1:p,h=n.padding,g=h===void 0?0:h,_=_e(typeof g==`number`?ve(g,j):g),v=f===`popper`?I:F,y=e.rects.popper,b=e.elements[m?v:f],x=Ke(H(b)?b:b.contextElement||J(e.elements.popper),c,u,o),S=K(e.elements.reference),C=qe({reference:S,element:y,strategy:`absolute`,placement:i}),w=He(Object.assign({},y,C)),T=f===`popper`?w:S,E={top:x.top-T.top+_.top,bottom:T.bottom-x.bottom+_.bottom,left:x.left-T.left+_.left,right:T.right-x.right+_.right},D=e.modifiersData.offset;if(f===`popper`&&D){var O=D[i];Object.keys(E).forEach(function(e){var t=[`right`,`bottom`].indexOf(e)>=0?1:-1,n=[`top`,`bottom`].indexOf(e)>=0?`y`:`x`;E[e]+=O[n]*t})}return E}function Ye(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=n.boundary,a=n.rootBoundary,o=n.padding,s=n.flipVariations,c=n.allowedAutoPlacements,l=c===void 0?R:c,u=Ce(r),d=u?s?L:L.filter(function(e){return Ce(e)===u}):j,f=d.filter(function(e){return l.indexOf(e)>=0});f.length===0&&(f=d);var p=f.reduce(function(t,n){return t[n]=Je(e,{placement:n,boundary:i,rootBoundary:a,padding:o})[W(n)],t},{});return Object.keys(p).sort(function(e,t){return p[e]-p[t]})}function Xe(e){if(W(e)===`auto`)return[];var t=Me(e);return[Pe(e),t,Pe(t)]}function Ze(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var i=n.mainAxis,a=i===void 0?!0:i,o=n.altAxis,s=o===void 0?!0:o,c=n.fallbackPlacements,l=n.padding,u=n.boundary,d=n.rootBoundary,f=n.altBoundary,p=n.flipVariations,m=p===void 0?!0:p,h=n.allowedAutoPlacements,g=t.options.placement,_=W(g)===g,v=c||(_||!m?[Me(g)]:Xe(g)),y=[g].concat(v).reduce(function(e,n){return e.concat(W(n)===`auto`?Ye(t,{placement:n,boundary:u,rootBoundary:d,padding:l,flipVariations:m,allowedAutoPlacements:h}):n)},[]),b=t.rects.reference,x=t.rects.popper,S=new Map,C=!0,w=y[0],T=0;T<y.length;T++){var E=y[T],A=W(E),j=Ce(E)===M,N=[`top`,D].indexOf(A)>=0,P=N?`width`:`height`,F=Je(t,{placement:E,boundary:u,rootBoundary:d,altBoundary:f,padding:l}),I=N?j?O:k:j?D:`top`;b[P]>x[P]&&(I=Me(I));var L=Me(I),R=[];if(a&&R.push(F[A]<=0),s&&R.push(F[I]<=0,F[L]<=0),R.every(function(e){return e})){w=E,C=!1;break}S.set(E,R)}if(C)for(var z=m?3:1,B=function(e){var t=y.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return w=t,`break`},V=z;V>0&&B(V)!==`break`;V--);t.placement!==w&&(t.modifiersData[r]._skip=!0,t.placement=w,t.reset=!0)}}var Qe={name:`flip`,enabled:!0,phase:`main`,fn:Ze,requiresIfExists:[`offset`],data:{_skip:!1}};function $e(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function et(e){return[`top`,O,D,k].some(function(t){return e[t]>=0})}function tt(e){var t=e.state,n=e.name,r=t.rects.reference,i=t.rects.popper,a=t.modifiersData.preventOverflow,o=Je(t,{elementContext:`reference`}),s=Je(t,{altBoundary:!0}),c=$e(o,r),l=$e(s,i,a),u=et(c),d=et(l);t.modifiersData[n]={referenceClippingOffsets:c,popperEscapeOffsets:l,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}var nt={name:`hide`,enabled:!0,phase:`main`,requiresIfExists:[`preventOverflow`],fn:tt};function rt(e,t,n){var r=W(e),i=[`left`,`top`].indexOf(r)>=0?-1:1,a=typeof n==`function`?n(Object.assign({},t,{placement:e})):n,o=a[0],s=a[1];return o||=0,s=(s||0)*i,[`left`,`right`].indexOf(r)>=0?{x:s,y:o}:{x:o,y:s}}function it(e){var t=e.state,n=e.options,r=e.name,i=n.offset,a=i===void 0?[0,0]:i,o=R.reduce(function(e,n){return e[n]=rt(n,t.rects,a),e},{}),s=o[t.placement],c=s.x,l=s.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[r]=o}var at={name:`offset`,enabled:!0,phase:`main`,requires:[`popperOffsets`],fn:it};function ot(e){var t=e.state,n=e.name;t.modifiersData[n]=qe({reference:t.rects.reference,element:t.rects.popper,strategy:`absolute`,placement:t.placement})}var st={name:`popperOffsets`,enabled:!0,phase:`read`,fn:ot,data:{}};function ct(e){return e===`x`?`y`:`x`}function lt(e){var t=e.state,n=e.options,r=e.name,i=n.mainAxis,a=i===void 0?!0:i,o=n.altAxis,s=o===void 0?!1:o,c=n.boundary,l=n.rootBoundary,u=n.altBoundary,d=n.padding,f=n.tether,p=f===void 0?!0:f,m=n.tetherOffset,h=m===void 0?0:m,g=Je(t,{boundary:c,rootBoundary:l,padding:d,altBoundary:u}),_=W(t.placement),v=Ce(t.placement),y=!v,b=pe(_),x=ct(b),S=t.modifiersData.popperOffsets,C=t.rects.reference,w=t.rects.popper,T=typeof h==`function`?h(Object.assign({},t.rects,{placement:t.placement})):h,E=typeof T==`number`?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),A=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,j={x:0,y:0};if(S){if(a){var M=b===`y`?`top`:k,N=b===`y`?D:O,P=b===`y`?`height`:`width`,F=S[b],I=F+g[M],L=F-g[N],R=p?-w[P]/2:0,z=v===`start`?C[P]:w[P],B=v===`start`?-w[P]:-C[P],V=t.elements.arrow,H=p&&V?ce(V):{width:0,height:0},U=t.modifiersData[`arrow#persistent`]?t.modifiersData[`arrow#persistent`].padding:ge(),ee=U[M],te=U[N],ne=me(0,C[P],H[P]),re=y?C[P]/2-R-ne-ee-E.mainAxis:z-ne-ee-E.mainAxis,ae=y?-C[P]/2+R+ne+te+E.mainAxis:B+ne+te+E.mainAxis,oe=t.elements.arrow&&X(t.elements.arrow),se=oe?b===`y`?oe.clientTop||0:oe.clientLeft||0:0,K=A?.[b]??0,le=F+re-K-se,q=F+ae-K,ue=me(p?ie(I,le):I,F,p?G(L,q):L);S[b]=ue,j[b]=ue-F}if(s){var J=b===`x`?`top`:k,de=b===`x`?D:O,Y=S[x],fe=x===`y`?`height`:`width`,_e=Y+g[J],ve=Y-g[de],ye=[`top`,k].indexOf(_)!==-1,be=A?.[x]??0,xe=ye?_e:Y-C[fe]-w[fe]-be+E.altAxis,Se=ye?Y+C[fe]+w[fe]-be-E.altAxis:ve,we=p&&ye?he(xe,Y,Se):me(p?xe:_e,Y,p?Se:ve);S[x]=we,j[x]=we-Y}t.modifiersData[r]=j}}var ut={name:`preventOverflow`,enabled:!0,phase:`main`,fn:lt,requiresIfExists:[`offset`]};function dt(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function ft(e){return e===V(e)||!U(e)?Fe(e):dt(e)}function pt(e){var t=e.getBoundingClientRect(),n=ae(t.width)/e.offsetWidth||1,r=ae(t.height)/e.offsetHeight||1;return n!==1||r!==1}function mt(e,t,n){n===void 0&&(n=!1);var r=U(t),i=U(t)&&pt(t),a=J(t),o=K(e,i,n),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(r||!r&&!n)&&((B(t)!==`body`||ze(a))&&(s=ft(t)),U(t)?(c=K(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):a&&(c.x=Ie(a))),{x:o.left+s.scrollLeft-c.x,y:o.top+s.scrollTop-c.y,width:o.width,height:o.height}}function ht(e){var t=new Map,n=new Set,r=[];e.forEach(function(e){t.set(e.name,e)});function i(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!n.has(e)){var r=t.get(e);r&&i(r)}}),r.push(e)}return e.forEach(function(e){n.has(e.name)||i(e)}),r}function gt(e){var t=ht(e);return z.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}function _t(e){var t;return function(){return t||=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})}),t}}function vt(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}var yt={placement:`bottom`,modifiers:[],strategy:`absolute`};function bt(){return![...arguments].some(function(e){return!(e&&typeof e.getBoundingClientRect==`function`)})}function xt(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,i=t.defaultOptions,a=i===void 0?yt:i;return function(e,t,n){n===void 0&&(n=a);var i={placement:`bottom`,orderedModifiers:[],options:Object.assign({},yt,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},o=[],s=!1,c={state:i,setOptions:function(n){var o=typeof n==`function`?n(i.options):n;u(),i.options=Object.assign({},a,i.options,o),i.scrollParents={reference:H(e)?Ve(e):e.contextElement?Ve(e.contextElement):[],popper:Ve(t)};var s=gt(vt([].concat(r,i.options.modifiers)));return i.orderedModifiers=s.filter(function(e){return e.enabled}),l(),c.update()},forceUpdate:function(){if(!s){var e=i.elements,t=e.reference,n=e.popper;if(bt(t,n)){i.rects={reference:mt(t,X(n),i.options.strategy===`fixed`),popper:ce(n)},i.reset=!1,i.placement=i.options.placement,i.orderedModifiers.forEach(function(e){return i.modifiersData[e.name]=Object.assign({},e.data)});for(var r=0;r<i.orderedModifiers.length;r++){if(i.reset===!0){i.reset=!1,r=-1;continue}var a=i.orderedModifiers[r],o=a.fn,l=a.options,u=l===void 0?{}:l,d=a.name;typeof o==`function`&&(i=o({state:i,options:u,name:d,instance:c})||i)}}}},update:_t(function(){return new Promise(function(e){c.forceUpdate(),e(i)})}),destroy:function(){u(),s=!0}};if(!bt(e,t))return c;c.setOptions(n).then(function(e){!s&&n.onFirstUpdate&&n.onFirstUpdate(e)});function l(){i.orderedModifiers.forEach(function(e){var t=e.name,n=e.options,r=n===void 0?{}:n,a=e.effect;if(typeof a==`function`){var s=a({state:i,name:t,instance:c,options:r});o.push(s||function(){})}})}function u(){o.forEach(function(e){return e()}),o=[]}return c}}var St=xt({defaultModifiers:[Ae,st,Oe,re,at,Qe,ut,Se,nt]}),Ct=1,wt=`sd-popover-open`,Tt=0,Et=()=>(Tt++,Tt),Dt=class e extends HTMLElement{constructor(...e){super(...e),this.popoverContainerId=`popover-container-`+Et(),this._open=!1,this._firstUpdated=!1,this.toggle=()=>{this.open=!this.open},this.show=()=>{this.open=!0},this.hide=()=>{this.open=!1},this.hideIfExternalTarget=e=>{let t=e.target;(!(t instanceof HTMLElement)||this._container==null||this.targetElement==null||!this._container.contains(t)&&!this.targetElement.contains(t))&&this.hide()},this.handleTabKeyDown=e=>{if(e.key!==`Tab`)return;let t=e.shiftKey,n=null,r=e.target,i=this.content;r instanceof HTMLElement&&i&&(n=this.findNextFocusableAfter(r,i,!t)),!n&&(e.preventDefault(),this.open=!1,this.findNextFocusableAfter(this.targetElement,null,!t)?.focus())}}static{this.ID=`sd-popover`}static{this.ensureDefined=()=>{customElements.get(e.ID)||customElements.define(e.ID,e)}}get triggerType(){return this.getAttribute(`trigger-type`)}set triggerType(e){e?this.setAttribute(`trigger-type`,e):this.removeAttribute(`trigger-type`)}get arrowSvg(){return this.getAttribute(`arrow-svg`)||`<svg width="26" height="12" viewBox="0 0 26 12" fill="none" xmlns="http://www.w3.org/2000/svg">\r
57
57
  <path d="M13.7072 0.707031L0.707153 0.707031L9.87873 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031L13.7072 0.707031Z" fill="var(--color-bg-default, #ffffff)" class="arrow-background"/>\r
58
- <path d="M0.707153 0.707031L9.87872 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031" stroke="var(--color-border-strong, #B3B3B3)" stroke-linecap="square" class="arrow-border"/>\r
58
+ <path d="M0.707153 0.707031L9.87872 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031" stroke="var(--color-border-default, #d4d4d4)" stroke-linecap="square" class="arrow-border"/>\r
59
59
  </svg>\r
60
60
  `}set arrowSvg(e){e?this.setAttribute(`arrow-svg`,e):this.removeAttribute(`arrow-svg`),this._arrow&&(this._arrow.innerHTML=this.arrowSvg)}get placement(){return this.getAttribute(`placement`)}set placement(e){e?this.setAttribute(`placement`,e):this.removeAttribute(`placement`)}get targetElement(){return this._targetElement}set targetElement(e){this.removeTargetEventListener(this.targetElement),this._targetElement&&this._targetElement.getAttribute(`aria-expanded`)==`true`&&this._targetElement.setAttribute(`aria-expanded`,`false`),this._targetElement=e,e&&e.setAttribute(`aria-expanded`,`false`),this.addTargetEventListener(this.targetElement),this.updatePopper()}get targetSelector(){return this.getAttribute(`target-selector`)}set targetSelector(e){e?this.setAttribute(`target-selector`,e):this.removeAttribute(`target-selector`)}get modal(){return this.hasAttribute(`modal`)}set modal(e){e?this.setAttribute(`modal`,``):this.removeAttribute(`modal`)}get popoverFor(){return this.getAttribute(`popover-for`)}set popoverFor(e){e?this.setAttribute(`popover-for`,e):this.removeAttribute(`popover-for`)}get flipPriority(){return this._flipPriority}set flipPriority(e){e&&e.length>0?this._flipPriority=e:this._flipPriority=void 0,this.reConfigurePopper()}get offset(){return this.getAttribute(`offset`)?parseInt(this.getAttribute(`offset`)??`0`):0}set offset(e){e?this.setAttribute(`offset`,e.toString()):this.removeAttribute(`offset`),this.reConfigurePopper()}reConfigurePopper(){this._popper&&this.configurePopper()}get noArrow(){return this.hasAttribute(`no-arrow`)}set noArrow(e){e?this.setAttribute(`no-arrow`,``):this.removeAttribute(`no-arrow`)}static get observedAttributes(){return[`placement`,`target-selector`,`trigger-type`]}attributeChangedCallback(e,t){switch(e){case`placement`:this.updatePopper();break;case`trigger-type`:this.removeTargetEventListener(this.targetElement),this.addTargetEventListener(this.targetElement);break;case`target-selector`:this.handleTargetSelectorChange(t);break}}connectedCallback(){this._firstUpdated||=(this.firstUpdated(),!0),this.targetElement?this.addTargetEventListener(this.targetElement):this.targetSelector&&requestAnimationFrame(()=>{this.isConnected&&this.handleTargetSelectorChange(null)}),this._arrow=document.createElement(`div`),this._arrow.classList.add(`popover-arrow`),this._arrow.setAttribute(`data-popper-arrow`,``),this._arrow.style.display=`flex`,this._arrow.innerHTML=this.arrowSvg}disconnectedCallback(){this.targetElement&&(this.removeTargetEventListener(this.targetElement),this.removeTargetClassForOpen(this.targetElement)),this._resizeObserver&&=(this._resizeObserver.disconnect(),void 0)}firstUpdated(){this.style.display=`none`,this.triggerType=this.triggerType||`click`,this.placement=this.placement||`auto`}get open(){return this._open}set open(e){e!==this._open&&(this._open=e,this.handleOpenChange())}handleOpenChange(){if(this.open){if(this._popper||this.configurePopper(),this._container==null)return;this._container.innerHTML=``;let e=document.createElement(`style`);e.innerHTML=`#${this.popoverContainerId} {
61
61
  box-shadow: var(--effect-shadow-strong, 1px 4px 24px 0 rgba(17, 17, 17, 0.5));
62
- border: 1px solid var(--color-border-strong, #B3B3B3);
62
+ border: 1px solid var(--color-border-default, #d4d4d4);
63
63
  border-radius: var(--radius-s, 4px);
64
64
  box-sizing: border-box;
65
65
  z-index: 20000;
package/dist/popover.mjs CHANGED
@@ -33,7 +33,7 @@ var t = 1, n = "sd-popover-open", r = 0, i = () => (r++, r), a = class r extends
33
33
  e ? this.setAttribute("trigger-type", e) : this.removeAttribute("trigger-type");
34
34
  }
35
35
  get arrowSvg() {
36
- return this.getAttribute("arrow-svg") || "<svg width=\"26\" height=\"12\" viewBox=\"0 0 26 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n<path d=\"M13.7072 0.707031L0.707153 0.707031L9.87873 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031L13.7072 0.707031Z\" fill=\"var(--color-bg-default, #ffffff)\" class=\"arrow-background\"/>\r\n<path d=\"M0.707153 0.707031L9.87872 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031\" stroke=\"var(--color-border-strong, #B3B3B3)\" stroke-linecap=\"square\" class=\"arrow-border\"/>\r\n</svg>\r\n";
36
+ return this.getAttribute("arrow-svg") || "<svg width=\"26\" height=\"12\" viewBox=\"0 0 26 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n<path d=\"M13.7072 0.707031L0.707153 0.707031L9.87873 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031L13.7072 0.707031Z\" fill=\"var(--color-bg-default, #ffffff)\" class=\"arrow-background\"/>\r\n<path d=\"M0.707153 0.707031L9.87872 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031\" stroke=\"var(--color-border-default, #d4d4d4)\" stroke-linecap=\"square\" class=\"arrow-border\"/>\r\n</svg>\r\n";
37
37
  }
38
38
  set arrowSvg(e) {
39
39
  e ? this.setAttribute("arrow-svg", e) : this.removeAttribute("arrow-svg"), this._arrow && (this._arrow.innerHTML = this.arrowSvg);
@@ -133,7 +133,7 @@ var t = 1, n = "sd-popover-open", r = 0, i = () => (r++, r), a = class r extends
133
133
  let e = document.createElement("style");
134
134
  e.innerHTML = `#${this.popoverContainerId} {
135
135
  box-shadow: var(--effect-shadow-strong, 1px 4px 24px 0 rgba(17, 17, 17, 0.5));
136
- border: 1px solid var(--color-border-strong, #B3B3B3);
136
+ border: 1px solid var(--color-border-default, #d4d4d4);
137
137
  border-radius: var(--radius-s, 4px);
138
138
  box-sizing: border-box;
139
139
  z-index: 20000;
@@ -1 +1 @@
1
- {"version":3,"file":"popover.mjs","names":[],"sources":["../arrow.svg?raw","../popover.ts"],"sourcesContent":["export default \"<svg width=\\\"26\\\" height=\\\"12\\\" viewBox=\\\"0 0 26 12\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\r\\n<path d=\\\"M13.7072 0.707031L0.707153 0.707031L9.87873 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031L13.7072 0.707031Z\\\" fill=\\\"var(--color-bg-default, #ffffff)\\\" class=\\\"arrow-background\\\"/>\\r\\n<path d=\\\"M0.707153 0.707031L9.87872 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031\\\" stroke=\\\"var(--color-border-strong, #B3B3B3)\\\" stroke-linecap=\\\"square\\\" class=\\\"arrow-border\\\"/>\\r\\n</svg>\\r\\n\"","import { createPopper, type Instance as Popper, type Options, type Placement } from \"@popperjs/core\";\n\nimport { default as arrowSvg } from \"./arrow.svg?raw\";\n\nconst arrowOverlapOffset = 1;\nconst targetClassOpen = \"sd-popover-open\";\n\nlet idCounter = 0;\nconst nextId = () => {\n idCounter++;\n return idCounter;\n};\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [Popover.ID]: Popover;\n }\n interface HTMLElementEventMap {\n \"sd-popover-open\": CustomEvent<IOpenEvent>;\n \"sd-popover-close\": CustomEvent<ICloseEvent>;\n }\n}\n\nexport type TriggerType = \"click\" | \"hover\" | \"manual\";\nexport type ArrowVariant = \"bottom\" | \"left\" | \"right\" | \"top\";\nexport type IOpenEvent = void;\nexport type ICloseEvent = void;\n\nexport default class Popover extends HTMLElement {\n public static readonly ID = \"sd-popover\";\n public static ensureDefined = () => {\n if (!customElements.get(Popover.ID)) {\n customElements.define(Popover.ID, Popover);\n }\n };\n private popoverContainerId = \"popover-container-\" + nextId();\n\n private _open = false;\n private _popper?: Popper;\n private _targetElement?: HTMLElement;\n private _container?: HTMLElement;\n private _arrow?: HTMLElement;\n private _content?: HTMLElement;\n private _firstUpdated = false;\n private _flipPriority?: Placement[];\n private _resizeObserver?: ResizeObserver;\n\n public get triggerType(): TriggerType {\n return this.getAttribute(\"trigger-type\") as TriggerType;\n }\n\n public set triggerType(type: TriggerType) {\n if (type) {\n this.setAttribute(\"trigger-type\", type);\n } else {\n this.removeAttribute(\"trigger-type\");\n }\n }\n\n public get arrowSvg(): string {\n return this.getAttribute(\"arrow-svg\") || arrowSvg;\n }\n\n public set arrowSvg(arrowSvg: string) {\n if (arrowSvg) {\n this.setAttribute(\"arrow-svg\", arrowSvg);\n } else {\n this.removeAttribute(\"arrow-svg\");\n }\n if (this._arrow) {\n this._arrow.innerHTML = this.arrowSvg;\n }\n }\n\n public get placement(): Placement {\n return this.getAttribute(\"placement\") as Placement;\n }\n\n public set placement(placement: Placement) {\n if (placement) {\n this.setAttribute(\"placement\", placement);\n } else {\n this.removeAttribute(\"placement\");\n }\n }\n\n public get targetElement(): HTMLElement | undefined {\n return this._targetElement;\n }\n\n public set targetElement(element: HTMLElement | undefined) {\n this.removeTargetEventListener(this.targetElement);\n if (this._targetElement && \"true\" == this._targetElement.getAttribute(\"aria-expanded\")) {\n this._targetElement.setAttribute(\"aria-expanded\", \"false\");\n }\n this._targetElement = element;\n if (element) {\n element.setAttribute(\"aria-expanded\", \"false\");\n }\n this.addTargetEventListener(this.targetElement);\n this.updatePopper();\n }\n\n public get targetSelector(): string | null {\n return this.getAttribute(\"target-selector\");\n }\n\n public set targetSelector(selector: string) {\n if (selector) {\n this.setAttribute(\"target-selector\", selector);\n } else {\n this.removeAttribute(\"target-selector\");\n }\n }\n\n public get modal(): boolean {\n return this.hasAttribute(\"modal\");\n }\n\n public set modal(modal: boolean) {\n if (modal) {\n this.setAttribute(\"modal\", \"\");\n } else {\n this.removeAttribute(\"modal\");\n }\n }\n\n public get popoverFor(): string | null {\n return this.getAttribute(\"popover-for\");\n }\n\n public set popoverFor(popoverFor: string) {\n if (popoverFor) {\n this.setAttribute(\"popover-for\", popoverFor);\n } else {\n this.removeAttribute(\"popover-for\");\n }\n }\n\n public get flipPriority(): Placement[] | undefined {\n return this._flipPriority;\n }\n\n public set flipPriority(priority: Placement[] | undefined) {\n if (priority && priority.length > 0) {\n this._flipPriority = priority;\n } else {\n this._flipPriority = undefined;\n }\n this.reConfigurePopper();\n }\n\n public get offset(): number {\n return this.getAttribute(\"offset\") ? parseInt(this.getAttribute(\"offset\") ?? \"0\") : 0;\n }\n\n public set offset(offset: number) {\n if (offset) {\n this.setAttribute(\"offset\", offset.toString());\n } else {\n this.removeAttribute(\"offset\");\n }\n this.reConfigurePopper();\n }\n\n private reConfigurePopper() {\n if (this._popper) {\n this.configurePopper();\n }\n }\n\n public get noArrow(): boolean {\n return this.hasAttribute(\"no-arrow\");\n }\n\n public set noArrow(noArrow: boolean) {\n if (noArrow) {\n this.setAttribute(\"no-arrow\", \"\");\n } else {\n this.removeAttribute(\"no-arrow\");\n }\n }\n\n static get observedAttributes(): string[] {\n return [\"placement\", \"target-selector\", \"trigger-type\"];\n }\n\n public attributeChangedCallback(name: string, oldValue: string): void {\n switch (name) {\n case \"placement\": {\n this.updatePopper();\n break;\n }\n case \"trigger-type\": {\n this.removeTargetEventListener(this.targetElement);\n this.addTargetEventListener(this.targetElement);\n break;\n }\n case \"target-selector\": {\n this.handleTargetSelectorChange(oldValue);\n break;\n }\n }\n }\n\n public connectedCallback(): void {\n if (!this._firstUpdated) {\n this.firstUpdated();\n this._firstUpdated = true;\n }\n if (this.targetElement) {\n this.addTargetEventListener(this.targetElement);\n } else if (this.targetSelector) {\n // The browser is currently attaching html nodes to the dom tree, the target may not be present in it yet.\n requestAnimationFrame(() => {\n if (this.isConnected) {\n this.handleTargetSelectorChange(null);\n }\n });\n }\n\n this._arrow = document.createElement(\"div\");\n this._arrow.classList.add(\"popover-arrow\");\n this._arrow.setAttribute(\"data-popper-arrow\", \"\");\n this._arrow.style.display = \"flex\";\n this._arrow.innerHTML = this.arrowSvg;\n }\n\n public disconnectedCallback(): void {\n if (this.targetElement) {\n this.removeTargetEventListener(this.targetElement);\n this.removeTargetClassForOpen(this.targetElement);\n }\n if (this._resizeObserver) {\n this._resizeObserver.disconnect();\n this._resizeObserver = undefined;\n }\n }\n\n public toggle = (): void => {\n this.open = !this.open;\n };\n\n public show = (): void => {\n this.open = true;\n };\n\n public hide = (): void => {\n this.open = false;\n };\n\n private firstUpdated(): void {\n this.style.display = \"none\";\n this.triggerType = this.triggerType || \"click\";\n this.placement = this.placement || \"auto\";\n }\n\n private get open(): boolean {\n return this._open;\n }\n\n private set open(open: boolean) {\n if (open !== this._open) {\n this._open = open;\n this.handleOpenChange();\n }\n }\n\n private handleOpenChange(): void {\n if (this.open) {\n if (!this._popper) {\n this.configurePopper();\n }\n if (this._container == null) {\n return;\n }\n\n this._container.innerHTML = \"\";\n const style = document.createElement(\"style\");\n style.innerHTML = `#${this.popoverContainerId} {\n box-shadow: var(--effect-shadow-strong, 1px 4px 24px 0 rgba(17, 17, 17, 0.5));\n border: 1px solid var(--color-border-strong, #B3B3B3);\n border-radius: var(--radius-s, 4px);\n box-sizing: border-box;\n z-index: 20000;\n\n > *:not(.popover-arrow) {\n border-radius: var(--radius-s, 4px);\n clip-path: inset(0 round var(--radius-s, 4px));\n }\n }`;\n this._container.appendChild(style);\n if (this.popoverFor) {\n this._container.setAttribute(\"popover-for\", this.popoverFor);\n }\n if (this.content) {\n this._container.prepend(this.content);\n Object.assign(this.content.style, {\n position: \"relative\",\n display: \"block\",\n zIndex: 1,\n });\n window.requestAnimationFrame(() => {\n let backgroundColor = getComputedStyle(this.content).backgroundColor;\n if (backgroundColor == \"rgba(0, 0, 0, 0)\") {\n this.content.style.background = backgroundColor = \"var(--color-bg-default, #ffffff)\";\n }\n if (!this._arrow) {\n return;\n }\n const arrowBackground = this._arrow.querySelector(\".arrow-background\") as HTMLElement;\n if (arrowBackground) {\n arrowBackground.style.fill = backgroundColor;\n }\n });\n }\n this.ensureArrowIsAdded();\n this.ownerDocument.body.appendChild(this._container);\n this.updatePopper();\n this.setAttribute(\"open\", \"\");\n\n if (this.modal) {\n window.addEventListener(\"click\", this.hideIfExternalTarget, { capture: true });\n window.addEventListener(\"focus\", this.hideIfExternalTarget, { capture: true });\n }\n if (this.targetElement) {\n this.addTargetClassForOpen(this.targetElement);\n this.targetElement.setAttribute(\"aria-expanded\", \"true\");\n }\n this.dispatchEvent(new CustomEvent(\"sd-popover-open\"));\n\n this._container.addEventListener(\"keydown\", this.handleTabKeyDown);\n } else {\n if (this._container != null) {\n this.ownerDocument.body.removeChild(this._container);\n }\n\n this.removeAttribute(\"open\");\n window.removeEventListener(\"click\", this.hideIfExternalTarget, { capture: true });\n window.removeEventListener(\"focus\", this.hideIfExternalTarget, { capture: true });\n\n if (this.targetElement) {\n this.removeTargetClassForOpen(this.targetElement);\n this.targetElement.setAttribute(\"aria-expanded\", \"false\");\n }\n this.dispatchEvent(new CustomEvent(\"sd-popover-close\"));\n\n if (this._container != null) {\n this._container.removeEventListener(\"keydown\", this.handleTabKeyDown);\n }\n }\n }\n\n private hideIfExternalTarget = (event: Event) => {\n const target = event.target;\n if (\n !(target instanceof HTMLElement) ||\n this._container == null ||\n this.targetElement == null ||\n (!this._container.contains(target) && !this.targetElement.contains(target))\n ) {\n this.hide();\n }\n };\n\n private handleTabKeyDown = (event: KeyboardEvent) => {\n if (event.key !== \"Tab\") {\n return;\n }\n\n const shift = event.shiftKey;\n let nextInsidePopover: HTMLElement | null = null;\n\n const target = event.target as Element | null;\n const root = this.content;\n\n if (target instanceof HTMLElement && root) {\n nextInsidePopover = this.findNextFocusableAfter(target, root, !shift);\n }\n\n if (nextInsidePopover) {\n // Let browser handle tabbing inside popover\n return;\n }\n\n // No more focusable elements inside popover → close it\n event.preventDefault();\n this.open = false;\n\n const next = this.findNextFocusableAfter(this.targetElement, null, !shift);\n next?.focus();\n };\n\n private handleTargetSelectorChange(oldValue: string | null | undefined): void {\n if (oldValue != null) {\n const oldTarget = document.querySelector<HTMLElement>(oldValue);\n if (oldTarget) {\n this.removeTargetEventListener(oldTarget);\n this.removeTargetClassForOpen(oldTarget);\n }\n }\n if (this.targetSelector) {\n const target = document.querySelector(this.targetSelector);\n if (target instanceof HTMLElement) {\n this.targetElement = target;\n }\n\n this.addTargetEventListener(this.targetElement);\n }\n }\n\n private addTargetEventListener(target: HTMLElement | undefined): void {\n if (target) {\n switch (this.triggerType) {\n case \"hover\": {\n target.addEventListener(\"mouseenter\", this.show);\n target.addEventListener(\"mouseleave\", this.hide);\n break;\n }\n case \"click\": {\n target.addEventListener(\"click\", this.toggle);\n break;\n }\n }\n }\n }\n\n private removeTargetEventListener(target: HTMLElement | undefined): void {\n if (target) {\n switch (this.triggerType) {\n case \"hover\": {\n target.removeEventListener(\"mouseenter\", this.show);\n target.removeEventListener(\"mouseleave\", this.hide);\n break;\n }\n case \"click\": {\n target.removeEventListener(\"click\", this.toggle);\n break;\n }\n }\n }\n }\n\n private configurePopper(): void {\n this.createContentContainer();\n // In popper.js 2 the arrow needs to be added before calling Popper#createPopper\n this.ensureArrowIsAdded();\n\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const popover = this;\n const options: Options = {\n placement: popover.placement as Placement,\n strategy: \"absolute\",\n modifiers: [\n {\n name: \"computeStyles\",\n options: {\n gpuAcceleration: true,\n },\n },\n {\n name: \"flip\",\n options: {\n fallbackPlacements: popover._flipPriority,\n },\n },\n {\n name: \"offset\",\n options: {\n offset: () => {\n return [\n 0,\n popover.noArrow\n ? 0 + popover.offset\n : (this._arrow?.clientHeight ?? 0 + popover.offset),\n ];\n },\n },\n },\n {\n name: \"arrow\",\n options: {\n padding: 10, // Avoid to reach the edges of the popper element with the arrow\n },\n },\n {\n name: \"resetArrowStyles\",\n enabled: true,\n phase: \"beforeWrite\",\n fn({ state }) {\n if (popover._arrow && state.styles.arrow) {\n Object.assign(popover._arrow.style, {\n top: state.styles.arrow.top || \"\",\n left: state.styles.arrow.left || \"\",\n bottom: state.styles.arrow.bottom || \"\",\n right: state.styles.arrow.right || \"\",\n });\n }\n },\n },\n {\n name: \"onUpdate\",\n enabled: true,\n phase: \"afterWrite\",\n fn({ state }) {\n popover.updateArrow(state.placement);\n },\n },\n ],\n };\n this._popper = createPopper(this.targetElement!, this._container!, options);\n }\n\n private createContentContainer(): void {\n this._container = document.createElement(\"div\");\n this._container.id = this.popoverContainerId;\n this._container.classList.add(\"popover-container\");\n this._container.tabIndex = 0;\n if (this._resizeObserver) {\n this._resizeObserver.disconnect();\n }\n this._resizeObserver = new ResizeObserver(() => {\n if (this._popper) {\n void this._popper.update();\n }\n });\n this._resizeObserver.observe(this._container);\n }\n\n private ensureArrowIsAdded() {\n if (this._container && this._arrow && !this.noArrow && !this._container.contains(this._arrow)) {\n this._container.appendChild(this._arrow);\n }\n }\n\n public updatePopper(): void {\n if (this._popper) {\n this._popper.state.elements.reference = this.targetElement ?? document.body;\n this._popper.state.options.placement = this.placement;\n\n if (this.open) {\n void this._popper.update();\n }\n }\n }\n\n private updateArrow(placement: Placement): void {\n if (this._arrow) {\n const arrowVariant = this.getArrowVariant(placement);\n this._arrow.setAttribute(\"variant\", arrowVariant);\n if (this._content) {\n const svg = this._arrow.querySelector(\"svg\")!;\n\n const arrowWidth = this._arrow.clientWidth;\n const arrowHeight = this._arrow.clientHeight;\n const verticalOffset = `-${arrowHeight - arrowOverlapOffset}px`;\n\n const horizontalTransformationOffset = (arrowWidth - arrowHeight) / 2;\n // Note that arrowHeight is used on purpose for the horizontalOffset\n // as this is the height of the unrotated wrapper div which defines the gap between the\n // reference element and the popover.\n const horizontalOffset = `-${arrowHeight + horizontalTransformationOffset - arrowOverlapOffset}px`;\n\n switch (arrowVariant) {\n case \"bottom\": {\n this._arrow.style.top = verticalOffset;\n svg.style.transform = \"rotate(180deg)\";\n break;\n }\n case \"top\": {\n this._arrow.style.bottom = verticalOffset;\n svg.style.transform = \"rotate(0deg)\";\n break;\n }\n case \"left\": {\n this._arrow.style.right = horizontalOffset;\n svg.style.transform = \"rotate(270deg)\";\n break;\n }\n case \"right\": {\n this._arrow.style.left = horizontalOffset;\n svg.style.transform = \"rotate(90deg)\";\n break;\n }\n }\n }\n }\n }\n\n private getArrowVariant(placement: Placement): ArrowVariant {\n if (placement.indexOf(\"bottom\") !== -1) {\n return \"bottom\";\n } else if (placement.indexOf(\"top\") !== -1) {\n return \"top\";\n } else if (placement.indexOf(\"left\") !== -1) {\n return \"left\";\n } else if (placement.indexOf(\"right\") !== -1) {\n return \"right\";\n }\n return \"bottom\";\n }\n\n private get content(): HTMLElement {\n if (!this._content) {\n this._content = this.firstElementChild as HTMLElement;\n this._content.setAttribute(\"data-popper-content\", \"\");\n }\n return this._content;\n }\n\n private addTargetClassForOpen(target: HTMLElement): void {\n if (target) {\n target.classList.add(targetClassOpen);\n }\n }\n\n private removeTargetClassForOpen(target: HTMLElement): void {\n if (target) {\n target.classList.remove(targetClassOpen);\n }\n }\n\n private findNextFocusableAfter(\n trigger: HTMLElement | undefined | null,\n root: HTMLElement | undefined | null,\n forward: boolean,\n ): HTMLElement | null {\n if (!trigger) return null;\n\n const effectiveRoot = root ?? document.body;\n\n const walker = document.createTreeWalker(effectiveRoot, NodeFilter.SHOW_ELEMENT, {\n acceptNode(node) {\n const el = node as HTMLElement;\n\n return el.tabIndex >= 0 && !el.hidden && el.offsetParent !== null\n ? NodeFilter.FILTER_ACCEPT\n : NodeFilter.FILTER_SKIP;\n },\n });\n\n walker.currentNode = trigger;\n\n const nextNode = forward ? walker.nextNode() : walker.previousNode();\n\n return nextNode as HTMLElement | null;\n }\n}\n\nPopover.ensureDefined();\n"],"mappings":"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"}
1
+ {"version":3,"file":"popover.mjs","names":[],"sources":["../arrow.svg?raw","../popover.ts"],"sourcesContent":["export default \"<svg width=\\\"26\\\" height=\\\"12\\\" viewBox=\\\"0 0 26 12\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\r\\n<path d=\\\"M13.7072 0.707031L0.707153 0.707031L9.87873 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031L13.7072 0.707031Z\\\" fill=\\\"var(--color-bg-default, #ffffff)\\\" class=\\\"arrow-background\\\"/>\\r\\n<path d=\\\"M0.707153 0.707031L9.87872 9.8786C11.4408 11.4407 13.9735 11.4407 15.5356 9.8786L24.7072 0.707031\\\" stroke=\\\"var(--color-border-default, #d4d4d4)\\\" stroke-linecap=\\\"square\\\" class=\\\"arrow-border\\\"/>\\r\\n</svg>\\r\\n\"","import { createPopper, type Instance as Popper, type Options, type Placement } from \"@popperjs/core\";\n\nimport { default as arrowSvg } from \"./arrow.svg?raw\";\n\nconst arrowOverlapOffset = 1;\nconst targetClassOpen = \"sd-popover-open\";\n\nlet idCounter = 0;\nconst nextId = () => {\n idCounter++;\n return idCounter;\n};\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [Popover.ID]: Popover;\n }\n interface HTMLElementEventMap {\n \"sd-popover-open\": CustomEvent<IOpenEvent>;\n \"sd-popover-close\": CustomEvent<ICloseEvent>;\n }\n}\n\nexport type TriggerType = \"click\" | \"hover\" | \"manual\";\nexport type ArrowVariant = \"bottom\" | \"left\" | \"right\" | \"top\";\nexport type IOpenEvent = void;\nexport type ICloseEvent = void;\n\nexport default class Popover extends HTMLElement {\n public static readonly ID = \"sd-popover\";\n public static ensureDefined = () => {\n if (!customElements.get(Popover.ID)) {\n customElements.define(Popover.ID, Popover);\n }\n };\n private popoverContainerId = \"popover-container-\" + nextId();\n\n private _open = false;\n private _popper?: Popper;\n private _targetElement?: HTMLElement;\n private _container?: HTMLElement;\n private _arrow?: HTMLElement;\n private _content?: HTMLElement;\n private _firstUpdated = false;\n private _flipPriority?: Placement[];\n private _resizeObserver?: ResizeObserver;\n\n public get triggerType(): TriggerType {\n return this.getAttribute(\"trigger-type\") as TriggerType;\n }\n\n public set triggerType(type: TriggerType) {\n if (type) {\n this.setAttribute(\"trigger-type\", type);\n } else {\n this.removeAttribute(\"trigger-type\");\n }\n }\n\n public get arrowSvg(): string {\n return this.getAttribute(\"arrow-svg\") || arrowSvg;\n }\n\n public set arrowSvg(arrowSvg: string) {\n if (arrowSvg) {\n this.setAttribute(\"arrow-svg\", arrowSvg);\n } else {\n this.removeAttribute(\"arrow-svg\");\n }\n if (this._arrow) {\n this._arrow.innerHTML = this.arrowSvg;\n }\n }\n\n public get placement(): Placement {\n return this.getAttribute(\"placement\") as Placement;\n }\n\n public set placement(placement: Placement) {\n if (placement) {\n this.setAttribute(\"placement\", placement);\n } else {\n this.removeAttribute(\"placement\");\n }\n }\n\n public get targetElement(): HTMLElement | undefined {\n return this._targetElement;\n }\n\n public set targetElement(element: HTMLElement | undefined) {\n this.removeTargetEventListener(this.targetElement);\n if (this._targetElement && \"true\" == this._targetElement.getAttribute(\"aria-expanded\")) {\n this._targetElement.setAttribute(\"aria-expanded\", \"false\");\n }\n this._targetElement = element;\n if (element) {\n element.setAttribute(\"aria-expanded\", \"false\");\n }\n this.addTargetEventListener(this.targetElement);\n this.updatePopper();\n }\n\n public get targetSelector(): string | null {\n return this.getAttribute(\"target-selector\");\n }\n\n public set targetSelector(selector: string) {\n if (selector) {\n this.setAttribute(\"target-selector\", selector);\n } else {\n this.removeAttribute(\"target-selector\");\n }\n }\n\n public get modal(): boolean {\n return this.hasAttribute(\"modal\");\n }\n\n public set modal(modal: boolean) {\n if (modal) {\n this.setAttribute(\"modal\", \"\");\n } else {\n this.removeAttribute(\"modal\");\n }\n }\n\n public get popoverFor(): string | null {\n return this.getAttribute(\"popover-for\");\n }\n\n public set popoverFor(popoverFor: string) {\n if (popoverFor) {\n this.setAttribute(\"popover-for\", popoverFor);\n } else {\n this.removeAttribute(\"popover-for\");\n }\n }\n\n public get flipPriority(): Placement[] | undefined {\n return this._flipPriority;\n }\n\n public set flipPriority(priority: Placement[] | undefined) {\n if (priority && priority.length > 0) {\n this._flipPriority = priority;\n } else {\n this._flipPriority = undefined;\n }\n this.reConfigurePopper();\n }\n\n public get offset(): number {\n return this.getAttribute(\"offset\") ? parseInt(this.getAttribute(\"offset\") ?? \"0\") : 0;\n }\n\n public set offset(offset: number) {\n if (offset) {\n this.setAttribute(\"offset\", offset.toString());\n } else {\n this.removeAttribute(\"offset\");\n }\n this.reConfigurePopper();\n }\n\n private reConfigurePopper() {\n if (this._popper) {\n this.configurePopper();\n }\n }\n\n public get noArrow(): boolean {\n return this.hasAttribute(\"no-arrow\");\n }\n\n public set noArrow(noArrow: boolean) {\n if (noArrow) {\n this.setAttribute(\"no-arrow\", \"\");\n } else {\n this.removeAttribute(\"no-arrow\");\n }\n }\n\n static get observedAttributes(): string[] {\n return [\"placement\", \"target-selector\", \"trigger-type\"];\n }\n\n public attributeChangedCallback(name: string, oldValue: string): void {\n switch (name) {\n case \"placement\": {\n this.updatePopper();\n break;\n }\n case \"trigger-type\": {\n this.removeTargetEventListener(this.targetElement);\n this.addTargetEventListener(this.targetElement);\n break;\n }\n case \"target-selector\": {\n this.handleTargetSelectorChange(oldValue);\n break;\n }\n }\n }\n\n public connectedCallback(): void {\n if (!this._firstUpdated) {\n this.firstUpdated();\n this._firstUpdated = true;\n }\n if (this.targetElement) {\n this.addTargetEventListener(this.targetElement);\n } else if (this.targetSelector) {\n // The browser is currently attaching html nodes to the dom tree, the target may not be present in it yet.\n requestAnimationFrame(() => {\n if (this.isConnected) {\n this.handleTargetSelectorChange(null);\n }\n });\n }\n\n this._arrow = document.createElement(\"div\");\n this._arrow.classList.add(\"popover-arrow\");\n this._arrow.setAttribute(\"data-popper-arrow\", \"\");\n this._arrow.style.display = \"flex\";\n this._arrow.innerHTML = this.arrowSvg;\n }\n\n public disconnectedCallback(): void {\n if (this.targetElement) {\n this.removeTargetEventListener(this.targetElement);\n this.removeTargetClassForOpen(this.targetElement);\n }\n if (this._resizeObserver) {\n this._resizeObserver.disconnect();\n this._resizeObserver = undefined;\n }\n }\n\n public toggle = (): void => {\n this.open = !this.open;\n };\n\n public show = (): void => {\n this.open = true;\n };\n\n public hide = (): void => {\n this.open = false;\n };\n\n private firstUpdated(): void {\n this.style.display = \"none\";\n this.triggerType = this.triggerType || \"click\";\n this.placement = this.placement || \"auto\";\n }\n\n private get open(): boolean {\n return this._open;\n }\n\n private set open(open: boolean) {\n if (open !== this._open) {\n this._open = open;\n this.handleOpenChange();\n }\n }\n\n private handleOpenChange(): void {\n if (this.open) {\n if (!this._popper) {\n this.configurePopper();\n }\n if (this._container == null) {\n return;\n }\n\n this._container.innerHTML = \"\";\n const style = document.createElement(\"style\");\n style.innerHTML = `#${this.popoverContainerId} {\n box-shadow: var(--effect-shadow-strong, 1px 4px 24px 0 rgba(17, 17, 17, 0.5));\n border: 1px solid var(--color-border-default, #d4d4d4);\n border-radius: var(--radius-s, 4px);\n box-sizing: border-box;\n z-index: 20000;\n\n > *:not(.popover-arrow) {\n border-radius: var(--radius-s, 4px);\n clip-path: inset(0 round var(--radius-s, 4px));\n }\n }`;\n this._container.appendChild(style);\n if (this.popoverFor) {\n this._container.setAttribute(\"popover-for\", this.popoverFor);\n }\n if (this.content) {\n this._container.prepend(this.content);\n Object.assign(this.content.style, {\n position: \"relative\",\n display: \"block\",\n zIndex: 1,\n });\n window.requestAnimationFrame(() => {\n let backgroundColor = getComputedStyle(this.content).backgroundColor;\n if (backgroundColor == \"rgba(0, 0, 0, 0)\") {\n this.content.style.background = backgroundColor = \"var(--color-bg-default, #ffffff)\";\n }\n if (!this._arrow) {\n return;\n }\n const arrowBackground = this._arrow.querySelector(\".arrow-background\") as HTMLElement;\n if (arrowBackground) {\n arrowBackground.style.fill = backgroundColor;\n }\n });\n }\n this.ensureArrowIsAdded();\n this.ownerDocument.body.appendChild(this._container);\n this.updatePopper();\n this.setAttribute(\"open\", \"\");\n\n if (this.modal) {\n window.addEventListener(\"click\", this.hideIfExternalTarget, { capture: true });\n window.addEventListener(\"focus\", this.hideIfExternalTarget, { capture: true });\n }\n if (this.targetElement) {\n this.addTargetClassForOpen(this.targetElement);\n this.targetElement.setAttribute(\"aria-expanded\", \"true\");\n }\n this.dispatchEvent(new CustomEvent(\"sd-popover-open\"));\n\n this._container.addEventListener(\"keydown\", this.handleTabKeyDown);\n } else {\n if (this._container != null) {\n this.ownerDocument.body.removeChild(this._container);\n }\n\n this.removeAttribute(\"open\");\n window.removeEventListener(\"click\", this.hideIfExternalTarget, { capture: true });\n window.removeEventListener(\"focus\", this.hideIfExternalTarget, { capture: true });\n\n if (this.targetElement) {\n this.removeTargetClassForOpen(this.targetElement);\n this.targetElement.setAttribute(\"aria-expanded\", \"false\");\n }\n this.dispatchEvent(new CustomEvent(\"sd-popover-close\"));\n\n if (this._container != null) {\n this._container.removeEventListener(\"keydown\", this.handleTabKeyDown);\n }\n }\n }\n\n private hideIfExternalTarget = (event: Event) => {\n const target = event.target;\n if (\n !(target instanceof HTMLElement) ||\n this._container == null ||\n this.targetElement == null ||\n (!this._container.contains(target) && !this.targetElement.contains(target))\n ) {\n this.hide();\n }\n };\n\n private handleTabKeyDown = (event: KeyboardEvent) => {\n if (event.key !== \"Tab\") {\n return;\n }\n\n const shift = event.shiftKey;\n let nextInsidePopover: HTMLElement | null = null;\n\n const target = event.target as Element | null;\n const root = this.content;\n\n if (target instanceof HTMLElement && root) {\n nextInsidePopover = this.findNextFocusableAfter(target, root, !shift);\n }\n\n if (nextInsidePopover) {\n // Let browser handle tabbing inside popover\n return;\n }\n\n // No more focusable elements inside popover → close it\n event.preventDefault();\n this.open = false;\n\n const next = this.findNextFocusableAfter(this.targetElement, null, !shift);\n next?.focus();\n };\n\n private handleTargetSelectorChange(oldValue: string | null | undefined): void {\n if (oldValue != null) {\n const oldTarget = document.querySelector<HTMLElement>(oldValue);\n if (oldTarget) {\n this.removeTargetEventListener(oldTarget);\n this.removeTargetClassForOpen(oldTarget);\n }\n }\n if (this.targetSelector) {\n const target = document.querySelector(this.targetSelector);\n if (target instanceof HTMLElement) {\n this.targetElement = target;\n }\n\n this.addTargetEventListener(this.targetElement);\n }\n }\n\n private addTargetEventListener(target: HTMLElement | undefined): void {\n if (target) {\n switch (this.triggerType) {\n case \"hover\": {\n target.addEventListener(\"mouseenter\", this.show);\n target.addEventListener(\"mouseleave\", this.hide);\n break;\n }\n case \"click\": {\n target.addEventListener(\"click\", this.toggle);\n break;\n }\n }\n }\n }\n\n private removeTargetEventListener(target: HTMLElement | undefined): void {\n if (target) {\n switch (this.triggerType) {\n case \"hover\": {\n target.removeEventListener(\"mouseenter\", this.show);\n target.removeEventListener(\"mouseleave\", this.hide);\n break;\n }\n case \"click\": {\n target.removeEventListener(\"click\", this.toggle);\n break;\n }\n }\n }\n }\n\n private configurePopper(): void {\n this.createContentContainer();\n // In popper.js 2 the arrow needs to be added before calling Popper#createPopper\n this.ensureArrowIsAdded();\n\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const popover = this;\n const options: Options = {\n placement: popover.placement as Placement,\n strategy: \"absolute\",\n modifiers: [\n {\n name: \"computeStyles\",\n options: {\n gpuAcceleration: true,\n },\n },\n {\n name: \"flip\",\n options: {\n fallbackPlacements: popover._flipPriority,\n },\n },\n {\n name: \"offset\",\n options: {\n offset: () => {\n return [\n 0,\n popover.noArrow\n ? 0 + popover.offset\n : (this._arrow?.clientHeight ?? 0 + popover.offset),\n ];\n },\n },\n },\n {\n name: \"arrow\",\n options: {\n padding: 10, // Avoid to reach the edges of the popper element with the arrow\n },\n },\n {\n name: \"resetArrowStyles\",\n enabled: true,\n phase: \"beforeWrite\",\n fn({ state }) {\n if (popover._arrow && state.styles.arrow) {\n Object.assign(popover._arrow.style, {\n top: state.styles.arrow.top || \"\",\n left: state.styles.arrow.left || \"\",\n bottom: state.styles.arrow.bottom || \"\",\n right: state.styles.arrow.right || \"\",\n });\n }\n },\n },\n {\n name: \"onUpdate\",\n enabled: true,\n phase: \"afterWrite\",\n fn({ state }) {\n popover.updateArrow(state.placement);\n },\n },\n ],\n };\n this._popper = createPopper(this.targetElement!, this._container!, options);\n }\n\n private createContentContainer(): void {\n this._container = document.createElement(\"div\");\n this._container.id = this.popoverContainerId;\n this._container.classList.add(\"popover-container\");\n this._container.tabIndex = 0;\n if (this._resizeObserver) {\n this._resizeObserver.disconnect();\n }\n this._resizeObserver = new ResizeObserver(() => {\n if (this._popper) {\n void this._popper.update();\n }\n });\n this._resizeObserver.observe(this._container);\n }\n\n private ensureArrowIsAdded() {\n if (this._container && this._arrow && !this.noArrow && !this._container.contains(this._arrow)) {\n this._container.appendChild(this._arrow);\n }\n }\n\n public updatePopper(): void {\n if (this._popper) {\n this._popper.state.elements.reference = this.targetElement ?? document.body;\n this._popper.state.options.placement = this.placement;\n\n if (this.open) {\n void this._popper.update();\n }\n }\n }\n\n private updateArrow(placement: Placement): void {\n if (this._arrow) {\n const arrowVariant = this.getArrowVariant(placement);\n this._arrow.setAttribute(\"variant\", arrowVariant);\n if (this._content) {\n const svg = this._arrow.querySelector(\"svg\")!;\n\n const arrowWidth = this._arrow.clientWidth;\n const arrowHeight = this._arrow.clientHeight;\n const verticalOffset = `-${arrowHeight - arrowOverlapOffset}px`;\n\n const horizontalTransformationOffset = (arrowWidth - arrowHeight) / 2;\n // Note that arrowHeight is used on purpose for the horizontalOffset\n // as this is the height of the unrotated wrapper div which defines the gap between the\n // reference element and the popover.\n const horizontalOffset = `-${arrowHeight + horizontalTransformationOffset - arrowOverlapOffset}px`;\n\n switch (arrowVariant) {\n case \"bottom\": {\n this._arrow.style.top = verticalOffset;\n svg.style.transform = \"rotate(180deg)\";\n break;\n }\n case \"top\": {\n this._arrow.style.bottom = verticalOffset;\n svg.style.transform = \"rotate(0deg)\";\n break;\n }\n case \"left\": {\n this._arrow.style.right = horizontalOffset;\n svg.style.transform = \"rotate(270deg)\";\n break;\n }\n case \"right\": {\n this._arrow.style.left = horizontalOffset;\n svg.style.transform = \"rotate(90deg)\";\n break;\n }\n }\n }\n }\n }\n\n private getArrowVariant(placement: Placement): ArrowVariant {\n if (placement.indexOf(\"bottom\") !== -1) {\n return \"bottom\";\n } else if (placement.indexOf(\"top\") !== -1) {\n return \"top\";\n } else if (placement.indexOf(\"left\") !== -1) {\n return \"left\";\n } else if (placement.indexOf(\"right\") !== -1) {\n return \"right\";\n }\n return \"bottom\";\n }\n\n private get content(): HTMLElement {\n if (!this._content) {\n this._content = this.firstElementChild as HTMLElement;\n this._content.setAttribute(\"data-popper-content\", \"\");\n }\n return this._content;\n }\n\n private addTargetClassForOpen(target: HTMLElement): void {\n if (target) {\n target.classList.add(targetClassOpen);\n }\n }\n\n private removeTargetClassForOpen(target: HTMLElement): void {\n if (target) {\n target.classList.remove(targetClassOpen);\n }\n }\n\n private findNextFocusableAfter(\n trigger: HTMLElement | undefined | null,\n root: HTMLElement | undefined | null,\n forward: boolean,\n ): HTMLElement | null {\n if (!trigger) return null;\n\n const effectiveRoot = root ?? document.body;\n\n const walker = document.createTreeWalker(effectiveRoot, NodeFilter.SHOW_ELEMENT, {\n acceptNode(node) {\n const el = node as HTMLElement;\n\n return el.tabIndex >= 0 && !el.hidden && el.offsetParent !== null\n ? NodeFilter.FILTER_ACCEPT\n : NodeFilter.FILTER_SKIP;\n },\n });\n\n walker.currentNode = trigger;\n\n const nextNode = forward ? walker.nextNode() : walker.previousNode();\n\n return nextNode as HTMLElement | null;\n }\n}\n\nPopover.ensureDefined();\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cas-smartdesign/popover",
3
- "version": "6.0.0",
3
+ "version": "6.0.1",
4
4
  "description": "A popover element which appears next to its target when triggered",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "files": [
@@ -19,8 +19,8 @@
19
19
  "@popperjs/core": "^2.11.8"
20
20
  },
21
21
  "devDependencies": {
22
- "@cas-smartdesign/element-preview": "^1.1.0",
23
- "@cas-smartdesign/license-generator": "^1.10.0"
22
+ "@cas-smartdesign/license-generator": "^1.10.0",
23
+ "@cas-smartdesign/element-preview": "^1.1.0"
24
24
  },
25
25
  "peerDependencies": {
26
26
  "@cas-smartdesign/design-tokens": "^3.0.2"