278 files

This commit is contained in:
Home Assistant Version Control committed 2026-09-13 20:38:58 +00:00
1 parent d7a0a08372
commit 1b4f5f68c6
278 files changed
+36892 -7150

No files matched your search

+14 -14
View File
@@ -1,4 +1,4 @@
const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,a=Symbol(),i=new WeakMap;let o=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==a)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const a=this.t;if(t&&void 0===e){const t=void 0!==a&&1===a.length;t&&(e=i.get(a)),void 0===e&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),t&&i.set(a,e))}return e}toString(){return this.cssText}};const n=t?e=>e:e=>e instanceof CSSStyleSheet?(e=>{let t="";for(const a of e.cssRules)t+=a.cssText;return(e=>new o("string"==typeof e?e:e+"",void 0,a))(t)})(e):e,{is:l,defineProperty:r,getOwnPropertyDescriptor:s,getOwnPropertyNames:d,getOwnPropertySymbols:c,getPrototypeOf:_}=Object,u=globalThis,p=u.trustedTypes,m=p?p.emptyScript:"",h=u.reactiveElementPolyfillSupport,y=(e,t)=>e,k={toAttribute(e,t){switch(t){case Boolean:e=e?m:null;break;case Object:case Array:e=null==e?e:JSON.stringify(e)}return e},fromAttribute(e,t){let a=e;switch(t){case Boolean:a=null!==e;break;case Number:a=null===e?null:Number(e);break;case Object:case Array:try{a=JSON.parse(e)}catch(e){a=null}}return a}},g=(e,t)=>!l(e,t),v={attribute:!0,type:String,converter:k,reflect:!1,useDefault:!1,hasChanged:g};Symbol.metadata??=Symbol("metadata"),u.litPropertyMetadata??=new WeakMap;let b=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=v){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){const a=Symbol(),i=this.getPropertyDescriptor(e,a,t);void 0!==i&&r(this.prototype,e,i)}}static getPropertyDescriptor(e,t,a){const{get:i,set:o}=s(this.prototype,e)??{get(){return this[t]},set(e){this[t]=e}};return{get:i,set(t){const n=i?.call(this);o?.call(this,t),this.requestUpdate(e,n,a)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??v}static _$Ei(){if(this.hasOwnProperty(y("elementProperties")))return;const e=_(this);e.finalize(),void 0!==e.l&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(y("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(y("properties"))){const e=this.properties,t=[...d(e),...c(e)];for(const a of t)this.createProperty(a,e[a])}const e=this[Symbol.metadata];if(null!==e){const t=litPropertyMetadata.get(e);if(void 0!==t)for(const[e,a]of t)this.elementProperties.set(e,a)}this._$Eh=new Map;for(const[e,t]of this.elementProperties){const a=this._$Eu(e,t);void 0!==a&&this._$Eh.set(a,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const a=new Set(e.flat(1/0).reverse());for(const e of a)t.unshift(n(e))}else void 0!==e&&t.push(n(e));return t}static _$Eu(e,t){const a=t.attribute;return!1===a?void 0:"string"==typeof a?a:"string"==typeof e?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((e=>this.enableUpdating=e)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((e=>e(this)))}addController(e){(this._$EO??=new Set).add(e),void 0!==this.renderRoot&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const a of t.keys())this.hasOwnProperty(a)&&(e.set(a,this[a]),delete this[a]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const a=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return((a,i)=>{if(t)a.adoptedStyleSheets=i.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(const t of i){const i=document.createElement("style"),o=e.litNonce;void 0!==o&&i.setAttribute("nonce",o),i.textContent=t.cssText,a.appendChild(i)}})(a,this.constructor.elementStyles),a}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((e=>e.hostConnected?.()))}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach((e=>e.hostDisconnected?.()))}attributeChangedCallback(e,t,a){this._$AK(e,a)}_$ET(e,t){const a=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,a);if(void 0!==i&&!0===a.reflect){const o=(void 0!==a.converter?.toAttribute?a.converter:k).toAttribute(t,a.type);this._$Em=e,null==o?this.removeAttribute(i):this.setAttribute(i,o),this._$Em=null}}_$AK(e,t){const a=this.constructor,i=a._$Eh.get(e);if(void 0!==i&&this._$Em!==i){const e=a.getPropertyOptions(i),o="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==e.converter?.fromAttribute?e.converter:k;this._$Em=i;const n=o.fromAttribute(t,e.type);this[i]=n??this.Line truncated
const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,a=Symbol(),i=new WeakMap;let o=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==a)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const a=this.t;if(t&&void 0===e){const t=void 0!==a&&1===a.length;t&&(e=i.get(a)),void 0===e&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),t&&i.set(a,e))}return e}toString(){return this.cssText}};const n=t?e=>e:e=>e instanceof CSSStyleSheet?(e=>{let t="";for(const a of e.cssRules)t+=a.cssText;return(e=>new o("string"==typeof e?e:e+"",void 0,a))(t)})(e):e,{is:l,defineProperty:r,getOwnPropertyDescriptor:s,getOwnPropertyNames:d,getOwnPropertySymbols:c,getPrototypeOf:_}=Object,u=globalThis,p=u.trustedTypes,m=p?p.emptyScript:"",h=u.reactiveElementPolyfillSupport,y=(e,t)=>e,k={toAttribute(e,t){switch(t){case Boolean:e=e?m:null;break;case Object:case Array:e=null==e?e:JSON.stringify(e)}return e},fromAttribute(e,t){let a=e;switch(t){case Boolean:a=null!==e;break;case Number:a=null===e?null:Number(e);break;case Object:case Array:try{a=JSON.parse(e)}catch(e){a=null}}return a}},g=(e,t)=>!l(e,t),v={attribute:!0,type:String,converter:k,reflect:!1,useDefault:!1,hasChanged:g};Symbol.metadata??=Symbol("metadata"),u.litPropertyMetadata??=new WeakMap;let b=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=v){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){const a=Symbol(),i=this.getPropertyDescriptor(e,a,t);void 0!==i&&r(this.prototype,e,i)}}static getPropertyDescriptor(e,t,a){const{get:i,set:o}=s(this.prototype,e)??{get(){return this[t]},set(e){this[t]=e}};return{get:i,set(t){const n=i?.call(this);o?.call(this,t),this.requestUpdate(e,n,a)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??v}static _$Ei(){if(this.hasOwnProperty(y("elementProperties")))return;const e=_(this);e.finalize(),void 0!==e.l&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(y("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(y("properties"))){const e=this.properties,t=[...d(e),...c(e)];for(const a of t)this.createProperty(a,e[a])}const e=this[Symbol.metadata];if(null!==e){const t=litPropertyMetadata.get(e);if(void 0!==t)for(const[e,a]of t)this.elementProperties.set(e,a)}this._$Eh=new Map;for(const[e,t]of this.elementProperties){const a=this._$Eu(e,t);void 0!==a&&this._$Eh.set(a,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const a=new Set(e.flat(1/0).reverse());for(const e of a)t.unshift(n(e))}else void 0!==e&&t.push(n(e));return t}static _$Eu(e,t){const a=t.attribute;return!1===a?void 0:"string"==typeof a?a:"string"==typeof e?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((e=>this.enableUpdating=e)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((e=>e(this)))}addController(e){(this._$EO??=new Set).add(e),void 0!==this.renderRoot&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const a of t.keys())this.hasOwnProperty(a)&&(e.set(a,this[a]),delete this[a]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const a=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return((a,i)=>{if(t)a.adoptedStyleSheets=i.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(const t of i){const i=document.createElement("style"),o=e.litNonce;void 0!==o&&i.setAttribute("nonce",o),i.textContent=t.cssText,a.appendChild(i)}})(a,this.constructor.elementStyles),a}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((e=>e.hostConnected?.()))}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach((e=>e.hostDisconnected?.()))}attributeChangedCallback(e,t,a){this._$AK(e,a)}_$ET(e,t){const a=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,a);if(void 0!==i&&!0===a.reflect){const o=(void 0!==a.converter?.toAttribute?a.converter:k).toAttribute(t,a.type);this._$Em=e,null==o?this.removeAttribute(i):this.setAttribute(i,o),this._$Em=null}}_$AK(e,t){const a=this.constructor,i=a._$Eh.get(e);if(void 0!==i&&this._$Em!==i){const e=a.getPropertyOptions(i),o="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==e.converter?.fromAttribute?e.converter:k;this._$Em=i;const n=o.fromAttribute(t,e.type);this[i]=n??this.Line truncated
.card-config {
display: flex;
flex-direction: column;
@@ -102,7 +102,7 @@ const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow
color: var(--disabled-text-color);
cursor: default;
}
`;const bn="exceptions";var fn={daysOfWeek:["нед.","пон.","вт.","ср.","четв.","пет.","съб."],fullDaysOfWeek:["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"],months:["ян.","фев.","мар","апр.","май","юни","юли","авг.","септ.","окт.","ноем.","дек."],allDay:"цял ден",multiDay:"до",at:"в",endsToday:"приключва днес",endsTomorrow:"приключва утре",noEvents:"Няма планирани събития",loading:"Зареждане на календара със събития...",error:"Грешка: календарът не е намерен или не е конфигуриран правилно"},wn={daysOfWeek:["Dg","Dl","Dm","Dc","Dj","Dv","Ds"],fullDaysOfWeek:["Diumenge","Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte"],months:["Gen","Febr","Març","Abr","Maig","Juny","Jul","Ag","Set","Oct","Nov","Des"],allDay:"tot el dia",multiDay:"fins a",at:"a les",endsToday:"acaba avui",endsTomorrow:"acaba damà",noEvents:"Cap event proper",loading:"Carregant events...",error:"Error: No s'ha trobat l'entitat del calendari o aquesta està mal configurada"},zn={daysOfWeek:["Ne","Po","Út","St","Čt","Pá","So"],fullDaysOfWeek:["Neděle","Pondělí","Úterý","Středa","Čtvrtek","Pátek","Sobota"],months:["Led","Úno","Bře","Dub","Kvě","Čvn","Čvc","Srp","Zář","Říj","Lis","Pro"],allDay:"celý den",multiDay:"do",at:"v",endsToday:"končí dnes",endsTomorrow:"končí zítra",noEvents:"Žádné nadcházející události",loading:"Načítání událostí z kalendáře...",error:"Chyba: Entita kalendáře nebyla nalezena nebo je nesprávně nakonfigurována"},jn={daysOfWeek:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],fullDaysOfWeek:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],months:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],allDay:"hele dagen",multiDay:"indtil",at:"kl.",endsToday:"slutter i dag",endsTomorrow:"slutter i morgen",noEvents:"Ingen kommende begivenheder",loading:"Indlæser kalenderbegivenheder...",error:"Fejl: Kalenderenheden blev ikke fundet eller er ikke konfigureret korrekt"},xn={daysOfWeek:["So","Mo","Di","Mi","Do","Fr","Sa"],fullDaysOfWeek:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],months:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],allDay:"ganztägig",multiDay:"bis",at:"um",endsToday:"endet heute",endsTomorrow:"endet morgen",noEvents:"Keine anstehenden Termine",loading:"Kalendereinträge werden geladen...",error:"Fehler: Kalender-Entität nicht gefunden oder falsch konfiguriert"},Sn={daysOfWeek:["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"],fullDaysOfWeek:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],months:["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ"],allDay:"Ολοήμερο",multiDay:"έως",at:"στις",endsToday:"λήγει σήμερα",endsTomorrow:"λήγει αύριο",noEvents:"Δεν υπάρχουν προγραμματισμένα γεγονότα",loading:"Φόρτωση ημερολογίου...",error:"Σφάλμα: Η οντότητα ημερολογίου δεν βρέθηκε ή δεν έχει ρυθμιστεί σωστά"},An={daysOfWeek:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],fullDaysOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],months:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],allDay:"all day",multiDay:"until",at:"at",endsToday:"ends today",endsTomorrow:"ends tomorrow",noEvents:"No upcoming events",loading:"Loading calendar events...",error:"Error: Calendar entity not found or improperly configured"},Tn={daysOfWeek:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],fullDaysOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],months:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],allDay:"all day",multiDay:"until",at:"at",endsToday:"ends today",endsTomorrow:"ends tomorrow",noEvents:"No upcoming events",loading:"Loading calendar events...",error:"Error: Calendar entity not found or improperly configured"},Dn={daysOfWeek:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"],fullDaysOfWeek:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],months:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],allDay:"todo el día",multiDay:"hasta",at:"a las",endsToday:"termina hoy",endsTomorrow:"termina mañana",noEvents:"No hay eventos próximos",loading:"Cargando eventos del calendario...",error:"Error: La entidad del calendario no se encontró o está mal configurada"},Vn={daysOfWeek:["P","E","T","K","N","R","L"],fullDaysOfWeek:["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede Line truncated
`;const bn="exceptions";var fn={daysOfWeek:["нед.","пон.","вт.","ср.","четв.","пет.","съб."],fullDaysOfWeek:["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"],months:["ян.","фев.","мар","апр.","май","юни","юли","авг.","септ.","окт.","ноем.","дек."],allDay:"цял ден",multiDay:"до",at:"в",endsToday:"приключва днес",endsTomorrow:"приключва утре",noEvents:"Няма планирани събития",loading:"Зареждане на календара със събития...",error:"Грешка: календарът не е намерен или не е конфигуриран правилно"},wn={daysOfWeek:["Dg","Dl","Dm","Dc","Dj","Dv","Ds"],fullDaysOfWeek:["Diumenge","Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte"],months:["Gen","Febr","Març","Abr","Maig","Juny","Jul","Ag","Set","Oct","Nov","Des"],allDay:"tot el dia",multiDay:"fins a",at:"a les",endsToday:"acaba avui",endsTomorrow:"acaba damà",noEvents:"Cap event proper",loading:"Carregant events...",error:"Error: No s'ha trobat l'entitat del calendari o aquesta està mal configurada"},zn={daysOfWeek:["Ne","Po","Út","St","Čt","Pá","So"],fullDaysOfWeek:["Neděle","Pondělí","Úterý","Středa","Čtvrtek","Pátek","Sobota"],months:["Led","Úno","Bře","Dub","Kvě","Čvn","Čvc","Srp","Zář","Říj","Lis","Pro"],allDay:"celý den",multiDay:"do",at:"v",endsToday:"končí dnes",endsTomorrow:"končí zítra",noEvents:"Žádné nadcházející události",loading:"Načítání událostí z kalendáře...",error:"Chyba: Entita kalendáře nebyla nalezena nebo je nesprávně nakonfigurována"},jn={daysOfWeek:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],fullDaysOfWeek:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],months:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],allDay:"hele dagen",multiDay:"indtil",at:"kl.",endsToday:"slutter i dag",endsTomorrow:"slutter i morgen",noEvents:"Ingen kommende begivenheder",loading:"Indlæser kalenderbegivenheder...",error:"Fejl: Kalenderenheden blev ikke fundet eller er ikke konfigureret korrekt"},xn={daysOfWeek:["So","Mo","Di","Mi","Do","Fr","Sa"],fullDaysOfWeek:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],months:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],allDay:"ganztägig",multiDay:"bis",at:"um",endsToday:"endet heute",endsTomorrow:"endet morgen",noEvents:"Keine anstehenden Termine",loading:"Kalendereinträge werden geladen...",error:"Fehler: Kalender-Entität nicht gefunden oder falsch konfiguriert"},Sn={daysOfWeek:["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"],fullDaysOfWeek:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],months:["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ"],allDay:"Ολοήμερο",multiDay:"έως",at:"στις",endsToday:"λήγει σήμερα",endsTomorrow:"λήγει αύριο",noEvents:"Δεν υπάρχουν προγραμματισμένα γεγονότα",loading:"Φόρτωση ημερολογίου...",error:"Σφάλμα: Η οντότητα ημερολογίου δεν βρέθηκε ή δεν έχει ρυθμιστεί σωστά"},An={daysOfWeek:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],fullDaysOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],months:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],allDay:"all day",multiDay:"until",at:"at",endsToday:"ends today",endsTomorrow:"ends tomorrow",noEvents:"No upcoming events",loading:"Loading calendar events...",error:"Error: Calendar entity not found or improperly configured"},Tn={daysOfWeek:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],fullDaysOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],months:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],allDay:"all day",multiDay:"until",at:"at",endsToday:"ends today",endsTomorrow:"ends tomorrow",noEvents:"No upcoming events",loading:"Loading calendar events...",error:"Error: Calendar entity not found or improperly configured"},Dn={daysOfWeek:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"],fullDaysOfWeek:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],months:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],allDay:"todo el día",multiDay:"hasta",at:"a las",endsToday:"termina hoy",endsTomorrow:"termina mañana",noEvents:"No hay eventos próximos",loading:"Cargando eventos del calendario...",error:"Error: La entidad del calendario no se encontró o está mal configurada"},Vn={daysOfWeek:["P","E","T","K","N","R","L"],fullDaysOfWeek:["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede Line truncated
<ha-expansion-panel
outlined
.header=${this._panelTitle(e,t)}
@@ -125,11 +125,11 @@ const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow
${u.map((e=>this._renderExtra(e)))} ${_} ${c}
</div>
</ha-expansion-panel>
`}_panelTitle(e,t){var a;return null!=(a=zt(t.language,e.titleKey))?a:wt(e.titleKey)}_panelHelper(e,t){return zt(t.language,`${e.titleKey}.helper`)}_renderExtra(e){return L`
`}_panelTitle(e,t){var a;return null!=(a=zt(t.language,e.titleKey))?a:wt(e.titleKey)}_panelHelper(e,t){return zt(t.language,`${e.titleKey}.helper`)}_renderExtra(e){return $`
<div class="width-table">
<div class="width-table-title">${e.title}</div>
<table>
${e.rows.map((e=>L`
${e.rows.map((e=>$`
<tr>
<td class="width-table-width">${e.width}</td>
<td class="width-table-layout">${e.layout}</td>
@@ -138,8 +138,8 @@ const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow
</table>
<div class="width-table-note">${e.note}</div>
</div>
`}_renderEntities(e,t){var a,i,o,n;const l=null==(i=null==(a=e.subforms)?void 0:a.call(e,t))?void 0:i.find((e=>e.path.join(".")===so.join(".")));if(void 0===l)return F;const r=null!=(n=null==(o=this._config)?void 0:o.entities)?n:[];if(0===r.length)return F;const s=this._filterCtx,d=an(this._filter),c=r.map(((e,a)=>({entry:e,index:a,schema:gn(ya(l.schema,oi(e),da(ai(e).accent_color),na(ai(e).label),ii(e,t.config,t.view),ra(ai(e).label)),e,l.path,s)}))).filter((e=>yn(e.schema)));if(0===c.length)return F;const _=e=>xt(t.language,e,l.path),u=e=>Dt(t.language,t.view,e,l.path,function(e){var t;return null!=(t=lt[e])?t:nt[e]}(e.name));return L`
${c.map((({entry:e,index:a,schema:i})=>{const o=Na(e);return L`
`}_renderEntities(e,t){var a,i,o,n;const l=null==(i=null==(a=e.subforms)?void 0:a.call(e,t))?void 0:i.find((e=>e.path.join(".")===so.join(".")));if(void 0===l)return I;const r=null!=(n=null==(o=this._config)?void 0:o.entities)?n:[];if(0===r.length)return I;const s=this._filterCtx,d=an(this._filter),c=r.map(((e,a)=>({entry:e,index:a,schema:gn(ya(l.schema,oi(e),da(ai(e).accent_color),na(ai(e).label),ii(e,t.config,t.view),ra(ai(e).label)),e,l.path,s)}))).filter((e=>yn(e.schema)));if(0===c.length)return I;const _=e=>xt(t.language,e,l.path),u=e=>Dt(t.language,t.view,e,l.path,function(e){var t;return null!=(t=lt[e])?t:nt[e]}(e.name));return $`
${c.map((({entry:e,index:a,schema:i})=>{const o=Na(e);return $`
<ha-expansion-panel
outlined
class="entity-panel"
@@ -197,7 +197,7 @@ const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow
</div>
</ha-expansion-panel>
`}))}
`}_entitySummary(e,t,a){const i=e[t],o=ai(i),n="string"==typeof o.label&&""!==o.label?o.label:ci(i)?this._string(a,"entity.customised"):this._string(a,"entity.unconfigured"),{position:l,total:r}=function(e,t){if(t<0||t>=e.length)return{position:0,total:0};const a=Na(e[t]);let i=0,o=0;return e.forEach(((e,n)=>{Na(e)===a&&(o+=1,n===t&&(i=o))})),{position:i,total:o}}(e,t);if(r<2)return n;return`${ke(this._string(a,"entity.occurrence"),{position:l,total:r})} · ${n}`}_entityChanged(e,t){var a,i,o;t.stopPropagation();const n=null==(a=t.detail)?void 0:a.value;n&&this._config&&(this._config=Gn(Jn({},this._config),{entities:ri(null!=(i=this._config.entities)?i:[],e,n,this._config.accent_color,null!=(o=this.hass)?o:void 0)}),this._report(this._config))}_copyEntitySettings(e){si(e),this.requestUpdate()}_pasteEntitySettings(e){var t;this._config&&(this._config=Gn(Jn({},this._config),{entities:di(null!=(t=this._config.entities)?t:[],e)}),this._report(this._config))}_duplicateEntity(e){var t;this._config&&(this._config=Gn(Jn({},this._config),{entities:ei(null!=(t=this._config.entities)?t:[],e)}),this._report(this._config))}_removeEntity(e){var t;this._config&&(this._config=Gn(Jn({},this._config),{entities:ti(null!=(t=this._config.entities)?t:[],e)}),this._report(this._config))}_renderExceptions(e,t,a){const i=ot[a.view];if(void 0===i)return F;const o=function(e,t,a="en"){var i,o;const n=new Set,l=[];for(const{node:t}of Ao(e)){if(!("selector"in t))continue;const e=null!=(i=Co.get(t.name))?i:t.name;if(!Mo.has(e)||n.has(e))continue;const o=e===t.name?{name:e,selector:t.selector}:No(e,a);void 0!==o&&(n.add(e),l.push(o))}for(const e of null!=(o=Ho[t])?o:[]){if(n.has(e)||!Mo.has(e))continue;const t=No(e,a);void 0!==t&&(n.add(e),l.push(t))}return l}(t,e.id,a.language);if(0===o.length)return F;const n=function(e,t){return e.filter((e=>t.has(e.name)))}(o,this._declaredExceptions),l=[i],r=an(this._filter),s=this._string(a,"exceptions.title"),d=function(e,t,a,i){if(!an(i.criteria))return[...e];const o=tn(i);return""!==o&&on(t,o)?[...e]:e.filter((e=>ln(e,a,i)))}(n,s,l,this._filterCtx);if(r&&0===d.length)return F;const c=e=>xt(a.language,e,l),_={name:bn,selector:{select:{mode:"dropdown",multiple:!0,options:o.map((e=>({value:e.name,label:c(e)})))}}},u=d.map((e=>e.name)),p=lo(Qi(this._config,u),u,ro(this._pending,i)),m=function(e,t,a){return e.flatMap((e=>{const i=oo[e.name];return void 0===i?[e]:i.build(t,a)}))}(d,a.language,p);return L`
`}_entitySummary(e,t,a){const i=e[t],o=ai(i),n="string"==typeof o.label&&""!==o.label?o.label:ci(i)?this._string(a,"entity.customised"):this._string(a,"entity.unconfigured"),{position:l,total:r}=function(e,t){if(t<0||t>=e.length)return{position:0,total:0};const a=Na(e[t]);let i=0,o=0;return e.forEach(((e,n)=>{Na(e)===a&&(o+=1,n===t&&(i=o))})),{position:i,total:o}}(e,t);if(r<2)return n;return`${ke(this._string(a,"entity.occurrence"),{position:l,total:r})} · ${n}`}_entityChanged(e,t){var a,i,o;t.stopPropagation();const n=null==(a=t.detail)?void 0:a.value;n&&this._config&&(this._config=Gn(Jn({},this._config),{entities:ri(null!=(i=this._config.entities)?i:[],e,n,this._config.accent_color,null!=(o=this.hass)?o:void 0)}),this._report(this._config))}_copyEntitySettings(e){si(e),this.requestUpdate()}_pasteEntitySettings(e){var t;this._config&&(this._config=Gn(Jn({},this._config),{entities:di(null!=(t=this._config.entities)?t:[],e)}),this._report(this._config))}_duplicateEntity(e){var t;this._config&&(this._config=Gn(Jn({},this._config),{entities:ei(null!=(t=this._config.entities)?t:[],e)}),this._report(this._config))}_removeEntity(e){var t;this._config&&(this._config=Gn(Jn({},this._config),{entities:ti(null!=(t=this._config.entities)?t:[],e)}),this._report(this._config))}_renderExceptions(e,t,a){const i=ot[a.view];if(void 0===i)return I;const o=function(e,t,a="en"){var i,o;const n=new Set,l=[];for(const{node:t}of Ao(e)){if(!("selector"in t))continue;const e=null!=(i=Co.get(t.name))?i:t.name;if(!Mo.has(e)||n.has(e))continue;const o=e===t.name?{name:e,selector:t.selector}:No(e,a);void 0!==o&&(n.add(e),l.push(o))}for(const e of null!=(o=Ho[t])?o:[]){if(n.has(e)||!Mo.has(e))continue;const t=No(e,a);void 0!==t&&(n.add(e),l.push(t))}return l}(t,e.id,a.language);if(0===o.length)return I;const n=function(e,t){return e.filter((e=>t.has(e.name)))}(o,this._declaredExceptions),l=[i],r=an(this._filter),s=this._string(a,"exceptions.title"),d=function(e,t,a,i){if(!an(i.criteria))return[...e];const o=tn(i);return""!==o&&on(t,o)?[...e]:e.filter((e=>ln(e,a,i)))}(n,s,l,this._filterCtx);if(r&&0===d.length)return I;const c=e=>xt(a.language,e,l),_={name:bn,selector:{select:{mode:"dropdown",multiple:!0,options:o.map((e=>({value:e.name,label:c(e)})))}}},u=d.map((e=>e.name)),p=lo(Qi(this._config,u),u,ro(this._pending,i)),m=function(e,t,a){return e.flatMap((e=>{const i=oo[e.name];return void 0===i?[e]:i.build(t,a)}))}(d,a.language,p);return $`
<ha-expansion-panel
outlined
class="exceptions"
@@ -218,7 +218,7 @@ const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow
.localizeValue=${this._localizeValue}
@value-changed=${e=>this._exceptionsSelected(i,o,e)}
></ha-form>
${0===d.length?F:L`
${0===d.length?I:$`
<ha-form
class="exception-form"
.hass=${this.hass}
@@ -232,11 +232,11 @@ const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow
`}
</div>
</ha-expansion-panel>
`}_exceptionSummary(e,t){return 0===e?this._string(t,"exceptions.summary.none"):1===e?this._string(t,"exceptions.summary.one"):ke(this._string(t,"exceptions.summary.many"),{count:e})}_exceptionsSelected(e,t,a){var i,o;if(a.stopPropagation(),!this._config)return;const n=null==(o=null==(i=a.detail)?void 0:i.value)?void 0:o[bn];if(!Array.isArray(n))return;const l=function(e,t,a,i,o){const n=new Set(o.filter((e=>a.includes(e)))),l=new Set(i);let r=e;for(const e of a)n.has(e)?l.add(e):(l.delete(e),r=$o(r,t,e));return{config:r,declared:l}}(this._config,e,t.map((e=>e.name)),this._declaredExceptions,n.map((e=>String(e))));this._config=l.config,this._declaredExceptions=l.declared,this._report(this._config)}_exceptionChanged(e,t,a){var i;a.stopPropagation();const o=null==(i=a.detail)?void 0:i.value;if(!o||!this._config)return;const n=e,l=ro(this._pending,n),r=lo(Qi(this._config,t),t,l),s=this._config[e],d=function(e,t,a,i={}){const o=Wi(t,a),n=qi(e,t,a,i),l=io({},n.config);for(const e of Object.keys(l))$a(e)&&delete l[e];for(const[e,t]of Object.entries(oo))o.some((e=>t.fields.includes(e)))&&void 0===l[e]&&(l[e]=t.off);return{block:l,pending:n.pending}}(s&&"object"==typeof s&&!Array.isArray(s)?s:{},r,o,l);this._pending=function(e,t,a){const i=`${t}.`,o=Object.fromEntries(Object.entries(e).filter((([e])=>!e.startsWith(i))));return io(io({},o),Object.fromEntries(Object.entries(a).map((([e,t])=>[i+e,t]))))}(this._pending,n,d.pending),this._config=Gn(Jn({},this._config),{[e]:d.block}),this._report(this._config)}_string(e,t){var a;return null!=(a=zt(e.language,t))?a:wt(t)}render(){if(!this.hass||!this._config)return F;const e=this._ctx,t=So.map((t=>this._renderPanel(t,e))).filter((e=>e!==F)),a=0===t.length&&an(this._filter);return L`
`}_exceptionSummary(e,t){return 0===e?this._string(t,"exceptions.summary.none"):1===e?this._string(t,"exceptions.summary.one"):ke(this._string(t,"exceptions.summary.many"),{count:e})}_exceptionsSelected(e,t,a){var i,o;if(a.stopPropagation(),!this._config)return;const n=null==(o=null==(i=a.detail)?void 0:i.value)?void 0:o[bn];if(!Array.isArray(n))return;const l=function(e,t,a,i,o){const n=new Set(o.filter((e=>a.includes(e)))),l=new Set(i);let r=e;for(const e of a)n.has(e)?l.add(e):(l.delete(e),r=Lo(r,t,e));return{config:r,declared:l}}(this._config,e,t.map((e=>e.name)),this._declaredExceptions,n.map((e=>String(e))));this._config=l.config,this._declaredExceptions=l.declared,this._report(this._config)}_exceptionChanged(e,t,a){var i;a.stopPropagation();const o=null==(i=a.detail)?void 0:i.value;if(!o||!this._config)return;const n=e,l=ro(this._pending,n),r=lo(Qi(this._config,t),t,l),s=this._config[e],d=function(e,t,a,i={}){const o=Wi(t,a),n=qi(e,t,a,i),l=io({},n.config);for(const e of Object.keys(l))La(e)&&delete l[e];for(const[e,t]of Object.entries(oo))o.some((e=>t.fields.includes(e)))&&void 0===l[e]&&(l[e]=t.off);return{block:l,pending:n.pending}}(s&&"object"==typeof s&&!Array.isArray(s)?s:{},r,o,l);this._pending=function(e,t,a){const i=`${t}.`,o=Object.fromEntries(Object.entries(e).filter((([e])=>!e.startsWith(i))));return io(io({},o),Object.fromEntries(Object.entries(a).map((([e,t])=>[i+e,t]))))}(this._pending,n,d.pending),this._config=Gn(Jn({},this._config),{[e]:d.block}),this._report(this._config)}_string(e,t){var a;return null!=(a=zt(e.language,t))?a:wt(t)}render(){if(!this.hass||!this._config)return I;const e=this._ctx,t=So.map((t=>this._renderPanel(t,e))).filter((e=>e!==I)),a=0===t.length&&an(this._filter);return $`
<div class="card-config">
${this._renderFilterBar()} ${t} ${a?this._renderNoMatches(e):F}
${this._renderFilterBar()} ${t} ${a?this._renderNoMatches(e):I}
</div>
`}_renderFilterBar(){return L`
`}_renderFilterBar(){return $`
<div class="filter-bar">
<ha-form
class="filter-form"
@@ -249,11 +249,11 @@ const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow
@value-changed=${this._filterChanged}
></ha-form>
</div>
`;var e}_renderNoMatches(e){const t=this._filter.query.trim();return""===t?L`
`;var e}_renderNoMatches(e){const t=this._filter.query.trim();return""===t?$`
<div class="filter-empty">${this._string(e,"filter.nothing_customized")}</div>
`:L`
`:$`
<div class="filter-empty">
${ke(this._string(e,"filter.no_matches"),{query:t})}
<div class="filter-empty-note">${this._string(e,"filter.gated_note")}</div>
</div>
`}}Qn([se({attribute:!1})],Yn.prototype,"hass"),Qn([de()],Yn.prototype,"_config"),Qn([de()],Yn.prototype,"_pending"),Qn([de()],Yn.prototype,"_declaredExceptions"),Qn([de()],Yn.prototype,"_filter");const Xn="4.1.0";export{Yn as CalendarCardProEditor,Xn as EDITOR_VERSION,So as PANELS,qi as applyFormChange,Wi as changedKeys,La as deriveSyntheticData,Da as isCommittableOffset,$a as isSyntheticKey,Bi as stripColumnDefaults,Zi as toStoredConfig,Ao as walkSchema};
`}}Qn([se({attribute:!1})],Yn.prototype,"hass"),Qn([de()],Yn.prototype,"_config"),Qn([de()],Yn.prototype,"_pending"),Qn([de()],Yn.prototype,"_declaredExceptions"),Qn([de()],Yn.prototype,"_filter");const Xn="4.2.0";export{Yn as CalendarCardProEditor,Xn as EDITOR_VERSION,So as PANELS,qi as applyFormChange,Wi as changedKeys,$a as deriveSyntheticData,Da as isCommittableOffset,La as isSyntheticKey,Bi as stripColumnDefaults,Zi as toStoredConfig,Ao as walkSchema};