19 lines
107 KiB
JavaScript
19 lines
107 KiB
JavaScript
export const ids=["9452"];export const modules={49672:function(e,t,i){i.d(t,{p:function(){return a}});const a=(e,t)=>e&&e.config.components.includes(t)},47899:function(e,t,i){i.d(t,{Bt:function(){return l}});var a=i(88977),o=i(59176);const n=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"],l=e=>e.first_weekday===o.FS.language?"weekInfo"in Intl.Locale.prototype?new Intl.Locale(e.language).weekInfo.firstDay%7:(0,a.L)(e.language)%7:n.includes(e.first_weekday)?n.indexOf(e.first_weekday):1},52258:function(e,t,i){i.a(e,(async function(e,a){try{i.d(t,{G:function(){return d}});var o=i(16485),n=i(27486),l=i(66045),s=e([o,l]);[o,l]=s.then?(await s)():s;const r=(0,n.Z)((e=>new Intl.RelativeTimeFormat(e.language,{numeric:"auto"}))),d=(e,t,i,a=!0)=>{const o=(0,l.W)(e,i,t);return a?r(t).format(o.value,o.unit):Intl.NumberFormat(t.language,{style:"unit",unit:o.unit,unitDisplay:"long"}).format(Math.abs(o.value))};a()}catch(e){a(e)}}))},90842:function(e,t,i){i.d(t,{t:function(){return n}});i(92745),i(39527),i(41360),i(88972);class a{constructor(e=window.localStorage){this.storage=void 0,this._storage={},this._listeners={},this.storage=e,e===window.localStorage&&window.addEventListener("storage",(e=>{e.key&&this.hasKey(e.key)&&(this._storage[e.key]=e.newValue?JSON.parse(e.newValue):e.newValue,this._listeners[e.key]&&this._listeners[e.key].forEach((t=>t(e.oldValue?JSON.parse(e.oldValue):e.oldValue,this._storage[e.key]))))}))}addFromStorage(e){if(!this._storage[e]){const t=this.storage.getItem(e);t&&(this._storage[e]=JSON.parse(t))}}subscribeChanges(e,t){return this._listeners[e]?this._listeners[e].push(t):this._listeners[e]=[t],()=>{this.unsubscribeChanges(e,t)}}unsubscribeChanges(e,t){if(!(e in this._listeners))return;const i=this._listeners[e].indexOf(t);-1!==i&&this._listeners[e].splice(i,1)}hasKey(e){return e in this._storage}getValue(e){return this._storage[e]}setValue(e,t){const i=this._storage[e];this._storage[e]=t;try{void 0===t?this.storage.removeItem(e):this.storage.setItem(e,JSON.stringify(t))}catch(e){}finally{this._listeners[e]&&this._listeners[e].forEach((e=>e(i,t)))}}}const o={},n=e=>t=>{const i=e.storage||"localStorage";let n;i&&i in o?n=o[i]:(n=new a(window[i]),o[i]=n);const l=String(t.key),s=e.key||String(t.key),r=t.initializer?t.initializer():void 0;n.addFromStorage(s);const d=!1!==e.subscribe?e=>n.subscribeChanges(s,((i,a)=>{e.requestUpdate(t.key,i)})):void 0,c=()=>n.hasKey(s)?e.deserializer?e.deserializer(n.getValue(s)):n.getValue(s):r;return{kind:"method",placement:"prototype",key:t.key,descriptor:{set(i){((i,a)=>{let o;e.state&&(o=c()),n.setValue(s,e.serializer?e.serializer(a):a),e.state&&i.requestUpdate(t.key,o)})(this,i)},get:()=>c(),enumerable:!0,configurable:!0},finisher(i){if(e.state&&e.subscribe){const e=i.prototype.connectedCallback,t=i.prototype.disconnectedCallback;i.prototype.connectedCallback=function(){e.call(this),this[`__unbsubLocalStorage${l}`]=d?.(this)},i.prototype.disconnectedCallback=function(){t.call(this),this[`__unbsubLocalStorage${l}`]?.(),this[`__unbsubLocalStorage${l}`]=void 0}}e.state&&i.createProperty(t.key,{noAccessor:!0,...e.stateOptions})}}}},56587:function(e,t,i){i.d(t,{D:function(){return a}});const a=(e,t,i=!1)=>{let a;const o=(...o)=>{const n=i&&!a;clearTimeout(a),a=window.setTimeout((()=>{a=void 0,e(...o)}),t),n&&e(...o)};return o.cancel=()=>{clearTimeout(a)},o}},66045:function(e,t,i){i.a(e,(async function(e,a){try{i.d(t,{W:function(){return h}});var o=i(13809),n=i(29558),l=i(57829),s=i(47899);const r=1e3,d=60,c=60*d;function h(e,t=Date.now(),i,a={}){const h={...u,...a||{}},p=(+e-+t)/r;if(Math.abs(p)<h.second)return{value:Math.round(p),unit:"second"};const m=p/d;if(Math.abs(m)<h.minute)return{value:Math.round(m),unit:"minute"};const f=p/c;if(Math.abs(f)<h.hour)return{value:Math.round(f),unit:"hour"};const v=new Date(e),b=new Date(t);v.setHours(0,0,0,0),b.setHours(0,0,0,0);const g=(0,o.j)(v,b);if(0===g)return{value:Math.round(f),unit:"hour"};if(Math.abs(g)<h.day)return{value:g,unit:"day"};const y=(0,s.Bt)(i),k=(0,n.z)(v,{weekStartsOn:y}),_=(0,n.z)(b,{weekStartsOn:y}),x=(0,l.p)(k,_);if(0===x)return{value:g,unit:"day"};if(Math.abs(x)<h.week)return{value:x,unit:"week"};const w=v.getFullYear()-b.getFullYear(),C=12*w+v.getMonth()-b.getMonth();return 0===C?{value:x,unit:"week"}:Math.abs(C)<h.month||0===w?{value:C,unit:"month"}:{value:Math.round(w),unit:"year"}}const u={second:45,minute:45,hour:22,day:5,week:4,month:11};a()}catch(p){a(p)}}))},17949:function(e,t,i){i.r(t);var a=i(44249),o=i(57243),n=i(50778),l=i(35359),s=i(11297);i(59897),i(10508);const r={info:"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z",warning:"M12,2L1,21H23M12,6L19.53,19H4.47M11,10V14H13V10M11,16V18H13V16",error:"M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z",success:"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2,4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z"};(0,a.Z)([(0,n.Mo)("ha-alert")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,n.Cb)()],key:"title",value:()=>""},{kind:"field",decorators:[(0,n.Cb)({attribute:"alert-type"})],key:"alertType",value:()=>"info"},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"dismissable",value:()=>!1},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"narrow",value:()=>!1},{kind:"method",key:"render",value:function(){return o.dy` <div class="issue-type ${(0,l.$)({[this.alertType]:!0})}" role="alert"> <div class="icon ${this.title?"":"no-title"}"> <slot name="icon"> <ha-svg-icon .path="${r[this.alertType]}"></ha-svg-icon> </slot> </div> <div class="${(0,l.$)({content:!0,narrow:this.narrow})}"> <div class="main-content"> ${this.title?o.dy`<div class="title">${this.title}</div>`:o.Ld} <slot></slot> </div> <div class="action"> <slot name="action"> ${this.dismissable?o.dy`<ha-icon-button @click="${this._dismissClicked}" label="Dismiss alert" .path="${"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"}"></ha-icon-button>`:o.Ld} </slot> </div> </div> </div> `}},{kind:"method",key:"_dismissClicked",value:function(){(0,s.B)(this,"alert-dismissed-clicked")}},{kind:"field",static:!0,key:"styles",value:()=>o.iv`.issue-type{position:relative;padding:8px;display:flex}.issue-type::after{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.12;pointer-events:none;content:"";border-radius:4px}.icon{z-index:1}.icon.no-title{align-self:center}.content{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:var(--float-start)}.content.narrow{flex-direction:column;align-items:flex-end}.action{z-index:1;width:min-content;--mdc-theme-primary:var(--primary-text-color)}.main-content{overflow-wrap:anywhere;word-break:break-word;margin-left:8px;margin-right:0;margin-inline-start:8px;margin-inline-end:0}.title{margin-top:2px;font-weight:700}.action ha-icon-button,.action mwc-button{--mdc-theme-primary:var(--primary-text-color);--mdc-icon-button-size:36px}.issue-type.info>.icon{color:var(--info-color)}.issue-type.info::after{background-color:var(--info-color)}.issue-type.warning>.icon{color:var(--warning-color)}.issue-type.warning::after{background-color:var(--warning-color)}.issue-type.error>.icon{color:var(--error-color)}.issue-type.error::after{background-color:var(--error-color)}.issue-type.success>.icon{color:var(--success-color)}.issue-type.success::after{background-color:var(--success-color)}:host ::slotted(ul){margin:0;padding-inline-start:20px}`}]}}),o.oi)},43527:function(e,t,i){var a=i(44249),o=i(72621),n=(i(39527),i(41360),i(22997),i(57243)),l=i(50778),s=i(13089),r=i(24067);(0,a.Z)([(0,l.Mo)("ha-button-menu")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",key:r.gA,value:void 0},{kind:"field",decorators:[(0,l.Cb)()],key:"corner",value:()=>"BOTTOM_START"},{kind:"field",decorators:[(0,l.Cb)({attribute:"menu-corner"})],key:"menuCorner",value:()=>"START"},{kind:"field",decorators:[(0,l.Cb)({type:Number})],key:"x",value:()=>null},{kind:"field",decorators:[(0,l.Cb)({type:Number})],key:"y",value:()=>null},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"multi",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"activatable",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"fixed",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,attribute:"no-anchor"})],key:"noAnchor",value:()=>!1},{kind:"field",decorators:[(0,l.IO)("mwc-menu",!0)],key:"_menu",value:void 0},{kind:"get",key:"items",value:function(){return this._menu?.items}},{kind:"get",key:"selected",value:function(){return this._menu?.selected}},{kind:"method",key:"focus",value:function(){this._menu?.open?this._menu.focusItemAtIndex(0):this._triggerButton?.focus()}},{kind:"method",key:"render",value:function(){return n.dy` <div @click="${this._handleClick}"> <slot name="trigger" @slotchange="${this._setTriggerAria}"></slot> </div> <mwc-menu .corner="${this.corner}" .menuCorner="${this.menuCorner}" .fixed="${this.fixed}" .multi="${this.multi}" .activatable="${this.activatable}" .y="${this.y}" .x="${this.x}"> <slot></slot> </mwc-menu> `}},{kind:"method",key:"firstUpdated",value:function(e){(0,o.Z)(i,"firstUpdated",this,3)([e]),"rtl"===s.E.document.dir&&this.updateComplete.then((()=>{this.querySelectorAll("mwc-list-item").forEach((e=>{const t=document.createElement("style");t.innerHTML="span.material-icons:first-of-type { margin-left: var(--mdc-list-item-graphic-margin, 32px) !important; margin-right: 0px !important;}",e.shadowRoot.appendChild(t)}))}))}},{kind:"method",key:"_handleClick",value:function(){this.disabled||(this._menu.anchor=this.noAnchor?null:this,this._menu.show())}},{kind:"get",key:"_triggerButton",value:function(){return this.querySelector('ha-icon-button[slot="trigger"], mwc-button[slot="trigger"]')}},{kind:"method",key:"_setTriggerAria",value:function(){this._triggerButton&&(this._triggerButton.ariaHasPopup="menu")}},{kind:"get",static:!0,key:"styles",value:function(){return n.iv`:host{display:inline-block;position:relative}::slotted([disabled]){color:var(--disabled-text-color)}`}}]}}),n.oi)},76418:function(e,t,i){var a=i(44249),o=i(92444),n=i(76688),l=i(57243),s=i(50778);(0,a.Z)([(0,s.Mo)("ha-checkbox")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",static:!0,key:"styles",value:()=>[n.W,l.iv`:host{--mdc-theme-secondary:var(--primary-color)}`]}]}}),o.A)},28906:function(e,t,i){var a=i(44249),o=i(57243),n=i(50778);(0,a.Z)([(0,n.Mo)("ha-dialog-header")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"method",key:"render",value:function(){return o.dy` <header class="header"> <div class="header-bar"> <section class="header-navigation-icon"> <slot name="navigationIcon"></slot> </section> <section class="header-content"> <div class="header-title"> <slot name="title"></slot> </div> <div class="header-subtitle"> <slot name="subtitle"></slot> </div> </section> <section class="header-action-items"> <slot name="actionItems"></slot> </section> </div> <slot></slot> </header> `}},{kind:"get",static:!0,key:"styles",value:function(){return[o.iv`:host{display:block}:host([show-border]){border-bottom:1px solid var(--mdc-dialog-scroll-divider-color,rgba(0,0,0,.12))}.header-bar{display:flex;flex-direction:row;align-items:flex-start;padding:4px;box-sizing:border-box}.header-content{flex:1;padding:10px 4px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-title{font-size:22px;line-height:28px;font-weight:400}.header-subtitle{font-size:14px;line-height:20px;color:var(--secondary-text-color)}@media all and (min-width:450px) and (min-height:500px){.header-bar{padding:12px}}.header-navigation-icon{flex:none;min-width:8px;height:100%;display:flex;flex-direction:row}.header-action-items{flex:none;min-width:8px;height:100%;display:flex;flex-direction:row}`]}}]}}),o.oi)},92500:function(e,t,i){i.r(t),i.d(t,{HaIconButtonArrowPrev:function(){return s}});var a=i(44249),o=i(57243),n=i(50778),l=i(13089);i(59897);let s=(0,a.Z)([(0,n.Mo)("ha-icon-button-arrow-prev")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,n.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,n.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,n.SB)()],key:"_icon",value:()=>"rtl"===l.E.document.dir?"M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z":"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"},{kind:"method",key:"render",value:function(){return o.dy` <ha-icon-button .disabled="${this.disabled}" .label="${this.label||this.hass?.localize("ui.common.back")||"Back"}" .path="${this._icon}"></ha-icon-button> `}}]}}),o.oi)},59897:function(e,t,i){i.r(t),i.d(t,{HaIconButton:function(){return s}});var a=i(44249),o=(i(74269),i(57243)),n=i(50778),l=i(20552);i(10508);let s=(0,a.Z)([(0,n.Mo)("ha-icon-button")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,n.Cb)({type:Boolean,reflect:!0})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,n.Cb)({type:String})],key:"path",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:String})],key:"label",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:String,attribute:"aria-haspopup"})],key:"ariaHasPopup",value:void 0},{kind:"field",decorators:[(0,n.Cb)({attribute:"hide-title",type:Boolean})],key:"hideTitle",value:()=>!1},{kind:"field",decorators:[(0,n.IO)("mwc-icon-button",!0)],key:"_button",value:void 0},{kind:"method",key:"focus",value:function(){this._button?.focus()}},{kind:"field",static:!0,key:"shadowRootOptions",value:()=>({mode:"open",delegatesFocus:!0})},{kind:"method",key:"render",value:function(){return o.dy` <mwc-icon-button aria-label="${(0,l.o)(this.label)}" title="${(0,l.o)(this.hideTitle?void 0:this.label)}" aria-haspopup="${(0,l.o)(this.ariaHasPopup)}" .disabled="${this.disabled}"> ${this.path?o.dy`<ha-svg-icon .path="${this.path}"></ha-svg-icon>`:o.dy`<slot></slot>`} </mwc-icon-button> `}},{kind:"get",static:!0,key:"styles",value:function(){return o.iv`:host{display:inline-block;outline:0}:host([disabled]){pointer-events:none}mwc-icon-button{--mdc-theme-on-primary:currentColor;--mdc-theme-text-disabled-on-light:var(--disabled-text-color)}`}}]}}),o.oi)},49549:function(e,t,i){var a=i(44249),o=i(57243),n=i(50778),l=i(24067),s=i(11297);i(5848);(0,a.Z)([(0,n.Mo)("ha-md-button-menu")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",key:l.gA,value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,n.Cb)()],key:"positioning",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:Boolean,attribute:"has-overflow"})],key:"hasOverflow",value:()=>!1},{kind:"field",decorators:[(0,n.IO)("ha-menu",!0)],key:"_menu",value:void 0},{kind:"get",key:"items",value:function(){return this._menu.items}},{kind:"method",key:"focus",value:function(){this._menu.open?this._menu.focus():this._triggerButton?.focus()}},{kind:"method",key:"render",value:function(){return o.dy` <div @click="${this._handleClick}"> <slot name="trigger" @slotchange="${this._setTriggerAria}"></slot> </div> <ha-menu .positioning="${this.positioning}" .hasOverflow="${this.hasOverflow}" @opening="${this._handleOpening}" @closing="${this._handleClosing}"> <slot></slot> </ha-menu> `}},{kind:"method",key:"_handleOpening",value:function(){(0,s.B)(this,"opening",void 0,{composed:!1})}},{kind:"method",key:"_handleClosing",value:function(){(0,s.B)(this,"closing",void 0,{composed:!1})}},{kind:"method",key:"_handleClick",value:function(){this.disabled||(this._menu.anchorElement=this,this._menu.open?this._menu.close():this._menu.show())}},{kind:"get",key:"_triggerButton",value:function(){return this.querySelector('ha-icon-button[slot="trigger"], mwc-button[slot="trigger"], ha-assist-chip[slot="trigger"]')}},{kind:"method",key:"_setTriggerAria",value:function(){this._triggerButton&&(this._triggerButton.ariaHasPopup="menu")}},{kind:"get",static:!0,key:"styles",value:function(){return o.iv`:host{display:inline-block;position:relative}::slotted([disabled]){color:var(--disabled-text-color)}`}}]}}),o.oi)},98094:function(e,t,i){var a=i(44249),o=i(72621),n=i(1231),l=i(57243),s=i(50778);(0,a.Z)([(0,s.Mo)("ha-md-divider")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",static:!0,key:"styles",value(){return[...(0,o.Z)(i,"styles",this),l.iv`:host{--md-divider-color:var(--divider-color)}`]}}]}}),n.B)},89654:function(e,t,i){var a=i("44249"),o=i("72621"),n=i("57243"),l=i("50778"),s=i("11297");class r{constructor(){this.notifications=void 0,this.notifications={}}processMessage(e){if("removed"===e.type)for(const t of Object.keys(e.notifications))delete this.notifications[t];else this.notifications={...this.notifications,...e.notifications};return Object.values(this.notifications)}}i("59897");(0,a.Z)([(0,l.Mo)("ha-menu-button")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"hassio",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"narrow",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,l.SB)()],key:"_hasNotifications",value:()=>!1},{kind:"field",decorators:[(0,l.SB)()],key:"_show",value:()=>!1},{kind:"field",key:"_alwaysVisible",value:()=>!1},{kind:"field",key:"_attachNotifOnConnect",value:()=>!1},{kind:"field",key:"_unsubNotifications",value:void 0},{kind:"method",key:"connectedCallback",value:function(){(0,o.Z)(i,"connectedCallback",this,3)([]),this._attachNotifOnConnect&&(this._attachNotifOnConnect=!1,this._subscribeNotifications())}},{kind:"method",key:"disconnectedCallback",value:function(){(0,o.Z)(i,"disconnectedCallback",this,3)([]),this._unsubNotifications&&(this._attachNotifOnConnect=!0,this._unsubNotifications(),this._unsubNotifications=void 0)}},{kind:"method",key:"render",value:function(){if(!this._show)return n.Ld;const e=this._hasNotifications&&(this.narrow||"always_hidden"===this.hass.dockedSidebar);return n.dy` <ha-icon-button .label="${this.hass.localize("ui.sidebar.sidebar_toggle")}" .path="${"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z"}" @click="${this._toggleMenu}"></ha-icon-button> ${e?n.dy`<div class="dot"></div>`:""} `}},{kind:"method",key:"firstUpdated",value:function(e){(0,o.Z)(i,"firstUpdated",this,3)([e]),this.hassio&&(this._alwaysVisible=(Number(window.parent.frontendVersion)||0)<20190710)}},{kind:"method",key:"willUpdate",value:function(e){if((0,o.Z)(i,"willUpdate",this,3)([e]),!e.has("narrow")&&!e.has("hass"))return;const t=e.has("hass")?e.get("hass"):this.hass,a=(e.has("narrow")?e.get("narrow"):this.narrow)||"always_hidden"===t?.dockedSidebar,n=this.narrow||"always_hidden"===this.hass.dockedSidebar;this.hasUpdated&&a===n||(this._show=n||this._alwaysVisible,n?this._subscribeNotifications():this._unsubNotifications&&(this._unsubNotifications(),this._unsubNotifications=void 0))}},{kind:"method",key:"_subscribeNotifications",value:function(){if(this._unsubNotifications)throw new Error("Already subscribed");this._unsubNotifications=((e,t)=>{const i=new r,a=e.subscribeMessage((e=>t(i.processMessage(e))),{type:"persistent_notification/subscribe"});return()=>{a.then((e=>e?.()))}})(this.hass.connection,(e=>{this._hasNotifications=e.length>0}))}},{kind:"method",key:"_toggleMenu",value:function(){(0,s.B)(this,"hass-toggle-menu")}},{kind:"get",static:!0,key:"styles",value:function(){return n.iv`:host{position:relative}.dot{pointer-events:none;position:absolute;background-color:var(--accent-color);width:12px;height:12px;top:9px;right:7px;inset-inline-end:7px;inset-inline-start:initial;border-radius:50%;border:2px solid var(--app-header-background-color)}`}}]}}),n.oi)},10508:function(e,t,i){i.r(t),i.d(t,{HaSvgIcon:function(){return l}});var a=i(44249),o=i(57243),n=i(50778);let l=(0,a.Z)([(0,n.Mo)("ha-svg-icon")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,n.Cb)()],key:"path",value:void 0},{kind:"field",decorators:[(0,n.Cb)({attribute:!1})],key:"secondaryPath",value:void 0},{kind:"field",decorators:[(0,n.Cb)({attribute:!1})],key:"viewBox",value:void 0},{kind:"method",key:"render",value:function(){return o.YP` <svg viewBox="${this.viewBox||"0 0 24 24"}" preserveAspectRatio="xMidYMid meet" focusable="false" role="img" aria-hidden="true"> <g> ${this.path?o.YP`<path class="primary-path" d="${this.path}"></path>`:o.Ld} ${this.secondaryPath?o.YP`<path class="secondary-path" d="${this.secondaryPath}"></path>`:o.Ld} </g> </svg>`}},{kind:"get",static:!0,key:"styles",value:function(){return o.iv`:host{display:var(--ha-icon-display,inline-flex);align-items:center;justify-content:center;position:relative;vertical-align:middle;fill:var(--icon-primary-color,currentcolor);width:var(--mdc-icon-size,24px);height:var(--mdc-icon-size,24px)}svg{width:100%;height:100%;pointer-events:none;display:block}path.primary-path{opacity:var(--icon-primary-opactity, 1)}path.secondary-path{fill:var(--icon-secondary-color,currentcolor);opacity:var(--icon-secondary-opactity, .5)}`}}]}}),o.oi)},70596:function(e,t,i){var a=i(44249),o=i(72621),n=i(1105),l=i(33990),s=i(57243),r=i(50778),d=i(13089);(0,a.Z)([(0,r.Mo)("ha-textfield")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"invalid",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:"error-message"})],key:"errorMessage",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"icon",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"iconTrailing",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)()],key:"autocomplete",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"autocorrect",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:"input-spellcheck"})],key:"inputSpellcheck",value:void 0},{kind:"field",decorators:[(0,r.IO)("input")],key:"formElement",value:void 0},{kind:"method",key:"updated",value:function(e){(0,o.Z)(i,"updated",this,3)([e]),(e.has("invalid")||e.has("errorMessage"))&&(this.setCustomValidity(this.invalid?this.errorMessage||this.validationMessage||"Invalid":""),(this.invalid||this.validateOnInitialRender||e.has("invalid")&&void 0!==e.get("invalid"))&&this.reportValidity()),e.has("autocomplete")&&(this.autocomplete?this.formElement.setAttribute("autocomplete",this.autocomplete):this.formElement.removeAttribute("autocomplete")),e.has("autocorrect")&&(this.autocorrect?this.formElement.setAttribute("autocorrect",this.autocorrect):this.formElement.removeAttribute("autocorrect")),e.has("inputSpellcheck")&&(this.inputSpellcheck?this.formElement.setAttribute("spellcheck",this.inputSpellcheck):this.formElement.removeAttribute("spellcheck"))}},{kind:"method",key:"renderIcon",value:function(e,t=!1){const i=t?"trailing":"leading";return s.dy` <span class="mdc-text-field__icon mdc-text-field__icon--${i}" tabindex="${t?1:-1}"> <slot name="${i}Icon"></slot> </span> `}},{kind:"field",static:!0,key:"styles",value:()=>[l.W,s.iv`.mdc-text-field__input{width:var(--ha-textfield-input-width,100%)}.mdc-text-field:not(.mdc-text-field--with-leading-icon){padding:var(--text-field-padding,0px 16px)}.mdc-text-field__affix--suffix{padding-left:var(--text-field-suffix-padding-left,12px);padding-right:var(--text-field-suffix-padding-right,0px);padding-inline-start:var(--text-field-suffix-padding-left,12px);padding-inline-end:var(--text-field-suffix-padding-right,0px);direction:ltr}.mdc-text-field--with-leading-icon{padding-inline-start:var(--text-field-suffix-padding-left,0px);padding-inline-end:var(--text-field-suffix-padding-right,16px);direction:var(--direction)}.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon{padding-left:var(--text-field-suffix-padding-left,0px);padding-right:var(--text-field-suffix-padding-right,0px);padding-inline-start:var(--text-field-suffix-padding-left,0px);padding-inline-end:var(--text-field-suffix-padding-right,0px)}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__affix--suffix{color:var(--secondary-text-color)}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon{color:var(--secondary-text-color)}.mdc-text-field__icon--leading{margin-inline-start:16px;margin-inline-end:8px;direction:var(--direction)}.mdc-text-field__icon--trailing{padding:var(--textfield-icon-trailing-padding,12px)}.mdc-floating-label:not(.mdc-floating-label--float-above){text-overflow:ellipsis;width:inherit;padding-right:30px;padding-inline-end:30px;padding-inline-start:initial;box-sizing:border-box;direction:var(--direction)}input{text-align:var(--text-field-text-align,start)}::-ms-reveal{display:none}:host([no-spinner]) input::-webkit-inner-spin-button,:host([no-spinner]) input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}:host([no-spinner]) input[type=number]{-moz-appearance:textfield}.mdc-text-field__ripple{overflow:hidden}.mdc-text-field{overflow:var(--text-field-overflow)}.mdc-floating-label{inset-inline-start:16px!important;inset-inline-end:initial!important;transform-origin:var(--float-start);direction:var(--direction);text-align:var(--float-start)}.mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label{max-width:calc(100% - 48px - var(--text-field-suffix-padding-left,0px));inset-inline-start:calc(48px + var(--text-field-suffix-padding-left,0px))!important;inset-inline-end:initial!important;direction:var(--direction)}.mdc-text-field__input[type=number]{direction:var(--direction)}.mdc-text-field__affix--prefix{padding-right:var(--text-field-prefix-padding-right,2px);padding-inline-end:var(--text-field-prefix-padding-right,2px);padding-inline-start:initial}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__affix--prefix{color:var(--mdc-text-field-label-ink-color)}#helper-text ha-markdown{display:inline-block}`,"rtl"===d.E.document.dir?s.iv`.mdc-floating-label,.mdc-text-field--with-leading-icon,.mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label,.mdc-text-field__icon--leading,.mdc-text-field__input[type=number]{direction:rtl;--direction:rtl}`:s.iv``]}]}}),n.P)},45930:function(e,t,i){var a=i(44249),o=(i(39527),i(99790),i(57243)),n=i(50778),l=(i(59897),i(10508),i(70596),i(11297));(0,a.Z)([(0,n.Mo)("search-input")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,n.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,n.Cb)()],key:"filter",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"suffix",value:()=>!1},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"autofocus",value:()=>!1},{kind:"field",decorators:[(0,n.Cb)({type:String})],key:"label",value:void 0},{kind:"method",key:"focus",value:function(){this._input?.focus()}},{kind:"field",decorators:[(0,n.IO)("ha-textfield",!0)],key:"_input",value:void 0},{kind:"method",key:"render",value:function(){return o.dy` <ha-textfield .autofocus="${this.autofocus}" .label="${this.label||this.hass.localize("ui.common.search")}" .value="${this.filter||""}" icon .iconTrailing="${this.filter||this.suffix}" @input="${this._filterInputChanged}"> <slot name="prefix" slot="leadingIcon"> <ha-svg-icon tabindex="-1" class="prefix" .path="${"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"}"></ha-svg-icon> </slot> <div class="trailing" slot="trailingIcon"> ${this.filter&&o.dy` <ha-icon-button @click="${this._clearSearch}" .label="${this.hass.localize("ui.common.clear")}" .path="${"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"}" class="clear-button"></ha-icon-button> `} <slot name="suffix"></slot> </div> </ha-textfield> `}},{kind:"method",key:"_filterChanged",value:async function(e){(0,l.B)(this,"value-changed",{value:String(e)})}},{kind:"method",key:"_filterInputChanged",value:async function(e){this._filterChanged(e.target.value)}},{kind:"method",key:"_clearSearch",value:async function(){this._filterChanged("")}},{kind:"get",static:!0,key:"styles",value:function(){return o.iv`:host{display:inline-flex}ha-icon-button,ha-svg-icon{color:var(--primary-text-color)}ha-svg-icon{outline:0}.clear-button{--mdc-icon-size:20px}ha-textfield{display:inherit}.trailing{display:flex;align-items:center}`}}]}}),o.oi)},59176:function(e,t,i){i.d(t,{FS:function(){return s},c_:function(){return n},t6:function(){return l},y4:function(){return a},zt:function(){return o}});let a=function(e){return e.language="language",e.system="system",e.comma_decimal="comma_decimal",e.decimal_comma="decimal_comma",e.space_comma="space_comma",e.none="none",e}({}),o=function(e){return e.language="language",e.system="system",e.am_pm="12",e.twenty_four="24",e}({}),n=function(e){return e.local="local",e.server="server",e}({}),l=function(e){return e.language="language",e.system="system",e.DMY="DMY",e.MDY="MDY",e.YMD="YMD",e}({}),s=function(e){return e.language="language",e.monday="monday",e.tuesday="tuesday",e.wednesday="wednesday",e.thursday="thursday",e.friday="friday",e.saturday="saturday",e.sunday="sunday",e}({})},25061:function(e,t,i){var a=i("44249"),o=(i("39527"),i("99790"),i("67670"),i("13334"),i("18672")),n=(i("14394"),i("31622"),i("57243")),l=i("50778"),s=i("35359"),r=i("11297"),d=(i("1025"),i("72621")),c=i("72629");(0,a.Z)([(0,l.Mo)("ha-filter-chip")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0,attribute:"no-leading-icon"})],key:"noLeadingIcon",value:()=>!1},{kind:"field",static:!0,key:"styles",value(){return[...(0,d.Z)(i,"styles",this),n.iv`:host{--md-sys-color-primary:var(--primary-text-color);--md-sys-color-on-surface:var(--primary-text-color);--md-sys-color-on-surface-variant:var(--primary-text-color);--md-sys-color-on-secondary-container:var(--primary-text-color);--md-filter-chip-container-shape:16px;--md-filter-chip-outline-color:var(--outline-color);--md-filter-chip-selected-container-color:rgba(
|
|
var(--rgb-primary-text-color),
|
|
0.15
|
|
)}`]}},{kind:"method",key:"renderLeadingIcon",value:function(){return this.noLeadingIcon?n.dy``:(0,d.Z)(i,"renderLeadingIcon",this,3)([])}}]}}),c.r);i("92745"),i("22139"),i("41360"),i("34595"),i("36993");var h=i("12582"),u=i("20552"),p=i("46799"),m=i("27486"),f=i("82283"),v=i("32770"),b=i("56587");const g=(e,t)=>{const i={};for(const a of e){const e=t(a);e in i?i[e].push(a):i[e]=[a]}return i};var y=i("66193"),k=i("8001"),_=(i("76418"),i("10508"),i("45930"),i("75656"),i("50100"),i("18084"),i("75351"));let x;const w=()=>(x||(x=(0,_.Ud)(new Worker(new URL(i.p+i.u("6522"),i.b)))),x);var C=i("30137");const $="zzzzz_undefined";(0,a.Z)([(0,l.Mo)("ha-data-table")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"localizeFunc",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"narrow",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Object})],key:"columns",value:()=>({})},{kind:"field",decorators:[(0,l.Cb)({type:Array})],key:"data",value:()=>[]},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"selectable",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"clickable",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:"has-fab",type:Boolean})],key:"hasFab",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"appendRow",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,attribute:"auto-height"})],key:"autoHeight",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:String})],key:"id",value:()=>"id"},{kind:"field",decorators:[(0,l.Cb)({attribute:!1,type:String})],key:"noDataText",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1,type:String})],key:"searchLabel",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,attribute:"no-label-float"})],key:"noLabelFloat",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:String})],key:"filter",value:()=>""},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"groupColumn",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"groupOrder",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"sortColumn",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"sortDirection",value:()=>null},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"initialCollapsedGroups",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hiddenColumns",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"columnOrder",value:void 0},{kind:"field",decorators:[(0,l.SB)()],key:"_filterable",value:()=>!1},{kind:"field",decorators:[(0,l.SB)()],key:"_filter",value:()=>""},{kind:"field",decorators:[(0,l.SB)()],key:"_filteredData",value:()=>[]},{kind:"field",decorators:[(0,l.SB)()],key:"_headerHeight",value:()=>0},{kind:"field",decorators:[(0,l.IO)("slot[name='header']")],key:"_header",value:void 0},{kind:"field",decorators:[(0,l.SB)()],key:"_collapsedGroups",value:()=>[]},{kind:"field",key:"_checkableRowsCount",value:void 0},{kind:"field",key:"_checkedRows",value:()=>[]},{kind:"field",key:"_sortColumns",value:()=>({})},{kind:"field",key:"_curRequest",value:()=>0},{kind:"field",key:"_lastUpdate",value:()=>0},{kind:"field",decorators:[(0,f.i)(".scroller")],key:"_savedScrollPos",value:void 0},{kind:"field",key:"_debounceSearch",value(){return(0,b.D)((e=>{this._filter=e}),100,!1)}},{kind:"method",key:"clearSelection",value:function(){this._checkedRows=[],this._checkedRowsChanged()}},{kind:"method",key:"selectAll",value:function(){this._checkedRows=this._filteredData.filter((e=>!1!==e.selectable)).map((e=>e[this.id])),this._checkedRowsChanged()}},{kind:"method",key:"select",value:function(e,t){t&&(this._checkedRows=[]),e.forEach((e=>{const t=this._filteredData.find((t=>t[this.id]===e));!1===t?.selectable||this._checkedRows.includes(e)||this._checkedRows.push(e)})),this._checkedRowsChanged()}},{kind:"method",key:"unselect",value:function(e){e.forEach((e=>{const t=this._checkedRows.indexOf(e);t>-1&&this._checkedRows.splice(t,1)})),this._checkedRowsChanged()}},{kind:"method",key:"connectedCallback",value:function(){(0,d.Z)(i,"connectedCallback",this,3)([]),this._filteredData.length&&(this._filteredData=[...this._filteredData])}},{kind:"method",key:"firstUpdated",value:function(){this.updateComplete.then((()=>this._calcTableHeight()))}},{kind:"method",key:"updated",value:function(){const e=this.renderRoot.querySelector(".mdc-data-table__header-row");e&&(e.scrollWidth>e.clientWidth?this.style.setProperty("--table-row-width",`${e.scrollWidth}px`):this.style.removeProperty("--table-row-width"))}},{kind:"method",key:"willUpdate",value:function(e){if((0,d.Z)(i,"willUpdate",this,3)([e]),this.hasUpdated||(0,k.o)(),e.has("columns")){if(this._filterable=Object.values(this.columns).some((e=>e.filterable)),!this.sortColumn)for(const e in this.columns)if(this.columns[e].direction){this.sortDirection=this.columns[e].direction,this.sortColumn=e,(0,r.B)(this,"sorting-changed",{column:e,direction:this.sortDirection});break}const e=(0,h.Z)(this.columns);Object.values(e).forEach((e=>{delete e.title,delete e.template,delete e.extraTemplate})),this._sortColumns=e}e.has("filter")&&this._debounceSearch(this.filter),e.has("data")&&(this._checkableRowsCount=this.data.filter((e=>!1!==e.selectable)).length),!this.hasUpdated&&this.initialCollapsedGroups?(this._collapsedGroups=this.initialCollapsedGroups,(0,r.B)(this,"collapsed-changed",{value:this._collapsedGroups})):e.has("groupColumn")&&(this._collapsedGroups=[],(0,r.B)(this,"collapsed-changed",{value:this._collapsedGroups})),(e.has("data")||e.has("columns")||e.has("_filter")||e.has("sortColumn")||e.has("sortDirection"))&&this._sortFilterData(),(e.has("selectable")||e.has("hiddenColumns"))&&(this._filteredData=[...this._filteredData])}},{kind:"field",key:"_sortedColumns",value:()=>(0,m.Z)(((e,t)=>t&&t.length?Object.keys(e).sort(((e,i)=>{const a=t.indexOf(e),o=t.indexOf(i);if(a!==o){if(-1===a)return 1;if(-1===o)return-1}return a-o})).reduce(((t,i)=>(t[i]=e[i],t)),{}):e))},{kind:"method",key:"render",value:function(){const e=this.localizeFunc||this.hass.localize,t=this._sortedColumns(this.columns,this.columnOrder);return n.dy` <div class="mdc-data-table"> <slot name="header" @slotchange="${this._calcTableHeight}"> ${this._filterable?n.dy` <div class="table-header"> <search-input .hass="${this.hass}" @value-changed="${this._handleSearchChange}" .label="${this.searchLabel}" .noLabelFloat="${this.noLabelFloat}"></search-input> </div> `:""} </slot> <div class="mdc-data-table__table ${(0,s.$)({"auto-height":this.autoHeight})}" role="table" aria-rowcount="${this._filteredData.length+1}" style="${(0,p.V)({height:this.autoHeight?53*(this._filteredData.length||1)+53+"px":`calc(100% - ${this._headerHeight}px)`})}"> <div class="mdc-data-table__header-row" role="row" aria-rowindex="1" @scroll="${this._scrollContent}"> <slot name="header-row"> ${this.selectable?n.dy` <div class="mdc-data-table__header-cell mdc-data-table__header-cell--checkbox" role="columnheader"> <ha-checkbox class="mdc-data-table__row-checkbox" @change="${this._handleHeaderRowCheckboxClick}" .indeterminate="${this._checkedRows.length&&this._checkedRows.length!==this._checkableRowsCount}" .checked="${this._checkedRows.length&&this._checkedRows.length===this._checkableRowsCount}"> </ha-checkbox> </div> `:""} ${Object.entries(t).map((([e,t])=>{if(t.hidden||(this.columnOrder&&this.columnOrder.includes(e)?this.hiddenColumns?.includes(e)??t.defaultHidden:t.defaultHidden))return n.Ld;const i=e===this.sortColumn,a={"mdc-data-table__header-cell--numeric":"numeric"===t.type,"mdc-data-table__header-cell--icon":"icon"===t.type,"mdc-data-table__header-cell--icon-button":"icon-button"===t.type,"mdc-data-table__header-cell--overflow-menu":"overflow-menu"===t.type,"mdc-data-table__header-cell--overflow":"overflow"===t.type,sortable:Boolean(t.sortable),"not-sorted":Boolean(t.sortable&&!i)};return n.dy` <div aria-label="${(0,u.o)(t.label)}" class="mdc-data-table__header-cell ${(0,s.$)(a)}" style="${(0,p.V)({minWidth:t.minWidth,maxWidth:t.maxWidth,flex:t.flex||1})}" role="columnheader" aria-sort="${(0,u.o)(i?"desc"===this.sortDirection?"descending":"ascending":void 0)}" @click="${this._handleHeaderClick}" .columnId="${e}"> ${t.sortable?n.dy` <ha-svg-icon .path="${i&&"desc"===this.sortDirection?"M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z":"M13,20H11V8L5.5,13.5L4.08,12.08L12,4.16L19.92,12.08L18.5,13.5L13,8V20Z"}"></ha-svg-icon> `:""} <span>${t.title}</span> </div> `}))} </slot> </div> ${this._filteredData.length?n.dy` <lit-virtualizer scroller class="mdc-data-table__content scroller ha-scrollbar" @scroll="${this._saveScrollPos}" .items="${this._groupData(this._filteredData,e,this.appendRow,this.hasFab,this.groupColumn,this.groupOrder,this._collapsedGroups)}" .keyFunction="${this._keyFunction}" .renderItem="${(e,i)=>this._renderRow(t,this.narrow,e,i)}"></lit-virtualizer> `:n.dy` <div class="mdc-data-table__content"> <div class="mdc-data-table__row" role="row"> <div class="mdc-data-table__cell grows center" role="cell"> ${this.noDataText||e("ui.components.data-table.no-data")} </div> </div> </div> `} </div> </div> `}},{kind:"field",key:"_keyFunction",value(){return e=>e?.[this.id]||e}},{kind:"field",key:"_renderRow",value(){return(e,t,i,a)=>i?i.append?n.dy`<div class="mdc-data-table__row">${i.content}</div>`:i.empty?n.dy`<div class="mdc-data-table__row empty-row"></div>`:n.dy` <div aria-rowindex="${a+2}" role="row" .rowId="${i[this.id]}" @click="${this._handleRowClick}" class="mdc-data-table__row ${(0,s.$)({"mdc-data-table__row--selected":this._checkedRows.includes(String(i[this.id])),clickable:this.clickable})}" aria-selected="${(0,u.o)(!!this._checkedRows.includes(String(i[this.id]))||void 0)}" .selectable="${!1!==i.selectable}"> ${this.selectable?n.dy` <div class="mdc-data-table__cell mdc-data-table__cell--checkbox" role="cell"> <ha-checkbox class="mdc-data-table__row-checkbox" @change="${this._handleRowCheckboxClick}" .rowId="${i[this.id]}" .disabled="${!1===i.selectable}" .checked="${this._checkedRows.includes(String(i[this.id]))}"> </ha-checkbox> </div> `:""} ${Object.entries(e).map((([a,o])=>t&&!o.main&&!o.showNarrow||o.hidden||(this.columnOrder&&this.columnOrder.includes(a)?this.hiddenColumns?.includes(a)??o.defaultHidden:o.defaultHidden)?n.Ld:n.dy` <div @mouseover="${this._setTitle}" @focus="${this._setTitle}" role="${o.main?"rowheader":"cell"}" class="mdc-data-table__cell ${(0,s.$)({"mdc-data-table__cell--flex":"flex"===o.type,"mdc-data-table__cell--numeric":"numeric"===o.type,"mdc-data-table__cell--icon":"icon"===o.type,"mdc-data-table__cell--icon-button":"icon-button"===o.type,"mdc-data-table__cell--overflow-menu":"overflow-menu"===o.type,"mdc-data-table__cell--overflow":"overflow"===o.type,forceLTR:Boolean(o.forceLTR)})}" style="${(0,p.V)({minWidth:o.minWidth,maxWidth:o.maxWidth,flex:o.flex||1})}"> ${o.template?o.template(i):t&&o.main?n.dy`<div class="primary">${i[a]}</div> <div class="secondary"> ${Object.entries(e).filter((([e,t])=>!(t.hidden||t.main||t.showNarrow||(this.columnOrder&&this.columnOrder.includes(e)?this.hiddenColumns?.includes(e)??t.defaultHidden:t.defaultHidden)))).map((([e,t],a)=>n.dy`${0!==a?" ⸱ ":n.Ld}${t.template?t.template(i):i[e]}`))} </div> ${o.extraTemplate?o.extraTemplate(i):n.Ld}`:n.dy`${i[a]}${o.extraTemplate?o.extraTemplate(i):n.Ld}`} </div> `))} </div> `:n.Ld}},{kind:"method",key:"_sortFilterData",value:async function(){const e=(new Date).getTime(),t=e-this._lastUpdate,i=e-this._curRequest;this._curRequest=e;const a=!this._lastUpdate||t>500&&i<500;let o=this.data;if(this._filter&&(o=await this._memFilterData(this.data,this._sortColumns,this._filter.trim())),!a&&this._curRequest!==e)return;const n=this.sortColumn?((e,t,i,a,o)=>w().sortData(e,t,i,a,o))(o,this._sortColumns[this.sortColumn],this.sortDirection,this.sortColumn,this.hass.locale.language):o,[l]=await Promise.all([n,C.y]),s=(new Date).getTime()-e;s<100&&await new Promise((e=>{setTimeout(e,100-s)})),(a||this._curRequest===e)&&(this._lastUpdate=e,this._filteredData=l)}},{kind:"field",key:"_groupData",value(){return(0,m.Z)(((e,t,i,a,o,l,s)=>{if(i||a||o){let r=[...e];if(o){const e=g(r,(e=>e[o]));e.undefined&&(e[$]=e.undefined,delete e.undefined);const i=Object.keys(e).sort(((e,t)=>{const i=l?.indexOf(e)??-1,a=l?.indexOf(t)??-1;return i!==a?-1===i?1:-1===a?-1:i-a:(0,v.$)(["","-","—"].includes(e)?"zzz":e,["","-","—"].includes(t)?"zzz":t,this.hass.locale.language)})).reduce(((t,i)=>(t[i]=e[i],t)),{}),a=[];Object.entries(i).forEach((([e,i])=>{a.push({append:!0,content:n.dy`<div class="mdc-data-table__cell group-header" role="cell" .group="${e}" @click="${this._collapseGroup}"> <ha-icon-button .path="${"M7.41,15.41L12,10.83L16.59,15.41L18,14L12,8L6,14L7.41,15.41Z"}" class="${s.includes(e)?"collapsed":""}"> </ha-icon-button> ${e===$?t("ui.components.data-table.ungrouped"):e||""} </div>`}),s.includes(e)||a.push(...i)})),r=a}return i&&r.push({append:!0,content:i}),a&&r.push({empty:!0}),r}return e}))}},{kind:"field",key:"_memFilterData",value:()=>(0,m.Z)(((e,t,i)=>((e,t,i)=>w().filterData(e,t,i))(e,t,i)))},{kind:"method",key:"_handleHeaderClick",value:function(e){const t=e.currentTarget.columnId;this.columns[t].sortable&&(this.sortDirection&&this.sortColumn===t?"asc"===this.sortDirection?this.sortDirection="desc":this.sortDirection=null:this.sortDirection="asc",this.sortColumn=null===this.sortDirection?void 0:t,(0,r.B)(this,"sorting-changed",{column:t,direction:this.sortDirection}))}},{kind:"method",key:"_handleHeaderRowCheckboxClick",value:function(e){e.target.checked?this.selectAll():(this._checkedRows=[],this._checkedRowsChanged())}},{kind:"field",key:"_handleRowCheckboxClick",value(){return e=>{const t=e.currentTarget,i=t.rowId;if(t.checked){if(this._checkedRows.includes(i))return;this._checkedRows=[...this._checkedRows,i]}else this._checkedRows=this._checkedRows.filter((e=>e!==i));this._checkedRowsChanged()}}},{kind:"field",key:"_handleRowClick",value(){return e=>{if(e.composedPath().find((e=>["ha-checkbox","mwc-button","ha-button","ha-icon-button","ha-assist-chip"].includes(e.localName))))return;const t=e.currentTarget.rowId;(0,r.B)(this,"row-click",{id:t},{bubbles:!1})}}},{kind:"method",key:"_setTitle",value:function(e){const t=e.currentTarget;t.scrollWidth>t.offsetWidth&&t.setAttribute("title",t.innerText)}},{kind:"method",key:"_checkedRowsChanged",value:function(){this._filteredData.length&&(this._filteredData=[...this._filteredData]),(0,r.B)(this,"selection-changed",{value:this._checkedRows})}},{kind:"method",key:"_handleSearchChange",value:function(e){this.filter||this._debounceSearch(e.detail.value)}},{kind:"method",key:"_calcTableHeight",value:async function(){this.autoHeight||(await this.updateComplete,this._headerHeight=this._header.clientHeight)}},{kind:"method",decorators:[(0,l.hO)({passive:!0})],key:"_saveScrollPos",value:function(e){this._savedScrollPos=e.target.scrollTop,this.renderRoot.querySelector(".mdc-data-table__header-row").scrollLeft=e.target.scrollLeft}},{kind:"method",decorators:[(0,l.hO)({passive:!0})],key:"_scrollContent",value:function(e){this.renderRoot.querySelector("lit-virtualizer").scrollLeft=e.target.scrollLeft}},{kind:"field",key:"_collapseGroup",value(){return e=>{const t=e.currentTarget.group;this._collapsedGroups.includes(t)?this._collapsedGroups=this._collapsedGroups.filter((e=>e!==t)):this._collapsedGroups=[...this._collapsedGroups,t],(0,r.B)(this,"collapsed-changed",{value:this._collapsedGroups})}}},{kind:"method",key:"expandAllGroups",value:function(){this._collapsedGroups=[],(0,r.B)(this,"collapsed-changed",{value:this._collapsedGroups})}},{kind:"method",key:"collapseAllGroups",value:function(){if(!this.groupColumn||!this.data.some((e=>e[this.groupColumn])))return;const e=g(this.data,(e=>e[this.groupColumn]));e.undefined&&(e[$]=e.undefined,delete e.undefined),this._collapsedGroups=Object.keys(e),(0,r.B)(this,"collapsed-changed",{value:this._collapsedGroups})}},{kind:"get",static:!0,key:"styles",value:function(){return[y.$c,n.iv`:host{height:100%}.mdc-data-table__content{font-family:Roboto,sans-serif;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:.875rem;line-height:1.25rem;font-weight:400;letter-spacing:.0178571429em;text-decoration:inherit;text-transform:inherit}.mdc-data-table{background-color:var(--data-table-background-color);border-radius:4px;border-width:1px;border-style:solid;border-color:var(--divider-color);display:inline-flex;flex-direction:column;box-sizing:border-box;overflow:hidden}.mdc-data-table__row--selected{background-color:rgba(var(--rgb-primary-color),.04)}.mdc-data-table__row{display:flex;height:var(--data-table-row-height,52px);width:var(--table-row-width,100%)}.mdc-data-table__row.empty-row{height:var(--data-table-empty-row-height,var(--data-table-row-height,52px))}.mdc-data-table__row~.mdc-data-table__row{border-top:1px solid var(--divider-color)}.mdc-data-table__row.clickable:not(
|
|
.mdc-data-table__row--selected
|
|
):hover{background-color:rgba(var(--rgb-primary-text-color),.04)}.mdc-data-table__header-cell{color:var(--primary-text-color)}.mdc-data-table__cell{color:var(--primary-text-color)}.mdc-data-table__header-row{height:56px;display:flex;border-bottom:1px solid var(--divider-color);overflow:auto}.mdc-data-table__header-row::-webkit-scrollbar{display:none}.mdc-data-table__header-row{-ms-overflow-style:none;scrollbar-width:none}.mdc-data-table__cell,.mdc-data-table__header-cell{padding-right:16px;padding-left:16px;min-width:150px;align-self:center;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;box-sizing:border-box}.mdc-data-table__cell.mdc-data-table__cell--flex{display:flex;overflow:initial}.mdc-data-table__cell.mdc-data-table__cell--icon{overflow:initial}.mdc-data-table__cell--checkbox,.mdc-data-table__header-cell--checkbox{padding-left:16px;padding-right:0;padding-inline-start:16px;padding-inline-end:initial;width:60px;min-width:60px}.mdc-data-table__table{height:100%;width:100%;border:0;white-space:nowrap;position:relative}.mdc-data-table__cell{font-family:Roboto,sans-serif;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:.875rem;line-height:1.25rem;font-weight:400;letter-spacing:.0178571429em;text-decoration:inherit;text-transform:inherit;flex-grow:0;flex-shrink:0}.mdc-data-table__cell a{color:inherit;text-decoration:none}.mdc-data-table__cell--numeric{text-align:var(--float-end)}.mdc-data-table__cell--icon{color:var(--secondary-text-color);text-align:center}.mdc-data-table__cell--icon,.mdc-data-table__header-cell--icon{min-width:64px;flex:0 0 64px!important}.mdc-data-table__cell--icon img{width:24px;height:24px}.mdc-data-table__header-cell.mdc-data-table__header-cell--icon{text-align:center}.mdc-data-table__header-cell.sortable.mdc-data-table__header-cell--icon:hover,.mdc-data-table__header-cell.sortable.mdc-data-table__header-cell--icon:not(
|
|
.not-sorted
|
|
){text-align:var(--float-start)}.mdc-data-table__cell--icon:first-child ha-domain-icon,.mdc-data-table__cell--icon:first-child ha-icon,.mdc-data-table__cell--icon:first-child ha-service-icon,.mdc-data-table__cell--icon:first-child ha-state-icon,.mdc-data-table__cell--icon:first-child ha-svg-icon,.mdc-data-table__cell--icon:first-child img{margin-left:8px;margin-inline-start:8px;margin-inline-end:initial}.mdc-data-table__cell--icon:first-child state-badge{margin-right:-8px;margin-inline-end:-8px;margin-inline-start:initial}.mdc-data-table__cell--icon-button,.mdc-data-table__cell--overflow-menu,.mdc-data-table__header-cell--icon-button,.mdc-data-table__header-cell--overflow-menu{min-width:64px;flex:0 0 64px!important;padding:8px}.mdc-data-table__cell--icon-button,.mdc-data-table__header-cell--icon-button{min-width:56px;width:56px}.mdc-data-table__cell--icon-button,.mdc-data-table__cell--overflow-menu{color:var(--secondary-text-color);text-overflow:clip}.mdc-data-table__cell--icon-button:first-child,.mdc-data-table__cell--icon-button:last-child,.mdc-data-table__header-cell--icon-button:first-child,.mdc-data-table__header-cell--icon-button:last-child{width:64px}.mdc-data-table__cell--icon-button:first-child,.mdc-data-table__cell--overflow-menu:first-child,.mdc-data-table__header-cell--icon-button:first-child,.mdc-data-table__header-cell--overflow-menu:first-child{padding-left:16px;padding-inline-start:16px;padding-inline-end:initial}.mdc-data-table__cell--icon-button:last-child,.mdc-data-table__cell--overflow-menu:last-child,.mdc-data-table__header-cell--icon-button:last-child,.mdc-data-table__header-cell--overflow-menu:last-child{padding-right:16px;padding-inline-end:16px;padding-inline-start:initial}.mdc-data-table__cell--overflow,.mdc-data-table__cell--overflow-menu,.mdc-data-table__header-cell--overflow,.mdc-data-table__header-cell--overflow-menu{overflow:initial}.mdc-data-table__cell--icon-button a{color:var(--secondary-text-color)}.mdc-data-table__header-cell{font-family:Roboto,sans-serif;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:.875rem;line-height:1.375rem;font-weight:500;letter-spacing:.0071428571em;text-decoration:inherit;text-transform:inherit;text-align:var(--float-start)}.mdc-data-table__header-cell--numeric{text-align:var(--float-end)}.mdc-data-table__header-cell--numeric.sortable:hover,.mdc-data-table__header-cell--numeric.sortable:not(.not-sorted){text-align:var(--float-start)}.group-header{padding-top:12px;height:var(--data-table-row-height,52px);padding-left:12px;padding-inline-start:12px;padding-inline-end:initial;width:100%;font-weight:500;display:flex;align-items:center;cursor:pointer;background-color:var(--primary-background-color)}.group-header ha-icon-button{transition:transform .2s ease}.group-header ha-icon-button.collapsed{transform:rotate(180deg)}:host{display:block}.mdc-data-table{display:block;border-width:var(--data-table-border-width,1px);height:100%}.mdc-data-table__header-cell{overflow:hidden;position:relative}.mdc-data-table__header-cell span{position:relative;left:0px;inset-inline-start:0px;inset-inline-end:initial}.mdc-data-table__header-cell.sortable{cursor:pointer}.mdc-data-table__header-cell>*{transition:var(--float-start) .2s ease}.mdc-data-table__header-cell ha-svg-icon{top:-3px;position:absolute}.mdc-data-table__header-cell.not-sorted ha-svg-icon{left:-20px;inset-inline-start:-20px;inset-inline-end:initial}.mdc-data-table__header-cell.sortable.not-sorted:hover span,.mdc-data-table__header-cell.sortable:not(.not-sorted) span{left:24px;inset-inline-start:24px;inset-inline-end:initial}.mdc-data-table__header-cell.sortable:hover.not-sorted ha-svg-icon,.mdc-data-table__header-cell.sortable:not(.not-sorted) ha-svg-icon{left:12px;inset-inline-start:12px;inset-inline-end:initial}.table-header{border-bottom:1px solid var(--divider-color)}search-input{display:block;flex:1;--mdc-text-field-fill-color:var(--sidebar-background-color);--mdc-text-field-idle-line-color:transparent}slot[name=header]{display:block}.center{text-align:center}.secondary{color:var(--secondary-text-color)}.scroller{height:calc(100% - 57px);overflow:overlay!important}.mdc-data-table__table.auto-height .scroller{overflow-y:hidden!important}.grows{flex-grow:1;flex-shrink:1}.forceLTR{direction:ltr}.clickable{cursor:pointer}lit-virtualizer{contain:size layout!important;overscroll-behavior:contain}`]}}]}}),n.oi);i("49549"),i("44118"),i("28906"),i("98094"),i("88002"),i("59897");var L=i("46097"),M=i("79840"),A=i("39073");(0,a.Z)([(0,l.Mo)("ha-outlined-field")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",key:"fieldTag",value:()=>M.i0`ha-outlined-field`},{kind:"field",static:!0,key:"styles",value(){return[...(0,d.Z)(i,"styles",this),n.iv`.container::before{display:block;content:"";position:absolute;inset:0;background-color:var(--ha-outlined-field-container-color,transparent);opacity:var(--ha-outlined-field-container-opacity, 1);border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}`]}}]}}),A.O),(0,a.Z)([(0,l.Mo)("ha-outlined-text-field")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",key:"fieldTag",value:()=>M.i0`ha-outlined-field`},{kind:"field",static:!0,key:"styles",value(){return[...(0,d.Z)(i,"styles",this),n.iv`:host{--md-sys-color-on-surface:var(--primary-text-color);--md-sys-color-primary:var(--primary-text-color);--md-outlined-text-field-input-text-color:var(--primary-text-color);--md-sys-color-on-surface-variant:var(--secondary-text-color);--md-outlined-field-outline-color:var(--outline-color);--md-outlined-field-focus-outline-color:var(--primary-color);--md-outlined-field-hover-outline-color:var(--outline-hover-color)}:host([dense]){--md-outlined-field-top-space:5.5px;--md-outlined-field-bottom-space:5.5px;--md-outlined-field-container-shape-start-start:10px;--md-outlined-field-container-shape-start-end:10px;--md-outlined-field-container-shape-end-end:10px;--md-outlined-field-container-shape-end-start:10px;--md-outlined-field-focus-outline-width:1px;--md-outlined-field-with-leading-content-leading-space:8px;--md-outlined-field-with-trailing-content-trailing-space:8px;--md-outlined-field-content-space:8px;--mdc-icon-size:var(--md-input-chip-icon-size, 18px)}.input{font-family:Roboto,sans-serif}`]}}]}}),L.x);(0,a.Z)([(0,l.Mo)("search-input-outlined")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,l.Cb)()],key:"filter",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"suffix",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"autofocus",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:String})],key:"label",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:String})],key:"placeholder",value:void 0},{kind:"method",key:"focus",value:function(){this._input?.focus()}},{kind:"field",decorators:[(0,l.IO)("ha-outlined-text-field",!0)],key:"_input",value:void 0},{kind:"method",key:"render",value:function(){const e=this.placeholder||this.hass.localize("ui.common.search");return n.dy` <ha-outlined-text-field .autofocus="${this.autofocus}" .aria-label="${this.label||this.hass.localize("ui.common.search")}" .placeholder="${e}" .value="${this.filter||""}" icon .iconTrailing="${this.filter||this.suffix}" @input="${this._filterInputChanged}" dense> <slot name="prefix" slot="leading-icon"> <ha-svg-icon tabindex="-1" class="prefix" .path="${"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"}"></ha-svg-icon> </slot> ${this.filter?n.dy`<ha-icon-button aria-label="Clear input" slot="trailing-icon" @click="${this._clearSearch}" .path="${"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"}"> </ha-icon-button>`:n.Ld} </ha-outlined-text-field> `}},{kind:"method",key:"_filterChanged",value:async function(e){(0,r.B)(this,"value-changed",{value:String(e)})}},{kind:"method",key:"_filterInputChanged",value:async function(e){this._filterChanged(e.target.value)}},{kind:"method",key:"_clearSearch",value:async function(){this._filterChanged("")}},{kind:"get",static:!0,key:"styles",value:function(){return n.iv`:host{display:inline-flex;z-index:0;--mdc-icon-button-size:24px}ha-outlined-text-field{display:block;width:100%;--ha-outlined-field-container-color:var(--card-background-color)}ha-icon-button,ha-svg-icon{display:flex;color:var(--primary-text-color)}ha-svg-icon{outline:0}`}}]}}),n.oi);i("92500"),i("89654");var H=i("19799"),V=i("23111");(0,a.Z)([(0,l.Mo)("ha-ripple")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",key:"attachableTouchController",value(){return new H.J(this,this._onTouchControlChange.bind(this))}},{kind:"method",key:"attach",value:function(e){(0,d.Z)(i,"attach",this,3)([e]),this.attachableTouchController.attach(e)}},{kind:"method",key:"detach",value:function(){(0,d.Z)(i,"detach",this,3)([]),this.attachableTouchController.detach()}},{kind:"field",key:"_handleTouchEnd",value(){return()=>{this.disabled||(0,d.Z)(i,"endPressAnimation",this,3)([])}}},{kind:"method",key:"_onTouchControlChange",value:function(e,t){e?.removeEventListener("touchend",this._handleTouchEnd),t?.addEventListener("touchend",this._handleTouchEnd)}},{kind:"field",static:!0,key:"styles",value(){return[...(0,d.Z)(i,"styles",this),n.iv`:host{--md-ripple-hover-opacity:var(--ha-ripple-hover-opacity, 0.08);--md-ripple-pressed-opacity:var(--ha-ripple-pressed-opacity, 0.12);--md-ripple-hover-color:var(
|
|
--ha-ripple-hover-color,
|
|
var(--ha-ripple-color, var(--secondary-text-color))
|
|
);--md-ripple-pressed-color:var(
|
|
--ha-ripple-pressed-color,
|
|
var(--ha-ripple-color, var(--secondary-text-color))
|
|
)}`]}}]}}),V.M),(0,a.Z)([(0,l.Mo)("ha-tab")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0})],key:"active",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0})],key:"narrow",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)()],key:"name",value:void 0},{kind:"method",key:"render",value:function(){return n.dy` <div tabindex="0" role="tab" aria-selected="${this.active}" aria-label="${(0,u.o)(this.name)}" @keydown="${this._handleKeyDown}"> ${this.narrow?n.dy`<slot name="icon"></slot>`:""} <span class="name">${this.name}</span> <ha-ripple></ha-ripple> </div> `}},{kind:"method",key:"_handleKeyDown",value:function(e){"Enter"===e.key&&e.target.click()}},{kind:"get",static:!0,key:"styles",value:function(){return n.iv`div{padding:0 32px;display:flex;flex-direction:column;text-align:center;box-sizing:border-box;align-items:center;justify-content:center;width:100%;height:var(--header-height);cursor:pointer;position:relative;outline:0}.name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}:host([active]){color:var(--primary-color)}:host(:not([narrow])[active]) div{border-bottom:2px solid var(--primary-color)}:host([narrow]){min-width:0;display:flex;justify-content:center;overflow:hidden}:host([narrow]) div{padding:0 4px}div:focus-visible:before{position:absolute;display:block;content:"";inset:0;background-color:var(--secondary-text-color);opacity:.08}`}}]}}),n.oi);var S=i("24785"),B=i("49672");const z=(e,t)=>!t.component||(0,S.r)(t.component).some((t=>(0,B.p)(e,t))),F=(e,t)=>!t.not_component||!(0,S.r)(t.not_component).some((t=>(0,B.p)(e,t))),O=e=>e.core,T=(e,t)=>(e=>e.advancedOnly)(t)&&!(e=>e.userData?.showAdvanced)(e);(0,a.Z)([(0,l.Mo)("hass-tabs-subpage")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"supervisor",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"localizeFunc",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:String,attribute:"back-path"})],key:"backPath",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"backCallback",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,attribute:"main-page"})],key:"mainPage",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"route",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"tabs",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0})],key:"narrow",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0,attribute:"is-wide"})],key:"isWide",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"pane",value:()=>!1},{kind:"field",decorators:[(0,l.SB)()],key:"_activeTab",value:void 0},{kind:"field",decorators:[(0,f.i)(".content")],key:"_savedScrollPos",value:void 0},{kind:"field",key:"_getTabs",value(){return(0,m.Z)(((e,t,i,a,o,l)=>{const s=e.filter((e=>((e,t)=>(O(t)||z(e,t))&&!T(e,t)&&F(e,t))(this.hass,e)));if(s.length<2){if(1===s.length){const e=s[0];return[e.translationKey?l(e.translationKey):e.name]}return[""]}return s.map((e=>n.dy` <a href="${e.path}"> <ha-tab .hass="${this.hass}" .active="${e.path===t?.path}" .narrow="${this.narrow}" .name="${e.translationKey?l(e.translationKey):e.name}"> ${e.iconPath?n.dy`<ha-svg-icon slot="icon" .path="${e.iconPath}"></ha-svg-icon>`:""} </ha-tab> </a> `))}))}},{kind:"method",key:"willUpdate",value:function(e){e.has("route")&&(this._activeTab=this.tabs.find((e=>`${this.route.prefix}${this.route.path}`.includes(e.path)))),(0,d.Z)(i,"willUpdate",this,3)([e])}},{kind:"method",key:"render",value:function(){const e=this._getTabs(this.tabs,this._activeTab,this.hass.config.components,this.hass.language,this.narrow,this.localizeFunc||this.hass.localize),t=e.length>1;return n.dy` <div class="toolbar"> <slot name="toolbar"> <div class="toolbar-content"> ${this.mainPage||!this.backPath&&history.state?.root?n.dy` <ha-menu-button .hassio="${this.supervisor}" .hass="${this.hass}" .narrow="${this.narrow}"></ha-menu-button> `:this.backPath?n.dy` <a href="${this.backPath}"> <ha-icon-button-arrow-prev .hass="${this.hass}"></ha-icon-button-arrow-prev> </a> `:n.dy` <ha-icon-button-arrow-prev .hass="${this.hass}" @click="${this._backTapped}"></ha-icon-button-arrow-prev> `} ${this.narrow||!t?n.dy`<div class="main-title"> <slot name="header">${t?"":e[0]}</slot> </div>`:""} ${t&&!this.narrow?n.dy`<div id="tabbar">${e}</div>`:""} <div id="toolbar-icon"> <slot name="toolbar-icon"></slot> </div> </div> </slot> ${t&&this.narrow?n.dy`<div id="tabbar" class="bottom-bar">${e}</div>`:""} </div> <div class="container"> ${this.pane?n.dy`<div class="pane"> <div class="shadow-container"></div> <div class="ha-scrollbar"> <slot name="pane"></slot> </div> </div>`:n.Ld} <div class="content ha-scrollbar ${(0,s.$)({tabs:t})}" @scroll="${this._saveScrollPos}"> <slot></slot> </div> </div> <div id="fab" class="${(0,s.$)({tabs:t})}"> <slot name="fab"></slot> </div> `}},{kind:"method",decorators:[(0,l.hO)({passive:!0})],key:"_saveScrollPos",value:function(e){this._savedScrollPos=e.target.scrollTop}},{kind:"method",key:"_backTapped",value:function(){this.backCallback?this.backCallback():history.back()}},{kind:"get",static:!0,key:"styles",value:function(){return[y.$c,n.iv`:host{display:block;height:100%;background-color:var(--primary-background-color)}:host([narrow]){width:100%;position:fixed}.container{display:flex;height:calc(100% - var(--header-height))}:host([narrow]) .container{height:100%}ha-menu-button{margin-right:24px;margin-inline-end:24px;margin-inline-start:initial}.toolbar{font-size:20px;height:var(--header-height);background-color:var(--sidebar-background-color);font-weight:400;border-bottom:1px solid var(--divider-color);box-sizing:border-box}.toolbar-content{padding:8px 12px;display:flex;align-items:center;height:100%;box-sizing:border-box}@media (max-width:599px){.toolbar-content{padding:4px}}.toolbar a{color:var(--sidebar-text-color);text-decoration:none}.bottom-bar a{width:25%}#tabbar{display:flex;font-size:14px;overflow:hidden}#tabbar>a{overflow:hidden;max-width:45%}#tabbar.bottom-bar{position:absolute;bottom:0;left:0;padding:0 16px;box-sizing:border-box;background-color:var(--sidebar-background-color);border-top:1px solid var(--divider-color);justify-content:space-around;z-index:2;font-size:12px;width:100%;padding-bottom:env(safe-area-inset-bottom)}#tabbar:not(.bottom-bar){flex:1;justify-content:center}:host(:not([narrow])) #toolbar-icon{min-width:40px}::slotted([slot=toolbar-icon]),ha-icon-button-arrow-prev,ha-menu-button{display:flex;flex-shrink:0;pointer-events:auto;color:var(--sidebar-icon-color)}.main-title{flex:1;max-height:var(--header-height);line-height:20px;color:var(--sidebar-text-color);margin:var(--main-title-margin,var(--margin-title))}.content{position:relative;width:calc(100% - env(safe-area-inset-left) - env(safe-area-inset-right));margin-left:env(safe-area-inset-left);margin-right:env(safe-area-inset-right);margin-inline-start:env(safe-area-inset-left);margin-inline-end:env(safe-area-inset-right);overflow:auto;-webkit-overflow-scrolling:touch}:host([narrow]) .content{height:calc(100% - var(--header-height));height:calc(100% - var(--header-height) - env(safe-area-inset-bottom))}:host([narrow]) .content.tabs{height:calc(100% - 2 * var(--header-height));height:calc(100% - 2 * var(--header-height) - env(safe-area-inset-bottom))}#fab{position:fixed;right:calc(16px + env(safe-area-inset-right));inset-inline-end:calc(16px + env(safe-area-inset-right));inset-inline-start:initial;bottom:calc(16px + env(safe-area-inset-bottom));z-index:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}:host([narrow]) #fab.tabs{bottom:calc(84px + env(safe-area-inset-bottom))}#fab[is-wide]{bottom:24px;right:24px;inset-inline-end:24px;inset-inline-start:initial}.pane{border-right:1px solid var(--divider-color);border-inline-end:1px solid var(--divider-color);border-inline-start:initial;box-sizing:border-box;display:flex;flex:0 0 var(--sidepane-width,250px);width:var(--sidepane-width,250px);flex-direction:column;position:relative}.pane .ha-scrollbar{flex:1}`]}}]}}),n.oi);const R=()=>i.e("6849").then(i.bind(i,62083)),Z="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",D="M6,13H18V11H6M3,6V8H21V6M10,18H14V16H10V18Z",P="M21 8H3V6H21V8M13.81 16H10V18H13.09C13.21 17.28 13.46 16.61 13.81 16M18 11H6V13H18V11M21.12 15.46L19 17.59L16.88 15.46L15.47 16.88L17.59 19L15.47 21.12L16.88 22.54L19 20.41L21.12 22.54L22.54 21.12L20.41 19L22.54 16.88L21.12 15.46Z",G="M3,5H9V11H3V5M5,7V9H7V7H5M11,7H21V9H11V7M11,15H21V17H11V15M5,20L1.5,16.5L2.91,15.09L5,17.17L9.59,12.59L11,14L5,20Z",I="M7,10L12,15L17,10H7Z";(0,a.Z)([(0,l.Mo)("hass-tabs-subpage-data-table")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"localizeFunc",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:"is-wide",type:Boolean})],key:"isWide",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0})],key:"narrow",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"supervisor",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,attribute:"main-page"})],key:"mainPage",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"initialCollapsedGroups",value:()=>[]},{kind:"field",decorators:[(0,l.Cb)({type:Object})],key:"columns",value:()=>({})},{kind:"field",decorators:[(0,l.Cb)({type:Array})],key:"data",value:()=>[]},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"selectable",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"clickable",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:"has-fab",type:Boolean})],key:"hasFab",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"appendRow",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:String})],key:"id",value:()=>"id"},{kind:"field",decorators:[(0,l.Cb)({type:String})],key:"filter",value:()=>""},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"searchLabel",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Number})],key:"filters",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Number})],key:"selected",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:String,attribute:"back-path"})],key:"backPath",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"backCallback",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1,type:String})],key:"noDataText",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"empty",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"route",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"tabs",value:()=>[]},{kind:"field",decorators:[(0,l.Cb)({attribute:"has-filters",type:Boolean})],key:"hasFilters",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:"show-filters",type:Boolean})],key:"showFilters",value:()=>!1},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"initialSorting",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"initialGroupColumn",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"groupOrder",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"columnOrder",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hiddenColumns",value:void 0},{kind:"field",decorators:[(0,l.SB)()],key:"_sortColumn",value:void 0},{kind:"field",decorators:[(0,l.SB)()],key:"_sortDirection",value:()=>null},{kind:"field",decorators:[(0,l.SB)()],key:"_groupColumn",value:void 0},{kind:"field",decorators:[(0,l.SB)()],key:"_selectMode",value:()=>!1},{kind:"field",decorators:[(0,l.IO)("ha-data-table",!0)],key:"_dataTable",value:void 0},{kind:"field",decorators:[(0,l.IO)("#group-by-menu")],key:"_groupByMenu",value:void 0},{kind:"field",decorators:[(0,l.IO)("#sort-by-menu")],key:"_sortByMenu",value:void 0},{kind:"field",decorators:[(0,l.IO)("search-input-outlined")],key:"_searchInput",value:void 0},{kind:"method",key:"supportedShortcuts",value:function(){return{f:()=>this._searchInput.focus()}}},{kind:"field",key:"_showPaneController",value(){return new o.Z(this,{callback:e=>e[0]?.contentRect.width>750})}},{kind:"method",key:"clearSelection",value:function(){this._dataTable.clearSelection()}},{kind:"method",key:"willUpdate",value:function(){this.hasUpdated||(this.initialGroupColumn&&this._setGroupColumn(this.initialGroupColumn),this.initialSorting&&(this._sortColumn=this.initialSorting.column,this._sortDirection=this.initialSorting.direction))}},{kind:"method",key:"_toggleGroupBy",value:function(){this._groupByMenu.open=!this._groupByMenu.open}},{kind:"method",key:"_toggleSortBy",value:function(){this._sortByMenu.open=!this._sortByMenu.open}},{kind:"method",key:"render",value:function(){const e=this.localizeFunc||this.hass.localize,t=this._showPaneController.value??!this.narrow,i=this.hasFilters?n.dy`<div class="relative"> <ha-assist-chip .label="${e("ui.components.subpage-data-table.filters")}" .active="${this.filters}" @click="${this._toggleFilters}"> <ha-svg-icon slot="icon" .path="${D}"></ha-svg-icon> </ha-assist-chip> ${this.filters?n.dy`<div class="badge">${this.filters}</div>`:n.Ld} </div>`:n.Ld,a=this.selectable&&!this._selectMode?n.dy`<ha-assist-chip class="has-dropdown select-mode-chip" .active="${this._selectMode}" @click="${this._enableSelectMode}" .title="${e("ui.components.subpage-data-table.enter_selection_mode")}"> <ha-svg-icon slot="icon" .path="${G}"></ha-svg-icon> </ha-assist-chip>`:n.Ld,o=n.dy`<search-input-outlined .hass="${this.hass}" .filter="${this.filter}" @value-changed="${this._handleSearchChange}" .label="${this.searchLabel}" .placeholder="${this.searchLabel}"> </search-input-outlined>`,l=Object.values(this.columns).find((e=>e.sortable))?n.dy` <ha-assist-chip .label="${e("ui.components.subpage-data-table.sort_by",{sortColumn:this._sortColumn&&` ${this.columns[this._sortColumn]?.title||this.columns[this._sortColumn]?.label}`||""})}" id="sort-by-anchor" @click="${this._toggleSortBy}"> <ha-svg-icon slot="trailing-icon" .path="${I}"></ha-svg-icon> </ha-assist-chip> `:n.Ld,r=Object.values(this.columns).find((e=>e.groupable))?n.dy` <ha-assist-chip .label="${e("ui.components.subpage-data-table.group_by",{groupColumn:this._groupColumn?` ${this.columns[this._groupColumn].title||this.columns[this._groupColumn].label}`:""})}" id="group-by-anchor" @click="${this._toggleGroupBy}"> <ha-svg-icon slot="trailing-icon" .path="${I}"></ha-svg-icon></ha-assist-chip> `:n.Ld,d=n.dy`<ha-assist-chip class="has-dropdown select-mode-chip" @click="${this._openSettings}" .title="${e("ui.components.subpage-data-table.settings")}"> <ha-svg-icon slot="icon" .path="${"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}"></ha-svg-icon> </ha-assist-chip>`;return n.dy` <hass-tabs-subpage .hass="${this.hass}" .localizeFunc="${this.localizeFunc}" .narrow="${this.narrow}" .isWide="${this.isWide}" .backPath="${this.backPath}" .backCallback="${this.backCallback}" .route="${this.route}" .tabs="${this.tabs}" .mainPage="${this.mainPage}" .supervisor="${this.supervisor}" .pane="${t&&this.showFilters}" @sorting-changed="${this._sortingChanged}"> ${this._selectMode?n.dy`<div class="selection-bar" slot="toolbar"> <div class="selection-controls"> <ha-icon-button .path="${Z}" @click="${this._disableSelectMode}" .label="${e("ui.components.subpage-data-table.exit_selection_mode")}"></ha-icon-button> <ha-md-button-menu positioning="absolute"> <ha-assist-chip .label="${e("ui.components.subpage-data-table.select")}" slot="trigger"> <ha-svg-icon slot="icon" .path="${G}"></ha-svg-icon> <ha-svg-icon slot="trailing-icon" .path="${I}"></ha-svg-icon></ha-assist-chip> <ha-md-menu-item .value="${void 0}" @click="${this._selectAll}"> <div slot="headline"> ${e("ui.components.subpage-data-table.select_all")} </div> </ha-md-menu-item> <ha-md-menu-item .value="${void 0}" @click="${this._selectNone}"> <div slot="headline"> ${e("ui.components.subpage-data-table.select_none")} </div> </ha-md-menu-item> <ha-md-divider role="separator" tabindex="-1"></ha-md-divider> <ha-md-menu-item .value="${void 0}" @click="${this._disableSelectMode}"> <div slot="headline"> ${e("ui.components.subpage-data-table.exit_selection_mode")} </div> </ha-md-menu-item> </ha-md-button-menu> ${void 0!==this.selected?n.dy`<p> ${e("ui.components.subpage-data-table.selected",{selected:this.selected||"0"})} </p>`:n.Ld} </div> <div class="center-vertical"> <slot name="selection-bar"></slot> </div> </div>`:n.Ld} ${this.showFilters&&t?n.dy`<div class="pane" slot="pane"> <div class="table-header"> <ha-assist-chip .label="${e("ui.components.subpage-data-table.filters")}" active @click="${this._toggleFilters}"> <ha-svg-icon slot="icon" .path="${D}"></ha-svg-icon> </ha-assist-chip> ${this.filters?n.dy`<ha-icon-button .path="${P}" @click="${this._clearFilters}" .label="${e("ui.components.subpage-data-table.clear_filter")}"></ha-icon-button>`:n.Ld} </div> <div class="pane-content"> <slot name="filter-pane"></slot> </div> </div>`:n.Ld} ${this.empty?n.dy`<div class="center"> <slot name="empty">${this.noDataText}</slot> </div>`:n.dy`<div slot="toolbar-icon"> <slot name="toolbar-icon"></slot> </div> ${this.narrow?n.dy` <div slot="header"> <slot name="header"> <div class="search-toolbar">${o}</div> </slot> </div> `:""} <ha-data-table .hass="${this.hass}" .localize="${e}" .narrow="${this.narrow}" .columns="${this.columns}" .data="${this.data}" .noDataText="${this.noDataText}" .filter="${this.filter}" .selectable="${this._selectMode}" .hasFab="${this.hasFab}" .id="${this.id}" .clickable="${this.clickable}" .appendRow="${this.appendRow}" .sortColumn="${this._sortColumn}" .sortDirection="${this._sortDirection}" .groupColumn="${this._groupColumn}" .groupOrder="${this.groupOrder}" .initialCollapsedGroups="${this.initialCollapsedGroups}" .columnOrder="${this.columnOrder}" .hiddenColumns="${this.hiddenColumns}"> ${this.narrow?n.dy` <div slot="header"> <slot name="top-header"></slot> </div> <div slot="header-row" class="narrow-header-row"> ${this.hasFilters&&!this.showFilters?n.dy`${i}`:n.Ld} ${a} <div class="flex"></div> ${r}${l}${d} </div> `:n.dy` <div slot="header"> <slot name="top-header"></slot> <slot name="header"> <div class="table-header"> ${this.hasFilters&&!this.showFilters?n.dy`${i}`:n.Ld}${a}${o}${r}${l}${d} </div> </slot> </div> `} </ha-data-table>`} <div slot="fab"><slot name="fab"></slot></div> </hass-tabs-subpage> <ha-menu anchor="group-by-anchor" id="group-by-menu" positioning="fixed"> ${Object.entries(this.columns).map((([e,t])=>t.groupable?n.dy` <ha-md-menu-item .value="${e}" @click="${this._handleGroupBy}" .selected="${e===this._groupColumn}" class="${(0,s.$)({selected:e===this._groupColumn})}"> ${t.title||t.label} </ha-md-menu-item> `:n.Ld))} <ha-md-menu-item .value="${void 0}" @click="${this._handleGroupBy}" .selected="${void 0===this._groupColumn}" class="${(0,s.$)({selected:void 0===this._groupColumn})}"> ${e("ui.components.subpage-data-table.dont_group_by")} </ha-md-menu-item> <ha-md-divider role="separator" tabindex="-1"></ha-md-divider> <ha-md-menu-item @click="${this._collapseAllGroups}" .disabled="${void 0===this._groupColumn}"> <ha-svg-icon slot="start" .path="${"M16.59,5.41L15.17,4L12,7.17L8.83,4L7.41,5.41L12,10M7.41,18.59L8.83,20L12,16.83L15.17,20L16.58,18.59L12,14L7.41,18.59Z"}"></ha-svg-icon> ${e("ui.components.subpage-data-table.collapse_all_groups")} </ha-md-menu-item> <ha-md-menu-item @click="${this._expandAllGroups}" .disabled="${void 0===this._groupColumn}"> <ha-svg-icon slot="start" .path="${"M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"}"></ha-svg-icon> ${e("ui.components.subpage-data-table.expand_all_groups")} </ha-md-menu-item> </ha-menu> <ha-menu anchor="sort-by-anchor" id="sort-by-menu" positioning="fixed"> ${Object.entries(this.columns).map((([e,t])=>t.sortable?n.dy` <ha-md-menu-item .value="${e}" @click="${this._handleSortBy}" keep-open .selected="${e===this._sortColumn}" class="${(0,s.$)({selected:e===this._sortColumn})}"> ${this._sortColumn===e?n.dy` <ha-svg-icon slot="end" .path="${"desc"===this._sortDirection?"M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z":"M13,20H11V8L5.5,13.5L4.08,12.08L12,4.16L19.92,12.08L18.5,13.5L13,8V20Z"}"></ha-svg-icon> `:n.Ld} ${t.title||t.label} </ha-md-menu-item> `:n.Ld))} </ha-menu> ${this.showFilters&&!t?n.dy`<ha-dialog open .heading="${e("ui.components.subpage-data-table.filters")}"> <ha-dialog-header slot="heading"> <ha-icon-button slot="navigationIcon" .path="${Z}" @click="${this._toggleFilters}" .label="${e("ui.components.subpage-data-table.close_filter")}"></ha-icon-button> <span slot="title">${e("ui.components.subpage-data-table.filters")}</span> ${this.filters?n.dy`<ha-icon-button slot="actionItems" @click="${this._clearFilters}" .path="${P}" .label="${e("ui.components.subpage-data-table.clear_filter")}"></ha-icon-button>`:n.Ld} </ha-dialog-header> <div class="filter-dialog-content"> <slot name="filter-pane"></slot> </div> <div slot="primaryAction"> <ha-button @click="${this._toggleFilters}"> ${e("ui.components.subpage-data-table.show_results",{number:this.data.length})} </ha-button> </div> </ha-dialog>`:n.Ld} `}},{kind:"method",key:"_clearFilters",value:function(){(0,r.B)(this,"clear-filter")}},{kind:"method",key:"_toggleFilters",value:function(){this.showFilters=!this.showFilters}},{kind:"method",key:"_sortingChanged",value:function(e){this._sortDirection=e.detail.direction,this._sortColumn=this._sortDirection?e.detail.column:void 0}},{kind:"method",key:"_handleSortBy",value:function(e){const t=e.currentTarget.value;this._sortDirection&&this._sortColumn===t?"asc"===this._sortDirection?this._sortDirection="desc":this._sortDirection=null:this._sortDirection="asc",this._sortColumn=null===this._sortDirection?void 0:t,(0,r.B)(this,"sorting-changed",{column:t,direction:this._sortDirection})}},{kind:"method",key:"_handleGroupBy",value:function(e){this._setGroupColumn(e.currentTarget.value)}},{kind:"method",key:"_setGroupColumn",value:function(e){this._groupColumn=e,(0,r.B)(this,"grouping-changed",{value:e})}},{kind:"method",key:"_openSettings",value:function(){var e,t;e=this,t={columns:this.columns,hiddenColumns:this.hiddenColumns,columnOrder:this.columnOrder,onUpdate:(e,t)=>{this.columnOrder=e,this.hiddenColumns=t,(0,r.B)(this,"columns-changed",{columnOrder:e,hiddenColumns:t})},localizeFunc:this.localizeFunc},(0,r.B)(e,"show-dialog",{dialogTag:"dialog-data-table-settings",dialogImport:R,dialogParams:t})}},{kind:"method",key:"_collapseAllGroups",value:function(){this._dataTable.collapseAllGroups()}},{kind:"method",key:"_expandAllGroups",value:function(){this._dataTable.expandAllGroups()}},{kind:"method",key:"_enableSelectMode",value:function(){this._selectMode=!0}},{kind:"method",key:"_disableSelectMode",value:function(){this._selectMode=!1,this._dataTable.clearSelection()}},{kind:"method",key:"_selectAll",value:function(){this._dataTable.selectAll()}},{kind:"method",key:"_selectNone",value:function(){this._dataTable.clearSelection()}},{kind:"method",key:"_handleSearchChange",value:function(e){this.filter!==e.detail.value&&(this.filter=e.detail.value,(0,r.B)(this,"search-changed",{value:this.filter}))}},{kind:"get",static:!0,key:"styles",value:function(){return n.iv`:host{display:block;height:100%}ha-data-table{width:100%;height:100%;--data-table-border-width:0}.pane,:host(:not([narrow])) ha-data-table{height:calc(100vh - 1px - var(--header-height));display:block}.pane-content{height:calc(100vh - 1px - var(--header-height) - var(--header-height));display:flex;flex-direction:column}:host([narrow]) hass-tabs-subpage{--main-title-margin:0}:host([narrow]){--expansion-panel-summary-padding:0 16px}.table-header{display:flex;align-items:center;--mdc-shape-small:0;height:56px;width:100%;justify-content:space-between;padding:0 16px;gap:16px;box-sizing:border-box;background:var(--primary-background-color);border-bottom:1px solid var(--divider-color)}search-input-outlined{flex:1}.search-toolbar{display:flex;align-items:center;color:var(--secondary-text-color)}.filters{--mdc-text-field-fill-color:var(--input-fill-color);--mdc-text-field-idle-line-color:var(--input-idle-line-color);--mdc-shape-small:4px;--text-field-overflow:initial;display:flex;justify-content:flex-end;color:var(--primary-text-color)}.active-filters{color:var(--primary-text-color);position:relative;display:flex;align-items:center;padding:2px 2px 2px 8px;margin-left:4px;margin-inline-start:4px;margin-inline-end:initial;font-size:14px;width:max-content;cursor:initial;direction:var(--direction)}.active-filters ha-svg-icon{color:var(--primary-color)}.active-filters mwc-button{margin-left:8px;margin-inline-start:8px;margin-inline-end:initial;direction:var(--direction)}.active-filters::before{background-color:var(--primary-color);opacity:.12;border-radius:4px;position:absolute;top:0;right:0;bottom:0;left:0;content:""}.badge{min-width:20px;box-sizing:border-box;border-radius:50%;font-weight:400;background-color:var(--primary-color);line-height:20px;text-align:center;padding:0px 4px;color:var(--text-primary-color);position:absolute;right:0;inset-inline-end:0;inset-inline-start:initial;top:4px;font-size:.65em}.center{display:flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;height:100%;width:100%;padding:16px}.badge{position:absolute;top:-4px;right:-4px;inset-inline-end:-4px;inset-inline-start:initial;min-width:16px;box-sizing:border-box;border-radius:50%;font-weight:400;font-size:11px;background-color:var(--primary-color);line-height:16px;text-align:center;padding:0px 2px;color:var(--text-primary-color)}.narrow-header-row{display:flex;align-items:center;min-width:100%;gap:16px;padding:0 16px;box-sizing:border-box;overflow-x:scroll;-ms-overflow-style:none;scrollbar-width:none}.narrow-header-row .flex{flex:1;margin-left:-16px}.selection-bar{background:rgba(var(--rgb-primary-color),.1);width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;box-sizing:border-box;font-size:14px;--ha-assist-chip-container-color:var(--card-background-color)}.selection-controls{display:flex;align-items:center;gap:8px}.selection-controls p{margin-left:8px;margin-inline-start:8px;margin-inline-end:initial}.center-vertical{display:flex;align-items:center;gap:8px}.relative{position:relative}ha-assist-chip{--ha-assist-chip-container-shape:10px;--ha-assist-chip-container-color:var(--card-background-color)}.select-mode-chip{--md-assist-chip-icon-label-space:0;--md-assist-chip-trailing-space:8px}ha-dialog{--mdc-dialog-min-width:calc(
|
|
100vw - env(safe-area-inset-right) - env(safe-area-inset-left)
|
|
);--mdc-dialog-max-width:calc(
|
|
100vw - env(safe-area-inset-right) - env(safe-area-inset-left)
|
|
);--mdc-dialog-min-height:100%;--mdc-dialog-max-height:100%;--vertical-align-dialog:flex-end;--ha-dialog-border-radius:0;--dialog-content-padding:0}.filter-dialog-content{height:calc(100vh - 1px - 61px - var(--header-height));display:flex;flex-direction:column}#group-by-anchor,#sort-by-anchor,ha-md-button-menu ha-assist-chip{--md-assist-chip-trailing-space:8px}`}}]}}),(E=n.oi,class extends E{constructor(...e){super(...e),this._keydownEvent=e=>{const t=this.supportedShortcuts();(e.ctrlKey||e.metaKey)&&e.key in t&&(e.preventDefault(),t[e.key]())}}connectedCallback(){super.connectedCallback(),window.addEventListener("keydown",this._keydownEvent)}disconnectedCallback(){window.removeEventListener("keydown",this._keydownEvent),super.disconnectedCallback()}supportedShortcuts(){return{}}}));var E},8001:function(e,t,i){i.d(t,{o:function(){return a}});const a=async()=>{await i.e("1026").then(i.bind(i,35714))}},85019:function(e,t,i){i.d(t,{X1:function(){return a},u4:function(){return o},zC:function(){return n}});const a=e=>`https://brands.home-assistant.io/${e.brand?"brands/":""}${e.useFallback?"_/":""}${e.domain}/${e.darkOptimized?"dark_":""}${e.type}.png`,o=e=>e.split("/")[4],n=e=>e.startsWith("https://brands.home-assistant.io/")},1630:function(e,t,i){i.a(e,(async function(e,a){try{i.r(t),i.d(t,{HacsDashboard:function(){return F}});var o=i(44249),n=(i(39527),i(99790),i(13334),i(36993),i(31622),i(2060),i(87319),i(57243)),l=i(50778),s=i(27486),r=i(52258),d=i(90842),c=i(13089),h=i(64364),u=(i(25061),i(43527),i(12974),i(42877),i(61158),i(5848),i(88002),i(10508),i(66193)),p=i(85019),m=i(23660),f=i(82290),v=i(55780),b=i(32622),g=i(42104),y=i(51597),k=i(32820),_=i(9270),x=i(4557),w=e([r]);r=(w.then?(await w)():w)[0];const C="M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z",$="M12,16A2,2 0 0,1 14,18A2,2 0 0,1 12,20A2,2 0 0,1 10,18A2,2 0 0,1 12,16M12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12A2,2 0 0,1 12,10M12,4A2,2 0 0,1 14,6A2,2 0 0,1 12,8A2,2 0 0,1 10,6A2,2 0 0,1 12,4Z",L="M13,9H18.5L13,3.5V9M6,2H14L20,8V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V4C4,2.89 4.89,2 6,2M15,18V16H6V18H15M18,14V12H6V14H18Z",M="M2.6,10.59L8.38,4.8L10.07,6.5C9.83,7.35 10.22,8.28 11,8.73V14.27C10.4,14.61 10,15.26 10,16A2,2 0 0,0 12,18A2,2 0 0,0 14,16C14,15.26 13.6,14.61 13,14.27V9.41L15.07,11.5C15,11.65 15,11.82 15,12A2,2 0 0,0 17,14A2,2 0 0,0 19,12A2,2 0 0,0 17,10C16.82,10 16.65,10 16.5,10.07L13.93,7.5C14.19,6.57 13.71,5.55 12.78,5.16C12.35,5 11.9,4.96 11.5,5.07L9.8,3.38L10.59,2.6C11.37,1.81 12.63,1.81 13.41,2.6L21.4,10.59C22.19,11.37 22.19,12.63 21.4,13.41L13.41,21.4C12.63,22.19 11.37,22.19 10.59,21.4L2.6,13.41C1.81,12.63 1.81,11.37 2.6,10.59Z",A="M12,2A10,10 0 0,0 2,12C2,16.42 4.87,20.17 8.84,21.5C9.34,21.58 9.5,21.27 9.5,21C9.5,20.77 9.5,20.14 9.5,19.31C6.73,19.91 6.14,17.97 6.14,17.97C5.68,16.81 5.03,16.5 5.03,16.5C4.12,15.88 5.1,15.9 5.1,15.9C6.1,15.97 6.63,16.93 6.63,16.93C7.5,18.45 8.97,18 9.54,17.76C9.63,17.11 9.89,16.67 10.17,16.42C7.95,16.17 5.62,15.31 5.62,11.5C5.62,10.39 6,9.5 6.65,8.79C6.55,8.54 6.2,7.5 6.75,6.15C6.75,6.15 7.59,5.88 9.5,7.17C10.29,6.95 11.15,6.84 12,6.84C12.85,6.84 13.71,6.95 14.5,7.17C16.41,5.88 17.25,6.15 17.25,6.15C17.8,7.5 17.45,8.54 17.35,8.79C18,9.5 18.38,10.39 18.38,11.5C18.38,15.32 16.04,16.16 13.81,16.41C14.17,16.72 14.5,17.33 14.5,18.26C14.5,19.6 14.5,20.68 14.5,21C14.5,21.27 14.66,21.59 15.17,21.5C19.14,20.16 22,16.42 22,12A10,10 0 0,0 12,2Z",H="M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z",V="M20,4C21.11,4 22,4.89 22,6V18C22,19.11 21.11,20 20,20H4C2.89,20 2,19.11 2,18V6C2,4.89 2.89,4 4,4H20M8.5,15V9H7.25V12.5L4.75,9H3.5V15H4.75V11.5L7.3,15H8.5M13.5,10.26V9H9.5V15H13.5V13.75H11V12.64H13.5V11.38H11V10.26H13.5M20.5,14V9H19.25V13.5H18.13V10H16.88V13.5H15.75V9H14.5V14A1,1 0 0,0 15.5,15H19.5A1,1 0 0,0 20.5,14Z",S={title:"",filterable:!0,hidden:!0},B=["pending-restart","pending-upgrade","installed","new","default"],z=[{name:b.Z,path:""}];let F=(0,o.Z)([(0,l.Mo)("hacs-dashboard")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hacs",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,l.Cb)({attribute:!1})],key:"route",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0})],key:"narrow",value:void 0},{kind:"field",decorators:[(0,l.Cb)({type:Boolean})],key:"isWide",value:void 0},{kind:"field",decorators:[(0,d.t)({key:"hacs-dashboard-table-filtering",state:!0,subscribe:!1})],key:"_activeFilters",value:()=>[]},{kind:"field",decorators:[(0,d.t)({key:"hacs-dashboard-table-sorting",state:!1,subscribe:!1})],key:"_activeSorting",value:void 0},{kind:"field",decorators:[(0,d.t)({key:"hacs-dashboard-table-grouping",state:!0,subscribe:!1})],key:"_activeGrouping",value:void 0},{kind:"field",decorators:[(0,d.t)({key:"hacs-dashboard-table-collapsed",state:!1,subscribe:!1})],key:"_activeCollapsed",value:void 0},{kind:"field",decorators:[(0,d.t)({key:"hacs-dashboard-active-search",state:!0,subscribe:!1})],key:"_activeSearch",value:void 0},{kind:"field",decorators:[(0,d.t)({key:"hacs-dashboard-table-hidden-columns",state:!0,subscribe:!1})],key:"_hiddenTableColumns",value:void 0},{kind:"field",decorators:[(0,d.t)({key:"hacs-dashboard-table-columns-ordering",state:!0,subscribe:!1})],key:"_orderTableColumns",value:void 0},{kind:"field",decorators:[(0,l.IO)("#overflow-menu")],key:"_overflowMenu",value:void 0},{kind:"field",decorators:[(0,l.IO)("#repository-overflow-menu")],key:"_repositoryOverflowMenu",value:void 0},{kind:"field",decorators:[(0,l.SB)()],key:"_overflowMenuRepository",value:void 0},{kind:"field",key:"render",value(){return()=>{const e=this._filterRepositories(this.hacs.repositories,this.hacs.localize,this._activeFilters),t=e.some((e=>e.new));return n.dy`<hass-tabs-subpage-data-table .tabs="${z}" .columns="${this._columns(this.hacs.localize,this.narrow)}" .data="${e}" .hass="${this.hass}" ?iswide="${this.isWide}" .localizeFunc="${this.hacs.localize}" main-page .narrow="${this.narrow}" .route="${this.route}" clickable .filter="${this._activeSearch||""}" has-filters hasFab .filters="${this._activeFilters?.length}" .noDataText="${this.hacs.localize("dashboard.no_data")}" .initialGroupColumn="${this._activeGrouping||"translated_status"}" .initialCollapsedGroups="${this._activeCollapsed||[]}" .groupOrder="${this._groupOrder(this.hacs.localize,this._activeGrouping)}" .initialSorting="${this._activeSorting}" .columnOrder="${this._orderTableColumns}" .hiddenColumns="${this._hiddenTableColumns}" @columns-changed="${this._handleColumnsChanged}" @row-click="${this._handleRowClicked}" @clear-filter="${this._handleClearFilter}" @value-changed="${this._handleSearchFilterChanged}" @sorting-changed="${this._handleSortingChanged}" @grouping-changed="${this._handleGroupingChanged}" @collapsed-changed="${this._handleCollapseChanged}"> <ha-icon-button slot="toolbar-icon" .label="${this.hass.localize("ui.common.overflow_menu")||"overflow_menu"}" .path="${$}" @click="${this._showOverflowMenu}"></ha-icon-button> <ha-form slot="filter-pane" class="filters" .hass="${this.hass}" .data="${{status:this._activeFilters?.find((e=>e.startsWith("status_")))||"",type:this._activeFilters?.find((e=>e.startsWith("type_")))||""}}" .schema="${this._filterSchema(this.hacs.localize,this.hacs.info.categories)}" .computeLabel="${this._computeFilterFormLabel}" @value-changed="${this._handleFilterChanged}"></ha-form> </hass-tabs-subpage-data-table> <ha-menu id="repository-overflow-menu" positioning="fixed"> ${this._overflowMenuRepository?(0,f.G)(this,this._overflowMenuRepository,this.hacs.localize).map((e=>e.divider?n.dy`<li divider role="separator"></li>`:n.dy` <ha-md-menu-item class="${e.error?"error":e.warning?"warning":""}" .clickAction="${()=>{e?.action&&e.action()}}"> <ha-svg-icon .path="${e.path}" slot="start"></ha-svg-icon> <div slot="headline">${e.label}</div> </ha-md-menu-item> `)):n.Ld} </ha-menu> <ha-menu id="overflow-menu" positioning="fixed"> <ha-md-menu-item .clickAction="${()=>{c.E.open((0,k.R)({}),"_blank","noreferrer=true")}}"> <ha-svg-icon .path="${L}" slot="start"></ha-svg-icon> <div slot="headline">${this.hacs.localize("menu.documentation")}</div> </ha-md-menu-item> <ha-md-menu-item .clickAction="${()=>{c.E.open("https://github.com/hacs","_blank","noreferrer=true")}}"> <ha-svg-icon .path="${A}" slot="start"></ha-svg-icon> <div slot="headline">GitHub</div> </ha-md-menu-item> <ha-md-menu-item .clickAction="${()=>{c.E.open((0,k.R)({path:"/docs/help/issues"}),"_blank","noreferrer=true")}}"> <ha-svg-icon .path="${C}" slot="start"></ha-svg-icon> <div slot="headline">${this.hacs.localize("menu.open_issue")}</div> </ha-md-menu-item> <ha-md-menu-item .clickAction="${()=>{this.hacs.info.disabled_reason?(0,x.Ys)(this,{title:"HACS is disabled",text:this.hacs.info.disabled_reason}):(0,m.U8)(this,{hacs:this.hacs})}}"> <ha-svg-icon .path="${M}" slot="start"></ha-svg-icon> <div slot="headline">${this.hacs.localize("menu.custom_repositories")}</div> </ha-md-menu-item> ${t?n.dy`<ha-md-menu-item .clickAction="${()=>{(0,g.VP)(this.hass,this.hacs)}}"> <ha-svg-icon .path="${V}" slot="start"></ha-svg-icon> <div slot="headline">${this.hacs.localize("menu.dismiss")}</div> </ha-md-menu-item>`:n.Ld} <ha-md-menu-item .clickAction="${()=>{(0,m.lU)(this,{hacs:this.hacs,title:b.Z,description:n.dy`<ha-markdown .content="${(0,v.e)(this.hacs)}"></ha-markdown>`})}}"> <ha-svg-icon .path="${H}" slot="start"></ha-svg-icon> <div slot="headline">${this.hacs.localize("menu.about")}</div> </ha-md-menu-item> </ha-menu>`}}},{kind:"field",key:"_filterRepositories",value:()=>(0,s.Z)(((e,t,i)=>e.filter((e=>!(i?.filter((e=>e.startsWith("status_"))).length&&!i.includes(`status_${e.status}`))&&!(i?.filter((e=>e.startsWith("type_"))).length&&!i.includes(`type_${e.category}`)))).sort(((e,t)=>e.installed!==t.installed?e.installed?-1:1:e.new!==t.new?e.new?-1:1:e.stars!==t.stars?e.stars>t.stars?-1:1:e.name.localeCompare(t.name))).map((e=>({...e,translated_status:t(`repository_status.${e.status}`)||e.status,translated_category:t(`common.type.${e.category}`)})))))},{kind:"field",key:"_columns",value(){return(0,s.Z)(((e,t)=>({icon:{title:"",label:e("column.icon"),type:"icon",hidden:!1,moveable:!1,showNarrow:!0,template:e=>"integration"===e.category?n.dy` <img style="height:32px;width:32px" slot="item-icon" src="${(0,p.X1)({domain:e.domain||"invalid",type:"icon",useFallback:!0,darkOptimized:this.hass.themes?.darkMode})}" referrerpolicy="no-referrer"> `:n.dy` <ha-svg-icon style="height:32px;width:32px;fill:var(--secondary-text-color)" slot="item-icon" .path="${(0,_.R)(e.category)}"></ha-svg-icon> `},name:{...S,title:e("column.name"),main:!0,hidden:!1,sortable:!0,flex:3,extraTemplate:e=>t?n.Ld:n.dy`<div class="secondary">${e.description}</div>`},downloads:{...S,title:e("column.downloads"),sortable:!0,hidden:!1,template:e=>n.dy`${e.downloads||"-"}`},stars:{...S,title:e("column.stars"),sortable:!0,hidden:!1},last_updated:{...S,title:e("column.last_updated"),sortable:!0,hidden:!1,template:e=>{if(!e.last_updated)return"-";try{return(0,r.G)(new Date(e.last_updated),this.hass.locale)}catch(e){return"-"}}},installed_version:{...S,title:e("column.installed_version"),sortable:!0,defaultHidden:!0,hidden:!1,template:e=>e.installed?e.installed_version:"-"},available_version:{...S,title:e("column.available_version"),sortable:!0,defaultHidden:!0,hidden:!1,template:e=>e.installed?e.available_version:"-"},translated_status:{...S,title:e("column.status"),sortable:!0,groupable:!0,hidden:!1,defaultHidden:!0},translated_category:{...S,title:e("column.type"),sortable:!0,groupable:!0,hidden:!1},description:S,authors:S,domain:S,full_name:S,id:S,topics:S,actions:{title:"",label:e("column.actions"),moveable:!1,hideable:!1,showNarrow:!0,type:"overflow-menu",template:e=>n.dy` <ha-icon-button .repository="${e}" .label="${this.hass.localize("ui.common.overflow_menu")||"overflow_menu"}" .path="${$}" @click="${this._showOverflowRepositoryMenu}"></ha-icon-button> `}})))}},{kind:"field",key:"_showOverflowRepositoryMenu",value(){return e=>{this._repositoryOverflowMenu.open&&e.target===this._repositoryOverflowMenu.anchorElement?this._repositoryOverflowMenu.close():(this._repositoryOverflowMenu.anchorElement=e.target,this._overflowMenuRepository=e.target.repository,this._repositoryOverflowMenu.show())}}},{kind:"field",key:"_showOverflowMenu",value(){return e=>{this._overflowMenu.open?this._overflowMenu.close():(this._overflowMenu.anchorElement=e.target,this._overflowMenu.show())}}},{kind:"field",key:"_groupOrder",value:()=>(0,s.Z)(((e,t)=>"translated_status"===t?B.map((t=>e(`repository_status.${t}`))):void 0))},{kind:"field",key:"_filterSchema",value:()=>(0,s.Z)(((e,t)=>[{name:"filters",type:"constant",value:""},{name:"status",selector:{select:{options:B.map((t=>({value:`status_${t}`,label:e(`repository_status.${t}`)}))),mode:"dropdown",sort:!1}}},{name:"type",selector:{select:{options:t.map((t=>({label:e(`common.type.${t}`),value:`type_${t}`}))),mode:"dropdown",sort:!0}}}]))},{kind:"get",key:"_scrollerTarget",value:function(){return this.shadowRoot?.querySelector("hass-tabs-subpage-data-table")?.shadowRoot?.querySelector("hass-tabs-subpage")?.shadowRoot?.querySelector(".content")?.querySelectorAll("SLOT")[0]?.assignedNodes()?.find((e=>"HA-DATA-TABLE"===e.nodeName))?.shadowRoot?.querySelector(".scroller")}},{kind:"field",key:"_computeFilterFormLabel",value(){return(e,t)=>this.hacs.localize(`dialog_overview.${e.name}`)||this.hacs.localize(`dialog_overview.sections.${e.name}`)||e.name}},{kind:"method",key:"_handleRowClicked",value:function(e){(0,h.c)(`/hacs/repository/${e.detail.id}`)}},{kind:"method",key:"_handleFilterChanged",value:function(e){e.stopPropagation();const t=e.detail.value,i=Object.entries(t).filter((([e,t])=>["status","type"].includes(e)&&![void 0,null,""].includes(t))).map((([e,t])=>t));this._activeFilters=i.length?i:void 0}},{kind:"method",key:"_handleSearchFilterChanged",value:function(e){this._activeSearch=e.detail.value}},{kind:"method",key:"_handleGroupingChanged",value:function(e){this._activeGrouping=e.detail.value}},{kind:"method",key:"_handleCollapseChanged",value:function(e){this._activeCollapsed=e.detail.value}},{kind:"method",key:"_handleSortingChanged",value:function(e){this._activeSorting=e.detail}},{kind:"method",key:"_handleColumnsChanged",value:function(e){this._orderTableColumns=e.detail.columnOrder,this._hiddenTableColumns=e.detail.hiddenColumns}},{kind:"method",key:"_handleClearFilter",value:function(){this._activeFilters=void 0}},{kind:"get",static:!0,key:"styles",value:function(){return[u.Qx,y.w]}}]}}),n.oi);a()}catch(e){a(e)}}))},55780:function(e,t,i){i.d(t,{e:()=>o});i("39527"),i("99790");var a=i("32820");const o=e=>`\n**${e.localize("dialog_about.integration_version")}:** | ${e.info.version}\n:--|--\n**${e.localize("dialog_about.frontend_version")}:** | 20250128065759\n**${e.localize("common.repositories")}:** | ${e.repositories.length}\n**${e.localize("dialog_about.downloaded_repositories")}:** | ${e.repositories.filter((e=>e.installed)).length}\n\n**${e.localize("dialog_about.useful_links")}:**\n\n- [General documentation](${(0,a.R)({})})\n- [Configuration](${(0,a.R)({path:"/docs/use/configuration/basic"})})\n- [FAQ](${(0,a.R)({path:"/docs/faq"})})\n- [GitHub](https://github.com/hacs)\n- [Discord](https://discord.gg/apgchf8)\n- [Become a GitHub sponsor? ❤️](https://github.com/sponsors/ludeeus)\n- [BuyMe~~Coffee~~Beer? 🍺🙈](https://buymeacoffee.com/ludeeus)\n\n***\n\n_Everything you find in HACS is **not** tested by Home Assistant, that includes HACS itself.\nThe HACS and Home Assistant teams do not support **anything** you find here._`},32622:function(e,t,i){i.d(t,{Z:function(){return a}});const a="Home Assistant Community Store"},16485:function(e,t,i){i.a(e,(async function(e,t){try{i(92745);var a=i(61449),o=i(40574),n=i(30532),l=i(41674),s=i(49722),r=i(76632),d=i(7884),c=i(35185),h=i(60933),u=i(85128),p=i(49447);const e=async()=>{const e=(0,u.sS)(),t=[];(0,n.shouldPolyfill)()&&await Promise.all([i.e("210"),i.e("4055")]).then(i.bind(i,98133)),(0,s.shouldPolyfill)()&&await Promise.all([i.e("3895"),i.e("8532"),i.e("210"),i.e("251")]).then(i.bind(i,59095)),(0,a.shouldPolyfill)(e)&&t.push(Promise.all([i.e("3895"),i.e("8532"),i.e("8250")]).then(i.bind(i,80561)).then((()=>(0,p.H)()))),(0,h.shouldPolyfill)()&&t.push(Promise.all([i.e("3895"),i.e("8532"),i.e("5578")]).then(i.bind(i,97995))),(0,o.shouldPolyfill)(e)&&t.push(Promise.all([i.e("3895"),i.e("8532"),i.e("9826")]).then(i.bind(i,31514))),(0,l.shouldPolyfill)(e)&&t.push(Promise.all([i.e("3895"),i.e("8532"),i.e("3649")]).then(i.bind(i,93840))),(0,r.shouldPolyfill)(e)&&t.push(Promise.all([i.e("3895"),i.e("8532"),i.e("2831")]).then(i.bind(i,29559))),(0,d.shouldPolyfill)(e)&&t.push(Promise.all([i.e("3895"),i.e("8532"),i.e("7377")]).then(i.bind(i,63848)).then((()=>i.e("1236").then(i.t.bind(i,4121,23))))),(0,c.shouldPolyfill)(e)&&t.push(Promise.all([i.e("3895"),i.e("8532"),i.e("3870")]).then(i.bind(i,74546))),0!==t.length&&await Promise.all(t).then((()=>(0,p.n)(e)))};await e(),t()}catch(e){t(e)}}),1)},49447:function(e,t,i){i.d(t,{H:function(){return s},n:function(){return l}});i(92519),i(42179),i(89256),i(24931),i(88463),i(57449),i(19814);const a=["DateTimeFormat","DisplayNames","ListFormat","NumberFormat","RelativeTimeFormat"],o=new Set,n=async(e,t,i="__addLocaleData")=>{if("function"==typeof Intl[e]?.[i]){const a=await fetch(`/hacsfiles/frontend/static/locale-data/intl-${e.toLowerCase()}/${t}.json`);a.ok&&Intl[e][i](await a.json())}},l=async e=>{o.has(e)||(o.add(e),await Promise.all(a.map((t=>n(t,e)))))},s=()=>n("DateTimeFormat","add-all-tz","__addTZData")},32820:function(e,t,i){i.d(t,{R:function(){return a}});const a=e=>`https://www.hacs.xyz${e?.path||""}`},9270:function(e,t,i){i.d(t,{R:function(){return o}});const a={appdaemon:"M12,2A2,2 0 0,1 14,4C14,4.74 13.6,5.39 13,5.73V7H14A7,7 0 0,1 21,14H22A1,1 0 0,1 23,15V18A1,1 0 0,1 22,19H21V20A2,2 0 0,1 19,22H5A2,2 0 0,1 3,20V19H2A1,1 0 0,1 1,18V15A1,1 0 0,1 2,14H3A7,7 0 0,1 10,7H11V5.73C10.4,5.39 10,4.74 10,4A2,2 0 0,1 12,2M7.5,13A2.5,2.5 0 0,0 5,15.5A2.5,2.5 0 0,0 7.5,18A2.5,2.5 0 0,0 10,15.5A2.5,2.5 0 0,0 7.5,13M16.5,13A2.5,2.5 0 0,0 14,15.5A2.5,2.5 0 0,0 16.5,18A2.5,2.5 0 0,0 19,15.5A2.5,2.5 0 0,0 16.5,13Z",integration:"M2,10.96C1.5,10.68 1.35,10.07 1.63,9.59L3.13,7C3.24,6.8 3.41,6.66 3.6,6.58L11.43,2.18C11.59,2.06 11.79,2 12,2C12.21,2 12.41,2.06 12.57,2.18L20.47,6.62C20.66,6.72 20.82,6.88 20.91,7.08L22.36,9.6C22.64,10.08 22.47,10.69 22,10.96L21,11.54V16.5C21,16.88 20.79,17.21 20.47,17.38L12.57,21.82C12.41,21.94 12.21,22 12,22C11.79,22 11.59,21.94 11.43,21.82L3.53,17.38C3.21,17.21 3,16.88 3,16.5V10.96C2.7,11.13 2.32,11.14 2,10.96M12,4.15V4.15L12,10.85V10.85L17.96,7.5L12,4.15M5,15.91L11,19.29V12.58L5,9.21V15.91M19,15.91V12.69L14,15.59C13.67,15.77 13.3,15.76 13,15.6V19.29L19,15.91M13.85,13.36L20.13,9.73L19.55,8.72L13.27,12.35L13.85,13.36Z",netdaemon:"M2,15A1,1 0 0,1 3,16A1,1 0 0,1 2,17A1,1 0 0,1 1,16A1,1 0 0,1 2,15M21,17H19V9H17V7H23V9H21V17M16,7V9H14V11H16V13H14V15H16V17H12V7H16M11,7V17H9L6,11V17H4V7H6L9,13V7H11Z",plugin:"M13,3V9H21V3M13,21H21V11H13M3,21H11V15H3M3,13H11V3H3V13Z",python_script:"M19.14,7.5A2.86,2.86 0 0,1 22,10.36V14.14A2.86,2.86 0 0,1 19.14,17H12C12,17.39 12.32,17.96 12.71,17.96H17V19.64A2.86,2.86 0 0,1 14.14,22.5H9.86A2.86,2.86 0 0,1 7,19.64V15.89C7,14.31 8.28,13.04 9.86,13.04H15.11C16.69,13.04 17.96,11.76 17.96,10.18V7.5H19.14M14.86,19.29C14.46,19.29 14.14,19.59 14.14,20.18C14.14,20.77 14.46,20.89 14.86,20.89A0.71,0.71 0 0,0 15.57,20.18C15.57,19.59 15.25,19.29 14.86,19.29M4.86,17.5C3.28,17.5 2,16.22 2,14.64V10.86C2,9.28 3.28,8 4.86,8H12C12,7.61 11.68,7.04 11.29,7.04H7V5.36C7,3.78 8.28,2.5 9.86,2.5H14.14C15.72,2.5 17,3.78 17,5.36V9.11C17,10.69 15.72,11.96 14.14,11.96H8.89C7.31,11.96 6.04,13.24 6.04,14.82V17.5H4.86M9.14,5.71C9.54,5.71 9.86,5.41 9.86,4.82C9.86,4.23 9.54,4.11 9.14,4.11C8.75,4.11 8.43,4.23 8.43,4.82C8.43,5.41 8.75,5.71 9.14,5.71Z",template:"M8,3A2,2 0 0,0 6,5V9A2,2 0 0,1 4,11H3V13H4A2,2 0 0,1 6,15V19A2,2 0 0,0 8,21H10V19H8V14A2,2 0 0,0 6,12A2,2 0 0,0 8,10V5H10V3M16,3A2,2 0 0,1 18,5V9A2,2 0 0,0 20,11H21V13H20A2,2 0 0,0 18,15V19A2,2 0 0,1 16,21H14V19H16V14A2,2 0 0,1 18,12A2,2 0 0,1 16,10V5H14V3H16Z",theme:"M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z"},o=e=>a[e]}};
|
|
//# sourceMappingURL=9452.612b016de13c47d8.js.map
|