andrey-git / home-assistant-custom-ui

Custom UI elements for https://home-assistant.io
https://home-assistant.io
MIT License
528 stars 97 forks source link

0.84.1 :TypeError: The superclass is not an object. #162

Closed Mariusthvdb closed 5 years ago

Mariusthvdb commented 5 years ago

Checklist

Browser + Version: Mac Safari/Chrome/Firefox

CustomUI version: CustomUI: 20180831 Home Assistant release (hass --version): 0.84.1 + 0.84.2 Problem-relevant configuration.yaml entries:

no idea, just starts when using the new version (probably most when using a custom weather card in Lovelace)

sorry for the huge text log, but might be relevant to be complete. Problem-relevant Home Assistant log entries:

data:text/javascript;charset=utf-8,%2F*!%20For%20license%20information%
20please%20see%20scripts.js.LICENSE%20*%2F%0A!function(t)%7Bvar%20e%3D%
7B%7D%3Bfunction%20i(a)%7Bif(e%5Ba%5D)return%20e%5Ba%5D.exports%3Bvar%
20s%3De%5Ba%5D%3D%7Bi%3Aa%2Cl%3A!1%2Cexports%3A%7B%7D%7D%3Breturn%20t%
5Ba%5D.call(s.exports%2Cs%2Cs.exports%2Ci)%2Cs.l%3D!0%2Cs.exports%7Di.m%
3Dt%2Ci.c%3De%2Ci.d%3Dfunction(t%2Ce%2Ca)%7Bi.o(t%2Ce)%7C%7CObject.
defineProperty(t%2Ce%2C%7Bconfigurable%3A!1%2Cenumerable%3A!0%2Cget%3Aa%
7D)%7D%2Ci.r%3Dfunction(t)%7BObject.defineProperty(t%2C%22__esModule%22%
2C%7Bvalue%3A!0%7D)%7D%2Ci.n%3Dfunction(t)%7Bvar%20e%3Dt%26%26t.
__esModule%3Ffunction()%7Breturn%20t.default%7D%3Afunction()%7Breturn%
20t%7D%3Breturn%20i.d(e%2C%22a%22%2Ce)%2Ce%7D%2Ci.o%3Dfunction(t%2Ce)%
7Breturn%20Object.prototype.hasOwnProperty.call(t%2Ce)%7D%2Ci.p%3D%22%22
%2Ci(i.s%3D0)%7D(%5Bfunction(t%2Ce%2Ci)%7B%22use%20strict%22%3Bfunction%
20a(t%2Ce%2Ci)%7Bvar%20a%3Darguments.length%3E3%26%26void%200!%3D%
3Darguments%5B3%5D%26%26arguments%5B3%5D%3Bt._themes%7C%7C(t._themes%3D%
7B%7D)%3Bvar%20s%3De.default_theme%3B(%22default%22%3D%3D%3Di%7C%7Ci%26%
26e.themes%5Bi%5D)%26%26(s%3Di)%3Bvar%20n%3DObject.assign(%7B%7D%2Ct.
_themes)%3Bif(%22default%22!%3D%3Ds)%7Bvar%20o%3De.themes%5Bs%5D%
3BObject.keys(o).forEach(e%3D%3E%7Bvar%20i%3D%22--%22%2Be%3Bt._themes%
5Bi%5D%3D%22%22%2Cn%5Bi%5D%3Do%5Be%5D%7D)%7Dif(t.updateStyles%3Ft.
updateStyles(n)%3Awindow.ShadyCSS%26%26window.ShadyCSS.styleSubtree(t%
2Cn)%2Ca)%7Bvar%20r%3Ddocument.querySelector(%22meta%5Bname%3Dtheme-
color%5D%22)%3Bif(r)%7Br.hasAttribute(%22default-content%22)%7C%7Cr.
setAttribute(%22default-content%22%2Cr.getAttribute(%22content%22))%
3Bvar%20l%3Dn%5B%22--primary-color%22%5D%7C%7Cr.getAttribute(%22default-
content%22)%3Br.setAttribute(%22content%22%2Cl)%7D%7D%7Dfunction%20s(t)%
7Breturn%20t.substr(0%2Ct.indexOf(%22.%22))%7Dfunction%20n(t)%7Breturn%
20s(t.entity_id)%7Dfunction%20o(t%2Ce%2Ci)%7Bvar%20a%3Dt%2Cs%3Dvoid%200%
3Ba.lastChild%26%26a.lastChild.tagName%3D%3D%3De%3Fs%3Da.lastChild%3A(a.
lastChild%26%26a.removeChild(a.lastChild)%2Cs%3Ddocument.createElement(e
.toLowerCase()))%2Cs.setProperties%3Fs.setProperties(i)%3AObject.keys(i)
.forEach(t%3D%3E%7Bs%5Bt%5D%3Di%5Bt%5D%7D)%2Cnull%3D%3D%3Ds.parentNode%
26%26a.appendChild(s)%7Di.r(e)%3Bvar%20r%3D%5B%22climate%22%2C%22cover%
22%2C%22configurator%22%2C%22input_select%22%2C%22input_number%22%2C%
22input_text%22%2C%22lock%22%2C%22media_player%22%2C%22scene%22%2C%
22script%22%2C%22timer%22%2C%22vacuum%22%2C%22weblink%22%5D%3Bnew%20Set(
%5B%22fan%22%2C%22input_boolean%22%2C%22light%22%2C%22switch%22%5D)%2Ci(
1)%3Bclass%20l%7Bconstructor(t)%7Bthis.value%3Dt.toString()%7DtoString()
%7Breturn%20this.value%7D%7Dvar%20d%3Dfunction(t)%7Bfor(var%20e%
3Ddocument.createElement(%22template%22)%2Ci%3Darguments.length%2Ca%
3DArray(i%3E1%3Fi-1%3A0)%2Cs%3D1%3Bs%3Ci%3Bs%2B%2B)a%5Bs-1%5D%
3Darguments%5Bs%5D%3Breturn%20e.innerHTML%3Da.reduce((e%2Ci%2Ca)%3D%3Ee%
2Bfunction(t)%7Bif(t%20instanceof%20HTMLTemplateElement)return%20t.
innerHTML%3Bif(t%20instanceof%20l)return%20function(t)%7Bif(t%
20instanceof%20l)return%20t.value%3Bthrow%20new%20Error(%60non-literal%
20value%20passed%20to%20Polymer's%20htmlLiteral%20function%3A%20%24%7Bt%
7D%60)%7D(t)%3Bthrow%20new%20Error(%60non-template%20value%20passed%20to
%20Polymer's%20html%20function%3A%20%24%7Bt%7D%60)%7D(i)%2Bt%5Ba%2B1%5D%
2Ct%5B0%5D)%2Ce%7D%2Cc%3Dt%3D%3E(class%20extends%20t%7Bfire(t)%7Bvar%20e
%3Darguments.length%3E1%26%26void%200!%3D%3Darguments%5B1%5D%3Farguments
%5B1%5D%3A%7B%7D%2Ci%3Darguments.length%3E2%26%26void%200!%3D%
3Darguments%5B2%5D%3Farguments%5B2%5D%3A%7B%7D%2Ca%3Dnew%20Event(t%2C%
7Bbubbles%3Avoid%200%3D%3D%3Di.bubbles%7C%7Ci.bubbles%2Ccancelable%
3ABoolean(i.cancelable)%2Ccomposed%3Avoid%200%3D%3D%3Di.composed%7C%7Ci.
composed%7D)%3Breturn%20a.detail%3De%2C(i.node%7C%7Cthis).dispatchEvent(
a)%2Ca%7D%7D)%3BcustomElements.define(%22ha-config-custom-ui%22%2Cclass%
20extends(c(Polymer.Element))%7Bstatic%20get%20template()%7Breturn%20d%
60%0A%20%20%20%20%3Cstyle%20include%3D%22ha-style%22%3E%3C%2Fstyle%3E%0A
%20%20%20%20%3Capp-header-layout%20has-scrolling-region%3E%0A%20%20%20%
20%20%20%3Capp-header%20slot%3D%22header%22%20fixed%3E%0A%20%20%20%20%20
%20%20%20%3Capp-toolbar%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpaper-icon
-button%0A%20%20%20%20%20%20%20%20%20%20%20%20icon%3D'mdi%3Aarrow-left'%
0A%20%20%20%20%20%20%20%20%20%20%20%20on-click%3D'_backHandler'%0A%20%20
%20%20%20%20%20%20%20%20%3E%3C%2Fpaper-icon-button%3E%0A%20%20%20%20%20%
20%20%20%20%20%3Cdiv%20main-title%3ECustom%20UI%20settings%3C%2Fdiv%3E%
0A%20%20%20%20%20%20%20%20%3C%2Fapp-toolbar%3E%0A%20%20%20%20%20%20%3C%
2Fapp-header%3E%0A%0A%20%20%20%20%20%20%3Cha-config-section%20is-wide%3D
'%5B%5BisWide%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%3Cpaper-card%
20heading%3D'Device%20name'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdiv%
20class%3D'card-content'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20Set%
20device%20name%20so%20that%20you%20can%20reference%20it%20in%20per-
device%20settings%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cpaper-input%
0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20label%3D'Name'%0A%20%20%20%
20%20%20%20%20%20%20%20%20%20%20value%3D'%7B%7Bname%7D%7D'%0A%20%20%20%
20%20%20%20%20%20%20%20%20%3E%3C%2Fpaper-input%3E%0A%20%20%20%20%20%20%
20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3C%2Fpaper-card%3E%0A
%20%20%20%20%20%20%3C%2Fha-config-section%3E%0A%20%20%20%20%3C%2Fapp-
header-layout%3E%0A%20%20%20%20%60%7Dstatic%20get%20properties()%
7Breturn%7BisWide%3ABoolean%2Cname%3A%7Btype%3AString%2Cobserver%3A%
22nameChanged%22%7D%7D%7Dready()%7Bsuper.ready()%2Cthis.name%3Dwindow.
customUI.getName()%7DnameChanged(t)%7Bwindow.customUI.setName(t)%
7D_backHandler()%7Bwindow.history.back()%2Cthis.fire(%22location-changed
%22)%7D%7D)%3Bvar%20u%3D%7BDOMAIN_DEVICE_CLASS%3A%7Bbinary_sensor%3A%5B%
22battery%22%2C%22cold%22%2C%22connectivity%22%2C%22door%22%2C%
22garage_door%22%2C%22gas%22%2C%22heat%22%2C%22light%22%2C%22lock%22%2C%
22moisture%22%2C%22motion%22%2C%22moving%22%2C%22occupancy%22%2C%
22opening%22%2C%22plug%22%2C%22power%22%2C%22presence%22%2C%22problem%22
%2C%22safety%22%2C%22smoke%22%2C%22sound%22%2C%22vibration%22%2C%
22window%22%5D%2Ccover%3A%5B%22garage%22%5D%2Csensor%3A%5B%22battery%22%
2C%22humidity%22%2C%22illuminance%22%2C%22temperature%22%5D%7D%
2CUNKNOWN_TYPE%3A%22json%22%2CADD_TYPE%3A%22key-value%22%2CTYPE_TO_TAG%
3A%7Bstring%3A%22ha-customize-string%22%2Cjson%3A%22ha-customize-string%
22%2Cicon%3A%22ha-customize-icon%22%2Cboolean%3A%22ha-customize-boolean%
22%2Carray%3A%22ha-customize-array%22%2C%22key-value%22%3A%22ha-
customize-key-value%22%7D%7D%3Bu.LOGIC_STATE_ATTRIBUTES%3Du.
LOGIC_STATE_ATTRIBUTES%7C%7C%7Bentity_picture%3Avoid%200%2Cfriendly_name
%3A%7Btype%3A%22string%22%2Cdescription%3A%22Name%22%7D%2Cicon%3A%7Btype
%3A%22icon%22%7D%2Cemulated_hue%3A%7Btype%3A%22boolean%22%2Cdomains%3A%
5B%22emulated_hue%22%5D%7D%2Cemulated_hue_name%3A%7Btype%3A%22string%22%
2Cdomains%3A%5B%22emulated_hue%22%5D%7D%2Chaaska_hidden%3Avoid%200%
2Chaaska_name%3Avoid%200%2Chomebridge_hidden%3A%7Btype%3A%22boolean%22%
7D%2Chomebridge_name%3A%7Btype%3A%22string%22%7D%2Csupported_features%
3Avoid%200%2Cattribution%3Avoid%200%2Ccustom_ui_more_info%3A%7Btype%3A%
22string%22%7D%2Ccustom_ui_state_card%3A%7Btype%3A%22string%22%7D%
2Cdevice_class%3A%7Btype%3A%22array%22%2Coptions%3Au.DOMAIN_DEVICE_CLASS
%2Cdescription%3A%22Device%20class%22%2Cdomains%3A%5B%22binary_sensor%22
%2C%22cover%22%2C%22sensor%22%5D%7D%2Chidden%3A%7Btype%3A%22boolean%22%
2Cdescription%3A%22Hide%20from%20UI%22%7D%2Cassumed_state%3A%7Btype%3A%
22boolean%22%2Cdomains%3A%5B%22switch%22%2C%22light%22%2C%22cover%22%2C%
22climate%22%2C%22fan%22%2C%22group%22%5D%7D%2Cinitial_state%3A%7Btype%
3A%22string%22%2Cdomains%3A%5B%22automation%22%5D%7D%
2Cunit_of_measurement%3A%7Btype%3A%22string%22%7D%7D%3Bvar%20m%3Du%
3Bwindow.hassAttributeUtil%3Dwindow.hassAttributeUtil%7C%7C%7B%7D%3Bvar%
20h%3D%5B%22single-line%22%2C%22break-slider%22%2C%22break-slider-toggle
%22%2C%22hide-slider%22%2C%22no-slider%22%5D%2Cp%3D%7Bgroup%3Avoid%200%
2Cdevice%3Avoid%200%2Ctemplates%3Avoid%200%2Cstate%3Avoid%200%
2C_stateDisplay%3Avoid%200%2Ccontrol_element%3A%7Btype%3A%22string%22%7D
%2Cstate_card_mode%3A%7Btype%3A%22array%22%2Coptions%3A%7Blight%3Ah.
concat(%22badges%22)%2Ccover%3Ah.concat(%22badges%22)%2Cclimate%3Ah.
concat(%22badges%22)%2C%22*%22%3A%5B%22badges%22%5D%7D%7D%
2Cstate_card_custom_ui_secondary%3A%7Btype%3A%22string%22%7D%
2Cbadges_list%3A%7Btype%3A%22json%22%7D%2Cshow_last_changed%3A%7Btype%3A
%22boolean%22%7D%2Chide_control%3A%7Btype%3A%22boolean%22%7D%
2Cextra_data_template%3A%7Btype%3A%22string%22%7D%2Cextra_badge%3A%
7Btype%3A%22json%22%7D%2Cstretch_slider%3A%7Btype%3A%22boolean%22%7D%
2Cslider_theme%3A%7Btype%3A%22json%22%7D%2Ctheme%3A%7Btype%3A%22string%
22%7D%2Cconfirm_controls%3A%7Btype%3A%22boolean%22%7D%
2Cconfirm_controls_show_lock%3A%7Btype%3A%22boolean%22%7D%
2Chide_in_default_view%3A%7Btype%3A%22boolean%22%7D%2Cicon_color%3A%
7Btype%3A%22string%22%7D%7D%3Bwindow.hassAttributeUtil.
LOGIC_STATE_ATTRIBUTES%3Dm.LOGIC_STATE_ATTRIBUTES%2Cwindow.
hassAttributeUtil.UNKNOWN_TYPE%3Dm.UNKNOWN_TYPE%2CObject.assign(window.
hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%2Cp)%2Cwindow.customUI%3Dwindow
.customUI%7C%7C%7BSUPPORTED_SLIDER_MODES%3A%5B%22single-line%22%2C%
22break-slider%22%2C%22break-slider-toggle%22%2C%22hide-slider%22%2C%
22no-slider%22%5D%2CdomHost(t)%7Bif(t%3D%3D%3Ddocument)return%20null%
3Bvar%20e%3Dt.getRootNode()%3Breturn%20e%20instanceof%20DocumentFragment
%3Fe.host%3Ae%7D%2ClightOrShadow%3A(t%2Ce)%3D%3Et.shadowRoot%3Ft.
shadowRoot.querySelector(e)%3At.querySelector(e)%2CgetElementHierarchy(t
%2Ce)%7Bif(null%3D%3D%3Dt)return%20null%3Bvar%20i%3De.shift()%3Breturn%
20i%3Fwindow.customUI.getElementHierarchy(window.customUI.lightOrShadow(
t%2Ci)%2Ce)%3At%7D%2CgetContext(t)%7Bif(void%200%3D%3D%3Dt._context)%7Bt
._context%3D%5B%5D%3Bfor(var%20e%3D%22HA-ENTITIES-CARD%22%3D%3D%3Dt.
tagName%3Fwindow.customUI.domHost(t)%3At%3Be%3Be%3Dwindow.customUI.
domHost(e))switch(e.tagName)%7Bcase%22HA-ENTITIES-CARD%22%3Ae.
groupEntity%3Ft._context.push(e.groupEntity.entity_id)%3A!1%3D%3D%3De.
groupEntity%26%26e.states%26%26e.states.length%26%26t._context.push(%
60group.%24%7Bn(e.states%5B0%5D)%7D%60)%3Bbreak%3Bcase%22MORE-INFO-GROUP
%22%3Acase%22STATE-CARD-CONTENT%22%3Ae.stateObj%26%26t._context.push(e.
stateObj.entity_id)%3Bbreak%3Bcase%22HA-CARDS%22%3At._context.push(e.
getAttribute(%22data-view%22)%7C%7C%22default_view%22)%7Dt._context.
reverse()%7Dreturn%20t._context%7D%2CfindMatch%3A(t%2Ce)%3D%3Ee%3Fe%5Bt%
5D%3Ft%3AObject.keys(e).find(e%3D%3Et.match(%60%5E%24%7Be%7D%24%60))%
3Anull%2CmaybeChangeObjectByDevice(t)%7Bvar%20e%3Dwindow.customUI.
getName()%3Bif(!e)return%20t%3Bvar%20i%3Dthis.findMatch(e%2Ct.attributes
.device)%3Bif(!i)return%20t%3Bvar%20a%3DObject.assign(%7B%7D%2Ct.
attributes.device%5Bi%5D)%3Breturn%20Object.keys(a).length%3Fwindow.
customUI.applyAttributes(t%2Ca)%3At%7D%2CmaybeChangeObjectByGroup(t%2Ce)
%7Bvar%20i%3Dwindow.customUI.getContext(t)%3Bif(!i)return%20e%3Bif(!e.
attributes.group)return%20e%3Bvar%20a%3D%7B%7D%3Breturn%20i.forEach(t%3D
%3E%7Bvar%20i%3Dthis.findMatch(t%2Ce.attributes.group)%3Be.attributes.
group%5Bi%5D%26%26Object.assign(a%2Ce.attributes.group%5Bi%5D)%7D)%
2CObject.keys(a).length%3Fwindow.customUI.applyAttributes(e%2Ca)%3Ae%7D%
2C_setKeep(t%2Ce)%7Bvoid%200%3D%3D%3Dt._cui_keep%3Ft._cui_keep%3De%3At.
_cui_keep%3Dt._cui_keep%26%26e%7D%2CmaybeApplyTemplateAttributes(t%2Ce%
2Ci%2Ca)%7Bif(!a.templates)return%20window.customUI._setKeep(i%2C!0)%2Ci
%3Bvar%20s%3D%7B%7D%2Cn%3D!1%2Co%3D!1%3Bif(Object.keys(a.templates).
forEach(r%3D%3E%7Bvar%20l%3Da.templates%5Br%5D%3Bl.match(%2F%5Cb(
entities%7Chass)%5Cb%2F)%26%26(n%3D!0)%3Bvar%20d%3Dwindow.customUI.
computeTemplate(l%2Ct%2Ce%2Ci%2Ca%2Ci.untemplated_attributes%26%26i.
untemplated_attributes%5Br%5D%7C%7Ca%5Br%5D%2Ci.untemplated_state%7C%7Ci
.state)%3Bnull!%3D%3Dd%26%26(s%5Br%5D%3Dd%2C%22state%22%3D%3D%3Dr%3Fd!%
3D%3Di.state%26%26(o%3D!0)%3A%22_stateDisplay%22%3D%3D%3Dr%3Fd!%3D%3Di.
_stateDisplay%26%26(o%3D!0)%3Ad!%3D%3Da%5Br%5D%26%26(o%3D!0))%7D)%
2Cwindow.customUI._setKeep(i%2C!n)%2C!o)return%20i%3Bif(i.attributes%3D%
3D%3Da)%7Bvar%20r%3Dwindow.customUI.applyAttributes(i%2Cs)%3Breturn%
20Object.prototype.hasOwnProperty.call(s%2C%22state%22)%26%26null!%3D%
3Ds.state%26%26(r.state%3DString(s.state)%2Cr.untemplated_state%3Di.
state)%2CObject.prototype.hasOwnProperty.call(s%2C%22_stateDisplay%22)%
26%26(r._stateDisplay%3Ds._stateDisplay%2Cr.untemplated_stateDisplay%3Di
._stateDisplay)%2Cwindow.customUI._setKeep(r%2C!n)%2Cr%7Dreturn%20Object
.assign(%7B%7D%2Ci)%7D%2CmaybeApplyTemplates(t%2Ce%2Ci)%7Bvar%20a%
3Dwindow.customUI.maybeApplyTemplateAttributes(t%2Ce%2Ci%2Ci.attributes)
%2Cs%3Da!%3D%3Di%3Bfunction%20n(i)%7Bi%26%26(Object.values(i).forEach(i%
3D%3E%7Bvar%20n%3Dwindow.customUI.maybeApplyTemplateAttributes(t%2Ce%2Ca
%2Ci)%3Bs%7C%3Dn!%3D%3Da%7D)%2Cn(i.device)%2Cn(i.group))%7Dreturn%20n(i.
attributes.device)%2Cn(i.attributes.group)%2Ca!%3D%3Di%3Fa%3As%3FObject.
assign(%7B%7D%2Ci)%3Ai%7D%2CapplyAttributes%3A(t%2Ce)%3D%3E(%7Bentity_id
%3At.entity_id%2Cstate%3At.state%2Cattributes%3AObject.assign(%7B%7D%2Ct
.attributes%2Ce)%2Cuntemplated_attributes%3At.attributes%2Clast_changed%
3At.last_changed%7D)%2CmaybeChangeObject(t%2Ce%2Ci%2Ca)%7Bif(i)return%
20e%3Bvar%20s%3Dwindow.customUI.maybeChangeObjectByDevice(e)%3Breturn%
20s%3Dwindow.customUI.maybeChangeObjectByGroup(t%2Cs)%2C(s%3Dwindow.
customUI.maybeApplyTemplateAttributes(t.hass%2Ct.hass.states%2Cs%2Cs.
attributes))!%3D%3De%26%26s.attributes.hidden%26%26a%3Fnull%3As%7D%
2CfixGroupTitles()%7Bvar%20t%3Dwindow.customUI.getElementHierarchy(
document%2C%5B%22home-assistant%22%2C%22home-assistant-main%22%5D)%3Bif(
null!%3D%3Dt)%7Bvar%20e%3Dwindow.customUI.getElementHierarchy(t%2C%5B%
22partial-cards%22%2C%22ha-cards%5Bview-visible%5D%22%5D)%3Bnull!%3D%3De
%26%26(window.customUI.lightOrShadow(e%2C%22.main%22)%7C%7Ce.%24.main).
querySelectorAll(%22ha-entities-card%22).forEach(t%3D%3E%7Bif(t.
groupEntity)%7Bvar%20e%3Dwindow.customUI.maybeChangeObject(t%2Ct.
groupEntity%2C!1%2C!1)%3Be!%3D%3Dt.groupEntity%26%26e.attributes.
friendly_name%26%26(window.customUI.lightOrShadow(t%2C%22.name%22).
textContent%3De.attributes.friendly_name)%7D%7D)%7Delse%20window.
setTimeout(window.customUI.fixGroupTitles%2C1e3)%7D%2CcontrolColumns(t)%
7Bvar%20e%3Dwindow.customUI.getElementHierarchy(document%2C%5B%22home-
assistant%22%2C%22home-assistant-main%22%2C%22partial-cards%22%5D)%3Bif(
null!%3D%3De)%7Bvar%20i%3De.handleWindowChange%7C%7Ce._updateColumns%3Be
.mqls.forEach(t%3D%3E%7Bt.removeListener(i)%7D)%2Ce.mqls%3Dt.map(t%3D%3E
%7Bvar%20e%3Dwindow.matchMedia(%60(min-width%3A%20%24%7Bt%7Dpx)%60)%
3Breturn%20e.addListener(i)%2Ce%7D)%2Ci()%7Delse%20window.setTimeout(
window.customUI.controlColumns.bind(null%2Ct)%2C1e3)%7D%2CuseCustomizer(
)%7Bvar%20t%3Dwindow.customUI.lightOrShadow(document%2C%22home-assistant
%22).hass.states%5B%22customizer.customizer%22%5D%3Bt%26%26(t.attributes
.columns%26%26window.customUI.controlColumns(t.attributes.columns)%2Ct.
attributes.hide_attributes%26%26window.hassAttributeUtil%26%26window.
hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%26%26t.attributes.
hide_attributes.forEach(t%3D%3E%7BObject.prototype.hasOwnProperty.call(
window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%2Ct)%7C%7C(window.
hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%5Bt%5D%3Dvoid%200)%7D))%7D%
2CupdateConfigPanel()%7Bif(window.location.pathname.startsWith(%22%
2Fconfig%22))%7Bvar%20t%3Dwindow.customUI.getElementHierarchy(document%
2C%5B%22home-assistant%22%2C%22home-assistant-main%22%2C%22partial-panel
-resolver%22%2C%22ha-panel-config%22%5D)%3Bif(t)%7Bvar%20e%3Dwindow.
customUI.getElementHierarchy(t%2C%5B%22ha-config-dashboard%22%2C%22ha-
config-navigation%22%5D)%3Be%26%26(e.localize%26%26!e.cuiPatch%26%26(e.
cuiPatch%3D!0%2Ce._originalComputeLoaded%3De._computeLoaded%2Ce.
_originalComputeCaption%3De._computeCaption%2Ce.
_originalComputeDescription%3De._computeDescription%2Ce._computeLoaded%
3D((t%2Ci)%3D%3E%22customui%22%3D%3D%3Di%7C%7Ce._originalComputeLoaded(t
%2Ci))%2Ce._computeCaption%3D((t%2Ci)%3D%3E%22customui%22%3D%3D%3Dt%3F%
22Custom%20UI%22%3Ae._originalComputeCaption(t%2Ci))%2Ce.
_computeDescription%3D((t%2Ci)%3D%3E%22customui%22%3D%3D%3Dt%3F%22SetUI%
20tweaks%22%3Ae._originalComputeDescription(t%2Ci)))%2Ce.pages.some(t%3D
%3E%22customui%22%3D%3D%3Dt%7C%7C%22customui%22%3D%3D%3Dt.domain)%7C%7Ce
.push(%22pages%22%2Ce.localize%3F%22customui%22%3A%7Bdomain%3A%
22customui%22%2Ccaption%3A%22Custom%20UI%22%2Cdescription%3A%22Set%20UI%
20tweaks.%22%2Cloaded%3A!0%7D))%3Bvar%20i%3D()%3D%3E%7Bvar%20e%
3Ddocument.createElement(%22ha-config-custom-ui%22)%3Breturn%20e.isWide%
3Dt.isWide%2Ce.setAttribute(%22page-name%22%2C%22customui%22)%2Ce%7D%2Ca
%3Dwindow.customUI.lightOrShadow(t%2C%22iron-pages%22)%3Bif(a)%7Bif(%
22HA-CONFIG-CUSTOM-UI%22!%3D%3Da.lastElementChild.tagName)%7Bvar%20s%3Di
()%3Ba.appendChild(s)%2Ca.addEventListener(%22iron-items-changed%22%2C()
%3D%3E%7Bwindow.location.pathname.startsWith(%22%2Fconfig%2Fcustomui%22)
%26%26a.select(%22customui%22)%7D)%7D%7Delse%7Bvar%20n%3Dt.shadowRoot%7C
%7Ct%3Bif(%22HA-CONFIG-CUSTOM-UI%22!%3D%3Dn.lastElementChild.tagName)%
7Bvar%20o%3Di()%3Bn.appendChild(o)%7Dvar%20r%3Dwindow.location.pathname.
startsWith(%22%2Fconfig%2Fcustomui%22)%3Bn.lastElementChild.style.
display%3Dr%3F%22%22%3A%22none%22%7D%7Delse%20window.setTimeout(window.
customUI.updateConfigPanel%2C100)%7D%7D%2CinstallStatesHook()%
7BcustomElements.whenDefined(%22home-assistant%22).then(()%3D%3E%7Bvar%
20t%3DcustomElements.get(%22home-assistant%22)%3Bif(t%26%26t.prototype.
_updateHass)%7Bvar%20e%3Dt.prototype._updateHass%3Bt.prototype.
_updateHass%3Dfunction(t)%7Bvar%20i%3Dthis.hass%3Bt.states%26%26Object.
keys(t.states).forEach(e%3D%3E%7Bvar%20a%3Dt.states%5Be%5D%3Bif(!a.
_cui_keep)%7Bvar%20s%3Dwindow.customUI.maybeApplyTemplates(i%2Ct.states%
2Ca)%3Bi.states%26%26a!%3D%3Di.states%5Be%5D%3Ft.states%5Be%5D%3Ds%3Aa!%
3D%3Ds%26%26(t.states%5Be%5D%3Ds)%7D%7D)%2Ce.call(this%2Ct)%2Ct.themes%
26%26i._themeWaiters%26%26(i._themeWaiters.forEach(t%3D%3Et.stateChanged
(t.state))%2Ci._themeWaiters%3Dvoid%200)%7D%3Bvar%20i%3Dwindow.customUI.
lightOrShadow(document%2C%22home-assistant%22)%3Bi.hass%26%26i.hass.
states%26%26i._updateHass(%7Bstates%3Ai.hass.states%7D)%7D%7D)%7D%
2CinstallPartialCards()%7Bvar%20t%3BcustomElements.whenDefined(%
22partial-cards%22).then(()%3D%3E%7Bvar%20e%3DcustomElements.get(%
22partial-cards%22)%3Be%26%26e.prototype._defaultViewFilter%26%26(e.
prototype._defaultViewFilter%3D((e%2Ci)%3D%3E%7Bif(e.states%5Bi%5D.
attributes.hidden)return!1%3Bvar%20a%3D%7B%7D%3Breturn%20Object.values(e
.states).forEach(i%3D%3E%7Bif(i.attributes%26%26i.attributes.
hide_in_default_view)%7Bvar%20n%3Di.entity_id%3Bif(a%5Bn%5D)return%3Bif(
a%5Bn%5D%3Di%2Ci.attributes.view)%7Bvar%20o%3D(t%3De.states%2Co%3D%7B%7D
%2Ci.attributes.entity_id.forEach(e%3D%3E%7Bvar%20i%3Dt%5Be%5D%3Bif(i%26
%26!i.attributes.hidden%26%26(o%5Bi.entity_id%5D%3Di%2C%22group%22%3D%3D
%3Ds(i.entity_id)))%7Bvar%20a%3Dfunction(t%2Ce)%7Bvar%20a%3D%7B%7D%
3Breturn%20i.attributes.entity_id.forEach(e%3D%3E%7Bvar%20i%3Dt%5Be%5D%
3Bi%26%26(a%5Bi.entity_id%5D%3Di)%7D)%2Ca%7D(t)%3BObject.keys(a).forEach
(t%3D%3E%7Bvar%20e%3Da%5Bt%5D%3Be.attributes.hidden%7C%7C(o%5Bt%5D%3De)%
7D)%7D%7D)%2Co)%3BObject.keys(o).filter(t%3D%3E!1!%3D%3Do%5Bt%5D.
attributes.hide_in_default_view).forEach(t%3D%3E%7Ba%5Bt%5D%3Do%5Bt%5D%
7D)%7D%7D%7D)%2C!a%5Bi%5D%7D))%7D)%7D%2CinstallActionName(t)%
7BcustomElements.whenDefined(t).then(()%3D%3E%7Bvar%20e%3DcustomElements
.get(t)%3Be%26%26e.prototype%26%26Object.defineProperty(e.prototype%2C%
22localize%22%2C%7Bget%3A()%3D%3E(function(t)%7Breturn%20this.stateObj%
26%26this.stateObj.attributes%26%26this.stateObj.attributes.action_name%
3Fthis.stateObj.attributes.action_name%3Athis.__data.localize(t)%7D)%
2Cset()%7B%7D%7D)%7D)%7D%2CinstallHaStateLabelBadge()%7BcustomElements.
whenDefined(%22ha-state-label-badge%22).then(()%3D%3E%7Bvar%20t%
3DcustomElements.get(%22ha-state-label-badge%22)%3Bt%26%26t.prototype.
stateChanged%26%26(t.prototype.stateChanged%3Dfunction(t)%7Bt.attributes
.theme%26%26(null%3D%3D%3Dthis.hass.themes%3F(this.hass._themeWaiters%
3Dthis.hass._themeWaiters%7C%7C%5B%5D%2Cthis.hass._themeWaiters.push(
this))%3Aa(this%2Cthis.hass.themes%7C%7C%7Bdefault_theme%3A%22default%22
%2Cthemes%3A%7B%7D%7D%2Ct.attributes.theme%7C%7C%22default%22))%2Cthis.
updateStyles()%2Cthis.startInterval%26%26this.startInterval(t)%7D)%7D)%
7D%2CinstallStateBadge()%7BcustomElements.whenDefined(%22state-badge%22)
.then(()%3D%3E%7Bvar%20t%3DcustomElements.get(%22state-badge%22)%3Bif(t%
26%26t.prototype._updateIconAppearance)%7Bvar%20e%3Dt.prototype.
_updateIconAppearance%3Bt.prototype._updateIconAppearance%3Dfunction(t)%
7Bt.attributes.icon_color%26%26!t.attributes.entity_picture%3F(this.
style.backgroundImage%3D%22%22%2CObject.assign(this.%24.icon.style%2C%
7Bcolor%3At.attributes.icon_color%2Cfilter%3A%22%22%7D))%3Ae.call(this%
2Ct)%7D%7D%7D)%7D%2CinstallHaAttributes()%7BcustomElements.whenDefined(%
22ha-attributes%22).then(()%3D%3E%7Bvar%20t%3DcustomElements.get(%22ha-
attributes%22)%3Bt%26%26t.prototype.computeFiltersArray%26%26window.
hassAttributeUtil%26%26(t.prototype.computeFiltersArray%3Dfunction(t)%
7Breturn%20Object.keys(window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES).
concat(t%3Ft.split(%22%2C%22)%3A%5B%5D)%7D)%7D)%7D%
2CinstallHaFormCustomize()%7Bwindow.location.pathname.startsWith(%22%
2Fconfig%22)%26%26customElements.whenDefined(%22ha-form-customize%22).
then(()%3D%3E%7Bvar%20t%3DcustomElements.get(%22ha-form-customize%22)%
3Bt%3Fwindow.customUI.haFormCustomizeInitDone%7C%7C(window.customUI.
haFormCustomizeInitDone%3D!0%2Cwindow.hassAttributeUtil%26%26(t.
prototype._computeSingleAttribute%26%26(t.prototype.
_computeSingleAttribute%3Dfunction(t%2Ce%2Ci)%7Bvar%20a%3Dwindow.
hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%5Bt%5D%7C%7C%7Btype%3Awindow.
hassAttributeUtil.UNKNOWN_TYPE%7D%3Breturn%20this._initOpenObject(t%2C%
22json%22%3D%3D%3Da.type%3FJSON.stringify(e)%3Ae%2Ci%2Ca)%7D)%2Ct.
prototype.getNewAttributesOptions%26%26(t.prototype.
getNewAttributesOptions%3Dfunction(t%2Ce%2Ci%2Ca)%7Breturn%20Object.keys
(window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES).filter(t%3D%3E%7Bvar%
20e%3Dwindow.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%5Bt%5D%3Breturn%
20e%26%26(!e.domains%7C%7C!this.entity%7C%7Ce.domains.includes(n(this.
entity)))%7D).filter(this.filterFromAttributes(t)).filter(this.
filterFromAttributes(e)).filter(this.filterFromAttributes(i)).filter(
this.filterFromAttributes(a)).sort().concat(%22Other%22)%7D)))%3Awindow.
setTimeout(window.customUI.installHaFormCustomize%2C100)%7D)%7D%
2CinstallClassHooks()%7Bwindow.customUI.classInitDone%7C%7C(window.
customUI.classInitDone%3D!0%2Cwindow.customUI.installPartialCards()%
2Cwindow.customUI.installStatesHook()%2Cwindow.customUI.
installHaStateLabelBadge()%2Cwindow.customUI.installStateBadge()%
2Cwindow.customUI.installHaAttributes()%2Cwindow.customUI.
installActionName(%22state-card-scene%22)%2Cwindow.customUI.
installActionName(%22state-card-script%22))%7D%2Cinit()%7Bif(!window.
customUI.initDone)%7Bwindow.customUI.installClassHooks()%3Bvar%20t%
3Dwindow.customUI.lightOrShadow(document%2C%22home-assistant%22)%3Bt.
hass%26%26t.hass.states%3F(window.customUI.initDone%3D!0%2Cwindow.
customUI.useCustomizer()%2Cwindow.customUI.runHooks()%2Cwindow.
addEventListener(%22location-changed%22%2Cwindow.setTimeout.bind(null%
2Cwindow.customUI.runHooks%2C100))%2Cconsole.log(%22Loaded%20CustomUI%
2020180831%22)%2Cwindow.CUSTOM_UI_LIST%7C%7C(window.CUSTOM_UI_LIST%3D%5B
%5D)%2Cwindow.CUSTOM_UI_LIST.push(%7Bname%3A%22CustomUI%22%2Cversion%3A%
2220180831%22%2Curl%3A%22https%3A%2F%2Fgithub.com%2Fandrey-git%2Fhome-
assistant-custom-ui%22%7D))%3Awindow.setTimeout(window.customUI.init%
2C1e3)%7D%7D%2CrunHooks()%7Bwindow.customUI.fixGroupTitles()%2Cwindow.
customUI.updateConfigPanel()%2Cwindow.customUI.installHaFormCustomize()%
7D%2CgetName%3A()%3D%3Ewindow.localStorage.getItem(%22ha-device-name%22)
%7C%7C%22%22%2CsetName(t)%7Bwindow.localStorage.setItem(%22ha-device-
name%22%2Ct%7C%7C%22%22)%7D%2CcomputeTemplate(t%2Ce%2Ci%2Ca%2Cs%2Cn%2Co)
%7Bvar%20r%3Dt.indexOf(%22return%22)%3E%3D0%3Ft%3A%60return%20%5C%60%24%
7Bt%7D%5C%60%3B%60%3Btry%7Breturn%20new%20Function(%22hass%22%2C%
22entities%22%2C%22entity%22%2C%22attributes%22%2C%22attribute%22%2C%
22state%22%2Cr)(e%2Ci%2Ca%2Cs%2Cn%2Co)%7Dcatch(t)%7Bif(t%20instanceof%
20SyntaxError%7C%7Ct%20instanceof%20ReferenceError)return%20console.warn
(%60%24%7Bt.name%7D%3A%20%24%7Bt.message%7D%20in%20template%20%24%7Br%7D
%60)%2Cnull%3Bthrow%20t%7D%7D%7D%2Cwindow.customUI.init()%3Bvar%20b%
3Dclass%20extends%20Polymer.Element%7Bstatic%20get%20properties()%
7Breturn%7Bhass%3AObject%2CinDialog%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%
2CstateObj%3AObject%2CcontrolElement%3AString%2Cextra%3A%7Btype%3AArray%
2Ccomputed%3A%22computeExtra(hass%2C%20stateObj)%22%7D%7D%7DcomputeExtra
(t%2Ce)%7Bvar%20i%3De.attributes.extra_data_template%3Breturn%20i%3F(
Array.isArray(i)%7C%7C(i%3D%5Bi%5D)%2Ci.map(i%3D%3Ewindow.customUI.
computeTemplate(i%2Ct%2Ct.states%2Ce%2Ce.attributes%2Cvoid%200%2Ce.state
)).filter(t%3D%3Enull!%3D%3Dt))%3A%5B%5D%7DshowLastChanged(t%2Ce%2Ci)%
7Breturn!!e%7C%7C!i.length%26%26!!t.attributes.show_last_changed%
7DhasExtra(t)%7Breturn%20t.length%3E0%7D%7D%3BcustomElements.define(%
22dynamic-element%22%2Cclass%20extends%20Polymer.Element%7Bstatic%20get%
20properties()%7Breturn%7Bhass%3AObject%2CstateObj%3AObject%
2CelementName%3AString%2CinDialog%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%7D
%7Dstatic%20get%20observers()%7Breturn%5B%22observerFunc(hass%2C%
20stateObj%2C%20elementName%2C%20inDialog)%22%5D%7DobserverFunc(t%2Ce%
2Ci%2Ca)%7Bo(this%2Ci%3Fi.toUpperCase()%3A%22DIV%22%2C%7Bhass%3At%
2CstateObj%3Ae%2CinDialog%3Aa%7D)%7D%7D)%2CcustomElements.define(%
22dynamic-with-extra%22%2Cclass%20extends(customElements.get(%22state-
card-display%22))%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%20%
20%20%3Cstyle%20is%3D%22custom-style%22%20include%3D%22iron-flex%20iron-
flex-alignment%20iron-flex-factors%22%3E%3C%2Fstyle%3E%0A%20%20%20%20%
3Cstyle%3E%0A%20%20%20%20%20%20%3Ahost%20%7B%0A%20%20%20%20%20%20%20%
20display%3A%20inline-block%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20
%20.control-wrapper%20%7B%0A%20%20%20%20%20%20%20%20margin%3A%20-4px%20-
16px%20-4px%200%3B%0A%20%20%20%20%20%20%20%20padding%3A%204px%2016px%3B%
0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20ha-state-label-badge%20%7B%
0A%20%20%20%20%20%20%20%20margin-left%3A%208px%3B%0A%20%20%20%20%20%20%
7D%0A%20%20%20%20%20%20dynamic-element%20%7B%0A%20%20%20%20%20%20%20%
20display%3A%20block%3B%0A%20%20%20%20%20%20%20%20text-align%3A%20right%
3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%23overlay%20%7B%0A%20%20
%20%20%20%20%20%20position%3A%20absolute%3B%0A%20%20%20%20%20%20%20%
20left%3A%200%3B%0A%20%20%20%20%20%20%20%20right%3A%200%3B%0A%20%20%20%
20%20%20%20%20top%3A%200%3B%0A%20%20%20%20%20%20%20%20bottom%3A%200%3B%
0A%20%20%20%20%20%20%20%20text-align%3A%20right%3B%0A%20%20%20%20%20%20%
20%20z-index%3A%201%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%
23lock%20%7B%0A%20%20%20%20%20%20%20%20margin-top%3A%208px%3B%0A%20%20%
20%20%20%20%20%20opacity%3A%200.3%3B%0A%20%20%20%20%20%20%20%20margin-
right%3A%207px%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%23lock.ha
-cover-controls%20%7B%0A%20%20%20%20%20%20%20%20margin-right%3A%2052px%
3B%0A%20%20%20%20%20%20%20%20background-color%3A%20white%3B%0A%20%20%20%
20%20%20%7D%0A%20%20%20%20%20%20.extra%20%7B%0A%20%20%20%20%20%20%20%
20margin-bottom%3A%20-16px%3B%0A%20%20%20%20%20%20%20%20--ha-label-badge
-size%3A%2036px%3B%0A%20%20%20%20%20%20%20%20--ha-label-badge-font-size%
3A%201.2em%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.state%20%7B%
0A%20%20%20%20%20%20%20%20%40apply%20--paper-font-body1%3B%0A%20%20%20%
20%20%20%20%20color%3A%20var(--primary-text-color)%3B%0A%20%20%20%20%20%
20%20%20margin-left%3A%2016px%3B%0A%20%20%20%20%20%20%20%20text-align%3A
%20right%3B%0A%20%20%20%20%20%20%20%20line-height%3A%2040px%3B%0A%20%20%
20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%20%20%20%20%3Cdiv%20class
%24%3D'%5B%5BextraClass(extraObjVisible)%5D%5D%20horizontal%20layout'%3E
%0A%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%
5BextraObjVisible%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20is%
3D'dom-repeat'%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%
20items%3D'%5B%5BextraObj%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20%
20%20%20%20%20%20on-dom-change%3D'extraDomChanged'%3E%0A%20%20%20%20%20%
20%20%20%20%20%3Cha-state-label-badge%20hass%3D'%5B%5Bhass%5D%5D'%
20state%3D'%5B%5Bitem%5D%5D'%3E%3C%2Fha-state-label-badge%3E%0A%20%20%20
%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%
0A%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%
5B_showControl(inDialog%2C%20stateObj)%5D%5D'%3E%0A%20%20%20%20%20%20%20
%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BcontrolElement%5D%5D'%3E%0A
%20%20%20%20%20%20%20%20%20%20%3Cdiv%20class%3D%22control-wrapper%22%3E%
0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cdynamic-element%0A%20%20%20%20%
20%20%20%20%20%20%20%20%20%20%20%20class%3D'flex'%0A%20%20%20%20%20%20%
20%20%20%20%20%20%20%20%20%20state-obj%3D%22%5B%5BstateObj%5D%5D%22%0A%
20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20hass%3D'%5B%5Bhass%5D%5D'
%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20element-name%3D'%5B%
5BcontrolElement%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%
2Fdynamic-element%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Ctemplate%
20is%3D'dom-if'%20if%3D'%5B%5BisConfirmControls(stateObj)%5D%5D'%3E%0A%
20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cdiv%20id%3D%22overlay%22%
20on-click%3D'clickHandler'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BstateObj.attributes.
confirm_controls_show_lock%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%20%20%20%20%3Ciron-icon%20id%3D%22lock%22%20class%24%3D%22%5B%
5BcontrolElement%5D%5D%22%20icon%3D%22mdi%3Alock-outline%22%3E%3C%2Firon
-icon%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%
2Ftemplate%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%
0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%
20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%
3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5B!
controlElement%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdiv%20class%
3D'state'%3E%5B%5BcomputeStateDisplay(stateObj)%5D%5D%3C%2Fdiv%3E%0A%20%
20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Ftemplate
%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%60%7Dstatic%20get%
20properties()%7Breturn%7Bhass%3AObject%2CinDialog%3A%7Btype%3ABoolean%
2Cvalue%3A!1%7D%2CstateObj%3AObject%2CcontrolElement%3AString%2CextraObj
%3A%7Btype%3AArray%2Ccomputed%3A%22computeExtra(hass%2C%20stateObj%2C%
20_attached)%22%7D%2C_attached%3ABoolean%2CextraObjVisible%3A%7Btype%
3ABoolean%2Ccomputed%3A%22computeExtraVisible(extraObj%2C%20inDialog)%22
%7D%7D%7DconnectedCallback()%7Bsuper.connectedCallback()%2Cthis.
_attached%3D!0%7DdisconnectedCallback()%7Bthis._isAttached%3D!1%2Csuper.
disconnectedCallback()%7DcomputeExtra(t%2Ce%2Ci)%7Bif(!e.attributes.
extra_badge%7C%7C!i)return%5B%5D%3Bvar%20a%3De.attributes.extra_badge%
3Breturn%20Array.isArray(a)%7C%7C(a%3D%5Ba%5D)%2Ca.map(i%3D%3E%7Bvar%20a
%3Dnull%3Bif(i.entity_id%26%26t.states%5Bi.entity_id%5D%3Fa%3DObject.
assign(%7B%7D%2Cwindow.customUI.maybeChangeObject(this%2Ct.states%5Bi.
entity_id%5D%2Cthis.inDialog%2C!1))%3Ai.attribute%26%26void%200!%3D%3De.
attributes%5Bi.attribute%5D%26%26(a%3D%7Bstate%3AString(e.attributes%5Bi
.attribute%5D)%2Centity_id%3A%22none.none%22%2Cattributes%3A%
7Bunit_of_measurement%3Ai.unit%7D%7D)%2C!a)return%20null%3Bvar%20s%3Di.
blacklist_states%3Breturn%20void%200!%3D%3Ds%26%26(Array.isArray(s)%7C%
7C(s%3D%5Bs%5D)%2Cs.some(t%3D%3ERegExp(t).test(a.state.toString())))%
3Fnull%3A(a._entityDisplay%3D%22%22%2Ca)%7D).filter(t%3D%3Enull!%3Dt)%
7DcomputeExtraVisible(t%2Ce)%7Breturn!(e%7C%7C!t)%26%260!%3D%3Dt.length%
7DextraClass(t)%7Breturn%20t%3F%22extra%22%3A%22%22%7D_showControl(t%2Ce
)%7Breturn!!t%7C%7C!e.attributes.hide_control%7DcomputeStateDisplay(t)%
7Breturn%20super.computeStateDisplay(this.haLocalize%7C%7Cthis.localize%
2Ct)%7DisConfirmControls(t)%7Breturn%20t.attributes.confirm_controls%7C%
7Ct.attributes.confirm_controls_show_lock%7DclickHandler(t)%7Bthis.root.
querySelector(%22%23overlay%22).style.pointerEvents%3D%22none%22%3Bvar%
20e%3Dthis.root.querySelector(%22%23lock%22)%3Be%26%26(e.icon%3D%22mdi%
3Alock-open-outline%22%2Ce.style.opacity%3D%220.1%22)%2Cwindow.
setTimeout(()%3D%3E%7Bthis.root.querySelector(%22%23overlay%22).style.
pointerEvents%3D%22%22%2Ce%26%26(e.icon%3D%22mdi%3Alock-outline%22%2Ce.
style.opacity%3D%22%22)%7D%2C5e3)%2Ct.stopPropagation()%7DapplyThemes(t%
2Ce%2Ci)%7Bvar%20s%3Di.attributes.theme%7C%7C%22default%22%3Ba(e%2Ct.
themes%7C%7C%7Bdefault_theme%3A%22default%22%2Cthemes%3A%7B%7D%7D%2Cs)%
7DextraDomChanged()%7Bthis.root.querySelectorAll(%22ha-state-label-badge
%22).forEach(t%3D%3E%7Bthis.applyThemes(this.hass%2Ct%2Ct.state)%7D)%7D%
7D)%2CcustomElements.define(%22ha-themed-slider%22%2Cclass%20extends%
20Polymer.Element%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%20%
20%20%3Cstyle%3E%0A%20%20%20%20%20%20%3Ahost%20%7B%0A%20%20%20%20%20%20%
20%20margin%3A%20var(--ha-themed-slider-margin%2C%20initial)%3B%0A%20%20
%20%20%20%20%7D%0A%20%20%20%20%20%20.disable-off-when-min%20%7B%0A%20%20
%20%20%20%20%20%20--paper-slider-pin-start-color%3A%20%20var(--paper-
slider-pin-color)%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20.
disable-off-when-min.is-on%20%7B%0A%20%20%20%20%20%20%20%20--paper-
slider-knob-start-color%3A%20var(--paper-slider-knob-color)%3B%0A%20%20%
20%20%20%20%20%20--paper-slider-knob-start-border-color%3A%20var(--paper
-slider-knob-color)%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20paper
-slider%20%7B%0A%20%20%20%20%20%20%20%20margin%3A%204px%200%3B%0A%20%20%
20%20%20%20%20%20max-width%3A%20100%25%3B%0A%20%20%20%20%20%20%20%20min-
width%3A%20100px%3B%0A%20%20%20%20%20%20%20%20width%3A%20var(--ha-paper-
slider-width%2C%20200px)%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%
2Fstyle%3E%0A%0A%20%20%20%20%3Cpaper-slider%0A%20%20%20%20%20%20%20%20%
20min%3D'%5B%5B_themedMin%5D%5D'%0A%20%20%20%20%20%20%20%20%20max%3D'%5B
%5B_computeAttribute(theme%2C%20%22max%22%2C%20max)%5D%5D'%0A%20%20%20%
20%20%20%20%20%20pin%3D'%5B%5B_computeAttribute(theme%2C%20%22pin%22%2C%
20pin)%5D%5D'%0A%20%20%20%20%20%20%20%20%20class%24%3D'%5B%
5BcomputeClass(theme%2C%20isOn%2C%20_themedMin)%5D%5D'%20value%3D'%5B%
5Bvalue%5D%5D'%0A%20%20%20%20%20%20%20%20%20on-change%3D'valueChanged'%
3E%0A%20%20%20%20%3C%2Fpaper-slider%3E%0A%20%20%20%20%60%7Dready()%
7Bsuper.ready()%2Cthis.disableOffWhenMin%3D!this._computeAttribute(this.
theme%2C%22off_when_min%22%2C!this.disableOffWhenMin)%2Cthis.
computeEnabledThemedReportWhenNotChanged(this.theme%2Cthis.
disableReportWhenNotChanged)%7Dstatic%20get%20properties()%7Breturn%
7Bmin%3A%7Btype%3ANumber%2Cvalue%3A0%7D%2Cmax%3A%7Btype%3ANumber%2Cvalue
%3A100%7D%2Cpin%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2CisOn%3A%7Btype%
3ABoolean%2Cvalue%3A!1%7D%2CdisableOffWhenMin%3A%7Btype%3ABoolean%
2Cvalue%3A!1%2Cnotify%3A!0%7D%2CdisableReportWhenNotChanged%3A%7Btype%
3ABoolean%2Cvalue%3A!1%7D%2Ctheme%3AObject%2Cvalue%3A%7Btype%3ANumber%
2Cnotify%3A!0%7D%2C_themedMin%3A%7Btype%3ANumber%2Ccomputed%3A'
_computeAttribute(theme%2C%20%22min%22%2C%20min)'%7D%7D%7Dstatic%20get%
20observers()%7Breturn%5B%22computeEnabledThemedReportWhenNotChanged(
theme%2C%20disableReportWhenNotChanged)%22%5D%
7DcomputeEnabledThemedReportWhenNotChanged(t%2Ce)%7Bthis.
_enabledThemedReportWhenNotChanged%3Dthis._computeAttribute(t%2C%
22report_when_not_changed%22%2C!e)%7D_computeAttribute(t%2Ce%2Ci)%
7Breturn%20t%26%26e%20in%20t%3Ft%5Be%5D%3Ai%7DcomputeClass(t%2Ce%2Ci)%
7Bvar%20a%3D%22%22%3Breturn%20e%26%26(a%2B%3D%22is-on%20%22)%2Cthis.
_computeAttribute(t%2C%22off_when_min%22%2C!this.disableOffWhenMin)%7C%
7C0%3D%3D%3Di%3F%22%22%3A%60%24%7Ba%7Ddisable-off-when-min%60%
7DvalueChanged(t)%7Bthis._enabledThemedReportWhenNotChanged%7C%7Cthis.
value!%3D%3Dt.target.value%3Fthis.value%3Dt.target.value%3At.
stopPropagation()%7D%7D)%3Bvar%20g%3Dfunction(t%2Ce)%7Bif(Array.isArray(
t))return%20t%3Bif(Symbol.iterator%20in%20Object(t))return%20function(t%
2Ce)%7Bvar%20i%3D%5B%5D%2Ca%3D!0%2Cs%3D!1%2Cn%3Dvoid%200%3Btry%7Bfor(var
%20o%2Cr%3Dt%5BSymbol.iterator%5D()%3B!(a%3D(o%3Dr.next()).done)%26%26(i
.push(o.value)%2C!e%7C%7Ci.length!%3D%3De)%3Ba%3D!0)%3B%7Dcatch(t)%7Bs%
3D!0%2Cn%3Dt%7Dfinally%7Btry%7B!a%26%26r.return%26%26r.return()%
7Dfinally%7Bif(s)throw%20n%7D%7Dreturn%20i%7D(t%2Ce)%3Bthrow%20new%
20TypeError(%22Invalid%20attempt%20to%20destructure%20non-iterable%
20instance%22)%7D%3BcustomElements.define(%22state-card-with-slider%22%
2Cclass%20extends%20b%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%
20%20%20%3Cstyle%20is%3D%22custom-style%22%20include%3D%22iron-flex%
20iron-flex-alignment%20iron-flex-factors%22%3E%3C%2Fstyle%3E%0A%20%20%
20%20%3Cstyle%3E%0A%20%20%20%20%20%20%23container%20%7B%0A%20%20%20%20%
20%20%20%20position%3A%20relative%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20
%20%20%20.second-line%2C%20.state-and-toggle%2C%20.state-info%20%7B%0A%
20%20%20%20%20%20%20%20max-width%3A%20100%25%3B%0A%20%20%20%20%20%20%7D%
0A%20%20%20%20%20%20.nowrap%20.state-and-toggle%20%7B%0A%20%20%20%20%20%
20%20%20overflow%3A%20hidden%3B%0A%20%20%20%20%20%20%20%20flex-grow%3A%
200%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.nowrap%20.second-
line%20%7B%0A%20%20%20%20%20%20%20%20overflow%3A%20hidden%3B%0A%20%20%20
%20%20%20%7D%0A%0A%20%20%20%20%20%20.second-line%20%7B%0A%20%20%20%20%20
%20%20%20padding-top%3A%2020px%3B%0A%20%20%20%20%20%20%20%20padding-
bottom%3A%2016px%3B%0A%20%20%20%20%20%20%20%20margin-top%3A%20-20px%3B%
0A%20%20%20%20%20%20%20%20margin-bottom%3A%20-16px%3B%0A%20%20%20%20%20%
20%7D%0A%20%20%20%20%20%20.stretch%20.second-line%2C%20.stretch%20ha-
themed-slider%20%7B%0A%20%20%20%20%20%20%20%20width%3A%20100%25%3B%0A%20
%20%20%20%20%20%20%20--ha-paper-slider-width%3A%20100%25%3B%0A%20%20%20%
20%20%20%7D%0A%20%20%20%20%20%20.nowrap%20.state-info%20%7B%0A%20%20%20%
20%20%20%20%20min-width%3A%20initial%3B%0A%20%20%20%20%20%20%7D%0A%20%20
%20%20%20%20ha-themed-slider%2C%20.top-wrapper%20%7B%0A%20%20%20%20%20%
20%20%20min-width%3A%20100px%3B%0A%20%20%20%20%20%20%20%20max-width%3A%
20100%25%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.top-wrapper.
stretch%20%7B%0A%20%20%20%20%20%20%20%20display%3A%20block%3B%0A%20%20%
20%20%20%20%7D%0A%0A%20%20%20%20%20%20.hidden%20%7B%0A%20%20%20%20%20%20
%20%20display%3A%20none%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%
2Fstyle%3E%0A%0A%20%20%20%20%3Cdiv%20id%3D'container'%20class%24%3D'
horizontal%20layout%20flex%20top-wrapper%20%5B%5B_computeWrapClass(mode%
2C%20stretchSlider%2C%20lineTooLong%2C%20inDialog)%5D%5D'%3E%0A%20%20%20
%20%20%20%3Cdiv%20class%3D'horizontal%20layout%20justified%20flex-auto%
20state-and-toggle'%3E%0A%20%20%20%20%20%20%20%20%3Cstate-info%0A%20%20%
20%20%20%20%20%20%20%20%20%20class%3D'state-info%20flex-auto'%0A%20%20%
20%20%20%20%20%20%20%20%20%20hass%3D'%5B%5Bhass%5D%5D'%0A%20%20%20%20%20
%20%20%20%20%20%20%20state-obj%3D'%5B%5BstateObj%5D%5D'%0A%20%20%20%20%
20%20%20%20%20%20%20%20in-dialog%3D'%5B%5BshowLastChanged(stateObj%2C%
20inDialog%2C%20extra)%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%
20secondary-line%24%3D'%5B%5BhasExtra(extra)%5D%5D'%0A%20%20%20%20%20%20
%20%20%3E%0A%20%20%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-repeat
'%20items%3D'%5B%5Bextra%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%
20%3Cdiv%3E%5B%5Bitem%5D%5D%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%20%20
%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%20%20%3C%2Fstate-info%3E%0A%20%20
%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BbreakSlider%
5D%5D'%20class%3D'hidden'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdynamic-
with-extra%20hass%3D'%5B%5Bhass%5D%5D'%20state-obj%3D'%5B%5BstateObj%5D%
5D'%20control-element%3D'%5B%5BcontrolElement%5D%5D'%20in-dialog%3D'%5B%
5BinDialog%5D%5D'%3E%3C%2Fdynamic-with-extra%3E%0A%20%20%20%20%20%20%20%
20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%
20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BshowSlider%5D%5D'%20restamp%
3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20class%3D'horizontal%20layout%
20flex-auto%20end-justified%20second-line'%3E%0A%20%20%20%20%20%20%20%20
%20%20%3Cha-themed-slider%0A%20%20%20%20%20%20%20%20%20%20%20%20id%3D'
slider'%0A%20%20%20%20%20%20%20%20%20%20%20%20max%3D%5B%5Bmax%5D%5D%0A%
20%20%20%20%20%20%20%20%20%20%20%20min%3D%5B%5Bmin%5D%5D%0A%20%20%20%20%
20%20%20%20%20%20%20%20theme%3D'%5B%5BstateObj.attributes.slider_theme%
5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20is-on%3D'%5B%5BisOn(
stateObj%2C%20nameOn)%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20value
%3D'%7B%7BsliderValue%7D%7D'%0A%20%20%20%20%20%20%20%20%20%20%20%
20disable-off-when-min%3D'%7B%7BdisableOffWhenMin%7D%7D'%0A%20%20%20%20%
20%20%20%20%20%20%20%20on-change%3D'sliderChanged'%0A%20%20%20%20%20%20%
20%20%20%20%20%20on-click%3D'stopPropagation'%3E%0A%20%20%20%20%20%20%20
%20%20%20%3C%2Fha-themed-slider%3E%0A%20%20%20%20%20%20%20%20%20%20%
3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5B!breakSlider%5D%5D'%3E%0A%20%20
%20%20%20%20%20%20%20%20%20%20%3Cdynamic-with-extra%20hass%3D'%5B%5Bhass
%5D%5D'%20state-obj%3D'%5B%5BstateObj%5D%5D'%20control-element%3D'%5B%
5BcontrolElement%5D%5D'%20in-dialog%3D'%5B%5BinDialog%5D%5D'%3E%3C%
2Fdynamic-with-extra%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Ftemplate%
3E%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%3C%
2Ftemplate%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%60%7Dstatic%
20get%20properties()%7Breturn%7Bdomain%3AString%2CserviceMin%3AString%
2CserviceMax%3AString%2CvalueName%3AString%2CsetValueName%3AString%
2CnameOn%3A%7Btype%3AString%2Cvalue%3A%22on%22%7D%2Cmin%3A%7Btype%
3ANumber%2Cvalue%3A0%7D%2Cmax%3A%7Btype%3ANumber%2Cvalue%3A255%7D%
2CsliderValue%3A%7Btype%3ANumber%2Cvalue%3A0%7D%2CdisableOffWhenMin%
3ABoolean%2Cmode%3AString%2CstretchSlider%3A%7Btype%3ABoolean%2Cvalue%3A
!1%7D%2CbreakSlider%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2ChideSlider%3A%
7Btype%3ABoolean%2Cvalue%3A!1%7D%2ClineTooLong%3A%7Btype%3ABoolean%
2Cvalue%3A!1%7D%2CminLineBreak%3ANumber%2CmaxLineBreak%3ANumber%
2CshowSlider%3A%7Btype%3ANumber%2Ccomputed%3A%22_showSlider(inDialog%2C%
20stateObj%2C%20hideSlider)%22%7D%7D%7Dready()%7Bsuper.ready()%2Cthis.
_onIronResize%3Dthis._onIronResize.bind(this)%7DconnectedCallback()%
7Bsuper.connectedCallback()%2Cthis._isConnected%3D!0%2Cwindow.
addEventListener(%22resize%22%2Cthis._onIronResize)%2Cthis.
_waitForLayout()%7DdisconnectedCallback()%7Bwindow.removeEventListener(%
22resize%22%2Cthis._onIronResize)%2Cthis._isConnected%3D!1%2Csuper.
disconnectedCallback()%7Dstatic%20get%20observers()%7Breturn%5B%
22stateObjChanged(stateObj%2C%20nameOn%2C%20valueName)%22%5D%
7D_waitForLayout()%7Bthis._isConnected%26%26(this._setMode()%2Cthis.
_frameId%7C%7C(this.readyToCompute%3D!1%2Cthis._frameId%3Dwindow.
requestAnimationFrame(()%3D%3E%7Bthis._frameId%3Dnull%2Cthis.
readyToCompute%3D!0%2Cthis._onIronResize()%7D)))%7D_setMode()%7Bvar%20t%
3D%7BhideSlider%3A%22hide-slider%22%3D%3D%3Dthis.mode%26%26this.
lineTooLong%2CbreakSlider%3A(%22break-slider%22%3D%3D%3Dthis.mode%7C%7C%
22hide-slider%22%3D%3D%3Dthis.mode)%26%26this.lineTooLong%7D%3Bthis.
showSlider%7C%7C(t.breakSlider%3D!0)%2Cthis.setProperties(t)%
7D_onIronResize()%7Bif(this.readyToCompute)if(%22no-slider%22!%3D%3Dthis
.mode)%7Bvar%20t%3Dthis.breakSlider%2Ce%3Dthis.hideSlider%3Bthis.
setProperties(%7BlineTooLong%3A!1%2ChideSlider%3A!1%2CbreakSlider%3A!1%
7D)%3Bvar%20i%3Dthis.%24.container%2Ca%3Di.clientWidth%3Bif(0!%3D%3Da)%
7Bif(a%3C%3Dthis.minLineBreak)this.lineTooLong%3D!0%3Belse%20if(a%3E%
3Dthis.maxLineBreak)this.lineTooLong%3D!1%3Belse%7Bif(e%26%26%22hide-
slider%22%3D%3D%3Dthis.mode)return%20void%20this._waitForLayout()%3Bvar%
20s%3Di.clientHeight%2Cn%3Dthis.root.querySelector(%22.state-info%22).
clientHeight%3Bthis.lineTooLong%3Ds%3E1.5*n%2Cthis.lineTooLong%3Fthis.
minLineBreak%3Da%3At%7C%7C(this.maxLineBreak%3Da)%7Dthis._setMode()%7D%
7Delse%20this.setProperties(%7BhideSlider%3A!0%2CbreakSlider%3A!0%7D)%
7D_computeWrapClass(t%2Ce%2Ci%2Ca)%7Breturn%20a%3F%22%22%3A%22single-
line%22%3D%3D%3Dt%3F%22nowrap%22%3Ae%26%26i%3F%22stretch%20wrap%22%3A%
22wrap%22%7D_showSlider(t%2Ce%2Ci)%7Breturn!t%26%26!i%7DsliderChanged(t)
%7Bvar%20e%3DparseInt(t.target.value%2C10)%2Ci%3D%7Bentity_id%3Athis.
stateObj.entity_id%7D%3Bif(!Number.isNaN(e))%7Bvar%20a%3Dthis.root.
querySelector(%22%23slider%22)%3Bif(t.target!%3D%3Da)a%3Dt.target%3Belse
%20if(t.path)a%3Dg(t.path%2C1)%5B0%5D%3Belse%20if(t.composedPath)%7Bvar%
20s%3Dt.composedPath()%3Ba%3Dg(s%2C1)%5B0%5D%7D0%3D%3D%3De%7C%7Ce%3C%3Da
.min%26%26!this.disableOffWhenMin%3Fthis.hass.callService(this.domain%
2Cthis.serviceMin%2Ci)%3A(i%5Bthis.setValueName%7C%7Cthis.valueName%5D%
3De%2Cthis.hass.callService(this.domain%2Cthis.serviceMax%2Ci))%7D%
7DstateObjChanged(t%2Ce%2Ci)%7Bvar%20a%3D%7BsliderValue%3Athis.isOn(t%
2Ce)%3Ft.attributes%5Bi%5D%3A0%7D%3Bt%26%26Object.assign(a%2C%
7BminLineBreak%3A0%2CmaxLineBreak%3A999%2ChideSlider%3A!1%2CbreakSlider%
3A!1%2ClineTooLong%3A!1%2Cmode%3At.attributes.state_card_mode%
2CstretchSlider%3A!!t.attributes.stretch_slider%7D)%2Cthis.setProperties
(a)%2Ct%26%26this._waitForLayout()%7DisOn(t%2Ce)%7Breturn%20t%26%26(!e%
7C%7Ct.state%3D%3D%3De)%7DstopPropagation(t)%7Bt.stopPropagation()%7D%7D
)%2CcustomElements.define(%22state-card-without-slider%22%2Cclass%
20extends%20b%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%20%20%20
%3Cstyle%20is%3D%22custom-style%22%20include%3D%22iron-flex%20iron-flex-
alignment%22%3E%3C%2Fstyle%3E%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%
20%20%23container%20%7B%0A%20%20%20%20%20%20%20%20position%3A%20relative
%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%0A%20%20%20%
20%3Cdiv%20id%3D'container'%20class%3D'horizontal%20layout%20justified'%
3E%0A%20%20%20%20%20%20%3Cstate-info%0A%20%20%20%20%20%20%20%20%20%
20hass%3D'%5B%5Bhass%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20class%3D'
state-info'%0A%20%20%20%20%20%20%20%20%20%20state-obj%3D'%5B%5BstateObj%
5D%5D'%0A%20%20%20%20%20%20%20%20%20%20in-dialog%3D'%5B%
5BshowLastChanged(stateObj%2C%20inDialog%2C%20extra)%5D%5D'%0A%20%20%20%
20%20%20%20%20%20%20secondary-line%24%3D'%5B%5BhasExtra(extra)%5D%5D'%3E
%0A%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-repeat'%20items%3D'%
5B%5Bextra%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdiv%3E%5B%5Bitem
%5D%5D%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%
20%20%20%20%3C%2Fstate-info%3E%0A%20%20%20%20%20%20%3Cdynamic-with-extra
%0A%20%20%20%20%20%20%20%20%20%20hass%3D'%5B%5Bhass%5D%5D'%0A%20%20%20%
20%20%20%20%20%20%20state-obj%3D'%5B%5BstateObj%5D%5D'%0A%20%20%20%20%20
%20%20%20%20%20control-element%3D'%5B%5BcontrolElement%5D%5D'%0A%20%20%
20%20%20%20%20%20%20%20in-dialog%3D'%5B%5BinDialog%5D%5D'%3E%0A%20%20%20
%20%20%20%3C%2Fdynamic-with-extra%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20
%20%20%60%7D%7D)%3Bvar%20y%3D%5B%22configurator%22%5D%2C_%3D%7Blight%3A1
%2Ccover%3A4%2Cclimate%3A1%7D%2Cw%3D%7Btoggle%3A%22ha-entity-toggle%22%
2Cdisplay%3A%22%22%2Ccover%3A%22ha-cover-controls%22%7D%3BcustomElements
.define(%22state-card-custom-ui%22%2Cclass%20extends%20Polymer.Element%
7Bstatic%20get%20properties()%7Breturn%7Bhass%3AObject%2CinDialog%3A%
7Btype%3ABoolean%2Cvalue%3A!1%7D%2CstateObj%3AObject%7D%7Dstatic%20get%
20observers()%7Breturn%5B%22inputChanged(hass%2C%20inDialog%2C%
20stateObj)%22%5D%7DconnectedCallback()%7Bsuper.connectedCallback()%
3Bvar%20t%3Dthis.parentNode.parentNode%3B%22DIV%22%3D%3D%3Dt.tagName%26%
26(t.classList.contains(%22state%22)%7C%7Ct.classList.contains(%22child-
card%22))%26%26(this._container%3Dt%2Ct.style.setProperty(%22background-
color%22%2C%22var(--paper-card-background-color%2C%20inherit)%22)%2Ct.
updateStyles%7C%7C(t.updateStyles%3D(e%3D%3E%7BObject.keys(e).forEach(i%
3D%3E%7Bt.style.setProperty(i%2Ce%5Bi%5D)%7D)%7D)))%2Cthis._isAttached%
3D!0%2Cthis.inputChanged(this.hass%2Cthis.inDialog%2Cthis.stateObj)%
7DdisconnectedCallback()%7Bthis._isAttached%3D!1%2Cthis._container%26%26
(this._container.updateStyles(%7Bdisplay%3A%22%22%2Cmargin%3A%22%22%
2Cpadding%3A%22%22%7D)%2Ca(this._container%2Cthis.hass.themes%7C%7C%
7Bdefault_theme%3A%22default%22%2Cthemes%3A%7B%7D%7D%2C%22default%22)%
2Cthis._container%3Dnull)%2Csuper.disconnectedCallback()%7DbadgeMode(t%
2Ce%2Ci)%7Bvar%20a%3D%5B%5D%3Bif(%22group%22%3D%3D%3Di)e.attributes.
entity_id.forEach(i%3D%3E%7Bvar%20s%3Dt.states%5Bi%5D%3Bs%3Fe.attributes
.badges_list%26%26!e.attributes.badges_list.includes(s.entity_id)%7C%7Ca
.push(window.customUI.maybeChangeObject(this%2Cs%2C!1%2C!1))%3Aconsole.
warn(%60Unknown%20ID%20%24%7Bi%7D%20in%20group%20%24%7Be.entity_id%7D%60
)%7D)%3Belse%20if(a.push(e)%2Cthis._container)%7Bthis._container.style.
display%3D%22inline-block%22%3Bvar%20s%3D%7Bdisplay%3A%22inline-block%22
%7D%3Bthis._container.classList.contains(%22state%22)%26%26(s.margin%3D%
22var(--ha-badges-card-margin%2C%200)%22)%2Cthis.updateStyles(s)%7Do(
this%2C%22HA-BADGES-CARD%22%2C%7Bhass%3At%2Cstates%3Aa%7D)%2Cthis.
_container%26%26this._container.updateStyles(%7Bwidth%3A%22var(--ha-
badges-card-width%2C%20initial)%22%2C%22text-align%22%3A%22var(--ha-
badges-card-text-align%2C%20initial)%22%7D)%2Cthis.lastChild.style.
fontSize%3D%2285%25%22%2Cthis.style.setProperty(%22--ha-state-label-
badge-margin-bottom%22%2C%220%22)%7DcleanBadgeStyle()%7Bthis._container%
26%26this._container.updateStyles(%7Bdisplay%3A%22%22%2Cwidth%3A%22%22%
2C%22text-align%22%3A%22%22%7D)%2Cthis.updateStyles(%7Bdisplay%3A%22%22%
2Cmargin%3A%22%22%7D)%7DapplyThemes(t%2Ce)%7Bvar%20i%3Dthis%2Cs%3D%
22default%22%3Bthis._container%26%26(i%3Dthis._container)%2Ce.attributes
.theme%26%26(s%3De.attributes.theme)%2Ca(i%2Ct.themes%7C%7C%
7Bdefault_theme%3A%22default%22%2Cthemes%3A%7B%7D%7D%2Cs)%
7DmaybeHideEntity(t)%7Breturn%20t%3F(this._container%26%26this.
_container.updateStyles(%7Bmargin%3A%22%22%2Cpadding%3A%22%22%7D)%2C!1)%
3A(this.lastChild%26%26this.removeChild(this.lastChild)%2Cthis.
_container%26%26this._container.updateStyles(%7Bmargin%3A%220%22%
2Cpadding%3A%220%22%7D)%2C!0)%7DsliderEligible_(t%2Ce%2Ci)%7Breturn!i%26
%26_%5Bt%5D%26%26_%5Bt%5D%26e.attributes.supported_features%26%26e.
attributes.state_card_mode%26%26%22no-slider%22!%3D%3De.attributes.
state_card_mode%7DinputChanged(t%2Ce%2Ci)%7Bif(i%26%26t%26%26this.
_isAttached)%7Bvar%20a%3Dn(i)%2Cs%3Dwindow.customUI.maybeChangeObject(
this%2Ci%2Ce%2C!0)%3Bthis.maybeHideEntity(s)%7C%7C(this.applyThemes(t%
2Cs)%2Ce%7C%7C%22badges%22!%3D%3Ds.attributes.state_card_mode%3Fthis.
regularMode_(t%2Ce%2Cs%2Ca)%3Athis.badgeMode(t%2Cs%2Ca))%7D%
7DregularMode_(t%2Ce%2Ci%2Ca)%7Bthis.cleanBadgeStyle()%3Bvar%20s%3D%
7Bhass%3At%2CstateObj%3Ai%2CinDialog%3Ae%7D%2Cl%3Dfunction(t%2Ce)%7Bif(%
22unavailable%22%3D%3D%3De.state)return%22display%22%3Bvar%20i%3Dn(e)%
3Breturn%20r.includes(i)%3Fi%3Afunction(t%2Ce)%7Bvar%20i%3Dn(e)%3Breturn
%22group%22%3D%3D%3Di%3F%22on%22%3D%3D%3De.state%7C%7C%22off%22%3D%3D%
3De.state%3A%22climate%22%3D%3D%3Di%3F!!(4096%26(e.attributes%7C%7C%7B%
7D).supported_features)%3Afunction(t%2Ce)%7Bvar%20i%3Dt.services%5Be%5D%
3Breturn!!i%26%26(%22lock%22%3D%3D%3De%3F%22lock%22in%20i%3A%22cover%22%
3D%3D%3De%3F%22open_cover%22in%20i%3A%22turn_on%22in%20i)%7D(t%2Ci)%7D(t
%2Ce)%26%26%22hidden%22!%3D%3De.attributes.control%3F%22toggle%22%3A%
22display%22%7D(t%2Ci)%2Cd%3Dvoid%200%2Cc%3Di.attributes.
state_card_custom_ui_secondary%3B%22light%22%3D%3D%3Da%26%26this.
sliderEligible_(a%2Ci%2Ce)%3F(Object.assign(s%2C%7BcontrolElement%3A%
22ha-entity-toggle%22%2CserviceMin%3A%22turn_off%22%2CserviceMax%3A%
22turn_on%22%2CvalueName%3A%22brightness%22%2Cdomain%3Aa%7D)%2Cd%3D%
22state-card-with-slider%22)%3A%22cover%22%3D%3D%3Da%26%26this.
sliderEligible_(a%2Ci%2Ce)%3F(Object.assign(s%2C%7BcontrolElement%3A%
22ha-cover-controls%22%2Cmax%3A100%2CserviceMin%3A%22close_cover%22%
2CserviceMax%3A%22set_cover_position%22%2CsetValueName%3A%22position%22%
2CvalueName%3A%22current_position%22%2CnameOn%3A%22open%22%2Cdomain%3Aa%
7D)%2Cd%3D%22state-card-with-slider%22)%3A%22climate%22%3D%3D%3Da%26%
26this.sliderEligible_(a%2Ci%2Ce)%3F(Object.assign(s%2C%7BcontrolElement
%3A%22ha-climate-state%22%2Cmin%3Ai.attributes.min_temp%7C%7C-100%2Cmax%
3Ai.attributes.max_temp%7C%7C200%2CserviceMin%3A%22set_temperature%22%
2CserviceMax%3A%22set_temperature%22%2CvalueName%3A%22temperature%22%
2CnameOn%3A%22%22%2Cdomain%3Aa%7D)%2Cd%3D%22state-card-with-slider%22)%
3Avoid%200!%3D%3Dw%5Bl%5D%3F(s.controlElement%3Dw%5Bl%5D%2Cd%3D%22state-
card-without-slider%22)%3Ai.attributes.show_last_changed%26%26!y.
includes(l)%26%26(s.inDialog%3D!0)%2C%22unavailable%22%3D%3D%3Di.state%
26%26(s.controlElement%3D%22%22)%2Cvoid%200!%3D%3Di.attributes.
control_element%26%26(s.controlElement%3Di.attributes.control_element)%
2Co(this%2C(c%7C%7Cd%7C%7C%60STATE-CARD-%24%7Bl%7D%60).toUpperCase()%2Cs
)%7D%7D)%7D%2Cfunction(t%2Ce)%7Bwindow.JSCompiler_renameProperty%
3Dfunction(t)%7Breturn%20t%7D%7D%5D)%3B%0A%2F%2F%23%20sourceMappingURL%
3Dscripts.js.map%0A%2F%2F%23%20sourceURL%3Dhttps%3A%2F%2REDACTED.duckdns
.org%3A8124%2Flocal%2Fcustom_ui%2Fstate-card-custom-ui.html.js%0A:27:
18971 TypeError: The superclass is not an object.

Any errors from browser Javascript console:

data:text/javascript;charset=utf-8,%2F*!%20For%20license%20information%20please%20see%20scripts.js.LICENSE%20*%2F%0A!function(t)%7Bvar%20e%3D%7B%7D%3Bfunction%20i(a)%7Bif(e%5Ba%5D)return%20e%5Ba%5D.exports%3Bvar%20s%3De%5Ba%5D%3D%7Bi%3Aa%2Cl%3A!1%2Cexports%3A%7B%7D%7D%3Breturn%20t%5Ba%5D.call(s.exports%2Cs%2Cs.exports%2Ci)%2Cs.l%3D!0%2Cs.exports%7Di.m%3Dt%2Ci.c%3De%2Ci.d%3Dfunction(t%2Ce%2Ca)%7Bi.o(t%2Ce)%7C%7CObject.defineProperty(t%2Ce%2C%7Bconfigurable%3A!1%2Cenumerable%3A!0%2Cget%3Aa%7D)%7D%2Ci.r%3Dfunction(t)%7BObject.defineProperty(t%2C%22__esModule%22%2C%7Bvalue%3A!0%7D)%7D%2Ci.n%3Dfunction(t)%7Bvar%20e%3Dt%26%26t.__esModule%3Ffunction()%7Breturn%20t.default%7D%3Afunction()%7Breturn%20t%7D%3Breturn%20i.d(e%2C%22a%22%2Ce)%2Ce%7D%2Ci.o%3Dfunction(t%2Ce)%7Breturn%20Object.prototype.hasOwnProperty.call(t%2Ce)%7D%2Ci.p%3D%22%22%2Ci(i.s%3D0)%7D(%5Bfunction(t%2Ce%2Ci)%7B%22use%20strict%22%3Bfunction%20a(t%2Ce%2Ci)%7Bvar%20a%3Darguments.length%3E3%26%26void%200!%3D%3Darguments%5B3%5D%26%26arguments%5B3%5D%3Bt._themes%7C%7C(t._themes%3D%7B%7D)%3Bvar%20s%3De.default_theme%3B(%22default%22%3D%3D%3Di%7C%7Ci%26%26e.themes%5Bi%5D)%26%26(s%3Di)%3Bvar%20n%3DObject.assign(%7B%7D%2Ct._themes)%3Bif(%22default%22!%3D%3Ds)%7Bvar%20o%3De.themes%5Bs%5D%3BObject.keys(o).forEach(e%3D%3E%7Bvar%20i%3D%22--%22%2Be%3Bt._themes%5Bi%5D%3D%22%22%2Cn%5Bi%5D%3Do%5Be%5D%7D)%7Dif(t.updateStyles%3Ft.updateStyles(n)%3Awindow.ShadyCSS%26%26window.ShadyCSS.styleSubtree(t%2Cn)%2Ca)%7Bvar%20r%3Ddocument.querySelector(%22meta%5Bname%3Dtheme-color%5D%22)%3Bif(r)%7Br.hasAttribute(%22default-content%22)%7C%7Cr.setAttribute(%22default-content%22%2Cr.getAttribute(%22content%22))%3Bvar%20l%3Dn%5B%22--primary-color%22%5D%7C%7Cr.getAttribute(%22default-content%22)%3Br.setAttribute(%22content%22%2Cl)%7D%7D%7Dfunction%20s(t)%7Breturn%20t.substr(0%2Ct.indexOf(%22.%22))%7Dfunction%20n(t)%7Breturn%20s(t.entity_id)%7Dfunction%20o(t%2Ce%2Ci)%7Bvar%20a%3Dt%2Cs%3Dvoid%200%3Ba.lastChild%26%26a.lastChild.tagName%3D%3D%3De%3Fs%3Da.lastChild%3A(a.lastChild%26%26a.removeChild(a.lastChild)%2Cs%3Ddocument.createElement(e.toLowerCase()))%2Cs.setProperties%3Fs.setProperties(i)%3AObject.keys(i).forEach(t%3D%3E%7Bs%5Bt%5D%3Di%5Bt%5D%7D)%2Cnull%3D%3D%3Ds.parentNode%26%26a.appendChild(s)%7Di.r(e)%3Bvar%20r%3D%5B%22climate%22%2C%22cover%22%2C%22configurator%22%2C%22input_select%22%2C%22input_number%22%2C%22input_text%22%2C%22lock%22%2C%22media_player%22%2C%22scene%22%2C%22script%22%2C%22timer%22%2C%22vacuum%22%2C%22weblink%22%5D%3Bnew%20Set(%5B%22fan%22%2C%22input_boolean%22%2C%22light%22%2C%22switch%22%5D)%2Ci(1)%3Bclass%20l%7Bconstructor(t)%7Bthis.value%3Dt.toString()%7DtoString()%7Breturn%20this.value%7D%7Dvar%20d%3Dfunction(t)%7Bfor(var%20e%3Ddocument.createElement(%22template%22)%2Ci%3Darguments.length%2Ca%3DArray(i%3E1%3Fi-1%3A0)%2Cs%3D1%3Bs%3Ci%3Bs%2B%2B)a%5Bs-1%5D%3Darguments%5Bs%5D%3Breturn%20e.innerHTML%3Da.reduce((e%2Ci%2Ca)%3D%3Ee%2Bfunction(t)%7Bif(t%20instanceof%20HTMLTemplateElement)return%20t.innerHTML%3Bif(t%20instanceof%20l)return%20function(t)%7Bif(t%20instanceof%20l)return%20t.value%3Bthrow%20new%20Error(%60non-literal%20value%20passed%20to%20Polymer's%20htmlLiteral%20function%3A%20%24%7Bt%7D%60)%7D(t)%3Bthrow%20new%20Error(%60non-template%20value%20passed%20to%20Polymer's%20html%20function%3A%20%24%7Bt%7D%60)%7D(i)%2Bt%5Ba%2B1%5D%2Ct%5B0%5D)%2Ce%7D%2Cc%3Dt%3D%3E(class%20extends%20t%7Bfire(t)%7Bvar%20e%3Darguments.length%3E1%26%26void%200!%3D%3Darguments%5B1%5D%3Farguments%5B1%5D%3A%7B%7D%2Ci%3Darguments.length%3E2%26%26void%200!%3D%3Darguments%5B2%5D%3Farguments%5B2%5D%3A%7B%7D%2Ca%3Dnew%20Event(t%2C%7Bbubbles%3Avoid%200%3D%3D%3Di.bubbles%7C%7Ci.bubbles%2Ccancelable%3ABoolean(i.cancelable)%2Ccomposed%3Avoid%200%3D%3D%3Di.composed%7C%7Ci.composed%7D)%3Breturn%20a.detail%3De%2C(i.node%7C%7Cthis).dispatchEvent(a)%2Ca%7D%7D)%3BcustomElements.define(%22ha-config-custom-ui%22%2Cclass%20extends(c(Polymer.Element))%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%20%20%20%3Cstyle%20include%3D%22ha-style%22%3E%3C%2Fstyle%3E%0A%20%20%20%20%3Capp-header-layout%20has-scrolling-region%3E%0A%20%20%20%20%20%20%3Capp-header%20slot%3D%22header%22%20fixed%3E%0A%20%20%20%20%20%20%20%20%3Capp-toolbar%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpaper-icon-button%0A%20%20%20%20%20%20%20%20%20%20%20%20icon%3D'mdi%3Aarrow-left'%0A%20%20%20%20%20%20%20%20%20%20%20%20on-click%3D'_backHandler'%0A%20%20%20%20%20%20%20%20%20%20%3E%3C%2Fpaper-icon-button%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdiv%20main-title%3ECustom%20UI%20settings%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3C%2Fapp-toolbar%3E%0A%20%20%20%20%20%20%3C%2Fapp-header%3E%0A%0A%20%20%20%20%20%20%3Cha-config-section%20is-wide%3D'%5B%5BisWide%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%3Cpaper-card%20heading%3D'Device%20name'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdiv%20class%3D'card-content'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20Set%20device%20name%20so%20that%20you%20can%20reference%20it%20in%20per-device%20settings%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cpaper-input%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20label%3D'Name'%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20value%3D'%7B%7Bname%7D%7D'%0A%20%20%20%20%20%20%20%20%20%20%20%20%3E%3C%2Fpaper-input%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3C%2Fpaper-card%3E%0A%20%20%20%20%20%20%3C%2Fha-config-section%3E%0A%20%20%20%20%3C%2Fapp-header-layout%3E%0A%20%20%20%20%60%7Dstatic%20get%20properties()%7Breturn%7BisWide%3ABoolean%2Cname%3A%7Btype%3AString%2Cobserver%3A%22nameChanged%22%7D%7D%7Dready()%7Bsuper.ready()%2Cthis.name%3Dwindow.customUI.getName()%7DnameChanged(t)%7Bwindow.customUI.setName(t)%7D_backHandler()%7Bwindow.history.back()%2Cthis.fire(%22location-changed%22)%7D%7D)%3Bvar%20u%3D%7BDOMAIN_DEVICE_CLASS%3A%7Bbinary_sensor%3A%5B%22battery%22%2C%22cold%22%2C%22connectivity%22%2C%22door%22%2C%22garage_door%22%2C%22gas%22%2C%22heat%22%2C%22light%22%2C%22lock%22%2C%22moisture%22%2C%22motion%22%2C%22moving%22%2C%22occupancy%22%2C%22opening%22%2C%22plug%22%2C%22power%22%2C%22presence%22%2C%22problem%22%2C%22safety%22%2C%22smoke%22%2C%22sound%22%2C%22vibration%22%2C%22window%22%5D%2Ccover%3A%5B%22garage%22%5D%2Csensor%3A%5B%22battery%22%2C%22humidity%22%2C%22illuminance%22%2C%22temperature%22%5D%7D%2CUNKNOWN_TYPE%3A%22json%22%2CADD_TYPE%3A%22key-value%22%2CTYPE_TO_TAG%3A%7Bstring%3A%22ha-customize-string%22%2Cjson%3A%22ha-customize-string%22%2Cicon%3A%22ha-customize-icon%22%2Cboolean%3A%22ha-customize-boolean%22%2Carray%3A%22ha-customize-array%22%2C%22key-value%22%3A%22ha-customize-key-value%22%7D%7D%3Bu.LOGIC_STATE_ATTRIBUTES%3Du.LOGIC_STATE_ATTRIBUTES%7C%7C%7Bentity_picture%3Avoid%200%2Cfriendly_name%3A%7Btype%3A%22string%22%2Cdescription%3A%22Name%22%7D%2Cicon%3A%7Btype%3A%22icon%22%7D%2Cemulated_hue%3A%7Btype%3A%22boolean%22%2Cdomains%3A%5B%22emulated_hue%22%5D%7D%2Cemulated_hue_name%3A%7Btype%3A%22string%22%2Cdomains%3A%5B%22emulated_hue%22%5D%7D%2Chaaska_hidden%3Avoid%200%2Chaaska_name%3Avoid%200%2Chomebridge_hidden%3A%7Btype%3A%22boolean%22%7D%2Chomebridge_name%3A%7Btype%3A%22string%22%7D%2Csupported_features%3Avoid%200%2Cattribution%3Avoid%200%2Ccustom_ui_more_info%3A%7Btype%3A%22string%22%7D%2Ccustom_ui_state_card%3A%7Btype%3A%22string%22%7D%2Cdevice_class%3A%7Btype%3A%22array%22%2Coptions%3Au.DOMAIN_DEVICE_CLASS%2Cdescription%3A%22Device%20class%22%2Cdomains%3A%5B%22binary_sensor%22%2C%22cover%22%2C%22sensor%22%5D%7D%2Chidden%3A%7Btype%3A%22boolean%22%2Cdescription%3A%22Hide%20from%20UI%22%7D%2Cassumed_state%3A%7Btype%3A%22boolean%22%2Cdomains%3A%5B%22switch%22%2C%22light%22%2C%22cover%22%2C%22climate%22%2C%22fan%22%2C%22group%22%5D%7D%2Cinitial_state%3A%7Btype%3A%22string%22%2Cdomains%3A%5B%22automation%22%5D%7D%2Cunit_of_measurement%3A%7Btype%3A%22string%22%7D%7D%3Bvar%20m%3Du%3Bwindow.hassAttributeUtil%3Dwindow.hassAttributeUtil%7C%7C%7B%7D%3Bvar%20h%3D%5B%22single-line%22%2C%22break-slider%22%2C%22break-slider-toggle%22%2C%22hide-slider%22%2C%22no-slider%22%5D%2Cp%3D%7Bgroup%3Avoid%200%2Cdevice%3Avoid%200%2Ctemplates%3Avoid%200%2Cstate%3Avoid%200%2C_stateDisplay%3Avoid%200%2Ccontrol_element%3A%7Btype%3A%22string%22%7D%2Cstate_card_mode%3A%7Btype%3A%22array%22%2Coptions%3A%7Blight%3Ah.concat(%22badges%22)%2Ccover%3Ah.concat(%22badges%22)%2Cclimate%3Ah.concat(%22badges%22)%2C%22*%22%3A%5B%22badges%22%5D%7D%7D%2Cstate_card_custom_ui_secondary%3A%7Btype%3A%22string%22%7D%2Cbadges_list%3A%7Btype%3A%22json%22%7D%2Cshow_last_changed%3A%7Btype%3A%22boolean%22%7D%2Chide_control%3A%7Btype%3A%22boolean%22%7D%2Cextra_data_template%3A%7Btype%3A%22string%22%7D%2Cextra_badge%3A%7Btype%3A%22json%22%7D%2Cstretch_slider%3A%7Btype%3A%22boolean%22%7D%2Cslider_theme%3A%7Btype%3A%22json%22%7D%2Ctheme%3A%7Btype%3A%22string%22%7D%2Cconfirm_controls%3A%7Btype%3A%22boolean%22%7D%2Cconfirm_controls_show_lock%3A%7Btype%3A%22boolean%22%7D%2Chide_in_default_view%3A%7Btype%3A%22boolean%22%7D%2Cicon_color%3A%7Btype%3A%22string%22%7D%7D%3Bwindow.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%3Dm.LOGIC_STATE_ATTRIBUTES%2Cwindow.hassAttributeUtil.UNKNOWN_TYPE%3Dm.UNKNOWN_TYPE%2CObject.assign(window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%2Cp)%2Cwindow.customUI%3Dwindow.customUI%7C%7C%7BSUPPORTED_SLIDER_MODES%3A%5B%22single-line%22%2C%22break-slider%22%2C%22break-slider-toggle%22%2C%22hide-slider%22%2C%22no-slider%22%5D%2CdomHost(t)%7Bif(t%3D%3D%3Ddocument)return%20null%3Bvar%20e%3Dt.getRootNode()%3Breturn%20e%20instanceof%20DocumentFragment%3Fe.host%3Ae%7D%2ClightOrShadow%3A(t%2Ce)%3D%3Et.shadowRoot%3Ft.shadowRoot.querySelector(e)%3At.querySelector(e)%2CgetElementHierarchy(t%2Ce)%7Bif(null%3D%3D%3Dt)return%20null%3Bvar%20i%3De.shift()%3Breturn%20i%3Fwindow.customUI.getElementHierarchy(window.customUI.lightOrShadow(t%2Ci)%2Ce)%3At%7D%2CgetContext(t)%7Bif(void%200%3D%3D%3Dt._context)%7Bt._context%3D%5B%5D%3Bfor(var%20e%3D%22HA-ENTITIES-CARD%22%3D%3D%3Dt.tagName%3Fwindow.customUI.domHost(t)%3At%3Be%3Be%3Dwindow.customUI.domHost(e))switch(e.tagName)%7Bcase%22HA-ENTITIES-CARD%22%3Ae.groupEntity%3Ft._context.push(e.groupEntity.entity_id)%3A!1%3D%3D%3De.groupEntity%26%26e.states%26%26e.states.length%26%26t._context.push(%60group.%24%7Bn(e.states%5B0%5D)%7D%60)%3Bbreak%3Bcase%22MORE-INFO-GROUP%22%3Acase%22STATE-CARD-CONTENT%22%3Ae.stateObj%26%26t._context.push(e.stateObj.entity_id)%3Bbreak%3Bcase%22HA-CARDS%22%3At._context.push(e.getAttribute(%22data-view%22)%7C%7C%22default_view%22)%7Dt._context.reverse()%7Dreturn%20t._context%7D%2CfindMatch%3A(t%2Ce)%3D%3Ee%3Fe%5Bt%5D%3Ft%3AObject.keys(e).find(e%3D%3Et.match(%60%5E%24%7Be%7D%24%60))%3Anull%2CmaybeChangeObjectByDevice(t)%7Bvar%20e%3Dwindow.customUI.getName()%3Bif(!e)return%20t%3Bvar%20i%3Dthis.findMatch(e%2Ct.attributes.device)%3Bif(!i)return%20t%3Bvar%20a%3DObject.assign(%7B%7D%2Ct.attributes.device%5Bi%5D)%3Breturn%20Object.keys(a).length%3Fwindow.customUI.applyAttributes(t%2Ca)%3At%7D%2CmaybeChangeObjectByGroup(t%2Ce)%7Bvar%20i%3Dwindow.customUI.getContext(t)%3Bif(!i)return%20e%3Bif(!e.attributes.group)return%20e%3Bvar%20a%3D%7B%7D%3Breturn%20i.forEach(t%3D%3E%7Bvar%20i%3Dthis.findMatch(t%2Ce.attributes.group)%3Be.attributes.group%5Bi%5D%26%26Object.assign(a%2Ce.attributes.group%5Bi%5D)%7D)%2CObject.keys(a).length%3Fwindow.customUI.applyAttributes(e%2Ca)%3Ae%7D%2C_setKeep(t%2Ce)%7Bvoid%200%3D%3D%3Dt._cui_keep%3Ft._cui_keep%3De%3At._cui_keep%3Dt._cui_keep%26%26e%7D%2CmaybeApplyTemplateAttributes(t%2Ce%2Ci%2Ca)%7Bif(!a.templates)return%20window.customUI._setKeep(i%2C!0)%2Ci%3Bvar%20s%3D%7B%7D%2Cn%3D!1%2Co%3D!1%3Bif(Object.keys(a.templates).forEach(r%3D%3E%7Bvar%20l%3Da.templates%5Br%5D%3Bl.match(%2F%5Cb(entities%7Chass)%5Cb%2F)%26%26(n%3D!0)%3Bvar%20d%3Dwindow.customUI.computeTemplate(l%2Ct%2Ce%2Ci%2Ca%2Ci.untemplated_attributes%26%26i.untemplated_attributes%5Br%5D%7C%7Ca%5Br%5D%2Ci.untemplated_state%7C%7Ci.state)%3Bnull!%3D%3Dd%26%26(s%5Br%5D%3Dd%2C%22state%22%3D%3D%3Dr%3Fd!%3D%3Di.state%26%26(o%3D!0)%3A%22_stateDisplay%22%3D%3D%3Dr%3Fd!%3D%3Di._stateDisplay%26%26(o%3D!0)%3Ad!%3D%3Da%5Br%5D%26%26(o%3D!0))%7D)%2Cwindow.customUI._setKeep(i%2C!n)%2C!o)return%20i%3Bif(i.attributes%3D%3D%3Da)%7Bvar%20r%3Dwindow.customUI.applyAttributes(i%2Cs)%3Breturn%20Object.prototype.hasOwnProperty.call(s%2C%22state%22)%26%26null!%3D%3Ds.state%26%26(r.state%3DString(s.state)%2Cr.untemplated_state%3Di.state)%2CObject.prototype.hasOwnProperty.call(s%2C%22_stateDisplay%22)%26%26(r._stateDisplay%3Ds._stateDisplay%2Cr.untemplated_stateDisplay%3Di._stateDisplay)%2Cwindow.customUI._setKeep(r%2C!n)%2Cr%7Dreturn%20Object.assign(%7B%7D%2Ci)%7D%2CmaybeApplyTemplates(t%2Ce%2Ci)%7Bvar%20a%3Dwindow.customUI.maybeApplyTemplateAttributes(t%2Ce%2Ci%2Ci.attributes)%2Cs%3Da!%3D%3Di%3Bfunction%20n(i)%7Bi%26%26(Object.values(i).forEach(i%3D%3E%7Bvar%20n%3Dwindow.customUI.maybeApplyTemplateAttributes(t%2Ce%2Ca%2Ci)%3Bs%7C%3Dn!%3D%3Da%7D)%2Cn(i.device)%2Cn(i.group))%7Dreturn%20n(i.attributes.device)%2Cn(i.attributes.group)%2Ca!%3D%3Di%3Fa%3As%3FObject.assign(%7B%7D%2Ci)%3Ai%7D%2CapplyAttributes%3A(t%2Ce)%3D%3E(%7Bentity_id%3At.entity_id%2Cstate%3At.state%2Cattributes%3AObject.assign(%7B%7D%2Ct.attributes%2Ce)%2Cuntemplated_attributes%3At.attributes%2Clast_changed%3At.last_changed%7D)%2CmaybeChangeObject(t%2Ce%2Ci%2Ca)%7Bif(i)return%20e%3Bvar%20s%3Dwindow.customUI.maybeChangeObjectByDevice(e)%3Breturn%20s%3Dwindow.customUI.maybeChangeObjectByGroup(t%2Cs)%2C(s%3Dwindow.customUI.maybeApplyTemplateAttributes(t.hass%2Ct.hass.states%2Cs%2Cs.attributes))!%3D%3De%26%26s.attributes.hidden%26%26a%3Fnull%3As%7D%2CfixGroupTitles()%7Bvar%20t%3Dwindow.customUI.getElementHierarchy(document%2C%5B%22home-assistant%22%2C%22home-assistant-main%22%5D)%3Bif(null!%3D%3Dt)%7Bvar%20e%3Dwindow.customUI.getElementHierarchy(t%2C%5B%22partial-cards%22%2C%22ha-cards%5Bview-visible%5D%22%5D)%3Bnull!%3D%3De%26%26(window.customUI.lightOrShadow(e%2C%22.main%22)%7C%7Ce.%24.main).querySelectorAll(%22ha-entities-card%22).forEach(t%3D%3E%7Bif(t.groupEntity)%7Bvar%20e%3Dwindow.customUI.maybeChangeObject(t%2Ct.groupEntity%2C!1%2C!1)%3Be!%3D%3Dt.groupEntity%26%26e.attributes.friendly_name%26%26(window.customUI.lightOrShadow(t%2C%22.name%22).textContent%3De.attributes.friendly_name)%7D%7D)%7Delse%20window.setTimeout(window.customUI.fixGroupTitles%2C1e3)%7D%2CcontrolColumns(t)%7Bvar%20e%3Dwindow.customUI.getElementHierarchy(document%2C%5B%22home-assistant%22%2C%22home-assistant-main%22%2C%22partial-cards%22%5D)%3Bif(null!%3D%3De)%7Bvar%20i%3De.handleWindowChange%7C%7Ce._updateColumns%3Be.mqls.forEach(t%3D%3E%7Bt.removeListener(i)%7D)%2Ce.mqls%3Dt.map(t%3D%3E%7Bvar%20e%3Dwindow.matchMedia(%60(min-width%3A%20%24%7Bt%7Dpx)%60)%3Breturn%20e.addListener(i)%2Ce%7D)%2Ci()%7Delse%20window.setTimeout(window.customUI.controlColumns.bind(null%2Ct)%2C1e3)%7D%2CuseCustomizer()%7Bvar%20t%3Dwindow.customUI.lightOrShadow(document%2C%22home-assistant%22).hass.states%5B%22customizer.customizer%22%5D%3Bt%26%26(t.attributes.columns%26%26window.customUI.controlColumns(t.attributes.columns)%2Ct.attributes.hide_attributes%26%26window.hassAttributeUtil%26%26window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%26%26t.attributes.hide_attributes.forEach(t%3D%3E%7BObject.prototype.hasOwnProperty.call(window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%2Ct)%7C%7C(window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%5Bt%5D%3Dvoid%200)%7D))%7D%2CupdateConfigPanel()%7Bif(window.location.pathname.startsWith(%22%2Fconfig%22))%7Bvar%20t%3Dwindow.customUI.getElementHierarchy(document%2C%5B%22home-assistant%22%2C%22home-assistant-main%22%2C%22partial-panel-resolver%22%2C%22ha-panel-config%22%5D)%3Bif(t)%7Bvar%20e%3Dwindow.customUI.getElementHierarchy(t%2C%5B%22ha-config-dashboard%22%2C%22ha-config-navigation%22%5D)%3Be%26%26(e.localize%26%26!e.cuiPatch%26%26(e.cuiPatch%3D!0%2Ce._originalComputeLoaded%3De._computeLoaded%2Ce._originalComputeCaption%3De._computeCaption%2Ce._originalComputeDescription%3De._computeDescription%2Ce._computeLoaded%3D((t%2Ci)%3D%3E%22customui%22%3D%3D%3Di%7C%7Ce._originalComputeLoaded(t%2Ci))%2Ce._computeCaption%3D((t%2Ci)%3D%3E%22customui%22%3D%3D%3Dt%3F%22Custom%20UI%22%3Ae._originalComputeCaption(t%2Ci))%2Ce._computeDescription%3D((t%2Ci)%3D%3E%22customui%22%3D%3D%3Dt%3F%22SetUI%20tweaks%22%3Ae._originalComputeDescription(t%2Ci)))%2Ce.pages.some(t%3D%3E%22customui%22%3D%3D%3Dt%7C%7C%22customui%22%3D%3D%3Dt.domain)%7C%7Ce.push(%22pages%22%2Ce.localize%3F%22customui%22%3A%7Bdomain%3A%22customui%22%2Ccaption%3A%22Custom%20UI%22%2Cdescription%3A%22Set%20UI%20tweaks.%22%2Cloaded%3A!0%7D))%3Bvar%20i%3D()%3D%3E%7Bvar%20e%3Ddocument.createElement(%22ha-config-custom-ui%22)%3Breturn%20e.isWide%3Dt.isWide%2Ce.setAttribute(%22page-name%22%2C%22customui%22)%2Ce%7D%2Ca%3Dwindow.customUI.lightOrShadow(t%2C%22iron-pages%22)%3Bif(a)%7Bif(%22HA-CONFIG-CUSTOM-UI%22!%3D%3Da.lastElementChild.tagName)%7Bvar%20s%3Di()%3Ba.appendChild(s)%2Ca.addEventListener(%22iron-items-changed%22%2C()%3D%3E%7Bwindow.location.pathname.startsWith(%22%2Fconfig%2Fcustomui%22)%26%26a.select(%22customui%22)%7D)%7D%7Delse%7Bvar%20n%3Dt.shadowRoot%7C%7Ct%3Bif(%22HA-CONFIG-CUSTOM-UI%22!%3D%3Dn.lastElementChild.tagName)%7Bvar%20o%3Di()%3Bn.appendChild(o)%7Dvar%20r%3Dwindow.location.pathname.startsWith(%22%2Fconfig%2Fcustomui%22)%3Bn.lastElementChild.style.display%3Dr%3F%22%22%3A%22none%22%7D%7Delse%20window.setTimeout(window.customUI.updateConfigPanel%2C100)%7D%7D%2CinstallStatesHook()%7BcustomElements.whenDefined(%22home-assistant%22).then(()%3D%3E%7Bvar%20t%3DcustomElements.get(%22home-assistant%22)%3Bif(t%26%26t.prototype._updateHass)%7Bvar%20e%3Dt.prototype._updateHass%3Bt.prototype._updateHass%3Dfunction(t)%7Bvar%20i%3Dthis.hass%3Bt.states%26%26Object.keys(t.states).forEach(e%3D%3E%7Bvar%20a%3Dt.states%5Be%5D%3Bif(!a._cui_keep)%7Bvar%20s%3Dwindow.customUI.maybeApplyTemplates(i%2Ct.states%2Ca)%3Bi.states%26%26a!%3D%3Di.states%5Be%5D%3Ft.states%5Be%5D%3Ds%3Aa!%3D%3Ds%26%26(t.states%5Be%5D%3Ds)%7D%7D)%2Ce.call(this%2Ct)%2Ct.themes%26%26i._themeWaiters%26%26(i._themeWaiters.forEach(t%3D%3Et.stateChanged(t.state))%2Ci._themeWaiters%3Dvoid%200)%7D%3Bvar%20i%3Dwindow.customUI.lightOrShadow(document%2C%22home-assistant%22)%3Bi.hass%26%26i.hass.states%26%26i._updateHass(%7Bstates%3Ai.hass.states%7D)%7D%7D)%7D%2CinstallPartialCards()%7Bvar%20t%3BcustomElements.whenDefined(%22partial-cards%22).then(()%3D%3E%7Bvar%20e%3DcustomElements.get(%22partial-cards%22)%3Be%26%26e.prototype._defaultViewFilter%26%26(e.prototype._defaultViewFilter%3D((e%2Ci)%3D%3E%7Bif(e.states%5Bi%5D.attributes.hidden)return!1%3Bvar%20a%3D%7B%7D%3Breturn%20Object.values(e.states).forEach(i%3D%3E%7Bif(i.attributes%26%26i.attributes.hide_in_default_view)%7Bvar%20n%3Di.entity_id%3Bif(a%5Bn%5D)return%3Bif(a%5Bn%5D%3Di%2Ci.attributes.view)%7Bvar%20o%3D(t%3De.states%2Co%3D%7B%7D%2Ci.attributes.entity_id.forEach(e%3D%3E%7Bvar%20i%3Dt%5Be%5D%3Bif(i%26%26!i.attributes.hidden%26%26(o%5Bi.entity_id%5D%3Di%2C%22group%22%3D%3D%3Ds(i.entity_id)))%7Bvar%20a%3Dfunction(t%2Ce)%7Bvar%20a%3D%7B%7D%3Breturn%20i.attributes.entity_id.forEach(e%3D%3E%7Bvar%20i%3Dt%5Be%5D%3Bi%26%26(a%5Bi.entity_id%5D%3Di)%7D)%2Ca%7D(t)%3BObject.keys(a).forEach(t%3D%3E%7Bvar%20e%3Da%5Bt%5D%3Be.attributes.hidden%7C%7C(o%5Bt%5D%3De)%7D)%7D%7D)%2Co)%3BObject.keys(o).filter(t%3D%3E!1!%3D%3Do%5Bt%5D.attributes.hide_in_default_view).forEach(t%3D%3E%7Ba%5Bt%5D%3Do%5Bt%5D%7D)%7D%7D%7D)%2C!a%5Bi%5D%7D))%7D)%7D%2CinstallActionName(t)%7BcustomElements.whenDefined(t).then(()%3D%3E%7Bvar%20e%3DcustomElements.get(t)%3Be%26%26e.prototype%26%26Object.defineProperty(e.prototype%2C%22localize%22%2C%7Bget%3A()%3D%3E(function(t)%7Breturn%20this.stateObj%26%26this.stateObj.attributes%26%26this.stateObj.attributes.action_name%3Fthis.stateObj.attributes.action_name%3Athis.__data.localize(t)%7D)%2Cset()%7B%7D%7D)%7D)%7D%2CinstallHaStateLabelBadge()%7BcustomElements.whenDefined(%22ha-state-label-badge%22).then(()%3D%3E%7Bvar%20t%3DcustomElements.get(%22ha-state-label-badge%22)%3Bt%26%26t.prototype.stateChanged%26%26(t.prototype.stateChanged%3Dfunction(t)%7Bt.attributes.theme%26%26(null%3D%3D%3Dthis.hass.themes%3F(this.hass._themeWaiters%3Dthis.hass._themeWaiters%7C%7C%5B%5D%2Cthis.hass._themeWaiters.push(this))%3Aa(this%2Cthis.hass.themes%7C%7C%7Bdefault_theme%3A%22default%22%2Cthemes%3A%7B%7D%7D%2Ct.attributes.theme%7C%7C%22default%22))%2Cthis.updateStyles()%2Cthis.startInterval%26%26this.startInterval(t)%7D)%7D)%7D%2CinstallStateBadge()%7BcustomElements.whenDefined(%22state-badge%22).then(()%3D%3E%7Bvar%20t%3DcustomElements.get(%22state-badge%22)%3Bif(t%26%26t.prototype._updateIconAppearance)%7Bvar%20e%3Dt.prototype._updateIconAppearance%3Bt.prototype._updateIconAppearance%3Dfunction(t)%7Bt.attributes.icon_color%26%26!t.attributes.entity_picture%3F(this.style.backgroundImage%3D%22%22%2CObject.assign(this.%24.icon.style%2C%7Bcolor%3At.attributes.icon_color%2Cfilter%3A%22%22%7D))%3Ae.call(this%2Ct)%7D%7D%7D)%7D%2CinstallHaAttributes()%7BcustomElements.whenDefined(%22ha-attributes%22).then(()%3D%3E%7Bvar%20t%3DcustomElements.get(%22ha-attributes%22)%3Bt%26%26t.prototype.computeFiltersArray%26%26window.hassAttributeUtil%26%26(t.prototype.computeFiltersArray%3Dfunction(t)%7Breturn%20Object.keys(window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES).concat(t%3Ft.split(%22%2C%22)%3A%5B%5D)%7D)%7D)%7D%2CinstallHaFormCustomize()%7Bwindow.location.pathname.startsWith(%22%2Fconfig%22)%26%26customElements.whenDefined(%22ha-form-customize%22).then(()%3D%3E%7Bvar%20t%3DcustomElements.get(%22ha-form-customize%22)%3Bt%3Fwindow.customUI.haFormCustomizeInitDone%7C%7C(window.customUI.haFormCustomizeInitDone%3D!0%2Cwindow.hassAttributeUtil%26%26(t.prototype._computeSingleAttribute%26%26(t.prototype._computeSingleAttribute%3Dfunction(t%2Ce%2Ci)%7Bvar%20a%3Dwindow.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%5Bt%5D%7C%7C%7Btype%3Awindow.hassAttributeUtil.UNKNOWN_TYPE%7D%3Breturn%20this._initOpenObject(t%2C%22json%22%3D%3D%3Da.type%3FJSON.stringify(e)%3Ae%2Ci%2Ca)%7D)%2Ct.prototype.getNewAttributesOptions%26%26(t.prototype.getNewAttributesOptions%3Dfunction(t%2Ce%2Ci%2Ca)%7Breturn%20Object.keys(window.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES).filter(t%3D%3E%7Bvar%20e%3Dwindow.hassAttributeUtil.LOGIC_STATE_ATTRIBUTES%5Bt%5D%3Breturn%20e%26%26(!e.domains%7C%7C!this.entity%7C%7Ce.domains.includes(n(this.entity)))%7D).filter(this.filterFromAttributes(t)).filter(this.filterFromAttributes(e)).filter(this.filterFromAttributes(i)).filter(this.filterFromAttributes(a)).sort().concat(%22Other%22)%7D)))%3Awindow.setTimeout(window.customUI.installHaFormCustomize%2C100)%7D)%7D%2CinstallClassHooks()%7Bwindow.customUI.classInitDone%7C%7C(window.customUI.classInitDone%3D!0%2Cwindow.customUI.installPartialCards()%2Cwindow.customUI.installStatesHook()%2Cwindow.customUI.installHaStateLabelBadge()%2Cwindow.customUI.installStateBadge()%2Cwindow.customUI.installHaAttributes()%2Cwindow.customUI.installActionName(%22state-card-scene%22)%2Cwindow.customUI.installActionName(%22state-card-script%22))%7D%2Cinit()%7Bif(!window.customUI.initDone)%7Bwindow.customUI.installClassHooks()%3Bvar%20t%3Dwindow.customUI.lightOrShadow(document%2C%22home-assistant%22)%3Bt.hass%26%26t.hass.states%3F(window.customUI.initDone%3D!0%2Cwindow.customUI.useCustomizer()%2Cwindow.customUI.runHooks()%2Cwindow.addEventListener(%22location-changed%22%2Cwindow.setTimeout.bind(null%2Cwindow.customUI.runHooks%2C100))%2Cconsole.log(%22Loaded%20CustomUI%2020180831%22)%2Cwindow.CUSTOM_UI_LIST%7C%7C(window.CUSTOM_UI_LIST%3D%5B%5D)%2Cwindow.CUSTOM_UI_LIST.push(%7Bname%3A%22CustomUI%22%2Cversion%3A%2220180831%22%2Curl%3A%22https%3A%2F%2Fgithub.com%2Fandrey-git%2Fhome-assistant-custom-ui%22%7D))%3Awindow.setTimeout(window.customUI.init%2C1e3)%7D%7D%2CrunHooks()%7Bwindow.customUI.fixGroupTitles()%2Cwindow.customUI.updateConfigPanel()%2Cwindow.customUI.installHaFormCustomize()%7D%2CgetName%3A()%3D%3Ewindow.localStorage.getItem(%22ha-device-name%22)%7C%7C%22%22%2CsetName(t)%7Bwindow.localStorage.setItem(%22ha-device-name%22%2Ct%7C%7C%22%22)%7D%2CcomputeTemplate(t%2Ce%2Ci%2Ca%2Cs%2Cn%2Co)%7Bvar%20r%3Dt.indexOf(%22return%22)%3E%3D0%3Ft%3A%60return%20%5C%60%24%7Bt%7D%5C%60%3B%60%3Btry%7Breturn%20new%20Function(%22hass%22%2C%22entities%22%2C%22entity%22%2C%22attributes%22%2C%22attribute%22%2C%22state%22%2Cr)(e%2Ci%2Ca%2Cs%2Cn%2Co)%7Dcatch(t)%7Bif(t%20instanceof%20SyntaxError%7C%7Ct%20instanceof%20ReferenceError)return%20console.warn(%60%24%7Bt.name%7D%3A%20%24%7Bt.message%7D%20in%20template%20%24%7Br%7D%60)%2Cnull%3Bthrow%20t%7D%7D%7D%2Cwindow.customUI.init()%3Bvar%20b%3Dclass%20extends%20Polymer.Element%7Bstatic%20get%20properties()%7Breturn%7Bhass%3AObject%2CinDialog%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2CstateObj%3AObject%2CcontrolElement%3AString%2Cextra%3A%7Btype%3AArray%2Ccomputed%3A%22computeExtra(hass%2C%20stateObj)%22%7D%7D%7DcomputeExtra(t%2Ce)%7Bvar%20i%3De.attributes.extra_data_template%3Breturn%20i%3F(Array.isArray(i)%7C%7C(i%3D%5Bi%5D)%2Ci.map(i%3D%3Ewindow.customUI.computeTemplate(i%2Ct%2Ct.states%2Ce%2Ce.attributes%2Cvoid%200%2Ce.state)).filter(t%3D%3Enull!%3D%3Dt))%3A%5B%5D%7DshowLastChanged(t%2Ce%2Ci)%7Breturn!!e%7C%7C!i.length%26%26!!t.attributes.show_last_changed%7DhasExtra(t)%7Breturn%20t.length%3E0%7D%7D%3BcustomElements.define(%22dynamic-element%22%2Cclass%20extends%20Polymer.Element%7Bstatic%20get%20properties()%7Breturn%7Bhass%3AObject%2CstateObj%3AObject%2CelementName%3AString%2CinDialog%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%7D%7Dstatic%20get%20observers()%7Breturn%5B%22observerFunc(hass%2C%20stateObj%2C%20elementName%2C%20inDialog)%22%5D%7DobserverFunc(t%2Ce%2Ci%2Ca)%7Bo(this%2Ci%3Fi.toUpperCase()%3A%22DIV%22%2C%7Bhass%3At%2CstateObj%3Ae%2CinDialog%3Aa%7D)%7D%7D)%2CcustomElements.define(%22dynamic-with-extra%22%2Cclass%20extends(customElements.get(%22state-card-display%22))%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%20%20%20%3Cstyle%20is%3D%22custom-style%22%20include%3D%22iron-flex%20iron-flex-alignment%20iron-flex-factors%22%3E%3C%2Fstyle%3E%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20%3Ahost%20%7B%0A%20%20%20%20%20%20%20%20display%3A%20inline-block%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.control-wrapper%20%7B%0A%20%20%20%20%20%20%20%20margin%3A%20-4px%20-16px%20-4px%200%3B%0A%20%20%20%20%20%20%20%20padding%3A%204px%2016px%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20ha-state-label-badge%20%7B%0A%20%20%20%20%20%20%20%20margin-left%3A%208px%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20dynamic-element%20%7B%0A%20%20%20%20%20%20%20%20display%3A%20block%3B%0A%20%20%20%20%20%20%20%20text-align%3A%20right%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%23overlay%20%7B%0A%20%20%20%20%20%20%20%20position%3A%20absolute%3B%0A%20%20%20%20%20%20%20%20left%3A%200%3B%0A%20%20%20%20%20%20%20%20right%3A%200%3B%0A%20%20%20%20%20%20%20%20top%3A%200%3B%0A%20%20%20%20%20%20%20%20bottom%3A%200%3B%0A%20%20%20%20%20%20%20%20text-align%3A%20right%3B%0A%20%20%20%20%20%20%20%20z-index%3A%201%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%23lock%20%7B%0A%20%20%20%20%20%20%20%20margin-top%3A%208px%3B%0A%20%20%20%20%20%20%20%20opacity%3A%200.3%3B%0A%20%20%20%20%20%20%20%20margin-right%3A%207px%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%23lock.ha-cover-controls%20%7B%0A%20%20%20%20%20%20%20%20margin-right%3A%2052px%3B%0A%20%20%20%20%20%20%20%20background-color%3A%20white%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.extra%20%7B%0A%20%20%20%20%20%20%20%20margin-bottom%3A%20-16px%3B%0A%20%20%20%20%20%20%20%20--ha-label-badge-size%3A%2036px%3B%0A%20%20%20%20%20%20%20%20--ha-label-badge-font-size%3A%201.2em%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.state%20%7B%0A%20%20%20%20%20%20%20%20%40apply%20--paper-font-body1%3B%0A%20%20%20%20%20%20%20%20color%3A%20var(--primary-text-color)%3B%0A%20%20%20%20%20%20%20%20margin-left%3A%2016px%3B%0A%20%20%20%20%20%20%20%20text-align%3A%20right%3B%0A%20%20%20%20%20%20%20%20line-height%3A%2040px%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%20%20%20%20%3Cdiv%20class%24%3D'%5B%5BextraClass(extraObjVisible)%5D%5D%20horizontal%20layout'%3E%0A%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BextraObjVisible%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-repeat'%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20items%3D'%5B%5BextraObj%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20on-dom-change%3D'extraDomChanged'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cha-state-label-badge%20hass%3D'%5B%5Bhass%5D%5D'%20state%3D'%5B%5Bitem%5D%5D'%3E%3C%2Fha-state-label-badge%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5B_showControl(inDialog%2C%20stateObj)%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BcontrolElement%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdiv%20class%3D%22control-wrapper%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cdynamic-element%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20class%3D'flex'%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20state-obj%3D%22%5B%5BstateObj%5D%5D%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20hass%3D'%5B%5Bhass%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20element-name%3D'%5B%5BcontrolElement%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fdynamic-element%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BisConfirmControls(stateObj)%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cdiv%20id%3D%22overlay%22%20on-click%3D'clickHandler'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BstateObj.attributes.confirm_controls_show_lock%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ciron-icon%20id%3D%22lock%22%20class%24%3D%22%5B%5BcontrolElement%5D%5D%22%20icon%3D%22mdi%3Alock-outline%22%3E%3C%2Firon-icon%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5B!controlElement%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdiv%20class%3D'state'%3E%5B%5BcomputeStateDisplay(stateObj)%5D%5D%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%60%7Dstatic%20get%20properties()%7Breturn%7Bhass%3AObject%2CinDialog%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2CstateObj%3AObject%2CcontrolElement%3AString%2CextraObj%3A%7Btype%3AArray%2Ccomputed%3A%22computeExtra(hass%2C%20stateObj%2C%20_attached)%22%7D%2C_attached%3ABoolean%2CextraObjVisible%3A%7Btype%3ABoolean%2Ccomputed%3A%22computeExtraVisible(extraObj%2C%20inDialog)%22%7D%7D%7DconnectedCallback()%7Bsuper.connectedCallback()%2Cthis._attached%3D!0%7DdisconnectedCallback()%7Bthis._isAttached%3D!1%2Csuper.disconnectedCallback()%7DcomputeExtra(t%2Ce%2Ci)%7Bif(!e.attributes.extra_badge%7C%7C!i)return%5B%5D%3Bvar%20a%3De.attributes.extra_badge%3Breturn%20Array.isArray(a)%7C%7C(a%3D%5Ba%5D)%2Ca.map(i%3D%3E%7Bvar%20a%3Dnull%3Bif(i.entity_id%26%26t.states%5Bi.entity_id%5D%3Fa%3DObject.assign(%7B%7D%2Cwindow.customUI.maybeChangeObject(this%2Ct.states%5Bi.entity_id%5D%2Cthis.inDialog%2C!1))%3Ai.attribute%26%26void%200!%3D%3De.attributes%5Bi.attribute%5D%26%26(a%3D%7Bstate%3AString(e.attributes%5Bi.attribute%5D)%2Centity_id%3A%22none.none%22%2Cattributes%3A%7Bunit_of_measurement%3Ai.unit%7D%7D)%2C!a)return%20null%3Bvar%20s%3Di.blacklist_states%3Breturn%20void%200!%3D%3Ds%26%26(Array.isArray(s)%7C%7C(s%3D%5Bs%5D)%2Cs.some(t%3D%3ERegExp(t).test(a.state.toString())))%3Fnull%3A(a._entityDisplay%3D%22%22%2Ca)%7D).filter(t%3D%3Enull!%3Dt)%7DcomputeExtraVisible(t%2Ce)%7Breturn!(e%7C%7C!t)%26%260!%3D%3Dt.length%7DextraClass(t)%7Breturn%20t%3F%22extra%22%3A%22%22%7D_showControl(t%2Ce)%7Breturn!!t%7C%7C!e.attributes.hide_control%7DcomputeStateDisplay(t)%7Breturn%20super.computeStateDisplay(this.haLocalize%7C%7Cthis.localize%2Ct)%7DisConfirmControls(t)%7Breturn%20t.attributes.confirm_controls%7C%7Ct.attributes.confirm_controls_show_lock%7DclickHandler(t)%7Bthis.root.querySelector(%22%23overlay%22).style.pointerEvents%3D%22none%22%3Bvar%20e%3Dthis.root.querySelector(%22%23lock%22)%3Be%26%26(e.icon%3D%22mdi%3Alock-open-outline%22%2Ce.style.opacity%3D%220.1%22)%2Cwindow.setTimeout(()%3D%3E%7Bthis.root.querySelector(%22%23overlay%22).style.pointerEvents%3D%22%22%2Ce%26%26(e.icon%3D%22mdi%3Alock-outline%22%2Ce.style.opacity%3D%22%22)%7D%2C5e3)%2Ct.stopPropagation()%7DapplyThemes(t%2Ce%2Ci)%7Bvar%20s%3Di.attributes.theme%7C%7C%22default%22%3Ba(e%2Ct.themes%7C%7C%7Bdefault_theme%3A%22default%22%2Cthemes%3A%7B%7D%7D%2Cs)%7DextraDomChanged()%7Bthis.root.querySelectorAll(%22ha-state-label-badge%22).forEach(t%3D%3E%7Bthis.applyThemes(this.hass%2Ct%2Ct.state)%7D)%7D%7D)%2CcustomElements.define(%22ha-themed-slider%22%2Cclass%20extends%20Polymer.Element%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20%3Ahost%20%7B%0A%20%20%20%20%20%20%20%20margin%3A%20var(--ha-themed-slider-margin%2C%20initial)%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.disable-off-when-min%20%7B%0A%20%20%20%20%20%20%20%20--paper-slider-pin-start-color%3A%20%20var(--paper-slider-pin-color)%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20.disable-off-when-min.is-on%20%7B%0A%20%20%20%20%20%20%20%20--paper-slider-knob-start-color%3A%20var(--paper-slider-knob-color)%3B%0A%20%20%20%20%20%20%20%20--paper-slider-knob-start-border-color%3A%20var(--paper-slider-knob-color)%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20paper-slider%20%7B%0A%20%20%20%20%20%20%20%20margin%3A%204px%200%3B%0A%20%20%20%20%20%20%20%20max-width%3A%20100%25%3B%0A%20%20%20%20%20%20%20%20min-width%3A%20100px%3B%0A%20%20%20%20%20%20%20%20width%3A%20var(--ha-paper-slider-width%2C%20200px)%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%0A%20%20%20%20%3Cpaper-slider%0A%20%20%20%20%20%20%20%20%20min%3D'%5B%5B_themedMin%5D%5D'%0A%20%20%20%20%20%20%20%20%20max%3D'%5B%5B_computeAttribute(theme%2C%20%22max%22%2C%20max)%5D%5D'%0A%20%20%20%20%20%20%20%20%20pin%3D'%5B%5B_computeAttribute(theme%2C%20%22pin%22%2C%20pin)%5D%5D'%0A%20%20%20%20%20%20%20%20%20class%24%3D'%5B%5BcomputeClass(theme%2C%20isOn%2C%20_themedMin)%5D%5D'%20value%3D'%5B%5Bvalue%5D%5D'%0A%20%20%20%20%20%20%20%20%20on-change%3D'valueChanged'%3E%0A%20%20%20%20%3C%2Fpaper-slider%3E%0A%20%20%20%20%60%7Dready()%7Bsuper.ready()%2Cthis.disableOffWhenMin%3D!this._computeAttribute(this.theme%2C%22off_when_min%22%2C!this.disableOffWhenMin)%2Cthis.computeEnabledThemedReportWhenNotChanged(this.theme%2Cthis.disableReportWhenNotChanged)%7Dstatic%20get%20properties()%7Breturn%7Bmin%3A%7Btype%3ANumber%2Cvalue%3A0%7D%2Cmax%3A%7Btype%3ANumber%2Cvalue%3A100%7D%2Cpin%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2CisOn%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2CdisableOffWhenMin%3A%7Btype%3ABoolean%2Cvalue%3A!1%2Cnotify%3A!0%7D%2CdisableReportWhenNotChanged%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2Ctheme%3AObject%2Cvalue%3A%7Btype%3ANumber%2Cnotify%3A!0%7D%2C_themedMin%3A%7Btype%3ANumber%2Ccomputed%3A'_computeAttribute(theme%2C%20%22min%22%2C%20min)'%7D%7D%7Dstatic%20get%20observers()%7Breturn%5B%22computeEnabledThemedReportWhenNotChanged(theme%2C%20disableReportWhenNotChanged)%22%5D%7DcomputeEnabledThemedReportWhenNotChanged(t%2Ce)%7Bthis._enabledThemedReportWhenNotChanged%3Dthis._computeAttribute(t%2C%22report_when_not_changed%22%2C!e)%7D_computeAttribute(t%2Ce%2Ci)%7Breturn%20t%26%26e%20in%20t%3Ft%5Be%5D%3Ai%7DcomputeClass(t%2Ce%2Ci)%7Bvar%20a%3D%22%22%3Breturn%20e%26%26(a%2B%3D%22is-on%20%22)%2Cthis._computeAttribute(t%2C%22off_when_min%22%2C!this.disableOffWhenMin)%7C%7C0%3D%3D%3Di%3F%22%22%3A%60%24%7Ba%7Ddisable-off-when-min%60%7DvalueChanged(t)%7Bthis._enabledThemedReportWhenNotChanged%7C%7Cthis.value!%3D%3Dt.target.value%3Fthis.value%3Dt.target.value%3At.stopPropagation()%7D%7D)%3Bvar%20g%3Dfunction(t%2Ce)%7Bif(Array.isArray(t))return%20t%3Bif(Symbol.iterator%20in%20Object(t))return%20function(t%2Ce)%7Bvar%20i%3D%5B%5D%2Ca%3D!0%2Cs%3D!1%2Cn%3Dvoid%200%3Btry%7Bfor(var%20o%2Cr%3Dt%5BSymbol.iterator%5D()%3B!(a%3D(o%3Dr.next()).done)%26%26(i.push(o.value)%2C!e%7C%7Ci.length!%3D%3De)%3Ba%3D!0)%3B%7Dcatch(t)%7Bs%3D!0%2Cn%3Dt%7Dfinally%7Btry%7B!a%26%26r.return%26%26r.return()%7Dfinally%7Bif(s)throw%20n%7D%7Dreturn%20i%7D(t%2Ce)%3Bthrow%20new%20TypeError(%22Invalid%20attempt%20to%20destructure%20non-iterable%20instance%22)%7D%3BcustomElements.define(%22state-card-with-slider%22%2Cclass%20extends%20b%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%20%20%20%3Cstyle%20is%3D%22custom-style%22%20include%3D%22iron-flex%20iron-flex-alignment%20iron-flex-factors%22%3E%3C%2Fstyle%3E%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20%23container%20%7B%0A%20%20%20%20%20%20%20%20position%3A%20relative%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.second-line%2C%20.state-and-toggle%2C%20.state-info%20%7B%0A%20%20%20%20%20%20%20%20max-width%3A%20100%25%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.nowrap%20.state-and-toggle%20%7B%0A%20%20%20%20%20%20%20%20overflow%3A%20hidden%3B%0A%20%20%20%20%20%20%20%20flex-grow%3A%200%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.nowrap%20.second-line%20%7B%0A%20%20%20%20%20%20%20%20overflow%3A%20hidden%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20.second-line%20%7B%0A%20%20%20%20%20%20%20%20padding-top%3A%2020px%3B%0A%20%20%20%20%20%20%20%20padding-bottom%3A%2016px%3B%0A%20%20%20%20%20%20%20%20margin-top%3A%20-20px%3B%0A%20%20%20%20%20%20%20%20margin-bottom%3A%20-16px%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.stretch%20.second-line%2C%20.stretch%20ha-themed-slider%20%7B%0A%20%20%20%20%20%20%20%20width%3A%20100%25%3B%0A%20%20%20%20%20%20%20%20--ha-paper-slider-width%3A%20100%25%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.nowrap%20.state-info%20%7B%0A%20%20%20%20%20%20%20%20min-width%3A%20initial%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20ha-themed-slider%2C%20.top-wrapper%20%7B%0A%20%20%20%20%20%20%20%20min-width%3A%20100px%3B%0A%20%20%20%20%20%20%20%20max-width%3A%20100%25%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20.top-wrapper.stretch%20%7B%0A%20%20%20%20%20%20%20%20display%3A%20block%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20.hidden%20%7B%0A%20%20%20%20%20%20%20%20display%3A%20none%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%0A%20%20%20%20%3Cdiv%20id%3D'container'%20class%24%3D'horizontal%20layout%20flex%20top-wrapper%20%5B%5B_computeWrapClass(mode%2C%20stretchSlider%2C%20lineTooLong%2C%20inDialog)%5D%5D'%3E%0A%20%20%20%20%20%20%3Cdiv%20class%3D'horizontal%20layout%20justified%20flex-auto%20state-and-toggle'%3E%0A%20%20%20%20%20%20%20%20%3Cstate-info%0A%20%20%20%20%20%20%20%20%20%20%20%20class%3D'state-info%20flex-auto'%0A%20%20%20%20%20%20%20%20%20%20%20%20hass%3D'%5B%5Bhass%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20state-obj%3D'%5B%5BstateObj%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20in-dialog%3D'%5B%5BshowLastChanged(stateObj%2C%20inDialog%2C%20extra)%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20secondary-line%24%3D'%5B%5BhasExtra(extra)%5D%5D'%0A%20%20%20%20%20%20%20%20%3E%0A%20%20%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-repeat'%20items%3D'%5B%5Bextra%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cdiv%3E%5B%5Bitem%5D%5D%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%20%20%3C%2Fstate-info%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BbreakSlider%5D%5D'%20class%3D'hidden'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdynamic-with-extra%20hass%3D'%5B%5Bhass%5D%5D'%20state-obj%3D'%5B%5BstateObj%5D%5D'%20control-element%3D'%5B%5BcontrolElement%5D%5D'%20in-dialog%3D'%5B%5BinDialog%5D%5D'%3E%3C%2Fdynamic-with-extra%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5BshowSlider%5D%5D'%20restamp%3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20class%3D'horizontal%20layout%20flex-auto%20end-justified%20second-line'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cha-themed-slider%0A%20%20%20%20%20%20%20%20%20%20%20%20id%3D'slider'%0A%20%20%20%20%20%20%20%20%20%20%20%20max%3D%5B%5Bmax%5D%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20min%3D%5B%5Bmin%5D%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20theme%3D'%5B%5BstateObj.attributes.slider_theme%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20is-on%3D'%5B%5BisOn(stateObj%2C%20nameOn)%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20%20%20value%3D'%7B%7BsliderValue%7D%7D'%0A%20%20%20%20%20%20%20%20%20%20%20%20disable-off-when-min%3D'%7B%7BdisableOffWhenMin%7D%7D'%0A%20%20%20%20%20%20%20%20%20%20%20%20on-change%3D'sliderChanged'%0A%20%20%20%20%20%20%20%20%20%20%20%20on-click%3D'stopPropagation'%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Fha-themed-slider%3E%0A%20%20%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-if'%20if%3D'%5B%5B!breakSlider%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cdynamic-with-extra%20hass%3D'%5B%5Bhass%5D%5D'%20state-obj%3D'%5B%5BstateObj%5D%5D'%20control-element%3D'%5B%5BcontrolElement%5D%5D'%20in-dialog%3D'%5B%5BinDialog%5D%5D'%3E%3C%2Fdynamic-with-extra%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%60%7Dstatic%20get%20properties()%7Breturn%7Bdomain%3AString%2CserviceMin%3AString%2CserviceMax%3AString%2CvalueName%3AString%2CsetValueName%3AString%2CnameOn%3A%7Btype%3AString%2Cvalue%3A%22on%22%7D%2Cmin%3A%7Btype%3ANumber%2Cvalue%3A0%7D%2Cmax%3A%7Btype%3ANumber%2Cvalue%3A255%7D%2CsliderValue%3A%7Btype%3ANumber%2Cvalue%3A0%7D%2CdisableOffWhenMin%3ABoolean%2Cmode%3AString%2CstretchSlider%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2CbreakSlider%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2ChideSlider%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2ClineTooLong%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2CminLineBreak%3ANumber%2CmaxLineBreak%3ANumber%2CshowSlider%3A%7Btype%3ANumber%2Ccomputed%3A%22_showSlider(inDialog%2C%20stateObj%2C%20hideSlider)%22%7D%7D%7Dready()%7Bsuper.ready()%2Cthis._onIronResize%3Dthis._onIronResize.bind(this)%7DconnectedCallback()%7Bsuper.connectedCallback()%2Cthis._isConnected%3D!0%2Cwindow.addEventListener(%22resize%22%2Cthis._onIronResize)%2Cthis._waitForLayout()%7DdisconnectedCallback()%7Bwindow.removeEventListener(%22resize%22%2Cthis._onIronResize)%2Cthis._isConnected%3D!1%2Csuper.disconnectedCallback()%7Dstatic%20get%20observers()%7Breturn%5B%22stateObjChanged(stateObj%2C%20nameOn%2C%20valueName)%22%5D%7D_waitForLayout()%7Bthis._isConnected%26%26(this._setMode()%2Cthis._frameId%7C%7C(this.readyToCompute%3D!1%2Cthis._frameId%3Dwindow.requestAnimationFrame(()%3D%3E%7Bthis._frameId%3Dnull%2Cthis.readyToCompute%3D!0%2Cthis._onIronResize()%7D)))%7D_setMode()%7Bvar%20t%3D%7BhideSlider%3A%22hide-slider%22%3D%3D%3Dthis.mode%26%26this.lineTooLong%2CbreakSlider%3A(%22break-slider%22%3D%3D%3Dthis.mode%7C%7C%22hide-slider%22%3D%3D%3Dthis.mode)%26%26this.lineTooLong%7D%3Bthis.showSlider%7C%7C(t.breakSlider%3D!0)%2Cthis.setProperties(t)%7D_onIronResize()%7Bif(this.readyToCompute)if(%22no-slider%22!%3D%3Dthis.mode)%7Bvar%20t%3Dthis.breakSlider%2Ce%3Dthis.hideSlider%3Bthis.setProperties(%7BlineTooLong%3A!1%2ChideSlider%3A!1%2CbreakSlider%3A!1%7D)%3Bvar%20i%3Dthis.%24.container%2Ca%3Di.clientWidth%3Bif(0!%3D%3Da)%7Bif(a%3C%3Dthis.minLineBreak)this.lineTooLong%3D!0%3Belse%20if(a%3E%3Dthis.maxLineBreak)this.lineTooLong%3D!1%3Belse%7Bif(e%26%26%22hide-slider%22%3D%3D%3Dthis.mode)return%20void%20this._waitForLayout()%3Bvar%20s%3Di.clientHeight%2Cn%3Dthis.root.querySelector(%22.state-info%22).clientHeight%3Bthis.lineTooLong%3Ds%3E1.5*n%2Cthis.lineTooLong%3Fthis.minLineBreak%3Da%3At%7C%7C(this.maxLineBreak%3Da)%7Dthis._setMode()%7D%7Delse%20this.setProperties(%7BhideSlider%3A!0%2CbreakSlider%3A!0%7D)%7D_computeWrapClass(t%2Ce%2Ci%2Ca)%7Breturn%20a%3F%22%22%3A%22single-line%22%3D%3D%3Dt%3F%22nowrap%22%3Ae%26%26i%3F%22stretch%20wrap%22%3A%22wrap%22%7D_showSlider(t%2Ce%2Ci)%7Breturn!t%26%26!i%7DsliderChanged(t)%7Bvar%20e%3DparseInt(t.target.value%2C10)%2Ci%3D%7Bentity_id%3Athis.stateObj.entity_id%7D%3Bif(!Number.isNaN(e))%7Bvar%20a%3Dthis.root.querySelector(%22%23slider%22)%3Bif(t.target!%3D%3Da)a%3Dt.target%3Belse%20if(t.path)a%3Dg(t.path%2C1)%5B0%5D%3Belse%20if(t.composedPath)%7Bvar%20s%3Dt.composedPath()%3Ba%3Dg(s%2C1)%5B0%5D%7D0%3D%3D%3De%7C%7Ce%3C%3Da.min%26%26!this.disableOffWhenMin%3Fthis.hass.callService(this.domain%2Cthis.serviceMin%2Ci)%3A(i%5Bthis.setValueName%7C%7Cthis.valueName%5D%3De%2Cthis.hass.callService(this.domain%2Cthis.serviceMax%2Ci))%7D%7DstateObjChanged(t%2Ce%2Ci)%7Bvar%20a%3D%7BsliderValue%3Athis.isOn(t%2Ce)%3Ft.attributes%5Bi%5D%3A0%7D%3Bt%26%26Object.assign(a%2C%7BminLineBreak%3A0%2CmaxLineBreak%3A999%2ChideSlider%3A!1%2CbreakSlider%3A!1%2ClineTooLong%3A!1%2Cmode%3At.attributes.state_card_mode%2CstretchSlider%3A!!t.attributes.stretch_slider%7D)%2Cthis.setProperties(a)%2Ct%26%26this._waitForLayout()%7DisOn(t%2Ce)%7Breturn%20t%26%26(!e%7C%7Ct.state%3D%3D%3De)%7DstopPropagation(t)%7Bt.stopPropagation()%7D%7D)%2CcustomElements.define(%22state-card-without-slider%22%2Cclass%20extends%20b%7Bstatic%20get%20template()%7Breturn%20d%60%0A%20%20%20%20%3Cstyle%20is%3D%22custom-style%22%20include%3D%22iron-flex%20iron-flex-alignment%22%3E%3C%2Fstyle%3E%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20%23container%20%7B%0A%20%20%20%20%20%20%20%20position%3A%20relative%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%0A%20%20%20%20%3Cdiv%20id%3D'container'%20class%3D'horizontal%20layout%20justified'%3E%0A%20%20%20%20%20%20%3Cstate-info%0A%20%20%20%20%20%20%20%20%20%20hass%3D'%5B%5Bhass%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20class%3D'state-info'%0A%20%20%20%20%20%20%20%20%20%20state-obj%3D'%5B%5BstateObj%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20in-dialog%3D'%5B%5BshowLastChanged(stateObj%2C%20inDialog%2C%20extra)%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20secondary-line%24%3D'%5B%5BhasExtra(extra)%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20is%3D'dom-repeat'%20items%3D'%5B%5Bextra%5D%5D'%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cdiv%3E%5B%5Bitem%5D%5D%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Fstate-info%3E%0A%20%20%20%20%20%20%3Cdynamic-with-extra%0A%20%20%20%20%20%20%20%20%20%20hass%3D'%5B%5Bhass%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20state-obj%3D'%5B%5BstateObj%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20control-element%3D'%5B%5BcontrolElement%5D%5D'%0A%20%20%20%20%20%20%20%20%20%20in-dialog%3D'%5B%5BinDialog%5D%5D'%3E%0A%20%20%20%20%20%20%3C%2Fdynamic-with-extra%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%60%7D%7D)%3Bvar%20y%3D%5B%22configurator%22%5D%2C_%3D%7Blight%3A1%2Ccover%3A4%2Cclimate%3A1%7D%2Cw%3D%7Btoggle%3A%22ha-entity-toggle%22%2Cdisplay%3A%22%22%2Ccover%3A%22ha-cover-controls%22%7D%3BcustomElements.define(%22state-card-custom-ui%22%2Cclass%20extends%20Polymer.Element%7Bstatic%20get%20properties()%7Breturn%7Bhass%3AObject%2CinDialog%3A%7Btype%3ABoolean%2Cvalue%3A!1%7D%2CstateObj%3AObject%7D%7Dstatic%20get%20observers()%7Breturn%5B%22inputChanged(hass%2C%20inDialog%2C%20stateObj)%22%5D%7DconnectedCallback()%7Bsuper.connectedCallback()%3Bvar%20t%3Dthis.parentNode.parentNode%3B%22DIV%22%3D%3D%3Dt.tagName%26%26(t.classList.contains(%22state%22)%7C%7Ct.classList.contains(%22child-card%22))%26%26(this._container%3Dt%2Ct.style.setProperty(%22background-color%22%2C%22var(--paper-card-background-color%2C%20inherit)%22)%2Ct.updateStyles%7C%7C(t.updateStyles%3D(e%3D%3E%7BObject.keys(e).forEach(i%3D%3E%7Bt.style.setProperty(i%2Ce%5Bi%5D)%7D)%7D)))%2Cthis._isAttached%3D!0%2Cthis.inputChanged(this.hass%2Cthis.inDialog%2Cthis.stateObj)%7DdisconnectedCallback()%7Bthis._isAttached%3D!1%2Cthis._container%26%26(this._container.updateStyles(%7Bdisplay%3A%22%22%2Cmargin%3A%22%22%2Cpadding%3A%22%22%7D)%2Ca(this._container%2Cthis.hass.themes%7C%7C%7Bdefault_theme%3A%22default%22%2Cthemes%3A%7B%7D%7D%2C%22default%22)%2Cthis._container%3Dnull)%2Csuper.disconnectedCallback()%7DbadgeMode(t%2Ce%2Ci)%7Bvar%20a%3D%5B%5D%3Bif(%22group%22%3D%3D%3Di)e.attributes.entity_id.forEach(i%3D%3E%7Bvar%20s%3Dt.states%5Bi%5D%3Bs%3Fe.attributes.badges_list%26%26!e.attributes.badges_list.includes(s.entity_id)%7C%7Ca.push(window.customUI.maybeChangeObject(this%2Cs%2C!1%2C!1))%3Aconsole.warn(%60Unknown%20ID%20%24%7Bi%7D%20in%20group%20%24%7Be.entity_id%7D%60)%7D)%3Belse%20if(a.push(e)%2Cthis._container)%7Bthis._container.style.display%3D%22inline-block%22%3Bvar%20s%3D%7Bdisplay%3A%22inline-block%22%7D%3Bthis._container.classList.contains(%22state%22)%26%26(s.margin%3D%22var(--ha-badges-card-margin%2C%200)%22)%2Cthis.updateStyles(s)%7Do(this%2C%22HA-BADGES-CARD%22%2C%7Bhass%3At%2Cstates%3Aa%7D)%2Cthis._container%26%26this._container.updateStyles(%7Bwidth%3A%22var(--ha-badges-card-width%2C%20initial)%22%2C%22text-align%22%3A%22var(--ha-badges-card-text-align%2C%20initial)%22%7D)%2Cthis.lastChild.style.fontSize%3D%2285%25%22%2Cthis.style.setProperty(%22--ha-state-label-badge-margin-bottom%22%2C%220%22)%7DcleanBadgeStyle()%7Bthis._container%26%26this._container.updateStyles(%7Bdisplay%3A%22%22%2Cwidth%3A%22%22%2C%22text-align%22%3A%22%22%7D)%2Cthis.updateStyles(%7Bdisplay%3A%22%22%2Cmargin%3A%22%22%7D)%7DapplyThemes(t%2Ce)%7Bvar%20i%3Dthis%2Cs%3D%22default%22%3Bthis._container%26%26(i%3Dthis._container)%2Ce.attributes.theme%26%26(s%3De.attributes.theme)%2Ca(i%2Ct.themes%7C%7C%7Bdefault_theme%3A%22default%22%2Cthemes%3A%7B%7D%7D%2Cs)%7DmaybeHideEntity(t)%7Breturn%20t%3F(this._container%26%26this._container.updateStyles(%7Bmargin%3A%22%22%2Cpadding%3A%22%22%7D)%2C!1)%3A(this.lastChild%26%26this.removeChild(this.lastChild)%2Cthis._container%26%26this._container.updateStyles(%7Bmargin%3A%220%22%2Cpadding%3A%220%22%7D)%2C!0)%7DsliderEligible_(t%2Ce%2Ci)%7Breturn!i%26%26_%5Bt%5D%26%26_%5Bt%5D%26e.attributes.supported_features%26%26e.attributes.state_card_mode%26%26%22no-slider%22!%3D%3De.attributes.state_card_mode%7DinputChanged(t%2Ce%2Ci)%7Bif(i%26%26t%26%26this._isAttached)%7Bvar%20a%3Dn(i)%2Cs%3Dwindow.customUI.maybeChangeObject(this%2Ci%2Ce%2C!0)%3Bthis.maybeHideEntity(s)%7C%7C(this.applyThemes(t%2Cs)%2Ce%7C%7C%22badges%22!%3D%3Ds.attributes.state_card_mode%3Fthis.regularMode_(t%2Ce%2Cs%2Ca)%3Athis.badgeMode(t%2Cs%2Ca))%7D%7DregularMode_(t%2Ce%2Ci%2Ca)%7Bthis.cleanBadgeStyle()%3Bvar%20s%3D%7Bhass%3At%2CstateObj%3Ai%2CinDialog%3Ae%7D%2Cl%3Dfunction(t%2Ce)%7Bif(%22unavailable%22%3D%3D%3De.state)return%22display%22%3Bvar%20i%3Dn(e)%3Breturn%20r.includes(i)%3Fi%3Afunction(t%2Ce)%7Bvar%20i%3Dn(e)%3Breturn%22group%22%3D%3D%3Di%3F%22on%22%3D%3D%3De.state%7C%7C%22off%22%3D%3D%3De.state%3A%22climate%22%3D%3D%3Di%3F!!(4096%26(e.attributes%7C%7C%7B%7D).supported_features)%3Afunction(t%2Ce)%7Bvar%20i%3Dt.services%5Be%5D%3Breturn!!i%26%26(%22lock%22%3D%3D%3De%3F%22lock%22in%20i%3A%22cover%22%3D%3D%3De%3F%22open_cover%22in%20i%3A%22turn_on%22in%20i)%7D(t%2Ci)%7D(t%2Ce)%26%26%22hidden%22!%3D%3De.attributes.control%3F%22toggle%22%3A%22display%22%7D(t%2Ci)%2Cd%3Dvoid%200%2Cc%3Di.attributes.state_card_custom_ui_secondary%3B%22light%22%3D%3D%3Da%26%26this.sliderEligible_(a%2Ci%2Ce)%3F(Object.assign(s%2C%7BcontrolElement%3A%22ha-entity-toggle%22%2CserviceMin%3A%22turn_off%22%2CserviceMax%3A%22turn_on%22%2CvalueName%3A%22brightness%22%2Cdomain%3Aa%7D)%2Cd%3D%22state-card-with-slider%22)%3A%22cover%22%3D%3D%3Da%26%26this.sliderEligible_(a%2Ci%2Ce)%3F(Object.assign(s%2C%7BcontrolElement%3A%22ha-cover-controls%22%2Cmax%3A100%2CserviceMin%3A%22close_cover%22%2CserviceMax%3A%22set_cover_position%22%2CsetValueName%3A%22position%22%2CvalueName%3A%22current_position%22%2CnameOn%3A%22open%22%2Cdomain%3Aa%7D)%2Cd%3D%22state-card-with-slider%22)%3A%22climate%22%3D%3D%3Da%26%26this.sliderEligible_(a%2Ci%2Ce)%3F(Object.assign(s%2C%7BcontrolElement%3A%22ha-climate-state%22%2Cmin%3Ai.attributes.min_temp%7C%7C-100%2Cmax%3Ai.attributes.max_temp%7C%7C200%2CserviceMin%3A%22set_temperature%22%2CserviceMax%3A%22set_temperature%22%2CvalueName%3A%22temperature%22%2CnameOn%3A%22%22%2Cdomain%3Aa%7D)%2Cd%3D%22state-card-with-slider%22)%3Avoid%200!%3D%3Dw%5Bl%5D%3F(s.controlElement%3Dw%5Bl%5D%2Cd%3D%22state-card-without-slider%22)%3Ai.attributes.show_last_changed%26%26!y.includes(l)%26%26(s.inDialog%3D!0)%2C%22unavailable%22%3D%3D%3Di.state%26%26(s.controlElement%3D%22%22)%2Cvoid%200!%3D%3Di.attributes.control_element%26%26(s.controlElement%3Di.attributes.control_element)%2Co(this%2C(c%7C%7Cd%7C%7C%60STATE-CARD-%24%7Bl%7D%60).toUpperCase()%2Cs)%7D%7D)%7D%2Cfunction(t%2Ce)%7Bwindow.JSCompiler_renameProperty%3Dfunction(t)%7Breturn%20t%7D%7D%5D)%3B%0A%2F%2F%23%20sourceMappingURL%3Dscripts.js.map%0A%2F%2F%23%20sourceURL%3Dhttps%3A%2F%2REDACTED.duckdns.org%3A8124%2Flocal%2Fcustom_ui%2Fstate-card-custom-ui.html.js%0A:27:18971 TypeError: The superclass is not an object.
andrey-git commented 5 years ago

Fixed by release 2018-12-17