iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
2 lines • 4.98 kB
JavaScript
export const __webpack_ids__=["95627"];export const __webpack_modules__={14021:function(t,e,o){var i=o(44249),a=(o(9359),o(31526),o(70104),o(31622),o(57243)),l=o(15093),n=o(69634),r=o(36522);o(23334);(0,i.Z)([(0,l.Mo)("ha-button-toggle-group")],(function(t,e){return{F:class extends e{constructor(...e){super(...e),t(this)}},d:[{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"buttons",value:void 0},{kind:"field",decorators:[(0,l.Cb)()],key:"active",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:"full-width",type:Boolean})],key:"fullWidth",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"dense",value:()=>!1},{kind:"field",decorators:[(0,l.Kt)("mwc-button")],key:"_buttons",value:void 0},{kind:"method",key:"render",value:function(){return a.dy` <div> ${this.buttons.map((t=>t.iconPath?a.dy`<ha-icon-button .label="${t.label}" .path="${t.iconPath}" .value="${t.value}" ?active="${this.active===t.value}" @click="${this._handleClick}"></ha-icon-button>`:a.dy`<mwc-button style="${(0,n.V)({width:this.fullWidth?100/this.buttons.length+"%":"initial"})}" outlined .dense="${this.dense}" .value="${t.value}" ?active="${this.active===t.value}" @click="${this._handleClick}">${t.label}</mwc-button>`))} </div> `}},{kind:"method",key:"updated",value:function(){this._buttons?.forEach((async t=>{await t.updateComplete,t.shadowRoot.querySelector("button").style.margin="0"}))}},{kind:"method",key:"_handleClick",value:function(t){this.active=t.currentTarget.value,(0,r.B)(this,"value-changed",{value:this.active})}},{kind:"field",static:!0,key:"styles",value:()=>a.iv`div{display:flex;--mdc-icon-button-size:var(--button-toggle-size, 36px);--mdc-icon-size:var(--button-toggle-icon-size, 20px);direction:ltr}mwc-button{flex:1;--mdc-shape-small:0;--mdc-button-outline-width:1px 0 1px 1px;--mdc-button-outline-color:var(--primary-color)}ha-icon-button{border:1px solid var(--primary-color);border-right-width:0px}ha-icon-button,mwc-button{position:relative;cursor:pointer}ha-icon-button::before,mwc-button::before{top:0;left:0;width:100%;height:100%;position:absolute;background-color:var(--primary-color);opacity:0;pointer-events:none;content:"";transition:opacity 15ms linear,background-color 15ms linear}ha-icon-button[active]::before,mwc-button[active]::before{opacity:1}ha-icon-button[active]{--icon-primary-color:var(--text-primary-color)}mwc-button[active]{--mdc-theme-primary:var(--text-primary-color)}ha-icon-button:first-child,mwc-button:first-child{--mdc-shape-small:4px 0 0 4px;border-radius:4px 0 0 4px;--mdc-button-outline-width:1px}mwc-button:first-child::before{border-radius:4px 0 0 4px}ha-icon-button:last-child,mwc-button:last-child{border-radius:0 4px 4px 0;border-right-width:1px;--mdc-shape-small:0 4px 4px 0;--mdc-button-outline-width:1px}mwc-button:last-child::before{border-radius:0 4px 4px 0}ha-icon-button:only-child,mwc-button:only-child{--mdc-shape-small:4px;border-right-width:1px}`}]}}),a.oi)},96364:function(t,e,o){o.r(e),o.d(e,{HaButtonToggleSelector:()=>d});var i=o(44249),a=(o(9359),o(31526),o(70104),o(87319),o(57243)),l=o(15093),n=o(36522),r=o(1416);o(14021);let d=(0,i.Z)([(0,l.Mo)("ha-selector-button_toggle")],(function(t,e){return{F:class extends e{constructor(...e){super(...e),t(this)}},d:[{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"selector",value:void 0},{kind:"field",decorators:[(0,l.Cb)()],key:"value",value:void 0},{kind:"field",decorators:[(0,l.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,l.Cb)()],key:"helper",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"localizeValue",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"required",value:()=>!0},{kind:"method",key:"render",value:function(){const t=this.selector.button_toggle?.options?.map((t=>"object"==typeof t?t:{value:t,label:t}))||[],e=this.selector.button_toggle?.translation_key;this.localizeValue&&e&&t.forEach((t=>{const o=this.localizeValue(`${e}.options.${t.value}`);o&&(t.label=o)})),this.selector.button_toggle?.sort&&t.sort(((t,e)=>(0,r.fe)(t.label,e.label,this.hass.locale.language)));const o=t.map((t=>({label:t.label,value:t.value})));return a.dy` ${this.label} <ha-button-toggle-group .buttons="${o}" .active="${this.value}" @value-changed="${this._valueChanged}"></ha-button-toggle-group> `}},{kind:"method",key:"_valueChanged",value:function(t){t.stopPropagation();const e=t.detail?.value||t.target.value;this.disabled||void 0===e||e===(this.value??"")||(0,n.B)(this,"value-changed",{value:e})}},{kind:"field",static:!0,key:"styles",value:()=>a.iv`:host{position:relative;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;align-items:center}@media all and (max-width:600px){ha-button-toggle-group{flex:1}}`}]}}),a.oi)}};
//# sourceMappingURL=95627.0648b377d476b0f2.js.map