iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
3 lines • 17.1 kB
JavaScript
/*! For license information please see chunk.87defc566fab7dcc6bc2.js.LICENSE.txt */
(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([[7693],{35854:function(e,t,n){"use strict";n.d(t,{G:function(){return a},R:function(){return r}});n(43437);var i=n(21006),o=n(98235),a={properties:{checked:{type:Boolean,value:!1,reflectToAttribute:!0,notify:!0,observer:"_checkedChanged"},toggles:{type:Boolean,value:!0,reflectToAttribute:!0},value:{type:String,value:"on",observer:"_valueChanged"}},observers:["_requiredChanged(required)"],created:function(){this._hasIronCheckedElementBehavior=!0},_getValidity:function(e){return this.disabled||!this.required||this.checked},_requiredChanged:function(){this.required?this.setAttribute("aria-required","true"):this.removeAttribute("aria-required")},_checkedChanged:function(){this.active=this.checked,this.fire("iron-change")},_valueChanged:function(){void 0!==this.value&&null!==this.value||(this.value="on")}},r=[i.V,o.x,a]},78161:function(e,t,n){"use strict";n.d(t,{D:function(){return s},i:function(){return c}});n(43437);var i=n(8621),o=n(6755),a=n(11018),r=n(87156),s={properties:{focusedItem:{observer:"_focusedItemChanged",readOnly:!0,type:Object},attrForItemTitle:{type:String},disabled:{type:Boolean,value:!1,observer:"_disabledChanged"}},_MODIFIER_KEYS:["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","OS","ScrollLock","Shift","Super","Symbol","SymbolLock"],_SEARCH_RESET_TIMEOUT_MS:1e3,_previousTabIndex:0,hostAttributes:{role:"menu"},observers:["_updateMultiselectable(multi)"],listeners:{focus:"_onFocus",keydown:"_onKeydown","iron-items-changed":"_onIronItemsChanged"},keyBindings:{up:"_onUpKey",down:"_onDownKey",esc:"_onEscKey","shift+tab:keydown":"_onShiftTabDown"},attached:function(){this._resetTabindices()},select:function(e){this._defaultFocusAsync&&(this.cancelAsync(this._defaultFocusAsync),this._defaultFocusAsync=null);var t=this._valueToItem(e);t&&t.hasAttribute("disabled")||(this._setFocusedItem(t),o.A.select.apply(this,arguments))},_resetTabindices:function(){var e=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this.items.forEach((function(t){t.setAttribute("tabindex",t===e?"0":"-1"),t.setAttribute("aria-selected",this._selection.isSelected(t))}),this)},_updateMultiselectable:function(e){e?this.setAttribute("aria-multiselectable","true"):this.removeAttribute("aria-multiselectable")},_focusWithKeyboardEvent:function(e){if(-1===this._MODIFIER_KEYS.indexOf(e.key)){this.cancelDebouncer("_clearSearchText");for(var t,n=this._searchText||"",i=(n+=(e.key&&1==e.key.length?e.key:String.fromCharCode(e.keyCode)).toLocaleLowerCase()).length,o=0;t=this.items[o];o++)if(!t.hasAttribute("disabled")){var a=this.attrForItemTitle||"textContent",r=(t[a]||t.getAttribute(a)||"").trim();if(!(r.length<i)&&r.slice(0,i).toLocaleLowerCase()==n){this._setFocusedItem(t);break}}this._searchText=n,this.debounce("_clearSearchText",this._clearSearchText,this._SEARCH_RESET_TIMEOUT_MS)}},_clearSearchText:function(){this._searchText=""},_focusPrevious:function(){for(var e=this.items.length,t=Number(this.indexOf(this.focusedItem)),n=1;n<e+1;n++){var i=this.items[(t-n+e)%e];if(!i.hasAttribute("disabled")){var o=(0,r.vz)(i).getOwnerRoot()||document;if(this._setFocusedItem(i),(0,r.vz)(o).activeElement==i)return}}},_focusNext:function(){for(var e=this.items.length,t=Number(this.indexOf(this.focusedItem)),n=1;n<e+1;n++){var i=this.items[(t+n)%e];if(!i.hasAttribute("disabled")){var o=(0,r.vz)(i).getOwnerRoot()||document;if(this._setFocusedItem(i),(0,r.vz)(o).activeElement==i)return}}},_applySelection:function(e,t){t?e.setAttribute("aria-selected","true"):e.setAttribute("aria-selected","false"),a.P._applySelection.apply(this,arguments)},_focusedItemChanged:function(e,t){t&&t.setAttribute("tabindex","-1"),!e||e.hasAttribute("disabled")||this.disabled||(e.setAttribute("tabindex","0"),e.focus())},_onIronItemsChanged:function(e){e.detail.addedNodes.length&&this._resetTabindices()},_onShiftTabDown:function(e){var t=this.getAttribute("tabindex");s._shiftTabPressed=!0,this._setFocusedItem(null),this.setAttribute("tabindex","-1"),this.async((function(){this.setAttribute("tabindex",t),s._shiftTabPressed=!1}),1)},_onFocus:function(e){if(!s._shiftTabPressed){var t=(0,r.vz)(e).rootTarget;(t===this||void 0===t.tabIndex||this.isLightDescendant(t))&&(this._defaultFocusAsync=this.async((function(){var e=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this._setFocusedItem(null),e?this._setFocusedItem(e):this.items[0]&&this._focusNext()})))}},_onUpKey:function(e){this._focusPrevious(),e.detail.keyboardEvent.preventDefault()},_onDownKey:function(e){this._focusNext(),e.detail.keyboardEvent.preventDefault()},_onEscKey:function(e){var t=this.focusedItem;t&&t.blur()},_onKeydown:function(e){this.keyboardEventMatchesKeys(e,"up down esc")||this._focusWithKeyboardEvent(e),e.stopPropagation()},_activateHandler:function(e){a.P._activateHandler.call(this,e),e.stopPropagation()},_disabledChanged:function(e){e?(this._previousTabIndex=this.hasAttribute("tabindex")?this.tabIndex:0,this.removeAttribute("tabindex")):this.hasAttribute("tabindex")||this.setAttribute("tabindex",this._previousTabIndex)},_shiftTabPressed:!1},c=[o.U,i.G,s]},85753:function(e,t,n){"use strict";n.d(t,{I:function(){return o},E:function(){return a}});n(43437);var i=n(78161),o={hostAttributes:{role:"menubar"},keyBindings:{left:"_onLeftKey",right:"_onRightKey"},_onUpKey:function(e){this.focusedItem.click(),e.detail.keyboardEvent.preventDefault()},_onDownKey:function(e){this.focusedItem.click(),e.detail.keyboardEvent.preventDefault()},get _isRTL(){return"rtl"===window.getComputedStyle(this).direction},_onLeftKey:function(e){this._isRTL?this._focusNext():this._focusPrevious(),e.detail.keyboardEvent.preventDefault()},_onRightKey:function(e){this._isRTL?this._focusPrevious():this._focusNext(),e.detail.keyboardEvent.preventDefault()},_onKeydown:function(e){this.keyboardEventMatchesKeys(e,"up down left right esc")||this._focusWithKeyboardEvent(e)}},a=[i.i,o]},62132:function(e,t,n){"use strict";n.d(t,{K:function(){return s}});n(43437);var i=n(35854),o=n(49075),a=n(84938),r={_checkedChanged:function(){i.G._checkedChanged.call(this),this.hasRipple()&&(this.checked?this._ripple.setAttribute("checked",""):this._ripple.removeAttribute("checked"))},_buttonStateChanged:function(){a.o._buttonStateChanged.call(this),this.disabled||this.isAttached&&(this.checked=this.active)}},s=[o.B,i.R,r]},89194:function(e,t,n){"use strict";n(43437),n(65660),n(1656),n(47686);var i=n(9672),o=n(50856);function a(){var e=function(e,t){t||(t=e.slice(0));return Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}(["\n <style>\n :host {\n overflow: hidden; /* needed for text-overflow: ellipsis to work on ff */\n @apply --layout-vertical;\n @apply --layout-center-justified;\n @apply --layout-flex;\n }\n\n :host([two-line]) {\n min-height: var(--paper-item-body-two-line-min-height, 72px);\n }\n\n :host([three-line]) {\n min-height: var(--paper-item-body-three-line-min-height, 88px);\n }\n\n :host > ::slotted(*) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n :host > ::slotted([secondary]) {\n @apply --paper-font-body1;\n\n color: var(--paper-item-body-secondary-color, var(--secondary-text-color));\n\n @apply --paper-item-body-secondary;\n }\n </style>\n\n <slot></slot>\n"]);return a=function(){return e},e}(0,i.k)({_template:(0,o.d)(a()),is:"paper-item-body"})},27662:function(e,t,n){"use strict";n(43437),n(1656),n(65660);var i=n(62132),o=n(9672),a=n(50856),r=n(87529);function s(){var e=function(e,t){t||(t=e.slice(0));return Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}(['\n<style>\n :host {\n display: inline-block;\n line-height: 0;\n white-space: nowrap;\n cursor: pointer;\n @apply --paper-font-common-base;\n --calculated-paper-radio-button-size: var(--paper-radio-button-size, 16px);\n /* -1px is a sentinel for the default and is replace in `attached`. */\n --calculated-paper-radio-button-ink-size: var(--paper-radio-button-ink-size, -1px);\n }\n\n :host(:focus) {\n outline: none;\n }\n\n #radioContainer {\n @apply --layout-inline;\n @apply --layout-center-center;\n position: relative;\n width: var(--calculated-paper-radio-button-size);\n height: var(--calculated-paper-radio-button-size);\n vertical-align: middle;\n\n @apply --paper-radio-button-radio-container;\n }\n\n #ink {\n position: absolute;\n top: 50%;\n left: 50%;\n right: auto;\n width: var(--calculated-paper-radio-button-ink-size);\n height: var(--calculated-paper-radio-button-ink-size);\n color: var(--paper-radio-button-unchecked-ink-color, var(--primary-text-color));\n opacity: 0.6;\n pointer-events: none;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n }\n\n #ink[checked] {\n color: var(--paper-radio-button-checked-ink-color, var(--primary-color));\n }\n\n #offRadio, #onRadio {\n position: absolute;\n box-sizing: border-box;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n }\n\n #offRadio {\n border: 2px solid var(--paper-radio-button-unchecked-color, var(--primary-text-color));\n background-color: var(--paper-radio-button-unchecked-background-color, transparent);\n transition: border-color 0.28s;\n }\n\n #onRadio {\n background-color: var(--paper-radio-button-checked-color, var(--primary-color));\n -webkit-transform: scale(0);\n transform: scale(0);\n transition: -webkit-transform ease 0.28s;\n transition: transform ease 0.28s;\n will-change: transform;\n }\n\n :host([checked]) #offRadio {\n border-color: var(--paper-radio-button-checked-color, var(--primary-color));\n }\n\n :host([checked]) #onRadio {\n -webkit-transform: scale(0.5);\n transform: scale(0.5);\n }\n\n #radioLabel {\n line-height: normal;\n position: relative;\n display: inline-block;\n vertical-align: middle;\n margin-left: var(--paper-radio-button-label-spacing, 10px);\n white-space: normal;\n color: var(--paper-radio-button-label-color, var(--primary-text-color));\n\n @apply --paper-radio-button-label;\n }\n\n :host([checked]) #radioLabel {\n @apply --paper-radio-button-label-checked;\n }\n\n #radioLabel:dir(rtl) {\n margin-left: 0;\n margin-right: var(--paper-radio-button-label-spacing, 10px);\n }\n\n #radioLabel[hidden] {\n display: none;\n }\n\n /* disabled state */\n\n :host([disabled]) #offRadio {\n border-color: var(--paper-radio-button-unchecked-color, var(--primary-text-color));\n opacity: 0.5;\n }\n\n :host([disabled][checked]) #onRadio {\n background-color: var(--paper-radio-button-unchecked-color, var(--primary-text-color));\n opacity: 0.5;\n }\n\n :host([disabled]) #radioLabel {\n /* slightly darker than the button, so that it\'s readable */\n opacity: 0.65;\n }\n</style>\n\n<div id="radioContainer">\n <div id="offRadio"></div>\n <div id="onRadio"></div>\n</div>\n\n<div id="radioLabel"><slot></slot></div>'],['\n<style>\n :host {\n display: inline-block;\n line-height: 0;\n white-space: nowrap;\n cursor: pointer;\n @apply --paper-font-common-base;\n --calculated-paper-radio-button-size: var(--paper-radio-button-size, 16px);\n /* -1px is a sentinel for the default and is replace in \\`attached\\`. */\n --calculated-paper-radio-button-ink-size: var(--paper-radio-button-ink-size, -1px);\n }\n\n :host(:focus) {\n outline: none;\n }\n\n #radioContainer {\n @apply --layout-inline;\n @apply --layout-center-center;\n position: relative;\n width: var(--calculated-paper-radio-button-size);\n height: var(--calculated-paper-radio-button-size);\n vertical-align: middle;\n\n @apply --paper-radio-button-radio-container;\n }\n\n #ink {\n position: absolute;\n top: 50%;\n left: 50%;\n right: auto;\n width: var(--calculated-paper-radio-button-ink-size);\n height: var(--calculated-paper-radio-button-ink-size);\n color: var(--paper-radio-button-unchecked-ink-color, var(--primary-text-color));\n opacity: 0.6;\n pointer-events: none;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n }\n\n #ink[checked] {\n color: var(--paper-radio-button-checked-ink-color, var(--primary-color));\n }\n\n #offRadio, #onRadio {\n position: absolute;\n box-sizing: border-box;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n }\n\n #offRadio {\n border: 2px solid var(--paper-radio-button-unchecked-color, var(--primary-text-color));\n background-color: var(--paper-radio-button-unchecked-background-color, transparent);\n transition: border-color 0.28s;\n }\n\n #onRadio {\n background-color: var(--paper-radio-button-checked-color, var(--primary-color));\n -webkit-transform: scale(0);\n transform: scale(0);\n transition: -webkit-transform ease 0.28s;\n transition: transform ease 0.28s;\n will-change: transform;\n }\n\n :host([checked]) #offRadio {\n border-color: var(--paper-radio-button-checked-color, var(--primary-color));\n }\n\n :host([checked]) #onRadio {\n -webkit-transform: scale(0.5);\n transform: scale(0.5);\n }\n\n #radioLabel {\n line-height: normal;\n position: relative;\n display: inline-block;\n vertical-align: middle;\n margin-left: var(--paper-radio-button-label-spacing, 10px);\n white-space: normal;\n color: var(--paper-radio-button-label-color, var(--primary-text-color));\n\n @apply --paper-radio-button-label;\n }\n\n :host([checked]) #radioLabel {\n @apply --paper-radio-button-label-checked;\n }\n\n #radioLabel:dir(rtl) {\n margin-left: 0;\n margin-right: var(--paper-radio-button-label-spacing, 10px);\n }\n\n #radioLabel[hidden] {\n display: none;\n }\n\n /* disabled state */\n\n :host([disabled]) #offRadio {\n border-color: var(--paper-radio-button-unchecked-color, var(--primary-text-color));\n opacity: 0.5;\n }\n\n :host([disabled][checked]) #onRadio {\n background-color: var(--paper-radio-button-unchecked-color, var(--primary-text-color));\n opacity: 0.5;\n }\n\n :host([disabled]) #radioLabel {\n /* slightly darker than the button, so that it\'s readable */\n opacity: 0.65;\n }\n</style>\n\n<div id="radioContainer">\n <div id="offRadio"></div>\n <div id="onRadio"></div>\n</div>\n\n<div id="radioLabel"><slot></slot></div>']);return s=function(){return e},e}var c=(0,a.d)(s());c.setAttribute("strip-whitespace",""),(0,o.k)({_template:c,is:"paper-radio-button",behaviors:[i.K],hostAttributes:{role:"radio","aria-checked":!1,tabindex:0},properties:{ariaActiveAttribute:{type:String,value:"aria-checked"}},ready:function(){this._rippleContainer=this.$.radioContainer},attached:function(){(0,r.T8)(this,(function(){if("-1px"===this.getComputedStyleValue("--calculated-paper-radio-button-ink-size").trim()){var e=parseFloat(this.getComputedStyleValue("--calculated-paper-radio-button-size").trim()),t=Math.floor(3*e);t%2!=e%2&&t++,this.updateStyles({"--paper-radio-button-ink-size":t+"px"})}}))}})},84281:function(e,t,n){"use strict";n(43437),n(8621),n(27662);var i=n(85753),o=n(11018),a=n(9672),r=n(50856);function s(){var e=function(e,t){t||(t=e.slice(0));return Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}(["\n <style>\n :host {\n display: inline-block;\n }\n\n :host ::slotted(*) {\n padding: var(--paper-radio-group-item-padding, 12px);\n }\n </style>\n\n <slot></slot>\n"]);return s=function(){return e},e}(0,a.k)({_template:(0,r.d)(s()),is:"paper-radio-group",behaviors:[i.E],hostAttributes:{role:"radiogroup"},properties:{attrForSelected:{type:String,value:"name"},selectedAttribute:{type:String,value:"checked"},selectable:{type:String,value:"paper-radio-button"},allowEmptySelection:{type:Boolean,value:!1}},select:function(e){var t=this._valueToItem(e);if(!t||!t.hasAttribute("disabled")){if(this.selected){var n=this._valueToItem(this.selected);if(this.selected==e){if(!this.allowEmptySelection)return void(n&&(n.checked=!0));e=""}n&&(n.checked=!1)}o.P.select.apply(this,[e]),this.fire("paper-radio-group-changed")}},_activateFocusedItem:function(){this._itemActivate(this._valueForItem(this.focusedItem),this.focusedItem)},_onUpKey:function(e){this._focusPrevious(),e.preventDefault(),this._activateFocusedItem()},_onDownKey:function(e){this._focusNext(),e.preventDefault(),this._activateFocusedItem()},_onLeftKey:function(e){i.I._onLeftKey.apply(this,arguments),this._activateFocusedItem()},_onRightKey:function(e){i.I._onRightKey.apply(this,arguments),this._activateFocusedItem()}})}}]);
//# sourceMappingURL=chunk.87defc566fab7dcc6bc2.js.map