iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
1 lines • 14.3 kB
JavaScript
export const __rspack_esm_id=24484;export const __rspack_esm_ids=[24484];export const __webpack_modules__={92020(t,e,a){a.a(t,async function(t,o){try{a.d(e,{d:()=>d});var i=a(83309),s=a(12010),r=a(95747),n=a(30162),l=t([n,r]);[n,r]=l.then?(await l)():l;const d=(t,e,a,o)=>{const l=o??new Date;return(0,i.r)(t,l)?(0,n.fU)(t,e,a):(0,s.s)(t,l)?(0,r.ZS)(t,e,a):(0,r.aQ)(t,e,a)};o()}catch(t){o(t)}})},70773(t,e,a){a.a(t,async function(t,e){try{var o=a(62826),i=a(92913),s=a(35932),r=a(83339),n=a(5124),l=a(22441),d=a(92020),h=t([d]);d=(h.then?(await h)():h)[0];const c=5e3;class p extends n.mN{disconnectedCallback(){super.disconnectedCallback(),this._clearTimeout()}connectedCallback(){super.connectedCallback(),this.datetime&&this._updateNextDay()}createRenderRoot(){return this}firstUpdated(t){super.firstUpdated(t),this._updateAbsolute()}update(t){super.update(t),this._updateAbsolute()}_clearTimeout(){this._timeout&&(window.clearTimeout(this._timeout),this._timeout=void 0)}_updateNextDay(){this._clearTimeout();const t=new Date,e=(0,i.f)((0,s.o)(t),1),a=(0,r.b)(e,t)+c;this._timeout=window.setTimeout(()=>{this._updateNextDay(),this._updateAbsolute()},a)}_updateAbsolute(){this.datetime?this.innerHTML=(0,d.d)(new Date(this.datetime),this.hass.locale,this.hass.config):this.innerHTML=this.hass.localize("ui.components.absolute_time.never")}}(0,o.Cg)([(0,l.MZ)({attribute:!1})],p.prototype,"hass",void 0),(0,o.Cg)([(0,l.MZ)({attribute:!1})],p.prototype,"datetime",void 0),p=(0,o.Cg)([(0,l.EM)("ha-absolute-time")],p),e()}catch(t){e(t)}})},62501(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaIconButtonToggle:()=>d});var i=a(62826),s=a(5124),r=a(22441),n=a(26300),l=t([n]);n=(l.then?(await l)():l)[0];class d extends n.HaIconButton{constructor(...t){super(...t),this.selected=!1}}d.styles=[n.HaIconButton.styles,s.AH`:host{position:relative}ha-button::part(base){position:relative;transition:color 180ms ease-in-out}ha-button::part(base)::before{opacity:0;transition:opacity 180ms ease-in-out;background-color:var(--primary-text-color);border-radius:var(--ha-border-radius-2xl);height:40px;width:40px;content:"";position:absolute;top:-10px;left:-10px;bottom:-10px;right:-10px;margin:auto;box-sizing:border-box}:host([border-only]) ha-button::part(base)::before{background-color:transparent;border:2px solid var(--primary-text-color)}:host([selected]) ha-button::after{opacity:0}:host([selected]) ha-button::part(base){color:var(--primary-background-color);background-color:unset}:host([selected]:not([disabled])) ha-button::part(base)::before{opacity:1}::slotted(*){display:block}`],(0,i.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],d.prototype,"selected",void 0),d=(0,i.Cg)([(0,r.EM)("ha-icon-button-toggle")],d),o()}catch(t){o(t)}})},85938(t,e,a){a(18111),a(22489),a(46058);var o=a(62826),i=a(5124),s=a(22441),r=a(1087);class n extends i.WF{updated(t){t.has("disabled")&&(this.disabled?this._destroySortable():this._createSortable())}disconnectedCallback(){super.disconnectedCallback(),this._shouldBeDestroy=!0,setTimeout(()=>{this._shouldBeDestroy&&(this._destroySortable(),this._shouldBeDestroy=!1)},1)}connectedCallback(){super.connectedCallback(),this._shouldBeDestroy=!1,this.hasUpdated&&!this.disabled&&this._createSortable()}createRenderRoot(){return this}render(){return this.noStyle?i.s6:i.qy` <style>.sortable-fallback{display:none!important}.sortable-ghost{box-shadow:0 0 0 2px var(--primary-color);background:rgba(var(--rgb-primary-color),.25);border-radius:var(--ha-border-radius-sm);opacity:.4}.sortable-drag{border-radius:var(--ha-border-radius-sm);opacity:1;background:var(--card-background-color);box-shadow:0px 4px 8px 3px #00000026;cursor:grabbing}</style> `}async _createSortable(){if(this._sortable)return;const t=this.children[0];if(!t)return;const e=(await Promise.all([a.e(85283),a.e(70322)]).then(a.bind(a,80745))).default,o={scroll:!0,forceAutoScrollFallback:!0,scrollSpeed:20,animation:150,...this.options,onChoose:this._handleChoose,onStart:this._handleStart,onEnd:this._handleEnd,onUpdate:this._handleUpdate,onAdd:this._handleAdd,onRemove:this._handleRemove};this.draggableSelector&&(o.draggable=this.draggableSelector),this.handleSelector&&(o.handle=this.handleSelector),void 0!==this.invertSwap&&(o.invertSwap=this.invertSwap),this.group&&(o.group=this.group),this.filter&&(o.filter=this.filter),this._sortable=new e(t,o)}_destroySortable(){this._sortable&&(this._sortable.destroy(),this._sortable=void 0)}constructor(...t){super(...t),this.disabled=!1,this.noStyle=!1,this.invertSwap=!1,this.rollback=!0,this._shouldBeDestroy=!1,this._handleUpdate=t=>{(0,r.r)(this,"item-moved",{newIndex:t.newIndex,oldIndex:t.oldIndex})},this._handleAdd=t=>{(0,r.r)(this,"item-added",{index:t.newIndex,data:t.item.sortableData,item:t.item})},this._handleRemove=t=>{(0,r.r)(this,"item-removed",{index:t.oldIndex})},this._handleEnd=async t=>{(0,r.r)(this,"drag-end"),this.rollback&&t.item.placeholder&&(t.item.placeholder.replaceWith(t.item),delete t.item.placeholder)},this._handleStart=()=>{(0,r.r)(this,"drag-start")},this._handleChoose=t=>{this.rollback&&(t.item.placeholder=document.createComment("sort-placeholder"),t.item.after(t.item.placeholder))}}}(0,o.Cg)([(0,s.MZ)({type:Boolean})],n.prototype,"disabled",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean,attribute:"no-style"})],n.prototype,"noStyle",void 0),(0,o.Cg)([(0,s.MZ)({type:String,attribute:"draggable-selector"})],n.prototype,"draggableSelector",void 0),(0,o.Cg)([(0,s.MZ)({type:String,attribute:"handle-selector"})],n.prototype,"handleSelector",void 0),(0,o.Cg)([(0,s.MZ)({type:String,attribute:"filter"})],n.prototype,"filter",void 0),(0,o.Cg)([(0,s.MZ)({type:String})],n.prototype,"group",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean,attribute:"invert-swap"})],n.prototype,"invertSwap",void 0),(0,o.Cg)([(0,s.MZ)({attribute:!1})],n.prototype,"options",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean})],n.prototype,"rollback",void 0),n=(0,o.Cg)([(0,s.EM)("ha-sortable")],n)},64841(t,e,a){a(18111),a(61701);var o=a(62826),i=a(5124),s=a(22441),r=a(6412),n=a(63672),l=a(1087),d=(a(8889),a(85938),a(67094),a(19037));const h={delay:250,delayOnTouchOnly:!0};class c extends i.WF{_itemMoved(t){t.stopPropagation(),(0,l.r)(this,"favorite-item-moved",t.detail)}render(){return i.qy` <ha-sortable -moved="${this._itemMoved}" draggable-selector=".favorite" no-style .disabled="${!this.editMode}" .options="${h}"> <div class="container"> ${this.items.map((t,e)=>i.qy` <div class="favorite"> <div class="favorite-bubble ${(0,r.H)({shake:!!this.editMode})}"> <div class="item" data-index="${String(e)}" .actionHandler="${(0,d.T)({hasHold:!this.editMode&&this.isAdmin,disabled:this.disabled})}" ="${this._handleItemAction}"> ${this.renderItem?this.renderItem(t,e,this.editMode):i.s6} </div> ${this.editMode?i.qy` <button ="${this._handleDelete}" class="delete" data-index="${String(e)}" aria-label="${(0,n.J)(this.deleteLabel?.(e))}" title="${(0,n.J)(this.deleteLabel?.(e))}"> <ha-svg-icon .path="${"M19,13H5V11H19V13Z"}"></ha-svg-icon> </button> `:i.s6} </div> </div> `)} ${this.editMode&&this.showAdd?i.qy` <ha-outlined-icon-button class="button" ="${this._handleAdd}" .label="${this.addLabel}"> <ha-svg-icon .path="${"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}"></ha-svg-icon> </ha-outlined-icon-button> `:i.s6} ${this.editMode&&this.showDone?i.qy` <ha-outlined-icon-button ="${this._handleDone}" class="button" .label="${this.doneLabel}"> <ha-svg-icon .path="${"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"}"></ha-svg-icon> </ha-outlined-icon-button> `:i.s6} </div> </ha-sortable> `}constructor(...t){super(...t),this.items=[],this.editMode=!1,this.disabled=!1,this.isAdmin=!1,this.showAdd=!0,this.showDone=!0,this.addLabel="",this.doneLabel="",this._handleItemAction=t=>{t.stopPropagation();const e=t.currentTarget;(0,l.r)(this,"favorite-item-action",{index:Number(e.dataset.index),action:t.detail.action})},this._handleDelete=t=>{t.stopPropagation();const e=t.currentTarget;(0,l.r)(this,"favorite-item-delete",{index:Number(e.dataset.index)})},this._handleAdd=t=>{t.stopPropagation(),(0,l.r)(this,"favorite-item-add")},this._handleDone=t=>{t.stopPropagation(),(0,l.r)(this,"favorite-item-done")}}}c.styles=i.AH`.container{position:relative;display:flex;align-items:center;justify-content:center;margin:calc(var(--ha-space-2) * -1);flex-wrap:wrap;max-width:var(--favorite-items-max-width,250px);user-select:none}.container>*{margin:var(--ha-space-2)}.favorite{display:block}.favorite .favorite-bubble.shake{position:relative;display:block;animation:shake .45s linear infinite}.favorite:nth-child(3n+1) .favorite-bubble.shake{animation-delay:.15s}.favorite:nth-child(3n+2) .favorite-bubble.shake{animation-delay:.3s}.sortable-ghost{opacity:.4}.sortable-fallback{display:none} shake{0%{transform:rotateZ(0deg) translateX(-1px) translateY(0) scale(1)}20%{transform:rotateZ(-3deg) translateX(0) translateY(0)}40%{transform:rotateZ(0deg) translateX(1px) translateY(0)}60%{transform:rotateZ(3deg) translateX(0) translateY(0)}100%{transform:rotateZ(0deg) translateX(-1px) translateY(0)}}.delete{position:absolute;top:-6px;right:-6px;inset-inline-end:-6px;inset-inline-start:initial;width:20px;height:20px;outline:0;background-color:var(--secondary-background-color);padding:0;border-radius:var(--ha-border-radius-md);border:none;cursor:pointer;display:block;--mdc-icon-size:12px;color:var(--primary-text-color)}.delete *{pointer-events:none}ha-control-button.active{--control-button-background-color:var(--favorite-item-active-background-color)}`,(0,o.Cg)([(0,s.MZ)({attribute:!1})],c.prototype,"items",void 0),(0,o.Cg)([(0,s.MZ)({attribute:!1})],c.prototype,"renderItem",void 0),(0,o.Cg)([(0,s.MZ)({attribute:!1})],c.prototype,"deleteLabel",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean,attribute:!1})],c.prototype,"editMode",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean})],c.prototype,"disabled",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean,attribute:!1})],c.prototype,"isAdmin",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean,attribute:!1})],c.prototype,"showAdd",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean,attribute:!1})],c.prototype,"showDone",void 0),(0,o.Cg)([(0,s.MZ)({attribute:!1})],c.prototype,"addLabel",void 0),(0,o.Cg)([(0,s.MZ)({attribute:!1})],c.prototype,"doneLabel",void 0),c=(0,o.Cg)([(0,s.EM)("ha-more-info-favorites")],c)},6531(t,e,a){a.a(t,async function(t,e){try{var o=a(62826),i=a(5124),s=a(22441),r=a(70773),n=a(36158),l=a(22675),d=a(64808),h=a(62688),c=t([r,n,h]);[r,n,h]=c.then?(await c)():c;class p extends i.WF{_localizeState(){return this.stateObj.attributes.device_class===d.Sn&&this.stateObj.state!==l.Hh&&this.stateObj.state!==l.HV?i.qy` <hui-timestamp-display .hass="${this.hass}" .ts="${new Date(this.stateObj.state)}" format="relative" capitalize></hui-timestamp-display> `:this.hass.formatEntityState(this.stateObj)}_toggleAbsolute(){this._absoluteTime=!this._absoluteTime}render(){const t=this.stateOverride??this._localizeState();return i.qy` <p class="state">${t}</p> <div class="time-row"> <p class="last-changed" ="${this._toggleAbsolute}"> ${this._absoluteTime?i.qy` <ha-absolute-time .hass="${this.hass}" .datetime="${this.changedOverride??this.stateObj.last_changed}"></ha-absolute-time> `:i.qy` <ha-relative-time .hass="${this.hass}" .datetime="${this.changedOverride??this.stateObj.last_changed}" capitalize></ha-relative-time> `} </p> <slot name="after-time"></slot> </div> `}constructor(...t){super(...t),this._absoluteTime=!1}}p.styles=i.AH`p{text-align:center;margin:0}.state{font-style:normal;font-weight:var(--ha-font-weight-normal);font-size:36px;line-height:var(--ha-line-height-condensed)}.time-row{position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:var(--ha-space-5)}::slotted([slot=after-time]){position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%)}.last-changed{font-style:normal;font-size:var(--ha-font-size-l);font-weight:var(--ha-font-weight-medium);line-height:var(--ha-line-height-normal);letter-spacing:.1px;padding:var(--ha-space-1) 0;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}`,(0,o.Cg)([(0,s.MZ)({attribute:!1})],p.prototype,"hass",void 0),(0,o.Cg)([(0,s.MZ)({attribute:!1})],p.prototype,"stateObj",void 0),(0,o.Cg)([(0,s.MZ)({attribute:!1})],p.prototype,"stateOverride",void 0),(0,o.Cg)([(0,s.MZ)({attribute:!1})],p.prototype,"changedOverride",void 0),(0,o.Cg)([(0,s.wk)()],p.prototype,"_absoluteTime",void 0),p=(0,o.Cg)([(0,s.EM)("ha-more-info-state-header")],p),e()}catch(t){e(t)}})},37863(t,e,a){a.d(e,{K:()=>o});const o=a(5124).AH`:host{display:flex;flex-direction:column;flex:1;justify-content:space-between}.controls{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1}.controls:not(:last-child){margin-bottom:var(--ha-space-6)}.controls>:not(:last-child){margin-bottom:var(--ha-space-6)}.buttons{display:flex;align-items:center;justify-content:center;margin-bottom:var(--ha-space-3)}.buttons>*{margin:var(--ha-space-2)}ha-attributes{display:block;width:100%}ha-more-info-control-select-container+ha-attributes:not([empty]){margin-top:var(--ha-space-4)}`},59815(t,e,a){a.d(e,{B:()=>s,e:()=>i});var o=a(5124);const i=o.AH`ha-control-switch{height:45vh;max-height:320px;min-height:200px;--control-switch-thickness:130px;--control-switch-border-radius:var(--ha-border-radius-6xl);--control-switch-padding:6px;--mdc-icon-size:24px}.buttons{display:flex;flex-direction:column;width:130px;height:45vh;max-height:320px;min-height:200px;padding:6px;box-sizing:border-box}ha-control-button{flex:1;width:100%;--control-button-border-radius:var(--ha-border-radius-6xl);--mdc-icon-size:24px}ha-control-button.active{--control-button-icon-color:white;--control-button-background-color:var(--color);--control-button-focus-color:var(--color);--control-button-background-opacity:1}ha-control-button:not(:last-child){margin-bottom:6px}`,s=o.AH` pulse{0%{opacity:1}50%{opacity:0}100%{opacity:1}}.pulse{animation:pulse 1s infinite}`},83309(t,e,a){a.d(e,{r:()=>s});var o=a(74816),i=a(35932);function s(t,e,a){const[s,r]=(0,o.x)(a?.in,t,e);return+(0,i.o)(s)===+(0,i.o)(r)}},12010(t,e,a){a.d(e,{s:()=>i});var o=a(74816);function i(t,e,a){const[i,s]=(0,o.x)(a?.in,t,e);return i.getFullYear()===s.getFullYear()}}};