iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
3 lines • 7.29 kB
JavaScript
/*! For license information please see 68764.d8de21aea45dc164.js.LICENSE.txt */
"use strict";(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([["68764"],{18917:function(e,t,s){var i=s(40810),o=s(97934),n=s(63983),r=s(92395),a=s(72049),u=s(73994);i({target:"Promise",stat:!0,forced:s(79083)},{allSettled:function(e){var t=this,s=r.f(t),i=s.resolve,h=s.reject,l=a((function(){var s=n(t.resolve),r=[],a=0,h=1;u(e,(function(e){var n=a++,u=!1;h++,o(s,t,e).then((function(e){u||(u=!0,r[n]={status:"fulfilled",value:e},--h||i(r))}),(function(e){u||(u=!0,r[n]={status:"rejected",reason:e},--h||i(r))}))})),--h||i(r)}));return l.error&&h(l.value),s.promise}})},74763:function(e,t,s){s.d(t,{l:()=>c});var i=s(9065),o=s(50778),n=(s(67351),s(71695),s(9359),s(56475),s(1331),s(47021),s(57243)),r=s(4077);let a,u=e=>e;class h extends n.oi{get chips(){return this.childElements.filter((e=>e instanceof r.A))}constructor(){super(),this.internals=this.attachInternals(),n.sk||(this.addEventListener("focusin",this.updateTabIndices.bind(this)),this.addEventListener("update-focus",this.updateTabIndices.bind(this)),this.addEventListener("keydown",this.handleKeyDown.bind(this)),this.internals.role="toolbar")}render(){return(0,n.dy)(a||(a=u`<slot ="${0}"></slot>`),this.updateTabIndices)}handleKeyDown(e){const t="ArrowLeft"===e.key,s="ArrowRight"===e.key,i="Home"===e.key,o="End"===e.key;if(!(t||s||i||o))return;const{chips:n}=this;if(n.length<2)return;if(e.preventDefault(),i||o){return n[i?0:n.length-1].focus({trailing:o}),void this.updateTabIndices()}const r="rtl"===getComputedStyle(this).direction?t:s,a=n.find((e=>e.matches(":focus-within")));if(!a){return(r?n[0]:n[n.length-1]).focus({trailing:!r}),void this.updateTabIndices()}const u=n.indexOf(a);let h=r?u+1:u-1;for(;h!==u;){h>=n.length?h=0:h<0&&(h=n.length-1);const e=n[h];if(!e.disabled||e.alwaysFocusable){e.focus({trailing:!r}),this.updateTabIndices();break}r?h++:h--}}updateTabIndices(){const{chips:e}=this;let t;for(const s of e){const e=s.alwaysFocusable||!s.disabled;s.matches(":focus-within")&&e?t=s:(e&&!t&&(t=s),s.tabIndex=-1)}t&&(t.tabIndex=0)}}(0,i.__decorate)([(0,o.NH)()],h.prototype,"childElements",void 0);let l;const d=(0,n.iv)(l||(l=(e=>e)`:host{display:flex;flex-wrap:wrap;gap:8px}`));let c=class extends h{};c.styles=[d],c=(0,i.__decorate)([(0,o.Mo)("md-chip-set")],c)},92264:function(e,t,s){s.d(t,{f:()=>m});var i=s(9065),o=s(50778),n=(s(92745),s(40251),s(57243)),r=s(64840),a=s(7162),u=s(9235);let h,l=e=>e;class d extends n.oi{get item(){var e;return null!==(e=this.items[0])&&void 0!==e?e:null}get menu(){var e;return null!==(e=this.menus[0])&&void 0!==e?e:null}constructor(){super(),this.anchorCorner=u.Ns.START_END,this.menuCorner=u.Ns.START_START,this.hoverOpenDelay=400,this.hoverCloseDelay=400,this.isSubMenu=!0,this.previousOpenTimeout=0,this.previousCloseTimeout=0,this.onMouseenter=()=>{var e;clearTimeout(this.previousOpenTimeout),clearTimeout(this.previousCloseTimeout),null!==(e=this.menu)&&void 0!==e&&e.open||(this.hoverOpenDelay?this.previousOpenTimeout=setTimeout((()=>{this.show()}),this.hoverOpenDelay):this.show())},this.onMouseleave=()=>{clearTimeout(this.previousCloseTimeout),clearTimeout(this.previousOpenTimeout),this.hoverCloseDelay?this.previousCloseTimeout=setTimeout((()=>{this.close()}),this.hoverCloseDelay):this.close()},n.sk||(this.addEventListener("mouseenter",this.onMouseenter),this.addEventListener("mouseleave",this.onMouseleave))}render(){return(0,n.dy)(h||(h=l` <slot name="item" ="${0}" ="${0}" ="${0}"> </slot> <slot name="menu" ="${0}" -menu="${0}" ="${0}"> </slot> `),this.onClick,this.onKeydown,this.onSlotchange,this.onSubMenuKeydown,this.onCloseSubmenu,this.onSlotchange)}firstUpdated(){this.onSlotchange()}async show(){const e=this.menu;if(!e||e.open)return;e.addEventListener("closed",(()=>{this.item.ariaExpanded="false",this.dispatchEvent((0,a.YU)()),this.dispatchEvent((0,r.NS)()),e.ariaHidden="true"}),{once:!0}),"document"===e.positioning&&(e.positioning="absolute"),e.quick=!0,e.hasOverflow=!0,e.anchorCorner=this.anchorCorner,e.menuCorner=this.menuCorner,e.anchorElement=this.item,e.defaultFocus="first-item",e.removeAttribute("aria-hidden"),e.skipRestoreFocus=!1;const t=e.open;if(e.show(),this.item.ariaExpanded="true",this.item.ariaHasPopup="menu",e.id&&this.item.setAttribute("aria-controls",e.id),this.dispatchEvent((0,r.NS)()),this.dispatchEvent((0,a.Ti)()),this.item.selected=!0,!t){let t=e=>{};const s=new Promise((e=>{t=e}));e.addEventListener("opened",t,{once:!0}),await s}}async close(){const e=this.menu;if(!e||!e.open)return;this.dispatchEvent((0,a.YU)()),e.quick=!0,e.close(),this.dispatchEvent((0,r.NS)());let t=e=>{};const s=new Promise((e=>{t=e}));e.addEventListener("closed",t,{once:!0}),await s}onSlotchange(){var e;if(!this.item)return;this.item.ariaExpanded="false",this.item.ariaHasPopup="menu",null!==(e=this.menu)&&void 0!==e&&e.id&&this.item.setAttribute("aria-controls",this.menu.id),this.item.keepOpen=!0;const t=this.menu;t&&(t.isSubmenu=!0,t.ariaHidden="true")}onClick(){this.show()}async onKeydown(e){const t=this.isSubmenuOpenKey(e.code);if(e.defaultPrevented)return;const s=t&&(a.wg.LEFT===e.code||a.wg.RIGHT===e.code);if((e.code===a.LE.SPACE||s)&&(e.preventDefault(),s&&e.stopPropagation()),!t)return;const i=this.menu;if(!i)return;const o=i.items,n=(0,r.B3)(o);return n?(await this.show(),n.tabIndex=0,void n.focus()):void 0}onCloseSubmenu(e){const{itemPath:t,reason:s}=e.detail;if(t.push(this.item),this.dispatchEvent((0,a.YU)()),s.kind===a.GB.KEYDOWN&&s.key===a.KC.ESCAPE)return e.stopPropagation(),void this.item.dispatchEvent((0,r.oh)());this.dispatchEvent((0,r.NS)())}async onSubMenuKeydown(e){var t;if(e.defaultPrevented)return;const{close:s,keyCode:i}=this.isSubmenuCloseKey(e.code);s&&(e.preventDefault(),i!==a.wg.LEFT&&i!==a.wg.RIGHT||e.stopPropagation(),await this.close(),(0,r.tq)(this.menu.items),null===(t=this.item)||void 0===t||t.focus(),this.item.tabIndex=0,this.item.focus())}isSubmenuOpenKey(e){switch(e){case"rtl"===getComputedStyle(this).direction?a.wg.LEFT:a.wg.RIGHT:case a.LE.SPACE:case a.LE.ENTER:return!0;default:return!1}}isSubmenuCloseKey(e){switch(e){case"rtl"===getComputedStyle(this).direction?a.wg.RIGHT:a.wg.LEFT:case a.KC.ESCAPE:return{close:!0,keyCode:e};default:return{close:!1}}}}(0,i.__decorate)([(0,o.Cb)({attribute:"anchor-corner"})],d.prototype,"anchorCorner",void 0),(0,i.__decorate)([(0,o.Cb)({attribute:"menu-corner"})],d.prototype,"menuCorner",void 0),(0,i.__decorate)([(0,o.Cb)({type:Number,attribute:"hover-open-delay"})],d.prototype,"hoverOpenDelay",void 0),(0,i.__decorate)([(0,o.Cb)({type:Number,attribute:"hover-close-delay"})],d.prototype,"hoverCloseDelay",void 0),(0,i.__decorate)([(0,o.Cb)({type:Boolean,reflect:!0,attribute:"md-sub-menu"})],d.prototype,"isSubMenu",void 0),(0,i.__decorate)([(0,o.NH)({slot:"item",flatten:!0})],d.prototype,"items",void 0),(0,i.__decorate)([(0,o.NH)({slot:"menu",flatten:!0})],d.prototype,"menus",void 0);let c;const p=(0,n.iv)(c||(c=(e=>e)`:host{position:relative;display:flex;flex-direction:column}`));let m=class extends d{};m.styles=[p],m=(0,i.__decorate)([(0,o.Mo)("md-sub-menu")],m)}}]);
//# sourceMappingURL=68764.d8de21aea45dc164.js.map