UNPKG

iobroker.lovelace

Version:

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

78 lines 36.4 kB
export const __rspack_esm_id=79479;export const __rspack_esm_ids=[79479];export const __webpack_modules__={26218(t,e,a){a.d(e,{a:()=>i});const o=(0,a(77796).n)(t=>{history.replaceState({scrollPosition:t},"")},300);function i(t){return(e,a)=>{if("object"==typeof a)throw new Error("This decorator does not support this compilation type.");const i=e.connectedCallback;e.connectedCallback=function(){i.call(this);const e=this[a];e&&this.updateComplete.then(()=>{const a=this.renderRoot.querySelector(t);a&&setTimeout(()=>{a.scrollTop=e},0)})};const r=Object.getOwnPropertyDescriptor(e,a);let n;if(void 0===r)n={get(){return this[`__${String(a)}`]||history.state?.scrollPosition},set(t){o(t),this[`__${String(a)}`]=t},configurable:!0,enumerable:!0};else{const t=r.set;n={...r,set(e){o(e),this[`__${String(a)}`]=e,t?.call(this,e)}}}Object.defineProperty(e,a,n)}}},93905(t,e,a){a.d(e,{I:()=>r});a(44114),a(18111),a(7588),a(69112),a(33110);class o{addFromStorage(t){if(!this._storage[t]){const e=this.storage.getItem(t);e&&(this._storage[t]=JSON.parse(e))}}subscribeChanges(t,e){return this._listeners[t]?this._listeners[t].push(e):this._listeners[t]=[e],()=>{this.unsubscribeChanges(t,e)}}unsubscribeChanges(t,e){if(!(t in this._listeners))return;const a=this._listeners[t].indexOf(e);-1!==a&&this._listeners[t].splice(a,1)}hasKey(t){return t in this._storage}getValue(t){return this._storage[t]}setValue(t,e){const a=this._storage[t];this._storage[t]=e;try{void 0===e?this.storage.removeItem(t):this.storage.setItem(t,JSON.stringify(e))}catch(t){}finally{this._listeners[t]&&this._listeners[t].forEach(t=>t(a,e))}}constructor(t=window.localStorage){this._storage={},this._listeners={},this.storage=t,this.storage===window.localStorage&&window.addEventListener("storage",t=>{t.key&&this.hasKey(t.key)&&(this._storage[t.key]=t.newValue?JSON.parse(t.newValue):t.newValue,this._listeners[t.key]&&this._listeners[t.key].forEach(e=>e(t.oldValue?JSON.parse(t.oldValue):t.oldValue,this._storage[t.key])))})}}const i={};function r(t){return(e,a)=>{if("object"==typeof a)throw new Error("This decorator does not support this compilation type.");const r=t.storage||"localStorage";let n;r&&r in i?n=i[r]:(n=new o(window[r]),i[r]=n);const s=t.key||String(a);n.addFromStorage(s);const l=!1!==t.subscribe?t=>n.subscribeChanges(s,(e,o)=>{t.requestUpdate(a,e)}):void 0,c=()=>n.hasKey(s)?t.deserializer?t.deserializer(n.getValue(s)):n.getValue(s):void 0,h=(e,o)=>{let i;t.state&&(i=c()),n.setValue(s,t.serializer?t.serializer(o):o),t.state&&e.requestUpdate(a,i)},d=e.performUpdate;if(e.performUpdate=function(){this.__initialized=!0,d.call(this)},t.subscribe){const t=e.connectedCallback,a=e.disconnectedCallback;e.connectedCallback=function(){t.call(this);const e=this;e.__unbsubLocalStorage||(e.__unbsubLocalStorage=l?.(this))},e.disconnectedCallback=function(){a.call(this);this.__unbsubLocalStorage?.(),this.__unbsubLocalStorage=void 0}}const p=Object.getOwnPropertyDescriptor(e,a);let g;if(void 0===p)g={get:()=>c(),set(t){(this.__initialized||void 0===c())&&h(this,t)},configurable:!0,enumerable:!0};else{const t=p.set;g={...p,get:()=>c(),set(e){(this.__initialized||void 0===c())&&h(this,e),t?.call(this,e)}}}Object.defineProperty(e,a,g)}}},68348(t,e,a){a.d(e,{u:()=>o});a(18111),a(13579);const o=t=>{if(t.some(t=>"tagName"in t&&("HA-MENU"===t.tagName||"HA-CODE-EDITOR"===t.tagName)))return!1;const e=t[0];if("TEXTAREA"===e.tagName||"HA-SELECT"===e.parentElement?.tagName||"HA-DROPDOWN"===e.parentElement?.tagName)return!1;if("INPUT"!==e.tagName)return!0;switch(e.type){case"button":case"checkbox":case"hidden":case"radio":case"range":return!0;default:return!1}}},77796(t,e,a){a.d(e,{n:()=>o});const o=(t,e,a=!0,o=!0)=>{let i,r=0;const n=(...n)=>{const s=()=>{r=!1===a?0:Date.now(),i=void 0,t(...n)},l=Date.now();r||!1!==a||(r=l);const c=e-(l-r);c<=0||c>e?(i&&(clearTimeout(i),i=void 0),r=l,t(...n)):i||!1===o||(i=window.setTimeout(s,c))};return n.cancel=()=>{clearTimeout(i),i=void 0,r=0},n}},34296(t,e,a){var o=a(62826),i=a(96229),r=a(26069),n=a(91735),s=a(42034),l=a(5124),c=a(22441);class h extends i.k{renderOutline(){return this.filled?l.qy`<span class="filled"></span>`:super.renderOutline()}getContainerClasses(){return{...super.getContainerClasses(),active:this.active}}renderPrimaryContent(){return l.qy` <span class="leading icon" aria-hidden="true"> ${this.renderLeadingIcon()} </span> <span class="label">${this.label}</span> <span class="touch"></span> <span class="trailing leading icon" aria-hidden="true"> ${this.renderTrailingIcon()} </span> `}renderTrailingIcon(){return l.qy`<slot name="trailing-icon"></slot>`}constructor(...t){super(...t),this.filled=!1,this.active=!1}}h.styles=[n.R,s.R,r.R,l.AH`:host{--md-sys-color-primary:var(--primary-text-color);--md-sys-color-on-surface:var(--primary-text-color);--md-assist-chip-container-shape:var( --ha-assist-chip-container-shape, 16px );--md-assist-chip-outline-color:var(--outline-color);--md-assist-chip-label-text-weight:400}.filled{display:flex;pointer-events:none;border-radius:inherit;inset:0;position:absolute;background-color:var(--ha-assist-chip-filled-container-color)}::slotted([slot=icon]),::slotted([slot=trailing-icon]){display:flex;--mdc-icon-size:var(--md-input-chip-icon-size, 18px);font-size:var(--_label-text-size)!important}.trailing.icon ::slotted(*),.trailing.icon svg{margin-inline-end:unset;margin-inline-start:var(--_icon-label-space)}::before{background:var(--ha-assist-chip-container-color,transparent);opacity:var(--ha-assist-chip-container-opacity, 1)}:where(.active)::before{background:var(--ha-assist-chip-active-container-color);opacity:var(--ha-assist-chip-active-container-opacity)}.label{font-family:var(--ha-font-family-body)}`],(0,o.Cg)([(0,c.MZ)({type:Boolean,reflect:!0})],h.prototype,"filled",void 0),(0,o.Cg)([(0,c.MZ)({type:Boolean})],h.prototype,"active",void 0),h=(0,o.Cg)([(0,c.EM)("ha-assist-chip")],h)},9503(t,e,a){var o=a(62826),i=a(97577),r=a(5124),n=a(22441);class s extends i.A{get value(){return this._value??null}set value(t){this._value=t}static get styles(){return[i.A.styles,r.AH`:host{--wa-form-control-toggle-size:var(--ha-checkbox-size, 20px);--wa-form-control-border-color:var( --ha-checkbox-border-color, var(--ha-color-border-neutral-normal) );--wa-form-control-background-color:var( --ha-checkbox-background-color, var(--wa-form-control-background-color) );--checked-icon-color:var( --ha-checkbox-checked-icon-color, var(--wa-color-brand-on-loud) );--wa-form-control-activated-color:var( --ha-checkbox-checked-background-color, var(--ha-color-fill-primary-loud-resting) );-webkit-tap-highlight-color:transparent;--checked-icon-scale:var(--ha-checkbox-checked-icon-scale, 0.9);--wa-form-control-required-content:var( --ha-checkbox-required-marker, var(--ha-input-required-marker, "*") );--wa-form-control-required-content-offset:var( --ha-checkbox-required-marker-offset, 0.1rem )}[part~=base]{align-items:center;gap:var(--ha-space-2)}[part~=control]{border-radius:var(--ha-checkbox-border-radius,var(--ha-border-radius-sm));border-width:var(--ha-checkbox-border-width,var(--ha-border-width-md));margin-inline-end:0}[part~=label]{line-height:1}#hint{font-size:var(--ha-font-size-xs);color:var(--ha-color-text-secondary)}label:has(input:not(:disabled)):hover{--wa-form-control-border-color:var( --ha-checkbox-border-color-hover, var(--ha-checkbox-border-color, var(--ha-color-border-neutral-loud)) )}label:has(input:not(:disabled)):hover [part~=control]{background-color:var(--ha-checkbox-background-color-hover,var(--ha-color-form-background-hover))}label:has(input:checked:not(:disabled)):hover [part~=control],label:has(input:indeterminate:not(:disabled)):hover [part~=control]{background-color:var(--ha-checkbox-checked-background-color-hover,var(--ha-color-fill-primary-loud-hover));border-color:var(--ha-checkbox-checked-background-color-hover,var(--ha-color-fill-primary-loud-hover))}`]}}s=(0,o.Cg)([(0,n.EM)("ha-checkbox")],s)},70947(t,e,a){var o=a(62826),i=a(50759),r=(a(38625),a(5124)),n=a(22441);a(67094);class s extends i.A{renderCheckboxIcon(){return r.qy` <ha-svg-icon id="check" part="checkmark" .path="${this.checked?"M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z":"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3M19,5V19H5V5H19Z"}"></ha-svg-icon> `}static get styles(){return[i.A.styles,r.AH`:host{min-height:var(--ha-space-10)}#check{visibility:visible;flex-shrink:0}#icon ::slotted(*){color:var(--ha-color-on-neutral-normal)}:host([variant=danger]) #icon ::slotted(*){color:var(--ha-color-on-danger-quiet)}:host([selected]){font-weight:var(--ha-font-weight-medium);color:var(--primary-color);background-color:var(--ha-color-fill-primary-quiet-resting);--icon-primary-color:var(--primary-color)}:host([selected]:hover){background-color:var(--ha-color-fill-primary-quiet-hover)}`]}constructor(...t){super(...t),this.selected=!1}}(0,o.Cg)([(0,n.MZ)({type:Boolean,reflect:!0})],s.prototype,"selected",void 0),s=(0,o.Cg)([(0,n.EM)("ha-dropdown-item")],s)},29823(t,e,a){a.a(t,async function(t,e){try{var o=a(62826),i=a(52254),r=a(5124),n=a(22441),s=t([i]);i=(s.then?(await s)():s)[0];class l extends i.A{get anchorElement(){return this.popup?.anchor}set anchorElement(t){this.popup&&(this.popup.anchor&&"ha-icon-button"===this.popup.anchor.localName&&(this.popup.anchor.selected=!1),this.popup.anchor=t)}getTrigger(){return this.anchorElement?this.anchorElement:super.getTrigger()}async showMenu(){await super.showMenu();const t=this.getTrigger();t&&"ha-icon-button"===t.localName&&(t.selected=!0)}async hideMenu(){const t=this.getTrigger();t&&"ha-icon-button"===t.localName&&(t.selected=!1),await super.hideMenu()}static get styles(){return[i.A.styles,r.AH`:host{font-size:var(--ha-dropdown-font-size, var(--ha-font-size-m));--wa-color-surface-raised:var( --card-background-color, var(--ha-dialog-surface-background, var(--mdc-theme-surface, #fff)), )}#menu{padding:var(--ha-space-1)}wa-popup::part(popup){z-index:200}`]}constructor(...t){super(...t),this.dropdownTag="ha-dropdown",this.dropdownItemTag="ha-dropdown-item"}}(0,o.Cg)([(0,n.MZ)({attribute:!1})],l.prototype,"dropdownTag",void 0),(0,o.Cg)([(0,n.MZ)({attribute:!1})],l.prototype,"dropdownItemTag",void 0),l=(0,o.Cg)([(0,n.EM)("ha-dropdown")],l),e()}catch(t){e(t)}})},27571(t,e,a){a.a(t,async function(t,e){try{var o=a(62826),i=a(5124),r=a(22441),n=(a(67094),a(34127)),s=t([n]);n=(s.then?(await s)():s)[0];const l="M11,18H13V16H11V18M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,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,6A4,4 0 0,0 8,10H10A2,2 0 0,1 12,8A2,2 0 0,1 14,10C14,12 11,11.75 11,15H13C13,12.75 16,12.5 16,10A4,4 0 0,0 12,6Z";class c extends i.WF{render(){return i.qy` <ha-svg-icon id="svg-icon" .path="${l}"></ha-svg-icon> <ha-tooltip for="svg-icon" .placement="${this.position}"> ${this.label} </ha-tooltip> `}constructor(...t){super(...t),this.position="top"}}c.styles=i.AH`ha-svg-icon{--mdc-icon-size:var(--ha-help-tooltip-size, 14px);color:var(--ha-help-tooltip-color,var(--disabled-text-color))}`,(0,o.Cg)([(0,r.MZ)()],c.prototype,"label",void 0),(0,o.Cg)([(0,r.MZ)()],c.prototype,"position",void 0),c=(0,o.Cg)([(0,r.EM)("ha-help-tooltip")],c),e()}catch(t){e(t)}})},90248(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaIconButtonArrowPrev:()=>p});var i=a(62826),r=a(5124),n=a(22441),s=a(63091),l=a(26300),c=t([l]);l=(c.then?(await c)():c)[0];const h="M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z",d="M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z";class p extends r.WF{render(){return r.qy` <ha-icon-button .disabled="${this.disabled}" .label="${this.label||this.hass?.localize("ui.common.back")||"Back"}" .path="${this._icon}" .href="${this.href}" .target="${this.target}" .rel="${this.rel}" .download="${this.download}"></ha-icon-button> `}constructor(...t){super(...t),this.disabled=!1,this._icon="rtl"===s.G.document.dir?d:h}}(0,i.Cg)([(0,n.MZ)({attribute:!1})],p.prototype,"hass",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean})],p.prototype,"disabled",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"label",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"href",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"target",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"rel",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"download",void 0),(0,i.Cg)([(0,n.wk)()],p.prototype,"_icon",void 0),p=(0,i.Cg)([(0,n.EM)("ha-icon-button-arrow-prev")],p),o()}catch(t){o(t)}})},26300(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaIconButton:()=>h});var i=a(62826),r=a(5124),n=a(22441),s=a(63672),l=a(18350),c=(a(67094),t([l]));l=(c.then?(await c)():c)[0];class h extends r.WF{render(){return r.qy` <ha-button appearance="plain" variant="neutral" aria-label="${(0,s.J)(this.label)}" title="${(0,s.J)(this.hideTitle?void 0:this.label)}" aria-haspopup="${(0,s.J)(this.ariaHasPopup)}" .disabled="${this.disabled}" .iconTag="${this.path?"ha-svg-icon":"span"}" .href="${this.href}" .target="${this.target}" .rel="${this.rel}" .download="${this.download}"> ${this.path?r.qy`<ha-svg-icon aria-hidden="true" .path="${this.path}"></ha-svg-icon>`:r.qy`<span><slot></slot></span>`} </ha-button> `}constructor(...t){super(...t),this.disabled=!1,this.hideTitle=!1,this.selected=!1}}h.shadowRootOptions={mode:"open",delegatesFocus:!0},h.styles=r.AH`:host{display:inline-block;outline:0;--ha-button-height:var(--ha-icon-button-size, 48px)}ha-button{position:relative;isolation:isolate;--wa-form-control-padding-inline:var( --ha-icon-button-padding-inline, --ha-space-2 );--wa-color-on-normal:currentColor;--wa-color-fill-quiet:transparent;--ha-button-label-overflow:visible}ha-button::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:50%;background-color:currentColor;opacity:0;pointer-events:none}ha-button::part(base){width:var(--wa-form-control-height);aspect-ratio:1;outline-offset:-4px}ha-button::part(label){display:flex}:host([selected]) ha-button::after{opacity:.1}@media (hover:hover){:host(:hover:not([disabled])) ha-button::after{opacity:.1}}`,(0,i.Cg)([(0,n.MZ)({type:Boolean,reflect:!0})],h.prototype,"disabled",void 0),(0,i.Cg)([(0,n.MZ)({type:String})],h.prototype,"path",void 0),(0,i.Cg)([(0,n.MZ)({type:String})],h.prototype,"label",void 0),(0,i.Cg)([(0,n.MZ)({type:String,attribute:"aria-haspopup"})],h.prototype,"ariaHasPopup",void 0),(0,i.Cg)([(0,n.MZ)({attribute:"hide-title",type:Boolean})],h.prototype,"hideTitle",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean,reflect:!0})],h.prototype,"selected",void 0),(0,i.Cg)([(0,n.MZ)()],h.prototype,"href",void 0),(0,i.Cg)([(0,n.MZ)()],h.prototype,"target",void 0),(0,i.Cg)([(0,n.MZ)()],h.prototype,"rel",void 0),(0,i.Cg)([(0,n.MZ)()],h.prototype,"download",void 0),h=(0,i.Cg)([(0,n.EM)("ha-icon-button")],h),o()}catch(t){o(t)}})},75248(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaIconOverflowMenu:()=>v});a(18111),a(61701);var i=a(62826),r=(a(68825),a(5124)),n=a(22441),s=a(93421),l=a(57237),c=a(14503),h=a(29823),d=(a(70947),a(26300)),p=(a(67094),a(34127)),g=t([h,d,p]);[h,d,p]=g.then?(await g)():g;const u="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";class v extends r.WF{render(){return 0===this.items.length?r.s6:r.qy` ${this.narrow?r.qy` <ha-dropdown @wa-show="${this._handleIconOverflowMenuOpened}" @click="${l.d}"> <ha-icon-button .label="${this._localize("ui.common.overflow_menu")}" .path="${u}" slot="trigger"></ha-icon-button> ${this.items.map(t=>t.divider?r.qy`<wa-divider></wa-divider>`:r.qy`<ha-dropdown-item ?disabled="${t.disabled}" @click="${t.action}" variant="${t.warning?"danger":"default"}"> <ha-svg-icon slot="icon" .path="${t.path}"></ha-svg-icon> ${t.label} </ha-dropdown-item>`)} </ha-dropdown>`:r.qy` ${this.items.map(t=>t.narrowOnly?r.s6:t.divider?r.qy`<div role="separator"></div>`:r.qy`<ha-tooltip .disabled="${!t.tooltip}" .for="icon-button-${t.label}">${t.tooltip??""} </ha-tooltip><ha-icon-button .id="icon-button-${t.label}" @click="${t.action}" .label="${t.label}" .path="${t.path}" ?disabled="${t.disabled}"></ha-icon-button> `)} `} `}_handleIconOverflowMenuOpened(t){t.stopPropagation()}static get styles(){return[c.RF,r.AH`:host{display:flex;justify-content:flex-end;cursor:initial}div[role=separator]{border-right:1px solid var(--divider-color);width:1px}`]}constructor(...t){super(...t),this.items=[],this.narrow=!1}}(0,i.Cg)([(0,n.wk)(),(0,s.IW)()],v.prototype,"_localize",void 0),(0,i.Cg)([(0,n.MZ)({type:Array})],v.prototype,"items",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean})],v.prototype,"narrow",void 0),v=(0,i.Cg)([(0,n.EM)("ha-icon-overflow-menu")],v),o()}catch(t){o(t)}})},2054(t,e,a){a.a(t,async function(t,e){try{var o=a(62826),i=a(5124),r=a(22441),n=a(1087),s=a(44249),l=a(26300),c=t([l]);l=(c.then?(await c)():c)[0];const h="M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z";class d extends i.WF{connectedCallback(){super.connectedCallback(),this._attachNotifOnConnect&&(this._attachNotifOnConnect=!1,this._subscribeNotifications())}disconnectedCallback(){super.disconnectedCallback(),this._unsubNotifications&&(this._attachNotifOnConnect=!0,this._unsubNotifications(),this._unsubNotifications=void 0)}render(){if(!this._show)return i.s6;const t=this._hasNotifications&&(this.narrow||"always_hidden"===this.hass.dockedSidebar);return i.qy` <ha-icon-button .label="${this.hass.localize("ui.sidebar.sidebar_toggle")}" .path="${h}" @click="${this._toggleMenu}"></ha-icon-button> ${t?i.qy`<div class="dot"></div>`:""} `}willUpdate(t){if(super.willUpdate(t),!t.has("narrow")&&!t.has("hass"))return;const e=t.has("hass")?t.get("hass"):this.hass,a=t.has("narrow")?t.get("narrow"):this.narrow,o=!1===e?.kioskMode&&(a||"always_hidden"===e?.dockedSidebar),i=!1===this.hass.kioskMode&&(this.narrow||"always_hidden"===this.hass.dockedSidebar);this.hasUpdated&&o===i||(this._show=i||this._alwaysVisible,i?this._subscribeNotifications():this._unsubNotifications&&(this._unsubNotifications(),this._unsubNotifications=void 0))}_subscribeNotifications(){if(this._unsubNotifications)throw new Error("Already subscribed");this._unsubNotifications=(0,s.V)(this.hass.connection,t=>{this._hasNotifications=t.length>0})}_toggleMenu(){(0,n.r)(this,"hass-toggle-menu")}constructor(...t){super(...t),this.narrow=!1,this._hasNotifications=!1,this._show=!1,this._alwaysVisible=!1,this._attachNotifOnConnect=!1}}d.styles=i.AH`: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:var(--ha-border-radius-circle);border:2px solid var(--app-header-background-color)}`,(0,o.Cg)([(0,r.MZ)({type:Boolean})],d.prototype,"narrow",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],d.prototype,"hass",void 0),(0,o.Cg)([(0,r.wk)()],d.prototype,"_hasNotifications",void 0),(0,o.Cg)([(0,r.wk)()],d.prototype,"_show",void 0),d=(0,o.Cg)([(0,r.EM)("ha-menu-button")],d),e()}catch(t){e(t)}})},54276(t,e,a){var o=a(62826),i=a(76482),r=a(91382),n=a(96245),s=a(5124),l=a(22441);class c extends r.n{attach(t){super.attach(t),this.attachableTouchController.attach(t)}disconnectedCallback(){super.disconnectedCallback(),this.hovered=!1,this.pressed=!1}detach(){super.detach(),this.attachableTouchController.detach()}_onTouchControlChange(t,e){t?.removeEventListener("touchend",this._handleTouchEnd),e?.addEventListener("touchend",this._handleTouchEnd)}constructor(...t){super(...t),this.attachableTouchController=new i.i(this,this._onTouchControlChange.bind(this)),this._handleTouchEnd=()=>{this.disabled||super.endPressAnimation()}}}c.styles=[n.R,s.AH`: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)) )}`],c=(0,o.Cg)([(0,l.EM)("ha-ripple")],c)},67094(t,e,a){a.r(e),a.d(e,{HaSvgIcon:()=>n});var o=a(62826),i=a(5124),r=a(22441);class n extends i.WF{render(){return i.JW` <svg viewBox="${this.viewBox||"0 0 24 24"}" preserveAspectRatio="xMidYMid meet" focusable="false" role="img" aria-hidden="true"> <g> ${this.path?i.JW`<path class="primary-path" d="${this.path}"></path>`:i.s6} ${this.secondaryPath?i.JW`<path class="secondary-path" d="${this.secondaryPath}"></path>`:i.s6} </g> </svg>`}}n.styles=i.AH`: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)}`,(0,o.Cg)([(0,r.MZ)()],n.prototype,"path",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],n.prototype,"secondaryPath",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],n.prototype,"viewBox",void 0),n=(0,o.Cg)([(0,r.EM)("ha-svg-icon")],n)},34127(t,e,a){a.a(t,async function(t,e){try{var o=a(62826),i=a(52630),r=a(5124),n=a(22441),s=t([i]);i=(s.then?(await s)():s)[0];class l extends i.A{static get styles(){return[i.A.styles,r.AH`:host{--wa-tooltip-background-color:var( --ha-tooltip-background-color, var(--ha-color-surface-default) );--wa-tooltip-content-color:var( --ha-tooltip-text-color, var(--primary-text-color) );--wa-tooltip-font-family:var( --ha-tooltip-font-family, var(--ha-font-family-body) );--wa-tooltip-font-size:var( --ha-tooltip-font-size, var(--ha-font-size-m) );--wa-tooltip-font-weight:var( --ha-tooltip-font-weight, var(--ha-font-weight-medium) );--wa-tooltip-line-height:var( --ha-tooltip-line-height, var(--ha-line-height-condensed) );--wa-tooltip-padding:var(--ha-tooltip-padding, var(--ha-space-2));--wa-tooltip-border-radius:var( --ha-tooltip-border-radius, var(--ha-border-radius-md) );--wa-tooltip-arrow-size:var(--ha-tooltip-arrow-size, 0px);--wa-tooltip-border-width:0px;--wa-z-index-tooltip:1000}.tooltip::part(popup){animation-duration:var(--ha-tooltip-animation-duration, 0)}.body{box-shadow:var(--ha-tooltip-box-shadow,var(--ha-box-shadow-m))}`]}constructor(...t){super(...t),this.showDelay=350,this.hideDelay=150}}(0,o.Cg)([(0,n.MZ)({attribute:"show-delay",type:Number})],l.prototype,"showDelay",void 0),(0,o.Cg)([(0,n.MZ)({attribute:"hide-delay",type:Number})],l.prototype,"hideDelay",void 0),l=(0,o.Cg)([(0,n.EM)("ha-tooltip")],l),e()}catch(t){e(t)}})},76944(t,e,a){a.d(e,{MV:()=>n,VR:()=>r,d8:()=>o,jJ:()=>s,l3:()=>i});const o=async t=>t.callWS({type:"application_credentials/config"}),i=async(t,e)=>t.callWS({type:"application_credentials/config_entry",config_entry_id:e}),r=async t=>t.callWS({type:"application_credentials/list"}),n=async(t,e,a,o,i)=>t.callWS({type:"application_credentials/create",domain:e,client_id:a,client_secret:o,name:i}),s=async(t,e)=>t.callWS({type:"application_credentials/delete",application_credentials_id:e})},44249(t,e,a){a.d(e,{V:()=>o});const o=(t,e)=>{const a=new i,o=t.subscribeMessage(t=>e(a.processMessage(t)),{type:"persistent_notification/subscribe"});return()=>{o.then(t=>t?.())}};class i{processMessage(t){if("removed"===t.type)for(const e of Object.keys(t.notifications))delete this.notifications[e];else this.notifications={...this.notifications,...t.notifications};return Object.values(this.notifications)}constructor(){this.notifications={}}}},23006(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaConfigApplicationCredentials:()=>_});a(18111),a(61701);var i=a(62826),r=a(5124),n=a(22441),s=a(22786),l=a(93905),c=a(18350),h=a(27571),d=a(75248),p=(a(67094),a(76944)),g=a(95350),u=a(65063),v=a(72553),b=a(25635),m=a(41617),f=t([c,h,d,v]);[c,h,d,v]=f.then?(await f)():f;const y="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z",w="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z";class _ extends r.WF{firstUpdated(t){super.firstUpdated(t),this._loadTranslations(),this._fetchApplicationCredentials()}render(){return r.qy` <hass-tabs-subpage-data-table .hass="${this.hass}" .narrow="${this.narrow}" .route="${this.route}" back-path="/config" .tabs="${b.configSections.devices}" .columns="${this._columns(this.hass.localize)}" .data="${this._getApplicationCredentials(this._applicationCredentials,this.hass.localize)}" has-fab selectable .selected="${this._selected.length}" @selection-changed="${this._handleSelectionChanged}" .initialSorting="${this._activeSorting}" .columnOrder="${this._activeColumnOrder}" .hiddenColumns="${this._activeHiddenColumns}" @columns-changed="${this._handleColumnsChanged}" @sorting-changed="${this._handleSortingChanged}" .filter="${this._filter}" @search-changed="${this._handleSearchChange}"> <div class="header-btns" slot="selection-bar"> ${this.narrow?r.qy` <ha-icon-button class="warning" id="remove-btn" @click="${this._deleteSelected}" .path="${y}" .label="${this.hass.localize("ui.common.remove")}"></ha-icon-button> <ha-help-tooltip .label="${this.hass.localize("ui.panel.config.application_credentials.picker.remove_selected.button")}"> </ha-help-tooltip> `:r.qy` <ha-button appearance="plain" size="small" @click="${this._deleteSelected}" variant="danger">${this.hass.localize("ui.panel.config.application_credentials.picker.remove_selected.button")}</ha-button> `} </div> <ha-button slot="fab" size="large" @click="${this._addApplicationCredential}"> <ha-svg-icon slot="start" .path="${w}"></ha-svg-icon> ${this.hass.localize("ui.panel.config.application_credentials.picker.add_application_credential")} </ha-button> </hass-tabs-subpage-data-table> `}_handleSelectionChanged(t){this._selected=t.detail.value}_deleteSelected(){(0,u.dk)(this,{title:this.hass.localize("ui.panel.config.application_credentials.picker.remove_selected.confirm_title",{number:this._selected.length}),text:this.hass.localize("ui.panel.config.application_credentials.picker.remove_selected.confirm_text"),confirmText:this.hass.localize("ui.common.delete"),dismissText:this.hass.localize("ui.common.cancel"),destructive:!0,confirm:async()=>{try{await Promise.all(this._selected.map(async t=>{await(0,p.jJ)(this.hass,t)}))}catch(t){return void(0,u.showAlertDialog)(this,{title:this.hass.localize("ui.panel.config.application_credentials.picker.remove_selected.error_title"),text:t.message})}this._dataTable.clearSelection(),await this._fetchApplicationCredentials()}})}async _loadTranslations(){await this.hass.loadBackendTranslation("title",void 0,!0)}async _fetchApplicationCredentials(){this._applicationCredentials=await(0,p.VR)(this.hass)}_addApplicationCredential(){(0,m.a)(this,{applicationCredentialAddedCallback:async t=>{t&&(this._applicationCredentials=[...this._applicationCredentials,t])}})}_handleSortingChanged(t){this._activeSorting=t.detail}_handleColumnsChanged(t){this._activeColumnOrder=t.detail.columnOrder,this._activeHiddenColumns=t.detail.hiddenColumns}_handleSearchChange(t){this._filter=t.detail.value}constructor(...t){super(...t),this._applicationCredentials=[],this.isWide=!1,this.narrow=!1,this._selected=[],this._filter="",this._columns=(0,s.A)(t=>({name:{title:t("ui.panel.config.application_credentials.picker.headers.name"),main:!0,sortable:!0,filterable:!0,direction:"asc",flex:2},client_id:{title:t("ui.panel.config.application_credentials.picker.headers.client_id"),filterable:!0},localizedDomain:{title:t("ui.panel.config.application_credentials.picker.headers.application"),sortable:!0,filterable:!0},actions:{lastFixed:!0,title:"",label:t("ui.panel.config.generic.headers.actions"),type:"overflow-menu",showNarrow:!0,template:t=>r.qy` <ha-icon-overflow-menu narrow .items="${[{path:y,warning:!0,label:this.hass.localize("ui.common.delete"),action:()=>this._deleteCredential(t)}]}"> </ha-icon-overflow-menu> `}})),this._getApplicationCredentials=(0,s.A)((t,e)=>t.map(t=>({...t,localizedDomain:(0,g.p$)(e,t.domain)}))),this._deleteCredential=async t=>{await(0,u.dk)(this,{title:this.hass.localize("ui.panel.config.application_credentials.picker.remove.confirm_title"),text:this.hass.localize("ui.panel.config.application_credentials.picker.remove_selected.confirm_text"),confirmText:this.hass.localize("ui.common.delete"),dismissText:this.hass.localize("ui.common.cancel"),destructive:!0})&&(await(0,p.jJ)(this.hass,t.id),await this._fetchApplicationCredentials())}}}_.styles=r.AH`.table-header{display:flex;justify-content:space-between;align-items:center;height:56px;background-color:var(--mdc-text-field-fill-color,#f5f5f5);border-bottom:1px solid var(--mdc-text-field-idle-line-color,rgba(0,0,0,.42));box-sizing:border-box}.header-toolbar{display:flex;justify-content:space-between;align-items:center;color:var(--secondary-text-color);position:relative;top:-4px}.selected-txt{font-weight:var(--ha-font-weight-bold);padding-left:16px;padding-inline-start:16px;direction:var(--direction)}.table-header .selected-txt{margin-top:20px}.header-toolbar .selected-txt{font-size:var(--ha-font-size-l)}.header-toolbar .header-btns{margin-right:-12px;margin-inline-end:-12px;margin-inline-start:initial}.header-btns{display:flex}.header-btns>ha-button,.header-btns>ha-icon-button{margin:8px}.warning{--mdc-theme-primary:var(--error-color)}`,(0,i.Cg)([(0,n.MZ)({attribute:!1})],_.prototype,"hass",void 0),(0,i.Cg)([(0,n.wk)()],_.prototype,"_applicationCredentials",void 0),(0,i.Cg)([(0,n.MZ)({attribute:"is-wide",type:Boolean})],_.prototype,"isWide",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean})],_.prototype,"narrow",void 0),(0,i.Cg)([(0,n.MZ)({attribute:!1})],_.prototype,"route",void 0),(0,i.Cg)([(0,n.wk)()],_.prototype,"_selected",void 0),(0,i.Cg)([(0,n.P)("hass-tabs-subpage-data-table",!0)],_.prototype,"_dataTable",void 0),(0,i.Cg)([(0,l.I)({key:"application-credentials-table-sort",state:!1,subscribe:!1})],_.prototype,"_activeSorting",void 0),(0,i.Cg)([(0,l.I)({key:"application-credentials-table-column-order",state:!1,subscribe:!1})],_.prototype,"_activeColumnOrder",void 0),(0,i.Cg)([(0,l.I)({key:"application-credentials-table-hidden-columns",state:!1,subscribe:!1})],_.prototype,"_activeHiddenColumns",void 0),(0,i.Cg)([(0,n.wk)(),(0,l.I)({storage:"sessionStorage",key:"application-credentials-table-search",state:!0,subscribe:!1})],_.prototype,"_filter",void 0),_=(0,i.Cg)([(0,n.EM)("ha-config-application-credentials")],_),o()}catch(t){o(t)}})},14503(t,e,a){a.d(e,{RF:()=>r,dp:()=>l,kO:()=>s,nA:()=>n,og:()=>i});var o=a(5124);const i=o.AH`button.link{background:0 0;color:inherit;border:none;padding:0;font:inherit;text-align:left;text-decoration:underline;cursor:pointer;outline:0}`,r=o.AH`:host{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-size:var(--ha-font-size-m);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-normal)}app-header div[sticky]{height:48px}app-toolbar [main-title]{margin-left:20px;margin-inline-start:20px;margin-inline-end:initial}.header{transition:box-shadow .2s linear,width var(--ha-animation-duration-normal) ease,padding-left var(--ha-animation-duration-normal) ease,padding-right var(--ha-animation-duration-normal) ease}@media (prefers-reduced-motion:reduce){.header{transition:box-shadow .2s linear}}h1{font-family:var(--ha-font-family-heading);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-size:var(--ha-font-size-2xl);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-condensed)}h2{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--ha-font-size-xl);font-weight:var(--ha-font-weight-medium);line-height:var(--ha-line-height-normal)}h3{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-size:var(--ha-font-size-l);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-normal)}a{color:var(--primary-color)}.secondary{color:var(--secondary-text-color)}.error{color:var(--error-color)}.warning{color:var(--error-color)}${i} .card-actions a{text-decoration:none}.card-actions .warning{--mdc-theme-primary:var(--error-color)}.layout.horizontal,.layout.vertical{display:flex}.layout.inline{display:inline-flex}.layout.horizontal{flex-direction:row}.layout.vertical{flex-direction:column}.layout.wrap{flex-wrap:wrap}.layout.no-wrap{flex-wrap:nowrap}.layout.center,.layout.center-center{align-items:center}.layout.bottom{align-items:flex-end}.layout.center-center,.layout.center-justified{justify-content:center}.flex{flex:1;flex-basis:0.000000001px}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.layout.justified{justify-content:space-between}`,n=o.AH`ha-adaptive-dialog,ha-dialog{--mdc-dialog-min-width:400px;--mdc-dialog-max-width:600px;--mdc-dialog-max-width:min(600px, 95vw);--justify-action-buttons:space-between;--dialog-container-padding:var(--safe-area-inset-top, 0) var(--safe-area-inset-right, 0) var(--safe-area-inset-bottom, 0) var(--safe-area-inset-left, 0);--dialog-surface-padding:0px}ha-adaptive-dialog .form,ha-dialog .form{color:var(--primary-text-color)}a{color:var(--primary-color)}@media all and (max-width:450px),all and (max-height:500px){ha-adaptive-dialog,ha-dialog{--mdc-dialog-min-width:100vw;--mdc-dialog-max-width:100vw;--mdc-dialog-min-height:100vh;--mdc-dialog-min-height:100svh;--mdc-dialog-max-height:100vh;--mdc-dialog-max-height:100svh;--dialog-container-padding:0px;--dialog-surface-padding:var(--safe-area-inset-top, 0) var(--safe-area-inset-right, 0) var(--safe-area-inset-bottom, 0) var(--safe-area-inset-left, 0);--vertical-align-dialog:flex-end}ha-dialog{--ha-dialog-border-radius:var(--ha-border-radius-square)}}.error{color:var(--error-color)}`,s=o.AH`ha-adaptive-dialog,ha-dialog{--vertical-align-dialog:flex-start;--dialog-surface-margin-top:var(--ha-space-10);--mdc-dialog-max-height:calc( 100vh - var(--dialog-surface-margin-top) - var(--ha-space-2) - var( --safe-area-inset-y, 0px ) );--mdc-dialog-max-height:calc( 100svh - var(--dialog-surface-margin-top) - var(--ha-space-2) - var( --safe-area-inset-y, 0px ) );--ha-dialog-max-height:calc( 100vh - var(--dialog-surface-margin-top) - var(--ha-space-2) - var( --safe-area-inset-y, 0px ) );--ha-dialog-max-height:calc( 100svh - var(--dialog-surface-margin-top) - var(--ha-space-2) - var( --safe-area-inset-y, 0px ) )}@media all and (max-width:450px),all and (max-height:500px){ha-adaptive-dialog,ha-dialog{--dialog-surface-margin-top:0px;--mdc-dialog-min-height:100vh;--mdc-dialog-min-height:100svh;--mdc-dialog-max-height:100vh;--mdc-dialog-max-height:100svh;--ha-dialog-max-height:100vh;--ha-dialog-max-height:100svh}}`,l=o.AH`.ha-scrollbar::-webkit-scrollbar{width:.4rem;height:.4rem}.ha-scrollbar::-webkit-scrollbar-thumb{border-radius:var(--ha-border-radius-sm);background:var(--scrollbar-thumb-color)}.ha-scrollbar{overflow-y:auto;scrollbar-color:var(--scrollbar-thumb-color) transparent;scrollbar-width:thin}`;o.AH`body{background-color:var(--primary-background-color);color:var(--primary-text-color);height:calc(100vh - 32px);width:100vw}`},89429(t){t.exports=function(){}}};