UNPKG

iobroker.lovelace

Version:

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

2 lines 13.1 kB
(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([[947],{24381:function(e,t,n){"use strict";n.d(t,{Q:function(){return r}});var r=function(e,t){return e?t.map((function(t){return t in e.attributes?"has-"+t:""})).filter((function(e){return""!==e})).join(" "):""}},73139:function(e,t,n){"use strict";var r,o=n(50856),i=n(28426);n(16509),n(46998);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=p(e);if(t){var o=p(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return f(this,n)}}function f(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var d=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(f,e);var t,n,i,a=l(f);function f(){return c(this,f),a.apply(this,arguments)}return t=f,i=[{key:"template",get:function(){return(0,o.d)(r||(e=['\n <style>\n :host {\n display: block;\n }\n\n .title {\n margin: 5px 0 8px;\n color: var(--primary-text-color);\n }\n\n .slider-container {\n display: flex;\n }\n\n ha-icon {\n margin-top: 4px;\n color: var(--secondary-text-color);\n }\n\n ha-slider {\n flex-grow: 1;\n background-image: var(--ha-slider-background);\n border-radius: 4px;\n }\n </style>\n\n <div class="title">[[caption]]</div>\n <div class="extra-container"><slot name="extra"></slot></div>\n <div class="slider-container">\n <ha-icon icon="[[icon]]" hidden$="[[!icon]]"></ha-icon>\n <ha-slider\n min="[[min]]"\n max="[[max]]"\n step="[[step]]"\n pin="[[pin]]"\n disabled="[[disabled]]"\n value="{{value}}"\n ></ha-slider>\n </div>\n '],t||(t=e.slice(0)),r=Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))));var e,t}},{key:"properties",get:function(){return{caption:String,disabled:Boolean,min:Number,max:Number,pin:Boolean,step:Number,extra:{type:Boolean,value:!1},ignoreBarTouch:{type:Boolean,value:!0},icon:{type:String,value:""},value:{type:Number,notify:!0}}}}],(n=null)&&s(t.prototype,n),i&&s(t,i),f}(i.H3);customElements.define("ha-labeled-slider",d)},81303:function(e,t,n){"use strict";n(8878);function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t,n){return(a="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=l(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(n):o.value}})(e,t,n||e)}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=l(e);if(t){var o=l(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return u(this,n)}}function u(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(f,e);var t,n,r,u=s(f);function f(){return o(this,f),u.apply(this,arguments)}return t=f,(n=[{key:"ready",value:function(){var e=this;a(l(f.prototype),"ready",this).call(this),setTimeout((function(){"rtl"===window.getComputedStyle(e).direction&&(e.style.textAlign="right")}),100)}}])&&i(t.prototype,n),r&&i(t,r),f}(customElements.get("paper-dropdown-menu"));customElements.define("ha-paper-dropdown-menu",f)},947:function(e,t,n){"use strict";n.r(t);n(21157),n(53973),n(51095);var r,o=n(50856),i=n(28426),a=n(24381),c=n(40095),s=(n(31811),n(10983),n(73139),n(81303),n(43709),n(11052));function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function p(e,t){return(p=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=b(e);if(t){var o=b(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return y(this,n)}}function y(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function b(e){return(b=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var h=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&p(e,t)}(u,e);var t,n,i,s=d(u);function u(){return l(this,u),s.apply(this,arguments)}return t=u,i=[{key:"template",get:function(){return(0,o.d)(r||(e=['\n <style include="iron-flex"></style>\n <style>\n .container-preset_modes,\n .container-direction,\n .container-percentage,\n .container-oscillating {\n display: none;\n }\n\n .has-percentage .container-percentage,\n .has-preset_modes .container-preset_modes,\n .has-direction .container-direction,\n .has-oscillating .container-oscillating {\n display: block;\n }\n\n ha-paper-dropdown-menu {\n width: 100%;\n }\n\n paper-item {\n cursor: pointer;\n }\n </style>\n\n <div class$="[[computeClassNames(stateObj)]]">\n <div class="container-percentage">\n <ha-labeled-slider\n caption="[[localize(\'ui.card.fan.speed\')]]"\n min="0"\n max="100"\n step="[[computePercentageStepSize(stateObj)]]"\n value="{{percentageSliderValue}}"\n on-change="percentageChanged"\n pin=""\n extra=""\n ></ha-labeled-slider>\n </div>\n\n <div class="container-preset_modes">\n <ha-paper-dropdown-menu\n label-float=""\n dynamic-align=""\n label="[[localize(\'ui.card.fan.preset_mode\')]]"\n >\n <paper-listbox\n slot="dropdown-content"\n selected="[[stateObj.attributes.preset_mode]]"\n on-selected-changed="presetModeChanged"\n attr-for-selected="item-name"\n >\n <template\n is="dom-repeat"\n items="[[stateObj.attributes.preset_modes]]"\n >\n <paper-item item-name$="[[item]]">[[item]]</paper-item>\n </template>\n </paper-listbox>\n </ha-paper-dropdown-menu>\n </div>\n\n <div class="container-oscillating">\n <div class="center horizontal layout single-row">\n <div class="flex">[[localize(\'ui.card.fan.oscillate\')]]</div>\n <ha-switch\n checked="[[oscillationToggleChecked]]"\n on-change="oscillationToggleChanged"\n >\n </ha-switch>\n </div>\n </div>\n\n <div class="container-direction">\n <div class="direction">\n <div>[[localize(\'ui.card.fan.direction\')]]</div>\n <ha-icon-button\n icon="hass:rotate-left"\n on-click="onDirectionReverse"\n title="[[localize(\'ui.card.fan.reverse\')]]"\n disabled="[[computeIsRotatingReverse(stateObj)]]"\n ></ha-icon-button>\n <ha-icon-button\n icon="hass:rotate-right"\n on-click="onDirectionForward"\n title="[[localize(\'ui.card.fan.forward\')]]"\n disabled="[[computeIsRotatingForward(stateObj)]]"\n ></ha-icon-button>\n </div>\n </div>\n </div>\n\n <ha-attributes\n hass="[[hass]]"\n state-obj="[[stateObj]]"\n extra-filters="percentage_step,speed,preset_mode,preset_modes,speed_list,percentage,oscillating,direction"\n ></ha-attributes>\n '],t||(t=e.slice(0)),r=Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))));var e,t}},{key:"properties",get:function(){return{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},oscillationToggleChecked:{type:Boolean},percentageSliderValue:{type:Number}}}}],(n=[{key:"stateObjChanged",value:function(e,t){var n=this;e&&this.setProperties({oscillationToggleChecked:e.attributes.oscillating,percentageSliderValue:e.attributes.percentage}),t&&setTimeout((function(){n.fire("iron-resize")}),500)}},{key:"computePercentageStepSize",value:function(e){return e.attributes.percentage_step?e.attributes.percentage_step:1}},{key:"computeClassNames",value:function(e){return"more-info-fan "+((0,c.e)(e,1)?"has-percentage ":"")+(e.attributes.preset_modes&&e.attributes.preset_modes.length?"has-preset_modes ":"")+(0,a.Q)(e,["oscillating","direction"])}},{key:"presetModeChanged",value:function(e){var t=this.stateObj.attributes.preset_mode,n=e.detail.value;n&&t!==n&&this.hass.callService("fan","set_preset_mode",{entity_id:this.stateObj.entity_id,preset_mode:n})}},{key:"percentageChanged",value:function(e){var t=parseInt(this.stateObj.attributes.percentage,10),n=e.target.value;isNaN(n)||t===n||this.hass.callService("fan","set_percentage",{entity_id:this.stateObj.entity_id,percentage:n})}},{key:"oscillationToggleChanged",value:function(e){var t=this.stateObj.attributes.oscillating,n=e.target.checked;t!==n&&this.hass.callService("fan","oscillate",{entity_id:this.stateObj.entity_id,oscillating:n})}},{key:"onDirectionReverse",value:function(){this.hass.callService("fan","set_direction",{entity_id:this.stateObj.entity_id,direction:"reverse"})}},{key:"onDirectionForward",value:function(){this.hass.callService("fan","set_direction",{entity_id:this.stateObj.entity_id,direction:"forward"})}},{key:"computeIsRotatingReverse",value:function(e){return"reverse"===e.attributes.direction}},{key:"computeIsRotatingForward",value:function(e){return"forward"===e.attributes.direction}}])&&f(t.prototype,n),i&&f(t,i),u}((0,n(1265).Z)((0,s.I)(i.H3)));customElements.define("more-info-fan",h)}}]); //# sourceMappingURL=chunk.9cbd4283655ffc9c22cd.js.map