purifier-card 2.0.1 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -23
- package/dist/purifier-card.js +26 -30
- package/package.json +1 -1
- package/src/purifier-card.js +22 -30
- package/src/styles.js +4 -0
package/README.md
CHANGED
|
@@ -1,26 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
>
|
|
3
|
-
> I'm the creator of this project and I'm Ukrainian.
|
|
4
|
-
>
|
|
5
|
-
> **My country, Ukraine, [is being invaded by the Russian Federation, right now](https://www.bbc.com/news/world-europe-60504334)**. I've fled Kyiv and now I'm safe with my family in the western part of Ukraine. At least for now.
|
|
6
|
-
> Russia is hitting target all over my country by ballistic missiles.
|
|
7
|
-
>
|
|
8
|
-
> **Please, save me and help to save my country!**
|
|
9
|
-
>
|
|
10
|
-
> Ukrainian National Bank opened [an account to Raise Funds for Ukraine’s Armed Forces](https://bank.gov.ua/en/news/all/natsionalniy-bank-vidkriv-spetsrahunok-dlya-zboru-koshtiv-na-potrebi-armiyi):
|
|
11
|
-
>
|
|
12
|
-
> ```
|
|
13
|
-
> SWIFT Code NBU: NBUA UA UX
|
|
14
|
-
> JP MORGAN CHASE BANK, New York
|
|
15
|
-
> SWIFT Code: CHASUS33
|
|
16
|
-
> Account: 400807238
|
|
17
|
-
> 383 Madison Avenue, New York, NY 10179, USA
|
|
18
|
-
> IBAN: UA843000010000000047330992708
|
|
19
|
-
> ```
|
|
20
|
-
>
|
|
21
|
-
> You can also donate to [charity supporting Ukrainian army](https://savelife.in.ua/en/donate/).
|
|
22
|
-
>
|
|
23
|
-
> **THANK YOU!**
|
|
1
|
+
[](https://stand-with-ukraine.pp.ua/)
|
|
24
2
|
|
|
25
3
|
# Purifier Card
|
|
26
4
|
|
package/dist/purifier-card.js
CHANGED
|
@@ -131,7 +131,7 @@ class{handleAttributeExpressions(A,C,I,E){const g=C[0];if("."===g){return new x(
|
|
|
131
131
|
* Code distributed by Google as part of the polymer project is also
|
|
132
132
|
* subject to an additional IP rights grant found at
|
|
133
133
|
* http://polymer.github.io/PATENTS.txt
|
|
134
|
-
*/,O=(A,C)=>`${A}--${C}`;let
|
|
134
|
+
*/,O=(A,C)=>`${A}--${C}`;let y=!0;void 0===window.ShadyCSS?y=!1:void 0===window.ShadyCSS.prepareTemplateDom&&(console.warn("Incompatible ShadyCSS version detected. Please update to at least @webcomponents/webcomponentsjs@2.0.2 and @webcomponents/shadycss@1.3.1."),y=!1);const r=A=>C=>{const E=O(C.type,A);let g=l.get(E);void 0===g&&(g={stringsArray:new WeakMap,keyString:new Map},l.set(E,g));let B=g.stringsArray.get(C.strings);if(void 0!==B)return B;const M=C.strings.join(I);if(B=g.keyString.get(M),void 0===B){const I=C.getTemplateElement();y&&window.ShadyCSS.prepareTemplateDom(I,A),B=new Q(C,I),g.keyString.set(M,B)}return g.stringsArray.set(C.strings,B),B},Z=["html","svg"],T=new Set,W=(A,C,I)=>{T.add(A);const E=I?I.element:document.createElement("template"),g=C.querySelectorAll("style"),{length:Q}=g;if(0===Q)return void window.ShadyCSS.prepareTemplateStyles(E,A);const B=document.createElement("style");for(let A=0;A<Q;A++){const C=g[A];C.parentNode.removeChild(C),B.textContent+=C.textContent}(A=>{Z.forEach((C=>{const I=l.get(O(C,A));void 0!==I&&I.keyString.forEach((A=>{const{element:{content:C}}=A,I=new Set;Array.from(C.querySelectorAll("style")).forEach((A=>{I.add(A)})),h(A,I)}))}))})(A);const M=E.content;I?function(A,C,I=null){const{element:{content:E},parts:g}=A;if(null==I)return void E.appendChild(C);const Q=document.createTreeWalker(E,133,null,!1);let B=Y(g),M=0,i=-1;for(;Q.nextNode();)for(i++,Q.currentNode===I&&(M=o(C),I.parentNode.insertBefore(C,I));-1!==B&&g[B].index===i;){if(M>0){for(;-1!==B;)g[B].index+=M,B=Y(g,B);return}B=Y(g,B)}}(I,B,M.firstChild):M.insertBefore(B,M.firstChild),window.ShadyCSS.prepareTemplateStyles(E,A);const i=M.querySelector("style");if(window.ShadyCSS.nativeShadow&&null!==i)C.insertBefore(i.cloneNode(!0),C.firstChild);else if(I){M.insertBefore(B,M.firstChild);const A=new Set;A.add(B),h(I,A)}};window.JSCompiler_renameProperty=(A,C)=>A;const H={toAttribute(A,C){switch(C){case Boolean:return A?"":null;case Object:case Array:return null==A?A:JSON.stringify(A)}return A},fromAttribute(A,C){switch(C){case Boolean:return null!==A;case Number:return null===A?null:Number(A);case Object:case Array:return JSON.parse(A)}return A}},n=(A,C)=>C!==A&&(C==C||A==A),z={attribute:!0,type:String,converter:H,reflect:!1,hasChanged:n};class N extends HTMLElement{constructor(){super(),this._updateState=0,this._instanceProperties=void 0,this._updatePromise=new Promise((A=>this._enableUpdatingResolver=A)),this._changedProperties=new Map,this._reflectingProperties=void 0,this.initialize()}static get observedAttributes(){this.finalize();const A=[];return this._classProperties.forEach(((C,I)=>{const E=this._attributeNameForProperty(I,C);void 0!==E&&(this._attributeToPropertyMap.set(E,I),A.push(E))})),A}static _ensureClassProperties(){if(!this.hasOwnProperty(JSCompiler_renameProperty("_classProperties",this))){this._classProperties=new Map;const A=Object.getPrototypeOf(this)._classProperties;void 0!==A&&A.forEach(((A,C)=>this._classProperties.set(C,A)))}}static createProperty(A,C=z){if(this._ensureClassProperties(),this._classProperties.set(A,C),C.noAccessor||this.prototype.hasOwnProperty(A))return;const I="symbol"==typeof A?Symbol():"__"+A,E=this.getPropertyDescriptor(A,I,C);void 0!==E&&Object.defineProperty(this.prototype,A,E)}static getPropertyDescriptor(A,C,I){return{get(){return this[C]},set(I){const E=this[A];this[C]=I,this._requestUpdate(A,E)},configurable:!0,enumerable:!0}}static getPropertyOptions(A){return this._classProperties&&this._classProperties.get(A)||z}static finalize(){const A=Object.getPrototypeOf(this);if(A.hasOwnProperty("finalized")||A.finalize(),this.finalized=!0,this._ensureClassProperties(),this._attributeToPropertyMap=new Map,this.hasOwnProperty(JSCompiler_renameProperty("properties",this))){const A=this.properties,C=[...Object.getOwnPropertyNames(A),..."function"==typeof Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(A):[]];for(const I of C)this.createProperty(I,A[I])}}static _attributeNameForProperty(A,C){const I=C.attribute;return!1===I?void 0:"string"==typeof I?I:"string"==typeof A?A.toLowerCase():void 0}static _valueHasChanged(A,C,I=n){return I(A,C)}static _propertyValueFromAttribute(A,C){const I=C.type,E=C.converter||H,g="function"==typeof E?E:E.fromAttribute;return g?g(A,I):A}static _propertyValueToAttribute(A,C){if(void 0===C.reflect)return;const I=C.type,E=C.converter;return(E&&E.toAttribute||H.toAttribute)(A,I)}initialize(){this._saveInstanceProperties(),this._requestUpdate()}_saveInstanceProperties(){this.constructor._classProperties.forEach(((A,C)=>{if(this.hasOwnProperty(C)){const A=this[C];delete this[C],this._instanceProperties||(this._instanceProperties=new Map),this._instanceProperties.set(C,A)}}))}_applyInstanceProperties(){this._instanceProperties.forEach(((A,C)=>this[C]=A)),this._instanceProperties=void 0}connectedCallback(){this.enableUpdating()}enableUpdating(){void 0!==this._enableUpdatingResolver&&(this._enableUpdatingResolver(),this._enableUpdatingResolver=void 0)}disconnectedCallback(){}attributeChangedCallback(A,C,I){C!==I&&this._attributeToProperty(A,I)}_propertyToAttribute(A,C,I=z){const E=this.constructor,g=E._attributeNameForProperty(A,I);if(void 0!==g){const A=E._propertyValueToAttribute(C,I);if(void 0===A)return;this._updateState=8|this._updateState,null==A?this.removeAttribute(g):this.setAttribute(g,A),this._updateState=-9&this._updateState}}_attributeToProperty(A,C){if(8&this._updateState)return;const I=this.constructor,E=I._attributeToPropertyMap.get(A);if(void 0!==E){const A=I.getPropertyOptions(E);this._updateState=16|this._updateState,this[E]=I._propertyValueFromAttribute(C,A),this._updateState=-17&this._updateState}}_requestUpdate(A,C){let I=!0;if(void 0!==A){const E=this.constructor,g=E.getPropertyOptions(A);E._valueHasChanged(this[A],C,g.hasChanged)?(this._changedProperties.has(A)||this._changedProperties.set(A,C),!0!==g.reflect||16&this._updateState||(void 0===this._reflectingProperties&&(this._reflectingProperties=new Map),this._reflectingProperties.set(A,g))):I=!1}!this._hasRequestedUpdate&&I&&(this._updatePromise=this._enqueueUpdate())}requestUpdate(A,C){return this._requestUpdate(A,C),this.updateComplete}async _enqueueUpdate(){this._updateState=4|this._updateState;try{await this._updatePromise}catch(A){}const A=this.performUpdate();return null!=A&&await A,!this._hasRequestedUpdate}get _hasRequestedUpdate(){return 4&this._updateState}get hasUpdated(){return 1&this._updateState}performUpdate(){this._instanceProperties&&this._applyInstanceProperties();let A=!1;const C=this._changedProperties;try{A=this.shouldUpdate(C),A?this.update(C):this._markUpdated()}catch(C){throw A=!1,this._markUpdated(),C}A&&(1&this._updateState||(this._updateState=1|this._updateState,this.firstUpdated(C)),this.updated(C))}_markUpdated(){this._changedProperties=new Map,this._updateState=-5&this._updateState}get updateComplete(){return this._getUpdateComplete()}_getUpdateComplete(){return this._updatePromise}shouldUpdate(A){return!0}update(A){void 0!==this._reflectingProperties&&this._reflectingProperties.size>0&&(this._reflectingProperties.forEach(((A,C)=>this._propertyToAttribute(C,this[C],A))),this._reflectingProperties=void 0),this._markUpdated()}updated(A){}firstUpdated(A){}}N.finalized=!0;
|
|
135
135
|
/**
|
|
136
136
|
@license
|
|
137
137
|
Copyright (c) 2019 The Polymer Project Authors. All rights reserved.
|
|
@@ -156,7 +156,7 @@ const d="adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.pro
|
|
|
156
156
|
* subject to an additional IP rights grant found at
|
|
157
157
|
* http://polymer.github.io/PATENTS.txt
|
|
158
158
|
*/
|
|
159
|
-
(window.litElementVersions||(window.litElementVersions=[])).push("2.3.1");const f={};class _ extends N{static getStyles(){return this.styles}static _getUniqueStyles(){if(this.hasOwnProperty(JSCompiler_renameProperty("_styles",this)))return;const A=this.getStyles();if(void 0===A)this._styles=[];else if(Array.isArray(A)){const C=(A,I)=>A.reduceRight(((A,I)=>Array.isArray(I)?C(I,A):(A.add(I),A)),I),I=C(A,new Set),E=[];I.forEach((A=>E.unshift(A))),this._styles=E}else this._styles=[A]}initialize(){super.initialize(),this.constructor._getUniqueStyles(),this.renderRoot=this.createRenderRoot(),window.ShadowRoot&&this.renderRoot instanceof window.ShadowRoot&&this.adoptStyles()}createRenderRoot(){return this.attachShadow({mode:"open"})}adoptStyles(){const A=this.constructor._styles;0!==A.length&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow?d?this.renderRoot.adoptedStyleSheets=A.map((A=>A.styleSheet)):this._needsShimAdoptedStyleSheets=!0:window.ShadyCSS.ScopingShim.prepareAdoptedCssText(A.map((A=>A.cssText)),this.localName))}connectedCallback(){super.connectedCallback(),this.hasUpdated&&void 0!==window.ShadyCSS&&window.ShadyCSS.styleElement(this)}update(A){const C=this.render();super.update(A),C!==f&&this.constructor.render(C,this.renderRoot,{scopeName:this.localName,eventContext:this}),this._needsShimAdoptedStyleSheets&&(this._needsShimAdoptedStyleSheets=!1,this.constructor._styles.forEach((A=>{const C=document.createElement("style");C.textContent=A.cssText,this.renderRoot.appendChild(C)})))}render(){return f}}_.finalized=!0,_.render=(A,I,E)=>{if(!E||"object"!=typeof E||!E.scopeName)throw new Error("The `scopeName` option is required.");const g=E.scopeName,Q=q.has(I),B=r&&11===I.nodeType&&!!I.host,M=B&&!T.has(g),i=M?document.createDocumentFragment():I;if(((A,I,E)=>{let g=q.get(I);void 0===g&&(C(I,I.firstChild),q.set(I,g=new s(Object.assign({templateFactory:u},E))),g.appendInto(I)),g.setValue(A),g.commit()})(A,i,Object.assign({templateFactory:y(g)},E)),M){const A=q.get(i);q.delete(i);const E=A.value instanceof U?A.value.template:void 0;W(g,i,E),C(I,I.firstChild),I.appendChild(i),q.set(I,A)}!Q&&B&&window.ShadyCSS.styleElement(I.host)};var $=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,AA="[^\\s]+",CA=/\[([^]*?)\]/gm;function IA(A,C){for(var I=[],E=0,g=A.length;E<g;E++)I.push(A[E].substr(0,C));return I}var EA=function(A){return function(C,I){var E=I[A].map((function(A){return A.toLowerCase()})).indexOf(C.toLowerCase());return E>-1?E:null}};function gA(A){for(var C=[],I=1;I<arguments.length;I++)C[I-1]=arguments[I];for(var E=0,g=C;E<g.length;E++){var Q=g[E];for(var B in Q)A[B]=Q[B]}return A}var QA=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],BA=["January","February","March","April","May","June","July","August","September","October","November","December"],MA=IA(BA,3),iA={dayNamesShort:IA(QA,3),dayNames:QA,monthNamesShort:MA,monthNames:BA,amPm:["am","pm"],DoFn:function(A){return A+["th","st","nd","rd"][A%10>3?0:(A-A%10!=10?1:0)*A%10]}},wA=gA({},iA),hA=function(A,C){for(void 0===C&&(C=2),A=String(A);A.length<C;)A="0"+A;return A},oA={D:function(A){return String(A.getDate())},DD:function(A){return hA(A.getDate())},Do:function(A,C){return C.DoFn(A.getDate())},d:function(A){return String(A.getDay())},dd:function(A){return hA(A.getDay())},ddd:function(A,C){return C.dayNamesShort[A.getDay()]},dddd:function(A,C){return C.dayNames[A.getDay()]},M:function(A){return String(A.getMonth()+1)},MM:function(A){return hA(A.getMonth()+1)},MMM:function(A,C){return C.monthNamesShort[A.getMonth()]},MMMM:function(A,C){return C.monthNames[A.getMonth()]},YY:function(A){return hA(String(A.getFullYear()),4).substr(2)},YYYY:function(A){return hA(A.getFullYear(),4)},h:function(A){return String(A.getHours()%12||12)},hh:function(A){return hA(A.getHours()%12||12)},H:function(A){return String(A.getHours())},HH:function(A){return hA(A.getHours())},m:function(A){return String(A.getMinutes())},mm:function(A){return hA(A.getMinutes())},s:function(A){return String(A.getSeconds())},ss:function(A){return hA(A.getSeconds())},S:function(A){return String(Math.round(A.getMilliseconds()/100))},SS:function(A){return hA(Math.round(A.getMilliseconds()/10),2)},SSS:function(A){return hA(A.getMilliseconds(),3)},a:function(A,C){return A.getHours()<12?C.amPm[0]:C.amPm[1]},A:function(A,C){return A.getHours()<12?C.amPm[0].toUpperCase():C.amPm[1].toUpperCase()},ZZ:function(A){var C=A.getTimezoneOffset();return(C>0?"-":"+")+hA(100*Math.floor(Math.abs(C)/60)+Math.abs(C)%60,4)},Z:function(A){var C=A.getTimezoneOffset();return(C>0?"-":"+")+hA(Math.floor(Math.abs(C)/60),2)+":"+hA(Math.abs(C)%60,2)}},YA=function(A){return+A-1},FA=[null,"[1-9]\\d?"],DA=[null,AA],KA=["isPm",AA,function(A,C){var I=A.toLowerCase();return I===C.amPm[0]?0:I===C.amPm[1]?1:null}],GA=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(A){var C=(A+"").match(/([+-]|\d\d)/gi);if(C){var I=60*+C[1]+parseInt(C[2],10);return"+"===C[0]?I:-I}return 0}],UA=(EA("monthNamesShort"),EA("monthNames"),{default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"});var RA=function(A,C,I){if(void 0===C&&(C=UA.default),void 0===I&&(I={}),"number"==typeof A&&(A=new Date(A)),"[object Date]"!==Object.prototype.toString.call(A)||isNaN(A.getTime()))throw new Error("Invalid Date pass to format");var E=[];C=(C=UA[C]||C).replace(CA,(function(A,C){return E.push(C),"@@@"}));var g=gA(gA({},wA),I);return(C=C.replace($,(function(C){return oA[C](A,g)}))).replace(/@@@/g,(function(){return E.shift()}))},SA=(function(){try{(new Date).toLocaleDateString("i")}catch(A){return"RangeError"===A.name}}(),function(){try{(new Date).toLocaleString("i")}catch(A){return"RangeError"===A.name}}(),function(){try{(new Date).toLocaleTimeString("i")}catch(A){return"RangeError"===A.name}}(),function(A,C,I,E){E=E||{},I=null==I?{}:I;var g=new Event(C,{bubbles:void 0===E.bubbles||E.bubbles,cancelable:Boolean(E.cancelable),composed:void 0===E.composed||E.composed});return g.detail=I,A.dispatchEvent(g),g});var JA={name:"Purifier Card",description:"Purifier card allows you to control your smart purifier.",not_available:"Entity is not available",toggle_power:"Turn on/off"},kA={on:"On",off:"Off"},aA={Auto:"Auto",Silent:"Silent",Favorite:"Favorite",Fan:"Fan"},cA={missing_entity:"Specifying entity is required!"},sA={actions_array:"WARNING: 'actions' is renamed to 'shortcuts'"},LA={entity:"Entity (Required)",compact_view:"Compact View",compact_view_aria_label_on:"Toggle compact view on",compact_view_aria_label_off:"Toggle compact view off",show_name:"Show Name",show_name_aria_label_on:"Toggle display name on",show_name_aria_label_off:"Toggle display name off",show_state:"Show State",show_state_aria_label_on:"Toggle display state on",show_state_aria_label_off:"Toggle display state off",show_toolbar:"Show Toolbar",show_toolbar_aria_label_on:"Toggle display toolbar on",show_toolbar_aria_label_off:"Toggle display toolbar off",code_only_note:"Note: Setting actions and stats options are available exclusively using Code Editor."},xA={common:JA,state:kA,preset_mode:aA,error:cA,warning:sA,editor:LA},mA=Object.freeze({__proto__:null,common:JA,state:kA,preset_mode:aA,error:cA,warning:sA,editor:LA,default:xA}),VA={name:"Очищувач повітря",description:'Картка "Очищувач повітря" дозволяє керувати розумним очищувачем повітря.',not_available:"Очищувач повітря недоступний",toggle_power:"Увімкнути/Вимкнути"},eA={on:"Увімкнений",off:"Вимкнений"},jA={Auto:"Авто",Silent:"Тихий",Favorite:"Улюблений",Fan:"Вентилятор"},uA={missing_entity:"Сутність є обов’язковим полем!"},lA={entity:"Об’єкт (Required)",compact_view:"Компактний перегляд",compact_view_aria_label_on:"Увімкнути компактний перегляд",compact_view_aria_label_off:"Вимкнути компактний перегляд",show_name:"Показувати ім’я?",show_name_aria_label_on:"Показати ім’я",show_name_aria_label_off:"Приховати ім’я",show_state:"Показувати стан?",show_state_aria_label_on:"Показати стан",show_state_aria_label_off:"Приховати стан",show_toolbar:"Показувати панель дій?",show_toolbar_aria_label_on:"Показати панель дій",show_toolbar_aria_label_off:"Приховати панель дій",code_only_note:"Увага: Опції actions та stats доступні виключно через редактор коду."},qA={common:VA,state:eA,preset_mode:jA,error:uA,editor:lA},pA=Object.freeze({__proto__:null,common:VA,state:eA,preset_mode:jA,error:uA,editor:lA,default:qA}),tA={name:"Purifier Card",description:"Purifier kartı hava temizleyicinizi kontrol etmenize yardımcı olur.",not_available:"Varlık müsait değil",toggle_power:"Kapat/Aç"},OA={on:"Açık",off:"Kapalı"},rA={Auto:"Otomatik",Silent:"Sessiz",Favorite:"Favori",Fan:"Fan"},yA={missing_entity:"Varlığı belirtmeniz gereklidir!"},ZA={entity:"Varlık (Gerekli)",compact_view:"Kompakt Görünüm",compact_view_aria_label_on:"Kompakt Görünümü aç",compact_view_aria_label_off:"Kompakt Görünümü kapat",show_name:"Show Name",show_name_aria_label_on:"İsim gösterimini aç",show_name_aria_label_off:"İsim gösterimini kapat",show_state:"Show State",show_state_aria_label_on:"Durum gösterimini aç",show_state_aria_label_off:"Durum gösterimini kapat",show_toolbar:"Show Toolbar",show_toolbar_aria_label_on:"Araç çubuğu gösterimini aç",show_toolbar_aria_label_off:"Araç çubuğu gösterimini kapat",code_only_note:"Not: Aksiyon ataması ve istatistik seçenekleri şu anda Kod Editörü kullanımı ile mümkündür."},TA={common:tA,state:OA,preset_mode:rA,error:yA,editor:ZA},WA=Object.freeze({__proto__:null,common:tA,state:OA,preset_mode:rA,error:yA,editor:ZA,default:TA}),HA={name:"Carte purificateur",description:"La carte purificateur vous permet de contrôler votre purificateur d'air intelligent.",not_available:"Le purificateur n'est pas disponible",toggle_power:"Allumer/éteindre"},nA={on:"Allumé",off:"Éteint"},zA={Auto:"Auto",Silent:"Nuit",Favorite:"Favori",Fan:"Manuel"},NA={missing_entity:"Il est obligatoire de spécifier une entité!"},dA={entity:"Entité (obligatoire)",compact_view:"Vue compacte",compact_view_aria_label_on:"Activer la vue compacte",compact_view_aria_label_off:"Désactiver la vue compacte",show_name:"Afficher le nom",show_name_aria_label_on:"Activer affichage du nom",show_name_aria_label_off:"Désactiver affichage du nom",show_state:"Afficher l'état",show_state_aria_label_on:"Activer l'affichage de l'état",show_state_aria_label_off:"Désactiver l'affichage de l'état",show_toolbar:"Afficher la barre d'outils",show_toolbar_aria_label_on:"Activer l'affichage de la barre d'outils",show_toolbar_aria_label_off:"Désactiver l'affichage de la barre d'outils",code_only_note:"Remarque: Les options de réglage des actions et statistiques sont disponibles exclusivement en utilisant l'éditeur de code."},XA={common:HA,state:nA,preset_mode:zA,error:NA,editor:dA},PA={name:"Purifier Card",description:"Purifier-kortet lar deg kontrollere din smarte purifier.",not_available:"Enhet er ikke tilgjengelig",toggle_power:"Slå på/av"},bA={on:"På",off:"Av"},vA={Auto:"Auto",Silent:"Stille",Favorite:"Favoritt",Fan:"Vifte"},fA={missing_entity:"Spesifiserende enhet kreves!"},_A={entity:"Enhet (påkrevd)",compact_view:"Kompakt visning",compact_view_aria_label_on:"Slå på kompakt visning",compact_view_aria_label_off:"Slå av kompakt visning",show_name:"Show Name",show_name_aria_label_on:"Slå visningsnavnet på",show_name_aria_label_off:"Slå visningsnavnet av",show_state:"Show State",show_state_aria_label_on:"Slå skjermstatus på",show_state_aria_label_off:"Slå skjermstatus av",show_toolbar:"Show Toolbar",show_toolbar_aria_label_on:"Slå skjermverktøylinjen på",show_toolbar_aria_label_off:"Slå skjermverktøylinjen av",code_only_note:"Merk: Innstillingshandlinger og statistikkalternativer er eksklusivt tilgjengelige ved hjelp av Code Editor."},$A={common:PA,state:bA,preset_mode:vA,error:fA,editor:_A},AC={name:"Karta oczyszczacza powietrza",description:"Karta oczyszczacza powietrza pozwala na kontrolowanie Twojego urządzenia.",not_available:"Encja jest niedostępna",toggle_power:"Włącz/wyłącz"},CC={on:"Włączony",off:"Wyłączony"},IC={Auto:"Auto",Silent:"Cichy",Favorite:"Ulubiony",Fan:"Wentylator",Idle:"Bezczynny"},EC={missing_entity:"Wymagane jest zadeklarowanie encji!"},gC={entity:"Encja (wymagane)",compact_view:"Widok kompaktowy",compact_view_aria_label_on:"Włącz widok kompaktowy",compact_view_aria_label_off:"Wyłącz widok kompaktowy",show_name:"Pokaż nazwę",show_name_aria_label_on:"Włącz wyświetlanie nazwy",show_name_aria_label_off:"Wyłącz wyświetlanie nazwy",show_state:"Pokaż stan",show_state_aria_label_on:"Włącz wyświetlanie stanu",show_state_aria_label_off:"Wyłącz wyświetlanie stanu",show_toolbar:"Pokaż pasek narzędzi",show_toolbar_aria_label_on:"Włącz wyświetlanie paska narzędzi",show_toolbar_aria_label_off:"Wyłącz wyświetlanie paska narzędzi",code_only_note:"Uwaga: Konfiguracja akcji i statystyk dostępna jest tylko w edytorze YAML karty."},QC={common:AC,state:CC,preset_mode:IC,error:EC,editor:gC},BC={name:"Карта Пречиствател за Въздух",description:"Картата Пречиствател за Въздух улеснява управлението на различни видове смарт пречистватели.",not_available:"Обектът не е наличен",toggle_power:"Включи/Изключи"},MC={on:"Включен",off:"Изключен"},iC={Auto:"Автоматичен режим",Silent:"Тих режим",Favorite:"Любима",Fan:"Вентилатор"},wC={missing_entity:"Избирането на обект е задължително!"},hC={entity:"Обект (Задължително)",compact_view:"Компактен Изглед",compact_view_aria_label_on:"Включи компактен изглед",compact_view_aria_label_off:"Изключи компактен изглед",show_name:"Показване на името",show_name_aria_label_on:"Покажи името",show_name_aria_label_off:"Скрий името",show_state:"Показване на състоянието",show_state_aria_label_on:"Покажи състоянието",show_state_aria_label_off:"Скрий състоянието",show_toolbar:"Показване на лентата с инструменти",show_toolbar_aria_label_on:"Покажи лентата с инструменти",show_toolbar_aria_label_off:"Скрий лентата с инструменти",code_only_note:"Забележка: Настройването на actions и stats е възможно единствено чрез Code Editor."},oC={common:BC,state:MC,preset_mode:iC,error:wC,editor:hC},YC={name:"Purifier Card",description:"Purifier card 可以让你以更轻松的方式控制你的空气净化器",not_available:"实体不可用",toggle_power:"开/关"},FC={on:"开",off:"关"},DC={Auto:"自动",Silent:"睡眠",Favorite:"最爱",Fan:"风扇"},KC={missing_entity:"必须指定实体"},GC={entity:"实体 (必填)",compact_view:"紧凑视图",compact_view_aria_label_on:"打开紧凑视图",compact_view_aria_label_off:"关闭紧凑视图",show_name:"显示名称",show_name_aria_label_on:"打开名称显示",show_name_aria_label_off:"关闭名称显示",show_state:"显示状态",show_state_aria_label_on:"打开状态显示",show_state_aria_label_off:"关闭状态显示",show_toolbar:"显示工具栏",show_toolbar_aria_label_on:"打开工具栏显示",show_toolbar_aria_label_off:"关闭工具栏显示",code_only_note:"注意: 只有使用代码编辑器才能设置操作和统计选项。"},UC={common:YC,state:FC,preset_mode:DC,error:KC,editor:GC},RC={name:"Purifier Card",description:"讓您用更輕鬆的方式控制智慧空氣清淨機的卡片。",not_available:"實體無法使用",toggle_power:"開關"},SC={on:"開",off:"關"},JC={Auto:"自動",Silent:"靜音",Favorite:"最愛",Fan:"送風"},kC={missing_entity:"必須指定實體名稱!"},aC={entity:"實體名稱(必填)",compact_view:"精簡卡片",compact_view_aria_label_on:"開啟精簡卡片",compact_view_aria_label_off:"關閉精簡卡片",show_name:"顯示裝置名稱",show_name_aria_label_on:"顯示裝置名稱",show_name_aria_label_off:"隱藏裝置名稱",show_state:"顯示裝置狀態",show_state_aria_label_on:"顯示裝置狀態",show_state_aria_label_off:"隱藏裝置狀態",show_toolbar:"顯示工具列",show_toolbar_aria_label_on:"顯示工具列",show_toolbar_aria_label_off:"隱藏工具列",code_only_note:"註:必須使用編碼編輯器編輯 actions 與 stats 選項。"},cC={common:RC,state:SC,preset_mode:JC,error:kC,editor:aC},sC={name:"Purifier Karte",description:"Die Purifier Karte steuert deinen smarten Luftreiniger.",not_available:"Entity nicht verfügbar",toggle_power:"an/aus"},LC={on:"An",off:"Aus"},xC={Auto:"Auto",Silent:"Leise",Favorite:"Favorit",Fan:"Lüfter"},mC={missing_entity:"Es muss eine Entity definiert werden!"},VC={entity:"Entity (Erforderlich)",compact_view:"Kompakte Ansicht",compact_view_aria_label_on:"Komptaktansicht anschalten",compact_view_aria_label_off:"Kompaktansicht ausschalten",show_name:"Name anzeigen",show_name_aria_label_on:"Namen anzeigen anschalten",show_name_aria_label_off:"Namen anzeigen ausschalten",show_state:"Status anzeigen",show_state_aria_label_on:"Status anzeigen anschalten",show_state_aria_label_off:"Status anzeigen ausschalten",show_toolbar:"Symbolleiste anzeigen",show_toolbar_aria_label_on:"Symbolleiste anzeigen anschalten",show_toolbar_aria_label_off:"Symbolleiste anzeigen ausschalten",code_only_note:"Bitte beachten: Aktionen und Status Optionen sind nur im Code Editor verfügbar."},eC={common:sC,state:LC,preset_mode:xC,error:mC,editor:VC},jC={name:"Purifier Card",description:"Purifier card us permet controlar el purificador intel·ligent.",not_available:"L'entitat no està disponible",toggle_power:"Encendre/apagar"},uC={on:"Encès",off:"Apagat"},lC={Auto:"Auto",Silent:"Silenciós",Favorite:"Favorit",Fan:"Ventilador"},qC={missing_entity:"Cal especificar una entitat."},pC={entity:"Entitat (Requerit)",compact_view:"Visualització comptacta",compact_view_aria_label_on:"Activar visualització compacta",compact_view_aria_label_off:"Desactivar visualització compacta",show_name:"Mostrar nom",show_name_aria_label_on:"Mostra nom",show_name_aria_label_off:"Amaga nom",show_state:"Mostrar estat",show_state_aria_label_on:"Mostra estat",show_state_aria_label_off:"Amaga estat",show_toolbar:"Mostrar barra d'eines",show_toolbar_aria_label_on:"Mostra barra d'eines",show_toolbar_aria_label_off:"Amaga barra d'eines",code_only_note:"Nota: Configuració de les accions i estadístiques només disponible des de l'Editor de Codi."},tC={common:jC,state:uC,preset_mode:lC,error:qC,editor:pC},OC={name:"Карточка очистителя воздуха",description:"Карточка очистителя вохдуха позволяет вам управлять своим умным очистителем.",not_available:"Сущность не доступна",toggle_power:"Включить/Выключить"},rC={on:"Вкл.",off:"Выкл."},yC={Auto:"Автоматическая",Silent:"Тихая",Favorite:"Предпочтительная",Fan:"Максимальная"},ZC={missing_entity:"Требуется указать сущность!"},TC={entity:"Сущность (Обязательно!)",compact_view:"Компактный вид",compact_view_aria_label_on:"Включить компактный вид",compact_view_aria_label_off:"Отключить компактный вид",show_name:"Показать название",show_name_aria_label_on:"Отобразить название",show_name_aria_label_off:"Скрыть название",show_state:"Показать статистику",show_state_aria_label_on:"Отобразить статистику",show_state_aria_label_off:"Скрыть статистику",show_toolbar:"Показать панель инструментов ",show_toolbar_aria_label_on:"Отобразить панель инструментов",show_toolbar_aria_label_off:"Скрыть панель инструментов",code_only_note:"Примечание: Настройки действий и параметров состояний доступны только в редакторе кода."},WC={common:OC,state:rC,preset_mode:yC,error:ZC,editor:TC},HC={name:"Card del purificatore",description:"La card del purificatore ti permette di controllare il tuo purificatore intelligente.",not_available:"L'entità non è disponibile",toggle_power:"Accendi/Spegni"},nC={on:"Acceso",off:"Spento"},zC={Auto:"Auto",Silent:"Silenzioso",Favorite:"Preferito",Fan:"Ventola"},NC={missing_entity:"É necessario specificare l'entità"},dC={entity:"Entità (richiesto)",compact_view:"Vista compatta",compact_view_aria_label_on:"Attiva la visualizzazione compatta",compact_view_aria_label_off:"Disattiva la visualizzazione compatta",show_name:"Mostra nome",show_name_aria_label_on:"Visualizza nome del purificatore",show_name_aria_label_off:"Non visualizzare il nome del purificatore",show_state:"Mostra stato",show_state_aria_label_on:"Visualizza lo stato del purificatore",show_state_aria_label_off:"Non visualizzarelo stato del purificatore",show_toolbar:"Mostra barra degli strumenti",show_toolbar_aria_label_on:"Visualizza barra degli strumenti",show_toolbar_aria_label_off:"Non visualizzare la barra degli strumenti",code_only_note:"Nota: le opzioni di impostazione delle azioni e delle statistiche sono disponibili esclusivamente utilizzando l'editor di codice."},XC={common:HC,state:nC,preset_mode:zC,error:NC,editor:dC},PC={en:mA,uk:pA,fr:Object.freeze({__proto__:null,common:HA,state:nA,preset_mode:zA,error:NA,editor:dA,default:XA}),tr:WA,nb:Object.freeze({__proto__:null,common:PA,state:bA,preset_mode:vA,error:fA,editor:_A,default:$A}),pl:Object.freeze({__proto__:null,common:AC,state:CC,preset_mode:IC,error:EC,editor:gC,default:QC}),bg:Object.freeze({__proto__:null,common:BC,state:MC,preset_mode:iC,error:wC,editor:hC,default:oC}),zh_CN:Object.freeze({__proto__:null,common:YC,state:FC,preset_mode:DC,error:KC,editor:GC,default:UC}),zh_TW:Object.freeze({__proto__:null,common:RC,state:SC,preset_mode:JC,error:kC,editor:aC,default:cC}),de:Object.freeze({__proto__:null,common:sC,state:LC,preset_mode:xC,error:mC,editor:VC,default:eC}),ca:Object.freeze({__proto__:null,common:jC,state:uC,preset_mode:lC,error:qC,editor:pC,default:tC}),ru:Object.freeze({__proto__:null,common:OC,state:rC,preset_mode:yC,error:ZC,editor:TC,default:WC}),it:Object.freeze({__proto__:null,common:HC,state:nC,preset_mode:zC,error:NC,editor:dC,default:XC})};function bC(A,C,I){const[E,g]=A.split(".");let Q;try{Q=JSON.parse(localStorage.getItem("selectedLanguage"))}catch(A){Q=localStorage.getItem("selectedLanguage")}const B=(Q||navigator.language.split("-")[0]||"en").replace(/['"]+/g,"").replace("-","_");let M;try{M=PC[B][E][g]}catch(A){}if(void 0===M)try{M=PC.en[E][g]}catch(A){}if(void 0!==M)return""!==C&&""!==I&&(M=M.replace(C,I)),M}customElements.define("purifier-card-editor",class extends _{static get properties(){return{hass:Object,_config:Object,_toggle:Boolean}}setConfig(A){this._config=A,this._config.entity||(this._config.entity=this.getEntitiesByType("fan")[0]||"",SA(this,"config-changed",{config:this._config}))}get _entity(){return this._config&&this._config.entity||""}get _show_name(){return this._config?this._config.show_name||!0:""}get _show_state(){return this._config?this._config.show_state||!0:""}get _show_toolbar(){return this._config&&this._config.show_toolbar||!0}get _compact_view(){return this._config&&this._config.compact_view||!1}getEntitiesByType(A){return Object.keys(this.hass.states).filter((C=>C.substr(0,C.indexOf("."))===A))}render(){if(!this.hass)return t``;const A=this.getEntitiesByType("fan");return t`
|
|
159
|
+
(window.litElementVersions||(window.litElementVersions=[])).push("2.3.1");const f={};class _ extends N{static getStyles(){return this.styles}static _getUniqueStyles(){if(this.hasOwnProperty(JSCompiler_renameProperty("_styles",this)))return;const A=this.getStyles();if(void 0===A)this._styles=[];else if(Array.isArray(A)){const C=(A,I)=>A.reduceRight(((A,I)=>Array.isArray(I)?C(I,A):(A.add(I),A)),I),I=C(A,new Set),E=[];I.forEach((A=>E.unshift(A))),this._styles=E}else this._styles=[A]}initialize(){super.initialize(),this.constructor._getUniqueStyles(),this.renderRoot=this.createRenderRoot(),window.ShadowRoot&&this.renderRoot instanceof window.ShadowRoot&&this.adoptStyles()}createRenderRoot(){return this.attachShadow({mode:"open"})}adoptStyles(){const A=this.constructor._styles;0!==A.length&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow?d?this.renderRoot.adoptedStyleSheets=A.map((A=>A.styleSheet)):this._needsShimAdoptedStyleSheets=!0:window.ShadyCSS.ScopingShim.prepareAdoptedCssText(A.map((A=>A.cssText)),this.localName))}connectedCallback(){super.connectedCallback(),this.hasUpdated&&void 0!==window.ShadyCSS&&window.ShadyCSS.styleElement(this)}update(A){const C=this.render();super.update(A),C!==f&&this.constructor.render(C,this.renderRoot,{scopeName:this.localName,eventContext:this}),this._needsShimAdoptedStyleSheets&&(this._needsShimAdoptedStyleSheets=!1,this.constructor._styles.forEach((A=>{const C=document.createElement("style");C.textContent=A.cssText,this.renderRoot.appendChild(C)})))}render(){return f}}_.finalized=!0,_.render=(A,I,E)=>{if(!E||"object"!=typeof E||!E.scopeName)throw new Error("The `scopeName` option is required.");const g=E.scopeName,Q=q.has(I),B=y&&11===I.nodeType&&!!I.host,M=B&&!T.has(g),i=M?document.createDocumentFragment():I;if(((A,I,E)=>{let g=q.get(I);void 0===g&&(C(I,I.firstChild),q.set(I,g=new s(Object.assign({templateFactory:u},E))),g.appendInto(I)),g.setValue(A),g.commit()})(A,i,Object.assign({templateFactory:r(g)},E)),M){const A=q.get(i);q.delete(i);const E=A.value instanceof U?A.value.template:void 0;W(g,i,E),C(I,I.firstChild),I.appendChild(i),q.set(I,A)}!Q&&B&&window.ShadyCSS.styleElement(I.host)};var $=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,AA="[^\\s]+",CA=/\[([^]*?)\]/gm;function IA(A,C){for(var I=[],E=0,g=A.length;E<g;E++)I.push(A[E].substr(0,C));return I}var EA=function(A){return function(C,I){var E=I[A].map((function(A){return A.toLowerCase()})).indexOf(C.toLowerCase());return E>-1?E:null}};function gA(A){for(var C=[],I=1;I<arguments.length;I++)C[I-1]=arguments[I];for(var E=0,g=C;E<g.length;E++){var Q=g[E];for(var B in Q)A[B]=Q[B]}return A}var QA=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],BA=["January","February","March","April","May","June","July","August","September","October","November","December"],MA=IA(BA,3),iA={dayNamesShort:IA(QA,3),dayNames:QA,monthNamesShort:MA,monthNames:BA,amPm:["am","pm"],DoFn:function(A){return A+["th","st","nd","rd"][A%10>3?0:(A-A%10!=10?1:0)*A%10]}},wA=gA({},iA),hA=function(A,C){for(void 0===C&&(C=2),A=String(A);A.length<C;)A="0"+A;return A},oA={D:function(A){return String(A.getDate())},DD:function(A){return hA(A.getDate())},Do:function(A,C){return C.DoFn(A.getDate())},d:function(A){return String(A.getDay())},dd:function(A){return hA(A.getDay())},ddd:function(A,C){return C.dayNamesShort[A.getDay()]},dddd:function(A,C){return C.dayNames[A.getDay()]},M:function(A){return String(A.getMonth()+1)},MM:function(A){return hA(A.getMonth()+1)},MMM:function(A,C){return C.monthNamesShort[A.getMonth()]},MMMM:function(A,C){return C.monthNames[A.getMonth()]},YY:function(A){return hA(String(A.getFullYear()),4).substr(2)},YYYY:function(A){return hA(A.getFullYear(),4)},h:function(A){return String(A.getHours()%12||12)},hh:function(A){return hA(A.getHours()%12||12)},H:function(A){return String(A.getHours())},HH:function(A){return hA(A.getHours())},m:function(A){return String(A.getMinutes())},mm:function(A){return hA(A.getMinutes())},s:function(A){return String(A.getSeconds())},ss:function(A){return hA(A.getSeconds())},S:function(A){return String(Math.round(A.getMilliseconds()/100))},SS:function(A){return hA(Math.round(A.getMilliseconds()/10),2)},SSS:function(A){return hA(A.getMilliseconds(),3)},a:function(A,C){return A.getHours()<12?C.amPm[0]:C.amPm[1]},A:function(A,C){return A.getHours()<12?C.amPm[0].toUpperCase():C.amPm[1].toUpperCase()},ZZ:function(A){var C=A.getTimezoneOffset();return(C>0?"-":"+")+hA(100*Math.floor(Math.abs(C)/60)+Math.abs(C)%60,4)},Z:function(A){var C=A.getTimezoneOffset();return(C>0?"-":"+")+hA(Math.floor(Math.abs(C)/60),2)+":"+hA(Math.abs(C)%60,2)}},YA=function(A){return+A-1},FA=[null,"[1-9]\\d?"],DA=[null,AA],KA=["isPm",AA,function(A,C){var I=A.toLowerCase();return I===C.amPm[0]?0:I===C.amPm[1]?1:null}],GA=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(A){var C=(A+"").match(/([+-]|\d\d)/gi);if(C){var I=60*+C[1]+parseInt(C[2],10);return"+"===C[0]?I:-I}return 0}],UA=(EA("monthNamesShort"),EA("monthNames"),{default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"});var RA=function(A,C,I){if(void 0===C&&(C=UA.default),void 0===I&&(I={}),"number"==typeof A&&(A=new Date(A)),"[object Date]"!==Object.prototype.toString.call(A)||isNaN(A.getTime()))throw new Error("Invalid Date pass to format");var E=[];C=(C=UA[C]||C).replace(CA,(function(A,C){return E.push(C),"@@@"}));var g=gA(gA({},wA),I);return(C=C.replace($,(function(C){return oA[C](A,g)}))).replace(/@@@/g,(function(){return E.shift()}))},SA=(function(){try{(new Date).toLocaleDateString("i")}catch(A){return"RangeError"===A.name}}(),function(){try{(new Date).toLocaleString("i")}catch(A){return"RangeError"===A.name}}(),function(){try{(new Date).toLocaleTimeString("i")}catch(A){return"RangeError"===A.name}}(),function(A,C,I,E){E=E||{},I=null==I?{}:I;var g=new Event(C,{bubbles:void 0===E.bubbles||E.bubbles,cancelable:Boolean(E.cancelable),composed:void 0===E.composed||E.composed});return g.detail=I,A.dispatchEvent(g),g});var JA={name:"Purifier Card",description:"Purifier card allows you to control your smart purifier.",not_available:"Entity is not available",toggle_power:"Turn on/off"},kA={on:"On",off:"Off"},aA={Auto:"Auto",Silent:"Silent",Favorite:"Favorite",Fan:"Fan"},cA={missing_entity:"Specifying entity is required!"},sA={actions_array:"WARNING: 'actions' is renamed to 'shortcuts'"},LA={entity:"Entity (Required)",compact_view:"Compact View",compact_view_aria_label_on:"Toggle compact view on",compact_view_aria_label_off:"Toggle compact view off",show_name:"Show Name",show_name_aria_label_on:"Toggle display name on",show_name_aria_label_off:"Toggle display name off",show_state:"Show State",show_state_aria_label_on:"Toggle display state on",show_state_aria_label_off:"Toggle display state off",show_toolbar:"Show Toolbar",show_toolbar_aria_label_on:"Toggle display toolbar on",show_toolbar_aria_label_off:"Toggle display toolbar off",code_only_note:"Note: Setting actions and stats options are available exclusively using Code Editor."},xA={common:JA,state:kA,preset_mode:aA,error:cA,warning:sA,editor:LA},mA=Object.freeze({__proto__:null,common:JA,state:kA,preset_mode:aA,error:cA,warning:sA,editor:LA,default:xA}),VA={name:"Очищувач повітря",description:'Картка "Очищувач повітря" дозволяє керувати розумним очищувачем повітря.',not_available:"Очищувач повітря недоступний",toggle_power:"Увімкнути/Вимкнути"},eA={on:"Увімкнений",off:"Вимкнений"},jA={Auto:"Авто",Silent:"Тихий",Favorite:"Улюблений",Fan:"Вентилятор"},uA={missing_entity:"Сутність є обов’язковим полем!"},lA={entity:"Об’єкт (Required)",compact_view:"Компактний перегляд",compact_view_aria_label_on:"Увімкнути компактний перегляд",compact_view_aria_label_off:"Вимкнути компактний перегляд",show_name:"Показувати ім’я?",show_name_aria_label_on:"Показати ім’я",show_name_aria_label_off:"Приховати ім’я",show_state:"Показувати стан?",show_state_aria_label_on:"Показати стан",show_state_aria_label_off:"Приховати стан",show_toolbar:"Показувати панель дій?",show_toolbar_aria_label_on:"Показати панель дій",show_toolbar_aria_label_off:"Приховати панель дій",code_only_note:"Увага: Опції actions та stats доступні виключно через редактор коду."},qA={common:VA,state:eA,preset_mode:jA,error:uA,editor:lA},pA=Object.freeze({__proto__:null,common:VA,state:eA,preset_mode:jA,error:uA,editor:lA,default:qA}),tA={name:"Purifier Card",description:"Purifier kartı hava temizleyicinizi kontrol etmenize yardımcı olur.",not_available:"Varlık müsait değil",toggle_power:"Kapat/Aç"},OA={on:"Açık",off:"Kapalı"},yA={Auto:"Otomatik",Silent:"Sessiz",Favorite:"Favori",Fan:"Fan"},rA={missing_entity:"Varlığı belirtmeniz gereklidir!"},ZA={entity:"Varlık (Gerekli)",compact_view:"Kompakt Görünüm",compact_view_aria_label_on:"Kompakt Görünümü aç",compact_view_aria_label_off:"Kompakt Görünümü kapat",show_name:"Show Name",show_name_aria_label_on:"İsim gösterimini aç",show_name_aria_label_off:"İsim gösterimini kapat",show_state:"Show State",show_state_aria_label_on:"Durum gösterimini aç",show_state_aria_label_off:"Durum gösterimini kapat",show_toolbar:"Show Toolbar",show_toolbar_aria_label_on:"Araç çubuğu gösterimini aç",show_toolbar_aria_label_off:"Araç çubuğu gösterimini kapat",code_only_note:"Not: Aksiyon ataması ve istatistik seçenekleri şu anda Kod Editörü kullanımı ile mümkündür."},TA={common:tA,state:OA,preset_mode:yA,error:rA,editor:ZA},WA=Object.freeze({__proto__:null,common:tA,state:OA,preset_mode:yA,error:rA,editor:ZA,default:TA}),HA={name:"Carte purificateur",description:"La carte purificateur vous permet de contrôler votre purificateur d'air intelligent.",not_available:"Le purificateur n'est pas disponible",toggle_power:"Allumer/éteindre"},nA={on:"Allumé",off:"Éteint"},zA={Auto:"Auto",Silent:"Nuit",Favorite:"Favori",Fan:"Manuel"},NA={missing_entity:"Il est obligatoire de spécifier une entité!"},dA={entity:"Entité (obligatoire)",compact_view:"Vue compacte",compact_view_aria_label_on:"Activer la vue compacte",compact_view_aria_label_off:"Désactiver la vue compacte",show_name:"Afficher le nom",show_name_aria_label_on:"Activer affichage du nom",show_name_aria_label_off:"Désactiver affichage du nom",show_state:"Afficher l'état",show_state_aria_label_on:"Activer l'affichage de l'état",show_state_aria_label_off:"Désactiver l'affichage de l'état",show_toolbar:"Afficher la barre d'outils",show_toolbar_aria_label_on:"Activer l'affichage de la barre d'outils",show_toolbar_aria_label_off:"Désactiver l'affichage de la barre d'outils",code_only_note:"Remarque: Les options de réglage des actions et statistiques sont disponibles exclusivement en utilisant l'éditeur de code."},XA={common:HA,state:nA,preset_mode:zA,error:NA,editor:dA},PA={name:"Purifier Card",description:"Purifier-kortet lar deg kontrollere din smarte purifier.",not_available:"Enhet er ikke tilgjengelig",toggle_power:"Slå på/av"},bA={on:"På",off:"Av"},vA={Auto:"Auto",Silent:"Stille",Favorite:"Favoritt",Fan:"Vifte"},fA={missing_entity:"Spesifiserende enhet kreves!"},_A={entity:"Enhet (påkrevd)",compact_view:"Kompakt visning",compact_view_aria_label_on:"Slå på kompakt visning",compact_view_aria_label_off:"Slå av kompakt visning",show_name:"Show Name",show_name_aria_label_on:"Slå visningsnavnet på",show_name_aria_label_off:"Slå visningsnavnet av",show_state:"Show State",show_state_aria_label_on:"Slå skjermstatus på",show_state_aria_label_off:"Slå skjermstatus av",show_toolbar:"Show Toolbar",show_toolbar_aria_label_on:"Slå skjermverktøylinjen på",show_toolbar_aria_label_off:"Slå skjermverktøylinjen av",code_only_note:"Merk: Innstillingshandlinger og statistikkalternativer er eksklusivt tilgjengelige ved hjelp av Code Editor."},$A={common:PA,state:bA,preset_mode:vA,error:fA,editor:_A},AC={name:"Karta oczyszczacza powietrza",description:"Karta oczyszczacza powietrza pozwala na kontrolowanie Twojego urządzenia.",not_available:"Encja jest niedostępna",toggle_power:"Włącz/wyłącz"},CC={on:"Włączony",off:"Wyłączony"},IC={Auto:"Auto",Silent:"Cichy",Favorite:"Ulubiony",Fan:"Wentylator",Idle:"Bezczynny"},EC={missing_entity:"Wymagane jest zadeklarowanie encji!"},gC={entity:"Encja (wymagane)",compact_view:"Widok kompaktowy",compact_view_aria_label_on:"Włącz widok kompaktowy",compact_view_aria_label_off:"Wyłącz widok kompaktowy",show_name:"Pokaż nazwę",show_name_aria_label_on:"Włącz wyświetlanie nazwy",show_name_aria_label_off:"Wyłącz wyświetlanie nazwy",show_state:"Pokaż stan",show_state_aria_label_on:"Włącz wyświetlanie stanu",show_state_aria_label_off:"Wyłącz wyświetlanie stanu",show_toolbar:"Pokaż pasek narzędzi",show_toolbar_aria_label_on:"Włącz wyświetlanie paska narzędzi",show_toolbar_aria_label_off:"Wyłącz wyświetlanie paska narzędzi",code_only_note:"Uwaga: Konfiguracja akcji i statystyk dostępna jest tylko w edytorze YAML karty."},QC={common:AC,state:CC,preset_mode:IC,error:EC,editor:gC},BC={name:"Карта Пречиствател за Въздух",description:"Картата Пречиствател за Въздух улеснява управлението на различни видове смарт пречистватели.",not_available:"Обектът не е наличен",toggle_power:"Включи/Изключи"},MC={on:"Включен",off:"Изключен"},iC={Auto:"Автоматичен режим",Silent:"Тих режим",Favorite:"Любима",Fan:"Вентилатор"},wC={missing_entity:"Избирането на обект е задължително!"},hC={entity:"Обект (Задължително)",compact_view:"Компактен Изглед",compact_view_aria_label_on:"Включи компактен изглед",compact_view_aria_label_off:"Изключи компактен изглед",show_name:"Показване на името",show_name_aria_label_on:"Покажи името",show_name_aria_label_off:"Скрий името",show_state:"Показване на състоянието",show_state_aria_label_on:"Покажи състоянието",show_state_aria_label_off:"Скрий състоянието",show_toolbar:"Показване на лентата с инструменти",show_toolbar_aria_label_on:"Покажи лентата с инструменти",show_toolbar_aria_label_off:"Скрий лентата с инструменти",code_only_note:"Забележка: Настройването на actions и stats е възможно единствено чрез Code Editor."},oC={common:BC,state:MC,preset_mode:iC,error:wC,editor:hC},YC={name:"Purifier Card",description:"Purifier card 可以让你以更轻松的方式控制你的空气净化器",not_available:"实体不可用",toggle_power:"开/关"},FC={on:"开",off:"关"},DC={Auto:"自动",Silent:"睡眠",Favorite:"最爱",Fan:"风扇"},KC={missing_entity:"必须指定实体"},GC={entity:"实体 (必填)",compact_view:"紧凑视图",compact_view_aria_label_on:"打开紧凑视图",compact_view_aria_label_off:"关闭紧凑视图",show_name:"显示名称",show_name_aria_label_on:"打开名称显示",show_name_aria_label_off:"关闭名称显示",show_state:"显示状态",show_state_aria_label_on:"打开状态显示",show_state_aria_label_off:"关闭状态显示",show_toolbar:"显示工具栏",show_toolbar_aria_label_on:"打开工具栏显示",show_toolbar_aria_label_off:"关闭工具栏显示",code_only_note:"注意: 只有使用代码编辑器才能设置操作和统计选项。"},UC={common:YC,state:FC,preset_mode:DC,error:KC,editor:GC},RC={name:"Purifier Card",description:"讓您用更輕鬆的方式控制智慧空氣清淨機的卡片。",not_available:"實體無法使用",toggle_power:"開關"},SC={on:"開",off:"關"},JC={Auto:"自動",Silent:"靜音",Favorite:"最愛",Fan:"送風"},kC={missing_entity:"必須指定實體名稱!"},aC={entity:"實體名稱(必填)",compact_view:"精簡卡片",compact_view_aria_label_on:"開啟精簡卡片",compact_view_aria_label_off:"關閉精簡卡片",show_name:"顯示裝置名稱",show_name_aria_label_on:"顯示裝置名稱",show_name_aria_label_off:"隱藏裝置名稱",show_state:"顯示裝置狀態",show_state_aria_label_on:"顯示裝置狀態",show_state_aria_label_off:"隱藏裝置狀態",show_toolbar:"顯示工具列",show_toolbar_aria_label_on:"顯示工具列",show_toolbar_aria_label_off:"隱藏工具列",code_only_note:"註:必須使用編碼編輯器編輯 actions 與 stats 選項。"},cC={common:RC,state:SC,preset_mode:JC,error:kC,editor:aC},sC={name:"Purifier Karte",description:"Die Purifier Karte steuert deinen smarten Luftreiniger.",not_available:"Entity nicht verfügbar",toggle_power:"an/aus"},LC={on:"An",off:"Aus"},xC={Auto:"Auto",Silent:"Leise",Favorite:"Favorit",Fan:"Lüfter"},mC={missing_entity:"Es muss eine Entity definiert werden!"},VC={entity:"Entity (Erforderlich)",compact_view:"Kompakte Ansicht",compact_view_aria_label_on:"Komptaktansicht anschalten",compact_view_aria_label_off:"Kompaktansicht ausschalten",show_name:"Name anzeigen",show_name_aria_label_on:"Namen anzeigen anschalten",show_name_aria_label_off:"Namen anzeigen ausschalten",show_state:"Status anzeigen",show_state_aria_label_on:"Status anzeigen anschalten",show_state_aria_label_off:"Status anzeigen ausschalten",show_toolbar:"Symbolleiste anzeigen",show_toolbar_aria_label_on:"Symbolleiste anzeigen anschalten",show_toolbar_aria_label_off:"Symbolleiste anzeigen ausschalten",code_only_note:"Bitte beachten: Aktionen und Status Optionen sind nur im Code Editor verfügbar."},eC={common:sC,state:LC,preset_mode:xC,error:mC,editor:VC},jC={name:"Purifier Card",description:"Purifier card us permet controlar el purificador intel·ligent.",not_available:"L'entitat no està disponible",toggle_power:"Encendre/apagar"},uC={on:"Encès",off:"Apagat"},lC={Auto:"Auto",Silent:"Silenciós",Favorite:"Favorit",Fan:"Ventilador"},qC={missing_entity:"Cal especificar una entitat."},pC={entity:"Entitat (Requerit)",compact_view:"Visualització comptacta",compact_view_aria_label_on:"Activar visualització compacta",compact_view_aria_label_off:"Desactivar visualització compacta",show_name:"Mostrar nom",show_name_aria_label_on:"Mostra nom",show_name_aria_label_off:"Amaga nom",show_state:"Mostrar estat",show_state_aria_label_on:"Mostra estat",show_state_aria_label_off:"Amaga estat",show_toolbar:"Mostrar barra d'eines",show_toolbar_aria_label_on:"Mostra barra d'eines",show_toolbar_aria_label_off:"Amaga barra d'eines",code_only_note:"Nota: Configuració de les accions i estadístiques només disponible des de l'Editor de Codi."},tC={common:jC,state:uC,preset_mode:lC,error:qC,editor:pC},OC={name:"Карточка очистителя воздуха",description:"Карточка очистителя вохдуха позволяет вам управлять своим умным очистителем.",not_available:"Сущность не доступна",toggle_power:"Включить/Выключить"},yC={on:"Вкл.",off:"Выкл."},rC={Auto:"Автоматическая",Silent:"Тихая",Favorite:"Предпочтительная",Fan:"Максимальная"},ZC={missing_entity:"Требуется указать сущность!"},TC={entity:"Сущность (Обязательно!)",compact_view:"Компактный вид",compact_view_aria_label_on:"Включить компактный вид",compact_view_aria_label_off:"Отключить компактный вид",show_name:"Показать название",show_name_aria_label_on:"Отобразить название",show_name_aria_label_off:"Скрыть название",show_state:"Показать статистику",show_state_aria_label_on:"Отобразить статистику",show_state_aria_label_off:"Скрыть статистику",show_toolbar:"Показать панель инструментов ",show_toolbar_aria_label_on:"Отобразить панель инструментов",show_toolbar_aria_label_off:"Скрыть панель инструментов",code_only_note:"Примечание: Настройки действий и параметров состояний доступны только в редакторе кода."},WC={common:OC,state:yC,preset_mode:rC,error:ZC,editor:TC},HC={name:"Card del purificatore",description:"La card del purificatore ti permette di controllare il tuo purificatore intelligente.",not_available:"L'entità non è disponibile",toggle_power:"Accendi/Spegni"},nC={on:"Acceso",off:"Spento"},zC={Auto:"Auto",Silent:"Silenzioso",Favorite:"Preferito",Fan:"Ventola"},NC={missing_entity:"É necessario specificare l'entità"},dC={entity:"Entità (richiesto)",compact_view:"Vista compatta",compact_view_aria_label_on:"Attiva la visualizzazione compatta",compact_view_aria_label_off:"Disattiva la visualizzazione compatta",show_name:"Mostra nome",show_name_aria_label_on:"Visualizza nome del purificatore",show_name_aria_label_off:"Non visualizzare il nome del purificatore",show_state:"Mostra stato",show_state_aria_label_on:"Visualizza lo stato del purificatore",show_state_aria_label_off:"Non visualizzarelo stato del purificatore",show_toolbar:"Mostra barra degli strumenti",show_toolbar_aria_label_on:"Visualizza barra degli strumenti",show_toolbar_aria_label_off:"Non visualizzare la barra degli strumenti",code_only_note:"Nota: le opzioni di impostazione delle azioni e delle statistiche sono disponibili esclusivamente utilizzando l'editor di codice."},XC={common:HC,state:nC,preset_mode:zC,error:NC,editor:dC},PC={en:mA,uk:pA,fr:Object.freeze({__proto__:null,common:HA,state:nA,preset_mode:zA,error:NA,editor:dA,default:XA}),tr:WA,nb:Object.freeze({__proto__:null,common:PA,state:bA,preset_mode:vA,error:fA,editor:_A,default:$A}),pl:Object.freeze({__proto__:null,common:AC,state:CC,preset_mode:IC,error:EC,editor:gC,default:QC}),bg:Object.freeze({__proto__:null,common:BC,state:MC,preset_mode:iC,error:wC,editor:hC,default:oC}),zh_CN:Object.freeze({__proto__:null,common:YC,state:FC,preset_mode:DC,error:KC,editor:GC,default:UC}),zh_TW:Object.freeze({__proto__:null,common:RC,state:SC,preset_mode:JC,error:kC,editor:aC,default:cC}),de:Object.freeze({__proto__:null,common:sC,state:LC,preset_mode:xC,error:mC,editor:VC,default:eC}),ca:Object.freeze({__proto__:null,common:jC,state:uC,preset_mode:lC,error:qC,editor:pC,default:tC}),ru:Object.freeze({__proto__:null,common:OC,state:yC,preset_mode:rC,error:ZC,editor:TC,default:WC}),it:Object.freeze({__proto__:null,common:HC,state:nC,preset_mode:zC,error:NC,editor:dC,default:XC})};function bC(A,C,I){const[E,g]=A.split(".");let Q;try{Q=JSON.parse(localStorage.getItem("selectedLanguage"))}catch(A){Q=localStorage.getItem("selectedLanguage")}const B=(Q||navigator.language.split("-")[0]||"en").replace(/['"]+/g,"").replace("-","_");let M;try{M=PC[B][E][g]}catch(A){}if(void 0===M)try{M=PC.en[E][g]}catch(A){}if(void 0!==M)return""!==C&&""!==I&&(M=M.replace(C,I)),M}customElements.define("purifier-card-editor",class extends _{static get properties(){return{hass:Object,_config:Object,_toggle:Boolean}}setConfig(A){this._config=A,this._config.entity||(this._config.entity=this.getEntitiesByType("fan")[0]||"",SA(this,"config-changed",{config:this._config}))}get _entity(){return this._config&&this._config.entity||""}get _show_name(){return this._config?this._config.show_name||!0:""}get _show_state(){return this._config?this._config.show_state||!0:""}get _show_toolbar(){return this._config&&this._config.show_toolbar||!0}get _compact_view(){return this._config&&this._config.compact_view||!1}getEntitiesByType(A){return Object.keys(this.hass.states).filter((C=>C.substr(0,C.indexOf("."))===A))}render(){if(!this.hass)return t``;const A=this.getEntitiesByType("fan");return t`
|
|
160
160
|
<div class="card-config">
|
|
161
161
|
<paper-dropdown-menu
|
|
162
162
|
label="${bC("editor.entity")}"
|
|
@@ -264,6 +264,10 @@ const d="adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.pro
|
|
|
264
264
|
color: var(--text-primary-color);
|
|
265
265
|
}
|
|
266
266
|
|
|
267
|
+
.preset-mode {
|
|
268
|
+
padding: 7px;
|
|
269
|
+
}
|
|
270
|
+
|
|
267
271
|
.preset-mode ha-icon {
|
|
268
272
|
display: inline-block;
|
|
269
273
|
}
|
|
@@ -481,33 +485,23 @@ const d="adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.pro
|
|
|
481
485
|
.toolbar ha-icon {
|
|
482
486
|
color: var(--primary-color);
|
|
483
487
|
}
|
|
484
|
-
`;console.info("%c PURIFIER-CARD %c 2.0.
|
|
485
|
-
<
|
|
486
|
-
<
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
slot="dropdown-content"
|
|
502
|
-
selected=${E}
|
|
503
|
-
@click="${A=>this.handlePresetMode(A)}"
|
|
504
|
-
>
|
|
505
|
-
${C.map((A=>t`<paper-item value=${A}
|
|
506
|
-
>${bC("preset_mode."+A)||A}</paper-item
|
|
507
|
-
>`))}
|
|
508
|
-
</paper-listbox>
|
|
509
|
-
</paper-menu-button>
|
|
510
|
-
</div>
|
|
488
|
+
`;console.info("%c PURIFIER-CARD %c 2.0.1 ","color: white; background: blue; font-weight: 700;","color: blue; background: white; font-weight: 700;"),customElements.get("ha-icon-button")||customElements.define("ha-icon-button",class extends(customElements.get("paper-icon-button")){});customElements.define("purifier-card",class extends _{static get properties(){return{hass:Object,config:Object,requestInProgress:Boolean}}static get styles(){return vC}static async getConfigElement(){return document.createElement("purifier-card-editor")}static getStubConfig(A,C){const[I]=C.filter((A=>"fan"===A.substr(0,A.indexOf("."))));return{entity:I||""}}get platform(){return void 0===this.config.platform?"xiaomi_miio_airpurifier":this.config.platform}get entity(){return this.hass.states[this.config.entity]}get showPresetMode(){return void 0===this.config.show_preset_mode||this.config.show_preset_mode}get showName(){return void 0===this.config.show_name||this.config.show_name}get showState(){return void 0===this.config.show_state||this.config.show_state}get showToolbar(){return void 0===this.config.show_toolbar||this.config.show_toolbar}get compactView(){return void 0!==this.config.compact_view&&this.config.compact_view}setConfig(A){if(!A.entity)throw new Error(bC("error.missing_entity"));const C=A.actions;C&&Array.isArray(C)&&console.warn(bC("warning.actions_array")),this.config=A}getCardSize(){return 2}shouldUpdate(A){return function(A,C,I){if(C.has("config")||I)return!0;if(A.config.entity){var E=C.get("hass");return!E||E.states[A.config.entity]!==A.hass.states[A.config.entity]}return!1}(this,A)}updated(A){A.get("hass")&&A.get("hass").states[this.config.entity]!==this.hass.states[this.config.entity]&&(this.requestInProgress=!1)}handleMore(){SA(this,"hass-more-info",{entityId:this.entity.entity_id},{bubbles:!0,composed:!0})}handlePresetMode(A){const C=A.target.getAttribute("value");this.callService("fan.set_preset_mode",{preset_mode:C})}handlePercentage(A){const C=A.detail.value;this.callService("fan.set_percentage",{percentage:C})}callService(A,C={},I=!0){const[E,g]=A.split(".");this.hass.callService(E,g,{entity_id:this.config.entity,...C}),I&&(this.requestInProgress=!0,this.requestUpdate())}renderPresetMode(){const{attributes:{preset_mode:A,preset_modes:C,supported_features:I}}=this.entity;if(!(this.showPresetMode&&C&&8&I))return t``;const E=C.indexOf(A);return t`
|
|
489
|
+
<ha-button-menu @click="${A=>A.stopPropagation()}">
|
|
490
|
+
<mmp-icon-button slot="trigger">
|
|
491
|
+
<ha-icon icon="mdi:fan"></ha-icon>
|
|
492
|
+
<span>
|
|
493
|
+
${bC("preset_mode."+A)||A}
|
|
494
|
+
</span>
|
|
495
|
+
</mmp-icon-button>
|
|
496
|
+
|
|
497
|
+
${C.map(((A,C)=>t`<mwc-list-item
|
|
498
|
+
?activated=${E===C}
|
|
499
|
+
value=${A}
|
|
500
|
+
@click=${A=>this.handlePresetMode(A)}
|
|
501
|
+
>
|
|
502
|
+
${bC("preset_mode."+A)||A}
|
|
503
|
+
</mwc-list-item>`))}
|
|
504
|
+
</ha-button-menu>
|
|
511
505
|
`}renderAQI(){const{aqi:A={}}=this.config,{entity_id:C,attribute:I="aqi",unit:E="AQI"}=A,g=C?this.hass.states[C].state:this.entity.attributes[I];let Q="";return g<10?Q=t`<span class="number-off">00</span>`:g<100&&(Q=t`<span class="number-off">0</span>`),t`
|
|
512
506
|
<div class="current-aqi">
|
|
513
507
|
${Q}<span class="number-on">${g}</span>
|
|
@@ -573,7 +567,9 @@ const d="adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.pro
|
|
|
573
567
|
<ha-card>
|
|
574
568
|
<div class="preview">
|
|
575
569
|
<div class="header">
|
|
576
|
-
|
|
570
|
+
<div class="preset-mode">
|
|
571
|
+
${this.renderPresetMode()}
|
|
572
|
+
</div>
|
|
577
573
|
<ha-icon-button
|
|
578
574
|
class="more-info"
|
|
579
575
|
icon="mdi:dots-vertical"
|
package/package.json
CHANGED
package/src/purifier-card.js
CHANGED
|
@@ -182,35 +182,25 @@ class PurifierCard extends LitElement {
|
|
|
182
182
|
const selected = preset_modes.indexOf(preset_mode);
|
|
183
183
|
|
|
184
184
|
return html`
|
|
185
|
-
<
|
|
186
|
-
<
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
>
|
|
205
|
-
${preset_modes.map(
|
|
206
|
-
(item) =>
|
|
207
|
-
html`<paper-item value=${item}
|
|
208
|
-
>${localize(`preset_mode.${item}`) || item}</paper-item
|
|
209
|
-
>`
|
|
210
|
-
)}
|
|
211
|
-
</paper-listbox>
|
|
212
|
-
</paper-menu-button>
|
|
213
|
-
</div>
|
|
185
|
+
<ha-button-menu @click="${(e) => e.stopPropagation()}">
|
|
186
|
+
<mmp-icon-button slot="trigger">
|
|
187
|
+
<ha-icon icon="mdi:fan"></ha-icon>
|
|
188
|
+
<span>
|
|
189
|
+
${localize(`preset_mode.${preset_mode}`) || preset_mode}
|
|
190
|
+
</span>
|
|
191
|
+
</mmp-icon-button>
|
|
192
|
+
|
|
193
|
+
${preset_modes.map(
|
|
194
|
+
(item, index) =>
|
|
195
|
+
html`<mwc-list-item
|
|
196
|
+
?activated=${selected === index}
|
|
197
|
+
value=${item}
|
|
198
|
+
@click=${(e) => this.handlePresetMode(e)}
|
|
199
|
+
>
|
|
200
|
+
${localize(`preset_mode.${item}`) || item}
|
|
201
|
+
</mwc-list-item>`
|
|
202
|
+
)}
|
|
203
|
+
</ha-button-menu>
|
|
214
204
|
`;
|
|
215
205
|
}
|
|
216
206
|
|
|
@@ -408,7 +398,9 @@ class PurifierCard extends LitElement {
|
|
|
408
398
|
<ha-card>
|
|
409
399
|
<div class="preview">
|
|
410
400
|
<div class="header">
|
|
411
|
-
|
|
401
|
+
<div class="preset-mode">
|
|
402
|
+
${this.renderPresetMode()}
|
|
403
|
+
</div>
|
|
412
404
|
<ha-icon-button
|
|
413
405
|
class="more-info"
|
|
414
406
|
icon="mdi:dots-vertical"
|