@quandis/qbo4.ui 4.0.1-CI-20250106-195358 → 4.0.1-CI-20250106-222914

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.
@@ -89,10 +89,10 @@ ${Array.from(uo.keys()).map((t=>We`<div class="col-3">
89
89
  </li>
90
90
  </div>
91
91
  `))}
92
- </div>`}renderIcon(e){null!=e.icon&&void 0!==e.icon||(console.warn("qbo-icon: icon attribute is required"),e.icon="warning");const t=uo.has(e.icon)?uo.get(e.icon):e.icon;return We`<svg width="${e.width}" height="${e.width}" fill="${e.fill}" ?class=${e.getAttribute("class")}><use href="${e.sprite??lo.spriteUrl}#${t}"></use></svg>`}render(){switch(this.type){case"icon":case"button":case"toggle":default:return this.renderIcon(this);case"standard":return this.renderStandard(this);case"all":return We`${so(this.renderAll(this),We`Loading...`)}`}}};co([ft(),bo("design:type",String)],po.prototype,"type",void 0),co([ft(),bo("design:type",Object)],po.prototype,"sprite",void 0),co([ft(),bo("design:type",Object)],po.prototype,"icon",void 0),co([ft(),bo("design:type",String)],po.prototype,"height",void 0),co([ft(),bo("design:type",String)],po.prototype,"width",void 0),co([ft(),bo("design:type",String)],po.prototype,"viewbox",void 0),co([ft(),bo("design:type",String)],po.prototype,"fill",void 0),co([ft(),bo("design:type",Object)],po.prototype,"backgroundColor",void 0),co([ft(),bo("design:type",Boolean)],po.prototype,"disabled",void 0),co([ft({type:Boolean,reflect:!0}),bo("design:type",Object)],po.prototype,"renderInHost",void 0),co([ft({type:Boolean,reflect:!0}),bo("design:type",Boolean)],po.prototype,"selected",void 0),po=lo=co([pt("qbo-icon")],po);const mo=Math.min,ho=Math.max,fo=Math.round,go=(Math.floor,e=>({x:e,y:e})),vo={left:"right",right:"left",bottom:"top",top:"bottom"},yo={start:"end",end:"start"};function qo(e,t,o){return ho(e,mo(t,o))}function wo(e,t){return"function"==typeof e?e(t):e}function xo(e){return e.split("-")[0]}function ko(e){return e.split("-")[1]}function Co(e){return"x"===e?"y":"x"}function Eo(e){return"y"===e?"height":"width"}function $o(e){return["top","bottom"].includes(xo(e))?"y":"x"}function Oo(e){return Co($o(e))}function So(e){return e.replace(/start|end/g,(e=>yo[e]))}function _o(e){return e.replace(/left|right|bottom|top/g,(e=>vo[e]))}function Ao(e){const{x:t,y:o,width:n,height:r}=e;return{width:n,height:r,top:o,left:t,right:t+n,bottom:o+r,x:t,y:o}}function Ro(e,t,o){let{reference:n,floating:r}=e;const i=$o(t),a=Oo(t),s=Eo(a),l=xo(t),d="y"===i,c=n.x+n.width/2-r.width/2,b=n.y+n.height/2-r.height/2,u=n[s]/2-r[s]/2;let p;switch(l){case"top":p={x:c,y:n.y-r.height};break;case"bottom":p={x:c,y:n.y+n.height};break;case"right":p={x:n.x+n.width,y:b};break;case"left":p={x:n.x-r.width,y:b};break;default:p={x:n.x,y:n.y}}switch(ko(t)){case"start":p[a]-=u*(o&&d?-1:1);break;case"end":p[a]+=u*(o&&d?-1:1)}return p}async function Uo(e,t){var o;void 0===t&&(t={});const{x:n,y:r,platform:i,rects:a,elements:s,strategy:l}=e,{boundary:d="clippingAncestors",rootBoundary:c="viewport",elementContext:b="floating",altBoundary:u=!1,padding:p=0}=wo(t,e),m=function(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}(p),h=s[u?"floating"===b?"reference":"floating":b],f=Ao(await i.getClippingRect({element:null==(o=await(null==i.isElement?void 0:i.isElement(h)))||o?h:h.contextElement||await(null==i.getDocumentElement?void 0:i.getDocumentElement(s.floating)),boundary:d,rootBoundary:c,strategy:l})),g="floating"===b?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,v=await(null==i.getOffsetParent?void 0:i.getOffsetParent(s.floating)),y=await(null==i.isElement?void 0:i.isElement(v))&&await(null==i.getScale?void 0:i.getScale(v))||{x:1,y:1},q=Ao(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:g,offsetParent:v,strategy:l}):g);return{top:(f.top-q.top+m.top)/y.y,bottom:(q.bottom-f.bottom+m.bottom)/y.y,left:(f.left-q.left+m.left)/y.x,right:(q.right-f.right+m.right)/y.x}}function jo(){return"undefined"!=typeof window}function Po(e){return zo(e)?(e.nodeName||"").toLowerCase():"#document"}function To(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function Mo(e){var t;return null==(t=(zo(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function zo(e){return!!jo()&&(e instanceof Node||e instanceof To(e).Node)}function Do(e){return!!jo()&&(e instanceof Element||e instanceof To(e).Element)}function Lo(e){return!!jo()&&(e instanceof HTMLElement||e instanceof To(e).HTMLElement)}function Fo(e){return!(!jo()||"undefined"==typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof To(e).ShadowRoot)}function Io(e){const{overflow:t,overflowX:o,overflowY:n,display:r}=Wo(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+o)&&!["inline","contents"].includes(r)}function Ho(e){return["table","td","th"].includes(Po(e))}function Bo(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(e){return!1}}))}function No(e){const t=Vo(),o=Do(e)?Wo(e):e;return"none"!==o.transform||"none"!==o.perspective||!!o.containerType&&"normal"!==o.containerType||!t&&!!o.backdropFilter&&"none"!==o.backdropFilter||!t&&!!o.filter&&"none"!==o.filter||["transform","perspective","filter"].some((e=>(o.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(o.contain||"").includes(e)))}function Vo(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function Ko(e){return["html","body","#document"].includes(Po(e))}function Wo(e){return To(e).getComputedStyle(e)}function Jo(e){return Do(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Qo(e){if("html"===Po(e))return e;const t=e.assignedSlot||e.parentNode||Fo(e)&&e.host||Mo(e);return Fo(t)?t.host:t}function Xo(e){const t=Qo(e);return Ko(t)?e.ownerDocument?e.ownerDocument.body:e.body:Lo(t)&&Io(t)?t:Xo(t)}function Yo(e,t,o){var n;void 0===t&&(t=[]),void 0===o&&(o=!0);const r=Xo(e),i=r===(null==(n=e.ownerDocument)?void 0:n.body),a=To(r);if(i){const e=Zo(a);return t.concat(a,a.visualViewport||[],Io(r)?r:[],e&&o?Yo(e):[])}return t.concat(r,Yo(r,[],o))}function Zo(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Go(e){const t=Wo(e);let o=parseFloat(t.width)||0,n=parseFloat(t.height)||0;const r=Lo(e),i=r?e.offsetWidth:o,a=r?e.offsetHeight:n,s=fo(o)!==i||fo(n)!==a;return s&&(o=i,n=a),{width:o,height:n,$:s}}function en(e){return Do(e)?e:e.contextElement}function tn(e){const t=en(e);if(!Lo(t))return go(1);const o=t.getBoundingClientRect(),{width:n,height:r,$:i}=Go(t);let a=(i?fo(o.width):o.width)/n,s=(i?fo(o.height):o.height)/r;return a&&Number.isFinite(a)||(a=1),s&&Number.isFinite(s)||(s=1),{x:a,y:s}}const on=go(0);function nn(e){const t=To(e);return Vo()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:on}function rn(e,t,o,n){void 0===t&&(t=!1),void 0===o&&(o=!1);const r=e.getBoundingClientRect(),i=en(e);let a=go(1);t&&(n?Do(n)&&(a=tn(n)):a=tn(e));const s=function(e,t,o){return void 0===t&&(t=!1),!(!o||t&&o!==To(e))&&t}(i,o,n)?nn(i):go(0);let l=(r.left+s.x)/a.x,d=(r.top+s.y)/a.y,c=r.width/a.x,b=r.height/a.y;if(i){const e=To(i),t=n&&Do(n)?To(n):n;let o=e,r=Zo(o);for(;r&&n&&t!==o;){const e=tn(r),t=r.getBoundingClientRect(),n=Wo(r),i=t.left+(r.clientLeft+parseFloat(n.paddingLeft))*e.x,a=t.top+(r.clientTop+parseFloat(n.paddingTop))*e.y;l*=e.x,d*=e.y,c*=e.x,b*=e.y,l+=i,d+=a,o=To(r),r=Zo(o)}}return Ao({width:c,height:b,x:l,y:d})}function an(e,t){const o=Jo(e).scrollLeft;return t?t.left+o:rn(Mo(e)).left+o}function sn(e,t,o){void 0===o&&(o=!1);const n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-(o?0:an(e,n)),y:n.top+t.scrollTop}}function ln(e,t,o){let n;if("viewport"===t)n=function(e,t){const o=To(e),n=Mo(e),r=o.visualViewport;let i=n.clientWidth,a=n.clientHeight,s=0,l=0;if(r){i=r.width,a=r.height;const e=Vo();(!e||e&&"fixed"===t)&&(s=r.offsetLeft,l=r.offsetTop)}return{width:i,height:a,x:s,y:l}}(e,o);else if("document"===t)n=function(e){const t=Mo(e),o=Jo(e),n=e.ownerDocument.body,r=ho(t.scrollWidth,t.clientWidth,n.scrollWidth,n.clientWidth),i=ho(t.scrollHeight,t.clientHeight,n.scrollHeight,n.clientHeight);let a=-o.scrollLeft+an(e);const s=-o.scrollTop;return"rtl"===Wo(n).direction&&(a+=ho(t.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:s}}(Mo(e));else if(Do(t))n=function(e,t){const o=rn(e,!0,"fixed"===t),n=o.top+e.clientTop,r=o.left+e.clientLeft,i=Lo(e)?tn(e):go(1);return{width:e.clientWidth*i.x,height:e.clientHeight*i.y,x:r*i.x,y:n*i.y}}(t,o);else{const o=nn(e);n={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return Ao(n)}function dn(e,t){const o=Qo(e);return!(o===t||!Do(o)||Ko(o))&&("fixed"===Wo(o).position||dn(o,t))}function cn(e,t,o){const n=Lo(t),r=Mo(t),i="fixed"===o,a=rn(e,!0,i,t);let s={scrollLeft:0,scrollTop:0};const l=go(0);if(n||!n&&!i)if(("body"!==Po(t)||Io(r))&&(s=Jo(t)),n){const e=rn(t,!0,i,t);l.x=e.x+t.clientLeft,l.y=e.y+t.clientTop}else r&&(l.x=an(r));const d=!r||n||i?go(0):sn(r,s);return{x:a.left+s.scrollLeft-l.x-d.x,y:a.top+s.scrollTop-l.y-d.y,width:a.width,height:a.height}}function bn(e){return"static"===Wo(e).position}function un(e,t){if(!Lo(e)||"fixed"===Wo(e).position)return null;if(t)return t(e);let o=e.offsetParent;return Mo(e)===o&&(o=o.ownerDocument.body),o}function pn(e,t){const o=To(e);if(Bo(e))return o;if(!Lo(e)){let t=Qo(e);for(;t&&!Ko(t);){if(Do(t)&&!bn(t))return t;t=Qo(t)}return o}let n=un(e,t);for(;n&&Ho(n)&&bn(n);)n=un(n,t);return n&&Ko(n)&&bn(n)&&!No(n)?o:n||function(e){let t=Qo(e);for(;Lo(t)&&!Ko(t);){if(No(t))return t;if(Bo(t))return null;t=Qo(t)}return null}(e)||o}const mn={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:o,offsetParent:n,strategy:r}=e;const i="fixed"===r,a=Mo(n),s=!!t&&Bo(t.floating);if(n===a||s&&i)return o;let l={scrollLeft:0,scrollTop:0},d=go(1);const c=go(0),b=Lo(n);if((b||!b&&!i)&&(("body"!==Po(n)||Io(a))&&(l=Jo(n)),Lo(n))){const e=rn(n);d=tn(n),c.x=e.x+n.clientLeft,c.y=e.y+n.clientTop}const u=!a||b||i?go(0):sn(a,l,!0);return{width:o.width*d.x,height:o.height*d.y,x:o.x*d.x-l.scrollLeft*d.x+c.x+u.x,y:o.y*d.y-l.scrollTop*d.y+c.y+u.y}},getDocumentElement:Mo,getClippingRect:function(e){let{element:t,boundary:o,rootBoundary:n,strategy:r}=e;const i=[..."clippingAncestors"===o?Bo(t)?[]:function(e,t){const o=t.get(e);if(o)return o;let n=Yo(e,[],!1).filter((e=>Do(e)&&"body"!==Po(e))),r=null;const i="fixed"===Wo(e).position;let a=i?Qo(e):e;for(;Do(a)&&!Ko(a);){const t=Wo(a),o=No(a);o||"fixed"!==t.position||(r=null),(i?!o&&!r:!o&&"static"===t.position&&r&&["absolute","fixed"].includes(r.position)||Io(a)&&!o&&dn(e,a))?n=n.filter((e=>e!==a)):r=t,a=Qo(a)}return t.set(e,n),n}(t,this._c):[].concat(o),n],a=i[0],s=i.reduce(((e,o)=>{const n=ln(t,o,r);return e.top=ho(n.top,e.top),e.right=mo(n.right,e.right),e.bottom=mo(n.bottom,e.bottom),e.left=ho(n.left,e.left),e}),ln(t,a,r));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},getOffsetParent:pn,getElementRects:async function(e){const t=this.getOffsetParent||pn,o=this.getDimensions,n=await o(e.floating);return{reference:cn(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:o}=Go(e);return{width:t,height:o}},getScale:tn,isElement:Do,isRTL:function(e){return"rtl"===Wo(e).direction}},hn=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:n,placement:r}=t,{mainAxis:i=!0,crossAxis:a=!1,limiter:s={fn:e=>{let{x:t,y:o}=e;return{x:t,y:o}}},...l}=wo(e,t),d={x:o,y:n},c=await Uo(t,l),b=$o(xo(r)),u=Co(b);let p=d[u],m=d[b];if(i){const e="y"===u?"bottom":"right";p=qo(p+c["y"===u?"top":"left"],p,p-c[e])}if(a){const e="y"===b?"bottom":"right";m=qo(m+c["y"===b?"top":"left"],m,m-c[e])}const h=s.fn({...t,[u]:p,[b]:m});return{...h,data:{x:h.x-o,y:h.y-n,enabled:{[u]:i,[b]:a}}}}}},fn=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var o,n;const{placement:r,middlewareData:i,rects:a,initialPlacement:s,platform:l,elements:d}=t,{mainAxis:c=!0,crossAxis:b=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:h=!0,...f}=wo(e,t);if(null!=(o=i.arrow)&&o.alignmentOffset)return{};const g=xo(r),v=$o(s),y=xo(s)===s,q=await(null==l.isRTL?void 0:l.isRTL(d.floating)),w=u||(y||!h?[_o(s)]:function(e){const t=_o(e);return[So(e),t,So(t)]}(s)),x="none"!==m;!u&&x&&w.push(...function(e,t,o,n){const r=ko(e);let i=function(e,t,o){const n=["left","right"],r=["right","left"],i=["top","bottom"],a=["bottom","top"];switch(e){case"top":case"bottom":return o?t?r:n:t?n:r;case"left":case"right":return t?i:a;default:return[]}}(xo(e),"start"===o,n);return r&&(i=i.map((e=>e+"-"+r)),t&&(i=i.concat(i.map(So)))),i}(s,h,m,q));const k=[s,...w],C=await Uo(t,f),E=[];let $=(null==(n=i.flip)?void 0:n.overflows)||[];if(c&&E.push(C[g]),b){const e=function(e,t,o){void 0===o&&(o=!1);const n=ko(e),r=Oo(e),i=Eo(r);let a="x"===r?n===(o?"end":"start")?"right":"left":"start"===n?"bottom":"top";return t.reference[i]>t.floating[i]&&(a=_o(a)),[a,_o(a)]}(r,a,q);E.push(C[e[0]],C[e[1]])}if($=[...$,{placement:r,overflows:E}],!E.every((e=>e<=0))){var O,S;const e=((null==(O=i.flip)?void 0:O.index)||0)+1,t=k[e];if(t)return{data:{index:e,overflows:$},reset:{placement:t}};let o=null==(S=$.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:S.placement;if(!o)switch(p){case"bestFit":{var _;const e=null==(_=$.filter((e=>{if(x){const t=$o(e.placement);return t===v||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:_[0];e&&(o=e);break}case"initialPlacement":o=s}if(r!==o)return{reset:{placement:o}}}return{}}}},gn=(e,t,o)=>{const n=new Map,r={platform:mn,...o},i={...r.platform,_c:n};return(async(e,t,o)=>{const{placement:n="bottom",strategy:r="absolute",middleware:i=[],platform:a}=o,s=i.filter(Boolean),l=await(null==a.isRTL?void 0:a.isRTL(t));let d=await a.getElementRects({reference:e,floating:t,strategy:r}),{x:c,y:b}=Ro(d,n,l),u=n,p={},m=0;for(let o=0;o<s.length;o++){const{name:i,fn:h}=s[o],{x:f,y:g,data:v,reset:y}=await h({x:c,y:b,initialPlacement:n,placement:u,strategy:r,middlewareData:p,rects:d,platform:a,elements:{reference:e,floating:t}});c=null!=f?f:c,b=null!=g?g:b,p={...p,[i]:{...p[i],...v}},y&&m<=50&&(m++,"object"==typeof y&&(y.placement&&(u=y.placement),y.rects&&(d=!0===y.rects?await a.getElementRects({reference:e,floating:t,strategy:r}):y.rects),({x:c,y:b}=Ro(d,u,l))),o=-1)}return{x:c,y:b,placement:u,strategy:r,middlewareData:p}})(e,t,{...r,platform:i})};var vn=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},yn=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};class qn extends bt{constructor(){super(...arguments),this.placement="bottom-start",this.type="dropdown",this.target=null,this.isOpen=!1,this.middleware=[fn(),hn()],this.handleMenuOpen=e=>{e.preventDefault(),e.stopPropagation(),e.detail.menu!==this&&this.isOpen&&this.closeMenu()},this.handleOutsideClick=e=>{e.target,e.composedPath().includes(this)||this.closeMenu()},this.showContextMenu=e=>{const t=e;e.preventDefault(),e.stopPropagation(),this.isOpen=!0,this.menuContainer.classList.toggle("open",this.isOpen);const o={getBoundingClientRect:()=>({x:t.clientX,y:t.clientY,width:0,height:0,top:t.clientY,left:t.clientX,right:t.clientX,bottom:t.clientY})};this.updateMenuPosition(o)},this.toggleMenu=e=>{e.target;const t=e.composedPath();t.includes(this.triggerButton)&&!t.includes(this.menuContainer)&&(this.isOpen=!this.isOpen,this.menuContainer.classList.toggle("open",this.isOpen),this.isOpen&&(this.updateMenuPosition(this.triggerButton),document.dispatchEvent(new CustomEvent("qbo-menu-open",{bubbles:!0,composed:!0,detail:{menu:this}}))))}}static{this.styles=le``}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this.handleOutsideClick)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.handleOutsideClick),"context"===this.type?this.triggerButton.removeEventListener("contextmenu",this.showContextMenu):this.triggerButton.removeEventListener("click",this.toggleMenu)}firstUpdated(e){super.firstUpdated(e),this.triggerButton=this.querySelector("*[data-trigger]")||this.querySelector("button")||this.parentElement,this.menuContainer=this.querySelector("*[data-content]")||this.querySelector("aside")||this.querySelector("menu"),"context"===this.type?(this.target&&(this.triggerButton=this.closest(this.target)||(()=>{const e=this.getRootNode();return e instanceof ShadowRoot||e instanceof Document?e.querySelector(this.target):null})()||document.querySelector(this.target)||document),this.triggerButton.addEventListener("contextmenu",this.showContextMenu)):null!=this.triggerButton&&this.triggerButton.addEventListener("click",this.toggleMenu)}closeMenu(){this.isOpen=!1,this.menuContainer.classList.remove("open")}async updateMenuPosition(e){console.log(e,typeof e);const{x:t,y:o}=await gn(e,this.menuContainer,{placement:this.placement,middleware:this.middleware,strategy:"fixed"});Object.assign(this.menuContainer.style,{left:`${t}px`,top:`${o}px`})}render(){return We`<slot></slot>`}}vn([ft({type:String}),yn("design:type",String)],qn.prototype,"placement",void 0),vn([ft(),yn("design:type",String)],qn.prototype,"type",void 0),vn([ft(),yn("design:type",Object)],qn.prototype,"target",void 0),vn([gt(),yn("design:type",Object)],qn.prototype,"isOpen",void 0),customElements.get("qbo-menu")||customElements.define("qbo-menu",qn);var wn,xn=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},kn=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};let Cn=class extends bt{constructor(){super(...arguments),this.renderInHost=!0,this.continuous=!1,this.interimResults=!1,this.maxAlternatives=1,this.for="input",this.class="input-group-text bi bi-headset",this.activeClass="bg-primary-subtle",this._recognition=null,this.target=null,this.listening=!1}static{wn=this}static{this.activeInstance=null}connectedCallback(){super.connectedCallback(),this.addEventListener("click",this.listen);const e=new(window.SpeechRecognition||window.webkitSpeechRecognition);e.continuous=this.continuous,e.interimResults=this.interimResults,e.maxAlternatives=this.maxAlternatives,e.onresult=e=>{this.onResult(e)},e.onspeechend=e=>{this.stop(e)},e.onerror=e=>{this.error(e)},this._recognition=e,this.target=document.getElementById(this.for)||this.querySelector(this.for)||this.parentElement?.querySelector(this.for),null==this.target&&console.log(`qbo-microphone: no target found for ${this.for}`)}disconnectedCallback(){this.removeEventListener("click",this.listen),super.disconnectedCallback()}onResult(e){const t=e.results[e.results.length-1][0].transcript;if(console.log("Result: "+t),null==this.target)return;const o=this.target;if(o instanceof HTMLInputElement)"radio"===o.type?o.value===t&&(o.checked=!0):this.continuous?o.value+=t:o.value=t;else if(o instanceof HTMLTextAreaElement)this.continuous?o.value+=t:o.value=t;else if(o instanceof HTMLSelectElement)for(let e=0;e<o.options.length;e++)if(o.options[e].value===t||o.options[e].text===t){o.selectedIndex=e;break}}listen(e){this.listening?this.stop(e):this.start()}start(){this.listening=!0,wn.activeInstance=this,this.activeClass&&this.classList.add(this.activeClass),console.log("listening"),this._recognition.start()}stop(e){this.listening=!1,wn.activeInstance=null,this.activeClass&&this.classList.remove(this.activeClass),console.log("stopped listening"),this._recognition.stop(),this._recognition.abort()}error(e){console.log("Error during speech recognition:",e)}render(){return We`<slot></slot>`}};xn([ft({type:Boolean}),kn("design:type",Object)],Cn.prototype,"renderInHost",void 0),xn([ft({type:Boolean}),kn("design:type",Object)],Cn.prototype,"continuous",void 0),xn([ft({type:Boolean}),kn("design:type",Object)],Cn.prototype,"interimResults",void 0),xn([ft({type:Number}),kn("design:type",Object)],Cn.prototype,"maxAlternatives",void 0),xn([ft({type:String}),kn("design:type",Object)],Cn.prototype,"for",void 0),xn([ft({type:String}),kn("design:type",Object)],Cn.prototype,"class",void 0),xn([ft({type:String}),kn("design:type",Object)],Cn.prototype,"activeClass",void 0),Cn=wn=xn([pt("qbo-microphone")],Cn);var En=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},$n=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};let On=class extends bt{constructor(){super(...arguments),this.display=25,this.start=0,this.count=0,this.pageLimit=10,this.currentPage=1,this.rollingView=!0,this.editSize=!0}get maxPage(){return Math.floor(this.count/this.display)+(this.count%this.display==0?0:1)}static{this.styles=[Et,le``]}goToPage(e){e!=this.currentPage&&e>=this.currentPage&&e<=this.maxPage&&(this.currentPage=e,this.dispatchEvent(new CustomEvent("change",{detail:{start:(e-1)*this.display,display:this.display,page:e},bubbles:!0,composed:!0})))}renderPage(e){return We`<li class="${this.currentPage===e?"active":""}">
92
+ </div>`}renderIcon(e){null!=e.icon&&void 0!==e.icon||(console.warn("qbo-icon: icon attribute is required"),e.icon="warning");const t=uo.has(e.icon)?uo.get(e.icon):e.icon;return We`<svg width="${e.width}" height="${e.width}" fill="${e.fill}" ?class=${e.getAttribute("class")}><use href="${e.sprite??lo.spriteUrl}#${t}"></use></svg>`}render(){switch(this.type){case"icon":case"button":case"toggle":default:return this.renderIcon(this);case"standard":return this.renderStandard(this);case"all":return We`${so(this.renderAll(this),We`Loading...`)}`}}};co([ft(),bo("design:type",String)],po.prototype,"type",void 0),co([ft(),bo("design:type",Object)],po.prototype,"sprite",void 0),co([ft(),bo("design:type",Object)],po.prototype,"icon",void 0),co([ft(),bo("design:type",String)],po.prototype,"height",void 0),co([ft(),bo("design:type",String)],po.prototype,"width",void 0),co([ft(),bo("design:type",String)],po.prototype,"viewbox",void 0),co([ft(),bo("design:type",String)],po.prototype,"fill",void 0),co([ft(),bo("design:type",Object)],po.prototype,"backgroundColor",void 0),co([ft(),bo("design:type",Boolean)],po.prototype,"disabled",void 0),co([ft({type:Boolean,reflect:!0}),bo("design:type",Object)],po.prototype,"renderInHost",void 0),co([ft({type:Boolean,reflect:!0}),bo("design:type",Boolean)],po.prototype,"selected",void 0),po=lo=co([pt("qbo-icon")],po);const mo=Math.min,ho=Math.max,fo=Math.round,go=(Math.floor,e=>({x:e,y:e})),vo={left:"right",right:"left",bottom:"top",top:"bottom"},yo={start:"end",end:"start"};function qo(e,t,o){return ho(e,mo(t,o))}function wo(e,t){return"function"==typeof e?e(t):e}function xo(e){return e.split("-")[0]}function ko(e){return e.split("-")[1]}function Co(e){return"x"===e?"y":"x"}function Eo(e){return"y"===e?"height":"width"}function $o(e){return["top","bottom"].includes(xo(e))?"y":"x"}function Oo(e){return Co($o(e))}function So(e){return e.replace(/start|end/g,(e=>yo[e]))}function _o(e){return e.replace(/left|right|bottom|top/g,(e=>vo[e]))}function Ao(e){const{x:t,y:o,width:n,height:r}=e;return{width:n,height:r,top:o,left:t,right:t+n,bottom:o+r,x:t,y:o}}function Ro(e,t,o){let{reference:n,floating:r}=e;const i=$o(t),a=Oo(t),s=Eo(a),l=xo(t),d="y"===i,c=n.x+n.width/2-r.width/2,b=n.y+n.height/2-r.height/2,u=n[s]/2-r[s]/2;let p;switch(l){case"top":p={x:c,y:n.y-r.height};break;case"bottom":p={x:c,y:n.y+n.height};break;case"right":p={x:n.x+n.width,y:b};break;case"left":p={x:n.x-r.width,y:b};break;default:p={x:n.x,y:n.y}}switch(ko(t)){case"start":p[a]-=u*(o&&d?-1:1);break;case"end":p[a]+=u*(o&&d?-1:1)}return p}async function Uo(e,t){var o;void 0===t&&(t={});const{x:n,y:r,platform:i,rects:a,elements:s,strategy:l}=e,{boundary:d="clippingAncestors",rootBoundary:c="viewport",elementContext:b="floating",altBoundary:u=!1,padding:p=0}=wo(t,e),m=function(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}(p),h=s[u?"floating"===b?"reference":"floating":b],f=Ao(await i.getClippingRect({element:null==(o=await(null==i.isElement?void 0:i.isElement(h)))||o?h:h.contextElement||await(null==i.getDocumentElement?void 0:i.getDocumentElement(s.floating)),boundary:d,rootBoundary:c,strategy:l})),g="floating"===b?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,v=await(null==i.getOffsetParent?void 0:i.getOffsetParent(s.floating)),y=await(null==i.isElement?void 0:i.isElement(v))&&await(null==i.getScale?void 0:i.getScale(v))||{x:1,y:1},q=Ao(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:g,offsetParent:v,strategy:l}):g);return{top:(f.top-q.top+m.top)/y.y,bottom:(q.bottom-f.bottom+m.bottom)/y.y,left:(f.left-q.left+m.left)/y.x,right:(q.right-f.right+m.right)/y.x}}function jo(){return"undefined"!=typeof window}function Po(e){return zo(e)?(e.nodeName||"").toLowerCase():"#document"}function To(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function Mo(e){var t;return null==(t=(zo(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function zo(e){return!!jo()&&(e instanceof Node||e instanceof To(e).Node)}function Do(e){return!!jo()&&(e instanceof Element||e instanceof To(e).Element)}function Lo(e){return!!jo()&&(e instanceof HTMLElement||e instanceof To(e).HTMLElement)}function Fo(e){return!(!jo()||"undefined"==typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof To(e).ShadowRoot)}function Io(e){const{overflow:t,overflowX:o,overflowY:n,display:r}=Wo(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+o)&&!["inline","contents"].includes(r)}function Ho(e){return["table","td","th"].includes(Po(e))}function Bo(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(e){return!1}}))}function No(e){const t=Vo(),o=Do(e)?Wo(e):e;return"none"!==o.transform||"none"!==o.perspective||!!o.containerType&&"normal"!==o.containerType||!t&&!!o.backdropFilter&&"none"!==o.backdropFilter||!t&&!!o.filter&&"none"!==o.filter||["transform","perspective","filter"].some((e=>(o.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(o.contain||"").includes(e)))}function Vo(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function Ko(e){return["html","body","#document"].includes(Po(e))}function Wo(e){return To(e).getComputedStyle(e)}function Jo(e){return Do(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Qo(e){if("html"===Po(e))return e;const t=e.assignedSlot||e.parentNode||Fo(e)&&e.host||Mo(e);return Fo(t)?t.host:t}function Xo(e){const t=Qo(e);return Ko(t)?e.ownerDocument?e.ownerDocument.body:e.body:Lo(t)&&Io(t)?t:Xo(t)}function Yo(e,t,o){var n;void 0===t&&(t=[]),void 0===o&&(o=!0);const r=Xo(e),i=r===(null==(n=e.ownerDocument)?void 0:n.body),a=To(r);if(i){const e=Zo(a);return t.concat(a,a.visualViewport||[],Io(r)?r:[],e&&o?Yo(e):[])}return t.concat(r,Yo(r,[],o))}function Zo(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Go(e){const t=Wo(e);let o=parseFloat(t.width)||0,n=parseFloat(t.height)||0;const r=Lo(e),i=r?e.offsetWidth:o,a=r?e.offsetHeight:n,s=fo(o)!==i||fo(n)!==a;return s&&(o=i,n=a),{width:o,height:n,$:s}}function en(e){return Do(e)?e:e.contextElement}function tn(e){const t=en(e);if(!Lo(t))return go(1);const o=t.getBoundingClientRect(),{width:n,height:r,$:i}=Go(t);let a=(i?fo(o.width):o.width)/n,s=(i?fo(o.height):o.height)/r;return a&&Number.isFinite(a)||(a=1),s&&Number.isFinite(s)||(s=1),{x:a,y:s}}const on=go(0);function nn(e){const t=To(e);return Vo()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:on}function rn(e,t,o,n){void 0===t&&(t=!1),void 0===o&&(o=!1);const r=e.getBoundingClientRect(),i=en(e);let a=go(1);t&&(n?Do(n)&&(a=tn(n)):a=tn(e));const s=function(e,t,o){return void 0===t&&(t=!1),!(!o||t&&o!==To(e))&&t}(i,o,n)?nn(i):go(0);let l=(r.left+s.x)/a.x,d=(r.top+s.y)/a.y,c=r.width/a.x,b=r.height/a.y;if(i){const e=To(i),t=n&&Do(n)?To(n):n;let o=e,r=Zo(o);for(;r&&n&&t!==o;){const e=tn(r),t=r.getBoundingClientRect(),n=Wo(r),i=t.left+(r.clientLeft+parseFloat(n.paddingLeft))*e.x,a=t.top+(r.clientTop+parseFloat(n.paddingTop))*e.y;l*=e.x,d*=e.y,c*=e.x,b*=e.y,l+=i,d+=a,o=To(r),r=Zo(o)}}return Ao({width:c,height:b,x:l,y:d})}function an(e,t){const o=Jo(e).scrollLeft;return t?t.left+o:rn(Mo(e)).left+o}function sn(e,t,o){void 0===o&&(o=!1);const n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-(o?0:an(e,n)),y:n.top+t.scrollTop}}function ln(e,t,o){let n;if("viewport"===t)n=function(e,t){const o=To(e),n=Mo(e),r=o.visualViewport;let i=n.clientWidth,a=n.clientHeight,s=0,l=0;if(r){i=r.width,a=r.height;const e=Vo();(!e||e&&"fixed"===t)&&(s=r.offsetLeft,l=r.offsetTop)}return{width:i,height:a,x:s,y:l}}(e,o);else if("document"===t)n=function(e){const t=Mo(e),o=Jo(e),n=e.ownerDocument.body,r=ho(t.scrollWidth,t.clientWidth,n.scrollWidth,n.clientWidth),i=ho(t.scrollHeight,t.clientHeight,n.scrollHeight,n.clientHeight);let a=-o.scrollLeft+an(e);const s=-o.scrollTop;return"rtl"===Wo(n).direction&&(a+=ho(t.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:s}}(Mo(e));else if(Do(t))n=function(e,t){const o=rn(e,!0,"fixed"===t),n=o.top+e.clientTop,r=o.left+e.clientLeft,i=Lo(e)?tn(e):go(1);return{width:e.clientWidth*i.x,height:e.clientHeight*i.y,x:r*i.x,y:n*i.y}}(t,o);else{const o=nn(e);n={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return Ao(n)}function dn(e,t){const o=Qo(e);return!(o===t||!Do(o)||Ko(o))&&("fixed"===Wo(o).position||dn(o,t))}function cn(e,t,o){const n=Lo(t),r=Mo(t),i="fixed"===o,a=rn(e,!0,i,t);let s={scrollLeft:0,scrollTop:0};const l=go(0);if(n||!n&&!i)if(("body"!==Po(t)||Io(r))&&(s=Jo(t)),n){const e=rn(t,!0,i,t);l.x=e.x+t.clientLeft,l.y=e.y+t.clientTop}else r&&(l.x=an(r));const d=!r||n||i?go(0):sn(r,s);return{x:a.left+s.scrollLeft-l.x-d.x,y:a.top+s.scrollTop-l.y-d.y,width:a.width,height:a.height}}function bn(e){return"static"===Wo(e).position}function un(e,t){if(!Lo(e)||"fixed"===Wo(e).position)return null;if(t)return t(e);let o=e.offsetParent;return Mo(e)===o&&(o=o.ownerDocument.body),o}function pn(e,t){const o=To(e);if(Bo(e))return o;if(!Lo(e)){let t=Qo(e);for(;t&&!Ko(t);){if(Do(t)&&!bn(t))return t;t=Qo(t)}return o}let n=un(e,t);for(;n&&Ho(n)&&bn(n);)n=un(n,t);return n&&Ko(n)&&bn(n)&&!No(n)?o:n||function(e){let t=Qo(e);for(;Lo(t)&&!Ko(t);){if(No(t))return t;if(Bo(t))return null;t=Qo(t)}return null}(e)||o}const mn={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:o,offsetParent:n,strategy:r}=e;const i="fixed"===r,a=Mo(n),s=!!t&&Bo(t.floating);if(n===a||s&&i)return o;let l={scrollLeft:0,scrollTop:0},d=go(1);const c=go(0),b=Lo(n);if((b||!b&&!i)&&(("body"!==Po(n)||Io(a))&&(l=Jo(n)),Lo(n))){const e=rn(n);d=tn(n),c.x=e.x+n.clientLeft,c.y=e.y+n.clientTop}const u=!a||b||i?go(0):sn(a,l,!0);return{width:o.width*d.x,height:o.height*d.y,x:o.x*d.x-l.scrollLeft*d.x+c.x+u.x,y:o.y*d.y-l.scrollTop*d.y+c.y+u.y}},getDocumentElement:Mo,getClippingRect:function(e){let{element:t,boundary:o,rootBoundary:n,strategy:r}=e;const i=[..."clippingAncestors"===o?Bo(t)?[]:function(e,t){const o=t.get(e);if(o)return o;let n=Yo(e,[],!1).filter((e=>Do(e)&&"body"!==Po(e))),r=null;const i="fixed"===Wo(e).position;let a=i?Qo(e):e;for(;Do(a)&&!Ko(a);){const t=Wo(a),o=No(a);o||"fixed"!==t.position||(r=null),(i?!o&&!r:!o&&"static"===t.position&&r&&["absolute","fixed"].includes(r.position)||Io(a)&&!o&&dn(e,a))?n=n.filter((e=>e!==a)):r=t,a=Qo(a)}return t.set(e,n),n}(t,this._c):[].concat(o),n],a=i[0],s=i.reduce(((e,o)=>{const n=ln(t,o,r);return e.top=ho(n.top,e.top),e.right=mo(n.right,e.right),e.bottom=mo(n.bottom,e.bottom),e.left=ho(n.left,e.left),e}),ln(t,a,r));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},getOffsetParent:pn,getElementRects:async function(e){const t=this.getOffsetParent||pn,o=this.getDimensions,n=await o(e.floating);return{reference:cn(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:o}=Go(e);return{width:t,height:o}},getScale:tn,isElement:Do,isRTL:function(e){return"rtl"===Wo(e).direction}},hn=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:n,placement:r}=t,{mainAxis:i=!0,crossAxis:a=!1,limiter:s={fn:e=>{let{x:t,y:o}=e;return{x:t,y:o}}},...l}=wo(e,t),d={x:o,y:n},c=await Uo(t,l),b=$o(xo(r)),u=Co(b);let p=d[u],m=d[b];if(i){const e="y"===u?"bottom":"right";p=qo(p+c["y"===u?"top":"left"],p,p-c[e])}if(a){const e="y"===b?"bottom":"right";m=qo(m+c["y"===b?"top":"left"],m,m-c[e])}const h=s.fn({...t,[u]:p,[b]:m});return{...h,data:{x:h.x-o,y:h.y-n,enabled:{[u]:i,[b]:a}}}}}},fn=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var o,n;const{placement:r,middlewareData:i,rects:a,initialPlacement:s,platform:l,elements:d}=t,{mainAxis:c=!0,crossAxis:b=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:h=!0,...f}=wo(e,t);if(null!=(o=i.arrow)&&o.alignmentOffset)return{};const g=xo(r),v=$o(s),y=xo(s)===s,q=await(null==l.isRTL?void 0:l.isRTL(d.floating)),w=u||(y||!h?[_o(s)]:function(e){const t=_o(e);return[So(e),t,So(t)]}(s)),x="none"!==m;!u&&x&&w.push(...function(e,t,o,n){const r=ko(e);let i=function(e,t,o){const n=["left","right"],r=["right","left"],i=["top","bottom"],a=["bottom","top"];switch(e){case"top":case"bottom":return o?t?r:n:t?n:r;case"left":case"right":return t?i:a;default:return[]}}(xo(e),"start"===o,n);return r&&(i=i.map((e=>e+"-"+r)),t&&(i=i.concat(i.map(So)))),i}(s,h,m,q));const k=[s,...w],C=await Uo(t,f),E=[];let $=(null==(n=i.flip)?void 0:n.overflows)||[];if(c&&E.push(C[g]),b){const e=function(e,t,o){void 0===o&&(o=!1);const n=ko(e),r=Oo(e),i=Eo(r);let a="x"===r?n===(o?"end":"start")?"right":"left":"start"===n?"bottom":"top";return t.reference[i]>t.floating[i]&&(a=_o(a)),[a,_o(a)]}(r,a,q);E.push(C[e[0]],C[e[1]])}if($=[...$,{placement:r,overflows:E}],!E.every((e=>e<=0))){var O,S;const e=((null==(O=i.flip)?void 0:O.index)||0)+1,t=k[e];if(t)return{data:{index:e,overflows:$},reset:{placement:t}};let o=null==(S=$.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:S.placement;if(!o)switch(p){case"bestFit":{var _;const e=null==(_=$.filter((e=>{if(x){const t=$o(e.placement);return t===v||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:_[0];e&&(o=e);break}case"initialPlacement":o=s}if(r!==o)return{reset:{placement:o}}}return{}}}},gn=(e,t,o)=>{const n=new Map,r={platform:mn,...o},i={...r.platform,_c:n};return(async(e,t,o)=>{const{placement:n="bottom",strategy:r="absolute",middleware:i=[],platform:a}=o,s=i.filter(Boolean),l=await(null==a.isRTL?void 0:a.isRTL(t));let d=await a.getElementRects({reference:e,floating:t,strategy:r}),{x:c,y:b}=Ro(d,n,l),u=n,p={},m=0;for(let o=0;o<s.length;o++){const{name:i,fn:h}=s[o],{x:f,y:g,data:v,reset:y}=await h({x:c,y:b,initialPlacement:n,placement:u,strategy:r,middlewareData:p,rects:d,platform:a,elements:{reference:e,floating:t}});c=null!=f?f:c,b=null!=g?g:b,p={...p,[i]:{...p[i],...v}},y&&m<=50&&(m++,"object"==typeof y&&(y.placement&&(u=y.placement),y.rects&&(d=!0===y.rects?await a.getElementRects({reference:e,floating:t,strategy:r}):y.rects),({x:c,y:b}=Ro(d,u,l))),o=-1)}return{x:c,y:b,placement:u,strategy:r,middlewareData:p}})(e,t,{...r,platform:i})};var vn=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},yn=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};class qn extends bt{constructor(){super(...arguments),this.placement="bottom-start",this.type="dropdown",this.target=null,this.isOpen=!1,this.middleware=[fn(),hn()],this.handleMenuOpen=e=>{e.preventDefault(),e.stopPropagation(),e.detail.menu!==this&&this.isOpen&&this.closeMenu()},this.handleOutsideClick=e=>{e.target,e.composedPath().includes(this)||this.closeMenu()},this.showContextMenu=e=>{const t=e;e.preventDefault(),e.stopPropagation(),this.isOpen=!0,this.menuContainer.classList.toggle("open",this.isOpen);const o={getBoundingClientRect:()=>({x:t.clientX,y:t.clientY,width:0,height:0,top:t.clientY,left:t.clientX,right:t.clientX,bottom:t.clientY})};this.updateMenuPosition(o)},this.toggleMenu=e=>{e.target;const t=e.composedPath();t.includes(this.triggerButton)&&!t.includes(this.menuContainer)&&(this.isOpen=!this.isOpen,this.menuContainer.classList.toggle("open",this.isOpen),this.isOpen&&(this.updateMenuPosition(this.triggerButton),document.dispatchEvent(new CustomEvent("qbo-menu-open",{bubbles:!0,composed:!0,detail:{menu:this}}))))}}static{this.styles=le``}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this.handleOutsideClick)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.handleOutsideClick),"context"===this.type?this.triggerButton.removeEventListener("contextmenu",this.showContextMenu):this.triggerButton.removeEventListener("click",this.toggleMenu)}firstUpdated(e){super.firstUpdated(e),this.triggerButton=this.querySelector("*[data-trigger]")||this.querySelector("button")||this.parentElement,this.menuContainer=this.querySelector("*[data-content]")||this.querySelector("aside")||this.querySelector("menu"),"context"===this.type?(this.target&&(this.triggerButton=this.closest(this.target)||(()=>{const e=this.getRootNode();return e instanceof ShadowRoot||e instanceof Document?e.querySelector(this.target):null})()||document.querySelector(this.target)||document),this.triggerButton.addEventListener("contextmenu",this.showContextMenu)):null!=this.triggerButton&&this.triggerButton.addEventListener("click",this.toggleMenu)}closeMenu(){this.isOpen=!1,this.menuContainer.classList.remove("open")}async updateMenuPosition(e){console.log(e,typeof e);const{x:t,y:o}=await gn(e,this.menuContainer,{placement:this.placement,middleware:this.middleware,strategy:"fixed"});Object.assign(this.menuContainer.style,{left:`${t}px`,top:`${o}px`})}render(){return We`<slot></slot>`}}vn([ft({type:String}),yn("design:type",String)],qn.prototype,"placement",void 0),vn([ft(),yn("design:type",String)],qn.prototype,"type",void 0),vn([ft(),yn("design:type",Object)],qn.prototype,"target",void 0),vn([gt(),yn("design:type",Object)],qn.prototype,"isOpen",void 0),customElements.get("qbo-menu")||customElements.define("qbo-menu",qn);var wn,xn=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},kn=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};let Cn=class extends bt{constructor(){super(...arguments),this.renderInHost=!0,this.continuous=!1,this.interimResults=!1,this.maxAlternatives=1,this.for="input",this.class="input-group-text bi bi-headset",this.activeClass="bg-primary-subtle",this._recognition=null,this.target=null,this.listening=!1}static{wn=this}static{this.activeInstance=null}connectedCallback(){super.connectedCallback(),this.addEventListener("click",this.listen);const e=new(window.SpeechRecognition||window.webkitSpeechRecognition);e.continuous=this.continuous,e.interimResults=this.interimResults,e.maxAlternatives=this.maxAlternatives,e.onresult=e=>{this.onResult(e)},e.onspeechend=e=>{this.stop(e)},e.onerror=e=>{this.error(e)},this._recognition=e,this.target=document.getElementById(this.for)||this.querySelector(this.for)||this.parentElement?.querySelector(this.for),null==this.target&&console.log(`qbo-microphone: no target found for ${this.for}`)}disconnectedCallback(){this.removeEventListener("click",this.listen),super.disconnectedCallback()}onResult(e){const t=e.results[e.results.length-1][0].transcript;if(console.log("Result: "+t),null==this.target)return;const o=this.target;if(o instanceof HTMLInputElement)"radio"===o.type?o.value===t&&(o.checked=!0):this.continuous?o.value+=t:o.value=t;else if(o instanceof HTMLTextAreaElement)this.continuous?o.value+=t:o.value=t;else if(o instanceof HTMLSelectElement)for(let e=0;e<o.options.length;e++)if(o.options[e].value===t||o.options[e].text===t){o.selectedIndex=e;break}}listen(e){this.listening?this.stop(e):this.start()}start(){this.listening=!0,wn.activeInstance=this,this.activeClass&&this.classList.add(this.activeClass),console.log("listening"),this._recognition.start()}stop(e){this.listening=!1,wn.activeInstance=null,this.activeClass&&this.classList.remove(this.activeClass),console.log("stopped listening"),this._recognition.stop(),this._recognition.abort()}error(e){console.log("Error during speech recognition:",e)}render(){return We`<slot></slot>`}};xn([ft({type:Boolean}),kn("design:type",Object)],Cn.prototype,"renderInHost",void 0),xn([ft({type:Boolean}),kn("design:type",Object)],Cn.prototype,"continuous",void 0),xn([ft({type:Boolean}),kn("design:type",Object)],Cn.prototype,"interimResults",void 0),xn([ft({type:Number}),kn("design:type",Object)],Cn.prototype,"maxAlternatives",void 0),xn([ft({type:String}),kn("design:type",Object)],Cn.prototype,"for",void 0),xn([ft({type:String}),kn("design:type",Object)],Cn.prototype,"class",void 0),xn([ft({type:String}),kn("design:type",Object)],Cn.prototype,"activeClass",void 0),Cn=wn=xn([pt("qbo-microphone")],Cn);var En=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},$n=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};let On=class extends bt{constructor(){super(...arguments),this.display=25,this.start=0,this.count=0,this.pageLimit=10,this.currentPage=1,this.rollingView=!0,this.editSize=!0,this.displayCountText="Results per page:"}get maxPage(){return Math.floor(this.count/this.display)+(this.count%this.display==0?0:1)}static{this.styles=[Et,le``]}goToPage(e){e!=this.currentPage&&e>0&&e<=this.maxPage&&(this.currentPage=e,this.dispatchEvent(new CustomEvent("change",{detail:{start:(e-1)*this.display,display:this.display,page:e},bubbles:!0,composed:!0})))}renderPage(e){return We`<li class="${this.currentPage===e?"active":""}">
93
93
  <a @click="${t=>this.goToPage(e)}">${e}</a>
94
- </li>`}renderSpacer(){return We`<li class="disabled"><a>...</a></li>`}renderPageNumbers(){const e=[];let t=this.maxPage>this.pageLimit?this.currentPage-Math.floor(this.pageLimit/2):1;t<1&&(t=1);let o=this.maxPage>this.pageLimit?t+this.pageLimit-1:this.maxPage;o<=1&&(o=1),t>1&&(e.push(this.renderPage(1)),e.push(this.renderSpacer()));for(let n=t;n<=o;n++)e.push(this.renderPage(n));return o<this.maxPage&&(e.push(this.renderSpacer()),e.push(this.renderPage(this.maxPage))),e}setDisplaySize(e){const t=e.target,o=parseInt(t.value);isNaN(o)||(this.display=o,this.start=0,this.goToPage(1))}renderPageSize(){return We`<li class="pageSize">
95
- <span>Records per page:</span>
94
+ </li>`}renderSpacer(){return We`<li class="disabled"><a>...</a></li>`}renderPageNumbers(){const e=[];let t=this.maxPage>this.pageLimit?this.currentPage-Math.floor(this.pageLimit/2):1;t<1&&(t=1),t+this.pageLimit>this.maxPage&&(t=this.maxPage-this.pageLimit+1);let o=this.maxPage>this.pageLimit?t+this.pageLimit-1:this.maxPage;o<=1&&(o=1),t>1&&(e.push(this.renderPage(1)),e.push(this.renderSpacer()));for(let n=t;n<=o;n++)e.push(this.renderPage(n));return o<this.maxPage&&(e.push(this.renderSpacer()),e.push(this.renderPage(this.maxPage))),e}setDisplaySize(e){const t=e.target,o=parseInt(t.value);isNaN(o)||(this.display=o,this.start=0,this.goToPage(1))}renderPageSize(){return We`<li class="pageSize">
95
+ <span>${this.displayCountText}</span>
96
96
  <input type="number" min="5" value="${this.display}" title="Display Size" @change=${e=>this.setDisplaySize(e)}>
97
97
  </li>`}render(){return We`
98
98
  <nav aria-label="Page navigation">
@@ -110,7 +110,7 @@ ${Array.from(uo.keys()).map((t=>We`<div class="col-3">
110
110
  </li>
111
111
  ${this.editSize?this.renderPageSize():We``}
112
112
  </ul>
113
- </nav>`}};En([ft({type:Number}),$n("design:type",Object)],On.prototype,"display",void 0),En([ft({type:Number}),$n("design:type",Object)],On.prototype,"start",void 0),En([ft({type:Number}),$n("design:type",Object)],On.prototype,"count",void 0),En([ft({type:Number}),$n("design:type",Object)],On.prototype,"pageLimit",void 0),En([ft({type:Number}),$n("design:type",Object)],On.prototype,"currentPage",void 0),En([ft({type:Boolean}),$n("design:type",Object)],On.prototype,"rollingView",void 0),En([ft({type:Boolean}),$n("design:type",Object)],On.prototype,"editSize",void 0),On=En([pt("qbo-paginate")],On);var Sn=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},_n=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};let An=class extends bt{constructor(){super(...arguments),this.placement="bottom",this.selector="*[data-popover-trigger]",this.isOpen=!1,this.middleware=[fn(),hn()],this.handleMenuOpen=e=>{e.preventDefault(),e.stopPropagation(),e.detail.menu!==this&&this.isOpen&&this.closeMenu()},this.toggleMenu=e=>{this.isOpen=!this.isOpen,this.classList.toggle("open",this.isOpen),this.isOpen&&(this.setPosition(),document.dispatchEvent(new CustomEvent("qbo-popover-open",{bubbles:!0,composed:!0,detail:{menu:this}})))}}async setPosition(){const{x:e,y:t}=await gn(this.triggerElement,this,{placement:this.placement,middleware:this.middleware});Object.assign(this.style,{left:`${e}px`,top:`${t}px`})}connectedCallback(){super.connectedCallback(),document.addEventListener("qbo-popover-open",this.handleMenuOpen)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("qbo-popover-open",this.handleMenuOpen),null!=this.triggerElement&&(this.triggerElement.removeEventListener("mouseover",this.toggleMenu),this.triggerElement.removeEventListener("mouseout",this.toggleMenu))}firstUpdated(e){super.firstUpdated(e),this.triggerElement=this.parentElement?.querySelector(this.selector)||this.shadowRoot?.querySelector(this.selector)||document.querySelector(this.selector)||this.parentElement,null!=this.triggerElement&&(this.triggerElement.addEventListener("mouseover",this.toggleMenu),this.triggerElement.addEventListener("mouseout",this.toggleMenu))}closeMenu(){this.isOpen=!1,this.classList.remove("open")}render(){return We`<slot></slot>`}};Sn([ft({type:String}),_n("design:type",String)],An.prototype,"placement",void 0),Sn([ft({type:String}),_n("design:type",Object)],An.prototype,"selector",void 0),Sn([gt(),_n("design:type",Object)],An.prototype,"isOpen",void 0),An=Sn([pt("qbo-popover")],An);class Rn extends Qt{constructor(e){if(super(e),this.it=Qe,2!==e.type)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===Qe||null==e)return this._t=void 0,this.it=e;if(e===Je)return e;if("string"!=typeof e)throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;const t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}}Rn.directiveName="unsafeHTML",Rn.resultType=1;const Un=Jt(Rn);var jn=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},Pn=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};let Tn=class extends Ut{constructor(){super(...arguments),this.open=!1,this.loading=!1,this.renderInHost=!1}static{this.styles=[le`
113
+ </nav>`}};En([ft({type:Number}),$n("design:type",Object)],On.prototype,"display",void 0),En([ft({type:Number}),$n("design:type",Object)],On.prototype,"start",void 0),En([ft({type:Number}),$n("design:type",Object)],On.prototype,"count",void 0),En([ft({type:Number}),$n("design:type",Object)],On.prototype,"pageLimit",void 0),En([ft({type:Number}),$n("design:type",Object)],On.prototype,"currentPage",void 0),En([ft({type:Boolean}),$n("design:type",Object)],On.prototype,"rollingView",void 0),En([ft({type:Boolean}),$n("design:type",Object)],On.prototype,"editSize",void 0),En([ft({type:String}),$n("design:type",Object)],On.prototype,"displayCountText",void 0),On=En([pt("qbo-paginate")],On);var Sn=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},_n=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};let An=class extends bt{constructor(){super(...arguments),this.placement="bottom",this.selector="*[data-popover-trigger]",this.isOpen=!1,this.middleware=[fn(),hn()],this.handleMenuOpen=e=>{e.preventDefault(),e.stopPropagation(),e.detail.menu!==this&&this.isOpen&&this.closeMenu()},this.toggleMenu=e=>{this.isOpen=!this.isOpen,this.classList.toggle("open",this.isOpen),this.isOpen&&(this.setPosition(),document.dispatchEvent(new CustomEvent("qbo-popover-open",{bubbles:!0,composed:!0,detail:{menu:this}})))}}async setPosition(){const{x:e,y:t}=await gn(this.triggerElement,this,{placement:this.placement,middleware:this.middleware});Object.assign(this.style,{left:`${e}px`,top:`${t}px`})}connectedCallback(){super.connectedCallback(),document.addEventListener("qbo-popover-open",this.handleMenuOpen)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("qbo-popover-open",this.handleMenuOpen),null!=this.triggerElement&&(this.triggerElement.removeEventListener("mouseover",this.toggleMenu),this.triggerElement.removeEventListener("mouseout",this.toggleMenu))}firstUpdated(e){super.firstUpdated(e),this.triggerElement=this.parentElement?.querySelector(this.selector)||this.shadowRoot?.querySelector(this.selector)||document.querySelector(this.selector)||this.parentElement,null!=this.triggerElement&&(this.triggerElement.addEventListener("mouseover",this.toggleMenu),this.triggerElement.addEventListener("mouseout",this.toggleMenu))}closeMenu(){this.isOpen=!1,this.classList.remove("open")}render(){return We`<slot></slot>`}};Sn([ft({type:String}),_n("design:type",String)],An.prototype,"placement",void 0),Sn([ft({type:String}),_n("design:type",Object)],An.prototype,"selector",void 0),Sn([gt(),_n("design:type",Object)],An.prototype,"isOpen",void 0),An=Sn([pt("qbo-popover")],An);class Rn extends Qt{constructor(e){if(super(e),this.it=Qe,2!==e.type)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===Qe||null==e)return this._t=void 0,this.it=e;if(e===Je)return e;if("string"!=typeof e)throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;const t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}}Rn.directiveName="unsafeHTML",Rn.resultType=1;const Un=Jt(Rn);var jn=function(e,t,o,n){var r,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,o,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,o,a):r(t,o))||a);return i>3&&a&&Object.defineProperty(t,o,a),a},Pn=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};let Tn=class extends Ut{constructor(){super(...arguments),this.open=!1,this.loading=!1,this.renderInHost=!1}static{this.styles=[le`
114
114
  /* Add any custom styles here */
115
115
  .foo { color: red; }
116
116
  `]}async connectedCallback(){super.connectedCallback(),this.handleOutsideClick=this.handleOutsideClick.bind(this)}toggle(){this.open=!this.open,this.open?document.addEventListener("click",this.handleOutsideClick):document.removeEventListener("click",this.handleOutsideClick)}show(){this.open=!0,document.addEventListener("click",this.handleOutsideClick)}hide(e){e.target.closest('[data-dismiss="modal"]')&&(this.open=!1,document.removeEventListener("click",this.handleOutsideClick))}handleOutsideClick(e){this.open&&!this.contains(e.target)&&(this.open=!1,document.removeEventListener("click",this.handleOutsideClick))}render(){return We`