iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
2 lines • 24.4 kB
JavaScript
/*! For license information please see 13390.790a472ce400bba0.js.LICENSE.txt */
"use strict";(self.rspackChunkhome_assistant_frontend=self.rspackChunkhome_assistant_frontend||[]).push([[13390],{97577:function(t,e,i){i.d(e,{A:function(){return O}});i(27495),i(62953);var o=i(5124),s=i(67576),a=i(6412),n=i(63672),r=i(34514),l=i(40991),h=i(92070),d=i(49546),c=i(9395),u=i(62676),p=i(15477),f=i(31896);i(38625);let v;var g=(0,o.AH)(v||(v=(t=>t)`:host{--checked-icon-color:var(--wa-color-brand-on-loud);--checked-icon-scale:0.8;display:inline-flex;color:var(--wa-form-control-value-color);font-family:inherit;font-weight:var(--wa-form-control-value-font-weight);line-height:var(--wa-form-control-value-line-height);user-select:none;-webkit-user-select:none}[part~=control]{display:inline-flex;flex:0 0 auto;position:relative;align-items:center;justify-content:center;width:var(--wa-form-control-toggle-size);height:var(--wa-form-control-toggle-size);border-color:var(--wa-form-control-border-color);border-radius:min(calc(var(--wa-form-control-toggle-size) * .375),var(--wa-border-radius-s));border-style:var(--wa-border-style);border-width:var(--wa-form-control-border-width);background-color:var(--wa-form-control-background-color);transition:background var(--wa-transition-normal),border-color var(--wa-transition-fast),box-shadow var(--wa-transition-fast),color var(--wa-transition-fast);transition-timing-function:var(--wa-transition-easing);margin-inline-end:.5em}[part~=base]{display:flex;align-items:flex-start;position:relative;color:currentColor;vertical-align:middle;cursor:pointer}[part~=label]{display:inline}[part~=control]:has(:checked,:indeterminate){color:var(--checked-icon-color);border-color:var(--wa-form-control-activated-color);background-color:var(--wa-form-control-activated-color)}[part~=control]:has(> input:focus-visible:not(:disabled)){outline:var(--wa-focus-ring);outline-offset:var(--wa-focus-ring-offset)}:host [part~=base]:has(input:disabled){opacity:.5;cursor:not-allowed}input{position:absolute;padding:0;margin:0;height:100%;width:100%;opacity:0;pointer-events:none}[part~=icon]{display:flex;scale:var(--checked-icon-scale)}[part~=icon]::part(svg){translate:0.0009765625em}input:not(:checked,:indeterminate)+[part~=icon]{visibility:hidden}:host([required]) [part~=label]::after{content:var(--wa-form-control-required-content);color:var(--wa-form-control-required-content-color);margin-inline-start:var(--wa-form-control-required-content-offset)}`));let m,b,w,y=t=>t;var k=Object.defineProperty,C=Object.getOwnPropertyDescriptor,x=(t,e,i,o)=>{for(var s,a=o>1?void 0:o?C(e,i):e,n=t.length-1;n>=0;n--)(s=t[n])&&(a=(o?s(e,i,a):s(a))||a);return o&&a&&k(e,i,a),a};let O=class extends u.q{static get validators(){const t=o.S$?[]:[(0,d.Y)({validationProperty:"checked",validationElement:Object.assign(document.createElement("input"),{type:"checkbox",required:!0})})];return[...super.validators,...t]}get value(){var t;return null!==(t=this._value)&&void 0!==t?t:"on"}set value(t){this._value=t}handleSizeChange(){(0,l.b)(this.localName,this.size)}get checked(){var t;return this.valueHasChanged?Boolean(this._checked):null!==(t=this._checked)&&void 0!==t?t:this.defaultChecked}set checked(t){this._checked=Boolean(t),this.valueHasChanged=!0}handleClick(){this.hasInteracted=!0,this.checked=!this.checked,this.indeterminate=!1,this.updateComplete.then(()=>{this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0}))})}connectedCallback(){super.connectedCallback(),this.handleDefaultCheckedChange()}handleDefaultCheckedChange(){this.handleValueOrCheckedChange()}handleValueOrCheckedChange(){this.setValue(this.checked?this.value:null,this._value),this.updateValidity()}handleStateChange(){this.hasUpdated&&(this.input.checked=this.checked,this.input.indeterminate=this.indeterminate),this.customStates.set("checked",this.checked),this.customStates.set("indeterminate",this.indeterminate),this.updateValidity()}handleDisabledChange(){this.customStates.set("disabled",this.disabled)}willUpdate(t){super.willUpdate(t),(t.has("value")||t.has("checked")||t.has("defaultChecked"))&&this.handleValueOrCheckedChange()}formResetCallback(){this._checked=null,super.formResetCallback(),this.handleValueOrCheckedChange()}click(){this.input.click()}focus(t){this.input.focus(t)}blur(){this.input.blur()}render(){const t=!!o.S$||this.hasSlotController.test("hint"),e=!!this.hint||!!t,i=!this.checked&&this.indeterminate,s=i?"indeterminate":"check",l=i?"indeterminate":"check";return(0,o.qy)(m||(m=y` <label part="base"> <span part="control"> <input class="input" type="checkbox" title="${0}" name="${0}" value="${0}" .indeterminate="${0}" .checked="${0}" .disabled="${0}" .required="${0}" aria-checked="${0}" aria-describedby="hint" ="${0}"> <wa-icon part="${0}-icon icon" library="system" name="${0}"></wa-icon> </span> <slot part="label"></slot> </label> <slot id="hint" part="hint" name="hint" aria-hidden="${0}" class="${0}"> ${0} </slot> `),this.title,(0,n.J)(this.name),(0,n.J)(this._value),(0,r.V)(this.indeterminate),(0,r.V)(this.checked),this.disabled,this.required,this.indeterminate?"mixed":this.checked?"true":"false",this.handleClick,l,s,e?"false":"true",(0,a.H)({"has-slotted":e}),this.hint)}constructor(){var t;super(...arguments),this.hasSlotController=new h.X(this,"hint"),this.title="",this.name=null,this._value=null!==(t=this.getAttribute("value"))&&void 0!==t?t:null,this.size="m",this.disabled=!1,this.indeterminate=!1,this._checked=null,this.defaultChecked=this.hasAttribute("checked"),this.required=!1,this.hint=""}};O.css=[p.A,f.A,g],O.shadowRootOptions=Object.assign(Object.assign({},u.q.shadowRootOptions),{},{delegatesFocus:!0}),x([(0,s.P)('input[type="checkbox"]')],O.prototype,"input",2),x([(0,s.MZ)()],O.prototype,"title",2),x([(0,s.MZ)({reflect:!0})],O.prototype,"name",2),x([(0,s.MZ)({reflect:!0})],O.prototype,"value",1),x([(0,s.MZ)({reflect:!0})],O.prototype,"size",2),x([(0,c.w)("size")],O.prototype,"handleSizeChange",1),x([(0,s.MZ)({type:Boolean})],O.prototype,"disabled",2),x([(0,s.MZ)({type:Boolean,reflect:!0})],O.prototype,"indeterminate",2),x([(0,s.MZ)({type:Boolean,attribute:!1})],O.prototype,"checked",1),x([(0,s.MZ)({type:Boolean,reflect:!0,attribute:"checked"})],O.prototype,"defaultChecked",2),x([(0,s.MZ)({type:Boolean,reflect:!0})],O.prototype,"required",2),x([(0,s.MZ)()],O.prototype,"hint",2),x([(0,c.w)(["checked","defaultChecked"])],O.prototype,"handleDefaultCheckedChange",1),x([(0,c.w)(["checked","indeterminate"])],O.prototype,"handleStateChange",1),x([(0,c.w)("disabled")],O.prototype,"handleDisabledChange",1),O=x([(0,s.EM)("wa-checkbox")],O),null===(b=(w=O).disableWarning)||void 0===b||b.call(w,"change-in-update")},93900:function(t,e,i){i.a(t,async function(t,e){try{i(3362),i(27495),i(62953);var o=i(5124),s=i(67576),a=i(6412),n=i(63672),r=i(17051),l=i(42462),h=i(28438),d=i(98779),c=i(27259),u=i(25877),p=i(31247),f=i(4444),v=i(92070),g=i(9395),m=i(717),b=i(17060),w=i(88496),y=i(91470),k=t([w,b]);[w,b]=k.then?(await k)():k;let A,D,$,q=t=>t;var C=Object.defineProperty,x=Object.getOwnPropertyDescriptor,O=(t,e,i,o)=>{for(var s,a=o>1?void 0:o?x(e,i):e,n=t.length-1;n>=0;n--)(s=t[n])&&(a=(o?s(e,i,a):s(a))||a);return o&&a&&C(e,i,a),a};let E=class extends m.A{firstUpdated(){this.open&&(this.addOpenListeners(),this.dialog.showModal(),(0,f.JG)(this))}disconnectedCallback(){super.disconnectedCallback(),(0,f.I7)(this),this.removeOpenListeners()}async requestClose(t){const e=new h.L({source:t});if(this.dispatchEvent(e),e.defaultPrevented)return this.open=!0,void(0,c.Ud)(this.dialog,"pulse");this.removeOpenListeners(),await(0,c.Ud)(this.dialog,"hide"),this.open=!1,this.dialog.close(),(0,f.I7)(this);const i=this.originalTrigger;"function"==typeof(null==i?void 0:i.focus)&&setTimeout(()=>i.focus()),this.dispatchEvent(new r.Z)}addOpenListeners(){document.addEventListener("keydown",this.handleDocumentKeyDown),(0,u.AZ)(this)}removeOpenListeners(){document.removeEventListener("keydown",this.handleDocumentKeyDown),(0,u.Fw)(this)}handleDialogCancel(t){t.preventDefault(),!this.dialog.classList.contains("hide")&&t.target===this.dialog&&(0,u.a0)(this)&&this.requestClose(this.dialog)}handleDialogClick(t){const e=t.target.closest('[data-dialog="close"]');e&&(t.stopPropagation(),this.requestClose(e))}async handleDialogPointerDown(t){t.target===this.dialog&&(this.lightDismiss?this.requestClose(this.dialog):await(0,c.Ud)(this.dialog,"pulse"))}handleOpenChange(){this.open&&!this.dialog.open?this.show():!this.open&&this.dialog.open&&(this.open=!0,this.requestClose(this.dialog))}async show(){const t=new d.k;this.dispatchEvent(t),t.defaultPrevented?this.open=!1:(this.addOpenListeners(),this.originalTrigger=document.activeElement,this.open=!0,this.dialog.showModal(),(0,f.JG)(this),requestAnimationFrame(()=>{const t=this.querySelector("[autofocus]");t&&"function"==typeof t.focus?t.focus():this.dialog.focus()}),await(0,c.Ud)(this.dialog,"show"),this.dispatchEvent(new l.q))}render(){var t;const e=!this.withoutHeader,i=this.hasUpdated?this.hasSlotController.test("footer"):this.withFooter;return(0,o.qy)(A||(A=q` <dialog aria-labelledby="${0}" aria-describedby="${0}" part="dialog" class="${0}" ="${0}" ="${0}" ="${0}"> ${0} <div part="body" class="body"><slot></slot></div> ${0} </dialog> `),null!==(t=this.ariaLabelledby)&&void 0!==t?t:"title",(0,n.J)(this.ariaDescribedby),(0,a.H)({dialog:!0,open:this.open}),this.handleDialogCancel,this.handleDialogClick,this.handleDialogPointerDown,e?(0,o.qy)(D||(D=q` <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" ="${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),t=>this.requestClose(t.target),this.localize.term("close")):"",i?(0,o.qy)($||($=q` <footer part="footer" class="footer"> <slot name="footer"></slot> </footer> `)):"")}constructor(){super(...arguments),this.localize=new b.c(this),this.hasSlotController=new v.X(this,"footer","header-actions","label"),this.open=!1,this.label="",this.withoutHeader=!1,this.lightDismiss=!1,this.withFooter=!1,this.handleDocumentKeyDown=t=>{"Escape"===t.key&&this.open&&(0,u.a0)(this)&&(t.preventDefault(),t.stopPropagation(),this.requestClose(this.dialog))}}};E.css=y.A,O([(0,s.P)(".dialog")],E.prototype,"dialog",2),O([(0,s.MZ)({type:Boolean,reflect:!0})],E.prototype,"open",2),O([(0,s.MZ)({reflect:!0})],E.prototype,"label",2),O([(0,s.MZ)({attribute:"without-header",type:Boolean,reflect:!0})],E.prototype,"withoutHeader",2),O([(0,s.MZ)({attribute:"light-dismiss",type:Boolean})],E.prototype,"lightDismiss",2),O([(0,s.MZ)({attribute:"aria-labelledby"})],E.prototype,"ariaLabelledby",2),O([(0,s.MZ)({attribute:"aria-describedby"})],E.prototype,"ariaDescribedby",2),O([(0,s.MZ)({attribute:"with-footer",type:Boolean})],E.prototype,"withFooter",2),O([(0,g.w)("open",{waitUntilFirstUpdate:!0})],E.prototype,"handleOpenChange",1),E=O([(0,s.EM)("wa-dialog")],E),o.S$||(document.addEventListener("click",t=>{const e=t.target.closest("[data-dialog]");if(e instanceof Element){const[t,i]=(0,p.v)(e.getAttribute("data-dialog")||"");if("open"===t&&null!=i&&i.length){const t=e.getRootNode().getElementById(i);"wa-dialog"===(null==t?void 0:t.localName)?t.open=!0:console.warn(`A dialog with an ID of "${i}" could not be found in this document.`)}}}),document.addEventListener("pointerdown",()=>{})),e()}catch(A){e(A)}})},91470:function(t,e,i){i.d(e,{A:function(){return s}});let o;var s=(0,i(5124).AH)(o||(o=(t=>t)`:host{--width:31rem;--spacing:var(--wa-space-l);--backdrop-filter:none;--show-duration:200ms;--hide-duration:200ms;display:none}:host([open]){display:block}.dialog{display:flex;flex-direction:column;top:0;right:0;bottom:0;left:0;width:var(--width);max-width:calc(100% - var(--wa-space-2xl));max-height:calc(100% - var(--wa-space-2xl));color:inherit;background-color:var(--wa-color-surface-raised);border-radius:var(--wa-panel-border-radius);border:none;box-shadow:var(--wa-shadow-l);padding:0;margin:auto}.dialog.show{animation:show-dialog var(--show-duration) ease}.dialog.show::backdrop{animation:show-backdrop var(--show-duration,200ms) ease}.dialog.hide{animation:show-dialog var(--hide-duration) ease reverse}.dialog.hide::backdrop{animation:show-backdrop var(--hide-duration,200ms) ease reverse}.dialog.pulse{animation:pulse 250ms ease}.dialog:focus{outline:0} screen and (max-width:420px){.dialog{max-height:80vh}}.open{display:flex;opacity:1}.header{flex:0 0 auto;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-family: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{flex:0 0 auto;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(:first-of-type)){margin-inline-start:var(--wa-spacing-xs)}.dialog::backdrop{background-color:var(--wa-color-overlay-modal,rgb(0 0 0 / .25));-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter)} pulse{0%{scale:1}50%{scale:1.02}100%{scale:1}} show-dialog{from{opacity:0;scale:0.8}to{opacity:1;scale:1}} show-backdrop{from{opacity:0}to{opacity:1}} (forced-colors:active){.dialog{border:solid 1px #fff}}`))},49546:function(t,e,i){i.d(e,{Y:function(){return o}});i(44114);const o=(t={})=>{let{validationElement:e,validationProperty:i}=t;e||(e=Object.assign(document.createElement("input"),{required:!0})),i||(i="value");const o={observedAttributes:["required"],message:e.validationMessage,checkValidity(t){var e;const s={message:"",isValid:!0,invalidKeys:[]};if(!(null!==(e=t.required)&&void 0!==e?e:t.hasAttribute("required")))return s;return!t[i]&&(s.message="function"==typeof o.message?o.message(t):o.message||"",s.isValid=!1,s.invalidKeys.push("valueMissing")),s}};return o}},7364:function(t,e,i){i.d(e,{i0:function(){return b}});i(16280),i(44114),i(18111),i(81148),i(22489),i(7588),i(61701),i(45367),i(92731),i(3362),i(88454),i(29452),i(62953);var o=i(5055),s=i(54495),a=i(40054);i(13579),i(17642),i(58004),i(33853),i(45876),i(32475),i(15024),i(31698);const n=new WeakMap;let r=0;const l=new Map,h=new WeakSet,d=()=>new Promise(t=>requestAnimationFrame(t)),c=(t,e)=>{const i=t-e;return 0===i?void 0:i},u=(t,e)=>{const i=t/e;return 1===i?void 0:i},p={left:(t,e)=>{const i=c(t,e);return{value:i,transform:null==i||isNaN(i)?void 0:`translateX(${i}px)`}},top:(t,e)=>{const i=c(t,e);return{value:i,transform:null==i||isNaN(i)?void 0:`translateY(${i}px)`}},width:(t,e)=>{let i;0===e&&(e=1,i={width:"1px"});const o=u(t,e);return{value:o,overrideFrom:i,transform:null==o||isNaN(o)?void 0:`scaleX(${o})`}},height:(t,e)=>{let i;0===e&&(e=1,i={height:"1px"});const o=u(t,e);return{value:o,overrideFrom:i,transform:null==o||isNaN(o)?void 0:`scaleY(${o})`}}},f={duration:333,easing:"ease-in-out"},v=["left","top","width","height","opacity","color","background"],g=new WeakMap;class m extends a.Kq{createFinished(){var t;null!==(t=this.resolveFinished)&&void 0!==t&&t.call(this),this.finished=new Promise(t=>{this.l=t})}async resolveFinished(){var t;null!==(t=this.l)&&void 0!==t&&t.call(this),this.l=void 0}render(t){return o.s6}getController(){return n.get(this.u)}isDisabled(){var t;return this.options.disabled||(null===(t=this.getController())||void 0===t?void 0:t.disabled)}update(t,[e]){var i;const o=void 0===this.u;return o&&(this.u=null===(i=t.options)||void 0===i?void 0:i.host,this.u.addController(this),this.u.updateComplete.then(t=>this.t=!0),this.element=t.element,g.set(this.element,this)),this.optionsOrCallback=e,(o||"function"!=typeof e)&&this.m(e),this.render(e)}m(t){var e,i;t=null!=t?t:{};const o=this.getController();void 0!==o&&((t=Object.assign(Object.assign({},o.defaultOptions),t)).keyframeOptions=Object.assign(Object.assign({},o.defaultOptions.keyframeOptions),t.keyframeOptions)),null!==(i=(e=t).properties)&&void 0!==i||(e.properties=v),this.options=t}p(){const t={},e=this.element.getBoundingClientRect(),i=getComputedStyle(this.element);return this.options.properties.forEach(o=>{var s;const a=null!==(s=e[o])&&void 0!==s?s:p[o]?void 0:i[o],n=Number(a);t[o]=isNaN(n)?a+"":n}),t}v(){let t,e=!0;return this.options.guard&&(t=this.options.guard(),e=((t,e)=>{if(Array.isArray(t)){if(Array.isArray(e)&&e.length===t.length&&t.every((t,i)=>t===e[i]))return!1}else if(e===t)return!1;return!0})(t,this._)),this.h=this.t&&!this.isDisabled()&&!this.isAnimating()&&e&&this.element.isConnected,this.h&&(this._=Array.isArray(t)?Array.from(t):t),this.h}hostUpdate(){var t;"function"==typeof this.optionsOrCallback&&this.m(this.optionsOrCallback()),this.v()&&(this.A=this.p(),this.i=null!==(t=this.i)&&void 0!==t?t:this.element.parentNode,this.o=this.element.nextSibling)}async hostUpdated(){if(!this.h||!this.element.isConnected||this.options.skipInitial&&!this.isHostRendered)return;let t;this.prepare(),await d;const e=this.P(),i=this.V(this.options.keyframeOptions,e),o=this.p();if(void 0!==this.A){const{from:i,to:s}=this.O(this.A,o,e);this.log("measured",[this.A,o,i,s]),t=this.calculateKeyframes(i,s)}else{const i=l.get(this.options.inId);if(i){l.delete(this.options.inId);const{from:s,to:a}=this.O(i,o,e);t=this.calculateKeyframes(s,a),t=this.options.in?[Object.assign(Object.assign({},this.options.in[0]),t[0]),...this.options.in.slice(1),t[1]]:t,r++,t.forEach(t=>t.zIndex=r)}else this.options.in&&(t=[...this.options.in,{}])}this.animate(t,i)}resetStyles(){var t;void 0!==this.j&&(this.element.setAttribute("style",null!==(t=this.j)&&void 0!==t?t:""),this.j=void 0)}commitStyles(){var t,e;this.j=this.element.getAttribute("style"),null!==(t=this.webAnimation)&&void 0!==t&&t.commitStyles(),null===(e=this.webAnimation)||void 0===e||e.cancel()}reconnected(){}async disconnected(){var t;if(!this.h)return;if(void 0!==this.options.id&&l.set(this.options.id,this.A),void 0===this.options.out)return;if(this.prepare(),await d(),null!==(t=this.i)&&void 0!==t&&t.isConnected){const t=this.o&&this.o.parentNode===this.i?this.o:null;if(this.i.insertBefore(this.element,t),this.options.stabilizeOut){const t=this.p();this.log("stabilizing out");const e=this.A.left-t.left,i=this.A.top-t.top;!("static"===getComputedStyle(this.element).position)||0===e&&0===i||(this.element.style.position="relative"),0!==e&&(this.element.style.left=e+"px"),0!==i&&(this.element.style.top=i+"px")}}const e=this.V(this.options.keyframeOptions);await this.animate(this.options.out,e),this.element.remove()}prepare(){this.createFinished()}start(){var t,e;null===(t=(e=this.options).onStart)||void 0===t||t.call(e,this)}didFinish(t){var e,i;t&&null!==(e=(i=this.options).onComplete)&&void 0!==e&&e.call(i,this),this.A=void 0,this.animatingProperties=void 0,this.frames=void 0,this.resolveFinished()}P(){const t=[];for(let i=this.element.parentNode;i;i=null===(e=i)||void 0===e?void 0:e.parentNode){var e;const o=g.get(i);o&&!o.isDisabled()&&o&&t.push(o)}return t}get isHostRendered(){const t=h.has(this.u);return t||this.u.updateComplete.then(()=>{h.add(this.u)}),t}V(t,e=this.P()){const i=Object.assign({},f);return e.forEach(t=>Object.assign(i,t.options.keyframeOptions)),Object.assign(i,t),i}O(t,e,i){t=Object.assign({},t),e=Object.assign({},e);const o=i.map(t=>t.animatingProperties).filter(t=>void 0!==t);let s=1,a=1;return o.length>0&&(o.forEach(t=>{t.width&&(s/=t.width),t.height&&(a/=t.height)}),void 0!==t.left&&void 0!==e.left&&(t.left=s*t.left,e.left=s*e.left),void 0!==t.top&&void 0!==e.top&&(t.top=a*t.top,e.top=a*e.top)),{from:t,to:e}}calculateKeyframes(t,e,i=!1){const o={},s={};let a=!1;const n={};for(const l in e){const i=t[l],h=e[l];if(l in p){var r;const t=p[l];if(void 0===i||void 0===h)continue;const e=t(i,h);void 0!==e.transform&&(n[l]=e.value,a=!0,o.transform=`${null!==(r=o.transform)&&void 0!==r?r:""} ${e.transform}`,void 0!==e.overrideFrom&&Object.assign(o,e.overrideFrom))}else i!==h&&void 0!==i&&void 0!==h&&(a=!0,o[l]=i,s[l]=h)}return o.transformOrigin=s.transformOrigin=i?"center center":"top left",this.animatingProperties=n,a?[o,s]:void 0}async animate(t,e=this.options.keyframeOptions){this.start(),this.frames=t;let i=!1;if(!this.isAnimating()&&!this.isDisabled()&&(this.options.onFrames&&(this.frames=t=this.options.onFrames(this),this.log("modified frames",t)),void 0!==t)){this.log("animate",[t,e]),i=!0,this.webAnimation=this.element.animate(t,e);const o=this.getController();null==o||o.add(this);try{await this.webAnimation.finished}catch(t){}null==o||o.remove(this)}return this.didFinish(i),i}isAnimating(){var t,e;return"running"===(null===(t=this.webAnimation)||void 0===t?void 0:t.playState)||(null===(e=this.webAnimation)||void 0===e?void 0:e.pending)}log(t,e){this.shouldLog&&!this.isDisabled()&&console.log(t,this.options.id,e)}constructor(t){if(super(t),this.t=!1,this.i=null,this.o=null,this.h=!0,this.shouldLog=!1,t.type===s.OA.CHILD)throw Error("The `animate` directive must be used in attribute position.");this.createFinished()}}const b=(0,s.u$)(m);i(74423);const w=["top","right","bottom","left"];class y extends a.Kq{render(t,e){return o.s6}update(t,[e,i]){var o;return void 0===this.u&&(this.u=null===(o=t.options)||void 0===o?void 0:o.host,this.u.addController(this)),this.C=t.element,this.N=e,this.S=null!=i?i:["left","top","width","height"],this.render(e,i)}hostUpdated(){this.F()}F(){var t,e;const i="function"==typeof this.N?this.N():null===(t=this.N)||void 0===t?void 0:t.value,o=i.offsetParent;if(void 0===i||!o)return;const s=i.getBoundingClientRect(),a=o.getBoundingClientRect();null===(e=this.S)||void 0===e||e.forEach(t=>{const e=w.includes(t)?s[t]-a[t]:s[t];this.C.style[t]=e+"px"})}constructor(t){if(super(t),t.type!==s.OA.ELEMENT)throw Error("The `position` directive must be used in attribute position.")}}(0,s.u$)(y)},40054:function(t,e,i){i.d(e,{Kq:function(){return o.Kq}});var o=i(37540)},75751:function(t,e,i){i.d(e,{u:function(){return r}});i(16280),i(45367),i(92731),i(62953);var o=i(5055),s=i(42017),a=i(63937);const n=(t,e,i)=>{const o=new Map;for(let s=e;s<=i;s++)o.set(t[s],s);return o},r=(0,s.u$)(class extends s.WL{dt(t,e,i){let o;void 0===i?i=e:void 0!==e&&(o=e);const s=[],a=[];let n=0;for(const r of t)s[n]=o?o(r,n):n,a[n]=i(r,n),n++;return{values:a,keys:s}}render(t,e,i){return this.dt(t,e,i).values}update(t,[e,i,s]){var r;const l=(0,a.cN)(t),{values:h,keys:d}=this.dt(e,i,s);if(!Array.isArray(l))return this.ut=d,h;const c=null!==(r=this.ut)&&void 0!==r?r:this.ut=[],u=[];let p,f,v=0,g=l.length-1,m=0,b=h.length-1;for(;v<=g&&m<=b;)if(null===l[v])v++;else if(null===l[g])g--;else if(c[v]===d[m])u[m]=(0,a.lx)(l[v],h[m]),v++,m++;else if(c[g]===d[b])u[b]=(0,a.lx)(l[g],h[b]),g--,b--;else if(c[v]===d[b])u[b]=(0,a.lx)(l[v],h[b]),(0,a.Dx)(t,u[b+1],l[v]),v++,b--;else if(c[g]===d[m])u[m]=(0,a.lx)(l[g],h[m]),(0,a.Dx)(t,l[v],l[g]),g--,m++;else if(void 0===p&&(p=n(d,m,b),f=n(c,v,g)),p.has(c[v]))if(p.has(c[g])){const e=f.get(d[m]),i=void 0!==e?l[e]:null;if(null===i){const e=(0,a.Dx)(t,l[v]);(0,a.lx)(e,h[m]),u[m]=e}else u[m]=(0,a.lx)(i,h[m]),(0,a.Dx)(t,l[v],i),l[e]=null;m++}else(0,a.KO)(l[g]),g--;else(0,a.KO)(l[v]),v++;for(;m<=b;){const e=(0,a.Dx)(t,u[b+1]);(0,a.lx)(e,h[m]),u[m++]=e}for(;v<=g;){const t=l[v++];null!==t&&(0,a.KO)(t)}return this.ut=d,(0,a.mY)(t,u),o.c0}constructor(t){if(super(t),t.type!==s.OA.CHILD)throw Error("repeat() can only be used in text expressions")}})}}]);