iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
1 lines • 7.89 kB
JavaScript
"use strict";(self.rspackChunkhome_assistant_frontend=self.rspackChunkhome_assistant_frontend||[]).push([[29130],{48374:function(o,t,a){a(62953);var i=a(40445),l=a(5124),e=a(67576),n=a(63672);a(54276);let r,s,c=o=>o;class d extends l.WF{render(){return(0,l.qy)(r||(r=c` <button type="button" class="button" aria-label="${0}" title="${0}" .disabled="${0}"> <slot></slot> <ha-ripple .disabled="${0}"></ha-ripple> </button> `),(0,n.J)(this.label),(0,n.J)(this.label),Boolean(this.disabled),this.disabled)}constructor(...o){super(...o),this.disabled=!1}}d.styles=(0,l.AH)(s||(s=c`:host{display:block;--control-button-focus-color:var(--secondary-text-color);--control-button-icon-color:var(--primary-text-color);--control-button-background-color:var(--disabled-color);--control-button-background-opacity:0.2;--control-button-border-radius:var(--ha-border-radius-md);--control-button-font-weight:var(--ha-font-weight-medium);--control-button-padding:8px;--mdc-icon-size:20px;--ha-ripple-color:var(--secondary-text-color);color:var(--primary-text-color);width:40px;height:40px;-webkit-tap-highlight-color:transparent}.button{overflow:hidden;position:relative;cursor:pointer;display:flex;flex-direction:row;align-items:center;justify-content:center;text-align:center;width:100%;height:100%;border-radius:var(--control-button-border-radius);border:none;margin:0;padding:var(--control-button-padding);box-sizing:border-box;line-height:inherit;font-family:var(--ha-font-family-body);font-weight:var(--control-button-font-weight);outline:0;overflow:hidden;background:0 0;z-index:0;font-size:inherit;color:inherit;transition:box-shadow 180ms ease-in-out,color 180ms ease-in-out;color:var(--control-button-icon-color)}.button:focus-visible{box-shadow:0 0 0 2px var(--control-button-focus-color)}.button::before{content:"";position:absolute;top:0;left:0;height:100%;width:100%;background-color:var(--control-button-background-color);transition:background-color 180ms ease-in-out,opacity 180ms ease-in-out;opacity:var(--control-button-background-opacity);pointer-events:none;white-space:normal}.button ::slotted(*){pointer-events:none;opacity:.95}.button:disabled{cursor:not-allowed;--control-button-background-color:var(--disabled-color);--control-button-icon-color:var(--disabled-text-color);--control-button-background-opacity:0.2}`)),(0,i.Cg)([(0,e.MZ)({type:Boolean,reflect:!0})],d.prototype,"disabled",void 0),(0,i.Cg)([(0,e.MZ)()],d.prototype,"label",void 0),d=(0,i.Cg)([(0,e.EM)("ha-control-button")],d)},24561:function(o,t,a){a.a(o,async function(o,i){try{a.r(t),a.d(t,{DialogEnterCode:function(){return $}});a(3362),a(62953);var l=a(40445),e=a(5124),n=a(67576),r=a(63672),s=a(1087),c=a(18350),d=(a(48374),a(72554)),u=(a(93444),a(91485)),h=o([c,d,u]);[c,d,u]=h.then?(await h)():h;let p,b,g,m,v,_,y,w=o=>o;const x="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z",f="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z",k=["1","2","3","4","5","6","7","8","9","0","clear","submit"];class $ extends e.WF{async showDialog(o){this._dialogParams=o,this._open=!0,this._showClearButton=!1,this._closeAction=void 0,this._narrow=matchMedia("all and (max-width: 450px), all and (max-height: 500px)").matches,await this.updateComplete}closeDialog(){return this._open=!1,!0}_dialogClosed(){var o,t;this._closeAction||(null===(o=this._dialogParams)||void 0===o||null===(t=o.cancel)||void 0===t||t.call(o));this._dialogParams=void 0,this._showClearButton=!1,this._closeAction=void 0,(0,s.r)(this,"dialog-closed",{dialog:this.localName})}_submit(){var o,t,a,i;null===(o=this._dialogParams)||void 0===o||null===(t=o.submit)||void 0===t||t.call(o,null!==(a=null===(i=this._input)||void 0===i?void 0:i.value)&&void 0!==a?a:""),this._closeAction="submit",this.closeDialog()}_cancel(){var o,t;null===(o=this._dialogParams)||void 0===o||null===(t=o.cancel)||void 0===t||t.call(o),this._closeAction="cancel",this.closeDialog()}_numberClick(o){var t;const a=o.currentTarget.value;this._input.value=(null!==(t=this._input.value)&&void 0!==t?t:"")+a,this._showClearButton=!0}_clear(){this._input.value="",this._showClearButton=!1}_inputValueChange(o){const t=o.currentTarget.value;this._showClearButton=!!t}render(){var o;if(!this._dialogParams||!this.hass)return e.s6;var t,a,i;return"text"===this._dialogParams.codeFormat?(0,e.qy)(p||(p=w` <ha-dialog .open="${0}" header-title="${0}" width="small" ="${0}"> <ha-input class="input" ?autofocus="${0}" id="code" .label="${0}" type="password" autoValidate validateOnInitialRender pattern="${0}" inputmode="text"></ha-input> <ha-dialog-footer slot="footer"> <ha-button slot="secondaryAction" appearance="plain" ="${0}"> ${0} </ha-button> <ha-button slot="primaryAction" ="${0}"> ${0} </ha-button> </ha-dialog-footer> </ha-dialog> `),this._open,null!==(t=this._dialogParams.title)&&void 0!==t?t:this.hass.localize("ui.dialogs.enter_code.title"),this._dialogClosed,!this._narrow,this.hass.localize("ui.dialogs.enter_code.input_label"),(0,r.J)(this._dialogParams.codePattern),this._cancel,null!==(a=this._dialogParams.cancelText)&&void 0!==a?a:this.hass.localize("ui.common.cancel"),this._submit,null!==(i=this._dialogParams.submitText)&&void 0!==i?i:this.hass.localize("ui.common.submit")):(0,e.qy)(b||(b=w` <ha-dialog .open="${0}" header-title="${0}" width="small" ="${0}"> <div class="container"> <ha-input ="${0}" id="code" .label="${0}" type="password" inputmode="numeric" ?autofocus="${0}" password-toggle></ha-input> <div class="keypad"> ${0} </div> </div> </ha-dialog> `),this._open,null!==(o=this._dialogParams.title)&&void 0!==o?o:"Enter code",this._dialogClosed,this._inputValueChange,this.hass.localize("ui.dialogs.enter_code.input_label"),!this._narrow,k.map(o=>{var t;return""===o?(0,e.qy)(g||(g=w`<span></span>`)):"clear"===o?(0,e.qy)(m||(m=w` <ha-control-button ="${0}" class="clear" .disabled="${0}" .label="${0}"> <ha-svg-icon path="${0}"></ha-svg-icon> </ha-control-button> `),this._clear,!this._showClearButton,this.hass.localize("ui.common.clear"),f):"submit"===o?(0,e.qy)(v||(v=w` <ha-control-button ="${0}" class="submit" .label="${0}"> <ha-svg-icon path="${0}"></ha-svg-icon> </ha-control-button> `),this._submit,null!==(t=this._dialogParams.submitText)&&void 0!==t?t:this.hass.localize("ui.common.submit"),x):(0,e.qy)(_||(_=w` <ha-control-button .value="${0}" ="${0}" .label="${0}"> ${0} </ha-control-button> `),o,this._numberClick,o,o)}))}constructor(...o){super(...o),this._open=!1,this._showClearButton=!1,this._narrow=!1}}$.styles=(0,e.AH)(y||(y=w`ha-dialog{--dialog-z-index:104}ha-input{width:100%;margin:auto}.container{display:flex;align-items:center;flex-direction:column}.keypad{--keypad-columns:3;margin-top:12px;padding:12px;display:grid;grid-template-columns:repeat(var(--keypad-columns),auto);grid-auto-rows:auto;grid-gap:var(--ha-space-6);justify-items:center;align-items:center;direction:ltr}.clear{grid-row-start:4;grid-column-start:0} all and (max-height:450px){.keypad{--keypad-columns:6}.clear{grid-row-start:1;grid-column-start:6}}ha-control-button{width:56px;height:56px;--control-button-border-radius:var(--ha-border-radius-4xl);--mdc-icon-size:24px;font-size:var(--ha-font-size-2xl)}.submit{--control-button-background-color:var(--green-color);--control-button-icon-color:var(--green-color)}.clear{--control-button-background-color:var(--red-color);--control-button-icon-color:var(--red-color)}`)),(0,l.Cg)([(0,n.MZ)({attribute:!1})],$.prototype,"hass",void 0),(0,l.Cg)([(0,n.wk)()],$.prototype,"_dialogParams",void 0),(0,l.Cg)([(0,n.wk)()],$.prototype,"_open",void 0),(0,l.Cg)([(0,n.P)("#code")],$.prototype,"_input",void 0),(0,l.Cg)([(0,n.wk)()],$.prototype,"_showClearButton",void 0),(0,l.Cg)([(0,n.wk)()],$.prototype,"_narrow",void 0),$=(0,l.Cg)([(0,n.EM)("dialog-enter-code")],$),i()}catch(p){i(p)}})}}]);