iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
5 lines • 21.5 kB
JavaScript
/*! For license information please see 34873.1ec56afc55483924.js.LICENSE.txt */
;(self.rspackChunkhome_assistant_frontend=self.rspackChunkhome_assistant_frontend||[]).push([[34873],{13611:function(e,t,o){var r=o(46518),n=o(44576),a=o(62106),i=o(43724),s=TypeError,d=Object.defineProperty,l=n.self!==n;try{if(i){var c=Object.getOwnPropertyDescriptor(n,"self");!l&&c&&c.get&&c.enumerable||a(n,"self",{get:function(){return n},set:function(e){if(this!==n)throw new s("Illegal invocation");d(n,"self",{value:e,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}else r({global:!0,simple:!0,forced:l},{self:n})}catch(h){}},1126:function(e,t,o){o.a(e,async function(e,t){try{o(3362),o(27495),o(62953);var r=o(5124),n=o(67576),a=o(6412),i=o(63672),s=o(17051),d=o(42462),l=o(28438),c=o(98779),h=o(27259),p=o(25877),u=o(31247),w=o(4444),f=o(92070),m=o(9395),b=o(717),v=o(17060),g=o(88496),y=o(57024),k=e([g,v]);[g,v]=k.then?(await k)():k;let E,$,L,A=e=>e;var x=Object.defineProperty,C=Object.getOwnPropertyDescriptor,D=(e,t,o,r)=>{for(var n,a=r>1?void 0:r?C(t,o):t,i=e.length-1;i>=0;i--)(n=e[i])&&(a=(r?n(t,o,a):n(a))||a);return r&&a&&x(t,o,a),a};let P=class extends b.A{firstUpdated(){r.S$||this.open&&(this.addOpenListeners(),this.drawer.showModal(),(0,w.JG)(this))}disconnectedCallback(){super.disconnectedCallback(),(0,w.I7)(this),this.removeOpenListeners()}async requestClose(e){const t=new l.L({source:e});if(this.dispatchEvent(t),t.defaultPrevented)return this.open=!0,void(0,h.Ud)(this.drawer,"pulse");this.removeOpenListeners(),await(0,h.Ud)(this.drawer,"hide"),this.open=!1,this.drawer.close(),(0,w.I7)(this);const o=this.originalTrigger;"function"==typeof(null==o?void 0:o.focus)&&setTimeout(()=>o.focus()),this.dispatchEvent(new s.Z)}addOpenListeners(){document.addEventListener("keydown",this.handleDocumentKeyDown),(0,p.AZ)(this)}removeOpenListeners(){document.removeEventListener("keydown",this.handleDocumentKeyDown),(0,p.Fw)(this)}handleDialogCancel(e){e.preventDefault(),!this.drawer.classList.contains("hide")&&e.target===this.drawer&&(0,p.a0)(this)&&this.requestClose(this.drawer)}handleDialogClick(e){const t=e.target.closest('[data-drawer="close"]');t&&(e.stopPropagation(),this.requestClose(t))}async handleDialogPointerDown(e){e.target===this.drawer&&(this.lightDismiss?this.requestClose(this.drawer):await(0,h.Ud)(this.drawer,"pulse"))}handleOpenChange(){this.open&&!this.drawer.open?this.show():this.drawer.open&&(this.open=!0,this.requestClose(this.drawer))}async show(){const e=new c.k;this.dispatchEvent(e),e.defaultPrevented?this.open=!1:(this.addOpenListeners(),this.originalTrigger=document.activeElement,this.open=!0,this.drawer.showModal(),(0,w.JG)(this),requestAnimationFrame(()=>{const e=this.querySelector("[autofocus]");e&&"function"==typeof e.focus?e.focus():this.drawer.focus()}),await(0,h.Ud)(this.drawer,"show"),this.dispatchEvent(new d.q))}render(){var e;const t=!this.withoutHeader,o=this.hasUpdated?this.hasSlotController.test("footer"):this.withFooter;return(0,r.qy)(E||(E=A` <dialog aria-labelledby="${0}" aria-describedby="${0}" part="dialog" class="${0}" @cancel="${0}" @click="${0}" @pointerdown="${0}"> ${0} <div part="body" class="body"><slot></slot></div> ${0} </dialog> `),null!==(e=this.ariaLabelledby)&&void 0!==e?e:"title",(0,i.J)(this.ariaDescribedby),(0,a.H)({drawer:!0,open:this.open,top:"top"===this.placement,end:"end"===this.placement,bottom:"bottom"===this.placement,start:"start"===this.placement}),this.handleDialogCancel,this.handleDialogClick,this.handleDialogPointerDown,t?(0,r.qy)($||($=A` <header part="header" class="header"> <h2 part="title" class="title" id="title"> <slot name="label"> ${0} </slot> </h2> <div part="header-actions" class="header-actions"> <slot name="header-actions"></slot> <wa-button part="close-button" exportparts="base:close-button__base" class="close" appearance="plain" @click="${0}"> <wa-icon name="xmark" label="${0}" library="system" variant="solid"></wa-icon> </wa-button> </div> </header> `),this.label.length>0?this.label:String.fromCharCode(8203),e=>this.requestClose(e.target),this.localize.term("close")):"",o?(0,r.qy)(L||(L=A` <footer part="footer" class="footer"> <slot name="footer"></slot> </footer> `)):"")}constructor(){super(...arguments),this.localize=new v.c(this),this.hasSlotController=new f.X(this,"footer","header-actions","label"),this.open=!1,this.label="",this.placement="end",this.withoutHeader=!1,this.lightDismiss=!0,this.withFooter=!1,this.handleDocumentKeyDown=e=>{"Escape"===e.key&&this.open&&(0,p.a0)(this)&&(e.preventDefault(),e.stopPropagation(),this.requestClose(this.drawer))}}};P.css=y.A,D([(0,n.P)(".drawer")],P.prototype,"drawer",2),D([(0,n.MZ)({type:Boolean,reflect:!0})],P.prototype,"open",2),D([(0,n.MZ)({reflect:!0})],P.prototype,"label",2),D([(0,n.MZ)({reflect:!0})],P.prototype,"placement",2),D([(0,n.MZ)({attribute:"without-header",type:Boolean,reflect:!0})],P.prototype,"withoutHeader",2),D([(0,n.MZ)({attribute:"light-dismiss",type:Boolean})],P.prototype,"lightDismiss",2),D([(0,n.MZ)({attribute:"aria-labelledby"})],P.prototype,"ariaLabelledby",2),D([(0,n.MZ)({attribute:"aria-describedby"})],P.prototype,"ariaDescribedby",2),D([(0,n.MZ)({attribute:"with-footer",type:Boolean})],P.prototype,"withFooter",2),D([(0,m.w)("open",{waitUntilFirstUpdate:!0})],P.prototype,"handleOpenChange",1),P=D([(0,n.EM)("wa-drawer")],P),r.S$||(document.addEventListener("click",e=>{const t=e.target.closest("[data-drawer]");if(t instanceof Element){const[e,o]=(0,u.v)(t.getAttribute("data-drawer")||"");if("open"===e&&null!=o&&o.length){const e=t.getRootNode().getElementById(o);"wa-drawer"===(null==e?void 0:e.localName)?e.open=!0:console.warn(`A drawer with an ID of "${o}" could not be found in this document.`)}}}),document.addEventListener("pointerdown",()=>{})),t()}catch(E){t(E)}})},57024:function(e,t,o){o.d(t,{A:function(){return n}});let r;var n=(0,o(5124).AH)(r||(r=(e=>e)`:host{--size:25rem;--spacing:var(--wa-space-l);--backdrop-filter:none;--show-duration:200ms;--hide-duration:200ms;display:none}:host([open]){display:block}.drawer{display:flex;flex-direction:column;top:0;inset-inline-start:0;width:100%;height:100%;max-width:100%;max-height:100%;overflow:hidden;color:inherit;background-color:var(--wa-color-surface-raised);border:none;box-shadow:var(--wa-shadow-l);overflow:auto;padding:0;margin:0;animation-duration:var(--show-duration);animation-timing-function:ease}.drawer.show::backdrop{animation:show-backdrop var(--show-duration,200ms) ease}.drawer.hide::backdrop{animation:show-backdrop var(--hide-duration,200ms) ease reverse}.drawer.show.top{animation:show-drawer-from-top var(--show-duration) ease}.drawer.hide.top{animation:show-drawer-from-top var(--hide-duration) ease reverse}.drawer.show.end{animation:show-drawer-from-end var(--show-duration) ease}.drawer.show.end:dir(rtl){animation-name:show-drawer-from-start}.drawer.hide.end{animation:show-drawer-from-end var(--hide-duration) ease reverse}.drawer.hide.end:dir(rtl){animation-name:show-drawer-from-start}.drawer.show.bottom{animation:show-drawer-from-bottom var(--show-duration) ease}.drawer.hide.bottom{animation:show-drawer-from-bottom var(--hide-duration) ease reverse}.drawer.show.start{animation:show-drawer-from-start var(--show-duration) ease}.drawer.show.start:dir(rtl){animation-name:show-drawer-from-end}.drawer.hide.start{animation:show-drawer-from-start var(--hide-duration) ease reverse}.drawer.hide.start:dir(rtl){animation-name:show-drawer-from-end}.drawer.pulse{animation:pulse 250ms ease}.drawer:focus{outline:0}.top{top:0;inset-inline-end:auto;bottom:auto;inset-inline-start:0;width:100%;height:var(--size)}.end{top:0;inset-inline-end:0;bottom:auto;inset-inline-start:auto;width:var(--size);height:100%}.bottom{top:auto;inset-inline-end:auto;bottom:0;inset-inline-start:0;width:100%;height:var(--size)}.start{top:0;inset-inline-end:auto;bottom:auto;inset-inline-start:0;width:var(--size);height:100%}.header{display:flex;flex-wrap:nowrap;padding-inline-start:var(--spacing);padding-block-end:0;padding-inline-end:calc(var(--spacing) - var(--wa-form-control-padding-block));padding-block-start:calc(var(--spacing) - var(--wa-form-control-padding-block))}.title{align-self:center;flex:1 1 auto;font:inherit;font-size:var(--wa-font-size-l);font-weight:var(--wa-font-weight-heading);line-height:var(--wa-line-height-condensed);margin:0}.header-actions{align-self:start;display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:end;gap:var(--wa-space-2xs);padding-inline-start:var(--spacing)}.header-actions ::slotted(wa-button),.header-actions wa-button{flex:0 0 auto;display:flex;align-items:center}.body{flex:1 1 auto;display:block;padding:var(--spacing);overflow:auto;-webkit-overflow-scrolling:touch}.body:focus{outline:0}.body:focus-visible{outline:var(--wa-focus-ring);outline-offset:var(--wa-focus-ring-offset)}.footer{display:flex;flex-wrap:wrap;gap:var(--wa-space-xs);justify-content:end;padding:var(--spacing);padding-block-start:0}.footer ::slotted(wa-button:not(:last-of-type)){margin-inline-end:var(--wa-spacing-xs)}.drawer::backdrop{background-color:var(--wa-color-overlay-modal,rgb(0 0 0 / .25));-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter)}@keyframes pulse{0%{scale:1}50%{scale:1.01}100%{scale:1}}@keyframes show-drawer{from{opacity:0;scale:0.8}to{opacity:1;scale:1}}@keyframes show-drawer-from-top{from{opacity:0;translate:0 -100%}to{opacity:1;translate:0 0}}@keyframes show-drawer-from-end{from{opacity:0;translate:100%}to{opacity:1;translate:0 0}}@keyframes show-drawer-from-bottom{from{opacity:0;translate:0 100%}to{opacity:1;translate:0 0}}@keyframes show-drawer-from-start{from{opacity:0;translate:-100% 0}to{opacity:1;translate:0 0}}@keyframes show-backdrop{from{opacity:0}to{opacity:1}}@media (forced-colors:active){.drawer{border:solid 1px #fff}}`))},61366:function(e,t,o){o.a(e,async function(e,t){try{o(74423),o(3362),o(17642),o(58004),o(33853),o(45876),o(32475),o(15024),o(31698),o(62953);var r=o(5124),n=o(67576),a=o(6412),i=o(63672),s=o(17051),d=o(42462),l=o(28438),c=o(98779),h=o(27259),p=o(25877),u=o(984),w=o(95010),f=o(9395),m=o(717),b=o(40158),v=o(10416),g=e([b]);b=(g.then?(await g)():g)[0];let C,D=e=>e;var y=Object.defineProperty,k=Object.getOwnPropertyDescriptor,x=(e,t,o,r)=>{for(var n,a=r>1?void 0:r?k(t,o):t,i=e.length-1;i>=0;i--)(n=e[i])&&(a=(r?n(t,o,a):n(a))||a);return r&&a&&y(t,o,a),a};const E=new Set;let $=class extends m.A{connectedCallback(){super.connectedCallback(),this.id||(this.id=(0,w.N)("wa-popover-")),this.eventController.signal.aborted&&(this.eventController=new AbortController),this.for&&this.anchor&&(this.anchor=null,this.handleForChange())}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("keydown",this.handleDocumentKeyDown),(0,p.Fw)(this),this.eventController.abort()}firstUpdated(){this.open&&this.handleOpenChange()}updated(e){e.has("open")&&this.customStates.set("open",this.open)}async handleOpenChange(){if(this.open){const e=new c.k;if(this.dispatchEvent(e),e.defaultPrevented)return void(this.open=!1);E.forEach(e=>e.open=!1),document.addEventListener("keydown",this.handleDocumentKeyDown,{signal:this.eventController.signal}),document.addEventListener("click",this.handleDocumentClick,{signal:this.eventController.signal}),this.trapFocus?this.dialog.showModal():this.dialog.show(),this.popup.active=!0,E.add(this),(0,p.AZ)(this),requestAnimationFrame(()=>{const e=this.querySelector("[autofocus]");e&&"function"==typeof e.focus?e.focus():this.dialog.focus()}),this.popup.popup||await this.popup.updateComplete,await(0,h.Ud)(this.popup.popup,"show-with-scale"),this.popup.reposition(),this.dispatchEvent(new d.q)}else{const e=new l.L;if(this.dispatchEvent(e),e.defaultPrevented)return void(this.open=!0);document.removeEventListener("keydown",this.handleDocumentKeyDown),document.removeEventListener("click",this.handleDocumentClick),E.delete(this),(0,p.Fw)(this),await(0,h.Ud)(this.popup.popup,"hide-with-scale"),this.popup.active=!1,this.dialog.close(),this.dispatchEvent(new s.Z)}}handleForChange(){const e=this.getRootNode();if(!e)return;const t=this.for?e.getElementById(this.for):null,o=this.anchor;if(t===o)return;const{signal:r}=this.eventController;t&&t.addEventListener("click",this.handleAnchorClick,{signal:r}),o&&o.removeEventListener("click",this.handleAnchorClick),this.anchor=t,this.for&&!t&&console.warn(`A popover was assigned to an element with an ID of "${this.for}" but the element could not be found.`,this)}async handleOptionsChange(){this.hasUpdated&&(await this.updateComplete,this.popup.reposition())}async show(){if(!this.open)return this.open=!0,(0,u.l)(this,"wa-after-show")}async hide(){if(this.open)return this.open=!1,(0,u.l)(this,"wa-after-hide")}handleDialogCancel(e){e.preventDefault(),this.dialog.classList.contains("hide")||(this.open=!1)}render(){return(0,r.qy)(C||(C=D` <dialog aria-labelledby="${0}" aria-describedby="${0}" part="dialog" class="dialog" @cancel="${0}"> <wa-popup part="popup" exportparts="
popup:popup__popup,
arrow:popup__arrow
" class="${0}" placement="${0}" distance="${0}" skidding="${0}" flip shift ?arrow="${0}" .anchor="${0}" .autoSize="${0}" .autoSizePadding="${0}"> <div part="body" class="body" @click="${0}"> <slot></slot> </div> </wa-popup> </dialog> `),(0,i.J)(this.ariaLabelledby),(0,i.J)(this.ariaDescribedby),this.handleDialogCancel,(0,a.H)({popover:!0,"popover-open":this.open}),this.placement,this.distance,this.skidding,!this.withoutArrow,this.anchor,this.autoSize,this.autoSizePadding,this.handleBodyClick)}constructor(){super(...arguments),this.anchor=null,this.placement="top",this.open=!1,this.distance=8,this.skidding=0,this.for=null,this.withoutArrow=!1,this.autoSizePadding=0,this.trapFocus=!1,this.eventController=new AbortController,this.handleAnchorClick=()=>{this.open=!this.open},this.handleBodyClick=e=>{e.stopPropagation();e.target.closest('[data-popover="close"]')&&(this.open=!1)},this.handleDocumentKeyDown=e=>{"Escape"===e.key&&this.open&&(0,p.a0)(this)&&(e.preventDefault(),e.stopPropagation(),this.open=!1,this.anchor&&"function"==typeof this.anchor.focus&&this.anchor.focus())},this.handleDocumentClick=e=>{this.anchor&&e.composedPath().includes(this.anchor)||e.composedPath().includes(this)||(this.open=!1)}}};$.css=v.A,$.dependencies={"wa-popup":b.A},x([(0,n.P)("dialog")],$.prototype,"dialog",2),x([(0,n.P)(".body")],$.prototype,"body",2),x([(0,n.P)("wa-popup")],$.prototype,"popup",2),x([(0,n.wk)()],$.prototype,"anchor",2),x([(0,n.MZ)()],$.prototype,"placement",2),x([(0,n.MZ)({type:Boolean,reflect:!0})],$.prototype,"open",2),x([(0,n.MZ)({type:Number})],$.prototype,"distance",2),x([(0,n.MZ)({type:Number})],$.prototype,"skidding",2),x([(0,n.MZ)()],$.prototype,"for",2),x([(0,n.MZ)({attribute:"without-arrow",type:Boolean,reflect:!0})],$.prototype,"withoutArrow",2),x([(0,n.MZ)({attribute:"auto-size"})],$.prototype,"autoSize",2),x([(0,n.MZ)({attribute:"auto-size-padding",type:Number})],$.prototype,"autoSizePadding",2),x([(0,n.MZ)({attribute:"trap-focus",type:Boolean})],$.prototype,"trapFocus",2),x([(0,n.MZ)({attribute:"aria-labelledby"})],$.prototype,"ariaLabelledby",2),x([(0,n.MZ)({attribute:"aria-describedby"})],$.prototype,"ariaDescribedby",2),x([(0,f.w)("open",{waitUntilFirstUpdate:!0})],$.prototype,"handleOpenChange",1),x([(0,f.w)("for")],$.prototype,"handleForChange",1),x([(0,f.w)(["distance","placement","skidding"])],$.prototype,"handleOptionsChange",1),$=x([(0,n.EM)("wa-popover")],$),t()}catch(C){t(C)}})},10416:function(e,t,o){o.d(t,{A:function(){return n}});let r;var n=(0,o(5124).AH)(r||(r=(e=>e)`:host{--arrow-size:0.375rem;--max-width:25rem;--show-duration:100ms;--hide-duration:100ms;display:contents;font-size:var(--wa-font-size-m);line-height:var(--wa-line-height-normal);text-align:start;white-space:normal}.dialog{display:none;position:fixed;inset:0;width:100%;height:100%;margin:0;padding:0;border:none;background:0 0;overflow:visible;pointer-events:none}.dialog:focus{outline:0}.dialog[open]{display:block}.popover{--arrow-size:inherit;--popup-border-width:var(--wa-panel-border-width);--show-duration:inherit;--hide-duration:inherit;pointer-events:auto}.popover::part(arrow){background-color:var(--wa-color-surface-default);border-top:none;border-left:none;border-bottom:solid var(--wa-panel-border-width) var(--wa-color-surface-border);border-right:solid var(--wa-panel-border-width) var(--wa-color-surface-border);box-shadow:none}.popover[placement^=top]::part(popup){transform-origin:bottom}.popover[placement^=bottom]::part(popup){transform-origin:top}.popover[placement^=left]::part(popup){transform-origin:right}.popover[placement^=right]::part(popup){transform-origin:left}.body{display:flex;flex-direction:column;width:auto;max-width:min(var(--max-width),100vw);padding:var(--wa-space-l);background-color:var(--wa-color-surface-default);border:var(--wa-panel-border-width) solid var(--wa-color-surface-border);border-radius:var(--wa-panel-border-radius);border-style:var(--wa-panel-border-style);box-shadow:var(--wa-shadow-l);color:var(--wa-color-text-normal);user-select:none;-webkit-user-select:none}.popover[data-current-placement^=bottom] .body,.popover[data-current-placement^=top] .body{max-width:min(var(--max-width),100vw - (var(--wa-space-m) * 2));margin-inline:var(--wa-space-m)}.popover[data-current-placement^=left] .body,.popover[data-current-placement^=right] .body{max-height:calc(100vh - (var(--wa-space-m) * 2));margin-block:var(--wa-space-m)}`))},99731:function(e,t,o){o.d(t,{Y:function(){return p}});var r=o(40445),n=o(67576),a=(o(93775),o(18111),o(22489),o(20116),o(62953),o(5124)),i=o(99591);let s,d=e=>e;class l extends a.WF{get chips(){return this.childElements.filter(e=>e instanceof i.v)}render(){return(0,a.qy)(s||(s=d`<slot @slotchange="${0}"></slot>`),this.updateTabIndices)}handleKeyDown(e){const t="ArrowLeft"===e.key,o="ArrowRight"===e.key,r="Home"===e.key,n="End"===e.key;if(!(t||o||r||n))return;const{chips:a}=this;if(a.length<2)return;if(e.preventDefault(),r||n){return a[r?0:a.length-1].focus({trailing:n}),void this.updateTabIndices()}const i="rtl"===getComputedStyle(this).direction?t:o,s=a.find(e=>e.matches(":focus-within"));if(!s){return(i?a[0]:a[a.length-1]).focus({trailing:!i}),void this.updateTabIndices()}const d=a.indexOf(s);let l=i?d+1:d-1;for(;l!==d;){l>=a.length?l=0:l<0&&(l=a.length-1);const e=a[l];if(!e.disabled||e.alwaysFocusable){e.focus({trailing:!i}),this.updateTabIndices();break}i?l++:l--}}updateTabIndices(){const{chips:e}=this;let t;for(const o of e){const e=o.alwaysFocusable||!o.disabled;o.matches(":focus-within")&&e?t=o:(e&&!t&&(t=o),o.tabIndex=-1)}t&&(t.tabIndex=0)}constructor(){super(),this.internals=this.attachInternals(),a.S$||(this.addEventListener("focusin",this.updateTabIndices.bind(this)),this.addEventListener("update-focus",this.updateTabIndices.bind(this)),this.addEventListener("keydown",this.handleKeyDown.bind(this)),this.internals.role="toolbar")}}(0,r.Cg)([(0,n.KN)()],l.prototype,"childElements",void 0);let c;const h=(0,a.AH)(c||(c=(e=>e)`:host{display:flex;flex-wrap:wrap;gap:8px}`));let p=class extends l{};p.styles=[h],p=(0,r.Cg)([(0,n.EM)("md-chip-set")],p)},27525:function(e,t,o){o.d(t,{A6:function(){return i},Ex:function(){return d},RN:function(){return h},RZ:function(){return n},c7:function(){return s},cG:function(){return p},u9:function(){return c},ub:function(){return a},wm:function(){return l},zT:function(){return r}});o(62953);function r(e,t=u){const o=s(e,t);return o&&(o.tabIndex=0,o.focus()),o}function n(e,t=u){const o=d(e,t);return o&&(o.tabIndex=0,o.focus()),o}function a(e,t=u){const o=i(e,t);return o&&(o.item.tabIndex=-1),o}function i(e,t=u){for(let o=0;o<e.length;o++){const r=e[o];if(0===r.tabIndex&&t(r))return{item:r,index:o}}return null}function s(e,t=u){for(const o of e)if(t(o))return o;return null}function d(e,t=u){for(let o=e.length-1;o>=0;o--){const r=e[o];if(t(r))return r}return null}function l(e,t,o=u,n=!0){if(t){const r=function(e,t,o=u,r=!0){for(let n=1;n<e.length;n++){const a=(n+t)%e.length;if(a<t&&!r)return null;const i=e[a];if(o(i))return i}return e[t]?e[t]:null}(e,t.index,o,n);return r&&(r.tabIndex=0,r.focus()),r}return r(e,o)}function c(e,t,o=u,r=!0){if(t){const n=function(e,t,o=u,r=!0){for(let n=1;n<e.length;n++){const a=(t-n+e.length)%e.length;if(a>t&&!r)return null;const i=e[a];if(o(i))return i}return e[t]?e[t]:null}(e,t.index,o,r);return n&&(n.tabIndex=0,n.focus()),n}return n(e,o)}function h(){return new Event("deactivate-items",{bubbles:!0,composed:!0})}function p(){return new Event("request-activation",{bubbles:!0,composed:!0})}function u(e){return!e.disabled}},95192:function(e,t,o){o.d(t,{IU:function(){return l},Jt:function(){return s},Yd:function(){return r},hZ:function(){return d},y$:function(){return n}});o(44114),o(18111),o(7588),o(61701),o(3362),o(62953);function r(e){return new Promise((t,o)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>o(e.error)})}function n(e,t){let o;return(n,a)=>(()=>{if(o)return o;const n=indexedDB.open(e);return n.onupgradeneeded=()=>n.result.createObjectStore(t),o=r(n),o.then(e=>{e.onclose=()=>o=void 0},()=>{}),o})().then(e=>a(e.transaction(t,n).objectStore(t)))}let a;function i(){return a||(a=n("keyval-store","keyval")),a}function s(e,t=i()){return t("readonly",t=>r(t.get(e)))}function d(e,t,o=i()){return o("readwrite",o=>(o.put(t,e),r(o.transaction)))}function l(e=i()){return e("readwrite",e=>(e.clear(),r(e.transaction)))}}}]);