UNPKG

iobroker.lovelace

Version:

With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI

2 lines 12.7 kB
"use strict";(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([["85078"],{56032:function(t,i,e){e.a(t,(async function(t,i){try{var s=e(61701),a=(e(71695),e(47021),e(80519)),o=e(1261),n=e(57243),r=e(50778),d=e(85605),l=t([a]);a=(l.then?(await l)():l)[0];let h,c=t=>t;(0,d.jx)("tooltip.show",{keyframes:[{opacity:0},{opacity:1}],options:{duration:150,easing:"ease"}}),(0,d.jx)("tooltip.hide",{keyframes:[{opacity:1},{opacity:0}],options:{duration:400,easing:"ease"}});(0,s.Z)([(0,r.Mo)("ha-tooltip")],(function(t,i){return{F:class extends i{constructor(...i){super(...i),t(this)}},d:[{kind:"field",static:!0,key:"styles",value(){return[o.Z,(0,n.iv)(h||(h=c`:host{--sl-tooltip-background-color:var(--secondary-background-color);--sl-tooltip-color:var(--primary-text-color);--sl-tooltip-font-family:Roboto,sans-serif;--sl-tooltip-font-size:12px;--sl-tooltip-font-weight:normal;--sl-tooltip-line-height:1;--sl-tooltip-padding:8px;--sl-tooltip-border-radius:var(--ha-tooltip-border-radius, 4px);--sl-tooltip-arrow-size:var(--ha-tooltip-arrow-size, 8px);--sl-z-index-tooltip:var(--ha-tooltip-z-index, 1000)}`))]}}]}}),a.Z);i()}catch(h){i(h)}}))},95818:function(t,i,e){e.a(t,(async function(t,s){try{e.r(i);var a=e(61701),o=e(72621),n=(e(71695),e(9359),e(70104),e(40251),e(47021),e(99619),e(56820),e(57243)),r=e(50778),d=e(27486),l=e(46467),h=e(33570),c=e(50602),u=(e(37583),e(56032)),p=e(49319),v=e(95975),b=e(51223),m=e(47194),f=t([u,v,b,h,l,c]);[u,v,b,h,l,c]=f.then?(await f)():f;let y,g,w,x,_,A,$,k,C,j,O,z,M,L,E,F,V,T,Z,H=t=>t;const U="M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z",B="M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,4A8,8 0 0,1 20,12C20,14.4 19,16.5 17.3,18C15.9,16.7 14,16 12,16C10,16 8.2,16.7 6.7,18C5,16.5 4,14.4 4,12A8,8 0 0,1 12,4M14,5.89C13.62,5.9 13.26,6.15 13.1,6.54L11.81,9.77L11.71,10C11,10.13 10.41,10.6 10.14,11.26C9.73,12.29 10.23,13.45 11.26,13.86C12.29,14.27 13.45,13.77 13.86,12.74C14.12,12.08 14,11.32 13.57,10.76L13.67,10.5L14.96,7.29L14.97,7.26C15.17,6.75 14.92,6.17 14.41,5.96C14.28,5.91 14.15,5.89 14,5.89M10,6A1,1 0 0,0 9,7A1,1 0 0,0 10,8A1,1 0 0,0 11,7A1,1 0 0,0 10,6M7,9A1,1 0 0,0 6,10A1,1 0 0,0 7,11A1,1 0 0,0 8,10A1,1 0 0,0 7,9M17,9A1,1 0 0,0 16,10A1,1 0 0,0 17,11A1,1 0 0,0 18,10A1,1 0 0,0 17,9Z",D="M12,3.25C12,3.25 6,10 6,14C6,17.32 8.69,20 12,20A6,6 0 0,0 18,14C18,10 12,3.25 12,3.25M14.47,9.97L15.53,11.03L9.53,17.03L8.47,15.97M9.75,10A1.25,1.25 0 0,1 11,11.25A1.25,1.25 0 0,1 9.75,12.5A1.25,1.25 0 0,1 8.5,11.25A1.25,1.25 0 0,1 9.75,10M14.25,14.5A1.25,1.25 0 0,1 15.5,15.75A1.25,1.25 0 0,1 14.25,17A1.25,1.25 0 0,1 13,15.75A1.25,1.25 0 0,1 14.25,14.5Z",S="M4,10A1,1 0 0,1 3,9A1,1 0 0,1 4,8H12A2,2 0 0,0 14,6A2,2 0 0,0 12,4C11.45,4 10.95,4.22 10.59,4.59C10.2,5 9.56,5 9.17,4.59C8.78,4.2 8.78,3.56 9.17,3.17C9.9,2.45 10.9,2 12,2A4,4 0 0,1 16,6A4,4 0 0,1 12,10H4M19,12A1,1 0 0,0 20,11A1,1 0 0,0 19,10C18.72,10 18.47,10.11 18.29,10.29C17.9,10.68 17.27,10.68 16.88,10.29C16.5,9.9 16.5,9.27 16.88,8.88C17.42,8.34 18.17,8 19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14H5A1,1 0 0,1 4,13A1,1 0 0,1 5,12H19M18,18H4A1,1 0 0,1 3,17A1,1 0 0,1 4,16H18A3,3 0 0,1 21,19A3,3 0 0,1 18,22C17.17,22 16.42,21.66 15.88,21.12C15.5,20.73 15.5,20.1 15.88,19.71C16.27,19.32 16.9,19.32 17.29,19.71C17.47,19.89 17.72,20 18,20A1,1 0 0,0 19,19A1,1 0 0,0 18,18Z";(0,a.Z)([(0,r.Mo)("more-info-weather")],(function(t,i){class e extends i{constructor(...i){super(...i),t(this)}}return{F:e,d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"stateObj",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_forecastEvent",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_forecastType",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_subscribed",value:void 0},{kind:"method",key:"_unsubscribeForecastEvents",value:function(){this._subscribed&&(this._subscribed.then((t=>t())),this._subscribed=void 0),this._forecastEvent=void 0}},{kind:"method",key:"_subscribeForecastEvents",value:async function(){this._unsubscribeForecastEvents(),this.isConnected&&this.hass&&this.stateObj&&this._forecastType&&(this._subscribed=(0,p.MC)(this.hass,this.stateObj.entity_id,this._forecastType,(t=>{this._forecastEvent=t})))}},{kind:"method",key:"connectedCallback",value:function(){(0,o.Z)(e,"connectedCallback",this,3)([]),this.hasUpdated&&this._subscribeForecastEvents()}},{kind:"method",key:"disconnectedCallback",value:function(){(0,o.Z)(e,"disconnectedCallback",this,3)([]),this._unsubscribeForecastEvents()}},{kind:"method",key:"shouldUpdate",value:function(t){if(t.has("stateObj"))return!0;const i=t.get("hass");return!i||i.locale!==this.hass.locale||i.config.unit_system!==this.hass.config.unit_system}},{kind:"method",key:"willUpdate",value:function(t){if((0,o.Z)(e,"willUpdate",this,3)([t]),!t.has("stateObj")&&this._subscribed||!this.stateObj)t.has("_forecastType")&&this._subscribeForecastEvents();else{var i;const e=t.get("stateObj");(null==e?void 0:e.entity_id)===(null===(i=this.stateObj)||void 0===i?void 0:i.entity_id)&&this._subscribed||(this._forecastType=(0,p.k5)(this.stateObj),this._subscribeForecastEvents())}}},{kind:"field",key:"_supportedForecasts",value(){return(0,d.Z)((t=>(0,p.mm)(t)))}},{kind:"method",key:"render",value:function(){if(!this.hass||!this.stateObj)return n.Ld;const t=(0,p.M0)(this.stateObj.state),i=this._supportedForecasts(this.stateObj),e=(0,p.Rt)(this.stateObj.attributes,this._forecastEvent),s=null==e?void 0:e.forecast,a="hourly"===(null==e?void 0:e.type),o="twice_daily"===(null==e?void 0:e.type),r=(0,p.Cq)(this.stateObj.state,this,void 0,this.hass.auth.accessToken);return(0,n.dy)(y||(y=H` <div class="content"> <div class="icon-image"> ${0} </div> <div class="info"> <div class="name-state"> <div class="state"> ${0} </div> <div class="time-ago"> <ha-tooltip> <ha-relative-time .hass="${0}" .datetime="${0}" capitalize></ha-relative-time> <div slot="content"> <div class="row"> <span class="column-name"> ${0}: </span> <ha-relative-time .hass="${0}" .datetime="${0}" capitalize></ha-relative-time> </div> <div class="row"> <span> ${0}: </span> <ha-relative-time .hass="${0}" .datetime="${0}" capitalize></ha-relative-time> </div> </div> </ha-tooltip> </div> </div> <div class="temp-attribute"> <div class="temp"> ${0} </div> <div class="attribute"> ${0} </div> </div> </div> </div> ${0} ${0} ${0} ${0} ${0} ${0} `),r||(0,n.dy)(g||(g=H` <ha-state-icon class="weather-icon" .stateObj="${0}" .hass="${0}"></ha-state-icon> `),this.stateObj,this.hass),t?(0,m.C)(this.stateObj):this.hass.formatEntityState(this.stateObj),this.hass,this.stateObj.last_changed,this.hass.localize("ui.dialogs.more_info_control.last_changed"),this.hass,this.stateObj.last_changed,this.hass.localize("ui.dialogs.more_info_control.last_updated"),this.hass,this.stateObj.last_updated,void 0!==this.stateObj.attributes.temperature&&null!==this.stateObj.attributes.temperature?(0,n.dy)(w||(w=H` ${0} <span>${0}</span> `),(0,c.uf)(this.stateObj.attributes.temperature,this.hass.locale),(0,p.pv)(this.hass.config,this.stateObj,"temperature")):n.Ld,(0,p.k2)(this.hass,this.stateObj,s),this._showValue(this.stateObj.attributes.pressure)?(0,n.dy)(x||(x=H` <div class="flex"> <ha-svg-icon .path="${0}"></ha-svg-icon> <div class="main"> ${0} </div> <div> ${0} </div> </div> `),B,this.hass.localize("ui.card.weather.attributes.air_pressure"),this.hass.formatEntityAttributeValue(this.stateObj,"pressure")):n.Ld,this._showValue(this.stateObj.attributes.humidity)?(0,n.dy)(_||(_=H` <div class="flex"> <ha-svg-icon .path="${0}"></ha-svg-icon> <div class="main"> ${0} </div> <div> ${0} </div> </div> `),D,this.hass.localize("ui.card.weather.attributes.humidity"),this.hass.formatEntityAttributeValue(this.stateObj,"humidity")):n.Ld,this._showValue(this.stateObj.attributes.wind_speed)?(0,n.dy)(A||(A=H` <div class="flex"> <ha-svg-icon .path="${0}"></ha-svg-icon> <div class="main"> ${0} </div> <div> ${0} </div> </div> `),S,this.hass.localize("ui.card.weather.attributes.wind_speed"),(0,p.NF)(this.hass,this.stateObj,this.stateObj.attributes.wind_speed,this.stateObj.attributes.wind_bearing)):n.Ld,this._showValue(this.stateObj.attributes.visibility)?(0,n.dy)($||($=H` <div class="flex"> <ha-svg-icon .path="${0}"></ha-svg-icon> <div class="main"> ${0} </div> <div> ${0} </div> </div> `),U,this.hass.localize("ui.card.weather.attributes.visibility"),this.hass.formatEntityAttributeValue(this.stateObj,"visibility")):n.Ld,s?(0,n.dy)(k||(k=H` <div class="section"> ${0}: </div> ${0} <div class="forecast"> ${0} </div> `),this.hass.localize("ui.card.weather.forecast"),i.length>1?(0,n.dy)(C||(C=H`<mwc-tab-bar .activeIndex="${0}" @MDCTabBar:activated="${0}"> ${0} </mwc-tab-bar>`),i.findIndex((t=>t===this._forecastType)),this._handleForecastTypeChanged,i.map((t=>(0,n.dy)(j||(j=H`<mwc-tab .label="${0}"></mwc-tab>`),this.hass.localize(`ui.card.weather.${t}`))))):n.Ld,s.map((t=>this._showValue(t.templow)||this._showValue(t.temperature)?(0,n.dy)(O||(O=H` <div> <div> ${0} </div> ${0} <div class="temp"> ${0} </div> <div class="templow"> ${0} </div> </div> `),o?(0,n.dy)(z||(z=H` ${0} <div class="daynight"> ${0}<br> </div> `),(0,l.U8)(new Date(t.datetime),this.hass.locale,this.hass.config),!1!==t.is_daytime?this.hass.localize("ui.card.weather.day"):this.hass.localize("ui.card.weather.night")):a?(0,n.dy)(M||(M=H` ${0} `),(0,h.mr)(new Date(t.datetime),this.hass.locale,this.hass.config)):(0,n.dy)(L||(L=H` ${0} `),(0,l.U8)(new Date(t.datetime),this.hass.locale,this.hass.config)),this._showValue(t.condition)?(0,n.dy)(E||(E=H` <div class="forecast-image-icon"> ${0} </div> `),(0,p.Cq)(t.condition,this,!(t.is_daytime||void 0===t.is_daytime),this.hass.auth.accessToken)):n.Ld,this._showValue(t.temperature)?(0,n.dy)(F||(F=H`${0}°`),(0,c.uf)(t.temperature,this.hass.locale)):"—",this._showValue(t.templow)?(0,n.dy)(V||(V=H`${0}°`),(0,c.uf)(t.templow,this.hass.locale)):a?n.Ld:"—"):n.Ld))):n.Ld,this.stateObj.attributes.attribution?(0,n.dy)(T||(T=H` <div class="attribution"> ${0} </div> `),this.stateObj.attributes.attribution):n.Ld)}},{kind:"method",key:"_handleForecastTypeChanged",value:function(t){this._forecastType=this._supportedForecasts(this.stateObj)[t.detail.index]}},{kind:"get",static:!0,key:"styles",value:function(){return[p.A$,(0,n.iv)(Z||(Z=H`ha-svg-icon{color:var(--paper-item-icon-color);margin-left:8px;margin-inline-start:8px;margin-inline-end:initial}mwc-tab-bar{margin-bottom:4px}.section{margin:16px 0 8px 0;font-size:1.2em}.flex{display:flex;height:32px;align-items:center}.flex>div:last-child{direction:ltr}.main{flex:1;margin-left:24px;margin-inline-start:24px;margin-inline-end:initial}.attribution{text-align:center;margin-top:16px}.attribute,.time-ago{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attribute,.attribution,.daynight,.templow,.time-ago{color:var(--secondary-text-color)}.content{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;margin-bottom:16px}.icon-image{display:flex;align-items:center;min-width:64px;margin-right:16px;margin-inline-end:16px;margin-inline-start:initial}.icon-image>*{flex:0 0 64px;height:64px}.weather-icon{--mdc-icon-size:64px}.info{display:flex;justify-content:space-between;flex-grow:1;overflow:hidden}.temp-attribute{text-align:var(--float-end)}.temp-attribute .temp{position:relative;margin-right:24px;direction:ltr}.temp-attribute .temp span{position:absolute;font-size:24px;top:1px}.state,.temp-attribute .temp{font-size:28px;line-height:1.2}.attribute{font-size:14px;line-height:1}.name-state{overflow:hidden;padding-right:12px;padding-inline-end:12px;padding-inline-start:initial;width:100%}.state{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forecast{display:flex;justify-content:space-around;padding:16px;padding-bottom:0px;overflow-x:auto;scrollbar-color:var(--scrollbar-thumb-color) transparent;scrollbar-width:thin;mask-image:linear-gradient(90deg,transparent 0%,black 5%,black 94%,transparent 100%)}.forecast>div{text-align:center;padding:0 10px}.forecast .icon,.forecast .temp{margin:4px 0}.forecast .temp{font-size:16px}.forecast-image-icon{padding-top:4px;padding-bottom:4px;display:flex;justify-content:center}.forecast-image-icon>*{width:40px;height:40px;--mdc-icon-size:40px}.forecast-icon{--mdc-icon-size:40px}`))]}},{kind:"method",key:"_showValue",value:function(t){return null!=t}}]}}),n.oi);s()}catch(y){s(y)}}))}}]); //# sourceMappingURL=85078.a01ed1c73f73b288.js.map